@sofya-ds/react 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/README.md +7 -2
- package/dist/index.cjs +660 -295
- package/dist/index.css +1 -1
- package/dist/index.d.cts +69 -10
- package/dist/index.d.ts +69 -10
- package/dist/index.js +634 -277
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -118,6 +118,7 @@ import {
|
|
|
118
118
|
IconChevronLeft,
|
|
119
119
|
IconChevronDown,
|
|
120
120
|
IconChevronUp,
|
|
121
|
+
IconCopy,
|
|
121
122
|
IconEdit,
|
|
122
123
|
IconFile,
|
|
123
124
|
IconFolders,
|
|
@@ -133,6 +134,7 @@ import {
|
|
|
133
134
|
IconSearch,
|
|
134
135
|
IconSquareToggle,
|
|
135
136
|
IconSparkles,
|
|
137
|
+
IconStar,
|
|
136
138
|
IconUser,
|
|
137
139
|
IconUserFilled,
|
|
138
140
|
IconUserCircle,
|
|
@@ -161,6 +163,7 @@ var tablerIconRegistry = {
|
|
|
161
163
|
IconChevronLeft,
|
|
162
164
|
IconChevronDown,
|
|
163
165
|
IconChevronUp,
|
|
166
|
+
IconCopy,
|
|
164
167
|
IconEdit,
|
|
165
168
|
IconFile,
|
|
166
169
|
IconFolders,
|
|
@@ -176,6 +179,7 @@ var tablerIconRegistry = {
|
|
|
176
179
|
IconSearch,
|
|
177
180
|
IconSquareToggle,
|
|
178
181
|
IconSparkles,
|
|
182
|
+
IconStar,
|
|
179
183
|
IconUser,
|
|
180
184
|
IconUserFilled,
|
|
181
185
|
IconUserCircle,
|
|
@@ -232,7 +236,9 @@ var legacyIconToTablerNameMap = {
|
|
|
232
236
|
"caret-up": "IconChevronUp",
|
|
233
237
|
"caret-left": "IconChevronLeft",
|
|
234
238
|
"caret-right": "IconChevronRight",
|
|
239
|
+
"copy": "IconCopy",
|
|
235
240
|
"logout": "IconLogout",
|
|
241
|
+
"star": "IconStar",
|
|
236
242
|
"users-group": "IconUsersGroup",
|
|
237
243
|
"archive": "IconArchive",
|
|
238
244
|
"folder": "IconFolder",
|
|
@@ -393,19 +399,49 @@ Icon.displayName = "Icon";
|
|
|
393
399
|
|
|
394
400
|
// src/components/text.tsx
|
|
395
401
|
import * as React3 from "react";
|
|
402
|
+
import {
|
|
403
|
+
sofyaTextStyleNames
|
|
404
|
+
} from "@sofya-ds/tokens";
|
|
396
405
|
import { jsx as jsx3 } from "react/jsx-runtime";
|
|
397
|
-
var textSizeOptions =
|
|
406
|
+
var textSizeOptions = sofyaTextStyleNames;
|
|
398
407
|
var textVariantOptions = ["default", "gradient", "shiny", "split"];
|
|
399
408
|
var textSplitTypeOptions = ["chars", "words", "words, chars"];
|
|
400
409
|
var defaultElements = {
|
|
410
|
+
"display-xl": "h1",
|
|
411
|
+
"display-lg": "h1",
|
|
412
|
+
"heading-xl": "h1",
|
|
413
|
+
"heading-lg": "h2",
|
|
414
|
+
"heading-md": "h3",
|
|
401
415
|
h1: "h1",
|
|
402
416
|
h2: "h2",
|
|
403
417
|
h3: "h3",
|
|
404
418
|
h4: "h4",
|
|
405
419
|
h5: "h5",
|
|
420
|
+
"encounter-title": "h1",
|
|
421
|
+
"title-md": "h3",
|
|
422
|
+
"title-sm": "h4",
|
|
423
|
+
"body-lg": "p",
|
|
424
|
+
"body-md": "p",
|
|
425
|
+
"body-sm": "p",
|
|
406
426
|
body: "p",
|
|
427
|
+
"label-md": "span",
|
|
428
|
+
"section-label": "span",
|
|
429
|
+
"eyebrow-md": "span",
|
|
430
|
+
"overline-md": "span",
|
|
431
|
+
"sidebar-title": "span",
|
|
432
|
+
"sidebar-title-regular": "span",
|
|
433
|
+
"sidebar-title-strong": "span",
|
|
434
|
+
"sidebar-label": "span",
|
|
435
|
+
"sidebar-label-strong": "span",
|
|
436
|
+
"sidebar-body": "span",
|
|
437
|
+
"sidebar-tag": "span",
|
|
438
|
+
"encounter-chip": "span",
|
|
439
|
+
"encounter-history": "span",
|
|
440
|
+
caption: "span",
|
|
441
|
+
eyebrow: "span",
|
|
407
442
|
tiny: "span",
|
|
408
|
-
"extra-tiny": "span"
|
|
443
|
+
"extra-tiny": "span",
|
|
444
|
+
"code-sm": "code"
|
|
409
445
|
};
|
|
410
446
|
var textSizeStyles = Object.fromEntries(
|
|
411
447
|
textSizeOptions.map((size) => [
|
|
@@ -1555,27 +1591,26 @@ Button.displayName = "Button";
|
|
|
1555
1591
|
// src/components/surface.tsx
|
|
1556
1592
|
import * as React9 from "react";
|
|
1557
1593
|
import { Slot as Slot2 } from "@radix-ui/react-slot";
|
|
1594
|
+
import {
|
|
1595
|
+
sofyaSurfaceNames
|
|
1596
|
+
} from "@sofya-ds/tokens";
|
|
1558
1597
|
import { jsx as jsx9 } from "react/jsx-runtime";
|
|
1559
|
-
var
|
|
1560
|
-
|
|
1561
|
-
|
|
1562
|
-
|
|
1563
|
-
|
|
1564
|
-
|
|
1565
|
-
|
|
1566
|
-
|
|
1567
|
-
|
|
1568
|
-
|
|
1569
|
-
focus: {
|
|
1570
|
-
backgroundColor: "hsl(var(--sofya-surface-focus-background))",
|
|
1571
|
-
borderColor: "hsl(var(--sofya-surface-focus-border-color))",
|
|
1572
|
-
borderWidth: "var(--sofya-surface-focus-border-width)",
|
|
1598
|
+
var surfaceVariantOptions = sofyaSurfaceNames;
|
|
1599
|
+
function toCssTokenName(name) {
|
|
1600
|
+
return name.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase();
|
|
1601
|
+
}
|
|
1602
|
+
function getSurfaceStyle(variant) {
|
|
1603
|
+
const cssName = toCssTokenName(variant);
|
|
1604
|
+
return {
|
|
1605
|
+
backgroundColor: `hsl(var(--sofya-surface-${cssName}-background))`,
|
|
1606
|
+
borderColor: `hsl(var(--sofya-surface-${cssName}-border-color))`,
|
|
1607
|
+
borderWidth: `var(--sofya-surface-${cssName}-border-width)`,
|
|
1573
1608
|
borderStyle: "solid",
|
|
1574
|
-
borderRadius:
|
|
1575
|
-
"--sofya-surface-shadow-base":
|
|
1609
|
+
borderRadius: `var(--sofya-surface-${cssName}-radius)`,
|
|
1610
|
+
"--sofya-surface-shadow-base": `var(--sofya-surface-${cssName}-shadow)`,
|
|
1576
1611
|
boxShadow: "var(--sofya-surface-shadow-override, var(--sofya-surface-shadow-base))"
|
|
1577
|
-
}
|
|
1578
|
-
}
|
|
1612
|
+
};
|
|
1613
|
+
}
|
|
1579
1614
|
function SurfaceComponent({ as, asChild = false, variant = "card", className, style, ...props }, ref) {
|
|
1580
1615
|
const Component = asChild ? Slot2 : as ?? "div";
|
|
1581
1616
|
return /* @__PURE__ */ jsx9(
|
|
@@ -1584,7 +1619,7 @@ function SurfaceComponent({ as, asChild = false, variant = "card", className, st
|
|
|
1584
1619
|
ref,
|
|
1585
1620
|
"data-surface-variant": variant,
|
|
1586
1621
|
className: cn("relative text-foreground", className),
|
|
1587
|
-
style: { ...
|
|
1622
|
+
style: { ...getSurfaceStyle(variant), ...style },
|
|
1588
1623
|
...props
|
|
1589
1624
|
}
|
|
1590
1625
|
);
|
|
@@ -1661,13 +1696,13 @@ var selectionControlLabelTextBaseClasses = "text-[color:var(--sofya-text-default
|
|
|
1661
1696
|
var selectionControlDescriptionTextBaseClasses = "text-muted-foreground";
|
|
1662
1697
|
var selectionControlControlBaseClasses = "border border-[color:var(--sofya-border-strong)] bg-card transition-[background-color,border-color,box-shadow,color] duration-sofya ease-sofya disabled:cursor-not-allowed disabled:opacity-50";
|
|
1663
1698
|
function selectionControlContainerClasses({
|
|
1664
|
-
alignClassName,
|
|
1699
|
+
alignClassName: alignClassName2,
|
|
1665
1700
|
className,
|
|
1666
1701
|
disabled
|
|
1667
1702
|
}) {
|
|
1668
1703
|
return cn(
|
|
1669
1704
|
selectionControlContainerBaseClasses,
|
|
1670
|
-
|
|
1705
|
+
alignClassName2,
|
|
1671
1706
|
disabled ? "cursor-not-allowed opacity-50" : "cursor-pointer",
|
|
1672
1707
|
className
|
|
1673
1708
|
);
|
|
@@ -1691,13 +1726,13 @@ var Checkbox = React10.forwardRef(
|
|
|
1691
1726
|
const generatedId = React10.useId();
|
|
1692
1727
|
const resolvedId = id ?? generatedId;
|
|
1693
1728
|
const descriptionId = description ? `${resolvedId}-description` : void 0;
|
|
1694
|
-
const
|
|
1729
|
+
const alignClassName2 = description ? "items-start" : "items-center";
|
|
1695
1730
|
return /* @__PURE__ */ jsxs4(
|
|
1696
1731
|
"label",
|
|
1697
1732
|
{
|
|
1698
1733
|
htmlFor: resolvedId,
|
|
1699
1734
|
className: selectionControlContainerClasses({
|
|
1700
|
-
alignClassName,
|
|
1735
|
+
alignClassName: alignClassName2,
|
|
1701
1736
|
className,
|
|
1702
1737
|
disabled
|
|
1703
1738
|
}),
|
|
@@ -3426,13 +3461,16 @@ var DialogContent = React19.forwardRef(
|
|
|
3426
3461
|
className,
|
|
3427
3462
|
children,
|
|
3428
3463
|
cardClassName,
|
|
3464
|
+
cardStyle,
|
|
3429
3465
|
overlayClassName,
|
|
3430
3466
|
showCloseButton = true,
|
|
3467
|
+
surfaceShadow = "var(--sofya-shadow-lg)",
|
|
3431
3468
|
variant = "card",
|
|
3432
3469
|
...props
|
|
3433
3470
|
}, ref) => {
|
|
3434
3471
|
const dialogCardStyle = {
|
|
3435
|
-
"--sofya-surface-shadow-override":
|
|
3472
|
+
"--sofya-surface-shadow-override": surfaceShadow,
|
|
3473
|
+
...cardStyle
|
|
3436
3474
|
};
|
|
3437
3475
|
return /* @__PURE__ */ jsx20(DialogInternalContext.Provider, { value: { showCloseButton }, children: /* @__PURE__ */ jsxs11(DialogPortal, { children: [
|
|
3438
3476
|
/* @__PURE__ */ jsx20(DialogOverlay, { className: overlayClassName }),
|
|
@@ -3538,10 +3576,73 @@ var DialogDescription = React19.forwardRef(({ children, className, ...props }, r
|
|
|
3538
3576
|
));
|
|
3539
3577
|
DialogDescription.displayName = DialogPrimitive.Description.displayName;
|
|
3540
3578
|
|
|
3541
|
-
// src/components/
|
|
3579
|
+
// src/components/document-card.tsx
|
|
3542
3580
|
import * as React20 from "react";
|
|
3581
|
+
import { jsx as jsx21, jsxs as jsxs12 } from "react/jsx-runtime";
|
|
3582
|
+
var DocumentCard = React20.forwardRef(
|
|
3583
|
+
({
|
|
3584
|
+
actions,
|
|
3585
|
+
className,
|
|
3586
|
+
description,
|
|
3587
|
+
leading,
|
|
3588
|
+
meta,
|
|
3589
|
+
selected = false,
|
|
3590
|
+
title,
|
|
3591
|
+
...props
|
|
3592
|
+
}, ref) => {
|
|
3593
|
+
const gridTemplateClassName = cn(
|
|
3594
|
+
leading && actions && "grid-cols-[auto_minmax(0,1fr)_auto]",
|
|
3595
|
+
leading && !actions && "grid-cols-[auto_minmax(0,1fr)]",
|
|
3596
|
+
!leading && actions && "grid-cols-[minmax(0,1fr)_auto]",
|
|
3597
|
+
!leading && !actions && "grid-cols-[minmax(0,1fr)]"
|
|
3598
|
+
);
|
|
3599
|
+
return /* @__PURE__ */ jsxs12(
|
|
3600
|
+
Surface,
|
|
3601
|
+
{
|
|
3602
|
+
ref,
|
|
3603
|
+
"aria-selected": selected,
|
|
3604
|
+
"data-slot": "document-card",
|
|
3605
|
+
"data-state": selected ? "selected" : "idle",
|
|
3606
|
+
variant: selected ? "documentCardSelected" : "documentCard",
|
|
3607
|
+
className: cn(
|
|
3608
|
+
"grid min-h-[var(--sofya-control-height-lg)] items-center gap-[var(--sofya-gap-default)] px-[var(--sofya-space-4)] py-[var(--sofya-space-3)]",
|
|
3609
|
+
gridTemplateClassName,
|
|
3610
|
+
className
|
|
3611
|
+
),
|
|
3612
|
+
...props,
|
|
3613
|
+
children: [
|
|
3614
|
+
leading ? /* @__PURE__ */ jsx21(
|
|
3615
|
+
"span",
|
|
3616
|
+
{
|
|
3617
|
+
"data-slot": "document-card-leading",
|
|
3618
|
+
className: "flex size-[var(--sofya-icon-button-size-sm)] shrink-0 items-center justify-center text-primary",
|
|
3619
|
+
children: leading
|
|
3620
|
+
}
|
|
3621
|
+
) : null,
|
|
3622
|
+
/* @__PURE__ */ jsxs12("span", { "data-slot": "document-card-content", className: "min-w-0", children: [
|
|
3623
|
+
/* @__PURE__ */ jsx21(Text, { as: "span", size: "label-md", className: "block truncate text-foreground", children: title }),
|
|
3624
|
+
description ? /* @__PURE__ */ jsx21(Text, { as: "span", size: "caption", className: "block truncate text-muted-foreground", children: description }) : null,
|
|
3625
|
+
meta ? /* @__PURE__ */ jsx21(Text, { as: "span", size: "caption", className: "block truncate text-muted-foreground", children: meta }) : null
|
|
3626
|
+
] }),
|
|
3627
|
+
actions ? /* @__PURE__ */ jsx21(
|
|
3628
|
+
"span",
|
|
3629
|
+
{
|
|
3630
|
+
"data-slot": "document-card-actions",
|
|
3631
|
+
className: "flex shrink-0 items-center gap-[var(--sofya-gap-compact)]",
|
|
3632
|
+
children: actions
|
|
3633
|
+
}
|
|
3634
|
+
) : null
|
|
3635
|
+
]
|
|
3636
|
+
}
|
|
3637
|
+
);
|
|
3638
|
+
}
|
|
3639
|
+
);
|
|
3640
|
+
DocumentCard.displayName = "DocumentCard";
|
|
3641
|
+
|
|
3642
|
+
// src/components/empty.tsx
|
|
3643
|
+
import * as React21 from "react";
|
|
3543
3644
|
import { cva as cva5 } from "class-variance-authority";
|
|
3544
|
-
import { Fragment as Fragment3, jsx as
|
|
3645
|
+
import { Fragment as Fragment3, jsx as jsx22, jsxs as jsxs13 } from "react/jsx-runtime";
|
|
3545
3646
|
var emptyMediaVariantOptions = ["default", "icon"];
|
|
3546
3647
|
var emptyMediaVariants = cva5(
|
|
3547
3648
|
"inline-flex shrink-0 items-center justify-center transition-[background-color,border-color,color,box-shadow] duration-sofya ease-sofya",
|
|
@@ -3557,11 +3658,11 @@ var emptyMediaVariants = cva5(
|
|
|
3557
3658
|
}
|
|
3558
3659
|
}
|
|
3559
3660
|
);
|
|
3560
|
-
var EmptyMedia =
|
|
3561
|
-
return /* @__PURE__ */
|
|
3661
|
+
var EmptyMedia = React21.forwardRef(function EmptyMedia2({ className, variant, ...props }, ref) {
|
|
3662
|
+
return /* @__PURE__ */ jsx22("div", { ref, className: cn(emptyMediaVariants({ variant }), className), ...props });
|
|
3562
3663
|
});
|
|
3563
3664
|
function EmptyHeader({ className, ...props }) {
|
|
3564
|
-
return /* @__PURE__ */
|
|
3665
|
+
return /* @__PURE__ */ jsx22(
|
|
3565
3666
|
"div",
|
|
3566
3667
|
{
|
|
3567
3668
|
className: cn("flex max-w-[34rem] flex-col items-center gap-4 text-center", className),
|
|
@@ -3570,7 +3671,7 @@ function EmptyHeader({ className, ...props }) {
|
|
|
3570
3671
|
);
|
|
3571
3672
|
}
|
|
3572
3673
|
function EmptyTitle({ children, className, ...props }) {
|
|
3573
|
-
return /* @__PURE__ */
|
|
3674
|
+
return /* @__PURE__ */ jsx22(
|
|
3574
3675
|
"h2",
|
|
3575
3676
|
{
|
|
3576
3677
|
className: cn("text-foreground", className),
|
|
@@ -3588,7 +3689,7 @@ function EmptyDescription({
|
|
|
3588
3689
|
className,
|
|
3589
3690
|
...props
|
|
3590
3691
|
}) {
|
|
3591
|
-
return /* @__PURE__ */
|
|
3692
|
+
return /* @__PURE__ */ jsx22(
|
|
3592
3693
|
"p",
|
|
3593
3694
|
{
|
|
3594
3695
|
className: cn("max-w-full text-muted-foreground whitespace-nowrap", className),
|
|
@@ -3602,7 +3703,7 @@ function EmptyDescription({
|
|
|
3602
3703
|
);
|
|
3603
3704
|
}
|
|
3604
3705
|
function EmptyContent({ children, className, ...props }) {
|
|
3605
|
-
return /* @__PURE__ */
|
|
3706
|
+
return /* @__PURE__ */ jsx22(
|
|
3606
3707
|
"div",
|
|
3607
3708
|
{
|
|
3608
3709
|
className: cn("flex flex-wrap items-center justify-center gap-4 text-center", className),
|
|
@@ -3613,9 +3714,9 @@ function EmptyContent({ children, className, ...props }) {
|
|
|
3613
3714
|
}
|
|
3614
3715
|
);
|
|
3615
3716
|
}
|
|
3616
|
-
var Empty =
|
|
3617
|
-
const hasCustomChildren =
|
|
3618
|
-
return /* @__PURE__ */
|
|
3717
|
+
var Empty = React21.forwardRef(function Empty2({ children, className, content, description, media, title, ...props }, ref) {
|
|
3718
|
+
const hasCustomChildren = React21.Children.count(children) > 0;
|
|
3719
|
+
return /* @__PURE__ */ jsx22(
|
|
3619
3720
|
"div",
|
|
3620
3721
|
{
|
|
3621
3722
|
ref,
|
|
@@ -3624,13 +3725,13 @@ var Empty = React20.forwardRef(function Empty2({ children, className, content, d
|
|
|
3624
3725
|
className
|
|
3625
3726
|
),
|
|
3626
3727
|
...props,
|
|
3627
|
-
children: hasCustomChildren ? children : /* @__PURE__ */
|
|
3628
|
-
/* @__PURE__ */
|
|
3629
|
-
media ?? /* @__PURE__ */
|
|
3630
|
-
/* @__PURE__ */
|
|
3631
|
-
/* @__PURE__ */
|
|
3728
|
+
children: hasCustomChildren ? children : /* @__PURE__ */ jsxs13(Fragment3, { children: [
|
|
3729
|
+
/* @__PURE__ */ jsxs13(EmptyHeader, { children: [
|
|
3730
|
+
media ?? /* @__PURE__ */ jsx22(EmptyMedia, { variant: "icon", "aria-hidden": "true", children: /* @__PURE__ */ jsx22(Icon, { name: "folders", size: 28 }) }),
|
|
3731
|
+
/* @__PURE__ */ jsx22(EmptyTitle, { children: title ?? "Nada por aqui" }),
|
|
3732
|
+
/* @__PURE__ */ jsx22(EmptyDescription, { children: description ?? "Quando houver conte\xFAdo dispon\xEDvel, ele aparecer\xE1 aqui." })
|
|
3632
3733
|
] }),
|
|
3633
|
-
content !== void 0 && content !== null ? /* @__PURE__ */
|
|
3734
|
+
content !== void 0 && content !== null ? /* @__PURE__ */ jsx22(EmptyContent, { children: content }) : null
|
|
3634
3735
|
] })
|
|
3635
3736
|
}
|
|
3636
3737
|
);
|
|
@@ -3643,11 +3744,11 @@ EmptyDescription.displayName = "EmptyDescription";
|
|
|
3643
3744
|
EmptyContent.displayName = "EmptyContent";
|
|
3644
3745
|
|
|
3645
3746
|
// src/components/label.tsx
|
|
3646
|
-
import * as
|
|
3647
|
-
import { jsx as
|
|
3648
|
-
var Label =
|
|
3747
|
+
import * as React22 from "react";
|
|
3748
|
+
import { jsx as jsx23 } from "react/jsx-runtime";
|
|
3749
|
+
var Label = React22.forwardRef(
|
|
3649
3750
|
({ children, className, ...props }, ref) => {
|
|
3650
|
-
return /* @__PURE__ */
|
|
3751
|
+
return /* @__PURE__ */ jsx23(
|
|
3651
3752
|
"label",
|
|
3652
3753
|
{
|
|
3653
3754
|
ref,
|
|
@@ -3670,11 +3771,109 @@ var Label = React21.forwardRef(
|
|
|
3670
3771
|
);
|
|
3671
3772
|
Label.displayName = "Label";
|
|
3672
3773
|
|
|
3774
|
+
// src/components/layout.tsx
|
|
3775
|
+
import * as React23 from "react";
|
|
3776
|
+
import { jsx as jsx24 } from "react/jsx-runtime";
|
|
3777
|
+
var alignClassName = {
|
|
3778
|
+
start: "items-start",
|
|
3779
|
+
center: "items-center",
|
|
3780
|
+
end: "items-end",
|
|
3781
|
+
stretch: "items-stretch"
|
|
3782
|
+
};
|
|
3783
|
+
var justifyClassName = {
|
|
3784
|
+
start: "justify-start",
|
|
3785
|
+
center: "justify-center",
|
|
3786
|
+
between: "justify-between",
|
|
3787
|
+
end: "justify-end"
|
|
3788
|
+
};
|
|
3789
|
+
function getGapStyle(gap) {
|
|
3790
|
+
return {
|
|
3791
|
+
"--sofya-layout-gap": `var(--sofya-gap-${gap})`
|
|
3792
|
+
};
|
|
3793
|
+
}
|
|
3794
|
+
var Stack = React23.forwardRef(
|
|
3795
|
+
({ className, gap = "default", style, ...props }, ref) => /* @__PURE__ */ jsx24(
|
|
3796
|
+
"div",
|
|
3797
|
+
{
|
|
3798
|
+
ref,
|
|
3799
|
+
"data-slot": "stack",
|
|
3800
|
+
className: cn("flex min-w-0 flex-col gap-[var(--sofya-layout-gap)]", className),
|
|
3801
|
+
style: { ...getGapStyle(gap), ...style },
|
|
3802
|
+
...props
|
|
3803
|
+
}
|
|
3804
|
+
)
|
|
3805
|
+
);
|
|
3806
|
+
Stack.displayName = "Stack";
|
|
3807
|
+
var Cluster = React23.forwardRef(
|
|
3808
|
+
({
|
|
3809
|
+
align = "center",
|
|
3810
|
+
className,
|
|
3811
|
+
gap = "default",
|
|
3812
|
+
justify = "start",
|
|
3813
|
+
style,
|
|
3814
|
+
...props
|
|
3815
|
+
}, ref) => /* @__PURE__ */ jsx24(
|
|
3816
|
+
"div",
|
|
3817
|
+
{
|
|
3818
|
+
ref,
|
|
3819
|
+
"data-slot": "cluster",
|
|
3820
|
+
className: cn(
|
|
3821
|
+
"flex min-w-0 flex-wrap gap-[var(--sofya-layout-gap)]",
|
|
3822
|
+
alignClassName[align],
|
|
3823
|
+
justifyClassName[justify],
|
|
3824
|
+
className
|
|
3825
|
+
),
|
|
3826
|
+
style: { ...getGapStyle(gap), ...style },
|
|
3827
|
+
...props
|
|
3828
|
+
}
|
|
3829
|
+
)
|
|
3830
|
+
);
|
|
3831
|
+
Cluster.displayName = "Cluster";
|
|
3832
|
+
var Inline = React23.forwardRef(
|
|
3833
|
+
({ align = "center", className, gap = "compact", style, ...props }, ref) => /* @__PURE__ */ jsx24(
|
|
3834
|
+
"div",
|
|
3835
|
+
{
|
|
3836
|
+
ref,
|
|
3837
|
+
"data-slot": "inline",
|
|
3838
|
+
className: cn(
|
|
3839
|
+
"inline-flex min-w-0 gap-[var(--sofya-layout-gap)]",
|
|
3840
|
+
alignClassName[align],
|
|
3841
|
+
className
|
|
3842
|
+
),
|
|
3843
|
+
style: { ...getGapStyle(gap), ...style },
|
|
3844
|
+
...props
|
|
3845
|
+
}
|
|
3846
|
+
)
|
|
3847
|
+
);
|
|
3848
|
+
Inline.displayName = "Inline";
|
|
3849
|
+
var Container = React23.forwardRef(
|
|
3850
|
+
({ className, measure = "reading", style, ...props }, ref) => {
|
|
3851
|
+
const measureStyle = measure === "none" ? void 0 : {
|
|
3852
|
+
"--sofya-layout-measure": `var(--sofya-measure-${measure})`
|
|
3853
|
+
};
|
|
3854
|
+
return /* @__PURE__ */ jsx24(
|
|
3855
|
+
"div",
|
|
3856
|
+
{
|
|
3857
|
+
ref,
|
|
3858
|
+
"data-slot": "container",
|
|
3859
|
+
className: cn(
|
|
3860
|
+
"mx-auto w-full min-w-0",
|
|
3861
|
+
measure !== "none" && "max-w-[var(--sofya-layout-measure)]",
|
|
3862
|
+
className
|
|
3863
|
+
),
|
|
3864
|
+
style: { ...measureStyle, ...style },
|
|
3865
|
+
...props
|
|
3866
|
+
}
|
|
3867
|
+
);
|
|
3868
|
+
}
|
|
3869
|
+
);
|
|
3870
|
+
Container.displayName = "Container";
|
|
3871
|
+
|
|
3673
3872
|
// src/components/link.tsx
|
|
3674
|
-
import * as
|
|
3873
|
+
import * as React24 from "react";
|
|
3675
3874
|
import { Slot as Slot3 } from "@radix-ui/react-slot";
|
|
3676
3875
|
import { cva as cva6 } from "class-variance-authority";
|
|
3677
|
-
import { jsx as
|
|
3876
|
+
import { jsx as jsx25 } from "react/jsx-runtime";
|
|
3678
3877
|
var linkVariants = cva6(
|
|
3679
3878
|
"inline bg-[linear-gradient(currentColor,currentColor)] bg-[position:0_100%] bg-no-repeat pb-0 text-primary no-underline transition-[color,background-size,box-shadow] duration-sofya ease-sofya hover:text-[color:var(--sofya-link-hover)] focus-visible:rounded-[4px] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[color:var(--sofya-focus-ring-soft)] focus-visible:ring-offset-0",
|
|
3680
3879
|
{
|
|
@@ -3689,9 +3888,9 @@ var linkVariants = cva6(
|
|
|
3689
3888
|
}
|
|
3690
3889
|
}
|
|
3691
3890
|
);
|
|
3692
|
-
var Link =
|
|
3891
|
+
var Link = React24.forwardRef(function Link2({ asChild = false, children, className, variant = "default", ...props }, ref) {
|
|
3693
3892
|
const Component = asChild ? Slot3 : "a";
|
|
3694
|
-
return /* @__PURE__ */
|
|
3893
|
+
return /* @__PURE__ */ jsx25(
|
|
3695
3894
|
Component,
|
|
3696
3895
|
{
|
|
3697
3896
|
ref,
|
|
@@ -3709,7 +3908,7 @@ var Link = React22.forwardRef(function Link2({ asChild = false, children, classN
|
|
|
3709
3908
|
Link.displayName = "Link";
|
|
3710
3909
|
|
|
3711
3910
|
// src/components/logo.tsx
|
|
3712
|
-
import * as
|
|
3911
|
+
import * as React25 from "react";
|
|
3713
3912
|
|
|
3714
3913
|
// src/components/logo-data.ts
|
|
3715
3914
|
var logoAssets = {
|
|
@@ -3806,7 +4005,7 @@ var logoAssets = {
|
|
|
3806
4005
|
};
|
|
3807
4006
|
|
|
3808
4007
|
// src/components/logo.tsx
|
|
3809
|
-
import { jsx as
|
|
4008
|
+
import { jsx as jsx26, jsxs as jsxs14 } from "react/jsx-runtime";
|
|
3810
4009
|
var logoVariants = ["mono", "default", "text", "full"];
|
|
3811
4010
|
var logoSizeOptions = ["sm", "md", "lg", "xl", "2xl"];
|
|
3812
4011
|
var logoSizeScale = {
|
|
@@ -3842,7 +4041,7 @@ function resolveLogoDimensions(variant, size, width, height) {
|
|
|
3842
4041
|
height: resolvedHeight
|
|
3843
4042
|
};
|
|
3844
4043
|
}
|
|
3845
|
-
var Logo =
|
|
4044
|
+
var Logo = React25.forwardRef(function Logo2({
|
|
3846
4045
|
variant = "full",
|
|
3847
4046
|
size = "lg",
|
|
3848
4047
|
width,
|
|
@@ -3853,10 +4052,10 @@ var Logo = React23.forwardRef(function Logo2({
|
|
|
3853
4052
|
...props
|
|
3854
4053
|
}, ref) {
|
|
3855
4054
|
const asset = logoAssets[variant];
|
|
3856
|
-
const titleId =
|
|
4055
|
+
const titleId = React25.useId();
|
|
3857
4056
|
const dimensions = resolveLogoDimensions(variant, size, width, height);
|
|
3858
4057
|
const monoFill = variant === "mono" ? monoColor ?? "currentColor" : void 0;
|
|
3859
|
-
return /* @__PURE__ */
|
|
4058
|
+
return /* @__PURE__ */ jsxs14(
|
|
3860
4059
|
"svg",
|
|
3861
4060
|
{
|
|
3862
4061
|
ref,
|
|
@@ -3871,8 +4070,8 @@ var Logo = React23.forwardRef(function Logo2({
|
|
|
3871
4070
|
focusable: "false",
|
|
3872
4071
|
...props,
|
|
3873
4072
|
children: [
|
|
3874
|
-
title ? /* @__PURE__ */
|
|
3875
|
-
asset.paths.map((path, index) => /* @__PURE__ */
|
|
4073
|
+
title ? /* @__PURE__ */ jsx26("title", { id: titleId, children: title }) : null,
|
|
4074
|
+
asset.paths.map((path, index) => /* @__PURE__ */ jsx26(
|
|
3876
4075
|
"path",
|
|
3877
4076
|
{
|
|
3878
4077
|
d: path.d,
|
|
@@ -3904,7 +4103,7 @@ var inheritedTypographyStyle = {
|
|
|
3904
4103
|
};
|
|
3905
4104
|
|
|
3906
4105
|
// src/components/pagination.tsx
|
|
3907
|
-
import { jsx as
|
|
4106
|
+
import { jsx as jsx27, jsxs as jsxs15 } from "react/jsx-runtime";
|
|
3908
4107
|
var paginationLinkVariants = cva7(
|
|
3909
4108
|
"inline-flex h-10 min-w-10 items-center justify-center rounded-full border border-transparent px-4 [font-family:var(--sofya-text-body-font-family)] text-[length:var(--sofya-text-body-font-size)] font-medium leading-[var(--sofya-text-body-line-height)] tracking-[var(--sofya-text-body-letter-spacing)] text-[color:var(--sofya-text-soft)] no-underline transition-[transform,background-color,border-color,color,box-shadow] duration-sofya ease-sofya motion-safe:active:scale-[0.985] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[color:var(--sofya-focus-ring-soft)] focus-visible:ring-offset-0",
|
|
3910
4109
|
{
|
|
@@ -3925,7 +4124,7 @@ var paginationLinkVariants = cva7(
|
|
|
3925
4124
|
}
|
|
3926
4125
|
);
|
|
3927
4126
|
function Pagination({ className, ...props }) {
|
|
3928
|
-
return /* @__PURE__ */
|
|
4127
|
+
return /* @__PURE__ */ jsx27(
|
|
3929
4128
|
"nav",
|
|
3930
4129
|
{
|
|
3931
4130
|
"aria-label": "Pagination",
|
|
@@ -3938,7 +4137,7 @@ function PaginationContent({
|
|
|
3938
4137
|
className,
|
|
3939
4138
|
...props
|
|
3940
4139
|
}) {
|
|
3941
|
-
return /* @__PURE__ */
|
|
4140
|
+
return /* @__PURE__ */ jsx27(
|
|
3942
4141
|
"ul",
|
|
3943
4142
|
{
|
|
3944
4143
|
className: cn(
|
|
@@ -3950,7 +4149,7 @@ function PaginationContent({
|
|
|
3950
4149
|
);
|
|
3951
4150
|
}
|
|
3952
4151
|
function PaginationItem({ className, ...props }) {
|
|
3953
|
-
return /* @__PURE__ */
|
|
4152
|
+
return /* @__PURE__ */ jsx27("li", { className: cn("list-none", className), ...props });
|
|
3954
4153
|
}
|
|
3955
4154
|
function PaginationLink({
|
|
3956
4155
|
asChild = false,
|
|
@@ -3960,7 +4159,7 @@ function PaginationLink({
|
|
|
3960
4159
|
...props
|
|
3961
4160
|
}) {
|
|
3962
4161
|
const Component = asChild ? Slot4 : "a";
|
|
3963
|
-
return /* @__PURE__ */
|
|
4162
|
+
return /* @__PURE__ */ jsx27(
|
|
3964
4163
|
Component,
|
|
3965
4164
|
{
|
|
3966
4165
|
"aria-current": isActive ? "page" : void 0,
|
|
@@ -3970,25 +4169,25 @@ function PaginationLink({
|
|
|
3970
4169
|
);
|
|
3971
4170
|
}
|
|
3972
4171
|
function PaginationChevronLeft() {
|
|
3973
|
-
return /* @__PURE__ */
|
|
4172
|
+
return /* @__PURE__ */ jsx27(IconChevronLeft2, { "aria-hidden": "true", className: "h-4 w-4", stroke: 1.75 });
|
|
3974
4173
|
}
|
|
3975
4174
|
function PaginationChevronRight() {
|
|
3976
|
-
return /* @__PURE__ */
|
|
4175
|
+
return /* @__PURE__ */ jsx27(IconChevronRight2, { "aria-hidden": "true", className: "h-4 w-4", stroke: 1.75 });
|
|
3977
4176
|
}
|
|
3978
4177
|
function PaginationPrevious({
|
|
3979
4178
|
className,
|
|
3980
4179
|
text = "Previous",
|
|
3981
4180
|
...props
|
|
3982
4181
|
}) {
|
|
3983
|
-
return /* @__PURE__ */
|
|
4182
|
+
return /* @__PURE__ */ jsxs15(
|
|
3984
4183
|
PaginationLink,
|
|
3985
4184
|
{
|
|
3986
4185
|
"aria-label": "Go to previous page",
|
|
3987
4186
|
className: cn("gap-2 px-4", className),
|
|
3988
4187
|
...props,
|
|
3989
4188
|
children: [
|
|
3990
|
-
/* @__PURE__ */
|
|
3991
|
-
/* @__PURE__ */
|
|
4189
|
+
/* @__PURE__ */ jsx27(PaginationChevronLeft, {}),
|
|
4190
|
+
/* @__PURE__ */ jsx27("span", { className: "hidden sm:block", children: renderTextContent(text, {
|
|
3992
4191
|
as: "span",
|
|
3993
4192
|
className: "block text-inherit",
|
|
3994
4193
|
size: "body",
|
|
@@ -4003,20 +4202,20 @@ function PaginationNext({
|
|
|
4003
4202
|
text = "Next",
|
|
4004
4203
|
...props
|
|
4005
4204
|
}) {
|
|
4006
|
-
return /* @__PURE__ */
|
|
4205
|
+
return /* @__PURE__ */ jsxs15(
|
|
4007
4206
|
PaginationLink,
|
|
4008
4207
|
{
|
|
4009
4208
|
"aria-label": "Go to next page",
|
|
4010
4209
|
className: cn("gap-2 px-4", className),
|
|
4011
4210
|
...props,
|
|
4012
4211
|
children: [
|
|
4013
|
-
/* @__PURE__ */
|
|
4212
|
+
/* @__PURE__ */ jsx27("span", { className: "hidden sm:block", children: renderTextContent(text, {
|
|
4014
4213
|
as: "span",
|
|
4015
4214
|
className: "block text-inherit",
|
|
4016
4215
|
size: "body",
|
|
4017
4216
|
style: inheritedTypographyStyle
|
|
4018
4217
|
}) }),
|
|
4019
|
-
/* @__PURE__ */
|
|
4218
|
+
/* @__PURE__ */ jsx27(PaginationChevronRight, {})
|
|
4020
4219
|
]
|
|
4021
4220
|
}
|
|
4022
4221
|
);
|
|
@@ -4025,7 +4224,7 @@ function PaginationEllipsis({
|
|
|
4025
4224
|
className,
|
|
4026
4225
|
...props
|
|
4027
4226
|
}) {
|
|
4028
|
-
return /* @__PURE__ */
|
|
4227
|
+
return /* @__PURE__ */ jsxs15(
|
|
4029
4228
|
"span",
|
|
4030
4229
|
{
|
|
4031
4230
|
"aria-hidden": "true",
|
|
@@ -4035,22 +4234,90 @@ function PaginationEllipsis({
|
|
|
4035
4234
|
),
|
|
4036
4235
|
...props,
|
|
4037
4236
|
children: [
|
|
4038
|
-
/* @__PURE__ */
|
|
4237
|
+
/* @__PURE__ */ jsx27("span", { children: renderTextContent("...", {
|
|
4039
4238
|
as: "span",
|
|
4040
4239
|
className: "block text-inherit",
|
|
4041
4240
|
size: "h5",
|
|
4042
4241
|
style: inheritedTypographyStyle
|
|
4043
4242
|
}) }),
|
|
4044
|
-
/* @__PURE__ */
|
|
4243
|
+
/* @__PURE__ */ jsx27("span", { className: "sr-only", children: "More pages" })
|
|
4045
4244
|
]
|
|
4046
4245
|
}
|
|
4047
4246
|
);
|
|
4048
4247
|
}
|
|
4049
4248
|
|
|
4249
|
+
// src/components/prose-dialog.tsx
|
|
4250
|
+
import * as React26 from "react";
|
|
4251
|
+
import { jsx as jsx28 } from "react/jsx-runtime";
|
|
4252
|
+
var proseDialogMaxWidth = "min(var(--sofya-layout-prose-dialog-width), calc(100vw - var(--sofya-space-8)))";
|
|
4253
|
+
var ProseDialogContent = React26.forwardRef(
|
|
4254
|
+
({
|
|
4255
|
+
cardClassName,
|
|
4256
|
+
cardStyle: incomingCardStyle,
|
|
4257
|
+
className,
|
|
4258
|
+
style,
|
|
4259
|
+
surfaceShadow = "none",
|
|
4260
|
+
variant = "proseDialog",
|
|
4261
|
+
...props
|
|
4262
|
+
}, ref) => {
|
|
4263
|
+
const dialogStyle = {
|
|
4264
|
+
...style,
|
|
4265
|
+
maxWidth: proseDialogMaxWidth
|
|
4266
|
+
};
|
|
4267
|
+
const cardStyle = {
|
|
4268
|
+
...incomingCardStyle,
|
|
4269
|
+
maxWidth: proseDialogMaxWidth
|
|
4270
|
+
};
|
|
4271
|
+
return /* @__PURE__ */ jsx28(
|
|
4272
|
+
DialogContent,
|
|
4273
|
+
{
|
|
4274
|
+
ref,
|
|
4275
|
+
className,
|
|
4276
|
+
cardClassName: [
|
|
4277
|
+
"gap-[var(--sofya-rhythm-section-content)] p-[var(--sofya-space-6)] sm:p-[var(--sofya-space-12)]",
|
|
4278
|
+
cardClassName
|
|
4279
|
+
].filter(Boolean).join(" "),
|
|
4280
|
+
cardStyle,
|
|
4281
|
+
"data-slot": "prose-dialog-content",
|
|
4282
|
+
style: dialogStyle,
|
|
4283
|
+
surfaceShadow,
|
|
4284
|
+
variant,
|
|
4285
|
+
...props
|
|
4286
|
+
}
|
|
4287
|
+
);
|
|
4288
|
+
}
|
|
4289
|
+
);
|
|
4290
|
+
ProseDialogContent.displayName = "ProseDialogContent";
|
|
4291
|
+
function ProseDialogHeader(props) {
|
|
4292
|
+
return /* @__PURE__ */ jsx28(DialogHeader, { "data-slot": "prose-dialog-header", ...props });
|
|
4293
|
+
}
|
|
4294
|
+
ProseDialogHeader.displayName = "ProseDialogHeader";
|
|
4295
|
+
var ProseDialogTitle = React26.forwardRef((props, ref) => /* @__PURE__ */ jsx28(DialogTitle, { ref, "data-slot": "prose-dialog-title", ...props }));
|
|
4296
|
+
ProseDialogTitle.displayName = "ProseDialogTitle";
|
|
4297
|
+
var ProseDialogDescription = React26.forwardRef((props, ref) => /* @__PURE__ */ jsx28(DialogDescription, { ref, "data-slot": "prose-dialog-description", ...props }));
|
|
4298
|
+
ProseDialogDescription.displayName = "ProseDialogDescription";
|
|
4299
|
+
var ProseDialogBody = React26.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx28(
|
|
4300
|
+
"div",
|
|
4301
|
+
{
|
|
4302
|
+
ref,
|
|
4303
|
+
"data-slot": "prose-dialog-body",
|
|
4304
|
+
className: [
|
|
4305
|
+
"flex flex-col",
|
|
4306
|
+
"max-w-[var(--sofya-measure-wide)] gap-[var(--sofya-rhythm-paragraph-flow)]",
|
|
4307
|
+
"[&_p]:m-0 [&_p]:text-[length:var(--sofya-text-body-md-font-size)]",
|
|
4308
|
+
"[&_p]:font-[var(--sofya-text-body-md-font-weight)] [&_p]:leading-[var(--sofya-text-body-md-line-height)]",
|
|
4309
|
+
"[&_section]:flex [&_section]:flex-col [&_section]:gap-[var(--sofya-rhythm-title-to-body)]",
|
|
4310
|
+
className
|
|
4311
|
+
].filter(Boolean).join(" "),
|
|
4312
|
+
...props
|
|
4313
|
+
}
|
|
4314
|
+
));
|
|
4315
|
+
ProseDialogBody.displayName = "ProseDialogBody";
|
|
4316
|
+
|
|
4050
4317
|
// src/components/progress.tsx
|
|
4051
|
-
import * as
|
|
4318
|
+
import * as React27 from "react";
|
|
4052
4319
|
import * as ProgressPrimitive from "@radix-ui/react-progress";
|
|
4053
|
-
import { jsx as
|
|
4320
|
+
import { jsx as jsx29 } from "react/jsx-runtime";
|
|
4054
4321
|
var progressSizeOptions = ["sm", "default", "lg"];
|
|
4055
4322
|
function clampProgressValue(value, max) {
|
|
4056
4323
|
if (Number.isNaN(value)) {
|
|
@@ -4058,7 +4325,7 @@ function clampProgressValue(value, max) {
|
|
|
4058
4325
|
}
|
|
4059
4326
|
return Math.min(Math.max(value, 0), max);
|
|
4060
4327
|
}
|
|
4061
|
-
var Progress =
|
|
4328
|
+
var Progress = React27.forwardRef(function Progress2({
|
|
4062
4329
|
className,
|
|
4063
4330
|
indicatorClassName,
|
|
4064
4331
|
max = 100,
|
|
@@ -4069,7 +4336,7 @@ var Progress = React24.forwardRef(function Progress2({
|
|
|
4069
4336
|
const safeMax = max > 0 ? max : 100;
|
|
4070
4337
|
const resolvedValue = typeof value === "number" ? clampProgressValue(value, safeMax) : null;
|
|
4071
4338
|
const progressScale = resolvedValue === null ? void 0 : Number((resolvedValue / safeMax).toFixed(4));
|
|
4072
|
-
return /* @__PURE__ */
|
|
4339
|
+
return /* @__PURE__ */ jsx29(
|
|
4073
4340
|
ProgressPrimitive.Root,
|
|
4074
4341
|
{
|
|
4075
4342
|
ref,
|
|
@@ -4082,7 +4349,7 @@ var Progress = React24.forwardRef(function Progress2({
|
|
|
4082
4349
|
className
|
|
4083
4350
|
),
|
|
4084
4351
|
...props,
|
|
4085
|
-
children: /* @__PURE__ */
|
|
4352
|
+
children: /* @__PURE__ */ jsx29(
|
|
4086
4353
|
ProgressPrimitive.Indicator,
|
|
4087
4354
|
{
|
|
4088
4355
|
"data-slot": "progress-indicator",
|
|
@@ -4099,19 +4366,19 @@ var Progress = React24.forwardRef(function Progress2({
|
|
|
4099
4366
|
Progress.displayName = ProgressPrimitive.Root.displayName;
|
|
4100
4367
|
|
|
4101
4368
|
// src/components/radio-group.tsx
|
|
4102
|
-
import * as
|
|
4369
|
+
import * as React28 from "react";
|
|
4103
4370
|
import * as RadioGroupPrimitive from "@radix-ui/react-radio-group";
|
|
4104
|
-
import { jsx as
|
|
4371
|
+
import { jsx as jsx30, jsxs as jsxs16 } from "react/jsx-runtime";
|
|
4105
4372
|
var radioGroupOrientationOptions = ["horizontal", "vertical"];
|
|
4106
4373
|
var radioGroupVariantOptions = ["default", "pill", "option"];
|
|
4107
|
-
var RadioGroupContext =
|
|
4374
|
+
var RadioGroupContext = React28.createContext({
|
|
4108
4375
|
variant: "default"
|
|
4109
4376
|
});
|
|
4110
|
-
var RadioGroupOptionContext =
|
|
4377
|
+
var RadioGroupOptionContext = React28.createContext(
|
|
4111
4378
|
{}
|
|
4112
4379
|
);
|
|
4113
|
-
var RadioGroupRoot =
|
|
4114
|
-
return /* @__PURE__ */
|
|
4380
|
+
var RadioGroupRoot = React28.forwardRef(function RadioGroup2({ className, variant = "default", ...props }, ref) {
|
|
4381
|
+
return /* @__PURE__ */ jsx30(RadioGroupContext.Provider, { value: { variant }, children: /* @__PURE__ */ jsx30(
|
|
4115
4382
|
RadioGroupPrimitive.Root,
|
|
4116
4383
|
{
|
|
4117
4384
|
ref,
|
|
@@ -4127,7 +4394,7 @@ var RadioGroupRoot = React25.forwardRef(function RadioGroup2({ className, varian
|
|
|
4127
4394
|
) });
|
|
4128
4395
|
});
|
|
4129
4396
|
RadioGroupRoot.displayName = RadioGroupPrimitive.Root.displayName;
|
|
4130
|
-
var RadioGroupItem =
|
|
4397
|
+
var RadioGroupItem = React28.forwardRef(function RadioGroupItem2({
|
|
4131
4398
|
className,
|
|
4132
4399
|
controlClassName,
|
|
4133
4400
|
description,
|
|
@@ -4139,14 +4406,14 @@ var RadioGroupItem = React25.forwardRef(function RadioGroupItem2({
|
|
|
4139
4406
|
labelClassName,
|
|
4140
4407
|
...props
|
|
4141
4408
|
}, ref) {
|
|
4142
|
-
const { variant } =
|
|
4143
|
-
const generatedId =
|
|
4409
|
+
const { variant } = React28.useContext(RadioGroupContext);
|
|
4410
|
+
const generatedId = React28.useId();
|
|
4144
4411
|
const resolvedId = id ?? generatedId;
|
|
4145
4412
|
const labelId = label ? `${resolvedId}-label` : void 0;
|
|
4146
4413
|
const descriptionId = description ? `${resolvedId}-description` : void 0;
|
|
4147
|
-
const
|
|
4414
|
+
const alignClassName2 = description ? "items-start" : "items-center";
|
|
4148
4415
|
if (variant === "pill") {
|
|
4149
|
-
return /* @__PURE__ */
|
|
4416
|
+
return /* @__PURE__ */ jsx30(
|
|
4150
4417
|
RadioGroupPrimitive.Item,
|
|
4151
4418
|
{
|
|
4152
4419
|
ref,
|
|
@@ -4161,8 +4428,8 @@ var RadioGroupItem = React25.forwardRef(function RadioGroupItem2({
|
|
|
4161
4428
|
className
|
|
4162
4429
|
),
|
|
4163
4430
|
...props,
|
|
4164
|
-
children: label || description ? /* @__PURE__ */
|
|
4165
|
-
label ? /* @__PURE__ */
|
|
4431
|
+
children: label || description ? /* @__PURE__ */ jsxs16("span", { className: "grid justify-items-center gap-1 text-center", children: [
|
|
4432
|
+
label ? /* @__PURE__ */ jsx30(
|
|
4166
4433
|
"span",
|
|
4167
4434
|
{
|
|
4168
4435
|
id: labelId,
|
|
@@ -4177,7 +4444,7 @@ var RadioGroupItem = React25.forwardRef(function RadioGroupItem2({
|
|
|
4177
4444
|
})
|
|
4178
4445
|
}
|
|
4179
4446
|
) : null,
|
|
4180
|
-
description ? /* @__PURE__ */
|
|
4447
|
+
description ? /* @__PURE__ */ jsx30(
|
|
4181
4448
|
"span",
|
|
4182
4449
|
{
|
|
4183
4450
|
id: descriptionId,
|
|
@@ -4196,16 +4463,16 @@ var RadioGroupItem = React25.forwardRef(function RadioGroupItem2({
|
|
|
4196
4463
|
}
|
|
4197
4464
|
);
|
|
4198
4465
|
}
|
|
4199
|
-
return /* @__PURE__ */
|
|
4466
|
+
return /* @__PURE__ */ jsxs16(
|
|
4200
4467
|
"label",
|
|
4201
4468
|
{
|
|
4202
4469
|
className: selectionControlContainerClasses({
|
|
4203
|
-
alignClassName,
|
|
4470
|
+
alignClassName: alignClassName2,
|
|
4204
4471
|
className,
|
|
4205
4472
|
disabled
|
|
4206
4473
|
}),
|
|
4207
4474
|
children: [
|
|
4208
|
-
/* @__PURE__ */
|
|
4475
|
+
/* @__PURE__ */ jsx30(
|
|
4209
4476
|
RadioGroupPrimitive.Item,
|
|
4210
4477
|
{
|
|
4211
4478
|
ref,
|
|
@@ -4221,7 +4488,7 @@ var RadioGroupItem = React25.forwardRef(function RadioGroupItem2({
|
|
|
4221
4488
|
controlClassName
|
|
4222
4489
|
),
|
|
4223
4490
|
...props,
|
|
4224
|
-
children: /* @__PURE__ */
|
|
4491
|
+
children: /* @__PURE__ */ jsx30(RadioGroupPrimitive.Indicator, { asChild: true, children: /* @__PURE__ */ jsx30(
|
|
4225
4492
|
"span",
|
|
4226
4493
|
{
|
|
4227
4494
|
"data-slot": "radio-group-indicator",
|
|
@@ -4233,8 +4500,8 @@ var RadioGroupItem = React25.forwardRef(function RadioGroupItem2({
|
|
|
4233
4500
|
) })
|
|
4234
4501
|
}
|
|
4235
4502
|
),
|
|
4236
|
-
label || description ? /* @__PURE__ */
|
|
4237
|
-
label ? /* @__PURE__ */
|
|
4503
|
+
label || description ? /* @__PURE__ */ jsxs16("span", { className: selectionControlContentBaseClasses, children: [
|
|
4504
|
+
label ? /* @__PURE__ */ jsx30(
|
|
4238
4505
|
"span",
|
|
4239
4506
|
{
|
|
4240
4507
|
id: labelId,
|
|
@@ -4249,7 +4516,7 @@ var RadioGroupItem = React25.forwardRef(function RadioGroupItem2({
|
|
|
4249
4516
|
})
|
|
4250
4517
|
}
|
|
4251
4518
|
) : null,
|
|
4252
|
-
description ? /* @__PURE__ */
|
|
4519
|
+
description ? /* @__PURE__ */ jsx30(
|
|
4253
4520
|
"span",
|
|
4254
4521
|
{
|
|
4255
4522
|
id: descriptionId,
|
|
@@ -4270,7 +4537,7 @@ var RadioGroupItem = React25.forwardRef(function RadioGroupItem2({
|
|
|
4270
4537
|
);
|
|
4271
4538
|
});
|
|
4272
4539
|
RadioGroupItem.displayName = RadioGroupPrimitive.Item.displayName;
|
|
4273
|
-
var RadioGroupOptionAvatar =
|
|
4540
|
+
var RadioGroupOptionAvatar = React28.forwardRef(function RadioGroupOptionAvatar2({
|
|
4274
4541
|
alt,
|
|
4275
4542
|
avatarClassName,
|
|
4276
4543
|
avatarProps,
|
|
@@ -4280,7 +4547,7 @@ var RadioGroupOptionAvatar = React25.forwardRef(function RadioGroupOptionAvatar2
|
|
|
4280
4547
|
src,
|
|
4281
4548
|
...props
|
|
4282
4549
|
}, ref) {
|
|
4283
|
-
return /* @__PURE__ */
|
|
4550
|
+
return /* @__PURE__ */ jsx30(
|
|
4284
4551
|
"span",
|
|
4285
4552
|
{
|
|
4286
4553
|
ref,
|
|
@@ -4290,7 +4557,7 @@ var RadioGroupOptionAvatar = React25.forwardRef(function RadioGroupOptionAvatar2
|
|
|
4290
4557
|
className
|
|
4291
4558
|
),
|
|
4292
4559
|
...props,
|
|
4293
|
-
children: children ?? /* @__PURE__ */
|
|
4560
|
+
children: children ?? /* @__PURE__ */ jsx30(
|
|
4294
4561
|
Avatar,
|
|
4295
4562
|
{
|
|
4296
4563
|
...avatarProps,
|
|
@@ -4307,9 +4574,9 @@ var RadioGroupOptionAvatar = React25.forwardRef(function RadioGroupOptionAvatar2
|
|
|
4307
4574
|
);
|
|
4308
4575
|
});
|
|
4309
4576
|
RadioGroupOptionAvatar.displayName = "RadioGroupOptionAvatar";
|
|
4310
|
-
var RadioGroupOptionLabel =
|
|
4311
|
-
const { labelId } =
|
|
4312
|
-
return /* @__PURE__ */
|
|
4577
|
+
var RadioGroupOptionLabel = React28.forwardRef(function RadioGroupOptionLabel2({ children, className, ...props }, ref) {
|
|
4578
|
+
const { labelId } = React28.useContext(RadioGroupOptionContext);
|
|
4579
|
+
return /* @__PURE__ */ jsx30(
|
|
4313
4580
|
"span",
|
|
4314
4581
|
{
|
|
4315
4582
|
ref,
|
|
@@ -4329,9 +4596,9 @@ var RadioGroupOptionLabel = React25.forwardRef(function RadioGroupOptionLabel2({
|
|
|
4329
4596
|
);
|
|
4330
4597
|
});
|
|
4331
4598
|
RadioGroupOptionLabel.displayName = "RadioGroupOptionLabel";
|
|
4332
|
-
var RadioGroupOptionDescription =
|
|
4333
|
-
const { descriptionId } =
|
|
4334
|
-
return /* @__PURE__ */
|
|
4599
|
+
var RadioGroupOptionDescription = React28.forwardRef(function RadioGroupOptionDescription2({ children, className, ...props }, ref) {
|
|
4600
|
+
const { descriptionId } = React28.useContext(RadioGroupOptionContext);
|
|
4601
|
+
return /* @__PURE__ */ jsx30(
|
|
4335
4602
|
"span",
|
|
4336
4603
|
{
|
|
4337
4604
|
ref,
|
|
@@ -4350,8 +4617,8 @@ var RadioGroupOptionDescription = React25.forwardRef(function RadioGroupOptionDe
|
|
|
4350
4617
|
);
|
|
4351
4618
|
});
|
|
4352
4619
|
RadioGroupOptionDescription.displayName = "RadioGroupOptionDescription";
|
|
4353
|
-
var RadioGroupOptionIndicator =
|
|
4354
|
-
return /* @__PURE__ */
|
|
4620
|
+
var RadioGroupOptionIndicator = React28.forwardRef(function RadioGroupOptionIndicator2({ children, className, ...props }, ref) {
|
|
4621
|
+
return /* @__PURE__ */ jsx30(
|
|
4355
4622
|
"span",
|
|
4356
4623
|
{
|
|
4357
4624
|
ref,
|
|
@@ -4361,7 +4628,7 @@ var RadioGroupOptionIndicator = React25.forwardRef(function RadioGroupOptionIndi
|
|
|
4361
4628
|
className
|
|
4362
4629
|
),
|
|
4363
4630
|
...props,
|
|
4364
|
-
children: children ?? /* @__PURE__ */
|
|
4631
|
+
children: children ?? /* @__PURE__ */ jsx30(
|
|
4365
4632
|
"svg",
|
|
4366
4633
|
{
|
|
4367
4634
|
"aria-hidden": "true",
|
|
@@ -4369,7 +4636,7 @@ var RadioGroupOptionIndicator = React25.forwardRef(function RadioGroupOptionIndi
|
|
|
4369
4636
|
className: "h-6 w-6 opacity-0 transition-opacity duration-sofya ease-sofya group-data-[state=checked]/radio-option:opacity-100",
|
|
4370
4637
|
fill: "none",
|
|
4371
4638
|
xmlns: "http://www.w3.org/2000/svg",
|
|
4372
|
-
children: /* @__PURE__ */
|
|
4639
|
+
children: /* @__PURE__ */ jsx30(
|
|
4373
4640
|
"path",
|
|
4374
4641
|
{
|
|
4375
4642
|
d: "M9.55 17.6537L4.2155 12.3192L5.2845 11.25L9.55 15.5155L18.7155 6.35L19.7845 7.41925L9.55 17.6537Z",
|
|
@@ -4383,14 +4650,14 @@ var RadioGroupOptionIndicator = React25.forwardRef(function RadioGroupOptionIndi
|
|
|
4383
4650
|
});
|
|
4384
4651
|
RadioGroupOptionIndicator.displayName = "RadioGroupOptionIndicator";
|
|
4385
4652
|
function isOptionChild(child, component) {
|
|
4386
|
-
return
|
|
4653
|
+
return React28.isValidElement(child) && child.type === component;
|
|
4387
4654
|
}
|
|
4388
|
-
var RadioGroupOption =
|
|
4389
|
-
const generatedId =
|
|
4655
|
+
var RadioGroupOption = React28.forwardRef(function RadioGroupOption2({ children, className, disabled, id, ...props }, ref) {
|
|
4656
|
+
const generatedId = React28.useId();
|
|
4390
4657
|
const resolvedId = id ?? generatedId;
|
|
4391
4658
|
const labelId = `${resolvedId}-label`;
|
|
4392
4659
|
const descriptionId = `${resolvedId}-description`;
|
|
4393
|
-
const childArray =
|
|
4660
|
+
const childArray = React28.Children.toArray(children);
|
|
4394
4661
|
const leadingChildren = [];
|
|
4395
4662
|
const contentChildren = [];
|
|
4396
4663
|
let indicatorChild = null;
|
|
@@ -4405,7 +4672,7 @@ var RadioGroupOption = React25.forwardRef(function RadioGroupOption2({ children,
|
|
|
4405
4672
|
}
|
|
4406
4673
|
contentChildren.push(child);
|
|
4407
4674
|
}
|
|
4408
|
-
return /* @__PURE__ */
|
|
4675
|
+
return /* @__PURE__ */ jsx30(RadioGroupOptionContext.Provider, { value: { descriptionId, labelId }, children: /* @__PURE__ */ jsxs16(
|
|
4409
4676
|
RadioGroupPrimitive.Item,
|
|
4410
4677
|
{
|
|
4411
4678
|
ref,
|
|
@@ -4425,7 +4692,7 @@ var RadioGroupOption = React25.forwardRef(function RadioGroupOption2({ children,
|
|
|
4425
4692
|
...props,
|
|
4426
4693
|
children: [
|
|
4427
4694
|
leadingChildren,
|
|
4428
|
-
/* @__PURE__ */
|
|
4695
|
+
/* @__PURE__ */ jsx30(
|
|
4429
4696
|
"span",
|
|
4430
4697
|
{
|
|
4431
4698
|
"data-slot": "radio-group-option-content",
|
|
@@ -4433,7 +4700,7 @@ var RadioGroupOption = React25.forwardRef(function RadioGroupOption2({ children,
|
|
|
4433
4700
|
children: contentChildren
|
|
4434
4701
|
}
|
|
4435
4702
|
),
|
|
4436
|
-
indicatorChild ?? /* @__PURE__ */
|
|
4703
|
+
indicatorChild ?? /* @__PURE__ */ jsx30(RadioGroupOptionIndicator, {})
|
|
4437
4704
|
]
|
|
4438
4705
|
}
|
|
4439
4706
|
) });
|
|
@@ -4449,13 +4716,37 @@ var RadioGroup3 = Object.assign(RadioGroupRoot, {
|
|
|
4449
4716
|
OptionLabel: RadioGroupOptionLabel
|
|
4450
4717
|
});
|
|
4451
4718
|
|
|
4719
|
+
// src/components/right-rail-action.tsx
|
|
4720
|
+
import * as React29 from "react";
|
|
4721
|
+
import { jsx as jsx31 } from "react/jsx-runtime";
|
|
4722
|
+
var RightRailAction = React29.forwardRef(
|
|
4723
|
+
({ active = false, className, icon, ...props }, ref) => /* @__PURE__ */ jsx31(
|
|
4724
|
+
Button,
|
|
4725
|
+
{
|
|
4726
|
+
ref,
|
|
4727
|
+
active,
|
|
4728
|
+
"data-slot": "right-rail-action",
|
|
4729
|
+
leftIcon: icon,
|
|
4730
|
+
size: "icon",
|
|
4731
|
+
variant: "icon",
|
|
4732
|
+
className: cn(
|
|
4733
|
+
"size-[var(--sofya-icon-button-size-md)] rounded-[var(--sofya-radius-md)] shadow-none",
|
|
4734
|
+
active && "bg-[color:var(--sofya-surface-selected)]",
|
|
4735
|
+
className
|
|
4736
|
+
),
|
|
4737
|
+
...props
|
|
4738
|
+
}
|
|
4739
|
+
)
|
|
4740
|
+
);
|
|
4741
|
+
RightRailAction.displayName = "RightRailAction";
|
|
4742
|
+
|
|
4452
4743
|
// src/components/scroll-area.tsx
|
|
4453
|
-
import * as
|
|
4744
|
+
import * as React30 from "react";
|
|
4454
4745
|
import * as ScrollAreaPrimitive from "@radix-ui/react-scroll-area";
|
|
4455
|
-
import { jsx as
|
|
4746
|
+
import { jsx as jsx32 } from "react/jsx-runtime";
|
|
4456
4747
|
var scrollAreaOrientationOptions = ["horizontal", "vertical"];
|
|
4457
|
-
var ScrollArea =
|
|
4458
|
-
return /* @__PURE__ */
|
|
4748
|
+
var ScrollArea = React30.forwardRef(function ScrollArea2({ className, ...props }, ref) {
|
|
4749
|
+
return /* @__PURE__ */ jsx32(
|
|
4459
4750
|
ScrollAreaPrimitive.Root,
|
|
4460
4751
|
{
|
|
4461
4752
|
ref,
|
|
@@ -4466,8 +4757,8 @@ var ScrollArea = React26.forwardRef(function ScrollArea2({ className, ...props }
|
|
|
4466
4757
|
);
|
|
4467
4758
|
});
|
|
4468
4759
|
ScrollArea.displayName = ScrollAreaPrimitive.Root.displayName;
|
|
4469
|
-
var ScrollAreaViewport =
|
|
4470
|
-
return /* @__PURE__ */
|
|
4760
|
+
var ScrollAreaViewport = React30.forwardRef(function ScrollAreaViewport2({ className, ...props }, ref) {
|
|
4761
|
+
return /* @__PURE__ */ jsx32(
|
|
4471
4762
|
ScrollAreaPrimitive.Viewport,
|
|
4472
4763
|
{
|
|
4473
4764
|
ref,
|
|
@@ -4481,8 +4772,8 @@ var ScrollAreaViewport = React26.forwardRef(function ScrollAreaViewport2({ class
|
|
|
4481
4772
|
);
|
|
4482
4773
|
});
|
|
4483
4774
|
ScrollAreaViewport.displayName = ScrollAreaPrimitive.Viewport.displayName;
|
|
4484
|
-
var ScrollAreaScrollbar =
|
|
4485
|
-
return /* @__PURE__ */
|
|
4775
|
+
var ScrollAreaScrollbar = React30.forwardRef(function ScrollAreaScrollbar2({ className, orientation = "vertical", thumbClassName, ...props }, ref) {
|
|
4776
|
+
return /* @__PURE__ */ jsx32(
|
|
4486
4777
|
ScrollAreaPrimitive.Scrollbar,
|
|
4487
4778
|
{
|
|
4488
4779
|
ref,
|
|
@@ -4493,7 +4784,7 @@ var ScrollAreaScrollbar = React26.forwardRef(function ScrollAreaScrollbar2({ cla
|
|
|
4493
4784
|
className
|
|
4494
4785
|
),
|
|
4495
4786
|
...props,
|
|
4496
|
-
children: /* @__PURE__ */
|
|
4787
|
+
children: /* @__PURE__ */ jsx32(
|
|
4497
4788
|
ScrollAreaPrimitive.Thumb,
|
|
4498
4789
|
{
|
|
4499
4790
|
"data-slot": "scroll-area-thumb",
|
|
@@ -4507,8 +4798,8 @@ var ScrollAreaScrollbar = React26.forwardRef(function ScrollAreaScrollbar2({ cla
|
|
|
4507
4798
|
);
|
|
4508
4799
|
});
|
|
4509
4800
|
ScrollAreaScrollbar.displayName = ScrollAreaPrimitive.Scrollbar.displayName;
|
|
4510
|
-
var ScrollAreaCorner =
|
|
4511
|
-
return /* @__PURE__ */
|
|
4801
|
+
var ScrollAreaCorner = React30.forwardRef(function ScrollAreaCorner2({ className, ...props }, ref) {
|
|
4802
|
+
return /* @__PURE__ */ jsx32(
|
|
4512
4803
|
ScrollAreaPrimitive.Corner,
|
|
4513
4804
|
{
|
|
4514
4805
|
ref,
|
|
@@ -4521,19 +4812,19 @@ var ScrollAreaCorner = React26.forwardRef(function ScrollAreaCorner2({ className
|
|
|
4521
4812
|
ScrollAreaCorner.displayName = ScrollAreaPrimitive.Corner.displayName;
|
|
4522
4813
|
|
|
4523
4814
|
// src/components/select.tsx
|
|
4524
|
-
import * as
|
|
4815
|
+
import * as React31 from "react";
|
|
4525
4816
|
import * as SelectPrimitive from "@radix-ui/react-select";
|
|
4526
4817
|
|
|
4527
4818
|
// src/lib/form-control-classes.ts
|
|
4528
4819
|
var formControlBaseClasses = "flex w-full items-center justify-between gap-4 rounded-[10px] border border-[color:var(--sofya-border-strong)] bg-card px-4 text-left [font-family:var(--sofya-text-body-font-family)] text-[length:var(--sofya-text-body-font-size)] [font-weight:var(--sofya-text-body-font-weight)] leading-[var(--sofya-text-body-line-height)] tracking-[var(--sofya-text-body-letter-spacing)] text-[color:var(--sofya-text-default)] shadow-none transition-[border-color,box-shadow,background-color,color] duration-sofya ease-sofya hover:border-[color:var(--sofya-border-hover)] focus:outline-none focus:ring-2 focus:ring-[color:var(--sofya-focus-ring-soft)] focus:ring-offset-0 active:border-transparent active:ring-2 active:ring-[color:var(--sofya-focus-ring-soft)] disabled:cursor-not-allowed disabled:bg-muted disabled:opacity-50 aria-invalid:border-destructive aria-invalid:focus:ring-destructive/20 data-[placeholder]:text-[color:var(--sofya-text-placeholder)]";
|
|
4529
4820
|
|
|
4530
4821
|
// src/components/select.tsx
|
|
4531
|
-
import { jsx as
|
|
4822
|
+
import { jsx as jsx33, jsxs as jsxs17 } from "react/jsx-runtime";
|
|
4532
4823
|
var selectSizeOptions = ["default", "sm"];
|
|
4533
4824
|
var Select = SelectPrimitive.Root;
|
|
4534
4825
|
var SelectGroup = SelectPrimitive.Group;
|
|
4535
|
-
var SelectValue =
|
|
4536
|
-
return /* @__PURE__ */
|
|
4826
|
+
var SelectValue = React31.forwardRef(function SelectValue2({ className, ...props }, ref) {
|
|
4827
|
+
return /* @__PURE__ */ jsx33(
|
|
4537
4828
|
Text,
|
|
4538
4829
|
{
|
|
4539
4830
|
ref,
|
|
@@ -4542,13 +4833,13 @@ var SelectValue = React27.forwardRef(function SelectValue2({ className, ...props
|
|
|
4542
4833
|
className: cn("block truncate text-inherit", className),
|
|
4543
4834
|
size: "tiny",
|
|
4544
4835
|
style: inheritedTypographyStyle,
|
|
4545
|
-
children: /* @__PURE__ */
|
|
4836
|
+
children: /* @__PURE__ */ jsx33(SelectPrimitive.Value, { className: "block truncate", ...props })
|
|
4546
4837
|
}
|
|
4547
4838
|
);
|
|
4548
4839
|
});
|
|
4549
4840
|
SelectValue.displayName = SelectPrimitive.Value.displayName;
|
|
4550
|
-
var SelectTrigger =
|
|
4551
|
-
return /* @__PURE__ */
|
|
4841
|
+
var SelectTrigger = React31.forwardRef(function SelectTrigger2({ className, children, size = "default", ...props }, ref) {
|
|
4842
|
+
return /* @__PURE__ */ jsxs17(
|
|
4552
4843
|
SelectPrimitive.Trigger,
|
|
4553
4844
|
{
|
|
4554
4845
|
ref,
|
|
@@ -4562,7 +4853,7 @@ var SelectTrigger = React27.forwardRef(function SelectTrigger2({ className, chil
|
|
|
4562
4853
|
...props,
|
|
4563
4854
|
children: [
|
|
4564
4855
|
children,
|
|
4565
|
-
/* @__PURE__ */
|
|
4856
|
+
/* @__PURE__ */ jsx33(SelectPrimitive.Icon, { asChild: true, children: /* @__PURE__ */ jsx33(
|
|
4566
4857
|
Icon,
|
|
4567
4858
|
{
|
|
4568
4859
|
name: "caret-down",
|
|
@@ -4575,8 +4866,8 @@ var SelectTrigger = React27.forwardRef(function SelectTrigger2({ className, chil
|
|
|
4575
4866
|
);
|
|
4576
4867
|
});
|
|
4577
4868
|
SelectTrigger.displayName = SelectPrimitive.Trigger.displayName;
|
|
4578
|
-
var SelectScrollUpButton =
|
|
4579
|
-
return /* @__PURE__ */
|
|
4869
|
+
var SelectScrollUpButton = React31.forwardRef(function SelectScrollUpButton2({ className, ...props }, ref) {
|
|
4870
|
+
return /* @__PURE__ */ jsx33(
|
|
4580
4871
|
SelectPrimitive.ScrollUpButton,
|
|
4581
4872
|
{
|
|
4582
4873
|
ref,
|
|
@@ -4586,13 +4877,13 @@ var SelectScrollUpButton = React27.forwardRef(function SelectScrollUpButton2({ c
|
|
|
4586
4877
|
className
|
|
4587
4878
|
),
|
|
4588
4879
|
...props,
|
|
4589
|
-
children: /* @__PURE__ */
|
|
4880
|
+
children: /* @__PURE__ */ jsx33(Icon, { name: "caret-up", size: 12 })
|
|
4590
4881
|
}
|
|
4591
4882
|
);
|
|
4592
4883
|
});
|
|
4593
4884
|
SelectScrollUpButton.displayName = SelectPrimitive.ScrollUpButton.displayName;
|
|
4594
|
-
var SelectScrollDownButton =
|
|
4595
|
-
return /* @__PURE__ */
|
|
4885
|
+
var SelectScrollDownButton = React31.forwardRef(function SelectScrollDownButton2({ className, ...props }, ref) {
|
|
4886
|
+
return /* @__PURE__ */ jsx33(
|
|
4596
4887
|
SelectPrimitive.ScrollDownButton,
|
|
4597
4888
|
{
|
|
4598
4889
|
ref,
|
|
@@ -4602,13 +4893,13 @@ var SelectScrollDownButton = React27.forwardRef(function SelectScrollDownButton2
|
|
|
4602
4893
|
className
|
|
4603
4894
|
),
|
|
4604
4895
|
...props,
|
|
4605
|
-
children: /* @__PURE__ */
|
|
4896
|
+
children: /* @__PURE__ */ jsx33(Icon, { name: "caret-down", size: 12 })
|
|
4606
4897
|
}
|
|
4607
4898
|
);
|
|
4608
4899
|
});
|
|
4609
4900
|
SelectScrollDownButton.displayName = SelectPrimitive.ScrollDownButton.displayName;
|
|
4610
|
-
var SelectContent =
|
|
4611
|
-
return /* @__PURE__ */
|
|
4901
|
+
var SelectContent = React31.forwardRef(function SelectContent2({ className, children, position = "popper", ...props }, ref) {
|
|
4902
|
+
return /* @__PURE__ */ jsx33(SelectPrimitive.Portal, { children: /* @__PURE__ */ jsxs17(
|
|
4612
4903
|
SelectPrimitive.Content,
|
|
4613
4904
|
{
|
|
4614
4905
|
ref,
|
|
@@ -4621,8 +4912,8 @@ var SelectContent = React27.forwardRef(function SelectContent2({ className, chil
|
|
|
4621
4912
|
),
|
|
4622
4913
|
...props,
|
|
4623
4914
|
children: [
|
|
4624
|
-
/* @__PURE__ */
|
|
4625
|
-
/* @__PURE__ */
|
|
4915
|
+
/* @__PURE__ */ jsx33(SelectScrollUpButton, {}),
|
|
4916
|
+
/* @__PURE__ */ jsx33(
|
|
4626
4917
|
SelectPrimitive.Viewport,
|
|
4627
4918
|
{
|
|
4628
4919
|
"data-slot": "select-viewport",
|
|
@@ -4630,14 +4921,14 @@ var SelectContent = React27.forwardRef(function SelectContent2({ className, chil
|
|
|
4630
4921
|
children
|
|
4631
4922
|
}
|
|
4632
4923
|
),
|
|
4633
|
-
/* @__PURE__ */
|
|
4924
|
+
/* @__PURE__ */ jsx33(SelectScrollDownButton, {})
|
|
4634
4925
|
]
|
|
4635
4926
|
}
|
|
4636
4927
|
) });
|
|
4637
4928
|
});
|
|
4638
4929
|
SelectContent.displayName = SelectPrimitive.Content.displayName;
|
|
4639
|
-
var SelectLabel =
|
|
4640
|
-
return /* @__PURE__ */
|
|
4930
|
+
var SelectLabel = React31.forwardRef(function SelectLabel2({ className, ...props }, ref) {
|
|
4931
|
+
return /* @__PURE__ */ jsx33(
|
|
4641
4932
|
SelectPrimitive.Label,
|
|
4642
4933
|
{
|
|
4643
4934
|
ref,
|
|
@@ -4659,8 +4950,8 @@ var SelectLabel = React27.forwardRef(function SelectLabel2({ className, ...props
|
|
|
4659
4950
|
);
|
|
4660
4951
|
});
|
|
4661
4952
|
SelectLabel.displayName = SelectPrimitive.Label.displayName;
|
|
4662
|
-
var SelectItem =
|
|
4663
|
-
return /* @__PURE__ */
|
|
4953
|
+
var SelectItem = React31.forwardRef(function SelectItem2({ className, children, ...props }, ref) {
|
|
4954
|
+
return /* @__PURE__ */ jsxs17(
|
|
4664
4955
|
SelectPrimitive.Item,
|
|
4665
4956
|
{
|
|
4666
4957
|
ref,
|
|
@@ -4671,20 +4962,20 @@ var SelectItem = React27.forwardRef(function SelectItem2({ className, children,
|
|
|
4671
4962
|
),
|
|
4672
4963
|
...props,
|
|
4673
4964
|
children: [
|
|
4674
|
-
/* @__PURE__ */
|
|
4965
|
+
/* @__PURE__ */ jsx33(SelectPrimitive.ItemText, { className: "truncate", children: renderTextContent(children, {
|
|
4675
4966
|
as: "span",
|
|
4676
4967
|
className: "block truncate text-[color:var(--sofya-text-default)]",
|
|
4677
4968
|
size: "tiny",
|
|
4678
4969
|
style: inheritedTypographyStyle
|
|
4679
4970
|
}) }),
|
|
4680
|
-
/* @__PURE__ */
|
|
4971
|
+
/* @__PURE__ */ jsx33(SelectPrimitive.ItemIndicator, { asChild: true, children: /* @__PURE__ */ jsx33("span", { className: "absolute right-4 inline-flex h-4 w-4 items-center justify-center text-primary", children: /* @__PURE__ */ jsx33(Icon, { name: "check", size: 14 }) }) })
|
|
4681
4972
|
]
|
|
4682
4973
|
}
|
|
4683
4974
|
);
|
|
4684
4975
|
});
|
|
4685
4976
|
SelectItem.displayName = SelectPrimitive.Item.displayName;
|
|
4686
|
-
var SelectSeparator =
|
|
4687
|
-
return /* @__PURE__ */
|
|
4977
|
+
var SelectSeparator = React31.forwardRef(function SelectSeparator2({ className, ...props }, ref) {
|
|
4978
|
+
return /* @__PURE__ */ jsx33(
|
|
4688
4979
|
SelectPrimitive.Separator,
|
|
4689
4980
|
{
|
|
4690
4981
|
ref,
|
|
@@ -4697,11 +4988,11 @@ var SelectSeparator = React27.forwardRef(function SelectSeparator2({ className,
|
|
|
4697
4988
|
SelectSeparator.displayName = SelectPrimitive.Separator.displayName;
|
|
4698
4989
|
|
|
4699
4990
|
// src/components/separator.tsx
|
|
4700
|
-
import * as
|
|
4991
|
+
import * as React32 from "react";
|
|
4701
4992
|
import * as SeparatorPrimitive from "@radix-ui/react-separator";
|
|
4702
|
-
import { jsx as
|
|
4703
|
-
var Separator2 =
|
|
4704
|
-
return /* @__PURE__ */
|
|
4993
|
+
import { jsx as jsx34 } from "react/jsx-runtime";
|
|
4994
|
+
var Separator2 = React32.forwardRef(function Separator3({ className, decorative = true, orientation = "horizontal", ...props }, ref) {
|
|
4995
|
+
return /* @__PURE__ */ jsx34(
|
|
4705
4996
|
SeparatorPrimitive.Root,
|
|
4706
4997
|
{
|
|
4707
4998
|
ref,
|
|
@@ -4720,8 +5011,8 @@ var Separator2 = React28.forwardRef(function Separator3({ className, decorative
|
|
|
4720
5011
|
Separator2.displayName = SeparatorPrimitive.Root.displayName;
|
|
4721
5012
|
|
|
4722
5013
|
// src/components/slider.tsx
|
|
4723
|
-
import * as
|
|
4724
|
-
import { jsx as
|
|
5014
|
+
import * as React33 from "react";
|
|
5015
|
+
import { jsx as jsx35, jsxs as jsxs18 } from "react/jsx-runtime";
|
|
4725
5016
|
function clampSliderValue(value, min, max) {
|
|
4726
5017
|
if (Number.isNaN(value)) {
|
|
4727
5018
|
return min;
|
|
@@ -4746,7 +5037,7 @@ function resolveSliderMeasurement(value, fallback) {
|
|
|
4746
5037
|
function isTextValue(value) {
|
|
4747
5038
|
return typeof value === "string" || typeof value === "number";
|
|
4748
5039
|
}
|
|
4749
|
-
var Slider =
|
|
5040
|
+
var Slider = React33.forwardRef(function Slider2({
|
|
4750
5041
|
className,
|
|
4751
5042
|
defaultValue,
|
|
4752
5043
|
formatValue,
|
|
@@ -4769,7 +5060,7 @@ var Slider = React29.forwardRef(function Slider2({
|
|
|
4769
5060
|
valueClassName,
|
|
4770
5061
|
...props
|
|
4771
5062
|
}, ref) {
|
|
4772
|
-
const resolvedId =
|
|
5063
|
+
const resolvedId = React33.useId();
|
|
4773
5064
|
const inputId = id ?? resolvedId;
|
|
4774
5065
|
const safeMin = min;
|
|
4775
5066
|
const safeMax = resolveSliderMax(safeMin, max);
|
|
@@ -4778,7 +5069,7 @@ var Slider = React29.forwardRef(function Slider2({
|
|
|
4778
5069
|
onChange: onValueChange,
|
|
4779
5070
|
value
|
|
4780
5071
|
});
|
|
4781
|
-
|
|
5072
|
+
React33.useEffect(() => {
|
|
4782
5073
|
if (value !== void 0) {
|
|
4783
5074
|
return;
|
|
4784
5075
|
}
|
|
@@ -4825,14 +5116,14 @@ var Slider = React29.forwardRef(function Slider2({
|
|
|
4825
5116
|
setControllableValue(nextValue);
|
|
4826
5117
|
onChange?.(event);
|
|
4827
5118
|
};
|
|
4828
|
-
return /* @__PURE__ */
|
|
5119
|
+
return /* @__PURE__ */ jsxs18(
|
|
4829
5120
|
"div",
|
|
4830
5121
|
{
|
|
4831
5122
|
"data-slot": "slider",
|
|
4832
5123
|
className: cn("grid w-full gap-2", className),
|
|
4833
5124
|
children: [
|
|
4834
|
-
label || showValue ? /* @__PURE__ */
|
|
4835
|
-
label ? /* @__PURE__ */
|
|
5125
|
+
label || showValue ? /* @__PURE__ */ jsxs18("div", { className: "flex items-center justify-between gap-4", children: [
|
|
5126
|
+
label ? /* @__PURE__ */ jsx35(
|
|
4836
5127
|
FieldLabel,
|
|
4837
5128
|
{
|
|
4838
5129
|
htmlFor: inputId,
|
|
@@ -4843,8 +5134,8 @@ var Slider = React29.forwardRef(function Slider2({
|
|
|
4843
5134
|
textClassName: "block min-w-0 text-[color:var(--sofya-text-default)]",
|
|
4844
5135
|
children: label
|
|
4845
5136
|
}
|
|
4846
|
-
) : /* @__PURE__ */
|
|
4847
|
-
showValue ? /* @__PURE__ */
|
|
5137
|
+
) : /* @__PURE__ */ jsx35("span", {}),
|
|
5138
|
+
showValue ? /* @__PURE__ */ jsx35(
|
|
4848
5139
|
"div",
|
|
4849
5140
|
{
|
|
4850
5141
|
className: cn(
|
|
@@ -4862,7 +5153,7 @@ var Slider = React29.forwardRef(function Slider2({
|
|
|
4862
5153
|
}
|
|
4863
5154
|
) : null
|
|
4864
5155
|
] }) : null,
|
|
4865
|
-
/* @__PURE__ */
|
|
5156
|
+
/* @__PURE__ */ jsxs18(
|
|
4866
5157
|
"div",
|
|
4867
5158
|
{
|
|
4868
5159
|
"data-slot": "slider-control",
|
|
@@ -4872,7 +5163,7 @@ var Slider = React29.forwardRef(function Slider2({
|
|
|
4872
5163
|
),
|
|
4873
5164
|
style: controlStyle,
|
|
4874
5165
|
children: [
|
|
4875
|
-
/* @__PURE__ */
|
|
5166
|
+
/* @__PURE__ */ jsx35(
|
|
4876
5167
|
"input",
|
|
4877
5168
|
{
|
|
4878
5169
|
...props,
|
|
@@ -4889,7 +5180,7 @@ var Slider = React29.forwardRef(function Slider2({
|
|
|
4889
5180
|
style: inputBoundsStyle
|
|
4890
5181
|
}
|
|
4891
5182
|
),
|
|
4892
|
-
/* @__PURE__ */
|
|
5183
|
+
/* @__PURE__ */ jsx35(
|
|
4893
5184
|
"div",
|
|
4894
5185
|
{
|
|
4895
5186
|
"data-slot": "slider-track",
|
|
@@ -4900,7 +5191,7 @@ var Slider = React29.forwardRef(function Slider2({
|
|
|
4900
5191
|
style: trackBoundsStyle
|
|
4901
5192
|
}
|
|
4902
5193
|
),
|
|
4903
|
-
/* @__PURE__ */
|
|
5194
|
+
/* @__PURE__ */ jsx35(
|
|
4904
5195
|
"div",
|
|
4905
5196
|
{
|
|
4906
5197
|
"data-slot": "slider-range",
|
|
@@ -4911,7 +5202,7 @@ var Slider = React29.forwardRef(function Slider2({
|
|
|
4911
5202
|
style: rangeStyle
|
|
4912
5203
|
}
|
|
4913
5204
|
),
|
|
4914
|
-
/* @__PURE__ */
|
|
5205
|
+
/* @__PURE__ */ jsx35(
|
|
4915
5206
|
"div",
|
|
4916
5207
|
{
|
|
4917
5208
|
"data-slot": "slider-thumb",
|
|
@@ -4932,10 +5223,10 @@ var Slider = React29.forwardRef(function Slider2({
|
|
|
4932
5223
|
Slider.displayName = "Slider";
|
|
4933
5224
|
|
|
4934
5225
|
// src/components/skeleton.tsx
|
|
4935
|
-
import * as
|
|
4936
|
-
import { jsx as
|
|
4937
|
-
var Skeleton =
|
|
4938
|
-
return /* @__PURE__ */
|
|
5226
|
+
import * as React34 from "react";
|
|
5227
|
+
import { jsx as jsx36 } from "react/jsx-runtime";
|
|
5228
|
+
var Skeleton = React34.forwardRef(function Skeleton2({ className, ...props }, ref) {
|
|
5229
|
+
return /* @__PURE__ */ jsx36(
|
|
4939
5230
|
"div",
|
|
4940
5231
|
{
|
|
4941
5232
|
ref,
|
|
@@ -4950,18 +5241,18 @@ var Skeleton = React30.forwardRef(function Skeleton2({ className, ...props }, re
|
|
|
4950
5241
|
Skeleton.displayName = "Skeleton";
|
|
4951
5242
|
|
|
4952
5243
|
// src/components/sonner.tsx
|
|
4953
|
-
import * as
|
|
5244
|
+
import * as React35 from "react";
|
|
4954
5245
|
import {
|
|
4955
5246
|
Toaster as SonnerToaster,
|
|
4956
5247
|
toast
|
|
4957
5248
|
} from "sonner";
|
|
4958
|
-
import { jsx as
|
|
5249
|
+
import { jsx as jsx37 } from "react/jsx-runtime";
|
|
4959
5250
|
var notificationVariantOptions = ["default", "success", "error", "warning"];
|
|
4960
5251
|
function ToastStatusIcon({
|
|
4961
5252
|
iconName,
|
|
4962
5253
|
className
|
|
4963
5254
|
}) {
|
|
4964
|
-
return /* @__PURE__ */
|
|
5255
|
+
return /* @__PURE__ */ jsx37(
|
|
4965
5256
|
"span",
|
|
4966
5257
|
{
|
|
4967
5258
|
"aria-hidden": "true",
|
|
@@ -4969,7 +5260,7 @@ function ToastStatusIcon({
|
|
|
4969
5260
|
"inline-flex h-9 w-9 shrink-0 items-center justify-center rounded-full border shadow-sofya-sm",
|
|
4970
5261
|
className
|
|
4971
5262
|
),
|
|
4972
|
-
children: /* @__PURE__ */
|
|
5263
|
+
children: /* @__PURE__ */ jsx37(Icon, { name: iconName, size: 16 })
|
|
4973
5264
|
}
|
|
4974
5265
|
);
|
|
4975
5266
|
}
|
|
@@ -4990,35 +5281,35 @@ var defaultToastClassNames = {
|
|
|
4990
5281
|
loading: "border-border bg-card text-foreground"
|
|
4991
5282
|
};
|
|
4992
5283
|
var defaultToastIcons = {
|
|
4993
|
-
success: /* @__PURE__ */
|
|
5284
|
+
success: /* @__PURE__ */ jsx37(
|
|
4994
5285
|
ToastStatusIcon,
|
|
4995
5286
|
{
|
|
4996
5287
|
iconName: "check",
|
|
4997
5288
|
className: "border-success/15 bg-success/12 text-success"
|
|
4998
5289
|
}
|
|
4999
5290
|
),
|
|
5000
|
-
error: /* @__PURE__ */
|
|
5291
|
+
error: /* @__PURE__ */ jsx37(
|
|
5001
5292
|
ToastStatusIcon,
|
|
5002
5293
|
{
|
|
5003
5294
|
iconName: "x",
|
|
5004
5295
|
className: "border-destructive/15 bg-destructive/12 text-destructive"
|
|
5005
5296
|
}
|
|
5006
5297
|
),
|
|
5007
|
-
warning: /* @__PURE__ */
|
|
5298
|
+
warning: /* @__PURE__ */ jsx37(
|
|
5008
5299
|
ToastStatusIcon,
|
|
5009
5300
|
{
|
|
5010
5301
|
iconName: "question",
|
|
5011
5302
|
className: "border-warning/20 bg-warning/15 text-foreground"
|
|
5012
5303
|
}
|
|
5013
5304
|
),
|
|
5014
|
-
info: /* @__PURE__ */
|
|
5305
|
+
info: /* @__PURE__ */ jsx37(
|
|
5015
5306
|
ToastStatusIcon,
|
|
5016
5307
|
{
|
|
5017
5308
|
iconName: "question",
|
|
5018
5309
|
className: "border-primary/15 bg-primary/10 text-primary"
|
|
5019
5310
|
}
|
|
5020
5311
|
),
|
|
5021
|
-
close: /* @__PURE__ */
|
|
5312
|
+
close: /* @__PURE__ */ jsx37(Icon, { name: "x", size: 12 })
|
|
5022
5313
|
};
|
|
5023
5314
|
function mergeToastClassNames(overrides) {
|
|
5024
5315
|
return {
|
|
@@ -5026,7 +5317,7 @@ function mergeToastClassNames(overrides) {
|
|
|
5026
5317
|
...overrides
|
|
5027
5318
|
};
|
|
5028
5319
|
}
|
|
5029
|
-
var Toaster =
|
|
5320
|
+
var Toaster = React35.forwardRef(
|
|
5030
5321
|
function Toaster2({
|
|
5031
5322
|
className,
|
|
5032
5323
|
closeButton = true,
|
|
@@ -5038,7 +5329,7 @@ var Toaster = React31.forwardRef(
|
|
|
5038
5329
|
visibleToasts = 5,
|
|
5039
5330
|
...props
|
|
5040
5331
|
}, ref) {
|
|
5041
|
-
return /* @__PURE__ */
|
|
5332
|
+
return /* @__PURE__ */ jsx37(
|
|
5042
5333
|
SonnerToaster,
|
|
5043
5334
|
{
|
|
5044
5335
|
ref,
|
|
@@ -5068,9 +5359,9 @@ var Toaster = React31.forwardRef(
|
|
|
5068
5359
|
Toaster.displayName = "Toaster";
|
|
5069
5360
|
|
|
5070
5361
|
// src/components/switch.tsx
|
|
5071
|
-
import * as
|
|
5362
|
+
import * as React36 from "react";
|
|
5072
5363
|
import * as SwitchPrimitives from "@radix-ui/react-switch";
|
|
5073
|
-
import { jsx as
|
|
5364
|
+
import { jsx as jsx38, jsxs as jsxs19 } from "react/jsx-runtime";
|
|
5074
5365
|
var switchSizeOptions = ["default", "sm"];
|
|
5075
5366
|
var switchRootSizeClasses = {
|
|
5076
5367
|
default: "h-6 w-11",
|
|
@@ -5080,7 +5371,7 @@ var switchThumbSizeClasses = {
|
|
|
5080
5371
|
default: "h-5 w-5 data-[state=checked]:translate-x-5 data-[state=unchecked]:translate-x-0",
|
|
5081
5372
|
sm: "h-4 w-4 data-[state=checked]:translate-x-4 data-[state=unchecked]:translate-x-0"
|
|
5082
5373
|
};
|
|
5083
|
-
var Switch =
|
|
5374
|
+
var Switch = React36.forwardRef(
|
|
5084
5375
|
({
|
|
5085
5376
|
"aria-describedby": ariaDescribedBy,
|
|
5086
5377
|
"aria-labelledby": ariaLabelledBy,
|
|
@@ -5095,16 +5386,16 @@ var Switch = React32.forwardRef(
|
|
|
5095
5386
|
size,
|
|
5096
5387
|
...props
|
|
5097
5388
|
}, ref) => {
|
|
5098
|
-
const generatedId =
|
|
5389
|
+
const generatedId = React36.useId();
|
|
5099
5390
|
const resolvedId = id ?? generatedId;
|
|
5100
5391
|
const labelId = label ? `${resolvedId}-label` : void 0;
|
|
5101
5392
|
const descriptionId = description ? `${resolvedId}-description` : void 0;
|
|
5102
5393
|
const hasTextContent = label !== void 0 || description !== void 0;
|
|
5103
5394
|
const resolvedSize = size ?? (hasTextContent ? "sm" : "default");
|
|
5104
|
-
const
|
|
5395
|
+
const alignClassName2 = description ? "items-start" : "items-center";
|
|
5105
5396
|
const resolvedAriaDescribedBy = [ariaDescribedBy, descriptionId].filter(Boolean).join(" ") || void 0;
|
|
5106
5397
|
const resolvedAriaLabelledBy = ariaLabelledBy ?? labelId;
|
|
5107
|
-
const switchControl = /* @__PURE__ */
|
|
5398
|
+
const switchControl = /* @__PURE__ */ jsx38(
|
|
5108
5399
|
SwitchPrimitives.Root,
|
|
5109
5400
|
{
|
|
5110
5401
|
id: resolvedId,
|
|
@@ -5119,7 +5410,7 @@ var Switch = React32.forwardRef(
|
|
|
5119
5410
|
"data-size": resolvedSize,
|
|
5120
5411
|
...props,
|
|
5121
5412
|
ref,
|
|
5122
|
-
children: /* @__PURE__ */
|
|
5413
|
+
children: /* @__PURE__ */ jsx38(
|
|
5123
5414
|
SwitchPrimitives.Thumb,
|
|
5124
5415
|
{
|
|
5125
5416
|
className: cn(
|
|
@@ -5133,19 +5424,19 @@ var Switch = React32.forwardRef(
|
|
|
5133
5424
|
if (!hasTextContent) {
|
|
5134
5425
|
return switchControl;
|
|
5135
5426
|
}
|
|
5136
|
-
return /* @__PURE__ */
|
|
5427
|
+
return /* @__PURE__ */ jsxs19(
|
|
5137
5428
|
"div",
|
|
5138
5429
|
{
|
|
5139
5430
|
"data-slot": "switch-container",
|
|
5140
5431
|
className: selectionControlContainerClasses({
|
|
5141
|
-
alignClassName,
|
|
5432
|
+
alignClassName: alignClassName2,
|
|
5142
5433
|
className: containerClassName,
|
|
5143
5434
|
disabled
|
|
5144
5435
|
}),
|
|
5145
5436
|
children: [
|
|
5146
5437
|
switchControl,
|
|
5147
|
-
/* @__PURE__ */
|
|
5148
|
-
label ? /* @__PURE__ */
|
|
5438
|
+
/* @__PURE__ */ jsxs19("span", { className: selectionControlContentBaseClasses, children: [
|
|
5439
|
+
label ? /* @__PURE__ */ jsx38("label", { htmlFor: resolvedId, className: selectionControlLabelTextBaseClasses, children: /* @__PURE__ */ jsx38(
|
|
5149
5440
|
"span",
|
|
5150
5441
|
{
|
|
5151
5442
|
id: labelId,
|
|
@@ -5160,7 +5451,7 @@ var Switch = React32.forwardRef(
|
|
|
5160
5451
|
})
|
|
5161
5452
|
}
|
|
5162
5453
|
) }) : null,
|
|
5163
|
-
description ? /* @__PURE__ */
|
|
5454
|
+
description ? /* @__PURE__ */ jsx38(
|
|
5164
5455
|
"span",
|
|
5165
5456
|
{
|
|
5166
5457
|
id: descriptionId,
|
|
@@ -5185,17 +5476,18 @@ Switch.displayName = SwitchPrimitives.Root.displayName;
|
|
|
5185
5476
|
|
|
5186
5477
|
// src/components/table.tsx
|
|
5187
5478
|
import { cva as cva8 } from "class-variance-authority";
|
|
5188
|
-
import * as
|
|
5189
|
-
import { jsx as
|
|
5479
|
+
import * as React37 from "react";
|
|
5480
|
+
import { jsx as jsx39 } from "react/jsx-runtime";
|
|
5190
5481
|
var tableCellVariantOptions = ["default", "primary", "muted"];
|
|
5191
5482
|
var tableStatusToneOptions = [
|
|
5192
5483
|
"active",
|
|
5193
5484
|
"inactive",
|
|
5485
|
+
"info",
|
|
5194
5486
|
"warning"
|
|
5195
5487
|
];
|
|
5196
5488
|
var tableActionToneOptions = ["primary", "neutral", "danger"];
|
|
5197
5489
|
var tableCellVariants = cva8(
|
|
5198
|
-
"px-
|
|
5490
|
+
"px-4 py-5 align-middle [font-family:var(--sofya-text-body-font-family)] text-[length:var(--sofya-text-body-font-size)] font-normal leading-[var(--sofya-text-body-line-height)] tracking-[var(--sofya-text-body-letter-spacing)]",
|
|
5199
5491
|
{
|
|
5200
5492
|
variants: {
|
|
5201
5493
|
variant: {
|
|
@@ -5214,6 +5506,7 @@ var tableStatusBadgeVariants = cva8("normal-case", {
|
|
|
5214
5506
|
tone: {
|
|
5215
5507
|
active: "border-[color:var(--sofya-tone-success-border)] bg-[color:var(--sofya-tone-success-background)] text-[color:var(--sofya-tone-success-foreground)]",
|
|
5216
5508
|
inactive: "border-[color:var(--sofya-tone-default-border)] bg-[color:var(--sofya-tone-default-background)] text-[color:var(--sofya-text-subtle)]",
|
|
5509
|
+
info: "border-transparent bg-primary/10 text-primary",
|
|
5217
5510
|
warning: "border-[color:var(--sofya-tone-warning-border)] bg-[color:var(--sofya-tone-warning-background)] text-[color:var(--sofya-tone-warning-foreground)]"
|
|
5218
5511
|
}
|
|
5219
5512
|
},
|
|
@@ -5222,7 +5515,7 @@ var tableStatusBadgeVariants = cva8("normal-case", {
|
|
|
5222
5515
|
}
|
|
5223
5516
|
});
|
|
5224
5517
|
var tableActionButtonVariants = cva8(
|
|
5225
|
-
"text-[length:var(--sofya-text-body-font-size)] leading-[var(--sofya-text-body-line-height)] shadow-none motion-safe:active:scale-[0.97] focus-visible:ring-[color:var(--sofya-focus-ring-soft)] focus-visible:ring-offset-0 disabled:opacity-40 [&_svg]:h-[1em] [&_svg]:w-[1em] [&_svg]:shrink-0",
|
|
5518
|
+
"h-8 w-8 text-[length:var(--sofya-text-body-font-size)] leading-[var(--sofya-text-body-line-height)] shadow-none motion-safe:active:scale-[0.97] focus-visible:ring-[color:var(--sofya-focus-ring-soft)] focus-visible:ring-offset-0 disabled:opacity-40 [&_svg]:h-[1em] [&_svg]:w-[1em] [&_svg]:shrink-0",
|
|
5226
5519
|
{
|
|
5227
5520
|
variants: {
|
|
5228
5521
|
tone: {
|
|
@@ -5236,19 +5529,19 @@ var tableActionButtonVariants = cva8(
|
|
|
5236
5529
|
}
|
|
5237
5530
|
}
|
|
5238
5531
|
);
|
|
5239
|
-
var Table =
|
|
5240
|
-
return /* @__PURE__ */
|
|
5532
|
+
var Table = React37.forwardRef(function Table2({ className, ...props }, ref) {
|
|
5533
|
+
return /* @__PURE__ */ jsx39(
|
|
5241
5534
|
"div",
|
|
5242
5535
|
{
|
|
5243
5536
|
"data-slot": "table-container",
|
|
5244
5537
|
className: "relative w-full overflow-x-auto",
|
|
5245
|
-
children: /* @__PURE__ */
|
|
5538
|
+
children: /* @__PURE__ */ jsx39(
|
|
5246
5539
|
"table",
|
|
5247
5540
|
{
|
|
5248
5541
|
"data-slot": "table",
|
|
5249
5542
|
ref,
|
|
5250
5543
|
className: cn(
|
|
5251
|
-
"w-full min-w-[1040px] caption-bottom border-
|
|
5544
|
+
"w-full min-w-[1040px] caption-bottom border-separate border-spacing-0 bg-card",
|
|
5252
5545
|
className
|
|
5253
5546
|
),
|
|
5254
5547
|
...props
|
|
@@ -5257,33 +5550,33 @@ var Table = React33.forwardRef(function Table2({ className, ...props }, ref) {
|
|
|
5257
5550
|
}
|
|
5258
5551
|
);
|
|
5259
5552
|
});
|
|
5260
|
-
var TableHeader =
|
|
5261
|
-
return /* @__PURE__ */
|
|
5553
|
+
var TableHeader = React37.forwardRef(function TableHeader2({ className, ...props }, ref) {
|
|
5554
|
+
return /* @__PURE__ */ jsx39(
|
|
5262
5555
|
"thead",
|
|
5263
5556
|
{
|
|
5264
5557
|
"data-slot": "table-header",
|
|
5265
5558
|
ref,
|
|
5266
5559
|
className: cn(
|
|
5267
|
-
"[&_tr]:border-
|
|
5560
|
+
"[&_tr]:border-0 [&_tr:hover]:bg-transparent [&_th]:bg-[color:var(--sofya-tone-default-background)] [&_th:first-child]:rounded-tl-[var(--sofya-radius-md)] [&_th:last-child]:rounded-tr-[var(--sofya-radius-md)]",
|
|
5268
5561
|
className
|
|
5269
5562
|
),
|
|
5270
5563
|
...props
|
|
5271
5564
|
}
|
|
5272
5565
|
);
|
|
5273
5566
|
});
|
|
5274
|
-
var TableBody =
|
|
5275
|
-
return /* @__PURE__ */
|
|
5567
|
+
var TableBody = React37.forwardRef(function TableBody2({ className, ...props }, ref) {
|
|
5568
|
+
return /* @__PURE__ */ jsx39(
|
|
5276
5569
|
"tbody",
|
|
5277
5570
|
{
|
|
5278
5571
|
"data-slot": "table-body",
|
|
5279
5572
|
ref,
|
|
5280
|
-
className: cn("[&_tr:last-child]:border-0", className),
|
|
5573
|
+
className: cn("[&_tr:last-child>td]:border-0", className),
|
|
5281
5574
|
...props
|
|
5282
5575
|
}
|
|
5283
5576
|
);
|
|
5284
5577
|
});
|
|
5285
|
-
var TableFooter =
|
|
5286
|
-
return /* @__PURE__ */
|
|
5578
|
+
var TableFooter = React37.forwardRef(function TableFooter2({ className, ...props }, ref) {
|
|
5579
|
+
return /* @__PURE__ */ jsx39(
|
|
5287
5580
|
"tfoot",
|
|
5288
5581
|
{
|
|
5289
5582
|
"data-slot": "table-footer",
|
|
@@ -5296,28 +5589,28 @@ var TableFooter = React33.forwardRef(function TableFooter2({ className, ...props
|
|
|
5296
5589
|
}
|
|
5297
5590
|
);
|
|
5298
5591
|
});
|
|
5299
|
-
var TableRow =
|
|
5300
|
-
return /* @__PURE__ */
|
|
5592
|
+
var TableRow = React37.forwardRef(function TableRow2({ className, ...props }, ref) {
|
|
5593
|
+
return /* @__PURE__ */ jsx39(
|
|
5301
5594
|
"tr",
|
|
5302
5595
|
{
|
|
5303
5596
|
"data-slot": "table-row",
|
|
5304
5597
|
ref,
|
|
5305
5598
|
className: cn(
|
|
5306
|
-
"border-b border-[color:var(--sofya-border-soft)] transition-colors duration-sofya ease-sofya hover:bg-[color:var(--sofya-tone-default-background)] data-[state=selected]:bg-[color:var(--sofya-tone-default-background)]",
|
|
5599
|
+
"border-b border-[color:var(--sofya-border-soft)] transition-colors duration-sofya ease-sofya hover:bg-[color:var(--sofya-tone-default-background)] data-[state=selected]:bg-[color:var(--sofya-tone-default-background)] [&>td]:border-b [&>td]:border-[color:var(--sofya-border-soft)]",
|
|
5307
5600
|
className
|
|
5308
5601
|
),
|
|
5309
5602
|
...props
|
|
5310
5603
|
}
|
|
5311
5604
|
);
|
|
5312
5605
|
});
|
|
5313
|
-
var TableHead =
|
|
5314
|
-
return /* @__PURE__ */
|
|
5606
|
+
var TableHead = React37.forwardRef(function TableHead2({ className, children, ...props }, ref) {
|
|
5607
|
+
return /* @__PURE__ */ jsx39(
|
|
5315
5608
|
"th",
|
|
5316
5609
|
{
|
|
5317
5610
|
"data-slot": "table-head",
|
|
5318
5611
|
ref,
|
|
5319
5612
|
className: cn(
|
|
5320
|
-
"whitespace-nowrap px-
|
|
5613
|
+
"whitespace-nowrap px-4 py-4 text-left align-middle [font-family:var(--sofya-text-tiny-font-family)] text-[length:var(--sofya-text-tiny-font-size)] font-medium uppercase leading-4 tracking-[0.08em] text-[color:var(--sofya-text-default)] [&_svg]:h-[1em] [&_svg]:w-[1em] [&_svg]:shrink-0",
|
|
5321
5614
|
className
|
|
5322
5615
|
),
|
|
5323
5616
|
...props,
|
|
@@ -5330,9 +5623,9 @@ var TableHead = React33.forwardRef(function TableHead2({ className, children, ..
|
|
|
5330
5623
|
}
|
|
5331
5624
|
);
|
|
5332
5625
|
});
|
|
5333
|
-
var TableCell =
|
|
5626
|
+
var TableCell = React37.forwardRef(
|
|
5334
5627
|
function TableCell2({ className, variant, truncate, children, ...props }, ref) {
|
|
5335
|
-
return /* @__PURE__ */
|
|
5628
|
+
return /* @__PURE__ */ jsx39(
|
|
5336
5629
|
"td",
|
|
5337
5630
|
{
|
|
5338
5631
|
"data-slot": "table-cell",
|
|
@@ -5356,8 +5649,8 @@ var TableCell = React33.forwardRef(
|
|
|
5356
5649
|
);
|
|
5357
5650
|
}
|
|
5358
5651
|
);
|
|
5359
|
-
var TableCaption =
|
|
5360
|
-
return /* @__PURE__ */
|
|
5652
|
+
var TableCaption = React37.forwardRef(function TableCaption2({ className, children, ...props }, ref) {
|
|
5653
|
+
return /* @__PURE__ */ jsx39(
|
|
5361
5654
|
"caption",
|
|
5362
5655
|
{
|
|
5363
5656
|
"data-slot": "table-caption",
|
|
@@ -5376,13 +5669,53 @@ var TableCaption = React33.forwardRef(function TableCaption2({ className, childr
|
|
|
5376
5669
|
}
|
|
5377
5670
|
);
|
|
5378
5671
|
});
|
|
5672
|
+
var TableCellTitle = React37.forwardRef(function TableCellTitle2({ className, children, ...props }, ref) {
|
|
5673
|
+
return /* @__PURE__ */ jsx39(
|
|
5674
|
+
"span",
|
|
5675
|
+
{
|
|
5676
|
+
"data-slot": "table-cell-title",
|
|
5677
|
+
ref,
|
|
5678
|
+
className: cn(
|
|
5679
|
+
"block font-medium text-[color:var(--sofya-text-default)]",
|
|
5680
|
+
className
|
|
5681
|
+
),
|
|
5682
|
+
...props,
|
|
5683
|
+
children: renderTextContent(children, {
|
|
5684
|
+
as: "span",
|
|
5685
|
+
className: "block text-inherit",
|
|
5686
|
+
size: "body",
|
|
5687
|
+
style: inheritedTypographyStyle
|
|
5688
|
+
})
|
|
5689
|
+
}
|
|
5690
|
+
);
|
|
5691
|
+
});
|
|
5692
|
+
var TableCellDescription = React37.forwardRef(function TableCellDescription2({ className, children, ...props }, ref) {
|
|
5693
|
+
return /* @__PURE__ */ jsx39(
|
|
5694
|
+
"span",
|
|
5695
|
+
{
|
|
5696
|
+
"data-slot": "table-cell-description",
|
|
5697
|
+
ref,
|
|
5698
|
+
className: cn(
|
|
5699
|
+
"mt-1 block text-[color:var(--sofya-text-subtle)]",
|
|
5700
|
+
className
|
|
5701
|
+
),
|
|
5702
|
+
...props,
|
|
5703
|
+
children: renderTextContent(children, {
|
|
5704
|
+
as: "span",
|
|
5705
|
+
className: "block text-inherit",
|
|
5706
|
+
size: "tiny",
|
|
5707
|
+
style: inheritedTypographyStyle
|
|
5708
|
+
})
|
|
5709
|
+
}
|
|
5710
|
+
);
|
|
5711
|
+
});
|
|
5379
5712
|
function TableStatusBadge({
|
|
5380
5713
|
className,
|
|
5381
5714
|
tone,
|
|
5382
5715
|
children,
|
|
5383
5716
|
...props
|
|
5384
5717
|
}) {
|
|
5385
|
-
return /* @__PURE__ */
|
|
5718
|
+
return /* @__PURE__ */ jsx39(
|
|
5386
5719
|
Badge,
|
|
5387
5720
|
{
|
|
5388
5721
|
variant: "pill",
|
|
@@ -5397,8 +5730,8 @@ function TableStatusBadge({
|
|
|
5397
5730
|
}
|
|
5398
5731
|
);
|
|
5399
5732
|
}
|
|
5400
|
-
var TableActionButton =
|
|
5401
|
-
return /* @__PURE__ */
|
|
5733
|
+
var TableActionButton = React37.forwardRef(function TableActionButton2({ className, tone, type = "button", children, ...props }, ref) {
|
|
5734
|
+
return /* @__PURE__ */ jsx39(
|
|
5402
5735
|
Button,
|
|
5403
5736
|
{
|
|
5404
5737
|
ref,
|
|
@@ -5416,8 +5749,8 @@ var TableActionButton = React33.forwardRef(function TableActionButton2({ classNa
|
|
|
5416
5749
|
}
|
|
5417
5750
|
);
|
|
5418
5751
|
});
|
|
5419
|
-
var TableActions =
|
|
5420
|
-
return /* @__PURE__ */
|
|
5752
|
+
var TableActions = React37.forwardRef(function TableActions2({ className, ...props }, ref) {
|
|
5753
|
+
return /* @__PURE__ */ jsx39(
|
|
5421
5754
|
"div",
|
|
5422
5755
|
{
|
|
5423
5756
|
ref,
|
|
@@ -5434,14 +5767,16 @@ TableRow.displayName = "TableRow";
|
|
|
5434
5767
|
TableHead.displayName = "TableHead";
|
|
5435
5768
|
TableCell.displayName = "TableCell";
|
|
5436
5769
|
TableCaption.displayName = "TableCaption";
|
|
5770
|
+
TableCellTitle.displayName = "TableCellTitle";
|
|
5771
|
+
TableCellDescription.displayName = "TableCellDescription";
|
|
5437
5772
|
TableActionButton.displayName = "TableActionButton";
|
|
5438
5773
|
TableActions.displayName = "TableActions";
|
|
5439
5774
|
|
|
5440
5775
|
// src/components/tabs.tsx
|
|
5441
|
-
import * as
|
|
5776
|
+
import * as React38 from "react";
|
|
5442
5777
|
import * as TabsPrimitive from "@radix-ui/react-tabs";
|
|
5443
5778
|
import { motion as motion3 } from "motion/react";
|
|
5444
|
-
import { jsx as
|
|
5779
|
+
import { jsx as jsx40, jsxs as jsxs20 } from "react/jsx-runtime";
|
|
5445
5780
|
function resolveDefaultValue(items, defaultValue) {
|
|
5446
5781
|
if (defaultValue) {
|
|
5447
5782
|
return defaultValue;
|
|
@@ -5465,13 +5800,13 @@ function Tabs({
|
|
|
5465
5800
|
onChange: onValueChange,
|
|
5466
5801
|
value
|
|
5467
5802
|
});
|
|
5468
|
-
const indicatorLayoutId =
|
|
5469
|
-
|
|
5803
|
+
const indicatorLayoutId = React38.useId();
|
|
5804
|
+
React38.useEffect(() => {
|
|
5470
5805
|
if (value === void 0) {
|
|
5471
5806
|
setUncontrolledCurrentValue(resolvedDefaultValue);
|
|
5472
5807
|
}
|
|
5473
5808
|
}, [resolvedDefaultValue, setUncontrolledCurrentValue, value]);
|
|
5474
|
-
return /* @__PURE__ */
|
|
5809
|
+
return /* @__PURE__ */ jsxs20(
|
|
5475
5810
|
TabsPrimitive.Root,
|
|
5476
5811
|
{
|
|
5477
5812
|
className: cn("w-full", className),
|
|
@@ -5479,7 +5814,7 @@ function Tabs({
|
|
|
5479
5814
|
value: currentValue,
|
|
5480
5815
|
...props,
|
|
5481
5816
|
children: [
|
|
5482
|
-
/* @__PURE__ */
|
|
5817
|
+
/* @__PURE__ */ jsx40(
|
|
5483
5818
|
TabsPrimitive.List,
|
|
5484
5819
|
{
|
|
5485
5820
|
"aria-label": "Subtelas navegaveis",
|
|
@@ -5490,7 +5825,7 @@ function Tabs({
|
|
|
5490
5825
|
children: items.map((item) => {
|
|
5491
5826
|
const isUnavailable = item.disabled || item.loading;
|
|
5492
5827
|
const isActive = item.value === currentValue;
|
|
5493
|
-
return /* @__PURE__ */
|
|
5828
|
+
return /* @__PURE__ */ jsxs20(
|
|
5494
5829
|
TabsPrimitive.Trigger,
|
|
5495
5830
|
{
|
|
5496
5831
|
value: item.value,
|
|
@@ -5502,7 +5837,7 @@ function Tabs({
|
|
|
5502
5837
|
item.triggerClassName
|
|
5503
5838
|
),
|
|
5504
5839
|
children: [
|
|
5505
|
-
isActive ? /* @__PURE__ */
|
|
5840
|
+
isActive ? /* @__PURE__ */ jsx40(
|
|
5506
5841
|
motion3.span,
|
|
5507
5842
|
{
|
|
5508
5843
|
"aria-hidden": "true",
|
|
@@ -5512,15 +5847,15 @@ function Tabs({
|
|
|
5512
5847
|
transition: { duration: 0.25, ease: "easeInOut" }
|
|
5513
5848
|
}
|
|
5514
5849
|
) : null,
|
|
5515
|
-
/* @__PURE__ */
|
|
5516
|
-
item.loading ? /* @__PURE__ */
|
|
5850
|
+
/* @__PURE__ */ jsxs20("span", { className: "relative z-10 inline-flex items-center gap-2", children: [
|
|
5851
|
+
item.loading ? /* @__PURE__ */ jsx40(
|
|
5517
5852
|
"span",
|
|
5518
5853
|
{
|
|
5519
5854
|
"aria-hidden": "true",
|
|
5520
5855
|
className: "h-4 w-4 animate-spin rounded-full border-2 border-current border-r-transparent"
|
|
5521
5856
|
}
|
|
5522
5857
|
) : null,
|
|
5523
|
-
/* @__PURE__ */
|
|
5858
|
+
/* @__PURE__ */ jsx40("span", { children: renderTextContent(item.label, {
|
|
5524
5859
|
as: "span",
|
|
5525
5860
|
className: "block text-inherit",
|
|
5526
5861
|
size: "body"
|
|
@@ -5534,7 +5869,7 @@ function Tabs({
|
|
|
5534
5869
|
}
|
|
5535
5870
|
),
|
|
5536
5871
|
items.map(
|
|
5537
|
-
(item) => item.content !== void 0 ? /* @__PURE__ */
|
|
5872
|
+
(item) => item.content !== void 0 ? /* @__PURE__ */ jsx40(
|
|
5538
5873
|
TabsPrimitive.Content,
|
|
5539
5874
|
{
|
|
5540
5875
|
value: item.value,
|
|
@@ -5557,9 +5892,9 @@ function Tabs({
|
|
|
5557
5892
|
Tabs.displayName = "Tabs";
|
|
5558
5893
|
|
|
5559
5894
|
// src/components/textarea.tsx
|
|
5560
|
-
import * as
|
|
5561
|
-
import { jsx as
|
|
5562
|
-
var Textarea =
|
|
5895
|
+
import * as React39 from "react";
|
|
5896
|
+
import { jsx as jsx41 } from "react/jsx-runtime";
|
|
5897
|
+
var Textarea = React39.forwardRef(
|
|
5563
5898
|
({
|
|
5564
5899
|
className,
|
|
5565
5900
|
containerClassName,
|
|
@@ -5569,10 +5904,10 @@ var Textarea = React35.forwardRef(
|
|
|
5569
5904
|
rows = 5,
|
|
5570
5905
|
...props
|
|
5571
5906
|
}, ref) => {
|
|
5572
|
-
const generatedId =
|
|
5907
|
+
const generatedId = React39.useId();
|
|
5573
5908
|
const resolvedId = id ?? generatedId;
|
|
5574
5909
|
const ariaLabel = props["aria-label"] ?? (typeof label === "string" ? label : void 0);
|
|
5575
|
-
const control = /* @__PURE__ */
|
|
5910
|
+
const control = /* @__PURE__ */ jsx41(
|
|
5576
5911
|
"textarea",
|
|
5577
5912
|
{
|
|
5578
5913
|
className: cn(
|
|
@@ -5586,7 +5921,7 @@ var Textarea = React35.forwardRef(
|
|
|
5586
5921
|
"aria-label": ariaLabel
|
|
5587
5922
|
}
|
|
5588
5923
|
);
|
|
5589
|
-
return /* @__PURE__ */
|
|
5924
|
+
return /* @__PURE__ */ jsx41(
|
|
5590
5925
|
FieldShell,
|
|
5591
5926
|
{
|
|
5592
5927
|
control,
|
|
@@ -5601,10 +5936,10 @@ var Textarea = React35.forwardRef(
|
|
|
5601
5936
|
Textarea.displayName = "Textarea";
|
|
5602
5937
|
|
|
5603
5938
|
// src/components/toggle.tsx
|
|
5604
|
-
import * as
|
|
5939
|
+
import * as React40 from "react";
|
|
5605
5940
|
import * as SwitchPrimitives2 from "@radix-ui/react-switch";
|
|
5606
|
-
import { jsx as
|
|
5607
|
-
var Toggle =
|
|
5941
|
+
import { jsx as jsx42, jsxs as jsxs21 } from "react/jsx-runtime";
|
|
5942
|
+
var Toggle = React40.forwardRef(function Toggle2({
|
|
5608
5943
|
"aria-describedby": ariaDescribedBy,
|
|
5609
5944
|
"aria-labelledby": ariaLabelledBy,
|
|
5610
5945
|
className,
|
|
@@ -5617,15 +5952,15 @@ var Toggle = React36.forwardRef(function Toggle2({
|
|
|
5617
5952
|
labelClassName,
|
|
5618
5953
|
...props
|
|
5619
5954
|
}, ref) {
|
|
5620
|
-
const generatedId =
|
|
5955
|
+
const generatedId = React40.useId();
|
|
5621
5956
|
const resolvedId = id ?? generatedId;
|
|
5622
5957
|
const labelId = label ? `${resolvedId}-label` : void 0;
|
|
5623
5958
|
const descriptionId = description ? `${resolvedId}-description` : void 0;
|
|
5624
5959
|
const hasTextContent = label !== void 0 || description !== void 0;
|
|
5625
|
-
const
|
|
5960
|
+
const alignClassName2 = description ? "items-start" : "items-center";
|
|
5626
5961
|
const resolvedAriaDescribedBy = [ariaDescribedBy, descriptionId].filter(Boolean).join(" ") || void 0;
|
|
5627
5962
|
const resolvedAriaLabelledBy = ariaLabelledBy ?? labelId;
|
|
5628
|
-
const toggleControl = /* @__PURE__ */
|
|
5963
|
+
const toggleControl = /* @__PURE__ */ jsx42(
|
|
5629
5964
|
SwitchPrimitives2.Root,
|
|
5630
5965
|
{
|
|
5631
5966
|
id: resolvedId,
|
|
@@ -5639,7 +5974,7 @@ var Toggle = React36.forwardRef(function Toggle2({
|
|
|
5639
5974
|
className
|
|
5640
5975
|
),
|
|
5641
5976
|
...props,
|
|
5642
|
-
children: /* @__PURE__ */
|
|
5977
|
+
children: /* @__PURE__ */ jsx42(
|
|
5643
5978
|
SwitchPrimitives2.Thumb,
|
|
5644
5979
|
{
|
|
5645
5980
|
"data-slot": "toggle-thumb",
|
|
@@ -5651,19 +5986,19 @@ var Toggle = React36.forwardRef(function Toggle2({
|
|
|
5651
5986
|
if (!hasTextContent) {
|
|
5652
5987
|
return toggleControl;
|
|
5653
5988
|
}
|
|
5654
|
-
return /* @__PURE__ */
|
|
5989
|
+
return /* @__PURE__ */ jsxs21(
|
|
5655
5990
|
"div",
|
|
5656
5991
|
{
|
|
5657
5992
|
"data-slot": "toggle-container",
|
|
5658
5993
|
className: selectionControlContainerClasses({
|
|
5659
|
-
alignClassName,
|
|
5994
|
+
alignClassName: alignClassName2,
|
|
5660
5995
|
className: containerClassName,
|
|
5661
5996
|
disabled
|
|
5662
5997
|
}),
|
|
5663
5998
|
children: [
|
|
5664
5999
|
toggleControl,
|
|
5665
|
-
/* @__PURE__ */
|
|
5666
|
-
label ? /* @__PURE__ */
|
|
6000
|
+
/* @__PURE__ */ jsxs21("span", { className: selectionControlContentBaseClasses, children: [
|
|
6001
|
+
label ? /* @__PURE__ */ jsx42("label", { htmlFor: resolvedId, className: selectionControlLabelTextBaseClasses, children: /* @__PURE__ */ jsx42(
|
|
5667
6002
|
"span",
|
|
5668
6003
|
{
|
|
5669
6004
|
id: labelId,
|
|
@@ -5675,7 +6010,7 @@ var Toggle = React36.forwardRef(function Toggle2({
|
|
|
5675
6010
|
})
|
|
5676
6011
|
}
|
|
5677
6012
|
) }) : null,
|
|
5678
|
-
description ? /* @__PURE__ */
|
|
6013
|
+
description ? /* @__PURE__ */ jsx42(
|
|
5679
6014
|
"span",
|
|
5680
6015
|
{
|
|
5681
6016
|
id: descriptionId,
|
|
@@ -5698,14 +6033,14 @@ var Toggle = React36.forwardRef(function Toggle2({
|
|
|
5698
6033
|
Toggle.displayName = "Toggle";
|
|
5699
6034
|
|
|
5700
6035
|
// src/components/tooltip.tsx
|
|
5701
|
-
import * as
|
|
6036
|
+
import * as React41 from "react";
|
|
5702
6037
|
import * as TooltipPrimitive from "@radix-ui/react-tooltip";
|
|
5703
|
-
import { jsx as
|
|
6038
|
+
import { jsx as jsx43 } from "react/jsx-runtime";
|
|
5704
6039
|
var TooltipProvider = TooltipPrimitive.Provider;
|
|
5705
6040
|
var Tooltip = TooltipPrimitive.Root;
|
|
5706
6041
|
var TooltipTrigger = TooltipPrimitive.Trigger;
|
|
5707
|
-
var TooltipContent =
|
|
5708
|
-
return /* @__PURE__ */
|
|
6042
|
+
var TooltipContent = React41.forwardRef(function TooltipContent2({ className, sideOffset = 8, ...props }, ref) {
|
|
6043
|
+
return /* @__PURE__ */ jsx43(TooltipPrimitive.Portal, { children: /* @__PURE__ */ jsx43(
|
|
5709
6044
|
TooltipPrimitive.Content,
|
|
5710
6045
|
{
|
|
5711
6046
|
ref,
|
|
@@ -5729,13 +6064,13 @@ var TooltipContent = React37.forwardRef(function TooltipContent2({ className, si
|
|
|
5729
6064
|
TooltipContent.displayName = TooltipPrimitive.Content.displayName;
|
|
5730
6065
|
|
|
5731
6066
|
// src/theme/provider.tsx
|
|
5732
|
-
import * as
|
|
6067
|
+
import * as React42 from "react";
|
|
5733
6068
|
import {
|
|
5734
6069
|
createWhitelabelTheme,
|
|
5735
6070
|
defaultTheme,
|
|
5736
6071
|
themeToCssVariables
|
|
5737
6072
|
} from "@sofya-ds/tokens";
|
|
5738
|
-
import { jsx as
|
|
6073
|
+
import { jsx as jsx44 } from "react/jsx-runtime";
|
|
5739
6074
|
var SOFYA_FONT_LINKS = [
|
|
5740
6075
|
{
|
|
5741
6076
|
id: "preconnect-googleapis",
|
|
@@ -5755,7 +6090,7 @@ var SOFYA_FONT_LINKS = [
|
|
|
5755
6090
|
}
|
|
5756
6091
|
];
|
|
5757
6092
|
function useSofyaFontLinks() {
|
|
5758
|
-
|
|
6093
|
+
React42.useEffect(() => {
|
|
5759
6094
|
if (typeof document === "undefined") {
|
|
5760
6095
|
return;
|
|
5761
6096
|
}
|
|
@@ -5788,7 +6123,7 @@ function SofyaProvider({
|
|
|
5788
6123
|
useSofyaFontLinks();
|
|
5789
6124
|
const theme = createWhitelabelTheme(overrides ?? {}, preset);
|
|
5790
6125
|
const cssVariables = themeToCssVariables(theme);
|
|
5791
|
-
return /* @__PURE__ */
|
|
6126
|
+
return /* @__PURE__ */ jsx44(
|
|
5792
6127
|
"div",
|
|
5793
6128
|
{
|
|
5794
6129
|
"data-sofya-theme": theme.name,
|
|
@@ -5813,9 +6148,13 @@ import {
|
|
|
5813
6148
|
resolveTheme,
|
|
5814
6149
|
sofyaBrandPalette,
|
|
5815
6150
|
sofyaColorPalette,
|
|
6151
|
+
sofyaGapNames,
|
|
6152
|
+
sofyaMeasureNames,
|
|
6153
|
+
sofyaRhythmNames,
|
|
5816
6154
|
sofyaSemanticColorHex,
|
|
5817
|
-
|
|
5818
|
-
|
|
6155
|
+
sofyaSpaceNames,
|
|
6156
|
+
sofyaSurfaceNames as sofyaSurfaceNames2,
|
|
6157
|
+
sofyaTextStyleNames as sofyaTextStyleNames2,
|
|
5819
6158
|
themePresetNames,
|
|
5820
6159
|
themePresets,
|
|
5821
6160
|
themeToCssVariables as themeToCssVariables2
|
|
@@ -5838,6 +6177,8 @@ export {
|
|
|
5838
6177
|
CardHeader,
|
|
5839
6178
|
CardTitle,
|
|
5840
6179
|
Checkbox,
|
|
6180
|
+
Cluster,
|
|
6181
|
+
Container,
|
|
5841
6182
|
Dialog,
|
|
5842
6183
|
DialogBody,
|
|
5843
6184
|
DialogCancel,
|
|
@@ -5850,6 +6191,7 @@ export {
|
|
|
5850
6191
|
DialogPortal,
|
|
5851
6192
|
DialogTitle,
|
|
5852
6193
|
DialogTrigger,
|
|
6194
|
+
DocumentCard,
|
|
5853
6195
|
Dropdown,
|
|
5854
6196
|
DropdownSearch,
|
|
5855
6197
|
Empty,
|
|
@@ -5859,6 +6201,7 @@ export {
|
|
|
5859
6201
|
EmptyMedia,
|
|
5860
6202
|
EmptyTitle,
|
|
5861
6203
|
Icon,
|
|
6204
|
+
Inline,
|
|
5862
6205
|
Input,
|
|
5863
6206
|
InputOTP,
|
|
5864
6207
|
InputOTPGroup,
|
|
@@ -5883,6 +6226,11 @@ export {
|
|
|
5883
6226
|
PopoverTitle,
|
|
5884
6227
|
PopoverTrigger,
|
|
5885
6228
|
Progress,
|
|
6229
|
+
ProseDialogBody,
|
|
6230
|
+
ProseDialogContent,
|
|
6231
|
+
ProseDialogDescription,
|
|
6232
|
+
ProseDialogHeader,
|
|
6233
|
+
ProseDialogTitle,
|
|
5886
6234
|
REGEXP_ONLY_DIGITS,
|
|
5887
6235
|
RadioGroup3 as RadioGroup,
|
|
5888
6236
|
RadioGroupItem,
|
|
@@ -5891,6 +6239,7 @@ export {
|
|
|
5891
6239
|
RadioGroupOptionDescription,
|
|
5892
6240
|
RadioGroupOptionIndicator,
|
|
5893
6241
|
RadioGroupOptionLabel,
|
|
6242
|
+
RightRailAction,
|
|
5894
6243
|
ScrollArea,
|
|
5895
6244
|
ScrollAreaCorner,
|
|
5896
6245
|
ScrollAreaScrollbar,
|
|
@@ -5910,6 +6259,7 @@ export {
|
|
|
5910
6259
|
Slider,
|
|
5911
6260
|
SofyaProvider,
|
|
5912
6261
|
Spinner,
|
|
6262
|
+
Stack,
|
|
5913
6263
|
Surface,
|
|
5914
6264
|
Switch,
|
|
5915
6265
|
Table,
|
|
@@ -5918,6 +6268,8 @@ export {
|
|
|
5918
6268
|
TableBody,
|
|
5919
6269
|
TableCaption,
|
|
5920
6270
|
TableCell,
|
|
6271
|
+
TableCellDescription,
|
|
6272
|
+
TableCellTitle,
|
|
5921
6273
|
TableFooter,
|
|
5922
6274
|
TableHead,
|
|
5923
6275
|
TableHeader,
|
|
@@ -5980,10 +6332,15 @@ export {
|
|
|
5980
6332
|
selectSizeOptions,
|
|
5981
6333
|
sofyaBrandPalette,
|
|
5982
6334
|
sofyaColorPalette,
|
|
6335
|
+
sofyaGapNames,
|
|
6336
|
+
sofyaMeasureNames,
|
|
6337
|
+
sofyaRhythmNames,
|
|
5983
6338
|
sofyaSemanticColorHex,
|
|
5984
|
-
|
|
5985
|
-
|
|
6339
|
+
sofyaSpaceNames,
|
|
6340
|
+
sofyaSurfaceNames2 as sofyaSurfaceNames,
|
|
6341
|
+
sofyaTextStyleNames2 as sofyaTextStyleNames,
|
|
5986
6342
|
spinnerSizeOptions,
|
|
6343
|
+
surfaceVariantOptions,
|
|
5987
6344
|
switchSizeOptions,
|
|
5988
6345
|
tableActionToneOptions,
|
|
5989
6346
|
tableCellVariantOptions,
|