M2 Zaubertool Add-On
| { | ||
| "manifest_version": 3, | ||
| "name": "Zaubertool Add-On", | ||
| "version": "1.1.8", | ||
| "description": "Add-On für das M2-Zaubertool", | ||
| "icons": { | ||
| "16": "images/icon.png" | ||
| }, | ||
| "action": { | ||
| "default_popup": "popup.html", | ||
| "default_title": "Zaubertool Add-On" | ||
| }, | ||
| "content_scripts": [ | ||
| { | ||
| "matches": [ | ||
| "https://team.m2-loesung.de/*", | ||
| "https://team-staging.m2-loesung.de/*" | ||
| ], | ||
| "js": [ | ||
| "content_scripts.js" | ||
| ], | ||
| "all_frames": true, | ||
| "run_at": "document_start" | ||
| }, | ||
| { | ||
| "matches": [ | ||
| "https://team.m2-loesung.de/cases/*/processing/*", | ||
| "https://team-staging.m2-loesung.de/cases/*/processing/*" | ||
| ], | ||
| "js": [ | ||
| "content_scripts_case.js" | ||
| ], | ||
| "all_frames": true, | ||
| "run_at": "document_start" | ||
| } | ||
| ], | ||
| "web_accessible_resources": [ | ||
| { | ||
| "resources": [ | ||
| "styles/darkmode.css", | ||
| "styles/stylefix.css", | ||
| "lib/inject.js" | ||
| ], | ||
| "matches": [ | ||
| "https://team.m2-loesung.de/*", | ||
| "https://team-staging.m2-loesung.de/*" | ||
| ] | ||
| } | ||
| ], | ||
| "browser_specific_settings": { | ||
| "gecko": { | ||
| "id": "zaubertool@example.local", | ||
| "strict_min_version": "142.0" | ||
| } | ||
| }, | ||
| "permissions": [ | ||
| "activeTab", | ||
| "storage", | ||
| "tabs", | ||
| "webNavigation", | ||
| "scripting" | ||
| ], | ||
| "host_permissions": [ | ||
| "https://team.m2-loesung.de/*", | ||
| "https://team-staging.m2-loesung.de/*" | ||
| ], | ||
| "background": { | ||
| "service_worker": "background.js", | ||
| "type": "module" | ||
| }, | ||
| "content_security_policy": { | ||
| "extension_pages": "script-src 'self'; object-src 'self'" | ||
| } | ||
| } |
| { | ||
| "manifest_version": 3, | ||
| "name": "Zaubertool Add-On", | ||
| "version": "1.1.8", | ||
| "description": "Add-On für das M2-Zaubertool", | ||
| "icons": { | ||
| "16": "images/icon.png" | ||
| }, | ||
| "action": { | ||
| "default_popup": "popup.html", | ||
| "default_title": "Zaubertool Add-On" | ||
| }, | ||
| "content_scripts": [ | ||
| { | ||
| "matches": [ | ||
| "https://team.m2-loesung.de/*", | ||
| "https://team-staging.m2-loesung.de/*" | ||
| ], | ||
| "js": [ | ||
| "content_scripts.js" | ||
| ], | ||
| "all_frames": true, | ||
| "run_at": "document_start" | ||
| }, | ||
| { | ||
| "matches": [ | ||
| "https://team.m2-loesung.de/cases/*/processing/*", | ||
| "https://team-staging.m2-loesung.de/cases/*/processing/*" | ||
| ], | ||
| "js": [ | ||
| "content_scripts_case.js" | ||
| ], | ||
| "all_frames": true, | ||
| "run_at": "document_start" | ||
| } | ||
| ], | ||
| "web_accessible_resources": [ | ||
| { | ||
| "resources": [ | ||
| "styles/darkmode.css", | ||
| "styles/stylefix.css", | ||
| "lib/inject.js" | ||
| ], | ||
| "matches": [ | ||
| "https://team.m2-loesung.de/*", | ||
| "https://team-staging.m2-loesung.de/*" | ||
| ] | ||
| } | ||
| ], | ||
| "browser_specific_settings": { | ||
| "gecko": { | ||
| "id": "zaubertool@example.local", | ||
| "strict_min_version": "142.0" | ||
| } | ||
| }, | ||
| "permissions": [ | ||
| "activeTab", | ||
| "storage", | ||
| "tabs", | ||
| "webNavigation", | ||
| "scripting" | ||
| ], | ||
| "host_permissions": [ | ||
| "https://team.m2-loesung.de/*", | ||
| "https://team-staging.m2-loesung.de/*" | ||
| ], | ||
| "background": { | ||
| "scripts": [ | ||
| "background.js" | ||
| ] | ||
| }, | ||
| "content_security_policy": { | ||
| "extension_pages": "script-src 'self'; object-src 'self'" | ||
| } | ||
| } |
+1
-1
@@ -1,1 +0,1 @@ | ||
| const TEAM_HOSTS=["team.m2-loesung.de","team-staging.m2-loesung.de"],PROCESSING_RE=/https:\/\/(team|team-staging)\.m2-loesung\.de\/cases\/[^/]+\/processing\//i;function shouldInjectUrl(t){try{return PROCESSING_RE.test(t||"")}catch(t){return!1}}async function ensureInjected(t,e){try{return void await browser.tabs.sendMessage(t,{id:"zt_ping"})}catch(t){}try{await browser.tabs.executeScript(t,{file:"content_scripts_case.js",allFrames:!0}),console.debug("Zaubertool[bg]: injected content_scripts_case.js into tab",t,e)}catch(s){console.warn("Zaubertool[bg]: failed to inject content_scripts_case.js",s,t,e)}}browser.webNavigation.onHistoryStateUpdated.addListener(t=>{try{const e=t.url||"";shouldInjectUrl(e)&&ensureInjected(t.tabId,e)}catch(t){}},{url:[{hostContains:"team.m2-loesung.de"},{hostContains:"team-staging.m2-loesung.de"}]}),browser.tabs.onUpdated.addListener((t,e,s)=>{try{if("complete"!==e.status)return;const n=s&&s.url?s.url:"";shouldInjectUrl(n)&&ensureInjected(t,n)}catch(t){}}),console.debug("Zaubertool[bg]: background script initialized"); | ||
| (()=>{"use strict";const e=globalThis;!function(){if(e.browser)return e.browser;if(!e.chrome)return;const t=e.chrome,r=Object.create(null);r.runtime=t.runtime,r.tabs={},t.tabs&&(r.tabs.query=e=>new Promise((r,o)=>{try{t.tabs.query(e,e=>r(e))}catch(e){o(e)}}),r.tabs.sendMessage=(e,r)=>new Promise((o,s)=>{try{t.tabs.sendMessage(e,r,e=>o(e))}catch(e){s(e)}}),t.tabs.executeScript&&(r.tabs.executeScript=(e,r)=>new Promise((o,s)=>{try{t.tabs.executeScript(e,r,e=>o(e))}catch(e){s(e)}}))),r.storage={},t.storage&&t.storage.local&&(r.storage.local={get:e=>new Promise((r,o)=>{try{t.storage.local.get(e,e=>{const s=t.runtime&&t.runtime.lastError;if(s)return o(s);r(e)})}catch(e){o(e)}}),set:e=>new Promise((r,o)=>{try{t.storage.local.set(e,()=>{const e=t.runtime&&t.runtime.lastError;if(e)return o(e);r()})}catch(e){o(e)}}),remove:e=>new Promise((r,o)=>{try{t.storage.local.remove(e,()=>{const e=t.runtime&&t.runtime.lastError;if(e)return o(e);r()})}catch(e){o(e)}})}),e.browser=r}();const t=/https:\/\/(team|team-staging)\.m2-loesung\.de\/cases\/[^/]+\/processing\//i,r=new Map;function o(e){try{return t.test(e||"")}catch(t){return console.warn("Zaubertool[bg]: invalid URL",e,t),!1}}async function s(e,t){if(o(t)){if(r.get(e)!==t)if(await async function(e){try{const t=await function(e,t){return"undefined"!=typeof browser&&browser.tabs&&browser.tabs.sendMessage?browser.tabs.sendMessage(e,t):new Promise(r=>{try{chrome.tabs.sendMessage(e,t,e=>{if(chrome.runtime&&chrome.runtime.lastError)return r(void 0);r(e)})}catch(e){r(void 0)}})}(e,{id:"zt_ping"});return!(!t||!t.pong)}catch(e){return!1}}(e))r.set(e,t||"");else try{await function(e,t){return"undefined"!=typeof browser&&browser.scripting&&browser.scripting.executeScript?browser.scripting.executeScript({target:{tabId:e},files:t}):"undefined"!=typeof chrome&&chrome.scripting&&chrome.scripting.executeScript?new Promise((r,o)=>{try{chrome.scripting.executeScript({target:{tabId:e},files:t},e=>{const t=chrome.runtime&&chrome.runtime.lastError;if(t)return o(t);r(e)})}catch(e){o(e)}}):"undefined"!=typeof browser&&browser.tabs&&browser.tabs.executeScript?browser.tabs.executeScript(e,{file:t[0],allFrames:!0}):"undefined"!=typeof chrome&&chrome.tabs&&chrome.tabs.executeScript?new Promise((r,o)=>{try{chrome.tabs.executeScript(e,{file:t[0],allFrames:!0},e=>{const t=chrome.runtime&&chrome.runtime.lastError;if(t)return o(t);r(e)})}catch(e){o(e)}}):Promise.reject(new Error("No scripting API available"))}(e,["content_scripts_case.js"]),r.set(e,t||""),console.debug("Zaubertool[bg]: injected case bundle",{tabId:e,url:t})}catch(r){console.warn("Zaubertool[bg]: injection failed",{tabId:e,url:t,err:r})}}else r.delete(e)}"undefined"!=typeof browser&&browser.webNavigation&&browser.webNavigation.onHistoryStateUpdated?browser.webNavigation.onHistoryStateUpdated.addListener(e=>{0===e.frameId&&o(e.url)&&s(e.tabId,e.url)},{url:[{hostSuffix:"team.m2-loesung.de"},{hostSuffix:"team-staging.m2-loesung.de"}]}):"undefined"!=typeof chrome&&chrome.webNavigation&&chrome.webNavigation.onHistoryStateUpdated&&chrome.webNavigation.onHistoryStateUpdated.addListener(e=>{0===e.frameId&&o(e.url)&&s(e.tabId,e.url)}),"undefined"!=typeof browser&&browser.tabs&&browser.tabs.onUpdated?browser.tabs.onUpdated.addListener((e,t,r)=>{"complete"===t.status&&s(e,r?.url??"")}):"undefined"!=typeof chrome&&chrome.tabs&&chrome.tabs.onUpdated&&chrome.tabs.onUpdated.addListener((e,t,r)=>{"complete"===t.status&&s(e,r&&r.url||"")}),"undefined"!=typeof browser&&browser.tabs&&browser.tabs.onRemoved?browser.tabs.onRemoved.addListener(e=>r.delete(e)):"undefined"!=typeof chrome&&chrome.tabs&&chrome.tabs.onRemoved&&chrome.tabs.onRemoved.addListener(e=>r.delete(e)),console.debug("Zaubertool[bg]: background service worker started")})(); |
@@ -1,1 +0,1 @@ | ||
| (()=>{const e=async e=>{try{if("function"==typeof browser.tabs.query){const t=await browser.tabs.query({active:!0,currentWindow:!0}),n=t&&t.length?t[0]:null;if(n)try{browser.tabs.sendMessage(n.id,e)}catch(e){}}}catch(t){try{browser.tabs.query({active:!0,currentWindow:!0},t=>{const n=t[0];browser.tabs.sendMessage(n.id,e)})}catch(e){}}},t=async(e,t)=>{try{const n=browser.storage.local.set({[e]:t});n&&"function"==typeof n.then?await n.then(()=>console.debug(`zt: storage set success ${e}=${String(t)}`)).catch(e=>console.warn("zt: browser.storage.local.set error",e)):console.debug(`zt: storage set attempted (no promise): ${e}=${String(t)}`)}catch(e){console.warn("zt: storage set failed (fallback)",e)}},n={largeComments:!1,gamification:!1,emailAutocomplete:!1,draggableModals:!1,relationSuggestions:!1,darkMode:!1,stylefix:!1};let o={...n};const c=document.getElementById("comments-large-checkbox"),a=document.getElementById("comments-large-checkbox-value");a&&(a.textContent=o.largeComments?"On":"Off"),c?.addEventListener("change",n=>{const o=n.target.checked;a&&(a.textContent=o?"On":"Off"),t("largeComments",o),e({id:"large-comments",value:o?"On":"Off"})});const s=document.getElementById("gamification-checkbox"),r=document.getElementById("gamification-checkbox-value");r&&(r.textContent=o.gamification?"On":"Off"),s?.addEventListener("change",n=>{const o=n.target.checked;r&&(r.textContent=o?"On":"Off"),t("gamification",o),e({id:"gamification",value:o?"On":"Off"})});const l=document.getElementById("email-autocomplete-checkbox"),i=document.getElementById("email-autocomplete-checkbox-value");i&&(i.textContent=o.emailAutocomplete?"On":"Off");const d=document.getElementById("darkmode-checkbox"),g=document.getElementById("darkmode-checkbox-value");g&&(g.textContent=o.darkMode?"On":"Off"),d?.addEventListener("change",async e=>{const n=e.target.checked;g&&(g.textContent=n?"On":"Off"),await t("darkMode",n);const o=await browser.tabs.query({});for(const e of o)try{await browser.tabs.sendMessage(e.id,{id:"dark-mode",value:n?"On":"Off"})}catch(e){}});const f=document.getElementById("stylefix-checkbox"),m=document.getElementById("stylefix-checkbox-value");m&&(m.textContent=o.stylefix?"On":"Off"),f?.addEventListener("change",async e=>{const n=e.target.checked;m&&(m.textContent=n?"On":"Off"),await t("stylefix",n);const o=await browser.tabs.query({});for(const e of o)try{await browser.tabs.sendMessage(e.id,{id:"stylefix",value:n?"On":"Off"})}catch(e){}}),l?.addEventListener("change",n=>{const o=n.target.checked;i&&(i.textContent=o?"On":"Off"),t("emailAutocomplete",o),e({id:"email-autocomplete",value:o?"On":"Off"})});const u=document.getElementById("relation-suggestions-checkbox"),b=document.getElementById("relation-suggestions-checkbox-value");b&&(b.textContent=o.relationSuggestions?"On":"Off"),u?.addEventListener("change",n=>{const o=n.target.checked;b&&(b.textContent=o?"On":"Off"),t("relationSuggestions",o),e({id:"relation-suggestions",value:o?"On":"Off"})});const h=document.getElementById("draggable-modals-checkbox");if(h){const e=document.getElementById("draggable-modals-checkbox-value"),n=!!o.draggableModals;e&&(e.textContent=n?"On":"Off"),h.addEventListener("change",async()=>{const n=h.checked;e&&(e.textContent=n?"On":"Off"),await t("draggableModals",n);const o=await browser.tabs.query({});for(const e of o)try{await browser.tabs.sendMessage(e.id,{id:"draggable-modals",value:n?"On":"Off"})}catch(e){}})}const O=document.getElementById("clear-cache-button");let y=!1,x=null;O&&O.addEventListener("click",async()=>{if(!y)return y=!0,O.textContent="Nochmal klicken um Cache zu löschen",O.classList.add("confirm"),void(x=setTimeout(()=>{y=!1,O.textContent="Cache löschen",O.classList.remove("confirm"),x=null},5e3));y=!1,O.classList.remove("confirm"),x&&(x=clearTimeout(x)),e({id:"clear-cache",value:"request"});try{const e=await browser.tabs.query({active:!0,currentWindow:!0}),t=e&&e.length?e[0]:null;if(t&&browser.tabs&&browser.tabs.executeScript)try{browser.tabs.executeScript(t.id,{file:"clear-cache.js"})}catch(e){}}catch(e){}window.close()}),async function(){try{const e=await browser.storage.local.get(n);if(o={...n,...e||{}},c&&(c.checked=!!o.largeComments,c.toggleAttribute("checked",!!o.largeComments)),a&&(a.textContent=o.largeComments?"On":"Off"),s&&(s.checked=!!o.gamification,s.toggleAttribute("checked",!!o.gamification)),r&&(r.textContent=o.gamification?"On":"Off"),l&&(l.checked=!!o.emailAutocomplete,l.toggleAttribute("checked",!!o.emailAutocomplete)),i&&(i.textContent=o.emailAutocomplete?"On":"Off"),h){const e=!!o.draggableModals;h.checked=e;const t=document.getElementById("draggable-modals-checkbox-value");t&&(t.textContent=e?"On":"Off")}d&&(d.checked=!!o.darkMode,d.toggleAttribute("checked",!!o.darkMode)),g&&(g.textContent=o.darkMode?"On":"Off");const t=document.getElementById("stylefix-checkbox"),f=document.getElementById("stylefix-checkbox-value");t&&(t.checked=!!o.stylefix,t.toggleAttribute("checked",!!o.stylefix)),f&&(f.textContent=o.stylefix?"On":"Off"),u&&(u.checked=!!o.relationSuggestions,u.toggleAttribute("checked",!!o.relationSuggestions)),b&&(b.textContent=o.relationSuggestions?"On":"Off")}catch(e){console.warn("zt: initPopupSettings error",e)}}()})(); | ||
| (()=>{"use strict";const e=globalThis;!function(){if(e.browser)return e.browser;if(!e.chrome)return;const t=e.chrome,n=Object.create(null);n.runtime=t.runtime,n.tabs={},t.tabs&&(n.tabs.query=e=>new Promise((n,o)=>{try{t.tabs.query(e,e=>n(e))}catch(e){o(e)}}),n.tabs.sendMessage=(e,n)=>new Promise((o,c)=>{try{t.tabs.sendMessage(e,n,e=>o(e))}catch(e){c(e)}}),t.tabs.executeScript&&(n.tabs.executeScript=(e,n)=>new Promise((o,c)=>{try{t.tabs.executeScript(e,n,e=>o(e))}catch(e){c(e)}}))),n.storage={},t.storage&&t.storage.local&&(n.storage.local={get:e=>new Promise((n,o)=>{try{t.storage.local.get(e,e=>{const c=t.runtime&&t.runtime.lastError;if(c)return o(c);n(e)})}catch(e){o(e)}}),set:e=>new Promise((n,o)=>{try{t.storage.local.set(e,()=>{const e=t.runtime&&t.runtime.lastError;if(e)return o(e);n()})}catch(e){o(e)}}),remove:e=>new Promise((n,o)=>{try{t.storage.local.remove(e,()=>{const e=t.runtime&&t.runtime.lastError;if(e)return o(e);n()})}catch(e){o(e)}})}),e.browser=n}();const t=async e=>{try{if("function"==typeof browser.tabs.query){const t=await browser.tabs.query({active:!0,currentWindow:!0}),n=t&&t.length?t[0]:null;if(n)try{browser.tabs.sendMessage(n.id,e)}catch(e){}}}catch(t){try{browser.tabs.query({active:!0,currentWindow:!0},t=>{const n=t[0];browser.tabs.sendMessage(n.id,e)})}catch(e){}}},n=async(e,t)=>{try{const n=browser.storage.local.set({[e]:t});n&&"function"==typeof n.then?await n.then(()=>console.debug(`zt: storage set success ${e}=${String(t)}`)).catch(e=>console.warn("zt: browser.storage.local.set error",e)):console.debug(`zt: storage set attempted (no promise): ${e}=${String(t)}`)}catch(e){console.warn("zt: storage set failed (fallback)",e)}},o={largeComments:!1,gamification:!1,emailAutocomplete:!1,draggableModals:!1,relationSuggestions:!1,darkMode:!1,stylefix:!1};let c={...o};const a=document.getElementById("comments-large-checkbox"),s=document.getElementById("comments-large-checkbox-value");s&&(s.textContent=c.largeComments?"On":"Off"),a?.addEventListener("change",e=>{const o=e.target.checked;s&&(s.textContent=o?"On":"Off"),n("largeComments",o),t({id:"large-comments",value:o?"On":"Off"})});const r=document.getElementById("gamification-checkbox"),i=document.getElementById("gamification-checkbox-value");i&&(i.textContent=c.gamification?"On":"Off"),r?.addEventListener("change",e=>{const o=e.target.checked;i&&(i.textContent=o?"On":"Off"),n("gamification",o),t({id:"gamification",value:o?"On":"Off"})});const l=document.getElementById("email-autocomplete-checkbox"),d=document.getElementById("email-autocomplete-checkbox-value");d&&(d.textContent=c.emailAutocomplete?"On":"Off");const g=document.getElementById("darkmode-checkbox"),m=document.getElementById("darkmode-checkbox-value");m&&(m.textContent=c.darkMode?"On":"Off"),g?.addEventListener("change",async e=>{const t=e.target.checked;m&&(m.textContent=t?"On":"Off"),await n("darkMode",t);const o=await browser.tabs.query({});for(const e of o)try{await browser.tabs.sendMessage(e.id,{id:"dark-mode",value:t?"On":"Off"})}catch(e){}});const u=document.getElementById("stylefix-checkbox"),f=document.getElementById("stylefix-checkbox-value");f&&(f.textContent=c.stylefix?"On":"Off"),u?.addEventListener("change",async e=>{const t=e.target.checked;f&&(f.textContent=t?"On":"Off"),await n("stylefix",t);const o=await browser.tabs.query({});for(const e of o)try{await browser.tabs.sendMessage(e.id,{id:"stylefix",value:t?"On":"Off"})}catch(e){}}),l?.addEventListener("change",e=>{const o=e.target.checked;d&&(d.textContent=o?"On":"Off"),n("emailAutocomplete",o),t({id:"email-autocomplete",value:o?"On":"Off"})});const b=document.getElementById("relation-suggestions-checkbox"),h=document.getElementById("relation-suggestions-checkbox-value");h&&(h.textContent=c.relationSuggestions?"On":"Off"),b?.addEventListener("change",e=>{const o=e.target.checked;h&&(h.textContent=o?"On":"Off"),n("relationSuggestions",o),t({id:"relation-suggestions",value:o?"On":"Off"})});const y=document.getElementById("draggable-modals-checkbox");if(y){const e=document.getElementById("draggable-modals-checkbox-value"),t=!!c.draggableModals;e&&(e.textContent=t?"On":"Off"),y.addEventListener("change",async()=>{const t=y.checked;e&&(e.textContent=t?"On":"Off"),await n("draggableModals",t);const o=await browser.tabs.query({});for(const e of o)try{await browser.tabs.sendMessage(e.id,{id:"draggable-modals",value:t?"On":"Off"})}catch(e){}})}const x=document.getElementById("clear-cache-button");let O=!1,k=null;x&&x.addEventListener("click",async()=>{if(!O)return O=!0,x.textContent="Nochmal klicken um Cache zu löschen",x.classList.add("confirm"),void(k=setTimeout(()=>{O=!1,x.textContent="Cache löschen",x.classList.remove("confirm"),k=null},5e3));O=!1,x.classList.remove("confirm"),k&&(k=clearTimeout(k)),t({id:"clear-cache",value:"request"});try{const e=await browser.tabs.query({active:!0,currentWindow:!0}),t=e&&e.length?e[0]:null;if(t&&browser.tabs&&browser.tabs.executeScript)try{browser.tabs.executeScript(t.id,{file:"clear-cache.js"})}catch(e){}}catch(e){}window.close()}),async function(){try{const e=await browser.storage.local.get(o);if(c={...o,...e||{}},a&&(a.checked=!!c.largeComments,a.toggleAttribute("checked",!!c.largeComments)),s&&(s.textContent=c.largeComments?"On":"Off"),r&&(r.checked=!!c.gamification,r.toggleAttribute("checked",!!c.gamification)),i&&(i.textContent=c.gamification?"On":"Off"),l&&(l.checked=!!c.emailAutocomplete,l.toggleAttribute("checked",!!c.emailAutocomplete)),d&&(d.textContent=c.emailAutocomplete?"On":"Off"),y){const e=!!c.draggableModals;y.checked=e;const t=document.getElementById("draggable-modals-checkbox-value");t&&(t.textContent=e?"On":"Off")}g&&(g.checked=!!c.darkMode,g.toggleAttribute("checked",!!c.darkMode)),m&&(m.textContent=c.darkMode?"On":"Off");const t=document.getElementById("stylefix-checkbox"),n=document.getElementById("stylefix-checkbox-value");t&&(t.checked=!!c.stylefix,t.toggleAttribute("checked",!!c.stylefix)),n&&(n.textContent=c.stylefix?"On":"Off"),b&&(b.checked=!!c.relationSuggestions,b.toggleAttribute("checked",!!c.relationSuggestions)),h&&(h.textContent=c.relationSuggestions?"On":"Off")}catch(e){console.warn("zt: initPopupSettings error",e)}}(),(()=>{const e=document.getElementById("popup-version-value");if(e)try{const t=browser.runtime.getManifest();e.textContent=t.version??"N/A"}catch(t){e.textContent="unknown"}})()})(); |
+32
-16
| { | ||
| "manifest_version": 2, | ||
| "manifest_version": 3, | ||
| "name": "Zaubertool Add-On", | ||
| "version": "1.1.6", | ||
| "version": "1.1.8", | ||
| "description": "Add-On f\u00fcr das M2-Zaubertool", | ||
@@ -9,3 +9,3 @@ "icons": { | ||
| }, | ||
| "browser_action": { | ||
| "action": { | ||
| "default_popup": "popup.html", | ||
@@ -28,4 +28,4 @@ "default_title": "Zaubertool Add-On" | ||
| "matches": [ | ||
| "https://team.m2-loesung.de/*", | ||
| "https://team-staging.m2-loesung.de/*" | ||
| "https://team.m2-loesung.de/cases/*/processing/*", | ||
| "https://team-staging.m2-loesung.de/cases/*/processing/*" | ||
| ], | ||
@@ -40,5 +40,13 @@ "js": [ | ||
| "web_accessible_resources": [ | ||
| "styles/darkmode.css", | ||
| "styles/stylefix.css", | ||
| "lib/inject.js" | ||
| { | ||
| "resources": [ | ||
| "styles/darkmode.css", | ||
| "styles/stylefix.css", | ||
| "lib/inject.js" | ||
| ], | ||
| "matches": [ | ||
| "https://team.m2-loesung.de/*", | ||
| "https://team-staging.m2-loesung.de/*" | ||
| ] | ||
| } | ||
| ], | ||
@@ -48,8 +56,3 @@ "browser_specific_settings": { | ||
| "id": "zaubertool@example.local", | ||
| "strict_min_version": "140.0", | ||
| "data_collection_permissions": { | ||
| "required": [ | ||
| "none" | ||
| ] | ||
| } | ||
| "strict_min_version": "142.0" | ||
| } | ||
@@ -60,5 +63,18 @@ }, | ||
| "storage", | ||
| "tabs" | ||
| "tabs", | ||
| "webNavigation", | ||
| "scripting" | ||
| ], | ||
| "content_security_policy": "script-src 'self'; object-src 'self'" | ||
| "host_permissions": [ | ||
| "https://team.m2-loesung.de/*", | ||
| "https://team-staging.m2-loesung.de/*" | ||
| ], | ||
| "background": { | ||
| "scripts": [ | ||
| "background.js" | ||
| ] | ||
| }, | ||
| "content_security_policy": { | ||
| "extension_pages": "script-src 'self'; object-src 'self'" | ||
| } | ||
| } |
+1
-1
@@ -98,4 +98,4 @@ <!DOCTYPE html> | ||
| <p style="font-size: small">Version: 1.1.6</p> | ||
| <p id="popup-version" style="font-size: small">Version: <span id="popup-version-value">—</span></p> | ||
| </body> | ||
| </html> |
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet