PageSourceSearch

https://darknesscon.com/assets/MacabreMarketHome-D8lSTcy1.js

js darknesscon.com collected 2026-10-07 14:08:34 UTC 8,432 bytes, 6 lines download raw bytes

1import{c as b,r as d,b as f,j as e,m as a,L as l,T as y}from"./index-BGHEU75U.js";import{S as j}from"./Seo-BZCvhWik.js";import{M as v}from"./MacabreMarketMapSection-DJ52oza4.js";import{M as m}from"./moon-unqhb094.js";import{C as x}from"./calendar-CzOxhEXQ.js";import{C as k}from"./clock-BnK7jL03.js";import{M as w}from"./map-pin-CSHHlCFo.js";/**
2 * @license lucide-react v0.475.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 N=[["path",{d:"M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z",key:"4pj2yx"}],["path",{d:"M20 3v4",key:"1olli1"}],["path",{d:"M22 5h-4",key:"1gvqau"}],["path",{d:"M4 17v2",key:"vumght"}],["path",{d:"M5 18H3",key:"zchphs"}]],M=b("Sparkles",N),r={hidden:{opacity:0,y:40},visible:{opacity:1,y:0,transition:{duration:.8}}},c="https://media.base44.com/images/public/6a2f6e0f8dc065951aad2e66/f19633b9a_generated_image.png";function _(s){return new Date(s+"T00:00:00").toLocaleDateString("en-US",{weekday:"long",month:"long",day:"numeric",year:"numeric"})}const D=[{icon:m,title:"The Market",body:"Browse curated vendors of oddities, dark art, candles, occult goods, and handmade curiosities. Each month brings a rotating cast of purveyors."},{icon:M,title:"The Evening Party",body:"When the stalls close, the night begins. Music, mingling, and after-dark revelry beneath the glow of candlelight and lanterns."},{icon:x,title:"Monthly Ritual",body:"A recurring gathering every month — a new date, a new theme, a new reason to descend into the darkness with fellow creatures of the night."}];function L(){const[s,n]=d.useState([]),[p,h]=d.useState(!0);return d.useEffect(()=>{(async()=>{try{const t=await f.entities.MacabreMarketEvent.list("date",50),i=new Date;i.setHours(0,0,0,0);const g=(t||[]).filter(o=>new Date(o.date+"T00:00:00")>=i).sort((o,u)=>new Date(o.date)-new Date(u.date));n(g)}catch{n([])}finally{h(!1)}})()},[]),e.jsxs(e.Fragment,{children:[e.jsx(j,{title:"Macabre Market",description:"DarknessCon's Macabre Market — a monthly market and evening party celebrating horror, oddities, and dark culture.",path:"/macabre-market",image:c}),e.jsxs("section",{className:"relative min-h-screen flex items-center justify-center overflow-hidden",children:[e.jsx("div",{className:"absolute inset-0 bg-cover bg-center",style:{backgroundImage:`url('${c}')`}}),e.jsx("div",{className:"absolute inset-0 bg-background/75"}),e.jsxs("div",{className:"relative z-10 max-w-4xl mx-auto px-6 text-center pt-20",children:[e.jsx(a.p,{initial:"hidden",animate:"visible",variants:r,className:"font-body text-xs tracking-[0.3em] uppercase text-primary mb-6",children:"A Monthly Gathering of the Dark & Curious"}),e.jsx(a.h1,{initial:"hidden",animate:"visible",variants:r,className:"font-display text-6xl md:text-8xl uppercase tracking-tight text-foreground",children:"Macabre Market"}),e.jsx(a.p,{initial:"hidden",animate:"visible",variants:r,className:"font-body text-lg text-muted-foreground mt-8 leading-relaxed max-w-2xl mx-auto",children:"Every month, vendors of oddities, art, and the occult gather for an evening of shopping, mingling, and after-dark revelry. By night, the market becomes a party."}),e.jsxs(a.div,{initial:"hidden",animate:"visible",variants:r,className:"flex flex-col sm:flex-row gap-4 justify-center mt-10",children:[e.jsx(l,{to:"/macabre-market/register",className:"font-body text-sm tracking-widest uppercase px-8 py-3.5 bg-primary text-primary-foreground hover:bg-primary/80 transition-all duration-300",children:"Get Admission — $5"}),e.jsx(l,{to:"/macabre-market/vendor-application",className:"font-body text-sm tracking-widest uppercase px-8 py-3.5 border border-border text-foreground hover:bg-secondary/40 transition-all duration-300",children:"Become a Vendor"}),e.jsx("a",{href:"#schedule",className:"font-body text-sm tracking-widest uppercase px-8 py-3.5 border border-border text-muted-foreground hover:text-foreground hover:bg-secondary/40 transition-all duration-300",children:"View Upcoming Dates"})]})]})]}),e.jsx("section",{id:"about",className:"py-24 md:py-32 px-6 md:px-10",children:e.jsxs("div",{className:"max-w-6xl mx-auto",children:[e.jsx(a.p,{initial:"hidden",
6whileInView:"visible",viewport:{once:!0},variants:r,className:"font-body text-xs tracking-widest uppercase text-primary mb-4",children:"What to Expect"}),e.jsx(a.h2,{initial:"hidden",whileInView:"visible",viewport:{once:!0},variants:r,className:"font-display text-4xl md:text-6xl uppercase tracking-tight text-foreground max-w-3xl",children:"A Market by Day, a Party by Night"}),e.jsx("div",{className:"grid grid-cols-1 md:grid-cols-3 gap-8 mt-16",children:D.map((t,i)=>e.jsxs(a.div,{initial:"hidden",whileInView:"visible",viewport:{once:!0},variants:r,transition:{delay:i*.1},className:"bg-card border border-border p-8",children:[e.jsx(t.icon,{size:28,className:"text-primary mb-6"}),e.jsx("h3",{className:"font-display text-2xl uppercase tracking-wide text-foreground mb-3",children:t.title}),e.jsx("p",{className:"font-body text-sm text-muted-foreground leading-relaxed",children:t.body})]},t.title))})]})}),e.jsx("section",{id:"schedule",className:"py-24 md:py-32 px-6 md:px-10 bg-secondary/20",children:e.jsxs("div",{className:"max-w-6xl mx-auto",children:[e.jsx(a.p,{initial:"hidden",whileInView:"visible",viewport:{once:!0},variants:r,className:"font-body text-xs tracking-widest uppercase text-primary mb-4",children:"Upcoming Dates"}),e.jsx(a.h2,{initial:"hidden",whileInView:"visible",viewport:{once:!0},variants:r,className:"font-display text-4xl md:text-6xl uppercase tracking-tight text-foreground",children:"The Next Gatherings"}),p?e.jsx("div",{className:"mt-12 flex items-center justify-center py-16",children:e.jsx("div",{className:"w-8 h-8 border-4 border-border border-t-primary rounded-full animate-spin"})}):s.length===0?e.jsxs("div",{className:"mt-12 bg-card border border-border p-12 text-center max-w-2xl mx-auto",children:[e.jsx("p",{className:"font-display text-2xl text-muted-foreground",children:"Dates Coming Soon"}),e.jsx("p",{className:"font-body text-sm text-muted-foreground mt-2",children:"Check back soon for the next Macabre Market."})]}):e.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-6 mt-12",children:s.map((t,i)=>e.jsxs(a.div,{initial:"hidden",whileInView:"visible",viewport:{once:!0},variants:r,transition:{delay:i*.08},className:"bg-card border border-border overflow-hidden flex flex-col",children:[t.image_url&&e.jsx("div",{className:"aspect-[16/9] bg-secondary",children:e.jsx("img",{src:t.image_url,alt:t.title,className:"w-full h-full object-cover",loading:"lazy"})}),e.jsxs("div",{className:"p-6 md:p-8 flex-1 flex flex-col",children:[e.jsxs("div",{className:"flex items-center gap-2 text-primary mb-3",children:[e.jsx(x,{size:16}),e.jsx("span",{className:"font-body text-xs tracking-widest uppercase",children:_(t.date)})]}),e.jsx("h3",{className:"font-display text-3xl uppercase tracking-tight text-foreground mb-4",children:t.title}),t.description&&e.jsx("p",{className:"font-body text-sm text-muted-foreground leading-relaxed mb-5",children:t.description}),e.jsxs("div",{className:"flex flex-col gap-2 mt-auto",children:[t.market_hours&&e.jsxs("div",{className:"flex items-center gap-2 font-body text-sm text-muted-foreground",children:[e.jsx(k,{size:14,className:"text-primary"}),e.jsxs("span",{children:["Market: ",t.market_hours]})]}),t.party_hours&&e.jsxs("div",{className:"flex items-center gap-2 font-body text-sm text-muted-foreground",children:[e.jsx(m,{size:14,className:"text-primary"}),e.jsxs("span",{children:["Party: ",t.party_hours]})]}),t.location_name&&e.jsxs("div",{className:"flex items-center gap-2 font-body text-sm text-muted-foreground",children:[e.jsx(w,{size:14,className:"text-primary"}),e.jsx("span",{children:t.location_name})]}),t.ticket_url&&e.jsxs("a",{href:t.ticket_url,target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-2 font-body text-sm tracking-widest uppercase px-6 py-3 bg-primary text-primary-foreground hover:bg-primary/80 transition-all duration-300 mt-4 w-fit",children:[e.jsx(y,{size:14})," Get Tickets"]})]})]})]},t.id||i))})]})}),e.jsx(v,{})]})}export{L 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.