From 1bc61b4e5738d36c965d8129f447b1fefb83350f Mon Sep 17 00:00:00 2001 From: Alec Ananian <1013230+alecananian@users.noreply.github.com> Date: Thu, 15 Feb 2024 16:44:12 -0800 Subject: [PATCH 1/5] set up ios preview build --- ...production-mobile.yml => mobile-build.yml} | 12 +- ...roduction-mobile.yml => mobile-update.yml} | 22 +- apps/tlon-mobile/android/app/build.gradle | 16 +- .../android/app/src/main/AndroidManifest.xml | 2 +- .../app/src/main/res/values/strings.xml | 2 +- .../{ => src/preview}/google-services.json | 2 +- .../app/src/preview/res/value/strings.xml | 3 + .../app/src/production/google-services.json | 39 ++ apps/tlon-mobile/app.config.ts | 11 +- apps/tlon-mobile/eas.json | 24 +- .../GoogleService-Info-io.tlon.groups.plist | 30 + ...Service-Info-io.tlon.groups.preview.plist} | 0 .../ios/Landscape.xcodeproj/project.pbxproj | 556 +++++++++++++++--- .../xcschemes/Landscape-preview.xcscheme | 77 +++ .../AppIcon.appiconset/AppIcon-1024.png | Bin 0 -> 13137 bytes .../AppIcon.appiconset/AppIcon-20@2x.png | Bin 0 -> 443 bytes .../AppIcon.appiconset/AppIcon-20@3x.png | Bin 0 -> 641 bytes .../AppIcon.appiconset/AppIcon-29@2x.png | Bin 0 -> 599 bytes .../AppIcon.appiconset/AppIcon-29@3x.png | Bin 0 -> 925 bytes .../AppIcon.appiconset/AppIcon-40@2x.png | Bin 0 -> 858 bytes .../AppIcon.appiconset/AppIcon-40@3x.png | Bin 0 -> 1213 bytes .../AppIcon.appiconset/AppIcon-60@2x.png | Bin 0 -> 1196 bytes .../AppIcon.appiconset/AppIcon-60@3x.png | Bin 0 -> 1856 bytes .../AppIcon.appiconset/Contents.json | 62 ++ .../Images-preview.xcassets/Contents.json | 6 + .../Contents.json | 21 + .../SplashScreenBackground.imageset/image.png | Bin 0 -> 68 bytes .../Landscape/Images.xcassets/Contents.json | 4 +- apps/tlon-mobile/ios/Landscape/Info.plist | 4 +- .../ios/Landscape/Supporting/Expo.plist | 2 +- apps/tlon-mobile/ios/Podfile | 8 +- apps/tlon-mobile/ios/Podfile.lock | 4 +- apps/tlon-mobile/package.json | 2 +- package-lock.json | 8 +- package.json | 4 +- 35 files changed, 802 insertions(+), 119 deletions(-) rename .github/workflows/{build-production-mobile.yml => mobile-build.yml} (73%) rename .github/workflows/{update-production-mobile.yml => mobile-update.yml} (52%) rename apps/tlon-mobile/android/app/{ => src/preview}/google-services.json (92%) create mode 100644 apps/tlon-mobile/android/app/src/preview/res/value/strings.xml create mode 100644 apps/tlon-mobile/android/app/src/production/google-services.json create mode 100644 apps/tlon-mobile/ios/GoogleService-Info-io.tlon.groups.plist rename apps/tlon-mobile/ios/{GoogleService-Info.plist => GoogleService-Info-io.tlon.groups.preview.plist} (100%) create mode 100644 apps/tlon-mobile/ios/Landscape.xcodeproj/xcshareddata/xcschemes/Landscape-preview.xcscheme create mode 100644 apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/AppIcon-1024.png create mode 100644 apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/AppIcon-20@2x.png create mode 100644 apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/AppIcon-20@3x.png create mode 100644 apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/AppIcon-29@2x.png create mode 100644 apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/AppIcon-29@3x.png create mode 100644 apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/AppIcon-40@2x.png create mode 100644 apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/AppIcon-40@3x.png create mode 100644 apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/AppIcon-60@2x.png create mode 100644 apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/AppIcon-60@3x.png create mode 100644 apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/Contents.json create mode 100644 apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/Contents.json create mode 100644 apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/SplashScreenBackground.imageset/Contents.json create mode 100644 apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/SplashScreenBackground.imageset/image.png diff --git a/.github/workflows/build-production-mobile.yml b/.github/workflows/mobile-build.yml similarity index 73% rename from .github/workflows/build-production-mobile.yml rename to .github/workflows/mobile-build.yml index c38770cba1..026a436b79 100644 --- a/.github/workflows/build-production-mobile.yml +++ b/.github/workflows/mobile-build.yml @@ -1,7 +1,13 @@ -name: Build Tlon Mobile [Production] +name: Build Tlon Mobile on: workflow_dispatch: inputs: + profile: + type: choice + description: Select profile + options: + - preview + - production platform: type: choice description: Select platform @@ -15,7 +21,7 @@ env: jobs: deploy: runs-on: ubuntu-latest - name: Create new build + name: Create mobile builds steps: - name: Check out repository uses: actions/checkout@v4 @@ -32,7 +38,7 @@ jobs: run: npm ci - name: Build for selected platforms working-directory: ./apps/tlon-mobile - run: eas build --profile production --platform ${{ inputs.platform || 'all' }} --non-interactive --auto-submit + run: eas build --profile ${{ inputs.profile || 'preview' }} --platform ${{ inputs.platform || 'all' }} --non-interactive --auto-submit env: EXPO_APPLE_ID: ${{ secrets.EXPO_APPLE_ID }} EXPO_APPLE_PASSWORD: ${{ secrets.EXPO_APPLE_PASSWORD }} diff --git a/.github/workflows/update-production-mobile.yml b/.github/workflows/mobile-update.yml similarity index 52% rename from .github/workflows/update-production-mobile.yml rename to .github/workflows/mobile-update.yml index f650f46d79..0087665408 100644 --- a/.github/workflows/update-production-mobile.yml +++ b/.github/workflows/mobile-update.yml @@ -1,13 +1,27 @@ -name: Push Tlon Mobile Update [Production] +name: Push Tlon Mobile Update on: workflow_dispatch: + inputs: + profile: + type: choice + description: Select profile + options: + - preview + - production + platform: + type: choice + description: Select platform + options: + - all + - android + - ios env: NOTIFY_PROVIDER: rivfur-livmet NOTIFY_SERVICE: groups-native jobs: deploy: runs-on: ubuntu-latest - name: Push update + name: Push mobile updates steps: - name: Check out repository uses: actions/checkout@v4 @@ -22,6 +36,6 @@ jobs: token: ${{ secrets.EXPO_TOKEN }} - name: Install dependencies run: npm ci - - name: Push update for all platforms + - name: Push update for selected platforms working-directory: ./apps/tlon-mobile - run: eas update --auto --platform all --channel production --non-interactive + run: eas update --auto --profile ${{ inputs.profile || 'preview' }} --platform ${{ inputs.platform || 'all' }} --non-interactive diff --git a/apps/tlon-mobile/android/app/build.gradle b/apps/tlon-mobile/android/app/build.gradle index a5605dff58..62c4dbca7a 100644 --- a/apps/tlon-mobile/android/app/build.gradle +++ b/apps/tlon-mobile/android/app/build.gradle @@ -87,11 +87,10 @@ android { namespace "io.tlon.landscape" defaultConfig { - applicationId "io.tlon.groups.staging" minSdkVersion rootProject.ext.minSdkVersion targetSdkVersion rootProject.ext.targetSdkVersion - versionCode 44 - versionName "3.1.3" + versionCode 45 + versionName "4.0.0" buildConfigField("boolean", "REACT_NATIVE_UNSTABLE_USE_RUNTIME_SCHEDULER_ALWAYS", (findProperty("reactNative.unstable_useRuntimeSchedulerAlways") ?: true).toString()) } @@ -121,6 +120,17 @@ android { useLegacyPackaging (findProperty('expo.useLegacyPackaging')?.toBoolean() ?: false) } } + flavorDimensions "env" + productFlavors { + production { + dimension "env" + applicationId "io.tlon.groups" + } + preview { + dimension "env" + applicationId "io.tlon.groups.preview" + } + } } // Apply static values from `gradle.properties` to the `android.packagingOptions` diff --git a/apps/tlon-mobile/android/app/src/main/AndroidManifest.xml b/apps/tlon-mobile/android/app/src/main/AndroidManifest.xml index 52f03ad11b..3baaf568ec 100644 --- a/apps/tlon-mobile/android/app/src/main/AndroidManifest.xml +++ b/apps/tlon-mobile/android/app/src/main/AndroidManifest.xml @@ -39,7 +39,7 @@ - + diff --git a/apps/tlon-mobile/android/app/src/main/res/values/strings.xml b/apps/tlon-mobile/android/app/src/main/res/values/strings.xml index 79022f2887..946e2bb7b8 100644 --- a/apps/tlon-mobile/android/app/src/main/res/values/strings.xml +++ b/apps/tlon-mobile/android/app/src/main/res/values/strings.xml @@ -2,7 +2,7 @@ Tlon contain false - 3.1.3 + 4.0.0 Tlon Notifications Channel for receiving push notifications from your Tlon app. Mark as read diff --git a/apps/tlon-mobile/android/app/google-services.json b/apps/tlon-mobile/android/app/src/preview/google-services.json similarity index 92% rename from apps/tlon-mobile/android/app/google-services.json rename to apps/tlon-mobile/android/app/src/preview/google-services.json index 94da9d769d..431e44d628 100644 --- a/apps/tlon-mobile/android/app/google-services.json +++ b/apps/tlon-mobile/android/app/src/preview/google-services.json @@ -9,7 +9,7 @@ "client_info": { "mobilesdk_app_id": "1:157622845881:android:e03c63bd5a3bc87cf27668", "android_client_info": { - "package_name": "io.tlon.groups.staging" + "package_name": "io.tlon.groups.preview" } }, "oauth_client": [], diff --git a/apps/tlon-mobile/android/app/src/preview/res/value/strings.xml b/apps/tlon-mobile/android/app/src/preview/res/value/strings.xml new file mode 100644 index 0000000000..c86f613162 --- /dev/null +++ b/apps/tlon-mobile/android/app/src/preview/res/value/strings.xml @@ -0,0 +1,3 @@ + + Tlon - Preview + diff --git a/apps/tlon-mobile/android/app/src/production/google-services.json b/apps/tlon-mobile/android/app/src/production/google-services.json new file mode 100644 index 0000000000..ae6b4b8655 --- /dev/null +++ b/apps/tlon-mobile/android/app/src/production/google-services.json @@ -0,0 +1,39 @@ +{ + "project_info": { + "project_number": "543296749236", + "project_id": "tlon-groups-mobile", + "storage_bucket": "tlon-groups-mobile.appspot.com" + }, + "client": [ + { + "client_info": { + "mobilesdk_app_id": "1:543296749236:android:3c51b56a1b8d31173e21e1", + "android_client_info": { + "package_name": "io.tlon.groups" + } + }, + "oauth_client": [ + { + "client_id": "543296749236-1l5r4ipguvjdh083t5j7h1eicqi21j0o.apps.googleusercontent.com", + "client_type": 3 + } + ], + "api_key": [ + { + "current_key": "AIzaSyDm8-5daeW5B8j6i_RIoSvOgnx6Fo0gEOU" + } + ], + "services": { + "appinvite_service": { + "other_platform_oauth_client": [ + { + "client_id": "543296749236-1l5r4ipguvjdh083t5j7h1eicqi21j0o.apps.googleusercontent.com", + "client_type": 3 + } + ] + } + } + } + ], + "configuration_version": "1" +} diff --git a/apps/tlon-mobile/app.config.ts b/apps/tlon-mobile/app.config.ts index 32d4bb4dc3..c71119f6d8 100644 --- a/apps/tlon-mobile/app.config.ts +++ b/apps/tlon-mobile/app.config.ts @@ -7,7 +7,7 @@ export default ({ config }: ConfigContext): ExpoConfig => ({ ...config, owner: 'tlon', slug: 'groups', - name: 'Tlon', + name: process.env.IS_PREVIEW ? 'Tlon - Preview' : 'Tlon', assetBundlePatterns: ['**/*'], extra: { eas: { @@ -26,16 +26,15 @@ export default ({ config }: ConfigContext): ExpoConfig => ({ recaptchaSiteKeyIOS: process.env.RECAPTCHA_SITE_KEY_IOS, }, ios: { - bundleIdentifier: 'io.tlon.groups.staging', - runtimeVersion: '3.1.3', - buildNumber: '44', + runtimeVersion: '4.0.0', + buildNumber: '45', config: { usesNonExemptEncryption: false, }, }, android: { - runtimeVersion: '3.1.3', - versionCode: 44, + runtimeVersion: '4.0.0', + versionCode: 45, }, updates: { url: `https://u.expo.dev/${projectId}`, diff --git a/apps/tlon-mobile/eas.json b/apps/tlon-mobile/eas.json index 2ecda7e744..7987da23f4 100644 --- a/apps/tlon-mobile/eas.json +++ b/apps/tlon-mobile/eas.json @@ -6,16 +6,32 @@ "build": { "preview": { "channel": "preview", - "distribution": "internal", - "android": { - "buildType": "apk" + "env": { + "IS_PREVIEW": true + }, + "ios": { + "scheme": "Landscape-preview" } }, "production": { - "channel": "production" + "channel": "production", + "ios": { + "scheme": "Landscape" + } } }, "submit": { + "preview": { + "android": { + "releaseStatus": "draft", + "track": "internal", + "changesNotSentForReview": true + }, + "ios": { + "ascAppId": "6477973000", + "appleTeamId": "XU9PR2N722" + } + }, "production": { "android": { "releaseStatus": "draft", diff --git a/apps/tlon-mobile/ios/GoogleService-Info-io.tlon.groups.plist b/apps/tlon-mobile/ios/GoogleService-Info-io.tlon.groups.plist new file mode 100644 index 0000000000..c19de3f2f1 --- /dev/null +++ b/apps/tlon-mobile/ios/GoogleService-Info-io.tlon.groups.plist @@ -0,0 +1,30 @@ + + + + + API_KEY + AIzaSyDnjh8qXbZkuM_Bh1-tkP46FA-y2Uai7pc + GCM_SENDER_ID + 543296749236 + PLIST_VERSION + 1 + BUNDLE_ID + io.tlon.groups + PROJECT_ID + tlon-groups-mobile + STORAGE_BUCKET + tlon-groups-mobile.appspot.com + IS_ADS_ENABLED + + IS_ANALYTICS_ENABLED + + IS_APPINVITE_ENABLED + + IS_GCM_ENABLED + + IS_SIGNIN_ENABLED + + GOOGLE_APP_ID + 1:543296749236:ios:aec1ebb1ed8b2ef73e21e1 + + \ No newline at end of file diff --git a/apps/tlon-mobile/ios/GoogleService-Info.plist b/apps/tlon-mobile/ios/GoogleService-Info-io.tlon.groups.preview.plist similarity index 100% rename from apps/tlon-mobile/ios/GoogleService-Info.plist rename to apps/tlon-mobile/ios/GoogleService-Info-io.tlon.groups.preview.plist diff --git a/apps/tlon-mobile/ios/Landscape.xcodeproj/project.pbxproj b/apps/tlon-mobile/ios/Landscape.xcodeproj/project.pbxproj index c1b761cc2a..20e34115dd 100644 --- a/apps/tlon-mobile/ios/Landscape.xcodeproj/project.pbxproj +++ b/apps/tlon-mobile/ios/Landscape.xcodeproj/project.pbxproj @@ -8,10 +8,9 @@ /* Begin PBXBuildFile section */ 13B07FBC1A68108700A75B9A /* AppDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB01A68108700A75B9A /* AppDelegate.mm */; }; - 13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB51A68108700A75B9A /* Images.xcassets */; }; 13B07FC11A68108700A75B9A /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB71A68108700A75B9A /* main.m */; }; + 3DC46BC1B669DF8F5F059CA8 /* ExpoModulesProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8ACB38DC4FF4D6377774BF5F /* ExpoModulesProvider.swift */; }; 3E461D99554A48A4959DE609 /* SplashScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = AA286B85B6C04FC6940260E9 /* SplashScreen.storyboard */; }; - 4BF2FE6387FAE7A22C075035 /* Pods_Landscape.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CE023FC01120ED0F85E7F551 /* Pods_Landscape.framework */; }; 700B635B2A71DF860017F40F /* PocketUserAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 700B635A2A71DF860017F40F /* PocketUserAPI.swift */; }; 700B635D2A71DFE90017F40F /* Contact.swift in Sources */ = {isa = PBXBuildFile; fileRef = 700B635C2A71DFE90017F40F /* Contact.swift */; }; 700B63602A71E0810017F40F /* SettingsStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 700B635F2A71E0810017F40F /* SettingsStore.swift */; }; @@ -20,6 +19,8 @@ 7036E3522ACD08E30020A9FB /* GroupChannelStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7036E3512ACD08E30020A9FB /* GroupChannelStore.swift */; }; 7036E3542ACD0FC90020A9FB /* UserDefaultsStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7036E3532ACD0FC90020A9FB /* UserDefaultsStore.swift */; }; 7036E3562ACD17600020A9FB /* ClubStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7036E3552ACD17600020A9FB /* ClubStore.swift */; }; + 705D26452B7ECDF200F98AD6 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB51A68108700A75B9A /* Images.xcassets */; }; + 705D26482B7ECE5400F98AD6 /* Images-preview.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 705D26472B7ECE5400F98AD6 /* Images-preview.xcassets */; }; 7083A16C2AFB01A30022404A /* TlonError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7083A16B2AFB01A30022404A /* TlonError.swift */; }; 709FC0ED2AC1E25D00B0644D /* Club.swift in Sources */ = {isa = PBXBuildFile; fileRef = 709FC0EC2AC1E25D00B0644D /* Club.swift */; }; 70A62C612A5A6B1A00EBED16 /* SimpleKeychain in Frameworks */ = {isa = PBXBuildFile; productRef = 70A62C602A5A6B1A00EBED16 /* SimpleKeychain */; }; @@ -35,6 +36,36 @@ 70D3866F2A60A3B300AFB46E /* UrsusSigil in Frameworks */ = {isa = PBXBuildFile; productRef = 70D3866E2A60A3B300AFB46E /* UrsusSigil */; }; 70D386712A60A3E600AFB46E /* UIColor+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 70D386702A60A3E600AFB46E /* UIColor+Extension.swift */; }; 70D386722A61F2E400AFB46E /* main.jsbundle in Resources */ = {isa = PBXBuildFile; fileRef = 008F07F21AC5B25A0029DE68 /* main.jsbundle */; }; + 70DBBFEA2B7C60B50021EA96 /* UrbitAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 70D386552A609BFC00AFB46E /* UrbitAPI.swift */; }; + 70DBBFEB2B7C60B50021EA96 /* Club.swift in Sources */ = {isa = PBXBuildFile; fileRef = 709FC0EC2AC1E25D00B0644D /* Club.swift */; }; + 70DBBFEC2B7C60B50021EA96 /* TlonError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7083A16B2AFB01A30022404A /* TlonError.swift */; }; + 70DBBFED2B7C60B50021EA96 /* UserDefaultsStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7036E3532ACD0FC90020A9FB /* UserDefaultsStore.swift */; }; + 70DBBFEE2B7C60B50021EA96 /* PocketNotificationsAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 70D386562A609BFC00AFB46E /* PocketNotificationsAPI.swift */; }; + 70DBBFEF2B7C60B50021EA96 /* PocketAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 70D386572A609BFC00AFB46E /* PocketAPI.swift */; }; + 70DBBFF02B7C60B50021EA96 /* PushNotificationManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 70D386532A609BFC00AFB46E /* PushNotificationManager.swift */; }; + 70DBBFF12B7C60B50021EA96 /* Contact.swift in Sources */ = {isa = PBXBuildFile; fileRef = 700B635C2A71DFE90017F40F /* Contact.swift */; }; + 70DBBFF22B7C60B50021EA96 /* UrbitModule.m in Sources */ = {isa = PBXBuildFile; fileRef = 70EAEAB62A57AAF200FE96E4 /* UrbitModule.m */; }; + 70DBBFF32B7C60B50021EA96 /* INPerson+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 70D386662A60A37000AFB46E /* INPerson+Extension.swift */; }; + 70DBBFF42B7C60B50021EA96 /* Error+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 701A09AF2B03081300D8F710 /* Error+Extension.swift */; }; + 70DBBFF52B7C60B50021EA96 /* Group.swift in Sources */ = {isa = PBXBuildFile; fileRef = 70D3866A2A60A38400AFB46E /* Group.swift */; }; + 70DBBFF62B7C60B50021EA96 /* SettingsStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 700B635F2A71E0810017F40F /* SettingsStore.swift */; }; + 70DBBFF72B7C60B50021EA96 /* UIColor+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 70D386702A60A3E600AFB46E /* UIColor+Extension.swift */; }; + 70DBBFF82B7C60B50021EA96 /* PocketUserAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 700B635A2A71DF860017F40F /* PocketUserAPI.swift */; }; + 70DBBFF92B7C60B50021EA96 /* ClubStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7036E3552ACD17600020A9FB /* ClubStore.swift */; }; + 70DBBFFA2B7C60B50021EA96 /* PocketChatAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 70D386612A609CE100AFB46E /* PocketChatAPI.swift */; }; + 70DBBFFB2B7C60B50021EA96 /* GroupChannelStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7036E3512ACD08E30020A9FB /* GroupChannelStore.swift */; }; + 70DBBFFC2B7C60B50021EA96 /* AppDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB01A68108700A75B9A /* AppDelegate.mm */; }; + 70DBBFFD2B7C60B50021EA96 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB71A68108700A75B9A /* main.m */; }; + 70DBBFFF2B7C60B50021EA96 /* UrbitModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 70EAEAB42A57A99100FE96E4 /* UrbitModule.swift */; }; + 70DBC0002B7C60B50021EA96 /* ContactStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 700B63612A71E0D70017F40F /* ContactStore.swift */; }; + 70DBC0012B7C60B50021EA96 /* Yarn.swift in Sources */ = {isa = PBXBuildFile; fileRef = 70D386692A60A38400AFB46E /* Yarn.swift */; }; + 70DBC0032B7C60B50021EA96 /* UrsusSigil in Frameworks */ = {isa = PBXBuildFile; productRef = 70DBBFE42B7C60B50021EA96 /* UrsusSigil */; }; + 70DBC0042B7C60B50021EA96 /* Alamofire in Frameworks */ = {isa = PBXBuildFile; productRef = 70DBBFE22B7C60B50021EA96 /* Alamofire */; }; + 70DBC0052B7C60B50021EA96 /* SimpleKeychain in Frameworks */ = {isa = PBXBuildFile; productRef = 70DBBFE02B7C60B50021EA96 /* SimpleKeychain */; }; + 70DBC0082B7C60B50021EA96 /* Expo.plist in Resources */ = {isa = PBXBuildFile; fileRef = BB2F792C24A3F905000567C9 /* Expo.plist */; }; + 70DBC00B2B7C60B50021EA96 /* SplashScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = AA286B85B6C04FC6940260E9 /* SplashScreen.storyboard */; }; + 70DBC00C2B7C60B50021EA96 /* main.jsbundle in Resources */ = {isa = PBXBuildFile; fileRef = 008F07F21AC5B25A0029DE68 /* main.jsbundle */; }; + 70DBC0182B7C61130021EA96 /* GoogleService-Info-io.tlon.groups.preview.plist in Resources */ = {isa = PBXBuildFile; fileRef = 70DBC0172B7C61130021EA96 /* GoogleService-Info-io.tlon.groups.preview.plist */; }; 70EAEAB52A57A99100FE96E4 /* UrbitModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 70EAEAB42A57A99100FE96E4 /* UrbitModule.swift */; }; 70EAEAB92A57CE2A00FE96E4 /* UrbitModule.m in Sources */ = {isa = PBXBuildFile; fileRef = 70EAEAB62A57AAF200FE96E4 /* UrbitModule.m */; }; 70F99A982B2D2B6E00D77256 /* YarnTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 70F99A972B2D2B6E00D77256 /* YarnTests.swift */; }; @@ -58,9 +89,11 @@ 70F99AAA2B2D337600D77256 /* SettingsStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 700B635F2A71E0810017F40F /* SettingsStore.swift */; }; 70F99AAB2B2D337600D77256 /* UserDefaultsStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7036E3532ACD0FC90020A9FB /* UserDefaultsStore.swift */; }; 70F99AAC2B2D338E00D77256 /* UrbitModule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 70EAEAB42A57A99100FE96E4 /* UrbitModule.swift */; }; - B18059E884C0ABDD17F3DC3D /* ExpoModulesProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAC715A2D49A985799AEE119 /* ExpoModulesProvider.swift */; }; + 938C2E18DC4A4F3336AECD7E /* Pods_common_Landscape.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 06B83AD4DCBF09E1B8DCC1E4 /* Pods_common_Landscape.framework */; }; BB2F792D24A3F905000567C9 /* Expo.plist in Resources */ = {isa = PBXBuildFile; fileRef = BB2F792C24A3F905000567C9 /* Expo.plist */; }; - C184662C2ABBDFF1008EA8C0 /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = C184662B2ABBDFF1008EA8C0 /* GoogleService-Info.plist */; }; + C184662C2ABBDFF1008EA8C0 /* GoogleService-Info-io.tlon.groups.plist in Resources */ = {isa = PBXBuildFile; fileRef = C184662B2ABBDFF1008EA8C0 /* GoogleService-Info-io.tlon.groups.plist */; }; + C515841C010C34E3FD5C5F70 /* Pods_common_Landscape_preview.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CD26F8172CFE23D3CFBE5694 /* Pods_common_Landscape_preview.framework */; }; + D0A57BA86BAF5327C2EECEE4 /* ExpoModulesProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = F61ADD28CFDBC6EFBD36E3DA /* ExpoModulesProvider.swift */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -75,12 +108,14 @@ /* Begin PBXFileReference section */ 008F07F21AC5B25A0029DE68 /* main.jsbundle */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = main.jsbundle; sourceTree = ""; }; + 06B83AD4DCBF09E1B8DCC1E4 /* Pods_common_Landscape.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_common_Landscape.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 13B07F961A680F5B00A75B9A /* Landscape.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Landscape.app; sourceTree = BUILT_PRODUCTS_DIR; }; 13B07FAF1A68108700A75B9A /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AppDelegate.h; path = Landscape/AppDelegate.h; sourceTree = ""; }; 13B07FB01A68108700A75B9A /* AppDelegate.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = AppDelegate.mm; path = Landscape/AppDelegate.mm; sourceTree = ""; }; 13B07FB51A68108700A75B9A /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Images.xcassets; path = Landscape/Images.xcassets; sourceTree = ""; }; 13B07FB61A68108700A75B9A /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = Landscape/Info.plist; sourceTree = ""; }; 13B07FB71A68108700A75B9A /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = Landscape/main.m; sourceTree = ""; }; + 3B0B210E999A7E0E1A345468 /* Pods-common-Landscape-preview.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-common-Landscape-preview.release.xcconfig"; path = "Target Support Files/Pods-common-Landscape-preview/Pods-common-Landscape-preview.release.xcconfig"; sourceTree = ""; }; 6C2E3173556A471DD304B334 /* Pods-Landscape.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Landscape.debug.xcconfig"; path = "Target Support Files/Pods-Landscape/Pods-Landscape.debug.xcconfig"; sourceTree = ""; }; 700B635A2A71DF860017F40F /* PocketUserAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PocketUserAPI.swift; sourceTree = ""; }; 700B635C2A71DFE90017F40F /* Contact.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Contact.swift; sourceTree = ""; }; @@ -90,6 +125,7 @@ 7036E3512ACD08E30020A9FB /* GroupChannelStore.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GroupChannelStore.swift; sourceTree = ""; }; 7036E3532ACD0FC90020A9FB /* UserDefaultsStore.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserDefaultsStore.swift; sourceTree = ""; }; 7036E3552ACD17600020A9FB /* ClubStore.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ClubStore.swift; sourceTree = ""; }; + 705D26472B7ECE5400F98AD6 /* Images-preview.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = "Images-preview.xcassets"; path = "Landscape/Images-preview.xcassets"; sourceTree = ""; }; 7083A16B2AFB01A30022404A /* TlonError.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TlonError.swift; sourceTree = ""; }; 709FC0EC2AC1E25D00B0644D /* Club.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Club.swift; sourceTree = ""; }; 70D386532A609BFC00AFB46E /* PushNotificationManager.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PushNotificationManager.swift; sourceTree = ""; }; @@ -101,17 +137,24 @@ 70D386692A60A38400AFB46E /* Yarn.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Yarn.swift; sourceTree = ""; }; 70D3866A2A60A38400AFB46E /* Group.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Group.swift; sourceTree = ""; }; 70D386702A60A3E600AFB46E /* UIColor+Extension.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "UIColor+Extension.swift"; sourceTree = ""; }; + 70DBC0152B7C60B50021EA96 /* Landscape-preview.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "Landscape-preview.app"; sourceTree = BUILT_PRODUCTS_DIR; }; + 70DBC0172B7C61130021EA96 /* GoogleService-Info-io.tlon.groups.preview.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "GoogleService-Info-io.tlon.groups.preview.plist"; sourceTree = ""; }; 70EAEAB42A57A99100FE96E4 /* UrbitModule.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = UrbitModule.swift; path = Landscape/UrbitModule.swift; sourceTree = ""; }; 70EAEAB62A57AAF200FE96E4 /* UrbitModule.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; name = UrbitModule.m; path = Landscape/UrbitModule.m; sourceTree = ""; }; 70EAEAB72A57AB8400FE96E4 /* Landscape-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "Landscape-Bridging-Header.h"; path = "Landscape/Landscape-Bridging-Header.h"; sourceTree = ""; }; 70F99A8E2B2D2B5700D77256 /* LandscapeTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = LandscapeTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; 70F99A972B2D2B6E00D77256 /* YarnTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YarnTests.swift; sourceTree = ""; }; + 74633B6584F10A6AA2FEE339 /* Pods-common-Landscape.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-common-Landscape.release.xcconfig"; path = "Target Support Files/Pods-common-Landscape/Pods-common-Landscape.release.xcconfig"; sourceTree = ""; }; 7A4D352CD337FB3A3BF06240 /* Pods-Landscape.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Landscape.release.xcconfig"; path = "Target Support Files/Pods-Landscape/Pods-Landscape.release.xcconfig"; sourceTree = ""; }; + 8ACB38DC4FF4D6377774BF5F /* ExpoModulesProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ExpoModulesProvider.swift; path = "Pods/Target Support Files/Pods-common-Landscape-preview/ExpoModulesProvider.swift"; sourceTree = ""; }; AA286B85B6C04FC6940260E9 /* SplashScreen.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = SplashScreen.storyboard; path = Landscape/SplashScreen.storyboard; sourceTree = ""; }; + B35AC6CF758CAFC9D112A69F /* Pods-common-Landscape.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-common-Landscape.debug.xcconfig"; path = "Target Support Files/Pods-common-Landscape/Pods-common-Landscape.debug.xcconfig"; sourceTree = ""; }; BB2F792C24A3F905000567C9 /* Expo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Expo.plist; sourceTree = ""; }; - C184662B2ABBDFF1008EA8C0 /* GoogleService-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "GoogleService-Info.plist"; sourceTree = ""; }; - CE023FC01120ED0F85E7F551 /* Pods_Landscape.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Landscape.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + C184662B2ABBDFF1008EA8C0 /* GoogleService-Info-io.tlon.groups.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "GoogleService-Info-io.tlon.groups.plist"; sourceTree = ""; }; + CD26F8172CFE23D3CFBE5694 /* Pods_common_Landscape_preview.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_common_Landscape_preview.framework; sourceTree = BUILT_PRODUCTS_DIR; }; ED297162215061F000B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; }; + EE042EA448A634B1DCCA2092 /* Pods-common-Landscape-preview.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-common-Landscape-preview.debug.xcconfig"; path = "Target Support Files/Pods-common-Landscape-preview/Pods-common-Landscape-preview.debug.xcconfig"; sourceTree = ""; }; + F61ADD28CFDBC6EFBD36E3DA /* ExpoModulesProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ExpoModulesProvider.swift; path = "Pods/Target Support Files/Pods-common-Landscape/ExpoModulesProvider.swift"; sourceTree = ""; }; FAC715A2D49A985799AEE119 /* ExpoModulesProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ExpoModulesProvider.swift; path = "Pods/Target Support Files/Pods-Landscape/ExpoModulesProvider.swift"; sourceTree = ""; }; /* End PBXFileReference section */ @@ -123,7 +166,18 @@ 70D3866F2A60A3B300AFB46E /* UrsusSigil in Frameworks */, 70D386482A6098F800AFB46E /* Alamofire in Frameworks */, 70A62C612A5A6B1A00EBED16 /* SimpleKeychain in Frameworks */, - 4BF2FE6387FAE7A22C075035 /* Pods_Landscape.framework in Frameworks */, + 938C2E18DC4A4F3336AECD7E /* Pods_common_Landscape.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 70DBC0022B7C60B50021EA96 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 70DBC0032B7C60B50021EA96 /* UrsusSigil in Frameworks */, + 70DBC0042B7C60B50021EA96 /* Alamofire in Frameworks */, + 70DBC0052B7C60B50021EA96 /* SimpleKeychain in Frameworks */, + C515841C010C34E3FD5C5F70 /* Pods_common_Landscape_preview.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -145,6 +199,7 @@ 13B07FAF1A68108700A75B9A /* AppDelegate.h */, 13B07FB01A68108700A75B9A /* AppDelegate.mm */, 13B07FB51A68108700A75B9A /* Images.xcassets */, + 705D26472B7ECE5400F98AD6 /* Images-preview.xcassets */, 13B07FB61A68108700A75B9A /* Info.plist */, 13B07FB71A68108700A75B9A /* main.m */, AA286B85B6C04FC6940260E9 /* SplashScreen.storyboard */, @@ -164,11 +219,20 @@ isa = PBXGroup; children = ( ED297162215061F000B7C4FE /* JavaScriptCore.framework */, - CE023FC01120ED0F85E7F551 /* Pods_Landscape.framework */, + 06B83AD4DCBF09E1B8DCC1E4 /* Pods_common_Landscape.framework */, + CD26F8172CFE23D3CFBE5694 /* Pods_common_Landscape_preview.framework */, ); name = Frameworks; sourceTree = ""; }; + 3C9B45BB9D20806D92CA3A84 /* Landscape-preview */ = { + isa = PBXGroup; + children = ( + 8ACB38DC4FF4D6377774BF5F /* ExpoModulesProvider.swift */, + ); + name = "Landscape-preview"; + sourceTree = ""; + }; 700B635E2A71E06E0017F40F /* Storage */ = { isa = PBXGroup; children = ( @@ -245,7 +309,8 @@ 83CBB9F61A601CBA00E9B192 = { isa = PBXGroup; children = ( - C184662B2ABBDFF1008EA8C0 /* GoogleService-Info.plist */, + C184662B2ABBDFF1008EA8C0 /* GoogleService-Info-io.tlon.groups.plist */, + 70DBC0172B7C61130021EA96 /* GoogleService-Info-io.tlon.groups.preview.plist */, 13B07FAE1A68108700A75B9A /* Landscape */, 70F99A8F2B2D2B5700D77256 /* LandscapeTests */, 832341AE1AAA6A7D00B99B32 /* Libraries */, @@ -264,6 +329,7 @@ children = ( 13B07F961A680F5B00A75B9A /* Landscape.app */, 70F99A8E2B2D2B5700D77256 /* LandscapeTests.xctest */, + 70DBC0152B7C60B50021EA96 /* Landscape-preview.app */, ); name = Products; sourceTree = ""; @@ -272,6 +338,7 @@ isa = PBXGroup; children = ( FAC715A2D49A985799AEE119 /* ExpoModulesProvider.swift */, + F61ADD28CFDBC6EFBD36E3DA /* ExpoModulesProvider.swift */, ); name = Landscape; sourceTree = ""; @@ -290,6 +357,10 @@ children = ( 6C2E3173556A471DD304B334 /* Pods-Landscape.debug.xcconfig */, 7A4D352CD337FB3A3BF06240 /* Pods-Landscape.release.xcconfig */, + B35AC6CF758CAFC9D112A69F /* Pods-common-Landscape.debug.xcconfig */, + 74633B6584F10A6AA2FEE339 /* Pods-common-Landscape.release.xcconfig */, + EE042EA448A634B1DCCA2092 /* Pods-common-Landscape-preview.debug.xcconfig */, + 3B0B210E999A7E0E1A345468 /* Pods-common-Landscape-preview.release.xcconfig */, ); path = Pods; sourceTree = ""; @@ -298,6 +369,7 @@ isa = PBXGroup; children = ( 92DBD88DE9BF7D494EA9DA96 /* Landscape */, + 3C9B45BB9D20806D92CA3A84 /* Landscape-preview */, ); name = ExpoModulesProviders; sourceTree = ""; @@ -315,11 +387,10 @@ 13B07F871A680F5B00A75B9A /* Sources */, 13B07F8C1A680F5B00A75B9A /* Frameworks */, 13B07F8E1A680F5B00A75B9A /* Resources */, + 70DBC01A2B7C61690021EA96 /* Copy GoogleService-Info.plist */, 00DD1BFF1BD5951E006B06BC /* Bundle React Native code and images */, 800E24972A6A228C8D4807E9 /* [CP] Copy Pods Resources */, A8F420A9D9FA89D6A8CAB3CB /* [CP] Embed Pods Frameworks */, - 16BF6871758CF5215ECCA862 /* [CP-User] [RNFB] Core Configuration */, - 996699F1450D9A26847DC9A6 /* [CP-User] [RNFB] Crashlytics Configuration */, ); buildRules = ( ); @@ -335,6 +406,35 @@ productReference = 13B07F961A680F5B00A75B9A /* Landscape.app */; productType = "com.apple.product-type.application"; }; + 70DBBFDF2B7C60B50021EA96 /* Landscape-preview */ = { + isa = PBXNativeTarget; + buildConfigurationList = 70DBC0122B7C60B50021EA96 /* Build configuration list for PBXNativeTarget "Landscape-preview" */; + buildPhases = ( + 70DBBFE62B7C60B50021EA96 /* [CP] Check Pods Manifest.lock */, + 70DBBFE72B7C60B50021EA96 /* Start Packager */, + 70DBBFE82B7C60B50021EA96 /* [Expo] Configure project */, + 70DBBFE92B7C60B50021EA96 /* Sources */, + 70DBC0022B7C60B50021EA96 /* Frameworks */, + 70DBC0072B7C60B50021EA96 /* Resources */, + 70DBC01B2B7C61A20021EA96 /* Copy GoogleService-Info.plist */, + 70DBC00D2B7C60B50021EA96 /* Bundle React Native code and images */, + 70DBC00E2B7C60B50021EA96 /* [CP] Copy Pods Resources */, + 70DBC00F2B7C60B50021EA96 /* [CP] Embed Pods Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = "Landscape-preview"; + packageProductDependencies = ( + 70DBBFE02B7C60B50021EA96 /* SimpleKeychain */, + 70DBBFE22B7C60B50021EA96 /* Alamofire */, + 70DBBFE42B7C60B50021EA96 /* UrsusSigil */, + ); + productName = Landscape; + productReference = 70DBC0152B7C60B50021EA96 /* Landscape-preview.app */; + productType = "com.apple.product-type.application"; + }; 70F99A8D2B2D2B5700D77256 /* LandscapeTests */ = { isa = PBXNativeTarget; buildConfigurationList = 70F99A962B2D2B5700D77256 /* Build configuration list for PBXNativeTarget "LandscapeTests" */; @@ -382,7 +482,7 @@ mainGroup = 83CBB9F61A601CBA00E9B192; packageReferences = ( 70A62C5F2A5A6B1A00EBED16 /* XCRemoteSwiftPackageReference "SimpleKeychain" */, - 70D386462A6098F800AFB46E /* XCRemoteSwiftPackageReference "Alamofire.git" */, + 70D386462A6098F800AFB46E /* XCRemoteSwiftPackageReference "Alamofire" */, 70D3866D2A60A3B300AFB46E /* XCRemoteSwiftPackageReference "UrsusSigil" */, ); productRefGroup = 83CBBA001A601CBA00E9B192 /* Products */; @@ -390,6 +490,7 @@ projectRoot = ""; targets = ( 13B07F861A680F5B00A75B9A /* Landscape */, + 70DBBFDF2B7C60B50021EA96 /* Landscape-preview */, 70F99A8D2B2D2B5700D77256 /* LandscapeTests */, ); }; @@ -401,13 +502,25 @@ buildActionMask = 2147483647; files = ( BB2F792D24A3F905000567C9 /* Expo.plist in Resources */, - 13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */, - C184662C2ABBDFF1008EA8C0 /* GoogleService-Info.plist in Resources */, + 705D26452B7ECDF200F98AD6 /* Images.xcassets in Resources */, + C184662C2ABBDFF1008EA8C0 /* GoogleService-Info-io.tlon.groups.plist in Resources */, 3E461D99554A48A4959DE609 /* SplashScreen.storyboard in Resources */, 70D386722A61F2E400AFB46E /* main.jsbundle in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; + 70DBC0072B7C60B50021EA96 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 70DBC0082B7C60B50021EA96 /* Expo.plist in Resources */, + 705D26482B7ECE5400F98AD6 /* Images-preview.xcassets in Resources */, + 70DBC00B2B7C60B50021EA96 /* SplashScreen.storyboard in Resources */, + 70DBC0182B7C61130021EA96 /* GoogleService-Info-io.tlon.groups.preview.plist in Resources */, + 70DBC00C2B7C60B50021EA96 /* main.jsbundle in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; 70F99A8C2B2D2B5700D77256 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; @@ -448,33 +561,95 @@ outputFileListPaths = ( ); outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-Landscape-checkManifestLockResult.txt", + "$(DERIVED_FILE_DIR)/Pods-common-Landscape-checkManifestLockResult.txt", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; showEnvVarsInLog = 0; }; - 16BF6871758CF5215ECCA862 /* [CP-User] [RNFB] Core Configuration */ = { + 70DBBFE62B7C60B50021EA96 /* [CP] Check Pods Manifest.lock */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); + inputFileListPaths = ( + ); inputPaths = ( - "$(BUILT_PRODUCTS_DIR)/$(INFOPLIST_PATH)", + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-common-Landscape-preview-checkManifestLockResult.txt", ); - name = "[CP-User] [RNFB] Core Configuration"; runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "#!/usr/bin/env bash\n#\n# Copyright (c) 2016-present Invertase Limited & Contributors\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this library except in compliance with the License.\n# You may obtain a copy of the License at\n#\n# http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n#\nset -e\n\n_MAX_LOOKUPS=2;\n_SEARCH_RESULT=''\n_RN_ROOT_EXISTS=''\n_CURRENT_LOOKUPS=1\n_JSON_ROOT=\"'react-native'\"\n_JSON_FILE_NAME='firebase.json'\n_JSON_OUTPUT_BASE64='e30=' # { }\n_CURRENT_SEARCH_DIR=${PROJECT_DIR}\n_PLIST_BUDDY=/usr/libexec/PlistBuddy\n_TARGET_PLIST=\"${BUILT_PRODUCTS_DIR}/${INFOPLIST_PATH}\"\n_DSYM_PLIST=\"${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}/Contents/Info.plist\"\n\n# plist arrays\n_PLIST_ENTRY_KEYS=()\n_PLIST_ENTRY_TYPES=()\n_PLIST_ENTRY_VALUES=()\n\nfunction setPlistValue {\n echo \"info: setting plist entry '$1' of type '$2' in file '$4'\"\n ${_PLIST_BUDDY} -c \"Add :$1 $2 '$3'\" $4 || echo \"info: '$1' already exists\"\n}\n\nfunction getFirebaseJsonKeyValue () {\n if [[ ${_RN_ROOT_EXISTS} ]]; then\n ruby -Ku -e \"require 'rubygems';require 'json'; output=JSON.parse('$1'); puts output[$_JSON_ROOT]['$2']\"\n else\n echo \"\"\n fi;\n}\n\nfunction jsonBoolToYesNo () {\n if [[ $1 == \"false\" ]]; then\n echo \"NO\"\n elif [[ $1 == \"true\" ]]; then\n echo \"YES\"\n else echo \"NO\"\n fi\n}\n\necho \"info: -> RNFB build script started\"\necho \"info: 1) Locating ${_JSON_FILE_NAME} file:\"\n\nif [[ -z ${_CURRENT_SEARCH_DIR} ]]; then\n _CURRENT_SEARCH_DIR=$(pwd)\nfi;\n\nwhile true; do\n _CURRENT_SEARCH_DIR=$(dirname \"$_CURRENT_SEARCH_DIR\")\n if [[ \"$_CURRENT_SEARCH_DIR\" == \"/\" ]] || [[ ${_CURRENT_LOOKUPS} -gt ${_MAX_LOOKUPS} ]]; then break; fi;\n echo \"info: ($_CURRENT_LOOKUPS of $_MAX_LOOKUPS) Searching in '$_CURRENT_SEARCH_DIR' for a ${_JSON_FILE_NAME} file.\"\n _SEARCH_RESULT=$(find \"$_CURRENT_SEARCH_DIR\" -maxdepth 2 -name ${_JSON_FILE_NAME} -print | /usr/bin/head -n 1)\n if [[ ${_SEARCH_RESULT} ]]; then\n echo \"info: ${_JSON_FILE_NAME} found at $_SEARCH_RESULT\"\n break;\n fi;\n _CURRENT_LOOKUPS=$((_CURRENT_LOOKUPS+1))\ndone\n\nif [[ ${_SEARCH_RESULT} ]]; then\n _JSON_OUTPUT_RAW=$(cat \"${_SEARCH_RESULT}\")\n _RN_ROOT_EXISTS=$(ruby -Ku -e \"require 'rubygems';require 'json'; output=JSON.parse('$_JSON_OUTPUT_RAW'); puts output[$_JSON_ROOT]\" || echo '')\n\n if [[ ${_RN_ROOT_EXISTS} ]]; then\n if ! python3 --version >/dev/null 2>&1; then echo \"python3 not found, firebase.json file processing error.\" && exit 1; fi\n _JSON_OUTPUT_BASE64=$(python3 -c 'import json,sys,base64;print(base64.b64encode(bytes(json.dumps(json.loads(open('\"'${_SEARCH_RESULT}'\"', '\"'rb'\"').read())['${_JSON_ROOT}']), '\"'utf-8'\"')).decode())' || echo \"e30=\")\n fi\n\n _PLIST_ENTRY_KEYS+=(\"firebase_json_raw\")\n _PLIST_ENTRY_TYPES+=(\"string\")\n _PLIST_ENTRY_VALUES+=(\"$_JSON_OUTPUT_BASE64\")\n\n # config.app_data_collection_default_enabled\n _APP_DATA_COLLECTION_ENABLED=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"app_data_collection_default_enabled\")\n if [[ $_APP_DATA_COLLECTION_ENABLED ]]; then\n _PLIST_ENTRY_KEYS+=(\"FirebaseDataCollectionDefaultEnabled\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"$(jsonBoolToYesNo \"$_APP_DATA_COLLECTION_ENABLED\")\")\n fi\n\n # config.analytics_auto_collection_enabled\n _ANALYTICS_AUTO_COLLECTION=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"analytics_auto_collection_enabled\")\n if [[ $_ANALYTICS_AUTO_COLLECTION ]]; then\n _PLIST_ENTRY_KEYS+=(\"FIREBASE_ANALYTICS_COLLECTION_ENABLED\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"$(jsonBoolToYesNo \"$_ANALYTICS_AUTO_COLLECTION\")\")\n fi\n\n # config.analytics_collection_deactivated\n _ANALYTICS_DEACTIVATED=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"analytics_collection_deactivated\")\n if [[ $_ANALYTICS_DEACTIVATED ]]; then\n _PLIST_ENTRY_KEYS+=(\"FIREBASE_ANALYTICS_COLLECTION_DEACTIVATED\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"$(jsonBoolToYesNo \"$_ANALYTICS_DEACTIVATED\")\")\n fi\n\n # config.analytics_idfv_collection_enabled\n _ANALYTICS_IDFV_COLLECTION=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"analytics_idfv_collection_enabled\")\n if [[ $_ANALYTICS_IDFV_COLLECTION ]]; then\n _PLIST_ENTRY_KEYS+=(\"GOOGLE_ANALYTICS_IDFV_COLLECTION_ENABLED\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"$(jsonBoolToYesNo \"$_ANALYTICS_IDFV_COLLECTION\")\")\n fi\n\n # config.analytics_default_allow_ad_personalization_signals\n _ANALYTICS_PERSONALIZATION=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"analytics_default_allow_ad_personalization_signals\")\n if [[ $_ANALYTICS_PERSONALIZATION ]]; then\n _PLIST_ENTRY_KEYS+=(\"GOOGLE_ANALYTICS_DEFAULT_ALLOW_AD_PERSONALIZATION_SIGNALS\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"$(jsonBoolToYesNo \"$_ANALYTICS_PERSONALIZATION\")\")\n fi\n\n # config.analytics_registration_with_ad_network_enabled\n _ANALYTICS_REGISTRATION_WITH_AD_NETWORK=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"google_analytics_registration_with_ad_network_enabled\")\n if [[ $_ANALYTICS_REGISTRATION_WITH_AD_NETWORK ]]; then\n _PLIST_ENTRY_KEYS+=(\"GOOGLE_ANALYTICS_REGISTRATION_WITH_AD_NETWORK_ENABLED\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"$(jsonBoolToYesNo \"$_ANALYTICS_REGISTRATION_WITH_AD_NETWORK\")\")\n fi\n\n # config.google_analytics_automatic_screen_reporting_enabled\n _ANALYTICS_AUTO_SCREEN_REPORTING=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"google_analytics_automatic_screen_reporting_enabled\")\n if [[ $_ANALYTICS_AUTO_SCREEN_REPORTING ]]; then\n _PLIST_ENTRY_KEYS+=(\"FirebaseAutomaticScreenReportingEnabled\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"$(jsonBoolToYesNo \"$_ANALYTICS_AUTO_SCREEN_REPORTING\")\")\n fi\n\n # config.perf_auto_collection_enabled\n _PERF_AUTO_COLLECTION=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"perf_auto_collection_enabled\")\n if [[ $_PERF_AUTO_COLLECTION ]]; then\n _PLIST_ENTRY_KEYS+=(\"firebase_performance_collection_enabled\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"$(jsonBoolToYesNo \"$_PERF_AUTO_COLLECTION\")\")\n fi\n\n # config.perf_collection_deactivated\n _PERF_DEACTIVATED=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"perf_collection_deactivated\")\n if [[ $_PERF_DEACTIVATED ]]; then\n _PLIST_ENTRY_KEYS+=(\"firebase_performance_collection_deactivated\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"$(jsonBoolToYesNo \"$_PERF_DEACTIVATED\")\")\n fi\n\n # config.messaging_auto_init_enabled\n _MESSAGING_AUTO_INIT=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"messaging_auto_init_enabled\")\n if [[ $_MESSAGING_AUTO_INIT ]]; then\n _PLIST_ENTRY_KEYS+=(\"FirebaseMessagingAutoInitEnabled\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"$(jsonBoolToYesNo \"$_MESSAGING_AUTO_INIT\")\")\n fi\n\n # config.in_app_messaging_auto_colllection_enabled\n _FIAM_AUTO_INIT=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"in_app_messaging_auto_collection_enabled\")\n if [[ $_FIAM_AUTO_INIT ]]; then\n _PLIST_ENTRY_KEYS+=(\"FirebaseInAppMessagingAutomaticDataCollectionEnabled\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"$(jsonBoolToYesNo \"$_FIAM_AUTO_INIT\")\")\n fi\n\n # config.app_check_token_auto_refresh\n _APP_CHECK_TOKEN_AUTO_REFRESH=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"app_check_token_auto_refresh\")\n if [[ $_APP_CHECK_TOKEN_AUTO_REFRESH ]]; then\n _PLIST_ENTRY_KEYS+=(\"FirebaseAppCheckTokenAutoRefreshEnabled\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"$(jsonBoolToYesNo \"$_APP_CHECK_TOKEN_AUTO_REFRESH\")\")\n fi\n\n # config.crashlytics_disable_auto_disabler - undocumented for now - mainly for debugging, document if becomes useful\n _CRASHLYTICS_AUTO_DISABLE_ENABLED=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"crashlytics_disable_auto_disabler\")\n if [[ $_CRASHLYTICS_AUTO_DISABLE_ENABLED == \"true\" ]]; then\n echo \"Disabled Crashlytics auto disabler.\" # do nothing\n else\n _PLIST_ENTRY_KEYS+=(\"FirebaseCrashlyticsCollectionEnabled\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"NO\")\n fi\nelse\n _PLIST_ENTRY_KEYS+=(\"firebase_json_raw\")\n _PLIST_ENTRY_TYPES+=(\"string\")\n _PLIST_ENTRY_VALUES+=(\"$_JSON_OUTPUT_BASE64\")\n echo \"warning: A firebase.json file was not found, whilst this file is optional it is recommended to include it to configure firebase services in React Native Firebase.\"\nfi;\n\necho \"info: 2) Injecting Info.plist entries: \"\n\n# Log out the keys we're adding\nfor i in \"${!_PLIST_ENTRY_KEYS[@]}\"; do\n echo \" -> $i) ${_PLIST_ENTRY_KEYS[$i]}\" \"${_PLIST_ENTRY_TYPES[$i]}\" \"${_PLIST_ENTRY_VALUES[$i]}\"\ndone\n\nfor plist in \"${_TARGET_PLIST}\" \"${_DSYM_PLIST}\" ; do\n if [[ -f \"${plist}\" ]]; then\n\n # paths with spaces break the call to setPlistValue. temporarily modify\n # the shell internal field separator variable (IFS), which normally\n # includes spaces, to consist only of line breaks\n oldifs=$IFS\n IFS=\"\n\"\n\n for i in \"${!_PLIST_ENTRY_KEYS[@]}\"; do\n setPlistValue \"${_PLIST_ENTRY_KEYS[$i]}\" \"${_PLIST_ENTRY_TYPES[$i]}\" \"${_PLIST_ENTRY_VALUES[$i]}\" \"${plist}\"\n done\n\n # restore the original internal field separator value\n IFS=$oldifs\n else\n echo \"warning: A Info.plist build output file was not found (${plist})\"\n fi\ndone\n\necho \"info: <- RNFB build script finished\"\n"; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; }; - 800E24972A6A228C8D4807E9 /* [CP] Copy Pods Resources */ = { + 70DBBFE72B7C60B50021EA96 /* Start Packager */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + ); + name = "Start Packager"; + outputFileListPaths = ( + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "if [[ -f \"$PODS_ROOT/../.xcode.env\" ]]; then\n source \"$PODS_ROOT/../.xcode.env\"\nfi\nif [[ -f \"$PODS_ROOT/../.xcode.env.local\" ]]; then\n source \"$PODS_ROOT/../.xcode.env.local\"\nfi\n\nexport RCT_METRO_PORT=\"${RCT_METRO_PORT:=8081}\"\necho \"export RCT_METRO_PORT=${RCT_METRO_PORT}\" > `$NODE_BINARY --print \"require('path').dirname(require.resolve('react-native/package.json')) + '/scripts/.packager.env'\"`\nif [ -z \"${RCT_NO_LAUNCH_PACKAGER+xxx}\" ] ; then\n if nc -w 5 -z localhost ${RCT_METRO_PORT} ; then\n if ! curl -s \"http://localhost:${RCT_METRO_PORT}/status\" | grep -q \"packager-status:running\" ; then\n echo \"Port ${RCT_METRO_PORT} already in use, packager is either not running or not running correctly\"\n exit 2\n fi\n else\n open `$NODE_BINARY --print \"require('path').dirname(require.resolve('react-native/package.json')) + '/scripts/launchPackager.command'\"` || echo \"Can't start packager automatically\"\n fi\nfi\n"; + showEnvVarsInLog = 0; + }; + 70DBBFE82B7C60B50021EA96 /* [Expo] Configure project */ = { + isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + ); + name = "[Expo] Configure project"; + outputFileListPaths = ( + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "# This script configures Expo modules and generates the modules provider file.\nbash -l -c \"./Pods/Target\\ Support\\ Files/Pods-common-Landscape-preview/expo-configure-project.sh\"\n"; + }; + 70DBC00D2B7C60B50021EA96 /* Bundle React Native code and images */ = { + isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Bundle React Native code and images"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "if [[ -f \"$PODS_ROOT/../.xcode.env\" ]]; then\n source \"$PODS_ROOT/../.xcode.env\"\nfi\nif [[ -f \"$PODS_ROOT/../.xcode.env.local\" ]]; then\n source \"$PODS_ROOT/../.xcode.env.local\"\nfi\n\n# The project root by default is one level up from the ios directory\nexport PROJECT_ROOT=\"$PROJECT_DIR\"/..\n\nif [[ \"$CONFIGURATION\" = *Debug* ]]; then\n export SKIP_BUNDLING=1\nfi\nif [[ -z \"$ENTRY_FILE\" ]]; then\n # Set the entry JS file using the bundler's entry resolution.\n export ENTRY_FILE=\"$(\"$NODE_BINARY\" -e \"require('expo/scripts/resolveAppEntry')\" $PROJECT_ROOT ios relative | tail -n 1)\"\nfi\n\n`\"$NODE_BINARY\" --print \"require('path').dirname(require.resolve('react-native/package.json')) + '/scripts/react-native-xcode.sh'\"`\n\n"; + }; + 70DBC00E2B7C60B50021EA96 /* [CP] Copy Pods Resources */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); inputPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-Landscape/Pods-Landscape-resources.sh", + "${PODS_ROOT}/Target Support Files/Pods-common-Landscape-preview/Pods-common-Landscape-preview-resources.sh", "${PODS_CONFIGURATION_BUILD_DIR}/EXConstants/EXConstants.bundle", "${PODS_CONFIGURATION_BUILD_DIR}/EXUpdates/EXUpdates.bundle", "${PODS_CONFIGURATION_BUILD_DIR}/React-Core/RCTI18nStrings.bundle", @@ -487,22 +662,84 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Landscape/Pods-Landscape-resources.sh\"\n"; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-common-Landscape-preview/Pods-common-Landscape-preview-resources.sh\"\n"; showEnvVarsInLog = 0; }; - 996699F1450D9A26847DC9A6 /* [CP-User] [RNFB] Crashlytics Configuration */ = { + 70DBC00F2B7C60B50021EA96 /* [CP] Embed Pods Frameworks */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-common-Landscape-preview/Pods-common-Landscape-preview-frameworks.sh", + "${PODS_XCFRAMEWORKS_BUILD_DIR}/hermes-engine/Pre-built/hermes.framework/hermes", + ); + name = "[CP] Embed Pods Frameworks"; + outputPaths = ( + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/hermes.framework", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-common-Landscape-preview/Pods-common-Landscape-preview-frameworks.sh\"\n"; + showEnvVarsInLog = 0; + }; + 70DBC01A2B7C61690021EA96 /* Copy GoogleService-Info.plist */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + ); + name = "Copy GoogleService-Info.plist"; + outputFileListPaths = ( + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "PATH_TO_CONFIG=$SRCROOT/GoogleService-Info-$PRODUCT_BUNDLE_IDENTIFIER.plist\nFILENAME_IN_BUNDLE=GoogleService-Info.plist\nBUILD_APP_DIR=${BUILT_PRODUCTS_DIR}/${PRODUCT_NAME}.app\necho cp $PATH_TO_CONFIG \"$BUILD_APP_DIR/$FILENAME_IN_BUNDLE\"\ncp $PATH_TO_CONFIG \"$BUILD_APP_DIR/$FILENAME_IN_BUNDLE\"\n"; + }; + 70DBC01B2B7C61A20021EA96 /* Copy GoogleService-Info.plist */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + ); + name = "Copy GoogleService-Info.plist"; + outputFileListPaths = ( + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "PATH_TO_CONFIG=$SRCROOT/GoogleService-Info-$PRODUCT_BUNDLE_IDENTIFIER.plist\nFILENAME_IN_BUNDLE=GoogleService-Info.plist\nBUILD_APP_DIR=${BUILT_PRODUCTS_DIR}/${PRODUCT_NAME}.app\necho cp $PATH_TO_CONFIG \"$BUILD_APP_DIR/$FILENAME_IN_BUNDLE\"\ncp $PATH_TO_CONFIG \"$BUILD_APP_DIR/$FILENAME_IN_BUNDLE\"\n"; + }; + 800E24972A6A228C8D4807E9 /* [CP] Copy Pods Resources */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); inputPaths = ( - "${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}/Contents/Resources/DWARF/${TARGET_NAME}", - "$(BUILT_PRODUCTS_DIR)/$(INFOPLIST_PATH)", + "${PODS_ROOT}/Target Support Files/Pods-common-Landscape/Pods-common-Landscape-resources.sh", + "${PODS_CONFIGURATION_BUILD_DIR}/EXConstants/EXConstants.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/EXUpdates/EXUpdates.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/React-Core/RCTI18nStrings.bundle", + ); + name = "[CP] Copy Pods Resources"; + outputPaths = ( + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/EXConstants.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/EXUpdates.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/RCTI18nStrings.bundle", ); - name = "[CP-User] [RNFB] Crashlytics Configuration"; runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "#!/usr/bin/env bash\n#\n# Copyright (c) 2016-present Invertase Limited & Contributors\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this library except in compliance with the License.\n# You may obtain a copy of the License at\n#\n# http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n#\nset -e\n\nif [[ ${PODS_ROOT} ]]; then\n echo \"info: Exec FirebaseCrashlytics Run from Pods\"\n \"${PODS_ROOT}/FirebaseCrashlytics/run\"\nelse\n echo \"info: Exec FirebaseCrashlytics Run from framework\"\n \"${PROJECT_DIR}/FirebaseCrashlytics.framework/run\"\nfi\n"; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-common-Landscape/Pods-common-Landscape-resources.sh\"\n"; + showEnvVarsInLog = 0; }; A8F420A9D9FA89D6A8CAB3CB /* [CP] Embed Pods Frameworks */ = { isa = PBXShellScriptBuildPhase; @@ -510,7 +747,7 @@ files = ( ); inputPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-Landscape/Pods-Landscape-frameworks.sh", + "${PODS_ROOT}/Target Support Files/Pods-common-Landscape/Pods-common-Landscape-frameworks.sh", "${PODS_XCFRAMEWORKS_BUILD_DIR}/hermes-engine/Pre-built/hermes.framework/hermes", ); name = "[CP] Embed Pods Frameworks"; @@ -519,7 +756,7 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Landscape/Pods-Landscape-frameworks.sh\"\n"; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-common-Landscape/Pods-common-Landscape-frameworks.sh\"\n"; showEnvVarsInLog = 0; }; E99812A83EA5B4CD5D501DE3 /* [Expo] Configure project */ = { @@ -539,7 +776,7 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "# This script configures Expo modules and generates the modules provider file.\nbash -l -c \"./Pods/Target\\ Support\\ Files/Pods-Landscape/expo-configure-project.sh\"\n"; + shellScript = "# This script configures Expo modules and generates the modules provider file.\nbash -l -c \"./Pods/Target\\ Support\\ Files/Pods-common-Landscape/expo-configure-project.sh\"\n"; }; FD10A7F022414F080027D42C /* Start Packager */ = { isa = PBXShellScriptBuildPhase; @@ -587,10 +824,41 @@ 7036E3522ACD08E30020A9FB /* GroupChannelStore.swift in Sources */, 13B07FBC1A68108700A75B9A /* AppDelegate.mm in Sources */, 13B07FC11A68108700A75B9A /* main.m in Sources */, - B18059E884C0ABDD17F3DC3D /* ExpoModulesProvider.swift in Sources */, 70EAEAB52A57A99100FE96E4 /* UrbitModule.swift in Sources */, 700B63622A71E0D70017F40F /* ContactStore.swift in Sources */, 70D3866B2A60A38400AFB46E /* Yarn.swift in Sources */, + D0A57BA86BAF5327C2EECEE4 /* ExpoModulesProvider.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 70DBBFE92B7C60B50021EA96 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 70DBBFEA2B7C60B50021EA96 /* UrbitAPI.swift in Sources */, + 70DBBFEB2B7C60B50021EA96 /* Club.swift in Sources */, + 70DBBFEC2B7C60B50021EA96 /* TlonError.swift in Sources */, + 70DBBFED2B7C60B50021EA96 /* UserDefaultsStore.swift in Sources */, + 70DBBFEE2B7C60B50021EA96 /* PocketNotificationsAPI.swift in Sources */, + 70DBBFEF2B7C60B50021EA96 /* PocketAPI.swift in Sources */, + 70DBBFF02B7C60B50021EA96 /* PushNotificationManager.swift in Sources */, + 70DBBFF12B7C60B50021EA96 /* Contact.swift in Sources */, + 70DBBFF22B7C60B50021EA96 /* UrbitModule.m in Sources */, + 70DBBFF32B7C60B50021EA96 /* INPerson+Extension.swift in Sources */, + 70DBBFF42B7C60B50021EA96 /* Error+Extension.swift in Sources */, + 70DBBFF52B7C60B50021EA96 /* Group.swift in Sources */, + 70DBBFF62B7C60B50021EA96 /* SettingsStore.swift in Sources */, + 70DBBFF72B7C60B50021EA96 /* UIColor+Extension.swift in Sources */, + 70DBBFF82B7C60B50021EA96 /* PocketUserAPI.swift in Sources */, + 70DBBFF92B7C60B50021EA96 /* ClubStore.swift in Sources */, + 70DBBFFA2B7C60B50021EA96 /* PocketChatAPI.swift in Sources */, + 70DBBFFB2B7C60B50021EA96 /* GroupChannelStore.swift in Sources */, + 70DBBFFC2B7C60B50021EA96 /* AppDelegate.mm in Sources */, + 70DBBFFD2B7C60B50021EA96 /* main.m in Sources */, + 70DBBFFF2B7C60B50021EA96 /* UrbitModule.swift in Sources */, + 70DBC0002B7C60B50021EA96 /* ContactStore.swift in Sources */, + 70DBC0012B7C60B50021EA96 /* Yarn.swift in Sources */, + 3DC46BC1B669DF8F5F059CA8 /* ExpoModulesProvider.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -635,14 +903,15 @@ /* Begin XCBuildConfiguration section */ 13B07F941A680F5B00A75B9A /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 6C2E3173556A471DD304B334 /* Pods-Landscape.debug.xcconfig */; + baseConfigurationReference = B35AC6CF758CAFC9D112A69F /* Pods-common-Landscape.debug.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CLANG_DEBUG_INFORMATION_LEVEL = "DWARF with dSYM File"; CLANG_ENABLE_MODULES = YES; CODE_SIGN_ENTITLEMENTS = Landscape/Landscape.entitlements; - CURRENT_PROJECT_VERSION = 44; + CURRENT_PROJECT_VERSION = 45; DEVELOPMENT_TEAM = XU9PR2N722; + DISPLAY_NAME = Tlon; ENABLE_BITCODE = NO; GCC_PREPROCESSOR_DEFINITIONS = ( "$(inherited)", @@ -653,14 +922,14 @@ "$(inherited)", "@executable_path/Frameworks", ); - MARKETING_VERSION = 3.1.3; + MARKETING_VERSION = 4.0.0; OTHER_LDFLAGS = ( "$(inherited)", "-ObjC", "-lc++", ); OTHER_SWIFT_FLAGS = "$(inherited) -D EXPO_CONFIGURATION_DEBUG"; - PRODUCT_BUNDLE_IDENTIFIER = io.tlon.groups.staging; + PRODUCT_BUNDLE_IDENTIFIER = io.tlon.groups; PRODUCT_NAME = Landscape; "SWIFT_OBJC_BRIDGING_HEADER[arch=*]" = "$(SRCROOT)/$(PROJECT_NAME)/$(SWIFT_MODULE_NAME)-Bridging-Header.h"; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; @@ -672,27 +941,28 @@ }; 13B07F951A680F5B00A75B9A /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 7A4D352CD337FB3A3BF06240 /* Pods-Landscape.release.xcconfig */; + baseConfigurationReference = 74633B6584F10A6AA2FEE339 /* Pods-common-Landscape.release.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CLANG_DEBUG_INFORMATION_LEVEL = "DWARF with dSYM File"; CLANG_ENABLE_MODULES = YES; CODE_SIGN_ENTITLEMENTS = Landscape/Landscape.entitlements; - CURRENT_PROJECT_VERSION = 44; + CURRENT_PROJECT_VERSION = 45; DEVELOPMENT_TEAM = XU9PR2N722; + DISPLAY_NAME = Tlon; INFOPLIST_FILE = Landscape/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", ); - MARKETING_VERSION = 3.1.3; + MARKETING_VERSION = 4.0.0; OTHER_LDFLAGS = ( "$(inherited)", "-ObjC", "-lc++", ); OTHER_SWIFT_FLAGS = "$(inherited) -D EXPO_CONFIGURATION_RELEASE"; - PRODUCT_BUNDLE_IDENTIFIER = io.tlon.groups.staging; + PRODUCT_BUNDLE_IDENTIFIER = io.tlon.groups; PRODUCT_NAME = Landscape; SWIFT_OBJC_BRIDGING_HEADER = "$(SRCROOT)/$(PROJECT_NAME)/$(SWIFT_MODULE_NAME)-Bridging-Header.h"; SWIFT_VERSION = 5.0; @@ -701,6 +971,78 @@ }; name = Release; }; + 70DBC0132B7C60B50021EA96 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = EE042EA448A634B1DCCA2092 /* Pods-common-Landscape-preview.debug.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_DEBUG_INFORMATION_LEVEL = "DWARF with dSYM File"; + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_ENTITLEMENTS = Landscape/Landscape.entitlements; + CURRENT_PROJECT_VERSION = 45; + DEVELOPMENT_TEAM = XU9PR2N722; + DISPLAY_NAME = "Tlon - Preview"; + ENABLE_BITCODE = NO; + GCC_PREPROCESSOR_DEFINITIONS = ( + "$(inherited)", + "FB_SONARKIT_ENABLED=1", + ); + INFOPLIST_FILE = Landscape/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + MARKETING_VERSION = 4.0.0; + OTHER_LDFLAGS = ( + "$(inherited)", + "-ObjC", + "-lc++", + ); + OTHER_SWIFT_FLAGS = "$(inherited) -D EXPO_CONFIGURATION_DEBUG"; + PRODUCT_BUNDLE_IDENTIFIER = io.tlon.groups.preview; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_MODULE_NAME = Landscape; + "SWIFT_OBJC_BRIDGING_HEADER[arch=*]" = "$(SRCROOT)/$(PROJECT_NAME)/$(SWIFT_MODULE_NAME)-Bridging-Header.h"; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = 1; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Debug; + }; + 70DBC0142B7C60B50021EA96 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 3B0B210E999A7E0E1A345468 /* Pods-common-Landscape-preview.release.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_DEBUG_INFORMATION_LEVEL = "DWARF with dSYM File"; + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_ENTITLEMENTS = Landscape/Landscape.entitlements; + CURRENT_PROJECT_VERSION = 45; + DEVELOPMENT_TEAM = XU9PR2N722; + DISPLAY_NAME = "Tlon - Preview"; + INFOPLIST_FILE = Landscape/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + MARKETING_VERSION = 4.0.0; + OTHER_LDFLAGS = ( + "$(inherited)", + "-ObjC", + "-lc++", + ); + OTHER_SWIFT_FLAGS = "$(inherited) -D EXPO_CONFIGURATION_RELEASE"; + PRODUCT_BUNDLE_IDENTIFIER = io.tlon.groups.preview; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_MODULE_NAME = Landscape; + SWIFT_OBJC_BRIDGING_HEADER = "$(SRCROOT)/$(PROJECT_NAME)/$(SWIFT_MODULE_NAME)-Bridging-Header.h"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = 1; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Release; + }; 70F99A942B2D2B5700D77256 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { @@ -832,21 +1174,27 @@ "${PODS_CONFIGURATION_BUILD_DIR}/ReactCommon-Samples/ReactCommon_Samples.framework/Headers/platform/ios", "${PODS_CONFIGURATION_BUILD_DIR}/React-NativeModulesApple/React_NativeModulesApple.framework/Headers", "${PODS_CONFIGURATION_BUILD_DIR}/React-graphics/React_graphics.framework/Headers/react/renderer/graphics/platform/ios", - " ${PODS_CONFIGURATION_BUILD_DIR}/ReactCommon/ReactCommon.framework/Headers", - " ${PODS_CONFIGURATION_BUILD_DIR}/React-Fabric/React_Fabric.framework/Headers/react/renderer/components/view/platform/cxx", - " ${PODS_CONFIGURATION_BUILD_DIR}/React-graphics/React_graphics.framework/Headers", - " ${PODS_CONFIGURATION_BUILD_DIR}/ReactCommon/ReactCommon.framework/Headers", - " ${PODS_CONFIGURATION_BUILD_DIR}/React-Fabric/React_Fabric.framework/Headers/react/renderer/components/view/platform/cxx", - " ${PODS_CONFIGURATION_BUILD_DIR}/React-graphics/React_graphics.framework/Headers", - " ${PODS_CONFIGURATION_BUILD_DIR}/ReactCommon/ReactCommon.framework/Headers", - " ${PODS_CONFIGURATION_BUILD_DIR}/React-Fabric/React_Fabric.framework/Headers/react/renderer/components/view/platform/cxx", - " ${PODS_CONFIGURATION_BUILD_DIR}/React-graphics/React_graphics.framework/Headers", - " ${PODS_CONFIGURATION_BUILD_DIR}/ReactCommon/ReactCommon.framework/Headers", - " ${PODS_CONFIGURATION_BUILD_DIR}/React-Fabric/React_Fabric.framework/Headers/react/renderer/components/view/platform/cxx", - " ${PODS_CONFIGURATION_BUILD_DIR}/React-graphics/React_graphics.framework/Headers", - " ${PODS_CONFIGURATION_BUILD_DIR}/ReactCommon/ReactCommon.framework/Headers", - " ${PODS_CONFIGURATION_BUILD_DIR}/React-Fabric/React_Fabric.framework/Headers/react/renderer/components/view/platform/cxx", - " ${PODS_CONFIGURATION_BUILD_DIR}/React-graphics/React_graphics.framework/Headers", + "${PODS_CONFIGURATION_BUILD_DIR}/ReactCommon/ReactCommon.framework/Headers", + "${PODS_CONFIGURATION_BUILD_DIR}/React-Fabric/React_Fabric.framework/Headers/react/renderer/components/view/platform/cxx", + "${PODS_CONFIGURATION_BUILD_DIR}/React-graphics/React_graphics.framework/Headers", + "${PODS_CONFIGURATION_BUILD_DIR}/ReactCommon/ReactCommon.framework/Headers", + "${PODS_CONFIGURATION_BUILD_DIR}/React-Fabric/React_Fabric.framework/Headers/react/renderer/components/view/platform/cxx", + "${PODS_CONFIGURATION_BUILD_DIR}/React-graphics/React_graphics.framework/Headers", + "${PODS_CONFIGURATION_BUILD_DIR}/ReactCommon/ReactCommon.framework/Headers", + "${PODS_CONFIGURATION_BUILD_DIR}/React-Fabric/React_Fabric.framework/Headers/react/renderer/components/view/platform/cxx", + "${PODS_CONFIGURATION_BUILD_DIR}/React-graphics/React_graphics.framework/Headers", + "${PODS_CONFIGURATION_BUILD_DIR}/ReactCommon/ReactCommon.framework/Headers", + "${PODS_CONFIGURATION_BUILD_DIR}/React-Fabric/React_Fabric.framework/Headers/react/renderer/components/view/platform/cxx", + "${PODS_CONFIGURATION_BUILD_DIR}/React-graphics/React_graphics.framework/Headers", + "${PODS_CONFIGURATION_BUILD_DIR}/ReactCommon/ReactCommon.framework/Headers", + "${PODS_CONFIGURATION_BUILD_DIR}/React-Fabric/React_Fabric.framework/Headers/react/renderer/components/view/platform/cxx", + "${PODS_CONFIGURATION_BUILD_DIR}/React-graphics/React_graphics.framework/Headers", + "${PODS_CONFIGURATION_BUILD_DIR}/ReactCommon/ReactCommon.framework/Headers", + "${PODS_CONFIGURATION_BUILD_DIR}/React-Fabric/React_Fabric.framework/Headers/react/renderer/components/view/platform/cxx", + "${PODS_CONFIGURATION_BUILD_DIR}/React-graphics/React_graphics.framework/Headers", + "${PODS_CONFIGURATION_BUILD_DIR}/ReactCommon/ReactCommon.framework/Headers", + "${PODS_CONFIGURATION_BUILD_DIR}/React-Fabric/React_Fabric.framework/Headers/react/renderer/components/view/platform/cxx", + "${PODS_CONFIGURATION_BUILD_DIR}/React-graphics/React_graphics.framework/Headers", ); IPHONEOS_DEPLOYMENT_TARGET = 16.0; LD_RUNPATH_SEARCH_PATHS = ( @@ -858,11 +1206,7 @@ ONLY_ACTIVE_ARCH = YES; OTHER_CFLAGS = "$(inherited)"; OTHER_CPLUSPLUSFLAGS = "$(inherited)"; - OTHER_LDFLAGS = ( - "$(inherited)", - "-Wl", - "-ld_classic", - ); + OTHER_LDFLAGS = "$(inherited)"; REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native"; SDKROOT = iphoneos; USE_HERMES = true; @@ -921,21 +1265,27 @@ "${PODS_CONFIGURATION_BUILD_DIR}/ReactCommon-Samples/ReactCommon_Samples.framework/Headers/platform/ios", "${PODS_CONFIGURATION_BUILD_DIR}/React-NativeModulesApple/React_NativeModulesApple.framework/Headers", "${PODS_CONFIGURATION_BUILD_DIR}/React-graphics/React_graphics.framework/Headers/react/renderer/graphics/platform/ios", - " ${PODS_CONFIGURATION_BUILD_DIR}/ReactCommon/ReactCommon.framework/Headers", - " ${PODS_CONFIGURATION_BUILD_DIR}/React-Fabric/React_Fabric.framework/Headers/react/renderer/components/view/platform/cxx", - " ${PODS_CONFIGURATION_BUILD_DIR}/React-graphics/React_graphics.framework/Headers", - " ${PODS_CONFIGURATION_BUILD_DIR}/ReactCommon/ReactCommon.framework/Headers", - " ${PODS_CONFIGURATION_BUILD_DIR}/React-Fabric/React_Fabric.framework/Headers/react/renderer/components/view/platform/cxx", - " ${PODS_CONFIGURATION_BUILD_DIR}/React-graphics/React_graphics.framework/Headers", - " ${PODS_CONFIGURATION_BUILD_DIR}/ReactCommon/ReactCommon.framework/Headers", - " ${PODS_CONFIGURATION_BUILD_DIR}/React-Fabric/React_Fabric.framework/Headers/react/renderer/components/view/platform/cxx", - " ${PODS_CONFIGURATION_BUILD_DIR}/React-graphics/React_graphics.framework/Headers", - " ${PODS_CONFIGURATION_BUILD_DIR}/ReactCommon/ReactCommon.framework/Headers", - " ${PODS_CONFIGURATION_BUILD_DIR}/React-Fabric/React_Fabric.framework/Headers/react/renderer/components/view/platform/cxx", - " ${PODS_CONFIGURATION_BUILD_DIR}/React-graphics/React_graphics.framework/Headers", - " ${PODS_CONFIGURATION_BUILD_DIR}/ReactCommon/ReactCommon.framework/Headers", - " ${PODS_CONFIGURATION_BUILD_DIR}/React-Fabric/React_Fabric.framework/Headers/react/renderer/components/view/platform/cxx", - " ${PODS_CONFIGURATION_BUILD_DIR}/React-graphics/React_graphics.framework/Headers", + "${PODS_CONFIGURATION_BUILD_DIR}/ReactCommon/ReactCommon.framework/Headers", + "${PODS_CONFIGURATION_BUILD_DIR}/React-Fabric/React_Fabric.framework/Headers/react/renderer/components/view/platform/cxx", + "${PODS_CONFIGURATION_BUILD_DIR}/React-graphics/React_graphics.framework/Headers", + "${PODS_CONFIGURATION_BUILD_DIR}/ReactCommon/ReactCommon.framework/Headers", + "${PODS_CONFIGURATION_BUILD_DIR}/React-Fabric/React_Fabric.framework/Headers/react/renderer/components/view/platform/cxx", + "${PODS_CONFIGURATION_BUILD_DIR}/React-graphics/React_graphics.framework/Headers", + "${PODS_CONFIGURATION_BUILD_DIR}/ReactCommon/ReactCommon.framework/Headers", + "${PODS_CONFIGURATION_BUILD_DIR}/React-Fabric/React_Fabric.framework/Headers/react/renderer/components/view/platform/cxx", + "${PODS_CONFIGURATION_BUILD_DIR}/React-graphics/React_graphics.framework/Headers", + "${PODS_CONFIGURATION_BUILD_DIR}/ReactCommon/ReactCommon.framework/Headers", + "${PODS_CONFIGURATION_BUILD_DIR}/React-Fabric/React_Fabric.framework/Headers/react/renderer/components/view/platform/cxx", + "${PODS_CONFIGURATION_BUILD_DIR}/React-graphics/React_graphics.framework/Headers", + "${PODS_CONFIGURATION_BUILD_DIR}/ReactCommon/ReactCommon.framework/Headers", + "${PODS_CONFIGURATION_BUILD_DIR}/React-Fabric/React_Fabric.framework/Headers/react/renderer/components/view/platform/cxx", + "${PODS_CONFIGURATION_BUILD_DIR}/React-graphics/React_graphics.framework/Headers", + "${PODS_CONFIGURATION_BUILD_DIR}/ReactCommon/ReactCommon.framework/Headers", + "${PODS_CONFIGURATION_BUILD_DIR}/React-Fabric/React_Fabric.framework/Headers/react/renderer/components/view/platform/cxx", + "${PODS_CONFIGURATION_BUILD_DIR}/React-graphics/React_graphics.framework/Headers", + "${PODS_CONFIGURATION_BUILD_DIR}/ReactCommon/ReactCommon.framework/Headers", + "${PODS_CONFIGURATION_BUILD_DIR}/React-Fabric/React_Fabric.framework/Headers/react/renderer/components/view/platform/cxx", + "${PODS_CONFIGURATION_BUILD_DIR}/React-graphics/React_graphics.framework/Headers", ); IPHONEOS_DEPLOYMENT_TARGET = 16.0; LD_RUNPATH_SEARCH_PATHS = ( @@ -946,11 +1296,7 @@ MTL_ENABLE_DEBUG_INFO = NO; OTHER_CFLAGS = "$(inherited)"; OTHER_CPLUSPLUSFLAGS = "$(inherited)"; - OTHER_LDFLAGS = ( - "$(inherited)", - "-Wl", - "-ld_classic", - ); + OTHER_LDFLAGS = "$(inherited)"; REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native"; SDKROOT = iphoneos; USE_HERMES = true; @@ -970,6 +1316,15 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; + 70DBC0122B7C60B50021EA96 /* Build configuration list for PBXNativeTarget "Landscape-preview" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 70DBC0132B7C60B50021EA96 /* Debug */, + 70DBC0142B7C60B50021EA96 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; 70F99A962B2D2B5700D77256 /* Build configuration list for PBXNativeTarget "LandscapeTests" */ = { isa = XCConfigurationList; buildConfigurations = ( @@ -999,7 +1354,7 @@ minimumVersion = 1.0.0; }; }; - 70D386462A6098F800AFB46E /* XCRemoteSwiftPackageReference "Alamofire.git" */ = { + 70D386462A6098F800AFB46E /* XCRemoteSwiftPackageReference "Alamofire" */ = { isa = XCRemoteSwiftPackageReference; repositoryURL = "https://github.com/Alamofire/Alamofire.git"; requirement = { @@ -1015,6 +1370,30 @@ minimumVersion = 1.0.0; }; }; + 70DBBFE12B7C60B50021EA96 /* XCRemoteSwiftPackageReference "SimpleKeychain" */ = { + isa = XCRemoteSwiftPackageReference; + repositoryURL = "https://github.com/auth0/SimpleKeychain"; + requirement = { + kind = upToNextMajorVersion; + minimumVersion = 1.0.0; + }; + }; + 70DBBFE32B7C60B50021EA96 /* XCRemoteSwiftPackageReference "Alamofire" */ = { + isa = XCRemoteSwiftPackageReference; + repositoryURL = "https://github.com/Alamofire/Alamofire.git"; + requirement = { + kind = upToNextMajorVersion; + minimumVersion = 5.0.0; + }; + }; + 70DBBFE52B7C60B50021EA96 /* XCRemoteSwiftPackageReference "UrsusSigil" */ = { + isa = XCRemoteSwiftPackageReference; + repositoryURL = "https://github.com/alecananian/UrsusSigil"; + requirement = { + kind = upToNextMajorVersion; + minimumVersion = 1.0.0; + }; + }; /* End XCRemoteSwiftPackageReference section */ /* Begin XCSwiftPackageProductDependency section */ @@ -1025,7 +1404,7 @@ }; 70D386472A6098F800AFB46E /* Alamofire */ = { isa = XCSwiftPackageProductDependency; - package = 70D386462A6098F800AFB46E /* XCRemoteSwiftPackageReference "Alamofire.git" */; + package = 70D386462A6098F800AFB46E /* XCRemoteSwiftPackageReference "Alamofire" */; productName = Alamofire; }; 70D3866E2A60A3B300AFB46E /* UrsusSigil */ = { @@ -1033,6 +1412,21 @@ package = 70D3866D2A60A3B300AFB46E /* XCRemoteSwiftPackageReference "UrsusSigil" */; productName = UrsusSigil; }; + 70DBBFE02B7C60B50021EA96 /* SimpleKeychain */ = { + isa = XCSwiftPackageProductDependency; + package = 70DBBFE12B7C60B50021EA96 /* XCRemoteSwiftPackageReference "SimpleKeychain" */; + productName = SimpleKeychain; + }; + 70DBBFE22B7C60B50021EA96 /* Alamofire */ = { + isa = XCSwiftPackageProductDependency; + package = 70DBBFE32B7C60B50021EA96 /* XCRemoteSwiftPackageReference "Alamofire" */; + productName = Alamofire; + }; + 70DBBFE42B7C60B50021EA96 /* UrsusSigil */ = { + isa = XCSwiftPackageProductDependency; + package = 70DBBFE52B7C60B50021EA96 /* XCRemoteSwiftPackageReference "UrsusSigil" */; + productName = UrsusSigil; + }; /* End XCSwiftPackageProductDependency section */ }; rootObject = 83CBB9F71A601CBA00E9B192 /* Project object */; diff --git a/apps/tlon-mobile/ios/Landscape.xcodeproj/xcshareddata/xcschemes/Landscape-preview.xcscheme b/apps/tlon-mobile/ios/Landscape.xcodeproj/xcshareddata/xcschemes/Landscape-preview.xcscheme new file mode 100644 index 0000000000..5ae1378bf1 --- /dev/null +++ b/apps/tlon-mobile/ios/Landscape.xcodeproj/xcshareddata/xcschemes/Landscape-preview.xcscheme @@ -0,0 +1,77 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/AppIcon-1024.png b/apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/AppIcon-1024.png new file mode 100644 index 0000000000000000000000000000000000000000..ea37906fb576a9557fbed416f3811e7fece0e395 GIT binary patch literal 13137 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 SJuMw`uyx~(4f*R>C;t~vuZG+J literal 0 HcmV?d00001 diff --git a/apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/AppIcon-20@2x.png b/apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/AppIcon-20@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..32f709c476b240ea50c47fd4fd171196ed367a46 GIT binary patch literal 443 zcmeAS@N?(olHy`uVBq!ia0vp^8X(NU1|)m_?Z^dEoCO|{#S9GG!XV7ZFl&wkP>``W z$lZxy-8q?;Kn_c~qpu?a!^VE@KZ&eBxd2ZW$B+ufx6?27HXHCb+`atwFq;9B@&-n2 z119MMY#SJJ7cjaaY~5wrjG=!?Jnl6N;?< zvgjJ$d1KqPN$34BmPEG+NBWKw=JYFsYKNBI-uC~f^V`Ktzq%e6u3Gh|ur%Ygrbpr< zotoFNcfQ+hFOivh^hE5R9tDmAEQ?g@!q)Cu#Vcc4-8fXJ+Tlh@1On ze`FJ1L}aK$d{fC#!KtHyQ%41-jtWj46`VRMICVq>*J?GIOeVD7@9BI#lQG6!H=7L& z1_P4DaN1}zGFF^<#_@PGc2Zd1BQU;)Td&>-gYflwZ5E4#vEF@`Xr2e-3pW(FmLmo&D(f9&c@=NQ!rbVwj$m2bUM-H za(O!Ta5&ukj*BSPVJusoqRDv$ETI!t-=eW$4mX=k){uUyVC42}HWRJVKO_k9v)Ajn zYqeT+U6#*Tgz|7WBniYkoL`$m>_o787Z%Ot!FFKO@ArwDFZxU5S7V*#u2`1p^}4%9 z_}ZeBjq#g`uu6BkUD|H9#EDo)KeFX=DOtGQFIcj@j3S3op;xO__BjmuR})Rq3fs#@ zqd{CmBRFg+uh%Pa!7dn;`9B*1G$bBWc1~D}R?&VKhK5A2pXL{gz44>UiwZ4y>cQT4 zgxK|#cDtPmS%i7J-M;ImTdme-hcrSJAzcKbKwxXgAJV?@z|l>Zr=d`se@PwFiuTgL z=5p3M<2$Us5~mzD@5W(y565Eq-%{$R;M6IdV76r`Ry3qjM+K*j3QiproH{BvbyRTb bluqz3T1Y&SnHH~f00000NkvXXu0mjfXF4IY literal 0 HcmV?d00001 diff --git a/apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/AppIcon-29@2x.png b/apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/AppIcon-29@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..5ea11d00f1d9e2624d471d89e598c50abd50446b GIT binary patch literal 599 zcmV-d0;v6oP)R( ziu%J9QqRsAjYfB}c-<;d{9woFbb5O(?qSDzy=D_-i5DYUv@yHBBZ{J@@2i^HbJWER z;EbBuMOUj;(MGOvQL88<%|vC}7{Z*Q!73v#o6T%>1SXS-t(F|i<&roFE;^sj|Liw2 zGiz^xMilk90H%r}ZYs|#KO48(ZLuE}5i%AVsw7lPKAbrkRJ82eBuUsrYahC}H;>1o zZ6j0t393pOagQDjhoUW7)Gq^v!y$3d2vNVrjpLX&U>8MUP==qaWe)-WfpyjeM&#wW zh#3c-O&M1j_(cJhRs08Q2w@*0<``W z$lZxy-8q?;Kn_c~qpu?a!^VE@KZ&di49rHJE{-7;jBjT*PJ9_4($;Ujz9E!RHGome zf%Sz0`-=uHAhUz-1%v1X$GCrcPWly@uUTVT?0@F}**i0PTc(~ryYuj)c**z+=oBudW&BTbEzftPzvx{vKh)KDkJJvgeQB4{_Sh6aC&PZ)`uT7^64+VcO=- z!v}2zymaPtYwqlIQx3mYV%7V2eRYk=fup};1m2C;)sP;iUgT%y)AoY>bpZl7? zuB4ykJ#NaAUB7IPc-EQ4C3N=85vhDd@x9hso~IHF1iWWVk6syKv^Hw3*Z%wGeRn?l zY`J{@`hwkeQ+D6=+I;iRq$rqm@!) zUp{qObGtfv?X-vox|>+H^PSo7p?ilghqme6?Gv(BI?OvZC1(4FzdCt&*{NDNUhn+f zf97qUeRJ6znSx4j(Vn>1*GjLy-WqZ6_NC&G`r4Q0BxRo8+tHq@U4Czd^o0x6%?dv* zNyi!pA1=(>TlX3Uh~hN5x2mH>v2YE%lU``W z$lZxy-8q?;Kn_c~qpu?a!^VE@KZ&di3{3AmT^vIy7~jtRKT*+90xMOL&hO$}He#1-Py=%o?B$*Q#wr=W^fW3QXD+T_kRW!5`m^d8Oe=6ZGd zX;9VPc}F@n>urrXyY_l^c+2CDFZN`7em_TZTl|9CZ>{8W-$k|^PUQJ?CpzmQlYFJ; zXP%omW}KbEg~cQ7O&jA@a-^8HtG0cV~y+D)>H zoA0My+4lM8oYlXV>4!}zQvLMr-@MiKzZvS(mkM`eoc7E7_IqzckX2*dqq*7tZods% zWB9UWvxuzc#$OzoMqhtUe!AO*LrJIC=+BWZ)`{Zl+>SlonE8Kt(x)eKt_sgu;sp<~ zSZOYmY2E17r})W1lXX$#`84B?wTmKzQ{_8WdhWk}esB9f{>YhcmfSQ?-g!6AXs+K; zp~?FmPYsk%&YR)G;Bg}AuKUVa2EX>6FKW29vTm~acQ2M@s%K6_JY)5?=F%7I?ys^6 z-?CuK?O6|{ZfGe7M>RgQnZPt(Wp)6=OSUWb)wmkhe~DikrX9ZBCwpd3oZ|VMX~}jH z?_Nm0J2x}ti=RS^$kYeZ3wNGhlvgT$k%Ogf^54Wd{wC+j0~YET#Sh&bf_C5ao0c)5 z`MSrlx-yn0`|paMYntkD@vv*;v(G!X?x|o|RJn*#Jk>zrh=RUc* gZxAFQy**+7bLjQTm-gQ!fmwmU)78&qol`;+01aq&S^xk5 literal 0 HcmV?d00001 diff --git a/apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/AppIcon-40@3x.png b/apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/AppIcon-40@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..a5a15155b47d16e94fb31be2f2a8bb2d0cfc63ae GIT binary patch literal 1213 zcmeAS@N?(olHy`uVBq!ia0vp^6(G#P1|%(0%q{^b&H|6fVg?3oVGw3ym^DWND9BhG zDT)vpH=-_G2g_At26cYZTs`<%FmwR65jI1$g!7Yvhu+v z9tM^|K7Euh|Cl*_`}Xb4g9iu9%*}JFt9Sp2Hk9gp^Y-moJA3=LA3t84H-G-=^D{Ih zl4@)B?%1(IqwR3wMfRHi@7}HBXgzTC>o<;Yb?M%K1*#FWO()W?_QaZLgy{j4bOXQsO7&i;dbB0 z4<8cl6&l`IuT<_Ocz*xJrYNH1tHh7YuBcU;_JE@zQMc{*n`tcW38&n> zfyq#YG1Es(gXQ@<>0oB9^}gF@x0iXVSUIeVE&3pITWPZ9f9s4{8Edl79envR^ULQe zCvGvX^Ge}bBJq6f(HS8TCEOcZ3Q9M*O3(N>PK zuWQ6@fRXQW+T^xyQk%xsWCzz1zPoqmuZ&o&Q>}RCbKL#)W^%4Q#~*(Z4b(Y)@Sb$6 ze);3=5t|;%nlHVmV=I4W>+{g~XD`o(>%`2>nJCorf1%}B#=iFO7@ND(Sq^%0>C_Cf+-qcR=cQ#j*TnzGuQ*L=sbe3cE>h ziydz|x-p?pCqjl|=A8YCC(fPolaY}*a`L37jI3XSYtsuq@-j(q-H z9Ks~<=UD!t4LQW@`Fx9UQXJn+7qc~&ZhdAX|N{eR!&QO%H-1zOxidKiAaPvulgpVQ?<=GN>{Gv6dbcIrG$oJFj8sd66@xr;7cNKjE8t`e~5b zR{>s)XT@hd8dn9~f4p$o9OmN3r54Xsn^tXX=5jM!w07E_GrpVk6nCnx_S|c~nzQZE zu9z98W-&fH3=HCfeR~o-bgGk<-(Q)1&{=2RA2YvAX#tbCbt>3+Ztm=vCCKg9khphE zgr~>02Rsw3=lZFtTwe0W@PP^E*5osVx4)$@<}l9MzCHUa(C5vZ^QQLlmRTBv$F+Zc zCmGTk+xfuiR+aJVZL;>w(mraFa}pD6CU{@~sy=lYsU)#@>&n)1d$GG)= z$Y1lVPfj+ls_)pp-~V5Ip7Q~##QN%L>l+&$@Ms=~gvMKf0--|{~8=aFiikc$J!!P;VTAaF&nP;mbA1m9!r(Ua$ZR3)A zw0qA^*=ZC0-F|-8c!kt$Er|!Vk+uD|za1@lw0=U6Y1z65`z9Igd46xR>z!&-R%V{- z-8RP0-}b7#-#cf0pw{}IhwQr#F~%)!;n@+lXT|;4$o;1`_0FC>dsWW~p0jr)bZvKt z+}x$Tm>&p2uB!@%^q%E%vz2fz%Imr;`sQ82E;VUIiTS$PlAU7rW*;rFHS;Qvtymf) zezAL>Y`?(@sofhMSh+0@G`*v=I?u0JLH>Nso?>o$WsNdpmi($6F&cfW-N^?ZMQpGT r)4|5PQvdVJnd7!p$ezFq{#^dpsf_9A literal 0 HcmV?d00001 diff --git a/apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/AppIcon-60@3x.png b/apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/AppIcon-60@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..a066e82a40226523b2fd7504f35afd29f1c614cb GIT binary patch literal 1856 zcmcgteLT}!7@xI?`7HCYWJbBljXpKGgsF_FDS1h@s80(kG1kN)lL}cc3zd@4?oz_U zsF_iUjg&{A)Xw!6m>+k#5{iAa}&v`!QIp;jjbIy6b&vV7sn*fKQU?30( zzQ@De58whdX=wuEj%H0;fN4j01jc|sItFUe0OjPZ0fZVcegrpASqpj$m_Sardbxr? z6&X6;gP|ahreu%1tN$5|$vzp;z!UveCcn2>o5e*I0X=MG5LE114i16V!!E$UNZd*s z6bFre7XP&s)cAhAbM+q%10S4f9}w;w>y0sGb>D3)c@!QB5Bld%O&d3Ea4N12mc&AW z;hP{Rl9t_LL|A~ixcpZv%+gaz6PLd~Q_KwE=ayAVZ~6587vcS)#A-$}(DJ9Ir*qkC z_Q?1+&&kDwF0L`YO`b!1IHywDS65f((#DlarVKSVb5Kslyx>v44i>EQDQpYuoX>$& zXYzOzDYsu|S-kUUrO=NM?PITF9UZ% z?S-A#ojW;j8lBGPC6I9HP1GWe!b;vgSNxJU)%TJ}q$CupRH{I0D1EybMzl~MNfPCG&Xop_}C`72C#cACwFY1-BbJ<~EU-)=U~#xEX%SqlvSz^X|5BCR9uZ-X+JU7|K`3 zJ`*xCv$B@ID`Fj>QULCC`GesBs+2##Y2=?RTB<;Y}PX1AcGsa0};<`F~${jr^IF)6Xcx^ah z7gxss)x?gy1}J-OvvqDLarwd_6Y!Djnwpx*^L(2&JbyP=Cpsz$fp&>;Y-U29BVe85Q>)r1xU>c_F1!akbB8ZvV_TL@KaRayCPc|*q9?h1Y1@8OP#{sV*yV?poQEl%$m zora&zur3C^s#LjZexRV!`&Cj}341F;!!B1g)mJTT_%uh(sS72o6Q}xSSAwi8+fhCd z9MlIrX|mvcy5c@Yuo!hvPx^XeJMb>LLV+!I?V=k0$#t3tP1Ip zp_8`UVoH56rFU0x%(hsFq0Y|EI^;S>rg74ifcL*^zKJaF+W>hUlq1vf8ahRqw*?>h z%a?16$5@C{DOGVOHS)0^ec4HC{2rQ%Z?Kd@n+(HP>zlL~56vGngp6c+Dj8+^2&u=o z)sk84o5zwtyC27a6P}|T!wd3>&Ov*K@|m@;<4f6^wlP7~LRf9^UCuO?w=wmmzawVFw5_xSW-&VccNzEswBJ0B^D7_ zJ}ZG3Ei>L^Djww(^%%IiBq{}6h;pim;e4;K^1YFf5qrh)Z@srpBBZOVxYmiV$cZt| z%h+?Mc!czQ*P9-UFzD6)OWrNQ6eRPPW%~cFCJNnsPc4yg6_?0B!2|8tp6AXe Q0tz#Dy85}Sb4q9e0EL(iEdT%j literal 0 HcmV?d00001 diff --git a/apps/tlon-mobile/ios/Landscape/Images.xcassets/Contents.json b/apps/tlon-mobile/ios/Landscape/Images.xcassets/Contents.json index ed285c2e5f..73c00596a7 100644 --- a/apps/tlon-mobile/ios/Landscape/Images.xcassets/Contents.json +++ b/apps/tlon-mobile/ios/Landscape/Images.xcassets/Contents.json @@ -1,6 +1,6 @@ { "info" : { - "version" : 1, - "author" : "expo" + "author" : "xcode", + "version" : 1 } } diff --git a/apps/tlon-mobile/ios/Landscape/Info.plist b/apps/tlon-mobile/ios/Landscape/Info.plist index 37fa2f9707..97c41e52f5 100644 --- a/apps/tlon-mobile/ios/Landscape/Info.plist +++ b/apps/tlon-mobile/ios/Landscape/Info.plist @@ -9,7 +9,7 @@ CFBundleDevelopmentRegion $(DEVELOPMENT_LANGUAGE) CFBundleDisplayName - Tlon + $(DISPLAY_NAME) CFBundleExecutable $(EXECUTABLE_NAME) CFBundleIdentifier @@ -29,7 +29,7 @@ CFBundleURLSchemes - io.tlon.groups.staging + io.tlon.groups diff --git a/apps/tlon-mobile/ios/Landscape/Supporting/Expo.plist b/apps/tlon-mobile/ios/Landscape/Supporting/Expo.plist index e39700a29e..5f8a893567 100644 --- a/apps/tlon-mobile/ios/Landscape/Supporting/Expo.plist +++ b/apps/tlon-mobile/ios/Landscape/Supporting/Expo.plist @@ -9,7 +9,7 @@ EXUpdatesLaunchWaitMs 0 EXUpdatesRuntimeVersion - 3.1.3 + 4.0.0 EXUpdatesURL https://u.expo.dev/617bb643-5bf6-4c40-8af6-c6e9dd7e3bd0 diff --git a/apps/tlon-mobile/ios/Podfile b/apps/tlon-mobile/ios/Podfile index 91887c2e3c..39897ec05e 100644 --- a/apps/tlon-mobile/ios/Podfile +++ b/apps/tlon-mobile/ios/Podfile @@ -38,7 +38,7 @@ elsif podfile_properties.key?('ios.flipper') then end end -target 'Landscape' do +abstract_target 'common' do use_expo_modules! config = use_native_modules! @@ -86,4 +86,10 @@ target 'Landscape' do Pod::UI.warn e end end + + target 'Landscape' do + end + + target 'Landscape-preview' do + end end diff --git a/apps/tlon-mobile/ios/Podfile.lock b/apps/tlon-mobile/ios/Podfile.lock index 4572ce51ac..97c44885eb 100644 --- a/apps/tlon-mobile/ios/Podfile.lock +++ b/apps/tlon-mobile/ios/Podfile.lock @@ -1589,6 +1589,6 @@ SPEC CHECKSUMS: UMAppLoader: 5df85360d65cabaef544be5424ac64672e648482 Yoga: 1b901a6d6eeba4e8a2e8f308f708691cdb5db312 -PODFILE CHECKSUM: bebef443864c4d459a5b44fcd000912004c764e1 +PODFILE CHECKSUM: 82da24eb176d4abdeaf445b3581717ec492dd7e8 -COCOAPODS: 1.13.0 +COCOAPODS: 1.15.2 diff --git a/apps/tlon-mobile/package.json b/apps/tlon-mobile/package.json index 56accd0d12..90cf56b5dd 100644 --- a/apps/tlon-mobile/package.json +++ b/apps/tlon-mobile/package.json @@ -1,6 +1,6 @@ { "name": "tlon-mobile", - "version": "3.1.3", + "version": "4.0.0", "private": true, "scripts": { "dev": "concurrently \"tailwindcss --input input.css --output tailwind.css --no-autoprefixer --watch\" \"tailwind-rn --watch\"", diff --git a/package-lock.json b/package-lock.json index 0c775186f9..784d62df01 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,5 +1,5 @@ { - "name": "landscape-apps-mono", + "name": "landscape-apps", "lockfileVersion": 3, "requires": true, "packages": { @@ -17,8 +17,8 @@ "vitest": "^1.2.2" }, "engines": { - "node": "^20.11.0", - "npm": "^10.2.4" + "node": ">=18.18.0", + "npm": ">=9.8.1" } }, "apps/spill": { @@ -88,7 +88,7 @@ } }, "apps/tlon-mobile": { - "version": "3.1.3", + "version": "4.0.0", "hasInstallScript": true, "dependencies": { "@google-cloud/recaptcha-enterprise-react-native": "^18.3.0", diff --git a/package.json b/package.json index ebc8c5a5cb..175061558d 100644 --- a/package.json +++ b/package.json @@ -24,7 +24,7 @@ "vitest": "^1.2.2" }, "engines": { - "node": "^20.11.0", - "npm": "^10.2.4" + "node": ">=18.18.0", + "npm": ">=9.8.1" } } From b2ca7eb1c1a6000e1fa66869833d6d706ca1bfc5 Mon Sep 17 00:00:00 2001 From: Alec Ananian <1013230+alecananian@users.noreply.github.com> Date: Thu, 15 Feb 2024 16:46:12 -0800 Subject: [PATCH 2/5] disable notification prompt --- apps/tlon-mobile/src/AppWebView.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/tlon-mobile/src/AppWebView.tsx b/apps/tlon-mobile/src/AppWebView.tsx index db84de1294..edf9bfb04a 100644 --- a/apps/tlon-mobile/src/AppWebView.tsx +++ b/apps/tlon-mobile/src/AppWebView.tsx @@ -14,7 +14,7 @@ import { useShip } from './contexts/ship'; import { useWebView } from './hooks/useWebView'; import { markChatRead } from './lib/chatApi'; import { getHostingUser } from './lib/hostingApi'; -import { connectNotifications } from './lib/notifications'; +// import { connectNotifications } from './lib/notifications'; import type { MainStackParamList } from './types'; import { getHostingToken, @@ -143,7 +143,7 @@ export const RawAppWebView = ({ ); // Start notification prompt - connectNotifications(); + // connectNotifications(); return () => { // Clean up listeners From 10fe27b4c0c011c1bfa17501fc4304bb35982e17 Mon Sep 17 00:00:00 2001 From: Alec Ananian <1013230+alecananian@users.noreply.github.com> Date: Fri, 16 Feb 2024 14:47:57 -0800 Subject: [PATCH 3/5] add android preview app icon --- apps/tlon-mobile/android/app/build.gradle | 14 ++++----- .../{src/production => }/google-services.json | 29 ++++++++++++++++++ .../app/src/preview/google-services.json | 29 ------------------ .../app/src/preview/ic_launcher-playstore.png | Bin 0 -> 11831 bytes .../res/mipmap-anydpi-v26/ic_launcher.xml | 5 +++ .../mipmap-anydpi-v26/ic_launcher_round.xml | 5 +++ .../preview/res/mipmap-hdpi/ic_launcher.webp | Bin 0 -> 578 bytes .../mipmap-hdpi/ic_launcher_foreground.webp | Bin 0 -> 500 bytes .../res/mipmap-hdpi/ic_launcher_round.webp | Bin 0 -> 1444 bytes .../preview/res/mipmap-mdpi/ic_launcher.webp | Bin 0 -> 434 bytes .../mipmap-mdpi/ic_launcher_foreground.webp | Bin 0 -> 364 bytes .../res/mipmap-mdpi/ic_launcher_round.webp | Bin 0 -> 980 bytes .../preview/res/mipmap-xhdpi/ic_launcher.webp | Bin 0 -> 744 bytes .../mipmap-xhdpi/ic_launcher_foreground.webp | Bin 0 -> 652 bytes .../res/mipmap-xhdpi/ic_launcher_round.webp | Bin 0 -> 2046 bytes .../res/mipmap-xxhdpi/ic_launcher.webp | Bin 0 -> 1126 bytes .../mipmap-xxhdpi/ic_launcher_foreground.webp | Bin 0 -> 980 bytes .../res/mipmap-xxhdpi/ic_launcher_round.webp | Bin 0 -> 3262 bytes .../res/mipmap-xxxhdpi/ic_launcher.webp | Bin 0 -> 1544 bytes .../ic_launcher_foreground.webp | Bin 0 -> 1340 bytes .../res/mipmap-xxxhdpi/ic_launcher_round.webp | Bin 0 -> 4690 bytes .../res/values/ic_launcher_background.xml | 4 +++ .../preview/res/{value => values}/strings.xml | 0 apps/tlon-mobile/android/build.gradle | 2 +- ...eService-Info-io.tlon.groups.preview.plist | 12 ++++---- 25 files changed, 56 insertions(+), 44 deletions(-) rename apps/tlon-mobile/android/app/{src/production => }/google-services.json (55%) delete mode 100644 apps/tlon-mobile/android/app/src/preview/google-services.json create mode 100644 apps/tlon-mobile/android/app/src/preview/ic_launcher-playstore.png create mode 100644 apps/tlon-mobile/android/app/src/preview/res/mipmap-anydpi-v26/ic_launcher.xml create mode 100644 apps/tlon-mobile/android/app/src/preview/res/mipmap-anydpi-v26/ic_launcher_round.xml create mode 100644 apps/tlon-mobile/android/app/src/preview/res/mipmap-hdpi/ic_launcher.webp create mode 100644 apps/tlon-mobile/android/app/src/preview/res/mipmap-hdpi/ic_launcher_foreground.webp create mode 100644 apps/tlon-mobile/android/app/src/preview/res/mipmap-hdpi/ic_launcher_round.webp create mode 100644 apps/tlon-mobile/android/app/src/preview/res/mipmap-mdpi/ic_launcher.webp create mode 100644 apps/tlon-mobile/android/app/src/preview/res/mipmap-mdpi/ic_launcher_foreground.webp create mode 100644 apps/tlon-mobile/android/app/src/preview/res/mipmap-mdpi/ic_launcher_round.webp create mode 100644 apps/tlon-mobile/android/app/src/preview/res/mipmap-xhdpi/ic_launcher.webp create mode 100644 apps/tlon-mobile/android/app/src/preview/res/mipmap-xhdpi/ic_launcher_foreground.webp create mode 100644 apps/tlon-mobile/android/app/src/preview/res/mipmap-xhdpi/ic_launcher_round.webp create mode 100644 apps/tlon-mobile/android/app/src/preview/res/mipmap-xxhdpi/ic_launcher.webp create mode 100644 apps/tlon-mobile/android/app/src/preview/res/mipmap-xxhdpi/ic_launcher_foreground.webp create mode 100644 apps/tlon-mobile/android/app/src/preview/res/mipmap-xxhdpi/ic_launcher_round.webp create mode 100644 apps/tlon-mobile/android/app/src/preview/res/mipmap-xxxhdpi/ic_launcher.webp create mode 100644 apps/tlon-mobile/android/app/src/preview/res/mipmap-xxxhdpi/ic_launcher_foreground.webp create mode 100644 apps/tlon-mobile/android/app/src/preview/res/mipmap-xxxhdpi/ic_launcher_round.webp create mode 100644 apps/tlon-mobile/android/app/src/preview/res/values/ic_launcher_background.xml rename apps/tlon-mobile/android/app/src/preview/res/{value => values}/strings.xml (100%) diff --git a/apps/tlon-mobile/android/app/build.gradle b/apps/tlon-mobile/android/app/build.gradle index 62c4dbca7a..9d02762753 100644 --- a/apps/tlon-mobile/android/app/build.gradle +++ b/apps/tlon-mobile/android/app/build.gradle @@ -82,13 +82,11 @@ def jscFlavor = 'org.webkit:android-jsc:+' android { ndkVersion rootProject.ext.ndkVersion - buildToolsVersion rootProject.ext.buildToolsVersion - compileSdk rootProject.ext.compileSdkVersion - namespace "io.tlon.landscape" defaultConfig { minSdkVersion rootProject.ext.minSdkVersion targetSdkVersion rootProject.ext.targetSdkVersion + compileSdk rootProject.ext.compileSdkVersion versionCode 45 versionName "4.0.0" @@ -120,7 +118,7 @@ android { useLegacyPackaging (findProperty('expo.useLegacyPackaging')?.toBoolean() ?: false) } } - flavorDimensions "env" + flavorDimensions = ["env"] productFlavors { production { dimension "env" @@ -183,14 +181,14 @@ dependencies { implementation jscFlavor } - implementation("androidx.swiperefreshlayout:swiperefreshlayout:1.0.0") + implementation("androidx.swiperefreshlayout:swiperefreshlayout:1.1.0") implementation("androidx.security:security-crypto-ktx:1.1.0-alpha06") implementation("com.android.volley:volley:1.2.1") // Branch.io - implementation("io.branch.sdk.android:library:5.+") - implementation("com.google.android.gms:play-services-ads-identifier:17.1.0+") - implementation("androidx.browser:browser:1.0.0") + implementation("io.branch.sdk.android:library:5.9.0") + implementation("com.google.android.gms:play-services-ads-identifier:18.0.1") + implementation("androidx.browser:browser:1.7.0") } apply from: new File(["node", "--print", "require.resolve('@react-native-community/cli-platform-android/package.json', { paths: [require.resolve('react-native/package.json')] })"].execute(null, rootDir).text.trim(), "../native_modules.gradle"); diff --git a/apps/tlon-mobile/android/app/src/production/google-services.json b/apps/tlon-mobile/android/app/google-services.json similarity index 55% rename from apps/tlon-mobile/android/app/src/production/google-services.json rename to apps/tlon-mobile/android/app/google-services.json index ae6b4b8655..7f3b21a7f8 100644 --- a/apps/tlon-mobile/android/app/src/production/google-services.json +++ b/apps/tlon-mobile/android/app/google-services.json @@ -33,6 +33,35 @@ ] } } + }, + { + "client_info": { + "mobilesdk_app_id": "1:543296749236:android:5f8dfa09efc9fbb93e21e1", + "android_client_info": { + "package_name": "io.tlon.groups.preview" + } + }, + "oauth_client": [ + { + "client_id": "543296749236-1l5r4ipguvjdh083t5j7h1eicqi21j0o.apps.googleusercontent.com", + "client_type": 3 + } + ], + "api_key": [ + { + "current_key": "AIzaSyDm8-5daeW5B8j6i_RIoSvOgnx6Fo0gEOU" + } + ], + "services": { + "appinvite_service": { + "other_platform_oauth_client": [ + { + "client_id": "543296749236-1l5r4ipguvjdh083t5j7h1eicqi21j0o.apps.googleusercontent.com", + "client_type": 3 + } + ] + } + } } ], "configuration_version": "1" diff --git a/apps/tlon-mobile/android/app/src/preview/google-services.json b/apps/tlon-mobile/android/app/src/preview/google-services.json deleted file mode 100644 index 431e44d628..0000000000 --- a/apps/tlon-mobile/android/app/src/preview/google-services.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "project_info": { - "project_number": "157622845881", - "project_id": "tlon-mobile-staging", - "storage_bucket": "tlon-mobile-staging.appspot.com" - }, - "client": [ - { - "client_info": { - "mobilesdk_app_id": "1:157622845881:android:e03c63bd5a3bc87cf27668", - "android_client_info": { - "package_name": "io.tlon.groups.preview" - } - }, - "oauth_client": [], - "api_key": [ - { - "current_key": "AIzaSyAPPGSCuJstxYqZnbDCMNzGC6pM8cQHXm0" - } - ], - "services": { - "appinvite_service": { - "other_platform_oauth_client": [] - } - } - } - ], - "configuration_version": "1" -} diff --git a/apps/tlon-mobile/android/app/src/preview/ic_launcher-playstore.png b/apps/tlon-mobile/android/app/src/preview/ic_launcher-playstore.png new file mode 100644 index 0000000000000000000000000000000000000000..f898af19562a5e8fc7db1434a7bf9fb1201c6691 GIT binary patch literal 11831 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 + + + + \ No newline at end of file diff --git a/apps/tlon-mobile/android/app/src/preview/res/mipmap-anydpi-v26/ic_launcher_round.xml b/apps/tlon-mobile/android/app/src/preview/res/mipmap-anydpi-v26/ic_launcher_round.xml new file mode 100644 index 0000000000..036d09bc5f --- /dev/null +++ b/apps/tlon-mobile/android/app/src/preview/res/mipmap-anydpi-v26/ic_launcher_round.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/apps/tlon-mobile/android/app/src/preview/res/mipmap-hdpi/ic_launcher.webp b/apps/tlon-mobile/android/app/src/preview/res/mipmap-hdpi/ic_launcher.webp new file mode 100644 index 0000000000000000000000000000000000000000..2d1835ce23299f0f730bbf42369bda6774e57d55 GIT binary patch literal 578 zcmV-I0=@lGNk&FG0ssJ4MM6+kP&iC30ssInN5ByfRmiz*+t{Aem z&~@yb0F!wql2sWbfn=20gsd_2S!b7RcGB900eylYC14F*o}to&1d=bJF}#2umEes; z2>g&WEP)@WIDkvP=D1<7B?ksdC?1US~iRU(||;W~3vSR?H#8vCfu-Yl#iOJwFS)a zfw-=hx-%TLu$5$Da44?L!|3Ane+GD?Y%Adxb|^q62W?E`uYQ6VN`3^|%~ Q8BF_-WfZQHhO+qUg= zowRJVY}>XTcVpjoAODK;&W`B+1n98;f5NKBHB31pOY>247EbS1B_1lt#@!%~-*#3p z0Es&616kjf8IGif#q0OAz({<7eE7W<6jAn*>6cA?YFBAG@r;|vhwMo7CGJ|BRGC-0 z#^i{BL+qE#)>K)He~?K{9NH7_tt`jC!FJ-XnVm7L>Bj79EEw*wzRJsJ??^<7qY%}` zihH9^vZg4+akA`Q9bm1o$mZ2mRtuWcE|w9RDI_BI6f(I!v+2lWxl1DQJv}bbyS*ho zOCge?t+XGs{wbNBjs;0YvU)9*LdQ{2!z17O;v+KKKqTET5gEDcqL~at#G_H}f{863 zE?URh%48QZI{Il(E>F1SVJ0~Hn%GQqwhC)NN`e5x+Sry=sgHF5Xr3dGs qmQfWXT1P3;b@IIF18OExK^SQS^}ko5FI+4l$)E|9VX}q&AIbp;Uwr$(ClS*|KU|TClmm{6+jBVStJ@ftFUHy7y2NC_B z0LUhUTM_~f6JFrqkQaFJ1SfDX%NwlQfC1eG%frkGTs2+*0BsI;k2n2osV(+8=%Br} zSn6+Yy4&H}06^d?2?RjhmAIaTXk^#8Yew3($i4v92 z0k;CkQe>dTSBN5}i-^9~0XogdiC>3z1@3 zis)RBg~-4$h!hJ`L??hOKmcPMK#HX)I$$CQR~)EVffS2Vv{DVYJ71xQrE zDB^=6x(kFO9`xCVEK0C-bGOr{VrZXXz@K>^MT`~mr;c2{dTgdtp9V$r2{{qKe3USh zi#n}@`jcriD4}CP*m2+oq%j${0Quw7Cm$rpPvaCM6#YWD4G*RxN+HhYf$vkkxhx+T1=6&PcT&wB>Bl>{kz6NCi^4zmRriQy?=QlF{ix@DXc zNf_Fy3%E%DS0F=Dv+qC@(-`#ykKIX-p&LP%c;YjpF*ZuTK~uvoAd!8plor9qc%VOgJoKQ5Mq$OkR~K) z5iH}M3k^m8s}KUbqPJ7V1r6dDaMOs&M~XavAm^c!kF^RlT+)@z7BPRgxf)g=X z1daXkicMW*7w{-9YfR_b~mZ1%Xa|8ecExtq=m$0dX zTIq5UM?}#Nssc<(Zb24j@7iE@Uq-w9Dbj!U-s7_ZZT3bBf z3X14w1IpwK1T_;ZMX{QQmYJd^gIgtaC)$Oy7DcHg#-{) zeeGt3VjU4#yIr3efk;kGvtMN=id96kt6i(9m4jGLoBn=^Wyn|s#?Z2Ux_)gOL~~m8 zn&t;YQOc4;L_e9XS1SkcM2k*i+tYR+ic*FoBHGcOGft-#0+~cf!|-veuMm;4C`J*{ z*W)3)=J;(=YcsLu8amHxi=^k@>w}X^b9i0^}1Vbxq^@MLw_r5s^~Lwvqk2FE(CNU5P+RUPVLGm~nV}*!R}pwKcwL50Ar*(bQ1kp)9YguGn!rGkK2p=sxi-aBlM^%^H7?TS5wzzz(`}iN#C?FZyeK)@5hg0#=LLp yH_2Ed4d_x=ljop5C#S5{5bYYe^yt;AN0)|nL$oT(aqukR1ev^og1k)N2qXhNt&p1l literal 0 HcmV?d00001 diff --git a/apps/tlon-mobile/android/app/src/preview/res/mipmap-mdpi/ic_launcher.webp b/apps/tlon-mobile/android/app/src/preview/res/mipmap-mdpi/ic_launcher.webp new file mode 100644 index 0000000000000000000000000000000000000000..9fc2bfa3fda2229d3086b4cb3f7280e4d1ce7299 GIT binary patch literal 434 zcmV;j0Zsl=Nk&Gh0RRA3MM6+kP&iDT0RR9mFTe{BgcHXbj_}`Q9^%0OG+g7a{&V9JMyIT}6B|Xo;C93ZqhTan(ilw4TT`5dT z5m3qkq!6a9SxwoRX(41DDGa$((@tH@r6D2nxhAALJ-HNNMgw2|Qul?XMWJM=gk4?y zk-9&8I1;K{_H=?cEX?E~+9FWnK1BH?i0*W2`8DjF;ntKL(4EaY{8nPtV=bT$IEo z=S(!rQuq9@SZPsy*yf5q{z^QtQe{N>Zlq==SZJCyN+S>@Sk$IDs)Jyql~GEt68_J0 zf;i6SKsSifT#B%wg)e`p`$F4RE+GxLC!}YCQshz`d(-jh!)K~KeCl|2s^k&UpiO5k cQg?3CpcMI~KEuXRH>^*Jf>nA`SBYW?0E|J)4FCWD literal 0 HcmV?d00001 diff --git a/apps/tlon-mobile/android/app/src/preview/res/mipmap-mdpi/ic_launcher_foreground.webp b/apps/tlon-mobile/android/app/src/preview/res/mipmap-mdpi/ic_launcher_foreground.webp new file mode 100644 index 0000000000000000000000000000000000000000..afead934a7043071edbb9036796f15993ad597d2 GIT binary patch literal 364 zcmV-y0h9hxNk&Fw0RRA3MM6+kP&iCj0RR9mYrq;1b;y}*?bsgMwr$%+ha`0-ZNB^g zo1JZ|`>NRNY}>Xz`?}*#cV^E-^nU^ddQmqJvlkQR*u(&1HF(du`n>^OZOc_a-8Jz8+oq*=80x<3*MFJR$WfQ*HFpIfjZr$?>m?**#vlJ z*_Pf0dn8-fz&YK{S#US@&@GMj- zU^K0M$Pjw8G2a*kJT|8a8yP$ z;3e9%c8!AXR-%3LZqE+5u0>-`JBt1{Fi*H|BicxM+`yLz;b2R)nKp`=^`QY~YuWCf z0zN-|-_Ww&RJc>V7isg`95VyywC&W}EnaU*HRx&)v^EULFNicX=z1Z#?Vn=)DTC4K K=E~{cC@W# zFPY8R%Zo-+v#n@m+uP@x@V@VN5p-^CJGMFJt@jz*HY*#QZQEAonK=0Ywo}{Ixc|O) zO�pX)v*fTB4;5~!>o2^>|J7pYhWeGN5KUmd7eIDt3^wE$39paMXPgB*!m0)fahR{>lY1xXbd@F8~{^-rtzEt1u_a0c*St42vQgvC6S1D(oPH12<^*r{&Il@3}HSO_``jA5(G80 z>O?$|NVb6?w1(YeT%Z{M+Hi)9Erfx=9ukQo@-F0{CS2kd(?Rh(esi7(89v~N6Uaz^ zfCV+<4qq5YiP`+-0uc=UFrEa7?16%?yL_fZLynNKl?W(sm?VKb0hXWzT^Yz8e({t6 z#4vc46NvM9lGQxmH5nO;sV2@>B9RW7N!Id&m;9o@P5Kh&j;=)d`!-1vI?;s*+~yyr zs7I9V3?VYy&q<2=^NCN4BFZnu5E+>cN66Sr6;Z|$8RWaTFO=CyfgR+C@x9?hx@yM# zW;Ufx@{jc(#vQ$gRKAESaEays$TN{|d|)t9u4+f3=$W{TpPXO}9qGn8Uh$Vh)Dq=I zNt8H8p(qjG*vnTke)5+B8As^=!W9M1aFReK_zf)LGZPubL9TOyW6Yxwh-C1)=_GQb zgO4D`j01U^(VS`!EyJfe6Gx)x7!)NcsiMFcQ6%EYK&?>!4{B%{LOcgB$45^0VEWWsIt<3P?xKs9u3HoLJj{}r;@0&sEd1{uri66 z0uSmUQdv&W&r4ve5{$vC`UzY);w3}92B_1i0dE*42^1=*4EHi1D`^xN@Tw6ik-|ll zA-Mh)Fg1ji{q_-i)nq;2&=9_1dv4-falO*y~VNTT0khIlaM;*1-R??6}j-mmp CbibVd literal 0 HcmV?d00001 diff --git a/apps/tlon-mobile/android/app/src/preview/res/mipmap-xhdpi/ic_launcher.webp b/apps/tlon-mobile/android/app/src/preview/res/mipmap-xhdpi/ic_launcher.webp new file mode 100644 index 0000000000000000000000000000000000000000..81481123632ec67c1816ddb85735f440f8bf04ea GIT binary patch literal 744 zcmVfvgRf{-Q*WXag@ z;N9De&UvsQBMaab5-pC|l8&{3YrsH`6Xu`GTabIqseFJtEHRECD;_778xRn-#dvH< z96|396 zw;-QytQ#tl(ef$$pDrknIq@3;eO_6fj^9AfrO{Q3)t-JIWH5^~iC%!;CMVPssi#}- zz+J7$qV;ycIpNB8{Qcm&jItQJz$fXI|LQ;Cw3EfU3+@gNAnhY?k}UQMaJ>;g%DdnU z(ei(S+fOoWI{3AOWOd$y7eeGpJmd}dwV{%!=!#Vb9y{Q#S+-D3;QMd_CEVAgafK?i zGZ;Ma!~s2PBW3c|Q;+`u{^~CmskizJzKkUp%{ic_wPeiv7F?rC7WEK#&63RA0KTxL z*=Pn5vJHGB&aoJQB)kS5Go|@hFp!47!0DPa+z``W`itPtVoDrmc_Q7*%zX^x9$g%l zxIMB|hO9Lgy#x6os}kqvK?M4$ypm^q@|~_9_h?>CA|rbH{qI2c*|w(9)!&_?v?xh) z70R3_T>b4q|Lj*BbN&kU)Fq=u8cMW({5ycp7G10OGTfoX^Cn*O))1C&pYgWfF(*oE zq0&|uN3g?jVpW=gnuIyuU1!h`0bnX85A%o-{lfF#=)QOVlMY}1?)vW#bw)D;V$SLmv7d?oYN*Qez&?~ znLK$b_1g7Cpg(6tTx%|T+SZ>5V~+g->8oC7i}XscK9q$!<4s6+L)!oi&vs@GM!gI@ z^+KBK18A=+b2z~pKvzdvP7Z!a%p`V#Rw1oBw1mm@`v5$5!P#P{vJ|xm(6Ml~A4(u+ zIFuDB84Ts1$0{g3Iow_VZ`{aHnS;lm)eNXT|2tPlhI_gJ0r^5mNuejz0!v& z`j9^j>K^&^=(R85&^ug7AoeV@^qW8rBZX2b(it`rG z)5xKEK+oOC;r|BEImn@AL!IbR1)4{XB+wpu1VCr$;R9VjoS&>{&@sftk(CG9fVdK} zdO~9nH%^jq9;%JFXFhU@anK$Iak_^T_Y2T519P9!OE4yDxGBS&evsH9V-SZQdE-t$ zE8#%!QZ8)Bkf+V%X$_Ho>&INU+X;PIn`cMXE|4u(+0JX~ zUe>cL40*oJ^W>aNz|hBRy}mm3p|?9DfKq8U*~9m0OicE-qd}>-Z8ts!KAo9T){Fi9 mh)_xy0SQwjiQ>%ujkx%?T1$wZ9JJBn-){LY;%JutEwTa{kwh>6 literal 0 HcmV?d00001 diff --git a/apps/tlon-mobile/android/app/src/preview/res/mipmap-xhdpi/ic_launcher_round.webp b/apps/tlon-mobile/android/app/src/preview/res/mipmap-xhdpi/ic_launcher_round.webp new file mode 100644 index 0000000000000000000000000000000000000000..ef49c47f8ea14a71c436f5162b1ef4c5919616c9 GIT binary patch literal 2046 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 literal 0 HcmV?d00001 diff --git a/apps/tlon-mobile/android/app/src/preview/res/mipmap-xxhdpi/ic_launcher_foreground.webp b/apps/tlon-mobile/android/app/src/preview/res/mipmap-xxhdpi/ic_launcher_foreground.webp new file mode 100644 index 0000000000000000000000000000000000000000..7e9b0609679d3d11e0a4cd170bb8c46dda99e78d GIT binary patch literal 980 zcmV;_11tPeNk&G@0{{S5MM6+kP&iD$0{{RoL%~oGHBg|oy>MV%%M>L|p-MGsRwW~91|=o8-%ZpL!+CN$dj{Z zoq=25`NG@5qNAYm;|(Kd%zKD(TiqmOPYa5~A8D6LnVFAT&f_F?)QXAKg6bI;ocYl< zfKyaGNMzv@M+4^PDt5|^Ac$Bbh@QI4@0FbdRUQzLK2e5A9eYwX1EQWFp0Vj+Jx;Jk z!oxBGFUE8&NKn<`V7X5?W70>vM3@GLm~KKhrgMM7F*xKD#LRjXBD}Pqp$fqsTCccn zZ#)DVnh+jY^$Pddn~H{pR)pIoy~2DVM8{1uCm|eeG79gXt+;7MxTfJ|9bqMdO=LTv z6K;A7?>s$hV!S2XFrh}R62!g?HC;I2OI*-st=xjRfMLcqoC~5oDQ2=B6Xa10Ft$7^ zT!MTf1WdFz@uZZA(id;D;J)zjQ)UK}pl^h~UDX(V+$|V>9CaCh25AW5tD^u&sfYOy zq`ovnkm6l504YyXlvrAK^4fFk#>dAEC6I`XJ6Bf|OXm=>87;0pica$x#kLHPPP z7Xt==K+xA!haux`*wX>Qn=@$KHpPD&0M14X9W3)}-Ch)D_>h?%=(I0BLx_xhP>l-2Ron-i?mLzVp8lQbz24o%`lK*C7)7?*CdyY0lVd_j~Tm^JIPdlqU8A{MGoQ zIbosNtva=7R6c7I_M`k2`4JobGbE9$p7)9xZhj^W{~7)>{Aa|;@W0`I!~cf={|*mP Cmd^hG literal 0 HcmV?d00001 diff --git a/apps/tlon-mobile/android/app/src/preview/res/mipmap-xxhdpi/ic_launcher_round.webp b/apps/tlon-mobile/android/app/src/preview/res/mipmap-xxhdpi/ic_launcher_round.webp new file mode 100644 index 0000000000000000000000000000000000000000..fb7aa0538eee9f150ca27b3f5086e122fa8ab627 GIT binary patch literal 3262 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 literal 0 HcmV?d00001 diff --git a/apps/tlon-mobile/android/app/src/preview/res/mipmap-xxxhdpi/ic_launcher.webp b/apps/tlon-mobile/android/app/src/preview/res/mipmap-xxxhdpi/ic_launcher.webp new file mode 100644 index 0000000000000000000000000000000000000000..395427aa9a01a7d99185d4e11e04b4302013b2c9 GIT binary patch literal 1544 zcmV+j2KV_=Nk&Eh1^@t8MM6+kP&iEU1pojqzrZgLm4@23Z5a9gzthVa5fi{=^+=p? z(K6ct70&RoWZMnf=2DLKzwW{#^e=%#h@b>fjDRBmU?FLe4A(x}wr#t<&a7ZjgLZk&kz zPk{Yx6958-*!)=mUz4+%66?%w$Z2MVDIR!jeqw57HUZ**VMaUy?DB#VEt-wLQ0>vv z3>d;dW<;|Nt4Mpmtct2;bhrQ`0N|{M4tfO~jnmcJZg`@==K3tu{*@pn6jF}|4cYSns@)ANwW!TZXLd_YgQv@I& zIM50ga3UnkiVbgC;S=|o5+IX6)LPkzODG8kBw=VBgGL@lM{)~HIJ zcoBT?GJ;D_Jn&2^^3}2F<-$y?!nMxXH%z3NydM1Qnlys}5 zbpKru4WankrP6OLjEGOj3QIYCb9z~y236~Hn|JJ`6Mi?`4<653MZeixBep5XsAbo^ zr1;5Cbduar^n=zR!quRr*D2l=8Jw|_x?Ru^uG{%8Q=a#kF+&pX8>7aF?-RTZHl9R1 z4}h)s3xYGl7X2z!2R3sb)dMzOM-8`OTSbjT=SgmTo2fzQyey(E@HEv*JT{`c(k%y$9M z8wX~7eq_z;X>-<}e8n!_D^WM<2Eu$?!5_YOh z@7=r6HKO>mw}m;p$&ME;y*V-Tpj+m$Sx}#VBJ-BoE@5aG}qub(>-yUZ6j*>Ke zrgTYu`H0WrCVggq!xiP&8OQw@VKbx0aE#^)+vomIWsDunAPSXMP?Is51ZcQ;@}U)e z2pzWoAS7JmoNA@qVX;Gn0B{7IQLV7h&nW_7r_ddvKDrl{YUGF{Vmvj#0qWvM)u|Dr*UZsV{0Sg%~>uw-mn&^z#p!b0QA)+z* uhL17!6CT{R%}A4;8FfOm<9IjzI9kpcfV3~njEJhhh{&|>O$FL-7Xbj^;Rojc literal 0 HcmV?d00001 diff --git a/apps/tlon-mobile/android/app/src/preview/res/mipmap-xxxhdpi/ic_launcher_foreground.webp b/apps/tlon-mobile/android/app/src/preview/res/mipmap-xxxhdpi/ic_launcher_foreground.webp new file mode 100644 index 0000000000000000000000000000000000000000..b771e1edf1ba338dff65919d0b3601497dc1d2fd GIT binary patch literal 1340 zcmV-C1;hGMNk&FA1pok7MM6+kP&iB|1pojqufb~&HBg|f&5$HTR<+HsZQHhO+qP}n zwr$(Ct?n@jnK7$~tQf_=iin8*Pk)ju|!<1#-Wr zJ22yC<8!`5*D&*UQ*pgycknm(C^g4Ra2J1*x8riV&@=cOmBF0OvI?7P++5PTRx9j;?{6L#5nHp3zH5fjg3G0OZ-Q-MS_`80t#z4By^YV|-1cE= zV@GOavRCIwDz)Ci->T|VpIW*j^HZIoau(-qUe_?~Gq?5{d3uYSZPp9(~v&;h&rc3cE24^kpnxt0vU z%7NGjR*aFsz@pU6!qB1|!@Pk-sh#1_qOK=`7WFU{w5SJ(0HK|OST{{w35J89#H2~n z6>2u|jNKHq$pZ{bw8rax!!SX1hYKmCSEC1X>Qh?CkTS|VCzU$j0UA;&b96@7LgAQ51Mxjo)L5J*UQ0O_q!+k4-nh72<$tQ~E{@@`;QW&M+Bi3s& zH5ESO6pCx^@R8mi(__Pj+j%lo0Y2nVihcl6gklAN#QaEh5mZDj5gS%e>l+sB&QGqQ&ohr7;Nyw7B(5r=#4$5=T`zJ|x? zSs0r_F__1x4s3bcqo~H^_F9-Kg30v+T+Wu5sr3}MJ-D12%~Ccy#VpC^-o#?ZvK^Bf zWjLLhsxeayQ@-%$b&f);Bz#6Q9q~GKCk7i{$1$ZdBfnDz{aEl>gK2kKIG)<#=Q^)d zm{u=@c%C{C-BmGnVd||K-&42qx~9+_O#LZ?*YU>f}upJxs<-S+LQV1CiKVy&(bvMvW1O z<6SKi@eRy$=Xo1s6$f*3+!5c?dK+xXNgjyvN$U)zY+bF0`$>-(3_U7_e%w4kx(#$P zVyumcU_i=>5lq~zVnJXab`myr{sg*dWyW~!{aP*_+4pO@1obk*sN4{B6 z#uxqgIfRtbGw+Z?ku>t?s1p9@r;txbDYd|~ReMZYx?%gK)pJL-ub3jxf_@gc#ZRp8 ypYWgX-#?oCMolJe1|UE0!hgbl!hgbl!hgblf_}pP!vDhm!vDhm!vDhm|2Yo#9G~L= literal 0 HcmV?d00001 diff --git a/apps/tlon-mobile/android/app/src/preview/res/mipmap-xxxhdpi/ic_launcher_round.webp b/apps/tlon-mobile/android/app/src/preview/res/mipmap-xxxhdpi/ic_launcher_round.webp new file mode 100644 index 0000000000000000000000000000000000000000..24e66357ed2fbddbecb28e1a71e1494f50a978b9 GIT binary patch literal 4690 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 Uw@lkyrQEI-g_%+4y%j}aR2}S literal 0 HcmV?d00001 diff --git a/apps/tlon-mobile/android/app/src/preview/res/values/ic_launcher_background.xml b/apps/tlon-mobile/android/app/src/preview/res/values/ic_launcher_background.xml new file mode 100644 index 0000000000..beab31f753 --- /dev/null +++ b/apps/tlon-mobile/android/app/src/preview/res/values/ic_launcher_background.xml @@ -0,0 +1,4 @@ + + + #000000 + \ No newline at end of file diff --git a/apps/tlon-mobile/android/app/src/preview/res/value/strings.xml b/apps/tlon-mobile/android/app/src/preview/res/values/strings.xml similarity index 100% rename from apps/tlon-mobile/android/app/src/preview/res/value/strings.xml rename to apps/tlon-mobile/android/app/src/preview/res/values/strings.xml diff --git a/apps/tlon-mobile/android/build.gradle b/apps/tlon-mobile/android/build.gradle index ffb76d1a60..743999c962 100644 --- a/apps/tlon-mobile/android/build.gradle +++ b/apps/tlon-mobile/android/build.gradle @@ -15,7 +15,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.google.gms:google-services:4.3.15' + classpath('com.google.gms:google-services:4.4.1') classpath('com.android.tools.build:gradle') classpath('com.facebook.react:react-native-gradle-plugin') classpath('com.google.firebase:firebase-crashlytics-gradle:2.9.9') diff --git a/apps/tlon-mobile/ios/GoogleService-Info-io.tlon.groups.preview.plist b/apps/tlon-mobile/ios/GoogleService-Info-io.tlon.groups.preview.plist index 14e6521392..96824d7539 100644 --- a/apps/tlon-mobile/ios/GoogleService-Info-io.tlon.groups.preview.plist +++ b/apps/tlon-mobile/ios/GoogleService-Info-io.tlon.groups.preview.plist @@ -3,17 +3,17 @@ API_KEY - AIzaSyDk3OH2oJyY0rkyw2JV7jA1ClZGBIoSzrM + AIzaSyDnjh8qXbZkuM_Bh1-tkP46FA-y2Uai7pc GCM_SENDER_ID - 157622845881 + 543296749236 PLIST_VERSION 1 BUNDLE_ID - io.tlon.groups.staging + io.tlon.groups.preview PROJECT_ID - tlon-mobile-staging + tlon-groups-mobile STORAGE_BUCKET - tlon-mobile-staging.appspot.com + tlon-groups-mobile.appspot.com IS_ADS_ENABLED IS_ANALYTICS_ENABLED @@ -25,6 +25,6 @@ IS_SIGNIN_ENABLED GOOGLE_APP_ID - 1:157622845881:ios:0142449d758fd047f27668 + 1:543296749236:ios:8f24114b091162df3e21e1 \ No newline at end of file From c630c50e6733889c8095ae598da3ff1091cb08f2 Mon Sep 17 00:00:00 2001 From: Alec Ananian <1013230+alecananian@users.noreply.github.com> Date: Fri, 16 Feb 2024 17:21:15 -0800 Subject: [PATCH 4/5] fix eas cli config --- apps/tlon-mobile/android/app/build.gradle | 6 ++-- .../android/app/src/main/AndroidManifest.xml | 29 +++++++++---------- apps/tlon-mobile/app.config.ts | 3 +- apps/tlon-mobile/eas.json | 8 ++++- 4 files changed, 25 insertions(+), 21 deletions(-) diff --git a/apps/tlon-mobile/android/app/build.gradle b/apps/tlon-mobile/android/app/build.gradle index 9d02762753..c677aef716 100644 --- a/apps/tlon-mobile/android/app/build.gradle +++ b/apps/tlon-mobile/android/app/build.gradle @@ -118,14 +118,14 @@ android { useLegacyPackaging (findProperty('expo.useLegacyPackaging')?.toBoolean() ?: false) } } - flavorDimensions = ["env"] + flavorDimensions "profile" productFlavors { production { - dimension "env" + dimension "profile" applicationId "io.tlon.groups" } preview { - dimension "env" + dimension "profile" applicationId "io.tlon.groups.preview" } } diff --git a/apps/tlon-mobile/android/app/src/main/AndroidManifest.xml b/apps/tlon-mobile/android/app/src/main/AndroidManifest.xml index 3baaf568ec..9f185e80eb 100644 --- a/apps/tlon-mobile/android/app/src/main/AndroidManifest.xml +++ b/apps/tlon-mobile/android/app/src/main/AndroidManifest.xml @@ -19,6 +19,8 @@ + + @@ -26,7 +28,7 @@ - + @@ -34,32 +36,27 @@
- - - - - - - + + + + + - - - - - - + + + + + - - \ No newline at end of file diff --git a/apps/tlon-mobile/app.config.ts b/apps/tlon-mobile/app.config.ts index c71119f6d8..202cd6c43d 100644 --- a/apps/tlon-mobile/app.config.ts +++ b/apps/tlon-mobile/app.config.ts @@ -2,12 +2,13 @@ import 'dotenv/config'; import type { ConfigContext, ExpoConfig } from 'expo/config'; const projectId = '617bb643-5bf6-4c40-8af6-c6e9dd7e3bd0'; +const isPreview = process.env.APP_VARIANT === 'preview'; export default ({ config }: ConfigContext): ExpoConfig => ({ ...config, owner: 'tlon', slug: 'groups', - name: process.env.IS_PREVIEW ? 'Tlon - Preview' : 'Tlon', + name: isPreview ? 'Tlon - Preview' : 'Tlon', assetBundlePatterns: ['**/*'], extra: { eas: { diff --git a/apps/tlon-mobile/eas.json b/apps/tlon-mobile/eas.json index 7987da23f4..d4f3785295 100644 --- a/apps/tlon-mobile/eas.json +++ b/apps/tlon-mobile/eas.json @@ -7,7 +7,10 @@ "preview": { "channel": "preview", "env": { - "IS_PREVIEW": true + "APP_VARIANT": "preview" + }, + "android": { + "gradleCommand": ":app:bundlePreviewRelease" }, "ios": { "scheme": "Landscape-preview" @@ -15,6 +18,9 @@ }, "production": { "channel": "production", + "android": { + "gradleCommand": ":app:bundleProductionRelease" + }, "ios": { "scheme": "Landscape" } From 3bd77d9e4f2f86beb8e8d8a9120e69cb2600f246 Mon Sep 17 00:00:00 2001 From: Alec Ananian <1013230+alecananian@users.noreply.github.com> Date: Fri, 16 Feb 2024 17:22:37 -0800 Subject: [PATCH 5/5] add applicationId to eas config --- apps/tlon-mobile/eas.json | 2 ++ 1 file changed, 2 insertions(+) diff --git a/apps/tlon-mobile/eas.json b/apps/tlon-mobile/eas.json index d4f3785295..4f29524934 100644 --- a/apps/tlon-mobile/eas.json +++ b/apps/tlon-mobile/eas.json @@ -29,6 +29,7 @@ "submit": { "preview": { "android": { + "applicationId": "io.tlon.groups.preview", "releaseStatus": "draft", "track": "internal", "changesNotSentForReview": true @@ -40,6 +41,7 @@ }, "production": { "android": { + "applicationId": "io.tlon.groups", "releaseStatus": "draft", "track": "internal", "changesNotSentForReview": true