|
|
@@ -1,29 +0,0 @@
|
|
|
-import { useEffect, useState } from 'react'
|
|
|
-
|
|
|
-/**
|
|
|
- *
|
|
|
- * @param {number} delay how long to wait before checking for grammarly in ms
|
|
|
- * @param {boolean} initialState the initial state we should set grammarlyInstalled to before checking after the delay
|
|
|
- * @returns {boolean} a stateful boolean which is initially false, then updates to reflect whether grammarly is installed after the delay to check
|
|
|
- */
|
|
|
-export default function useWaitForGrammarlyCheck({
|
|
|
- delay = 3000,
|
|
|
- initialState = false,
|
|
|
-}) {
|
|
|
- const [grammarlyInstalled, setGrammarlyInstalled] = useState(() => {
|
|
|
- return initialState
|
|
|
- })
|
|
|
-
|
|
|
- useEffect(() => {
|
|
|
- const timer = setTimeout(
|
|
|
- () => setGrammarlyInstalled(grammarlyExtensionPresent()),
|
|
|
- delay
|
|
|
- )
|
|
|
- return () => clearTimeout(timer)
|
|
|
- }, [delay])
|
|
|
- return grammarlyInstalled
|
|
|
-}
|
|
|
-
|
|
|
-function grammarlyExtensionPresent() {
|
|
|
- return !!document.querySelector('grammarly-desktop-integration')
|
|
|
-}
|