(dependencies) upgrade pageres to 8.1.0

This commit is contained in:
Valentyne Stigloher 2024-11-17 22:45:18 +01:00
parent 590fafe6d1
commit 92c87a841d
4 changed files with 530 additions and 216 deletions

View File

@ -61,7 +61,7 @@
"node-fetch": "^2.6.12",
"nodemailer": "^6.7.8",
"nuxt": "^3.14.159",
"pageres": "^6.3.1",
"pageres": "^8.1.0",
"papaparse": "^5.4.1",
"plausible-api": "https://github.com/avo7/plausible-api.git#main",
"qr-code-styling": "^1.6.0-rc.1",

718
pnpm-lock.yaml generated

File diff suppressed because it is too large Load Diff

View File

@ -24,7 +24,7 @@ const shoot = async (url: string, filename: string): Promise<void> => {
delay: 3,
scale: 2,
});
pr.src(process.env.BASE_URL + url, ['1500x300']);
pr.source(process.env.BASE_URL + url, ['1500x300']);
for (const buffer of await pr.run()) {
fs.mkdirSync(dir, { recursive: true });
const target = `${dir}/${filename}.png`;

View File

@ -13,25 +13,19 @@ import dbConnection from './db.ts';
import type { Database } from './db.ts';
import isHighLoadTime from './overload.js';
import type { Config } from '~/locale/config.ts';
import jwt from '~/server/jwt.ts';
import { loadSuml } from '~/server/loader.ts';
const s3 = new S3(awsConfig);
const urlBases: Record<string, string> = {};
const domainLocaleMap: Record<string, string> = {};
if ((process.env.NODE_ENV === 'development' || process.env.ENV === 'test') && process.env.BASE_URL) {
const config = loadSuml('config') as Config;
for (const { code } of allLocales) {
urlBases[code] = `${process.env.BASE_URL}/card/@`;
}
domainLocaleMap[process.env.BASE_URL.replace(/^https?:\/\//, '')] = config.locale;
} else {
for (const { code, url } of allLocales) {
urlBases[code] = `${url}/card/@`;
domainLocaleMap[url.replace(/^https?:\/\//, '')] = code;
}
}
@ -61,9 +55,9 @@ const shoot = async (db: Database, mode: 'light' | 'dark'): Promise<void> => {
darkMode: mode === 'dark',
delay: 3,
scale: 1.5,
// launchOptions: {
// executablePath: '/opt/homebrew/bin/chromium',
// },
launchOptions: {
headless: 'new',
},
});
for (const { locale, username } of profiles) {
@ -80,12 +74,18 @@ const shoot = async (db: Database, mode: 'light' | 'dark'): Promise<void> => {
'15m',
);
pr.src(`${urlBases[locale] + username}?token=${encodeURIComponent(token)}`, ['1024x300']);
pr.source(`${urlBases[locale] + username}?token=${encodeURIComponent(token)}`, ['1024x300'], {
filename: `${username}-${locale}`,
});
}
for (const buffer of await pr.run()) {
const [, domain, username] = buffer.filename.match(/(.*)!card!@(.*)!token=.*-1024x300\.png/)!;
const locale = domainLocaleMap[domain];
const match = buffer.filename.match(/(.+)-(\w+)\.png/);
if (!match) {
console.error('invalid filename', buffer.filename);
continue;
}
const [, username, locale] = match;
results[`${locale}/${username.replace(/[^A-Za-z0-9.-]/g, '_')}`] = buffer;
}
} catch (error) {