nativescript 8.9.0-dev.0 → 8.9.0-dev.2

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 (405) hide show
  1. package/config/test-deps-versions-generated.json +1 -1
  2. package/lib/.d.ts +1 -0
  3. package/lib/android-tools-info.js +32 -9
  4. package/lib/base-package-manager.js +71 -47
  5. package/lib/bootstrap.js +6 -1
  6. package/lib/bun-package-manager.js +104 -65
  7. package/lib/color.js +5 -2
  8. package/lib/commands/add-platform.js +31 -14
  9. package/lib/commands/apple-login.js +30 -18
  10. package/lib/commands/appstore-list.js +46 -34
  11. package/lib/commands/appstore-upload.js +68 -52
  12. package/lib/commands/build.js +90 -57
  13. package/lib/commands/clean.js +197 -161
  14. package/lib/commands/command-base.js +28 -14
  15. package/lib/commands/config.js +71 -48
  16. package/lib/commands/create-project.js +235 -210
  17. package/lib/commands/debug.js +93 -66
  18. package/lib/commands/deploy.js +47 -30
  19. package/lib/commands/embedding/embed.js +59 -33
  20. package/lib/commands/extensibility/install-extension.js +17 -5
  21. package/lib/commands/extensibility/list-extensions.js +25 -13
  22. package/lib/commands/extensibility/uninstall-extension.js +16 -4
  23. package/lib/commands/fonts.js +42 -30
  24. package/lib/commands/generate-assets.js +29 -13
  25. package/lib/commands/generate-help.js +14 -2
  26. package/lib/commands/generate.js +70 -12
  27. package/lib/commands/info.js +14 -2
  28. package/lib/commands/install.js +50 -34
  29. package/lib/commands/list-platforms.js +26 -14
  30. package/lib/commands/migrate.js +27 -15
  31. package/lib/commands/native-add.js +51 -23
  32. package/lib/commands/platform-clean.js +33 -19
  33. package/lib/commands/plugin/add-plugin.js +26 -12
  34. package/lib/commands/plugin/build-plugin.js +45 -31
  35. package/lib/commands/plugin/create-plugin.js +138 -110
  36. package/lib/commands/plugin/list-plugins.js +34 -22
  37. package/lib/commands/plugin/remove-plugin.js +35 -20
  38. package/lib/commands/plugin/update-plugin.js +34 -20
  39. package/lib/commands/post-install.js +39 -20
  40. package/lib/commands/prepare.js +39 -22
  41. package/lib/commands/preview.js +64 -49
  42. package/lib/commands/remove-platform.js +19 -7
  43. package/lib/commands/resources/resources-update.js +28 -13
  44. package/lib/commands/run.js +77 -55
  45. package/lib/commands/setup.js +1 -0
  46. package/lib/commands/start.js +20 -6
  47. package/lib/commands/test-init.js +138 -123
  48. package/lib/commands/test.js +97 -67
  49. package/lib/commands/typings.js +143 -126
  50. package/lib/commands/update-platform.js +40 -22
  51. package/lib/commands/update.js +45 -30
  52. package/lib/commands/widget.js +767 -0
  53. package/lib/common/bootstrap.js +1 -0
  54. package/lib/common/child-process.js +75 -53
  55. package/lib/common/codeGeneration/code-entity.js +2 -1
  56. package/lib/common/codeGeneration/code-printer.js +2 -1
  57. package/lib/common/command-params.js +19 -7
  58. package/lib/common/commands/analytics.js +43 -27
  59. package/lib/common/commands/autocompletion.js +59 -39
  60. package/lib/common/commands/device/device-log-stream.js +24 -12
  61. package/lib/common/commands/device/get-file.js +35 -22
  62. package/lib/common/commands/device/list-applications.js +24 -12
  63. package/lib/common/commands/device/list-devices.js +90 -72
  64. package/lib/common/commands/device/list-files.js +36 -23
  65. package/lib/common/commands/device/put-file.js +35 -22
  66. package/lib/common/commands/device/run-application.js +26 -12
  67. package/lib/common/commands/device/stop-application.js +23 -11
  68. package/lib/common/commands/device/uninstall-application.js +18 -6
  69. package/lib/common/commands/doctor.js +3 -2
  70. package/lib/common/commands/generate-messages.js +29 -17
  71. package/lib/common/commands/help.js +34 -20
  72. package/lib/common/commands/package-manager-get.js +18 -6
  73. package/lib/common/commands/package-manager-set.js +21 -9
  74. package/lib/common/commands/post-install.js +14 -2
  75. package/lib/common/commands/preuninstall.js +48 -24
  76. package/lib/common/commands/proxy/proxy-base.js +23 -8
  77. package/lib/common/commands/proxy/proxy-clear.js +16 -4
  78. package/lib/common/commands/proxy/proxy-get.js +15 -3
  79. package/lib/common/commands/proxy/proxy-set.js +101 -87
  80. package/lib/common/common-lib.js +1 -0
  81. package/lib/common/constants.js +22 -11
  82. package/lib/common/decorators.js +70 -10
  83. package/lib/common/dispatchers.js +106 -80
  84. package/lib/common/errors.js +116 -91
  85. package/lib/common/file-system.js +141 -108
  86. package/lib/common/header.js +5 -1
  87. package/lib/common/helpers.js +267 -152
  88. package/lib/common/host-info.js +54 -37
  89. package/lib/common/http-client.js +128 -93
  90. package/lib/common/logger/appenders/cli-appender.js +6 -1
  91. package/lib/common/logger/appenders/emit-appender.js +6 -1
  92. package/lib/common/logger/layouts/cli-layout.js +3 -1
  93. package/lib/common/logger/logger.js +9 -4
  94. package/lib/common/messages/messages.js +6 -0
  95. package/lib/common/mobile/android/android-application-manager.js +162 -122
  96. package/lib/common/mobile/android/android-debug-bridge-result-handler.js +2 -1
  97. package/lib/common/mobile/android/android-debug-bridge.js +118 -87
  98. package/lib/common/mobile/android/android-device-file-system.js +135 -98
  99. package/lib/common/mobile/android/android-device-hash-service.js +78 -50
  100. package/lib/common/mobile/android/android-device.js +93 -68
  101. package/lib/common/mobile/android/android-emulator-services.js +131 -105
  102. package/lib/common/mobile/android/android-ini-file-parser.js +9 -0
  103. package/lib/common/mobile/android/android-log-filter.js +5 -1
  104. package/lib/common/mobile/android/android-virtual-device-service.js +123 -76
  105. package/lib/common/mobile/android/device-android-debug-bridge.js +30 -13
  106. package/lib/common/mobile/android/genymotion/genymotion-service.js +123 -91
  107. package/lib/common/mobile/android/genymotion/virtualbox-service.js +92 -64
  108. package/lib/common/mobile/android/logcat-helper.js +140 -108
  109. package/lib/common/mobile/application-manager-base.js +113 -84
  110. package/lib/common/mobile/device-emitter.js +4 -0
  111. package/lib/common/mobile/device-log-emitter.js +1 -0
  112. package/lib/common/mobile/device-log-provider-base.js +19 -7
  113. package/lib/common/mobile/device-log-provider.js +23 -0
  114. package/lib/common/mobile/device-platforms-constants.js +1 -0
  115. package/lib/common/mobile/emulator-helper.js +3 -0
  116. package/lib/common/mobile/ios/device/ios-application-manager.js +111 -79
  117. package/lib/common/mobile/ios/device/ios-device-file-system.js +106 -78
  118. package/lib/common/mobile/ios/device/ios-device-operations.js +146 -105
  119. package/lib/common/mobile/ios/device/ios-device.js +40 -20
  120. package/lib/common/mobile/ios/ios-device-base.js +82 -58
  121. package/lib/common/mobile/ios/ios-device-product-name-mapper.js +2 -0
  122. package/lib/common/mobile/ios/ios-log-filter.js +1 -0
  123. package/lib/common/mobile/ios/simulator/ios-emulator-services.js +96 -63
  124. package/lib/common/mobile/ios/simulator/ios-sim-resolver.js +2 -1
  125. package/lib/common/mobile/ios/simulator/ios-simulator-application-manager.js +95 -60
  126. package/lib/common/mobile/ios/simulator/ios-simulator-device.js +48 -27
  127. package/lib/common/mobile/ios/simulator/ios-simulator-file-system.js +63 -37
  128. package/lib/common/mobile/ios/simulator/ios-simulator-log-provider.js +36 -24
  129. package/lib/common/mobile/local-to-device-path-data-factory.js +1 -0
  130. package/lib/common/mobile/log-filter.js +2 -0
  131. package/lib/common/mobile/logging-levels.js +1 -0
  132. package/lib/common/mobile/mobile-core/android-device-discovery.js +64 -43
  133. package/lib/common/mobile/mobile-core/android-emulator-discovery.js +35 -21
  134. package/lib/common/mobile/mobile-core/android-process-service.js +214 -143
  135. package/lib/common/mobile/mobile-core/device-discovery.js +14 -2
  136. package/lib/common/mobile/mobile-core/devices-service.js +505 -386
  137. package/lib/common/mobile/mobile-core/ios-device-discovery.js +37 -24
  138. package/lib/common/mobile/mobile-core/ios-simulator-discovery.js +65 -47
  139. package/lib/common/mobile/mobile-helper.js +27 -15
  140. package/lib/common/mobile/wp8/wp8-emulator-services.js +53 -25
  141. package/lib/common/opener.js +3 -2
  142. package/lib/common/os-info.js +1 -0
  143. package/lib/common/plist-parser.js +1 -0
  144. package/lib/common/project-helper.js +1 -0
  145. package/lib/common/prompter.js +114 -91
  146. package/lib/common/queue.js +21 -9
  147. package/lib/common/resource-loader.js +1 -0
  148. package/lib/common/services/auto-completion-service.js +65 -40
  149. package/lib/common/services/cancellation.js +29 -17
  150. package/lib/common/services/commands-service.js +180 -146
  151. package/lib/common/services/help-service.js +166 -133
  152. package/lib/common/services/hooks-service.js +121 -93
  153. package/lib/common/services/ios-notification-service.js +35 -21
  154. package/lib/common/services/json-file-settings-service.js +77 -52
  155. package/lib/common/services/lock-service.js +58 -35
  156. package/lib/common/services/message-contract-generator.js +47 -35
  157. package/lib/common/services/messages-service.js +1 -0
  158. package/lib/common/services/micro-templating-service.js +21 -4
  159. package/lib/common/services/net-service.js +110 -90
  160. package/lib/common/services/project-files-manager.js +28 -10
  161. package/lib/common/services/project-files-provider-base.js +1 -0
  162. package/lib/common/services/proxy-service.js +25 -13
  163. package/lib/common/services/qr.js +25 -13
  164. package/lib/common/services/settings-service.js +2 -1
  165. package/lib/common/services/xcode-select-service.js +36 -20
  166. package/lib/common/utils.js +3 -2
  167. package/lib/common/validators/project-name-validator.js +2 -1
  168. package/lib/common/validators/validation-result.js +2 -1
  169. package/lib/common/verify-node-version.js +11 -3
  170. package/lib/common/yok.js +69 -35
  171. package/lib/config.js +72 -36
  172. package/lib/constants-provider.js +1 -0
  173. package/lib/constants.js +78 -25
  174. package/lib/controllers/build-controller.js +100 -82
  175. package/lib/controllers/debug-controller.js +133 -107
  176. package/lib/controllers/deploy-controller.js +24 -15
  177. package/lib/controllers/migrate-controller.js +884 -723
  178. package/lib/controllers/platform-controller.js +94 -71
  179. package/lib/controllers/prepare-controller.js +274 -232
  180. package/lib/controllers/run-controller.js +427 -397
  181. package/lib/controllers/update-controller-base.js +30 -16
  182. package/lib/controllers/update-controller.js +130 -94
  183. package/lib/data/build-data.js +1 -0
  184. package/lib/data/controller-data-base.js +1 -0
  185. package/lib/data/debug-data.js +1 -0
  186. package/lib/data/platform-data.js +1 -0
  187. package/lib/data/prepare-data.js +2 -4
  188. package/lib/data/run-data.js +1 -0
  189. package/lib/definitions/ios.d.ts +4 -2
  190. package/lib/definitions/project.d.ts +26 -0
  191. package/lib/detached-processes/cleanup-js-subprocess.js +20 -5
  192. package/lib/detached-processes/cleanup-process.js +43 -30
  193. package/lib/detached-processes/file-log-service.js +2 -1
  194. package/lib/device-path-provider.js +35 -23
  195. package/lib/device-sockets/ios/app-debug-socket-proxy-factory.js +171 -149
  196. package/lib/device-sockets/ios/notification.js +4 -1
  197. package/lib/device-sockets/ios/socket-request-executor.js +42 -24
  198. package/lib/helpers/android-bundle-validator-helper.js +3 -2
  199. package/lib/helpers/deploy-command-helper.js +50 -44
  200. package/lib/helpers/key-command-helper.js +17 -6
  201. package/lib/helpers/livesync-command-helper.js +155 -137
  202. package/lib/helpers/network-connectivity-validator.js +18 -6
  203. package/lib/helpers/options-track-helper.js +19 -7
  204. package/lib/helpers/package-path-helper.js +1 -0
  205. package/lib/helpers/platform-command-helper.js +127 -101
  206. package/lib/helpers/version-validator-helper.js +1 -0
  207. package/lib/key-commands/bootstrap.js +3 -2
  208. package/lib/key-commands/index.js +205 -154
  209. package/lib/nativescript-cli-lib-bootstrap.js +4 -0
  210. package/lib/nativescript-cli-lib.js +1 -0
  211. package/lib/nativescript-cli.js +24 -6
  212. package/lib/node/pbxproj-dom-xcode.js +1 -0
  213. package/lib/node/xcode.js +1 -0
  214. package/lib/node-package-manager.js +114 -81
  215. package/lib/options.js +156 -122
  216. package/lib/package-installation-manager.js +172 -130
  217. package/lib/package-manager.js +88 -63
  218. package/lib/platform-command-param.js +16 -4
  219. package/lib/pnpm-package-manager.js +81 -59
  220. package/lib/project-data.js +13 -1
  221. package/lib/providers/project-files-provider.js +2 -1
  222. package/lib/resolvers/livesync-service-resolver.js +1 -0
  223. package/lib/services/analytics/analytics-broker-process.js +32 -19
  224. package/lib/services/analytics/analytics-broker.js +31 -17
  225. package/lib/services/analytics/analytics-service.js +210 -170
  226. package/lib/services/analytics/google-analytics-provider.js +59 -43
  227. package/lib/services/analytics-settings-service.js +37 -15
  228. package/lib/services/android/android-bundle-tool-service.js +61 -43
  229. package/lib/services/android/gradle-build-args-service.js +23 -9
  230. package/lib/services/android/gradle-build-service.js +36 -22
  231. package/lib/services/android/gradle-command-service.js +36 -22
  232. package/lib/services/android-device-debug-service.js +123 -90
  233. package/lib/services/android-plugin-build-service.js +260 -205
  234. package/lib/services/android-project-service.js +241 -129
  235. package/lib/services/android-resources-migration-service.js +71 -51
  236. package/lib/services/apple-portal/apple-portal-application-service.js +64 -46
  237. package/lib/services/apple-portal/apple-portal-cookie-service.js +1 -0
  238. package/lib/services/apple-portal/apple-portal-session-service.js +218 -197
  239. package/lib/services/apple-portal/srp/srp-wrapper.js +61 -43
  240. package/lib/services/assets-generation/assets-generation-service.js +128 -103
  241. package/lib/services/build-artifacts-service.js +22 -10
  242. package/lib/services/build-data-service.js +1 -0
  243. package/lib/services/build-info-file-service.js +36 -20
  244. package/lib/services/cleanup-service.js +81 -48
  245. package/lib/services/cocoapods-platform-manager.js +9 -0
  246. package/lib/services/cocoapods-service.js +153 -112
  247. package/lib/services/debug-data-service.js +1 -0
  248. package/lib/services/debug-service-base.js +7 -0
  249. package/lib/services/device/device-install-app-service.js +72 -54
  250. package/lib/services/doctor-service.js +135 -101
  251. package/lib/services/extensibility-service.js +108 -81
  252. package/lib/services/files-hash-service.js +44 -26
  253. package/lib/services/hmr-status-service.js +3 -1
  254. package/lib/services/info-service.js +1 -0
  255. package/lib/services/initialize-service.js +54 -37
  256. package/lib/services/ios/export-options-plist-service.js +55 -38
  257. package/lib/services/ios/ios-signing-service.js +191 -168
  258. package/lib/services/ios/spm-service.js +73 -43
  259. package/lib/services/ios/xcodebuild-args-service.js +103 -77
  260. package/lib/services/ios/xcodebuild-command-service.js +26 -14
  261. package/lib/services/ios/xcodebuild-service.js +72 -52
  262. package/lib/services/ios-debugger-port-service.js +38 -24
  263. package/lib/services/ios-device-debug-service.js +103 -75
  264. package/lib/services/ios-entitlements-service.js +43 -31
  265. package/lib/services/ios-extensions-service.js +30 -18
  266. package/lib/services/ios-log-filter.js +20 -0
  267. package/lib/services/ios-native-target-service.js +6 -4
  268. package/lib/services/ios-project-service.js +605 -437
  269. package/lib/services/ios-provision-service.js +132 -108
  270. package/lib/services/ios-watch-app-service.js +33 -21
  271. package/lib/services/ip-service.js +55 -38
  272. package/lib/services/itmstransporter-service.js +153 -129
  273. package/lib/services/karma-execution.js +2 -0
  274. package/lib/services/livesync/android-device-livesync-service-base.js +49 -31
  275. package/lib/services/livesync/android-device-livesync-service.js +151 -120
  276. package/lib/services/livesync/android-device-livesync-sockets-service.js +155 -121
  277. package/lib/services/livesync/android-livesync-service.js +36 -14
  278. package/lib/services/livesync/android-livesync-tool.js +117 -90
  279. package/lib/services/livesync/device-livesync-service-base.js +30 -15
  280. package/lib/services/livesync/ios-device-livesync-service.js +150 -114
  281. package/lib/services/livesync/ios-livesync-service.js +60 -42
  282. package/lib/services/livesync/livesync-socket.js +1 -0
  283. package/lib/services/livesync/platform-livesync-service-base.js +124 -94
  284. package/lib/services/livesync-process-data-service.js +1 -0
  285. package/lib/services/log-parser-service.js +2 -1
  286. package/lib/services/log-source-map-service.js +56 -30
  287. package/lib/services/marking-mode-service.js +33 -17
  288. package/lib/services/metadata-filtering-service.js +1 -0
  289. package/lib/services/npm-config-service.js +5 -1
  290. package/lib/services/pacote-service.js +73 -51
  291. package/lib/services/performance-service.js +4 -2
  292. package/lib/services/platform/add-platform-service.js +119 -51
  293. package/lib/services/platform/platform-validation-service.js +34 -22
  294. package/lib/services/platform/prepare-native-platform-service.js +65 -49
  295. package/lib/services/platform-environment-requirements.js +43 -27
  296. package/lib/services/platform-project-service-base.js +1 -0
  297. package/lib/services/platforms-data-service.js +1 -0
  298. package/lib/services/plugins-service.js +168 -125
  299. package/lib/services/prepare-data-service.js +1 -0
  300. package/lib/services/project-backup-service.js +5 -1
  301. package/lib/services/project-changes-service.js +152 -124
  302. package/lib/services/project-cleanup-service.js +79 -64
  303. package/lib/services/project-config-service.js +111 -73
  304. package/lib/services/project-data-service.js +154 -108
  305. package/lib/services/project-name-service.js +44 -28
  306. package/lib/services/project-service.js +113 -84
  307. package/lib/services/project-templates-service.js +68 -52
  308. package/lib/services/qr-code-terminal-service.js +1 -0
  309. package/lib/services/require-service.js +1 -0
  310. package/lib/services/start-service.js +60 -41
  311. package/lib/services/temp-service.js +22 -8
  312. package/lib/services/terminal-spinner-service.js +28 -15
  313. package/lib/services/test-execution-service.js +79 -59
  314. package/lib/services/test-initialization-service.js +6 -2
  315. package/lib/services/timeline-profiler-service.js +2 -1
  316. package/lib/services/user-settings-service.js +1 -0
  317. package/lib/services/versions-service.js +140 -119
  318. package/lib/services/watch-ignore-list-service.js +1 -0
  319. package/lib/services/webpack/webpack-compiler-service.js +279 -215
  320. package/lib/services/xcconfig-service.js +21 -8
  321. package/lib/services/xcproj-service.js +1 -0
  322. package/lib/shared-event-bus.js +6 -0
  323. package/lib/sys-info.js +63 -45
  324. package/lib/tools/config-manipulation/config-transformer.js +21 -0
  325. package/lib/tools/node-modules/node-modules-builder.js +28 -16
  326. package/lib/tools/node-modules/node-modules-dependencies-builder.js +6 -0
  327. package/lib/yarn-package-manager.js +79 -59
  328. package/lib/yarn2-package-manager.js +82 -60
  329. package/node_modules/@npmcli/move-file/LICENSE.md +22 -0
  330. package/node_modules/@npmcli/move-file/README.md +69 -0
  331. package/node_modules/@npmcli/move-file/lib/index.js +185 -0
  332. package/node_modules/@npmcli/move-file/node_modules/mkdirp/LICENSE +21 -0
  333. package/node_modules/@npmcli/move-file/node_modules/mkdirp/bin/cmd.js +68 -0
  334. package/node_modules/@npmcli/move-file/node_modules/mkdirp/index.js +31 -0
  335. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/find-made.js +29 -0
  336. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/mkdirp-manual.js +64 -0
  337. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/mkdirp-native.js +39 -0
  338. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/opts-arg.js +23 -0
  339. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/path-arg.js +29 -0
  340. package/node_modules/@npmcli/move-file/node_modules/mkdirp/lib/use-native.js +10 -0
  341. package/node_modules/@npmcli/move-file/node_modules/mkdirp/package.json +44 -0
  342. package/node_modules/@npmcli/move-file/node_modules/mkdirp/readme.markdown +266 -0
  343. package/node_modules/@npmcli/move-file/package.json +47 -0
  344. package/node_modules/balanced-match/.github/FUNDING.yml +2 -0
  345. package/node_modules/balanced-match/LICENSE.md +21 -0
  346. package/node_modules/balanced-match/README.md +97 -0
  347. package/node_modules/balanced-match/index.js +62 -0
  348. package/node_modules/balanced-match/package.json +48 -0
  349. package/node_modules/concat-map/.travis.yml +4 -0
  350. package/node_modules/concat-map/LICENSE +18 -0
  351. package/node_modules/concat-map/README.markdown +62 -0
  352. package/node_modules/concat-map/example/map.js +6 -0
  353. package/node_modules/concat-map/index.js +13 -0
  354. package/node_modules/concat-map/package.json +43 -0
  355. package/node_modules/concat-map/test/map.js +39 -0
  356. package/node_modules/fs.realpath/LICENSE +43 -0
  357. package/node_modules/fs.realpath/README.md +33 -0
  358. package/node_modules/fs.realpath/index.js +66 -0
  359. package/node_modules/fs.realpath/old.js +303 -0
  360. package/node_modules/fs.realpath/package.json +26 -0
  361. package/node_modules/inflight/LICENSE +15 -0
  362. package/node_modules/inflight/README.md +37 -0
  363. package/node_modules/inflight/inflight.js +54 -0
  364. package/node_modules/inflight/package.json +29 -0
  365. package/node_modules/inherits/LICENSE +16 -0
  366. package/node_modules/inherits/README.md +42 -0
  367. package/node_modules/inherits/inherits.js +9 -0
  368. package/node_modules/inherits/inherits_browser.js +27 -0
  369. package/node_modules/inherits/package.json +29 -0
  370. package/node_modules/once/LICENSE +15 -0
  371. package/node_modules/once/README.md +79 -0
  372. package/node_modules/once/once.js +42 -0
  373. package/node_modules/once/package.json +33 -0
  374. package/node_modules/path-is-absolute/index.js +20 -0
  375. package/node_modules/path-is-absolute/license +21 -0
  376. package/node_modules/path-is-absolute/package.json +43 -0
  377. package/node_modules/path-is-absolute/readme.md +59 -0
  378. package/node_modules/rimraf/LICENSE +15 -0
  379. package/node_modules/rimraf/README.md +101 -0
  380. package/node_modules/rimraf/bin.js +68 -0
  381. package/node_modules/rimraf/node_modules/brace-expansion/LICENSE +21 -0
  382. package/node_modules/rimraf/node_modules/brace-expansion/README.md +129 -0
  383. package/node_modules/rimraf/node_modules/brace-expansion/index.js +201 -0
  384. package/node_modules/rimraf/node_modules/brace-expansion/package.json +47 -0
  385. package/node_modules/rimraf/node_modules/glob/LICENSE +21 -0
  386. package/node_modules/rimraf/node_modules/glob/README.md +378 -0
  387. package/node_modules/rimraf/node_modules/glob/common.js +238 -0
  388. package/node_modules/rimraf/node_modules/glob/glob.js +790 -0
  389. package/node_modules/rimraf/node_modules/glob/package.json +55 -0
  390. package/node_modules/rimraf/node_modules/glob/sync.js +486 -0
  391. package/node_modules/rimraf/node_modules/minimatch/LICENSE +15 -0
  392. package/node_modules/rimraf/node_modules/minimatch/README.md +230 -0
  393. package/node_modules/rimraf/node_modules/minimatch/minimatch.js +947 -0
  394. package/node_modules/rimraf/node_modules/minimatch/package.json +33 -0
  395. package/node_modules/rimraf/package.json +32 -0
  396. package/node_modules/rimraf/rimraf.js +360 -0
  397. package/node_modules/stringify-package/LICENSE +13 -0
  398. package/node_modules/stringify-package/README.md +55 -0
  399. package/node_modules/stringify-package/index.js +18 -0
  400. package/node_modules/stringify-package/package.json +38 -0
  401. package/node_modules/wrappy/LICENSE +15 -0
  402. package/node_modules/wrappy/README.md +36 -0
  403. package/node_modules/wrappy/package.json +29 -0
  404. package/node_modules/wrappy/wrappy.js +33 -0
  405. package/package.json +79 -64
@@ -1,4 +1,13 @@
1
1
  "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
2
11
  Object.defineProperty(exports, "__esModule", { value: true });
3
12
  exports.ListiOSApps = void 0;
4
13
  const helpers_1 = require("../common/helpers");
@@ -22,43 +31,46 @@ class ListiOSApps {
22
31
  ];
23
32
  this.$projectData.initializeProjectData();
24
33
  }
25
- async execute(args) {
26
- if (!this.$platformValidationService.isPlatformSupportedForOS(this.$devicePlatformsConstants.iOS, this.$projectData)) {
27
- this.$errors.fail(`Applications for platform ${this.$devicePlatformsConstants.iOS} can not be built on this OS`);
28
- }
29
- let username = args[0];
30
- let password = args[1];
31
- if (!username) {
32
- username = await this.$prompter.getString("Apple ID", {
33
- allowEmpty: false,
34
+ execute(args) {
35
+ return __awaiter(this, void 0, void 0, function* () {
36
+ if (!this.$platformValidationService.isPlatformSupportedForOS(this.$devicePlatformsConstants.iOS, this.$projectData)) {
37
+ this.$errors.fail(`Applications for platform ${this.$devicePlatformsConstants.iOS} can not be built on this OS`);
38
+ }
39
+ let username = args[0];
40
+ let password = args[1];
41
+ if (!username) {
42
+ username = yield this.$prompter.getString("Apple ID", {
43
+ allowEmpty: false,
44
+ });
45
+ }
46
+ if (!password) {
47
+ password = yield this.$prompter.getPassword("Apple ID password");
48
+ }
49
+ const user = yield this.$applePortalSessionService.createUserSession({ username, password }, {
50
+ sessionBase64: this.$options.appleSessionBase64,
34
51
  });
35
- }
36
- if (!password) {
37
- password = await this.$prompter.getPassword("Apple ID password");
38
- }
39
- const user = await this.$applePortalSessionService.createUserSession({ username, password }, {
40
- sessionBase64: this.$options.appleSessionBase64,
52
+ if (!user.areCredentialsValid) {
53
+ this.$errors.fail(`Invalid username and password combination. Used '${username}' as the username.`);
54
+ }
55
+ const applications = yield this.$applePortalApplicationService.getApplications(user);
56
+ if (!applications || !applications.length) {
57
+ this.$logger.info("Seems you don't have any applications yet.");
58
+ }
59
+ else {
60
+ const table = (0, helpers_1.createTable)(["Application Name", "Bundle Identifier", "In Flight Version"], applications.map((application) => {
61
+ const version = (application &&
62
+ application.versionSets &&
63
+ application.versionSets.length &&
64
+ application.versionSets[0].inFlightVersion &&
65
+ application.versionSets[0].inFlightVersion.version) ||
66
+ "";
67
+ return [application.name, application.bundleId, version];
68
+ }));
69
+ this.$logger.info(table.toString());
70
+ }
41
71
  });
42
- if (!user.areCredentialsValid) {
43
- this.$errors.fail(`Invalid username and password combination. Used '${username}' as the username.`);
44
- }
45
- const applications = await this.$applePortalApplicationService.getApplications(user);
46
- if (!applications || !applications.length) {
47
- this.$logger.info("Seems you don't have any applications yet.");
48
- }
49
- else {
50
- const table = (0, helpers_1.createTable)(["Application Name", "Bundle Identifier", "In Flight Version"], applications.map((application) => {
51
- const version = (application &&
52
- application.versionSets &&
53
- application.versionSets.length &&
54
- application.versionSets[0].inFlightVersion &&
55
- application.versionSets[0].inFlightVersion.version) ||
56
- "";
57
- return [application.name, application.bundleId, version];
58
- }));
59
- this.$logger.info(table.toString());
60
- }
61
72
  }
62
73
  }
63
74
  exports.ListiOSApps = ListiOSApps;
64
75
  yok_1.injector.registerCommand("appstore|*list", ListiOSApps);
76
+ //# sourceMappingURL=appstore-list.js.map
@@ -1,4 +1,13 @@
1
1
  "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
2
11
  Object.defineProperty(exports, "__esModule", { value: true });
3
12
  exports.PublishIOS = void 0;
4
13
  const path = require("path");
@@ -27,64 +36,71 @@ class PublishIOS {
27
36
  ];
28
37
  this.$projectData.initializeProjectData();
29
38
  }
30
- async execute(args) {
39
+ execute(args) {
31
40
  var _a;
32
- await this.$itmsTransporterService.validate(this.$options.appleApplicationSpecificPassword);
33
- const username = args[0] ||
34
- (await this.$prompter.getString("Apple ID", { allowEmpty: false }));
35
- const password = args[1] || (await this.$prompter.getPassword("Apple ID password"));
36
- const user = await this.$applePortalSessionService.createUserSession({ username, password }, {
37
- applicationSpecificPassword: this.$options.appleApplicationSpecificPassword,
38
- sessionBase64: this.$options.appleSessionBase64,
39
- requireInteractiveConsole: true,
40
- requireApplicationSpecificPassword: true,
41
- });
42
- if (!user.areCredentialsValid) {
43
- this.$errors.fail(`Invalid username and password combination. Used '${username}' as the username.`);
44
- }
45
- const mobileProvisionIdentifier = (_a = this.$options.provision) !== null && _a !== void 0 ? _a : args[2];
46
- let ipaFilePath = this.$options.ipa
47
- ? path.resolve(this.$options.ipa)
48
- : null;
49
- if (!mobileProvisionIdentifier && !ipaFilePath) {
50
- this.$logger.warn("No mobile provision identifier set. A default mobile provision will be used. You can set one in app/App_Resources/iOS/build.xcconfig");
51
- }
52
- this.$options.release = true;
53
- if (!ipaFilePath) {
54
- const platform = this.$devicePlatformsConstants.iOS.toLowerCase();
55
- if (mobileProvisionIdentifier) {
56
- this.$logger.info("Building .ipa with the selected mobile provision and/or certificate. " +
57
- mobileProvisionIdentifier);
58
- this.$options.provision = mobileProvisionIdentifier;
59
- const buildData = new build_data_1.IOSBuildData(this.$projectData.projectDir, platform, { ...this.$options.argv, buildForAppStore: true, watch: false });
60
- ipaFilePath = await this.$buildController.prepareAndBuild(buildData);
41
+ return __awaiter(this, void 0, void 0, function* () {
42
+ yield this.$itmsTransporterService.validate(this.$options.appleApplicationSpecificPassword);
43
+ const username = args[0] ||
44
+ (yield this.$prompter.getString("Apple ID", { allowEmpty: false }));
45
+ const password = args[1] || (yield this.$prompter.getPassword("Apple ID password"));
46
+ const user = yield this.$applePortalSessionService.createUserSession({ username, password }, {
47
+ applicationSpecificPassword: this.$options.appleApplicationSpecificPassword,
48
+ sessionBase64: this.$options.appleSessionBase64,
49
+ requireInteractiveConsole: true,
50
+ requireApplicationSpecificPassword: true,
51
+ });
52
+ if (!user.areCredentialsValid) {
53
+ this.$errors.fail(`Invalid username and password combination. Used '${username}' as the username.`);
54
+ }
55
+ const mobileProvisionIdentifier = (_a = this.$options.provision) !== null && _a !== void 0 ? _a : args[2];
56
+ let ipaFilePath = this.$options.ipa
57
+ ? path.resolve(this.$options.ipa)
58
+ : null;
59
+ if (!mobileProvisionIdentifier && !ipaFilePath) {
60
+ this.$logger.warn("No mobile provision identifier set. A default mobile provision will be used. You can set one in app/App_Resources/iOS/build.xcconfig");
61
61
  }
62
- else {
63
- this.$logger.info("No .ipa, mobile provision or certificate set. Perfect! Now we'll build .xcarchive and let Xcode pick the distribution certificate and provisioning profile for you when exporting .ipa for AppStore submission.");
64
- const buildData = new build_data_1.IOSBuildData(this.$projectData.projectDir, platform, { ...this.$options.argv, buildForAppStore: true, watch: false });
65
- ipaFilePath = await this.$buildController.prepareAndBuild(buildData);
66
- this.$logger.info(`Export at: ${ipaFilePath}`);
62
+ this.$options.release = true;
63
+ if (!ipaFilePath) {
64
+ const platform = this.$devicePlatformsConstants.iOS.toLowerCase();
65
+ // No .ipa path provided, build .ipa on out own.
66
+ if (mobileProvisionIdentifier) {
67
+ // This is not very correct as if we build multiple targets we will try to sign all of them using the signing identity here.
68
+ this.$logger.info("Building .ipa with the selected mobile provision and/or certificate. " +
69
+ mobileProvisionIdentifier);
70
+ this.$options.provision = mobileProvisionIdentifier;
71
+ const buildData = new build_data_1.IOSBuildData(this.$projectData.projectDir, platform, Object.assign(Object.assign({}, this.$options.argv), { buildForAppStore: true, watch: false }));
72
+ ipaFilePath = yield this.$buildController.prepareAndBuild(buildData);
73
+ }
74
+ else {
75
+ this.$logger.info("No .ipa, mobile provision or certificate set. Perfect! Now we'll build .xcarchive and let Xcode pick the distribution certificate and provisioning profile for you when exporting .ipa for AppStore submission.");
76
+ const buildData = new build_data_1.IOSBuildData(this.$projectData.projectDir, platform, Object.assign(Object.assign({}, this.$options.argv), { buildForAppStore: true, watch: false }));
77
+ ipaFilePath = yield this.$buildController.prepareAndBuild(buildData);
78
+ this.$logger.info(`Export at: ${ipaFilePath}`);
79
+ }
67
80
  }
68
- }
69
- await this.$itmsTransporterService.upload({
70
- credentials: { username, password },
71
- user,
72
- applicationSpecificPassword: this.$options.appleApplicationSpecificPassword,
73
- ipaFilePath,
74
- shouldExtractIpa: !!this.$options.ipa,
75
- verboseLogging: this.$logger.getLevel() === "TRACE",
76
- teamId: this.$options.teamId,
81
+ yield this.$itmsTransporterService.upload({
82
+ credentials: { username, password },
83
+ user,
84
+ applicationSpecificPassword: this.$options.appleApplicationSpecificPassword,
85
+ ipaFilePath,
86
+ shouldExtractIpa: !!this.$options.ipa,
87
+ verboseLogging: this.$logger.getLevel() === "TRACE",
88
+ teamId: this.$options.teamId,
89
+ });
77
90
  });
78
91
  }
79
- async canExecute(args) {
80
- if (!this.$hostInfo.isDarwin) {
81
- this.$errors.fail("iOS publishing is only available on macOS.");
82
- }
83
- if (!this.$platformValidationService.isPlatformSupportedForOS(this.$devicePlatformsConstants.iOS, this.$projectData)) {
84
- this.$errors.fail(`Applications for platform ${this.$devicePlatformsConstants.iOS} can not be built on this OS`);
85
- }
86
- return true;
92
+ canExecute(args) {
93
+ return __awaiter(this, void 0, void 0, function* () {
94
+ if (!this.$hostInfo.isDarwin) {
95
+ this.$errors.fail("iOS publishing is only available on macOS.");
96
+ }
97
+ if (!this.$platformValidationService.isPlatformSupportedForOS(this.$devicePlatformsConstants.iOS, this.$projectData)) {
98
+ this.$errors.fail(`Applications for platform ${this.$devicePlatformsConstants.iOS} can not be built on this OS`);
99
+ }
100
+ return true;
101
+ });
87
102
  }
88
103
  }
89
104
  exports.PublishIOS = PublishIOS;
90
105
  yok_1.injector.registerCommand(["publish|ios", "appstore|upload"], PublishIOS);
106
+ //# sourceMappingURL=appstore-upload.js.map
@@ -1,4 +1,13 @@
1
1
  "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
2
11
  Object.defineProperty(exports, "__esModule", { value: true });
3
12
  exports.BuildVisionOsCommand = exports.BuildAndroidCommand = exports.BuildIosCommand = exports.BuildCommandBase = void 0;
4
13
  const constants_1 = require("../constants");
@@ -15,31 +24,35 @@ class BuildCommandBase extends command_base_1.ValidatePlatformCommandBase {
15
24
  this.$logger = $logger;
16
25
  this.dashedOptions = {
17
26
  watch: {
18
- type: "boolean",
27
+ type: "boolean" /* OptionType.Boolean */,
19
28
  default: false,
20
29
  hasSensitiveValue: false,
21
30
  },
22
- hmr: { type: "boolean", default: false, hasSensitiveValue: false },
31
+ hmr: { type: "boolean" /* OptionType.Boolean */, default: false, hasSensitiveValue: false },
23
32
  };
24
33
  this.$projectData.initializeProjectData();
25
34
  }
26
- async executeCore(args) {
27
- const platform = args[0].toLowerCase();
28
- const buildData = this.$buildDataService.getBuildData(this.$projectData.projectDir, platform, this.$options);
29
- const outputPath = await this.$buildController.prepareAndBuild(buildData);
30
- return outputPath;
35
+ executeCore(args) {
36
+ return __awaiter(this, void 0, void 0, function* () {
37
+ const platform = args[0].toLowerCase();
38
+ const buildData = this.$buildDataService.getBuildData(this.$projectData.projectDir, platform, this.$options);
39
+ const outputPath = yield this.$buildController.prepareAndBuild(buildData);
40
+ return outputPath;
41
+ });
31
42
  }
32
43
  validatePlatform(platform) {
33
44
  if (!this.$platformValidationService.isPlatformSupportedForOS(platform, this.$projectData)) {
34
45
  this.$errors.fail(`Applications for platform ${platform} can not be built on this OS`);
35
46
  }
36
47
  }
37
- async validateArgs(args, platform) {
38
- if (args.length !== 0) {
39
- this.$errors.failWithHelp(`The arguments '${args.join(" ")}' are not valid for the current command.`);
40
- }
41
- const result = await this.$platformValidationService.validateOptions(this.$options.provision, this.$options.teamId, this.$projectData, platform);
42
- return result;
48
+ validateArgs(args, platform) {
49
+ return __awaiter(this, void 0, void 0, function* () {
50
+ if (args.length !== 0) {
51
+ this.$errors.failWithHelp(`The arguments '${args.join(" ")}' are not valid for the current command.`);
52
+ }
53
+ const result = yield this.$platformValidationService.validateOptions(this.$options.provision, this.$options.teamId, this.$projectData, platform);
54
+ return result;
55
+ });
43
56
  }
44
57
  }
45
58
  exports.BuildCommandBase = BuildCommandBase;
@@ -50,23 +63,32 @@ class BuildIosCommand extends BuildCommandBase {
50
63
  this.$migrateController = $migrateController;
51
64
  this.allowedParameters = [];
52
65
  }
53
- async execute(args) {
54
- await this.executeCore([this.$devicePlatformsConstants.iOS.toLowerCase()]);
66
+ execute(args) {
67
+ return __awaiter(this, void 0, void 0, function* () {
68
+ yield this.executeCore([this.$devicePlatformsConstants.iOS.toLowerCase()]);
69
+ });
55
70
  }
56
- async canExecute(args) {
57
- const platform = this.$devicePlatformsConstants.iOS;
58
- if (!this.$options.force) {
59
- await this.$migrateController.validate({
60
- projectDir: this.$projectData.projectDir,
61
- platforms: [platform],
62
- });
63
- }
64
- super.validatePlatform(platform);
65
- let canExecute = await super.canExecuteCommandBase(platform);
66
- if (canExecute) {
67
- canExecute = await super.validateArgs(args, platform);
68
- }
69
- return canExecute;
71
+ canExecute(args) {
72
+ const _super = Object.create(null, {
73
+ validatePlatform: { get: () => super.validatePlatform },
74
+ canExecuteCommandBase: { get: () => super.canExecuteCommandBase },
75
+ validateArgs: { get: () => super.validateArgs }
76
+ });
77
+ return __awaiter(this, void 0, void 0, function* () {
78
+ const platform = this.$devicePlatformsConstants.iOS;
79
+ if (!this.$options.force) {
80
+ yield this.$migrateController.validate({
81
+ projectDir: this.$projectData.projectDir,
82
+ platforms: [platform],
83
+ });
84
+ }
85
+ _super.validatePlatform.call(this, platform);
86
+ let canExecute = yield _super.canExecuteCommandBase.call(this, platform);
87
+ if (canExecute) {
88
+ canExecute = yield _super.validateArgs.call(this, args, platform);
89
+ }
90
+ return canExecute;
91
+ });
70
92
  }
71
93
  }
72
94
  exports.BuildIosCommand = BuildIosCommand;
@@ -81,34 +103,42 @@ class BuildAndroidCommand extends BuildCommandBase {
81
103
  this.$migrateController = $migrateController;
82
104
  this.allowedParameters = [];
83
105
  }
84
- async execute(args) {
85
- await this.executeCore([
86
- this.$devicePlatformsConstants.Android.toLowerCase(),
87
- ]);
88
- if (this.$options.aab) {
89
- this.$logger.info(constants_1.AndroidAppBundleMessages.ANDROID_APP_BUNDLE_DOCS_MESSAGE);
90
- if (this.$options.release) {
91
- this.$logger.info(constants_1.AndroidAppBundleMessages.ANDROID_APP_BUNDLE_PUBLISH_DOCS_MESSAGE);
106
+ execute(args) {
107
+ return __awaiter(this, void 0, void 0, function* () {
108
+ yield this.executeCore([
109
+ this.$devicePlatformsConstants.Android.toLowerCase(),
110
+ ]);
111
+ if (this.$options.aab) {
112
+ this.$logger.info(constants_1.AndroidAppBundleMessages.ANDROID_APP_BUNDLE_DOCS_MESSAGE);
113
+ if (this.$options.release) {
114
+ this.$logger.info(constants_1.AndroidAppBundleMessages.ANDROID_APP_BUNDLE_PUBLISH_DOCS_MESSAGE);
115
+ }
92
116
  }
93
- }
117
+ });
94
118
  }
95
- async canExecute(args) {
96
- const platform = this.$devicePlatformsConstants.Android;
97
- if (!this.$options.force) {
98
- await this.$migrateController.validate({
99
- projectDir: this.$projectData.projectDir,
100
- platforms: [platform],
101
- });
102
- }
103
- this.$androidBundleValidatorHelper.validateRuntimeVersion(this.$projectData);
104
- let canExecute = await super.canExecuteCommandBase(platform);
105
- if (canExecute) {
106
- if (this.$options.release && !(0, helpers_1.hasValidAndroidSigning)(this.$options)) {
107
- this.$errors.failWithHelp(constants_1.ANDROID_RELEASE_BUILD_ERROR_MESSAGE);
119
+ canExecute(args) {
120
+ const _super = Object.create(null, {
121
+ canExecuteCommandBase: { get: () => super.canExecuteCommandBase },
122
+ validateArgs: { get: () => super.validateArgs }
123
+ });
124
+ return __awaiter(this, void 0, void 0, function* () {
125
+ const platform = this.$devicePlatformsConstants.Android;
126
+ if (!this.$options.force) {
127
+ yield this.$migrateController.validate({
128
+ projectDir: this.$projectData.projectDir,
129
+ platforms: [platform],
130
+ });
108
131
  }
109
- canExecute = await super.validateArgs(args, platform);
110
- }
111
- return canExecute;
132
+ this.$androidBundleValidatorHelper.validateRuntimeVersion(this.$projectData);
133
+ let canExecute = yield _super.canExecuteCommandBase.call(this, platform);
134
+ if (canExecute) {
135
+ if (this.$options.release && !(0, helpers_1.hasValidAndroidSigning)(this.$options)) {
136
+ this.$errors.failWithHelp(constants_1.ANDROID_RELEASE_BUILD_ERROR_MESSAGE);
137
+ }
138
+ canExecute = yield _super.validateArgs.call(this, args, platform);
139
+ }
140
+ return canExecute;
141
+ });
112
142
  }
113
143
  }
114
144
  exports.BuildAndroidCommand = BuildAndroidCommand;
@@ -119,11 +149,14 @@ class BuildVisionOsCommand extends BuildIosCommand {
119
149
  this.$options = $options;
120
150
  this.$migrateController = $migrateController;
121
151
  }
122
- async canExecute(args) {
123
- this.$errors.fail('Building for "visionOS" platform is not supported via the CLI. Please open the project in Xcode and build it from there.');
124
- return false;
152
+ canExecute(args) {
153
+ return __awaiter(this, void 0, void 0, function* () {
154
+ this.$errors.fail('Building for "visionOS" platform is not supported via the CLI. Please open the project in Xcode and build it from there.');
155
+ return false;
156
+ });
125
157
  }
126
158
  }
127
159
  exports.BuildVisionOsCommand = BuildVisionOsCommand;
128
160
  yok_1.injector.registerCommand("build|vision", BuildVisionOsCommand);
129
161
  yok_1.injector.registerCommand("build|visionos", BuildVisionOsCommand);
162
+ //# sourceMappingURL=build.js.map