@wecareu/input-text 0.1.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.
Files changed (49) hide show
  1. package/README.md +36 -0
  2. package/lib/commonjs/InputText.js +350 -0
  3. package/lib/commonjs/InputText.js.map +1 -0
  4. package/lib/commonjs/InputText.types.js +6 -0
  5. package/lib/commonjs/InputText.types.js.map +1 -0
  6. package/lib/commonjs/InputTextErrorMessage.js +32 -0
  7. package/lib/commonjs/InputTextErrorMessage.js.map +1 -0
  8. package/lib/commonjs/InputTextIcon.js +65 -0
  9. package/lib/commonjs/InputTextIcon.js.map +1 -0
  10. package/lib/commonjs/animations/shake.js +45 -0
  11. package/lib/commonjs/animations/shake.js.map +1 -0
  12. package/lib/commonjs/index.js +13 -0
  13. package/lib/commonjs/index.js.map +1 -0
  14. package/lib/commonjs/index.stories.js +409 -0
  15. package/lib/commonjs/index.stories.js.map +1 -0
  16. package/lib/module/InputText.js +343 -0
  17. package/lib/module/InputText.js.map +1 -0
  18. package/lib/module/InputText.types.js +2 -0
  19. package/lib/module/InputText.types.js.map +1 -0
  20. package/lib/module/InputTextErrorMessage.js +25 -0
  21. package/lib/module/InputTextErrorMessage.js.map +1 -0
  22. package/lib/module/InputTextIcon.js +58 -0
  23. package/lib/module/InputTextIcon.js.map +1 -0
  24. package/lib/module/animations/shake.js +39 -0
  25. package/lib/module/animations/shake.js.map +1 -0
  26. package/lib/module/index.js +2 -0
  27. package/lib/module/index.js.map +1 -0
  28. package/lib/module/index.stories.js +402 -0
  29. package/lib/module/index.stories.js.map +1 -0
  30. package/lib/typescript/src/InputText.d.ts +5 -0
  31. package/lib/typescript/src/InputText.d.ts.map +1 -0
  32. package/lib/typescript/src/InputText.types.d.ts +146 -0
  33. package/lib/typescript/src/InputText.types.d.ts.map +1 -0
  34. package/lib/typescript/src/InputTextErrorMessage.d.ts +3 -0
  35. package/lib/typescript/src/InputTextErrorMessage.d.ts.map +1 -0
  36. package/lib/typescript/src/InputTextIcon.d.ts +3 -0
  37. package/lib/typescript/src/InputTextIcon.d.ts.map +1 -0
  38. package/lib/typescript/src/animations/shake.d.ts +32 -0
  39. package/lib/typescript/src/animations/shake.d.ts.map +1 -0
  40. package/lib/typescript/src/index.d.ts +3 -0
  41. package/lib/typescript/src/index.d.ts.map +1 -0
  42. package/package.json +66 -0
  43. package/src/InputText.tsx +451 -0
  44. package/src/InputText.types.ts +153 -0
  45. package/src/InputTextErrorMessage.tsx +31 -0
  46. package/src/InputTextIcon.tsx +65 -0
  47. package/src/animations/shake.ts +76 -0
  48. package/src/index.stories.tsx +387 -0
  49. package/src/index.tsx +2 -0
@@ -0,0 +1,409 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = exports.WithRightIcon = exports.WithMask = exports.WithLeftIcon = exports.WithError = exports.Readonly = exports.PasswordToggle = exports.FocusChain = exports.Disabled = exports.Default = void 0;
7
+ var _react = _interopRequireDefault(require("react"));
8
+ var _reactNative = require("react-native");
9
+ var _addonActions = require("@storybook/addon-actions");
10
+ var _icons = require("@wecareu/icons");
11
+ var _ = require(".");
12
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
14
+ const ICON_OPTIONS = ['none', ..._icons.ICON_NAMES];
15
+ const INPUT_TYPE_OPTIONS = ['text', 'email', 'password', 'number', 'phone', 'url'];
16
+ const KEYBOARD_OPTIONS = ['default', 'email-address', 'numeric', 'phone-pad', 'url', 'visible-password'];
17
+ const TEXT_CONTENT_OPTIONS = ['none', 'emailAddress', 'username', 'password', 'oneTimeCode', 'telephoneNumber', 'URL'];
18
+ function StatefulInput({
19
+ initialValue = '',
20
+ onChangeText,
21
+ ...rest
22
+ }) {
23
+ const [value, setValue] = _react.default.useState(initialValue);
24
+ const handleChange = _react.default.useCallback(nextValue => {
25
+ setValue(nextValue);
26
+ onChangeText(nextValue);
27
+ }, [onChangeText]);
28
+ return /*#__PURE__*/_react.default.createElement(_.InputText, _extends({}, rest, {
29
+ onChangeText: handleChange,
30
+ value: value
31
+ }));
32
+ }
33
+ const meta = {
34
+ args: {
35
+ disabled: false,
36
+ initialValue: '',
37
+ inputError: false,
38
+ inputType: 'text',
39
+ keyboardType: 'default',
40
+ leftIconName: 'none',
41
+ locale: 'pt',
42
+ maskNumber: false,
43
+ maxLength: 255,
44
+ minLength: 3,
45
+ onChangeText: (0, _addonActions.action)('onChangeText'),
46
+ placeholder: 'Digite seu texto',
47
+ readonly: false,
48
+ rightIconName: 'none',
49
+ secureTextEntry: false,
50
+ textContentType: 'none',
51
+ validateOnBlur: true,
52
+ validationMessage: 'Digite ao menos 3 caracteres',
53
+ validatorMessage: 'Informe um valor válido',
54
+ validatorPattern: ''
55
+ },
56
+ argTypes: {
57
+ disabled: {
58
+ control: 'boolean'
59
+ },
60
+ formatter: {
61
+ control: false
62
+ },
63
+ initialValue: {
64
+ control: 'text'
65
+ },
66
+ inputError: {
67
+ control: 'boolean'
68
+ },
69
+ inputStyle: {
70
+ control: false
71
+ },
72
+ inputType: {
73
+ control: {
74
+ type: 'select'
75
+ },
76
+ options: INPUT_TYPE_OPTIONS
77
+ },
78
+ keyboardType: {
79
+ control: {
80
+ type: 'select'
81
+ },
82
+ options: KEYBOARD_OPTIONS
83
+ },
84
+ leftIcon: {
85
+ control: false
86
+ },
87
+ leftIconName: {
88
+ control: {
89
+ type: 'select'
90
+ },
91
+ options: ICON_OPTIONS
92
+ },
93
+ locale: {
94
+ control: {
95
+ type: 'select'
96
+ },
97
+ options: ['pt', 'en']
98
+ },
99
+ maskNumber: {
100
+ control: 'boolean'
101
+ },
102
+ maxLength: {
103
+ control: {
104
+ min: 1,
105
+ step: 1,
106
+ type: 'number'
107
+ }
108
+ },
109
+ minLength: {
110
+ control: {
111
+ min: 0,
112
+ step: 1,
113
+ type: 'number'
114
+ }
115
+ },
116
+ nextInputRef: {
117
+ control: false
118
+ },
119
+ onChangeText: {
120
+ control: false
121
+ },
122
+ parser: {
123
+ control: false
124
+ },
125
+ placeholder: {
126
+ control: 'text'
127
+ },
128
+ readonly: {
129
+ control: 'boolean'
130
+ },
131
+ rightIcon: {
132
+ control: false
133
+ },
134
+ rightIconName: {
135
+ control: {
136
+ type: 'select'
137
+ },
138
+ options: ICON_OPTIONS
139
+ },
140
+ secureTextEntry: {
141
+ control: 'boolean'
142
+ },
143
+ style: {
144
+ control: false
145
+ },
146
+ textContentType: {
147
+ control: {
148
+ type: 'select'
149
+ },
150
+ options: TEXT_CONTENT_OPTIONS
151
+ },
152
+ validateOnBlur: {
153
+ control: 'boolean'
154
+ },
155
+ validationMessage: {
156
+ control: 'text'
157
+ },
158
+ validator: {
159
+ control: false
160
+ },
161
+ validatorMessage: {
162
+ control: 'text'
163
+ },
164
+ validatorPattern: {
165
+ control: 'text'
166
+ },
167
+ value: {
168
+ control: false
169
+ }
170
+ },
171
+ component: _.InputText,
172
+ parameters: {
173
+ layout: 'centered'
174
+ },
175
+ tags: ['autodocs'],
176
+ title: 'Forms/InputText'
177
+ };
178
+ var _default = exports.default = meta;
179
+ const Default = exports.Default = {
180
+ render: args => {
181
+ const {
182
+ initialValue,
183
+ inputType,
184
+ keyboardType,
185
+ leftIconName,
186
+ locale,
187
+ maskNumber,
188
+ rightIconName,
189
+ textContentType,
190
+ validatorPattern,
191
+ validatorMessage,
192
+ ...inputArgs
193
+ } = args;
194
+ let derivedPlaceholder = inputArgs.placeholder;
195
+ let derivedSecureTextEntry = inputArgs.secureTextEntry;
196
+ let derivedKeyboardType = keyboardType;
197
+ let derivedTextContentType = textContentType;
198
+ let derivedValidatorPattern = validatorPattern;
199
+ let derivedValidatorMessage = validatorMessage;
200
+ switch (inputType) {
201
+ case 'email':
202
+ derivedPlaceholder = 'Email';
203
+ derivedSecureTextEntry = false;
204
+ derivedKeyboardType = 'email-address';
205
+ derivedTextContentType = 'emailAddress';
206
+ derivedValidatorPattern = '.+@.+\\..+';
207
+ derivedValidatorMessage = validatorMessage || 'Informe um email válido';
208
+ break;
209
+ case 'password':
210
+ derivedPlaceholder = 'Senha';
211
+ derivedSecureTextEntry = true;
212
+ derivedKeyboardType = 'visible-password';
213
+ derivedTextContentType = 'password';
214
+ derivedValidatorPattern = validatorPattern;
215
+ derivedValidatorMessage = validatorMessage || 'Informe uma senha válida';
216
+ break;
217
+ case 'number':
218
+ derivedPlaceholder = 'Número';
219
+ derivedSecureTextEntry = false;
220
+ derivedKeyboardType = 'numeric';
221
+ derivedTextContentType = 'none';
222
+ derivedValidatorPattern = validatorPattern || '^[0-9]+$';
223
+ derivedValidatorMessage = validatorMessage || 'Informe apenas números';
224
+ break;
225
+ case 'phone':
226
+ derivedPlaceholder = 'Telefone';
227
+ derivedSecureTextEntry = false;
228
+ derivedKeyboardType = 'phone-pad';
229
+ derivedTextContentType = 'telephoneNumber';
230
+ derivedValidatorPattern = validatorPattern || '^[0-9()\\s+-]{6,}$';
231
+ derivedValidatorMessage = validatorMessage || 'Informe um telefone válido';
232
+ break;
233
+ case 'url':
234
+ derivedPlaceholder = 'URL';
235
+ derivedSecureTextEntry = false;
236
+ derivedKeyboardType = 'url';
237
+ derivedTextContentType = 'URL';
238
+ derivedValidatorPattern = validatorPattern || '^(https?:\\/\\/).+';
239
+ derivedValidatorMessage = validatorMessage || 'Informe uma URL válida';
240
+ break;
241
+ default:
242
+ derivedPlaceholder = derivedPlaceholder || 'Digite seu texto';
243
+ derivedSecureTextEntry = false;
244
+ derivedKeyboardType = 'default';
245
+ derivedTextContentType = 'none';
246
+ derivedValidatorPattern = validatorPattern;
247
+ derivedValidatorMessage = validatorMessage || 'Informe um valor válido';
248
+ break;
249
+ }
250
+ let patternValidator;
251
+ if (derivedValidatorPattern && derivedValidatorPattern.trim().length > 0) {
252
+ try {
253
+ const regex = new RegExp(derivedValidatorPattern);
254
+ patternValidator = value => regex.test(value);
255
+ } catch {
256
+ patternValidator = undefined;
257
+ }
258
+ }
259
+ const leftIcon = leftIconName && leftIconName !== 'none' ? {
260
+ name: leftIconName
261
+ } : undefined;
262
+ const rightIcon = rightIconName && rightIconName !== 'none' ? {
263
+ name: rightIconName
264
+ } : undefined;
265
+ const finalValidator = patternValidator ?? inputArgs.validator;
266
+ const finalValidatorMessage = patternValidator ? derivedValidatorMessage : inputArgs.validatorMessage;
267
+ return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
268
+ style: styles.container
269
+ }, /*#__PURE__*/_react.default.createElement(StatefulInput, _extends({}, inputArgs, {
270
+ initialValue: initialValue ?? '',
271
+ keyboardType: derivedKeyboardType,
272
+ leftIcon: leftIcon,
273
+ locale: locale,
274
+ maskNumber: maskNumber,
275
+ placeholder: derivedPlaceholder,
276
+ rightIcon: rightIcon,
277
+ secureTextEntry: derivedSecureTextEntry,
278
+ textContentType: derivedTextContentType === 'none' ? undefined : derivedTextContentType,
279
+ type: inputType,
280
+ validator: finalValidator,
281
+ validatorMessage: finalValidatorMessage
282
+ })));
283
+ }
284
+ };
285
+ const WithError = exports.WithError = {
286
+ render: args => /*#__PURE__*/_react.default.createElement(_reactNative.View, {
287
+ style: styles.container
288
+ }, /*#__PURE__*/_react.default.createElement(StatefulInput, _extends({}, args, {
289
+ errorMessage: "Campo obrigat\xF3rio",
290
+ initialValue: "texto",
291
+ inputError: true
292
+ })))
293
+ };
294
+ const Disabled = exports.Disabled = {
295
+ render: args => /*#__PURE__*/_react.default.createElement(_reactNative.View, {
296
+ style: styles.container
297
+ }, /*#__PURE__*/_react.default.createElement(StatefulInput, _extends({}, args, {
298
+ disabled: true,
299
+ initialValue: "texto desabilitado"
300
+ })))
301
+ };
302
+ const Readonly = exports.Readonly = {
303
+ render: args => /*#__PURE__*/_react.default.createElement(_reactNative.View, {
304
+ style: styles.container
305
+ }, /*#__PURE__*/_react.default.createElement(StatefulInput, _extends({}, args, {
306
+ initialValue: "valor somente leitura",
307
+ readonly: true
308
+ })))
309
+ };
310
+ const WithLeftIcon = exports.WithLeftIcon = {
311
+ render: args => /*#__PURE__*/_react.default.createElement(_reactNative.View, {
312
+ style: styles.container
313
+ }, /*#__PURE__*/_react.default.createElement(StatefulInput, _extends({}, args, {
314
+ initialValue: "",
315
+ leftIcon: {
316
+ name: 'search'
317
+ },
318
+ placeholder: "Buscar"
319
+ })))
320
+ };
321
+ const WithRightIcon = exports.WithRightIcon = {
322
+ render: args => /*#__PURE__*/_react.default.createElement(_reactNative.View, {
323
+ style: styles.container
324
+ }, /*#__PURE__*/_react.default.createElement(StatefulInput, _extends({}, args, {
325
+ initialValue: "andre@wecareu.com",
326
+ placeholder: "Email",
327
+ rightIcon: {
328
+ name: 'mail'
329
+ }
330
+ })))
331
+ };
332
+ const PasswordToggle = exports.PasswordToggle = {
333
+ render: args => {
334
+ const [secure, setSecure] = _react.default.useState(true);
335
+ return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
336
+ style: styles.container
337
+ }, /*#__PURE__*/_react.default.createElement(StatefulInput, _extends({}, args, {
338
+ initialValue: "",
339
+ placeholder: "Senha",
340
+ rightIcon: {
341
+ accessibilityLabel: secure ? 'Mostrar senha' : 'Ocultar senha',
342
+ name: secure ? 'eyeOff' : 'eyeOn',
343
+ onPress: () => setSecure(previous => !previous)
344
+ },
345
+ secureTextEntry: secure
346
+ })));
347
+ }
348
+ };
349
+ const WithMask = exports.WithMask = {
350
+ render: args => {
351
+ const formatter = _react.default.useCallback(raw => {
352
+ const digits = raw.replace(/\D/g, '').slice(0, 11);
353
+ return digits.replace(/(\d{3})(\d)/, '$1.$2').replace(/(\d{3})(\d)/, '$1.$2').replace(/(\d{3})(\d{1,2})$/, '$1-$2');
354
+ }, []);
355
+ const parser = _react.default.useCallback(masked => masked.replace(/\D/g, ''), []);
356
+ return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
357
+ style: styles.container
358
+ }, /*#__PURE__*/_react.default.createElement(StatefulInput, _extends({}, args, {
359
+ formatter: formatter,
360
+ initialValue: "12345678901",
361
+ placeholder: "CPF",
362
+ parser: parser
363
+ })));
364
+ }
365
+ };
366
+ const FocusChain = exports.FocusChain = {
367
+ render: args => {
368
+ const secondInputRef = _react.default.useRef(null);
369
+ const [first, setFirst] = _react.default.useState('');
370
+ const [second, setSecond] = _react.default.useState('');
371
+ const {
372
+ onChangeText,
373
+ ...rest
374
+ } = args;
375
+ return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
376
+ style: styles.column
377
+ }, /*#__PURE__*/_react.default.createElement(_.InputText, _extends({}, rest, {
378
+ nextInputRef: secondInputRef,
379
+ onChangeText: value => {
380
+ setFirst(value);
381
+ onChangeText(value);
382
+ },
383
+ placeholder: "Primeiro campo",
384
+ value: first
385
+ })), /*#__PURE__*/_react.default.createElement(_reactNative.View, {
386
+ style: styles.columnSpacing
387
+ }, /*#__PURE__*/_react.default.createElement(_.InputText, _extends({}, rest, {
388
+ onChangeText: value => {
389
+ setSecond(value);
390
+ onChangeText(value);
391
+ },
392
+ placeholder: "Segundo campo",
393
+ ref: secondInputRef,
394
+ value: second
395
+ }))));
396
+ }
397
+ };
398
+ const styles = _reactNative.StyleSheet.create({
399
+ column: {
400
+ width: '100%'
401
+ },
402
+ columnSpacing: {
403
+ marginTop: 16
404
+ },
405
+ container: {
406
+ width: 320
407
+ }
408
+ });
409
+ //# sourceMappingURL=index.stories.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_addonActions","_icons","_","e","__esModule","default","_extends","Object","assign","bind","n","arguments","length","t","r","hasOwnProperty","call","apply","ICON_OPTIONS","ICON_NAMES","INPUT_TYPE_OPTIONS","KEYBOARD_OPTIONS","TEXT_CONTENT_OPTIONS","StatefulInput","initialValue","onChangeText","rest","value","setValue","React","useState","handleChange","useCallback","nextValue","createElement","InputText","meta","args","disabled","inputError","inputType","keyboardType","leftIconName","locale","maskNumber","maxLength","minLength","action","placeholder","readonly","rightIconName","secureTextEntry","textContentType","validateOnBlur","validationMessage","validatorMessage","validatorPattern","argTypes","control","formatter","inputStyle","type","options","leftIcon","min","step","nextInputRef","parser","rightIcon","style","validator","component","parameters","layout","tags","title","_default","exports","Default","render","inputArgs","derivedPlaceholder","derivedSecureTextEntry","derivedKeyboardType","derivedTextContentType","derivedValidatorPattern","derivedValidatorMessage","patternValidator","trim","regex","RegExp","test","undefined","name","finalValidator","finalValidatorMessage","View","styles","container","WithError","errorMessage","Disabled","Readonly","WithLeftIcon","WithRightIcon","PasswordToggle","secure","setSecure","accessibilityLabel","onPress","previous","WithMask","raw","digits","replace","slice","masked","FocusChain","secondInputRef","useRef","first","setFirst","second","setSecond","column","columnSpacing","ref","StyleSheet","create","width","marginTop"],"sourceRoot":"..\\..\\src","sources":["index.stories.tsx"],"mappings":"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","ignoreList":[]}