@otfdashkit/ui 0.1.0 → 0.1.1

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.
Files changed (4) hide show
  1. package/README.md +112 -0
  2. package/dist/index.js +96 -1801
  3. package/dist/index.mjs +40 -1745
  4. package/package.json +23 -5
package/dist/index.js CHANGED
@@ -42,6 +42,7 @@ var ToggleGroupPrimitive = require('@radix-ui/react-toggle-group');
42
42
  var TogglePrimitive = require('@radix-ui/react-toggle');
43
43
  var TooltipPrimitive = require('@radix-ui/react-tooltip');
44
44
  var reactTable = require('@tanstack/react-table');
45
+ var dateFns = require('date-fns');
45
46
  var core = require('@dnd-kit/core');
46
47
  var sortable = require('@dnd-kit/sortable');
47
48
  var utilities = require('@dnd-kit/utilities');
@@ -416,7 +417,7 @@ function Calendar({
416
417
  showOutsideDays = true,
417
418
  captionLayout = "label",
418
419
  buttonVariant = "ghost",
419
- formatters: formatters2,
420
+ formatters,
420
421
  components,
421
422
  ...props
422
423
  }) {
@@ -434,7 +435,7 @@ function Calendar({
434
435
  captionLayout,
435
436
  formatters: {
436
437
  formatMonthDropdown: (date) => date.toLocaleString("default", { month: "short" }),
437
- ...formatters2
438
+ ...formatters
438
439
  },
439
440
  classNames: {
440
441
  root: cn("w-fit", defaultClassNames.root),
@@ -5447,1712 +5448,6 @@ function Filters({ filters, value, onChange, className }) {
5447
5448
  /* @__PURE__ */ jsxRuntime.jsx(AddFilterPopover, { filters, onAdd: (fv) => onChange([...value, fv]) })
5448
5449
  ] });
5449
5450
  }
5450
- var millisecondsInWeek = 6048e5;
5451
- var millisecondsInDay = 864e5;
5452
- var millisecondsInMinute = 6e4;
5453
- var millisecondsInHour = 36e5;
5454
- var constructFromSymbol = /* @__PURE__ */ Symbol.for("constructDateFrom");
5455
-
5456
- // node_modules/date-fns/constructFrom.js
5457
- function constructFrom(date, value) {
5458
- if (typeof date === "function") return date(value);
5459
- if (date && typeof date === "object" && constructFromSymbol in date)
5460
- return date[constructFromSymbol](value);
5461
- if (date instanceof Date) return new date.constructor(value);
5462
- return new Date(value);
5463
- }
5464
-
5465
- // node_modules/date-fns/toDate.js
5466
- function toDate(argument, context) {
5467
- return constructFrom(context || argument, argument);
5468
- }
5469
-
5470
- // node_modules/date-fns/addDays.js
5471
- function addDays(date, amount, options) {
5472
- const _date = toDate(date, options?.in);
5473
- if (isNaN(amount)) return constructFrom(date, NaN);
5474
- if (!amount) return _date;
5475
- _date.setDate(_date.getDate() + amount);
5476
- return _date;
5477
- }
5478
-
5479
- // node_modules/date-fns/addMonths.js
5480
- function addMonths(date, amount, options) {
5481
- const _date = toDate(date, options?.in);
5482
- if (isNaN(amount)) return constructFrom(date, NaN);
5483
- if (!amount) {
5484
- return _date;
5485
- }
5486
- const dayOfMonth = _date.getDate();
5487
- const endOfDesiredMonth = constructFrom(date, _date.getTime());
5488
- endOfDesiredMonth.setMonth(_date.getMonth() + amount + 1, 0);
5489
- const daysInMonth = endOfDesiredMonth.getDate();
5490
- if (dayOfMonth >= daysInMonth) {
5491
- return endOfDesiredMonth;
5492
- } else {
5493
- _date.setFullYear(
5494
- endOfDesiredMonth.getFullYear(),
5495
- endOfDesiredMonth.getMonth(),
5496
- dayOfMonth
5497
- );
5498
- return _date;
5499
- }
5500
- }
5501
-
5502
- // node_modules/date-fns/addMilliseconds.js
5503
- function addMilliseconds(date, amount, options) {
5504
- return constructFrom(date, +toDate(date) + amount);
5505
- }
5506
-
5507
- // node_modules/date-fns/addHours.js
5508
- function addHours(date, amount, options) {
5509
- return addMilliseconds(date, amount * millisecondsInHour);
5510
- }
5511
-
5512
- // node_modules/date-fns/_lib/defaultOptions.js
5513
- var defaultOptions = {};
5514
- function getDefaultOptions() {
5515
- return defaultOptions;
5516
- }
5517
-
5518
- // node_modules/date-fns/startOfWeek.js
5519
- function startOfWeek2(date, options) {
5520
- const defaultOptions2 = getDefaultOptions();
5521
- const weekStartsOn = options?.weekStartsOn ?? options?.locale?.options?.weekStartsOn ?? defaultOptions2.weekStartsOn ?? defaultOptions2.locale?.options?.weekStartsOn ?? 0;
5522
- const _date = toDate(date, options?.in);
5523
- const day = _date.getDay();
5524
- const diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn;
5525
- _date.setDate(_date.getDate() - diff);
5526
- _date.setHours(0, 0, 0, 0);
5527
- return _date;
5528
- }
5529
-
5530
- // node_modules/date-fns/startOfISOWeek.js
5531
- function startOfISOWeek(date, options) {
5532
- return startOfWeek2(date, { ...options, weekStartsOn: 1 });
5533
- }
5534
-
5535
- // node_modules/date-fns/getISOWeekYear.js
5536
- function getISOWeekYear(date, options) {
5537
- const _date = toDate(date, options?.in);
5538
- const year = _date.getFullYear();
5539
- const fourthOfJanuaryOfNextYear = constructFrom(_date, 0);
5540
- fourthOfJanuaryOfNextYear.setFullYear(year + 1, 0, 4);
5541
- fourthOfJanuaryOfNextYear.setHours(0, 0, 0, 0);
5542
- const startOfNextYear = startOfISOWeek(fourthOfJanuaryOfNextYear);
5543
- const fourthOfJanuaryOfThisYear = constructFrom(_date, 0);
5544
- fourthOfJanuaryOfThisYear.setFullYear(year, 0, 4);
5545
- fourthOfJanuaryOfThisYear.setHours(0, 0, 0, 0);
5546
- const startOfThisYear = startOfISOWeek(fourthOfJanuaryOfThisYear);
5547
- if (_date.getTime() >= startOfNextYear.getTime()) {
5548
- return year + 1;
5549
- } else if (_date.getTime() >= startOfThisYear.getTime()) {
5550
- return year;
5551
- } else {
5552
- return year - 1;
5553
- }
5554
- }
5555
-
5556
- // node_modules/date-fns/_lib/getTimezoneOffsetInMilliseconds.js
5557
- function getTimezoneOffsetInMilliseconds(date) {
5558
- const _date = toDate(date);
5559
- const utcDate = new Date(
5560
- Date.UTC(
5561
- _date.getFullYear(),
5562
- _date.getMonth(),
5563
- _date.getDate(),
5564
- _date.getHours(),
5565
- _date.getMinutes(),
5566
- _date.getSeconds(),
5567
- _date.getMilliseconds()
5568
- )
5569
- );
5570
- utcDate.setUTCFullYear(_date.getFullYear());
5571
- return +date - +utcDate;
5572
- }
5573
-
5574
- // node_modules/date-fns/_lib/normalizeDates.js
5575
- function normalizeDates(context, ...dates) {
5576
- const normalize = constructFrom.bind(
5577
- null,
5578
- context || dates.find((date) => typeof date === "object")
5579
- );
5580
- return dates.map(normalize);
5581
- }
5582
-
5583
- // node_modules/date-fns/startOfDay.js
5584
- function startOfDay(date, options) {
5585
- const _date = toDate(date, options?.in);
5586
- _date.setHours(0, 0, 0, 0);
5587
- return _date;
5588
- }
5589
-
5590
- // node_modules/date-fns/differenceInCalendarDays.js
5591
- function differenceInCalendarDays(laterDate, earlierDate, options) {
5592
- const [laterDate_, earlierDate_] = normalizeDates(
5593
- options?.in,
5594
- laterDate,
5595
- earlierDate
5596
- );
5597
- const laterStartOfDay = startOfDay(laterDate_);
5598
- const earlierStartOfDay = startOfDay(earlierDate_);
5599
- const laterTimestamp = +laterStartOfDay - getTimezoneOffsetInMilliseconds(laterStartOfDay);
5600
- const earlierTimestamp = +earlierStartOfDay - getTimezoneOffsetInMilliseconds(earlierStartOfDay);
5601
- return Math.round((laterTimestamp - earlierTimestamp) / millisecondsInDay);
5602
- }
5603
-
5604
- // node_modules/date-fns/startOfISOWeekYear.js
5605
- function startOfISOWeekYear(date, options) {
5606
- const year = getISOWeekYear(date, options);
5607
- const fourthOfJanuary = constructFrom(date, 0);
5608
- fourthOfJanuary.setFullYear(year, 0, 4);
5609
- fourthOfJanuary.setHours(0, 0, 0, 0);
5610
- return startOfISOWeek(fourthOfJanuary);
5611
- }
5612
-
5613
- // node_modules/date-fns/addWeeks.js
5614
- function addWeeks(date, amount, options) {
5615
- return addDays(date, amount * 7, options);
5616
- }
5617
-
5618
- // node_modules/date-fns/isSameDay.js
5619
- function isSameDay(laterDate, earlierDate, options) {
5620
- const [dateLeft_, dateRight_] = normalizeDates(
5621
- options?.in,
5622
- laterDate,
5623
- earlierDate
5624
- );
5625
- return +startOfDay(dateLeft_) === +startOfDay(dateRight_);
5626
- }
5627
-
5628
- // node_modules/date-fns/isDate.js
5629
- function isDate(value) {
5630
- return value instanceof Date || typeof value === "object" && Object.prototype.toString.call(value) === "[object Date]";
5631
- }
5632
-
5633
- // node_modules/date-fns/isValid.js
5634
- function isValid(date) {
5635
- return !(!isDate(date) && typeof date !== "number" || isNaN(+toDate(date)));
5636
- }
5637
-
5638
- // node_modules/date-fns/differenceInCalendarMonths.js
5639
- function differenceInCalendarMonths(laterDate, earlierDate, options) {
5640
- const [laterDate_, earlierDate_] = normalizeDates(
5641
- options?.in,
5642
- laterDate,
5643
- earlierDate
5644
- );
5645
- const yearsDiff = laterDate_.getFullYear() - earlierDate_.getFullYear();
5646
- const monthsDiff = laterDate_.getMonth() - earlierDate_.getMonth();
5647
- return yearsDiff * 12 + monthsDiff;
5648
- }
5649
-
5650
- // node_modules/date-fns/differenceInCalendarWeeks.js
5651
- function differenceInCalendarWeeks(laterDate, earlierDate, options) {
5652
- const [laterDate_, earlierDate_] = normalizeDates(
5653
- options?.in,
5654
- laterDate,
5655
- earlierDate
5656
- );
5657
- const laterStartOfWeek = startOfWeek2(laterDate_, options);
5658
- const earlierStartOfWeek = startOfWeek2(earlierDate_, options);
5659
- const laterTimestamp = +laterStartOfWeek - getTimezoneOffsetInMilliseconds(laterStartOfWeek);
5660
- const earlierTimestamp = +earlierStartOfWeek - getTimezoneOffsetInMilliseconds(earlierStartOfWeek);
5661
- return Math.round((laterTimestamp - earlierTimestamp) / millisecondsInWeek);
5662
- }
5663
-
5664
- // node_modules/date-fns/_lib/getRoundingMethod.js
5665
- function getRoundingMethod(method) {
5666
- return (number) => {
5667
- const round = Math.trunc;
5668
- const result = round(number);
5669
- return result === 0 ? 0 : result;
5670
- };
5671
- }
5672
-
5673
- // node_modules/date-fns/differenceInMilliseconds.js
5674
- function differenceInMilliseconds(laterDate, earlierDate) {
5675
- return +toDate(laterDate) - +toDate(earlierDate);
5676
- }
5677
-
5678
- // node_modules/date-fns/differenceInMinutes.js
5679
- function differenceInMinutes(dateLeft, dateRight, options) {
5680
- const diff = differenceInMilliseconds(dateLeft, dateRight) / millisecondsInMinute;
5681
- return getRoundingMethod()(diff);
5682
- }
5683
-
5684
- // node_modules/date-fns/endOfDay.js
5685
- function endOfDay(date, options) {
5686
- const _date = toDate(date, options?.in);
5687
- _date.setHours(23, 59, 59, 999);
5688
- return _date;
5689
- }
5690
-
5691
- // node_modules/date-fns/endOfMonth.js
5692
- function endOfMonth(date, options) {
5693
- const _date = toDate(date, options?.in);
5694
- const month = _date.getMonth();
5695
- _date.setFullYear(_date.getFullYear(), month + 1, 0);
5696
- _date.setHours(23, 59, 59, 999);
5697
- return _date;
5698
- }
5699
-
5700
- // node_modules/date-fns/startOfMonth.js
5701
- function startOfMonth(date, options) {
5702
- const _date = toDate(date, options?.in);
5703
- _date.setDate(1);
5704
- _date.setHours(0, 0, 0, 0);
5705
- return _date;
5706
- }
5707
-
5708
- // node_modules/date-fns/startOfYear.js
5709
- function startOfYear(date, options) {
5710
- const date_ = toDate(date, options?.in);
5711
- date_.setFullYear(date_.getFullYear(), 0, 1);
5712
- date_.setHours(0, 0, 0, 0);
5713
- return date_;
5714
- }
5715
-
5716
- // node_modules/date-fns/endOfWeek.js
5717
- function endOfWeek(date, options) {
5718
- const weekStartsOn = options?.weekStartsOn;
5719
- const _date = toDate(date, options?.in);
5720
- const day = _date.getDay();
5721
- const diff = (day < weekStartsOn ? -7 : 0) + 6 - (day - weekStartsOn);
5722
- _date.setDate(_date.getDate() + diff);
5723
- _date.setHours(23, 59, 59, 999);
5724
- return _date;
5725
- }
5726
-
5727
- // node_modules/date-fns/locale/en-US/_lib/formatDistance.js
5728
- var formatDistanceLocale = {
5729
- lessThanXSeconds: {
5730
- one: "less than a second",
5731
- other: "less than {{count}} seconds"
5732
- },
5733
- xSeconds: {
5734
- one: "1 second",
5735
- other: "{{count}} seconds"
5736
- },
5737
- halfAMinute: "half a minute",
5738
- lessThanXMinutes: {
5739
- one: "less than a minute",
5740
- other: "less than {{count}} minutes"
5741
- },
5742
- xMinutes: {
5743
- one: "1 minute",
5744
- other: "{{count}} minutes"
5745
- },
5746
- aboutXHours: {
5747
- one: "about 1 hour",
5748
- other: "about {{count}} hours"
5749
- },
5750
- xHours: {
5751
- one: "1 hour",
5752
- other: "{{count}} hours"
5753
- },
5754
- xDays: {
5755
- one: "1 day",
5756
- other: "{{count}} days"
5757
- },
5758
- aboutXWeeks: {
5759
- one: "about 1 week",
5760
- other: "about {{count}} weeks"
5761
- },
5762
- xWeeks: {
5763
- one: "1 week",
5764
- other: "{{count}} weeks"
5765
- },
5766
- aboutXMonths: {
5767
- one: "about 1 month",
5768
- other: "about {{count}} months"
5769
- },
5770
- xMonths: {
5771
- one: "1 month",
5772
- other: "{{count}} months"
5773
- },
5774
- aboutXYears: {
5775
- one: "about 1 year",
5776
- other: "about {{count}} years"
5777
- },
5778
- xYears: {
5779
- one: "1 year",
5780
- other: "{{count}} years"
5781
- },
5782
- overXYears: {
5783
- one: "over 1 year",
5784
- other: "over {{count}} years"
5785
- },
5786
- almostXYears: {
5787
- one: "almost 1 year",
5788
- other: "almost {{count}} years"
5789
- }
5790
- };
5791
- var formatDistance = (token, count, options) => {
5792
- let result;
5793
- const tokenValue = formatDistanceLocale[token];
5794
- if (typeof tokenValue === "string") {
5795
- result = tokenValue;
5796
- } else if (count === 1) {
5797
- result = tokenValue.one;
5798
- } else {
5799
- result = tokenValue.other.replace("{{count}}", count.toString());
5800
- }
5801
- if (options?.addSuffix) {
5802
- if (options.comparison && options.comparison > 0) {
5803
- return "in " + result;
5804
- } else {
5805
- return result + " ago";
5806
- }
5807
- }
5808
- return result;
5809
- };
5810
-
5811
- // node_modules/date-fns/locale/_lib/buildFormatLongFn.js
5812
- function buildFormatLongFn(args) {
5813
- return (options = {}) => {
5814
- const width = options.width ? String(options.width) : args.defaultWidth;
5815
- const format2 = args.formats[width] || args.formats[args.defaultWidth];
5816
- return format2;
5817
- };
5818
- }
5819
-
5820
- // node_modules/date-fns/locale/en-US/_lib/formatLong.js
5821
- var dateFormats = {
5822
- full: "EEEE, MMMM do, y",
5823
- long: "MMMM do, y",
5824
- medium: "MMM d, y",
5825
- short: "MM/dd/yyyy"
5826
- };
5827
- var timeFormats = {
5828
- full: "h:mm:ss a zzzz",
5829
- long: "h:mm:ss a z",
5830
- medium: "h:mm:ss a",
5831
- short: "h:mm a"
5832
- };
5833
- var dateTimeFormats = {
5834
- full: "{{date}} 'at' {{time}}",
5835
- long: "{{date}} 'at' {{time}}",
5836
- medium: "{{date}}, {{time}}",
5837
- short: "{{date}}, {{time}}"
5838
- };
5839
- var formatLong = {
5840
- date: buildFormatLongFn({
5841
- formats: dateFormats,
5842
- defaultWidth: "full"
5843
- }),
5844
- time: buildFormatLongFn({
5845
- formats: timeFormats,
5846
- defaultWidth: "full"
5847
- }),
5848
- dateTime: buildFormatLongFn({
5849
- formats: dateTimeFormats,
5850
- defaultWidth: "full"
5851
- })
5852
- };
5853
-
5854
- // node_modules/date-fns/locale/en-US/_lib/formatRelative.js
5855
- var formatRelativeLocale = {
5856
- lastWeek: "'last' eeee 'at' p",
5857
- yesterday: "'yesterday at' p",
5858
- today: "'today at' p",
5859
- tomorrow: "'tomorrow at' p",
5860
- nextWeek: "eeee 'at' p",
5861
- other: "P"
5862
- };
5863
- var formatRelative = (token, _date, _baseDate, _options) => formatRelativeLocale[token];
5864
-
5865
- // node_modules/date-fns/locale/_lib/buildLocalizeFn.js
5866
- function buildLocalizeFn(args) {
5867
- return (value, options) => {
5868
- const context = options?.context ? String(options.context) : "standalone";
5869
- let valuesArray;
5870
- if (context === "formatting" && args.formattingValues) {
5871
- const defaultWidth = args.defaultFormattingWidth || args.defaultWidth;
5872
- const width = options?.width ? String(options.width) : defaultWidth;
5873
- valuesArray = args.formattingValues[width] || args.formattingValues[defaultWidth];
5874
- } else {
5875
- const defaultWidth = args.defaultWidth;
5876
- const width = options?.width ? String(options.width) : args.defaultWidth;
5877
- valuesArray = args.values[width] || args.values[defaultWidth];
5878
- }
5879
- const index = args.argumentCallback ? args.argumentCallback(value) : value;
5880
- return valuesArray[index];
5881
- };
5882
- }
5883
-
5884
- // node_modules/date-fns/locale/en-US/_lib/localize.js
5885
- var eraValues = {
5886
- narrow: ["B", "A"],
5887
- abbreviated: ["BC", "AD"],
5888
- wide: ["Before Christ", "Anno Domini"]
5889
- };
5890
- var quarterValues = {
5891
- narrow: ["1", "2", "3", "4"],
5892
- abbreviated: ["Q1", "Q2", "Q3", "Q4"],
5893
- wide: ["1st quarter", "2nd quarter", "3rd quarter", "4th quarter"]
5894
- };
5895
- var monthValues = {
5896
- narrow: ["J", "F", "M", "A", "M", "J", "J", "A", "S", "O", "N", "D"],
5897
- abbreviated: [
5898
- "Jan",
5899
- "Feb",
5900
- "Mar",
5901
- "Apr",
5902
- "May",
5903
- "Jun",
5904
- "Jul",
5905
- "Aug",
5906
- "Sep",
5907
- "Oct",
5908
- "Nov",
5909
- "Dec"
5910
- ],
5911
- wide: [
5912
- "January",
5913
- "February",
5914
- "March",
5915
- "April",
5916
- "May",
5917
- "June",
5918
- "July",
5919
- "August",
5920
- "September",
5921
- "October",
5922
- "November",
5923
- "December"
5924
- ]
5925
- };
5926
- var dayValues = {
5927
- narrow: ["S", "M", "T", "W", "T", "F", "S"],
5928
- short: ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"],
5929
- abbreviated: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"],
5930
- wide: [
5931
- "Sunday",
5932
- "Monday",
5933
- "Tuesday",
5934
- "Wednesday",
5935
- "Thursday",
5936
- "Friday",
5937
- "Saturday"
5938
- ]
5939
- };
5940
- var dayPeriodValues = {
5941
- narrow: {
5942
- am: "a",
5943
- pm: "p",
5944
- midnight: "mi",
5945
- noon: "n",
5946
- morning: "morning",
5947
- afternoon: "afternoon",
5948
- evening: "evening",
5949
- night: "night"
5950
- },
5951
- abbreviated: {
5952
- am: "AM",
5953
- pm: "PM",
5954
- midnight: "midnight",
5955
- noon: "noon",
5956
- morning: "morning",
5957
- afternoon: "afternoon",
5958
- evening: "evening",
5959
- night: "night"
5960
- },
5961
- wide: {
5962
- am: "a.m.",
5963
- pm: "p.m.",
5964
- midnight: "midnight",
5965
- noon: "noon",
5966
- morning: "morning",
5967
- afternoon: "afternoon",
5968
- evening: "evening",
5969
- night: "night"
5970
- }
5971
- };
5972
- var formattingDayPeriodValues = {
5973
- narrow: {
5974
- am: "a",
5975
- pm: "p",
5976
- midnight: "mi",
5977
- noon: "n",
5978
- morning: "in the morning",
5979
- afternoon: "in the afternoon",
5980
- evening: "in the evening",
5981
- night: "at night"
5982
- },
5983
- abbreviated: {
5984
- am: "AM",
5985
- pm: "PM",
5986
- midnight: "midnight",
5987
- noon: "noon",
5988
- morning: "in the morning",
5989
- afternoon: "in the afternoon",
5990
- evening: "in the evening",
5991
- night: "at night"
5992
- },
5993
- wide: {
5994
- am: "a.m.",
5995
- pm: "p.m.",
5996
- midnight: "midnight",
5997
- noon: "noon",
5998
- morning: "in the morning",
5999
- afternoon: "in the afternoon",
6000
- evening: "in the evening",
6001
- night: "at night"
6002
- }
6003
- };
6004
- var ordinalNumber = (dirtyNumber, _options) => {
6005
- const number = Number(dirtyNumber);
6006
- const rem100 = number % 100;
6007
- if (rem100 > 20 || rem100 < 10) {
6008
- switch (rem100 % 10) {
6009
- case 1:
6010
- return number + "st";
6011
- case 2:
6012
- return number + "nd";
6013
- case 3:
6014
- return number + "rd";
6015
- }
6016
- }
6017
- return number + "th";
6018
- };
6019
- var localize = {
6020
- ordinalNumber,
6021
- era: buildLocalizeFn({
6022
- values: eraValues,
6023
- defaultWidth: "wide"
6024
- }),
6025
- quarter: buildLocalizeFn({
6026
- values: quarterValues,
6027
- defaultWidth: "wide",
6028
- argumentCallback: (quarter) => quarter - 1
6029
- }),
6030
- month: buildLocalizeFn({
6031
- values: monthValues,
6032
- defaultWidth: "wide"
6033
- }),
6034
- day: buildLocalizeFn({
6035
- values: dayValues,
6036
- defaultWidth: "wide"
6037
- }),
6038
- dayPeriod: buildLocalizeFn({
6039
- values: dayPeriodValues,
6040
- defaultWidth: "wide",
6041
- formattingValues: formattingDayPeriodValues,
6042
- defaultFormattingWidth: "wide"
6043
- })
6044
- };
6045
-
6046
- // node_modules/date-fns/locale/_lib/buildMatchFn.js
6047
- function buildMatchFn(args) {
6048
- return (string, options = {}) => {
6049
- const width = options.width;
6050
- const matchPattern = width && args.matchPatterns[width] || args.matchPatterns[args.defaultMatchWidth];
6051
- const matchResult = string.match(matchPattern);
6052
- if (!matchResult) {
6053
- return null;
6054
- }
6055
- const matchedString = matchResult[0];
6056
- const parsePatterns = width && args.parsePatterns[width] || args.parsePatterns[args.defaultParseWidth];
6057
- const key = Array.isArray(parsePatterns) ? findIndex(parsePatterns, (pattern) => pattern.test(matchedString)) : (
6058
- // [TODO] -- I challenge you to fix the type
6059
- findKey(parsePatterns, (pattern) => pattern.test(matchedString))
6060
- );
6061
- let value;
6062
- value = args.valueCallback ? args.valueCallback(key) : key;
6063
- value = options.valueCallback ? (
6064
- // [TODO] -- I challenge you to fix the type
6065
- options.valueCallback(value)
6066
- ) : value;
6067
- const rest = string.slice(matchedString.length);
6068
- return { value, rest };
6069
- };
6070
- }
6071
- function findKey(object, predicate) {
6072
- for (const key in object) {
6073
- if (Object.prototype.hasOwnProperty.call(object, key) && predicate(object[key])) {
6074
- return key;
6075
- }
6076
- }
6077
- return void 0;
6078
- }
6079
- function findIndex(array, predicate) {
6080
- for (let key = 0; key < array.length; key++) {
6081
- if (predicate(array[key])) {
6082
- return key;
6083
- }
6084
- }
6085
- return void 0;
6086
- }
6087
-
6088
- // node_modules/date-fns/locale/_lib/buildMatchPatternFn.js
6089
- function buildMatchPatternFn(args) {
6090
- return (string, options = {}) => {
6091
- const matchResult = string.match(args.matchPattern);
6092
- if (!matchResult) return null;
6093
- const matchedString = matchResult[0];
6094
- const parseResult = string.match(args.parsePattern);
6095
- if (!parseResult) return null;
6096
- let value = args.valueCallback ? args.valueCallback(parseResult[0]) : parseResult[0];
6097
- value = options.valueCallback ? options.valueCallback(value) : value;
6098
- const rest = string.slice(matchedString.length);
6099
- return { value, rest };
6100
- };
6101
- }
6102
-
6103
- // node_modules/date-fns/locale/en-US/_lib/match.js
6104
- var matchOrdinalNumberPattern = /^(\d+)(th|st|nd|rd)?/i;
6105
- var parseOrdinalNumberPattern = /\d+/i;
6106
- var matchEraPatterns = {
6107
- narrow: /^(b|a)/i,
6108
- abbreviated: /^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,
6109
- wide: /^(before christ|before common era|anno domini|common era)/i
6110
- };
6111
- var parseEraPatterns = {
6112
- any: [/^b/i, /^(a|c)/i]
6113
- };
6114
- var matchQuarterPatterns = {
6115
- narrow: /^[1234]/i,
6116
- abbreviated: /^q[1234]/i,
6117
- wide: /^[1234](th|st|nd|rd)? quarter/i
6118
- };
6119
- var parseQuarterPatterns = {
6120
- any: [/1/i, /2/i, /3/i, /4/i]
6121
- };
6122
- var matchMonthPatterns = {
6123
- narrow: /^[jfmasond]/i,
6124
- abbreviated: /^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,
6125
- wide: /^(january|february|march|april|may|june|july|august|september|october|november|december)/i
6126
- };
6127
- var parseMonthPatterns = {
6128
- narrow: [
6129
- /^j/i,
6130
- /^f/i,
6131
- /^m/i,
6132
- /^a/i,
6133
- /^m/i,
6134
- /^j/i,
6135
- /^j/i,
6136
- /^a/i,
6137
- /^s/i,
6138
- /^o/i,
6139
- /^n/i,
6140
- /^d/i
6141
- ],
6142
- any: [
6143
- /^ja/i,
6144
- /^f/i,
6145
- /^mar/i,
6146
- /^ap/i,
6147
- /^may/i,
6148
- /^jun/i,
6149
- /^jul/i,
6150
- /^au/i,
6151
- /^s/i,
6152
- /^o/i,
6153
- /^n/i,
6154
- /^d/i
6155
- ]
6156
- };
6157
- var matchDayPatterns = {
6158
- narrow: /^[smtwf]/i,
6159
- short: /^(su|mo|tu|we|th|fr|sa)/i,
6160
- abbreviated: /^(sun|mon|tue|wed|thu|fri|sat)/i,
6161
- wide: /^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i
6162
- };
6163
- var parseDayPatterns = {
6164
- narrow: [/^s/i, /^m/i, /^t/i, /^w/i, /^t/i, /^f/i, /^s/i],
6165
- any: [/^su/i, /^m/i, /^tu/i, /^w/i, /^th/i, /^f/i, /^sa/i]
6166
- };
6167
- var matchDayPeriodPatterns = {
6168
- narrow: /^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,
6169
- any: /^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i
6170
- };
6171
- var parseDayPeriodPatterns = {
6172
- any: {
6173
- am: /^a/i,
6174
- pm: /^p/i,
6175
- midnight: /^mi/i,
6176
- noon: /^no/i,
6177
- morning: /morning/i,
6178
- afternoon: /afternoon/i,
6179
- evening: /evening/i,
6180
- night: /night/i
6181
- }
6182
- };
6183
- var match = {
6184
- ordinalNumber: buildMatchPatternFn({
6185
- matchPattern: matchOrdinalNumberPattern,
6186
- parsePattern: parseOrdinalNumberPattern,
6187
- valueCallback: (value) => parseInt(value, 10)
6188
- }),
6189
- era: buildMatchFn({
6190
- matchPatterns: matchEraPatterns,
6191
- defaultMatchWidth: "wide",
6192
- parsePatterns: parseEraPatterns,
6193
- defaultParseWidth: "any"
6194
- }),
6195
- quarter: buildMatchFn({
6196
- matchPatterns: matchQuarterPatterns,
6197
- defaultMatchWidth: "wide",
6198
- parsePatterns: parseQuarterPatterns,
6199
- defaultParseWidth: "any",
6200
- valueCallback: (index) => index + 1
6201
- }),
6202
- month: buildMatchFn({
6203
- matchPatterns: matchMonthPatterns,
6204
- defaultMatchWidth: "wide",
6205
- parsePatterns: parseMonthPatterns,
6206
- defaultParseWidth: "any"
6207
- }),
6208
- day: buildMatchFn({
6209
- matchPatterns: matchDayPatterns,
6210
- defaultMatchWidth: "wide",
6211
- parsePatterns: parseDayPatterns,
6212
- defaultParseWidth: "any"
6213
- }),
6214
- dayPeriod: buildMatchFn({
6215
- matchPatterns: matchDayPeriodPatterns,
6216
- defaultMatchWidth: "any",
6217
- parsePatterns: parseDayPeriodPatterns,
6218
- defaultParseWidth: "any"
6219
- })
6220
- };
6221
-
6222
- // node_modules/date-fns/locale/en-US.js
6223
- var enUS = {
6224
- code: "en-US",
6225
- formatDistance,
6226
- formatLong,
6227
- formatRelative,
6228
- localize,
6229
- match,
6230
- options: {
6231
- weekStartsOn: 0,
6232
- firstWeekContainsDate: 1
6233
- }
6234
- };
6235
-
6236
- // node_modules/date-fns/getDayOfYear.js
6237
- function getDayOfYear(date, options) {
6238
- const _date = toDate(date, options?.in);
6239
- const diff = differenceInCalendarDays(_date, startOfYear(_date));
6240
- const dayOfYear = diff + 1;
6241
- return dayOfYear;
6242
- }
6243
-
6244
- // node_modules/date-fns/getISOWeek.js
6245
- function getISOWeek(date, options) {
6246
- const _date = toDate(date, options?.in);
6247
- const diff = +startOfISOWeek(_date) - +startOfISOWeekYear(_date);
6248
- return Math.round(diff / millisecondsInWeek) + 1;
6249
- }
6250
-
6251
- // node_modules/date-fns/getWeekYear.js
6252
- function getWeekYear(date, options) {
6253
- const _date = toDate(date, options?.in);
6254
- const year = _date.getFullYear();
6255
- const defaultOptions2 = getDefaultOptions();
6256
- const firstWeekContainsDate = options?.firstWeekContainsDate ?? options?.locale?.options?.firstWeekContainsDate ?? defaultOptions2.firstWeekContainsDate ?? defaultOptions2.locale?.options?.firstWeekContainsDate ?? 1;
6257
- const firstWeekOfNextYear = constructFrom(options?.in || date, 0);
6258
- firstWeekOfNextYear.setFullYear(year + 1, 0, firstWeekContainsDate);
6259
- firstWeekOfNextYear.setHours(0, 0, 0, 0);
6260
- const startOfNextYear = startOfWeek2(firstWeekOfNextYear, options);
6261
- const firstWeekOfThisYear = constructFrom(options?.in || date, 0);
6262
- firstWeekOfThisYear.setFullYear(year, 0, firstWeekContainsDate);
6263
- firstWeekOfThisYear.setHours(0, 0, 0, 0);
6264
- const startOfThisYear = startOfWeek2(firstWeekOfThisYear, options);
6265
- if (+_date >= +startOfNextYear) {
6266
- return year + 1;
6267
- } else if (+_date >= +startOfThisYear) {
6268
- return year;
6269
- } else {
6270
- return year - 1;
6271
- }
6272
- }
6273
-
6274
- // node_modules/date-fns/startOfWeekYear.js
6275
- function startOfWeekYear(date, options) {
6276
- const defaultOptions2 = getDefaultOptions();
6277
- const firstWeekContainsDate = options?.firstWeekContainsDate ?? options?.locale?.options?.firstWeekContainsDate ?? defaultOptions2.firstWeekContainsDate ?? defaultOptions2.locale?.options?.firstWeekContainsDate ?? 1;
6278
- const year = getWeekYear(date, options);
6279
- const firstWeek = constructFrom(options?.in || date, 0);
6280
- firstWeek.setFullYear(year, 0, firstWeekContainsDate);
6281
- firstWeek.setHours(0, 0, 0, 0);
6282
- const _date = startOfWeek2(firstWeek, options);
6283
- return _date;
6284
- }
6285
-
6286
- // node_modules/date-fns/getWeek.js
6287
- function getWeek(date, options) {
6288
- const _date = toDate(date, options?.in);
6289
- const diff = +startOfWeek2(_date, options) - +startOfWeekYear(_date, options);
6290
- return Math.round(diff / millisecondsInWeek) + 1;
6291
- }
6292
-
6293
- // node_modules/date-fns/_lib/addLeadingZeros.js
6294
- function addLeadingZeros(number, targetLength) {
6295
- const sign = number < 0 ? "-" : "";
6296
- const output = Math.abs(number).toString().padStart(targetLength, "0");
6297
- return sign + output;
6298
- }
6299
-
6300
- // node_modules/date-fns/_lib/format/lightFormatters.js
6301
- var lightFormatters = {
6302
- // Year
6303
- y(date, token) {
6304
- const signedYear = date.getFullYear();
6305
- const year = signedYear > 0 ? signedYear : 1 - signedYear;
6306
- return addLeadingZeros(token === "yy" ? year % 100 : year, token.length);
6307
- },
6308
- // Month
6309
- M(date, token) {
6310
- const month = date.getMonth();
6311
- return token === "M" ? String(month + 1) : addLeadingZeros(month + 1, 2);
6312
- },
6313
- // Day of the month
6314
- d(date, token) {
6315
- return addLeadingZeros(date.getDate(), token.length);
6316
- },
6317
- // AM or PM
6318
- a(date, token) {
6319
- const dayPeriodEnumValue = date.getHours() / 12 >= 1 ? "pm" : "am";
6320
- switch (token) {
6321
- case "a":
6322
- case "aa":
6323
- return dayPeriodEnumValue.toUpperCase();
6324
- case "aaa":
6325
- return dayPeriodEnumValue;
6326
- case "aaaaa":
6327
- return dayPeriodEnumValue[0];
6328
- case "aaaa":
6329
- default:
6330
- return dayPeriodEnumValue === "am" ? "a.m." : "p.m.";
6331
- }
6332
- },
6333
- // Hour [1-12]
6334
- h(date, token) {
6335
- return addLeadingZeros(date.getHours() % 12 || 12, token.length);
6336
- },
6337
- // Hour [0-23]
6338
- H(date, token) {
6339
- return addLeadingZeros(date.getHours(), token.length);
6340
- },
6341
- // Minute
6342
- m(date, token) {
6343
- return addLeadingZeros(date.getMinutes(), token.length);
6344
- },
6345
- // Second
6346
- s(date, token) {
6347
- return addLeadingZeros(date.getSeconds(), token.length);
6348
- },
6349
- // Fraction of second
6350
- S(date, token) {
6351
- const numberOfDigits = token.length;
6352
- const milliseconds = date.getMilliseconds();
6353
- const fractionalSeconds = Math.trunc(
6354
- milliseconds * Math.pow(10, numberOfDigits - 3)
6355
- );
6356
- return addLeadingZeros(fractionalSeconds, token.length);
6357
- }
6358
- };
6359
-
6360
- // node_modules/date-fns/_lib/format/formatters.js
6361
- var dayPeriodEnum = {
6362
- midnight: "midnight",
6363
- noon: "noon",
6364
- morning: "morning",
6365
- afternoon: "afternoon",
6366
- evening: "evening",
6367
- night: "night"
6368
- };
6369
- var formatters = {
6370
- // Era
6371
- G: function(date, token, localize2) {
6372
- const era = date.getFullYear() > 0 ? 1 : 0;
6373
- switch (token) {
6374
- // AD, BC
6375
- case "G":
6376
- case "GG":
6377
- case "GGG":
6378
- return localize2.era(era, { width: "abbreviated" });
6379
- // A, B
6380
- case "GGGGG":
6381
- return localize2.era(era, { width: "narrow" });
6382
- // Anno Domini, Before Christ
6383
- case "GGGG":
6384
- default:
6385
- return localize2.era(era, { width: "wide" });
6386
- }
6387
- },
6388
- // Year
6389
- y: function(date, token, localize2) {
6390
- if (token === "yo") {
6391
- const signedYear = date.getFullYear();
6392
- const year = signedYear > 0 ? signedYear : 1 - signedYear;
6393
- return localize2.ordinalNumber(year, { unit: "year" });
6394
- }
6395
- return lightFormatters.y(date, token);
6396
- },
6397
- // Local week-numbering year
6398
- Y: function(date, token, localize2, options) {
6399
- const signedWeekYear = getWeekYear(date, options);
6400
- const weekYear = signedWeekYear > 0 ? signedWeekYear : 1 - signedWeekYear;
6401
- if (token === "YY") {
6402
- const twoDigitYear = weekYear % 100;
6403
- return addLeadingZeros(twoDigitYear, 2);
6404
- }
6405
- if (token === "Yo") {
6406
- return localize2.ordinalNumber(weekYear, { unit: "year" });
6407
- }
6408
- return addLeadingZeros(weekYear, token.length);
6409
- },
6410
- // ISO week-numbering year
6411
- R: function(date, token) {
6412
- const isoWeekYear = getISOWeekYear(date);
6413
- return addLeadingZeros(isoWeekYear, token.length);
6414
- },
6415
- // Extended year. This is a single number designating the year of this calendar system.
6416
- // The main difference between `y` and `u` localizers are B.C. years:
6417
- // | Year | `y` | `u` |
6418
- // |------|-----|-----|
6419
- // | AC 1 | 1 | 1 |
6420
- // | BC 1 | 1 | 0 |
6421
- // | BC 2 | 2 | -1 |
6422
- // Also `yy` always returns the last two digits of a year,
6423
- // while `uu` pads single digit years to 2 characters and returns other years unchanged.
6424
- u: function(date, token) {
6425
- const year = date.getFullYear();
6426
- return addLeadingZeros(year, token.length);
6427
- },
6428
- // Quarter
6429
- Q: function(date, token, localize2) {
6430
- const quarter = Math.ceil((date.getMonth() + 1) / 3);
6431
- switch (token) {
6432
- // 1, 2, 3, 4
6433
- case "Q":
6434
- return String(quarter);
6435
- // 01, 02, 03, 04
6436
- case "QQ":
6437
- return addLeadingZeros(quarter, 2);
6438
- // 1st, 2nd, 3rd, 4th
6439
- case "Qo":
6440
- return localize2.ordinalNumber(quarter, { unit: "quarter" });
6441
- // Q1, Q2, Q3, Q4
6442
- case "QQQ":
6443
- return localize2.quarter(quarter, {
6444
- width: "abbreviated",
6445
- context: "formatting"
6446
- });
6447
- // 1, 2, 3, 4 (narrow quarter; could be not numerical)
6448
- case "QQQQQ":
6449
- return localize2.quarter(quarter, {
6450
- width: "narrow",
6451
- context: "formatting"
6452
- });
6453
- // 1st quarter, 2nd quarter, ...
6454
- case "QQQQ":
6455
- default:
6456
- return localize2.quarter(quarter, {
6457
- width: "wide",
6458
- context: "formatting"
6459
- });
6460
- }
6461
- },
6462
- // Stand-alone quarter
6463
- q: function(date, token, localize2) {
6464
- const quarter = Math.ceil((date.getMonth() + 1) / 3);
6465
- switch (token) {
6466
- // 1, 2, 3, 4
6467
- case "q":
6468
- return String(quarter);
6469
- // 01, 02, 03, 04
6470
- case "qq":
6471
- return addLeadingZeros(quarter, 2);
6472
- // 1st, 2nd, 3rd, 4th
6473
- case "qo":
6474
- return localize2.ordinalNumber(quarter, { unit: "quarter" });
6475
- // Q1, Q2, Q3, Q4
6476
- case "qqq":
6477
- return localize2.quarter(quarter, {
6478
- width: "abbreviated",
6479
- context: "standalone"
6480
- });
6481
- // 1, 2, 3, 4 (narrow quarter; could be not numerical)
6482
- case "qqqqq":
6483
- return localize2.quarter(quarter, {
6484
- width: "narrow",
6485
- context: "standalone"
6486
- });
6487
- // 1st quarter, 2nd quarter, ...
6488
- case "qqqq":
6489
- default:
6490
- return localize2.quarter(quarter, {
6491
- width: "wide",
6492
- context: "standalone"
6493
- });
6494
- }
6495
- },
6496
- // Month
6497
- M: function(date, token, localize2) {
6498
- const month = date.getMonth();
6499
- switch (token) {
6500
- case "M":
6501
- case "MM":
6502
- return lightFormatters.M(date, token);
6503
- // 1st, 2nd, ..., 12th
6504
- case "Mo":
6505
- return localize2.ordinalNumber(month + 1, { unit: "month" });
6506
- // Jan, Feb, ..., Dec
6507
- case "MMM":
6508
- return localize2.month(month, {
6509
- width: "abbreviated",
6510
- context: "formatting"
6511
- });
6512
- // J, F, ..., D
6513
- case "MMMMM":
6514
- return localize2.month(month, {
6515
- width: "narrow",
6516
- context: "formatting"
6517
- });
6518
- // January, February, ..., December
6519
- case "MMMM":
6520
- default:
6521
- return localize2.month(month, { width: "wide", context: "formatting" });
6522
- }
6523
- },
6524
- // Stand-alone month
6525
- L: function(date, token, localize2) {
6526
- const month = date.getMonth();
6527
- switch (token) {
6528
- // 1, 2, ..., 12
6529
- case "L":
6530
- return String(month + 1);
6531
- // 01, 02, ..., 12
6532
- case "LL":
6533
- return addLeadingZeros(month + 1, 2);
6534
- // 1st, 2nd, ..., 12th
6535
- case "Lo":
6536
- return localize2.ordinalNumber(month + 1, { unit: "month" });
6537
- // Jan, Feb, ..., Dec
6538
- case "LLL":
6539
- return localize2.month(month, {
6540
- width: "abbreviated",
6541
- context: "standalone"
6542
- });
6543
- // J, F, ..., D
6544
- case "LLLLL":
6545
- return localize2.month(month, {
6546
- width: "narrow",
6547
- context: "standalone"
6548
- });
6549
- // January, February, ..., December
6550
- case "LLLL":
6551
- default:
6552
- return localize2.month(month, { width: "wide", context: "standalone" });
6553
- }
6554
- },
6555
- // Local week of year
6556
- w: function(date, token, localize2, options) {
6557
- const week = getWeek(date, options);
6558
- if (token === "wo") {
6559
- return localize2.ordinalNumber(week, { unit: "week" });
6560
- }
6561
- return addLeadingZeros(week, token.length);
6562
- },
6563
- // ISO week of year
6564
- I: function(date, token, localize2) {
6565
- const isoWeek = getISOWeek(date);
6566
- if (token === "Io") {
6567
- return localize2.ordinalNumber(isoWeek, { unit: "week" });
6568
- }
6569
- return addLeadingZeros(isoWeek, token.length);
6570
- },
6571
- // Day of the month
6572
- d: function(date, token, localize2) {
6573
- if (token === "do") {
6574
- return localize2.ordinalNumber(date.getDate(), { unit: "date" });
6575
- }
6576
- return lightFormatters.d(date, token);
6577
- },
6578
- // Day of year
6579
- D: function(date, token, localize2) {
6580
- const dayOfYear = getDayOfYear(date);
6581
- if (token === "Do") {
6582
- return localize2.ordinalNumber(dayOfYear, { unit: "dayOfYear" });
6583
- }
6584
- return addLeadingZeros(dayOfYear, token.length);
6585
- },
6586
- // Day of week
6587
- E: function(date, token, localize2) {
6588
- const dayOfWeek = date.getDay();
6589
- switch (token) {
6590
- // Tue
6591
- case "E":
6592
- case "EE":
6593
- case "EEE":
6594
- return localize2.day(dayOfWeek, {
6595
- width: "abbreviated",
6596
- context: "formatting"
6597
- });
6598
- // T
6599
- case "EEEEE":
6600
- return localize2.day(dayOfWeek, {
6601
- width: "narrow",
6602
- context: "formatting"
6603
- });
6604
- // Tu
6605
- case "EEEEEE":
6606
- return localize2.day(dayOfWeek, {
6607
- width: "short",
6608
- context: "formatting"
6609
- });
6610
- // Tuesday
6611
- case "EEEE":
6612
- default:
6613
- return localize2.day(dayOfWeek, {
6614
- width: "wide",
6615
- context: "formatting"
6616
- });
6617
- }
6618
- },
6619
- // Local day of week
6620
- e: function(date, token, localize2, options) {
6621
- const dayOfWeek = date.getDay();
6622
- const localDayOfWeek = (dayOfWeek - options.weekStartsOn + 8) % 7 || 7;
6623
- switch (token) {
6624
- // Numerical value (Nth day of week with current locale or weekStartsOn)
6625
- case "e":
6626
- return String(localDayOfWeek);
6627
- // Padded numerical value
6628
- case "ee":
6629
- return addLeadingZeros(localDayOfWeek, 2);
6630
- // 1st, 2nd, ..., 7th
6631
- case "eo":
6632
- return localize2.ordinalNumber(localDayOfWeek, { unit: "day" });
6633
- case "eee":
6634
- return localize2.day(dayOfWeek, {
6635
- width: "abbreviated",
6636
- context: "formatting"
6637
- });
6638
- // T
6639
- case "eeeee":
6640
- return localize2.day(dayOfWeek, {
6641
- width: "narrow",
6642
- context: "formatting"
6643
- });
6644
- // Tu
6645
- case "eeeeee":
6646
- return localize2.day(dayOfWeek, {
6647
- width: "short",
6648
- context: "formatting"
6649
- });
6650
- // Tuesday
6651
- case "eeee":
6652
- default:
6653
- return localize2.day(dayOfWeek, {
6654
- width: "wide",
6655
- context: "formatting"
6656
- });
6657
- }
6658
- },
6659
- // Stand-alone local day of week
6660
- c: function(date, token, localize2, options) {
6661
- const dayOfWeek = date.getDay();
6662
- const localDayOfWeek = (dayOfWeek - options.weekStartsOn + 8) % 7 || 7;
6663
- switch (token) {
6664
- // Numerical value (same as in `e`)
6665
- case "c":
6666
- return String(localDayOfWeek);
6667
- // Padded numerical value
6668
- case "cc":
6669
- return addLeadingZeros(localDayOfWeek, token.length);
6670
- // 1st, 2nd, ..., 7th
6671
- case "co":
6672
- return localize2.ordinalNumber(localDayOfWeek, { unit: "day" });
6673
- case "ccc":
6674
- return localize2.day(dayOfWeek, {
6675
- width: "abbreviated",
6676
- context: "standalone"
6677
- });
6678
- // T
6679
- case "ccccc":
6680
- return localize2.day(dayOfWeek, {
6681
- width: "narrow",
6682
- context: "standalone"
6683
- });
6684
- // Tu
6685
- case "cccccc":
6686
- return localize2.day(dayOfWeek, {
6687
- width: "short",
6688
- context: "standalone"
6689
- });
6690
- // Tuesday
6691
- case "cccc":
6692
- default:
6693
- return localize2.day(dayOfWeek, {
6694
- width: "wide",
6695
- context: "standalone"
6696
- });
6697
- }
6698
- },
6699
- // ISO day of week
6700
- i: function(date, token, localize2) {
6701
- const dayOfWeek = date.getDay();
6702
- const isoDayOfWeek = dayOfWeek === 0 ? 7 : dayOfWeek;
6703
- switch (token) {
6704
- // 2
6705
- case "i":
6706
- return String(isoDayOfWeek);
6707
- // 02
6708
- case "ii":
6709
- return addLeadingZeros(isoDayOfWeek, token.length);
6710
- // 2nd
6711
- case "io":
6712
- return localize2.ordinalNumber(isoDayOfWeek, { unit: "day" });
6713
- // Tue
6714
- case "iii":
6715
- return localize2.day(dayOfWeek, {
6716
- width: "abbreviated",
6717
- context: "formatting"
6718
- });
6719
- // T
6720
- case "iiiii":
6721
- return localize2.day(dayOfWeek, {
6722
- width: "narrow",
6723
- context: "formatting"
6724
- });
6725
- // Tu
6726
- case "iiiiii":
6727
- return localize2.day(dayOfWeek, {
6728
- width: "short",
6729
- context: "formatting"
6730
- });
6731
- // Tuesday
6732
- case "iiii":
6733
- default:
6734
- return localize2.day(dayOfWeek, {
6735
- width: "wide",
6736
- context: "formatting"
6737
- });
6738
- }
6739
- },
6740
- // AM or PM
6741
- a: function(date, token, localize2) {
6742
- const hours = date.getHours();
6743
- const dayPeriodEnumValue = hours / 12 >= 1 ? "pm" : "am";
6744
- switch (token) {
6745
- case "a":
6746
- case "aa":
6747
- return localize2.dayPeriod(dayPeriodEnumValue, {
6748
- width: "abbreviated",
6749
- context: "formatting"
6750
- });
6751
- case "aaa":
6752
- return localize2.dayPeriod(dayPeriodEnumValue, {
6753
- width: "abbreviated",
6754
- context: "formatting"
6755
- }).toLowerCase();
6756
- case "aaaaa":
6757
- return localize2.dayPeriod(dayPeriodEnumValue, {
6758
- width: "narrow",
6759
- context: "formatting"
6760
- });
6761
- case "aaaa":
6762
- default:
6763
- return localize2.dayPeriod(dayPeriodEnumValue, {
6764
- width: "wide",
6765
- context: "formatting"
6766
- });
6767
- }
6768
- },
6769
- // AM, PM, midnight, noon
6770
- b: function(date, token, localize2) {
6771
- const hours = date.getHours();
6772
- let dayPeriodEnumValue;
6773
- if (hours === 12) {
6774
- dayPeriodEnumValue = dayPeriodEnum.noon;
6775
- } else if (hours === 0) {
6776
- dayPeriodEnumValue = dayPeriodEnum.midnight;
6777
- } else {
6778
- dayPeriodEnumValue = hours / 12 >= 1 ? "pm" : "am";
6779
- }
6780
- switch (token) {
6781
- case "b":
6782
- case "bb":
6783
- return localize2.dayPeriod(dayPeriodEnumValue, {
6784
- width: "abbreviated",
6785
- context: "formatting"
6786
- });
6787
- case "bbb":
6788
- return localize2.dayPeriod(dayPeriodEnumValue, {
6789
- width: "abbreviated",
6790
- context: "formatting"
6791
- }).toLowerCase();
6792
- case "bbbbb":
6793
- return localize2.dayPeriod(dayPeriodEnumValue, {
6794
- width: "narrow",
6795
- context: "formatting"
6796
- });
6797
- case "bbbb":
6798
- default:
6799
- return localize2.dayPeriod(dayPeriodEnumValue, {
6800
- width: "wide",
6801
- context: "formatting"
6802
- });
6803
- }
6804
- },
6805
- // in the morning, in the afternoon, in the evening, at night
6806
- B: function(date, token, localize2) {
6807
- const hours = date.getHours();
6808
- let dayPeriodEnumValue;
6809
- if (hours >= 17) {
6810
- dayPeriodEnumValue = dayPeriodEnum.evening;
6811
- } else if (hours >= 12) {
6812
- dayPeriodEnumValue = dayPeriodEnum.afternoon;
6813
- } else if (hours >= 4) {
6814
- dayPeriodEnumValue = dayPeriodEnum.morning;
6815
- } else {
6816
- dayPeriodEnumValue = dayPeriodEnum.night;
6817
- }
6818
- switch (token) {
6819
- case "B":
6820
- case "BB":
6821
- case "BBB":
6822
- return localize2.dayPeriod(dayPeriodEnumValue, {
6823
- width: "abbreviated",
6824
- context: "formatting"
6825
- });
6826
- case "BBBBB":
6827
- return localize2.dayPeriod(dayPeriodEnumValue, {
6828
- width: "narrow",
6829
- context: "formatting"
6830
- });
6831
- case "BBBB":
6832
- default:
6833
- return localize2.dayPeriod(dayPeriodEnumValue, {
6834
- width: "wide",
6835
- context: "formatting"
6836
- });
6837
- }
6838
- },
6839
- // Hour [1-12]
6840
- h: function(date, token, localize2) {
6841
- if (token === "ho") {
6842
- let hours = date.getHours() % 12;
6843
- if (hours === 0) hours = 12;
6844
- return localize2.ordinalNumber(hours, { unit: "hour" });
6845
- }
6846
- return lightFormatters.h(date, token);
6847
- },
6848
- // Hour [0-23]
6849
- H: function(date, token, localize2) {
6850
- if (token === "Ho") {
6851
- return localize2.ordinalNumber(date.getHours(), { unit: "hour" });
6852
- }
6853
- return lightFormatters.H(date, token);
6854
- },
6855
- // Hour [0-11]
6856
- K: function(date, token, localize2) {
6857
- const hours = date.getHours() % 12;
6858
- if (token === "Ko") {
6859
- return localize2.ordinalNumber(hours, { unit: "hour" });
6860
- }
6861
- return addLeadingZeros(hours, token.length);
6862
- },
6863
- // Hour [1-24]
6864
- k: function(date, token, localize2) {
6865
- let hours = date.getHours();
6866
- if (hours === 0) hours = 24;
6867
- if (token === "ko") {
6868
- return localize2.ordinalNumber(hours, { unit: "hour" });
6869
- }
6870
- return addLeadingZeros(hours, token.length);
6871
- },
6872
- // Minute
6873
- m: function(date, token, localize2) {
6874
- if (token === "mo") {
6875
- return localize2.ordinalNumber(date.getMinutes(), { unit: "minute" });
6876
- }
6877
- return lightFormatters.m(date, token);
6878
- },
6879
- // Second
6880
- s: function(date, token, localize2) {
6881
- if (token === "so") {
6882
- return localize2.ordinalNumber(date.getSeconds(), { unit: "second" });
6883
- }
6884
- return lightFormatters.s(date, token);
6885
- },
6886
- // Fraction of second
6887
- S: function(date, token) {
6888
- return lightFormatters.S(date, token);
6889
- },
6890
- // Timezone (ISO-8601. If offset is 0, output is always `'Z'`)
6891
- X: function(date, token, _localize) {
6892
- const timezoneOffset = date.getTimezoneOffset();
6893
- if (timezoneOffset === 0) {
6894
- return "Z";
6895
- }
6896
- switch (token) {
6897
- // Hours and optional minutes
6898
- case "X":
6899
- return formatTimezoneWithOptionalMinutes(timezoneOffset);
6900
- // Hours, minutes and optional seconds without `:` delimiter
6901
- // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets
6902
- // so this token always has the same output as `XX`
6903
- case "XXXX":
6904
- case "XX":
6905
- return formatTimezone(timezoneOffset);
6906
- // Hours, minutes and optional seconds with `:` delimiter
6907
- // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets
6908
- // so this token always has the same output as `XXX`
6909
- case "XXXXX":
6910
- case "XXX":
6911
- // Hours and minutes with `:` delimiter
6912
- default:
6913
- return formatTimezone(timezoneOffset, ":");
6914
- }
6915
- },
6916
- // Timezone (ISO-8601. If offset is 0, output is `'+00:00'` or equivalent)
6917
- x: function(date, token, _localize) {
6918
- const timezoneOffset = date.getTimezoneOffset();
6919
- switch (token) {
6920
- // Hours and optional minutes
6921
- case "x":
6922
- return formatTimezoneWithOptionalMinutes(timezoneOffset);
6923
- // Hours, minutes and optional seconds without `:` delimiter
6924
- // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets
6925
- // so this token always has the same output as `xx`
6926
- case "xxxx":
6927
- case "xx":
6928
- return formatTimezone(timezoneOffset);
6929
- // Hours, minutes and optional seconds with `:` delimiter
6930
- // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets
6931
- // so this token always has the same output as `xxx`
6932
- case "xxxxx":
6933
- case "xxx":
6934
- // Hours and minutes with `:` delimiter
6935
- default:
6936
- return formatTimezone(timezoneOffset, ":");
6937
- }
6938
- },
6939
- // Timezone (GMT)
6940
- O: function(date, token, _localize) {
6941
- const timezoneOffset = date.getTimezoneOffset();
6942
- switch (token) {
6943
- // Short
6944
- case "O":
6945
- case "OO":
6946
- case "OOO":
6947
- return "GMT" + formatTimezoneShort(timezoneOffset, ":");
6948
- // Long
6949
- case "OOOO":
6950
- default:
6951
- return "GMT" + formatTimezone(timezoneOffset, ":");
6952
- }
6953
- },
6954
- // Timezone (specific non-location)
6955
- z: function(date, token, _localize) {
6956
- const timezoneOffset = date.getTimezoneOffset();
6957
- switch (token) {
6958
- // Short
6959
- case "z":
6960
- case "zz":
6961
- case "zzz":
6962
- return "GMT" + formatTimezoneShort(timezoneOffset, ":");
6963
- // Long
6964
- case "zzzz":
6965
- default:
6966
- return "GMT" + formatTimezone(timezoneOffset, ":");
6967
- }
6968
- },
6969
- // Seconds timestamp
6970
- t: function(date, token, _localize) {
6971
- const timestamp = Math.trunc(+date / 1e3);
6972
- return addLeadingZeros(timestamp, token.length);
6973
- },
6974
- // Milliseconds timestamp
6975
- T: function(date, token, _localize) {
6976
- return addLeadingZeros(+date, token.length);
6977
- }
6978
- };
6979
- function formatTimezoneShort(offset, delimiter = "") {
6980
- const sign = offset > 0 ? "-" : "+";
6981
- const absOffset = Math.abs(offset);
6982
- const hours = Math.trunc(absOffset / 60);
6983
- const minutes = absOffset % 60;
6984
- if (minutes === 0) {
6985
- return sign + String(hours);
6986
- }
6987
- return sign + String(hours) + delimiter + addLeadingZeros(minutes, 2);
6988
- }
6989
- function formatTimezoneWithOptionalMinutes(offset, delimiter) {
6990
- if (offset % 60 === 0) {
6991
- const sign = offset > 0 ? "-" : "+";
6992
- return sign + addLeadingZeros(Math.abs(offset) / 60, 2);
6993
- }
6994
- return formatTimezone(offset, delimiter);
6995
- }
6996
- function formatTimezone(offset, delimiter = "") {
6997
- const sign = offset > 0 ? "-" : "+";
6998
- const absOffset = Math.abs(offset);
6999
- const hours = addLeadingZeros(Math.trunc(absOffset / 60), 2);
7000
- const minutes = addLeadingZeros(absOffset % 60, 2);
7001
- return sign + hours + delimiter + minutes;
7002
- }
7003
-
7004
- // node_modules/date-fns/_lib/format/longFormatters.js
7005
- var dateLongFormatter = (pattern, formatLong2) => {
7006
- switch (pattern) {
7007
- case "P":
7008
- return formatLong2.date({ width: "short" });
7009
- case "PP":
7010
- return formatLong2.date({ width: "medium" });
7011
- case "PPP":
7012
- return formatLong2.date({ width: "long" });
7013
- case "PPPP":
7014
- default:
7015
- return formatLong2.date({ width: "full" });
7016
- }
7017
- };
7018
- var timeLongFormatter = (pattern, formatLong2) => {
7019
- switch (pattern) {
7020
- case "p":
7021
- return formatLong2.time({ width: "short" });
7022
- case "pp":
7023
- return formatLong2.time({ width: "medium" });
7024
- case "ppp":
7025
- return formatLong2.time({ width: "long" });
7026
- case "pppp":
7027
- default:
7028
- return formatLong2.time({ width: "full" });
7029
- }
7030
- };
7031
- var dateTimeLongFormatter = (pattern, formatLong2) => {
7032
- const matchResult = pattern.match(/(P+)(p+)?/) || [];
7033
- const datePattern = matchResult[1];
7034
- const timePattern = matchResult[2];
7035
- if (!timePattern) {
7036
- return dateLongFormatter(pattern, formatLong2);
7037
- }
7038
- let dateTimeFormat;
7039
- switch (datePattern) {
7040
- case "P":
7041
- dateTimeFormat = formatLong2.dateTime({ width: "short" });
7042
- break;
7043
- case "PP":
7044
- dateTimeFormat = formatLong2.dateTime({ width: "medium" });
7045
- break;
7046
- case "PPP":
7047
- dateTimeFormat = formatLong2.dateTime({ width: "long" });
7048
- break;
7049
- case "PPPP":
7050
- default:
7051
- dateTimeFormat = formatLong2.dateTime({ width: "full" });
7052
- break;
7053
- }
7054
- return dateTimeFormat.replace("{{date}}", dateLongFormatter(datePattern, formatLong2)).replace("{{time}}", timeLongFormatter(timePattern, formatLong2));
7055
- };
7056
- var longFormatters = {
7057
- p: timeLongFormatter,
7058
- P: dateTimeLongFormatter
7059
- };
7060
-
7061
- // node_modules/date-fns/_lib/protectedTokens.js
7062
- var dayOfYearTokenRE = /^D+$/;
7063
- var weekYearTokenRE = /^Y+$/;
7064
- var throwTokens = ["D", "DD", "YY", "YYYY"];
7065
- function isProtectedDayOfYearToken(token) {
7066
- return dayOfYearTokenRE.test(token);
7067
- }
7068
- function isProtectedWeekYearToken(token) {
7069
- return weekYearTokenRE.test(token);
7070
- }
7071
- function warnOrThrowProtectedError(token, format2, input) {
7072
- const _message = message(token, format2, input);
7073
- console.warn(_message);
7074
- if (throwTokens.includes(token)) throw new RangeError(_message);
7075
- }
7076
- function message(token, format2, input) {
7077
- const subject = token[0] === "Y" ? "years" : "days of the month";
7078
- return `Use \`${token.toLowerCase()}\` instead of \`${token}\` (in \`${format2}\`) for formatting ${subject} to the input \`${input}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`;
7079
- }
7080
-
7081
- // node_modules/date-fns/format.js
7082
- var formattingTokensRegExp = /[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g;
7083
- var longFormattingTokensRegExp = /P+p+|P+|p+|''|'(''|[^'])+('|$)|./g;
7084
- var escapedStringRegExp = /^'([^]*?)'?$/;
7085
- var doubleQuoteRegExp = /''/g;
7086
- var unescapedLatinCharacterRegExp = /[a-zA-Z]/;
7087
- function format(date, formatStr, options) {
7088
- const defaultOptions2 = getDefaultOptions();
7089
- const locale = defaultOptions2.locale ?? enUS;
7090
- const firstWeekContainsDate = defaultOptions2.firstWeekContainsDate ?? defaultOptions2.locale?.options?.firstWeekContainsDate ?? 1;
7091
- const weekStartsOn = defaultOptions2.weekStartsOn ?? defaultOptions2.locale?.options?.weekStartsOn ?? 0;
7092
- const originalDate = toDate(date, options?.in);
7093
- if (!isValid(originalDate)) {
7094
- throw new RangeError("Invalid time value");
7095
- }
7096
- let parts = formatStr.match(longFormattingTokensRegExp).map((substring) => {
7097
- const firstCharacter = substring[0];
7098
- if (firstCharacter === "p" || firstCharacter === "P") {
7099
- const longFormatter = longFormatters[firstCharacter];
7100
- return longFormatter(substring, locale.formatLong);
7101
- }
7102
- return substring;
7103
- }).join("").match(formattingTokensRegExp).map((substring) => {
7104
- if (substring === "''") {
7105
- return { isToken: false, value: "'" };
7106
- }
7107
- const firstCharacter = substring[0];
7108
- if (firstCharacter === "'") {
7109
- return { isToken: false, value: cleanEscapedString(substring) };
7110
- }
7111
- if (formatters[firstCharacter]) {
7112
- return { isToken: true, value: substring };
7113
- }
7114
- if (firstCharacter.match(unescapedLatinCharacterRegExp)) {
7115
- throw new RangeError(
7116
- "Format string contains an unescaped latin alphabet character `" + firstCharacter + "`"
7117
- );
7118
- }
7119
- return { isToken: false, value: substring };
7120
- });
7121
- if (locale.localize.preprocessor) {
7122
- parts = locale.localize.preprocessor(originalDate, parts);
7123
- }
7124
- const formatterOptions = {
7125
- firstWeekContainsDate,
7126
- weekStartsOn,
7127
- locale
7128
- };
7129
- return parts.map((part) => {
7130
- if (!part.isToken) return part.value;
7131
- const token = part.value;
7132
- if (isProtectedWeekYearToken(token) || isProtectedDayOfYearToken(token)) {
7133
- warnOrThrowProtectedError(token, formatStr, String(date));
7134
- }
7135
- const formatter = formatters[token[0]];
7136
- return formatter(originalDate, token, locale.localize, formatterOptions);
7137
- }).join("");
7138
- }
7139
- function cleanEscapedString(input) {
7140
- const matched = input.match(escapedStringRegExp);
7141
- if (!matched) {
7142
- return input;
7143
- }
7144
- return matched[1].replace(doubleQuoteRegExp, "'");
7145
- }
7146
-
7147
- // node_modules/date-fns/isSameMonth.js
7148
- function isSameMonth(laterDate, earlierDate, options) {
7149
- const [laterDate_, earlierDate_] = normalizeDates(
7150
- options?.in,
7151
- laterDate,
7152
- earlierDate
7153
- );
7154
- return laterDate_.getFullYear() === earlierDate_.getFullYear() && laterDate_.getMonth() === earlierDate_.getMonth();
7155
- }
7156
5451
  var DEFAULT_COLUMN_WIDTH = {
7157
5452
  days: 56,
7158
5453
  weeks: 80,
@@ -7165,19 +5460,19 @@ var DEFAULT_COLOR2 = "hsl(var(--chart-1))";
7165
5460
  var EDGE_HIT_PX = 8;
7166
5461
  var LONG_PRESS_MS = 300;
7167
5462
  function startOfScale(date, scale) {
7168
- if (scale === "days") return startOfDay(date);
7169
- if (scale === "weeks") return startOfWeek2(date, { weekStartsOn: 1 });
7170
- return startOfMonth(date);
5463
+ if (scale === "days") return dateFns.startOfDay(date);
5464
+ if (scale === "weeks") return dateFns.startOfWeek(date, { weekStartsOn: 1 });
5465
+ return dateFns.startOfMonth(date);
7171
5466
  }
7172
5467
  function endOfScale(date, scale) {
7173
- if (scale === "days") return startOfDay(date);
7174
- if (scale === "weeks") return endOfWeek(date, { weekStartsOn: 1 });
7175
- return endOfMonth(date);
5468
+ if (scale === "days") return dateFns.startOfDay(date);
5469
+ if (scale === "weeks") return dateFns.endOfWeek(date, { weekStartsOn: 1 });
5470
+ return dateFns.endOfMonth(date);
7176
5471
  }
7177
5472
  function addUnits(date, n, scale) {
7178
- if (scale === "days") return addDays(date, n);
7179
- if (scale === "weeks") return addWeeks(date, n);
7180
- return addMonths(date, n);
5473
+ if (scale === "days") return dateFns.addDays(date, n);
5474
+ if (scale === "weeks") return dateFns.addWeeks(date, n);
5475
+ return dateFns.addMonths(date, n);
7181
5476
  }
7182
5477
  function unitsBetween(a, b, scale) {
7183
5478
  if (scale === "days") {
@@ -7186,29 +5481,29 @@ function unitsBetween(a, b, scale) {
7186
5481
  if (scale === "weeks") {
7187
5482
  return (b.getTime() - a.getTime()) / (7 * 864e5);
7188
5483
  }
7189
- const wholeMonths = differenceInCalendarMonths(b, a);
7190
- const monthAnchor = addMonths(a, wholeMonths);
7191
- const monthLen = (endOfMonth(monthAnchor).getTime() - startOfMonth(monthAnchor).getTime()) / 864e5 + 1;
5484
+ const wholeMonths = dateFns.differenceInCalendarMonths(b, a);
5485
+ const monthAnchor = dateFns.addMonths(a, wholeMonths);
5486
+ const monthLen = (dateFns.endOfMonth(monthAnchor).getTime() - dateFns.startOfMonth(monthAnchor).getTime()) / 864e5 + 1;
7192
5487
  const remainderDays = (b.getTime() - monthAnchor.getTime()) / 864e5;
7193
5488
  return wholeMonths + remainderDays / monthLen;
7194
5489
  }
7195
5490
  function totalColumns(viewportStart, viewportEnd, scale) {
7196
5491
  if (scale === "days") {
7197
- return Math.max(1, differenceInCalendarDays(viewportEnd, viewportStart) + 1);
5492
+ return Math.max(1, dateFns.differenceInCalendarDays(viewportEnd, viewportStart) + 1);
7198
5493
  }
7199
5494
  if (scale === "weeks") {
7200
- return Math.max(1, differenceInCalendarWeeks(viewportEnd, viewportStart, { weekStartsOn: 1 }) + 1);
5495
+ return Math.max(1, dateFns.differenceInCalendarWeeks(viewportEnd, viewportStart, { weekStartsOn: 1 }) + 1);
7201
5496
  }
7202
- return Math.max(1, differenceInCalendarMonths(viewportEnd, viewportStart) + 1);
5497
+ return Math.max(1, dateFns.differenceInCalendarMonths(viewportEnd, viewportStart) + 1);
7203
5498
  }
7204
5499
  function formatColumnLabel(date, scale) {
7205
- if (scale === "days") return format(date, "EEE d");
7206
- if (scale === "weeks") return `Week ${format(date, "w")}`;
7207
- return format(date, "MMM yyyy");
5500
+ if (scale === "days") return dateFns.format(date, "EEE d");
5501
+ if (scale === "weeks") return `Week ${dateFns.format(date, "w")}`;
5502
+ return dateFns.format(date, "MMM yyyy");
7208
5503
  }
7209
5504
  function formatColumnSubLabel(date, scale) {
7210
- if (scale === "days") return format(date, "MMM");
7211
- if (scale === "weeks") return format(date, "MMM yyyy");
5505
+ if (scale === "days") return dateFns.format(date, "MMM");
5506
+ if (scale === "weeks") return dateFns.format(date, "MMM yyyy");
7212
5507
  return null;
7213
5508
  }
7214
5509
  function snapDate(date, scale) {
@@ -7234,7 +5529,7 @@ var Gantt = React131__namespace.default.forwardRef(
7234
5529
  const columnWidth = DEFAULT_COLUMN_WIDTH[scale];
7235
5530
  const viewport = React131__namespace.default.useMemo(() => {
7236
5531
  const earliest = startDate ?? (items.length ? new Date(Math.min(...items.map((i) => i.start.getTime()))) : /* @__PURE__ */ new Date());
7237
- const latest = endDate ?? (items.length ? new Date(Math.max(...items.map((i) => i.end.getTime()))) : addDays(/* @__PURE__ */ new Date(), 14));
5532
+ const latest = endDate ?? (items.length ? new Date(Math.max(...items.map((i) => i.end.getTime()))) : dateFns.addDays(/* @__PURE__ */ new Date(), 14));
7238
5533
  return {
7239
5534
  start: startOfScale(earliest, scale),
7240
5535
  end: endOfScale(latest, scale)
@@ -7631,7 +5926,7 @@ function GanttBar({
7631
5926
  const newEnd = addUnits(item.end, units, scale);
7632
5927
  onItemMove(item.id, newStart, newEnd);
7633
5928
  };
7634
- const ariaLabel = `${item.title}, ${format(item.start, "PP")} to ${format(
5929
+ const ariaLabel = `${item.title}, ${dateFns.format(item.start, "PP")} to ${dateFns.format(
7635
5930
  item.end,
7636
5931
  "PP"
7637
5932
  )}`;
@@ -9248,7 +7543,7 @@ function ArrayField({
9248
7543
  }
9249
7544
  var DAYS2 = ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"];
9250
7545
  var MONTHS2 = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"];
9251
- function isSameDay2(a, b) {
7546
+ function isSameDay(a, b) {
9252
7547
  return a.getFullYear() === b.getFullYear() && a.getMonth() === b.getMonth() && a.getDate() === b.getDate();
9253
7548
  }
9254
7549
  function getDaysInMonth(year, month) {
@@ -9267,8 +7562,8 @@ function CalendarGrid({ year, month, selected, onSelect }) {
9267
7562
  cells.map((day, i) => {
9268
7563
  if (!day) return /* @__PURE__ */ jsxRuntime.jsx("div", {}, i);
9269
7564
  const date = new Date(year, month, day);
9270
- const isToday = isSameDay2(date, today);
9271
- const isSelected = selected && isSameDay2(date, selected);
7565
+ const isToday = isSameDay(date, today);
7566
+ const isSelected = selected && isSameDay(date, selected);
9272
7567
  return /* @__PURE__ */ jsxRuntime.jsx(
9273
7568
  "button",
9274
7569
  {
@@ -9448,18 +7743,18 @@ function AutoForm({ schema, onSubmit, defaultValues, submitLabel = "Submit" }) {
9448
7743
  var HEX_RE = /^#([0-9a-f]{3}|[0-9a-f]{4}|[0-9a-f]{6}|[0-9a-f]{8})$/i;
9449
7744
  var RGB_RE = /^rgba?\(\s*\d+\s*,\s*\d+\s*,\s*\d+\s*(,\s*(0|1|0?\.\d+)\s*)?\)$/i;
9450
7745
  var HSL_RE = /^hsla?\(\s*\d+\s*,\s*\d+%\s*,\s*\d+%\s*(,\s*(0|1|0?\.\d+)\s*)?\)$/i;
9451
- function isValid2(value, format2, showAlpha) {
9452
- if (format2 === "hex") {
7746
+ function isValid(value, format3, showAlpha) {
7747
+ if (format3 === "hex") {
9453
7748
  if (!HEX_RE.test(value)) return false;
9454
7749
  if (!showAlpha && (value.length === 5 || value.length === 9)) return false;
9455
7750
  return true;
9456
7751
  }
9457
- if (format2 === "rgb") return RGB_RE.test(value);
7752
+ if (format3 === "rgb") return RGB_RE.test(value);
9458
7753
  return HSL_RE.test(value);
9459
7754
  }
9460
- function defaultFor(format2, showAlpha) {
9461
- if (format2 === "hex") return showAlpha ? "#3b82f6ff" : "#3b82f6";
9462
- if (format2 === "rgb") return showAlpha ? "rgba(59, 130, 246, 1)" : "rgb(59, 130, 246)";
7755
+ function defaultFor(format3, showAlpha) {
7756
+ if (format3 === "hex") return showAlpha ? "#3b82f6ff" : "#3b82f6";
7757
+ if (format3 === "rgb") return showAlpha ? "rgba(59, 130, 246, 1)" : "rgb(59, 130, 246)";
9463
7758
  return showAlpha ? "hsla(217, 91%, 60%, 1)" : "hsl(217, 91%, 60%)";
9464
7759
  }
9465
7760
  var ColorPicker = React131__namespace.default.forwardRef(
@@ -9467,7 +7762,7 @@ var ColorPicker = React131__namespace.default.forwardRef(
9467
7762
  value: valueProp,
9468
7763
  defaultValue,
9469
7764
  onValueChange,
9470
- format: format2 = "hex",
7765
+ format: format3 = "hex",
9471
7766
  showAlpha = false,
9472
7767
  swatches,
9473
7768
  showEyeDropper = true,
@@ -9475,7 +7770,7 @@ var ColorPicker = React131__namespace.default.forwardRef(
9475
7770
  className,
9476
7771
  ...props
9477
7772
  }, ref) => {
9478
- const fallback = defaultValue ?? defaultFor(format2, showAlpha);
7773
+ const fallback = defaultValue ?? defaultFor(format3, showAlpha);
9479
7774
  const isControlled = valueProp !== void 0;
9480
7775
  const [internal, setInternal] = React131__namespace.default.useState(fallback);
9481
7776
  const value = isControlled ? valueProp : internal;
@@ -9501,7 +7796,7 @@ var ColorPicker = React131__namespace.default.forwardRef(
9501
7796
  const handleDraftChange = (e) => {
9502
7797
  const next = e.target.value;
9503
7798
  setDraft(next);
9504
- const valid = isValid2(next, format2, showAlpha);
7799
+ const valid = isValid(next, format3, showAlpha);
9505
7800
  setDraftValid(valid || next === "");
9506
7801
  if (valid) commit(next);
9507
7802
  };
@@ -9524,9 +7819,9 @@ var ColorPicker = React131__namespace.default.forwardRef(
9524
7819
  disabled && "pointer-events-none opacity-50 grayscale"
9525
7820
  )
9526
7821
  };
9527
- if (format2 === "hex" && showAlpha) return /* @__PURE__ */ jsxRuntime.jsx(reactColorful.HexAlphaColorPicker, { ...common });
9528
- if (format2 === "hex") return /* @__PURE__ */ jsxRuntime.jsx(reactColorful.HexColorPicker, { ...common });
9529
- if (format2 === "rgb") return /* @__PURE__ */ jsxRuntime.jsx(reactColorful.RgbStringColorPicker, { ...common });
7822
+ if (format3 === "hex" && showAlpha) return /* @__PURE__ */ jsxRuntime.jsx(reactColorful.HexAlphaColorPicker, { ...common });
7823
+ if (format3 === "hex") return /* @__PURE__ */ jsxRuntime.jsx(reactColorful.HexColorPicker, { ...common });
7824
+ if (format3 === "rgb") return /* @__PURE__ */ jsxRuntime.jsx(reactColorful.RgbStringColorPicker, { ...common });
9530
7825
  return /* @__PURE__ */ jsxRuntime.jsx(reactColorful.HslStringColorPicker, { ...common });
9531
7826
  })();
9532
7827
  const showDropper = showEyeDropper && eyeDropperSupported;
@@ -9594,7 +7889,7 @@ var ColorPicker = React131__namespace.default.forwardRef(
9594
7889
  "font-mono text-xs",
9595
7890
  !draftValid && "border-[hsl(var(--destructive))] focus-visible:ring-[hsl(var(--destructive))]"
9596
7891
  ),
9597
- "aria-label": `Color value (${format2})`,
7892
+ "aria-label": `Color value (${format3})`,
9598
7893
  "aria-invalid": !draftValid
9599
7894
  }
9600
7895
  ),
@@ -10849,9 +9144,9 @@ function nextId() {
10849
9144
  return `toast-${++_id}`;
10850
9145
  }
10851
9146
  var toastEmitter = {
10852
- emit(message2, options = {}) {
9147
+ emit(message, options = {}) {
10853
9148
  const id = options.id ?? nextId();
10854
- const event = { id, message: message2, options };
9149
+ const event = { id, message, options };
10855
9150
  listeners.forEach((fn) => fn(event));
10856
9151
  return id;
10857
9152
  },
@@ -10873,13 +9168,13 @@ var toastEmitter = {
10873
9168
  };
10874
9169
  }
10875
9170
  };
10876
- function toastFn(message2, opts) {
10877
- return toastEmitter.emit(message2, opts);
9171
+ function toastFn(message, opts) {
9172
+ return toastEmitter.emit(message, opts);
10878
9173
  }
10879
- toastFn.success = (message2, opts) => toastEmitter.emit(message2, { ...opts, type: "success" });
10880
- toastFn.error = (message2, opts) => toastEmitter.emit(message2, { ...opts, type: "error" });
10881
- toastFn.warning = (message2, opts) => toastEmitter.emit(message2, { ...opts, type: "warning" });
10882
- toastFn.info = (message2, opts) => toastEmitter.emit(message2, { ...opts, type: "info" });
9174
+ toastFn.success = (message, opts) => toastEmitter.emit(message, { ...opts, type: "success" });
9175
+ toastFn.error = (message, opts) => toastEmitter.emit(message, { ...opts, type: "error" });
9176
+ toastFn.warning = (message, opts) => toastEmitter.emit(message, { ...opts, type: "warning" });
9177
+ toastFn.info = (message, opts) => toastEmitter.emit(message, { ...opts, type: "info" });
10883
9178
  toastFn.dismiss = (id) => toastEmitter.dismiss(id);
10884
9179
  var iconMap = {
10885
9180
  success: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.CheckCircle, { className: "h-4 w-4 text-green-500" }),
@@ -11041,8 +9336,8 @@ GradientHeading.displayName = "GradientHeading";
11041
9336
  function easeOutExpo(t) {
11042
9337
  return t === 1 ? 1 : 1 - Math.pow(2, -10 * t);
11043
9338
  }
11044
- function formatNumber(value, decimals, format2, locale) {
11045
- if (format2) {
9339
+ function formatNumber(value, decimals, format3, locale) {
9340
+ if (format3) {
11046
9341
  return new Intl.NumberFormat(locale, {
11047
9342
  minimumFractionDigits: decimals,
11048
9343
  maximumFractionDigits: decimals
@@ -11061,7 +9356,7 @@ var AnimatedNumber = React131__namespace.default.forwardRef(
11061
9356
  easing = easeOutExpo,
11062
9357
  autoStart = true,
11063
9358
  locale,
11064
- format: format2 = true,
9359
+ format: format3 = true,
11065
9360
  className,
11066
9361
  ...props
11067
9362
  }, ref) => {
@@ -11139,7 +9434,7 @@ var AnimatedNumber = React131__namespace.default.forwardRef(
11139
9434
  ...props,
11140
9435
  children: [
11141
9436
  prefix,
11142
- formatNumber(displayed, decimals, format2, locale),
9437
+ formatNumber(displayed, decimals, format3, locale),
11143
9438
  suffix
11144
9439
  ]
11145
9440
  }
@@ -12243,25 +10538,25 @@ DataListItem.displayName = "DataListItem";
12243
10538
  var HOUR_ROW_PX = 40;
12244
10539
  var DEFAULT_COLOR3 = "hsl(var(--chart-1))";
12245
10540
  function clampToDay(date, target) {
12246
- if (date < startOfDay(target)) return startOfDay(target);
12247
- if (date > endOfDay(target)) return endOfDay(target);
10541
+ if (date < dateFns.startOfDay(target)) return dateFns.startOfDay(target);
10542
+ if (date > dateFns.endOfDay(target)) return dateFns.endOfDay(target);
12248
10543
  return date;
12249
10544
  }
12250
10545
  function eventOverlapsDay(event, day) {
12251
- const dayStart = startOfDay(day);
12252
- const dayEnd = endOfDay(day);
10546
+ const dayStart = dateFns.startOfDay(day);
10547
+ const dayEnd = dateFns.endOfDay(day);
12253
10548
  return event.end >= dayStart && event.start <= dayEnd;
12254
10549
  }
12255
10550
  function getMonthMatrix(date, weekStartsOn) {
12256
- const monthStart = startOfMonth(date);
12257
- const gridStart = startOfWeek2(monthStart, { weekStartsOn });
10551
+ const monthStart = dateFns.startOfMonth(date);
10552
+ const gridStart = dateFns.startOfWeek(monthStart, { weekStartsOn });
12258
10553
  const cells = [];
12259
- for (let i = 0; i < 42; i++) cells.push(addDays(gridStart, i));
10554
+ for (let i = 0; i < 42; i++) cells.push(dateFns.addDays(gridStart, i));
12260
10555
  return cells;
12261
10556
  }
12262
10557
  function getWeekDays(date, weekStartsOn) {
12263
- const start = startOfWeek2(date, { weekStartsOn });
12264
- return Array.from({ length: 7 }, (_, i) => addDays(start, i));
10558
+ const start = dateFns.startOfWeek(date, { weekStartsOn });
10559
+ return Array.from({ length: 7 }, (_, i) => dateFns.addDays(start, i));
12265
10560
  }
12266
10561
  var EventCalendar = React131__namespace.default.forwardRef(
12267
10562
  ({
@@ -12299,14 +10594,14 @@ var EventCalendar = React131__namespace.default.forwardRef(
12299
10594
  [dateProp, onDateChange]
12300
10595
  );
12301
10596
  const handlePrev = () => {
12302
- if (view === "month") commitDate(addMonths(date, -1));
12303
- else if (view === "week") commitDate(addWeeks(date, -1));
12304
- else commitDate(addDays(date, -1));
10597
+ if (view === "month") commitDate(dateFns.addMonths(date, -1));
10598
+ else if (view === "week") commitDate(dateFns.addWeeks(date, -1));
10599
+ else commitDate(dateFns.addDays(date, -1));
12305
10600
  };
12306
10601
  const handleNext = () => {
12307
- if (view === "month") commitDate(addMonths(date, 1));
12308
- else if (view === "week") commitDate(addWeeks(date, 1));
12309
- else commitDate(addDays(date, 1));
10602
+ if (view === "month") commitDate(dateFns.addMonths(date, 1));
10603
+ else if (view === "week") commitDate(dateFns.addWeeks(date, 1));
10604
+ else commitDate(dateFns.addDays(date, 1));
12310
10605
  };
12311
10606
  const handleToday = () => commitDate(/* @__PURE__ */ new Date());
12312
10607
  const handleRootKeyDown = (e) => {
@@ -12318,14 +10613,14 @@ var EventCalendar = React131__namespace.default.forwardRef(
12318
10613
  }
12319
10614
  };
12320
10615
  const headerLabel = React131__namespace.default.useMemo(() => {
12321
- if (view === "month") return format(date, "MMMM yyyy");
10616
+ if (view === "month") return dateFns.format(date, "MMMM yyyy");
12322
10617
  if (view === "week") {
12323
- const start = startOfWeek2(date, { weekStartsOn });
12324
- const end = addDays(start, 6);
12325
- if (isSameMonth(start, end)) return `${format(start, "MMM d")} \u2013 ${format(end, "d, yyyy")}`;
12326
- return `${format(start, "MMM d")} \u2013 ${format(end, "MMM d, yyyy")}`;
10618
+ const start = dateFns.startOfWeek(date, { weekStartsOn });
10619
+ const end = dateFns.addDays(start, 6);
10620
+ if (dateFns.isSameMonth(start, end)) return `${dateFns.format(start, "MMM d")} \u2013 ${dateFns.format(end, "d, yyyy")}`;
10621
+ return `${dateFns.format(start, "MMM d")} \u2013 ${dateFns.format(end, "MMM d, yyyy")}`;
12327
10622
  }
12328
- return format(date, "EEEE, MMMM d, yyyy");
10623
+ return dateFns.format(date, "EEEE, MMMM d, yyyy");
12329
10624
  }, [date, view, weekStartsOn]);
12330
10625
  return /* @__PURE__ */ jsxRuntime.jsxs(
12331
10626
  "div",
@@ -12471,8 +10766,8 @@ function MonthView({
12471
10766
  [date, weekStartsOn]
12472
10767
  );
12473
10768
  const weekdayLabels = React131__namespace.default.useMemo(() => {
12474
- const start = startOfWeek2(/* @__PURE__ */ new Date(), { weekStartsOn });
12475
- return Array.from({ length: 7 }, (_, i) => format(addDays(start, i), "EEE"));
10769
+ const start = dateFns.startOfWeek(/* @__PURE__ */ new Date(), { weekStartsOn });
10770
+ return Array.from({ length: 7 }, (_, i) => dateFns.format(dateFns.addDays(start, i), "EEE"));
12476
10771
  }, [weekStartsOn]);
12477
10772
  const today = /* @__PURE__ */ new Date();
12478
10773
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col", "data-slot": "event-calendar-month", children: [
@@ -12485,8 +10780,8 @@ function MonthView({
12485
10780
  label
12486
10781
  )) }),
12487
10782
  /* @__PURE__ */ jsxRuntime.jsx("div", { role: "grid", "aria-label": "Month grid", className: "grid grid-cols-7", children: cells.map((cell) => {
12488
- const inMonth = isSameMonth(cell, date);
12489
- const isToday = isSameDay(cell, today);
10783
+ const inMonth = dateFns.isSameMonth(cell, date);
10784
+ const isToday = dateFns.isSameDay(cell, today);
12490
10785
  const dayEvents = events.filter((ev) => eventOverlapsDay(ev, cell)).sort((a, b) => a.start.getTime() - b.start.getTime());
12491
10786
  const visible = dayEvents.slice(0, 3);
12492
10787
  const overflow = dayEvents.length - visible.length;
@@ -12494,13 +10789,13 @@ function MonthView({
12494
10789
  "div",
12495
10790
  {
12496
10791
  role: "gridcell",
12497
- "aria-label": format(cell, "EEEE, MMMM d, yyyy"),
10792
+ "aria-label": dateFns.format(cell, "EEEE, MMMM d, yyyy"),
12498
10793
  tabIndex: 0,
12499
10794
  onClick: (e) => {
12500
10795
  if (e.target.closest("[data-event-chip]")) return;
12501
10796
  if (e.target.closest("[data-overflow]")) return;
12502
10797
  if (onEventCreate) {
12503
- onEventCreate({ start: startOfDay(cell), end: endOfDay(cell) });
10798
+ onEventCreate({ start: dateFns.startOfDay(cell), end: dateFns.endOfDay(cell) });
12504
10799
  } else {
12505
10800
  onDayPick(cell);
12506
10801
  }
@@ -12509,7 +10804,7 @@ function MonthView({
12509
10804
  if (e.key === "Enter" || e.key === " ") {
12510
10805
  e.preventDefault();
12511
10806
  if (onEventCreate) {
12512
- onEventCreate({ start: startOfDay(cell), end: endOfDay(cell) });
10807
+ onEventCreate({ start: dateFns.startOfDay(cell), end: dateFns.endOfDay(cell) });
12513
10808
  } else {
12514
10809
  onDayPick(cell);
12515
10810
  }
@@ -12530,7 +10825,7 @@ function MonthView({
12530
10825
  isToday && "bg-primary text-primary-foreground",
12531
10826
  !isToday && !inMonth && "text-muted-foreground"
12532
10827
  ),
12533
- children: format(cell, "d")
10828
+ children: dateFns.format(cell, "d")
12534
10829
  }
12535
10830
  ) }),
12536
10831
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-0.5", children: [
@@ -12558,7 +10853,7 @@ function MonthView({
12558
10853
  }
12559
10854
  ) }),
12560
10855
  /* @__PURE__ */ jsxRuntime.jsxs(PopoverContent, { className: "w-64 p-2", align: "start", children: [
12561
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mb-1 px-1 text-xs font-medium text-muted-foreground", children: format(cell, "EEEE, MMM d") }),
10856
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mb-1 px-1 text-xs font-medium text-muted-foreground", children: dateFns.format(cell, "EEEE, MMM d") }),
12562
10857
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-col gap-1", children: dayEvents.map((ev) => /* @__PURE__ */ jsxRuntime.jsx(
12563
10858
  EventChip,
12564
10859
  {
@@ -12633,7 +10928,7 @@ function HourGrid({
12633
10928
  {
12634
10929
  style: { height: HOUR_ROW_PX },
12635
10930
  className: "relative -mt-px text-right text-[10px] text-muted-foreground",
12636
- children: /* @__PURE__ */ jsxRuntime.jsx("span", { className: "absolute -top-1.5 right-1.5 bg-card px-1", children: format(new Date(2e3, 0, 1, h), "h a") })
10931
+ children: /* @__PURE__ */ jsxRuntime.jsx("span", { className: "absolute -top-1.5 right-1.5 bg-card px-1", children: dateFns.format(new Date(2e3, 0, 1, h), "h a") })
12637
10932
  },
12638
10933
  h
12639
10934
  ))
@@ -12647,7 +10942,7 @@ function HourGrid({
12647
10942
  DayColumn,
12648
10943
  {
12649
10944
  day,
12650
- isToday: isSameDay(day, today),
10945
+ isToday: dateFns.isSameDay(day, today),
12651
10946
  events: events.filter((ev) => eventOverlapsDay(ev, day)),
12652
10947
  onEventClick,
12653
10948
  onEventCreate,
@@ -12679,8 +10974,8 @@ function DayColumn({
12679
10974
  if (!rect) return;
12680
10975
  const offsetY = e.clientY - rect.top;
12681
10976
  const hour = Math.max(0, Math.min(23, Math.floor(offsetY / HOUR_ROW_PX)));
12682
- const start = addHours(startOfDay(day), hour);
12683
- const end = addHours(start, 1);
10977
+ const start = dateFns.addHours(dateFns.startOfDay(day), hour);
10978
+ const end = dateFns.addHours(start, 1);
12684
10979
  onEventCreate({ start, end });
12685
10980
  };
12686
10981
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col border-r border-border last:border-r-0", children: [
@@ -12692,7 +10987,7 @@ function DayColumn({
12692
10987
  isToday && "bg-primary/10"
12693
10988
  ),
12694
10989
  children: [
12695
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "font-medium uppercase tracking-wide text-muted-foreground", children: format(day, "EEE") }),
10990
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "font-medium uppercase tracking-wide text-muted-foreground", children: dateFns.format(day, "EEE") }),
12696
10991
  /* @__PURE__ */ jsxRuntime.jsx(
12697
10992
  "span",
12698
10993
  {
@@ -12700,7 +10995,7 @@ function DayColumn({
12700
10995
  "tabular-nums",
12701
10996
  isToday ? "font-semibold text-primary" : "text-foreground"
12702
10997
  ),
12703
- children: format(day, "d")
10998
+ children: dateFns.format(day, "d")
12704
10999
  }
12705
11000
  )
12706
11001
  ]
@@ -12711,7 +11006,7 @@ function DayColumn({
12711
11006
  {
12712
11007
  ref: bodyRef,
12713
11008
  role: "row",
12714
- "aria-label": format(day, "EEEE, MMMM d"),
11009
+ "aria-label": dateFns.format(day, "EEEE, MMMM d"),
12715
11010
  onClick: handleEmptyClick,
12716
11011
  className: cn(
12717
11012
  "relative",
@@ -12746,10 +11041,10 @@ function EventBlock({ event, day, onClick, onResize }) {
12746
11041
  const color = event.color ?? DEFAULT_COLOR3;
12747
11042
  const visibleStart = clampToDay(event.start, day);
12748
11043
  const visibleEnd = clampToDay(event.end, day);
12749
- const startMinutes = differenceInMinutes(visibleStart, startOfDay(day));
11044
+ const startMinutes = dateFns.differenceInMinutes(visibleStart, dateFns.startOfDay(day));
12750
11045
  const durationMinutes = Math.max(
12751
11046
  20,
12752
- differenceInMinutes(visibleEnd, visibleStart)
11047
+ dateFns.differenceInMinutes(visibleEnd, visibleStart)
12753
11048
  );
12754
11049
  const top = startMinutes / 60 * HOUR_ROW_PX;
12755
11050
  const [resizingDelta, setResizingDelta] = React131__namespace.default.useState(0);
@@ -12814,9 +11109,9 @@ function EventBlock({ event, day, onClick, onResize }) {
12814
11109
  children: [
12815
11110
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "truncate font-medium", children: event.title }),
12816
11111
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "truncate text-[10px] text-muted-foreground", children: [
12817
- format(event.start, "h:mm a"),
11112
+ dateFns.format(event.start, "h:mm a"),
12818
11113
  " \u2013 ",
12819
- format(event.end, "h:mm a")
11114
+ dateFns.format(event.end, "h:mm a")
12820
11115
  ] }),
12821
11116
  onResize && /* @__PURE__ */ jsxRuntime.jsx(
12822
11117
  "div",
@@ -12942,7 +11237,7 @@ function buildDefaultCrop(defaultCrop, aspect, imgWidth, imgHeight) {
12942
11237
  }
12943
11238
  return { unit: "%", x: 10, y: 10, width: 80, height: 80 };
12944
11239
  }
12945
- async function extractCroppedDataUrl(image, crop, format2, quality) {
11240
+ async function extractCroppedDataUrl(image, crop, format3, quality) {
12946
11241
  const scaleX = image.naturalWidth / image.width;
12947
11242
  const scaleY = image.naturalHeight / image.height;
12948
11243
  const canvas = document.createElement("canvas");
@@ -12962,7 +11257,7 @@ async function extractCroppedDataUrl(image, crop, format2, quality) {
12962
11257
  canvas.width,
12963
11258
  canvas.height
12964
11259
  );
12965
- const mime = format2 === "jpeg" ? "image/jpeg" : format2 === "webp" ? "image/webp" : "image/png";
11260
+ const mime = format3 === "jpeg" ? "image/jpeg" : format3 === "webp" ? "image/webp" : "image/png";
12966
11261
  return canvas.toDataURL(mime, quality);
12967
11262
  }
12968
11263
  var ImageCrop = React131__namespace.default.forwardRef(