import React from "react" import { useEffect } from "react" import { usePush } from "../usePush" import pushPublicKey from "../../pushPublicKey" import urlB64ToUint8Array from "../../b64ToUInt8" export default function EnableNotifications({ onSubscribe, }: { onSubscribe: () => void }) { return (

Allow Notifications

Tack Up Now requires your permission to send notifications in order to function properly
) } function EnableButton({ onSubscribe }: { onSubscribe: () => void }) { const { subscribeToPush, requestPermission, canSendPush } = usePush() function subscribe() { requestPermission() } useEffect(() => { if (!canSendPush) return subscribeToPush( urlB64ToUint8Array(pushPublicKey) as any, async (subscription) => { await navigator.serviceWorker.ready.then((registration) => { registration.active?.postMessage({ type: "subscribed", subscription: subscription.toJSON(), }) }) onSubscribe() } ) }, [canSendPush]) return }