@cwncollab-org/mui-component-kit 0.2.3 → 0.3.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/README.md CHANGED
@@ -722,6 +722,262 @@ function MyForm() {
722
722
  The RadioGroup component also accepts all standard MUI RadioGroup props except `name`, `value`, and `defaultValue` which are managed by the form field.
723
723
 
724
724
 
725
+ ### MaskedTextField Component
726
+
727
+ The MaskedTextField component provides input masking functionality, built on top of MUI's TextField component and `react-imask` library, integrated with TanStack Form. This component is useful for formatting user input such as phone numbers, credit card numbers, social security numbers, and other structured data.
728
+
729
+ ```tsx
730
+ import { useAppForm } from '@cwncollab-org/component-kit'
731
+ import { z } from 'zod'
732
+
733
+ // Define your form schema
734
+ const formSchema = z.object({
735
+ phone: z.string().min(1, 'Phone number is required'),
736
+ ssn: z.string().min(1, 'SSN is required'),
737
+ creditCard: z.string().min(1, 'Credit card number is required'),
738
+ zipCode: z.string().min(1, 'ZIP code is required'),
739
+ date: z.string().min(1, 'Date is required'),
740
+ })
741
+
742
+ function MyForm() {
743
+ const form = useAppForm({
744
+ defaultValues: {
745
+ phone: '',
746
+ ssn: '',
747
+ creditCard: '',
748
+ zipCode: '',
749
+ date: '',
750
+ },
751
+ validators: {
752
+ onSubmit: formSchema,
753
+ },
754
+ onSubmit: ({ value }) => {
755
+ console.log('Form values:', value)
756
+ },
757
+ })
758
+
759
+ return (
760
+ <>
761
+ {/* Phone number mask */}
762
+ <form.AppField
763
+ name="phone"
764
+ children={field => (
765
+ <field.MaskedTextField
766
+ mask="(000) 000-0000"
767
+ label="Phone Number"
768
+ labelBehavior="shrink"
769
+ size="small"
770
+ fullWidth
771
+ placeholder="(123) 456-7890"
772
+ />
773
+ )}
774
+ />
775
+
776
+ {/* Social Security Number mask */}
777
+ <form.AppField
778
+ name="ssn"
779
+ children={field => (
780
+ <field.MaskedTextField
781
+ mask="000-00-0000"
782
+ label="Social Security Number"
783
+ labelBehavior="shrink"
784
+ size="small"
785
+ fullWidth
786
+ placeholder="123-45-6789"
787
+ />
788
+ )}
789
+ />
790
+
791
+ {/* Credit Card Number mask */}
792
+ <form.AppField
793
+ name="creditCard"
794
+ children={field => (
795
+ <field.MaskedTextField
796
+ mask="0000 0000 0000 0000"
797
+ label="Credit Card Number"
798
+ labelBehavior="shrink"
799
+ size="small"
800
+ fullWidth
801
+ placeholder="1234 5678 9012 3456"
802
+ />
803
+ )}
804
+ />
805
+
806
+ {/* ZIP Code mask */}
807
+ <form.AppField
808
+ name="zipCode"
809
+ children={field => (
810
+ <field.MaskedTextField
811
+ mask="00000"
812
+ label="ZIP Code"
813
+ labelBehavior="shrink"
814
+ size="small"
815
+ placeholder="12345"
816
+ />
817
+ )}
818
+ />
819
+
820
+ {/* Date mask */}
821
+ <form.AppField
822
+ name="date"
823
+ children={field => (
824
+ <field.MaskedTextField
825
+ mask="00/00/0000"
826
+ label="Date (MM/DD/YYYY)"
827
+ labelBehavior="shrink"
828
+ size="small"
829
+ fullWidth
830
+ placeholder="12/31/2023"
831
+ />
832
+ )}
833
+ />
834
+
835
+ {/* SubscribeMaskedTextField automatically disables during form submission */}
836
+ <form.AppField
837
+ name="phone"
838
+ children={field => (
839
+ <field.SubscribeMaskedTextField
840
+ mask="(000) 000-0000"
841
+ label="Phone Number"
842
+ labelBehavior="auto"
843
+ size="small"
844
+ fullWidth
845
+ placeholder="(123) 456-7890"
846
+ />
847
+ )}
848
+ />
849
+ </>
850
+ )
851
+ }
852
+ ```
853
+
854
+ #### Advanced Masking Examples
855
+
856
+ ```tsx
857
+ // Custom mask patterns
858
+ function AdvancedMaskingExamples() {
859
+ const form = useAppForm({
860
+ defaultValues: {
861
+ license: '',
862
+ time: '',
863
+ currency: '',
864
+ alphanumeric: '',
865
+ },
866
+ onSubmit: ({ value }) => {
867
+ console.log('Advanced mask values:', value)
868
+ },
869
+ })
870
+
871
+ return (
872
+ <>
873
+ {/* License plate (letters and numbers) */}
874
+ <form.AppField
875
+ name="license"
876
+ children={field => (
877
+ <field.MaskedTextField
878
+ mask="aaa-0000"
879
+ label="License Plate"
880
+ labelBehavior="shrink"
881
+ size="small"
882
+ fullWidth
883
+ placeholder="ABC-1234"
884
+ />
885
+ )}
886
+ />
887
+
888
+ {/* Time format */}
889
+ <form.AppField
890
+ name="time"
891
+ children={field => (
892
+ <field.MaskedTextField
893
+ mask="00:00"
894
+ label="Time (24h format)"
895
+ labelBehavior="shrink"
896
+ size="small"
897
+ placeholder="14:30"
898
+ />
899
+ )}
900
+ />
901
+
902
+ {/* Currency with decimal */}
903
+ <form.AppField
904
+ name="currency"
905
+ children={field => (
906
+ <field.MaskedTextField
907
+ mask="$num"
908
+ blocks={{
909
+ num: {
910
+ mask: Number,
911
+ scale: 2,
912
+ thousandsSeparator: ',',
913
+ padFractionalZeros: true,
914
+ normalizeZeros: true,
915
+ radix: '.',
916
+ mapToRadix: ['.'],
917
+ },
918
+ }}
919
+ label="Amount"
920
+ labelBehavior="shrink"
921
+ size="small"
922
+ fullWidth
923
+ placeholder="$1,234.56"
924
+ />
925
+ )}
926
+ />
927
+
928
+ {/* Mixed alphanumeric */}
929
+ <form.AppField
930
+ name="alphanumeric"
931
+ children={field => (
932
+ <field.MaskedTextField
933
+ mask="aa00aa"
934
+ label="Product Code"
935
+ labelBehavior="shrink"
936
+ size="small"
937
+ placeholder="AB12CD"
938
+ />
939
+ )}
940
+ />
941
+ </>
942
+ )
943
+ }
944
+ ```
945
+
946
+ #### MaskedTextField Props
947
+
948
+ | Prop | Type | Default | Description |
949
+ |------|------|---------|-------------|
950
+ | `mask` | `IMaskInputProps['mask']` | - | The mask pattern to apply to the input |
951
+ | `label` | `string` | - | The label text for the text field |
952
+ | `labelBehavior` | `'auto' \| 'shrink' \| 'static'` | `'auto'` | How the label should behave |
953
+ | `size` | `'small' \| 'medium'` | `'medium'` | The size of the text field |
954
+ | `fullWidth` | `boolean` | `false` | Whether the text field should take full width |
955
+ | `placeholder` | `string` | - | Placeholder text when the field is empty |
956
+ | `disabled` | `boolean` | `false` | Whether the text field is disabled |
957
+ | `required` | `boolean` | `false` | Whether the text field is required |
958
+ | `slotProps` | `object` | - | Props for underlying MUI components |
959
+
960
+ The MaskedTextField component accepts all standard MUI TextField props and forwards them to the underlying TextField component.
961
+
962
+ **Mask Patterns:**
963
+ - `0` - any digit (0-9)
964
+ - `a` - any letter (a-z, A-Z)
965
+ - `*` - any alphanumeric character
966
+ - `[]` - make input optional (example: `[00]` for optional digits)
967
+ - `{}` - define range of repetitions (example: `{1,3}` for 1 to 3 repetitions)
968
+
969
+ **Label Behaviors:**
970
+ - `'auto'`: Default MUI behavior - label floats when focused or has value
971
+ - `'shrink'`: Label is always in the shrunk (floating) position
972
+ - `'static'`: Label appears as a static label above the input
973
+
974
+ **Advanced Masking:**
975
+ For complex masking scenarios like currency formatting or custom validation, you can pass an object with `blocks` configuration to define custom mask behaviors.
976
+
977
+ **SubscribeMaskedTextField:**
978
+ The `SubscribeMaskedTextField` component has the same props as `MaskedTextField` but automatically disables the field when the form is submitting, providing better UX during form submission.
979
+
980
+
725
981
  ### Common Dialog Patterns
726
982
 
727
983
  Here are some common dialog patterns you can implement using the component kit:
@@ -12,6 +12,8 @@ export type AutocompleteProps = Omit<MuiFormControlProps, 'onChange'> & {
12
12
  multiple?: boolean;
13
13
  freeSolo?: boolean;
14
14
  placeholder?: string;
15
+ required?: boolean;
16
+ disabled?: boolean;
15
17
  slotProps?: {
16
18
  autocomplete?: Omit<MuiAutocompleteProps<Option, boolean, boolean, boolean>, 'options' | 'value' | 'onChange' | 'renderInput' | 'multiple' | 'freeSolo'>;
17
19
  textField?: Omit<MuiTextFieldProps, 'value' | 'onChange' | 'name'>;
@@ -1 +1 @@
1
- {"version":3,"file":"Autocomplete.d.ts","sourceRoot":"","sources":["../../src/lib/form/Autocomplete.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,iBAAiB,IAAI,oBAAoB,EAEzC,cAAc,IAAI,iBAAiB,EAEnC,gBAAgB,IAAI,mBAAmB,EAEvC,mBAAmB,IAAI,sBAAsB,EAC9C,MAAM,eAAe,CAAA;AAItB,KAAK,MAAM,GAAG;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAAC,mBAAmB,EAAE,UAAU,CAAC,GAAG;IACtE,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,aAAa,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAA;IAC5C,IAAI,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAA;IACzB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,OAAO,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAAA;IAC7B,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,SAAS,CAAC,EAAE;QACV,YAAY,CAAC,EAAE,IAAI,CACjB,oBAAoB,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,EACvD,SAAS,GAAG,OAAO,GAAG,UAAU,GAAG,aAAa,GAAG,UAAU,GAAG,UAAU,CAC3E,CAAA;QACD,SAAS,CAAC,EAAE,IAAI,CAAC,iBAAiB,EAAE,OAAO,GAAG,UAAU,GAAG,MAAM,CAAC,CAAA;QAClE,UAAU,CAAC,EAAE,sBAAsB,CAAA;KACpC,CAAA;IACD,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI,KAAK,IAAI,CAAA;CACrD,CAAA;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,iBAAiB,2CAkKpD"}
1
+ {"version":3,"file":"Autocomplete.d.ts","sourceRoot":"","sources":["../../src/lib/form/Autocomplete.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,iBAAiB,IAAI,oBAAoB,EAEzC,cAAc,IAAI,iBAAiB,EAEnC,gBAAgB,IAAI,mBAAmB,EAEvC,mBAAmB,IAAI,sBAAsB,EAC9C,MAAM,eAAe,CAAA;AAItB,KAAK,MAAM,GAAG;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAAC,mBAAmB,EAAE,UAAU,CAAC,GAAG;IACtE,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,aAAa,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAA;IAC5C,IAAI,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAA;IACzB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,OAAO,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAAA;IAC7B,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,SAAS,CAAC,EAAE;QACV,YAAY,CAAC,EAAE,IAAI,CACjB,oBAAoB,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,EACvD,SAAS,GAAG,OAAO,GAAG,UAAU,GAAG,aAAa,GAAG,UAAU,GAAG,UAAU,CAC3E,CAAA;QACD,SAAS,CAAC,EAAE,IAAI,CAAC,iBAAiB,EAAE,OAAO,GAAG,UAAU,GAAG,MAAM,CAAC,CAAA;QAClE,UAAU,CAAC,EAAE,sBAAsB,CAAA;KACpC,CAAA;IACD,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI,KAAK,IAAI,CAAA;CACrD,CAAA;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,iBAAiB,2CAsKpD"}
@@ -4,7 +4,7 @@ import { useFieldContext } from './formContext';
4
4
  import { useId, useMemo } from 'react';
5
5
  export function Autocomplete(props) {
6
6
  const field = useFieldContext();
7
- const { slotProps, options, multiple = false, freeSolo = false, labelBehavior = 'auto', size, fullWidth, placeholder, onChange, ...rest } = props;
7
+ const { slotProps, options, multiple = false, freeSolo = false, labelBehavior = 'auto', size, fullWidth, placeholder, required, disabled, onChange, ...rest } = props;
8
8
  const id = useId();
9
9
  const errorText = useMemo(() => {
10
10
  if (field.state.meta.errors.length === 0)
@@ -68,7 +68,7 @@ export function Autocomplete(props) {
68
68
  return null;
69
69
  }
70
70
  };
71
- return (_jsxs(MuiFormControl, { error: Boolean(errorText), fullWidth: fullWidth, size: size, ...rest, children: [_jsx(MuiAutocomplete, { id: id, multiple: multiple, freeSolo: freeSolo, options: renderedOptions, getOptionLabel: option => {
71
+ return (_jsxs(MuiFormControl, { error: Boolean(errorText), fullWidth: fullWidth, size: size, ...rest, children: [_jsx(MuiAutocomplete, { id: id, multiple: multiple, freeSolo: freeSolo, disabled: disabled, options: renderedOptions, getOptionLabel: option => {
72
72
  if (typeof option === 'string')
73
73
  return option;
74
74
  return option.label;
@@ -99,7 +99,7 @@ export function Autocomplete(props) {
99
99
  if (!event.defaultPrevented) {
100
100
  field.handleChange(processedValue);
101
101
  }
102
- }, renderInput: params => (_jsx(MuiTextField, { ...params, label: props.label, placeholder: placeholder, error: Boolean(errorText), name: field.name, slotProps: {
102
+ }, renderInput: params => (_jsx(MuiTextField, { ...params, label: props.label, placeholder: placeholder, error: Boolean(errorText), required: required, name: field.name, slotProps: {
103
103
  ...textFieldProps.slotProps,
104
104
  input: {
105
105
  ...params.InputProps,
@@ -1 +1 @@
1
- {"version":3,"file":"Autocomplete.js","sourceRoot":"","sources":["../../src/lib/form/Autocomplete.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Autocomplete.js","sourceRoot":"","sources":["../../src/lib/form/Autocomplete.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import { IMaskInputProps } from 'react-imask';
2
+ export type MaskedInputProps = {
3
+ mask: IMaskInputProps<HTMLInputElement>['mask'];
4
+ value?: string;
5
+ onChange?: (value: string) => void;
6
+ };
7
+ export declare function MaskedInput(props: MaskedInputProps): import("react/jsx-runtime").JSX.Element;
8
+ //# sourceMappingURL=MaskedInput.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MaskedInput.d.ts","sourceRoot":"","sources":["../../src/lib/form/MaskedInput.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAc,eAAe,EAAE,MAAM,aAAa,CAAA;AAIzD,MAAM,MAAM,gBAAgB,GAAG;IAC7B,IAAI,EAAE,eAAe,CAAC,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAA;IAC/C,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;CACnC,CAAA;AA4BD,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,2CAclD"}
@@ -0,0 +1,17 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { IMaskInput } from 'react-imask';
3
+ import { Input as MuiInput } from '@mui/material';
4
+ import React from 'react';
5
+ const TextMaskCustom = React.forwardRef(function TextMaskCustom(props, ref) {
6
+ const { onChange, mask, ...other } = props;
7
+ return (_jsx(IMaskInput, { ...other, mask: mask, definitions: {
8
+ '#': /[1-9]/,
9
+ }, inputRef: ref, onAccept: (value) => onChange({ target: { name: props.name, value } }), overwrite: true }));
10
+ });
11
+ export function MaskedInput(props) {
12
+ const { mask, value, onChange } = props;
13
+ return (_jsx(MuiInput, { value: value, onChange: e => onChange?.(e.target.value), name: 'maskedInput', inputComponent: TextMaskCustom, inputProps: {
14
+ mask: mask,
15
+ } }));
16
+ }
17
+ //# sourceMappingURL=MaskedInput.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MaskedInput.js","sourceRoot":"","sources":["../../src/lib/form/MaskedInput.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAmB,MAAM,aAAa,CAAA;AACzD,OAAO,EAAE,KAAK,IAAI,QAAQ,EAAE,MAAM,eAAe,CAAA;AACjD,OAAO,KAAK,MAAM,OAAO,CAAA;AAazB,MAAM,cAAc,GAAG,KAAK,CAAC,UAAU,CAGrC,SAAS,cAAc,CAAC,KAAK,EAAE,GAAG;IAClC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,GAAG,KAAK,CAAA;IAC1C,OAAO,CACL,KAAC,UAAU,OACL,KAAK,EACT,IAAI,EAAE,IAAI,EACV,WAAW,EAAE;YACX,GAAG,EAAE,OAAO;SACb,EACD,QAAQ,EAAE,GAAG,EACb,QAAQ,EAAE,CAAC,KAAU,EAAE,EAAE,CACvB,QAAQ,CAAC,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,EAEnD,SAAS,SACT,CACH,CAAA;AACH,CAAC,CAAC,CAAA;AAEF,MAAM,UAAU,WAAW,CAAC,KAAuB;IACjD,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAA;IAEvC,OAAO,CACL,KAAC,QAAQ,IACP,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EACzC,IAAI,EAAC,aAAa,EAClB,cAAc,EAAE,cAAqB,EACrC,UAAU,EAAE;YACV,IAAI,EAAE,IAAI;SACX,GACD,CACH,CAAA;AACH,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { IMaskInputProps } from 'react-imask';
2
+ import { TextFieldProps } from './TextField';
3
+ export type MaskedTextFieldProps = Omit<TextFieldProps, 'slotProps'> & {
4
+ mask: IMaskInputProps<HTMLInputElement>['mask'];
5
+ slotProps?: Omit<TextFieldProps['slotProps'], 'input'> & {
6
+ input?: Omit<TextFieldProps['slotProps'], 'input'>;
7
+ };
8
+ };
9
+ export declare function MaskedTextField(props: MaskedTextFieldProps): import("react/jsx-runtime").JSX.Element;
10
+ //# sourceMappingURL=MaskedTextField.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MaskedTextField.d.ts","sourceRoot":"","sources":["../../src/lib/form/MaskedTextField.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAC7C,OAAO,EAAa,cAAc,EAAE,MAAM,aAAa,CAAA;AAGvD,MAAM,MAAM,oBAAoB,GAAG,IAAI,CAAC,cAAc,EAAE,WAAW,CAAC,GAAG;IACrE,IAAI,EAAE,eAAe,CAAC,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAA;IAC/C,SAAS,CAAC,EAAE,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC,GAAG;QACvD,KAAK,CAAC,EAAE,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC,CAAA;KACnD,CAAA;CACF,CAAA;AAmBD,wBAAgB,eAAe,CAAC,KAAK,EAAE,oBAAoB,2CAkB1D"}
@@ -0,0 +1,22 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import React from 'react';
3
+ import { TextField } from './TextField';
4
+ import { IMaskInput } from 'react-imask';
5
+ const MaskedInputAdapter = React.forwardRef(function MaskedInputAdapter(props, ref) {
6
+ const { onChange, mask, ...other } = props;
7
+ return (_jsx(IMaskInput, { ...other, mask: mask, inputRef: ref, onAccept: (value) => onChange({ target: { name: props.name, value } }), overwrite: true }));
8
+ });
9
+ export function MaskedTextField(props) {
10
+ const { mask, slotProps, ...rest } = props;
11
+ return (_jsx(TextField, { ...rest, slotProps: {
12
+ ...slotProps,
13
+ input: {
14
+ inputComponent: MaskedInputAdapter,
15
+ inputProps: {
16
+ mask: mask,
17
+ },
18
+ ...slotProps?.input,
19
+ },
20
+ } }));
21
+ }
22
+ //# sourceMappingURL=MaskedTextField.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MaskedTextField.js","sourceRoot":"","sources":["../../src/lib/form/MaskedTextField.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,EAAE,SAAS,EAAkB,MAAM,aAAa,CAAA;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AASxC,MAAM,kBAAkB,GAAG,KAAK,CAAC,UAAU,CACzC,SAAS,kBAAkB,CAAC,KAAK,EAAE,GAAG;IACpC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,GAAG,KAAK,CAAA;IAC1C,OAAO,CACL,KAAC,UAAU,OACL,KAAK,EACT,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,GAAG,EACb,QAAQ,EAAE,CAAC,KAAU,EAAE,EAAE,CACvB,QAAQ,CAAC,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,EAEnD,SAAS,SACT,CACH,CAAA;AACH,CAAC,CACF,CAAA;AAED,MAAM,UAAU,eAAe,CAAC,KAA2B;IACzD,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAA;IAE1C,OAAO,CACL,KAAC,SAAS,OACJ,IAAI,EACR,SAAS,EAAE;YACT,GAAG,SAAS;YACZ,KAAK,EAAE;gBACL,cAAc,EAAE,kBAAyB;gBACzC,UAAU,EAAE;oBACV,IAAI,EAAE,IAAI;iBACX;gBACD,GAAG,SAAS,EAAE,KAAK;aACpB;SACF,GACD,CACH,CAAA;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"SubscribeAutocomplete.d.ts","sourceRoot":"","sources":["../../src/lib/form/SubscribeAutocomplete.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAgB,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAGhE,MAAM,MAAM,0BAA0B,GAAG,iBAAiB,CAAA;AAE1D,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,0BAA0B,2CAYtE"}
1
+ {"version":3,"file":"SubscribeAutocomplete.d.ts","sourceRoot":"","sources":["../../src/lib/form/SubscribeAutocomplete.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAgB,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAGhE,MAAM,MAAM,0BAA0B,GAAG,iBAAiB,CAAA;AAE1D,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,0BAA0B,2CAgBtE"}
@@ -3,7 +3,7 @@ import { Autocomplete } from './Autocomplete';
3
3
  import { useFormContext } from './formContext';
4
4
  export function SubscribeAutocomplete(props) {
5
5
  const form = useFormContext();
6
- const { disabled, ...rest } = props;
7
- return (_jsx(form.Subscribe, { selector: state => state.isSubmitting, children: isSubmitting => (_jsx(Autocomplete, { disabled: isSubmitting || disabled, ...rest })) }));
6
+ const { disabled, required, ...rest } = props;
7
+ return (_jsx(form.Subscribe, { selector: state => state.isSubmitting, children: isSubmitting => (_jsx(Autocomplete, { disabled: isSubmitting || disabled, required: required, ...rest })) }));
8
8
  }
9
9
  //# sourceMappingURL=SubscribeAutocomplete.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SubscribeAutocomplete.js","sourceRoot":"","sources":["../../src/lib/form/SubscribeAutocomplete.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAqB,MAAM,gBAAgB,CAAA;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAI9C,MAAM,UAAU,qBAAqB,CAAC,KAAiC;IACrE,MAAM,IAAI,GAAG,cAAc,EAAE,CAAA;IAE7B,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAA;IAEnC,OAAO,CACL,KAAC,IAAI,CAAC,SAAS,IAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,YAAY,YAClD,YAAY,CAAC,EAAE,CAAC,CACf,KAAC,YAAY,IAAC,QAAQ,EAAE,YAAY,IAAI,QAAQ,KAAM,IAAI,GAAI,CAC/D,GACc,CAClB,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"SubscribeAutocomplete.js","sourceRoot":"","sources":["../../src/lib/form/SubscribeAutocomplete.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAqB,MAAM,gBAAgB,CAAA;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAI9C,MAAM,UAAU,qBAAqB,CAAC,KAAiC;IACrE,MAAM,IAAI,GAAG,cAAc,EAAE,CAAA;IAE7B,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAA;IAE7C,OAAO,CACL,KAAC,IAAI,CAAC,SAAS,IAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,YAAY,YAClD,YAAY,CAAC,EAAE,CAAC,CACf,KAAC,YAAY,IACX,QAAQ,EAAE,YAAY,IAAI,QAAQ,EAClC,QAAQ,EAAE,QAAQ,KACd,IAAI,GACR,CACH,GACc,CAClB,CAAA;AACH,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { MaskedTextFieldProps } from './MaskedTextField';
2
+ export type SubscribeMaskedTextFieldProps = MaskedTextFieldProps;
3
+ export declare function SubscribeMaskedTextField(props: SubscribeMaskedTextFieldProps): import("react/jsx-runtime").JSX.Element;
4
+ //# sourceMappingURL=SubscribeMaskedTextField.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SubscribeMaskedTextField.d.ts","sourceRoot":"","sources":["../../src/lib/form/SubscribeMaskedTextField.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAmB,oBAAoB,EAAE,MAAM,mBAAmB,CAAA;AAGzE,MAAM,MAAM,6BAA6B,GAAG,oBAAoB,CAAA;AAEhE,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,6BAA6B,2CAY5E"}
@@ -0,0 +1,9 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { MaskedTextField } from './MaskedTextField';
3
+ import { useFormContext } from './formContext';
4
+ export function SubscribeMaskedTextField(props) {
5
+ const form = useFormContext();
6
+ const { disabled, ...rest } = props;
7
+ return (_jsx(form.Subscribe, { selector: state => state.isSubmitting, children: isSubmitting => (_jsx(MaskedTextField, { disabled: isSubmitting || disabled, ...rest })) }));
8
+ }
9
+ //# sourceMappingURL=SubscribeMaskedTextField.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SubscribeMaskedTextField.js","sourceRoot":"","sources":["../../src/lib/form/SubscribeMaskedTextField.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,eAAe,EAAwB,MAAM,mBAAmB,CAAA;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAI9C,MAAM,UAAU,wBAAwB,CAAC,KAAoC;IAC3E,MAAM,IAAI,GAAG,cAAc,EAAE,CAAA;IAE7B,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAA;IAEnC,OAAO,CACL,KAAC,IAAI,CAAC,SAAS,IAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,YAAY,YAClD,YAAY,CAAC,EAAE,CAAC,CACf,KAAC,eAAe,IAAC,QAAQ,EAAE,YAAY,IAAI,QAAQ,KAAM,IAAI,GAAI,CAClE,GACc,CAClB,CAAA;AACH,CAAC"}
@@ -15,6 +15,8 @@ import { SubscribeDatePicker } from './SubscribeDatePicker';
15
15
  import { SubscribeTimePicker } from './SubscribeTimePicker';
16
16
  import { RadioGroup } from './RadioGroup';
17
17
  import { SubscribeRadioGroup } from './SubscribeRadioGroup';
18
+ import { MaskedTextField } from './MaskedTextField';
19
+ import { SubscribeMaskedTextField } from './SubscribeMaskedTextField';
18
20
  export declare const useAppForm: <TFormData, TOnMount extends import("@tanstack/form-core").FormValidateOrFn<TFormData> | undefined, TOnChange extends import("@tanstack/form-core").FormValidateOrFn<TFormData> | undefined, TOnChangeAsync extends import("@tanstack/form-core").FormAsyncValidateOrFn<TFormData> | undefined, TOnBlur extends import("@tanstack/form-core").FormValidateOrFn<TFormData> | undefined, TOnBlurAsync extends import("@tanstack/form-core").FormAsyncValidateOrFn<TFormData> | undefined, TOnSubmit extends import("@tanstack/form-core").FormValidateOrFn<TFormData> | undefined, TOnSubmitAsync extends import("@tanstack/form-core").FormAsyncValidateOrFn<TFormData> | undefined, TOnServer extends import("@tanstack/form-core").FormAsyncValidateOrFn<TFormData> | undefined, TSubmitMeta>(props: import("@tanstack/form-core").FormOptions<TFormData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TOnServer, TSubmitMeta>) => import("@tanstack/form-core").FormApi<TFormData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TOnServer, TSubmitMeta> & import("@tanstack/react-form").ReactFormApi<TFormData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TOnServer, TSubmitMeta> & NoInfer<{
19
21
  readonly SubscribeButton: typeof SubscribeButton;
20
22
  }> & {
@@ -23,12 +25,14 @@ export declare const useAppForm: <TFormData, TOnMount extends import("@tanstack/
23
25
  readonly TextField: typeof TextField;
24
26
  readonly Checkbox: typeof Checkbox;
25
27
  readonly Select: typeof Select;
28
+ readonly MaskedTextField: typeof MaskedTextField;
26
29
  readonly MultiSelect: typeof MultiSelect;
27
30
  readonly RadioGroup: typeof RadioGroup;
28
31
  readonly DatePicker: typeof DatePicker;
29
32
  readonly TimePicker: typeof TimePicker;
30
33
  readonly SubscribeAutocomplete: typeof SubscribeAutocomplete;
31
34
  readonly SubscribeTextField: typeof SubscribeTextField;
35
+ readonly SubscribeMaskedTextField: typeof SubscribeMaskedTextField;
32
36
  readonly SubscribeSelect: typeof SubscribeSelect;
33
37
  readonly SubscribeMultiSelect: typeof SubscribeMultiSelect;
34
38
  readonly SubscribeCheckbox: typeof SubscribeCheckbox;
@@ -42,12 +46,14 @@ export declare const useAppForm: <TFormData, TOnMount extends import("@tanstack/
42
46
  readonly TextField: typeof TextField;
43
47
  readonly Checkbox: typeof Checkbox;
44
48
  readonly Select: typeof Select;
49
+ readonly MaskedTextField: typeof MaskedTextField;
45
50
  readonly MultiSelect: typeof MultiSelect;
46
51
  readonly RadioGroup: typeof RadioGroup;
47
52
  readonly DatePicker: typeof DatePicker;
48
53
  readonly TimePicker: typeof TimePicker;
49
54
  readonly SubscribeAutocomplete: typeof SubscribeAutocomplete;
50
55
  readonly SubscribeTextField: typeof SubscribeTextField;
56
+ readonly SubscribeMaskedTextField: typeof SubscribeMaskedTextField;
51
57
  readonly SubscribeSelect: typeof SubscribeSelect;
52
58
  readonly SubscribeMultiSelect: typeof SubscribeMultiSelect;
53
59
  readonly SubscribeCheckbox: typeof SubscribeCheckbox;
@@ -65,12 +71,14 @@ export declare const useAppForm: <TFormData, TOnMount extends import("@tanstack/
65
71
  readonly TextField: typeof TextField;
66
72
  readonly Checkbox: typeof Checkbox;
67
73
  readonly Select: typeof Select;
74
+ readonly MaskedTextField: typeof MaskedTextField;
68
75
  readonly MultiSelect: typeof MultiSelect;
69
76
  readonly RadioGroup: typeof RadioGroup;
70
77
  readonly DatePicker: typeof DatePicker;
71
78
  readonly TimePicker: typeof TimePicker;
72
79
  readonly SubscribeAutocomplete: typeof SubscribeAutocomplete;
73
80
  readonly SubscribeTextField: typeof SubscribeTextField;
81
+ readonly SubscribeMaskedTextField: typeof SubscribeMaskedTextField;
74
82
  readonly SubscribeSelect: typeof SubscribeSelect;
75
83
  readonly SubscribeMultiSelect: typeof SubscribeMultiSelect;
76
84
  readonly SubscribeCheckbox: typeof SubscribeCheckbox;
@@ -1 +1 @@
1
- {"version":3,"file":"formHooks.d.ts","sourceRoot":"","sources":["../../src/lib/form/formHooks.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAEzC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAE3D,eAAO,MAAQ,UAAU;;;;;;;;;;;;;;;;;;;;;;GAAE,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kCAsBjC,CAAA"}
1
+ {"version":3,"file":"formHooks.d.ts","sourceRoot":"","sources":["../../src/lib/form/formHooks.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAEzC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAA;AAErE,eAAO,MAAQ,UAAU;;;;;;;;;;;;;;;;;;;;;;;;GAAE,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kCAwBjC,CAAA"}
@@ -17,6 +17,8 @@ import { SubscribeDatePicker } from './SubscribeDatePicker';
17
17
  import { SubscribeTimePicker } from './SubscribeTimePicker';
18
18
  import { RadioGroup } from './RadioGroup';
19
19
  import { SubscribeRadioGroup } from './SubscribeRadioGroup';
20
+ import { MaskedTextField } from './MaskedTextField';
21
+ import { SubscribeMaskedTextField } from './SubscribeMaskedTextField';
20
22
  export const { useAppForm, withForm } = createFormHook({
21
23
  fieldContext,
22
24
  formContext,
@@ -25,12 +27,14 @@ export const { useAppForm, withForm } = createFormHook({
25
27
  TextField,
26
28
  Checkbox,
27
29
  Select,
30
+ MaskedTextField,
28
31
  MultiSelect,
29
32
  RadioGroup,
30
33
  DatePicker,
31
34
  TimePicker,
32
35
  SubscribeAutocomplete,
33
36
  SubscribeTextField,
37
+ SubscribeMaskedTextField,
34
38
  SubscribeSelect,
35
39
  SubscribeMultiSelect,
36
40
  SubscribeCheckbox,
@@ -1 +1 @@
1
- {"version":3,"file":"formHooks.js","sourceRoot":"","sources":["../../src/lib/form/formHooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAE3D,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,cAAc,CAAC;IACrD,YAAY;IACZ,WAAW;IACX,eAAe,EAAE;QACf,YAAY;QACZ,SAAS;QACT,QAAQ;QACR,MAAM;QACN,WAAW;QACX,UAAU;QACV,UAAU;QACV,UAAU;QACV,qBAAqB;QACrB,kBAAkB;QAClB,eAAe;QACf,oBAAoB;QACpB,iBAAiB;QACjB,mBAAmB;QACnB,mBAAmB;QACnB,mBAAmB;KACpB;IACD,cAAc,EAAE,EAAE,eAAe,EAAE;CACpC,CAAC,CAAA"}
1
+ {"version":3,"file":"formHooks.js","sourceRoot":"","sources":["../../src/lib/form/formHooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAA;AAErE,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,cAAc,CAAC;IACrD,YAAY;IACZ,WAAW;IACX,eAAe,EAAE;QACf,YAAY;QACZ,SAAS;QACT,QAAQ;QACR,MAAM;QACN,eAAe;QACf,WAAW;QACX,UAAU;QACV,UAAU;QACV,UAAU;QACV,qBAAqB;QACrB,kBAAkB;QAClB,wBAAwB;QACxB,eAAe;QACf,oBAAoB;QACpB,iBAAiB;QACjB,mBAAmB;QACnB,mBAAmB;QACnB,mBAAmB;KACpB;IACD,cAAc,EAAE,EAAE,eAAe,EAAE;CACpC,CAAC,CAAA"}
@@ -15,4 +15,7 @@ export { type SubscribeRadioGroupProps } from './SubscribeRadioGroup';
15
15
  export { type SubscribeSelectProps } from './SubscribeSelect';
16
16
  export { type SubscribeTextFieldProps } from './SubscribeTextField';
17
17
  export { type SubscribeTimePickerProps } from './SubscribeTimePicker';
18
+ export { MaskedInput, type MaskedInputProps } from './MaskedInput';
19
+ export { MaskedTextField, type MaskedTextFieldProps } from './MaskedTextField';
20
+ export { SubscribeMaskedTextField, type SubscribeMaskedTextFieldProps, } from './SubscribeMaskedTextField';
18
21
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lib/form/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAClD,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AACvD,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,YAAY,CAAA;AAC/C,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,cAAc,CAAA;AACnD,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAA;AACrD,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,cAAc,CAAA;AACnD,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,UAAU,CAAA;AAC3C,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,aAAa,CAAA;AACjD,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,cAAc,CAAA;AACnD,OAAO,EAAE,KAAK,0BAA0B,EAAE,MAAM,yBAAyB,CAAA;AACzE,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,qBAAqB,CAAA;AACjE,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,uBAAuB,CAAA;AACrE,OAAO,EAAE,KAAK,yBAAyB,EAAE,MAAM,wBAAwB,CAAA;AACvE,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,uBAAuB,CAAA;AACrE,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,mBAAmB,CAAA;AAC7D,OAAO,EAAE,KAAK,uBAAuB,EAAE,MAAM,sBAAsB,CAAA;AACnE,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,uBAAuB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lib/form/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAClD,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AACvD,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,YAAY,CAAA;AAC/C,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,cAAc,CAAA;AACnD,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAA;AACrD,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,cAAc,CAAA;AACnD,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,UAAU,CAAA;AAC3C,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,aAAa,CAAA;AACjD,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,cAAc,CAAA;AACnD,OAAO,EAAE,KAAK,0BAA0B,EAAE,MAAM,yBAAyB,CAAA;AACzE,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,qBAAqB,CAAA;AACjE,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,uBAAuB,CAAA;AACrE,OAAO,EAAE,KAAK,yBAAyB,EAAE,MAAM,wBAAwB,CAAA;AACvE,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,uBAAuB,CAAA;AACrE,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,mBAAmB,CAAA;AAC7D,OAAO,EAAE,KAAK,uBAAuB,EAAE,MAAM,sBAAsB,CAAA;AACnE,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,uBAAuB,CAAA;AACrE,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAClE,OAAO,EAAE,eAAe,EAAE,KAAK,oBAAoB,EAAE,MAAM,mBAAmB,CAAA;AAC9E,OAAO,EACL,wBAAwB,EACxB,KAAK,6BAA6B,GACnC,MAAM,4BAA4B,CAAA"}
@@ -1,2 +1,5 @@
1
1
  export { useAppForm, withForm } from './formHooks';
2
+ export { MaskedInput } from './MaskedInput';
3
+ export { MaskedTextField } from './MaskedTextField';
4
+ export { SubscribeMaskedTextField, } from './SubscribeMaskedTextField';
2
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/lib/form/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/lib/form/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAiBlD,OAAO,EAAE,WAAW,EAAyB,MAAM,eAAe,CAAA;AAClE,OAAO,EAAE,eAAe,EAA6B,MAAM,mBAAmB,CAAA;AAC9E,OAAO,EACL,wBAAwB,GAEzB,MAAM,4BAA4B,CAAA"}
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  export { DialogsProvider, DialogCloseButton, useDialogs, type DialogProps, type DialogResult, } from './dialogs';
2
- export { useAppForm, withForm, type CheckboxProps, type DatePickerProps, type MultiSelectProps, type SelectProps, type TextFieldProps, type TimePickerProps, type SubscribeCheckboxProps, type SubscribeDatePickerProps, type SubscribeMultiSelectProps, type SubscribeSelectProps, type SubscribeTextFieldProps, type SubscribeTimePickerProps, } from './form';
2
+ export { useAppForm, withForm, type CheckboxProps, type DatePickerProps, type MultiSelectProps, type SelectProps, type TextFieldProps, type TimePickerProps, type SubscribeCheckboxProps, type SubscribeDatePickerProps, type SubscribeMultiSelectProps, type SubscribeSelectProps, type SubscribeTextFieldProps, type SubscribeTimePickerProps, MaskedInput, type MaskedInputProps, MaskedTextField, type MaskedTextFieldProps, SubscribeMaskedTextField, type SubscribeMaskedTextFieldProps, } from './form';
3
3
  export { RouterTab, TabLabel, useRouterTabsValue } from './tabs';
4
4
  export { useMaterialRouterTable, tableSearchSchema } from './table';
5
5
  export { useConfirmDialog, useConfirmDeleteDialog } from './common-dialogs';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,UAAU,EACV,KAAK,WAAW,EAChB,KAAK,YAAY,GAClB,MAAM,WAAW,CAAA;AAClB,OAAO,EACL,UAAU,EACV,QAAQ,EACR,KAAK,aAAa,EAClB,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,WAAW,EAChB,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,sBAAsB,EAC3B,KAAK,wBAAwB,EAC7B,KAAK,yBAAyB,EAC9B,KAAK,oBAAoB,EACzB,KAAK,uBAAuB,EAC5B,KAAK,wBAAwB,GAC9B,MAAM,QAAQ,CAAA;AACf,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAA;AAChE,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AACnE,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,UAAU,EACV,KAAK,WAAW,EAChB,KAAK,YAAY,GAClB,MAAM,WAAW,CAAA;AAClB,OAAO,EACL,UAAU,EACV,QAAQ,EACR,KAAK,aAAa,EAClB,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,WAAW,EAChB,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,sBAAsB,EAC3B,KAAK,wBAAwB,EAC7B,KAAK,yBAAyB,EAC9B,KAAK,oBAAoB,EACzB,KAAK,uBAAuB,EAC5B,KAAK,wBAAwB,EAC7B,WAAW,EACX,KAAK,gBAAgB,EACrB,eAAe,EACf,KAAK,oBAAoB,EACzB,wBAAwB,EACxB,KAAK,6BAA6B,GACnC,MAAM,QAAQ,CAAA;AACf,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAA;AAChE,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AACnE,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAA"}
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  export { DialogsProvider, DialogCloseButton, useDialogs, } from './dialogs';
2
- export { useAppForm, withForm, } from './form';
2
+ export { useAppForm, withForm, MaskedInput, MaskedTextField, SubscribeMaskedTextField, } from './form';
3
3
  export { RouterTab, TabLabel, useRouterTabsValue } from './tabs';
4
4
  export { useMaterialRouterTable, tableSearchSchema } from './table';
5
5
  export { useConfirmDialog, useConfirmDeleteDialog } from './common-dialogs';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,UAAU,GAGX,MAAM,WAAW,CAAA;AAClB,OAAO,EACL,UAAU,EACV,QAAQ,GAaT,MAAM,QAAQ,CAAA;AACf,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAA;AAChE,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AACnE,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,UAAU,GAGX,MAAM,WAAW,CAAA;AAClB,OAAO,EACL,UAAU,EACV,QAAQ,EAaR,WAAW,EAEX,eAAe,EAEf,wBAAwB,GAEzB,MAAM,QAAQ,CAAA;AACf,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAA;AAChE,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AACnE,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAA"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@cwncollab-org/mui-component-kit",
3
3
  "private": false,
4
- "version": "0.2.3",
4
+ "version": "0.3.0",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
7
7
  "module": "./dist/index.js",
@@ -43,7 +43,8 @@
43
43
  "@tanstack/react-router": "^1.116.0",
44
44
  "@tanstack/react-table": "^8.21.3",
45
45
  "dayjs": "^1.11.13",
46
- "material-react-table": "^3.2.1"
46
+ "material-react-table": "^3.2.1",
47
+ "react-imask": "^7.6.1"
47
48
  },
48
49
  "devDependencies": {
49
50
  "@eslint/js": "^9.22.0",