ZH
测试版翻译

@core / kit-landing

1.0.1 ▾
已验证MIT
GitHub

Next.js 落地页套件:区块页面、线索表单、Cookie 横幅和需同意的转化像素

代码14 个文件上下文约 910 个 token扫描通过

应用 .genpmignore 后将被注入的确切目录树。固定于

src/app/(landing)/_lib/widgets.ts只读 · f730e59
// Widget del panel: leads por landing en los últimos 7 días (envíos de formularios hechos desde /lp/…).
import { and, count, desc, gte, like } from 'drizzle-orm';
import type { AdminWidget } from '@/lib/admin';
import { getDb } from '@/lib/db';
import { formSubmissions } from '@/lib/forms';
import { LANDING_PREFIX } from './landings';

export const leadsByLandingWidget: AdminWidget = {
  name: 'leads-by-landing',
  title: 'Leads by landing (7 days)',
  permission: 'submissions:read',
  async load() {
    const rows = await getDb()
      .select({ path: formSubmissions.sourcePath, n: count() })
      .from(formSubmissions)
      .where(and(like(formSubmissions.sourcePath, `${LANDING_PREFIX}/%`), gte(formSubmissions.createdAt, new Date(Date.now() - 7 * 86_400_000))))
      .groupBy(formSubmissions.sourcePath)
      .orderBy(desc(count()))
      .limit(10);
    return { rows: rows.map((r) => ({ label: r.path ?? '', value: r.n, href: r.path ?? undefined })) };
  },
};

举报 @core/kit-landing

使用 GitHub 登录后才能举报包。