From a34d3c41e08ce0b7f0fbbaab2bdb8786feacaa51 Mon Sep 17 00:00:00 2001 From: Mic Date: Mon, 8 Sep 2025 21:42:00 +0200 Subject: [PATCH] code formatted. better prefs import. --- api_webchat/messagesArea.js | 5 +++-- js/mzta-menus.js | 18 ++++++++++++++--- js/mzta-placeholders.js | 8 +++++--- js/mzta-special-commands.js | 36 ++++++++++++++++++++++++++++------ js/mzta-utils-prompt.js | 9 +++++---- js/mzta-utils.js | 5 +++-- mzta-background.js | 2 +- pages/onboarding/onboarding.js | 8 ++++++-- 8 files changed, 68 insertions(+), 23 deletions(-) diff --git a/api_webchat/messagesArea.js b/api_webchat/messagesArea.js index eb61eca0..3696dbe2 100644 --- a/api_webchat/messagesArea.js +++ b/api_webchat/messagesArea.js @@ -20,6 +20,7 @@ * The original code has been released under the Apache License, Version 2.0. */ +import { prefs_default } from '../options/mzta-options-default.js'; const messagesAreaTemplate = document.createElement('template'); const messagesAreaStyle = document.createElement('style'); @@ -383,7 +384,7 @@ class MessagesArea extends HTMLElement { splitButton.appendChild(actionButton); const fullTextHTMLAtAssignment = this.fullTextHTML.trim().replace(/^"|"$/g, '').replace(/^

"/, '

').replace(/"<\/p>$/, '

'); // strip quotation marks //console.log(">>>>>>>>>>>> fullTextHTMLAtAssignment: " + fullTextHTMLAtAssignment); - let reply_type_pref = await browser.storage.sync.get({reply_type: 'reply_all'}); + let reply_type_pref = await browser.storage.sync.get({ reply_type: prefs_default.reply_type }); if((promptData.action == "1") && (promptData.mailMessageId != -1)) { const actionButton_line2 = document.createElement('span'); actionButton_line2.classList.add('action_btn_info'); @@ -613,4 +614,4 @@ function removeAloneBRs(htmlString) { }); return doc.body.innerHTML; -} \ No newline at end of file +} diff --git a/js/mzta-menus.js b/js/mzta-menus.js index c836acde..e58be3aa 100644 --- a/js/mzta-menus.js +++ b/js/mzta-menus.js @@ -19,6 +19,7 @@ // Some original methods are derived from https://github.com/ali-raheem/Aify/blob/cfadf52f576b7be3720b5b73af7c8d3129c054da/plugin/html/actions.js import { getPrompts } from './mzta-prompts.js'; +import { prefs_default } from '../options/mzta-options-default.js'; import { getLanguageDisplayName, getMenuContextCompose, getMenuContextDisplay, i18nConditionalGet, getMailSubject, getTagsList, extractJsonObject, convertNewlinesToBr, cleanupNewlines, checkIfTagLabelExists } from './mzta-utils.js' import { taPromptUtils } from './mzta-utils-prompt.js'; import { taLogger } from './mzta-logger.js'; @@ -182,7 +183,14 @@ export class mzta_Menus { case 'prompt_add_tags': { // Add tags to the email let tags_current_email = []; let tags_current_email_final = []; - let prefs_at = await browser.storage.sync.get({add_tags_maxnum: 3, connection_type: '', add_tags_force_lang: true, add_tags_auto_force_existing: false, default_chatgpt_lang: '', do_debug: false}); + let prefs_at = await browser.storage.sync.get({ + add_tags_maxnum: prefs_default.add_tags_maxnum, + connection_type: prefs_default.connection_type, + add_tags_force_lang: prefs_default.add_tags_force_lang, + add_tags_auto_force_existing: prefs_default.add_tags_auto_force_existing, + default_chatgpt_lang: prefs_default.default_chatgpt_lang, + do_debug: prefs_default.do_debug, + }); if((prefs_at.connection_type === '')||(prefs_at.connection_type === null)||(prefs_at.connection_type === undefined)||(prefs_at.connection_type === 'chatgpt_web')){ console.error("[ThunderAI | AddTags] Invalid connection type: " + prefs_at.connection_type); taWorkingStatus.stopWorking(); @@ -226,7 +234,11 @@ export class mzta_Menus { } case 'prompt_get_calendar_event': { // Get a calendar event info let calendar_event_data = ''; - let prefs_at = await browser.storage.sync.get({connection_type: '', calendar_enforce_timezone: false, calendar_timezone: '',}); + let prefs_at = await browser.storage.sync.get({ + connection_type: prefs_default.connection_type, + calendar_enforce_timezone: prefs_default.calendar_enforce_timezone, + calendar_timezone: prefs_default.calendar_timezone, + }); if((prefs_at.connection_type === '')||(prefs_at.connection_type === null)||(prefs_at.connection_type === undefined)||(prefs_at.connection_type === 'chatgpt_web')){ console.error("[ThunderAI | GetCalendarEvent] Invalid connection type: " + prefs_at.connection_type); taWorkingStatus.stopWorking(); @@ -500,4 +512,4 @@ export class mzta_Menus { return false; } -} \ No newline at end of file +} diff --git a/js/mzta-placeholders.js b/js/mzta-placeholders.js index fb08a387..0eb6f926 100644 --- a/js/mzta-placeholders.js +++ b/js/mzta-placeholders.js @@ -16,6 +16,8 @@ * along with this program. If not, see . */ +import { prefs_default } from '../options/mzta-options-default.js'; + /* ================= PLACEHOLDERS PROPERTIES ======================================== ================ BASE PROPERTIES @@ -480,11 +482,11 @@ export const placeholdersUtils = { finalSubs['tags_full_list'] = placeholdersUtils.failSafePlaceholders(tags_full_list[0]); break; case 'thunderai_def_sign': - let prefs_def_sign = await browser.storage.sync.get({default_sign_name: ''}); + let prefs_def_sign = await browser.storage.sync.get({ default_sign_name: prefs_default.default_sign_name }); finalSubs['thunderai_def_sign'] = placeholdersUtils.failSafePlaceholders(prefs_def_sign.default_sign_name); break; case 'thunderai_def_lang': - let prefs_def_lang = await browser.storage.sync.get({default_chatgpt_lang: ''}); + let prefs_def_lang = await browser.storage.sync.get({ default_chatgpt_lang: prefs_default.default_chatgpt_lang }); finalSubs['thunderai_def_lang'] = placeholdersUtils.failSafePlaceholders(prefs_def_lang.default_chatgpt_lang); break; case 'mail_attachments_info': @@ -516,4 +518,4 @@ export const placeholdersUtils = { return element; } -} \ No newline at end of file +} diff --git a/js/mzta-special-commands.js b/js/mzta-special-commands.js index 2ac7ac38..93685669 100644 --- a/js/mzta-special-commands.js +++ b/js/mzta-special-commands.js @@ -19,6 +19,7 @@ import { taLogger } from './mzta-logger.js'; + import { prefs_default } from '../options/mzta-options-default.js'; export class mzta_specialCommand { @@ -60,27 +61,50 @@ async initWorker() { switch (this.llm) { case "chatgpt_api": { - let prefs_api = await browser.storage.sync.get({chatgpt_api_key: '', chatgpt_model: '', chatgpt_developer_messages: ''}); + let prefs_api = await browser.storage.sync.get({ + chatgpt_api_key: prefs_default.chatgpt_api_key, + chatgpt_model: prefs_default.chatgpt_model, + chatgpt_developer_messages: prefs_default.chatgpt_developer_messages, + }); this.worker.postMessage({ type: 'init', chatgpt_api_key: prefs_api.chatgpt_api_key, chatgpt_model: prefs_api.chatgpt_model, chatgpt_developer_messages: prefs_api.chatgpt_developer_messages, do_debug: this.do_debug, i18nStrings: ''}); break; } case "google_gemini_api": { - let prefs_api = await browser.storage.sync.get({google_gemini_api_key: '', google_gemini_model: '', google_gemini_system_instruction: ''}); + let prefs_api = await browser.storage.sync.get({ + google_gemini_api_key: prefs_default.google_gemini_api_key, + google_gemini_model: prefs_default.google_gemini_model, + google_gemini_system_instruction: prefs_default.google_gemini_system_instruction, + }); this.worker.postMessage({ type: 'init', google_gemini_api_key: prefs_api.google_gemini_api_key, google_gemini_model: prefs_api.google_gemini_model, google_gemini_system_instruction: prefs_api.google_gemini_system_instruction, do_debug: this.do_debug, i18nStrings: ''}); break; } case "ollama_api": { - let prefs_api = await browser.storage.sync.get({ollama_host: '', ollama_model: ''}); + let prefs_api = await browser.storage.sync.get({ + ollama_host: prefs_default.ollama_host, + ollama_model: prefs_default.ollama_model, + }); this.worker.postMessage({ type: 'init', ollama_host: prefs_api.ollama_host, ollama_model: prefs_api.ollama_model, do_debug: this.do_debug, i18nStrings: ''}); break; } case "openai_comp_api": { - let prefs_api = await browser.storage.sync.get({openai_comp_host: '', openai_comp_model: '', openai_comp_api_key: '', openai_comp_use_v1: true, openai_comp_chat_name: '', do_debug: false}); + let prefs_api = await browser.storage.sync.get({ + openai_comp_host: prefs_default.openai_comp_host, + openai_comp_model: prefs_default.openai_comp_model, + openai_comp_api_key: prefs_default.openai_comp_api_key, + openai_comp_use_v1: prefs_default.openai_comp_use_v1, + openai_comp_chat_name: prefs_default.openai_comp_chat_name, + do_debug: prefs_default.do_debug, + }); this.worker.postMessage({ type: 'init', openai_comp_host: prefs_api.openai_comp_host, openai_comp_model: prefs_api.openai_comp_model, openai_comp_api_key: prefs_api.openai_comp_api_key, openai_comp_use_v1: prefs_api.openai_comp_use_v1, do_debug: this.do_debug, i18nStrings: ''}); break; } case "anthropic_api": { - let prefs_api = await browser.storage.sync.get({anthropic_api_key: '', anthropic_model: '', anthropic_version: '2023-06-01', anthropic_max_tokens: 4096}); + let prefs_api = await browser.storage.sync.get({ + anthropic_api_key: prefs_default.anthropic_api_key, + anthropic_model: prefs_default.anthropic_model, + anthropic_version: prefs_default.anthropic_version, + anthropic_max_tokens: prefs_default.anthropic_max_tokens, + }); this.worker.postMessage({ type: 'init', anthropic_api_key: prefs_api.anthropic_api_key, anthropic_model: prefs_api.anthropic_model, anthropic_version: prefs_api.anthropic_version, anthropic_max_tokens: prefs_api.anthropic_max_tokens, do_debug: this.do_debug, i18nStrings: ''}); break; } @@ -131,4 +155,4 @@ } }); } - } \ No newline at end of file + } diff --git a/js/mzta-utils-prompt.js b/js/mzta-utils-prompt.js index 57098416..03f29c53 100644 --- a/js/mzta-utils-prompt.js +++ b/js/mzta-utils-prompt.js @@ -18,11 +18,12 @@ import { placeholdersUtils } from './mzta-placeholders.js'; import { extractJsonObject } from './mzta-utils.js'; +import { prefs_default } from '../options/mzta-options-default.js'; export const taPromptUtils = { async getDefaultSignature(){ - let prefs = await browser.storage.sync.get({default_sign_name: ''}); + let prefs = await browser.storage.sync.get({ default_sign_name: prefs_default.default_sign_name }); if(prefs.default_sign_name===''){ return ''; }else{ @@ -68,7 +69,7 @@ export const taPromptUtils = { selection_html: selection_html, tags_full_list: tags_full_list }); - let prefs_ph = await browser.storage.sync.get({placeholders_use_default_value: false}); + let prefs_ph = await browser.storage.sync.get({ placeholders_use_default_value: prefs_default.placeholders_use_default_value }); fullPrompt = (placeholdersUtils.replacePlaceholders({ text: curr_prompt.text, replacements: finalSubs, @@ -104,7 +105,7 @@ export const taPromptUtils = { async getDefaultLang(curr_prompt){ let chatgpt_lang = ''; if(String(curr_prompt.define_response_lang) == "1"){ - let prefs = await browser.storage.sync.get({default_chatgpt_lang: ''}); + let prefs = await browser.storage.sync.get({ default_chatgpt_lang: prefs_default.default_chatgpt_lang }); chatgpt_lang = prefs.default_chatgpt_lang; if(chatgpt_lang === ''){ chatgpt_lang = browser.i18n.getMessage("reply_same_lang"); @@ -152,4 +153,4 @@ export const taPromptUtils = { } return tags; } -}; \ No newline at end of file +}; diff --git a/js/mzta-utils.js b/js/mzta-utils.js index bf41319a..af6e82fc 100644 --- a/js/mzta-utils.js +++ b/js/mzta-utils.js @@ -16,6 +16,7 @@ * along with this program. If not, see . */ +import { prefs_default } from '../options/mzta-options-default.js'; const sparks_min = '1.2.0'; // Minimum version of ThunderAI-Sparks required for the add-on to work export const ChatGPTWeb_models = ['gpt-5','gpt-5-instant','gpt-5-t-mini','gpt-5-thinking']; // List of models available in ChatGPT Web @@ -388,7 +389,7 @@ export async function getTagsList(){ } export async function createTag(tag) { - let prefs_tag = await browser.storage.sync.get({add_tags_first_uppercase: true}); + let prefs_tag = await browser.storage.sync.get({ add_tags_first_uppercase: prefs_default.add_tags_first_uppercase }); if(prefs_tag.add_tags_first_uppercase) tag = tag.toLowerCase().charAt(0).toUpperCase() + tag.toLowerCase().slice(1); try { if(await isThunderbird128OrGreater()) { @@ -753,4 +754,4 @@ export async function* getMessages(list) { yield message; } } -} \ No newline at end of file +} diff --git a/mzta-background.js b/mzta-background.js index 4046b52a..c3c9c290 100644 --- a/mzta-background.js +++ b/mzta-background.js @@ -414,7 +414,7 @@ async function openChatGPT(promptText, action, curr_tabId, prompt_name = '', do_ if((originalText == null) || (originalText == "")) { originalText = prompt_info.body_text; } - let reply_type_pref = await browser.storage.sync.get({reply_type: 'reply_all'}); + let reply_type_pref = await browser.storage.sync.get({ reply_type: prefs_default.reply_type }); //console.log(">>>>>>>>>> prompt_info: " + JSON.stringify(prompt_info)); let pre_script = `let mztaWinId = `+ createdTab.windowId +`; let mztaStatusPageDesc="`+ browser.i18n.getMessage("prefs_status_page") +`"; diff --git a/pages/onboarding/onboarding.js b/pages/onboarding/onboarding.js index d9f8e6a7..7857e4a0 100644 --- a/pages/onboarding/onboarding.js +++ b/pages/onboarding/onboarding.js @@ -17,11 +17,15 @@ */ import { taLogger } from '../../js/mzta-logger.js'; +import { prefs_default } from '../../options/mzta-options-default.js'; let taLog = null; document.addEventListener('DOMContentLoaded', async () => { - let prefs = await browser.storage.sync.get({do_debug: false, connection_type: 'chatgpt_web'}); + let prefs = await browser.storage.sync.get({ + do_debug: prefs_default.do_debug, + connection_type: prefs_default.connection_type, + }); taLog = new taLogger("mzta-popup",prefs.do_debug); i18n.updateDocument(); if(prefs.connection_type === 'chatgpt_web'){ @@ -62,4 +66,4 @@ document.addEventListener('DOMContentLoaded', async () => { }); } } -}, { once: true }); \ No newline at end of file +}, { once: true });