Skip to content

Commit c9db81b

Browse files
V48 (impl-only): Restyle Selling Knowledge mosaic rows and chip labels
Rename Trading/Settlement cards, stack Seller bullets, apply green/purple/orange bullet tones with middle neon highlights, and refresh chip copy through pack's contents and knowledge volume.
1 parent 65d3951 commit c9db81b

3 files changed

Lines changed: 28 additions & 15 deletions

File tree

uapi/components/marketing/MarketingLandingPillarCard/MarketingLandingPillarCard.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -99,15 +99,15 @@ export function MarketingLandingPillarCard({
9999
What you package
100100
</p>
101101
<p className="mt-1 text-[11px] leading-4 text-violet-100/72">
102-
code, docs, designs, PDFs, and notes
102+
code, files, designs, data, and notes
103103
</p>
104104
</div>
105105
<div className="border-l-4 border-pink-400 pl-3">
106106
<p className="text-[11px] font-semibold uppercase tracking-[0.18em] text-white">
107107
Proven on deposit
108108
</p>
109109
<p className="mt-1 text-[11px] leading-4 text-violet-100/72">
110-
source, obfuscate, paths, and SHA
110+
source inclusions, obfuscations, and pack's contents
111111
</p>
112112
</div>
113113
</div>

uapi/components/marketing/MarketingLandingShared/MarketingLandingShared.tsx

Lines changed: 17 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -108,37 +108,44 @@ export const previewValueNeonClass: Record<PreviewValueTone, string> = {
108108

109109
export const previewRows = [
110110
{
111-
key: 'What sells?',
112-
valueParts: ['code', 'docs', 'designs', 'PDFs'],
113-
accentClassName: 'from-cyan-400/18 via-sky-400/8 to-transparent',
111+
key: 'Trading',
112+
valueParts: ['code', 'files', 'designs', 'data'],
113+
// All orbital bullets green; no neon label glow on the 2×2 chips.
114+
bulletTone: 'green' as PreviewValueTone,
115+
accentClassName: 'from-emerald-400/18 via-teal-400/8 to-transparent',
114116
Icon: DocumentTextIcon,
115117
// 2×2 — short chips must stay single-line.
116118
valuesGridClassName: 'grid-cols-2',
117119
iconClassName: 'text-white/58',
118120
},
119121
{
120122
key: "Seller's View",
121-
valueParts: ['source', 'obfuscate', 'paths', 'SHA'],
123+
valueParts: ["source inclusions", 'obfuscations', "pack's contents"],
124+
bulletTone: 'purple' as PreviewValueTone,
125+
valueTones: {
126+
obfuscations: 'purple',
127+
} satisfies Partial<Record<string, PreviewValueTone>>,
122128
accentClassName: 'from-fuchsia-400/18 via-purple-400/8 to-transparent',
123129
Icon: LinkIcon,
124-
// 2×2 — short chips so nothing truncates mid-word.
125-
valuesGridClassName: 'grid-cols-2',
130+
// Three stacked rows — match Buyer's View layout.
131+
valuesGridClassName: 'grid-cols-1',
126132
iconClassName: 'text-white/58',
127133
},
128134
{
129135
key: "Buyer's View",
130-
valueParts: ['measurements', 'fitting-to-needs', 'proof roots'],
136+
valueParts: ['measurements', 'fits-for-needs', 'knowledge volume'],
137+
bulletTone: 'orange' as PreviewValueTone,
131138
valueTones: {
132-
'fitting-to-needs': 'green',
139+
'fits-for-needs': 'orange',
133140
} satisfies Partial<Record<string, PreviewValueTone>>,
134-
accentClassName: 'from-emerald-400/18 via-teal-400/8 to-transparent',
141+
accentClassName: 'from-orange-400/18 via-amber-300/8 to-transparent',
135142
Icon: Squares2X2Icon,
136143
// Three stacked rows — never a tight multi-col that letter-breaks words.
137144
valuesGridClassName: 'grid-cols-1',
138145
iconClassName: 'text-white/58',
139146
},
140147
{
141-
key: 'what settles?',
148+
key: 'Settlement',
142149
// 2×2: BTC | BTD / APs | Deliver — all single-line tokens.
143150
valueParts: ['BTC', 'BTD', 'APs', 'Deliver'],
144151
valueTones: {

uapi/components/marketing/MarketingLandingTerminalPreview/MarketingLandingTerminalPreview.tsx

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -383,6 +383,10 @@ export const MarketingLandingTerminalPreview = memo(function MarketingLandingTer
383383
'valueTones' in row
384384
? (row.valueTones as Partial<Record<string, PreviewValueTone>>)
385385
: undefined;
386+
const bulletToneDefault =
387+
'bulletTone' in row
388+
? (row.bulletTone as PreviewValueTone)
389+
: ('orange' as PreviewValueTone);
386390

387391
return (
388392
<div
@@ -407,7 +411,9 @@ export const MarketingLandingTerminalPreview = memo(function MarketingLandingTer
407411
className={`mt-3 grid min-w-0 gap-x-4 gap-y-3 text-emerald-50/88 laptop:gap-x-3 laptop:gap-y-2 ${valuesGridClassName}`}
408412
>
409413
{valueParts.map((valuePart) => {
410-
const tone = valueTones?.[valuePart];
414+
// Neon label glow only when explicitly toned; bullets use row default.
415+
const neonTone = valueTones?.[valuePart];
416+
const bulletTone = neonTone ?? bulletToneDefault;
411417

412418
return (
413419
<span
@@ -417,12 +423,12 @@ export const MarketingLandingTerminalPreview = memo(function MarketingLandingTer
417423
<span className="shrink-0">
418424
{renderOrbitalBullet(
419425
'scale-110 tablet:scale-[1.2] laptop:scale-100',
420-
tone ?? 'orange',
426+
bulletTone,
421427
)}
422428
</span>
423429
<span
424430
className={`min-w-0 flex-1 whitespace-nowrap text-[13px] leading-5 tablet:text-[15px] laptop:text-[12px] laptop:leading-5 ${
425-
tone ? previewValueNeonClass[tone] : ''
431+
neonTone ? previewValueNeonClass[neonTone] : ''
426432
}`}
427433
>
428434
{valuePart}

0 commit comments

Comments
 (0)