@akylas/nativescript-cli 8.7.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.
- package/LICENSE +201 -0
- package/README.md +385 -0
- package/bin/nativescript +3 -0
- package/bin/nativescript.js +3 -0
- package/bin/ns +3 -0
- package/bin/nsc +3 -0
- package/bin/nsc.js +3 -0
- package/bin/tns +12 -0
- package/bin/tns.cmd +1 -0
- package/config/config.json +8 -0
- package/config/test-dependencies.json +58 -0
- package/config/test-deps-versions-generated.json +1 -0
- package/docs/build-jekyll-md.sh +7 -0
- package/docs/helpers/favicon.ico +0 -0
- package/docs/helpers/logo.png +0 -0
- package/docs/man_pages/cloud/cloud-setup.md +29 -0
- package/docs/man_pages/device/device-android.md +32 -0
- package/docs/man_pages/device/device-ios.md +40 -0
- package/docs/man_pages/device/device-list-applications.md +37 -0
- package/docs/man_pages/device/device-log.md +37 -0
- package/docs/man_pages/device/device-run.md +55 -0
- package/docs/man_pages/device/device.md +46 -0
- package/docs/man_pages/env-configuration/setup.md +22 -0
- package/docs/man_pages/general/autocomplete-disable.md +37 -0
- package/docs/man_pages/general/autocomplete-enable.md +37 -0
- package/docs/man_pages/general/autocomplete-status.md +35 -0
- package/docs/man_pages/general/autocomplete.md +46 -0
- package/docs/man_pages/general/clean.md +22 -0
- package/docs/man_pages/general/doctor.md +33 -0
- package/docs/man_pages/general/error-reporting.md +41 -0
- package/docs/man_pages/general/extension-install.md +45 -0
- package/docs/man_pages/general/extension-uninstall.md +41 -0
- package/docs/man_pages/general/extension.md +35 -0
- package/docs/man_pages/general/help.md +39 -0
- package/docs/man_pages/general/info.md +33 -0
- package/docs/man_pages/general/migrate.md +79 -0
- package/docs/man_pages/general/package-manager-get.md +26 -0
- package/docs/man_pages/general/package-manager-set.md +29 -0
- package/docs/man_pages/general/package-manager.md +25 -0
- package/docs/man_pages/general/proxy-clear.md +26 -0
- package/docs/man_pages/general/proxy-set.md +45 -0
- package/docs/man_pages/general/proxy.md +31 -0
- package/docs/man_pages/general/update.md +40 -0
- package/docs/man_pages/general/usage-reporting.md +41 -0
- package/docs/man_pages/index.html +3 -0
- package/docs/man_pages/lib-management/plugin-add.md +42 -0
- package/docs/man_pages/lib-management/plugin-build.md +32 -0
- package/docs/man_pages/lib-management/plugin-create.md +48 -0
- package/docs/man_pages/lib-management/plugin-install.md +42 -0
- package/docs/man_pages/lib-management/plugin-remove.md +31 -0
- package/docs/man_pages/lib-management/plugin-update.md +41 -0
- package/docs/man_pages/lib-management/plugin.md +39 -0
- package/docs/man_pages/project/configuration/generate.md +36 -0
- package/docs/man_pages/project/configuration/install.md +43 -0
- package/docs/man_pages/project/configuration/open-android.md +27 -0
- package/docs/man_pages/project/configuration/open-ios.md +31 -0
- package/docs/man_pages/project/configuration/open.md +36 -0
- package/docs/man_pages/project/configuration/platform-add.md +46 -0
- package/docs/man_pages/project/configuration/platform-clean.md +41 -0
- package/docs/man_pages/project/configuration/platform-remove.md +41 -0
- package/docs/man_pages/project/configuration/platform-update.md +45 -0
- package/docs/man_pages/project/configuration/platform.md +29 -0
- package/docs/man_pages/project/configuration/prepare.md +49 -0
- package/docs/man_pages/project/configuration/resources/resources-generate-icons.md +39 -0
- package/docs/man_pages/project/configuration/resources/resources-generate-splashes.md +39 -0
- package/docs/man_pages/project/configuration/resources/resources-update.md +35 -0
- package/docs/man_pages/project/configuration/resources/resources.md +14 -0
- package/docs/man_pages/project/creation/create.md +64 -0
- package/docs/man_pages/project/testing/build-android.md +62 -0
- package/docs/man_pages/project/testing/build-ios.md +65 -0
- package/docs/man_pages/project/testing/build.md +66 -0
- package/docs/man_pages/project/testing/debug-android.md +64 -0
- package/docs/man_pages/project/testing/debug-ios.md +65 -0
- package/docs/man_pages/project/testing/debug.md +67 -0
- package/docs/man_pages/project/testing/deploy.md +72 -0
- package/docs/man_pages/project/testing/dev-test-android.md +31 -0
- package/docs/man_pages/project/testing/dev-test-ios.md +36 -0
- package/docs/man_pages/project/testing/preview.md +35 -0
- package/docs/man_pages/project/testing/run-android.md +79 -0
- package/docs/man_pages/project/testing/run-ios.md +83 -0
- package/docs/man_pages/project/testing/run.md +92 -0
- package/docs/man_pages/project/testing/test-android.md +46 -0
- package/docs/man_pages/project/testing/test-init.md +34 -0
- package/docs/man_pages/project/testing/test-ios.md +48 -0
- package/docs/man_pages/project/testing/test.md +48 -0
- package/docs/man_pages/project/testing/typings.md +52 -0
- package/docs/man_pages/publishing/apple-login.md +35 -0
- package/docs/man_pages/publishing/appstore-upload.md +52 -0
- package/docs/man_pages/publishing/appstore.md +42 -0
- package/docs/man_pages/publishing/publish-ios.md +55 -0
- package/docs/man_pages/publishing/publish.md +38 -0
- package/docs/man_pages/start.md +81 -0
- package/lib/.d.ts +494 -0
- package/lib/android-tools-info.js +135 -0
- package/lib/base-package-manager.js +129 -0
- package/lib/bash-scripts/terminateProcess.sh +12 -0
- package/lib/bootstrap.js +203 -0
- package/lib/bun-package-manager.js +135 -0
- package/lib/color.js +10 -0
- package/lib/commands/add-platform.js +49 -0
- package/lib/commands/apple-login.js +52 -0
- package/lib/commands/appstore-list.js +75 -0
- package/lib/commands/appstore-upload.js +106 -0
- package/lib/commands/build.js +161 -0
- package/lib/commands/clean.js +253 -0
- package/lib/commands/command-base.js +46 -0
- package/lib/commands/config.js +135 -0
- package/lib/commands/create-project.js +431 -0
- package/lib/commands/debug.js +191 -0
- package/lib/commands/deploy.js +78 -0
- package/lib/commands/extensibility/install-extension.js +33 -0
- package/lib/commands/extensibility/list-extensions.js +40 -0
- package/lib/commands/extensibility/uninstall-extension.js +32 -0
- package/lib/commands/fonts.js +64 -0
- package/lib/commands/generate-assets.js +71 -0
- package/lib/commands/generate-help.js +26 -0
- package/lib/commands/generate.js +78 -0
- package/lib/commands/info.js +26 -0
- package/lib/commands/install.js +80 -0
- package/lib/commands/list-platforms.js +45 -0
- package/lib/commands/migrate.js +44 -0
- package/lib/commands/platform-clean.js +54 -0
- package/lib/commands/plugin/add-plugin.js +43 -0
- package/lib/commands/plugin/build-plugin.js +70 -0
- package/lib/commands/plugin/create-plugin.js +175 -0
- package/lib/commands/plugin/list-plugins.js +54 -0
- package/lib/commands/plugin/remove-plugin.js +52 -0
- package/lib/commands/plugin/update-plugin.js +52 -0
- package/lib/commands/post-install.js +57 -0
- package/lib/commands/prepare.js +63 -0
- package/lib/commands/preview.js +93 -0
- package/lib/commands/remove-platform.js +40 -0
- package/lib/commands/resources/resources-update.js +45 -0
- package/lib/commands/run.js +177 -0
- package/lib/commands/setup.js +15 -0
- package/lib/commands/start.js +33 -0
- package/lib/commands/test-init.js +167 -0
- package/lib/commands/test.js +146 -0
- package/lib/commands/typings.js +180 -0
- package/lib/commands/update-platform.js +57 -0
- package/lib/commands/update.js +70 -0
- package/lib/common/LICENSE +201 -0
- package/lib/common/README.md +1084 -0
- package/lib/common/bin/common-lib.js +5 -0
- package/lib/common/bootstrap.js +97 -0
- package/lib/common/child-process.js +217 -0
- package/lib/common/codeGeneration/code-entity.js +47 -0
- package/lib/common/codeGeneration/code-generation.d.ts +47 -0
- package/lib/common/codeGeneration/code-printer.js +48 -0
- package/lib/common/command-params.js +45 -0
- package/lib/common/commands/analytics.js +81 -0
- package/lib/common/commands/autocompletion.js +110 -0
- package/lib/common/commands/device/device-log-stream.js +44 -0
- package/lib/common/commands/device/get-file.js +54 -0
- package/lib/common/commands/device/list-applications.js +42 -0
- package/lib/common/commands/device/list-devices.js +150 -0
- package/lib/common/commands/device/list-files.js +55 -0
- package/lib/common/commands/device/put-file.js +55 -0
- package/lib/common/commands/device/run-application.js +46 -0
- package/lib/common/commands/device/stop-application.js +42 -0
- package/lib/common/commands/device/uninstall-application.js +33 -0
- package/lib/common/commands/doctor.js +54 -0
- package/lib/common/commands/generate-messages.js +45 -0
- package/lib/common/commands/help.js +51 -0
- package/lib/common/commands/package-manager-get.js +32 -0
- package/lib/common/commands/package-manager-set.js +37 -0
- package/lib/common/commands/post-install.js +27 -0
- package/lib/common/commands/preuninstall.js +61 -0
- package/lib/common/commands/proxy/proxy-base.js +34 -0
- package/lib/common/commands/proxy/proxy-clear.js +32 -0
- package/lib/common/commands/proxy/proxy-get.js +31 -0
- package/lib/common/commands/proxy/proxy-set.js +150 -0
- package/lib/common/common-lib.js +5 -0
- package/lib/common/constants.js +122 -0
- package/lib/common/declarations.d.ts +1713 -0
- package/lib/common/decorators.js +201 -0
- package/lib/common/definitions/cli-global.d.ts +22 -0
- package/lib/common/definitions/commands-service.d.ts +27 -0
- package/lib/common/definitions/commands.d.ts +51 -0
- package/lib/common/definitions/config.d.ts +33 -0
- package/lib/common/definitions/extensibility.d.ts +147 -0
- package/lib/common/definitions/google-analytics.d.ts +109 -0
- package/lib/common/definitions/json-file-settings-service.d.ts +24 -0
- package/lib/common/definitions/key-commands.d.ts +62 -0
- package/lib/common/definitions/logger.d.ts +41 -0
- package/lib/common/definitions/mobile.d.ts +1499 -0
- package/lib/common/definitions/validator.d.ts +8 -0
- package/lib/common/definitions/yok.d.ts +56 -0
- package/lib/common/dispatchers.js +151 -0
- package/lib/common/docs/helpers/basic-extensions-page.html +15 -0
- package/lib/common/docs/helpers/basic-page.html +14 -0
- package/lib/common/docs/helpers/styles.css +365 -0
- package/lib/common/doctor.d.ts +6 -0
- package/lib/common/errors.js +206 -0
- package/lib/common/file-system.js +441 -0
- package/lib/common/header.js +30 -0
- package/lib/common/helpers.js +658 -0
- package/lib/common/host-info.js +133 -0
- package/lib/common/http-client.js +173 -0
- package/lib/common/logger/appenders/cli-appender.js +24 -0
- package/lib/common/logger/appenders/emit-appender.js +30 -0
- package/lib/common/logger/layouts/cli-layout.js +33 -0
- package/lib/common/logger/logger.js +199 -0
- package/lib/common/messages/messages.interface.d.ts +10 -0
- package/lib/common/messages/messages.js +15 -0
- package/lib/common/mobile/android/android-application-manager.js +228 -0
- package/lib/common/mobile/android/android-debug-bridge-result-handler.js +332 -0
- package/lib/common/mobile/android/android-debug-bridge.js +167 -0
- package/lib/common/mobile/android/android-device-file-system.js +176 -0
- package/lib/common/mobile/android/android-device-hash-service.js +133 -0
- package/lib/common/mobile/android/android-device.js +164 -0
- package/lib/common/mobile/android/android-emulator-services.js +205 -0
- package/lib/common/mobile/android/android-ini-file-parser.js +77 -0
- package/lib/common/mobile/android/android-log-filter.js +42 -0
- package/lib/common/mobile/android/android-virtual-device-service.js +360 -0
- package/lib/common/mobile/android/device-android-debug-bridge.js +48 -0
- package/lib/common/mobile/android/genymotion/genymotion-service.js +211 -0
- package/lib/common/mobile/android/genymotion/virtualbox-service.js +121 -0
- package/lib/common/mobile/android/logcat-helper.js +165 -0
- package/lib/common/mobile/application-manager-base.js +136 -0
- package/lib/common/mobile/device-emitter.js +61 -0
- package/lib/common/mobile/device-log-emitter.js +40 -0
- package/lib/common/mobile/device-log-provider-base.js +76 -0
- package/lib/common/mobile/device-log-provider.js +126 -0
- package/lib/common/mobile/device-platforms-constants.js +22 -0
- package/lib/common/mobile/emulator-helper.js +84 -0
- package/lib/common/mobile/ios/device/ios-application-manager.js +159 -0
- package/lib/common/mobile/ios/device/ios-device-file-system.js +133 -0
- package/lib/common/mobile/ios/device/ios-device-operations.js +234 -0
- package/lib/common/mobile/ios/device/ios-device.js +153 -0
- package/lib/common/mobile/ios/ios-device-base.js +108 -0
- package/lib/common/mobile/ios/ios-device-product-name-mapper.js +65 -0
- package/lib/common/mobile/ios/ios-log-filter.js +24 -0
- package/lib/common/mobile/ios/simulator/ios-emulator-services.js +139 -0
- package/lib/common/mobile/ios/simulator/ios-sim-resolver.js +23 -0
- package/lib/common/mobile/ios/simulator/ios-simulator-application-manager.js +147 -0
- package/lib/common/mobile/ios/simulator/ios-simulator-device.js +106 -0
- package/lib/common/mobile/ios/simulator/ios-simulator-file-system.js +81 -0
- package/lib/common/mobile/ios/simulator/ios-simulator-log-provider.js +69 -0
- package/lib/common/mobile/local-to-device-path-data-factory.js +37 -0
- package/lib/common/mobile/log-filter.js +51 -0
- package/lib/common/mobile/logging-levels.js +12 -0
- package/lib/common/mobile/mobile-core/android-device-discovery.js +91 -0
- package/lib/common/mobile/mobile-core/android-emulator-discovery.js +65 -0
- package/lib/common/mobile/mobile-core/android-process-service.js +259 -0
- package/lib/common/mobile/mobile-core/device-discovery.js +64 -0
- package/lib/common/mobile/mobile-core/devices-service.js +854 -0
- package/lib/common/mobile/mobile-core/ios-device-discovery.js +63 -0
- package/lib/common/mobile/mobile-core/ios-simulator-discovery.js +109 -0
- package/lib/common/mobile/mobile-helper.js +102 -0
- package/lib/common/mobile/wp8/wp8-emulator-services.js +82 -0
- package/lib/common/old.npmignore +12 -0
- package/lib/common/opener.js +16 -0
- package/lib/common/os-info.js +21 -0
- package/lib/common/plist-parser.js +24 -0
- package/lib/common/project-helper.js +70 -0
- package/lib/common/prompter.js +191 -0
- package/lib/common/queue.js +37 -0
- package/lib/common/resource-loader.js +25 -0
- package/lib/common/resources/messages/errorMessages.json +7 -0
- package/lib/common/resources/platform-tools/android/darwin/NOTICE.txt +3407 -0
- package/lib/common/resources/platform-tools/android/darwin/adb +0 -0
- package/lib/common/resources/platform-tools/android/linux/NOTICE.txt +4451 -0
- package/lib/common/resources/platform-tools/android/linux/adb +0 -0
- package/lib/common/resources/platform-tools/android/win32/AdbWinApi.dll +0 -0
- package/lib/common/resources/platform-tools/android/win32/AdbWinUsbApi.dll +0 -0
- package/lib/common/resources/platform-tools/android/win32/NOTICE.txt +4451 -0
- package/lib/common/resources/platform-tools/android/win32/adb.exe +0 -0
- package/lib/common/resources/platform-tools/android/win32/fastboot.exe +0 -0
- package/lib/common/resources/platform-tools/unzip/win32/unzip.exe +0 -0
- package/lib/common/services/analytics/google-analytics-custom-dimensions.d.ts +16 -0
- package/lib/common/services/auto-completion-service.js +265 -0
- package/lib/common/services/cancellation.js +67 -0
- package/lib/common/services/commands-service.js +268 -0
- package/lib/common/services/help-service.js +252 -0
- package/lib/common/services/hooks-service.js +318 -0
- package/lib/common/services/ios-notification-service.js +49 -0
- package/lib/common/services/json-file-settings-service.js +133 -0
- package/lib/common/services/lock-service.js +129 -0
- package/lib/common/services/message-contract-generator.js +83 -0
- package/lib/common/services/messages-service.js +77 -0
- package/lib/common/services/micro-templating-service.js +49 -0
- package/lib/common/services/net-service.js +137 -0
- package/lib/common/services/project-files-manager.js +100 -0
- package/lib/common/services/project-files-provider-base.js +54 -0
- package/lib/common/services/proxy-service.js +64 -0
- package/lib/common/services/qr.js +39 -0
- package/lib/common/services/settings-service.js +42 -0
- package/lib/common/services/xcode-select-service.js +62 -0
- package/lib/common/utils.js +31 -0
- package/lib/common/validators/project-name-validator.js +88 -0
- package/lib/common/validators/validation-result.js +16 -0
- package/lib/common/vendor/License.txt +4 -0
- package/lib/common/vendor/jaro-winkler_distance.js +111 -0
- package/lib/common/verify-node-version.js +78 -0
- package/lib/common/yok.js +426 -0
- package/lib/config.js +137 -0
- package/lib/constants-provider.js +12 -0
- package/lib/constants.js +350 -0
- package/lib/controllers/build-controller.js +133 -0
- package/lib/controllers/debug-controller.js +235 -0
- package/lib/controllers/deploy-controller.js +38 -0
- package/lib/controllers/migrate-controller.js +1114 -0
- package/lib/controllers/platform-controller.js +127 -0
- package/lib/controllers/prepare-controller.js +353 -0
- package/lib/controllers/run-controller.js +525 -0
- package/lib/controllers/update-controller-base.js +84 -0
- package/lib/controllers/update-controller.js +188 -0
- package/lib/data/build-data.js +44 -0
- package/lib/data/controller-data-base.js +11 -0
- package/lib/data/debug-data.js +6 -0
- package/lib/data/platform-data.js +13 -0
- package/lib/data/prepare-data.js +46 -0
- package/lib/data/run-data.js +11 -0
- package/lib/declarations.d.ts +1256 -0
- package/lib/definitions/android-bundle-tool-service.d.ts +17 -0
- package/lib/definitions/android-plugin-migrator.d.ts +52 -0
- package/lib/definitions/build.d.ts +92 -0
- package/lib/definitions/cleanup-service.d.ts +79 -0
- package/lib/definitions/data.d.ts +7 -0
- package/lib/definitions/debug.d.ts +166 -0
- package/lib/definitions/deploy.d.ts +3 -0
- package/lib/definitions/file-log-service.d.ts +19 -0
- package/lib/definitions/files-hash-service.d.ts +35 -0
- package/lib/definitions/gradle.d.ts +33 -0
- package/lib/definitions/hmr-status-service.d.ts +5 -0
- package/lib/definitions/initialize-service.d.ts +11 -0
- package/lib/definitions/ios-debugger-port-service.d.ts +29 -0
- package/lib/definitions/ios.d.ts +97 -0
- package/lib/definitions/ip-service.d.ts +10 -0
- package/lib/definitions/livesync-global.d.ts +7 -0
- package/lib/definitions/livesync.d.ts +601 -0
- package/lib/definitions/lock-service.d.ts +43 -0
- package/lib/definitions/log-parser-service.d.ts +14 -0
- package/lib/definitions/marking-mode-service.d.ts +11 -0
- package/lib/definitions/metadata-filtering-service.d.ts +48 -0
- package/lib/definitions/migrate.d.ts +46 -0
- package/lib/definitions/nativescript-dev-xcode.d.ts +87 -0
- package/lib/definitions/pacote-service.d.ts +50 -0
- package/lib/definitions/platform.d.ts +146 -0
- package/lib/definitions/plugins.d.ts +75 -0
- package/lib/definitions/prepare.d.ts +51 -0
- package/lib/definitions/project-changes.d.ts +34 -0
- package/lib/definitions/project.d.ts +858 -0
- package/lib/definitions/prompter.d.ts +27 -0
- package/lib/definitions/qr-code.d.ts +3 -0
- package/lib/definitions/require.d.ts +11 -0
- package/lib/definitions/run.d.ts +45 -0
- package/lib/definitions/start-service.d.ts +15 -0
- package/lib/definitions/subscription-service.d.ts +11 -0
- package/lib/definitions/system-warnings.d.ts +4 -0
- package/lib/definitions/temp-service.d.ts +9 -0
- package/lib/definitions/terminal-spinner-service.d.ts +12 -0
- package/lib/definitions/update.d.ts +16 -0
- package/lib/definitions/xcode.d.ts +12 -0
- package/lib/detached-processes/cleanup-js-subprocess.js +62 -0
- package/lib/detached-processes/cleanup-process-definitions.d.ts +70 -0
- package/lib/detached-processes/cleanup-process.js +281 -0
- package/lib/detached-processes/detached-process-enums.d.ts +70 -0
- package/lib/detached-processes/file-log-service.js +20 -0
- package/lib/device-path-provider.js +60 -0
- package/lib/device-sockets/ios/app-debug-socket-proxy-factory.js +217 -0
- package/lib/device-sockets/ios/notification.js +30 -0
- package/lib/device-sockets/ios/socket-request-executor.js +56 -0
- package/lib/helpers/android-bundle-validator-helper.js +52 -0
- package/lib/helpers/deploy-command-helper.js +70 -0
- package/lib/helpers/key-command-helper.js +124 -0
- package/lib/helpers/livesync-command-helper.js +220 -0
- package/lib/helpers/network-connectivity-validator.js +47 -0
- package/lib/helpers/options-track-helper.js +88 -0
- package/lib/helpers/package-path-helper.js +6 -0
- package/lib/helpers/platform-command-helper.js +192 -0
- package/lib/helpers/version-validator-helper.js +25 -0
- package/lib/key-commands/bootstrap.js +21 -0
- package/lib/key-commands/index.js +456 -0
- package/lib/nativescript-cli-lib-bootstrap.js +8 -0
- package/lib/nativescript-cli-lib.js +5 -0
- package/lib/nativescript-cli.js +55 -0
- package/lib/node/pbxproj-dom-xcode.js +5 -0
- package/lib/node/xcode.js +7 -0
- package/lib/node-package-manager.js +156 -0
- package/lib/options.js +393 -0
- package/lib/package-installation-manager.js +221 -0
- package/lib/package-manager.js +184 -0
- package/lib/platform-command-param.js +29 -0
- package/lib/pnpm-package-manager.js +136 -0
- package/lib/project-data.js +237 -0
- package/lib/providers/project-files-provider.js +46 -0
- package/lib/resolvers/livesync-service-resolver.js +22 -0
- package/lib/services/analytics/analytics-broker-process.js +77 -0
- package/lib/services/analytics/analytics-broker.js +53 -0
- package/lib/services/analytics/analytics-service.js +366 -0
- package/lib/services/analytics/analytics.d.ts +55 -0
- package/lib/services/analytics/google-analytics-cross-client-custom-dimensions.d.ts +6 -0
- package/lib/services/analytics/google-analytics-provider.js +152 -0
- package/lib/services/analytics-settings-service.js +104 -0
- package/lib/services/android/android-bundle-tool-service.js +81 -0
- package/lib/services/android/gradle-build-args-service.js +87 -0
- package/lib/services/android/gradle-build-service.js +68 -0
- package/lib/services/android/gradle-command-service.js +49 -0
- package/lib/services/android-device-debug-service.js +173 -0
- package/lib/services/android-plugin-build-service.js +527 -0
- package/lib/services/android-project-service.js +600 -0
- package/lib/services/android-resources-migration-service.js +104 -0
- package/lib/services/apple-portal/apple-portal-application-service.js +82 -0
- package/lib/services/apple-portal/apple-portal-cookie-service.js +53 -0
- package/lib/services/apple-portal/apple-portal-session-service.js +277 -0
- package/lib/services/apple-portal/definitions.d.ts +87 -0
- package/lib/services/assets-generation/assets-generation-service.js +178 -0
- package/lib/services/build-artifacts-service.js +113 -0
- package/lib/services/build-data-service.js +20 -0
- package/lib/services/build-info-file-service.js +79 -0
- package/lib/services/cleanup-service.js +194 -0
- package/lib/services/cocoapods-platform-manager.js +137 -0
- package/lib/services/cocoapods-service.js +354 -0
- package/lib/services/debug-data-service.js +21 -0
- package/lib/services/debug-service-base.js +44 -0
- package/lib/services/device/device-install-app-service.js +118 -0
- package/lib/services/doctor-service.js +294 -0
- package/lib/services/extensibility-service.js +220 -0
- package/lib/services/files-hash-service.js +79 -0
- package/lib/services/hmr-status-service.js +128 -0
- package/lib/services/info-service.js +14 -0
- package/lib/services/initialize-service.js +70 -0
- package/lib/services/ios/export-options-plist-service.js +131 -0
- package/lib/services/ios/ios-signing-service.js +265 -0
- package/lib/services/ios/spm-service.js +78 -0
- package/lib/services/ios/xcodebuild-args-service.js +163 -0
- package/lib/services/ios/xcodebuild-command-service.js +40 -0
- package/lib/services/ios/xcodebuild-service.js +93 -0
- package/lib/services/ios-debugger-port-service.js +140 -0
- package/lib/services/ios-device-debug-service.js +167 -0
- package/lib/services/ios-entitlements-service.js +78 -0
- package/lib/services/ios-extensions-service.js +63 -0
- package/lib/services/ios-log-filter.js +70 -0
- package/lib/services/ios-native-target-service.js +108 -0
- package/lib/services/ios-project-service.js +851 -0
- package/lib/services/ios-provision-service.js +173 -0
- package/lib/services/ios-watch-app-service.js +76 -0
- package/lib/services/ip-service.js +78 -0
- package/lib/services/itmstransporter-service.js +216 -0
- package/lib/services/karma-execution.js +16 -0
- package/lib/services/livesync/android-device-livesync-service-base.js +68 -0
- package/lib/services/livesync/android-device-livesync-service.js +203 -0
- package/lib/services/livesync/android-device-livesync-sockets-service.js +198 -0
- package/lib/services/livesync/android-livesync-service.js +76 -0
- package/lib/services/livesync/android-livesync-tool.js +427 -0
- package/lib/services/livesync/android-livesync-tool.md +211 -0
- package/lib/services/livesync/device-livesync-service-base.js +69 -0
- package/lib/services/livesync/ios-device-livesync-service.js +218 -0
- package/lib/services/livesync/ios-livesync-service.js +95 -0
- package/lib/services/livesync/livesync-socket.js +14 -0
- package/lib/services/livesync/platform-livesync-service-base.js +180 -0
- package/lib/services/livesync-process-data-service.js +43 -0
- package/lib/services/log-parser-service.js +52 -0
- package/lib/services/log-source-map-service.js +235 -0
- package/lib/services/marking-mode-service.js +56 -0
- package/lib/services/metadata-filtering-service.js +105 -0
- package/lib/services/npm-config-service.js +39 -0
- package/lib/services/pacote-service.js +109 -0
- package/lib/services/performance-service.js +92 -0
- package/lib/services/platform/add-platform-service.js +119 -0
- package/lib/services/platform/platform-validation-service.js +85 -0
- package/lib/services/platform/prepare-native-platform-service.js +87 -0
- package/lib/services/platform-environment-requirements.js +87 -0
- package/lib/services/platform-project-service-base.js +32 -0
- package/lib/services/platforms-data-service.js +31 -0
- package/lib/services/plugins-service.js +477 -0
- package/lib/services/prepare-data-service.js +21 -0
- package/lib/services/project-backup-service.js +114 -0
- package/lib/services/project-changes-service.js +274 -0
- package/lib/services/project-cleanup-service.js +102 -0
- package/lib/services/project-config-service.js +335 -0
- package/lib/services/project-data-service.js +478 -0
- package/lib/services/project-name-service.js +67 -0
- package/lib/services/project-service.js +204 -0
- package/lib/services/project-templates-service.js +114 -0
- package/lib/services/qr-code-terminal-service.js +20 -0
- package/lib/services/require-service.js +11 -0
- package/lib/services/start-service.js +116 -0
- package/lib/services/temp-service.js +36 -0
- package/lib/services/terminal-spinner-service.js +38 -0
- package/lib/services/test-execution-service.js +154 -0
- package/lib/services/test-initialization-service.js +54 -0
- package/lib/services/timeline-profiler-service.js +108 -0
- package/lib/services/user-settings-service.js +34 -0
- package/lib/services/versions-service.js +196 -0
- package/lib/services/watch-ignore-list-service.js +20 -0
- package/lib/services/webpack/webpack-compiler-service.js +405 -0
- package/lib/services/webpack/webpack.d.ts +227 -0
- package/lib/services/xcconfig-service.js +76 -0
- package/lib/services/xcproj-service.js +11 -0
- package/lib/shared-event-bus.js +7 -0
- package/lib/sys-info.js +120 -0
- package/lib/tools/config-manipulation/config-transformer.js +201 -0
- package/lib/tools/node-modules/node-modules-builder.js +42 -0
- package/lib/tools/node-modules/node-modules-dependencies-builder.js +100 -0
- package/lib/yarn-package-manager.js +134 -0
- package/lib/yarn2-package-manager.js +143 -0
- package/package.json +192 -0
- package/postinstall.js +10 -0
- package/preuninstall.js +14 -0
- package/resources/assets/image-definitions.json +655 -0
- package/resources/test/example.jasmine.js +6 -0
- package/resources/test/example.jasmine.ts +6 -0
- package/resources/test/example.mocha.js +9 -0
- package/resources/test/example.mocha.ts +9 -0
- package/resources/test/example.qunit.js +7 -0
- package/resources/test/example.qunit.ts +7 -0
- package/resources/test/karma.conf.js +93 -0
- package/resources/test/test-main.js +9 -0
- package/resources/test/test-main.ts +11 -0
- package/resources/test/tsconfig.spec.json +9 -0
- package/setup/mac-startup-shell-script.sh +2 -0
- package/vendor/aab-tool/LICENSE +202 -0
- package/vendor/aab-tool/README.txt +1 -0
- package/vendor/aab-tool/bundletool.jar +0 -0
- package/vendor/gradle-app/app/build.gradle +1054 -0
- package/vendor/gradle-app/app/gradle-helpers/AnalyticsCollector.gradle +48 -0
- package/vendor/gradle-app/app/gradle-helpers/BuildToolTask.gradle +50 -0
- package/vendor/gradle-app/app/gradle-helpers/CustomExecutionLogger.gradle +52 -0
- package/vendor/gradle-app/build.gradle +170 -0
- package/vendor/gradle-app/settings.gradle +78 -0
- package/vendor/gradle-plugin/LICENSE +995 -0
- package/vendor/gradle-plugin/build.gradle +363 -0
- package/vendor/gradle-plugin/gradle/wrapper/gradle-wrapper.jar +0 -0
- package/vendor/gradle-plugin/gradle/wrapper/gradle-wrapper.properties +6 -0
- package/vendor/gradle-plugin/gradle.properties +6 -0
- package/vendor/gradle-plugin/gradlew +172 -0
- package/vendor/gradle-plugin/gradlew.bat +84 -0
- package/vendor/gradle-plugin/settings.gradle +45 -0
|
@@ -0,0 +1,601 @@
|
|
|
1
|
+
import { EventEmitter } from "events";
|
|
2
|
+
import {
|
|
3
|
+
INativePrepare,
|
|
4
|
+
IValidatePlatformOutput,
|
|
5
|
+
IProjectData,
|
|
6
|
+
} from "./project";
|
|
7
|
+
import { IBuildPlatformAction } from "./platform";
|
|
8
|
+
import { IDebugOptions } from "./debug";
|
|
9
|
+
import { IBuildData } from "./build";
|
|
10
|
+
import { IEnvOptions } from "../declarations";
|
|
11
|
+
import {
|
|
12
|
+
IPlatform,
|
|
13
|
+
IProjectDir,
|
|
14
|
+
IRelease,
|
|
15
|
+
IQrCodeImageData,
|
|
16
|
+
IDictionary,
|
|
17
|
+
} from "../common/declarations";
|
|
18
|
+
|
|
19
|
+
declare global {
|
|
20
|
+
interface ILiveSyncProcessData {
|
|
21
|
+
timer: NodeJS.Timer;
|
|
22
|
+
actionsChain: Promise<any>;
|
|
23
|
+
isStopped: boolean;
|
|
24
|
+
deviceDescriptors: ILiveSyncDeviceDescriptor[];
|
|
25
|
+
currentSyncAction: Promise<any>;
|
|
26
|
+
platforms: string[];
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
interface IOptionalOutputPath {
|
|
30
|
+
/**
|
|
31
|
+
* Path where the build result is located (directory containing .ipa, .apk or .zip).
|
|
32
|
+
* This is required for initial checks where LiveSync will skip the rebuild in case there's already a build result and no change requiring rebuild is made since then.
|
|
33
|
+
* In case it is not passed, the default output for local builds will be used.
|
|
34
|
+
*/
|
|
35
|
+
outputPath?: string;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* Describes action used whenever building a project.
|
|
40
|
+
*/
|
|
41
|
+
interface IBuildAction {
|
|
42
|
+
/**
|
|
43
|
+
* @returns {Promise<string>} Path to build artifact (.ipa, .apk or .zip).
|
|
44
|
+
*/
|
|
45
|
+
(): Promise<string>;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* Describes options that can be passed in order to specify the exact location of the built package.
|
|
50
|
+
*/
|
|
51
|
+
interface IOutputDirectoryOptions extends IPlatform {
|
|
52
|
+
/**
|
|
53
|
+
* Directory where the project is located.
|
|
54
|
+
*/
|
|
55
|
+
projectDir: string;
|
|
56
|
+
|
|
57
|
+
/**
|
|
58
|
+
* Whether the build is for emulator or not.
|
|
59
|
+
*/
|
|
60
|
+
emulator?: boolean;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* Describes information for LiveSync on a device.
|
|
65
|
+
*/
|
|
66
|
+
interface ILiveSyncDeviceDescriptor extends IOptionalDebuggingOptions {
|
|
67
|
+
/**
|
|
68
|
+
* Device identifier.
|
|
69
|
+
*/
|
|
70
|
+
identifier: string;
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* Action that will rebuild the application. The action must return a Promise, which is resolved with at path to build artifact.
|
|
74
|
+
*/
|
|
75
|
+
buildAction: IBuildAction;
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* Whether to skip preparing the native platform.
|
|
79
|
+
*/
|
|
80
|
+
skipNativePrepare?: boolean;
|
|
81
|
+
|
|
82
|
+
/**
|
|
83
|
+
* Whether debugging has been enabled for this device or not
|
|
84
|
+
*/
|
|
85
|
+
debuggingEnabled?: boolean;
|
|
86
|
+
|
|
87
|
+
/**
|
|
88
|
+
* Describes the data used for building the application
|
|
89
|
+
*/
|
|
90
|
+
buildData: IBuildData;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
/**
|
|
94
|
+
* Describes a LiveSync operation.
|
|
95
|
+
*/
|
|
96
|
+
interface ILiveSyncInfo
|
|
97
|
+
extends IProjectDir,
|
|
98
|
+
IEnvOptions,
|
|
99
|
+
IRelease,
|
|
100
|
+
IHasUseHotModuleReloadOption {
|
|
101
|
+
emulator?: boolean;
|
|
102
|
+
|
|
103
|
+
/**
|
|
104
|
+
* Defines if the watcher should be skipped. If not passed, fs.Watcher will be started.
|
|
105
|
+
*/
|
|
106
|
+
skipWatcher?: boolean;
|
|
107
|
+
|
|
108
|
+
/**
|
|
109
|
+
* Forces a build before the initial livesync.
|
|
110
|
+
*/
|
|
111
|
+
clean?: boolean;
|
|
112
|
+
|
|
113
|
+
/**
|
|
114
|
+
* Defines if initial sync will be forced.
|
|
115
|
+
* In case it is true, transfers all project's directory on device
|
|
116
|
+
* In case it is false, transfers only changed files.
|
|
117
|
+
*/
|
|
118
|
+
force?: boolean;
|
|
119
|
+
|
|
120
|
+
/**
|
|
121
|
+
* Defines the timeout in seconds {N} CLI will wait to find the inspector socket port from device's logs.
|
|
122
|
+
* If not provided, defaults to 10seconds.
|
|
123
|
+
*/
|
|
124
|
+
timeout?: string;
|
|
125
|
+
|
|
126
|
+
nativePrepare?: INativePrepare;
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
interface IHasUseHotModuleReloadOption {
|
|
130
|
+
/**
|
|
131
|
+
* Defines if the hot module reload should be used.
|
|
132
|
+
*/
|
|
133
|
+
useHotModuleReload: boolean;
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
interface ILiveSyncEventData {
|
|
137
|
+
deviceIdentifier: string;
|
|
138
|
+
applicationIdentifier?: string;
|
|
139
|
+
projectDir: string;
|
|
140
|
+
syncedFiles?: string[];
|
|
141
|
+
error?: Error;
|
|
142
|
+
notification?: string;
|
|
143
|
+
isFullSync?: boolean;
|
|
144
|
+
keepProcessAlive?: boolean;
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
interface IIsEmulator {
|
|
148
|
+
isEmulator: boolean;
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
interface IProjectDataComposition {
|
|
152
|
+
projectData: IProjectData;
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
/**
|
|
156
|
+
* Describes LiveSync operations.
|
|
157
|
+
*/
|
|
158
|
+
interface ILiveSyncService extends EventEmitter {
|
|
159
|
+
/**
|
|
160
|
+
* Starts LiveSync operation by rebuilding the application if necessary and starting watcher.
|
|
161
|
+
* @param {ILiveSyncDeviceDescriptor[]} deviceDescriptors Describes each device for which we would like to sync the application - identifier, outputPath and action to rebuild the app.
|
|
162
|
+
* @param {ILiveSyncInfo} liveSyncData Describes the LiveSync operation - for which project directory is the operation and other settings.
|
|
163
|
+
* @returns {Promise<void>}
|
|
164
|
+
*/
|
|
165
|
+
liveSync(
|
|
166
|
+
deviceDescriptors: ILiveSyncDeviceDescriptor[],
|
|
167
|
+
liveSyncData: ILiveSyncInfo
|
|
168
|
+
): Promise<void>;
|
|
169
|
+
|
|
170
|
+
/**
|
|
171
|
+
* Stops LiveSync operation for specified directory.
|
|
172
|
+
* @param {string} projectDir The directory for which to stop the operation.
|
|
173
|
+
* @param {string[]} @optional deviceIdentifiers Device ids for which to stop the application. In case nothing is passed, LiveSync operation will be stopped for all devices.
|
|
174
|
+
* @param { shouldAwaitAllActions: boolean } @optional stopOptions Specifies whether we should await all actions.
|
|
175
|
+
* @returns {Promise<void>}
|
|
176
|
+
*/
|
|
177
|
+
stopLiveSync(
|
|
178
|
+
projectDir: string,
|
|
179
|
+
deviceIdentifiers?: string[],
|
|
180
|
+
stopOptions?: { shouldAwaitAllActions: boolean }
|
|
181
|
+
): Promise<void>;
|
|
182
|
+
|
|
183
|
+
/**
|
|
184
|
+
* Returns the device information for current LiveSync operation of specified project.
|
|
185
|
+
* In case LiveSync has been started on many devices, but stopped for some of them at a later point,
|
|
186
|
+
* calling the method after that will return information only for devices for which LiveSync operation is in progress.
|
|
187
|
+
* @param {string} projectDir The path to project for which the LiveSync operation is executed
|
|
188
|
+
* @returns {ILiveSyncDeviceDescriptor[]} Array of elements describing parameters used to start LiveSync on each device.
|
|
189
|
+
*/
|
|
190
|
+
getLiveSyncDeviceDescriptors(
|
|
191
|
+
projectDir: string
|
|
192
|
+
): ILiveSyncDeviceDescriptor[];
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
/**
|
|
196
|
+
* Describes settings used when disabling debugging.
|
|
197
|
+
*/
|
|
198
|
+
interface IDisableDebuggingDeviceOptions extends Mobile.IDeviceIdentifier {}
|
|
199
|
+
|
|
200
|
+
interface IOptionalDebuggingOptions {
|
|
201
|
+
/**
|
|
202
|
+
* Optional debug options - can be used to control the start of a debug process.
|
|
203
|
+
*/
|
|
204
|
+
debugOptions?: IDebugOptions;
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
interface IEnableDebuggingData
|
|
208
|
+
extends IProjectDir,
|
|
209
|
+
IOptionalDebuggingOptions {
|
|
210
|
+
deviceIdentifiers: string[];
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
interface IDisableDebuggingData extends IProjectDir {
|
|
214
|
+
deviceIdentifiers: string[];
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
interface IAttachDebuggerData
|
|
218
|
+
extends IProjectDir,
|
|
219
|
+
Mobile.IDeviceIdentifier,
|
|
220
|
+
IOptionalDebuggingOptions,
|
|
221
|
+
IIsEmulator,
|
|
222
|
+
IPlatform,
|
|
223
|
+
IOptionalOutputPath {}
|
|
224
|
+
|
|
225
|
+
/**
|
|
226
|
+
* Describes settings passed to livesync service in order to control event emitting during refresh application.
|
|
227
|
+
*/
|
|
228
|
+
interface IRefreshApplicationSettings {
|
|
229
|
+
shouldSkipEmitLiveSyncNotification: boolean;
|
|
230
|
+
shouldCheckDeveloperDiscImage: boolean;
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
interface IConnectTimeoutOption {
|
|
234
|
+
/**
|
|
235
|
+
* Time to wait for successful connection. Defaults to 30000 miliseconds.
|
|
236
|
+
*/
|
|
237
|
+
connectTimeout?: number;
|
|
238
|
+
}
|
|
239
|
+
|
|
240
|
+
interface ILiveSyncWatchInfo
|
|
241
|
+
extends IProjectDataComposition,
|
|
242
|
+
IHasUseHotModuleReloadOption,
|
|
243
|
+
IConnectTimeoutOption {
|
|
244
|
+
filesToRemove: string[];
|
|
245
|
+
filesToSync: string[];
|
|
246
|
+
liveSyncDeviceData: ILiveSyncDeviceDescriptor;
|
|
247
|
+
hmrData: IPlatformHmrData;
|
|
248
|
+
force?: boolean;
|
|
249
|
+
}
|
|
250
|
+
|
|
251
|
+
interface ILiveSyncResultInfo extends IHasUseHotModuleReloadOption {
|
|
252
|
+
modifiedFilesData: Mobile.ILocalToDevicePathData[];
|
|
253
|
+
isFullSync: boolean;
|
|
254
|
+
waitForDebugger?: boolean;
|
|
255
|
+
deviceAppData: Mobile.IDeviceAppData;
|
|
256
|
+
didRecover?: boolean;
|
|
257
|
+
forceRefreshWithSocket?: boolean;
|
|
258
|
+
}
|
|
259
|
+
|
|
260
|
+
interface IAndroidLiveSyncResultInfo
|
|
261
|
+
extends ILiveSyncResultInfo,
|
|
262
|
+
IAndroidLivesyncSyncOperationResult {}
|
|
263
|
+
|
|
264
|
+
interface IFullSyncInfo
|
|
265
|
+
extends IProjectDataComposition,
|
|
266
|
+
IHasUseHotModuleReloadOption,
|
|
267
|
+
IConnectTimeoutOption {
|
|
268
|
+
device: Mobile.IDevice;
|
|
269
|
+
watch: boolean;
|
|
270
|
+
liveSyncDeviceData: ILiveSyncDeviceDescriptor;
|
|
271
|
+
force?: boolean;
|
|
272
|
+
}
|
|
273
|
+
|
|
274
|
+
interface IPlatformHmrData {
|
|
275
|
+
hash: string;
|
|
276
|
+
fallbackFiles: string[];
|
|
277
|
+
}
|
|
278
|
+
|
|
279
|
+
interface ITransferFilesOptions {
|
|
280
|
+
isFullSync: boolean;
|
|
281
|
+
force?: boolean;
|
|
282
|
+
}
|
|
283
|
+
|
|
284
|
+
interface IPlatformLiveSyncService {
|
|
285
|
+
fullSync(syncInfo: IFullSyncInfo): Promise<ILiveSyncResultInfo>;
|
|
286
|
+
liveSyncWatchAction(
|
|
287
|
+
device: Mobile.IDevice,
|
|
288
|
+
liveSyncInfo: ILiveSyncWatchInfo
|
|
289
|
+
): Promise<ILiveSyncResultInfo>;
|
|
290
|
+
tryRefreshApplication(
|
|
291
|
+
projectData: IProjectData,
|
|
292
|
+
liveSyncInfo: ILiveSyncResultInfo
|
|
293
|
+
): Promise<boolean>;
|
|
294
|
+
restartApplication(
|
|
295
|
+
projectData: IProjectData,
|
|
296
|
+
liveSyncInfo: ILiveSyncResultInfo
|
|
297
|
+
): Promise<void>;
|
|
298
|
+
shouldRestart(
|
|
299
|
+
projectData: IProjectData,
|
|
300
|
+
liveSyncInfo: ILiveSyncResultInfo
|
|
301
|
+
): Promise<boolean>;
|
|
302
|
+
getDeviceLiveSyncService(
|
|
303
|
+
device: Mobile.IDevice,
|
|
304
|
+
projectData: IProjectData
|
|
305
|
+
): INativeScriptDeviceLiveSyncService;
|
|
306
|
+
getAppData(syncInfo: IFullSyncInfo): Promise<Mobile.IDeviceAppData>;
|
|
307
|
+
syncAfterInstall(
|
|
308
|
+
device: Mobile.IDevice,
|
|
309
|
+
liveSyncInfo: ILiveSyncWatchInfo
|
|
310
|
+
): Promise<void>;
|
|
311
|
+
}
|
|
312
|
+
|
|
313
|
+
interface IRestartApplicationInfo {
|
|
314
|
+
didRestart: boolean;
|
|
315
|
+
}
|
|
316
|
+
|
|
317
|
+
interface INativeScriptDeviceLiveSyncService {
|
|
318
|
+
/**
|
|
319
|
+
* Specifies some action that will be executed before every sync operation
|
|
320
|
+
*/
|
|
321
|
+
beforeLiveSyncAction?(deviceAppData: Mobile.IDeviceAppData): Promise<void>;
|
|
322
|
+
|
|
323
|
+
/**
|
|
324
|
+
* Tries to refresh the application's content on the device
|
|
325
|
+
*/
|
|
326
|
+
tryRefreshApplication(
|
|
327
|
+
projectData: IProjectData,
|
|
328
|
+
liveSyncInfo: ILiveSyncResultInfo
|
|
329
|
+
): Promise<boolean>;
|
|
330
|
+
|
|
331
|
+
/**
|
|
332
|
+
* Restarts the specified application
|
|
333
|
+
*/
|
|
334
|
+
restartApplication(
|
|
335
|
+
projectData: IProjectData,
|
|
336
|
+
liveSyncInfo: ILiveSyncResultInfo
|
|
337
|
+
): Promise<void>;
|
|
338
|
+
|
|
339
|
+
/**
|
|
340
|
+
* Returns if the application have to be restarted in order to apply the specified livesync changes
|
|
341
|
+
*/
|
|
342
|
+
shouldRestart(
|
|
343
|
+
projectData: IProjectData,
|
|
344
|
+
liveSyncInfo: ILiveSyncResultInfo
|
|
345
|
+
): Promise<boolean>;
|
|
346
|
+
|
|
347
|
+
/**
|
|
348
|
+
* Removes specified files from a connected device
|
|
349
|
+
* @param {Mobile.IDeviceAppData} deviceAppData Data about device and app.
|
|
350
|
+
* @param {Mobile.ILocalToDevicePathData[]} localToDevicePaths Object containing a mapping of file paths from the system to the device.
|
|
351
|
+
* @param {string} projectFilesPath The Path to the app folder inside platforms folder
|
|
352
|
+
* @return {Promise<void>}
|
|
353
|
+
*/
|
|
354
|
+
removeFiles(
|
|
355
|
+
deviceAppData: Mobile.IDeviceAppData,
|
|
356
|
+
localToDevicePaths: Mobile.ILocalToDevicePathData[],
|
|
357
|
+
projectFilesPath?: string
|
|
358
|
+
): Promise<void>;
|
|
359
|
+
|
|
360
|
+
/**
|
|
361
|
+
* Transfers specified files to a connected device
|
|
362
|
+
* @param {Mobile.IDeviceAppData} deviceAppData Data about device and app.
|
|
363
|
+
* @param {Mobile.ILocalToDevicePathData[]} localToDevicePaths Object containing a mapping of file paths from the system to the device.
|
|
364
|
+
* @param {string} projectFilesPath The Path to the app folder inside platforms folder
|
|
365
|
+
* @param {boolean} isFullSync Indicates if the operation is part of a fullSync
|
|
366
|
+
* @return {Promise<Mobile.ILocalToDevicePathData[]>} Returns the ILocalToDevicePathData of all transfered files
|
|
367
|
+
*/
|
|
368
|
+
transferFiles(
|
|
369
|
+
deviceAppData: Mobile.IDeviceAppData,
|
|
370
|
+
localToDevicePaths: Mobile.ILocalToDevicePathData[],
|
|
371
|
+
projectFilesPath: string,
|
|
372
|
+
projectData: IProjectData,
|
|
373
|
+
liveSyncDeviceData: ILiveSyncDeviceDescriptor,
|
|
374
|
+
options: ITransferFilesOptions
|
|
375
|
+
): Promise<Mobile.ILocalToDevicePathData[]>;
|
|
376
|
+
}
|
|
377
|
+
|
|
378
|
+
interface IAndroidNativeScriptDeviceLiveSyncService
|
|
379
|
+
extends INativeScriptDeviceLiveSyncService {
|
|
380
|
+
/**
|
|
381
|
+
* Guarantees all remove/update operations have finished
|
|
382
|
+
* @param {ILiveSyncResultInfo} liveSyncInfo Describes the LiveSync operation - for which project directory is the operation and other settings.
|
|
383
|
+
* @return {Promise<IAndroidLiveSyncResultInfo>}
|
|
384
|
+
*/
|
|
385
|
+
finalizeSync(
|
|
386
|
+
liveSyncInfo: ILiveSyncResultInfo,
|
|
387
|
+
projectData: IProjectData
|
|
388
|
+
): Promise<IAndroidLivesyncSyncOperationResult>;
|
|
389
|
+
}
|
|
390
|
+
|
|
391
|
+
interface ILiveSyncSocket extends INetSocket {
|
|
392
|
+
uid: string;
|
|
393
|
+
writeAsync(data: Buffer): Promise<Boolean>;
|
|
394
|
+
}
|
|
395
|
+
|
|
396
|
+
interface IAndroidLivesyncTool {
|
|
397
|
+
/**
|
|
398
|
+
* The protocol version the current app(adnroid runtime) is using.
|
|
399
|
+
*/
|
|
400
|
+
protocolVersion: string;
|
|
401
|
+
|
|
402
|
+
/**
|
|
403
|
+
* Creates new socket connection.
|
|
404
|
+
* @param configuration - The configuration to the socket connection.
|
|
405
|
+
* @returns {Promise<void>}
|
|
406
|
+
*/
|
|
407
|
+
connect(configuration: IAndroidLivesyncToolConfiguration): Promise<void>;
|
|
408
|
+
/**
|
|
409
|
+
* Sends a file through the socket.
|
|
410
|
+
* @param filePath - The full path to the file.
|
|
411
|
+
* @returns {Promise<void>}
|
|
412
|
+
*/
|
|
413
|
+
sendFile(filePath: string): Promise<void>;
|
|
414
|
+
/**
|
|
415
|
+
* Sends files through the socket.
|
|
416
|
+
* @param filePaths - Array of files that will be send by the socket.
|
|
417
|
+
* @returns {Promise<void>}
|
|
418
|
+
*/
|
|
419
|
+
sendFiles(filePaths: string[]): Promise<void>;
|
|
420
|
+
/**
|
|
421
|
+
* Sends all files from directory by the socket.
|
|
422
|
+
* @param directoryPath - The path to the directory which files will be send by the socket.
|
|
423
|
+
* @returns {Promise<void>}
|
|
424
|
+
*/
|
|
425
|
+
sendDirectory(directoryPath: string): Promise<void>;
|
|
426
|
+
/**
|
|
427
|
+
* Removes file
|
|
428
|
+
* @param filePath - The full path to the file.
|
|
429
|
+
* @returns {Promise<boolean>}
|
|
430
|
+
*/
|
|
431
|
+
removeFile(filePath: string): Promise<void>;
|
|
432
|
+
/**
|
|
433
|
+
* Removes files
|
|
434
|
+
* @param filePaths - Array of files that will be removed.
|
|
435
|
+
* @returns {Promise<boolean[]>}
|
|
436
|
+
*/
|
|
437
|
+
removeFiles(filePaths: string[]): Promise<void>;
|
|
438
|
+
/**
|
|
439
|
+
* Sends doSyncOperation that will be handled by the runtime.
|
|
440
|
+
* @param options
|
|
441
|
+
* @returns {Promise<void>}
|
|
442
|
+
*/
|
|
443
|
+
sendDoSyncOperation(
|
|
444
|
+
options?: IDoSyncOperationOptions
|
|
445
|
+
): Promise<IAndroidLivesyncSyncOperationResult>;
|
|
446
|
+
/**
|
|
447
|
+
* Generates new operation identifier.
|
|
448
|
+
*/
|
|
449
|
+
generateOperationIdentifier(): string;
|
|
450
|
+
/**
|
|
451
|
+
* Checks if the current operation is in progress.
|
|
452
|
+
* @param operationId - The identifier of the operation.
|
|
453
|
+
*/
|
|
454
|
+
isOperationInProgress(operationId: string): boolean;
|
|
455
|
+
|
|
456
|
+
/**
|
|
457
|
+
* Closes the current socket connection.
|
|
458
|
+
* @param error - Optional error for rejecting pending sync operations
|
|
459
|
+
*/
|
|
460
|
+
end(error?: Error): void;
|
|
461
|
+
|
|
462
|
+
/**
|
|
463
|
+
* Returns true if a connection has been already established
|
|
464
|
+
*/
|
|
465
|
+
hasConnection(): boolean;
|
|
466
|
+
}
|
|
467
|
+
|
|
468
|
+
/**
|
|
469
|
+
* doRefresh - Indicates if the application should be refreshed. Defaults to true.
|
|
470
|
+
* operationId - The identifier of the operation
|
|
471
|
+
* timeout - The timeout in milliseconds
|
|
472
|
+
*/
|
|
473
|
+
interface IDoSyncOperationOptions {
|
|
474
|
+
doRefresh?: boolean;
|
|
475
|
+
timeout?: number;
|
|
476
|
+
operationId?: string;
|
|
477
|
+
}
|
|
478
|
+
|
|
479
|
+
interface IAndroidLivesyncToolConfiguration extends IConnectTimeoutOption {
|
|
480
|
+
/**
|
|
481
|
+
* The application identifier.
|
|
482
|
+
*/
|
|
483
|
+
appIdentifier: string;
|
|
484
|
+
/**
|
|
485
|
+
* The device identifier.
|
|
486
|
+
*/
|
|
487
|
+
deviceIdentifier: string;
|
|
488
|
+
/**
|
|
489
|
+
* The path to app folder inside platforms folder: platforms/android/app/src/main/assets/app/
|
|
490
|
+
*/
|
|
491
|
+
appPlatformsPath: string;
|
|
492
|
+
/**
|
|
493
|
+
* If not provided, defaults to 127.0.0.1
|
|
494
|
+
*/
|
|
495
|
+
localHostAddress?: string;
|
|
496
|
+
/**
|
|
497
|
+
* If provider will call it when an error occurs.
|
|
498
|
+
*/
|
|
499
|
+
errorHandler?: any;
|
|
500
|
+
}
|
|
501
|
+
|
|
502
|
+
interface IAndroidLivesyncSyncOperationResult {
|
|
503
|
+
operationId: string;
|
|
504
|
+
didRefresh: boolean;
|
|
505
|
+
}
|
|
506
|
+
|
|
507
|
+
interface IDeviceProjectRootOptions {
|
|
508
|
+
appIdentifier: string;
|
|
509
|
+
getDirname?: boolean;
|
|
510
|
+
watch?: boolean;
|
|
511
|
+
}
|
|
512
|
+
|
|
513
|
+
interface IDevicePathProvider {
|
|
514
|
+
getDeviceProjectRootPath(
|
|
515
|
+
device: Mobile.IDevice,
|
|
516
|
+
options: IDeviceProjectRootOptions
|
|
517
|
+
): Promise<string>;
|
|
518
|
+
getDeviceSyncZipPath(device: Mobile.IDevice): string;
|
|
519
|
+
}
|
|
520
|
+
|
|
521
|
+
/**
|
|
522
|
+
* Describes additional options, that can be passed to LiveSyncCommandHelper.
|
|
523
|
+
*/
|
|
524
|
+
interface ILiveSyncCommandHelperAdditionalOptions
|
|
525
|
+
extends IBuildPlatformAction,
|
|
526
|
+
INativePrepare {
|
|
527
|
+
/**
|
|
528
|
+
* A map representing devices which have debugging enabled initially.
|
|
529
|
+
*/
|
|
530
|
+
deviceDebugMap?: IDictionary<boolean>;
|
|
531
|
+
|
|
532
|
+
/**
|
|
533
|
+
* Returns the path to the directory where the build output may be found.
|
|
534
|
+
* @param {IOutputDirectoryOptions} options Options that are used to determine the build output directory.
|
|
535
|
+
* @returns {string} The build output directory.
|
|
536
|
+
*/
|
|
537
|
+
getOutputDirectory?(options: IOutputDirectoryOptions): string;
|
|
538
|
+
}
|
|
539
|
+
|
|
540
|
+
interface ILiveSyncCommandHelper {
|
|
541
|
+
/**
|
|
542
|
+
* Method sets up configuration, before calling livesync and expects that devices are already discovered.
|
|
543
|
+
* @param {Mobile.IDevice[]} devices List of discovered devices
|
|
544
|
+
* @param {string} platform The platform for which the livesync will be ran
|
|
545
|
+
* @param {ILiveSyncCommandHelperAdditionalOptions} additionalOptions @optional Additional options to control LiveSync.
|
|
546
|
+
* @returns {Promise<void>}
|
|
547
|
+
*/
|
|
548
|
+
executeLiveSyncOperation(
|
|
549
|
+
devices: Mobile.IDevice[],
|
|
550
|
+
platform: string,
|
|
551
|
+
additionalOptions?: ILiveSyncCommandHelperAdditionalOptions
|
|
552
|
+
): Promise<void>;
|
|
553
|
+
getPlatformsForOperation(platform: string): string[];
|
|
554
|
+
|
|
555
|
+
/**
|
|
556
|
+
* Validates the given platform's data - bundle identifier, etc.
|
|
557
|
+
* @param {string} platform The platform to be validated.
|
|
558
|
+
* @return {Promise<void>}
|
|
559
|
+
*/
|
|
560
|
+
validatePlatform(
|
|
561
|
+
platform: string
|
|
562
|
+
): Promise<IDictionary<IValidatePlatformOutput>>;
|
|
563
|
+
|
|
564
|
+
/**
|
|
565
|
+
* Executes livesync operation. Meant to be called from within a command.
|
|
566
|
+
* @param {string} platform @optional platform for whith to run the livesync operation
|
|
567
|
+
* @param {ILiveSyncCommandHelperAdditionalOptions} additionalOptions @optional Additional options to control LiveSync.
|
|
568
|
+
* @returns {Promise<void>}
|
|
569
|
+
*/
|
|
570
|
+
executeCommandLiveSync(
|
|
571
|
+
platform?: string,
|
|
572
|
+
additionalOptions?: ILiveSyncCommandHelperAdditionalOptions
|
|
573
|
+
): Promise<void>;
|
|
574
|
+
createDeviceDescriptors(
|
|
575
|
+
devices: Mobile.IDevice[],
|
|
576
|
+
platform: string,
|
|
577
|
+
additionalOptions?: ILiveSyncCommandHelperAdditionalOptions
|
|
578
|
+
): Promise<ILiveSyncDeviceDescriptor[]>;
|
|
579
|
+
getDeviceInstances(platform?: string): Promise<Mobile.IDevice[]>;
|
|
580
|
+
getLiveSyncData(projectDir: string): ILiveSyncInfo;
|
|
581
|
+
|
|
582
|
+
stop(): Promise<void>;
|
|
583
|
+
}
|
|
584
|
+
|
|
585
|
+
interface ILiveSyncServiceResolver {
|
|
586
|
+
resolveLiveSyncService(platform: string): IPlatformLiveSyncService;
|
|
587
|
+
}
|
|
588
|
+
|
|
589
|
+
interface ILiveSyncProcessDataService {
|
|
590
|
+
getPersistedData(projectDir: string): ILiveSyncProcessData;
|
|
591
|
+
getDeviceDescriptors(projectDir: string): ILiveSyncDeviceDescriptor[];
|
|
592
|
+
getAllPersistedData(): IDictionary<ILiveSyncProcessData>;
|
|
593
|
+
persistData(
|
|
594
|
+
projectDir: string,
|
|
595
|
+
deviceDescriptors: ILiveSyncDeviceDescriptor[],
|
|
596
|
+
platforms: string[]
|
|
597
|
+
): void;
|
|
598
|
+
hasDeviceDescriptors(projectDir: string): boolean;
|
|
599
|
+
getPlatforms(projectDir: string): string[];
|
|
600
|
+
}
|
|
601
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import * as lockfile from "proper-lockfile";
|
|
2
|
+
import * as retry from "retry";
|
|
3
|
+
|
|
4
|
+
declare global {
|
|
5
|
+
interface ILockOptions extends lockfile.LockOptions {
|
|
6
|
+
// workaround bug in the d.ts (`retries` should accept both number and retry obj)
|
|
7
|
+
retriesObj?: retry.TimeoutsOptions;
|
|
8
|
+
// backwards compatibility
|
|
9
|
+
retryWait?: number;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Describes methods that can be used to use file locking.
|
|
14
|
+
*/
|
|
15
|
+
interface ILockService {
|
|
16
|
+
/**
|
|
17
|
+
* @param action The code to be locked.
|
|
18
|
+
* @param {string} lockFilePath Path to lock file that has to be created. Defaults to `<profile dir>/lockfile.lock`
|
|
19
|
+
* @param {ILockOptions} lockOpts Options used for creating the lock file.
|
|
20
|
+
* @returns {Promise<T>}
|
|
21
|
+
*/
|
|
22
|
+
executeActionWithLock<T>(
|
|
23
|
+
action: () => Promise<T>,
|
|
24
|
+
lockFilePath?: string,
|
|
25
|
+
lockOpts?: ILockOptions
|
|
26
|
+
): Promise<T>;
|
|
27
|
+
// TODO: expose as decorator
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* Waits until the `unlock` method is called for the specified file
|
|
31
|
+
* @param {string} lockFilePath Path to lock file that has to be created. Defaults to `<profile dir>/lockfile.lock`
|
|
32
|
+
* @param {ILockOptions} lockOpts Options used for creating the lock file.
|
|
33
|
+
* @returns {Promise<() => void>} Returns a `release` function that should be called when you want to release the lock.
|
|
34
|
+
*/
|
|
35
|
+
lock(lockFilePath?: string, lockOpts?: ILockOptions): Promise<() => void>;
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* Resolves the specified file lock. Whenever possible you should use the `release` function instead.
|
|
39
|
+
* @param {string} lockFilePath Path to lock file that has to be unlocked. Defaults to `<profile dir>/lockfile.lock`
|
|
40
|
+
*/
|
|
41
|
+
unlock(lockFilePath?: string): Promise<void>;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
interface ILogParserService extends NodeJS.EventEmitter {
|
|
2
|
+
/**
|
|
3
|
+
* Starts looking for debugger port. Attaches on device logs and processes them. In case when port is found, DEBUGGER_PORT_FOUND event is emitted.
|
|
4
|
+
* @param {Mobile.IDevice} device - Describes the device which logs will be processed.
|
|
5
|
+
*/
|
|
6
|
+
addParseRule(rule: ILogParseRule): void;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
interface ILogParseRule {
|
|
10
|
+
regex: RegExp;
|
|
11
|
+
handler: Function;
|
|
12
|
+
name: string;
|
|
13
|
+
platform?: string;
|
|
14
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
interface IMarkingModeService {
|
|
2
|
+
handleMarkingModeFullDeprecation(
|
|
3
|
+
options: IMarkingModeFullDeprecationOptions
|
|
4
|
+
): Promise<void>;
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
interface IMarkingModeFullDeprecationOptions {
|
|
8
|
+
projectDir: string;
|
|
9
|
+
skipWarnings?: boolean;
|
|
10
|
+
forceSwitch?: boolean;
|
|
11
|
+
}
|