@mlw-packages/react-components 1.10.0 → 1.10.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.
package/dist/index.mjs CHANGED
@@ -35,7 +35,7 @@ import * as NavigationMenuPrimitive from '@radix-ui/react-navigation-menu';
35
35
  import { Drawer } from 'vaul';
36
36
  import * as ContextMenuPrimitive from '@radix-ui/react-context-menu';
37
37
  import { Prism } from 'react-syntax-highlighter';
38
- import { format, startOfMonth, endOfMonth, eachDayOfInterval, isToday, isSameDay, differenceInMinutes, isPast, startOfDay, eachHourOfInterval, addHours, getHours, getMinutes, areIntervalsOverlapping, startOfWeek, endOfWeek, isSameMonth, differenceInCalendarDays, addDays, differenceInDays, isBefore, addMinutes, subMonths, subWeeks, addMonths, addWeeks, isWithinInterval, add, max, min } from 'date-fns';
38
+ import { format, startOfMonth, endOfMonth, eachDayOfInterval, isToday, isSameDay, differenceInCalendarDays, differenceInMinutes, isPast, startOfDay, eachHourOfInterval, addHours, getHours, getMinutes, areIntervalsOverlapping, startOfWeek, endOfWeek, isSameMonth, addDays, differenceInDays, isBefore, addMinutes, subMonths, subWeeks, addMonths, addWeeks, isWithinInterval, add, max, min } from 'date-fns';
39
39
  import { ptBR } from 'date-fns/locale';
40
40
  import ptBR3 from 'date-fns/locale/pt-BR';
41
41
  import { useSensors, useSensor, MouseSensor, TouchSensor, PointerSensor, DndContext, DragOverlay, useDroppable, useDraggable } from '@dnd-kit/core';
@@ -8979,8 +8979,40 @@ var StartHourAgenda = 0;
8979
8979
  var EndHourAgenda = 24;
8980
8980
  var DefaultStartHourAgenda = 9;
8981
8981
  var DefaultEndHourAgenda = 10;
8982
- function getEventColorClassesAgenda(color) {
8983
- const eventColor = color || "sky";
8982
+ function getAutoColorAgenda(id) {
8983
+ const colors2 = [
8984
+ "sky",
8985
+ "amber",
8986
+ "violet",
8987
+ "rose",
8988
+ "emerald",
8989
+ "orange",
8990
+ "green",
8991
+ "blue",
8992
+ "red",
8993
+ "purple",
8994
+ "indigo",
8995
+ "teal",
8996
+ "pink",
8997
+ "cyan",
8998
+ "lime",
8999
+ "fuchsia"
9000
+ ];
9001
+ let hash = 0;
9002
+ for (let i = 0; i < id.length; i++) {
9003
+ hash = id.charCodeAt(i) + ((hash << 5) - hash);
9004
+ }
9005
+ const index = Math.abs(hash) % colors2.length;
9006
+ return colors2[index];
9007
+ }
9008
+ function getEventColorClassesAgenda(color, eventId) {
9009
+ let eventColor = color;
9010
+ if (!eventColor && eventId) {
9011
+ eventColor = getAutoColorAgenda(eventId);
9012
+ }
9013
+ if (!eventColor) {
9014
+ eventColor = "sky";
9015
+ }
8984
9016
  switch (eventColor) {
8985
9017
  case "sky":
8986
9018
  return "bg-sky-100 hover:bg-sky-200/80 text-sky-900 border border-sky-200/70 dark:bg-sky-500/25 dark:hover:bg-sky-500/35 dark:text-sky-50 dark:border-sky-400/30 transition-colors duration-150";
@@ -9125,6 +9157,28 @@ function addMinutesToDateAgenda(date, minutes) {
9125
9157
  function addHoursToDateAgenda(date, hours) {
9126
9158
  return addMinutesToDateAgenda(date, Math.round(hours * 60));
9127
9159
  }
9160
+ function formatDurationAgenda(event) {
9161
+ const start = getEventStartDate(event);
9162
+ const end = getEventEndDate(event);
9163
+ if (!start) return "";
9164
+ const fmt = (d) => format(d, "d 'de' MMM", { locale: ptBR });
9165
+ if (!end || isSameDay(start, end)) {
9166
+ return fmt(start) + (event.allDay ? " \xB7 Dia todo" : " \xB7 " + format(start, "HH:mm"));
9167
+ }
9168
+ const days = differenceInCalendarDays(end, start) + 1;
9169
+ return `${fmt(start)} \u2192 ${fmt(end)} \xB7 ${days} dias`;
9170
+ }
9171
+ function formatDurationAgendaDays(event) {
9172
+ const start = getEventStartDate(event);
9173
+ const end = getEventEndDate(event);
9174
+ if (!start) return "";
9175
+ const fmt = (d) => format(d, "d 'de' MMM", { locale: ptBR });
9176
+ if (!end || isSameDay(start, end)) {
9177
+ return fmt(start) + (event.allDay ? " \xB7 Dia todo" : " \xB7 " + format(start, "HH:mm"));
9178
+ }
9179
+ const days = differenceInCalendarDays(end, start) + 1;
9180
+ return `${days} dias`;
9181
+ }
9128
9182
  function useCurrentTimeIndicatorAgenda(currentDate, view) {
9129
9183
  const [currentTimePosition, setCurrentTimePosition] = useState(0);
9130
9184
  const [currentTimeVisible, setCurrentTimeVisible] = useState(false);
@@ -9193,7 +9247,7 @@ function EventWrapper({
9193
9247
  return void 0;
9194
9248
  })();
9195
9249
  const isEventInPast = displayEnd ? isPast(displayEnd) : false;
9196
- const colorClasses = hasValidTimeForWrapper ? getEventColorClassesAgenda(event.color) : "bg-gray-200/50 hover:bg-gray-200/40 text-gray-900/80 dark:bg-gray-700/25 dark:text-gray-200/90 shadow-none ";
9250
+ const colorClasses = hasValidTimeForWrapper ? getEventColorClassesAgenda(event.color, event.id) : "bg-gray-200/50 hover:bg-gray-200/40 text-gray-900/80 dark:bg-gray-700/25 dark:text-gray-200/90 shadow-none ";
9197
9251
  return /* @__PURE__ */ jsx(
9198
9252
  "button",
9199
9253
  {
@@ -9238,7 +9292,7 @@ function EventItemAgenda({
9238
9292
  const startDate = getEventStartDate(event);
9239
9293
  const endDate = getEventEndDate(event);
9240
9294
  const hasValidTime = !!startDate || !!endDate;
9241
- const colorClasses = hasValidTime ? getEventColorClassesAgenda(eventColor) : "bg-gray-200/50 hover:bg-gray-200/40 text-gray-900/80 dark:bg-gray-700/25 dark:text-gray-200/90 shadow-none";
9295
+ const colorClasses = hasValidTime ? getEventColorClassesAgenda(eventColor, event.id) : "bg-gray-200/50 hover:bg-gray-200/40 text-gray-900/80 dark:bg-gray-700/25 dark:text-gray-200/90 shadow-none";
9242
9296
  const displayStart = useMemo(() => {
9243
9297
  if (!hasValidTime) return void 0;
9244
9298
  if (startDate) return currentTime || startDate;
@@ -9398,7 +9452,7 @@ function EventItemAgenda({
9398
9452
  {
9399
9453
  className: cn(
9400
9454
  "flex w-full flex-col gap-2 rounded-lg p-3 text-left outline-none transition-shadow duration-150 ease-out hover:bg-white/3 focus-visible:ring-2 focus-visible:ring-ring/50 focus-visible:border-ring data-past-event:line-through data-past-event:opacity-90 border-2 border-border",
9401
- getEventColorClassesAgenda(eventColor),
9455
+ getEventColorClassesAgenda(eventColor, event.id),
9402
9456
  className
9403
9457
  ),
9404
9458
  "aria-label": ariaLabel,
@@ -9651,14 +9705,31 @@ function DayViewAgenda({
9651
9705
  const isFirstDay = eventStart ? isSameDay(currentDate, eventStart) : false;
9652
9706
  const isLastDay = eventEnd ? isSameDay(currentDate, eventEnd) : false;
9653
9707
  return /* @__PURE__ */ jsx(
9654
- EventItemAgenda,
9708
+ TooltipProviderBase,
9655
9709
  {
9656
- event,
9657
- isFirstDay,
9658
- isLastDay,
9659
- onClick: (e) => handleEventClick(event, e),
9660
- view: "month",
9661
- children: /* @__PURE__ */ jsx("div", { children: event.title })
9710
+ delayDuration: 400,
9711
+ children: /* @__PURE__ */ jsxs(TooltipBase, { children: [
9712
+ /* @__PURE__ */ jsx(TooltipTriggerBase, { asChild: true, children: /* @__PURE__ */ jsx("div", { className: "w-full", children: /* @__PURE__ */ jsx(
9713
+ EventItemAgenda,
9714
+ {
9715
+ event,
9716
+ isFirstDay,
9717
+ isLastDay,
9718
+ onClick: (e) => handleEventClick(event, e),
9719
+ view: "month",
9720
+ children: /* @__PURE__ */ jsx("div", { children: event.title })
9721
+ }
9722
+ ) }) }),
9723
+ /* @__PURE__ */ jsxs(TooltipContentBase, { side: "top", children: [
9724
+ /* @__PURE__ */ jsx("p", { className: "font-semibold truncate max-w-[200px]", children: event.title }),
9725
+ /* @__PURE__ */ jsx("p", { className: "opacity-80 mt-0.5 leading-snug", children: formatDurationAgenda(event) }),
9726
+ event.location && /* @__PURE__ */ jsxs("p", { className: "opacity-60 mt-0.5 truncate text-[11px] max-w-[200px] flex items-center gap-1", children: [
9727
+ /* @__PURE__ */ jsx(MapPinIcon, { size: 14 }),
9728
+ " ",
9729
+ event.location
9730
+ ] })
9731
+ ] })
9732
+ ] })
9662
9733
  },
9663
9734
  `spanning-${event.id}`
9664
9735
  );
@@ -9691,17 +9762,37 @@ function DayViewAgenda({
9691
9762
  width: `${positionedEvent.width * 100}%`,
9692
9763
  zIndex: positionedEvent.zIndex
9693
9764
  },
9694
- children: /* @__PURE__ */ jsx(
9695
- EventItemAgenda,
9696
- {
9697
- event: evt,
9698
- view: "day",
9699
- isFirstDay,
9700
- isLastDay,
9701
- onClick: (e) => handleEventClick(evt, e),
9702
- showTime: true
9703
- }
9704
- )
9765
+ children: /* @__PURE__ */ jsx(TooltipProviderBase, { delayDuration: 400, children: /* @__PURE__ */ jsxs(TooltipBase, { children: [
9766
+ /* @__PURE__ */ jsx(TooltipTriggerBase, { asChild: true, children: /* @__PURE__ */ jsx("div", { className: "size-full", children: /* @__PURE__ */ jsx(
9767
+ EventItemAgenda,
9768
+ {
9769
+ event: evt,
9770
+ view: "day",
9771
+ isFirstDay,
9772
+ isLastDay,
9773
+ onClick: (e) => handleEventClick(evt, e),
9774
+ showTime: true
9775
+ }
9776
+ ) }) }),
9777
+ /* @__PURE__ */ jsxs(
9778
+ TooltipContentBase,
9779
+ {
9780
+ side: "top",
9781
+ sideOffset: 6,
9782
+ className: "max-w-[220px] space-y-0.5",
9783
+ children: [
9784
+ /* @__PURE__ */ jsx("p", { className: "font-semibold text-sm leading-snug", children: evt.title }),
9785
+ /* @__PURE__ */ jsx("p", { className: "text-xs opacity-90", children: formatDurationAgenda(evt) }),
9786
+ evt.location && /* @__PURE__ */ jsxs("p", { className: "text-xs flex items-center gap-2", children: [
9787
+ /* @__PURE__ */ jsx(MapPinIcon, { size: 15 }),
9788
+ " ",
9789
+ evt.location
9790
+ ] }),
9791
+ evt.description && /* @__PURE__ */ jsx("p", { className: "text-xs opacity-75 line-clamp-2", children: evt.description })
9792
+ ]
9793
+ }
9794
+ )
9795
+ ] }) })
9705
9796
  },
9706
9797
  positionedEvent.event.id
9707
9798
  );
@@ -10326,17 +10417,6 @@ function computeMultiDayBars(events, weekDays) {
10326
10417
  }
10327
10418
  return bars;
10328
10419
  }
10329
- function formatDuration(event) {
10330
- const start = getEventStartDate(event);
10331
- const end = getEventEndDate(event);
10332
- if (!start) return "";
10333
- const fmt = (d) => format(d, "d 'de' MMM", { locale: ptBR });
10334
- if (!end || isSameDay(start, end)) {
10335
- return fmt(start) + (event.allDay ? " \xB7 Dia todo" : " \xB7 " + format(start, "HH:mm"));
10336
- }
10337
- const days = differenceInCalendarDays(end, start) + 1;
10338
- return `${fmt(start)} \u2192 ${fmt(end)} \xB7 ${days} dias`;
10339
- }
10340
10420
  function MultiDayOverlay({
10341
10421
  bars,
10342
10422
  weekIndex,
@@ -10359,7 +10439,7 @@ function MultiDayOverlay({
10359
10439
  /* @__PURE__ */ jsx(TooltipTriggerBase, { asChild: true, children: /* @__PURE__ */ jsx(
10360
10440
  "div",
10361
10441
  {
10362
- className: "absolute pointer-events-auto px-1.5",
10442
+ className: "absolute pointer-events-auto px-[5px]",
10363
10443
  style: {
10364
10444
  left: continuesFromPrev ? `${colStart / 7 * 100}%` : `calc(${colStart / 7 * 100}% + 3px)`,
10365
10445
  right: continuesToNext ? `${100 - (colStart + colSpan) / 7 * 100}%` : `calc(${100 - (colStart + colSpan) / 7 * 100}% + 3px)`,
@@ -10379,7 +10459,10 @@ function MultiDayOverlay({
10379
10459
  onEventSelect(event, e);
10380
10460
  },
10381
10461
  view: "month",
10382
- className: cn("w-full", isHovered && "[filter:brightness(0.92)]"),
10462
+ className: cn(
10463
+ "w-full",
10464
+ isHovered && "[filter:brightness(0.92)]"
10465
+ ),
10383
10466
  children: /* @__PURE__ */ jsxs("span", { className: "flex items-center gap-0.5 w-full min-w-0", children: [
10384
10467
  continuesFromPrev && /* @__PURE__ */ jsx("span", { className: "shrink-0 opacity-50 leading-none mr-0.5 flex items-center", children: /* @__PURE__ */ jsx(CaretLeftIcon, { size: 10, weight: "bold" }) }),
10385
10468
  !event.allDay && isFirstDay && /* @__PURE__ */ jsx("span", { className: "shrink-0 font-normal opacity-75 text-[10px] bg-white/15 px-1 py-0.5 rounded-full leading-none", children: format(eventStart, "HH:mm") }),
@@ -10403,7 +10486,7 @@ function MultiDayOverlay({
10403
10486
  ) }),
10404
10487
  /* @__PURE__ */ jsxs(TooltipContentBase, { side: "top", children: [
10405
10488
  /* @__PURE__ */ jsx("p", { className: "font-semibold truncate max-w-[200px]", children: event.title }),
10406
- /* @__PURE__ */ jsx("p", { className: "opacity-80 mt-0.5 leading-snug", children: formatDuration(event) }),
10489
+ /* @__PURE__ */ jsx("p", { className: "opacity-80 mt-0.5 leading-snug", children: formatDurationAgenda(event) }),
10407
10490
  event.location && /* @__PURE__ */ jsxs("p", { className: "opacity-60 mt-0.5 truncate text-[11px] max-w-[200px]", children: [
10408
10491
  /* @__PURE__ */ jsx(MapPinIcon, { size: 15 }),
10409
10492
  " ",
@@ -10601,20 +10684,31 @@ function MonthViewAgenda({
10601
10684
  {
10602
10685
  "aria-hidden": isHidden ? "true" : void 0,
10603
10686
  className: "aria-hidden:hidden",
10604
- children: /* @__PURE__ */ jsx(
10605
- EventItemAgenda,
10606
- {
10607
- event,
10608
- isFirstDay: true,
10609
- isLastDay: true,
10610
- onClick: (e) => handleEventClick(event, e),
10611
- view: "month",
10612
- children: /* @__PURE__ */ jsxs("span", { className: "flex items-center gap-1 sm:gap-1.5 truncate text-[11px] relative z-10", children: [
10613
- !event.allDay && /* @__PURE__ */ jsx("span", { className: "font-normal opacity-80 text-[10px] sm:text-[11px] bg-white/10 px-1 py-0.5 rounded-full", children: format(eventStart, "HH:mm") }),
10614
- /* @__PURE__ */ jsx("span", { className: "font-semibold truncate", children: event.title })
10687
+ children: /* @__PURE__ */ jsx(TooltipProviderBase, { delayDuration: 400, children: /* @__PURE__ */ jsxs(TooltipBase, { children: [
10688
+ /* @__PURE__ */ jsx(TooltipTriggerBase, { asChild: true, children: /* @__PURE__ */ jsx("div", { className: "w-full", children: /* @__PURE__ */ jsx(
10689
+ EventItemAgenda,
10690
+ {
10691
+ event,
10692
+ isFirstDay: true,
10693
+ isLastDay: true,
10694
+ onClick: (e) => handleEventClick(event, e),
10695
+ view: "month",
10696
+ children: /* @__PURE__ */ jsxs("span", { className: "flex items-center gap-1 sm:gap-1.5 truncate text-[11px] relative z-10", children: [
10697
+ !event.allDay && /* @__PURE__ */ jsx("span", { className: "font-normal opacity-80 text-[10px] sm:text-[11px] bg-white/10 px-1 py-0.5 rounded-full", children: format(eventStart, "HH:mm") }),
10698
+ /* @__PURE__ */ jsx("span", { className: "font-semibold truncate", children: event.title })
10699
+ ] })
10700
+ }
10701
+ ) }) }),
10702
+ /* @__PURE__ */ jsxs(TooltipContentBase, { side: "top", children: [
10703
+ /* @__PURE__ */ jsx("p", { className: "font-semibold truncate max-w-[200px]", children: event.title }),
10704
+ /* @__PURE__ */ jsx("p", { className: "opacity-80 mt-0.5 leading-snug", children: formatDurationAgenda(event) }),
10705
+ event.location && /* @__PURE__ */ jsxs("p", { className: "opacity-60 mt-0.5 truncate text-[11px] max-w-[200px] flex items-center gap-1", children: [
10706
+ /* @__PURE__ */ jsx(MapPinIcon, { size: 14 }),
10707
+ " ",
10708
+ event.location
10615
10709
  ] })
10616
- }
10617
- )
10710
+ ] })
10711
+ ] }) })
10618
10712
  },
10619
10713
  event.id
10620
10714
  );
@@ -11018,38 +11112,48 @@ function WeekViewAgenda({
11018
11112
  slot
11019
11113
  } = bar;
11020
11114
  const showTitle = isFirstDay || !isFirstDay && colStart === 0;
11021
- return /* @__PURE__ */ jsx(
11022
- "div",
11023
- {
11024
- className: "absolute px-0.5",
11025
- style: {
11026
- left: `calc(${colStart / 7 * 100}% + 2px)`,
11027
- width: `calc(${colSpan / 7 * 100}% - 4px)`,
11028
- top: EventGapAgenda + slot * rowH,
11029
- height: EventHeightAgenda
11030
- },
11031
- children: /* @__PURE__ */ jsx(
11032
- EventItemAgenda,
11033
- {
11034
- event,
11035
- isFirstDay,
11036
- isLastDay,
11037
- onClick: (e) => {
11038
- e.stopPropagation();
11039
- handleEventClick(event, e);
11040
- },
11041
- view: "month",
11042
- className: "h-full",
11043
- children: /* @__PURE__ */ jsxs("span", { className: "flex items-center gap-1 min-w-0 w-full", children: [
11044
- !isFirstDay && colStart === 0 && /* @__PURE__ */ jsx("span", { className: "shrink-0 text-[11px] font-bold opacity-60", children: /* @__PURE__ */ jsx(CaretLeftIcon$1, {}) }),
11045
- showTitle && /* @__PURE__ */ jsx("span", { className: "truncate text-xs font-medium", children: event.title }),
11046
- !isLastDay && colStart + colSpan === 7 && /* @__PURE__ */ jsx("span", { className: "shrink-0 ml-auto text-[11px] font-bold opacity-60", children: /* @__PURE__ */ jsx(CaretRightIcon$1, {}) })
11047
- ] })
11048
- }
11049
- )
11050
- },
11051
- event.id
11052
- );
11115
+ return /* @__PURE__ */ jsx(TooltipProviderBase, { delayDuration: 400, children: /* @__PURE__ */ jsxs(TooltipBase, { children: [
11116
+ /* @__PURE__ */ jsx(TooltipTriggerBase, { asChild: true, children: /* @__PURE__ */ jsx(
11117
+ "div",
11118
+ {
11119
+ className: "absolute px-0.5",
11120
+ style: {
11121
+ left: `calc(${colStart / 7 * 100}% + 2px)`,
11122
+ width: `calc(${colSpan / 7 * 100}% - 4px)`,
11123
+ top: EventGapAgenda + slot * rowH,
11124
+ height: EventHeightAgenda
11125
+ },
11126
+ children: /* @__PURE__ */ jsx(
11127
+ EventItemAgenda,
11128
+ {
11129
+ event,
11130
+ isFirstDay,
11131
+ isLastDay,
11132
+ onClick: (e) => {
11133
+ e.stopPropagation();
11134
+ handleEventClick(event, e);
11135
+ },
11136
+ view: "month",
11137
+ className: "h-full",
11138
+ children: /* @__PURE__ */ jsxs("span", { className: "flex items-center gap-1 min-w-0 w-full", children: [
11139
+ !isFirstDay && colStart === 0 && /* @__PURE__ */ jsx("span", { className: "shrink-0 text-[11px] font-bold opacity-60", children: /* @__PURE__ */ jsx(CaretLeftIcon$1, {}) }),
11140
+ showTitle && /* @__PURE__ */ jsx("span", { className: "truncate text-xs font-medium", children: event.title }),
11141
+ !isLastDay && colStart + colSpan === 7 && /* @__PURE__ */ jsx("span", { className: "shrink-0 ml-auto text-[11px] font-bold opacity-60", children: /* @__PURE__ */ jsx(CaretRightIcon$1, {}) })
11142
+ ] })
11143
+ }
11144
+ )
11145
+ }
11146
+ ) }),
11147
+ /* @__PURE__ */ jsxs(TooltipContentBase, { side: "top", children: [
11148
+ /* @__PURE__ */ jsx("p", { className: "font-semibold truncate max-w-[200px]", children: event.title }),
11149
+ /* @__PURE__ */ jsx("p", { className: "opacity-80 mt-0.5 leading-snug", children: formatDurationAgenda(event) }),
11150
+ event.location && /* @__PURE__ */ jsxs("p", { className: "opacity-60 mt-0.5 truncate text-[11px] max-w-[200px] flex items-center gap-1", children: [
11151
+ /* @__PURE__ */ jsx(MapPinIcon$1, { size: 14 }),
11152
+ " ",
11153
+ event.location
11154
+ ] })
11155
+ ] })
11156
+ ] }) }, event.id);
11053
11157
  })
11054
11158
  ]
11055
11159
  }
@@ -11089,54 +11193,64 @@ function WeekViewAgenda({
11089
11193
  } = bar;
11090
11194
  const eventStart = getEventStartDate(event) ?? /* @__PURE__ */ new Date();
11091
11195
  const showTitle = isFirstDay || !isFirstDay && colStart === 0;
11092
- return /* @__PURE__ */ jsx(
11093
- "div",
11094
- {
11095
- className: "absolute px-0.5",
11096
- style: {
11097
- left: `calc(${colStart / 7 * 100}% + 2px)`,
11098
- width: `calc(${colSpan / 7 * 100}% - 4px)`,
11099
- top: EventGapAgenda + slot * rowH,
11100
- height: EventHeightAgenda
11101
- },
11102
- children: /* @__PURE__ */ jsx(
11103
- EventItemAgenda,
11104
- {
11105
- event,
11106
- isFirstDay,
11107
- isLastDay,
11108
- onClick: (e) => {
11109
- e.stopPropagation();
11110
- handleEventClick(event, e);
11111
- },
11112
- view: "month",
11113
- className: "h-full border-dashed",
11114
- children: /* @__PURE__ */ jsxs("span", { className: "flex items-center gap-1 min-w-0 w-full", children: [
11115
- !isFirstDay && colStart === 0 && /* @__PURE__ */ jsx("span", { className: "shrink-0 text-[11px] font-bold opacity-60", children: /* @__PURE__ */ jsx(CaretLeftIcon$1, {}) }),
11116
- showTitle && /* @__PURE__ */ jsxs(Fragment, { children: [
11117
- isFirstDay && /* @__PURE__ */ jsx("span", { className: "font-normal opacity-80 text-[10px] sm:text-[11px] bg-white/10 px-1 py-0.5 rounded-full", children: format(eventStart, "HH:mm") }),
11118
- /* @__PURE__ */ jsx("span", { className: "truncate text-xs font-medium", children: event.title }),
11119
- isFirstDay && (() => {
11120
- const evStart = getEventStartDate(event);
11121
- const evEnd = getEventEndDate(event);
11122
- if (!evStart || !evEnd) return null;
11123
- const d = Math.round(
11124
- (evEnd.getTime() - evStart.getTime()) / 864e5
11125
- ) + 1;
11126
- if (d < 2) return null;
11127
- return /* @__PURE__ */ jsxs("span", { className: "shrink-0 inline-flex items-end font-bold leading-none px-1 py-0.5 text-[10px]", children: [
11128
- d,
11129
- "d"
11130
- ] });
11131
- })()
11132
- ] }),
11133
- !isLastDay && colStart + colSpan === 7 && /* @__PURE__ */ jsx("span", { className: "shrink-0 ml-auto text-[11px] font-bold opacity-60", children: /* @__PURE__ */ jsx(CaretRightIcon$1, {}) })
11134
- ] })
11135
- }
11136
- )
11137
- },
11138
- event.id
11139
- );
11196
+ return /* @__PURE__ */ jsx(TooltipProviderBase, { delayDuration: 400, children: /* @__PURE__ */ jsxs(TooltipBase, { children: [
11197
+ /* @__PURE__ */ jsx(TooltipTriggerBase, { asChild: true, children: /* @__PURE__ */ jsx(
11198
+ "div",
11199
+ {
11200
+ className: "absolute px-0.5",
11201
+ style: {
11202
+ left: `calc(${colStart / 7 * 100}% + 2px)`,
11203
+ width: `calc(${colSpan / 7 * 100}% - 4px)`,
11204
+ top: EventGapAgenda + slot * rowH,
11205
+ height: EventHeightAgenda
11206
+ },
11207
+ children: /* @__PURE__ */ jsx(
11208
+ EventItemAgenda,
11209
+ {
11210
+ event,
11211
+ isFirstDay,
11212
+ isLastDay,
11213
+ onClick: (e) => {
11214
+ e.stopPropagation();
11215
+ handleEventClick(event, e);
11216
+ },
11217
+ view: "month",
11218
+ className: "h-full border-dashed",
11219
+ children: /* @__PURE__ */ jsxs("span", { className: "flex items-center gap-1 min-w-0 w-full", children: [
11220
+ !isFirstDay && colStart === 0 && /* @__PURE__ */ jsx("span", { className: "shrink-0 text-[11px] font-bold opacity-60", children: /* @__PURE__ */ jsx(CaretLeftIcon$1, {}) }),
11221
+ showTitle && /* @__PURE__ */ jsxs(Fragment, { children: [
11222
+ isFirstDay && /* @__PURE__ */ jsx("span", { className: "font-normal opacity-80 text-[10px] sm:text-[11px] bg-white/10 px-1 py-0.5 rounded-full", children: format(eventStart, "HH:mm") }),
11223
+ /* @__PURE__ */ jsx("span", { className: "truncate text-xs font-medium", children: event.title }),
11224
+ isFirstDay && (() => {
11225
+ const evStart = getEventStartDate(event);
11226
+ const evEnd = getEventEndDate(event);
11227
+ if (!evStart || !evEnd) return null;
11228
+ const d = Math.round(
11229
+ (evEnd.getTime() - evStart.getTime()) / 864e5
11230
+ ) + 1;
11231
+ if (d < 2) return null;
11232
+ return /* @__PURE__ */ jsxs("span", { className: "shrink-0 inline-flex items-end font-bold leading-none px-1 py-0.5 text-[10px]", children: [
11233
+ d,
11234
+ "d"
11235
+ ] });
11236
+ })()
11237
+ ] }),
11238
+ !isLastDay && colStart + colSpan === 7 && /* @__PURE__ */ jsx("span", { className: "shrink-0 ml-auto text-[11px] font-bold opacity-60", children: /* @__PURE__ */ jsx(CaretRightIcon$1, {}) })
11239
+ ] })
11240
+ }
11241
+ )
11242
+ }
11243
+ ) }),
11244
+ /* @__PURE__ */ jsxs(TooltipContentBase, { side: "top", children: [
11245
+ /* @__PURE__ */ jsx("p", { className: "font-semibold truncate max-w-[200px]", children: event.title }),
11246
+ /* @__PURE__ */ jsx("p", { className: "opacity-80 mt-0.5 leading-snug", children: formatDurationAgenda(event) }),
11247
+ event.location && /* @__PURE__ */ jsxs("p", { className: "opacity-60 mt-0.5 truncate text-[11px] max-w-[200px] flex items-center gap-1", children: [
11248
+ /* @__PURE__ */ jsx(MapPinIcon$1, { size: 14 }),
11249
+ " ",
11250
+ event.location
11251
+ ] })
11252
+ ] })
11253
+ ] }) }, event.id);
11140
11254
  })
11141
11255
  ]
11142
11256
  }
@@ -11161,9 +11275,7 @@ function WeekViewAgenda({
11161
11275
  "data-today": isToday(day) || void 0,
11162
11276
  children: [
11163
11277
  (processedDayEvents[dayIndex] ?? []).map((positionedEvent) => {
11164
- const evStart = getEventStartDate(positionedEvent.event);
11165
- const evEnd = getEventEndDate(positionedEvent.event);
11166
- const timeLabel = evStart ? evEnd ? `${format(evStart, "HH:mm")} \u2013 ${format(evEnd, "HH:mm")}` : format(evStart, "HH:mm") : void 0;
11278
+ const timeLabel = formatDurationAgenda(positionedEvent.event);
11167
11279
  return /* @__PURE__ */ jsx(TooltipProviderBase, { children: /* @__PURE__ */ jsxs(TooltipBase, { delayDuration: 250, children: [
11168
11280
  /* @__PURE__ */ jsx(
11169
11281
  "div",
@@ -11199,7 +11311,7 @@ function WeekViewAgenda({
11199
11311
  className: "max-w-[220px] space-y-0.5",
11200
11312
  children: [
11201
11313
  /* @__PURE__ */ jsx("p", { className: "font-semibold text-sm leading-snug", children: positionedEvent.event.title }),
11202
- timeLabel && /* @__PURE__ */ jsx("p", { className: "text-xs opacity-90", children: timeLabel }),
11314
+ /* @__PURE__ */ jsx("p", { className: "text-xs opacity-90", children: timeLabel }),
11203
11315
  positionedEvent.event.location && /* @__PURE__ */ jsxs("p", { className: "text-xs flex items-center gap-2", children: [
11204
11316
  /* @__PURE__ */ jsx(MapPinIcon$1, { size: 15 }),
11205
11317
  " ",
@@ -11275,24 +11387,24 @@ function WeekViewAgenda({
11275
11387
  ] });
11276
11388
  }
11277
11389
  var colorBannerMap = {
11278
- sky: "from-sky-400 to-sky-500",
11279
- amber: "from-amber-400 to-amber-500",
11280
- violet: "from-violet-400 to-violet-500",
11281
- rose: "from-rose-400 to-rose-500",
11282
- emerald: "from-emerald-400 to-emerald-500",
11283
- orange: "from-orange-400 to-orange-500",
11284
- green: "from-green-400 to-green-500",
11285
- blue: "from-blue-400 to-blue-500",
11286
- red: "from-red-400 to-red-500",
11287
- purple: "from-purple-400 to-purple-500",
11288
- indigo: "from-indigo-400 to-indigo-500",
11289
- teal: "from-teal-400 to-teal-500",
11290
- pink: "from-pink-400 to-pink-500",
11291
- cyan: "from-cyan-400 to-cyan-500",
11292
- lime: "from-lime-400 to-lime-500",
11293
- fuchsia: "from-fuchsia-400 to-fuchsia-500"
11390
+ sky: "from-sky-400 via-sky-500 to-cyan-500",
11391
+ amber: "from-amber-400 via-amber-500 to-orange-400",
11392
+ violet: "from-violet-400 via-violet-500 to-purple-600",
11393
+ rose: "from-rose-400 via-rose-500 to-pink-500",
11394
+ emerald: "from-emerald-400 via-emerald-500 to-teal-500",
11395
+ orange: "from-orange-400 via-orange-500 to-amber-500",
11396
+ green: "from-green-400 via-green-500 to-emerald-500",
11397
+ blue: "from-blue-400 via-blue-500 to-indigo-500",
11398
+ red: "from-red-400 via-red-500 to-rose-500",
11399
+ purple: "from-purple-400 via-purple-500 to-violet-600",
11400
+ indigo: "from-indigo-400 via-indigo-500 to-blue-600",
11401
+ teal: "from-teal-400 via-teal-500 to-cyan-500",
11402
+ pink: "from-pink-400 via-pink-500 to-rose-400",
11403
+ cyan: "from-cyan-400 via-cyan-500 to-sky-500",
11404
+ lime: "from-lime-400 via-lime-500 to-green-500",
11405
+ fuchsia: "from-fuchsia-400 via-fuchsia-500 to-purple-500"
11294
11406
  };
11295
- function formatDuration2(minutes) {
11407
+ function formatDuration(minutes) {
11296
11408
  if (minutes <= 0) return "";
11297
11409
  const h = Math.floor(minutes / 60);
11298
11410
  const m = minutes % 60;
@@ -11312,7 +11424,7 @@ function EventDetailModalAgenda({
11312
11424
  }) {
11313
11425
  const [open, setOpen] = useState(true);
11314
11426
  if (!event) return null;
11315
- const color = event.color ?? "sky";
11427
+ const color = event.color ?? getAutoColorAgenda(event.id);
11316
11428
  const bannerGradient = colorBannerMap[color] ?? colorBannerMap.sky;
11317
11429
  const startDate = getEventStartDate(event);
11318
11430
  const endDate = getEventEndDate(event);
@@ -11357,83 +11469,60 @@ function EventDetailModalAgenda({
11357
11469
  setOpen(v);
11358
11470
  if (!v) onClose?.();
11359
11471
  },
11360
- children: /* @__PURE__ */ jsxs(DialogContentBase, { className: "p-0 overflow-hidden gap-0 border-none shadow-xl sm:max-w-md", children: [
11472
+ children: /* @__PURE__ */ jsxs(DialogContentBase, { className: "p-0 overflow-hidden gap-0 border-none shadow-2xl sm:max-w-md rounded-2xl", children: [
11361
11473
  /* @__PURE__ */ jsxs(
11362
11474
  "div",
11363
11475
  {
11364
11476
  className: cn(
11365
- "relative bg-gradient-to-tl w-full flex flex-col justify-end px-6 pt-12 pb-8 select-none transition-all duration-300",
11477
+ "relative bg-gradient-to-br w-full flex flex-col justify-end px-7 pt-14 pb-7 select-none overflow-hidden",
11366
11478
  bannerGradient
11367
11479
  ),
11368
11480
  children: [
11369
- /* @__PURE__ */ jsx("div", { className: "absolute top-4 left-6 flex items-center gap-2", children: dateSection.isAllDay ? /* @__PURE__ */ jsxs(Badge, { className: "bg-white/20 text-white backdrop-blur-md", children: [
11370
- /* @__PURE__ */ jsx(SunIcon, { size: 12, weight: "bold" }),
11481
+ /* @__PURE__ */ jsx("div", { className: "pointer-events-none absolute inset-0 bg-gradient-to-br from-white/20 via-transparent to-black/10" }),
11482
+ /* @__PURE__ */ jsx("div", { className: "absolute top-4 left-5 flex items-center gap-2 z-10", children: dateSection.isAllDay ? /* @__PURE__ */ jsxs(Badge, { className: "bg-black/20 text-white border border-white/20 backdrop-blur-sm shadow-none gap-1 text-[11px] font-medium", children: [
11483
+ /* @__PURE__ */ jsx(SunIcon, { size: 11, weight: "bold" }),
11371
11484
  "Dia todo"
11372
- ] }) : isMultiDay ? /* @__PURE__ */ jsxs(Badge, { className: "bg-white/20 text-white backdrop-blur-md", children: [
11373
- /* @__PURE__ */ jsx(CalendarDotsIcon, { size: 12, weight: "bold" }),
11374
- "Multi-dia"
11375
- ] }) : durationMinutes > 0 ? /* @__PURE__ */ jsxs(Badge, { className: "bg-white/20 text-white backdrop-blur-md", children: [
11376
- /* @__PURE__ */ jsx(ClockIcon, { size: 12, weight: "bold" }),
11377
- formatDuration2(durationMinutes)
11485
+ ] }) : isMultiDay ? /* @__PURE__ */ jsxs(Badge, { className: "bg-black/20 text-white border border-white/20 backdrop-blur-sm shadow-none gap-1 text-[11px] font-medium", children: [
11486
+ /* @__PURE__ */ jsx(CalendarDotsIcon, { size: 11, weight: "bold" }),
11487
+ formatDurationAgendaDays(event)
11488
+ ] }) : durationMinutes > 0 ? /* @__PURE__ */ jsxs(Badge, { className: "bg-black/20 text-white border border-white/20 backdrop-blur-sm shadow-none gap-1 text-[11px] font-medium", children: [
11489
+ /* @__PURE__ */ jsx(ClockIcon, { size: 11, weight: "bold" }),
11490
+ formatDuration(durationMinutes)
11378
11491
  ] }) : null }),
11379
- /* @__PURE__ */ jsx("h2", { className: "text-2xl sm:text-3xl font-bold text-white leading-tight tracking-tight drop-shadow-md", children: event.title })
11492
+ /* @__PURE__ */ jsx("h2", { className: "relative z-10 text-2xl sm:text-[1.75rem] font-bold text-white leading-tight tracking-tight drop-shadow-sm", children: event.title })
11380
11493
  ]
11381
11494
  }
11382
11495
  ),
11383
- /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-6 px-6 py-8 bg-background", children: [
11384
- /* @__PURE__ */ jsxs("div", { className: "flex items-start gap-4", children: [
11385
- /* @__PURE__ */ jsx("div", { className: "p-2 rounded-lg bg-muted/50 border border-border", children: /* @__PURE__ */ jsx(
11386
- CalendarDotsIcon,
11387
- {
11388
- size: 20,
11389
- weight: "duotone",
11390
- className: "text-primary"
11391
- }
11392
- ) }),
11393
- /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-1", children: [
11394
- /* @__PURE__ */ jsx("span", { className: "text-sm font-semibold text-foreground leading-none", children: dateSection.primary }),
11395
- dateSection.secondary && /* @__PURE__ */ jsx("div", { className: "flex items-center gap-2 text-sm text-muted-foreground mt-0.5", children: isMultiDay && !event.allDay || isMultiDay && dateSection.isAllDay ? /* @__PURE__ */ jsxs(Fragment, { children: [
11396
- /* @__PURE__ */ jsx(
11397
- ArrowRightIcon$1,
11398
- {
11399
- size: 12,
11400
- className: "shrink-0 opacity-70"
11401
- }
11402
- ),
11403
- /* @__PURE__ */ jsx("span", { className: "font-medium", children: dateSection.secondary })
11404
- ] }) : /* @__PURE__ */ jsx("span", { className: "font-medium text-foreground/70", children: dateSection.secondary }) })
11496
+ /* @__PURE__ */ jsxs("div", { className: "flex flex-col px-7 py-6 bg-background", children: [
11497
+ /* @__PURE__ */ jsxs("div", { className: "flex items-start gap-4 py-4", children: [
11498
+ /* @__PURE__ */ jsx("div", { className: "mt-0.5 p-2 rounded-xl bg-muted border border-border shrink-0", children: /* @__PURE__ */ jsx(CalendarDotsIcon, { size: 18, weight: "duotone", className: "text-primary" }) }),
11499
+ /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-0.5 min-w-0", children: [
11500
+ /* @__PURE__ */ jsx("span", { className: "text-[13px] font-semibold text-foreground leading-snug", children: dateSection.primary }),
11501
+ dateSection.secondary && /* @__PURE__ */ jsx("div", { className: "flex items-center gap-1.5 mt-0.5", children: isMultiDay && !event.allDay || isMultiDay && dateSection.isAllDay ? /* @__PURE__ */ jsxs(Fragment, { children: [
11502
+ /* @__PURE__ */ jsx(ArrowRightIcon$1, { size: 11, className: "shrink-0 text-muted-foreground/60" }),
11503
+ /* @__PURE__ */ jsx("span", { className: "text-[12px] font-medium text-muted-foreground", children: dateSection.secondary })
11504
+ ] }) : /* @__PURE__ */ jsx("span", { className: "text-[12px] font-medium text-muted-foreground", children: dateSection.secondary }) })
11405
11505
  ] })
11406
11506
  ] }),
11407
- /* @__PURE__ */ jsx(SeparatorBase, { className: "opacity-50" }),
11408
- event.location && /* @__PURE__ */ jsxs("div", { className: "flex items-start gap-4", children: [
11409
- /* @__PURE__ */ jsx("div", { className: "p-2 rounded-lg bg-muted/50 border border-border", children: /* @__PURE__ */ jsx(
11410
- MapPinIcon,
11411
- {
11412
- size: 20,
11413
- weight: "duotone",
11414
- className: "text-primary"
11415
- }
11416
- ) }),
11417
- /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-1", children: [
11418
- /* @__PURE__ */ jsx("span", { className: "text-xs font-medium text-muted-foreground uppercase tracking-wider", children: "Localiza\xE7\xE3o" }),
11419
- /* @__PURE__ */ jsx("span", { className: "text-sm text-foreground font-medium", children: event.location })
11420
- ] })
11507
+ (event.location || event.description) && /* @__PURE__ */ jsx(SeparatorBase, { className: "opacity-40" }),
11508
+ event.location && /* @__PURE__ */ jsxs(Fragment, { children: [
11509
+ /* @__PURE__ */ jsxs("div", { className: "flex items-start gap-4 py-4", children: [
11510
+ /* @__PURE__ */ jsx("div", { className: "mt-0.5 p-2 rounded-xl bg-muted border border-border shrink-0", children: /* @__PURE__ */ jsx(MapPinIcon, { size: 18, weight: "duotone", className: "text-primary" }) }),
11511
+ /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-0.5 min-w-0", children: [
11512
+ /* @__PURE__ */ jsx("span", { className: "text-[10px] font-medium uppercase tracking-widest text-muted-foreground/60", children: "Localiza\xE7\xE3o" }),
11513
+ /* @__PURE__ */ jsx("span", { className: "text-[13px] font-medium text-foreground leading-snug", children: event.location })
11514
+ ] })
11515
+ ] }),
11516
+ event.description && /* @__PURE__ */ jsx(SeparatorBase, { className: "opacity-40" })
11421
11517
  ] }),
11422
- event.description && /* @__PURE__ */ jsxs("div", { className: "flex items-start gap-4", children: [
11423
- /* @__PURE__ */ jsx("div", { className: "p-2 rounded-lg bg-muted/50 border border-border", children: /* @__PURE__ */ jsx(
11424
- AlignLeftIcon,
11425
- {
11426
- size: 20,
11427
- weight: "duotone",
11428
- className: "text-primary"
11429
- }
11430
- ) }),
11431
- /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-1", children: [
11432
- /* @__PURE__ */ jsx("span", { className: "text-xs font-medium text-muted-foreground uppercase tracking-wider", children: "Descri\xE7\xE3o" }),
11433
- /* @__PURE__ */ jsx("div", { className: "text-sm text-muted-foreground leading-relaxed font-normal", children: event.description })
11518
+ event.description && /* @__PURE__ */ jsxs("div", { className: "flex items-start gap-4 py-4", children: [
11519
+ /* @__PURE__ */ jsx("div", { className: "mt-0.5 p-2 rounded-xl bg-muted border border-border shrink-0", children: /* @__PURE__ */ jsx(AlignLeftIcon, { size: 18, weight: "duotone", className: "text-primary" }) }),
11520
+ /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-0.5 min-w-0", children: [
11521
+ /* @__PURE__ */ jsx("span", { className: "text-[10px] font-medium uppercase tracking-widest text-muted-foreground/60", children: "Descri\xE7\xE3o" }),
11522
+ /* @__PURE__ */ jsx("p", { className: "text-[13px] text-muted-foreground leading-relaxed font-normal", children: event.description })
11434
11523
  ] })
11435
11524
  ] }),
11436
- !event.location && !event.description && /* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground/60 italic text-center py-2 border border-dashed border-border rounded-lg", children: "Nenhum detalhe adicional dispon\xEDvel." })
11525
+ !event.location && !event.description && /* @__PURE__ */ jsx("p", { className: "py-4 text-[11px] text-muted-foreground/40 italic text-center", children: "Nenhum detalhe adicional dispon\xEDvel." })
11437
11526
  ] })
11438
11527
  ] })
11439
11528
  }
@@ -14670,8 +14759,8 @@ var createValueFormatter = (customFormatter, formatBR) => {
14670
14759
  });
14671
14760
  const prefixFormats = ["R$", "$", "\u20AC", "\xA3"];
14672
14761
  const suffixFormats = ["%", "kg", "km", "m", "L", "un", "t", "h", "min", "s"];
14673
- const getFormattedValue = (baseValue, format19) => {
14674
- const trimmedFormat = format19.trim();
14762
+ const getFormattedValue = (baseValue, format20) => {
14763
+ const trimmedFormat = format20.trim();
14675
14764
  if (prefixFormats.includes(trimmedFormat)) {
14676
14765
  return `${trimmedFormat} ${baseValue}`;
14677
14766
  }
@@ -14696,8 +14785,8 @@ var createValueFormatter = (customFormatter, formatBR) => {
14696
14785
  num = Number.isNaN(parsed) ? NaN : parsed;
14697
14786
  }
14698
14787
  const baseFormatted = formatBR && !Number.isNaN(num) ? nf.format(num) : String(formattedValue ?? value ?? "");
14699
- const format19 = propsDataKey && formatterMap[propsDataKey] ? formatterMap[propsDataKey] : "";
14700
- return format19 ? getFormattedValue(baseFormatted, format19) : baseFormatted;
14788
+ const format20 = propsDataKey && formatterMap[propsDataKey] ? formatterMap[propsDataKey] : "";
14789
+ return format20 ? getFormattedValue(baseFormatted, format20) : baseFormatted;
14701
14790
  };
14702
14791
  }
14703
14792
  if (typeof customFormatter === "function") {
@@ -20231,4 +20320,4 @@ function ControlledCombobox({
20231
20320
  );
20232
20321
  }
20233
20322
 
20234
- export { AddButton, Agenda, AgendaDaysToShow, AgendaDaysToShowAgenda, AgendaView, AlertDialogActionBase, AlertDialogBase, AlertDialogCancelBase, AlertDialogContentBase, AlertDialogDescriptionBase, AlertDialogFooterBase, AlertDialogHeaderBase, AlertDialogOverlayBase, AlertDialogPortalBase, AlertDialogTitleBase, AlertDialogTriggerBase, AvatarBase, AvatarCombobox, AvatarFallbackBase, AvatarImageBase, BackButton, Badge, BreadcrumbBase, BreadcrumbEllipsisBase, BreadcrumbItemBase, BreadcrumbLinkBase, BreadcrumbListBase, BreadcrumbPageBase, BreadcrumbSeparatorBase, Brush_default as Brush, ButtonBase, ButtonGroupBase, CENTER_INDEX, CalendarBase, CalendarDndProvider, CalendarDndProviderAgenda, CardBase, CardContentBase, CardDescriptionBase, CardFooterBase, CardHeaderBase, CardTitleBase, CarouselBase, ChangeButton, Chart_default as Chart, ChartControls, ChartHeader, ChartTotalLegend_default as ChartTotalLegend, CheckButton, CheckboxBase, CheckboxTree, CloseAllButton_default as CloseAllButton, CloseButton, CodeBlock, CollapsibleBase, CollapsibleContentBase, CollapsibleTriggerBase, Combobox, CommandBase, CommandDebouncedInputBase, CommandDialogBase, CommandEmptyBase, CommandGroupBase, CommandInputBase, CommandItemBase, CommandListBase, CommandSeparatorBase, CommandShortcutBase, ContextMenuBase, ContextMenuCheckboxItemBase, ContextMenuContentBase, ContextMenuGroupBase, ContextMenuItemBase, ContextMenuLabelBase, ContextMenuPortalBase, ContextMenuRadioGroupBase, ContextMenuRadioItemBase, ContextMenuSeparatorBase, ContextMenuShortcutBase, ContextMenuSubBase, ContextMenuSubContentBase, ContextMenuSubTriggerBase, ContextMenuTriggerBase, ControlledCombobox, CopyButton, DateTimePicker, DayView, DayViewAgenda, DebouncedInput, DefaultEndHour, DefaultEndHourAgenda, DefaultStartHour, DefaultStartHourAgenda, DestructiveDialog, DialogBase, DialogCloseBase, DialogContentBase, DialogDescriptionBase, DialogFooterBase, DialogHeaderBase, DialogOverlayBase, DialogPortalBase, DialogTitleBase, DialogTriggerBase, DownloadButton, DraggableEvent2 as DraggableEvent, DraggableTooltip_default as DraggableTooltip, DrawerBase, DrawerCloseBase, DrawerContentBase, DrawerDescriptionBase, DrawerFooterBase, DrawerHeaderBase, DrawerOverlayBase, DrawerPortalBase, DrawerTitleBase, DrawerTriggerBase, DropDownMenuBase, DropDownMenuCheckboxItemBase, DropDownMenuContentBase, DropDownMenuGroupBase, DropDownMenuItemBase, DropDownMenuLabelBase, DropDownMenuPortalBase, DropDownMenuRadioGroupBase, DropDownMenuRadioItemBase, DropDownMenuSeparatorBase, DropDownMenuShortcutBase, DropDownMenuSubBase, DropDownMenuSubContentBase, DropDownMenuSubTriggerBase, DropDownMenuTriggerBase, DroppableCell, DroppableCellAgenda, EditButton, EndHour, EndHourAgenda, ErrorMessage_default as ErrorMessage, EventAgenda, EventCalendar, EventDetailModalAgenda, EventDialog, EventGap, EventGapAgenda, EventHeight, EventHeightAgenda, EventItem, EventItemAgenda, EventsPopup, FavoriteButton, FileUploader, FilterButton, HideButton, Highlights_default as Highlights, HorizontalChart_default as HorizontalChart, HorizontalLegend_default as HorizontalLegend, HoverCardBase, HoverCardContentBase, HoverCardTriggerBase, ITEM_HEIGHT, InputBase, InputOTPBase, InputOTPGroupBase, InputOTPSeparatorBase, InputOTPSlotBase, LabelBase_default as LabelBase, Leaderboard, LikeButton, LoadingBase, LockButton, ModalBase, ModalCloseBase, ModalContentBase, ModalDescriptionBase, ModalFooterBase, ModalHeaderBase, ModalOverlayBase, ModalPortalBase, ModalTitleBase, ModalTriggerBase, ModeToggleBase, MonthView, MonthViewAgenda, MoreButton, MultiCombobox, MultiDayOverlay, MultiSelect, MultiSelectBase, MultiSelectContentBase, MultiSelectGroupBase, MultiSelectItemBase, MultiSelectSeparatorBase, MultiSelectTriggerBase, MultiSelectValueBase, NavigationMenuBase, NavigationMenuContentBase, NavigationMenuIndicatorBase, NavigationMenuItemBase, NavigationMenuLinkBase, NavigationMenuListBase, NavigationMenuTriggerBase, NavigationMenuViewportBase, NoData_default as NoData, NotificationButton, NumericInput, PeriodsDropdown_default as PeriodsDropdown, PopoverAnchorBase, PopoverBase, PopoverContentBase, PopoverTriggerBase, ProgressBase, ProgressCirclesBase, ProgressPanelsBase, ProgressSegmentsBase, RadialMenu, RangePicker, RefreshButton, SaveButton, ScrollAreaBase, ScrollBarBase, SearchButton, Select, SelectBase, SelectContentBase, SelectEmpty, SelectGroupBase, SelectItemBase, SelectLabelBase, SelectScrollDownButtonBase, SelectScrollUpButtonBase, SelectSeparatorBase, SelectTriggerBase, SelectValueBase, SeparatorBase, SettingsButton, SheetBase, SheetCloseBase, SheetContentBase, SheetDescriptionBase, SheetFooterBase, SheetHeaderBase, SheetOverlayBase, SheetPortalBase, SheetTitleBase, SheetTriggerBase, ShowOnly_default as ShowOnly, SidebarBase, SidebarContentBase, SidebarFooterBase, SidebarGroupActionBase, SidebarGroupBase, SidebarGroupContentBase, SidebarGroupLabelBase, SidebarHeaderBase, SidebarInputBase, SidebarInsetBase, SidebarMenuActionBase, SidebarMenuBadgeBase, SidebarMenuBase, SidebarMenuButtonBase, SidebarMenuItemBase, SidebarMenuSkeletonBase, SidebarMenuSubBase, SidebarMenuSubButtonBase, SidebarMenuSubItemBase, SidebarProviderBase, SidebarRailBase, SidebarSeparatorBase, SidebarTriggerBase, SkeletonBase, SlideBase, StartHour, StartHourAgenda, StatusIndicator, SwitchBase, SystemTooltip_default as SystemTooltip, TableBase, TableBodyBase, TableCaptionBase, TableCellBase, TableFooterBase, TableHeadBase, TableHeaderBase, TableRowBase, TabsBase, TabsContentBase, TabsListBase, TabsTriggerBase, TextAreaBase, ThemeProviderBase, TimePicker, TimePickerInput, TimeSeries_default as TimeSeries, Toaster, TooltipBase, TooltipContentBase, TooltipProviderBase, TooltipSimple_default as TooltipSimple, TooltipTriggerBase, TooltipWithTotal_default as TooltipWithTotal, UndatedEvents, UniversalTooltipRenderer, UnlockButton, UploadButton, UseSideBarBase, VISIBLE_ITEMS, ViewButton, VisibilityButton, WeekCellsHeight, WeekCellsHeightAgenda, WeekView, WeekViewAgenda, adaptDataForTooltip, addHoursToDate, addHoursToDateAgenda, addMinutesToDateAgenda, badgeVariants, buttonVariantsBase, compactTick, computeChartWidth, computeNiceMax, computeYAxisTickWidth, convert12HourTo24Hour, createValueFormatter, createYTickFormatter, detectDataFields, detectXAxis, display12HourValue, formatFieldName, formatLinePercentage, generateAdditionalColors, generateColorMap, getAgendaEventsForDay, getAgendaEventsForDayAgenda, getAllEventsForDay, getAllEventsForDayAgenda, getArrowByType, getBorderRadiusClasses, getBorderRadiusClassesAgenda, getDateByType, getEventColorClasses, getEventColorClassesAgenda, getEventEndDate, getEventStartDate, getEventsForDay, getEventsForDayAgenda, getItems, getMaxDataValue, getMinDataValue, getSpanningEventsForDay, getSpanningEventsForDayAgenda, getValid12Hour, getValidArrow12Hour, getValidArrowHour, getValidArrowMinuteOrSecond, getValidArrowNumber, getValidHour, getValidMinuteOrSecond, getValidNumber, isMultiDayEvent, isMultiDayEventAgenda, isValid12Hour, isValidHour, isValidMinuteOrSecond, niceCeil, normalizeAttendDate, processNeo4jData, renderInsideBarLabel, pillLabelRenderer_default as renderPillLabel, resolveChartMargins, resolveContainerPaddingLeft, set12Hours, setDateByType, setHours, setMinutes, setSeconds, sortEvents, sortEventsAgenda, toast, useBiaxial, useCalendarDnd, useCalendarDndAgenda, useChartClick, useChartDimensions, useChartHighlights, useChartLayout, useChartMinMax, useChartTooltips, useCurrentTimeIndicator, useCurrentTimeIndicatorAgenda, useDrag, useEventVisibility, useEventVisibilityAgenda, useIsMobile, useOpenTooltipForPeriod, useProcessedData, useSeriesOpacity, useTheme, useTimeSeriesRange, visualForItem };
20323
+ export { AddButton, Agenda, AgendaDaysToShow, AgendaDaysToShowAgenda, AgendaView, AlertDialogActionBase, AlertDialogBase, AlertDialogCancelBase, AlertDialogContentBase, AlertDialogDescriptionBase, AlertDialogFooterBase, AlertDialogHeaderBase, AlertDialogOverlayBase, AlertDialogPortalBase, AlertDialogTitleBase, AlertDialogTriggerBase, AvatarBase, AvatarCombobox, AvatarFallbackBase, AvatarImageBase, BackButton, Badge, BreadcrumbBase, BreadcrumbEllipsisBase, BreadcrumbItemBase, BreadcrumbLinkBase, BreadcrumbListBase, BreadcrumbPageBase, BreadcrumbSeparatorBase, Brush_default as Brush, ButtonBase, ButtonGroupBase, CENTER_INDEX, CalendarBase, CalendarDndProvider, CalendarDndProviderAgenda, CardBase, CardContentBase, CardDescriptionBase, CardFooterBase, CardHeaderBase, CardTitleBase, CarouselBase, ChangeButton, Chart_default as Chart, ChartControls, ChartHeader, ChartTotalLegend_default as ChartTotalLegend, CheckButton, CheckboxBase, CheckboxTree, CloseAllButton_default as CloseAllButton, CloseButton, CodeBlock, CollapsibleBase, CollapsibleContentBase, CollapsibleTriggerBase, Combobox, CommandBase, CommandDebouncedInputBase, CommandDialogBase, CommandEmptyBase, CommandGroupBase, CommandInputBase, CommandItemBase, CommandListBase, CommandSeparatorBase, CommandShortcutBase, ContextMenuBase, ContextMenuCheckboxItemBase, ContextMenuContentBase, ContextMenuGroupBase, ContextMenuItemBase, ContextMenuLabelBase, ContextMenuPortalBase, ContextMenuRadioGroupBase, ContextMenuRadioItemBase, ContextMenuSeparatorBase, ContextMenuShortcutBase, ContextMenuSubBase, ContextMenuSubContentBase, ContextMenuSubTriggerBase, ContextMenuTriggerBase, ControlledCombobox, CopyButton, DateTimePicker, DayView, DayViewAgenda, DebouncedInput, DefaultEndHour, DefaultEndHourAgenda, DefaultStartHour, DefaultStartHourAgenda, DestructiveDialog, DialogBase, DialogCloseBase, DialogContentBase, DialogDescriptionBase, DialogFooterBase, DialogHeaderBase, DialogOverlayBase, DialogPortalBase, DialogTitleBase, DialogTriggerBase, DownloadButton, DraggableEvent2 as DraggableEvent, DraggableTooltip_default as DraggableTooltip, DrawerBase, DrawerCloseBase, DrawerContentBase, DrawerDescriptionBase, DrawerFooterBase, DrawerHeaderBase, DrawerOverlayBase, DrawerPortalBase, DrawerTitleBase, DrawerTriggerBase, DropDownMenuBase, DropDownMenuCheckboxItemBase, DropDownMenuContentBase, DropDownMenuGroupBase, DropDownMenuItemBase, DropDownMenuLabelBase, DropDownMenuPortalBase, DropDownMenuRadioGroupBase, DropDownMenuRadioItemBase, DropDownMenuSeparatorBase, DropDownMenuShortcutBase, DropDownMenuSubBase, DropDownMenuSubContentBase, DropDownMenuSubTriggerBase, DropDownMenuTriggerBase, DroppableCell, DroppableCellAgenda, EditButton, EndHour, EndHourAgenda, ErrorMessage_default as ErrorMessage, EventAgenda, EventCalendar, EventDetailModalAgenda, EventDialog, EventGap, EventGapAgenda, EventHeight, EventHeightAgenda, EventItem, EventItemAgenda, EventsPopup, FavoriteButton, FileUploader, FilterButton, HideButton, Highlights_default as Highlights, HorizontalChart_default as HorizontalChart, HorizontalLegend_default as HorizontalLegend, HoverCardBase, HoverCardContentBase, HoverCardTriggerBase, ITEM_HEIGHT, InputBase, InputOTPBase, InputOTPGroupBase, InputOTPSeparatorBase, InputOTPSlotBase, LabelBase_default as LabelBase, Leaderboard, LikeButton, LoadingBase, LockButton, ModalBase, ModalCloseBase, ModalContentBase, ModalDescriptionBase, ModalFooterBase, ModalHeaderBase, ModalOverlayBase, ModalPortalBase, ModalTitleBase, ModalTriggerBase, ModeToggleBase, MonthView, MonthViewAgenda, MoreButton, MultiCombobox, MultiDayOverlay, MultiSelect, MultiSelectBase, MultiSelectContentBase, MultiSelectGroupBase, MultiSelectItemBase, MultiSelectSeparatorBase, MultiSelectTriggerBase, MultiSelectValueBase, NavigationMenuBase, NavigationMenuContentBase, NavigationMenuIndicatorBase, NavigationMenuItemBase, NavigationMenuLinkBase, NavigationMenuListBase, NavigationMenuTriggerBase, NavigationMenuViewportBase, NoData_default as NoData, NotificationButton, NumericInput, PeriodsDropdown_default as PeriodsDropdown, PopoverAnchorBase, PopoverBase, PopoverContentBase, PopoverTriggerBase, ProgressBase, ProgressCirclesBase, ProgressPanelsBase, ProgressSegmentsBase, RadialMenu, RangePicker, RefreshButton, SaveButton, ScrollAreaBase, ScrollBarBase, SearchButton, Select, SelectBase, SelectContentBase, SelectEmpty, SelectGroupBase, SelectItemBase, SelectLabelBase, SelectScrollDownButtonBase, SelectScrollUpButtonBase, SelectSeparatorBase, SelectTriggerBase, SelectValueBase, SeparatorBase, SettingsButton, SheetBase, SheetCloseBase, SheetContentBase, SheetDescriptionBase, SheetFooterBase, SheetHeaderBase, SheetOverlayBase, SheetPortalBase, SheetTitleBase, SheetTriggerBase, ShowOnly_default as ShowOnly, SidebarBase, SidebarContentBase, SidebarFooterBase, SidebarGroupActionBase, SidebarGroupBase, SidebarGroupContentBase, SidebarGroupLabelBase, SidebarHeaderBase, SidebarInputBase, SidebarInsetBase, SidebarMenuActionBase, SidebarMenuBadgeBase, SidebarMenuBase, SidebarMenuButtonBase, SidebarMenuItemBase, SidebarMenuSkeletonBase, SidebarMenuSubBase, SidebarMenuSubButtonBase, SidebarMenuSubItemBase, SidebarProviderBase, SidebarRailBase, SidebarSeparatorBase, SidebarTriggerBase, SkeletonBase, SlideBase, StartHour, StartHourAgenda, StatusIndicator, SwitchBase, SystemTooltip_default as SystemTooltip, TableBase, TableBodyBase, TableCaptionBase, TableCellBase, TableFooterBase, TableHeadBase, TableHeaderBase, TableRowBase, TabsBase, TabsContentBase, TabsListBase, TabsTriggerBase, TextAreaBase, ThemeProviderBase, TimePicker, TimePickerInput, TimeSeries_default as TimeSeries, Toaster, TooltipBase, TooltipContentBase, TooltipProviderBase, TooltipSimple_default as TooltipSimple, TooltipTriggerBase, TooltipWithTotal_default as TooltipWithTotal, UndatedEvents, UniversalTooltipRenderer, UnlockButton, UploadButton, UseSideBarBase, VISIBLE_ITEMS, ViewButton, VisibilityButton, WeekCellsHeight, WeekCellsHeightAgenda, WeekView, WeekViewAgenda, adaptDataForTooltip, addHoursToDate, addHoursToDateAgenda, addMinutesToDateAgenda, badgeVariants, buttonVariantsBase, compactTick, computeChartWidth, computeNiceMax, computeYAxisTickWidth, convert12HourTo24Hour, createValueFormatter, createYTickFormatter, detectDataFields, detectXAxis, display12HourValue, formatDurationAgenda, formatDurationAgendaDays, formatFieldName, formatLinePercentage, generateAdditionalColors, generateColorMap, getAgendaEventsForDay, getAgendaEventsForDayAgenda, getAllEventsForDay, getAllEventsForDayAgenda, getArrowByType, getAutoColorAgenda, getBorderRadiusClasses, getBorderRadiusClassesAgenda, getDateByType, getEventColorClasses, getEventColorClassesAgenda, getEventEndDate, getEventStartDate, getEventsForDay, getEventsForDayAgenda, getItems, getMaxDataValue, getMinDataValue, getSpanningEventsForDay, getSpanningEventsForDayAgenda, getValid12Hour, getValidArrow12Hour, getValidArrowHour, getValidArrowMinuteOrSecond, getValidArrowNumber, getValidHour, getValidMinuteOrSecond, getValidNumber, isMultiDayEvent, isMultiDayEventAgenda, isValid12Hour, isValidHour, isValidMinuteOrSecond, niceCeil, normalizeAttendDate, processNeo4jData, renderInsideBarLabel, pillLabelRenderer_default as renderPillLabel, resolveChartMargins, resolveContainerPaddingLeft, set12Hours, setDateByType, setHours, setMinutes, setSeconds, sortEvents, sortEventsAgenda, toast, useBiaxial, useCalendarDnd, useCalendarDndAgenda, useChartClick, useChartDimensions, useChartHighlights, useChartLayout, useChartMinMax, useChartTooltips, useCurrentTimeIndicator, useCurrentTimeIndicatorAgenda, useDrag, useEventVisibility, useEventVisibilityAgenda, useIsMobile, useOpenTooltipForPeriod, useProcessedData, useSeriesOpacity, useTheme, useTimeSeriesRange, visualForItem };