@nx/react-native 16.0.0-beta.1
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/.eslintrc.json +19 -0
- package/CHANGELOG.md +8 -0
- package/LICENSE +22 -0
- package/README.md +63 -0
- package/executors.json +106 -0
- package/generators.json +109 -0
- package/index.d.ts +5 -0
- package/index.js +14 -0
- package/index.js.map +1 -0
- package/migrations.json +1291 -0
- package/package.json +58 -0
- package/plugins/jest/svg-mock.d.ts +0 -0
- package/plugins/jest/svg-mock.js +4 -0
- package/plugins/jest/svg-mock.js.map +1 -0
- package/plugins/metro-resolver.d.ts +1 -0
- package/plugins/metro-resolver.js +135 -0
- package/plugins/metro-resolver.js.map +1 -0
- package/plugins/with-nx-metro.d.ts +8 -0
- package/plugins/with-nx-metro.js +32 -0
- package/plugins/with-nx-metro.js.map +1 -0
- package/project.json +64 -0
- package/src/executors/build-android/build-android.impl.d.ts +6 -0
- package/src/executors/build-android/build-android.impl.js +76 -0
- package/src/executors/build-android/build-android.impl.js.map +1 -0
- package/src/executors/build-android/build-android.impl.ts +108 -0
- package/src/executors/build-android/compat.d.ts +2 -0
- package/src/executors/build-android/compat.js +6 -0
- package/src/executors/build-android/compat.js.map +1 -0
- package/src/executors/build-android/schema.d.ts +31 -0
- package/src/executors/build-android/schema.json +102 -0
- package/src/executors/build-ios/build-ios.impl.d.ts +6 -0
- package/src/executors/build-ios/build-ios.impl.js +77 -0
- package/src/executors/build-ios/build-ios.impl.js.map +1 -0
- package/src/executors/build-ios/build-ios.impl.ts +118 -0
- package/src/executors/build-ios/compat.d.ts +2 -0
- package/src/executors/build-ios/compat.js +6 -0
- package/src/executors/build-ios/compat.js.map +1 -0
- package/src/executors/build-ios/schema.d.ts +22 -0
- package/src/executors/build-ios/schema.json +106 -0
- package/src/executors/bundle/bundle.impl.d.ts +6 -0
- package/src/executors/bundle/bundle.impl.js +58 -0
- package/src/executors/bundle/bundle.impl.js.map +1 -0
- package/src/executors/bundle/bundle.impl.ts +76 -0
- package/src/executors/bundle/compat.d.ts +2 -0
- package/src/executors/bundle/compat.js +6 -0
- package/src/executors/bundle/compat.js.map +1 -0
- package/src/executors/bundle/schema.d.ts +16 -0
- package/src/executors/bundle/schema.json +92 -0
- package/src/executors/ensure-symlink/compat.d.ts +2 -0
- package/src/executors/ensure-symlink/compat.js +6 -0
- package/src/executors/ensure-symlink/compat.js.map +1 -0
- package/src/executors/ensure-symlink/ensure-symlink.impl.d.ts +5 -0
- package/src/executors/ensure-symlink/ensure-symlink.impl.js +13 -0
- package/src/executors/ensure-symlink/ensure-symlink.impl.js.map +1 -0
- package/src/executors/ensure-symlink/ensure-symlink.impl.ts +18 -0
- package/src/executors/ensure-symlink/schema.json +11 -0
- package/src/executors/pod-install/compat.d.ts +2 -0
- package/src/executors/pod-install/compat.js +6 -0
- package/src/executors/pod-install/compat.js.map +1 -0
- package/src/executors/pod-install/pod-install.impl.d.ts +6 -0
- package/src/executors/pod-install/pod-install.impl.js +15 -0
- package/src/executors/pod-install/pod-install.impl.js.map +1 -0
- package/src/executors/pod-install/pod-install.impl.ts +21 -0
- package/src/executors/pod-install/schema.d.ts +3 -0
- package/src/executors/pod-install/schema.json +18 -0
- package/src/executors/run-android/compat.d.ts +2 -0
- package/src/executors/run-android/compat.js +6 -0
- package/src/executors/run-android/compat.js.map +1 -0
- package/src/executors/run-android/run-android.impl.d.ts +6 -0
- package/src/executors/run-android/run-android.impl.js +72 -0
- package/src/executors/run-android/run-android.impl.js.map +1 -0
- package/src/executors/run-android/run-android.impl.ts +110 -0
- package/src/executors/run-android/schema.d.ts +24 -0
- package/src/executors/run-android/schema.json +121 -0
- package/src/executors/run-ios/compat.d.ts +2 -0
- package/src/executors/run-ios/compat.js +6 -0
- package/src/executors/run-ios/compat.js.map +1 -0
- package/src/executors/run-ios/run-ios.impl.d.ts +6 -0
- package/src/executors/run-ios/run-ios.impl.js +78 -0
- package/src/executors/run-ios/run-ios.impl.js.map +1 -0
- package/src/executors/run-ios/run-ios.impl.ts +120 -0
- package/src/executors/run-ios/schema.d.ts +12 -0
- package/src/executors/run-ios/schema.json +119 -0
- package/src/executors/start/compat.d.ts +2 -0
- package/src/executors/start/compat.js +6 -0
- package/src/executors/start/compat.js.map +1 -0
- package/src/executors/start/lib/is-packager-running.d.ts +1 -0
- package/src/executors/start/lib/is-packager-running.js +19 -0
- package/src/executors/start/lib/is-packager-running.js.map +1 -0
- package/src/executors/start/schema.d.ts +7 -0
- package/src/executors/start/schema.json +28 -0
- package/src/executors/start/start.impl.d.ts +8 -0
- package/src/executors/start/start.impl.js +99 -0
- package/src/executors/start/start.impl.js.map +1 -0
- package/src/executors/start/start.impl.ts +120 -0
- package/src/executors/storybook/compat.d.ts +2 -0
- package/src/executors/storybook/compat.js +6 -0
- package/src/executors/storybook/compat.js.map +1 -0
- package/src/executors/storybook/schema.d.ts +7 -0
- package/src/executors/storybook/schema.json +34 -0
- package/src/executors/storybook/storybook.impl.d.ts +5 -0
- package/src/executors/storybook/storybook.impl.js +76 -0
- package/src/executors/storybook/storybook.impl.js.map +1 -0
- package/src/executors/storybook/storybook.impl.ts +105 -0
- package/src/executors/sync-deps/compat.d.ts +2 -0
- package/src/executors/sync-deps/compat.js +6 -0
- package/src/executors/sync-deps/compat.js.map +1 -0
- package/src/executors/sync-deps/schema.d.ts +4 -0
- package/src/executors/sync-deps/schema.json +28 -0
- package/src/executors/sync-deps/sync-deps.impl.d.ts +8 -0
- package/src/executors/sync-deps/sync-deps.impl.js +62 -0
- package/src/executors/sync-deps/sync-deps.impl.js.map +1 -0
- package/src/executors/sync-deps/sync-deps.impl.ts +101 -0
- package/src/generators/application/application.d.ts +5 -0
- package/src/generators/application/application.js +40 -0
- package/src/generators/application/application.js.map +1 -0
- package/src/generators/application/application.spec.ts +214 -0
- package/src/generators/application/files/app/.ruby-version +1 -0
- package/src/generators/application/files/app/Gemfile.template +6 -0
- package/src/generators/application/files/app/android/app/build.gradle.template +184 -0
- package/src/generators/application/files/app/android/app/debug.keystore +0 -0
- package/src/generators/application/files/app/android/app/proguard-rules.pro +10 -0
- package/src/generators/application/files/app/android/app/src/androidTest/java/com/__lowerCaseName__/DetoxTest.java.template +30 -0
- package/src/generators/application/files/app/android/app/src/debug/AndroidManifest.xml.template +14 -0
- package/src/generators/application/files/app/android/app/src/debug/java/com/__lowerCaseName__/ReactNativeFlipper.java.template +75 -0
- package/src/generators/application/files/app/android/app/src/main/AndroidManifest.xml.template +26 -0
- package/src/generators/application/files/app/android/app/src/main/java/com/__lowerCaseName__/MainActivity.java.template +35 -0
- package/src/generators/application/files/app/android/app/src/main/java/com/__lowerCaseName__/MainApplication.java.template +63 -0
- package/src/generators/application/files/app/android/app/src/main/res/drawable/rn_edit_text_material.xml +36 -0
- package/src/generators/application/files/app/android/app/src/main/res/mipmap-hdpi/ic_launcher.png +0 -0
- package/src/generators/application/files/app/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png +0 -0
- package/src/generators/application/files/app/android/app/src/main/res/mipmap-mdpi/ic_launcher.png +0 -0
- package/src/generators/application/files/app/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png +0 -0
- package/src/generators/application/files/app/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png +0 -0
- package/src/generators/application/files/app/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png +0 -0
- package/src/generators/application/files/app/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png +0 -0
- package/src/generators/application/files/app/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png +0 -0
- package/src/generators/application/files/app/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png +0 -0
- package/src/generators/application/files/app/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png +0 -0
- package/src/generators/application/files/app/android/app/src/main/res/values/strings.xml.template +3 -0
- package/src/generators/application/files/app/android/app/src/main/res/values/styles.xml +9 -0
- package/src/generators/application/files/app/android/app/src/main/res/xml/network_security_config.xml +7 -0
- package/src/generators/application/files/app/android/app/src/release/java/com/__lowerCaseName__/ReactNativeFlipper.java.template +20 -0
- package/src/generators/application/files/app/android/build.gradle.template +34 -0
- package/src/generators/application/files/app/android/gradle/wrapper/gradle-wrapper.jar +0 -0
- package/src/generators/application/files/app/android/gradle/wrapper/gradle-wrapper.properties +5 -0
- package/src/generators/application/files/app/android/gradle.properties +44 -0
- package/src/generators/application/files/app/android/gradlew.bat +89 -0
- package/src/generators/application/files/app/android/gradlew.template +234 -0
- package/src/generators/application/files/app/android/settings.gradle.template +7 -0
- package/src/generators/application/files/app/app.json.template +4 -0
- package/src/generators/application/files/app/babel.config.json.template +3 -0
- package/src/generators/application/files/app/ios/.xcode.env.template +12 -0
- package/src/generators/application/files/app/ios/Podfile.template +60 -0
- package/src/generators/application/files/app/ios/__className__/AppDelegate.h +6 -0
- package/src/generators/application/files/app/ios/__className__/AppDelegate.mm.template +36 -0
- package/src/generators/application/files/app/ios/__className__/Images.xcassets/AppIcon.appiconset/Contents.json +53 -0
- package/src/generators/application/files/app/ios/__className__/Images.xcassets/Contents.json +6 -0
- package/src/generators/application/files/app/ios/__className__/Info.plist.template +55 -0
- package/src/generators/application/files/app/ios/__className__/LaunchScreen.storyboard.template +47 -0
- package/src/generators/application/files/app/ios/__className__/main.m +10 -0
- package/src/generators/application/files/app/ios/__className__.xcodeproj/project.pbxproj.template +702 -0
- package/src/generators/application/files/app/ios/__className__.xcodeproj/xcshareddata/xcschemes/__className__.xcscheme.template +88 -0
- package/src/generators/application/files/app/ios/__className__.xcworkspace/contents.xcworkspacedata +10 -0
- package/src/generators/application/files/app/ios/__className__Tests/Info.plist +24 -0
- package/src/generators/application/files/app/ios/__className__Tests/__className__Tests.m +66 -0
- package/src/generators/application/files/app/metro.config.js.template +38 -0
- package/src/generators/application/files/app/package.json.template +15 -0
- package/src/generators/application/files/app/src/app/App.spec.tsx.template +9 -0
- package/src/generators/application/files/app/src/app/App.tsx.template +694 -0
- package/src/generators/application/files/app/src/main.tsx.template +4 -0
- package/src/generators/application/files/app/test-setup.ts.template +1 -0
- package/src/generators/application/files/app/tsconfig.app.json.template +9 -0
- package/src/generators/application/files/app/tsconfig.json.template +25 -0
- package/src/generators/application/lib/add-detox.d.ts +3 -0
- package/src/generators/application/lib/add-detox.js +16 -0
- package/src/generators/application/lib/add-detox.js.map +1 -0
- package/src/generators/application/lib/add-project.d.ts +3 -0
- package/src/generators/application/lib/add-project.js +83 -0
- package/src/generators/application/lib/add-project.js.map +1 -0
- package/src/generators/application/lib/create-application-files.d.ts +3 -0
- package/src/generators/application/lib/create-application-files.js +20 -0
- package/src/generators/application/lib/create-application-files.js.map +1 -0
- package/src/generators/application/lib/nomalize-options.spec.ts +138 -0
- package/src/generators/application/lib/normalize-options.d.ts +13 -0
- package/src/generators/application/lib/normalize-options.js +36 -0
- package/src/generators/application/lib/normalize-options.js.map +1 -0
- package/src/generators/application/schema.d.ts +19 -0
- package/src/generators/application/schema.json +89 -0
- package/src/generators/component/component.d.ts +5 -0
- package/src/generators/component/component.js +53 -0
- package/src/generators/component/component.js.map +1 -0
- package/src/generators/component/component.spec.ts +135 -0
- package/src/generators/component/files/__fileName__.spec.tsx__tmpl__ +11 -0
- package/src/generators/component/files/__fileName__.tsx__tmpl__ +32 -0
- package/src/generators/component/lib/add-import.d.ts +3 -0
- package/src/generators/component/lib/add-import.js +34 -0
- package/src/generators/component/lib/add-import.js.map +1 -0
- package/src/generators/component/lib/normalize-options.d.ts +8 -0
- package/src/generators/component/lib/normalize-options.js +58 -0
- package/src/generators/component/lib/normalize-options.js.map +1 -0
- package/src/generators/component/schema.d.ts +14 -0
- package/src/generators/component/schema.json +78 -0
- package/src/generators/component-story/component-story.d.ts +8 -0
- package/src/generators/component-story/component-story.js +113 -0
- package/src/generators/component-story/component-story.js.map +1 -0
- package/src/generators/component-story/component-story.spec.ts +433 -0
- package/src/generators/component-story/files/__componentFileName__.stories.__fileExt__ +24 -0
- package/src/generators/component-story/schema.d.ts +5 -0
- package/src/generators/component-story/schema.json +34 -0
- package/src/generators/init/init.d.ts +6 -0
- package/src/generators/init/init.js +58 -0
- package/src/generators/init/init.js.map +1 -0
- package/src/generators/init/init.spec.ts +81 -0
- package/src/generators/init/lib/add-git-ignore-entry.d.ts +2 -0
- package/src/generators/init/lib/add-git-ignore-entry.js +25 -0
- package/src/generators/init/lib/add-git-ignore-entry.js.map +1 -0
- package/src/generators/init/lib/gitignore-entries.d.ts +1 -0
- package/src/generators/init/lib/gitignore-entries.js +75 -0
- package/src/generators/init/lib/gitignore-entries.js.map +1 -0
- package/src/generators/init/schema.d.ts +7 -0
- package/src/generators/init/schema.json +40 -0
- package/src/generators/library/files/lib/README.md +7 -0
- package/src/generators/library/files/lib/babel.config.json.template +17 -0
- package/src/generators/library/files/lib/package.json__tmpl__ +4 -0
- package/src/generators/library/files/lib/src/index.ts__tmpl__ +0 -0
- package/src/generators/library/files/lib/test-setup.ts.template +1 -0
- package/src/generators/library/files/lib/tsconfig.json__tmpl__ +16 -0
- package/src/generators/library/files/lib/tsconfig.lib.json__tmpl__ +9 -0
- package/src/generators/library/lib/normalize-options.d.ts +13 -0
- package/src/generators/library/lib/normalize-options.js +26 -0
- package/src/generators/library/lib/normalize-options.js.map +1 -0
- package/src/generators/library/library.d.ts +5 -0
- package/src/generators/library/library.js +103 -0
- package/src/generators/library/library.js.map +1 -0
- package/src/generators/library/library.spec.ts +397 -0
- package/src/generators/library/schema.d.ts +22 -0
- package/src/generators/library/schema.json +102 -0
- package/src/generators/stories/schema.d.ts +5 -0
- package/src/generators/stories/schema.json +42 -0
- package/src/generators/stories/stories-app.spec.ts +145 -0
- package/src/generators/stories/stories-lib.spec.ts +113 -0
- package/src/generators/stories/stories.d.ts +6 -0
- package/src/generators/stories/stories.js +63 -0
- package/src/generators/stories/stories.js.map +1 -0
- package/src/generators/storybook-configuration/configuration.d.ts +5 -0
- package/src/generators/storybook-configuration/configuration.js +60 -0
- package/src/generators/storybook-configuration/configuration.js.map +1 -0
- package/src/generators/storybook-configuration/configuration.spec.ts +146 -0
- package/src/generators/storybook-configuration/files/app/storybook.ts.template +9 -0
- package/src/generators/storybook-configuration/files/app/toggle-storybook.tsx.template +114 -0
- package/src/generators/storybook-configuration/files/root/story-loader.js.template +13 -0
- package/src/generators/storybook-configuration/lib/add-resolver-main-fields-to-metro-config.d.ts +6 -0
- package/src/generators/storybook-configuration/lib/add-resolver-main-fields-to-metro-config.js +26 -0
- package/src/generators/storybook-configuration/lib/add-resolver-main-fields-to-metro-config.js.map +1 -0
- package/src/generators/storybook-configuration/lib/add-resolver-main-fields-to-metro-config.spec.ts +161 -0
- package/src/generators/storybook-configuration/lib/create-storybook-files.d.ts +6 -0
- package/src/generators/storybook-configuration/lib/create-storybook-files.js +45 -0
- package/src/generators/storybook-configuration/lib/create-storybook-files.js.map +1 -0
- package/src/generators/storybook-configuration/lib/replace-app-import-with-storybook-toggle.d.ts +7 -0
- package/src/generators/storybook-configuration/lib/replace-app-import-with-storybook-toggle.js +30 -0
- package/src/generators/storybook-configuration/lib/replace-app-import-with-storybook-toggle.js.map +1 -0
- package/src/generators/storybook-configuration/lib/replace-app-import-with-storybook-toggle.spec.ts +65 -0
- package/src/generators/storybook-configuration/schema.d.ts +11 -0
- package/src/generators/storybook-configuration/schema.json +66 -0
- package/src/generators/upgrade-native/lib/create-native-files.d.ts +3 -0
- package/src/generators/upgrade-native/lib/create-native-files.js +15 -0
- package/src/generators/upgrade-native/lib/create-native-files.js.map +1 -0
- package/src/generators/upgrade-native/lib/normalize-options.d.ts +12 -0
- package/src/generators/upgrade-native/lib/normalize-options.js +28 -0
- package/src/generators/upgrade-native/lib/normalize-options.js.map +1 -0
- package/src/generators/upgrade-native/schema.d.ts +9 -0
- package/src/generators/upgrade-native/schema.json +41 -0
- package/src/generators/upgrade-native/upgrade-native.d.ts +9 -0
- package/src/generators/upgrade-native/upgrade-native.js +33 -0
- package/src/generators/upgrade-native/upgrade-native.js.map +1 -0
- package/src/migrations/update-12-10-0/add-react-native-svg-12-10-0.d.ts +8 -0
- package/src/migrations/update-12-10-0/add-react-native-svg-12-10-0.js +63 -0
- package/src/migrations/update-12-10-0/add-react-native-svg-12-10-0.js.map +1 -0
- package/src/migrations/update-12-10-0/add-react-native-svg-12-10-0.spec.ts +79 -0
- package/src/migrations/update-12-5-0/update-jest-for-react-native.d.ts +2 -0
- package/src/migrations/update-12-5-0/update-jest-for-react-native.js +62 -0
- package/src/migrations/update-12-5-0/update-jest-for-react-native.js.map +1 -0
- package/src/migrations/update-13-5-0/add-babel-config-root-13-5-0.d.ts +2 -0
- package/src/migrations/update-13-5-0/add-babel-config-root-13-5-0.js +22 -0
- package/src/migrations/update-13-5-0/add-babel-config-root-13-5-0.js.map +1 -0
- package/src/migrations/update-13-5-0/add-babel-config-root-13-5-0.spec.ts +48 -0
- package/src/migrations/update-13-5-0/update-react-native-typing-svg-13-5-0.d.ts +6 -0
- package/src/migrations/update-13-5-0/update-react-native-typing-svg-13-5-0.js +41 -0
- package/src/migrations/update-13-5-0/update-react-native-typing-svg-13-5-0.js.map +1 -0
- package/src/migrations/update-13-5-0/update-react-native-typing-svg-13-5-0.spec.ts +61 -0
- package/src/migrations/update-14-0-0/add-project-root-metro-config-14-0-0.d.ts +6 -0
- package/src/migrations/update-14-0-0/add-project-root-metro-config-14-0-0.js +33 -0
- package/src/migrations/update-14-0-0/add-project-root-metro-config-14-0-0.js.map +1 -0
- package/src/migrations/update-14-0-0/add-project-root-metro-config-14-0-0.spec.ts +192 -0
- package/src/migrations/update-14-0-0/update-entry-file-bundle-14-0-0.d.ts +5 -0
- package/src/migrations/update-14-0-0/update-entry-file-bundle-14-0-0.js +39 -0
- package/src/migrations/update-14-0-0/update-entry-file-bundle-14-0-0.js.map +1 -0
- package/src/migrations/update-14-0-0/update-entry-file-bundle-14-0-0.spec.ts +84 -0
- package/src/migrations/update-14-0-2/change-main-to-class-name-14-0-2.d.ts +5 -0
- package/src/migrations/update-14-0-2/change-main-to-class-name-14-0-2.js +42 -0
- package/src/migrations/update-14-0-2/change-main-to-class-name-14-0-2.js.map +1 -0
- package/src/migrations/update-14-0-2/change-main-to-class-name-14-0-2.spec.ts +48 -0
- package/src/migrations/update-14-2-1/rename-blockList-metro-config.d.ts +6 -0
- package/src/migrations/update-14-2-1/rename-blockList-metro-config.js +33 -0
- package/src/migrations/update-14-2-1/rename-blockList-metro-config.js.map +1 -0
- package/src/migrations/update-14-2-1/rename-blockList-metro-config.spec.ts +190 -0
- package/src/migrations/update-14-5-5/add-exclude-sync-deps.d.ts +5 -0
- package/src/migrations/update-14-5-5/add-exclude-sync-deps.js +26 -0
- package/src/migrations/update-14-5-5/add-exclude-sync-deps.js.map +1 -0
- package/src/migrations/update-14-5-5/add-exclude-sync-deps.spec.ts +39 -0
- package/src/migrations/update-14-5-8/change-searchDir-storybook.d.ts +5 -0
- package/src/migrations/update-14-5-8/change-searchDir-storybook.js +26 -0
- package/src/migrations/update-14-5-8/change-searchDir-storybook.js.map +1 -0
- package/src/migrations/update-14-5-8/change-searchDir-storybook.spec.ts +39 -0
- package/src/migrations/update-14-6-0/remove-jest-transform.d.ts +5 -0
- package/src/migrations/update-14-6-0/remove-jest-transform.js +58 -0
- package/src/migrations/update-14-6-0/remove-jest-transform.js.map +1 -0
- package/src/migrations/update-14-6-0/remove-jest-transform.spec.ts +109 -0
- package/src/migrations/update-15-0-0/add-babel-inputs.d.ts +2 -0
- package/src/migrations/update-15-0-0/add-babel-inputs.js +13 -0
- package/src/migrations/update-15-0-0/add-babel-inputs.js.map +1 -0
- package/src/migrations/update-15-0-0/add-babel-inputs.spec.ts +73 -0
- package/src/migrations/update-15-9-1/add-build-ios-target.d.ts +5 -0
- package/src/migrations/update-15-9-1/add-build-ios-target.js +34 -0
- package/src/migrations/update-15-9-1/add-build-ios-target.js.map +1 -0
- package/src/migrations/update-15-9-1/add-build-ios-target.spec.ts +36 -0
- package/src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages.d.ts +2 -0
- package/src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages.js +13 -0
- package/src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages.js.map +1 -0
- package/src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages.spec.ts +37 -0
- package/src/utils/add-jest.d.ts +2 -0
- package/src/utils/add-jest.js +38 -0
- package/src/utils/add-jest.js.map +1 -0
- package/src/utils/add-linting.d.ts +12 -0
- package/src/utils/add-linting.js +41 -0
- package/src/utils/add-linting.js.map +1 -0
- package/src/utils/add-linting.spec.ts +42 -0
- package/src/utils/chmod-android-gradle-files.d.ts +3 -0
- package/src/utils/chmod-android-gradle-files.js +24 -0
- package/src/utils/chmod-android-gradle-files.js.map +1 -0
- package/src/utils/ensure-node-modules-symlink.d.ts +9 -0
- package/src/utils/ensure-node-modules-symlink.js +29 -0
- package/src/utils/ensure-node-modules-symlink.js.map +1 -0
- package/src/utils/ensure-node-modules-symlink.spec.ts +108 -0
- package/src/utils/find-all-npm-dependencies.d.ts +2 -0
- package/src/utils/find-all-npm-dependencies.js +26 -0
- package/src/utils/find-all-npm-dependencies.js.map +1 -0
- package/src/utils/find-all-npm-dependencies.spec.ts +95 -0
- package/src/utils/format-file.d.ts +1 -0
- package/src/utils/format-file.js +17 -0
- package/src/utils/format-file.js.map +1 -0
- package/src/utils/get-cli-options.d.ts +8 -0
- package/src/utils/get-cli-options.js +31 -0
- package/src/utils/get-cli-options.js.map +1 -0
- package/src/utils/pod-install-task.d.ts +8 -0
- package/src/utils/pod-install-task.js +62 -0
- package/src/utils/pod-install-task.js.map +1 -0
- package/src/utils/symlink-task.d.ts +2 -0
- package/src/utils/symlink-task.js +19 -0
- package/src/utils/symlink-task.js.map +1 -0
- package/src/utils/testing-generators.d.ts +3 -0
- package/src/utils/testing-generators.js +36 -0
- package/src/utils/testing-generators.js.map +1 -0
- package/src/utils/versions.d.ts +20 -0
- package/src/utils/versions.js +24 -0
- package/src/utils/versions.js.map +1 -0
- package/typings/svg.d.ts +7 -0
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 2,
|
|
3
|
+
"outputCapture": "direct-nodejs",
|
|
4
|
+
"title": "React Native Storybook Load Stories",
|
|
5
|
+
"cli": "nx",
|
|
6
|
+
"description": "Load stories for react native.",
|
|
7
|
+
"type": "object",
|
|
8
|
+
"properties": {
|
|
9
|
+
"searchDir": {
|
|
10
|
+
"type": "array",
|
|
11
|
+
"items": {
|
|
12
|
+
"type": "string"
|
|
13
|
+
},
|
|
14
|
+
"default": [],
|
|
15
|
+
"description": "The directory or directories, relative to the project root, to search for files in."
|
|
16
|
+
},
|
|
17
|
+
"outputFile": {
|
|
18
|
+
"type": "string",
|
|
19
|
+
"description": "The output file that will be written. It is relative to the project directory.",
|
|
20
|
+
"default": "./.storybook/story-loader.js"
|
|
21
|
+
},
|
|
22
|
+
"pattern": {
|
|
23
|
+
"type": "string",
|
|
24
|
+
"description": "The pattern of files to look at. It can be a specific file, or any valid glob. Note: if using the CLI, globs with `**/*...` must be escaped with quotes",
|
|
25
|
+
"default": "**/*.stories.@(js|jsx|ts|tsx|md)"
|
|
26
|
+
},
|
|
27
|
+
"silent": {
|
|
28
|
+
"type": "boolean",
|
|
29
|
+
"description": "Silences output.",
|
|
30
|
+
"default": false
|
|
31
|
+
}
|
|
32
|
+
},
|
|
33
|
+
"required": ["searchDir", "outputFile", "pattern"]
|
|
34
|
+
}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
const path_1 = require("path");
|
|
5
|
+
const devkit_1 = require("@nx/devkit");
|
|
6
|
+
const fileutils_1 = require("@nx/workspace/src/utilities/fileutils");
|
|
7
|
+
const chalk = require("chalk");
|
|
8
|
+
const child_process_1 = require("child_process");
|
|
9
|
+
const sync_deps_impl_1 = require("../sync-deps/sync-deps.impl");
|
|
10
|
+
let childProcess;
|
|
11
|
+
function reactNatievStorybookExecutor(options, context) {
|
|
12
|
+
return tslib_1.__asyncGenerator(this, arguments, function* reactNatievStorybookExecutor_1() {
|
|
13
|
+
const projectRoot = context.projectsConfigurations.projects[context.projectName].root;
|
|
14
|
+
devkit_1.logger.info(`${chalk.bold.cyan('info')} To see your Storybook stories on the device, you should start your mobile app for the <platform> of your choice (typically ios or android).`);
|
|
15
|
+
// add storybook addons to app's package.json
|
|
16
|
+
const packageJsonPath = (0, path_1.join)(context.root, projectRoot, 'package.json');
|
|
17
|
+
if ((0, fileutils_1.fileExists)(packageJsonPath))
|
|
18
|
+
(0, sync_deps_impl_1.displayNewlyAddedDepsMessage)(context.projectName, yield tslib_1.__await((0, sync_deps_impl_1.syncDeps)(context.projectName, projectRoot, context.root, context.projectGraph, [
|
|
19
|
+
'@storybook/addon-ondevice-actions',
|
|
20
|
+
'@storybook/addon-ondevice-backgrounds',
|
|
21
|
+
'@storybook/addon-ondevice-controls',
|
|
22
|
+
'@storybook/addon-ondevice-notes',
|
|
23
|
+
])));
|
|
24
|
+
try {
|
|
25
|
+
yield tslib_1.__await(runCliStorybook(context.root, options));
|
|
26
|
+
yield yield tslib_1.__await({ success: true });
|
|
27
|
+
}
|
|
28
|
+
finally {
|
|
29
|
+
if (childProcess) {
|
|
30
|
+
childProcess.kill();
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
exports.default = reactNatievStorybookExecutor;
|
|
36
|
+
function runCliStorybook(workspaceRoot, options) {
|
|
37
|
+
return new Promise((resolve, reject) => {
|
|
38
|
+
childProcess = (0, child_process_1.fork)((0, path_1.join)(workspaceRoot, './node_modules/react-native-storybook-loader/out/rnstl-cli.js'), createStorybookOptions(options), {
|
|
39
|
+
cwd: workspaceRoot,
|
|
40
|
+
});
|
|
41
|
+
// Ensure the child process is killed when the parent exits
|
|
42
|
+
process.on('exit', () => childProcess.kill());
|
|
43
|
+
process.on('SIGTERM', () => childProcess.kill());
|
|
44
|
+
childProcess.on('error', (err) => {
|
|
45
|
+
reject(err);
|
|
46
|
+
});
|
|
47
|
+
childProcess.on('exit', (code) => {
|
|
48
|
+
if (code === 0) {
|
|
49
|
+
resolve(code);
|
|
50
|
+
}
|
|
51
|
+
else {
|
|
52
|
+
reject(code);
|
|
53
|
+
}
|
|
54
|
+
});
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
function createStorybookOptions(options) {
|
|
58
|
+
return Object.keys(options).reduce((acc, k) => {
|
|
59
|
+
const v = options[k];
|
|
60
|
+
if (typeof v === 'boolean') {
|
|
61
|
+
if (v === true) {
|
|
62
|
+
acc.push(`--${k}`);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
else if (Array.isArray(v)) {
|
|
66
|
+
v.forEach((value) => {
|
|
67
|
+
acc.push(`--${k}`, value);
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
else {
|
|
71
|
+
acc.push(`--${k}`, v);
|
|
72
|
+
}
|
|
73
|
+
return acc;
|
|
74
|
+
}, []);
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=storybook.impl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"storybook.impl.js","sourceRoot":"","sources":["../../../../../../packages/react-native/src/executors/storybook/storybook.impl.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import { join } from 'path';
|
|
2
|
+
import { ExecutorContext, logger } from '@nx/devkit';
|
|
3
|
+
import { fileExists } from '@nx/workspace/src/utilities/fileutils';
|
|
4
|
+
import * as chalk from 'chalk';
|
|
5
|
+
|
|
6
|
+
import { ReactNativeStorybookOptions } from './schema';
|
|
7
|
+
import { ChildProcess, fork } from 'child_process';
|
|
8
|
+
import {
|
|
9
|
+
displayNewlyAddedDepsMessage,
|
|
10
|
+
syncDeps,
|
|
11
|
+
} from '../sync-deps/sync-deps.impl';
|
|
12
|
+
|
|
13
|
+
let childProcess: ChildProcess;
|
|
14
|
+
|
|
15
|
+
export default async function* reactNatievStorybookExecutor(
|
|
16
|
+
options: ReactNativeStorybookOptions,
|
|
17
|
+
context: ExecutorContext
|
|
18
|
+
): AsyncGenerator<{ success: boolean }> {
|
|
19
|
+
const projectRoot =
|
|
20
|
+
context.projectsConfigurations.projects[context.projectName].root;
|
|
21
|
+
logger.info(
|
|
22
|
+
`${chalk.bold.cyan(
|
|
23
|
+
'info'
|
|
24
|
+
)} To see your Storybook stories on the device, you should start your mobile app for the <platform> of your choice (typically ios or android).`
|
|
25
|
+
);
|
|
26
|
+
|
|
27
|
+
// add storybook addons to app's package.json
|
|
28
|
+
const packageJsonPath = join(context.root, projectRoot, 'package.json');
|
|
29
|
+
if (fileExists(packageJsonPath))
|
|
30
|
+
displayNewlyAddedDepsMessage(
|
|
31
|
+
context.projectName,
|
|
32
|
+
await syncDeps(
|
|
33
|
+
context.projectName,
|
|
34
|
+
projectRoot,
|
|
35
|
+
context.root,
|
|
36
|
+
context.projectGraph,
|
|
37
|
+
[
|
|
38
|
+
'@storybook/addon-ondevice-actions',
|
|
39
|
+
'@storybook/addon-ondevice-backgrounds',
|
|
40
|
+
'@storybook/addon-ondevice-controls',
|
|
41
|
+
'@storybook/addon-ondevice-notes',
|
|
42
|
+
]
|
|
43
|
+
)
|
|
44
|
+
);
|
|
45
|
+
|
|
46
|
+
try {
|
|
47
|
+
await runCliStorybook(context.root, options);
|
|
48
|
+
yield { success: true };
|
|
49
|
+
} finally {
|
|
50
|
+
if (childProcess) {
|
|
51
|
+
childProcess.kill();
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
function runCliStorybook(
|
|
57
|
+
workspaceRoot: string,
|
|
58
|
+
options: ReactNativeStorybookOptions
|
|
59
|
+
) {
|
|
60
|
+
return new Promise((resolve, reject) => {
|
|
61
|
+
childProcess = fork(
|
|
62
|
+
join(
|
|
63
|
+
workspaceRoot,
|
|
64
|
+
'./node_modules/react-native-storybook-loader/out/rnstl-cli.js'
|
|
65
|
+
),
|
|
66
|
+
createStorybookOptions(options),
|
|
67
|
+
{
|
|
68
|
+
cwd: workspaceRoot,
|
|
69
|
+
}
|
|
70
|
+
);
|
|
71
|
+
|
|
72
|
+
// Ensure the child process is killed when the parent exits
|
|
73
|
+
process.on('exit', () => childProcess.kill());
|
|
74
|
+
process.on('SIGTERM', () => childProcess.kill());
|
|
75
|
+
|
|
76
|
+
childProcess.on('error', (err) => {
|
|
77
|
+
reject(err);
|
|
78
|
+
});
|
|
79
|
+
childProcess.on('exit', (code) => {
|
|
80
|
+
if (code === 0) {
|
|
81
|
+
resolve(code);
|
|
82
|
+
} else {
|
|
83
|
+
reject(code);
|
|
84
|
+
}
|
|
85
|
+
});
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
function createStorybookOptions(options) {
|
|
90
|
+
return Object.keys(options).reduce((acc, k) => {
|
|
91
|
+
const v = options[k];
|
|
92
|
+
if (typeof v === 'boolean') {
|
|
93
|
+
if (v === true) {
|
|
94
|
+
acc.push(`--${k}`);
|
|
95
|
+
}
|
|
96
|
+
} else if (Array.isArray(v)) {
|
|
97
|
+
v.forEach((value) => {
|
|
98
|
+
acc.push(`--${k}`, value);
|
|
99
|
+
});
|
|
100
|
+
} else {
|
|
101
|
+
acc.push(`--${k}`, v);
|
|
102
|
+
}
|
|
103
|
+
return acc;
|
|
104
|
+
}, []);
|
|
105
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const devkit_1 = require("@nx/devkit");
|
|
4
|
+
const sync_deps_impl_1 = require("./sync-deps.impl");
|
|
5
|
+
exports.default = (0, devkit_1.convertNxExecutor)(sync_deps_impl_1.default);
|
|
6
|
+
//# sourceMappingURL=compat.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"compat.js","sourceRoot":"","sources":["../../../../../../packages/react-native/src/executors/sync-deps/compat.ts"],"names":[],"mappings":";;AAAA,uCAA+C;AAE/C,qDAAgD;AAEhD,kBAAe,IAAA,0BAAiB,EAAC,wBAAgB,CAAC,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 2,
|
|
3
|
+
"outputCapture": "direct-nodejs",
|
|
4
|
+
"cli": "nx",
|
|
5
|
+
"$id": "NxReactNativeSyncDeps",
|
|
6
|
+
"$schema": "http://json-schema.org/schema",
|
|
7
|
+
"title": "Sync Deps for React Native",
|
|
8
|
+
"description": "Updates `package.json` with project dependencies.",
|
|
9
|
+
"type": "object",
|
|
10
|
+
"properties": {
|
|
11
|
+
"include": {
|
|
12
|
+
"type": "array",
|
|
13
|
+
"items": {
|
|
14
|
+
"type": "string"
|
|
15
|
+
},
|
|
16
|
+
"default": [],
|
|
17
|
+
"description": "An array of additional npm packages to include."
|
|
18
|
+
},
|
|
19
|
+
"exclude": {
|
|
20
|
+
"type": "array",
|
|
21
|
+
"items": {
|
|
22
|
+
"type": "string"
|
|
23
|
+
},
|
|
24
|
+
"default": [],
|
|
25
|
+
"description": "An array of npm packages to exclude."
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ExecutorContext, ProjectGraph } from '@nx/devkit';
|
|
2
|
+
import { ReactNativeSyncDepsOptions } from './schema';
|
|
3
|
+
export interface ReactNativeSyncDepsOutput {
|
|
4
|
+
success: boolean;
|
|
5
|
+
}
|
|
6
|
+
export default function syncDepsExecutor(options: ReactNativeSyncDepsOptions, context: ExecutorContext): AsyncGenerator<ReactNativeSyncDepsOutput>;
|
|
7
|
+
export declare function syncDeps(projectName: string, projectRoot: string, workspaceRoot: string, projectGraph: ProjectGraph, include?: string[], exclude?: string[]): Promise<string[]>;
|
|
8
|
+
export declare function displayNewlyAddedDepsMessage(projectName: string, deps: string[]): void;
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.displayNewlyAddedDepsMessage = exports.syncDeps = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const path_1 = require("path");
|
|
6
|
+
const chalk = require("chalk");
|
|
7
|
+
const devkit_1 = require("@nx/devkit");
|
|
8
|
+
const find_all_npm_dependencies_1 = require("../../utils/find-all-npm-dependencies");
|
|
9
|
+
function syncDepsExecutor(options, context) {
|
|
10
|
+
return tslib_1.__asyncGenerator(this, arguments, function* syncDepsExecutor_1() {
|
|
11
|
+
const projectRoot = context.projectsConfigurations.projects[context.projectName].root;
|
|
12
|
+
displayNewlyAddedDepsMessage(context.projectName, yield tslib_1.__await(syncDeps(context.projectName, projectRoot, context.root, context.projectGraph, typeof options.include === 'string'
|
|
13
|
+
? options.include.split(',')
|
|
14
|
+
: options.include, typeof options.exclude === 'string'
|
|
15
|
+
? options.exclude.split(',')
|
|
16
|
+
: options.exclude)));
|
|
17
|
+
yield yield tslib_1.__await({ success: true });
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
exports.default = syncDepsExecutor;
|
|
21
|
+
function syncDeps(projectName, projectRoot, workspaceRoot, projectGraph, include = [], exclude = []) {
|
|
22
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
23
|
+
let npmDeps = (0, find_all_npm_dependencies_1.findAllNpmDependencies)(projectGraph, projectName);
|
|
24
|
+
const packageJsonPath = (0, path_1.join)(workspaceRoot, projectRoot, 'package.json');
|
|
25
|
+
const packageJson = (0, devkit_1.readJsonFile)(packageJsonPath);
|
|
26
|
+
const newDeps = [];
|
|
27
|
+
let updated = false;
|
|
28
|
+
if (!packageJson.dependencies) {
|
|
29
|
+
packageJson.dependencies = {};
|
|
30
|
+
updated = true;
|
|
31
|
+
}
|
|
32
|
+
if (include && include.length) {
|
|
33
|
+
npmDeps.push(...include);
|
|
34
|
+
}
|
|
35
|
+
if (exclude && exclude.length) {
|
|
36
|
+
npmDeps = npmDeps.filter((dep) => !exclude.includes(dep));
|
|
37
|
+
}
|
|
38
|
+
npmDeps.forEach((dep) => {
|
|
39
|
+
if (!packageJson.dependencies[dep]) {
|
|
40
|
+
packageJson.dependencies[dep] = '*';
|
|
41
|
+
newDeps.push(dep);
|
|
42
|
+
updated = true;
|
|
43
|
+
}
|
|
44
|
+
});
|
|
45
|
+
if (updated) {
|
|
46
|
+
(0, devkit_1.writeJsonFile)(packageJsonPath, packageJson);
|
|
47
|
+
}
|
|
48
|
+
return newDeps;
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
exports.syncDeps = syncDeps;
|
|
52
|
+
function displayNewlyAddedDepsMessage(projectName, deps) {
|
|
53
|
+
if (deps.length > 0) {
|
|
54
|
+
devkit_1.logger.info(`${chalk.bold.cyan('info')} Added entries to 'package.json' for '${projectName}' (for autolink):
|
|
55
|
+
${deps.map((d) => chalk.bold.cyan(`"${d}": "*"`)).join('\n ')}`);
|
|
56
|
+
}
|
|
57
|
+
else {
|
|
58
|
+
devkit_1.logger.info(`${chalk.bold.cyan('info')} Dependencies for '${projectName}' are up to date! No changes made.`);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
exports.displayNewlyAddedDepsMessage = displayNewlyAddedDepsMessage;
|
|
62
|
+
//# sourceMappingURL=sync-deps.impl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sync-deps.impl.js","sourceRoot":"","sources":["../../../../../../packages/react-native/src/executors/sync-deps/sync-deps.impl.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import { join } from 'path';
|
|
2
|
+
import * as chalk from 'chalk';
|
|
3
|
+
import {
|
|
4
|
+
ExecutorContext,
|
|
5
|
+
logger,
|
|
6
|
+
ProjectGraph,
|
|
7
|
+
readJsonFile,
|
|
8
|
+
writeJsonFile,
|
|
9
|
+
} from '@nx/devkit';
|
|
10
|
+
|
|
11
|
+
import { findAllNpmDependencies } from '../../utils/find-all-npm-dependencies';
|
|
12
|
+
|
|
13
|
+
import { ReactNativeSyncDepsOptions } from './schema';
|
|
14
|
+
|
|
15
|
+
export interface ReactNativeSyncDepsOutput {
|
|
16
|
+
success: boolean;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export default async function* syncDepsExecutor(
|
|
20
|
+
options: ReactNativeSyncDepsOptions,
|
|
21
|
+
context: ExecutorContext
|
|
22
|
+
): AsyncGenerator<ReactNativeSyncDepsOutput> {
|
|
23
|
+
const projectRoot =
|
|
24
|
+
context.projectsConfigurations.projects[context.projectName].root;
|
|
25
|
+
displayNewlyAddedDepsMessage(
|
|
26
|
+
context.projectName,
|
|
27
|
+
await syncDeps(
|
|
28
|
+
context.projectName,
|
|
29
|
+
projectRoot,
|
|
30
|
+
context.root,
|
|
31
|
+
context.projectGraph,
|
|
32
|
+
typeof options.include === 'string'
|
|
33
|
+
? options.include.split(',')
|
|
34
|
+
: options.include,
|
|
35
|
+
typeof options.exclude === 'string'
|
|
36
|
+
? options.exclude.split(',')
|
|
37
|
+
: options.exclude
|
|
38
|
+
)
|
|
39
|
+
);
|
|
40
|
+
|
|
41
|
+
yield { success: true };
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
export async function syncDeps(
|
|
45
|
+
projectName: string,
|
|
46
|
+
projectRoot: string,
|
|
47
|
+
workspaceRoot: string,
|
|
48
|
+
projectGraph: ProjectGraph,
|
|
49
|
+
include: string[] = [],
|
|
50
|
+
exclude: string[] = []
|
|
51
|
+
): Promise<string[]> {
|
|
52
|
+
let npmDeps = findAllNpmDependencies(projectGraph, projectName);
|
|
53
|
+
const packageJsonPath = join(workspaceRoot, projectRoot, 'package.json');
|
|
54
|
+
const packageJson = readJsonFile(packageJsonPath);
|
|
55
|
+
const newDeps = [];
|
|
56
|
+
let updated = false;
|
|
57
|
+
|
|
58
|
+
if (!packageJson.dependencies) {
|
|
59
|
+
packageJson.dependencies = {};
|
|
60
|
+
updated = true;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
if (include && include.length) {
|
|
64
|
+
npmDeps.push(...include);
|
|
65
|
+
}
|
|
66
|
+
if (exclude && exclude.length) {
|
|
67
|
+
npmDeps = npmDeps.filter((dep) => !exclude.includes(dep));
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
npmDeps.forEach((dep) => {
|
|
71
|
+
if (!packageJson.dependencies[dep]) {
|
|
72
|
+
packageJson.dependencies[dep] = '*';
|
|
73
|
+
newDeps.push(dep);
|
|
74
|
+
updated = true;
|
|
75
|
+
}
|
|
76
|
+
});
|
|
77
|
+
|
|
78
|
+
if (updated) {
|
|
79
|
+
writeJsonFile(packageJsonPath, packageJson);
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
return newDeps;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
export function displayNewlyAddedDepsMessage(
|
|
86
|
+
projectName: string,
|
|
87
|
+
deps: string[]
|
|
88
|
+
) {
|
|
89
|
+
if (deps.length > 0) {
|
|
90
|
+
logger.info(`${chalk.bold.cyan(
|
|
91
|
+
'info'
|
|
92
|
+
)} Added entries to 'package.json' for '${projectName}' (for autolink):
|
|
93
|
+
${deps.map((d) => chalk.bold.cyan(`"${d}": "*"`)).join('\n ')}`);
|
|
94
|
+
} else {
|
|
95
|
+
logger.info(
|
|
96
|
+
`${chalk.bold.cyan(
|
|
97
|
+
'info'
|
|
98
|
+
)} Dependencies for '${projectName}' are up to date! No changes made.`
|
|
99
|
+
);
|
|
100
|
+
}
|
|
101
|
+
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { GeneratorCallback, Tree } from '@nx/devkit';
|
|
2
|
+
import { Schema } from './schema';
|
|
3
|
+
export declare function reactNativeApplicationGenerator(host: Tree, schema: Schema): Promise<GeneratorCallback>;
|
|
4
|
+
export default reactNativeApplicationGenerator;
|
|
5
|
+
export declare const reactNativeApplicationSchematic: (generatorOptions: Schema) => (tree: any, context: any) => Promise<any>;
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.reactNativeApplicationSchematic = exports.reactNativeApplicationGenerator = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const path_1 = require("path");
|
|
6
|
+
const devkit_1 = require("@nx/devkit");
|
|
7
|
+
const pod_install_task_1 = require("../../utils/pod-install-task");
|
|
8
|
+
const symlink_task_1 = require("../../utils/symlink-task");
|
|
9
|
+
const add_linting_1 = require("../../utils/add-linting");
|
|
10
|
+
const add_jest_1 = require("../../utils/add-jest");
|
|
11
|
+
const chmod_android_gradle_files_1 = require("../../utils/chmod-android-gradle-files");
|
|
12
|
+
const normalize_options_1 = require("./lib/normalize-options");
|
|
13
|
+
const init_1 = require("../init/init");
|
|
14
|
+
const add_project_1 = require("./lib/add-project");
|
|
15
|
+
const create_application_files_1 = require("./lib/create-application-files");
|
|
16
|
+
const add_detox_1 = require("./lib/add-detox");
|
|
17
|
+
function reactNativeApplicationGenerator(host, schema) {
|
|
18
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
19
|
+
const options = (0, normalize_options_1.normalizeOptions)(host, schema);
|
|
20
|
+
(0, create_application_files_1.createApplicationFiles)(host, options);
|
|
21
|
+
(0, add_project_1.addProject)(host, options);
|
|
22
|
+
const initTask = yield (0, init_1.default)(host, Object.assign(Object.assign({}, options), { skipFormat: true }));
|
|
23
|
+
const lintTask = yield (0, add_linting_1.addLinting)(host, Object.assign(Object.assign({}, options), { projectRoot: options.appProjectRoot, tsConfigPaths: [
|
|
24
|
+
(0, devkit_1.joinPathFragments)(options.appProjectRoot, 'tsconfig.app.json'),
|
|
25
|
+
] }));
|
|
26
|
+
const jestTask = yield (0, add_jest_1.addJest)(host, options.unitTestRunner, options.projectName, options.appProjectRoot, options.js, options.skipPackageJson);
|
|
27
|
+
const detoxTask = yield (0, add_detox_1.addDetox)(host, options);
|
|
28
|
+
const symlinkTask = (0, symlink_task_1.runSymlink)(host.root, options.appProjectRoot);
|
|
29
|
+
const podInstallTask = (0, pod_install_task_1.runPodInstall)((0, path_1.join)(host.root, options.iosProjectRoot), options.install);
|
|
30
|
+
const chmodTaskGradlew = (0, chmod_android_gradle_files_1.chmodAndroidGradlewFilesTask)((0, path_1.join)(host.root, options.androidProjectRoot));
|
|
31
|
+
if (!options.skipFormat) {
|
|
32
|
+
yield (0, devkit_1.formatFiles)(host);
|
|
33
|
+
}
|
|
34
|
+
return (0, devkit_1.runTasksInSerial)(initTask, lintTask, jestTask, detoxTask, symlinkTask, podInstallTask, chmodTaskGradlew);
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
exports.reactNativeApplicationGenerator = reactNativeApplicationGenerator;
|
|
38
|
+
exports.default = reactNativeApplicationGenerator;
|
|
39
|
+
exports.reactNativeApplicationSchematic = (0, devkit_1.convertNxGenerator)(reactNativeApplicationGenerator);
|
|
40
|
+
//# sourceMappingURL=application.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"application.js","sourceRoot":"","sources":["../../../../../../packages/react-native/src/generators/application/application.ts"],"names":[],"mappings":";;;;AAAA,+BAA4B;AAE5B,uCAOoB;AAEpB,mEAA6D;AAC7D,2DAAsD;AACtD,yDAAqD;AACrD,mDAA+C;AAC/C,uFAAsF;AAEtF,+DAA2D;AAC3D,uCAAyC;AACzC,mDAA+C;AAC/C,6EAAwE;AACxE,+CAA2C;AAG3C,SAAsB,+BAA+B,CACnD,IAAU,EACV,MAAc;;QAEd,MAAM,OAAO,GAAG,IAAA,oCAAgB,EAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAE/C,IAAA,iDAAsB,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACtC,IAAA,wBAAU,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAE1B,MAAM,QAAQ,GAAG,MAAM,IAAA,cAAa,EAAC,IAAI,kCAAO,OAAO,KAAE,UAAU,EAAE,IAAI,IAAG,CAAC;QAC7E,MAAM,QAAQ,GAAG,MAAM,IAAA,wBAAU,EAAC,IAAI,kCACjC,OAAO,KACV,WAAW,EAAE,OAAO,CAAC,cAAc,EACnC,aAAa,EAAE;gBACb,IAAA,0BAAiB,EAAC,OAAO,CAAC,cAAc,EAAE,mBAAmB,CAAC;aAC/D,IACD,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,IAAA,kBAAO,EAC5B,IAAI,EACJ,OAAO,CAAC,cAAc,EACtB,OAAO,CAAC,WAAW,EACnB,OAAO,CAAC,cAAc,EACtB,OAAO,CAAC,EAAE,EACV,OAAO,CAAC,eAAe,CACxB,CAAC;QACF,MAAM,SAAS,GAAG,MAAM,IAAA,oBAAQ,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAChD,MAAM,WAAW,GAAG,IAAA,yBAAU,EAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;QAClE,MAAM,cAAc,GAAG,IAAA,gCAAa,EAClC,IAAA,WAAI,EAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,cAAc,CAAC,EACvC,OAAO,CAAC,OAAO,CAChB,CAAC;QACF,MAAM,gBAAgB,GAAG,IAAA,yDAA4B,EACnD,IAAA,WAAI,EAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAC5C,CAAC;QAEF,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE;YACvB,MAAM,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;SACzB;QAED,OAAO,IAAA,yBAAgB,EACrB,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,WAAW,EACX,cAAc,EACd,gBAAgB,CACjB,CAAC;IACJ,CAAC;CAAA;AAjDD,0EAiDC;AAED,kBAAe,+BAA+B,CAAC;AAClC,QAAA,+BAA+B,GAAG,IAAA,2BAAkB,EAC/D,+BAA+B,CAChC,CAAC"}
|