vft 0.0.59 → 0.0.60
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/attributes.json +1 -1
- package/dist/index.css +1 -1
- package/es/components/md-container/md-container.vue2.js +70 -67
- package/es/components/table/table.vue.d.ts +3 -3
- package/es/package.json.js +1 -1
- package/lib/components/md-container/md-container.vue2.cjs +1 -1
- package/lib/components/table/table.vue.d.ts +3 -3
- package/lib/package.json.cjs +1 -1
- package/package.json +1 -1
- package/tags.json +1 -1
- package/theme-style/index.css +1 -1
- package/theme-style/src/common/var.scss +2 -4
- package/theme-style/src/md/api.scss +9 -0
- package/theme-style/src/md/table.scss +1 -0
- package/theme-style/src/md/title.scss +0 -1
- package/theme-style/src/md-container.scss +2 -0
- package/theme-style/vft-md-container.css +1 -1
- package/web-types.json +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { defineComponent as T, getCurrentInstance as
|
|
1
|
+
import { defineComponent as T, getCurrentInstance as P, ref as v, onMounted as B, nextTick as H, unref as t, computed as I, openBlock as s, createElementBlock as l, normalizeClass as a, createBlock as y, createCommentVNode as x, createElementVNode as i, toDisplayString as C, createVNode as c, Fragment as L, renderList as M, withCtx as R, createTextVNode as $, renderSlot as q } from "vue";
|
|
2
2
|
import "../divider/index.js";
|
|
3
3
|
import { VftIcon as k } from "../icon/index.js";
|
|
4
4
|
import "../avatar/index.js";
|
|
@@ -10,13 +10,13 @@ import "../collapse-transition/index.js";
|
|
|
10
10
|
import "../tooltip/index.js";
|
|
11
11
|
import "../popover/index.js";
|
|
12
12
|
import "../menu/index.js";
|
|
13
|
-
import { jumpElement as
|
|
13
|
+
import { jumpElement as F, getRandomElementForArr as j, formatToDateTime as J, getDayTimestamp as O } from "@vft/utils";
|
|
14
14
|
import "../context-menu/context-menu.vue2.js";
|
|
15
15
|
import "../multiple-tabs/multiple-tabs.vue2.js";
|
|
16
|
-
import { useRouterHelper as
|
|
16
|
+
import { useRouterHelper as Y } from "@vft/router";
|
|
17
17
|
import "@vft/store";
|
|
18
|
-
import { usePhotoSwipe as
|
|
19
|
-
import { useRoute as
|
|
18
|
+
import { usePhotoSwipe as G, useEventListener as K } from "@vft/use";
|
|
19
|
+
import { useRoute as Q } from "vue-router";
|
|
20
20
|
import "../header-layout/index.js";
|
|
21
21
|
import "../footer-layout/index.js";
|
|
22
22
|
import "../iframe-layout/index.js";
|
|
@@ -26,12 +26,12 @@ import "../back-top/index.js";
|
|
|
26
26
|
import "../config-provider/index.js";
|
|
27
27
|
import "../descriptions/index.js";
|
|
28
28
|
import "../full-screen/index.js";
|
|
29
|
-
import { VftIconText as
|
|
29
|
+
import { VftIconText as U } from "../icon-text/index.js";
|
|
30
30
|
import "../image/index.js";
|
|
31
31
|
import "../input/index.js";
|
|
32
32
|
import "../link/index.js";
|
|
33
33
|
import "../pagination/index.js";
|
|
34
|
-
import { VftTag as
|
|
34
|
+
import { VftTag as W } from "../tag/index.js";
|
|
35
35
|
import "../side-menu/index.js";
|
|
36
36
|
import "../qrcode/index.js";
|
|
37
37
|
import "../overlay/index.js";
|
|
@@ -58,129 +58,132 @@ import "../verify-code/index.js";
|
|
|
58
58
|
import "../table/index.js";
|
|
59
59
|
import "../image-viewer/index.js";
|
|
60
60
|
import "./index.js";
|
|
61
|
-
import { VftMdComment as
|
|
61
|
+
import { VftMdComment as X } from "../md-comment/index.js";
|
|
62
62
|
import "../md-tabs/index.js";
|
|
63
63
|
import "../md-vue-playground/index.js";
|
|
64
64
|
import "../md-code-demo/index.js";
|
|
65
65
|
import "../md-code-tabs/index.js";
|
|
66
66
|
import "../message/index.js";
|
|
67
|
-
import { useNamespace as
|
|
67
|
+
import { useNamespace as Z } from "../../hooks/use-namespace/index.js";
|
|
68
68
|
import "@popperjs/core";
|
|
69
69
|
import "lodash";
|
|
70
70
|
import "../../hooks/use-z-index/index.js";
|
|
71
71
|
import "@vueuse/core";
|
|
72
|
-
import { primaryColor as
|
|
72
|
+
import { primaryColor as tt } from "../../utils/ns-cover.js";
|
|
73
73
|
import "@vue/reactivity";
|
|
74
74
|
import "@vue/shared";
|
|
75
|
-
import
|
|
76
|
-
import { useCopyCode as
|
|
77
|
-
import { useActiveHeaderLinks as
|
|
78
|
-
import { COMP_TYPE as
|
|
79
|
-
const
|
|
75
|
+
import ot from "./toc.js";
|
|
76
|
+
import { useCopyCode as et } from "./use/useCopyCode.js";
|
|
77
|
+
import { useActiveHeaderLinks as it } from "./use/useActiveHeaderLinks.js";
|
|
78
|
+
import { COMP_TYPE as rt } from "./utils.js";
|
|
79
|
+
const mt = { class: "info-container" }, pt = {
|
|
80
80
|
key: 0,
|
|
81
81
|
class: "flex align-center"
|
|
82
|
-
},
|
|
82
|
+
}, st = { class: "infos" }, nt = {
|
|
83
83
|
class: "reading",
|
|
84
84
|
title: "阅读量"
|
|
85
|
-
},
|
|
85
|
+
}, at = ["data-path"], r = (
|
|
86
86
|
/* hoist-static*/
|
|
87
|
-
|
|
88
|
-
),
|
|
89
|
-
name:
|
|
90
|
-
}),
|
|
91
|
-
...
|
|
92
|
-
setup(
|
|
93
|
-
const w =
|
|
94
|
-
D(),
|
|
95
|
-
const n = v(),
|
|
96
|
-
|
|
97
|
-
|
|
87
|
+
Z("md-container")
|
|
88
|
+
), ct = T({
|
|
89
|
+
name: r.b()
|
|
90
|
+
}), Mo = /* @__PURE__ */ T({
|
|
91
|
+
...ct,
|
|
92
|
+
setup(lt, { expose: V }) {
|
|
93
|
+
const w = P(), { initPhotoSwipe: D } = G(`.${r.e("content")} img`);
|
|
94
|
+
D(), it({}), et();
|
|
95
|
+
const n = v(), m = Q();
|
|
96
|
+
B(() => {
|
|
97
|
+
H(() => {
|
|
98
98
|
n.value = w.exposed.infos, setTimeout(() => {
|
|
99
|
-
|
|
99
|
+
F(m.hash.replace("#", ""));
|
|
100
100
|
});
|
|
101
|
-
const
|
|
102
|
-
for (let o = 0; o <
|
|
103
|
-
|
|
104
|
-
|
|
101
|
+
const e = document.querySelectorAll(".item.expand"), p = document.querySelectorAll("div.language-vue");
|
|
102
|
+
for (let o = 0; o < e.length; o++)
|
|
103
|
+
K(e[o], "click", () => {
|
|
104
|
+
p[o].offsetHeight === 0 ? (p[o].style.height = "auto", p[o].style.visibility = "visible") : (p[o].style.height = 0 + "px", p[o].style.visibility = "hidden");
|
|
105
105
|
});
|
|
106
106
|
});
|
|
107
107
|
}), V({
|
|
108
108
|
infos: t(n)
|
|
109
109
|
});
|
|
110
|
-
const b = location.pathname, { go: E } =
|
|
111
|
-
function S(
|
|
112
|
-
E("/?tag=" +
|
|
110
|
+
const b = location.pathname, { go: E } = Y();
|
|
111
|
+
function S(e) {
|
|
112
|
+
E("/?tag=" + e);
|
|
113
113
|
}
|
|
114
|
-
const z =
|
|
115
|
-
|
|
114
|
+
const z = I(() => {
|
|
115
|
+
var e;
|
|
116
|
+
return (e = m.meta.category) == null ? void 0 : e.includes("api");
|
|
117
|
+
}), A = v(tt());
|
|
118
|
+
return (e, p) => {
|
|
116
119
|
var o, d, u, f, h, g;
|
|
117
|
-
return s(),
|
|
118
|
-
class: a(t(
|
|
120
|
+
return s(), l("div", {
|
|
121
|
+
class: a([t(r).b(), t(r).is("api", t(z))])
|
|
119
122
|
}, [
|
|
120
|
-
(o = n.value) != null && o.sideData ? (s(), y(t(
|
|
123
|
+
(o = n.value) != null && o.sideData ? (s(), y(t(ot), {
|
|
121
124
|
key: 0,
|
|
122
125
|
items: n.value.sideData
|
|
123
126
|
}, null, 8, ["items"])) : x("", !0),
|
|
124
|
-
|
|
125
|
-
class: a(t(
|
|
127
|
+
i("div", {
|
|
128
|
+
class: a(t(r).e("header"))
|
|
126
129
|
}, [
|
|
127
|
-
|
|
128
|
-
class: a(t(
|
|
129
|
-
}, C((d = t(
|
|
130
|
-
|
|
131
|
-
(f = (u = t(
|
|
132
|
-
|
|
130
|
+
i("h1", {
|
|
131
|
+
class: a(t(r).e("title"))
|
|
132
|
+
}, C((d = t(m).meta) == null ? void 0 : d.title), 3),
|
|
133
|
+
i("div", mt, [
|
|
134
|
+
(f = (u = t(m).meta) == null ? void 0 : u.category) != null && f.length ? (s(), l("div", pt, [
|
|
135
|
+
c(t(k), {
|
|
133
136
|
size: 14,
|
|
134
|
-
color:
|
|
137
|
+
color: A.value,
|
|
135
138
|
icon: "ico-bx:category",
|
|
136
139
|
class: "mr-8px"
|
|
137
140
|
}, null, 8, ["color"]),
|
|
138
|
-
(s(!0),
|
|
141
|
+
(s(!0), l(L, null, M((h = t(m).meta) == null ? void 0 : h.category, (_, N) => (s(), y(t(W), {
|
|
139
142
|
size: "small",
|
|
140
143
|
class: "mr-5px cursor-pointer",
|
|
141
|
-
type: t(
|
|
144
|
+
type: t(j)(t(rt), 1)[0],
|
|
142
145
|
key: N,
|
|
143
|
-
onClick: (
|
|
146
|
+
onClick: (dt) => S(_)
|
|
144
147
|
}, {
|
|
145
|
-
default:
|
|
146
|
-
|
|
148
|
+
default: R(() => [
|
|
149
|
+
$(C(_), 1)
|
|
147
150
|
]),
|
|
148
151
|
_: 2
|
|
149
152
|
}, 1032, ["type", "onClick"]))), 128))
|
|
150
153
|
])) : x("", !0),
|
|
151
|
-
|
|
152
|
-
|
|
154
|
+
i("div", st, [
|
|
155
|
+
c(t(U), {
|
|
153
156
|
title: "发布时间",
|
|
154
157
|
icon: "ico-uiw:date",
|
|
155
158
|
size: 12,
|
|
156
159
|
class: "mr-10px",
|
|
157
160
|
distance: 5,
|
|
158
|
-
text: t(
|
|
161
|
+
text: t(J)(new Date((g = t(m).meta) == null ? void 0 : g.date).getTime() - t(O)())
|
|
159
162
|
}, null, 8, ["text"]),
|
|
160
|
-
|
|
161
|
-
|
|
163
|
+
i("div", nt, [
|
|
164
|
+
c(t(k), {
|
|
162
165
|
icon: "ico-flat-color-icons:reading",
|
|
163
166
|
size: 14,
|
|
164
167
|
class: "mr-5px"
|
|
165
168
|
}),
|
|
166
|
-
|
|
169
|
+
i("div", {
|
|
167
170
|
class: "waline-pageview-count lh-1",
|
|
168
171
|
"data-path": t(b)
|
|
169
|
-
}, "0", 8,
|
|
172
|
+
}, "0", 8, at)
|
|
170
173
|
])
|
|
171
174
|
])
|
|
172
175
|
])
|
|
173
176
|
], 2),
|
|
174
|
-
|
|
175
|
-
class: a(t(
|
|
177
|
+
i("div", {
|
|
178
|
+
class: a(t(r).e("content"))
|
|
176
179
|
}, [
|
|
177
|
-
|
|
180
|
+
q(e.$slots, "default")
|
|
178
181
|
], 2),
|
|
179
|
-
|
|
182
|
+
c(t(X))
|
|
180
183
|
], 2);
|
|
181
184
|
};
|
|
182
185
|
}
|
|
183
186
|
});
|
|
184
187
|
export {
|
|
185
|
-
|
|
188
|
+
Mo as default
|
|
186
189
|
};
|
|
@@ -35,7 +35,7 @@ declare const _sfc_main: import("vue").DefineComponent<{
|
|
|
35
35
|
required: false;
|
|
36
36
|
};
|
|
37
37
|
columns: {
|
|
38
|
-
type: __PropType<import("vxe-table
|
|
38
|
+
type: __PropType<import("vxe-table").VxeTableDefines.ColumnOptions[]>;
|
|
39
39
|
required: true;
|
|
40
40
|
};
|
|
41
41
|
tableData: {
|
|
@@ -79,14 +79,14 @@ declare const _sfc_main: import("vue").DefineComponent<{
|
|
|
79
79
|
required: true;
|
|
80
80
|
};
|
|
81
81
|
}, {
|
|
82
|
-
table: import("vue").Ref<import("vxe-table
|
|
82
|
+
table: import("vue").Ref<import("vxe-table").VxeGridInstance | undefined>;
|
|
83
83
|
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("page-change" | "sort-change" | "update:pageNum")[], "page-change" | "sort-change" | "update:pageNum", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
84
84
|
maxHeight: {
|
|
85
85
|
type: __PropType<number | undefined>;
|
|
86
86
|
required: false;
|
|
87
87
|
};
|
|
88
88
|
columns: {
|
|
89
|
-
type: __PropType<import("vxe-table
|
|
89
|
+
type: __PropType<import("vxe-table").VxeTableDefines.ColumnOptions[]>;
|
|
90
90
|
required: true;
|
|
91
91
|
};
|
|
92
92
|
tableData: {
|
package/es/package.json.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue");require("../divider/index.cjs");const f=require("../icon/index.cjs");require("../avatar/index.cjs");require("../empty/index.cjs");require("../result/index.cjs");require("../tabs/index.cjs");require("../popper/index.cjs");require("../collapse-transition/index.cjs");require("../tooltip/index.cjs");require("../popover/index.cjs");require("../menu/index.cjs");const s=require("@vft/utils");require("../context-menu/context-menu.vue2.cjs");require("../multiple-tabs/multiple-tabs.vue2.cjs");const
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue");require("../divider/index.cjs");const f=require("../icon/index.cjs");require("../avatar/index.cjs");require("../empty/index.cjs");require("../result/index.cjs");require("../tabs/index.cjs");require("../popper/index.cjs");require("../collapse-transition/index.cjs");require("../tooltip/index.cjs");require("../popover/index.cjs");require("../menu/index.cjs");const s=require("@vft/utils");require("../context-menu/context-menu.vue2.cjs");require("../multiple-tabs/multiple-tabs.vue2.cjs");const N=require("@vft/router");require("@vft/store");const p=require("@vft/use"),E=require("vue-router");require("../header-layout/index.cjs");require("../footer-layout/index.cjs");require("../iframe-layout/index.cjs");require("../router-view-content/index.cjs");require("../logo/index.cjs");require("../back-top/index.cjs");require("../config-provider/index.cjs");require("../descriptions/index.cjs");require("../full-screen/index.cjs");const T=require("../icon-text/index.cjs");require("../image/index.cjs");require("../input/index.cjs");require("../link/index.cjs");require("../pagination/index.cjs");const B=require("../tag/index.cjs");require("../side-menu/index.cjs");require("../qrcode/index.cjs");require("../overlay/index.cjs");require("../clamp/index.cjs");require("../clamp-toggle/index.cjs");require("../page-wrapper/index.cjs");require("../exception/index.cjs");require("../search/index.cjs");require("../form/index.cjs");require("../button/index.cjs");require("../checkbox/index.cjs");require("../radio/index.cjs");require("../switch/index.cjs");require("../color-picker/index.cjs");require("../scrollbar/index.cjs");require("../dropdown/index.cjs");require("../virtual-list/components/fixed-size-list.cjs");require("../virtual-list/components/dynamic-size-list.cjs");require("../virtual-list/components/fixed-size-grid.cjs");require("../virtual-list/components/dynamic-size-grid.cjs");require("../virtual-list/props.cjs");require("../select-v2/index.cjs");require("../verify-code/index.cjs");require("../table/index.cjs");require("../image-viewer/index.cjs");require("./index.cjs");const D=require("../md-comment/index.cjs");require("../md-tabs/index.cjs");require("../md-vue-playground/index.cjs");require("../md-code-demo/index.cjs");require("../md-code-tabs/index.cjs");require("../message/index.cjs");const S=require("../../hooks/use-namespace/index.cjs");require("@popperjs/core");require("lodash");require("../../hooks/use-z-index/index.cjs");require("@vueuse/core");const b=require("../../utils/ns-cover.cjs");require("@vue/reactivity");require("@vue/shared");const w=require("./toc.cjs"),z=require("./use/useCopyCode.cjs"),$=require("./use/useActiveHeaderLinks.cjs"),A=require("./utils.cjs"),M={class:"info-container"},P={key:0,class:"flex align-center"},H={class:"infos"},I={class:"reading",title:"阅读量"},L=["data-path"],i=S.useNamespace("md-container"),R=e.defineComponent({name:i.b()}),j=e.defineComponent({...R,setup(F,{expose:g}){const h=e.getCurrentInstance(),{initPhotoSwipe:v}=p.usePhotoSwipe(`.${i.e("content")} img`);v(),$.useActiveHeaderLinks({}),z.useCopyCode();const o=e.ref(),n=E.useRoute();e.onMounted(()=>{e.nextTick(()=>{o.value=h.exposed.infos,setTimeout(()=>{s.jumpElement(n.hash.replace("#",""))});const t=document.querySelectorAll(".item.expand"),u=document.querySelectorAll("div.language-vue");for(let r=0;r<t.length;r++)p.useEventListener(t[r],"click",()=>{u[r].offsetHeight===0?(u[r].style.height="auto",u[r].style.visibility="visible"):(u[r].style.height=0+"px",u[r].style.visibility="hidden")})})}),g({infos:e.unref(o)});const y=location.pathname,{go:_}=N.useRouterHelper();function C(t){_("/?tag="+t)}const x=e.computed(()=>{var t;return(t=n.meta.category)==null?void 0:t.includes("api")}),V=e.ref(b.primaryColor());return(t,u)=>{var r,c,a,l,q,d;return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass([e.unref(i).b(),e.unref(i).is("api",e.unref(x))])},[(r=o.value)!=null&&r.sideData?(e.openBlock(),e.createBlock(e.unref(w.default),{key:0,items:o.value.sideData},null,8,["items"])):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(e.unref(i).e("header"))},[e.createElementVNode("h1",{class:e.normalizeClass(e.unref(i).e("title"))},e.toDisplayString((c=e.unref(n).meta)==null?void 0:c.title),3),e.createElementVNode("div",M,[(l=(a=e.unref(n).meta)==null?void 0:a.category)!=null&&l.length?(e.openBlock(),e.createElementBlock("div",P,[e.createVNode(e.unref(f.VftIcon),{size:14,color:V.value,icon:"ico-bx:category",class:"mr-8px"},null,8,["color"]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList((q=e.unref(n).meta)==null?void 0:q.category,(m,k)=>(e.openBlock(),e.createBlock(e.unref(B.VftTag),{size:"small",class:"mr-5px cursor-pointer",type:e.unref(s.getRandomElementForArr)(e.unref(A.COMP_TYPE),1)[0],key:k,onClick:O=>C(m)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(m),1)]),_:2},1032,["type","onClick"]))),128))])):e.createCommentVNode("",!0),e.createElementVNode("div",H,[e.createVNode(e.unref(T.VftIconText),{title:"发布时间",icon:"ico-uiw:date",size:12,class:"mr-10px",distance:5,text:e.unref(s.formatToDateTime)(new Date((d=e.unref(n).meta)==null?void 0:d.date).getTime()-e.unref(s.getDayTimestamp)())},null,8,["text"]),e.createElementVNode("div",I,[e.createVNode(e.unref(f.VftIcon),{icon:"ico-flat-color-icons:reading",size:14,class:"mr-5px"}),e.createElementVNode("div",{class:"waline-pageview-count lh-1","data-path":e.unref(y)},"0",8,L)])])])],2),e.createElementVNode("div",{class:e.normalizeClass(e.unref(i).e("content"))},[e.renderSlot(t.$slots,"default")],2),e.createVNode(e.unref(D.VftMdComment))],2)}}});exports.default=j;
|
|
@@ -35,7 +35,7 @@ declare const _sfc_main: import("vue").DefineComponent<{
|
|
|
35
35
|
required: false;
|
|
36
36
|
};
|
|
37
37
|
columns: {
|
|
38
|
-
type: __PropType<import("vxe-table
|
|
38
|
+
type: __PropType<import("vxe-table").VxeTableDefines.ColumnOptions[]>;
|
|
39
39
|
required: true;
|
|
40
40
|
};
|
|
41
41
|
tableData: {
|
|
@@ -79,14 +79,14 @@ declare const _sfc_main: import("vue").DefineComponent<{
|
|
|
79
79
|
required: true;
|
|
80
80
|
};
|
|
81
81
|
}, {
|
|
82
|
-
table: import("vue").Ref<import("vxe-table
|
|
82
|
+
table: import("vue").Ref<import("vxe-table").VxeGridInstance | undefined>;
|
|
83
83
|
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("page-change" | "sort-change" | "update:pageNum")[], "page-change" | "sort-change" | "update:pageNum", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
84
84
|
maxHeight: {
|
|
85
85
|
type: __PropType<number | undefined>;
|
|
86
86
|
required: false;
|
|
87
87
|
};
|
|
88
88
|
columns: {
|
|
89
|
-
type: __PropType<import("vxe-table
|
|
89
|
+
type: __PropType<import("vxe-table").VxeTableDefines.ColumnOptions[]>;
|
|
90
90
|
required: true;
|
|
91
91
|
};
|
|
92
92
|
tableData: {
|
package/lib/package.json.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e="0.0.
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e="0.0.60";exports.version=e;
|
package/package.json
CHANGED
package/tags.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"vft-button":{"attributes":["size","type","plain","text","bg","link<VersionTag version=\"2.2.1\" />","round","circle","loading","loading-icon","disabled","icon","autofocus","native-type","auto-insert-space","color","dark"],"description":"[Docs](https://wflynn.cn/pages/button#button)"},"vft-button-group":{"description":"[Docs](https://wflynn.cn/pages/button#buttongroup)"},"vft-icon-text":{"attributes":["text","icon","color","hoverColor","distance","reverse","size"],"description":"[Docs](https://wflynn.cn/pages/icon-text#icontext)"}}
|
|
1
|
+
{"vft-button":{"attributes":["size","type","plain","text","bg","link<VersionTag version=\"2.2.1\" />","round","circle","loading","loading-icon","disabled","icon","autofocus","native-type","auto-insert-space","color","dark"],"description":"常用的操作按钮。\n\n[Docs](https://wflynn.cn/pages/button#button)"},"vft-button-group":{"description":"[Docs](https://wflynn.cn/pages/button#buttongroup)"},"vft-icon-text":{"attributes":["text","icon","color","hoverColor","distance","reverse","size"],"description":"文字与图标组合\n\n[Docs](https://wflynn.cn/pages/icon-text#icontext)"}}
|