feat: add four storefront identities

This commit is contained in:
2026-06-29 12:06:18 +01:00
parent e4bcd7578a
commit 561e948cb4
14 changed files with 391 additions and 0 deletions

30
config/store-config.ts Normal file
View File

@@ -0,0 +1,30 @@
/** Shape of a storefront's content config. Same shape for every store —
* the values differ, the structure never does. */
export type Review = { q: string; a: string };
export type StoreConfig = {
/** NEXT_PUBLIC_STORE_CODE; also the @store / shop-system id. */
code: string;
/** Switcher tab label in the showcase headbar. */
label: string;
/** Storefront wordmark. */
brandName: string;
/** Small line under / beside the wordmark. */
brandSub: string;
nav: string[];
cartLabel: string;
ctaLabel: string;
hero: {
eyebrow: string;
title: string;
body: string;
cta: string;
};
collection: { title: string; meta: string };
featured: { kicker: string; title: string; body: string; cta: string };
reviews: Review[];
footer: { links: string[]; note: string };
/** cents × multiplier ÷ 100 → display dollars (exec 16, crypto 3, collector 28, supper 1). */
priceMultiplier: number;
priceStyle: 'usd' | 'crypto' | 'appraisal' | 'plain';
};