@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.css +163 -40
- package/dist/index.d.mts +8 -5
- package/dist/index.d.ts +8 -5
- package/dist/index.js +308 -216
- package/dist/index.mjs +307 -218
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -9022,8 +9022,40 @@ var StartHourAgenda = 0;
|
|
|
9022
9022
|
var EndHourAgenda = 24;
|
|
9023
9023
|
var DefaultStartHourAgenda = 9;
|
|
9024
9024
|
var DefaultEndHourAgenda = 10;
|
|
9025
|
-
function
|
|
9026
|
-
const
|
|
9025
|
+
function getAutoColorAgenda(id) {
|
|
9026
|
+
const colors2 = [
|
|
9027
|
+
"sky",
|
|
9028
|
+
"amber",
|
|
9029
|
+
"violet",
|
|
9030
|
+
"rose",
|
|
9031
|
+
"emerald",
|
|
9032
|
+
"orange",
|
|
9033
|
+
"green",
|
|
9034
|
+
"blue",
|
|
9035
|
+
"red",
|
|
9036
|
+
"purple",
|
|
9037
|
+
"indigo",
|
|
9038
|
+
"teal",
|
|
9039
|
+
"pink",
|
|
9040
|
+
"cyan",
|
|
9041
|
+
"lime",
|
|
9042
|
+
"fuchsia"
|
|
9043
|
+
];
|
|
9044
|
+
let hash = 0;
|
|
9045
|
+
for (let i = 0; i < id.length; i++) {
|
|
9046
|
+
hash = id.charCodeAt(i) + ((hash << 5) - hash);
|
|
9047
|
+
}
|
|
9048
|
+
const index = Math.abs(hash) % colors2.length;
|
|
9049
|
+
return colors2[index];
|
|
9050
|
+
}
|
|
9051
|
+
function getEventColorClassesAgenda(color, eventId) {
|
|
9052
|
+
let eventColor = color;
|
|
9053
|
+
if (!eventColor && eventId) {
|
|
9054
|
+
eventColor = getAutoColorAgenda(eventId);
|
|
9055
|
+
}
|
|
9056
|
+
if (!eventColor) {
|
|
9057
|
+
eventColor = "sky";
|
|
9058
|
+
}
|
|
9027
9059
|
switch (eventColor) {
|
|
9028
9060
|
case "sky":
|
|
9029
9061
|
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";
|
|
@@ -9168,6 +9200,28 @@ function addMinutesToDateAgenda(date, minutes) {
|
|
|
9168
9200
|
function addHoursToDateAgenda(date, hours) {
|
|
9169
9201
|
return addMinutesToDateAgenda(date, Math.round(hours * 60));
|
|
9170
9202
|
}
|
|
9203
|
+
function formatDurationAgenda(event) {
|
|
9204
|
+
const start = getEventStartDate(event);
|
|
9205
|
+
const end = getEventEndDate(event);
|
|
9206
|
+
if (!start) return "";
|
|
9207
|
+
const fmt = (d) => dateFns.format(d, "d 'de' MMM", { locale: locale.ptBR });
|
|
9208
|
+
if (!end || dateFns.isSameDay(start, end)) {
|
|
9209
|
+
return fmt(start) + (event.allDay ? " \xB7 Dia todo" : " \xB7 " + dateFns.format(start, "HH:mm"));
|
|
9210
|
+
}
|
|
9211
|
+
const days = dateFns.differenceInCalendarDays(end, start) + 1;
|
|
9212
|
+
return `${fmt(start)} \u2192 ${fmt(end)} \xB7 ${days} dias`;
|
|
9213
|
+
}
|
|
9214
|
+
function formatDurationAgendaDays(event) {
|
|
9215
|
+
const start = getEventStartDate(event);
|
|
9216
|
+
const end = getEventEndDate(event);
|
|
9217
|
+
if (!start) return "";
|
|
9218
|
+
const fmt = (d) => dateFns.format(d, "d 'de' MMM", { locale: locale.ptBR });
|
|
9219
|
+
if (!end || dateFns.isSameDay(start, end)) {
|
|
9220
|
+
return fmt(start) + (event.allDay ? " \xB7 Dia todo" : " \xB7 " + dateFns.format(start, "HH:mm"));
|
|
9221
|
+
}
|
|
9222
|
+
const days = dateFns.differenceInCalendarDays(end, start) + 1;
|
|
9223
|
+
return `${days} dias`;
|
|
9224
|
+
}
|
|
9171
9225
|
function useCurrentTimeIndicatorAgenda(currentDate, view) {
|
|
9172
9226
|
const [currentTimePosition, setCurrentTimePosition] = React32.useState(0);
|
|
9173
9227
|
const [currentTimeVisible, setCurrentTimeVisible] = React32.useState(false);
|
|
@@ -9236,7 +9290,7 @@ function EventWrapper({
|
|
|
9236
9290
|
return void 0;
|
|
9237
9291
|
})();
|
|
9238
9292
|
const isEventInPast = displayEnd ? dateFns.isPast(displayEnd) : false;
|
|
9239
|
-
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 ";
|
|
9293
|
+
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 ";
|
|
9240
9294
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
9241
9295
|
"button",
|
|
9242
9296
|
{
|
|
@@ -9281,7 +9335,7 @@ function EventItemAgenda({
|
|
|
9281
9335
|
const startDate = getEventStartDate(event);
|
|
9282
9336
|
const endDate = getEventEndDate(event);
|
|
9283
9337
|
const hasValidTime = !!startDate || !!endDate;
|
|
9284
|
-
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";
|
|
9338
|
+
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";
|
|
9285
9339
|
const displayStart = React32.useMemo(() => {
|
|
9286
9340
|
if (!hasValidTime) return void 0;
|
|
9287
9341
|
if (startDate) return currentTime || startDate;
|
|
@@ -9441,7 +9495,7 @@ function EventItemAgenda({
|
|
|
9441
9495
|
{
|
|
9442
9496
|
className: cn(
|
|
9443
9497
|
"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",
|
|
9444
|
-
getEventColorClassesAgenda(eventColor),
|
|
9498
|
+
getEventColorClassesAgenda(eventColor, event.id),
|
|
9445
9499
|
className
|
|
9446
9500
|
),
|
|
9447
9501
|
"aria-label": ariaLabel,
|
|
@@ -9694,14 +9748,31 @@ function DayViewAgenda({
|
|
|
9694
9748
|
const isFirstDay = eventStart ? dateFns.isSameDay(currentDate, eventStart) : false;
|
|
9695
9749
|
const isLastDay = eventEnd ? dateFns.isSameDay(currentDate, eventEnd) : false;
|
|
9696
9750
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
9697
|
-
|
|
9751
|
+
TooltipProviderBase,
|
|
9698
9752
|
{
|
|
9699
|
-
|
|
9700
|
-
|
|
9701
|
-
|
|
9702
|
-
|
|
9703
|
-
|
|
9704
|
-
|
|
9753
|
+
delayDuration: 400,
|
|
9754
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs(TooltipBase, { children: [
|
|
9755
|
+
/* @__PURE__ */ jsxRuntime.jsx(TooltipTriggerBase, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "w-full", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
9756
|
+
EventItemAgenda,
|
|
9757
|
+
{
|
|
9758
|
+
event,
|
|
9759
|
+
isFirstDay,
|
|
9760
|
+
isLastDay,
|
|
9761
|
+
onClick: (e) => handleEventClick(event, e),
|
|
9762
|
+
view: "month",
|
|
9763
|
+
children: /* @__PURE__ */ jsxRuntime.jsx("div", { children: event.title })
|
|
9764
|
+
}
|
|
9765
|
+
) }) }),
|
|
9766
|
+
/* @__PURE__ */ jsxRuntime.jsxs(TooltipContentBase, { side: "top", children: [
|
|
9767
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "font-semibold truncate max-w-[200px]", children: event.title }),
|
|
9768
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "opacity-80 mt-0.5 leading-snug", children: formatDurationAgenda(event) }),
|
|
9769
|
+
event.location && /* @__PURE__ */ jsxRuntime.jsxs("p", { className: "opacity-60 mt-0.5 truncate text-[11px] max-w-[200px] flex items-center gap-1", children: [
|
|
9770
|
+
/* @__PURE__ */ jsxRuntime.jsx(react.MapPinIcon, { size: 14 }),
|
|
9771
|
+
" ",
|
|
9772
|
+
event.location
|
|
9773
|
+
] })
|
|
9774
|
+
] })
|
|
9775
|
+
] })
|
|
9705
9776
|
},
|
|
9706
9777
|
`spanning-${event.id}`
|
|
9707
9778
|
);
|
|
@@ -9734,17 +9805,37 @@ function DayViewAgenda({
|
|
|
9734
9805
|
width: `${positionedEvent.width * 100}%`,
|
|
9735
9806
|
zIndex: positionedEvent.zIndex
|
|
9736
9807
|
},
|
|
9737
|
-
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
9738
|
-
|
|
9739
|
-
|
|
9740
|
-
|
|
9741
|
-
|
|
9742
|
-
|
|
9743
|
-
|
|
9744
|
-
|
|
9745
|
-
|
|
9746
|
-
|
|
9747
|
-
|
|
9808
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(TooltipProviderBase, { delayDuration: 400, children: /* @__PURE__ */ jsxRuntime.jsxs(TooltipBase, { children: [
|
|
9809
|
+
/* @__PURE__ */ jsxRuntime.jsx(TooltipTriggerBase, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "size-full", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
9810
|
+
EventItemAgenda,
|
|
9811
|
+
{
|
|
9812
|
+
event: evt,
|
|
9813
|
+
view: "day",
|
|
9814
|
+
isFirstDay,
|
|
9815
|
+
isLastDay,
|
|
9816
|
+
onClick: (e) => handleEventClick(evt, e),
|
|
9817
|
+
showTime: true
|
|
9818
|
+
}
|
|
9819
|
+
) }) }),
|
|
9820
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
9821
|
+
TooltipContentBase,
|
|
9822
|
+
{
|
|
9823
|
+
side: "top",
|
|
9824
|
+
sideOffset: 6,
|
|
9825
|
+
className: "max-w-[220px] space-y-0.5",
|
|
9826
|
+
children: [
|
|
9827
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "font-semibold text-sm leading-snug", children: evt.title }),
|
|
9828
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs opacity-90", children: formatDurationAgenda(evt) }),
|
|
9829
|
+
evt.location && /* @__PURE__ */ jsxRuntime.jsxs("p", { className: "text-xs flex items-center gap-2", children: [
|
|
9830
|
+
/* @__PURE__ */ jsxRuntime.jsx(react.MapPinIcon, { size: 15 }),
|
|
9831
|
+
" ",
|
|
9832
|
+
evt.location
|
|
9833
|
+
] }),
|
|
9834
|
+
evt.description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs opacity-75 line-clamp-2", children: evt.description })
|
|
9835
|
+
]
|
|
9836
|
+
}
|
|
9837
|
+
)
|
|
9838
|
+
] }) })
|
|
9748
9839
|
},
|
|
9749
9840
|
positionedEvent.event.id
|
|
9750
9841
|
);
|
|
@@ -10369,17 +10460,6 @@ function computeMultiDayBars(events, weekDays) {
|
|
|
10369
10460
|
}
|
|
10370
10461
|
return bars;
|
|
10371
10462
|
}
|
|
10372
|
-
function formatDuration(event) {
|
|
10373
|
-
const start = getEventStartDate(event);
|
|
10374
|
-
const end = getEventEndDate(event);
|
|
10375
|
-
if (!start) return "";
|
|
10376
|
-
const fmt = (d) => dateFns.format(d, "d 'de' MMM", { locale: locale.ptBR });
|
|
10377
|
-
if (!end || dateFns.isSameDay(start, end)) {
|
|
10378
|
-
return fmt(start) + (event.allDay ? " \xB7 Dia todo" : " \xB7 " + dateFns.format(start, "HH:mm"));
|
|
10379
|
-
}
|
|
10380
|
-
const days = dateFns.differenceInCalendarDays(end, start) + 1;
|
|
10381
|
-
return `${fmt(start)} \u2192 ${fmt(end)} \xB7 ${days} dias`;
|
|
10382
|
-
}
|
|
10383
10463
|
function MultiDayOverlay({
|
|
10384
10464
|
bars,
|
|
10385
10465
|
weekIndex,
|
|
@@ -10402,7 +10482,7 @@ function MultiDayOverlay({
|
|
|
10402
10482
|
/* @__PURE__ */ jsxRuntime.jsx(TooltipTriggerBase, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
10403
10483
|
"div",
|
|
10404
10484
|
{
|
|
10405
|
-
className: "absolute pointer-events-auto px-
|
|
10485
|
+
className: "absolute pointer-events-auto px-[5px]",
|
|
10406
10486
|
style: {
|
|
10407
10487
|
left: continuesFromPrev ? `${colStart / 7 * 100}%` : `calc(${colStart / 7 * 100}% + 3px)`,
|
|
10408
10488
|
right: continuesToNext ? `${100 - (colStart + colSpan) / 7 * 100}%` : `calc(${100 - (colStart + colSpan) / 7 * 100}% + 3px)`,
|
|
@@ -10422,7 +10502,10 @@ function MultiDayOverlay({
|
|
|
10422
10502
|
onEventSelect(event, e);
|
|
10423
10503
|
},
|
|
10424
10504
|
view: "month",
|
|
10425
|
-
className: cn(
|
|
10505
|
+
className: cn(
|
|
10506
|
+
"w-full",
|
|
10507
|
+
isHovered && "[filter:brightness(0.92)]"
|
|
10508
|
+
),
|
|
10426
10509
|
children: /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "flex items-center gap-0.5 w-full min-w-0", children: [
|
|
10427
10510
|
continuesFromPrev && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "shrink-0 opacity-50 leading-none mr-0.5 flex items-center", children: /* @__PURE__ */ jsxRuntime.jsx(react.CaretLeftIcon, { size: 10, weight: "bold" }) }),
|
|
10428
10511
|
!event.allDay && isFirstDay && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "shrink-0 font-normal opacity-75 text-[10px] bg-white/15 px-1 py-0.5 rounded-full leading-none", children: dateFns.format(eventStart, "HH:mm") }),
|
|
@@ -10446,7 +10529,7 @@ function MultiDayOverlay({
|
|
|
10446
10529
|
) }),
|
|
10447
10530
|
/* @__PURE__ */ jsxRuntime.jsxs(TooltipContentBase, { side: "top", children: [
|
|
10448
10531
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "font-semibold truncate max-w-[200px]", children: event.title }),
|
|
10449
|
-
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "opacity-80 mt-0.5 leading-snug", children:
|
|
10532
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "opacity-80 mt-0.5 leading-snug", children: formatDurationAgenda(event) }),
|
|
10450
10533
|
event.location && /* @__PURE__ */ jsxRuntime.jsxs("p", { className: "opacity-60 mt-0.5 truncate text-[11px] max-w-[200px]", children: [
|
|
10451
10534
|
/* @__PURE__ */ jsxRuntime.jsx(react.MapPinIcon, { size: 15 }),
|
|
10452
10535
|
" ",
|
|
@@ -10644,20 +10727,31 @@ function MonthViewAgenda({
|
|
|
10644
10727
|
{
|
|
10645
10728
|
"aria-hidden": isHidden ? "true" : void 0,
|
|
10646
10729
|
className: "aria-hidden:hidden",
|
|
10647
|
-
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
10648
|
-
|
|
10649
|
-
|
|
10650
|
-
|
|
10651
|
-
|
|
10652
|
-
|
|
10653
|
-
|
|
10654
|
-
|
|
10655
|
-
|
|
10656
|
-
|
|
10657
|
-
|
|
10730
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(TooltipProviderBase, { delayDuration: 400, children: /* @__PURE__ */ jsxRuntime.jsxs(TooltipBase, { children: [
|
|
10731
|
+
/* @__PURE__ */ jsxRuntime.jsx(TooltipTriggerBase, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "w-full", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
10732
|
+
EventItemAgenda,
|
|
10733
|
+
{
|
|
10734
|
+
event,
|
|
10735
|
+
isFirstDay: true,
|
|
10736
|
+
isLastDay: true,
|
|
10737
|
+
onClick: (e) => handleEventClick(event, e),
|
|
10738
|
+
view: "month",
|
|
10739
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "flex items-center gap-1 sm:gap-1.5 truncate text-[11px] relative z-10", children: [
|
|
10740
|
+
!event.allDay && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "font-normal opacity-80 text-[10px] sm:text-[11px] bg-white/10 px-1 py-0.5 rounded-full", children: dateFns.format(eventStart, "HH:mm") }),
|
|
10741
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "font-semibold truncate", children: event.title })
|
|
10742
|
+
] })
|
|
10743
|
+
}
|
|
10744
|
+
) }) }),
|
|
10745
|
+
/* @__PURE__ */ jsxRuntime.jsxs(TooltipContentBase, { side: "top", children: [
|
|
10746
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "font-semibold truncate max-w-[200px]", children: event.title }),
|
|
10747
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "opacity-80 mt-0.5 leading-snug", children: formatDurationAgenda(event) }),
|
|
10748
|
+
event.location && /* @__PURE__ */ jsxRuntime.jsxs("p", { className: "opacity-60 mt-0.5 truncate text-[11px] max-w-[200px] flex items-center gap-1", children: [
|
|
10749
|
+
/* @__PURE__ */ jsxRuntime.jsx(react.MapPinIcon, { size: 14 }),
|
|
10750
|
+
" ",
|
|
10751
|
+
event.location
|
|
10658
10752
|
] })
|
|
10659
|
-
}
|
|
10660
|
-
)
|
|
10753
|
+
] })
|
|
10754
|
+
] }) })
|
|
10661
10755
|
},
|
|
10662
10756
|
event.id
|
|
10663
10757
|
);
|
|
@@ -11061,38 +11155,48 @@ function WeekViewAgenda({
|
|
|
11061
11155
|
slot
|
|
11062
11156
|
} = bar;
|
|
11063
11157
|
const showTitle = isFirstDay || !isFirstDay && colStart === 0;
|
|
11064
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
11065
|
-
|
|
11066
|
-
|
|
11067
|
-
|
|
11068
|
-
|
|
11069
|
-
|
|
11070
|
-
|
|
11071
|
-
|
|
11072
|
-
|
|
11073
|
-
|
|
11074
|
-
|
|
11075
|
-
|
|
11076
|
-
|
|
11077
|
-
|
|
11078
|
-
|
|
11079
|
-
|
|
11080
|
-
|
|
11081
|
-
e
|
|
11082
|
-
|
|
11083
|
-
|
|
11084
|
-
|
|
11085
|
-
|
|
11086
|
-
|
|
11087
|
-
|
|
11088
|
-
|
|
11089
|
-
|
|
11090
|
-
|
|
11091
|
-
|
|
11092
|
-
|
|
11093
|
-
|
|
11094
|
-
|
|
11095
|
-
|
|
11158
|
+
return /* @__PURE__ */ jsxRuntime.jsx(TooltipProviderBase, { delayDuration: 400, children: /* @__PURE__ */ jsxRuntime.jsxs(TooltipBase, { children: [
|
|
11159
|
+
/* @__PURE__ */ jsxRuntime.jsx(TooltipTriggerBase, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
11160
|
+
"div",
|
|
11161
|
+
{
|
|
11162
|
+
className: "absolute px-0.5",
|
|
11163
|
+
style: {
|
|
11164
|
+
left: `calc(${colStart / 7 * 100}% + 2px)`,
|
|
11165
|
+
width: `calc(${colSpan / 7 * 100}% - 4px)`,
|
|
11166
|
+
top: EventGapAgenda + slot * rowH,
|
|
11167
|
+
height: EventHeightAgenda
|
|
11168
|
+
},
|
|
11169
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
11170
|
+
EventItemAgenda,
|
|
11171
|
+
{
|
|
11172
|
+
event,
|
|
11173
|
+
isFirstDay,
|
|
11174
|
+
isLastDay,
|
|
11175
|
+
onClick: (e) => {
|
|
11176
|
+
e.stopPropagation();
|
|
11177
|
+
handleEventClick(event, e);
|
|
11178
|
+
},
|
|
11179
|
+
view: "month",
|
|
11180
|
+
className: "h-full",
|
|
11181
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "flex items-center gap-1 min-w-0 w-full", children: [
|
|
11182
|
+
!isFirstDay && colStart === 0 && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "shrink-0 text-[11px] font-bold opacity-60", children: /* @__PURE__ */ jsxRuntime.jsx(ssr.CaretLeftIcon, {}) }),
|
|
11183
|
+
showTitle && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "truncate text-xs font-medium", children: event.title }),
|
|
11184
|
+
!isLastDay && colStart + colSpan === 7 && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "shrink-0 ml-auto text-[11px] font-bold opacity-60", children: /* @__PURE__ */ jsxRuntime.jsx(ssr.CaretRightIcon, {}) })
|
|
11185
|
+
] })
|
|
11186
|
+
}
|
|
11187
|
+
)
|
|
11188
|
+
}
|
|
11189
|
+
) }),
|
|
11190
|
+
/* @__PURE__ */ jsxRuntime.jsxs(TooltipContentBase, { side: "top", children: [
|
|
11191
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "font-semibold truncate max-w-[200px]", children: event.title }),
|
|
11192
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "opacity-80 mt-0.5 leading-snug", children: formatDurationAgenda(event) }),
|
|
11193
|
+
event.location && /* @__PURE__ */ jsxRuntime.jsxs("p", { className: "opacity-60 mt-0.5 truncate text-[11px] max-w-[200px] flex items-center gap-1", children: [
|
|
11194
|
+
/* @__PURE__ */ jsxRuntime.jsx(ssr.MapPinIcon, { size: 14 }),
|
|
11195
|
+
" ",
|
|
11196
|
+
event.location
|
|
11197
|
+
] })
|
|
11198
|
+
] })
|
|
11199
|
+
] }) }, event.id);
|
|
11096
11200
|
})
|
|
11097
11201
|
]
|
|
11098
11202
|
}
|
|
@@ -11132,54 +11236,64 @@ function WeekViewAgenda({
|
|
|
11132
11236
|
} = bar;
|
|
11133
11237
|
const eventStart = getEventStartDate(event) ?? /* @__PURE__ */ new Date();
|
|
11134
11238
|
const showTitle = isFirstDay || !isFirstDay && colStart === 0;
|
|
11135
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
11136
|
-
|
|
11137
|
-
|
|
11138
|
-
|
|
11139
|
-
|
|
11140
|
-
|
|
11141
|
-
|
|
11142
|
-
|
|
11143
|
-
|
|
11144
|
-
|
|
11145
|
-
|
|
11146
|
-
|
|
11147
|
-
|
|
11148
|
-
|
|
11149
|
-
|
|
11150
|
-
|
|
11151
|
-
|
|
11152
|
-
e
|
|
11153
|
-
|
|
11154
|
-
|
|
11155
|
-
|
|
11156
|
-
|
|
11157
|
-
|
|
11158
|
-
|
|
11159
|
-
|
|
11160
|
-
|
|
11161
|
-
|
|
11162
|
-
|
|
11163
|
-
|
|
11164
|
-
|
|
11165
|
-
|
|
11166
|
-
|
|
11167
|
-
|
|
11168
|
-
|
|
11169
|
-
|
|
11170
|
-
|
|
11171
|
-
|
|
11172
|
-
|
|
11173
|
-
|
|
11174
|
-
|
|
11175
|
-
|
|
11176
|
-
|
|
11177
|
-
|
|
11178
|
-
|
|
11179
|
-
|
|
11180
|
-
|
|
11181
|
-
|
|
11182
|
-
|
|
11239
|
+
return /* @__PURE__ */ jsxRuntime.jsx(TooltipProviderBase, { delayDuration: 400, children: /* @__PURE__ */ jsxRuntime.jsxs(TooltipBase, { children: [
|
|
11240
|
+
/* @__PURE__ */ jsxRuntime.jsx(TooltipTriggerBase, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
11241
|
+
"div",
|
|
11242
|
+
{
|
|
11243
|
+
className: "absolute px-0.5",
|
|
11244
|
+
style: {
|
|
11245
|
+
left: `calc(${colStart / 7 * 100}% + 2px)`,
|
|
11246
|
+
width: `calc(${colSpan / 7 * 100}% - 4px)`,
|
|
11247
|
+
top: EventGapAgenda + slot * rowH,
|
|
11248
|
+
height: EventHeightAgenda
|
|
11249
|
+
},
|
|
11250
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
11251
|
+
EventItemAgenda,
|
|
11252
|
+
{
|
|
11253
|
+
event,
|
|
11254
|
+
isFirstDay,
|
|
11255
|
+
isLastDay,
|
|
11256
|
+
onClick: (e) => {
|
|
11257
|
+
e.stopPropagation();
|
|
11258
|
+
handleEventClick(event, e);
|
|
11259
|
+
},
|
|
11260
|
+
view: "month",
|
|
11261
|
+
className: "h-full border-dashed",
|
|
11262
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "flex items-center gap-1 min-w-0 w-full", children: [
|
|
11263
|
+
!isFirstDay && colStart === 0 && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "shrink-0 text-[11px] font-bold opacity-60", children: /* @__PURE__ */ jsxRuntime.jsx(ssr.CaretLeftIcon, {}) }),
|
|
11264
|
+
showTitle && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
11265
|
+
isFirstDay && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "font-normal opacity-80 text-[10px] sm:text-[11px] bg-white/10 px-1 py-0.5 rounded-full", children: dateFns.format(eventStart, "HH:mm") }),
|
|
11266
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "truncate text-xs font-medium", children: event.title }),
|
|
11267
|
+
isFirstDay && (() => {
|
|
11268
|
+
const evStart = getEventStartDate(event);
|
|
11269
|
+
const evEnd = getEventEndDate(event);
|
|
11270
|
+
if (!evStart || !evEnd) return null;
|
|
11271
|
+
const d = Math.round(
|
|
11272
|
+
(evEnd.getTime() - evStart.getTime()) / 864e5
|
|
11273
|
+
) + 1;
|
|
11274
|
+
if (d < 2) return null;
|
|
11275
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "shrink-0 inline-flex items-end font-bold leading-none px-1 py-0.5 text-[10px]", children: [
|
|
11276
|
+
d,
|
|
11277
|
+
"d"
|
|
11278
|
+
] });
|
|
11279
|
+
})()
|
|
11280
|
+
] }),
|
|
11281
|
+
!isLastDay && colStart + colSpan === 7 && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "shrink-0 ml-auto text-[11px] font-bold opacity-60", children: /* @__PURE__ */ jsxRuntime.jsx(ssr.CaretRightIcon, {}) })
|
|
11282
|
+
] })
|
|
11283
|
+
}
|
|
11284
|
+
)
|
|
11285
|
+
}
|
|
11286
|
+
) }),
|
|
11287
|
+
/* @__PURE__ */ jsxRuntime.jsxs(TooltipContentBase, { side: "top", children: [
|
|
11288
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "font-semibold truncate max-w-[200px]", children: event.title }),
|
|
11289
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "opacity-80 mt-0.5 leading-snug", children: formatDurationAgenda(event) }),
|
|
11290
|
+
event.location && /* @__PURE__ */ jsxRuntime.jsxs("p", { className: "opacity-60 mt-0.5 truncate text-[11px] max-w-[200px] flex items-center gap-1", children: [
|
|
11291
|
+
/* @__PURE__ */ jsxRuntime.jsx(ssr.MapPinIcon, { size: 14 }),
|
|
11292
|
+
" ",
|
|
11293
|
+
event.location
|
|
11294
|
+
] })
|
|
11295
|
+
] })
|
|
11296
|
+
] }) }, event.id);
|
|
11183
11297
|
})
|
|
11184
11298
|
]
|
|
11185
11299
|
}
|
|
@@ -11204,9 +11318,7 @@ function WeekViewAgenda({
|
|
|
11204
11318
|
"data-today": dateFns.isToday(day) || void 0,
|
|
11205
11319
|
children: [
|
|
11206
11320
|
(processedDayEvents[dayIndex] ?? []).map((positionedEvent) => {
|
|
11207
|
-
const
|
|
11208
|
-
const evEnd = getEventEndDate(positionedEvent.event);
|
|
11209
|
-
const timeLabel = evStart ? evEnd ? `${dateFns.format(evStart, "HH:mm")} \u2013 ${dateFns.format(evEnd, "HH:mm")}` : dateFns.format(evStart, "HH:mm") : void 0;
|
|
11321
|
+
const timeLabel = formatDurationAgenda(positionedEvent.event);
|
|
11210
11322
|
return /* @__PURE__ */ jsxRuntime.jsx(TooltipProviderBase, { children: /* @__PURE__ */ jsxRuntime.jsxs(TooltipBase, { delayDuration: 250, children: [
|
|
11211
11323
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
11212
11324
|
"div",
|
|
@@ -11242,7 +11354,7 @@ function WeekViewAgenda({
|
|
|
11242
11354
|
className: "max-w-[220px] space-y-0.5",
|
|
11243
11355
|
children: [
|
|
11244
11356
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "font-semibold text-sm leading-snug", children: positionedEvent.event.title }),
|
|
11245
|
-
|
|
11357
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs opacity-90", children: timeLabel }),
|
|
11246
11358
|
positionedEvent.event.location && /* @__PURE__ */ jsxRuntime.jsxs("p", { className: "text-xs flex items-center gap-2", children: [
|
|
11247
11359
|
/* @__PURE__ */ jsxRuntime.jsx(ssr.MapPinIcon, { size: 15 }),
|
|
11248
11360
|
" ",
|
|
@@ -11318,24 +11430,24 @@ function WeekViewAgenda({
|
|
|
11318
11430
|
] });
|
|
11319
11431
|
}
|
|
11320
11432
|
var colorBannerMap = {
|
|
11321
|
-
sky: "from-sky-400
|
|
11322
|
-
amber: "from-amber-400
|
|
11323
|
-
violet: "from-violet-400
|
|
11324
|
-
rose: "from-rose-400
|
|
11325
|
-
emerald: "from-emerald-400
|
|
11326
|
-
orange: "from-orange-400
|
|
11327
|
-
green: "from-green-400
|
|
11328
|
-
blue: "from-blue-400
|
|
11329
|
-
red: "from-red-400
|
|
11330
|
-
purple: "from-purple-400
|
|
11331
|
-
indigo: "from-indigo-400
|
|
11332
|
-
teal: "from-teal-400
|
|
11333
|
-
pink: "from-pink-400
|
|
11334
|
-
cyan: "from-cyan-400
|
|
11335
|
-
lime: "from-lime-400
|
|
11336
|
-
fuchsia: "from-fuchsia-400
|
|
11433
|
+
sky: "from-sky-400 via-sky-500 to-cyan-500",
|
|
11434
|
+
amber: "from-amber-400 via-amber-500 to-orange-400",
|
|
11435
|
+
violet: "from-violet-400 via-violet-500 to-purple-600",
|
|
11436
|
+
rose: "from-rose-400 via-rose-500 to-pink-500",
|
|
11437
|
+
emerald: "from-emerald-400 via-emerald-500 to-teal-500",
|
|
11438
|
+
orange: "from-orange-400 via-orange-500 to-amber-500",
|
|
11439
|
+
green: "from-green-400 via-green-500 to-emerald-500",
|
|
11440
|
+
blue: "from-blue-400 via-blue-500 to-indigo-500",
|
|
11441
|
+
red: "from-red-400 via-red-500 to-rose-500",
|
|
11442
|
+
purple: "from-purple-400 via-purple-500 to-violet-600",
|
|
11443
|
+
indigo: "from-indigo-400 via-indigo-500 to-blue-600",
|
|
11444
|
+
teal: "from-teal-400 via-teal-500 to-cyan-500",
|
|
11445
|
+
pink: "from-pink-400 via-pink-500 to-rose-400",
|
|
11446
|
+
cyan: "from-cyan-400 via-cyan-500 to-sky-500",
|
|
11447
|
+
lime: "from-lime-400 via-lime-500 to-green-500",
|
|
11448
|
+
fuchsia: "from-fuchsia-400 via-fuchsia-500 to-purple-500"
|
|
11337
11449
|
};
|
|
11338
|
-
function
|
|
11450
|
+
function formatDuration(minutes) {
|
|
11339
11451
|
if (minutes <= 0) return "";
|
|
11340
11452
|
const h = Math.floor(minutes / 60);
|
|
11341
11453
|
const m = minutes % 60;
|
|
@@ -11355,7 +11467,7 @@ function EventDetailModalAgenda({
|
|
|
11355
11467
|
}) {
|
|
11356
11468
|
const [open, setOpen] = React32.useState(true);
|
|
11357
11469
|
if (!event) return null;
|
|
11358
|
-
const color = event.color ??
|
|
11470
|
+
const color = event.color ?? getAutoColorAgenda(event.id);
|
|
11359
11471
|
const bannerGradient = colorBannerMap[color] ?? colorBannerMap.sky;
|
|
11360
11472
|
const startDate = getEventStartDate(event);
|
|
11361
11473
|
const endDate = getEventEndDate(event);
|
|
@@ -11400,83 +11512,60 @@ function EventDetailModalAgenda({
|
|
|
11400
11512
|
setOpen(v);
|
|
11401
11513
|
if (!v) onClose?.();
|
|
11402
11514
|
},
|
|
11403
|
-
children: /* @__PURE__ */ jsxRuntime.jsxs(DialogContentBase, { className: "p-0 overflow-hidden gap-0 border-none shadow-
|
|
11515
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs(DialogContentBase, { className: "p-0 overflow-hidden gap-0 border-none shadow-2xl sm:max-w-md rounded-2xl", children: [
|
|
11404
11516
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
11405
11517
|
"div",
|
|
11406
11518
|
{
|
|
11407
11519
|
className: cn(
|
|
11408
|
-
"relative bg-gradient-to-
|
|
11520
|
+
"relative bg-gradient-to-br w-full flex flex-col justify-end px-7 pt-14 pb-7 select-none overflow-hidden",
|
|
11409
11521
|
bannerGradient
|
|
11410
11522
|
),
|
|
11411
11523
|
children: [
|
|
11412
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "
|
|
11413
|
-
|
|
11524
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "pointer-events-none absolute inset-0 bg-gradient-to-br from-white/20 via-transparent to-black/10" }),
|
|
11525
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute top-4 left-5 flex items-center gap-2 z-10", children: dateSection.isAllDay ? /* @__PURE__ */ jsxRuntime.jsxs(Badge, { className: "bg-black/20 text-white border border-white/20 backdrop-blur-sm shadow-none gap-1 text-[11px] font-medium", children: [
|
|
11526
|
+
/* @__PURE__ */ jsxRuntime.jsx(react.SunIcon, { size: 11, weight: "bold" }),
|
|
11414
11527
|
"Dia todo"
|
|
11415
|
-
] }) : isMultiDay ? /* @__PURE__ */ jsxRuntime.jsxs(Badge, { className: "bg-
|
|
11416
|
-
/* @__PURE__ */ jsxRuntime.jsx(react.CalendarDotsIcon, { size:
|
|
11417
|
-
|
|
11418
|
-
] }) : durationMinutes > 0 ? /* @__PURE__ */ jsxRuntime.jsxs(Badge, { className: "bg-
|
|
11419
|
-
/* @__PURE__ */ jsxRuntime.jsx(react.ClockIcon, { size:
|
|
11420
|
-
|
|
11528
|
+
] }) : isMultiDay ? /* @__PURE__ */ jsxRuntime.jsxs(Badge, { className: "bg-black/20 text-white border border-white/20 backdrop-blur-sm shadow-none gap-1 text-[11px] font-medium", children: [
|
|
11529
|
+
/* @__PURE__ */ jsxRuntime.jsx(react.CalendarDotsIcon, { size: 11, weight: "bold" }),
|
|
11530
|
+
formatDurationAgendaDays(event)
|
|
11531
|
+
] }) : durationMinutes > 0 ? /* @__PURE__ */ jsxRuntime.jsxs(Badge, { className: "bg-black/20 text-white border border-white/20 backdrop-blur-sm shadow-none gap-1 text-[11px] font-medium", children: [
|
|
11532
|
+
/* @__PURE__ */ jsxRuntime.jsx(react.ClockIcon, { size: 11, weight: "bold" }),
|
|
11533
|
+
formatDuration(durationMinutes)
|
|
11421
11534
|
] }) : null }),
|
|
11422
|
-
/* @__PURE__ */ jsxRuntime.jsx("h2", { className: "text-2xl sm:text-
|
|
11535
|
+
/* @__PURE__ */ jsxRuntime.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 })
|
|
11423
11536
|
]
|
|
11424
11537
|
}
|
|
11425
11538
|
),
|
|
11426
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col
|
|
11427
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-start gap-4", children: [
|
|
11428
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "p-2 rounded-
|
|
11429
|
-
|
|
11430
|
-
{
|
|
11431
|
-
|
|
11432
|
-
|
|
11433
|
-
className: "text-
|
|
11434
|
-
}
|
|
11435
|
-
) }),
|
|
11436
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-1", children: [
|
|
11437
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-sm font-semibold text-foreground leading-none", children: dateSection.primary }),
|
|
11438
|
-
dateSection.secondary && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center gap-2 text-sm text-muted-foreground mt-0.5", children: isMultiDay && !event.allDay || isMultiDay && dateSection.isAllDay ? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
11439
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
11440
|
-
react.ArrowRightIcon,
|
|
11441
|
-
{
|
|
11442
|
-
size: 12,
|
|
11443
|
-
className: "shrink-0 opacity-70"
|
|
11444
|
-
}
|
|
11445
|
-
),
|
|
11446
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "font-medium", children: dateSection.secondary })
|
|
11447
|
-
] }) : /* @__PURE__ */ jsxRuntime.jsx("span", { className: "font-medium text-foreground/70", children: dateSection.secondary }) })
|
|
11539
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col px-7 py-6 bg-background", children: [
|
|
11540
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-start gap-4 py-4", children: [
|
|
11541
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-0.5 p-2 rounded-xl bg-muted border border-border shrink-0", children: /* @__PURE__ */ jsxRuntime.jsx(react.CalendarDotsIcon, { size: 18, weight: "duotone", className: "text-primary" }) }),
|
|
11542
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-0.5 min-w-0", children: [
|
|
11543
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-[13px] font-semibold text-foreground leading-snug", children: dateSection.primary }),
|
|
11544
|
+
dateSection.secondary && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center gap-1.5 mt-0.5", children: isMultiDay && !event.allDay || isMultiDay && dateSection.isAllDay ? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
11545
|
+
/* @__PURE__ */ jsxRuntime.jsx(react.ArrowRightIcon, { size: 11, className: "shrink-0 text-muted-foreground/60" }),
|
|
11546
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-[12px] font-medium text-muted-foreground", children: dateSection.secondary })
|
|
11547
|
+
] }) : /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-[12px] font-medium text-muted-foreground", children: dateSection.secondary }) })
|
|
11448
11548
|
] })
|
|
11449
11549
|
] }),
|
|
11450
|
-
/* @__PURE__ */ jsxRuntime.jsx(SeparatorBase, { className: "opacity-
|
|
11451
|
-
event.location && /* @__PURE__ */ jsxRuntime.jsxs(
|
|
11452
|
-
/* @__PURE__ */ jsxRuntime.
|
|
11453
|
-
react.MapPinIcon,
|
|
11454
|
-
{
|
|
11455
|
-
|
|
11456
|
-
|
|
11457
|
-
|
|
11458
|
-
|
|
11459
|
-
|
|
11460
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-1", children: [
|
|
11461
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-xs font-medium text-muted-foreground uppercase tracking-wider", children: "Localiza\xE7\xE3o" }),
|
|
11462
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-sm text-foreground font-medium", children: event.location })
|
|
11463
|
-
] })
|
|
11550
|
+
(event.location || event.description) && /* @__PURE__ */ jsxRuntime.jsx(SeparatorBase, { className: "opacity-40" }),
|
|
11551
|
+
event.location && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
11552
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-start gap-4 py-4", children: [
|
|
11553
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-0.5 p-2 rounded-xl bg-muted border border-border shrink-0", children: /* @__PURE__ */ jsxRuntime.jsx(react.MapPinIcon, { size: 18, weight: "duotone", className: "text-primary" }) }),
|
|
11554
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-0.5 min-w-0", children: [
|
|
11555
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-[10px] font-medium uppercase tracking-widest text-muted-foreground/60", children: "Localiza\xE7\xE3o" }),
|
|
11556
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-[13px] font-medium text-foreground leading-snug", children: event.location })
|
|
11557
|
+
] })
|
|
11558
|
+
] }),
|
|
11559
|
+
event.description && /* @__PURE__ */ jsxRuntime.jsx(SeparatorBase, { className: "opacity-40" })
|
|
11464
11560
|
] }),
|
|
11465
|
-
event.description && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-start gap-4", children: [
|
|
11466
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "p-2 rounded-
|
|
11467
|
-
|
|
11468
|
-
{
|
|
11469
|
-
|
|
11470
|
-
weight: "duotone",
|
|
11471
|
-
className: "text-primary"
|
|
11472
|
-
}
|
|
11473
|
-
) }),
|
|
11474
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-1", children: [
|
|
11475
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-xs font-medium text-muted-foreground uppercase tracking-wider", children: "Descri\xE7\xE3o" }),
|
|
11476
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-sm text-muted-foreground leading-relaxed font-normal", children: event.description })
|
|
11561
|
+
event.description && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-start gap-4 py-4", children: [
|
|
11562
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-0.5 p-2 rounded-xl bg-muted border border-border shrink-0", children: /* @__PURE__ */ jsxRuntime.jsx(react.AlignLeftIcon, { size: 18, weight: "duotone", className: "text-primary" }) }),
|
|
11563
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-0.5 min-w-0", children: [
|
|
11564
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-[10px] font-medium uppercase tracking-widest text-muted-foreground/60", children: "Descri\xE7\xE3o" }),
|
|
11565
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-[13px] text-muted-foreground leading-relaxed font-normal", children: event.description })
|
|
11477
11566
|
] })
|
|
11478
11567
|
] }),
|
|
11479
|
-
!event.location && !event.description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-
|
|
11568
|
+
!event.location && !event.description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "py-4 text-[11px] text-muted-foreground/40 italic text-center", children: "Nenhum detalhe adicional dispon\xEDvel." })
|
|
11480
11569
|
] })
|
|
11481
11570
|
] })
|
|
11482
11571
|
}
|
|
@@ -14713,8 +14802,8 @@ var createValueFormatter = (customFormatter, formatBR) => {
|
|
|
14713
14802
|
});
|
|
14714
14803
|
const prefixFormats = ["R$", "$", "\u20AC", "\xA3"];
|
|
14715
14804
|
const suffixFormats = ["%", "kg", "km", "m", "L", "un", "t", "h", "min", "s"];
|
|
14716
|
-
const getFormattedValue = (baseValue,
|
|
14717
|
-
const trimmedFormat =
|
|
14805
|
+
const getFormattedValue = (baseValue, format20) => {
|
|
14806
|
+
const trimmedFormat = format20.trim();
|
|
14718
14807
|
if (prefixFormats.includes(trimmedFormat)) {
|
|
14719
14808
|
return `${trimmedFormat} ${baseValue}`;
|
|
14720
14809
|
}
|
|
@@ -14739,8 +14828,8 @@ var createValueFormatter = (customFormatter, formatBR) => {
|
|
|
14739
14828
|
num = Number.isNaN(parsed) ? NaN : parsed;
|
|
14740
14829
|
}
|
|
14741
14830
|
const baseFormatted = formatBR && !Number.isNaN(num) ? nf.format(num) : String(formattedValue ?? value ?? "");
|
|
14742
|
-
const
|
|
14743
|
-
return
|
|
14831
|
+
const format20 = propsDataKey && formatterMap[propsDataKey] ? formatterMap[propsDataKey] : "";
|
|
14832
|
+
return format20 ? getFormattedValue(baseFormatted, format20) : baseFormatted;
|
|
14744
14833
|
};
|
|
14745
14834
|
}
|
|
14746
14835
|
if (typeof customFormatter === "function") {
|
|
@@ -20602,6 +20691,8 @@ exports.createYTickFormatter = createYTickFormatter;
|
|
|
20602
20691
|
exports.detectDataFields = detectDataFields;
|
|
20603
20692
|
exports.detectXAxis = detectXAxis;
|
|
20604
20693
|
exports.display12HourValue = display12HourValue;
|
|
20694
|
+
exports.formatDurationAgenda = formatDurationAgenda;
|
|
20695
|
+
exports.formatDurationAgendaDays = formatDurationAgendaDays;
|
|
20605
20696
|
exports.formatFieldName = formatFieldName;
|
|
20606
20697
|
exports.formatLinePercentage = formatLinePercentage;
|
|
20607
20698
|
exports.generateAdditionalColors = generateAdditionalColors;
|
|
@@ -20611,6 +20702,7 @@ exports.getAgendaEventsForDayAgenda = getAgendaEventsForDayAgenda;
|
|
|
20611
20702
|
exports.getAllEventsForDay = getAllEventsForDay;
|
|
20612
20703
|
exports.getAllEventsForDayAgenda = getAllEventsForDayAgenda;
|
|
20613
20704
|
exports.getArrowByType = getArrowByType;
|
|
20705
|
+
exports.getAutoColorAgenda = getAutoColorAgenda;
|
|
20614
20706
|
exports.getBorderRadiusClasses = getBorderRadiusClasses;
|
|
20615
20707
|
exports.getBorderRadiusClassesAgenda = getBorderRadiusClassesAgenda;
|
|
20616
20708
|
exports.getDateByType = getDateByType;
|