@caratlogic/design-system 0.1.8 → 0.1.9
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/molecules/DateInput/DateInput.accessibility.d.ts +4 -0
- package/dist/components/molecules/DateInput/DateInput.accessibility.d.ts.map +1 -0
- package/dist/components/molecules/DateInput/DateInput.d.ts +5 -1
- package/dist/components/molecules/DateInput/DateInput.d.ts.map +1 -1
- package/dist/components/molecules/DateInput/DateInput.hooks.d.ts +3 -0
- package/dist/components/molecules/DateInput/DateInput.hooks.d.ts.map +1 -0
- package/dist/components/molecules/DateInput/DateInput.types.d.ts +23 -0
- package/dist/components/molecules/DateInput/DateInput.types.d.ts.map +1 -1
- package/dist/components/molecules/DateInput/DateInput.utils.d.ts +14 -0
- package/dist/components/molecules/DateInput/DateInput.utils.d.ts.map +1 -1
- package/dist/index.cjs.js +239 -59
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.js +239 -59
- package/dist/index.esm.js.map +1 -1
- package/package.json +1 -1
package/dist/index.esm.js
CHANGED
|
@@ -12089,18 +12089,18 @@ function requireMoment () {
|
|
|
12089
12089
|
var momentExports = requireMoment();
|
|
12090
12090
|
var moment = /*@__PURE__*/getDefaultExportFromCjs(momentExports);
|
|
12091
12091
|
|
|
12092
|
-
const DATE_FORMAT = 'DD-MM-YYYY';
|
|
12092
|
+
const DATE_FORMAT$1 = 'DD-MM-YYYY';
|
|
12093
12093
|
/**
|
|
12094
12094
|
* Canonical default thumbnail used wherever a gem/diamond/inventory item has
|
|
12095
12095
|
* no image of its own — single source of truth (mirrors the gem inventory grid).
|
|
12096
12096
|
*/
|
|
12097
12097
|
const DEFAULT_INVENTORY_THUMBNAIL = '/default%20thumbnail.png';
|
|
12098
12098
|
|
|
12099
|
-
const formatDate$
|
|
12099
|
+
const formatDate$2 = (iso) => {
|
|
12100
12100
|
if (!iso)
|
|
12101
12101
|
return '-';
|
|
12102
12102
|
try {
|
|
12103
|
-
return moment(iso).format(DATE_FORMAT);
|
|
12103
|
+
return moment(iso).format(DATE_FORMAT$1);
|
|
12104
12104
|
}
|
|
12105
12105
|
catch {
|
|
12106
12106
|
return iso;
|
|
@@ -12113,7 +12113,7 @@ const InfoCard = ({ info, title, refundToWallet, onRefundChange, }) => {
|
|
|
12113
12113
|
if (React__default.isValidElement(info))
|
|
12114
12114
|
return jsx("div", { className: "mt-3", children: info });
|
|
12115
12115
|
const i = info;
|
|
12116
|
-
return (jsx("div", { className: "mt-1 rounded-lg border bg-muted p-3 shadow-sm", children: jsxs("div", { className: "flex flex-col gap-1", children: [jsxs("div", { className: "flex items-start gap-3", children: [jsx("div", { className: "w-36 text-sm text-muted-foreground", children: "Date" }), jsx("div", { children: formatDate$
|
|
12116
|
+
return (jsx("div", { className: "mt-1 rounded-lg border bg-muted p-3 shadow-sm", children: jsxs("div", { className: "flex flex-col gap-1", children: [jsxs("div", { className: "flex items-start gap-3", children: [jsx("div", { className: "w-36 text-sm text-muted-foreground", children: "Date" }), jsx("div", { children: formatDate$2(i.invoiceDate) })] }), jsxs("div", { className: "flex items-start gap-3", children: [jsx("div", { className: "w-36 text-sm text-muted-foreground", children: "Total" }), jsx("div", { className: "font-medium text-foreground", children: formatCurrencyWithTenantSymbol(i.totalAmount) })] }), i.paidAmount !== undefined && (jsxs("div", { className: "flex items-start gap-3", children: [jsx("div", { className: "w-36 text-sm text-muted-foreground", children: "Paid" }), jsx("div", { className: "font-medium text-primary", children: formatCurrencyWithTenantSymbol(i.paidAmount) })] })), i.outstandingAmount !== undefined && (jsxs("div", { className: "flex items-start gap-3", children: [jsx("div", { className: "w-36 text-sm text-muted-foreground", children: "Outstanding" }), jsx("div", { className: "font-medium text-muted-foreground", children: formatCurrencyWithTenantSymbol(i.outstandingAmount) })] })), title === 'Cancel Invoice' &&
|
|
12117
12117
|
!React__default.isValidElement(info) &&
|
|
12118
12118
|
(i?.paidAmount ?? 0) > 0 && (jsxs("div", { className: "flex items-start gap-3", children: [jsx("div", { className: "w-36 whitespace-nowrap text-sm text-muted-foreground", children: "Refund to Wallet" }), jsx(Checkbox, { checked: !!refundToWallet, onCheckedChange: (v) => onRefundChange?.(Boolean(v)), className: "bg-card" })] })), (i.customerName || i.email) && (jsxs("div", { className: "mt-1 rounded bg-card p-2", children: [i.customerName && (jsx("div", { className: "text-sm font-medium", children: i.customerName })), i.email && (jsx("div", { className: "text-sm text-muted-foreground", children: i.email }))] }))] }) }));
|
|
12119
12119
|
};
|
|
@@ -22575,7 +22575,7 @@ function parseDate(value, dateFormat, locale, strictParsing, refDate) {
|
|
|
22575
22575
|
var parsedDate = parse(value, format_1, refDate, {
|
|
22576
22576
|
locale: localeObject});
|
|
22577
22577
|
if (isValid(parsedDate) &&
|
|
22578
|
-
(!strictParsing || value === formatDate(parsedDate, format_1, locale))) {
|
|
22578
|
+
(!strictParsing || value === formatDate$1(parsedDate, format_1, locale))) {
|
|
22579
22579
|
return parsedDate;
|
|
22580
22580
|
}
|
|
22581
22581
|
}
|
|
@@ -22603,7 +22603,7 @@ function isValid(date, minDate) {
|
|
|
22603
22603
|
* @param locale - The locale.
|
|
22604
22604
|
* @returns - The formatted date.
|
|
22605
22605
|
*/
|
|
22606
|
-
function formatDate(date, formatStr, locale) {
|
|
22606
|
+
function formatDate$1(date, formatStr, locale) {
|
|
22607
22607
|
if (locale === "en") {
|
|
22608
22608
|
return format(date, formatStr, {
|
|
22609
22609
|
useAdditionalWeekYearTokens: true,
|
|
@@ -22633,7 +22633,7 @@ function safeDateFormat(date, _a) {
|
|
|
22633
22633
|
var formatStr = (Array.isArray(dateFormat) && dateFormat.length > 0
|
|
22634
22634
|
? dateFormat[0]
|
|
22635
22635
|
: dateFormat); // Cast to string because it's impossible to get `string | string[] | undefined` here and typescript doesn't know that
|
|
22636
|
-
return (date && formatDate(date, formatStr, locale)) || "";
|
|
22636
|
+
return (date && formatDate$1(date, formatStr, locale)) || "";
|
|
22637
22637
|
}
|
|
22638
22638
|
/**
|
|
22639
22639
|
* Used as a delimiter to separate two dates when formatting a date range
|
|
@@ -22707,7 +22707,7 @@ function getWeek(date) {
|
|
|
22707
22707
|
* @returns - The day of the week code.
|
|
22708
22708
|
*/
|
|
22709
22709
|
function getDayOfWeekCode(day, locale) {
|
|
22710
|
-
return formatDate(day, "ddd", locale);
|
|
22710
|
+
return formatDate$1(day, "ddd", locale);
|
|
22711
22711
|
}
|
|
22712
22712
|
// *** Start of ***
|
|
22713
22713
|
/**
|
|
@@ -22930,7 +22930,7 @@ function getLocaleObject(localeSpec) {
|
|
|
22930
22930
|
* @returns - The formatted weekday.
|
|
22931
22931
|
*/
|
|
22932
22932
|
function getFormattedWeekdayInLocale(date, formatFunc, locale) {
|
|
22933
|
-
return formatFunc(formatDate(date, "EEEE", locale));
|
|
22933
|
+
return formatFunc(formatDate$1(date, "EEEE", locale));
|
|
22934
22934
|
}
|
|
22935
22935
|
/**
|
|
22936
22936
|
* Gets the minimum weekday in a given locale.
|
|
@@ -22940,7 +22940,7 @@ function getFormattedWeekdayInLocale(date, formatFunc, locale) {
|
|
|
22940
22940
|
* @returns - The minimum weekday.
|
|
22941
22941
|
*/
|
|
22942
22942
|
function getWeekdayMinInLocale(date, locale) {
|
|
22943
|
-
return formatDate(date, "EEEEEE", locale);
|
|
22943
|
+
return formatDate$1(date, "EEEEEE", locale);
|
|
22944
22944
|
}
|
|
22945
22945
|
/**
|
|
22946
22946
|
* Gets the short weekday in a given locale.
|
|
@@ -22950,7 +22950,7 @@ function getWeekdayMinInLocale(date, locale) {
|
|
|
22950
22950
|
* @returns - The short weekday.
|
|
22951
22951
|
*/
|
|
22952
22952
|
function getWeekdayShortInLocale(date, locale) {
|
|
22953
|
-
return formatDate(date, "EEE", locale);
|
|
22953
|
+
return formatDate$1(date, "EEE", locale);
|
|
22954
22954
|
}
|
|
22955
22955
|
/**
|
|
22956
22956
|
* Gets the month in a given locale.
|
|
@@ -22960,7 +22960,7 @@ function getWeekdayShortInLocale(date, locale) {
|
|
|
22960
22960
|
* @returns - The month.
|
|
22961
22961
|
*/
|
|
22962
22962
|
function getMonthInLocale(month, locale) {
|
|
22963
|
-
return formatDate(setMonth(newDate(), month), "LLLL", locale);
|
|
22963
|
+
return formatDate$1(setMonth(newDate(), month), "LLLL", locale);
|
|
22964
22964
|
}
|
|
22965
22965
|
/**
|
|
22966
22966
|
* Gets the short month in a given locale.
|
|
@@ -22970,7 +22970,7 @@ function getMonthInLocale(month, locale) {
|
|
|
22970
22970
|
* @returns - The short month.
|
|
22971
22971
|
*/
|
|
22972
22972
|
function getMonthShortInLocale(month, locale) {
|
|
22973
|
-
return formatDate(setMonth(newDate(), month), "LLL", locale);
|
|
22973
|
+
return formatDate$1(setMonth(newDate(), month), "LLL", locale);
|
|
22974
22974
|
}
|
|
22975
22975
|
/**
|
|
22976
22976
|
* Gets the short quarter in a given locale.
|
|
@@ -22980,7 +22980,7 @@ function getMonthShortInLocale(month, locale) {
|
|
|
22980
22980
|
* @returns - The short quarter.
|
|
22981
22981
|
*/
|
|
22982
22982
|
function getQuarterShortInLocale(quarter, locale) {
|
|
22983
|
-
return formatDate(setQuarter(newDate(), quarter), "QQQ", locale);
|
|
22983
|
+
return formatDate$1(setQuarter(newDate(), quarter), "QQQ", locale);
|
|
22984
22984
|
}
|
|
22985
22985
|
/**
|
|
22986
22986
|
* Checks if a day is disabled.
|
|
@@ -23310,7 +23310,7 @@ function getHighLightDaysMap(highlightDates, defaultClassName) {
|
|
|
23310
23310
|
for (var i = 0, len = highlightDates.length; i < len; i++) {
|
|
23311
23311
|
var obj = highlightDates[i];
|
|
23312
23312
|
if (isDate(obj)) {
|
|
23313
|
-
var key = formatDate(obj, "MM.dd.yyyy");
|
|
23313
|
+
var key = formatDate$1(obj, "MM.dd.yyyy");
|
|
23314
23314
|
var classNamesArr = dateClasses.get(key) || [];
|
|
23315
23315
|
if (!classNamesArr.includes(defaultClassName)) {
|
|
23316
23316
|
classNamesArr.push(defaultClassName);
|
|
@@ -23325,7 +23325,7 @@ function getHighLightDaysMap(highlightDates, defaultClassName) {
|
|
|
23325
23325
|
for (var k = 0, len_1 = arrOfDates.length; k < len_1; k++) {
|
|
23326
23326
|
var dateK = arrOfDates[k];
|
|
23327
23327
|
if (dateK) {
|
|
23328
|
-
var key = formatDate(dateK, "MM.dd.yyyy");
|
|
23328
|
+
var key = formatDate$1(dateK, "MM.dd.yyyy");
|
|
23329
23329
|
var classNamesArr = dateClasses.get(key) || [];
|
|
23330
23330
|
if (!classNamesArr.includes(className)) {
|
|
23331
23331
|
classNamesArr.push(className);
|
|
@@ -23365,7 +23365,7 @@ function getHolidaysMap(holidayDates, defaultClassName) {
|
|
|
23365
23365
|
if (!isDate(dateObj)) {
|
|
23366
23366
|
return;
|
|
23367
23367
|
}
|
|
23368
|
-
var key = formatDate(dateObj, "MM.dd.yyyy");
|
|
23368
|
+
var key = formatDate$1(dateObj, "MM.dd.yyyy");
|
|
23369
23369
|
var classNamesObj = dateClasses.get(key) || {
|
|
23370
23370
|
className: "",
|
|
23371
23371
|
holidayNames: [],
|
|
@@ -23739,7 +23739,7 @@ var Day = /** @class */ (function (_super) {
|
|
|
23739
23739
|
return false;
|
|
23740
23740
|
}
|
|
23741
23741
|
// Looking for className in the Map of {'day string, 'className'}
|
|
23742
|
-
var dayStr = formatDate(day, "MM.dd.yyyy");
|
|
23742
|
+
var dayStr = formatDate$1(day, "MM.dd.yyyy");
|
|
23743
23743
|
return highlightDates.get(dayStr);
|
|
23744
23744
|
};
|
|
23745
23745
|
// Function to return the array containing className associated to the date
|
|
@@ -23750,7 +23750,7 @@ var Day = /** @class */ (function (_super) {
|
|
|
23750
23750
|
// For type consistency no other reasons
|
|
23751
23751
|
return [undefined];
|
|
23752
23752
|
}
|
|
23753
|
-
var dayStr = formatDate(day, "MM.dd.yyyy");
|
|
23753
|
+
var dayStr = formatDate$1(day, "MM.dd.yyyy");
|
|
23754
23754
|
// Looking for className in the Map of {day string: {className, holidayName}}
|
|
23755
23755
|
if (holidays.has(dayStr)) {
|
|
23756
23756
|
return [(_a = holidays.get(dayStr)) === null || _a === void 0 ? void 0 : _a.className];
|
|
@@ -23891,12 +23891,12 @@ var Day = /** @class */ (function (_super) {
|
|
|
23891
23891
|
var prefix = _this.isDisabled() || _this.isExcluded()
|
|
23892
23892
|
? ariaLabelPrefixWhenDisabled
|
|
23893
23893
|
: ariaLabelPrefixWhenEnabled;
|
|
23894
|
-
return "".concat(prefix, " ").concat(formatDate(day, "PPPP", _this.props.locale));
|
|
23894
|
+
return "".concat(prefix, " ").concat(formatDate$1(day, "PPPP", _this.props.locale));
|
|
23895
23895
|
};
|
|
23896
23896
|
// A function to return the holiday's name as title's content
|
|
23897
23897
|
_this.getTitle = function () {
|
|
23898
23898
|
var _a = _this.props, day = _a.day, _b = _a.holidays, holidays = _b === void 0 ? new Map() : _b, excludeDates = _a.excludeDates;
|
|
23899
|
-
var compareDt = formatDate(day, "MM.dd.yyyy");
|
|
23899
|
+
var compareDt = formatDate$1(day, "MM.dd.yyyy");
|
|
23900
23900
|
var titles = [];
|
|
23901
23901
|
if (holidays.has(compareDt)) {
|
|
23902
23902
|
titles.push.apply(titles, holidays.get(compareDt).holidayNames);
|
|
@@ -24822,7 +24822,7 @@ var Month = /** @class */ (function (_super) {
|
|
|
24822
24822
|
var prefix = _this.isDisabled(labelDate) || _this.isExcluded(labelDate)
|
|
24823
24823
|
? disabledDayAriaLabelPrefix
|
|
24824
24824
|
: chooseDayAriaLabelPrefix;
|
|
24825
|
-
return "".concat(prefix, " ").concat(formatDate(labelDate, "MMMM yyyy", locale));
|
|
24825
|
+
return "".concat(prefix, " ").concat(formatDate$1(labelDate, "MMMM yyyy", locale));
|
|
24826
24826
|
};
|
|
24827
24827
|
_this.getQuarterClassNames = function (q) {
|
|
24828
24828
|
var _a = _this.props, day = _a.day, startDate = _a.startDate, endDate = _a.endDate, minDate = _a.minDate, maxDate = _a.maxDate, excludeDates = _a.excludeDates, includeDates = _a.includeDates, filterDate = _a.filterDate, preSelection = _a.preSelection, disabledKeyboardNavigation = _a.disabledKeyboardNavigation, disabled = _a.disabled;
|
|
@@ -24924,7 +24924,7 @@ var Month = /** @class */ (function (_super) {
|
|
|
24924
24924
|
: "";
|
|
24925
24925
|
// Format aria-label, return empty string if date is invalid
|
|
24926
24926
|
var formattedAriaLabel = isValid(day)
|
|
24927
|
-
? "".concat(formattedAriaLabelPrefix).concat(formatDate(day, "MMMM, yyyy", this.props.locale))
|
|
24927
|
+
? "".concat(formattedAriaLabelPrefix).concat(formatDate$1(day, "MMMM, yyyy", this.props.locale))
|
|
24928
24928
|
: "";
|
|
24929
24929
|
var shouldUseListboxRole = showMonthYearPicker || showQuarterYearPicker;
|
|
24930
24930
|
if (shouldUseListboxRole) {
|
|
@@ -25067,7 +25067,7 @@ var MonthYearDropdownOptions = /** @class */ (function (_super) {
|
|
|
25067
25067
|
? "react-datepicker__month-year-option--selected_month-year"
|
|
25068
25068
|
: "react-datepicker__month-year-option", key: monthYearPoint, onClick: _this.onChange.bind(_this, monthYearPoint), "aria-selected": isSameMonthYear ? "true" : undefined },
|
|
25069
25069
|
isSameMonthYear ? (React__default.createElement("span", { className: "react-datepicker__month-year-option--selected" }, "\u2713")) : (""),
|
|
25070
|
-
formatDate(monthYear, _this.props.dateFormat, _this.props.locale)));
|
|
25070
|
+
formatDate$1(monthYear, _this.props.dateFormat, _this.props.locale)));
|
|
25071
25071
|
});
|
|
25072
25072
|
};
|
|
25073
25073
|
_this.onChange = function (monthYear) { return _this.props.onChange(monthYear); };
|
|
@@ -25102,7 +25102,7 @@ var MonthYearDropdown = /** @class */ (function (_super) {
|
|
|
25102
25102
|
var options = [];
|
|
25103
25103
|
while (!isAfter$1(currDate, lastDate)) {
|
|
25104
25104
|
var timePoint = getTime(currDate);
|
|
25105
|
-
options.push(React__default.createElement("option", { key: timePoint, value: timePoint }, formatDate(currDate, _this.props.dateFormat, _this.props.locale)));
|
|
25105
|
+
options.push(React__default.createElement("option", { key: timePoint, value: timePoint }, formatDate$1(currDate, _this.props.dateFormat, _this.props.locale)));
|
|
25106
25106
|
currDate = addMonths(currDate, 1);
|
|
25107
25107
|
}
|
|
25108
25108
|
return options;
|
|
@@ -25112,7 +25112,7 @@ var MonthYearDropdown = /** @class */ (function (_super) {
|
|
|
25112
25112
|
};
|
|
25113
25113
|
_this.renderSelectMode = function () { return (React__default.createElement("select", { value: getTime(getStartOfMonth(_this.props.date)), className: "react-datepicker__month-year-select", onChange: _this.onSelectChange }, _this.renderSelectOptions())); };
|
|
25114
25114
|
_this.renderReadView = function (visible) {
|
|
25115
|
-
var yearMonth = formatDate(_this.props.date, _this.props.dateFormat, _this.props.locale);
|
|
25115
|
+
var yearMonth = formatDate$1(_this.props.date, _this.props.dateFormat, _this.props.locale);
|
|
25116
25116
|
return (React__default.createElement("div", { key: "read", style: { visibility: visible ? "visible" : "hidden" }, className: "react-datepicker__month-year-read-view", onClick: _this.toggleDropdown },
|
|
25117
25117
|
React__default.createElement("span", { className: "react-datepicker__month-year-read-view--down-arrow" }),
|
|
25118
25118
|
React__default.createElement("span", { className: "react-datepicker__month-year-read-view--selected-month-year" }, yearMonth)));
|
|
@@ -25281,7 +25281,7 @@ var Time = /** @class */ (function (_super) {
|
|
|
25281
25281
|
}
|
|
25282
25282
|
}, onKeyDown: function (event) {
|
|
25283
25283
|
_this.handleOnKeyDown(event, time);
|
|
25284
|
-
}, tabIndex: time === timeToFocus ? 0 : -1, role: "option", "aria-selected": _this.isSelectedTime(time) ? "true" : undefined, "aria-disabled": _this.isDisabledTime(time) ? "true" : undefined }, formatDate(time, format, _this.props.locale)));
|
|
25284
|
+
}, tabIndex: time === timeToFocus ? 0 : -1, role: "option", "aria-selected": _this.isSelectedTime(time) ? "true" : undefined, "aria-disabled": _this.isDisabledTime(time) ? "true" : undefined }, formatDate$1(time, format, _this.props.locale)));
|
|
25285
25285
|
});
|
|
25286
25286
|
};
|
|
25287
25287
|
_this.renderTimeCaption = function () {
|
|
@@ -26052,7 +26052,7 @@ var Calendar = /** @class */ (function (_super) {
|
|
|
26052
26052
|
? _this.props.weekDayClassName(day)
|
|
26053
26053
|
: undefined;
|
|
26054
26054
|
return (React__default.createElement("div", { key: offset, role: "columnheader", className: clsx("react-datepicker__day-name", weekDayClassName, disabled ? "react-datepicker__day-name--disabled" : "") },
|
|
26055
|
-
React__default.createElement("span", { className: "react-datepicker__sr-only" }, formatDate(day, "EEEE", _this.props.locale)),
|
|
26055
|
+
React__default.createElement("span", { className: "react-datepicker__sr-only" }, formatDate$1(day, "EEEE", _this.props.locale)),
|
|
26056
26056
|
React__default.createElement("span", { "aria-hidden": "true" }, weekDayName)));
|
|
26057
26057
|
}));
|
|
26058
26058
|
};
|
|
@@ -26232,7 +26232,7 @@ var Calendar = /** @class */ (function (_super) {
|
|
|
26232
26232
|
classes.push("react-datepicker__current-month--hasMonthYearDropdown");
|
|
26233
26233
|
}
|
|
26234
26234
|
return (React__default.createElement("h2", { className: classes.join(" ") }, isValid(date)
|
|
26235
|
-
? formatDate(date, _this.props.dateFormat, _this.props.locale)
|
|
26235
|
+
? formatDate$1(date, _this.props.dateFormat, _this.props.locale)
|
|
26236
26236
|
: ""));
|
|
26237
26237
|
};
|
|
26238
26238
|
_this.renderYearDropdown = function (overrideHide) {
|
|
@@ -27216,7 +27216,7 @@ var DatePicker = /** @class */ (function (_super) {
|
|
|
27216
27216
|
var newMinutes = Math.min(maxMinutes, currentMinutes + timeIntervals);
|
|
27217
27217
|
newTime = addMinutes(baseDate, newMinutes);
|
|
27218
27218
|
}
|
|
27219
|
-
var formattedTime = formatDate(newTime, formatStr || DatePicker.defaultProps.dateFormat, _this.props.locale);
|
|
27219
|
+
var formattedTime = formatDate$1(newTime, formatStr || DatePicker.defaultProps.dateFormat, _this.props.locale);
|
|
27220
27220
|
_this.setState({
|
|
27221
27221
|
preSelection: newTime,
|
|
27222
27222
|
inputValue: formattedTime,
|
|
@@ -27808,24 +27808,77 @@ var PRESELECT_CHANGE_VIA_INPUT = "input";
|
|
|
27808
27808
|
var PRESELECT_CHANGE_VIA_NAVIGATE = "navigate";
|
|
27809
27809
|
|
|
27810
27810
|
const MONTHS = moment.months();
|
|
27811
|
+
/** The one format the field displays and accepts when typed. */
|
|
27812
|
+
const DATE_FORMAT = 'DD/MM/YYYY';
|
|
27813
|
+
const BOUND_FORMAT = 'YYYY-MM-DD';
|
|
27814
|
+
const MAX_DIGITS = 8;
|
|
27811
27815
|
function computeDateBounds(min, max) {
|
|
27812
27816
|
const minDate = min
|
|
27813
27817
|
? min instanceof Date
|
|
27814
|
-
? moment(min).format(
|
|
27818
|
+
? moment(min).format(BOUND_FORMAT)
|
|
27815
27819
|
: min
|
|
27816
27820
|
: undefined;
|
|
27817
27821
|
const maxDate = max
|
|
27818
27822
|
? max instanceof Date
|
|
27819
|
-
? moment(max).format(
|
|
27823
|
+
? moment(max).format(BOUND_FORMAT)
|
|
27820
27824
|
: max
|
|
27821
27825
|
: undefined;
|
|
27822
27826
|
return {
|
|
27823
27827
|
minDate,
|
|
27824
27828
|
maxDate,
|
|
27825
|
-
minYear: minDate ? moment(minDate,
|
|
27826
|
-
maxYear: maxDate ? moment(maxDate,
|
|
27829
|
+
minYear: minDate ? moment(minDate, BOUND_FORMAT).year() : undefined,
|
|
27830
|
+
maxYear: maxDate ? moment(maxDate, BOUND_FORMAT).year() : undefined,
|
|
27827
27831
|
};
|
|
27828
27832
|
}
|
|
27833
|
+
function formatDate(value) {
|
|
27834
|
+
return value ? moment(value).format(DATE_FORMAT) : '';
|
|
27835
|
+
}
|
|
27836
|
+
function toBoundDate(bound) {
|
|
27837
|
+
return bound ? moment(bound, BOUND_FORMAT).toDate() : undefined;
|
|
27838
|
+
}
|
|
27839
|
+
/**
|
|
27840
|
+
* Keep only the digits a date can hold and re-insert the separators, so typing
|
|
27841
|
+
* `25082026` reads back as `25/08/2026` and pasted junk cannot survive.
|
|
27842
|
+
*/
|
|
27843
|
+
function maskDateText(text) {
|
|
27844
|
+
const digits = text.replace(/\D/g, '').slice(0, MAX_DIGITS);
|
|
27845
|
+
if (digits.length <= 2)
|
|
27846
|
+
return digits;
|
|
27847
|
+
if (digits.length <= 4)
|
|
27848
|
+
return `${digits.slice(0, 2)}/${digits.slice(2)}`;
|
|
27849
|
+
return `${digits.slice(0, 2)}/${digits.slice(2, 4)}/${digits.slice(4)}`;
|
|
27850
|
+
}
|
|
27851
|
+
function countDigits(text) {
|
|
27852
|
+
return text.replace(/\D/g, '').length;
|
|
27853
|
+
}
|
|
27854
|
+
/** Offset in `text` that sits just after its nth digit. */
|
|
27855
|
+
function caretAfterDigits(text, digits) {
|
|
27856
|
+
if (digits <= 0)
|
|
27857
|
+
return 0;
|
|
27858
|
+
let seen = 0;
|
|
27859
|
+
for (let index = 0; index < text.length; index += 1) {
|
|
27860
|
+
if (text[index] >= '0' && text[index] <= '9') {
|
|
27861
|
+
seen += 1;
|
|
27862
|
+
if (seen === digits)
|
|
27863
|
+
return index + 1;
|
|
27864
|
+
}
|
|
27865
|
+
}
|
|
27866
|
+
return text.length;
|
|
27867
|
+
}
|
|
27868
|
+
function parseDateText(text) {
|
|
27869
|
+
const parsed = moment(text, DATE_FORMAT, true);
|
|
27870
|
+
return parsed.isValid() ? parsed.toDate() : undefined;
|
|
27871
|
+
}
|
|
27872
|
+
function isWithinBounds(date, { minDate, maxDate }) {
|
|
27873
|
+
const day = moment(date).startOf('day');
|
|
27874
|
+
if (minDate && day.isBefore(moment(minDate, BOUND_FORMAT).startOf('day'))) {
|
|
27875
|
+
return false;
|
|
27876
|
+
}
|
|
27877
|
+
if (maxDate && day.isAfter(moment(maxDate, BOUND_FORMAT).startOf('day'))) {
|
|
27878
|
+
return false;
|
|
27879
|
+
}
|
|
27880
|
+
return true;
|
|
27881
|
+
}
|
|
27829
27882
|
|
|
27830
27883
|
function DatePickerHeader({ monthDate, changeYear, changeMonth, decreaseMonth, increaseMonth, prevMonthButtonDisabled, nextMonthButtonDisabled, minYear, maxYear, hidePrev, hideNext, }) {
|
|
27831
27884
|
const current = moment(monthDate);
|
|
@@ -27840,25 +27893,39 @@ function DatePickerHeader({ monthDate, changeYear, changeMonth, decreaseMonth, i
|
|
|
27840
27893
|
return (jsxs("div", { className: "date-range-picker-header", children: [hidePrev ? (jsx("span", { className: "date-range-picker-nav-spacer", "aria-hidden": true })) : (jsx("button", { type: "button", onClick: decreaseMonth, disabled: prevMonthButtonDisabled, "aria-label": "Previous month", className: "date-range-picker-nav", children: jsx(ChevronLeft, { className: "h-4 w-4", strokeWidth: 2 }) })), jsxs("div", { className: "date-range-picker-selects", children: [jsx("div", { className: "date-range-picker-select-wrap", children: jsx("select", { "aria-label": "Select month", className: "date-range-picker-select", value: shownMonth, onChange: (event) => changeMonth(Number(event.target.value)), children: MONTHS.map((label, index) => (jsx("option", { value: index, children: label }, label))) }) }), jsx("div", { className: "date-range-picker-select-wrap", children: jsx("select", { "aria-label": "Select year", className: "date-range-picker-select", value: shownYear, onChange: (event) => changeYear(Number(event.target.value)), children: years.map((year) => (jsx("option", { value: year, children: year }, year))) }) })] }), hideNext ? (jsx("span", { className: "date-range-picker-nav-spacer", "aria-hidden": true })) : (jsx("button", { type: "button", onClick: increaseMonth, disabled: nextMonthButtonDisabled, "aria-label": "Next month", className: "date-range-picker-nav", children: jsx(ChevronRight, { className: "h-4 w-4", strokeWidth: 2 }) }))] }));
|
|
27841
27894
|
}
|
|
27842
27895
|
|
|
27843
|
-
var css_248z$2 = "@charset \"UTF-8\";.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow,.react-datepicker__navigation-icon:before,.react-datepicker__year-read-view--down-arrow{border-color:#ccc;border-style:solid;border-width:3px 3px 0 0;content:\"\";display:block;height:9px;position:absolute;top:6px;width:9px}.react-datepicker__sr-only{border:0;clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.react-datepicker-wrapper{border:0;display:inline-block;padding:0}.react-datepicker{background-color:#fff;border:1px solid #aeaeae;border-radius:.3rem;color:#000;display:inline-block;font-family:Helvetica Neue,helvetica,arial,sans-serif;font-size:.8rem;line-height:normal;position:relative}.react-datepicker--time-only .react-datepicker__time-container{border-left:0}.react-datepicker--time-only .react-datepicker__time,.react-datepicker--time-only .react-datepicker__time-box{border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem}.react-datepicker-popper{line-height:0;z-index:1}.react-datepicker-popper .react-datepicker__triangle{stroke:#aeaeae}.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle{fill:#f0f0f0;color:#f0f0f0}.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle{fill:#fff;color:#fff}.react-datepicker__header{background-color:#f0f0f0;border-bottom:1px solid #aeaeae;border-top-left-radius:.3rem;padding:8px 0;position:relative;text-align:center}.react-datepicker__header--time{padding-bottom:8px;padding-left:5px;padding-right:5px}.react-datepicker__header--time:not(.react-datepicker__header--time--only){border-top-left-radius:0}.react-datepicker__header:not(.react-datepicker__header--has-time-select){border-top-right-radius:.3rem}.react-datepicker__month-dropdown-container--scroll,.react-datepicker__month-dropdown-container--select,.react-datepicker__month-year-dropdown-container--scroll,.react-datepicker__month-year-dropdown-container--select,.react-datepicker__year-dropdown-container--scroll,.react-datepicker__year-dropdown-container--select{display:inline-block;margin:0 15px}.react-datepicker-time__header,.react-datepicker-year-header,.react-datepicker__current-month{color:#000;font-size:.944rem;font-weight:700;margin-top:0}h2.react-datepicker__current-month{margin:0;padding:0}.react-datepicker-time__header{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.react-datepicker__navigation{align-items:center;background:none;border:none;cursor:pointer;display:flex;height:32px;justify-content:center;overflow:hidden;padding:0;position:absolute;text-align:center;text-indent:-999em;top:2px;width:32px;z-index:1}.react-datepicker__navigation--previous{left:2px}.react-datepicker__navigation--next{right:2px}.react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:85px}.react-datepicker__navigation--years{display:block;margin-left:auto;margin-right:auto;position:relative;top:0}.react-datepicker__navigation--years-previous{top:4px}.react-datepicker__navigation--years-upcoming{top:-4px}.react-datepicker__navigation:hover :before{border-color:#a6a6a6}.react-datepicker__navigation-icon{font-size:20px;position:relative;top:-1px;width:0}.react-datepicker__navigation-icon--next{left:-2px}.react-datepicker__navigation-icon--next:before{left:-7px;transform:rotate(45deg)}.react-datepicker__navigation-icon--previous{right:-2px}.react-datepicker__navigation-icon--previous:before{right:-7px;transform:rotate(225deg)}.react-datepicker__month-container{float:left}.react-datepicker__year{margin:.4rem;text-align:center}.react-datepicker__year-wrapper{display:flex;flex-wrap:wrap;max-width:180px}.react-datepicker__year .react-datepicker__year-text{display:inline-block;margin:2px;width:4rem}.react-datepicker__month{margin:.4rem;text-align:center}.react-datepicker__month .react-datepicker__month-text,.react-datepicker__month .react-datepicker__quarter-text{display:inline-block;margin:2px;width:4rem}.react-datepicker__input-time-container{clear:both;float:left;margin:5px 0 10px 15px;text-align:left;width:100%}.react-datepicker__input-time-container .react-datepicker-time__caption,.react-datepicker__input-time-container .react-datepicker-time__input-container{display:inline-block}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input{display:inline-block;margin-left:10px}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input{width:auto}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-inner-spin-button,.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]{-moz-appearance:textfield}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__delimiter{display:inline-block;margin-left:5px}.react-datepicker__time-container{border-left:1px solid #aeaeae;float:right;width:85px}.react-datepicker__time-container--with-today-button{border:1px solid #aeaeae;border-radius:.3rem;display:inline;position:absolute;right:-87px;top:0}.react-datepicker__time-container .react-datepicker__time{background:#fff;border-bottom-right-radius:.3rem;position:relative}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box{border-bottom-right-radius:.3rem;margin:0 auto;overflow-x:hidden;text-align:center;width:85px}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list{box-sizing:content-box;height:calc(195px + .85rem);list-style:none;margin:0;overflow-y:scroll;padding-left:0;padding-right:0;width:100%}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item{height:30px;padding:5px 10px;white-space:nowrap}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item:hover{background-color:#f0f0f0;cursor:pointer}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected{background-color:#216ba5;color:#fff;font-weight:700}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected:hover{background-color:#216ba5}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled{color:#ccc}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled:hover{background-color:transparent;cursor:default}.react-datepicker__week-number{color:#ccc;display:inline-block;line-height:1.7rem;margin:.166rem;text-align:center;width:1.7rem}.react-datepicker__week-number.react-datepicker__week-number--clickable{cursor:pointer}.react-datepicker__week-number.react-datepicker__week-number--clickable:not(.react-datepicker__week-number--selected):hover{background-color:#f0f0f0;border-radius:.3rem}.react-datepicker__week-number--selected{background-color:#216ba5;border-radius:.3rem;color:#fff}.react-datepicker__week-number--selected:hover{background-color:#1d5d90}.react-datepicker__day-names{margin-bottom:-8px;text-align:center;white-space:nowrap}.react-datepicker__week{white-space:nowrap}.react-datepicker__day,.react-datepicker__day-name,.react-datepicker__time-name{color:#000;display:inline-block;line-height:1.7rem;margin:.166rem;text-align:center;width:1.7rem}.react-datepicker__day--disabled,.react-datepicker__day-name--disabled,.react-datepicker__time-name--disabled{color:#ccc;cursor:default}.react-datepicker__day,.react-datepicker__month-text,.react-datepicker__quarter-text,.react-datepicker__year-text{cursor:pointer}.react-datepicker__day:not([aria-disabled=true]):hover,.react-datepicker__month-text:not([aria-disabled=true]):hover,.react-datepicker__quarter-text:not([aria-disabled=true]):hover,.react-datepicker__year-text:not([aria-disabled=true]):hover{background-color:#f0f0f0;border-radius:.3rem}.react-datepicker__day--today,.react-datepicker__month-text--today,.react-datepicker__quarter-text--today,.react-datepicker__year-text--today{font-weight:700}.react-datepicker__day--highlighted,.react-datepicker__month-text--highlighted,.react-datepicker__quarter-text--highlighted,.react-datepicker__year-text--highlighted{background-color:#3dcc4a;border-radius:.3rem;color:#fff}.react-datepicker__day--highlighted:not([aria-disabled=true]):hover,.react-datepicker__month-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__year-text--highlighted:not([aria-disabled=true]):hover{background-color:#32be3f}.react-datepicker__day--highlighted-custom-1,.react-datepicker__month-text--highlighted-custom-1,.react-datepicker__quarter-text--highlighted-custom-1,.react-datepicker__year-text--highlighted-custom-1{color:#f0f}.react-datepicker__day--highlighted-custom-2,.react-datepicker__month-text--highlighted-custom-2,.react-datepicker__quarter-text--highlighted-custom-2,.react-datepicker__year-text--highlighted-custom-2{color:green}.react-datepicker__day--holidays,.react-datepicker__month-text--holidays,.react-datepicker__quarter-text--holidays,.react-datepicker__year-text--holidays{background-color:#ff6803;border-radius:.3rem;color:#fff;position:relative}.react-datepicker__day--holidays .overlay,.react-datepicker__month-text--holidays .overlay,.react-datepicker__quarter-text--holidays .overlay,.react-datepicker__year-text--holidays .overlay{background-color:#333;border-radius:4px;bottom:100%;color:#fff;left:50%;opacity:0;padding:4px;position:absolute;transform:translateX(-50%);transition:visibility 0s,opacity .3s ease-in-out;visibility:hidden;white-space:nowrap}.react-datepicker__day--holidays:not([aria-disabled=true]):hover,.react-datepicker__month-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__year-text--holidays:not([aria-disabled=true]):hover{background-color:#cf5300}.react-datepicker__day--holidays:hover .overlay,.react-datepicker__month-text--holidays:hover .overlay,.react-datepicker__quarter-text--holidays:hover .overlay,.react-datepicker__year-text--holidays:hover .overlay{opacity:1;visibility:visible}.react-datepicker__day--in-range,.react-datepicker__day--in-selecting-range,.react-datepicker__day--selected,.react-datepicker__month-text--in-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__month-text--selected,.react-datepicker__quarter-text--in-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__quarter-text--selected,.react-datepicker__year-text--in-range,.react-datepicker__year-text--in-selecting-range,.react-datepicker__year-text--selected{background-color:#216ba5;border-radius:.3rem;color:#fff}.react-datepicker__day--in-range:not([aria-disabled=true]):hover,.react-datepicker__day--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__day--selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--selected:not([aria-disabled=true]):hover{background-color:#1d5d90}.react-datepicker__day--keyboard-selected,.react-datepicker__month-text--keyboard-selected,.react-datepicker__quarter-text--keyboard-selected,.react-datepicker__year-text--keyboard-selected{background-color:#bad9f1;border-radius:.3rem;color:#000}.react-datepicker__day--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--keyboard-selected:not([aria-disabled=true]):hover{background-color:#1d5d90;color:#fff}.react-datepicker__day--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__month-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__quarter-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__year-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range){background-color:rgba(33,107,165,.5)}.react-datepicker__month--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range){background-color:#f0f0f0;color:#000}.react-datepicker__day--disabled,.react-datepicker__month-text--disabled,.react-datepicker__quarter-text--disabled,.react-datepicker__year-text--disabled{color:#ccc;cursor:default}.react-datepicker__day--disabled .overlay,.react-datepicker__month-text--disabled .overlay,.react-datepicker__quarter-text--disabled .overlay,.react-datepicker__year-text--disabled .overlay{background-color:#333;border-radius:4px;bottom:70%;color:#fff;left:50%;opacity:0;padding:4px;position:absolute;transform:translateX(-50%);transition:visibility 0s,opacity .3s ease-in-out;visibility:hidden;white-space:nowrap}.react-datepicker__input-container{display:inline-block;position:relative;width:100%}.react-datepicker__input-container .react-datepicker__calendar-icon{box-sizing:content-box;padding:.5rem;position:absolute}.react-datepicker__view-calendar-icon input{padding:6px 10px 5px 25px}.react-datepicker__month-read-view,.react-datepicker__month-year-read-view,.react-datepicker__year-read-view{border:1px solid transparent;border-radius:.3rem;position:relative}.react-datepicker__month-read-view:hover,.react-datepicker__month-year-read-view:hover,.react-datepicker__year-read-view:hover{cursor:pointer}.react-datepicker__month-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__year-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__year-read-view:hover .react-datepicker__year-read-view--down-arrow{border-top-color:#b3b3b3}.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow,.react-datepicker__year-read-view--down-arrow{right:-16px;top:0;transform:rotate(135deg)}.react-datepicker__month-dropdown,.react-datepicker__month-year-dropdown,.react-datepicker__year-dropdown{background-color:#f0f0f0;border:1px solid #aeaeae;border-radius:.3rem;left:25%;position:absolute;text-align:center;top:30px;width:50%;z-index:1}.react-datepicker__month-dropdown:hover,.react-datepicker__month-year-dropdown:hover,.react-datepicker__year-dropdown:hover{cursor:pointer}.react-datepicker__month-dropdown--scrollable,.react-datepicker__month-year-dropdown--scrollable,.react-datepicker__year-dropdown--scrollable{height:150px;overflow-y:scroll}.react-datepicker__month-option,.react-datepicker__month-year-option,.react-datepicker__year-option{display:block;line-height:20px;margin-left:auto;margin-right:auto;width:100%}.react-datepicker__month-option:first-of-type,.react-datepicker__month-year-option:first-of-type,.react-datepicker__year-option:first-of-type{border-top-left-radius:.3rem;border-top-right-radius:.3rem}.react-datepicker__month-option:last-of-type,.react-datepicker__month-year-option:last-of-type,.react-datepicker__year-option:last-of-type{border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.react-datepicker__month-option:hover,.react-datepicker__month-year-option:hover,.react-datepicker__year-option:hover{background-color:#ccc}.react-datepicker__month-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__year-option:hover .react-datepicker__navigation--years-upcoming{border-bottom-color:#b3b3b3}.react-datepicker__month-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__year-option:hover .react-datepicker__navigation--years-previous{border-top-color:#b3b3b3}.react-datepicker__month-option--selected,.react-datepicker__month-year-option--selected,.react-datepicker__year-option--selected{left:15px;position:absolute}.react-datepicker__close-icon{background-color:transparent;border:0;cursor:pointer;display:table-cell;height:100%;outline:0;padding:0 6px 0 0;position:absolute;right:0;top:0;vertical-align:middle}.react-datepicker__close-icon:after{background-color:#216ba5;border-radius:50%;color:#fff;content:\"×\";cursor:pointer;display:table-cell;font-size:12px;height:16px;line-height:1;padding:2px;text-align:center;vertical-align:middle;width:16px}.react-datepicker__close-icon--disabled{cursor:default}.react-datepicker__close-icon--disabled:after{background-color:#ccc;cursor:default}.react-datepicker__today-button{background:#f0f0f0;border-top:1px solid #aeaeae;clear:left;cursor:pointer;font-weight:700;padding:5px 0;text-align:center}.react-datepicker__portal{align-items:center;background-color:rgba(0,0,0,.8);display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:2147483647}.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__time-name{line-height:3rem;width:3rem}@media (max-height:550px),(max-width:400px){.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__time-name{line-height:2rem;width:2rem}}.react-datepicker__portal .react-datepicker-time__header,.react-datepicker__portal .react-datepicker__current-month{font-size:1.44rem}.react-datepicker__children-container{height:auto;margin:.4rem;padding-left:.2rem;padding-right:.2rem;width:13.8rem}.react-datepicker__aria-live{border:0;clip-path:circle(0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.react-datepicker__calendar-icon{height:1em;vertical-align:-.125em;width:1em}";
|
|
27844
|
-
styleInject(css_248z$2);
|
|
27845
|
-
|
|
27846
|
-
var css_248z$1 = ".date-range-picker-popover[data-slot=popover-content]{max-width:calc(100vw - 2rem);width:fit-content}.date-range-picker-calendar.react-datepicker{background:transparent;border:0;display:flex;flex-direction:column;font-family:inherit;font-size:.875rem}.date-range-picker-calendar .react-datepicker__month-container{float:none;width:auto}.date-range-picker-calendar .react-datepicker__header{background:transparent;border-bottom:0;padding:0}.date-range-picker-calendar .react-datepicker__current-month{display:none}.date-range-picker-header{align-items:center;display:flex;gap:.5rem;justify-content:space-between;padding:0 .25rem .25rem}.date-range-picker-selects{align-items:center;display:flex;gap:.375rem}.date-range-picker-select-wrap{align-items:center;display:inline-flex;position:relative}.date-range-picker-select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-color:var(--background);background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2371717a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E\");background-position:right .375rem center;background-repeat:no-repeat;background-size:.875rem;border:1px solid var(--input-border,var(--border));border-radius:.5rem;color:var(--foreground);cursor:pointer;font-size:.8125rem;font-weight:500;height:1.875rem;line-height:1.875rem;outline:none;padding:0 1.5rem 0 .625rem;transition:border-color .15s,box-shadow .15s}.date-range-picker-select:hover{background-color:var(--muted)}.date-range-picker-select:focus-visible{border-color:var(--ring);box-shadow:0 0 0 3px color-mix(in srgb,var(--ring) 30%,transparent)}.date-range-picker-select option{background-color:var(--popover,var(--background));color:var(--foreground)}.date-range-picker-nav-spacer{display:inline-block;height:1.75rem;width:1.75rem}.date-range-picker-nav{align-items:center;background-color:var(--muted);border:0;border-radius:.5rem;color:var(--muted-foreground);cursor:pointer;display:inline-flex;height:1.75rem;justify-content:center;padding:0;transition:background-color .15s,color .15s;width:1.75rem}.date-range-picker-nav:hover{background-color:var(--accent);color:var(--foreground)}.date-range-picker-nav:disabled{cursor:not-allowed;opacity:.4}.date-range-picker-calendar .react-datepicker__day-names{display:flex;justify-content:space-between;margin:.5rem 0 .25rem}.date-range-picker-calendar .react-datepicker__day-name{color:var(--muted-foreground);font-size:.75rem;font-weight:400;line-height:1.75rem;margin:0;width:2.25rem}.date-range-picker-calendar .react-datepicker__month{margin:0}.date-range-picker-calendar .react-datepicker__week{display:flex;justify-content:space-between}.date-range-picker-calendar .react-datepicker__day{align-items:center;border-radius:.5rem;color:var(--foreground);display:inline-flex;font-size:.875rem;height:2.25rem;justify-content:center;line-height:2.25rem;margin:.125rem 0;width:2.25rem}.date-range-picker-calendar .react-datepicker__day--outside-month{color:var(--muted-foreground);opacity:.55}.date-range-picker-calendar .react-datepicker__day:hover{background-color:var(--muted);border-radius:.5rem}.date-range-picker-calendar .react-datepicker__day--today{background-color:var(--muted);color:var(--foreground);font-weight:600}.date-range-picker-calendar .react-datepicker__day--keyboard-selected,.date-range-picker-calendar .react-datepicker__day--selected{background-color:var(--primary);color:var(--primary-foreground);font-weight:500}.date-range-picker-calendar .react-datepicker__day--keyboard-selected:hover,.date-range-picker-calendar .react-datepicker__day--selected:hover{background-color:var(--primary);color:var(--primary-foreground);filter:brightness(.95)}.date-range-picker-calendar .react-datepicker__day--in-range,.date-range-picker-calendar .react-datepicker__day--in-selecting-range{background-color:color-mix(in srgb,var(--primary) 18%,transparent);color:var(--primary)}.date-range-picker-calendar .react-datepicker__day--range-end,.date-range-picker-calendar .react-datepicker__day--range-start{background-color:var(--primary);color:var(--primary-foreground)}.date-range-picker-calendar .react-datepicker__day--disabled{color:var(--muted-foreground);cursor:not-allowed;opacity:.4}.date-range-picker-calendar .react-datepicker__children-container{margin:0;padding:0;width:auto}.date-range-picker-footer{align-items:center;display:flex;justify-content:space-between;margin-top:.75rem;padding-top:.75rem;width:100%}.date-range-picker-action{align-items:center;background-color:color-mix(in srgb,var(--primary) 10%,transparent);border:0;border-radius:.5rem;color:var(--primary);cursor:pointer;display:inline-flex;font-size:.8125rem;font-weight:500;height:2rem;justify-content:center;padding:0 .875rem;transition:background-color .15s}.date-range-picker-action:hover{background-color:color-mix(in srgb,var(--primary) 18%,transparent)}:is(.dark) .date-range-picker-calendar .react-datepicker__day--today{background-color:color-mix(in srgb,var(--muted) 80%,transparent)}:is(.dark) .date-range-picker-action{background-color:color-mix(in srgb,var(--primary) 18%,transparent)}:is(.dark) .date-range-picker-action:hover{background-color:color-mix(in srgb,var(--primary) 28%,transparent)}";
|
|
27847
|
-
styleInject(css_248z$1);
|
|
27848
|
-
|
|
27849
27896
|
// Only one DateInput popover should be open at a time. Because each instance is
|
|
27850
27897
|
// its own `modal` Radix Popover, opening a second one does not dismiss the first
|
|
27851
27898
|
// via outside-click. Instances coordinate through a window event: whoever opens
|
|
27852
27899
|
// broadcasts its id, and every other open instance closes itself.
|
|
27853
27900
|
const DATEINPUT_OPEN_EVENT = 'caratlogic:dateinput-open';
|
|
27854
|
-
function
|
|
27901
|
+
function useDateInput({ value, onChange, onBlur, min, max, disabled, }) {
|
|
27855
27902
|
const [open, setOpen] = useState(false);
|
|
27856
27903
|
const instanceId = useId$2();
|
|
27857
|
-
const
|
|
27858
|
-
|
|
27904
|
+
const inputRef = useRef(null);
|
|
27905
|
+
const caretRef = useRef(null);
|
|
27906
|
+
const bounds = computeDateBounds(min, max);
|
|
27907
|
+
const formatted = formatDate(value);
|
|
27908
|
+
const [text, setText] = useState(formatted);
|
|
27909
|
+
const [syncedValue, setSyncedValue] = useState(formatted);
|
|
27910
|
+
// Adopt `value` whenever it changes from the outside — a form reset, a
|
|
27911
|
+
// calendar pick, a sibling field narrowing the range — while leaving a
|
|
27912
|
+
// half-typed date alone.
|
|
27913
|
+
if (formatted !== syncedValue) {
|
|
27914
|
+
setSyncedValue(formatted);
|
|
27915
|
+
setText(formatted);
|
|
27916
|
+
}
|
|
27917
|
+
// Masking rewrites the whole string, which parks the caret at the end on any
|
|
27918
|
+
// keystroke that crosses a separator. Put it back once the DOM has the value.
|
|
27919
|
+
useLayoutEffect(() => {
|
|
27920
|
+
const caret = caretRef.current;
|
|
27921
|
+
if (caret === null || !inputRef.current)
|
|
27922
|
+
return;
|
|
27923
|
+
caretRef.current = null;
|
|
27924
|
+
inputRef.current.setSelectionRange(caret, caret);
|
|
27925
|
+
});
|
|
27859
27926
|
useEffect(() => {
|
|
27860
|
-
const onOtherOpen = (
|
|
27861
|
-
if (
|
|
27927
|
+
const onOtherOpen = (event) => {
|
|
27928
|
+
if (event.detail !== instanceId)
|
|
27862
27929
|
setOpen(false);
|
|
27863
27930
|
};
|
|
27864
27931
|
window.addEventListener(DATEINPUT_OPEN_EVENT, onOtherOpen);
|
|
@@ -27870,6 +27937,132 @@ function DateInput({ value, onChange, onBlur, name, className, min, max, disable
|
|
|
27870
27937
|
window.dispatchEvent(new CustomEvent(DATEINPUT_OPEN_EVENT, { detail: instanceId }));
|
|
27871
27938
|
}
|
|
27872
27939
|
};
|
|
27940
|
+
const commit = (date) => {
|
|
27941
|
+
const next = formatDate(date);
|
|
27942
|
+
setText(next);
|
|
27943
|
+
setSyncedValue(next);
|
|
27944
|
+
onChange(date);
|
|
27945
|
+
};
|
|
27946
|
+
/**
|
|
27947
|
+
* Show `masked` and report it upwards only once it is a whole, real,
|
|
27948
|
+
* in-range date — so `01/01/2` on the way to `01/01/2026` never lands in the
|
|
27949
|
+
* form, and an emptied field clears the value.
|
|
27950
|
+
*/
|
|
27951
|
+
const applyText = (masked, caret) => {
|
|
27952
|
+
caretRef.current = caret;
|
|
27953
|
+
setText(masked);
|
|
27954
|
+
if (masked === '') {
|
|
27955
|
+
setSyncedValue('');
|
|
27956
|
+
onChange(undefined);
|
|
27957
|
+
return;
|
|
27958
|
+
}
|
|
27959
|
+
if (masked.length < DATE_FORMAT.length)
|
|
27960
|
+
return;
|
|
27961
|
+
const parsed = parseDateText(masked);
|
|
27962
|
+
if (parsed && isWithinBounds(parsed, bounds)) {
|
|
27963
|
+
setSyncedValue(masked);
|
|
27964
|
+
onChange(parsed);
|
|
27965
|
+
}
|
|
27966
|
+
};
|
|
27967
|
+
const handleTextChange = (event) => {
|
|
27968
|
+
const raw = event.target.value;
|
|
27969
|
+
const caret = event.target.selectionStart ?? raw.length;
|
|
27970
|
+
const masked = maskDateText(raw);
|
|
27971
|
+
applyText(masked, caretAfterDigits(masked, countDigits(raw.slice(0, caret))));
|
|
27972
|
+
};
|
|
27973
|
+
/** Fall back to the committed value when the field is left mid-edit. */
|
|
27974
|
+
const normalize = () => {
|
|
27975
|
+
if (text === '')
|
|
27976
|
+
return;
|
|
27977
|
+
const parsed = parseDateText(text);
|
|
27978
|
+
if (!parsed || !isWithinBounds(parsed, bounds))
|
|
27979
|
+
setText(formatted);
|
|
27980
|
+
};
|
|
27981
|
+
const handleKeyDown = (event) => {
|
|
27982
|
+
if (event.key === 'Enter') {
|
|
27983
|
+
// Settle the field rather than submitting the form around it.
|
|
27984
|
+
event.preventDefault();
|
|
27985
|
+
setOpen(false);
|
|
27986
|
+
normalize();
|
|
27987
|
+
return;
|
|
27988
|
+
}
|
|
27989
|
+
if (event.key === 'Escape' && open) {
|
|
27990
|
+
setOpen(false);
|
|
27991
|
+
return;
|
|
27992
|
+
}
|
|
27993
|
+
if (event.key === 'ArrowDown' && event.altKey && !disabled) {
|
|
27994
|
+
event.preventDefault();
|
|
27995
|
+
handleOpenChange(true);
|
|
27996
|
+
return;
|
|
27997
|
+
}
|
|
27998
|
+
if (event.key !== 'Backspace')
|
|
27999
|
+
return;
|
|
28000
|
+
// A separator is not content: backspacing onto a `/` has to take the digit
|
|
28001
|
+
// in front of it, or the mask re-inserts the slash and the caret sticks.
|
|
28002
|
+
const input = event.currentTarget;
|
|
28003
|
+
const start = input.selectionStart ?? 0;
|
|
28004
|
+
if (start !== input.selectionEnd ||
|
|
28005
|
+
start < 2 ||
|
|
28006
|
+
input.value[start - 1] !== '/') {
|
|
28007
|
+
return;
|
|
28008
|
+
}
|
|
28009
|
+
event.preventDefault();
|
|
28010
|
+
const kept = input.value.slice(0, start - 2);
|
|
28011
|
+
const masked = maskDateText(kept + input.value.slice(start));
|
|
28012
|
+
applyText(masked, caretAfterDigits(masked, countDigits(kept)));
|
|
28013
|
+
};
|
|
28014
|
+
const handleTextBlur = () => {
|
|
28015
|
+
normalize();
|
|
28016
|
+
onBlur?.();
|
|
28017
|
+
};
|
|
28018
|
+
const parsedText = parseDateText(text);
|
|
28019
|
+
return {
|
|
28020
|
+
open,
|
|
28021
|
+
text,
|
|
28022
|
+
invalid: text.length === DATE_FORMAT.length &&
|
|
28023
|
+
(!parsedText || !isWithinBounds(parsedText, bounds)),
|
|
28024
|
+
bounds,
|
|
28025
|
+
inputRef,
|
|
28026
|
+
handleOpenChange,
|
|
28027
|
+
handleTextChange,
|
|
28028
|
+
handleKeyDown,
|
|
28029
|
+
handleTextBlur,
|
|
28030
|
+
toggleOpen: () => {
|
|
28031
|
+
if (!disabled)
|
|
28032
|
+
handleOpenChange(!open);
|
|
28033
|
+
},
|
|
28034
|
+
selectDate: (date) => {
|
|
28035
|
+
commit(date ?? undefined);
|
|
28036
|
+
if (date)
|
|
28037
|
+
setOpen(false);
|
|
28038
|
+
},
|
|
28039
|
+
clearDate: () => {
|
|
28040
|
+
commit(undefined);
|
|
28041
|
+
setOpen(false);
|
|
28042
|
+
},
|
|
28043
|
+
selectToday: () => {
|
|
28044
|
+
commit(new Date());
|
|
28045
|
+
setOpen(false);
|
|
28046
|
+
},
|
|
28047
|
+
};
|
|
28048
|
+
}
|
|
28049
|
+
|
|
28050
|
+
const CALENDAR_BUTTON_LABEL = 'Open calendar';
|
|
28051
|
+
/** Spells out what the field accepts, since the format is now typeable. */
|
|
28052
|
+
const DATE_FORMAT_HINT = `Date format ${DATE_FORMAT}`;
|
|
28053
|
+
|
|
28054
|
+
var css_248z$2 = "@charset \"UTF-8\";.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow,.react-datepicker__navigation-icon:before,.react-datepicker__year-read-view--down-arrow{border-color:#ccc;border-style:solid;border-width:3px 3px 0 0;content:\"\";display:block;height:9px;position:absolute;top:6px;width:9px}.react-datepicker__sr-only{border:0;clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.react-datepicker-wrapper{border:0;display:inline-block;padding:0}.react-datepicker{background-color:#fff;border:1px solid #aeaeae;border-radius:.3rem;color:#000;display:inline-block;font-family:Helvetica Neue,helvetica,arial,sans-serif;font-size:.8rem;line-height:normal;position:relative}.react-datepicker--time-only .react-datepicker__time-container{border-left:0}.react-datepicker--time-only .react-datepicker__time,.react-datepicker--time-only .react-datepicker__time-box{border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem}.react-datepicker-popper{line-height:0;z-index:1}.react-datepicker-popper .react-datepicker__triangle{stroke:#aeaeae}.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle{fill:#f0f0f0;color:#f0f0f0}.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle{fill:#fff;color:#fff}.react-datepicker__header{background-color:#f0f0f0;border-bottom:1px solid #aeaeae;border-top-left-radius:.3rem;padding:8px 0;position:relative;text-align:center}.react-datepicker__header--time{padding-bottom:8px;padding-left:5px;padding-right:5px}.react-datepicker__header--time:not(.react-datepicker__header--time--only){border-top-left-radius:0}.react-datepicker__header:not(.react-datepicker__header--has-time-select){border-top-right-radius:.3rem}.react-datepicker__month-dropdown-container--scroll,.react-datepicker__month-dropdown-container--select,.react-datepicker__month-year-dropdown-container--scroll,.react-datepicker__month-year-dropdown-container--select,.react-datepicker__year-dropdown-container--scroll,.react-datepicker__year-dropdown-container--select{display:inline-block;margin:0 15px}.react-datepicker-time__header,.react-datepicker-year-header,.react-datepicker__current-month{color:#000;font-size:.944rem;font-weight:700;margin-top:0}h2.react-datepicker__current-month{margin:0;padding:0}.react-datepicker-time__header{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.react-datepicker__navigation{align-items:center;background:none;border:none;cursor:pointer;display:flex;height:32px;justify-content:center;overflow:hidden;padding:0;position:absolute;text-align:center;text-indent:-999em;top:2px;width:32px;z-index:1}.react-datepicker__navigation--previous{left:2px}.react-datepicker__navigation--next{right:2px}.react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:85px}.react-datepicker__navigation--years{display:block;margin-left:auto;margin-right:auto;position:relative;top:0}.react-datepicker__navigation--years-previous{top:4px}.react-datepicker__navigation--years-upcoming{top:-4px}.react-datepicker__navigation:hover :before{border-color:#a6a6a6}.react-datepicker__navigation-icon{font-size:20px;position:relative;top:-1px;width:0}.react-datepicker__navigation-icon--next{left:-2px}.react-datepicker__navigation-icon--next:before{left:-7px;transform:rotate(45deg)}.react-datepicker__navigation-icon--previous{right:-2px}.react-datepicker__navigation-icon--previous:before{right:-7px;transform:rotate(225deg)}.react-datepicker__month-container{float:left}.react-datepicker__year{margin:.4rem;text-align:center}.react-datepicker__year-wrapper{display:flex;flex-wrap:wrap;max-width:180px}.react-datepicker__year .react-datepicker__year-text{display:inline-block;margin:2px;width:4rem}.react-datepicker__month{margin:.4rem;text-align:center}.react-datepicker__month .react-datepicker__month-text,.react-datepicker__month .react-datepicker__quarter-text{display:inline-block;margin:2px;width:4rem}.react-datepicker__input-time-container{clear:both;float:left;margin:5px 0 10px 15px;text-align:left;width:100%}.react-datepicker__input-time-container .react-datepicker-time__caption,.react-datepicker__input-time-container .react-datepicker-time__input-container{display:inline-block}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input{display:inline-block;margin-left:10px}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input{width:auto}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-inner-spin-button,.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]{-moz-appearance:textfield}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__delimiter{display:inline-block;margin-left:5px}.react-datepicker__time-container{border-left:1px solid #aeaeae;float:right;width:85px}.react-datepicker__time-container--with-today-button{border:1px solid #aeaeae;border-radius:.3rem;display:inline;position:absolute;right:-87px;top:0}.react-datepicker__time-container .react-datepicker__time{background:#fff;border-bottom-right-radius:.3rem;position:relative}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box{border-bottom-right-radius:.3rem;margin:0 auto;overflow-x:hidden;text-align:center;width:85px}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list{box-sizing:content-box;height:calc(195px + .85rem);list-style:none;margin:0;overflow-y:scroll;padding-left:0;padding-right:0;width:100%}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item{height:30px;padding:5px 10px;white-space:nowrap}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item:hover{background-color:#f0f0f0;cursor:pointer}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected{background-color:#216ba5;color:#fff;font-weight:700}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected:hover{background-color:#216ba5}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled{color:#ccc}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled:hover{background-color:transparent;cursor:default}.react-datepicker__week-number{color:#ccc;display:inline-block;line-height:1.7rem;margin:.166rem;text-align:center;width:1.7rem}.react-datepicker__week-number.react-datepicker__week-number--clickable{cursor:pointer}.react-datepicker__week-number.react-datepicker__week-number--clickable:not(.react-datepicker__week-number--selected):hover{background-color:#f0f0f0;border-radius:.3rem}.react-datepicker__week-number--selected{background-color:#216ba5;border-radius:.3rem;color:#fff}.react-datepicker__week-number--selected:hover{background-color:#1d5d90}.react-datepicker__day-names{margin-bottom:-8px;text-align:center;white-space:nowrap}.react-datepicker__week{white-space:nowrap}.react-datepicker__day,.react-datepicker__day-name,.react-datepicker__time-name{color:#000;display:inline-block;line-height:1.7rem;margin:.166rem;text-align:center;width:1.7rem}.react-datepicker__day--disabled,.react-datepicker__day-name--disabled,.react-datepicker__time-name--disabled{color:#ccc;cursor:default}.react-datepicker__day,.react-datepicker__month-text,.react-datepicker__quarter-text,.react-datepicker__year-text{cursor:pointer}.react-datepicker__day:not([aria-disabled=true]):hover,.react-datepicker__month-text:not([aria-disabled=true]):hover,.react-datepicker__quarter-text:not([aria-disabled=true]):hover,.react-datepicker__year-text:not([aria-disabled=true]):hover{background-color:#f0f0f0;border-radius:.3rem}.react-datepicker__day--today,.react-datepicker__month-text--today,.react-datepicker__quarter-text--today,.react-datepicker__year-text--today{font-weight:700}.react-datepicker__day--highlighted,.react-datepicker__month-text--highlighted,.react-datepicker__quarter-text--highlighted,.react-datepicker__year-text--highlighted{background-color:#3dcc4a;border-radius:.3rem;color:#fff}.react-datepicker__day--highlighted:not([aria-disabled=true]):hover,.react-datepicker__month-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__year-text--highlighted:not([aria-disabled=true]):hover{background-color:#32be3f}.react-datepicker__day--highlighted-custom-1,.react-datepicker__month-text--highlighted-custom-1,.react-datepicker__quarter-text--highlighted-custom-1,.react-datepicker__year-text--highlighted-custom-1{color:#f0f}.react-datepicker__day--highlighted-custom-2,.react-datepicker__month-text--highlighted-custom-2,.react-datepicker__quarter-text--highlighted-custom-2,.react-datepicker__year-text--highlighted-custom-2{color:green}.react-datepicker__day--holidays,.react-datepicker__month-text--holidays,.react-datepicker__quarter-text--holidays,.react-datepicker__year-text--holidays{background-color:#ff6803;border-radius:.3rem;color:#fff;position:relative}.react-datepicker__day--holidays .overlay,.react-datepicker__month-text--holidays .overlay,.react-datepicker__quarter-text--holidays .overlay,.react-datepicker__year-text--holidays .overlay{background-color:#333;border-radius:4px;bottom:100%;color:#fff;left:50%;opacity:0;padding:4px;position:absolute;transform:translateX(-50%);transition:visibility 0s,opacity .3s ease-in-out;visibility:hidden;white-space:nowrap}.react-datepicker__day--holidays:not([aria-disabled=true]):hover,.react-datepicker__month-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__year-text--holidays:not([aria-disabled=true]):hover{background-color:#cf5300}.react-datepicker__day--holidays:hover .overlay,.react-datepicker__month-text--holidays:hover .overlay,.react-datepicker__quarter-text--holidays:hover .overlay,.react-datepicker__year-text--holidays:hover .overlay{opacity:1;visibility:visible}.react-datepicker__day--in-range,.react-datepicker__day--in-selecting-range,.react-datepicker__day--selected,.react-datepicker__month-text--in-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__month-text--selected,.react-datepicker__quarter-text--in-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__quarter-text--selected,.react-datepicker__year-text--in-range,.react-datepicker__year-text--in-selecting-range,.react-datepicker__year-text--selected{background-color:#216ba5;border-radius:.3rem;color:#fff}.react-datepicker__day--in-range:not([aria-disabled=true]):hover,.react-datepicker__day--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__day--selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--selected:not([aria-disabled=true]):hover{background-color:#1d5d90}.react-datepicker__day--keyboard-selected,.react-datepicker__month-text--keyboard-selected,.react-datepicker__quarter-text--keyboard-selected,.react-datepicker__year-text--keyboard-selected{background-color:#bad9f1;border-radius:.3rem;color:#000}.react-datepicker__day--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--keyboard-selected:not([aria-disabled=true]):hover{background-color:#1d5d90;color:#fff}.react-datepicker__day--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__month-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__quarter-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__year-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range){background-color:rgba(33,107,165,.5)}.react-datepicker__month--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range){background-color:#f0f0f0;color:#000}.react-datepicker__day--disabled,.react-datepicker__month-text--disabled,.react-datepicker__quarter-text--disabled,.react-datepicker__year-text--disabled{color:#ccc;cursor:default}.react-datepicker__day--disabled .overlay,.react-datepicker__month-text--disabled .overlay,.react-datepicker__quarter-text--disabled .overlay,.react-datepicker__year-text--disabled .overlay{background-color:#333;border-radius:4px;bottom:70%;color:#fff;left:50%;opacity:0;padding:4px;position:absolute;transform:translateX(-50%);transition:visibility 0s,opacity .3s ease-in-out;visibility:hidden;white-space:nowrap}.react-datepicker__input-container{display:inline-block;position:relative;width:100%}.react-datepicker__input-container .react-datepicker__calendar-icon{box-sizing:content-box;padding:.5rem;position:absolute}.react-datepicker__view-calendar-icon input{padding:6px 10px 5px 25px}.react-datepicker__month-read-view,.react-datepicker__month-year-read-view,.react-datepicker__year-read-view{border:1px solid transparent;border-radius:.3rem;position:relative}.react-datepicker__month-read-view:hover,.react-datepicker__month-year-read-view:hover,.react-datepicker__year-read-view:hover{cursor:pointer}.react-datepicker__month-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__year-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__year-read-view:hover .react-datepicker__year-read-view--down-arrow{border-top-color:#b3b3b3}.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow,.react-datepicker__year-read-view--down-arrow{right:-16px;top:0;transform:rotate(135deg)}.react-datepicker__month-dropdown,.react-datepicker__month-year-dropdown,.react-datepicker__year-dropdown{background-color:#f0f0f0;border:1px solid #aeaeae;border-radius:.3rem;left:25%;position:absolute;text-align:center;top:30px;width:50%;z-index:1}.react-datepicker__month-dropdown:hover,.react-datepicker__month-year-dropdown:hover,.react-datepicker__year-dropdown:hover{cursor:pointer}.react-datepicker__month-dropdown--scrollable,.react-datepicker__month-year-dropdown--scrollable,.react-datepicker__year-dropdown--scrollable{height:150px;overflow-y:scroll}.react-datepicker__month-option,.react-datepicker__month-year-option,.react-datepicker__year-option{display:block;line-height:20px;margin-left:auto;margin-right:auto;width:100%}.react-datepicker__month-option:first-of-type,.react-datepicker__month-year-option:first-of-type,.react-datepicker__year-option:first-of-type{border-top-left-radius:.3rem;border-top-right-radius:.3rem}.react-datepicker__month-option:last-of-type,.react-datepicker__month-year-option:last-of-type,.react-datepicker__year-option:last-of-type{border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.react-datepicker__month-option:hover,.react-datepicker__month-year-option:hover,.react-datepicker__year-option:hover{background-color:#ccc}.react-datepicker__month-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__year-option:hover .react-datepicker__navigation--years-upcoming{border-bottom-color:#b3b3b3}.react-datepicker__month-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__year-option:hover .react-datepicker__navigation--years-previous{border-top-color:#b3b3b3}.react-datepicker__month-option--selected,.react-datepicker__month-year-option--selected,.react-datepicker__year-option--selected{left:15px;position:absolute}.react-datepicker__close-icon{background-color:transparent;border:0;cursor:pointer;display:table-cell;height:100%;outline:0;padding:0 6px 0 0;position:absolute;right:0;top:0;vertical-align:middle}.react-datepicker__close-icon:after{background-color:#216ba5;border-radius:50%;color:#fff;content:\"×\";cursor:pointer;display:table-cell;font-size:12px;height:16px;line-height:1;padding:2px;text-align:center;vertical-align:middle;width:16px}.react-datepicker__close-icon--disabled{cursor:default}.react-datepicker__close-icon--disabled:after{background-color:#ccc;cursor:default}.react-datepicker__today-button{background:#f0f0f0;border-top:1px solid #aeaeae;clear:left;cursor:pointer;font-weight:700;padding:5px 0;text-align:center}.react-datepicker__portal{align-items:center;background-color:rgba(0,0,0,.8);display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:2147483647}.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__time-name{line-height:3rem;width:3rem}@media (max-height:550px),(max-width:400px){.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__time-name{line-height:2rem;width:2rem}}.react-datepicker__portal .react-datepicker-time__header,.react-datepicker__portal .react-datepicker__current-month{font-size:1.44rem}.react-datepicker__children-container{height:auto;margin:.4rem;padding-left:.2rem;padding-right:.2rem;width:13.8rem}.react-datepicker__aria-live{border:0;clip-path:circle(0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.react-datepicker__calendar-icon{height:1em;vertical-align:-.125em;width:1em}";
|
|
28055
|
+
styleInject(css_248z$2);
|
|
28056
|
+
|
|
28057
|
+
var css_248z$1 = ".date-range-picker-popover[data-slot=popover-content]{max-width:calc(100vw - 2rem);width:fit-content}.date-range-picker-calendar.react-datepicker{background:transparent;border:0;display:flex;flex-direction:column;font-family:inherit;font-size:.875rem}.date-range-picker-calendar .react-datepicker__month-container{float:none;width:auto}.date-range-picker-calendar .react-datepicker__header{background:transparent;border-bottom:0;padding:0}.date-range-picker-calendar .react-datepicker__current-month{display:none}.date-range-picker-header{align-items:center;display:flex;gap:.5rem;justify-content:space-between;padding:0 .25rem .25rem}.date-range-picker-selects{align-items:center;display:flex;gap:.375rem}.date-range-picker-select-wrap{align-items:center;display:inline-flex;position:relative}.date-range-picker-select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-color:var(--background);background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2371717a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E\");background-position:right .375rem center;background-repeat:no-repeat;background-size:.875rem;border:1px solid var(--input-border,var(--border));border-radius:.5rem;color:var(--foreground);cursor:pointer;font-size:.8125rem;font-weight:500;height:1.875rem;line-height:1.875rem;outline:none;padding:0 1.5rem 0 .625rem;transition:border-color .15s,box-shadow .15s}.date-range-picker-select:hover{background-color:var(--muted)}.date-range-picker-select:focus-visible{border-color:var(--ring);box-shadow:0 0 0 3px color-mix(in srgb,var(--ring) 30%,transparent)}.date-range-picker-select option{background-color:var(--popover,var(--background));color:var(--foreground)}.date-range-picker-nav-spacer{display:inline-block;height:1.75rem;width:1.75rem}.date-range-picker-nav{align-items:center;background-color:var(--muted);border:0;border-radius:.5rem;color:var(--muted-foreground);cursor:pointer;display:inline-flex;height:1.75rem;justify-content:center;padding:0;transition:background-color .15s,color .15s;width:1.75rem}.date-range-picker-nav:hover{background-color:var(--accent);color:var(--foreground)}.date-range-picker-nav:disabled{cursor:not-allowed;opacity:.4}.date-range-picker-calendar .react-datepicker__day-names{display:flex;justify-content:space-between;margin:.5rem 0 .25rem}.date-range-picker-calendar .react-datepicker__day-name{color:var(--muted-foreground);font-size:.75rem;font-weight:400;line-height:1.75rem;margin:0;width:2.25rem}.date-range-picker-calendar .react-datepicker__month{margin:0}.date-range-picker-calendar .react-datepicker__week{display:flex;justify-content:space-between}.date-range-picker-calendar .react-datepicker__day{align-items:center;border-radius:.5rem;color:var(--foreground);display:inline-flex;font-size:.875rem;height:2.25rem;justify-content:center;line-height:2.25rem;margin:.125rem 0;width:2.25rem}.date-range-picker-calendar .react-datepicker__day--outside-month{color:var(--muted-foreground);opacity:.55}.date-range-picker-calendar .react-datepicker__day:hover{background-color:var(--muted);border-radius:.5rem}.date-range-picker-calendar .react-datepicker__day--today{background-color:var(--muted);color:var(--foreground);font-weight:600}.date-range-picker-calendar .react-datepicker__day--keyboard-selected,.date-range-picker-calendar .react-datepicker__day--selected{background-color:var(--primary);color:var(--primary-foreground);font-weight:500}.date-range-picker-calendar .react-datepicker__day--keyboard-selected:hover,.date-range-picker-calendar .react-datepicker__day--selected:hover{background-color:var(--primary);color:var(--primary-foreground);filter:brightness(.95)}.date-range-picker-calendar .react-datepicker__day--in-range,.date-range-picker-calendar .react-datepicker__day--in-selecting-range{background-color:color-mix(in srgb,var(--primary) 18%,transparent);color:var(--primary)}.date-range-picker-calendar .react-datepicker__day--range-end,.date-range-picker-calendar .react-datepicker__day--range-start{background-color:var(--primary);color:var(--primary-foreground)}.date-range-picker-calendar .react-datepicker__day--disabled{color:var(--muted-foreground);cursor:not-allowed;opacity:.4}.date-range-picker-calendar .react-datepicker__children-container{margin:0;padding:0;width:auto}.date-range-picker-footer{align-items:center;display:flex;justify-content:space-between;margin-top:.75rem;padding-top:.75rem;width:100%}.date-range-picker-action{align-items:center;background-color:color-mix(in srgb,var(--primary) 10%,transparent);border:0;border-radius:.5rem;color:var(--primary);cursor:pointer;display:inline-flex;font-size:.8125rem;font-weight:500;height:2rem;justify-content:center;padding:0 .875rem;transition:background-color .15s}.date-range-picker-action:hover{background-color:color-mix(in srgb,var(--primary) 18%,transparent)}:is(.dark) .date-range-picker-calendar .react-datepicker__day--today{background-color:color-mix(in srgb,var(--muted) 80%,transparent)}:is(.dark) .date-range-picker-action{background-color:color-mix(in srgb,var(--primary) 18%,transparent)}:is(.dark) .date-range-picker-action:hover{background-color:color-mix(in srgb,var(--primary) 28%,transparent)}";
|
|
28058
|
+
styleInject(css_248z$1);
|
|
28059
|
+
|
|
28060
|
+
/**
|
|
28061
|
+
* Date field that can be typed or picked. The text box takes a masked
|
|
28062
|
+
* `DD/MM/YYYY` entry; the trailing button opens the same calendar as before.
|
|
28063
|
+
*/
|
|
28064
|
+
function DateInput({ value, onChange, onBlur, name, id, className, min, max, disabled, placeholder = DATE_FORMAT, ariaLabel, }) {
|
|
28065
|
+
const { open, text, invalid, bounds, inputRef, handleOpenChange, handleTextChange, handleKeyDown, handleTextBlur, toggleOpen, selectDate, clearDate, selectToday, } = useDateInput({ value, onChange, onBlur, min, max, disabled });
|
|
27873
28066
|
// NOTE: We drive `open` ourselves from the button's onClick instead of using
|
|
27874
28067
|
// Radix's <PopoverTrigger> toggle. When this Popover is nested inside the
|
|
27875
28068
|
// modal <SlideOut> (Radix Dialog), the trigger's built-in toggle does not
|
|
@@ -27878,20 +28071,7 @@ function DateInput({ value, onChange, onBlur, name, className, min, max, disable
|
|
|
27878
28071
|
// source of truth — no double-fire, and it works across browsers. `modal`
|
|
27879
28072
|
// lets the open popover own pointer events above the dialog so the calendar
|
|
27880
28073
|
// (portalled to <body>) stays clickable.
|
|
27881
|
-
return (jsxs(Popover, { open: open, onOpenChange: handleOpenChange, modal: true, children: [jsx(PopoverAnchor, { asChild: true, children: jsxs("
|
|
27882
|
-
if (!disabled)
|
|
27883
|
-
handleOpenChange(!open);
|
|
27884
|
-
}, "data-slot": "input", "data-empty": !value || undefined, className: cn('border-input-border flex h-9 w-full min-w-0 cursor-pointer items-center justify-between gap-2 rounded-md border bg-transparent px-3 py-1 text-left shadow-[0_1px_2px_0_#0000000d] transition-[color,box-shadow] outline-none', 'focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]', 'aria-invalid:ring-destructive/20 aria-invalid:border-destructive', disabled && 'cursor-not-allowed bg-muted/50 text-label', className), children: [jsx("span", { className: cn('truncate text-sm md:text-sm', value ? 'text-foreground' : 'text-placeholder'), children: value ? moment(value).format('DD/MM/YYYY') : placeholder }), jsx("span", { className: "inline-flex h-4 w-4 shrink-0 items-center justify-center text-muted-foreground", children: jsx(CalendarDays, { className: "h-4 w-4 stroke-[1.75]" }) })] }) }), jsx(PopoverContent, { align: "start", className: "date-range-picker-popover w-auto p-4", children: jsx(DatePicker, { inline: true, selected: value ?? null, minDate: minDate ? moment(minDate, 'YYYY-MM-DD').toDate() : undefined, maxDate: maxDate ? moment(maxDate, 'YYYY-MM-DD').toDate() : undefined, onChange: (date) => {
|
|
27885
|
-
onChange(date ?? undefined);
|
|
27886
|
-
if (date)
|
|
27887
|
-
setOpen(false);
|
|
27888
|
-
}, calendarClassName: "date-range-picker-calendar", formatWeekDay: (weekday) => weekday.slice(0, 2), renderCustomHeader: ({ monthDate, changeYear, changeMonth, decreaseMonth, increaseMonth, prevMonthButtonDisabled, nextMonthButtonDisabled, }) => (jsx(DatePickerHeader, { monthDate: monthDate, changeYear: changeYear, changeMonth: changeMonth, decreaseMonth: decreaseMonth, increaseMonth: increaseMonth, prevMonthButtonDisabled: prevMonthButtonDisabled, nextMonthButtonDisabled: nextMonthButtonDisabled, minYear: minYear, maxYear: maxYear })), children: jsxs("div", { className: "date-range-picker-footer", children: [jsx("button", { type: "button", onClick: () => {
|
|
27889
|
-
onChange(undefined);
|
|
27890
|
-
setOpen(false);
|
|
27891
|
-
}, className: "date-range-picker-action", children: "Clear" }), jsx("button", { type: "button", onClick: () => {
|
|
27892
|
-
onChange(new Date());
|
|
27893
|
-
setOpen(false);
|
|
27894
|
-
}, className: "date-range-picker-action", children: "Today" })] }) }) })] }));
|
|
28074
|
+
return (jsxs(Popover, { open: open, onOpenChange: handleOpenChange, modal: true, children: [jsx(PopoverAnchor, { asChild: true, children: jsxs("div", { "data-slot": "input", "data-empty": !value || undefined, "data-invalid": invalid || undefined, className: cn('border-input-border flex h-9 w-full min-w-0 items-center gap-2 rounded-md border bg-transparent px-3 py-1 shadow-[0_1px_2px_0_#0000000d] transition-[color,box-shadow] outline-none', 'focus-within:border-ring focus-within:ring-ring/50 focus-within:ring-[3px]', 'data-[invalid]:border-destructive data-[invalid]:ring-destructive/20 data-[invalid]:ring-[3px]', disabled && 'cursor-not-allowed bg-muted/50 text-label', className), children: [jsx("input", { ref: inputRef, type: "text", inputMode: "numeric", autoComplete: "off", spellCheck: false, id: id, name: name, value: text, placeholder: placeholder, disabled: disabled, maxLength: DATE_FORMAT.length, "aria-label": ariaLabel, "aria-invalid": invalid || undefined, title: DATE_FORMAT_HINT, onChange: handleTextChange, onKeyDown: handleKeyDown, onBlur: handleTextBlur, className: "placeholder:text-placeholder selection:bg-primary selection:text-primary-foreground h-full min-w-0 flex-1 bg-transparent text-base text-foreground outline-none placeholder:text-sm disabled:cursor-not-allowed disabled:text-label md:text-sm" }), jsx("button", { type: "button", disabled: disabled, "aria-label": CALENDAR_BUTTON_LABEL, "aria-haspopup": "dialog", "aria-expanded": open, onClick: toggleOpen, className: "-mr-1 inline-flex h-6 w-6 shrink-0 cursor-pointer items-center justify-center rounded-sm text-muted-foreground outline-none hover:text-foreground focus-visible:ring-ring/50 focus-visible:ring-[2px] disabled:cursor-not-allowed", children: jsx(CalendarDays, { className: "h-4 w-4 stroke-[1.75]" }) })] }) }), jsx(PopoverContent, { align: "start", className: "date-range-picker-popover w-auto p-4", children: jsx(DatePicker, { inline: true, selected: value ?? null, minDate: toBoundDate(bounds.minDate), maxDate: toBoundDate(bounds.maxDate), onChange: selectDate, calendarClassName: "date-range-picker-calendar", formatWeekDay: (weekday) => weekday.slice(0, 2), renderCustomHeader: ({ monthDate, changeYear, changeMonth, decreaseMonth, increaseMonth, prevMonthButtonDisabled, nextMonthButtonDisabled, }) => (jsx(DatePickerHeader, { monthDate: monthDate, changeYear: changeYear, changeMonth: changeMonth, decreaseMonth: decreaseMonth, increaseMonth: increaseMonth, prevMonthButtonDisabled: prevMonthButtonDisabled, nextMonthButtonDisabled: nextMonthButtonDisabled, minYear: bounds.minYear, maxYear: bounds.maxYear })), children: jsxs("div", { className: "date-range-picker-footer", children: [jsx("button", { type: "button", onClick: clearDate, className: "date-range-picker-action", children: "Clear" }), jsx("button", { type: "button", onClick: selectToday, className: "date-range-picker-action", children: "Today" })] }) }) })] }));
|
|
27895
28075
|
}
|
|
27896
28076
|
|
|
27897
28077
|
const DropdownMenu = DropdownMenuPrimitive.Root;
|