iryx-ui 0.12.0 → 0.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +35 -1315
- package/dist/component-names.d.ts +1 -1
- package/dist/component-names.js +1 -1
- package/dist/components/Accordion.js +5 -0
- package/dist/components/Accordion.vue.d.ts +80 -0
- package/dist/components/Accordion.vue_vue_type_script_setup_true_lang.js +87 -0
- package/dist/components/Alert.vue.d.ts +1 -1
- package/dist/components/Alert.vue_vue_type_script_setup_true_lang.js +7 -7
- package/dist/components/App.vue.d.ts +1 -1
- package/dist/components/AppShell.js +5 -0
- package/dist/components/AppShell.vue.d.ts +46 -0
- package/dist/components/AppShell.vue_vue_type_script_setup_true_lang.js +59 -0
- package/dist/components/AspectRatio.js +5 -0
- package/dist/components/AspectRatio.vue.d.ts +26 -0
- package/dist/components/AspectRatio.vue_vue_type_script_setup_true_lang.js +27 -0
- package/dist/components/Avatar.js +5 -0
- package/dist/components/Avatar.vue.d.ts +52 -0
- package/dist/components/Avatar.vue_vue_type_script_setup_true_lang.js +67 -0
- package/dist/components/AvatarGroup.js +5 -0
- package/dist/components/AvatarGroup.vue.d.ts +39 -0
- package/dist/components/AvatarGroup.vue_vue_type_script_setup_true_lang.js +45 -0
- package/dist/components/Badge.vue.d.ts +1 -1
- package/dist/components/Banner.vue.d.ts +2 -2
- package/dist/components/BarChart.vue.d.ts +1 -1
- package/dist/components/BarChart.vue_vue_type_script_setup_true_lang.js +14 -14
- package/dist/components/Button.vue.d.ts +2 -2
- package/dist/components/ButtonGroup.vue.d.ts +1 -1
- package/dist/components/Card.vue.d.ts +1 -1
- package/dist/components/Collapsible.js +5 -0
- package/dist/components/Collapsible.vue.d.ts +58 -0
- package/dist/components/Collapsible.vue_vue_type_script_setup_true_lang.js +67 -0
- package/dist/components/ColorPicker.js +5 -0
- package/dist/components/ColorPicker.vue.d.ts +49 -0
- package/dist/components/ColorPicker.vue_vue_type_script_setup_true_lang.js +172 -0
- package/dist/components/Combobox.vue.d.ts +6 -6
- package/dist/components/CommandPalette.js +5 -0
- package/dist/components/CommandPalette.vue.d.ts +63 -0
- package/dist/components/CommandPalette.vue_vue_type_script_setup_true_lang.js +185 -0
- package/dist/components/Container.js +5 -0
- package/dist/components/Container.vue.d.ts +33 -0
- package/dist/components/Container.vue_vue_type_script_setup_true_lang.js +40 -0
- package/dist/components/ContextMenu.js +5 -0
- package/dist/components/ContextMenu.vue.d.ts +42 -0
- package/dist/components/ContextMenu.vue_vue_type_script_setup_true_lang.js +49 -0
- package/dist/components/DateRangePicker.vue.d.ts +1 -1
- package/dist/components/Dialog.vue.d.ts +1 -1
- package/dist/components/Drawer.vue.d.ts +2 -2
- package/dist/components/EmptyState.vue.d.ts +1 -1
- package/dist/components/Input.vue.d.ts +1 -1
- package/dist/components/Input.vue_vue_type_script_setup_true_lang.js +4 -4
- package/dist/components/Kbd.js +5 -0
- package/dist/components/Kbd.vue.d.ts +46 -0
- package/dist/components/Kbd.vue_vue_type_script_setup_true_lang.js +41 -0
- package/dist/components/LineChart.vue_vue_type_script_setup_true_lang.js +19 -19
- package/dist/components/Menubar.js +5 -0
- package/dist/components/Menubar.vue.d.ts +62 -0
- package/dist/components/Menubar.vue_vue_type_script_setup_true_lang.js +79 -0
- package/dist/components/NavigationMenu.js +5 -0
- package/dist/components/NavigationMenu.vue.d.ts +75 -0
- package/dist/components/NavigationMenu.vue_vue_type_script_setup_true_lang.js +167 -0
- package/dist/components/NumberInput.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/components/PageHeader.js +5 -0
- package/dist/components/PageHeader.vue.d.ts +52 -0
- package/dist/components/PageHeader.vue_vue_type_script_setup_true_lang.js +59 -0
- package/dist/components/PinInput.js +5 -0
- package/dist/components/PinInput.vue.d.ts +65 -0
- package/dist/components/PinInput.vue_vue_type_script_setup_true_lang.js +76 -0
- package/dist/components/Popover.js +5 -0
- package/dist/components/Popover.vue.d.ts +75 -0
- package/dist/components/Popover.vue_vue_type_script_setup_true_lang.js +99 -0
- package/dist/components/Progress.vue.d.ts +20 -1
- package/dist/components/Progress.vue_vue_type_script_setup_true_lang.js +84 -44
- package/dist/components/RadioGroup.vue_vue_type_script_setup_true_lang.js +4 -1
- package/dist/components/ScrollArea.js +5 -0
- package/dist/components/ScrollArea.vue.d.ts +41 -0
- package/dist/components/ScrollArea.vue_vue_type_script_setup_true_lang.js +68 -0
- package/dist/components/ScrollFade.js +5 -0
- package/dist/components/ScrollFade.vue.d.ts +36 -0
- package/dist/components/ScrollFade.vue_vue_type_script_setup_true_lang.js +59 -0
- package/dist/components/Select.vue.d.ts +2 -2
- package/dist/components/Sidebar.js +5 -0
- package/dist/components/Sidebar.vue.d.ts +72 -0
- package/dist/components/Sidebar.vue_vue_type_script_setup_true_lang.js +183 -0
- package/dist/components/SignaturePad.js +5 -0
- package/dist/components/SignaturePad.vue.d.ts +60 -0
- package/dist/components/SignaturePad.vue_vue_type_script_setup_true_lang.js +158 -0
- package/dist/components/Skeleton.vue.d.ts +1 -1
- package/dist/components/Skeleton.vue_vue_type_script_setup_true_lang.js +8 -8
- package/dist/components/Slider.js +5 -0
- package/dist/components/Slider.vue.d.ts +80 -0
- package/dist/components/Slider.vue_vue_type_script_setup_true_lang.js +115 -0
- package/dist/components/Splitter.js +5 -0
- package/dist/components/Splitter.vue.d.ts +59 -0
- package/dist/components/Splitter.vue_vue_type_script_setup_true_lang.js +69 -0
- package/dist/components/Stat.vue.d.ts +1 -1
- package/dist/components/Switch.vue.d.ts +1 -0
- package/dist/components/Switch.vue_vue_type_script_setup_true_lang.js +7 -3
- package/dist/components/Table.vue.d.ts +7 -1
- package/dist/components/Table.vue_vue_type_script_setup_true_lang.js +73 -58
- package/dist/components/TagsInput.js +5 -0
- package/dist/components/TagsInput.vue.d.ts +71 -0
- package/dist/components/TagsInput.vue_vue_type_script_setup_true_lang.js +119 -0
- package/dist/components/Textarea.vue_vue_type_script_setup_true_lang.js +3 -3
- package/dist/components/TimeField.js +5 -0
- package/dist/components/TimeField.vue.d.ts +50 -0
- package/dist/components/TimeField.vue_vue_type_script_setup_true_lang.js +85 -0
- package/dist/components/Timeline.js +5 -0
- package/dist/components/Timeline.vue.d.ts +61 -0
- package/dist/components/Timeline.vue_vue_type_script_setup_true_lang.js +60 -0
- package/dist/components/Toaster.vue.d.ts +1 -1
- package/dist/components/Toggle.js +5 -0
- package/dist/components/Toggle.vue.d.ts +42 -0
- package/dist/components/Toggle.vue_vue_type_script_setup_true_lang.js +52 -0
- package/dist/components/ToggleGroup.js +5 -0
- package/dist/components/ToggleGroup.vue.d.ts +64 -0
- package/dist/components/ToggleGroup.vue_vue_type_script_setup_true_lang.js +78 -0
- package/dist/components/Toolbar.js +5 -0
- package/dist/components/Toolbar.vue.d.ts +52 -0
- package/dist/components/Toolbar.vue_vue_type_script_setup_true_lang.js +94 -0
- package/dist/components/Tree.js +5 -0
- package/dist/components/Tree.vue.d.ts +70 -0
- package/dist/components/Tree.vue_vue_type_script_setup_true_lang.js +112 -0
- package/dist/components/index.d.ts +29 -0
- package/dist/components/index.js +144 -86
- package/dist/composables/appearance.js +5 -1
- package/dist/composables/cartesian.d.ts +11 -0
- package/dist/composables/cartesian.js +18 -19
- package/dist/composables/command-palette.d.ts +42 -0
- package/dist/composables/command-palette.js +32 -0
- package/dist/composables/date.d.ts +18 -2
- package/dist/composables/date.js +23 -12
- package/dist/composables/kbd.d.ts +26 -0
- package/dist/composables/kbd.js +161 -0
- package/dist/composables/navigation-menu.d.ts +29 -0
- package/dist/composables/navigation-menu.js +6 -0
- package/dist/composables/scroll-fade.d.ts +35 -0
- package/dist/composables/scroll-fade.js +36 -0
- package/dist/composables/sidebar.d.ts +35 -0
- package/dist/composables/sidebar.js +23 -0
- package/dist/composables/signature.d.ts +22 -0
- package/dist/composables/signature.js +13 -0
- package/dist/index.d.ts +35 -0
- package/dist/index.js +153 -93
- package/dist/theme/accordion.d.ts +68 -0
- package/dist/theme/accordion.js +24 -0
- package/dist/theme/alert.d.ts +0 -3
- package/dist/theme/app-shell.d.ts +77 -0
- package/dist/theme/app-shell.js +35 -0
- package/dist/theme/avatar.d.ts +253 -0
- package/dist/theme/avatar.js +84 -0
- package/dist/theme/banner.d.ts +0 -9
- package/dist/theme/bar-chart.d.ts +0 -16
- package/dist/theme/breadcrumb.d.ts +3 -3
- package/dist/theme/button-group.d.ts +0 -3
- package/dist/theme/button.d.ts +0 -3
- package/dist/theme/card.js +2 -2
- package/dist/theme/chart-legend.d.ts +3 -11
- package/dist/theme/collapsible.d.ts +44 -0
- package/dist/theme/collapsible.js +17 -0
- package/dist/theme/color-picker.d.ts +98 -0
- package/dist/theme/color-picker.js +19 -0
- package/dist/theme/command-palette.d.ts +122 -0
- package/dist/theme/command-palette.js +22 -0
- package/dist/theme/container.d.ts +101 -0
- package/dist/theme/container.js +26 -0
- package/dist/theme/date-picker.d.ts +12 -0
- package/dist/theme/date-picker.js +1 -1
- package/dist/theme/dropdown-menu.d.ts +0 -9
- package/dist/theme/file-upload.d.ts +0 -3
- package/dist/theme/form.d.ts +12 -12
- package/dist/theme/index.d.ts +25 -0
- package/dist/theme/kbd.d.ts +71 -0
- package/dist/theme/kbd.js +29 -0
- package/dist/theme/line-chart.d.ts +0 -9
- package/dist/theme/menubar.d.ts +29 -0
- package/dist/theme/menubar.js +11 -0
- package/dist/theme/navigation-menu.d.ts +161 -0
- package/dist/theme/navigation-menu.js +43 -0
- package/dist/theme/number-input.d.ts +0 -3
- package/dist/theme/page-header.d.ts +47 -0
- package/dist/theme/page-header.js +17 -0
- package/dist/theme/pagination.d.ts +0 -3
- package/dist/theme/pin-input.d.ts +86 -0
- package/dist/theme/pin-input.js +32 -0
- package/dist/theme/popover.d.ts +119 -0
- package/dist/theme/popover.js +31 -0
- package/dist/theme/presets.d.ts +0 -2
- package/dist/theme/progress.d.ts +93 -0
- package/dist/theme/progress.js +37 -7
- package/dist/theme/radio-group.d.ts +24 -0
- package/dist/theme/radio-group.js +23 -14
- package/dist/theme/scroll-area.d.ts +65 -0
- package/dist/theme/scroll-area.js +57 -0
- package/dist/theme/scroll-fade.d.ts +35 -0
- package/dist/theme/scroll-fade.js +12 -0
- package/dist/theme/sidebar.d.ts +167 -0
- package/dist/theme/sidebar.js +43 -0
- package/dist/theme/signature-pad.d.ts +50 -0
- package/dist/theme/signature-pad.js +17 -0
- package/dist/theme/slider.d.ts +128 -0
- package/dist/theme/slider.js +49 -0
- package/dist/theme/sparkline.d.ts +0 -6
- package/dist/theme/splitter.d.ts +59 -0
- package/dist/theme/splitter.js +25 -0
- package/dist/theme/stat.d.ts +0 -3
- package/dist/theme/stepper.js +2 -2
- package/dist/theme/switch.d.ts +53 -29
- package/dist/theme/switch.js +33 -8
- package/dist/theme/table.d.ts +51 -3
- package/dist/theme/table.js +8 -3
- package/dist/theme/tabs.d.ts +0 -3
- package/dist/theme/tags-input.d.ts +110 -0
- package/dist/theme/tags-input.js +42 -0
- package/dist/theme/time-field.d.ts +68 -0
- package/dist/theme/time-field.js +21 -0
- package/dist/theme/timeline.d.ts +182 -0
- package/dist/theme/timeline.js +83 -0
- package/dist/theme/toggle.d.ts +145 -0
- package/dist/theme/toggle.js +84 -0
- package/dist/theme/toolbar.d.ts +56 -0
- package/dist/theme/toolbar.js +21 -0
- package/dist/theme/tree.d.ts +68 -0
- package/dist/theme/tree.js +28 -0
- package/package.json +2 -2
- package/theme.css +221 -0
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
import { useIryxUiConfig as e } from "../config.js";
|
|
2
|
+
import t from "./Icon.js";
|
|
3
|
+
import { commandHaystack as n, matchesHotkey as r, toCommandGroups as i } from "../composables/command-palette.js";
|
|
4
|
+
import { commandPaletteTheme as a } from "../theme/command-palette.js";
|
|
5
|
+
import o from "./Kbd.js";
|
|
6
|
+
import { Fragment as s, computed as c, createBlock as l, createCommentVNode as u, createElementBlock as d, createElementVNode as f, createTextVNode as p, createVNode as m, defineComponent as h, mergeModels as g, normalizeClass as _, onBeforeUnmount as v, onMounted as y, openBlock as b, ref as x, renderList as S, renderSlot as C, toDisplayString as w, unref as T, useModel as E, watch as D, withCtx as O } from "vue";
|
|
7
|
+
import { Search01Icon as k } from "@hugeicons/core-free-icons";
|
|
8
|
+
import { DialogContent as ee, DialogOverlay as te, DialogPortal as ne, DialogRoot as A, DialogTitle as j, ListboxContent as M, ListboxFilter as N, ListboxGroup as P, ListboxGroupLabel as F, ListboxItem as I, ListboxRoot as L, VisuallyHidden as R, useFilter as z } from "reka-ui";
|
|
9
|
+
//#region src/components/CommandPalette.vue?vue&type=script&setup=true&lang.ts
|
|
10
|
+
var B = /*@__PURE__*/ h({
|
|
11
|
+
__name: "CommandPalette",
|
|
12
|
+
props: /*@__PURE__*/ g({
|
|
13
|
+
items: {},
|
|
14
|
+
placeholder: { default: "Search commands…" },
|
|
15
|
+
emptyText: { default: "No matching commands." },
|
|
16
|
+
label: { default: "Command palette" },
|
|
17
|
+
hotkey: { default: "mod+k" },
|
|
18
|
+
closeOnSelect: {
|
|
19
|
+
type: Boolean,
|
|
20
|
+
default: !0
|
|
21
|
+
},
|
|
22
|
+
footer: {
|
|
23
|
+
type: Boolean,
|
|
24
|
+
default: !0
|
|
25
|
+
},
|
|
26
|
+
unstyled: {
|
|
27
|
+
type: Boolean,
|
|
28
|
+
default: void 0
|
|
29
|
+
},
|
|
30
|
+
class: {},
|
|
31
|
+
ui: {}
|
|
32
|
+
}, {
|
|
33
|
+
open: {
|
|
34
|
+
type: Boolean,
|
|
35
|
+
default: !1
|
|
36
|
+
},
|
|
37
|
+
openModifiers: {}
|
|
38
|
+
}),
|
|
39
|
+
emits: /*@__PURE__*/ g(["select"], ["update:open"]),
|
|
40
|
+
setup(h, { emit: g }) {
|
|
41
|
+
let B = h, V = g, H = E(h, "open"), U = x("");
|
|
42
|
+
D(H, (e) => {
|
|
43
|
+
e || (U.value = "");
|
|
44
|
+
});
|
|
45
|
+
let { contains: W } = z({ sensitivity: "base" }), G = c(() => i(B.items)), K = c(() => {
|
|
46
|
+
let e = U.value.trim();
|
|
47
|
+
return G.value.map((t) => ({
|
|
48
|
+
...t,
|
|
49
|
+
items: e ? t.items.filter((r) => W(n(r, t.label), e)) : t.items
|
|
50
|
+
})).filter((e) => e.items.length > 0);
|
|
51
|
+
}), q = c(() => K.value.length === 0);
|
|
52
|
+
function J(e, t) {
|
|
53
|
+
return `${e}:${t}`;
|
|
54
|
+
}
|
|
55
|
+
function Y(e) {
|
|
56
|
+
e.disabled || (V("select", e), e.onSelect?.(), B.closeOnSelect && (H.value = !1));
|
|
57
|
+
}
|
|
58
|
+
function X(e) {
|
|
59
|
+
B.hotkey && r(e, B.hotkey) && (e.preventDefault(), H.value = !H.value);
|
|
60
|
+
}
|
|
61
|
+
y(() => window.addEventListener("keydown", X)), v(() => window.removeEventListener("keydown", X));
|
|
62
|
+
let re = e(), Z = c(() => B.unstyled ?? re.unstyled), Q = c(() => a());
|
|
63
|
+
function $(e, t) {
|
|
64
|
+
let n = B.ui?.[e];
|
|
65
|
+
return Z.value ? [n, t].filter(Boolean).join(" ") : Q.value[e]({ class: [n, t] });
|
|
66
|
+
}
|
|
67
|
+
function ie(e) {
|
|
68
|
+
return e.split(" ").filter(Boolean);
|
|
69
|
+
}
|
|
70
|
+
return (e, n) => (b(), l(T(A), {
|
|
71
|
+
open: H.value,
|
|
72
|
+
"onUpdate:open": n[1] ||= (e) => H.value = e
|
|
73
|
+
}, {
|
|
74
|
+
default: O(() => [m(T(ne), null, {
|
|
75
|
+
default: O(() => [m(T(te), { class: _($("overlay")) }, null, 8, ["class"]), m(T(ee), {
|
|
76
|
+
class: _(Z.value ? [B.ui?.content, B.class] : Q.value.content({ class: [B.ui?.content, B.class] })),
|
|
77
|
+
"aria-label": B.label
|
|
78
|
+
}, {
|
|
79
|
+
default: O(() => [
|
|
80
|
+
m(T(R), null, {
|
|
81
|
+
default: O(() => [m(T(j), null, {
|
|
82
|
+
default: O(() => [p(w(B.label), 1)]),
|
|
83
|
+
_: 1
|
|
84
|
+
})]),
|
|
85
|
+
_: 1
|
|
86
|
+
}),
|
|
87
|
+
m(T(L), {
|
|
88
|
+
"highlight-on-hover": "",
|
|
89
|
+
class: _($("list"))
|
|
90
|
+
}, {
|
|
91
|
+
default: O(() => [f("div", { class: _($("header")) }, [f("span", { class: _($("icon")) }, [m(t, { icon: T(k) }, null, 8, ["icon"])], 2), m(T(N), {
|
|
92
|
+
modelValue: U.value,
|
|
93
|
+
"onUpdate:modelValue": n[0] ||= (e) => U.value = e,
|
|
94
|
+
"auto-focus": "",
|
|
95
|
+
placeholder: B.placeholder,
|
|
96
|
+
class: _($("input"))
|
|
97
|
+
}, null, 8, [
|
|
98
|
+
"modelValue",
|
|
99
|
+
"placeholder",
|
|
100
|
+
"class"
|
|
101
|
+
])], 2), m(T(M), { class: _($("viewport")) }, {
|
|
102
|
+
default: O(() => [q.value ? (b(), d("p", {
|
|
103
|
+
key: 0,
|
|
104
|
+
class: _($("empty"))
|
|
105
|
+
}, [C(e.$slots, "empty", { query: U.value }, () => [p(w(B.emptyText), 1)])], 2)) : u("", !0), (b(!0), d(s, null, S(K.value, (n, r) => (b(), l(T(P), {
|
|
106
|
+
key: n.label || r,
|
|
107
|
+
class: _($("group"))
|
|
108
|
+
}, {
|
|
109
|
+
default: O(() => [n.label ? (b(), l(T(F), {
|
|
110
|
+
key: 0,
|
|
111
|
+
class: _($("groupLabel"))
|
|
112
|
+
}, {
|
|
113
|
+
default: O(() => [p(w(n.label), 1)]),
|
|
114
|
+
_: 2
|
|
115
|
+
}, 1032, ["class"])) : u("", !0), (b(!0), d(s, null, S(n.items, (n, i) => (b(), l(T(I), {
|
|
116
|
+
key: J(r, i),
|
|
117
|
+
value: J(r, i),
|
|
118
|
+
disabled: n.disabled,
|
|
119
|
+
"aria-disabled": n.disabled || void 0,
|
|
120
|
+
as: n.href ? "a" : "div",
|
|
121
|
+
href: n.href,
|
|
122
|
+
class: _($("item")),
|
|
123
|
+
onSelect: (e) => Y(n)
|
|
124
|
+
}, {
|
|
125
|
+
default: O(() => [C(e.$slots, "item", { item: n }, () => [
|
|
126
|
+
n.icon ? (b(), d("span", {
|
|
127
|
+
key: 0,
|
|
128
|
+
class: _($("itemIcon"))
|
|
129
|
+
}, [m(t, { icon: n.icon }, null, 8, ["icon"])], 2)) : u("", !0),
|
|
130
|
+
f("span", { class: _($("itemLabel")) }, w(n.label), 3),
|
|
131
|
+
n.shortcut ? (b(), l(o, {
|
|
132
|
+
key: 1,
|
|
133
|
+
keys: ie(n.shortcut),
|
|
134
|
+
class: _($("shortcut")),
|
|
135
|
+
ui: { key: B.ui?.key }
|
|
136
|
+
}, null, 8, [
|
|
137
|
+
"keys",
|
|
138
|
+
"class",
|
|
139
|
+
"ui"
|
|
140
|
+
])) : u("", !0)
|
|
141
|
+
])]),
|
|
142
|
+
_: 2
|
|
143
|
+
}, 1032, [
|
|
144
|
+
"value",
|
|
145
|
+
"disabled",
|
|
146
|
+
"aria-disabled",
|
|
147
|
+
"as",
|
|
148
|
+
"href",
|
|
149
|
+
"class",
|
|
150
|
+
"onSelect"
|
|
151
|
+
]))), 128))]),
|
|
152
|
+
_: 2
|
|
153
|
+
}, 1032, ["class"]))), 128))]),
|
|
154
|
+
_: 3
|
|
155
|
+
}, 8, ["class"])]),
|
|
156
|
+
_: 3
|
|
157
|
+
}, 8, ["class"]),
|
|
158
|
+
B.footer ? (b(), d("div", {
|
|
159
|
+
key: 0,
|
|
160
|
+
class: _($("footer"))
|
|
161
|
+
}, [C(e.$slots, "footer", {}, () => [
|
|
162
|
+
f("span", null, [m(o, {
|
|
163
|
+
keys: ["up", "down"],
|
|
164
|
+
ui: { key: B.ui?.key }
|
|
165
|
+
}, null, 8, ["ui"]), n[2] ||= p(" to navigate", -1)]),
|
|
166
|
+
f("span", null, [m(o, {
|
|
167
|
+
keys: "enter",
|
|
168
|
+
ui: { key: B.ui?.key }
|
|
169
|
+
}, null, 8, ["ui"]), n[3] ||= p(" to select", -1)]),
|
|
170
|
+
f("span", null, [m(o, {
|
|
171
|
+
keys: "escape",
|
|
172
|
+
ui: { key: B.ui?.key }
|
|
173
|
+
}, null, 8, ["ui"]), n[4] ||= p(" to close", -1)])
|
|
174
|
+
])], 2)) : u("", !0)
|
|
175
|
+
]),
|
|
176
|
+
_: 3
|
|
177
|
+
}, 8, ["class", "aria-label"])]),
|
|
178
|
+
_: 3
|
|
179
|
+
})]),
|
|
180
|
+
_: 3
|
|
181
|
+
}, 8, ["open"]));
|
|
182
|
+
}
|
|
183
|
+
});
|
|
184
|
+
//#endregion
|
|
185
|
+
export { B as default };
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
export interface ContainerProps {
|
|
2
|
+
/** Render as a different element or component. */
|
|
3
|
+
as?: string;
|
|
4
|
+
/** Merge props onto the immediate child instead of rendering an element. */
|
|
5
|
+
asChild?: boolean;
|
|
6
|
+
/** Maximum content width. `full` removes the cap but keeps the gutter. */
|
|
7
|
+
size?: 'sm' | 'md' | 'lg' | 'xl' | 'full';
|
|
8
|
+
/** Horizontal gutter. `none` leaves it to you. */
|
|
9
|
+
gutter?: 'none' | 'sm' | 'md' | 'lg';
|
|
10
|
+
/** Skip built-in classes; you take over styling entirely. */
|
|
11
|
+
unstyled?: boolean;
|
|
12
|
+
class?: string;
|
|
13
|
+
/** Override classes per slot, e.g. `{ root: 'py-10' }`. */
|
|
14
|
+
ui?: {
|
|
15
|
+
root?: string;
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
declare var __VLS_8: {};
|
|
19
|
+
type __VLS_Slots = {} & {
|
|
20
|
+
default?: (props: typeof __VLS_8) => any;
|
|
21
|
+
};
|
|
22
|
+
declare const __VLS_base: import("vue").DefineComponent<ContainerProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ContainerProps> & Readonly<{}>, {
|
|
23
|
+
unstyled: boolean;
|
|
24
|
+
as: string;
|
|
25
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
26
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
27
|
+
declare const _default: typeof __VLS_export;
|
|
28
|
+
export default _default;
|
|
29
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
30
|
+
new (): {
|
|
31
|
+
$slots: S;
|
|
32
|
+
};
|
|
33
|
+
};
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { useIryxUiConfig as e } from "../config.js";
|
|
2
|
+
import { containerTheme as t } from "../theme/container.js";
|
|
3
|
+
import { computed as n, createBlock as r, defineComponent as i, normalizeClass as a, openBlock as o, renderSlot as s, unref as c, withCtx as l } from "vue";
|
|
4
|
+
import { Primitive as u } from "reka-ui";
|
|
5
|
+
//#region src/components/Container.vue?vue&type=script&setup=true&lang.ts
|
|
6
|
+
var d = /*@__PURE__*/ i({
|
|
7
|
+
__name: "Container",
|
|
8
|
+
props: {
|
|
9
|
+
as: { default: "div" },
|
|
10
|
+
asChild: { type: Boolean },
|
|
11
|
+
size: {},
|
|
12
|
+
gutter: {},
|
|
13
|
+
unstyled: {
|
|
14
|
+
type: Boolean,
|
|
15
|
+
default: void 0
|
|
16
|
+
},
|
|
17
|
+
class: {},
|
|
18
|
+
ui: {}
|
|
19
|
+
},
|
|
20
|
+
setup(i) {
|
|
21
|
+
let d = i, f = e(), p = n(() => d.unstyled ?? f.unstyled), m = n(() => t({
|
|
22
|
+
size: d.size,
|
|
23
|
+
gutter: d.gutter
|
|
24
|
+
})), h = n(() => p.value ? [d.ui?.root, d.class] : m.value.root({ class: [d.ui?.root, d.class] }));
|
|
25
|
+
return (e, t) => (o(), r(c(u), {
|
|
26
|
+
as: d.as,
|
|
27
|
+
"as-child": d.asChild,
|
|
28
|
+
class: a(h.value)
|
|
29
|
+
}, {
|
|
30
|
+
default: l(() => [s(e.$slots, "default")]),
|
|
31
|
+
_: 3
|
|
32
|
+
}, 8, [
|
|
33
|
+
"as",
|
|
34
|
+
"as-child",
|
|
35
|
+
"class"
|
|
36
|
+
]));
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
//#endregion
|
|
40
|
+
export { d as default };
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import type { DropdownMenuEntry } from '../composables/dropdown-menu';
|
|
2
|
+
export interface ContextMenuProps {
|
|
3
|
+
/** Entries to render. Nest by giving an entry its own `items`. */
|
|
4
|
+
items?: DropdownMenuEntry[];
|
|
5
|
+
/**
|
|
6
|
+
* How far the menu is kept from the viewport edge when it would overflow.
|
|
7
|
+
*/
|
|
8
|
+
collisionPadding?: number;
|
|
9
|
+
/** Skip built-in classes; you take over styling entirely. */
|
|
10
|
+
unstyled?: boolean;
|
|
11
|
+
class?: string;
|
|
12
|
+
/** Override classes per slot, e.g. `{ item: 'py-2' }`. */
|
|
13
|
+
ui?: {
|
|
14
|
+
content?: string;
|
|
15
|
+
item?: string;
|
|
16
|
+
label?: string;
|
|
17
|
+
separator?: string;
|
|
18
|
+
subTrigger?: string;
|
|
19
|
+
subContent?: string;
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
declare var __VLS_16: {}, __VLS_30: {};
|
|
23
|
+
type __VLS_Slots = {} & {
|
|
24
|
+
trigger?: (props: typeof __VLS_16) => any;
|
|
25
|
+
} & {
|
|
26
|
+
default?: (props: typeof __VLS_30) => any;
|
|
27
|
+
};
|
|
28
|
+
declare const __VLS_base: import("vue").DefineComponent<ContextMenuProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
29
|
+
"update:open": (value: boolean) => any;
|
|
30
|
+
}, string, import("vue").PublicProps, Readonly<ContextMenuProps> & Readonly<{
|
|
31
|
+
"onUpdate:open"?: ((value: boolean) => any) | undefined;
|
|
32
|
+
}>, {
|
|
33
|
+
unstyled: boolean;
|
|
34
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
35
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
36
|
+
declare const _default: typeof __VLS_export;
|
|
37
|
+
export default _default;
|
|
38
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
39
|
+
new (): {
|
|
40
|
+
$slots: S;
|
|
41
|
+
};
|
|
42
|
+
};
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { useIryxUiConfig as e } from "../config.js";
|
|
2
|
+
import { dropdownMenuTheme as t } from "../theme/dropdown-menu.js";
|
|
3
|
+
import n from "./DropdownMenuItems.js";
|
|
4
|
+
import { computed as r, createBlock as i, createVNode as a, defineComponent as o, normalizeClass as s, openBlock as c, renderSlot as l, unref as u, withCtx as d } from "vue";
|
|
5
|
+
import { ContextMenuContent as f, ContextMenuPortal as p, ContextMenuRoot as m, ContextMenuTrigger as h } from "reka-ui";
|
|
6
|
+
//#region src/components/ContextMenu.vue?vue&type=script&setup=true&lang.ts
|
|
7
|
+
var g = /*@__PURE__*/ o({
|
|
8
|
+
__name: "ContextMenu",
|
|
9
|
+
props: {
|
|
10
|
+
items: {},
|
|
11
|
+
collisionPadding: {},
|
|
12
|
+
unstyled: {
|
|
13
|
+
type: Boolean,
|
|
14
|
+
default: void 0
|
|
15
|
+
},
|
|
16
|
+
class: {},
|
|
17
|
+
ui: {}
|
|
18
|
+
},
|
|
19
|
+
emits: ["update:open"],
|
|
20
|
+
setup(o, { emit: g }) {
|
|
21
|
+
let _ = o, v = g, y = e(), b = r(() => _.unstyled ?? y.unstyled), x = r(() => _.items ?? []), S = r(() => b.value ? [_.ui?.content, _.class] : t().content({ class: [_.ui?.content, _.class] }));
|
|
22
|
+
return (e, t) => (c(), i(u(m), { "onUpdate:open": t[0] ||= (e) => v("update:open", e) }, {
|
|
23
|
+
default: d(() => [a(u(h), { "as-child": "" }, {
|
|
24
|
+
default: d(() => [l(e.$slots, "trigger")]),
|
|
25
|
+
_: 3
|
|
26
|
+
}), a(u(p), null, {
|
|
27
|
+
default: d(() => [a(u(f), {
|
|
28
|
+
"collision-padding": _.collisionPadding,
|
|
29
|
+
class: s(S.value)
|
|
30
|
+
}, {
|
|
31
|
+
default: d(() => [l(e.$slots, "default", {}, () => [a(n, {
|
|
32
|
+
entries: x.value,
|
|
33
|
+
unstyled: b.value,
|
|
34
|
+
ui: _.ui
|
|
35
|
+
}, null, 8, [
|
|
36
|
+
"entries",
|
|
37
|
+
"unstyled",
|
|
38
|
+
"ui"
|
|
39
|
+
])])]),
|
|
40
|
+
_: 3
|
|
41
|
+
}, 8, ["collision-padding", "class"])]),
|
|
42
|
+
_: 3
|
|
43
|
+
})]),
|
|
44
|
+
_: 3
|
|
45
|
+
}));
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
//#endregion
|
|
49
|
+
export { g as default };
|
|
@@ -48,8 +48,8 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_PublicProps, {},
|
|
|
48
48
|
"onUpdate:modelValue"?: ((value: DateRange) => any) | undefined;
|
|
49
49
|
}>, {
|
|
50
50
|
unstyled: boolean;
|
|
51
|
-
separator: string;
|
|
52
51
|
placeholder: string;
|
|
52
|
+
separator: string;
|
|
53
53
|
invalid: boolean;
|
|
54
54
|
months: number;
|
|
55
55
|
clearLabel: string;
|
|
@@ -50,8 +50,8 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, {}, {
|
|
|
50
50
|
}, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
|
|
51
51
|
"onUpdate:open"?: ((value: boolean) => any) | undefined;
|
|
52
52
|
}>, {
|
|
53
|
-
closeLabel: string;
|
|
54
53
|
unstyled: boolean;
|
|
54
|
+
closeLabel: string;
|
|
55
55
|
dismissible: boolean;
|
|
56
56
|
showClose: boolean;
|
|
57
57
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
@@ -76,12 +76,12 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, {}, {
|
|
|
76
76
|
"onUpdate:open"?: ((value: boolean) => any) | undefined;
|
|
77
77
|
"onUpdate:snapPoint"?: ((value: DrawerSnapPoint | null) => any) | undefined;
|
|
78
78
|
}>, {
|
|
79
|
-
closeLabel: string;
|
|
80
79
|
unstyled: boolean;
|
|
80
|
+
closeLabel: string;
|
|
81
81
|
side: DrawerSide;
|
|
82
|
+
modal: boolean | "trap-focus";
|
|
82
83
|
dismissible: boolean;
|
|
83
84
|
showClose: boolean;
|
|
84
|
-
modal: boolean | "trap-focus";
|
|
85
85
|
handle: boolean;
|
|
86
86
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
87
87
|
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
@@ -33,8 +33,8 @@ type __VLS_Slots = {} & {
|
|
|
33
33
|
};
|
|
34
34
|
declare const __VLS_base: import("vue").DefineComponent<EmptyStateProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<EmptyStateProps> & Readonly<{}>, {
|
|
35
35
|
icon: IconLike | false;
|
|
36
|
-
as: string;
|
|
37
36
|
unstyled: boolean;
|
|
37
|
+
as: string;
|
|
38
38
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
39
39
|
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
40
40
|
declare const _default: typeof __VLS_export;
|
|
@@ -51,8 +51,8 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, {
|
|
|
51
51
|
}, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
|
|
52
52
|
"onUpdate:modelValue"?: ((value: string | number | null | undefined) => any) | undefined;
|
|
53
53
|
}>, {
|
|
54
|
-
unstyled: boolean;
|
|
55
54
|
type: string;
|
|
55
|
+
unstyled: boolean;
|
|
56
56
|
invalid: boolean;
|
|
57
57
|
clearLabel: string;
|
|
58
58
|
debounce: number;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { useIryxUiConfig as e } from "../config.js";
|
|
2
2
|
import t from "./Icon.js";
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
3
|
+
import { inputTheme as n } from "../theme/input.js";
|
|
4
|
+
import { useFormField as r } from "../composables/form.js";
|
|
5
5
|
import { computed as i, createBlock as a, createCommentVNode as o, createElementBlock as s, createElementVNode as c, createVNode as l, defineComponent as u, mergeModels as d, mergeProps as f, normalizeClass as p, onBeforeUnmount as m, openBlock as h, ref as g, renderSlot as _, unref as v, useModel as y, useSlots as b, watch as x, withKeys as S } from "vue";
|
|
6
6
|
import { Cancel01Icon as C, Loading03Icon as w } from "@hugeicons/core-free-icons";
|
|
7
7
|
//#region src/components/Input.vue?vue&type=script&setup=true&lang.ts
|
|
@@ -44,7 +44,7 @@ var T = [
|
|
|
44
44
|
}),
|
|
45
45
|
emits: ["update:modelValue"],
|
|
46
46
|
setup(u, { expose: d }) {
|
|
47
|
-
let D = u, O = y(u, "modelValue"), k = b(), A =
|
|
47
|
+
let D = u, O = y(u, "modelValue"), k = b(), A = r(), j = i(() => D.id ?? A?.id.value), M = i(() => D.invalid ?? A?.invalid.value ?? !1), N = e(), P = i(() => D.unstyled ?? N.unstyled), F = g(O.value), I;
|
|
48
48
|
function L() {
|
|
49
49
|
I !== void 0 && (clearTimeout(I), I = void 0);
|
|
50
50
|
}
|
|
@@ -70,7 +70,7 @@ var T = [
|
|
|
70
70
|
L(), F.value = "", O.value = "", B.value?.focus();
|
|
71
71
|
}
|
|
72
72
|
d({ input: B });
|
|
73
|
-
let H = i(() => F.value !== "" && F.value != null), U = i(() => D.clearable && H.value && !D.disabled), W = i(() => D.loading || U.value || !!k.trailing), G = i(() =>
|
|
73
|
+
let H = i(() => F.value !== "" && F.value != null), U = i(() => D.clearable && H.value && !D.disabled), W = i(() => D.loading || U.value || !!k.trailing), G = i(() => n({
|
|
74
74
|
size: D.size,
|
|
75
75
|
invalid: M.value
|
|
76
76
|
}));
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
export interface KbdProps {
|
|
2
|
+
/**
|
|
3
|
+
* The shortcut — `'mod+k'`, or `['mod', 'k']`. `mod` is Command on Apple
|
|
4
|
+
* platforms and Control everywhere else, which is the whole point: the
|
|
5
|
+
* same muscle memory, a different glyph.
|
|
6
|
+
*
|
|
7
|
+
* Written the same way `matchesHotkey` reads it, so the shortcut you bind
|
|
8
|
+
* and the shortcut you show cannot drift apart.
|
|
9
|
+
*/
|
|
10
|
+
keys?: string | string[];
|
|
11
|
+
size?: 'xs' | 'sm' | 'md';
|
|
12
|
+
/** Draw a `+` between the chips instead of a plain gap. */
|
|
13
|
+
joined?: boolean;
|
|
14
|
+
/**
|
|
15
|
+
* Overrides the spoken name. The default spells the combination out —
|
|
16
|
+
* "Command K" — because the glyphs announce as nothing useful on their own.
|
|
17
|
+
*/
|
|
18
|
+
ariaLabel?: string;
|
|
19
|
+
/** Skip built-in classes; you take over styling entirely. */
|
|
20
|
+
unstyled?: boolean;
|
|
21
|
+
class?: string;
|
|
22
|
+
/** Override classes per slot, e.g. `{ key: 'bg-background' }`. */
|
|
23
|
+
ui?: {
|
|
24
|
+
root?: string;
|
|
25
|
+
key?: string;
|
|
26
|
+
separator?: string;
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
declare var __VLS_1: {
|
|
30
|
+
item: import("..").KbdKey;
|
|
31
|
+
};
|
|
32
|
+
type __VLS_Slots = {} & {
|
|
33
|
+
key?: (props: typeof __VLS_1) => any;
|
|
34
|
+
};
|
|
35
|
+
declare const __VLS_base: import("vue").DefineComponent<KbdProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<KbdProps> & Readonly<{}>, {
|
|
36
|
+
keys: string | string[];
|
|
37
|
+
unstyled: boolean;
|
|
38
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
39
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
40
|
+
declare const _default: typeof __VLS_export;
|
|
41
|
+
export default _default;
|
|
42
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
43
|
+
new (): {
|
|
44
|
+
$slots: S;
|
|
45
|
+
};
|
|
46
|
+
};
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { useIryxUiConfig as e } from "../config.js";
|
|
2
|
+
import { parseHotkey as t, useApplePlatform as n } from "../composables/kbd.js";
|
|
3
|
+
import { kbdTheme as r } from "../theme/kbd.js";
|
|
4
|
+
import { Fragment as i, computed as a, createCommentVNode as o, createElementBlock as s, createElementVNode as c, createTextVNode as l, defineComponent as u, normalizeClass as d, openBlock as f, renderList as p, renderSlot as m, toDisplayString as h } from "vue";
|
|
5
|
+
//#region src/components/Kbd.vue?vue&type=script&setup=true&lang.ts
|
|
6
|
+
var g = ["aria-label"], _ = /*@__PURE__*/ u({
|
|
7
|
+
__name: "Kbd",
|
|
8
|
+
props: {
|
|
9
|
+
keys: { default: () => [] },
|
|
10
|
+
size: {},
|
|
11
|
+
joined: { type: Boolean },
|
|
12
|
+
ariaLabel: {},
|
|
13
|
+
unstyled: {
|
|
14
|
+
type: Boolean,
|
|
15
|
+
default: void 0
|
|
16
|
+
},
|
|
17
|
+
class: {},
|
|
18
|
+
ui: {}
|
|
19
|
+
},
|
|
20
|
+
setup(u) {
|
|
21
|
+
let _ = u, v = n(), y = a(() => t(_.keys, v.value)), b = a(() => _.ariaLabel ?? y.value.map((e) => e.spoken).join(" ")), x = e(), S = a(() => _.unstyled ?? x.unstyled), C = a(() => r({ size: _.size }));
|
|
22
|
+
function w(e, t) {
|
|
23
|
+
let n = [_.ui?.[e], t].filter(Boolean).join(" ");
|
|
24
|
+
return S.value ? n : C.value[e]({ class: n });
|
|
25
|
+
}
|
|
26
|
+
return (e, t) => (f(), s("span", {
|
|
27
|
+
class: d(w("root", _.class)),
|
|
28
|
+
role: "img",
|
|
29
|
+
"aria-label": b.value
|
|
30
|
+
}, [(f(!0), s(i, null, p(y.value, (t, n) => (f(), s(i, { key: n }, [_.joined && n > 0 ? (f(), s("span", {
|
|
31
|
+
key: 0,
|
|
32
|
+
class: d(w("separator")),
|
|
33
|
+
"aria-hidden": "true"
|
|
34
|
+
}, "+", 2)) : o("", !0), c("kbd", {
|
|
35
|
+
class: d(w("key")),
|
|
36
|
+
"aria-hidden": "true"
|
|
37
|
+
}, [m(e.$slots, "key", { item: t }, () => [l(h(t.symbol), 1)])], 2)], 64))), 128))], 10, g));
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
//#endregion
|
|
41
|
+
export { _ as default };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { useIryxUiConfig as e } from "../config.js";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { useElementSize as t } from "../composables/element-size.js";
|
|
3
|
+
import { cartesianLayout as n, clampTooltip as r, seriesColor as i, slotOf as a, warnOnSlotOverflow as o } from "../composables/cartesian.js";
|
|
4
4
|
import ee from "./ChartLegend.js";
|
|
5
5
|
import { lineChartTheme as s } from "../theme/line-chart.js";
|
|
6
6
|
import { Fragment as c, computed as l, createBlock as te, createCommentVNode as u, createElementBlock as d, createElementVNode as f, defineComponent as p, guardReactiveProps as m, normalizeClass as h, normalizeProps as g, normalizeStyle as _, openBlock as v, ref as y, renderList as b, renderSlot as x, toDisplayString as S, unref as C } from "vue";
|
|
@@ -56,19 +56,19 @@ var w = ["role", "aria-label"], T = [
|
|
|
56
56
|
ui: {}
|
|
57
57
|
},
|
|
58
58
|
setup(p) {
|
|
59
|
-
let N = p, ae = e(), P = l(() => N.unstyled ?? ae.unstyled), F = y(), { width: I } =
|
|
59
|
+
let N = p, ae = e(), P = l(() => N.unstyled ?? ae.unstyled), F = y(), { width: I } = t(F), L = l(() => new Intl.NumberFormat(N.locale, N.format));
|
|
60
60
|
function R(e) {
|
|
61
61
|
return L.value.format(e);
|
|
62
62
|
}
|
|
63
63
|
let z = l(() => {
|
|
64
64
|
let e = N.series?.length ? [...N.series] : [{ key: "value" }];
|
|
65
|
-
return
|
|
65
|
+
return o(e.length), e;
|
|
66
66
|
}), B = l(() => z.value.length > 1), V = l(() => B.value || N.legend && z.value[0].name != null);
|
|
67
67
|
function H(e, t) {
|
|
68
68
|
let n = e[t];
|
|
69
69
|
return typeof n == "number" && Number.isFinite(n) ? n : null;
|
|
70
70
|
}
|
|
71
|
-
let U = l(() =>
|
|
71
|
+
let U = l(() => n({
|
|
72
72
|
values: N.data.flatMap((e) => z.value.map((t) => H(e, t.key))),
|
|
73
73
|
categories: N.data.length,
|
|
74
74
|
longestLabel: Math.max(...N.data.map((e) => e.label.length), 1),
|
|
@@ -83,21 +83,21 @@ var w = ["role", "aria-label"], T = [
|
|
|
83
83
|
return Math.round(e * 100) / 100;
|
|
84
84
|
}
|
|
85
85
|
let G = l(() => I.value ? z.value.map((e, t) => {
|
|
86
|
-
let n = [],
|
|
87
|
-
return N.data.forEach((t,
|
|
88
|
-
let
|
|
89
|
-
if (
|
|
90
|
-
|
|
86
|
+
let n = [], r = [];
|
|
87
|
+
return N.data.forEach((t, i) => {
|
|
88
|
+
let a = H(t, e.key);
|
|
89
|
+
if (a == null) {
|
|
90
|
+
r.length && n.push(r), r = [];
|
|
91
91
|
return;
|
|
92
92
|
}
|
|
93
|
-
|
|
94
|
-
x: W(U.value.bandCentre(
|
|
95
|
-
y: W(U.value.y(
|
|
96
|
-
index:
|
|
93
|
+
r.push({
|
|
94
|
+
x: W(U.value.bandCentre(i)),
|
|
95
|
+
y: W(U.value.y(a)),
|
|
96
|
+
index: i
|
|
97
97
|
});
|
|
98
|
-
}),
|
|
98
|
+
}), r.length && n.push(r), {
|
|
99
99
|
runs: n,
|
|
100
|
-
color:
|
|
100
|
+
color: i(a(e, t)),
|
|
101
101
|
seriesIndex: t
|
|
102
102
|
};
|
|
103
103
|
}) : []), K = l(() => N.variant === "area" && !B.value && G.value.length > 0);
|
|
@@ -123,19 +123,19 @@ var w = ["role", "aria-label"], T = [
|
|
|
123
123
|
if (!e) return;
|
|
124
124
|
let t = z.value.map((t, n) => ({
|
|
125
125
|
name: t.name ?? t.key,
|
|
126
|
-
color:
|
|
126
|
+
color: i(a(t, n)),
|
|
127
127
|
value: H(e, t.key)
|
|
128
128
|
})).filter((e) => e.value != null).map((e) => ({
|
|
129
129
|
...e,
|
|
130
130
|
value: R(e.value)
|
|
131
131
|
}));
|
|
132
132
|
if (!t.length) return;
|
|
133
|
-
let
|
|
133
|
+
let n = B.value ? Math.max(e.label.length, ...t.map((e) => e.name.length + e.value.length + 3)) : e.label.length + t[0].value.length + 2;
|
|
134
134
|
return {
|
|
135
135
|
label: e.label,
|
|
136
136
|
rows: t,
|
|
137
137
|
multi: B.value,
|
|
138
|
-
x:
|
|
138
|
+
x: r(U.value.bandCentre(J.value), "x".repeat(n), I.value),
|
|
139
139
|
y: Math.min(...Y.value.map((e) => e.y), U.value.plot.top + U.value.plot.height)
|
|
140
140
|
};
|
|
141
141
|
}), Q = l(() => s());
|