react-better-html 1.1.24 → 1.1.25

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.
@@ -9,7 +9,7 @@ type InternalToggleInputProps<Value> = {
9
9
  value?: Value;
10
10
  onChange?: (checked: boolean, value?: Value) => void;
11
11
  } & OmitProps<React.ComponentProps<"input">, "style" | "value" | "ref" | "onChange" | "name"> & ComponentStyle & ComponentHoverStyle;
12
- type ToggleInputProps<Value> = ComponentPropWithRef<ToggleInputRef, OmitProps<InternalToggleInputProps<Value>, "type">>;
12
+ export type ToggleInputProps<Value> = ComponentPropWithRef<ToggleInputRef, OmitProps<InternalToggleInputProps<Value>, "type">>;
13
13
  type ToggleInputComponentType = <Value>(props: ToggleInputProps<Value>) => React.ReactElement;
14
14
  declare const _default: {
15
15
  checkbox: ToggleInputComponentType;
@@ -3,6 +3,7 @@ import { Theme } from "../types/theme";
3
3
  import { OmitProps, PartialRecord } from "../types/app";
4
4
  import { InputFieldProps } from "../components/InputField";
5
5
  import { DropdownProps } from "../components/Dropdown";
6
+ import { ToggleInputProps, ToggleInputRef } from "../components/ToggleInput";
6
7
  export declare function useStyledComponentStyles(props: ComponentStyle & ComponentHoverStyle, theme?: Theme,
7
8
  /** @default false */
8
9
  excludeProps?: boolean): {
@@ -53,6 +54,7 @@ export declare function useForm<FormFields extends Record<string, string | numbe
53
54
  setFieldValue: <FieldName extends keyof FormFields>(field: FieldName, value: FormFields[FieldName] | undefined) => void;
54
55
  getInputFieldProps: <FieldName extends keyof FormFields>(field: FieldName) => ComponentPropWithRef<HTMLInputElement, InputFieldProps>;
55
56
  getDropdownFieldProps: <FieldName extends keyof FormFields>(field: FieldName) => OmitProps<ComponentPropWithRef<HTMLDivElement, DropdownProps<FormFields[FieldName], unknown>>, "options">;
57
+ getCheckboxProps: <FieldName extends keyof FormFields>(field: FieldName) => ComponentPropWithRef<ToggleInputRef, ToggleInputProps<FormFields[FieldName]>>;
56
58
  focusField: (field: keyof FormFields) => void;
57
59
  onSubmit: (event: React.FormEvent<HTMLFormElement>) => Promise<void>;
58
60
  reset: () => void;
@@ -190,8 +190,9 @@ function useForm({ defaultValues, onSubmit, validate, }) {
190
190
  [field]: element.getAttribute("type"),
191
191
  }));
192
192
  },
193
+ errorText: errors[field],
193
194
  };
194
- }, [values, setFieldValue, inputTypes]);
195
+ }, [values, setFieldValue, inputTypes, errors]);
195
196
  const getDropdownFieldProps = (0, react_1.useCallback)((field) => {
196
197
  return {
197
198
  value: values[field],
@@ -201,6 +202,15 @@ function useForm({ defaultValues, onSubmit, validate, }) {
201
202
  errorText: errors[field],
202
203
  };
203
204
  }, [values, errors, setFieldValue]);
205
+ const getCheckboxProps = (0, react_1.useCallback)((field) => {
206
+ return {
207
+ value: values[field],
208
+ onChange: (checked) => {
209
+ setFieldValue(field, checked);
210
+ },
211
+ errorText: errors[field],
212
+ };
213
+ }, [values, errors, setFieldValue]);
204
214
  const focusField = (0, react_1.useCallback)((field) => {
205
215
  inputFieldRefs.current[field]?.focus();
206
216
  }, []);
@@ -233,6 +243,7 @@ function useForm({ defaultValues, onSubmit, validate, }) {
233
243
  setFieldValue,
234
244
  getInputFieldProps,
235
245
  getDropdownFieldProps,
246
+ getCheckboxProps,
236
247
  focusField,
237
248
  onSubmit: onSubmitFunction,
238
249
  reset,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-better-html",
3
- "version": "1.1.24",
3
+ "version": "1.1.25",
4
4
  "description": "A component library for react that is as close to plane html as possible",
5
5
  "main": "dist/index.js",
6
6
  "files": [