From 2b82121f6482b5a14bff437d38a584a42bdab736 Mon Sep 17 00:00:00 2001 From: medyo Date: Sun, 19 Sep 2021 23:20:24 +0100 Subject: [PATCH] surround chrome code with a try catch to handle bugs on web browser --- src/components/Changelog.js | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/src/components/Changelog.js b/src/components/Changelog.js index 6844fcbc..1ebb4138 100644 --- a/src/components/Changelog.js +++ b/src/components/Changelog.js @@ -13,21 +13,29 @@ function Changelog({}) { const [changelogMarkdown, setChangelogMarkdown] = useState([]) const [loading, setLoading] = useState(true) const [error, setError] = useState(null) - const localAppVersion = chrome?.runtime?.getManifest()?.version || '' + const [localAppVersion, setLocalAppVersion] = useState('') const preferences = useContext(PreferencesContext) const { dispatcher, changelogMeta } = preferences const [isChangelogRead, setIsChangelogRead] = useState(false) const afterShow = () => { - dispatcher({ type: 'setChangelogMeta', value: { shown: true, version: localAppVersion } }) if (changelogMarkdown.length === 0) { + dispatcher({ type: 'setChangelogMeta', value: { shown: true, version: localAppVersion } }) fetchChangelog() } } useEffect(() => { setIsChangelogRead(changelogMeta?.shown == true && changelogMeta?.version == localAppVersion) - }, [changelogMeta]) + }, [localAppVersion, changelogMeta]) + + useEffect(() => { + try { + setLocalAppVersion(chrome.runtime.getManifest().version) + } catch (e) { + setLocalAppVersion('') + } + }, []) const fetchChangelog = async () => { setLoading(true) @@ -84,8 +92,8 @@ function Changelog({}) { ) : ( changelogMarkdown.map((item) => { return ( - <> -
+
+
window.open(item.url, '_blank')}> {item.version} @@ -94,7 +102,7 @@ function Changelog({}) {
- +
) }) )}