diff --git a/src/_locales/de/messages.json b/src/_locales/de/messages.json index 547886f..4d99e0c 100644 --- a/src/_locales/de/messages.json +++ b/src/_locales/de/messages.json @@ -3,7 +3,7 @@ "message": "Web Activity Time Tracker - Websites sperren, Pomodoro & Webanalyse" }, "extDescription": { - "message": "Verfolgen und begrenzen Sie die Zeit Ihrer Webaktivitäten und blockieren Sie den Zugang zu den Websites. Überwachen Sie Ihre Internetnutzung." + "message": "Verfolgen und begrenzen Sie die Zeit Ihrer Webaktivitäten und blockieren Sie den Zugang zu den Websites." }, "settings": { "message": "Einstellungen" diff --git a/src/components/Review.vue b/src/components/Review.vue index 8b8b74b..45cfebe 100644 --- a/src/components/Review.vue +++ b/src/components/Review.vue @@ -19,7 +19,7 @@ import { injectStorage } from '../storage/inject-storage'; import { StorageParams } from '../storage/storage-params'; import { addDays, startOfToday } from 'date-fns'; import { addHours } from 'date-fns/esm'; -import { CHROME_STORE_REVIEW_URL } from '../utils/chrome-url'; +import { CHROME_STORE_REVIEW_URL, EDGE_STORE_REVIEW_URL } from '../utils/chrome-url'; const { t } = useI18n(); @@ -32,20 +32,18 @@ const showReview = ref(); onMounted(async () => { showReview.value = false; - if (__BROWSER__ == 'chrome') { - const reviewDate = await settingsStorage.getValue(StorageParams.REVIEW_DATE); + const reviewDate = await settingsStorage.getValue(StorageParams.REVIEW_DATE); - if (reviewDate == undefined) { - let nextTime = await settingsStorage.getValue(StorageParams.REVIEW_PROMPT_AT); - if (nextTime == undefined) { - await settingsStorage.saveValue( - StorageParams.REVIEW_PROMPT_AT, - addDays(addHours(startOfToday(), PROMPT_AT_TIME_OF_DAY), ADD_DAYS_FIRST).toString(), - ); - } else { - nextTime = new Date(nextTime); - if (nextTime < new Date()) showReview.value = true; - } + if (reviewDate == undefined) { + let nextTime = await settingsStorage.getValue(StorageParams.REVIEW_PROMPT_AT); + if (nextTime == undefined) { + await settingsStorage.saveValue( + StorageParams.REVIEW_PROMPT_AT, + addDays(addHours(startOfToday(), PROMPT_AT_TIME_OF_DAY), ADD_DAYS_FIRST).toString(), + ); + } else { + nextTime = new Date(nextTime); + if (nextTime < new Date()) showReview.value = true; } } }); @@ -59,7 +57,7 @@ async function closeBlock() { } async function openStore() { - window.open(CHROME_STORE_REVIEW_URL, '_blank'); + window.open(__BROWSER__ == 'edge' ? EDGE_STORE_REVIEW_URL : CHROME_STORE_REVIEW_URL, '_blank'); await settingsStorage.saveValue(StorageParams.REVIEW_DATE, new Date().toString()); } diff --git a/src/manifest.json b/src/manifest.json index 40eb249..491af50 100644 --- a/src/manifest.json +++ b/src/manifest.json @@ -2,7 +2,7 @@ "manifest_version": 3, "name": "__MSG_extName__", "short_name": "Web Tracker", - "version": "2.1.5", + "version": "2.1.6", "description": "__MSG_extDescription__", "options_page": "src/dashboard.html", "default_locale": "en", diff --git a/src/utils/chrome-url.ts b/src/utils/chrome-url.ts index cd97950..abdaae7 100644 --- a/src/utils/chrome-url.ts +++ b/src/utils/chrome-url.ts @@ -2,3 +2,5 @@ export const CHROME_STORE_REVIEW_URL = `https://chromewebstore.google.com/detail export const CHROME_STORE_SUPPORT_URL = `https://chromewebstore.google.com/detail/web-activity-time-tracker/${__APP_ID__}/support`; export const CHROME_STORE_CLEAR_YOUTUBE_URL = 'https://chromewebstore.google.com/detail/clean-youtube-update-yout/kalhfjomailhflienkfajocjodgjipie?utm_source=watt'; + +export const EDGE_STORE_REVIEW_URL = `https://microsoftedge.microsoft.com/addons/detail/web-activity-time-tracker/${__APP_ID__}#review-section`; diff --git a/vite.config.ts b/vite.config.ts index b8ef92a..cf14fdb 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -5,7 +5,10 @@ import webExtension, { readJsonFile } from 'vite-plugin-web-extension'; import VueI18nPlugin from '@intlify/unplugin-vue-i18n/vite'; import copy from 'rollup-plugin-copy'; -const APPID_CHROME = 'hhfnghjdeddcfegfekjeihfmbjenlomm'; +const APP_ID = { + chrome: 'hhfnghjdeddcfegfekjeihfmbjenlomm', + edge: 'eepmlmdenlkkjieghjmedjahpofieogf', +}; const browser = process.env.TARGET || 'chrome'; function generateManifest() { @@ -44,7 +47,7 @@ export default defineConfig(({ mode }) => ({ __EXTENSION_MODE__: JSON.stringify(mode), __DEV__: mode === 'development', __PROD__: mode === 'production', - __APP_ID__: JSON.stringify(APPID_CHROME), + __APP_ID__: JSON.stringify(APP_ID[browser]), __BROWSER__: JSON.stringify(browser), }, plugins: [