@hefou/dux 0.0.0-stage → 1.0.0
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/LICENSE +21 -0
- package/README.md +91 -2
- package/dist/cjs/_virtual/_rolldown/runtime.cjs +1 -0
- package/dist/cjs/components/Layout.cjs +1 -0
- package/dist/cjs/components/Layout.vue_vue_type_script_setup_true_lang.cjs +1 -0
- package/dist/cjs/components/common/Badge.cjs +1 -0
- package/dist/cjs/components/common/Badge.vue_vue_type_script_setup_true_lang.cjs +1 -0
- package/dist/cjs/components/common/NavDropdown.cjs +1 -0
- package/dist/cjs/components/common/NavDropdown.vue_vue_type_script_setup_true_lang.cjs +1 -0
- package/dist/cjs/components/common/PageHero.cjs +1 -0
- package/dist/cjs/components/common/PageHero.vue_vue_type_script_setup_true_lang.cjs +1 -0
- package/dist/cjs/components/common/SocialIcons.cjs +1 -0
- package/dist/cjs/components/common/SocialIcons.vue_vue_type_script_setup_true_lang.cjs +1 -0
- package/dist/cjs/components/docs/DocFooter.cjs +1 -0
- package/dist/cjs/components/docs/DocFooter.vue_vue_type_script_setup_true_lang.cjs +1 -0
- package/dist/cjs/components/docs/Outline.cjs +1 -0
- package/dist/cjs/components/docs/Outline.vue_vue_type_script_setup_true_lang.cjs +1 -0
- package/dist/cjs/components/docs/Sidebar.cjs +1 -0
- package/dist/cjs/components/docs/Sidebar.vue_vue_type_script_setup_true_lang.cjs +1 -0
- package/dist/cjs/components/home/Features.cjs +1 -0
- package/dist/cjs/components/home/Features.vue_vue_type_script_setup_true_lang.cjs +1 -0
- package/dist/cjs/components/home/Hero.cjs +1 -0
- package/dist/cjs/components/home/Hero.vue_vue_type_script_setup_true_lang.cjs +1 -0
- package/dist/cjs/components/home/QuickStart.cjs +1 -0
- package/dist/cjs/components/home/QuickStart.vue_vue_type_script_setup_true_lang.cjs +1 -0
- package/dist/cjs/components/layout/Footer.cjs +1 -0
- package/dist/cjs/components/layout/Footer.vue_vue_type_script_setup_true_lang.cjs +1 -0
- package/dist/cjs/components/layout/Header.cjs +1 -0
- package/dist/cjs/components/layout/Header.vue_vue_type_script_setup_true_lang.cjs +1 -0
- package/dist/cjs/components/pages/ChangeLog.cjs +1 -0
- package/dist/cjs/components/pages/ChangeLog.vue_vue_type_script_setup_true_lang.cjs +1 -0
- package/dist/cjs/components/pages/Doc.cjs +1 -0
- package/dist/cjs/components/pages/Doc.vue_vue_type_script_setup_true_lang.cjs +1 -0
- package/dist/cjs/components/pages/Home.cjs +1 -0
- package/dist/cjs/components/pages/Home.vue_vue_type_script_setup_true_lang.cjs +1 -0
- package/dist/cjs/components/pages/Jump.cjs +1 -0
- package/dist/cjs/components/pages/Jump.vue_vue_type_script_setup_true_lang.cjs +1 -0
- package/dist/cjs/components/pages/NotFound.cjs +1 -0
- package/dist/cjs/components/pages/NotFound.vue_vue_type_script_setup_true_lang.cjs +1 -0
- package/dist/cjs/components/pages/SinglePage.cjs +1 -0
- package/dist/cjs/components/pages/SinglePage.vue_vue_type_script_setup_true_lang.cjs +1 -0
- package/dist/cjs/components/pages/Sponsor.cjs +1 -0
- package/dist/cjs/components/pages/Sponsor.vue_vue_type_script_setup_true_lang.cjs +1 -0
- package/dist/cjs/components/search/MiniSearchModal.cjs +1 -0
- package/dist/cjs/components/search/MiniSearchModal.vue_vue_type_script_setup_true_lang.cjs +1 -0
- package/dist/cjs/components/search/SearchButton.cjs +1 -0
- package/dist/cjs/components/search/SearchButton.vue_vue_type_script_setup_true_lang.cjs +1 -0
- package/dist/cjs/composables/search.data.cjs +1 -0
- package/dist/cjs/composables/useIcon.cjs +1 -0
- package/dist/cjs/composables/useLink.cjs +1 -0
- package/dist/cjs/composables/useLocale.cjs +1 -0
- package/dist/cjs/composables/useReadingTime.cjs +1 -0
- package/dist/cjs/composables/useSearch.cjs +1 -0
- package/dist/cjs/config.cjs +1 -0
- package/dist/cjs/dux.css +3 -0
- package/dist/cjs/index.cjs +1 -0
- package/dist/cjs/locales/de-DE.cjs +1 -0
- package/dist/cjs/locales/en-US.cjs +1 -0
- package/dist/cjs/locales/es-ES.cjs +1 -0
- package/dist/cjs/locales/fr-FR.cjs +1 -0
- package/dist/cjs/locales/ja-JP.cjs +1 -0
- package/dist/cjs/locales/ko-KR.cjs +1 -0
- package/dist/cjs/locales/ru-RU.cjs +1 -0
- package/dist/cjs/locales/zh-CN.cjs +1 -0
- package/dist/cjs/locales/zh-TW.cjs +1 -0
- package/dist/cjs/shims/dayjs.cjs +1 -0
- package/dist/cjs/shims/sanitize-url.cjs +1 -0
- package/dist/esm/components/Layout.js +4 -0
- package/dist/esm/components/Layout.vue_vue_type_script_setup_true_lang.js +51 -0
- package/dist/esm/components/common/Badge.js +4 -0
- package/dist/esm/components/common/Badge.vue_vue_type_script_setup_true_lang.js +20 -0
- package/dist/esm/components/common/NavDropdown.js +4 -0
- package/dist/esm/components/common/NavDropdown.vue_vue_type_script_setup_true_lang.js +75 -0
- package/dist/esm/components/common/PageHero.js +4 -0
- package/dist/esm/components/common/PageHero.vue_vue_type_script_setup_true_lang.js +46 -0
- package/dist/esm/components/common/SocialIcons.js +4 -0
- package/dist/esm/components/common/SocialIcons.vue_vue_type_script_setup_true_lang.js +87 -0
- package/dist/esm/components/docs/DocFooter.js +4 -0
- package/dist/esm/components/docs/DocFooter.vue_vue_type_script_setup_true_lang.js +84 -0
- package/dist/esm/components/docs/Outline.js +4 -0
- package/dist/esm/components/docs/Outline.vue_vue_type_script_setup_true_lang.js +75 -0
- package/dist/esm/components/docs/Sidebar.js +4 -0
- package/dist/esm/components/docs/Sidebar.vue_vue_type_script_setup_true_lang.js +88 -0
- package/dist/esm/components/home/Features.js +4 -0
- package/dist/esm/components/home/Features.vue_vue_type_script_setup_true_lang.js +115 -0
- package/dist/esm/components/home/Hero.js +4 -0
- package/dist/esm/components/home/Hero.vue_vue_type_script_setup_true_lang.js +110 -0
- package/dist/esm/components/home/QuickStart.js +4 -0
- package/dist/esm/components/home/QuickStart.vue_vue_type_script_setup_true_lang.js +71 -0
- package/dist/esm/components/layout/Footer.js +4 -0
- package/dist/esm/components/layout/Footer.vue_vue_type_script_setup_true_lang.js +27 -0
- package/dist/esm/components/layout/Header.js +4 -0
- package/dist/esm/components/layout/Header.vue_vue_type_script_setup_true_lang.js +144 -0
- package/dist/esm/components/pages/ChangeLog.js +4 -0
- package/dist/esm/components/pages/ChangeLog.vue_vue_type_script_setup_true_lang.js +22 -0
- package/dist/esm/components/pages/Doc.js +4 -0
- package/dist/esm/components/pages/Doc.vue_vue_type_script_setup_true_lang.js +64 -0
- package/dist/esm/components/pages/Home.js +4 -0
- package/dist/esm/components/pages/Home.vue_vue_type_script_setup_true_lang.js +29 -0
- package/dist/esm/components/pages/Jump.js +4 -0
- package/dist/esm/components/pages/Jump.vue_vue_type_script_setup_true_lang.js +93 -0
- package/dist/esm/components/pages/NotFound.js +4 -0
- package/dist/esm/components/pages/NotFound.vue_vue_type_script_setup_true_lang.js +24 -0
- package/dist/esm/components/pages/SinglePage.js +4 -0
- package/dist/esm/components/pages/SinglePage.vue_vue_type_script_setup_true_lang.js +29 -0
- package/dist/esm/components/pages/Sponsor.js +4 -0
- package/dist/esm/components/pages/Sponsor.vue_vue_type_script_setup_true_lang.js +94 -0
- package/dist/esm/components/search/MiniSearchModal.js +4 -0
- package/dist/esm/components/search/MiniSearchModal.vue_vue_type_script_setup_true_lang.js +121 -0
- package/dist/esm/components/search/SearchButton.js +4 -0
- package/dist/esm/components/search/SearchButton.vue_vue_type_script_setup_true_lang.js +23 -0
- package/dist/esm/composables/search.data.js +20 -0
- package/dist/esm/composables/useIcon.js +12 -0
- package/dist/esm/composables/useLink.js +30 -0
- package/dist/esm/composables/useLocale.js +55 -0
- package/dist/esm/composables/useReadingTime.js +36 -0
- package/dist/esm/composables/useSearch.js +71 -0
- package/dist/esm/config.js +58 -0
- package/dist/esm/dux.css +3 -0
- package/dist/esm/index.js +19 -0
- package/dist/esm/locales/de-DE.js +72 -0
- package/dist/esm/locales/en-US.js +72 -0
- package/dist/esm/locales/es-ES.js +72 -0
- package/dist/esm/locales/fr-FR.js +72 -0
- package/dist/esm/locales/ja-JP.js +72 -0
- package/dist/esm/locales/ko-KR.js +72 -0
- package/dist/esm/locales/ru-RU.js +72 -0
- package/dist/esm/locales/zh-CN.js +72 -0
- package/dist/esm/locales/zh-TW.js +72 -0
- package/dist/esm/shims/dayjs.js +5 -0
- package/dist/esm/shims/sanitize-url.js +5 -0
- package/dist/types/components/Layout.vue.d.ts +3 -0
- package/dist/types/components/common/Badge.vue.d.ts +9 -0
- package/dist/types/components/common/NavDropdown.vue.d.ts +16 -0
- package/dist/types/components/common/PageHero.vue.d.ts +27 -0
- package/dist/types/components/common/SocialIcons.vue.d.ts +9 -0
- package/dist/types/components/docs/DocFooter.vue.d.ts +3 -0
- package/dist/types/components/docs/Outline.vue.d.ts +3 -0
- package/dist/types/components/docs/Sidebar.vue.d.ts +3 -0
- package/dist/types/components/home/Features.vue.d.ts +18 -0
- package/dist/types/components/home/Hero.vue.d.ts +33 -0
- package/dist/types/components/home/QuickStart.vue.d.ts +22 -0
- package/dist/types/components/layout/Footer.vue.d.ts +10 -0
- package/dist/types/components/layout/Header.vue.d.ts +10 -0
- package/dist/types/components/pages/ChangeLog.vue.d.ts +3 -0
- package/dist/types/components/pages/Doc.vue.d.ts +3 -0
- package/dist/types/components/pages/Home.vue.d.ts +3 -0
- package/dist/types/components/pages/Jump.vue.d.ts +3 -0
- package/dist/types/components/pages/NotFound.vue.d.ts +3 -0
- package/dist/types/components/pages/SinglePage.vue.d.ts +3 -0
- package/dist/types/components/pages/Sponsor.vue.d.ts +3 -0
- package/dist/types/components/search/MiniSearchModal.vue.d.ts +3 -0
- package/dist/types/components/search/SearchButton.vue.d.ts +3 -0
- package/dist/types/composables/search.data.d.ts +3 -0
- package/dist/types/composables/useIcon.d.ts +11 -0
- package/dist/types/composables/useLink.d.ts +10 -0
- package/dist/types/composables/useLocale.d.ts +12 -0
- package/dist/types/composables/useReadingTime.d.ts +9 -0
- package/dist/types/composables/useSearch.d.ts +65 -0
- package/dist/types/config.d.ts +6 -0
- package/dist/types/index.d.ts +16 -0
- package/dist/types/types/index.d.ts +65 -0
- package/package.json +87 -3
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import e from "../locales/en-US.js";
|
|
2
|
+
import t from "../locales/zh-CN.js";
|
|
3
|
+
import n from "../locales/zh-TW.js";
|
|
4
|
+
import r from "../locales/ja-JP.js";
|
|
5
|
+
import i from "../locales/ko-KR.js";
|
|
6
|
+
import a from "../locales/de-DE.js";
|
|
7
|
+
import o from "../locales/fr-FR.js";
|
|
8
|
+
import s from "../locales/es-ES.js";
|
|
9
|
+
import c from "../locales/ru-RU.js";
|
|
10
|
+
import { computed as l } from "vue";
|
|
11
|
+
import { useData as u } from "vitepress";
|
|
12
|
+
// composables/useLocale.ts
|
|
13
|
+
var d = {
|
|
14
|
+
"en-US": e,
|
|
15
|
+
"zh-CN": t,
|
|
16
|
+
"zh-TW": n,
|
|
17
|
+
"ja-JP": r,
|
|
18
|
+
"ko-KR": i,
|
|
19
|
+
"de-DE": a,
|
|
20
|
+
"fr-FR": o,
|
|
21
|
+
"es-ES": s,
|
|
22
|
+
"ru-RU": c,
|
|
23
|
+
en: e,
|
|
24
|
+
zh: t,
|
|
25
|
+
ja: r,
|
|
26
|
+
ko: i,
|
|
27
|
+
de: a,
|
|
28
|
+
fr: o,
|
|
29
|
+
es: s,
|
|
30
|
+
ru: c
|
|
31
|
+
};
|
|
32
|
+
function f(e) {
|
|
33
|
+
let { theme: t, lang: n, site: r } = u();
|
|
34
|
+
return l(() => {
|
|
35
|
+
let i = n.value || r.value.lang || "en-US", a = t.value?.langs?.[e];
|
|
36
|
+
if (a) return {
|
|
37
|
+
...p(e, i),
|
|
38
|
+
...a
|
|
39
|
+
};
|
|
40
|
+
let o = t.value?.[e];
|
|
41
|
+
if (o) return {
|
|
42
|
+
...p(e, i),
|
|
43
|
+
...o
|
|
44
|
+
};
|
|
45
|
+
let s = t.value?.customPages?.[e];
|
|
46
|
+
return s ? {
|
|
47
|
+
...p(e, i),
|
|
48
|
+
...s
|
|
49
|
+
} : p(e, i);
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
function p(t, n) {
|
|
53
|
+
return (d[n] || d["en-US"])[t] || e[t];
|
|
54
|
+
}
|
|
55
|
+
export { f as useLocale };
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { useLocale as e } from "./useLocale.js";
|
|
2
|
+
import { computed as t, onMounted as n, ref as r, watch as i } from "vue";
|
|
3
|
+
import { useRoute as a } from "vitepress";
|
|
4
|
+
// composables/useReadingTime.ts
|
|
5
|
+
function o() {
|
|
6
|
+
let o = r(""), s = e("readingTime"), c = a(), l = () => {
|
|
7
|
+
setTimeout(() => {
|
|
8
|
+
let e = document.querySelector(".prose-content");
|
|
9
|
+
e ? o.value = e.textContent || "" : o.value = "";
|
|
10
|
+
}, 100);
|
|
11
|
+
};
|
|
12
|
+
return n(() => {
|
|
13
|
+
l();
|
|
14
|
+
}), i(() => c.path, () => {
|
|
15
|
+
l();
|
|
16
|
+
}), {
|
|
17
|
+
readingTime: t(() => {
|
|
18
|
+
let e = o.value, t = s.value;
|
|
19
|
+
if (!e) return {
|
|
20
|
+
words: 0,
|
|
21
|
+
minutes: 0,
|
|
22
|
+
time: t.minute || "1 minute",
|
|
23
|
+
wordsText: `0 ${t.words || "words"}`
|
|
24
|
+
};
|
|
25
|
+
let n = e.replace(/\s+/g, " ").trim(), r = (n.match(/[\u4e00-\u9fa5]/g) || []).length, i = n.replace(/[\u4e00-\u9fa5]/g, "").split(/\s+/).filter((e) => e.length > 0).length, a = r + i, c = r / 300, l = i / 200, u = Math.ceil(c + l), d = Math.max(1, u);
|
|
26
|
+
return {
|
|
27
|
+
words: a,
|
|
28
|
+
minutes: d,
|
|
29
|
+
time: (d <= 1 ? t.minute || "1 minute" : t.minutes || `${d} minutes`).replace("{n}", String(d)),
|
|
30
|
+
wordsText: `${a} ${t.words || "words"}`
|
|
31
|
+
};
|
|
32
|
+
}),
|
|
33
|
+
readingTimeLocale: s
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
export { o as useReadingTime };
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { data as e } from "./search.data.js";
|
|
2
|
+
import { ref as t, watch as n } from "vue";
|
|
3
|
+
import r from "minisearch";
|
|
4
|
+
// composables/useSearch.ts
|
|
5
|
+
var i = t(!1), a = t(""), o = t([]), s = t(0), c = t(null), l = t(!1);
|
|
6
|
+
async function u() {
|
|
7
|
+
if (!c.value) {
|
|
8
|
+
l.value = !0;
|
|
9
|
+
try {
|
|
10
|
+
c.value = new r({
|
|
11
|
+
fields: [
|
|
12
|
+
"title",
|
|
13
|
+
"text",
|
|
14
|
+
"section"
|
|
15
|
+
],
|
|
16
|
+
storeFields: [
|
|
17
|
+
"title",
|
|
18
|
+
"text",
|
|
19
|
+
"url",
|
|
20
|
+
"section"
|
|
21
|
+
]
|
|
22
|
+
}), c.value.addAll(e);
|
|
23
|
+
} catch (e) {
|
|
24
|
+
console.error("Failed to initialize search index:", e);
|
|
25
|
+
} finally {
|
|
26
|
+
l.value = !1;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
function d(e) {
|
|
31
|
+
if (!c.value || !e.trim()) o.value = [];
|
|
32
|
+
else {
|
|
33
|
+
try {
|
|
34
|
+
o.value = c.value.search(e, {
|
|
35
|
+
fuzzy: .2,
|
|
36
|
+
prefix: !0,
|
|
37
|
+
boost: {
|
|
38
|
+
title: 4,
|
|
39
|
+
text: 2,
|
|
40
|
+
section: 1
|
|
41
|
+
}
|
|
42
|
+
}).map((e) => ({
|
|
43
|
+
id: e.id,
|
|
44
|
+
title: e.title,
|
|
45
|
+
text: e.text,
|
|
46
|
+
url: e.url,
|
|
47
|
+
section: e.section
|
|
48
|
+
}));
|
|
49
|
+
} catch (e) {
|
|
50
|
+
console.error("Search error:", e), o.value = [];
|
|
51
|
+
}
|
|
52
|
+
s.value = 0;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
function f() {
|
|
56
|
+
i.value = !0, a.value = "", o.value = [], s.value = 0, c.value || u();
|
|
57
|
+
}
|
|
58
|
+
function p() {
|
|
59
|
+
i.value = !1, a.value = "", o.value = [], s.value = 0;
|
|
60
|
+
}
|
|
61
|
+
function m(e, t) {
|
|
62
|
+
let n = o.value[e];
|
|
63
|
+
n && (t ? t(n.url) : window.location.href = n.url, p());
|
|
64
|
+
}
|
|
65
|
+
function h(e) {
|
|
66
|
+
e === "up" && s.value > 0 ? s.value-- : e === "down" && s.value < o.value.length - 1 && s.value++;
|
|
67
|
+
}
|
|
68
|
+
n(a, (e) => {
|
|
69
|
+
d(e);
|
|
70
|
+
});
|
|
71
|
+
export { p as closeSearch, u as initSearchIndex, l as isLoading, i as isSearchOpen, h as navigateResults, f as openSearch, d as performSearch, c as searchIndex, a as searchQuery, o as searchResults, m as selectResult, s as selectedIndex };
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { defineConfig as e } from "vitepress";
|
|
2
|
+
// config.ts
|
|
3
|
+
function t(e) {
|
|
4
|
+
return Array.from(new Set(e));
|
|
5
|
+
}
|
|
6
|
+
function n(e) {
|
|
7
|
+
return e === !0 ? !0 : Array.isArray(e) ? e.some((e) => typeof e != "string") ? e.some((e) => e === "@hefou/dux") ? e.slice() : [...e, "@hefou/dux"] : t([...e, "@hefou/dux"]) : typeof e == "string" ? t([e, "@hefou/dux"]) : e instanceof RegExp ? [e, "@hefou/dux"] : ["@hefou/dux"];
|
|
8
|
+
}
|
|
9
|
+
function r(e) {
|
|
10
|
+
return t([...Array.isArray(e) ? e : [], "@hefou/dux"]);
|
|
11
|
+
}
|
|
12
|
+
function i(e) {
|
|
13
|
+
let t = [
|
|
14
|
+
{
|
|
15
|
+
find: /^dayjs$/,
|
|
16
|
+
replacement: "@hefou/dux/shims/dayjs"
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
find: /^dayjs\/plugin\//,
|
|
20
|
+
replacement: "dayjs/plugin/"
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
find: /^dayjs\/esm\/index\.js\/plugin\//,
|
|
24
|
+
replacement: "dayjs/plugin/"
|
|
25
|
+
}
|
|
26
|
+
];
|
|
27
|
+
if (Array.isArray(e)) t.push(...e);
|
|
28
|
+
else if (e && typeof e == "object") for (let [n, r] of Object.entries(e)) t.push({
|
|
29
|
+
find: n,
|
|
30
|
+
replacement: r
|
|
31
|
+
});
|
|
32
|
+
return t.some((e) => e.find instanceof RegExp ? e.find.test("@braintree/sanitize-url") : e.find === "@braintree/sanitize-url") || t.push({
|
|
33
|
+
find: /^@braintree\/sanitize-url$/,
|
|
34
|
+
replacement: "@hefou/dux/shims/sanitize-url"
|
|
35
|
+
}), t;
|
|
36
|
+
}
|
|
37
|
+
function a(t) {
|
|
38
|
+
let a = t.vite ?? {}, o = {
|
|
39
|
+
...a.ssr ?? {},
|
|
40
|
+
noExternal: n(a.ssr?.noExternal)
|
|
41
|
+
}, s = {
|
|
42
|
+
...a.optimizeDeps ?? {},
|
|
43
|
+
exclude: r(a.optimizeDeps?.exclude)
|
|
44
|
+
}, c = {
|
|
45
|
+
...a.resolve ?? {},
|
|
46
|
+
alias: i(a.resolve?.alias)
|
|
47
|
+
};
|
|
48
|
+
return e({
|
|
49
|
+
...t,
|
|
50
|
+
vite: {
|
|
51
|
+
...a,
|
|
52
|
+
ssr: o,
|
|
53
|
+
optimizeDeps: s,
|
|
54
|
+
resolve: c
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
export { a as VPTheme };
|