ixia-ui-react 1.1.0 → 1.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.mts +495 -309
- package/dist/index.mjs +1015 -276
- package/dist/index.mjs.map +1 -1
- package/dist/styles.css +541 -551
- package/package.json +34 -34
package/dist/index.mjs
CHANGED
|
@@ -1,14 +1,15 @@
|
|
|
1
|
+
import { createRequire } from "node:module";
|
|
1
2
|
import { Accordion as Accordion$1 } from "@base-ui/react/accordion";
|
|
2
3
|
import { clsx } from "clsx";
|
|
3
|
-
import {
|
|
4
|
+
import { extendTailwindMerge } from "tailwind-merge";
|
|
4
5
|
import { cva } from "class-variance-authority";
|
|
5
6
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
6
7
|
import { ArrowsDownUpIcon, CaretDownIcon, CaretLeftIcon, CaretLineLeftIcon, CaretLineRightIcon, CaretRightIcon, CaretUpDownIcon, CaretUpIcon, CheckCircleIcon, CheckIcon, CircleNotchIcon, CopyIcon, DotsThreeIcon, DownloadIcon, EyeClosedIcon, EyeIcon, FileArrowUpIcon, FolderIcon, FolderOpenIcon, FolderSimpleIcon, FunnelIcon, FunnelSimpleIcon, InfoIcon, LockSimpleIcon, LockSimpleOpenIcon, MagnifyingGlassIcon, MinusIcon, PercentIcon, PlusIcon, SortAscendingIcon, SortDescendingIcon, TrashIcon, UploadIcon, WarningCircleIcon, WarningIcon, XCircleIcon, XIcon } from "@phosphor-icons/react";
|
|
7
8
|
import { AlertDialog as AlertDialog$1, Button as Button$1, Checkbox as Checkbox$1, CheckboxGroup as CheckboxGroup$1, Drawer as Drawer$1, Meter as Meter$1, NavigationMenu as NavigationMenu$1, OTPField, PreviewCard as PreviewCard$1, Radio as Radio$1, RadioGroup as RadioGroup$1, Slider as Slider$1 } from "@base-ui/react";
|
|
8
|
-
import React, { Children, createContext, createElement, isValidElement, useContext, useEffect, useId, useRef, useState } from "react";
|
|
9
|
+
import React, { Children, createContext, createElement, isValidElement, useCallback, useContext, useEffect, useId, useRef, useState } from "react";
|
|
9
10
|
import { Autocomplete as Autocomplete$1 } from "@base-ui/react/autocomplete";
|
|
10
11
|
import { Avatar as Avatar$1 } from "@base-ui/react/avatar";
|
|
11
|
-
import { DayPicker, getDefaultClassNames, isDateRange } from "@daypicker/react";
|
|
12
|
+
import { DayButton, DayPicker, getDefaultClassNames, isDateRange, labelDayButton } from "@daypicker/react";
|
|
12
13
|
import { Select as Select$1 } from "@base-ui/react/select";
|
|
13
14
|
import { Legend, ResponsiveContainer, Tooltip as Tooltip$1 } from "recharts";
|
|
14
15
|
import { Checkbox as Checkbox$2 } from "@base-ui/react/checkbox";
|
|
@@ -36,7 +37,31 @@ import { ScrollArea as ScrollArea$1 } from "@base-ui/react/scroll-area";
|
|
|
36
37
|
import { z } from "zod";
|
|
37
38
|
import { Toast as Toast$1 } from "@base-ui/react/toast";
|
|
38
39
|
import { ToggleGroup as ToggleGroup$1 } from "@base-ui/react/toggle-group";
|
|
40
|
+
//#region \0rolldown/runtime.js
|
|
41
|
+
var __commonJSMin = (cb, mod) => () => (mod || (cb((mod = { exports: {} }).exports, mod, mod.exports), cb = null), mod.exports);
|
|
42
|
+
var __require = /* #__PURE__ */ (() => createRequire(import.meta.url))();
|
|
43
|
+
//#endregion
|
|
39
44
|
//#region src/utils/cn.ts
|
|
45
|
+
const twMerge = extendTailwindMerge({ extend: { theme: { spacing: [
|
|
46
|
+
"3xs",
|
|
47
|
+
"2xs",
|
|
48
|
+
"xs",
|
|
49
|
+
"sm",
|
|
50
|
+
"md",
|
|
51
|
+
"lg",
|
|
52
|
+
"xl",
|
|
53
|
+
"2xl",
|
|
54
|
+
"3xl",
|
|
55
|
+
"3xs-2xs",
|
|
56
|
+
"2xs-xs",
|
|
57
|
+
"xs-sm",
|
|
58
|
+
"sm-md",
|
|
59
|
+
"md-lg",
|
|
60
|
+
"lg-xl",
|
|
61
|
+
"xl-2xl",
|
|
62
|
+
"2xl-3xl",
|
|
63
|
+
"sm-lg"
|
|
64
|
+
] } } });
|
|
40
65
|
function cn(...inputs) {
|
|
41
66
|
return twMerge(clsx(inputs));
|
|
42
67
|
}
|
|
@@ -171,7 +196,7 @@ const Accordion = Object.assign(Accordion$2, {
|
|
|
171
196
|
});
|
|
172
197
|
//#endregion
|
|
173
198
|
//#region src/components/alert/alert.types.ts
|
|
174
|
-
const alertVariants = cva("group grid auto-rows-min items-center justify-start gap-x-xs rounded-xl border
|
|
199
|
+
const alertVariants = cva("group grid auto-rows-min items-center justify-start gap-x-xs rounded-xl border py-sm pr-sm pl-md transition-all has-data-[slot=alert-action]:grid-cols-[1fr_auto] has-data-[slot=alert-description]:grid-rows-[auto_auto] has-data-[slot=alert-icon]:grid-cols-[auto_1fr] has-data-[slot=alert-icon]:has-data-[slot=alert-action]:grid-cols-[auto_1fr_auto] has-data-[slot=alert-description]:**:data-[slot=alert-icon]:row-span-2", {
|
|
175
200
|
defaultVariants: { tone: "brand" },
|
|
176
201
|
variants: { tone: {
|
|
177
202
|
accent: "border-accent-border bg-accent-container [&_[data-slot=alert-description]]:text-accent-on-container-muted [&_[data-slot=alert-icon]]:text-accent-on-container [&_[data-slot=alert-title]]:text-accent-on-container",
|
|
@@ -298,7 +323,7 @@ const buttonVariants = cva("inline-flex cursor-pointer items-center justify-cent
|
|
|
298
323
|
variant: "outline"
|
|
299
324
|
},
|
|
300
325
|
{
|
|
301
|
-
className: "border-
|
|
326
|
+
className: "border-border text-neutral-default hover:bg-neutral-subtle hover:text-neutral-on-container",
|
|
302
327
|
tone: "neutral",
|
|
303
328
|
variant: "outline"
|
|
304
329
|
},
|
|
@@ -475,9 +500,9 @@ const buttonVariants = cva("inline-flex cursor-pointer items-center justify-cent
|
|
|
475
500
|
iconLarge: "size-2xl p-[0px] [&>svg]:size-md",
|
|
476
501
|
iconMedium: "size-xl p-[0px] [&>svg]:size-sm",
|
|
477
502
|
iconSmall: "size-lg p-[0px] [&>svg]:size-xs",
|
|
478
|
-
large: "h-2xl gap-xs px-md style-text-default-
|
|
479
|
-
medium: "h-xl gap-2xs px-sm style-text-default-0 [&>svg]:size-sm",
|
|
480
|
-
small: "h-lg gap-3xs px-xs style-text-default--1 [&>svg]:size-xs"
|
|
503
|
+
large: "h-2xl min-w-2xl gap-xs px-md style-text-default-1 [&>svg]:size-md",
|
|
504
|
+
medium: "h-xl min-w-xl gap-2xs px-sm style-text-default-0 [&>svg]:size-sm",
|
|
505
|
+
small: "h-lg min-w-lg gap-3xs px-xs style-text-default--1 [&>svg]:size-xs"
|
|
481
506
|
},
|
|
482
507
|
tone: {
|
|
483
508
|
accent: "",
|
|
@@ -490,11 +515,11 @@ const buttonVariants = cva("inline-flex cursor-pointer items-center justify-cent
|
|
|
490
515
|
},
|
|
491
516
|
variant: {
|
|
492
517
|
elevated: "shadow-xs not-active:hover:shadow-md",
|
|
493
|
-
fill: "active:scale-
|
|
494
|
-
ghost: "active:scale-
|
|
518
|
+
fill: "active:scale-95",
|
|
519
|
+
ghost: "active:scale-95",
|
|
495
520
|
link: "size-fit! p-0! underline decoration-transparent underline-offset-2 [&>svg]:transition-colors",
|
|
496
|
-
outline: "border active:scale-
|
|
497
|
-
soft: "border active:scale-
|
|
521
|
+
outline: "border active:scale-95",
|
|
522
|
+
soft: "border active:scale-95"
|
|
498
523
|
}
|
|
499
524
|
}
|
|
500
525
|
});
|
|
@@ -714,6 +739,7 @@ const inputVariants = cva("group flex w-full items-center text-ellipsis caret-br
|
|
|
714
739
|
},
|
|
715
740
|
variant: {
|
|
716
741
|
ghost: "bg-transparent",
|
|
742
|
+
outline: "bg-transparent outline outline-border",
|
|
717
743
|
primary: "bg-surface shadow-2xs",
|
|
718
744
|
secondary: "bg-neutral-container"
|
|
719
745
|
}
|
|
@@ -864,9 +890,9 @@ const Autocomplete = Object.assign(Autocomplete$2, {
|
|
|
864
890
|
const avatarVariants = cva("group/avatar relative inline-flex shrink-0 items-center justify-center rounded-full", {
|
|
865
891
|
defaultVariants: { size: "medium" },
|
|
866
892
|
variants: { size: {
|
|
867
|
-
large: "size-
|
|
868
|
-
medium: "size-
|
|
869
|
-
small: "size-
|
|
893
|
+
large: "size-3xl style-text-default-1",
|
|
894
|
+
medium: "size-2xl style-text-default-0",
|
|
895
|
+
small: "size-xl style-text-default--1"
|
|
870
896
|
} }
|
|
871
897
|
});
|
|
872
898
|
const avatarBadgeVariants = cva("absolute right-0 bottom-0 inline-flex items-center justify-center rounded-full outline-3 outline-surface-background group-data-[size=large]/avatar:size-md group-data-[size=medium]/avatar:size-sm group-data-[size=small]/avatar:size-xs group-data-[size=large]/avatar:[&_svg]:size-sm group-data-[size=medium]/avatar:[&_svg]:size-xs group-data-[size=small]/avatar:[&_svg]:size-2xs", {
|
|
@@ -876,10 +902,10 @@ const avatarBadgeVariants = cva("absolute right-0 bottom-0 inline-flex items-cen
|
|
|
876
902
|
},
|
|
877
903
|
variants: {
|
|
878
904
|
position: {
|
|
879
|
-
bottomLeft: "bottom-
|
|
880
|
-
bottomRight: "right-
|
|
881
|
-
topLeft: "top-
|
|
882
|
-
topRight: "top-
|
|
905
|
+
bottomLeft: "bottom-px left-px",
|
|
906
|
+
bottomRight: "right-px bottom-px",
|
|
907
|
+
topLeft: "top-px left-px",
|
|
908
|
+
topRight: "top-px right-px"
|
|
883
909
|
},
|
|
884
910
|
tone: {
|
|
885
911
|
accent: "bg-accent-default [&>svg]:text-accent-on-default",
|
|
@@ -960,7 +986,7 @@ const Avatar = Object.assign(Avatar$2, {
|
|
|
960
986
|
});
|
|
961
987
|
//#endregion
|
|
962
988
|
//#region src/components/badge/badge.types.ts
|
|
963
|
-
const badgeVariants = cva("inline-flex h-md items-center justify-center gap-3xs rounded-full
|
|
989
|
+
const badgeVariants = cva("inline-flex h-md items-center justify-center gap-3xs rounded-full font-body text-xs leading-none font-medium whitespace-nowrap transition-all select-none [&>svg]:shrink-0", {
|
|
964
990
|
compoundVariants: [
|
|
965
991
|
{
|
|
966
992
|
className: "bg-brand-default text-brand-on-default",
|
|
@@ -1078,9 +1104,9 @@ const badgeVariants = cva("inline-flex h-md items-center justify-center gap-3xs
|
|
|
1078
1104
|
iconLarge: "size-lg [&>svg]:size-sm",
|
|
1079
1105
|
iconMedium: "size-md [&>svg]:size-xs",
|
|
1080
1106
|
iconSmall: "size-sm [&>svg]:size-2xs",
|
|
1081
|
-
large: "h-lg px-xs [&>svg]:size-
|
|
1082
|
-
medium: "h-md px-xs [&>svg]:size-
|
|
1083
|
-
small: "h-sm px-xs [&>svg]:size-
|
|
1107
|
+
large: "h-lg px-xs [&>svg]:size-[1em]",
|
|
1108
|
+
medium: "h-md px-xs [&>svg]:size-[1em]",
|
|
1109
|
+
small: "h-sm px-xs [&>svg]:size-[1em]"
|
|
1084
1110
|
},
|
|
1085
1111
|
tone: {
|
|
1086
1112
|
accent: "",
|
|
@@ -1133,9 +1159,9 @@ const bentoBoxVariants = cva("group/box flex size-full min-h-0 flex-col overflow
|
|
|
1133
1159
|
true: "p-0!"
|
|
1134
1160
|
},
|
|
1135
1161
|
size: {
|
|
1136
|
-
large: "gap-md rounded-3xl p-
|
|
1137
|
-
medium: "gap-sm rounded-2xl p-
|
|
1138
|
-
small: "gap-xs rounded-xl p-
|
|
1162
|
+
large: "gap-md rounded-3xl p-lg",
|
|
1163
|
+
medium: "gap-sm rounded-2xl p-md",
|
|
1164
|
+
small: "gap-xs rounded-xl p-sm"
|
|
1139
1165
|
}
|
|
1140
1166
|
}
|
|
1141
1167
|
});
|
|
@@ -1222,7 +1248,7 @@ const BentoBox = Object.assign(BentoBox$1, {
|
|
|
1222
1248
|
//#region src/components/breadcrumb/breadcrumb.tsx
|
|
1223
1249
|
function Breadcrumb$1({ className, ref, ...props }) {
|
|
1224
1250
|
return /* @__PURE__ */ jsx("nav", {
|
|
1225
|
-
className: cn("flex items-center gap-2xs
|
|
1251
|
+
className: cn("flex items-center gap-2xs", className),
|
|
1226
1252
|
ref,
|
|
1227
1253
|
...props
|
|
1228
1254
|
});
|
|
@@ -1241,7 +1267,7 @@ function BreadcrumbEllipsis({ className, children, ref, ...props }) {
|
|
|
1241
1267
|
//#region src/components/breadcrumb/breadcrumb-item.tsx
|
|
1242
1268
|
function BreadcrumbItem({ className, ref, ...props }) {
|
|
1243
1269
|
return /* @__PURE__ */ jsx("div", {
|
|
1244
|
-
className: cn("inline-flex h-
|
|
1270
|
+
className: cn("inline-flex h-lg items-center justify-center gap-2xs rounded-full px-2xs style-text-default--1 text-accent-default [&>svg]:size-sm", className),
|
|
1245
1271
|
ref,
|
|
1246
1272
|
...props
|
|
1247
1273
|
});
|
|
@@ -1250,7 +1276,7 @@ function BreadcrumbItem({ className, ref, ...props }) {
|
|
|
1250
1276
|
//#region src/components/breadcrumb/breadcrumb-link.tsx
|
|
1251
1277
|
function BreadcrumbLink({ className, ref, ...props }) {
|
|
1252
1278
|
return /* @__PURE__ */ jsx("div", {
|
|
1253
|
-
className: cn("inline-flex h-
|
|
1279
|
+
className: cn("inline-flex h-lg items-center justify-center gap-3xs rounded-full px-2xs style-text-default--1 text-on-surface-variant transition-all hover:cursor-pointer hover:bg-neutral-container active:scale-[0.98] active:bg-neutral-container disabled:opacity-50 [&>svg]:size-sm", className),
|
|
1254
1280
|
ref,
|
|
1255
1281
|
...props
|
|
1256
1282
|
});
|
|
@@ -1567,7 +1593,7 @@ const calendarPanelVariants = cva("w-fit", {
|
|
|
1567
1593
|
variants: { variant: {
|
|
1568
1594
|
elevated: "bg-surface shadow-2xs",
|
|
1569
1595
|
ghost: "bg-transparent",
|
|
1570
|
-
outline: "border border-border
|
|
1596
|
+
outline: "border border-border"
|
|
1571
1597
|
} }
|
|
1572
1598
|
});
|
|
1573
1599
|
//#endregion
|
|
@@ -1743,6 +1769,17 @@ const Select = Object.assign(Select$2, {
|
|
|
1743
1769
|
});
|
|
1744
1770
|
//#endregion
|
|
1745
1771
|
//#region src/components/calendar/calendar-picker.tsx
|
|
1772
|
+
function CalendarDayButton({ className, modifiers, ...props }) {
|
|
1773
|
+
return /* @__PURE__ */ jsx(DayButton, {
|
|
1774
|
+
...props,
|
|
1775
|
+
modifiers,
|
|
1776
|
+
className: cn(buttonVariants({
|
|
1777
|
+
size: "medium",
|
|
1778
|
+
tone: "neutral",
|
|
1779
|
+
variant: "ghost"
|
|
1780
|
+
}), "text-inherit hover:bg-brand-container hover:text-brand-on-container", modifiers.selected && "hover:bg-brand-default hover:text-brand-on-default", className)
|
|
1781
|
+
});
|
|
1782
|
+
}
|
|
1746
1783
|
function createSelectTarget(value) {
|
|
1747
1784
|
const element = document.createElement("select"), option = Object.assign(document.createElement("option"), { value });
|
|
1748
1785
|
element.append(option);
|
|
@@ -1791,7 +1828,8 @@ function CalendarNextMonthButton({ onClick, disabled, ...props }) {
|
|
|
1791
1828
|
...props,
|
|
1792
1829
|
variant: "ghost",
|
|
1793
1830
|
tone: "neutral",
|
|
1794
|
-
size: "
|
|
1831
|
+
size: "iconMedium",
|
|
1832
|
+
className: cn("hover:bg-neutral-container-high hover:text-neutral-on-container"),
|
|
1795
1833
|
onClick,
|
|
1796
1834
|
disabled,
|
|
1797
1835
|
children: /* @__PURE__ */ jsx(CaretRightIcon, { weight: "bold" })
|
|
@@ -1802,7 +1840,8 @@ function CalendarPreviousMonthButton({ onClick, disabled, ...props }) {
|
|
|
1802
1840
|
...props,
|
|
1803
1841
|
variant: "ghost",
|
|
1804
1842
|
tone: "neutral",
|
|
1805
|
-
size: "
|
|
1843
|
+
size: "iconMedium",
|
|
1844
|
+
className: cn("hover:bg-neutral-container-high hover:text-neutral-on-container"),
|
|
1806
1845
|
onClick,
|
|
1807
1846
|
disabled,
|
|
1808
1847
|
children: /* @__PURE__ */ jsx(CaretLeftIcon, { weight: "bold" })
|
|
@@ -1817,23 +1856,30 @@ function getRangeSelected(selectedDates) {
|
|
|
1817
1856
|
function getSingleSelected(selectedDates) {
|
|
1818
1857
|
if (selectedDates instanceof Date) return selectedDates;
|
|
1819
1858
|
}
|
|
1859
|
+
function labelDayButtonWithVisibleText(...args) {
|
|
1860
|
+
const [date, modifiers, options, dateLib] = args;
|
|
1861
|
+
return `${dateLib?.format(date, "d") ?? String(date.getDate())}, ${labelDayButton(date, modifiers, options, dateLib)}`;
|
|
1862
|
+
}
|
|
1820
1863
|
const defaultClassNames = getDefaultClassNames();
|
|
1821
1864
|
const calendarClassNames = {
|
|
1822
1865
|
caption_label: "style-text-strong-0",
|
|
1823
|
-
day: cn("
|
|
1866
|
+
day: cn("size-xl! rounded-full style-text-default-0 transition-colors hover:bg-brand-container hover:text-brand-on-container data-selected:text-brand-on-default data-selected:hover:bg-brand-default", defaultClassNames.day),
|
|
1867
|
+
day_button: cn("size-xl! rounded-full", defaultClassNames.day_button),
|
|
1824
1868
|
disabled: cn("pointer-events-none text-on-surface", defaultClassNames.disabled),
|
|
1825
1869
|
month_caption: "flex items-center justify-center h-lg",
|
|
1826
|
-
month_grid: cn("mt-xs", defaultClassNames.month_grid),
|
|
1870
|
+
month_grid: cn("mt-xs border-separate! border-spacing-3xs", defaultClassNames.month_grid),
|
|
1827
1871
|
nav: cn("h-lg! w-full justify-between!", defaultClassNames.nav),
|
|
1828
|
-
outside: cn("border-none text-on-surface", defaultClassNames.outside),
|
|
1872
|
+
outside: cn("border-none text-on-surface-muted", defaultClassNames.outside),
|
|
1829
1873
|
range_end: cn("rounded-l-none bg-brand-default text-brand-on-default"),
|
|
1830
1874
|
range_middle: cn("rounded-none! border-y border-brand-border bg-brand-container! text-brand-on-container! transition-none"),
|
|
1831
1875
|
range_start: cn("rounded-r-none bg-brand-default text-brand-on-default", "[&.rounded-l-none]:rounded-xl"),
|
|
1832
1876
|
selected: cn("bg-brand-default text-brand-on-default"),
|
|
1833
1877
|
today: cn("text-brand-default! data-selected:text-brand-on-default!", defaultClassNames.today),
|
|
1834
|
-
|
|
1878
|
+
week: cn("", defaultClassNames.week),
|
|
1879
|
+
weekdays: cn("style-text-default-0 text-on-surface-muted", defaultClassNames.weekdays)
|
|
1835
1880
|
};
|
|
1836
1881
|
const calendarComponents = {
|
|
1882
|
+
DayButton: CalendarDayButton,
|
|
1837
1883
|
Dropdown: CalendarDropdown,
|
|
1838
1884
|
NextMonthButton: CalendarNextMonthButton,
|
|
1839
1885
|
PreviousMonthButton: CalendarPreviousMonthButton
|
|
@@ -1849,6 +1895,7 @@ function CalendarPicker({ className, mode = "single", selected, onSelect, ...pro
|
|
|
1849
1895
|
className,
|
|
1850
1896
|
classNames: calendarClassNames,
|
|
1851
1897
|
components: calendarComponents,
|
|
1898
|
+
labels: { labelDayButton: labelDayButtonWithVisibleText },
|
|
1852
1899
|
...props
|
|
1853
1900
|
};
|
|
1854
1901
|
switch (mode) {
|
|
@@ -1934,8 +1981,6 @@ function ChartContainer({ id, config, className, children, initialDimension, ref
|
|
|
1934
1981
|
ref,
|
|
1935
1982
|
...props,
|
|
1936
1983
|
children: /* @__PURE__ */ jsx(ResponsiveContainer, {
|
|
1937
|
-
width: "100%",
|
|
1938
|
-
height: "100%",
|
|
1939
1984
|
initialDimension,
|
|
1940
1985
|
children
|
|
1941
1986
|
})
|
|
@@ -2236,34 +2281,28 @@ function CheckboxIndicator({ className, ...props }) {
|
|
|
2236
2281
|
}
|
|
2237
2282
|
//#endregion
|
|
2238
2283
|
//#region src/components/checkbox/checkbox.types.ts
|
|
2239
|
-
const checkboxVariants = cva("group flex size-
|
|
2284
|
+
const checkboxVariants = cva("group flex size-md items-center justify-center rounded-md shadow-2xs outline-2 outline-transparent transition-colors not-indeterminate:text-accent-on-default indeterminate:text-accent-default hover:cursor-pointer hover:outline-accent-border disabled:cursor-not-allowed disabled:hover:cursor-not-allowed data-checked:bg-accent-default [&_svg]:size-sm", {
|
|
2240
2285
|
defaultVariants: { variant: "elevated" },
|
|
2241
2286
|
variants: { variant: {
|
|
2242
2287
|
elevated: "bg-surface shadow-2xs",
|
|
2243
|
-
inSurface: "bg-surface-low shadow-none inset-shadow-2xs data-checked:inset-shadow-none"
|
|
2288
|
+
inSurface: "bg-surface-low shadow-none inset-shadow-2xs data-checked:inset-shadow-none",
|
|
2289
|
+
outline: "bg-inherit shadow-none outline [&:not([data-checked])]:not-hover:outline-border-strong"
|
|
2244
2290
|
} }
|
|
2245
2291
|
});
|
|
2246
2292
|
//#endregion
|
|
2247
2293
|
//#region src/components/checkbox/checkbox.tsx
|
|
2248
|
-
function Checkbox$3({ variant,
|
|
2249
|
-
|
|
2250
|
-
|
|
2251
|
-
if (checkboxId === void 0 && hasLabel) checkboxId = generatedId;
|
|
2252
|
-
return /* @__PURE__ */ jsxs("div", {
|
|
2253
|
-
className: "flex items-center gap-xs",
|
|
2294
|
+
function Checkbox$3({ variant, children, className, ref, ...props }) {
|
|
2295
|
+
return /* @__PURE__ */ jsxs(Label, {
|
|
2296
|
+
className: "flex items-center gap-xs has-disabled:opacity-50",
|
|
2254
2297
|
children: [/* @__PURE__ */ jsx(Checkbox$1.Root, {
|
|
2255
2298
|
className: cn(checkboxVariants({
|
|
2256
2299
|
className,
|
|
2257
2300
|
variant
|
|
2258
2301
|
})),
|
|
2259
|
-
id: checkboxId,
|
|
2260
2302
|
ref,
|
|
2261
2303
|
...props,
|
|
2262
2304
|
children: /* @__PURE__ */ jsx(CheckboxIndicator, {})
|
|
2263
|
-
}),
|
|
2264
|
-
htmlFor: checkboxId,
|
|
2265
|
-
children: label
|
|
2266
|
-
})]
|
|
2305
|
+
}), children]
|
|
2267
2306
|
});
|
|
2268
2307
|
}
|
|
2269
2308
|
//#endregion
|
|
@@ -2336,6 +2375,7 @@ function CodeBlockCopy({ className, children, ref, ...props }) {
|
|
|
2336
2375
|
console.error("Failed to copy text:", error);
|
|
2337
2376
|
}
|
|
2338
2377
|
};
|
|
2378
|
+
if (React.isValidElement(currentValue.content)) return;
|
|
2339
2379
|
return /* @__PURE__ */ jsxs(Button, {
|
|
2340
2380
|
"aria-label": "Copy code",
|
|
2341
2381
|
onClick: handleClick,
|
|
@@ -2376,6 +2416,7 @@ function CodeBlockDownload({ className, children, ref, ...props }) {
|
|
|
2376
2416
|
console.error("Failed to download file:", error);
|
|
2377
2417
|
}
|
|
2378
2418
|
};
|
|
2419
|
+
if (React.isValidElement(currentValue.content)) return;
|
|
2379
2420
|
return /* @__PURE__ */ jsxs(Button, {
|
|
2380
2421
|
"aria-label": "Download file",
|
|
2381
2422
|
onClick: handleClick,
|
|
@@ -2545,7 +2586,7 @@ const tabsVariants = cva("", {
|
|
|
2545
2586
|
variant: "underline"
|
|
2546
2587
|
},
|
|
2547
2588
|
{
|
|
2548
|
-
class: "[&_[role=presentation]]:rounded-
|
|
2589
|
+
class: "[&_[role=presentation]]:rounded-full [&_[role=tab]]:rounded-full [&_[role=tablist]]:rounded-full",
|
|
2549
2590
|
size: "small",
|
|
2550
2591
|
variant: "default"
|
|
2551
2592
|
},
|
|
@@ -2555,55 +2596,65 @@ const tabsVariants = cva("", {
|
|
|
2555
2596
|
variant: "default"
|
|
2556
2597
|
},
|
|
2557
2598
|
{
|
|
2558
|
-
class: "[&_[role=presentation]]:rounded-
|
|
2599
|
+
class: "[&_[role=presentation]]:rounded-full [&_[role=tab]]:h-xl [&_[role=tab]]:rounded-full [&_[role=tab]]:px-md [&_[role=tab]]:style-text-default-0 [&_[role=tablist]]:gap-xs [&_[role=tablist]]:rounded-full [&_[role=tablist]]:p-2xs",
|
|
2559
2600
|
size: "medium",
|
|
2560
2601
|
variant: "default"
|
|
2561
2602
|
},
|
|
2562
2603
|
{
|
|
2563
|
-
class: "[&_[role=presentation]]:rounded-
|
|
2604
|
+
class: "[&_[role=presentation]]:rounded-full [&_[role=tab]]:h-2xl [&_[role=tab]]:rounded-full [&_[role=tab]]:px-lg [&_[role=tab]]:style-text-default-1 [&_[role=tablist]]:gap-sm [&_[role=tablist]]:rounded-full [&_[role=tablist]]:p-xs",
|
|
2564
2605
|
size: "large",
|
|
2565
2606
|
variant: "default"
|
|
2566
2607
|
},
|
|
2567
2608
|
{
|
|
2568
|
-
class: "[&_[role=presentation]]:rounded-
|
|
2609
|
+
class: "[&_[role=presentation]]:rounded-full [&_[role=tab]]:h-lg [&_[role=tab]]:px-sm [&_[role=tab]]:style-text-default--1 [&_[role=tablist]]:gap-2xs [&_[role=tablist]]:rounded-full [&_[role=tablist]]:p-3xs",
|
|
2569
2610
|
size: "small",
|
|
2570
2611
|
variant: "ghost"
|
|
2571
2612
|
},
|
|
2572
2613
|
{
|
|
2573
|
-
class: "[&_[role=presentation]]:rounded-
|
|
2614
|
+
class: "[&_[role=presentation]]:rounded-full [&_[role=tab]]:h-xl [&_[role=tab]]:px-md [&_[role=tab]]:style-text-default-0 [&_[role=tablist]]:gap-xs [&_[role=tablist]]:rounded-full [&_[role=tablist]]:p-2xs",
|
|
2574
2615
|
size: "medium",
|
|
2575
2616
|
variant: "ghost"
|
|
2576
2617
|
},
|
|
2577
2618
|
{
|
|
2578
|
-
class: "[&_[role=presentation]]:rounded-
|
|
2619
|
+
class: "[&_[role=presentation]]:rounded-full [&_[role=tab]]:h-2xl [&_[role=tab]]:px-lg [&_[role=tab]]:style-text-default-1 [&_[role=tablist]]:gap-sm [&_[role=tablist]]:rounded-full [&_[role=tablist]]:p-xs",
|
|
2579
2620
|
size: "large",
|
|
2580
2621
|
variant: "ghost"
|
|
2581
2622
|
},
|
|
2582
2623
|
{
|
|
2583
|
-
class: "[&_[role=tab]]:px-lg [&_[role=tab]]:pb-sm [&_[role=tab]]:style-text-default--1 [&_[role=tablist]]:h-lg [&_[role=tablist]]:gap-md [&_[role=tablist]]:border-b-
|
|
2624
|
+
class: "[&_[role=tab]]:px-lg [&_[role=tab]]:pb-sm [&_[role=tab]]:style-text-default--1 [&_[role=tablist]]:h-lg [&_[role=tablist]]:gap-md [&_[role=tablist]]:border-b-[1px] **:[[role=presentation]]:bottom-[-3px] **:[[role=presentation]]:h-[2px]",
|
|
2584
2625
|
size: "small",
|
|
2585
2626
|
variant: "underline"
|
|
2586
2627
|
},
|
|
2587
2628
|
{
|
|
2588
|
-
class: "[&_[role=tab]]:px-xl [&_[role=tab]]:pb-xs [&_[role=tab]]:style-text-default-0 [&_[role=tablist]]:h-xl [&_[role=tablist]]:gap-lg [&_[role=tablist]]:border-b-
|
|
2629
|
+
class: "[&_[role=tab]]:px-xl [&_[role=tab]]:pb-xs [&_[role=tab]]:style-text-default-0 [&_[role=tablist]]:h-xl [&_[role=tablist]]:gap-lg [&_[role=tablist]]:border-b-[1px] **:[[role=presentation]]:bottom-[-2px] **:[[role=presentation]]:h-px",
|
|
2589
2630
|
size: "medium",
|
|
2590
2631
|
variant: "underline"
|
|
2591
2632
|
},
|
|
2592
2633
|
{
|
|
2593
|
-
class: "[&_[role=tab]]:px-2xl [&_[role=tab]]:pb-2xs [&_[role=tab]]:style-text-default-1 [&_[role=tablist]]:h-2xl [&_[role=tablist]]:gap-xl [&_[role=tablist]]:border-b-
|
|
2634
|
+
class: "[&_[role=tab]]:px-2xl [&_[role=tab]]:pb-2xs [&_[role=tab]]:style-text-default-1 [&_[role=tablist]]:h-2xl [&_[role=tablist]]:gap-xl [&_[role=tablist]]:border-b-[1px] **:[[role=presentation]]:bottom-[-2px] **:[[role=presentation]]:h-px",
|
|
2594
2635
|
size: "large",
|
|
2595
2636
|
variant: "underline"
|
|
2637
|
+
},
|
|
2638
|
+
{
|
|
2639
|
+
class: "[&_[role=tablist]]:w-fit",
|
|
2640
|
+
fill: false,
|
|
2641
|
+
variant: ["default", "ghost"]
|
|
2642
|
+
},
|
|
2643
|
+
{
|
|
2644
|
+
class: "[&_[role=tablist]]:w-full",
|
|
2645
|
+
fill: false,
|
|
2646
|
+
variant: "underline"
|
|
2596
2647
|
}
|
|
2597
2648
|
],
|
|
2598
2649
|
defaultVariants: {
|
|
2599
|
-
fill:
|
|
2650
|
+
fill: false,
|
|
2600
2651
|
size: "medium",
|
|
2601
2652
|
tone: "brand",
|
|
2602
2653
|
variant: "default"
|
|
2603
2654
|
},
|
|
2604
2655
|
variants: {
|
|
2605
2656
|
fill: {
|
|
2606
|
-
false: "
|
|
2657
|
+
false: "",
|
|
2607
2658
|
true: "[&_[role=tab]]:grow [&_[role=tablist]]:w-full"
|
|
2608
2659
|
},
|
|
2609
2660
|
size: {
|
|
@@ -2651,10 +2702,11 @@ function TabsIndicator({ className, ...props }) {
|
|
|
2651
2702
|
}
|
|
2652
2703
|
//#endregion
|
|
2653
2704
|
//#region src/components/tabs/tabs-list.tsx
|
|
2654
|
-
function TabsList({ className, ...props }) {
|
|
2655
|
-
return /* @__PURE__ */
|
|
2705
|
+
function TabsList({ children, className, ...props }) {
|
|
2706
|
+
return /* @__PURE__ */ jsxs(Tabs$1.List, {
|
|
2656
2707
|
className: cn("relative z-0 flex", className),
|
|
2657
|
-
...props
|
|
2708
|
+
...props,
|
|
2709
|
+
children: [children, /* @__PURE__ */ jsx(TabsIndicator, {})]
|
|
2658
2710
|
});
|
|
2659
2711
|
}
|
|
2660
2712
|
//#endregion
|
|
@@ -2846,9 +2898,9 @@ const colorPickerVariants = cva("flex flex-col space-y-sm", {
|
|
|
2846
2898
|
const colorPickerSwatchVariants = cva("overflow-hidden border border-border hover:cursor-pointer focus:outline-2 focus:outline-offset-2", {
|
|
2847
2899
|
defaultVariants: { size: "medium" },
|
|
2848
2900
|
variants: { size: {
|
|
2849
|
-
large: "size-lg rounded-
|
|
2850
|
-
medium: "size-md rounded-
|
|
2851
|
-
small: "size-sm rounded-
|
|
2901
|
+
large: "size-lg rounded-lg",
|
|
2902
|
+
medium: "size-md rounded-md",
|
|
2903
|
+
small: "size-sm rounded-sm"
|
|
2852
2904
|
} }
|
|
2853
2905
|
});
|
|
2854
2906
|
const RGB_CHANNEL_COUNT = 3;
|
|
@@ -3254,7 +3306,7 @@ function InputGroupInput({ size = "medium", className, ref, ...props }) {
|
|
|
3254
3306
|
if (ref && typeof ref === "object") Object.assign(ref, { current: node });
|
|
3255
3307
|
};
|
|
3256
3308
|
return /* @__PURE__ */ jsxs("button", {
|
|
3257
|
-
"aria-label":
|
|
3309
|
+
"aria-label": `${colorValue}, open color picker`,
|
|
3258
3310
|
className: cn("relative flex size-full items-center justify-start hover:cursor-pointer", className),
|
|
3259
3311
|
disabled: props.disabled,
|
|
3260
3312
|
onClick: () => inputRef.current?.click(),
|
|
@@ -3273,7 +3325,7 @@ function InputGroupInput({ size = "medium", className, ref, ...props }) {
|
|
|
3273
3325
|
...colorProps
|
|
3274
3326
|
}),
|
|
3275
3327
|
/* @__PURE__ */ jsx("p", {
|
|
3276
|
-
className: cn("text-left", size === "small" && "pr-xs pl-lg style-text-default--1", size === "medium" && "pl-[calc(var(--
|
|
3328
|
+
className: cn("text-left", size === "small" && "pr-xs pl-lg style-text-default--1", size === "medium" && "pl-[calc(var(--ixia-spacing-lg)+6px)] style-text-default-0", size === "large" && "pl-2xl style-text-default-1"),
|
|
3277
3329
|
children: colorValue
|
|
3278
3330
|
})
|
|
3279
3331
|
]
|
|
@@ -3552,7 +3604,7 @@ function ColorPickerInput({ showPopover = false, showTransparencyField = true, c
|
|
|
3552
3604
|
}) })] }),
|
|
3553
3605
|
!showPopover && /* @__PURE__ */ jsx(InputGroupAddon, {
|
|
3554
3606
|
style: { backgroundColor: color.hex() },
|
|
3555
|
-
className: "aspect-square size-md rounded-
|
|
3607
|
+
className: "aspect-square size-md rounded-md"
|
|
3556
3608
|
}),
|
|
3557
3609
|
/* @__PURE__ */ jsx(InputGroupInput, {
|
|
3558
3610
|
"aria-label": "Color value",
|
|
@@ -4258,7 +4310,7 @@ function Dialog$2({ ...props }) {
|
|
|
4258
4310
|
//#region src/components/dialog/dialog-close.tsx
|
|
4259
4311
|
function DialogClose({ className, ref, ...props }) {
|
|
4260
4312
|
return /* @__PURE__ */ jsx(Dialog$1.Close, {
|
|
4261
|
-
className: cn("absolute top-
|
|
4313
|
+
className: cn("absolute top-xs right-xs", className),
|
|
4262
4314
|
ref,
|
|
4263
4315
|
...props,
|
|
4264
4316
|
render: /* @__PURE__ */ jsx(Button, {
|
|
@@ -4327,7 +4379,7 @@ function DialogPopup({ className, children, ref, ...props }) {
|
|
|
4327
4379
|
backdropFilter: "blur(16px)"
|
|
4328
4380
|
}
|
|
4329
4381
|
}), /* @__PURE__ */ jsx(Dialog$1.Popup, {
|
|
4330
|
-
className: cn("fixed top-1/2 left-1/2 z-999 flex max-w-[calc(100vw-3rem)] min-w-1/6 -translate-1/2 flex-col gap-sm overflow-hidden rounded-3xl bg-surface-2
|
|
4382
|
+
className: cn("fixed top-1/2 left-1/2 z-999 flex max-w-[calc(100vw-3rem)] min-w-1/6 -translate-1/2 flex-col gap-sm overflow-hidden rounded-3xl bg-surface-2 px-lg py-md shadow-lg transition-all duration-150 data-ending-style:scale-90 data-ending-style:opacity-0 data-starting-style:scale-90 data-starting-style:opacity-0", className),
|
|
4331
4383
|
ref,
|
|
4332
4384
|
...props,
|
|
4333
4385
|
children
|
|
@@ -4896,7 +4948,7 @@ function MeterSubtitle({ className, ref, ...props }) {
|
|
|
4896
4948
|
//#region src/components/meter/meter-track.tsx
|
|
4897
4949
|
function MeterTrack({ className, ref, ...props }) {
|
|
4898
4950
|
return /* @__PURE__ */ jsx(Meter$1.Track, {
|
|
4899
|
-
className: cn("w-full self-center rounded-full bg-
|
|
4951
|
+
className: cn("w-full self-center rounded-full bg-neutral-container", className),
|
|
4900
4952
|
"data-track": true,
|
|
4901
4953
|
ref,
|
|
4902
4954
|
...props
|
|
@@ -5087,20 +5139,15 @@ function Field$1({ className, children, ref, ...props }) {
|
|
|
5087
5139
|
const { fieldContext, useFieldContext, formContext, useFormContext } = createFormHookContexts();
|
|
5088
5140
|
//#endregion
|
|
5089
5141
|
//#region src/components/field/field-checkbox.tsx
|
|
5090
|
-
function FieldCheckbox({ ...props }) {
|
|
5142
|
+
function FieldCheckbox({ children, ...props }) {
|
|
5091
5143
|
const field = useFieldContext();
|
|
5092
|
-
return /* @__PURE__ */
|
|
5093
|
-
|
|
5094
|
-
|
|
5095
|
-
|
|
5096
|
-
|
|
5097
|
-
|
|
5098
|
-
|
|
5099
|
-
...props
|
|
5100
|
-
}), props.label && /* @__PURE__ */ jsx(Label, {
|
|
5101
|
-
htmlFor: field.name,
|
|
5102
|
-
children: props.label
|
|
5103
|
-
})]
|
|
5144
|
+
return /* @__PURE__ */ jsx(Checkbox, {
|
|
5145
|
+
checked: field.state.value,
|
|
5146
|
+
id: field.name,
|
|
5147
|
+
name: field.name,
|
|
5148
|
+
onCheckedChange: (checked) => field.handleChange(checked),
|
|
5149
|
+
...props,
|
|
5150
|
+
children
|
|
5104
5151
|
});
|
|
5105
5152
|
}
|
|
5106
5153
|
//#endregion
|
|
@@ -5190,7 +5237,7 @@ function Input({ fileUploadButtonIcon = defaultFileUploadButtonIcon, fileUploadB
|
|
|
5190
5237
|
onClick: () => inputRef.current?.click(),
|
|
5191
5238
|
type: "button",
|
|
5192
5239
|
children: [/* @__PURE__ */ jsx("div", {
|
|
5193
|
-
className: cn("size-full", size === "small" && "rounded-
|
|
5240
|
+
className: cn("size-full", size === "small" && "rounded-md", size === "medium" && "rounded-lg", size === "large" && "rounded-xl"),
|
|
5194
5241
|
style: { backgroundColor: colorValue }
|
|
5195
5242
|
}), /* @__PURE__ */ jsx(Input$1, {
|
|
5196
5243
|
className: "peer pointer-events-none invisible absolute",
|
|
@@ -5202,7 +5249,7 @@ function Input({ fileUploadButtonIcon = defaultFileUploadButtonIcon, fileUploadB
|
|
|
5202
5249
|
})]
|
|
5203
5250
|
});
|
|
5204
5251
|
return /* @__PURE__ */ jsxs("button", {
|
|
5205
|
-
"aria-label":
|
|
5252
|
+
"aria-label": `${colorValue}, open color picker`,
|
|
5206
5253
|
className: cn("relative flex hover:cursor-pointer", inputVariants({
|
|
5207
5254
|
size,
|
|
5208
5255
|
variant
|
|
@@ -5638,11 +5685,15 @@ function Switch({ children, className, ref, ...props }) {
|
|
|
5638
5685
|
return /* @__PURE__ */ jsxs(Label, {
|
|
5639
5686
|
className: "flex items-center gap-xs",
|
|
5640
5687
|
children: [/* @__PURE__ */ jsx(Switch$1.Root, {
|
|
5641
|
-
className: cn("group relative flex h-
|
|
5688
|
+
className: cn("group relative flex h-lg w-2xl items-center rounded-full bg-surface-low bg-size-[6.5rem_100%] outline-2 outline-transparent transition-colors ease-[cubic-bezier(0.26,0.75,0.38,0.45)] before:absolute before:rounded-full hover:cursor-pointer hover:not-disabled:outline-accent-border-strong disabled:pointer-events-none disabled:opacity-50 data-checked:bg-accent-default data-disabled:pointer-events-none data-disabled:opacity-50", className),
|
|
5642
5689
|
ref,
|
|
5643
5690
|
...props,
|
|
5644
|
-
children: /* @__PURE__ */ jsx(Switch$1.Thumb, { className: "size-
|
|
5645
|
-
}), children
|
|
5691
|
+
children: /* @__PURE__ */ jsx(Switch$1.Thumb, { className: "size-md translate-x-[calc(0%+3px)] rounded-full shadow-2xs transition-transform duration-500 ease-[cubic-bezier(0.68,-0.55,0.27,1.55)] data-checked:translate-x-[calc(100%--7px)] data-checked:bg-accent-on-default data-unchecked:bg-white" })
|
|
5692
|
+
}), children != void 0 && /* @__PURE__ */ jsx("span", {
|
|
5693
|
+
"data-slot": "switch-label",
|
|
5694
|
+
className: "leading-none",
|
|
5695
|
+
children
|
|
5696
|
+
})]
|
|
5646
5697
|
});
|
|
5647
5698
|
}
|
|
5648
5699
|
//#endregion
|
|
@@ -5663,6 +5714,8 @@ function FieldSwitch({ children, ...props }) {
|
|
|
5663
5714
|
const textAreaVariants = cva("relative flex resize flex-col overflow-hidden rounded-xl outline outline-transparent transition-[outline] hover:not-focus-within:outline-border-strong data-[disabled=true]:cursor-not-allowed", {
|
|
5664
5715
|
defaultVariants: { variant: "primary" },
|
|
5665
5716
|
variants: { variant: {
|
|
5717
|
+
ghost: "bg-transparent",
|
|
5718
|
+
outline: "border border-border",
|
|
5666
5719
|
primary: "bg-surface shadow-2xs",
|
|
5667
5720
|
secondary: "bg-neutral-container"
|
|
5668
5721
|
} }
|
|
@@ -5950,32 +6003,32 @@ function FormSubmit({ className, children, ref, ...props }) {
|
|
|
5950
6003
|
//#region src/components/form/form-context.tsx
|
|
5951
6004
|
const { useAppForm, withFieldGroup, withForm, useTypedAppFormContext } = createFormHook({
|
|
5952
6005
|
fieldComponents: {
|
|
5953
|
-
FieldCheckbox,
|
|
5954
|
-
FieldDescription,
|
|
5955
|
-
FieldErrors,
|
|
5956
|
-
FieldInput,
|
|
5957
|
-
FieldInputGroup,
|
|
5958
|
-
FieldInputGroupInput,
|
|
5959
|
-
FieldLabel,
|
|
5960
|
-
FieldRadio,
|
|
5961
|
-
FieldRadioGroup,
|
|
5962
|
-
FieldRow,
|
|
5963
|
-
FieldSelect,
|
|
5964
|
-
FieldSet,
|
|
5965
|
-
FieldSlider,
|
|
5966
|
-
FieldSwitch,
|
|
5967
|
-
FieldTextArea,
|
|
5968
|
-
FieldToggle
|
|
6006
|
+
Checkbox: FieldCheckbox,
|
|
6007
|
+
Description: FieldDescription,
|
|
6008
|
+
Errors: FieldErrors,
|
|
6009
|
+
Input: FieldInput,
|
|
6010
|
+
InputGroup: FieldInputGroup,
|
|
6011
|
+
InputGroupInput: FieldInputGroupInput,
|
|
6012
|
+
Label: FieldLabel,
|
|
6013
|
+
Radio: FieldRadio,
|
|
6014
|
+
RadioGroup: FieldRadioGroup,
|
|
6015
|
+
Row: FieldRow,
|
|
6016
|
+
Select: FieldSelect,
|
|
6017
|
+
Set: FieldSet,
|
|
6018
|
+
Slider: FieldSlider,
|
|
6019
|
+
Switch: FieldSwitch,
|
|
6020
|
+
TextArea: FieldTextArea,
|
|
6021
|
+
Toggle: FieldToggle
|
|
5969
6022
|
},
|
|
5970
6023
|
fieldContext,
|
|
5971
6024
|
formComponents: {
|
|
5972
|
-
FormErrors,
|
|
5973
|
-
FormFooter,
|
|
5974
|
-
FormReset,
|
|
5975
|
-
FormSet,
|
|
5976
|
-
FormSetContent,
|
|
5977
|
-
FormSetHeading,
|
|
5978
|
-
FormSubmit
|
|
6025
|
+
Errors: FormErrors,
|
|
6026
|
+
Footer: FormFooter,
|
|
6027
|
+
Reset: FormReset,
|
|
6028
|
+
Set: FormSet,
|
|
6029
|
+
SetContent: FormSetContent,
|
|
6030
|
+
SetHeading: FormSetHeading,
|
|
6031
|
+
Submit: FormSubmit
|
|
5979
6032
|
},
|
|
5980
6033
|
formContext
|
|
5981
6034
|
});
|
|
@@ -5991,6 +6044,66 @@ const Form = Object.assign(Form$1, {
|
|
|
5991
6044
|
Submit: FormSubmit
|
|
5992
6045
|
});
|
|
5993
6046
|
//#endregion
|
|
6047
|
+
//#region src/components/icon-container/icon-container.types.ts
|
|
6048
|
+
const iconContainerVariants = cva("flex shrink-0 items-center justify-center", {
|
|
6049
|
+
compoundVariants: [
|
|
6050
|
+
{
|
|
6051
|
+
className: "rounded-xl",
|
|
6052
|
+
shape: "square",
|
|
6053
|
+
size: "small"
|
|
6054
|
+
},
|
|
6055
|
+
{
|
|
6056
|
+
className: "rounded-2xl",
|
|
6057
|
+
shape: "square",
|
|
6058
|
+
size: "medium"
|
|
6059
|
+
},
|
|
6060
|
+
{
|
|
6061
|
+
className: "rounded-3xl",
|
|
6062
|
+
shape: "square",
|
|
6063
|
+
size: "large"
|
|
6064
|
+
}
|
|
6065
|
+
],
|
|
6066
|
+
defaultVariants: {
|
|
6067
|
+
shape: "rounded",
|
|
6068
|
+
size: "medium",
|
|
6069
|
+
tone: "brand"
|
|
6070
|
+
},
|
|
6071
|
+
variants: {
|
|
6072
|
+
shape: {
|
|
6073
|
+
rounded: "rounded-full",
|
|
6074
|
+
square: ""
|
|
6075
|
+
},
|
|
6076
|
+
size: {
|
|
6077
|
+
large: "size-3xl [&>svg]:size-xl",
|
|
6078
|
+
medium: "size-2xl [&>svg]:size-lg",
|
|
6079
|
+
small: "size-xl [&>svg]:size-md"
|
|
6080
|
+
},
|
|
6081
|
+
tone: {
|
|
6082
|
+
accent: "bg-accent-container-high text-accent-on-container",
|
|
6083
|
+
brand: "bg-brand-container-high text-brand-on-container",
|
|
6084
|
+
error: "bg-error-container-high text-error-on-container",
|
|
6085
|
+
info: "bg-info-container-high text-info-on-container",
|
|
6086
|
+
neutral: "bg-neutral-container-high text-neutral-on-container",
|
|
6087
|
+
success: "bg-success-container-high text-success-on-container",
|
|
6088
|
+
warning: "bg-warning-container-high text-warning-on-container"
|
|
6089
|
+
}
|
|
6090
|
+
}
|
|
6091
|
+
});
|
|
6092
|
+
//#endregion
|
|
6093
|
+
//#region src/components/icon-container/icon-container.tsx
|
|
6094
|
+
function IconContainer({ shape, size, tone, className, children, ref, ...props }) {
|
|
6095
|
+
return /* @__PURE__ */ jsx("div", {
|
|
6096
|
+
className: cn(iconContainerVariants({
|
|
6097
|
+
shape,
|
|
6098
|
+
size,
|
|
6099
|
+
tone
|
|
6100
|
+
}), className),
|
|
6101
|
+
ref,
|
|
6102
|
+
...props,
|
|
6103
|
+
children
|
|
6104
|
+
});
|
|
6105
|
+
}
|
|
6106
|
+
//#endregion
|
|
5994
6107
|
//#region src/components/input-otp/input-otp.tsx
|
|
5995
6108
|
function InputOTP$1({ children, className, id, ref, ...props }) {
|
|
5996
6109
|
const generatedId = useId(), fieldId = id ?? generatedId;
|
|
@@ -6584,7 +6697,7 @@ function MenuGroupLabel({ className, ref, ...props }) {
|
|
|
6584
6697
|
}
|
|
6585
6698
|
//#endregion
|
|
6586
6699
|
//#region src/components/menu/menu.types.ts
|
|
6587
|
-
const menuItemVariants = cva("relative z-0 flex
|
|
6700
|
+
const menuItemVariants = cva("relative z-0 flex cursor-default items-center px-xs py-3xs style-text-default-0 transition-colors duration-100 outline-none select-none before:absolute before:inset-x-3xs before:inset-y-[0px] before:z-[-1] before:rounded-md before:bg-transparent before:transition-colors before:duration-100 before:content-[\"\"] hover:cursor-pointer", {
|
|
6588
6701
|
defaultVariants: { tone: "neutral" },
|
|
6589
6702
|
variants: { tone: {
|
|
6590
6703
|
accent: "text-accent-default data-highlighted:text-accent-on-container data-highlighted:before:bg-accent-container",
|
|
@@ -6596,7 +6709,7 @@ const menuItemVariants = cva("relative z-0 flex h-lg cursor-default items-center
|
|
|
6596
6709
|
warning: "text-warning-default data-highlighted:text-warning-on-container data-highlighted:before:bg-warning-container"
|
|
6597
6710
|
} }
|
|
6598
6711
|
});
|
|
6599
|
-
const menuSubmenuTriggerVariants = cva("relative z-0 grid
|
|
6712
|
+
const menuSubmenuTriggerVariants = cva("relative z-0 grid cursor-default grid-cols-[1fr_2rem] items-center px-xs py-3xs style-text-default-0 transition-colors duration-100 outline-none select-none before:absolute before:inset-x-3xs before:inset-y-[0px] before:z-[-1] before:rounded-md before:transition-colors before:duration-100 before:content-[\"\"] hover:cursor-pointer", {
|
|
6600
6713
|
defaultVariants: { tone: "neutral" },
|
|
6601
6714
|
variants: { tone: {
|
|
6602
6715
|
accent: "text-accent-default data-highlighted:text-accent-on-container data-highlighted:before:bg-accent-container data-popup-open:text-accent-on-container data-popup-open:before:bg-accent-container data-highlighted:data-popup-open:before:bg-accent-container",
|
|
@@ -6633,7 +6746,7 @@ function MenuPopup({ className, children, ref, ...props }) {
|
|
|
6633
6746
|
sideOffset: 8,
|
|
6634
6747
|
...props,
|
|
6635
6748
|
children: /* @__PURE__ */ jsx(Menu$1.Popup, {
|
|
6636
|
-
className: "z-99 min-w-[12rem] origin-(--transform-origin) translate-x-[-calc(var(--spacing-xl)/2)] rounded-lg bg-surface-2 px-3xs py-2xs shadow-md transition-[transform,scale,opacity] data-ending-style:scale-90 data-ending-style:opacity-0 data-starting-style:scale-90 data-starting-style:opacity-0",
|
|
6749
|
+
className: "z-99 flex min-w-[12rem] origin-(--transform-origin) translate-x-[-calc(var(--spacing-xl)/2)] flex-col gap-3xs rounded-lg bg-surface-2 px-3xs py-2xs shadow-md transition-[transform,scale,opacity] data-ending-style:scale-90 data-ending-style:opacity-0 data-starting-style:scale-90 data-starting-style:opacity-0",
|
|
6637
6750
|
children
|
|
6638
6751
|
})
|
|
6639
6752
|
}) });
|
|
@@ -6954,17 +7067,17 @@ const navBarVariants = cva("flex h-fit items-center justify-between", {
|
|
|
6954
7067
|
variant: "floating"
|
|
6955
7068
|
},
|
|
6956
7069
|
{
|
|
6957
|
-
className: "[&_[data-nav-bar-item]]:
|
|
7070
|
+
className: "[&_[data-nav-bar-item]]:max-w-2xl [&_[data-nav-bar-item]]:gap-3xs [&_[data-nav-bar-item]]:rounded-xl [&_[data-nav-bar-item]]:p-[min(var(--spacing-2xs),25%)]",
|
|
6958
7071
|
itemOrientation: "vertical",
|
|
6959
7072
|
size: "small"
|
|
6960
7073
|
},
|
|
6961
7074
|
{
|
|
6962
|
-
className: "[&_[data-nav-bar-item]]:
|
|
7075
|
+
className: "[&_[data-nav-bar-item]]:max-w-3xl [&_[data-nav-bar-item]]:gap-3xs [&_[data-nav-bar-item]]:rounded-2xl [&_[data-nav-bar-item]]:p-[min(var(--spacing-sm),25%)]",
|
|
6963
7076
|
itemOrientation: "vertical",
|
|
6964
7077
|
size: "medium"
|
|
6965
7078
|
},
|
|
6966
7079
|
{
|
|
6967
|
-
className: "[&_[data-nav-bar-item]]:
|
|
7080
|
+
className: "[&_[data-nav-bar-item]]:gap-2xs [&_[data-nav-bar-item]]:rounded-3xl [&_[data-nav-bar-item]]:p-[min(var(--spacing-md),25%)]",
|
|
6968
7081
|
itemOrientation: "vertical",
|
|
6969
7082
|
size: "large"
|
|
6970
7083
|
},
|
|
@@ -6992,7 +7105,7 @@ const navBarVariants = cva("flex h-fit items-center justify-between", {
|
|
|
6992
7105
|
variants: {
|
|
6993
7106
|
itemOrientation: {
|
|
6994
7107
|
horizontal: "[&_[data-nav-bar-item]]:flex-row",
|
|
6995
|
-
vertical: "[&_[data-nav-bar-item]]:flex-col"
|
|
7108
|
+
vertical: "grid auto-cols-fr grid-flow-col items-start justify-items-center [&_[data-nav-bar-item]]:min-h-0 [&_[data-nav-bar-item]]:w-full [&_[data-nav-bar-item]]:min-w-0 [&_[data-nav-bar-item]]:flex-col [&_[data-nav-bar-item]]:overflow-hidden [&_[data-nav-bar-item]_span]:max-w-full [&_[data-nav-bar-item]_span]:truncate"
|
|
6996
7109
|
},
|
|
6997
7110
|
size: {
|
|
6998
7111
|
large: "gap-sm p-md [&_span]:style-text-default-0 [&_svg]:size-lg",
|
|
@@ -7127,7 +7240,7 @@ const navigationMenuTriggerVariants = cva("flex items-center justify-center roun
|
|
|
7127
7240
|
}
|
|
7128
7241
|
}
|
|
7129
7242
|
});
|
|
7130
|
-
const navigationMenuLinkVariants = cva("rounded-
|
|
7243
|
+
const navigationMenuLinkVariants = cva("rounded-xl px-sm py-xs transition-colors hover:cursor-pointer", {
|
|
7131
7244
|
defaultVariants: { tone: "neutral" },
|
|
7132
7245
|
variants: { tone: {
|
|
7133
7246
|
accent: "text-accent-on-container hover:bg-accent-container",
|
|
@@ -7382,7 +7495,7 @@ function ProfileAction({ className, ref, ...props }) {
|
|
|
7382
7495
|
//#region src/components/profile/profile-content.tsx
|
|
7383
7496
|
function ProfileContent({ compact, className, ref, ...props }) {
|
|
7384
7497
|
return /* @__PURE__ */ jsx("div", {
|
|
7385
|
-
className: cn("flex flex-col items-start justify-start
|
|
7498
|
+
className: cn("flex flex-col items-start justify-start", compact && "hidden", className),
|
|
7386
7499
|
ref,
|
|
7387
7500
|
...props
|
|
7388
7501
|
});
|
|
@@ -7480,7 +7593,7 @@ function ProgressIndicator({ className, children, ref, ...props }) {
|
|
|
7480
7593
|
return /* @__PURE__ */ jsxs("div", {
|
|
7481
7594
|
className: "relative flex shrink-0 flex-col items-center",
|
|
7482
7595
|
children: [/* @__PURE__ */ jsx("div", {
|
|
7483
|
-
className: cn("flex size-md shrink-0 flex-col items-center justify-center rounded-full border border-neutral-border bg-neutral-container text-center
|
|
7596
|
+
className: cn("flex size-md shrink-0 flex-col items-center justify-center rounded-full border border-neutral-border bg-neutral-container text-center font-body text-xs leading-none font-medium text-accent-default transition-colors ease-in-out [&_svg]:size-xs", className),
|
|
7484
7597
|
ref,
|
|
7485
7598
|
...props,
|
|
7486
7599
|
children: inner
|
|
@@ -7661,7 +7774,7 @@ function useMediaQuery(deviceName) {
|
|
|
7661
7774
|
}
|
|
7662
7775
|
//#endregion
|
|
7663
7776
|
//#region src/hooks/theme/theme.constants.ts
|
|
7664
|
-
const THEME_STORAGE_KEY = "
|
|
7777
|
+
const THEME_STORAGE_KEY = "ixia-ui-theme";
|
|
7665
7778
|
const DEFAULT_THEME = "light";
|
|
7666
7779
|
const getThemeByValue = (value, themes) => themes.find((themeItem) => themeItem.value === value);
|
|
7667
7780
|
//#endregion
|
|
@@ -7888,7 +8001,7 @@ function SidebarMenuButton({ isActive, className, ref, ...props }) {
|
|
|
7888
8001
|
return /* @__PURE__ */ jsx("button", {
|
|
7889
8002
|
type: "button",
|
|
7890
8003
|
"data-active": String(Boolean(isActive)),
|
|
7891
|
-
className: cn("inline-flex cursor-pointer items-center gap-2xs rounded-
|
|
8004
|
+
className: cn("inline-flex cursor-pointer items-center gap-2xs rounded-full border border-transparent style-text-default-0 whitespace-nowrap transition-all duration-200 ease-out select-none active:scale-95 disabled:pointer-events-none disabled:opacity-50 [&>svg]:shrink-0", isActive && "pointer-events-none bg-surface text-on-surface shadow-2xs", !isActive && "text-neutral-default hover:bg-neutral-container hover:text-neutral-on-container", isActive && !open && "bg-neutral-container", !(collapsible === "none" || open) && "mx-auto", !open && "size-xl justify-center *:hidden [&>svg]:block", open && "h-xl w-full pl-sm", collapsible !== "none" && open && "animate-in fade-in-0 slide-in-from-left-2", className),
|
|
7892
8005
|
ref,
|
|
7893
8006
|
...props
|
|
7894
8007
|
});
|
|
@@ -8213,6 +8326,13 @@ const SliderGroup = Object.assign(SliderGroup$1, {
|
|
|
8213
8326
|
});
|
|
8214
8327
|
//#endregion
|
|
8215
8328
|
//#region src/components/table/table.types.ts
|
|
8329
|
+
const tableContainerVariants = cva("group/table flex min-w-0 flex-col gap-md", {
|
|
8330
|
+
defaultVariants: { variant: "outline" },
|
|
8331
|
+
variants: { variant: {
|
|
8332
|
+
ghost: "",
|
|
8333
|
+
outline: "overflow-hidden rounded-2xl border border-border"
|
|
8334
|
+
} }
|
|
8335
|
+
});
|
|
8216
8336
|
const stringFilterOperators = [
|
|
8217
8337
|
"equals",
|
|
8218
8338
|
"notEquals",
|
|
@@ -8270,7 +8390,7 @@ function getColumnHeaderLabel(column) {
|
|
|
8270
8390
|
function asFilterValue(value) {
|
|
8271
8391
|
return value;
|
|
8272
8392
|
}
|
|
8273
|
-
const ZERO = 0;
|
|
8393
|
+
const ZERO$1 = 0;
|
|
8274
8394
|
const FIRST_RANGE_INDEX$1 = 0;
|
|
8275
8395
|
const SECOND_RANGE_INDEX = 1;
|
|
8276
8396
|
const getDateTimestamp = (date) => Date.UTC(date.getFullYear(), date.getMonth(), date.getDate());
|
|
@@ -8287,8 +8407,8 @@ const parseToTimestamp = (value) => {
|
|
|
8287
8407
|
const normalizeDataValue = (value) => {
|
|
8288
8408
|
if (value instanceof Date) return getDateTimestamp(value);
|
|
8289
8409
|
if (typeof value === "number") return getDateTimestamp(new Date(value));
|
|
8290
|
-
if (typeof value === "string") return parseToTimestamp(value) ?? ZERO;
|
|
8291
|
-
return ZERO;
|
|
8410
|
+
if (typeof value === "string") return parseToTimestamp(value) ?? ZERO$1;
|
|
8411
|
+
return ZERO$1;
|
|
8292
8412
|
};
|
|
8293
8413
|
const dateFilterFn = constructFilterFn({
|
|
8294
8414
|
autoRemove: (value) => !value || !value.date[FIRST_RANGE_INDEX$1] && !value.date[SECOND_RANGE_INDEX],
|
|
@@ -8371,6 +8491,25 @@ const features = tableFeatures({
|
|
|
8371
8491
|
columnMeta: metaHelper(),
|
|
8372
8492
|
columnSizingFeature,
|
|
8373
8493
|
columnVisibilityFeature,
|
|
8494
|
+
datasetPlugin: {
|
|
8495
|
+
constructTableAPIs: (table) => {
|
|
8496
|
+
const options = table.options;
|
|
8497
|
+
assignTableAPIs("datasetPlugin", table, { table_setCurrentDataset: { fn: (updater) => {
|
|
8498
|
+
const safeUpdater = (old) => functionalUpdate(updater, old);
|
|
8499
|
+
return options.onCurrentDatasetChange?.(safeUpdater);
|
|
8500
|
+
} } });
|
|
8501
|
+
},
|
|
8502
|
+
getDefaultTableOptions: (table) => ({ onCurrentDatasetChange: makeStateUpdater("currentDataset", table) }),
|
|
8503
|
+
getInitialState: (initialState) => ({
|
|
8504
|
+
currentDataset: {
|
|
8505
|
+
data: [],
|
|
8506
|
+
id: "",
|
|
8507
|
+
name: ""
|
|
8508
|
+
},
|
|
8509
|
+
datasets: [],
|
|
8510
|
+
...initialState
|
|
8511
|
+
})
|
|
8512
|
+
},
|
|
8374
8513
|
facetedRowModel: createFacetedRowModel(),
|
|
8375
8514
|
facetedUniqueValues: createFacetedUniqueValues(),
|
|
8376
8515
|
filterFns: {
|
|
@@ -8442,6 +8581,21 @@ const features = tableFeatures({
|
|
|
8442
8581
|
}
|
|
8443
8582
|
}), { tableContext, cellContext, headerContext, useTableContext: useTableContext$2, useCellContext: useCellContext$2, useHeaderContext: useHeaderContext$2 } = createTableHookContexts();
|
|
8444
8583
|
//#endregion
|
|
8584
|
+
//#region src/components/table/table-avatar-cell.tsx
|
|
8585
|
+
function TableAvatarCell({ fallback, className, children, ref, ...props }) {
|
|
8586
|
+
const value = useCellContext$2().getValue();
|
|
8587
|
+
return /* @__PURE__ */ jsxs(Avatar, {
|
|
8588
|
+
className: cn("", className),
|
|
8589
|
+
ref,
|
|
8590
|
+
...props,
|
|
8591
|
+
children: [
|
|
8592
|
+
/* @__PURE__ */ jsx(Avatar.Image, { src: value }),
|
|
8593
|
+
fallback && /* @__PURE__ */ jsx(Avatar.Fallback, { children: fallback }),
|
|
8594
|
+
children
|
|
8595
|
+
]
|
|
8596
|
+
});
|
|
8597
|
+
}
|
|
8598
|
+
//#endregion
|
|
8445
8599
|
//#region src/components/table/table-badge-cell.tsx
|
|
8446
8600
|
function resolveTone(tone, value) {
|
|
8447
8601
|
if (typeof tone === "function") return tone(value);
|
|
@@ -8460,17 +8614,13 @@ function TableBadgeCell({ className, children, ref, tone, ...props }) {
|
|
|
8460
8614
|
}
|
|
8461
8615
|
//#endregion
|
|
8462
8616
|
//#region src/components/table/table-body.tsx
|
|
8463
|
-
function getRowBackgroundColor(isSelected) {
|
|
8464
|
-
if (isSelected) return "var(--color-neutral-container-high)";
|
|
8465
|
-
return "transparent";
|
|
8466
|
-
}
|
|
8467
8617
|
function TableBody({ showDivider = true, className, ref, ...props }) {
|
|
8468
8618
|
const table = useTableContext$2();
|
|
8469
8619
|
return /* @__PURE__ */ jsx(table.Subscribe, {
|
|
8470
8620
|
selector: (state) => state,
|
|
8471
8621
|
children: (state) => {
|
|
8472
8622
|
if (state.viewMode === "grid") return /* @__PURE__ */ jsx("ul", {
|
|
8473
|
-
className: cn("grid auto-rows-fr grid-cols-[repeat(auto-fill,minmax(252px,1fr))] gap-sm overflow-y-auto", className),
|
|
8623
|
+
className: cn("grid auto-rows-fr grid-cols-[repeat(auto-fill,minmax(252px,1fr))] gap-sm overflow-y-auto border-border group-data-[variant=outline]/table:border-y group-data-[variant=outline]/table:p-md", className),
|
|
8474
8624
|
children: table.getRowModel().rows.map((row) => /* @__PURE__ */ jsx("li", {
|
|
8475
8625
|
className: "min-w-0",
|
|
8476
8626
|
children: row.getVisibleCells().map((cell) => /* @__PURE__ */ jsx(table.AppCell, {
|
|
@@ -8483,16 +8633,16 @@ function TableBody({ showDivider = true, className, ref, ...props }) {
|
|
|
8483
8633
|
}, row.id))
|
|
8484
8634
|
});
|
|
8485
8635
|
return /* @__PURE__ */ jsx("tbody", {
|
|
8486
|
-
className: cn(showDivider && "divide-y divide-border", "overflow-y-auto", className),
|
|
8636
|
+
className: cn(showDivider && "divide-y divide-border", "overflow-y-auto border-border group-data-[variant=outline]/table:last:border-b", className),
|
|
8487
8637
|
ref,
|
|
8488
8638
|
...props,
|
|
8489
8639
|
children: table.getRowModel().rows.map((row) => /* @__PURE__ */ jsx("tr", {
|
|
8490
|
-
|
|
8640
|
+
className: cn(row.getIsSelected() && "bg-neutral-container-low"),
|
|
8491
8641
|
children: row.getVisibleCells().map((cell) => /* @__PURE__ */ jsx(table.AppCell, {
|
|
8492
8642
|
cell,
|
|
8493
8643
|
children: (renderedCell) => /* @__PURE__ */ jsx("td", {
|
|
8494
8644
|
style: { width: renderedCell.column.getSize() },
|
|
8495
|
-
className: cn("h-
|
|
8645
|
+
className: cn("h-2xl p-xs", className),
|
|
8496
8646
|
children: /* @__PURE__ */ jsx(table.FlexRender, { cell: renderedCell })
|
|
8497
8647
|
})
|
|
8498
8648
|
}, cell.id))
|
|
@@ -8502,24 +8652,70 @@ function TableBody({ showDivider = true, className, ref, ...props }) {
|
|
|
8502
8652
|
});
|
|
8503
8653
|
}
|
|
8504
8654
|
//#endregion
|
|
8655
|
+
//#region src/components/table/table-boolean-cell.tsx
|
|
8656
|
+
function TableBooleanCell({ trueLabel = "Yes", falseLabel = "No", children, ...props }) {
|
|
8657
|
+
const value = useCellContext$2().getValue();
|
|
8658
|
+
if (value === void 0 || value === null) return;
|
|
8659
|
+
return /* @__PURE__ */ jsxs("span", {
|
|
8660
|
+
...props,
|
|
8661
|
+
children: [
|
|
8662
|
+
children,
|
|
8663
|
+
value && trueLabel,
|
|
8664
|
+
!value && falseLabel
|
|
8665
|
+
]
|
|
8666
|
+
});
|
|
8667
|
+
}
|
|
8668
|
+
//#endregion
|
|
8669
|
+
//#region src/components/table/table-bottom-bar.tsx
|
|
8670
|
+
function TableBottomBar({ sticky = false, className, ref, ...props }) {
|
|
8671
|
+
return /* @__PURE__ */ jsx("div", {
|
|
8672
|
+
className: cn("flex w-full flex-wrap items-center justify-between gap-md", "[:where([data-slot=table-container][data-variant=outline]>&)]:px-md [:where([data-slot=table-container][data-variant=outline]>&:first-child)]:pt-md [:where([data-slot=table-container][data-variant=outline]>&:last-child)]:pb-md", sticky && "sticky bottom-0 z-10 bg-inherit", className),
|
|
8673
|
+
"data-slot": "table-bottom-bar",
|
|
8674
|
+
ref,
|
|
8675
|
+
...props
|
|
8676
|
+
});
|
|
8677
|
+
}
|
|
8678
|
+
//#endregion
|
|
8505
8679
|
//#region src/components/table/table-checkbox-cell.tsx
|
|
8506
8680
|
function TableCheckboxCell({ className, ref, ...props }) {
|
|
8507
8681
|
const cell = useCellContext$2(), table = useTableContext$2(), { row } = cell;
|
|
8508
8682
|
return /* @__PURE__ */ jsx(table.Subscribe, {
|
|
8509
8683
|
selector: (state) => state.rowSelection,
|
|
8510
8684
|
children: () => /* @__PURE__ */ jsx(Checkbox, {
|
|
8685
|
+
variant: "outline",
|
|
8511
8686
|
"aria-label": "Select row",
|
|
8512
8687
|
checked: row.getIsSelected() || row.getCanSelectSubRows() && row.getIsAllSubRowsSelected(),
|
|
8513
8688
|
disabled: !row.getCanSelect(),
|
|
8514
8689
|
indeterminate: row.getIsSomeSelected(),
|
|
8515
8690
|
onCheckedChange: (checked) => row.toggleSelected(checked),
|
|
8516
|
-
className: cn("", className),
|
|
8691
|
+
className: cn("mx-auto flex", className),
|
|
8517
8692
|
ref,
|
|
8518
8693
|
...props
|
|
8519
8694
|
})
|
|
8520
8695
|
});
|
|
8521
8696
|
}
|
|
8522
8697
|
//#endregion
|
|
8698
|
+
//#region src/components/table/table-checkbox-header.tsx
|
|
8699
|
+
function TableCheckboxHeader({ className, ref, ...props }) {
|
|
8700
|
+
const table = useTableContext$2();
|
|
8701
|
+
return /* @__PURE__ */ jsx(table.Subscribe, {
|
|
8702
|
+
selector: (state) => state.rowSelection,
|
|
8703
|
+
children: () => {
|
|
8704
|
+
const allRowsSelected = table.getIsAllRowsSelected();
|
|
8705
|
+
return /* @__PURE__ */ jsx(Checkbox, {
|
|
8706
|
+
"aria-label": "Select all rows",
|
|
8707
|
+
variant: "outline",
|
|
8708
|
+
checked: allRowsSelected,
|
|
8709
|
+
indeterminate: !allRowsSelected && table.getIsSomeRowsSelected(),
|
|
8710
|
+
onCheckedChange: (checked) => table.toggleAllRowsSelected(checked),
|
|
8711
|
+
className: cn("mx-auto flex", className),
|
|
8712
|
+
ref,
|
|
8713
|
+
...props
|
|
8714
|
+
});
|
|
8715
|
+
}
|
|
8716
|
+
});
|
|
8717
|
+
}
|
|
8718
|
+
//#endregion
|
|
8523
8719
|
//#region src/components/table/table-column-toggle.tsx
|
|
8524
8720
|
function TableColumnToggle({ className, ref, ...props }) {
|
|
8525
8721
|
const table = useTableContext$2(), handleToggleColumn = (columnId) => {
|
|
@@ -8540,22 +8736,437 @@ function TableColumnToggle({ className, ref, ...props }) {
|
|
|
8540
8736
|
}
|
|
8541
8737
|
//#endregion
|
|
8542
8738
|
//#region src/components/table/table-container.tsx
|
|
8543
|
-
function TableContainer({ className, ref, ...props }) {
|
|
8739
|
+
function TableContainer({ variant = "outline", className, ref, ...props }) {
|
|
8544
8740
|
return /* @__PURE__ */ jsx("div", {
|
|
8545
|
-
|
|
8741
|
+
"data-slot": "table-container",
|
|
8742
|
+
"data-variant": variant,
|
|
8743
|
+
className: cn(tableContainerVariants({ variant }), className),
|
|
8546
8744
|
ref,
|
|
8547
8745
|
...props
|
|
8548
8746
|
});
|
|
8549
8747
|
}
|
|
8550
8748
|
//#endregion
|
|
8551
|
-
//#region src/components/table/table-
|
|
8552
|
-
function
|
|
8553
|
-
const
|
|
8749
|
+
//#region src/components/table/table-currency-cell.tsx
|
|
8750
|
+
function TableCurrencyCell({ currency, locale, options, children, ...props }) {
|
|
8751
|
+
const value = useCellContext$2().getValue();
|
|
8752
|
+
if (value === void 0 || value === null) return;
|
|
8753
|
+
return /* @__PURE__ */ jsxs("span", {
|
|
8754
|
+
...props,
|
|
8755
|
+
children: [children, new Intl.NumberFormat(locale, {
|
|
8756
|
+
...options,
|
|
8757
|
+
currency,
|
|
8758
|
+
style: "currency"
|
|
8759
|
+
}).format(value)]
|
|
8760
|
+
});
|
|
8761
|
+
}
|
|
8762
|
+
//#endregion
|
|
8763
|
+
//#region node_modules/.pnpm/use-sync-external-store@1.7.0_react@19.3.1/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.js
|
|
8764
|
+
/**
|
|
8765
|
+
* @license React
|
|
8766
|
+
* use-sync-external-store-shim.production.js
|
|
8767
|
+
*
|
|
8768
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
8769
|
+
*
|
|
8770
|
+
* This source code is licensed under the MIT license found in the
|
|
8771
|
+
* LICENSE file in the root directory of this source tree.
|
|
8772
|
+
*/
|
|
8773
|
+
var require_use_sync_external_store_shim_production = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
8774
|
+
var React = __require("react");
|
|
8775
|
+
function is(x, y) {
|
|
8776
|
+
return x === y && (0 !== x || 1 / x === 1 / y) || x !== x && y !== y;
|
|
8777
|
+
}
|
|
8778
|
+
var objectIs = "function" === typeof Object.is ? Object.is : is;
|
|
8779
|
+
var useState = React.useState;
|
|
8780
|
+
var useEffect = React.useEffect;
|
|
8781
|
+
var useLayoutEffect = React.useLayoutEffect;
|
|
8782
|
+
var useDebugValue = React.useDebugValue;
|
|
8783
|
+
function useSyncExternalStore$2(subscribe, getSnapshot) {
|
|
8784
|
+
var value = getSnapshot(), _useState = useState({ inst: {
|
|
8785
|
+
value,
|
|
8786
|
+
getSnapshot
|
|
8787
|
+
} }), inst = _useState[0].inst, forceUpdate = _useState[1];
|
|
8788
|
+
useLayoutEffect(function() {
|
|
8789
|
+
inst.value = value;
|
|
8790
|
+
inst.getSnapshot = getSnapshot;
|
|
8791
|
+
checkIfSnapshotChanged(inst) && forceUpdate({ inst });
|
|
8792
|
+
}, [
|
|
8793
|
+
subscribe,
|
|
8794
|
+
value,
|
|
8795
|
+
getSnapshot
|
|
8796
|
+
]);
|
|
8797
|
+
useEffect(function() {
|
|
8798
|
+
checkIfSnapshotChanged(inst) && forceUpdate({ inst });
|
|
8799
|
+
return subscribe(function() {
|
|
8800
|
+
checkIfSnapshotChanged(inst) && forceUpdate({ inst });
|
|
8801
|
+
});
|
|
8802
|
+
}, [subscribe]);
|
|
8803
|
+
useDebugValue(value);
|
|
8804
|
+
return value;
|
|
8805
|
+
}
|
|
8806
|
+
function checkIfSnapshotChanged(inst) {
|
|
8807
|
+
var latestGetSnapshot = inst.getSnapshot;
|
|
8808
|
+
inst = inst.value;
|
|
8809
|
+
try {
|
|
8810
|
+
var nextValue = latestGetSnapshot();
|
|
8811
|
+
return !objectIs(inst, nextValue);
|
|
8812
|
+
} catch (error) {
|
|
8813
|
+
return !0;
|
|
8814
|
+
}
|
|
8815
|
+
}
|
|
8816
|
+
function useSyncExternalStore$1(subscribe, getSnapshot) {
|
|
8817
|
+
return getSnapshot();
|
|
8818
|
+
}
|
|
8819
|
+
var shim = "undefined" === typeof window || "undefined" === typeof window.document || "undefined" === typeof window.document.createElement ? useSyncExternalStore$1 : useSyncExternalStore$2;
|
|
8820
|
+
exports.useSyncExternalStore = void 0 !== React.useSyncExternalStore ? React.useSyncExternalStore : shim;
|
|
8821
|
+
}));
|
|
8822
|
+
//#endregion
|
|
8823
|
+
//#region node_modules/.pnpm/use-sync-external-store@1.7.0_react@19.3.1/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js
|
|
8824
|
+
/**
|
|
8825
|
+
* @license React
|
|
8826
|
+
* use-sync-external-store-shim.development.js
|
|
8827
|
+
*
|
|
8828
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
8829
|
+
*
|
|
8830
|
+
* This source code is licensed under the MIT license found in the
|
|
8831
|
+
* LICENSE file in the root directory of this source tree.
|
|
8832
|
+
*/
|
|
8833
|
+
var require_use_sync_external_store_shim_development = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
8834
|
+
"production" !== process.env.NODE_ENV && (function() {
|
|
8835
|
+
function is(x, y) {
|
|
8836
|
+
return x === y && (0 !== x || 1 / x === 1 / y) || x !== x && y !== y;
|
|
8837
|
+
}
|
|
8838
|
+
function useSyncExternalStore$2(subscribe, getSnapshot) {
|
|
8839
|
+
didWarnOld18Alpha || void 0 === React.startTransition || (didWarnOld18Alpha = !0, console.error("You are using an outdated, pre-release alpha of React 18 that does not support useSyncExternalStore. The use-sync-external-store shim will not work correctly. Upgrade to a newer pre-release."));
|
|
8840
|
+
var value = getSnapshot();
|
|
8841
|
+
if (!didWarnUncachedGetSnapshot) {
|
|
8842
|
+
var cachedValue = getSnapshot();
|
|
8843
|
+
objectIs(value, cachedValue) || (console.error("The result of getSnapshot should be cached to avoid an infinite loop"), didWarnUncachedGetSnapshot = !0);
|
|
8844
|
+
}
|
|
8845
|
+
cachedValue = useState({ inst: {
|
|
8846
|
+
value,
|
|
8847
|
+
getSnapshot
|
|
8848
|
+
} });
|
|
8849
|
+
var inst = cachedValue[0].inst, forceUpdate = cachedValue[1];
|
|
8850
|
+
useLayoutEffect(function() {
|
|
8851
|
+
inst.value = value;
|
|
8852
|
+
inst.getSnapshot = getSnapshot;
|
|
8853
|
+
checkIfSnapshotChanged(inst) && forceUpdate({ inst });
|
|
8854
|
+
}, [
|
|
8855
|
+
subscribe,
|
|
8856
|
+
value,
|
|
8857
|
+
getSnapshot
|
|
8858
|
+
]);
|
|
8859
|
+
useEffect(function() {
|
|
8860
|
+
checkIfSnapshotChanged(inst) && forceUpdate({ inst });
|
|
8861
|
+
return subscribe(function() {
|
|
8862
|
+
checkIfSnapshotChanged(inst) && forceUpdate({ inst });
|
|
8863
|
+
});
|
|
8864
|
+
}, [subscribe]);
|
|
8865
|
+
useDebugValue(value);
|
|
8866
|
+
return value;
|
|
8867
|
+
}
|
|
8868
|
+
function checkIfSnapshotChanged(inst) {
|
|
8869
|
+
var latestGetSnapshot = inst.getSnapshot;
|
|
8870
|
+
inst = inst.value;
|
|
8871
|
+
try {
|
|
8872
|
+
var nextValue = latestGetSnapshot();
|
|
8873
|
+
return !objectIs(inst, nextValue);
|
|
8874
|
+
} catch (error) {
|
|
8875
|
+
return !0;
|
|
8876
|
+
}
|
|
8877
|
+
}
|
|
8878
|
+
function useSyncExternalStore$1(subscribe, getSnapshot) {
|
|
8879
|
+
return getSnapshot();
|
|
8880
|
+
}
|
|
8881
|
+
"undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ && "function" === typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());
|
|
8882
|
+
var React = __require("react"), objectIs = "function" === typeof Object.is ? Object.is : is, useState = React.useState, useEffect = React.useEffect, useLayoutEffect = React.useLayoutEffect, useDebugValue = React.useDebugValue, didWarnOld18Alpha = !1, didWarnUncachedGetSnapshot = !1, shim = "undefined" === typeof window || "undefined" === typeof window.document || "undefined" === typeof window.document.createElement ? useSyncExternalStore$1 : useSyncExternalStore$2;
|
|
8883
|
+
exports.useSyncExternalStore = void 0 !== React.useSyncExternalStore ? React.useSyncExternalStore : shim;
|
|
8884
|
+
"undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ && "function" === typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error());
|
|
8885
|
+
})();
|
|
8886
|
+
}));
|
|
8887
|
+
//#endregion
|
|
8888
|
+
//#region node_modules/.pnpm/use-sync-external-store@1.7.0_react@19.3.1/node_modules/use-sync-external-store/shim/index.js
|
|
8889
|
+
var require_shim = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
8890
|
+
if (process.env.NODE_ENV === "production") module.exports = require_use_sync_external_store_shim_production();
|
|
8891
|
+
else module.exports = require_use_sync_external_store_shim_development();
|
|
8892
|
+
}));
|
|
8893
|
+
//#endregion
|
|
8894
|
+
//#region node_modules/.pnpm/use-sync-external-store@1.7.0_react@19.3.1/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.js
|
|
8895
|
+
/**
|
|
8896
|
+
* @license React
|
|
8897
|
+
* use-sync-external-store-shim/with-selector.production.js
|
|
8898
|
+
*
|
|
8899
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
8900
|
+
*
|
|
8901
|
+
* This source code is licensed under the MIT license found in the
|
|
8902
|
+
* LICENSE file in the root directory of this source tree.
|
|
8903
|
+
*/
|
|
8904
|
+
var require_with_selector_production = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
8905
|
+
var React = __require("react");
|
|
8906
|
+
var shim = require_shim();
|
|
8907
|
+
function is(x, y) {
|
|
8908
|
+
return x === y && (0 !== x || 1 / x === 1 / y) || x !== x && y !== y;
|
|
8909
|
+
}
|
|
8910
|
+
var objectIs = "function" === typeof Object.is ? Object.is : is;
|
|
8911
|
+
var useSyncExternalStore = shim.useSyncExternalStore;
|
|
8912
|
+
var useRef = React.useRef;
|
|
8913
|
+
var useEffect = React.useEffect;
|
|
8914
|
+
var useMemo = React.useMemo;
|
|
8915
|
+
var useDebugValue = React.useDebugValue;
|
|
8916
|
+
exports.useSyncExternalStoreWithSelector = function(subscribe, getSnapshot, getServerSnapshot, selector, isEqual) {
|
|
8917
|
+
var instRef = useRef(null);
|
|
8918
|
+
if (null === instRef.current) {
|
|
8919
|
+
var inst = {
|
|
8920
|
+
hasValue: !1,
|
|
8921
|
+
value: null
|
|
8922
|
+
};
|
|
8923
|
+
instRef.current = inst;
|
|
8924
|
+
} else inst = instRef.current;
|
|
8925
|
+
instRef = useMemo(function() {
|
|
8926
|
+
function memoizedSelector(nextSnapshot) {
|
|
8927
|
+
if (!hasMemo) {
|
|
8928
|
+
hasMemo = !0;
|
|
8929
|
+
memoizedSnapshot = nextSnapshot;
|
|
8930
|
+
nextSnapshot = selector(nextSnapshot);
|
|
8931
|
+
if (void 0 !== isEqual && inst.hasValue) {
|
|
8932
|
+
var currentSelection = inst.value;
|
|
8933
|
+
if (isEqual(currentSelection, nextSnapshot)) return memoizedSelection = currentSelection;
|
|
8934
|
+
}
|
|
8935
|
+
return memoizedSelection = nextSnapshot;
|
|
8936
|
+
}
|
|
8937
|
+
currentSelection = memoizedSelection;
|
|
8938
|
+
if (objectIs(memoizedSnapshot, nextSnapshot)) return currentSelection;
|
|
8939
|
+
var nextSelection = selector(nextSnapshot);
|
|
8940
|
+
if (void 0 !== isEqual && isEqual(currentSelection, nextSelection)) return memoizedSnapshot = nextSnapshot, currentSelection;
|
|
8941
|
+
memoizedSnapshot = nextSnapshot;
|
|
8942
|
+
return memoizedSelection = nextSelection;
|
|
8943
|
+
}
|
|
8944
|
+
var hasMemo = !1, memoizedSnapshot, memoizedSelection, maybeGetServerSnapshot = void 0 === getServerSnapshot ? null : getServerSnapshot;
|
|
8945
|
+
return [function() {
|
|
8946
|
+
return memoizedSelector(getSnapshot());
|
|
8947
|
+
}, null === maybeGetServerSnapshot ? void 0 : function() {
|
|
8948
|
+
return memoizedSelector(maybeGetServerSnapshot());
|
|
8949
|
+
}];
|
|
8950
|
+
}, [
|
|
8951
|
+
getSnapshot,
|
|
8952
|
+
getServerSnapshot,
|
|
8953
|
+
selector,
|
|
8954
|
+
isEqual
|
|
8955
|
+
]);
|
|
8956
|
+
var value = useSyncExternalStore(subscribe, instRef[0], instRef[1]);
|
|
8957
|
+
useEffect(function() {
|
|
8958
|
+
inst.hasValue = !0;
|
|
8959
|
+
inst.value = value;
|
|
8960
|
+
}, [value]);
|
|
8961
|
+
useDebugValue(value);
|
|
8962
|
+
return value;
|
|
8963
|
+
};
|
|
8964
|
+
}));
|
|
8965
|
+
//#endregion
|
|
8966
|
+
//#region node_modules/.pnpm/use-sync-external-store@1.7.0_react@19.3.1/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.js
|
|
8967
|
+
/**
|
|
8968
|
+
* @license React
|
|
8969
|
+
* use-sync-external-store-shim/with-selector.development.js
|
|
8970
|
+
*
|
|
8971
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
8972
|
+
*
|
|
8973
|
+
* This source code is licensed under the MIT license found in the
|
|
8974
|
+
* LICENSE file in the root directory of this source tree.
|
|
8975
|
+
*/
|
|
8976
|
+
var require_with_selector_development = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
8977
|
+
"production" !== process.env.NODE_ENV && (function() {
|
|
8978
|
+
function is(x, y) {
|
|
8979
|
+
return x === y && (0 !== x || 1 / x === 1 / y) || x !== x && y !== y;
|
|
8980
|
+
}
|
|
8981
|
+
"undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ && "function" === typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());
|
|
8982
|
+
var React = __require("react"), shim = require_shim(), objectIs = "function" === typeof Object.is ? Object.is : is, useSyncExternalStore = shim.useSyncExternalStore, useRef = React.useRef, useEffect = React.useEffect, useMemo = React.useMemo, useDebugValue = React.useDebugValue;
|
|
8983
|
+
exports.useSyncExternalStoreWithSelector = function(subscribe, getSnapshot, getServerSnapshot, selector, isEqual) {
|
|
8984
|
+
var instRef = useRef(null);
|
|
8985
|
+
if (null === instRef.current) {
|
|
8986
|
+
var inst = {
|
|
8987
|
+
hasValue: !1,
|
|
8988
|
+
value: null
|
|
8989
|
+
};
|
|
8990
|
+
instRef.current = inst;
|
|
8991
|
+
} else inst = instRef.current;
|
|
8992
|
+
instRef = useMemo(function() {
|
|
8993
|
+
function memoizedSelector(nextSnapshot) {
|
|
8994
|
+
if (!hasMemo) {
|
|
8995
|
+
hasMemo = !0;
|
|
8996
|
+
memoizedSnapshot = nextSnapshot;
|
|
8997
|
+
nextSnapshot = selector(nextSnapshot);
|
|
8998
|
+
if (void 0 !== isEqual && inst.hasValue) {
|
|
8999
|
+
var currentSelection = inst.value;
|
|
9000
|
+
if (isEqual(currentSelection, nextSnapshot)) return memoizedSelection = currentSelection;
|
|
9001
|
+
}
|
|
9002
|
+
return memoizedSelection = nextSnapshot;
|
|
9003
|
+
}
|
|
9004
|
+
currentSelection = memoizedSelection;
|
|
9005
|
+
if (objectIs(memoizedSnapshot, nextSnapshot)) return currentSelection;
|
|
9006
|
+
var nextSelection = selector(nextSnapshot);
|
|
9007
|
+
if (void 0 !== isEqual && isEqual(currentSelection, nextSelection)) return memoizedSnapshot = nextSnapshot, currentSelection;
|
|
9008
|
+
memoizedSnapshot = nextSnapshot;
|
|
9009
|
+
return memoizedSelection = nextSelection;
|
|
9010
|
+
}
|
|
9011
|
+
var hasMemo = !1, memoizedSnapshot, memoizedSelection, maybeGetServerSnapshot = void 0 === getServerSnapshot ? null : getServerSnapshot;
|
|
9012
|
+
return [function() {
|
|
9013
|
+
return memoizedSelector(getSnapshot());
|
|
9014
|
+
}, null === maybeGetServerSnapshot ? void 0 : function() {
|
|
9015
|
+
return memoizedSelector(maybeGetServerSnapshot());
|
|
9016
|
+
}];
|
|
9017
|
+
}, [
|
|
9018
|
+
getSnapshot,
|
|
9019
|
+
getServerSnapshot,
|
|
9020
|
+
selector,
|
|
9021
|
+
isEqual
|
|
9022
|
+
]);
|
|
9023
|
+
var value = useSyncExternalStore(subscribe, instRef[0], instRef[1]);
|
|
9024
|
+
useEffect(function() {
|
|
9025
|
+
inst.hasValue = !0;
|
|
9026
|
+
inst.value = value;
|
|
9027
|
+
}, [value]);
|
|
9028
|
+
useDebugValue(value);
|
|
9029
|
+
return value;
|
|
9030
|
+
};
|
|
9031
|
+
"undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ && "function" === typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error());
|
|
9032
|
+
})();
|
|
9033
|
+
}));
|
|
9034
|
+
//#endregion
|
|
9035
|
+
//#region node_modules/.pnpm/@tanstack+react-store@0.11.2_react-dom@19.3.1_react@19.3.1__react@19.3.1/node_modules/@tanstack/react-store/dist/useSelector.js
|
|
9036
|
+
var import_with_selector = (/* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
9037
|
+
if (process.env.NODE_ENV === "production") module.exports = require_with_selector_production();
|
|
9038
|
+
else module.exports = require_with_selector_development();
|
|
9039
|
+
})))();
|
|
9040
|
+
function defaultCompare(a, b) {
|
|
9041
|
+
return a === b;
|
|
9042
|
+
}
|
|
9043
|
+
/**
|
|
9044
|
+
* Selects a slice of state from an atom or store and subscribes the component
|
|
9045
|
+
* to that selection.
|
|
9046
|
+
*
|
|
9047
|
+
* This is the primary React read hook for TanStack Store. It works with any
|
|
9048
|
+
* source that exposes `get()` and `subscribe()`, including atoms, readonly
|
|
9049
|
+
* atoms, stores, and readonly stores.
|
|
9050
|
+
*
|
|
9051
|
+
* Omit the selector to subscribe to the whole value.
|
|
9052
|
+
*
|
|
9053
|
+
* @example
|
|
9054
|
+
* ```tsx
|
|
9055
|
+
* const count = useSelector(counterStore, (state) => state.count)
|
|
9056
|
+
* ```
|
|
9057
|
+
*
|
|
9058
|
+
* @example
|
|
9059
|
+
* ```tsx
|
|
9060
|
+
* const value = useSelector(countAtom)
|
|
9061
|
+
* ```
|
|
9062
|
+
*/
|
|
9063
|
+
function useSelector(source, selector = (s) => s, options) {
|
|
9064
|
+
const compare = options?.compare ?? defaultCompare;
|
|
9065
|
+
const subscribe = useCallback((handleStoreChange) => {
|
|
9066
|
+
const { unsubscribe } = source.subscribe(handleStoreChange);
|
|
9067
|
+
return unsubscribe;
|
|
9068
|
+
}, [source]);
|
|
9069
|
+
const getSnapshot = useCallback(() => source.get(), [source]);
|
|
9070
|
+
return (0, import_with_selector.useSyncExternalStoreWithSelector)(subscribe, getSnapshot, getSnapshot, selector, compare);
|
|
9071
|
+
}
|
|
9072
|
+
//#endregion
|
|
9073
|
+
//#region src/components/table/table-dataset-tab.tsx
|
|
9074
|
+
function TableDatasetTab({ className, children, ref, ...props }) {
|
|
9075
|
+
const table = useTableContext$2(), datasets = useSelector(table.atoms.datasets), currentDataset = useSelector(table.atoms.currentDataset), handleTabChange = (datasetId) => {
|
|
9076
|
+
const dataset = datasets.find((candidate) => candidate.id === datasetId);
|
|
9077
|
+
if (!dataset) return;
|
|
9078
|
+
table.setCurrentDataset(dataset);
|
|
9079
|
+
};
|
|
9080
|
+
return /* @__PURE__ */ jsxs(Tabs$2, {
|
|
9081
|
+
value: currentDataset.id,
|
|
9082
|
+
onValueChange: handleTabChange,
|
|
9083
|
+
className: cn("[[data-slot=table-container]>&]:-mb-md", className),
|
|
9084
|
+
ref,
|
|
9085
|
+
...props,
|
|
9086
|
+
"data-slot": "table-dataset-tab",
|
|
9087
|
+
children: [children, /* @__PURE__ */ jsx(TabsList, { children: datasets.map((dataset) => /* @__PURE__ */ jsx(TabsTab, {
|
|
9088
|
+
value: dataset.id,
|
|
9089
|
+
children: dataset.name
|
|
9090
|
+
}, dataset.id)) })]
|
|
9091
|
+
});
|
|
9092
|
+
}
|
|
9093
|
+
//#endregion
|
|
9094
|
+
//#region src/components/table/table-date-time-cell.tsx
|
|
9095
|
+
function TableDateTimeCell({ locale, options, className, children, ref, ...props }) {
|
|
9096
|
+
const date = useCellContext$2().getValue();
|
|
9097
|
+
if (!date) return;
|
|
9098
|
+
if (Number.isNaN(date.getTime())) return "Invalid date";
|
|
8554
9099
|
return /* @__PURE__ */ jsxs("span", {
|
|
8555
9100
|
className: cn("", className),
|
|
8556
9101
|
ref,
|
|
8557
9102
|
...props,
|
|
8558
|
-
children: [children,
|
|
9103
|
+
children: [children, formatDate(date, locale, options)]
|
|
9104
|
+
});
|
|
9105
|
+
}
|
|
9106
|
+
//#endregion
|
|
9107
|
+
//#region src/components/table/table-empty.tsx
|
|
9108
|
+
const EMPTY_LIMIT = 0;
|
|
9109
|
+
function TableEmpty({ className, children, ref, ...props }) {
|
|
9110
|
+
const table = useTableContext$2();
|
|
9111
|
+
return /* @__PURE__ */ jsx(table.Subscribe, {
|
|
9112
|
+
selector: (state) => state.globalFilter,
|
|
9113
|
+
children: () => table.getFilteredRowModel().rows.length <= EMPTY_LIMIT && /* @__PURE__ */ jsx("div", {
|
|
9114
|
+
"data-slot": "table-empty",
|
|
9115
|
+
className: cn("flex w-full min-w-0 flex-col items-center justify-center gap-md px-md py-3xl text-center", className),
|
|
9116
|
+
ref,
|
|
9117
|
+
...props,
|
|
9118
|
+
children
|
|
9119
|
+
})
|
|
9120
|
+
});
|
|
9121
|
+
}
|
|
9122
|
+
//#endregion
|
|
9123
|
+
//#region src/components/table/table-empty-content.tsx
|
|
9124
|
+
function TableEmptyContent({ className, children, ref, ...props }) {
|
|
9125
|
+
return /* @__PURE__ */ jsx("div", {
|
|
9126
|
+
className: cn("flex w-full max-w-[28rem] min-w-0 flex-col items-center gap-2xs", className),
|
|
9127
|
+
ref,
|
|
9128
|
+
...props,
|
|
9129
|
+
children
|
|
9130
|
+
});
|
|
9131
|
+
}
|
|
9132
|
+
//#endregion
|
|
9133
|
+
//#region src/components/table/table-empty-description.tsx
|
|
9134
|
+
function TableEmptyDescription({ className, children, ref, ...props }) {
|
|
9135
|
+
return /* @__PURE__ */ jsx("span", {
|
|
9136
|
+
className: cn("block max-w-[28rem] style-text-default--1 text-pretty wrap-break-word text-on-surface-variant", className),
|
|
9137
|
+
ref,
|
|
9138
|
+
...props,
|
|
9139
|
+
children
|
|
9140
|
+
});
|
|
9141
|
+
}
|
|
9142
|
+
//#endregion
|
|
9143
|
+
//#region src/components/table/table-empty-footer.tsx
|
|
9144
|
+
function TableEmptyFooter({ className, children, ref, ...props }) {
|
|
9145
|
+
return /* @__PURE__ */ jsx("div", {
|
|
9146
|
+
className: cn("flex w-full flex-wrap items-center justify-center gap-xs", className),
|
|
9147
|
+
ref,
|
|
9148
|
+
...props,
|
|
9149
|
+
children
|
|
9150
|
+
});
|
|
9151
|
+
}
|
|
9152
|
+
//#endregion
|
|
9153
|
+
//#region src/components/table/table-empty-header.tsx
|
|
9154
|
+
function TableEmptyHeader({ className, children, ref, ...props }) {
|
|
9155
|
+
return /* @__PURE__ */ jsx("div", {
|
|
9156
|
+
className: cn("flex w-full max-w-[28rem] flex-col items-center gap-sm", className),
|
|
9157
|
+
ref,
|
|
9158
|
+
...props,
|
|
9159
|
+
children
|
|
9160
|
+
});
|
|
9161
|
+
}
|
|
9162
|
+
//#endregion
|
|
9163
|
+
//#region src/components/table/table-empty-title.tsx
|
|
9164
|
+
function TableEmptyTitle({ className, children, ref, ...props }) {
|
|
9165
|
+
return /* @__PURE__ */ jsx("span", {
|
|
9166
|
+
className: cn("block style-text-strong-1 text-balance text-on-surface", className),
|
|
9167
|
+
ref,
|
|
9168
|
+
...props,
|
|
9169
|
+
children
|
|
8559
9170
|
});
|
|
8560
9171
|
}
|
|
8561
9172
|
//#endregion
|
|
@@ -8595,28 +9206,28 @@ function TableDateFilterForm({ column, className, children, ref, ...props }) {
|
|
|
8595
9206
|
...props,
|
|
8596
9207
|
children: /* @__PURE__ */ jsxs(form.AppForm, { children: [
|
|
8597
9208
|
children,
|
|
8598
|
-
/* @__PURE__ */ jsx(form.
|
|
8599
|
-
/* @__PURE__ */ jsx(form.
|
|
9209
|
+
/* @__PURE__ */ jsx(form.Errors, {}),
|
|
9210
|
+
/* @__PURE__ */ jsx(form.Set, { children: /* @__PURE__ */ jsx(form.SetHeading, { children: /* @__PURE__ */ jsx(form.SetContent, { children: /* @__PURE__ */ jsx(Field, { children: /* @__PURE__ */ jsx(form.AppField, {
|
|
8600
9211
|
name: "filterOperator",
|
|
8601
|
-
children: (field) => /* @__PURE__ */ jsxs(Field, { children: [/* @__PURE__ */ jsx(field.
|
|
9212
|
+
children: (field) => /* @__PURE__ */ jsxs(Field, { children: [/* @__PURE__ */ jsx(field.Errors, {}), /* @__PURE__ */ jsx(field.RadioGroup, { children: dateFilterOperators.map((operator) => /* @__PURE__ */ jsxs(field.Set, { children: [/* @__PURE__ */ jsx(Radio, {
|
|
8602
9213
|
value: operator,
|
|
8603
9214
|
variant: "inSurface",
|
|
8604
9215
|
children: filterOperatorLabels?.[operator] ?? defaultFilterOperatorLabels[operator]
|
|
8605
9216
|
}), field.state.value === operator && /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx(form.AppField, {
|
|
8606
9217
|
name: "filterValueFrom",
|
|
8607
|
-
children: (valueField) => /* @__PURE__ */ jsxs(Field, { children: [/* @__PURE__ */ jsx(valueField.
|
|
9218
|
+
children: (valueField) => /* @__PURE__ */ jsxs(Field, { children: [/* @__PURE__ */ jsx(valueField.Errors, {}), /* @__PURE__ */ jsx(valueField.Input, {
|
|
8608
9219
|
type: "date",
|
|
8609
9220
|
variant: "secondary"
|
|
8610
9221
|
})] })
|
|
8611
9222
|
}), operator === "between" && /* @__PURE__ */ jsx(form.AppField, {
|
|
8612
9223
|
name: "filterValueTo",
|
|
8613
|
-
children: (valueField) => /* @__PURE__ */ jsxs(Field, { children: [/* @__PURE__ */ jsx(valueField.
|
|
9224
|
+
children: (valueField) => /* @__PURE__ */ jsxs(Field, { children: [/* @__PURE__ */ jsx(valueField.Errors, {}), /* @__PURE__ */ jsx(valueField.Input, {
|
|
8614
9225
|
type: "date",
|
|
8615
9226
|
variant: "secondary"
|
|
8616
9227
|
})] })
|
|
8617
9228
|
})] })] }, operator)) })] })
|
|
8618
9229
|
}) }) }) }) }),
|
|
8619
|
-
/* @__PURE__ */ jsxs(form.
|
|
9230
|
+
/* @__PURE__ */ jsxs(form.Footer, { children: [/* @__PURE__ */ jsx(form.Reset, { children: buttonLabels.reset }), /* @__PURE__ */ jsx(form.Submit, { children: buttonLabels.apply })] })
|
|
8620
9231
|
] })
|
|
8621
9232
|
});
|
|
8622
9233
|
}
|
|
@@ -8694,30 +9305,30 @@ function TableNumberFilterForm({ column, className, children, ref, ...props }) {
|
|
|
8694
9305
|
...props,
|
|
8695
9306
|
children: /* @__PURE__ */ jsxs(form.AppForm, { children: [
|
|
8696
9307
|
children,
|
|
8697
|
-
/* @__PURE__ */ jsx(form.
|
|
8698
|
-
/* @__PURE__ */ jsx(form.
|
|
9308
|
+
/* @__PURE__ */ jsx(form.Errors, {}),
|
|
9309
|
+
/* @__PURE__ */ jsx(form.Set, { children: /* @__PURE__ */ jsx(form.SetContent, { children: /* @__PURE__ */ jsx(form.AppField, {
|
|
8699
9310
|
name: "filterOperator",
|
|
8700
|
-
children: (field) => /* @__PURE__ */ jsxs(Field, { children: [/* @__PURE__ */ jsx(field.
|
|
9311
|
+
children: (field) => /* @__PURE__ */ jsxs(Field, { children: [/* @__PURE__ */ jsx(field.Errors, {}), /* @__PURE__ */ jsx(field.RadioGroup, { children: numberFilterOperators.map((operator) => /* @__PURE__ */ jsxs(field.Set, { children: [/* @__PURE__ */ jsx(Radio, {
|
|
8701
9312
|
value: operator,
|
|
8702
9313
|
variant: "inSurface",
|
|
8703
9314
|
children: filterOperatorLabels?.[operator] ?? defaultFilterOperatorLabels[operator]
|
|
8704
9315
|
}), field.state.value === operator && /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx(form.AppField, {
|
|
8705
9316
|
name: "filterValueFrom",
|
|
8706
|
-
children: (valueField) => /* @__PURE__ */ jsxs(Field, { children: [/* @__PURE__ */ jsx(valueField.
|
|
9317
|
+
children: (valueField) => /* @__PURE__ */ jsxs(Field, { children: [/* @__PURE__ */ jsx(valueField.Errors, {}), /* @__PURE__ */ jsx(valueField.Input, {
|
|
8707
9318
|
"aria-label": `${column.id} filter value`,
|
|
8708
9319
|
type: "number",
|
|
8709
9320
|
variant: "secondary"
|
|
8710
9321
|
})] })
|
|
8711
9322
|
}), operator === "between" && /* @__PURE__ */ jsx(form.AppField, {
|
|
8712
9323
|
name: "filterValueTo",
|
|
8713
|
-
children: (valueField) => /* @__PURE__ */ jsxs(Field, { children: [/* @__PURE__ */ jsx(valueField.
|
|
9324
|
+
children: (valueField) => /* @__PURE__ */ jsxs(Field, { children: [/* @__PURE__ */ jsx(valueField.Errors, {}), /* @__PURE__ */ jsx(valueField.Input, {
|
|
8714
9325
|
"aria-label": `${column.id} maximum filter value`,
|
|
8715
9326
|
type: "number",
|
|
8716
9327
|
variant: "secondary"
|
|
8717
9328
|
})] })
|
|
8718
9329
|
})] })] }, operator)) })] })
|
|
8719
9330
|
}) }) }),
|
|
8720
|
-
/* @__PURE__ */ jsxs(form.
|
|
9331
|
+
/* @__PURE__ */ jsxs(form.Footer, { children: [/* @__PURE__ */ jsx(form.Reset, { children: buttonLabels.reset }), /* @__PURE__ */ jsx(form.Submit, { children: buttonLabels.apply })] })
|
|
8721
9332
|
] })
|
|
8722
9333
|
});
|
|
8723
9334
|
}
|
|
@@ -8829,7 +9440,6 @@ function TableSelectFilterChip({ column, className, children, ref, ...props }) {
|
|
|
8829
9440
|
ref,
|
|
8830
9441
|
...props,
|
|
8831
9442
|
children: /* @__PURE__ */ jsxs(Button, {
|
|
8832
|
-
tone: "neutral",
|
|
8833
9443
|
size: "extraSmall",
|
|
8834
9444
|
variant: "soft",
|
|
8835
9445
|
children: [
|
|
@@ -8881,22 +9491,22 @@ function TableStringFilterForm({ column, className, children, ref, ...props }) {
|
|
|
8881
9491
|
...props,
|
|
8882
9492
|
children: /* @__PURE__ */ jsxs(form.AppForm, { children: [
|
|
8883
9493
|
children,
|
|
8884
|
-
/* @__PURE__ */ jsx(form.
|
|
8885
|
-
/* @__PURE__ */ jsx(form.
|
|
9494
|
+
/* @__PURE__ */ jsx(form.Errors, {}),
|
|
9495
|
+
/* @__PURE__ */ jsx(form.Set, { children: /* @__PURE__ */ jsx(form.SetContent, { children: /* @__PURE__ */ jsx(form.AppField, {
|
|
8886
9496
|
name: "filterOperator",
|
|
8887
|
-
children: (field) => /* @__PURE__ */ jsxs(Field, { children: [/* @__PURE__ */ jsx(field.
|
|
9497
|
+
children: (field) => /* @__PURE__ */ jsxs(Field, { children: [/* @__PURE__ */ jsx(field.Errors, {}), /* @__PURE__ */ jsx(field.RadioGroup, { children: stringFilterOperators.map((operator) => /* @__PURE__ */ jsxs(field.Set, { children: [/* @__PURE__ */ jsx(Radio, {
|
|
8888
9498
|
value: operator,
|
|
8889
9499
|
variant: "inSurface",
|
|
8890
9500
|
children: filterOperatorLabels?.[operator] ?? defaultFilterOperatorLabels[operator]
|
|
8891
9501
|
}), field.state.value === operator && /* @__PURE__ */ jsx(form.AppField, {
|
|
8892
9502
|
name: "filterValue",
|
|
8893
|
-
children: (valueField) => /* @__PURE__ */ jsxs(Field, { children: [/* @__PURE__ */ jsx(valueField.
|
|
9503
|
+
children: (valueField) => /* @__PURE__ */ jsxs(Field, { children: [/* @__PURE__ */ jsx(valueField.Errors, {}), /* @__PURE__ */ jsx(valueField.Input, {
|
|
8894
9504
|
"aria-label": `${column.id} filter value`,
|
|
8895
9505
|
variant: "secondary"
|
|
8896
9506
|
})] })
|
|
8897
9507
|
})] }, operator)) })] })
|
|
8898
9508
|
}) }) }),
|
|
8899
|
-
/* @__PURE__ */ jsxs(form.
|
|
9509
|
+
/* @__PURE__ */ jsxs(form.Footer, { children: [/* @__PURE__ */ jsx(form.Reset, { children: buttonLabels.reset }), /* @__PURE__ */ jsx(form.Submit, { children: buttonLabels.apply })] })
|
|
8900
9510
|
] })
|
|
8901
9511
|
});
|
|
8902
9512
|
}
|
|
@@ -8967,7 +9577,7 @@ function TableFilterMenu({ className, ref, ...props }) {
|
|
|
8967
9577
|
children: table.getAllColumns().filter((column) => column.getCanFilter()).map((column) => {
|
|
8968
9578
|
const { filterVariant } = column.columnDef.meta ?? {};
|
|
8969
9579
|
return /* @__PURE__ */ jsxs(Popover, { children: [/* @__PURE__ */ jsx(PopoverTrigger, {
|
|
8970
|
-
nativeButton:
|
|
9580
|
+
nativeButton: true,
|
|
8971
9581
|
children: /* @__PURE__ */ jsx(MenuItem, {
|
|
8972
9582
|
closeOnClick: false,
|
|
8973
9583
|
children: getColumnHeaderLabel(column)
|
|
@@ -9004,8 +9614,9 @@ function TableFirstPage({ className, children, ref, ...props }) {
|
|
|
9004
9614
|
disabled: !table.getCanPreviousPage(),
|
|
9005
9615
|
onClick: handleClick,
|
|
9006
9616
|
ref,
|
|
9007
|
-
variant: "
|
|
9617
|
+
variant: "outline",
|
|
9008
9618
|
tone: "neutral",
|
|
9619
|
+
size: "iconMedium",
|
|
9009
9620
|
...props,
|
|
9010
9621
|
children: [children, /* @__PURE__ */ jsx(CaretLineLeftIcon, { weight: "bold" })]
|
|
9011
9622
|
});
|
|
@@ -9015,13 +9626,14 @@ function TableFirstPage({ className, children, ref, ...props }) {
|
|
|
9015
9626
|
function TableFooter({ className, children, ref, ...props }) {
|
|
9016
9627
|
const table = useTableContext$2();
|
|
9017
9628
|
return /* @__PURE__ */ jsxs("tfoot", {
|
|
9018
|
-
className: cn("", className),
|
|
9629
|
+
className: cn("border-t border-border bg-neutral-container-low", className),
|
|
9019
9630
|
ref,
|
|
9020
9631
|
...props,
|
|
9021
9632
|
children: [children, table.getFooterGroups().map((footerGroup) => /* @__PURE__ */ jsx("tr", { children: footerGroup.headers.map((header) => /* @__PURE__ */ jsx(table.AppFooter, {
|
|
9022
9633
|
header,
|
|
9023
9634
|
children: (footer) => /* @__PURE__ */ jsx("td", {
|
|
9024
9635
|
style: { width: footer.getSize() },
|
|
9636
|
+
className: "p-xs",
|
|
9025
9637
|
colSpan: footer.colSpan,
|
|
9026
9638
|
children: /* @__PURE__ */ jsx(table.FlexRender, { footer })
|
|
9027
9639
|
})
|
|
@@ -9037,7 +9649,7 @@ function TableHeader({ className, children, ref, ...props }) {
|
|
|
9037
9649
|
children: (state) => {
|
|
9038
9650
|
if (state.viewMode === "grid") return;
|
|
9039
9651
|
return /* @__PURE__ */ jsxs("thead", {
|
|
9040
|
-
className: cn("bg-neutral-container"),
|
|
9652
|
+
className: cn("border-border bg-neutral-container-low group-data-[variant=outline]/table:border-b", className),
|
|
9041
9653
|
ref,
|
|
9042
9654
|
...props,
|
|
9043
9655
|
children: [children, table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ jsx("tr", { children: headerGroup.headers.map((header) => /* @__PURE__ */ jsx(table.AppHeader, {
|
|
@@ -9047,11 +9659,11 @@ function TableHeader({ className, children, ref, ...props }) {
|
|
|
9047
9659
|
const sorting = renderHeader.column.getIsSorted();
|
|
9048
9660
|
return /* @__PURE__ */ jsx("th", {
|
|
9049
9661
|
style: { width: renderHeader.getSize() },
|
|
9050
|
-
className: cn("container p-xs text-left style-text-default-0 text-neutral-on-container-muted transition-colors first:rounded-l-xl last:rounded-r-xl", renderHeader.column.getCanSort() && "hover:cursor-pointer hover:bg-neutral-container
|
|
9662
|
+
className: cn("container p-xs text-left style-text-default-0 text-neutral-on-container-muted transition-colors group-data-[variant=ghost]/table:first:rounded-l-xl group-data-[variant=ghost]/table:last:rounded-r-xl", renderHeader.column.getCanSort() && "hover:cursor-pointer hover:bg-neutral-container hover:*:text-neutral-on-container", renderHeader.isPlaceholder && "cursor-default", renderHeader.column.getIsSorted() && "text-brand-on-container!", className),
|
|
9051
9663
|
colSpan: renderHeader.colSpan,
|
|
9052
9664
|
onClick: renderHeader.column.getToggleSortingHandler(),
|
|
9053
9665
|
children: !renderHeader.isPlaceholder && /* @__PURE__ */ jsxs("div", {
|
|
9054
|
-
className: cn("flex items-center
|
|
9666
|
+
className: cn("flex items-center gap-2xs whitespace-nowrap has-[[role=checkbox]]:justify-center [&_svg]:size-sm", renderHeader.column.getCanSort() && "select-none hover:cursor-pointer"),
|
|
9055
9667
|
children: [
|
|
9056
9668
|
/* @__PURE__ */ jsx("div", {
|
|
9057
9669
|
className: "flex items-center gap-2xs",
|
|
@@ -9094,22 +9706,37 @@ function TableLastPage({ className, children, ref, ...props }) {
|
|
|
9094
9706
|
disabled: !table.getCanNextPage(),
|
|
9095
9707
|
onClick: handleClick,
|
|
9096
9708
|
ref,
|
|
9097
|
-
variant: "
|
|
9709
|
+
variant: "outline",
|
|
9098
9710
|
tone: "neutral",
|
|
9711
|
+
size: "iconMedium",
|
|
9099
9712
|
...props,
|
|
9100
9713
|
children: [children, /* @__PURE__ */ jsx(CaretLineRightIcon, { weight: "bold" })]
|
|
9101
9714
|
});
|
|
9102
9715
|
}
|
|
9103
9716
|
//#endregion
|
|
9104
|
-
//#region src/components/table/table-
|
|
9105
|
-
function
|
|
9717
|
+
//#region src/components/table/table-layout.tsx
|
|
9718
|
+
function TableLayout({ className, ref, ...props }) {
|
|
9106
9719
|
return /* @__PURE__ */ jsx("div", {
|
|
9107
|
-
|
|
9720
|
+
"data-slot": "table-layout",
|
|
9721
|
+
className: cn("flex min-w-0 flex-col gap-md", className),
|
|
9108
9722
|
ref,
|
|
9109
9723
|
...props
|
|
9110
9724
|
});
|
|
9111
9725
|
}
|
|
9112
9726
|
//#endregion
|
|
9727
|
+
//#region src/components/table/table-link-cell.tsx
|
|
9728
|
+
function TableLinkCell({ className, children, ref, ...props }) {
|
|
9729
|
+
const value = useCellContext$2().getValue();
|
|
9730
|
+
return /* @__PURE__ */ jsx(Button, {
|
|
9731
|
+
variant: "link",
|
|
9732
|
+
type: "button",
|
|
9733
|
+
className: cn("", className),
|
|
9734
|
+
ref,
|
|
9735
|
+
...props,
|
|
9736
|
+
children: children ?? value
|
|
9737
|
+
});
|
|
9738
|
+
}
|
|
9739
|
+
//#endregion
|
|
9113
9740
|
//#region src/components/table/table-next-page.tsx
|
|
9114
9741
|
function TableNextPage({ className, children, ref, ...props }) {
|
|
9115
9742
|
const table = useTableContext$2(), handleClick = () => {
|
|
@@ -9121,7 +9748,8 @@ function TableNextPage({ className, children, ref, ...props }) {
|
|
|
9121
9748
|
disabled: !table.getCanNextPage(),
|
|
9122
9749
|
onClick: handleClick,
|
|
9123
9750
|
ref,
|
|
9124
|
-
|
|
9751
|
+
size: "iconMedium",
|
|
9752
|
+
variant: "outline",
|
|
9125
9753
|
tone: "neutral",
|
|
9126
9754
|
...props,
|
|
9127
9755
|
children: [children, /* @__PURE__ */ jsx(CaretRightIcon, { weight: "bold" })]
|
|
@@ -9170,9 +9798,13 @@ function getTrailingPageIndexes(minimumPages, maximumPages, totalPages) {
|
|
|
9170
9798
|
for (let pageIndex = totalPages - maximumPages; pageIndex < totalPages; pageIndex += PAGE_INDEX_INCREMENT) if (pageIndex >= minimumPages) pageIndexes.push(pageIndex);
|
|
9171
9799
|
return pageIndexes;
|
|
9172
9800
|
}
|
|
9801
|
+
function getPageButtonTone(pageIndex, selectedPageIndex) {
|
|
9802
|
+
if (pageIndex === selectedPageIndex) return "brand";
|
|
9803
|
+
return "neutral";
|
|
9804
|
+
}
|
|
9173
9805
|
function getPageButtonVariant(pageIndex, selectedPageIndex) {
|
|
9174
9806
|
if (pageIndex === selectedPageIndex) return "fill";
|
|
9175
|
-
return "
|
|
9807
|
+
return "outline";
|
|
9176
9808
|
}
|
|
9177
9809
|
function TablePaging({ min = DEFAULT_VISIBLE_START_PAGES, max = DEFAULT_VISIBLE_END_PAGES, className, children, ref, ...props }) {
|
|
9178
9810
|
const table = useTableContext$2(), handleClick = (pageIndex) => {
|
|
@@ -9183,14 +9815,13 @@ function TablePaging({ min = DEFAULT_VISIBLE_START_PAGES, max = DEFAULT_VISIBLE_
|
|
|
9183
9815
|
children: (pagination) => {
|
|
9184
9816
|
const totalPages = table.getPageCount(), leadingPageIndexes = getLeadingPageIndexes(min, totalPages), overflowPageIndexes = getOverflowPageIndexes(min, max, totalPages), trailingPageIndexes = getTrailingPageIndexes(min, max, totalPages);
|
|
9185
9817
|
return /* @__PURE__ */ jsxs("div", {
|
|
9186
|
-
className: cn("flex items-center gap-
|
|
9818
|
+
className: cn("flex items-center gap-2xs", className),
|
|
9187
9819
|
ref,
|
|
9188
9820
|
...props,
|
|
9189
9821
|
children: [
|
|
9190
9822
|
children,
|
|
9191
9823
|
leadingPageIndexes.map((pageIndex) => /* @__PURE__ */ jsx(Button, {
|
|
9192
|
-
tone:
|
|
9193
|
-
size: "iconMedium",
|
|
9824
|
+
tone: getPageButtonTone(pageIndex, pagination.pageIndex),
|
|
9194
9825
|
variant: getPageButtonVariant(pageIndex, pagination.pageIndex),
|
|
9195
9826
|
className: "shrink-0",
|
|
9196
9827
|
onClick: () => handleClick(pageIndex),
|
|
@@ -9200,7 +9831,7 @@ function TablePaging({ min = DEFAULT_VISIBLE_START_PAGES, max = DEFAULT_VISIBLE_
|
|
|
9200
9831
|
"aria-label": "Show more pages",
|
|
9201
9832
|
tone: "neutral",
|
|
9202
9833
|
size: "iconMedium",
|
|
9203
|
-
variant: "
|
|
9834
|
+
variant: "outline",
|
|
9204
9835
|
className: "shrink-0",
|
|
9205
9836
|
children: /* @__PURE__ */ jsx(DotsThreeIcon, { weight: "bold" })
|
|
9206
9837
|
}) }), /* @__PURE__ */ jsx(MenuPopup, {
|
|
@@ -9218,8 +9849,7 @@ function TablePaging({ min = DEFAULT_VISIBLE_START_PAGES, max = DEFAULT_VISIBLE_
|
|
|
9218
9849
|
})
|
|
9219
9850
|
})] }),
|
|
9220
9851
|
trailingPageIndexes.map((pageIndex) => /* @__PURE__ */ jsx(Button, {
|
|
9221
|
-
tone:
|
|
9222
|
-
size: "iconMedium",
|
|
9852
|
+
tone: getPageButtonTone(pageIndex, pagination.pageIndex),
|
|
9223
9853
|
variant: getPageButtonVariant(pageIndex, pagination.pageIndex),
|
|
9224
9854
|
className: "shrink-0",
|
|
9225
9855
|
onClick: () => handleClick(pageIndex),
|
|
@@ -9231,6 +9861,19 @@ function TablePaging({ min = DEFAULT_VISIBLE_START_PAGES, max = DEFAULT_VISIBLE_
|
|
|
9231
9861
|
});
|
|
9232
9862
|
}
|
|
9233
9863
|
//#endregion
|
|
9864
|
+
//#region src/components/table/table-percent-cell.tsx
|
|
9865
|
+
function TablePercentCell({ locale, options, children, ...props }) {
|
|
9866
|
+
const value = useCellContext$2().getValue();
|
|
9867
|
+
if (value === void 0 || value === null) return;
|
|
9868
|
+
return /* @__PURE__ */ jsxs("span", {
|
|
9869
|
+
...props,
|
|
9870
|
+
children: [children, new Intl.NumberFormat(locale, {
|
|
9871
|
+
...options,
|
|
9872
|
+
style: "percent"
|
|
9873
|
+
}).format(value)]
|
|
9874
|
+
});
|
|
9875
|
+
}
|
|
9876
|
+
//#endregion
|
|
9234
9877
|
//#region src/components/table/table-previous-page.tsx
|
|
9235
9878
|
function TablePreviousPage({ className, children, ref, ...props }) {
|
|
9236
9879
|
const table = useTableContext$2(), handleClick = () => {
|
|
@@ -9242,13 +9885,88 @@ function TablePreviousPage({ className, children, ref, ...props }) {
|
|
|
9242
9885
|
disabled: !table.getCanPreviousPage(),
|
|
9243
9886
|
onClick: handleClick,
|
|
9244
9887
|
ref,
|
|
9245
|
-
variant: "
|
|
9888
|
+
variant: "outline",
|
|
9246
9889
|
tone: "neutral",
|
|
9890
|
+
size: "iconMedium",
|
|
9247
9891
|
...props,
|
|
9248
9892
|
children: [children, /* @__PURE__ */ jsx(CaretLeftIcon, { weight: "bold" })]
|
|
9249
9893
|
});
|
|
9250
9894
|
}
|
|
9251
9895
|
//#endregion
|
|
9896
|
+
//#region src/components/table/table-progress-cell.tsx
|
|
9897
|
+
function TableProgressCell({ showValue = true, children, ...props }) {
|
|
9898
|
+
const value = useCellContext$2().getValue();
|
|
9899
|
+
if (value === void 0 || value === null) return;
|
|
9900
|
+
return /* @__PURE__ */ jsxs(Meter, {
|
|
9901
|
+
orientation: "horizontal",
|
|
9902
|
+
"aria-label": "Progress",
|
|
9903
|
+
...props,
|
|
9904
|
+
value,
|
|
9905
|
+
children: [
|
|
9906
|
+
/* @__PURE__ */ jsx(Meter.Track, { children: /* @__PURE__ */ jsx(Meter.Indicator, {}) }),
|
|
9907
|
+
showValue && /* @__PURE__ */ jsx(Meter.Value, {}),
|
|
9908
|
+
children
|
|
9909
|
+
]
|
|
9910
|
+
});
|
|
9911
|
+
}
|
|
9912
|
+
//#endregion
|
|
9913
|
+
//#region src/components/table/table-relative-time-cell.tsx
|
|
9914
|
+
const MILLISECONDS_PER_SECOND = 1e3;
|
|
9915
|
+
const ZERO = 0;
|
|
9916
|
+
const SECONDS_PER_SECOND = 1;
|
|
9917
|
+
const RELATIVE_TIME_UNITS = [
|
|
9918
|
+
["year", 31536e3],
|
|
9919
|
+
["month", 2592e3],
|
|
9920
|
+
["week", 604800],
|
|
9921
|
+
["day", 86400],
|
|
9922
|
+
["hour", 3600],
|
|
9923
|
+
["minute", 60],
|
|
9924
|
+
["second", SECONDS_PER_SECOND]
|
|
9925
|
+
];
|
|
9926
|
+
function formatRelativeTime(date, now, { locale, options }) {
|
|
9927
|
+
const seconds = (date.getTime() - now.getTime()) / MILLISECONDS_PER_SECOND, [unit, divisor] = RELATIVE_TIME_UNITS.find(([, duration]) => Math.abs(seconds) >= duration) ?? ["second", SECONDS_PER_SECOND], amount = Math.round(seconds / divisor) || ZERO;
|
|
9928
|
+
return new Intl.RelativeTimeFormat(locale, {
|
|
9929
|
+
numeric: "auto",
|
|
9930
|
+
...options
|
|
9931
|
+
}).format(amount, unit);
|
|
9932
|
+
}
|
|
9933
|
+
function TableRelativeTimeCell({ locale, options, now, children, ...props }) {
|
|
9934
|
+
const date = useCellContext$2().getValue(), [mountedAt] = useState(() => /* @__PURE__ */ new Date()), referenceDate = now ?? mountedAt;
|
|
9935
|
+
if (!date) return;
|
|
9936
|
+
if (Number.isNaN(date.getTime())) return "Invalid date";
|
|
9937
|
+
if (Number.isNaN(referenceDate.getTime())) throw new RangeError("TableRelativeTimeCell requires a valid now date");
|
|
9938
|
+
return /* @__PURE__ */ jsxs("time", {
|
|
9939
|
+
dateTime: date.toISOString(),
|
|
9940
|
+
title: date.toLocaleString(locale),
|
|
9941
|
+
...props,
|
|
9942
|
+
children: [children, formatRelativeTime(date, referenceDate, {
|
|
9943
|
+
locale,
|
|
9944
|
+
options
|
|
9945
|
+
})]
|
|
9946
|
+
});
|
|
9947
|
+
}
|
|
9948
|
+
//#endregion
|
|
9949
|
+
//#region src/components/table/table-results.tsx
|
|
9950
|
+
const EMPTY_ROW_COUNT = 0;
|
|
9951
|
+
const PAGE_NUMBER_OFFSET = 1;
|
|
9952
|
+
function getPageStart(totalRows, pageIndex, pageSize) {
|
|
9953
|
+
if (totalRows === EMPTY_ROW_COUNT) return EMPTY_ROW_COUNT;
|
|
9954
|
+
return pageIndex * pageSize + PAGE_NUMBER_OFFSET;
|
|
9955
|
+
}
|
|
9956
|
+
function getPageEnd(start, pageSize, totalRows) {
|
|
9957
|
+
if (totalRows === EMPTY_ROW_COUNT) return EMPTY_ROW_COUNT;
|
|
9958
|
+
return Math.min(start + pageSize - PAGE_NUMBER_OFFSET, totalRows);
|
|
9959
|
+
}
|
|
9960
|
+
function TableResults({ children, className, ref, ...props }) {
|
|
9961
|
+
const table = useTableContext$2(), { pageIndex } = table.state.pagination, { pageSize } = table.state.pagination, totalRows = table.getFilteredRowModel().rows.length, start = getPageStart(totalRows, pageIndex, pageSize), end = getPageEnd(start, pageSize, totalRows);
|
|
9962
|
+
return /* @__PURE__ */ jsx("div", {
|
|
9963
|
+
className: cn("flex items-center gap-2xs style-text-default--1 text-on-surface-variant", className),
|
|
9964
|
+
ref,
|
|
9965
|
+
...props,
|
|
9966
|
+
children: children(start, end, totalRows)
|
|
9967
|
+
});
|
|
9968
|
+
}
|
|
9969
|
+
//#endregion
|
|
9252
9970
|
//#region src/components/table/table-search.tsx
|
|
9253
9971
|
function TableSearch({ className, ref, ...props }) {
|
|
9254
9972
|
const table = useTableContext$2(), handleChange = (event) => {
|
|
@@ -9256,33 +9974,17 @@ function TableSearch({ className, ref, ...props }) {
|
|
|
9256
9974
|
};
|
|
9257
9975
|
return /* @__PURE__ */ jsx(table.Subscribe, {
|
|
9258
9976
|
selector: (state) => state.globalFilter,
|
|
9259
|
-
children: (globalFilter) => /* @__PURE__ */ jsxs(InputGroup, {
|
|
9260
|
-
|
|
9261
|
-
|
|
9262
|
-
|
|
9263
|
-
value: globalFilter ?? "",
|
|
9264
|
-
...props
|
|
9265
|
-
})] })
|
|
9266
|
-
});
|
|
9267
|
-
}
|
|
9268
|
-
//#endregion
|
|
9269
|
-
//#region src/components/table/table-select-header.tsx
|
|
9270
|
-
function TableSelectHeader({ className, ref, ...props }) {
|
|
9271
|
-
const table = useTableContext$2();
|
|
9272
|
-
return /* @__PURE__ */ jsx(table.Subscribe, {
|
|
9273
|
-
selector: (state) => state.rowSelection,
|
|
9274
|
-
children: () => {
|
|
9275
|
-
const allRowsSelected = table.getIsAllRowsSelected();
|
|
9276
|
-
return /* @__PURE__ */ jsx(Checkbox, {
|
|
9277
|
-
"aria-label": "Select all rows",
|
|
9278
|
-
checked: allRowsSelected,
|
|
9279
|
-
indeterminate: !allRowsSelected && table.getIsSomeRowsSelected(),
|
|
9280
|
-
onCheckedChange: (checked) => table.toggleAllRowsSelected(checked),
|
|
9977
|
+
children: (globalFilter) => /* @__PURE__ */ jsxs(InputGroup, {
|
|
9978
|
+
variant: props.variant ?? "outline",
|
|
9979
|
+
className: "flex-1",
|
|
9980
|
+
children: [/* @__PURE__ */ jsx(InputGroupAddon, { children: /* @__PURE__ */ jsx(MagnifyingGlassIcon, { weight: "bold" }) }), /* @__PURE__ */ jsx(InputGroupInput, {
|
|
9281
9981
|
className: cn("", className),
|
|
9982
|
+
onChange: handleChange,
|
|
9282
9983
|
ref,
|
|
9984
|
+
value: globalFilter ?? "",
|
|
9283
9985
|
...props
|
|
9284
|
-
})
|
|
9285
|
-
}
|
|
9986
|
+
})]
|
|
9987
|
+
})
|
|
9286
9988
|
});
|
|
9287
9989
|
}
|
|
9288
9990
|
//#endregion
|
|
@@ -9319,27 +10021,33 @@ function TableSortMenu({ className, ref, ...props }) {
|
|
|
9319
10021
|
//#endregion
|
|
9320
10022
|
//#region src/components/table/table-sort-chip.tsx
|
|
9321
10023
|
function TableSortChip({ column, className, children, ref, ...props }) {
|
|
9322
|
-
const table = useTableContext$2(),
|
|
9323
|
-
|
|
9324
|
-
|
|
9325
|
-
|
|
9326
|
-
|
|
9327
|
-
|
|
9328
|
-
|
|
9329
|
-
|
|
9330
|
-
|
|
9331
|
-
|
|
9332
|
-
|
|
9333
|
-
|
|
9334
|
-
|
|
9335
|
-
|
|
9336
|
-
|
|
9337
|
-
|
|
9338
|
-
|
|
9339
|
-
|
|
9340
|
-
|
|
9341
|
-
|
|
9342
|
-
|
|
10024
|
+
const table = useTableContext$2(), buttonLabels = table.options.meta?.translations?.buttonLabels ?? {}, ascendingLabel = buttonLabels.ascending ?? "Ascending", descendingLabel = buttonLabels.descending ?? "Descending";
|
|
10025
|
+
return /* @__PURE__ */ jsx(table.Subscribe, {
|
|
10026
|
+
selector: (state) => state.sorting,
|
|
10027
|
+
children: () => {
|
|
10028
|
+
const columnSort = column.getIsSorted();
|
|
10029
|
+
console.log(columnSort);
|
|
10030
|
+
if (!columnSort) return;
|
|
10031
|
+
return /* @__PURE__ */ jsx(TableSortMenu, {
|
|
10032
|
+
className: cn("", className),
|
|
10033
|
+
ref,
|
|
10034
|
+
...props,
|
|
10035
|
+
children: /* @__PURE__ */ jsxs(Button, {
|
|
10036
|
+
size: "extraSmall",
|
|
10037
|
+
variant: "soft",
|
|
10038
|
+
children: [
|
|
10039
|
+
columnSort === "asc" && /* @__PURE__ */ jsx(SortDescendingIcon, {}),
|
|
10040
|
+
columnSort === "desc" && /* @__PURE__ */ jsx(SortAscendingIcon, {}),
|
|
10041
|
+
/* @__PURE__ */ jsx("span", { children: getColumnHeaderLabel(column) }),
|
|
10042
|
+
/* @__PURE__ */ jsxs("span", {
|
|
10043
|
+
className: "font-light lowercase",
|
|
10044
|
+
children: [columnSort === "asc" && ascendingLabel, columnSort === "desc" && descendingLabel]
|
|
10045
|
+
}),
|
|
10046
|
+
children
|
|
10047
|
+
]
|
|
10048
|
+
})
|
|
10049
|
+
});
|
|
10050
|
+
}
|
|
9343
10051
|
});
|
|
9344
10052
|
}
|
|
9345
10053
|
//#endregion
|
|
@@ -9361,6 +10069,21 @@ function TableSortList({ className, children, ref, ...props }) {
|
|
|
9361
10069
|
});
|
|
9362
10070
|
}
|
|
9363
10071
|
//#endregion
|
|
10072
|
+
//#region src/components/table/table-tags-cell.tsx
|
|
10073
|
+
function TableTagsCell({ badgeProps, className, children, ...props }) {
|
|
10074
|
+
const value = useCellContext$2().getValue();
|
|
10075
|
+
if (value === void 0 || value === null) return;
|
|
10076
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
10077
|
+
className: cn("flex flex-wrap gap-3xs", className),
|
|
10078
|
+
...props,
|
|
10079
|
+
children: [children, value.map((tag, index) => /* @__PURE__ */ jsx(Badge, {
|
|
10080
|
+
variant: "soft",
|
|
10081
|
+
...badgeProps,
|
|
10082
|
+
children: tag
|
|
10083
|
+
}, `${index}-${tag}`))]
|
|
10084
|
+
});
|
|
10085
|
+
}
|
|
10086
|
+
//#endregion
|
|
9364
10087
|
//#region src/components/table/table-text-cell.tsx
|
|
9365
10088
|
function TableTextCell({ className, children, ref, ...props }) {
|
|
9366
10089
|
const cell = useCellContext$2();
|
|
@@ -9373,9 +10096,21 @@ function TableTextCell({ className, children, ref, ...props }) {
|
|
|
9373
10096
|
}
|
|
9374
10097
|
//#endregion
|
|
9375
10098
|
//#region src/components/table/table-toolbar.tsx
|
|
9376
|
-
function TableToolbar({
|
|
10099
|
+
function TableToolbar({ className, ref, ...props }) {
|
|
9377
10100
|
return /* @__PURE__ */ jsx("div", {
|
|
9378
|
-
|
|
10101
|
+
"data-slot": "table-toolbar",
|
|
10102
|
+
className: cn("flex w-full min-w-0 flex-wrap items-center gap-2xs", "[:where([data-slot=table-container][data-variant=outline]>&)]:px-md [:where([data-slot=table-container][data-variant=outline]>&:first-child)]:pt-md [:where([data-slot=table-container][data-variant=outline]>&:last-child)]:pb-md", className),
|
|
10103
|
+
ref,
|
|
10104
|
+
...props
|
|
10105
|
+
});
|
|
10106
|
+
}
|
|
10107
|
+
//#endregion
|
|
10108
|
+
//#region src/components/table/table-top-bar.tsx
|
|
10109
|
+
function TableTopBar({ sticky = false, className, ref, ...props }) {
|
|
10110
|
+
return /* @__PURE__ */ jsx("div", {
|
|
10111
|
+
className: cn("flex min-w-0 flex-col gap-md", "[:where([data-slot=table-container][data-variant=outline]>&)]:px-md [:where([data-slot=table-container][data-variant=outline]>&:first-child)]:pt-md [:where([data-slot=table-container][data-variant=outline]>&:last-child)]:pb-md", sticky && "sticky top-0 z-10", className),
|
|
10112
|
+
"data-table-top-bar": "",
|
|
10113
|
+
"data-slot": "table-top-bar",
|
|
9379
10114
|
ref,
|
|
9380
10115
|
...props
|
|
9381
10116
|
});
|
|
@@ -9396,15 +10131,17 @@ function TableViewModeToggle({ className, children, ref, ...props }) {
|
|
|
9396
10131
|
}
|
|
9397
10132
|
//#endregion
|
|
9398
10133
|
//#region src/components/table/table-viewport.tsx
|
|
9399
|
-
function TableViewport({ className, children, ref, ...props }) {
|
|
10134
|
+
function TableViewport({ grow, className, children, ref, ...props }) {
|
|
9400
10135
|
if (useTableContext$2().state.viewMode === "grid") return /* @__PURE__ */ jsx("div", {
|
|
10136
|
+
"data-slot": "table-viewport",
|
|
9401
10137
|
className: cn("size-full", className),
|
|
9402
10138
|
ref,
|
|
9403
10139
|
...props,
|
|
9404
10140
|
children
|
|
9405
10141
|
});
|
|
9406
10142
|
return /* @__PURE__ */ jsx("table", {
|
|
9407
|
-
|
|
10143
|
+
"data-slot": "table-viewport",
|
|
10144
|
+
className: cn(grow ? "size-full" : "h-auto w-full", "[[data-slot=table-container][data-variant=outline]>&:not(:first-child):not([data-slot=table-dataset-tab]+&)>thead]:border-t [[data-slot=table-container][data-variant=outline]>&:not(:first-child):not([data-slot=table-dataset-tab]+&)>thead]:border-border", className),
|
|
9408
10145
|
ref,
|
|
9409
10146
|
...props,
|
|
9410
10147
|
children
|
|
@@ -9414,12 +10151,20 @@ function TableViewport({ className, children, ref, ...props }) {
|
|
|
9414
10151
|
//#region src/components/table/table-context.tsx
|
|
9415
10152
|
const { createAppColumnHelper, useAppTable, useTableContext: useTableContext$1, useCellContext, useHeaderContext } = createTableHook({
|
|
9416
10153
|
cellComponents: {
|
|
9417
|
-
|
|
9418
|
-
|
|
9419
|
-
|
|
9420
|
-
|
|
9421
|
-
|
|
9422
|
-
|
|
10154
|
+
AvatarCell: TableAvatarCell,
|
|
10155
|
+
BadgeCell: TableBadgeCell,
|
|
10156
|
+
BooleanCell: TableBooleanCell,
|
|
10157
|
+
CheckboxCell: TableCheckboxCell,
|
|
10158
|
+
CurrencyCell: TableCurrencyCell,
|
|
10159
|
+
DateTimeCell: TableDateTimeCell,
|
|
10160
|
+
ImageCell: TableImageCell,
|
|
10161
|
+
LinkCell: TableLinkCell,
|
|
10162
|
+
NumberCell: TableNumberCell,
|
|
10163
|
+
PercentCell: TablePercentCell,
|
|
10164
|
+
ProgressCell: TableProgressCell,
|
|
10165
|
+
RelativeTimeCell: TableRelativeTimeCell,
|
|
10166
|
+
TagsCell: TableTagsCell,
|
|
10167
|
+
TextCell: TableTextCell
|
|
9423
10168
|
},
|
|
9424
10169
|
cellContext,
|
|
9425
10170
|
features,
|
|
@@ -9428,49 +10173,43 @@ const { createAppColumnHelper, useAppTable, useTableContext: useTableContext$1,
|
|
|
9428
10173
|
if (parent) return `${parent.id}.${index}`;
|
|
9429
10174
|
return String(index);
|
|
9430
10175
|
},
|
|
9431
|
-
headerComponents: {
|
|
10176
|
+
headerComponents: { TableCheckboxHeader },
|
|
9432
10177
|
headerContext,
|
|
9433
10178
|
tableComponents: {
|
|
9434
|
-
TableBody,
|
|
9435
|
-
|
|
9436
|
-
|
|
9437
|
-
|
|
9438
|
-
|
|
9439
|
-
|
|
9440
|
-
|
|
9441
|
-
|
|
9442
|
-
|
|
9443
|
-
|
|
9444
|
-
|
|
9445
|
-
|
|
9446
|
-
|
|
9447
|
-
|
|
9448
|
-
|
|
9449
|
-
|
|
9450
|
-
|
|
9451
|
-
|
|
9452
|
-
|
|
9453
|
-
|
|
10179
|
+
Body: TableBody,
|
|
10180
|
+
BottomBar: TableBottomBar,
|
|
10181
|
+
ColumnToggle: TableColumnToggle,
|
|
10182
|
+
Container: TableContainer,
|
|
10183
|
+
DatasetTab: TableDatasetTab,
|
|
10184
|
+
Empty: TableEmpty,
|
|
10185
|
+
EmptyContent: TableEmptyContent,
|
|
10186
|
+
EmptyDescription: TableEmptyDescription,
|
|
10187
|
+
EmptyFooter: TableEmptyFooter,
|
|
10188
|
+
EmptyHeader: TableEmptyHeader,
|
|
10189
|
+
EmptyTitle: TableEmptyTitle,
|
|
10190
|
+
FilterList: TableFilterList,
|
|
10191
|
+
FilterMenu: TableFilterMenu,
|
|
10192
|
+
FirstPage: TableFirstPage,
|
|
10193
|
+
Footer: TableFooter,
|
|
10194
|
+
Header: TableHeader,
|
|
10195
|
+
LastPage: TableLastPage,
|
|
10196
|
+
Layout: TableLayout,
|
|
10197
|
+
NextPage: TableNextPage,
|
|
10198
|
+
Pagination: TablePagination,
|
|
10199
|
+
Paging: TablePaging,
|
|
10200
|
+
PreviousPage: TablePreviousPage,
|
|
10201
|
+
Results: TableResults,
|
|
10202
|
+
Search: TableSearch,
|
|
10203
|
+
SortList: TableSortList,
|
|
10204
|
+
SortMenu: TableSortMenu,
|
|
10205
|
+
Toolbar: TableToolbar,
|
|
10206
|
+
TopBar: TableTopBar,
|
|
10207
|
+
ViewModeToggle: TableViewModeToggle,
|
|
10208
|
+
Viewport: TableViewport
|
|
9454
10209
|
},
|
|
9455
10210
|
tableContext
|
|
9456
10211
|
});
|
|
9457
10212
|
//#endregion
|
|
9458
|
-
//#region src/components/table/table-results.tsx
|
|
9459
|
-
const EMPTY_ROW_COUNT = 0;
|
|
9460
|
-
const PAGE_NUMBER_OFFSET = 1;
|
|
9461
|
-
function getPageStart(totalRows, pageIndex, pageSize) {
|
|
9462
|
-
if (totalRows === EMPTY_ROW_COUNT) return EMPTY_ROW_COUNT;
|
|
9463
|
-
return pageIndex * pageSize + PAGE_NUMBER_OFFSET;
|
|
9464
|
-
}
|
|
9465
|
-
function getPageEnd(start, pageSize, totalRows) {
|
|
9466
|
-
if (totalRows === EMPTY_ROW_COUNT) return EMPTY_ROW_COUNT;
|
|
9467
|
-
return Math.min(start + pageSize - PAGE_NUMBER_OFFSET, totalRows);
|
|
9468
|
-
}
|
|
9469
|
-
function TableResults({ children }) {
|
|
9470
|
-
const table = useTableContext$2(), { pageIndex } = table.state.pagination, { pageSize } = table.state.pagination, totalRows = table.getFilteredRowModel().rows.length, start = getPageStart(totalRows, pageIndex, pageSize);
|
|
9471
|
-
return children(start, getPageEnd(start, pageSize, totalRows), totalRows);
|
|
9472
|
-
}
|
|
9473
|
-
//#endregion
|
|
9474
10213
|
//#region src/components/toast/anchored-toast-item.tsx
|
|
9475
10214
|
function AnchoredToastItem({ className, ref, toast, ...props }) {
|
|
9476
10215
|
return /* @__PURE__ */ jsxs(Toast$1.Root, {
|
|
@@ -9576,7 +10315,7 @@ function StackToastItem({ className, ref, toast, ...props }) {
|
|
|
9576
10315
|
className: cn("flex aspect-square size-2xl items-center justify-center [&>svg]:size-lg [&>svg]:text-on-surface-inverse", getVariantBgColor(variant)),
|
|
9577
10316
|
children: getVariantIcon(variant, icon)
|
|
9578
10317
|
}), /* @__PURE__ */ jsxs(Toast$1.Content, {
|
|
9579
|
-
className: "flex items-center justify-center gap-
|
|
10318
|
+
className: "flex items-center justify-center gap-3xs overflow-hidden pl-2xs transition-opacity duration-250 data-behind:pointer-events-none data-behind:opacity-0 data-expanded:pointer-events-auto data-expanded:opacity-100",
|
|
9580
10319
|
children: [/* @__PURE__ */ jsxs("div", { children: [/* @__PURE__ */ jsx(Toast$1.Title, { className: "style-text-strong--1" }), /* @__PURE__ */ jsx(Toast$1.Description, { className: "style-text-prose--1 whitespace-nowrap text-on-surface-variant" })] }), /* @__PURE__ */ jsxs("div", {
|
|
9581
10320
|
className: "ml-xl flex h-lg grow items-center justify-center gap-xs",
|
|
9582
10321
|
children: [
|
|
@@ -9727,6 +10466,6 @@ function ToggleGroup({ size = "medium", variant, className, ref, ...props }) {
|
|
|
9727
10466
|
});
|
|
9728
10467
|
}
|
|
9729
10468
|
//#endregion
|
|
9730
|
-
export { Accordion, AccordionHeader, AccordionIcon, AccordionItem, AccordionPanel, AccordionSubtitle, AccordionTitle, Alert, AlertAction, AlertDescription, AlertDialog, AlertDialogClose, AlertDialogConfirm, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogIcon, AlertDialogPopup, AlertDialogTitle, AlertDialogTrigger, AlertIcon, AlertTitle, AnchoredToastItem, AnchoredToasts, Autocomplete, AutocompleteCollection, AutocompleteContent, AutocompleteGridContent, AutocompleteGridItem, AutocompleteGroup, AutocompleteGroupLabel, AutocompleteInputGroup, AutocompleteInputGroupAddon, AutocompleteInputGroupInput, AutocompleteItem, AutocompleteRow, AutocompleteStatus, AutocompleteTrigger, Avatar, AvatarBadge, AvatarFallback, AvatarImage, Badge, BentoBox, BentoBoxAction, BentoBoxContent, BentoBoxDescription, BentoBoxFooter, BentoBoxHeader, BentoBoxTitle, Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbSeparator, Button, ButtonGroup, Calendar, CalendarFooter, CalendarHeader, CalendarPanel, CalendarPicker, CalendarSummary, ChartContainer, ChartContainerContext, ChartLegend, ChartLegendContent, ChartLegendIcon, ChartLegendIndicator, ChartLegendLabel, ChartLinearGradient, ChartTooltip, ChartTooltipContent, ChartTooltipIcon, ChartTooltipIndicator, ChartTooltipLabel, ChartTooltipName, ChartTooltipPayload, ChartTooltipValue, Checkbox, CheckboxGroup, CheckboxIndicator, CodeBlock, CodeBlockActions, CodeBlockCopy, CodeBlockDownload, CodeBlockHeader, CodeBlockName, CodeBlockSelect, CodeBlockTabs, CodeBlockWindow, Collapsible, CollapsiblePanel, CollapsibleTrigger, ColorChannelSlider, ColorPicker, ColorPickerArea, ColorPickerGroup, ColorPickerHueSlider, ColorPickerInput, ColorPickerLabel, ColorPickerLightnessSlider, ColorPickerPaletteLimit, ColorPickerPaletteList, ColorPickerPaletteSwatch, ColorPickerRow, ColorPickerTransparencySlider, ColorPickerValueType, Combobox, ComboboxChip, ComboboxChips, ComboboxCollection, ComboboxEmpty, ComboboxGroup, ComboboxGroupLabel, ComboboxInput, ComboboxItem, ComboboxList, ComboboxPopup, ComboboxStatus, ComboboxTrigger, ComboboxValue, ComboboxVirtualizedList, ContextMenu, ContextMenuCheckboxItem, ContextMenuGroup, ContextMenuGroupLabel, ContextMenuItem, ContextMenuPopup, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuSeparator, ContextMenuShortcut, ContextMenuSubmenu, ContextMenuSubmenuTrigger, ContextMenuTrigger, DEFAULT_THEME, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogHelper, DialogIcon, DialogPopup, DialogTitle, DialogTrigger, Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerHeader, DrawerPopup, DrawerProvider, DrawerTitle, DrawerTrigger, Dropzone, DropzoneActions, DropzoneClear, DropzoneConfirm, DropzoneContainer, DropzoneError, DropzoneFilesList as DropzoneFileList, DropzoneFileSizeLimit, DropzoneFiles, DropzoneFilesHeader, DropzoneFilesTitle, DropzoneFormats, DropzoneHeading, DropzoneIcon, DropzoneInfo, DropzoneSubtitle, DropzoneTrigger, Field, FieldCheckbox, FieldDescription, FieldErrors, FieldInput, FieldInputGroup, FieldInputGroupInput, FieldLabel, FieldRadio, FieldRadioGroup, FieldRow, FieldSelect, FieldSet, FieldSlider, FieldSwitch, FieldTextArea, FieldToggle, Form, FormErrors, FormFooter, FormReset, FormSet, FormSetContent, FormSetHeading, FormSubmit, Input, InputGroup, InputGroupAddon, InputGroupInput, InputGroupSeparator, InputOTP, InputOTPSlot, InputOtpSeparator, Kbd, KbdGroup, Label, LayerTree, LayerTreeBody, LayerTreeExpandAll, LayerTreeFooter, LayerTreeIconCell, LayerTreeLockedAll, LayerTreeLockedCell, LayerTreeNodeIcon, LayerTreeRow, LayerTreeSearch, LayerTreeSort, LayerTreeTextCell, LayerTreeTriggerCell, LayerTreeVisibilityAll, LayerTreeVisibilityCell, Menu, MenuCheckboxItem, MenuGroup, MenuGroupLabel, MenuItem, MenuPopup, MenuRadioGroup, MenuRadioItem, MenuSeparator, MenuShortcut, MenuSubmenu, MenuSubmenuTrigger, MenuTrigger, Meter, MeterFooter, MeterHeader, MeterIndicator, MeterLabel, MeterSubtitle, MeterTrack, MeterValue, NavBar, NavBarItem, NavBarItemIcon, NavBarItemLabel, NavigationMenu, NavigationMenuContent, NavigationMenuIcon, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuPopup, NavigationMenuTrigger, NumberField, Popover, PopoverButton, PopoverContent, PopoverDescription, PopoverHeader, PopoverPanel, PopoverTitle, PopoverTrigger, PreviewCard, PreviewCardPopup, PreviewCardTrigger, Profile, ProfileAction, ProfileContent, ProfileName, ProfileSubname, Progress, ProgressBar, ProgressDescription, ProgressIndicator, ProgressLabel, ProgressTitle, RadarPing, Radio, RadioGroup, ResizeableHandle, ResizeablePanel, ResizeablePanelGroup, ScrollArea, Select, SelectDescription, SelectGroup, SelectGroupLabel, SelectIcon, SelectItem, SelectList, SelectPopup, SelectTitle, SelectTrigger, SelectValue, Separator, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarMenu, SidebarMenuBadge, SidebarMenuButton, SidebarMenuCollapsible, SidebarMenuCollapsiblePanel, SidebarMenuCollapsibleTrigger, SidebarMenuItem, SidebarProvider, SidebarToggle, Skeleton, Slider, SliderDescription, SliderGroup, SliderGroupSlider, SliderIcon, SliderInput, SliderLabel, SliderThumb, SliderValue, StackToastItem, StackToasts, Switch, THEME_STORAGE_KEY, TableBadgeCell, TableBody, TableColumnToggle, TableContainer, TableDateFilterChip, TableDateFilterForm, TableFilterList, TableFilterMenu, TableFirstPage, TableFooter, TableHeader, TableImageCell, TableLastPage,
|
|
10469
|
+
export { Accordion, AccordionHeader, AccordionIcon, AccordionItem, AccordionPanel, AccordionSubtitle, AccordionTitle, Alert, AlertAction, AlertDescription, AlertDialog, AlertDialogClose, AlertDialogConfirm, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogIcon, AlertDialogPopup, AlertDialogTitle, AlertDialogTrigger, AlertIcon, AlertTitle, AnchoredToastItem, AnchoredToasts, Autocomplete, AutocompleteCollection, AutocompleteContent, AutocompleteGridContent, AutocompleteGridItem, AutocompleteGroup, AutocompleteGroupLabel, AutocompleteInputGroup, AutocompleteInputGroupAddon, AutocompleteInputGroupInput, AutocompleteItem, AutocompleteRow, AutocompleteStatus, AutocompleteTrigger, Avatar, AvatarBadge, AvatarFallback, AvatarImage, Badge, BentoBox, BentoBoxAction, BentoBoxContent, BentoBoxDescription, BentoBoxFooter, BentoBoxHeader, BentoBoxTitle, Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbSeparator, Button, ButtonGroup, Calendar, CalendarFooter, CalendarHeader, CalendarPanel, CalendarPicker, CalendarSummary, ChartContainer, ChartContainerContext, ChartLegend, ChartLegendContent, ChartLegendIcon, ChartLegendIndicator, ChartLegendLabel, ChartLinearGradient, ChartTooltip, ChartTooltipContent, ChartTooltipIcon, ChartTooltipIndicator, ChartTooltipLabel, ChartTooltipName, ChartTooltipPayload, ChartTooltipValue, Checkbox, CheckboxGroup, CheckboxIndicator, CodeBlock, CodeBlockActions, CodeBlockCopy, CodeBlockDownload, CodeBlockHeader, CodeBlockName, CodeBlockSelect, CodeBlockTabs, CodeBlockWindow, Collapsible, CollapsiblePanel, CollapsibleTrigger, ColorChannelSlider, ColorPicker, ColorPickerArea, ColorPickerGroup, ColorPickerHueSlider, ColorPickerInput, ColorPickerLabel, ColorPickerLightnessSlider, ColorPickerPaletteLimit, ColorPickerPaletteList, ColorPickerPaletteSwatch, ColorPickerRow, ColorPickerTransparencySlider, ColorPickerValueType, Combobox, ComboboxChip, ComboboxChips, ComboboxCollection, ComboboxEmpty, ComboboxGroup, ComboboxGroupLabel, ComboboxInput, ComboboxItem, ComboboxList, ComboboxPopup, ComboboxStatus, ComboboxTrigger, ComboboxValue, ComboboxVirtualizedList, ContextMenu, ContextMenuCheckboxItem, ContextMenuGroup, ContextMenuGroupLabel, ContextMenuItem, ContextMenuPopup, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuSeparator, ContextMenuShortcut, ContextMenuSubmenu, ContextMenuSubmenuTrigger, ContextMenuTrigger, DEFAULT_THEME, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogHelper, DialogIcon, DialogPopup, DialogTitle, DialogTrigger, Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerHeader, DrawerPopup, DrawerProvider, DrawerTitle, DrawerTrigger, Dropzone, DropzoneActions, DropzoneClear, DropzoneConfirm, DropzoneContainer, DropzoneError, DropzoneFilesList as DropzoneFileList, DropzoneFileSizeLimit, DropzoneFiles, DropzoneFilesHeader, DropzoneFilesTitle, DropzoneFormats, DropzoneHeading, DropzoneIcon, DropzoneInfo, DropzoneSubtitle, DropzoneTrigger, Field, FieldCheckbox, FieldDescription, FieldErrors, FieldInput, FieldInputGroup, FieldInputGroupInput, FieldLabel, FieldRadio, FieldRadioGroup, FieldRow, FieldSelect, FieldSet, FieldSlider, FieldSwitch, FieldTextArea, FieldToggle, Form, FormErrors, FormFooter, FormReset, FormSet, FormSetContent, FormSetHeading, FormSubmit, IconContainer, Input, InputGroup, InputGroupAddon, InputGroupInput, InputGroupSeparator, InputOTP, InputOTPSlot, InputOtpSeparator, Kbd, KbdGroup, Label, LayerTree, LayerTreeBody, LayerTreeExpandAll, LayerTreeFooter, LayerTreeIconCell, LayerTreeLockedAll, LayerTreeLockedCell, LayerTreeNodeIcon, LayerTreeRow, LayerTreeSearch, LayerTreeSort, LayerTreeTextCell, LayerTreeTriggerCell, LayerTreeVisibilityAll, LayerTreeVisibilityCell, Menu, MenuCheckboxItem, MenuGroup, MenuGroupLabel, MenuItem, MenuPopup, MenuRadioGroup, MenuRadioItem, MenuSeparator, MenuShortcut, MenuSubmenu, MenuSubmenuTrigger, MenuTrigger, Meter, MeterFooter, MeterHeader, MeterIndicator, MeterLabel, MeterSubtitle, MeterTrack, MeterValue, NavBar, NavBarItem, NavBarItemIcon, NavBarItemLabel, NavigationMenu, NavigationMenuContent, NavigationMenuIcon, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuPopup, NavigationMenuTrigger, NumberField, Popover, PopoverButton, PopoverContent, PopoverDescription, PopoverHeader, PopoverPanel, PopoverTitle, PopoverTrigger, PreviewCard, PreviewCardPopup, PreviewCardTrigger, Profile, ProfileAction, ProfileContent, ProfileName, ProfileSubname, Progress, ProgressBar, ProgressDescription, ProgressIndicator, ProgressLabel, ProgressTitle, RadarPing, Radio, RadioGroup, ResizeableHandle, ResizeablePanel, ResizeablePanelGroup, ScrollArea, Select, SelectDescription, SelectGroup, SelectGroupLabel, SelectIcon, SelectItem, SelectList, SelectPopup, SelectTitle, SelectTrigger, SelectValue, Separator, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarMenu, SidebarMenuBadge, SidebarMenuButton, SidebarMenuCollapsible, SidebarMenuCollapsiblePanel, SidebarMenuCollapsibleTrigger, SidebarMenuItem, SidebarProvider, SidebarToggle, Skeleton, Slider, SliderDescription, SliderGroup, SliderGroupSlider, SliderIcon, SliderInput, SliderLabel, SliderThumb, SliderValue, StackToastItem, StackToasts, Switch, THEME_STORAGE_KEY, TableAvatarCell, TableBadgeCell, TableBody, TableBooleanCell, TableBottomBar, TableCheckboxCell, TableCheckboxHeader, TableColumnToggle, TableContainer, TableCurrencyCell, TableDateFilterChip, TableDateFilterForm, TableEmpty as TableEmptyMessage, TableFilterList, TableFilterMenu, TableFirstPage, TableFooter, TableHeader, TableImageCell, TableLastPage, TableLayout, TableLinkCell, TableNextPage, TableNumberCell, TableNumberFilterChip, TableNumberFilterForm, TablePagination, TablePaging, TablePercentCell, TablePreviousPage, TableProgressCell, TableRelativeTimeCell, TableResults, TableSearch, TableSelectFilterChip, TableSelectFilterForm, TableSortChip, TableSortList, TableSortMenu, TableStringFilterChip, TableStringFilterForm, TableTagsCell, TableTextCell, TableToolbar, TableTopBar, TableViewModeToggle, TableViewport, Tabs, TabsIndicator, TabsList, TabsPanel, TabsTab, TextArea, ThemeProvider, Toast, ToastProvider, Toggle, ToggleGroup, Tooltip, TooltipContent, TooltipTrigger, anchoredToastManager, cn, createAppColumnHelper, createAppColumnHelper$1 as createLayerTreeColumnHelper, dateFilterFn, defaultFilterOperatorLabels, features, fieldContext, findLayerTreeNode, formContext, formatDate, getPayloadConfigFromPayload, getStoredSidebarOpen, getThemeByValue, insertLayerTreeNode, features$1 as layerTreeFeatures, moveLayerTreeNode, moveLayerTreeNodeToRoot, numberFilterFn, popoverHandle, removeLayerTreeNode, rowLockedFeature, rowVisibilityFeature, selectFilterFn, stackToastManager, stringFilterFn, useAppForm, useAppTable, useCellContext, useChart, useChartTooltipContent, useChartTooltipPayload, useFieldContext, useFilter, useFilteredItems, useFormContext, useHeaderContext, useLayerTree, useCellContext$1 as useLayerTreeCellContext, useTableContext as useLayerTreeContext, useHeaderContext$1 as useLayerTreeHeaderContext, useAppTable$1 as useLayerTreeTable, useMediaQuery, useSidebar, useSliderGroupContext, useTableContext$1 as useTableContext, useTheme, useToastManager, useTypedAppFormContext, withFieldGroup, withForm };
|
|
9731
10470
|
|
|
9732
10471
|
//# sourceMappingURL=index.mjs.map
|