2025-06-30 18:58:24 +02:00
|
|
|
/*
|
|
|
|
SPDX-FileCopyrightText: © 2025 Hornwitser <code@hornwitser.no>
|
|
|
|
SPDX-License-Identifier: AGPL-3.0-or-later
|
|
|
|
*/
|
2025-03-06 22:07:51 +01:00
|
|
|
import webPush from "web-push";
|
|
|
|
|
|
|
|
const vapidKeys = webPush.generateVAPIDKeys();
|
|
|
|
const cookieSecretKey = Buffer.from(
|
|
|
|
await crypto.subtle.exportKey(
|
|
|
|
"raw",
|
|
|
|
await crypto.subtle.generateKey(
|
|
|
|
{ name: "HMAC", hash: "SHA-256" }, true, ["sign", "verify"]
|
|
|
|
)
|
|
|
|
)
|
|
|
|
).toString("base64url");
|
|
|
|
|
|
|
|
console.log(`\
|
|
|
|
NUXT_PUBLIC_VAPID_PUBLIC_KEY=${vapidKeys.publicKey}
|
|
|
|
NUXT_VAPID_PRIVATE_KEY=${vapidKeys.privateKey}
|
|
|
|
NUXT_COOKIE_SECRET_KEY=${cookieSecretKey}
|
|
|
|
`);
|