zcw-shared 1.18.0 → 1.20.0

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 (249) hide show
  1. package/README.md +1291 -65
  2. package/dist/functions/ag-grid/generateLicense.d.ts +5 -1
  3. package/dist/functions/ag-grid/generateLicense.js +3 -3
  4. package/dist/functions/ag-grid/generateLicense.js.map +1 -1
  5. package/dist/functions/android/buildProject.d.ts +9 -8
  6. package/dist/functions/android/buildProject.js +19 -20
  7. package/dist/functions/android/buildProject.js.map +1 -1
  8. package/dist/functions/android/detectAndroidModules.d.ts +7 -1
  9. package/dist/functions/android/detectAndroidModules.js +7 -7
  10. package/dist/functions/android/detectAndroidModules.js.map +1 -1
  11. package/dist/functions/android/modifyGradle.d.ts +10 -1
  12. package/dist/functions/android/modifyGradle.js +7 -7
  13. package/dist/functions/android/modifyGradle.js.map +1 -1
  14. package/dist/functions/android/modifyManifest.d.ts +11 -2
  15. package/dist/functions/android/modifyManifest.js +4 -4
  16. package/dist/functions/android/modifyManifest.js.map +1 -1
  17. package/dist/functions/android/permission.d.ts +15 -5
  18. package/dist/functions/android/permission.js +8 -8
  19. package/dist/functions/android/permission.js.map +1 -1
  20. package/dist/functions/async/createInterruptibleTask.d.ts +37 -0
  21. package/dist/functions/async/createInterruptibleTask.js +180 -0
  22. package/dist/functions/async/createInterruptibleTask.js.map +1 -0
  23. package/dist/functions/color/convertColor.js +1 -1
  24. package/dist/functions/color/convertColor.js.map +1 -1
  25. package/dist/functions/debug/createDebugger.d.ts +14 -3
  26. package/dist/functions/debug/createDebugger.js +10 -35
  27. package/dist/functions/debug/createDebugger.js.map +1 -1
  28. package/dist/functions/dom/demonstrateResourceLoading.d.ts +32 -0
  29. package/dist/functions/dom/demonstrateResourceLoading.js +169 -0
  30. package/dist/functions/dom/demonstrateResourceLoading.js.map +1 -0
  31. package/dist/functions/dom/detectOverflow.d.ts +5 -1
  32. package/dist/functions/dom/detectOverflow.js +2 -2
  33. package/dist/functions/dom/detectOverflow.js.map +1 -1
  34. package/dist/functions/dom/getViewportRect.d.ts +5 -1
  35. package/dist/functions/dom/getViewportRect.js +3 -3
  36. package/dist/functions/dom/getViewportRect.js.map +1 -1
  37. package/dist/functions/image/compressToTargetSize.d.ts +8 -1
  38. package/dist/functions/image/compressToTargetSize.js +11 -8
  39. package/dist/functions/image/compressToTargetSize.js.map +1 -1
  40. package/dist/functions/image/generateMacIcons.d.ts +5 -1
  41. package/dist/functions/image/generateMacIcons.js +4 -4
  42. package/dist/functions/image/generateMacIcons.js.map +1 -1
  43. package/dist/functions/image/generateMacTrayIcon.d.ts +4 -1
  44. package/dist/functions/image/generateMacTrayIcon.js +2 -2
  45. package/dist/functions/image/generateMacTrayIcon.js.map +1 -1
  46. package/dist/functions/image/generatePaddedImage.d.ts +4 -1
  47. package/dist/functions/image/generatePaddedImage.js +3 -3
  48. package/dist/functions/image/generatePaddedImage.js.map +1 -1
  49. package/dist/functions/image/generatePwaIcons.d.ts +5 -1
  50. package/dist/functions/image/generatePwaIcons.js +4 -4
  51. package/dist/functions/image/generatePwaIcons.js.map +1 -1
  52. package/dist/functions/image/generateRoundedImage.d.ts +5 -1
  53. package/dist/functions/image/generateRoundedImage.js +4 -4
  54. package/dist/functions/image/generateRoundedImage.js.map +1 -1
  55. package/dist/functions/image/getImageDimensions.d.ts +5 -1
  56. package/dist/functions/image/getImageDimensions.js +3 -3
  57. package/dist/functions/image/getImageDimensions.js.map +1 -1
  58. package/dist/functions/ipc/dispatchIpcRequest.d.ts +4 -1
  59. package/dist/functions/ipc/dispatchIpcRequest.js +3 -3
  60. package/dist/functions/ipc/dispatchIpcRequest.js.map +1 -1
  61. package/dist/functions/software/findSoftware.d.ts +2 -2
  62. package/dist/functions/software/findSoftware.js +1 -1
  63. package/dist/functions/software/findSoftware.js.map +1 -1
  64. package/dist/functions/string/base64.d.ts +4 -1
  65. package/dist/functions/string/base64.js +2 -2
  66. package/dist/functions/string/base64.js.map +1 -1
  67. package/dist/functions/tencent-cloud/deploy.tcb.d.ts +12 -2
  68. package/dist/functions/tencent-cloud/deploy.tcb.js +7 -8
  69. package/dist/functions/tencent-cloud/deploy.tcb.js.map +1 -1
  70. package/dist/functions/uniapp/app-plus/buildAndroidApp.d.ts +27 -2
  71. package/dist/functions/uniapp/app-plus/buildAndroidApp.js +71 -29
  72. package/dist/functions/uniapp/app-plus/buildAndroidApp.js.map +1 -1
  73. package/dist/functions/uniapp/build.d.ts +9 -8
  74. package/dist/functions/uniapp/build.js +8 -9
  75. package/dist/functions/uniapp/build.js.map +1 -1
  76. package/dist/functions/uniapp/detectAndroidProjectStructure.d.ts +5 -1
  77. package/dist/functions/uniapp/detectAndroidProjectStructure.js +5 -5
  78. package/dist/functions/uniapp/detectAndroidProjectStructure.js.map +1 -1
  79. package/dist/functions/uniapp/detectProjectType.d.ts +8 -4
  80. package/dist/functions/uniapp/detectProjectType.js +20 -20
  81. package/dist/functions/uniapp/detectProjectType.js.map +1 -1
  82. package/dist/functions/uniapp/parseManifest.d.ts +7 -1
  83. package/dist/functions/uniapp/parseManifest.js +7 -4
  84. package/dist/functions/uniapp/parseManifest.js.map +1 -1
  85. package/dist/functions/uniapp/waitForPages.d.ts +6 -2
  86. package/dist/functions/uniapp/waitForPages.js +3 -3
  87. package/dist/functions/uniapp/waitForPages.js.map +1 -1
  88. package/dist/functions/utils/AVLTree.d.ts +19 -0
  89. package/dist/functions/utils/AVLTree.js +197 -0
  90. package/dist/functions/utils/AVLTree.js.map +1 -0
  91. package/dist/functions/utils/BinarySearchTree.d.ts +19 -0
  92. package/dist/functions/utils/BinarySearchTree.js +150 -0
  93. package/dist/functions/utils/BinarySearchTree.js.map +1 -0
  94. package/dist/functions/utils/EventEmitter.d.ts +32 -0
  95. package/dist/functions/utils/EventEmitter.js +108 -0
  96. package/dist/functions/utils/EventEmitter.js.map +1 -0
  97. package/dist/functions/utils/Graph.d.ts +19 -0
  98. package/dist/functions/utils/Graph.js +190 -0
  99. package/dist/functions/utils/Graph.js.map +1 -0
  100. package/dist/functions/utils/HashMap.d.ts +13 -0
  101. package/dist/functions/utils/HashMap.js +128 -0
  102. package/dist/functions/utils/HashMap.js.map +1 -0
  103. package/dist/functions/utils/Heap.d.ts +11 -0
  104. package/dist/functions/utils/Heap.js +91 -0
  105. package/dist/functions/utils/Heap.js.map +1 -0
  106. package/dist/functions/utils/LRUCache.d.ts +41 -0
  107. package/dist/functions/utils/LRUCache.js +182 -0
  108. package/dist/functions/utils/LRUCache.js.map +1 -0
  109. package/dist/functions/utils/LinkedList.d.ts +18 -0
  110. package/dist/functions/utils/LinkedList.js +135 -0
  111. package/dist/functions/utils/LinkedList.js.map +1 -0
  112. package/dist/functions/utils/MyPromise.d.ts +32 -0
  113. package/dist/functions/utils/MyPromise.js +254 -0
  114. package/dist/functions/utils/MyPromise.js.map +1 -0
  115. package/dist/functions/utils/PriorityQueue.d.ts +14 -0
  116. package/dist/functions/utils/PriorityQueue.js +77 -0
  117. package/dist/functions/utils/PriorityQueue.js.map +1 -0
  118. package/dist/functions/utils/Queue.d.ts +10 -0
  119. package/dist/functions/utils/Queue.js +27 -0
  120. package/dist/functions/utils/Queue.js.map +1 -0
  121. package/dist/functions/utils/Stack.d.ts +10 -0
  122. package/dist/functions/utils/Stack.js +27 -0
  123. package/dist/functions/utils/Stack.js.map +1 -0
  124. package/dist/functions/utils/Trie.d.ts +16 -0
  125. package/dist/functions/utils/Trie.js +127 -0
  126. package/dist/functions/utils/Trie.js.map +1 -0
  127. package/dist/functions/utils/UnionFind.d.ts +8 -0
  128. package/dist/functions/utils/UnionFind.js +53 -0
  129. package/dist/functions/utils/UnionFind.js.map +1 -0
  130. package/dist/functions/utils/curryAdvanced.d.ts +8 -0
  131. package/dist/functions/utils/curryAdvanced.js +87 -0
  132. package/dist/functions/utils/curryAdvanced.js.map +1 -0
  133. package/dist/functions/utils/debounce.d.ts +5 -1
  134. package/dist/functions/utils/debounce.js +3 -4
  135. package/dist/functions/utils/debounce.js.map +1 -1
  136. package/dist/functions/utils/deepClone.d.ts +12 -0
  137. package/dist/functions/utils/deepClone.js +131 -0
  138. package/dist/functions/utils/deepClone.js.map +1 -0
  139. package/dist/functions/utils/flatten.d.ts +7 -0
  140. package/dist/functions/utils/flatten.js +60 -0
  141. package/dist/functions/utils/flatten.js.map +1 -0
  142. package/dist/functions/utils/flattenObject.d.ts +5 -0
  143. package/dist/functions/utils/flattenObject.js +102 -0
  144. package/dist/functions/utils/flattenObject.js.map +1 -0
  145. package/dist/functions/utils/functionBind.d.ts +4 -0
  146. package/dist/functions/utils/functionBind.js +33 -0
  147. package/dist/functions/utils/functionBind.js.map +1 -0
  148. package/dist/functions/utils/generateExports.d.ts +16 -6
  149. package/dist/functions/utils/generateExports.js +11 -11
  150. package/dist/functions/utils/generateExports.js.map +1 -1
  151. package/dist/functions/utils/generatorUtils.d.ts +16 -0
  152. package/dist/functions/utils/generatorUtils.js +139 -0
  153. package/dist/functions/utils/generatorUtils.js.map +1 -0
  154. package/dist/functions/utils/myInstanceof.d.ts +5 -0
  155. package/dist/functions/utils/myInstanceof.js +56 -0
  156. package/dist/functions/utils/myInstanceof.js.map +1 -0
  157. package/dist/functions/utils/myNew.d.ts +3 -0
  158. package/dist/functions/utils/myNew.js +19 -0
  159. package/dist/functions/utils/myNew.js.map +1 -0
  160. package/dist/functions/utils/promiseLimit.d.ts +10 -0
  161. package/dist/functions/utils/promiseLimit.js +125 -0
  162. package/dist/functions/utils/promiseLimit.js.map +1 -0
  163. package/dist/functions/utils/retryWithBackoff.d.ts +4 -1
  164. package/dist/functions/utils/retryWithBackoff.js +2 -3
  165. package/dist/functions/utils/retryWithBackoff.js.map +1 -1
  166. package/dist/functions/utils/unique.d.ts +10 -0
  167. package/dist/functions/utils/unique.js +85 -0
  168. package/dist/functions/utils/unique.js.map +1 -0
  169. package/dist/functions/utils/validate.d.ts +4 -1
  170. package/dist/functions/utils/validate.js +2 -3
  171. package/dist/functions/utils/validate.js.map +1 -1
  172. package/dist/functions/utils/walk.d.ts +8 -2
  173. package/dist/functions/utils/walk.js +9 -10
  174. package/dist/functions/utils/walk.js.map +1 -1
  175. package/dist/functions/vue/dynamicMount.d.ts +3 -2
  176. package/dist/functions/vue/dynamicMount.js +6 -6
  177. package/dist/functions/vue/dynamicMount.js.map +1 -1
  178. package/dist/functions/wechat/miniapp/downloadFile.d.ts +5 -1
  179. package/dist/functions/wechat/miniapp/downloadFile.js +3 -3
  180. package/dist/functions/wechat/miniapp/downloadFile.js.map +1 -1
  181. package/dist/functions/xml/modifyXml.d.ts +9 -2
  182. package/dist/functions/xml/modifyXml.js +4 -4
  183. package/dist/functions/xml/modifyXml.js.map +1 -1
  184. package/dist/hooks/createGlobalState.d.ts +2 -0
  185. package/dist/hooks/createGlobalState.js +11 -0
  186. package/dist/hooks/createGlobalState.js.map +1 -0
  187. package/dist/hooks/createInjectionState.d.ts +14 -0
  188. package/dist/hooks/createInjectionState.js +20 -0
  189. package/dist/hooks/createInjectionState.js.map +1 -0
  190. package/dist/hooks/createSharedComposable.d.ts +2 -0
  191. package/dist/hooks/createSharedComposable.js +13 -0
  192. package/dist/hooks/createSharedComposable.js.map +1 -0
  193. package/dist/hooks/injectLocal.d.ts +10 -0
  194. package/dist/hooks/injectLocal.js +12 -0
  195. package/dist/hooks/injectLocal.js.map +1 -0
  196. package/dist/hooks/provideLocal.d.ts +9 -0
  197. package/dist/hooks/provideLocal.js +7 -0
  198. package/dist/hooks/provideLocal.js.map +1 -0
  199. package/dist/hooks/useAltool.d.ts +1 -1
  200. package/dist/hooks/useAltool.js +13 -13
  201. package/dist/hooks/useAltool.js.map +1 -1
  202. package/dist/hooks/useAsyncState.d.ts +30 -0
  203. package/dist/hooks/useAsyncState.js +46 -0
  204. package/dist/hooks/useAsyncState.js.map +1 -0
  205. package/dist/hooks/useDebouncedRefHistory.d.ts +22 -0
  206. package/dist/hooks/useDebouncedRefHistory.js +46 -0
  207. package/dist/hooks/useDebouncedRefHistory.js.map +1 -0
  208. package/dist/hooks/useDraggable.d.ts +14 -11
  209. package/dist/hooks/useDraggable.js +60 -80
  210. package/dist/hooks/useDraggable.js.map +1 -1
  211. package/dist/hooks/useLocalStorage.d.ts +5 -1
  212. package/dist/hooks/useLocalStorage.js +5 -4
  213. package/dist/hooks/useLocalStorage.js.map +1 -1
  214. package/dist/hooks/useManualRefHistory.d.ts +26 -0
  215. package/dist/hooks/useManualRefHistory.js +80 -0
  216. package/dist/hooks/useManualRefHistory.js.map +1 -0
  217. package/dist/hooks/useRefHistory.d.ts +21 -0
  218. package/dist/hooks/useRefHistory.js +41 -0
  219. package/dist/hooks/useRefHistory.js.map +1 -0
  220. package/dist/hooks/useResizable.d.ts +54 -0
  221. package/dist/hooks/useResizable.js +178 -0
  222. package/dist/hooks/useResizable.js.map +1 -0
  223. package/dist/hooks/useSessionStorage.d.ts +5 -1
  224. package/dist/hooks/useSessionStorage.js +5 -4
  225. package/dist/hooks/useSessionStorage.js.map +1 -1
  226. package/dist/hooks/useStorage.d.ts +4 -1
  227. package/dist/hooks/useStorage.js +4 -4
  228. package/dist/hooks/useStorage.js.map +1 -1
  229. package/dist/hooks/useStorageWithIndexedDB.d.ts +5 -1
  230. package/dist/hooks/useStorageWithIndexedDB.js +24 -11
  231. package/dist/hooks/useStorageWithIndexedDB.js.map +1 -1
  232. package/dist/hooks/useWebWorker.d.ts +13 -13
  233. package/dist/hooks/useWebWorker.js +15 -17
  234. package/dist/hooks/useWebWorker.js.map +1 -1
  235. package/dist/hooks/useWorkerFunction.d.ts +15 -11
  236. package/dist/hooks/useWorkerFunction.js +16 -16
  237. package/dist/hooks/useWorkerFunction.js.map +1 -1
  238. package/dist/hooks/useWorkerPool.d.ts +15 -12
  239. package/dist/hooks/useWorkerPool.js +18 -13
  240. package/dist/hooks/useWorkerPool.js.map +1 -1
  241. package/package.json +41 -3
  242. package/references/browser.d.ts +28 -2
  243. package/references/dom.d.ts +47 -0
  244. package/references/indexeddb.d.ts +1 -0
  245. package/references/node.d.ts +42 -7
  246. package/references/vue.d.ts +161 -5
  247. package/types/android-build.d.ts +0 -22
  248. package/types/tencent-cloud.d.ts +1 -9
  249. package/types/uniapp-android-build.d.ts +0 -21
@@ -7,7 +7,6 @@ import { modifyXml } from '../../xml/modifyXml';
7
7
  import { detectUniAppAndroidProjectStructure } from '../detectAndroidProjectStructure';
8
8
  import { detectAllAndroidModules } from '../../android/detectAndroidModules';
9
9
  export async function buildAndroidApp(options, deps) {
10
- const { fs, path, json5 } = deps;
11
10
  const logs = [];
12
11
  if (!options.uniappProjectPath) {
13
12
  return {
@@ -18,7 +17,12 @@ export async function buildAndroidApp(options, deps) {
18
17
  }
19
18
  try {
20
19
  logs.push('步骤 1: 解析 manifest.json 配置');
21
- const parseResult = parseManifest(options.uniappProjectPath, fs, path, json5);
20
+ const parseResult = parseManifest(options.uniappProjectPath, {
21
+ existsSync: deps.existsSync,
22
+ readFileSync: deps.readFileSync,
23
+ join: deps.join,
24
+ parse: deps.parse
25
+ });
22
26
  if (!parseResult.success) {
23
27
  return {
24
28
  success: false,
@@ -29,9 +33,9 @@ export async function buildAndroidApp(options, deps) {
29
33
  const manifest = parseResult.manifest;
30
34
  logs.push('步骤 2: 构建 UniApp 项目');
31
35
  const buildDeps = {
32
- childProcess: deps.childProcess,
33
- path: deps.path,
34
- fs: deps.fs,
36
+ exec: deps.exec,
37
+ join: deps.join,
38
+ existsSync: deps.existsSync,
35
39
  setTimeout: deps.setTimeout
36
40
  };
37
41
  const uniBuildResult = await build(options.uniappProjectPath, 'app-plus', buildDeps);
@@ -44,17 +48,20 @@ export async function buildAndroidApp(options, deps) {
44
48
  }
45
49
  logs.push(...uniBuildResult.logs);
46
50
  logs.push('步骤 3: 配置 Android 原生工程');
47
- const projectStructure = detectUniAppAndroidProjectStructure(options.projectPath, fs, path);
51
+ const projectStructure = detectUniAppAndroidProjectStructure(options.projectPath, {
52
+ existsSync: deps.existsSync,
53
+ join: deps.join
54
+ });
48
55
  logs.push(`使用模块目录: ${projectStructure.moduleDir}`);
49
- const distPath = path.join(options.uniappProjectPath, 'dist');
56
+ const distPath = deps.join(options.uniappProjectPath, 'dist');
50
57
  logs.push('复制应用资源');
51
- const targetPath = path.join(options.projectPath, projectStructure.moduleDir, 'src', 'main', 'assets', 'apps', manifest.appid, 'www');
58
+ const targetPath = deps.join(options.projectPath, projectStructure.moduleDir, 'src', 'main', 'assets', 'apps', manifest.appid, 'www');
52
59
  try {
53
- const targetDir = path.dirname(targetPath);
54
- if (!fs.existsSync(targetDir)) {
55
- fs.mkdirSync(targetDir, { recursive: true });
60
+ const targetDir = deps.dirname(targetPath);
61
+ if (!deps.existsSync(targetDir)) {
62
+ deps.mkdirSync(targetDir, { recursive: true });
56
63
  }
57
- await fs.promises.cp(`${distPath}/build/app`, targetPath, { recursive: true, force: true });
64
+ await deps.cp(`${distPath}/build/app`, targetPath, { recursive: true, force: true });
58
65
  logs.push('应用资源复制完成');
59
66
  }
60
67
  catch (error) {
@@ -94,12 +101,24 @@ export async function buildAndroidApp(options, deps) {
94
101
  }
95
102
  });
96
103
  }
97
- const allModules = detectAllAndroidModules(options.projectPath, fs, path);
104
+ const allModules = detectAllAndroidModules(options.projectPath, {
105
+ readdirSync: deps.readdirSync,
106
+ statSync: deps.statSync,
107
+ existsSync: deps.existsSync,
108
+ join: deps.join
109
+ });
98
110
  logs.push(`检测到 ${allModules.length} 个Android模块: ${allModules.join(', ')}`);
99
111
  let manifestConfigured = false;
100
112
  for (const moduleDir of allModules) {
101
- const manifestPath = path.join(options.projectPath, moduleDir, 'src', 'main', 'AndroidManifest.xml');
102
- const manifestResult = await modifyManifest(manifestPath, manifestModifications, fs, deps);
113
+ const manifestPath = deps.join(options.projectPath, moduleDir, 'src', 'main', 'AndroidManifest.xml');
114
+ const manifestResult = await modifyManifest(manifestPath, manifestModifications, {
115
+ existsSync: deps.existsSync,
116
+ readFileSync: deps.readFileSync,
117
+ writeFileSync: deps.writeFileSync,
118
+ xmlParser: deps.xmlParser,
119
+ xmlSerializer: deps.xmlSerializer,
120
+ xpath: deps.xpath
121
+ });
103
122
  if (manifestResult.success) {
104
123
  logs.push(`${moduleDir} 模块的 AndroidManifest.xml 配置完成`);
105
124
  manifestConfigured = true;
@@ -109,8 +128,15 @@ export async function buildAndroidApp(options, deps) {
109
128
  }
110
129
  }
111
130
  if (allModules.length === 0) {
112
- const manifestPath = path.join(options.projectPath, projectStructure.moduleDir, 'src', 'main', 'AndroidManifest.xml');
113
- const manifestResult = await modifyManifest(manifestPath, manifestModifications, fs, deps);
131
+ const manifestPath = deps.join(options.projectPath, projectStructure.moduleDir, 'src', 'main', 'AndroidManifest.xml');
132
+ const manifestResult = await modifyManifest(manifestPath, manifestModifications, {
133
+ existsSync: deps.existsSync,
134
+ readFileSync: deps.readFileSync,
135
+ writeFileSync: deps.writeFileSync,
136
+ xmlParser: deps.xmlParser,
137
+ xmlSerializer: deps.xmlSerializer,
138
+ xpath: deps.xpath
139
+ });
114
140
  if (!manifestResult.success) {
115
141
  return {
116
142
  success: false,
@@ -129,7 +155,7 @@ export async function buildAndroidApp(options, deps) {
129
155
  };
130
156
  }
131
157
  logs.push('配置 build.gradle');
132
- const buildGradlePath = path.join(options.projectPath, projectStructure.moduleDir, 'build.gradle');
158
+ const buildGradlePath = deps.join(options.projectPath, projectStructure.moduleDir, 'build.gradle');
133
159
  const gradleResult = await modifyGradle(buildGradlePath, {
134
160
  applicationId: options.applicationId,
135
161
  versionName: '1.0.0',
@@ -140,7 +166,15 @@ export async function buildAndroidApp(options, deps) {
140
166
  keyAlias: options.signing.keyAlias,
141
167
  keyPassword: options.signing.keyPassword
142
168
  } : undefined
143
- }, fs, path);
169
+ }, {
170
+ existsSync: deps.existsSync,
171
+ readFileSync: deps.readFileSync,
172
+ writeFileSync: deps.writeFileSync,
173
+ copyFileSync: deps.copyFileSync,
174
+ join: deps.join,
175
+ dirname: deps.dirname,
176
+ basename: deps.basename
177
+ });
144
178
  if (!gradleResult.success) {
145
179
  return {
146
180
  success: false,
@@ -151,14 +185,20 @@ export async function buildAndroidApp(options, deps) {
151
185
  logs.push('build.gradle 配置完成');
152
186
  if (manifest.name) {
153
187
  logs.push('配置 strings.xml');
154
- const stringsXmlPath = path.join(options.projectPath, projectStructure.moduleDir, 'src', 'main', 'res', 'values', 'strings.xml');
188
+ const stringsXmlPath = deps.join(options.projectPath, projectStructure.moduleDir, 'src', 'main', 'res', 'values', 'strings.xml');
155
189
  const stringsResult = await modifyXml(stringsXmlPath, {
156
190
  app_name: manifest.name
157
191
  }, {
158
192
  tagName: 'string',
159
193
  matchAttribute: 'name',
160
194
  modifyType: 'textContent'
161
- }, fs, deps);
195
+ }, {
196
+ existsSync: deps.existsSync,
197
+ readFileSync: deps.readFileSync,
198
+ writeFileSync: deps.writeFileSync,
199
+ xmlParser: deps.xmlParser,
200
+ xmlSerializer: deps.xmlSerializer
201
+ });
162
202
  if (stringsResult.success) {
163
203
  logs.push('strings.xml 配置完成');
164
204
  }
@@ -167,10 +207,10 @@ export async function buildAndroidApp(options, deps) {
167
207
  }
168
208
  }
169
209
  logs.push('配置 dcloud_control.xml');
170
- const dcloudControlXmlPath = path.join(options.projectPath, projectStructure.moduleDir, 'src', 'main', 'assets', 'data', 'dcloud_control.xml');
210
+ const dcloudControlXmlPath = deps.join(options.projectPath, projectStructure.moduleDir, 'src', 'main', 'assets', 'data', 'dcloud_control.xml');
171
211
  try {
172
- if (fs.existsSync(dcloudControlXmlPath)) {
173
- const xmlContent = fs.readFileSync(dcloudControlXmlPath, 'utf8');
212
+ if (deps.existsSync(dcloudControlXmlPath)) {
213
+ const xmlContent = deps.readFileSync(dcloudControlXmlPath, 'utf8');
174
214
  const parser = new deps.xmlParser();
175
215
  const xmlDoc = parser.parseFromString(xmlContent, 'text/xml');
176
216
  const appsElements = xmlDoc.getElementsByTagName('apps');
@@ -192,7 +232,7 @@ export async function buildAndroidApp(options, deps) {
192
232
  logs.push(`添加新的 app 元素,appid: ${manifest.appid}`);
193
233
  const serializer = new deps.xmlSerializer();
194
234
  const newXmlContent = serializer.serializeToString(xmlDoc);
195
- fs.writeFileSync(dcloudControlXmlPath, newXmlContent, 'utf8');
235
+ deps.writeFileSync(dcloudControlXmlPath, newXmlContent, 'utf8');
196
236
  logs.push('dcloud_control.xml 配置完成');
197
237
  }
198
238
  else {
@@ -208,10 +248,12 @@ export async function buildAndroidApp(options, deps) {
208
248
  }
209
249
  logs.push('步骤 4: 编译 Android 应用');
210
250
  const androidBuildDeps = {
211
- fs: deps.fs,
212
- path: deps.path,
213
- process: deps.process,
214
- childProcess: deps.childProcess,
251
+ existsSync: deps.existsSync,
252
+ readdirSync: deps.readdirSync,
253
+ statSync: deps.statSync,
254
+ join: deps.join,
255
+ platform: deps.platform,
256
+ exec: deps.exec,
215
257
  setTimeout: deps.setTimeout
216
258
  };
217
259
  const buildResult = await buildProject({
@@ -1 +1 @@
1
- {"version":3,"file":"buildAndroidApp.js","sourceRoot":"","sources":["../../../../src/functions/uniapp/app-plus/buildAndroidApp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"buildAndroidApp.js","sourceRoot":"","sources":["../../../../src/functions/uniapp/app-plus/buildAndroidApp.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,11 @@
1
- import type { FileSystem, Path } from '../../../references/node.d';
2
- import type { ChildProcess } from '../../../references/node.d';
1
+ import type { FileSystem, Path, ChildProcess } from '../../../references/node.d';
2
+ import type { setTimeout } from '../../../references/timer.d';
3
+ export interface UniBuildDeps {
4
+ exec: ChildProcess['exec'];
5
+ join: Path['join'];
6
+ existsSync: FileSystem['existsSync'];
7
+ setTimeout: typeof setTimeout;
8
+ }
3
9
  export type BuildTarget = 'h5' | 'mp-weixin' | 'app-plus';
4
10
  export interface BuildOptions {
5
11
  useCustomScript?: boolean;
@@ -12,9 +18,4 @@ export interface BuildResult {
12
18
  error?: string;
13
19
  logs: string[];
14
20
  }
15
- export declare function build(projectPath: string, target: BuildTarget, deps: {
16
- childProcess: ChildProcess;
17
- path: Path;
18
- fs: FileSystem;
19
- setTimeout: (callback: () => void, ms: number) => any;
20
- }, options?: BuildOptions): Promise<BuildResult>;
21
+ export declare function build(projectPath: string, target: BuildTarget, deps: UniBuildDeps, options?: BuildOptions): Promise<BuildResult>;
@@ -1,5 +1,4 @@
1
1
  export async function build(projectPath, target, deps, options = {}) {
2
- const { childProcess, path, fs, setTimeout } = deps;
3
2
  const { useCustomScript = false, customScript = 'build', timeout = 300000 } = options;
4
3
  const logs = [];
5
4
  try {
@@ -16,7 +15,7 @@ export async function build(projectPath, target, deps, options = {}) {
16
15
  }
17
16
  logs.push(`执行命令: ${buildCommand}`);
18
17
  const result = await new Promise((resolve) => {
19
- const child = childProcess.exec(buildCommand, (error, stdout, stderr) => {
18
+ const child = deps.exec(buildCommand, (error, stdout, stderr) => {
20
19
  if (error) {
21
20
  logs.push(`构建错误: ${error.message}`);
22
21
  if (stderr)
@@ -30,7 +29,7 @@ export async function build(projectPath, target, deps, options = {}) {
30
29
  logs.push(`警告信息: ${stderr}`);
31
30
  resolve({ success: true });
32
31
  });
33
- setTimeout(() => {
32
+ deps.setTimeout(() => {
34
33
  child.kill();
35
34
  resolve({ success: false, error: '构建超时' });
36
35
  }, timeout);
@@ -45,20 +44,20 @@ export async function build(projectPath, target, deps, options = {}) {
45
44
  let outputPath;
46
45
  switch (target) {
47
46
  case 'h5':
48
- outputPath = path.join(projectPath, 'dist', 'build', 'h5');
47
+ outputPath = deps.join(projectPath, 'dist', 'build', 'h5');
49
48
  break;
50
49
  case 'mp-weixin':
51
- outputPath = path.join(projectPath, 'dist', 'build', 'mp-weixin');
50
+ outputPath = deps.join(projectPath, 'dist', 'build', 'mp-weixin');
52
51
  break;
53
52
  case 'app-plus':
54
- outputPath = path.join(projectPath, 'dist', 'build', 'app');
53
+ outputPath = deps.join(projectPath, 'dist', 'build', 'app');
55
54
  break;
56
55
  default:
57
- outputPath = path.join(projectPath, 'dist', 'build', target);
56
+ outputPath = deps.join(projectPath, 'dist', 'build', target);
58
57
  }
59
- if (!fs.existsSync(outputPath)) {
58
+ if (!deps.existsSync(outputPath)) {
60
59
  logs.push(`警告: 未找到输出目录 ${outputPath}`);
61
- const distPath = path.join(projectPath, 'dist');
60
+ const distPath = deps.join(projectPath, 'dist');
62
61
  logs.push(`dist 目录存在但输出目录未找到`);
63
62
  }
64
63
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"build.js","sourceRoot":"","sources":["../../../src/functions/uniapp/build.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"build.js","sourceRoot":"","sources":["../../../src/functions/uniapp/build.ts"],"names":[],"mappings":"AAoDA,MAAM,CAAC,KAAK,UAAU,KAAK,CACzB,WAAmB,EACnB,MAAmB,EACnB,IAAkB,EAClB,UAAwB,EAAE;IAE1B,MAAM,EAAE,eAAe,GAAG,KAAK,EAAE,YAAY,GAAG,OAAO,EAAE,OAAO,GAAG,MAAM,EAAE,GAAG,OAAO,CAAA;IACrF,MAAM,IAAI,GAAa,EAAE,CAAA;IAEzB,IAAI,CAAC;QACH,IAAI,CAAC,IAAI,CAAC,mBAAmB,WAAW,EAAE,CAAC,CAAA;QAC3C,IAAI,CAAC,IAAI,CAAC,SAAS,MAAM,EAAE,CAAC,CAAA;QAG5B,IAAI,YAAoB,CAAA;QACxB,IAAI,eAAe,IAAI,YAAY,EAAE,CAAC;YACpC,YAAY,GAAG,OAAO,WAAW,gBAAgB,YAAY,EAAE,CAAA;YAC/D,IAAI,CAAC,IAAI,CAAC,cAAc,YAAY,EAAE,CAAC,CAAA;QACzC,CAAC;aAAM,CAAC;YACN,YAAY,GAAG,OAAO,WAAW,iCAAiC,MAAM,EAAE,CAAA;YAC1E,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;QAC1B,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,SAAS,YAAY,EAAE,CAAC,CAAA;QAGlC,MAAM,MAAM,GAAG,MAAM,IAAI,OAAO,CAAuC,CAAC,OAAO,EAAE,EAAE;YACjF,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,KAAU,EAAE,MAAc,EAAE,MAAc,EAAE,EAAE;gBACnF,IAAI,KAAK,EAAE,CAAC;oBACV,IAAI,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;oBACnC,IAAI,MAAM;wBAAE,IAAI,CAAC,IAAI,CAAC,SAAS,MAAM,EAAE,CAAC,CAAA;oBACxC,OAAO,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;oBACjD,OAAM;gBACR,CAAC;gBAED,IAAI,MAAM;oBAAE,IAAI,CAAC,IAAI,CAAC,SAAS,MAAM,EAAE,CAAC,CAAA;gBACxC,IAAI,MAAM;oBAAE,IAAI,CAAC,IAAI,CAAC,SAAS,MAAM,EAAE,CAAC,CAAA;gBAExC,OAAO,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;YAC5B,CAAC,CAAC,CAAA;YAGF,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE;gBACnB,KAAK,CAAC,IAAI,EAAE,CAAA;gBACZ,OAAO,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;YAC5C,CAAC,EAAE,OAAO,CAAC,CAAA;QACb,CAAC,CAAC,CAAA;QAEF,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,IAAI;aACL,CAAA;QACH,CAAC;QAGD,IAAI,UAAkB,CAAA;QAEtB,QAAQ,MAAM,EAAE,CAAC;YACf,KAAK,IAAI;gBACP,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,CAAA;gBAC1D,MAAK;YACP,KAAK,WAAW;gBACd,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,CAAC,CAAA;gBACjE,MAAK;YACP,KAAK,UAAU;gBACb,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;gBAC3D,MAAK;YACP;gBACE,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;QAChE,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YACjC,IAAI,CAAC,IAAI,CAAC,eAAe,UAAU,EAAE,CAAC,CAAA;YAEtC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,CAAA;YAC/C,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAA;QAChC,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,IAAI,CAAC,cAAc,UAAU,EAAE,CAAC,CAAA;QACvC,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,UAAU,MAAM,OAAO,CAAC,CAAA;QAClC,OAAO;YACL,OAAO,EAAE,IAAI;YACb,UAAU;YACV,IAAI;SACL,CAAA;IAEH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QAC3E,IAAI,CAAC,IAAI,CAAC,cAAc,YAAY,EAAE,CAAC,CAAA;QAEvC,OAAO;YACL,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,YAAY;YACnB,IAAI;SACL,CAAA;IACH,CAAC;AACH,CAAC"}
@@ -1,7 +1,11 @@
1
1
  import type { FileSystem, Path } from '../../../references/node.d';
2
+ export interface DetectAndroidProjectStructureDeps {
3
+ existsSync: FileSystem['existsSync'];
4
+ join: Path['join'];
5
+ }
2
6
  export interface UniAppAndroidProjectStructure {
3
7
  moduleDir: string;
4
8
  isAndroidStudioIntegration: boolean;
5
9
  isHBuilderStandard: boolean;
6
10
  }
7
- export declare function detectUniAppAndroidProjectStructure(projectPath: string, fs: FileSystem, path: Path): UniAppAndroidProjectStructure;
11
+ export declare function detectUniAppAndroidProjectStructure(projectPath: string, deps: DetectAndroidProjectStructureDeps): UniAppAndroidProjectStructure;
@@ -1,8 +1,8 @@
1
- export function detectUniAppAndroidProjectStructure(projectPath, fs, path) {
2
- const simpleDemoPath = path.join(projectPath, 'simpleDemo', 'src', 'main');
3
- const appPath = path.join(projectPath, 'app', 'src', 'main');
4
- const hasSimpleDemo = fs.existsSync(simpleDemoPath);
5
- const hasApp = fs.existsSync(appPath);
1
+ export function detectUniAppAndroidProjectStructure(projectPath, deps) {
2
+ const simpleDemoPath = deps.join(projectPath, 'simpleDemo', 'src', 'main');
3
+ const appPath = deps.join(projectPath, 'app', 'src', 'main');
4
+ const hasSimpleDemo = deps.existsSync(simpleDemoPath);
5
+ const hasApp = deps.existsSync(appPath);
6
6
  let moduleDir;
7
7
  let isAndroidStudioIntegration;
8
8
  let isHBuilderStandard;
@@ -1 +1 @@
1
- {"version":3,"file":"detectAndroidProjectStructure.js","sourceRoot":"","sources":["../../../src/functions/uniapp/detectAndroidProjectStructure.ts"],"names":[],"mappings":"AAyBA,MAAM,UAAU,mCAAmC,CACjD,WAAmB,EACnB,EAAc,EACd,IAAU;IAEV,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,CAAC,CAAA;IAC1E,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAA;IAE5D,MAAM,aAAa,GAAG,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,CAAA;IACnD,MAAM,MAAM,GAAG,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;IAErC,IAAI,SAAiB,CAAA;IACrB,IAAI,0BAAmC,CAAA;IACvC,IAAI,kBAA2B,CAAA;IAE/B,IAAI,aAAa,EAAE,CAAC;QAClB,SAAS,GAAG,YAAY,CAAA;QACxB,0BAA0B,GAAG,IAAI,CAAA;QACjC,kBAAkB,GAAG,KAAK,CAAA;IAC5B,CAAC;SAAM,IAAI,MAAM,EAAE,CAAC;QAClB,SAAS,GAAG,KAAK,CAAA;QACjB,0BAA0B,GAAG,KAAK,CAAA;QAClC,kBAAkB,GAAG,IAAI,CAAA;IAC3B,CAAC;SAAM,CAAC;QAEN,SAAS,GAAG,KAAK,CAAA;QACjB,0BAA0B,GAAG,KAAK,CAAA;QAClC,kBAAkB,GAAG,IAAI,CAAA;IAC3B,CAAC;IAED,OAAO;QACL,SAAS;QACT,0BAA0B;QAC1B,kBAAkB;KACnB,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"detectAndroidProjectStructure.js","sourceRoot":"","sources":["../../../src/functions/uniapp/detectAndroidProjectStructure.ts"],"names":[],"mappings":"AA+BA,MAAM,UAAU,mCAAmC,CACjD,WAAmB,EACnB,IAAuC;IAEvC,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,CAAC,CAAA;IAC1E,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAA;IAE5D,MAAM,aAAa,GAAG,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,CAAA;IACrD,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;IAEvC,IAAI,SAAiB,CAAA;IACrB,IAAI,0BAAmC,CAAA;IACvC,IAAI,kBAA2B,CAAA;IAE/B,IAAI,aAAa,EAAE,CAAC;QAClB,SAAS,GAAG,YAAY,CAAA;QACxB,0BAA0B,GAAG,IAAI,CAAA;QACjC,kBAAkB,GAAG,KAAK,CAAA;IAC5B,CAAC;SAAM,IAAI,MAAM,EAAE,CAAC;QAClB,SAAS,GAAG,KAAK,CAAA;QACjB,0BAA0B,GAAG,KAAK,CAAA;QAClC,kBAAkB,GAAG,IAAI,CAAA;IAC3B,CAAC;SAAM,CAAC;QAEN,SAAS,GAAG,KAAK,CAAA;QACjB,0BAA0B,GAAG,KAAK,CAAA;QAClC,kBAAkB,GAAG,IAAI,CAAA;IAC3B,CAAC;IAED,OAAO;QACL,SAAS;QACT,0BAA0B;QAC1B,kBAAkB;KACnB,CAAA;AACH,CAAC"}
@@ -1,4 +1,8 @@
1
1
  import type { FileSystem, Path } from '../../../references/node.d';
2
+ export interface DetectProjectTypeDeps {
3
+ existsSync: FileSystem['existsSync'];
4
+ join: Path['join'];
5
+ }
2
6
  export declare enum UniAppProjectType {
3
7
  HBUILDERX = "hbuilderx",
4
8
  CLI = "cli"
@@ -10,7 +14,7 @@ export interface ProjectTypeResult {
10
14
  pagesPath?: string;
11
15
  error?: string;
12
16
  }
13
- export declare function isHBuilderXProject(projectPath: string, fs: FileSystem): boolean;
14
- export declare function isCLIProject(projectPath: string, fs: FileSystem): boolean;
15
- export declare function detectUniAppProjectType(projectPath: string, fs: FileSystem): UniAppProjectType;
16
- export declare function detectProjectType(projectPath: string, fs: FileSystem, path: Path): ProjectTypeResult;
17
+ export declare function isHBuilderXProject(projectPath: string, deps: DetectProjectTypeDeps): boolean;
18
+ export declare function isCLIProject(projectPath: string, deps: DetectProjectTypeDeps): boolean;
19
+ export declare function detectUniAppProjectType(projectPath: string, deps: DetectProjectTypeDeps): UniAppProjectType;
20
+ export declare function detectProjectType(projectPath: string, deps: DetectProjectTypeDeps): ProjectTypeResult;
@@ -3,54 +3,54 @@ export var UniAppProjectType;
3
3
  UniAppProjectType["HBUILDERX"] = "hbuilderx";
4
4
  UniAppProjectType["CLI"] = "cli";
5
5
  })(UniAppProjectType || (UniAppProjectType = {}));
6
- export function isHBuilderXProject(projectPath, fs) {
6
+ export function isHBuilderXProject(projectPath, deps) {
7
7
  const hbuilderxPath = `${projectPath}/.hbuilderx`;
8
8
  const uniModulesPath = `${projectPath}/uni_modules`;
9
- return fs.existsSync(hbuilderxPath) || fs.existsSync(uniModulesPath);
9
+ return deps.existsSync(hbuilderxPath) || deps.existsSync(uniModulesPath);
10
10
  }
11
- export function isCLIProject(projectPath, fs) {
11
+ export function isCLIProject(projectPath, deps) {
12
12
  const packagePath = `${projectPath}/package.json`;
13
13
  const nodeModulesPath = `${projectPath}/node_modules`;
14
14
  const vueConfigPath = `${projectPath}/vue.config.js`;
15
15
  const viteConfigPath = `${projectPath}/vite.config.js`;
16
- const hasPackageJson = fs.existsSync(packagePath);
17
- const hasNodeModules = fs.existsSync(nodeModulesPath);
18
- const hasVueConfig = fs.existsSync(vueConfigPath);
19
- const hasViteConfig = fs.existsSync(viteConfigPath);
16
+ const hasPackageJson = deps.existsSync(packagePath);
17
+ const hasNodeModules = deps.existsSync(nodeModulesPath);
18
+ const hasVueConfig = deps.existsSync(vueConfigPath);
19
+ const hasViteConfig = deps.existsSync(viteConfigPath);
20
20
  return hasPackageJson && (hasNodeModules || hasVueConfig || hasViteConfig);
21
21
  }
22
- export function detectUniAppProjectType(projectPath, fs) {
23
- if (isHBuilderXProject(projectPath, fs)) {
22
+ export function detectUniAppProjectType(projectPath, deps) {
23
+ if (isHBuilderXProject(projectPath, deps)) {
24
24
  return UniAppProjectType.HBUILDERX;
25
25
  }
26
- if (isCLIProject(projectPath, fs)) {
26
+ if (isCLIProject(projectPath, deps)) {
27
27
  return UniAppProjectType.CLI;
28
28
  }
29
29
  return UniAppProjectType.CLI;
30
30
  }
31
- export function detectProjectType(projectPath, fs, path) {
31
+ export function detectProjectType(projectPath, deps) {
32
32
  try {
33
- const manifestSrcPath = path.join(projectPath, 'src', 'manifest.json');
34
- const manifestRootPath = path.join(projectPath, 'manifest.json');
35
- const hasManifest = fs.existsSync(manifestSrcPath) || fs.existsSync(manifestRootPath);
33
+ const manifestSrcPath = deps.join(projectPath, 'src', 'manifest.json');
34
+ const manifestRootPath = deps.join(projectPath, 'manifest.json');
35
+ const hasManifest = deps.existsSync(manifestSrcPath) || deps.existsSync(manifestRootPath);
36
36
  if (!hasManifest) {
37
37
  return {
38
38
  isUniApp: false,
39
39
  error: '未找到 manifest.json 文件,不是 UniApp 项目'
40
40
  };
41
41
  }
42
- const pagesSrcPath = path.join(projectPath, 'src', 'pages.json');
43
- const pagesRootPath = path.join(projectPath, 'pages.json');
44
- const hasPages = fs.existsSync(pagesSrcPath) || fs.existsSync(pagesRootPath);
42
+ const pagesSrcPath = deps.join(projectPath, 'src', 'pages.json');
43
+ const pagesRootPath = deps.join(projectPath, 'pages.json');
44
+ const hasPages = deps.existsSync(pagesSrcPath) || deps.existsSync(pagesRootPath);
45
45
  if (!hasPages) {
46
46
  return {
47
47
  isUniApp: false,
48
48
  error: '未找到 pages.json 文件,不是 UniApp 项目'
49
49
  };
50
50
  }
51
- const projectType = detectUniAppProjectType(projectPath, fs);
52
- const manifestPath = fs.existsSync(manifestSrcPath) ? manifestSrcPath : manifestRootPath;
53
- const pagesPath = fs.existsSync(pagesSrcPath) ? pagesSrcPath : pagesRootPath;
51
+ const projectType = detectUniAppProjectType(projectPath, deps);
52
+ const manifestPath = deps.existsSync(manifestSrcPath) ? manifestSrcPath : manifestRootPath;
53
+ const pagesPath = deps.existsSync(pagesSrcPath) ? pagesSrcPath : pagesRootPath;
54
54
  return {
55
55
  isUniApp: true,
56
56
  projectType,
@@ -1 +1 @@
1
- {"version":3,"file":"detectProjectType.js","sourceRoot":"","sources":["../../../src/functions/uniapp/detectProjectType.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"detectProjectType.js","sourceRoot":"","sources":["../../../src/functions/uniapp/detectProjectType.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,17 @@
1
1
  import type { FileSystem, Path } from '../../../references/node.d';
2
2
  import type { JSON5Parser } from '../../../references/json5.d';
3
+ export interface ParseManifestDeps {
4
+ existsSync: FileSystem['existsSync'];
5
+ readFileSync: FileSystem['readFileSync'];
6
+ join: Path['join'];
7
+ parse: JSON5Parser['parse'];
8
+ }
3
9
  export interface UniAppManifest {
4
10
  appid: string;
5
11
  name: string;
6
12
  description?: string;
7
13
  }
8
- export declare function parseManifest(projectPath: string, fs: FileSystem, path: Path, json5: JSON5Parser): {
14
+ export declare function parseManifest(projectPath: string, deps: ParseManifestDeps): {
9
15
  success: boolean;
10
16
  manifest?: UniAppManifest;
11
17
  error?: string;
@@ -1,6 +1,9 @@
1
1
  import { detectProjectType } from './detectProjectType';
2
- export function parseManifest(projectPath, fs, path, json5) {
3
- const typeResult = detectProjectType(projectPath, fs, path);
2
+ export function parseManifest(projectPath, deps) {
3
+ const typeResult = detectProjectType(projectPath, {
4
+ existsSync: deps.existsSync,
5
+ join: deps.join
6
+ });
4
7
  if (!typeResult.isUniApp) {
5
8
  return { success: false, error: typeResult.error || '不是 UniApp 项目' };
6
9
  }
@@ -9,8 +12,8 @@ export function parseManifest(projectPath, fs, path, json5) {
9
12
  }
10
13
  let manifest;
11
14
  try {
12
- const manifestContent = fs.readFileSync(typeResult.manifestPath, 'utf8');
13
- manifest = json5.parse(manifestContent);
15
+ const manifestContent = deps.readFileSync(typeResult.manifestPath, 'utf8');
16
+ manifest = deps.parse(manifestContent);
14
17
  }
15
18
  catch (error) {
16
19
  return { success: false, error: `解析 manifest.json 失败: ${error instanceof Error ? error.message : String(error)}` };
@@ -1 +1 @@
1
- {"version":3,"file":"parseManifest.js","sourceRoot":"","sources":["../../../src/functions/uniapp/parseManifest.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAsBvD,MAAM,UAAU,aAAa,CAC3B,WAAmB,EACnB,EAAc,EACd,IAAU,EACV,KAAkB;IAGlB,MAAM,UAAU,GAAG,iBAAiB,CAAC,WAAW,EAAE,EAAE,EAAE,IAAI,CAAC,CAAA;IAE3D,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;QACzB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,KAAK,IAAI,cAAc,EAAE,CAAA;IACtE,CAAC;IAED,IAAI,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC;QAC7B,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,uBAAuB,EAAE,CAAA;IAC3D,CAAC;IAED,IAAI,QAAa,CAAA;IACjB,IAAI,CAAC;QACH,MAAM,eAAe,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,YAAY,EAAE,MAAM,CAAC,CAAA;QACxE,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,eAAe,CAAC,CAAA;IACzC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,wBAAwB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,CAAA;IACpH,CAAC;IAGD,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QACpB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,yCAAyC,EAAE,CAAA;IAC7E,CAAC;IAED,IAAI,OAAO,QAAQ,CAAC,KAAK,KAAK,QAAQ,IAAI,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACvE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,mCAAmC,EAAE,CAAA;IACvE,CAAC;IAGD,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACnB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,sCAAsC,EAAE,CAAA;IAC1E,CAAC;IAED,IAAI,OAAO,QAAQ,CAAC,IAAI,KAAK,QAAQ,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACrE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,iCAAiC,EAAE,CAAA;IACrE,CAAC;IAGD,MAAM,eAAe,GAAG,oBAAoB,CAAA;IAE5C,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1C,OAAO;YACL,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,gBAAgB,QAAQ,CAAC,KAAK,wCAAwC;SAC9E,CAAA;IACH,CAAC;IAED,OAAO;QACL,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE;YACR,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,WAAW,EAAE,QAAQ,CAAC,WAAW;SAClC;KACF,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"parseManifest.js","sourceRoot":"","sources":["../../../src/functions/uniapp/parseManifest.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AA+BvD,MAAM,UAAU,aAAa,CAC3B,WAAmB,EACnB,IAAuB;IAGvB,MAAM,UAAU,GAAG,iBAAiB,CAAC,WAAW,EAAE;QAChD,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,IAAI,EAAE,IAAI,CAAC,IAAI;KAChB,CAAC,CAAA;IAEF,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;QACzB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,KAAK,IAAI,cAAc,EAAE,CAAA;IACtE,CAAC;IAED,IAAI,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC;QAC7B,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,uBAAuB,EAAE,CAAA;IAC3D,CAAC;IAED,IAAI,QAAa,CAAA;IACjB,IAAI,CAAC;QACH,MAAM,eAAe,GAAG,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,YAAY,EAAE,MAAM,CAAC,CAAA;QAC1E,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAA;IACxC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,wBAAwB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,CAAA;IACpH,CAAC;IAGD,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QACpB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,yCAAyC,EAAE,CAAA;IAC7E,CAAC;IAED,IAAI,OAAO,QAAQ,CAAC,KAAK,KAAK,QAAQ,IAAI,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACvE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,mCAAmC,EAAE,CAAA;IACvE,CAAC;IAGD,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACnB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,sCAAsC,EAAE,CAAA;IAC1E,CAAC;IAED,IAAI,OAAO,QAAQ,CAAC,IAAI,KAAK,QAAQ,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACrE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,iCAAiC,EAAE,CAAA;IACrE,CAAC;IAGD,MAAM,eAAe,GAAG,oBAAoB,CAAA;IAE5C,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1C,OAAO;YACL,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,gBAAgB,QAAQ,CAAC,KAAK,wCAAwC;SAC9E,CAAA;IACH,CAAC;IAED,OAAO;QACL,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE;YACR,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,WAAW,EAAE,QAAQ,CAAC,WAAW;SAClC;KACF,CAAA;AACH,CAAC"}
@@ -1,3 +1,7 @@
1
1
  import type { UniApp } from '../../../references/uniapp.d';
2
- import type { Timer } from '../../../references/timer.d';
3
- export declare function waitForPages(uniApp: UniApp, timer: Timer, timeout?: number): Promise<any[]>;
2
+ import type { setTimeout } from '../../../references/timer.d';
3
+ export interface WaitForPagesDeps {
4
+ getCurrentPages: UniApp['getCurrentPages'];
5
+ setTimeout: typeof setTimeout;
6
+ }
7
+ export declare function waitForPages(deps: WaitForPagesDeps, timeout?: number): Promise<any[]>;
@@ -1,8 +1,8 @@
1
- export function waitForPages(uniApp, timer, timeout = 5000) {
1
+ export function waitForPages(deps, timeout = 5000) {
2
2
  return new Promise((resolve, reject) => {
3
3
  const startTime = Date.now();
4
4
  const checkPages = () => {
5
- const pages = uniApp.getCurrentPages();
5
+ const pages = deps.getCurrentPages();
6
6
  if (pages.length > 0) {
7
7
  resolve(pages);
8
8
  return;
@@ -11,7 +11,7 @@ export function waitForPages(uniApp, timer, timeout = 5000) {
11
11
  reject(new Error('等待页面栈超时'));
12
12
  return;
13
13
  }
14
- timer.setTimeout(checkPages, 100);
14
+ deps.setTimeout(checkPages, 100);
15
15
  };
16
16
  checkPages();
17
17
  });
@@ -1 +1 @@
1
- {"version":3,"file":"waitForPages.js","sourceRoot":"","sources":["../../../src/functions/uniapp/waitForPages.ts"],"names":[],"mappings":"AAkBA,MAAM,UAAU,YAAY,CAAC,MAAc,EAAE,KAAY,EAAE,OAAO,GAAG,IAAI;IACvE,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,MAAM,UAAU,GAAG,GAAG,EAAE;YACtB,MAAM,KAAK,GAAG,MAAM,CAAC,eAAe,EAAE,CAAC;YAEvC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACrB,OAAO,CAAC,KAAK,CAAC,CAAC;gBACf,OAAO;YACT,CAAC;YAGD,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,GAAG,OAAO,EAAE,CAAC;gBACrC,MAAM,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;gBAC7B,OAAO;YACT,CAAC;YAGD,KAAK,CAAC,UAAU,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;QACpC,CAAC,CAAC;QAEF,UAAU,EAAE,CAAC;IACf,CAAC,CAAC,CAAC;AACL,CAAC;AAAA,CAAC"}
1
+ {"version":3,"file":"waitForPages.js","sourceRoot":"","sources":["../../../src/functions/uniapp/waitForPages.ts"],"names":[],"mappings":"AAwBA,MAAM,UAAU,YAAY,CAAC,IAAsB,EAAE,OAAO,GAAG,IAAI;IACjE,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,MAAM,UAAU,GAAG,GAAG,EAAE;YACtB,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;YAErC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACrB,OAAO,CAAC,KAAK,CAAC,CAAC;gBACf,OAAO;YACT,CAAC;YAGD,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,GAAG,OAAO,EAAE,CAAC;gBACrC,MAAM,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;gBAC7B,OAAO;YACT,CAAC;YAGD,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;QACnC,CAAC,CAAC;QAEF,UAAU,EAAE,CAAC;IACf,CAAC,CAAC,CAAC;AACL,CAAC;AAAA,CAAC"}
@@ -0,0 +1,19 @@
1
+ export interface AVLNode<T> {
2
+ value: T;
3
+ left: AVLNode<T> | null;
4
+ right: AVLNode<T> | null;
5
+ height: number;
6
+ }
7
+ export interface AVLTree<T> {
8
+ insert(value: T): void;
9
+ search(value: T): boolean;
10
+ delete(value: T): boolean;
11
+ findMin(): T | undefined;
12
+ findMax(): T | undefined;
13
+ inorderTraversal(): T[];
14
+ height(): number;
15
+ size(): number;
16
+ isBalanced(): boolean;
17
+ clear(): void;
18
+ }
19
+ export declare function createAVLTree<T>(compare?: (a: T, b: T) => number): AVLTree<T>;