2025/2/8第一次更新

This commit is contained in:
爱吃咸鱼小猫咪
2025-02-08 18:50:38 +08:00
commit d7af560866
26519 changed files with 5046029 additions and 0 deletions
+3
View File
@@ -0,0 +1,3 @@
import type { UserConfig } from 'vite';
import type { VitePluginUniResolvedOptions } from '..';
export declare function createBuild(options: VitePluginUniResolvedOptions, config: UserConfig): UserConfig['build'];
+45
View File
@@ -0,0 +1,45 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.createBuild = void 0;
const uni_cli_shared_1 = require("@dcloudio/uni-cli-shared");
const shared_1 = require("@vue/shared");
function createBuild(options, config) {
(0, uni_cli_shared_1.initEasycomsOnce)(options.inputDir, {
dirs: (0, uni_cli_shared_1.resolveComponentsLibDirs)(),
platform: process.env.UNI_PLATFORM,
isX: process.env.UNI_APP_X === 'true',
});
const rollupOutputOption = config.build?.rollupOptions?.output;
const sourcemap = process.env.SOURCEMAP === 'true' ? 'hidden' : config.build?.sourcemap;
return {
sourcemap,
cssTarget: uni_cli_shared_1.cssTarget,
chunkSizeWarningLimit: 100000000,
minify: config.build && (0, shared_1.hasOwn)(config.build, 'minify')
? config.build.minify
: process.env.NODE_ENV === 'production'
? 'terser'
: false,
rollupOptions: {
onwarn(warning, warn) {
if (warning.code === 'UNUSED_EXTERNAL_IMPORT') {
const { message } = warning;
// ignore
if (message.includes('"vue"') ||
message.includes('"resolveComponent"') ||
message.includes('"@dcloudio/uni-h5"')) {
return;
}
}
warn(warning);
},
output: {
sourcemapExcludeSources: !(0, shared_1.isArray)(rollupOutputOption) &&
rollupOutputOption?.sourcemapExcludeSources === false
? false
: process.env.SOURCEMAP === 'true',
},
},
};
}
exports.createBuild = createBuild;
+3
View File
@@ -0,0 +1,3 @@
import type { UserConfig } from 'vite';
import type { VitePluginUniResolvedOptions } from '..';
export declare function createCss(options: VitePluginUniResolvedOptions, config: UserConfig): UserConfig['css'];
+32
View File
@@ -0,0 +1,32 @@
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.createCss = void 0;
const path_1 = __importDefault(require("path"));
const fs_extra_1 = __importDefault(require("fs-extra"));
const uni_cli_shared_1 = require("@dcloudio/uni-cli-shared");
function resolveAdditionalData(inputDir, config) {
const uniScssFile = path_1.default.resolve(inputDir, 'uni.scss');
const userAdditionalData = config.css?.preprocessorOptions?.scss?.additionalData || '';
if (!fs_extra_1.default.existsSync(uniScssFile)) {
return userAdditionalData;
}
let content = fs_extra_1.default.readFileSync(uniScssFile, 'utf8');
if (content.includes('#endif')) {
content = (0, uni_cli_shared_1.preCss)(content);
}
return content + '\n' + userAdditionalData;
}
function createCss(options, config) {
return {
preprocessorOptions: {
scss: {
charset: false,
additionalData: resolveAdditionalData(options.inputDir, config),
},
},
};
}
exports.createCss = createCss;
+3
View File
@@ -0,0 +1,3 @@
import type { UserConfig } from 'vite';
import type { VitePluginUniResolvedOptions } from '..';
export declare function createDefine(_: VitePluginUniResolvedOptions): UserConfig['define'];
+14
View File
@@ -0,0 +1,14 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.createDefine = void 0;
const shared_1 = require("@vue/shared");
const uni_cli_shared_1 = require("@dcloudio/uni-cli-shared");
function createDefine(_) {
return (0, shared_1.extend)({
__VUE_I18N_FULL_INSTALL__: true,
__VUE_I18N_LEGACY_API__: true,
__VUE_I18N_PROD_DEVTOOLS__: false,
__INTLIFY_PROD_DEVTOOLS__: false,
}, (0, uni_cli_shared_1.initDefine)());
}
exports.createDefine = createDefine;
+3
View File
@@ -0,0 +1,3 @@
import type { Plugin } from 'vite';
import type { VitePluginUniResolvedOptions } from '..';
export declare function createConfig(options: VitePluginUniResolvedOptions, _uniPlugins: Plugin[]): Plugin['config'];
+50
View File
@@ -0,0 +1,50 @@
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.createConfig = void 0;
const path_1 = __importDefault(require("path"));
const uni_cli_shared_1 = require("@dcloudio/uni-cli-shared");
const css_1 = require("./css");
const resolve_1 = require("./resolve");
const build_1 = require("./build");
const optimizeDeps_1 = require("./optimizeDeps");
const define_1 = require("./define");
function createConfig(options, _uniPlugins) {
return (config, env) => {
options.command = env.command;
let base = config.base;
if (!base) {
const manifestJson = (0, uni_cli_shared_1.parseManifestJsonOnce)(options.inputDir);
const h5 = (0, uni_cli_shared_1.getPlatformManifestJson)(manifestJson, 'h5');
base = (h5 && h5.router && h5.router.base) || '';
}
if (!base) {
base = '/';
}
options.base = base;
const pluginConfig = {
base: process.env.UNI_H5_BASE || base,
root: process.env.VITE_ROOT_DIR,
// TODO 临时设置为__static__,屏蔽警告:https://github.com/vitejs/vite/blob/824d042535033a5c3d7006978c0d05c201cd1c25/packages/vite/src/node/server/middlewares/transform.ts#L125
publicDir: config.publicDir || '__static__',
define: (0, define_1.createDefine)(options),
resolve: (0, resolve_1.createResolve)(options, config),
logLevel: config.logLevel || 'warn', // 默认使用 warn 等级,因为 info 等级vite:report 会输出文件列表等信息
optimizeDeps: (0, optimizeDeps_1.createOptimizeDeps)(options),
build: (0, build_1.createBuild)(options, config),
css: (0, css_1.createCss)(options, config),
esbuild: {
include: /\.(tsx?|jsx|uts)$/,
exclude: /\.js$/,
loader: 'ts',
},
};
if ((0, uni_cli_shared_1.isInHBuilderX)()) {
pluginConfig.cacheDir = path_1.default.resolve(process.env.UNI_OUTPUT_DIR, '../../cache/.vite');
}
return pluginConfig;
};
}
exports.createConfig = createConfig;
+3
View File
@@ -0,0 +1,3 @@
import type { UserConfig } from 'vite';
import type { VitePluginUniResolvedOptions } from '..';
export declare function createOptimizeDeps(_options: VitePluginUniResolvedOptions): UserConfig['optimizeDeps'];
+20
View File
@@ -0,0 +1,20 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.createOptimizeDeps = void 0;
function createOptimizeDeps(_options) {
return {
exclude: [
'vue',
'vuex',
'vue-i18n',
'vue-router',
'@dcloudio/uni-app',
'@dcloudio/uni-components',
'@dcloudio/uni-i18n',
'@dcloudio/uni-shared',
'@dcloudio/uni-stacktracey',
'pinia',
],
};
}
exports.createOptimizeDeps = createOptimizeDeps;
+4
View File
@@ -0,0 +1,4 @@
import type { ResolverFunction, UserConfig } from 'vite';
import type { VitePluginUniResolvedOptions } from '..';
export declare const customResolver: ResolverFunction;
export declare function createResolve(options: VitePluginUniResolvedOptions, _config: UserConfig): UserConfig['resolve'];
+68
View File
@@ -0,0 +1,68 @@
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.createResolve = exports.customResolver = void 0;
const path_1 = __importDefault(require("path"));
const uni_cli_shared_1 = require("@dcloudio/uni-cli-shared");
function resolveUTSModuleProxyFile(id, importer) {
const file = (0, uni_cli_shared_1.resolveUTSAppModule)(process.env.UNI_UTS_PLATFORM, id, importer);
if (file) {
// app-js 会返回完整路径,不需要 uts-proxy
if (file.endsWith('.uts')) {
return file;
}
return file + '?uts-proxy';
}
}
const customResolver = (updatedId, importer) => {
updatedId = updatedId.split('?')[0];
const utsImporter = importer
? path_1.default.dirname(importer)
: process.env.UNI_INPUT_DIR;
const utsModuleFile = process.env.UNI_PLATFORM === 'app' ||
process.env.UNI_PLATFORM === 'app-harmony'
? resolveUTSModuleProxyFile(updatedId, utsImporter)
: (0, uni_cli_shared_1.resolveUTSModule)(updatedId, utsImporter);
if (utsModuleFile) {
return uni_cli_shared_1.isWindows ? (0, uni_cli_shared_1.normalizePath)(utsModuleFile) : utsModuleFile;
}
const resolveId = (0, uni_cli_shared_1.resolveEncryptUniModule)((0, uni_cli_shared_1.normalizePath)(updatedId), process.env.UNI_UTS_PLATFORM, process.env.UNI_APP_X === 'true');
if (resolveId) {
return resolveId;
}
if (uni_cli_shared_1.isWindows) {
return (0, uni_cli_shared_1.normalizePath)((0, uni_cli_shared_1.requireResolve)(updatedId, importer || process.env.UNI_INPUT_DIR));
}
return (0, uni_cli_shared_1.requireResolve)(updatedId, importer || process.env.UNI_INPUT_DIR);
};
exports.customResolver = customResolver;
function createResolve(options, _config) {
const alias = [];
if ((0, uni_cli_shared_1.isNormalCompileTarget)()) {
// 加密组件内部使用的 vue export helper,需要重新映射回来
alias.push({
find: 'plugin-vue:export-helper',
replacement: '\0plugin-vue:export-helper',
});
}
return {
// 必须使用alias解析,插件定制的resolveId,不会被应用到css等预处理器中
alias: [
// because @rollup/plugin-alias' type doesn't allow function
// replacement, but its implementation does work with function values.
{
find: /^(~@|@)\/(.*)/,
replacement(_str, _$1, $2) {
return (0, uni_cli_shared_1.normalizePath)(path_1.default.resolve(options.inputDir, $2));
},
customResolver: exports.customResolver,
},
...alias,
],
extensions: process.env.UNI_APP_X === 'true' ? uni_cli_shared_1.uni_app_x_extensions : uni_cli_shared_1.extensions,
preserveSymlinks: true,
};
}
exports.createResolve = createResolve;