|
| 1 | +#!/bin/sh |
| 2 | + |
| 3 | +if [ $# -eq 3 ]; then |
| 4 | + echo "\033[1;33mUpdating react-native-radar to $1, using iOS SDK $2 and Android SDK $3\033[0m" |
| 5 | + npm_version=$1 |
| 6 | + ios_version=$2 |
| 7 | + android_version=$3 |
| 8 | +elif [ $# -eq 1 ]; then |
| 9 | + echo "\033[0;33mOnly one argument provided, assuming all versions match $1\033[0m" |
| 10 | + npm_version=$1 |
| 11 | + ios_version=$1 |
| 12 | + android_version=$1 |
| 13 | +else |
| 14 | + echo "Usage: $0 <RN version> <iOS version> <Android version>" |
| 15 | + exit 1 |
| 16 | +fi |
| 17 | + |
| 18 | +######################################################## |
| 19 | +# sed has slightly different syntax on linux vs mac |
| 20 | +if [ $(uname -s) = "Darwin" ]; then |
| 21 | + alias sed_inplace="sed -E -i ''" |
| 22 | +else |
| 23 | + alias sed_inplace="sed -E -i" |
| 24 | +fi |
| 25 | + |
| 26 | + |
| 27 | +######################################################## |
| 28 | +echo "\033[0;32mUpdating package version to $npm_version\033[0m" |
| 29 | +# update version in package.json and package-lock.json |
| 30 | +npm version $npm_version --no-git-tag-version --silent > /dev/null |
| 31 | +echo " - NPM complete" |
| 32 | + |
| 33 | +# update x_platform_sdk_version for android |
| 34 | +sed_inplace 's/editor.putString\("x_platform_sdk_version", "(.+)"\);/editor.putString\("x_platform_sdk_version", "'$npm_version'"\);/' android/src/oldarch/java/com/radar/RadarModule.java |
| 35 | +sed_inplace 's/editor.putString\("x_platform_sdk_version", "(.+)"\)/editor.putString\("x_platform_sdk_version", "'$npm_version'"\)/' android/src/newarch/java/com/radar/RadarModule.kt |
| 36 | +echo " - Android complete" |
| 37 | + |
| 38 | +# update x_platform_sdk_version for iOS |
| 39 | +sed_inplace 's/\[\[NSUserDefaults standardUserDefaults\] setObject:\@"(.+)" forKey:\@"radar-xPlatformSDKVersion"\];/\[\[NSUserDefaults standardUserDefaults\] setObject:\@"'$npm_version'" forKey:\@"radar-xPlatformSDKVersion"\];/' ios/RNRadar.mm |
| 40 | +echo " - iOS complete" |
| 41 | + |
| 42 | +######################################################## |
| 43 | +echo "\033[0;32mUpdating SDK versions, iOS: $ios_version, Android: $android_version\033[0m" |
| 44 | +# update Android RadarSDK version |
| 45 | +sed_inplace "s/def radar_sdk_version = '(.+)'/def radar_sdk_version = '$android_version'/" android/build.gradle |
| 46 | +echo " - Android complete" |
| 47 | + |
| 48 | +# update iOS RadarSDK version |
| 49 | +sed_inplace 's/s.dependency "RadarSDK", "(.+)"/s.dependency "RadarSDK", "'$ios_version'"/' Radar.podspec |
| 50 | +echo " - iOS complete" |
| 51 | + |
| 52 | +######################################################## |
| 53 | +# test build |
| 54 | +echo "\033[0;32mBuilding react-native-radar\033[0m" |
| 55 | +npm run build-all |
| 56 | + |
| 57 | +echo "\033[0;32mBuilding example app\033[0m" |
| 58 | +(cd example && npm run install-radar-rebuild) |
0 commit comments