@dcloudio/uni-cli-shared 3.0.0-alpha-5000720260416001 → 3.0.0-alpha-5000820260420001
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/dist/constants.d.ts +1 -3
- package/dist/constants.js +2 -6
- package/dist/deps.d.ts +1 -0
- package/dist/deps.js +22 -13
- package/dist/dom2/fontFamily.d.ts +4 -0
- package/dist/dom2/fontFamily.js +21 -0
- package/dist/dom2/index.d.ts +2 -0
- package/dist/dom2/index.js +2 -0
- package/dist/dom2/sharedData.d.ts +4 -0
- package/dist/dom2/sharedData.js +38 -5
- package/dist/dom2/vue.d.ts +15 -0
- package/dist/dom2/vue.js +41 -0
- package/dist/easycom.js +13 -9
- package/dist/env/define.d.ts +0 -1
- package/dist/env/define.js +3 -11
- package/dist/hbx/alias.js +48 -10
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/json/uni-x/manifest.d.ts +1 -1
- package/dist/json/uni-x/manifest.js +2 -1
- package/dist/json/utils.js +24 -0
- package/dist/messages/en.d.ts +2 -0
- package/dist/messages/en.js +2 -0
- package/dist/messages/index.d.ts +4 -0
- package/dist/messages/zh_CN.d.ts +2 -0
- package/dist/messages/zh_CN.js +2 -0
- package/dist/uni_modules.cloud.js +28 -13
- package/dist/uni_modules.js +3 -2
- package/dist/uts.js +4 -2
- package/dist/vite/autoImport.js +7 -4
- package/dist/vite/cloud.js +13 -6
- package/dist/vite/extApi.js +4 -1
- package/dist/vite/plugins/json.js +2 -69
- package/dist/vite/plugins/stats.js +2 -1
- package/dist/vite/plugins/uts/uni_modules.js +7 -2
- package/dist/vite/plugins/vitejs/plugins/css.js +6 -4
- package/dist/workers.js +2 -0
- package/dist/x.d.ts +10 -0
- package/dist/x.js +39 -0
- package/lib/dom2/app/@vitejs/plugin-vue/dist/index.cjs +0 -7
- package/lib/dom2/app/@vitejs/plugin-vue/dist/index.mjs +0 -7
- package/lib/dom2/app/@vue/compiler-core/dist/compiler-core.cjs.js +1 -1
- package/lib/dom2/app/@vue/compiler-core/dist/compiler-core.cjs.prod.js +1 -1
- package/lib/dom2/app/@vue/compiler-core/dist/compiler-core.d.ts +1 -0
- package/lib/dom2/app/@vue/compiler-core/dist/compiler-core.esm-bundler.js +1 -1
- package/lib/dom2/app/@vue/compiler-dom/dist/compiler-dom.cjs.js +1 -1
- package/lib/dom2/app/@vue/compiler-dom/dist/compiler-dom.cjs.prod.js +1 -1
- package/lib/dom2/app/@vue/compiler-dom/dist/compiler-dom.esm-browser.js +1 -1
- package/lib/dom2/app/@vue/compiler-dom/dist/compiler-dom.esm-browser.prod.js +1 -1
- package/lib/dom2/app/@vue/compiler-dom/dist/compiler-dom.esm-bundler.js +1 -1
- package/lib/dom2/app/@vue/compiler-dom/dist/compiler-dom.global.js +1 -1
- package/lib/dom2/app/@vue/compiler-dom/dist/compiler-dom.global.prod.js +1 -1
- package/lib/dom2/app/@vue/compiler-sfc/dist/compiler-sfc.cjs.js +348 -120
- package/lib/dom2/app/@vue/compiler-sfc/dist/compiler-sfc.esm-browser.js +99 -56
- package/lib/dom2/app/@vue/compiler-vapor/dist/compiler-vapor.cjs.js +70 -47
- package/lib/dom2/app/@vue/compiler-vapor/dist/compiler-vapor.d.ts +127 -107
- package/lib/dom2/app/@vue/compiler-vapor/dist/compiler-vapor.esm-browser.js +70 -48
- package/lib/dom2/app/@vue/compiler-vapor-dom2/dist/compiler-vapor-dom2.cjs.js +1 -1
- package/lib/dom2/app/@vue/shared/dist/shared.cjs.js +1 -1
- package/lib/dom2/app/@vue/shared/dist/shared.cjs.prod.js +1 -1
- package/lib/dom2/app/@vue/shared/dist/shared.esm-bundler.js +1 -1
- package/package.json +5 -5
|
@@ -12,6 +12,7 @@ const easycom_1 = require("./easycom");
|
|
|
12
12
|
const messages_1 = require("./messages");
|
|
13
13
|
const constants_1 = require("./constants");
|
|
14
14
|
const url_1 = require("./url");
|
|
15
|
+
const x_1 = require("./x");
|
|
15
16
|
function genEncryptEasyComModuleIndex(pluginId, platform, components) {
|
|
16
17
|
const isMp = platform.startsWith('mp-');
|
|
17
18
|
const imports = [];
|
|
@@ -23,7 +24,7 @@ function genEncryptEasyComModuleIndex(pluginId, platform, components) {
|
|
|
23
24
|
ids.push(id);
|
|
24
25
|
}
|
|
25
26
|
let instance = '';
|
|
26
|
-
if (
|
|
27
|
+
if ((0, x_1.isUniAppXAndroidNative)(platform)) {
|
|
27
28
|
instance = (0, easycom_1.genUTSComponentPublicInstanceIdent)(component);
|
|
28
29
|
// 类型
|
|
29
30
|
ids.push(instance);
|
|
@@ -307,14 +308,15 @@ const KNOWN_ASSET_TYPES = [
|
|
|
307
308
|
'txt',
|
|
308
309
|
];
|
|
309
310
|
function findUniModuleFiles(platform, id, inputDir) {
|
|
311
|
+
const useUniAppXAndroidNative = (0, x_1.isUniAppXAndroidNative)(platform);
|
|
310
312
|
return (0, fast_glob_1.sync)(`uni_modules/${id}/**/*`, {
|
|
311
313
|
cwd: inputDir,
|
|
312
314
|
absolute: true,
|
|
313
315
|
ignore: [
|
|
314
316
|
'**/*.md',
|
|
315
|
-
...(
|
|
316
|
-
? [
|
|
317
|
-
: []),
|
|
317
|
+
...(useUniAppXAndroidNative // 仅旧版 Android x 需要扫描 assets
|
|
318
|
+
? []
|
|
319
|
+
: [`**/*.{${KNOWN_ASSET_TYPES.join(',')}}`]),
|
|
318
320
|
],
|
|
319
321
|
});
|
|
320
322
|
}
|
|
@@ -334,6 +336,9 @@ function findLastIndex(array, predicate) {
|
|
|
334
336
|
return -1;
|
|
335
337
|
}
|
|
336
338
|
let encryptUniModules = {};
|
|
339
|
+
function refreshEncryptUniModules(platform, inputDir) {
|
|
340
|
+
encryptUniModules = findCloudEncryptUniModules(platform, inputDir, process.env.UNI_MODULES_ENCRYPT_CACHE_DIR, 'all');
|
|
341
|
+
}
|
|
337
342
|
function resolveEncryptUniModule(id, platform, isX = true) {
|
|
338
343
|
id = id.split('?', 2)[0];
|
|
339
344
|
const parts = id.split('/');
|
|
@@ -367,31 +372,40 @@ function resolveEncryptUniModule(id, platform, isX = true) {
|
|
|
367
372
|
}
|
|
368
373
|
}
|
|
369
374
|
}
|
|
370
|
-
//
|
|
371
|
-
return (0, utils_1.normalizePath)(path_1.default.join(process.env.UNI_INPUT_DIR, `uni_modules/${uniModuleId}?${isX &&
|
|
375
|
+
// 仅旧版 Android x 原生引擎走 uts-proxy,JS 引擎与其他平台统一走 uni_helpers
|
|
376
|
+
return (0, utils_1.normalizePath)(path_1.default.join(process.env.UNI_INPUT_DIR, `uni_modules/${uniModuleId}?${isX && (0, x_1.isUniAppXAndroidNative)(platform)
|
|
377
|
+
? 'uts-proxy'
|
|
378
|
+
: 'uni_helpers'}`));
|
|
372
379
|
}
|
|
373
380
|
}
|
|
374
381
|
}
|
|
375
382
|
exports.resolveEncryptUniModule = resolveEncryptUniModule;
|
|
376
383
|
async function checkEncryptUniModules(inputDir, params, sdkType = 'all') {
|
|
384
|
+
const isHarmonySplitCompile = params.platform === 'app-harmony' && sdkType !== 'all';
|
|
377
385
|
// 初始化指定 sdk 类型的加密插件
|
|
378
386
|
const curEncryptUniModules = findCloudEncryptUniModules(params.platform, inputDir, process.env.UNI_MODULES_ENCRYPT_CACHE_DIR, sdkType);
|
|
379
387
|
if (!Object.keys(curEncryptUniModules).length) {
|
|
388
|
+
// 鸿蒙会按 utssdk/easycom 分两次扫描,这里回填一次全量状态,避免子集扫描把插件类型覆盖掉
|
|
389
|
+
if (isHarmonySplitCompile) {
|
|
390
|
+
refreshEncryptUniModules(params.platform, inputDir);
|
|
391
|
+
}
|
|
380
392
|
return {};
|
|
381
393
|
}
|
|
382
394
|
if (!process.env.UNI_HBUILDERX_PLUGINS) {
|
|
395
|
+
if (isHarmonySplitCompile) {
|
|
396
|
+
refreshEncryptUniModules(params.platform, inputDir);
|
|
397
|
+
}
|
|
383
398
|
return {};
|
|
384
399
|
}
|
|
385
400
|
const cacheDir = process.env.UNI_MODULES_ENCRYPT_CACHE_DIR;
|
|
386
|
-
const { zipFile, modules } = packUploadEncryptUniModules(curEncryptUniModules,
|
|
401
|
+
const { zipFile, modules } = packUploadEncryptUniModules(curEncryptUniModules, params.platform, inputDir, cacheDir);
|
|
387
402
|
if (zipFile) {
|
|
388
403
|
const downloadFile = path_1.default.resolve(cacheDir, 'uni_modules.download.zip');
|
|
389
404
|
const { C, D, R, U } = (0, utils_1.requireUniHelpers)();
|
|
390
405
|
try {
|
|
391
406
|
const isLogin = await C();
|
|
392
|
-
const
|
|
393
|
-
|
|
394
|
-
: '';
|
|
407
|
+
const useUniAppXAndroidNative = (0, x_1.isUniAppXAndroidNative)(params.platform);
|
|
408
|
+
const tips = !useUniAppXAndroidNative ? '(此过程耗时较长)' : '';
|
|
395
409
|
console.log(`正在云编译插件${isLogin ? '' : '(请先登录)'}${tips}:${modules.join(',')}...`);
|
|
396
410
|
let downloadUrl = '';
|
|
397
411
|
try {
|
|
@@ -431,8 +445,9 @@ async function checkEncryptUniModules(inputDir, params, sdkType = 'all') {
|
|
|
431
445
|
}
|
|
432
446
|
}
|
|
433
447
|
else {
|
|
434
|
-
|
|
435
|
-
|
|
448
|
+
const useUniAppXAndroidNative = (0, x_1.isUniAppXAndroidNative)(params.platform);
|
|
449
|
+
// 仅旧版 Android x 需要在缓存命中时额外初始化
|
|
450
|
+
if (useUniAppXAndroidNative) {
|
|
436
451
|
const { R } = (0, utils_1.requireUniHelpers)();
|
|
437
452
|
R({
|
|
438
453
|
dir: process.env.UNI_INPUT_DIR,
|
|
@@ -441,7 +456,7 @@ async function checkEncryptUniModules(inputDir, params, sdkType = 'all') {
|
|
|
441
456
|
}
|
|
442
457
|
}
|
|
443
458
|
// 初始化所有
|
|
444
|
-
|
|
459
|
+
refreshEncryptUniModules(params.platform, inputDir);
|
|
445
460
|
}
|
|
446
461
|
exports.checkEncryptUniModules = checkEncryptUniModules;
|
|
447
462
|
function getUniModulesEncryptType(pluginId) {
|
package/dist/uni_modules.js
CHANGED
|
@@ -7,6 +7,7 @@ exports.parseUTSModuleDeps = exports.capitalize = exports.camelize = exports.par
|
|
|
7
7
|
// 重要:此文件编译后的js,需同步至 vue2 编译器中 uni-cli-shared/lib/uts/uni_modules.js
|
|
8
8
|
const path_1 = __importDefault(require("path"));
|
|
9
9
|
const fs_extra_1 = __importDefault(require("fs-extra"));
|
|
10
|
+
const x_1 = require("./x");
|
|
10
11
|
const extApiProviders = [];
|
|
11
12
|
const extApiPlugins = new Set();
|
|
12
13
|
function getNonTreeShakingPlugins() {
|
|
@@ -228,7 +229,7 @@ function parseInjects(vite = true, platform, language, source, uniModuleRootDir,
|
|
|
228
229
|
// source = `${source}/utssdk/index.uts`
|
|
229
230
|
// }
|
|
230
231
|
}
|
|
231
|
-
else if (
|
|
232
|
+
else if ((0, x_1.isUniAppXJsEngine)()) {
|
|
232
233
|
if (fs_extra_1.default.existsSync(path_1.default.resolve(uniModuleRootDir, 'utssdk', 'app-js', 'index.uts'))) {
|
|
233
234
|
source = `${source}/utssdk/app-js/index.uts`;
|
|
234
235
|
}
|
|
@@ -291,7 +292,7 @@ function parseInject(vite = true, platform, language, source, globalObject, defi
|
|
|
291
292
|
const appOptions = defineOptions.app;
|
|
292
293
|
if (isPlainObject(appOptions)) {
|
|
293
294
|
// js engine 下且存在 app-js,不检查
|
|
294
|
-
const skipCheck = (
|
|
295
|
+
const skipCheck = ((0, x_1.isUniAppXJsEngine)() ||
|
|
295
296
|
process.env.UNI_UTS_PLATFORM === 'app-harmony') &&
|
|
296
297
|
source.includes('app-js');
|
|
297
298
|
if (!skipCheck) {
|
package/dist/uts.js
CHANGED
|
@@ -12,6 +12,8 @@ const unimport_1 = require("unimport");
|
|
|
12
12
|
const hbx_1 = require("./hbx");
|
|
13
13
|
const utils_1 = require("./utils");
|
|
14
14
|
const uni_modules_1 = require("./uni_modules");
|
|
15
|
+
const preprocess_1 = require("./preprocess");
|
|
16
|
+
const x_1 = require("./x");
|
|
15
17
|
function once(fn, ctx = null) {
|
|
16
18
|
let res;
|
|
17
19
|
return ((...args) => {
|
|
@@ -36,7 +38,7 @@ function resolveUTSAppModule(platform, id, importer, includeUTSSDK = true) {
|
|
|
36
38
|
if (parentDir === 'uni_modules' ||
|
|
37
39
|
(includeUTSSDK && parentDir === 'utssdk')) {
|
|
38
40
|
const basedir = parentDir === 'uni_modules' ? 'utssdk' : '';
|
|
39
|
-
if (
|
|
41
|
+
if ((0, x_1.isUniAppXJsEngine)()) {
|
|
40
42
|
// js engine
|
|
41
43
|
if (parentDir === 'uni_modules') {
|
|
42
44
|
const appJsIndex = path_1.default.resolve(id, basedir, 'app-js', 'index.uts');
|
|
@@ -510,7 +512,7 @@ async function parseUniExtApiAutoImports(uniExtApiAutoImports, extApis, parseSou
|
|
|
510
512
|
const filename = `uni_modules/${pluginId}/utssdk/interface.uts`;
|
|
511
513
|
const interfaceFileName = path_1.default.resolve(process.env.UNI_INPUT_DIR, filename);
|
|
512
514
|
if (fs_extra_1.default.existsSync(interfaceFileName)) {
|
|
513
|
-
const ids = await parseExportIdentifiers(interfaceFileName);
|
|
515
|
+
const ids = await parseExportIdentifiers(interfaceFileName, preprocess_1.preUVueJs);
|
|
514
516
|
ids
|
|
515
517
|
// 过滤掉 Uni
|
|
516
518
|
.filter((id) => id !== 'Uni')
|
package/dist/vite/autoImport.js
CHANGED
|
@@ -9,6 +9,7 @@ const uni_shared_1 = require("@dcloudio/uni-shared");
|
|
|
9
9
|
const uts_1 = require("../uts");
|
|
10
10
|
const workers_1 = require("../workers");
|
|
11
11
|
const utils_1 = require("../utils");
|
|
12
|
+
const x_1 = require("../x");
|
|
12
13
|
const uniWebLifeCyclePreset = {
|
|
13
14
|
from: '@dcloudio/uni-app',
|
|
14
15
|
imports: [
|
|
@@ -284,8 +285,10 @@ const vuePreset = {
|
|
|
284
285
|
function initAutoImportOptions(platform, { imports = [], ...userOptions }) {
|
|
285
286
|
rewriteAutoImportOnce();
|
|
286
287
|
const autoImport = [vuePreset];
|
|
287
|
-
//
|
|
288
|
-
if (platform === 'app-ios' ||
|
|
288
|
+
// JS 引擎的 App 平台统一走 vue 生命周期导入
|
|
289
|
+
if (platform === 'app-ios' ||
|
|
290
|
+
platform === 'app-harmony' ||
|
|
291
|
+
(0, x_1.isUniAppXAndroidJsEngine)(platform)) {
|
|
289
292
|
autoImport.push(uniAppLifeCyclePreset);
|
|
290
293
|
}
|
|
291
294
|
else if (platform === 'web') {
|
|
@@ -317,8 +320,8 @@ function initAutoImportOptions(platform, { imports = [], ...userOptions }) {
|
|
|
317
320
|
include: [/\.[u]?ts$/, /\.[u]?vue/],
|
|
318
321
|
exclude,
|
|
319
322
|
imports: imports.concat(
|
|
320
|
-
//
|
|
321
|
-
platform
|
|
323
|
+
// 旧版 Android x 仍由专有编译流程处理,Android Vapor 对齐 iOS 走通用自动导入
|
|
324
|
+
(0, x_1.isUniAppXAndroidNative)(platform) ? [] : autoImport),
|
|
322
325
|
dts: false,
|
|
323
326
|
};
|
|
324
327
|
}
|
package/dist/vite/cloud.js
CHANGED
|
@@ -15,6 +15,8 @@ const uni_modules_1 = require("./plugins/uts/uni_modules");
|
|
|
15
15
|
const utils_3 = require("./utils");
|
|
16
16
|
const json_1 = require("../json");
|
|
17
17
|
const workers_1 = require("../workers");
|
|
18
|
+
const dom2_1 = require("../dom2");
|
|
19
|
+
const x_1 = require("../x");
|
|
18
20
|
function createEncryptCssUrlReplacer(resolve) {
|
|
19
21
|
return async (url, importer) => {
|
|
20
22
|
if (url.startsWith('/') && !url.startsWith('//')) {
|
|
@@ -64,6 +66,7 @@ exports.uniEncryptUniModulesAssetsPlugin = uniEncryptUniModulesAssetsPlugin;
|
|
|
64
66
|
function uniEncryptUniModulesPlugin() {
|
|
65
67
|
let resolvedConfig;
|
|
66
68
|
const isMp = process.env.UNI_UTS_PLATFORM.startsWith('mp-');
|
|
69
|
+
const useUniAppXAndroidNative = (0, x_1.isUniAppXAndroidNative)();
|
|
67
70
|
const encryptModuleOutputFiles = [];
|
|
68
71
|
return {
|
|
69
72
|
name: 'uni:encrypt-uni-modules',
|
|
@@ -92,7 +95,7 @@ function uniEncryptUniModulesPlugin() {
|
|
|
92
95
|
resolvedConfig = config;
|
|
93
96
|
},
|
|
94
97
|
resolveId(id, importer) {
|
|
95
|
-
if (
|
|
98
|
+
if (!useUniAppXAndroidNative) {
|
|
96
99
|
if (resolvedConfig.assetsInclude((0, utils_1.cleanUrl)(id))) {
|
|
97
100
|
id = (0, utils_2.normalizePath)(id);
|
|
98
101
|
if (importer && (id.startsWith('./') || id.startsWith('../'))) {
|
|
@@ -106,7 +109,7 @@ function uniEncryptUniModulesPlugin() {
|
|
|
106
109
|
}
|
|
107
110
|
},
|
|
108
111
|
load(id) {
|
|
109
|
-
if (
|
|
112
|
+
if (!useUniAppXAndroidNative) {
|
|
110
113
|
if (resolvedConfig.assetsInclude((0, utils_1.cleanUrl)(id))) {
|
|
111
114
|
return {
|
|
112
115
|
code: `export default ${JSON.stringify(id.replace(/\0/g, ''))}`,
|
|
@@ -119,8 +122,8 @@ function uniEncryptUniModulesPlugin() {
|
|
|
119
122
|
Object.keys(bundle).forEach((fileName) => {
|
|
120
123
|
if (fileName.endsWith('.module.js')) {
|
|
121
124
|
const uniModuleId = path_1.default.basename(fileName).replace('.module.js', '');
|
|
122
|
-
//
|
|
123
|
-
if (
|
|
125
|
+
// 仅旧版 Android x 不需要 js
|
|
126
|
+
if (!useUniAppXAndroidNative) {
|
|
124
127
|
const newFileName = 'uni_modules/' +
|
|
125
128
|
fileName.replace('.module.js', '/index.module.js');
|
|
126
129
|
bundle[newFileName] = bundle[fileName];
|
|
@@ -171,12 +174,13 @@ function uniEncryptUniModulesPlugin() {
|
|
|
171
174
|
}
|
|
172
175
|
},
|
|
173
176
|
async writeBundle() {
|
|
174
|
-
if (
|
|
177
|
+
if (!useUniAppXAndroidNative) {
|
|
175
178
|
return;
|
|
176
179
|
}
|
|
177
180
|
const uniXKotlinCompiler = process.env.UNI_APP_X_TSC === 'true'
|
|
178
181
|
? (0, uts_1.resolveUTSCompiler)().createUniXKotlinCompilerOnce({
|
|
179
182
|
resolveWorkers: () => (0, workers_1.getWorkers)(),
|
|
183
|
+
sourceFileCallback: (0, dom2_1.initSourceFileCallback)(),
|
|
180
184
|
})
|
|
181
185
|
: null;
|
|
182
186
|
if (uniXKotlinCompiler) {
|
|
@@ -393,7 +397,10 @@ function compileCloudUniModuleWithTsc(platform, pluginDir) {
|
|
|
393
397
|
const isX = process.env.UNI_APP_X === 'true';
|
|
394
398
|
const resolveWorkers = () => (0, workers_1.getWorkers)();
|
|
395
399
|
return compileUniModuleWithTsc(platform, pluginDir, platform === 'app-android'
|
|
396
|
-
? createUniXKotlinCompilerOnce({
|
|
400
|
+
? createUniXKotlinCompilerOnce({
|
|
401
|
+
resolveWorkers,
|
|
402
|
+
sourceFileCallback: (0, dom2_1.initSourceFileCallback)(),
|
|
403
|
+
})
|
|
397
404
|
: platform === 'app-harmony'
|
|
398
405
|
? createUniXArkTSCompilerOnce({ resolveWorkers })
|
|
399
406
|
: createUniXSwiftCompilerOnce({ resolveWorkers }), {
|
package/dist/vite/extApi.js
CHANGED
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.uniUniModulesExtApiPlugin = void 0;
|
|
4
4
|
const uts_1 = require("../uts");
|
|
5
5
|
const resolve_1 = require("../resolve");
|
|
6
|
+
const x_1 = require("../x");
|
|
6
7
|
function uniUniModulesExtApiPlugin() {
|
|
7
8
|
return {
|
|
8
9
|
name: 'uni:uni-modules_ext-api',
|
|
@@ -21,7 +22,9 @@ function uniUniModulesExtApiPlugin() {
|
|
|
21
22
|
},
|
|
22
23
|
};
|
|
23
24
|
const build = {};
|
|
24
|
-
if (
|
|
25
|
+
if (process.env.UNI_UTS_PLATFORM === 'app-ios' ||
|
|
26
|
+
process.env.UNI_UTS_PLATFORM === 'app-harmony' ||
|
|
27
|
+
(0, x_1.isUniAppXAndroidJsEngine)()) {
|
|
25
28
|
build.rollupOptions = rollupOptions;
|
|
26
29
|
}
|
|
27
30
|
return {
|
|
@@ -9,86 +9,19 @@ const json_1 = require("../../json");
|
|
|
9
9
|
const preprocess_1 = require("../../preprocess");
|
|
10
10
|
const utils_1 = require("../utils");
|
|
11
11
|
function uniJsonPlugin() {
|
|
12
|
-
const UTS_CAST_ARRAY_MARKER = '/*__UTS_CAST_UTSJSON_ARRAY__*/';
|
|
13
|
-
const UTS_CAST_OBJECT_MARKER = '/*__UTS_CAST_UTSJSON_OBJECT__*/';
|
|
14
|
-
const IS_UNI_X_ANDROID = process.env.UNI_APP_X === 'true' &&
|
|
15
|
-
process.env.UNI_UTS_PLATFORM === 'app-android';
|
|
16
12
|
return {
|
|
17
13
|
name: 'uni:json',
|
|
18
14
|
enforce: 'pre',
|
|
19
|
-
generateBundle(options, bundle) {
|
|
20
|
-
if (IS_UNI_X_ANDROID) {
|
|
21
|
-
for (const [fileName, file] of Object.entries(bundle)) {
|
|
22
|
-
if (fileName.endsWith('.json.ts')) {
|
|
23
|
-
if (file.type === 'asset' && file.source) {
|
|
24
|
-
const source = file.source.toString();
|
|
25
|
-
if (source.includes(UTS_CAST_ARRAY_MARKER) ||
|
|
26
|
-
source.includes(UTS_CAST_OBJECT_MARKER)) {
|
|
27
|
-
file.source = source
|
|
28
|
-
.replace(new RegExp(UTS_CAST_ARRAY_MARKER.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'), 'g'), ' as UTSJSONObject[]')
|
|
29
|
-
.replace(new RegExp(UTS_CAST_OBJECT_MARKER.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'), 'g'), ' as UTSJSONObject');
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
},
|
|
36
15
|
transform(code, id) {
|
|
37
16
|
// 如果已经被其他插件处理过了,就不再处理,比如 commonjs 插件,ICAPRegistrar.json?commonjs-external
|
|
38
17
|
if (id.startsWith('\0')) {
|
|
39
18
|
return;
|
|
40
19
|
}
|
|
41
|
-
|
|
42
|
-
if (path_1.default.extname(filename) !== '.json') {
|
|
20
|
+
if (path_1.default.extname((0, utils_1.parseVueRequest)(id).filename) !== '.json') {
|
|
43
21
|
return;
|
|
44
22
|
}
|
|
45
|
-
let codeObj = (0, json_1.parseJson)((0, preprocess_1.preJson)(code, id), false, id);
|
|
46
|
-
let codeJson = '';
|
|
47
|
-
if (IS_UNI_X_ANDROID) {
|
|
48
|
-
if (Array.isArray(codeObj)) {
|
|
49
|
-
codeJson +=
|
|
50
|
-
'export default JSON.parseArray(`' +
|
|
51
|
-
JSON.stringify(codeObj, null, 2) +
|
|
52
|
-
'`)' +
|
|
53
|
-
UTS_CAST_ARRAY_MARKER +
|
|
54
|
-
';\n';
|
|
55
|
-
}
|
|
56
|
-
else {
|
|
57
|
-
codeJson +=
|
|
58
|
-
'let __jsonObj = JSON.parseObject(`' +
|
|
59
|
-
JSON.stringify(codeObj, null, 2) +
|
|
60
|
-
'`);\n';
|
|
61
|
-
for (const key in codeObj) {
|
|
62
|
-
if (!Object.hasOwn(codeObj, key))
|
|
63
|
-
continue;
|
|
64
|
-
const element = codeObj[key];
|
|
65
|
-
if (Array.isArray(element)) {
|
|
66
|
-
codeJson += `export const ${key} = __jsonObj?.getArray("${key}")${UTS_CAST_ARRAY_MARKER};\n`;
|
|
67
|
-
}
|
|
68
|
-
else if (typeof element === 'object' && element !== null) {
|
|
69
|
-
codeJson += `export const ${key} = __jsonObj?.get("${key}")${UTS_CAST_OBJECT_MARKER};\n`;
|
|
70
|
-
}
|
|
71
|
-
else if (typeof element === 'string') {
|
|
72
|
-
codeJson += `export const ${key} = __jsonObj?.getString("${key}") ?? '';\n`;
|
|
73
|
-
}
|
|
74
|
-
else if (typeof element === 'number') {
|
|
75
|
-
codeJson += `export const ${key} = __jsonObj?.getNumber("${key}") ?? 0;\n`;
|
|
76
|
-
}
|
|
77
|
-
else if (typeof element === 'boolean') {
|
|
78
|
-
codeJson += `export const ${key} = __jsonObj?.getBoolean("${key}") ?? false;\n`;
|
|
79
|
-
}
|
|
80
|
-
else {
|
|
81
|
-
codeJson += `export const ${key} = __jsonObj?.get("${key}")${UTS_CAST_OBJECT_MARKER};\n`;
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
codeJson += `export default __jsonObj;`;
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
else {
|
|
88
|
-
codeJson = JSON.stringify(codeObj, null, 2);
|
|
89
|
-
}
|
|
90
23
|
return {
|
|
91
|
-
code:
|
|
24
|
+
code: JSON.stringify((0, json_1.parseJson)((0, preprocess_1.preJson)(code, id), false, id), null, 2),
|
|
92
25
|
map: {
|
|
93
26
|
mappings: '',
|
|
94
27
|
},
|
|
@@ -13,7 +13,8 @@ function uniStatsPlugin() {
|
|
|
13
13
|
let resolvedConfig;
|
|
14
14
|
let isManifestChanged = false;
|
|
15
15
|
const shouldTrackManifestChange = process.env.UNI_APP_X === 'true' &&
|
|
16
|
-
process.env.UNI_PLATFORM === 'app
|
|
16
|
+
(process.env.UNI_PLATFORM === 'app' ||
|
|
17
|
+
process.env.UNI_PLATFORM === 'app-harmony');
|
|
17
18
|
let isVapor = shouldTrackManifestChange && process.env.UNI_APP_X_DOM2 === 'true';
|
|
18
19
|
return {
|
|
19
20
|
name: 'uni:app-stats',
|
|
@@ -12,6 +12,7 @@ const uts_1 = require("../../../uts");
|
|
|
12
12
|
const utils_1 = require("../../utils");
|
|
13
13
|
const uni_modules_1 = require("../../../uni_modules");
|
|
14
14
|
const uni_modules_cloud_1 = require("../../../uni_modules.cloud");
|
|
15
|
+
const x_1 = require("../../../x");
|
|
15
16
|
const utils_2 = require("../../../utils");
|
|
16
17
|
const json_1 = require("../../../json");
|
|
17
18
|
const fs_1 = require("../../../fs");
|
|
@@ -19,6 +20,7 @@ const context_1 = require("../../../preprocess/context");
|
|
|
19
20
|
const hbx_1 = require("../../../hbx");
|
|
20
21
|
const console_1 = require("../../../logs/console");
|
|
21
22
|
const workers_1 = require("../../../workers");
|
|
23
|
+
const dom2_1 = require("../../../dom2");
|
|
22
24
|
/* eslint-disable no-restricted-globals */
|
|
23
25
|
const { preprocess } = require('../../../../lib/preprocess');
|
|
24
26
|
function rewriteUniModulesConsoleExpr(fileName, content) {
|
|
@@ -242,7 +244,10 @@ function uniUTSAppUniModulesPlugin(options = {}) {
|
|
|
242
244
|
const uniXKotlinCompiler = process.env.UNI_APP_X_TSC === 'true' &&
|
|
243
245
|
(process.env.UNI_UTS_PLATFORM === 'app-android' ||
|
|
244
246
|
process.env.UNI_UTS_PLATFORM === 'app')
|
|
245
|
-
? createUniXKotlinCompilerOnce({
|
|
247
|
+
? createUniXKotlinCompilerOnce({
|
|
248
|
+
resolveWorkers,
|
|
249
|
+
sourceFileCallback: (0, dom2_1.initSourceFileCallback)(),
|
|
250
|
+
})
|
|
246
251
|
: null;
|
|
247
252
|
const uniXSwiftCompiler = process.env.UNI_APP_X_TSC === 'true' &&
|
|
248
253
|
(process.env.UNI_UTS_PLATFORM === 'app-ios' ||
|
|
@@ -427,7 +432,7 @@ function uniUTSAppUniModulesPlugin(options = {}) {
|
|
|
427
432
|
for (const plugin of plugins) {
|
|
428
433
|
const pluginDir = path_1.default.resolve(inputDir, 'uni_modules', plugin.plugin);
|
|
429
434
|
// 如果是 app-js 环境
|
|
430
|
-
if (
|
|
435
|
+
if ((0, x_1.isUniAppXJsEngine)()) {
|
|
431
436
|
if (fs_extra_1.default.existsSync(path_1.default.resolve(pluginDir, 'utssdk', 'app-js', 'index.uts'))) {
|
|
432
437
|
continue;
|
|
433
438
|
}
|
|
@@ -43,6 +43,7 @@ const preprocess_1 = require("../../../../preprocess");
|
|
|
43
43
|
const uniapp_1 = require("../../../../postcss/plugins/uniapp");
|
|
44
44
|
const cleanString_1 = require("../cleanString");
|
|
45
45
|
const constants_1 = require("../../../../constants");
|
|
46
|
+
const fontFamily_1 = require("../../../../dom2/fontFamily");
|
|
46
47
|
const utils_2 = require("../../../utils/utils");
|
|
47
48
|
const compiler_core_1 = require("@vue/compiler-core");
|
|
48
49
|
const utils_3 = require("../../../../utils");
|
|
@@ -223,7 +224,8 @@ function cssPostPlugin(config, { platform, isJsCode, preserveModules, chunkCssFi
|
|
|
223
224
|
// styles initialization in buildStart causes a styling loss in watch
|
|
224
225
|
const styles = new Map();
|
|
225
226
|
let cssChunks;
|
|
226
|
-
const
|
|
227
|
+
const isDom2 = process.env.UNI_APP_X_DOM2 === 'true';
|
|
228
|
+
const isDom2App = isDom2 && platform.startsWith('app');
|
|
227
229
|
return {
|
|
228
230
|
name: 'vite:css-post',
|
|
229
231
|
buildStart() {
|
|
@@ -240,8 +242,8 @@ function cssPostPlugin(config, { platform, isJsCode, preserveModules, chunkCssFi
|
|
|
240
242
|
return {
|
|
241
243
|
code: modulesCode ||
|
|
242
244
|
(isJsCode
|
|
243
|
-
?
|
|
244
|
-
? `export default ${
|
|
245
|
+
? isDom2App
|
|
246
|
+
? `export default ${(0, fontFamily_1.createJsStylePlaceholder)(id)}`
|
|
245
247
|
: 'export default {}'
|
|
246
248
|
: ''),
|
|
247
249
|
map: { mappings: '' },
|
|
@@ -251,7 +253,7 @@ function cssPostPlugin(config, { platform, isJsCode, preserveModules, chunkCssFi
|
|
|
251
253
|
};
|
|
252
254
|
},
|
|
253
255
|
async renderChunk(_code, chunk, _opts) {
|
|
254
|
-
if (
|
|
256
|
+
if (isDom2) {
|
|
255
257
|
// 通过 generateBundle 实现
|
|
256
258
|
return null;
|
|
257
259
|
}
|
package/dist/workers.js
CHANGED
|
@@ -13,6 +13,7 @@ const json_1 = require("./json");
|
|
|
13
13
|
const uts_1 = require("./uts");
|
|
14
14
|
const uni_modules_1 = require("./vite/plugins/uts/uni_modules");
|
|
15
15
|
const resolve_1 = require("./resolve");
|
|
16
|
+
const dom2_1 = require("./dom2");
|
|
16
17
|
const debugWorkers = (0, debug_1.default)('uni:workers');
|
|
17
18
|
let workersRootDir = null;
|
|
18
19
|
let workersRootDirs = [];
|
|
@@ -76,6 +77,7 @@ function uniWorkersPlugin() {
|
|
|
76
77
|
const uniXKotlinCompiler = platform === 'app-android'
|
|
77
78
|
? (0, uts_1.resolveUTSCompiler)().createUniXKotlinCompilerOnce({
|
|
78
79
|
resolveWorkers,
|
|
80
|
+
sourceFileCallback: (0, dom2_1.initSourceFileCallback)(),
|
|
79
81
|
})
|
|
80
82
|
: null;
|
|
81
83
|
const uniXSwiftCompiler = platform === 'app-ios'
|
package/dist/x.d.ts
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
type AppXPlatform = typeof process.env.UNI_UTS_PLATFORM;
|
|
2
|
+
export declare function isUniAppX(): boolean;
|
|
3
|
+
export declare function isUniAppXAndroid(platform?: AppXPlatform): boolean;
|
|
4
|
+
export declare function isUniAppXIOS(platform?: AppXPlatform): boolean;
|
|
5
|
+
export declare function isUniAppXVapor(): boolean;
|
|
6
|
+
export declare function isUniAppXAndroidVapor(platform?: AppXPlatform): boolean;
|
|
7
|
+
export declare function isUniAppXJsEngine(): boolean;
|
|
8
|
+
export declare function isUniAppXAndroidJsEngine(platform?: AppXPlatform): boolean;
|
|
9
|
+
export declare function isUniAppXAndroidNative(platform?: AppXPlatform): boolean;
|
|
10
|
+
export {};
|
package/dist/x.js
ADDED
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isUniAppXAndroidNative = exports.isUniAppXAndroidJsEngine = exports.isUniAppXJsEngine = exports.isUniAppXAndroidVapor = exports.isUniAppXVapor = exports.isUniAppXIOS = exports.isUniAppXAndroid = exports.isUniAppX = void 0;
|
|
4
|
+
function isUniAppX() {
|
|
5
|
+
return process.env.UNI_APP_X === 'true';
|
|
6
|
+
}
|
|
7
|
+
exports.isUniAppX = isUniAppX;
|
|
8
|
+
function isUniAppXAndroid(platform = process.env.UNI_UTS_PLATFORM) {
|
|
9
|
+
return isUniAppX() && platform === 'app-android';
|
|
10
|
+
}
|
|
11
|
+
exports.isUniAppXAndroid = isUniAppXAndroid;
|
|
12
|
+
function isUniAppXIOS(platform = process.env.UNI_UTS_PLATFORM) {
|
|
13
|
+
return isUniAppX() && platform === 'app-ios';
|
|
14
|
+
}
|
|
15
|
+
exports.isUniAppXIOS = isUniAppXIOS;
|
|
16
|
+
function isUniAppXVapor() {
|
|
17
|
+
return isUniAppX() && process.env.UNI_APP_X_DOM2 === 'true';
|
|
18
|
+
}
|
|
19
|
+
exports.isUniAppXVapor = isUniAppXVapor;
|
|
20
|
+
function isUniAppXAndroidVapor(platform = process.env.UNI_UTS_PLATFORM) {
|
|
21
|
+
return isUniAppXAndroid(platform) && process.env.UNI_APP_X_DOM2 === 'true';
|
|
22
|
+
}
|
|
23
|
+
exports.isUniAppXAndroidVapor = isUniAppXAndroidVapor;
|
|
24
|
+
function isUniAppXJsEngine() {
|
|
25
|
+
return isUniAppX() && process.env.UNI_APP_X_UVUE_SCRIPT_ENGINE === 'js';
|
|
26
|
+
}
|
|
27
|
+
exports.isUniAppXJsEngine = isUniAppXJsEngine;
|
|
28
|
+
function isUniAppXAndroidJsEngine(platform = process.env.UNI_UTS_PLATFORM) {
|
|
29
|
+
return (isUniAppXAndroid(platform) &&
|
|
30
|
+
process.env.UNI_APP_X_UVUE_SCRIPT_ENGINE === 'js');
|
|
31
|
+
}
|
|
32
|
+
exports.isUniAppXAndroidJsEngine = isUniAppXAndroidJsEngine;
|
|
33
|
+
function isUniAppXAndroidNative(platform = process.env.UNI_UTS_PLATFORM) {
|
|
34
|
+
return (isUniAppXAndroid(platform) &&
|
|
35
|
+
// 非 Vapor 或者 Vapor 但使用 native 引擎
|
|
36
|
+
(process.env.UNI_APP_X_DOM2 !== 'true' ||
|
|
37
|
+
process.env.UNI_APP_X_UVUE_SCRIPT_ENGINE === 'native'));
|
|
38
|
+
}
|
|
39
|
+
exports.isUniAppXAndroidNative = isUniAppXAndroidNative;
|
|
@@ -320,13 +320,6 @@ function resolveTemplateCompilerOptions(descriptor, options, ssr) {
|
|
|
320
320
|
expressionPlugins.push("typescript");
|
|
321
321
|
}
|
|
322
322
|
const extraOptions = options.template?.compilerOptions?.extraOptions?.(descriptor);
|
|
323
|
-
if (extraOptions.helper) {
|
|
324
|
-
extraOptions.className = extraOptions.helper.GCN(
|
|
325
|
-
descriptor.filename,
|
|
326
|
-
process.env.UNI_INPUT_DIR
|
|
327
|
-
);
|
|
328
|
-
extraOptions.r = extraOptions.helper.K;
|
|
329
|
-
}
|
|
330
323
|
return {
|
|
331
324
|
...options.template,
|
|
332
325
|
// @ts-expect-error TODO remove when 3.6 is out
|
|
@@ -307,13 +307,6 @@ function resolveTemplateCompilerOptions(descriptor, options, ssr) {
|
|
|
307
307
|
expressionPlugins.push("typescript");
|
|
308
308
|
}
|
|
309
309
|
const extraOptions = options.template?.compilerOptions?.extraOptions?.(descriptor);
|
|
310
|
-
if (extraOptions.helper) {
|
|
311
|
-
extraOptions.className = extraOptions.helper.GCN(
|
|
312
|
-
descriptor.filename,
|
|
313
|
-
process.env.UNI_INPUT_DIR
|
|
314
|
-
);
|
|
315
|
-
extraOptions.r = extraOptions.helper.K;
|
|
316
|
-
}
|
|
317
310
|
return {
|
|
318
311
|
...options.template,
|
|
319
312
|
// @ts-expect-error TODO remove when 3.6 is out
|