diff --git a/apps/chrome-extension/src/chrome/utils.mock.ts b/apps/chrome-extension/src/chrome/utils.mock.ts index 623498d7..56fab8f9 100644 --- a/apps/chrome-extension/src/chrome/utils.mock.ts +++ b/apps/chrome-extension/src/chrome/utils.mock.ts @@ -80,6 +80,10 @@ const getRuleSettings = async (): Promise => { return buildDefaultSettingsReadingTool() } +const openSettingsCode = async () => { + await router.push('settings-code') +} + export { getCurrentTab, closeCurrentTab, @@ -95,5 +99,6 @@ export { getMaskSettings, getRuleSettings, saveMaskSettings, - saveRuleSettings + saveRuleSettings, + openSettingsCode } diff --git a/apps/chrome-extension/src/chrome/utils.ts b/apps/chrome-extension/src/chrome/utils.ts index 6819bc2f..1a73dab9 100644 --- a/apps/chrome-extension/src/chrome/utils.ts +++ b/apps/chrome-extension/src/chrome/utils.ts @@ -102,6 +102,16 @@ const getRuleSettings = async (): Promise => { return ruleSettings ?? buildDefaultSettingsReadingTool() } +const openSettingsCode = async (): Promise => { + try { + await chrome.tabs.create({ + url: 'index.html#/settings-code' + }) + } catch (e) { + console.error(e) + } +} + export { getCurrentTab, closeCurrentTab, @@ -117,5 +127,6 @@ export { saveMaskSettings, getMaskSettings, saveRuleSettings, - getRuleSettings + getRuleSettings, + openSettingsCode } diff --git a/apps/chrome-extension/src/chrome/utilsFactory.ts b/apps/chrome-extension/src/chrome/utilsFactory.ts index 5fda905e..d3b528fe 100644 --- a/apps/chrome-extension/src/chrome/utilsFactory.ts +++ b/apps/chrome-extension/src/chrome/utilsFactory.ts @@ -18,6 +18,7 @@ export interface ChromeUtils { saveMaskSettings: (maskSettings: SettingsReadingTool) => Promise getRuleSettings: () => Promise saveRuleSettings: (ruleSettings: SettingsReadingTool) => Promise + openSettingsCode: () => Promise } const buildUtils = (): ChromeUtils => { diff --git a/apps/chrome-extension/src/components/SettingsCode.vue b/apps/chrome-extension/src/components/SettingsCode.vue new file mode 100644 index 00000000..04d97209 --- /dev/null +++ b/apps/chrome-extension/src/components/SettingsCode.vue @@ -0,0 +1,66 @@ + + + + + diff --git a/apps/chrome-extension/src/i18n/en.json b/apps/chrome-extension/src/i18n/en.json index f85ee274..ebc013fa 100644 --- a/apps/chrome-extension/src/i18n/en.json +++ b/apps/chrome-extension/src/i18n/en.json @@ -85,11 +85,18 @@ "CANCEL": "Cancel" }, "SETTINGS_CODE": { - "PREFERENCE_CODE": "Preference code" + "PREFERENCE_CODE": "Preference code", + "APPLY_THIS_SETTINGS": "Apply this settings", + "APPLY_YOUR_SETTINGS_CODE": "Apply your Settings Code", + "WRONG_CODE_ERROR": "Wrong code!", + "PASTE_YOUR_SETTINGS": "Paste your settings code here", + "PASTE": "Paste your code" }, "LOADING": "Loading", "DEFAULT": "Default", "MEDIUM": "Medium", "LARGE": "Large", - "EXTRA_LARGE": "Extra Large" + "EXTRA_LARGE": "Extra Large", + "COPY": "Copy", + "COPIED": "Copied!" } diff --git a/apps/chrome-extension/src/i18n/fr.json b/apps/chrome-extension/src/i18n/fr.json index 97997f4f..03b60673 100644 --- a/apps/chrome-extension/src/i18n/fr.json +++ b/apps/chrome-extension/src/i18n/fr.json @@ -85,12 +85,18 @@ "CANCEL": "Annuler" }, "SETTINGS_CODE": { - "PREFERENCE_CODE": "Code du profil", - "PREFERENCE_CODE_HELP": "Ce code correspond à votre profil. Vous pouvez utiliser ce code sur les autres plateformes que nous supportons." + "PREFERENCE_CODE": "Code profile", + "APPLY_THIS_SETTINGS": "Appliquer ces préférences", + "APPLY_YOUR_SETTINGS_CODE": "Appliquer votre code profil", + "WRONG_CODE_ERROR": "Code erroné", + "PASTE_YOUR_SETTINGS": "Coller ici votre code profil", + "PASTE": "Coller votre code" }, "LOADING": "Chargement en cours", "DEFAULT": "Par Défaut", "MEDIUM": "Moyen", "LARGE": "Grand", - "EXTRA_LARGE": "Très Grand" + "EXTRA_LARGE": "Très Grand", + "COPY": "Copier", + "COPIED": "Copié !" } diff --git a/apps/chrome-extension/src/main.ts b/apps/chrome-extension/src/main.ts index 8b7393ef..f988ef86 100644 --- a/apps/chrome-extension/src/main.ts +++ b/apps/chrome-extension/src/main.ts @@ -1,5 +1,6 @@ import Vue from 'vue' import VueSanitize from 'vue-sanitize' +import { VBTooltip } from 'bootstrap-vue' import App from './App.vue' import i18n from './i18n' @@ -11,6 +12,7 @@ import './theme.scss' Vue.config.productionTip = false Vue.use(VueSanitize) +Vue.directive('b-tooltip', VBTooltip) new Vue({ i18n, diff --git a/apps/chrome-extension/src/router/router.ts b/apps/chrome-extension/src/router/router.ts index 7b89f11a..9d7816bf 100644 --- a/apps/chrome-extension/src/router/router.ts +++ b/apps/chrome-extension/src/router/router.ts @@ -23,6 +23,10 @@ const routes: Array = [ { path: '/settings', component: () => import('@/views/SettingsMenu.vue') + }, + { + path: '/settings-code', + component: () => import('@/views/SettingsCodeEdit.vue') } ] diff --git a/apps/chrome-extension/src/views/MainMenu.vue b/apps/chrome-extension/src/views/MainMenu.vue index 30b94acd..1fd5f54c 100644 --- a/apps/chrome-extension/src/views/MainMenu.vue +++ b/apps/chrome-extension/src/views/MainMenu.vue @@ -26,7 +26,17 @@ const MainMenu = defineComponent({ setup() { const readaptEnabled = ref(true) - const { openSettings, sendMessageToCurrentTab, newSettings, openTemplates, broadcastMessage, getEnabled, saveEnabled, saveLocale } = utils + const { + openSettings, + sendMessageToCurrentTab, + newSettings, + openTemplates, + broadcastMessage, + getEnabled, + saveEnabled, + saveLocale, + openSettingsCode + } = utils const settings = computed(() => store.getters.getSettings) const defaultProfiles = buildDefaultProfiles() @@ -60,16 +70,17 @@ const MainMenu = defineComponent({ return { version, readaptEnabled, + // methods, openSettings, newSettings, sendMessageToCurrentTab, broadcastMessage, openTemplates, - // methods, switchEnabled, adapt, reset, selectTemplate, + openSettingsCode, changeLocale, isDefaultSettings } @@ -109,7 +120,7 @@ export default MainMenu
{{ $t('MAIN_MENU.ADAPT_TEXT_BY') }}
-
    +
      @@ -120,27 +131,27 @@ export default MainMenu
{{ $t('MAIN_MENU.FIRST_RUN') }}
-
- +
+ {{ $t('MAIN_MENU.SEE_MODIFY_CURRENT_PROFILE') }} - + {{ $t('MAIN_MENU.CREATE_BRAND_NEW_PROFILE') }} + + {{ $t('MAIN_MENU.I_HAVE_PROFILE_CODE') }} + + {{ $t('MAIN_MENU.BASE_YOUR_PROFILE_FROM_TEMPLATE') }} - - - -
-