Rename Grow Coach bot to drjonesbot
This commit is contained in:
54
src/App.tsx
54
src/App.tsx
@@ -392,35 +392,33 @@ function BuilderApp() {
|
||||
onDragOver={(e) => e.preventDefault()}
|
||||
onDrop={onDrop}
|
||||
>
|
||||
<div className="relative flex-1">
|
||||
<SceneCanvas remoteCursors={remoteCursors} />
|
||||
{tool === 'measure' && (
|
||||
<div className="absolute top-4 left-1/2 -translate-x-1/2 rounded-full border border-sky-500/30 bg-zinc-950/80 px-4 py-1.5 text-xs font-semibold text-sky-400 shadow-lg backdrop-blur">
|
||||
📏 Measurement mode: Click two points in the 3D scene
|
||||
<button
|
||||
onClick={() => useBuilder.getState().setTool('select')}
|
||||
className="ml-3 rounded bg-sky-900/50 px-2 py-0.5 text-sky-200 hover:bg-sky-800/50"
|
||||
>
|
||||
Done
|
||||
</button>
|
||||
<SceneCanvas remoteCursors={remoteCursors} />
|
||||
{tool === 'measure' && (
|
||||
<div className="absolute top-4 left-1/2 -translate-x-1/2 rounded-full border border-sky-500/30 bg-zinc-950/80 px-4 py-1.5 text-xs font-semibold text-sky-400 shadow-lg backdrop-blur">
|
||||
📏 Measurement mode: Click two points in the 3D scene
|
||||
<button
|
||||
onClick={() => useBuilder.getState().setTool('select')}
|
||||
className="ml-3 rounded bg-sky-900/50 px-2 py-0.5 text-sky-200 hover:bg-sky-800/50"
|
||||
>
|
||||
Done
|
||||
</button>
|
||||
</div>
|
||||
)}
|
||||
{/* Premium Upsell Bar */}
|
||||
{!user || (user as any).purchased_slots === 0 ? (
|
||||
<div className="absolute bottom-4 left-1/2 -translate-x-1/2 flex items-center justify-between gap-4 rounded-xl border border-amber-500/30 bg-gradient-to-r from-zinc-950/95 via-amber-950/40 to-zinc-950/95 px-6 py-3 shadow-2xl backdrop-blur">
|
||||
<div>
|
||||
<h4 className="text-sm font-bold text-amber-400 tracking-wide uppercase">Unlock Pro Premium</h4>
|
||||
<p className="text-[11px] text-zinc-300 mt-0.5">One-time $5 special offer. Unlimited projects, PDF shopping lists, CAD exports, and drjonesbot.</p>
|
||||
</div>
|
||||
)}
|
||||
{/* Premium Upsell Bar */}
|
||||
{!user || (user as any).purchased_slots === 0 ? (
|
||||
<div className="absolute bottom-4 left-1/2 -translate-x-1/2 flex items-center justify-between gap-4 rounded-xl border border-amber-500/30 bg-gradient-to-r from-zinc-950/95 via-amber-950/40 to-zinc-950/95 px-6 py-3 shadow-2xl backdrop-blur">
|
||||
<div>
|
||||
<h4 className="text-sm font-bold text-amber-400 tracking-wide uppercase">Unlock Pro Premium</h4>
|
||||
<p className="text-[11px] text-zinc-300 mt-0.5">One-time $5 special offer. Unlimited projects, PDF shopping lists, CAD exports, and AI Grow Coach.</p>
|
||||
</div>
|
||||
<button
|
||||
onClick={() => setShowPaywall(true)}
|
||||
className="whitespace-nowrap rounded-lg bg-amber-500 px-4 py-2 text-xs font-bold text-amber-950 transition hover:bg-amber-400 hover:scale-105"
|
||||
>
|
||||
Join Now
|
||||
</button>
|
||||
</div>
|
||||
) : null}
|
||||
</div>
|
||||
<button
|
||||
onClick={() => setShowPaywall(true)}
|
||||
className="whitespace-nowrap rounded-lg bg-amber-500 px-4 py-2 text-xs font-bold text-amber-950 transition hover:bg-amber-400 hover:scale-105"
|
||||
>
|
||||
Join Now
|
||||
</button>
|
||||
</div>
|
||||
) : null}
|
||||
{/* Contextual hint overlay */}
|
||||
{(placingType || tool === 'measure' || tool === 'pipeRun') && (
|
||||
<div className="pointer-events-none absolute top-3 left-1/2 -translate-x-1/2 rounded-full border border-sky-800 bg-sky-950/90 px-4 py-1.5 text-xs font-medium text-sky-200 shadow-lg">
|
||||
|
||||
@@ -204,7 +204,7 @@ export function StatusPanel() {
|
||||
onClick={requirePremiumCoach}
|
||||
className="text-[9px] font-bold uppercase tracking-wider text-sky-400 hover:text-sky-300 bg-sky-950/50 hover:bg-sky-900/50 px-1.5 py-0.5 rounded border border-sky-900/50 transition-colors"
|
||||
>
|
||||
Grow Coach 🤖
|
||||
drjonesbot 🤖
|
||||
</button>
|
||||
</div>
|
||||
{roomMetrics.length === 0 ? (
|
||||
@@ -346,7 +346,7 @@ function GrowCoachModal({ metrics, onClose }: { metrics: any[]; onClose: () => v
|
||||
<div className="w-full max-w-md overflow-hidden rounded-xl border border-sky-900 bg-zinc-950 shadow-2xl">
|
||||
<div className="border-b border-zinc-800 bg-zinc-900 px-6 py-4 flex justify-between items-center">
|
||||
<h2 className="text-lg font-bold text-sky-400 flex items-center gap-2">
|
||||
🤖 AI Grow Coach
|
||||
🤖 drjonesbot
|
||||
</h2>
|
||||
<button onClick={onClose} className="text-zinc-500 hover:text-zinc-300">✕</button>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user