fluxa/appleApp/iOS
KhooLy 909906fab3 Build real Stremio login for iOS Auth, Keychain-backed session storage
Fixes AppleAuthDataSource: continueWithNuvio/continueWithStremio/
continueWithoutAccount were incorrectly routed through Swift
notifications - Android handles all three as pure local UI-state
transitions (no network), so this matches that instead of adding
unnecessary indirection.

submit() for the Credentials stage now posts a real request that
FluxaAppleAuthStartup.swift picks up: FluxaAppleStremioAuthClient
mirrors StremioService.kt's api.strem.io/api/login and /api/register
endpoints via URLSession, and the resulting session (id/email/authKey)
is persisted through FluxaAppleAuthStore using the Keychain generic-
password API (kSecClassGenericPassword, accessible-after-first-unlock),
not UserDefaults - this is the first credential-bearing data iOS
persists, unlike the existing UserDefaults-backed local stores.

Nuvio login/import is out of scope here: Android's version pulls
profile/addons/library/progress/history/collections through
NuvioAccountImportCoordinator, which needs library and addon-store
integration iOS doesn't have yet. The Nuvio stage transition works
(continueWithNuvio), but submitting Nuvio credentials currently has no
Swift listener - same "reachable but inert" scope already established
for AddonStore.

The error-state message on failed Stremio login is a hardcoded English
string rather than routed through AppStrings, since calling Kotlin's
AppStrings.t() from pure Swift needs framework-export verification I
can't perform without Xcode.

Caveat: this Swift code (Keychain access, URLSession networking) is
unverified - no Xcode/macOS toolchain available in this environment.
Only the Kotlin side (AppleAuthDataSource, all Gradle targets) is
compile-checked. Needs a real Xcode build and device/simulator test
before shipping.
2026-07-14 13:56:30 +03:00
..
FluxaAppleAuthStartup.swift Build real Stremio login for iOS Auth, Keychain-backed session storage 2026-07-14 13:56:30 +03:00
FluxaAppleCatalogBootstrap.swift Add shared Apple search flow 2026-07-13 17:39:50 +03:00
FluxaAppleCatalogStartup.swift
FluxaAppleDetailStartup.swift
FluxaAppleHomeEffectHandler.swift Add Apple discover effect handler 2026-07-13 17:48:54 +03:00
FluxaAppleSearchStartup.swift Add shared Apple search flow 2026-07-13 17:39:50 +03:00
FluxaIosApp.swift Build real Stremio login for iOS Auth, Keychain-backed session storage 2026-07-14 13:56:30 +03:00