INNER CODE UNIT · TypeScript
normalizePreview
Hash-Studios/Prism · infra/cloudflare/worker/src/index.ts:590
function normalizePreview(
type: LinkType,
canonical: URL,
input: CreateLinkPreviewInput | undefined,
env: Env,
): PreviewSnapshot {
const defaults = buildDefaultPreview(type, canonical, env);
const merged: PreviewSnapshot = {
title: clipText(sanitizeText(input?.title ?? defaults.title), 90),
description: clipText(sanitizeText(input?.description ?? defaults.description), 200),
image_source_url: sanitizeImageUrl(input?.image_source_url ?? defaults.image_source_url),
username: clipText(sanitizeText(input?.username ?? defaults.username), 60),
provider: clipText(sanitizeText(input?.provider ?? defaults.provider), 60),
wall_id: clipText(sanitizeText(input?.wall_id ?? defaults.wall_id), 60),
setup_name: clipText(sanitizeText(input?.setup_name ?? defaults.setup_name), 80),
app_store_url: env.APP_STORE_URL,
play_store_url: env.PLAY_STORE_URL,
};