linear-react-components-ui 1.1.26-beta.21 → 1.1.26-beta.23

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 (94) hide show
  1. package/lib/assets/styles/datepicker2.css +1 -1
  2. package/lib/assets/styles/dialog.css +1 -1
  3. package/lib/assets/styles/drawers.css +1 -1
  4. package/lib/assets/styles/gridlayout.css +1 -1
  5. package/lib/assets/styles/selectfield.css +1 -1
  6. package/lib/assets/styles/textfield.css +1 -1
  7. package/lib/assets/styles/tooltip.css +1 -1
  8. package/lib/dialog/base/index.js +53 -55
  9. package/lib/dialog/base/index.js.map +1 -1
  10. package/lib/dialog/form/index.js +56 -55
  11. package/lib/dialog/form/index.js.map +1 -1
  12. package/lib/drawer/Drawer.js +7 -7
  13. package/lib/drawer/Drawer.js.map +1 -1
  14. package/lib/drawer/index.js +1 -1
  15. package/lib/drawer/index.js.map +1 -1
  16. package/lib/form2/types.d.ts +9 -4
  17. package/lib/form2/useForm/index.js +96 -89
  18. package/lib/form2/useForm/index.js.map +1 -1
  19. package/lib/icons/helper.d.ts +12 -0
  20. package/lib/icons/helper.js +12 -0
  21. package/lib/icons/helper.js.map +1 -1
  22. package/lib/inputs/date/index.js +59 -61
  23. package/lib/inputs/date/index.js.map +1 -1
  24. package/lib/inputs2/checkboxfield/base.d.ts +27 -0
  25. package/lib/inputs2/checkboxfield/base.js +100 -0
  26. package/lib/inputs2/checkboxfield/base.js.map +1 -0
  27. package/lib/inputs2/checkboxfield/index.d.ts +4 -25
  28. package/lib/inputs2/checkboxfield/index.js +41 -108
  29. package/lib/inputs2/checkboxfield/index.js.map +1 -1
  30. package/lib/inputs2/date/datefield/base.d.ts +3 -0
  31. package/lib/inputs2/date/datefield/base.js +193 -0
  32. package/lib/inputs2/date/datefield/base.js.map +1 -0
  33. package/lib/inputs2/date/datefield/index.d.ts +2 -1
  34. package/lib/inputs2/date/datefield/index.js +42 -312
  35. package/lib/inputs2/date/datefield/index.js.map +1 -1
  36. package/lib/inputs2/date/datefield/types.d.ts +6 -4
  37. package/lib/inputs2/date/dateperiodfield/base.d.ts +3 -0
  38. package/lib/inputs2/date/dateperiodfield/base.js +511 -0
  39. package/lib/inputs2/date/dateperiodfield/base.js.map +1 -0
  40. package/lib/inputs2/date/dateperiodfield/index.d.ts +2 -1
  41. package/lib/inputs2/date/dateperiodfield/index.js +42 -517
  42. package/lib/inputs2/date/dateperiodfield/index.js.map +1 -1
  43. package/lib/inputs2/date/dateperiodfield/types.d.ts +6 -4
  44. package/lib/inputs2/index.d.ts +2 -1
  45. package/lib/inputs2/index.js +11 -8
  46. package/lib/inputs2/index.js.map +1 -1
  47. package/lib/inputs2/mask/Cnpj.d.ts +1 -3
  48. package/lib/inputs2/mask/Cnpj.js +38 -44
  49. package/lib/inputs2/mask/Cnpj.js.map +1 -1
  50. package/lib/inputs2/mask/Cpf.d.ts +0 -1
  51. package/lib/inputs2/mask/Cpf.js +32 -42
  52. package/lib/inputs2/mask/Cpf.js.map +1 -1
  53. package/lib/inputs2/numberfield/currency.js +4 -4
  54. package/lib/inputs2/numberfield/decimal.js +7 -6
  55. package/lib/inputs2/numberfield/decimal.js.map +1 -1
  56. package/lib/inputs2/numberfield/index.js +85 -68
  57. package/lib/inputs2/numberfield/index.js.map +1 -1
  58. package/lib/inputs2/radiofield/base.d.ts +3 -0
  59. package/lib/inputs2/radiofield/base.js +115 -0
  60. package/lib/inputs2/radiofield/base.js.map +1 -0
  61. package/lib/inputs2/radiofield/index.d.ts +2 -1
  62. package/lib/inputs2/radiofield/index.js +41 -108
  63. package/lib/inputs2/radiofield/index.js.map +1 -1
  64. package/lib/inputs2/radiofield/types.d.ts +5 -2
  65. package/lib/inputs2/selectfield/base.d.ts +3 -0
  66. package/lib/inputs2/selectfield/base.js +411 -0
  67. package/lib/inputs2/selectfield/base.js.map +1 -0
  68. package/lib/inputs2/selectfield/index.d.ts +3 -3
  69. package/lib/inputs2/selectfield/index.js +49 -404
  70. package/lib/inputs2/selectfield/index.js.map +1 -1
  71. package/lib/inputs2/selectfield/listbox.d.ts +0 -1
  72. package/lib/inputs2/selectfield/listbox.js +33 -34
  73. package/lib/inputs2/selectfield/listbox.js.map +1 -1
  74. package/lib/inputs2/selectfield/types.d.ts +8 -7
  75. package/lib/inputs2/selectfield/types.js.map +1 -1
  76. package/lib/inputs2/textareafield/base.d.ts +23 -0
  77. package/lib/inputs2/textareafield/base.js +137 -0
  78. package/lib/inputs2/textareafield/base.js.map +1 -0
  79. package/lib/inputs2/textareafield/index.d.ts +4 -22
  80. package/lib/inputs2/textareafield/index.js +45 -130
  81. package/lib/inputs2/textareafield/index.js.map +1 -1
  82. package/lib/inputs2/textfield/base.d.ts +23 -0
  83. package/lib/inputs2/textfield/base.js +107 -0
  84. package/lib/inputs2/textfield/base.js.map +1 -0
  85. package/lib/inputs2/textfield/index.d.ts +4 -22
  86. package/lib/inputs2/textfield/index.js +45 -103
  87. package/lib/inputs2/textfield/index.js.map +1 -1
  88. package/lib/tooltip/types.d.ts +4 -1
  89. package/lib/tooltip/useTooltip.js +68 -86
  90. package/lib/tooltip/useTooltip.js.map +1 -1
  91. package/package.json +6 -1
  92. package/lib/inputs2/selectfield/simple.d.ts +0 -9
  93. package/lib/inputs2/selectfield/simple.js +0 -24
  94. package/lib/inputs2/selectfield/simple.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/lib/drawer/index.tsx"],"sourcesContent":["import Drawer from './Drawer';\nimport DrawerHeader from './Header';\nimport DrawerContent from './Content';\nimport '../assets/styles/drawers.scss';\nimport withFormSecurity from '../form/withFormSecurity';\n\nexport default withFormSecurity(Drawer);\nexport { DrawerHeader, DrawerContent };\n"],"names":["Drawer","withFormSecurity"],"mappings":";;;;;AAMA,MAAAA,IAAeC,EAAiBD,CAAM;"}
1
+ {"version":3,"file":"index.js","sources":["../../src/lib/drawer/index.tsx"],"sourcesContent":["import '../assets/styles/drawers.scss';\n\nimport Drawer from './Drawer';\nimport DrawerHeader from './Header';\nimport DrawerContent from './Content';\nimport withFormSecurity from '../form/withFormSecurity';\n\nexport default withFormSecurity(Drawer);\nexport { DrawerHeader, DrawerContent };\n"],"names":["Drawer","withFormSecurity"],"mappings":";;;;;AAOA,MAAAA,IAAeC,EAAiBD,CAAM;"}
@@ -1,4 +1,4 @@
1
- import { ChangeEvent, FormEvent, Ref, RefCallback } from 'react';
1
+ import { ChangeEvent, ChangeEventHandler, FocusEvent, FocusEventHandler, FormEvent, Ref, RefCallback } from 'react';
2
2
  export type DeepPartial<T> = {
3
3
  [K in keyof T]?: T[K] extends Array<infer U> ? Array<DeepPartial<U>> : T[K] extends object ? DeepPartial<T[K]> : T[K];
4
4
  };
@@ -24,6 +24,11 @@ export type RegisterFunction = (name: string, externalRef?: Ref<HTMLInputElement
24
24
  onBlur: () => void;
25
25
  onChange: (event: ChangeEvent<HTMLInputElement>) => void;
26
26
  };
27
+ export type RegisterOptions = {
28
+ onChange?: ChangeEventHandler<HTMLInputElement | HTMLTextAreaElement> | undefined;
29
+ onBlur?: FocusEventHandler<HTMLInputElement | HTMLTextAreaElement> | undefined;
30
+ ref?: Ref<HTMLInputElement | HTMLTextAreaElement>;
31
+ };
27
32
  export interface UseFormProps<T> {
28
33
  initialValues: T;
29
34
  validators?: ValidatorsSchema;
@@ -63,13 +68,13 @@ export interface UseFormReturn<T> {
63
68
  /**
64
69
  * Registra um campo no formulário, integrando com `ref`, `value`, `onChange` e `onBlur`.
65
70
  * @param name - Nome do campo.
66
- * @param externalRef - Referência externa para o input.
71
+ * @param registerOptions - Opções de registro, incluindo referências e manipuladores de eventos.
67
72
  */
68
- register: (name: string, externalRef?: Ref<HTMLInputElement | HTMLTextAreaElement>) => {
73
+ register: (name: string, registerOptions?: RegisterOptions) => {
69
74
  name: string;
70
75
  ref: RefCallback<HTMLInputElement | HTMLTextAreaElement>;
71
76
  value: any;
72
- onBlur: () => void;
77
+ onBlur: (event: FocusEvent<HTMLInputElement | HTMLTextAreaElement>) => void;
73
78
  onChange: (event: ChangeEvent<HTMLInputElement | HTMLTextAreaElement>) => void;
74
79
  };
75
80
  /**
@@ -1,117 +1,124 @@
1
1
  import t from "../../_virtual/lodash.js";
2
2
  import { useState as v, useRef as C } from "react";
3
- import { flattenValidators as L, deepMergeValues as N, mergeRefs as P } from "../helpers.js";
4
- const X = ({
3
+ import { flattenValidators as Q, deepMergeValues as U, mergeRefs as W } from "../helpers.js";
4
+ const $ = ({
5
5
  initialValues: V,
6
6
  validators: R = {},
7
7
  options: b = {
8
8
  validationMode: "default"
9
9
  }
10
10
  }) => {
11
- const [a, g] = v(V), [u, d] = v({}), [F, S] = v({}), [D, w] = v({}), j = C({}), i = C(V), p = C(V), f = L(R), O = (e, r) => {
12
- const o = (t.get(f, e) ?? []).map((n) => n(r, a)).filter((n) => !!n);
13
- d((n) => {
14
- const c = t.cloneDeep(n);
15
- return t.set(c, e, o), c;
11
+ const [l, p] = v(V), [d, i] = v({}), [F, S] = v({}), [D, w] = v({}), j = C({}), f = C(V), E = C(V), g = Q(R), O = (e, r) => {
12
+ const n = (t.get(g, e) ?? []).map((c) => c(r, l)).filter((c) => !!c);
13
+ i((c) => {
14
+ const o = t.cloneDeep(c);
15
+ return t.set(o, e, n), o;
16
16
  });
17
- }, B = () => {
17
+ }, M = () => {
18
18
  const e = {};
19
- return Object.keys(f).forEach((r) => {
20
- const s = t.get(a, r), n = (t.get(f, r) ?? []).map((c) => c(s, a)).filter((c) => !!c);
21
- n.length && t.set(e, r, n);
22
- }), d(e), e;
23
- }, M = () => Object.keys(f).every((e) => {
24
- const r = t.get(a, e);
25
- return (t.get(f, e) ?? []).every((o) => !o(r, a));
26
- }), T = (e) => t.get(u, e) ?? [], q = (e) => {
27
- d((r) => {
19
+ return Object.keys(g).forEach((r) => {
20
+ const s = t.get(l, r), c = (t.get(g, r) ?? []).map((o) => o(s, l)).filter((o) => !!o);
21
+ c.length && t.set(e, r, c);
22
+ }), i(e), e;
23
+ }, T = () => Object.keys(g).every((e) => {
24
+ const r = t.get(l, e);
25
+ return (t.get(g, e) ?? []).every((n) => !n(r, l));
26
+ }), q = (e) => t.get(d, e) ?? [], y = (e) => {
27
+ i((r) => {
28
28
  const s = t.cloneDeep(r);
29
- return Object.entries(e).forEach(([o, n]) => {
30
- t.set(s, o, n);
29
+ return Object.entries(e).forEach(([n, c]) => {
30
+ t.set(s, n, c);
31
31
  }), s;
32
32
  });
33
- }, y = (e) => t.get(a, e), x = (e, r) => {
34
- g((s) => {
35
- const o = t.cloneDeep(s);
36
- t.set(o, e, r);
37
- const n = t.get(p.current, e), c = !t.isEqual(n, r);
38
- return S((E) => {
39
- const l = t.cloneDeep(E);
40
- return t.set(l, e, c), l;
41
- }), o;
33
+ }, x = (e) => t.get(l, e), I = (e, r) => {
34
+ p((s) => {
35
+ const n = t.cloneDeep(s);
36
+ t.set(n, e, r);
37
+ const c = t.get(E.current, e), o = !t.isEqual(c, r);
38
+ return S((u) => {
39
+ const a = t.cloneDeep(u);
40
+ return t.set(a, e, o), a;
41
+ }), n;
42
42
  });
43
- }, I = (e, r) => {
43
+ }, k = (e, r) => {
44
44
  const s = j.current[e];
45
45
  s?.focus?.(), r?.shouldSelect && s?.select?.();
46
- }, k = (e, r) => t.isEqual(t.get(a, e), r), A = (e) => {
47
- const r = t.cloneDeep(u);
48
- (e ?? Object.keys(u)).forEach((o) => {
49
- t.set(r, o, []);
50
- }), d(r);
46
+ }, A = (e, r) => t.isEqual(t.get(l, e), r), H = (e) => {
47
+ const r = t.cloneDeep(d);
48
+ (e ?? Object.keys(d)).forEach((n) => {
49
+ t.set(r, n, []);
50
+ }), i(r);
51
51
  }, m = (e, r) => {
52
- const s = t.cloneDeep(a), o = t.cloneDeep(D), n = t.cloneDeep(F), c = t.cloneDeep(u);
53
- (e ?? Object.keys(i.current)).forEach((l) => {
54
- const h = t.get(i.current, l);
55
- t.set(s, l, h), t.set(o, l, !1), t.set(n, l, !1), t.set(c, l, []);
56
- }), g(s), w(o), S(n), d(c), r || (p.current = i.current);
57
- }, H = (e) => {
58
- m(void 0, !0), g((r) => {
59
- const s = N(r, e);
60
- return p.current = s, s;
52
+ const s = t.cloneDeep(l), n = t.cloneDeep(D), c = t.cloneDeep(F), o = t.cloneDeep(d);
53
+ (e ?? Object.keys(f.current)).forEach((a) => {
54
+ const h = t.get(f.current, a);
55
+ t.set(s, a, h), t.set(n, a, !1), t.set(c, a, !1), t.set(o, a, []);
56
+ }), p(s), w(n), S(c), i(o), r || (E.current = f.current);
57
+ }, z = (e) => {
58
+ m(void 0, !0), p((r) => {
59
+ const s = U(r, e);
60
+ return E.current = s, s;
61
61
  });
62
- }, z = (e, r) => ({
63
- name: e,
64
- ref: P((s) => {
65
- j.current[e] = s;
66
- }, r),
67
- value: t.get(a, e, t.get(i.current, e, "")),
68
- onChange: (s) => {
69
- const {
70
- value: o
71
- } = s.target;
72
- g((n) => {
73
- const c = t.cloneDeep(n);
74
- t.set(c, e, o);
75
- const E = !t.isEqual(t.get(p.current, e), o);
76
- return S((l) => {
77
- const h = t.cloneDeep(l);
78
- return t.set(h, e, E), h;
79
- }), b.validationMode === "default" && t.get(D, e) && O(e, o), c;
80
- });
81
- },
82
- onBlur: () => {
83
- w((s) => {
84
- const o = t.cloneDeep(s);
85
- return t.set(o, e, !0), o;
86
- }), b.validationMode === "default" && O(e, t.get(a, e));
87
- }
88
- }), G = (e) => (r) => {
62
+ }, G = (e, r) => {
63
+ const {
64
+ onChange: s,
65
+ onBlur: n,
66
+ ref: c
67
+ } = r ?? {};
68
+ return {
69
+ name: e,
70
+ ref: W((o) => {
71
+ j.current[e] = o;
72
+ }, c),
73
+ value: t.get(l, e, t.get(f.current, e, "")),
74
+ onChange: (o) => {
75
+ const {
76
+ value: u
77
+ } = o.target;
78
+ p((a) => {
79
+ const h = t.cloneDeep(a);
80
+ t.set(h, e, u);
81
+ const N = !t.isEqual(t.get(E.current, e), u);
82
+ return S((P) => {
83
+ const B = t.cloneDeep(P);
84
+ return t.set(B, e, N), B;
85
+ }), b.validationMode === "default" && t.get(D, e) && O(e, u), h;
86
+ }), s?.(o);
87
+ },
88
+ onBlur: (o) => {
89
+ w((u) => {
90
+ const a = t.cloneDeep(u);
91
+ return t.set(a, e, !0), a;
92
+ }), b.validationMode === "default" && O(e, t.get(l, e)), n?.(o);
93
+ }
94
+ };
95
+ }, J = (e) => (r) => {
89
96
  r.preventDefault();
90
- const s = B();
91
- t.isEmpty(s) && e(a);
92
- }, J = M(), K = Object.values(F).some(Boolean);
97
+ const s = M();
98
+ t.isEmpty(s) && e(l);
99
+ }, K = T(), L = Object.values(F).some(Boolean);
93
100
  return {
94
101
  reset: m,
95
102
  changed: F,
96
- values: a,
97
- errors: u,
103
+ values: l,
104
+ errors: d,
98
105
  touched: D,
99
- isValid: J,
100
- formHasChange: K,
101
- register: z,
102
- cleanErrors: A,
103
- changeValues: H,
104
- compareField: k,
105
- handleSubmit: G,
106
- getFieldValue: y,
107
- getFieldError: T,
108
- setFieldFocus: I,
109
- setFieldValue: x,
110
- setExternalErrors: q,
111
- initialValues: i.current
106
+ isValid: K,
107
+ formHasChange: L,
108
+ register: G,
109
+ cleanErrors: H,
110
+ changeValues: z,
111
+ compareField: A,
112
+ handleSubmit: J,
113
+ getFieldValue: x,
114
+ getFieldError: q,
115
+ setFieldFocus: k,
116
+ setFieldValue: I,
117
+ setExternalErrors: y,
118
+ initialValues: f.current
112
119
  };
113
120
  };
114
121
  export {
115
- X as default
122
+ $ as default
116
123
  };
117
124
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/lib/form2/useForm/index.ts"],"sourcesContent":["import _ from 'lodash';\nimport { ChangeEvent, FormEvent, Ref, useRef, useState } from 'react';\nimport type {\n FieldErrors, FieldChanged, FieldTouched, FieldFocusOptions, UseFormProps,\n UseFormReturn, DeepPartial,\n} from '../types';\nimport { deepMergeValues, flattenValidators, mergeRefs } from '../helpers';\n\nconst useForm = <ValuesType extends Record<string, any>>({\n initialValues,\n validators = {},\n options = { validationMode: 'default' },\n}: UseFormProps<ValuesType>): UseFormReturn<ValuesType> => {\n const [values, setValues] = useState<ValuesType>(initialValues);\n const [errors, setErrors] = useState<FieldErrors<ValuesType>>({});\n const [changed, setChanged] = useState<FieldChanged<ValuesType>>({});\n const [touched, setTouched] = useState<FieldTouched<ValuesType>>({});\n const fieldsRef = useRef<Record<string, HTMLInputElement | HTMLTextAreaElement | null>>({});\n const initialValuesRef = useRef<ValuesType>(initialValues);\n const valuesToCompareInChangedRef = useRef<ValuesType>(initialValues);\n\n const flattenedValidators = flattenValidators(validators);\n\n const validateField = (name: string, value: any) => {\n const validatorsForField = _.get(flattenedValidators, name) ?? [];\n const fieldErrors = validatorsForField\n .map((validator: any) => validator(value, values))\n .filter((message: string) => Boolean(message));\n\n setErrors((prevErrorsState) => {\n const updatedErrorsState = _.cloneDeep(prevErrorsState);\n _.set(updatedErrorsState, name, fieldErrors);\n return updatedErrorsState;\n });\n };\n\n const validateAllFields = () => {\n const allValidationErrors: FieldErrors<ValuesType> = {};\n\n Object.keys(flattenedValidators).forEach((path) => {\n const value = _.get(values, path);\n const fieldValidators = _.get(flattenedValidators, path) ?? [];\n const fieldErrors = fieldValidators\n .map((validator: any) => validator(value, values))\n .filter((message: string) => Boolean(message));\n\n if (fieldErrors.length) {\n _.set(allValidationErrors, path, fieldErrors);\n }\n });\n\n setErrors(allValidationErrors);\n return allValidationErrors;\n };\n\n const checkFormIsValid = () => {\n return Object.keys(flattenedValidators).every((path) => {\n const value = _.get(values, path);\n const fieldValidators = _.get(flattenedValidators, path) ?? [];\n return fieldValidators.every((validator: any) => !validator(value, values));\n });\n };\n\n const getFieldError = (name: string): string[] => {\n const fieldErrors = _.get(errors, name) as string[] ?? [];\n return fieldErrors;\n };\n\n const setExternalErrors = (externalErrors: Record<string, string[]>) => {\n setErrors((prevStateErrors) => {\n const newErrorsState = _.cloneDeep(prevStateErrors);\n Object.entries(externalErrors).forEach(([key, value]) => {\n _.set(newErrorsState, key, value);\n });\n return newErrorsState;\n });\n };\n\n const getFieldValue = (name: string): any => {\n return _.get(values, name);\n };\n\n const setFieldValue = (name: string, value: any) => {\n setValues((prevStateValues) => {\n const updatedValuesState = _.cloneDeep(prevStateValues);\n _.set(updatedValuesState, name, value);\n\n const valueToCompare = _.get(valuesToCompareInChangedRef.current, name);\n const hasChanged = !_.isEqual(valueToCompare, value);\n\n setChanged((prevStateChanged) => {\n const updatedChangedState = _.cloneDeep(prevStateChanged);\n _.set(updatedChangedState, name, hasChanged);\n return updatedChangedState;\n });\n\n return updatedValuesState;\n });\n };\n\n const setFieldFocus = (name: string, fieldFocusOptions?: FieldFocusOptions) => {\n const field = fieldsRef.current[name];\n field?.focus?.();\n if (fieldFocusOptions?.shouldSelect) {\n field?.select?.();\n }\n };\n\n const compareField = (name: string, valueToCompare: any): boolean => {\n return _.isEqual(_.get(values, name), valueToCompare);\n };\n\n const cleanErrors = (fieldsToClean?: string[]) => {\n const newErrorsState = _.cloneDeep(errors);\n const fields = fieldsToClean ?? Object.keys(errors);\n\n fields.forEach((key) => {\n _.set(newErrorsState, key, []);\n });\n\n setErrors(newErrorsState);\n };\n\n const reset = (inputsToReset?: string[], internalReset?: boolean) => {\n const newValuesState = _.cloneDeep(values);\n const newTouchedState = _.cloneDeep(touched);\n const newChangedState = _.cloneDeep(changed);\n const newErrorsState = _.cloneDeep(errors);\n const inputs = inputsToReset ?? Object.keys(initialValuesRef.current);\n\n inputs.forEach((key) => {\n const initialValue = _.get(initialValuesRef.current, key);\n _.set(newValuesState, key, initialValue);\n _.set(newTouchedState, key, false);\n _.set(newChangedState, key, false);\n _.set(newErrorsState, key, []);\n });\n\n setValues(newValuesState);\n setTouched(newTouchedState);\n setChanged(newChangedState);\n setErrors(newErrorsState);\n\n if (!internalReset) { valuesToCompareInChangedRef.current = initialValuesRef.current; }\n };\n\n const changeValues = (fieldValues: DeepPartial<ValuesType>) => {\n reset(undefined, true);\n setValues((prevStateValues) => {\n const newValuesState = deepMergeValues(prevStateValues, fieldValues);\n valuesToCompareInChangedRef.current = newValuesState;\n return newValuesState;\n });\n };\n\n const register = (name: string, externalRef?: Ref<HTMLInputElement | HTMLTextAreaElement>) => {\n return {\n name,\n ref: mergeRefs<HTMLInputElement | HTMLTextAreaElement>((inputElement: any) => {\n fieldsRef.current[name] = inputElement;\n }, externalRef),\n value: _.get(values, name, _.get(initialValuesRef.current, name, '')),\n onChange: (event: ChangeEvent<HTMLInputElement | HTMLTextAreaElement>) => {\n const { value } = event.target;\n\n setValues((prevStateValues) => {\n const updatedValues = _.cloneDeep(prevStateValues);\n _.set(updatedValues, name, value);\n\n const hasChanged = !_.isEqual(_.get(valuesToCompareInChangedRef.current, name), value);\n setChanged((prevStateChanged) => {\n const updatedChangedState = _.cloneDeep(prevStateChanged);\n _.set(updatedChangedState, name, hasChanged);\n return updatedChangedState;\n });\n\n if (options.validationMode === 'default' && _.get(touched, name)) {\n validateField(name, value);\n }\n\n return updatedValues;\n });\n },\n onBlur: () => {\n setTouched((prevStateTouched) => {\n const updated = _.cloneDeep(prevStateTouched);\n _.set(updated, name, true);\n return updated;\n });\n\n if (options.validationMode === 'default') {\n validateField(name, _.get(values, name));\n }\n },\n };\n };\n\n const handleSubmit = (callback: (data: ValuesType) => void) => (event: FormEvent) => {\n event.preventDefault();\n\n const validationErrors = validateAllFields();\n const hasErrors = !_.isEmpty(validationErrors);\n\n if (hasErrors) return;\n callback(values);\n };\n\n const isValid = checkFormIsValid();\n const formHasChange = Object.values(changed).some(Boolean);\n\n return {\n reset,\n changed,\n values,\n errors,\n touched,\n isValid,\n formHasChange,\n register,\n cleanErrors,\n changeValues,\n compareField,\n handleSubmit,\n getFieldValue,\n getFieldError,\n setFieldFocus,\n setFieldValue,\n setExternalErrors,\n initialValues: initialValuesRef.current,\n };\n};\n\nexport default useForm;\n"],"names":["useForm","initialValues","validators","options","validationMode","values","setValues","useState","errors","setErrors","changed","setChanged","touched","setTouched","fieldsRef","useRef","initialValuesRef","valuesToCompareInChangedRef","flattenedValidators","flattenValidators","validateField","name","value","fieldErrors","_","get","map","validator","filter","message","Boolean","prevErrorsState","updatedErrorsState","cloneDeep","set","validateAllFields","allValidationErrors","Object","keys","forEach","path","length","checkFormIsValid","every","getFieldError","setExternalErrors","externalErrors","prevStateErrors","newErrorsState","entries","key","getFieldValue","setFieldValue","prevStateValues","updatedValuesState","valueToCompare","current","hasChanged","isEqual","prevStateChanged","updatedChangedState","setFieldFocus","fieldFocusOptions","field","focus","shouldSelect","select","compareField","cleanErrors","fieldsToClean","fields","reset","inputsToReset","internalReset","newValuesState","newTouchedState","newChangedState","inputs","initialValue","changeValues","fieldValues","undefined","deepMergeValues","register","externalRef","ref","mergeRefs","inputElement","onChange","event","target","updatedValues","onBlur","prevStateTouched","updated","handleSubmit","callback","preventDefault","validationErrors","isEmpty","isValid","formHasChange","some"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/lib/form2/useForm/index.ts"],"sourcesContent":["import _ from 'lodash';\nimport { ChangeEvent, FocusEvent, FormEvent, useRef, useState } from 'react';\nimport type {\n FieldErrors, FieldChanged, FieldTouched, FieldFocusOptions, UseFormProps,\n UseFormReturn, DeepPartial,\n RegisterOptions,\n} from '../types';\nimport { deepMergeValues, flattenValidators, mergeRefs } from '../helpers';\n\nconst useForm = <ValuesType extends Record<string, any>>({\n initialValues,\n validators = {},\n options = { validationMode: 'default' },\n}: UseFormProps<ValuesType>): UseFormReturn<ValuesType> => {\n const [values, setValues] = useState<ValuesType>(initialValues);\n const [errors, setErrors] = useState<FieldErrors<ValuesType>>({});\n const [changed, setChanged] = useState<FieldChanged<ValuesType>>({});\n const [touched, setTouched] = useState<FieldTouched<ValuesType>>({});\n const fieldsRef = useRef<Record<string, HTMLInputElement | HTMLTextAreaElement | null>>({});\n const initialValuesRef = useRef<ValuesType>(initialValues);\n const valuesToCompareInChangedRef = useRef<ValuesType>(initialValues);\n\n const flattenedValidators = flattenValidators(validators);\n\n const validateField = (name: string, value: any) => {\n const validatorsForField = _.get(flattenedValidators, name) ?? [];\n const fieldErrors = validatorsForField\n .map((validator: any) => validator(value, values))\n .filter((message: string) => Boolean(message));\n\n setErrors((prevErrorsState) => {\n const updatedErrorsState = _.cloneDeep(prevErrorsState);\n _.set(updatedErrorsState, name, fieldErrors);\n return updatedErrorsState;\n });\n };\n\n const validateAllFields = () => {\n const allValidationErrors: FieldErrors<ValuesType> = {};\n\n Object.keys(flattenedValidators).forEach((path) => {\n const value = _.get(values, path);\n const fieldValidators = _.get(flattenedValidators, path) ?? [];\n const fieldErrors = fieldValidators\n .map((validator: any) => validator(value, values))\n .filter((message: string) => Boolean(message));\n\n if (fieldErrors.length) {\n _.set(allValidationErrors, path, fieldErrors);\n }\n });\n\n setErrors(allValidationErrors);\n return allValidationErrors;\n };\n\n const checkFormIsValid = () => {\n return Object.keys(flattenedValidators).every((path) => {\n const value = _.get(values, path);\n const fieldValidators = _.get(flattenedValidators, path) ?? [];\n return fieldValidators.every((validator: any) => !validator(value, values));\n });\n };\n\n const getFieldError = (name: string): string[] => {\n const fieldErrors = _.get(errors, name) as string[] ?? [];\n return fieldErrors;\n };\n\n const setExternalErrors = (externalErrors: Record<string, string[]>) => {\n setErrors((prevStateErrors) => {\n const newErrorsState = _.cloneDeep(prevStateErrors);\n Object.entries(externalErrors).forEach(([key, value]) => {\n _.set(newErrorsState, key, value);\n });\n return newErrorsState;\n });\n };\n\n const getFieldValue = (name: string): any => {\n return _.get(values, name);\n };\n\n const setFieldValue = (name: string, value: any) => {\n setValues((prevStateValues) => {\n const updatedValuesState = _.cloneDeep(prevStateValues);\n _.set(updatedValuesState, name, value);\n\n const valueToCompare = _.get(valuesToCompareInChangedRef.current, name);\n const hasChanged = !_.isEqual(valueToCompare, value);\n\n setChanged((prevStateChanged) => {\n const updatedChangedState = _.cloneDeep(prevStateChanged);\n _.set(updatedChangedState, name, hasChanged);\n return updatedChangedState;\n });\n\n return updatedValuesState;\n });\n };\n\n const setFieldFocus = (name: string, fieldFocusOptions?: FieldFocusOptions) => {\n const field = fieldsRef.current[name];\n field?.focus?.();\n if (fieldFocusOptions?.shouldSelect) {\n field?.select?.();\n }\n };\n\n const compareField = (name: string, valueToCompare: any): boolean => {\n return _.isEqual(_.get(values, name), valueToCompare);\n };\n\n const cleanErrors = (fieldsToClean?: string[]) => {\n const newErrorsState = _.cloneDeep(errors);\n const fields = fieldsToClean ?? Object.keys(errors);\n\n fields.forEach((key) => {\n _.set(newErrorsState, key, []);\n });\n\n setErrors(newErrorsState);\n };\n\n const reset = (inputsToReset?: string[], internalReset?: boolean) => {\n const newValuesState = _.cloneDeep(values);\n const newTouchedState = _.cloneDeep(touched);\n const newChangedState = _.cloneDeep(changed);\n const newErrorsState = _.cloneDeep(errors);\n const inputs = inputsToReset ?? Object.keys(initialValuesRef.current);\n\n inputs.forEach((key) => {\n const initialValue = _.get(initialValuesRef.current, key);\n _.set(newValuesState, key, initialValue);\n _.set(newTouchedState, key, false);\n _.set(newChangedState, key, false);\n _.set(newErrorsState, key, []);\n });\n\n setValues(newValuesState);\n setTouched(newTouchedState);\n setChanged(newChangedState);\n setErrors(newErrorsState);\n\n if (!internalReset) { valuesToCompareInChangedRef.current = initialValuesRef.current; }\n };\n\n const changeValues = (fieldValues: DeepPartial<ValuesType>) => {\n reset(undefined, true);\n setValues((prevStateValues) => {\n const newValuesState = deepMergeValues(prevStateValues, fieldValues);\n valuesToCompareInChangedRef.current = newValuesState;\n return newValuesState;\n });\n };\n\n const register = (\n name: string,\n registerOptions?: RegisterOptions,\n ) => {\n const { onChange, onBlur, ref } = registerOptions ?? {};\n return {\n name,\n ref: mergeRefs<HTMLInputElement | HTMLTextAreaElement>((inputElement: any) => {\n fieldsRef.current[name] = inputElement;\n }, ref),\n value: _.get(values, name, _.get(initialValuesRef.current, name, '')),\n onChange: (event: ChangeEvent<HTMLInputElement | HTMLTextAreaElement>) => {\n const { value } = event.target;\n\n setValues((prevStateValues) => {\n const updatedValues = _.cloneDeep(prevStateValues);\n _.set(updatedValues, name, value);\n\n const hasChanged = !_.isEqual(_.get(valuesToCompareInChangedRef.current, name), value);\n setChanged((prevStateChanged) => {\n const updatedChangedState = _.cloneDeep(prevStateChanged);\n _.set(updatedChangedState, name, hasChanged);\n return updatedChangedState;\n });\n\n if (options.validationMode === 'default' && _.get(touched, name)) {\n validateField(name, value);\n }\n\n return updatedValues;\n });\n onChange?.(event);\n },\n onBlur: (event: FocusEvent<HTMLInputElement | HTMLTextAreaElement>) => {\n setTouched((prevStateTouched) => {\n const updated = _.cloneDeep(prevStateTouched);\n _.set(updated, name, true);\n return updated;\n });\n\n if (options.validationMode === 'default') {\n validateField(name, _.get(values, name));\n }\n\n onBlur?.(event);\n },\n };\n };\n\n const handleSubmit = (callback: (data: ValuesType) => void) => (event: FormEvent) => {\n event.preventDefault();\n\n const validationErrors = validateAllFields();\n const hasErrors = !_.isEmpty(validationErrors);\n\n if (hasErrors) return;\n callback(values);\n };\n\n const isValid = checkFormIsValid();\n const formHasChange = Object.values(changed).some(Boolean);\n\n return {\n reset,\n changed,\n values,\n errors,\n touched,\n isValid,\n formHasChange,\n register,\n cleanErrors,\n changeValues,\n compareField,\n handleSubmit,\n getFieldValue,\n getFieldError,\n setFieldFocus,\n setFieldValue,\n setExternalErrors,\n initialValues: initialValuesRef.current,\n };\n};\n\nexport default useForm;\n"],"names":["useForm","initialValues","validators","options","validationMode","values","setValues","useState","errors","setErrors","changed","setChanged","touched","setTouched","fieldsRef","useRef","initialValuesRef","valuesToCompareInChangedRef","flattenedValidators","flattenValidators","validateField","name","value","fieldErrors","_","get","map","validator","filter","message","Boolean","prevErrorsState","updatedErrorsState","cloneDeep","set","validateAllFields","allValidationErrors","Object","keys","forEach","path","length","checkFormIsValid","every","getFieldError","setExternalErrors","externalErrors","prevStateErrors","newErrorsState","entries","key","getFieldValue","setFieldValue","prevStateValues","updatedValuesState","valueToCompare","current","hasChanged","isEqual","prevStateChanged","updatedChangedState","setFieldFocus","fieldFocusOptions","field","focus","shouldSelect","select","compareField","cleanErrors","fieldsToClean","fields","reset","inputsToReset","internalReset","newValuesState","newTouchedState","newChangedState","inputs","initialValue","changeValues","fieldValues","undefined","deepMergeValues","register","registerOptions","onChange","onBlur","ref","mergeRefs","inputElement","event","target","updatedValues","prevStateTouched","updated","handleSubmit","callback","preventDefault","validationErrors","isEmpty","isValid","formHasChange","some"],"mappings":"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"}
@@ -651,5 +651,17 @@ declare const _default: {
651
651
  viewbox: string;
652
652
  paths: string[];
653
653
  };
654
+ perdaConsumoInterno: {
655
+ viewbox: string;
656
+ paths: string[];
657
+ };
658
+ inventario: {
659
+ viewbox: string;
660
+ paths: string[];
661
+ };
662
+ trocaFornecedor: {
663
+ viewbox: string;
664
+ paths: string[];
665
+ };
654
666
  };
655
667
  export default _default;
@@ -650,6 +650,18 @@ const h = {
650
650
  minus: {
651
651
  viewbox: "0 0 16 16",
652
652
  paths: ["M0 5h16v6h-16z"]
653
+ },
654
+ perdaConsumoInterno: {
655
+ viewbox: "0 0 16 16",
656
+ paths: ["M6 7.25c0 0.412-0.338 0.75-0.75 0.75h-1.5c-0.413 0-0.75-0.338-0.75-0.75v-1.5c0-0.412 0.337-0.75 0.75-0.75h1.5c0.412 0 0.75 0.338 0.75 0.75v1.5z", "M11 7.25c0 0.412-0.338 0.75-0.75 0.75h-1.5c-0.412 0-0.75-0.338-0.75-0.75v-1.5c0-0.412 0.338-0.75 0.75-0.75h1.5c0.412 0 0.75 0.338 0.75 0.75v1.5z", "M6 12.25c0 0.412-0.338 0.75-0.75 0.75h-1.5c-0.413 0-0.75-0.338-0.75-0.75v-1.5c0-0.412 0.337-0.75 0.75-0.75h1.5c0.412 0 0.75 0.338 0.75 0.75v1.5z", "M14.251 2.5l1.749-1.749v-0.751h-0.751l-1.749 1.749-1.749-1.749h-0.751v0.751l1.749 1.749-1.749 1.749v0.751h0.751l1.749-1.749 1.749 1.749h0.751v-0.751z", "M0 12h1v2h-1v-2z", "M0 9h1v2h-1v-2z", "M13 7h1v2h-1v-2z", "M13 13h1v2h-1v-2z", "M13 10h1v2h-1v-2z", "M0 6h1v2h-1v-2z", "M0 3h1v2h-1v-2z", "M8 2h2v1h-2v-1z", "M5 2h2v1h-2v-1z", "M2 2h2v1h-2v-1z", "M7 15h2v1h-2v-1z", "M10 15h2v1h-2v-1z", "M4 15h2v1h-2v-1z", "M1 15h2v1h-2v-1z"]
657
+ },
658
+ inventario: {
659
+ viewbox: "0 0 16 16",
660
+ paths: ["M11 4v-4h-11v11h4v5h12v-12h-5zM10 6.125h-4v-0.125h4v0.125zM10 10h-4v-0.125h4v0.125zM10 9.625h-4v-0.25h4v0.25zM10 9.125h-4v-0.25h4v0.25zM10 8.625h-4v-0.25h4v0.25zM10 8.125h-4v-0.25h4v0.25zM10 7.625h-4v-0.25h4v0.25zM10 7.125h-4v-0.25h4v0.25zM10 6.625h-4v-0.25h4v0.25zM4 10h-3v-9h9v3h-6v6zM15 15h-10v-3h7v-7h3v10z"]
661
+ },
662
+ trocaFornecedor: {
663
+ viewbox: "0 0 16 16",
664
+ paths: ["M11 8v6h1v-6h2.5l-3-3-3 3z", "M1 3h1.5v1h-1.5v-1z", "M3 3h1.5v1h-1.5v-1z", "M5 3h1v1.5h-1v-1.5z", "M1 6.5h1v1.5h-1v-1.5z", "M2.5 7h1.5v1h-1.5v-1z", "M4.5 7h1.5v1h-1.5v-1z", "M1 4.5h1v1.5h-1v-1.5z", "M5 5h1v1.5h-1v-1.5z", "M5 11v3h-3v-3h3zM6 10h-5v5h5v-5z"]
653
665
  }
654
666
  };
655
667
  export {