create-vuetify 2.3.0 → 2.4.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.
Files changed (42) hide show
  1. package/dist/index.mjs +1110 -127
  2. package/package.json +20 -25
  3. package/template/javascript/base/eslint.config.js +1 -23
  4. package/template/javascript/base/package.json +5 -9
  5. package/template/javascript/base/src/components/HelloWorld.vue +42 -109
  6. package/template/javascript/base/src/router/index.js +0 -1
  7. package/template/javascript/base/vite.config.mjs +14 -2
  8. package/template/javascript/default/package.json +10 -10
  9. package/template/javascript/default/src/components/AppFooter.vue +6 -3
  10. package/template/javascript/default/src/components/HelloWorld.vue +41 -108
  11. package/template/javascript/default/vite.config.mjs +8 -2
  12. package/template/javascript/essentials/_eslintrc-auto-import.json +11 -1
  13. package/template/javascript/essentials/package.json +3 -3
  14. package/template/javascript/essentials/src/App.vue +9 -0
  15. package/template/javascript/essentials/src/layouts/README.md +1 -1
  16. package/template/javascript/essentials/src/layouts/default.vue +4 -6
  17. package/template/javascript/essentials/vite.config.mjs +20 -4
  18. package/template/typescript/base/eslint.config.js +1 -36
  19. package/template/typescript/base/package.json +4 -9
  20. package/template/typescript/base/src/components/HelloWorld.vue +42 -109
  21. package/template/typescript/base/vite.config.mts +13 -1
  22. package/template/typescript/default/README.md +1 -1
  23. package/template/typescript/default/package.json +12 -14
  24. package/template/typescript/default/src/components/HelloWorld.vue +41 -108
  25. package/template/typescript/default/vite.config.mts +6 -0
  26. package/template/typescript/essentials/_eslintrc-auto-import.json +13 -0
  27. package/template/typescript/essentials/env.d.ts +1 -1
  28. package/template/typescript/essentials/package.json +3 -3
  29. package/template/typescript/essentials/src/App.vue +9 -0
  30. package/template/typescript/essentials/src/auto-imports.d.ts +16 -66
  31. package/template/typescript/essentials/src/components/AppFooter.vue +6 -3
  32. package/template/typescript/essentials/src/layouts/README.md +1 -1
  33. package/template/typescript/essentials/src/layouts/default.vue +4 -6
  34. package/template/typescript/essentials/vite.config.mts +18 -4
  35. package/template/typescript/nuxt/assets/logo.png +0 -0
  36. package/template/typescript/nuxt/assets/logo.svg +6 -0
  37. package/template/typescript/nuxt/components/AppFooter.vue +38 -35
  38. package/template/typescript/nuxt/components/HelloWorld.vue +44 -107
  39. package/template/typescript/nuxt/modules/vuetify.ts +35 -10
  40. package/template/typescript/nuxt/pages/index.vue +0 -1
  41. package/template/typescript/nuxt/plugins/vuetify-nuxt.ts +2 -2
  42. package/template/typescript/nuxt/plugins/vuetify.ts +1 -1
@@ -1,23 +1,17 @@
1
1
  <template>
2
- <v-container class="fill-height">
3
- <v-responsive
4
- class="align-centerfill-height mx-auto"
5
- max-width="900"
6
- >
2
+ <v-container class="fill-height" max-width="900">
3
+ <div>
7
4
  <v-img
8
5
  class="mb-4"
9
6
  height="150"
10
7
  src="@/assets/logo.png"
11
8
  />
12
9
 
13
- <div class="text-center">
10
+ <div class="mb-8 text-center">
14
11
  <div class="text-body-2 font-weight-light mb-n1">Welcome to</div>
15
-
16
12
  <h1 class="text-h2 font-weight-bold">Vuetify</h1>
17
13
  </div>
18
14
 
19
- <div class="py-4" />
20
-
21
15
  <v-row>
22
16
  <v-col cols="12">
23
17
  <v-card
@@ -26,14 +20,16 @@
26
20
  image="https://cdn.vuetifyjs.com/docs/images/one/create/feature.png"
27
21
  prepend-icon="mdi-rocket-launch-outline"
28
22
  rounded="lg"
29
- variant="outlined"
23
+ variant="tonal"
30
24
  >
31
25
  <template #image>
32
26
  <v-img position="top right" />
33
27
  </template>
34
28
 
35
29
  <template #title>
36
- <h2 class="text-h5 font-weight-bold">Get started</h2>
30
+ <h2 class="text-h5 font-weight-bold">
31
+ Get started
32
+ </h2>
37
33
  </template>
38
34
 
39
35
  <template #subtitle>
@@ -41,117 +37,54 @@
41
37
  Change this page by updating <v-kbd>{{ `<HelloWorld />` }}</v-kbd> in <v-kbd>components/HelloWorld.vue</v-kbd>.
42
38
  </div>
43
39
  </template>
44
-
45
- <v-overlay
46
- opacity=".12"
47
- scrim="primary"
48
- contained
49
- model-value
50
- persistent
51
- />
52
- </v-card>
53
- </v-col>
54
-
55
- <v-col cols="6">
56
- <v-card
57
- append-icon="mdi-open-in-new"
58
- class="py-4"
59
- color="surface-variant"
60
- href="https://vuetifyjs.com/"
61
- prepend-icon="mdi-text-box-outline"
62
- rel="noopener noreferrer"
63
- rounded="lg"
64
- subtitle="Learn about all things Vuetify in our documentation."
65
- target="_blank"
66
- title="Documentation"
67
- variant="text"
68
- >
69
- <v-overlay
70
- opacity=".06"
71
- scrim="primary"
72
- contained
73
- model-value
74
- persistent
75
- />
76
- </v-card>
77
- </v-col>
78
-
79
- <v-col cols="6">
80
- <v-card
81
- append-icon="mdi-open-in-new"
82
- class="py-4"
83
- color="surface-variant"
84
- href="https://vuetifyjs.com/introduction/why-vuetify/#feature-guides"
85
- prepend-icon="mdi-star-circle-outline"
86
- rel="noopener noreferrer"
87
- rounded="lg"
88
- subtitle="Explore available framework Features."
89
- target="_blank"
90
- title="Features"
91
- variant="text"
92
- >
93
- <v-overlay
94
- opacity=".06"
95
- scrim="primary"
96
- contained
97
- model-value
98
- persistent
99
- />
100
40
  </v-card>
101
41
  </v-col>
102
42
 
103
- <v-col cols="6">
43
+ <v-col v-for="link in links" :key="link.href" cols="6">
104
44
  <v-card
105
45
  append-icon="mdi-open-in-new"
106
46
  class="py-4"
107
47
  color="surface-variant"
108
- href="https://vuetifyjs.com/components/all"
109
- prepend-icon="mdi-widgets-outline"
48
+ :href="link.href"
49
+ :prepend-icon="link.icon"
110
50
  rel="noopener noreferrer"
111
51
  rounded="lg"
112
- subtitle="Discover components in the API Explorer."
52
+ :subtitle="link.subtitle"
113
53
  target="_blank"
114
- title="Components"
115
- variant="text"
116
- >
117
- <v-overlay
118
- opacity=".06"
119
- scrim="primary"
120
- contained
121
- model-value
122
- persistent
123
- />
124
- </v-card>
125
- </v-col>
126
-
127
- <v-col cols="6">
128
- <v-card
129
- append-icon="mdi-open-in-new"
130
- class="py-4"
131
- color="surface-variant"
132
- href="https://discord.vuetifyjs.com"
133
- prepend-icon="mdi-account-group-outline"
134
- rel="noopener noreferrer"
135
- rounded="lg"
136
- subtitle="Connect with Vuetify developers."
137
- target="_blank"
138
- title="Community"
139
- variant="text"
140
- >
141
- <v-overlay
142
- opacity=".06"
143
- scrim="primary"
144
- contained
145
- model-value
146
- persistent
147
- />
148
- </v-card>
54
+ :title="link.title"
55
+ variant="tonal"
56
+ />
149
57
  </v-col>
150
58
  </v-row>
151
- </v-responsive>
59
+ </div>
152
60
  </v-container>
153
61
  </template>
154
62
 
155
63
  <script setup lang="ts">
156
- //
64
+ const links = [
65
+ {
66
+ href: 'https://vuetifyjs.com/',
67
+ icon: 'mdi-text-box-outline',
68
+ subtitle: 'Learn about all things Vuetify in our documentation.',
69
+ title: 'Documentation',
70
+ },
71
+ {
72
+ href: 'https://vuetifyjs.com/introduction/why-vuetify/#feature-guides',
73
+ icon: 'mdi-star-circle-outline',
74
+ subtitle: 'Explore available framework Features.',
75
+ title: 'Features',
76
+ },
77
+ {
78
+ href: 'https://vuetifyjs.com/components/all',
79
+ icon: 'mdi-widgets-outline',
80
+ subtitle: 'Discover components in the API Explorer.',
81
+ title: 'Components',
82
+ },
83
+ {
84
+ href: 'https://discord.vuetifyjs.com',
85
+ icon: 'mdi-account-group-outline',
86
+ subtitle: 'Connect with Vuetify developers.',
87
+ title: 'Community',
88
+ },
89
+ ]
157
90
  </script>
@@ -26,6 +26,9 @@ export default defineConfig({
26
26
  },
27
27
  }),
28
28
  ],
29
+ optimizeDeps: {
30
+ exclude: ['vuetify'],
31
+ },
29
32
  define: { 'process.env': {} },
30
33
  resolve: {
31
34
  alias: {
@@ -49,6 +52,9 @@ export default defineConfig({
49
52
  sass: {
50
53
  api: 'modern-compiler',
51
54
  },
55
+ scss: {
56
+ api: 'modern-compiler',
57
+ },
52
58
  },
53
59
  },
54
60
  })
@@ -3,13 +3,18 @@
3
3
  "Component": true,
4
4
  "ComponentPublicInstance": true,
5
5
  "ComputedRef": true,
6
+ "DirectiveBinding": true,
6
7
  "EffectScope": true,
7
8
  "ExtractDefaultPropTypes": true,
8
9
  "ExtractPropTypes": true,
9
10
  "ExtractPublicPropTypes": true,
10
11
  "InjectionKey": true,
12
+ "MaybeRef": true,
13
+ "MaybeRefOrGetter": true,
11
14
  "PropType": true,
12
15
  "Ref": true,
16
+ "Slot": true,
17
+ "Slots": true,
13
18
  "VNode": true,
14
19
  "WritableComputedRef": true,
15
20
  "computed": true,
@@ -17,6 +22,7 @@
17
22
  "customRef": true,
18
23
  "defineAsyncComponent": true,
19
24
  "defineComponent": true,
25
+ "defineStore": true,
20
26
  "effectScope": true,
21
27
  "getCurrentInstance": true,
22
28
  "getCurrentScope": true,
@@ -30,6 +36,8 @@
30
36
  "nextTick": true,
31
37
  "onActivated": true,
32
38
  "onBeforeMount": true,
39
+ "onBeforeRouteLeave": true,
40
+ "onBeforeRouteUpdate": true,
33
41
  "onBeforeUnmount": true,
34
42
  "onBeforeUpdate": true,
35
43
  "onDeactivated": true,
@@ -41,6 +49,7 @@
41
49
  "onServerPrefetch": true,
42
50
  "onUnmounted": true,
43
51
  "onUpdated": true,
52
+ "onWatcherCleanup": true,
44
53
  "provide": true,
45
54
  "reactive": true,
46
55
  "readonly": true,
@@ -49,6 +58,7 @@
49
58
  "shallowReactive": true,
50
59
  "shallowReadonly": true,
51
60
  "shallowRef": true,
61
+ "storeToRefs": true,
52
62
  "toRaw": true,
53
63
  "toRef": true,
54
64
  "toRefs": true,
@@ -58,9 +68,12 @@
58
68
  "useAttrs": true,
59
69
  "useCssModule": true,
60
70
  "useCssVars": true,
71
+ "useId": true,
72
+ "useModel": true,
61
73
  "useRoute": true,
62
74
  "useRouter": true,
63
75
  "useSlots": true,
76
+ "useTemplateRef": true,
64
77
  "watch": true,
65
78
  "watchEffect": true,
66
79
  "watchPostEffect": true,
@@ -1,3 +1,3 @@
1
1
  /// <reference types="vite/client" />
2
2
  /// <reference types="unplugin-vue-router/client" />
3
- /// <reference types="vite-plugin-vue-layouts/client" />
3
+ /// <reference types="vite-plugin-vue-layouts-next/client" />
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "devDependencies": {
3
- "pinia" : "^2.1.7",
4
- "unplugin-auto-import": "^0.17.6",
5
- "vite-plugin-vue-layouts": "^0.11.0"
3
+ "pinia" : "^3.0.1",
4
+ "unplugin-auto-import": "^19.1.1",
5
+ "vite-plugin-vue-layouts-next": "^0.0.8"
6
6
  }
7
7
  }
@@ -0,0 +1,9 @@
1
+ <template>
2
+ <v-app>
3
+ <router-view />
4
+ </v-app>
5
+ </template>
6
+
7
+ <script lang="ts" setup>
8
+ //
9
+ </script>
@@ -3,6 +3,7 @@
3
3
  // @ts-nocheck
4
4
  // noinspection JSUnusedGlobalSymbols
5
5
  // Generated by unplugin-auto-import
6
+ // biome-ignore lint: disable
6
7
  export {}
7
8
  declare global {
8
9
  const EffectScope: typeof import('vue')['EffectScope']
@@ -11,6 +12,7 @@ declare global {
11
12
  const customRef: typeof import('vue')['customRef']
12
13
  const defineAsyncComponent: typeof import('vue')['defineAsyncComponent']
13
14
  const defineComponent: typeof import('vue')['defineComponent']
15
+ const defineStore: typeof import('pinia')['defineStore']
14
16
  const effectScope: typeof import('vue')['effectScope']
15
17
  const getCurrentInstance: typeof import('vue')['getCurrentInstance']
16
18
  const getCurrentScope: typeof import('vue')['getCurrentScope']
@@ -37,6 +39,7 @@ declare global {
37
39
  const onServerPrefetch: typeof import('vue')['onServerPrefetch']
38
40
  const onUnmounted: typeof import('vue')['onUnmounted']
39
41
  const onUpdated: typeof import('vue')['onUpdated']
42
+ const onWatcherCleanup: typeof import('vue')['onWatcherCleanup']
40
43
  const provide: typeof import('vue')['provide']
41
44
  const reactive: typeof import('vue')['reactive']
42
45
  const readonly: typeof import('vue')['readonly']
@@ -45,6 +48,7 @@ declare global {
45
48
  const shallowReactive: typeof import('vue')['shallowReactive']
46
49
  const shallowReadonly: typeof import('vue')['shallowReadonly']
47
50
  const shallowRef: typeof import('vue')['shallowRef']
51
+ const storeToRefs: typeof import('pinia')['storeToRefs']
48
52
  const toRaw: typeof import('vue')['toRaw']
49
53
  const toRef: typeof import('vue')['toRef']
50
54
  const toRefs: typeof import('vue')['toRefs']
@@ -54,10 +58,12 @@ declare global {
54
58
  const useAttrs: typeof import('vue')['useAttrs']
55
59
  const useCssModule: typeof import('vue')['useCssModule']
56
60
  const useCssVars: typeof import('vue')['useCssVars']
57
- const useLink: typeof import('vue-router')['useLink']
61
+ const useId: typeof import('vue')['useId']
62
+ const useModel: typeof import('vue')['useModel']
58
63
  const useRoute: typeof import('vue-router')['useRoute']
59
64
  const useRouter: typeof import('vue-router')['useRouter']
60
65
  const useSlots: typeof import('vue')['useSlots']
66
+ const useTemplateRef: typeof import('vue')['useTemplateRef']
61
67
  const watch: typeof import('vue')['watch']
62
68
  const watchEffect: typeof import('vue')['watchEffect']
63
69
  const watchPostEffect: typeof import('vue')['watchPostEffect']
@@ -66,9 +72,10 @@ declare global {
66
72
  // for type re-export
67
73
  declare global {
68
74
  // @ts-ignore
69
- export type { Component, ComponentPublicInstance, ComputedRef, ExtractDefaultPropTypes, ExtractPropTypes, ExtractPublicPropTypes, InjectionKey, PropType, Ref, VNode, WritableComputedRef } from 'vue'
75
+ export type { Component, Slot, Slots, ComponentPublicInstance, ComputedRef, DirectiveBinding, ExtractDefaultPropTypes, ExtractPropTypes, ExtractPublicPropTypes, InjectionKey, PropType, Ref, MaybeRef, MaybeRefOrGetter, VNode, WritableComputedRef } from 'vue'
70
76
  import('vue')
71
77
  }
78
+
72
79
  // for vue template auto import
73
80
  import { UnwrapRef } from 'vue'
74
81
  declare module 'vue' {
@@ -80,6 +87,7 @@ declare module 'vue' {
80
87
  readonly customRef: UnwrapRef<typeof import('vue')['customRef']>
81
88
  readonly defineAsyncComponent: UnwrapRef<typeof import('vue')['defineAsyncComponent']>
82
89
  readonly defineComponent: UnwrapRef<typeof import('vue')['defineComponent']>
90
+ readonly defineStore: UnwrapRef<typeof import('pinia')['defineStore']>
83
91
  readonly effectScope: UnwrapRef<typeof import('vue')['effectScope']>
84
92
  readonly getCurrentInstance: UnwrapRef<typeof import('vue')['getCurrentInstance']>
85
93
  readonly getCurrentScope: UnwrapRef<typeof import('vue')['getCurrentScope']>
@@ -106,6 +114,7 @@ declare module 'vue' {
106
114
  readonly onServerPrefetch: UnwrapRef<typeof import('vue')['onServerPrefetch']>
107
115
  readonly onUnmounted: UnwrapRef<typeof import('vue')['onUnmounted']>
108
116
  readonly onUpdated: UnwrapRef<typeof import('vue')['onUpdated']>
117
+ readonly onWatcherCleanup: UnwrapRef<typeof import('vue')['onWatcherCleanup']>
109
118
  readonly provide: UnwrapRef<typeof import('vue')['provide']>
110
119
  readonly reactive: UnwrapRef<typeof import('vue')['reactive']>
111
120
  readonly readonly: UnwrapRef<typeof import('vue')['readonly']>
@@ -114,6 +123,7 @@ declare module 'vue' {
114
123
  readonly shallowReactive: UnwrapRef<typeof import('vue')['shallowReactive']>
115
124
  readonly shallowReadonly: UnwrapRef<typeof import('vue')['shallowReadonly']>
116
125
  readonly shallowRef: UnwrapRef<typeof import('vue')['shallowRef']>
126
+ readonly storeToRefs: UnwrapRef<typeof import('pinia')['storeToRefs']>
117
127
  readonly toRaw: UnwrapRef<typeof import('vue')['toRaw']>
118
128
  readonly toRef: UnwrapRef<typeof import('vue')['toRef']>
119
129
  readonly toRefs: UnwrapRef<typeof import('vue')['toRefs']>
@@ -123,75 +133,15 @@ declare module 'vue' {
123
133
  readonly useAttrs: UnwrapRef<typeof import('vue')['useAttrs']>
124
134
  readonly useCssModule: UnwrapRef<typeof import('vue')['useCssModule']>
125
135
  readonly useCssVars: UnwrapRef<typeof import('vue')['useCssVars']>
126
- readonly useLink: UnwrapRef<typeof import('vue-router')['useLink']>
136
+ readonly useId: UnwrapRef<typeof import('vue')['useId']>
137
+ readonly useModel: UnwrapRef<typeof import('vue')['useModel']>
127
138
  readonly useRoute: UnwrapRef<typeof import('vue-router')['useRoute']>
128
139
  readonly useRouter: UnwrapRef<typeof import('vue-router')['useRouter']>
129
140
  readonly useSlots: UnwrapRef<typeof import('vue')['useSlots']>
141
+ readonly useTemplateRef: UnwrapRef<typeof import('vue')['useTemplateRef']>
130
142
  readonly watch: UnwrapRef<typeof import('vue')['watch']>
131
143
  readonly watchEffect: UnwrapRef<typeof import('vue')['watchEffect']>
132
144
  readonly watchPostEffect: UnwrapRef<typeof import('vue')['watchPostEffect']>
133
145
  readonly watchSyncEffect: UnwrapRef<typeof import('vue')['watchSyncEffect']>
134
146
  }
135
- }
136
- declare module '@vue/runtime-core' {
137
- interface GlobalComponents {}
138
- interface ComponentCustomProperties {
139
- readonly EffectScope: UnwrapRef<typeof import('vue')['EffectScope']>
140
- readonly computed: UnwrapRef<typeof import('vue')['computed']>
141
- readonly createApp: UnwrapRef<typeof import('vue')['createApp']>
142
- readonly customRef: UnwrapRef<typeof import('vue')['customRef']>
143
- readonly defineAsyncComponent: UnwrapRef<typeof import('vue')['defineAsyncComponent']>
144
- readonly defineComponent: UnwrapRef<typeof import('vue')['defineComponent']>
145
- readonly effectScope: UnwrapRef<typeof import('vue')['effectScope']>
146
- readonly getCurrentInstance: UnwrapRef<typeof import('vue')['getCurrentInstance']>
147
- readonly getCurrentScope: UnwrapRef<typeof import('vue')['getCurrentScope']>
148
- readonly h: UnwrapRef<typeof import('vue')['h']>
149
- readonly inject: UnwrapRef<typeof import('vue')['inject']>
150
- readonly isProxy: UnwrapRef<typeof import('vue')['isProxy']>
151
- readonly isReactive: UnwrapRef<typeof import('vue')['isReactive']>
152
- readonly isReadonly: UnwrapRef<typeof import('vue')['isReadonly']>
153
- readonly isRef: UnwrapRef<typeof import('vue')['isRef']>
154
- readonly markRaw: UnwrapRef<typeof import('vue')['markRaw']>
155
- readonly nextTick: UnwrapRef<typeof import('vue')['nextTick']>
156
- readonly onActivated: UnwrapRef<typeof import('vue')['onActivated']>
157
- readonly onBeforeMount: UnwrapRef<typeof import('vue')['onBeforeMount']>
158
- readonly onBeforeRouteLeave: UnwrapRef<typeof import('vue-router')['onBeforeRouteLeave']>
159
- readonly onBeforeRouteUpdate: UnwrapRef<typeof import('vue-router')['onBeforeRouteUpdate']>
160
- readonly onBeforeUnmount: UnwrapRef<typeof import('vue')['onBeforeUnmount']>
161
- readonly onBeforeUpdate: UnwrapRef<typeof import('vue')['onBeforeUpdate']>
162
- readonly onDeactivated: UnwrapRef<typeof import('vue')['onDeactivated']>
163
- readonly onErrorCaptured: UnwrapRef<typeof import('vue')['onErrorCaptured']>
164
- readonly onMounted: UnwrapRef<typeof import('vue')['onMounted']>
165
- readonly onRenderTracked: UnwrapRef<typeof import('vue')['onRenderTracked']>
166
- readonly onRenderTriggered: UnwrapRef<typeof import('vue')['onRenderTriggered']>
167
- readonly onScopeDispose: UnwrapRef<typeof import('vue')['onScopeDispose']>
168
- readonly onServerPrefetch: UnwrapRef<typeof import('vue')['onServerPrefetch']>
169
- readonly onUnmounted: UnwrapRef<typeof import('vue')['onUnmounted']>
170
- readonly onUpdated: UnwrapRef<typeof import('vue')['onUpdated']>
171
- readonly provide: UnwrapRef<typeof import('vue')['provide']>
172
- readonly reactive: UnwrapRef<typeof import('vue')['reactive']>
173
- readonly readonly: UnwrapRef<typeof import('vue')['readonly']>
174
- readonly ref: UnwrapRef<typeof import('vue')['ref']>
175
- readonly resolveComponent: UnwrapRef<typeof import('vue')['resolveComponent']>
176
- readonly shallowReactive: UnwrapRef<typeof import('vue')['shallowReactive']>
177
- readonly shallowReadonly: UnwrapRef<typeof import('vue')['shallowReadonly']>
178
- readonly shallowRef: UnwrapRef<typeof import('vue')['shallowRef']>
179
- readonly toRaw: UnwrapRef<typeof import('vue')['toRaw']>
180
- readonly toRef: UnwrapRef<typeof import('vue')['toRef']>
181
- readonly toRefs: UnwrapRef<typeof import('vue')['toRefs']>
182
- readonly toValue: UnwrapRef<typeof import('vue')['toValue']>
183
- readonly triggerRef: UnwrapRef<typeof import('vue')['triggerRef']>
184
- readonly unref: UnwrapRef<typeof import('vue')['unref']>
185
- readonly useAttrs: UnwrapRef<typeof import('vue')['useAttrs']>
186
- readonly useCssModule: UnwrapRef<typeof import('vue')['useCssModule']>
187
- readonly useCssVars: UnwrapRef<typeof import('vue')['useCssVars']>
188
- readonly useLink: UnwrapRef<typeof import('vue-router')['useLink']>
189
- readonly useRoute: UnwrapRef<typeof import('vue-router')['useRoute']>
190
- readonly useRouter: UnwrapRef<typeof import('vue-router')['useRouter']>
191
- readonly useSlots: UnwrapRef<typeof import('vue')['useSlots']>
192
- readonly watch: UnwrapRef<typeof import('vue')['watch']>
193
- readonly watchEffect: UnwrapRef<typeof import('vue')['watchEffect']>
194
- readonly watchPostEffect: UnwrapRef<typeof import('vue')['watchPostEffect']>
195
- readonly watchSyncEffect: UnwrapRef<typeof import('vue')['watchSyncEffect']>
196
- }
197
- }
147
+ }
@@ -1,13 +1,16 @@
1
1
  <template>
2
- <v-footer height="40" app>
2
+ <v-footer
3
+ app
4
+ height="40"
5
+ >
3
6
  <a
4
7
  v-for="item in items"
5
8
  :key="item.title"
6
- :href="item.href"
7
- :title="item.title"
8
9
  class="d-inline-block mx-2 social-link"
10
+ :href="item.href"
9
11
  rel="noopener noreferrer"
10
12
  target="_blank"
13
+ :title="item.title"
11
14
  >
12
15
  <v-icon
13
16
  :icon="item.icon"
@@ -2,4 +2,4 @@
2
2
 
3
3
  Layouts are reusable components that wrap around pages. They are used to provide a consistent look and feel across multiple pages.
4
4
 
5
- Full documentation for this feature can be found in the Official [vite-plugin-vue-layouts](https://github.com/JohnCampionJr/vite-plugin-vue-layouts) repository.
5
+ Full documentation for this feature can be found in the Official [vite-plugin-vue-layouts-next](https://github.com/loicduong/vite-plugin-vue-layouts-next) repository.
@@ -1,11 +1,9 @@
1
1
  <template>
2
- <v-app>
3
- <v-main>
4
- <router-view />
5
- </v-main>
2
+ <v-main>
3
+ <router-view />
4
+ </v-main>
6
5
 
7
- <AppFooter />
8
- </v-app>
6
+ <AppFooter />
9
7
  </template>
10
8
 
11
9
  <script lang="ts" setup>
@@ -2,9 +2,10 @@
2
2
  import AutoImport from 'unplugin-auto-import/vite'
3
3
  import Components from 'unplugin-vue-components/vite'
4
4
  import Fonts from 'unplugin-fonts/vite'
5
- import Layouts from 'vite-plugin-vue-layouts'
5
+ import Layouts from 'vite-plugin-vue-layouts-next'
6
6
  import Vue from '@vitejs/plugin-vue'
7
7
  import VueRouter from 'unplugin-vue-router/vite'
8
+ import { VueRouterAutoImports } from 'unplugin-vue-router'
8
9
  import Vuetify, { transformAssetUrls } from 'vite-plugin-vuetify'
9
10
 
10
11
  // Utilities
@@ -21,9 +22,10 @@ export default defineConfig({
21
22
  AutoImport({
22
23
  imports: [
23
24
  'vue',
25
+ VueRouterAutoImports,
24
26
  {
25
- 'vue-router/auto': ['useRoute', 'useRouter'],
26
- }
27
+ 'pinia': ['defineStore', 'storeToRefs'],
28
+ },
27
29
  ],
28
30
  dts: 'src/auto-imports.d.ts',
29
31
  eslintrc: {
@@ -46,13 +48,22 @@ export default defineConfig({
46
48
  }),
47
49
  Fonts({
48
50
  google: {
49
- families: [ {
51
+ families: [{
50
52
  name: 'Roboto',
51
53
  styles: 'wght@100;300;400;500;700;900',
52
54
  }],
53
55
  },
54
56
  }),
55
57
  ],
58
+ optimizeDeps: {
59
+ exclude: [
60
+ 'vuetify',
61
+ 'vue-router',
62
+ 'unplugin-vue-router/runtime',
63
+ 'unplugin-vue-router/data-loaders',
64
+ 'unplugin-vue-router/data-loaders/basic',
65
+ ],
66
+ },
56
67
  define: { 'process.env': {} },
57
68
  resolve: {
58
69
  alias: {
@@ -76,6 +87,9 @@ export default defineConfig({
76
87
  sass: {
77
88
  api: 'modern-compiler',
78
89
  },
90
+ scss: {
91
+ api: 'modern-compiler',
92
+ },
79
93
  },
80
94
  },
81
95
  })
@@ -0,0 +1,6 @@
1
+ <svg width="512" height="512" viewBox="0 0 512 512" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M261.126 140.65L164.624 307.732L256.001 466L377.028 256.5L498.001 47H315.192L261.126 140.65Z" fill="#1697F6"/>
3
+ <path d="M135.027 256.5L141.365 267.518L231.64 111.178L268.731 47H256H14L135.027 256.5Z" fill="#AEDDFF"/>
4
+ <path d="M315.191 47C360.935 197.446 256 466 256 466L164.624 307.732L315.191 47Z" fill="#1867C0"/>
5
+ <path d="M268.731 47C76.0026 47 141.366 267.518 141.366 267.518L268.731 47Z" fill="#7BC6FF"/>
6
+ </svg>