import React, { useState, useEffect } from "react"; import CompatBtn from "../compatbtn"; import { GoVerified } from "react-icons/go"; function installRepo(url) { if (window.AdbConnection !== undefined) { window.AdbConnection.subprocess.shell(`am start -a android.intent.action.VIEW -d "cloudstreamrepo://${url.replace(/^https?:\/\//, "")}"`) } else if (window.RepoApi !== undefined) { window.RepoApi.installRepo(url) } else { window.open(`cloudstreamrepo://${url.replace(/^https?:\/\//, "")}`) } } const RepoCard = ({ repoData, isFirst }) => { const [data, setData] = useState(null) const url = (typeof repoData === 'string') ? repoData : repoData.url const isVerified = (typeof repoData === 'object' && repoData.verified) useEffect(() => { fetch(url) .then(r => r.json()) .then(dat => { setData(dat) }) }, [setData]) if (data == null) { return } return

{isVerified &&
} {data.name || "Unnamed"}

{data.description || "No description provided"}

{ installRepo(url) }} >Install { if (navigator.clipboard) { navigator.clipboard.writeText(url); } else { var tempInput = document.createElement("input"); tempInput.value = url; document.body.appendChild(tempInput); tempInput.select(); document.execCommand("copy"); document.body.removeChild(tempInput); } }}>Copy URL
} export default RepoCard