@hefou/dux 0.0.0-stage → 1.0.1

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 (163) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +121 -2
  3. package/dist/cjs/_virtual/_rolldown/runtime.cjs +1 -0
  4. package/dist/cjs/components/Layout.cjs +1 -0
  5. package/dist/cjs/components/Layout.vue_vue_type_script_setup_true_lang.cjs +1 -0
  6. package/dist/cjs/components/common/Badge.cjs +1 -0
  7. package/dist/cjs/components/common/Badge.vue_vue_type_script_setup_true_lang.cjs +1 -0
  8. package/dist/cjs/components/common/NavDropdown.cjs +1 -0
  9. package/dist/cjs/components/common/NavDropdown.vue_vue_type_script_setup_true_lang.cjs +1 -0
  10. package/dist/cjs/components/common/PageHero.cjs +1 -0
  11. package/dist/cjs/components/common/PageHero.vue_vue_type_script_setup_true_lang.cjs +1 -0
  12. package/dist/cjs/components/common/SocialIcons.cjs +1 -0
  13. package/dist/cjs/components/common/SocialIcons.vue_vue_type_script_setup_true_lang.cjs +1 -0
  14. package/dist/cjs/components/docs/DocFooter.cjs +1 -0
  15. package/dist/cjs/components/docs/DocFooter.vue_vue_type_script_setup_true_lang.cjs +1 -0
  16. package/dist/cjs/components/docs/Outline.cjs +1 -0
  17. package/dist/cjs/components/docs/Outline.vue_vue_type_script_setup_true_lang.cjs +1 -0
  18. package/dist/cjs/components/docs/Sidebar.cjs +1 -0
  19. package/dist/cjs/components/docs/Sidebar.vue_vue_type_script_setup_true_lang.cjs +1 -0
  20. package/dist/cjs/components/home/Features.cjs +1 -0
  21. package/dist/cjs/components/home/Features.vue_vue_type_script_setup_true_lang.cjs +1 -0
  22. package/dist/cjs/components/home/Hero.cjs +1 -0
  23. package/dist/cjs/components/home/Hero.vue_vue_type_script_setup_true_lang.cjs +1 -0
  24. package/dist/cjs/components/home/QuickStart.cjs +1 -0
  25. package/dist/cjs/components/home/QuickStart.vue_vue_type_script_setup_true_lang.cjs +1 -0
  26. package/dist/cjs/components/layout/Footer.cjs +1 -0
  27. package/dist/cjs/components/layout/Footer.vue_vue_type_script_setup_true_lang.cjs +1 -0
  28. package/dist/cjs/components/layout/Header.cjs +1 -0
  29. package/dist/cjs/components/layout/Header.vue_vue_type_script_setup_true_lang.cjs +1 -0
  30. package/dist/cjs/components/pages/ChangeLog.cjs +1 -0
  31. package/dist/cjs/components/pages/ChangeLog.vue_vue_type_script_setup_true_lang.cjs +1 -0
  32. package/dist/cjs/components/pages/Doc.cjs +1 -0
  33. package/dist/cjs/components/pages/Doc.vue_vue_type_script_setup_true_lang.cjs +1 -0
  34. package/dist/cjs/components/pages/Home.cjs +1 -0
  35. package/dist/cjs/components/pages/Home.vue_vue_type_script_setup_true_lang.cjs +1 -0
  36. package/dist/cjs/components/pages/Jump.cjs +1 -0
  37. package/dist/cjs/components/pages/Jump.vue_vue_type_script_setup_true_lang.cjs +1 -0
  38. package/dist/cjs/components/pages/NotFound.cjs +1 -0
  39. package/dist/cjs/components/pages/NotFound.vue_vue_type_script_setup_true_lang.cjs +1 -0
  40. package/dist/cjs/components/pages/SinglePage.cjs +1 -0
  41. package/dist/cjs/components/pages/SinglePage.vue_vue_type_script_setup_true_lang.cjs +1 -0
  42. package/dist/cjs/components/pages/Sponsor.cjs +1 -0
  43. package/dist/cjs/components/pages/Sponsor.vue_vue_type_script_setup_true_lang.cjs +1 -0
  44. package/dist/cjs/components/search/MiniSearchModal.cjs +1 -0
  45. package/dist/cjs/components/search/MiniSearchModal.vue_vue_type_script_setup_true_lang.cjs +1 -0
  46. package/dist/cjs/components/search/SearchButton.cjs +1 -0
  47. package/dist/cjs/components/search/SearchButton.vue_vue_type_script_setup_true_lang.cjs +1 -0
  48. package/dist/cjs/composables/search.data.cjs +1 -0
  49. package/dist/cjs/composables/useIcon.cjs +1 -0
  50. package/dist/cjs/composables/useLink.cjs +1 -0
  51. package/dist/cjs/composables/useLocale.cjs +1 -0
  52. package/dist/cjs/composables/useReadingTime.cjs +1 -0
  53. package/dist/cjs/composables/useSearch.cjs +1 -0
  54. package/dist/cjs/config.cjs +1 -0
  55. package/dist/cjs/dux.css +3 -0
  56. package/dist/cjs/index.cjs +1 -0
  57. package/dist/cjs/locales/de-DE.cjs +1 -0
  58. package/dist/cjs/locales/en-US.cjs +1 -0
  59. package/dist/cjs/locales/es-ES.cjs +1 -0
  60. package/dist/cjs/locales/fr-FR.cjs +1 -0
  61. package/dist/cjs/locales/ja-JP.cjs +1 -0
  62. package/dist/cjs/locales/ko-KR.cjs +1 -0
  63. package/dist/cjs/locales/ru-RU.cjs +1 -0
  64. package/dist/cjs/locales/zh-CN.cjs +1 -0
  65. package/dist/cjs/locales/zh-TW.cjs +1 -0
  66. package/dist/cjs/shims/dayjs.cjs +1 -0
  67. package/dist/cjs/shims/sanitize-url.cjs +1 -0
  68. package/dist/esm/components/Layout.js +4 -0
  69. package/dist/esm/components/Layout.vue_vue_type_script_setup_true_lang.js +51 -0
  70. package/dist/esm/components/common/Badge.js +4 -0
  71. package/dist/esm/components/common/Badge.vue_vue_type_script_setup_true_lang.js +20 -0
  72. package/dist/esm/components/common/NavDropdown.js +4 -0
  73. package/dist/esm/components/common/NavDropdown.vue_vue_type_script_setup_true_lang.js +75 -0
  74. package/dist/esm/components/common/PageHero.js +4 -0
  75. package/dist/esm/components/common/PageHero.vue_vue_type_script_setup_true_lang.js +46 -0
  76. package/dist/esm/components/common/SocialIcons.js +4 -0
  77. package/dist/esm/components/common/SocialIcons.vue_vue_type_script_setup_true_lang.js +87 -0
  78. package/dist/esm/components/docs/DocFooter.js +4 -0
  79. package/dist/esm/components/docs/DocFooter.vue_vue_type_script_setup_true_lang.js +84 -0
  80. package/dist/esm/components/docs/Outline.js +4 -0
  81. package/dist/esm/components/docs/Outline.vue_vue_type_script_setup_true_lang.js +75 -0
  82. package/dist/esm/components/docs/Sidebar.js +4 -0
  83. package/dist/esm/components/docs/Sidebar.vue_vue_type_script_setup_true_lang.js +88 -0
  84. package/dist/esm/components/home/Features.js +4 -0
  85. package/dist/esm/components/home/Features.vue_vue_type_script_setup_true_lang.js +115 -0
  86. package/dist/esm/components/home/Hero.js +4 -0
  87. package/dist/esm/components/home/Hero.vue_vue_type_script_setup_true_lang.js +110 -0
  88. package/dist/esm/components/home/QuickStart.js +4 -0
  89. package/dist/esm/components/home/QuickStart.vue_vue_type_script_setup_true_lang.js +71 -0
  90. package/dist/esm/components/layout/Footer.js +4 -0
  91. package/dist/esm/components/layout/Footer.vue_vue_type_script_setup_true_lang.js +27 -0
  92. package/dist/esm/components/layout/Header.js +4 -0
  93. package/dist/esm/components/layout/Header.vue_vue_type_script_setup_true_lang.js +144 -0
  94. package/dist/esm/components/pages/ChangeLog.js +4 -0
  95. package/dist/esm/components/pages/ChangeLog.vue_vue_type_script_setup_true_lang.js +22 -0
  96. package/dist/esm/components/pages/Doc.js +4 -0
  97. package/dist/esm/components/pages/Doc.vue_vue_type_script_setup_true_lang.js +64 -0
  98. package/dist/esm/components/pages/Home.js +4 -0
  99. package/dist/esm/components/pages/Home.vue_vue_type_script_setup_true_lang.js +29 -0
  100. package/dist/esm/components/pages/Jump.js +4 -0
  101. package/dist/esm/components/pages/Jump.vue_vue_type_script_setup_true_lang.js +93 -0
  102. package/dist/esm/components/pages/NotFound.js +4 -0
  103. package/dist/esm/components/pages/NotFound.vue_vue_type_script_setup_true_lang.js +24 -0
  104. package/dist/esm/components/pages/SinglePage.js +4 -0
  105. package/dist/esm/components/pages/SinglePage.vue_vue_type_script_setup_true_lang.js +29 -0
  106. package/dist/esm/components/pages/Sponsor.js +4 -0
  107. package/dist/esm/components/pages/Sponsor.vue_vue_type_script_setup_true_lang.js +94 -0
  108. package/dist/esm/components/search/MiniSearchModal.js +4 -0
  109. package/dist/esm/components/search/MiniSearchModal.vue_vue_type_script_setup_true_lang.js +121 -0
  110. package/dist/esm/components/search/SearchButton.js +4 -0
  111. package/dist/esm/components/search/SearchButton.vue_vue_type_script_setup_true_lang.js +23 -0
  112. package/dist/esm/composables/search.data.js +20 -0
  113. package/dist/esm/composables/useIcon.js +12 -0
  114. package/dist/esm/composables/useLink.js +30 -0
  115. package/dist/esm/composables/useLocale.js +55 -0
  116. package/dist/esm/composables/useReadingTime.js +36 -0
  117. package/dist/esm/composables/useSearch.js +71 -0
  118. package/dist/esm/config.js +58 -0
  119. package/dist/esm/dux.css +3 -0
  120. package/dist/esm/index.js +19 -0
  121. package/dist/esm/locales/de-DE.js +72 -0
  122. package/dist/esm/locales/en-US.js +72 -0
  123. package/dist/esm/locales/es-ES.js +72 -0
  124. package/dist/esm/locales/fr-FR.js +72 -0
  125. package/dist/esm/locales/ja-JP.js +72 -0
  126. package/dist/esm/locales/ko-KR.js +72 -0
  127. package/dist/esm/locales/ru-RU.js +72 -0
  128. package/dist/esm/locales/zh-CN.js +72 -0
  129. package/dist/esm/locales/zh-TW.js +72 -0
  130. package/dist/esm/shims/dayjs.js +5 -0
  131. package/dist/esm/shims/sanitize-url.js +5 -0
  132. package/dist/types/components/Layout.vue.d.ts +3 -0
  133. package/dist/types/components/common/Badge.vue.d.ts +9 -0
  134. package/dist/types/components/common/NavDropdown.vue.d.ts +16 -0
  135. package/dist/types/components/common/PageHero.vue.d.ts +27 -0
  136. package/dist/types/components/common/SocialIcons.vue.d.ts +9 -0
  137. package/dist/types/components/docs/DocFooter.vue.d.ts +3 -0
  138. package/dist/types/components/docs/Outline.vue.d.ts +3 -0
  139. package/dist/types/components/docs/Sidebar.vue.d.ts +3 -0
  140. package/dist/types/components/home/Features.vue.d.ts +18 -0
  141. package/dist/types/components/home/Hero.vue.d.ts +33 -0
  142. package/dist/types/components/home/QuickStart.vue.d.ts +22 -0
  143. package/dist/types/components/layout/Footer.vue.d.ts +10 -0
  144. package/dist/types/components/layout/Header.vue.d.ts +10 -0
  145. package/dist/types/components/pages/ChangeLog.vue.d.ts +3 -0
  146. package/dist/types/components/pages/Doc.vue.d.ts +3 -0
  147. package/dist/types/components/pages/Home.vue.d.ts +3 -0
  148. package/dist/types/components/pages/Jump.vue.d.ts +3 -0
  149. package/dist/types/components/pages/NotFound.vue.d.ts +3 -0
  150. package/dist/types/components/pages/SinglePage.vue.d.ts +3 -0
  151. package/dist/types/components/pages/Sponsor.vue.d.ts +3 -0
  152. package/dist/types/components/search/MiniSearchModal.vue.d.ts +3 -0
  153. package/dist/types/components/search/SearchButton.vue.d.ts +3 -0
  154. package/dist/types/composables/search.data.d.ts +3 -0
  155. package/dist/types/composables/useIcon.d.ts +11 -0
  156. package/dist/types/composables/useLink.d.ts +10 -0
  157. package/dist/types/composables/useLocale.d.ts +12 -0
  158. package/dist/types/composables/useReadingTime.d.ts +9 -0
  159. package/dist/types/composables/useSearch.d.ts +65 -0
  160. package/dist/types/config.d.ts +6 -0
  161. package/dist/types/index.d.ts +16 -0
  162. package/dist/types/types/index.d.ts +65 -0
  163. 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 };