PageSourceSearch

https://sellerhound.com/_next/static/chunks/app/layout-1e7dcea500f1e909.js

js sellerhound.com collected 2026-09-24 14:52:12 UTC 14,169 bytes, 1 lines download raw bytes

1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[3185],{52319:function(e,t,s){Promise.resolve().then(s.bind(s,89817)),Promise.resolve().then(s.t.bind(s,73994,23)),Promise.resolve().then(s.t.bind(s,92489,23)),Promise.resolve().then(s.bind(s,51231)),Promise.resolve().then(s.bind(s,40554)),Promise.resolve().then(s.bind(s,59740))},51231:function(e,t,s){"use strict";s.r(t),s.d(t,{default:function(){return SiteChrome}});var r=s(57437),a=s(24033),n=s(2265),i=s(61396),o=s.n(i),l=s(83523),c=s(82549),u=s(68004);let d="var(--font-fraunces), 'Fraunces', Georgia, serif",h=[{href:"/by-the-numbers",label:"By the numbers"},{href:"/field-notes",label:"Field Notes"},{label:"Crosslist",children:[{href:"/ebay",label:"eBay"},{href:"/poshmark",label:"Poshmark"},{href:"/mercari",label:"Mercari"},{href:"/vinted",label:"Vinted"},{href:"/depop",label:"Depop"}]},{href:"/pricing",label:"Pricing"},{href:"/login",label:"Log in"}],f="whitespace-nowrap text-sm transition-opacity hover:opacity-70 sm:text-lg",m={fontFamily:d,color:"var(--color-text)"};function CrosslistDropdown(e){let{label:t,children:s}=e,[a,i]=(0,n.useState)(!1),c=(0,n.useRef)(null);return(0,n.useEffect)(()=>{if(a)return document.addEventListener("mousedown",onDocClick),document.addEventListener("keydown",onEsc),()=>{document.removeEventListener("mousedown",onDocClick),document.removeEventListener("keydown",onEsc)};function onDocClick(e){c.current&&!c.current.contains(e.target)&&i(!1)}function onEsc(e){"Escape"===e.key&&i(!1)}},[a]),(0,r.jsxs)("div",{className:"relative",ref:c,children:[(0,r.jsxs)("button",{type:"button",onClick:()=>i(e=>!e),className:"".concat(f," inline-flex items-center gap-1"),style:m,"aria-expanded":a,"aria-haspopup":"menu",children:[t,(0,r.jsx)(l.Z,{className:"h-4 w-4 transition-transform ".concat(a?"rotate-180":""),"aria-hidden":"true"})]}),a&&(0,r.jsx)("div",{role:"menu",className:"absolute left-1/2 z-50 mt-2 min-w-[10rem] -translate-x-1/2 rounded-lg border bg-white py-2 shadow-lg",style:{borderColor:"var(--color-border)"},children:s.map(e=>(0,r.jsx)(o(),{href:e.href,role:"menuitem",onClick:()=>i(!1),className:"block whitespace-nowrap px-4 py-2 text-base transition-colors hover:bg-black/5",style:{fontFamily:d,color:"var(--color-text)"},children:e.label},e.href))})]})}function SiteHeader(){let[e,t]=(0,n.useState)(!1);(0,n.useEffect)(()=>{if(!e)return;let s=window.matchMedia("(min-width: 640px)"),onChange=()=>s.matches&&t(!1);return s.addEventListener("change",onChange),()=>s.removeEventListener("change",onChange)},[e]);let s=(0,a.usePathname)();return(0,r.jsxs)("div",{style:{backgroundColor:"/"===s?"#fdf9ee":"#f4e8dc"},children:[(0,r.jsxs)("header",{className:"mx-auto flex max-w-6xl items-center justify-between px-6 py-5 sm:py-6",children:[(0,r.jsx)(o(),{href:"/",className:"leading-tight no-underline",children:(0,r.jsx)("span",{className:"text-xl font-bold lowercase",style:{fontFamily:d,color:"var(--color-text)"},children:"sellerhound"})}),(0,r.jsx)("nav",{className:"hidden flex-wrap items-center justify-end gap-x-6 gap-y-2 sm:flex sm:gap-x-7",children:h.map(e=>"children"in e?(0,r.jsx)(CrosslistDropdown,{label:e.label,children:e.children},e.label):(0,r.jsx)(o(),{href:e.href,className:f,style:m,children:e.label},e.href))}),(0,r.jsx)("button",{type:"button",onClick:()=>t(e=>!e),className:"inline-flex items-center justify-center p-1 sm:hidden",style:{color:"var(--color-text)"},"aria-label":e?"Close menu":"Open menu","aria-expanded":e,"aria-controls":"mobile-nav",children:e?(0,r.jsx)(c.Z,{className:"h-6 w-6"}):(0,r.jsx)(u.Z,{className:"h-6 w-6"})})]}),e&&(0,r.jsx)("nav",{id:"mobile-nav",className:"border-t px-6 pb-4 pt-2 sm:hidden",style:{borderColor:"var(--color-border)"},children:h.map(e=>"children"in e?(0,r.jsxs)("div",{className:"py-1",children:[(0,r.jsx)("p",{className:"py-2 text-sm font-semibold uppercase tracking-widest",style:{color:"var(--color-text-secondary)"},children:e.label}),(0,r.jsx)("div",{className:"flex flex-col",children:e.children.map(e=>(0,r.jsx)(o(),{href:e.href,onClick:()=>t(!1),className:"py-2 pl-3 text-lg no-underline transition-opacity hover:opacity-70",style:m,children:e.label},e.href))})]},e.label):(0,r.jsx)(o(),{href:e.href,onClick:()=>t(!1),className:"block py-2 text-lg no-underline transition-opacity hover:opacity-70",style:m,children:e.label},e.href))})]})}let p=[{href:"/ebay",label:"eBay crosslisting"},{href:"/poshmark",label:"Poshmark crosslisting"},{href:"/mercari",label:"Mercari crosslisting"},{href:"/vinted",label:"Vinted crosslisting"},{href:"/poshmark-automation",label:"Poshmark automation"},{href:"/reselling-fee-calculator",label:"Fee calculator"},{href:"https://chromewebstore.google.com/detail/basic-vinted-label/hfnfffojogoipkckhdocmhjpfaoahapa",label:"Vinted Label extension",external:!0},{href:"/pricing",label:"Pricing"},{href:"/field-notes",label:"Field Notes"},{href:"/by-the-numbers",label:"By the numbers"},{href:"/feature-request",label:"Request a feature"},{href:"/changelog",label:"Changelog"},{href:"/privacy-policy",label:"Privacy"},{href:"/terms-of-service",label:"Terms"}];function SiteFooter(){let e=new Date().getFullYear();return(0,r.jsxs)("footer",{className:"border-t px-6 py-10 text-center text-sm",style:{borderColor:"var(--color-border)",color:"var(--color-text-tertiary)"},children:[(0,r.jsx)("nav",{className:"mx-auto mb-4 flex max-w-3xl flex-wrap items-center justify-center gap-x-4 gap-y-2",children:p.map(e=>{let{href:t,label:s,external:a}=e;return a?(0,r.jsx)("a",{href:t,target:"_blank",rel:"noopener noreferrer",className:"transition-opacity hover:opacity-70",children:s},t):(0,r.jsx)(o(),{href:t,className:"transition-opacity hover:opacity-70",children:s},t)})}),(0,r.jsx)("p",{className:"mx-auto mb-2 max-w-xl",children:"Not affiliated with or endorsed by eBay, Poshmark, Mercari, or Vinted."}),(0,r.jsxs)("p",{children:["\xa9 2024–",e," SellerHound, LLC"]})]})}let b=["/dashboard","/auth","/onboarding","/print-label","/test-upload","/mobile-connect","/bulk-listing-demo"];function SiteChrome(e){let{children:t}=e,s=(0,a.usePathname)()||"/",n=b.some(e=>s===e||s.startsWith("".concat(e,"/")));return n?(0,r.jsx)(r.Fragment,{children:t}):(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(SiteHeader,{}),t,(0,r.jsx)(SiteFooter,{})]})}},40554:function(e,t,s){"use strict";s.r(t),s.d(t,{AuthProvider:function(){return AuthProvider},useAuth:function(){return useAuth}});var r=s(57437),a=s(2265),n=s(97823);let i=(0,a.createContext)({user:null,session:null,loading:!0,signOut:async()=>{}}),useAuth=()=>{let e=(0,a.useContext)(i);if(!e)throw Error("useAuth must be used within an AuthProvider");return e};function AuthProvider(e){let{children:t}=e,[s,o]=(0,a.useState)(null),[l,c]=(0,a.useState)(null),[u,d]=(0,a.useState)(!0),applyUser=e=>o(t=>{var s;return(null==t?void 0:t.id)===(null!==(s=null==e?void 0:e.id)&&void 0!==s?s:null)?t:e});(0,a.useEffect)(()=>{let getInitialSession=async()=>{var e;let{data:{session:t}}=await n.supabase.auth.getSession();c(t),applyUser(null!==(e=null==t?void 0:t.user)&&void 0!==e?e:null),d(!1)};getInitialSession();let{data:{subscription:e}}=n.supabase.auth.onAuthStateChange(async(e,t)=>{var s;c(t),applyUser(null!==(s=null==t?void 0:t.user)&&void 0!==s?s:null),d(!1)});return()=>{e.unsubscribe()}},[]);let signOut=async()=>{d(!0);try{await n.supabase.auth.signOut()}catch(e){console.error("Error signing out:",e)}finally{d(!1)}},h=(0,a.useMemo)(()=>({user:s,session:l,loading:u,signOut}),[s,l,u]);return(0,r.jsx)(i.Provider,{value:h,children:t})}},97823:function(e,t,s){"use strict";s.d(t,{I8:function(){return o},Vt:function(){return c},db:function(){return l},supabase:function(){return i}});var r=s(37440);let a="https://irksmzwbjnoofpebiqot.supabase.co",n="eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6Imlya3Ntendiam5vb2ZwZWJpcW90Iiwicm9sZSI6ImFub24iLCJpYXQiOjE3NTQ2MTkwMTUsImV4cCI6MjA3MDE5NTAxNX0.yU49k-He42DgvCKXzDjMNJHwt3O-X6L_bbu-1RoWQAM";a&&n||(console.warn("⚠️  Supabase not configured. Please set up your environment variables in .env.local"),console.warn("\uD83D\uDCD6 See SETUP.md for detailed instructions"));let i=(0,r.createClient)(a,n,{auth:{autoRefreshToken:!0,persistSession:!0,detectSessionInUrl:!0}}),o={signUp:async(e,t,s)=>await i.auth.signUp({email:e,password:t,options:s}),signIn:async(e,t)=>await i.auth.signInWithPassword({email:e,password:t}
1),signInWithGoogle:async e=>{let t=e||"".concat(window.location.origin,"/auth/callback?oauth=1");return await i.auth.signInWithOAuth({provider:"google",options:{redirectTo:t,queryParams:{prompt:"select_account"}}})},signOut:async()=>await i.auth.signOut(),resetPassword:async e=>await i.auth.resetPasswordForEmail(e),updatePassword:async e=>await i.auth.updateUser({password:e}),getSession:async()=>await i.auth.getSession(),getUser:async()=>await i.auth.getUser()},l={getUser:async e=>await i.from("users").select("*").eq("id",e).single(),updateUser:async(e,t)=>await i.from("users").update(t).eq("id",e),getListings:async(e,t)=>{let s=i.from("listings").select("*").eq("user_id",e).order("date_created",{ascending:!1});if(null==t?void 0:t.status)switch(t.status){case"active":s=s.eq("is_active",!0);break;case"sold":s=s.eq("is_sold",!0);break;case"canceled":s=s.eq("is_canceled",!0)}return(null==t?void 0:t.limit)&&(s=s.limit(t.limit)),await s},createListing:async e=>await i.from("listings").insert(e).select().single(),updateListing:async(e,t)=>await i.from("listings").update(t).eq("id",e).select().single(),deleteListing:async e=>await i.from("listings").delete().eq("id",e),getPurchases:async e=>await i.from("purchases").select("*").eq("user_id",e).order("purchase_date",{ascending:!1}),createPurchase:async e=>await i.from("purchases").insert(e).select().single(),updatePurchase:async(e,t)=>{let s=await i.from("purchases").update({...t,updated_at:new Date().toISOString()}).eq("id",e).select().single();return s},getStores:async e=>await i.from("stores").select("*").eq("user_id",e).order("name"),createStore:async e=>await i.from("stores").insert(e).select().single(),getStoreVisits:async(e,t)=>{let s=i.from("store_visits").select("*, stores(name)").eq("user_id",e).order("visit_date",{ascending:!1});return t&&(s=s.eq("store_id",t)),await s},createStoreVisit:async e=>await i.from("store_visits").insert(e).select().single(),getFinancialSummary:async(e,t,s)=>{let r=i.from("listings").select("price, purchase_cost, ebay_fees, shipping_cost, net_payout").eq("user_id",e).eq("is_sold",!0);return t&&(r=r.gte("date_sold",t)),s&&(r=r.lte("date_sold",s)),await r},getNotifications:async function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],s=i.from("notifications").select("*").eq("user_id",e).order("created_at",{ascending:!1});return t&&(s=s.eq("is_read",!1)),await s},markNotificationRead:async e=>await i.from("notifications").update({is_read:!0}).eq("id",e),getOfferNotifications:async function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],s=i.from("offer_notifications").select("*").eq("user_id",e).order("created_at",{ascending:!1});return t&&(s=s.eq("notification_read",!1)),await s},getUnreadOfferCount:async e=>{let{count:t,error:s}=await i.from("offer_notifications").select("*",{count:"exact",head:!0}).eq("user_id",e).eq("notification_read",!1).eq("offer_status","pending");return s?(console.error("Error getting unread offer count:",s),0):t||0},markOfferNotificationRead:async e=>await i.from("offer_notifications").update({notification_read:!0,updated_at:new Date().toISOString()}).eq("id",e),markAllOffersRead:async e=>await i.from("offer_notifications").update({notification_read:!0,updated_at:new Date().toISOString()}).eq("user_id",e).eq("notification_read",!1),getNotificationSubscriptionStatus:async e=>await i.from("ebay_notification_subscriptions").select("*").eq("user_id",e).single()},c={subscribeToListings:(e,t)=>i.channel("listings-changes").on("postgres_changes",{event:"*",schema:"public",table:"listings",filter:"user_id=eq.".concat(e)},t).subscribe(),subscribeToNotifications:(e,t)=>i.channel("notifications-changes").on("postgres_changes",{event:"INSERT",schema:"public",table:"notifications",filter:"user_id=eq.".concat(e)},t).subscribe(),subscribeToPurchases:(e,t)=>i.channel("purchases-changes").on("postgres_changes",{event:"*",schema:"public",table:"purchases",filter:"user_id=eq.".concat(e)},t).subscribe(),unsubscribe:e=>i.removeChannel(e),subscribeToOfferNotifications:(e,t)=>i.channel("offer-notifications-changes").on("postgres_changes",{event:"*",schema:"public",table:"offer_notifications",filter:"user_id=eq.".concat(e)},e=>{t(e)}).subscribe(e=>{}),subscribeToPurchaseInfo:e=>i.channel("purchase-info-changes").on("postgres_changes",{event:"*",schema:"public",table:"purchase_info"},e).subscribe(),subscribeToListingUpdates:(e,t)=>{let s=i.channel("listing-updates");s.on("postgres_changes",{event:"*",schema:"public",table:"listings",filter:"user_id=eq.".concat(e)},e=>{t({type:"listing",...e})}),s.on("postgres_changes",{event:"*",schema:"public",table:"purchase_info"},e=>{t({type:"purchase_info",...e})}),s.on("postgres_changes",{event:"*",schema:"public",table:"purchases",filter:"user_id=eq.".concat(e)},e=>{t({type:"purchase",...e})});let r=s.subscribe(e=>{"SUBSCRIBED"===e||("CHANNEL_ERROR"===e?console.error("❌ Channel subscription error"):"TIMED_OUT"===e&&console.error("⏰ Subscription timed out"))});return r}}},59740:function(e,t,s){"use strict";s.r(t),s.d(t,{ThemeProvider:function(){return ThemeProvider},useTheme:function(){return useTheme}});var r=s(57437),a=s(2265);let n=(0,a.createContext)(void 0);function ThemeProvider(e){let{children:t}=e,[s,i]=(0,a.useState)(!1);return((0,a.useEffect)(()=>{i(!0);try{localStorage.removeItem("theme")}catch(e){}let e=document.documentElement;e.removeAttribute("data-theme"),e.setAttribute("data-bs-theme","light")},[]),s)?(0,r.jsx)(n.Provider,{value:{theme:"light",setTheme:()=>{},toggleTheme:()=>{}},children:t}):null}function useTheme(){let e=(0,a.useContext)(n);if(void 0===e)throw Error("useTheme must be used within a ThemeProvider");return e}},92489:function(){}},function(e){e.O(0,[6872,8326,5603,2971,2472,1744],function(){return e(e.s=52319)}),_N_E=e.O()}]);

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.