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
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:
@ -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: '✓' },
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|||||||
@ -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]">
|
||||||
|
|||||||
Reference in New Issue
Block a user