@itguy614/clean-ui 1.0.0 → 1.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/dist/clean-ui.css +1 -1
- package/dist/components/CuiAlert.vue.d.ts.map +1 -1
- package/dist/components/CuiAlert.vue.js +1 -1
- package/dist/components/CuiAlert.vue2.js +41 -38
- package/dist/components/CuiBadge.vue.d.ts.map +1 -1
- package/dist/components/CuiBadge.vue.js +1 -1
- package/dist/components/CuiBadge.vue2.js +15 -12
- package/dist/components/CuiBanner.vue.d.ts.map +1 -1
- package/dist/components/CuiBanner.vue.js +9 -8
- package/dist/components/CuiButton.vue.d.ts.map +1 -1
- package/dist/components/CuiButton.vue.js +2 -2
- package/dist/components/CuiButton.vue2.js +23 -20
- package/dist/components/CuiDataGrid.vue.d.ts +53 -79
- package/dist/components/CuiDataGrid.vue.d.ts.map +1 -1
- package/dist/components/CuiDataGrid.vue.js +2 -0
- package/dist/components/CuiDataGridBulkBar.vue.d.ts.map +1 -1
- package/dist/components/CuiDataGridTable.vue.d.ts.map +1 -1
- package/dist/components/CuiIcon.vue.d.ts +14 -2
- package/dist/components/CuiIcon.vue.d.ts.map +1 -1
- package/dist/components/CuiIcon.vue.js +1 -1
- package/dist/components/CuiIcon.vue2.js +51 -30
- package/dist/components/CuiInput.vue.d.ts +6 -6
- package/dist/components/CuiInput.vue.d.ts.map +1 -1
- package/dist/components/CuiInput.vue.js +2 -2
- package/dist/components/CuiInput.vue2.js +15 -13
- package/dist/components/CuiMaskedInput.vue.d.ts +8 -8
- package/dist/components/CuiRating.vue.d.ts +1 -1
- package/dist/components/CuiRating.vue.d.ts.map +1 -1
- package/dist/components/CuiTab.vue.d.ts.map +1 -1
- package/dist/components/CuiTab.vue.js +1 -1
- package/dist/components/CuiTab.vue2.js +41 -36
- package/dist/components/CuiTable.vue.d.ts +3 -3
- package/dist/components/CuiTable.vue.d.ts.map +1 -1
- package/dist/components/CuiTable.vue.js +58 -53
- package/dist/components/CuiTableCell.vue.d.ts +1 -0
- package/dist/components/CuiTableCell.vue.d.ts.map +1 -1
- package/dist/components/CuiTableCell.vue.js +4 -4
- package/dist/components/CuiTabs.vue.d.ts +2 -2
- package/dist/components/CuiTabs.vue.d.ts.map +1 -1
- package/dist/components/CuiTabs.vue.js +2 -2
- package/dist/components/CuiTabs.vue2.js +127 -89
- package/dist/components/CuiTreeNode.vue.d.ts +1 -0
- package/dist/components/CuiTreeNode.vue.d.ts.map +1 -1
- package/dist/components/CuiTreeNode.vue.js +28 -27
- package/dist/components/CuiTreeView.vue.d.ts.map +1 -1
- package/dist/components/CuiTreeView.vue.js +22 -22
- package/dist/components/tabs-context.d.ts +7 -1
- package/dist/components/tabs-context.d.ts.map +1 -1
- package/dist/composables/useDataGridViews.d.ts.map +1 -1
- package/dist/composables/useDataGridViews.js +37 -35
- package/dist/composables/useDensity.d.ts.map +1 -1
- package/dist/composables/useDensity.js +19 -19
- package/dist/composables/useOverlay.d.ts.map +1 -1
- package/dist/composables/useOverlay.js +46 -36
- package/dist/composables/useTheme.d.ts.map +1 -1
- package/dist/composables/useTheme.js +17 -25
- package/dist/icons/builtin.d.ts +67 -0
- package/dist/icons/builtin.d.ts.map +1 -0
- package/dist/icons/builtin.js +67 -0
- package/dist/icons/lazy.d.ts +8 -0
- package/dist/icons/lazy.d.ts.map +1 -0
- package/dist/icons/lazy.js +21 -0
- package/dist/icons/registry.d.ts +29 -0
- package/dist/icons/registry.d.ts.map +1 -0
- package/dist/icons/registry.js +30 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +124 -117
- package/dist/messages.d.ts +4 -0
- package/dist/messages.d.ts.map +1 -1
- package/dist/messages.js +10 -9
- package/dist/utils/devWarn.d.ts +16 -0
- package/dist/utils/devWarn.d.ts.map +1 -0
- package/dist/utils/devWarn.js +21 -0
- package/dist/utils/scrollLock.d.ts +22 -0
- package/dist/utils/scrollLock.d.ts.map +1 -0
- package/dist/utils/scrollLock.js +42 -0
- package/dist/utils/storage.d.ts +18 -0
- package/dist/utils/storage.d.ts.map +1 -0
- package/dist/utils/storage.js +27 -0
- package/package.json +7 -2
|
@@ -1,9 +1,21 @@
|
|
|
1
|
+
import { type Component } from "vue";
|
|
1
2
|
import type { CuiSize, CuiColorOrCss, HideableProps } from "../types/common";
|
|
2
3
|
export type IconWeight = "thin" | "light" | "regular" | "bold" | "fill" | "duotone";
|
|
3
4
|
export type IconSize = CuiSize | (string & {});
|
|
4
5
|
export interface CuiIconProps extends HideableProps {
|
|
5
|
-
/**
|
|
6
|
-
|
|
6
|
+
/**
|
|
7
|
+
* Phosphor icon name in kebab-case (e.g. "check", "warning-circle").
|
|
8
|
+
* Resolved from the built-in set and anything passed to `registerIcons()`.
|
|
9
|
+
* An unregistered name still renders, via a lazy import of the whole Phosphor
|
|
10
|
+
* package — which is not tree-shakeable, so it warns in the console.
|
|
11
|
+
*/
|
|
12
|
+
name?: string;
|
|
13
|
+
/**
|
|
14
|
+
* A Phosphor component passed directly, e.g. `:icon="PhRocket"`. The simplest
|
|
15
|
+
* tree-shakeable path — the consumer's own static import. Takes precedence
|
|
16
|
+
* over `name`.
|
|
17
|
+
*/
|
|
18
|
+
icon?: Component;
|
|
7
19
|
/** Icon weight/style */
|
|
8
20
|
weight?: IconWeight;
|
|
9
21
|
/** Icon size — named scale (xs–xl) or custom CSS value */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CuiIcon.vue.d.ts","sourceRoot":"","sources":["../../src/components/CuiIcon.vue"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"CuiIcon.vue.d.ts","sourceRoot":"","sources":["../../src/components/CuiIcon.vue"],"names":[],"mappings":"AAoNA,OAAO,EAA4C,KAAK,SAAS,EAAE,MAAM,KAAK,CAAC;AAC/E,OAAO,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAU7E,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;AACpF,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AAE/C,MAAM,WAAW,YAAa,SAAQ,aAAa;IACjD;;;;;OAKG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,wBAAwB;IACxB,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,0DAA0D;IAC1D,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,uEAAuE;IACvE,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,yCAAyC;IACzC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gDAAgD;IAChD,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;;;YATU,UAAU;UAEZ,QAAQ;WAEP,aAAa;oBAIJ,MAAM;;AAuMzB,wBAOG"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import o from "./CuiIcon.vue2.js";
|
|
2
2
|
/* empty css */
|
|
3
3
|
import t from "../_virtual/_plugin-vue_export-helper.js";
|
|
4
|
-
const p = /* @__PURE__ */ t(o, [["__scopeId", "data-v-
|
|
4
|
+
const p = /* @__PURE__ */ t(o, [["__scopeId", "data-v-b9c50b01"]]);
|
|
5
5
|
export {
|
|
6
6
|
p as default
|
|
7
7
|
};
|
|
@@ -1,9 +1,13 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
import { resolveColor as
|
|
3
|
-
|
|
1
|
+
import { defineComponent as I, computed as r, shallowRef as k, toRaw as z, watchEffect as p, withDirectives as $, openBlock as u, createElementBlock as h, normalizeStyle as v, normalizeClass as R, createBlock as B, resolveDynamicComponent as O, unref as S, vShow as x } from "vue";
|
|
2
|
+
import { resolveColor as F } from "../utils/color.js";
|
|
3
|
+
import { resolveRegisteredIcon as b, getIconFallbackResolver as A } from "../icons/registry.js";
|
|
4
|
+
import { FALLBACK_ICON as s } from "../icons/builtin.js";
|
|
5
|
+
import { warnOnce as l } from "../utils/devWarn.js";
|
|
6
|
+
const U = /* @__PURE__ */ I({
|
|
4
7
|
__name: "CuiIcon",
|
|
5
8
|
props: {
|
|
6
9
|
name: {},
|
|
10
|
+
icon: {},
|
|
7
11
|
weight: { default: "regular" },
|
|
8
12
|
size: { default: "md" },
|
|
9
13
|
color: { default: "currentColor" },
|
|
@@ -12,7 +16,7 @@ const D = /* @__PURE__ */ w({
|
|
|
12
16
|
hidden: { type: Boolean, default: !1 }
|
|
13
17
|
},
|
|
14
18
|
setup(n) {
|
|
15
|
-
const o = n,
|
|
19
|
+
const o = n, w = {
|
|
16
20
|
xs: "0.875rem",
|
|
17
21
|
// 14px
|
|
18
22
|
sm: "1rem",
|
|
@@ -23,50 +27,67 @@ const D = /* @__PURE__ */ w({
|
|
|
23
27
|
// 24px
|
|
24
28
|
xl: "2rem"
|
|
25
29
|
// 32px
|
|
26
|
-
},
|
|
27
|
-
function
|
|
28
|
-
return "Ph" + e.split("-").map((
|
|
30
|
+
}, c = r(() => w[o.size] ?? o.size);
|
|
31
|
+
function a(e) {
|
|
32
|
+
return "Ph" + e.split("-").map((i) => i.charAt(0).toUpperCase() + i.slice(1)).join("");
|
|
29
33
|
}
|
|
30
|
-
const
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
34
|
+
const t = k(null), d = r(() => o.icon ? z(o.icon) : o.name ? b(o.name) ?? null : null), m = r(() => d.value ?? t.value);
|
|
35
|
+
function y(e) {
|
|
36
|
+
l(
|
|
37
|
+
`[CuiIcon] unknown icon "${e}". Register it so it ships with your bundle:
|
|
38
|
+
import { registerIcons } from "@itguy614/clean-ui";
|
|
39
|
+
import { ${a(e)} } from "@phosphor-icons/vue";
|
|
40
|
+
registerIcons({ "${e}": ${a(e)} });
|
|
41
|
+
Or, to resolve any name at runtime (pulls in the whole icon package):
|
|
42
|
+
import "@itguy614/clean-ui/icons/lazy";`
|
|
43
|
+
);
|
|
44
|
+
}
|
|
45
|
+
async function g(e, i) {
|
|
37
46
|
try {
|
|
38
|
-
const
|
|
39
|
-
|
|
40
|
-
c || (console.warn(`[CuiIcon] Icon "${e}" (${t}) not found in @phosphor-icons/vue`), c = u.PhQuestion), i.set(t, c), o.name === e && (l.value = c);
|
|
47
|
+
const f = await i(e);
|
|
48
|
+
f || l(`[CuiIcon] Icon "${e}" (${a(e)}) not found in @phosphor-icons/vue`), o.name === e && (t.value = f ?? s);
|
|
41
49
|
} catch {
|
|
42
|
-
|
|
50
|
+
l(`[CuiIcon] Failed to load icon "${e}"`), o.name === e && (t.value = s);
|
|
43
51
|
}
|
|
44
52
|
}
|
|
45
|
-
|
|
46
|
-
|
|
53
|
+
p(() => {
|
|
54
|
+
if (d.value || !o.name) {
|
|
55
|
+
t.value = null;
|
|
56
|
+
return;
|
|
57
|
+
}
|
|
58
|
+
const e = A();
|
|
59
|
+
if (!e) {
|
|
60
|
+
y(o.name), t.value = s;
|
|
61
|
+
return;
|
|
62
|
+
}
|
|
63
|
+
typeof window > "u" || g(o.name, e);
|
|
64
|
+
}), p(() => {
|
|
65
|
+
!o.name && !o.icon && l("[CuiIcon] requires either a `name` or an `icon` prop.");
|
|
66
|
+
});
|
|
67
|
+
const C = r(() => {
|
|
47
68
|
const e = {};
|
|
48
69
|
return o.weight === "duotone" && (o.duotoneColor && (e["--_duotone-color"] = o.duotoneColor), e["--_duotone-opacity"] = String(o.duotoneOpacity)), e;
|
|
49
70
|
});
|
|
50
|
-
return (e,
|
|
51
|
-
class:
|
|
52
|
-
style:
|
|
71
|
+
return (e, i) => $((u(), h("span", {
|
|
72
|
+
class: R(["cui-icon", { "cui-icon--duotone": n.weight === "duotone" }]),
|
|
73
|
+
style: v(C.value)
|
|
53
74
|
}, [
|
|
54
|
-
|
|
75
|
+
m.value ? (u(), B(O(m.value), {
|
|
55
76
|
key: 0,
|
|
56
77
|
weight: n.weight,
|
|
57
|
-
size:
|
|
58
|
-
color:
|
|
59
|
-
}, null, 8, ["weight", "size", "color"])) : (
|
|
78
|
+
size: c.value,
|
|
79
|
+
color: S(F)(n.color)
|
|
80
|
+
}, null, 8, ["weight", "size", "color"])) : (u(), h("span", {
|
|
60
81
|
key: 1,
|
|
61
82
|
class: "cui-icon__placeholder",
|
|
62
|
-
style:
|
|
83
|
+
style: v({ width: c.value, height: c.value }),
|
|
63
84
|
"aria-hidden": "true"
|
|
64
85
|
}, null, 4))
|
|
65
86
|
], 6)), [
|
|
66
|
-
[
|
|
87
|
+
[x, !n.hidden]
|
|
67
88
|
]);
|
|
68
89
|
}
|
|
69
90
|
});
|
|
70
91
|
export {
|
|
71
|
-
|
|
92
|
+
U as default
|
|
72
93
|
};
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import type { HideableProps, ColorableProps, SizeableProps, DisableableProps, CuiRounded } from "../types/common";
|
|
2
|
-
export type InputType = "text" | "password" | "email" | "url" | "tel" | "search";
|
|
2
|
+
export type InputType = "text" | "password" | "email" | "url" | "tel" | "search" | "number" | "range";
|
|
3
3
|
export interface CuiInputProps extends HideableProps, ColorableProps, SizeableProps, DisableableProps {
|
|
4
|
-
/** v-model binding */
|
|
5
|
-
modelValue?: string;
|
|
4
|
+
/** v-model binding. `string | number` so `type="number"` / `v-model.number` bind without a cast. */
|
|
5
|
+
modelValue?: string | number;
|
|
6
6
|
/** Input type */
|
|
7
7
|
type?: InputType;
|
|
8
8
|
/** Placeholder text */
|
|
@@ -36,10 +36,10 @@ declare const __VLS_component: import("vue").DefineComponent<CuiInputProps, {
|
|
|
36
36
|
blur: typeof blur;
|
|
37
37
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
38
38
|
clear: () => any;
|
|
39
|
-
"update:modelValue": (value: string) => any;
|
|
39
|
+
"update:modelValue": (value: string | number) => any;
|
|
40
40
|
}, string, import("vue").PublicProps, Readonly<CuiInputProps> & Readonly<{
|
|
41
41
|
onClear?: (() => any) | undefined;
|
|
42
|
-
"onUpdate:modelValue"?: ((value: string) => any) | undefined;
|
|
42
|
+
"onUpdate:modelValue"?: ((value: string | number) => any) | undefined;
|
|
43
43
|
}>, {
|
|
44
44
|
error: boolean;
|
|
45
45
|
readonly: boolean;
|
|
@@ -49,7 +49,7 @@ declare const __VLS_component: import("vue").DefineComponent<CuiInputProps, {
|
|
|
49
49
|
type: InputType;
|
|
50
50
|
rounded: CuiRounded;
|
|
51
51
|
disabled: boolean;
|
|
52
|
-
modelValue: string;
|
|
52
|
+
modelValue: string | number;
|
|
53
53
|
clearable: boolean;
|
|
54
54
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
55
55
|
declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CuiInput.vue.d.ts","sourceRoot":"","sources":["../../src/components/CuiInput.vue"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"CuiInput.vue.d.ts","sourceRoot":"","sources":["../../src/components/CuiInput.vue"],"names":[],"mappings":"AAmYA,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,aAAa,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAalH,MAAM,MAAM,SAAS,GACjB,MAAM,GACN,UAAU,GACV,OAAO,GACP,KAAK,GACL,KAAK,GACL,QAAQ,GACR,QAAQ,GACR,OAAO,CAAC;AAEZ,MAAM,WAAW,aAAc,SAAQ,aAAa,EAAE,cAAc,EAAE,aAAa,EAAE,gBAAgB;IACnG,oGAAoG;IACpG,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7B,iBAAiB;IACjB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,uBAAuB;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,6CAA6C;IAC7C,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,8CAA8C;IAC9C,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,8CAA8C;IAC9C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,qBAAqB;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,oBAAoB;IACpB,OAAO,CAAC,EAAE,UAAU,CAAC;CACtB;AAsDD,iBAAS,KAAK,CAAC,IAAI,CAAC,EAAE,YAAY,QAEjC;AAED,iBAAS,IAAI,SAEZ;AAoND,QAAA,IAAI,OAAO,IAAU,EAAE,OAAO,IAAU,EAAE,QAAQ,IAAW,EAAE,QAAQ,IAAY,CAAE;AACrF,KAAK,WAAW,GAAG,EAAE,GACnB;IAAE,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,OAAO,KAAK,GAAG,CAAA;CAAE,GACpD;IAAE,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,OAAO,KAAK,GAAG,CAAA;CAAE,GAC3C;IAAE,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,QAAQ,KAAK,GAAG,CAAA;CAAE,GAC5C;IAAE,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,QAAQ,KAAK,GAAG,CAAA;CAAE,CAAC;AAgCxD,QAAA,MAAM,eAAe;;;;;;;;;;;WA5TX,OAAO;cAIJ,OAAO;;;;UAVX,SAAS;aAYN,UAAU;;gBAdP,MAAM,GAAG,MAAM;eAMhB,OAAO;6EAuUnB,CAAC;wBACkB,eAAe,CAAC,OAAO,eAAe,EAAE,WAAW,CAAC;AAAzE,wBAA0E;AAa1E,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KAEV,CAAA;CACD,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import o from "./CuiInput.vue2.js";
|
|
2
2
|
/* empty css */
|
|
3
3
|
import t from "../_virtual/_plugin-vue_export-helper.js";
|
|
4
|
-
const
|
|
4
|
+
const m = /* @__PURE__ */ t(o, [["__scopeId", "data-v-29588c2a"]]);
|
|
5
5
|
export {
|
|
6
|
-
|
|
6
|
+
m as default
|
|
7
7
|
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { defineComponent as S, ref as _, computed as n, useTemplateRef as E, withDirectives as I, openBlock as
|
|
1
|
+
import { defineComponent as S, ref as _, computed as n, useTemplateRef as E, withDirectives as I, openBlock as u, createElementBlock as o, createElementVNode as m, normalizeStyle as M, normalizeClass as N, renderSlot as d, createCommentVNode as a, unref as v, createVNode as P, createBlock as h, toDisplayString as R, vShow as T } from "vue";
|
|
2
2
|
import b from "./CuiIcon.vue.js";
|
|
3
3
|
import { INPUT_SIZE_SCALE as D } from "../utils/sizing.js";
|
|
4
4
|
import { useMessages as A } from "../composables/useMessages.js";
|
|
@@ -41,7 +41,9 @@ const L = { class: "cui-input-wrapper" }, U = {
|
|
|
41
41
|
md: "var(--cui-button-radius, 0.375rem)",
|
|
42
42
|
lg: "0.5rem",
|
|
43
43
|
full: "9999px"
|
|
44
|
-
},
|
|
44
|
+
}, i = t, c = g, l = _(!1), y = n(() => i.type === "password"), $ = n(() => y.value && l.value ? "text" : i.type), w = n(
|
|
45
|
+
() => i.clearable && i.modelValue !== "" && i.modelValue != null && !i.disabled && !i.readonly
|
|
46
|
+
);
|
|
45
47
|
function V() {
|
|
46
48
|
var e;
|
|
47
49
|
c("update:modelValue", ""), c("clear"), (e = r.value) == null || e.focus();
|
|
@@ -59,8 +61,8 @@ const L = { class: "cui-input-wrapper" }, U = {
|
|
|
59
61
|
(e = r.value) == null || e.blur();
|
|
60
62
|
}
|
|
61
63
|
x({ el: r, focus: C, blur: B });
|
|
62
|
-
const f = n(() => D[
|
|
63
|
-
return (e, s) => I((
|
|
64
|
+
const f = n(() => D[i.size]), p = A();
|
|
65
|
+
return (e, s) => I((u(), o("div", L, [
|
|
64
66
|
m("div", {
|
|
65
67
|
class: N(["cui-input", {
|
|
66
68
|
"cui-input--error": t.error,
|
|
@@ -80,11 +82,11 @@ const L = { class: "cui-input-wrapper" }, U = {
|
|
|
80
82
|
"--_input-focus-border": t.error ? "var(--cui-error)" : `var(--cui-${t.color})`
|
|
81
83
|
})
|
|
82
84
|
}, [
|
|
83
|
-
e.$slots["prefix-button"] ? (
|
|
85
|
+
e.$slots["prefix-button"] ? (u(), o("div", U, [
|
|
84
86
|
d(e.$slots, "prefix-button", {}, void 0, !0)
|
|
85
87
|
])) : a("", !0),
|
|
86
88
|
m("div", Z, [
|
|
87
|
-
e.$slots.prefix ? (
|
|
89
|
+
e.$slots.prefix ? (u(), o("span", j, [
|
|
88
90
|
d(e.$slots, "prefix", {}, void 0, !0)
|
|
89
91
|
])) : a("", !0),
|
|
90
92
|
m("input", {
|
|
@@ -98,7 +100,7 @@ const L = { class: "cui-input-wrapper" }, U = {
|
|
|
98
100
|
class: "cui-input__native",
|
|
99
101
|
onInput: z
|
|
100
102
|
}, null, 40, q),
|
|
101
|
-
w.value ? (
|
|
103
|
+
w.value ? (u(), o("button", {
|
|
102
104
|
key: 1,
|
|
103
105
|
type: "button",
|
|
104
106
|
class: "cui-input__clear",
|
|
@@ -111,7 +113,7 @@ const L = { class: "cui-input-wrapper" }, U = {
|
|
|
111
113
|
size: "0.75rem"
|
|
112
114
|
})
|
|
113
115
|
], 8, F)) : a("", !0),
|
|
114
|
-
y.value ? (
|
|
116
|
+
y.value ? (u(), o("button", {
|
|
115
117
|
key: 2,
|
|
116
118
|
type: "button",
|
|
117
119
|
class: "cui-input__password-toggle",
|
|
@@ -119,25 +121,25 @@ const L = { class: "cui-input-wrapper" }, U = {
|
|
|
119
121
|
"aria-label": l.value ? v(p).input.hidePassword : v(p).input.showPassword,
|
|
120
122
|
onClick: s[0] || (s[0] = (O) => l.value = !l.value)
|
|
121
123
|
}, [
|
|
122
|
-
l.value ? (
|
|
124
|
+
l.value ? (u(), h(b, {
|
|
123
125
|
key: 1,
|
|
124
126
|
name: "eye-slash",
|
|
125
127
|
size: "1rem"
|
|
126
|
-
})) : (
|
|
128
|
+
})) : (u(), h(b, {
|
|
127
129
|
key: 0,
|
|
128
130
|
name: "eye",
|
|
129
131
|
size: "1rem"
|
|
130
132
|
}))
|
|
131
133
|
], 8, G)) : a("", !0),
|
|
132
|
-
e.$slots.suffix ? (
|
|
134
|
+
e.$slots.suffix ? (u(), o("span", H, [
|
|
133
135
|
d(e.$slots, "suffix", {}, void 0, !0)
|
|
134
136
|
])) : a("", !0)
|
|
135
137
|
]),
|
|
136
|
-
e.$slots["suffix-button"] ? (
|
|
138
|
+
e.$slots["suffix-button"] ? (u(), o("div", J, [
|
|
137
139
|
d(e.$slots, "suffix-button", {}, void 0, !0)
|
|
138
140
|
])) : a("", !0)
|
|
139
141
|
], 6),
|
|
140
|
-
t.error && t.errorMessage ? (
|
|
142
|
+
t.error && t.errorMessage ? (u(), o("div", K, R(t.errorMessage), 1)) : a("", !0)
|
|
141
143
|
], 512)), [
|
|
142
144
|
[T, !t.hidden]
|
|
143
145
|
]);
|
|
@@ -38,7 +38,7 @@ declare const __VLS_component: import("vue").DefineComponent<CuiMaskedInputProps
|
|
|
38
38
|
$: import("vue").ComponentInternalInstance;
|
|
39
39
|
$data: {};
|
|
40
40
|
$props: {
|
|
41
|
-
readonly modelValue?: string | undefined;
|
|
41
|
+
readonly modelValue?: string | number | undefined;
|
|
42
42
|
readonly type?: import("./CuiInput.vue").InputType | undefined;
|
|
43
43
|
readonly placeholder?: string | undefined;
|
|
44
44
|
readonly clearable?: boolean | undefined;
|
|
@@ -51,7 +51,7 @@ declare const __VLS_component: import("vue").DefineComponent<CuiMaskedInputProps
|
|
|
51
51
|
readonly size?: CuiSize | undefined;
|
|
52
52
|
readonly disabled?: boolean | undefined;
|
|
53
53
|
readonly onClear?: (() => any) | undefined;
|
|
54
|
-
readonly "onUpdate:modelValue"?: ((value: string) => any) | undefined;
|
|
54
|
+
readonly "onUpdate:modelValue"?: ((value: string | number) => any) | undefined;
|
|
55
55
|
} & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps;
|
|
56
56
|
$attrs: import("vue").Attrs;
|
|
57
57
|
$refs: {
|
|
@@ -63,18 +63,18 @@ declare const __VLS_component: import("vue").DefineComponent<CuiMaskedInputProps
|
|
|
63
63
|
$root: import("vue").ComponentPublicInstance | null;
|
|
64
64
|
$parent: import("vue").ComponentPublicInstance | null;
|
|
65
65
|
$host: Element | null;
|
|
66
|
-
$emit: ((event: "clear") => void) & ((event: "update:modelValue", value: string) => void);
|
|
66
|
+
$emit: ((event: "clear") => void) & ((event: "update:modelValue", value: string | number) => void);
|
|
67
67
|
$el: any;
|
|
68
68
|
$options: import("vue").ComponentOptionsBase<Readonly<import("./CuiInput.vue").CuiInputProps> & Readonly<{
|
|
69
69
|
onClear?: (() => any) | undefined;
|
|
70
|
-
"onUpdate:modelValue"?: ((value: string) => any) | undefined;
|
|
70
|
+
"onUpdate:modelValue"?: ((value: string | number) => any) | undefined;
|
|
71
71
|
}>, {
|
|
72
72
|
el: Readonly<import("vue").ShallowRef<HTMLInputElement | null>>;
|
|
73
73
|
focus: (opts?: FocusOptions) => void;
|
|
74
74
|
blur: () => void;
|
|
75
75
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
76
76
|
clear: () => any;
|
|
77
|
-
"update:modelValue": (value: string) => any;
|
|
77
|
+
"update:modelValue": (value: string | number) => any;
|
|
78
78
|
}, string, {
|
|
79
79
|
error: boolean;
|
|
80
80
|
readonly: boolean;
|
|
@@ -84,7 +84,7 @@ declare const __VLS_component: import("vue").DefineComponent<CuiMaskedInputProps
|
|
|
84
84
|
type: import("./CuiInput.vue").InputType;
|
|
85
85
|
rounded: import("../index.js").CuiRounded;
|
|
86
86
|
disabled: boolean;
|
|
87
|
-
modelValue: string;
|
|
87
|
+
modelValue: string | number;
|
|
88
88
|
clearable: boolean;
|
|
89
89
|
}, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & {
|
|
90
90
|
beforeCreate?: (() => void) | (() => void)[];
|
|
@@ -115,11 +115,11 @@ declare const __VLS_component: import("vue").DefineComponent<CuiMaskedInputProps
|
|
|
115
115
|
type: import("./CuiInput.vue").InputType;
|
|
116
116
|
rounded: import("../index.js").CuiRounded;
|
|
117
117
|
disabled: boolean;
|
|
118
|
-
modelValue: string;
|
|
118
|
+
modelValue: string | number;
|
|
119
119
|
clearable: boolean;
|
|
120
120
|
}> & Omit<Readonly<import("./CuiInput.vue").CuiInputProps> & Readonly<{
|
|
121
121
|
onClear?: (() => any) | undefined;
|
|
122
|
-
"onUpdate:modelValue"?: ((value: string) => any) | undefined;
|
|
122
|
+
"onUpdate:modelValue"?: ((value: string | number) => any) | undefined;
|
|
123
123
|
}>, "el" | "focus" | "blur" | ("error" | "readonly" | "hidden" | "size" | "color" | "type" | "rounded" | "disabled" | "modelValue" | "clearable")> & {
|
|
124
124
|
el: HTMLInputElement | null;
|
|
125
125
|
focus: (opts?: FocusOptions) => void;
|
|
@@ -34,10 +34,10 @@ declare const _default: import("vue").DefineComponent<CuiRatingProps, {
|
|
|
34
34
|
hidden: boolean;
|
|
35
35
|
size: CuiSize;
|
|
36
36
|
color: CuiColor;
|
|
37
|
+
icon: string;
|
|
37
38
|
disabled: boolean;
|
|
38
39
|
modelValue: number;
|
|
39
40
|
clearable: boolean;
|
|
40
|
-
icon: string;
|
|
41
41
|
max: number;
|
|
42
42
|
showValue: boolean;
|
|
43
43
|
half: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CuiRating.vue.d.ts","sourceRoot":"","sources":["../../src/components/CuiRating.vue"],"names":[],"mappings":"AAoMA,OAAO,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAIzH,MAAM,WAAW,cAAe,SAAQ,aAAa,EAAE,cAAc,EAAE,aAAa,EAAE,gBAAgB;IACpG,oBAAoB;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,qBAAqB;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,6BAA6B;IAC7B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,gBAAgB;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,qDAAqD;IACrD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,6BAA6B;IAC7B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,YAAY;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,oDAAoD;IACpD,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AA4GD,iBAAS,KAAK,CAAC,IAAI,CAAC,EAAE,YAAY,QAEjC;AAED,iBAAS,IAAI,SAEZ;;;;;;;;;;cAzHY,OAAO
|
|
1
|
+
{"version":3,"file":"CuiRating.vue.d.ts","sourceRoot":"","sources":["../../src/components/CuiRating.vue"],"names":[],"mappings":"AAoMA,OAAO,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAIzH,MAAM,WAAW,cAAe,SAAQ,aAAa,EAAE,cAAc,EAAE,aAAa,EAAE,gBAAgB;IACpG,oBAAoB;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,qBAAqB;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,6BAA6B;IAC7B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,gBAAgB;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,qDAAqD;IACrD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,6BAA6B;IAC7B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,YAAY;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,oDAAoD;IACpD,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AA4GD,iBAAS,KAAK,CAAC,IAAI,CAAC,EAAE,YAAY,QAEjC;AAED,iBAAS,IAAI,SAEZ;;;;;;;;;;cAzHY,OAAO;;;;UAJX,MAAM;;gBANA,MAAM;eAgBP,OAAO;SAdb,MAAM;eAUA,OAAO;UARZ,OAAO;cAIH,MAAM;;AAuPnB,wBASG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CuiTab.vue.d.ts","sourceRoot":"","sources":["../../src/components/CuiTab.vue"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"CuiTab.vue.d.ts","sourceRoot":"","sources":["../../src/components/CuiTab.vue"],"names":[],"mappings":"AA8JA,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEvE,MAAM,WAAW,WAAY,SAAQ,aAAa,EAAE,gBAAgB;IAClE,mDAAmD;IACnD,KAAK,EAAE,MAAM,CAAC;IACd,qBAAqB;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,oCAAoC;IACpC,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAkHD,QAAA,IAAI,OAAO,IAAU,EAAE,OAAO,IAAW,CAAE;AAC3C,KAAK,WAAW,GAAG,EAAE,GACnB;IAAE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,OAAO,KAAK,GAAG,CAAA;CAAE,GAC5C;IAAE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,OAAO,KAAK,GAAG,CAAA;CAAE,CAAC;AAsB/C,QAAA,MAAM,eAAe;;;eA5IP,OAAO;6EAmJnB,CAAC;wBACkB,eAAe,CAAC,OAAO,eAAe,EAAE,WAAW,CAAC;AAAzE,wBAA0E;AAa1E,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KAEV,CAAA;CACD,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import o from "./CuiTab.vue2.js";
|
|
2
2
|
/* empty css */
|
|
3
3
|
import t from "../_virtual/_plugin-vue_export-helper.js";
|
|
4
|
-
const p = /* @__PURE__ */ t(o, [["__scopeId", "data-v-
|
|
4
|
+
const p = /* @__PURE__ */ t(o, [["__scopeId", "data-v-57a89561"]]);
|
|
5
5
|
export {
|
|
6
6
|
p as default
|
|
7
7
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
import { TabsContextKey as
|
|
3
|
-
const
|
|
1
|
+
import { defineComponent as h, inject as y, computed as s, useSlots as x, onMounted as C, watch as T, onUnmounted as k, unref as w, withDirectives as c, openBlock as b, createElementBlock as v, normalizeClass as f, renderSlot as m, vShow as p, createCommentVNode as B } from "vue";
|
|
2
|
+
import { TabsContextKey as S } from "./tabs-context.js";
|
|
3
|
+
const g = ["aria-labelledby"], E = ["aria-labelledby"], $ = /* @__PURE__ */ h({
|
|
4
4
|
__name: "CuiTab",
|
|
5
5
|
props: {
|
|
6
6
|
value: {},
|
|
@@ -10,64 +10,69 @@ const k = ["aria-labelledby"], w = ["aria-labelledby"], I = /* @__PURE__ */ m({
|
|
|
10
10
|
disabled: { type: Boolean, default: !1 }
|
|
11
11
|
},
|
|
12
12
|
setup(n) {
|
|
13
|
-
const e = n, a =
|
|
13
|
+
const e = n, a = y(S);
|
|
14
14
|
if (!a)
|
|
15
15
|
throw new Error("[CuiTab] must be used inside a <CuiTabs> component.");
|
|
16
|
-
const
|
|
17
|
-
|
|
18
|
-
|
|
16
|
+
const o = s(() => a.activeTab.value === e.value), i = x();
|
|
17
|
+
function r() {
|
|
18
|
+
return {
|
|
19
19
|
value: e.value,
|
|
20
20
|
label: e.label,
|
|
21
21
|
disabled: e.disabled,
|
|
22
|
-
closeable: e.closeable
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
22
|
+
closeable: e.closeable,
|
|
23
|
+
// Call through `slots` rather than capturing the slot function, so the
|
|
24
|
+
// parent's render always invokes the current one — a badge count in the
|
|
25
|
+
// slot updates without re-registering the tab.
|
|
26
|
+
labelSlot: i.label ? () => {
|
|
27
|
+
var l;
|
|
28
|
+
return (l = i.label) == null ? void 0 : l.call(i);
|
|
29
|
+
} : void 0
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
C(() => {
|
|
33
|
+
a.register(r());
|
|
34
|
+
}), T(
|
|
35
|
+
() => [e.label, e.disabled, e.closeable, !!i.label],
|
|
26
36
|
() => {
|
|
27
|
-
a.
|
|
28
|
-
value: e.value,
|
|
29
|
-
label: e.label,
|
|
30
|
-
disabled: e.disabled,
|
|
31
|
-
closeable: e.closeable
|
|
32
|
-
});
|
|
37
|
+
a.register(r());
|
|
33
38
|
}
|
|
34
|
-
),
|
|
39
|
+
), k(() => {
|
|
35
40
|
a.unregister(e.value);
|
|
36
41
|
});
|
|
37
|
-
const
|
|
42
|
+
const u = s(() => {
|
|
38
43
|
if (a.transition.value !== "none") {
|
|
39
44
|
if (a.transition.value === "slide") {
|
|
40
|
-
const
|
|
41
|
-
return
|
|
45
|
+
const l = d(a.previousTab.value);
|
|
46
|
+
return d(e.value) >= l ? "cui-tab-slide-left" : "cui-tab-slide-right";
|
|
42
47
|
}
|
|
43
48
|
return "cui-tab-fade";
|
|
44
49
|
}
|
|
45
50
|
});
|
|
46
|
-
function
|
|
47
|
-
const
|
|
48
|
-
return
|
|
51
|
+
function d(l) {
|
|
52
|
+
const t = document.querySelector(`[data-cui-tab-value="${l}"]`);
|
|
53
|
+
return t != null && t.parentElement ? Array.from(t.parentElement.children).indexOf(t) : 0;
|
|
49
54
|
}
|
|
50
|
-
return (
|
|
55
|
+
return (l, t) => w(a).keepAlive.value ? c((b(), v("div", {
|
|
51
56
|
key: 0,
|
|
52
|
-
class:
|
|
57
|
+
class: f(["cui-tab-panel", [o.value ? u.value : ""]]),
|
|
53
58
|
role: "tabpanel",
|
|
54
59
|
"aria-labelledby": n.value
|
|
55
60
|
}, [
|
|
56
|
-
|
|
57
|
-
], 10,
|
|
58
|
-
[
|
|
59
|
-
]) :
|
|
61
|
+
m(l.$slots, "default", {}, void 0, !0)
|
|
62
|
+
], 10, g)), [
|
|
63
|
+
[p, o.value && !n.hidden]
|
|
64
|
+
]) : o.value ? c((b(), v("div", {
|
|
60
65
|
key: 1,
|
|
61
|
-
class:
|
|
66
|
+
class: f(["cui-tab-panel", u.value]),
|
|
62
67
|
role: "tabpanel",
|
|
63
68
|
"aria-labelledby": n.value
|
|
64
69
|
}, [
|
|
65
|
-
|
|
66
|
-
], 10,
|
|
67
|
-
[
|
|
68
|
-
]) :
|
|
70
|
+
m(l.$slots, "default", {}, void 0, !0)
|
|
71
|
+
], 10, E)), [
|
|
72
|
+
[p, !n.hidden]
|
|
73
|
+
]) : B("", !0);
|
|
69
74
|
}
|
|
70
75
|
});
|
|
71
76
|
export {
|
|
72
|
-
|
|
77
|
+
$ as default
|
|
73
78
|
};
|
|
@@ -21,14 +21,14 @@ export interface CuiTableProps extends HideableProps, SizeableProps {
|
|
|
21
21
|
*/
|
|
22
22
|
ariaRowcount?: number;
|
|
23
23
|
}
|
|
24
|
-
declare
|
|
24
|
+
declare function measure(): void;
|
|
25
|
+
declare var __VLS_1: {};
|
|
25
26
|
type __VLS_Slots = {} & {
|
|
26
27
|
default?: (props: typeof __VLS_1) => any;
|
|
27
|
-
} & {
|
|
28
|
-
default?: (props: typeof __VLS_3) => any;
|
|
29
28
|
};
|
|
30
29
|
declare const __VLS_component: import("vue").DefineComponent<CuiTableProps, {
|
|
31
30
|
scrollWrapper: import("vue").Ref<HTMLElement | null, HTMLElement | null>;
|
|
31
|
+
measure: typeof measure;
|
|
32
32
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<CuiTableProps> & Readonly<{}>, {
|
|
33
33
|
hidden: boolean;
|
|
34
34
|
size: import("..").CuiSize;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CuiTable.vue.d.ts","sourceRoot":"","sources":["../../src/components/CuiTable.vue"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"CuiTable.vue.d.ts","sourceRoot":"","sources":["../../src/components/CuiTable.vue"],"names":[],"mappings":"AAmTA,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAMpE,MAAM,WAAW,aAAc,SAAQ,aAAa,EAAE,aAAa;IACjE,kCAAkC;IAClC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,0BAA0B;IAC1B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,gCAAgC;IAChC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,mBAAmB;IACnB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,uDAAuD;IACvD,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,8DAA8D;IAC9D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,sFAAsF;IACtF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAiED,iBAAS,OAAO,SAiBf;AAiFD,QAAA,IAAI,OAAO,IAAW,CAAE;AACxB,KAAK,WAAW,GAAG,EAAE,GACnB;IAAE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,OAAO,KAAK,GAAG,CAAA;CAAE,CAAC;AAiC/C,QAAA,MAAM,eAAe;;;;;;aAzNT,OAAO;eAEL,OAAO;cAER,OAAO;kBAEH,OAAO;iBAER,OAAO;6EAyNrB,CAAC;wBACkB,eAAe,CAAC,OAAO,eAAe,EAAE,WAAW,CAAC;AAAzE,wBAA0E;AAa1E,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KAEV,CAAA;CACD,CAAC"}
|