@qynpm/ui 1.0.27 → 1.0.29
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 +401 -313
- package/dist/index.cjs +6 -3
- package/dist/index.mjs +80 -61
- package/dist/qy-action-bar/index.cjs +1 -1
- package/dist/qy-action-bar/index.mjs +1 -1
- package/dist/qy-aside/index.cjs +1 -0
- package/dist/qy-aside/index.mjs +7 -0
- package/dist/qy-button/index.cjs +1 -1
- package/dist/qy-button/index.mjs +1 -1
- package/dist/qy-cascader/index.cjs +1 -1
- package/dist/qy-cascader/index.mjs +1 -1
- package/dist/qy-col/index.cjs +1 -0
- package/dist/qy-col/index.mjs +7 -0
- package/dist/qy-collapse/index.cjs +1 -1
- package/dist/qy-collapse/index.mjs +1 -1
- package/dist/qy-container/index.cjs +1 -0
- package/dist/qy-container/index.mjs +7 -0
- package/dist/qy-date-picker/index.cjs +1 -1
- package/dist/qy-date-picker/index.mjs +1 -1
- package/dist/qy-dialog/index.cjs +1 -1
- package/dist/qy-dialog/index.mjs +1 -1
- package/dist/qy-dropdown/index.cjs +1 -1
- package/dist/qy-dropdown/index.mjs +1 -1
- package/dist/qy-form-section/index.cjs +1 -1
- package/dist/qy-form-section/index.mjs +2 -2
- package/dist/qy-fullscreen/index.cjs +1 -0
- package/dist/qy-fullscreen/index.mjs +7 -0
- package/dist/qy-icon/index.cjs +1 -0
- package/dist/qy-icon/index.mjs +11 -0
- package/dist/qy-icon-picker/index.cjs +5 -0
- package/dist/qy-icon-picker/index.mjs +11 -0
- package/dist/qy-image/index.cjs +1 -1
- package/dist/qy-image/index.mjs +1 -1
- package/dist/qy-image-upload/index.cjs +1 -1
- package/dist/qy-image-upload/index.mjs +1 -1
- package/dist/qy-input/index.cjs +1 -1
- package/dist/qy-input/index.mjs +4 -5
- package/dist/qy-input-number/index.cjs +3 -1
- package/dist/qy-input-number/index.mjs +3 -1
- package/dist/qy-legacy-selection-dialog/index.cjs +1 -1
- package/dist/qy-legacy-selection-dialog/index.mjs +1 -1
- package/dist/qy-link/index.cjs +1 -1
- package/dist/qy-link/index.mjs +1 -1
- package/dist/qy-main/index.cjs +1 -0
- package/dist/qy-main/index.mjs +7 -0
- package/dist/qy-menu-actions/index.cjs +1 -1
- package/dist/qy-menu-actions/index.mjs +1 -1
- package/dist/qy-money-input/index.cjs +1 -1
- package/dist/qy-money-input/index.mjs +1 -1
- package/dist/qy-popover/index.cjs +1 -1
- package/dist/qy-popover/index.mjs +1 -1
- package/dist/qy-record-quote-search/index.cjs +1 -1
- package/dist/qy-record-quote-search/index.mjs +1 -1
- package/dist/qy-remark-image/index.cjs +1 -1
- package/dist/qy-remark-image/index.mjs +1 -1
- package/dist/qy-remote-select/index.cjs +1 -1
- package/dist/qy-remote-select/index.mjs +1 -1
- package/dist/qy-row/index.cjs +1 -0
- package/dist/qy-row/index.mjs +7 -0
- package/dist/qy-scrollbar/index.cjs +1 -1
- package/dist/qy-scrollbar/index.mjs +1 -1
- package/dist/qy-search-input/index.cjs +1 -1
- package/dist/qy-search-input/index.mjs +1 -1
- package/dist/qy-select/index.cjs +1 -1
- package/dist/qy-select/index.mjs +1 -1
- package/dist/qy-selection-dialog/index.cjs +1 -1
- package/dist/qy-selection-dialog/index.mjs +1 -1
- package/dist/qy-statistic/index.cjs +1 -0
- package/dist/qy-statistic/index.mjs +7 -0
- package/dist/qy-tabs/index.cjs +1 -1
- package/dist/qy-tabs/index.mjs +1 -1
- package/dist/qy-tooltip/index.cjs +1 -1
- package/dist/qy-tooltip/index.mjs +1 -1
- package/dist/qy-tree/index.cjs +1 -1
- package/dist/qy-tree/index.mjs +1 -1
- package/dist/qy-upload/index.cjs +1 -1
- package/dist/qy-upload/index.mjs +1 -1
- package/dist/shared/index-4cLP6sJP.cjs +1 -0
- package/dist/shared/index-AirHUQwm.cjs +1 -0
- package/dist/shared/index-B6xIO6kg.cjs +1 -0
- package/dist/shared/index-BNQxyXzB.cjs +1 -0
- package/dist/shared/{index-T9Om5Csd.mjs → index-BQj_q6rA.mjs} +999 -972
- package/dist/shared/{index-BbDWedqW.mjs → index-BSxEaYHx.mjs} +10 -10
- package/dist/shared/index-Bs6yjkZ5.cjs +1 -0
- package/dist/shared/{index.vue_vue_type_style_index_0_lang-aqtfjdVm.mjs → index-C2n0R6rA.mjs} +33 -31
- package/dist/shared/{index-CYn7TvRx.mjs → index-CR6yQfR2.mjs} +1 -1
- package/dist/shared/index-CaNxcPSD.mjs +254 -0
- package/dist/shared/index-Czrv5jUt.mjs +222 -0
- package/dist/shared/{index-DEkng5wh.cjs → index-YM4DcbBZ.cjs} +1 -1
- package/dist/shared/index-qwzyfx9S.cjs +1 -0
- package/dist/shared/index-xuTVtF4x.mjs +6 -0
- package/dist/shared/index.vue_vue_type_script_lang-8AT3-xU-.cjs +1 -0
- package/dist/shared/index.vue_vue_type_script_lang-BaIOvoQn.mjs +43 -0
- package/dist/shared/index.vue_vue_type_script_lang-BgapsQjI.cjs +1 -0
- package/dist/shared/index.vue_vue_type_script_lang-Bk0kLg5l.mjs +34 -0
- package/dist/shared/index.vue_vue_type_script_lang-BnmY1ndj.mjs +77 -0
- package/dist/shared/index.vue_vue_type_script_lang-By3jd4gw.cjs +1 -0
- package/dist/shared/index.vue_vue_type_script_lang-CCL57H5c.cjs +1 -0
- package/dist/shared/index.vue_vue_type_script_lang-CKZUcaZ5.cjs +1 -0
- package/dist/shared/index.vue_vue_type_script_lang-CWnNQBPN.mjs +31 -0
- package/dist/shared/index.vue_vue_type_script_lang-CfjfZCT3.cjs +1 -0
- package/dist/shared/index.vue_vue_type_script_lang-ChS-3_vl.mjs +43 -0
- package/dist/shared/index.vue_vue_type_script_lang-DRvk4-_O.mjs +43 -0
- package/dist/shared/index.vue_vue_type_script_setup_true_lang-BXnZt9UT.mjs +63 -0
- package/dist/shared/index.vue_vue_type_script_setup_true_lang-D7BlbHN5.cjs +1 -0
- package/dist/shared/index.vue_vue_type_style_index_0_lang-BJXS2dVf.mjs +126 -0
- package/dist/shared/index.vue_vue_type_style_index_0_lang-BTqKOZ4L.cjs +1 -0
- package/dist/shared/index.vue_vue_type_style_index_0_lang-Bc-Ya_zS.mjs +286 -0
- package/dist/shared/index.vue_vue_type_style_index_0_lang-M0qKRXd2.cjs +1 -0
- package/index.d.ts +373 -272
- package/package.json +55 -1
- package/qy-aside/index.d.ts +47 -0
- package/qy-col/index.d.ts +65 -0
- package/qy-container/index.d.ts +49 -0
- package/qy-fullscreen/index.d.ts +72 -0
- package/qy-icon/index.d.ts +105 -0
- package/qy-icon-picker/index.d.ts +56 -0
- package/qy-main/index.d.ts +45 -0
- package/qy-row/index.d.ts +59 -0
- package/qy-statistic/index.d.ts +61 -0
- package/dist/shared/index-CnZNcnTs.cjs +0 -1
- package/dist/shared/index-ceTTRCGJ.cjs +0 -1
- package/dist/shared/index.vue_vue_type_script_setup_true_lang-CmQLfhRo.cjs +0 -1
- package/dist/shared/index.vue_vue_type_script_setup_true_lang-DobP199g.mjs +0 -63
- package/dist/shared/index.vue_vue_type_style_index_0_lang-C6urLjSf.cjs +0 -1
- package/dist/shared/index.vue_vue_type_style_index_0_lang-CVxWn-Vs.mjs +0 -121
- package/dist/shared/index.vue_vue_type_style_index_0_lang-Dm1r1WBK.cjs +0 -1
- /package/dist/shared/{index-CpvFUems.cjs → index-C509sCx9.cjs} +0 -0
- /package/dist/shared/{index-DEZF-Fkt.mjs → index-CtF8Nz3g.mjs} +0 -0
- /package/dist/shared/{index-seQHtqdh.mjs → index-D0L-u1nt.mjs} +0 -0
- /package/dist/shared/{index-DIs6iPjF.cjs → index-D30m6gKz.cjs} +0 -0
- /package/dist/shared/{index-BDdhBEFr.cjs → index-D7A0RzWH.cjs} +0 -0
- /package/dist/shared/{index-hEy-3mcr.mjs → index-DJT4yz0h.mjs} +0 -0
- /package/dist/shared/{index.vue_vue_type_style_index_0_lang-CWz689KH.cjs → index.vue_vue_type_style_index_0_lang-1cTut9Ql.cjs} +0 -0
- /package/dist/shared/{index.vue_vue_type_style_index_0_lang-DVqGYfD9.mjs → index.vue_vue_type_style_index_0_lang-B0CXLnL1.mjs} +0 -0
- /package/dist/shared/{index.vue_vue_type_style_index_0_lang-DOfJV2oz.cjs → index.vue_vue_type_style_index_0_lang-CC2-igG3.cjs} +0 -0
- /package/dist/shared/{index.vue_vue_type_style_index_0_lang-B-FeHatv.mjs → index.vue_vue_type_style_index_0_lang-CJaF7Ecm.mjs} +0 -0
- /package/dist/shared/{index.vue_vue_type_style_index_0_lang-DIMCVnQm.mjs → index.vue_vue_type_style_index_0_lang-CPxbKjvY.mjs} +0 -0
- /package/dist/shared/{index.vue_vue_type_style_index_0_lang-CJhIFeBC.mjs → index.vue_vue_type_style_index_0_lang-CcVf5MXE.mjs} +0 -0
- /package/dist/shared/{index.vue_vue_type_style_index_0_lang-Cn3P9d4L.cjs → index.vue_vue_type_style_index_0_lang-CqKs13Fp.cjs} +0 -0
- /package/dist/shared/{index.vue_vue_type_style_index_0_lang-CnL4aeg1.cjs → index.vue_vue_type_style_index_0_lang-D9DraThL.cjs} +0 -0
- /package/dist/shared/{index.vue_vue_type_style_index_0_lang-Cb4yMk-r.cjs → index.vue_vue_type_style_index_0_lang-DFAaBzkW.cjs} +0 -0
- /package/dist/shared/{index.vue_vue_type_style_index_0_lang-D1kpIund.mjs → index.vue_vue_type_style_index_0_lang-DSur831A.mjs} +0 -0
- /package/dist/shared/{index.vue_vue_type_style_index_0_lang-BXTkWo5P.cjs → index.vue_vue_type_style_index_0_lang-DUgOOzEZ.cjs} +0 -0
- /package/dist/shared/{index.vue_vue_type_style_index_0_lang-C1n-zAZh.mjs → index.vue_vue_type_style_index_0_lang-DWiolYb3.mjs} +0 -0
- /package/dist/shared/{index.vue_vue_type_style_index_0_lang-DzfGx6ce.mjs → index.vue_vue_type_style_index_0_lang-Dc84vYSd.mjs} +0 -0
- /package/dist/shared/{index.vue_vue_type_style_index_0_lang-BtbAft4t.cjs → index.vue_vue_type_style_index_0_lang-DccRGtZE.cjs} +0 -0
- /package/dist/shared/{index.vue_vue_type_style_index_0_lang-Q2gFF0PP.cjs → index.vue_vue_type_style_index_0_lang-RiwA2WPO.cjs} +0 -0
- /package/dist/shared/{index.vue_vue_type_style_index_0_lang-dLpQXf6x.mjs → index.vue_vue_type_style_index_0_lang-gs0YJI91.mjs} +0 -0
|
@@ -0,0 +1,286 @@
|
|
|
1
|
+
import { defineComponent as oe, inject as le, ref as m, computed as _, watch as E, nextTick as L, openBlock as d, createElementBlock as f, createVNode as P, unref as q, withCtx as Q, createElementVNode as I, Fragment as te, renderList as re, withKeys as R, withModifiers as C, normalizeClass as ie, toDisplayString as O, renderSlot as ce, createTextVNode as ue, createCommentVNode as U, createBlock as se } from "vue";
|
|
2
|
+
import { Q as D } from "./index-xuTVtF4x.mjs";
|
|
3
|
+
import { Q as j } from "./index-C2n0R6rA.mjs";
|
|
4
|
+
import { QyPopover as de } from "../qy-popover/index.mjs";
|
|
5
|
+
import { n as pe, Q as fe } from "./index-CaNxcPSD.mjs";
|
|
6
|
+
function ve(l, p) {
|
|
7
|
+
const v = p == null ? "" : String(p), a = l && v ? l.resolve(v) : void 0;
|
|
8
|
+
return Object.freeze({
|
|
9
|
+
value: v,
|
|
10
|
+
known: !!a,
|
|
11
|
+
canonicalName: a == null ? void 0 : a.name,
|
|
12
|
+
definition: a
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
function me(l, p, v = "") {
|
|
16
|
+
const a = (l == null ? void 0 : l.list()) ?? [], i = p === void 0 ? void 0 : new Set(
|
|
17
|
+
p.map((t) => {
|
|
18
|
+
var s;
|
|
19
|
+
return (s = l == null ? void 0 : l.resolve(t)) == null ? void 0 : s.name;
|
|
20
|
+
}).filter((t) => !!t).map(F)
|
|
21
|
+
), k = String(v).trim().toLocaleLowerCase();
|
|
22
|
+
return Object.freeze(
|
|
23
|
+
a.filter((t) => i && !i.has(F(t.name)) ? !1 : k ? [
|
|
24
|
+
t.name,
|
|
25
|
+
t.label,
|
|
26
|
+
...t.keywords ?? []
|
|
27
|
+
].some(
|
|
28
|
+
(s) => typeof s == "string" && s.toLocaleLowerCase().includes(k)
|
|
29
|
+
) : !0)
|
|
30
|
+
);
|
|
31
|
+
}
|
|
32
|
+
function F(l) {
|
|
33
|
+
return pe(l).toLocaleLowerCase();
|
|
34
|
+
}
|
|
35
|
+
const ye = { class: "qy-icon-picker" }, he = ["onKeydown"], _e = {
|
|
36
|
+
class: "qy-icon-picker__preview",
|
|
37
|
+
"aria-hidden": "true"
|
|
38
|
+
}, ke = {
|
|
39
|
+
key: 1,
|
|
40
|
+
class: "qy-icon-picker__missing",
|
|
41
|
+
"aria-hidden": "true"
|
|
42
|
+
}, be = ["id"], ge = {
|
|
43
|
+
class: "qy-icon-picker__search",
|
|
44
|
+
"data-testid": "qy-icon-picker-search"
|
|
45
|
+
}, we = ["aria-label"], qe = ["id", "data-qy-icon-option", "data-qy-icon-active", "aria-selected", "tabindex", "onClick", "onFocus", "onKeydown"], Ie = { class: "qy-icon-picker__option-label" }, Ce = {
|
|
46
|
+
key: 1,
|
|
47
|
+
class: "qy-icon-picker__empty"
|
|
48
|
+
};
|
|
49
|
+
let Le = 0;
|
|
50
|
+
const Ne = /* @__PURE__ */ oe({
|
|
51
|
+
name: "QyIconPicker",
|
|
52
|
+
__name: "index",
|
|
53
|
+
props: {
|
|
54
|
+
modelValue: { default: "" },
|
|
55
|
+
allowedNames: {},
|
|
56
|
+
disabled: { type: Boolean, default: !1 },
|
|
57
|
+
clearable: { type: Boolean, default: !1 },
|
|
58
|
+
size: { default: "default" },
|
|
59
|
+
placeholder: { default: "点击选择图标" },
|
|
60
|
+
searchPlaceholder: { default: "搜索图标名称、标签或关键词" },
|
|
61
|
+
emptyText: { default: "暂无匹配图标" },
|
|
62
|
+
panelWidth: { default: 540 },
|
|
63
|
+
open: { type: Boolean, default: void 0 },
|
|
64
|
+
id: {},
|
|
65
|
+
ariaLabel: {}
|
|
66
|
+
},
|
|
67
|
+
emits: ["update:modelValue", "change", "clear", "update:open", "open-change"],
|
|
68
|
+
setup(l, { expose: p, emit: v }) {
|
|
69
|
+
const a = l, i = v, k = le(fe, null), t = m(""), s = m(!1), r = m(-1), z = m([]), b = m(null), B = m(null), K = m("pointer"), M = `qy-icon-picker-${++Le}`, y = _(
|
|
70
|
+
() => ve(k, a.modelValue)
|
|
71
|
+
), u = _(
|
|
72
|
+
() => me(k, a.allowedNames, t.value)
|
|
73
|
+
), g = _(() => a.open !== void 0), h = _(
|
|
74
|
+
() => g.value ? a.open === !0 : s.value
|
|
75
|
+
), Y = _(() => "click"), N = _(() => `${a.id || M}-panel`);
|
|
76
|
+
E(
|
|
77
|
+
h,
|
|
78
|
+
(e, n) => {
|
|
79
|
+
!e || n || (t.value = "", r.value = X(), z.value = [], K.value === "keyboard" && L(() => {
|
|
80
|
+
var o, c;
|
|
81
|
+
return (c = (o = B.value) == null ? void 0 : o.focus) == null ? void 0 : c.call(o);
|
|
82
|
+
}));
|
|
83
|
+
}
|
|
84
|
+
), E(u, () => {
|
|
85
|
+
if (!u.value.length) {
|
|
86
|
+
r.value = -1;
|
|
87
|
+
return;
|
|
88
|
+
}
|
|
89
|
+
r.value >= u.value.length && (r.value = 0), r.value < 0 && (r.value = 0);
|
|
90
|
+
});
|
|
91
|
+
function S() {
|
|
92
|
+
a.disabled || (K.value = "keyboard", V("keyboard"));
|
|
93
|
+
}
|
|
94
|
+
function W(e) {
|
|
95
|
+
a.disabled || g.value && a.open !== !1 || (e.stopImmediatePropagation(), V("pointer"));
|
|
96
|
+
}
|
|
97
|
+
function G(e) {
|
|
98
|
+
x(e);
|
|
99
|
+
}
|
|
100
|
+
function H(e) {
|
|
101
|
+
e === h.value && (g.value || (s.value = e), i("open-change", e), e || L(() => {
|
|
102
|
+
var n, o;
|
|
103
|
+
return (o = (n = b.value) == null ? void 0 : n.focus) == null ? void 0 : o.call(n);
|
|
104
|
+
}));
|
|
105
|
+
}
|
|
106
|
+
function x(e) {
|
|
107
|
+
e && a.disabled || e !== h.value && (g.value || (s.value = e), i("update:open", e));
|
|
108
|
+
}
|
|
109
|
+
function V(e = "programmatic") {
|
|
110
|
+
K.value = e, x(!0);
|
|
111
|
+
}
|
|
112
|
+
function T() {
|
|
113
|
+
x(!1), L(() => {
|
|
114
|
+
var e, n;
|
|
115
|
+
return (n = (e = b.value) == null ? void 0 : e.focus) == null ? void 0 : n.call(e);
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
function A() {
|
|
119
|
+
a.disabled || (i("update:modelValue", ""), i("change", ""), i("clear"));
|
|
120
|
+
}
|
|
121
|
+
function $(e) {
|
|
122
|
+
a.disabled || (i("update:modelValue", e.name), i("change", e.name), T());
|
|
123
|
+
}
|
|
124
|
+
function J(e) {
|
|
125
|
+
if (e.key === "Escape") {
|
|
126
|
+
e.preventDefault(), T();
|
|
127
|
+
return;
|
|
128
|
+
}
|
|
129
|
+
if (!u.value.length || !["ArrowDown", "ArrowUp", "ArrowLeft", "ArrowRight"].includes(e.key)) return;
|
|
130
|
+
e.preventDefault();
|
|
131
|
+
const n = e.key === "ArrowUp" || e.key === "ArrowLeft" ? -1 : 1, o = u.value.length;
|
|
132
|
+
r.value = (r.value + n + o) % o, L(() => {
|
|
133
|
+
var c;
|
|
134
|
+
return (c = z.value[r.value]) == null ? void 0 : c.focus();
|
|
135
|
+
});
|
|
136
|
+
}
|
|
137
|
+
function X() {
|
|
138
|
+
const e = y.value.canonicalName;
|
|
139
|
+
if (!e) return u.value.length ? 0 : -1;
|
|
140
|
+
const n = u.value.findIndex(({ name: o }) => o === e);
|
|
141
|
+
return n >= 0 ? n : u.value.length ? 0 : -1;
|
|
142
|
+
}
|
|
143
|
+
function Z(e, n) {
|
|
144
|
+
e instanceof HTMLElement && (z.value[n] = e);
|
|
145
|
+
}
|
|
146
|
+
function ee(e) {
|
|
147
|
+
return `${N.value}-${encodeURIComponent(e)}`;
|
|
148
|
+
}
|
|
149
|
+
function ae() {
|
|
150
|
+
var e, n;
|
|
151
|
+
(n = (e = b.value) == null ? void 0 : e.focus) == null || n.call(e);
|
|
152
|
+
}
|
|
153
|
+
function ne() {
|
|
154
|
+
var e, n;
|
|
155
|
+
(n = (e = b.value) == null ? void 0 : e.blur) == null || n.call(e);
|
|
156
|
+
}
|
|
157
|
+
return p({ focus: ae, blur: ne, open: V, close: T }), (e, n) => (d(), f("div", ye, [
|
|
158
|
+
P(q(de), {
|
|
159
|
+
ref: "popoverRef",
|
|
160
|
+
class: "qy-icon-picker__popover",
|
|
161
|
+
open: h.value,
|
|
162
|
+
trigger: Y.value,
|
|
163
|
+
placement: "bottom-start",
|
|
164
|
+
width: a.panelWidth,
|
|
165
|
+
"show-delay": 0,
|
|
166
|
+
"hide-delay": 0,
|
|
167
|
+
disabled: a.disabled || g.value && a.open === !1,
|
|
168
|
+
"onUpdate:open": G,
|
|
169
|
+
onOpenChange: H
|
|
170
|
+
}, {
|
|
171
|
+
reference: Q(() => [
|
|
172
|
+
I("div", {
|
|
173
|
+
class: "qy-icon-picker__trigger",
|
|
174
|
+
"data-testid": "qy-icon-picker-trigger",
|
|
175
|
+
onClick: W,
|
|
176
|
+
onKeydown: [
|
|
177
|
+
R(C(S, ["prevent"]), ["enter"]),
|
|
178
|
+
R(C(S, ["prevent"]), ["space"])
|
|
179
|
+
]
|
|
180
|
+
}, [
|
|
181
|
+
P(q(j), {
|
|
182
|
+
ref_key: "triggerRef",
|
|
183
|
+
ref: b,
|
|
184
|
+
id: a.id,
|
|
185
|
+
"model-value": y.value.value,
|
|
186
|
+
size: a.size,
|
|
187
|
+
disabled: a.disabled,
|
|
188
|
+
clearable: a.clearable,
|
|
189
|
+
readonly: "",
|
|
190
|
+
placeholder: a.placeholder,
|
|
191
|
+
"aria-label": a.ariaLabel,
|
|
192
|
+
"aria-haspopup": "listbox",
|
|
193
|
+
"aria-expanded": h.value ? "true" : "false",
|
|
194
|
+
"aria-controls": N.value,
|
|
195
|
+
onClear: A
|
|
196
|
+
}, {
|
|
197
|
+
prefix: Q(() => [
|
|
198
|
+
I("span", _e, [
|
|
199
|
+
y.value.definition ? (d(), se(q(D), {
|
|
200
|
+
key: 0,
|
|
201
|
+
name: y.value.definition.name,
|
|
202
|
+
size: 18
|
|
203
|
+
}, null, 8, ["name"])) : (d(), f("span", ke, "?"))
|
|
204
|
+
])
|
|
205
|
+
]),
|
|
206
|
+
suffix: Q(() => [
|
|
207
|
+
a.clearable && y.value.value ? (d(), f("button", {
|
|
208
|
+
key: 0,
|
|
209
|
+
type: "button",
|
|
210
|
+
class: "qy-icon-picker__clear",
|
|
211
|
+
"data-testid": "qy-icon-picker-clear",
|
|
212
|
+
"aria-label": "清空图标",
|
|
213
|
+
onClick: C(A, ["stop", "prevent"])
|
|
214
|
+
}, [...n[1] || (n[1] = [
|
|
215
|
+
I("span", { "aria-hidden": "true" }, "×", -1)
|
|
216
|
+
])])) : U("", !0)
|
|
217
|
+
]),
|
|
218
|
+
_: 1
|
|
219
|
+
}, 8, ["id", "model-value", "size", "disabled", "clearable", "placeholder", "aria-label", "aria-expanded", "aria-controls"])
|
|
220
|
+
], 40, he)
|
|
221
|
+
]),
|
|
222
|
+
default: Q(() => [
|
|
223
|
+
h.value ? (d(), f("div", {
|
|
224
|
+
key: 0,
|
|
225
|
+
id: N.value,
|
|
226
|
+
class: "qy-icon-picker__panel",
|
|
227
|
+
onKeydown: J
|
|
228
|
+
}, [
|
|
229
|
+
I("div", ge, [
|
|
230
|
+
P(q(j), {
|
|
231
|
+
ref_key: "searchRef",
|
|
232
|
+
ref: B,
|
|
233
|
+
modelValue: t.value,
|
|
234
|
+
"onUpdate:modelValue": n[0] || (n[0] = (o) => t.value = o),
|
|
235
|
+
type: "search",
|
|
236
|
+
clearable: "",
|
|
237
|
+
placeholder: a.searchPlaceholder,
|
|
238
|
+
"aria-label": "搜索图标"
|
|
239
|
+
}, null, 8, ["modelValue", "placeholder"])
|
|
240
|
+
]),
|
|
241
|
+
u.value.length ? (d(), f("div", {
|
|
242
|
+
key: 0,
|
|
243
|
+
class: "qy-icon-picker__grid",
|
|
244
|
+
role: "listbox",
|
|
245
|
+
"aria-label": a.ariaLabel || "图标列表"
|
|
246
|
+
}, [
|
|
247
|
+
(d(!0), f(te, null, re(u.value, (o, c) => (d(), f("div", {
|
|
248
|
+
id: ee(o.name),
|
|
249
|
+
key: o.name,
|
|
250
|
+
ref_for: !0,
|
|
251
|
+
ref: (w) => Z(w, c),
|
|
252
|
+
class: ie(["qy-icon-picker__option", { "is-active": r.value === c }]),
|
|
253
|
+
"data-qy-icon-option": o.name,
|
|
254
|
+
"data-qy-icon-active": r.value === c ? "true" : void 0,
|
|
255
|
+
role: "option",
|
|
256
|
+
"aria-selected": y.value.canonicalName === o.name ? "true" : "false",
|
|
257
|
+
tabindex: r.value === c ? 0 : -1,
|
|
258
|
+
onClick: (w) => $(o),
|
|
259
|
+
onFocus: (w) => r.value = c,
|
|
260
|
+
onKeydown: [
|
|
261
|
+
R(C((w) => $(o), ["prevent"]), ["enter"]),
|
|
262
|
+
R(C((w) => $(o), ["prevent"]), ["space"])
|
|
263
|
+
]
|
|
264
|
+
}, [
|
|
265
|
+
P(q(D), {
|
|
266
|
+
name: o.name,
|
|
267
|
+
size: 18,
|
|
268
|
+
"aria-hidden": "true"
|
|
269
|
+
}, null, 8, ["name"]),
|
|
270
|
+
I("span", Ie, O(o.label || o.name), 1)
|
|
271
|
+
], 42, qe))), 128))
|
|
272
|
+
], 8, we)) : (d(), f("div", Ce, [
|
|
273
|
+
ce(e.$slots, "empty", {}, () => [
|
|
274
|
+
ue(O(a.emptyText), 1)
|
|
275
|
+
])
|
|
276
|
+
]))
|
|
277
|
+
], 40, be)) : U("", !0)
|
|
278
|
+
]),
|
|
279
|
+
_: 3
|
|
280
|
+
}, 8, ["open", "trigger", "width", "disabled"])
|
|
281
|
+
]));
|
|
282
|
+
}
|
|
283
|
+
});
|
|
284
|
+
export {
|
|
285
|
+
Ne as _
|
|
286
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const t=require("vue"),P=require("element-plus"),K=1e3,O=t.defineComponent({name:"QyPopover",inheritAttrs:!1,__name:"index",props:{trigger:{type:String,default:"click"},placement:{type:String,default:"bottom"},effect:{type:String,default:"light"},width:{type:[Number,String],default:240},offset:{type:Number,default:12},showDelay:{type:Number,default:0},hideDelay:{type:Number,default:200},showArrow:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},open:{type:Boolean,default:void 0}},emits:["update:open","open-change","open","close"],setup(r,{expose:B,emit:E}){const n=r,d=E,i=t.computed(()=>n.open!==void 0),v=i.value&&n.open===!0&&!n.disabled,f=t.ref(v),u=t.ref(v),h=t.ref(v),a=t.ref(null),y=t.computed(()=>n.disabled?!1:i.value?n.open===!0:f.value);let o,c=!1,s;const b=t.computed(()=>typeof n.width=="number"?`${n.width}px`:n.width),T=t.computed(()=>({"--qy-popover-width":b.value,"--qy-popover-mobile-gutter":"24px"})),m=t.useSlots(),q=t.computed(()=>{var e;return((e=m.reference)==null?void 0:e.call(m))??[]});function w(){o&&(clearTimeout(o),o=void 0),a.value=null}function C(e){o&&clearTimeout(o),o=setTimeout(()=>{o=void 0,a.value===e&&(a.value=null)},K)}function l(){if(c)return;const e=y.value;u.value!==e&&(c=!0,s=e,u.value=e)}function p(e){if(!(e&&n.disabled)){if(!i.value){if(f.value===e)return;f.value=e,d("update:open",e),l();return}a.value!==e&&(a.value===null&&n.open===e||(a.value=e,e?C(e):o&&(clearTimeout(o),o=void 0),d("update:open",e),l()))}}function g(e){e===u.value&&(!c||s!==e||(c=!1,s=void 0,e!==h.value&&(h.value=e,a.value===e&&w(),d("open-change",e),d(e?"open":"close"),l())))}function L(e){p(e),l()}function N(){g(!0)}function S(){g(!1)}function W(){p(!1)}function k(e){e.key!=="Escape"&&e.code!=="Escape"||u.value&&(e.preventDefault(),p(!1),l())}return t.watch(y,()=>l()),t.watch(i,e=>{w(),e?f.value=n.open===!0:f.value=u.value,l()}),t.watch(()=>n.open,(e,A)=>{!i.value||a.value===null||(e===a.value||e!==A)&&w()}),t.watch(()=>n.disabled,e=>{e?p(!1):l()}),t.onBeforeUnmount(()=>{window.removeEventListener("keydown",k),c=!1,s=void 0,o&&clearTimeout(o)}),t.onMounted(()=>{window.addEventListener("keydown",k)}),B({close:W}),(e,A)=>(t.openBlock(),t.createBlock(t.unref(P.ElPopover),{visible:u.value,trigger:r.trigger,placement:r.placement,effect:r.effect,width:r.width,offset:r.offset,"show-after":r.showDelay,"hide-after":r.hideDelay,"show-arrow":r.showArrow,disabled:r.disabled,enterable:!0,"popper-style":T.value,"popper-class":"qy-popover-popper","onUpdate:visible":L,onAfterEnter:N,onAfterLeave:S},{reference:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(q.value,(D,I)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(D),{key:D.key??I}))),128))]),default:t.withCtx(()=>[t.renderSlot(e.$slots,"default")]),_:3},8,["visible","trigger","placement","effect","width","offset","show-after","hide-after","show-arrow","disabled","popper-style"]))}});exports._sfc_main=O;
|