@paygreen/pgui 2.14.1 → 2.14.2
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/cjs/index.js +34 -15
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/types/components/InputDayPicker/index.d.ts +4 -1
- package/dist/cjs/types/components/InputRangePicker/index.d.ts +5 -3
- package/dist/esm/index.js +34 -15
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/types/components/InputDayPicker/index.d.ts +4 -1
- package/dist/esm/types/components/InputRangePicker/index.d.ts +5 -3
- package/dist/index.d.ts +9 -4
- package/package.json +1 -1
|
@@ -13,5 +13,8 @@ export type InputDayPickerProps = {
|
|
|
13
13
|
isDisabled?: boolean;
|
|
14
14
|
inputProps?: any;
|
|
15
15
|
dayPickerProps?: any;
|
|
16
|
+
isOpen?: boolean;
|
|
17
|
+
onOpen?: () => void;
|
|
18
|
+
onClose?: () => void;
|
|
16
19
|
};
|
|
17
|
-
export declare const InputDayPicker: ({ value, onChange, placeholder, name, isDisabled, withTime, locale, minDate, maxDate, variant, inputProps, dayPickerProps, }: InputDayPickerProps) => React.JSX.Element;
|
|
20
|
+
export declare const InputDayPicker: ({ value, onChange, placeholder, name, isDisabled, withTime, locale, minDate, maxDate, variant, inputProps, dayPickerProps, isOpen: isOpenProp, onOpen: onOpenProp, onClose: onCloseProp, }: InputDayPickerProps) => React.JSX.Element;
|
|
@@ -13,11 +13,13 @@ export type InputRangePickerProps = {
|
|
|
13
13
|
locale?: 'fr' | 'en';
|
|
14
14
|
variant?: 'filled' | 'outline';
|
|
15
15
|
withTime?: boolean;
|
|
16
|
-
|
|
17
|
-
|
|
16
|
+
minStartDate?: Date | null | undefined;
|
|
17
|
+
maxStartDate?: Date | null | undefined;
|
|
18
|
+
minEndDate?: Date | null | undefined;
|
|
19
|
+
maxEndDate?: Date | null | undefined;
|
|
18
20
|
isDisabled?: boolean;
|
|
19
21
|
breakpoint?: 'base' | 'sm' | 'md' | 'lg';
|
|
20
22
|
inputProps?: any;
|
|
21
23
|
dayPickerProps?: any;
|
|
22
24
|
};
|
|
23
|
-
export declare const InputRangePicker: ({ value, onChange, placeholder, name, isDisabled, withTime, locale,
|
|
25
|
+
export declare const InputRangePicker: ({ value, onChange, placeholder, name, isDisabled, withTime, locale, minStartDate, maxStartDate, minEndDate, maxEndDate, variant, breakpoint, inputProps, dayPickerProps, }: InputRangePickerProps) => React.JSX.Element;
|
package/dist/esm/index.js
CHANGED
|
@@ -7905,8 +7905,11 @@ function MdCalendarToday (props) {
|
|
|
7905
7905
|
dayjs.extend(customParseFormat);
|
|
7906
7906
|
dayjs.extend(utc);
|
|
7907
7907
|
var InputDayPicker = function (_a) {
|
|
7908
|
-
var value = _a.value, onChange = _a.onChange, placeholder = _a.placeholder, name = _a.name, isDisabled = _a.isDisabled, withTime = _a.withTime, _b = _a.locale, locale = _b === void 0 ? 'en' : _b, minDate = _a.minDate, maxDate = _a.maxDate, _c = _a.variant, variant = _c === void 0 ? 'filled' : _c, inputProps = _a.inputProps, dayPickerProps = _a.dayPickerProps;
|
|
7909
|
-
var
|
|
7908
|
+
var value = _a.value, onChange = _a.onChange, placeholder = _a.placeholder, name = _a.name, isDisabled = _a.isDisabled, withTime = _a.withTime, _b = _a.locale, locale = _b === void 0 ? 'en' : _b, minDate = _a.minDate, maxDate = _a.maxDate, _c = _a.variant, variant = _c === void 0 ? 'filled' : _c, inputProps = _a.inputProps, dayPickerProps = _a.dayPickerProps, isOpenProp = _a.isOpen, onOpenProp = _a.onOpen, onCloseProp = _a.onClose;
|
|
7909
|
+
var disclosure = useDisclosure();
|
|
7910
|
+
var isOpen = isOpenProp || disclosure.isOpen;
|
|
7911
|
+
var onOpen = onOpenProp || disclosure.onOpen;
|
|
7912
|
+
var onClose = onCloseProp || disclosure.onClose;
|
|
7910
7913
|
var inputLeftElementColor = useColorModeValue('gray.400', 'gray.600');
|
|
7911
7914
|
var inputLeftElementDisabledColor = useColorModeValue('gray.600', 'gray.400');
|
|
7912
7915
|
var dialogSheetBg = useColorModeValue('gray.50', 'gray.800');
|
|
@@ -7917,18 +7920,20 @@ var InputDayPicker = function (_a) {
|
|
|
7917
7920
|
: withTime
|
|
7918
7921
|
? 'MM/DD/YYYY HH:mm'
|
|
7919
7922
|
: 'MM/DD/YYYY';
|
|
7920
|
-
var
|
|
7923
|
+
var _d = useState(value ? dayjs(value).format(defaultDateFormat) : ''), dateValue = _d[0], setDateValue = _d[1];
|
|
7921
7924
|
// Update the input value when the value prop changes
|
|
7922
7925
|
useEffect(function () {
|
|
7923
|
-
setDateValue(value ? dayjs(value).format(defaultDateFormat) : '');
|
|
7926
|
+
setDateValue(dayjs(value).isValid() ? dayjs(value).format(defaultDateFormat) : '');
|
|
7924
7927
|
}, [value]);
|
|
7925
7928
|
// Add new state variables for hours and minutes
|
|
7926
|
-
var
|
|
7927
|
-
var
|
|
7929
|
+
var _e = useState('00'), hours = _e[0], setHours = _e[1];
|
|
7930
|
+
var _f = useState('00'), minutes = _f[0], setMinutes = _f[1];
|
|
7928
7931
|
// Update the input value when the value prop changes
|
|
7929
7932
|
var handleInputChange = function (date) {
|
|
7930
|
-
if (!date)
|
|
7933
|
+
if (!date) {
|
|
7931
7934
|
setDateValue('');
|
|
7935
|
+
onChange(null);
|
|
7936
|
+
}
|
|
7932
7937
|
var dateInput = dayjs(date, defaultDateFormat, true);
|
|
7933
7938
|
if (dateInput.isValid()) {
|
|
7934
7939
|
if (isOpen)
|
|
@@ -7939,9 +7944,6 @@ var InputDayPicker = function (_a) {
|
|
|
7939
7944
|
setMinutes(parseInt(dateInput.format('mm'), 10).toString());
|
|
7940
7945
|
onChange(dateInput.toDate());
|
|
7941
7946
|
}
|
|
7942
|
-
else {
|
|
7943
|
-
onChange(null);
|
|
7944
|
-
}
|
|
7945
7947
|
};
|
|
7946
7948
|
// Update the input value when the value prop changes
|
|
7947
7949
|
var handleDateSelection = function (date) {
|
|
@@ -19024,13 +19026,30 @@ var InputPhone = function (_a) {
|
|
|
19024
19026
|
|
|
19025
19027
|
var InputRangePicker = function (_a) {
|
|
19026
19028
|
var _b;
|
|
19027
|
-
var value = _a.value, onChange = _a.onChange, placeholder = _a.placeholder, name = _a.name, isDisabled = _a.isDisabled, withTime = _a.withTime, _c = _a.locale, locale = _c === void 0 ? 'en' : _c,
|
|
19029
|
+
var value = _a.value, onChange = _a.onChange, placeholder = _a.placeholder, name = _a.name, isDisabled = _a.isDisabled, withTime = _a.withTime, _c = _a.locale, locale = _c === void 0 ? 'en' : _c, minStartDate = _a.minStartDate, maxStartDate = _a.maxStartDate, minEndDate = _a.minEndDate, maxEndDate = _a.maxEndDate, _d = _a.variant, variant = _d === void 0 ? 'filled' : _d, _e = _a.breakpoint, breakpoint = _e === void 0 ? 'md' : _e, inputProps = _a.inputProps, dayPickerProps = _a.dayPickerProps;
|
|
19028
19030
|
var _f = useState((value === null || value === void 0 ? void 0 : value.from) || null), fromValue = _f[0], setFromValue = _f[1];
|
|
19029
19031
|
var _g = useState((value === null || value === void 0 ? void 0 : value.to) || null), toValue = _g[0], setToValue = _g[1];
|
|
19032
|
+
var _h = useDisclosure(), isOpenFrom = _h.isOpen, onOpenFrom = _h.onOpen, onCloseFrom = _h.onClose;
|
|
19033
|
+
var _j = useDisclosure(), isOpenTo = _j.isOpen, onOpenTo = _j.onOpen, onCloseTo = _j.onClose;
|
|
19034
|
+
// close the other date picker when one is opened
|
|
19030
19035
|
useEffect(function () {
|
|
19031
|
-
|
|
19036
|
+
if (isOpenFrom) {
|
|
19037
|
+
onCloseTo();
|
|
19038
|
+
}
|
|
19039
|
+
}, [isOpenFrom]);
|
|
19040
|
+
useEffect(function () {
|
|
19041
|
+
if (isOpenTo) {
|
|
19042
|
+
onCloseFrom();
|
|
19043
|
+
}
|
|
19044
|
+
}, [isOpenTo]);
|
|
19045
|
+
// Update the parent state when the local state changes
|
|
19046
|
+
useEffect(function () {
|
|
19047
|
+
var newValue = { from: fromValue, to: toValue };
|
|
19048
|
+
if (JSON.stringify(newValue) !== JSON.stringify(value)) {
|
|
19049
|
+
onChange(newValue);
|
|
19050
|
+
}
|
|
19032
19051
|
}, [fromValue, toValue]);
|
|
19033
|
-
// Update the state when the value changes
|
|
19052
|
+
// Update the state when the props value changes
|
|
19034
19053
|
useEffect(function () {
|
|
19035
19054
|
setFromValue((value === null || value === void 0 ? void 0 : value.from) || null);
|
|
19036
19055
|
setToValue((value === null || value === void 0 ? void 0 : value.to) || null);
|
|
@@ -19041,8 +19060,8 @@ var InputRangePicker = function (_a) {
|
|
|
19041
19060
|
_b[breakpoint] = 'row',
|
|
19042
19061
|
_b));
|
|
19043
19062
|
return (React__default.createElement(Flex, { flexDirection: flexDirection, gap: 2 },
|
|
19044
|
-
React__default.createElement(InputDayPicker, { value: fromValue, onChange: setFromValue, placeholder: placeholder, name: name, isDisabled: isDisabled, withTime: withTime, locale: locale, minDate:
|
|
19045
|
-
React__default.createElement(InputDayPicker, { value: toValue, onChange: setToValue, placeholder: placeholder, name: name, isDisabled: isDisabled, withTime: withTime, locale: locale, minDate:
|
|
19063
|
+
React__default.createElement(InputDayPicker, { value: fromValue, onChange: setFromValue, placeholder: placeholder, name: name, isDisabled: isDisabled, withTime: withTime, locale: locale, minDate: minStartDate, maxDate: maxStartDate, variant: variant, inputProps: inputProps, dayPickerProps: dayPickerProps, onClose: onCloseFrom, onOpen: onOpenFrom, isOpen: isOpenFrom }),
|
|
19064
|
+
React__default.createElement(InputDayPicker, { value: toValue, onChange: setToValue, placeholder: placeholder, name: name, isDisabled: isDisabled, withTime: withTime, locale: locale, minDate: minEndDate, maxDate: maxEndDate, variant: variant, inputProps: inputProps, dayPickerProps: dayPickerProps, onClose: onCloseTo, onOpen: onOpenTo, isOpen: isOpenTo })));
|
|
19046
19065
|
};
|
|
19047
19066
|
|
|
19048
19067
|
var ModalResponsive = function (_a) {
|