Skip to content

Instantly share code, notes, and snippets.

View kavinda1995's full-sized avatar

Kavinda Jayakody kavinda1995

View GitHub Profile
@kavinda1995
kavinda1995 / playwright-post-message-listner.ts
Last active March 20, 2025 02:56
Playwright Listen to window.PostMessages
```
export const setupPostMessageListener = async (page: Page) => {
let messageList: any[] = [];
await page.exposeFunction('publishMessagesToE2E', (message: any) => {
messageList.push(message);
});
await page.evaluate(() => {
window.addEventListener('message', (event: MessageEvent) => {
@kavinda1995
kavinda1995 / browser-database.ts
Created January 22, 2025 12:02
Browser Database
const browserDatabase = {
/**
* Loads data from browser storage
*/
getItem<T>(location: string): T | null {
try {
const entryObject = JSON.parse(localStorage.getItem(location) || '');
const { data, expiration, createdAt } = entryObject;
const MILLISECONDS_TO_SECONDS = 1000;