vft 0.0.53 → 0.0.55
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 -0
- package/dist/index.css +1 -1
- package/es/component.js +0 -2
- package/es/components/back-top/back-top.vue2.js +4 -3
- package/es/components/context-menu/context-menu.vue2.js +46 -41
- package/es/components/icon-text/icon-text.vue2.js +31 -24
- package/es/components/md-container/md-container.vue2.js +74 -68
- package/es/components/md-container/use/useCopyCode.js +3 -3
- package/es/components/menu/menu-item.vue2.js +4 -3
- package/es/components/menu/sub-menu.vue2.js +4 -3
- package/es/components/multiple-tabs/multiple-tabs.vue2.js +34 -36
- package/es/components/multiple-tabs/tab-content.vue2.js +18 -84
- package/es/components/result/result.vue2.js +4 -3
- package/es/components/search/search.vue2.js +4 -3
- package/es/components/side-menu/side-menu.vue2.js +3 -2
- package/es/components/tabs/index.d.ts +8 -8
- package/es/components/tabs/tab-nav.vue.d.ts +6 -7
- package/es/components/tabs/tab-nav.vue2.js +42 -38
- package/es/components/tabs/tabs.vue.d.ts +9 -9
- package/es/components/tabs/tabs.vue2.js +43 -48
- package/es/package.json.js +1 -1
- package/global.d.ts +28 -3
- package/lib/components/back-top/back-top.vue2.cjs +1 -1
- package/lib/components/context-menu/context-menu.vue2.cjs +1 -1
- package/lib/components/icon-text/icon-text.vue2.cjs +1 -1
- package/lib/components/md-container/md-container.vue2.cjs +1 -1
- package/lib/components/md-container/use/useCopyCode.cjs +1 -1
- package/lib/components/menu/menu-item.vue2.cjs +1 -1
- package/lib/components/menu/sub-menu.vue2.cjs +1 -1
- package/lib/components/multiple-tabs/multiple-tabs.vue2.cjs +1 -1
- package/lib/components/multiple-tabs/tab-content.vue2.cjs +1 -1
- package/lib/components/result/result.vue2.cjs +1 -1
- package/lib/components/search/search.vue2.cjs +1 -1
- package/lib/components/side-menu/side-menu.vue2.cjs +1 -1
- package/lib/components/tabs/index.d.ts +8 -8
- package/lib/components/tabs/tab-nav.vue.d.ts +6 -7
- package/lib/components/tabs/tab-nav.vue2.cjs +1 -1
- package/lib/components/tabs/tabs.vue.d.ts +9 -9
- package/lib/components/tabs/tabs.vue2.cjs +1 -1
- package/lib/package.json.cjs +1 -1
- package/package.json +6 -1
- package/tags.json +1 -0
- package/theme-style/dark/css-vars.css +1 -1
- package/theme-style/index.css +1 -1
- package/theme-style/src/button.scss +1 -2
- package/theme-style/src/common/var.scss +19 -20
- package/theme-style/src/context-menu.scss +12 -0
- package/theme-style/src/dark/css-vars.scss +26 -0
- package/theme-style/src/dark/var.scss +61 -17
- package/theme-style/src/icon-text.scss +2 -0
- package/theme-style/src/logo.scss +1 -1
- package/theme-style/src/md/table.scss +5 -0
- package/theme-style/src/md-container.scss +42 -2
- package/theme-style/src/menu.scss +3 -3
- package/theme-style/src/side-menu.scss +2 -2
- package/theme-style/src/tabs.scss +70 -70
- package/theme-style/vft-button.css +1 -1
- package/theme-style/vft-context-menu.css +1 -0
- package/theme-style/vft-footer-layout.css +1 -1
- package/theme-style/vft-header-layout.css +1 -1
- package/theme-style/vft-icon-text.css +1 -1
- package/theme-style/vft-logo.css +1 -1
- package/theme-style/vft-md-container.css +1 -1
- package/theme-style/vft-menu.css +1 -1
- package/theme-style/vft-multiple-tabs.css +1 -1
- package/theme-style/vft-side-menu.css +1 -1
- package/theme-style/vft-tabs.css +1 -1
- package/web-types.json +1 -0
package/es/component.js
CHANGED
|
@@ -52,14 +52,12 @@ import { VftMdCodeDemo as ao } from "./components/md-code-demo/index.js";
|
|
|
52
52
|
import { VftMdCodeTabs as no } from "./components/md-code-tabs/index.js";
|
|
53
53
|
import { VftMdContainer as uo } from "./components/md-container/index.js";
|
|
54
54
|
const dt = [
|
|
55
|
-
// md
|
|
56
55
|
uo,
|
|
57
56
|
no,
|
|
58
57
|
ao,
|
|
59
58
|
eo,
|
|
60
59
|
Vo,
|
|
61
60
|
po,
|
|
62
|
-
// md
|
|
63
61
|
io,
|
|
64
62
|
mo,
|
|
65
63
|
fo,
|
|
@@ -11,10 +11,11 @@ import "../collapse-transition/index.js";
|
|
|
11
11
|
import "../tooltip/index.js";
|
|
12
12
|
import "../popover/index.js";
|
|
13
13
|
import "../menu/index.js";
|
|
14
|
-
import "
|
|
14
|
+
import "../context-menu/context-menu.vue2.js";
|
|
15
15
|
import "../multiple-tabs/multiple-tabs.vue2.js";
|
|
16
16
|
import "@vft/router";
|
|
17
17
|
import "@vft/store";
|
|
18
|
+
import "@vft/use";
|
|
18
19
|
import "vue-router";
|
|
19
20
|
import "../header-layout/index.js";
|
|
20
21
|
import "../footer-layout/index.js";
|
|
@@ -77,7 +78,7 @@ const r = (
|
|
|
77
78
|
_("back-top")
|
|
78
79
|
), N = c({
|
|
79
80
|
name: r.b()
|
|
80
|
-
}),
|
|
81
|
+
}), Zt = /* @__PURE__ */ c({
|
|
81
82
|
...N,
|
|
82
83
|
props: {
|
|
83
84
|
visibilityHeight: { default: 200 },
|
|
@@ -120,5 +121,5 @@ const r = (
|
|
|
120
121
|
}
|
|
121
122
|
});
|
|
122
123
|
export {
|
|
123
|
-
|
|
124
|
+
Zt as default
|
|
124
125
|
};
|
|
@@ -1,5 +1,14 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
import {
|
|
1
|
+
import { defineComponent as f, ref as u, computed as k, openBlock as l, createBlock as d, Transition as b, withCtx as C, withDirectives as g, createElementVNode as a, normalizeStyle as z, unref as p, withModifiers as M, normalizeClass as $, createElementBlock as B, Fragment as E, renderList as S, vShow as A } from "vue";
|
|
2
|
+
import { useNamespace as F } from "../../hooks/use-namespace/index.js";
|
|
3
|
+
import "@popperjs/core";
|
|
4
|
+
import "lodash";
|
|
5
|
+
import "../../hooks/use-z-index/index.js";
|
|
6
|
+
import "@vueuse/core";
|
|
7
|
+
import "@vft/utils";
|
|
8
|
+
import "../../utils/ns-cover.js";
|
|
9
|
+
import "@vue/reactivity";
|
|
10
|
+
import "@vue/shared";
|
|
11
|
+
import { useTimeoutFn as H, useClickAway as I, useEventListener as c } from "@vft/use";
|
|
3
12
|
import "../divider/index.js";
|
|
4
13
|
import "../icon/index.js";
|
|
5
14
|
import "../avatar/index.js";
|
|
@@ -10,8 +19,7 @@ import "../popper/index.js";
|
|
|
10
19
|
import "../collapse-transition/index.js";
|
|
11
20
|
import "../tooltip/index.js";
|
|
12
21
|
import "../popover/index.js";
|
|
13
|
-
import { VftMenuItem as
|
|
14
|
-
import "@vft/utils";
|
|
22
|
+
import { VftMenuItem as L } from "../menu/index.js";
|
|
15
23
|
import "../multiple-tabs/multiple-tabs.vue2.js";
|
|
16
24
|
import "@vft/router";
|
|
17
25
|
import "@vft/store";
|
|
@@ -63,16 +71,13 @@ import "../md-vue-playground/index.js";
|
|
|
63
71
|
import "../md-code-demo/index.js";
|
|
64
72
|
import "../md-code-tabs/index.js";
|
|
65
73
|
import "../message/index.js";
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
import "@vue/shared";
|
|
74
|
-
const H = { class: "vft-sub-menu" }, Zt = /* @__PURE__ */ w({
|
|
75
|
-
__name: "context-menu",
|
|
74
|
+
const N = { class: "vft-sub-menu" }, x = (
|
|
75
|
+
/* hoist-static*/
|
|
76
|
+
F("context-menu")
|
|
77
|
+
), R = f({
|
|
78
|
+
name: x.b()
|
|
79
|
+
}), io = /* @__PURE__ */ f({
|
|
80
|
+
...R,
|
|
76
81
|
props: {
|
|
77
82
|
axis: null,
|
|
78
83
|
styles: null,
|
|
@@ -81,63 +86,63 @@ const H = { class: "vft-sub-menu" }, Zt = /* @__PURE__ */ w({
|
|
|
81
86
|
},
|
|
82
87
|
setup(r) {
|
|
83
88
|
let s = u();
|
|
84
|
-
const
|
|
85
|
-
const { x: t, y:
|
|
89
|
+
const v = k(() => {
|
|
90
|
+
const { x: t, y: o } = r.axis || { x: 0, y: 0 }, i = (r.items || []).length * 40, m = r.width || 0, n = document.body, w = n.clientWidth < t + m ? t - m : t, y = n.clientHeight < o + i ? o - i : o;
|
|
86
91
|
return {
|
|
87
92
|
zIndex: 3e3,
|
|
88
93
|
...r.styles,
|
|
89
94
|
position: "fixed",
|
|
90
95
|
width: `${r.width}px`,
|
|
91
|
-
left: `${
|
|
92
|
-
top: `${
|
|
96
|
+
left: `${w + 1}px`,
|
|
97
|
+
top: `${y + 1}px`
|
|
93
98
|
};
|
|
94
99
|
});
|
|
95
100
|
let e = u(!1);
|
|
96
|
-
|
|
101
|
+
H(() => {
|
|
97
102
|
e.value = !0;
|
|
98
|
-
}, 0),
|
|
103
|
+
}, 0), I(s, () => {
|
|
99
104
|
e.value = !1;
|
|
100
105
|
}, {
|
|
101
106
|
listenerOptions: {
|
|
102
107
|
capture: !0
|
|
103
108
|
}
|
|
104
|
-
}),
|
|
109
|
+
}), c(window, "scroll", () => {
|
|
105
110
|
e.value = !1;
|
|
106
111
|
}, {
|
|
107
112
|
capture: !0
|
|
108
|
-
}),
|
|
113
|
+
}), c(window, "drag", () => {
|
|
109
114
|
e.value = !1;
|
|
110
115
|
}, {
|
|
111
116
|
capture: !0
|
|
112
117
|
});
|
|
113
|
-
function
|
|
114
|
-
var
|
|
115
|
-
t != null && t.disabled || ((
|
|
118
|
+
function h(t) {
|
|
119
|
+
var o;
|
|
120
|
+
t != null && t.disabled || ((o = t.handler) == null || o.call(t), e.value = !1);
|
|
116
121
|
}
|
|
117
|
-
return (t,
|
|
122
|
+
return (t, o) => (l(), d(b, { name: "vft-zoom-in-top" }, {
|
|
118
123
|
default: C(() => [
|
|
119
|
-
|
|
124
|
+
g(a("div", {
|
|
120
125
|
ref_key: "contextMenuRef",
|
|
121
126
|
ref: s,
|
|
122
|
-
style:
|
|
123
|
-
onClick:
|
|
127
|
+
style: z(p(v)),
|
|
128
|
+
onClick: o[0] || (o[0] = M(() => {
|
|
124
129
|
}, ["stop"])),
|
|
125
|
-
class: "vft-menu"
|
|
130
|
+
class: $([p(x).b(), "vft-menu"])
|
|
126
131
|
}, [
|
|
127
|
-
|
|
128
|
-
(
|
|
129
|
-
onClick: (
|
|
130
|
-
index: m +
|
|
131
|
-
title:
|
|
132
|
-
divider:
|
|
133
|
-
disabled:
|
|
134
|
-
icon:
|
|
132
|
+
a("div", N, [
|
|
133
|
+
(l(!0), B(E, null, S(r.items, (i, m) => (l(), d(p(L), {
|
|
134
|
+
onClick: (n) => h(i),
|
|
135
|
+
index: m + i.text,
|
|
136
|
+
title: i.text,
|
|
137
|
+
divider: i.divider,
|
|
138
|
+
disabled: i.disabled,
|
|
139
|
+
icon: i.iconCfg,
|
|
135
140
|
isAloneUse: "",
|
|
136
141
|
key: m
|
|
137
142
|
}, null, 8, ["onClick", "index", "title", "divider", "disabled", "icon"]))), 128))
|
|
138
143
|
])
|
|
139
|
-
],
|
|
140
|
-
[
|
|
144
|
+
], 6), [
|
|
145
|
+
[A, p(e)]
|
|
141
146
|
])
|
|
142
147
|
]),
|
|
143
148
|
_: 1
|
|
@@ -145,5 +150,5 @@ const H = { class: "vft-sub-menu" }, Zt = /* @__PURE__ */ w({
|
|
|
145
150
|
}
|
|
146
151
|
});
|
|
147
152
|
export {
|
|
148
|
-
|
|
153
|
+
io as default
|
|
149
154
|
};
|
|
@@ -1,44 +1,51 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
import {
|
|
3
|
-
import "
|
|
4
|
-
import "@vueuse/core";
|
|
5
|
-
import { generateCssVars as S } from "../../utils/ns-cover.js";
|
|
6
|
-
import { VftIcon as u } from "../icon/index.js";
|
|
7
|
-
import { useNamespace as V } from "../../hooks/use-namespace/index.js";
|
|
1
|
+
import { defineComponent as d, computed as o, openBlock as r, createElementBlock as h, normalizeClass as S, unref as t, normalizeStyle as B, createBlock as a, mergeProps as m, createCommentVNode as u, createElementVNode as V, toDisplayString as b } from "vue";
|
|
2
|
+
import { VftIcon as v } from "../icon/index.js";
|
|
3
|
+
import { useNamespace as N } from "../../hooks/use-namespace/index.js";
|
|
8
4
|
import "@popperjs/core";
|
|
5
|
+
import "lodash";
|
|
9
6
|
import "../../hooks/use-z-index/index.js";
|
|
7
|
+
import "@vueuse/core";
|
|
8
|
+
import { singleAttrToObj as E, addUnit as l, removeUnit as f } from "@vft/utils";
|
|
9
|
+
import { generateCssVars as U } from "../../utils/ns-cover.js";
|
|
10
10
|
import "@vue/reactivity";
|
|
11
11
|
import "@vue/shared";
|
|
12
|
-
const
|
|
12
|
+
const y = (
|
|
13
13
|
/* hoist-static*/
|
|
14
|
-
|
|
15
|
-
),
|
|
16
|
-
name:
|
|
17
|
-
}),
|
|
18
|
-
|
|
14
|
+
N("icon-text")
|
|
15
|
+
), $ = d({
|
|
16
|
+
name: y.b()
|
|
17
|
+
}), G = /* @__PURE__ */ d({
|
|
18
|
+
...$,
|
|
19
19
|
props: {
|
|
20
20
|
text: null,
|
|
21
21
|
icon: null,
|
|
22
|
-
color:
|
|
22
|
+
color: null,
|
|
23
23
|
hoverColor: null,
|
|
24
24
|
distance: null,
|
|
25
25
|
reverse: { type: Boolean },
|
|
26
26
|
size: null
|
|
27
27
|
},
|
|
28
28
|
emits: ["click"],
|
|
29
|
-
setup(e, { emit:
|
|
30
|
-
const
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
29
|
+
setup(e, { emit: z }) {
|
|
30
|
+
const C = o(() => e.hoverColor ? e.hoverColor : e.color), c = o(() => E(e.icon, "icon", { size: e.size, color: e.color })), i = o(() => e.reverse ? { marginLeft: l(e.distance) } : { marginRight: l(e.distance) }), n = o(() => f(e.size)), k = o(() => n.value && f(n.value) < 12 ? { transform: `scale(${n.value / 12})` } : {}), x = o(() => ({
|
|
31
|
+
...U({
|
|
32
|
+
color: e.color,
|
|
33
|
+
"hover-color": C.value,
|
|
34
|
+
fontSize: n.value < 12 ? "12px" : l(e.size)
|
|
35
|
+
}, "icon-text"),
|
|
36
|
+
...k.value
|
|
37
|
+
}));
|
|
38
|
+
return (g, s) => (r(), h("span", {
|
|
39
|
+
class: S(t(y).b()),
|
|
40
|
+
onClick: s[0] || (s[0] = (j) => z("click")),
|
|
41
|
+
style: B(t(x))
|
|
35
42
|
}, [
|
|
36
|
-
e.reverse ?
|
|
37
|
-
|
|
38
|
-
e.reverse ? (r(),
|
|
43
|
+
e.reverse ? u("", !0) : (r(), a(t(v), m({ key: 0 }, t(c), { style: t(i) }), null, 16, ["style"])),
|
|
44
|
+
V("span", null, b(e.text), 1),
|
|
45
|
+
e.reverse ? (r(), a(t(v), m({ key: 1 }, t(c), { style: t(i) }), null, 16, ["style"])) : u("", !0)
|
|
39
46
|
], 6));
|
|
40
47
|
}
|
|
41
48
|
});
|
|
42
49
|
export {
|
|
43
|
-
|
|
50
|
+
G as default
|
|
44
51
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { defineComponent as T, getCurrentInstance as
|
|
1
|
+
import { defineComponent as T, getCurrentInstance as A, ref as v, onMounted as P, nextTick as B, unref as t, openBlock as s, createElementBlock as c, normalizeClass as a, createBlock as y, createCommentVNode as x, createElementVNode as e, toDisplayString as C, createVNode as l, Fragment as H, renderList as I, withCtx as L, createTextVNode as M, renderSlot as R } from "vue";
|
|
2
2
|
import "../divider/index.js";
|
|
3
|
-
import { VftIcon as
|
|
3
|
+
import { VftIcon as k } from "../icon/index.js";
|
|
4
4
|
import "../avatar/index.js";
|
|
5
5
|
import "../empty/index.js";
|
|
6
6
|
import "../result/index.js";
|
|
@@ -10,12 +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
|
|
14
|
-
import
|
|
13
|
+
import { jumpElement as $, getRandomElementForArr as q, formatToDateTime as F, getDayTimestamp as j } from "@vft/utils";
|
|
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 J } from "@vft/router";
|
|
17
17
|
import "@vft/store";
|
|
18
|
-
import {
|
|
18
|
+
import { usePhotoSwipe as O, useEventListener as Y } from "@vft/use";
|
|
19
|
+
import { useRoute as G } from "vue-router";
|
|
19
20
|
import "../header-layout/index.js";
|
|
20
21
|
import "../footer-layout/index.js";
|
|
21
22
|
import "../iframe-layout/index.js";
|
|
@@ -25,12 +26,12 @@ import "../back-top/index.js";
|
|
|
25
26
|
import "../config-provider/index.js";
|
|
26
27
|
import "../descriptions/index.js";
|
|
27
28
|
import "../full-screen/index.js";
|
|
28
|
-
import { VftIconText as
|
|
29
|
+
import { VftIconText as K } from "../icon-text/index.js";
|
|
29
30
|
import "../image/index.js";
|
|
30
31
|
import "../input/index.js";
|
|
31
32
|
import "../link/index.js";
|
|
32
33
|
import "../pagination/index.js";
|
|
33
|
-
import { VftTag as
|
|
34
|
+
import { VftTag as Q } from "../tag/index.js";
|
|
34
35
|
import "../side-menu/index.js";
|
|
35
36
|
import "../qrcode/index.js";
|
|
36
37
|
import "../overlay/index.js";
|
|
@@ -57,120 +58,125 @@ import "../verify-code/index.js";
|
|
|
57
58
|
import "../table/index.js";
|
|
58
59
|
import "../image-viewer/index.js";
|
|
59
60
|
import "./index.js";
|
|
60
|
-
import { VftMdComment as
|
|
61
|
+
import { VftMdComment as U } from "../md-comment/index.js";
|
|
61
62
|
import "../md-tabs/index.js";
|
|
62
63
|
import "../md-vue-playground/index.js";
|
|
63
64
|
import "../md-code-demo/index.js";
|
|
64
65
|
import "../md-code-tabs/index.js";
|
|
65
66
|
import "../message/index.js";
|
|
66
|
-
import { useNamespace as
|
|
67
|
+
import { useNamespace as W } from "../../hooks/use-namespace/index.js";
|
|
67
68
|
import "@popperjs/core";
|
|
68
69
|
import "lodash";
|
|
69
70
|
import "../../hooks/use-z-index/index.js";
|
|
70
71
|
import "@vueuse/core";
|
|
71
|
-
import { primaryColor as
|
|
72
|
+
import { primaryColor as X } from "../../utils/ns-cover.js";
|
|
72
73
|
import "@vue/reactivity";
|
|
73
74
|
import "@vue/shared";
|
|
74
|
-
import
|
|
75
|
-
import { useCopyCode as
|
|
76
|
-
import { useActiveHeaderLinks as
|
|
77
|
-
import { COMP_TYPE as
|
|
78
|
-
const
|
|
75
|
+
import Z from "./toc.js";
|
|
76
|
+
import { useCopyCode as tt } from "./use/useCopyCode.js";
|
|
77
|
+
import { useActiveHeaderLinks as ot } from "./use/useActiveHeaderLinks.js";
|
|
78
|
+
import { COMP_TYPE as et } from "./utils.js";
|
|
79
|
+
const it = { class: "info-container" }, rt = {
|
|
79
80
|
key: 0,
|
|
80
81
|
class: "flex align-center"
|
|
81
|
-
},
|
|
82
|
+
}, mt = { class: "infos" }, pt = {
|
|
82
83
|
class: "reading",
|
|
83
84
|
title: "阅读量"
|
|
84
|
-
},
|
|
85
|
+
}, st = ["data-path"], m = (
|
|
85
86
|
/* hoist-static*/
|
|
86
|
-
|
|
87
|
-
),
|
|
88
|
-
name:
|
|
87
|
+
W("md-container")
|
|
88
|
+
), nt = T({
|
|
89
|
+
name: m.b()
|
|
89
90
|
}), Io = /* @__PURE__ */ T({
|
|
90
|
-
...
|
|
91
|
-
setup(
|
|
92
|
-
const
|
|
93
|
-
|
|
94
|
-
const
|
|
95
|
-
|
|
91
|
+
...nt,
|
|
92
|
+
setup(at, { expose: V }) {
|
|
93
|
+
const w = A(), { initPhotoSwipe: D } = O(`.${m.e("content")} img`);
|
|
94
|
+
D(), ot({}), tt();
|
|
95
|
+
const n = v(), p = G();
|
|
96
|
+
P(() => {
|
|
96
97
|
B(() => {
|
|
97
|
-
|
|
98
|
-
|
|
98
|
+
n.value = w.exposed.infos, setTimeout(() => {
|
|
99
|
+
$(p.hash.replace("#", ""));
|
|
99
100
|
});
|
|
101
|
+
const i = document.querySelectorAll(".item.expand"), r = document.querySelectorAll("div.language-vue");
|
|
102
|
+
for (let o = 0; o < i.length; o++)
|
|
103
|
+
Y(i[o], "click", () => {
|
|
104
|
+
r[o].offsetHeight === 0 ? (r[o].style.height = "auto", r[o].style.visibility = "visible") : (r[o].style.height = 0 + "px", r[o].style.visibility = "hidden");
|
|
105
|
+
});
|
|
100
106
|
});
|
|
101
|
-
}),
|
|
102
|
-
infos: t(
|
|
107
|
+
}), V({
|
|
108
|
+
infos: t(n)
|
|
103
109
|
});
|
|
104
|
-
const
|
|
105
|
-
function
|
|
106
|
-
|
|
110
|
+
const b = location.pathname, { go: E } = J();
|
|
111
|
+
function S(i) {
|
|
112
|
+
E("/?tag=" + i);
|
|
107
113
|
}
|
|
108
|
-
const
|
|
109
|
-
return (
|
|
110
|
-
var
|
|
111
|
-
return
|
|
112
|
-
class:
|
|
114
|
+
const z = v(X());
|
|
115
|
+
return (i, r) => {
|
|
116
|
+
var o, d, u, f, h, g;
|
|
117
|
+
return s(), c("div", {
|
|
118
|
+
class: a(t(m).b())
|
|
113
119
|
}, [
|
|
114
|
-
(
|
|
120
|
+
(o = n.value) != null && o.sideData ? (s(), y(t(Z), {
|
|
115
121
|
key: 0,
|
|
116
|
-
items:
|
|
122
|
+
items: n.value.sideData
|
|
117
123
|
}, null, 8, ["items"])) : x("", !0),
|
|
118
|
-
|
|
119
|
-
class:
|
|
124
|
+
e("div", {
|
|
125
|
+
class: a(t(m).e("header"))
|
|
120
126
|
}, [
|
|
121
|
-
|
|
122
|
-
class:
|
|
123
|
-
}, C((
|
|
124
|
-
|
|
125
|
-
(
|
|
126
|
-
|
|
127
|
+
e("h1", {
|
|
128
|
+
class: a(t(m).e("title"))
|
|
129
|
+
}, C((d = t(p).meta) == null ? void 0 : d.title), 3),
|
|
130
|
+
e("div", it, [
|
|
131
|
+
(f = (u = t(p).meta) == null ? void 0 : u.category) != null && f.length ? (s(), c("div", rt, [
|
|
132
|
+
l(t(k), {
|
|
127
133
|
size: 14,
|
|
128
|
-
color:
|
|
134
|
+
color: z.value,
|
|
129
135
|
icon: "ico-bx:category",
|
|
130
136
|
class: "mr-8px"
|
|
131
137
|
}, null, 8, ["color"]),
|
|
132
|
-
(
|
|
138
|
+
(s(!0), c(H, null, I((h = t(p).meta) == null ? void 0 : h.category, (_, N) => (s(), y(t(Q), {
|
|
133
139
|
size: "small",
|
|
134
140
|
class: "mr-5px cursor-pointer",
|
|
135
|
-
type: t(
|
|
136
|
-
key:
|
|
137
|
-
onClick: (
|
|
141
|
+
type: t(q)(t(et), 1)[0],
|
|
142
|
+
key: N,
|
|
143
|
+
onClick: (lt) => S(_)
|
|
138
144
|
}, {
|
|
139
|
-
default:
|
|
140
|
-
|
|
145
|
+
default: L(() => [
|
|
146
|
+
M(C(_), 1)
|
|
141
147
|
]),
|
|
142
148
|
_: 2
|
|
143
149
|
}, 1032, ["type", "onClick"]))), 128))
|
|
144
150
|
])) : x("", !0),
|
|
145
|
-
|
|
146
|
-
|
|
151
|
+
e("div", mt, [
|
|
152
|
+
l(t(K), {
|
|
147
153
|
title: "发布时间",
|
|
148
154
|
icon: "ico-uiw:date",
|
|
149
155
|
size: 12,
|
|
150
156
|
class: "mr-10px",
|
|
151
157
|
distance: 5,
|
|
152
|
-
text: t(
|
|
158
|
+
text: t(F)(new Date((g = t(p).meta) == null ? void 0 : g.date).getTime() - t(j)())
|
|
153
159
|
}, null, 8, ["text"]),
|
|
154
|
-
|
|
155
|
-
|
|
160
|
+
e("div", pt, [
|
|
161
|
+
l(t(k), {
|
|
156
162
|
icon: "ico-flat-color-icons:reading",
|
|
157
163
|
size: 14,
|
|
158
164
|
class: "mr-5px"
|
|
159
165
|
}),
|
|
160
|
-
|
|
166
|
+
e("div", {
|
|
161
167
|
class: "waline-pageview-count lh-1",
|
|
162
|
-
"data-path": t(
|
|
163
|
-
}, "0", 8,
|
|
168
|
+
"data-path": t(b)
|
|
169
|
+
}, "0", 8, st)
|
|
164
170
|
])
|
|
165
171
|
])
|
|
166
172
|
])
|
|
167
173
|
], 2),
|
|
168
|
-
|
|
169
|
-
class:
|
|
174
|
+
e("div", {
|
|
175
|
+
class: a(t(m).e("content"))
|
|
170
176
|
}, [
|
|
171
|
-
|
|
177
|
+
R(i.$slots, "default")
|
|
172
178
|
], 2),
|
|
173
|
-
|
|
179
|
+
l(t(U))
|
|
174
180
|
], 2);
|
|
175
181
|
};
|
|
176
182
|
}
|
|
@@ -8,9 +8,9 @@ function u() {
|
|
|
8
8
|
const n = t.parentElement, s = t.nextElementSibling;
|
|
9
9
|
if (!n || !s)
|
|
10
10
|
return;
|
|
11
|
-
const
|
|
12
|
-
let
|
|
13
|
-
|
|
11
|
+
const i = /language-(shellscript|shell|bash|sh|zsh)/.test(n.classList.toString());
|
|
12
|
+
let l = s.textContent;
|
|
13
|
+
i && (l = l.replace(/^ *(\$|>) /gm, "")), r(l).then(() => {
|
|
14
14
|
t.classList.add("copied"), clearTimeout(o.get(t));
|
|
15
15
|
const c = setTimeout(() => {
|
|
16
16
|
t.classList.remove("copied"), t.blur(), o.delete(t);
|
|
@@ -21,10 +21,11 @@ import "../collapse-transition/index.js";
|
|
|
21
21
|
import { VftTooltip as R } from "../tooltip/index.js";
|
|
22
22
|
import "../popover/index.js";
|
|
23
23
|
import "./index.js";
|
|
24
|
-
import "
|
|
24
|
+
import "../context-menu/context-menu.vue2.js";
|
|
25
25
|
import "../multiple-tabs/multiple-tabs.vue2.js";
|
|
26
26
|
import "@vft/router";
|
|
27
27
|
import "@vft/store";
|
|
28
|
+
import "@vft/use";
|
|
28
29
|
import "vue-router";
|
|
29
30
|
import "../header-layout/index.js";
|
|
30
31
|
import "../footer-layout/index.js";
|
|
@@ -78,7 +79,7 @@ const W = ["title"], k = (
|
|
|
78
79
|
v("menu-item")
|
|
79
80
|
), X = S({
|
|
80
81
|
name: k.b()
|
|
81
|
-
}),
|
|
82
|
+
}), xe = /* @__PURE__ */ S({
|
|
82
83
|
...X,
|
|
83
84
|
props: {
|
|
84
85
|
index: null,
|
|
@@ -163,5 +164,5 @@ const W = ["title"], k = (
|
|
|
163
164
|
}
|
|
164
165
|
});
|
|
165
166
|
export {
|
|
166
|
-
|
|
167
|
+
xe as default
|
|
167
168
|
};
|
|
@@ -11,10 +11,11 @@ import { VftTooltip as pe } from "../tooltip/index.js";
|
|
|
11
11
|
import "../popover/index.js";
|
|
12
12
|
import "./index.js";
|
|
13
13
|
import { singleAttrToObj as se, renderTNode as me } from "@vft/utils";
|
|
14
|
-
import "
|
|
14
|
+
import "../context-menu/context-menu.vue2.js";
|
|
15
15
|
import "../multiple-tabs/multiple-tabs.vue2.js";
|
|
16
16
|
import "@vft/router";
|
|
17
17
|
import "@vft/store";
|
|
18
|
+
import "@vft/use";
|
|
18
19
|
import "vue-router";
|
|
19
20
|
import "../header-layout/index.js";
|
|
20
21
|
import "../footer-layout/index.js";
|
|
@@ -79,7 +80,7 @@ const S = (
|
|
|
79
80
|
I("sub-menu")
|
|
80
81
|
), ve = Z({
|
|
81
82
|
name: S.b()
|
|
82
|
-
}),
|
|
83
|
+
}), Ro = /* @__PURE__ */ Z({
|
|
83
84
|
...ve,
|
|
84
85
|
props: {
|
|
85
86
|
index: null,
|
|
@@ -280,5 +281,5 @@ const S = (
|
|
|
280
281
|
}
|
|
281
282
|
});
|
|
282
283
|
export {
|
|
283
|
-
|
|
284
|
+
Ro as default
|
|
284
285
|
};
|