@caratlogic/design-system 0.1.8 → 0.1.10
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/atoms/ToggleSwitch/ToggleSwitch.d.ts.map +1 -1
- package/dist/components/atoms/ToggleSwitch/ToggleSwitch.utils.d.ts +9 -0
- package/dist/components/atoms/ToggleSwitch/ToggleSwitch.utils.d.ts.map +1 -1
- package/dist/components/layouts/CreateFormPageShell/CreateFormPageShell.d.ts.map +1 -1
- 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/components/ui/switch.d.ts.map +1 -1
- package/dist/index.cjs.js +292 -88
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.js +292 -88
- package/dist/index.esm.js.map +1 -1
- package/dist/ui.cjs.js +26 -20
- package/dist/ui.cjs.js.map +1 -1
- package/dist/ui.esm.js +26 -20
- package/dist/ui.esm.js.map +1 -1
- package/package.json +1 -1
package/dist/index.esm.js
CHANGED
|
@@ -5742,21 +5742,33 @@ const TextHyperlink = ({ to, href, children, showIcon = true, className, 'aria-l
|
|
|
5742
5742
|
return (jsx("a", { href: href, target: "_blank", rel: "noopener noreferrer", "aria-label": ariaLabel, className: cn(LINK_CLASS, className), children: content }));
|
|
5743
5743
|
};
|
|
5744
5744
|
|
|
5745
|
+
/**
|
|
5746
|
+
* Track, thumb and travel, sized so the thumb keeps an even 2px inset on all
|
|
5747
|
+
* four sides. Travel is stated in px rather than `calc(100% - Npx)`: that form
|
|
5748
|
+
* resolves against the thumb's own width, so the gap silently changed whenever a
|
|
5749
|
+
* thumb size did — `md` ended up with a 0.2px vertical inset and no gap at
|
|
5750
|
+
* either end, which read as a thumb bulging out of its track.
|
|
5751
|
+
*
|
|
5752
|
+
* inner = track - 2px border | thumb = innerHeight - 4 | on = innerWidth - thumb - 2
|
|
5753
|
+
*/
|
|
5745
5754
|
const switchSizes = {
|
|
5755
|
+
// track 28x16 → inner 26x14, thumb 10, on 14
|
|
5746
5756
|
sm: {
|
|
5747
5757
|
switch: 'h-4 w-7',
|
|
5748
|
-
thumb: 'size-
|
|
5749
|
-
translate: 'data-[state=checked]:translate-x-[
|
|
5758
|
+
thumb: 'size-2.5',
|
|
5759
|
+
translate: 'data-[state=unchecked]:translate-x-[2px] data-[state=checked]:translate-x-[14px]',
|
|
5750
5760
|
},
|
|
5761
|
+
// track 32x20 → inner 30x18, thumb 14, on 14
|
|
5751
5762
|
md: {
|
|
5752
|
-
switch: 'h-
|
|
5753
|
-
thumb: 'size-
|
|
5754
|
-
translate: 'data-[state=
|
|
5763
|
+
switch: 'h-5 w-8',
|
|
5764
|
+
thumb: 'size-3.5',
|
|
5765
|
+
translate: 'data-[state=unchecked]:translate-x-[2px] data-[state=checked]:translate-x-[14px]',
|
|
5755
5766
|
},
|
|
5767
|
+
// track 44x24 → inner 42x22, thumb 18, on 22
|
|
5756
5768
|
lg: {
|
|
5757
5769
|
switch: 'h-6 w-11',
|
|
5758
|
-
thumb: 'size-
|
|
5759
|
-
translate: 'data-[state=checked]:translate-x-[
|
|
5770
|
+
thumb: 'size-[1.125rem]',
|
|
5771
|
+
translate: 'data-[state=unchecked]:translate-x-[2px] data-[state=checked]:translate-x-[22px]',
|
|
5760
5772
|
},
|
|
5761
5773
|
};
|
|
5762
5774
|
|
|
@@ -5767,7 +5779,7 @@ function ToggleSwitch({ checked = false, onCheckedChange, disabled = false, id,
|
|
|
5767
5779
|
}
|
|
5768
5780
|
};
|
|
5769
5781
|
const currentSize = switchSizes[size];
|
|
5770
|
-
const switchButton = (jsx("button", { type: "button", role: "switch", "aria-checked": checked, "data-state": checked ? 'checked' : 'unchecked', value: checked ? 'on' : 'off', "data-slot": "switch", disabled: disabled, onClick: handleClick, id: id, name: name, className: cn('peer inline-flex shrink-0 cursor-pointer items-center rounded-full border border-transparent transition-all outline-none', 'focus-visible:ring-ring/50 focus-visible:border-ring focus-visible:ring-[3px]', 'disabled:cursor-not-allowed disabled:opacity-50', 'data-[state=unchecked]:bg-muted', 'data-[state=checked]:bg-primary', currentSize.switch, className), ...props, children: jsx("span", { "data-state": checked ? 'checked' : 'unchecked', "data-slot": "switch-thumb", className: cn('pointer-events-none block rounded-full ring-0 transition-transform', 'bg-card data-[state=checked]:bg-primary-foreground',
|
|
5782
|
+
const switchButton = (jsx("button", { type: "button", role: "switch", "aria-checked": checked, "data-state": checked ? 'checked' : 'unchecked', value: checked ? 'on' : 'off', "data-slot": "switch", disabled: disabled, onClick: handleClick, id: id, name: name, className: cn('peer inline-flex shrink-0 cursor-pointer items-center rounded-full border border-transparent transition-all outline-none', 'focus-visible:ring-ring/50 focus-visible:border-ring focus-visible:ring-[3px]', 'disabled:cursor-not-allowed disabled:opacity-50', 'data-[state=unchecked]:bg-muted', 'data-[state=checked]:bg-primary', currentSize.switch, className), ...props, children: jsx("span", { "data-state": checked ? 'checked' : 'unchecked', "data-slot": "switch-thumb", className: cn('pointer-events-none block rounded-full ring-0 transition-transform', 'bg-card data-[state=checked]:bg-primary-foreground', currentSize.thumb, currentSize.translate) }) }));
|
|
5771
5783
|
if (!label) {
|
|
5772
5784
|
return switchButton;
|
|
5773
5785
|
}
|
|
@@ -12089,18 +12101,18 @@ function requireMoment () {
|
|
|
12089
12101
|
var momentExports = requireMoment();
|
|
12090
12102
|
var moment = /*@__PURE__*/getDefaultExportFromCjs(momentExports);
|
|
12091
12103
|
|
|
12092
|
-
const DATE_FORMAT = 'DD-MM-YYYY';
|
|
12104
|
+
const DATE_FORMAT$1 = 'DD-MM-YYYY';
|
|
12093
12105
|
/**
|
|
12094
12106
|
* Canonical default thumbnail used wherever a gem/diamond/inventory item has
|
|
12095
12107
|
* no image of its own — single source of truth (mirrors the gem inventory grid).
|
|
12096
12108
|
*/
|
|
12097
12109
|
const DEFAULT_INVENTORY_THUMBNAIL = '/default%20thumbnail.png';
|
|
12098
12110
|
|
|
12099
|
-
const formatDate$
|
|
12111
|
+
const formatDate$2 = (iso) => {
|
|
12100
12112
|
if (!iso)
|
|
12101
12113
|
return '-';
|
|
12102
12114
|
try {
|
|
12103
|
-
return moment(iso).format(DATE_FORMAT);
|
|
12115
|
+
return moment(iso).format(DATE_FORMAT$1);
|
|
12104
12116
|
}
|
|
12105
12117
|
catch {
|
|
12106
12118
|
return iso;
|
|
@@ -12113,7 +12125,7 @@ const InfoCard = ({ info, title, refundToWallet, onRefundChange, }) => {
|
|
|
12113
12125
|
if (React__default.isValidElement(info))
|
|
12114
12126
|
return jsx("div", { className: "mt-3", children: info });
|
|
12115
12127
|
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$
|
|
12128
|
+
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
12129
|
!React__default.isValidElement(info) &&
|
|
12118
12130
|
(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
12131
|
};
|
|
@@ -22575,7 +22587,7 @@ function parseDate(value, dateFormat, locale, strictParsing, refDate) {
|
|
|
22575
22587
|
var parsedDate = parse(value, format_1, refDate, {
|
|
22576
22588
|
locale: localeObject});
|
|
22577
22589
|
if (isValid(parsedDate) &&
|
|
22578
|
-
(!strictParsing || value === formatDate(parsedDate, format_1, locale))) {
|
|
22590
|
+
(!strictParsing || value === formatDate$1(parsedDate, format_1, locale))) {
|
|
22579
22591
|
return parsedDate;
|
|
22580
22592
|
}
|
|
22581
22593
|
}
|
|
@@ -22603,7 +22615,7 @@ function isValid(date, minDate) {
|
|
|
22603
22615
|
* @param locale - The locale.
|
|
22604
22616
|
* @returns - The formatted date.
|
|
22605
22617
|
*/
|
|
22606
|
-
function formatDate(date, formatStr, locale) {
|
|
22618
|
+
function formatDate$1(date, formatStr, locale) {
|
|
22607
22619
|
if (locale === "en") {
|
|
22608
22620
|
return format(date, formatStr, {
|
|
22609
22621
|
useAdditionalWeekYearTokens: true,
|
|
@@ -22633,7 +22645,7 @@ function safeDateFormat(date, _a) {
|
|
|
22633
22645
|
var formatStr = (Array.isArray(dateFormat) && dateFormat.length > 0
|
|
22634
22646
|
? dateFormat[0]
|
|
22635
22647
|
: 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)) || "";
|
|
22648
|
+
return (date && formatDate$1(date, formatStr, locale)) || "";
|
|
22637
22649
|
}
|
|
22638
22650
|
/**
|
|
22639
22651
|
* Used as a delimiter to separate two dates when formatting a date range
|
|
@@ -22707,7 +22719,7 @@ function getWeek(date) {
|
|
|
22707
22719
|
* @returns - The day of the week code.
|
|
22708
22720
|
*/
|
|
22709
22721
|
function getDayOfWeekCode(day, locale) {
|
|
22710
|
-
return formatDate(day, "ddd", locale);
|
|
22722
|
+
return formatDate$1(day, "ddd", locale);
|
|
22711
22723
|
}
|
|
22712
22724
|
// *** Start of ***
|
|
22713
22725
|
/**
|
|
@@ -22930,7 +22942,7 @@ function getLocaleObject(localeSpec) {
|
|
|
22930
22942
|
* @returns - The formatted weekday.
|
|
22931
22943
|
*/
|
|
22932
22944
|
function getFormattedWeekdayInLocale(date, formatFunc, locale) {
|
|
22933
|
-
return formatFunc(formatDate(date, "EEEE", locale));
|
|
22945
|
+
return formatFunc(formatDate$1(date, "EEEE", locale));
|
|
22934
22946
|
}
|
|
22935
22947
|
/**
|
|
22936
22948
|
* Gets the minimum weekday in a given locale.
|
|
@@ -22940,7 +22952,7 @@ function getFormattedWeekdayInLocale(date, formatFunc, locale) {
|
|
|
22940
22952
|
* @returns - The minimum weekday.
|
|
22941
22953
|
*/
|
|
22942
22954
|
function getWeekdayMinInLocale(date, locale) {
|
|
22943
|
-
return formatDate(date, "EEEEEE", locale);
|
|
22955
|
+
return formatDate$1(date, "EEEEEE", locale);
|
|
22944
22956
|
}
|
|
22945
22957
|
/**
|
|
22946
22958
|
* Gets the short weekday in a given locale.
|
|
@@ -22950,7 +22962,7 @@ function getWeekdayMinInLocale(date, locale) {
|
|
|
22950
22962
|
* @returns - The short weekday.
|
|
22951
22963
|
*/
|
|
22952
22964
|
function getWeekdayShortInLocale(date, locale) {
|
|
22953
|
-
return formatDate(date, "EEE", locale);
|
|
22965
|
+
return formatDate$1(date, "EEE", locale);
|
|
22954
22966
|
}
|
|
22955
22967
|
/**
|
|
22956
22968
|
* Gets the month in a given locale.
|
|
@@ -22960,7 +22972,7 @@ function getWeekdayShortInLocale(date, locale) {
|
|
|
22960
22972
|
* @returns - The month.
|
|
22961
22973
|
*/
|
|
22962
22974
|
function getMonthInLocale(month, locale) {
|
|
22963
|
-
return formatDate(setMonth(newDate(), month), "LLLL", locale);
|
|
22975
|
+
return formatDate$1(setMonth(newDate(), month), "LLLL", locale);
|
|
22964
22976
|
}
|
|
22965
22977
|
/**
|
|
22966
22978
|
* Gets the short month in a given locale.
|
|
@@ -22970,7 +22982,7 @@ function getMonthInLocale(month, locale) {
|
|
|
22970
22982
|
* @returns - The short month.
|
|
22971
22983
|
*/
|
|
22972
22984
|
function getMonthShortInLocale(month, locale) {
|
|
22973
|
-
return formatDate(setMonth(newDate(), month), "LLL", locale);
|
|
22985
|
+
return formatDate$1(setMonth(newDate(), month), "LLL", locale);
|
|
22974
22986
|
}
|
|
22975
22987
|
/**
|
|
22976
22988
|
* Gets the short quarter in a given locale.
|
|
@@ -22980,7 +22992,7 @@ function getMonthShortInLocale(month, locale) {
|
|
|
22980
22992
|
* @returns - The short quarter.
|
|
22981
22993
|
*/
|
|
22982
22994
|
function getQuarterShortInLocale(quarter, locale) {
|
|
22983
|
-
return formatDate(setQuarter(newDate(), quarter), "QQQ", locale);
|
|
22995
|
+
return formatDate$1(setQuarter(newDate(), quarter), "QQQ", locale);
|
|
22984
22996
|
}
|
|
22985
22997
|
/**
|
|
22986
22998
|
* Checks if a day is disabled.
|
|
@@ -23310,7 +23322,7 @@ function getHighLightDaysMap(highlightDates, defaultClassName) {
|
|
|
23310
23322
|
for (var i = 0, len = highlightDates.length; i < len; i++) {
|
|
23311
23323
|
var obj = highlightDates[i];
|
|
23312
23324
|
if (isDate(obj)) {
|
|
23313
|
-
var key = formatDate(obj, "MM.dd.yyyy");
|
|
23325
|
+
var key = formatDate$1(obj, "MM.dd.yyyy");
|
|
23314
23326
|
var classNamesArr = dateClasses.get(key) || [];
|
|
23315
23327
|
if (!classNamesArr.includes(defaultClassName)) {
|
|
23316
23328
|
classNamesArr.push(defaultClassName);
|
|
@@ -23325,7 +23337,7 @@ function getHighLightDaysMap(highlightDates, defaultClassName) {
|
|
|
23325
23337
|
for (var k = 0, len_1 = arrOfDates.length; k < len_1; k++) {
|
|
23326
23338
|
var dateK = arrOfDates[k];
|
|
23327
23339
|
if (dateK) {
|
|
23328
|
-
var key = formatDate(dateK, "MM.dd.yyyy");
|
|
23340
|
+
var key = formatDate$1(dateK, "MM.dd.yyyy");
|
|
23329
23341
|
var classNamesArr = dateClasses.get(key) || [];
|
|
23330
23342
|
if (!classNamesArr.includes(className)) {
|
|
23331
23343
|
classNamesArr.push(className);
|
|
@@ -23365,7 +23377,7 @@ function getHolidaysMap(holidayDates, defaultClassName) {
|
|
|
23365
23377
|
if (!isDate(dateObj)) {
|
|
23366
23378
|
return;
|
|
23367
23379
|
}
|
|
23368
|
-
var key = formatDate(dateObj, "MM.dd.yyyy");
|
|
23380
|
+
var key = formatDate$1(dateObj, "MM.dd.yyyy");
|
|
23369
23381
|
var classNamesObj = dateClasses.get(key) || {
|
|
23370
23382
|
className: "",
|
|
23371
23383
|
holidayNames: [],
|
|
@@ -23739,7 +23751,7 @@ var Day = /** @class */ (function (_super) {
|
|
|
23739
23751
|
return false;
|
|
23740
23752
|
}
|
|
23741
23753
|
// Looking for className in the Map of {'day string, 'className'}
|
|
23742
|
-
var dayStr = formatDate(day, "MM.dd.yyyy");
|
|
23754
|
+
var dayStr = formatDate$1(day, "MM.dd.yyyy");
|
|
23743
23755
|
return highlightDates.get(dayStr);
|
|
23744
23756
|
};
|
|
23745
23757
|
// Function to return the array containing className associated to the date
|
|
@@ -23750,7 +23762,7 @@ var Day = /** @class */ (function (_super) {
|
|
|
23750
23762
|
// For type consistency no other reasons
|
|
23751
23763
|
return [undefined];
|
|
23752
23764
|
}
|
|
23753
|
-
var dayStr = formatDate(day, "MM.dd.yyyy");
|
|
23765
|
+
var dayStr = formatDate$1(day, "MM.dd.yyyy");
|
|
23754
23766
|
// Looking for className in the Map of {day string: {className, holidayName}}
|
|
23755
23767
|
if (holidays.has(dayStr)) {
|
|
23756
23768
|
return [(_a = holidays.get(dayStr)) === null || _a === void 0 ? void 0 : _a.className];
|
|
@@ -23891,12 +23903,12 @@ var Day = /** @class */ (function (_super) {
|
|
|
23891
23903
|
var prefix = _this.isDisabled() || _this.isExcluded()
|
|
23892
23904
|
? ariaLabelPrefixWhenDisabled
|
|
23893
23905
|
: ariaLabelPrefixWhenEnabled;
|
|
23894
|
-
return "".concat(prefix, " ").concat(formatDate(day, "PPPP", _this.props.locale));
|
|
23906
|
+
return "".concat(prefix, " ").concat(formatDate$1(day, "PPPP", _this.props.locale));
|
|
23895
23907
|
};
|
|
23896
23908
|
// A function to return the holiday's name as title's content
|
|
23897
23909
|
_this.getTitle = function () {
|
|
23898
23910
|
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");
|
|
23911
|
+
var compareDt = formatDate$1(day, "MM.dd.yyyy");
|
|
23900
23912
|
var titles = [];
|
|
23901
23913
|
if (holidays.has(compareDt)) {
|
|
23902
23914
|
titles.push.apply(titles, holidays.get(compareDt).holidayNames);
|
|
@@ -24822,7 +24834,7 @@ var Month = /** @class */ (function (_super) {
|
|
|
24822
24834
|
var prefix = _this.isDisabled(labelDate) || _this.isExcluded(labelDate)
|
|
24823
24835
|
? disabledDayAriaLabelPrefix
|
|
24824
24836
|
: chooseDayAriaLabelPrefix;
|
|
24825
|
-
return "".concat(prefix, " ").concat(formatDate(labelDate, "MMMM yyyy", locale));
|
|
24837
|
+
return "".concat(prefix, " ").concat(formatDate$1(labelDate, "MMMM yyyy", locale));
|
|
24826
24838
|
};
|
|
24827
24839
|
_this.getQuarterClassNames = function (q) {
|
|
24828
24840
|
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 +24936,7 @@ var Month = /** @class */ (function (_super) {
|
|
|
24924
24936
|
: "";
|
|
24925
24937
|
// Format aria-label, return empty string if date is invalid
|
|
24926
24938
|
var formattedAriaLabel = isValid(day)
|
|
24927
|
-
? "".concat(formattedAriaLabelPrefix).concat(formatDate(day, "MMMM, yyyy", this.props.locale))
|
|
24939
|
+
? "".concat(formattedAriaLabelPrefix).concat(formatDate$1(day, "MMMM, yyyy", this.props.locale))
|
|
24928
24940
|
: "";
|
|
24929
24941
|
var shouldUseListboxRole = showMonthYearPicker || showQuarterYearPicker;
|
|
24930
24942
|
if (shouldUseListboxRole) {
|
|
@@ -25067,7 +25079,7 @@ var MonthYearDropdownOptions = /** @class */ (function (_super) {
|
|
|
25067
25079
|
? "react-datepicker__month-year-option--selected_month-year"
|
|
25068
25080
|
: "react-datepicker__month-year-option", key: monthYearPoint, onClick: _this.onChange.bind(_this, monthYearPoint), "aria-selected": isSameMonthYear ? "true" : undefined },
|
|
25069
25081
|
isSameMonthYear ? (React__default.createElement("span", { className: "react-datepicker__month-year-option--selected" }, "\u2713")) : (""),
|
|
25070
|
-
formatDate(monthYear, _this.props.dateFormat, _this.props.locale)));
|
|
25082
|
+
formatDate$1(monthYear, _this.props.dateFormat, _this.props.locale)));
|
|
25071
25083
|
});
|
|
25072
25084
|
};
|
|
25073
25085
|
_this.onChange = function (monthYear) { return _this.props.onChange(monthYear); };
|
|
@@ -25102,7 +25114,7 @@ var MonthYearDropdown = /** @class */ (function (_super) {
|
|
|
25102
25114
|
var options = [];
|
|
25103
25115
|
while (!isAfter$1(currDate, lastDate)) {
|
|
25104
25116
|
var timePoint = getTime(currDate);
|
|
25105
|
-
options.push(React__default.createElement("option", { key: timePoint, value: timePoint }, formatDate(currDate, _this.props.dateFormat, _this.props.locale)));
|
|
25117
|
+
options.push(React__default.createElement("option", { key: timePoint, value: timePoint }, formatDate$1(currDate, _this.props.dateFormat, _this.props.locale)));
|
|
25106
25118
|
currDate = addMonths(currDate, 1);
|
|
25107
25119
|
}
|
|
25108
25120
|
return options;
|
|
@@ -25112,7 +25124,7 @@ var MonthYearDropdown = /** @class */ (function (_super) {
|
|
|
25112
25124
|
};
|
|
25113
25125
|
_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
25126
|
_this.renderReadView = function (visible) {
|
|
25115
|
-
var yearMonth = formatDate(_this.props.date, _this.props.dateFormat, _this.props.locale);
|
|
25127
|
+
var yearMonth = formatDate$1(_this.props.date, _this.props.dateFormat, _this.props.locale);
|
|
25116
25128
|
return (React__default.createElement("div", { key: "read", style: { visibility: visible ? "visible" : "hidden" }, className: "react-datepicker__month-year-read-view", onClick: _this.toggleDropdown },
|
|
25117
25129
|
React__default.createElement("span", { className: "react-datepicker__month-year-read-view--down-arrow" }),
|
|
25118
25130
|
React__default.createElement("span", { className: "react-datepicker__month-year-read-view--selected-month-year" }, yearMonth)));
|
|
@@ -25281,7 +25293,7 @@ var Time = /** @class */ (function (_super) {
|
|
|
25281
25293
|
}
|
|
25282
25294
|
}, onKeyDown: function (event) {
|
|
25283
25295
|
_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)));
|
|
25296
|
+
}, 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
25297
|
});
|
|
25286
25298
|
};
|
|
25287
25299
|
_this.renderTimeCaption = function () {
|
|
@@ -26052,7 +26064,7 @@ var Calendar = /** @class */ (function (_super) {
|
|
|
26052
26064
|
? _this.props.weekDayClassName(day)
|
|
26053
26065
|
: undefined;
|
|
26054
26066
|
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)),
|
|
26067
|
+
React__default.createElement("span", { className: "react-datepicker__sr-only" }, formatDate$1(day, "EEEE", _this.props.locale)),
|
|
26056
26068
|
React__default.createElement("span", { "aria-hidden": "true" }, weekDayName)));
|
|
26057
26069
|
}));
|
|
26058
26070
|
};
|
|
@@ -26232,7 +26244,7 @@ var Calendar = /** @class */ (function (_super) {
|
|
|
26232
26244
|
classes.push("react-datepicker__current-month--hasMonthYearDropdown");
|
|
26233
26245
|
}
|
|
26234
26246
|
return (React__default.createElement("h2", { className: classes.join(" ") }, isValid(date)
|
|
26235
|
-
? formatDate(date, _this.props.dateFormat, _this.props.locale)
|
|
26247
|
+
? formatDate$1(date, _this.props.dateFormat, _this.props.locale)
|
|
26236
26248
|
: ""));
|
|
26237
26249
|
};
|
|
26238
26250
|
_this.renderYearDropdown = function (overrideHide) {
|
|
@@ -27216,7 +27228,7 @@ var DatePicker = /** @class */ (function (_super) {
|
|
|
27216
27228
|
var newMinutes = Math.min(maxMinutes, currentMinutes + timeIntervals);
|
|
27217
27229
|
newTime = addMinutes(baseDate, newMinutes);
|
|
27218
27230
|
}
|
|
27219
|
-
var formattedTime = formatDate(newTime, formatStr || DatePicker.defaultProps.dateFormat, _this.props.locale);
|
|
27231
|
+
var formattedTime = formatDate$1(newTime, formatStr || DatePicker.defaultProps.dateFormat, _this.props.locale);
|
|
27220
27232
|
_this.setState({
|
|
27221
27233
|
preSelection: newTime,
|
|
27222
27234
|
inputValue: formattedTime,
|
|
@@ -27808,24 +27820,77 @@ var PRESELECT_CHANGE_VIA_INPUT = "input";
|
|
|
27808
27820
|
var PRESELECT_CHANGE_VIA_NAVIGATE = "navigate";
|
|
27809
27821
|
|
|
27810
27822
|
const MONTHS = moment.months();
|
|
27823
|
+
/** The one format the field displays and accepts when typed. */
|
|
27824
|
+
const DATE_FORMAT = 'DD/MM/YYYY';
|
|
27825
|
+
const BOUND_FORMAT = 'YYYY-MM-DD';
|
|
27826
|
+
const MAX_DIGITS = 8;
|
|
27811
27827
|
function computeDateBounds(min, max) {
|
|
27812
27828
|
const minDate = min
|
|
27813
27829
|
? min instanceof Date
|
|
27814
|
-
? moment(min).format(
|
|
27830
|
+
? moment(min).format(BOUND_FORMAT)
|
|
27815
27831
|
: min
|
|
27816
27832
|
: undefined;
|
|
27817
27833
|
const maxDate = max
|
|
27818
27834
|
? max instanceof Date
|
|
27819
|
-
? moment(max).format(
|
|
27835
|
+
? moment(max).format(BOUND_FORMAT)
|
|
27820
27836
|
: max
|
|
27821
27837
|
: undefined;
|
|
27822
27838
|
return {
|
|
27823
27839
|
minDate,
|
|
27824
27840
|
maxDate,
|
|
27825
|
-
minYear: minDate ? moment(minDate,
|
|
27826
|
-
maxYear: maxDate ? moment(maxDate,
|
|
27841
|
+
minYear: minDate ? moment(minDate, BOUND_FORMAT).year() : undefined,
|
|
27842
|
+
maxYear: maxDate ? moment(maxDate, BOUND_FORMAT).year() : undefined,
|
|
27827
27843
|
};
|
|
27828
27844
|
}
|
|
27845
|
+
function formatDate(value) {
|
|
27846
|
+
return value ? moment(value).format(DATE_FORMAT) : '';
|
|
27847
|
+
}
|
|
27848
|
+
function toBoundDate(bound) {
|
|
27849
|
+
return bound ? moment(bound, BOUND_FORMAT).toDate() : undefined;
|
|
27850
|
+
}
|
|
27851
|
+
/**
|
|
27852
|
+
* Keep only the digits a date can hold and re-insert the separators, so typing
|
|
27853
|
+
* `25082026` reads back as `25/08/2026` and pasted junk cannot survive.
|
|
27854
|
+
*/
|
|
27855
|
+
function maskDateText(text) {
|
|
27856
|
+
const digits = text.replace(/\D/g, '').slice(0, MAX_DIGITS);
|
|
27857
|
+
if (digits.length <= 2)
|
|
27858
|
+
return digits;
|
|
27859
|
+
if (digits.length <= 4)
|
|
27860
|
+
return `${digits.slice(0, 2)}/${digits.slice(2)}`;
|
|
27861
|
+
return `${digits.slice(0, 2)}/${digits.slice(2, 4)}/${digits.slice(4)}`;
|
|
27862
|
+
}
|
|
27863
|
+
function countDigits(text) {
|
|
27864
|
+
return text.replace(/\D/g, '').length;
|
|
27865
|
+
}
|
|
27866
|
+
/** Offset in `text` that sits just after its nth digit. */
|
|
27867
|
+
function caretAfterDigits(text, digits) {
|
|
27868
|
+
if (digits <= 0)
|
|
27869
|
+
return 0;
|
|
27870
|
+
let seen = 0;
|
|
27871
|
+
for (let index = 0; index < text.length; index += 1) {
|
|
27872
|
+
if (text[index] >= '0' && text[index] <= '9') {
|
|
27873
|
+
seen += 1;
|
|
27874
|
+
if (seen === digits)
|
|
27875
|
+
return index + 1;
|
|
27876
|
+
}
|
|
27877
|
+
}
|
|
27878
|
+
return text.length;
|
|
27879
|
+
}
|
|
27880
|
+
function parseDateText(text) {
|
|
27881
|
+
const parsed = moment(text, DATE_FORMAT, true);
|
|
27882
|
+
return parsed.isValid() ? parsed.toDate() : undefined;
|
|
27883
|
+
}
|
|
27884
|
+
function isWithinBounds(date, { minDate, maxDate }) {
|
|
27885
|
+
const day = moment(date).startOf('day');
|
|
27886
|
+
if (minDate && day.isBefore(moment(minDate, BOUND_FORMAT).startOf('day'))) {
|
|
27887
|
+
return false;
|
|
27888
|
+
}
|
|
27889
|
+
if (maxDate && day.isAfter(moment(maxDate, BOUND_FORMAT).startOf('day'))) {
|
|
27890
|
+
return false;
|
|
27891
|
+
}
|
|
27892
|
+
return true;
|
|
27893
|
+
}
|
|
27829
27894
|
|
|
27830
27895
|
function DatePickerHeader({ monthDate, changeYear, changeMonth, decreaseMonth, increaseMonth, prevMonthButtonDisabled, nextMonthButtonDisabled, minYear, maxYear, hidePrev, hideNext, }) {
|
|
27831
27896
|
const current = moment(monthDate);
|
|
@@ -27840,25 +27905,39 @@ function DatePickerHeader({ monthDate, changeYear, changeMonth, decreaseMonth, i
|
|
|
27840
27905
|
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
27906
|
}
|
|
27842
27907
|
|
|
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
27908
|
// Only one DateInput popover should be open at a time. Because each instance is
|
|
27850
27909
|
// its own `modal` Radix Popover, opening a second one does not dismiss the first
|
|
27851
27910
|
// via outside-click. Instances coordinate through a window event: whoever opens
|
|
27852
27911
|
// broadcasts its id, and every other open instance closes itself.
|
|
27853
27912
|
const DATEINPUT_OPEN_EVENT = 'caratlogic:dateinput-open';
|
|
27854
|
-
function
|
|
27913
|
+
function useDateInput({ value, onChange, onBlur, min, max, disabled, }) {
|
|
27855
27914
|
const [open, setOpen] = useState(false);
|
|
27856
27915
|
const instanceId = useId$2();
|
|
27857
|
-
const
|
|
27858
|
-
|
|
27916
|
+
const inputRef = useRef(null);
|
|
27917
|
+
const caretRef = useRef(null);
|
|
27918
|
+
const bounds = computeDateBounds(min, max);
|
|
27919
|
+
const formatted = formatDate(value);
|
|
27920
|
+
const [text, setText] = useState(formatted);
|
|
27921
|
+
const [syncedValue, setSyncedValue] = useState(formatted);
|
|
27922
|
+
// Adopt `value` whenever it changes from the outside — a form reset, a
|
|
27923
|
+
// calendar pick, a sibling field narrowing the range — while leaving a
|
|
27924
|
+
// half-typed date alone.
|
|
27925
|
+
if (formatted !== syncedValue) {
|
|
27926
|
+
setSyncedValue(formatted);
|
|
27927
|
+
setText(formatted);
|
|
27928
|
+
}
|
|
27929
|
+
// Masking rewrites the whole string, which parks the caret at the end on any
|
|
27930
|
+
// keystroke that crosses a separator. Put it back once the DOM has the value.
|
|
27931
|
+
useLayoutEffect(() => {
|
|
27932
|
+
const caret = caretRef.current;
|
|
27933
|
+
if (caret === null || !inputRef.current)
|
|
27934
|
+
return;
|
|
27935
|
+
caretRef.current = null;
|
|
27936
|
+
inputRef.current.setSelectionRange(caret, caret);
|
|
27937
|
+
});
|
|
27859
27938
|
useEffect(() => {
|
|
27860
|
-
const onOtherOpen = (
|
|
27861
|
-
if (
|
|
27939
|
+
const onOtherOpen = (event) => {
|
|
27940
|
+
if (event.detail !== instanceId)
|
|
27862
27941
|
setOpen(false);
|
|
27863
27942
|
};
|
|
27864
27943
|
window.addEventListener(DATEINPUT_OPEN_EVENT, onOtherOpen);
|
|
@@ -27870,6 +27949,132 @@ function DateInput({ value, onChange, onBlur, name, className, min, max, disable
|
|
|
27870
27949
|
window.dispatchEvent(new CustomEvent(DATEINPUT_OPEN_EVENT, { detail: instanceId }));
|
|
27871
27950
|
}
|
|
27872
27951
|
};
|
|
27952
|
+
const commit = (date) => {
|
|
27953
|
+
const next = formatDate(date);
|
|
27954
|
+
setText(next);
|
|
27955
|
+
setSyncedValue(next);
|
|
27956
|
+
onChange(date);
|
|
27957
|
+
};
|
|
27958
|
+
/**
|
|
27959
|
+
* Show `masked` and report it upwards only once it is a whole, real,
|
|
27960
|
+
* in-range date — so `01/01/2` on the way to `01/01/2026` never lands in the
|
|
27961
|
+
* form, and an emptied field clears the value.
|
|
27962
|
+
*/
|
|
27963
|
+
const applyText = (masked, caret) => {
|
|
27964
|
+
caretRef.current = caret;
|
|
27965
|
+
setText(masked);
|
|
27966
|
+
if (masked === '') {
|
|
27967
|
+
setSyncedValue('');
|
|
27968
|
+
onChange(undefined);
|
|
27969
|
+
return;
|
|
27970
|
+
}
|
|
27971
|
+
if (masked.length < DATE_FORMAT.length)
|
|
27972
|
+
return;
|
|
27973
|
+
const parsed = parseDateText(masked);
|
|
27974
|
+
if (parsed && isWithinBounds(parsed, bounds)) {
|
|
27975
|
+
setSyncedValue(masked);
|
|
27976
|
+
onChange(parsed);
|
|
27977
|
+
}
|
|
27978
|
+
};
|
|
27979
|
+
const handleTextChange = (event) => {
|
|
27980
|
+
const raw = event.target.value;
|
|
27981
|
+
const caret = event.target.selectionStart ?? raw.length;
|
|
27982
|
+
const masked = maskDateText(raw);
|
|
27983
|
+
applyText(masked, caretAfterDigits(masked, countDigits(raw.slice(0, caret))));
|
|
27984
|
+
};
|
|
27985
|
+
/** Fall back to the committed value when the field is left mid-edit. */
|
|
27986
|
+
const normalize = () => {
|
|
27987
|
+
if (text === '')
|
|
27988
|
+
return;
|
|
27989
|
+
const parsed = parseDateText(text);
|
|
27990
|
+
if (!parsed || !isWithinBounds(parsed, bounds))
|
|
27991
|
+
setText(formatted);
|
|
27992
|
+
};
|
|
27993
|
+
const handleKeyDown = (event) => {
|
|
27994
|
+
if (event.key === 'Enter') {
|
|
27995
|
+
// Settle the field rather than submitting the form around it.
|
|
27996
|
+
event.preventDefault();
|
|
27997
|
+
setOpen(false);
|
|
27998
|
+
normalize();
|
|
27999
|
+
return;
|
|
28000
|
+
}
|
|
28001
|
+
if (event.key === 'Escape' && open) {
|
|
28002
|
+
setOpen(false);
|
|
28003
|
+
return;
|
|
28004
|
+
}
|
|
28005
|
+
if (event.key === 'ArrowDown' && event.altKey && !disabled) {
|
|
28006
|
+
event.preventDefault();
|
|
28007
|
+
handleOpenChange(true);
|
|
28008
|
+
return;
|
|
28009
|
+
}
|
|
28010
|
+
if (event.key !== 'Backspace')
|
|
28011
|
+
return;
|
|
28012
|
+
// A separator is not content: backspacing onto a `/` has to take the digit
|
|
28013
|
+
// in front of it, or the mask re-inserts the slash and the caret sticks.
|
|
28014
|
+
const input = event.currentTarget;
|
|
28015
|
+
const start = input.selectionStart ?? 0;
|
|
28016
|
+
if (start !== input.selectionEnd ||
|
|
28017
|
+
start < 2 ||
|
|
28018
|
+
input.value[start - 1] !== '/') {
|
|
28019
|
+
return;
|
|
28020
|
+
}
|
|
28021
|
+
event.preventDefault();
|
|
28022
|
+
const kept = input.value.slice(0, start - 2);
|
|
28023
|
+
const masked = maskDateText(kept + input.value.slice(start));
|
|
28024
|
+
applyText(masked, caretAfterDigits(masked, countDigits(kept)));
|
|
28025
|
+
};
|
|
28026
|
+
const handleTextBlur = () => {
|
|
28027
|
+
normalize();
|
|
28028
|
+
onBlur?.();
|
|
28029
|
+
};
|
|
28030
|
+
const parsedText = parseDateText(text);
|
|
28031
|
+
return {
|
|
28032
|
+
open,
|
|
28033
|
+
text,
|
|
28034
|
+
invalid: text.length === DATE_FORMAT.length &&
|
|
28035
|
+
(!parsedText || !isWithinBounds(parsedText, bounds)),
|
|
28036
|
+
bounds,
|
|
28037
|
+
inputRef,
|
|
28038
|
+
handleOpenChange,
|
|
28039
|
+
handleTextChange,
|
|
28040
|
+
handleKeyDown,
|
|
28041
|
+
handleTextBlur,
|
|
28042
|
+
toggleOpen: () => {
|
|
28043
|
+
if (!disabled)
|
|
28044
|
+
handleOpenChange(!open);
|
|
28045
|
+
},
|
|
28046
|
+
selectDate: (date) => {
|
|
28047
|
+
commit(date ?? undefined);
|
|
28048
|
+
if (date)
|
|
28049
|
+
setOpen(false);
|
|
28050
|
+
},
|
|
28051
|
+
clearDate: () => {
|
|
28052
|
+
commit(undefined);
|
|
28053
|
+
setOpen(false);
|
|
28054
|
+
},
|
|
28055
|
+
selectToday: () => {
|
|
28056
|
+
commit(new Date());
|
|
28057
|
+
setOpen(false);
|
|
28058
|
+
},
|
|
28059
|
+
};
|
|
28060
|
+
}
|
|
28061
|
+
|
|
28062
|
+
const CALENDAR_BUTTON_LABEL = 'Open calendar';
|
|
28063
|
+
/** Spells out what the field accepts, since the format is now typeable. */
|
|
28064
|
+
const DATE_FORMAT_HINT = `Date format ${DATE_FORMAT}`;
|
|
28065
|
+
|
|
28066
|
+
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}";
|
|
28067
|
+
styleInject(css_248z$2);
|
|
28068
|
+
|
|
28069
|
+
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)}";
|
|
28070
|
+
styleInject(css_248z$1);
|
|
28071
|
+
|
|
28072
|
+
/**
|
|
28073
|
+
* Date field that can be typed or picked. The text box takes a masked
|
|
28074
|
+
* `DD/MM/YYYY` entry; the trailing button opens the same calendar as before.
|
|
28075
|
+
*/
|
|
28076
|
+
function DateInput({ value, onChange, onBlur, name, id, className, min, max, disabled, placeholder = DATE_FORMAT, ariaLabel, }) {
|
|
28077
|
+
const { open, text, invalid, bounds, inputRef, handleOpenChange, handleTextChange, handleKeyDown, handleTextBlur, toggleOpen, selectDate, clearDate, selectToday, } = useDateInput({ value, onChange, onBlur, min, max, disabled });
|
|
27873
28078
|
// NOTE: We drive `open` ourselves from the button's onClick instead of using
|
|
27874
28079
|
// Radix's <PopoverTrigger> toggle. When this Popover is nested inside the
|
|
27875
28080
|
// modal <SlideOut> (Radix Dialog), the trigger's built-in toggle does not
|
|
@@ -27878,20 +28083,7 @@ function DateInput({ value, onChange, onBlur, name, className, min, max, disable
|
|
|
27878
28083
|
// source of truth — no double-fire, and it works across browsers. `modal`
|
|
27879
28084
|
// lets the open popover own pointer events above the dialog so the calendar
|
|
27880
28085
|
// (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" })] }) }) })] }));
|
|
28086
|
+
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
28087
|
}
|
|
27896
28088
|
|
|
27897
28089
|
const DropdownMenu = DropdownMenuPrimitive.Root;
|
|
@@ -58256,33 +58448,39 @@ function ZoomSplitViewer({ src, alt = 'Preview', zoom = 2, lensSize = 160, paneO
|
|
|
58256
58448
|
}) })), isTouchDevice && (jsx("p", { className: `text-xs text-muted-foreground text-center mt-2 ${isMobile ? 'text-2xs' : ''}`, children: isMobile ? 'Touch & hold to zoom' : 'Touch and hold to zoom' }))] }));
|
|
58257
58449
|
}
|
|
58258
58450
|
|
|
58259
|
-
|
|
58260
|
-
|
|
58261
|
-
|
|
58262
|
-
|
|
58263
|
-
|
|
58264
|
-
|
|
58265
|
-
},
|
|
58266
|
-
md: {
|
|
58267
|
-
track: { width: 44, height: 24 },
|
|
58268
|
-
thumb: 20,
|
|
58269
|
-
on: 22,
|
|
58270
|
-
off: 2,
|
|
58271
|
-
},
|
|
58272
|
-
lg: {
|
|
58273
|
-
track: { width: 52, height: 28 },
|
|
58274
|
-
thumb: 24,
|
|
58275
|
-
on: 26,
|
|
58276
|
-
off: 2,
|
|
58277
|
-
},
|
|
58451
|
+
/** 1px border on the track, and the gap between thumb and track. */
|
|
58452
|
+
const TRACK_BORDER = 1;
|
|
58453
|
+
const THUMB_INSET = 2;
|
|
58454
|
+
const TRACK_SIZE = {
|
|
58455
|
+
sm: { width: 28, height: 16 },
|
|
58456
|
+
md: { width: 44, height: 24 },
|
|
58457
|
+
lg: { width: 52, height: 28 },
|
|
58278
58458
|
};
|
|
58459
|
+
/**
|
|
58460
|
+
* Thumb size and travel are derived from the track rather than listed per size:
|
|
58461
|
+
* hardcoding them left the thumb 1px from the top and bottom but flush against
|
|
58462
|
+
* the inner right edge when on, so it bulged past the track's rounded end.
|
|
58463
|
+
* Deriving keeps the inset equal on all four sides at every size.
|
|
58464
|
+
*/
|
|
58465
|
+
function switchGeometry(size) {
|
|
58466
|
+
const track = TRACK_SIZE[size];
|
|
58467
|
+
const innerWidth = track.width - TRACK_BORDER * 2;
|
|
58468
|
+
const innerHeight = track.height - TRACK_BORDER * 2;
|
|
58469
|
+
const thumb = innerHeight - THUMB_INSET * 2;
|
|
58470
|
+
return {
|
|
58471
|
+
track,
|
|
58472
|
+
thumb,
|
|
58473
|
+
off: THUMB_INSET,
|
|
58474
|
+
on: innerWidth - thumb - THUMB_INSET,
|
|
58475
|
+
};
|
|
58476
|
+
}
|
|
58279
58477
|
const Switch = React.forwardRef(({ checked = false, onCheckedChange, disabled = false, id, name, className, size = 'md', 'aria-label': ariaLabel, }, ref) => {
|
|
58280
58478
|
const handleClick = () => {
|
|
58281
58479
|
if (!disabled && onCheckedChange) {
|
|
58282
58480
|
onCheckedChange(!checked);
|
|
58283
58481
|
}
|
|
58284
58482
|
};
|
|
58285
|
-
const dims =
|
|
58483
|
+
const dims = switchGeometry(size);
|
|
58286
58484
|
return (jsx("button", { type: "button", role: "switch", "aria-checked": checked, "aria-label": ariaLabel, "data-state": checked ? 'checked' : 'unchecked', disabled: disabled, onClick: handleClick, ref: ref, id: id, name: name, style: {
|
|
58287
58485
|
width: dims.track.width,
|
|
58288
58486
|
height: dims.track.height,
|
|
@@ -65906,7 +66104,13 @@ function CreateFormPageHeader({ title, onBack, backLabel = 'Go back', }) {
|
|
|
65906
66104
|
function CreateFormPageShell({ title, onBack, children, backLabel, scrollable = false, containerClassName, }) {
|
|
65907
66105
|
const content = (jsxs("div", { className: cn('mx-auto w-full max-w-4xl px-4 py-4', containerClassName), children: [jsx(CreateFormPageHeader, { title: title, onBack: onBack, backLabel: backLabel }), children] }));
|
|
65908
66106
|
if (scrollable) {
|
|
65909
|
-
|
|
66107
|
+
// `shrink-0` is the load-bearing part. As a flex item in the shell's
|
|
66108
|
+
// `flex-col overflow-y-auto` parent this div was shrunk to the parent's
|
|
66109
|
+
// height while its content overflowed, so the background stopped one
|
|
66110
|
+
// screenful down and taller forms showed the page background below it.
|
|
66111
|
+
// `min-h-full` alone cannot fix that — it resolves to the same shrunken
|
|
66112
|
+
// height. The parent already scrolls, so no inner scroller is needed.
|
|
66113
|
+
return (jsx("div", { className: "min-h-full shrink-0 bg-card", children: content }));
|
|
65910
66114
|
}
|
|
65911
66115
|
return content;
|
|
65912
66116
|
}
|