Files
UT-Registration-Plus/src/views/lib/openNewTabFromContentScript.ts
2024-02-26 23:28:18 -06:00

29 lines
850 B
TypeScript

import { createMessenger } from 'chrome-extension-toolkit';
type MyMessages = {
openNewTab: {
data: { url: string };
};
};
const messenger = createMessenger<MyMessages>('background');
/**
* Content scripts and background scripts are isolated environments.
* Content scripts are where our code interacting with the webpage lives,
* whereas the background script is where we can open a tab from.
* This function allows us to open a new tab from the content script by communicating
* with the background script.
*/
export async function openTabFromContentScript(url: string) {
// @ts-ignore
messenger
.openNewTab()
.then(() => {
console.log('New tab opened with URL:', url);
})
.catch(error => {
console.error('Error opening new tab:', error);
});
}