Override the current time when taking screenshots

This commit is contained in:
Matt Isenhower
2022-09-20 20:39:01 -07:00
parent 668da0c1a9
commit 32dd5e58e7
2 changed files with 16 additions and 0 deletions

View File

@@ -20,6 +20,8 @@ export default class ScreenshotHelper
/** @type {puppeteer.Viewport} */
#viewport = null;
defaultParams = null;
get isOpen() {
return !!this.#browser;
}
@@ -67,6 +69,13 @@ export default class ScreenshotHelper
// Navigate to the URL
let url = new URL(`http://localhost:${this.#httpServer.port}/screenshots/`);
url.hash = path;
if (this.defaultParams) {
for (let key in this.defaultParams) {
url.searchParams.set(key, this.defaultParams[key]);
}
}
await this.#page.goto(url, {
waitUntil: 'networkidle0', // Wait until the network is idle
});

View File

@@ -78,6 +78,7 @@ export default class TweetGenerator
const tweet = new Tweet;
tweet.status = await this._getStatus();
await this._prepareScreenshotHelper(screenshotHelper);
let media = await this._getMedia(screenshotHelper);
if (media && !Array.isArray(media)) {
media = [media];
@@ -87,6 +88,12 @@ export default class TweetGenerator
return tweet;
}
async _prepareScreenshotHelper(screenshotHelper) {
await this.preparePinia();
let time = useTimeStore().now;
screenshotHelper.defaultParams = { time };
}
async _getStatus () {
//
}