初始化
This commit is contained in:
1
uni_modules/UniDevTools/node_modules/@dcloudio/vite-plugin-uni/dist/vue/index.d.ts
generated
vendored
Normal file
1
uni_modules/UniDevTools/node_modules/@dcloudio/vite-plugin-uni/dist/vue/index.d.ts
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
export * from './options';
|
||||
17
uni_modules/UniDevTools/node_modules/@dcloudio/vite-plugin-uni/dist/vue/index.js
generated
vendored
Normal file
17
uni_modules/UniDevTools/node_modules/@dcloudio/vite-plugin-uni/dist/vue/index.js
generated
vendored
Normal file
@@ -0,0 +1,17 @@
|
||||
"use strict";
|
||||
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
||||
if (k2 === undefined) k2 = k;
|
||||
var desc = Object.getOwnPropertyDescriptor(m, k);
|
||||
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
||||
desc = { enumerable: true, get: function() { return m[k]; } };
|
||||
}
|
||||
Object.defineProperty(o, k2, desc);
|
||||
}) : (function(o, m, k, k2) {
|
||||
if (k2 === undefined) k2 = k;
|
||||
o[k2] = m[k];
|
||||
}));
|
||||
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
||||
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
||||
};
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
__exportStar(require("./options"), exports);
|
||||
16
uni_modules/UniDevTools/node_modules/@dcloudio/vite-plugin-uni/dist/vue/options.d.ts
generated
vendored
Normal file
16
uni_modules/UniDevTools/node_modules/@dcloudio/vite-plugin-uni/dist/vue/options.d.ts
generated
vendored
Normal file
@@ -0,0 +1,16 @@
|
||||
import type { TemplateCompiler } from '@vue/compiler-sfc';
|
||||
import type { Options as VueOptions } from '@vitejs/plugin-vue';
|
||||
import { UniVitePlugin } from '@dcloudio/uni-cli-shared';
|
||||
import type { ViteLegacyOptions, VitePluginUniResolvedOptions } from '..';
|
||||
/**
|
||||
* 每次创建新的 plugin-vue 实例。因为该插件内部会 cache descriptor,而相同的vue文件在编译到vue页面和nvue页面时,不能共享缓存(条件编译,css scoped等均不同)
|
||||
* @returns
|
||||
*/
|
||||
export declare function createPluginVueInstance(options: VueOptions): any;
|
||||
export declare function initPluginVueOptions(options: VitePluginUniResolvedOptions, UniVitePlugins: UniVitePlugin[], uniPluginOptions: Required<Omit<Required<UniVitePlugin>['uni'], 'compiler'>> & {
|
||||
compiler?: TemplateCompiler;
|
||||
}): VueOptions;
|
||||
export declare function initPluginVueJsxOptions(options: VitePluginUniResolvedOptions, { isCustomElement, }: Required<Required<UniVitePlugin>['uni']>['compilerOptions'], jsxOptions: Required<Required<UniVitePlugin>['uni']>['jsxOptions']): import("@vue/babel-plugin-jsx").VueJSXPluginOptions & {
|
||||
babelPlugins?: any[] | undefined;
|
||||
};
|
||||
export declare function initPluginViteLegacyOptions(options: VitePluginUniResolvedOptions): ViteLegacyOptions;
|
||||
135
uni_modules/UniDevTools/node_modules/@dcloudio/vite-plugin-uni/dist/vue/options.js
generated
vendored
Normal file
135
uni_modules/UniDevTools/node_modules/@dcloudio/vite-plugin-uni/dist/vue/options.js
generated
vendored
Normal file
@@ -0,0 +1,135 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.initPluginViteLegacyOptions = exports.initPluginVueJsxOptions = exports.initPluginVueOptions = exports.createPluginVueInstance = void 0;
|
||||
const shared_1 = require("@vue/shared");
|
||||
const uni_cli_shared_1 = require("@dcloudio/uni-cli-shared");
|
||||
const utils_1 = require("../utils");
|
||||
const pluginVuePath = require.resolve('@vitejs/plugin-vue');
|
||||
const normalizedPluginVuePath = (0, uni_cli_shared_1.normalizePath)(pluginVuePath);
|
||||
/**
|
||||
* 每次创建新的 plugin-vue 实例。因为该插件内部会 cache descriptor,而相同的vue文件在编译到vue页面和nvue页面时,不能共享缓存(条件编译,css scoped等均不同)
|
||||
* @returns
|
||||
*/
|
||||
function createPluginVueInstance(options) {
|
||||
delete require.cache[pluginVuePath];
|
||||
delete require.cache[normalizedPluginVuePath];
|
||||
const vuePlugin = require('@vitejs/plugin-vue');
|
||||
return vuePlugin(options);
|
||||
}
|
||||
exports.createPluginVueInstance = createPluginVueInstance;
|
||||
function initPluginVueOptions(options, UniVitePlugins, uniPluginOptions) {
|
||||
const vueOptions = options.vueOptions || (options.vueOptions = {});
|
||||
// if (!hasOwn(vueOptions, 'reactivityTransform')) {
|
||||
// vueOptions.reactivityTransform = true
|
||||
// }
|
||||
if (!vueOptions.include) {
|
||||
vueOptions.include = [];
|
||||
}
|
||||
if (!(0, shared_1.isArray)(vueOptions.include)) {
|
||||
vueOptions.include = [vueOptions.include];
|
||||
}
|
||||
vueOptions.include.push(uni_cli_shared_1.EXTNAME_VUE_RE);
|
||||
const styleOptions = vueOptions.style || (vueOptions.style = {});
|
||||
if (!styleOptions.postcssPlugins) {
|
||||
styleOptions.postcssPlugins = [];
|
||||
}
|
||||
// 解析 scoped 中 deep 等特殊语法
|
||||
styleOptions.postcssPlugins.push((0, uni_cli_shared_1.uniPostcssScopedPlugin)());
|
||||
const templateOptions = vueOptions.template || (vueOptions.template = {});
|
||||
const compilerOptions = templateOptions.compilerOptions || (templateOptions.compilerOptions = {});
|
||||
const { compiler, styleOptions: { postcssPlugins }, compilerOptions: { miniProgram, isNativeTag, isCustomElement, nodeTransforms, directiveTransforms, }, } = uniPluginOptions;
|
||||
if (postcssPlugins) {
|
||||
styleOptions.postcssPlugins.push(...postcssPlugins);
|
||||
}
|
||||
if (compiler) {
|
||||
templateOptions.compiler = compiler;
|
||||
}
|
||||
if (miniProgram) {
|
||||
;
|
||||
compilerOptions.miniProgram = miniProgram;
|
||||
}
|
||||
if (isNativeTag) {
|
||||
const userIsNativeTag = compilerOptions.isNativeTag;
|
||||
compilerOptions.isNativeTag = (tag) => {
|
||||
if (isNativeTag(tag)) {
|
||||
return true;
|
||||
}
|
||||
if (userIsNativeTag && userIsNativeTag(tag)) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
};
|
||||
}
|
||||
if (isCustomElement) {
|
||||
const userIsCustomElement = compilerOptions.isCustomElement;
|
||||
compilerOptions.isCustomElement = (tag) => {
|
||||
if (isCustomElement(tag)) {
|
||||
return true;
|
||||
}
|
||||
if (userIsCustomElement && userIsCustomElement(tag)) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
};
|
||||
}
|
||||
compilerOptions.directiveTransforms = {
|
||||
...compilerOptions.directiveTransforms,
|
||||
...directiveTransforms,
|
||||
};
|
||||
if (!compilerOptions.nodeTransforms) {
|
||||
compilerOptions.nodeTransforms = [];
|
||||
}
|
||||
if (options.platform === 'h5') {
|
||||
templateOptions.transformAssetUrls = (0, uni_cli_shared_1.createUniVueTransformAssetUrls)((0, uni_cli_shared_1.isExternalUrl)(options.base) ? options.base : '');
|
||||
}
|
||||
else {
|
||||
// 替换内置的 transformAssetUrls 逻辑
|
||||
templateOptions.transformAssetUrls = {
|
||||
tags: {},
|
||||
};
|
||||
compilerOptions.nodeTransforms.push(...(0, uni_cli_shared_1.getBaseNodeTransforms)(options.base));
|
||||
}
|
||||
if (nodeTransforms) {
|
||||
compilerOptions.nodeTransforms.push(...nodeTransforms);
|
||||
}
|
||||
// const compatConfig = parseCompatConfigOnce(options.inputDir)
|
||||
// compilerOptions.compatConfig = extend(
|
||||
// compilerOptions.compatConfig || {},
|
||||
// compatConfig
|
||||
// )
|
||||
// App,MP 平台不支持使用静态节点
|
||||
compilerOptions.hoistStatic = false;
|
||||
compilerOptions.root = process.env.UNI_INPUT_DIR;
|
||||
// app-nvue 需要启用 customElement 机制来内联 styles
|
||||
if (process.env.UNI_COMPILER === 'nvue') {
|
||||
vueOptions.customElement = true;
|
||||
if (process.env.UNI_RENDERER_NATIVE !== 'appService') {
|
||||
// nvue 需要使用自己的 compiler,来移除 scoped
|
||||
vueOptions.compiler = (0, utils_1.createNVueCompiler)();
|
||||
}
|
||||
}
|
||||
return vueOptions;
|
||||
}
|
||||
exports.initPluginVueOptions = initPluginVueOptions;
|
||||
function initPluginVueJsxOptions(options, { isCustomElement, }, jsxOptions) {
|
||||
const vueJsxOptions = (0, shared_1.isPlainObject)(options.vueJsxOptions)
|
||||
? options.vueJsxOptions
|
||||
: (options.vueJsxOptions = {});
|
||||
if (!(0, shared_1.hasOwn)(vueJsxOptions, 'optimize')) {
|
||||
vueJsxOptions.optimize = true;
|
||||
}
|
||||
vueJsxOptions.isCustomElement = isCustomElement;
|
||||
if (!vueJsxOptions.babelPlugins) {
|
||||
vueJsxOptions.babelPlugins = [];
|
||||
}
|
||||
if ((0, shared_1.isArray)(jsxOptions.babelPlugins)) {
|
||||
vueJsxOptions.babelPlugins.push(...jsxOptions.babelPlugins);
|
||||
}
|
||||
return vueJsxOptions;
|
||||
}
|
||||
exports.initPluginVueJsxOptions = initPluginVueJsxOptions;
|
||||
function initPluginViteLegacyOptions(options) {
|
||||
const viteLegacyOptions = options.viteLegacyOptions || (options.viteLegacyOptions = {});
|
||||
return viteLegacyOptions;
|
||||
}
|
||||
exports.initPluginViteLegacyOptions = initPluginViteLegacyOptions;
|
||||
Reference in New Issue
Block a user