zcw-shared 1.46.1 → 1.47.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 (480) hide show
  1. package/dist/functions/android/integrateUniAppNativePlugin.js +36 -8
  2. package/dist/functions/android/integrateUniAppNativePlugin.js.map +1 -1
  3. package/dist/functions/async/sleep.d.ts +5 -0
  4. package/dist/functions/async/sleep.js +6 -0
  5. package/dist/functions/async/sleep.js.map +1 -0
  6. package/dist/functions/async/timeout.d.ts +6 -0
  7. package/dist/functions/async/timeout.js +12 -0
  8. package/dist/functions/async/timeout.js.map +1 -0
  9. package/dist/functions/browser/computePosition.d.ts +6 -0
  10. package/dist/functions/browser/computePosition.js +49 -0
  11. package/dist/functions/browser/computePosition.js.map +1 -0
  12. package/dist/functions/browser/createSharedKeyboardCenter.d.ts +18 -0
  13. package/dist/functions/browser/createSharedKeyboardCenter.js +58 -0
  14. package/dist/functions/browser/createSharedKeyboardCenter.js.map +1 -0
  15. package/dist/functions/browser/createThrottledEventListener.d.ts +11 -0
  16. package/dist/functions/browser/createThrottledEventListener.js +51 -0
  17. package/dist/functions/browser/createThrottledEventListener.js.map +1 -0
  18. package/dist/functions/browser/demonstrateResourceLoading.d.ts +32 -0
  19. package/dist/functions/browser/demonstrateResourceLoading.js +169 -0
  20. package/dist/functions/browser/demonstrateResourceLoading.js.map +1 -0
  21. package/dist/functions/browser/detectOverflow.d.ts +12 -0
  22. package/dist/functions/browser/detectOverflow.js +17 -0
  23. package/dist/functions/browser/detectOverflow.js.map +1 -0
  24. package/dist/functions/browser/getAlignment.d.ts +2 -0
  25. package/dist/functions/browser/getAlignment.js +5 -0
  26. package/dist/functions/browser/getAlignment.js.map +1 -0
  27. package/dist/functions/browser/getBasePlacement.d.ts +2 -0
  28. package/dist/functions/browser/getBasePlacement.js +4 -0
  29. package/dist/functions/browser/getBasePlacement.js.map +1 -0
  30. package/dist/functions/browser/getCrossAxisFlip.d.ts +2 -0
  31. package/dist/functions/browser/getCrossAxisFlip.js +11 -0
  32. package/dist/functions/browser/getCrossAxisFlip.js.map +1 -0
  33. package/dist/functions/browser/getElementRect.d.ts +3 -0
  34. package/dist/functions/browser/getElementRect.js +14 -0
  35. package/dist/functions/browser/getElementRect.js.map +1 -0
  36. package/dist/functions/browser/getFlipPlacements.d.ts +2 -0
  37. package/dist/functions/browser/getFlipPlacements.js +13 -0
  38. package/dist/functions/browser/getFlipPlacements.js.map +1 -0
  39. package/dist/functions/browser/getMainAxisFlip.d.ts +2 -0
  40. package/dist/functions/browser/getMainAxisFlip.js +17 -0
  41. package/dist/functions/browser/getMainAxisFlip.js.map +1 -0
  42. package/dist/functions/browser/getRelativePosition.d.ts +3 -0
  43. package/dist/functions/browser/getRelativePosition.js +14 -0
  44. package/dist/functions/browser/getRelativePosition.js.map +1 -0
  45. package/dist/functions/browser/getViewportRect.d.ts +7 -0
  46. package/dist/functions/browser/getViewportRect.js +15 -0
  47. package/dist/functions/browser/getViewportRect.js.map +1 -0
  48. package/dist/functions/browser/isValidPlacement.d.ts +2 -0
  49. package/dist/functions/browser/isValidPlacement.js +16 -0
  50. package/dist/functions/browser/isValidPlacement.js.map +1 -0
  51. package/dist/functions/browser/pickFile.d.ts +15 -0
  52. package/dist/functions/browser/pickFile.js +48 -0
  53. package/dist/functions/browser/pickFile.js.map +1 -0
  54. package/dist/functions/build/generateExports.d.ts +26 -0
  55. package/dist/functions/build/generateExports.js +34 -0
  56. package/dist/functions/build/generateExports.js.map +1 -0
  57. package/dist/functions/core/diff/diff.d.ts +25 -0
  58. package/dist/functions/core/diff/diff.js +316 -0
  59. package/dist/functions/core/diff/diff.js.map +1 -0
  60. package/dist/functions/core/diff/vueDiff.d.ts +38 -0
  61. package/dist/functions/core/diff/vueDiff.js +333 -0
  62. package/dist/functions/core/diff/vueDiff.js.map +1 -0
  63. package/dist/functions/core/generator/generatorUtils.d.ts +16 -0
  64. package/dist/functions/core/generator/generatorUtils.js +139 -0
  65. package/dist/functions/core/generator/generatorUtils.js.map +1 -0
  66. package/dist/functions/core/type/isType.d.ts +11 -0
  67. package/dist/functions/core/type/isType.js +30 -0
  68. package/dist/functions/core/type/isType.js.map +1 -0
  69. package/dist/functions/data/array-object/chunk.d.ts +1 -0
  70. package/dist/functions/data/array-object/chunk.js +11 -0
  71. package/dist/functions/data/array-object/chunk.js.map +1 -0
  72. package/dist/functions/data/array-object/deepClone.d.ts +12 -0
  73. package/dist/functions/data/array-object/deepClone.js +131 -0
  74. package/dist/functions/data/array-object/deepClone.js.map +1 -0
  75. package/dist/functions/data/array-object/evolve.d.ts +3 -0
  76. package/dist/functions/data/array-object/evolve.js +15 -0
  77. package/dist/functions/data/array-object/evolve.js.map +1 -0
  78. package/dist/functions/data/array-object/flatten.d.ts +7 -0
  79. package/dist/functions/data/array-object/flatten.js +60 -0
  80. package/dist/functions/data/array-object/flatten.js.map +1 -0
  81. package/dist/functions/data/array-object/flattenObject.d.ts +5 -0
  82. package/dist/functions/data/array-object/flattenObject.js +102 -0
  83. package/dist/functions/data/array-object/flattenObject.js.map +1 -0
  84. package/dist/functions/data/array-object/groupBy.d.ts +1 -0
  85. package/dist/functions/data/array-object/groupBy.js +14 -0
  86. package/dist/functions/data/array-object/groupBy.js.map +1 -0
  87. package/dist/functions/data/array-object/omit.d.ts +1 -0
  88. package/dist/functions/data/array-object/omit.js +8 -0
  89. package/dist/functions/data/array-object/omit.js.map +1 -0
  90. package/dist/functions/data/array-object/pick.d.ts +1 -0
  91. package/dist/functions/data/array-object/pick.js +10 -0
  92. package/dist/functions/data/array-object/pick.js.map +1 -0
  93. package/dist/functions/data/array-object/shuffle.d.ts +1 -0
  94. package/dist/functions/data/array-object/shuffle.js +9 -0
  95. package/dist/functions/data/array-object/shuffle.js.map +1 -0
  96. package/dist/functions/data/array-object/sortBy.d.ts +1 -0
  97. package/dist/functions/data/array-object/sortBy.js +13 -0
  98. package/dist/functions/data/array-object/sortBy.js.map +1 -0
  99. package/dist/functions/data/array-object/unique.d.ts +10 -0
  100. package/dist/functions/data/array-object/unique.js +85 -0
  101. package/dist/functions/data/array-object/unique.js.map +1 -0
  102. package/dist/functions/data/date/dateRange.d.ts +1 -0
  103. package/dist/functions/data/date/dateRange.js +18 -0
  104. package/dist/functions/data/date/dateRange.js.map +1 -0
  105. package/dist/functions/data/date/formatDate.d.ts +1 -0
  106. package/dist/functions/data/date/formatDate.js +21 -0
  107. package/dist/functions/data/date/formatDate.js.map +1 -0
  108. package/dist/functions/data/date/timeAgo.d.ts +1 -0
  109. package/dist/functions/data/date/timeAgo.js +49 -0
  110. package/dist/functions/data/date/timeAgo.js.map +1 -0
  111. package/dist/functions/data/number/average.d.ts +1 -0
  112. package/dist/functions/data/number/average.js +8 -0
  113. package/dist/functions/data/number/average.js.map +1 -0
  114. package/dist/functions/data/number/clamp.d.ts +1 -0
  115. package/dist/functions/data/number/clamp.js +7 -0
  116. package/dist/functions/data/number/clamp.js.map +1 -0
  117. package/dist/functions/data/number/formatNumber.d.ts +8 -0
  118. package/dist/functions/data/number/formatNumber.js +16 -0
  119. package/dist/functions/data/number/formatNumber.js.map +1 -0
  120. package/dist/functions/data/number/median.d.ts +1 -0
  121. package/dist/functions/data/number/median.js +14 -0
  122. package/dist/functions/data/number/median.js.map +1 -0
  123. package/dist/functions/data/number/percentile.d.ts +1 -0
  124. package/dist/functions/data/number/percentile.js +18 -0
  125. package/dist/functions/data/number/percentile.js.map +1 -0
  126. package/dist/functions/data/number/random.d.ts +4 -0
  127. package/dist/functions/data/number/random.js +9 -0
  128. package/dist/functions/data/number/random.js.map +1 -0
  129. package/dist/functions/data/number/range.d.ts +1 -0
  130. package/dist/functions/data/number/range.js +18 -0
  131. package/dist/functions/data/number/range.js.map +1 -0
  132. package/dist/functions/data/number/sum.d.ts +1 -0
  133. package/dist/functions/data/number/sum.js +4 -0
  134. package/dist/functions/data/number/sum.js.map +1 -0
  135. package/dist/functions/data/randomRegion.d.ts +24 -0
  136. package/dist/functions/data/randomRegion.js +74 -0
  137. package/dist/functions/data/randomRegion.js.map +1 -0
  138. package/dist/functions/data/string/base64.d.ts +5 -0
  139. package/dist/functions/data/string/base64.js +6 -0
  140. package/dist/functions/data/string/base64.js.map +1 -0
  141. package/dist/functions/data/string/capitalize.d.ts +1 -0
  142. package/dist/functions/data/string/capitalize.js +6 -0
  143. package/dist/functions/data/string/capitalize.js.map +1 -0
  144. package/dist/functions/data/string/caseConverter.d.ts +19 -0
  145. package/dist/functions/data/string/caseConverter.js +94 -0
  146. package/dist/functions/data/string/caseConverter.js.map +1 -0
  147. package/dist/functions/data/string/desensitize.d.ts +13 -0
  148. package/dist/functions/data/string/desensitize.js +107 -0
  149. package/dist/functions/data/string/desensitize.js.map +1 -0
  150. package/dist/functions/data/string/htmlEscape.d.ts +20 -0
  151. package/dist/functions/data/string/htmlEscape.js +80 -0
  152. package/dist/functions/data/string/htmlEscape.js.map +1 -0
  153. package/dist/functions/data/string/levenshtein.d.ts +1 -0
  154. package/dist/functions/data/string/levenshtein.js +27 -0
  155. package/dist/functions/data/string/levenshtein.js.map +1 -0
  156. package/dist/functions/data/string/normalize.d.ts +8 -0
  157. package/dist/functions/data/string/normalize.js +37 -0
  158. package/dist/functions/data/string/normalize.js.map +1 -0
  159. package/dist/functions/data/string/pad.d.ts +13 -0
  160. package/dist/functions/data/string/pad.js +50 -0
  161. package/dist/functions/data/string/pad.js.map +1 -0
  162. package/dist/functions/data/string/palindrome.d.ts +3 -0
  163. package/dist/functions/data/string/palindrome.js +15 -0
  164. package/dist/functions/data/string/palindrome.js.map +1 -0
  165. package/dist/functions/data/string/similarity.d.ts +1 -0
  166. package/dist/functions/data/string/similarity.js +13 -0
  167. package/dist/functions/data/string/similarity.js.map +1 -0
  168. package/dist/functions/data/string/template.d.ts +4 -0
  169. package/dist/functions/data/string/template.js +21 -0
  170. package/dist/functions/data/string/template.js.map +1 -0
  171. package/dist/functions/data/string/testRegex.d.ts +20 -0
  172. package/dist/functions/data/string/testRegex.js +300 -0
  173. package/dist/functions/data/string/testRegex.js.map +1 -0
  174. package/dist/functions/data/string/wordCount.d.ts +5 -0
  175. package/dist/functions/data/string/wordCount.js +11 -0
  176. package/dist/functions/data/string/wordCount.js.map +1 -0
  177. package/dist/functions/data/tree/buildTree.d.ts +7 -0
  178. package/dist/functions/data/tree/buildTree.js +27 -0
  179. package/dist/functions/data/tree/buildTree.js.map +1 -0
  180. package/dist/functions/data/tree/filterTree.d.ts +4 -0
  181. package/dist/functions/data/tree/filterTree.js +21 -0
  182. package/dist/functions/data/tree/filterTree.js.map +1 -0
  183. package/dist/functions/data/tree/findNode.d.ts +4 -0
  184. package/dist/functions/data/tree/findNode.js +21 -0
  185. package/dist/functions/data/tree/findNode.js.map +1 -0
  186. package/dist/functions/data/tree/flattenTree.d.ts +6 -0
  187. package/dist/functions/data/tree/flattenTree.js +21 -0
  188. package/dist/functions/data/tree/flattenTree.js.map +1 -0
  189. package/dist/functions/file/walk.d.ts +18 -0
  190. package/dist/functions/file/walk.js +58 -0
  191. package/dist/functions/file/walk.js.map +1 -0
  192. package/dist/functions/integrations/ag-grid/generateLicense.d.ts +7 -0
  193. package/dist/functions/integrations/ag-grid/generateLicense.js +12 -0
  194. package/dist/functions/integrations/ag-grid/generateLicense.js.map +1 -0
  195. package/dist/functions/integrations/uniapp/app-plus/buildAndroidApp.d.ts +30 -0
  196. package/dist/functions/integrations/uniapp/app-plus/buildAndroidApp.js +884 -0
  197. package/dist/functions/integrations/uniapp/app-plus/buildAndroidApp.js.map +1 -0
  198. package/dist/functions/integrations/uniapp/app-plus/buildIOSApp.d.ts +31 -0
  199. package/dist/functions/integrations/uniapp/app-plus/buildIOSApp.js +900 -0
  200. package/dist/functions/integrations/uniapp/app-plus/buildIOSApp.js.map +1 -0
  201. package/dist/functions/integrations/uniapp/build.d.ts +21 -0
  202. package/dist/functions/integrations/uniapp/build.js +83 -0
  203. package/dist/functions/integrations/uniapp/build.js.map +1 -0
  204. package/dist/functions/integrations/uniapp/detectAndroidProjectStructure.d.ts +11 -0
  205. package/dist/functions/integrations/uniapp/detectAndroidProjectStructure.js +30 -0
  206. package/dist/functions/integrations/uniapp/detectAndroidProjectStructure.js.map +1 -0
  207. package/dist/functions/integrations/uniapp/detectProjectType.d.ts +20 -0
  208. package/dist/functions/integrations/uniapp/detectProjectType.js +68 -0
  209. package/dist/functions/integrations/uniapp/detectProjectType.js.map +1 -0
  210. package/dist/functions/integrations/uniapp/parseManifest.d.ts +20 -0
  211. package/dist/functions/integrations/uniapp/parseManifest.js +51 -0
  212. package/dist/functions/integrations/uniapp/parseManifest.js.map +1 -0
  213. package/dist/functions/integrations/uniapp/waitForPages.d.ts +7 -0
  214. package/dist/functions/integrations/uniapp/waitForPages.js +20 -0
  215. package/dist/functions/integrations/uniapp/waitForPages.js.map +1 -0
  216. package/dist/functions/integrations/vue/dynamicMount.d.ts +18 -0
  217. package/dist/functions/integrations/vue/dynamicMount.js +25 -0
  218. package/dist/functions/integrations/vue/dynamicMount.js.map +1 -0
  219. package/dist/functions/integrations/vue/extractColorsFromVueFile.d.ts +3 -0
  220. package/dist/functions/integrations/vue/extractColorsFromVueFile.js +18 -0
  221. package/dist/functions/integrations/vue/extractColorsFromVueFile.js.map +1 -0
  222. package/dist/functions/integrations/vue/extractColorsFromVueSection.d.ts +3 -0
  223. package/dist/functions/integrations/vue/extractColorsFromVueSection.js +53 -0
  224. package/dist/functions/integrations/vue/extractColorsFromVueSection.js.map +1 -0
  225. package/dist/functions/integrations/vue/filterSections.d.ts +2 -0
  226. package/dist/functions/integrations/vue/filterSections.js +11 -0
  227. package/dist/functions/integrations/vue/filterSections.js.map +1 -0
  228. package/dist/functions/integrations/vue/isVNode.d.ts +2 -0
  229. package/dist/functions/integrations/vue/isVNode.js +6 -0
  230. package/dist/functions/integrations/vue/isVNode.js.map +1 -0
  231. package/dist/functions/integrations/vue/isVueComponent.d.ts +2 -0
  232. package/dist/functions/integrations/vue/isVueComponent.js +6 -0
  233. package/dist/functions/integrations/vue/isVueComponent.js.map +1 -0
  234. package/dist/functions/integrations/vue/parseVueFile.d.ts +2 -0
  235. package/dist/functions/integrations/vue/parseVueFile.js +53 -0
  236. package/dist/functions/integrations/vue/parseVueFile.js.map +1 -0
  237. package/dist/functions/integrations/wechat/miniapp/downloadFile.d.ts +6 -0
  238. package/dist/functions/integrations/wechat/miniapp/downloadFile.js +39 -0
  239. package/dist/functions/integrations/wechat/miniapp/downloadFile.js.map +1 -0
  240. package/dist/functions/ios/integrateCameraGallery.d.ts +16 -0
  241. package/dist/functions/ios/integrateCameraGallery.js +93 -0
  242. package/dist/functions/ios/integrateCameraGallery.js.map +1 -0
  243. package/dist/functions/ios/integrateNativePlugin.js.map +1 -1
  244. package/dist/functions/patterns/MyPromise.d.ts +32 -0
  245. package/dist/functions/patterns/MyPromise.js +254 -0
  246. package/dist/functions/patterns/MyPromise.js.map +1 -0
  247. package/dist/functions/patterns/functionBind.d.ts +4 -0
  248. package/dist/functions/patterns/functionBind.js +33 -0
  249. package/dist/functions/patterns/functionBind.js.map +1 -0
  250. package/dist/functions/patterns/myInstanceof.d.ts +5 -0
  251. package/dist/functions/patterns/myInstanceof.js +56 -0
  252. package/dist/functions/patterns/myInstanceof.js.map +1 -0
  253. package/dist/functions/patterns/myNew.d.ts +3 -0
  254. package/dist/functions/patterns/myNew.js +19 -0
  255. package/dist/functions/patterns/myNew.js.map +1 -0
  256. package/dist/functions/platform/android/buildProject.d.ts +13 -0
  257. package/dist/functions/platform/android/buildProject.js +122 -0
  258. package/dist/functions/platform/android/buildProject.js.map +1 -0
  259. package/dist/functions/platform/android/configureAppIcon.d.ts +17 -0
  260. package/dist/functions/platform/android/configureAppIcon.js +106 -0
  261. package/dist/functions/platform/android/configureAppIcon.js.map +1 -0
  262. package/dist/functions/platform/android/configureLaunchScreen.d.ts +21 -0
  263. package/dist/functions/platform/android/configureLaunchScreen.js +328 -0
  264. package/dist/functions/platform/android/configureLaunchScreen.js.map +1 -0
  265. package/dist/functions/platform/android/detectAndroidModules.d.ts +8 -0
  266. package/dist/functions/platform/android/detectAndroidModules.js +21 -0
  267. package/dist/functions/platform/android/detectAndroidModules.js.map +1 -0
  268. package/dist/functions/platform/android/integrateFacebookLogin.d.ts +12 -0
  269. package/dist/functions/platform/android/integrateFacebookLogin.js +91 -0
  270. package/dist/functions/platform/android/integrateFacebookLogin.js.map +1 -0
  271. package/dist/functions/platform/android/integrateGoogleLogin.d.ts +10 -0
  272. package/dist/functions/platform/android/integrateGoogleLogin.js +199 -0
  273. package/dist/functions/platform/android/integrateGoogleLogin.js.map +1 -0
  274. package/dist/functions/platform/android/integrateMiuiLogin.d.ts +13 -0
  275. package/dist/functions/platform/android/integrateMiuiLogin.js +115 -0
  276. package/dist/functions/platform/android/integrateMiuiLogin.js.map +1 -0
  277. package/dist/functions/platform/android/integrateQQLogin.d.ts +12 -0
  278. package/dist/functions/platform/android/integrateQQLogin.js +130 -0
  279. package/dist/functions/platform/android/integrateQQLogin.js.map +1 -0
  280. package/dist/functions/platform/android/integrateShareTrace.d.ts +10 -0
  281. package/dist/functions/platform/android/integrateShareTrace.js +181 -0
  282. package/dist/functions/platform/android/integrateShareTrace.js.map +1 -0
  283. package/dist/functions/platform/android/integrateSinaLogin.d.ts +13 -0
  284. package/dist/functions/platform/android/integrateSinaLogin.js +85 -0
  285. package/dist/functions/platform/android/integrateSinaLogin.js.map +1 -0
  286. package/dist/functions/platform/android/integrateThirdPartyModule.d.ts +46 -0
  287. package/dist/functions/platform/android/integrateThirdPartyModule.js +251 -0
  288. package/dist/functions/platform/android/integrateThirdPartyModule.js.map +1 -0
  289. package/dist/functions/platform/android/integrateUniAppNativePlugin.d.ts +22 -0
  290. package/dist/functions/platform/android/integrateUniAppNativePlugin.js +631 -0
  291. package/dist/functions/platform/android/integrateUniAppNativePlugin.js.map +1 -0
  292. package/dist/functions/platform/android/integrateUniverifyLogin.d.ts +11 -0
  293. package/dist/functions/platform/android/integrateUniverifyLogin.js +314 -0
  294. package/dist/functions/platform/android/integrateUniverifyLogin.js.map +1 -0
  295. package/dist/functions/platform/android/integrateWechatLogin.d.ts +13 -0
  296. package/dist/functions/platform/android/integrateWechatLogin.js +154 -0
  297. package/dist/functions/platform/android/integrateWechatLogin.js.map +1 -0
  298. package/dist/functions/platform/android/integrateWechatShare.d.ts +13 -0
  299. package/dist/functions/platform/android/integrateWechatShare.js +154 -0
  300. package/dist/functions/platform/android/integrateWechatShare.js.map +1 -0
  301. package/dist/functions/platform/android/modifyGradle.d.ts +28 -0
  302. package/dist/functions/platform/android/modifyGradle.js +119 -0
  303. package/dist/functions/platform/android/modifyGradle.js.map +1 -0
  304. package/dist/functions/platform/android/modifyManifest.d.ts +39 -0
  305. package/dist/functions/platform/android/modifyManifest.js +225 -0
  306. package/dist/functions/platform/android/modifyManifest.js.map +1 -0
  307. package/dist/functions/platform/android/permission.d.ts +54 -0
  308. package/dist/functions/platform/android/permission.js +85 -0
  309. package/dist/functions/platform/android/permission.js.map +1 -0
  310. package/dist/functions/platform/ios/configureAppIcon.d.ts +17 -0
  311. package/dist/functions/platform/ios/configureAppIcon.js +149 -0
  312. package/dist/functions/platform/ios/configureAppIcon.js.map +1 -0
  313. package/dist/functions/platform/ios/configureLaunchScreen.d.ts +17 -0
  314. package/dist/functions/platform/ios/configureLaunchScreen.js +150 -0
  315. package/dist/functions/platform/ios/configureLaunchScreen.js.map +1 -0
  316. package/dist/functions/platform/ios/configurePermissions.d.ts +19 -0
  317. package/dist/functions/platform/ios/configurePermissions.js +120 -0
  318. package/dist/functions/platform/ios/configurePermissions.js.map +1 -0
  319. package/dist/functions/platform/ios/integrateNativePlugin.d.ts +35 -0
  320. package/dist/functions/platform/ios/integrateNativePlugin.js +994 -0
  321. package/dist/functions/platform/ios/integrateNativePlugin.js.map +1 -0
  322. package/dist/functions/platform/ios/integrateQQShare.d.ts +14 -0
  323. package/dist/functions/platform/ios/integrateQQShare.js +132 -0
  324. package/dist/functions/platform/ios/integrateQQShare.js.map +1 -0
  325. package/dist/functions/platform/ios/integrateSinaShare.d.ts +16 -0
  326. package/dist/functions/platform/ios/integrateSinaShare.js +108 -0
  327. package/dist/functions/platform/ios/integrateSinaShare.js.map +1 -0
  328. package/dist/functions/platform/ios/integrateThirdPartyModule.d.ts +62 -0
  329. package/dist/functions/platform/ios/integrateThirdPartyModule.js +883 -0
  330. package/dist/functions/platform/ios/integrateThirdPartyModule.js.map +1 -0
  331. package/dist/functions/platform/ios/integrateWechatOauth.d.ts +14 -0
  332. package/dist/functions/platform/ios/integrateWechatOauth.js +107 -0
  333. package/dist/functions/platform/ios/integrateWechatOauth.js.map +1 -0
  334. package/dist/functions/platform/ios/integrateWechatShare.d.ts +14 -0
  335. package/dist/functions/platform/ios/integrateWechatShare.js +101 -0
  336. package/dist/functions/platform/ios/integrateWechatShare.js.map +1 -0
  337. package/dist/functions/platform/ios/modifyInfoPlistKeyValue.d.ts +2 -0
  338. package/dist/functions/platform/ios/modifyInfoPlistKeyValue.js +45 -0
  339. package/dist/functions/platform/ios/modifyInfoPlistKeyValue.js.map +1 -0
  340. package/dist/functions/platform/ios/safelyModifyProjectPbxproj.d.ts +16 -0
  341. package/dist/functions/platform/ios/safelyModifyProjectPbxproj.js +136 -0
  342. package/dist/functions/platform/ios/safelyModifyProjectPbxproj.js.map +1 -0
  343. package/dist/functions/platform/ios/useAltool.d.ts +39 -0
  344. package/dist/functions/platform/ios/useAltool.js +350 -0
  345. package/dist/functions/platform/ios/useAltool.js.map +1 -0
  346. package/dist/functions/style/buildTokens.d.ts +76 -0
  347. package/dist/functions/style/buildTokens.js +183 -0
  348. package/dist/functions/style/buildTokens.js.map +1 -0
  349. package/dist/functions/style/extractCssVariables.d.ts +16 -0
  350. package/dist/functions/style/extractCssVariables.js +256 -0
  351. package/dist/functions/style/extractCssVariables.js.map +1 -0
  352. package/dist/functions/style/generateVariables.d.ts +7 -0
  353. package/dist/functions/style/generateVariables.js +135 -0
  354. package/dist/functions/style/generateVariables.js.map +1 -0
  355. package/dist/functions/style/mixColors.d.ts +1 -0
  356. package/dist/functions/style/mixColors.js +38 -0
  357. package/dist/functions/style/mixColors.js.map +1 -0
  358. package/dist/functions/style/parseDesignTokens.d.ts +10 -0
  359. package/dist/functions/style/parseDesignTokens.js +216 -0
  360. package/dist/functions/style/parseDesignTokens.js.map +1 -0
  361. package/dist/functions/uniapp/app-plus/buildIOSApp.js +36 -0
  362. package/dist/functions/uniapp/app-plus/buildIOSApp.js.map +1 -1
  363. package/dist/functions/uniapp/camera/showCamera.d.ts +11 -0
  364. package/dist/functions/uniapp/camera/showCamera.js +22 -0
  365. package/dist/functions/uniapp/camera/showCamera.js.map +1 -0
  366. package/dist/functions/uniapp/customer-service/adapters/openCustomerServiceInMiniapp.d.ts +23 -0
  367. package/dist/functions/uniapp/customer-service/adapters/openCustomerServiceInMiniapp.js +69 -0
  368. package/dist/functions/uniapp/customer-service/adapters/openCustomerServiceInMiniapp.js.map +1 -0
  369. package/dist/functions/uniapp/customer-service/showWxCustomerService.d.ts +28 -0
  370. package/dist/functions/uniapp/customer-service/showWxCustomerService.js +25 -0
  371. package/dist/functions/uniapp/customer-service/showWxCustomerService.js.map +1 -0
  372. package/dist/functions/uniapp/file/adapters/readWriteFileInApp.d.ts +10 -0
  373. package/dist/functions/uniapp/file/adapters/readWriteFileInApp.js +97 -0
  374. package/dist/functions/uniapp/file/adapters/readWriteFileInApp.js.map +1 -0
  375. package/dist/functions/uniapp/file/adapters/readWriteFileInH5.d.ts +30 -0
  376. package/dist/functions/uniapp/file/adapters/readWriteFileInH5.js +83 -0
  377. package/dist/functions/uniapp/file/adapters/readWriteFileInH5.js.map +1 -0
  378. package/dist/functions/uniapp/file/adapters/readWriteFileInMiniapp.d.ts +10 -0
  379. package/dist/functions/uniapp/file/adapters/readWriteFileInMiniapp.js +97 -0
  380. package/dist/functions/uniapp/file/adapters/readWriteFileInMiniapp.js.map +1 -0
  381. package/dist/functions/uniapp/file/showFile.d.ts +35 -0
  382. package/dist/functions/uniapp/file/showFile.js +66 -0
  383. package/dist/functions/uniapp/file/showFile.js.map +1 -0
  384. package/dist/functions/uniapp/image/adapters/chooseImageInApp.d.ts +9 -0
  385. package/dist/functions/uniapp/image/adapters/chooseImageInApp.js +52 -0
  386. package/dist/functions/uniapp/image/adapters/chooseImageInApp.js.map +1 -0
  387. package/dist/functions/uniapp/image/adapters/chooseImageInH5.d.ts +9 -0
  388. package/dist/functions/uniapp/image/adapters/chooseImageInH5.js +52 -0
  389. package/dist/functions/uniapp/image/adapters/chooseImageInH5.js.map +1 -0
  390. package/dist/functions/uniapp/image/adapters/chooseImageInMiniapp.d.ts +9 -0
  391. package/dist/functions/uniapp/image/adapters/chooseImageInMiniapp.js +52 -0
  392. package/dist/functions/uniapp/image/adapters/chooseImageInMiniapp.js.map +1 -0
  393. package/dist/functions/uniapp/image/showImage.d.ts +11 -0
  394. package/dist/functions/uniapp/image/showImage.js +23 -0
  395. package/dist/functions/uniapp/image/showImage.js.map +1 -0
  396. package/dist/functions/uniapp/login/adapters/wechatLoginInApp.d.ts +10 -0
  397. package/dist/functions/uniapp/login/adapters/wechatLoginInApp.js +49 -0
  398. package/dist/functions/uniapp/login/adapters/wechatLoginInApp.js.map +1 -0
  399. package/dist/functions/uniapp/login/adapters/wechatLoginInMiniapp.d.ts +9 -0
  400. package/dist/functions/uniapp/login/adapters/wechatLoginInMiniapp.js +27 -0
  401. package/dist/functions/uniapp/login/adapters/wechatLoginInMiniapp.js.map +1 -0
  402. package/dist/functions/uniapp/login/showLogin.d.ts +13 -0
  403. package/dist/functions/uniapp/login/showLogin.js +43 -0
  404. package/dist/functions/uniapp/login/showLogin.js.map +1 -0
  405. package/dist/functions/uniapp/pay/adapters/wechatPayInApp.d.ts +8 -0
  406. package/dist/functions/uniapp/pay/adapters/wechatPayInApp.js +36 -0
  407. package/dist/functions/uniapp/pay/adapters/wechatPayInApp.js.map +1 -0
  408. package/dist/functions/uniapp/pay/adapters/wechatPayInH5.d.ts +13 -0
  409. package/dist/functions/uniapp/pay/adapters/wechatPayInH5.js +44 -0
  410. package/dist/functions/uniapp/pay/adapters/wechatPayInH5.js.map +1 -0
  411. package/dist/functions/uniapp/pay/adapters/wechatPayInMiniapp.d.ts +8 -0
  412. package/dist/functions/uniapp/pay/adapters/wechatPayInMiniapp.js +37 -0
  413. package/dist/functions/uniapp/pay/adapters/wechatPayInMiniapp.js.map +1 -0
  414. package/dist/functions/uniapp/pay/showPay.d.ts +18 -0
  415. package/dist/functions/uniapp/pay/showPay.js +60 -0
  416. package/dist/functions/uniapp/pay/showPay.js.map +1 -0
  417. package/dist/functions/uniapp/phone/adapters/getPhoneInMiniapp.d.ts +6 -0
  418. package/dist/functions/uniapp/phone/adapters/getPhoneInMiniapp.js +41 -0
  419. package/dist/functions/uniapp/phone/adapters/getPhoneInMiniapp.js.map +1 -0
  420. package/dist/functions/uniapp/phone/showWxPhone.d.ts +8 -0
  421. package/dist/functions/uniapp/phone/showWxPhone.js +25 -0
  422. package/dist/functions/uniapp/phone/showWxPhone.js.map +1 -0
  423. package/dist/functions/uniapp/record/adapters/recordInApp.d.ts +12 -0
  424. package/dist/functions/uniapp/record/adapters/recordInApp.js +64 -0
  425. package/dist/functions/uniapp/record/adapters/recordInApp.js.map +1 -0
  426. package/dist/functions/uniapp/record/adapters/recordInH5.d.ts +21 -0
  427. package/dist/functions/uniapp/record/adapters/recordInH5.js +82 -0
  428. package/dist/functions/uniapp/record/adapters/recordInH5.js.map +1 -0
  429. package/dist/functions/uniapp/record/adapters/recordInMiniapp.d.ts +12 -0
  430. package/dist/functions/uniapp/record/adapters/recordInMiniapp.js +64 -0
  431. package/dist/functions/uniapp/record/adapters/recordInMiniapp.js.map +1 -0
  432. package/dist/functions/uniapp/record/showRecord.d.ts +23 -0
  433. package/dist/functions/uniapp/record/showRecord.js +95 -0
  434. package/dist/functions/uniapp/record/showRecord.js.map +1 -0
  435. package/dist/functions/uniapp/scan-code/adapters/scanCodeInApp.d.ts +9 -0
  436. package/dist/functions/uniapp/scan-code/adapters/scanCodeInApp.js +30 -0
  437. package/dist/functions/uniapp/scan-code/adapters/scanCodeInApp.js.map +1 -0
  438. package/dist/functions/uniapp/scan-code/adapters/scanCodeInMiniapp.d.ts +9 -0
  439. package/dist/functions/uniapp/scan-code/adapters/scanCodeInMiniapp.js +30 -0
  440. package/dist/functions/uniapp/scan-code/adapters/scanCodeInMiniapp.js.map +1 -0
  441. package/dist/functions/uniapp/scan-code/showScanCode.d.ts +12 -0
  442. package/dist/functions/uniapp/scan-code/showScanCode.js +28 -0
  443. package/dist/functions/uniapp/scan-code/showScanCode.js.map +1 -0
  444. package/dist/functions/uniapp/subscribe-message/adapters/wechatSubscribeMessageInMiniapp.d.ts +9 -0
  445. package/dist/functions/uniapp/subscribe-message/adapters/wechatSubscribeMessageInMiniapp.js +41 -0
  446. package/dist/functions/uniapp/subscribe-message/adapters/wechatSubscribeMessageInMiniapp.js.map +1 -0
  447. package/dist/functions/uniapp/subscribe-message/showWxSubscribeMessage.d.ts +11 -0
  448. package/dist/functions/uniapp/subscribe-message/showWxSubscribeMessage.js +25 -0
  449. package/dist/functions/uniapp/subscribe-message/showWxSubscribeMessage.js.map +1 -0
  450. package/dist/functions/uniapp/user-info/wxGetUserInfo.d.ts +43 -0
  451. package/dist/functions/uniapp/user-info/wxGetUserInfo.js +55 -0
  452. package/dist/functions/uniapp/user-info/wxGetUserInfo.js.map +1 -0
  453. package/dist/functions/uniapp/video/adapters/chooseVideoInApp.d.ts +9 -0
  454. package/dist/functions/uniapp/video/adapters/chooseVideoInApp.js +31 -0
  455. package/dist/functions/uniapp/video/adapters/chooseVideoInApp.js.map +1 -0
  456. package/dist/functions/uniapp/video/adapters/chooseVideoInH5.d.ts +9 -0
  457. package/dist/functions/uniapp/video/adapters/chooseVideoInH5.js +30 -0
  458. package/dist/functions/uniapp/video/adapters/chooseVideoInH5.js.map +1 -0
  459. package/dist/functions/uniapp/video/adapters/chooseVideoInMiniapp.d.ts +9 -0
  460. package/dist/functions/uniapp/video/adapters/chooseVideoInMiniapp.js +31 -0
  461. package/dist/functions/uniapp/video/adapters/chooseVideoInMiniapp.js.map +1 -0
  462. package/dist/functions/uniapp/video/showVideo.d.ts +11 -0
  463. package/dist/functions/uniapp/video/showVideo.js +23 -0
  464. package/dist/functions/uniapp/video/showVideo.js.map +1 -0
  465. package/dist/functions/validation/parseJwtPayload.d.ts +7 -0
  466. package/dist/functions/validation/parseJwtPayload.js +33 -0
  467. package/dist/functions/validation/parseJwtPayload.js.map +1 -0
  468. package/dist/functions/validation/validate.d.ts +11 -0
  469. package/dist/functions/validation/validate.js +44 -0
  470. package/dist/functions/validation/validate.js.map +1 -0
  471. package/dist/vue-hooks/browser/useBridgeMessage.d.ts +2 -1
  472. package/dist/vue-hooks/browser/useBridgeMessage.js +13 -11
  473. package/dist/vue-hooks/browser/useBridgeMessage.js.map +1 -1
  474. package/package.json +37 -2
  475. package/references/blob.d.ts +2 -0
  476. package/references/device.d.ts +46 -0
  477. package/references/dom.d.ts +6 -0
  478. package/references/uniapp.d.ts +221 -8
  479. package/types/uniapp-ios-build.d.ts +22 -0
  480. package/types/uniapp.d.ts +298 -0
@@ -0,0 +1,85 @@
1
+ import { modifyManifest } from './modifyManifest';
2
+ export async function configureManifestPermissions(manifestPath, permissions, deps) {
3
+ const normalizedPermissions = permissions.map(p => p.startsWith('android.permission.') ? p : `android.permission.${p}`);
4
+ const existingPermissions = getManifestPermissions(manifestPath, deps);
5
+ const permissionsToAdd = normalizedPermissions.filter(p => !existingPermissions.includes(p));
6
+ if (permissionsToAdd.length === 0) {
7
+ return {
8
+ success: true,
9
+ message: '所有权限已存在,无需添加',
10
+ data: { added: 0, skipped: normalizedPermissions.length }
11
+ };
12
+ }
13
+ const modifications = permissionsToAdd.map(permission => ({
14
+ xpath: '//manifest',
15
+ action: 'addElement',
16
+ elementName: 'uses-permission',
17
+ attributes: {
18
+ 'android:name': permission
19
+ }
20
+ }));
21
+ const result = await modifyManifest(manifestPath, modifications, deps);
22
+ if (result.success) {
23
+ return {
24
+ ...result,
25
+ data: {
26
+ added: permissionsToAdd.length,
27
+ skipped: normalizedPermissions.length - permissionsToAdd.length
28
+ }
29
+ };
30
+ }
31
+ return result;
32
+ }
33
+ export async function removeManifestPermission(manifestPath, permission, deps) {
34
+ const modifications = [
35
+ {
36
+ xpath: `//uses-permission[@android:name="${permission}"]`,
37
+ action: 'removeElement'
38
+ }
39
+ ];
40
+ return modifyManifest(manifestPath, modifications, deps);
41
+ }
42
+ export function hasManifestPermission(manifestPath, permission, deps) {
43
+ try {
44
+ const content = deps.readFileSync(manifestPath, 'utf-8');
45
+ const parser = new deps.xmlParser();
46
+ const doc = parser.parseFromString(content, 'text/xml');
47
+ const elements = doc.getElementsByTagName('uses-permission');
48
+ for (let i = 0; i < elements.length; i++) {
49
+ const element = elements.item(i);
50
+ if (element) {
51
+ const nameAttr = element.getAttribute('android:name');
52
+ if (nameAttr === permission) {
53
+ return true;
54
+ }
55
+ }
56
+ }
57
+ return false;
58
+ }
59
+ catch (error) {
60
+ return false;
61
+ }
62
+ }
63
+ export function getManifestPermissions(manifestPath, deps) {
64
+ try {
65
+ const content = deps.readFileSync(manifestPath, 'utf-8');
66
+ const parser = new deps.xmlParser();
67
+ const doc = parser.parseFromString(content, 'text/xml');
68
+ const permissions = [];
69
+ const elements = doc.getElementsByTagName('uses-permission');
70
+ for (let i = 0; i < elements.length; i++) {
71
+ const element = elements.item(i);
72
+ if (element) {
73
+ const nameAttr = element.getAttribute('android:name');
74
+ if (nameAttr) {
75
+ permissions.push(nameAttr);
76
+ }
77
+ }
78
+ }
79
+ return permissions;
80
+ }
81
+ catch (error) {
82
+ return [];
83
+ }
84
+ }
85
+ //# sourceMappingURL=permission.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permission.js","sourceRoot":"","sources":["../../../../src/functions/platform/android/permission.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import type { FileSystem, Path } from '../../../references/node.d';
2
+ import type { Sharp } from '../../../references/sharp.d';
3
+ export interface ConfigureAppIconIOSDeps {
4
+ existsSync: FileSystem['existsSync'];
5
+ readFileSync: FileSystem['readFileSync'];
6
+ writeFileSync: FileSystem['writeFileSync'];
7
+ mkdirSync: FileSystem['mkdirSync'];
8
+ join: Path['join'];
9
+ dirname: Path['dirname'];
10
+ sharp: Sharp;
11
+ }
12
+ export interface ConfigureAppIconIOSResult {
13
+ success: boolean;
14
+ error?: string;
15
+ logs: string[];
16
+ }
17
+ export declare function configureAppIconIOS(imagePath: string, projectPath: string, projectName: string, deps: ConfigureAppIconIOSDeps): Promise<ConfigureAppIconIOSResult>;
@@ -0,0 +1,149 @@
1
+ const IOS_ICON_SIZES = [
2
+ { idiom: 'iphone', scale: '2x', size: '20x20', pixels: 40 },
3
+ { idiom: 'iphone', scale: '3x', size: '20x20', pixels: 60 },
4
+ { idiom: 'iphone', scale: '2x', size: '29x29', pixels: 58 },
5
+ { idiom: 'iphone', scale: '3x', size: '29x29', pixels: 87 },
6
+ { idiom: 'iphone', scale: '2x', size: '40x40', pixels: 80 },
7
+ { idiom: 'iphone', scale: '3x', size: '40x40', pixels: 120 },
8
+ { idiom: 'iphone', scale: '2x', size: '60x60', pixels: 120 },
9
+ { idiom: 'iphone', scale: '3x', size: '60x60', pixels: 180 },
10
+ { idiom: 'ipad', scale: '1x', size: '20x20', pixels: 20 },
11
+ { idiom: 'ipad', scale: '2x', size: '20x20', pixels: 40 },
12
+ { idiom: 'ipad', scale: '1x', size: '29x29', pixels: 29 },
13
+ { idiom: 'ipad', scale: '2x', size: '29x29', pixels: 58 },
14
+ { idiom: 'ipad', scale: '1x', size: '40x40', pixels: 40 },
15
+ { idiom: 'ipad', scale: '2x', size: '40x40', pixels: 80 },
16
+ { idiom: 'ipad', scale: '1x', size: '76x76', pixels: 76 },
17
+ { idiom: 'ipad', scale: '2x', size: '76x76', pixels: 152 },
18
+ { idiom: 'ipad', scale: '2x', size: '83.5x83.5', pixels: 167 },
19
+ { idiom: 'ios-marketing', scale: '1x', size: '1024x1024', pixels: 1024 }
20
+ ];
21
+ const DCLOUD_ICON_SIZES = [
22
+ { filename: 'icon29.png', size: 29 },
23
+ { filename: 'icon40.png', size: 40 },
24
+ { filename: 'icon50.png', size: 50 },
25
+ { filename: 'icon57.png', size: 57 },
26
+ { filename: 'icon58.png', size: 58 },
27
+ { filename: 'icon60.png', size: 60 },
28
+ { filename: 'icon72.png', size: 72 },
29
+ { filename: 'icon76.png', size: 76 },
30
+ { filename: 'icon80.png', size: 80 },
31
+ { filename: 'icon87.png', size: 87 },
32
+ { filename: 'icon100.png', size: 100 },
33
+ { filename: 'icon114.png', size: 114 },
34
+ { filename: 'icon120.png', size: 120 },
35
+ { filename: 'icon144.png', size: 144 },
36
+ { filename: 'icon152.png', size: 152 },
37
+ { filename: 'icon180.png', size: 180 },
38
+ { filename: 'icon1024.png', size: 1024 }
39
+ ];
40
+ export async function configureAppIconIOS(imagePath, projectPath, projectName, deps) {
41
+ const logs = [];
42
+ try {
43
+ if (!deps.existsSync(imagePath)) {
44
+ return {
45
+ success: false,
46
+ error: `原始图片不存在: ${imagePath}`,
47
+ logs
48
+ };
49
+ }
50
+ logs.push(`找到原始图标图片: ${imagePath}`);
51
+ const imageBuffer = deps.readFileSync(imagePath);
52
+ logs.push('成功读取原始图片');
53
+ const sharpInstance = deps.sharp(imageBuffer);
54
+ const metadata = await sharpInstance.metadata();
55
+ const originalWidth = metadata.width || 1024;
56
+ const originalHeight = metadata.height || 1024;
57
+ logs.push(`原图尺寸: ${originalWidth}x${originalHeight}`);
58
+ if (originalWidth !== originalHeight) {
59
+ logs.push(`警告: 图标图片不是正方形 (${originalWidth}x${originalHeight}),将进行裁剪处理`);
60
+ }
61
+ const possibleAssetsPaths = [
62
+ deps.join(projectPath, projectName, 'Assets.xcassets'),
63
+ deps.join(projectPath, projectName, 'Images.xcassets'),
64
+ deps.join(projectPath, 'HBuilder', 'Images.xcassets'),
65
+ deps.join(projectPath, 'HBuilder', 'Assets.xcassets')
66
+ ];
67
+ let assetsPath = null;
68
+ for (const p of possibleAssetsPaths) {
69
+ if (deps.existsSync(p)) {
70
+ assetsPath = p;
71
+ logs.push(`找到资源目录: ${p}`);
72
+ break;
73
+ }
74
+ }
75
+ if (assetsPath) {
76
+ const appIconSetPath = deps.join(assetsPath, 'AppIcon.appiconset');
77
+ if (!deps.existsSync(appIconSetPath)) {
78
+ deps.mkdirSync(appIconSetPath, { recursive: true });
79
+ logs.push(`创建 AppIcon.appiconset 目录`);
80
+ }
81
+ logs.push('开始生成 AppIcon.appiconset 图标...');
82
+ const contentsImages = [];
83
+ for (const sizeConfig of IOS_ICON_SIZES) {
84
+ const filename = `AppIcon-${sizeConfig.pixels}.png`;
85
+ const outputPath = deps.join(appIconSetPath, filename);
86
+ const resizedIcon = await deps.sharp(imageBuffer)
87
+ .resize(sizeConfig.pixels, sizeConfig.pixels, {
88
+ fit: 'cover',
89
+ position: 'center'
90
+ })
91
+ .png()
92
+ .toBuffer();
93
+ deps.writeFileSync(outputPath, resizedIcon);
94
+ logs.push(`已生成 ${filename} (${sizeConfig.pixels}x${sizeConfig.pixels})`);
95
+ contentsImages.push({
96
+ filename,
97
+ idiom: sizeConfig.idiom,
98
+ scale: sizeConfig.scale,
99
+ size: sizeConfig.size
100
+ });
101
+ }
102
+ const contentsJson = {
103
+ images: contentsImages,
104
+ info: {
105
+ author: 'xcode',
106
+ version: 1
107
+ }
108
+ };
109
+ const contentsJsonPath = deps.join(appIconSetPath, 'Contents.json');
110
+ deps.writeFileSync(contentsJsonPath, JSON.stringify(contentsJson, null, 2), 'utf8');
111
+ logs.push('已生成 Contents.json');
112
+ logs.push(`AppIcon.appiconset 配置完成,共生成 ${IOS_ICON_SIZES.length} 个图标文件`);
113
+ }
114
+ else {
115
+ logs.push('未找到 Assets.xcassets 或 Images.xcassets 目录,跳过 appiconset 生成');
116
+ }
117
+ const iconDir = deps.join(projectPath, projectName, 'icon');
118
+ if (deps.existsSync(iconDir)) {
119
+ logs.push('开始生成 DCloud 传统格式图标 (icon/ 目录)...');
120
+ for (const iconConfig of DCLOUD_ICON_SIZES) {
121
+ const outputPath = deps.join(iconDir, iconConfig.filename);
122
+ const resizedIcon = await deps.sharp(imageBuffer)
123
+ .resize(iconConfig.size, iconConfig.size, {
124
+ fit: 'cover',
125
+ position: 'center'
126
+ })
127
+ .png()
128
+ .toBuffer();
129
+ deps.writeFileSync(outputPath, resizedIcon);
130
+ logs.push(`已生成 ${iconConfig.filename} (${iconConfig.size}x${iconConfig.size})`);
131
+ }
132
+ logs.push(`DCloud 传统图标配置完成,共生成 ${DCLOUD_ICON_SIZES.length} 个图标文件`);
133
+ }
134
+ logs.push('iOS App Icon 配置完成');
135
+ return {
136
+ success: true,
137
+ logs
138
+ };
139
+ }
140
+ catch (error) {
141
+ const errorMessage = error instanceof Error ? error.message : String(error);
142
+ return {
143
+ success: false,
144
+ error: `配置 iOS App Icon 时出错: ${errorMessage}`,
145
+ logs
146
+ };
147
+ }
148
+ }
149
+ //# sourceMappingURL=configureAppIcon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configureAppIcon.js","sourceRoot":"","sources":["../../../../src/functions/platform/ios/configureAppIcon.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import type { FileSystem, Path } from '../../../references/node.d';
2
+ import type { Sharp } from '../../../references/sharp.d';
3
+ export interface ConfigureLaunchScreenDeps {
4
+ existsSync: FileSystem['existsSync'];
5
+ readFileSync: FileSystem['readFileSync'];
6
+ writeFileSync: FileSystem['writeFileSync'];
7
+ mkdirSync: FileSystem['mkdirSync'];
8
+ join: Path['join'];
9
+ dirname: Path['dirname'];
10
+ sharp: Sharp;
11
+ }
12
+ export interface ConfigureLaunchScreenResult {
13
+ success: boolean;
14
+ error?: string;
15
+ logs: string[];
16
+ }
17
+ export declare function configureLaunchScreen(imagePath: string, projectPath: string, projectName: string, deps: ConfigureLaunchScreenDeps): Promise<ConfigureLaunchScreenResult>;
@@ -0,0 +1,150 @@
1
+ export async function configureLaunchScreen(imagePath, projectPath, projectName, deps) {
2
+ const logs = [];
3
+ try {
4
+ if (!deps.existsSync(imagePath)) {
5
+ return {
6
+ success: false,
7
+ error: `原始图片不存在: ${imagePath}`,
8
+ logs
9
+ };
10
+ }
11
+ logs.push(`找到原始图片: ${imagePath}`);
12
+ const imageBuffer = deps.readFileSync(imagePath);
13
+ logs.push('成功读取原始图片');
14
+ const sharpInstance = deps.sharp(imageBuffer);
15
+ const metadata = await sharpInstance.metadata();
16
+ const originalWidth = metadata.width || 1000;
17
+ const originalHeight = metadata.height || 1000;
18
+ logs.push(`原图尺寸: ${originalWidth}x${originalHeight}`);
19
+ const possibleAssetsPaths = [
20
+ deps.join(projectPath, projectName, 'Assets.xcassets'),
21
+ deps.join(projectPath, projectName, 'Images.xcassets'),
22
+ deps.join(projectPath, 'HBuilder', 'Images.xcassets'),
23
+ deps.join(projectPath, 'HBuilder', 'Assets.xcassets')
24
+ ];
25
+ let assetsPath = null;
26
+ for (const p of possibleAssetsPaths) {
27
+ if (deps.existsSync(p)) {
28
+ assetsPath = p;
29
+ logs.push(`找到资源目录: ${p}`);
30
+ break;
31
+ }
32
+ }
33
+ if (assetsPath) {
34
+ const imageSetPath = deps.join(assetsPath, 'LaunchImage.imageset');
35
+ if (!deps.existsSync(imageSetPath)) {
36
+ deps.mkdirSync(imageSetPath, { recursive: true });
37
+ logs.push(`创建 LaunchImage.imageset 目录`);
38
+ }
39
+ logs.push('开始生成不同分辨率的图片...');
40
+ const aspectRatio = originalWidth / originalHeight;
41
+ const height2x = 2000;
42
+ const width2x = Math.round(height2x * aspectRatio);
43
+ const image2x = await deps.sharp(imageBuffer)
44
+ .resize(width2x, height2x, {
45
+ fit: 'inside'
46
+ })
47
+ .png()
48
+ .toBuffer();
49
+ const image2xPath = deps.join(imageSetPath, 'LaunchImage@2x.png');
50
+ deps.writeFileSync(image2xPath, image2x);
51
+ logs.push(`已生成 @2x 版本 (${width2x}x${height2x})`);
52
+ const height3x = 3000;
53
+ const width3x = Math.round(height3x * aspectRatio);
54
+ const image3x = await deps.sharp(imageBuffer)
55
+ .resize(width3x, height3x, {
56
+ fit: 'inside'
57
+ })
58
+ .png()
59
+ .toBuffer();
60
+ const image3xPath = deps.join(imageSetPath, 'LaunchImage@3x.png');
61
+ deps.writeFileSync(image3xPath, image3x);
62
+ logs.push(`已生成 @3x 版本 (${width3x}x${height3x})`);
63
+ const contentsJson = {
64
+ images: [
65
+ {
66
+ idiom: 'universal',
67
+ filename: 'LaunchImage@2x.png',
68
+ scale: '2x'
69
+ },
70
+ {
71
+ idiom: 'universal',
72
+ filename: 'LaunchImage@3x.png',
73
+ scale: '3x'
74
+ }
75
+ ],
76
+ info: {
77
+ version: 1,
78
+ author: 'xcode'
79
+ }
80
+ };
81
+ const contentsJsonPath = deps.join(imageSetPath, 'Contents.json');
82
+ deps.writeFileSync(contentsJsonPath, JSON.stringify(contentsJson, null, 2), 'utf8');
83
+ logs.push('已创建 Contents.json');
84
+ }
85
+ else {
86
+ logs.push('未找到 Assets.xcassets 或 Images.xcassets 目录,跳过 imageset 生成');
87
+ }
88
+ const storyboardPath = deps.join(projectPath, projectName, 'LaunchScreen.storyboard');
89
+ const storyboardXml = generateLaunchScreenStoryboard();
90
+ deps.writeFileSync(storyboardPath, storyboardXml, 'utf8');
91
+ logs.push('已创建/更新 LaunchScreen.storyboard');
92
+ logs.push('启动屏配置完成');
93
+ return {
94
+ success: true,
95
+ logs
96
+ };
97
+ }
98
+ catch (error) {
99
+ const errorMessage = error instanceof Error ? error.message : String(error);
100
+ return {
101
+ success: false,
102
+ error: `配置启动屏时出错: ${errorMessage}`,
103
+ logs
104
+ };
105
+ }
106
+ }
107
+ function generateLaunchScreenStoryboard() {
108
+ return `<?xml version="1.0" encoding="UTF-8"?>
109
+ <document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="21701" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" launchScreen="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="01J-lp-oVM">
110
+ <device id="retina6_12" orientation="portrait" appearance="light"/>
111
+ <dependencies>
112
+ <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="21679"/>
113
+ <capability name="Safe area layout guides" minToolsVersion="9.0"/>
114
+ <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
115
+ </dependencies>
116
+ <scenes>
117
+ <!--View Controller-->
118
+ <scene sceneID="EHf-IW-A2E">
119
+ <objects>
120
+ <viewController id="01J-lp-oVM" sceneMemberID="viewController">
121
+ <view key="view" contentMode="scaleToFill" id="Ze5-6b-2t3">
122
+ <rect key="frame" x="0.0" y="0.0" width="393" height="852"/>
123
+ <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
124
+ <subviews>
125
+ <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="LaunchImage" translatesAutoresizingMaskIntoConstraints="NO" id="launch-image-view">
126
+ <rect key="frame" x="0.0" y="0.0" width="393" height="852"/>
127
+ </imageView>
128
+ </subviews>
129
+ <viewLayoutGuide key="safeArea" id="6Tk-OE-BBY"/>
130
+ <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
131
+ <constraints>
132
+ <constraint firstItem="launch-image-view" firstAttribute="top" secondItem="Ze5-6b-2t3" secondAttribute="top" id="constraint-1"/>
133
+ <constraint firstItem="launch-image-view" firstAttribute="leading" secondItem="Ze5-6b-2t3" secondAttribute="leading" id="constraint-2"/>
134
+ <constraint firstAttribute="trailing" secondItem="launch-image-view" secondAttribute="trailing" id="constraint-3"/>
135
+ <constraint firstAttribute="bottom" secondItem="launch-image-view" secondAttribute="bottom" id="constraint-4"/>
136
+ </constraints>
137
+ </view>
138
+ </viewController>
139
+ <placeholder placeholderIdentifier="IBFirstResponder" id="iYj-Kq-Ea1" userLabel="First Responder" sceneMemberID="firstResponder"/>
140
+ </objects>
141
+ <point key="canvasLocation" x="53" y="375"/>
142
+ </scene>
143
+ </scenes>
144
+ <resources>
145
+ <image name="LaunchImage" width="924" height="2000"/>
146
+ </resources>
147
+ </document>
148
+ `;
149
+ }
150
+ //# sourceMappingURL=configureLaunchScreen.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configureLaunchScreen.js","sourceRoot":"","sources":["../../../../src/functions/platform/ios/configureLaunchScreen.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import type { FileSystem } from '../../../references/node.d';
2
+ import type { XMLParserConstructor, XMLSerializerConstructor } from '../../../references/xml.d';
3
+ export interface ConfigureIOSPermissionsDeps {
4
+ existsSync: FileSystem['existsSync'];
5
+ readFileSync: FileSystem['readFileSync'];
6
+ writeFileSync: FileSystem['writeFileSync'];
7
+ xmlParser: XMLParserConstructor;
8
+ xmlSerializer: XMLSerializerConstructor;
9
+ }
10
+ export interface ConfigureIOSPermissionsResult {
11
+ success: boolean;
12
+ error?: string;
13
+ logs: string[];
14
+ data?: {
15
+ added: number;
16
+ skipped: number;
17
+ };
18
+ }
19
+ export declare function configureIOSPermissions(infoPlistPath: string, permissions: string[], customDescriptions?: Record<string, string>, deps?: ConfigureIOSPermissionsDeps): Promise<ConfigureIOSPermissionsResult>;
@@ -0,0 +1,120 @@
1
+ import { modifyInfoPlistKeyValue } from './modifyInfoPlistKeyValue';
2
+ const PERMISSION_MAPPING = {
3
+ 'CAMERA': 'NSCameraUsageDescription',
4
+ 'READ_EXTERNAL_STORAGE': 'NSPhotoLibraryUsageDescription',
5
+ 'WRITE_EXTERNAL_STORAGE': 'NSPhotoLibraryAddUsageDescription',
6
+ 'ACCESS_FINE_LOCATION': 'NSLocationWhenInUseUsageDescription',
7
+ 'ACCESS_COARSE_LOCATION': 'NSLocationWhenInUseUsageDescription',
8
+ 'RECORD_AUDIO': 'NSMicrophoneUsageDescription',
9
+ 'READ_CONTACTS': 'NSContactsUsageDescription',
10
+ 'WRITE_CONTACTS': 'NSContactsUsageDescription',
11
+ 'READ_CALENDAR': 'NSCalendarsUsageDescription',
12
+ 'WRITE_CALENDAR': 'NSCalendarsUsageDescription',
13
+ 'READ_PHONE_STATE': 'NSUserTrackingUsageDescription',
14
+ 'BLUETOOTH': 'NSBluetoothAlwaysUsageDescription',
15
+ 'BLUETOOTH_ADMIN': 'NSBluetoothAlwaysUsageDescription',
16
+ 'ACTIVITY_RECOGNITION': 'NSMotionUsageDescription',
17
+ 'BODY_SENSORS': 'NSMotionUsageDescription',
18
+ 'FACE_ID': 'NSFaceIDUsageDescription',
19
+ };
20
+ const DEFAULT_DESCRIPTIONS = {
21
+ 'NSCameraUsageDescription': '应用需要使用相机来拍摄照片和视频',
22
+ 'NSPhotoLibraryUsageDescription': '应用需要访问您的相册以选择图片',
23
+ 'NSPhotoLibraryAddUsageDescription': '应用需要保存图片到您的相册',
24
+ 'NSLocationWhenInUseUsageDescription': '应用需要获取您的位置信息以提供更好的服务',
25
+ 'NSLocationAlwaysAndWhenInUseUsageDescription': '应用需要获取您的位置信息以提供更好的服务',
26
+ 'NSMicrophoneUsageDescription': '应用需要使用麦克风来录制音频',
27
+ 'NSContactsUsageDescription': '应用需要访问您的通讯录',
28
+ 'NSCalendarsUsageDescription': '应用需要访问您的日历',
29
+ 'NSRemindersUsageDescription': '应用需要访问您的提醒事项',
30
+ 'NSMotionUsageDescription': '应用需要访问您的运动与健身数据',
31
+ 'NSHealthShareUsageDescription': '应用需要读取您的健康数据',
32
+ 'NSHealthUpdateUsageDescription': '应用需要更新您的健康数据',
33
+ 'NSBluetoothPeripheralUsageDescription': '应用需要使用蓝牙',
34
+ 'NSBluetoothAlwaysUsageDescription': '应用需要使用蓝牙',
35
+ 'NSSpeechRecognitionUsageDescription': '应用需要使用语音识别功能',
36
+ 'NSFaceIDUsageDescription': '应用需要使用 Face ID 进行身份验证',
37
+ 'NSAppleMusicUsageDescription': '应用需要访问您的 Apple Music',
38
+ 'NSLocalNetworkUsageDescription': '应用需要访问本地网络',
39
+ 'NSUserTrackingUsageDescription': '应用需要追踪您的活动以提供个性化广告',
40
+ };
41
+ export async function configureIOSPermissions(infoPlistPath, permissions, customDescriptions, deps) {
42
+ const logs = [];
43
+ if (!deps) {
44
+ return {
45
+ success: false,
46
+ error: 'deps 参数是必需的',
47
+ logs
48
+ };
49
+ }
50
+ try {
51
+ if (!deps.existsSync(infoPlistPath)) {
52
+ return {
53
+ success: false,
54
+ error: `Info.plist 文件不存在: ${infoPlistPath}`,
55
+ logs
56
+ };
57
+ }
58
+ const xmlContent = deps.readFileSync(infoPlistPath, 'utf8');
59
+ const parser = new deps.xmlParser();
60
+ const xmlDoc = parser.parseFromString(xmlContent, 'text/xml');
61
+ const existingKeys = new Set();
62
+ const keyElements = xmlDoc.getElementsByTagName('key');
63
+ for (let i = 0; i < keyElements.length; i++) {
64
+ const keyElement = keyElements[i];
65
+ const keyName = keyElement.textContent;
66
+ if (keyName && keyName.startsWith('NS') && keyName.includes('UsageDescription')) {
67
+ existingKeys.add(keyName);
68
+ }
69
+ }
70
+ const iosPermissionKeys = new Set();
71
+ for (const permission of permissions) {
72
+ const cleanPermission = permission.replace(/^android\.permission\./i, '').toUpperCase();
73
+ const iosKey = PERMISSION_MAPPING[cleanPermission];
74
+ if (iosKey) {
75
+ iosPermissionKeys.add(iosKey);
76
+ }
77
+ else {
78
+ logs.push(`警告: 未找到权限 ${permission} 对应的 iOS 权限 key,已跳过`);
79
+ }
80
+ }
81
+ const permissionsToAdd = Array.from(iosPermissionKeys).filter(key => !existingKeys.has(key));
82
+ if (permissionsToAdd.length === 0) {
83
+ logs.push('所有权限已存在,无需添加');
84
+ return {
85
+ success: true,
86
+ logs,
87
+ data: {
88
+ added: 0,
89
+ skipped: iosPermissionKeys.size
90
+ }
91
+ };
92
+ }
93
+ for (const iosKey of permissionsToAdd) {
94
+ const description = customDescriptions?.[iosKey] || DEFAULT_DESCRIPTIONS[iosKey] || '应用需要使用此功能';
95
+ modifyInfoPlistKeyValue(xmlDoc, iosKey, description, 'string');
96
+ logs.push(`已添加权限: ${iosKey}`);
97
+ }
98
+ const serializer = new deps.xmlSerializer();
99
+ const newXmlContent = serializer.serializeToString(xmlDoc);
100
+ deps.writeFileSync(infoPlistPath, newXmlContent, 'utf8');
101
+ logs.push(`权限配置完成,共添加 ${permissionsToAdd.length} 个权限`);
102
+ return {
103
+ success: true,
104
+ logs,
105
+ data: {
106
+ added: permissionsToAdd.length,
107
+ skipped: iosPermissionKeys.size - permissionsToAdd.length
108
+ }
109
+ };
110
+ }
111
+ catch (error) {
112
+ const errorMessage = error instanceof Error ? error.message : String(error);
113
+ return {
114
+ success: false,
115
+ error: `配置 iOS 权限时出错: ${errorMessage}`,
116
+ logs
117
+ };
118
+ }
119
+ }
120
+ //# sourceMappingURL=configurePermissions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configurePermissions.js","sourceRoot":"","sources":["../../../../src/functions/platform/ios/configurePermissions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ import type { FileSystem, Path, ChildProcess } from "../../../references/node.d";
2
+ import type { JSON5Parser } from "../../../references/json5.d";
3
+ import type { XMLParserConstructor, XMLSerializerConstructor } from "../../../references/xml.d";
4
+ import type { setTimeout, clearTimeout } from "../../../references/timer.d";
5
+ export interface IntegrateNativePluginIOSDeps {
6
+ existsSync: FileSystem["existsSync"];
7
+ readFileSync: FileSystem["readFileSync"];
8
+ writeFileSync: FileSystem["writeFileSync"];
9
+ copyFileSync: FileSystem["copyFileSync"];
10
+ statSync: FileSystem["statSync"];
11
+ mkdirSync: FileSystem["mkdirSync"];
12
+ readdirSync: FileSystem["readdirSync"];
13
+ cp: FileSystem["promises"]["cp"];
14
+ join: Path["join"];
15
+ dirname: Path["dirname"];
16
+ basename: Path["basename"];
17
+ exec: ChildProcess["exec"];
18
+ parse: JSON5Parser["parse"];
19
+ xmlParser: XMLParserConstructor;
20
+ xmlSerializer: XMLSerializerConstructor;
21
+ setTimeout: typeof setTimeout;
22
+ clearTimeout: typeof clearTimeout;
23
+ log?: (message: string) => void;
24
+ }
25
+ export interface NativePluginItem {
26
+ type: string;
27
+ name: string;
28
+ class: string;
29
+ }
30
+ export declare function integrateNativePluginIOS(projectPath: string, projectName: string, pluginPath: string, deps: IntegrateNativePluginIOSDeps, parameters?: Record<string, string>): Promise<{
31
+ success: boolean;
32
+ message?: string;
33
+ error?: string;
34
+ logs: string[];
35
+ }>;