54 lines
1.6 KiB
JavaScript
54 lines
1.6 KiB
JavaScript
import { chromium } from 'playwright';
|
|
|
|
const browser = await chromium.launch({ headless: true });
|
|
const page = await browser.newPage();
|
|
|
|
await page.goto('http://localhost:5173');
|
|
await page.waitForTimeout(3000);
|
|
|
|
await page.screenshot({ path: 'C:/work/chrka/myNote/tmp-screenshot.png' });
|
|
console.log('Screenshot saved.');
|
|
|
|
const historyEntries = await page.evaluate(async () => {
|
|
return await new Promise((resolve) => {
|
|
const req = indexedDB.open('ka-note');
|
|
req.onsuccess = (e) => {
|
|
const db = e.target.result;
|
|
const tx = db.transaction('historyEntries', 'readonly');
|
|
const all = tx.objectStore('historyEntries').getAll();
|
|
all.onsuccess = () => resolve(
|
|
all.result
|
|
.filter(r => r.text && r.text.includes('['))
|
|
.map(r => ({ id: r.id, text: r.text }))
|
|
);
|
|
};
|
|
req.onerror = () => resolve([]);
|
|
});
|
|
});
|
|
|
|
console.log('=== historyEntries ===');
|
|
console.log(JSON.stringify(historyEntries, null, 2));
|
|
|
|
const tasks = await page.evaluate(async () => {
|
|
return await new Promise((resolve) => {
|
|
const req = indexedDB.open('ka-note');
|
|
req.onsuccess = (e) => {
|
|
const db = e.target.result;
|
|
if (!db.objectStoreNames.contains('tasks')) {
|
|
resolve({ error: 'no tasks store', stores: Array.from(db.objectStoreNames) });
|
|
return;
|
|
}
|
|
const tx = db.transaction('tasks', 'readonly');
|
|
const all = tx.objectStore('tasks').getAll();
|
|
all.onsuccess = () => resolve(all.result);
|
|
all.onerror = () => resolve([]);
|
|
};
|
|
req.onerror = () => resolve([]);
|
|
});
|
|
});
|
|
|
|
console.log('=== tasks ===');
|
|
console.log(JSON.stringify(tasks, null, 2));
|
|
|
|
await browser.close();
|