PageSourceSearch

https://forge-ai-store.lovable.app/assets/_authenticated-D8CFPS_5.js

js forge-ai-store.lovable.app collected 2026-10-03 03:32:08 UTC 3,632 bytes, 1 lines download raw bytes

1import{b as l,r as d,c as u,d as h,a as m,u as x,j as e,L as g,O as b}from"./index-B42OJg8S.js";import{L as p}from"./Logo-CFNimO97.js";import{B as f}from"./button-CUMHoF-Y.js";import{c as n}from"./createLucideIcon-ChVBLujM.js";import{S as y}from"./shopping-bag-BV2YyIb4.js";import{W as v,S as j,C as N}from"./wand-sparkles-CRCDkpfn.js";import{S as w}from"./sparkles-DWv6IWLp.js";function S(r){const s=l({warn:r?.router===void 0}),i=r?.router||s,o=d.useRef(void 0);return u(i.stores.__store,a=>{if(r?.select){if(r.structuralSharing??i.options.defaultStructuralSharing){const t=h(o.current,r.select(a));return o.current=t,t}return r.select(a)}return a})}const k=[["rect",{width:"7",height:"9",x:"3",y:"3",rx:"1",key:"10lvy0"}],["rect",{width:"7",height:"5",x:"14",y:"3",rx:"1",key:"16une8"}],["rect",{width:"7",height:"9",x:"14",y:"12",rx:"1",key:"1hutg5"}],["rect",{width:"7",height:"5",x:"3",y:"16",rx:"1",key:"ldoo1y"}]],L=n("layout-dashboard",k);const _=[["path",{d:"m16 17 5-5-5-5",key:"1bji2h"}],["path",{d:"M21 12H9",key:"dn1m92"}],["path",{d:"M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4",key:"1uf3rs"}]],R=n("log-out",_);const A=[["path",{d:"M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915",key:"1i5ecw"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]],O=n("settings",A),B=[{to:"/dashboard",label:"Overview",icon:L},{to:"/dashboard/stores",label:"My Stores",icon:y},{to:"/dashboard/builder",label:"AI Builder",icon:v},{to:"/dashboard/products",label:"Product Research",icon:j},{to:"/dashboard/analytics",label:"Analytics",icon:N},{to:"/dashboard/settings",label:"Settings",icon:O}];function I(){const{user:r,loading:s,signOut:i}=m(),o=x(),a=S({select:t=>t.location.pathname});return d.useEffect(()=>{!s&&!r&&o({to:"/login"})},[r,s,o]),s||!r?e.jsx("div",{className:"grid min-h-screen place-items-center text-muted-foreground",children:"Loading…"}):e.jsxs("div",{className:"flex min-h-screen bg-background",children:[e.jsxs("aside",{className:"hidden w-64 shrink-0 flex-col border-r border-sidebar-border bg-sidebar md:flex",children:[e.jsx("div",{className:"p-6",children:e.jsx(p,{})}),e.jsx("nav",{className:"flex-1 space-y-1 px-3",children:B.map(t=>{const c=a===t.to;return e.jsxs(g,{to:t.to,className:`flex items-center gap-3 rounded-lg px-3 py-2 text-sm transition-colors ${c?"bg-primary/15 text-foreground shadow-glow":"text-muted-foreground hover:bg-sidebar-accent hover:text-foreground"}`,children:[e.jsx(t.icon,{className:"h-4 w-4"})," ",t.label]},t.to)})}),e.jsxs("div",{className:"m-3 rounded-xl border border-border bg-card/50 p-4",children:[e.jsxs("div",{className:"mb-2 flex items-center gap-2 text-xs text-muted-foreground",children:[e.jsx(w,{className:"h-3.5 w-3.5 text-primary-glow"})," Free plan"]}),e.jsx("div",{className:"mb-3 text-sm",children:"43 / 50 credits"}),e.jsx("div",{className:"mb-3 h-1.5 overflow-hidden rounded-full bg-muted",children:e.jsx("div",{className:"bg-gradient-primary h-full",style:{width:"86%"}})}),e.jsx(f,{size:"sm",variant:"gradient",className:"w-full",children:"Upgrade to Pro"})]}),e.jsxs("button",{onClick:i,className:"flex items-center gap-2 border-t border-sidebar-border px-6 py-4 text-sm text-muted-foreground hover:text-foreground",children:[e.jsx(R,{className:"h-4 w-4"})," Sign out"]})]}),e.jsx("main",{className:"flex-1 overflow-x-hidden",children:e.jsx(b,{})})]})}export{I as component};

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.