@producteca/producteca-ui-kit 1.20.0 → 1.21.1-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/alert/alert.js +37 -0
- package/dist/components/breadcrumb/breadcrumb.js +33 -0
- package/dist/components/breadcrumb/index.js +2 -0
- package/dist/components/button/button.js +34 -0
- package/dist/components/chip/chip.js +27 -0
- package/dist/components/chip/index.js +1 -0
- package/dist/components/icons/customIcon/customIcon.js +41 -0
- package/dist/components/icons/fileIcon/fileIcon.js +14 -0
- package/dist/components/icons/{index.d.ts → index.js} +1 -1
- package/dist/components/icons/mailIcon/mailIcon.js +14 -0
- package/dist/components/icons/parameters.js +26 -0
- package/dist/components/icons/priceCloseIcon/priceCloseIcon.js +14 -0
- package/dist/components/icons/priceDownIcon/priceDownIcon.js +14 -0
- package/dist/components/icons/searchPublication/searchPublication.js +14 -0
- package/dist/components/image/image.js +26 -0
- package/dist/components/image/index.js +1 -0
- package/dist/components/{index.d.ts → index.js} +1 -0
- package/dist/components/inputs/checkboxInput/checkboxInput.js +35 -0
- package/dist/components/inputs/checkboxInput/checkboxInputGroup.js +58 -0
- package/dist/components/inputs/checkboxInput/{index.d.ts → index.js} +1 -2
- package/dist/components/inputs/datePicker/datePicker.js +143 -0
- package/dist/components/inputs/datePicker/datePickerCustomStyles.js +145 -0
- package/dist/components/inputs/datePicker/datePickerTypes.js +1 -0
- package/dist/components/inputs/datePicker/datePickerUtils.js +109 -0
- package/dist/components/inputs/datePicker/index.js +2 -0
- package/dist/components/inputs/dateRangePicker/dateFormater.js +28 -0
- package/dist/components/inputs/dateRangePicker/dateRangePicker.js +118 -0
- package/dist/components/inputs/dateRangePicker/dateRangePickerTypes.js +1 -0
- package/dist/components/inputs/dateRangePicker/dateRangePickerUtils.js +67 -0
- package/dist/components/inputs/dateRangePicker/index.js +2 -0
- package/dist/components/inputs/formField/formField.js +35 -0
- package/dist/components/inputs/formField/passwordInput.js +22 -0
- package/dist/components/inputs/formField/textInput.js +79 -0
- package/dist/components/inputs/{index.d.ts → index.js} +1 -1
- package/dist/components/inputs/searcher/searcher.js +112 -0
- package/dist/components/inputs/selectField/selectField.js +183 -0
- package/dist/components/inputs/switchInput/index.js +2 -0
- package/dist/components/inputs/switchInput/switchInput.js +77 -0
- package/dist/components/loaders/index.js +2 -0
- package/dist/components/loaders/progressbar/progressbar.js +37 -0
- package/dist/components/loaders/spinner/spinner.js +15 -0
- package/dist/components/menuAction/index.js +1 -0
- package/dist/components/menuAction/menuAction.js +67 -0
- package/dist/components/menuAction/menuActionCustomStyles.js +13 -0
- package/dist/components/modals/index.js +1 -0
- package/dist/components/modals/warningModal/index.js +1 -0
- package/dist/components/modals/warningModal/warningModal.js +41 -0
- package/dist/components/patterns/actionBar/actionBar.js +38 -0
- package/dist/components/patterns/copyButton/copyButton.js +69 -0
- package/dist/components/patterns/copyButton/index.js +1 -0
- package/dist/components/patterns/emptyState/emptyState.js +17 -0
- package/dist/components/patterns/headerSection/headerSection.js +17 -0
- package/dist/components/patterns/headerSection/index.js +1 -0
- package/dist/components/patterns/iconWithIdentifier/iconWithIdentifier.js +12 -0
- package/dist/components/patterns/iconWithIdentifier/index.js +1 -0
- package/dist/components/patterns/{index.d.ts → index.js} +1 -1
- package/dist/components/patterns/linkWithIcon/index.js +1 -0
- package/dist/components/patterns/linkWithIcon/linkWithIcon.js +26 -0
- package/dist/components/tabs/index.js +1 -0
- package/dist/components/tabs/tabs.js +70 -0
- package/dist/components/tooltip/index.js +2 -0
- package/dist/components/tooltip/overflowChecker.js +27 -0
- package/dist/components/tooltip/tooltip.js +97 -0
- package/dist/hooks/useReduxFormField.js +34 -0
- package/dist/{index.d.ts → index.js} +1 -1
- package/dist/locales/description.js +15 -0
- package/dist/locales/es.js +227 -0
- package/dist/locales/index.js +2 -0
- package/dist/locales/translator.js +20 -0
- package/dist/producteca-ui-kit.cjs.js +3 -0
- package/dist/producteca-ui-kit.es.js +3 -53447
- package/dist/producteca-ui-kit.umd.js +9 -604
- package/dist/styles/colors.js +67 -0
- package/dist/styles/styles/colors.tsx +88 -0
- package/dist/styles/styles/global.module.scss +85 -0
- package/dist/styles/styles/theme.tsx +24 -0
- package/dist/styles/styles/variables.module.scss +74 -0
- package/dist/styles/theme.js +22 -0
- package/dist/validators/errorMessage.js +15 -0
- package/dist/validators/index.js +2 -0
- package/dist/validators/validation.js +25 -0
- package/package.json +42 -4
- package/dist/components/alert/alert.d.ts +0 -17
- package/dist/components/breadcrumb/breadcrumb.d.ts +0 -15
- package/dist/components/breadcrumb/index.d.ts +0 -2
- package/dist/components/button/button.d.ts +0 -17
- package/dist/components/chip/chip.d.ts +0 -13
- package/dist/components/chip/index.d.ts +0 -2
- package/dist/components/icons/customIcon/customIcon.d.ts +0 -16
- package/dist/components/icons/fileIcon/fileIcon.d.ts +0 -5
- package/dist/components/icons/mailIcon/mailIcon.d.ts +0 -5
- package/dist/components/icons/parameters.d.ts +0 -51
- package/dist/components/icons/priceCloseIcon/priceCloseIcon.d.ts +0 -5
- package/dist/components/icons/priceDownIcon/priceDownIcon.d.ts +0 -5
- package/dist/components/icons/searchPublication/searchPublication.d.ts +0 -5
- package/dist/components/image/image.d.ts +0 -11
- package/dist/components/image/index.d.ts +0 -1
- package/dist/components/inputs/checkboxInput/checkboxInput.d.ts +0 -9
- package/dist/components/inputs/checkboxInput/checkboxInputGroup.d.ts +0 -22
- package/dist/components/inputs/datePicker/datePicker.d.ts +0 -5
- package/dist/components/inputs/datePicker/datePickerCustomStyles.d.ts +0 -8
- package/dist/components/inputs/datePicker/datePickerTypes.d.ts +0 -14
- package/dist/components/inputs/datePicker/datePickerUtils.d.ts +0 -68
- package/dist/components/inputs/datePicker/index.d.ts +0 -3
- package/dist/components/inputs/dateRangePicker/dateFormater.d.ts +0 -7
- package/dist/components/inputs/dateRangePicker/dateRangePicker.d.ts +0 -5
- package/dist/components/inputs/dateRangePicker/dateRangePickerTypes.d.ts +0 -14
- package/dist/components/inputs/dateRangePicker/dateRangePickerUtils.d.ts +0 -9
- package/dist/components/inputs/dateRangePicker/index.d.ts +0 -4
- package/dist/components/inputs/formField/formField.d.ts +0 -10
- package/dist/components/inputs/formField/passwordInput.d.ts +0 -4
- package/dist/components/inputs/formField/textInput.d.ts +0 -25
- package/dist/components/inputs/searcher/searcher.d.ts +0 -28
- package/dist/components/inputs/selectField/selectField.d.ts +0 -42
- package/dist/components/inputs/switchInput/index.d.ts +0 -4
- package/dist/components/inputs/switchInput/switchInput.d.ts +0 -31
- package/dist/components/loaders/index.d.ts +0 -2
- package/dist/components/loaders/progressbar/progressbar.d.ts +0 -8
- package/dist/components/loaders/spinner/spinner.d.ts +0 -6
- package/dist/components/menuAction/index.d.ts +0 -1
- package/dist/components/menuAction/menuAction.d.ts +0 -18
- package/dist/components/menuAction/menuActionCustomStyles.d.ts +0 -4
- package/dist/components/modals/index.d.ts +0 -1
- package/dist/components/modals/warningModal/index.d.ts +0 -1
- package/dist/components/modals/warningModal/warningModal.d.ts +0 -17
- package/dist/components/patterns/actionBar/actionBar.d.ts +0 -26
- package/dist/components/patterns/copyButton/copyButton.d.ts +0 -11
- package/dist/components/patterns/copyButton/index.d.ts +0 -1
- package/dist/components/patterns/emptyState/emptyState.d.ts +0 -11
- package/dist/components/patterns/headerSection/headerSection.d.ts +0 -14
- package/dist/components/patterns/headerSection/index.d.ts +0 -1
- package/dist/components/patterns/iconWithIdentifier/iconWithIdentifier.d.ts +0 -11
- package/dist/components/patterns/iconWithIdentifier/index.d.ts +0 -1
- package/dist/components/patterns/linkWithIcon/index.d.ts +0 -1
- package/dist/components/patterns/linkWithIcon/linkWithIcon.d.ts +0 -14
- package/dist/components/tooltip/index.d.ts +0 -3
- package/dist/components/tooltip/overflowChecker.d.ts +0 -5
- package/dist/components/tooltip/tooltip.d.ts +0 -20
- package/dist/favicon.svg +0 -43
- package/dist/hooks/useReduxFormField.d.ts +0 -26
- package/dist/locales/description.d.ts +0 -15
- package/dist/locales/es.d.ts +0 -222
- package/dist/locales/index.d.ts +0 -2
- package/dist/locales/translator.d.ts +0 -3
- package/dist/style.css +0 -1
- package/dist/styles/colors.d.ts +0 -25
- package/dist/styles/theme.d.ts +0 -2
- package/dist/validators/errorMessage.d.ts +0 -5
- package/dist/validators/index.d.ts +0 -2
- package/dist/validators/validation.d.ts +0 -21
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
export var datePickerLayoutStyles = {
|
|
2
|
+
'& .MuiDayCalendar-slideTransition': {
|
|
3
|
+
minHeight: '200px'
|
|
4
|
+
},
|
|
5
|
+
'& .MuiDialogActions-root': {
|
|
6
|
+
display: 'none'
|
|
7
|
+
},
|
|
8
|
+
'& .MuiPickersLayout-actionBar': {
|
|
9
|
+
display: 'none'
|
|
10
|
+
},
|
|
11
|
+
'& .MuiDateCalendar-root': {
|
|
12
|
+
height: 'min-content !important'
|
|
13
|
+
},
|
|
14
|
+
'& .MuiPickersCalendarHeader-label': {
|
|
15
|
+
fontFamily: "Poppins, Open Sans, Helvetica, Arial, sans-serif",
|
|
16
|
+
fontSize: '14px',
|
|
17
|
+
color: '#797979',
|
|
18
|
+
fontWeight: 600,
|
|
19
|
+
textTransform: 'capitalize'
|
|
20
|
+
},
|
|
21
|
+
'& .MuiDayCalendar-weekDayLabel': {
|
|
22
|
+
fontFamily: "Poppins, Open Sans, Helvetica, Arial, sans-serif",
|
|
23
|
+
fontSize: '12px',
|
|
24
|
+
color: '#797979',
|
|
25
|
+
fontWeight: 600
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
export var datePickerInputStyles = {
|
|
29
|
+
'& .MuiOutlinedInput-root': {
|
|
30
|
+
'&:hover': {
|
|
31
|
+
'& .MuiOutlinedInput-notchedOutline': {
|
|
32
|
+
borderColor: '#ACACAC'
|
|
33
|
+
}
|
|
34
|
+
},
|
|
35
|
+
'&.Mui-focused': {
|
|
36
|
+
'& .MuiOutlinedInput-notchedOutline': {
|
|
37
|
+
borderColor: '#252525'
|
|
38
|
+
}
|
|
39
|
+
},
|
|
40
|
+
'&.Mui-disabled': {
|
|
41
|
+
'& .MuiOutlinedInput-notchedOutline': {
|
|
42
|
+
borderColor: '#D7D7D7'
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
};
|
|
47
|
+
export var datePickerDayStyles = {
|
|
48
|
+
fontFamily: "Poppins, Open Sans, Helvetica, Arial, sans-serif",
|
|
49
|
+
fontSize: '12px',
|
|
50
|
+
backgroundColor: 'white',
|
|
51
|
+
color: '#252525',
|
|
52
|
+
borderRadius: '4px',
|
|
53
|
+
'&.MuiPickersDay-root': {
|
|
54
|
+
fontSize: '14px',
|
|
55
|
+
textTransform: 'capitalize'
|
|
56
|
+
},
|
|
57
|
+
'&.MuiPickersDay-today': {
|
|
58
|
+
backgroundColor: 'white',
|
|
59
|
+
color: '#252525',
|
|
60
|
+
border: '1px solid #252525'
|
|
61
|
+
},
|
|
62
|
+
'&.Mui-selected': {
|
|
63
|
+
backgroundColor: '#0066ff',
|
|
64
|
+
color: 'white',
|
|
65
|
+
border: 'none',
|
|
66
|
+
'&:hover': {
|
|
67
|
+
backgroundColor: '#0066ff',
|
|
68
|
+
borderColor: 'none'
|
|
69
|
+
},
|
|
70
|
+
'&:focus': {
|
|
71
|
+
backgroundColor: '#0066ff',
|
|
72
|
+
borderColor: 'none'
|
|
73
|
+
}
|
|
74
|
+
},
|
|
75
|
+
'&:hover:not(.Mui-selected)': {
|
|
76
|
+
color: '#252525',
|
|
77
|
+
backgroundColor: '#EDEDED',
|
|
78
|
+
borderColor: 'none'
|
|
79
|
+
}
|
|
80
|
+
};
|
|
81
|
+
export var datePickerDigitalClockStyles = {
|
|
82
|
+
'& .MuiMultiSectionDigitalClock-root': {
|
|
83
|
+
'& .MuiList-root.MuiList-padding.MuiMultiSectionDigitalClockSection-root': {
|
|
84
|
+
'&::after': {
|
|
85
|
+
display: 'none'
|
|
86
|
+
}
|
|
87
|
+
},
|
|
88
|
+
'& .MuiButtonBase-root.MuiMenuItem-root.MuiMenuItem-gutters': {
|
|
89
|
+
fontFamily: "Poppins, Open Sans, Helvetica, Arial, sans-serif",
|
|
90
|
+
backgroundColor: 'white',
|
|
91
|
+
color: '#252525',
|
|
92
|
+
borderRadius: '4px',
|
|
93
|
+
width: '32px',
|
|
94
|
+
height: '32px',
|
|
95
|
+
margin: '4px 0 0 4px',
|
|
96
|
+
fontSize: ' 14px',
|
|
97
|
+
'&.Mui-selected': {
|
|
98
|
+
backgroundColor: '#0066ff',
|
|
99
|
+
color: 'white',
|
|
100
|
+
'&:hover': {
|
|
101
|
+
backgroundColor: '#0066ff'
|
|
102
|
+
},
|
|
103
|
+
'&:focus': {
|
|
104
|
+
backgroundColor: '#0066ff'
|
|
105
|
+
}
|
|
106
|
+
},
|
|
107
|
+
'&:hover:not(.Mui-selected)': {
|
|
108
|
+
color: '#252525',
|
|
109
|
+
backgroundColor: '#EDEDED'
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
};
|
|
114
|
+
export var datePickerYearStyles = {
|
|
115
|
+
'& .MuiYearCalendar-root': {
|
|
116
|
+
'& .MuiPickersYear-root': {
|
|
117
|
+
'& .MuiPickersYear-yearButton': {
|
|
118
|
+
fontFamily: "Poppins, Open Sans, Helvetica, Arial, sans-serif",
|
|
119
|
+
fontSize: '14px',
|
|
120
|
+
backgroundColor: 'white',
|
|
121
|
+
color: '#252525',
|
|
122
|
+
borderRadius: '4px',
|
|
123
|
+
'&.Mui-selected': {
|
|
124
|
+
backgroundColor: '#0066ff',
|
|
125
|
+
color: 'white',
|
|
126
|
+
'&:hover': {
|
|
127
|
+
backgroundColor: '#0066ff'
|
|
128
|
+
},
|
|
129
|
+
'&:focus': {
|
|
130
|
+
backgroundColor: '#0066ff'
|
|
131
|
+
}
|
|
132
|
+
},
|
|
133
|
+
'&:hover:not(.Mui-selected)': {
|
|
134
|
+
backgroundColor: '#EDEDED',
|
|
135
|
+
color: '#252525'
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
};
|
|
141
|
+
export var datePickerPopperStyles = {
|
|
142
|
+
'& .MuiPickersPopper-paper': {
|
|
143
|
+
boxShadow: '0px 5px 5px -3px rgb(205 205 205 / 20%), 0px 8px 14px 1px rgb(165 165 165 / 14%), 0px 3px 14px 2px rgb(219 219 219 / 6%)'
|
|
144
|
+
}
|
|
145
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { TextField } from '@mui/material';
|
|
3
|
+
import CalendarTodayIcon from '@mui/icons-material/CalendarToday';
|
|
4
|
+
import CloseRoundedIcon from '@mui/icons-material/CloseRounded';
|
|
5
|
+
import dayjs from 'dayjs';
|
|
6
|
+
import customParseFormat from 'dayjs/plugin/customParseFormat';
|
|
7
|
+
import CustomIcon from '../../icons/customIcon/customIcon';
|
|
8
|
+
import styles from './datePicker.module.scss';
|
|
9
|
+
import { datePickerLayoutStyles, datePickerDayStyles, datePickerDigitalClockStyles, datePickerYearStyles, datePickerInputStyles, datePickerPopperStyles } from './datePickerCustomStyles';
|
|
10
|
+
import { omit, includes } from "lodash";
|
|
11
|
+
import locale from '../../../locales';
|
|
12
|
+
dayjs.extend(customParseFormat);
|
|
13
|
+
export var ActionComponent = function ActionComponent(_ref) {
|
|
14
|
+
var showClearIcon = _ref.showClearIcon,
|
|
15
|
+
onClear = _ref.onClear,
|
|
16
|
+
onOpen = _ref.onOpen;
|
|
17
|
+
return _jsxs("div", { className: styles['calendar-icon-container'], children: [showClearIcon && _jsx("div", { onClick: onClear, className: styles['clear-icon'], children: _jsx(CustomIcon, { children: _jsx(CloseRoundedIcon, {}) }) }), _jsx("div", { className: styles['divider-line'] }), _jsx("div", { onClick: onOpen, className: styles['calendar-icon'], children: _jsx(CustomIcon, { size: "12", children: _jsx(CalendarTodayIcon, {}) }) })] });
|
|
18
|
+
};
|
|
19
|
+
export var getPickerTypeFromFormat = function getPickerTypeFromFormat(format) {
|
|
20
|
+
if (!format) {
|
|
21
|
+
return 'date';
|
|
22
|
+
}
|
|
23
|
+
if (/^Y+$/.test(format)) {
|
|
24
|
+
return 'year';
|
|
25
|
+
}
|
|
26
|
+
if (/^[Hhms:]+$/.test(format)) {
|
|
27
|
+
return 'time';
|
|
28
|
+
}
|
|
29
|
+
if (includes(format, 'H') || includes(format, 'h') || includes(format, 'm') || includes(format, 's')) {
|
|
30
|
+
return 'dateTime';
|
|
31
|
+
}
|
|
32
|
+
return 'date';
|
|
33
|
+
};
|
|
34
|
+
export var getFinalFormat = function getFinalFormat(format) {
|
|
35
|
+
if (format) return format;
|
|
36
|
+
return 'DD/MM/YYYY';
|
|
37
|
+
};
|
|
38
|
+
export var getPlaceholderByFormat = function getPlaceholderByFormat(format, customPlaceholder) {
|
|
39
|
+
if (customPlaceholder) return customPlaceholder;
|
|
40
|
+
var pickerType = getPickerTypeFromFormat(format);
|
|
41
|
+
switch (pickerType) {
|
|
42
|
+
case 'year':
|
|
43
|
+
return locale("datePicker.selectYear");
|
|
44
|
+
case 'time':
|
|
45
|
+
return locale("datePicker.selectTime");
|
|
46
|
+
case 'dateTime':
|
|
47
|
+
return locale("datePicker.selectDateTime");
|
|
48
|
+
case 'date':
|
|
49
|
+
default:
|
|
50
|
+
return locale("datePicker.selectDate");
|
|
51
|
+
}
|
|
52
|
+
};
|
|
53
|
+
export var convertToDate = function convertToDate(val, format) {
|
|
54
|
+
if (!val) return null;
|
|
55
|
+
if (typeof val === 'string') {
|
|
56
|
+
var parsed = dayjs(val, format, true);
|
|
57
|
+
return parsed.isValid() ? parsed : null;
|
|
58
|
+
}
|
|
59
|
+
if (val instanceof Date) {
|
|
60
|
+
return dayjs(val);
|
|
61
|
+
}
|
|
62
|
+
if (typeof val === 'number') {
|
|
63
|
+
return dayjs(val);
|
|
64
|
+
}
|
|
65
|
+
return null;
|
|
66
|
+
};
|
|
67
|
+
export var getPickerProps = function getPickerProps(_ref2) {
|
|
68
|
+
var currentValue = _ref2.currentValue,
|
|
69
|
+
finalFormat = _ref2.finalFormat,
|
|
70
|
+
onChange = _ref2.onChange,
|
|
71
|
+
disabled = _ref2.disabled,
|
|
72
|
+
minDate = _ref2.minDate,
|
|
73
|
+
maxDate = _ref2.maxDate,
|
|
74
|
+
placeholder = _ref2.placeholder,
|
|
75
|
+
name = _ref2.name,
|
|
76
|
+
otherProps = _ref2.otherProps,
|
|
77
|
+
onClear = _ref2.onClear,
|
|
78
|
+
onOpen = _ref2.onOpen,
|
|
79
|
+
onClose = _ref2.onClose,
|
|
80
|
+
open = _ref2.open;
|
|
81
|
+
return {
|
|
82
|
+
open: open,
|
|
83
|
+
value: convertToDate(currentValue, finalFormat),
|
|
84
|
+
onAccept: onChange,
|
|
85
|
+
onClose: onClose,
|
|
86
|
+
disabled: disabled,
|
|
87
|
+
minDate: minDate ? dayjs(minDate) : undefined,
|
|
88
|
+
maxDate: maxDate ? dayjs(maxDate) : undefined,
|
|
89
|
+
format: finalFormat,
|
|
90
|
+
slots: {
|
|
91
|
+
textField: TextField
|
|
92
|
+
},
|
|
93
|
+
slotProps: {
|
|
94
|
+
textField: Object.assign({ placeholder: getPlaceholderByFormat(finalFormat, placeholder), name: name, onClick: onOpen, variant: 'outlined', fullWidth: true, className: styles['date-input'], sx: datePickerInputStyles, InputProps: {
|
|
95
|
+
style: { cursor: 'pointer' },
|
|
96
|
+
endAdornment: _jsx(ActionComponent, { showClearIcon: !!currentValue, onClear: onClear, onOpen: onOpen })
|
|
97
|
+
} }, omit(otherProps, "type")),
|
|
98
|
+
layout: {
|
|
99
|
+
sx: Object.assign(Object.assign(Object.assign({}, datePickerLayoutStyles), datePickerDigitalClockStyles), datePickerYearStyles)
|
|
100
|
+
},
|
|
101
|
+
day: {
|
|
102
|
+
sx: datePickerDayStyles
|
|
103
|
+
},
|
|
104
|
+
popper: {
|
|
105
|
+
sx: datePickerPopperStyles
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
};
|
|
109
|
+
};
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import _ from "lodash";
|
|
2
|
+
export var formatDate = function formatDate(date, format) {
|
|
3
|
+
var _pad = function _pad(n) {
|
|
4
|
+
return _.padStart(String(n), 2, "0");
|
|
5
|
+
};
|
|
6
|
+
var map = {
|
|
7
|
+
YYYY: String(date.getFullYear()),
|
|
8
|
+
MM: _pad(date.getMonth() + 1),
|
|
9
|
+
DD: _pad(date.getDate()),
|
|
10
|
+
HH: _pad(date.getHours()),
|
|
11
|
+
mm: _pad(date.getMinutes()),
|
|
12
|
+
ss: _pad(date.getSeconds())
|
|
13
|
+
};
|
|
14
|
+
return _.reduce(map, function (acc, value, token) {
|
|
15
|
+
return _.replace(acc, token, value);
|
|
16
|
+
}, format);
|
|
17
|
+
};
|
|
18
|
+
export var formatRangeLimits = function formatRangeLimits(range) {
|
|
19
|
+
if (!range) return undefined;
|
|
20
|
+
var from = new Date(range.from);
|
|
21
|
+
from.setHours(0, 0, 0);
|
|
22
|
+
var to = new Date(range.to);
|
|
23
|
+
to.setHours(23, 59, 59);
|
|
24
|
+
return {
|
|
25
|
+
from: from,
|
|
26
|
+
to: to
|
|
27
|
+
};
|
|
28
|
+
};
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
import _slicedToArray from "babel-runtime/helpers/slicedToArray";
|
|
2
|
+
var __rest = this && this.__rest || function (s, e) {
|
|
3
|
+
var t = {};
|
|
4
|
+
for (var p in s) {
|
|
5
|
+
if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
|
|
6
|
+
}if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
7
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
12
|
+
import { useState } from 'react';
|
|
13
|
+
import { DayPicker } from 'react-day-picker';
|
|
14
|
+
import * as Popover from '@radix-ui/react-popover';
|
|
15
|
+
import { es } from "react-day-picker/locale";
|
|
16
|
+
import { ErrorMessage, formValidation } from '../../../validators';
|
|
17
|
+
import { useReduxFormField } from '../../../hooks/useReduxFormField';
|
|
18
|
+
import styles from './dateRangePicker.module.scss';
|
|
19
|
+
import errorStyles from '../../../validators/errorMessage.module.scss';
|
|
20
|
+
import { FormField } from "../formField/formField";
|
|
21
|
+
import clsx from 'clsx';
|
|
22
|
+
import 'react-day-picker/dist/style.css';
|
|
23
|
+
import { CustomWeekday, fromInputValue, getDisplayRange, getDisabledDays } from './dateRangePickerUtils';
|
|
24
|
+
import { ActionComponent } from '../datePicker/datePickerUtils';
|
|
25
|
+
import { formatRangeLimits } from "./dateFormater";
|
|
26
|
+
export var DateRangePickerInput = function DateRangePickerInput(props) {
|
|
27
|
+
var _a;
|
|
28
|
+
|
|
29
|
+
var meta = props.meta,
|
|
30
|
+
name = props.name,
|
|
31
|
+
_props$value = props.value,
|
|
32
|
+
value = _props$value === undefined ? null : _props$value,
|
|
33
|
+
_props$disabled = props.disabled,
|
|
34
|
+
disabled = _props$disabled === undefined ? false : _props$disabled,
|
|
35
|
+
_props$required = props.required,
|
|
36
|
+
required = _props$required === undefined ? false : _props$required,
|
|
37
|
+
placeholder = props.placeholder,
|
|
38
|
+
_props$size = props.size,
|
|
39
|
+
size = _props$size === undefined ? 'md' : _props$size,
|
|
40
|
+
_props$noErrors = props.noErrors,
|
|
41
|
+
noErrors = _props$noErrors === undefined ? false : _props$noErrors,
|
|
42
|
+
label = props.label,
|
|
43
|
+
_props$format = props.format,
|
|
44
|
+
format = _props$format === undefined ? 'DD/MM/YYYY' : _props$format,
|
|
45
|
+
isValid = props.isValid,
|
|
46
|
+
onChange = props.onChange,
|
|
47
|
+
input = props.input,
|
|
48
|
+
minDate = props.minDate,
|
|
49
|
+
maxDate = props.maxDate,
|
|
50
|
+
otherProps = __rest(props, ["meta", "name", "value", "disabled", "required", "placeholder", "size", "noErrors", "label", "format", "isValid", "onChange", "input", "minDate", "maxDate"]);
|
|
51
|
+
|
|
52
|
+
var currentValue = (_a = input === null || input === void 0 ? void 0 : input.value) !== null && _a !== void 0 ? _a : value;
|
|
53
|
+
var validationProps = { meta: meta, value: currentValue, isValid: isValid, required: props.required };
|
|
54
|
+
var validated = formValidation(validationProps);
|
|
55
|
+
|
|
56
|
+
var _useReduxFormField = useReduxFormField({
|
|
57
|
+
input: input,
|
|
58
|
+
onChange: onChange ? function (range) {
|
|
59
|
+
var syntheticEvent = {
|
|
60
|
+
target: {
|
|
61
|
+
value: formatRangeLimits(range),
|
|
62
|
+
name: name
|
|
63
|
+
}
|
|
64
|
+
};
|
|
65
|
+
onChange(syntheticEvent);
|
|
66
|
+
} : undefined
|
|
67
|
+
}),
|
|
68
|
+
fieldHandleChange = _useReduxFormField.handleChange,
|
|
69
|
+
handleBlur = _useReduxFormField.handleBlur;
|
|
70
|
+
|
|
71
|
+
var handleSelect = function handleSelect(range) {
|
|
72
|
+
fieldHandleChange(range);
|
|
73
|
+
if ((range === null || range === void 0 ? void 0 : range.from) && (range === null || range === void 0 ? void 0 : range.to) && (range === null || range === void 0 ? void 0 : range.from) !== (range === null || range === void 0 ? void 0 : range.to)) {
|
|
74
|
+
setIsOpen(false);
|
|
75
|
+
}
|
|
76
|
+
};
|
|
77
|
+
var handleClear = function handleClear() {
|
|
78
|
+
fieldHandleChange(undefined);
|
|
79
|
+
};
|
|
80
|
+
var selectedRange = fromInputValue(currentValue);
|
|
81
|
+
var displayValue = getDisplayRange(selectedRange, format);
|
|
82
|
+
|
|
83
|
+
var _useState = useState(false),
|
|
84
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
85
|
+
isOpen = _useState2[0],
|
|
86
|
+
setIsOpen = _useState2[1];
|
|
87
|
+
|
|
88
|
+
var getInitialMonth = function getInitialMonth() {
|
|
89
|
+
return (selectedRange === null || selectedRange === void 0 ? void 0 : selectedRange.from) || (selectedRange === null || selectedRange === void 0 ? void 0 : selectedRange.to) || new Date();
|
|
90
|
+
};
|
|
91
|
+
return _jsxs("div", { className: clsx(styles['date-range-picker'], styles[size], validated ? errorStyles[validated] : '', disabled ? styles['disabled'] : '', isOpen ? styles['focused'] : ''), children: [_jsxs(Popover.Root, { open: isOpen && !disabled, onOpenChange: setIsOpen, children: [_jsx(Popover.Trigger, { asChild: true, children: _jsxs("div", { className: styles['input-wrapper'], children: [_jsx("input", Object.assign({ type: "text", name: name, value: displayValue, placeholder: placeholder || format, readOnly: true, onBlur: handleBlur }, otherProps)), _jsx(ActionComponent, { onOpen: function onOpen() {
|
|
92
|
+
return setIsOpen(!isOpen);
|
|
93
|
+
}, showClearIcon: !!displayValue, onClear: handleClear })] }) }), _jsx(Popover.Portal, { children: _jsx(Popover.Content, { className: styles['popover-content'], sideOffset: 4, align: "start", side: "bottom", avoidCollisions: true, collisionPadding: 8, children: _jsx(DayPicker, { mode: "range", locale: es, selected: selectedRange, onSelect: handleSelect, numberOfMonths: 2, defaultMonth: getInitialMonth(), disabled: getDisabledDays(disabled, minDate, maxDate), className: styles['day-picker'], animate: true, classNames: {
|
|
94
|
+
months: styles['months'],
|
|
95
|
+
month: styles['month'],
|
|
96
|
+
month_caption: styles['month-caption'],
|
|
97
|
+
nav: styles['nav'],
|
|
98
|
+
weekdays: styles['weekdays'],
|
|
99
|
+
weekday: styles['weekday'],
|
|
100
|
+
week: styles['week'],
|
|
101
|
+
day: styles['day'],
|
|
102
|
+
selected: styles['selected'],
|
|
103
|
+
range_start: styles['range-start'],
|
|
104
|
+
range_middle: styles['range-middle'],
|
|
105
|
+
range_end: styles['range-end'],
|
|
106
|
+
disabled: styles['disabled']
|
|
107
|
+
}, components: {
|
|
108
|
+
Weekday: CustomWeekday
|
|
109
|
+
} }) }) })] }), !noErrors && _jsx(ErrorMessage, { validationProps: validationProps })] });
|
|
110
|
+
};
|
|
111
|
+
export var DateRangePicker = function DateRangePicker(_a) {
|
|
112
|
+
var label = _a.label,
|
|
113
|
+
rightAdornment = _a.rightAdornment,
|
|
114
|
+
value = _a.value,
|
|
115
|
+
props = __rest(_a, ["label", "rightAdornment", "value"]);
|
|
116
|
+
|
|
117
|
+
return _jsx(FormField, Object.assign({ type: "dateRange", label: label, rightAdornment: rightAdornment, value: value }, props));
|
|
118
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import _slicedToArray from "babel-runtime/helpers/slicedToArray";
|
|
2
|
+
import _typeof from "babel-runtime/helpers/typeof";
|
|
3
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
4
|
+
import dayjs from 'dayjs';
|
|
5
|
+
import head from "lodash/head";
|
|
6
|
+
import customParseFormat from "dayjs/plugin/customParseFormat";
|
|
7
|
+
import { formatDate } from "./dateFormater";
|
|
8
|
+
dayjs.extend(customParseFormat);
|
|
9
|
+
export var fromInputValue = function fromInputValue(inputValue) {
|
|
10
|
+
if (!inputValue) return undefined;
|
|
11
|
+
if ((typeof inputValue === "undefined" ? "undefined" : _typeof(inputValue)) === 'object' && 'from' in inputValue && 'to' in inputValue) {
|
|
12
|
+
var rangeValue = inputValue;
|
|
13
|
+
return {
|
|
14
|
+
from: convertToDate(rangeValue.from),
|
|
15
|
+
to: convertToDate(rangeValue.to)
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
if (typeof inputValue === 'string' && inputValue.includes(' - ')) {
|
|
19
|
+
var _inputValue$split = inputValue.split(' - '),
|
|
20
|
+
_inputValue$split2 = _slicedToArray(_inputValue$split, 2),
|
|
21
|
+
fromStr = _inputValue$split2[0],
|
|
22
|
+
toStr = _inputValue$split2[1];
|
|
23
|
+
|
|
24
|
+
return {
|
|
25
|
+
from: convertToDate(fromStr.trim()),
|
|
26
|
+
to: convertToDate(toStr.trim())
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
return undefined;
|
|
30
|
+
};
|
|
31
|
+
export var getDisplayRange = function getDisplayRange(range) {
|
|
32
|
+
var format = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'DD/MM/YYYY';
|
|
33
|
+
|
|
34
|
+
if (!(range === null || range === void 0 ? void 0 : range.from)) return '';
|
|
35
|
+
var fromFormatted = formatDate(range.from, format);
|
|
36
|
+
var toFormatted = range.to ? formatDate(range.to, format) : '';
|
|
37
|
+
if (range.from && range.to) {
|
|
38
|
+
return fromFormatted + " - " + toFormatted;
|
|
39
|
+
}
|
|
40
|
+
return fromFormatted;
|
|
41
|
+
};
|
|
42
|
+
export var convertToDate = function convertToDate(val) {
|
|
43
|
+
if (!val) return undefined;
|
|
44
|
+
if (val instanceof Date) {
|
|
45
|
+
return val;
|
|
46
|
+
}
|
|
47
|
+
if (typeof val === 'string') {
|
|
48
|
+
var parsed = dayjs(val);
|
|
49
|
+
return parsed.isValid() ? parsed.toDate() : undefined;
|
|
50
|
+
}
|
|
51
|
+
if (typeof val === 'number') {
|
|
52
|
+
return dayjs(val).toDate();
|
|
53
|
+
}
|
|
54
|
+
return undefined;
|
|
55
|
+
};
|
|
56
|
+
export var CustomWeekday = function CustomWeekday(props) {
|
|
57
|
+
return _jsx("th", Object.assign({}, props, { children: head(props.children) }));
|
|
58
|
+
};
|
|
59
|
+
export var getDisabledDays = function getDisabledDays(disabled, minDate, maxDate) {
|
|
60
|
+
if (disabled) return true;
|
|
61
|
+
var min = convertToDate(minDate);
|
|
62
|
+
var max = convertToDate(maxDate);
|
|
63
|
+
if (min && max) return [{ before: min }, { after: max }];
|
|
64
|
+
if (min) return { before: min };
|
|
65
|
+
if (max) return { after: max };
|
|
66
|
+
return undefined;
|
|
67
|
+
};
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
var __rest = this && this.__rest || function (s, e) {
|
|
2
|
+
var t = {};
|
|
3
|
+
for (var p in s) {
|
|
4
|
+
if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
|
|
5
|
+
}if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
6
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
|
|
7
|
+
}
|
|
8
|
+
return t;
|
|
9
|
+
};
|
|
10
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
11
|
+
import { TextInput } from './textInput';
|
|
12
|
+
import { PasswordInput } from './passwordInput';
|
|
13
|
+
import { DatePickerInput } from '../datePicker';
|
|
14
|
+
import { DateRangePickerInput } from '../dateRangePicker';
|
|
15
|
+
import styles from './textInput.module.scss';
|
|
16
|
+
var inputByType = function inputByType(type) {
|
|
17
|
+
var inputs = {
|
|
18
|
+
password: PasswordInput,
|
|
19
|
+
text: TextInput,
|
|
20
|
+
number: TextInput,
|
|
21
|
+
date: DatePickerInput,
|
|
22
|
+
dateRange: DateRangePickerInput
|
|
23
|
+
};
|
|
24
|
+
return !!type ? inputs[type] : TextInput;
|
|
25
|
+
};
|
|
26
|
+
export var FormField = function FormField(_a) {
|
|
27
|
+
var label = _a.label,
|
|
28
|
+
rightAdornment = _a.rightAdornment,
|
|
29
|
+
children = _a.children,
|
|
30
|
+
props = __rest(_a, ["label", "rightAdornment", "children"]);
|
|
31
|
+
|
|
32
|
+
var InputComponent = inputByType(props.type);
|
|
33
|
+
return _jsxs("div", { className: styles['form-field'], children: [label && _jsx("label", { htmlFor: props.name, children: label }), _jsxs("div", { className: "" + styles['input-container'], children: [_jsx(InputComponent, Object.assign({}, props, { children: children })), !!rightAdornment && _jsx("div", { className: "" + styles['right-modifier'], children: rightAdornment })] })] });
|
|
34
|
+
};
|
|
35
|
+
export default FormField;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import _slicedToArray from 'babel-runtime/helpers/slicedToArray';
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import { useState } from 'react';
|
|
4
|
+
import { Visibility, VisibilityOff } from '@mui/icons-material';
|
|
5
|
+
import { TextInput } from './textInput';
|
|
6
|
+
export var PasswordInput = function PasswordInput(props) {
|
|
7
|
+
var _useState = useState(false),
|
|
8
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
9
|
+
showPassword = _useState2[0],
|
|
10
|
+
setShowPassword = _useState2[1];
|
|
11
|
+
|
|
12
|
+
var type = showPassword ? 'text' : 'password';
|
|
13
|
+
return _jsx(TextInput, Object.assign({}, props, { type: type, "data-testid": "password-input", rightIcon: _jsx(VisibilityIcon, { showPassword: showPassword, setShowPassword: setShowPassword }) }));
|
|
14
|
+
};
|
|
15
|
+
var VisibilityIcon = function VisibilityIcon(_ref) {
|
|
16
|
+
var showPassword = _ref.showPassword,
|
|
17
|
+
setShowPassword = _ref.setShowPassword;
|
|
18
|
+
|
|
19
|
+
return _jsx("div", { "data-testid": "visibility-toggle", onClick: function onClick() {
|
|
20
|
+
return setShowPassword(!showPassword);
|
|
21
|
+
}, children: showPassword ? _jsx(Visibility, {}) : _jsx(VisibilityOff, {}) });
|
|
22
|
+
};
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import _slicedToArray from "babel-runtime/helpers/slicedToArray";
|
|
2
|
+
var __rest = this && this.__rest || function (s, e) {
|
|
3
|
+
var t = {};
|
|
4
|
+
for (var p in s) {
|
|
5
|
+
if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
|
|
6
|
+
}if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
7
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
12
|
+
import { useEffect, useState } from 'react';
|
|
13
|
+
import { formValidation, ErrorMessage } from '../../../validators';
|
|
14
|
+
import styles from './textInput.module.scss';
|
|
15
|
+
import errorStyles from '../../../validators/errorMessage.module.scss';
|
|
16
|
+
import clsx from 'clsx';
|
|
17
|
+
import _ from 'lodash';
|
|
18
|
+
import { ClearRounded } from '@mui/icons-material';
|
|
19
|
+
import CustomIcon from '../../icons/customIcon/customIcon';
|
|
20
|
+
import { useReduxFormField } from '../../../hooks/useReduxFormField';
|
|
21
|
+
export var TextInput = function TextInput(props) {
|
|
22
|
+
var _a;
|
|
23
|
+
|
|
24
|
+
var isValid = props.isValid,
|
|
25
|
+
onChange = props.onChange,
|
|
26
|
+
meta = props.meta,
|
|
27
|
+
_props$value = props.value,
|
|
28
|
+
value = _props$value === undefined ? '' : _props$value,
|
|
29
|
+
_props$noErrors = props.noErrors,
|
|
30
|
+
noErrors = _props$noErrors === undefined ? false : _props$noErrors,
|
|
31
|
+
_props$size = props.size,
|
|
32
|
+
size = _props$size === undefined ? 'md' : _props$size,
|
|
33
|
+
_props$type = props.type,
|
|
34
|
+
type = _props$type === undefined ? 'text' : _props$type,
|
|
35
|
+
isClearable = props.isClearable,
|
|
36
|
+
max = props.max,
|
|
37
|
+
min = props.min,
|
|
38
|
+
leftIcon = props.leftIcon,
|
|
39
|
+
rightIcon = props.rightIcon,
|
|
40
|
+
input = props.input,
|
|
41
|
+
inputRef = props.inputRef,
|
|
42
|
+
otherProps = __rest(props, ["isValid", "onChange", "meta", "value", "noErrors", "size", "type", "isClearable", "max", "min", "leftIcon", "rightIcon", "input", "inputRef"]);
|
|
43
|
+
|
|
44
|
+
var inputValue = (_a = input === null || input === void 0 ? void 0 : input.value) !== null && _a !== void 0 ? _a : value;
|
|
45
|
+
|
|
46
|
+
var _useState = useState(''),
|
|
47
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
48
|
+
currentValue = _useState2[0],
|
|
49
|
+
setCurrentValue = _useState2[1];
|
|
50
|
+
|
|
51
|
+
var validationProps = { meta: meta, value: inputValue, isValid: isValid, required: props.required };
|
|
52
|
+
var validated = formValidation(validationProps);
|
|
53
|
+
var numericLimits = type === 'number' ? { max: max, min: min } : {};
|
|
54
|
+
useEffect(function () {
|
|
55
|
+
setCurrentValue(inputValue);
|
|
56
|
+
}, [inputValue]);
|
|
57
|
+
|
|
58
|
+
var _useReduxFormField = useReduxFormField({
|
|
59
|
+
input: input,
|
|
60
|
+
onChange: onChange,
|
|
61
|
+
transformValue: function transformValue(event) {
|
|
62
|
+
var value = event.target.value;
|
|
63
|
+
setCurrentValue(value);
|
|
64
|
+
return value;
|
|
65
|
+
}
|
|
66
|
+
}),
|
|
67
|
+
fieldHandleChange = _useReduxFormField.handleChange,
|
|
68
|
+
handleBlur = _useReduxFormField.handleBlur;
|
|
69
|
+
|
|
70
|
+
var handleChange = function handleChange(event) {
|
|
71
|
+
fieldHandleChange(event);
|
|
72
|
+
};
|
|
73
|
+
var rightModifier = isClearable && !rightIcon && currentValue ? _jsx(CustomIcon, { "data-testid": "clear-icon", children: _jsx(ClearRounded, {}) }) : rightIcon;
|
|
74
|
+
var onClickRightModifier = isClearable && !rightIcon ? function () {
|
|
75
|
+
return handleChange({ target: { name: props.name, value: '' } });
|
|
76
|
+
} : _.identity;
|
|
77
|
+
var isSmall = size == 'sm';
|
|
78
|
+
return _jsxs("div", { "data-testid": "text-input-container", className: clsx(styles[size], styles['text-input-container'], validated ? errorStyles[validated] : '', !!leftIcon && !isSmall ? styles['with-left-icon'] : '', !!rightModifier && !isSmall ? styles['with-right-icon'] : ''), children: [!!leftIcon && !isSmall && _jsx("div", { className: "" + styles['left-icon'], children: leftIcon }), _jsx("input", Object.assign({ className: "text-input", "data-testid": "text-input", value: currentValue ? String(currentValue) : '', type: type, onChange: handleChange, onBlur: handleBlur, ref: inputRef }, numericLimits, otherProps)), !!rightModifier && !isSmall && _jsx("div", { className: "" + styles['right-icon'], onClick: onClickRightModifier, children: rightModifier }), !noErrors && _jsx(ErrorMessage, { validationProps: validationProps })] });
|
|
79
|
+
};
|