@fuxishi/vitepress-theme 1.0.10 → 1.0.11

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.
@@ -0,0 +1,226 @@
1
+ import { t as e } from "./icons-DtAsNqxj.js";
2
+ import { Fragment as t, computed as n, createCommentVNode as r, createElementBlock as i, createElementVNode as a, createVNode as o, defineComponent as s, nextTick as c, normalizeClass as l, onBeforeUnmount as u, onMounted as d, openBlock as f, ref as p, renderList as m, toDisplayString as h, unref as g, vShow as _, watchEffect as v, withDirectives as y } from "vue";
3
+ import { useData as ee } from "vitepress";
4
+ import { ElSlider as b } from "element-plus";
5
+ //#region .vitepress/components/FxMusicBall.vue?vue&type=script&setup=true&lang.ts
6
+ var x = [
7
+ "src",
8
+ "autoplay",
9
+ "loop"
10
+ ], te = ["src", "autoplay"], S = { class: "fx-music-ball__inner" }, C = { class: "fx-play-pause" }, w = ["innerHTML"], ne = ["innerHTML"], re = { class: "fx-time" }, ie = { class: "fx-duration" }, ae = { class: "fx-volume" }, oe = ["innerHTML"], T = ["innerHTML"], se = ["innerHTML"], E = {
11
+ id: "fx-progress-gradient",
12
+ x1: "0%",
13
+ y1: "0%",
14
+ x2: "100%",
15
+ y2: "100%"
16
+ }, D = ["stop-color"], O = ["stop-color"], k = ["stroke-dasharray"], A = {
17
+ key: 2,
18
+ class: "fx-orbit-ring"
19
+ }, ce = {
20
+ key: 3,
21
+ class: "fx-music-list"
22
+ }, le = ["onClick"], ue = ["d"], j = /* @__PURE__ */ s({
23
+ __name: "FxMusicBall",
24
+ setup(s) {
25
+ let j = [
26
+ "M123.252 73.826h111.169v790.935h-111.169z",
27
+ "M346.361 465.952h111.169v395.467h-111.169z",
28
+ "M569.466 229.325h111.169v636.444h-111.169z",
29
+ "M792.574 391.584h111.169v475.788h-111.169z"
30
+ ], { site: de } = ee(), M = de.value.themeConfig.musicBall, N = p(null), P = p(0), F = p(0), I = p(0), L = p(!1), R = p(50), z = p(!1), B = p(0), V = p(!!M.autoplay), H = p(!1), U = 2 * Math.PI * 22, W = p("#bd34fe"), G = p("#41d1ff");
31
+ function K() {
32
+ let e = getComputedStyle(document.documentElement), t = e.getPropertyValue("--fx-beam-c1").trim(), n = e.getPropertyValue("--fx-beam-c2").trim();
33
+ t && (W.value = `rgb(${t})`), n && (G.value = `rgb(${n})`);
34
+ }
35
+ let q = null;
36
+ d(() => {
37
+ K(), q = new MutationObserver((e) => {
38
+ for (let t of e) if (t.attributeName === "style") {
39
+ K();
40
+ break;
41
+ }
42
+ }), q.observe(document.documentElement, {
43
+ attributes: !0,
44
+ attributeFilter: ["style"]
45
+ });
46
+ }), u(() => {
47
+ q?.disconnect();
48
+ });
49
+ let fe = n(() => {
50
+ let e = U - X.value / 100 * U;
51
+ return `${U - e} ${e}`;
52
+ }), J = n(() => M.src || M.list?.length === 1), pe = n(() => M.src || M.list?.[0]?.src), Y = n(() => M.list || []), X = n({
53
+ get() {
54
+ return I.value / P.value * 100 || 0;
55
+ },
56
+ set(e) {
57
+ F.value = P.value * e / 100, !L.value && N.value && (N.value.currentTime = F.value);
58
+ }
59
+ }), me = n(() => $(P.value)), Z = n(() => $(I.value));
60
+ v(() => {
61
+ N.value && (z.value = !1, N.value.volume = R.value / 100);
62
+ }), v(() => {
63
+ N.value && (N.value.muted = z.value);
64
+ });
65
+ let Q = {};
66
+ d(() => {
67
+ let e = N.value;
68
+ if (!e) return;
69
+ let t = {
70
+ play: () => {
71
+ L.value = !0;
72
+ },
73
+ pause: () => {
74
+ L.value = !1;
75
+ },
76
+ timeupdate: () => {
77
+ P.value = e.duration, I.value = e.currentTime;
78
+ },
79
+ canplay: () => {
80
+ P.value = e.duration;
81
+ },
82
+ ended: () => {
83
+ if (B.value + 1 > Y.value.length - 1) {
84
+ if (!M.loop) {
85
+ L.value = !1;
86
+ return;
87
+ }
88
+ B.value = 0;
89
+ } else B.value++;
90
+ c(() => e.play());
91
+ }
92
+ };
93
+ for (let [n, r] of Object.entries(t)) e.addEventListener(n, r);
94
+ Q = t;
95
+ }), u(() => {
96
+ let e = N.value;
97
+ if (e) {
98
+ for (let [t, n] of Object.entries(Q)) e.removeEventListener(t, n);
99
+ Q = {};
100
+ }
101
+ });
102
+ let he = () => {
103
+ L.value = !L.value, L.value ? N.value?.play() : N.value?.pause(), !J.value && !V.value && (V.value = !0);
104
+ }, ge = () => {
105
+ N.value && (N.value.currentTime = F.value);
106
+ }, _e = (e) => {
107
+ V.value = !0, B.value = e;
108
+ }, ve = () => {
109
+ H.value = !1;
110
+ };
111
+ function $(e) {
112
+ return e = Math.max(0, Number(e) || 0), `${Math.floor(e % 3600 / 60)}:${Math.floor(e % 60).toString().padStart(2, "0")}`;
113
+ }
114
+ return (n, s) => (f(), i("div", {
115
+ class: l(["fx-music-ball", {
116
+ active: H.value,
117
+ "is-playing": L.value
118
+ }]),
119
+ onMouseleave: ve
120
+ }, [
121
+ J.value ? (f(), i("audio", {
122
+ key: 0,
123
+ class: "audio",
124
+ src: pe.value,
125
+ autoplay: g(M).autoplay,
126
+ loop: g(M).loop,
127
+ style: { display: "none" },
128
+ ref_key: "audioRef",
129
+ ref: N
130
+ }, null, 8, x)) : (f(), i("audio", {
131
+ key: 1,
132
+ class: "audio",
133
+ src: Y.value[B.value]?.src,
134
+ autoplay: V.value,
135
+ style: { display: "none" },
136
+ ref_key: "audioRef",
137
+ ref: N
138
+ }, null, 8, te)),
139
+ a("div", S, [
140
+ a("div", C, [y(a("span", { innerHTML: g(e)("music-ball/playfill", 20) }, null, 8, w), [[_, !L.value]]), y(a("span", { innerHTML: g(e)("music-ball/pause", 26) }, null, 8, ne), [[_, L.value]])]),
141
+ a("div", re, h(Z.value) + "\xA0/\xA0" + h(me.value), 1),
142
+ a("div", ie, [o(g(b), {
143
+ style: { width: "100%" },
144
+ "show-tooltip": !1,
145
+ modelValue: X.value,
146
+ "onUpdate:modelValue": s[0] ||= (e) => X.value = e,
147
+ onChange: ge
148
+ }, null, 8, ["modelValue"])]),
149
+ a("div", ae, [
150
+ o(g(b), {
151
+ style: { width: "100%" },
152
+ "show-tooltip": !1,
153
+ modelValue: R.value,
154
+ "onUpdate:modelValue": s[1] ||= (e) => R.value = e
155
+ }, null, 8, ["modelValue"]),
156
+ y(a("span", {
157
+ class: "fx-icon-volume",
158
+ onClick: s[2] ||= (e) => z.value = !z.value,
159
+ innerHTML: g(e)("music-ball/volume_off", 20)
160
+ }, null, 8, oe), [[_, z.value]]),
161
+ y(a("span", {
162
+ class: "fx-icon-volume",
163
+ onClick: s[3] ||= (e) => z.value = !z.value,
164
+ innerHTML: g(e)("music-ball/volume_up", 20)
165
+ }, null, 8, T), [[_, !z.value]])
166
+ ]),
167
+ J.value ? r("", !0) : (f(), i("div", {
168
+ key: 0,
169
+ class: "fx-music-list-button",
170
+ onClick: s[4] ||= (e) => H.value = !H.value
171
+ }, [a("span", { innerHTML: g(e)("music-ball/music_list", 20) }, null, 8, se)]))
172
+ ]),
173
+ (f(), i("svg", {
174
+ class: "fx-progress-ring",
175
+ width: "50",
176
+ height: "50",
177
+ viewBox: "0 0 50 50",
178
+ onClick: he
179
+ }, [
180
+ a("defs", null, [a("linearGradient", E, [a("stop", {
181
+ offset: "0%",
182
+ "stop-color": W.value
183
+ }, null, 8, D), a("stop", {
184
+ offset: "100%",
185
+ "stop-color": G.value
186
+ }, null, 8, O)])]),
187
+ s[5] ||= a("circle", {
188
+ class: "fx-progress-track",
189
+ cx: "25",
190
+ cy: "25",
191
+ r: "22",
192
+ fill: "none",
193
+ "stroke-width": "2.5"
194
+ }, null, -1),
195
+ a("circle", {
196
+ class: "fx-progress-bar",
197
+ cx: "25",
198
+ cy: "25",
199
+ r: "22",
200
+ fill: "none",
201
+ stroke: "url(#fx-progress-gradient)",
202
+ "stroke-width": "2.5",
203
+ "stroke-linecap": "round",
204
+ "stroke-dasharray": fe.value
205
+ }, null, 8, k)
206
+ ])),
207
+ L.value ? (f(), i("div", A)) : r("", !0),
208
+ H.value ? (f(), i("div", ce, [(f(!0), i(t, null, m(Y.value, (e, n) => (f(), i("div", {
209
+ class: l(["fx-music-list-item", B.value === n ? "active" : ""]),
210
+ key: n,
211
+ onClick: (e) => _e(n)
212
+ }, [B.value === n ? (f(), i("svg", {
213
+ key: 0,
214
+ class: l(["image-live", { playing: L.value }]),
215
+ viewBox: "0 0 1024 1024",
216
+ xmlns: "http://www.w3.org/2000/svg"
217
+ }, [(f(), i(t, null, m(j, (e, t) => a("path", {
218
+ key: t,
219
+ d: e,
220
+ class: l(["bar", `bar-${t + 1}`])
221
+ }, null, 10, ue)), 64))], 2)) : r("", !0), a("span", null, h(e.name), 1)], 10, le))), 128)), s[6] ||= a("div", { class: "fx-music-list-sep" }, null, -1)])) : r("", !0)
222
+ ], 34));
223
+ }
224
+ });
225
+ //#endregion
226
+ export { j as default };
@@ -0,0 +1,21 @@
1
+ //#endregion
2
+ //#region .vitepress/utils/icons.ts
3
+ var e = /* @__PURE__ */ Object.assign({
4
+ "../assets/svg/fold.svg": "<svg t=\"1777001773348\" class=\"icon\" viewBox=\"0 0 1024 1024\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" p-id=\"15732\" width=\"200\" height=\"200\"><path d=\"M736 480c-12.5-12.5-32.8-12.5-45.3 0L523.3 647.4c-6.2 6.2-16.4 6.2-22.6 0L333.3 480c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L466.7 704c25 25 65.5 25 90.5 0L736 525.3c12.5-12.5 12.5-32.8 0-45.3z\" p-id=\"15733\"></path></svg>",
5
+ "../assets/svg/music-ball/music_list.svg": "<svg t=\"1777001773348\" class=\"icon\" viewBox=\"0 0 1024 1024\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" p-id=\"15732\" width=\"200\" height=\"200\"><path d=\"M128 128h384v85.333333H128zM128 298.666667h384v85.333333H128zM128 469.333333h209.066667v85.333334H128zM725.333333 170.666667v418.133333c-34.133333-21.333333-81.066667-34.133333-128-34.133333-119.466667 0-213.333333 76.8-213.333333 170.666666s93.866667 170.666667 213.333333 170.666667 213.333333-76.8 213.333334-170.666667V256h128V170.666667h-213.333334z\" ></path></svg>",
6
+ "../assets/svg/music-ball/pause.svg": "<svg t=\"1777001773348\" class=\"icon\" viewBox=\"0 0 1024 1024\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" p-id=\"15732\" width=\"200\" height=\"200\"><path d=\"M426.666667 288v448a32.426667 32.426667 0 0 1-32 32h-64a32.426667 32.426667 0 0 1-32-32V288A32.426667 32.426667 0 0 1 330.666667 256h64a32.426667 32.426667 0 0 1 32 32zM693.333333 256h-64a32.426667 32.426667 0 0 0-32 32v448a32.426667 32.426667 0 0 0 32 32h64a32.426667 32.426667 0 0 0 32-32V288a32.426667 32.426667 0 0 0-32-32z\" ></path></svg>",
7
+ "../assets/svg/music-ball/playfill.svg": "<svg t=\"1777001773348\" class=\"icon\" viewBox=\"0 0 1024 1024\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" p-id=\"15732\" width=\"200\" height=\"200\"><path d=\"M817.088 484.96l-512-323.744C295.232 154.976 282.752 154.592 272.576 160.224 262.336 165.856 256 176.608 256 188.256l0 647.328c0 11.648 6.336 22.4 16.576 28.032 4.8 2.656 10.112 3.968 15.424 3.968 5.952 0 11.904-1.664 17.088-4.928l512-323.616C826.368 533.184 832 522.976 832 512 832 501.024 826.368 490.816 817.088 484.96z\" ></path></svg>",
8
+ "../assets/svg/music-ball/volume_off.svg": "<svg t=\"1777001773348\" class=\"icon\" viewBox=\"0 0 1024 1024\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" p-id=\"15732\" width=\"200\" height=\"200\"><path d=\"M704 512c0-75.306667-43.52-140.373333-106.666667-171.733333v94.293333l104.746667 104.746667c1.28-8.96 1.92-18.133333 1.92-27.306667z m106.666667 0c0 40.106667-8.746667 77.866667-23.04 112.64l64.64 64.64C880 636.16 896 576 896 512c0-182.613333-127.786667-335.36-298.666667-374.186667v88.106667c123.306667 36.693333 213.333333 150.826667 213.333334 286.08zM182.4 128L128 182.4 329.6 384H128v256h170.666667l213.333333 213.333333V566.4l181.546667 181.546667c-28.586667 21.973333-60.8 39.68-96.213334 50.346666v88.106667a382.72 382.72 0 0 0 157.226667-77.226667L841.6 896 896 841.6l-384-384L182.4 128zM512 170.666667l-89.173333 89.173333L512 349.013333V170.666667z\" ></path></svg>",
9
+ "../assets/svg/music-ball/volume_up.svg": "<svg t=\"1777001773348\" class=\"icon\" viewBox=\"0 0 1024 1024\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" p-id=\"15732\" width=\"200\" height=\"200\"><path d=\"M128 384v256h170.666667l213.333333 213.333333V170.666667L298.666667 384H128z m576 128c0-75.306667-43.52-140.373333-106.666667-171.733333v343.68c63.146667-31.573333 106.666667-96.64 106.666667-171.946667zM597.333333 137.813333v88.106667c123.306667 36.693333 213.333333 150.826667 213.333334 286.08s-90.026667 249.386667-213.333334 286.08v88.106667c170.88-38.826667 298.666667-191.36 298.666667-374.186667S768.213333 176.64 597.333333 137.813333z\" fill=\"\" ></path></svg>",
10
+ "../assets/svg/unfold.svg": "<svg t=\"1777001853035\" class=\"icon\" viewBox=\"0 0 1024 1024\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" p-id=\"15887\" width=\"200\" height=\"200\"><path d=\"M736 544c-12.5 12.5-32.8 12.5-45.3 0L523.3 376.6c-6.2-6.2-16.4-6.2-22.6 0L333.3 544c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L466.7 320c25-25 65.5-25 90.5 0L736 498.7c12.5 12.5 12.5 32.8 0 45.3z\" p-id=\"15888\"></path></svg>"
11
+ }), t = {};
12
+ for (let n in e) {
13
+ let r = n.replace(/^.*\/assets\/svg\/(.+)\.svg$/, "$1");
14
+ t[r] = e[n];
15
+ }
16
+ function n(e, n = 14) {
17
+ let r = t[e];
18
+ return r ? r.replace(/width=(['"]?)\d+\1/, `width="${n}"`).replace(/height=(['"]?)\d+\1/, `height="${n}"`) : "";
19
+ }
20
+ //#endregion
21
+ export { n as t };
package/dist/config.d.ts CHANGED
@@ -5,7 +5,13 @@ export type MusicItem = {
5
5
  src: string
6
6
  }
7
7
 
8
- export type ConfettiShape = 'star' | 'firework'
8
+ export type ConfettiShape = 'star' | 'colored-paper'
9
+
10
+ export type ConfettiConfig = {
11
+ shape?: ConfettiShape
12
+ shapes?: string | string[]
13
+ secondary?: boolean
14
+ }
9
15
 
10
16
  export interface FxThemeConfig extends DefaultTheme.Config {
11
17
  musicBall?: {
@@ -16,12 +22,7 @@ export interface FxThemeConfig extends DefaultTheme.Config {
16
22
  src?: string
17
23
  list?: MusicItem[]
18
24
  }
19
- confetti?: boolean | {
20
- /** 预设形状: 'star' 金色星星 | 'firework' 烟花 */
21
- shape?: ConfettiShape
22
- /** 自定义 emoji 形状,支持单个字符串或数组 */
23
- shapes?: string | string[]
24
- }
25
+ confetti?: boolean | ConfettiConfig
25
26
  /** 自动提取 hero 图片颜色作为背景光晕和代码块光束颜色,默认 false */
26
27
  heroImageColor?: boolean
27
28
  /** 启用平滑滚动,右侧大纲导航点击时平滑滚动到对应位置,默认 false */
package/dist/index.js CHANGED
@@ -2,58 +2,57 @@ import e from "vitepress/theme";
2
2
  import { defineComponent as t, h as n, nextTick as r, onMounted as i, onUnmounted as a, provide as o, ref as s } from "vue";
3
3
  import { defineClientComponent as c, useData as l } from "vitepress";
4
4
  import { ElTooltip as u } from "element-plus";
5
- //#region .vitepress/components/FxLayout.ts
6
- var d = t({ setup(t, { slots: d }) {
7
- let f = d, { Layout: p } = e, { site: m, isDark: h } = l(), g = m.value.themeConfig;
8
- o("toggle-appearance", async ({ clientX: e, clientY: t }) => {
9
- if (!("startViewTransition" in document)) {
10
- h.value = !h.value;
11
- return;
12
- }
13
- let n = [`circle(0px at ${e}px ${t}px)`, `circle(${Math.hypot(Math.max(e, innerWidth - e), Math.max(t, innerHeight - t))}px at ${e}px ${t}px)`];
14
- await document.startViewTransition(async () => {
15
- h.value = !h.value, await r();
16
- }).ready, document.documentElement.animate({ clipPath: h.value ? n.reverse() : n }, {
17
- duration: 400,
18
- easing: "ease-in-out",
19
- fill: "forwards",
20
- pseudoElement: `::view-transition-${h.value ? "old" : "new"}(root)`
5
+ //#endregion
6
+ //#region .vitepress/theme/index.ts
7
+ var d = {
8
+ extends: e,
9
+ Layout: t({ setup(t, { slots: d }) {
10
+ let f = d, { Layout: p } = e, { site: m, isDark: h } = l(), g = m.value.themeConfig;
11
+ o("toggle-appearance", async ({ clientX: e, clientY: t }) => {
12
+ if (!("startViewTransition" in document)) {
13
+ h.value = !h.value;
14
+ return;
15
+ }
16
+ let n = [`circle(0px at ${e}px ${t}px)`, `circle(${Math.hypot(Math.max(e, innerWidth - e), Math.max(t, innerHeight - t))}px at ${e}px ${t}px)`];
17
+ await document.startViewTransition(async () => {
18
+ h.value = !h.value, await r();
19
+ }).ready, document.documentElement.animate({ clipPath: h.value ? [...n].reverse() : n }, {
20
+ duration: 400,
21
+ easing: "ease-in-out",
22
+ fill: "forwards",
23
+ pseudoElement: `::view-transition-${h.value ? "old" : "new"}(root)`
24
+ });
21
25
  });
22
- });
23
- let _ = g.musicBall?.enable && (g.musicBall?.src || g.musicBall?.list?.length > 0), v = s(), y = s(""), b = s(!1), x;
24
- i(() => {
25
- let e = () => {
26
- let e = document.querySelector(".VPNavBarTitle .title span");
27
- e && (v.value = e, y.value = e.textContent || "", b.value = e.scrollWidth > e.clientWidth);
28
- }, t = document.querySelector(".VPNavBarTitle .title");
29
- t && (x = new ResizeObserver(e), x.observe(t)), e();
30
- }), a(() => x?.disconnect());
31
- let S = g.codeBlockFold !== !1, C = typeof g.codeBlockFold == "object" ? g.codeBlockFold.lines : void 0;
32
- g.smoothScroll && typeof document < "u" && document.documentElement.classList.add("fx-smooth-scroll"), S && typeof document < "u" && document.documentElement.classList.add("fx-code-fold-enabled");
33
- let w = c(() => import("./chunk/FxMusicBall-EJl10uy4.js"), [{ style: { display: g.musicBall && g.musicBall.visible ? "" : "none" } }]), T = c(() => import("./chunk/FxHomeFeatureBefore-D5QFpd8Y.js")), E = c(() => import("./chunk/FxConfetti-Bzb-vQdR.js"), [{ confetti: g.confetti }]), D = c(() => import("./chunk/FxHeroImageBg-piVkOmWL.js"), [{ heroImageColor: g.heroImageColor }]), O = c(() => import("./chunk/FxCodeBlockFold-Bqnbdw3G.js"), [{ lines: C }]);
34
- return () => [
35
- S && n("style", `:root{--fx-code-fold-lines:${C || 10}}`),
36
- g.heroImageColor && n("style", ":root{--vp-home-hero-image-background-image:none;--vp-home-hero-name-color:transparent;--vp-home-hero-name-background:none}"),
37
- n(p, null, {
38
- ...d,
39
- "home-features-before": () => [n(T), f["home-features-before"]?.()]
40
- }),
41
- _ && n(w),
42
- g.confetti && n(E),
43
- g.heroImageColor && n(D),
44
- S && n(O),
45
- v.value && n(u, {
46
- content: y.value,
47
- virtualTriggering: !0,
48
- virtualRef: v.value,
49
- disabled: !b.value,
50
- placement: "bottom"
51
- })
52
- ];
53
- } }), f = {
54
- extends: { ...e },
55
- Layout: d,
56
- enhanceApp({}) {}
26
+ let _ = g.musicBall?.enable && (g.musicBall?.src || g.musicBall?.list?.length > 0), v = s(), y = s(""), b = s(!1), x, S = g.codeBlockFold !== !1, C = typeof g.codeBlockFold == "object" ? g.codeBlockFold.lines : void 0;
27
+ i(() => {
28
+ g.smoothScroll && document.documentElement.classList.add("fx-smooth-scroll"), S && document.documentElement.classList.add("fx-code-fold-enabled");
29
+ let e = () => {
30
+ let e = document.querySelector(".VPNavBarTitle .title span");
31
+ e && (v.value = e, y.value = e.textContent || "", b.value = e.scrollWidth > e.clientWidth);
32
+ }, t = document.querySelector(".VPNavBarTitle .title");
33
+ t && (x = new ResizeObserver(e), x.observe(t)), e();
34
+ }), a(() => x?.disconnect());
35
+ let w = c(() => import("./chunk/FxMusicBall-DwxRT1yK.js"), [{ style: { display: g.musicBall && g.musicBall.visible ? "" : "none" } }]), T = c(() => import("./chunk/FxHomeFeatureBefore-Cd9m9wit.js")), E = c(() => import("./chunk/FxConfetti-DFRD5KKS.js"), [{ confetti: g.confetti }]), D = c(() => import("./chunk/FxHeroImageBg-CiY3qciK.js"), [{ heroImageColor: g.heroImageColor }]), O = c(() => import("./chunk/FxCodeBlockFold-C7zqZ39g.js"), [{ lines: C }]);
36
+ return () => [
37
+ S && n("style", `:root{--fx-code-fold-lines:${C || 10}}`),
38
+ g.heroImageColor && n("style", ":root{--vp-home-hero-image-background-image:none;--vp-home-hero-name-color:transparent;--vp-home-hero-name-background:none}"),
39
+ n(p, null, {
40
+ ...d,
41
+ "home-features-before": () => [n(T), f["home-features-before"]?.()]
42
+ }),
43
+ _ && n(w),
44
+ g.confetti && n(E),
45
+ g.heroImageColor && n(D),
46
+ S && n(O),
47
+ v.value && n(u, {
48
+ content: y.value,
49
+ virtualTriggering: !0,
50
+ virtualRef: v.value,
51
+ disabled: !b.value,
52
+ placement: "bottom"
53
+ })
54
+ ];
55
+ } })
57
56
  };
58
57
  //#endregion
59
- export { f as default };
58
+ export { d as default };