UNPKG

11.4 kBJavaScriptView Raw
1"use strict";
2
3Object.defineProperty(exports, "__esModule", {
4 value: true
5});
6exports.default = void 0;
7
8var _react = _interopRequireWildcard(require("react"));
9
10var _propTypes = _interopRequireDefault(require("prop-types"));
11
12var _reactTextMask = _interopRequireDefault(require("react-text-mask"));
13
14var _Shimmer = _interopRequireDefault(require("./Shimmer"));
15
16var _reactWithStyles = require("react-with-styles");
17
18var _withStyles = require("../helpers/withStyles");
19
20function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
21
22function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj.default = obj; return newObj; } }
23
24function _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); }
25
26function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }
27
28function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
29
30var propTypes = _objectSpread({}, _reactWithStyles.withStylesPropTypes, {
31 actionLink: _propTypes.default.string,
32 autoCapitalize: _propTypes.default.bool,
33 autoComplete: _propTypes.default.oneOf(['off', 'on']),
34 autoCorrect: _propTypes.default.any,
35 autoFocus: _propTypes.default.bool,
36 book: _propTypes.default.bool,
37 borderless: _propTypes.default.bool,
38 disabled: _propTypes.default.bool,
39 flat: _propTypes.default.bool,
40 floating: _propTypes.default.bool,
41 focusBorderless: _propTypes.default.bool,
42 id: _propTypes.default.string,
43 inline: _propTypes.default.bool,
44 inputRef: _propTypes.default.func,
45 invalid: _propTypes.default.bool,
46 inverse: _propTypes.default.bool,
47 large: _propTypes.default.bool,
48 mask: _propTypes.default.func,
49 maxLength: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]),
50 name: _propTypes.default.string.isRequired,
51 onBlur: _propTypes.default.func,
52 onChange: _propTypes.default.func,
53 onClear: _propTypes.default.func,
54 onFocus: _propTypes.default.func,
55 onKeyDown: _propTypes.default.func,
56 placeholder: _propTypes.default.string,
57 prefix: _propTypes.default.object,
58 prefixSeparator: _propTypes.default.bool,
59 readOnly: _propTypes.default.bool,
60 refForFocus: _propTypes.default.func,
61 removeMargins: _propTypes.default.bool,
62 removePrefixSpacing: _propTypes.default.bool,
63 removeSuffixSpacing: _propTypes.default.bool,
64 shimmer: _propTypes.default.bool,
65 showFakeValuePlaceholder: _propTypes.default.bool,
66 showOverflowEllipsis: _propTypes.default.bool,
67 small: _propTypes.default.bool,
68 spellCheck: _propTypes.default.any,
69 suffix: _propTypes.default.object,
70 suffixSeparator: _propTypes.default.bool,
71 suffixText: _propTypes.default.any,
72 type: _propTypes.default.string,
73 underlineFocus: _propTypes.default.bool,
74 value: _propTypes.default.string
75});
76
77var defaultProps = {
78 autoComplete: 'off',
79 type: 'text'
80};
81
82var InputOnly = function InputOnly(_ref) {
83 var actionLink = _ref.actionLink,
84 autoCapitalize = _ref.autoCapitalize,
85 autoComplete = _ref.autoComplete,
86 autoCorrect = _ref.autoCorrect,
87 autoFocus = _ref.autoFocus,
88 book = _ref.book,
89 borderless = _ref.borderless,
90 css = _ref.css,
91 disabled = _ref.disabled,
92 flat = _ref.flat,
93 floating = _ref.floating,
94 focusBorderless = _ref.focusBorderless,
95 id = _ref.id,
96 inline = _ref.inline,
97 inputRef = _ref.inputRef,
98 invalid = _ref.invalid,
99 inverse = _ref.inverse,
100 large = _ref.large,
101 mask = _ref.mask,
102 maxLength = _ref.maxLength,
103 name = _ref.name,
104 onBlur = _ref.onBlur,
105 onChange = _ref.onChange,
106 onClear = _ref.onClear,
107 onFocus = _ref.onFocus,
108 onKeyDown = _ref.onKeyDown,
109 placeholder = _ref.placeholder,
110 prefix = _ref.prefix,
111 prefixSeparator = _ref.prefixSeparator,
112 readOnly = _ref.readOnly,
113 refForFocus = _ref.refForFocus,
114 removeMargins = _ref.removeMargins,
115 removePrefixSpacing = _ref.removePrefixSpacing,
116 removeSuffixSpacing = _ref.removeSuffixSpacing,
117 shimmer = _ref.shimmer,
118 showFakeValuePlaceholder = _ref.showFakeValuePlaceholder,
119 showOverflowEllipsis = _ref.showOverflowEllipsis,
120 small = _ref.small,
121 spellCheck = _ref.spellCheck,
122 styles = _ref.styles,
123 suffix = _ref.suffix,
124 suffixSeparator = _ref.suffixSeparator,
125 suffixText = _ref.suffixText,
126 type = _ref.type,
127 underlineFocus = _ref.underlineFocus,
128 value = _ref.value;
129 return _react.default.createElement("div", css(styles.inputOnly, !inline && styles.block, borderless && styles.borderless, disabled && styles.inputOnly_disabled, invalid && styles.inputOnly_invalid, flat && styles.inputOnly_flat, floating && styles.inputOnly_floating, focusBorderless && styles.inputOnly_focusBorderless, small && styles.inputOnly_small, removeMargins && styles.noMargin), shimmer && _react.default.createElement("div", css(styles.shimmer), _react.default.createElement(_Shimmer.default, {
130 width: "100%",
131 height: "100%"
132 })), prefix && _react.default.createElement(_react.Fragment, null, _react.default.createElement("div", css(styles.inputOnly__prefix, removePrefixSpacing && styles.noPadding), prefix), prefixSeparator && _react.default.createElement("div", css(styles.separator, !removePrefixSpacing && styles.separator_prefix))), mask != null ? _react.default.createElement(_reactTextMask.default, _extends({}, css(styles.inputOnly__input, showOverflowEllipsis && styles.inputOnly__input_ellipsis, showFakeValuePlaceholder ? styles.inputOnly__input_fakeValuePlaceholder : styles.inputOnly__input_defaultPlaceholder), {
133 autoComplete: autoComplete,
134 autoCapitalize: autoCapitalize,
135 autoFocus: autoFocus,
136 autoCorrect: autoCorrect,
137 disabled: disabled,
138 id: id,
139 mask: mask,
140 maxLength: maxLength,
141 name: name,
142 onBlur: onBlur,
143 onChange: onChange,
144 onFocus: onFocus,
145 onKeyDown: onKeyDown,
146 placeholder: placeholder,
147 value: value,
148 readOnly: readOnly,
149 "aria-readonly": readOnly,
150 spellCheck: spellCheck,
151 type: type
152 })) : _react.default.createElement("input", _extends({}, css(styles.inputOnly__input, showOverflowEllipsis && styles.inputOnly__input_ellipsis, showFakeValuePlaceholder ? styles.inputOnly__input_fakeValuePlaceholder : styles.inputOnly__input_defaultPlaceholder), {
153 autoComplete: autoComplete,
154 autoCapitalize: autoCapitalize,
155 autoFocus: autoFocus,
156 autoCorrect: autoCorrect,
157 disabled: disabled,
158 id: id,
159 maxLength: maxLength,
160 name: name,
161 onBlur: onBlur,
162 onChange: onChange,
163 onFocus: onFocus,
164 onKeyDown: onKeyDown,
165 placeholder: placeholder,
166 value: value,
167 readOnly: readOnly,
168 "aria-readonly": readOnly,
169 spellCheck: spellCheck,
170 type: type
171 })), suffix && _react.default.createElement(_react.Fragment, null, suffixSeparator && _react.default.createElement("div", css(styles.separator, !removeSuffixSpacing && styles.separator_suffix)), _react.default.createElement("div", css(styles.inputOnly__suffix, removeSuffixSpacing && styles.noPadding), suffix)));
172};
173
174InputOnly.propTypes = propTypes;
175InputOnly.defaultProps = defaultProps;
176var InputOnlyWithStyles = (0, _withStyles.withStyles)(function (_ref2) {
177 var units = _ref2.units,
178 input = _ref2.input,
179 color = _ref2.color,
180 shadow = _ref2.shadow;
181 return {
182 inputOnly: _objectSpread({}, input.default, {
183 display: 'inline-flex',
184 position: 'relative',
185 //zIndex: 0,
186 flexWrap: 'nowrap',
187 alignItems: 'center',
188 boxSizing: 'border-box',
189 height: units(2.5),
190 ':focus-within': _objectSpread({}, input.focus)
191 }),
192 inputOnly_focusBorderless: {
193 ':focus-within': {
194 borderWidth: 0
195 }
196 },
197 inputOnly_disabled: _objectSpread({}, input.disabled),
198 inputOnly_invalid: _objectSpread({}, input.invalid),
199 inputOnly_flat: {
200 borderColor: color.blueGray,
201 background: color.white
202 },
203 inputOnly_floating: _objectSpread({}, shadow.level1, {
204 background: color.white,
205 borderColor: color.white
206 }),
207 inputOnly_small: _objectSpread({}, input.small),
208 noMargin: {
209 marginTop: 0,
210 marginRight: 0,
211 marginBottom: 0,
212 marginLeft: 0
213 },
214 noPadding: {
215 paddingTop: 0,
216 paddingRight: 0,
217 paddingBottom: 0,
218 paddingLeft: 0
219 },
220 inputOnly__input: _objectSpread({}, input.default, {
221 border: 0,
222 margin: 0,
223 background: color.transparent,
224 width: '100%',
225 height: 'auto',
226 paddingTop: input.verticalPadding,
227 paddingRight: input.horizontalPadding,
228 paddingBottom: input.verticalPadding,
229 paddingLeft: input.horizontalPadding,
230 boxSizing: 'border-box',
231 '::-ms-clear': {
232 display: 'none'
233 },
234 ':focus': {
235 outline: 'none',
236 boxShadow: 'none',
237 border: 0
238 }
239 }),
240 inputOnly__input_ellipsis: {
241 textOverflow: 'ellipsis'
242 },
243 inputOnly__input_defaultPlaceholder: {
244 '::placeholder': {
245 color: input.placeholderColor,
246 opacity: 1
247 }
248 },
249 inputOnly__input_fakeValuePlaceholder: {
250 '::placeholder': {
251 color: input.color,
252 opacity: 1
253 }
254 },
255 inputOnly__input_inversePlaceholder: {
256 '::placeholder': {
257 color: color.white,
258 opacity: 1
259 }
260 },
261 inputOnly__prefix: {
262 paddingLeft: input.horizontalPadding,
263 flexShrink: 0
264 },
265 inputOnly__suffix: {
266 paddingRight: input.horizontalPadding,
267 flexShrink: 0
268 },
269 separator: {
270 width: 1,
271 height: units(1.5),
272 background: color.gray,
273 flexShrink: 0
274 },
275 separator_prefix: {
276 marginLeft: input.horizontalPadding
277 },
278 separator_suffix: {
279 marginRight: input.horizontalPadding
280 },
281 block: {
282 display: 'flex',
283 width: '100%'
284 },
285 borderless: {
286 borderColor: input.background
287 },
288 shimmer: {
289 position: 'absolute',
290 width: '100%',
291 height: '100%',
292 top: 0,
293 right: 0,
294 bottom: 0,
295 left: 0
296 }
297 };
298})(InputOnly);
299var _default = InputOnlyWithStyles;
300exports.default = _default;
\No newline at end of file