@juantroconisf/lib 3.0.0 → 3.0.2

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/dist/index.d.mts CHANGED
@@ -86,13 +86,13 @@ interface SelectRegisterProps<O extends StateType> extends ComponentInputProps<O
86
86
  onSelectionChange: SelectProps["onSelectionChange"];
87
87
  selectedKeys: SelectProps["selectedKeys"];
88
88
  }
89
- type RegisterFunc<O extends StateType> = (id: keyof O) => {
89
+ interface RegisterFunc<O extends StateType> {
90
90
  input: (id: keyof O) => InputRegisterProps<O>;
91
91
  select: (id: keyof O) => SelectRegisterProps<O>;
92
- };
92
+ }
93
93
  interface UseFormChangeResponse<O extends StateType> {
94
94
  onBlur: BlurFunc<O>;
95
- onValueChange: ValueChangeFunc<O, string | number>;
95
+ onValueChange: ValueChangeFunc<O, keyof O>;
96
96
  onSelectionChange: ValueChangeFunc<O, SharedSelection>;
97
97
  state: O;
98
98
  setState: React.Dispatch<React.SetStateAction<O>>;
package/dist/index.d.ts CHANGED
@@ -86,13 +86,13 @@ interface SelectRegisterProps<O extends StateType> extends ComponentInputProps<O
86
86
  onSelectionChange: SelectProps["onSelectionChange"];
87
87
  selectedKeys: SelectProps["selectedKeys"];
88
88
  }
89
- type RegisterFunc<O extends StateType> = (id: keyof O) => {
89
+ interface RegisterFunc<O extends StateType> {
90
90
  input: (id: keyof O) => InputRegisterProps<O>;
91
91
  select: (id: keyof O) => SelectRegisterProps<O>;
92
- };
92
+ }
93
93
  interface UseFormChangeResponse<O extends StateType> {
94
94
  onBlur: BlurFunc<O>;
95
- onValueChange: ValueChangeFunc<O, string | number>;
95
+ onValueChange: ValueChangeFunc<O, keyof O>;
96
96
  onSelectionChange: ValueChangeFunc<O, SharedSelection>;
97
97
  state: O;
98
98
  setState: React.Dispatch<React.SetStateAction<O>>;
package/dist/index.js CHANGED
@@ -218,28 +218,27 @@ function useFormChange({
218
218
  },
219
219
  [state, touched, getValidation]
220
220
  );
221
- const register = (0, import_react.useCallback)(
222
- () => ({
223
- input: (id) => ({
224
- ...registerHandle(id),
225
- onValueChange: (v) => onValueChange(id, v),
226
- value: state[id]
227
- }),
228
- select: (id) => ({
229
- ...registerHandle(id),
230
- onSelectionChange: (v) => onSelectionChange(id, v),
231
- selectedKeys: state[id]
232
- })
233
- }),
234
- [registerHandle]
235
- );
236
221
  return {
237
222
  onBlur,
238
223
  onValueChange,
239
224
  onSelectionChange,
240
225
  state,
241
226
  setState,
242
- register,
227
+ register: (0, import_react.useMemo)(
228
+ () => ({
229
+ input: (id) => ({
230
+ ...registerHandle(id),
231
+ onValueChange: (v) => onValueChange(id, v),
232
+ value: state[id]
233
+ }),
234
+ select: (id) => ({
235
+ ...registerHandle(id),
236
+ onSelectionChange: (v) => onSelectionChange(id, v),
237
+ selectedKeys: state[id]
238
+ })
239
+ }),
240
+ [registerHandle]
241
+ ),
243
242
  hasInvalidValues: () => {
244
243
  setTouched(allToValue(touched, true));
245
244
  return JSON.stringify(untouchedErrors.current).includes(":true");
@@ -251,6 +250,20 @@ function useFormChange({
251
250
  }
252
251
  };
253
252
  }
253
+ var { register } = useFormChange({
254
+ state: {
255
+ first_name: "Juan",
256
+ last_name: ""
257
+ },
258
+ validations: {
259
+ first_name: {
260
+ required: true
261
+ },
262
+ last_name: {
263
+ required: true
264
+ }
265
+ }
266
+ });
254
267
  // Annotate the CommonJS export names for ESM import in node:
255
268
  0 && (module.exports = {
256
269
  NextUIError,
package/dist/index.mjs CHANGED
@@ -6,7 +6,7 @@ var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require
6
6
  });
7
7
 
8
8
  // src/hooks/useFormChange.tsx
9
- import { useState, useRef, useCallback } from "react";
9
+ import { useState, useRef, useCallback, useMemo } from "react";
10
10
 
11
11
  // src/utils/types.ts
12
12
  var NextUIError = class {
@@ -199,28 +199,27 @@ function useFormChange({
199
199
  },
200
200
  [state, touched, getValidation]
201
201
  );
202
- const register = useCallback(
203
- () => ({
204
- input: (id) => ({
205
- ...registerHandle(id),
206
- onValueChange: (v) => onValueChange(id, v),
207
- value: state[id]
208
- }),
209
- select: (id) => ({
210
- ...registerHandle(id),
211
- onSelectionChange: (v) => onSelectionChange(id, v),
212
- selectedKeys: state[id]
213
- })
214
- }),
215
- [registerHandle]
216
- );
217
202
  return {
218
203
  onBlur,
219
204
  onValueChange,
220
205
  onSelectionChange,
221
206
  state,
222
207
  setState,
223
- register,
208
+ register: useMemo(
209
+ () => ({
210
+ input: (id) => ({
211
+ ...registerHandle(id),
212
+ onValueChange: (v) => onValueChange(id, v),
213
+ value: state[id]
214
+ }),
215
+ select: (id) => ({
216
+ ...registerHandle(id),
217
+ onSelectionChange: (v) => onSelectionChange(id, v),
218
+ selectedKeys: state[id]
219
+ })
220
+ }),
221
+ [registerHandle]
222
+ ),
224
223
  hasInvalidValues: () => {
225
224
  setTouched(allToValue(touched, true));
226
225
  return JSON.stringify(untouchedErrors.current).includes(":true");
@@ -232,6 +231,20 @@ function useFormChange({
232
231
  }
233
232
  };
234
233
  }
234
+ var { register } = useFormChange({
235
+ state: {
236
+ first_name: "Juan",
237
+ last_name: ""
238
+ },
239
+ validations: {
240
+ first_name: {
241
+ required: true
242
+ },
243
+ last_name: {
244
+ required: true
245
+ }
246
+ }
247
+ });
235
248
  export {
236
249
  NextUIError,
237
250
  useFormChange
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@juantroconisf/lib",
3
- "version": "3.0.0",
3
+ "version": "3.0.2",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",