mirror of
https://github.com/hanzo-apps/dataroom.git
synced 2026-10-30 14:47:36 +00:00
108 files: README, marketing copy, page titles, meta tags, footer text, email templates, .env.example, UI strings. URLs swapped from papermark.com/papermark.io to dataroom.hanzo.ai. Internal identifiers left intact per repo policy: localStorage keys (papermark.email/papermark.name/last_papermark_login — changing them logs users out), type field names (papermarkUserId), internal helper symbols (PAPERMARK_HEADERS, PapermarkSparkle component, isPapermarkUrl helper), internal-only filenames. LLM.md retains 'Upstream: Papermark' attribution line. Per-locale .po translations regenerate from source on the next lingui-extract CI run. DB migrations untouched (append-only history; rewriting them breaks installed schemas). LICENSE stays AGPL-3.0.
43 lines
1.2 KiB
TypeScript
43 lines
1.2 KiB
TypeScript
/* eslint-disable @next/next/no-img-element */
|
|
import { ImageResponse } from "next/og";
|
|
import { NextRequest } from "next/server";
|
|
|
|
export const runtime = "edge";
|
|
|
|
/**
|
|
* @name Headline Template
|
|
* @description Make it pop with a headline
|
|
*/
|
|
export async function GET(request: NextRequest) {
|
|
const searchParams = request.nextUrl.searchParams;
|
|
const title = searchParams.get("title") || "Hanzo Dataroom Document";
|
|
const Inter = await fetch(
|
|
new URL("@/public/_static/Inter-Bold.ttf", import.meta.url),
|
|
).then((res) => res.arrayBuffer());
|
|
|
|
return new ImageResponse(
|
|
(
|
|
<div tw="flex flex-col items-center justify-between w-full h-full bg-white text-black p-12">
|
|
<div tw="text-[32px] flex items-center tracking-tighter">Hanzo Dataroom</div>
|
|
<div tw="text-[42px] text-center">{title}</div>
|
|
<div tw="text-[32px] flex items-center">
|
|
Open-Source Document Sharing
|
|
</div>
|
|
</div>
|
|
),
|
|
{
|
|
width: 1200,
|
|
height: 630,
|
|
headers: {
|
|
"Cache-Control": "public, max-age=3600, immutable",
|
|
},
|
|
fonts: [
|
|
{
|
|
name: "Inter",
|
|
data: Inter,
|
|
},
|
|
],
|
|
},
|
|
);
|
|
}
|