phx-react 1.3.1829 → 1.3.1830
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/components/Calendar/Calendar.d.ts +1 -0
- package/dist/cjs/components/Calendar/Calendar.js +22 -7
- package/dist/cjs/components/Calendar/Calendar.js.map +1 -1
- package/dist/esm/components/Calendar/Calendar.d.ts +1 -0
- package/dist/esm/components/Calendar/Calendar.js +22 -7
- package/dist/esm/components/Calendar/Calendar.js.map +1 -1
- package/package.json +1 -1
|
@@ -27,11 +27,12 @@ const weekdays = ['T2', 'T3', 'T4', 'T5', 'T6', 'T7', 'CN'];
|
|
|
27
27
|
function classNames(...classes) {
|
|
28
28
|
return classes.filter(Boolean).join(' ');
|
|
29
29
|
}
|
|
30
|
-
const PHXCalendar = ({ defaultEndDate, defaultStartDate, max, onChange }) => {
|
|
30
|
+
const PHXCalendar = ({ defaultEndDate, defaultStartDate, max, min, onChange }) => {
|
|
31
31
|
const [currentYear, setCurrentYear] = (0, react_1.useState)(new Date().getFullYear());
|
|
32
32
|
const [currentMonth, setCurrentMonth] = (0, react_1.useState)(new Date().getMonth());
|
|
33
33
|
const [startDate, setStartDate] = (0, react_1.useState)(defaultStartDate);
|
|
34
34
|
const [endDate, setEndDate] = (0, react_1.useState)(defaultEndDate);
|
|
35
|
+
const isDisabledWithMin = min && new Date(currentMonth === 0 ? currentYear - 1 : currentYear, currentMonth === 0 ? 12 : currentMonth, 0) < min;
|
|
35
36
|
const calendar = (0, react_1.useMemo)(() => {
|
|
36
37
|
const createCalendar = (year, month) => {
|
|
37
38
|
const firstDayOfMonth = new Date(year, month, 1);
|
|
@@ -80,14 +81,28 @@ const PHXCalendar = ({ defaultEndDate, defaultStartDate, max, onChange }) => {
|
|
|
80
81
|
}
|
|
81
82
|
break;
|
|
82
83
|
case 'prev':
|
|
83
|
-
|
|
84
|
-
|
|
84
|
+
// nếu có min thì chỉ chọn từ thời này trở về trước
|
|
85
|
+
if (min) {
|
|
86
|
+
const prevMonth = currentMonth === 0 ? 11 : currentMonth - 1;
|
|
87
|
+
const prevMonthYear = currentMonth === 0 ? currentYear - 1 : currentYear;
|
|
88
|
+
const lastDayOfPrevMonth = new Date(prevMonthYear, prevMonth + 1, 0);
|
|
89
|
+
if (lastDayOfPrevMonth >= min) {
|
|
90
|
+
setCurrentMonth((prev) => (prev - 1 + 12) % 12);
|
|
91
|
+
setCurrentYear((prev) => prev - (currentMonth === 0 ? 1 : 0));
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
else {
|
|
95
|
+
setCurrentMonth((prev) => (prev - 1 + 12) % 12);
|
|
96
|
+
setCurrentYear((prev) => prev - (currentMonth === 0 ? 1 : 0));
|
|
97
|
+
}
|
|
85
98
|
break;
|
|
86
99
|
default:
|
|
87
100
|
break;
|
|
88
101
|
}
|
|
89
|
-
}, [currentMonth, max]);
|
|
102
|
+
}, [currentMonth, currentYear, max, min]);
|
|
90
103
|
const handleSelectDate = (0, react_1.useCallback)((day) => {
|
|
104
|
+
if (min && day.date < min)
|
|
105
|
+
return;
|
|
91
106
|
if (max && day.date > max)
|
|
92
107
|
return;
|
|
93
108
|
const selectedDate = day.date;
|
|
@@ -116,7 +131,7 @@ const PHXCalendar = ({ defaultEndDate, defaultStartDate, max, onChange }) => {
|
|
|
116
131
|
}
|
|
117
132
|
}
|
|
118
133
|
}
|
|
119
|
-
}, [startDate, endDate, currentMonth, currentYear, max]);
|
|
134
|
+
}, [startDate, endDate, currentMonth, currentYear, max, min]);
|
|
120
135
|
(0, react_1.useEffect)(() => {
|
|
121
136
|
onChange(startDate, endDate);
|
|
122
137
|
}, [startDate, endDate, onChange]);
|
|
@@ -130,7 +145,7 @@ const PHXCalendar = ({ defaultEndDate, defaultStartDate, max, onChange }) => {
|
|
|
130
145
|
var _a;
|
|
131
146
|
return (react_1.default.createElement("div", { key: calIdx, className: 'flex-1' },
|
|
132
147
|
react_1.default.createElement("div", { className: 'relative mb-4 flex items-center justify-center' },
|
|
133
|
-
calIdx === 0 && (react_1.default.createElement("button", { className: 'absolute left-0 rounded-lg p-1 text-gray-500 hover:bg-gray-200', onClick: () => handleChangeMonth('prev'), type: 'button' },
|
|
148
|
+
calIdx === 0 && (react_1.default.createElement("button", { className: classNames('absolute left-0 rounded-lg p-1 text-gray-500 hover:bg-gray-200', isDisabledWithMin && 'cursor-not-allowed opacity-50'), disabled: isDisabledWithMin, onClick: () => handleChangeMonth('prev'), type: 'button' },
|
|
134
149
|
react_1.default.createElement(solid_1.ArrowLeftIcon, { className: 'h-5 w-5' }))),
|
|
135
150
|
react_1.default.createElement("span", { className: 'text-xs font-medium' },
|
|
136
151
|
getMonthName(currentMonth + calIdx),
|
|
@@ -150,7 +165,7 @@ const PHXCalendar = ({ defaultEndDate, defaultStartDate, max, onChange }) => {
|
|
|
150
165
|
const isEnd = endDate && day.date.getTime() === endDate.getTime();
|
|
151
166
|
const isInRange = startDate && endDate && day.date > startDate && day.date < endDate;
|
|
152
167
|
const isSingleDay = startDate && !endDate && day.date.getTime() === startDate.getTime();
|
|
153
|
-
const isDisabled = max && day.date > max;
|
|
168
|
+
const isDisabled = (min && day.date < min) || (max && day.date > max);
|
|
154
169
|
return (react_1.default.createElement("button", { key: index, className: classNames('relative py-2 text-xs text-gray-800 ', day.isToday && 'font-semibold text-gray-900', isInRange && 'bg-gray-300', isStart && 'rounded-l-lg bg-gray-800 text-white', isEnd && 'rounded-r-lg bg-gray-800 text-white', isSingleDay && 'rounded-lg bg-gray-800 text-white', isDisabled ? 'cursor-not-allowed opacity-50' : isInRange ? '' : 'hover:bg-gray-200'), disabled: isDisabled, onClick: () => handleSelectDate(day), type: 'button' }, day.date.getDate()));
|
|
155
170
|
}))));
|
|
156
171
|
})));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Calendar.js","sourceRoot":"","sources":["../../../../src/components/Calendar/Calendar.tsx"],"names":[],"mappings":";;;AAwBA,gCAEC;;AA1BD,qDAAyE;AACzE,uDAAwE;AAExE,MAAM,YAAY,GAAG,CAAC,KAAa,EAAU,EAAE;IAC7C,MAAM,UAAU,GAAG;QACjB,SAAS;QACT,SAAS;QACT,SAAS;QACT,SAAS;QACT,SAAS;QACT,SAAS;QACT,SAAS;QACT,SAAS;QACT,SAAS;QACT,UAAU;QACV,UAAU;QACV,UAAU;KACX,CAAA;IACD,OAAO,UAAU,CAAC,KAAK,CAAC,CAAA;AAC1B,CAAC,CAAA;AAED,0CAA0C;AAC1C,MAAM,QAAQ,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE3D,SAAgB,UAAU,CAAC,GAAG,OAA4C;IACxE,OAAO,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AAC1C,CAAC;
|
|
1
|
+
{"version":3,"file":"Calendar.js","sourceRoot":"","sources":["../../../../src/components/Calendar/Calendar.tsx"],"names":[],"mappings":"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"}
|
|
@@ -22,11 +22,12 @@ const weekdays = ['T2', 'T3', 'T4', 'T5', 'T6', 'T7', 'CN'];
|
|
|
22
22
|
export function classNames(...classes) {
|
|
23
23
|
return classes.filter(Boolean).join(' ');
|
|
24
24
|
}
|
|
25
|
-
export const PHXCalendar = ({ defaultEndDate, defaultStartDate, max, onChange }) => {
|
|
25
|
+
export const PHXCalendar = ({ defaultEndDate, defaultStartDate, max, min, onChange }) => {
|
|
26
26
|
const [currentYear, setCurrentYear] = useState(new Date().getFullYear());
|
|
27
27
|
const [currentMonth, setCurrentMonth] = useState(new Date().getMonth());
|
|
28
28
|
const [startDate, setStartDate] = useState(defaultStartDate);
|
|
29
29
|
const [endDate, setEndDate] = useState(defaultEndDate);
|
|
30
|
+
const isDisabledWithMin = min && new Date(currentMonth === 0 ? currentYear - 1 : currentYear, currentMonth === 0 ? 12 : currentMonth, 0) < min;
|
|
30
31
|
const calendar = useMemo(() => {
|
|
31
32
|
const createCalendar = (year, month) => {
|
|
32
33
|
const firstDayOfMonth = new Date(year, month, 1);
|
|
@@ -75,14 +76,28 @@ export const PHXCalendar = ({ defaultEndDate, defaultStartDate, max, onChange })
|
|
|
75
76
|
}
|
|
76
77
|
break;
|
|
77
78
|
case 'prev':
|
|
78
|
-
|
|
79
|
-
|
|
79
|
+
// nếu có min thì chỉ chọn từ thời này trở về trước
|
|
80
|
+
if (min) {
|
|
81
|
+
const prevMonth = currentMonth === 0 ? 11 : currentMonth - 1;
|
|
82
|
+
const prevMonthYear = currentMonth === 0 ? currentYear - 1 : currentYear;
|
|
83
|
+
const lastDayOfPrevMonth = new Date(prevMonthYear, prevMonth + 1, 0);
|
|
84
|
+
if (lastDayOfPrevMonth >= min) {
|
|
85
|
+
setCurrentMonth((prev) => (prev - 1 + 12) % 12);
|
|
86
|
+
setCurrentYear((prev) => prev - (currentMonth === 0 ? 1 : 0));
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
else {
|
|
90
|
+
setCurrentMonth((prev) => (prev - 1 + 12) % 12);
|
|
91
|
+
setCurrentYear((prev) => prev - (currentMonth === 0 ? 1 : 0));
|
|
92
|
+
}
|
|
80
93
|
break;
|
|
81
94
|
default:
|
|
82
95
|
break;
|
|
83
96
|
}
|
|
84
|
-
}, [currentMonth, max]);
|
|
97
|
+
}, [currentMonth, currentYear, max, min]);
|
|
85
98
|
const handleSelectDate = useCallback((day) => {
|
|
99
|
+
if (min && day.date < min)
|
|
100
|
+
return;
|
|
86
101
|
if (max && day.date > max)
|
|
87
102
|
return;
|
|
88
103
|
const selectedDate = day.date;
|
|
@@ -111,7 +126,7 @@ export const PHXCalendar = ({ defaultEndDate, defaultStartDate, max, onChange })
|
|
|
111
126
|
}
|
|
112
127
|
}
|
|
113
128
|
}
|
|
114
|
-
}, [startDate, endDate, currentMonth, currentYear, max]);
|
|
129
|
+
}, [startDate, endDate, currentMonth, currentYear, max, min]);
|
|
115
130
|
useEffect(() => {
|
|
116
131
|
onChange(startDate, endDate);
|
|
117
132
|
}, [startDate, endDate, onChange]);
|
|
@@ -125,7 +140,7 @@ export const PHXCalendar = ({ defaultEndDate, defaultStartDate, max, onChange })
|
|
|
125
140
|
var _a;
|
|
126
141
|
return (React.createElement("div", { key: calIdx, className: 'flex-1' },
|
|
127
142
|
React.createElement("div", { className: 'relative mb-4 flex items-center justify-center' },
|
|
128
|
-
calIdx === 0 && (React.createElement("button", { className: 'absolute left-0 rounded-lg p-1 text-gray-500 hover:bg-gray-200', onClick: () => handleChangeMonth('prev'), type: 'button' },
|
|
143
|
+
calIdx === 0 && (React.createElement("button", { className: classNames('absolute left-0 rounded-lg p-1 text-gray-500 hover:bg-gray-200', isDisabledWithMin && 'cursor-not-allowed opacity-50'), disabled: isDisabledWithMin, onClick: () => handleChangeMonth('prev'), type: 'button' },
|
|
129
144
|
React.createElement(ArrowLeftIcon, { className: 'h-5 w-5' }))),
|
|
130
145
|
React.createElement("span", { className: 'text-xs font-medium' },
|
|
131
146
|
getMonthName(currentMonth + calIdx),
|
|
@@ -145,7 +160,7 @@ export const PHXCalendar = ({ defaultEndDate, defaultStartDate, max, onChange })
|
|
|
145
160
|
const isEnd = endDate && day.date.getTime() === endDate.getTime();
|
|
146
161
|
const isInRange = startDate && endDate && day.date > startDate && day.date < endDate;
|
|
147
162
|
const isSingleDay = startDate && !endDate && day.date.getTime() === startDate.getTime();
|
|
148
|
-
const isDisabled = max && day.date > max;
|
|
163
|
+
const isDisabled = (min && day.date < min) || (max && day.date > max);
|
|
149
164
|
return (React.createElement("button", { key: index, className: classNames('relative py-2 text-xs text-gray-800 ', day.isToday && 'font-semibold text-gray-900', isInRange && 'bg-gray-300', isStart && 'rounded-l-lg bg-gray-800 text-white', isEnd && 'rounded-r-lg bg-gray-800 text-white', isSingleDay && 'rounded-lg bg-gray-800 text-white', isDisabled ? 'cursor-not-allowed opacity-50' : isInRange ? '' : 'hover:bg-gray-200'), disabled: isDisabled, onClick: () => handleSelectDate(day), type: 'button' }, day.date.getDate()));
|
|
150
165
|
}))));
|
|
151
166
|
})));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Calendar.js","sourceRoot":"","sources":["../../../../src/components/Calendar/Calendar.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AACzE,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAExE,MAAM,YAAY,GAAG,CAAC,KAAa,EAAU,EAAE;IAC7C,MAAM,UAAU,GAAG;QACjB,SAAS;QACT,SAAS;QACT,SAAS;QACT,SAAS;QACT,SAAS;QACT,SAAS;QACT,SAAS;QACT,SAAS;QACT,SAAS;QACT,UAAU;QACV,UAAU;QACV,UAAU;KACX,CAAA;IACD,OAAO,UAAU,CAAC,KAAK,CAAC,CAAA;AAC1B,CAAC,CAAA;AAED,0CAA0C;AAC1C,MAAM,QAAQ,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE3D,MAAM,UAAU,UAAU,CAAC,GAAG,OAA4C;IACxE,OAAO,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AAC1C,CAAC;
|
|
1
|
+
{"version":3,"file":"Calendar.js","sourceRoot":"","sources":["../../../../src/components/Calendar/Calendar.tsx"],"names":[],"mappings":"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"}
|