@qynpm/ui 1.0.28 → 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.
Files changed (148) hide show
  1. package/README.md +88 -0
  2. package/dist/index.cjs +6 -3
  3. package/dist/index.mjs +80 -61
  4. package/dist/qy-action-bar/index.cjs +1 -1
  5. package/dist/qy-action-bar/index.mjs +1 -1
  6. package/dist/qy-aside/index.cjs +1 -0
  7. package/dist/qy-aside/index.mjs +7 -0
  8. package/dist/qy-button/index.cjs +1 -1
  9. package/dist/qy-button/index.mjs +1 -1
  10. package/dist/qy-cascader/index.cjs +1 -1
  11. package/dist/qy-cascader/index.mjs +1 -1
  12. package/dist/qy-col/index.cjs +1 -0
  13. package/dist/qy-col/index.mjs +7 -0
  14. package/dist/qy-collapse/index.cjs +1 -1
  15. package/dist/qy-collapse/index.mjs +1 -1
  16. package/dist/qy-container/index.cjs +1 -0
  17. package/dist/qy-container/index.mjs +7 -0
  18. package/dist/qy-date-picker/index.cjs +1 -1
  19. package/dist/qy-date-picker/index.mjs +1 -1
  20. package/dist/qy-dialog/index.cjs +1 -1
  21. package/dist/qy-dialog/index.mjs +1 -1
  22. package/dist/qy-dropdown/index.cjs +1 -1
  23. package/dist/qy-dropdown/index.mjs +1 -1
  24. package/dist/qy-form-section/index.cjs +1 -1
  25. package/dist/qy-form-section/index.mjs +2 -2
  26. package/dist/qy-fullscreen/index.cjs +1 -0
  27. package/dist/qy-fullscreen/index.mjs +7 -0
  28. package/dist/qy-icon/index.cjs +1 -0
  29. package/dist/qy-icon/index.mjs +11 -0
  30. package/dist/qy-icon-picker/index.cjs +5 -0
  31. package/dist/qy-icon-picker/index.mjs +11 -0
  32. package/dist/qy-image/index.cjs +1 -1
  33. package/dist/qy-image/index.mjs +1 -1
  34. package/dist/qy-image-upload/index.cjs +1 -1
  35. package/dist/qy-image-upload/index.mjs +1 -1
  36. package/dist/qy-input/index.cjs +1 -1
  37. package/dist/qy-input/index.mjs +4 -5
  38. package/dist/qy-input-number/index.cjs +1 -1
  39. package/dist/qy-input-number/index.mjs +1 -1
  40. package/dist/qy-legacy-selection-dialog/index.cjs +1 -1
  41. package/dist/qy-legacy-selection-dialog/index.mjs +1 -1
  42. package/dist/qy-link/index.cjs +1 -1
  43. package/dist/qy-link/index.mjs +1 -1
  44. package/dist/qy-main/index.cjs +1 -0
  45. package/dist/qy-main/index.mjs +7 -0
  46. package/dist/qy-menu-actions/index.cjs +1 -1
  47. package/dist/qy-menu-actions/index.mjs +1 -1
  48. package/dist/qy-money-input/index.cjs +1 -1
  49. package/dist/qy-money-input/index.mjs +1 -1
  50. package/dist/qy-popover/index.cjs +1 -1
  51. package/dist/qy-popover/index.mjs +1 -1
  52. package/dist/qy-record-quote-search/index.cjs +1 -1
  53. package/dist/qy-record-quote-search/index.mjs +1 -1
  54. package/dist/qy-remark-image/index.cjs +1 -1
  55. package/dist/qy-remark-image/index.mjs +1 -1
  56. package/dist/qy-remote-select/index.cjs +1 -1
  57. package/dist/qy-remote-select/index.mjs +1 -1
  58. package/dist/qy-row/index.cjs +1 -0
  59. package/dist/qy-row/index.mjs +7 -0
  60. package/dist/qy-scrollbar/index.cjs +1 -1
  61. package/dist/qy-scrollbar/index.mjs +1 -1
  62. package/dist/qy-search-input/index.cjs +1 -1
  63. package/dist/qy-search-input/index.mjs +1 -1
  64. package/dist/qy-select/index.cjs +1 -1
  65. package/dist/qy-select/index.mjs +1 -1
  66. package/dist/qy-selection-dialog/index.cjs +1 -1
  67. package/dist/qy-selection-dialog/index.mjs +1 -1
  68. package/dist/qy-statistic/index.cjs +1 -0
  69. package/dist/qy-statistic/index.mjs +7 -0
  70. package/dist/qy-tabs/index.cjs +1 -1
  71. package/dist/qy-tabs/index.mjs +1 -1
  72. package/dist/qy-tooltip/index.cjs +1 -1
  73. package/dist/qy-tooltip/index.mjs +1 -1
  74. package/dist/qy-tree/index.cjs +1 -1
  75. package/dist/qy-tree/index.mjs +1 -1
  76. package/dist/qy-upload/index.cjs +1 -1
  77. package/dist/qy-upload/index.mjs +1 -1
  78. package/dist/shared/index-4cLP6sJP.cjs +1 -0
  79. package/dist/shared/index-AirHUQwm.cjs +1 -0
  80. package/dist/shared/index-B6xIO6kg.cjs +1 -0
  81. package/dist/shared/index-BNQxyXzB.cjs +1 -0
  82. package/dist/shared/{index-DleLvEzf.mjs → index-BQj_q6rA.mjs} +998 -972
  83. package/dist/shared/{index-CVoiIRas.mjs → index-BSxEaYHx.mjs} +1 -1
  84. package/dist/shared/{index-BTL45WYB.cjs → index-Bs6yjkZ5.cjs} +1 -1
  85. package/dist/shared/{index.vue_vue_type_style_index_0_lang-aqtfjdVm.mjs → index-C2n0R6rA.mjs} +33 -31
  86. package/dist/shared/{index-CYn7TvRx.mjs → index-CR6yQfR2.mjs} +1 -1
  87. package/dist/shared/index-CaNxcPSD.mjs +254 -0
  88. package/dist/shared/index-Czrv5jUt.mjs +222 -0
  89. package/dist/shared/{index-DEkng5wh.cjs → index-YM4DcbBZ.cjs} +1 -1
  90. package/dist/shared/index-qwzyfx9S.cjs +1 -0
  91. package/dist/shared/index-xuTVtF4x.mjs +6 -0
  92. package/dist/shared/index.vue_vue_type_script_lang-8AT3-xU-.cjs +1 -0
  93. package/dist/shared/index.vue_vue_type_script_lang-BaIOvoQn.mjs +43 -0
  94. package/dist/shared/index.vue_vue_type_script_lang-BgapsQjI.cjs +1 -0
  95. package/dist/shared/index.vue_vue_type_script_lang-Bk0kLg5l.mjs +34 -0
  96. package/dist/shared/index.vue_vue_type_script_lang-BnmY1ndj.mjs +77 -0
  97. package/dist/shared/index.vue_vue_type_script_lang-By3jd4gw.cjs +1 -0
  98. package/dist/shared/index.vue_vue_type_script_lang-CCL57H5c.cjs +1 -0
  99. package/dist/shared/index.vue_vue_type_script_lang-CKZUcaZ5.cjs +1 -0
  100. package/dist/shared/index.vue_vue_type_script_lang-CWnNQBPN.mjs +31 -0
  101. package/dist/shared/index.vue_vue_type_script_lang-CfjfZCT3.cjs +1 -0
  102. package/dist/shared/index.vue_vue_type_script_lang-ChS-3_vl.mjs +43 -0
  103. package/dist/shared/index.vue_vue_type_script_lang-DRvk4-_O.mjs +43 -0
  104. package/dist/shared/index.vue_vue_type_script_setup_true_lang-BXnZt9UT.mjs +63 -0
  105. package/dist/shared/index.vue_vue_type_script_setup_true_lang-D7BlbHN5.cjs +1 -0
  106. package/dist/shared/index.vue_vue_type_style_index_0_lang-BJXS2dVf.mjs +126 -0
  107. package/dist/shared/index.vue_vue_type_style_index_0_lang-BTqKOZ4L.cjs +1 -0
  108. package/dist/shared/index.vue_vue_type_style_index_0_lang-Bc-Ya_zS.mjs +286 -0
  109. package/dist/shared/index.vue_vue_type_style_index_0_lang-M0qKRXd2.cjs +1 -0
  110. package/index.d.ts +101 -0
  111. package/package.json +55 -1
  112. package/qy-aside/index.d.ts +47 -0
  113. package/qy-col/index.d.ts +65 -0
  114. package/qy-container/index.d.ts +49 -0
  115. package/qy-fullscreen/index.d.ts +72 -0
  116. package/qy-icon/index.d.ts +105 -0
  117. package/qy-icon-picker/index.d.ts +56 -0
  118. package/qy-main/index.d.ts +45 -0
  119. package/qy-row/index.d.ts +59 -0
  120. package/qy-statistic/index.d.ts +61 -0
  121. package/dist/shared/index-B8phg478.cjs +0 -1
  122. package/dist/shared/index.vue_vue_type_script_setup_true_lang-CmQLfhRo.cjs +0 -1
  123. package/dist/shared/index.vue_vue_type_script_setup_true_lang-DobP199g.mjs +0 -63
  124. package/dist/shared/index.vue_vue_type_style_index_0_lang-C6urLjSf.cjs +0 -1
  125. package/dist/shared/index.vue_vue_type_style_index_0_lang-CVxWn-Vs.mjs +0 -121
  126. package/dist/shared/index.vue_vue_type_style_index_0_lang-Dm1r1WBK.cjs +0 -1
  127. /package/dist/shared/{index-CpvFUems.cjs → index-C509sCx9.cjs} +0 -0
  128. /package/dist/shared/{index-DEZF-Fkt.mjs → index-CtF8Nz3g.mjs} +0 -0
  129. /package/dist/shared/{index-seQHtqdh.mjs → index-D0L-u1nt.mjs} +0 -0
  130. /package/dist/shared/{index-DIs6iPjF.cjs → index-D30m6gKz.cjs} +0 -0
  131. /package/dist/shared/{index-BDdhBEFr.cjs → index-D7A0RzWH.cjs} +0 -0
  132. /package/dist/shared/{index-hEy-3mcr.mjs → index-DJT4yz0h.mjs} +0 -0
  133. /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
  134. /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
  135. /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
  136. /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
  137. /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
  138. /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
  139. /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
  140. /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
  141. /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
  142. /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
  143. /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
  144. /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
  145. /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
  146. /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
  147. /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
  148. /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,63 @@
1
+ import { defineComponent as u, useAttrs as m, computed as r, openBlock as p, createBlock as g, unref as h, mergeProps as b, withCtx as i, renderSlot as l } from "vue";
2
+ import { ElLink as v } from "element-plus";
3
+ const j = /* @__PURE__ */ u({
4
+ name: "QyLink",
5
+ inheritAttrs: !1,
6
+ __name: "index",
7
+ props: {
8
+ type: {
9
+ type: String,
10
+ default: void 0
11
+ },
12
+ underline: {
13
+ type: [Boolean, String],
14
+ default: void 0
15
+ },
16
+ disabled: Boolean,
17
+ href: {
18
+ type: String,
19
+ default: ""
20
+ },
21
+ target: {
22
+ type: String,
23
+ default: "_self"
24
+ },
25
+ icon: {
26
+ type: [String, Object, Function],
27
+ default: void 0
28
+ }
29
+ },
30
+ emits: ["click"],
31
+ setup(t, { emit: a }) {
32
+ const n = t, o = a, d = m(), s = r(() => n.underline === !0 ? "hover" : n.underline === !1 ? "never" : n.underline), c = r(
33
+ () => Object.fromEntries(
34
+ Object.entries(d).filter(
35
+ ([e]) => e === "class" || e === "style" || e === "id" || e === "role" || e === "title" || e === "rel" || e === "download" || e === "hreflang" || e === "referrerpolicy" || e === "ping" || e === "tabindex" || e.startsWith("data-") || e.startsWith("aria-")
36
+ )
37
+ )
38
+ );
39
+ function f(e) {
40
+ o("click", e);
41
+ }
42
+ return (e, S) => (p(), g(h(v), b(c.value, {
43
+ type: t.type,
44
+ underline: s.value,
45
+ disabled: t.disabled,
46
+ href: t.href,
47
+ target: t.target,
48
+ icon: t.icon,
49
+ onClick: f
50
+ }), {
51
+ icon: i(() => [
52
+ l(e.$slots, "icon")
53
+ ]),
54
+ default: i(() => [
55
+ l(e.$slots, "default")
56
+ ]),
57
+ _: 3
58
+ }, 16, ["type", "underline", "disabled", "href", "target", "icon"]));
59
+ }
60
+ });
61
+ export {
62
+ j as _
63
+ };
@@ -0,0 +1 @@
1
+ "use strict";const t=require("vue"),c=require("element-plus"),u=t.defineComponent({name:"QyLink",inheritAttrs:!1,__name:"index",props:{type:{type:String,default:void 0},underline:{type:[Boolean,String],default:void 0},disabled:Boolean,href:{type:String,default:""},target:{type:String,default:"_self"},icon:{type:[String,Object,Function],default:void 0}},emits:["click"],setup(n,{emit:i}){const r=n,l=i,a=t.useAttrs(),o=t.computed(()=>r.underline===!0?"hover":r.underline===!1?"never":r.underline),s=t.computed(()=>Object.fromEntries(Object.entries(a).filter(([e])=>e==="class"||e==="style"||e==="id"||e==="role"||e==="title"||e==="rel"||e==="download"||e==="hreflang"||e==="referrerpolicy"||e==="ping"||e==="tabindex"||e.startsWith("data-")||e.startsWith("aria-"))));function d(e){l("click",e)}return(e,f)=>(t.openBlock(),t.createBlock(t.unref(c.ElLink),t.mergeProps(s.value,{type:n.type,underline:o.value,disabled:n.disabled,href:n.href,target:n.target,icon:n.icon,onClick:d}),{icon:t.withCtx(()=>[t.renderSlot(e.$slots,"icon")]),default:t.withCtx(()=>[t.renderSlot(e.$slots,"default")]),_:3},16,["type","underline","disabled","href","target","icon"]))}});exports._sfc_main=u;
@@ -0,0 +1,126 @@
1
+ import { defineComponent as z, computed as d, ref as v, useSlots as F, watch as m, onBeforeUnmount as M, onMounted as Q, openBlock as g, createBlock as B, unref as R, withCtx as L, renderSlot as j, createElementBlock as G, Fragment as H, renderList as J, resolveDynamicComponent as X } from "vue";
2
+ import { ElPopover as Y } from "element-plus";
3
+ const Z = 1e3, V = /* @__PURE__ */ z({
4
+ name: "QyPopover",
5
+ inheritAttrs: !1,
6
+ __name: "index",
7
+ props: {
8
+ trigger: { type: String, default: "click" },
9
+ placement: { type: String, default: "bottom" },
10
+ effect: { type: String, default: "light" },
11
+ width: { type: [Number, String], default: 240 },
12
+ offset: { type: Number, default: 12 },
13
+ showDelay: { type: Number, default: 0 },
14
+ hideDelay: { type: Number, default: 200 },
15
+ showArrow: { type: Boolean, default: !0 },
16
+ disabled: { type: Boolean, default: !1 },
17
+ open: { type: Boolean, default: void 0 }
18
+ },
19
+ emits: ["update:open", "open-change", "open", "close"],
20
+ setup(r, { expose: N, emit: S }) {
21
+ const t = r, c = S, u = d(() => t.open !== void 0), w = u.value && t.open === !0 && !t.disabled, i = v(w), l = v(w), k = v(w), o = v(null), A = d(() => t.disabled ? !1 : u.value ? t.open === !0 : i.value);
22
+ let n, f = !1, s;
23
+ const C = d(
24
+ () => typeof t.width == "number" ? `${t.width}px` : t.width
25
+ ), q = d(() => ({
26
+ "--qy-popover-width": C.value,
27
+ "--qy-popover-mobile-gutter": "24px"
28
+ })), h = F(), W = d(
29
+ () => {
30
+ var e;
31
+ return ((e = h.reference) == null ? void 0 : e.call(h)) ?? [];
32
+ }
33
+ );
34
+ function y() {
35
+ n && (clearTimeout(n), n = void 0), o.value = null;
36
+ }
37
+ function I(e) {
38
+ n && clearTimeout(n), n = setTimeout(() => {
39
+ n = void 0, o.value === e && (o.value = null);
40
+ }, Z);
41
+ }
42
+ function a() {
43
+ if (f) return;
44
+ const e = A.value;
45
+ l.value !== e && (f = !0, s = e, l.value = e);
46
+ }
47
+ function p(e) {
48
+ if (!(e && t.disabled)) {
49
+ if (!u.value) {
50
+ if (i.value === e) return;
51
+ i.value = e, c("update:open", e), a();
52
+ return;
53
+ }
54
+ o.value !== e && (o.value === null && t.open === e || (o.value = e, e ? I(e) : n && (clearTimeout(n), n = void 0), c("update:open", e), a()));
55
+ }
56
+ }
57
+ function D(e) {
58
+ e === l.value && (!f || s !== e || (f = !1, s = void 0, e !== k.value && (k.value = e, o.value === e && y(), c("open-change", e), c(e ? "open" : "close"), a())));
59
+ }
60
+ function K(e) {
61
+ p(e), a();
62
+ }
63
+ function O() {
64
+ D(!0);
65
+ }
66
+ function P() {
67
+ D(!1);
68
+ }
69
+ function U() {
70
+ p(!1);
71
+ }
72
+ function E(e) {
73
+ e.key !== "Escape" && e.code !== "Escape" || l.value && (e.preventDefault(), p(!1), a());
74
+ }
75
+ return m(
76
+ A,
77
+ () => a()
78
+ ), m(u, (e) => {
79
+ y(), e ? i.value = t.open === !0 : i.value = l.value, a();
80
+ }), m(
81
+ () => t.open,
82
+ (e, b) => {
83
+ !u.value || o.value === null || (e === o.value || e !== b) && y();
84
+ }
85
+ ), m(
86
+ () => t.disabled,
87
+ (e) => {
88
+ e ? p(!1) : a();
89
+ }
90
+ ), M(() => {
91
+ window.removeEventListener("keydown", E), f = !1, s = void 0, n && clearTimeout(n);
92
+ }), Q(() => {
93
+ window.addEventListener("keydown", E);
94
+ }), N({ close: U }), (e, b) => (g(), B(R(Y), {
95
+ visible: l.value,
96
+ trigger: r.trigger,
97
+ placement: r.placement,
98
+ effect: r.effect,
99
+ width: r.width,
100
+ offset: r.offset,
101
+ "show-after": r.showDelay,
102
+ "hide-after": r.hideDelay,
103
+ "show-arrow": r.showArrow,
104
+ disabled: r.disabled,
105
+ enterable: !0,
106
+ "popper-style": q.value,
107
+ "popper-class": "qy-popover-popper",
108
+ "onUpdate:visible": K,
109
+ onAfterEnter: O,
110
+ onAfterLeave: P
111
+ }, {
112
+ reference: L(() => [
113
+ (g(!0), G(H, null, J(W.value, (T, $) => (g(), B(X(T), {
114
+ key: T.key ?? $
115
+ }))), 128))
116
+ ]),
117
+ default: L(() => [
118
+ j(e.$slots, "default")
119
+ ]),
120
+ _: 3
121
+ }, 8, ["visible", "trigger", "placement", "effect", "width", "offset", "show-after", "hide-after", "show-arrow", "disabled", "popper-style"]));
122
+ }
123
+ });
124
+ export {
125
+ V as _
126
+ };
@@ -0,0 +1 @@
1
+ "use strict";const e=require("vue"),E=require("./index-B6xIO6kg.cjs"),K=require("./index-4cLP6sJP.cjs"),j=require("../qy-popover/index.cjs"),L=require("./index-AirHUQwm.cjs");function F(l,p){const f=p==null?"":String(p),n=l&&f?l.resolve(f):void 0;return Object.freeze({value:f,known:!!n,canonicalName:n==null?void 0:n.name,definition:n})}function Y(l,p,f=""){const n=(l==null?void 0:l.list())??[],c=p===void 0?void 0:new Set(p.map(r=>{var s;return(s=l==null?void 0:l.resolve(r))==null?void 0:s.name}).filter(r=>!!r).map(P)),h=String(f).trim().toLocaleLowerCase();return Object.freeze(n.filter(r=>c&&!c.has(P(r.name))?!1:h?[r.name,r.label,...r.keywords??[]].some(s=>typeof s=="string"&&s.toLocaleLowerCase().includes(h)):!0))}function P(l){return L.normalizeQyIconName(l).toLocaleLowerCase()}const W={class:"qy-icon-picker"},G=["onKeydown"],H={class:"qy-icon-picker__preview","aria-hidden":"true"},J={key:1,class:"qy-icon-picker__missing","aria-hidden":"true"},X=["id"],Z={class:"qy-icon-picker__search","data-testid":"qy-icon-picker-search"},ee=["aria-label"],ae=["id","data-qy-icon-option","data-qy-icon-active","aria-selected","tabindex","onClick","onFocus","onKeydown"],ne={class:"qy-icon-picker__option-label"},oe={key:1,class:"qy-icon-picker__empty"};let te=0;const le=e.defineComponent({name:"QyIconPicker",__name:"index",props:{modelValue:{default:""},allowedNames:{},disabled:{type:Boolean,default:!1},clearable:{type:Boolean,default:!1},size:{default:"default"},placeholder:{default:"点击选择图标"},searchPlaceholder:{default:"搜索图标名称、标签或关键词"},emptyText:{default:"暂无匹配图标"},panelWidth:{default:540},open:{type:Boolean,default:void 0},id:{},ariaLabel:{}},emits:["update:modelValue","change","clear","update:open","open-change"],setup(l,{expose:p,emit:f}){const n=l,c=f,h=e.inject(L.QY_ICON_REGISTRY_KEY,null),r=e.ref(""),s=e.ref(!1),i=e.ref(-1),b=e.ref([]),y=e.ref(null),x=e.ref(null),w=e.ref("pointer"),Q=`qy-icon-picker-${++te}`,v=e.computed(()=>F(h,n.modelValue)),d=e.computed(()=>Y(h,n.allowedNames,r.value)),k=e.computed(()=>n.open!==void 0),m=e.computed(()=>k.value?n.open===!0:s.value),R=e.computed(()=>"click"),g=e.computed(()=>`${n.id||Q}-panel`);e.watch(m,(a,o)=>{!a||o||(r.value="",i.value=M(),b.value=[],w.value==="keyboard"&&e.nextTick(()=>{var t,u;return(u=(t=x.value)==null?void 0:t.focus)==null?void 0:u.call(t)}))}),e.watch(d,()=>{if(!d.value.length){i.value=-1;return}i.value>=d.value.length&&(i.value=0),i.value<0&&(i.value=0)});function N(){n.disabled||(w.value="keyboard",I("keyboard"))}function T(a){n.disabled||k.value&&n.open!==!1||(a.stopImmediatePropagation(),I("pointer"))}function z(a){q(a)}function $(a){a===m.value&&(k.value||(s.value=a),c("open-change",a),a||e.nextTick(()=>{var o,t;return(t=(o=y.value)==null?void 0:o.focus)==null?void 0:t.call(o)}))}function q(a){a&&n.disabled||a!==m.value&&(k.value||(s.value=a),c("update:open",a))}function I(a="programmatic"){w.value=a,q(!0)}function B(){q(!1),e.nextTick(()=>{var a,o;return(o=(a=y.value)==null?void 0:a.focus)==null?void 0:o.call(a)})}function V(){n.disabled||(c("update:modelValue",""),c("change",""),c("clear"))}function C(a){n.disabled||(c("update:modelValue",a.name),c("change",a.name),B())}function S(a){if(a.key==="Escape"){a.preventDefault(),B();return}if(!d.value.length||!["ArrowDown","ArrowUp","ArrowLeft","ArrowRight"].includes(a.key))return;a.preventDefault();const o=a.key==="ArrowUp"||a.key==="ArrowLeft"?-1:1,t=d.value.length;i.value=(i.value+o+t)%t,e.nextTick(()=>{var u;return(u=b.value[i.value])==null?void 0:u.focus()})}function M(){const a=v.value.canonicalName;if(!a)return d.value.length?0:-1;const o=d.value.findIndex(({name:t})=>t===a);return o>=0?o:d.value.length?0:-1}function A(a,o){a instanceof HTMLElement&&(b.value[o]=a)}function O(a){return`${g.value}-${encodeURIComponent(a)}`}function D(){var a,o;(o=(a=y.value)==null?void 0:a.focus)==null||o.call(a)}function U(){var a,o;(o=(a=y.value)==null?void 0:a.blur)==null||o.call(a)}return p({focus:D,blur:U,open:I,close:B}),(a,o)=>(e.openBlock(),e.createElementBlock("div",W,[e.createVNode(e.unref(j.QyPopover),{ref:"popoverRef",class:"qy-icon-picker__popover",open:m.value,trigger:R.value,placement:"bottom-start",width:n.panelWidth,"show-delay":0,"hide-delay":0,disabled:n.disabled||k.value&&n.open===!1,"onUpdate:open":z,onOpenChange:$},{reference:e.withCtx(()=>[e.createElementVNode("div",{class:"qy-icon-picker__trigger","data-testid":"qy-icon-picker-trigger",onClick:T,onKeydown:[e.withKeys(e.withModifiers(N,["prevent"]),["enter"]),e.withKeys(e.withModifiers(N,["prevent"]),["space"])]},[e.createVNode(e.unref(K.QyInput),{ref_key:"triggerRef",ref:y,id:n.id,"model-value":v.value.value,size:n.size,disabled:n.disabled,clearable:n.clearable,readonly:"",placeholder:n.placeholder,"aria-label":n.ariaLabel,"aria-haspopup":"listbox","aria-expanded":m.value?"true":"false","aria-controls":g.value,onClear:V},{prefix:e.withCtx(()=>[e.createElementVNode("span",H,[v.value.definition?(e.openBlock(),e.createBlock(e.unref(E.QyIcon),{key:0,name:v.value.definition.name,size:18},null,8,["name"])):(e.openBlock(),e.createElementBlock("span",J,"?"))])]),suffix:e.withCtx(()=>[n.clearable&&v.value.value?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",class:"qy-icon-picker__clear","data-testid":"qy-icon-picker-clear","aria-label":"清空图标",onClick:e.withModifiers(V,["stop","prevent"])},[...o[1]||(o[1]=[e.createElementVNode("span",{"aria-hidden":"true"},"×",-1)])])):e.createCommentVNode("",!0)]),_:1},8,["id","model-value","size","disabled","clearable","placeholder","aria-label","aria-expanded","aria-controls"])],40,G)]),default:e.withCtx(()=>[m.value?(e.openBlock(),e.createElementBlock("div",{key:0,id:g.value,class:"qy-icon-picker__panel",onKeydown:S},[e.createElementVNode("div",Z,[e.createVNode(e.unref(K.QyInput),{ref_key:"searchRef",ref:x,modelValue:r.value,"onUpdate:modelValue":o[0]||(o[0]=t=>r.value=t),type:"search",clearable:"",placeholder:n.searchPlaceholder,"aria-label":"搜索图标"},null,8,["modelValue","placeholder"])]),d.value.length?(e.openBlock(),e.createElementBlock("div",{key:0,class:"qy-icon-picker__grid",role:"listbox","aria-label":n.ariaLabel||"图标列表"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,(t,u)=>(e.openBlock(),e.createElementBlock("div",{id:O(t.name),key:t.name,ref_for:!0,ref:_=>A(_,u),class:e.normalizeClass(["qy-icon-picker__option",{"is-active":i.value===u}]),"data-qy-icon-option":t.name,"data-qy-icon-active":i.value===u?"true":void 0,role:"option","aria-selected":v.value.canonicalName===t.name?"true":"false",tabindex:i.value===u?0:-1,onClick:_=>C(t),onFocus:_=>i.value=u,onKeydown:[e.withKeys(e.withModifiers(_=>C(t),["prevent"]),["enter"]),e.withKeys(e.withModifiers(_=>C(t),["prevent"]),["space"])]},[e.createVNode(e.unref(E.QyIcon),{name:t.name,size:18,"aria-hidden":"true"},null,8,["name"]),e.createElementVNode("span",ne,e.toDisplayString(t.label||t.name),1)],42,ae))),128))],8,ee)):(e.openBlock(),e.createElementBlock("div",oe,[e.renderSlot(a.$slots,"empty",{},()=>[e.createTextVNode(e.toDisplayString(n.emptyText),1)])]))],40,X)):e.createCommentVNode("",!0)]),_:3},8,["open","trigger","width","disabled"])]))}});exports._sfc_main=le;
@@ -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;
package/index.d.ts CHANGED
@@ -18,6 +18,14 @@ import type QyTabsComponent from './qy-tabs'
18
18
  import type QyTabPaneComponent from './qy-tab-pane'
19
19
  import type QyStepsComponent from './qy-steps'
20
20
  import type QyStepComponent from './qy-step'
21
+ import type QyFullscreenComponent from './qy-fullscreen'
22
+ import type QyIconComponent from './qy-icon'
23
+ import type QyIconPickerComponent from './qy-icon-picker'
24
+ import type QyRowComponent from './qy-row'
25
+ import type QyColComponent from './qy-col'
26
+ import type QyContainerComponent from './qy-container'
27
+ import type QyAsideComponent from './qy-aside'
28
+ import type QyMainComponent from './qy-main'
21
29
  import type QyDescriptionsComponent from './qy-descriptions'
22
30
  import type QyDescriptionsItemComponent from './qy-descriptions-item'
23
31
  import type QyCollapseComponent from './qy-collapse'
@@ -29,6 +37,7 @@ import type QyAlertComponent from './qy-alert'
29
37
  import type QyCardComponent from './qy-card'
30
38
  import type QyScrollbarComponent from './qy-scrollbar'
31
39
  import type QyProgressComponent from './qy-progress'
40
+ import type QyStatisticComponent from './qy-statistic'
32
41
  import type QyAvatarComponent from './qy-avatar'
33
42
  import type QyTreeComponent from './qy-tree'
34
43
  import type QyInputComponent from './qy-input'
@@ -204,6 +213,74 @@ export type {
204
213
  QyStepProps,
205
214
  QyStepSlots
206
215
  } from './qy-step'
216
+ export type {
217
+ QyIconAlias,
218
+ QyIconAliases,
219
+ QyIconAttrs,
220
+ QyIconDefinition,
221
+ QyIconDefinitionInput,
222
+ QyIconFallbackSlotProps,
223
+ QyIconProps,
224
+ QyIconRegistry,
225
+ QyIconRegistryOptions,
226
+ QyIconSlots,
227
+ QyIconSource
228
+ } from './qy-icon'
229
+ export type {
230
+ QyFullscreenAction,
231
+ QyFullscreenEmits,
232
+ QyFullscreenErrorCode,
233
+ QyFullscreenErrorSnapshot,
234
+ QyFullscreenExposed,
235
+ QyFullscreenProps,
236
+ QyFullscreenSize,
237
+ QyFullscreenSlots
238
+ } from './qy-fullscreen'
239
+ export type {
240
+ QyIconPickerEmits,
241
+ QyIconPickerExposed,
242
+ QyIconPickerModelValue,
243
+ QyIconPickerProps,
244
+ QyIconPickerSize,
245
+ QyIconPickerSlots
246
+ } from './qy-icon-picker'
247
+ export {
248
+ QY_ICON_REGISTRY_KEY,
249
+ createQyIconPlugin,
250
+ createQyIconRegistry,
251
+ mergeQyIconRegistries,
252
+ normalizeQyIconName
253
+ } from './qy-icon'
254
+ export type {
255
+ QyRowAlign,
256
+ QyRowAttrs,
257
+ QyRowJustify,
258
+ QyRowProps,
259
+ QyRowSlots
260
+ } from './qy-row'
261
+ export type {
262
+ QyColAttrs,
263
+ QyColProps,
264
+ QyColSize,
265
+ QyColSizeObject,
266
+ QyColSlots
267
+ } from './qy-col'
268
+ export type {
269
+ QyContainerAttrs,
270
+ QyContainerDirection,
271
+ QyContainerProps,
272
+ QyContainerSlots
273
+ } from './qy-container'
274
+ export type {
275
+ QyAsideAttrs,
276
+ QyAsideProps,
277
+ QyAsideSlots
278
+ } from './qy-aside'
279
+ export type {
280
+ QyMainAttrs,
281
+ QyMainProps,
282
+ QyMainSlots
283
+ } from './qy-main'
207
284
  export type {
208
285
  QyDescriptionsDirection,
209
286
  QyDescriptionsEmits,
@@ -288,6 +365,12 @@ export type {
288
365
  QyProgressStrokeLinecap,
289
366
  QyProgressType
290
367
  } from './qy-progress'
368
+ export type {
369
+ QyStatisticAttrs,
370
+ QyStatisticFormatter,
371
+ QyStatisticProps,
372
+ QyStatisticSlots
373
+ } from './qy-statistic'
291
374
  export type {
292
375
  QyAvatarAttrs,
293
376
  QyAvatarEmits,
@@ -371,6 +454,14 @@ export const QyTabs: typeof QyTabsComponent
371
454
  export const QyTabPane: typeof QyTabPaneComponent
372
455
  export const QySteps: typeof QyStepsComponent
373
456
  export const QyStep: typeof QyStepComponent
457
+ export const QyFullscreen: typeof QyFullscreenComponent
458
+ export const QyIcon: typeof QyIconComponent
459
+ export const QyIconPicker: typeof QyIconPickerComponent
460
+ export const QyRow: typeof QyRowComponent
461
+ export const QyCol: typeof QyColComponent
462
+ export const QyContainer: typeof QyContainerComponent
463
+ export const QyAside: typeof QyAsideComponent
464
+ export const QyMain: typeof QyMainComponent
374
465
  export const QyDescriptions: typeof QyDescriptionsComponent
375
466
  export const QyDescriptionsItem: typeof QyDescriptionsItemComponent
376
467
  export const QyCollapse: typeof QyCollapseComponent
@@ -382,6 +473,7 @@ export const QyAlert: typeof QyAlertComponent
382
473
  export const QyCard: typeof QyCardComponent
383
474
  export const QyScrollbar: typeof QyScrollbarComponent
384
475
  export const QyProgress: typeof QyProgressComponent
476
+ export const QyStatistic: typeof QyStatisticComponent
385
477
  export const QyAvatar: typeof QyAvatarComponent
386
478
  export const QyTree: typeof QyTreeComponent
387
479
  export const QyRemarkImage: Plugin
@@ -442,6 +534,14 @@ declare const _default: Plugin & {
442
534
  QyTabPane: typeof QyTabPaneComponent
443
535
  QySteps: typeof QyStepsComponent
444
536
  QyStep: typeof QyStepComponent
537
+ QyFullscreen: typeof QyFullscreenComponent
538
+ QyIcon: typeof QyIconComponent
539
+ QyIconPicker: typeof QyIconPickerComponent
540
+ QyRow: typeof QyRowComponent
541
+ QyCol: typeof QyColComponent
542
+ QyContainer: typeof QyContainerComponent
543
+ QyAside: typeof QyAsideComponent
544
+ QyMain: typeof QyMainComponent
445
545
  QyDescriptions: typeof QyDescriptionsComponent
446
546
  QyDescriptionsItem: typeof QyDescriptionsItemComponent
447
547
  QyCollapse: typeof QyCollapseComponent
@@ -453,6 +553,7 @@ declare const _default: Plugin & {
453
553
  QyCard: typeof QyCardComponent
454
554
  QyScrollbar: typeof QyScrollbarComponent
455
555
  QyProgress: typeof QyProgressComponent
556
+ QyStatistic: typeof QyStatisticComponent
456
557
  QyAvatar: typeof QyAvatarComponent
457
558
  QyTree: typeof QyTreeComponent
458
559
  QyRemarkImage: typeof QyRemarkImage