1b4399df68
Renames the Capacitor app identifier from pub.agora.app to spot.agora.app and cleans up Ditto-branded artifacts that don't refer to upstream Ditto-the-project or Ditto-stack services. App identifier (pub.agora.app -> spot.agora.app): - capacitor.config.ts appId - android applicationId, namespace, package_name string, custom_url_scheme - iOS PRODUCT_BUNDLE_IDENTIFIER (Debug + Release) - public/.well-known/assetlinks.json package_name - public/.well-known/apple-app-site-association app id - Info.plist BGTaskSchedulerPermittedIdentifiers and the matching Swift bgTaskIdentifier (previously mismatched: plist said pub.agora.app.notification-refresh, Swift said pub.ditto.app.notification-refresh, so background refresh would silently fail to register) - src/lib/helpContent.ts Zapstore URLs - .gitlab-ci.yml --package_name for fastlane supply Android Java package (pub.ditto.app -> spot.agora.app): - Move android/app/src/main/java/pub/ditto/app/ -> android/app/src/main/java/spot/agora/app/ (4 files: MainActivity, DittoNotificationPlugin, NostrPoller, NotificationRelayService) - Update package declarations to match the new Android namespace (was a hard build failure with namespace = spot.agora.app) - Update proguard -keep rule - Update NotificationRelayService ACTION_FETCH intent string pub.ditto.app.ACTION_FETCH -> spot.agora.app.ACTION_FETCH Fastlane (pub.ditto.app -> spot.agora.app): - Appfile, Matchfile, Fastfile provisioning profile specifiers. Matchfile still points at Soapbox's certificates git repo; a new match repo with certs for spot.agora.app is required before iOS CI signing works. IPA artifact name (Ditto.ipa -> Agora.ipa): - Fastfile output_name and matching CI artifact paths - .gitlab-ci.yml: artifacts/Ditto.ipa references and the GitLab Generic Packages path from /packages/generic/ditto/ -> /packages/generic/agora/ (matches how APK/AAB are already published). Existing release artifacts at the old path remain reachable; new releases land at the new path. Release-notes script fallback (Ditto vX.Y.Z -> Agora vX.Y.Z): - scripts/extract-release-notes.mjs fallback used as the App Store / Play Store 'What's New' blurb when a changelog section has no summary. manifest.webmanifest: - Update related_applications Play Store entry to spot.agora.app. - Remove the iTunes related_applications entry that pointed at the existing Ditto App Store listing; not applicable to Agora until Agora has its own listing. Capacitor sync incidentals: - npm run cap:sync picked up @capacitor/barcode-scanner registration that had been missed in a prior plugin install (android/app/capacitor.build.gradle, capacitor.settings.gradle, ios/App/CapApp-SPM/Package.swift). Intentionally NOT touched: - ditto.json filename, DittoConfigSchema, DittoConfig, and JSDoc references to ditto.json. The config-system shape is shared with upstream Ditto by design. - relay.ditto.pub, blossom.ditto.pub, ditto.pub/api/* and other Ditto-stack services Agora actively consumes. - The DittoNotificationPlugin Android/iOS class name, the DittoNotification JS bridge name, ditto_notification_config SharedPreferences keys, ic_stat_ditto drawables, and the DittoBridgeViewController. Renaming requires a coordinated JS-side rename plus a SharedPreferences migration or existing users on the Ditto fork lose their notification config on upgrade. - Ditto references in skill docs, NIP.md kind comments, README, and zapstore.yaml attribution \u2014 those correctly describe the upstream Ditto project that Agora forked from. Follow-ups required before CI succeeds end-to-end (out of scope here): - Stand up a new fastlane match git repo containing certs + provisioning profiles for spot.agora.app, or update Matchfile git_url to point at it. - Register spot.agora.app in App Store Connect for team GZLTTH5DLM and create a new App Store listing. - Create a new Google Play Console listing for spot.agora.app (package name is immutable per app on Play; the existing pub.agora.app listing cannot be reused). - Re-publish to Zapstore under spot.agora.app so the URLs in helpContent.ts resolve.
31 lines
706 B
TypeScript
31 lines
706 B
TypeScript
import type { CapacitorConfig } from '@capacitor/cli';
|
|
|
|
const config: CapacitorConfig = {
|
|
appId: 'spot.agora.app',
|
|
appName: 'Agora',
|
|
webDir: 'dist',
|
|
server: {
|
|
androidScheme: 'https',
|
|
iosScheme: 'https'
|
|
},
|
|
android: {
|
|
// Enable safe area handling for notches and navigation bars
|
|
allowMixedContent: false,
|
|
backgroundColor: '#14161f'
|
|
},
|
|
ios: {
|
|
backgroundColor: '#14161f',
|
|
contentInset: 'never',
|
|
scheme: 'Agora'
|
|
},
|
|
plugins: {
|
|
SystemBars: {
|
|
// Inject --safe-area-inset-* CSS variables on Android to work around
|
|
// a Chromium bug (<140) where env(safe-area-inset-*) reports 0.
|
|
insetsHandling: 'css',
|
|
},
|
|
},
|
|
};
|
|
|
|
export default config;
|