fix: Pricing page limits consistency + DropsTab cleanup
Some checks failed
CI / Frontend Lint & Type Check (push) Has been cancelled
CI / Frontend Build (push) Has been cancelled
CI / Backend Lint (push) Has been cancelled
CI / Backend Tests (push) Has been cancelled
CI / Docker Build (push) Has been cancelled
CI / Security Scan (push) Has been cancelled
Deploy / Build & Push Images (push) Has been cancelled
Deploy / Deploy to Server (push) Has been cancelled
Deploy / Notify (push) Has been cancelled

Pricing page:
- Scout: 5 watchlist, 5 portfolio (was 10/3)
- Trader: 50 watchlist, 50 portfolio (was 100/50)
- Yield: Preview for Trader, Active for Tycoon
- Removed Daily Drop Digest (not implemented)

DropsTab:
- Removed zone file analysis hint banner
- Removed TLD flag icons from filter buttons
This commit is contained in:
2025-12-18 14:40:49 +01:00
parent 42e09b46ab
commit 86bfcc0e36
2 changed files with 10 additions and 23 deletions

View File

@ -21,8 +21,8 @@ const tiers = [
features: [ features: [
{ text: 'Market Feed', highlight: false, available: true, sublabel: 'Raw' }, { text: 'Market Feed', highlight: false, available: true, sublabel: 'Raw' },
{ text: 'Alert Speed', highlight: false, available: true, sublabel: 'Daily' }, { text: 'Alert Speed', highlight: false, available: true, sublabel: 'Daily' },
{ text: '10 Watchlist Domains', highlight: false, available: true }, { text: '5 Watchlist Domains', highlight: false, available: true },
{ text: '3 Portfolio Domains', highlight: false, available: true }, { text: '5 Portfolio Domains', highlight: false, available: true },
{ text: '1 Listing', highlight: false, available: true, sublabel: 'Try it' }, { text: '1 Listing', highlight: false, available: true, sublabel: 'Try it' },
{ text: '2 Sniper Alerts', highlight: false, available: true }, { text: '2 Sniper Alerts', highlight: false, available: true },
{ text: 'Pounce Score', highlight: false, available: true, sublabel: 'Basic' }, { text: 'Pounce Score', highlight: false, available: true, sublabel: 'Basic' },
@ -43,13 +43,13 @@ const tiers = [
features: [ features: [
{ text: 'Market Feed', highlight: true, available: true, sublabel: 'Curated' }, { text: 'Market Feed', highlight: true, available: true, sublabel: 'Curated' },
{ text: 'Alert Speed', highlight: true, available: true, sublabel: 'Hourly' }, { text: 'Alert Speed', highlight: true, available: true, sublabel: 'Hourly' },
{ text: '100 Watchlist Domains', highlight: true, available: true }, { text: '50 Watchlist Domains', highlight: true, available: true },
{ text: '50 Portfolio Domains', highlight: true, available: true }, { text: '50 Portfolio Domains', highlight: true, available: true },
{ text: '10 Listings', highlight: true, available: true, sublabel: '0% Fee' }, { text: '10 Listings', highlight: true, available: true, sublabel: '0% Fee' },
{ text: '10 Sniper Alerts', highlight: true, available: true }, { text: '10 Sniper Alerts', highlight: true, available: true },
{ text: 'Pounce Score', highlight: true, available: true, sublabel: 'Full' }, { text: 'Pounce Score', highlight: true, available: true, sublabel: 'Full' },
{ text: 'TLD Intel', highlight: true, available: true, sublabel: 'Renewal Prices' }, { text: 'TLD Intel', highlight: true, available: true, sublabel: 'Renewal Prices' },
{ text: 'Yield', highlight: true, available: true }, { text: 'Yield Preview', highlight: true, available: true, sublabel: 'Landing only' },
], ],
cta: 'Upgrade to Trader', cta: 'Upgrade to Trader',
highlighted: true, highlighted: true,
@ -70,9 +70,9 @@ const tiers = [
{ text: 'Unlimited Portfolio', highlight: true, available: true }, { text: 'Unlimited Portfolio', highlight: true, available: true },
{ text: 'Unlimited Listings', highlight: true, available: true, sublabel: 'Featured' }, { text: 'Unlimited Listings', highlight: true, available: true, sublabel: 'Featured' },
{ text: '50 Sniper Alerts', highlight: true, available: true }, { text: '50 Sniper Alerts', highlight: true, available: true },
{ text: 'Yield Active', highlight: true, available: true, sublabel: 'Full routing' },
{ text: 'Score + SEO Data', highlight: true, available: true }, { text: 'Score + SEO Data', highlight: true, available: true },
{ text: 'API + Webhooks', highlight: true, available: true }, { text: 'API + Webhooks', highlight: true, available: true },
{ text: 'Daily Drop Digest', highlight: true, available: true, sublabel: 'Curated Top 10' },
], ],
cta: 'Go Tycoon', cta: 'Go Tycoon',
highlighted: false, highlighted: false,
@ -84,14 +84,13 @@ const tiers = [
const comparisonFeatures = [ const comparisonFeatures = [
{ name: 'Market Feed', scout: 'Raw', trader: 'Curated', tycoon: 'Priority + Early' }, { name: 'Market Feed', scout: 'Raw', trader: 'Curated', tycoon: 'Priority + Early' },
{ name: 'Alert Speed', scout: 'Daily', trader: 'Hourly', tycoon: 'Every 5 min' }, { name: 'Alert Speed', scout: 'Daily', trader: 'Hourly', tycoon: 'Every 5 min' },
{ name: 'Watchlist', scout: '10 Domains', trader: '100 Domains', tycoon: 'Unlimited' }, { name: 'Watchlist', scout: '5 Domains', trader: '50 Domains', tycoon: 'Unlimited' },
{ name: 'Portfolio', scout: '3 Domains', trader: '50 Domains', tycoon: 'Unlimited' }, { name: 'Portfolio', scout: '5 Domains', trader: '50 Domains', tycoon: 'Unlimited' },
{ name: 'Listings', scout: '1 (Try it)', trader: '10 (0% Fee)', tycoon: 'Unlimited + Featured' }, { name: 'Listings', scout: '1 (Try it)', trader: '10 (0% Fee)', tycoon: 'Unlimited + Featured' },
{ name: 'Sniper Alerts', scout: '2', trader: '10', tycoon: '50' }, { name: 'Sniper Alerts', scout: '2', trader: '10', tycoon: '50' },
{ name: 'Valuation', scout: 'Basic Score', trader: 'Pounce Score', tycoon: 'Score + SEO' }, { name: 'Valuation', scout: 'Basic Score', trader: 'Pounce Score', tycoon: 'Score + SEO' },
{ name: 'TLD Intel', scout: 'Public', trader: 'Renewal Prices', tycoon: 'Full History' }, { name: 'TLD Intel', scout: 'Public', trader: 'Renewal Prices', tycoon: 'Full History' },
{ name: 'Yield', scout: '—', trader: '', tycoon: '' }, { name: 'Yield', scout: '—', trader: 'Preview', tycoon: 'Active Routing' },
{ name: 'Daily Drop Digest', scout: '—', trader: '—', tycoon: 'Curated Top 10' },
{ name: 'API Access', scout: '—', trader: '—', tycoon: '✓' }, { name: 'API Access', scout: '—', trader: '—', tycoon: '✓' },
] ]

View File

@ -289,18 +289,17 @@ export function DropsTab({ showToast }: DropsTabProps) {
> >
All TLDs All TLDs
</button> </button>
{ALL_TLDS.map(({ tld, flag }) => ( {ALL_TLDS.map(({ tld }) => (
<button <button
key={tld} key={tld}
onClick={() => setSelectedTld(tld)} onClick={() => setSelectedTld(tld)}
className={clsx( className={clsx(
"px-4 py-2.5 text-xs font-mono uppercase tracking-wider border transition-all flex items-center gap-2", "px-4 py-2.5 text-xs font-mono uppercase tracking-wider border transition-all",
selectedTld === tld selectedTld === tld
? "border-accent bg-accent/10 text-accent font-bold" ? "border-accent bg-accent/10 text-accent font-bold"
: "border-white/[0.08] text-white/40 hover:border-white/20 hover:text-white/60" : "border-white/[0.08] text-white/40 hover:border-white/20 hover:text-white/60"
)} )}
> >
<span className="text-sm">{flag}</span>
.{tld} .{tld}
</button> </button>
))} ))}
@ -414,17 +413,6 @@ export function DropsTab({ showToast }: DropsTabProps) {
)} )}
</div> </div>
{/* Alert Banner */}
<div className="flex items-start gap-3 p-4 border border-amber-500/20 bg-amber-500/5">
<AlertCircle className="w-5 h-5 text-amber-400 shrink-0 mt-0.5" />
<div>
<div className="text-xs font-bold text-amber-400 uppercase tracking-wider mb-1">Zone File Analysis</div>
<div className="text-[11px] text-white/50 leading-relaxed">
Domains detected as dropped via zone file comparison. Some may have been re-registered. Click "Check" to verify live availability.
</div>
</div>
</div>
{/* Results Table */} {/* Results Table */}
{sortedItems.length === 0 ? ( {sortedItems.length === 0 ? (
<div className="text-center py-24 border border-dashed border-white/[0.08] bg-white/[0.01]"> <div className="text-center py-24 border border-dashed border-white/[0.08] bg-white/[0.01]">