@hyunsdev/ui 0.1.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/LICENSE +674 -0
- package/README.md +89 -0
- package/SKILL.md +38 -0
- package/dist/WindowContext-DybYtZJa.d.ts +50 -0
- package/dist/_styles-BbTx89aX.d.ts +3 -0
- package/dist/chunk-23KUNTRD.js +49 -0
- package/dist/chunk-23KUNTRD.js.map +1 -0
- package/dist/chunk-3RTSANKB.js +51 -0
- package/dist/chunk-3RTSANKB.js.map +1 -0
- package/dist/chunk-4QIWBOF4.js +129 -0
- package/dist/chunk-4QIWBOF4.js.map +1 -0
- package/dist/chunk-5JCWC7IU.js +293 -0
- package/dist/chunk-5JCWC7IU.js.map +1 -0
- package/dist/chunk-6ANDNGHD.js +33 -0
- package/dist/chunk-6ANDNGHD.js.map +1 -0
- package/dist/chunk-7W7QZHEZ.js +42 -0
- package/dist/chunk-7W7QZHEZ.js.map +1 -0
- package/dist/chunk-BHO4WT2N.js +51 -0
- package/dist/chunk-BHO4WT2N.js.map +1 -0
- package/dist/chunk-BI3KKBIC.js +11 -0
- package/dist/chunk-BI3KKBIC.js.map +1 -0
- package/dist/chunk-D3SP7GL3.js +55 -0
- package/dist/chunk-D3SP7GL3.js.map +1 -0
- package/dist/chunk-D7W4RSQX.js +115 -0
- package/dist/chunk-D7W4RSQX.js.map +1 -0
- package/dist/chunk-DN2AEEA2.js +11 -0
- package/dist/chunk-DN2AEEA2.js.map +1 -0
- package/dist/chunk-ETTKFCO6.js +84 -0
- package/dist/chunk-ETTKFCO6.js.map +1 -0
- package/dist/chunk-GJT7TDBS.js +66 -0
- package/dist/chunk-GJT7TDBS.js.map +1 -0
- package/dist/chunk-HZT6RQYZ.js +109 -0
- package/dist/chunk-HZT6RQYZ.js.map +1 -0
- package/dist/chunk-JB2QZV7K.js +60 -0
- package/dist/chunk-JB2QZV7K.js.map +1 -0
- package/dist/chunk-KJJB2PVC.js +21 -0
- package/dist/chunk-KJJB2PVC.js.map +1 -0
- package/dist/chunk-NE3IVPMO.js +31 -0
- package/dist/chunk-NE3IVPMO.js.map +1 -0
- package/dist/chunk-O2BG2KSY.js +23 -0
- package/dist/chunk-O2BG2KSY.js.map +1 -0
- package/dist/chunk-OUFGNJ3V.js +1726 -0
- package/dist/chunk-OUFGNJ3V.js.map +1 -0
- package/dist/chunk-PLZMCJSL.js +351 -0
- package/dist/chunk-PLZMCJSL.js.map +1 -0
- package/dist/chunk-POG5DZBT.js +104 -0
- package/dist/chunk-POG5DZBT.js.map +1 -0
- package/dist/chunk-SECZM6JE.js +170 -0
- package/dist/chunk-SECZM6JE.js.map +1 -0
- package/dist/chunk-T64WPXSC.js +48 -0
- package/dist/chunk-T64WPXSC.js.map +1 -0
- package/dist/chunk-TU5CYBB4.js +90 -0
- package/dist/chunk-TU5CYBB4.js.map +1 -0
- package/dist/chunk-UVAI2U6X.js +153 -0
- package/dist/chunk-UVAI2U6X.js.map +1 -0
- package/dist/chunk-UXCBLYG6.js +142 -0
- package/dist/chunk-UXCBLYG6.js.map +1 -0
- package/dist/chunk-VUR4MQMH.js +53 -0
- package/dist/chunk-VUR4MQMH.js.map +1 -0
- package/dist/chunk-WIEKNG4S.js +26 -0
- package/dist/chunk-WIEKNG4S.js.map +1 -0
- package/dist/chunk-WIZ4OLOB.js +23 -0
- package/dist/chunk-WIZ4OLOB.js.map +1 -0
- package/dist/chunk-WJRJBMFN.js +21 -0
- package/dist/chunk-WJRJBMFN.js.map +1 -0
- package/dist/chunk-YUPLJP3F.js +33 -0
- package/dist/chunk-YUPLJP3F.js.map +1 -0
- package/dist/chunk-Z7ITPSUF.js +184 -0
- package/dist/chunk-Z7ITPSUF.js.map +1 -0
- package/dist/chunk-ZC76ALSI.js +75 -0
- package/dist/chunk-ZC76ALSI.js.map +1 -0
- package/dist/code-block-core-xkE94Rk5.d.ts +30 -0
- package/dist/components/accordion.d.ts +9 -0
- package/dist/components/accordion.js +98 -0
- package/dist/components/accordion.js.map +1 -0
- package/dist/components/alert-dialog.d.ts +26 -0
- package/dist/components/alert-dialog.js +341 -0
- package/dist/components/alert-dialog.js.map +1 -0
- package/dist/components/alert.d.ts +13 -0
- package/dist/components/alert.js +76 -0
- package/dist/components/alert.js.map +1 -0
- package/dist/components/aspect-ratio.d.ts +6 -0
- package/dist/components/aspect-ratio.js +12 -0
- package/dist/components/aspect-ratio.js.map +1 -0
- package/dist/components/avatar.d.ts +13 -0
- package/dist/components/avatar.js +19 -0
- package/dist/components/avatar.js.map +1 -0
- package/dist/components/badge.d.ts +12 -0
- package/dist/components/badge.js +11 -0
- package/dist/components/badge.js.map +1 -0
- package/dist/components/breadcrumb.d.ts +13 -0
- package/dist/components/breadcrumb.js +102 -0
- package/dist/components/breadcrumb.js.map +1 -0
- package/dist/components/button-group.d.ts +16 -0
- package/dist/components/button-group.js +15 -0
- package/dist/components/button-group.js.map +1 -0
- package/dist/components/button.d.ts +14 -0
- package/dist/components/button.js +11 -0
- package/dist/components/button.js.map +1 -0
- package/dist/components/calendar.d.ts +14 -0
- package/dist/components/calendar.js +13 -0
- package/dist/components/calendar.js.map +1 -0
- package/dist/components/card.d.ts +13 -0
- package/dist/components/card.js +21 -0
- package/dist/components/card.js.map +1 -0
- package/dist/components/carousel.d.ts +32 -0
- package/dist/components/carousel.js +196 -0
- package/dist/components/carousel.js.map +1 -0
- package/dist/components/chart.d.ts +46 -0
- package/dist/components/chart.js +254 -0
- package/dist/components/chart.js.map +1 -0
- package/dist/components/checkbox.d.ts +6 -0
- package/dist/components/checkbox.js +41 -0
- package/dist/components/checkbox.js.map +1 -0
- package/dist/components/code-block-core.d.ts +3 -0
- package/dist/components/code-block-core.js +13 -0
- package/dist/components/code-block-core.js.map +1 -0
- package/dist/components/code-block-custom.d.ts +20 -0
- package/dist/components/code-block-custom.js +16 -0
- package/dist/components/code-block-custom.js.map +1 -0
- package/dist/components/code-block-shiki.d.ts +13 -0
- package/dist/components/code-block-shiki.js +15 -0
- package/dist/components/code-block-shiki.js.map +1 -0
- package/dist/components/code-block.d.ts +5 -0
- package/dist/components/code-block.js +14 -0
- package/dist/components/code-block.js.map +1 -0
- package/dist/components/collapsible.d.ts +8 -0
- package/dist/components/collapsible.js +24 -0
- package/dist/components/collapsible.js.map +1 -0
- package/dist/components/collection.d.ts +63 -0
- package/dist/components/collection.js +598 -0
- package/dist/components/collection.js.map +1 -0
- package/dist/components/color-dot.d.ts +19 -0
- package/dist/components/color-dot.js +41 -0
- package/dist/components/color-dot.js.map +1 -0
- package/dist/components/color-picker.d.ts +12 -0
- package/dist/components/color-picker.js +142 -0
- package/dist/components/color-picker.js.map +1 -0
- package/dist/components/combobox.d.ts +74 -0
- package/dist/components/combobox.js +610 -0
- package/dist/components/combobox.js.map +1 -0
- package/dist/components/command.d.ts +21 -0
- package/dist/components/command.js +31 -0
- package/dist/components/command.js.map +1 -0
- package/dist/components/date-picker.d.ts +43 -0
- package/dist/components/date-picker.js +235 -0
- package/dist/components/date-picker.js.map +1 -0
- package/dist/components/dialog.d.ts +25 -0
- package/dist/components/dialog.js +31 -0
- package/dist/components/dialog.js.map +1 -0
- package/dist/components/drawer.d.ts +15 -0
- package/dist/components/drawer.js +124 -0
- package/dist/components/drawer.js.map +1 -0
- package/dist/components/dropdown-menu.d.ts +34 -0
- package/dist/components/dropdown-menu.js +248 -0
- package/dist/components/dropdown-menu.js.map +1 -0
- package/dist/components/empty.d.ts +15 -0
- package/dist/components/empty.js +104 -0
- package/dist/components/empty.js.map +1 -0
- package/dist/components/field.d.ts +29 -0
- package/dist/components/field.js +214 -0
- package/dist/components/field.js.map +1 -0
- package/dist/components/format-bytes.d.ts +12 -0
- package/dist/components/format-bytes.js +30 -0
- package/dist/components/format-bytes.js.map +1 -0
- package/dist/components/format-number.d.ts +12 -0
- package/dist/components/format-number.js +30 -0
- package/dist/components/format-number.js.map +1 -0
- package/dist/components/gauge.d.ts +11 -0
- package/dist/components/gauge.js +82 -0
- package/dist/components/gauge.js.map +1 -0
- package/dist/components/hover-card.d.ts +8 -0
- package/dist/components/hover-card.js +45 -0
- package/dist/components/hover-card.js.map +1 -0
- package/dist/components/input-group.d.ts +24 -0
- package/dist/components/input-group.js +23 -0
- package/dist/components/input-group.js.map +1 -0
- package/dist/components/input-otp.d.ts +20 -0
- package/dist/components/input-otp.js +95 -0
- package/dist/components/input-otp.js.map +1 -0
- package/dist/components/input.d.ts +9 -0
- package/dist/components/input.js +9 -0
- package/dist/components/input.js.map +1 -0
- package/dist/components/item.d.ts +27 -0
- package/dist/components/item.js +182 -0
- package/dist/components/item.js.map +1 -0
- package/dist/components/kbd.d.ts +6 -0
- package/dist/components/kbd.js +34 -0
- package/dist/components/kbd.js.map +1 -0
- package/dist/components/label.d.ts +6 -0
- package/dist/components/label.js +9 -0
- package/dist/components/label.js.map +1 -0
- package/dist/components/loading-bar.d.ts +8 -0
- package/dist/components/loading-bar.js +127 -0
- package/dist/components/loading-bar.js.map +1 -0
- package/dist/components/loading-dots.d.ts +5 -0
- package/dist/components/loading-dots.js +45 -0
- package/dist/components/loading-dots.js.map +1 -0
- package/dist/components/main-provider.d.ts +7 -0
- package/dist/components/main-provider.js +12 -0
- package/dist/components/main-provider.js.map +1 -0
- package/dist/components/mark.d.ts +11 -0
- package/dist/components/mark.js +44 -0
- package/dist/components/mark.js.map +1 -0
- package/dist/components/pagination.d.ts +21 -0
- package/dist/components/pagination.js +114 -0
- package/dist/components/pagination.js.map +1 -0
- package/dist/components/popover.d.ts +12 -0
- package/dist/components/popover.js +22 -0
- package/dist/components/popover.js.map +1 -0
- package/dist/components/prev-next-navigation.d.ts +15 -0
- package/dist/components/prev-next-navigation.js +85 -0
- package/dist/components/prev-next-navigation.js.map +1 -0
- package/dist/components/progress.d.ts +6 -0
- package/dist/components/progress.js +38 -0
- package/dist/components/progress.js.map +1 -0
- package/dist/components/radio-group.d.ts +7 -0
- package/dist/components/radio-group.js +57 -0
- package/dist/components/radio-group.js.map +1 -0
- package/dist/components/relative-time.d.ts +16 -0
- package/dist/components/relative-time.js +75 -0
- package/dist/components/relative-time.js.map +1 -0
- package/dist/components/resizable.d.ts +10 -0
- package/dist/components/resizable.js +45 -0
- package/dist/components/resizable.js.map +1 -0
- package/dist/components/scroll-area.d.ts +7 -0
- package/dist/components/scroll-area.js +11 -0
- package/dist/components/scroll-area.js.map +1 -0
- package/dist/components/select.d.ts +20 -0
- package/dist/components/select.js +189 -0
- package/dist/components/select.js.map +1 -0
- package/dist/components/separator.d.ts +6 -0
- package/dist/components/separator.js +9 -0
- package/dist/components/separator.js.map +1 -0
- package/dist/components/sheet.d.ts +16 -0
- package/dist/components/sheet.js +25 -0
- package/dist/components/sheet.js.map +1 -0
- package/dist/components/show-more.d.ts +15 -0
- package/dist/components/show-more.js +79 -0
- package/dist/components/show-more.js.map +1 -0
- package/dist/components/skeleton.d.ts +5 -0
- package/dist/components/skeleton.js +8 -0
- package/dist/components/skeleton.js.map +1 -0
- package/dist/components/slider.d.ts +6 -0
- package/dist/components/slider.js +65 -0
- package/dist/components/slider.js.map +1 -0
- package/dist/components/snippet.d.ts +13 -0
- package/dist/components/snippet.js +135 -0
- package/dist/components/snippet.js.map +1 -0
- package/dist/components/sonner.d.ts +6 -0
- package/dist/components/sonner.js +10 -0
- package/dist/components/sonner.js.map +1 -0
- package/dist/components/spinner.d.ts +5 -0
- package/dist/components/spinner.js +8 -0
- package/dist/components/spinner.js.map +1 -0
- package/dist/components/stat.d.ts +17 -0
- package/dist/components/stat.js +71 -0
- package/dist/components/stat.js.map +1 -0
- package/dist/components/steps.d.ts +17 -0
- package/dist/components/steps.js +133 -0
- package/dist/components/steps.js.map +1 -0
- package/dist/components/switch.d.ts +8 -0
- package/dist/components/switch.js +44 -0
- package/dist/components/switch.js.map +1 -0
- package/dist/components/table.d.ts +12 -0
- package/dist/components/table.js +101 -0
- package/dist/components/table.js.map +1 -0
- package/dist/components/tabs.d.ts +14 -0
- package/dist/components/tabs.js +88 -0
- package/dist/components/tabs.js.map +1 -0
- package/dist/components/textarea.d.ts +5 -0
- package/dist/components/textarea.js +9 -0
- package/dist/components/textarea.js.map +1 -0
- package/dist/components/theme-provider.d.ts +10 -0
- package/dist/components/theme-provider.js +14 -0
- package/dist/components/theme-provider.js.map +1 -0
- package/dist/components/time-picker.d.ts +17 -0
- package/dist/components/time-picker.js +219 -0
- package/dist/components/time-picker.js.map +1 -0
- package/dist/components/timeline.d.ts +17 -0
- package/dist/components/timeline.js +138 -0
- package/dist/components/timeline.js.map +1 -0
- package/dist/components/toggle-group.d.ts +14 -0
- package/dist/components/toggle-group.js +82 -0
- package/dist/components/toggle-group.js.map +1 -0
- package/dist/components/toggle.d.ts +12 -0
- package/dist/components/toggle.js +11 -0
- package/dist/components/toggle.js.map +1 -0
- package/dist/components/tooltip.d.ts +9 -0
- package/dist/components/tooltip.js +15 -0
- package/dist/components/tooltip.js.map +1 -0
- package/dist/components/typography.d.ts +17 -0
- package/dist/components/typography.js +91 -0
- package/dist/components/typography.js.map +1 -0
- package/dist/hooks/use-mobile.d.ts +3 -0
- package/dist/hooks/use-mobile.js +7 -0
- package/dist/hooks/use-mobile.js.map +1 -0
- package/dist/hooks/use-theme.d.ts +3 -0
- package/dist/hooks/use-theme.js +8 -0
- package/dist/hooks/use-theme.js.map +1 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.js +27 -0
- package/dist/index.js.map +1 -0
- package/dist/layouts/center/index.d.ts +18 -0
- package/dist/layouts/center/index.js +73 -0
- package/dist/layouts/center/index.js.map +1 -0
- package/dist/layouts/chat/index.d.ts +42 -0
- package/dist/layouts/chat/index.js +191 -0
- package/dist/layouts/chat/index.js.map +1 -0
- package/dist/layouts/command/index.d.ts +2 -0
- package/dist/layouts/command/index.js +1 -0
- package/dist/layouts/command/index.js.map +1 -0
- package/dist/layouts/panel/index.d.ts +55 -0
- package/dist/layouts/panel/index.js +513 -0
- package/dist/layouts/panel/index.js.map +1 -0
- package/dist/layouts/presentation/index.d.ts +14 -0
- package/dist/layouts/presentation/index.js +100 -0
- package/dist/layouts/presentation/index.js.map +1 -0
- package/dist/layouts/site/index.d.ts +17 -0
- package/dist/layouts/site/index.js +82 -0
- package/dist/layouts/site/index.js.map +1 -0
- package/dist/layouts/window/index.d.ts +223 -0
- package/dist/layouts/window/index.js +127 -0
- package/dist/layouts/window/index.js.map +1 -0
- package/dist/layouts/workbench/index.d.ts +281 -0
- package/dist/layouts/workbench/index.js +2457 -0
- package/dist/layouts/workbench/index.js.map +1 -0
- package/dist/lib/format.d.ts +15 -0
- package/dist/lib/format.js +9 -0
- package/dist/lib/format.js.map +1 -0
- package/dist/lib/theme.d.ts +22 -0
- package/dist/lib/theme.js +25 -0
- package/dist/lib/theme.js.map +1 -0
- package/dist/lib/utils.d.ts +5 -0
- package/dist/lib/utils.js +7 -0
- package/dist/lib/utils.js.map +1 -0
- package/dist/styles/fonts.css +1 -0
- package/dist/styles/globals.css +717 -0
- package/dist/styles/tokens.css +693 -0
- package/package.json +137 -0
|
@@ -0,0 +1,254 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import {
|
|
3
|
+
cn
|
|
4
|
+
} from "../chunk-DN2AEEA2.js";
|
|
5
|
+
|
|
6
|
+
// src/components/chart.tsx
|
|
7
|
+
import * as React from "react";
|
|
8
|
+
import * as RechartsPrimitive from "recharts";
|
|
9
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
10
|
+
var THEMES = { light: "", dark: ".dark" };
|
|
11
|
+
var INITIAL_DIMENSION = { width: 320, height: 200 };
|
|
12
|
+
var THEME_ENTRIES = [
|
|
13
|
+
["light", THEMES.light],
|
|
14
|
+
["dark", THEMES.dark]
|
|
15
|
+
];
|
|
16
|
+
var ChartContext = React.createContext(null);
|
|
17
|
+
function useChart() {
|
|
18
|
+
const context = React.useContext(ChartContext);
|
|
19
|
+
if (!context) {
|
|
20
|
+
throw new Error("useChart must be used within a <ChartContainer />");
|
|
21
|
+
}
|
|
22
|
+
return context;
|
|
23
|
+
}
|
|
24
|
+
function ChartContainer({
|
|
25
|
+
id,
|
|
26
|
+
className,
|
|
27
|
+
children,
|
|
28
|
+
config,
|
|
29
|
+
initialDimension = INITIAL_DIMENSION,
|
|
30
|
+
...props
|
|
31
|
+
}) {
|
|
32
|
+
const uniqueId = React.useId();
|
|
33
|
+
const chartId = `chart-${id ?? uniqueId.replace(/:/g, "")}`;
|
|
34
|
+
return /* @__PURE__ */ jsx(ChartContext.Provider, { value: { config }, children: /* @__PURE__ */ jsxs(
|
|
35
|
+
"div",
|
|
36
|
+
{
|
|
37
|
+
"data-slot": "chart",
|
|
38
|
+
"data-chart": chartId,
|
|
39
|
+
className: cn(
|
|
40
|
+
"[&_.recharts-cartesian-axis-tick_text]:fill-muted-foreground [&_.recharts-cartesian-grid_line[stroke='#ccc']]:stroke-border/50 [&_.recharts-curve.recharts-tooltip-cursor]:stroke-border [&_.recharts-polar-grid_[stroke='#ccc']]:stroke-border [&_.recharts-radial-bar-background-sector]:fill-muted [&_.recharts-rectangle.recharts-tooltip-cursor]:fill-muted [&_.recharts-reference-line_[stroke='#ccc']]:stroke-border flex aspect-video justify-center text-xs [&_.recharts-dot[stroke='#fff']]:stroke-transparent [&_.recharts-layer]:outline-hidden [&_.recharts-sector]:outline-hidden [&_.recharts-sector[stroke='#fff']]:stroke-transparent [&_.recharts-surface]:outline-hidden",
|
|
41
|
+
className
|
|
42
|
+
),
|
|
43
|
+
...props,
|
|
44
|
+
children: [
|
|
45
|
+
/* @__PURE__ */ jsx(ChartStyle, { id: chartId, config }),
|
|
46
|
+
/* @__PURE__ */ jsx(RechartsPrimitive.ResponsiveContainer, { initialDimension, children })
|
|
47
|
+
]
|
|
48
|
+
}
|
|
49
|
+
) });
|
|
50
|
+
}
|
|
51
|
+
var ChartStyle = ({ id, config }) => {
|
|
52
|
+
const colorConfig = Object.entries(config).filter(([, config2]) => config2.theme ?? config2.color);
|
|
53
|
+
if (!colorConfig.length) {
|
|
54
|
+
return null;
|
|
55
|
+
}
|
|
56
|
+
return /* @__PURE__ */ jsx(
|
|
57
|
+
"style",
|
|
58
|
+
{
|
|
59
|
+
dangerouslySetInnerHTML: {
|
|
60
|
+
__html: THEME_ENTRIES.map(
|
|
61
|
+
([theme, prefix]) => `
|
|
62
|
+
${prefix} [data-chart=${id}] {
|
|
63
|
+
${colorConfig.map(([key, itemConfig]) => {
|
|
64
|
+
const color = itemConfig.theme?.[theme] ?? itemConfig.color;
|
|
65
|
+
return color ? ` --color-${key}: ${color};` : null;
|
|
66
|
+
}).join("\n")}
|
|
67
|
+
}
|
|
68
|
+
`
|
|
69
|
+
).join("\n")
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
);
|
|
73
|
+
};
|
|
74
|
+
var ChartTooltip = RechartsPrimitive.Tooltip;
|
|
75
|
+
function ChartTooltipContent({
|
|
76
|
+
active,
|
|
77
|
+
payload,
|
|
78
|
+
className,
|
|
79
|
+
indicator = "dot",
|
|
80
|
+
hideLabel = false,
|
|
81
|
+
hideIndicator = false,
|
|
82
|
+
label,
|
|
83
|
+
labelFormatter,
|
|
84
|
+
labelClassName,
|
|
85
|
+
formatter,
|
|
86
|
+
color,
|
|
87
|
+
nameKey,
|
|
88
|
+
labelKey
|
|
89
|
+
}) {
|
|
90
|
+
const { config } = useChart();
|
|
91
|
+
const tooltipLabel = React.useMemo(() => {
|
|
92
|
+
if (hideLabel || !payload?.length) {
|
|
93
|
+
return null;
|
|
94
|
+
}
|
|
95
|
+
const [item] = payload;
|
|
96
|
+
const key = `${labelKey ?? item?.dataKey ?? item?.name ?? "value"}`;
|
|
97
|
+
const itemConfig = getPayloadConfigFromPayload(config, item, key);
|
|
98
|
+
const value = !labelKey && typeof label === "string" ? config[label]?.label ?? label : itemConfig?.label;
|
|
99
|
+
if (labelFormatter) {
|
|
100
|
+
return /* @__PURE__ */ jsx("div", { className: cn("font-medium", labelClassName), children: labelFormatter(value, payload) });
|
|
101
|
+
}
|
|
102
|
+
if (!value) {
|
|
103
|
+
return null;
|
|
104
|
+
}
|
|
105
|
+
return /* @__PURE__ */ jsx("div", { className: cn("font-medium", labelClassName), children: value });
|
|
106
|
+
}, [label, labelFormatter, payload, hideLabel, labelClassName, config, labelKey]);
|
|
107
|
+
if (!active || !payload?.length) {
|
|
108
|
+
return null;
|
|
109
|
+
}
|
|
110
|
+
const nestLabel = payload.length === 1 && indicator !== "dot";
|
|
111
|
+
return /* @__PURE__ */ jsxs(
|
|
112
|
+
"div",
|
|
113
|
+
{
|
|
114
|
+
className: cn(
|
|
115
|
+
"border-border/50 bg-background-primary grid min-w-32 items-start gap-1.5 rounded-lg border px-2.5 py-1.5 text-xs shadow-xl",
|
|
116
|
+
className
|
|
117
|
+
),
|
|
118
|
+
children: [
|
|
119
|
+
!nestLabel ? tooltipLabel : null,
|
|
120
|
+
/* @__PURE__ */ jsx("div", { className: "grid gap-1.5", children: payload.filter((item) => item.type !== "none").map((item, index) => {
|
|
121
|
+
const key = `${nameKey ?? item.name ?? item.dataKey ?? "value"}`;
|
|
122
|
+
const itemConfig = getPayloadConfigFromPayload(config, item, key);
|
|
123
|
+
const indicatorColor = color ?? item.payload?.fill ?? item.color;
|
|
124
|
+
return /* @__PURE__ */ jsx(
|
|
125
|
+
"div",
|
|
126
|
+
{
|
|
127
|
+
className: cn(
|
|
128
|
+
"[&>svg]:text-text-muted flex w-full flex-wrap items-stretch gap-2 [&>svg]:h-2.5 [&>svg]:w-2.5",
|
|
129
|
+
indicator === "dot" && "items-center"
|
|
130
|
+
),
|
|
131
|
+
children: formatter && item?.value !== void 0 && item.name ? formatter(item.value, item.name, item, index, item.payload) : /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
132
|
+
itemConfig?.icon ? /* @__PURE__ */ jsx(itemConfig.icon, {}) : !hideIndicator && (() => {
|
|
133
|
+
const indicatorStyle = {
|
|
134
|
+
"--color-bg": indicatorColor,
|
|
135
|
+
"--color-border": indicatorColor
|
|
136
|
+
};
|
|
137
|
+
return /* @__PURE__ */ jsx(
|
|
138
|
+
"div",
|
|
139
|
+
{
|
|
140
|
+
className: cn(
|
|
141
|
+
"shrink-0 rounded-[2px] border-(--color-border) bg-(--color-bg)",
|
|
142
|
+
{
|
|
143
|
+
"h-2.5 w-2.5": indicator === "dot",
|
|
144
|
+
"w-1": indicator === "line",
|
|
145
|
+
"w-0 border-[1.5px] border-dashed bg-transparent": indicator === "dashed",
|
|
146
|
+
"my-0.5": nestLabel && indicator === "dashed"
|
|
147
|
+
}
|
|
148
|
+
),
|
|
149
|
+
style: indicatorStyle
|
|
150
|
+
}
|
|
151
|
+
);
|
|
152
|
+
})(),
|
|
153
|
+
/* @__PURE__ */ jsxs(
|
|
154
|
+
"div",
|
|
155
|
+
{
|
|
156
|
+
className: cn(
|
|
157
|
+
"flex flex-1 justify-between leading-none",
|
|
158
|
+
nestLabel ? "items-end" : "items-center"
|
|
159
|
+
),
|
|
160
|
+
children: [
|
|
161
|
+
/* @__PURE__ */ jsxs("div", { className: "grid gap-1.5", children: [
|
|
162
|
+
nestLabel ? tooltipLabel : null,
|
|
163
|
+
/* @__PURE__ */ jsx("span", { className: "text-text-muted", children: itemConfig?.label ?? item.name })
|
|
164
|
+
] }),
|
|
165
|
+
item.value != null && /* @__PURE__ */ jsx("span", { className: "text-text-normal font-mono font-medium tabular-nums", children: typeof item.value === "number" ? item.value.toLocaleString() : String(item.value) })
|
|
166
|
+
]
|
|
167
|
+
}
|
|
168
|
+
)
|
|
169
|
+
] })
|
|
170
|
+
},
|
|
171
|
+
index
|
|
172
|
+
);
|
|
173
|
+
}) })
|
|
174
|
+
]
|
|
175
|
+
}
|
|
176
|
+
);
|
|
177
|
+
}
|
|
178
|
+
var ChartLegend = RechartsPrimitive.Legend;
|
|
179
|
+
function ChartLegendContent({
|
|
180
|
+
className,
|
|
181
|
+
hideIcon = false,
|
|
182
|
+
payload,
|
|
183
|
+
verticalAlign = "bottom",
|
|
184
|
+
nameKey
|
|
185
|
+
}) {
|
|
186
|
+
const { config } = useChart();
|
|
187
|
+
if (!payload?.length) {
|
|
188
|
+
return null;
|
|
189
|
+
}
|
|
190
|
+
return /* @__PURE__ */ jsx(
|
|
191
|
+
"div",
|
|
192
|
+
{
|
|
193
|
+
className: cn(
|
|
194
|
+
"flex items-center justify-center gap-4",
|
|
195
|
+
verticalAlign === "top" ? "pb-3" : "pt-3",
|
|
196
|
+
className
|
|
197
|
+
),
|
|
198
|
+
children: payload.filter((item) => item.type !== "none").map((item, index) => {
|
|
199
|
+
const key = `${nameKey ?? item.dataKey ?? "value"}`;
|
|
200
|
+
const itemConfig = getPayloadConfigFromPayload(config, item, key);
|
|
201
|
+
return /* @__PURE__ */ jsxs(
|
|
202
|
+
"div",
|
|
203
|
+
{
|
|
204
|
+
className: cn(
|
|
205
|
+
"[&>svg]:text-text-muted flex items-center gap-1.5 [&>svg]:h-3 [&>svg]:w-3"
|
|
206
|
+
),
|
|
207
|
+
children: [
|
|
208
|
+
itemConfig?.icon && !hideIcon ? /* @__PURE__ */ jsx(itemConfig.icon, {}) : /* @__PURE__ */ jsx(
|
|
209
|
+
"div",
|
|
210
|
+
{
|
|
211
|
+
className: "h-2 w-2 shrink-0 rounded-[2px]",
|
|
212
|
+
style: {
|
|
213
|
+
backgroundColor: item.color
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
),
|
|
217
|
+
itemConfig?.label
|
|
218
|
+
]
|
|
219
|
+
},
|
|
220
|
+
index
|
|
221
|
+
);
|
|
222
|
+
})
|
|
223
|
+
}
|
|
224
|
+
);
|
|
225
|
+
}
|
|
226
|
+
function getStringProperty(source, key) {
|
|
227
|
+
const entry = Object.entries(source).find(([entryKey]) => entryKey === key);
|
|
228
|
+
const value = entry?.[1];
|
|
229
|
+
return typeof value === "string" ? value : void 0;
|
|
230
|
+
}
|
|
231
|
+
function getPayloadConfigFromPayload(config, payload, key) {
|
|
232
|
+
if (typeof payload !== "object" || payload === null) {
|
|
233
|
+
return void 0;
|
|
234
|
+
}
|
|
235
|
+
const payloadPayload = "payload" in payload && typeof payload.payload === "object" && payload.payload !== null ? payload.payload : void 0;
|
|
236
|
+
let configLabelKey = key;
|
|
237
|
+
const payloadValue = getStringProperty(payload, key);
|
|
238
|
+
const nestedPayloadValue = payloadPayload ? getStringProperty(payloadPayload, key) : void 0;
|
|
239
|
+
if (payloadValue !== void 0) {
|
|
240
|
+
configLabelKey = payloadValue;
|
|
241
|
+
} else if (nestedPayloadValue !== void 0) {
|
|
242
|
+
configLabelKey = nestedPayloadValue;
|
|
243
|
+
}
|
|
244
|
+
return configLabelKey in config ? config[configLabelKey] : config[key];
|
|
245
|
+
}
|
|
246
|
+
export {
|
|
247
|
+
ChartContainer,
|
|
248
|
+
ChartLegend,
|
|
249
|
+
ChartLegendContent,
|
|
250
|
+
ChartStyle,
|
|
251
|
+
ChartTooltip,
|
|
252
|
+
ChartTooltipContent
|
|
253
|
+
};
|
|
254
|
+
//# sourceMappingURL=chart.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/components/chart.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\n\nimport * as RechartsPrimitive from \"recharts\"\n\nimport { cn } from \"@hyunsdev/ui/lib/utils\"\n\nimport type { TooltipValueType } from \"recharts\"\n\n// Format: { THEME_NAME: CSS_SELECTOR }\nconst THEMES = { light: \"\", dark: \".dark\" } as const\n\nconst INITIAL_DIMENSION = { width: 320, height: 200 } as const\nconst THEME_ENTRIES = [\n [\"light\", THEMES.light],\n [\"dark\", THEMES.dark],\n] as const\ntype TooltipNameType = number | string\ntype ChartIndicatorStyle = React.CSSProperties & {\n \"--color-bg\"?: string\n \"--color-border\"?: string\n}\n\nexport type ChartConfig = Record<\n string,\n {\n label?: React.ReactNode\n icon?: React.ComponentType\n } & (\n | { color?: string; theme?: never }\n | { color?: never; theme: Record<keyof typeof THEMES, string> }\n )\n>\n\ntype ChartContextProps = {\n config: ChartConfig\n}\n\nconst ChartContext = React.createContext<ChartContextProps | null>(null)\n\nfunction useChart() {\n const context = React.useContext(ChartContext)\n\n if (!context) {\n throw new Error(\"useChart must be used within a <ChartContainer />\")\n }\n\n return context\n}\n\nfunction ChartContainer({\n id,\n className,\n children,\n config,\n initialDimension = INITIAL_DIMENSION,\n ...props\n}: React.ComponentProps<\"div\"> & {\n config: ChartConfig\n children: React.ComponentProps<typeof RechartsPrimitive.ResponsiveContainer>[\"children\"]\n initialDimension?: {\n width: number\n height: number\n }\n}) {\n const uniqueId = React.useId()\n const chartId = `chart-${id ?? uniqueId.replace(/:/g, \"\")}`\n\n return (\n <ChartContext.Provider value={{ config }}>\n <div\n data-slot=\"chart\"\n data-chart={chartId}\n className={cn(\n \"[&_.recharts-cartesian-axis-tick_text]:fill-muted-foreground [&_.recharts-cartesian-grid_line[stroke='#ccc']]:stroke-border/50 [&_.recharts-curve.recharts-tooltip-cursor]:stroke-border [&_.recharts-polar-grid_[stroke='#ccc']]:stroke-border [&_.recharts-radial-bar-background-sector]:fill-muted [&_.recharts-rectangle.recharts-tooltip-cursor]:fill-muted [&_.recharts-reference-line_[stroke='#ccc']]:stroke-border flex aspect-video justify-center text-xs [&_.recharts-dot[stroke='#fff']]:stroke-transparent [&_.recharts-layer]:outline-hidden [&_.recharts-sector]:outline-hidden [&_.recharts-sector[stroke='#fff']]:stroke-transparent [&_.recharts-surface]:outline-hidden\",\n className,\n )}\n {...props}\n >\n <ChartStyle id={chartId} config={config} />\n <RechartsPrimitive.ResponsiveContainer initialDimension={initialDimension}>\n {children}\n </RechartsPrimitive.ResponsiveContainer>\n </div>\n </ChartContext.Provider>\n )\n}\n\nconst ChartStyle = ({ id, config }: { id: string; config: ChartConfig }) => {\n const colorConfig = Object.entries(config).filter(([, config]) => config.theme ?? config.color)\n\n if (!colorConfig.length) {\n return null\n }\n\n return (\n <style\n dangerouslySetInnerHTML={{\n __html: THEME_ENTRIES.map(\n ([theme, prefix]) => `\n${prefix} [data-chart=${id}] {\n${colorConfig\n .map(([key, itemConfig]) => {\n const color = itemConfig.theme?.[theme] ?? itemConfig.color\n return color ? ` --color-${key}: ${color};` : null\n })\n .join(\"\\n\")}\n}\n`,\n ).join(\"\\n\"),\n }}\n />\n )\n}\n\nconst ChartTooltip = RechartsPrimitive.Tooltip\n\nfunction ChartTooltipContent({\n active,\n payload,\n className,\n indicator = \"dot\",\n hideLabel = false,\n hideIndicator = false,\n label,\n labelFormatter,\n labelClassName,\n formatter,\n color,\n nameKey,\n labelKey,\n}: React.ComponentProps<typeof RechartsPrimitive.Tooltip> &\n React.ComponentProps<\"div\"> & {\n hideLabel?: boolean\n hideIndicator?: boolean\n indicator?: \"line\" | \"dot\" | \"dashed\"\n nameKey?: string\n labelKey?: string\n } & Omit<\n RechartsPrimitive.DefaultTooltipContentProps<TooltipValueType, TooltipNameType>,\n \"accessibilityLayer\"\n >) {\n const { config } = useChart()\n\n const tooltipLabel = React.useMemo(() => {\n if (hideLabel || !payload?.length) {\n return null\n }\n\n const [item] = payload\n const key = `${labelKey ?? item?.dataKey ?? item?.name ?? \"value\"}`\n const itemConfig = getPayloadConfigFromPayload(config, item, key)\n const value =\n !labelKey && typeof label === \"string\" ? (config[label]?.label ?? label) : itemConfig?.label\n\n if (labelFormatter) {\n return (\n <div className={cn(\"font-medium\", labelClassName)}>{labelFormatter(value, payload)}</div>\n )\n }\n\n if (!value) {\n return null\n }\n\n return <div className={cn(\"font-medium\", labelClassName)}>{value}</div>\n }, [label, labelFormatter, payload, hideLabel, labelClassName, config, labelKey])\n\n if (!active || !payload?.length) {\n return null\n }\n\n const nestLabel = payload.length === 1 && indicator !== \"dot\"\n\n return (\n <div\n className={cn(\n \"border-border/50 bg-background-primary grid min-w-32 items-start gap-1.5 rounded-lg border px-2.5 py-1.5 text-xs shadow-xl\",\n className,\n )}\n >\n {!nestLabel ? tooltipLabel : null}\n <div className=\"grid gap-1.5\">\n {payload\n .filter((item) => item.type !== \"none\")\n .map((item, index) => {\n const key = `${nameKey ?? item.name ?? item.dataKey ?? \"value\"}`\n const itemConfig = getPayloadConfigFromPayload(config, item, key)\n const indicatorColor = color ?? item.payload?.fill ?? item.color\n\n return (\n <div\n key={index}\n className={cn(\n \"[&>svg]:text-text-muted flex w-full flex-wrap items-stretch gap-2 [&>svg]:h-2.5 [&>svg]:w-2.5\",\n indicator === \"dot\" && \"items-center\",\n )}\n >\n {formatter && item?.value !== undefined && item.name ? (\n formatter(item.value, item.name, item, index, item.payload)\n ) : (\n <>\n {itemConfig?.icon ? (\n <itemConfig.icon />\n ) : (\n !hideIndicator &&\n (() => {\n const indicatorStyle: ChartIndicatorStyle = {\n \"--color-bg\": indicatorColor,\n \"--color-border\": indicatorColor,\n }\n\n return (\n <div\n className={cn(\n \"shrink-0 rounded-[2px] border-(--color-border) bg-(--color-bg)\",\n {\n \"h-2.5 w-2.5\": indicator === \"dot\",\n \"w-1\": indicator === \"line\",\n \"w-0 border-[1.5px] border-dashed bg-transparent\":\n indicator === \"dashed\",\n \"my-0.5\": nestLabel && indicator === \"dashed\",\n },\n )}\n style={indicatorStyle}\n />\n )\n })()\n )}\n <div\n className={cn(\n \"flex flex-1 justify-between leading-none\",\n nestLabel ? \"items-end\" : \"items-center\",\n )}\n >\n <div className=\"grid gap-1.5\">\n {nestLabel ? tooltipLabel : null}\n <span className=\"text-text-muted\">{itemConfig?.label ?? item.name}</span>\n </div>\n {item.value != null && (\n <span className=\"text-text-normal font-mono font-medium tabular-nums\">\n {typeof item.value === \"number\"\n ? item.value.toLocaleString()\n : String(item.value)}\n </span>\n )}\n </div>\n </>\n )}\n </div>\n )\n })}\n </div>\n </div>\n )\n}\n\nconst ChartLegend = RechartsPrimitive.Legend\n\nfunction ChartLegendContent({\n className,\n hideIcon = false,\n payload,\n verticalAlign = \"bottom\",\n nameKey,\n}: React.ComponentProps<\"div\"> & {\n hideIcon?: boolean\n nameKey?: string\n} & RechartsPrimitive.DefaultLegendContentProps) {\n const { config } = useChart()\n\n if (!payload?.length) {\n return null\n }\n\n return (\n <div\n className={cn(\n \"flex items-center justify-center gap-4\",\n verticalAlign === \"top\" ? \"pb-3\" : \"pt-3\",\n className,\n )}\n >\n {payload\n .filter((item) => item.type !== \"none\")\n .map((item, index) => {\n const key = `${nameKey ?? item.dataKey ?? \"value\"}`\n const itemConfig = getPayloadConfigFromPayload(config, item, key)\n\n return (\n <div\n key={index}\n className={cn(\n \"[&>svg]:text-text-muted flex items-center gap-1.5 [&>svg]:h-3 [&>svg]:w-3\",\n )}\n >\n {itemConfig?.icon && !hideIcon ? (\n <itemConfig.icon />\n ) : (\n <div\n className=\"h-2 w-2 shrink-0 rounded-[2px]\"\n style={{\n backgroundColor: item.color,\n }}\n />\n )}\n {itemConfig?.label}\n </div>\n )\n })}\n </div>\n )\n}\n\nfunction getStringProperty(source: object, key: string) {\n const entry = Object.entries(source).find(([entryKey]) => entryKey === key)\n const value = entry?.[1]\n\n return typeof value === \"string\" ? value : undefined\n}\n\nfunction getPayloadConfigFromPayload(config: ChartConfig, payload: unknown, key: string) {\n if (typeof payload !== \"object\" || payload === null) {\n return undefined\n }\n\n const payloadPayload =\n \"payload\" in payload && typeof payload.payload === \"object\" && payload.payload !== null\n ? payload.payload\n : undefined\n\n let configLabelKey: string = key\n\n const payloadValue = getStringProperty(payload, key)\n const nestedPayloadValue = payloadPayload ? getStringProperty(payloadPayload, key) : undefined\n\n if (payloadValue !== undefined) {\n configLabelKey = payloadValue\n } else if (nestedPayloadValue !== undefined) {\n configLabelKey = nestedPayloadValue\n }\n\n return configLabelKey in config ? config[configLabelKey] : config[key]\n}\n\nexport {\n ChartContainer,\n ChartTooltip,\n ChartTooltipContent,\n ChartLegend,\n ChartLegendContent,\n ChartStyle,\n}\n"],"mappings":";;;;;;AAEA,YAAY,WAAW;AAEvB,YAAY,uBAAuB;AAmE7B,SAmIY,UA1HV,KATF;AA5DN,IAAM,SAAS,EAAE,OAAO,IAAI,MAAM,QAAQ;AAE1C,IAAM,oBAAoB,EAAE,OAAO,KAAK,QAAQ,IAAI;AACpD,IAAM,gBAAgB;AAAA,EACpB,CAAC,SAAS,OAAO,KAAK;AAAA,EACtB,CAAC,QAAQ,OAAO,IAAI;AACtB;AAsBA,IAAM,eAAqB,oBAAwC,IAAI;AAEvE,SAAS,WAAW;AAClB,QAAM,UAAgB,iBAAW,YAAY;AAE7C,MAAI,CAAC,SAAS;AACZ,UAAM,IAAI,MAAM,mDAAmD;AAAA,EACrE;AAEA,SAAO;AACT;AAEA,SAAS,eAAe;AAAA,EACtB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,mBAAmB;AAAA,EACnB,GAAG;AACL,GAOG;AACD,QAAM,WAAiB,YAAM;AAC7B,QAAM,UAAU,SAAS,MAAM,SAAS,QAAQ,MAAM,EAAE,CAAC;AAEzD,SACE,oBAAC,aAAa,UAAb,EAAsB,OAAO,EAAE,OAAO,GACrC;AAAA,IAAC;AAAA;AAAA,MACC,aAAU;AAAA,MACV,cAAY;AAAA,MACZ,WAAW;AAAA,QACT;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA,MAEJ;AAAA,4BAAC,cAAW,IAAI,SAAS,QAAgB;AAAA,QACzC,oBAAmB,uCAAlB,EAAsC,kBACpC,UACH;AAAA;AAAA;AAAA,EACF,GACF;AAEJ;AAEA,IAAM,aAAa,CAAC,EAAE,IAAI,OAAO,MAA2C;AAC1E,QAAM,cAAc,OAAO,QAAQ,MAAM,EAAE,OAAO,CAAC,CAAC,EAAEA,OAAM,MAAMA,QAAO,SAASA,QAAO,KAAK;AAE9F,MAAI,CAAC,YAAY,QAAQ;AACvB,WAAO;AAAA,EACT;AAEA,SACE;AAAA,IAAC;AAAA;AAAA,MACC,yBAAyB;AAAA,QACvB,QAAQ,cAAc;AAAA,UACpB,CAAC,CAAC,OAAO,MAAM,MAAM;AAAA,EAC7B,MAAM,gBAAgB,EAAE;AAAA,EACxB,YACC,IAAI,CAAC,CAAC,KAAK,UAAU,MAAM;AAC1B,kBAAM,QAAQ,WAAW,QAAQ,KAAK,KAAK,WAAW;AACtD,mBAAO,QAAQ,aAAa,GAAG,KAAK,KAAK,MAAM;AAAA,UACjD,CAAC,EACA,KAAK,IAAI,CAAC;AAAA;AAAA;AAAA,QAGL,EAAE,KAAK,IAAI;AAAA,MACb;AAAA;AAAA,EACF;AAEJ;AAEA,IAAM,eAAiC;AAEvC,SAAS,oBAAoB;AAAA,EAC3B;AAAA,EACA;AAAA,EACA;AAAA,EACA,YAAY;AAAA,EACZ,YAAY;AAAA,EACZ,gBAAgB;AAAA,EAChB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAUK;AACH,QAAM,EAAE,OAAO,IAAI,SAAS;AAE5B,QAAM,eAAqB,cAAQ,MAAM;AACvC,QAAI,aAAa,CAAC,SAAS,QAAQ;AACjC,aAAO;AAAA,IACT;AAEA,UAAM,CAAC,IAAI,IAAI;AACf,UAAM,MAAM,GAAG,YAAY,MAAM,WAAW,MAAM,QAAQ,OAAO;AACjE,UAAM,aAAa,4BAA4B,QAAQ,MAAM,GAAG;AAChE,UAAM,QACJ,CAAC,YAAY,OAAO,UAAU,WAAY,OAAO,KAAK,GAAG,SAAS,QAAS,YAAY;AAEzF,QAAI,gBAAgB;AAClB,aACE,oBAAC,SAAI,WAAW,GAAG,eAAe,cAAc,GAAI,yBAAe,OAAO,OAAO,GAAE;AAAA,IAEvF;AAEA,QAAI,CAAC,OAAO;AACV,aAAO;AAAA,IACT;AAEA,WAAO,oBAAC,SAAI,WAAW,GAAG,eAAe,cAAc,GAAI,iBAAM;AAAA,EACnE,GAAG,CAAC,OAAO,gBAAgB,SAAS,WAAW,gBAAgB,QAAQ,QAAQ,CAAC;AAEhF,MAAI,CAAC,UAAU,CAAC,SAAS,QAAQ;AAC/B,WAAO;AAAA,EACT;AAEA,QAAM,YAAY,QAAQ,WAAW,KAAK,cAAc;AAExD,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAW;AAAA,QACT;AAAA,QACA;AAAA,MACF;AAAA,MAEC;AAAA,SAAC,YAAY,eAAe;AAAA,QAC7B,oBAAC,SAAI,WAAU,gBACZ,kBACE,OAAO,CAAC,SAAS,KAAK,SAAS,MAAM,EACrC,IAAI,CAAC,MAAM,UAAU;AACpB,gBAAM,MAAM,GAAG,WAAW,KAAK,QAAQ,KAAK,WAAW,OAAO;AAC9D,gBAAM,aAAa,4BAA4B,QAAQ,MAAM,GAAG;AAChE,gBAAM,iBAAiB,SAAS,KAAK,SAAS,QAAQ,KAAK;AAE3D,iBACE;AAAA,YAAC;AAAA;AAAA,cAEC,WAAW;AAAA,gBACT;AAAA,gBACA,cAAc,SAAS;AAAA,cACzB;AAAA,cAEC,uBAAa,MAAM,UAAU,UAAa,KAAK,OAC9C,UAAU,KAAK,OAAO,KAAK,MAAM,MAAM,OAAO,KAAK,OAAO,IAE1D,iCACG;AAAA,4BAAY,OACX,oBAAC,WAAW,MAAX,EAAgB,IAEjB,CAAC,kBACA,MAAM;AACL,wBAAM,iBAAsC;AAAA,oBAC1C,cAAc;AAAA,oBACd,kBAAkB;AAAA,kBACpB;AAEA,yBACE;AAAA,oBAAC;AAAA;AAAA,sBACC,WAAW;AAAA,wBACT;AAAA,wBACA;AAAA,0BACE,eAAe,cAAc;AAAA,0BAC7B,OAAO,cAAc;AAAA,0BACrB,mDACE,cAAc;AAAA,0BAChB,UAAU,aAAa,cAAc;AAAA,wBACvC;AAAA,sBACF;AAAA,sBACA,OAAO;AAAA;AAAA,kBACT;AAAA,gBAEJ,GAAG;AAAA,gBAEL;AAAA,kBAAC;AAAA;AAAA,oBACC,WAAW;AAAA,sBACT;AAAA,sBACA,YAAY,cAAc;AAAA,oBAC5B;AAAA,oBAEA;AAAA,2CAAC,SAAI,WAAU,gBACZ;AAAA,oCAAY,eAAe;AAAA,wBAC5B,oBAAC,UAAK,WAAU,mBAAmB,sBAAY,SAAS,KAAK,MAAK;AAAA,yBACpE;AAAA,sBACC,KAAK,SAAS,QACb,oBAAC,UAAK,WAAU,uDACb,iBAAO,KAAK,UAAU,WACnB,KAAK,MAAM,eAAe,IAC1B,OAAO,KAAK,KAAK,GACvB;AAAA;AAAA;AAAA,gBAEJ;AAAA,iBACF;AAAA;AAAA,YAvDG;AAAA,UAyDP;AAAA,QAEJ,CAAC,GACL;AAAA;AAAA;AAAA,EACF;AAEJ;AAEA,IAAM,cAAgC;AAEtC,SAAS,mBAAmB;AAAA,EAC1B;AAAA,EACA,WAAW;AAAA,EACX;AAAA,EACA,gBAAgB;AAAA,EAChB;AACF,GAGiD;AAC/C,QAAM,EAAE,OAAO,IAAI,SAAS;AAE5B,MAAI,CAAC,SAAS,QAAQ;AACpB,WAAO;AAAA,EACT;AAEA,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAW;AAAA,QACT;AAAA,QACA,kBAAkB,QAAQ,SAAS;AAAA,QACnC;AAAA,MACF;AAAA,MAEC,kBACE,OAAO,CAAC,SAAS,KAAK,SAAS,MAAM,EACrC,IAAI,CAAC,MAAM,UAAU;AACpB,cAAM,MAAM,GAAG,WAAW,KAAK,WAAW,OAAO;AACjD,cAAM,aAAa,4BAA4B,QAAQ,MAAM,GAAG;AAEhE,eACE;AAAA,UAAC;AAAA;AAAA,YAEC,WAAW;AAAA,cACT;AAAA,YACF;AAAA,YAEC;AAAA,0BAAY,QAAQ,CAAC,WACpB,oBAAC,WAAW,MAAX,EAAgB,IAEjB;AAAA,gBAAC;AAAA;AAAA,kBACC,WAAU;AAAA,kBACV,OAAO;AAAA,oBACL,iBAAiB,KAAK;AAAA,kBACxB;AAAA;AAAA,cACF;AAAA,cAED,YAAY;AAAA;AAAA;AAAA,UAfR;AAAA,QAgBP;AAAA,MAEJ,CAAC;AAAA;AAAA,EACL;AAEJ;AAEA,SAAS,kBAAkB,QAAgB,KAAa;AACtD,QAAM,QAAQ,OAAO,QAAQ,MAAM,EAAE,KAAK,CAAC,CAAC,QAAQ,MAAM,aAAa,GAAG;AAC1E,QAAM,QAAQ,QAAQ,CAAC;AAEvB,SAAO,OAAO,UAAU,WAAW,QAAQ;AAC7C;AAEA,SAAS,4BAA4B,QAAqB,SAAkB,KAAa;AACvF,MAAI,OAAO,YAAY,YAAY,YAAY,MAAM;AACnD,WAAO;AAAA,EACT;AAEA,QAAM,iBACJ,aAAa,WAAW,OAAO,QAAQ,YAAY,YAAY,QAAQ,YAAY,OAC/E,QAAQ,UACR;AAEN,MAAI,iBAAyB;AAE7B,QAAM,eAAe,kBAAkB,SAAS,GAAG;AACnD,QAAM,qBAAqB,iBAAiB,kBAAkB,gBAAgB,GAAG,IAAI;AAErF,MAAI,iBAAiB,QAAW;AAC9B,qBAAiB;AAAA,EACnB,WAAW,uBAAuB,QAAW;AAC3C,qBAAiB;AAAA,EACnB;AAEA,SAAO,kBAAkB,SAAS,OAAO,cAAc,IAAI,OAAO,GAAG;AACvE;","names":["config"]}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import {
|
|
3
|
+
fieldFocusClass,
|
|
4
|
+
fieldInvalidClass
|
|
5
|
+
} from "../chunk-O2BG2KSY.js";
|
|
6
|
+
import {
|
|
7
|
+
cn
|
|
8
|
+
} from "../chunk-DN2AEEA2.js";
|
|
9
|
+
|
|
10
|
+
// src/components/checkbox.tsx
|
|
11
|
+
import "react";
|
|
12
|
+
import * as CheckboxPrimitive from "@radix-ui/react-checkbox";
|
|
13
|
+
import { CheckIcon } from "lucide-react";
|
|
14
|
+
import { jsx } from "react/jsx-runtime";
|
|
15
|
+
function Checkbox({ className, ...props }) {
|
|
16
|
+
return /* @__PURE__ */ jsx(
|
|
17
|
+
CheckboxPrimitive.Root,
|
|
18
|
+
{
|
|
19
|
+
"data-slot": "checkbox",
|
|
20
|
+
className: cn(
|
|
21
|
+
"peer border-field-border bg-field-background text-field-text disabled:bg-field-background-disabled aria-invalid:aria-checked:border-interactive-accent data-checked:border-interactive-accent data-checked:bg-interactive-accent data-checked:text-text-on-accent data-checked:hover:bg-interactive-accent-hover data-checked:hover:border-interactive-accent-hover data-checked:active:bg-interactive-accent-active-hover data-checked:active:border-interactive-accent-active-hover relative flex size-4 shrink-0 cursor-pointer items-center justify-center rounded-[4px] border transition-colors outline-none group-has-disabled/field:opacity-50 after:absolute after:-inset-x-3 after:-inset-y-2 disabled:cursor-not-allowed disabled:opacity-50",
|
|
22
|
+
fieldFocusClass,
|
|
23
|
+
fieldInvalidClass,
|
|
24
|
+
className
|
|
25
|
+
),
|
|
26
|
+
...props,
|
|
27
|
+
children: /* @__PURE__ */ jsx(
|
|
28
|
+
CheckboxPrimitive.Indicator,
|
|
29
|
+
{
|
|
30
|
+
"data-slot": "checkbox-indicator",
|
|
31
|
+
className: "grid place-content-center text-current transition-none [&>svg]:size-3.5",
|
|
32
|
+
children: /* @__PURE__ */ jsx(CheckIcon, {})
|
|
33
|
+
}
|
|
34
|
+
)
|
|
35
|
+
}
|
|
36
|
+
);
|
|
37
|
+
}
|
|
38
|
+
export {
|
|
39
|
+
Checkbox
|
|
40
|
+
};
|
|
41
|
+
//# sourceMappingURL=checkbox.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/components/checkbox.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\n\nimport * as CheckboxPrimitive from \"@radix-ui/react-checkbox\"\nimport { CheckIcon } from \"lucide-react\"\n\nimport { cn } from \"@hyunsdev/ui/lib/utils\"\n\nimport { fieldFocusClass, fieldInvalidClass } from \"./_styles\"\n\nfunction Checkbox({ className, ...props }: React.ComponentProps<typeof CheckboxPrimitive.Root>) {\n return (\n <CheckboxPrimitive.Root\n data-slot=\"checkbox\"\n className={cn(\n \"peer border-field-border bg-field-background text-field-text disabled:bg-field-background-disabled aria-invalid:aria-checked:border-interactive-accent data-checked:border-interactive-accent data-checked:bg-interactive-accent data-checked:text-text-on-accent data-checked:hover:bg-interactive-accent-hover data-checked:hover:border-interactive-accent-hover data-checked:active:bg-interactive-accent-active-hover data-checked:active:border-interactive-accent-active-hover relative flex size-4 shrink-0 cursor-pointer items-center justify-center rounded-[4px] border transition-colors outline-none group-has-disabled/field:opacity-50 after:absolute after:-inset-x-3 after:-inset-y-2 disabled:cursor-not-allowed disabled:opacity-50\",\n fieldFocusClass,\n fieldInvalidClass,\n className,\n )}\n {...props}\n >\n <CheckboxPrimitive.Indicator\n data-slot=\"checkbox-indicator\"\n className=\"grid place-content-center text-current transition-none [&>svg]:size-3.5\"\n >\n <CheckIcon />\n </CheckboxPrimitive.Indicator>\n </CheckboxPrimitive.Root>\n )\n}\n\nexport { Checkbox }\n"],"mappings":";;;;;;;;;;AAEA,OAAuB;AAEvB,YAAY,uBAAuB;AACnC,SAAS,iBAAiB;AAsBlB;AAhBR,SAAS,SAAS,EAAE,WAAW,GAAG,MAAM,GAAwD;AAC9F,SACE;AAAA,IAAmB;AAAA,IAAlB;AAAA,MACC,aAAU;AAAA,MACV,WAAW;AAAA,QACT;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA,MAEJ;AAAA,QAAmB;AAAA,QAAlB;AAAA,UACC,aAAU;AAAA,UACV,WAAU;AAAA,UAEV,8BAAC,aAAU;AAAA;AAAA,MACb;AAAA;AAAA,EACF;AAEJ;","names":[]}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import {
|
|
3
|
+
CodeBlockCore
|
|
4
|
+
} from "../chunk-5JCWC7IU.js";
|
|
5
|
+
import "../chunk-UXCBLYG6.js";
|
|
6
|
+
import "../chunk-3RTSANKB.js";
|
|
7
|
+
import "../chunk-TU5CYBB4.js";
|
|
8
|
+
import "../chunk-O2BG2KSY.js";
|
|
9
|
+
import "../chunk-DN2AEEA2.js";
|
|
10
|
+
export {
|
|
11
|
+
CodeBlockCore as CodeBlock
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=code-block-core.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { C as CodeBlockCommonProps, a as CodeBlockThemeMap, b as CodeBlockHighlighter } from '../code-block-core-xkE94Rk5.js';
|
|
3
|
+
export { c as CodeBlockLineNumbers } from '../code-block-core-xkE94Rk5.js';
|
|
4
|
+
import { Awaitable, RegexEngine, LanguageInput, ThemeInput } from 'shiki';
|
|
5
|
+
|
|
6
|
+
type CodeBlockShikiBundle<LanguageName extends string = string, ThemeName extends string = string> = {
|
|
7
|
+
engine?: () => Awaitable<RegexEngine>;
|
|
8
|
+
fallbackLanguage?: LanguageName | string;
|
|
9
|
+
languages: Record<LanguageName, LanguageInput>;
|
|
10
|
+
themeNames: CodeBlockThemeMap<ThemeName>;
|
|
11
|
+
themes: Record<ThemeName, ThemeInput>;
|
|
12
|
+
};
|
|
13
|
+
type CodeBlockCustomProps = CodeBlockCommonProps & {
|
|
14
|
+
fallbackLanguage?: string | undefined;
|
|
15
|
+
shiki: CodeBlockShikiBundle;
|
|
16
|
+
};
|
|
17
|
+
declare function createCodeBlockShikiHighlighter(shiki: CodeBlockShikiBundle): () => Promise<CodeBlockHighlighter>;
|
|
18
|
+
declare function CodeBlockCustom({ fallbackLanguage, shiki, ...props }: CodeBlockCustomProps): React.JSX.Element;
|
|
19
|
+
|
|
20
|
+
export { CodeBlockCustom as CodeBlock, CodeBlockHighlighter, type CodeBlockCustomProps as CodeBlockProps, type CodeBlockShikiBundle, CodeBlockThemeMap, createCodeBlockShikiHighlighter };
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import {
|
|
3
|
+
CodeBlockCustom,
|
|
4
|
+
createCodeBlockShikiHighlighter
|
|
5
|
+
} from "../chunk-T64WPXSC.js";
|
|
6
|
+
import "../chunk-5JCWC7IU.js";
|
|
7
|
+
import "../chunk-UXCBLYG6.js";
|
|
8
|
+
import "../chunk-3RTSANKB.js";
|
|
9
|
+
import "../chunk-TU5CYBB4.js";
|
|
10
|
+
import "../chunk-O2BG2KSY.js";
|
|
11
|
+
import "../chunk-DN2AEEA2.js";
|
|
12
|
+
export {
|
|
13
|
+
CodeBlockCustom as CodeBlock,
|
|
14
|
+
createCodeBlockShikiHighlighter
|
|
15
|
+
};
|
|
16
|
+
//# sourceMappingURL=code-block-custom.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { C as CodeBlockCommonProps } from '../code-block-core-xkE94Rk5.js';
|
|
3
|
+
export { c as CodeBlockLineNumbers, a as CodeBlockThemeMap } from '../code-block-core-xkE94Rk5.js';
|
|
4
|
+
import { CodeBlockShikiBundle } from './code-block-custom.js';
|
|
5
|
+
import 'shiki';
|
|
6
|
+
|
|
7
|
+
type CodeBlockProps = CodeBlockCommonProps & {
|
|
8
|
+
fallbackLanguage?: string | undefined;
|
|
9
|
+
shiki?: CodeBlockShikiBundle;
|
|
10
|
+
};
|
|
11
|
+
declare function CodeBlock({ fallbackLanguage, shiki, ...props }: CodeBlockProps): React.JSX.Element;
|
|
12
|
+
|
|
13
|
+
export { CodeBlock, type CodeBlockProps, CodeBlockShikiBundle };
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import {
|
|
3
|
+
CodeBlock
|
|
4
|
+
} from "../chunk-D7W4RSQX.js";
|
|
5
|
+
import "../chunk-T64WPXSC.js";
|
|
6
|
+
import "../chunk-5JCWC7IU.js";
|
|
7
|
+
import "../chunk-UXCBLYG6.js";
|
|
8
|
+
import "../chunk-3RTSANKB.js";
|
|
9
|
+
import "../chunk-TU5CYBB4.js";
|
|
10
|
+
import "../chunk-O2BG2KSY.js";
|
|
11
|
+
import "../chunk-DN2AEEA2.js";
|
|
12
|
+
export {
|
|
13
|
+
CodeBlock
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=code-block-shiki.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import {
|
|
2
|
+
CodeBlock
|
|
3
|
+
} from "../chunk-D7W4RSQX.js";
|
|
4
|
+
import "../chunk-T64WPXSC.js";
|
|
5
|
+
import "../chunk-5JCWC7IU.js";
|
|
6
|
+
import "../chunk-UXCBLYG6.js";
|
|
7
|
+
import "../chunk-3RTSANKB.js";
|
|
8
|
+
import "../chunk-TU5CYBB4.js";
|
|
9
|
+
import "../chunk-O2BG2KSY.js";
|
|
10
|
+
import "../chunk-DN2AEEA2.js";
|
|
11
|
+
export {
|
|
12
|
+
CodeBlock
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=code-block.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import * as React$1 from 'react';
|
|
2
|
+
import * as CollapsiblePrimitive from '@radix-ui/react-collapsible';
|
|
3
|
+
|
|
4
|
+
declare function Collapsible({ ...props }: React.ComponentProps<typeof CollapsiblePrimitive.Root>): React$1.JSX.Element;
|
|
5
|
+
declare function CollapsibleTrigger({ ...props }: React.ComponentProps<typeof CollapsiblePrimitive.CollapsibleTrigger>): React$1.JSX.Element;
|
|
6
|
+
declare function CollapsibleContent({ ...props }: React.ComponentProps<typeof CollapsiblePrimitive.CollapsibleContent>): React$1.JSX.Element;
|
|
7
|
+
|
|
8
|
+
export { Collapsible, CollapsibleContent, CollapsibleTrigger };
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
// src/components/collapsible.tsx
|
|
4
|
+
import * as CollapsiblePrimitive from "@radix-ui/react-collapsible";
|
|
5
|
+
import { jsx } from "react/jsx-runtime";
|
|
6
|
+
function Collapsible({ ...props }) {
|
|
7
|
+
return /* @__PURE__ */ jsx(CollapsiblePrimitive.Root, { "data-slot": "collapsible", ...props });
|
|
8
|
+
}
|
|
9
|
+
function CollapsibleTrigger2({
|
|
10
|
+
...props
|
|
11
|
+
}) {
|
|
12
|
+
return /* @__PURE__ */ jsx(CollapsiblePrimitive.CollapsibleTrigger, { "data-slot": "collapsible-trigger", ...props });
|
|
13
|
+
}
|
|
14
|
+
function CollapsibleContent2({
|
|
15
|
+
...props
|
|
16
|
+
}) {
|
|
17
|
+
return /* @__PURE__ */ jsx(CollapsiblePrimitive.CollapsibleContent, { "data-slot": "collapsible-content", ...props });
|
|
18
|
+
}
|
|
19
|
+
export {
|
|
20
|
+
Collapsible,
|
|
21
|
+
CollapsibleContent2 as CollapsibleContent,
|
|
22
|
+
CollapsibleTrigger2 as CollapsibleTrigger
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=collapsible.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/components/collapsible.tsx"],"sourcesContent":["\"use client\"\n\nimport * as CollapsiblePrimitive from \"@radix-ui/react-collapsible\"\n\nfunction Collapsible({ ...props }: React.ComponentProps<typeof CollapsiblePrimitive.Root>) {\n return <CollapsiblePrimitive.Root data-slot=\"collapsible\" {...props} />\n}\n\nfunction CollapsibleTrigger({\n ...props\n}: React.ComponentProps<typeof CollapsiblePrimitive.CollapsibleTrigger>) {\n return <CollapsiblePrimitive.CollapsibleTrigger data-slot=\"collapsible-trigger\" {...props} />\n}\n\nfunction CollapsibleContent({\n ...props\n}: React.ComponentProps<typeof CollapsiblePrimitive.CollapsibleContent>) {\n return <CollapsiblePrimitive.CollapsibleContent data-slot=\"collapsible-content\" {...props} />\n}\n\nexport { Collapsible, CollapsibleTrigger, CollapsibleContent }\n"],"mappings":";;;AAEA,YAAY,0BAA0B;AAG7B;AADT,SAAS,YAAY,EAAE,GAAG,MAAM,GAA2D;AACzF,SAAO,oBAAsB,2BAArB,EAA0B,aAAU,eAAe,GAAG,OAAO;AACvE;AAEA,SAASA,oBAAmB;AAAA,EAC1B,GAAG;AACL,GAAyE;AACvE,SAAO,oBAAsB,yCAArB,EAAwC,aAAU,uBAAuB,GAAG,OAAO;AAC7F;AAEA,SAASC,oBAAmB;AAAA,EAC1B,GAAG;AACL,GAAyE;AACvE,SAAO,oBAAsB,yCAArB,EAAwC,aAAU,uBAAuB,GAAG,OAAO;AAC7F;","names":["CollapsibleTrigger","CollapsibleContent"]}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import * as React$1 from 'react';
|
|
2
|
+
import { Button } from './button.js';
|
|
3
|
+
import 'class-variance-authority/types';
|
|
4
|
+
import 'class-variance-authority';
|
|
5
|
+
|
|
6
|
+
declare function Collection({ className, ...props }: React.ComponentProps<"div">): React$1.JSX.Element;
|
|
7
|
+
declare function CollectionViewport({ className, ...props }: React.ComponentProps<"div">): React$1.JSX.Element;
|
|
8
|
+
|
|
9
|
+
type PaginationItem = number | "ellipsis";
|
|
10
|
+
declare function CollectionFooter({ className, ...props }: React.ComponentProps<"div">): React$1.JSX.Element;
|
|
11
|
+
declare function CollectionFooterStart({ className, ...props }: React.ComponentProps<"div">): React$1.JSX.Element;
|
|
12
|
+
declare function CollectionFooterCenter({ className, ...props }: React.ComponentProps<"div">): React$1.JSX.Element;
|
|
13
|
+
declare function CollectionFooterEnd({ className, ...props }: React.ComponentProps<"div">): React$1.JSX.Element;
|
|
14
|
+
declare function getPaginationItems(currentPage: number, totalPages: number): PaginationItem[];
|
|
15
|
+
declare function CollectionPagination({ className, ...props }: React.ComponentProps<"nav">): React$1.JSX.Element;
|
|
16
|
+
declare function CollectionPaginationPrev({ className, variant, size, children, "aria-label": ariaLabel, ...props }: React.ComponentProps<typeof Button>): React$1.JSX.Element;
|
|
17
|
+
declare function CollectionPaginationEllipsis({ className, ...props }: React.ComponentProps<"span">): React$1.JSX.Element;
|
|
18
|
+
type CollectionPaginationValueProps = React.ComponentProps<typeof Button> & {
|
|
19
|
+
isActive?: boolean;
|
|
20
|
+
};
|
|
21
|
+
declare function CollectionPaginationValue({ className, variant, size, isActive, applied, ...props }: CollectionPaginationValueProps): React$1.JSX.Element;
|
|
22
|
+
declare function CollectionPaginationNext({ className, variant, size, children, "aria-label": ariaLabel, ...props }: React.ComponentProps<typeof Button>): React$1.JSX.Element;
|
|
23
|
+
|
|
24
|
+
declare function CollectionGrid({ className, ...props }: React.ComponentProps<"div">): React$1.JSX.Element;
|
|
25
|
+
declare function CollectionGridItem({ className, ...props }: React.ComponentProps<"div">): React$1.JSX.Element;
|
|
26
|
+
declare function CollectionGridItemHeader({ className, ...props }: React.ComponentProps<"div">): React$1.JSX.Element;
|
|
27
|
+
declare function CollectionGridItemContent({ className, ...props }: React.ComponentProps<"div">): React$1.JSX.Element;
|
|
28
|
+
declare function CollectionGridItemTitle({ className, ...props }: React.ComponentProps<"div">): React$1.JSX.Element;
|
|
29
|
+
declare function CollectionGridItemDescription({ className, ...props }: React.ComponentProps<"div">): React$1.JSX.Element;
|
|
30
|
+
declare function CollectionGridItemFooter({ className, ...props }: React.ComponentProps<"div">): React$1.JSX.Element;
|
|
31
|
+
|
|
32
|
+
declare function CollectionHeader({ className, ...props }: React.ComponentProps<"div">): React$1.JSX.Element;
|
|
33
|
+
declare function CollectionActionBar({ className, ...props }: React.ComponentProps<"div">): React$1.JSX.Element;
|
|
34
|
+
declare function CollectionActionBarStart({ className, ...props }: React.ComponentProps<"div">): React$1.JSX.Element;
|
|
35
|
+
declare function CollectionActionBarEnd({ className, ...props }: React.ComponentProps<"div">): React$1.JSX.Element;
|
|
36
|
+
declare function CollectionActionButton({ className, variant, size, tooltip, ...props }: React.ComponentProps<typeof Button> & {
|
|
37
|
+
tooltip?: React.ReactNode;
|
|
38
|
+
}): React$1.JSX.Element;
|
|
39
|
+
declare function CollectionQueryBar({ className, ...props }: React.ComponentProps<"div">): React$1.JSX.Element;
|
|
40
|
+
declare function CollectionQueryBarStart({ className, ...props }: React.ComponentProps<"div">): React$1.JSX.Element;
|
|
41
|
+
declare function CollectionQueryBarEnd({ className, ...props }: React.ComponentProps<"div">): React$1.JSX.Element;
|
|
42
|
+
declare function CollectionQueryBarStatus({ className, children, ...props }: React.ComponentProps<"div">): React$1.JSX.Element;
|
|
43
|
+
|
|
44
|
+
declare function CollectionList({ className, ...props }: React.ComponentProps<"div">): React$1.JSX.Element;
|
|
45
|
+
declare function CollectionListItem({ className, ...props }: React.ComponentProps<"div">): React$1.JSX.Element;
|
|
46
|
+
declare function CollectionListItemContent({ className, ...props }: React.ComponentProps<"div">): React$1.JSX.Element;
|
|
47
|
+
declare function CollectionListItemTitle({ className, ...props }: React.ComponentProps<"div">): React$1.JSX.Element;
|
|
48
|
+
declare function CollectionListItemDescription({ className, ...props }: React.ComponentProps<"div">): React$1.JSX.Element;
|
|
49
|
+
declare function CollectionListItemMeta({ className, ...props }: React.ComponentProps<"div">): React$1.JSX.Element;
|
|
50
|
+
|
|
51
|
+
declare function CollectionTable({ className, ...props }: React$1.ComponentProps<"table">): React$1.JSX.Element;
|
|
52
|
+
declare function CollectionTableHeader({ className, ...props }: React$1.ComponentProps<"thead">): React$1.JSX.Element;
|
|
53
|
+
declare function CollectionTableBody({ className, ...props }: React$1.ComponentProps<"tbody">): React$1.JSX.Element;
|
|
54
|
+
declare function CollectionTableFooter({ className, ...props }: React$1.ComponentProps<"tfoot">): React$1.JSX.Element;
|
|
55
|
+
declare function CollectionTableRow({ className, ...props }: React$1.ComponentProps<"tr">): React$1.JSX.Element;
|
|
56
|
+
declare function CollectionTableTextHead({ className, ...props }: React$1.ComponentProps<"th">): React$1.JSX.Element;
|
|
57
|
+
declare function CollectionTableMenuHead({ className, ...props }: React$1.ComponentProps<"th">): React$1.JSX.Element;
|
|
58
|
+
declare function CollectionTableMenuHeadInner({ className, ...props }: React$1.ComponentProps<"div">): React$1.JSX.Element;
|
|
59
|
+
declare function CollectionTableCell({ className, ...props }: React$1.ComponentProps<"td">): React$1.JSX.Element;
|
|
60
|
+
declare function CollectionTableCellActions({ className, ...props }: React$1.ComponentProps<"div">): React$1.JSX.Element;
|
|
61
|
+
declare function CollectionTableCellAction({ className, variant, size, ...props }: React$1.ComponentProps<typeof Button>): React$1.JSX.Element;
|
|
62
|
+
|
|
63
|
+
export { Collection, CollectionActionBar, CollectionActionBarEnd, CollectionActionBarStart, CollectionActionButton, CollectionFooter, CollectionFooterCenter, CollectionFooterEnd, CollectionFooterStart, CollectionGrid, CollectionGridItem, CollectionGridItemContent, CollectionGridItemDescription, CollectionGridItemFooter, CollectionGridItemHeader, CollectionGridItemTitle, CollectionHeader, CollectionList, CollectionListItem, CollectionListItemContent, CollectionListItemDescription, CollectionListItemMeta, CollectionListItemTitle, CollectionPagination, CollectionPaginationEllipsis, CollectionPaginationNext, CollectionPaginationPrev, CollectionPaginationValue, CollectionQueryBar, CollectionQueryBarEnd, CollectionQueryBarStart, CollectionQueryBarStatus, CollectionTable, CollectionTableBody, CollectionTableCell, CollectionTableCellAction, CollectionTableCellActions, CollectionTableFooter, CollectionTableHeader, CollectionTableMenuHead, CollectionTableMenuHeadInner, CollectionTableRow, CollectionTableTextHead, CollectionViewport, getPaginationItems };
|