@vuepress/client 2.0.0-beta.65 → 2.0.0-beta.67
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/dist/app.js +20 -13
- package/dist/{chunk-IKARB3UY.js → chunk-WOIWBUXI.js} +43 -43
- package/dist/index.d.ts +5 -5
- package/dist/index.js +3 -3
- package/package.json +3 -3
package/dist/app.js
CHANGED
|
@@ -2,12 +2,13 @@ import {
|
|
|
2
2
|
ClientOnly,
|
|
3
3
|
Content,
|
|
4
4
|
layoutsSymbol,
|
|
5
|
-
|
|
5
|
+
pageDataSymbol,
|
|
6
6
|
pageFrontmatterSymbol,
|
|
7
7
|
pageHeadSymbol,
|
|
8
8
|
pageHeadTitleSymbol,
|
|
9
9
|
pageLangSymbol,
|
|
10
10
|
pageLayoutSymbol,
|
|
11
|
+
pagesData,
|
|
11
12
|
resolvers,
|
|
12
13
|
routeLocaleSymbol,
|
|
13
14
|
siteData,
|
|
@@ -17,7 +18,7 @@ import {
|
|
|
17
18
|
usePageLang,
|
|
18
19
|
usePageLayout,
|
|
19
20
|
withBase
|
|
20
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-WOIWBUXI.js";
|
|
21
22
|
|
|
22
23
|
// src/app.ts
|
|
23
24
|
import { clientConfigs } from "@internal/clientConfigs";
|
|
@@ -101,21 +102,13 @@ var createVueRouter = () => {
|
|
|
101
102
|
return { top: 0 };
|
|
102
103
|
}
|
|
103
104
|
});
|
|
104
|
-
let pendingPageData;
|
|
105
|
-
let pendingToPath;
|
|
106
105
|
router.beforeResolve(async (to, from) => {
|
|
107
106
|
if (to.path !== from.path || from === START_LOCATION) {
|
|
108
107
|
;
|
|
109
|
-
[
|
|
108
|
+
[to.meta._data] = await Promise.all([
|
|
110
109
|
resolvers.resolvePageData(to.name),
|
|
111
110
|
pagesComponents[to.name]?.__asyncLoader()
|
|
112
111
|
]);
|
|
113
|
-
pendingToPath = to.path;
|
|
114
|
-
}
|
|
115
|
-
});
|
|
116
|
-
router.afterEach((to, from) => {
|
|
117
|
-
if (to.path !== from.path && to.path === pendingToPath) {
|
|
118
|
-
pageData.value = pendingPageData;
|
|
119
112
|
}
|
|
120
113
|
});
|
|
121
114
|
return router;
|
|
@@ -128,14 +121,27 @@ var setupGlobalComponents = (app) => {
|
|
|
128
121
|
};
|
|
129
122
|
|
|
130
123
|
// src/setupGlobalComputed.ts
|
|
131
|
-
import { computedEager } from "@vueuse/core";
|
|
124
|
+
import { computedEager, computedWithControl } from "@vueuse/core";
|
|
132
125
|
import { computed } from "vue";
|
|
133
126
|
var setupGlobalComputed = (app, router, clientConfigs2) => {
|
|
134
|
-
const layouts = computed(() => resolvers.resolveLayouts(clientConfigs2));
|
|
135
127
|
const routePath = computedEager(() => router.currentRoute.value.path);
|
|
136
128
|
const routeLocale = computedEager(
|
|
137
129
|
() => resolvers.resolveRouteLocale(siteData.value.locales, routePath.value)
|
|
138
130
|
);
|
|
131
|
+
const pageData = computedWithControl(
|
|
132
|
+
routePath,
|
|
133
|
+
() => router.currentRoute.value.meta._data
|
|
134
|
+
);
|
|
135
|
+
if (__VUEPRESS_DEV__ && (import.meta.webpackHot || import.meta.hot)) {
|
|
136
|
+
__VUE_HMR_RUNTIME__.updatePageData = (data) => {
|
|
137
|
+
pagesData.value[data.key] = () => Promise.resolve(data);
|
|
138
|
+
if (data.key === router.currentRoute.value.meta._data.key) {
|
|
139
|
+
router.currentRoute.value.meta._data = data;
|
|
140
|
+
pageData.trigger();
|
|
141
|
+
}
|
|
142
|
+
};
|
|
143
|
+
}
|
|
144
|
+
const layouts = computed(() => resolvers.resolveLayouts(clientConfigs2));
|
|
139
145
|
const siteLocaleData = computed(
|
|
140
146
|
() => resolvers.resolveSiteLocaleData(siteData.value, routeLocale.value)
|
|
141
147
|
);
|
|
@@ -159,6 +165,7 @@ var setupGlobalComputed = (app, router, clientConfigs2) => {
|
|
|
159
165
|
() => resolvers.resolvePageLayout(pageData.value, layouts.value)
|
|
160
166
|
);
|
|
161
167
|
app.provide(layoutsSymbol, layouts);
|
|
168
|
+
app.provide(pageDataSymbol, pageData);
|
|
162
169
|
app.provide(pageFrontmatterSymbol, pageFrontmatter);
|
|
163
170
|
app.provide(pageHeadTitleSymbol, pageHeadTitle);
|
|
164
171
|
app.provide(pageHeadSymbol, pageHead);
|
|
@@ -11,14 +11,11 @@ var useLayouts = () => {
|
|
|
11
11
|
return layouts;
|
|
12
12
|
};
|
|
13
13
|
|
|
14
|
-
// src/composables/pagesData.ts
|
|
15
|
-
import { pagesData as pagesDataRaw } from "@internal/pagesData";
|
|
16
|
-
import { ref } from "vue";
|
|
17
|
-
var pagesData = ref(pagesDataRaw);
|
|
18
|
-
var usePagesData = () => pagesData;
|
|
19
|
-
|
|
20
14
|
// src/composables/pageData.ts
|
|
21
|
-
import {
|
|
15
|
+
import { inject as inject2, readonly } from "vue";
|
|
16
|
+
var pageDataSymbol = Symbol(
|
|
17
|
+
__VUEPRESS_DEV__ ? "pageData" : ""
|
|
18
|
+
);
|
|
22
19
|
var pageDataEmpty = readonly({
|
|
23
20
|
key: "",
|
|
24
21
|
path: "",
|
|
@@ -27,24 +24,21 @@ var pageDataEmpty = readonly({
|
|
|
27
24
|
frontmatter: {},
|
|
28
25
|
headers: []
|
|
29
26
|
});
|
|
30
|
-
var
|
|
31
|
-
|
|
32
|
-
if (
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
}
|
|
38
|
-
};
|
|
39
|
-
}
|
|
27
|
+
var usePageData = () => {
|
|
28
|
+
const pageData = inject2(pageDataSymbol);
|
|
29
|
+
if (!pageData) {
|
|
30
|
+
throw new Error("pageData() is called without provider.");
|
|
31
|
+
}
|
|
32
|
+
return pageData;
|
|
33
|
+
};
|
|
40
34
|
|
|
41
35
|
// src/composables/pageFrontmatter.ts
|
|
42
|
-
import { inject as
|
|
36
|
+
import { inject as inject3 } from "vue";
|
|
43
37
|
var pageFrontmatterSymbol = Symbol(
|
|
44
38
|
__VUEPRESS_DEV__ ? "pageFrontmatter" : ""
|
|
45
39
|
);
|
|
46
40
|
var usePageFrontmatter = () => {
|
|
47
|
-
const pageFrontmatter =
|
|
41
|
+
const pageFrontmatter = inject3(pageFrontmatterSymbol);
|
|
48
42
|
if (!pageFrontmatter) {
|
|
49
43
|
throw new Error("usePageFrontmatter() is called without provider.");
|
|
50
44
|
}
|
|
@@ -52,12 +46,12 @@ var usePageFrontmatter = () => {
|
|
|
52
46
|
};
|
|
53
47
|
|
|
54
48
|
// src/composables/pageHead.ts
|
|
55
|
-
import { inject as
|
|
49
|
+
import { inject as inject4 } from "vue";
|
|
56
50
|
var pageHeadSymbol = Symbol(
|
|
57
51
|
__VUEPRESS_DEV__ ? "pageHead" : ""
|
|
58
52
|
);
|
|
59
53
|
var usePageHead = () => {
|
|
60
|
-
const pageHead =
|
|
54
|
+
const pageHead = inject4(pageHeadSymbol);
|
|
61
55
|
if (!pageHead) {
|
|
62
56
|
throw new Error("usePageHead() is called without provider.");
|
|
63
57
|
}
|
|
@@ -65,12 +59,12 @@ var usePageHead = () => {
|
|
|
65
59
|
};
|
|
66
60
|
|
|
67
61
|
// src/composables/pageHeadTitle.ts
|
|
68
|
-
import { inject as
|
|
62
|
+
import { inject as inject5 } from "vue";
|
|
69
63
|
var pageHeadTitleSymbol = Symbol(
|
|
70
64
|
__VUEPRESS_DEV__ ? "pageHeadTitle" : ""
|
|
71
65
|
);
|
|
72
66
|
var usePageHeadTitle = () => {
|
|
73
|
-
const pageHeadTitle =
|
|
67
|
+
const pageHeadTitle = inject5(pageHeadTitleSymbol);
|
|
74
68
|
if (!pageHeadTitle) {
|
|
75
69
|
throw new Error("usePageHeadTitle() is called without provider.");
|
|
76
70
|
}
|
|
@@ -78,12 +72,12 @@ var usePageHeadTitle = () => {
|
|
|
78
72
|
};
|
|
79
73
|
|
|
80
74
|
// src/composables/pageLang.ts
|
|
81
|
-
import { inject as
|
|
75
|
+
import { inject as inject6 } from "vue";
|
|
82
76
|
var pageLangSymbol = Symbol(
|
|
83
77
|
__VUEPRESS_DEV__ ? "pageLang" : ""
|
|
84
78
|
);
|
|
85
79
|
var usePageLang = () => {
|
|
86
|
-
const pageLang =
|
|
80
|
+
const pageLang = inject6(pageLangSymbol);
|
|
87
81
|
if (!pageLang) {
|
|
88
82
|
throw new Error("usePageLang() is called without provider.");
|
|
89
83
|
}
|
|
@@ -92,26 +86,32 @@ var usePageLang = () => {
|
|
|
92
86
|
|
|
93
87
|
// src/composables/pageLayout.ts
|
|
94
88
|
import {
|
|
95
|
-
inject as
|
|
89
|
+
inject as inject7
|
|
96
90
|
} from "vue";
|
|
97
91
|
var pageLayoutSymbol = Symbol(
|
|
98
92
|
__VUEPRESS_DEV__ ? "pageLayout" : ""
|
|
99
93
|
);
|
|
100
94
|
var usePageLayout = () => {
|
|
101
|
-
const pageLayout =
|
|
95
|
+
const pageLayout = inject7(pageLayoutSymbol);
|
|
102
96
|
if (!pageLayout) {
|
|
103
97
|
throw new Error("usePageLayout() is called without provider.");
|
|
104
98
|
}
|
|
105
99
|
return pageLayout;
|
|
106
100
|
};
|
|
107
101
|
|
|
102
|
+
// src/composables/pagesData.ts
|
|
103
|
+
import { pagesData as pagesDataRaw } from "@internal/pagesData";
|
|
104
|
+
import { ref } from "vue";
|
|
105
|
+
var pagesData = ref(pagesDataRaw);
|
|
106
|
+
var usePagesData = () => pagesData;
|
|
107
|
+
|
|
108
108
|
// src/composables/routeLocale.ts
|
|
109
|
-
import { inject as
|
|
109
|
+
import { inject as inject8 } from "vue";
|
|
110
110
|
var routeLocaleSymbol = Symbol(
|
|
111
111
|
__VUEPRESS_DEV__ ? "routeLocale" : ""
|
|
112
112
|
);
|
|
113
113
|
var useRouteLocale = () => {
|
|
114
|
-
const routeLocale =
|
|
114
|
+
const routeLocale = inject8(routeLocaleSymbol);
|
|
115
115
|
if (!routeLocale) {
|
|
116
116
|
throw new Error("useRouteLocale() is called without provider.");
|
|
117
117
|
}
|
|
@@ -120,8 +120,8 @@ var useRouteLocale = () => {
|
|
|
120
120
|
|
|
121
121
|
// src/composables/siteData.ts
|
|
122
122
|
import { siteData as siteDataRaw } from "@internal/siteData";
|
|
123
|
-
import { ref as
|
|
124
|
-
var siteData =
|
|
123
|
+
import { ref as ref2 } from "vue";
|
|
124
|
+
var siteData = ref2(siteDataRaw);
|
|
125
125
|
var useSiteData = () => siteData;
|
|
126
126
|
if (__VUEPRESS_DEV__ && (import.meta.webpackHot || import.meta.hot)) {
|
|
127
127
|
__VUE_HMR_RUNTIME__.updateSiteData = (data) => {
|
|
@@ -130,12 +130,12 @@ if (__VUEPRESS_DEV__ && (import.meta.webpackHot || import.meta.hot)) {
|
|
|
130
130
|
}
|
|
131
131
|
|
|
132
132
|
// src/composables/siteLocaleData.ts
|
|
133
|
-
import { inject as
|
|
133
|
+
import { inject as inject9 } from "vue";
|
|
134
134
|
var siteLocaleDataSymbol = Symbol(
|
|
135
135
|
__VUEPRESS_DEV__ ? "siteLocaleData" : ""
|
|
136
136
|
);
|
|
137
137
|
var useSiteLocaleData = () => {
|
|
138
|
-
const siteLocaleData =
|
|
138
|
+
const siteLocaleData = inject9(siteLocaleDataSymbol);
|
|
139
139
|
if (!siteLocaleData) {
|
|
140
140
|
throw new Error("useSiteLocaleData() is called without provider.");
|
|
141
141
|
}
|
|
@@ -143,12 +143,12 @@ var useSiteLocaleData = () => {
|
|
|
143
143
|
};
|
|
144
144
|
|
|
145
145
|
// src/composables/updateHead.ts
|
|
146
|
-
import { inject as
|
|
146
|
+
import { inject as inject10 } from "vue";
|
|
147
147
|
var updateHeadSymbol = Symbol(
|
|
148
148
|
__VUEPRESS_DEV__ ? "updateHead" : ""
|
|
149
149
|
);
|
|
150
150
|
var useUpdateHead = () => {
|
|
151
|
-
const updateHead =
|
|
151
|
+
const updateHead = inject10(updateHeadSymbol);
|
|
152
152
|
if (!updateHead) {
|
|
153
153
|
throw new Error("useUpdateHead() is called without provider.");
|
|
154
154
|
}
|
|
@@ -185,13 +185,13 @@ var resolvers = reactive({
|
|
|
185
185
|
*/
|
|
186
186
|
resolvePageData: async (pageKey) => {
|
|
187
187
|
const pageDataResolver = pagesData.value[pageKey];
|
|
188
|
-
const
|
|
189
|
-
return
|
|
188
|
+
const pageData = await pageDataResolver?.();
|
|
189
|
+
return pageData ?? pageDataEmpty;
|
|
190
190
|
},
|
|
191
191
|
/**
|
|
192
192
|
* Resolve page frontmatter from page data
|
|
193
193
|
*/
|
|
194
|
-
resolvePageFrontmatter: (
|
|
194
|
+
resolvePageFrontmatter: (pageData) => pageData.frontmatter,
|
|
195
195
|
/**
|
|
196
196
|
* Merge the head config in frontmatter and site locale
|
|
197
197
|
*
|
|
@@ -252,11 +252,11 @@ var resolvers = reactive({
|
|
|
252
252
|
});
|
|
253
253
|
|
|
254
254
|
// src/components/ClientOnly.ts
|
|
255
|
-
import { defineComponent, onMounted, ref as
|
|
255
|
+
import { defineComponent, onMounted, ref as ref3 } from "vue";
|
|
256
256
|
var ClientOnly = defineComponent({
|
|
257
257
|
name: "ClientOnly",
|
|
258
258
|
setup(_, ctx) {
|
|
259
|
-
const isMounted =
|
|
259
|
+
const isMounted = ref3(false);
|
|
260
260
|
onMounted(() => {
|
|
261
261
|
isMounted.value = true;
|
|
262
262
|
});
|
|
@@ -309,10 +309,8 @@ var withBase = (url) => {
|
|
|
309
309
|
export {
|
|
310
310
|
layoutsSymbol,
|
|
311
311
|
useLayouts,
|
|
312
|
-
|
|
313
|
-
usePagesData,
|
|
312
|
+
pageDataSymbol,
|
|
314
313
|
pageDataEmpty,
|
|
315
|
-
pageData,
|
|
316
314
|
usePageData,
|
|
317
315
|
pageFrontmatterSymbol,
|
|
318
316
|
usePageFrontmatter,
|
|
@@ -324,6 +322,8 @@ export {
|
|
|
324
322
|
usePageLang,
|
|
325
323
|
pageLayoutSymbol,
|
|
326
324
|
usePageLayout,
|
|
325
|
+
pagesData,
|
|
326
|
+
usePagesData,
|
|
327
327
|
routeLocaleSymbol,
|
|
328
328
|
useRouteLocale,
|
|
329
329
|
siteData,
|
package/dist/index.d.ts
CHANGED
|
@@ -88,13 +88,13 @@ declare const useLayouts: () => LayoutsRef;
|
|
|
88
88
|
*/
|
|
89
89
|
type PageDataRef<T extends Record<any, any> = Record<never, never>> = Ref<PageData<T>>;
|
|
90
90
|
/**
|
|
91
|
-
*
|
|
91
|
+
* Injection key for page data
|
|
92
92
|
*/
|
|
93
|
-
declare const
|
|
93
|
+
declare const pageDataSymbol: InjectionKey<PageDataRef>;
|
|
94
94
|
/**
|
|
95
|
-
*
|
|
95
|
+
* Empty page data to be used as the fallback value
|
|
96
96
|
*/
|
|
97
|
-
declare const
|
|
97
|
+
declare const pageDataEmpty: PageData;
|
|
98
98
|
/**
|
|
99
99
|
* Returns the ref of the data of current page
|
|
100
100
|
*/
|
|
@@ -284,4 +284,4 @@ declare const resolvers: {
|
|
|
284
284
|
resolveSiteLocaleData: (site: SiteData, routeLocale: RouteLocale) => SiteLocaleData;
|
|
285
285
|
};
|
|
286
286
|
|
|
287
|
-
export { ClientConfig, ClientOnly, Content, CreateVueAppFunction, Layouts, LayoutsRef, PageDataRef, PageFrontmatterRef, PageHead, PageHeadRef, PageHeadTitle, PageHeadTitleRef, PageLang, PageLangRef, PageLayoutRef, PageRouteItem, PagesData, PagesDataRef, RouteLocale, RouteLocaleRef, SiteDataRef, SiteLocaleData, SiteLocaleDataRef, UpdateHead, defineClientConfig, layoutsSymbol,
|
|
287
|
+
export { ClientConfig, ClientOnly, Content, CreateVueAppFunction, Layouts, LayoutsRef, PageDataRef, PageFrontmatterRef, PageHead, PageHeadRef, PageHeadTitle, PageHeadTitleRef, PageLang, PageLangRef, PageLayoutRef, PageRouteItem, PagesData, PagesDataRef, RouteLocale, RouteLocaleRef, SiteDataRef, SiteLocaleData, SiteLocaleDataRef, UpdateHead, defineClientConfig, layoutsSymbol, pageDataEmpty, pageDataSymbol, pageFrontmatterSymbol, pageHeadSymbol, pageHeadTitleSymbol, pageLangSymbol, pageLayoutSymbol, pagesData, resolvers, routeLocaleSymbol, siteData, siteLocaleDataSymbol, updateHeadSymbol, useLayouts, usePageData, usePageFrontmatter, usePageHead, usePageHeadTitle, usePageLang, usePageLayout, usePagesData, useRouteLocale, useSiteData, useSiteLocaleData, useUpdateHead, withBase };
|
package/dist/index.js
CHANGED
|
@@ -3,8 +3,8 @@ import {
|
|
|
3
3
|
Content,
|
|
4
4
|
defineClientConfig,
|
|
5
5
|
layoutsSymbol,
|
|
6
|
-
pageData,
|
|
7
6
|
pageDataEmpty,
|
|
7
|
+
pageDataSymbol,
|
|
8
8
|
pageFrontmatterSymbol,
|
|
9
9
|
pageHeadSymbol,
|
|
10
10
|
pageHeadTitleSymbol,
|
|
@@ -29,14 +29,14 @@ import {
|
|
|
29
29
|
useSiteLocaleData,
|
|
30
30
|
useUpdateHead,
|
|
31
31
|
withBase
|
|
32
|
-
} from "./chunk-
|
|
32
|
+
} from "./chunk-WOIWBUXI.js";
|
|
33
33
|
export {
|
|
34
34
|
ClientOnly,
|
|
35
35
|
Content,
|
|
36
36
|
defineClientConfig,
|
|
37
37
|
layoutsSymbol,
|
|
38
|
-
pageData,
|
|
39
38
|
pageDataEmpty,
|
|
39
|
+
pageDataSymbol,
|
|
40
40
|
pageFrontmatterSymbol,
|
|
41
41
|
pageHeadSymbol,
|
|
42
42
|
pageHeadTitleSymbol,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vuepress/client",
|
|
3
|
-
"version": "2.0.0-beta.
|
|
3
|
+
"version": "2.0.0-beta.67",
|
|
4
4
|
"description": "Client package of VuePress",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"vuepress",
|
|
@@ -34,10 +34,10 @@
|
|
|
34
34
|
],
|
|
35
35
|
"dependencies": {
|
|
36
36
|
"@vue/devtools-api": "^6.5.0",
|
|
37
|
-
"@vueuse/core": "^10.
|
|
37
|
+
"@vueuse/core": "^10.4.1",
|
|
38
38
|
"vue": "^3.3.4",
|
|
39
39
|
"vue-router": "^4.2.4",
|
|
40
|
-
"@vuepress/shared": "2.0.0-beta.
|
|
40
|
+
"@vuepress/shared": "2.0.0-beta.67"
|
|
41
41
|
},
|
|
42
42
|
"publishConfig": {
|
|
43
43
|
"access": "public"
|