diff --git a/.github/workflows/vercel-preview.yml b/.github/workflows/vercel-preview.yml index 19d7f94695e..79f254e1669 100644 --- a/.github/workflows/vercel-preview.yml +++ b/.github/workflows/vercel-preview.yml @@ -6,7 +6,7 @@ on: workflow_dispatch: push: branches: - - feat-pwa + - feat-reload-pwa jobs: deploy: diff --git a/pages/[username].js b/pages/[username].js index 05a2b940c5b..6356efe0379 100644 --- a/pages/[username].js +++ b/pages/[username].js @@ -1,5 +1,6 @@ +import { useEffect, useState } from "react"; import { IconContext } from "react-icons"; -import { FaEye, FaRegFaceSmileWink } from "react-icons/fa6"; +import { FaArrowsRotate, FaEye, FaRegFaceSmileWink } from "react-icons/fa6"; import { remark } from "remark"; import strip from "strip-markdown"; import requestIp from "request-ip"; @@ -15,6 +16,7 @@ import MultiLayout from "@components/layouts/MultiLayout"; import Page from "@components/Page"; import UserPage from "@components/user/UserPage"; import { abbreviateNumber } from "@services/utils/abbreviateNumbers"; +import Button from "@components/Button"; export async function getServerSideProps(context) { const { req, res } = context; @@ -70,6 +72,17 @@ export async function getServerSideProps(context) { } export default function User({ data, BASE_URL, isLoggedIn }) { + const [pwa, setPwa] = useState(false); + + useEffect(() => { + if ( + typeof window !== "undefined" && + window.matchMedia("(display-mode: standalone)").matches + ) { + setPwa(true); + } + }, []); + return ( <> )} + + {pwa && ( + + )} ); }