@dcloudio/uni-cli-shared 3.0.0-4080720251210001 → 3.0.0-5000320260312001

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.
Files changed (145) hide show
  1. package/dist/constants.d.ts +3 -0
  2. package/dist/constants.js +6 -1
  3. package/dist/deps.js +6 -1
  4. package/dist/dom2/index.d.ts +1 -0
  5. package/dist/dom2/index.js +17 -0
  6. package/dist/dom2/sharedData.d.ts +2 -0
  7. package/dist/dom2/sharedData.js +19 -0
  8. package/dist/easycom.js +34 -5
  9. package/dist/env/define.d.ts +3 -0
  10. package/dist/env/define.js +12 -0
  11. package/dist/hbx/alias.js +15 -17
  12. package/dist/hbx/index.d.ts +1 -1
  13. package/dist/hbx/index.js +4 -2
  14. package/dist/hbx/log.d.ts +5 -0
  15. package/dist/hbx/log.js +44 -1
  16. package/dist/i18n.js +4 -0
  17. package/dist/index.d.ts +1 -0
  18. package/dist/index.js +1 -0
  19. package/dist/json/app/manifest/index.d.ts +1 -0
  20. package/dist/json/app/manifest/index.js +3 -1
  21. package/dist/json/mp/pages.js +0 -5
  22. package/dist/json/pages.d.ts +2 -2
  23. package/dist/json/pages.js +4 -1
  24. package/dist/json/uni-x/index.d.ts +1 -1
  25. package/dist/json/utils.js +31 -22
  26. package/dist/logs/console.js +1 -1
  27. package/dist/logs/index.d.ts +11 -0
  28. package/dist/logs/index.js +34 -1
  29. package/dist/messages/en.d.ts +6 -3
  30. package/dist/messages/en.js +6 -3
  31. package/dist/messages/index.d.ts +11 -5
  32. package/dist/messages/zh_CN.d.ts +5 -2
  33. package/dist/messages/zh_CN.js +5 -2
  34. package/dist/mp/assets.d.ts +1 -0
  35. package/dist/mp/assets.js +27 -1
  36. package/dist/mp/externalClasses.d.ts +38 -2
  37. package/dist/mp/externalClasses.js +90 -4
  38. package/dist/mp/index.d.ts +4 -3
  39. package/dist/mp/index.js +11 -1
  40. package/dist/mp/plugin.d.ts +1 -0
  41. package/dist/mp/plugin.js +14 -1
  42. package/dist/mp/style.d.ts +1 -0
  43. package/dist/mp/style.js +8 -1
  44. package/dist/mp/usingComponents.d.ts +1 -0
  45. package/dist/mp/usingComponents.js +17 -1
  46. package/dist/postcss/index.d.ts +2 -0
  47. package/dist/postcss/index.js +3 -1
  48. package/dist/postcss/plugins/stylePluginExternal.d.ts +17 -0
  49. package/dist/postcss/plugins/stylePluginExternal.js +127 -0
  50. package/dist/postcss/plugins/stylePluginScoped.js +30 -0
  51. package/dist/preprocess/context.js +2 -0
  52. package/dist/preprocess/index.d.ts +9 -6
  53. package/dist/preprocess/index.js +33 -8
  54. package/dist/resolve.js +5 -1
  55. package/dist/uni_modules.js +20 -4
  56. package/dist/utils.d.ts +2 -2
  57. package/dist/utils.js +9 -6
  58. package/dist/utsUtils.d.ts +1 -0
  59. package/dist/utsUtils.js +2 -1
  60. package/dist/vite/autoImport.js +91 -6
  61. package/dist/vite/plugins/console.js +1 -1
  62. package/dist/vite/plugins/cssScoped.js +2 -1
  63. package/dist/vite/plugins/easycom.js +7 -0
  64. package/dist/vite/plugins/json.js +69 -2
  65. package/dist/vite/plugins/pre.js +4 -2
  66. package/dist/vite/plugins/sfc.js +1 -1
  67. package/dist/vite/plugins/stats.js +32 -0
  68. package/dist/vite/plugins/uts/ext-api.js +1 -1
  69. package/dist/vite/plugins/uts/uni_modules.js +12 -0
  70. package/dist/vite/plugins/uts/uvue.js +7 -2
  71. package/dist/vite/plugins/vitejs/plugins/asset.d.ts +1 -0
  72. package/dist/vite/plugins/vitejs/plugins/asset.js +19 -1
  73. package/dist/vite/plugins/vitejs/plugins/css.d.ts +2 -1
  74. package/dist/vite/plugins/vitejs/plugins/css.js +27 -10
  75. package/dist/vite/utils/ast.d.ts +2 -1
  76. package/dist/vite/utils/ast.js +5 -1
  77. package/dist/vue/parse.d.ts +2 -0
  78. package/dist/vue/parse.js +3 -1
  79. package/dist/vue/transforms/index.d.ts +1 -0
  80. package/dist/vue/transforms/index.js +1 -0
  81. package/dist/vue/transforms/transformLineBreak.d.ts +2 -0
  82. package/dist/vue/transforms/transformLineBreak.js +15 -0
  83. package/dist/vue/transforms/transformTag.d.ts +1 -1
  84. package/dist/vue/transforms/transformTag.js +5 -0
  85. package/dist/vue/transforms/x/transformMPBuiltInTag.js +2 -2
  86. package/dist/vue/utils.js +8 -1
  87. package/lib/@vue/compiler-core/dist/compiler-core.cjs.js +42 -23
  88. package/lib/@vue/compiler-core/dist/compiler-core.cjs.prod.js +42 -23
  89. package/lib/@vue/compiler-core/dist/compiler-core.esm-bundler.js +39 -19
  90. package/lib/@vue/compiler-sfc/dist/compiler-sfc.cjs.js +4635 -1024
  91. package/lib/@vue/compiler-sfc/dist/compiler-sfc.esm-browser.js +8762 -7849
  92. package/lib/dom2/app/@vitejs/plugin-vue/LICENSE +21 -0
  93. package/lib/dom2/app/@vitejs/plugin-vue/README.md +278 -0
  94. package/lib/dom2/app/@vitejs/plugin-vue/dist/index.cjs +3353 -0
  95. package/lib/dom2/app/@vitejs/plugin-vue/dist/index.d.cts +113 -0
  96. package/lib/dom2/app/@vitejs/plugin-vue/dist/index.d.mts +111 -0
  97. package/lib/dom2/app/@vitejs/plugin-vue/dist/index.d.ts +113 -0
  98. package/lib/dom2/app/@vitejs/plugin-vue/dist/index.mjs +3338 -0
  99. package/lib/dom2/app/@vitejs/plugin-vue/package.json +50 -0
  100. package/lib/dom2/app/@vue/compiler-core/LICENSE +21 -0
  101. package/lib/dom2/app/@vue/compiler-core/README.md +1 -0
  102. package/lib/dom2/app/@vue/compiler-core/dist/compiler-core.cjs.js +5492 -0
  103. package/lib/dom2/app/@vue/compiler-core/dist/compiler-core.cjs.prod.js +5436 -0
  104. package/lib/dom2/app/@vue/compiler-core/dist/compiler-core.d.ts +1187 -0
  105. package/lib/dom2/app/@vue/compiler-core/dist/compiler-core.esm-bundler.js +4335 -0
  106. package/lib/dom2/app/@vue/compiler-core/index.js +7 -0
  107. package/lib/dom2/app/@vue/compiler-core/package.json +58 -0
  108. package/lib/dom2/app/@vue/compiler-dom/LICENSE +21 -0
  109. package/lib/dom2/app/@vue/compiler-dom/README.md +1 -0
  110. package/lib/dom2/app/@vue/compiler-dom/dist/compiler-dom.cjs.js +762 -0
  111. package/lib/dom2/app/@vue/compiler-dom/dist/compiler-dom.cjs.prod.js +736 -0
  112. package/lib/dom2/app/@vue/compiler-dom/dist/compiler-dom.d.ts +73 -0
  113. package/lib/dom2/app/@vue/compiler-dom/dist/compiler-dom.esm-browser.js +5051 -0
  114. package/lib/dom2/app/@vue/compiler-dom/dist/compiler-dom.esm-browser.prod.js +11 -0
  115. package/lib/dom2/app/@vue/compiler-dom/dist/compiler-dom.esm-bundler.js +557 -0
  116. package/lib/dom2/app/@vue/compiler-dom/dist/compiler-dom.global.js +5234 -0
  117. package/lib/dom2/app/@vue/compiler-dom/dist/compiler-dom.global.prod.js +11 -0
  118. package/lib/dom2/app/@vue/compiler-dom/index.js +7 -0
  119. package/lib/dom2/app/@vue/compiler-dom/package.json +57 -0
  120. package/lib/dom2/app/@vue/compiler-sfc/LICENSE +21 -0
  121. package/lib/dom2/app/@vue/compiler-sfc/README.md +80 -0
  122. package/lib/dom2/app/@vue/compiler-sfc/dist/compiler-sfc.cjs.js +15528 -0
  123. package/lib/dom2/app/@vue/compiler-sfc/dist/compiler-sfc.d.ts +11595 -0
  124. package/lib/dom2/app/@vue/compiler-sfc/dist/compiler-sfc.esm-browser.js +41525 -0
  125. package/lib/dom2/app/@vue/compiler-sfc/package.json +68 -0
  126. package/lib/dom2/app/@vue/compiler-vapor/LICENSE +21 -0
  127. package/lib/dom2/app/@vue/compiler-vapor/README.md +1 -0
  128. package/lib/dom2/app/@vue/compiler-vapor/dist/compiler-vapor.cjs.js +3584 -0
  129. package/lib/dom2/app/@vue/compiler-vapor/dist/compiler-vapor.d.ts +22858 -0
  130. package/lib/dom2/app/@vue/compiler-vapor/dist/compiler-vapor.esm-browser.js +22438 -0
  131. package/lib/dom2/app/@vue/compiler-vapor/package.json +51 -0
  132. package/lib/dom2/app/@vue/compiler-vapor-dom2/dist/compiler-vapor-dom2.cjs.js +1 -0
  133. package/lib/dom2/app/@vue/compiler-vapor-dom2/package.json +56 -0
  134. package/lib/dom2/app/@vue/shared/LICENSE +21 -0
  135. package/lib/dom2/app/@vue/shared/README.md +3 -0
  136. package/lib/dom2/app/@vue/shared/dist/shared.cjs.js +773 -0
  137. package/lib/dom2/app/@vue/shared/dist/shared.cjs.prod.js +773 -0
  138. package/lib/dom2/app/@vue/shared/dist/shared.d.ts +412 -0
  139. package/lib/dom2/app/@vue/shared/dist/shared.esm-bundler.js +688 -0
  140. package/lib/dom2/app/@vue/shared/index.js +7 -0
  141. package/lib/dom2/app/@vue/shared/package.json +47 -0
  142. package/lib/preprocess/lib/preprocess.js +9 -3
  143. package/lib/vapor/@vue/compiler-core/dist/compiler-core.cjs.js +1 -1
  144. package/lib/vapor/@vue/compiler-core/dist/compiler-core.cjs.prod.js +1 -1
  145. package/package.json +8 -6
@@ -1,6 +1,14 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.output = exports.resetOutput = exports.formatWarnMsg = exports.formatInfoMsg = exports.formatErrMsg = void 0;
6
+ exports.onCompileLog = exports.output = exports.resetOutput = exports.formatWarnMsg = exports.formatInfoMsg = exports.formatErrMsg = void 0;
7
+ const picocolors_1 = __importDefault(require("picocolors"));
8
+ const constants_1 = require("../constants");
9
+ const utils_1 = require("../vite/utils/utils");
10
+ const log_1 = require("../hbx/log");
11
+ const utils_2 = require("../vite/plugins/vitejs/utils");
4
12
  var format_1 = require("./format");
5
13
  Object.defineProperty(exports, "formatErrMsg", { enumerable: true, get: function () { return format_1.formatErrMsg; } });
6
14
  Object.defineProperty(exports, "formatInfoMsg", { enumerable: true, get: function () { return format_1.formatInfoMsg; } });
@@ -24,3 +32,28 @@ function output(type, msg) {
24
32
  console[method](msg);
25
33
  }
26
34
  exports.output = output;
35
+ function onCompileLog(type, error, code, relativeFileName, options) {
36
+ const char = type === 'warn' ? constants_1.SPECIAL_CHARS.WARN_BLOCK : constants_1.SPECIAL_CHARS.ERROR_BLOCK;
37
+ if (options?.plugin) {
38
+ // CSS 插件格式
39
+ const colorFn = type === 'warn' ? picocolors_1.default.yellow : (s) => s;
40
+ console[type](char + colorFn(`[plugin:${options.plugin}] ${error.message}`));
41
+ let msg = (0, log_1.formatAtFilename)(relativeFileName, options.line, options.column);
42
+ if (options.line && options.column) {
43
+ msg += `\n${(0, utils_2.generateCodeFrame)(code, {
44
+ line: options.line,
45
+ column: options.column,
46
+ }).replace(/\t/g, ' ')}\n`;
47
+ }
48
+ console.log(msg + char);
49
+ }
50
+ else {
51
+ console[type](char + type + ': ' + error.message + (error.loc ? '' : char));
52
+ if (error.loc) {
53
+ const start = error.loc.start;
54
+ console.log('at ' + relativeFileName + ':' + start.line + ':' + start.column);
55
+ console.log((0, utils_1.generateCodeFrameColumns)(code, error.loc) + char);
56
+ }
57
+ }
58
+ }
59
+ exports.onCompileLog = onCompileLog;
@@ -2,15 +2,15 @@ declare const _default: {
2
2
  readonly 'app.compiler.version': "Compiler version: {version}";
3
3
  readonly compiling: "Compiling...";
4
4
  readonly 'dev.performance': "Please note that in running mode, due to log output, sourcemap, and uncompressed source code, the performance and package size are not as good as release mode.";
5
- readonly 'dev.exclusion': "Please configure the antivirus software to set up an exclusion list for scanning, reducing system resource consumption. [详情](https://uniapp.dcloud.net.cn/uni-app-x/compiler/#tips)";
6
5
  readonly 'dev.performance.nvue': "Especially the sourcemap of app-nvue has a greater impact";
7
6
  readonly 'dev.performance.mp': "To officially release, please click the release menu or use the cli release command to release";
8
7
  readonly 'dev.performance.web': "\nVite is compiled on demand, and clicking on an uncompiled page at runtime will compile first and then load, resulting in a slower display, and there is no such problem after release.";
9
8
  readonly 'build.done': "DONE Build complete.";
10
- readonly 'dev.watching.start': "Compiling...";
9
+ readonly 'dev.watching.start': "Incremental Compiling...";
11
10
  readonly 'dev.watching.end': "DONE Build complete. Watching for changes...";
12
11
  readonly 'dev.watching.end.pages': "DONE Build complete. PAGES:{pages}";
13
12
  readonly 'dev.watching.end.files': "DONE Build complete. FILES:{files}";
13
+ readonly 'dev.watching.restart.vapor': "DONE Restart required. Switching vapor mode requires restarting to take effect.";
14
14
  readonly 'build.failed': "DONE Build failed.";
15
15
  readonly 'compiler.build.failed': "Build failed with errors.";
16
16
  readonly 'stat.warn.appid': "The current application is not configured with Appid, and uni statistics cannot be used. For details, see https://ask.dcloud.net.cn/article/36303";
@@ -29,9 +29,11 @@ declare const _default: {
29
29
  readonly 'uts.ios.standard.tips': "When the standard playground runs to an IOS phone, the uts plugin is temporarily not supported. If you need to call the uts plugin, please use a custom playground";
30
30
  readonly 'prompt.run.message': "Run method: open {devtools}, import {outputDir} run.";
31
31
  readonly 'prompt.run.devtools.app': "HBuilderX";
32
+ readonly 'prompt.run.devtools.app-harmony': "HBuilderX";
33
+ readonly 'prompt.run.devtools.mp-harmony': "HBuilderX";
32
34
  readonly 'prompt.run.devtools.mp-alipay': "Alipay Mini Program Devtools";
33
35
  readonly 'prompt.run.devtools.mp-baidu': "Baidu Mini Program Devtools";
34
- readonly 'prompt.run.devtools.mp--kuaishou': "Kuaishou Mini Program Devtools";
36
+ readonly 'prompt.run.devtools.mp-kuaishou': "Kuaishou Mini Program Devtools";
35
37
  readonly 'prompt.run.devtools.mp-lark': "Lark Mini Program Devtools";
36
38
  readonly 'prompt.run.devtools.mp-qq': "QQ Mini Program Devtools";
37
39
  readonly 'prompt.run.devtools.mp-toutiao': "Douyin Mini Program Devtools";
@@ -45,5 +47,6 @@ declare const _default: {
45
47
  readonly 'uvue.dev.watching.end.empty': "The compilation outcome remains unchanged; there is no need to synchronize.";
46
48
  readonly 'uni_modules.import': "Plug-in [{0}] only supports @/uni_modules/{1}.";
47
49
  readonly 'pages.json.page.notfound': "The page \"{pagePath}\" does not exist.";
50
+ readonly 'pages.json.page.slash': "The Path \"{pagePath}\" cannot start with \"/\"";
48
51
  };
49
52
  export default _default;
@@ -4,15 +4,15 @@ exports.default = {
4
4
  'app.compiler.version': 'Compiler version: {version}',
5
5
  compiling: 'Compiling...',
6
6
  'dev.performance': 'Please note that in running mode, due to log output, sourcemap, and uncompressed source code, the performance and package size are not as good as release mode.',
7
- 'dev.exclusion': 'Please configure the antivirus software to set up an exclusion list for scanning, reducing system resource consumption. [详情](https://uniapp.dcloud.net.cn/uni-app-x/compiler/#tips)',
8
7
  'dev.performance.nvue': 'Especially the sourcemap of app-nvue has a greater impact',
9
8
  'dev.performance.mp': 'To officially release, please click the release menu or use the cli release command to release',
10
9
  'dev.performance.web': '\nVite is compiled on demand, and clicking on an uncompiled page at runtime will compile first and then load, resulting in a slower display, and there is no such problem after release.',
11
10
  'build.done': 'DONE Build complete.',
12
- 'dev.watching.start': 'Compiling...',
11
+ 'dev.watching.start': 'Incremental Compiling...',
13
12
  'dev.watching.end': 'DONE Build complete. Watching for changes...',
14
13
  'dev.watching.end.pages': 'DONE Build complete. PAGES:{pages}',
15
14
  'dev.watching.end.files': 'DONE Build complete. FILES:{files}',
15
+ 'dev.watching.restart.vapor': 'DONE Restart required. Switching vapor mode requires restarting to take effect.',
16
16
  'build.failed': 'DONE Build failed.',
17
17
  'compiler.build.failed': 'Build failed with errors.',
18
18
  'stat.warn.appid': 'The current application is not configured with Appid, and uni statistics cannot be used. For details, see https://ask.dcloud.net.cn/article/36303',
@@ -31,9 +31,11 @@ exports.default = {
31
31
  'uts.ios.standard.tips': 'When the standard playground runs to an IOS phone, the uts plugin is temporarily not supported. If you need to call the uts plugin, please use a custom playground',
32
32
  'prompt.run.message': 'Run method: open {devtools}, import {outputDir} run.',
33
33
  'prompt.run.devtools.app': 'HBuilderX',
34
+ 'prompt.run.devtools.app-harmony': 'HBuilderX',
35
+ 'prompt.run.devtools.mp-harmony': 'HBuilderX',
34
36
  'prompt.run.devtools.mp-alipay': 'Alipay Mini Program Devtools',
35
37
  'prompt.run.devtools.mp-baidu': 'Baidu Mini Program Devtools',
36
- 'prompt.run.devtools.mp--kuaishou': 'Kuaishou Mini Program Devtools',
38
+ 'prompt.run.devtools.mp-kuaishou': 'Kuaishou Mini Program Devtools',
37
39
  'prompt.run.devtools.mp-lark': 'Lark Mini Program Devtools',
38
40
  'prompt.run.devtools.mp-qq': 'QQ Mini Program Devtools',
39
41
  'prompt.run.devtools.mp-toutiao': 'Douyin Mini Program Devtools',
@@ -47,4 +49,5 @@ exports.default = {
47
49
  'uvue.dev.watching.end.empty': 'The compilation outcome remains unchanged; there is no need to synchronize.',
48
50
  'uni_modules.import': 'Plug-in [{0}] only supports @/uni_modules/{1}.',
49
51
  'pages.json.page.notfound': 'The page "{pagePath}" does not exist.',
52
+ 'pages.json.page.slash': 'The Path "{pagePath}" cannot start with "/"',
50
53
  };
@@ -2,7 +2,6 @@ export declare const M: {
2
2
  readonly 'app.compiler.version': "编译器版本:{version}";
3
3
  readonly compiling: "正在编译中...";
4
4
  readonly 'dev.performance': "请注意运行模式下,因日志输出、sourcemap 以及未压缩源码等原因,性能和包体积,均不及发行模式。";
5
- readonly 'dev.exclusion': "请在杀毒软件中设置扫描排除名单,减少系统资源消耗。[详情](https://uniapp.dcloud.net.cn/uni-app-x/compiler/#tips)";
6
5
  readonly 'dev.performance.nvue': "尤其是 app-nvue 的 sourcemap 影响较大";
7
6
  readonly 'dev.performance.mp': "若要正式发布,请点击发行菜单或使用 cli 发布命令进行发布";
8
7
  readonly 'dev.performance.web': "\nvite是按需编译,运行时点击某个未编译页面会先编译后加载,导致显示较慢,发行后无此问题。";
@@ -11,6 +10,7 @@ export declare const M: {
11
10
  readonly 'dev.watching.end': "DONE Build complete. Watching for changes...";
12
11
  readonly 'dev.watching.end.pages': "DONE Build complete. PAGES:{pages}";
13
12
  readonly 'dev.watching.end.files': "DONE Build complete. FILES:{files}";
13
+ readonly 'dev.watching.restart.vapor': "DONE Restart required. 切换蒸汽模式需要重新运行才能生效。";
14
14
  readonly 'build.failed': "DONE Build failed.";
15
15
  readonly 'compiler.build.failed': "编译失败";
16
16
  readonly 'stat.warn.appid': "当前应用未配置 appid,无法使用 uni 统计,详情参考:https://ask.dcloud.net.cn/article/36303";
@@ -29,9 +29,11 @@ export declare const M: {
29
29
  readonly 'uts.ios.standard.tips': "iOS手机在标准基座真机运行暂不支持uts插件,如需调用uts插件请使用自定义基座";
30
30
  readonly 'prompt.run.message': "运行方式:打开 {devtools}, 导入 {outputDir} 运行。";
31
31
  readonly 'prompt.run.devtools.app': "HBuilderX";
32
+ readonly 'prompt.run.devtools.app-harmony': "HBuilderX";
33
+ readonly 'prompt.run.devtools.mp-harmony': "HBuilderX";
32
34
  readonly 'prompt.run.devtools.mp-alipay': "支付宝小程序开发者工具";
33
35
  readonly 'prompt.run.devtools.mp-baidu': "百度开发者工具";
34
- readonly 'prompt.run.devtools.mp--kuaishou': "快手开发者工具";
36
+ readonly 'prompt.run.devtools.mp-kuaishou': "快手开发者工具";
35
37
  readonly 'prompt.run.devtools.mp-lark': "飞书开发者工具";
36
38
  readonly 'prompt.run.devtools.mp-qq': "QQ小程序开发者工具";
37
39
  readonly 'prompt.run.devtools.mp-toutiao': "抖音开发者工具";
@@ -45,19 +47,20 @@ export declare const M: {
45
47
  readonly 'uvue.dev.watching.end.empty': "本次代码变更,编译结果未发生变化,跳过同步手机端程序文件。";
46
48
  readonly 'uni_modules.import': "插件[{0}]仅支持 @/uni_modules/{1} 方式引入,不支持直接导入内部文件 {2}。";
47
49
  readonly 'pages.json.page.notfound': "页面\"{pagePath}\"不存在,请确保填写的页面路径不包含文件后缀,且必须与真实的文件路径大小写保持一致。";
50
+ readonly 'pages.json.page.slash': "路径 \"{pagePath}\" 不能以 \"/\" 开头";
48
51
  } | {
49
52
  readonly 'app.compiler.version': "Compiler version: {version}";
50
53
  readonly compiling: "Compiling...";
51
54
  readonly 'dev.performance': "Please note that in running mode, due to log output, sourcemap, and uncompressed source code, the performance and package size are not as good as release mode.";
52
- readonly 'dev.exclusion': "Please configure the antivirus software to set up an exclusion list for scanning, reducing system resource consumption. [详情](https://uniapp.dcloud.net.cn/uni-app-x/compiler/#tips)";
53
55
  readonly 'dev.performance.nvue': "Especially the sourcemap of app-nvue has a greater impact";
54
56
  readonly 'dev.performance.mp': "To officially release, please click the release menu or use the cli release command to release";
55
57
  readonly 'dev.performance.web': "\nVite is compiled on demand, and clicking on an uncompiled page at runtime will compile first and then load, resulting in a slower display, and there is no such problem after release.";
56
58
  readonly 'build.done': "DONE Build complete.";
57
- readonly 'dev.watching.start': "Compiling...";
59
+ readonly 'dev.watching.start': "Incremental Compiling...";
58
60
  readonly 'dev.watching.end': "DONE Build complete. Watching for changes...";
59
61
  readonly 'dev.watching.end.pages': "DONE Build complete. PAGES:{pages}";
60
62
  readonly 'dev.watching.end.files': "DONE Build complete. FILES:{files}";
63
+ readonly 'dev.watching.restart.vapor': "DONE Restart required. Switching vapor mode requires restarting to take effect.";
61
64
  readonly 'build.failed': "DONE Build failed.";
62
65
  readonly 'compiler.build.failed': "Build failed with errors.";
63
66
  readonly 'stat.warn.appid': "The current application is not configured with Appid, and uni statistics cannot be used. For details, see https://ask.dcloud.net.cn/article/36303";
@@ -76,9 +79,11 @@ export declare const M: {
76
79
  readonly 'uts.ios.standard.tips': "When the standard playground runs to an IOS phone, the uts plugin is temporarily not supported. If you need to call the uts plugin, please use a custom playground";
77
80
  readonly 'prompt.run.message': "Run method: open {devtools}, import {outputDir} run.";
78
81
  readonly 'prompt.run.devtools.app': "HBuilderX";
82
+ readonly 'prompt.run.devtools.app-harmony': "HBuilderX";
83
+ readonly 'prompt.run.devtools.mp-harmony': "HBuilderX";
79
84
  readonly 'prompt.run.devtools.mp-alipay': "Alipay Mini Program Devtools";
80
85
  readonly 'prompt.run.devtools.mp-baidu': "Baidu Mini Program Devtools";
81
- readonly 'prompt.run.devtools.mp--kuaishou': "Kuaishou Mini Program Devtools";
86
+ readonly 'prompt.run.devtools.mp-kuaishou': "Kuaishou Mini Program Devtools";
82
87
  readonly 'prompt.run.devtools.mp-lark': "Lark Mini Program Devtools";
83
88
  readonly 'prompt.run.devtools.mp-qq': "QQ Mini Program Devtools";
84
89
  readonly 'prompt.run.devtools.mp-toutiao': "Douyin Mini Program Devtools";
@@ -92,4 +97,5 @@ export declare const M: {
92
97
  readonly 'uvue.dev.watching.end.empty': "The compilation outcome remains unchanged; there is no need to synchronize.";
93
98
  readonly 'uni_modules.import': "Plug-in [{0}] only supports @/uni_modules/{1}.";
94
99
  readonly 'pages.json.page.notfound': "The page \"{pagePath}\" does not exist.";
100
+ readonly 'pages.json.page.slash': "The Path \"{pagePath}\" cannot start with \"/\"";
95
101
  };
@@ -2,7 +2,6 @@ declare const _default: {
2
2
  readonly 'app.compiler.version': "编译器版本:{version}";
3
3
  readonly compiling: "正在编译中...";
4
4
  readonly 'dev.performance': "请注意运行模式下,因日志输出、sourcemap 以及未压缩源码等原因,性能和包体积,均不及发行模式。";
5
- readonly 'dev.exclusion': "请在杀毒软件中设置扫描排除名单,减少系统资源消耗。[详情](https://uniapp.dcloud.net.cn/uni-app-x/compiler/#tips)";
6
5
  readonly 'dev.performance.nvue': "尤其是 app-nvue 的 sourcemap 影响较大";
7
6
  readonly 'dev.performance.mp': "若要正式发布,请点击发行菜单或使用 cli 发布命令进行发布";
8
7
  readonly 'dev.performance.web': "\nvite是按需编译,运行时点击某个未编译页面会先编译后加载,导致显示较慢,发行后无此问题。";
@@ -11,6 +10,7 @@ declare const _default: {
11
10
  readonly 'dev.watching.end': "DONE Build complete. Watching for changes...";
12
11
  readonly 'dev.watching.end.pages': "DONE Build complete. PAGES:{pages}";
13
12
  readonly 'dev.watching.end.files': "DONE Build complete. FILES:{files}";
13
+ readonly 'dev.watching.restart.vapor': "DONE Restart required. 切换蒸汽模式需要重新运行才能生效。";
14
14
  readonly 'build.failed': "DONE Build failed.";
15
15
  readonly 'compiler.build.failed': "编译失败";
16
16
  readonly 'stat.warn.appid': "当前应用未配置 appid,无法使用 uni 统计,详情参考:https://ask.dcloud.net.cn/article/36303";
@@ -29,9 +29,11 @@ declare const _default: {
29
29
  readonly 'uts.ios.standard.tips': "iOS手机在标准基座真机运行暂不支持uts插件,如需调用uts插件请使用自定义基座";
30
30
  readonly 'prompt.run.message': "运行方式:打开 {devtools}, 导入 {outputDir} 运行。";
31
31
  readonly 'prompt.run.devtools.app': "HBuilderX";
32
+ readonly 'prompt.run.devtools.app-harmony': "HBuilderX";
33
+ readonly 'prompt.run.devtools.mp-harmony': "HBuilderX";
32
34
  readonly 'prompt.run.devtools.mp-alipay': "支付宝小程序开发者工具";
33
35
  readonly 'prompt.run.devtools.mp-baidu': "百度开发者工具";
34
- readonly 'prompt.run.devtools.mp--kuaishou': "快手开发者工具";
36
+ readonly 'prompt.run.devtools.mp-kuaishou': "快手开发者工具";
35
37
  readonly 'prompt.run.devtools.mp-lark': "飞书开发者工具";
36
38
  readonly 'prompt.run.devtools.mp-qq': "QQ小程序开发者工具";
37
39
  readonly 'prompt.run.devtools.mp-toutiao': "抖音开发者工具";
@@ -45,5 +47,6 @@ declare const _default: {
45
47
  readonly 'uvue.dev.watching.end.empty': "本次代码变更,编译结果未发生变化,跳过同步手机端程序文件。";
46
48
  readonly 'uni_modules.import': "插件[{0}]仅支持 @/uni_modules/{1} 方式引入,不支持直接导入内部文件 {2}。";
47
49
  readonly 'pages.json.page.notfound': "页面\"{pagePath}\"不存在,请确保填写的页面路径不包含文件后缀,且必须与真实的文件路径大小写保持一致。";
50
+ readonly 'pages.json.page.slash': "路径 \"{pagePath}\" 不能以 \"/\" 开头";
48
51
  };
49
52
  export default _default;
@@ -4,7 +4,6 @@ exports.default = {
4
4
  'app.compiler.version': '编译器版本:{version}',
5
5
  compiling: '正在编译中...',
6
6
  'dev.performance': '请注意运行模式下,因日志输出、sourcemap 以及未压缩源码等原因,性能和包体积,均不及发行模式。',
7
- 'dev.exclusion': '请在杀毒软件中设置扫描排除名单,减少系统资源消耗。[详情](https://uniapp.dcloud.net.cn/uni-app-x/compiler/#tips)',
8
7
  'dev.performance.nvue': '尤其是 app-nvue 的 sourcemap 影响较大',
9
8
  'dev.performance.mp': '若要正式发布,请点击发行菜单或使用 cli 发布命令进行发布',
10
9
  'dev.performance.web': '\nvite是按需编译,运行时点击某个未编译页面会先编译后加载,导致显示较慢,发行后无此问题。',
@@ -13,6 +12,7 @@ exports.default = {
13
12
  'dev.watching.end': 'DONE Build complete. Watching for changes...',
14
13
  'dev.watching.end.pages': 'DONE Build complete. PAGES:{pages}',
15
14
  'dev.watching.end.files': 'DONE Build complete. FILES:{files}',
15
+ 'dev.watching.restart.vapor': 'DONE Restart required. 切换蒸汽模式需要重新运行才能生效。',
16
16
  'build.failed': 'DONE Build failed.',
17
17
  'compiler.build.failed': '编译失败',
18
18
  'stat.warn.appid': '当前应用未配置 appid,无法使用 uni 统计,详情参考:https://ask.dcloud.net.cn/article/36303',
@@ -31,9 +31,11 @@ exports.default = {
31
31
  'uts.ios.standard.tips': 'iOS手机在标准基座真机运行暂不支持uts插件,如需调用uts插件请使用自定义基座',
32
32
  'prompt.run.message': '运行方式:打开 {devtools}, 导入 {outputDir} 运行。',
33
33
  'prompt.run.devtools.app': 'HBuilderX',
34
+ 'prompt.run.devtools.app-harmony': 'HBuilderX',
35
+ 'prompt.run.devtools.mp-harmony': 'HBuilderX',
34
36
  'prompt.run.devtools.mp-alipay': '支付宝小程序开发者工具',
35
37
  'prompt.run.devtools.mp-baidu': '百度开发者工具',
36
- 'prompt.run.devtools.mp--kuaishou': '快手开发者工具',
38
+ 'prompt.run.devtools.mp-kuaishou': '快手开发者工具',
37
39
  'prompt.run.devtools.mp-lark': '飞书开发者工具',
38
40
  'prompt.run.devtools.mp-qq': 'QQ小程序开发者工具',
39
41
  'prompt.run.devtools.mp-toutiao': '抖音开发者工具',
@@ -48,4 +50,5 @@ exports.default = {
48
50
  'uvue.dev.watching.end.empty': '本次代码变更,编译结果未发生变化,跳过同步手机端程序文件。',
49
51
  'uni_modules.import': '插件[{0}]仅支持 @/uni_modules/{1} 方式引入,不支持直接导入内部文件 {2}。',
50
52
  'pages.json.page.notfound': '页面"{pagePath}"不存在,请确保填写的页面路径不包含文件后缀,且必须与真实的文件路径大小写保持一致。',
53
+ 'pages.json.page.slash': '路径 "{pagePath}" 不能以 "/" 开头',
51
54
  };
@@ -1 +1,2 @@
1
1
  export declare function isMiniProgramAssetFile(filename: string): boolean;
2
+ export declare function createCopyComponentDirs(dir: string): string[];
package/dist/mp/assets.js CHANGED
@@ -3,8 +3,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.isMiniProgramAssetFile = void 0;
6
+ exports.createCopyComponentDirs = exports.isMiniProgramAssetFile = void 0;
7
+ const fs_1 = __importDefault(require("fs"));
7
8
  const path_1 = __importDefault(require("path"));
9
+ const utils_1 = require("../vite/plugins/vitejs/utils");
10
+ const json_1 = require("../json");
8
11
  const EXTNAMES = [
9
12
  '.png',
10
13
  '.jpg',
@@ -31,3 +34,26 @@ function isMiniProgramAssetFile(filename) {
31
34
  return EXTNAMES.includes(path_1.default.extname(filename));
32
35
  }
33
36
  exports.isMiniProgramAssetFile = isMiniProgramAssetFile;
37
+ function createCopyComponentDirs(dir) {
38
+ const dirs = [dir];
39
+ const uniModulesDir = 'uni_modules/*/' + dir + '/**/*';
40
+ dirs.push(uniModulesDir);
41
+ const inputDir = process.env.UNI_INPUT_DIR;
42
+ const platform = process.env.UNI_PLATFORM;
43
+ if (!inputDir || !platform) {
44
+ return dirs;
45
+ }
46
+ const pagesJsonFile = path_1.default.resolve((0, utils_1.normalizePath)(inputDir), 'pages.json');
47
+ if (!fs_1.default.existsSync(pagesJsonFile)) {
48
+ return dirs;
49
+ }
50
+ const { appJson } = (0, json_1.parseMiniProgramPagesJson)(fs_1.default.readFileSync(pagesJsonFile, 'utf8'), platform, { subpackages: true });
51
+ const roots = Object.values(appJson.subPackages || appJson.subpackages || {})
52
+ .map(({ root }) => root)
53
+ .filter(Boolean);
54
+ roots.forEach((root) => {
55
+ dirs.push((0, utils_1.normalizePath)(path_1.default.join(root, dir)), (0, utils_1.normalizePath)(path_1.default.join(root, uniModulesDir)));
56
+ });
57
+ return dirs;
58
+ }
59
+ exports.createCopyComponentDirs = createCopyComponentDirs;
@@ -1,5 +1,41 @@
1
1
  import { type Program } from '@babel/types';
2
+ import type { SFCStyleBlock } from '@vue/compiler-sfc';
3
+ /**
4
+ * 页面使用的 externalClasses 信息
5
+ * - staticClasses: 静态绑定的 class 值集合,如 my-class="foo" 中的 "foo"
6
+ * - hasDynamic: 是否存在动态绑定,如 :my-class="bar"
7
+ * - hasAppAndPageStyle: 是否存在 styleIsolation: 'app-and-page'
8
+ */
9
+ export interface PageExternalClassesInfo {
10
+ staticClasses: Set<string>;
11
+ hasDynamic: boolean;
12
+ hasAppAndPageStyle?: boolean;
13
+ }
14
+ export type StyleIsolation = 'isolated' | 'app' | 'app-and-page';
15
+ export declare function findPageExternalClasses(filename: string): PageExternalClassesInfo | undefined;
16
+ export declare function updatePageExternalClasses(filename: string, info: PageExternalClassesInfo): void;
17
+ export declare function addPageExternalClasses(filename: string, staticClasses: string[], hasDynamic: boolean, hasAppAndPageStyle?: boolean): void;
18
+ export declare function clearPageExternalClasses(filename: string): void;
2
19
  export declare function hasExternalClasses(code: string): boolean;
3
- export declare function findMiniProgramComponentExternalClasses(filename: string): string[] | undefined;
4
- export declare function updateMiniProgramComponentExternalClasses(filename: string, classes: string[]): void;
20
+ export declare function findMiniProgramComponentExternalClasses(filename: string): {
21
+ mtime: number;
22
+ classes: string[];
23
+ } | undefined;
24
+ export declare function updateMiniProgramComponentExternalClasses(filename: string, value: {
25
+ mtime: number;
26
+ classes: string[];
27
+ }): void;
5
28
  export declare function parseExternalClasses(ast: Program): string[];
29
+ export declare function parseStyleIsolation(ast: Program): StyleIsolation | '';
30
+ /**
31
+ * 目前只有小程序平台才会走这个逻辑
32
+ * @param pagePahth
33
+ * @param value
34
+ * @param isPage
35
+ */
36
+ export declare function updateMiniProgramComponentStyleIsolation(pagePahth: string, value: StyleIsolation, isPage?: boolean): void;
37
+ export declare function findMiniProgramComponentStyleIsolation(pagePahth: string): {
38
+ styleIsolation: StyleIsolation;
39
+ isPage: boolean;
40
+ } | undefined;
41
+ export declare function createDefaultSFCStyleBlock(source: string): SFCStyleBlock;
@@ -1,19 +1,50 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.parseExternalClasses = exports.updateMiniProgramComponentExternalClasses = exports.findMiniProgramComponentExternalClasses = exports.hasExternalClasses = void 0;
3
+ exports.createDefaultSFCStyleBlock = exports.findMiniProgramComponentStyleIsolation = exports.updateMiniProgramComponentStyleIsolation = exports.parseStyleIsolation = exports.parseExternalClasses = exports.updateMiniProgramComponentExternalClasses = exports.findMiniProgramComponentExternalClasses = exports.hasExternalClasses = exports.clearPageExternalClasses = exports.addPageExternalClasses = exports.updatePageExternalClasses = exports.findPageExternalClasses = void 0;
4
4
  const types_1 = require("@babel/types");
5
5
  const estree_walker_1 = require("estree-walker");
6
+ const utils_1 = require("../utils");
6
7
  const externalClassesCache = new Map();
8
+ const pageStyleIsolationCache = new Map();
9
+ const pageExternalClassesCache = new Map();
10
+ function findPageExternalClasses(filename) {
11
+ return pageExternalClassesCache.get((0, utils_1.normalizePath)(filename));
12
+ }
13
+ exports.findPageExternalClasses = findPageExternalClasses;
14
+ function updatePageExternalClasses(filename, info) {
15
+ pageExternalClassesCache.set((0, utils_1.normalizePath)(filename), info);
16
+ }
17
+ exports.updatePageExternalClasses = updatePageExternalClasses;
18
+ function addPageExternalClasses(filename, staticClasses, hasDynamic, hasAppAndPageStyle) {
19
+ const normalizedFilename = (0, utils_1.normalizePath)(filename);
20
+ let info = pageExternalClassesCache.get(normalizedFilename);
21
+ if (!info) {
22
+ info = { staticClasses: new Set(), hasDynamic: false };
23
+ pageExternalClassesCache.set(normalizedFilename, info);
24
+ }
25
+ staticClasses.forEach((cls) => info.staticClasses.add(cls));
26
+ if (hasDynamic) {
27
+ info.hasDynamic = true;
28
+ }
29
+ if (hasAppAndPageStyle) {
30
+ info.hasAppAndPageStyle = true;
31
+ }
32
+ }
33
+ exports.addPageExternalClasses = addPageExternalClasses;
34
+ function clearPageExternalClasses(filename) {
35
+ pageExternalClassesCache.delete((0, utils_1.normalizePath)(filename));
36
+ }
37
+ exports.clearPageExternalClasses = clearPageExternalClasses;
7
38
  function hasExternalClasses(code) {
8
39
  return code.includes('externalClasses');
9
40
  }
10
41
  exports.hasExternalClasses = hasExternalClasses;
11
42
  function findMiniProgramComponentExternalClasses(filename) {
12
- return externalClassesCache.get(filename);
43
+ return externalClassesCache.get((0, utils_1.normalizePath)(filename));
13
44
  }
14
45
  exports.findMiniProgramComponentExternalClasses = findMiniProgramComponentExternalClasses;
15
- function updateMiniProgramComponentExternalClasses(filename, classes) {
16
- externalClassesCache.set(filename, classes);
46
+ function updateMiniProgramComponentExternalClasses(filename, value) {
47
+ externalClassesCache.set((0, utils_1.normalizePath)(filename), value);
17
48
  }
18
49
  exports.updateMiniProgramComponentExternalClasses = updateMiniProgramComponentExternalClasses;
19
50
  function parseExternalClasses(ast) {
@@ -40,3 +71,58 @@ function parseExternalClasses(ast) {
40
71
  return classes;
41
72
  }
42
73
  exports.parseExternalClasses = parseExternalClasses;
74
+ function parseStyleIsolation(ast) {
75
+ let styleIsolationValue = '';
76
+ estree_walker_1.walk(ast, {
77
+ enter(child, parent) {
78
+ if (!(0, types_1.isIdentifier)(child) || child.name !== 'styleIsolation') {
79
+ return;
80
+ }
81
+ if (!(0, types_1.isObjectProperty)(parent)) {
82
+ return;
83
+ }
84
+ if (!(0, types_1.isStringLiteral)(parent.value)) {
85
+ return;
86
+ }
87
+ if (parent.value.value === 'app' ||
88
+ parent.value.value === 'app-and-page' ||
89
+ parent.value.value === 'isolated') {
90
+ styleIsolationValue = parent.value.value;
91
+ }
92
+ return parent.value.value;
93
+ },
94
+ });
95
+ return styleIsolationValue;
96
+ }
97
+ exports.parseStyleIsolation = parseStyleIsolation;
98
+ /**
99
+ * 目前只有小程序平台才会走这个逻辑
100
+ * @param pagePahth
101
+ * @param value
102
+ * @param isPage
103
+ */
104
+ function updateMiniProgramComponentStyleIsolation(pagePahth, value, isPage = false) {
105
+ pageStyleIsolationCache.set((0, utils_1.normalizePath)(pagePahth), {
106
+ styleIsolation: value,
107
+ isPage,
108
+ });
109
+ }
110
+ exports.updateMiniProgramComponentStyleIsolation = updateMiniProgramComponentStyleIsolation;
111
+ function findMiniProgramComponentStyleIsolation(pagePahth) {
112
+ return pageStyleIsolationCache.get((0, utils_1.normalizePath)(pagePahth));
113
+ }
114
+ exports.findMiniProgramComponentStyleIsolation = findMiniProgramComponentStyleIsolation;
115
+ function createDefaultSFCStyleBlock(source) {
116
+ const offset = source.length;
117
+ return {
118
+ type: 'style',
119
+ content: '',
120
+ attrs: {},
121
+ loc: {
122
+ source: '',
123
+ start: { line: 1, column: 1, offset },
124
+ end: { line: 1, column: 1, offset },
125
+ },
126
+ };
127
+ }
128
+ exports.createDefaultSFCStyleBlock = createDefaultSFCStyleBlock;
@@ -7,6 +7,7 @@ export * from './assets';
7
7
  export * from './template';
8
8
  export * from './constants';
9
9
  export { HTML_TO_MINI_PROGRAM_TAGS } from './tags';
10
- export { copyMiniProgramPluginJson, copyMiniProgramThemeJson } from './plugin';
11
- export { parseMainDescriptor, parseScriptDescriptor, parseTemplateDescriptor, transformDynamicImports, updateMiniProgramGlobalComponents, updateMiniProgramComponentsByMainFilename, updateMiniProgramComponentsByScriptFilename, updateMiniProgramComponentsByTemplateFilename, } from './usingComponents';
12
- export { hasExternalClasses, parseExternalClasses, findMiniProgramComponentExternalClasses, updateMiniProgramComponentExternalClasses, } from './externalClasses';
10
+ export { copyMiniProgramPluginJson, copyMiniProgramThemeJson, createCopyPluginTarget, } from './plugin';
11
+ export { parseMainDescriptor, parseScriptDescriptor, parseTemplateDescriptor, transformDynamicImports, updateMiniProgramGlobalComponents, updateMiniProgramComponentsByMainFilename, updateMiniProgramComponentsByScriptFilename, updateMiniProgramComponentsByTemplateFilename, getGlobalComponentSource, } from './usingComponents';
12
+ export { hasExternalClasses, parseExternalClasses, parseStyleIsolation, findMiniProgramComponentExternalClasses, updateMiniProgramComponentExternalClasses, updateMiniProgramComponentStyleIsolation, findMiniProgramComponentStyleIsolation, findPageExternalClasses, updatePageExternalClasses, addPageExternalClasses, clearPageExternalClasses, createDefaultSFCStyleBlock, } from './externalClasses';
13
+ export type { PageExternalClassesInfo } from './externalClasses';
package/dist/mp/index.js CHANGED
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.updateMiniProgramComponentExternalClasses = exports.findMiniProgramComponentExternalClasses = exports.parseExternalClasses = exports.hasExternalClasses = exports.updateMiniProgramComponentsByTemplateFilename = exports.updateMiniProgramComponentsByScriptFilename = exports.updateMiniProgramComponentsByMainFilename = exports.updateMiniProgramGlobalComponents = exports.transformDynamicImports = exports.parseTemplateDescriptor = exports.parseScriptDescriptor = exports.parseMainDescriptor = exports.copyMiniProgramThemeJson = exports.copyMiniProgramPluginJson = exports.HTML_TO_MINI_PROGRAM_TAGS = void 0;
17
+ exports.createDefaultSFCStyleBlock = exports.clearPageExternalClasses = exports.addPageExternalClasses = exports.updatePageExternalClasses = exports.findPageExternalClasses = exports.findMiniProgramComponentStyleIsolation = exports.updateMiniProgramComponentStyleIsolation = exports.updateMiniProgramComponentExternalClasses = exports.findMiniProgramComponentExternalClasses = exports.parseStyleIsolation = exports.parseExternalClasses = exports.hasExternalClasses = exports.getGlobalComponentSource = exports.updateMiniProgramComponentsByTemplateFilename = exports.updateMiniProgramComponentsByScriptFilename = exports.updateMiniProgramComponentsByMainFilename = exports.updateMiniProgramGlobalComponents = exports.transformDynamicImports = exports.parseTemplateDescriptor = exports.parseScriptDescriptor = exports.parseMainDescriptor = exports.createCopyPluginTarget = exports.copyMiniProgramThemeJson = exports.copyMiniProgramPluginJson = exports.HTML_TO_MINI_PROGRAM_TAGS = void 0;
18
18
  __exportStar(require("./ast"), exports);
19
19
  __exportStar(require("./wxs"), exports);
20
20
  __exportStar(require("./nvue"), exports);
@@ -28,6 +28,7 @@ Object.defineProperty(exports, "HTML_TO_MINI_PROGRAM_TAGS", { enumerable: true,
28
28
  var plugin_1 = require("./plugin");
29
29
  Object.defineProperty(exports, "copyMiniProgramPluginJson", { enumerable: true, get: function () { return plugin_1.copyMiniProgramPluginJson; } });
30
30
  Object.defineProperty(exports, "copyMiniProgramThemeJson", { enumerable: true, get: function () { return plugin_1.copyMiniProgramThemeJson; } });
31
+ Object.defineProperty(exports, "createCopyPluginTarget", { enumerable: true, get: function () { return plugin_1.createCopyPluginTarget; } });
31
32
  var usingComponents_1 = require("./usingComponents");
32
33
  Object.defineProperty(exports, "parseMainDescriptor", { enumerable: true, get: function () { return usingComponents_1.parseMainDescriptor; } });
33
34
  Object.defineProperty(exports, "parseScriptDescriptor", { enumerable: true, get: function () { return usingComponents_1.parseScriptDescriptor; } });
@@ -37,8 +38,17 @@ Object.defineProperty(exports, "updateMiniProgramGlobalComponents", { enumerable
37
38
  Object.defineProperty(exports, "updateMiniProgramComponentsByMainFilename", { enumerable: true, get: function () { return usingComponents_1.updateMiniProgramComponentsByMainFilename; } });
38
39
  Object.defineProperty(exports, "updateMiniProgramComponentsByScriptFilename", { enumerable: true, get: function () { return usingComponents_1.updateMiniProgramComponentsByScriptFilename; } });
39
40
  Object.defineProperty(exports, "updateMiniProgramComponentsByTemplateFilename", { enumerable: true, get: function () { return usingComponents_1.updateMiniProgramComponentsByTemplateFilename; } });
41
+ Object.defineProperty(exports, "getGlobalComponentSource", { enumerable: true, get: function () { return usingComponents_1.getGlobalComponentSource; } });
40
42
  var externalClasses_1 = require("./externalClasses");
41
43
  Object.defineProperty(exports, "hasExternalClasses", { enumerable: true, get: function () { return externalClasses_1.hasExternalClasses; } });
42
44
  Object.defineProperty(exports, "parseExternalClasses", { enumerable: true, get: function () { return externalClasses_1.parseExternalClasses; } });
45
+ Object.defineProperty(exports, "parseStyleIsolation", { enumerable: true, get: function () { return externalClasses_1.parseStyleIsolation; } });
43
46
  Object.defineProperty(exports, "findMiniProgramComponentExternalClasses", { enumerable: true, get: function () { return externalClasses_1.findMiniProgramComponentExternalClasses; } });
44
47
  Object.defineProperty(exports, "updateMiniProgramComponentExternalClasses", { enumerable: true, get: function () { return externalClasses_1.updateMiniProgramComponentExternalClasses; } });
48
+ Object.defineProperty(exports, "updateMiniProgramComponentStyleIsolation", { enumerable: true, get: function () { return externalClasses_1.updateMiniProgramComponentStyleIsolation; } });
49
+ Object.defineProperty(exports, "findMiniProgramComponentStyleIsolation", { enumerable: true, get: function () { return externalClasses_1.findMiniProgramComponentStyleIsolation; } });
50
+ Object.defineProperty(exports, "findPageExternalClasses", { enumerable: true, get: function () { return externalClasses_1.findPageExternalClasses; } });
51
+ Object.defineProperty(exports, "updatePageExternalClasses", { enumerable: true, get: function () { return externalClasses_1.updatePageExternalClasses; } });
52
+ Object.defineProperty(exports, "addPageExternalClasses", { enumerable: true, get: function () { return externalClasses_1.addPageExternalClasses; } });
53
+ Object.defineProperty(exports, "clearPageExternalClasses", { enumerable: true, get: function () { return externalClasses_1.clearPageExternalClasses; } });
54
+ Object.defineProperty(exports, "createDefaultSFCStyleBlock", { enumerable: true, get: function () { return externalClasses_1.createDefaultSFCStyleBlock; } });
@@ -1,3 +1,4 @@
1
1
  import type { UniViteCopyPluginTarget } from '../vite/plugins/copy';
2
2
  export declare const copyMiniProgramPluginJson: UniViteCopyPluginTarget;
3
3
  export declare const copyMiniProgramThemeJson: () => UniViteCopyPluginTarget[];
4
+ export declare function createCopyPluginTarget(src: string[]): UniViteCopyPluginTarget;
package/dist/mp/plugin.js CHANGED
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.copyMiniProgramThemeJson = exports.copyMiniProgramPluginJson = void 0;
6
+ exports.createCopyPluginTarget = exports.copyMiniProgramThemeJson = exports.copyMiniProgramPluginJson = void 0;
7
7
  const fs_1 = __importDefault(require("fs"));
8
8
  const path_1 = __importDefault(require("path"));
9
9
  const json_1 = require("../json/json");
@@ -46,3 +46,16 @@ const copyMiniProgramThemeJson = () => {
46
46
  return [];
47
47
  };
48
48
  exports.copyMiniProgramThemeJson = copyMiniProgramThemeJson;
49
+ function createCopyPluginTarget(src) {
50
+ return {
51
+ src,
52
+ get dest() {
53
+ return process.env.UNI_OUTPUT_DIR;
54
+ },
55
+ transform(source, filename) {
56
+ const extJson = (0, json_1.parseJson)(source.toString(), true, path_1.default.basename(filename));
57
+ return JSON.stringify(extJson, null, 2);
58
+ },
59
+ };
60
+ }
61
+ exports.createCopyPluginTarget = createCopyPluginTarget;
@@ -1 +1,2 @@
1
1
  export declare function transformScopedCss(cssCode: string): string;
2
+ export declare function transformPartSelector(cssCode: string): string;
package/dist/mp/style.js CHANGED
@@ -1,8 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.transformScopedCss = void 0;
3
+ exports.transformPartSelector = exports.transformScopedCss = void 0;
4
4
  const tags_1 = require("./tags");
5
5
  const logs_1 = require("../logs");
6
+ const uni_shared_1 = require("@dcloudio/uni-shared");
6
7
  function transformScopedCss(cssCode) {
7
8
  checkHtmlTagSelector(cssCode);
8
9
  return cssCode.replace(/\[(data-v-[a-f0-9]{8})\]/gi, (_, scopedId) => {
@@ -10,6 +11,12 @@ function transformScopedCss(cssCode) {
10
11
  });
11
12
  }
12
13
  exports.transformScopedCss = transformScopedCss;
14
+ function transformPartSelector(cssCode) {
15
+ return cssCode.replace(/::part\(([^)]+)\)/gi, (_, partName) => {
16
+ return ' .' + (0, uni_shared_1.getPartClass)(partName.trim());
17
+ });
18
+ }
19
+ exports.transformPartSelector = transformPartSelector;
13
20
  function checkHtmlTagSelector(cssCode) {
14
21
  for (const tag in tags_1.HTML_TO_MINI_PROGRAM_TAGS) {
15
22
  if (new RegExp(`( |\n|\t|,|})${tag}( *)(,|{)`, 'g').test(cssCode)) {
@@ -4,6 +4,7 @@ type BindingComponents = Record<string, {
4
4
  tag: string;
5
5
  type: 'unknown' | 'setup' | 'self';
6
6
  }>;
7
+ export declare function getGlobalComponentSource(componentName: string): string | undefined;
7
8
  interface MainDescriptor {
8
9
  imports: ImportDeclaration[];
9
10
  script: string;