@nuxtify/pages 0.2.0 → 0.2.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.
- package/README.md +200 -203
- package/dist/module.json +1 -1
- package/dist/runtime/components/EmailSubscribeForm.vue +68 -68
- package/dist/runtime/components/FooterCallToAction.vue +29 -29
- package/dist/runtime/components/app/AppAnnouncementBar.vue +23 -23
- package/dist/runtime/components/app/AppBar.vue +108 -108
- package/dist/runtime/components/app/AppDialog.vue +31 -31
- package/dist/runtime/components/app/AppFooter.vue +131 -131
- package/dist/runtime/components/app/AppLoading.vue +10 -10
- package/dist/runtime/components/app/AppLogo.vue +12 -12
- package/dist/runtime/components/app/AppNavigationDrawer.vue +85 -85
- package/dist/runtime/components/app/AppToast.vue +9 -9
- package/dist/runtime/layouts/DefaultLayout.vue +23 -23
- package/dist/runtime/pages/DynamicSlug.vue +14 -14
- package/dist/runtime/pages/IndexPage.vue +8 -8
- package/dist/runtime/server/tsconfig.json +3 -3
- package/package.json +65 -65
|
@@ -9,89 +9,89 @@ const featuredSecondaryLink = secondaryNavLinks?.slice(0, 1)[0];
|
|
|
9
9
|
</script>
|
|
10
10
|
|
|
11
11
|
<template>
|
|
12
|
-
<v-navigation-drawer
|
|
13
|
-
v-if="smAndDown"
|
|
14
|
-
v-model="drawer"
|
|
15
|
-
location="right"
|
|
16
|
-
>
|
|
17
|
-
<nav>
|
|
18
|
-
<v-list nav>
|
|
19
|
-
<!-- Primary links -->
|
|
20
|
-
<v-list-item
|
|
21
|
-
v-for="(link, i) in primaryNavLinks"
|
|
22
|
-
:key="i"
|
|
23
|
-
:to="link.to"
|
|
24
|
-
:href="link.href"
|
|
25
|
-
:prepend-icon="link.icon"
|
|
26
|
-
color="primary"
|
|
27
|
-
:target="link.openInNew ? '_blank' : void 0"
|
|
28
|
-
:rel="link.openInNew ? 'noopener nofollow' : void 0"
|
|
29
|
-
slim
|
|
30
|
-
exact
|
|
31
|
-
>
|
|
32
|
-
<v-list-item-title class="text-subtitle-1 font-weight-bold py-1">
|
|
33
|
-
{{ link.text }}
|
|
34
|
-
<v-icon
|
|
35
|
-
v-if="link.openInNew"
|
|
36
|
-
:icon="mdiArrowTopRight"
|
|
37
|
-
size="x-small"
|
|
38
|
-
color="grey"
|
|
39
|
-
class="ml-1"
|
|
40
|
-
/>
|
|
41
|
-
</v-list-item-title>
|
|
42
|
-
</v-list-item>
|
|
43
|
-
|
|
44
|
-
<!-- Secondary links -->
|
|
45
|
-
<v-list-item
|
|
46
|
-
v-for="link in secondaryNavLinks?.slice(1).reverse()"
|
|
47
|
-
:key="link.text"
|
|
48
|
-
:to="link.to"
|
|
49
|
-
:href="link.href"
|
|
50
|
-
:prepend-icon="link.icon"
|
|
51
|
-
:target="link.openInNew ? '_blank' : void 0"
|
|
52
|
-
:rel="link.openInNew ? 'noopener nofollow' : void 0"
|
|
53
|
-
slim
|
|
54
|
-
exact
|
|
55
|
-
>
|
|
56
|
-
<v-list-item-title class="text-subtitle-1 font-weight-bold py-1">
|
|
57
|
-
{{ link.text }}
|
|
58
|
-
<v-icon
|
|
59
|
-
v-if="link.openInNew"
|
|
60
|
-
:icon="mdiArrowTopRight"
|
|
61
|
-
size="x-small"
|
|
62
|
-
color="grey"
|
|
63
|
-
class="ml-1"
|
|
64
|
-
/>
|
|
65
|
-
</v-list-item-title>
|
|
66
|
-
</v-list-item>
|
|
67
|
-
</v-list>
|
|
68
|
-
</nav>
|
|
69
|
-
|
|
70
|
-
<template #append>
|
|
71
|
-
<!-- Featured secondary link -->
|
|
72
|
-
<div
|
|
73
|
-
v-if="featuredSecondaryLink?.text"
|
|
74
|
-
class="ma-2"
|
|
75
|
-
>
|
|
76
|
-
<v-btn
|
|
77
|
-
:to="featuredSecondaryLink.to"
|
|
78
|
-
:href="featuredSecondaryLink.href"
|
|
79
|
-
:prepend-icon="featuredSecondaryLink.icon"
|
|
80
|
-
variant="flat"
|
|
81
|
-
size="large"
|
|
82
|
-
:target="featuredSecondaryLink.openInNew ? '_blank' : void 0"
|
|
83
|
-
:rel="featuredSecondaryLink.openInNew ? 'noopener nofollow' : void 0"
|
|
84
|
-
block
|
|
85
|
-
>
|
|
86
|
-
{{ featuredSecondaryLink.text }}
|
|
87
|
-
<v-icon
|
|
88
|
-
v-if="featuredSecondaryLink.openInNew"
|
|
89
|
-
:icon="mdiArrowTopRight"
|
|
90
|
-
size="small"
|
|
91
|
-
class="ml-1"
|
|
92
|
-
/>
|
|
93
|
-
</v-btn>
|
|
94
|
-
</div>
|
|
95
|
-
</template>
|
|
96
|
-
</v-navigation-drawer>
|
|
12
|
+
<v-navigation-drawer
|
|
13
|
+
v-if="smAndDown"
|
|
14
|
+
v-model="drawer"
|
|
15
|
+
location="right"
|
|
16
|
+
>
|
|
17
|
+
<nav>
|
|
18
|
+
<v-list nav>
|
|
19
|
+
<!-- Primary links -->
|
|
20
|
+
<v-list-item
|
|
21
|
+
v-for="(link, i) in primaryNavLinks"
|
|
22
|
+
:key="i"
|
|
23
|
+
:to="link.to"
|
|
24
|
+
:href="link.href"
|
|
25
|
+
:prepend-icon="link.icon"
|
|
26
|
+
color="primary"
|
|
27
|
+
:target="link.openInNew ? '_blank' : void 0"
|
|
28
|
+
:rel="link.openInNew ? 'noopener nofollow' : void 0"
|
|
29
|
+
slim
|
|
30
|
+
exact
|
|
31
|
+
>
|
|
32
|
+
<v-list-item-title class="text-subtitle-1 font-weight-bold py-1">
|
|
33
|
+
{{ link.text }}
|
|
34
|
+
<v-icon
|
|
35
|
+
v-if="link.openInNew"
|
|
36
|
+
:icon="mdiArrowTopRight"
|
|
37
|
+
size="x-small"
|
|
38
|
+
color="grey"
|
|
39
|
+
class="ml-1"
|
|
40
|
+
/>
|
|
41
|
+
</v-list-item-title>
|
|
42
|
+
</v-list-item>
|
|
43
|
+
|
|
44
|
+
<!-- Secondary links -->
|
|
45
|
+
<v-list-item
|
|
46
|
+
v-for="link in secondaryNavLinks?.slice(1).reverse()"
|
|
47
|
+
:key="link.text"
|
|
48
|
+
:to="link.to"
|
|
49
|
+
:href="link.href"
|
|
50
|
+
:prepend-icon="link.icon"
|
|
51
|
+
:target="link.openInNew ? '_blank' : void 0"
|
|
52
|
+
:rel="link.openInNew ? 'noopener nofollow' : void 0"
|
|
53
|
+
slim
|
|
54
|
+
exact
|
|
55
|
+
>
|
|
56
|
+
<v-list-item-title class="text-subtitle-1 font-weight-bold py-1">
|
|
57
|
+
{{ link.text }}
|
|
58
|
+
<v-icon
|
|
59
|
+
v-if="link.openInNew"
|
|
60
|
+
:icon="mdiArrowTopRight"
|
|
61
|
+
size="x-small"
|
|
62
|
+
color="grey"
|
|
63
|
+
class="ml-1"
|
|
64
|
+
/>
|
|
65
|
+
</v-list-item-title>
|
|
66
|
+
</v-list-item>
|
|
67
|
+
</v-list>
|
|
68
|
+
</nav>
|
|
69
|
+
|
|
70
|
+
<template #append>
|
|
71
|
+
<!-- Featured secondary link -->
|
|
72
|
+
<div
|
|
73
|
+
v-if="featuredSecondaryLink?.text"
|
|
74
|
+
class="ma-2"
|
|
75
|
+
>
|
|
76
|
+
<v-btn
|
|
77
|
+
:to="featuredSecondaryLink.to"
|
|
78
|
+
:href="featuredSecondaryLink.href"
|
|
79
|
+
:prepend-icon="featuredSecondaryLink.icon"
|
|
80
|
+
variant="flat"
|
|
81
|
+
size="large"
|
|
82
|
+
:target="featuredSecondaryLink.openInNew ? '_blank' : void 0"
|
|
83
|
+
:rel="featuredSecondaryLink.openInNew ? 'noopener nofollow' : void 0"
|
|
84
|
+
block
|
|
85
|
+
>
|
|
86
|
+
{{ featuredSecondaryLink.text }}
|
|
87
|
+
<v-icon
|
|
88
|
+
v-if="featuredSecondaryLink.openInNew"
|
|
89
|
+
:icon="mdiArrowTopRight"
|
|
90
|
+
size="small"
|
|
91
|
+
class="ml-1"
|
|
92
|
+
/>
|
|
93
|
+
</v-btn>
|
|
94
|
+
</div>
|
|
95
|
+
</template>
|
|
96
|
+
</v-navigation-drawer>
|
|
97
97
|
</template>
|
|
@@ -4,13 +4,13 @@ const toast = useToast();
|
|
|
4
4
|
</script>
|
|
5
5
|
|
|
6
6
|
<template>
|
|
7
|
-
<v-snackbar
|
|
8
|
-
v-model="toast.show"
|
|
9
|
-
:timeout="5e3"
|
|
10
|
-
color="info"
|
|
11
|
-
:min-width="0"
|
|
12
|
-
close-on-content-click
|
|
13
|
-
>
|
|
14
|
-
{{ toast.message }}
|
|
15
|
-
</v-snackbar>
|
|
7
|
+
<v-snackbar
|
|
8
|
+
v-model="toast.show"
|
|
9
|
+
:timeout="5e3"
|
|
10
|
+
color="info"
|
|
11
|
+
:min-width="0"
|
|
12
|
+
close-on-content-click
|
|
13
|
+
>
|
|
14
|
+
{{ toast.message }}
|
|
15
|
+
</v-snackbar>
|
|
16
16
|
</template>
|
|
@@ -5,27 +5,27 @@ const { mdAndUp } = useDisplay();
|
|
|
5
5
|
</script>
|
|
6
6
|
|
|
7
7
|
<template>
|
|
8
|
-
<v-app>
|
|
9
|
-
<!-- Accessibility -->
|
|
10
|
-
<NuxtRouteAnnouncer />
|
|
11
|
-
|
|
12
|
-
<AppBar class="d-print-none" />
|
|
13
|
-
|
|
14
|
-
<AppNavigationDrawer class="d-print-none" />
|
|
15
|
-
|
|
16
|
-
<AppAnnouncementBar
|
|
17
|
-
v-if="nuxtifyConfig.announcement?.show"
|
|
18
|
-
class="d-print-none"
|
|
19
|
-
/>
|
|
20
|
-
|
|
21
|
-
<v-main :min-height="mdAndUp ? 800 : 550">
|
|
22
|
-
<slot />
|
|
23
|
-
</v-main>
|
|
24
|
-
|
|
25
|
-
<AppToast />
|
|
26
|
-
|
|
27
|
-
<v-footer class="bg-primary justify-center mt-8">
|
|
28
|
-
<AppFooter />
|
|
29
|
-
</v-footer>
|
|
30
|
-
</v-app>
|
|
8
|
+
<v-app>
|
|
9
|
+
<!-- Accessibility -->
|
|
10
|
+
<NuxtRouteAnnouncer />
|
|
11
|
+
|
|
12
|
+
<AppBar class="d-print-none" />
|
|
13
|
+
|
|
14
|
+
<AppNavigationDrawer class="d-print-none" />
|
|
15
|
+
|
|
16
|
+
<AppAnnouncementBar
|
|
17
|
+
v-if="nuxtifyConfig.announcement?.show"
|
|
18
|
+
class="d-print-none"
|
|
19
|
+
/>
|
|
20
|
+
|
|
21
|
+
<v-main :min-height="mdAndUp ? 800 : 550">
|
|
22
|
+
<slot />
|
|
23
|
+
</v-main>
|
|
24
|
+
|
|
25
|
+
<AppToast />
|
|
26
|
+
|
|
27
|
+
<v-footer class="bg-primary justify-center mt-8">
|
|
28
|
+
<AppFooter />
|
|
29
|
+
</v-footer>
|
|
30
|
+
</v-app>
|
|
31
31
|
</template>
|
|
@@ -4,18 +4,18 @@ const route = useRoute();
|
|
|
4
4
|
</script>
|
|
5
5
|
|
|
6
6
|
<template>
|
|
7
|
-
<v-container>
|
|
8
|
-
<v-row justify="center">
|
|
9
|
-
<v-col
|
|
10
|
-
cols="12"
|
|
11
|
-
sm="10"
|
|
12
|
-
lg="8"
|
|
13
|
-
xl="6"
|
|
14
|
-
>
|
|
15
|
-
<h1 class="text-h5 mt-4">
|
|
16
|
-
{{ capitalizeFirstLetter(route.params.slug) }}
|
|
17
|
-
</h1>
|
|
18
|
-
</v-col>
|
|
19
|
-
</v-row>
|
|
20
|
-
</v-container>
|
|
7
|
+
<v-container>
|
|
8
|
+
<v-row justify="center">
|
|
9
|
+
<v-col
|
|
10
|
+
cols="12"
|
|
11
|
+
sm="10"
|
|
12
|
+
lg="8"
|
|
13
|
+
xl="6"
|
|
14
|
+
>
|
|
15
|
+
<h1 class="text-h5 mt-4">
|
|
16
|
+
{{ capitalizeFirstLetter(route.params.slug) }}
|
|
17
|
+
</h1>
|
|
18
|
+
</v-col>
|
|
19
|
+
</v-row>
|
|
20
|
+
</v-container>
|
|
21
21
|
</template>
|
|
@@ -8,12 +8,12 @@ const nuxtifyConfig = useNuxtifyConfig();
|
|
|
8
8
|
</script>
|
|
9
9
|
|
|
10
10
|
<template>
|
|
11
|
-
<v-container class="text-center">
|
|
12
|
-
<ClientOnly>
|
|
13
|
-
<h1>{{ nuxtifyConfig.brand?.name }} Home</h1>
|
|
14
|
-
<template #fallback>
|
|
15
|
-
<AppLoading />
|
|
16
|
-
</template>
|
|
17
|
-
</ClientOnly>
|
|
18
|
-
</v-container>
|
|
11
|
+
<v-container class="text-center">
|
|
12
|
+
<ClientOnly>
|
|
13
|
+
<h1>{{ nuxtifyConfig.brand?.name }} Home</h1>
|
|
14
|
+
<template #fallback>
|
|
15
|
+
<AppLoading />
|
|
16
|
+
</template>
|
|
17
|
+
</ClientOnly>
|
|
18
|
+
</v-container>
|
|
19
19
|
</template>
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
{
|
|
2
|
-
"extends": "../../../.nuxt/tsconfig.server.json",
|
|
3
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"extends": "../../../.nuxt/tsconfig.server.json",
|
|
3
|
+
}
|
package/package.json
CHANGED
|
@@ -1,65 +1,65 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@nuxtify/pages",
|
|
3
|
-
"version": "0.2.
|
|
4
|
-
"description": "Nuxtify pages module powered by Nuxt and Vuetify.",
|
|
5
|
-
"license": "MIT",
|
|
6
|
-
"homepage": "https://nuxtify.dev/",
|
|
7
|
-
"author": "Nuxtify.dev <hello@nuxtify.dev>",
|
|
8
|
-
"funding": "https://github.com/sponsors/davidstackio",
|
|
9
|
-
"repository": {
|
|
10
|
-
"type": "git",
|
|
11
|
-
"url": "git+https://github.com/nuxtify-dev/pages"
|
|
12
|
-
},
|
|
13
|
-
"bugs": {
|
|
14
|
-
"url": "https://github.com/nuxtify-dev/pages/issues"
|
|
15
|
-
},
|
|
16
|
-
"type": "module",
|
|
17
|
-
"exports": {
|
|
18
|
-
".": {
|
|
19
|
-
"types": "./dist/types.d.mts",
|
|
20
|
-
"import": "./dist/module.mjs"
|
|
21
|
-
}
|
|
22
|
-
},
|
|
23
|
-
"main": "./dist/module.mjs",
|
|
24
|
-
"typesVersions": {
|
|
25
|
-
"*": {
|
|
26
|
-
".": [
|
|
27
|
-
"./dist/types.d.mts"
|
|
28
|
-
]
|
|
29
|
-
}
|
|
30
|
-
},
|
|
31
|
-
"files": [
|
|
32
|
-
"dist"
|
|
33
|
-
],
|
|
34
|
-
"scripts": {
|
|
35
|
-
"prepack": "nuxt-module-build build",
|
|
36
|
-
"dev": "nuxi dev playground",
|
|
37
|
-
"dev:build": "nuxi build playground",
|
|
38
|
-
"dev:prepare": "nuxt-module-build build --stub && nuxt-module-build prepare && nuxi prepare playground",
|
|
39
|
-
"release": "npm run lint && npm run test && npm run prepack && changelogen --release && npm publish && git push --follow-tags",
|
|
40
|
-
"lint": "eslint .",
|
|
41
|
-
"test": "vitest run",
|
|
42
|
-
"test:watch": "vitest watch",
|
|
43
|
-
"test:types": "vue-tsc --noEmit && cd playground && vue-tsc --noEmit"
|
|
44
|
-
},
|
|
45
|
-
"dependencies": {
|
|
46
|
-
"@mdi/js": "^7.4.47",
|
|
47
|
-
"defu": "^6.1.4",
|
|
48
|
-
"vuetify-nuxt-module": "^0.18.6"
|
|
49
|
-
},
|
|
50
|
-
"devDependencies": {
|
|
51
|
-
"@nuxt/devtools": "^2.4.0",
|
|
52
|
-
"@nuxt/eslint-config": "^1.3.0",
|
|
53
|
-
"@nuxt/kit": "^3.17.
|
|
54
|
-
"@nuxt/module-builder": "^1.0.1",
|
|
55
|
-
"@nuxt/schema": "^3.17.
|
|
56
|
-
"@nuxt/test-utils": "^3.
|
|
57
|
-
"@types/node": "^20.17.
|
|
58
|
-
"changelogen": "^0.6.1",
|
|
59
|
-
"eslint": "^9.
|
|
60
|
-
"nuxt": "^3.17.
|
|
61
|
-
"typescript": "~5.8.2",
|
|
62
|
-
"vitest": "^3.1.
|
|
63
|
-
"vue-tsc": "^2.2.10"
|
|
64
|
-
}
|
|
65
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "@nuxtify/pages",
|
|
3
|
+
"version": "0.2.1",
|
|
4
|
+
"description": "Nuxtify pages module powered by Nuxt and Vuetify.",
|
|
5
|
+
"license": "MIT",
|
|
6
|
+
"homepage": "https://nuxtify.dev/",
|
|
7
|
+
"author": "Nuxtify.dev <hello@nuxtify.dev>",
|
|
8
|
+
"funding": "https://github.com/sponsors/davidstackio",
|
|
9
|
+
"repository": {
|
|
10
|
+
"type": "git",
|
|
11
|
+
"url": "git+https://github.com/nuxtify-dev/pages"
|
|
12
|
+
},
|
|
13
|
+
"bugs": {
|
|
14
|
+
"url": "https://github.com/nuxtify-dev/pages/issues"
|
|
15
|
+
},
|
|
16
|
+
"type": "module",
|
|
17
|
+
"exports": {
|
|
18
|
+
".": {
|
|
19
|
+
"types": "./dist/types.d.mts",
|
|
20
|
+
"import": "./dist/module.mjs"
|
|
21
|
+
}
|
|
22
|
+
},
|
|
23
|
+
"main": "./dist/module.mjs",
|
|
24
|
+
"typesVersions": {
|
|
25
|
+
"*": {
|
|
26
|
+
".": [
|
|
27
|
+
"./dist/types.d.mts"
|
|
28
|
+
]
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
"files": [
|
|
32
|
+
"dist"
|
|
33
|
+
],
|
|
34
|
+
"scripts": {
|
|
35
|
+
"prepack": "nuxt-module-build build",
|
|
36
|
+
"dev": "nuxi dev playground",
|
|
37
|
+
"dev:build": "nuxi build playground",
|
|
38
|
+
"dev:prepare": "nuxt-module-build build --stub && nuxt-module-build prepare && nuxi prepare playground",
|
|
39
|
+
"release": "npm run lint && npm run test && npm run prepack && changelogen --release && npm publish && git push --follow-tags",
|
|
40
|
+
"lint": "eslint .",
|
|
41
|
+
"test": "vitest run",
|
|
42
|
+
"test:watch": "vitest watch",
|
|
43
|
+
"test:types": "vue-tsc --noEmit && cd playground && vue-tsc --noEmit"
|
|
44
|
+
},
|
|
45
|
+
"dependencies": {
|
|
46
|
+
"@mdi/js": "^7.4.47",
|
|
47
|
+
"defu": "^6.1.4",
|
|
48
|
+
"vuetify-nuxt-module": "^0.18.6"
|
|
49
|
+
},
|
|
50
|
+
"devDependencies": {
|
|
51
|
+
"@nuxt/devtools": "^2.4.0",
|
|
52
|
+
"@nuxt/eslint-config": "^1.3.0",
|
|
53
|
+
"@nuxt/kit": "^3.17.2",
|
|
54
|
+
"@nuxt/module-builder": "^1.0.1",
|
|
55
|
+
"@nuxt/schema": "^3.17.2",
|
|
56
|
+
"@nuxt/test-utils": "^3.18.0",
|
|
57
|
+
"@types/node": "^20.17.46",
|
|
58
|
+
"changelogen": "^0.6.1",
|
|
59
|
+
"eslint": "^9.26.0",
|
|
60
|
+
"nuxt": "^3.17.2",
|
|
61
|
+
"typescript": "~5.8.2",
|
|
62
|
+
"vitest": "^3.1.3",
|
|
63
|
+
"vue-tsc": "^2.2.10"
|
|
64
|
+
}
|
|
65
|
+
}
|