diff --git a/extension/background.ts b/extension/background.ts new file mode 100644 index 0000000..bec1954 --- /dev/null +++ b/extension/background.ts @@ -0,0 +1,25 @@ +export {}; + +const toogle = () => { + const iframe = document.getElementById("pageassist-iframe"); + const widget = document.getElementById("pageassist-icon"); + if (iframe) { + const display = iframe.style.display; + if (display === "none") { + if (widget) { + widget.style.display = "none"; + } + iframe.style.display = "block"; + } else { + iframe.style.display = "none"; + // if user enabled show widget in settings and close from action then show widget will be disappear inorder to show widget again we need to reload the page + } + } +}; + +chrome.action.onClicked.addListener((tab) => { + chrome.scripting.executeScript({ + target: { tabId: tab.id }, + func: toogle, + }); +}); diff --git a/extension/content.ts b/extension/content.ts index f6db3e1..45881de 100644 --- a/extension/content.ts +++ b/extension/content.ts @@ -83,8 +83,10 @@ const main = async () => { window.addEventListener("message", function (event) { if (event.data === "pageassist-close") { iframe.style.display = "none"; - toggleIcon.style.display = "block"; - toggleIcon.classList.remove("hidden"); + if (!isChatWidgetEnabled) { + toggleIcon.style.display = "block"; + toggleIcon.classList.remove("hidden"); + } } else if (event.data === "pageassist-html") { console.log("pageassist-html"); let html = document.documentElement.outerHTML; diff --git a/extension/package.json b/extension/package.json index cf97286..b29ed84 100644 --- a/extension/package.json +++ b/extension/package.json @@ -52,7 +52,9 @@ } ], "permissions": [ - "storage" + "storage", + "activeTab", + "scripting" ] } } \ No newline at end of file