@gen-epix/ui-core-components 4.0.0 → 4.0.1
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/_chunks/isObject.js +13 -0
- package/dist/_chunks/isObject.js.map +1 -0
- package/dist/_chunks/rolldown-runtime.js +2 -2
- package/dist/components/BackdropSpinner/BackdropSpinner.d.ts +5 -0
- package/dist/components/BackdropSpinner/index.d.ts +1 -0
- package/dist/components/BackdropSpinner/index.js +19 -0
- package/dist/components/BackdropSpinner/index.js.map +1 -0
- package/dist/components/Confirmation/Confirmation.d.ts +2 -0
- package/dist/components/Confirmation/ConfirmationRender.d.ts +11 -0
- package/dist/components/Confirmation/index.d.ts +2 -0
- package/dist/components/Confirmation/index.js +58 -0
- package/dist/components/Confirmation/index.js.map +1 -0
- package/dist/components/CopyToClipboardButton/CopyToClipboardButton.d.ts +13 -0
- package/dist/components/CopyToClipboardButton/index.d.ts +1 -0
- package/dist/components/CopyToClipboardButton/index.js +101 -0
- package/dist/components/CopyToClipboardButton/index.js.map +1 -0
- package/dist/components/Dialog/Dialog.d.ts +27 -0
- package/dist/components/Dialog/index.d.ts +1 -0
- package/dist/components/Dialog/index.js +83 -0
- package/dist/components/Dialog/index.js.map +1 -0
- package/dist/components/LinearProgressWithLabel/LinearProgressWithLabel.d.ts +5 -0
- package/dist/components/LinearProgressWithLabel/index.d.ts +1 -0
- package/dist/components/LinearProgressWithLabel/index.js +31 -0
- package/dist/components/LinearProgressWithLabel/index.js.map +1 -0
- package/dist/components/LoadingIndicator/LoadingIndicator.d.ts +2 -0
- package/dist/components/LoadingIndicator/index.d.ts +1 -0
- package/dist/components/LoadingIndicator/index.js +12 -0
- package/dist/components/LoadingIndicator/index.js.map +1 -0
- package/dist/components/NestedMenu/IconMenuItem.d.ts +18 -0
- package/dist/components/NestedMenu/NestedDropdown.d.ts +17 -0
- package/dist/components/NestedMenu/NestedMenuItem.d.ts +22 -0
- package/dist/components/NestedMenu/index.d.ts +4 -0
- package/dist/components/NestedMenu/index.js +240 -0
- package/dist/components/NestedMenu/index.js.map +1 -0
- package/dist/components/NestedMenu/nestedMenuItemsFromObject.d.ts +11 -0
- package/dist/components/Spinner/Spinner.d.ts +11 -0
- package/dist/components/Spinner/index.d.ts +1 -0
- package/dist/components/Spinner/index.js +63 -0
- package/dist/components/Spinner/index.js.map +1 -0
- package/dist/components/Stepper/Stepper.d.ts +17 -0
- package/dist/components/Stepper/index.d.ts +2 -0
- package/dist/components/Stepper/index.js +1087 -0
- package/dist/components/Stepper/index.js.map +1 -0
- package/dist/components/Stepper/stepperModel.d.ts +4 -0
- package/dist/context/uiCoreComponentsConfigContext/UiCoreComponentsConfigContextProvider.d.ts +6 -0
- package/dist/context/uiCoreComponentsConfigContext/index.d.ts +3 -0
- package/dist/context/uiCoreComponentsConfigContext/index.js +14 -0
- package/dist/context/uiCoreComponentsConfigContext/index.js.map +1 -0
- package/dist/context/uiCoreComponentsConfigContext/uiCoreComponentsConfigContext.d.ts +7 -0
- package/dist/context/uiCoreComponentsConfigContext/useUiCoreComponentsConfigContext.d.ts +2 -0
- package/dist/hoc/withDialog/index.d.ts +1 -0
- package/dist/hoc/withDialog/index.js +69 -0
- package/dist/hoc/withDialog/index.js.map +1 -0
- package/dist/hoc/withDialog/withDialog.d.ts +33 -0
- package/dist/locale/en.json +14 -93
- package/dist/locale/nl.json +14 -93
- package/dist/models/nestedMenu.d.ts +17 -0
- package/dist/models/nestedMenu.js +0 -0
- package/package.json +3 -3
- package/dist/@types/ui-form.d.ts +0 -2
- package/dist/@types/yup.d.ts +0 -30
- package/dist/_chunks/Autocomplete.js +0 -229
- package/dist/_chunks/Autocomplete.js.map +0 -1
- package/dist/_chunks/DatePicker.js +0 -126
- package/dist/_chunks/DatePicker.js.map +0 -1
- package/dist/_chunks/FormUtil.js +0 -1350
- package/dist/_chunks/FormUtil.js.map +0 -1
- package/dist/_chunks/RichTextEditor.js +0 -22721
- package/dist/_chunks/RichTextEditor.js.map +0 -1
- package/dist/_chunks/TransferList.js +0 -453
- package/dist/_chunks/TransferList.js.map +0 -1
- package/dist/_chunks/UploadButton.js +0 -91
- package/dist/_chunks/UploadButton.js.map +0 -1
- package/dist/_chunks/classnames.js +0 -33
- package/dist/_chunks/classnames.js.map +0 -1
- package/dist/_chunks/index.esm.js +0 -348
- package/dist/_chunks/index.esm.js.map +0 -1
- package/dist/_chunks/isEqual.js +0 -348
- package/dist/_chunks/isEqual.js.map +0 -1
- package/dist/_chunks/isObjectLike.js +0 -304
- package/dist/_chunks/isObjectLike.js.map +0 -1
- package/dist/_chunks/isValid.js +0 -28
- package/dist/_chunks/isValid.js.map +0 -1
- package/dist/_chunks/sv.js +0 -434
- package/dist/_chunks/sv.js.map +0 -1
- package/dist/components/fields/Autocomplete/Autocomplete.d.ts +0 -19
- package/dist/components/fields/Autocomplete/AutocompleteSelectAllContext.d.ts +0 -2
- package/dist/components/fields/Autocomplete/AutocompleteSelectAllPaper.d.ts +0 -2
- package/dist/components/fields/Autocomplete/index.d.ts +0 -1
- package/dist/components/fields/Autocomplete/index.js +0 -2
- package/dist/components/fields/CheckboxGroup/CheckboxGroup.d.ts +0 -18
- package/dist/components/fields/CheckboxGroup/index.d.ts +0 -1
- package/dist/components/fields/CheckboxGroup/index.js +0 -114
- package/dist/components/fields/CheckboxGroup/index.js.map +0 -1
- package/dist/components/fields/DatePicker/DatePicker.d.ts +0 -15
- package/dist/components/fields/DatePicker/DatePickerInputAdornment.d.ts +0 -8
- package/dist/components/fields/DatePicker/index.d.ts +0 -1
- package/dist/components/fields/DatePicker/index.js +0 -2
- package/dist/components/fields/DateRangePicker/DateRangePicker.d.ts +0 -17
- package/dist/components/fields/DateRangePicker/index.d.ts +0 -1
- package/dist/components/fields/DateRangePicker/index.js +0 -1648
- package/dist/components/fields/DateRangePicker/index.js.map +0 -1
- package/dist/components/fields/NumberField/NumberField.d.ts +0 -19
- package/dist/components/fields/NumberField/index.d.ts +0 -1
- package/dist/components/fields/NumberField/index.js +0 -180
- package/dist/components/fields/NumberField/index.js.map +0 -1
- package/dist/components/fields/NumberRangeInput/NumberRangeInput.d.ts +0 -15
- package/dist/components/fields/NumberRangeInput/index.d.ts +0 -1
- package/dist/components/fields/NumberRangeInput/index.js +0 -192
- package/dist/components/fields/NumberRangeInput/index.js.map +0 -1
- package/dist/components/fields/RadioGroup/RadioGroup.d.ts +0 -16
- package/dist/components/fields/RadioGroup/index.d.ts +0 -1
- package/dist/components/fields/RadioGroup/index.js +0 -72
- package/dist/components/fields/RadioGroup/index.js.map +0 -1
- package/dist/components/fields/RichTextEditor/RichTextEditor.d.ts +0 -13
- package/dist/components/fields/RichTextEditor/RichTextEditorContent.d.ts +0 -4
- package/dist/components/fields/RichTextEditor/index.d.ts +0 -2
- package/dist/components/fields/RichTextEditor/index.js +0 -2
- package/dist/components/fields/RichTextEditor/useRichTextEditorExtensions.d.ts +0 -10
- package/dist/components/fields/Select/Select.d.ts +0 -16
- package/dist/components/fields/Select/index.d.ts +0 -1
- package/dist/components/fields/Select/index.js +0 -129
- package/dist/components/fields/Select/index.js.map +0 -1
- package/dist/components/fields/Switch/Switch.d.ts +0 -13
- package/dist/components/fields/Switch/index.d.ts +0 -1
- package/dist/components/fields/Switch/index.js +0 -68
- package/dist/components/fields/Switch/index.js.map +0 -1
- package/dist/components/fields/TextField/TextField.d.ts +0 -18
- package/dist/components/fields/TextField/index.d.ts +0 -1
- package/dist/components/fields/TextField/index.js +0 -108
- package/dist/components/fields/TextField/index.js.map +0 -1
- package/dist/components/fields/ToggleButtonGroup/ToggleButtonGroup.d.ts +0 -14
- package/dist/components/fields/ToggleButtonGroup/index.d.ts +0 -1
- package/dist/components/fields/ToggleButtonGroup/index.js +0 -57
- package/dist/components/fields/ToggleButtonGroup/index.js.map +0 -1
- package/dist/components/fields/TransferList/TransferList.d.ts +0 -16
- package/dist/components/fields/TransferList/index.d.ts +0 -1
- package/dist/components/fields/TransferList/index.js +0 -2
- package/dist/components/fields/UploadButton/UploadButton.d.ts +0 -15
- package/dist/components/fields/UploadButton/index.d.ts +0 -1
- package/dist/components/fields/UploadButton/index.js +0 -2
- package/dist/components/helpers/FormFieldHelperText/FormFieldHelperText.d.ts +0 -8
- package/dist/components/helpers/FormFieldHelperText/index.d.ts +0 -1
- package/dist/components/helpers/FormFieldHelperText/index.js +0 -50
- package/dist/components/helpers/FormFieldHelperText/index.js.map +0 -1
- package/dist/components/helpers/FormFieldLoadingIndicator/FormFieldLoadingIndicator.d.ts +0 -4
- package/dist/components/helpers/FormFieldLoadingIndicator/index.d.ts +0 -1
- package/dist/components/helpers/FormFieldLoadingIndicator/index.js +0 -16
- package/dist/components/helpers/FormFieldLoadingIndicator/index.js.map +0 -1
- package/dist/components/helpers/GenericForm/GenericForm.d.ts +0 -18
- package/dist/components/helpers/GenericForm/index.d.ts +0 -1
- package/dist/components/helpers/GenericForm/index.js +0 -156
- package/dist/components/helpers/GenericForm/index.js.map +0 -1
- package/dist/hooks/useIsFormFieldRequiredFromSchema/index.d.ts +0 -1
- package/dist/hooks/useIsFormFieldRequiredFromSchema/index.js +0 -18
- package/dist/hooks/useIsFormFieldRequiredFromSchema/index.js.map +0 -1
- package/dist/hooks/useIsFormFieldRequiredFromSchema/useIsFormFieldRequiredFromSchema.d.ts +0 -4
- package/dist/models/form.d.ts +0 -112
- package/dist/models/form.js +0 -8
- package/dist/models/form.js.map +0 -1
- package/dist/setup/setup.d.ts +0 -1
- package/dist/setup/setup.js +0 -166
- package/dist/setup/setup.js.map +0 -1
- package/dist/utils/FormUtil/FormUtil.d.ts +0 -19
- package/dist/utils/FormUtil/index.d.ts +0 -1
- package/dist/utils/FormUtil/index.js +0 -2
- package/dist/utils/SchemaUtil/SchemaUtil.d.ts +0 -9
- package/dist/utils/SchemaUtil/index.d.ts +0 -1
- package/dist/utils/SchemaUtil/index.js +0 -30
- package/dist/utils/SchemaUtil/index.js.map +0 -1
|
@@ -1,126 +0,0 @@
|
|
|
1
|
-
import { n as e } from "./rolldown-runtime.js";
|
|
2
|
-
import { p as t, t as n } from "./FormUtil.js";
|
|
3
|
-
import { i as r, t as i } from "./index.esm.js";
|
|
4
|
-
import { FormFieldHelperText as a } from "../components/helpers/FormFieldHelperText/index.js";
|
|
5
|
-
import { FormFieldLoadingIndicator as o } from "../components/helpers/FormFieldLoadingIndicator/index.js";
|
|
6
|
-
import { t as s } from "./classnames.js";
|
|
7
|
-
import { t as c } from "./sv.js";
|
|
8
|
-
import { DATE_FORMAT as l } from "@gen-epix/ui-core/constants/date";
|
|
9
|
-
import { useCallback as u, useMemo as d, useRef as f } from "react";
|
|
10
|
-
import { useTranslation as p } from "react-i18next";
|
|
11
|
-
import { FormControl as m, FormHelperText as h, IconButton as g, InputAdornment as _ } from "@mui/material";
|
|
12
|
-
import v from "@mui/icons-material/Clear";
|
|
13
|
-
import { jsx as y, jsxs as b } from "react/jsx-runtime";
|
|
14
|
-
import { TestIdUtil as x } from "@gen-epix/ui-core/utils/TestIdUtil";
|
|
15
|
-
import { DatePicker as S, DateTimePicker as C, LocalizationProvider as w } from "@mui/x-date-pickers";
|
|
16
|
-
import { AdapterDateFns as T } from "@mui/x-date-pickers/AdapterDateFns";
|
|
17
|
-
//#region src/components/fields/DatePicker/DatePickerInputAdornment.tsx
|
|
18
|
-
var E = /* @__PURE__ */ e(s(), 1), D = ({ children: e, disabled: t, loading: n, onResetButtonClickRef: r, ...i }) => {
|
|
19
|
-
let { t: a } = p();
|
|
20
|
-
return /* @__PURE__ */ b(_, {
|
|
21
|
-
...i,
|
|
22
|
-
children: [!t && !n && /* @__PURE__ */ y(g, {
|
|
23
|
-
...x.createAttributes("DatePicker-reset"),
|
|
24
|
-
"aria-label": a`Clear date field`,
|
|
25
|
-
className: "DatePicker-resetButton",
|
|
26
|
-
onClick: () => r.current(),
|
|
27
|
-
sx: { "& svg": { fontSize: "16px" } },
|
|
28
|
-
tabIndex: -1,
|
|
29
|
-
children: /* @__PURE__ */ y(v, {})
|
|
30
|
-
}), e]
|
|
31
|
-
});
|
|
32
|
-
}, O = ({ dateFormat: e = l.DATE, disabled: s = !1, infoMessage: p, label: g, loading: _ = !1, name: v, onChange: O, required: k = !1, warningMessage: A }) => {
|
|
33
|
-
let { control: j, formState: { errors: M } } = r(), N = n.getFieldErrorMessage(M, v), P = !!N, F = !!A && !P, I = f(null), L = f(() => void 0), R = u((e) => (t) => {
|
|
34
|
-
O && O(t), e(t);
|
|
35
|
-
}, [O]), z = d(() => ({
|
|
36
|
-
...t,
|
|
37
|
-
formatLong: c.formatLong
|
|
38
|
-
}), []), B = d(() => {
|
|
39
|
-
switch (e) {
|
|
40
|
-
case l.DATE:
|
|
41
|
-
case l.DATE_TIME: return;
|
|
42
|
-
case l.YEAR: return ["year"];
|
|
43
|
-
case l.YEAR_MONTH: return ["year", "month"];
|
|
44
|
-
default: throw Error(`Unsupported date format: ${e}`);
|
|
45
|
-
}
|
|
46
|
-
}, [e]), V = e === l.DATE_TIME ? C : S;
|
|
47
|
-
return /* @__PURE__ */ y(i, {
|
|
48
|
-
control: j,
|
|
49
|
-
defaultValue: "",
|
|
50
|
-
name: v,
|
|
51
|
-
render: u(({ field: { onBlur: t, onChange: n, ref: r, value: i } }) => (r({ focus: () => {
|
|
52
|
-
I?.current?.focus();
|
|
53
|
-
} }), L.current = () => {
|
|
54
|
-
n(null);
|
|
55
|
-
}, /* @__PURE__ */ b(m, {
|
|
56
|
-
...x.createAttributes("DatePicker", {
|
|
57
|
-
label: g,
|
|
58
|
-
name: v
|
|
59
|
-
}),
|
|
60
|
-
fullWidth: !0,
|
|
61
|
-
sx: {
|
|
62
|
-
"&:hover .DatePicker-resetButton, &:focus-within .DatePicker-resetButton": { display: "initial" },
|
|
63
|
-
"& .DatePicker-resetButton": { display: "none" }
|
|
64
|
-
},
|
|
65
|
-
children: [
|
|
66
|
-
/* @__PURE__ */ y(w, {
|
|
67
|
-
adapterLocale: z,
|
|
68
|
-
dateAdapter: T,
|
|
69
|
-
children: /* @__PURE__ */ y(V, {
|
|
70
|
-
disabled: s || _,
|
|
71
|
-
inputRef: I,
|
|
72
|
-
label: g,
|
|
73
|
-
loading: _,
|
|
74
|
-
onChange: R(n),
|
|
75
|
-
openTo: e === l.DATE_TIME ? void 0 : "year",
|
|
76
|
-
slotProps: { textField: {
|
|
77
|
-
className: (0, E.default)({ "Mui-warning": F }),
|
|
78
|
-
error: P,
|
|
79
|
-
onBlur: t,
|
|
80
|
-
slotProps: { inputLabel: { required: k } },
|
|
81
|
-
variant: "outlined"
|
|
82
|
-
} },
|
|
83
|
-
slots: { inputAdornment: (e) => /* @__PURE__ */ y(D, {
|
|
84
|
-
...e,
|
|
85
|
-
disabled: s,
|
|
86
|
-
loading: _,
|
|
87
|
-
onResetButtonClickRef: L
|
|
88
|
-
}) },
|
|
89
|
-
value: i,
|
|
90
|
-
views: B
|
|
91
|
-
})
|
|
92
|
-
}),
|
|
93
|
-
!!_ && /* @__PURE__ */ y(o, {}),
|
|
94
|
-
/* @__PURE__ */ y(h, {
|
|
95
|
-
sx: { ml: 0 },
|
|
96
|
-
children: /* @__PURE__ */ y(a, {
|
|
97
|
-
errorMessage: N,
|
|
98
|
-
infoMessage: p,
|
|
99
|
-
noIndent: !0,
|
|
100
|
-
warningMessage: A
|
|
101
|
-
})
|
|
102
|
-
})
|
|
103
|
-
]
|
|
104
|
-
})), [
|
|
105
|
-
V,
|
|
106
|
-
z,
|
|
107
|
-
e,
|
|
108
|
-
s,
|
|
109
|
-
N,
|
|
110
|
-
P,
|
|
111
|
-
F,
|
|
112
|
-
p,
|
|
113
|
-
g,
|
|
114
|
-
_,
|
|
115
|
-
v,
|
|
116
|
-
R,
|
|
117
|
-
k,
|
|
118
|
-
B,
|
|
119
|
-
A
|
|
120
|
-
])
|
|
121
|
-
});
|
|
122
|
-
};
|
|
123
|
-
//#endregion
|
|
124
|
-
export { O as t };
|
|
125
|
-
|
|
126
|
-
//# sourceMappingURL=DatePicker.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"DatePicker.js","names":[],"sources":["../../src/components/fields/DatePicker/DatePickerInputAdornment.tsx","../../src/components/fields/DatePicker/DatePicker.tsx"],"sourcesContent":["import type { RefObject } from 'react';\nimport type { InputAdornmentProps } from '@mui/material';\nimport {\n IconButton,\n InputAdornment,\n} from '@mui/material';\nimport ClearIcon from '@mui/icons-material/Clear';\nimport { useTranslation } from 'react-i18next';\nimport { TestIdUtil } from '@gen-epix/ui-core/utils/TestIdUtil';\n\nexport type DatePickerInputAdornmentProps = {\n readonly disabled: boolean;\n readonly loading: boolean;\n readonly onResetButtonClickRef: RefObject<() => void>;\n} & InputAdornmentProps;\n\nexport const DatePickerInputAdornment = ({\n children,\n disabled,\n loading,\n onResetButtonClickRef,\n ...props\n}: DatePickerInputAdornmentProps) => {\n const { t } = useTranslation();\n return (\n <InputAdornment {...props}>\n {!disabled && !loading && (\n <IconButton\n {...TestIdUtil.createAttributes('DatePicker-reset')}\n aria-label={t`Clear date field`}\n className={'DatePicker-resetButton'}\n // eslint-disable-next-line @eslint-react/kit/jsx-no-bind\n onClick={() => onResetButtonClickRef.current()}\n sx={{\n '& svg': {\n fontSize: '16px',\n },\n }}\n tabIndex={-1}\n >\n <ClearIcon />\n </IconButton>\n )}\n {children}\n </InputAdornment>\n );\n};\n","import type { ReactElement } from 'react';\nimport {\n useCallback,\n useMemo,\n useRef,\n} from 'react';\nimport {\n FormControl,\n FormHelperText,\n} from '@mui/material';\nimport type {\n ControllerRenderProps,\n FieldValues,\n Path,\n PathValue,\n UseControllerReturn,\n} from 'react-hook-form';\nimport {\n Controller,\n useFormContext,\n} from 'react-hook-form';\nimport type {\n DatePickerProps as MuiDatePickerProps,\n DateTimePickerProps as MuiDateTimePickerProps,\n} from '@mui/x-date-pickers';\nimport {\n LocalizationProvider,\n DatePicker as MuiDatePicker,\n DateTimePicker as MuiDateTimePicker,\n} from '@mui/x-date-pickers';\nimport classNames from 'classnames';\nimport type { Locale } from 'date-fns';\nimport {\n enUS,\n sv,\n} from 'date-fns/locale';\nimport { AdapterDateFns } from '@mui/x-date-pickers/AdapterDateFns';\nimport { TestIdUtil } from '@gen-epix/ui-core/utils/TestIdUtil';\nimport { DATE_FORMAT } from '@gen-epix/ui-core/constants/date';\n\nimport { FormUtil } from '../../../utils/FormUtil';\nimport { FormFieldHelperText } from '../../helpers/FormFieldHelperText';\nimport { FormFieldLoadingIndicator } from '../../helpers/FormFieldLoadingIndicator';\n\nimport { DatePickerInputAdornment } from './DatePickerInputAdornment';\n\n\nexport type DatePickerProps<TFieldValues extends FieldValues, TName extends Path<TFieldValues> = Path<TFieldValues>> = {\n readonly dateFormat?: typeof DATE_FORMAT[keyof typeof DATE_FORMAT];\n readonly disabled?: boolean;\n readonly infoMessage?: string;\n readonly label: string;\n readonly loading?: boolean;\n readonly name: TName;\n readonly onChange?: (value: Date) => void;\n readonly required?: boolean;\n readonly warningMessage?: string;\n};\n\nexport const DatePicker = <TFieldValues extends FieldValues, TName extends Path<TFieldValues> = Path<TFieldValues>>({\n dateFormat = DATE_FORMAT.DATE,\n disabled = false,\n infoMessage,\n label,\n loading = false,\n name,\n onChange: onChangeProp,\n required = false,\n warningMessage,\n}: DatePickerProps<TFieldValues, TName>): ReactElement => {\n const { control, formState: { errors } } = useFormContext<TFieldValues>();\n const errorMessage = FormUtil.getFieldErrorMessage(errors, name);\n const hasError = !!errorMessage;\n const hasWarning = !!warningMessage && !hasError;\n const inputRef = useRef<HTMLInputElement>(null);\n const onResetButtonClickRef = useRef<() => void>(() => undefined);\n\n const onMuiDatePickerChange = useCallback((onChange: ControllerRenderProps<TFieldValues, TName>['onChange']) =>\n (newValue: Date) => {\n if (onChangeProp) {\n onChangeProp(newValue);\n }\n onChange(newValue);\n }\n , [onChangeProp]);\n\n const customLocale = useMemo<Locale>(() => {\n /**\n * Use everything from enUS, but format dates the Swedish way (ISO 8601)\n */\n return {\n ...enUS,\n formatLong: sv.formatLong,\n };\n }, []);\n\n const views = useMemo<MuiDateTimePickerProps['views']>(() => {\n switch (dateFormat) {\n case DATE_FORMAT.DATE:\n case DATE_FORMAT.DATE_TIME:\n return undefined;\n case DATE_FORMAT.YEAR:\n return ['year'];\n case DATE_FORMAT.YEAR_MONTH:\n return ['year', 'month'];\n default:\n throw new Error(`Unsupported date format: ${dateFormat}`);\n }\n }, [dateFormat]);\n\n const MuiComponent = dateFormat === DATE_FORMAT.DATE_TIME ? MuiDateTimePicker : MuiDatePicker;\n\n const renderController = useCallback(({ field: { onBlur, onChange, ref, value } }: UseControllerReturn<TFieldValues, TName>) => {\n ref({\n focus: () => {\n inputRef?.current?.focus();\n },\n });\n\n onResetButtonClickRef.current = () => {\n onChange(null);\n };\n\n return (\n <FormControl\n {...TestIdUtil.createAttributes('DatePicker', { label, name })}\n fullWidth\n sx={{\n '&:hover .DatePicker-resetButton, &:focus-within .DatePicker-resetButton': {\n display: 'initial',\n },\n '& .DatePicker-resetButton': {\n display: 'none',\n },\n }}\n >\n <LocalizationProvider\n adapterLocale={customLocale}\n dateAdapter={AdapterDateFns}\n >\n <MuiComponent\n disabled={disabled || loading}\n inputRef={inputRef}\n label={label}\n loading={loading}\n onChange={onMuiDatePickerChange(onChange)}\n openTo={dateFormat === DATE_FORMAT.DATE_TIME ? undefined : 'year'}\n slotProps={{\n textField: {\n className: classNames({ 'Mui-warning': hasWarning }),\n error: hasError,\n onBlur,\n slotProps: {\n inputLabel: {\n required,\n },\n },\n variant: 'outlined',\n },\n }}\n slots={{\n inputAdornment: (props) => (\n <DatePickerInputAdornment\n {...props}\n disabled={disabled}\n loading={loading}\n onResetButtonClickRef={onResetButtonClickRef}\n />\n ),\n }}\n value={value}\n views={views as MuiDatePickerProps['views']}\n />\n </LocalizationProvider>\n {!!loading && <FormFieldLoadingIndicator />}\n <FormHelperText sx={{ ml: 0 }}>\n <FormFieldHelperText\n errorMessage={errorMessage}\n infoMessage={infoMessage}\n noIndent\n warningMessage={warningMessage}\n />\n </FormHelperText>\n </FormControl>\n );\n }, [MuiComponent, customLocale, dateFormat, disabled, errorMessage, hasError, hasWarning, infoMessage, label, loading, name, onMuiDatePickerChange, required, views, warningMessage]);\n\n return (\n <Controller\n control={control}\n defaultValue={'' as PathValue<TFieldValues, TName>}\n name={name}\n render={renderController}\n />\n );\n};\n"],"mappings":";;;;;;;;;;;;;;;;;mCAgBA,KAAA,EAAA,aAAA,aAAA,YAAA,0BAAA,GAAA,QAAA;;;;;;;;;;;;;;AA8BA,GCaa,KAAuG,EAClH,gBAAa,EAAY,MACzB,cAAW,IACX,gBACA,UACA,aAAU,IACV,SACA,UAAU,GACV,cAAW,IACX,wBACwD;CACxD,IAAM,EAAE,YAAS,WAAW,EAAE,gBAAa,EAA6B,GAClE,IAAe,EAAS,qBAAqB,GAAQ,CAAI,GACzD,IAAW,CAAC,CAAC,GACb,IAAa,CAAC,CAAC,KAAkB,CAAC,GAClC,IAAW,EAAyB,IAAI,GACxC,IAAwB,QAAyB,KAAA,CAAS,GAE1D,IAAwB,GAAa,OACxC,MAAmB;EAIlB,AAHI,KACF,EAAa,CAAQ,GAEvB,EAAS,CAAQ;CACnB,GACA,CAAC,CAAY,CAAC,GAEV,IAAe,SAIZ;EACL,GAAG;EACH,YAAY,EAAG;CACjB,IACC,CAAC,CAAC,GAEC,IAAQ,QAA+C;EAC3D,QAAQ,GAAR;GACE,KAAK,EAAY;GACjB,KAAK,EAAY,WACf;GACF,KAAK,EAAY,MACf,OAAO,CAAC,MAAM;GAChB,KAAK,EAAY,YACf,OAAO,CAAC,QAAQ,OAAO;GACzB,SACE,MAAU,MAAM,4BAA4B,GAAY;EAC5D;CACF,GAAG,CAAC,CAAU,CAAC,GAET,IAAe,MAAe,EAAY,YAAY,IAAoB;CA6EhF,OACE,kBAAC,GAAD;EACW;EACT,cAAc;EACR;EACN,QAhFqB,GAAa,EAAE,OAAO,EAAE,WAAQ,aAAU,QAAK,kBACtE,EAAI,EACF,aAAa;GACX,GAAU,SAAS,MAAM;EAC3B,EACF,CAAC,GAED,EAAsB,gBAAgB;GACpC,EAAS,IAAI;EACf,GAGE,kBAAC,GAAD;GACE,GAAI,EAAW,iBAAiB,cAAc;IAAE;IAAO;GAAK,CAAC;GAC7D,WAAA;GACA,IAAI;IACF,2EAA2E,EACzE,SAAS,UACX;IACA,6BAA6B,EAC3B,SAAS,OACX;GACF;aAVF;IAYE,kBAAC,GAAD;KACE,eAAe;KACf,aAAa;eAEb,kBAAC,GAAD;MACE,UAAU,KAAY;MACZ;MACH;MACE;MACT,UAAU,EAAsB,CAAQ;MACxC,QAAQ,MAAe,EAAY,YAAY,KAAA,IAAY;MAC3D,WAAW,EACT,WAAW;OACT,YAAA,GAAA,EAAA,QAAA,CAAsB,EAAE,eAAe,EAAW,CAAC;OACnD,OAAO;OACP;OACA,WAAW,EACT,YAAY,EACV,YACF,EACF;OACA,SAAS;MACX,EACF;MACA,OAAO,EACL,iBAAiB,MACf,kBAAC,GAAD;OACE,GAAI;OACM;OACD;OACc;MACxB,CAAA,EAEL;MACO;MACA;KACR,CAAA;IACmB,CAAA;IACrB,CAAC,CAAC,KAAW,kBAAC,GAAD,CAA4B,CAAA;IAC1C,kBAAC,GAAD;KAAgB,IAAI,EAAE,IAAI,EAAE;eAC1B,kBAAC,GAAD;MACgB;MACD;MACb,UAAA;MACgB;KACjB,CAAA;IACa,CAAA;GACL;OAEd;GAAC;GAAc;GAAc;GAAY;GAAU;GAAc;GAAU;GAAY;GAAa;GAAO;GAAS;GAAM;GAAuB;GAAU;GAAO;EAAc,CAOvK;CACT,CAAA;AAEL"}
|