mirror of
https://gitee.com/vant-contrib/vant.git
synced 2025-04-23 09:52:57 +08:00
feat: generate entry file for nuxt3 (#9970)
This commit is contained in:
parent
bd236e9561
commit
a60673013b
@ -1,8 +1,33 @@
|
|||||||
|
import fse from 'fs-extra';
|
||||||
|
import { join } from 'path';
|
||||||
import { build } from 'vite';
|
import { build } from 'vite';
|
||||||
import { getPackageJson } from '../common/constant.js';
|
import { getPackageJson, getVantConfig, LIB_DIR } from '../common/constant.js';
|
||||||
import { mergeCustomViteConfig } from '../common/index.js';
|
import { mergeCustomViteConfig } from '../common/index.js';
|
||||||
import { getViteConfigForPackage } from '../config/vite.package.js';
|
import { getViteConfigForPackage } from '../config/vite.package.js';
|
||||||
|
|
||||||
|
// generate entry file for nuxt
|
||||||
|
async function genEntryForSSR() {
|
||||||
|
const { name } = getVantConfig();
|
||||||
|
const cjsPath = join(LIB_DIR, 'ssr.js');
|
||||||
|
const mjsPath = join(LIB_DIR, 'ssr.mjs');
|
||||||
|
|
||||||
|
const cjsContent = `'use strict';
|
||||||
|
|
||||||
|
if (process.env.NODE_ENV === 'production') {
|
||||||
|
module.exports = require('./dist/${name}.cjs.min.js');
|
||||||
|
} else {
|
||||||
|
module.exports = require('./dist/${name}.cjs.js');
|
||||||
|
};
|
||||||
|
`;
|
||||||
|
|
||||||
|
const mjsContent = `export * from './index.js';\n`;
|
||||||
|
|
||||||
|
return Promise.all([
|
||||||
|
fse.outputFile(cjsPath, cjsContent),
|
||||||
|
fse.outputFile(mjsPath, mjsContent),
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
export async function compileBundles() {
|
export async function compileBundles() {
|
||||||
const dependencies = getPackageJson().dependencies || {};
|
const dependencies = getPackageJson().dependencies || {};
|
||||||
const externals = Object.keys(dependencies);
|
const externals = Object.keys(dependencies);
|
||||||
@ -39,4 +64,5 @@ export async function compileBundles() {
|
|||||||
await Promise.all(
|
await Promise.all(
|
||||||
configs.map((config) => build(mergeCustomViteConfig(config)))
|
configs.map((config) => build(mergeCustomViteConfig(config)))
|
||||||
);
|
);
|
||||||
|
await genEntryForSSR();
|
||||||
}
|
}
|
||||||
|
@ -10,6 +10,10 @@
|
|||||||
"jsdelivr": "lib/vant.min.js",
|
"jsdelivr": "lib/vant.min.js",
|
||||||
"exports": {
|
"exports": {
|
||||||
".": {
|
".": {
|
||||||
|
"node": {
|
||||||
|
"import": "./lib/ssr.mjs",
|
||||||
|
"require": "./lib/ssr.js"
|
||||||
|
},
|
||||||
"import": "./lib/vant.es.js",
|
"import": "./lib/vant.es.js",
|
||||||
"require": "./lib/vant.cjs.js",
|
"require": "./lib/vant.cjs.js",
|
||||||
"types": "./lib/index.d.ts"
|
"types": "./lib/index.d.ts"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user