tp-react-elements-dev 1.12.21 → 1.12.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.
- package/dist/components/DeleteComponent/DeleteField.js +24 -0
- package/dist/components/Form/Form.styles.js +111 -0
- package/dist/components/Form/FormActiveSwitch.js +27 -0
- package/dist/components/Form/FormConstants.d.ts +1 -1
- package/dist/components/Form/FormConstants.d.ts.map +1 -1
- package/dist/components/Form/FormConstants.js +336 -0
- package/dist/components/Form/FormRender.d.ts +1 -1
- package/dist/components/Form/FormRender.d.ts.map +1 -1
- package/dist/components/Form/FormRender.js +96 -0
- package/dist/components/Form/FormRenderWrapper.d.ts +1 -1
- package/dist/components/Form/FormRenderWrapper.d.ts.map +1 -1
- package/dist/components/Form/FormRenderWrapper.js +13 -0
- package/dist/components/FormComponents/DatePicker/DateRangePicker.d.ts +1 -1
- package/dist/components/FormComponents/DatePicker/DateRangePicker.d.ts.map +1 -1
- package/dist/components/FormComponents/DatePicker/DatepickerWrapperV2.d.ts +1 -1
- package/dist/components/FormComponents/DatePicker/DatepickerWrapperV2.d.ts.map +1 -1
- package/dist/components/FormComponents/DatePicker/DatepickerWrapperV2.js +58 -0
- package/dist/components/FormComponents/DatePicker/MonthPicker.js +48 -0
- package/dist/components/FormComponents/DatePicker/Monthpickerrender.d.ts +1 -1
- package/dist/components/FormComponents/DatePicker/Monthpickerrender.d.ts.map +1 -1
- package/dist/components/FormComponents/DatePicker/Monthpickerrender.js +61 -0
- package/dist/components/FormComponents/FileUpload/FormRenderFileUpload.d.ts +1 -1
- package/dist/components/FormComponents/FileUpload/FormRenderFileUpload.d.ts.map +1 -1
- package/dist/components/FormComponents/FileUpload/FormRenderFileUpload.js +86 -0
- package/dist/components/FormComponents/FileUpload/FormRenderMultiFileUpload.d.ts +1 -1
- package/dist/components/FormComponents/FileUpload/FormRenderMultiFileUpload.d.ts.map +1 -1
- package/dist/components/FormComponents/FileUpload/FormRenderMultiFileUpload.js +96 -0
- package/dist/components/FormComponents/FormBottomField/FormBottomField.d.ts +1 -1
- package/dist/components/FormComponents/FormBottomField/FormBottomField.d.ts.map +1 -1
- package/dist/components/FormComponents/FormBottomField/FormBottomField.js +9 -0
- package/dist/components/FormComponents/FormCheckBox/FormCheckBox.d.ts +1 -1
- package/dist/components/FormComponents/FormCheckBox/FormCheckBox.d.ts.map +1 -1
- package/dist/components/FormComponents/FormCheckBox/FormCheckBox.js +10 -0
- package/dist/components/FormComponents/FormCheckBoxGroup/FormCheckBoxGroup.d.ts +1 -1
- package/dist/components/FormComponents/FormCheckBoxGroup/FormCheckBoxGroup.d.ts.map +1 -1
- package/dist/components/FormComponents/FormCheckBoxGroup/FormCheckBoxGroup.js +23 -0
- package/dist/components/FormComponents/FormErrorField/FormErrorField.d.ts +1 -1
- package/dist/components/FormComponents/FormErrorField/FormErrorField.d.ts.map +1 -1
- package/dist/components/FormComponents/FormErrorField/FormErrorField.js +9 -0
- package/dist/components/FormComponents/FormNumberField/FormNumberField.d.ts +1 -1
- package/dist/components/FormComponents/FormNumberField/FormNumberField.d.ts.map +1 -1
- package/dist/components/FormComponents/FormNumberField/FormNumberField.js +49 -0
- package/dist/components/FormComponents/FormNumberField/FormNumberFieldDecimal.d.ts +1 -1
- package/dist/components/FormComponents/FormNumberField/FormNumberFieldDecimal.d.ts.map +1 -1
- package/dist/components/FormComponents/FormNumberField/FormNumberFieldDecimal.js +45 -0
- package/dist/components/FormComponents/FormRadioGroup/FormRadioGroup.d.ts +1 -1
- package/dist/components/FormComponents/FormRadioGroup/FormRadioGroup.d.ts.map +1 -1
- package/dist/components/FormComponents/FormRadioGroup/FormRadioGroup.js +26 -0
- package/dist/components/FormComponents/FormTextAreaField/FormTextAreaField.d.ts +1 -1
- package/dist/components/FormComponents/FormTextAreaField/FormTextAreaField.d.ts.map +1 -1
- package/dist/components/FormComponents/FormTextAreaField/FormTextAreaField.js +31 -0
- package/dist/components/FormComponents/FormTextAreaField/FormTextAreaField.styles.js +35 -0
- package/dist/components/FormComponents/FormTextField/FormTextField.d.ts +1 -1
- package/dist/components/FormComponents/FormTextField/FormTextField.d.ts.map +1 -1
- package/dist/components/FormComponents/FormTextField/FormTextField.js +46 -0
- package/dist/components/FormComponents/FormTextField/FormTextField.styles.js +22 -0
- package/dist/components/FormComponents/HelperText/HelperText.d.ts +1 -1
- package/dist/components/FormComponents/HelperText/HelperText.d.ts.map +1 -1
- package/dist/components/FormComponents/HelperText/HelperText.js +10 -0
- package/dist/components/FormComponents/PasswordField/PasswordField.d.ts +1 -1
- package/dist/components/FormComponents/PasswordField/PasswordField.d.ts.map +1 -1
- package/dist/components/FormComponents/PasswordField/PasswordField.js +49 -0
- package/dist/components/FormComponents/RichTextEditor/RichTextEditor.d.ts +1 -1
- package/dist/components/FormComponents/RichTextEditor/RichTextEditor.d.ts.map +1 -1
- package/dist/components/FormComponents/RichTextEditor/RichTextEditor.js +95 -0
- package/dist/components/FormComponents/RichTextEditor/RichTextEditorWrapper.d.ts +1 -1
- package/dist/components/FormComponents/RichTextEditor/RichTextEditorWrapper.d.ts.map +1 -1
- package/dist/components/FormComponents/RichTextEditor/RichTextEditorWrapper.js +11 -0
- package/dist/components/FormComponents/RichTextEditor/jodit.index.js +27 -0
- package/dist/components/FormComponents/Select/MultiSelectv1.d.ts +1 -1
- package/dist/components/FormComponents/Select/MultiSelectv1.d.ts.map +1 -1
- package/dist/components/FormComponents/Select/MultiSelectv1.js +157 -0
- package/dist/components/FormComponents/Select/SingleSelect.d.ts +1 -1
- package/dist/components/FormComponents/Select/SingleSelect.d.ts.map +1 -1
- package/dist/components/FormComponents/Select/SingleSelect.js +51 -0
- package/dist/components/FormComponents/Select/SingleSelectNonAutoComplete.d.ts +1 -1
- package/dist/components/FormComponents/Select/SingleSelectNonAutoComplete.d.ts.map +1 -1
- package/dist/components/FormComponents/Select/SingleSelectNonAutoComplete.js +27 -0
- package/dist/components/FormComponents/Select/SingleSelectSearchApi.js +204 -0
- package/dist/components/FormComponents/TimePicker/TimePicker.d.ts +1 -1
- package/dist/components/FormComponents/TimePicker/TimePicker.d.ts.map +1 -1
- package/dist/components/FormComponents/TimePicker/TimePicker.js +55 -0
- package/dist/components/FormComponents/YearPickerField/YearPickerField.js +82 -0
- package/dist/components/FormComponents/index.js +26 -0
- package/dist/components/Global.styles.js +79 -0
- package/dist/components/ModalField/ConfirmationDialog.js +48 -0
- package/dist/components/ModalField/ModalField.js +32 -0
- package/dist/components/SelectField/MultiSelectFieldComponent.js +129 -0
- package/dist/components/SessionTimeOut/SessionTimeOut.js +63 -0
- package/dist/index.d.ts +3 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +16 -2648
- package/dist/lib/Constants/FormConstants.d.ts.map +1 -0
- package/dist/lib/Constants/FormConstants.js +54 -0
- package/dist/lib/Constants/FunctionConstants.d.ts.map +1 -0
- package/dist/lib/Constants/FunctionConstants.js +244 -0
- package/dist/lib/Interface/FormInterface.d.ts.map +1 -0
- package/dist/lib/index.d.ts +3 -2
- package/dist/lib/index.d.ts.map +1 -1
- package/dist/lib/index.js +4 -0
- package/dist/theme/index.js +64 -0
- package/dist/validation/schemas.js +60 -0
- package/package.json +8 -6
- package/dist/Utilities/Constants/FormConstants.d.ts.map +0 -1
- package/dist/Utilities/Constants/FunctionConstants.d.ts.map +0 -1
- package/dist/Utilities/Interface/FormInterface.d.ts.map +0 -1
- package/dist/Utilities/index.d.ts +0 -4
- package/dist/Utilities/index.d.ts.map +0 -1
- package/dist/index.esm.css +0 -1
- package/dist/index.esm.js +0 -2607
- package/dist/lib/cache-buster.d.ts +0 -2
- package/dist/lib/cache-buster.d.ts.map +0 -1
- package/dist/lib/constants.d.ts +0 -2
- package/dist/lib/constants.d.ts.map +0 -1
- package/dist/lib/hook-form.d.ts +0 -4
- package/dist/lib/hook-form.d.ts.map +0 -1
- /package/dist/{Utilities → lib}/Constants/FormConstants.d.ts +0 -0
- /package/dist/{Utilities → lib}/Constants/FunctionConstants.d.ts +0 -0
- /package/dist/{Utilities → lib}/Interface/FormInterface.d.ts +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateRangePicker.d.ts","sourceRoot":"","sources":["../../../../src/components/FormComponents/DatePicker/DateRangePicker.tsx"],"names":[],"mappings":"AA0IA,OAAO,EACL,eAAe,EACf,YAAY,EACb,MAAM,
|
|
1
|
+
{"version":3,"file":"DateRangePicker.d.ts","sourceRoot":"","sources":["../../../../src/components/FormComponents/DatePicker/DateRangePicker.tsx"],"names":[],"mappings":"AA0IA,OAAO,EACL,eAAe,EACf,YAAY,EACb,MAAM,sCAAsC,CAAC;AAE9C,QAAA,MAAM,wBAAwB,GAAI,uCAG/B;IACD,KAAK,EAAE,eAAe,CAAC;IACvB,OAAO,EAAE,YAAY,CAAC;CACvB,4CAEA,CAAC;AAEF,eAAe,wBAAwB,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { FormRenderProps, VariantProps } from "../../../
|
|
1
|
+
import { FormRenderProps, VariantProps } from "../../../lib/Interface/FormInterface";
|
|
2
2
|
declare const DatepickerWrapperV2: ({ props, variant, }: {
|
|
3
3
|
props: FormRenderProps;
|
|
4
4
|
variant: VariantProps;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatepickerWrapperV2.d.ts","sourceRoot":"","sources":["../../../../src/components/FormComponents/DatePicker/DatepickerWrapperV2.tsx"],"names":[],"mappings":"AAMA,OAAO,EACL,eAAe,EACf,YAAY,EACb,MAAM,
|
|
1
|
+
{"version":3,"file":"DatepickerWrapperV2.d.ts","sourceRoot":"","sources":["../../../../src/components/FormComponents/DatePicker/DatepickerWrapperV2.tsx"],"names":[],"mappings":"AAMA,OAAO,EACL,eAAe,EACf,YAAY,EACb,MAAM,sCAAsC,CAAC;AAG9C,QAAA,MAAM,mBAAmB,GAAI,qBAG1B;IACD,KAAK,EAAE,eAAe,CAAC;IACvB,OAAO,EAAE,YAAY,CAAC;CACvB,4CAmFA,CAAC;AAEF,eAAe,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
2
|
+
import { LocalizationProvider, DatePicker } from '@mui/x-date-pickers';
|
|
3
|
+
import { AdapterDayjs } from '@mui/x-date-pickers/AdapterDayjs';
|
|
4
|
+
import dayjs from 'dayjs';
|
|
5
|
+
import { useRef, useState } from 'react';
|
|
6
|
+
import { Controller } from 'react-hook-form';
|
|
7
|
+
import { renderLabel } from '../../../lib/Constants/FormConstants.js';
|
|
8
|
+
import FormBottomField from '../FormBottomField/FormBottomField.js';
|
|
9
|
+
|
|
10
|
+
const DatepickerWrapperV2 = ({ props, variant, }) => {
|
|
11
|
+
const inputTextRef = useRef(null);
|
|
12
|
+
const [open, setOpen] = useState(false);
|
|
13
|
+
const handleToggle = () => {
|
|
14
|
+
if (!open) {
|
|
15
|
+
inputTextRef.current?.blur();
|
|
16
|
+
}
|
|
17
|
+
setOpen(!open);
|
|
18
|
+
};
|
|
19
|
+
const isError = !!props.errors?.[props.item.name];
|
|
20
|
+
const isShowBorderError = isError && props.fieldError;
|
|
21
|
+
return (jsx(Controller, { control: props.control, name: props.item.name, render: ({ field }) => (jsxs(Fragment, { children: [jsxs(LocalizationProvider, { dateAdapter: AdapterDayjs, children: [renderLabel(variant, props), jsx(DatePicker, { views: ["month", "year", "day"], label: variant !== "standard"
|
|
22
|
+
? `${props.item.label}${props.item.required ? " *" : ""}`
|
|
23
|
+
: "", value: field.value
|
|
24
|
+
? typeof field.value === "string"
|
|
25
|
+
? dayjs(field.value, "DD/MM/YYYY")
|
|
26
|
+
: dayjs(field.value)
|
|
27
|
+
: null, className: "read-only", format: "DD/MM/YYYY", open: open, onOpen: handleToggle, onClose: handleToggle, minDate: props?.item?.minDate
|
|
28
|
+
? dayjs(props?.item?.minDate, "DD/MM/YYYY")
|
|
29
|
+
: undefined, maxDate: props?.item?.maxDate
|
|
30
|
+
? dayjs(props?.item?.maxDate, "DD/MM/YYYY")
|
|
31
|
+
: undefined, disabled: props.item.disable || false, onChange: (date) => {
|
|
32
|
+
field.onChange(dayjs(date).format("DD/MM/YYYY"));
|
|
33
|
+
props?.item?.onChangeFn &&
|
|
34
|
+
props?.item?.onChangeFn(dayjs(date).format("DD/MM/YYYY"));
|
|
35
|
+
}, slotProps: {
|
|
36
|
+
textField: {
|
|
37
|
+
onClick: () => handleToggle(),
|
|
38
|
+
inputRef: inputTextRef,
|
|
39
|
+
onBlur: (e) => {
|
|
40
|
+
props?.item?.onBlurFn && props?.item?.onBlurFn(e);
|
|
41
|
+
},
|
|
42
|
+
inputProps: {
|
|
43
|
+
input: { cursor: "pointer" },
|
|
44
|
+
},
|
|
45
|
+
error: isShowBorderError,
|
|
46
|
+
sx: {
|
|
47
|
+
"& .MuiFormLabel-root": {
|
|
48
|
+
top: -10,
|
|
49
|
+
},
|
|
50
|
+
"& .MuiInputLabel-shrink": {
|
|
51
|
+
top: 0,
|
|
52
|
+
},
|
|
53
|
+
},
|
|
54
|
+
},
|
|
55
|
+
} })] }), jsx(FormBottomField, { ...props })] })) }, props.item.name));
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
export { DatepickerWrapperV2 as default };
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
2
|
+
import { useState } from 'react';
|
|
3
|
+
import { Controller } from 'react-hook-form';
|
|
4
|
+
import { TextField, FormGroup, FormControlLabel, Checkbox } from '@mui/material';
|
|
5
|
+
import { AdapterDayjs } from '@mui/x-date-pickers/AdapterDayjs';
|
|
6
|
+
import { LocalizationProvider } from '@mui/x-date-pickers';
|
|
7
|
+
import { DatePicker } from '@mui/x-date-pickers/DatePicker';
|
|
8
|
+
|
|
9
|
+
const MonthPicker = ({ props }) => {
|
|
10
|
+
const [selectedMonths, setSelectedMonths] = useState([]);
|
|
11
|
+
const handleMonthChange = (date) => {
|
|
12
|
+
// Handle the selected months
|
|
13
|
+
setSelectedMonths((prevSelectedMonths) => {
|
|
14
|
+
const monthIndex = date.getMonth();
|
|
15
|
+
if (prevSelectedMonths.includes(monthIndex)) {
|
|
16
|
+
// If month is already selected, remove it
|
|
17
|
+
return prevSelectedMonths?.filter((month) => month !== monthIndex);
|
|
18
|
+
}
|
|
19
|
+
else {
|
|
20
|
+
// If month is not selected, add it
|
|
21
|
+
return [...prevSelectedMonths, monthIndex];
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
};
|
|
25
|
+
return (jsx(Controller, { control: props.control, name: props.item.name, render: ({ field }) => (jsxs(Fragment, { children: [jsx(LocalizationProvider, { dateAdapter: AdapterDayjs, children: jsx(DatePicker, { value: field.value, onChange: handleMonthChange, slots: {
|
|
26
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
27
|
+
textField: (textFieldProps) => (jsx(TextField, { ...textFieldProps, fullWidth: true, disabled: props.item.disable || false, InputLabelProps: {
|
|
28
|
+
shrink: true,
|
|
29
|
+
}, error: props.errors, inputProps: {
|
|
30
|
+
min: props.item.minDate,
|
|
31
|
+
} })),
|
|
32
|
+
}, slotProps: {
|
|
33
|
+
textField: {
|
|
34
|
+
sx: {
|
|
35
|
+
"& .MuiFormLabel-root": {
|
|
36
|
+
top: -10,
|
|
37
|
+
},
|
|
38
|
+
"& .MuiInputLabel-shrink": {
|
|
39
|
+
top: 0,
|
|
40
|
+
},
|
|
41
|
+
},
|
|
42
|
+
},
|
|
43
|
+
} }) }), jsx(FormGroup, { children: Array.from({ length: 12 }).map((_, index) => (jsx(FormControlLabel, { control: jsx(Checkbox, { checked: selectedMonths.includes(index), onChange: () => handleMonthChange(new Date(2000, index, 1)), color: "primary" }), label: new Date(2000, index, 1).toLocaleDateString(undefined, {
|
|
44
|
+
month: "short",
|
|
45
|
+
}) }, index))) })] })) }));
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
export { MonthPicker as default };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { FormRenderProps, VariantProps } from "../../../
|
|
1
|
+
import { FormRenderProps, VariantProps } from "../../../lib/Interface/FormInterface";
|
|
2
2
|
declare const Monthpickerrender: ({ props, variant, }: {
|
|
3
3
|
props: FormRenderProps;
|
|
4
4
|
variant: VariantProps;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Monthpickerrender.d.ts","sourceRoot":"","sources":["../../../../src/components/FormComponents/DatePicker/Monthpickerrender.tsx"],"names":[],"mappings":"AAUA,OAAO,EACL,eAAe,EACf,YAAY,EACb,MAAM,
|
|
1
|
+
{"version":3,"file":"Monthpickerrender.d.ts","sourceRoot":"","sources":["../../../../src/components/FormComponents/DatePicker/Monthpickerrender.tsx"],"names":[],"mappings":"AAUA,OAAO,EACL,eAAe,EACf,YAAY,EACb,MAAM,sCAAsC,CAAC;AAG9C,QAAA,MAAM,iBAAiB,GAAI,qBAGxB;IACD,KAAK,EAAE,eAAe,CAAC;IACvB,OAAO,EAAE,YAAY,CAAC;CACvB,4CA+FA,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
2
|
+
import { LocalizationProvider } from '@mui/x-date-pickers';
|
|
3
|
+
import { AdapterDayjs } from '@mui/x-date-pickers/AdapterDayjs';
|
|
4
|
+
import { DatePicker } from '@mui/x-date-pickers/DatePicker';
|
|
5
|
+
import dayjs from 'dayjs';
|
|
6
|
+
import { useRef, useState } from 'react';
|
|
7
|
+
import { Controller } from 'react-hook-form';
|
|
8
|
+
import { renderLabel, formatDateMonthAndYear } from '../../../lib/Constants/FormConstants.js';
|
|
9
|
+
import FormBottomField from '../FormBottomField/FormBottomField.js';
|
|
10
|
+
|
|
11
|
+
const Monthpickerrender = ({ props, variant, }) => {
|
|
12
|
+
const ref = useRef(null);
|
|
13
|
+
const [open, setOpen] = useState(false);
|
|
14
|
+
const handleToggle = () => {
|
|
15
|
+
if (!open) {
|
|
16
|
+
ref.current?.blur();
|
|
17
|
+
}
|
|
18
|
+
setOpen(!open);
|
|
19
|
+
};
|
|
20
|
+
const isError = !!props.errors?.[props.item.name];
|
|
21
|
+
const isShowBorderError = isError && props.fieldError;
|
|
22
|
+
return (jsx(Controller, { control: props.control, name: props.item.name, render: ({ field }) => (jsxs(Fragment, { children: [jsxs(LocalizationProvider, { dateAdapter: AdapterDayjs, children: [renderLabel(variant, props), jsx(DatePicker, { ref: ref, label: variant !== "standard" &&
|
|
23
|
+
`${props.item.label}${props.item.required ? " *" : ""}`, views: ["month", "year"], disabled: props.item.disable, value: field.value
|
|
24
|
+
? dayjs(formatDateMonthAndYear(field.value || null))
|
|
25
|
+
: null, slotProps: {
|
|
26
|
+
textField: {
|
|
27
|
+
onClick: () => handleToggle(),
|
|
28
|
+
inputRef: ref,
|
|
29
|
+
error: isShowBorderError,
|
|
30
|
+
},
|
|
31
|
+
}, disableOpenPicker: props.item.disable, open: open, onOpen: handleToggle, onClose: handleToggle, defaultValue: field.value, onChange: (date) => {
|
|
32
|
+
field.onChange(dayjs(date).format("MM/YYYY"));
|
|
33
|
+
props.setValue(dayjs(date).format("MM/YYYY"));
|
|
34
|
+
}, sx: {
|
|
35
|
+
"& .css-1holvmy,.css-kichxs-MuiFormLabel-root-MuiInputLabel-root": {
|
|
36
|
+
top: "-10px",
|
|
37
|
+
},
|
|
38
|
+
"& input": {
|
|
39
|
+
paddingRight: "0px !important",
|
|
40
|
+
},
|
|
41
|
+
"& button": {
|
|
42
|
+
paddingLeft: "0px !important",
|
|
43
|
+
paddingRight: "0px !important",
|
|
44
|
+
},
|
|
45
|
+
"& .MuiFormLabel-root": {
|
|
46
|
+
top: -10,
|
|
47
|
+
},
|
|
48
|
+
"& .MuiInputLabel-shrink": {
|
|
49
|
+
top: 0,
|
|
50
|
+
},
|
|
51
|
+
}, minDate: props.item.minDate
|
|
52
|
+
? dayjs(props.item.minDate, "MM/YYYY")
|
|
53
|
+
: undefined, maxDate: props.item.maxDate
|
|
54
|
+
? dayjs(props.item.maxDate, "MM/YYYY")
|
|
55
|
+
: undefined })] }), props?.item?.helperText && (jsxs("span", { style: {
|
|
56
|
+
fontSize: "11px",
|
|
57
|
+
color: "#3651d3",
|
|
58
|
+
}, children: ["(", props?.item?.helperText, ")"] })), jsx(FormBottomField, { ...props })] })) }));
|
|
59
|
+
};
|
|
60
|
+
|
|
61
|
+
export { Monthpickerrender as default };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { FormRenderProps, VariantProps } from "../../../
|
|
1
|
+
import { FormRenderProps, VariantProps } from "../../../lib/Interface/FormInterface";
|
|
2
2
|
declare const FormRenderFileUpload: ({ props, variant, }: {
|
|
3
3
|
props: FormRenderProps;
|
|
4
4
|
variant: VariantProps;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormRenderFileUpload.d.ts","sourceRoot":"","sources":["../../../../src/components/FormComponents/FileUpload/FormRenderFileUpload.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"FormRenderFileUpload.d.ts","sourceRoot":"","sources":["../../../../src/components/FormComponents/FileUpload/FormRenderFileUpload.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAC;AAIrF,QAAA,MAAM,oBAAoB,GAAI,qBAG3B;IACD,KAAK,EAAE,eAAe,CAAC;IACvB,OAAO,EAAE,YAAY,CAAC;CACvB,4CAqHA,CAAC;AAEF,eAAe,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { Box, TextField } from '@mui/material';
|
|
3
|
+
import { useEffect } from 'react';
|
|
4
|
+
import { renderLabel } from '../../../lib/Constants/FormConstants.js';
|
|
5
|
+
import FormBottomField from '../FormBottomField/FormBottomField.js';
|
|
6
|
+
|
|
7
|
+
const FormRenderFileUpload = ({ props, variant, }) => {
|
|
8
|
+
const isError = !!props.errors?.[props.item.name];
|
|
9
|
+
const isShowBorderError = isError && props.fieldError;
|
|
10
|
+
useEffect(() => {
|
|
11
|
+
if (props.getValues(props.item.name) === null ||
|
|
12
|
+
props.getValues(props.item.name) === undefined) {
|
|
13
|
+
const element = document.getElementById(props.item.name);
|
|
14
|
+
console.log(element, "elementelement");
|
|
15
|
+
if (element) {
|
|
16
|
+
element.value = ""; // Ensure it's an input element
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
}, [props.getValues(props.item.name)]);
|
|
20
|
+
return (jsxs(Fragment, { children: [jsxs(Box, { paddingLeft: "4px", sx: { ...props.item.sx }, children: [props.item?.label && (jsx(Box, { sx: { fontSize: "10px;" }, children: renderLabel(variant, props, true) })), jsx(TextField, { type: "file", id: props.item.name, error: isShowBorderError, inputProps: {
|
|
21
|
+
accept: props.item.fileType === "excel"
|
|
22
|
+
? ".xls, .xlsx"
|
|
23
|
+
: props.item.fileType === "pdf"
|
|
24
|
+
? ".pdf"
|
|
25
|
+
: props.item.fileType === "zip"
|
|
26
|
+
? ".zip"
|
|
27
|
+
: props.item.fileType === "all"
|
|
28
|
+
? ".pdf,.jpg,.jpeg,.png,.xls,.xlsx,.doc,.docx,.zip"
|
|
29
|
+
: "",
|
|
30
|
+
}, onChange: (event) => {
|
|
31
|
+
const file = event.target?.files[0];
|
|
32
|
+
console.log(file, "filefile");
|
|
33
|
+
const fileName = file ? file.name : null;
|
|
34
|
+
const allowedExtensions = {
|
|
35
|
+
excel: ["xls", "xlsx"],
|
|
36
|
+
pdf: ["pdf"],
|
|
37
|
+
zip: ["zip"],
|
|
38
|
+
all: [
|
|
39
|
+
"pdf",
|
|
40
|
+
"jpg",
|
|
41
|
+
"jpeg",
|
|
42
|
+
"png",
|
|
43
|
+
"xls",
|
|
44
|
+
"xlsx",
|
|
45
|
+
"doc",
|
|
46
|
+
"docx",
|
|
47
|
+
"zip",
|
|
48
|
+
],
|
|
49
|
+
image: ["jpg", "jpeg", "png"],
|
|
50
|
+
};
|
|
51
|
+
const fileExtension = fileName
|
|
52
|
+
? fileName.split(".").pop().toLowerCase()
|
|
53
|
+
: null;
|
|
54
|
+
const validExtensions = props.item.fileType === "excel"
|
|
55
|
+
? allowedExtensions.excel
|
|
56
|
+
: props.item.fileType === "pdf"
|
|
57
|
+
? allowedExtensions.pdf
|
|
58
|
+
: allowedExtensions.all;
|
|
59
|
+
if (props.item?.fileType &&
|
|
60
|
+
fileExtension &&
|
|
61
|
+
!validExtensions.includes(fileExtension)) {
|
|
62
|
+
props.item?.handleFileError
|
|
63
|
+
? props.item?.handleFileError(`Please upload ${allowedExtensions[props.item.fileType].join(",")} Files only`)
|
|
64
|
+
: alert(`Please upload ${allowedExtensions[props.item.fileType].join(",")} Files only`);
|
|
65
|
+
event.target.value = ""; // Clear the file input\
|
|
66
|
+
props.setValue(props.item?.name, null);
|
|
67
|
+
props.setValue(props.item?.name + "Name", "");
|
|
68
|
+
return;
|
|
69
|
+
}
|
|
70
|
+
else if (event.target.files[0].size > (props.item.filesize || 20000000)) {
|
|
71
|
+
const maxSizeMB = ((props.item.filesize || 20000000) /
|
|
72
|
+
(1024 * 1024)).toFixed(2);
|
|
73
|
+
props.item?.handleFileError
|
|
74
|
+
? props.item?.handleFileError(`File size should be less than ${maxSizeMB}MB`)
|
|
75
|
+
: alert(`File size should be less than ${maxSizeMB}MB`);
|
|
76
|
+
event.target.value = ""; // Clear the file input
|
|
77
|
+
props.setValue(props.item?.name, null);
|
|
78
|
+
props.setValue(props.item?.name + "Name", "");
|
|
79
|
+
return;
|
|
80
|
+
}
|
|
81
|
+
props.setValue(props.item?.name, file);
|
|
82
|
+
props.setValue(props.item?.name + "Name", fileName);
|
|
83
|
+
}, sx: { width: "100%" } })] }), jsx(FormBottomField, { ...props })] }));
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
export { FormRenderFileUpload as default };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { FormRenderProps, VariantProps } from "../../../
|
|
1
|
+
import { FormRenderProps, VariantProps } from "../../../lib/Interface/FormInterface";
|
|
2
2
|
declare const FormRenderMultiFileUpload: ({ props, variant, }: {
|
|
3
3
|
props: FormRenderProps;
|
|
4
4
|
variant: VariantProps;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormRenderMultiFileUpload.d.ts","sourceRoot":"","sources":["../../../../src/components/FormComponents/FileUpload/FormRenderMultiFileUpload.tsx"],"names":[],"mappings":"AAGA,OAAO,EACL,eAAe,EACf,YAAY,EACb,MAAM,
|
|
1
|
+
{"version":3,"file":"FormRenderMultiFileUpload.d.ts","sourceRoot":"","sources":["../../../../src/components/FormComponents/FileUpload/FormRenderMultiFileUpload.tsx"],"names":[],"mappings":"AAGA,OAAO,EACL,eAAe,EACf,YAAY,EACb,MAAM,sCAAsC,CAAC;AAG9C,QAAA,MAAM,yBAAyB,GAAI,qBAGhC;IACD,KAAK,EAAE,eAAe,CAAC;IACvB,OAAO,EAAE,YAAY,CAAC;CACvB,4CAiIA,CAAC;AAEF,eAAe,yBAAyB,CAAC"}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { Box, TextField } from '@mui/material';
|
|
3
|
+
import { useEffect } from 'react';
|
|
4
|
+
import { renderLabel } from '../../../lib/Constants/FormConstants.js';
|
|
5
|
+
import FormBottomField from '../FormBottomField/FormBottomField.js';
|
|
6
|
+
|
|
7
|
+
const FormRenderMultiFileUpload = ({ props, variant, }) => {
|
|
8
|
+
// const getDocument: Document = document;
|
|
9
|
+
useEffect(() => {
|
|
10
|
+
if (props.getValues(props.item.name) === null ||
|
|
11
|
+
props.getValues(props.item.name) === undefined) {
|
|
12
|
+
const element = document.getElementById(props.item.name);
|
|
13
|
+
console.log(element, "elementelement");
|
|
14
|
+
if (element) {
|
|
15
|
+
element.value = ""; // Ensure it's an input element
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
}, [props.getValues(props.item.name)]);
|
|
19
|
+
const isError = !!props.errors?.[props.item.name];
|
|
20
|
+
const isShowBorderError = isError && props.fieldError;
|
|
21
|
+
return (jsxs(Fragment, { children: [jsxs(Box, { paddingLeft: "4px", sx: { ...props.item.sx }, children: [props.item?.label && (jsx(Box, { sx: { fontSize: "10px;" }, children: renderLabel(variant, props, true) })), jsx(TextField, { type: "file", id: props.item.name, error: isShowBorderError, inputProps: {
|
|
22
|
+
multiple: true,
|
|
23
|
+
accept: props.item.fileType === "excel"
|
|
24
|
+
? ".xls,.xlsx"
|
|
25
|
+
: props.item.fileType === "pdf"
|
|
26
|
+
? ".pdf"
|
|
27
|
+
: props.item.fileType === "image"
|
|
28
|
+
? ".jpg,.jpeg,.png"
|
|
29
|
+
: props.item.fileType === "all"
|
|
30
|
+
? ".pdf,.jpg,.jpeg,.png,.xls,.xlsx,.doc,.docx"
|
|
31
|
+
: "",
|
|
32
|
+
}, onChange: (event) => {
|
|
33
|
+
const file = event.target.files;
|
|
34
|
+
const fileName = file && file.length > 0
|
|
35
|
+
? Array.from(file)
|
|
36
|
+
.map((item) => item.name)
|
|
37
|
+
.join(",")
|
|
38
|
+
: null;
|
|
39
|
+
console.log(file, "filefile", file.length, fileName);
|
|
40
|
+
const allowedExtensions = {
|
|
41
|
+
excel: ["xls", "xlsx"],
|
|
42
|
+
pdf: ["pdf"],
|
|
43
|
+
image: ["jpg", "jpeg", "png"],
|
|
44
|
+
all: [
|
|
45
|
+
"pdf",
|
|
46
|
+
"jpg",
|
|
47
|
+
"jpeg",
|
|
48
|
+
"png",
|
|
49
|
+
"xls",
|
|
50
|
+
"xlsx",
|
|
51
|
+
"doc",
|
|
52
|
+
"docx",
|
|
53
|
+
"zip",
|
|
54
|
+
],
|
|
55
|
+
zip: ["zip"],
|
|
56
|
+
};
|
|
57
|
+
let fileExtension = null;
|
|
58
|
+
if (fileName) {
|
|
59
|
+
const ext = fileName.split(".").pop();
|
|
60
|
+
if (ext) {
|
|
61
|
+
fileExtension = ext.toLowerCase();
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
const validExtensions = props.item.fileType === "excel"
|
|
65
|
+
? allowedExtensions.excel
|
|
66
|
+
: props.item.fileType === "pdf"
|
|
67
|
+
? allowedExtensions.pdf
|
|
68
|
+
: props.item.fileType === "image"
|
|
69
|
+
? allowedExtensions.image
|
|
70
|
+
: allowedExtensions.all;
|
|
71
|
+
if (props.item?.fileType &&
|
|
72
|
+
fileExtension &&
|
|
73
|
+
!validExtensions.includes(fileExtension)) {
|
|
74
|
+
props.item?.handleFileError &&
|
|
75
|
+
props.item?.handleFileError(`Please upload ${allowedExtensions[props.item.fileType].join(",")} Files only`);
|
|
76
|
+
event.target.value = ""; // Clear the file input\
|
|
77
|
+
props.setValue(props.item?.name, null);
|
|
78
|
+
props.setValue(props.item?.name + "Name", "");
|
|
79
|
+
return;
|
|
80
|
+
}
|
|
81
|
+
else if (event.target.files[event.target.files.length - 1].size > 20000000) {
|
|
82
|
+
props.item?.handleFileError &&
|
|
83
|
+
props.item?.handleFileError(`File size should be less than 20MB`);
|
|
84
|
+
event.target.files = null; // Clear the file input
|
|
85
|
+
props.setValue(props.item?.name, null);
|
|
86
|
+
props.setValue(props.item?.name + "File", []);
|
|
87
|
+
return;
|
|
88
|
+
}
|
|
89
|
+
const fileArray = Array.from(file);
|
|
90
|
+
console.log(fileArray, "fileArrayfileArray");
|
|
91
|
+
props.setValue(props.item?.name, fileName);
|
|
92
|
+
props.setValue(props.item?.name + "File", fileArray);
|
|
93
|
+
}, sx: { width: "100%" } })] }), jsx(FormBottomField, { ...props })] }));
|
|
94
|
+
};
|
|
95
|
+
|
|
96
|
+
export { FormRenderMultiFileUpload as default };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { FormRenderProps } from "../../../
|
|
1
|
+
import { FormRenderProps } from "../../../lib/Interface/FormInterface";
|
|
2
2
|
declare const FormBottomField: (props: FormRenderProps) => import("react/jsx-runtime").JSX.Element;
|
|
3
3
|
export default FormBottomField;
|
|
4
4
|
//# sourceMappingURL=FormBottomField.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormBottomField.d.ts","sourceRoot":"","sources":["../../../../src/components/FormComponents/FormBottomField/FormBottomField.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"FormBottomField.d.ts","sourceRoot":"","sources":["../../../../src/components/FormComponents/FormBottomField/FormBottomField.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAIvE,QAAA,MAAM,eAAe,GAAI,OAAO,eAAe,4CAO9C,CAAC;AAEF,eAAe,eAAe,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
|
|
2
|
+
import FormErrorField from '../FormErrorField/FormErrorField.js';
|
|
3
|
+
import HelperText from '../HelperText/HelperText.js';
|
|
4
|
+
|
|
5
|
+
const FormBottomField = (props) => {
|
|
6
|
+
return (jsxs(Fragment, { children: [jsx(HelperText, { ...props }), jsx(FormErrorField, { ...props })] }));
|
|
7
|
+
};
|
|
8
|
+
|
|
9
|
+
export { FormBottomField as default };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { FormRenderProps, VariantProps } from "../../../
|
|
1
|
+
import { FormRenderProps, VariantProps } from "../../../lib/Interface/FormInterface";
|
|
2
2
|
declare const FormCheckBox: ({ props, variant: _variant, }: {
|
|
3
3
|
props: FormRenderProps;
|
|
4
4
|
variant: VariantProps;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormCheckBox.d.ts","sourceRoot":"","sources":["../../../../src/components/FormComponents/FormCheckBox/FormCheckBox.tsx"],"names":[],"mappings":"AAEA,OAAO,EACL,eAAe,EACf,YAAY,EACb,MAAM,
|
|
1
|
+
{"version":3,"file":"FormCheckBox.d.ts","sourceRoot":"","sources":["../../../../src/components/FormComponents/FormCheckBox/FormCheckBox.tsx"],"names":[],"mappings":"AAEA,OAAO,EACL,eAAe,EACf,YAAY,EACb,MAAM,sCAAsC,CAAC;AAG9C,QAAA,MAAM,YAAY,GAAI,+BAGnB;IACD,KAAK,EAAE,eAAe,CAAC;IACvB,OAAO,EAAE,YAAY,CAAC;CACvB,4CAsBA,CAAC;AAEF,eAAe,YAAY,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { Checkbox } from '@mui/material';
|
|
3
|
+
import { Controller } from 'react-hook-form';
|
|
4
|
+
import FormBottomField from '../FormBottomField/FormBottomField.js';
|
|
5
|
+
|
|
6
|
+
const FormCheckBox = ({ props, variant: _variant, }) => {
|
|
7
|
+
return (jsxs(Fragment, { children: [jsxs("span", { className: "formInputlabel", style: { fontSize: "12px" }, children: [props.item.label, " ", props.item.required && jsx("span", { style: { color: "red" }, children: "*" })] }), jsx(Controller, { control: props.control, name: props.item.name, render: ({ field }) => (jsx(Checkbox, { ...field, checked: !!field.value, onChange: (e) => field.onChange(e.target.checked), sx: { width: "24px", height: "24px", ...props.item.sx } })) }), jsx(FormBottomField, { ...props })] }));
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
export { FormCheckBox as default };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { FormRenderProps, VariantProps } from "../../../
|
|
1
|
+
import { FormRenderProps, VariantProps } from "../../../lib/Interface/FormInterface";
|
|
2
2
|
declare const FormCheckBoxGroup: ({ props, variant, }: {
|
|
3
3
|
props: FormRenderProps;
|
|
4
4
|
variant: VariantProps;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormCheckBoxGroup.d.ts","sourceRoot":"","sources":["../../../../src/components/FormComponents/FormCheckBoxGroup/FormCheckBoxGroup.tsx"],"names":[],"mappings":"AASA,OAAO,EACL,eAAe,EACf,YAAY,EACb,MAAM,
|
|
1
|
+
{"version":3,"file":"FormCheckBoxGroup.d.ts","sourceRoot":"","sources":["../../../../src/components/FormComponents/FormCheckBoxGroup/FormCheckBoxGroup.tsx"],"names":[],"mappings":"AASA,OAAO,EACL,eAAe,EACf,YAAY,EACb,MAAM,sCAAsC,CAAC;AAG9C,QAAA,MAAM,iBAAiB,GAAI,qBAGxB;IACD,KAAK,EAAE,eAAe,CAAC;IACvB,OAAO,EAAE,YAAY,CAAC;CACvB,4CA8CA,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { FormControl, FormGroup, FormControlLabel, Typography, Checkbox } from '@mui/material';
|
|
3
|
+
import { Controller } from 'react-hook-form';
|
|
4
|
+
import { renderLabel } from '../../../lib/Constants/FormConstants.js';
|
|
5
|
+
import FormBottomField from '../FormBottomField/FormBottomField.js';
|
|
6
|
+
|
|
7
|
+
const FormCheckBoxGroup = ({ props, variant, }) => {
|
|
8
|
+
return (jsxs(Fragment, { children: [renderLabel(variant, props), jsx(FormControl, { component: "fieldset", children: jsx(FormGroup, { row: true, children: props.item?.settings &&
|
|
9
|
+
props.item.settings.map((settings, i) => {
|
|
10
|
+
return (jsx(Controller, { name: settings.name, control: props.control, render: ({ field }) => {
|
|
11
|
+
return (jsx(FormControlLabel, { control: jsx(Checkbox, { ...field, checked: field.value }), sx: {
|
|
12
|
+
".MuiCheckbox-root": {
|
|
13
|
+
padding: "6px 2px 6px 8px",
|
|
14
|
+
".css-imrjgg-MuiButtonBase-root-MuiCheckbox-root": {
|
|
15
|
+
color: "rgb(0, 0, 0) !important",
|
|
16
|
+
},
|
|
17
|
+
},
|
|
18
|
+
}, label: jsx(Typography, { variant: "subtitle2", fontSize: "11px", fontWeight: "normal !important", children: settings.label }), labelPlacement: "end" }));
|
|
19
|
+
} }, i));
|
|
20
|
+
}) }) }), jsx(FormBottomField, { ...props })] }));
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
export { FormCheckBoxGroup as default };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { FormRenderProps } from "../../../
|
|
1
|
+
import { FormRenderProps } from "../../../lib/Interface/FormInterface";
|
|
2
2
|
declare const FormErrorField: (props: FormRenderProps) => import("react/jsx-runtime").JSX.Element;
|
|
3
3
|
export default FormErrorField;
|
|
4
4
|
//# sourceMappingURL=FormErrorField.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormErrorField.d.ts","sourceRoot":"","sources":["../../../../src/components/FormComponents/FormErrorField/FormErrorField.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"FormErrorField.d.ts","sourceRoot":"","sources":["../../../../src/components/FormComponents/FormErrorField/FormErrorField.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAEvE,QAAA,MAAM,cAAc,GAAI,OAAM,eAAe,4CAM5C,CAAC;AAEF,eAAe,cAAc,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { ErrorMessage } from '@hookform/error-message';
|
|
3
|
+
import { ErrorMessageComponent } from '../../Form/Form.styles.js';
|
|
4
|
+
|
|
5
|
+
const FormErrorField = (props) => {
|
|
6
|
+
return (jsx(ErrorMessageComponent, { children: jsx(ErrorMessage, { errors: props.errors, name: props.item.name }) }));
|
|
7
|
+
};
|
|
8
|
+
|
|
9
|
+
export { FormErrorField as default };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { FormRenderProps, VariantProps } from "../../../
|
|
1
|
+
import { FormRenderProps, VariantProps } from "../../../lib/Interface/FormInterface";
|
|
2
2
|
declare const FormNumberField: ({ props, variant, }: {
|
|
3
3
|
props: FormRenderProps;
|
|
4
4
|
variant: VariantProps;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormNumberField.d.ts","sourceRoot":"","sources":["../../../../src/components/FormComponents/FormNumberField/FormNumberField.tsx"],"names":[],"mappings":"AAGA,OAAO,EACL,eAAe,EACf,YAAY,EACb,MAAM,
|
|
1
|
+
{"version":3,"file":"FormNumberField.d.ts","sourceRoot":"","sources":["../../../../src/components/FormComponents/FormNumberField/FormNumberField.tsx"],"names":[],"mappings":"AAGA,OAAO,EACL,eAAe,EACf,YAAY,EACb,MAAM,sCAAsC,CAAC;AAG9C,QAAA,MAAM,eAAe,GAAI,qBAGtB;IACD,KAAK,EAAE,eAAe,CAAC;IACvB,OAAO,EAAE,YAAY,CAAC;CACvB,4CAsEA,CAAC;AAEF,eAAe,eAAe,CAAC"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { jsx, Fragment, jsxs } from 'react/jsx-runtime';
|
|
2
|
+
import { TextField } from '@mui/material';
|
|
3
|
+
import { Controller } from 'react-hook-form';
|
|
4
|
+
import { renderLabel } from '../../../lib/Constants/FormConstants.js';
|
|
5
|
+
import FormBottomField from '../FormBottomField/FormBottomField.js';
|
|
6
|
+
|
|
7
|
+
const FormNumberField = ({ props, variant, }) => {
|
|
8
|
+
const isError = !!props.errors?.[props.item.name];
|
|
9
|
+
const isShowBorderError = isError && props.fieldError;
|
|
10
|
+
const label = variant !== "standard"
|
|
11
|
+
? `${props.item.label}${props.item.required ? " *" : ""}`
|
|
12
|
+
: "";
|
|
13
|
+
return (jsx(Fragment, { children: jsx(Controller, { control: props.control, name: props.item.name, render: ({ field }) => {
|
|
14
|
+
return (jsxs(Fragment, { children: [renderLabel(variant, props), jsx(TextField, { ...field, size: "small", label: label, error: isShowBorderError, value: props.getValues(props.item.name) || "", defaultValue: props.getValues(props.item.name) || null, onInput: (e) => {
|
|
15
|
+
e.target.value = e.target.value.replace(/[^0-9]/g, "");
|
|
16
|
+
if (e.target.value === "") {
|
|
17
|
+
e.target.value = null;
|
|
18
|
+
}
|
|
19
|
+
props?.item?.onChangeFn &&
|
|
20
|
+
props?.item?.onChangeFn(e.target.value);
|
|
21
|
+
props?.clearErrors && props?.clearErrors(props.item.name);
|
|
22
|
+
}, onBlur: (e) => {
|
|
23
|
+
props?.item?.onBlurFn && props?.item?.onBlurFn(e);
|
|
24
|
+
}, sx: {
|
|
25
|
+
"& .css-1holvmy,.css-lqj8pz-MuiFormLabel-root-MuiInputLabel-root,.css-kichxs-MuiFormLabel-root-MuiInputLabel-root": {
|
|
26
|
+
top: "-10px",
|
|
27
|
+
},
|
|
28
|
+
}, inputProps: {
|
|
29
|
+
pattern: "[0-9]*", // Only allow numbers
|
|
30
|
+
maxLength: props.item.maxLength || 20,
|
|
31
|
+
onInput: (e) => {
|
|
32
|
+
if (props?.item?.donotAllowSpace) {
|
|
33
|
+
const value = e.target.value;
|
|
34
|
+
e.target.value = value.replace(" ", "");
|
|
35
|
+
}
|
|
36
|
+
if (!props?.item?.allowSpecialChars) {
|
|
37
|
+
const value = e.target.value;
|
|
38
|
+
e.target.value = value.replace(/[^a-zA-Z0-9 ]/g, "");
|
|
39
|
+
} // Allow only alphanumeric and space
|
|
40
|
+
if (e.target.value.length === 1 && e.target.value === " ") {
|
|
41
|
+
e.target.value = "";
|
|
42
|
+
}
|
|
43
|
+
props.item.onInputProps && props.item.onInputProps(e);
|
|
44
|
+
},
|
|
45
|
+
}, disabled: props.item.disable }), jsx(FormBottomField, { ...props })] }));
|
|
46
|
+
} }, props.item.name) }));
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
export { FormNumberField as default };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { FormRenderProps, VariantProps } from "../../../
|
|
1
|
+
import { FormRenderProps, VariantProps } from "../../../lib/Interface/FormInterface";
|
|
2
2
|
declare const FormNumberFieldDecimal: ({ props, variant, }: {
|
|
3
3
|
props: FormRenderProps;
|
|
4
4
|
variant: VariantProps;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormNumberFieldDecimal.d.ts","sourceRoot":"","sources":["../../../../src/components/FormComponents/FormNumberField/FormNumberFieldDecimal.tsx"],"names":[],"mappings":"AAGA,OAAO,EACL,eAAe,EACf,YAAY,EACb,MAAM,
|
|
1
|
+
{"version":3,"file":"FormNumberFieldDecimal.d.ts","sourceRoot":"","sources":["../../../../src/components/FormComponents/FormNumberField/FormNumberFieldDecimal.tsx"],"names":[],"mappings":"AAGA,OAAO,EACL,eAAe,EACf,YAAY,EACb,MAAM,sCAAsC,CAAC;AAG9C,QAAA,MAAM,sBAAsB,GAAI,qBAG7B;IACD,KAAK,EAAE,eAAe,CAAC;IACvB,OAAO,EAAE,YAAY,CAAC;CACvB,4CAmEA,CAAC;AAEF,eAAe,sBAAsB,CAAC"}
|