iryx-ui 0.8.0 → 0.10.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +279 -7
- package/dist/component-names.d.ts +1 -1
- package/dist/component-names.js +4 -0
- package/dist/{packages/iryx-ui/src/components → components}/Alert.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/{packages/iryx-ui/src/components → components}/Banner.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/BarChart.js +5 -0
- package/dist/components/BarChart.vue.d.ts +95 -0
- package/dist/components/BarChart.vue_vue_type_script_setup_true_lang.js +258 -0
- package/dist/{packages/iryx-ui/src/components → components}/Breadcrumb.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/{packages/iryx-ui/src/components → components}/Button.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/ChartLegend.js +5 -0
- package/dist/components/ChartLegend.vue.d.ts +12 -0
- package/dist/components/ChartLegend.vue_vue_type_script_setup_true_lang.js +31 -0
- package/dist/{packages/iryx-ui/src/components → components}/Checkbox.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/{packages/iryx-ui/src/components → components}/Combobox.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/{packages/iryx-ui/src/components → components}/DatePicker.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/{packages/iryx-ui/src/components → components}/DateRangePicker.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/Dialog.vue_vue_type_script_setup_true_lang.js +102 -0
- package/dist/{packages/iryx-ui/src/components → components}/DropdownMenuItems.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/{packages/iryx-ui/src/components → components}/FileUpload.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/{packages/iryx-ui/src/components → components}/Icon.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/{packages/iryx-ui/src/components → components}/Input.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/LineChart.js +5 -0
- package/dist/components/LineChart.vue.d.ts +100 -0
- package/dist/components/LineChart.vue_vue_type_script_setup_true_lang.js +265 -0
- package/dist/{packages/iryx-ui/src/components → components}/NumberInput.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/{packages/iryx-ui/src/components → components}/Pagination.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/{packages/iryx-ui/src/components → components}/PasswordInput.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/{packages/iryx-ui/src/components → components}/Select.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/Sparkline.js +5 -0
- package/dist/components/Sparkline.vue.d.ts +38 -0
- package/dist/components/Sparkline.vue_vue_type_script_setup_true_lang.js +110 -0
- package/dist/{packages/iryx-ui/src/components → components}/Stat.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/{packages/iryx-ui/src/components → components}/Stepper.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/{packages/iryx-ui/src/components → components}/Table.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/{packages/iryx-ui/src/components → components}/Toaster.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/index.d.ts +4 -0
- package/dist/components/index.js +88 -0
- package/dist/composables/cartesian.d.ts +105 -0
- package/dist/composables/cartesian.js +43 -0
- package/dist/{packages/iryx-ui/src/composables → composables}/date.js +4 -4
- package/dist/composables/element-size.d.ts +15 -0
- package/dist/composables/element-size.js +22 -0
- package/dist/composables/scale.d.ts +36 -0
- package/dist/composables/scale.js +43 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.js +94 -83
- package/dist/nuxt.js +1 -1
- package/dist/theme/bar-chart.d.ts +132 -0
- package/dist/theme/bar-chart.js +19 -0
- package/dist/theme/breadcrumb.d.ts +3 -3
- package/dist/theme/chart-legend.d.ts +55 -0
- package/dist/theme/chart-legend.js +10 -0
- package/dist/theme/index.d.ts +4 -0
- package/dist/theme/line-chart.d.ts +143 -0
- package/dist/theme/line-chart.js +22 -0
- package/dist/theme/sparkline.d.ts +58 -0
- package/dist/theme/sparkline.js +15 -0
- package/package.json +8 -8
- package/theme.css +42 -0
- package/dist/packages/iryx-ui/src/component-names.js +0 -4
- package/dist/packages/iryx-ui/src/components/Dialog.vue_vue_type_script_setup_true_lang.js +0 -99
- package/dist/packages/iryx-ui/src/components/index.js +0 -80
- /package/dist/{packages/iryx-ui/src/components → components}/Alert.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/App.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/App.vue_vue_type_script_setup_true_lang.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/Badge.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/Badge.vue_vue_type_script_setup_true_lang.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/Banner.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/Breadcrumb.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/Button.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/ButtonGroup.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/ButtonGroup.vue_vue_type_script_setup_true_lang.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/Card.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/Card.vue_vue_type_script_setup_true_lang.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/Checkbox.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/Combobox.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/ConfirmDialog.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/ConfirmDialog.vue_vue_type_script_setup_true_lang.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/DatePicker.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/DateRangePicker.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/Dialog.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/DropdownMenu.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/DropdownMenu.vue_vue_type_script_setup_true_lang.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/DropdownMenuItems.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/EmptyState.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/EmptyState.vue_vue_type_script_setup_true_lang.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/FileUpload.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/Form.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/Form.vue_vue_type_script_setup_true_lang.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/FormField.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/FormField.vue_vue_type_script_setup_true_lang.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/Icon.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/Input.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/Label.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/Label.vue_vue_type_script_setup_true_lang.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/NumberInput.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/Pagination.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/PasswordInput.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/Progress.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/Progress.vue_vue_type_script_setup_true_lang.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/RadioGroup.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/RadioGroup.vue_vue_type_script_setup_true_lang.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/Select.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/Separator.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/Separator.vue_vue_type_script_setup_true_lang.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/Skeleton.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/Skeleton.vue_vue_type_script_setup_true_lang.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/Stat.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/Stepper.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/Switch.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/Switch.vue_vue_type_script_setup_true_lang.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/Table.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/Tabs.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/Tabs.vue_vue_type_script_setup_true_lang.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/Textarea.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/Textarea.vue_vue_type_script_setup_true_lang.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/Toaster.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/Tooltip.js +0 -0
- /package/dist/{packages/iryx-ui/src/components → components}/Tooltip.vue_vue_type_script_setup_true_lang.js +0 -0
- /package/dist/{packages/iryx-ui/src/composables → composables}/appearance.js +0 -0
- /package/dist/{packages/iryx-ui/src/composables → composables}/button-group.js +0 -0
- /package/dist/{packages/iryx-ui/src/composables → composables}/confirm.js +0 -0
- /package/dist/{packages/iryx-ui/src/composables → composables}/data-table.js +0 -0
- /package/dist/{packages/iryx-ui/src/composables → composables}/decimal.js +0 -0
- /package/dist/{packages/iryx-ui/src/composables → composables}/dropdown-menu.js +0 -0
- /package/dist/{packages/iryx-ui/src/composables → composables}/form.js +0 -0
- /package/dist/{packages/iryx-ui/src/composables → composables}/icon.js +0 -0
- /package/dist/{packages/iryx-ui/src/composables → composables}/toast.js +0 -0
- /package/dist/{packages/iryx-ui/src/config.js → config.js} +0 -0
- /package/dist/{packages/iryx-ui/src/plugin.js → plugin.js} +0 -0
- /package/dist/{packages/iryx-ui/src/theme → theme}/alert.js +0 -0
- /package/dist/{packages/iryx-ui/src/theme → theme}/badge.js +0 -0
- /package/dist/{packages/iryx-ui/src/theme → theme}/banner.js +0 -0
- /package/dist/{packages/iryx-ui/src/theme → theme}/breadcrumb.js +0 -0
- /package/dist/{packages/iryx-ui/src/theme → theme}/button-group.js +0 -0
- /package/dist/{packages/iryx-ui/src/theme → theme}/button.js +0 -0
- /package/dist/{packages/iryx-ui/src/theme → theme}/card.js +0 -0
- /package/dist/{packages/iryx-ui/src/theme → theme}/checkbox.js +0 -0
- /package/dist/{packages/iryx-ui/src/theme → theme}/combobox.js +0 -0
- /package/dist/{packages/iryx-ui/src/theme → theme}/date-picker.js +0 -0
- /package/dist/{packages/iryx-ui/src/theme → theme}/dialog.js +0 -0
- /package/dist/{packages/iryx-ui/src/theme → theme}/dropdown-menu.js +0 -0
- /package/dist/{packages/iryx-ui/src/theme → theme}/empty-state.js +0 -0
- /package/dist/{packages/iryx-ui/src/theme → theme}/file-upload.js +0 -0
- /package/dist/{packages/iryx-ui/src/theme → theme}/form.js +0 -0
- /package/dist/{packages/iryx-ui/src/theme → theme}/input.js +0 -0
- /package/dist/{packages/iryx-ui/src/theme → theme}/label.js +0 -0
- /package/dist/{packages/iryx-ui/src/theme → theme}/number-input.js +0 -0
- /package/dist/{packages/iryx-ui/src/theme → theme}/pagination.js +0 -0
- /package/dist/{packages/iryx-ui/src/theme → theme}/password-input.js +0 -0
- /package/dist/{packages/iryx-ui/src/theme → theme}/presets.js +0 -0
- /package/dist/{packages/iryx-ui/src/theme → theme}/progress.js +0 -0
- /package/dist/{packages/iryx-ui/src/theme → theme}/radio-group.js +0 -0
- /package/dist/{packages/iryx-ui/src/theme → theme}/select.js +0 -0
- /package/dist/{packages/iryx-ui/src/theme → theme}/separator.js +0 -0
- /package/dist/{packages/iryx-ui/src/theme → theme}/skeleton.js +0 -0
- /package/dist/{packages/iryx-ui/src/theme → theme}/stat.js +0 -0
- /package/dist/{packages/iryx-ui/src/theme → theme}/stepper.js +0 -0
- /package/dist/{packages/iryx-ui/src/theme → theme}/switch.js +0 -0
- /package/dist/{packages/iryx-ui/src/theme → theme}/table.js +0 -0
- /package/dist/{packages/iryx-ui/src/theme → theme}/tabs.js +0 -0
- /package/dist/{packages/iryx-ui/src/theme → theme}/toast.js +0 -0
- /package/dist/{packages/iryx-ui/src/theme → theme}/tooltip.js +0 -0
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Everything recessive except the bars. Grid and axis text sit one step off
|
|
3
|
+
* the surface; the data is the only thing allowed to be loud.
|
|
4
|
+
*/
|
|
5
|
+
export declare const barChartTheme: import("tailwind-variants").TVReturnType<{
|
|
6
|
+
[key: string]: {
|
|
7
|
+
[key: string]: import("tailwind-variants").ClassValue | {
|
|
8
|
+
root?: import("tailwind-variants").ClassValue;
|
|
9
|
+
svg?: import("tailwind-variants").ClassValue;
|
|
10
|
+
table?: import("tailwind-variants").ClassValue;
|
|
11
|
+
plot?: import("tailwind-variants").ClassValue;
|
|
12
|
+
grid?: import("tailwind-variants").ClassValue;
|
|
13
|
+
tick?: import("tailwind-variants").ClassValue;
|
|
14
|
+
category?: import("tailwind-variants").ClassValue;
|
|
15
|
+
bar?: import("tailwind-variants").ClassValue;
|
|
16
|
+
hit?: import("tailwind-variants").ClassValue;
|
|
17
|
+
faded?: import("tailwind-variants").ClassValue;
|
|
18
|
+
tooltip?: import("tailwind-variants").ClassValue;
|
|
19
|
+
tooltipLabel?: import("tailwind-variants").ClassValue;
|
|
20
|
+
tooltipValue?: import("tailwind-variants").ClassValue;
|
|
21
|
+
};
|
|
22
|
+
};
|
|
23
|
+
} | {
|
|
24
|
+
[x: string]: {
|
|
25
|
+
[x: string]: import("tailwind-variants").ClassValue | {
|
|
26
|
+
root?: import("tailwind-variants").ClassValue;
|
|
27
|
+
svg?: import("tailwind-variants").ClassValue;
|
|
28
|
+
table?: import("tailwind-variants").ClassValue;
|
|
29
|
+
plot?: import("tailwind-variants").ClassValue;
|
|
30
|
+
grid?: import("tailwind-variants").ClassValue;
|
|
31
|
+
tick?: import("tailwind-variants").ClassValue;
|
|
32
|
+
category?: import("tailwind-variants").ClassValue;
|
|
33
|
+
bar?: import("tailwind-variants").ClassValue;
|
|
34
|
+
hit?: import("tailwind-variants").ClassValue;
|
|
35
|
+
faded?: import("tailwind-variants").ClassValue;
|
|
36
|
+
tooltip?: import("tailwind-variants").ClassValue;
|
|
37
|
+
tooltipLabel?: import("tailwind-variants").ClassValue;
|
|
38
|
+
tooltipValue?: import("tailwind-variants").ClassValue;
|
|
39
|
+
};
|
|
40
|
+
};
|
|
41
|
+
} | {}, {
|
|
42
|
+
root: string;
|
|
43
|
+
/**
|
|
44
|
+
* The tooltip's coordinates come from the SVG, so the SVG has to be its
|
|
45
|
+
* positioning context. Anchoring to the root instead shifts it up by the
|
|
46
|
+
* height of anything above the plot — the legend, most obviously.
|
|
47
|
+
*/
|
|
48
|
+
plot: string;
|
|
49
|
+
svg: string;
|
|
50
|
+
/** Hairline and solid — a dashed grid competes with the marks. */
|
|
51
|
+
grid: string;
|
|
52
|
+
/** Text never wears the series colour; identity comes from the mark. */
|
|
53
|
+
tick: string;
|
|
54
|
+
category: string;
|
|
55
|
+
bar: string;
|
|
56
|
+
/** Hit target, deliberately wider than the mark it selects. */
|
|
57
|
+
hit: string;
|
|
58
|
+
/** Dims the rest of the series so the hovered bar reads as selected. */
|
|
59
|
+
faded: string;
|
|
60
|
+
tooltip: string;
|
|
61
|
+
tooltipLabel: string;
|
|
62
|
+
tooltipValue: string;
|
|
63
|
+
/** Reachable by screen readers and by nobody's eyes. */
|
|
64
|
+
table: string;
|
|
65
|
+
}, undefined, {
|
|
66
|
+
[key: string]: {
|
|
67
|
+
[key: string]: import("tailwind-variants").ClassValue | {
|
|
68
|
+
root?: import("tailwind-variants").ClassValue;
|
|
69
|
+
svg?: import("tailwind-variants").ClassValue;
|
|
70
|
+
table?: import("tailwind-variants").ClassValue;
|
|
71
|
+
plot?: import("tailwind-variants").ClassValue;
|
|
72
|
+
grid?: import("tailwind-variants").ClassValue;
|
|
73
|
+
tick?: import("tailwind-variants").ClassValue;
|
|
74
|
+
category?: import("tailwind-variants").ClassValue;
|
|
75
|
+
bar?: import("tailwind-variants").ClassValue;
|
|
76
|
+
hit?: import("tailwind-variants").ClassValue;
|
|
77
|
+
faded?: import("tailwind-variants").ClassValue;
|
|
78
|
+
tooltip?: import("tailwind-variants").ClassValue;
|
|
79
|
+
tooltipLabel?: import("tailwind-variants").ClassValue;
|
|
80
|
+
tooltipValue?: import("tailwind-variants").ClassValue;
|
|
81
|
+
};
|
|
82
|
+
};
|
|
83
|
+
} | {}, {
|
|
84
|
+
root: string;
|
|
85
|
+
/**
|
|
86
|
+
* The tooltip's coordinates come from the SVG, so the SVG has to be its
|
|
87
|
+
* positioning context. Anchoring to the root instead shifts it up by the
|
|
88
|
+
* height of anything above the plot — the legend, most obviously.
|
|
89
|
+
*/
|
|
90
|
+
plot: string;
|
|
91
|
+
svg: string;
|
|
92
|
+
/** Hairline and solid — a dashed grid competes with the marks. */
|
|
93
|
+
grid: string;
|
|
94
|
+
/** Text never wears the series colour; identity comes from the mark. */
|
|
95
|
+
tick: string;
|
|
96
|
+
category: string;
|
|
97
|
+
bar: string;
|
|
98
|
+
/** Hit target, deliberately wider than the mark it selects. */
|
|
99
|
+
hit: string;
|
|
100
|
+
/** Dims the rest of the series so the hovered bar reads as selected. */
|
|
101
|
+
faded: string;
|
|
102
|
+
tooltip: string;
|
|
103
|
+
tooltipLabel: string;
|
|
104
|
+
tooltipValue: string;
|
|
105
|
+
/** Reachable by screen readers and by nobody's eyes. */
|
|
106
|
+
table: string;
|
|
107
|
+
}, import("tailwind-variants").TVReturnType<unknown, {
|
|
108
|
+
root: string;
|
|
109
|
+
/**
|
|
110
|
+
* The tooltip's coordinates come from the SVG, so the SVG has to be its
|
|
111
|
+
* positioning context. Anchoring to the root instead shifts it up by the
|
|
112
|
+
* height of anything above the plot — the legend, most obviously.
|
|
113
|
+
*/
|
|
114
|
+
plot: string;
|
|
115
|
+
svg: string;
|
|
116
|
+
/** Hairline and solid — a dashed grid competes with the marks. */
|
|
117
|
+
grid: string;
|
|
118
|
+
/** Text never wears the series colour; identity comes from the mark. */
|
|
119
|
+
tick: string;
|
|
120
|
+
category: string;
|
|
121
|
+
bar: string;
|
|
122
|
+
/** Hit target, deliberately wider than the mark it selects. */
|
|
123
|
+
hit: string;
|
|
124
|
+
/** Dims the rest of the series so the hovered bar reads as selected. */
|
|
125
|
+
faded: string;
|
|
126
|
+
tooltip: string;
|
|
127
|
+
tooltipLabel: string;
|
|
128
|
+
tooltipValue: string;
|
|
129
|
+
/** Reachable by screen readers and by nobody's eyes. */
|
|
130
|
+
table: string;
|
|
131
|
+
}, undefined, unknown, unknown, undefined>>;
|
|
132
|
+
export type BarChartSlots = keyof ReturnType<typeof barChartTheme>;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { tv as e } from "tailwind-variants";
|
|
2
|
+
//#region src/theme/bar-chart.ts
|
|
3
|
+
var t = e({ slots: {
|
|
4
|
+
root: "w-full text-primary",
|
|
5
|
+
plot: "relative",
|
|
6
|
+
svg: "block w-full overflow-visible",
|
|
7
|
+
grid: "stroke-border",
|
|
8
|
+
tick: "fill-muted-foreground text-xs [font-variant-numeric:tabular-nums]",
|
|
9
|
+
category: "fill-muted-foreground text-xs",
|
|
10
|
+
bar: "fill-current transition-opacity",
|
|
11
|
+
hit: "fill-transparent",
|
|
12
|
+
faded: "opacity-30",
|
|
13
|
+
tooltip: "pointer-events-none absolute z-10 flex items-baseline gap-1.5 rounded-lg border border-border bg-background px-2 py-1 text-xs whitespace-nowrap text-foreground shadow-md",
|
|
14
|
+
tooltipLabel: "text-muted-foreground",
|
|
15
|
+
tooltipValue: "font-medium [font-variant-numeric:tabular-nums]",
|
|
16
|
+
table: "sr-only"
|
|
17
|
+
} });
|
|
18
|
+
//#endregion
|
|
19
|
+
export { t as barChartTheme };
|
|
@@ -3,8 +3,8 @@ export declare const breadcrumbTheme: import("tailwind-variants").TVReturnType<{
|
|
|
3
3
|
[key: string]: import("tailwind-variants").ClassValue | {
|
|
4
4
|
root?: import("tailwind-variants").ClassValue;
|
|
5
5
|
link?: import("tailwind-variants").ClassValue;
|
|
6
|
-
list?: import("tailwind-variants").ClassValue;
|
|
7
6
|
item?: import("tailwind-variants").ClassValue;
|
|
7
|
+
list?: import("tailwind-variants").ClassValue;
|
|
8
8
|
current?: import("tailwind-variants").ClassValue;
|
|
9
9
|
separator?: import("tailwind-variants").ClassValue;
|
|
10
10
|
};
|
|
@@ -14,8 +14,8 @@ export declare const breadcrumbTheme: import("tailwind-variants").TVReturnType<{
|
|
|
14
14
|
[x: string]: import("tailwind-variants").ClassValue | {
|
|
15
15
|
root?: import("tailwind-variants").ClassValue;
|
|
16
16
|
link?: import("tailwind-variants").ClassValue;
|
|
17
|
-
list?: import("tailwind-variants").ClassValue;
|
|
18
17
|
item?: import("tailwind-variants").ClassValue;
|
|
18
|
+
list?: import("tailwind-variants").ClassValue;
|
|
19
19
|
current?: import("tailwind-variants").ClassValue;
|
|
20
20
|
separator?: import("tailwind-variants").ClassValue;
|
|
21
21
|
};
|
|
@@ -33,8 +33,8 @@ export declare const breadcrumbTheme: import("tailwind-variants").TVReturnType<{
|
|
|
33
33
|
[key: string]: import("tailwind-variants").ClassValue | {
|
|
34
34
|
root?: import("tailwind-variants").ClassValue;
|
|
35
35
|
link?: import("tailwind-variants").ClassValue;
|
|
36
|
-
list?: import("tailwind-variants").ClassValue;
|
|
37
36
|
item?: import("tailwind-variants").ClassValue;
|
|
37
|
+
list?: import("tailwind-variants").ClassValue;
|
|
38
38
|
current?: import("tailwind-variants").ClassValue;
|
|
39
39
|
separator?: import("tailwind-variants").ClassValue;
|
|
40
40
|
};
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared by every multi-series chart. A legend is mandatory from two series
|
|
3
|
+
* up: colour alone is not a dependable identity channel, and the swatch beside
|
|
4
|
+
* the name is what makes it one.
|
|
5
|
+
*/
|
|
6
|
+
export declare const chartLegendTheme: import("tailwind-variants").TVReturnType<{
|
|
7
|
+
[key: string]: {
|
|
8
|
+
[key: string]: import("tailwind-variants").ClassValue | {
|
|
9
|
+
root?: import("tailwind-variants").ClassValue;
|
|
10
|
+
item?: import("tailwind-variants").ClassValue;
|
|
11
|
+
swatch?: import("tailwind-variants").ClassValue;
|
|
12
|
+
name?: import("tailwind-variants").ClassValue;
|
|
13
|
+
};
|
|
14
|
+
};
|
|
15
|
+
} | {
|
|
16
|
+
[x: string]: {
|
|
17
|
+
[x: string]: import("tailwind-variants").ClassValue | {
|
|
18
|
+
root?: import("tailwind-variants").ClassValue;
|
|
19
|
+
item?: import("tailwind-variants").ClassValue;
|
|
20
|
+
swatch?: import("tailwind-variants").ClassValue;
|
|
21
|
+
name?: import("tailwind-variants").ClassValue;
|
|
22
|
+
};
|
|
23
|
+
};
|
|
24
|
+
} | {}, {
|
|
25
|
+
root: string;
|
|
26
|
+
item: string;
|
|
27
|
+
/** The mark carries the series colour. */
|
|
28
|
+
swatch: string;
|
|
29
|
+
/** The text never does — a light hue is illegible as type on the surface. */
|
|
30
|
+
name: string;
|
|
31
|
+
}, undefined, {
|
|
32
|
+
[key: string]: {
|
|
33
|
+
[key: string]: import("tailwind-variants").ClassValue | {
|
|
34
|
+
root?: import("tailwind-variants").ClassValue;
|
|
35
|
+
item?: import("tailwind-variants").ClassValue;
|
|
36
|
+
swatch?: import("tailwind-variants").ClassValue;
|
|
37
|
+
name?: import("tailwind-variants").ClassValue;
|
|
38
|
+
};
|
|
39
|
+
};
|
|
40
|
+
} | {}, {
|
|
41
|
+
root: string;
|
|
42
|
+
item: string;
|
|
43
|
+
/** The mark carries the series colour. */
|
|
44
|
+
swatch: string;
|
|
45
|
+
/** The text never does — a light hue is illegible as type on the surface. */
|
|
46
|
+
name: string;
|
|
47
|
+
}, import("tailwind-variants").TVReturnType<unknown, {
|
|
48
|
+
root: string;
|
|
49
|
+
item: string;
|
|
50
|
+
/** The mark carries the series colour. */
|
|
51
|
+
swatch: string;
|
|
52
|
+
/** The text never does — a light hue is illegible as type on the surface. */
|
|
53
|
+
name: string;
|
|
54
|
+
}, undefined, unknown, unknown, undefined>>;
|
|
55
|
+
export type ChartLegendSlots = keyof ReturnType<typeof chartLegendTheme>;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { tv as e } from "tailwind-variants";
|
|
2
|
+
//#region src/theme/chart-legend.ts
|
|
3
|
+
var t = e({ slots: {
|
|
4
|
+
root: "flex flex-wrap items-center gap-x-4 gap-y-1.5 pb-4",
|
|
5
|
+
item: "flex items-center gap-1.5 text-xs",
|
|
6
|
+
swatch: "size-2.5 shrink-0 rounded-full",
|
|
7
|
+
name: "text-muted-foreground"
|
|
8
|
+
} });
|
|
9
|
+
//#endregion
|
|
10
|
+
export { t as chartLegendTheme };
|
package/dist/theme/index.d.ts
CHANGED
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
export * from './alert';
|
|
2
2
|
export * from './badge';
|
|
3
3
|
export * from './banner';
|
|
4
|
+
export * from './bar-chart';
|
|
4
5
|
export * from './breadcrumb';
|
|
5
6
|
export * from './button';
|
|
6
7
|
export * from './button-group';
|
|
7
8
|
export * from './card';
|
|
9
|
+
export * from './chart-legend';
|
|
8
10
|
export * from './checkbox';
|
|
9
11
|
export * from './combobox';
|
|
10
12
|
export * from './date-picker';
|
|
@@ -14,6 +16,7 @@ export * from './empty-state';
|
|
|
14
16
|
export * from './file-upload';
|
|
15
17
|
export * from './input';
|
|
16
18
|
export * from './label';
|
|
19
|
+
export * from './line-chart';
|
|
17
20
|
export * from './number-input';
|
|
18
21
|
export * from './pagination';
|
|
19
22
|
export * from './password-input';
|
|
@@ -23,6 +26,7 @@ export * from './radio-group';
|
|
|
23
26
|
export * from './select';
|
|
24
27
|
export * from './separator';
|
|
25
28
|
export * from './skeleton';
|
|
29
|
+
export * from './sparkline';
|
|
26
30
|
export * from './stat';
|
|
27
31
|
export * from './stepper';
|
|
28
32
|
export * from './switch';
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
export declare const lineChartTheme: import("tailwind-variants").TVReturnType<{
|
|
2
|
+
[key: string]: {
|
|
3
|
+
[key: string]: import("tailwind-variants").ClassValue | {
|
|
4
|
+
root?: import("tailwind-variants").ClassValue;
|
|
5
|
+
svg?: import("tailwind-variants").ClassValue;
|
|
6
|
+
area?: import("tailwind-variants").ClassValue;
|
|
7
|
+
table?: import("tailwind-variants").ClassValue;
|
|
8
|
+
line?: import("tailwind-variants").ClassValue;
|
|
9
|
+
marker?: import("tailwind-variants").ClassValue;
|
|
10
|
+
plot?: import("tailwind-variants").ClassValue;
|
|
11
|
+
grid?: import("tailwind-variants").ClassValue;
|
|
12
|
+
tick?: import("tailwind-variants").ClassValue;
|
|
13
|
+
category?: import("tailwind-variants").ClassValue;
|
|
14
|
+
hit?: import("tailwind-variants").ClassValue;
|
|
15
|
+
tooltip?: import("tailwind-variants").ClassValue;
|
|
16
|
+
tooltipLabel?: import("tailwind-variants").ClassValue;
|
|
17
|
+
tooltipValue?: import("tailwind-variants").ClassValue;
|
|
18
|
+
crosshair?: import("tailwind-variants").ClassValue;
|
|
19
|
+
markerRing?: import("tailwind-variants").ClassValue;
|
|
20
|
+
};
|
|
21
|
+
};
|
|
22
|
+
} | {
|
|
23
|
+
[x: string]: {
|
|
24
|
+
[x: string]: import("tailwind-variants").ClassValue | {
|
|
25
|
+
root?: import("tailwind-variants").ClassValue;
|
|
26
|
+
svg?: import("tailwind-variants").ClassValue;
|
|
27
|
+
area?: import("tailwind-variants").ClassValue;
|
|
28
|
+
table?: import("tailwind-variants").ClassValue;
|
|
29
|
+
line?: import("tailwind-variants").ClassValue;
|
|
30
|
+
marker?: import("tailwind-variants").ClassValue;
|
|
31
|
+
plot?: import("tailwind-variants").ClassValue;
|
|
32
|
+
grid?: import("tailwind-variants").ClassValue;
|
|
33
|
+
tick?: import("tailwind-variants").ClassValue;
|
|
34
|
+
category?: import("tailwind-variants").ClassValue;
|
|
35
|
+
hit?: import("tailwind-variants").ClassValue;
|
|
36
|
+
tooltip?: import("tailwind-variants").ClassValue;
|
|
37
|
+
tooltipLabel?: import("tailwind-variants").ClassValue;
|
|
38
|
+
tooltipValue?: import("tailwind-variants").ClassValue;
|
|
39
|
+
crosshair?: import("tailwind-variants").ClassValue;
|
|
40
|
+
markerRing?: import("tailwind-variants").ClassValue;
|
|
41
|
+
};
|
|
42
|
+
};
|
|
43
|
+
} | {}, {
|
|
44
|
+
root: string;
|
|
45
|
+
/**
|
|
46
|
+
* The tooltip's coordinates come from the SVG, so the SVG has to be its
|
|
47
|
+
* positioning context. Anchoring to the root instead shifts it up by the
|
|
48
|
+
* height of anything above the plot — the legend, most obviously.
|
|
49
|
+
*/
|
|
50
|
+
plot: string;
|
|
51
|
+
svg: string;
|
|
52
|
+
grid: string;
|
|
53
|
+
tick: string;
|
|
54
|
+
category: string;
|
|
55
|
+
/** 2px, round join and cap, per the shared line-mark spec. */
|
|
56
|
+
line: string;
|
|
57
|
+
/** A wash at ~10%, never a saturated block competing with the line. */
|
|
58
|
+
area: string;
|
|
59
|
+
/** Recessive: it locates the reading, it is not a reading itself. */
|
|
60
|
+
crosshair: string;
|
|
61
|
+
marker: string;
|
|
62
|
+
/** Keeps the marker legible where it sits on top of the line. */
|
|
63
|
+
markerRing: string;
|
|
64
|
+
hit: string;
|
|
65
|
+
tooltip: string;
|
|
66
|
+
tooltipLabel: string;
|
|
67
|
+
tooltipValue: string;
|
|
68
|
+
table: string;
|
|
69
|
+
}, undefined, {
|
|
70
|
+
[key: string]: {
|
|
71
|
+
[key: string]: import("tailwind-variants").ClassValue | {
|
|
72
|
+
root?: import("tailwind-variants").ClassValue;
|
|
73
|
+
svg?: import("tailwind-variants").ClassValue;
|
|
74
|
+
area?: import("tailwind-variants").ClassValue;
|
|
75
|
+
table?: import("tailwind-variants").ClassValue;
|
|
76
|
+
line?: import("tailwind-variants").ClassValue;
|
|
77
|
+
marker?: import("tailwind-variants").ClassValue;
|
|
78
|
+
plot?: import("tailwind-variants").ClassValue;
|
|
79
|
+
grid?: import("tailwind-variants").ClassValue;
|
|
80
|
+
tick?: import("tailwind-variants").ClassValue;
|
|
81
|
+
category?: import("tailwind-variants").ClassValue;
|
|
82
|
+
hit?: import("tailwind-variants").ClassValue;
|
|
83
|
+
tooltip?: import("tailwind-variants").ClassValue;
|
|
84
|
+
tooltipLabel?: import("tailwind-variants").ClassValue;
|
|
85
|
+
tooltipValue?: import("tailwind-variants").ClassValue;
|
|
86
|
+
crosshair?: import("tailwind-variants").ClassValue;
|
|
87
|
+
markerRing?: import("tailwind-variants").ClassValue;
|
|
88
|
+
};
|
|
89
|
+
};
|
|
90
|
+
} | {}, {
|
|
91
|
+
root: string;
|
|
92
|
+
/**
|
|
93
|
+
* The tooltip's coordinates come from the SVG, so the SVG has to be its
|
|
94
|
+
* positioning context. Anchoring to the root instead shifts it up by the
|
|
95
|
+
* height of anything above the plot — the legend, most obviously.
|
|
96
|
+
*/
|
|
97
|
+
plot: string;
|
|
98
|
+
svg: string;
|
|
99
|
+
grid: string;
|
|
100
|
+
tick: string;
|
|
101
|
+
category: string;
|
|
102
|
+
/** 2px, round join and cap, per the shared line-mark spec. */
|
|
103
|
+
line: string;
|
|
104
|
+
/** A wash at ~10%, never a saturated block competing with the line. */
|
|
105
|
+
area: string;
|
|
106
|
+
/** Recessive: it locates the reading, it is not a reading itself. */
|
|
107
|
+
crosshair: string;
|
|
108
|
+
marker: string;
|
|
109
|
+
/** Keeps the marker legible where it sits on top of the line. */
|
|
110
|
+
markerRing: string;
|
|
111
|
+
hit: string;
|
|
112
|
+
tooltip: string;
|
|
113
|
+
tooltipLabel: string;
|
|
114
|
+
tooltipValue: string;
|
|
115
|
+
table: string;
|
|
116
|
+
}, import("tailwind-variants").TVReturnType<unknown, {
|
|
117
|
+
root: string;
|
|
118
|
+
/**
|
|
119
|
+
* The tooltip's coordinates come from the SVG, so the SVG has to be its
|
|
120
|
+
* positioning context. Anchoring to the root instead shifts it up by the
|
|
121
|
+
* height of anything above the plot — the legend, most obviously.
|
|
122
|
+
*/
|
|
123
|
+
plot: string;
|
|
124
|
+
svg: string;
|
|
125
|
+
grid: string;
|
|
126
|
+
tick: string;
|
|
127
|
+
category: string;
|
|
128
|
+
/** 2px, round join and cap, per the shared line-mark spec. */
|
|
129
|
+
line: string;
|
|
130
|
+
/** A wash at ~10%, never a saturated block competing with the line. */
|
|
131
|
+
area: string;
|
|
132
|
+
/** Recessive: it locates the reading, it is not a reading itself. */
|
|
133
|
+
crosshair: string;
|
|
134
|
+
marker: string;
|
|
135
|
+
/** Keeps the marker legible where it sits on top of the line. */
|
|
136
|
+
markerRing: string;
|
|
137
|
+
hit: string;
|
|
138
|
+
tooltip: string;
|
|
139
|
+
tooltipLabel: string;
|
|
140
|
+
tooltipValue: string;
|
|
141
|
+
table: string;
|
|
142
|
+
}, undefined, unknown, unknown, undefined>>;
|
|
143
|
+
export type LineChartSlots = keyof ReturnType<typeof lineChartTheme>;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { tv as e } from "tailwind-variants";
|
|
2
|
+
//#region src/theme/line-chart.ts
|
|
3
|
+
var t = e({ slots: {
|
|
4
|
+
root: "w-full text-primary",
|
|
5
|
+
plot: "relative",
|
|
6
|
+
svg: "block w-full overflow-visible",
|
|
7
|
+
grid: "stroke-border",
|
|
8
|
+
tick: "fill-muted-foreground text-xs [font-variant-numeric:tabular-nums]",
|
|
9
|
+
category: "fill-muted-foreground text-xs",
|
|
10
|
+
line: "fill-none stroke-current stroke-2 [stroke-linecap:round] [stroke-linejoin:round]",
|
|
11
|
+
area: "fill-current stroke-none opacity-10",
|
|
12
|
+
crosshair: "stroke-border",
|
|
13
|
+
marker: "fill-current",
|
|
14
|
+
markerRing: "fill-background",
|
|
15
|
+
hit: "fill-transparent",
|
|
16
|
+
tooltip: "pointer-events-none absolute z-10 flex items-baseline gap-1.5 rounded-lg border border-border bg-background px-2 py-1 text-xs whitespace-nowrap text-foreground shadow-md",
|
|
17
|
+
tooltipLabel: "text-muted-foreground",
|
|
18
|
+
tooltipValue: "font-medium [font-variant-numeric:tabular-nums]",
|
|
19
|
+
table: "sr-only"
|
|
20
|
+
} });
|
|
21
|
+
//#endregion
|
|
22
|
+
export { t as lineChartTheme };
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Colour comes from `currentColor`, so a sparkline recolours with a text
|
|
3
|
+
* utility and follows the theme and appearance without any JS. That is the
|
|
4
|
+
* whole reason these are SVG rather than canvas.
|
|
5
|
+
*/
|
|
6
|
+
export declare const sparklineTheme: import("tailwind-variants").TVReturnType<{
|
|
7
|
+
muted: {
|
|
8
|
+
true: {
|
|
9
|
+
root: string;
|
|
10
|
+
};
|
|
11
|
+
};
|
|
12
|
+
}, {
|
|
13
|
+
/** Carries the inset that keeps every mark inside the component's box. */
|
|
14
|
+
root: string;
|
|
15
|
+
plot: string;
|
|
16
|
+
/** 2px, round join and cap, per the shared line-mark spec. */
|
|
17
|
+
line: string;
|
|
18
|
+
/** A wash at ~10%, never a saturated block competing with the line. */
|
|
19
|
+
area: string;
|
|
20
|
+
dot: string;
|
|
21
|
+
/** Keeps the end dot legible where it sits on top of the line. */
|
|
22
|
+
ring: string;
|
|
23
|
+
}, undefined, {
|
|
24
|
+
muted: {
|
|
25
|
+
true: {
|
|
26
|
+
root: string;
|
|
27
|
+
};
|
|
28
|
+
};
|
|
29
|
+
}, {
|
|
30
|
+
/** Carries the inset that keeps every mark inside the component's box. */
|
|
31
|
+
root: string;
|
|
32
|
+
plot: string;
|
|
33
|
+
/** 2px, round join and cap, per the shared line-mark spec. */
|
|
34
|
+
line: string;
|
|
35
|
+
/** A wash at ~10%, never a saturated block competing with the line. */
|
|
36
|
+
area: string;
|
|
37
|
+
dot: string;
|
|
38
|
+
/** Keeps the end dot legible where it sits on top of the line. */
|
|
39
|
+
ring: string;
|
|
40
|
+
}, import("tailwind-variants").TVReturnType<{
|
|
41
|
+
muted: {
|
|
42
|
+
true: {
|
|
43
|
+
root: string;
|
|
44
|
+
};
|
|
45
|
+
};
|
|
46
|
+
}, {
|
|
47
|
+
/** Carries the inset that keeps every mark inside the component's box. */
|
|
48
|
+
root: string;
|
|
49
|
+
plot: string;
|
|
50
|
+
/** 2px, round join and cap, per the shared line-mark spec. */
|
|
51
|
+
line: string;
|
|
52
|
+
/** A wash at ~10%, never a saturated block competing with the line. */
|
|
53
|
+
area: string;
|
|
54
|
+
dot: string;
|
|
55
|
+
/** Keeps the end dot legible where it sits on top of the line. */
|
|
56
|
+
ring: string;
|
|
57
|
+
}, undefined, unknown, unknown, undefined>>;
|
|
58
|
+
export type SparklineSlots = keyof ReturnType<typeof sparklineTheme>;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { tv as e } from "tailwind-variants";
|
|
2
|
+
//#region src/theme/sparkline.ts
|
|
3
|
+
var t = e({
|
|
4
|
+
slots: {
|
|
5
|
+
root: "block w-full text-primary",
|
|
6
|
+
plot: "block w-full overflow-visible",
|
|
7
|
+
line: "fill-none stroke-current stroke-2 [stroke-linecap:round] [stroke-linejoin:round]",
|
|
8
|
+
area: "fill-current stroke-none opacity-10",
|
|
9
|
+
dot: "stroke-current [stroke-linecap:round]",
|
|
10
|
+
ring: "[stroke:var(--iryx-background)] [stroke-linecap:round]"
|
|
11
|
+
},
|
|
12
|
+
variants: { muted: { true: { root: "text-muted-foreground" } } }
|
|
13
|
+
});
|
|
14
|
+
//#endregion
|
|
15
|
+
export { t as sparklineTheme };
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "iryx-ui",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.10.1",
|
|
5
5
|
"description": "A Vue 3 component library built on Reka UI and Tailwind CSS v4.",
|
|
6
6
|
"author": "therok1",
|
|
7
7
|
"license": "MIT",
|
|
@@ -41,6 +41,12 @@
|
|
|
41
41
|
"engines": {
|
|
42
42
|
"node": ">=20"
|
|
43
43
|
},
|
|
44
|
+
"scripts": {
|
|
45
|
+
"build": "vite build && vue-tsc -p tsconfig.build.json",
|
|
46
|
+
"test": "vitest run",
|
|
47
|
+
"test:watch": "vitest",
|
|
48
|
+
"typecheck": "vue-tsc --noEmit"
|
|
49
|
+
},
|
|
44
50
|
"peerDependencies": {
|
|
45
51
|
"vue": "^3.5.0"
|
|
46
52
|
},
|
|
@@ -62,11 +68,5 @@
|
|
|
62
68
|
"vitest": "^4.1.8",
|
|
63
69
|
"vue": "^3.5.35",
|
|
64
70
|
"vue-tsc": "^3.3.4"
|
|
65
|
-
},
|
|
66
|
-
"scripts": {
|
|
67
|
-
"build": "vite build && vue-tsc -p tsconfig.build.json",
|
|
68
|
-
"test": "vitest run",
|
|
69
|
-
"test:watch": "vitest",
|
|
70
|
-
"typecheck": "vue-tsc --noEmit"
|
|
71
71
|
}
|
|
72
|
-
}
|
|
72
|
+
}
|
package/theme.css
CHANGED
|
@@ -77,6 +77,30 @@
|
|
|
77
77
|
--iryx-info-muted: oklch(0.97 0.014 254.604);
|
|
78
78
|
--iryx-info-muted-foreground: oklch(0.488 0.243 264.376);
|
|
79
79
|
--iryx-info-border: oklch(0.882 0.059 254.128);
|
|
80
|
+
|
|
81
|
+
/*
|
|
82
|
+
* Categorical chart series. Identity only — which series a mark belongs to,
|
|
83
|
+
* never how large it is. Assign in order and never cycle: a ninth series
|
|
84
|
+
* folds into "Other" or becomes small multiples, because a generated ninth
|
|
85
|
+
* hue cannot be checked for the separation the first eight were chosen for.
|
|
86
|
+
*
|
|
87
|
+
* Status colours are deliberately NOT reused here. A series that happens to
|
|
88
|
+
* be slot 4 must never be mistaken for a warning.
|
|
89
|
+
*
|
|
90
|
+
* These steps are not eyeballed. They clear the lightness band, a chroma
|
|
91
|
+
* floor of 0.10, protanopia/deuteranopia separation and contrast against the
|
|
92
|
+
* surface, verified with the dataviz validator. Dark has its own steps,
|
|
93
|
+
* validated against the dark surface — not an automatic flip. Re-run the
|
|
94
|
+
* validator before changing any of them.
|
|
95
|
+
*/
|
|
96
|
+
--iryx-chart-1: oklch(0.59 0.2 277);
|
|
97
|
+
--iryx-chart-2: oklch(0.68 0.17 50);
|
|
98
|
+
--iryx-chart-3: oklch(0.62 0.13 175);
|
|
99
|
+
--iryx-chart-4: oklch(0.75 0.16 90);
|
|
100
|
+
--iryx-chart-5: oklch(0.68 0.15 350);
|
|
101
|
+
--iryx-chart-6: oklch(0.52 0.14 145);
|
|
102
|
+
--iryx-chart-7: oklch(0.55 0.17 240);
|
|
103
|
+
--iryx-chart-8: oklch(0.58 0.21 25);
|
|
80
104
|
}
|
|
81
105
|
|
|
82
106
|
.dark {
|
|
@@ -116,6 +140,16 @@
|
|
|
116
140
|
--iryx-info-muted: oklch(0.282 0.091 267.935);
|
|
117
141
|
--iryx-info-muted-foreground: oklch(0.809 0.105 251.813);
|
|
118
142
|
--iryx-info-border: oklch(0.379 0.146 265.522);
|
|
143
|
+
|
|
144
|
+
/* Chart series — their own steps, validated against the dark surface. */
|
|
145
|
+
--iryx-chart-1: oklch(0.62 0.19 277);
|
|
146
|
+
--iryx-chart-2: oklch(0.66 0.16 50);
|
|
147
|
+
--iryx-chart-3: oklch(0.62 0.13 175);
|
|
148
|
+
--iryx-chart-4: oklch(0.65 0.15 90);
|
|
149
|
+
--iryx-chart-5: oklch(0.65 0.15 350);
|
|
150
|
+
--iryx-chart-6: oklch(0.58 0.14 145);
|
|
151
|
+
--iryx-chart-7: oklch(0.6 0.16 240);
|
|
152
|
+
--iryx-chart-8: oklch(0.6 0.19 25);
|
|
119
153
|
}
|
|
120
154
|
|
|
121
155
|
@theme inline {
|
|
@@ -152,6 +186,14 @@
|
|
|
152
186
|
--color-info-muted: var(--iryx-info-muted);
|
|
153
187
|
--color-info-muted-foreground: var(--iryx-info-muted-foreground);
|
|
154
188
|
--color-info-border: var(--iryx-info-border);
|
|
189
|
+
--color-chart-1: var(--iryx-chart-1);
|
|
190
|
+
--color-chart-2: var(--iryx-chart-2);
|
|
191
|
+
--color-chart-3: var(--iryx-chart-3);
|
|
192
|
+
--color-chart-4: var(--iryx-chart-4);
|
|
193
|
+
--color-chart-5: var(--iryx-chart-5);
|
|
194
|
+
--color-chart-6: var(--iryx-chart-6);
|
|
195
|
+
--color-chart-7: var(--iryx-chart-7);
|
|
196
|
+
--color-chart-8: var(--iryx-chart-8);
|
|
155
197
|
--animate-progress-indeterminate: progress-indeterminate 1.5s ease-in-out infinite;
|
|
156
198
|
--animate-fade-in: fade-in 150ms ease-out;
|
|
157
199
|
--animate-fade-out: fade-out 150ms ease-in;
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
//#region src/component-names.ts
|
|
2
|
-
var e = /* @__PURE__ */ "Alert.App.Badge.Banner.Breadcrumb.Button.ButtonGroup.Card.Checkbox.Combobox.ConfirmDialog.DatePicker.DateRangePicker.Dialog.DropdownMenu.EmptyState.FileUpload.Form.FormField.Input.Label.NumberInput.Pagination.PasswordInput.Progress.RadioGroup.Select.Separator.Skeleton.Stat.Stepper.Switch.Table.Tabs.Textarea.Toaster.Tooltip".split(".");
|
|
3
|
-
//#endregion
|
|
4
|
-
export { e as componentNames };
|