@ehfuse/mui-form-controls 1.3.20 → 2.0.0

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/types.d.ts CHANGED
@@ -14,12 +14,12 @@ import type { RadioGroupProps as MuiRadioGroupProps } from "@mui/material/RadioG
14
14
  import type { SliderProps as MuiSliderProps } from "@mui/material/Slider";
15
15
  import type { RatingProps as MuiRatingProps } from "@mui/material/Rating";
16
16
  import type { ToggleButtonProps as MuiToggleButtonProps } from "@mui/material/ToggleButton";
17
+ import type { ToggleButtonGroupProps as MuiToggleButtonGroupProps } from "@mui/material/ToggleButtonGroup";
17
18
  import type { ButtonGroupProps as MuiButtonGroupProps } from "@mui/material/ButtonGroup";
18
19
  import type { StepperProps as MuiStepperProps } from "@mui/material/Stepper";
19
20
  import type { AutocompleteProps as MuiAutocompleteProps } from "@mui/material/Autocomplete";
20
21
  import type { SelectProps as MuiSelectProps, SelectChangeEvent } from "@mui/material/Select";
21
22
  import type { FormControlProps } from "@mui/material/FormControl";
22
- import type { FormControlLabelProps } from "@mui/material/FormControlLabel";
23
23
  import type { InputBaseComponentProps } from "@mui/material/InputBase";
24
24
  export type TextFieldProps = MuiTextFieldProps;
25
25
  export type ButtonGroupProps = MuiButtonGroupProps;
@@ -33,6 +33,7 @@ export type PopoverOrigin = {
33
33
  export type FormLike = {
34
34
  useFormValue: (name: string) => unknown;
35
35
  handleFormChange: (event: React.ChangeEvent<HTMLInputElement>) => void;
36
+ setFormValue?: (name: string, value: unknown) => void;
36
37
  };
37
38
  export type BaseTextFieldProps = {
38
39
  readonly?: boolean;
@@ -67,11 +68,6 @@ export type SwitchProps = Omit<MuiSwitchProps, "checked" | "onChange" | "form">
67
68
  label?: React.ReactNode;
68
69
  onChange?: (event: React.ChangeEvent<HTMLInputElement>, checked: boolean) => void;
69
70
  };
70
- export type SwitchFieldProps = Omit<SwitchProps, "label"> & {
71
- label: React.ReactNode;
72
- labelPlacement?: FormControlLabelProps["labelPlacement"];
73
- sx?: SxProps<Theme>;
74
- };
75
71
  export type RadioOption = {
76
72
  value: string;
77
73
  label: React.ReactNode;
@@ -118,6 +114,21 @@ export type ToggleButtonProps = Omit<MuiToggleButtonProps, "value" | "onChange"
118
114
  selected?: boolean;
119
115
  onChange?: (event: React.MouseEvent<HTMLElement>, value: any) => void;
120
116
  };
117
+ export type ToggleButtonGroupOption = {
118
+ label: React.ReactNode;
119
+ value: string | number | boolean;
120
+ disabled?: boolean;
121
+ };
122
+ export type ToggleButtonGroupProps = Omit<MuiToggleButtonGroupProps, "value" | "onChange" | "children"> & BaseTextFieldProps & {
123
+ name?: string;
124
+ options: ToggleButtonGroupOption[];
125
+ value?: unknown;
126
+ exclusive?: boolean;
127
+ fullWidth?: boolean;
128
+ size?: "small" | "medium" | "large";
129
+ onDeselect?: "keep" | "clear";
130
+ onChange?: (event: React.MouseEvent<HTMLElement>, value: unknown) => void;
131
+ };
121
132
  export type AutocompleteOption = {
122
133
  value: string | number;
123
134
  label: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ehfuse/mui-form-controls",
3
- "version": "1.3.20",
3
+ "version": "2.0.0",
4
4
  "description": "Material-UI form controls and text fields for complex forms",
5
5
  "private": false,
6
6
  "publishConfig": {