vuetify-nuxt-module 0.17.0 → 0.18.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/README.md +9 -9
- package/dist/module.d.mts +9 -0
- package/dist/module.d.ts +9 -0
- package/dist/module.json +1 -1
- package/dist/module.mjs +107 -61
- package/package.json +7 -6
package/README.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<div align="center">
|
|
2
2
|
<picture>
|
|
3
|
-
<source media="(prefers-color-scheme: dark)" srcset="https://github.com/
|
|
4
|
-
<img alt="vuetify-nuxt-module - Zero-config Nuxt Module for Vuetify" src='https://github.com/
|
|
3
|
+
<source media="(prefers-color-scheme: dark)" srcset="https://github.com/vuetifyjs/nuxt-module/raw/main/hero-dark.svg" />
|
|
4
|
+
<img alt="vuetify-nuxt-module - Zero-config Nuxt Module for Vuetify" src='https://github.com/vuetifyjs/nuxt-module/raw/main/hero.svg' alt="vuetify-nuxt-module - Zero-config Nuxt Module for Vuetify"><br>
|
|
5
5
|
</picture>
|
|
6
6
|
<p>Zero-config Nuxt Module for Vuetify</p>
|
|
7
7
|
</div>
|
|
@@ -13,11 +13,11 @@
|
|
|
13
13
|
<a href="https://www.npmjs.com/package/vuetify-nuxt-module" target="__blank">
|
|
14
14
|
<img alt="NPM Downloads" src="https://img.shields.io/npm/dm/vuetify-nuxt-module?color=476582&label=">
|
|
15
15
|
</a>
|
|
16
|
-
<a href="https://
|
|
16
|
+
<a href="https://nuxt.vuetifyjs.com/" target="__blank">
|
|
17
17
|
<img src="https://img.shields.io/static/v1?label=&message=docs%20%26%20guides&color=2e859c" alt="Docs & Guides">
|
|
18
18
|
</a>
|
|
19
19
|
<br>
|
|
20
|
-
<a href="https://github.com/
|
|
20
|
+
<a href="https://github.com/vuetifyjs/nuxt-module" target="__blank">
|
|
21
21
|
<img alt="GitHub stars" src="https://img.shields.io/github/stars/userquin/vuetify-nuxt-module?style=social">
|
|
22
22
|
</a>
|
|
23
23
|
</p>
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
|
|
27
27
|
## 🚀 Features
|
|
28
28
|
|
|
29
|
-
- 📖 [**Documentation & guides**](https://
|
|
29
|
+
- 📖 [**Documentation & guides**](https://nuxt.vuetifyjs.com/)
|
|
30
30
|
- 👌 **Zero-Config**: sensible built-in default [Vuetify](https://vuetifyjs.com/) configuration for common use cases
|
|
31
31
|
- 🔌 **Extensible**: expose the ability to customize the Vuetify configuration via [Nuxt Runtime Hooks](https://nuxt.com/docs/guide/going-further/hooks#usage-with-plugins)
|
|
32
32
|
- ⚡ **Fully Tree Shakable**: by default, only the needed Vuetify components are imported
|
|
@@ -82,14 +82,14 @@ export default defineNuxtConfig({
|
|
|
82
82
|
})
|
|
83
83
|
```
|
|
84
84
|
|
|
85
|
-
Read the [📖 documentation](https://
|
|
85
|
+
Read the [📖 documentation](https://nuxt.vuetifyjs.com/) for a complete guide on how to configure and use this module.
|
|
86
86
|
|
|
87
87
|
## 👀 Full config
|
|
88
88
|
|
|
89
|
-
Check out the [types](https://github.com/
|
|
89
|
+
Check out the [types](https://github.com/vuetifyjs/nuxt-module/blob/main/src/types.ts).
|
|
90
90
|
|
|
91
|
-
The virtual modules can be found in [configuration.d.ts](https://github.com/
|
|
91
|
+
The virtual modules can be found in [configuration.d.ts](https://github.com/vuetifyjs/nuxt-module/blob/main/configuration.d.ts) file.
|
|
92
92
|
|
|
93
93
|
## 📄 License
|
|
94
94
|
|
|
95
|
-
[MIT](https://github.com/
|
|
95
|
+
[MIT](https://github.com/vuetifyjs/nuxt-module/blob/main/LICENSE) License © 2023-PRESENT [Joaquín Sánchez](https://github.com/userquin)
|
package/dist/module.d.mts
CHANGED
|
@@ -247,6 +247,15 @@ interface MOptions {
|
|
|
247
247
|
styles?: true | 'none' | 'sass' | {
|
|
248
248
|
configFile: string;
|
|
249
249
|
};
|
|
250
|
+
/**
|
|
251
|
+
* The module will add `vuetify/styles` in Nuxt `css` by default.
|
|
252
|
+
*
|
|
253
|
+
* If you want to add custom styles, you should enable this flag to avoid registering `vuetify/styles`.
|
|
254
|
+
*
|
|
255
|
+
* @see https://github.com/vuetifyjs/nuxt-module/pull/213
|
|
256
|
+
* @default false
|
|
257
|
+
*/
|
|
258
|
+
disableVuetifyStyles?: boolean;
|
|
250
259
|
/**
|
|
251
260
|
* Disable the modern SASS compiler and API.
|
|
252
261
|
*
|
package/dist/module.d.ts
CHANGED
|
@@ -247,6 +247,15 @@ interface MOptions {
|
|
|
247
247
|
styles?: true | 'none' | 'sass' | {
|
|
248
248
|
configFile: string;
|
|
249
249
|
};
|
|
250
|
+
/**
|
|
251
|
+
* The module will add `vuetify/styles` in Nuxt `css` by default.
|
|
252
|
+
*
|
|
253
|
+
* If you want to add custom styles, you should enable this flag to avoid registering `vuetify/styles`.
|
|
254
|
+
*
|
|
255
|
+
* @see https://github.com/vuetifyjs/nuxt-module/pull/213
|
|
256
|
+
* @default false
|
|
257
|
+
*/
|
|
258
|
+
disableVuetifyStyles?: boolean;
|
|
250
259
|
/**
|
|
251
260
|
* Disable the modern SASS compiler and API.
|
|
252
261
|
*
|
package/dist/module.json
CHANGED
package/dist/module.mjs
CHANGED
|
@@ -1,20 +1,22 @@
|
|
|
1
|
-
import { addVitePlugin, addPluginTemplate, extendWebpackConfig, addImports, addPlugin, useLogger, defineNuxtModule, isNuxt2,
|
|
1
|
+
import { addVitePlugin, addPluginTemplate, getNuxtVersion, extendWebpackConfig, addImports, addPlugin, useLogger, defineNuxtModule, isNuxt2, createResolver, hasNuxtModule } from '@nuxt/kit';
|
|
2
2
|
import { isPackageExists, getPackageInfo } from 'local-pkg';
|
|
3
|
-
import {
|
|
3
|
+
import { createFilter, version as version$1 } from 'vite';
|
|
4
|
+
import { resolve, dirname, relative } from 'node:path';
|
|
4
5
|
import defu from 'defu';
|
|
5
6
|
import { debounce } from 'perfect-debounce';
|
|
6
7
|
import { existsSync, statSync } from 'node:fs';
|
|
7
8
|
import process from 'node:process';
|
|
8
9
|
import { createConfigLoader } from 'unconfig';
|
|
9
10
|
import { readFile } from 'node:fs/promises';
|
|
10
|
-
import { resolveVuetifyBase, normalizePath, generateImports } from '@vuetify/loader-shared';
|
|
11
|
-
import { isAbsolute, join, relative as relative$1 } from 'pathe';
|
|
12
|
-
import { transformAssetUrls } from 'vite-plugin-vuetify';
|
|
11
|
+
import { resolveVuetifyBase, isObject, normalizePath, generateImports } from '@vuetify/loader-shared';
|
|
13
12
|
import { pathToFileURL } from 'node:url';
|
|
13
|
+
import { relative as relative$1, isAbsolute } from 'pathe';
|
|
14
|
+
import path from 'upath';
|
|
15
|
+
import { transformAssetUrls } from 'vite-plugin-vuetify';
|
|
14
16
|
import { parseQuery, parseURL } from 'ufo';
|
|
15
17
|
import destr from 'destr';
|
|
16
18
|
|
|
17
|
-
const version = "0.
|
|
19
|
+
const version = "0.18.0";
|
|
18
20
|
|
|
19
21
|
const VIRTUAL_VUETIFY_CONFIGURATION = "virtual:vuetify-configuration";
|
|
20
22
|
const RESOLVED_VIRTUAL_VUETIFY_CONFIGURATION = `\0${VIRTUAL_VUETIFY_CONFIGURATION}`;
|
|
@@ -525,63 +527,74 @@ function registerWatcher(options, nuxt, ctx) {
|
|
|
525
527
|
}
|
|
526
528
|
}
|
|
527
529
|
|
|
528
|
-
function
|
|
529
|
-
const relative = relative$1(root, test);
|
|
530
|
-
return relative && !relative.startsWith("..") && !isAbsolute(relative);
|
|
531
|
-
}
|
|
532
|
-
function vuetifyStylesPlugin(options, _logger) {
|
|
533
|
-
const vuetifyBase = resolveVuetifyBase();
|
|
530
|
+
function vuetifyStylesPlugin(options, [major, minor, patch], _logger) {
|
|
534
531
|
let configFile;
|
|
535
|
-
const
|
|
532
|
+
const vuetifyBase = resolveVuetifyBase();
|
|
533
|
+
const noneFiles = /* @__PURE__ */ new Set();
|
|
534
|
+
let isNone = false;
|
|
535
|
+
let sassVariables = false;
|
|
536
|
+
let fileImport = false;
|
|
537
|
+
const PREFIX = "vuetify-styles/";
|
|
538
|
+
const SSR_PREFIX = `/@${PREFIX}`;
|
|
536
539
|
return {
|
|
537
540
|
name: "vuetify:styles:nuxt",
|
|
538
541
|
enforce: "pre",
|
|
539
542
|
configResolved(config) {
|
|
540
543
|
if (config.plugins.findIndex((plugin) => plugin.name === "vuetify:styles") > -1)
|
|
541
544
|
throw new Error("Remove vite-plugin-vuetify from your Nuxt config file, this module registers a modified version.");
|
|
542
|
-
if (
|
|
543
|
-
|
|
544
|
-
|
|
545
|
+
if (isObject(options.styles)) {
|
|
546
|
+
sassVariables = true;
|
|
547
|
+
fileImport = major > 5 || major === 5 && minor > 4 || major === 5 && minor === 4 && patch > 2;
|
|
548
|
+
if (path.isAbsolute(options.styles.configFile))
|
|
549
|
+
configFile = path.resolve(options.styles.configFile);
|
|
545
550
|
else
|
|
546
|
-
configFile = join(config.root || process.cwd(), options.styles.configFile);
|
|
551
|
+
configFile = path.resolve(path.join(config.root || process.cwd(), options.styles.configFile));
|
|
552
|
+
configFile = fileImport ? pathToFileURL(configFile).href : normalizePath(configFile);
|
|
553
|
+
} else {
|
|
554
|
+
isNone = options.styles === "none";
|
|
547
555
|
}
|
|
548
556
|
},
|
|
549
557
|
async resolveId(source, importer, { custom, ssr }) {
|
|
550
|
-
if (source
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
const
|
|
555
|
-
return this.resolve(
|
|
556
|
-
} else if (typeof options.styles === "object") {
|
|
557
|
-
const resolution = await this.resolve(source, importer, { skipSelf: true, custom });
|
|
558
|
-
if (!resolution)
|
|
559
|
-
return null;
|
|
560
|
-
const target = resolution.id.replace(/\.css$/, ".sass");
|
|
561
|
-
const file = relative$1(join(vuetifyBase, "lib"), target);
|
|
562
|
-
const contents = `@use "${normalizePath(configFile)}"
|
|
563
|
-
@use "${normalizePath(target)}"`;
|
|
564
|
-
tempFiles.set(file, contents);
|
|
565
|
-
return ssr ? `/@plugin-vuetify/lib/${file}` : `/@fs/plugin-vuetify/lib/${file}`;
|
|
558
|
+
if (source.startsWith(PREFIX) || source.startsWith(SSR_PREFIX))
|
|
559
|
+
return source;
|
|
560
|
+
if (source === "vuetify/styles" || importer && source.endsWith(".css") && isSubdir(vuetifyBase, path.isAbsolute(source) ? source : importer)) {
|
|
561
|
+
if (options.styles === "sass") {
|
|
562
|
+
const target2 = source.replace(/\.css$/, ".sass");
|
|
563
|
+
return this.resolve(target2, importer, { skipSelf: true, custom });
|
|
566
564
|
}
|
|
565
|
+
const resolution = await this.resolve(source, importer, { skipSelf: true, custom });
|
|
566
|
+
if (!resolution)
|
|
567
|
+
return void 0;
|
|
568
|
+
const target = resolution.id.replace(/\.css$/, ".sass");
|
|
569
|
+
if (isNone) {
|
|
570
|
+
noneFiles.add(target);
|
|
571
|
+
return target;
|
|
572
|
+
}
|
|
573
|
+
return `${ssr ? SSR_PREFIX : PREFIX}${path.relative(vuetifyBase, target)}`;
|
|
567
574
|
}
|
|
575
|
+
return void 0;
|
|
568
576
|
},
|
|
569
577
|
load(id) {
|
|
570
|
-
if (
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
578
|
+
if (sassVariables) {
|
|
579
|
+
const target = id.startsWith(PREFIX) ? path.resolve(vuetifyBase, id.slice(PREFIX.length)) : id.startsWith(SSR_PREFIX) ? path.resolve(vuetifyBase, id.slice(SSR_PREFIX.length)) : void 0;
|
|
580
|
+
if (target) {
|
|
581
|
+
return {
|
|
582
|
+
code: `@use "${configFile}"
|
|
583
|
+
@use "${fileImport ? pathToFileURL(target).href : normalizePath(target)}"`,
|
|
584
|
+
map: {
|
|
585
|
+
mappings: ""
|
|
586
|
+
}
|
|
587
|
+
};
|
|
588
|
+
}
|
|
579
589
|
}
|
|
580
|
-
|
|
581
|
-
return "";
|
|
590
|
+
return isNone && noneFiles.has(id) ? "" : void 0;
|
|
582
591
|
}
|
|
583
592
|
};
|
|
584
593
|
}
|
|
594
|
+
function isSubdir(root, test) {
|
|
595
|
+
const relative = relative$1(root, test);
|
|
596
|
+
return relative && !relative.startsWith("..") && !isAbsolute(relative);
|
|
597
|
+
}
|
|
585
598
|
|
|
586
599
|
function toKebabCase(str = "") {
|
|
587
600
|
if (toKebabCase.cache.has(str))
|
|
@@ -1173,15 +1186,22 @@ function parseId(id) {
|
|
|
1173
1186
|
};
|
|
1174
1187
|
}
|
|
1175
1188
|
function vuetifyImportPlugin(options) {
|
|
1189
|
+
let filter;
|
|
1176
1190
|
return {
|
|
1177
1191
|
name: "vuetify:import:nuxt",
|
|
1178
1192
|
configResolved(config) {
|
|
1179
1193
|
if (config.plugins.findIndex((plugin) => plugin.name === "vuetify:import") > -1)
|
|
1180
1194
|
throw new Error("Remove vite-plugin-vuetify from your Nuxt config file, this module registers a modified version.");
|
|
1195
|
+
const vueIdx = config.plugins.findIndex((plugin) => plugin.name === "vite:vue");
|
|
1196
|
+
const vueOptions = vueIdx > -1 ? config.plugins[vueIdx].api?.options : {};
|
|
1197
|
+
filter = createFilter(vueOptions.include, vueOptions.exclude);
|
|
1181
1198
|
},
|
|
1182
1199
|
async transform(code, id) {
|
|
1183
1200
|
const { query, path } = parseId(id);
|
|
1184
|
-
|
|
1201
|
+
const isVueVirtual = query && "vue" in query;
|
|
1202
|
+
const isVueFile = !isVueVirtual && filter(path) && !/^import { render as _sfc_render } from ".*"$/m.test(code);
|
|
1203
|
+
const isVueTemplate = isVueVirtual && (query.type === "template" || query.type === "script" && query.setup === "true");
|
|
1204
|
+
if (isVueFile || isVueTemplate) {
|
|
1185
1205
|
const { code: imports, source } = generateImports(code, options);
|
|
1186
1206
|
return {
|
|
1187
1207
|
code: source + imports,
|
|
@@ -1199,7 +1219,7 @@ function configureVite(configKey, nuxt, ctx) {
|
|
|
1199
1219
|
viteInlineConfig.plugins = viteInlineConfig.plugins || [];
|
|
1200
1220
|
checkVuetifyPlugins(viteInlineConfig);
|
|
1201
1221
|
viteInlineConfig.optimizeDeps = defu(viteInlineConfig.optimizeDeps, { exclude: ["vuetify"] });
|
|
1202
|
-
if (
|
|
1222
|
+
if (ctx.isSSR) {
|
|
1203
1223
|
viteInlineConfig.ssr ||= {};
|
|
1204
1224
|
viteInlineConfig.ssr.noExternal = [
|
|
1205
1225
|
...Array.isArray(viteInlineConfig.ssr.noExternal) ? viteInlineConfig.ssr.noExternal : viteInlineConfig.ssr.noExternal && typeof viteInlineConfig.ssr.noExternal !== "boolean" ? [viteInlineConfig.ssr.noExternal] : [],
|
|
@@ -1216,16 +1236,26 @@ function configureVite(configKey, nuxt, ctx) {
|
|
|
1216
1236
|
viteInlineConfig.vue.template.transformAssetUrls = transformAssetUrls;
|
|
1217
1237
|
}
|
|
1218
1238
|
if (!ctx.moduleOptions.disableModernSassCompiler) {
|
|
1219
|
-
|
|
1220
|
-
|
|
1221
|
-
|
|
1222
|
-
|
|
1223
|
-
|
|
1224
|
-
|
|
1225
|
-
|
|
1226
|
-
|
|
1227
|
-
|
|
1228
|
-
|
|
1239
|
+
const [major, minor, patch] = ctx.viteVersion;
|
|
1240
|
+
const enableModernSassCompiler = major > 5 || major === 5 && minor >= 4;
|
|
1241
|
+
if (enableModernSassCompiler) {
|
|
1242
|
+
const sassEmbedded = isPackageExists("sass-embedded");
|
|
1243
|
+
if (sassEmbedded) {
|
|
1244
|
+
const omit = major > 5 || major === 5 && minor > 4 || major === 5 && minor === 4 && patch >= 2;
|
|
1245
|
+
if (!omit) {
|
|
1246
|
+
viteInlineConfig.css ??= {};
|
|
1247
|
+
viteInlineConfig.css.preprocessorOptions ??= {};
|
|
1248
|
+
viteInlineConfig.css.preprocessorOptions.sass ??= {};
|
|
1249
|
+
viteInlineConfig.css.preprocessorOptions.sass.api = "modern-compiler";
|
|
1250
|
+
}
|
|
1251
|
+
} else {
|
|
1252
|
+
viteInlineConfig.css ??= {};
|
|
1253
|
+
viteInlineConfig.css.preprocessorOptions ??= {};
|
|
1254
|
+
viteInlineConfig.css.preprocessorOptions.sass ??= {};
|
|
1255
|
+
viteInlineConfig.css.preprocessorOptions.sass.api = "modern";
|
|
1256
|
+
if (!("preprocessorMaxWorkers" in viteInlineConfig.css))
|
|
1257
|
+
viteInlineConfig.css.preprocessorMaxWorkers = true;
|
|
1258
|
+
}
|
|
1229
1259
|
}
|
|
1230
1260
|
}
|
|
1231
1261
|
const vuetifyImportOptions = {};
|
|
@@ -1235,7 +1265,8 @@ function configureVite(configKey, nuxt, ctx) {
|
|
|
1235
1265
|
vuetifyImportOptions.autoImport = { ignore };
|
|
1236
1266
|
}
|
|
1237
1267
|
viteInlineConfig.plugins.push(vuetifyImportPlugin(vuetifyImportOptions));
|
|
1238
|
-
|
|
1268
|
+
if (typeof ctx.moduleOptions.styles !== "boolean")
|
|
1269
|
+
viteInlineConfig.plugins.push(vuetifyStylesPlugin({ styles: ctx.moduleOptions.styles }, ctx.viteVersion, ctx.logger));
|
|
1239
1270
|
viteInlineConfig.plugins.push(vuetifyConfigurationPlugin(ctx));
|
|
1240
1271
|
viteInlineConfig.plugins.push(vuetifyIconsPlugin(ctx));
|
|
1241
1272
|
viteInlineConfig.plugins.push(vuetifyDateConfigurationPlugin(ctx));
|
|
@@ -1301,10 +1332,24 @@ export default defineNuxtPlugin({
|
|
|
1301
1332
|
|
|
1302
1333
|
function configureNuxt(configKey, nuxt, ctx) {
|
|
1303
1334
|
const {
|
|
1335
|
+
styles,
|
|
1304
1336
|
importComposables,
|
|
1305
|
-
prefixComposables
|
|
1337
|
+
prefixComposables,
|
|
1338
|
+
disableVuetifyStyles
|
|
1306
1339
|
} = ctx.moduleOptions;
|
|
1307
1340
|
const runtimeDir = ctx.resolver.resolve("./runtime");
|
|
1341
|
+
if (ctx.isSSR && !!styles && typeof styles === "object") {
|
|
1342
|
+
const [major, minor] = getNuxtVersion(nuxt).split(".").map((v) => v.includes("-") ? v.split("-")[0] : v).map((v) => Number.parseInt(v));
|
|
1343
|
+
const features = major > 3 || major === 3 && minor >= 9;
|
|
1344
|
+
if (features)
|
|
1345
|
+
nuxt.options.features.inlineStyles = false;
|
|
1346
|
+
else
|
|
1347
|
+
nuxt.options.experimental["inlineSSRStyles"] = false;
|
|
1348
|
+
}
|
|
1349
|
+
if (!disableVuetifyStyles) {
|
|
1350
|
+
nuxt.options.css ??= [];
|
|
1351
|
+
nuxt.options.css.unshift("vuetify/styles");
|
|
1352
|
+
}
|
|
1308
1353
|
nuxt.options.build.transpile.push(configKey);
|
|
1309
1354
|
nuxt.options.build.transpile.push(runtimeDir);
|
|
1310
1355
|
nuxt.options.build.transpile.push(/\/vuetify-nuxt-plugin\.(client|server)\.mjs$/);
|
|
@@ -1312,8 +1357,6 @@ function configureNuxt(configKey, nuxt, ctx) {
|
|
|
1312
1357
|
nuxt.options.imports.transform.include ??= [];
|
|
1313
1358
|
for (const virtual of RESOLVED_VIRTUAL_MODULES)
|
|
1314
1359
|
nuxt.options.imports.transform.include.push(new RegExp(`${virtual}$`));
|
|
1315
|
-
nuxt.options.css ??= [];
|
|
1316
|
-
nuxt.options.css.unshift("vuetify/styles");
|
|
1317
1360
|
extendWebpackConfig(() => {
|
|
1318
1361
|
throw new Error("Webpack is not supported: vuetify-nuxt-module module can only be used with Vite!");
|
|
1319
1362
|
});
|
|
@@ -1392,6 +1435,7 @@ const module = defineNuxtModule({
|
|
|
1392
1435
|
importComposables: true,
|
|
1393
1436
|
includeTransformAssetsUrls: true,
|
|
1394
1437
|
styles: true,
|
|
1438
|
+
disableVuetifyStyles: false,
|
|
1395
1439
|
disableModernSassCompiler: false
|
|
1396
1440
|
}
|
|
1397
1441
|
}),
|
|
@@ -1402,6 +1446,7 @@ const module = defineNuxtModule({
|
|
|
1402
1446
|
const versions = vuetifyPkg?.version?.split(".").map((v) => Number.parseInt(v));
|
|
1403
1447
|
const vuetify3_4 = versions && versions.length > 1 && (versions[0] > 3 || versions[0] === 3 && versions[1] >= 4);
|
|
1404
1448
|
const vuetify3_5 = versions && versions.length > 1 && (versions[0] > 3 || versions[0] === 3 && versions[1] >= 5);
|
|
1449
|
+
const viteVersion = version$1.split(".").map((v) => v.includes("-") ? v.split("-")[0] : v).map((v) => Number.parseInt(v));
|
|
1405
1450
|
const ctx = {
|
|
1406
1451
|
logger,
|
|
1407
1452
|
resolver: createResolver(import.meta.url),
|
|
@@ -1418,7 +1463,8 @@ const module = defineNuxtModule({
|
|
|
1418
1463
|
componentsPromise: void 0,
|
|
1419
1464
|
labComponentsPromise: void 0,
|
|
1420
1465
|
vuetify3_4,
|
|
1421
|
-
vuetify3_5
|
|
1466
|
+
vuetify3_5,
|
|
1467
|
+
viteVersion
|
|
1422
1468
|
};
|
|
1423
1469
|
await load(options, nuxt, ctx);
|
|
1424
1470
|
configureNuxt(CONFIG_KEY, nuxt, ctx);
|
package/package.json
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "vuetify-nuxt-module",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.
|
|
5
|
-
"packageManager": "pnpm@9.
|
|
4
|
+
"version": "0.18.0",
|
|
5
|
+
"packageManager": "pnpm@9.9.0",
|
|
6
6
|
"description": "Zero-Config Nuxt Module for Vuetify",
|
|
7
7
|
"author": "userquin <userquin@gmail.com>",
|
|
8
8
|
"license": "MIT",
|
|
9
|
-
"homepage": "https://github.com/
|
|
9
|
+
"homepage": "https://github.com/vuetifyjs/nuxt-module#readme",
|
|
10
10
|
"repository": {
|
|
11
11
|
"type": "git",
|
|
12
|
-
"url": "https://github.com/
|
|
12
|
+
"url": "https://github.com/vuetifyjs/nuxt-module.git"
|
|
13
13
|
},
|
|
14
|
-
"bugs": "https://github.com/
|
|
14
|
+
"bugs": "https://github.com/vuetifyjs/nuxt-module/issues",
|
|
15
15
|
"keywords": [
|
|
16
16
|
"nuxt",
|
|
17
17
|
"nuxt 3",
|
|
@@ -73,7 +73,8 @@
|
|
|
73
73
|
"perfect-debounce": "^1.0.0",
|
|
74
74
|
"ufo": "^1.5.4",
|
|
75
75
|
"unconfig": "^0.5.5",
|
|
76
|
-
"
|
|
76
|
+
"upath": "^2.0.1",
|
|
77
|
+
"vite-plugin-vuetify": "^2.0.4",
|
|
77
78
|
"vuetify": "^3.7.0"
|
|
78
79
|
},
|
|
79
80
|
"devDependencies": {
|