@spark-web/text-input 1.1.0 → 1.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +31 -1
- package/dist/declarations/src/InputContainer.d.ts +10 -0
- package/dist/declarations/src/TextInput.d.ts +458 -1383
- package/dist/declarations/src/index.d.ts +2 -0
- package/dist/spark-web-text-input.cjs.dev.js +70 -41
- package/dist/spark-web-text-input.cjs.prod.js +70 -41
- package/dist/spark-web-text-input.esm.js +70 -42
- package/package.json +9 -9
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
export { InputAdornment } from './InputAdornment';
|
|
2
|
+
export { InputContainer } from './InputContainer';
|
|
2
3
|
export { TextInput, useInput } from './TextInput';
|
|
3
4
|
export type { AdornmentChild } from './childrenToAdornments';
|
|
5
|
+
export type { InputContainerProps } from './InputContainer';
|
|
4
6
|
export type { TextInputProps, UseInputProps } from './TextInput';
|
|
@@ -67,6 +67,7 @@ var InputAdornment = function InputAdornment(_ref) {
|
|
|
67
67
|
paddingLeft: paddingLeft,
|
|
68
68
|
paddingRight: paddingRight,
|
|
69
69
|
children: /*#__PURE__*/jsxRuntime.jsx(box.Box, {
|
|
70
|
+
display: "flex",
|
|
70
71
|
alignItems: "center",
|
|
71
72
|
justifyContent: "center",
|
|
72
73
|
style: {
|
|
@@ -111,6 +112,51 @@ var FieldAdornment = function FieldAdornment(_ref2) {
|
|
|
111
112
|
});
|
|
112
113
|
};
|
|
113
114
|
|
|
115
|
+
var _excluded$1 = ["children", "startAdornment", "endAdornment"];
|
|
116
|
+
var InputContainer = function InputContainer(_ref) {
|
|
117
|
+
var children = _ref.children,
|
|
118
|
+
startAdornment = _ref.startAdornment,
|
|
119
|
+
endAdornment = _ref.endAdornment,
|
|
120
|
+
boxProps = _objectWithoutProperties(_ref, _excluded$1);
|
|
121
|
+
|
|
122
|
+
var _useFieldContext = field.useFieldContext(),
|
|
123
|
+
_useFieldContext2 = _slicedToArray(_useFieldContext, 1),
|
|
124
|
+
_useFieldContext2$ = _useFieldContext2[0],
|
|
125
|
+
disabled = _useFieldContext2$.disabled,
|
|
126
|
+
invalid = _useFieldContext2$.invalid;
|
|
127
|
+
|
|
128
|
+
return /*#__PURE__*/jsxRuntime.jsxs(box.Box, _objectSpread(_objectSpread({
|
|
129
|
+
position: "relative",
|
|
130
|
+
background: disabled ? 'inputDisabled' : 'input'
|
|
131
|
+
}, boxProps), {}, {
|
|
132
|
+
children: [startAdornment, children, /*#__PURE__*/jsxRuntime.jsx(FocusIndicator, {
|
|
133
|
+
invalid: invalid
|
|
134
|
+
}), endAdornment]
|
|
135
|
+
}));
|
|
136
|
+
};
|
|
137
|
+
|
|
138
|
+
var FocusIndicator = function FocusIndicator(_ref2) {
|
|
139
|
+
var invalid = _ref2.invalid;
|
|
140
|
+
return /*#__PURE__*/jsxRuntime.jsx(box.Box, {
|
|
141
|
+
"aria-hidden": "true",
|
|
142
|
+
as: "span",
|
|
143
|
+
data: {
|
|
144
|
+
'focus-indicator': 'true'
|
|
145
|
+
} // Styles
|
|
146
|
+
,
|
|
147
|
+
border: invalid ? 'critical' : 'field',
|
|
148
|
+
borderRadius: "small",
|
|
149
|
+
position: "absolute",
|
|
150
|
+
bottom: 0,
|
|
151
|
+
left: 0,
|
|
152
|
+
right: 0,
|
|
153
|
+
top: 0,
|
|
154
|
+
className: css.css({
|
|
155
|
+
pointerEvents: 'none'
|
|
156
|
+
})
|
|
157
|
+
});
|
|
158
|
+
};
|
|
159
|
+
|
|
114
160
|
/**
|
|
115
161
|
* Map children for placement within the `TextInput` flex container. Ensures that
|
|
116
162
|
* placeholders are provided for unused placements.
|
|
@@ -143,8 +189,7 @@ var childrenToAdornments = function childrenToAdornments(children) {
|
|
|
143
189
|
};
|
|
144
190
|
};
|
|
145
191
|
|
|
146
|
-
var _excluded = ["children", "data"]
|
|
147
|
-
_excluded2 = ["disabled", "invalid"];
|
|
192
|
+
var _excluded = ["children", "data"];
|
|
148
193
|
|
|
149
194
|
/** Organize and emphasize information quickly and effectively in a list of text elements. */
|
|
150
195
|
var TextInput = /*#__PURE__*/react.forwardRef(function (_ref, forwardedRef) {
|
|
@@ -153,31 +198,27 @@ var TextInput = /*#__PURE__*/react.forwardRef(function (_ref, forwardedRef) {
|
|
|
153
198
|
consumerProps = _objectWithoutProperties(_ref, _excluded);
|
|
154
199
|
|
|
155
200
|
var _useFieldContext = field.useFieldContext(),
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
201
|
+
_useFieldContext2 = _slicedToArray(_useFieldContext, 2),
|
|
202
|
+
_useFieldContext2$ = _useFieldContext2[0],
|
|
203
|
+
disabled = _useFieldContext2$.disabled,
|
|
204
|
+
invalid = _useFieldContext2$.invalid,
|
|
205
|
+
a11yProps = _useFieldContext2[1];
|
|
159
206
|
|
|
160
207
|
var _childrenToAdornments = childrenToAdornments(children),
|
|
161
208
|
startAdornment = _childrenToAdornments.startAdornment,
|
|
162
209
|
endAdornment = _childrenToAdornments.endAdornment;
|
|
163
210
|
|
|
164
|
-
return /*#__PURE__*/jsxRuntime.
|
|
165
|
-
background: disabled ? 'inputDisabled' : 'input',
|
|
166
|
-
border: invalid ? 'critical' : 'field',
|
|
167
|
-
borderRadius: "small",
|
|
211
|
+
return /*#__PURE__*/jsxRuntime.jsx(InputContainer, {
|
|
168
212
|
display: "inline-flex",
|
|
169
213
|
alignItems: "center",
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
className: css.css(useInput({
|
|
174
|
-
disabled: disabled,
|
|
175
|
-
invalid: invalid
|
|
176
|
-
})),
|
|
177
|
-
children: [startAdornment, /*#__PURE__*/jsxRuntime.jsx(box.Box, _objectSpread(_objectSpread({
|
|
214
|
+
startAdornment: startAdornment,
|
|
215
|
+
endAdornment: endAdornment,
|
|
216
|
+
children: /*#__PURE__*/jsxRuntime.jsx(box.Box, _objectSpread(_objectSpread(_objectSpread({}, consumerProps), a11yProps), {}, {
|
|
178
217
|
as: "input",
|
|
179
218
|
ref: forwardedRef,
|
|
180
|
-
|
|
219
|
+
data: data,
|
|
220
|
+
disabled: disabled,
|
|
221
|
+
position: "relative" // Styles
|
|
181
222
|
,
|
|
182
223
|
flex: 1,
|
|
183
224
|
height: "medium",
|
|
@@ -186,18 +227,14 @@ var TextInput = /*#__PURE__*/react.forwardRef(function (_ref, forwardedRef) {
|
|
|
186
227
|
paddingRight: endAdornment ? 'none' : 'medium',
|
|
187
228
|
className: css.css(useInput({
|
|
188
229
|
disabled: disabled,
|
|
189
|
-
invalid: invalid
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
data: data
|
|
193
|
-
}, a11yProps), consumerProps)), endAdornment]
|
|
230
|
+
invalid: invalid
|
|
231
|
+
}))
|
|
232
|
+
}))
|
|
194
233
|
});
|
|
195
234
|
});
|
|
196
235
|
TextInput.displayName = 'TextInput';
|
|
197
236
|
var useInput = function useInput(_ref2) {
|
|
198
|
-
var disabled = _ref2.disabled
|
|
199
|
-
_ref2$isNested = _ref2.isNested,
|
|
200
|
-
isNested = _ref2$isNested === void 0 ? false : _ref2$isNested;
|
|
237
|
+
var disabled = _ref2.disabled;
|
|
201
238
|
var theme$1 = theme.useTheme();
|
|
202
239
|
var focusRingStyles = a11y.useFocusRing({
|
|
203
240
|
always: true
|
|
@@ -213,27 +250,19 @@ var useInput = function useInput(_ref2) {
|
|
|
213
250
|
typographyStyles = _textStyles[0],
|
|
214
251
|
responsiveStyles = _textStyles[1];
|
|
215
252
|
|
|
216
|
-
return _objectSpread(_objectSpread(_objectSpread({}, typographyStyles), responsiveStyles),
|
|
253
|
+
return _objectSpread(_objectSpread(_objectSpread({}, typographyStyles), responsiveStyles), {}, {
|
|
217
254
|
':focus': {
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
// to windows high contrast mode users.
|
|
221
|
-
// @see https://tailwindcss.com/docs/outline-style#removing-outlines
|
|
222
|
-
outline: '2px solid transparent',
|
|
223
|
-
outlineOffset: '2px'
|
|
224
|
-
}
|
|
225
|
-
} : {
|
|
255
|
+
outline: 'none'
|
|
256
|
+
},
|
|
226
257
|
':enabled': {
|
|
227
|
-
'
|
|
258
|
+
':focus + [data-focus-indicator]': _objectSpread({
|
|
228
259
|
borderColor: theme$1.border.color.fieldAccent
|
|
229
|
-
})
|
|
230
|
-
}
|
|
231
|
-
':focus-within': _objectSpread(_objectSpread({}, focusRingStyles), {}, {
|
|
232
|
-
borderColor: theme$1.border.color.fieldAccent
|
|
233
|
-
})
|
|
260
|
+
}, focusRingStyles)
|
|
261
|
+
}
|
|
234
262
|
});
|
|
235
263
|
};
|
|
236
264
|
|
|
237
265
|
exports.InputAdornment = InputAdornment;
|
|
266
|
+
exports.InputContainer = InputContainer;
|
|
238
267
|
exports.TextInput = TextInput;
|
|
239
268
|
exports.useInput = useInput;
|
|
@@ -67,6 +67,7 @@ var InputAdornment = function InputAdornment(_ref) {
|
|
|
67
67
|
paddingLeft: paddingLeft,
|
|
68
68
|
paddingRight: paddingRight,
|
|
69
69
|
children: /*#__PURE__*/jsxRuntime.jsx(box.Box, {
|
|
70
|
+
display: "flex",
|
|
70
71
|
alignItems: "center",
|
|
71
72
|
justifyContent: "center",
|
|
72
73
|
style: {
|
|
@@ -111,6 +112,51 @@ var FieldAdornment = function FieldAdornment(_ref2) {
|
|
|
111
112
|
});
|
|
112
113
|
};
|
|
113
114
|
|
|
115
|
+
var _excluded$1 = ["children", "startAdornment", "endAdornment"];
|
|
116
|
+
var InputContainer = function InputContainer(_ref) {
|
|
117
|
+
var children = _ref.children,
|
|
118
|
+
startAdornment = _ref.startAdornment,
|
|
119
|
+
endAdornment = _ref.endAdornment,
|
|
120
|
+
boxProps = _objectWithoutProperties(_ref, _excluded$1);
|
|
121
|
+
|
|
122
|
+
var _useFieldContext = field.useFieldContext(),
|
|
123
|
+
_useFieldContext2 = _slicedToArray(_useFieldContext, 1),
|
|
124
|
+
_useFieldContext2$ = _useFieldContext2[0],
|
|
125
|
+
disabled = _useFieldContext2$.disabled,
|
|
126
|
+
invalid = _useFieldContext2$.invalid;
|
|
127
|
+
|
|
128
|
+
return /*#__PURE__*/jsxRuntime.jsxs(box.Box, _objectSpread(_objectSpread({
|
|
129
|
+
position: "relative",
|
|
130
|
+
background: disabled ? 'inputDisabled' : 'input'
|
|
131
|
+
}, boxProps), {}, {
|
|
132
|
+
children: [startAdornment, children, /*#__PURE__*/jsxRuntime.jsx(FocusIndicator, {
|
|
133
|
+
invalid: invalid
|
|
134
|
+
}), endAdornment]
|
|
135
|
+
}));
|
|
136
|
+
};
|
|
137
|
+
|
|
138
|
+
var FocusIndicator = function FocusIndicator(_ref2) {
|
|
139
|
+
var invalid = _ref2.invalid;
|
|
140
|
+
return /*#__PURE__*/jsxRuntime.jsx(box.Box, {
|
|
141
|
+
"aria-hidden": "true",
|
|
142
|
+
as: "span",
|
|
143
|
+
data: {
|
|
144
|
+
'focus-indicator': 'true'
|
|
145
|
+
} // Styles
|
|
146
|
+
,
|
|
147
|
+
border: invalid ? 'critical' : 'field',
|
|
148
|
+
borderRadius: "small",
|
|
149
|
+
position: "absolute",
|
|
150
|
+
bottom: 0,
|
|
151
|
+
left: 0,
|
|
152
|
+
right: 0,
|
|
153
|
+
top: 0,
|
|
154
|
+
className: css.css({
|
|
155
|
+
pointerEvents: 'none'
|
|
156
|
+
})
|
|
157
|
+
});
|
|
158
|
+
};
|
|
159
|
+
|
|
114
160
|
/**
|
|
115
161
|
* Map children for placement within the `TextInput` flex container. Ensures that
|
|
116
162
|
* placeholders are provided for unused placements.
|
|
@@ -143,8 +189,7 @@ var childrenToAdornments = function childrenToAdornments(children) {
|
|
|
143
189
|
};
|
|
144
190
|
};
|
|
145
191
|
|
|
146
|
-
var _excluded = ["children", "data"]
|
|
147
|
-
_excluded2 = ["disabled", "invalid"];
|
|
192
|
+
var _excluded = ["children", "data"];
|
|
148
193
|
|
|
149
194
|
/** Organize and emphasize information quickly and effectively in a list of text elements. */
|
|
150
195
|
var TextInput = /*#__PURE__*/react.forwardRef(function (_ref, forwardedRef) {
|
|
@@ -153,31 +198,27 @@ var TextInput = /*#__PURE__*/react.forwardRef(function (_ref, forwardedRef) {
|
|
|
153
198
|
consumerProps = _objectWithoutProperties(_ref, _excluded);
|
|
154
199
|
|
|
155
200
|
var _useFieldContext = field.useFieldContext(),
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
201
|
+
_useFieldContext2 = _slicedToArray(_useFieldContext, 2),
|
|
202
|
+
_useFieldContext2$ = _useFieldContext2[0],
|
|
203
|
+
disabled = _useFieldContext2$.disabled,
|
|
204
|
+
invalid = _useFieldContext2$.invalid,
|
|
205
|
+
a11yProps = _useFieldContext2[1];
|
|
159
206
|
|
|
160
207
|
var _childrenToAdornments = childrenToAdornments(children),
|
|
161
208
|
startAdornment = _childrenToAdornments.startAdornment,
|
|
162
209
|
endAdornment = _childrenToAdornments.endAdornment;
|
|
163
210
|
|
|
164
|
-
return /*#__PURE__*/jsxRuntime.
|
|
165
|
-
background: disabled ? 'inputDisabled' : 'input',
|
|
166
|
-
border: invalid ? 'critical' : 'field',
|
|
167
|
-
borderRadius: "small",
|
|
211
|
+
return /*#__PURE__*/jsxRuntime.jsx(InputContainer, {
|
|
168
212
|
display: "inline-flex",
|
|
169
213
|
alignItems: "center",
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
className: css.css(useInput({
|
|
174
|
-
disabled: disabled,
|
|
175
|
-
invalid: invalid
|
|
176
|
-
})),
|
|
177
|
-
children: [startAdornment, /*#__PURE__*/jsxRuntime.jsx(box.Box, _objectSpread(_objectSpread({
|
|
214
|
+
startAdornment: startAdornment,
|
|
215
|
+
endAdornment: endAdornment,
|
|
216
|
+
children: /*#__PURE__*/jsxRuntime.jsx(box.Box, _objectSpread(_objectSpread(_objectSpread({}, consumerProps), a11yProps), {}, {
|
|
178
217
|
as: "input",
|
|
179
218
|
ref: forwardedRef,
|
|
180
|
-
|
|
219
|
+
data: data,
|
|
220
|
+
disabled: disabled,
|
|
221
|
+
position: "relative" // Styles
|
|
181
222
|
,
|
|
182
223
|
flex: 1,
|
|
183
224
|
height: "medium",
|
|
@@ -186,18 +227,14 @@ var TextInput = /*#__PURE__*/react.forwardRef(function (_ref, forwardedRef) {
|
|
|
186
227
|
paddingRight: endAdornment ? 'none' : 'medium',
|
|
187
228
|
className: css.css(useInput({
|
|
188
229
|
disabled: disabled,
|
|
189
|
-
invalid: invalid
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
data: data
|
|
193
|
-
}, a11yProps), consumerProps)), endAdornment]
|
|
230
|
+
invalid: invalid
|
|
231
|
+
}))
|
|
232
|
+
}))
|
|
194
233
|
});
|
|
195
234
|
});
|
|
196
235
|
TextInput.displayName = 'TextInput';
|
|
197
236
|
var useInput = function useInput(_ref2) {
|
|
198
|
-
var disabled = _ref2.disabled
|
|
199
|
-
_ref2$isNested = _ref2.isNested,
|
|
200
|
-
isNested = _ref2$isNested === void 0 ? false : _ref2$isNested;
|
|
237
|
+
var disabled = _ref2.disabled;
|
|
201
238
|
var theme$1 = theme.useTheme();
|
|
202
239
|
var focusRingStyles = a11y.useFocusRing({
|
|
203
240
|
always: true
|
|
@@ -213,27 +250,19 @@ var useInput = function useInput(_ref2) {
|
|
|
213
250
|
typographyStyles = _textStyles[0],
|
|
214
251
|
responsiveStyles = _textStyles[1];
|
|
215
252
|
|
|
216
|
-
return _objectSpread(_objectSpread(_objectSpread({}, typographyStyles), responsiveStyles),
|
|
253
|
+
return _objectSpread(_objectSpread(_objectSpread({}, typographyStyles), responsiveStyles), {}, {
|
|
217
254
|
':focus': {
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
// to windows high contrast mode users.
|
|
221
|
-
// @see https://tailwindcss.com/docs/outline-style#removing-outlines
|
|
222
|
-
outline: '2px solid transparent',
|
|
223
|
-
outlineOffset: '2px'
|
|
224
|
-
}
|
|
225
|
-
} : {
|
|
255
|
+
outline: 'none'
|
|
256
|
+
},
|
|
226
257
|
':enabled': {
|
|
227
|
-
'
|
|
258
|
+
':focus + [data-focus-indicator]': _objectSpread({
|
|
228
259
|
borderColor: theme$1.border.color.fieldAccent
|
|
229
|
-
})
|
|
230
|
-
}
|
|
231
|
-
':focus-within': _objectSpread(_objectSpread({}, focusRingStyles), {}, {
|
|
232
|
-
borderColor: theme$1.border.color.fieldAccent
|
|
233
|
-
})
|
|
260
|
+
}, focusRingStyles)
|
|
261
|
+
}
|
|
234
262
|
});
|
|
235
263
|
};
|
|
236
264
|
|
|
237
265
|
exports.InputAdornment = InputAdornment;
|
|
266
|
+
exports.InputContainer = InputContainer;
|
|
238
267
|
exports.TextInput = TextInput;
|
|
239
268
|
exports.useInput = useInput;
|
|
@@ -63,6 +63,7 @@ var InputAdornment = function InputAdornment(_ref) {
|
|
|
63
63
|
paddingLeft: paddingLeft,
|
|
64
64
|
paddingRight: paddingRight,
|
|
65
65
|
children: /*#__PURE__*/jsx(Box, {
|
|
66
|
+
display: "flex",
|
|
66
67
|
alignItems: "center",
|
|
67
68
|
justifyContent: "center",
|
|
68
69
|
style: {
|
|
@@ -107,6 +108,51 @@ var FieldAdornment = function FieldAdornment(_ref2) {
|
|
|
107
108
|
});
|
|
108
109
|
};
|
|
109
110
|
|
|
111
|
+
var _excluded$1 = ["children", "startAdornment", "endAdornment"];
|
|
112
|
+
var InputContainer = function InputContainer(_ref) {
|
|
113
|
+
var children = _ref.children,
|
|
114
|
+
startAdornment = _ref.startAdornment,
|
|
115
|
+
endAdornment = _ref.endAdornment,
|
|
116
|
+
boxProps = _objectWithoutProperties(_ref, _excluded$1);
|
|
117
|
+
|
|
118
|
+
var _useFieldContext = useFieldContext(),
|
|
119
|
+
_useFieldContext2 = _slicedToArray(_useFieldContext, 1),
|
|
120
|
+
_useFieldContext2$ = _useFieldContext2[0],
|
|
121
|
+
disabled = _useFieldContext2$.disabled,
|
|
122
|
+
invalid = _useFieldContext2$.invalid;
|
|
123
|
+
|
|
124
|
+
return /*#__PURE__*/jsxs(Box, _objectSpread(_objectSpread({
|
|
125
|
+
position: "relative",
|
|
126
|
+
background: disabled ? 'inputDisabled' : 'input'
|
|
127
|
+
}, boxProps), {}, {
|
|
128
|
+
children: [startAdornment, children, /*#__PURE__*/jsx(FocusIndicator, {
|
|
129
|
+
invalid: invalid
|
|
130
|
+
}), endAdornment]
|
|
131
|
+
}));
|
|
132
|
+
};
|
|
133
|
+
|
|
134
|
+
var FocusIndicator = function FocusIndicator(_ref2) {
|
|
135
|
+
var invalid = _ref2.invalid;
|
|
136
|
+
return /*#__PURE__*/jsx(Box, {
|
|
137
|
+
"aria-hidden": "true",
|
|
138
|
+
as: "span",
|
|
139
|
+
data: {
|
|
140
|
+
'focus-indicator': 'true'
|
|
141
|
+
} // Styles
|
|
142
|
+
,
|
|
143
|
+
border: invalid ? 'critical' : 'field',
|
|
144
|
+
borderRadius: "small",
|
|
145
|
+
position: "absolute",
|
|
146
|
+
bottom: 0,
|
|
147
|
+
left: 0,
|
|
148
|
+
right: 0,
|
|
149
|
+
top: 0,
|
|
150
|
+
className: css({
|
|
151
|
+
pointerEvents: 'none'
|
|
152
|
+
})
|
|
153
|
+
});
|
|
154
|
+
};
|
|
155
|
+
|
|
110
156
|
/**
|
|
111
157
|
* Map children for placement within the `TextInput` flex container. Ensures that
|
|
112
158
|
* placeholders are provided for unused placements.
|
|
@@ -139,8 +185,7 @@ var childrenToAdornments = function childrenToAdornments(children) {
|
|
|
139
185
|
};
|
|
140
186
|
};
|
|
141
187
|
|
|
142
|
-
var _excluded = ["children", "data"]
|
|
143
|
-
_excluded2 = ["disabled", "invalid"];
|
|
188
|
+
var _excluded = ["children", "data"];
|
|
144
189
|
|
|
145
190
|
/** Organize and emphasize information quickly and effectively in a list of text elements. */
|
|
146
191
|
var TextInput = /*#__PURE__*/forwardRef(function (_ref, forwardedRef) {
|
|
@@ -149,31 +194,27 @@ var TextInput = /*#__PURE__*/forwardRef(function (_ref, forwardedRef) {
|
|
|
149
194
|
consumerProps = _objectWithoutProperties(_ref, _excluded);
|
|
150
195
|
|
|
151
196
|
var _useFieldContext = useFieldContext(),
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
197
|
+
_useFieldContext2 = _slicedToArray(_useFieldContext, 2),
|
|
198
|
+
_useFieldContext2$ = _useFieldContext2[0],
|
|
199
|
+
disabled = _useFieldContext2$.disabled,
|
|
200
|
+
invalid = _useFieldContext2$.invalid,
|
|
201
|
+
a11yProps = _useFieldContext2[1];
|
|
155
202
|
|
|
156
203
|
var _childrenToAdornments = childrenToAdornments(children),
|
|
157
204
|
startAdornment = _childrenToAdornments.startAdornment,
|
|
158
205
|
endAdornment = _childrenToAdornments.endAdornment;
|
|
159
206
|
|
|
160
|
-
return /*#__PURE__*/
|
|
161
|
-
background: disabled ? 'inputDisabled' : 'input',
|
|
162
|
-
border: invalid ? 'critical' : 'field',
|
|
163
|
-
borderRadius: "small",
|
|
207
|
+
return /*#__PURE__*/jsx(InputContainer, {
|
|
164
208
|
display: "inline-flex",
|
|
165
209
|
alignItems: "center",
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
className: css(useInput({
|
|
170
|
-
disabled: disabled,
|
|
171
|
-
invalid: invalid
|
|
172
|
-
})),
|
|
173
|
-
children: [startAdornment, /*#__PURE__*/jsx(Box, _objectSpread(_objectSpread({
|
|
210
|
+
startAdornment: startAdornment,
|
|
211
|
+
endAdornment: endAdornment,
|
|
212
|
+
children: /*#__PURE__*/jsx(Box, _objectSpread(_objectSpread(_objectSpread({}, consumerProps), a11yProps), {}, {
|
|
174
213
|
as: "input",
|
|
175
214
|
ref: forwardedRef,
|
|
176
|
-
|
|
215
|
+
data: data,
|
|
216
|
+
disabled: disabled,
|
|
217
|
+
position: "relative" // Styles
|
|
177
218
|
,
|
|
178
219
|
flex: 1,
|
|
179
220
|
height: "medium",
|
|
@@ -182,18 +223,14 @@ var TextInput = /*#__PURE__*/forwardRef(function (_ref, forwardedRef) {
|
|
|
182
223
|
paddingRight: endAdornment ? 'none' : 'medium',
|
|
183
224
|
className: css(useInput({
|
|
184
225
|
disabled: disabled,
|
|
185
|
-
invalid: invalid
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
data: data
|
|
189
|
-
}, a11yProps), consumerProps)), endAdornment]
|
|
226
|
+
invalid: invalid
|
|
227
|
+
}))
|
|
228
|
+
}))
|
|
190
229
|
});
|
|
191
230
|
});
|
|
192
231
|
TextInput.displayName = 'TextInput';
|
|
193
232
|
var useInput = function useInput(_ref2) {
|
|
194
|
-
var disabled = _ref2.disabled
|
|
195
|
-
_ref2$isNested = _ref2.isNested,
|
|
196
|
-
isNested = _ref2$isNested === void 0 ? false : _ref2$isNested;
|
|
233
|
+
var disabled = _ref2.disabled;
|
|
197
234
|
var theme = useTheme();
|
|
198
235
|
var focusRingStyles = useFocusRing({
|
|
199
236
|
always: true
|
|
@@ -209,25 +246,16 @@ var useInput = function useInput(_ref2) {
|
|
|
209
246
|
typographyStyles = _textStyles[0],
|
|
210
247
|
responsiveStyles = _textStyles[1];
|
|
211
248
|
|
|
212
|
-
return _objectSpread(_objectSpread(_objectSpread({}, typographyStyles), responsiveStyles),
|
|
249
|
+
return _objectSpread(_objectSpread(_objectSpread({}, typographyStyles), responsiveStyles), {}, {
|
|
213
250
|
':focus': {
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
// to windows high contrast mode users.
|
|
217
|
-
// @see https://tailwindcss.com/docs/outline-style#removing-outlines
|
|
218
|
-
outline: '2px solid transparent',
|
|
219
|
-
outlineOffset: '2px'
|
|
220
|
-
}
|
|
221
|
-
} : {
|
|
251
|
+
outline: 'none'
|
|
252
|
+
},
|
|
222
253
|
':enabled': {
|
|
223
|
-
'
|
|
254
|
+
':focus + [data-focus-indicator]': _objectSpread({
|
|
224
255
|
borderColor: theme.border.color.fieldAccent
|
|
225
|
-
})
|
|
226
|
-
}
|
|
227
|
-
':focus-within': _objectSpread(_objectSpread({}, focusRingStyles), {}, {
|
|
228
|
-
borderColor: theme.border.color.fieldAccent
|
|
229
|
-
})
|
|
256
|
+
}, focusRingStyles)
|
|
257
|
+
}
|
|
230
258
|
});
|
|
231
259
|
};
|
|
232
260
|
|
|
233
|
-
export { InputAdornment, TextInput, useInput };
|
|
261
|
+
export { InputAdornment, InputContainer, TextInput, useInput };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@spark-web/text-input",
|
|
3
|
-
"version": "1.1
|
|
3
|
+
"version": "1.2.1",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"main": "dist/spark-web-text-input.cjs.js",
|
|
6
6
|
"module": "dist/spark-web-text-input.esm.js",
|
|
@@ -8,14 +8,14 @@
|
|
|
8
8
|
"dist"
|
|
9
9
|
],
|
|
10
10
|
"dependencies": {
|
|
11
|
-
"@babel/runtime": "^7.
|
|
12
|
-
"@emotion/css": "^11.
|
|
13
|
-
"@spark-web/a11y": "^1.0.
|
|
14
|
-
"@spark-web/box": "^1.0.
|
|
15
|
-
"@spark-web/field": "^
|
|
16
|
-
"@spark-web/text": "^1.0.
|
|
17
|
-
"@spark-web/theme": "^3.0.
|
|
18
|
-
"@spark-web/utils": "^1.1.
|
|
11
|
+
"@babel/runtime": "^7.18.0",
|
|
12
|
+
"@emotion/css": "^11.9.0",
|
|
13
|
+
"@spark-web/a11y": "^1.0.5",
|
|
14
|
+
"@spark-web/box": "^1.0.5",
|
|
15
|
+
"@spark-web/field": "^3.0.0",
|
|
16
|
+
"@spark-web/text": "^1.0.5",
|
|
17
|
+
"@spark-web/theme": "^3.0.1",
|
|
18
|
+
"@spark-web/utils": "^1.1.3"
|
|
19
19
|
},
|
|
20
20
|
"devDependencies": {
|
|
21
21
|
"@types/react": "^17.0.12",
|