nativescript 9.1.0-alpha.16 → 9.1.0-alpha.17
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/CHANGELOG.md +2571 -0
- package/bin/tns +65 -1
- package/config/config.json +2 -1
- package/config/test-deps-versions-generated.json +1 -1
- package/contracts/package.json +4 -0
- package/docs/man_pages/project/testing/build-android.md +1 -1
- package/lib/android-tools-info.d.ts +19 -0
- package/lib/base-package-manager.d.ts +28 -0
- package/lib/bootstrap.js +2 -1
- package/lib/bun-package-manager.d.ts +16 -0
- package/lib/color.d.ts +39 -0
- package/lib/commands/add-platform.d.ts +14 -0
- package/lib/commands/apple-login.d.ts +14 -0
- package/lib/commands/appstore-list.d.ts +21 -0
- package/lib/commands/appstore-upload.d.ts +25 -0
- package/lib/commands/build.d.ts +58 -0
- package/lib/commands/clean.d.ts +21 -0
- package/lib/commands/command-base.d.ts +16 -0
- package/lib/commands/config.d.ts +30 -0
- package/lib/commands/create-project.d.ts +42 -0
- package/lib/commands/debug.d.ts +53 -0
- package/lib/commands/deploy.d.ts +32 -0
- package/lib/commands/embedding/embed.d.ts +27 -0
- package/lib/commands/extensibility/install-extension.d.ts +10 -0
- package/lib/commands/extensibility/list-extensions.d.ts +9 -0
- package/lib/commands/extensibility/uninstall-extension.d.ts +10 -0
- package/lib/commands/fonts.d.ts +12 -0
- package/lib/commands/generate-assets.d.ts +29 -0
- package/lib/commands/generate-help.d.ts +8 -0
- package/lib/commands/generate.d.ts +12 -0
- package/lib/commands/hooks/common.d.ts +22 -0
- package/lib/commands/hooks/hooks-lock.d.ts +24 -0
- package/lib/commands/hooks/hooks.d.ts +17 -0
- package/lib/commands/info.d.ts +8 -0
- package/lib/commands/install.d.ts +25 -0
- package/lib/commands/list-platforms.d.ts +11 -0
- package/lib/commands/migrate.d.ts +13 -0
- package/lib/commands/native-add.d.ts +49 -0
- package/lib/commands/platform-clean.d.ts +17 -0
- package/lib/commands/plugin/add-plugin.d.ts +13 -0
- package/lib/commands/plugin/build-plugin.d.ts +18 -0
- package/lib/commands/plugin/create-plugin.d.ts +30 -0
- package/lib/commands/plugin/list-plugins.d.ts +12 -0
- package/lib/commands/plugin/remove-plugin.d.ts +14 -0
- package/lib/commands/plugin/update-plugin.d.ts +13 -0
- package/lib/commands/post-install.d.ts +16 -0
- package/lib/commands/prepare.d.ts +40 -0
- package/lib/commands/prepare.js +0 -5
- package/lib/commands/preview.d.ts +18 -0
- package/lib/commands/preview.js +1 -0
- package/lib/commands/remove-platform.d.ts +14 -0
- package/lib/commands/resources/resources-update.d.ts +13 -0
- package/lib/commands/run.d.ts +61 -0
- package/lib/commands/setup.d.ts +8 -0
- package/lib/commands/start.d.ts +9 -0
- package/lib/commands/typings.d.ts +22 -0
- package/lib/commands/update-platform.d.ts +17 -0
- package/lib/commands/update.d.ts +21 -0
- package/lib/commands/widget.d.ts +24 -0
- package/lib/commands/widget.js +0 -1
- package/lib/common/child-process.d.ts +17 -0
- package/lib/common/codeGeneration/code-entity.d.ts +22 -0
- package/lib/common/codeGeneration/code-printer.d.ts +10 -0
- package/lib/common/command-params.d.ts +14 -0
- package/lib/common/commands/analytics.d.ts +30 -0
- package/lib/common/commands/autocompletion.d.ts +35 -0
- package/lib/common/commands/device/device-log-stream.d.ts +16 -0
- package/lib/common/commands/device/get-file.d.ts +14 -0
- package/lib/common/commands/device/list-applications.d.ts +10 -0
- package/lib/common/commands/device/list-devices.d.ts +16 -0
- package/lib/common/commands/device/list-files.d.ts +14 -0
- package/lib/common/commands/device/put-file.d.ts +14 -0
- package/lib/common/commands/device/run-application.d.ts +13 -0
- package/lib/common/commands/device/stop-application.d.ts +10 -0
- package/lib/common/commands/device/uninstall-application.d.ts +10 -0
- package/lib/common/commands/doctor.d.ts +23 -0
- package/lib/common/commands/generate-messages.d.ts +13 -0
- package/lib/common/commands/help.d.ts +14 -0
- package/lib/common/commands/package-manager-get.d.ts +10 -0
- package/lib/common/commands/package-manager-set.d.ts +11 -0
- package/lib/common/commands/post-install.d.ts +9 -0
- package/lib/common/commands/preuninstall.d.ts +16 -0
- package/lib/common/commands/proxy/proxy-base.d.ts +13 -0
- package/lib/common/commands/proxy/proxy-clear.d.ts +9 -0
- package/lib/common/commands/proxy/proxy-get.d.ts +9 -0
- package/lib/common/commands/proxy/proxy-set.d.ts +23 -0
- package/lib/common/constants.d.ts +117 -0
- package/lib/common/contracts/command-registry.d.ts +35 -0
- package/lib/common/contracts/command-registry.js +16 -0
- package/lib/common/contracts/index.d.ts +5 -0
- package/lib/common/contracts/index.js +11 -0
- package/lib/common/contracts/key-command-registry.d.ts +7 -0
- package/lib/common/contracts/key-command-registry.js +16 -0
- package/lib/common/contracts/module-registry.d.ts +4 -0
- package/lib/common/contracts/module-registry.js +16 -0
- package/lib/common/contracts/public-api-builder.d.ts +5 -0
- package/lib/common/contracts/public-api-builder.js +16 -0
- package/lib/common/declarations.d.ts +12 -1
- package/lib/common/decorators.d.ts +13 -0
- package/lib/common/define-command.d.ts +53 -0
- package/lib/common/define-command.js +147 -0
- package/lib/common/define-hook.d.ts +29 -0
- package/lib/common/define-hook.js +101 -0
- package/lib/common/definitions/commands.d.ts +7 -0
- package/lib/common/definitions/extensibility.d.ts +7 -0
- package/lib/common/definitions/key-commands.d.ts +25 -0
- package/lib/common/definitions/yok.d.ts +43 -35
- package/lib/common/deprecation.d.ts +12 -0
- package/lib/common/deprecation.js +56 -0
- package/lib/common/di/contract.d.ts +7 -0
- package/lib/common/di/contract.js +34 -0
- package/lib/common/di/forward-ref.d.ts +2 -0
- package/lib/common/di/forward-ref.js +15 -0
- package/lib/common/di/index.d.ts +8 -0
- package/lib/common/di/index.js +19 -0
- package/lib/common/di/inject.d.ts +8 -0
- package/lib/common/di/inject.js +41 -0
- package/lib/common/di/injector.d.ts +38 -0
- package/lib/common/di/injector.js +268 -0
- package/lib/common/di/providers.d.ts +30 -0
- package/lib/common/di/providers.js +7 -0
- package/lib/common/dispatchers.d.ts +21 -0
- package/lib/common/enums.d.ts +34 -0
- package/lib/common/errors.d.ts +15 -0
- package/lib/common/file-system.d.ts +77 -0
- package/lib/common/header.d.ts +1 -0
- package/lib/common/helpers.d.ts +62 -0
- package/lib/common/helpers.js +3 -3
- package/lib/common/host-info.d.ts +24 -0
- package/lib/common/http-client.d.ts +14 -0
- package/lib/common/http-client.js +11 -0
- package/lib/common/logger/appenders/cli-appender.d.ts +2 -0
- package/lib/common/logger/appenders/emit-appender.d.ts +5 -0
- package/lib/common/logger/layouts/cli-layout.d.ts +2 -0
- package/lib/common/logger/logger.d.ts +24 -0
- package/lib/common/messages/messages.d.ts +7 -0
- package/lib/common/mobile/android/android-application-manager.d.ts +31 -0
- package/lib/common/mobile/android/android-debug-bridge-result-handler.d.ts +9 -0
- package/lib/common/mobile/android/android-debug-bridge.d.ts +24 -0
- package/lib/common/mobile/android/android-device-file-system.d.ts +26 -0
- package/lib/common/mobile/android/android-device-hash-service.d.ts +23 -0
- package/lib/common/mobile/android/android-device.d.ts +24 -0
- package/lib/common/mobile/android/android-emulator-services.d.ts +23 -0
- package/lib/common/mobile/android/android-ini-file-parser.d.ts +8 -0
- package/lib/common/mobile/android/android-log-filter.d.ts +11 -0
- package/lib/common/mobile/android/android-virtual-device-service.d.ts +37 -0
- package/lib/common/mobile/android/device-android-debug-bridge.d.ts +18 -0
- package/lib/common/mobile/android/genymotion/genymotion-service.d.ts +26 -0
- package/lib/common/mobile/android/genymotion/virtualbox-service.d.ts +13 -0
- package/lib/common/mobile/android/logcat-helper.d.ts +17 -0
- package/lib/common/mobile/application-manager-base.d.ts +27 -0
- package/lib/common/mobile/device-emitter.d.ts +8 -0
- package/lib/common/mobile/device-log-emitter.d.ts +9 -0
- package/lib/common/mobile/device-log-provider-base.d.ts +21 -0
- package/lib/common/mobile/device-log-provider.d.ts +21 -0
- package/lib/common/mobile/device-platforms-constants.d.ts +8 -0
- package/lib/common/mobile/emulator-helper.d.ts +32 -0
- package/lib/common/mobile/ios/device/ios-application-manager.d.ts +27 -0
- package/lib/common/mobile/ios/device/ios-device-file-system.d.ts +19 -0
- package/lib/common/mobile/ios/device/ios-device-operations.d.ts +29 -0
- package/lib/common/mobile/ios/device/ios-device.d.ts +32 -0
- package/lib/common/mobile/ios/ios-device-base.d.ts +24 -0
- package/lib/common/mobile/ios/ios-log-filter.d.ts +6 -0
- package/lib/common/mobile/ios/simulator/ios-emulator-services.d.ts +1 -0
- package/lib/common/mobile/ios/simulator/ios-sim-resolver.d.ts +7 -0
- package/lib/common/mobile/ios/simulator/ios-simulator-application-manager.d.ts +27 -0
- package/lib/common/mobile/ios/simulator/ios-simulator-device.d.ts +27 -0
- package/lib/common/mobile/ios/simulator/ios-simulator-file-system.d.ts +16 -0
- package/lib/common/mobile/ios/simulator/ios-simulator-log-provider.d.ts +15 -0
- package/lib/common/mobile/local-to-device-path-data-factory.d.ts +3 -0
- package/lib/common/mobile/log-filter.d.ts +13 -0
- package/lib/common/mobile/logging-levels.d.ts +4 -0
- package/lib/common/mobile/mobile-core/android-device-discovery.d.ts +16 -0
- package/lib/common/mobile/mobile-core/android-emulator-discovery.d.ts +11 -0
- package/lib/common/mobile/mobile-core/android-process-service.d.ts +33 -0
- package/lib/common/mobile/mobile-core/device-discovery.d.ts +12 -0
- package/lib/common/mobile/mobile-core/devices-service.d.ts +99 -0
- package/lib/common/mobile/mobile-core/ios-device-discovery.d.ts +12 -0
- package/lib/common/mobile/mobile-core/ios-simulator-discovery.d.ts +20 -0
- package/lib/common/mobile/mobile-helper.d.ts +22 -0
- package/lib/common/mobile/wp8/wp8-emulator-services.d.ts +1 -0
- package/lib/common/opener.d.ts +4 -0
- package/lib/common/os-info.d.ts +7 -0
- package/lib/common/plist-parser.d.ts +5 -0
- package/lib/common/project-helper.d.ts +15 -0
- package/lib/common/prompter.d.ts +23 -0
- package/lib/common/queue.d.ts +8 -0
- package/lib/common/resource-loader.d.ts +10 -0
- package/lib/common/services/analytics/google-analytics-custom-dimensions.d.ts +9 -0
- package/lib/common/services/auto-completion-service.d.ts +36 -0
- package/lib/common/services/cancellation.d.ts +1 -0
- package/lib/common/services/command-definition-adapter.d.ts +6 -0
- package/lib/common/services/command-definition-adapter.js +141 -0
- package/lib/common/services/commands-service.d.ts +30 -0
- package/lib/common/services/commands-service.js +2 -1
- package/lib/common/services/help-service.d.ts +46 -0
- package/lib/common/services/hooks-service.d.ts +40 -0
- package/lib/common/services/hooks-service.js +110 -51
- package/lib/common/services/ios-notification-service.d.ts +7 -0
- package/lib/common/services/json-file-settings-service.d.ts +24 -0
- package/lib/common/services/lock-service.d.ts +18 -0
- package/lib/common/services/message-contract-generator.d.ts +8 -0
- package/lib/common/services/messages-service.d.ts +15 -0
- package/lib/common/services/micro-templating-service.d.ts +12 -0
- package/lib/common/services/net-service.d.ts +13 -0
- package/lib/common/services/project-files-manager.d.ts +14 -0
- package/lib/common/services/project-files-provider-base.d.ts +12 -0
- package/lib/common/services/proxy-service.d.ts +12 -0
- package/lib/common/services/qr.d.ts +7 -0
- package/lib/common/services/settings-service.d.ts +10 -0
- package/lib/common/services/xcode-select-service.d.ts +12 -0
- package/lib/common/utils.d.ts +10 -0
- package/lib/common/validators/project-name-validator.d.ts +18 -0
- package/lib/common/validators/validation-result.d.ts +7 -0
- package/lib/common/verify-node-version.d.ts +3 -0
- package/lib/common/yok.d.ts +60 -0
- package/lib/common/yok.js +161 -133
- package/lib/config.d.ts +45 -0
- package/lib/config.js +2 -1
- package/lib/constants-provider.d.ts +4 -0
- package/lib/constants.d.ts +331 -0
- package/lib/constants.js +7 -2
- package/lib/contracts/doctor-service.d.ts +20 -0
- package/lib/contracts/doctor-service.js +16 -0
- package/lib/contracts/index.d.ts +14 -0
- package/lib/contracts/index.js +32 -0
- package/lib/contracts/project-name-service.d.ts +5 -0
- package/lib/contracts/project-name-service.js +16 -0
- package/lib/controllers/build-controller.d.ts +23 -0
- package/lib/controllers/debug-controller.d.ts +31 -0
- package/lib/controllers/deploy-controller.d.ts +7 -0
- package/lib/controllers/migrate-controller.d.ts +67 -0
- package/lib/controllers/platform-controller.d.ts +20 -0
- package/lib/controllers/prepare-controller.d.ts +45 -0
- package/lib/controllers/run-controller.d.ts +57 -0
- package/lib/controllers/update-controller-base.d.ts +27 -0
- package/lib/controllers/update-controller.d.ts +36 -0
- package/lib/data/build-data.d.ts +33 -0
- package/lib/data/controller-data-base.d.ts +8 -0
- package/lib/data/debug-data.d.ts +2 -0
- package/lib/data/platform-data.d.ts +7 -0
- package/lib/data/prepare-data.d.ts +22 -0
- package/lib/data/run-data.d.ts +6 -0
- package/lib/declarations.d.ts +2 -1
- package/lib/definitions/ios.d.ts +36 -1
- package/lib/definitions/system-warnings.d.ts +4 -0
- package/lib/detached-processes/cleanup-js-subprocess.d.ts +2 -0
- package/lib/detached-processes/cleanup-process.d.ts +1 -0
- package/lib/detached-processes/detached-process-enums.d.ts +18 -0
- package/lib/detached-processes/file-log-service.d.ts +7 -0
- package/lib/device-path-provider.d.ts +9 -0
- package/lib/device-sockets/ios/app-debug-socket-proxy-factory.d.ts +22 -0
- package/lib/device-sockets/ios/notification.d.ts +13 -0
- package/lib/device-sockets/ios/socket-request-executor.d.ts +11 -0
- package/lib/helpers/android-bundle-validator-helper.d.ts +18 -0
- package/lib/helpers/deploy-command-helper.d.ts +16 -0
- package/lib/helpers/key-command-helper.d.ts +13 -0
- package/lib/helpers/livesync-command-helper.d.ts +36 -0
- package/lib/helpers/network-connectivity-validator.d.ts +12 -0
- package/lib/helpers/options-track-helper.d.ts +14 -0
- package/lib/helpers/package-path-helper.d.ts +2 -0
- package/lib/helpers/platform-command-helper.d.ts +35 -0
- package/lib/helpers/version-validator-helper.d.ts +8 -0
- package/lib/key-commands/bootstrap.d.ts +1 -0
- package/lib/key-commands/index.d.ts +166 -0
- package/lib/nativescript-cli-lib-bootstrap.d.ts +1 -0
- package/lib/nativescript-cli-lib.d.ts +1 -0
- package/lib/nativescript-cli.d.ts +1 -0
- package/lib/node/pbxproj-dom-xcode.d.ts +4 -0
- package/lib/node/xcode.d.ts +2 -0
- package/lib/node-package-manager.d.ts +16 -0
- package/lib/options.d.ts +33 -0
- package/lib/options.js +70 -43
- package/lib/package-installation-manager.d.ts +30 -0
- package/lib/package-manager.d.ts +32 -0
- package/lib/platform-command-param.d.ts +10 -0
- package/lib/pnpm-package-manager.d.ts +16 -0
- package/lib/project-data.d.ts +58 -0
- package/lib/providers/project-files-provider.d.ts +12 -0
- package/lib/resolvers/livesync-service-resolver.d.ts +9 -0
- package/lib/services/analytics/analytics-broker-process.d.ts +1 -0
- package/lib/services/analytics/analytics-broker.d.ts +11 -0
- package/lib/services/analytics/analytics-service.d.ts +46 -0
- package/lib/services/analytics/google-analytics-provider.d.ts +22 -0
- package/lib/services/analytics/google-analytics-provider.js +84 -83
- package/lib/services/analytics-settings-service.d.ts +1 -0
- package/lib/services/android/android-bundle-tool-service.d.ts +27 -0
- package/lib/services/android/android-bundle-tool-service.js +102 -3
- package/lib/services/android/gradle-build-args-service.d.ts +17 -0
- package/lib/services/android/gradle-build-service.d.ts +12 -0
- package/lib/services/android/gradle-command-service.d.ts +11 -0
- package/lib/services/android-device-debug-service.d.ts +30 -0
- package/lib/services/android-plugin-build-service.d.ts +55 -0
- package/lib/services/android-project-service.d.ts +75 -0
- package/lib/services/android-resources-migration-service.d.ts +17 -0
- package/lib/services/apple-portal/apple-portal-application-service.d.ts +12 -0
- package/lib/services/apple-portal/apple-portal-cookie-service.d.ts +10 -0
- package/lib/services/apple-portal/apple-portal-session-service.d.ts +19 -0
- package/lib/services/apple-portal/srp/srp-wrapper.d.ts +29 -0
- package/lib/services/assets-generation/assets-generation-service.d.ts +24 -0
- package/lib/services/build-artifacts-service.d.ts +16 -0
- package/lib/services/build-data-service.d.ts +7 -0
- package/lib/services/build-info-file-service.d.ts +16 -0
- package/lib/services/bundler/bundler-compiler-service.d.ts +50 -0
- package/lib/services/bundler/bundler-compiler-service.js +2 -1
- package/lib/services/bundler/bundler.d.ts +75 -0
- package/lib/services/cleanup-service.d.ts +29 -0
- package/lib/services/cocoapods-platform-manager.d.ts +17 -0
- package/lib/services/cocoapods-service.d.ts +47 -0
- package/lib/services/debug-data-service.d.ts +7 -0
- package/lib/services/debug-service-base.d.ts +12 -0
- package/lib/services/device/device-install-app-service.d.ts +19 -0
- package/lib/services/doctor-service.d.ts +51 -0
- package/lib/services/doctor-service.js +14 -11
- package/lib/services/extensibility-service.d.ts +36 -0
- package/lib/services/extensibility-service.js +126 -5
- package/lib/services/files-hash-service.d.ts +17 -0
- package/lib/services/hmr-status-service.d.ts +19 -0
- package/lib/services/info-service.d.ts +6 -0
- package/lib/services/initialize-service.d.ts +8 -0
- package/lib/services/ios/export-options-plist-service.d.ts +13 -0
- package/lib/services/ios/ios-signing-service.d.ts +33 -0
- package/lib/services/ios/spm-pbxproj-service.d.ts +16 -0
- package/lib/services/ios/spm-pbxproj-service.js +234 -0
- package/lib/services/ios/spm-service.d.ts +35 -0
- package/lib/services/ios/spm-service.js +10 -19
- package/lib/services/ios/xcodebuild-args-service.d.ts +20 -0
- package/lib/services/ios/xcodebuild-command-service.d.ts +17 -0
- package/lib/services/ios/xcodebuild-service.d.ts +13 -0
- package/lib/services/ios-debugger-port-service.d.ts +20 -0
- package/lib/services/ios-device-debug-service.d.ts +29 -0
- package/lib/services/ios-entitlements-service.d.ts +19 -0
- package/lib/services/ios-entitlements-service.js +3 -3
- package/lib/services/ios-extensions-service.d.ts +12 -0
- package/lib/services/ios-log-filter.d.ts +11 -0
- package/lib/services/ios-native-target-service.d.ts +14 -0
- package/lib/services/ios-project-service.d.ts +108 -0
- package/lib/services/ios-project-service.js +2 -2
- package/lib/services/ios-provision-service.d.ts +18 -0
- package/lib/services/ios-watch-app-service.d.ts +39 -0
- package/lib/services/ios-watch-app-service.js +8 -15
- package/lib/services/ip-service.d.ts +10 -0
- package/lib/services/itmstransporter-service.d.ts +26 -0
- package/lib/services/karma-execution.d.ts +1 -0
- package/lib/services/livesync/android-device-livesync-service-base.d.ts +19 -0
- package/lib/services/livesync/android-device-livesync-service.d.ts +24 -0
- package/lib/services/livesync/android-device-livesync-sockets-service.d.ts +36 -0
- package/lib/services/livesync/android-livesync-service.d.ts +16 -0
- package/lib/services/livesync/android-livesync-tool.d.ts +58 -0
- package/lib/services/livesync/device-livesync-service-base.d.ts +13 -0
- package/lib/services/livesync/ios-device-livesync-service.d.ts +28 -0
- package/lib/services/livesync/ios-livesync-service.d.ts +17 -0
- package/lib/services/livesync/livesync-socket.d.ts +5 -0
- package/lib/services/livesync/platform-livesync-service-base.d.ts +25 -0
- package/lib/services/livesync-process-data-service.d.ts +10 -0
- package/lib/services/log-parser-service.d.ts +11 -0
- package/lib/services/log-source-map-service.d.ts +28 -0
- package/lib/services/marking-mode-service.d.ts +12 -0
- package/lib/services/metadata-filtering-service.d.ts +19 -0
- package/lib/services/npm-config-service.d.ts +7 -0
- package/lib/services/pacote-service.d.ts +16 -0
- package/lib/services/performance-service.d.ts +19 -0
- package/lib/services/platform/add-platform-service.d.ts +21 -0
- package/lib/services/platform/platform-validation-service.d.ts +17 -0
- package/lib/services/platform/prepare-native-platform-service.d.ts +15 -0
- package/lib/services/platform-environment-requirements.d.ts +15 -0
- package/lib/services/platform-project-service-base.d.ts +14 -0
- package/lib/services/platforms-data-service.d.ts +9 -0
- package/lib/services/plugins-service.d.ts +60 -0
- package/lib/services/prepare-data-service.d.ts +7 -0
- package/lib/services/project-backup-service.d.ts +12 -0
- package/lib/services/project-changes-service.d.ts +30 -0
- package/lib/services/project-cleanup-service.d.ts +13 -0
- package/lib/services/project-config-service.d.ts +33 -0
- package/lib/services/project-config-service.js +33 -11
- package/lib/services/project-data-service.d.ts +48 -0
- package/lib/services/project-name-service.d.ts +16 -0
- package/lib/services/project-name-service.js +4 -4
- package/lib/services/project-service.d.ts +34 -0
- package/lib/services/project-templates-service.d.ts +18 -0
- package/lib/services/qr-code-terminal-service.d.ts +5 -0
- package/lib/services/require-service.d.ts +3 -0
- package/lib/services/start-service.d.ts +30 -0
- package/lib/services/temp-service.d.ts +14 -0
- package/lib/services/terminal-spinner-service.d.ts +5 -0
- package/lib/services/test-execution-service.d.ts +26 -0
- package/lib/services/test-initialization-service.d.ts +10 -0
- package/lib/services/timeline-profiler-service.d.ts +18 -0
- package/lib/services/user-settings-service.d.ts +14 -0
- package/lib/services/versions-service.d.ts +5 -0
- package/lib/services/watch-ignore-list-service.d.ts +7 -0
- package/lib/services/xcconfig-service.d.ts +15 -0
- package/lib/services/xcproj-service.d.ts +1 -0
- package/lib/shared-event-bus.d.ts +1 -0
- package/lib/sys-info.d.ts +18 -0
- package/lib/tools/config-manipulation/config-transformer.d.ts +28 -0
- package/lib/tools/config-manipulation/config-transformer.js +15 -7
- package/lib/tools/node-modules/node-modules-builder.d.ts +9 -0
- package/lib/tools/node-modules/node-modules-dependencies-builder.d.ts +10 -0
- package/lib/tools/plist-merge/plist-session.d.ts +30 -0
- package/lib/tools/plist-merge/plist-session.js +92 -0
- package/lib/yarn-package-manager.d.ts +16 -0
- package/lib/yarn2-package-manager.d.ts +18 -0
- package/package.json +11 -107
- package/postinstall.js +7 -2
- package/node_modules/debug/LICENSE +0 -20
- package/node_modules/debug/README.md +0 -481
- package/node_modules/debug/package.json +0 -64
- package/node_modules/debug/src/browser.js +0 -272
- package/node_modules/debug/src/common.js +0 -292
- package/node_modules/debug/src/index.js +0 -10
- package/node_modules/debug/src/node.js +0 -263
- package/node_modules/ms/index.js +0 -162
- package/node_modules/ms/license.md +0 -21
- package/node_modules/ms/package.json +0 -38
- package/node_modules/ms/readme.md +0 -59
- package/node_modules/universal-analytics/.travis.yml +0 -11
- package/node_modules/universal-analytics/AcceptableParams.md +0 -757
- package/node_modules/universal-analytics/HISTORY.md +0 -170
- package/node_modules/universal-analytics/Makefile +0 -5
- package/node_modules/universal-analytics/README.md +0 -651
- package/node_modules/universal-analytics/index.js +0 -2
- package/node_modules/universal-analytics/lib/config.js +0 -171
- package/node_modules/universal-analytics/lib/index.js +0 -563
- package/node_modules/universal-analytics/lib/request.js +0 -73
- package/node_modules/universal-analytics/lib/utils.js +0 -29
- package/node_modules/universal-analytics/package.json +0 -33
- package/node_modules/universal-analytics/test/_enqueue.js +0 -144
- package/node_modules/universal-analytics/test/event.js +0 -346
- package/node_modules/universal-analytics/test/exception.js +0 -233
- package/node_modules/universal-analytics/test/index.js +0 -141
- package/node_modules/universal-analytics/test/item.js +0 -550
- package/node_modules/universal-analytics/test/middleware.js +0 -119
- package/node_modules/universal-analytics/test/mocha.opts +0 -3
- package/node_modules/universal-analytics/test/pageview.js +0 -286
- package/node_modules/universal-analytics/test/send.js +0 -232
- package/node_modules/universal-analytics/test/set.js +0 -68
- package/node_modules/universal-analytics/test/timing.js +0 -363
- package/node_modules/universal-analytics/test/transaction.js +0 -371
- package/node_modules/uuid/LICENSE.md +0 -9
- package/node_modules/uuid/README.md +0 -510
- package/node_modules/uuid/dist/cjs/index.d.ts +0 -15
- package/node_modules/uuid/dist/cjs/index.js +0 -31
- package/node_modules/uuid/dist/cjs/max.d.ts +0 -2
- package/node_modules/uuid/dist/cjs/max.js +0 -3
- package/node_modules/uuid/dist/cjs/md5.d.ts +0 -4
- package/node_modules/uuid/dist/cjs/md5.js +0 -13
- package/node_modules/uuid/dist/cjs/native.d.ts +0 -6
- package/node_modules/uuid/dist/cjs/native.js +0 -4
- package/node_modules/uuid/dist/cjs/nil.d.ts +0 -2
- package/node_modules/uuid/dist/cjs/nil.js +0 -3
- package/node_modules/uuid/dist/cjs/package.json +0 -1
- package/node_modules/uuid/dist/cjs/parse.d.ts +0 -2
- package/node_modules/uuid/dist/cjs/parse.js +0 -11
- package/node_modules/uuid/dist/cjs/regex.d.ts +0 -2
- package/node_modules/uuid/dist/cjs/regex.js +0 -3
- package/node_modules/uuid/dist/cjs/rng.d.ts +0 -1
- package/node_modules/uuid/dist/cjs/rng.js +0 -13
- package/node_modules/uuid/dist/cjs/sha1.d.ts +0 -4
- package/node_modules/uuid/dist/cjs/sha1.js +0 -13
- package/node_modules/uuid/dist/cjs/stringify.d.ts +0 -3
- package/node_modules/uuid/dist/cjs/stringify.js +0 -39
- package/node_modules/uuid/dist/cjs/types.d.ts +0 -21
- package/node_modules/uuid/dist/cjs/types.js +0 -2
- package/node_modules/uuid/dist/cjs/uuid-bin.js +0 -72
- package/node_modules/uuid/dist/cjs/v1.d.ts +0 -11
- package/node_modules/uuid/dist/cjs/v1.js +0 -87
- package/node_modules/uuid/dist/cjs/v1ToV6.d.ts +0 -2
- package/node_modules/uuid/dist/cjs/v1ToV6.js +0 -13
- package/node_modules/uuid/dist/cjs/v3.d.ts +0 -9
- package/node_modules/uuid/dist/cjs/v3.js +0 -14
- package/node_modules/uuid/dist/cjs/v35.d.ts +0 -7
- package/node_modules/uuid/dist/cjs/v35.js +0 -41
- package/node_modules/uuid/dist/cjs/v4.d.ts +0 -4
- package/node_modules/uuid/dist/cjs/v4.js +0 -29
- package/node_modules/uuid/dist/cjs/v5.d.ts +0 -9
- package/node_modules/uuid/dist/cjs/v5.js +0 -14
- package/node_modules/uuid/dist/cjs/v6.d.ts +0 -4
- package/node_modules/uuid/dist/cjs/v6.js +0 -19
- package/node_modules/uuid/dist/cjs/v6ToV1.d.ts +0 -2
- package/node_modules/uuid/dist/cjs/v6ToV1.js +0 -13
- package/node_modules/uuid/dist/cjs/v7.d.ts +0 -9
- package/node_modules/uuid/dist/cjs/v7.js +0 -69
- package/node_modules/uuid/dist/cjs/validate.d.ts +0 -2
- package/node_modules/uuid/dist/cjs/validate.js +0 -7
- package/node_modules/uuid/dist/cjs/version.d.ts +0 -2
- package/node_modules/uuid/dist/cjs/version.js +0 -10
- package/node_modules/uuid/dist/cjs-browser/index.d.ts +0 -15
- package/node_modules/uuid/dist/cjs-browser/index.js +0 -31
- package/node_modules/uuid/dist/cjs-browser/max.d.ts +0 -2
- package/node_modules/uuid/dist/cjs-browser/max.js +0 -3
- package/node_modules/uuid/dist/cjs-browser/md5.d.ts +0 -2
- package/node_modules/uuid/dist/cjs-browser/md5.js +0 -137
- package/node_modules/uuid/dist/cjs-browser/native.d.ts +0 -4
- package/node_modules/uuid/dist/cjs-browser/native.js +0 -4
- package/node_modules/uuid/dist/cjs-browser/nil.d.ts +0 -2
- package/node_modules/uuid/dist/cjs-browser/nil.js +0 -3
- package/node_modules/uuid/dist/cjs-browser/package.json +0 -1
- package/node_modules/uuid/dist/cjs-browser/parse.d.ts +0 -2
- package/node_modules/uuid/dist/cjs-browser/parse.js +0 -11
- package/node_modules/uuid/dist/cjs-browser/regex.d.ts +0 -2
- package/node_modules/uuid/dist/cjs-browser/regex.js +0 -3
- package/node_modules/uuid/dist/cjs-browser/rng.d.ts +0 -1
- package/node_modules/uuid/dist/cjs-browser/rng.js +0 -14
- package/node_modules/uuid/dist/cjs-browser/sha1.d.ts +0 -2
- package/node_modules/uuid/dist/cjs-browser/sha1.js +0 -72
- package/node_modules/uuid/dist/cjs-browser/stringify.d.ts +0 -3
- package/node_modules/uuid/dist/cjs-browser/stringify.js +0 -39
- package/node_modules/uuid/dist/cjs-browser/types.d.ts +0 -21
- package/node_modules/uuid/dist/cjs-browser/types.js +0 -2
- package/node_modules/uuid/dist/cjs-browser/uuid-bin.js +0 -72
- package/node_modules/uuid/dist/cjs-browser/v1.d.ts +0 -11
- package/node_modules/uuid/dist/cjs-browser/v1.js +0 -87
- package/node_modules/uuid/dist/cjs-browser/v1ToV6.d.ts +0 -2
- package/node_modules/uuid/dist/cjs-browser/v1ToV6.js +0 -13
- package/node_modules/uuid/dist/cjs-browser/v3.d.ts +0 -9
- package/node_modules/uuid/dist/cjs-browser/v3.js +0 -14
- package/node_modules/uuid/dist/cjs-browser/v35.d.ts +0 -7
- package/node_modules/uuid/dist/cjs-browser/v35.js +0 -41
- package/node_modules/uuid/dist/cjs-browser/v4.d.ts +0 -4
- package/node_modules/uuid/dist/cjs-browser/v4.js +0 -29
- package/node_modules/uuid/dist/cjs-browser/v5.d.ts +0 -9
- package/node_modules/uuid/dist/cjs-browser/v5.js +0 -14
- package/node_modules/uuid/dist/cjs-browser/v6.d.ts +0 -4
- package/node_modules/uuid/dist/cjs-browser/v6.js +0 -19
- package/node_modules/uuid/dist/cjs-browser/v6ToV1.d.ts +0 -2
- package/node_modules/uuid/dist/cjs-browser/v6ToV1.js +0 -13
- package/node_modules/uuid/dist/cjs-browser/v7.d.ts +0 -9
- package/node_modules/uuid/dist/cjs-browser/v7.js +0 -69
- package/node_modules/uuid/dist/cjs-browser/validate.d.ts +0 -2
- package/node_modules/uuid/dist/cjs-browser/validate.js +0 -7
- package/node_modules/uuid/dist/cjs-browser/version.d.ts +0 -2
- package/node_modules/uuid/dist/cjs-browser/version.js +0 -10
- package/node_modules/uuid/dist/esm/bin/uuid +0 -2
- package/node_modules/uuid/dist/esm/index.d.ts +0 -15
- package/node_modules/uuid/dist/esm/index.js +0 -14
- package/node_modules/uuid/dist/esm/max.d.ts +0 -2
- package/node_modules/uuid/dist/esm/max.js +0 -1
- package/node_modules/uuid/dist/esm/md5.d.ts +0 -4
- package/node_modules/uuid/dist/esm/md5.js +0 -11
- package/node_modules/uuid/dist/esm/native.d.ts +0 -6
- package/node_modules/uuid/dist/esm/native.js +0 -2
- package/node_modules/uuid/dist/esm/nil.d.ts +0 -2
- package/node_modules/uuid/dist/esm/nil.js +0 -1
- package/node_modules/uuid/dist/esm/parse.d.ts +0 -2
- package/node_modules/uuid/dist/esm/parse.js +0 -9
- package/node_modules/uuid/dist/esm/regex.d.ts +0 -2
- package/node_modules/uuid/dist/esm/regex.js +0 -1
- package/node_modules/uuid/dist/esm/rng.d.ts +0 -1
- package/node_modules/uuid/dist/esm/rng.js +0 -10
- package/node_modules/uuid/dist/esm/sha1.d.ts +0 -4
- package/node_modules/uuid/dist/esm/sha1.js +0 -11
- package/node_modules/uuid/dist/esm/stringify.d.ts +0 -3
- package/node_modules/uuid/dist/esm/stringify.js +0 -35
- package/node_modules/uuid/dist/esm/types.d.ts +0 -21
- package/node_modules/uuid/dist/esm/uuid-bin.js +0 -70
- package/node_modules/uuid/dist/esm/v1.d.ts +0 -11
- package/node_modules/uuid/dist/esm/v1.js +0 -83
- package/node_modules/uuid/dist/esm/v1ToV6.d.ts +0 -2
- package/node_modules/uuid/dist/esm/v1ToV6.js +0 -10
- package/node_modules/uuid/dist/esm/v3.d.ts +0 -9
- package/node_modules/uuid/dist/esm/v3.js +0 -9
- package/node_modules/uuid/dist/esm/v35.d.ts +0 -7
- package/node_modules/uuid/dist/esm/v35.js +0 -36
- package/node_modules/uuid/dist/esm/v4.d.ts +0 -4
- package/node_modules/uuid/dist/esm/v4.js +0 -27
- package/node_modules/uuid/dist/esm/v5.d.ts +0 -9
- package/node_modules/uuid/dist/esm/v5.js +0 -9
- package/node_modules/uuid/dist/esm/v6.d.ts +0 -4
- package/node_modules/uuid/dist/esm/v6.js +0 -17
- package/node_modules/uuid/dist/esm/v6ToV1.d.ts +0 -2
- package/node_modules/uuid/dist/esm/v6ToV1.js +0 -10
- package/node_modules/uuid/dist/esm/v7.d.ts +0 -9
- package/node_modules/uuid/dist/esm/v7.js +0 -65
- package/node_modules/uuid/dist/esm/validate.d.ts +0 -2
- package/node_modules/uuid/dist/esm/validate.js +0 -5
- package/node_modules/uuid/dist/esm/version.d.ts +0 -2
- package/node_modules/uuid/dist/esm/version.js +0 -8
- package/node_modules/uuid/dist/esm-browser/index.d.ts +0 -15
- package/node_modules/uuid/dist/esm-browser/index.js +0 -14
- package/node_modules/uuid/dist/esm-browser/max.d.ts +0 -2
- package/node_modules/uuid/dist/esm-browser/max.js +0 -1
- package/node_modules/uuid/dist/esm-browser/md5.d.ts +0 -2
- package/node_modules/uuid/dist/esm-browser/md5.js +0 -135
- package/node_modules/uuid/dist/esm-browser/native.d.ts +0 -4
- package/node_modules/uuid/dist/esm-browser/native.js +0 -2
- package/node_modules/uuid/dist/esm-browser/nil.d.ts +0 -2
- package/node_modules/uuid/dist/esm-browser/nil.js +0 -1
- package/node_modules/uuid/dist/esm-browser/parse.d.ts +0 -2
- package/node_modules/uuid/dist/esm-browser/parse.js +0 -9
- package/node_modules/uuid/dist/esm-browser/regex.d.ts +0 -2
- package/node_modules/uuid/dist/esm-browser/regex.js +0 -1
- package/node_modules/uuid/dist/esm-browser/rng.d.ts +0 -1
- package/node_modules/uuid/dist/esm-browser/rng.js +0 -11
- package/node_modules/uuid/dist/esm-browser/sha1.d.ts +0 -2
- package/node_modules/uuid/dist/esm-browser/sha1.js +0 -70
- package/node_modules/uuid/dist/esm-browser/stringify.d.ts +0 -3
- package/node_modules/uuid/dist/esm-browser/stringify.js +0 -35
- package/node_modules/uuid/dist/esm-browser/types.d.ts +0 -21
- package/node_modules/uuid/dist/esm-browser/uuid-bin.js +0 -70
- package/node_modules/uuid/dist/esm-browser/v1.d.ts +0 -11
- package/node_modules/uuid/dist/esm-browser/v1.js +0 -83
- package/node_modules/uuid/dist/esm-browser/v1ToV6.d.ts +0 -2
- package/node_modules/uuid/dist/esm-browser/v1ToV6.js +0 -10
- package/node_modules/uuid/dist/esm-browser/v3.d.ts +0 -9
- package/node_modules/uuid/dist/esm-browser/v3.js +0 -9
- package/node_modules/uuid/dist/esm-browser/v35.d.ts +0 -7
- package/node_modules/uuid/dist/esm-browser/v35.js +0 -36
- package/node_modules/uuid/dist/esm-browser/v4.d.ts +0 -4
- package/node_modules/uuid/dist/esm-browser/v4.js +0 -27
- package/node_modules/uuid/dist/esm-browser/v5.d.ts +0 -9
- package/node_modules/uuid/dist/esm-browser/v5.js +0 -9
- package/node_modules/uuid/dist/esm-browser/v6.d.ts +0 -4
- package/node_modules/uuid/dist/esm-browser/v6.js +0 -17
- package/node_modules/uuid/dist/esm-browser/v6ToV1.d.ts +0 -2
- package/node_modules/uuid/dist/esm-browser/v6ToV1.js +0 -10
- package/node_modules/uuid/dist/esm-browser/v7.d.ts +0 -9
- package/node_modules/uuid/dist/esm-browser/v7.js +0 -65
- package/node_modules/uuid/dist/esm-browser/validate.d.ts +0 -2
- package/node_modules/uuid/dist/esm-browser/validate.js +0 -5
- package/node_modules/uuid/dist/esm-browser/version.d.ts +0 -2
- package/node_modules/uuid/dist/esm-browser/version.js +0 -8
- package/node_modules/uuid/package.json +0 -132
- package/vendor/aab-tool/LICENSE +0 -202
- package/vendor/aab-tool/README.txt +0 -1
- package/vendor/aab-tool/bundletool.jar +0 -0
- /package/{node_modules/uuid/dist/cjs-browser/uuid-bin.d.ts → lib/bootstrap.d.ts} +0 -0
- /package/{node_modules/uuid/dist/cjs/uuid-bin.d.ts → lib/commands/test-init.d.ts} +0 -0
- /package/{node_modules/uuid/dist/esm-browser/types.js → lib/commands/test.d.ts} +0 -0
- /package/{node_modules/uuid/dist/esm-browser/uuid-bin.d.ts → lib/common/bootstrap.d.ts} +0 -0
- /package/{node_modules/uuid/dist/esm/types.js → lib/common/common-lib.d.ts} +0 -0
- /package/{node_modules/uuid/dist/esm/uuid-bin.d.ts → lib/common/mobile/ios/ios-device-product-name-mapper.d.ts} +0 -0
|
@@ -12,7 +12,55 @@ const _ = require("lodash");
|
|
|
12
12
|
const decorators_1 = require("../common/decorators");
|
|
13
13
|
const constants = require("../constants");
|
|
14
14
|
const helpers_1 = require("../common/helpers");
|
|
15
|
+
const deprecation_1 = require("../common/deprecation");
|
|
15
16
|
const yok_1 = require("../common/yok");
|
|
17
|
+
const constants_1 = require("../common/constants");
|
|
18
|
+
const inject_1 = require("../common/di/inject");
|
|
19
|
+
const contracts_1 = require("../common/contracts");
|
|
20
|
+
const define_command_1 = require("../common/define-command");
|
|
21
|
+
const command_definition_adapter_1 = require("../common/services/command-definition-adapter");
|
|
22
|
+
function isNonEmptyString(value) {
|
|
23
|
+
return typeof value === "string" && value.trim().length > 0;
|
|
24
|
+
}
|
|
25
|
+
function isCommandsMap(commands) {
|
|
26
|
+
return !!commands && typeof commands === "object" && !Array.isArray(commands);
|
|
27
|
+
}
|
|
28
|
+
function getEntryModulePath(value) {
|
|
29
|
+
if (isNonEmptyString(value)) {
|
|
30
|
+
return value;
|
|
31
|
+
}
|
|
32
|
+
if (value &&
|
|
33
|
+
typeof value === "object" &&
|
|
34
|
+
!Array.isArray(value) &&
|
|
35
|
+
isNonEmptyString(value.path)) {
|
|
36
|
+
return value.path;
|
|
37
|
+
}
|
|
38
|
+
return null;
|
|
39
|
+
}
|
|
40
|
+
const isDefaultCommandName = (name) => name.indexOf(constants_1.CommandsDelimiters.DefaultHierarchicalCommand) !== -1;
|
|
41
|
+
function describeRejection(rejection) {
|
|
42
|
+
switch (rejection.reason) {
|
|
43
|
+
case "invalid-name":
|
|
44
|
+
return rejection.detail;
|
|
45
|
+
case "claimed":
|
|
46
|
+
return `it is already registered by extension ${rejection.owner}`;
|
|
47
|
+
case "built-in":
|
|
48
|
+
return "it is already provided by the CLI";
|
|
49
|
+
case "subcommand-parent":
|
|
50
|
+
return "it is already in use as the parent of its subcommands";
|
|
51
|
+
case "parent-is-command":
|
|
52
|
+
return `'${rejection.parent}' is already registered as a command of its own, so the subcommand could never be reached`;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
function getDeclaredCommandNames(commands, opts) {
|
|
56
|
+
if (Array.isArray(commands)) {
|
|
57
|
+
return opts && opts.copy ? commands.slice() : commands;
|
|
58
|
+
}
|
|
59
|
+
if (isCommandsMap(commands)) {
|
|
60
|
+
return _.keys(commands);
|
|
61
|
+
}
|
|
62
|
+
return null;
|
|
63
|
+
}
|
|
16
64
|
class ExtensibilityService {
|
|
17
65
|
get pathToPackageJson() {
|
|
18
66
|
return path.join(this.pathToExtensions, constants.PACKAGE_JSON_FILE_NAME);
|
|
@@ -24,13 +72,15 @@ class ExtensibilityService {
|
|
|
24
72
|
set pathToExtensions(pathToExtensions) {
|
|
25
73
|
this.customPathToExtensions = pathToExtensions;
|
|
26
74
|
}
|
|
27
|
-
constructor($fs, $logger, $packageManager, $settingsService, $requireService) {
|
|
75
|
+
constructor($fs, $logger, $packageManager, $settingsService, $requireService, $injector) {
|
|
28
76
|
this.$fs = $fs;
|
|
29
77
|
this.$logger = $logger;
|
|
30
78
|
this.$packageManager = $packageManager;
|
|
31
79
|
this.$settingsService = $settingsService;
|
|
32
80
|
this.$requireService = $requireService;
|
|
81
|
+
this.$injector = $injector;
|
|
33
82
|
this.customPathToExtensions = null;
|
|
83
|
+
this.commandRegistry = (0, inject_1.inject)(contracts_1.CommandRegistry);
|
|
34
84
|
}
|
|
35
85
|
async installExtension(extensionName) {
|
|
36
86
|
this.$logger.trace(`Start installation of extension '${extensionName}'.`);
|
|
@@ -83,18 +133,36 @@ class ExtensibilityService {
|
|
|
83
133
|
packageJsonData.nativescript &&
|
|
84
134
|
packageJsonData.nativescript.docs &&
|
|
85
135
|
path.join(pathToExtension, packageJsonData.nativescript.docs);
|
|
86
|
-
|
|
136
|
+
const result = {
|
|
87
137
|
extensionName: packageJsonData.name,
|
|
88
138
|
version: packageJsonData.version,
|
|
89
139
|
docs,
|
|
90
140
|
pathToExtension,
|
|
91
141
|
};
|
|
142
|
+
const commands = getDeclaredCommandNames(packageJsonData &&
|
|
143
|
+
packageJsonData.nativescript &&
|
|
144
|
+
packageJsonData.nativescript.commands);
|
|
145
|
+
if (commands) {
|
|
146
|
+
result.commands = commands;
|
|
147
|
+
}
|
|
148
|
+
return result;
|
|
92
149
|
}
|
|
93
150
|
async loadExtension(extensionName) {
|
|
94
151
|
try {
|
|
95
152
|
await this.assertExtensionIsInstalled(extensionName);
|
|
96
153
|
const pathToExtension = this.getPathToExtension(extensionName);
|
|
97
|
-
this
|
|
154
|
+
const commandsMap = this.getDeclaredCommandsMap(extensionName);
|
|
155
|
+
if (commandsMap) {
|
|
156
|
+
this.registerDeclaredCommands(extensionName, pathToExtension, commandsMap);
|
|
157
|
+
}
|
|
158
|
+
else {
|
|
159
|
+
(0, deprecation_1.reportDeprecation)({
|
|
160
|
+
api: "extensions.require-time-registration",
|
|
161
|
+
detail: extensionName,
|
|
162
|
+
logger: this.$logger,
|
|
163
|
+
});
|
|
164
|
+
this.$requireService.require(pathToExtension);
|
|
165
|
+
}
|
|
98
166
|
return this.getInstalledExtensionData(extensionName);
|
|
99
167
|
}
|
|
100
168
|
catch (error) {
|
|
@@ -121,9 +189,9 @@ class ExtensibilityService {
|
|
|
121
189
|
try {
|
|
122
190
|
const registryData = await this.$packageManager.getRegistryPackageData(extensionName);
|
|
123
191
|
const latestPackageData = registryData.versions[registryData["dist-tags"].latest];
|
|
124
|
-
const commands = latestPackageData &&
|
|
192
|
+
const commands = getDeclaredCommandNames(latestPackageData &&
|
|
125
193
|
latestPackageData.nativescript &&
|
|
126
|
-
latestPackageData.nativescript.commands;
|
|
194
|
+
latestPackageData.nativescript.commands, { copy: true });
|
|
127
195
|
if (commands && commands.length) {
|
|
128
196
|
_.filter(commands, (command) => command.indexOf(inputOpts.defaultCommandDelimiter) !== -1).forEach((defaultCommand) => {
|
|
129
197
|
commands.push(defaultCommand.replace(defaultCommandRegExp, ""));
|
|
@@ -151,6 +219,59 @@ class ExtensibilityService {
|
|
|
151
219
|
}
|
|
152
220
|
return null;
|
|
153
221
|
}
|
|
222
|
+
getDeclaredCommandsMap(extensionName) {
|
|
223
|
+
let commands;
|
|
224
|
+
try {
|
|
225
|
+
const packageJsonData = this.getExtensionPackageJsonData(extensionName);
|
|
226
|
+
commands =
|
|
227
|
+
packageJsonData &&
|
|
228
|
+
packageJsonData.nativescript &&
|
|
229
|
+
packageJsonData.nativescript.commands;
|
|
230
|
+
}
|
|
231
|
+
catch (err) {
|
|
232
|
+
this.$logger.trace(`Unable to read the package.json of extension ${extensionName}. Error is: ${err}`);
|
|
233
|
+
return null;
|
|
234
|
+
}
|
|
235
|
+
return isCommandsMap(commands) ? commands : null;
|
|
236
|
+
}
|
|
237
|
+
registerDeclaredCommands(extensionName, pathToExtension, commands) {
|
|
238
|
+
const commandNames = _.sortBy(_.keys(commands), (commandName) => isDefaultCommandName(commandName) ? 0 : 1);
|
|
239
|
+
for (const commandName of commandNames) {
|
|
240
|
+
const modulePath = getEntryModulePath(commands[commandName]);
|
|
241
|
+
if (!isNonEmptyString(commandName) || !modulePath) {
|
|
242
|
+
this.$logger.warn(`Extension ${extensionName} declares an invalid command in its nativescript.commands: '${commandName}': ${JSON.stringify(commands[commandName])}. The command name must be a non-empty string and its value either the path to its module or an object with a non-empty 'path'. Skipping this command.`);
|
|
243
|
+
continue;
|
|
244
|
+
}
|
|
245
|
+
const absoluteModulePath = path.join(pathToExtension, modulePath);
|
|
246
|
+
const result = this.commandRegistry.registerDeferredCommand(commandName, {
|
|
247
|
+
owner: extensionName,
|
|
248
|
+
source: absoluteModulePath,
|
|
249
|
+
load: () => this.loadDeclaredCommand(extensionName, commandName, absoluteModulePath),
|
|
250
|
+
});
|
|
251
|
+
if (!result.registered) {
|
|
252
|
+
this.$logger.warn(`Extension ${extensionName} is unable to register command '${commandName}': ${describeRejection(result.rejection)}.`);
|
|
253
|
+
}
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
loadDeclaredCommand(extensionName, commandName, absoluteModulePath) {
|
|
257
|
+
var _a;
|
|
258
|
+
const exported = require(absoluteModulePath);
|
|
259
|
+
const candidate = (_a = (exported && exported.default)) !== null && _a !== void 0 ? _a : exported;
|
|
260
|
+
if (!(0, define_command_1.isCommandDefinition)(candidate)) {
|
|
261
|
+
return;
|
|
262
|
+
}
|
|
263
|
+
this.warnOnDeclaredNameMismatch(extensionName, commandName, absoluteModulePath, candidate);
|
|
264
|
+
(0, command_definition_adapter_1.registerDefinitionAs)(commandName, candidate, this.$injector);
|
|
265
|
+
}
|
|
266
|
+
warnOnDeclaredNameMismatch(extensionName, commandName, absoluteModulePath, definition) {
|
|
267
|
+
const declaredNames = Array.isArray(definition.name)
|
|
268
|
+
? definition.name
|
|
269
|
+
: [definition.name];
|
|
270
|
+
if (_.includes(declaredNames, commandName)) {
|
|
271
|
+
return;
|
|
272
|
+
}
|
|
273
|
+
this.$logger.warn(`Extension ${extensionName} declares command '${commandName}' in its package.json, but the definition in ${absoluteModulePath} names itself '${declaredNames.join("', '")}'. The command runs as '${commandName}' - the manifest decides how it is invoked.`);
|
|
274
|
+
}
|
|
154
275
|
getPathToExtension(extensionName) {
|
|
155
276
|
return path.join(this.pathToExtensions, constants.NODE_MODULES_FOLDER_NAME, extensionName);
|
|
156
277
|
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { IFilesHashService } from "../definitions/files-hash-service";
|
|
2
|
+
import { IPlatformData } from "../definitions/platform";
|
|
3
|
+
import { IFileSystem, IStringDictionary } from "../common/declarations";
|
|
4
|
+
import { IOptions } from "../declarations";
|
|
5
|
+
export declare class FilesHashService implements IFilesHashService {
|
|
6
|
+
private $fs;
|
|
7
|
+
private $logger;
|
|
8
|
+
private $options;
|
|
9
|
+
constructor($fs: IFileSystem, $logger: ILogger, $options: IOptions);
|
|
10
|
+
generateHashes(files: string[]): Promise<IStringDictionary>;
|
|
11
|
+
generateHashesForProject(platformData: IPlatformData): Promise<IStringDictionary>;
|
|
12
|
+
saveHashesForProject(platformData: IPlatformData, hashesFileDirectory: string): Promise<IStringDictionary>;
|
|
13
|
+
getChanges(files: string[], oldHashes: IStringDictionary): Promise<IStringDictionary>;
|
|
14
|
+
hasChangesInShasums(oldHashes: IStringDictionary, newHashes: IStringDictionary): boolean;
|
|
15
|
+
saveHashes(hashes: IStringDictionary, hashesFileDirectory: string): void;
|
|
16
|
+
getChangesInShasums(oldHashes: IStringDictionary, newHashes: IStringDictionary): IStringDictionary;
|
|
17
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export declare class HmrStatusService implements IHmrStatusService {
|
|
2
|
+
private $logParserService;
|
|
3
|
+
private $devicePlatformsConstants;
|
|
4
|
+
private $logger;
|
|
5
|
+
static HMR_STATUS_LOG_REGEX: RegExp;
|
|
6
|
+
static STARTED_MESSAGE: string;
|
|
7
|
+
static SUCCESS_MESSAGE: string;
|
|
8
|
+
static FAILED_MESSAGE: string;
|
|
9
|
+
private hashOperationStatuses;
|
|
10
|
+
private intervals;
|
|
11
|
+
constructor($logParserService: ILogParserService, $devicePlatformsConstants: Mobile.IDevicePlatformsConstants, $logger: ILogger);
|
|
12
|
+
getHmrStatus(deviceId: string, operationHash: string): Promise<number>;
|
|
13
|
+
watchHmrStatus(deviceId: string, operationHash: string): void;
|
|
14
|
+
attachToHmrStatusEvent(): void;
|
|
15
|
+
private handleAppCrash;
|
|
16
|
+
private handleHmrStatusFound;
|
|
17
|
+
private getStatusByKey;
|
|
18
|
+
private setData;
|
|
19
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { IInitializeOptions, IInitializeService } from "../definitions/initialize-service";
|
|
2
|
+
import { IInjector } from "../common/definitions/yok";
|
|
3
|
+
export declare class InitializeService implements IInitializeService {
|
|
4
|
+
private $injector;
|
|
5
|
+
constructor($injector: IInjector);
|
|
6
|
+
initialize(initOpts?: IInitializeOptions): Promise<void>;
|
|
7
|
+
private showWarnings;
|
|
8
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { IProjectData, IBuildConfig } from "../../definitions/project";
|
|
2
|
+
import { IFileSystem } from "../../common/declarations";
|
|
3
|
+
import { ITempService } from "../../definitions/temp-service";
|
|
4
|
+
export declare class ExportOptionsPlistService implements IExportOptionsPlistService {
|
|
5
|
+
private $fs;
|
|
6
|
+
private $tempService;
|
|
7
|
+
private $projectData;
|
|
8
|
+
constructor($fs: IFileSystem, $tempService: ITempService, $projectData: IProjectData);
|
|
9
|
+
private getExtensionProvisions;
|
|
10
|
+
createDevelopmentExportOptionsPlist(archivePath: string, projectData: IProjectData, buildConfig: IBuildConfig): Promise<IExportOptionsPlistOutput>;
|
|
11
|
+
createDistributionExportOptionsPlist(archivePath: string, projectData: IProjectData, buildConfig: IBuildConfig): Promise<IExportOptionsPlistOutput>;
|
|
12
|
+
private getExportOptionsMethod;
|
|
13
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import * as mobileProvisionFinder from "ios-mobileprovision-finder";
|
|
2
|
+
import { IOSProvisionService } from "../ios-provision-service";
|
|
3
|
+
import { IOSBuildData } from "../../data/build-data";
|
|
4
|
+
import { IOptions, IXcconfigService, IXcprojService } from "../../declarations";
|
|
5
|
+
import { IProjectData } from "../../definitions/project";
|
|
6
|
+
import { IErrors, IFileSystem } from "../../common/declarations";
|
|
7
|
+
export declare class IOSSigningService implements IiOSSigningService {
|
|
8
|
+
private $errors;
|
|
9
|
+
private $fs;
|
|
10
|
+
private $iOSProvisionService;
|
|
11
|
+
private $logger;
|
|
12
|
+
private $options;
|
|
13
|
+
private $pbxprojDomXcode;
|
|
14
|
+
private $prompter;
|
|
15
|
+
private $xcconfigService;
|
|
16
|
+
private $xcprojService;
|
|
17
|
+
constructor($errors: IErrors, $fs: IFileSystem, $iOSProvisionService: IOSProvisionService, $logger: ILogger, $options: IOptions, $pbxprojDomXcode: IPbxprojDomXcode, $prompter: IPrompter, $xcconfigService: IXcconfigService, $xcprojService: IXcprojService);
|
|
18
|
+
setupSigningForDevice(projectRoot: string, projectData: IProjectData, iOSBuildData: IOSBuildData): Promise<void>;
|
|
19
|
+
setupSigningFromTeam(projectRoot: string, projectData: IProjectData, teamId: string): Promise<void>;
|
|
20
|
+
setupSigningFromProvision(projectRoot: string, projectData: IProjectData, provision?: string, mobileProvisionData?: mobileProvisionFinder.provision.MobileProvision): Promise<void>;
|
|
21
|
+
private getExtensionNames;
|
|
22
|
+
private getExtensionsManualSigningConfiguration;
|
|
23
|
+
private getManualSigningConfiguration;
|
|
24
|
+
private getBuildXCConfigFilePath;
|
|
25
|
+
private getPbxProjPath;
|
|
26
|
+
private readTeamIdFromFile;
|
|
27
|
+
private getDevelopmentTeam;
|
|
28
|
+
private readXCConfigDevelopmentTeam;
|
|
29
|
+
private readXCConfigProvisioningProfile;
|
|
30
|
+
private readXCConfigProvisioningProfileForIPhoneOs;
|
|
31
|
+
private readXCConfigProvisioningProfileSpecifier;
|
|
32
|
+
private readXCConfigProvisioningProfileSpecifierForIPhoneOs;
|
|
33
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { IFileSystem } from "../../common/declarations";
|
|
2
|
+
export declare class SPMPbxprojService implements ISPMPbxprojService {
|
|
3
|
+
private $fs;
|
|
4
|
+
private $logger;
|
|
5
|
+
private $xcode;
|
|
6
|
+
constructor($fs: IFileSystem, $logger: ILogger, $xcode: IXcode);
|
|
7
|
+
addPackages(projectRoot: string, assignments: IosSPMPackageAssignment[]): boolean;
|
|
8
|
+
private findPbxProjPath;
|
|
9
|
+
private findTargetId;
|
|
10
|
+
private addPackageToTarget;
|
|
11
|
+
private findFrameworksBuildPhase;
|
|
12
|
+
private addOrUpdateArrayEntry;
|
|
13
|
+
private addOrUpdateEntry;
|
|
14
|
+
private findUuidByComment;
|
|
15
|
+
}
|
|
16
|
+
export declare function classifyVersion(version: string): Record<string, string>;
|
|
@@ -0,0 +1,234 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SPMPbxprojService = void 0;
|
|
4
|
+
exports.classifyVersion = classifyVersion;
|
|
5
|
+
const path = require("path");
|
|
6
|
+
const semver = require("semver");
|
|
7
|
+
const yok_1 = require("../../common/yok");
|
|
8
|
+
class SPMPbxprojService {
|
|
9
|
+
constructor($fs, $logger, $xcode) {
|
|
10
|
+
this.$fs = $fs;
|
|
11
|
+
this.$logger = $logger;
|
|
12
|
+
this.$xcode = $xcode;
|
|
13
|
+
}
|
|
14
|
+
addPackages(projectRoot, assignments) {
|
|
15
|
+
if (!assignments.length) {
|
|
16
|
+
return false;
|
|
17
|
+
}
|
|
18
|
+
const pbxProjPath = this.findPbxProjPath(projectRoot);
|
|
19
|
+
if (!pbxProjPath) {
|
|
20
|
+
this.$logger.trace(`SPM: no Xcode project found under ${projectRoot}; skipping.`);
|
|
21
|
+
return false;
|
|
22
|
+
}
|
|
23
|
+
const project = new this.$xcode.project(pbxProjPath);
|
|
24
|
+
project.parseSync();
|
|
25
|
+
let added = false;
|
|
26
|
+
for (const { targetName, package: pkg } of assignments) {
|
|
27
|
+
const targetId = this.findTargetId(project, targetName);
|
|
28
|
+
if (!targetId) {
|
|
29
|
+
this.$logger.warn(`SPM: target "${targetName}" not found in ${path.basename(pbxProjPath)} — skipping package "${pkg.name}".`);
|
|
30
|
+
continue;
|
|
31
|
+
}
|
|
32
|
+
if (this.addPackageToTarget(project, targetId, pkg, projectRoot)) {
|
|
33
|
+
added = true;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
if (!added) {
|
|
37
|
+
return false;
|
|
38
|
+
}
|
|
39
|
+
this.$fs.writeFile(pbxProjPath, project.writeSync({ omitEmptyValues: true }));
|
|
40
|
+
return true;
|
|
41
|
+
}
|
|
42
|
+
findPbxProjPath(projectRoot) {
|
|
43
|
+
if (!this.$fs.exists(projectRoot)) {
|
|
44
|
+
return null;
|
|
45
|
+
}
|
|
46
|
+
const xcodeprojName = this.$fs
|
|
47
|
+
.readDirectory(projectRoot)
|
|
48
|
+
.find((entry) => entry.endsWith(".xcodeproj"));
|
|
49
|
+
if (!xcodeprojName) {
|
|
50
|
+
return null;
|
|
51
|
+
}
|
|
52
|
+
const pbxProjPath = path.join(projectRoot, xcodeprojName, "project.pbxproj");
|
|
53
|
+
return this.$fs.exists(pbxProjPath) ? pbxProjPath : null;
|
|
54
|
+
}
|
|
55
|
+
findTargetId(project, targetName) {
|
|
56
|
+
var _a, _b;
|
|
57
|
+
const targets = (_a = project.pbxNativeTargetSection()) !== null && _a !== void 0 ? _a : {};
|
|
58
|
+
for (const key of Object.keys(targets)) {
|
|
59
|
+
if (key.endsWith("_comment")) {
|
|
60
|
+
continue;
|
|
61
|
+
}
|
|
62
|
+
const name = (_b = targets[key]) === null || _b === void 0 ? void 0 : _b.name;
|
|
63
|
+
if (name === targetName || name === `"${targetName}"`) {
|
|
64
|
+
return key;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
return null;
|
|
68
|
+
}
|
|
69
|
+
addPackageToTarget(project, targetId, pkg, projectRoot) {
|
|
70
|
+
var _a, _b, _c, _d;
|
|
71
|
+
const target = project.pbxNativeTargetSection()[targetId];
|
|
72
|
+
const frameworkBuildPhaseObj = this.findFrameworksBuildPhase(project, target);
|
|
73
|
+
if (!frameworkBuildPhaseObj) {
|
|
74
|
+
this.$logger.warn(`SPM: target for package "${pkg.name}" has no Frameworks build phase — skipping.`);
|
|
75
|
+
return false;
|
|
76
|
+
}
|
|
77
|
+
const firstProject = project.getFirstProject().firstProject;
|
|
78
|
+
const packageReferences = ((_a = firstProject["packageReferences"]) !== null && _a !== void 0 ? _a : (firstProject["packageReferences"] = []));
|
|
79
|
+
const packageProductReferences = ((_b = target["packageProductDependencies"]) !== null && _b !== void 0 ? _b : (target["packageProductDependencies"] = []));
|
|
80
|
+
const frameworkBuildPhaseFiles = ((_c = frameworkBuildPhaseObj["files"]) !== null && _c !== void 0 ? _c : (frameworkBuildPhaseObj["files"] = []));
|
|
81
|
+
let packageReferenceComment;
|
|
82
|
+
let packageReferenceSection;
|
|
83
|
+
let packageReferenceSectionContent;
|
|
84
|
+
if ("path" in pkg) {
|
|
85
|
+
const relativePath = path.relative(projectRoot, path.resolve(projectRoot, pkg.path));
|
|
86
|
+
packageReferenceComment = `XCLocalSwiftPackageReference "${relativePath}"`;
|
|
87
|
+
packageReferenceSection = "XCLocalSwiftPackageReference";
|
|
88
|
+
packageReferenceSectionContent = {
|
|
89
|
+
isa: packageReferenceSection,
|
|
90
|
+
relativePath: JSON.stringify(relativePath),
|
|
91
|
+
};
|
|
92
|
+
}
|
|
93
|
+
else {
|
|
94
|
+
packageReferenceComment = `XCRemoteSwiftPackageReference "${pkg.name}"`;
|
|
95
|
+
packageReferenceSection = "XCRemoteSwiftPackageReference";
|
|
96
|
+
packageReferenceSectionContent = {
|
|
97
|
+
isa: packageReferenceSection,
|
|
98
|
+
repositoryURL: JSON.stringify(pkg.repositoryURL),
|
|
99
|
+
requirement: quoteValuesForPbxproj(classifyVersion(pkg.version)),
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
const { uuid: spmPackageReferenceUUID, comment: spmPackageReferenceComment, } = this.addOrUpdateEntry(project, packageReferenceSection, packageReferenceComment, packageReferenceSectionContent);
|
|
103
|
+
this.addOrUpdateArrayEntry(packageReferences, spmPackageReferenceUUID, {
|
|
104
|
+
value: spmPackageReferenceUUID,
|
|
105
|
+
comment: packageReferenceComment,
|
|
106
|
+
});
|
|
107
|
+
for (const lib of (_d = pkg.libs) !== null && _d !== void 0 ? _d : []) {
|
|
108
|
+
const { uuid: spmProductDependencyUUID } = this.addOrUpdateEntry(project, "XCSwiftPackageProductDependency", lib, {
|
|
109
|
+
isa: "XCSwiftPackageProductDependency",
|
|
110
|
+
package: spmPackageReferenceUUID,
|
|
111
|
+
package_comment: spmPackageReferenceComment,
|
|
112
|
+
productName: lib,
|
|
113
|
+
}, (existing) => existing.package === spmPackageReferenceUUID);
|
|
114
|
+
const libComment = `${lib} in Frameworks`;
|
|
115
|
+
const { uuid: spmBuildFileUuid } = this.addOrUpdateEntry(project, "PBXBuildFile", libComment, {
|
|
116
|
+
isa: "PBXBuildFile",
|
|
117
|
+
productRef: spmProductDependencyUUID,
|
|
118
|
+
productRef_comment: lib,
|
|
119
|
+
}, (existing) => existing.productRef === spmProductDependencyUUID);
|
|
120
|
+
this.addOrUpdateArrayEntry(packageProductReferences, spmProductDependencyUUID, {
|
|
121
|
+
value: spmProductDependencyUUID,
|
|
122
|
+
comment: lib,
|
|
123
|
+
});
|
|
124
|
+
this.addOrUpdateArrayEntry(frameworkBuildPhaseFiles, spmBuildFileUuid, {
|
|
125
|
+
value: spmBuildFileUuid,
|
|
126
|
+
comment: libComment,
|
|
127
|
+
});
|
|
128
|
+
}
|
|
129
|
+
return true;
|
|
130
|
+
}
|
|
131
|
+
findFrameworksBuildPhase(project, target) {
|
|
132
|
+
var _a, _b;
|
|
133
|
+
const section = (_a = project.hash.project.objects["PBXFrameworksBuildPhase"]) !== null && _a !== void 0 ? _a : {};
|
|
134
|
+
for (const phase of (_b = target.buildPhases) !== null && _b !== void 0 ? _b : []) {
|
|
135
|
+
const phaseObj = section[phase.value];
|
|
136
|
+
if (phaseObj) {
|
|
137
|
+
return phaseObj;
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
return null;
|
|
141
|
+
}
|
|
142
|
+
addOrUpdateArrayEntry(array, lookupValue, value) {
|
|
143
|
+
const existing = array.find((entry) => entry.value === lookupValue);
|
|
144
|
+
if (existing) {
|
|
145
|
+
Object.assign(existing, value);
|
|
146
|
+
return;
|
|
147
|
+
}
|
|
148
|
+
array.push(value);
|
|
149
|
+
}
|
|
150
|
+
addOrUpdateEntry(project, section, entryComment, entry, matches) {
|
|
151
|
+
var _a, _b;
|
|
152
|
+
var _c;
|
|
153
|
+
const pbxSection = ((_a = (_c = project.hash.project.objects)[section]) !== null && _a !== void 0 ? _a : (_c[section] = {}));
|
|
154
|
+
const entryUuid = (_b = this.findUuidByComment(project, section, entryComment, matches)) !== null && _b !== void 0 ? _b : project.generateUuid();
|
|
155
|
+
pbxSection[`${entryUuid}_comment`] = entryComment;
|
|
156
|
+
pbxSection[entryUuid] = entry;
|
|
157
|
+
return { uuid: entryUuid, comment: entryComment };
|
|
158
|
+
}
|
|
159
|
+
findUuidByComment(project, section, comment, matches) {
|
|
160
|
+
var _a;
|
|
161
|
+
const pbxSection = (_a = project.hash.project.objects[section]) !== null && _a !== void 0 ? _a : {};
|
|
162
|
+
const commentKey = Object.keys(pbxSection).find((key) => {
|
|
163
|
+
if (!key.endsWith("_comment") || pbxSection[key] !== comment) {
|
|
164
|
+
return false;
|
|
165
|
+
}
|
|
166
|
+
if (!matches) {
|
|
167
|
+
return true;
|
|
168
|
+
}
|
|
169
|
+
const existing = pbxSection[key.replace(/_comment$/, "")];
|
|
170
|
+
return existing != null && matches(existing);
|
|
171
|
+
});
|
|
172
|
+
return commentKey ? commentKey.replace(/_comment$/, "") : null;
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
exports.SPMPbxprojService = SPMPbxprojService;
|
|
176
|
+
function classifyVersion(version) {
|
|
177
|
+
var _a, _b;
|
|
178
|
+
if (version.startsWith("#")) {
|
|
179
|
+
return {
|
|
180
|
+
kind: "revision",
|
|
181
|
+
revision: version.replace("#", ""),
|
|
182
|
+
};
|
|
183
|
+
}
|
|
184
|
+
if (semver.valid(version)) {
|
|
185
|
+
return {
|
|
186
|
+
kind: "exactVersion",
|
|
187
|
+
version,
|
|
188
|
+
};
|
|
189
|
+
}
|
|
190
|
+
const range = semver.validRange(version);
|
|
191
|
+
if (range) {
|
|
192
|
+
const minimumVersion = (_a = semver.minVersion(range)) === null || _a === void 0 ? void 0 : _a.version;
|
|
193
|
+
if (version.startsWith("^")) {
|
|
194
|
+
return {
|
|
195
|
+
kind: "upToNextMajorVersion",
|
|
196
|
+
minimumVersion,
|
|
197
|
+
};
|
|
198
|
+
}
|
|
199
|
+
if (version.startsWith("~")) {
|
|
200
|
+
return {
|
|
201
|
+
kind: "upToNextMinorVersion",
|
|
202
|
+
minimumVersion,
|
|
203
|
+
};
|
|
204
|
+
}
|
|
205
|
+
const maximumVersion = (_b = semver.coerce(version.replace(minimumVersion !== null && minimumVersion !== void 0 ? minimumVersion : "", ""))) === null || _b === void 0 ? void 0 : _b.version;
|
|
206
|
+
if (maximumVersion && maximumVersion !== minimumVersion) {
|
|
207
|
+
return {
|
|
208
|
+
kind: "versionRange",
|
|
209
|
+
minimumVersion,
|
|
210
|
+
maximumVersion,
|
|
211
|
+
};
|
|
212
|
+
}
|
|
213
|
+
return {
|
|
214
|
+
kind: "upToNextMajorVersion",
|
|
215
|
+
minimumVersion,
|
|
216
|
+
};
|
|
217
|
+
}
|
|
218
|
+
return {
|
|
219
|
+
kind: "branch",
|
|
220
|
+
branch: version,
|
|
221
|
+
};
|
|
222
|
+
}
|
|
223
|
+
const UNQUOTED_PBX_VALUE = /^[A-Za-z0-9_$./]+$/;
|
|
224
|
+
function quoteValuesForPbxproj(obj) {
|
|
225
|
+
const result = {};
|
|
226
|
+
for (const [key, value] of Object.entries(obj)) {
|
|
227
|
+
result[key] =
|
|
228
|
+
typeof value === "string" && !UNQUOTED_PBX_VALUE.test(value)
|
|
229
|
+
? JSON.stringify(value)
|
|
230
|
+
: value;
|
|
231
|
+
}
|
|
232
|
+
return result;
|
|
233
|
+
}
|
|
234
|
+
yok_1.injector.register("spmPbxprojService", SPMPbxprojService);
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { IProjectConfigService, IProjectData } from "../../definitions/project";
|
|
2
|
+
import { IPlatformData } from "../../definitions/platform";
|
|
3
|
+
import { IFileSystem } from "../../common/declarations";
|
|
4
|
+
import { ITerminalSpinnerService } from "../../definitions/terminal-spinner-service";
|
|
5
|
+
export declare class SPMService implements ISPMService {
|
|
6
|
+
private $logger;
|
|
7
|
+
private $fs;
|
|
8
|
+
private $projectConfigService;
|
|
9
|
+
private $terminalSpinnerService;
|
|
10
|
+
private $xcodebuildCommandService;
|
|
11
|
+
private $xcodebuildArgsService;
|
|
12
|
+
private $spmPbxprojService;
|
|
13
|
+
private static readonly SWIFTPM_REPO_CACHE;
|
|
14
|
+
private static readonly LARGE_CLONE_NOTE_BYTES;
|
|
15
|
+
private static readonly OUTPUT_TAIL_LINES;
|
|
16
|
+
constructor($logger: ILogger, $fs: IFileSystem, $projectConfigService: IProjectConfigService, $terminalSpinnerService: ITerminalSpinnerService, $xcodebuildCommandService: IXcodebuildCommandService, $xcodebuildArgsService: IXcodebuildArgsService, $spmPbxprojService: ISPMPbxprojService);
|
|
17
|
+
getSPMPackages(projectData: IProjectData, platform: string): IosSPMPackage[];
|
|
18
|
+
private mergePluginSPMPackages;
|
|
19
|
+
applySPMPackages(platformData: IPlatformData, projectData: IProjectData, pluginSpmPackages?: IosSPMPackage[]): Promise<void>;
|
|
20
|
+
resolveSPMDependencies(platformData: IPlatformData, projectData: IProjectData, options?: {
|
|
21
|
+
showProgress?: boolean;
|
|
22
|
+
}): Promise<void>;
|
|
23
|
+
ensureSPMDependenciesResolved(platformData: IPlatformData, projectData: IProjectData): Promise<void>;
|
|
24
|
+
private describeSPMActivity;
|
|
25
|
+
private describePackageActivity;
|
|
26
|
+
private shortenPackageRef;
|
|
27
|
+
private formatElapsed;
|
|
28
|
+
private formatPackageListing;
|
|
29
|
+
private describePackageSource;
|
|
30
|
+
private getPackageCloneSizeBytes;
|
|
31
|
+
private getDirectorySizeBytes;
|
|
32
|
+
private formatBytes;
|
|
33
|
+
private hasSPMReferences;
|
|
34
|
+
private arePackagesResolved;
|
|
35
|
+
}
|
|
@@ -2,19 +2,19 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.SPMService = void 0;
|
|
4
4
|
const yok_1 = require("../../common/yok");
|
|
5
|
-
const trapezedev_project_1 = require("@nstudio/trapezedev-project");
|
|
6
5
|
const color_1 = require("../../color");
|
|
7
6
|
const path = require("path");
|
|
8
7
|
const os = require("os");
|
|
9
8
|
const fs = require("fs");
|
|
10
9
|
class SPMService {
|
|
11
|
-
constructor($logger, $fs, $projectConfigService, $terminalSpinnerService, $xcodebuildCommandService, $xcodebuildArgsService) {
|
|
10
|
+
constructor($logger, $fs, $projectConfigService, $terminalSpinnerService, $xcodebuildCommandService, $xcodebuildArgsService, $spmPbxprojService) {
|
|
12
11
|
this.$logger = $logger;
|
|
13
12
|
this.$fs = $fs;
|
|
14
13
|
this.$projectConfigService = $projectConfigService;
|
|
15
14
|
this.$terminalSpinnerService = $terminalSpinnerService;
|
|
16
15
|
this.$xcodebuildCommandService = $xcodebuildCommandService;
|
|
17
16
|
this.$xcodebuildArgsService = $xcodebuildArgsService;
|
|
17
|
+
this.$spmPbxprojService = $spmPbxprojService;
|
|
18
18
|
}
|
|
19
19
|
getSPMPackages(projectData, platform) {
|
|
20
20
|
const spmPackages = this.$projectConfigService.getValue(`${platform}.SPMPackages`, []);
|
|
@@ -48,17 +48,7 @@ class SPMService {
|
|
|
48
48
|
return;
|
|
49
49
|
}
|
|
50
50
|
this.$logger.info(this.formatPackageListing(spmPackages));
|
|
51
|
-
const
|
|
52
|
-
ios: {
|
|
53
|
-
path: ".",
|
|
54
|
-
},
|
|
55
|
-
enableAndroid: false,
|
|
56
|
-
});
|
|
57
|
-
await project.load();
|
|
58
|
-
if (!project.ios) {
|
|
59
|
-
this.$logger.trace("SPM: no iOS project found via trapeze.");
|
|
60
|
-
return;
|
|
61
|
-
}
|
|
51
|
+
const assignments = [];
|
|
62
52
|
for (const pkg of spmPackages) {
|
|
63
53
|
if ("path" in pkg) {
|
|
64
54
|
this.$logger.trace("SPM: resolving path for package: ", pkg.path);
|
|
@@ -68,14 +58,15 @@ class SPMService {
|
|
|
68
58
|
}
|
|
69
59
|
}
|
|
70
60
|
this.$logger.trace(`SPM: adding package ${pkg.name} to project.`, pkg);
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
await project.ios.addSPMPackage(target, pkg);
|
|
75
|
-
}
|
|
61
|
+
assignments.push({ targetName: projectData.projectName, package: pkg });
|
|
62
|
+
for (const target of (_a = pkg.targets) !== null && _a !== void 0 ? _a : []) {
|
|
63
|
+
assignments.push({ targetName: target, package: pkg });
|
|
76
64
|
}
|
|
77
65
|
}
|
|
78
|
-
|
|
66
|
+
if (!this.$spmPbxprojService.addPackages(platformData.projectRoot, assignments)) {
|
|
67
|
+
this.$logger.trace("SPM: no packages were applied to the project.");
|
|
68
|
+
return;
|
|
69
|
+
}
|
|
79
70
|
await this.resolveSPMDependencies(platformData, projectData, {
|
|
80
71
|
showProgress: true,
|
|
81
72
|
});
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { IIOSWatchAppService, IProjectData, IBuildConfig } from "../../definitions/project";
|
|
2
|
+
import { IXcconfigService } from "../../declarations";
|
|
3
|
+
import { IPlatformData } from "../../definitions/platform";
|
|
4
|
+
import { IFileSystem } from "../../common/declarations";
|
|
5
|
+
export declare class XcodebuildArgsService implements IXcodebuildArgsService {
|
|
6
|
+
private $devicePlatformsConstants;
|
|
7
|
+
private $devicesService;
|
|
8
|
+
private $fs;
|
|
9
|
+
private $iOSWatchAppService;
|
|
10
|
+
private $logger;
|
|
11
|
+
private $xcconfigService;
|
|
12
|
+
constructor($devicePlatformsConstants: Mobile.IDevicePlatformsConstants, $devicesService: Mobile.IDevicesService, $fs: IFileSystem, $iOSWatchAppService: IIOSWatchAppService, $logger: ILogger, $xcconfigService: IXcconfigService);
|
|
13
|
+
getBuildForSimulatorArgs(platformData: IPlatformData, projectData: IProjectData, buildConfig: IBuildConfig): Promise<string[]>;
|
|
14
|
+
getBuildForDeviceArgs(platformData: IPlatformData, projectData: IProjectData, buildConfig: IBuildConfig): Promise<string[]>;
|
|
15
|
+
private getArchitecturesArgs;
|
|
16
|
+
getXcodeProjectArgs(platformData: IPlatformData, projectData: IProjectData): string[];
|
|
17
|
+
private getBuildLoggingArgs;
|
|
18
|
+
private getBuildCommonArgs;
|
|
19
|
+
private getArchitecturesFromConnectedDevices;
|
|
20
|
+
}
|