PageSourceSearch

https://lemonjuicelabs.ai/assets/Install-Duj2dzCW.js

js lemonjuicelabs.ai collected 2026-10-05 12:11:05 UTC 7,307 bytes, 26 lines download raw bytes

1import{c as n,r as c,j as e,A as f,d as b,af as o,B as j,Z as y,ag as g}from"./index-Bd0Su9Yd.js";import{P as N}from"./plus-D4q_6btH.js";import{E as w}from"./ellipsis-vertical-DtxmP50C.js";/**
2 * @license lucide-react v0.462.0 - ISC
3 *
4 * This source code is licensed under the ISC license.
5 * See the LICENSE file in the root directory of this source tree.
6 */const i=n("Download",[["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["polyline",{points:"7 10 12 15 17 10",key:"2ggqvy"}],["line",{x1:"12",x2:"12",y1:"15",y2:"3",key:"1vk2je"}]]);/**
7 * @license lucide-react v0.462.0 - ISC
8 *
9 * This source code is licensed under the ISC license.
10 * See the LICENSE file in the root directory of this source tree.
11 */const v=n("Monitor",[["rect",{width:"20",height:"14",x:"2",y:"3",rx:"2",key:"48i651"}],["line",{x1:"8",x2:"16",y1:"21",y2:"21",key:"1svkeh"}],["line",{x1:"12",x2:"12",y1:"17",y2:"21",key:"vw1qmm"}]]);/**
12 * @license lucide-react v0.462.0 - ISC
13 *
14 * This source code is licensed under the ISC license.
15 * See the LICENSE file in the root directory of this source tree.
16 */const k=n("Share",[["path",{d:"M4 12v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8",key:"1b2hhj"}],["polyline",{points:"16 6 12 2 8 6",key:"m901s6"}],["line",{x1:"12",x2:"12",y1:"2",y2:"15",key:"1p0rca"}]]);/**
17 * @license lucide-react v0.462.0 - ISC
18 *
19 * This source code is licensed under the ISC license.
20 * See the LICENSE file in the root directory of this source tree.
21 */const m=n("Smartphone",[["rect",{width:"14",height:"20",x:"5",y:"2",rx:"2",ry:"2",key:"1yt0o3"}],["path",{d:"M12 18h.01",key:"mhygvu"}]]);/**
22 * @license lucide-react v0.462.0 - ISC
23 *
24 * This source code is licensed under the ISC license.
25 * See the LICENSE file in the root directory of this source tree.
26 */const I=n("Wifi",[["path",{d:"M12 20h.01",key:"zekei9"}],["path",{d:"M2 8.82a15 15 0 0 1 20 0",key:"dnpr2z"}],["path",{d:"M5 12.859a10 10 0 0 1 14 0",key:"1x1e6c"}],["path",{d:"M8.5 16.429a5 5 0 0 1 7 0",key:"1bycff"}]]),A=()=>{const[t,d]=c.useState(null),[l,x]=c.useState(!1);c.useEffect(()=>{const r=a=>{a.preventDefault(),d(a)};return window.addEventListener("beforeinstallprompt",r),window.matchMedia("(display-mode: standalone)").matches&&x(!0),()=>window.removeEventListener("beforeinstallprompt",r)},[]);const h=async()=>{if(!t)return;await t.prompt();const{outcome:r}=await t.userChoice;r==="accepted"&&x(!0),d(null)},p=[{icon:y,label:"Instant launch",desc:"Opens in under 1 second from home screen"},{icon:I,label:"Works offline",desc:"Browse cached data without a connection"},{icon:g,label:"Stay current",desc:"Auto-updates with the latest features"}];return e.jsxs(f,{children:[e.jsx(b,{title:"Install LemonJuiceLabs App",description:"Install LemonJuiceLabs on your phone for instant market intelligence."}),e.jsxs("div",{className:"mx-auto max-w-lg py-8 px-4",children:[e.jsxs("div",{className:"text-center mb-8",children:[e.jsx("div",{className:"mx-auto mb-4 h-20 w-20 rounded-2xl bg-gradient-to-br from-warning/20 to-primary/20 border border-border flex items-center justify-center",children:e.jsx("span",{className:"text-4xl"})}),e.jsx("h1",{className:"text-2xl font-bold text-foreground",children:"Get the App"}),e.jsx("p",{className:"text-muted-foreground mt-2 text-sm leading-relaxed",children:"Add LemonJuiceLabs to your home screen — no app store required."})]}),e.jsx("div",{className:"grid grid-cols-3 gap-3 mb-8",children:p.map(({icon:r,label:a,desc:u})=>e.jsxs("div",{className:"rounded-xl border border-border bg-card p-3 text-center",children:[e.jsx(r,{className:"mx-auto h-5 w-5 text-primary mb-2"}),e.jsx("p",{className:"text-xs font-semibold text-foreground",children:a}),e.jsx("p",{className:"text-[10px] text-muted-foreground mt-0.5 leading-tight",children:u})]},a))}),l?e.jsxs("div",{className:"rounded-xl border border-gain/30 bg-gain/5 p-6 text-center",children:[e.jsx("div",{className:"mx-auto mb-3 h-12 w-12 rounded-full bg-gain/10 flex items-center justify-center",children:e.jsx(o,{className:"h-6 w-6 text-gain"})}),e.jsx("h2",{className:"text-lg font-semibold text-foreground",children:"You're all set!"}),e.jsx("p",{className:"text-sm text-muted-foreground mt-1",children:"Open LemonJuiceLabs from your home screen."})]}):t?e.jsxs("div",{className:"text-center",children:[e.jsxs(j,{onClick:h,size:"lg",className:"gap-2 w-full rounded-xl h-12 text-base",children:[e.jsx(i,{className:"h-5 w-5"})," Install Now"]}),e.jsx("p",{className:"text-xs text-muted-foreground mt-3",children:"Free • No app store • Under 1 MB"})]}):e.jsxs("div",{className:"space-y-4",children:[e.jsxs("div",{className:"rounded-xl border border-border bg-card overflow-hidden",children:[e.jsxs("div",{className:"flex items-center gap-2 px-4 py-3 border-b border-border bg-secondary/30",children:[e.jsx(m,{className:"h-4 w-4 text-primary"}),e.jsx("h3",{className:"text-sm font-semibold text-foreground",children:"iPhone / iPad"}),e.jsx("span",{className:"ml-auto text-[10px] text-muted-foreground bg-muted px-2 py-0.5 rounded-full",children:"Safari"})]}),e.jsxs("div",{className:"p-4 space-y-3",children:[e.jsx(s,{num:1,icon:e.jsx(k,{className:"h-3.5 w-3.5"}),text:"Tap the Share button"}),e.jsx(s,{num:2,icon:e.jsx(N,{className:"h-3.5 w-3.5"}),text:"Tap Add to Home Screen"}),e.jsx(s,{num:3,icon:e.jsx(o,{className:"h-3.5 w-3.5"}),text:"Tap Add to confirm"})]})]}),e.jsxs("div",{className:"rounded-xl border border-border bg-card overflow-hidden",children:[e.jsxs("div",{className:"flex items-center gap-2 px-4 py-3 border-b border-border bg-secondary/30",children:[e.jsx(m,{className:"h-4 w-4 text-primary"}),e.jsx("h3",{className:"text-sm font-semibold text-foreground",children:"Android"}),e.jsx("span",{className:"ml-auto text-[10px] text-muted-foreground bg-muted px-2 py-0.5 rounded-full",children:"Chrome"})]}),e.jsxs("div",{className:"p-4 space-y-3",children:[e.jsx(s,{num:1,icon:e.jsx(w,{className:"h-3.5 w-3.5"}),text:"Tap the three-dot menu"}),e.jsx(s,{num:2,icon:e.jsx(i,{className:"h-3.5 w-3.5"}),text:"Tap Install app"}),e.jsx(s,{num:3,icon:e.jsx(o,{className:"h-3.5 w-3.5"}),text:"Tap Install to confirm"})]})]}),e.jsxs("div",{className:"rounded-xl border border-border bg-card overflow-hidden",children:[e.jsxs("div",{className:"flex items-center gap-2 px-4 py-3 border-b border-border bg-secondary/30",children:[e.jsx(v,{className:"h-4 w-4 text-primary"}),e.jsx("h3",{className:"text-sm font-semibold text-foreground",children:"Desktop"}),e.jsx("span",{className:"ml-auto text-[10px] text-muted-foreground bg-muted px-2 py-0.5 rounded-full",children:"Chrome / Edge"})]}),e.jsxs("div",{className:"p-4 space-y-3",children:[e.jsx(s,{num:1,icon:e.jsx(i,{className:"h-3.5 w-3.5"}),text:"Click the install icon in the address bar"}),e.jsx(s,{num:2,icon:e.jsx(o,{className:"h-3.5 w-3.5"}),text:"Click Install"})]})]})]})]})]})};function s({num:t,icon:d,text:l}){return e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx("div",{className:"flex h-6 w-6 shrink-0 items-center justify-center rounded-full bg-primary/10 text-primary text-xs font-bold",children:t}),e.jsx("div",{className:"flex h-7 w-7 shrink-0 items-center justify-center rounded-lg bg-muted text-muted-foreground",children:d}),e.jsx("span",{className:"text-sm text-foreground",children:l})]})}
26export{A as default};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.