refactor(casting): remove AirPlay references, keep extensible architecture

- Remove AirPlay from CastProtocol type union (Chromecast only for now)
- Replace AirPlay TODOs with generic 'Future: Add X for other protocols' comments
- Remove PROTOCOL_COLORS export, use hardcoded Chromecast color (#F9AB00)
- Update all component headers to be protocol-agnostic
- Keep switch statements extensible for future protocol additions
- Maintain clean architecture for easy integration of new casting protocols

Architecture remains flexible for future protocols (AirPlay, DLNA, etc.)
This commit is contained in:
Uruk
2026-01-19 22:58:26 +01:00
committed by Gauvain
parent 515e05015f
commit 51bd8a92da
5 changed files with 26 additions and 51 deletions

View File

@@ -1,6 +1,6 @@
/**
* Unified Casting Mini Player
* Works with both Chromecast and AirPlay
* Works with all supported casting protocols
*/
import { Ionicons } from "@expo/vector-icons";
@@ -19,7 +19,7 @@ import {
getProtocolIcon,
getProtocolName,
} from "@/utils/casting/helpers";
import { CASTING_CONSTANTS, PROTOCOL_COLORS } from "@/utils/casting/types";
import { CASTING_CONSTANTS } from "@/utils/casting/types";
export const CastingMiniPlayer: React.FC = () => {
const api = useAtomValue(apiAtom);
@@ -47,7 +47,7 @@ export const CastingMiniPlayer: React.FC = () => {
);
const progressPercent = duration > 0 ? (progress / duration) * 100 : 0;
const protocolColor = PROTOCOL_COLORS[protocol];
const protocolColor = protocol === "chromecast" ? "#F9AB00" : "#666"; // Google yellow
const handlePress = () => {
router.push("/casting-player");