@algenium/blocks 1.7.0 → 1.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +242 -173
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +36 -12
- package/dist/index.d.ts +36 -12
- package/dist/index.js +239 -173
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var React2 = require('react');
|
|
4
|
-
var nextThemes = require('next-themes');
|
|
5
4
|
var lucideReact = require('lucide-react');
|
|
5
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
6
|
+
var nextThemes = require('next-themes');
|
|
6
7
|
var framerMotion = require('framer-motion');
|
|
7
8
|
var DropdownMenuPrimitive = require('@radix-ui/react-dropdown-menu');
|
|
8
|
-
var jsxRuntime = require('react/jsx-runtime');
|
|
9
9
|
var reactSlot = require('@radix-ui/react-slot');
|
|
10
|
-
var TooltipPrimitive = require('@radix-ui/react-tooltip');
|
|
11
10
|
var SliderPrimitive = require('@radix-ui/react-slider');
|
|
12
11
|
var TogglePrimitive = require('@radix-ui/react-toggle');
|
|
13
12
|
var DialogPrimitive = require('@radix-ui/react-dialog');
|
|
14
13
|
var vaul = require('vaul');
|
|
15
14
|
var PopoverPrimitive = require('@radix-ui/react-popover');
|
|
16
15
|
var ScrollAreaPrimitive = require('@radix-ui/react-scroll-area');
|
|
16
|
+
var TooltipPrimitive = require('@radix-ui/react-tooltip');
|
|
17
17
|
var dateFns = require('date-fns');
|
|
18
18
|
var reactDayPicker = require('react-day-picker');
|
|
19
19
|
var valid = require('card-validator');
|
|
@@ -40,12 +40,12 @@ function _interopNamespace(e) {
|
|
|
40
40
|
|
|
41
41
|
var React2__namespace = /*#__PURE__*/_interopNamespace(React2);
|
|
42
42
|
var DropdownMenuPrimitive__namespace = /*#__PURE__*/_interopNamespace(DropdownMenuPrimitive);
|
|
43
|
-
var TooltipPrimitive__namespace = /*#__PURE__*/_interopNamespace(TooltipPrimitive);
|
|
44
43
|
var SliderPrimitive__namespace = /*#__PURE__*/_interopNamespace(SliderPrimitive);
|
|
45
44
|
var TogglePrimitive__namespace = /*#__PURE__*/_interopNamespace(TogglePrimitive);
|
|
46
45
|
var DialogPrimitive__namespace = /*#__PURE__*/_interopNamespace(DialogPrimitive);
|
|
47
46
|
var PopoverPrimitive__namespace = /*#__PURE__*/_interopNamespace(PopoverPrimitive);
|
|
48
47
|
var ScrollAreaPrimitive__namespace = /*#__PURE__*/_interopNamespace(ScrollAreaPrimitive);
|
|
48
|
+
var TooltipPrimitive__namespace = /*#__PURE__*/_interopNamespace(TooltipPrimitive);
|
|
49
49
|
var valid__default = /*#__PURE__*/_interopDefault(valid);
|
|
50
50
|
|
|
51
51
|
var CalendarContext = React2.createContext(null);
|
|
@@ -3115,6 +3115,93 @@ var twMerge = /* @__PURE__ */ createTailwindMerge(getDefaultConfig);
|
|
|
3115
3115
|
function cn(...inputs) {
|
|
3116
3116
|
return twMerge(clsx(inputs));
|
|
3117
3117
|
}
|
|
3118
|
+
function LoadingState({
|
|
3119
|
+
label = "Cargando\u2026",
|
|
3120
|
+
className
|
|
3121
|
+
}) {
|
|
3122
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
3123
|
+
"div",
|
|
3124
|
+
{
|
|
3125
|
+
role: "status",
|
|
3126
|
+
"aria-live": "polite",
|
|
3127
|
+
className: cn(
|
|
3128
|
+
"flex items-center justify-center gap-2 py-12 text-sm text-muted-foreground",
|
|
3129
|
+
className
|
|
3130
|
+
),
|
|
3131
|
+
children: [
|
|
3132
|
+
/* @__PURE__ */ jsxRuntime.jsx(lucideReact.Loader2, { className: "size-4 animate-spin", "aria-hidden": "true" }),
|
|
3133
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { children: label })
|
|
3134
|
+
]
|
|
3135
|
+
}
|
|
3136
|
+
);
|
|
3137
|
+
}
|
|
3138
|
+
function ErrorState({
|
|
3139
|
+
title = "Algo sali\xF3 mal",
|
|
3140
|
+
description,
|
|
3141
|
+
action,
|
|
3142
|
+
className
|
|
3143
|
+
}) {
|
|
3144
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
3145
|
+
"div",
|
|
3146
|
+
{
|
|
3147
|
+
role: "alert",
|
|
3148
|
+
className: cn(
|
|
3149
|
+
"flex flex-col items-center gap-3 rounded-xl border border-dashed border-destructive/40 bg-destructive/5 py-12 text-center",
|
|
3150
|
+
className
|
|
3151
|
+
),
|
|
3152
|
+
children: [
|
|
3153
|
+
/* @__PURE__ */ jsxRuntime.jsx(lucideReact.AlertTriangle, { className: "size-6 text-destructive", "aria-hidden": "true" }),
|
|
3154
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
3155
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "font-medium", children: title }),
|
|
3156
|
+
description ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-1 text-sm text-muted-foreground", children: description }) : null
|
|
3157
|
+
] }),
|
|
3158
|
+
action
|
|
3159
|
+
]
|
|
3160
|
+
}
|
|
3161
|
+
);
|
|
3162
|
+
}
|
|
3163
|
+
function EmptyState({
|
|
3164
|
+
title,
|
|
3165
|
+
description,
|
|
3166
|
+
action,
|
|
3167
|
+
icon: Icon = lucideReact.Inbox,
|
|
3168
|
+
variant = "default",
|
|
3169
|
+
className
|
|
3170
|
+
}) {
|
|
3171
|
+
const isCompact = variant === "compact";
|
|
3172
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
3173
|
+
"div",
|
|
3174
|
+
{
|
|
3175
|
+
className: cn(
|
|
3176
|
+
"flex flex-col items-center gap-3 text-center",
|
|
3177
|
+
isCompact ? "px-4 py-6" : "rounded-xl border border-dashed py-12",
|
|
3178
|
+
className
|
|
3179
|
+
),
|
|
3180
|
+
children: [
|
|
3181
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3182
|
+
Icon,
|
|
3183
|
+
{
|
|
3184
|
+
className: cn(
|
|
3185
|
+
"text-muted-foreground",
|
|
3186
|
+
isCompact ? "size-8 opacity-50" : "size-6"
|
|
3187
|
+
),
|
|
3188
|
+
"aria-hidden": "true"
|
|
3189
|
+
}
|
|
3190
|
+
),
|
|
3191
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
3192
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: cn("font-medium", isCompact && "text-sm"), children: title }),
|
|
3193
|
+
description ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-1 text-sm text-muted-foreground", children: description }) : null
|
|
3194
|
+
] }),
|
|
3195
|
+
action
|
|
3196
|
+
]
|
|
3197
|
+
}
|
|
3198
|
+
);
|
|
3199
|
+
}
|
|
3200
|
+
var miniMenuContentClassName = "max-h-none overflow-x-visible overflow-y-visible";
|
|
3201
|
+
var miniMenuContentDefaults = {
|
|
3202
|
+
sideOffset: 8,
|
|
3203
|
+
collisionPadding: 12
|
|
3204
|
+
};
|
|
3118
3205
|
function DropdownMenu({
|
|
3119
3206
|
...props
|
|
3120
3207
|
}) {
|
|
@@ -3413,52 +3500,6 @@ function Button({
|
|
|
3413
3500
|
}
|
|
3414
3501
|
);
|
|
3415
3502
|
}
|
|
3416
|
-
function TooltipProvider({
|
|
3417
|
-
delayDuration = 0,
|
|
3418
|
-
...props
|
|
3419
|
-
}) {
|
|
3420
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
3421
|
-
TooltipPrimitive__namespace.Provider,
|
|
3422
|
-
{
|
|
3423
|
-
"data-slot": "tooltip-provider",
|
|
3424
|
-
delayDuration,
|
|
3425
|
-
...props
|
|
3426
|
-
}
|
|
3427
|
-
);
|
|
3428
|
-
}
|
|
3429
|
-
function Tooltip({
|
|
3430
|
-
...props
|
|
3431
|
-
}) {
|
|
3432
|
-
return /* @__PURE__ */ jsxRuntime.jsx(TooltipProvider, { children: /* @__PURE__ */ jsxRuntime.jsx(TooltipPrimitive__namespace.Root, { "data-slot": "tooltip", ...props }) });
|
|
3433
|
-
}
|
|
3434
|
-
function TooltipTrigger({
|
|
3435
|
-
...props
|
|
3436
|
-
}) {
|
|
3437
|
-
return /* @__PURE__ */ jsxRuntime.jsx(TooltipPrimitive__namespace.Trigger, { "data-slot": "tooltip-trigger", ...props });
|
|
3438
|
-
}
|
|
3439
|
-
function TooltipContent({
|
|
3440
|
-
className,
|
|
3441
|
-
sideOffset = 0,
|
|
3442
|
-
children,
|
|
3443
|
-
...props
|
|
3444
|
-
}) {
|
|
3445
|
-
return /* @__PURE__ */ jsxRuntime.jsx(TooltipPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
3446
|
-
TooltipPrimitive__namespace.Content,
|
|
3447
|
-
{
|
|
3448
|
-
"data-slot": "tooltip-content",
|
|
3449
|
-
sideOffset,
|
|
3450
|
-
className: cn(
|
|
3451
|
-
"bg-foreground text-background animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-fit origin-(--radix-tooltip-content-transform-origin) rounded-md px-3 py-1.5 text-xs text-balance",
|
|
3452
|
-
className
|
|
3453
|
-
),
|
|
3454
|
-
...props,
|
|
3455
|
-
children: [
|
|
3456
|
-
children,
|
|
3457
|
-
/* @__PURE__ */ jsxRuntime.jsx(TooltipPrimitive__namespace.Arrow, { className: "bg-foreground fill-foreground z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]" })
|
|
3458
|
-
]
|
|
3459
|
-
}
|
|
3460
|
-
) });
|
|
3461
|
-
}
|
|
3462
3503
|
var defaultLabels = {
|
|
3463
3504
|
theme: "Theme",
|
|
3464
3505
|
system: "System",
|
|
@@ -3502,11 +3543,8 @@ function ThemeSwitcher({
|
|
|
3502
3543
|
size = "sm",
|
|
3503
3544
|
shape = "rounded",
|
|
3504
3545
|
variant = "default",
|
|
3505
|
-
align = "
|
|
3506
|
-
side = "
|
|
3507
|
-
tooltipSide = "bottom",
|
|
3508
|
-
tooltipAlign = "center",
|
|
3509
|
-
tooltipSideOffset = 8,
|
|
3546
|
+
align = "end",
|
|
3547
|
+
side = "bottom",
|
|
3510
3548
|
labels: userLabels
|
|
3511
3549
|
}) {
|
|
3512
3550
|
const { theme, setTheme } = nextThemes.useTheme();
|
|
@@ -3540,43 +3578,42 @@ function ThemeSwitcher({
|
|
|
3540
3578
|
const CurrentIcon = themes.find((t) => t.key === currentTheme)?.icon || lucideReact.Monitor;
|
|
3541
3579
|
if (variant === "mini") {
|
|
3542
3580
|
return /* @__PURE__ */ jsxRuntime.jsxs(DropdownMenu, { modal: false, children: [
|
|
3543
|
-
/* @__PURE__ */ jsxRuntime.
|
|
3544
|
-
|
|
3545
|
-
Button,
|
|
3546
|
-
{
|
|
3547
|
-
"data-testid": "theme-switcher",
|
|
3548
|
-
variant: "ghost",
|
|
3549
|
-
size: "icon",
|
|
3550
|
-
"aria-label": labels.theme,
|
|
3551
|
-
className: cn(sizes.buttonMini, shapeClass, className),
|
|
3552
|
-
children: /* @__PURE__ */ jsxRuntime.jsx(CurrentIcon, { className: sizes.iconMini })
|
|
3553
|
-
}
|
|
3554
|
-
) }) }),
|
|
3555
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3556
|
-
TooltipContent,
|
|
3557
|
-
{
|
|
3558
|
-
side: tooltipSide,
|
|
3559
|
-
align: tooltipAlign,
|
|
3560
|
-
sideOffset: tooltipSideOffset,
|
|
3561
|
-
children: labels.theme
|
|
3562
|
-
}
|
|
3563
|
-
)
|
|
3564
|
-
] }),
|
|
3565
|
-
/* @__PURE__ */ jsxRuntime.jsx(DropdownMenuContent, { side, align, sideOffset: 8, children: themes.map(({ key, icon: Icon }) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
3566
|
-
DropdownMenuItem,
|
|
3581
|
+
/* @__PURE__ */ jsxRuntime.jsx(DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
3582
|
+
Button,
|
|
3567
3583
|
{
|
|
3568
|
-
|
|
3569
|
-
|
|
3570
|
-
|
|
3571
|
-
|
|
3572
|
-
),
|
|
3573
|
-
children:
|
|
3574
|
-
|
|
3575
|
-
|
|
3576
|
-
|
|
3577
|
-
|
|
3578
|
-
|
|
3579
|
-
|
|
3584
|
+
"data-testid": "theme-switcher",
|
|
3585
|
+
variant: "ghost",
|
|
3586
|
+
size: "icon",
|
|
3587
|
+
"aria-label": labels.theme,
|
|
3588
|
+
className: cn(sizes.buttonMini, shapeClass, className),
|
|
3589
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(CurrentIcon, { className: sizes.iconMini })
|
|
3590
|
+
}
|
|
3591
|
+
) }),
|
|
3592
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3593
|
+
DropdownMenuContent,
|
|
3594
|
+
{
|
|
3595
|
+
side,
|
|
3596
|
+
align,
|
|
3597
|
+
sideOffset: miniMenuContentDefaults.sideOffset,
|
|
3598
|
+
collisionPadding: miniMenuContentDefaults.collisionPadding,
|
|
3599
|
+
className: miniMenuContentClassName,
|
|
3600
|
+
children: themes.map(({ key, icon: Icon }) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
3601
|
+
DropdownMenuItem,
|
|
3602
|
+
{
|
|
3603
|
+
onClick: () => handleThemeClick(key),
|
|
3604
|
+
className: cn(
|
|
3605
|
+
"gap-2 cursor-pointer",
|
|
3606
|
+
currentTheme === key && "bg-accent text-accent-foreground [&_svg]:text-accent-foreground"
|
|
3607
|
+
),
|
|
3608
|
+
children: [
|
|
3609
|
+
/* @__PURE__ */ jsxRuntime.jsx(Icon, { className: "h-4 w-4" }),
|
|
3610
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { children: labels[key] })
|
|
3611
|
+
]
|
|
3612
|
+
},
|
|
3613
|
+
key
|
|
3614
|
+
))
|
|
3615
|
+
}
|
|
3616
|
+
)
|
|
3580
3617
|
] });
|
|
3581
3618
|
}
|
|
3582
3619
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -3670,11 +3707,8 @@ function LanguageSwitcher({
|
|
|
3670
3707
|
shape = "rounded",
|
|
3671
3708
|
variant = "default",
|
|
3672
3709
|
showIcon = true,
|
|
3673
|
-
align = "
|
|
3674
|
-
side = "
|
|
3675
|
-
tooltipSide = "bottom",
|
|
3676
|
-
tooltipAlign = "center",
|
|
3677
|
-
tooltipSideOffset = 8
|
|
3710
|
+
align = "end",
|
|
3711
|
+
side = "bottom"
|
|
3678
3712
|
}) {
|
|
3679
3713
|
const context = useLanguageContext();
|
|
3680
3714
|
const contextLanguages = context?.languages?.map((lang) => ({
|
|
@@ -3692,34 +3726,24 @@ function LanguageSwitcher({
|
|
|
3692
3726
|
};
|
|
3693
3727
|
if (variant === "mini") {
|
|
3694
3728
|
return /* @__PURE__ */ jsxRuntime.jsxs(DropdownMenu, { modal: false, children: [
|
|
3695
|
-
/* @__PURE__ */ jsxRuntime.
|
|
3696
|
-
|
|
3697
|
-
|
|
3698
|
-
|
|
3699
|
-
|
|
3700
|
-
|
|
3701
|
-
|
|
3702
|
-
|
|
3703
|
-
|
|
3704
|
-
|
|
3705
|
-
) }) }),
|
|
3706
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3707
|
-
TooltipContent,
|
|
3708
|
-
{
|
|
3709
|
-
side: tooltipSide,
|
|
3710
|
-
align: tooltipAlign,
|
|
3711
|
-
sideOffset: tooltipSideOffset,
|
|
3712
|
-
children: defaultLabels4.language
|
|
3713
|
-
}
|
|
3714
|
-
)
|
|
3715
|
-
] }),
|
|
3729
|
+
/* @__PURE__ */ jsxRuntime.jsx(DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
3730
|
+
Button,
|
|
3731
|
+
{
|
|
3732
|
+
variant: "ghost",
|
|
3733
|
+
size: "icon",
|
|
3734
|
+
"aria-label": defaultLabels4.language,
|
|
3735
|
+
className: cn(sizes.buttonMini, shapeClass, className),
|
|
3736
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Languages, { className: sizes.iconMini })
|
|
3737
|
+
}
|
|
3738
|
+
) }),
|
|
3716
3739
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3717
3740
|
DropdownMenuContent,
|
|
3718
3741
|
{
|
|
3719
3742
|
side,
|
|
3720
3743
|
align,
|
|
3721
|
-
sideOffset:
|
|
3722
|
-
|
|
3744
|
+
sideOffset: miniMenuContentDefaults.sideOffset,
|
|
3745
|
+
collisionPadding: miniMenuContentDefaults.collisionPadding,
|
|
3746
|
+
className: cn(miniMenuContentClassName, "min-w-0 w-auto"),
|
|
3723
3747
|
children: languages.map(({ key, nativeName }) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
3724
3748
|
DropdownMenuItem,
|
|
3725
3749
|
{
|
|
@@ -3919,10 +3943,7 @@ function EnvironmentSwitcher({
|
|
|
3919
3943
|
shape = "rounded",
|
|
3920
3944
|
variant = "mini",
|
|
3921
3945
|
align = "end",
|
|
3922
|
-
side = "bottom"
|
|
3923
|
-
tooltipSide = "bottom",
|
|
3924
|
-
tooltipAlign = "center",
|
|
3925
|
-
tooltipSideOffset = 8
|
|
3946
|
+
side = "bottom"
|
|
3926
3947
|
}) {
|
|
3927
3948
|
const ctx = useEnvironmentContext();
|
|
3928
3949
|
const labels = { ...defaultLabels2, ...userLabels };
|
|
@@ -3938,53 +3959,18 @@ function EnvironmentSwitcher({
|
|
|
3938
3959
|
};
|
|
3939
3960
|
if (variant === "mini") {
|
|
3940
3961
|
return /* @__PURE__ */ jsxRuntime.jsxs(DropdownMenu, { modal: false, children: [
|
|
3941
|
-
/* @__PURE__ */ jsxRuntime.
|
|
3942
|
-
|
|
3943
|
-
Button,
|
|
3944
|
-
{
|
|
3945
|
-
"data-testid": "environment-switcher",
|
|
3946
|
-
variant: "outline",
|
|
3947
|
-
size: "sm",
|
|
3948
|
-
"aria-label": labels.environment,
|
|
3949
|
-
className: cn(
|
|
3950
|
-
sizes.buttonMini,
|
|
3951
|
-
shapeClass,
|
|
3952
|
-
"font-medium tabular-nums border-border bg-background",
|
|
3953
|
-
className
|
|
3954
|
-
),
|
|
3955
|
-
children: [
|
|
3956
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3957
|
-
"span",
|
|
3958
|
-
{
|
|
3959
|
-
className: cn(
|
|
3960
|
-
"rounded-full shrink-0 ring-1 ring-background",
|
|
3961
|
-
sizes.dot,
|
|
3962
|
-
getEnvironmentDotClass(environment)
|
|
3963
|
-
),
|
|
3964
|
-
"aria-hidden": true
|
|
3965
|
-
}
|
|
3966
|
-
),
|
|
3967
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "max-w-[5.5rem] truncate", children: getEnvironmentLabel(environment, labels) })
|
|
3968
|
-
]
|
|
3969
|
-
}
|
|
3970
|
-
) }) }),
|
|
3971
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3972
|
-
TooltipContent,
|
|
3973
|
-
{
|
|
3974
|
-
side: tooltipSide,
|
|
3975
|
-
align: tooltipAlign,
|
|
3976
|
-
sideOffset: tooltipSideOffset,
|
|
3977
|
-
children: labels.environment
|
|
3978
|
-
}
|
|
3979
|
-
)
|
|
3980
|
-
] }),
|
|
3981
|
-
/* @__PURE__ */ jsxRuntime.jsx(DropdownMenuContent, { side, align, sideOffset: 8, children: environments.map((env) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
3982
|
-
DropdownMenuItem,
|
|
3962
|
+
/* @__PURE__ */ jsxRuntime.jsx(DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
3963
|
+
Button,
|
|
3983
3964
|
{
|
|
3984
|
-
|
|
3965
|
+
"data-testid": "environment-switcher",
|
|
3966
|
+
variant: "outline",
|
|
3967
|
+
size: "sm",
|
|
3968
|
+
"aria-label": labels.environment,
|
|
3985
3969
|
className: cn(
|
|
3986
|
-
|
|
3987
|
-
|
|
3970
|
+
sizes.buttonMini,
|
|
3971
|
+
shapeClass,
|
|
3972
|
+
"font-medium tabular-nums border-border bg-background",
|
|
3973
|
+
className
|
|
3988
3974
|
),
|
|
3989
3975
|
children: [
|
|
3990
3976
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -3993,16 +3979,50 @@ function EnvironmentSwitcher({
|
|
|
3993
3979
|
className: cn(
|
|
3994
3980
|
"rounded-full shrink-0 ring-1 ring-background",
|
|
3995
3981
|
sizes.dot,
|
|
3996
|
-
getEnvironmentDotClass(
|
|
3982
|
+
getEnvironmentDotClass(environment)
|
|
3997
3983
|
),
|
|
3998
3984
|
"aria-hidden": true
|
|
3999
3985
|
}
|
|
4000
3986
|
),
|
|
4001
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { children: getEnvironmentLabel(
|
|
3987
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "max-w-[5.5rem] truncate", children: getEnvironmentLabel(environment, labels) })
|
|
4002
3988
|
]
|
|
4003
|
-
}
|
|
4004
|
-
|
|
4005
|
-
|
|
3989
|
+
}
|
|
3990
|
+
) }),
|
|
3991
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3992
|
+
DropdownMenuContent,
|
|
3993
|
+
{
|
|
3994
|
+
side,
|
|
3995
|
+
align,
|
|
3996
|
+
sideOffset: miniMenuContentDefaults.sideOffset,
|
|
3997
|
+
collisionPadding: miniMenuContentDefaults.collisionPadding,
|
|
3998
|
+
className: miniMenuContentClassName,
|
|
3999
|
+
children: environments.map((env) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
4000
|
+
DropdownMenuItem,
|
|
4001
|
+
{
|
|
4002
|
+
onClick: () => handleSelect(env),
|
|
4003
|
+
className: cn(
|
|
4004
|
+
"gap-2 cursor-pointer",
|
|
4005
|
+
environment === env && "bg-accent text-accent-foreground [&_svg]:text-accent-foreground"
|
|
4006
|
+
),
|
|
4007
|
+
children: [
|
|
4008
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
4009
|
+
"span",
|
|
4010
|
+
{
|
|
4011
|
+
className: cn(
|
|
4012
|
+
"rounded-full shrink-0 ring-1 ring-background",
|
|
4013
|
+
sizes.dot,
|
|
4014
|
+
getEnvironmentDotClass(env)
|
|
4015
|
+
),
|
|
4016
|
+
"aria-hidden": true
|
|
4017
|
+
}
|
|
4018
|
+
),
|
|
4019
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { children: getEnvironmentLabel(env, labels) })
|
|
4020
|
+
]
|
|
4021
|
+
},
|
|
4022
|
+
env
|
|
4023
|
+
))
|
|
4024
|
+
}
|
|
4025
|
+
)
|
|
4006
4026
|
] });
|
|
4007
4027
|
}
|
|
4008
4028
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
@@ -5860,6 +5880,52 @@ function UpcomingEvents({
|
|
|
5860
5880
|
);
|
|
5861
5881
|
}) });
|
|
5862
5882
|
}
|
|
5883
|
+
function TooltipProvider({
|
|
5884
|
+
delayDuration = 0,
|
|
5885
|
+
...props
|
|
5886
|
+
}) {
|
|
5887
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
5888
|
+
TooltipPrimitive__namespace.Provider,
|
|
5889
|
+
{
|
|
5890
|
+
"data-slot": "tooltip-provider",
|
|
5891
|
+
delayDuration,
|
|
5892
|
+
...props
|
|
5893
|
+
}
|
|
5894
|
+
);
|
|
5895
|
+
}
|
|
5896
|
+
function Tooltip({
|
|
5897
|
+
...props
|
|
5898
|
+
}) {
|
|
5899
|
+
return /* @__PURE__ */ jsxRuntime.jsx(TooltipProvider, { children: /* @__PURE__ */ jsxRuntime.jsx(TooltipPrimitive__namespace.Root, { "data-slot": "tooltip", ...props }) });
|
|
5900
|
+
}
|
|
5901
|
+
function TooltipTrigger({
|
|
5902
|
+
...props
|
|
5903
|
+
}) {
|
|
5904
|
+
return /* @__PURE__ */ jsxRuntime.jsx(TooltipPrimitive__namespace.Trigger, { "data-slot": "tooltip-trigger", ...props });
|
|
5905
|
+
}
|
|
5906
|
+
function TooltipContent({
|
|
5907
|
+
className,
|
|
5908
|
+
sideOffset = 0,
|
|
5909
|
+
children,
|
|
5910
|
+
...props
|
|
5911
|
+
}) {
|
|
5912
|
+
return /* @__PURE__ */ jsxRuntime.jsx(TooltipPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
5913
|
+
TooltipPrimitive__namespace.Content,
|
|
5914
|
+
{
|
|
5915
|
+
"data-slot": "tooltip-content",
|
|
5916
|
+
sideOffset,
|
|
5917
|
+
className: cn(
|
|
5918
|
+
"bg-foreground text-background animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-fit origin-(--radix-tooltip-content-transform-origin) rounded-md px-3 py-1.5 text-xs text-balance",
|
|
5919
|
+
className
|
|
5920
|
+
),
|
|
5921
|
+
...props,
|
|
5922
|
+
children: [
|
|
5923
|
+
children,
|
|
5924
|
+
/* @__PURE__ */ jsxRuntime.jsx(TooltipPrimitive__namespace.Arrow, { className: "bg-foreground fill-foreground z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]" })
|
|
5925
|
+
]
|
|
5926
|
+
}
|
|
5927
|
+
) });
|
|
5928
|
+
}
|
|
5863
5929
|
function CalendarSubscribeButton({
|
|
5864
5930
|
feedUrl,
|
|
5865
5931
|
label
|
|
@@ -8180,15 +8246,18 @@ exports.DropdownMenuSub = DropdownMenuSub;
|
|
|
8180
8246
|
exports.DropdownMenuSubContent = DropdownMenuSubContent;
|
|
8181
8247
|
exports.DropdownMenuSubTrigger = DropdownMenuSubTrigger;
|
|
8182
8248
|
exports.DropdownMenuTrigger = DropdownMenuTrigger;
|
|
8249
|
+
exports.EmptyState = EmptyState;
|
|
8183
8250
|
exports.EnvironmentBanner = EnvironmentBanner;
|
|
8184
8251
|
exports.EnvironmentContext = EnvironmentContext;
|
|
8185
8252
|
exports.EnvironmentDot = EnvironmentDot;
|
|
8186
8253
|
exports.EnvironmentMiniBadge = EnvironmentMiniBadge;
|
|
8187
8254
|
exports.EnvironmentSwitcher = EnvironmentSwitcher;
|
|
8255
|
+
exports.ErrorState = ErrorState;
|
|
8188
8256
|
exports.EventDialog = EventDialog;
|
|
8189
8257
|
exports.EventRsvpBadge = EventRsvpBadge;
|
|
8190
8258
|
exports.LanguageContext = LanguageContext;
|
|
8191
8259
|
exports.LanguageSwitcher = LanguageSwitcher;
|
|
8260
|
+
exports.LoadingState = LoadingState;
|
|
8192
8261
|
exports.MiniCalendar = MiniCalendar;
|
|
8193
8262
|
exports.NotificationsContext = NotificationsContext;
|
|
8194
8263
|
exports.NotificationsWidget = NotificationsWidget;
|