shadcn-ui-react 0.4.2 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -400,9 +400,6 @@ var Button = React5.forwardRef(
400
400
  );
401
401
  Button.displayName = "Button";
402
402
 
403
- // node_modules/@date-fns/tz/constants/index.js
404
- var constructFromSymbol = Symbol.for("constructDateFrom");
405
-
406
403
  // node_modules/@date-fns/tz/tzName/index.js
407
404
  function tzName(timeZone, date, format2 = "long") {
408
405
  return new Intl.DateTimeFormat("en-US", {
@@ -488,7 +485,7 @@ var TZDateMini = class _TZDateMini extends Date {
488
485
  }
489
486
  //#endregion
490
487
  //#region date-fns integration
491
- [Symbol.for("constructDateFrom")](date) {
488
+ [/* @__PURE__ */ Symbol.for("constructDateFrom")](date) {
492
489
  return new _TZDateMini(+new Date(date), this.timeZone);
493
490
  }
494
491
  //#endregion
@@ -616,7 +613,7 @@ var TZDate = class _TZDate extends TZDateMini {
616
613
  return new _TZDate(+this, timeZone);
617
614
  }
618
615
  //#region date-fns integration
619
- [Symbol.for("constructDateFrom")](date) {
616
+ [/* @__PURE__ */ Symbol.for("constructDateFrom")](date) {
620
617
  return new _TZDate(+new Date(date), this.timeZone);
621
618
  }
622
619
  //#endregion
@@ -634,13 +631,13 @@ var secondsInWeek = secondsInDay * 7;
634
631
  var secondsInYear = secondsInDay * daysInYear;
635
632
  var secondsInMonth = secondsInYear / 12;
636
633
  var secondsInQuarter = secondsInMonth * 3;
637
- var constructFromSymbol2 = Symbol.for("constructDateFrom");
634
+ var constructFromSymbol = /* @__PURE__ */ Symbol.for("constructDateFrom");
638
635
 
639
636
  // node_modules/date-fns/constructFrom.js
640
637
  function constructFrom(date, value) {
641
638
  if (typeof date === "function") return date(value);
642
- if (date && typeof date === "object" && constructFromSymbol2 in date)
643
- return date[constructFromSymbol2](value);
639
+ if (date && typeof date === "object" && constructFromSymbol in date)
640
+ return date[constructFromSymbol](value);
644
641
  if (date instanceof Date) return new date.constructor(value);
645
642
  return new Date(value);
646
643
  }
@@ -915,6 +912,29 @@ function startOfYear(date, options) {
915
912
  return date_;
916
913
  }
917
914
 
915
+ // node_modules/date-fns/eachYearOfInterval.js
916
+ function eachYearOfInterval(interval, options) {
917
+ var _a;
918
+ const { start, end } = normalizeInterval(options == null ? void 0 : options.in, interval);
919
+ let reversed = +start > +end;
920
+ const endTime = reversed ? +start : +end;
921
+ const date = reversed ? end : start;
922
+ date.setHours(0, 0, 0, 0);
923
+ date.setMonth(0, 1);
924
+ let step = (_a = options == null ? void 0 : options.step) != null ? _a : 1;
925
+ if (!step) return [];
926
+ if (step < 0) {
927
+ step = -step;
928
+ reversed = !reversed;
929
+ }
930
+ const dates = [];
931
+ while (+date <= endTime) {
932
+ dates.push(constructFrom(start, date));
933
+ date.setFullYear(date.getFullYear() + step);
934
+ }
935
+ return reversed ? dates.reverse() : dates;
936
+ }
937
+
918
938
  // node_modules/date-fns/endOfWeek.js
919
939
  function endOfWeek(date, options) {
920
940
  var _a, _b, _c, _d, _e, _f, _g, _h;
@@ -2463,6 +2483,64 @@ function endOfBroadcastWeek(date, dateLib) {
2463
2483
  return endDate;
2464
2484
  }
2465
2485
 
2486
+ // node_modules/react-day-picker/dist/esm/locale/en-US.js
2487
+ var enUS2 = __spreadProps(__spreadValues({}, enUS), {
2488
+ labels: {
2489
+ labelDayButton: (date, modifiers, options, dateLib) => {
2490
+ let formatDate;
2491
+ if (dateLib && typeof dateLib.format === "function") {
2492
+ formatDate = dateLib.format.bind(dateLib);
2493
+ } else {
2494
+ formatDate = (d, pattern) => format(d, pattern, __spreadValues({ locale: enUS }, options));
2495
+ }
2496
+ let label = formatDate(date, "PPPP");
2497
+ if (modifiers.today)
2498
+ label = `Today, ${label}`;
2499
+ if (modifiers.selected)
2500
+ label = `${label}, selected`;
2501
+ return label;
2502
+ },
2503
+ labelMonthDropdown: "Choose the Month",
2504
+ labelNext: "Go to the Next Month",
2505
+ labelPrevious: "Go to the Previous Month",
2506
+ labelWeekNumber: (weekNumber) => `Week ${weekNumber}`,
2507
+ labelYearDropdown: "Choose the Year",
2508
+ labelGrid: (date, options, dateLib) => {
2509
+ let formatDate;
2510
+ if (dateLib && typeof dateLib.format === "function") {
2511
+ formatDate = dateLib.format.bind(dateLib);
2512
+ } else {
2513
+ formatDate = (d, pattern) => format(d, pattern, __spreadValues({ locale: enUS }, options));
2514
+ }
2515
+ return formatDate(date, "LLLL yyyy");
2516
+ },
2517
+ labelGridcell: (date, modifiers, options, dateLib) => {
2518
+ let formatDate;
2519
+ if (dateLib && typeof dateLib.format === "function") {
2520
+ formatDate = dateLib.format.bind(dateLib);
2521
+ } else {
2522
+ formatDate = (d, pattern) => format(d, pattern, __spreadValues({ locale: enUS }, options));
2523
+ }
2524
+ let label = formatDate(date, "PPPP");
2525
+ if (modifiers == null ? void 0 : modifiers.today) {
2526
+ label = `Today, ${label}`;
2527
+ }
2528
+ return label;
2529
+ },
2530
+ labelNav: "Navigation bar",
2531
+ labelWeekNumberHeader: "Week Number",
2532
+ labelWeekday: (date, options, dateLib) => {
2533
+ let formatDate;
2534
+ if (dateLib && typeof dateLib.format === "function") {
2535
+ formatDate = dateLib.format.bind(dateLib);
2536
+ } else {
2537
+ formatDate = (d, pattern) => format(d, pattern, __spreadValues({ locale: enUS }, options));
2538
+ }
2539
+ return formatDate(date, "cccc");
2540
+ }
2541
+ }
2542
+ });
2543
+
2466
2544
  // node_modules/react-day-picker/dist/esm/classes/DateLib.js
2467
2545
  var DateLib = class _DateLib {
2468
2546
  /**
@@ -2521,6 +2599,19 @@ var DateLib = class _DateLib {
2521
2599
  var _a;
2522
2600
  return ((_a = this.overrides) == null ? void 0 : _a.eachMonthOfInterval) ? this.overrides.eachMonthOfInterval(interval) : eachMonthOfInterval(interval);
2523
2601
  };
2602
+ this.eachYearOfInterval = (interval) => {
2603
+ var _a;
2604
+ const years = ((_a = this.overrides) == null ? void 0 : _a.eachYearOfInterval) ? this.overrides.eachYearOfInterval(interval) : eachYearOfInterval(interval);
2605
+ const uniqueYears = new Set(years.map((d) => this.getYear(d)));
2606
+ if (uniqueYears.size === years.length) {
2607
+ return years;
2608
+ }
2609
+ const yearsArray = [];
2610
+ uniqueYears.forEach((y) => {
2611
+ yearsArray.push(new Date(y, 0, 1));
2612
+ });
2613
+ return yearsArray;
2614
+ };
2524
2615
  this.endOfBroadcastWeek = (date) => {
2525
2616
  var _a;
2526
2617
  return ((_a = this.overrides) == null ? void 0 : _a.endOfBroadcastWeek) ? this.overrides.endOfBroadcastWeek(date) : endOfBroadcastWeek(date, this);
@@ -2629,7 +2720,7 @@ var DateLib = class _DateLib {
2629
2720
  var _a;
2630
2721
  return ((_a = this.overrides) == null ? void 0 : _a.startOfYear) ? this.overrides.startOfYear(date) : startOfYear(date);
2631
2722
  };
2632
- this.options = __spreadValues({ locale: enUS }, options);
2723
+ this.options = __spreadValues({ locale: enUS2 }, options);
2633
2724
  this.overrides = overrides;
2634
2725
  }
2635
2726
  /**
@@ -2736,6 +2827,9 @@ var CalendarDay = class {
2736
2827
  this.displayMonth = displayMonth;
2737
2828
  this.outside = Boolean(displayMonth && !dateLib.isSameMonth(date, displayMonth));
2738
2829
  this.dateLib = dateLib;
2830
+ this.isoDate = dateLib.format(date, "yyyy-MM-dd");
2831
+ this.displayMonthId = dateLib.format(displayMonth, "yyyy-MM");
2832
+ this.dateMonthId = dateLib.format(date, "yyyy-MM");
2739
2833
  }
2740
2834
  /**
2741
2835
  * Checks if this day is equal to another `CalendarDay`, considering both the
@@ -3093,7 +3187,7 @@ function YearsDropdown(props) {
3093
3187
  }
3094
3188
 
3095
3189
  // node_modules/react-day-picker/dist/esm/DayPicker.js
3096
- import React32, { useCallback as useCallback2, useMemo, useRef as useRef2 } from "react";
3190
+ import React32, { useCallback as useCallback2, useMemo as useMemo2, useRef as useRef2 } from "react";
3097
3191
 
3098
3192
  // node_modules/react-day-picker/dist/esm/utils/rangeIncludesDate.js
3099
3193
  function rangeIncludesDate(range, date, excludeEnds = false, dateLib = defaultDateLib) {
@@ -3148,7 +3242,7 @@ function dateMatchModifiers(date, matchers, dateLib = defaultDateLib) {
3148
3242
  return isSameDay2(date, matcher);
3149
3243
  }
3150
3244
  if (isDatesArray(matcher, dateLib)) {
3151
- return matcher.includes(date);
3245
+ return matcher.some((matcherDate) => isSameDay2(date, matcherDate));
3152
3246
  }
3153
3247
  if (isDateRange(matcher)) {
3154
3248
  return rangeIncludesDate(matcher, date, false, dateLib);
@@ -3186,7 +3280,7 @@ function dateMatchModifiers(date, matchers, dateLib = defaultDateLib) {
3186
3280
 
3187
3281
  // node_modules/react-day-picker/dist/esm/helpers/createGetModifiers.js
3188
3282
  function createGetModifiers(days, props, navStart, navEnd, dateLib) {
3189
- const { disabled, hidden, modifiers, showOutsideDays, broadcastCalendar, today } = props;
3283
+ const { disabled, hidden, modifiers, showOutsideDays, broadcastCalendar, today = dateLib.today() } = props;
3190
3284
  const { isSameDay: isSameDay2, isSameMonth: isSameMonth2, startOfMonth: startOfMonth2, isBefore: isBefore2, endOfMonth: endOfMonth2, isAfter: isAfter2 } = dateLib;
3191
3285
  const computedNavStart = navStart && startOfMonth2(navStart);
3192
3286
  const computedNavEnd = navEnd && endOfMonth2(navEnd);
@@ -3206,7 +3300,7 @@ function createGetModifiers(days, props, navStart, navEnd, dateLib) {
3206
3300
  const isDisabled = Boolean(disabled && dateMatchModifiers(date, disabled, dateLib));
3207
3301
  const isHidden = Boolean(hidden && dateMatchModifiers(date, hidden, dateLib)) || isBeforeNavStart || isAfterNavEnd || // Broadcast calendar will show outside days as default
3208
3302
  !broadcastCalendar && !showOutsideDays && isOutside || broadcastCalendar && showOutsideDays === false && isOutside;
3209
- const isToday = isSameDay2(date, today != null ? today : dateLib.today());
3303
+ const isToday = isSameDay2(date, today);
3210
3304
  if (isOutside)
3211
3305
  internalModifiersMap.outside.push(day);
3212
3306
  if (isDisabled)
@@ -3372,70 +3466,6 @@ function getFormatters(customFormatters) {
3372
3466
  return __spreadValues(__spreadValues({}, formatters_exports), customFormatters);
3373
3467
  }
3374
3468
 
3375
- // node_modules/react-day-picker/dist/esm/helpers/getMonthOptions.js
3376
- function getMonthOptions(displayMonth, navStart, navEnd, formatters2, dateLib) {
3377
- const { startOfMonth: startOfMonth2, startOfYear: startOfYear2, endOfYear: endOfYear2, eachMonthOfInterval: eachMonthOfInterval2, getMonth: getMonth2 } = dateLib;
3378
- const months = eachMonthOfInterval2({
3379
- start: startOfYear2(displayMonth),
3380
- end: endOfYear2(displayMonth)
3381
- });
3382
- const options = months.map((month) => {
3383
- const label = formatters2.formatMonthDropdown(month, dateLib);
3384
- const value = getMonth2(month);
3385
- const disabled = navStart && month < startOfMonth2(navStart) || navEnd && month > startOfMonth2(navEnd) || false;
3386
- return { value, label, disabled };
3387
- });
3388
- return options;
3389
- }
3390
-
3391
- // node_modules/react-day-picker/dist/esm/helpers/getStyleForModifiers.js
3392
- function getStyleForModifiers(dayModifiers, styles = {}, modifiersStyles = {}) {
3393
- let style = __spreadValues({}, styles == null ? void 0 : styles[UI.Day]);
3394
- Object.entries(dayModifiers).filter(([, active]) => active === true).forEach(([modifier]) => {
3395
- style = __spreadValues(__spreadValues({}, style), modifiersStyles == null ? void 0 : modifiersStyles[modifier]);
3396
- });
3397
- return style;
3398
- }
3399
-
3400
- // node_modules/react-day-picker/dist/esm/helpers/getWeekdays.js
3401
- function getWeekdays(dateLib, ISOWeek, broadcastCalendar) {
3402
- const today = dateLib.today();
3403
- const start = broadcastCalendar ? dateLib.startOfBroadcastWeek(today, dateLib) : ISOWeek ? dateLib.startOfISOWeek(today) : dateLib.startOfWeek(today);
3404
- const days = [];
3405
- for (let i = 0; i < 7; i++) {
3406
- const day = dateLib.addDays(start, i);
3407
- days.push(day);
3408
- }
3409
- return days;
3410
- }
3411
-
3412
- // node_modules/react-day-picker/dist/esm/helpers/getYearOptions.js
3413
- function getYearOptions(navStart, navEnd, formatters2, dateLib, reverse = false) {
3414
- if (!navStart)
3415
- return void 0;
3416
- if (!navEnd)
3417
- return void 0;
3418
- const { startOfYear: startOfYear2, endOfYear: endOfYear2, addYears: addYears2, getYear: getYear2, isBefore: isBefore2, isSameYear: isSameYear2 } = dateLib;
3419
- const firstNavYear = startOfYear2(navStart);
3420
- const lastNavYear = endOfYear2(navEnd);
3421
- const years = [];
3422
- let year = firstNavYear;
3423
- while (isBefore2(year, lastNavYear) || isSameYear2(year, lastNavYear)) {
3424
- years.push(year);
3425
- year = addYears2(year, 1);
3426
- }
3427
- if (reverse)
3428
- years.reverse();
3429
- return years.map((year2) => {
3430
- const label = formatters2.formatYearDropdown(year2, dateLib);
3431
- return {
3432
- value: getYear2(year2),
3433
- label,
3434
- disabled: false
3435
- };
3436
- });
3437
- }
3438
-
3439
3469
  // node_modules/react-day-picker/dist/esm/labels/index.js
3440
3470
  var labels_exports = {};
3441
3471
  __export(labels_exports, {
@@ -3492,8 +3522,9 @@ function labelNav() {
3492
3522
  }
3493
3523
 
3494
3524
  // node_modules/react-day-picker/dist/esm/labels/labelNext.js
3495
- function labelNext(_month) {
3496
- return "Go to the Next Month";
3525
+ var defaultLabel = "Go to the Next Month";
3526
+ function labelNext(_month, _options) {
3527
+ return defaultLabel;
3497
3528
  }
3498
3529
 
3499
3530
  // node_modules/react-day-picker/dist/esm/labels/labelPrevious.js
@@ -3521,6 +3552,92 @@ function labelYearDropdown(_options) {
3521
3552
  return "Choose the Year";
3522
3553
  }
3523
3554
 
3555
+ // node_modules/react-day-picker/dist/esm/helpers/getLabels.js
3556
+ var resolveLabel = (defaultLabel2, customLabel, localeLabel) => {
3557
+ if (customLabel)
3558
+ return customLabel;
3559
+ if (localeLabel) {
3560
+ return typeof localeLabel === "function" ? localeLabel : (..._args) => localeLabel;
3561
+ }
3562
+ return defaultLabel2;
3563
+ };
3564
+ function getLabels(customLabels, options) {
3565
+ var _a, _b;
3566
+ const localeLabels = (_b = (_a = options.locale) == null ? void 0 : _a.labels) != null ? _b : {};
3567
+ return __spreadProps(__spreadValues(__spreadValues({}, labels_exports), customLabels != null ? customLabels : {}), {
3568
+ labelDayButton: resolveLabel(labelDayButton, customLabels == null ? void 0 : customLabels.labelDayButton, localeLabels.labelDayButton),
3569
+ labelMonthDropdown: resolveLabel(labelMonthDropdown, customLabels == null ? void 0 : customLabels.labelMonthDropdown, localeLabels.labelMonthDropdown),
3570
+ labelNext: resolveLabel(labelNext, customLabels == null ? void 0 : customLabels.labelNext, localeLabels.labelNext),
3571
+ labelPrevious: resolveLabel(labelPrevious, customLabels == null ? void 0 : customLabels.labelPrevious, localeLabels.labelPrevious),
3572
+ labelWeekNumber: resolveLabel(labelWeekNumber, customLabels == null ? void 0 : customLabels.labelWeekNumber, localeLabels.labelWeekNumber),
3573
+ labelYearDropdown: resolveLabel(labelYearDropdown, customLabels == null ? void 0 : customLabels.labelYearDropdown, localeLabels.labelYearDropdown),
3574
+ labelGrid: resolveLabel(labelGrid, customLabels == null ? void 0 : customLabels.labelGrid, localeLabels.labelGrid),
3575
+ labelGridcell: resolveLabel(labelGridcell, customLabels == null ? void 0 : customLabels.labelGridcell, localeLabels.labelGridcell),
3576
+ labelNav: resolveLabel(labelNav, customLabels == null ? void 0 : customLabels.labelNav, localeLabels.labelNav),
3577
+ labelWeekNumberHeader: resolveLabel(labelWeekNumberHeader, customLabels == null ? void 0 : customLabels.labelWeekNumberHeader, localeLabels.labelWeekNumberHeader),
3578
+ labelWeekday: resolveLabel(labelWeekday, customLabels == null ? void 0 : customLabels.labelWeekday, localeLabels.labelWeekday)
3579
+ });
3580
+ }
3581
+
3582
+ // node_modules/react-day-picker/dist/esm/helpers/getMonthOptions.js
3583
+ function getMonthOptions(displayMonth, navStart, navEnd, formatters2, dateLib) {
3584
+ const { startOfMonth: startOfMonth2, startOfYear: startOfYear2, endOfYear: endOfYear2, eachMonthOfInterval: eachMonthOfInterval2, getMonth: getMonth2 } = dateLib;
3585
+ const months = eachMonthOfInterval2({
3586
+ start: startOfYear2(displayMonth),
3587
+ end: endOfYear2(displayMonth)
3588
+ });
3589
+ const options = months.map((month) => {
3590
+ const label = formatters2.formatMonthDropdown(month, dateLib);
3591
+ const value = getMonth2(month);
3592
+ const disabled = navStart && month < startOfMonth2(navStart) || navEnd && month > startOfMonth2(navEnd) || false;
3593
+ return { value, label, disabled };
3594
+ });
3595
+ return options;
3596
+ }
3597
+
3598
+ // node_modules/react-day-picker/dist/esm/helpers/getStyleForModifiers.js
3599
+ function getStyleForModifiers(dayModifiers, styles = {}, modifiersStyles = {}) {
3600
+ let style = __spreadValues({}, styles == null ? void 0 : styles[UI.Day]);
3601
+ Object.entries(dayModifiers).filter(([, active]) => active === true).forEach(([modifier]) => {
3602
+ style = __spreadValues(__spreadValues({}, style), modifiersStyles == null ? void 0 : modifiersStyles[modifier]);
3603
+ });
3604
+ return style;
3605
+ }
3606
+
3607
+ // node_modules/react-day-picker/dist/esm/helpers/getWeekdays.js
3608
+ function getWeekdays(dateLib, ISOWeek, broadcastCalendar, today) {
3609
+ const referenceToday = today != null ? today : dateLib.today();
3610
+ const start = broadcastCalendar ? dateLib.startOfBroadcastWeek(referenceToday, dateLib) : ISOWeek ? dateLib.startOfISOWeek(referenceToday) : dateLib.startOfWeek(referenceToday);
3611
+ const days = [];
3612
+ for (let i = 0; i < 7; i++) {
3613
+ const day = dateLib.addDays(start, i);
3614
+ days.push(day);
3615
+ }
3616
+ return days;
3617
+ }
3618
+
3619
+ // node_modules/react-day-picker/dist/esm/helpers/getYearOptions.js
3620
+ function getYearOptions(navStart, navEnd, formatters2, dateLib, reverse = false) {
3621
+ if (!navStart)
3622
+ return void 0;
3623
+ if (!navEnd)
3624
+ return void 0;
3625
+ const { startOfYear: startOfYear2, endOfYear: endOfYear2, eachYearOfInterval: eachYearOfInterval2, getYear: getYear2 } = dateLib;
3626
+ const firstNavYear = startOfYear2(navStart);
3627
+ const lastNavYear = endOfYear2(navEnd);
3628
+ const years = eachYearOfInterval2({ start: firstNavYear, end: lastNavYear });
3629
+ if (reverse)
3630
+ years.reverse();
3631
+ return years.map((year) => {
3632
+ const label = formatters2.formatYearDropdown(year, dateLib);
3633
+ return {
3634
+ value: getYear2(year),
3635
+ label,
3636
+ disabled: false
3637
+ };
3638
+ });
3639
+ }
3640
+
3524
3641
  // node_modules/react-day-picker/dist/esm/useAnimation.js
3525
3642
  import { useLayoutEffect, useRef } from "react";
3526
3643
  var asHtmlElement = (element) => {
@@ -3653,7 +3770,7 @@ function useAnimation(rootElRef, enabled, { classNames, months, focused, dateLib
3653
3770
  }
3654
3771
 
3655
3772
  // node_modules/react-day-picker/dist/esm/useCalendar.js
3656
- import { useEffect } from "react";
3773
+ import { useEffect, useMemo } from "react";
3657
3774
 
3658
3775
  // node_modules/react-day-picker/dist/esm/helpers/getDates.js
3659
3776
  function getDates(displayMonths, maxDate, props, dateLib) {
@@ -3662,15 +3779,14 @@ function getDates(displayMonths, maxDate, props, dateLib) {
3662
3779
  const { ISOWeek, fixedWeeks, broadcastCalendar } = props != null ? props : {};
3663
3780
  const { addDays: addDays2, differenceInCalendarDays: differenceInCalendarDays2, differenceInCalendarMonths: differenceInCalendarMonths2, endOfBroadcastWeek: endOfBroadcastWeek2, endOfISOWeek: endOfISOWeek2, endOfMonth: endOfMonth2, endOfWeek: endOfWeek2, isAfter: isAfter2, startOfBroadcastWeek: startOfBroadcastWeek2, startOfISOWeek: startOfISOWeek2, startOfWeek: startOfWeek2 } = dateLib;
3664
3781
  const startWeekFirstDate = broadcastCalendar ? startOfBroadcastWeek2(firstMonth, dateLib) : ISOWeek ? startOfISOWeek2(firstMonth) : startOfWeek2(firstMonth);
3665
- const endWeekLastDate = broadcastCalendar ? endOfBroadcastWeek2(lastMonth) : ISOWeek ? endOfISOWeek2(endOfMonth2(lastMonth)) : endOfWeek2(endOfMonth2(lastMonth));
3666
- const nOfDays = differenceInCalendarDays2(endWeekLastDate, startWeekFirstDate);
3782
+ const displayMonthsWeekEnd = broadcastCalendar ? endOfBroadcastWeek2(lastMonth) : ISOWeek ? endOfISOWeek2(endOfMonth2(lastMonth)) : endOfWeek2(endOfMonth2(lastMonth));
3783
+ const constraintWeekEnd = maxDate && (broadcastCalendar ? endOfBroadcastWeek2(maxDate) : ISOWeek ? endOfISOWeek2(maxDate) : endOfWeek2(maxDate));
3784
+ const gridEndDate = constraintWeekEnd && isAfter2(displayMonthsWeekEnd, constraintWeekEnd) ? constraintWeekEnd : displayMonthsWeekEnd;
3785
+ const nOfDays = differenceInCalendarDays2(gridEndDate, startWeekFirstDate);
3667
3786
  const nOfMonths = differenceInCalendarMonths2(lastMonth, firstMonth) + 1;
3668
3787
  const dates = [];
3669
3788
  for (let i = 0; i <= nOfDays; i++) {
3670
3789
  const date = addDays2(startWeekFirstDate, i);
3671
- if (maxDate && isAfter2(date, maxDate)) {
3672
- break;
3673
- }
3674
3790
  dates.push(date);
3675
3791
  }
3676
3792
  const nrOfDaysWithFixedWeeks = broadcastCalendar ? 35 : 42;
@@ -3859,6 +3975,7 @@ function useControlledValue(defaultValue, controlledValue) {
3859
3975
 
3860
3976
  // node_modules/react-day-picker/dist/esm/useCalendar.js
3861
3977
  function useCalendar(props, dateLib) {
3978
+ var _a;
3862
3979
  const [navStart, navEnd] = getNavMonths(props, dateLib);
3863
3980
  const { startOfMonth: startOfMonth2, endOfMonth: endOfMonth2 } = dateLib;
3864
3981
  const initialMonth = getInitialMonth(props, navStart, navEnd, dateLib);
@@ -3871,13 +3988,44 @@ function useCalendar(props, dateLib) {
3871
3988
  const newInitialMonth = getInitialMonth(props, navStart, navEnd, dateLib);
3872
3989
  setFirstMonth(newInitialMonth);
3873
3990
  }, [props.timeZone]);
3874
- const displayMonths = getDisplayMonths(firstMonth, navEnd, props, dateLib);
3875
- const dates = getDates(displayMonths, props.endMonth ? endOfMonth2(props.endMonth) : void 0, props, dateLib);
3876
- const months = getMonths(displayMonths, dates, props, dateLib);
3877
- const weeks = getWeeks(months);
3878
- const days = getDays(months);
3879
- const previousMonth = getPreviousMonth(firstMonth, navStart, props, dateLib);
3880
- const nextMonth = getNextMonth(firstMonth, navEnd, props, dateLib);
3991
+ const { months, weeks, days, previousMonth, nextMonth } = useMemo(() => {
3992
+ const displayMonths = getDisplayMonths(firstMonth, navEnd, { numberOfMonths: props.numberOfMonths }, dateLib);
3993
+ const dates = getDates(displayMonths, props.endMonth ? endOfMonth2(props.endMonth) : void 0, {
3994
+ ISOWeek: props.ISOWeek,
3995
+ fixedWeeks: props.fixedWeeks,
3996
+ broadcastCalendar: props.broadcastCalendar
3997
+ }, dateLib);
3998
+ const months2 = getMonths(displayMonths, dates, {
3999
+ broadcastCalendar: props.broadcastCalendar,
4000
+ fixedWeeks: props.fixedWeeks,
4001
+ ISOWeek: props.ISOWeek,
4002
+ reverseMonths: props.reverseMonths
4003
+ }, dateLib);
4004
+ const weeks2 = getWeeks(months2);
4005
+ const days2 = getDays(months2);
4006
+ const previousMonth2 = getPreviousMonth(firstMonth, navStart, props, dateLib);
4007
+ const nextMonth2 = getNextMonth(firstMonth, navEnd, props, dateLib);
4008
+ return {
4009
+ months: months2,
4010
+ weeks: weeks2,
4011
+ days: days2,
4012
+ previousMonth: previousMonth2,
4013
+ nextMonth: nextMonth2
4014
+ };
4015
+ }, [
4016
+ dateLib,
4017
+ firstMonth.getTime(),
4018
+ navEnd == null ? void 0 : navEnd.getTime(),
4019
+ navStart == null ? void 0 : navStart.getTime(),
4020
+ props.disableNavigation,
4021
+ props.broadcastCalendar,
4022
+ (_a = props.endMonth) == null ? void 0 : _a.getTime(),
4023
+ props.fixedWeeks,
4024
+ props.ISOWeek,
4025
+ props.numberOfMonths,
4026
+ props.pagedNavigation,
4027
+ props.reverseMonths
4028
+ ]);
3881
4029
  const { disableNavigation, onMonthChange } = props;
3882
4030
  const isDayInCalendar = (day) => weeks.some((week) => week.days.some((d) => d.isEqualTo(day)));
3883
4031
  const goToMonth = (date) => {
@@ -4008,6 +4156,12 @@ function useFocus(props, calendar, getModifiers, isSelected, dateLib) {
4008
4156
  const nextFocus = getNextFocus(moveBy, moveDir, focusedDay, calendar.navStart, calendar.navEnd, props, dateLib);
4009
4157
  if (!nextFocus)
4010
4158
  return;
4159
+ if (props.disableNavigation) {
4160
+ const isNextInCalendar = calendar.days.some((day) => day.isEqualTo(nextFocus));
4161
+ if (!isNextInCalendar) {
4162
+ return;
4163
+ }
4164
+ }
4011
4165
  calendar.goToDay(nextFocus);
4012
4166
  setFocused(nextFocus);
4013
4167
  };
@@ -4268,40 +4422,110 @@ function useSelection(props, dateLib) {
4268
4422
  }
4269
4423
  }
4270
4424
 
4425
+ // node_modules/react-day-picker/dist/esm/utils/toTimeZone.js
4426
+ function toTimeZone(date, timeZone) {
4427
+ if (date instanceof TZDate && date.timeZone === timeZone) {
4428
+ return date;
4429
+ }
4430
+ return new TZDate(date, timeZone);
4431
+ }
4432
+
4433
+ // node_modules/react-day-picker/dist/esm/utils/convertMatchersToTimeZone.js
4434
+ function convertMatcher(matcher, timeZone) {
4435
+ if (typeof matcher === "boolean" || typeof matcher === "function") {
4436
+ return matcher;
4437
+ }
4438
+ if (matcher instanceof Date) {
4439
+ return toTimeZone(matcher, timeZone);
4440
+ }
4441
+ if (Array.isArray(matcher)) {
4442
+ return matcher.map((value) => value instanceof Date ? toTimeZone(value, timeZone) : value);
4443
+ }
4444
+ if (isDateRange(matcher)) {
4445
+ return __spreadProps(__spreadValues({}, matcher), {
4446
+ from: matcher.from ? toTimeZone(matcher.from, timeZone) : matcher.from,
4447
+ to: matcher.to ? toTimeZone(matcher.to, timeZone) : matcher.to
4448
+ });
4449
+ }
4450
+ if (isDateInterval(matcher)) {
4451
+ return {
4452
+ before: toTimeZone(matcher.before, timeZone),
4453
+ after: toTimeZone(matcher.after, timeZone)
4454
+ };
4455
+ }
4456
+ if (isDateAfterType(matcher)) {
4457
+ return {
4458
+ after: toTimeZone(matcher.after, timeZone)
4459
+ };
4460
+ }
4461
+ if (isDateBeforeType(matcher)) {
4462
+ return {
4463
+ before: toTimeZone(matcher.before, timeZone)
4464
+ };
4465
+ }
4466
+ return matcher;
4467
+ }
4468
+ function convertMatchersToTimeZone(matchers, timeZone) {
4469
+ if (!matchers) {
4470
+ return matchers;
4471
+ }
4472
+ if (Array.isArray(matchers)) {
4473
+ return matchers.map((matcher) => convertMatcher(matcher, timeZone));
4474
+ }
4475
+ return convertMatcher(matchers, timeZone);
4476
+ }
4477
+
4271
4478
  // node_modules/react-day-picker/dist/esm/DayPicker.js
4272
4479
  function DayPicker(initialProps) {
4273
4480
  var _a, _b;
4274
4481
  let props = initialProps;
4275
- if (props.timeZone) {
4276
- props = __spreadValues({}, initialProps);
4482
+ const timeZone = props.timeZone;
4483
+ if (timeZone) {
4484
+ props = __spreadProps(__spreadValues({}, initialProps), {
4485
+ timeZone
4486
+ });
4277
4487
  if (props.today) {
4278
- props.today = new TZDate(props.today, props.timeZone);
4488
+ props.today = toTimeZone(props.today, timeZone);
4279
4489
  }
4280
4490
  if (props.month) {
4281
- props.month = new TZDate(props.month, props.timeZone);
4491
+ props.month = toTimeZone(props.month, timeZone);
4282
4492
  }
4283
4493
  if (props.defaultMonth) {
4284
- props.defaultMonth = new TZDate(props.defaultMonth, props.timeZone);
4494
+ props.defaultMonth = toTimeZone(props.defaultMonth, timeZone);
4285
4495
  }
4286
4496
  if (props.startMonth) {
4287
- props.startMonth = new TZDate(props.startMonth, props.timeZone);
4497
+ props.startMonth = toTimeZone(props.startMonth, timeZone);
4288
4498
  }
4289
4499
  if (props.endMonth) {
4290
- props.endMonth = new TZDate(props.endMonth, props.timeZone);
4500
+ props.endMonth = toTimeZone(props.endMonth, timeZone);
4291
4501
  }
4292
4502
  if (props.mode === "single" && props.selected) {
4293
- props.selected = new TZDate(props.selected, props.timeZone);
4503
+ props.selected = toTimeZone(props.selected, timeZone);
4294
4504
  } else if (props.mode === "multiple" && props.selected) {
4295
- props.selected = (_a = props.selected) == null ? void 0 : _a.map((date) => new TZDate(date, props.timeZone));
4505
+ props.selected = (_a = props.selected) == null ? void 0 : _a.map((date) => toTimeZone(date, timeZone));
4296
4506
  } else if (props.mode === "range" && props.selected) {
4297
4507
  props.selected = {
4298
- from: props.selected.from ? new TZDate(props.selected.from, props.timeZone) : void 0,
4299
- to: props.selected.to ? new TZDate(props.selected.to, props.timeZone) : void 0
4508
+ from: props.selected.from ? toTimeZone(props.selected.from, timeZone) : props.selected.from,
4509
+ to: props.selected.to ? toTimeZone(props.selected.to, timeZone) : props.selected.to
4300
4510
  };
4301
4511
  }
4512
+ if (props.disabled !== void 0) {
4513
+ props.disabled = convertMatchersToTimeZone(props.disabled, timeZone);
4514
+ }
4515
+ if (props.hidden !== void 0) {
4516
+ props.hidden = convertMatchersToTimeZone(props.hidden, timeZone);
4517
+ }
4518
+ if (props.modifiers) {
4519
+ const nextModifiers = {};
4520
+ Object.keys(props.modifiers).forEach((key) => {
4521
+ var _a2;
4522
+ nextModifiers[key] = convertMatchersToTimeZone((_a2 = props.modifiers) == null ? void 0 : _a2[key], timeZone);
4523
+ });
4524
+ props.modifiers = nextModifiers;
4525
+ }
4302
4526
  }
4303
- const { components, formatters: formatters2, labels, dateLib, locale, classNames } = useMemo(() => {
4304
- const locale2 = __spreadValues(__spreadValues({}, enUS), props.locale);
4527
+ const { components, formatters: formatters2, labels, dateLib, locale, classNames } = useMemo2(() => {
4528
+ const locale2 = __spreadValues(__spreadValues({}, enUS2), props.locale);
4305
4529
  const dateLib2 = new DateLib({
4306
4530
  locale: locale2,
4307
4531
  weekStartsOn: props.broadcastCalendar ? 1 : props.weekStartsOn,
@@ -4315,7 +4539,7 @@ function DayPicker(initialProps) {
4315
4539
  dateLib: dateLib2,
4316
4540
  components: getComponents(props.components),
4317
4541
  formatters: getFormatters(props.formatters),
4318
- labels: __spreadValues(__spreadValues({}, labels_exports), props.labels),
4542
+ labels: getLabels(props.labels, dateLib2.options),
4319
4543
  locale: locale2,
4320
4544
  classNames: __spreadValues(__spreadValues({}, getDefaultClassNames()), props.classNames)
4321
4545
  };
@@ -4334,15 +4558,18 @@ function DayPicker(initialProps) {
4334
4558
  props.labels,
4335
4559
  props.classNames
4336
4560
  ]);
4561
+ if (!props.today) {
4562
+ props = __spreadProps(__spreadValues({}, props), { today: dateLib.today() });
4563
+ }
4337
4564
  const { captionLayout, mode, navLayout, numberOfMonths = 1, onDayBlur, onDayClick, onDayFocus, onDayKeyDown, onDayMouseEnter, onDayMouseLeave, onNextClick, onPrevClick, showWeekNumber, styles } = props;
4338
4565
  const { formatCaption: formatCaption2, formatDay: formatDay2, formatMonthDropdown: formatMonthDropdown2, formatWeekNumber: formatWeekNumber2, formatWeekNumberHeader: formatWeekNumberHeader2, formatWeekdayName: formatWeekdayName2, formatYearDropdown: formatYearDropdown2 } = formatters2;
4339
4566
  const calendar = useCalendar(props, dateLib);
4340
4567
  const { days, months, navStart, navEnd, previousMonth, nextMonth, goToMonth } = calendar;
4341
4568
  const getModifiers = createGetModifiers(days, props, navStart, navEnd, dateLib);
4342
4569
  const { isSelected, select, selected: selectedValue } = (_b = useSelection(props, dateLib)) != null ? _b : {};
4343
- const { blur, focused, isFocusTarget, moveFocus, setFocused } = useFocus(props, calendar, getModifiers, isSelected != null ? isSelected : () => false, dateLib);
4570
+ const { blur, focused, isFocusTarget, moveFocus, setFocused } = useFocus(props, calendar, getModifiers, isSelected != null ? isSelected : (() => false), dateLib);
4344
4571
  const { labelDayButton: labelDayButton2, labelGridcell: labelGridcell2, labelGrid: labelGrid2, labelMonthDropdown: labelMonthDropdown2, labelNav: labelNav2, labelPrevious: labelPrevious2, labelNext: labelNext2, labelWeekday: labelWeekday2, labelWeekNumber: labelWeekNumber2, labelWeekNumberHeader: labelWeekNumberHeader2, labelYearDropdown: labelYearDropdown2 } = labels;
4345
- const weekdays = useMemo(() => getWeekdays(dateLib, props.ISOWeek), [dateLib, props.ISOWeek]);
4572
+ const weekdays = useMemo2(() => getWeekdays(dateLib, props.ISOWeek, props.broadcastCalendar, props.today), [dateLib, props.ISOWeek, props.broadcastCalendar, props.today]);
4346
4573
  const isInteractive = mode !== void 0 || onDayClick !== void 0;
4347
4574
  const handlePreviousClick = useCallback2(() => {
4348
4575
  if (!previousMonth)
@@ -4360,6 +4587,9 @@ function DayPicker(initialProps) {
4360
4587
  e.preventDefault();
4361
4588
  e.stopPropagation();
4362
4589
  setFocused(day);
4590
+ if (m.disabled) {
4591
+ return;
4592
+ }
4363
4593
  select == null ? void 0 : select(day.date, m, e);
4364
4594
  onDayClick == null ? void 0 : onDayClick(day.date, m, e);
4365
4595
  }, [select, onDayClick, setFocused]);
@@ -4412,7 +4642,7 @@ function DayPicker(initialProps) {
4412
4642
  const month = dateLib.setYear(dateLib.startOfMonth(date), selectedYear);
4413
4643
  goToMonth(month);
4414
4644
  }, [dateLib, goToMonth]);
4415
- const { className, style } = useMemo(() => ({
4645
+ const { className, style } = useMemo2(() => ({
4416
4646
  className: [classNames[UI.Root], props.className].filter(Boolean).join(" "),
4417
4647
  style: __spreadValues(__spreadValues({}, styles == null ? void 0 : styles[UI.Root]), props.style)
4418
4648
  }), [classNames, props.className, props.style, styles]);
@@ -4488,10 +4718,7 @@ function DayPicker(initialProps) {
4488
4718
  whiteSpace: "nowrap",
4489
4719
  wordWrap: "normal"
4490
4720
  } }, formatCaption2(calendarMonth.date, dateLib.options, dateLib))
4491
- ) : (
4492
- // biome-ignore lint/a11y/useSemanticElements: breaking change
4493
- React32.createElement(components.CaptionLabel, { className: classNames[UI.CaptionLabel], role: "status", "aria-live": "polite" }, formatCaption2(calendarMonth.date, dateLib.options, dateLib))
4494
- )),
4721
+ ) : React32.createElement(components.CaptionLabel, { className: classNames[UI.CaptionLabel], role: "status", "aria-live": "polite" }, formatCaption2(calendarMonth.date, dateLib.options, dateLib))),
4495
4722
  navLayout === "around" && !props.hideNavigation && displayIndex === numberOfMonths - 1 && React32.createElement(
4496
4723
  components.NextMonthButton,
4497
4724
  { type: "button", className: classNames[UI.NextMonthButton], tabIndex: nextMonth ? void 0 : -1, "aria-disabled": nextMonth ? void 0 : true, "aria-label": labelNext2(nextMonth), onClick: handleNextClick, "data-animated-button": props.animate ? "true" : void 0 },
@@ -4511,8 +4738,7 @@ function DayPicker(initialProps) {
4511
4738
  return React32.createElement(
4512
4739
  components.Week,
4513
4740
  { className: classNames[UI.Week], key: week.weekNumber, style: styles == null ? void 0 : styles[UI.Week], week },
4514
- showWeekNumber && // biome-ignore lint/a11y/useSemanticElements: react component
4515
- React32.createElement(components.WeekNumber, { week, style: styles == null ? void 0 : styles[UI.WeekNumber], "aria-label": labelWeekNumber2(week.weekNumber, {
4741
+ showWeekNumber && React32.createElement(components.WeekNumber, { week, style: styles == null ? void 0 : styles[UI.WeekNumber], "aria-label": labelWeekNumber2(week.weekNumber, {
4516
4742
  locale
4517
4743
  }), className: classNames[UI.WeekNumber], scope: "row", role: "rowheader" }, formatWeekNumber2(week.weekNumber, dateLib)),
4518
4744
  week.days.map((day) => {
@@ -4529,10 +4755,7 @@ function DayPicker(initialProps) {
4529
4755
  const style2 = getStyleForModifiers(modifiers, styles, props.modifiersStyles);
4530
4756
  const className2 = getClassNamesForModifiers(modifiers, classNames, props.modifiersClassNames);
4531
4757
  const ariaLabel = !isInteractive && !modifiers.hidden ? labelGridcell2(date, modifiers, dateLib.options, dateLib) : void 0;
4532
- return (
4533
- // biome-ignore lint/a11y/useSemanticElements: react component
4534
- React32.createElement(components.Day, { key: `${dateLib.format(date, "yyyy-MM-dd")}_${dateLib.format(day.displayMonth, "yyyy-MM")}`, day, modifiers, className: className2.join(" "), style: style2, role: "gridcell", "aria-selected": modifiers.selected || void 0, "aria-label": ariaLabel, "data-day": dateLib.format(date, "yyyy-MM-dd"), "data-month": day.outside ? dateLib.format(date, "yyyy-MM") : void 0, "data-selected": modifiers.selected || void 0, "data-disabled": modifiers.disabled || void 0, "data-hidden": modifiers.hidden || void 0, "data-outside": day.outside || void 0, "data-focused": modifiers.focused || void 0, "data-today": modifiers.today || void 0 }, !modifiers.hidden && isInteractive ? React32.createElement(components.DayButton, { className: classNames[UI.DayButton], style: styles == null ? void 0 : styles[UI.DayButton], type: "button", day, modifiers, disabled: modifiers.disabled || void 0, tabIndex: isFocusTarget(day) ? 0 : -1, "aria-label": labelDayButton2(date, modifiers, dateLib.options, dateLib), onClick: handleDayClick(day, modifiers), onBlur: handleDayBlur(day, modifiers), onFocus: handleDayFocus(day, modifiers), onKeyDown: handleDayKeyDown(day, modifiers), onMouseEnter: handleDayMouseEnter(day, modifiers), onMouseLeave: handleDayMouseLeave(day, modifiers) }, formatDay2(date, dateLib.options, dateLib)) : !modifiers.hidden && formatDay2(day.date, dateLib.options, dateLib))
4535
- );
4758
+ return React32.createElement(components.Day, { key: `${day.isoDate}_${day.displayMonthId}`, day, modifiers, className: className2.join(" "), style: style2, role: "gridcell", "aria-selected": modifiers.selected || void 0, "aria-label": ariaLabel, "data-day": day.isoDate, "data-month": day.outside ? day.dateMonthId : void 0, "data-selected": modifiers.selected || void 0, "data-disabled": modifiers.disabled || void 0, "data-hidden": modifiers.hidden || void 0, "data-outside": day.outside || void 0, "data-focused": modifiers.focused || void 0, "data-today": modifiers.today || void 0 }, !modifiers.hidden && isInteractive ? React32.createElement(components.DayButton, { className: classNames[UI.DayButton], style: styles == null ? void 0 : styles[UI.DayButton], type: "button", day, modifiers, disabled: !modifiers.focused && modifiers.disabled || void 0, "aria-disabled": modifiers.focused && modifiers.disabled || void 0, tabIndex: isFocusTarget(day) ? 0 : -1, "aria-label": labelDayButton2(date, modifiers, dateLib.options, dateLib), onClick: handleDayClick(day, modifiers), onBlur: handleDayBlur(day, modifiers), onFocus: handleDayFocus(day, modifiers), onKeyDown: handleDayKeyDown(day, modifiers), onMouseEnter: handleDayMouseEnter(day, modifiers), onMouseLeave: handleDayMouseLeave(day, modifiers) }, formatDay2(date, dateLib.options, dateLib)) : !modifiers.hidden && formatDay2(day.date, dateLib.options, dateLib));
4536
4759
  })
4537
4760
  );
4538
4761
  }))
@@ -4540,8 +4763,7 @@ function DayPicker(initialProps) {
4540
4763
  );
4541
4764
  })
4542
4765
  ),
4543
- props.footer && // biome-ignore lint/a11y/useSemanticElements: react component
4544
- React32.createElement(components.Footer, { className: classNames[UI.Footer], style: styles == null ? void 0 : styles[UI.Footer], role: "status", "aria-live": "polite" }, props.footer)
4766
+ props.footer && React32.createElement(components.Footer, { className: classNames[UI.Footer], style: styles == null ? void 0 : styles[UI.Footer], role: "status", "aria-live": "polite" }, props.footer)
4545
4767
  )
4546
4768
  );
4547
4769
  }
@@ -5652,7 +5874,8 @@ var Input = React41.forwardRef(
5652
5874
  iconPadLeft,
5653
5875
  iconPadRight,
5654
5876
  className
5655
- ) : className
5877
+ ) : className,
5878
+ "data-private": true
5656
5879
  }, props)
5657
5880
  ),
5658
5881
  trailing ? /* @__PURE__ */ jsx17(
@@ -6162,7 +6385,8 @@ var InputOTPSlot = React44.forwardRef((_a, ref) => {
6162
6385
  "relative flex h-9 w-9 items-center justify-center border-y border-r border-input text-sm shadow-sm transition-all first:rounded-l-md first:border-l last:rounded-r-md",
6163
6386
  isActive && "z-10 ring-1 ring-ring",
6164
6387
  className
6165
- )
6388
+ ),
6389
+ "data-private": true
6166
6390
  }, props), {
6167
6391
  children: [
6168
6392
  char,
@@ -7815,7 +8039,7 @@ import {
7815
8039
  useReactTable
7816
8040
  } from "@tanstack/react-table";
7817
8041
  import { ChevronLeftIcon as ChevronLeftIcon2, ChevronRightIcon as ChevronRightIcon6 } from "lucide-react";
7818
- import { Fragment as Fragment2, jsx as jsx48, jsxs as jsxs23 } from "react/jsx-runtime";
8042
+ import { jsx as jsx48, jsxs as jsxs23 } from "react/jsx-runtime";
7819
8043
  function DataTable({
7820
8044
  columns,
7821
8045
  data,
@@ -7865,9 +8089,9 @@ function DataTable({
7865
8089
  if (onPageChange) {
7866
8090
  onPageChange(pagination.pageIndex + 1);
7867
8091
  }
7868
- }, [pagination]);
7869
- return /* @__PURE__ */ jsxs23(Fragment2, { children: [
7870
- /* @__PURE__ */ jsx48("div", { className: cn("rounded-md border", className), children: /* @__PURE__ */ jsxs23(ScrollArea, { className: "h-[calc(80vh-220px)] md:h-[calc(80dvh-80px)]", children: [
8092
+ }, [pagination, onPageChange]);
8093
+ return /* @__PURE__ */ jsxs23("div", { className: cn("rounded-md border bg-background flex flex-col", className), children: [
8094
+ /* @__PURE__ */ jsxs23(ScrollArea, { className: "h-[calc(80vh-220px)] md:h-[calc(80dvh-80px)]", children: [
7871
8095
  /* @__PURE__ */ jsxs23(Table, { className: cn("relative", tableClassName), children: [
7872
8096
  /* @__PURE__ */ jsx48(TableHeader, { className: headerClassName, children: table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ jsx48(TableRow, { className: rowClassName, children: headerGroup.headers.map((header) => /* @__PURE__ */ jsx48(TableHead, { className: headerClassName, children: header.isPlaceholder ? null : flexRender(
7873
8097
  header.column.columnDef.header,
@@ -7895,23 +8119,26 @@ function DataTable({
7895
8119
  ) }) })
7896
8120
  ] }),
7897
8121
  /* @__PURE__ */ jsx48(ScrollBar, { orientation: "horizontal" })
7898
- ] }) }),
7899
- /* @__PURE__ */ jsxs23("div", { className: "flex flex-col items-center justify-end gap-2 space-x-2 py-4 sm:flex-row", children: [
7900
- /* @__PURE__ */ jsxs23("div", { className: "flex w-full items-center justify-between", children: [
7901
- isRowsSelected ? /* @__PURE__ */ jsxs23("div", { className: "text-muted-foreground flex-1 text-sm", children: [
8122
+ ] }),
8123
+ /* @__PURE__ */ jsxs23("div", { className: "border-t px-4 py-4 flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between", children: [
8124
+ /* @__PURE__ */ jsxs23("div", { className: "flex flex-1 flex-wrap items-center gap-2", children: [
8125
+ isRowsSelected && /* @__PURE__ */ jsxs23("div", { className: "text-muted-foreground text-sm", children: [
7902
8126
  table.getFilteredSelectedRowModel().rows.length,
7903
8127
  " ",
7904
8128
  ofLabel,
7905
8129
  " ",
7906
8130
  table.getFilteredRowModel().rows.length,
7907
- " " + rowsSelectedLabel
7908
- ] }) : null,
8131
+ " ",
8132
+ rowsSelectedLabel
8133
+ ] }),
7909
8134
  totalRows ? /* @__PURE__ */ jsxs23("div", { className: "text-sm text-muted-foreground", children: [
7910
8135
  "Total: ",
7911
8136
  totalRows,
7912
8137
  " registros"
7913
- ] }) : null,
7914
- /* @__PURE__ */ jsxs23("div", { className: "flex items-center space-x-2", children: [
8138
+ ] }) : null
8139
+ ] }),
8140
+ /* @__PURE__ */ jsxs23("div", { className: "flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-end", children: [
8141
+ /* @__PURE__ */ jsxs23("div", { className: "flex items-center gap-2", children: [
7915
8142
  /* @__PURE__ */ jsx48("p", { className: "text-sm font-medium whitespace-nowrap", children: rowPerPageLabel }),
7916
8143
  /* @__PURE__ */ jsxs23(
7917
8144
  Select2,
@@ -7931,19 +8158,17 @@ function DataTable({
7931
8158
  ]
7932
8159
  }
7933
8160
  )
7934
- ] })
7935
- ] }),
7936
- /* @__PURE__ */ jsxs23("div", { className: "flex w-full items-center justify-between gap-2 sm:justify-end", children: [
7937
- /* @__PURE__ */ jsxs23("div", { className: "flex w-[100px] items-center justify-center text-sm font-medium", children: [
7938
- pageLabel,
7939
- " ",
7940
- pagination.pageIndex + 1,
7941
- " ",
7942
- ofLabel,
7943
- " ",
7944
- pageCount
7945
8161
  ] }),
7946
- /* @__PURE__ */ jsxs23("div", { className: "flex items-center space-x-2", children: [
8162
+ /* @__PURE__ */ jsxs23("div", { className: "flex items-center gap-2", children: [
8163
+ /* @__PURE__ */ jsxs23("div", { className: "flex w-[110px] items-center justify-center text-sm font-medium", children: [
8164
+ pageLabel,
8165
+ " ",
8166
+ pagination.pageIndex + 1,
8167
+ " ",
8168
+ ofLabel,
8169
+ " ",
8170
+ pageCount
8171
+ ] }),
7947
8172
  /* @__PURE__ */ jsx48(
7948
8173
  Button,
7949
8174
  {