Remove indirection

This commit is contained in:
Manav Rathi 2024-05-03 19:25:52 +05:30
parent b7842765e8
commit 021ff4611c
No known key found for this signature in database
2 changed files with 5 additions and 7 deletions

View file

@ -16,7 +16,7 @@ export default function PairingMode() {
const [codePending, setCodePending] = useState(true);
const [isCastReady, setIsCastReady] = useState(false);
const { cast } = useCastReceiver();
const cast = useCastReceiver();
useEffect(() => {
init();

View file

@ -1,23 +1,21 @@
/// <reference types="chromecast-caf-receiver" />
import { useEffect, useState } from "react";
type Receiver = {
cast: typeof cast;
};
/**
* Load the Chromecast Web Receiver SDK and return a reference to the `cast`
* global object that the SDK attaches to the window.
*
* https://developers.google.com/cast/docs/web_receiver/basic
*/
export const useCastReceiver = () => {
const [receiver, setReceiver] = useState<Receiver | undefined>();
const [receiver, setReceiver] = useState<typeof cast | undefined>();
useEffect(() => {
const script = document.createElement("script");
script.src =
"https://www.gstatic.com/cast/sdk/libs/caf_receiver/v3/cast_receiver_framework.js";
script.addEventListener("load", () => setReceiver({ cast }));
script.addEventListener("load", () => setReceiver(cast));
document.body.appendChild(script);
}, []);