1import{c as v,r as x,j as e,H as N,L as d,ae as g,X as _}from"./index-DlDjpmXN.js";import{u as S}from"./useRecipeSummaries-DhVzhNpY.js";import{f as R}from"./fuzzySearch-BO3Z0PYz.js";import{A as L}from"./arrow-left-LOojFf8t.js";import{S as b}from"./search-CPEq25Hp.js";import{S as H}from"./snowflake-B4O_UhND.js";const B=v("CalendarDays",[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}],["path",{d:"M8 14h.01",key:"6423bh"}],["path",{d:"M12 14h.01",key:"1etili"}],["path",{d:"M16 14h.01",key:"1gbofw"}],["path",{d:"M8 18h.01",key:"lrp35t"}],["path",{d:"M12 18h.01",key:"mhygvu"}],["path",{d:"M16 18h.01",key:"kzsmim"}]]),u="https://skoo.ly/holiday-bake",y=["beetroot-star-bread","bremer-klaben","christmas-jam","christmas-tree-pull-apart-bread","cinnamon-babka","cranberry-orange-loaf","cranberry-walnut-sourdough","danish-almond-kringle","henrys-big-gooey-cinnamon-rolls","henrys-gingerbread-cutouts","henrys-gingerbread-loaf","henrys-savory-star-bread","holiday-chocolate-babka","holiday-fruitcake","holiday-star-bread-sweet","jalapeno-cheddar-cornbread","jamaican-black-rum-cake","julekaka","kids-can-bake-monster-apple-oat-bars","kids-can-bake-spiderweb-brownies","lievito-madre-conversion","mandarin-holiday-muffins","market-lemon-shortbread","monkey-bread","mummy-wrapped-breadsticks","pan-de-muerto","panettone-lievito-madre","pumpkin-shaped-bread","pumpkin-spice-bread","rosemary-dinner-rolls","rustic-multigrain-country-loaf","sourdough-bread-bowls","sourdough-chocolate-babka","sourdough-monkey-bread","sourdough-pumpkin-spice-waffles","sourdough-round-challah","sourdough-skillet-cornbread","southern-skillet-cornbread","special-round-challah","spider-web-focaccia","traditional-german-stollen","witchs-broom-pretzels","your-first-panettone"],k=["round-honey-apple-challah","sourdough-round-honey-apple-challah","sourdough-savory-star-bread","hot-cross-buns","sourdough-hot-cross-buns","valentines-zebra-bread","king-cake","easter-bunny-bread","sculpted-easter-bunny-bread","henry-hunter-paska-easter-bread","tsoureki-greek-easter-braid","colomba-inspired-easter-loaf","babka-wielkanocna-polish-easter-babka"],C=[...y,...k],E=a=>new Map(a.map(s=>[s.slug,s]));function p(a,s){const i=E(a);return s.map(t=>i.get(t)).filter(t=>!!t)}const M={christmas:"Christmas",hanukkah:"Hanukkah",easter:"Easter",halloween:"Halloween",thanksgiving:"Thanksgiving","rosh-hashanah":"Rosh Hashanah","new-year":"New Year",valentines:"Valentine's","mardi-gras":"Mardi Gras"},A=[["sourdough","Sourdough"],["enriched","Enriched"],["sweet","Sweet"],["quick-bread","Quick Bread"],["quick bread","Quick Bread"],["flatbread","Flatbread"],["cookie","Cookie"],["pastry","Pastry"],["yeasted","Yeasted"]];function O(a){const s=[a.category,...a.tags||[],...a.seasonalTags||[]].filter(Boolean).map(n=>String(n).toLowerCase()),i=[],t=A.find(([n])=>s.some(o=>o.includes(n)));t?i.push(t[1]):a.category&&i.push(String(a.category));const l=Object.entries(M).find(([n])=>s.some(o=>o.includes(n)));return l&&i.push(l[1]),a.difficulty&&i.push(String(a.difficulty).charAt(0).toUpperCase()+String(a.difficulty).slice(1)),Array.from(new Set(i)).slice(0,3)}function P({recipe:a}){const s=a.images?.thumbnail||a.images?.hero,i=O(a);return e.jsxs(d,{to:`/recipes/${a.slug}`,className:"group grid grid-cols-[7.25rem_1fr] overflow-hidden rounded-[1.1rem] border border-[#d8d0c0] bg-[#fffdf8] text-left shadow-[0_8px_28px_rgba(31,55,40,0.07)] transition hover:-translate-y-0.5 hover:border-[#b98a2f] hover:shadow-[0_14px_34px_rgba(31,55,40,0.13)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[#b12a34] focus-visible:ring-offset-2 sm:block",children:[e.jsx("div",{className:"h-full min-h-32 overflow-hidden bg-[#e6eadf] sm:h-auto sm:aspect-[4/3] sm:min-h-0",children:s?e.jsx("img",{src:s,alt:"",loading:"lazy",className:"h-full w-full object-cover transition duration-500 group-hover:scale-[1.025]"}):e.jsx("div",{className:"grid h-full place-items-center text-[#1d5038]","aria-hidden":"true",children:e.jsx(H,{className:"h-8 w-8"})})}),e.jsxs("div",{className:"flex min-w-0 flex-col justify-center p-4 sm:p-5",children:[i.length>0&&e.jsx("div",{className:"mb-2 flex flex-wrap gap-1.5",children:i.map(t=>e.jsx("span",{className:"rounded-full border border-[#d8d0c0] bg-[#f5f0e5] px-2 py-0.5 text-[0.68rem] font-semibold uppercase tracking-wide text-[#1d5038]",children:t},t))}),e.jsx("h3",{className:"font-serif text-lg leading-tight text-[#173b2b] sm:text-xl",children:a.meta?.title||a.slug}),e.jsx("p",{className:"mt-2 line-clamp-2 text-sm leading-relaxed text-[#655f55]",children:a.meta?.subtitle||a.meta?.description||"Open the recipe in Recipe Pantry."}),e.jsxs("span",{className:"mt-3 inline-flex items-center gap-1 text-sm font-semibold text-[#a22530]",children:["Open recipe ",e.jsx(g,{className:"h-3.5 w-3.5"})]})]})]})}function f({id:a,title:s,description:i,recipes:t}){return t.length===0?null:e.jsx("section",{id:a,className:"scroll-mt-24 py-14 sm:py-20",children:e.jsxs("div",{className:"mx-auto max-w-6xl px-5 sm:px-8",children:[e.jsxs("div",{className:"max-w-3xl",children:[e.jsx("h2",{className:"font-serif text-3xl leading-tight text-[#173b2b] sm:text-4xl",children:s}),e.jsx("p",{className:"mt-4 text-base leading-7 text-[#655f55] sm:text-lg",children:i})]}),e.jsx("div",{className:"mt-8 grid gap-4 sm:grid-cols-2 lg:grid-cols-3",children:t.map(l=>e.jsx(P,{recipe:l},l.slug))})]})})}function z(){const a=S(),[s,i]=x.useState(""),t=p(a,y),l=p(a,k),n=x.useMemo(()=>
1{if(!s.trim())return null;const r=[...t,...l];return new Set(R(r,s).items.map(c=>c.slug))},[s,t,l]),o=n?t.filter(r=>n.has(r.slug)):t,h=n?l.filter(r=>n.has(r.slug)):l,m=o.length+h.length,j=t.filter(r=>r.images?.hero).slice(0,3),w=p(a,C).map((r,c)=>({"@type":"ListItem",position:c+1,name:r.meta?.title||r.slug,url:`https://recipepantry.app/recipes/${r.slug}`}));return e.jsxs("main",{className:"min-h-screen bg-[#faf7f0] text-[#173b2b]",children:[e.jsxs(N,{children:[e.jsx("title",{children:"Holiday Bread Recipes & Baking Schedule | Recipe Pantry"}),e.jsx("meta",{name:"description",content:"Holiday bread recipes, a make-ahead baking schedule, live bake-alongs, and celebration breads from Recipe Pantry by Henry Hunter Jr."}),e.jsx("meta",{name:"keywords",content:"holiday bread recipes, Christmas bread, Easter bread, panettone, stollen, star bread, holiday baking schedule"}),e.jsx("link",{rel:"canonical",href:"https://recipepantry.app/holiday-bake"}),e.jsx("meta",{property:"og:title",content:"The Holiday Bake | Recipe Pantry"}),e.jsx("meta",{property:"og:description",content:"Holiday bread recipes, the make-ahead calendar, and live bake-alongs in one seasonal baking home."}),e.jsx("meta",{property:"og:type",content:"website"}),e.jsx("meta",{property:"og:url",content:"https://recipepantry.app/holiday-bake"}),e.jsx("script",{type:"application/ld+json",children:JSON.stringify({"@context":"https://schema.org","@type":"ItemList",name:"Holiday bread recipes",itemListElement:w})})]}),e.jsx("div",{className:"h-2 bg-[repeating-linear-gradient(135deg,#b12a34_0_14px,#faf7f0_14px_28px,#1d5038_28px_42px,#faf7f0_42px_56px)]"}),e.jsx("header",{className:"border-b border-[#d8d0c0] bg-[#fffdf8]/95",children:e.jsxs("div",{className:"mx-auto flex max-w-6xl items-center justify-between gap-4 px-5 py-4 sm:px-8",children:[e.jsxs(d,{to:"/recipes",className:"inline-flex items-center gap-2 text-sm font-semibold text-[#1d5038] hover:text-[#a22530]",children:[e.jsx(L,{className:"h-4 w-4"})," Recipe Pantry"]}),e.jsxs("a",{href:"#recipes",className:"inline-flex items-center gap-2 text-sm font-semibold text-[#a22530] hover:text-[#7d1d25]",children:[e.jsx(b,{className:"h-4 w-4"})," Browse recipes"]})]})}),e.jsx("section",{className:"overflow-hidden border-b border-[#d8d0c0] bg-[radial-gradient(circle_at_top_left,#e7efe9,transparent_42%),linear-gradient(180deg,#fffdf8,#f5f0e5)]",children:e.jsxs("div",{className:"mx-auto grid max-w-6xl gap-10 px-5 py-14 sm:px-8 sm:py-20 lg:grid-cols-[1.05fr_.95fr] lg:items-center",children:[e.jsxs("div",{children:[e.jsx("img",{src:"/images/assets/recipe-pantry-holiday-logo.webp",alt:"Recipe Pantry Holiday Collection",className:"mb-4 h-24 w-auto sm:h-32",width:700,height:480}),e.jsx("p",{className:"font-serif text-lg italic text-[#a22530]",children:"From Halloween night to Three Kings Dayâand every celebration after"}),e.jsx("h1",{className:"mt-4 max-w-3xl font-serif text-5xl leading-[1.02] text-[#173b2b] sm:text-6xl lg:text-7xl",children:"The Holiday Bake lives here now."}),e.jsx("p",{className:"mt-6 max-w-2xl text-lg leading-8 text-[#5f5a51]",children:"Find every holiday recipe in Recipe Pantry, then open the shareable seasonal guide for the make-ahead calendar, Saturday bake-alongs, bakerâs gear, and partner offers."}),e.jsxs("div",{className:"mt-8 flex flex-col gap-3 sm:flex-row",children:[e.jsxs("a",{href:u,target:"_blank",rel:"noopener",className:"inline-flex min-h-12 items-center justify-center gap-2 rounded-full bg-[#a22530] px-6 py-3 font-semibold text-white shadow-[0_8px_24px_rgba(162,37,48,.22)] hover:bg-[#861d27] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[#a22530] focus-visible:ring-offset-2",children:["Open the full holiday guide ",e.jsx(g,{className:"h-4 w-4"})]}),e.jsx("a",{href:"#recipes",className:"inline-flex min-h-12 items-center justify-center gap-2 rounded-full border border-[#1d5038] px-6 py-3 font-semibold text-[#1d5038] hover:bg-[#e7efe9] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[#1d5038] focus-visible:ring-offset-2",children:"Browse all holiday recipes"})]}),e.jsxs("div",{className:"mt-8 flex flex-wrap gap-x-7 gap-y-2 text-sm text-[#655f55]",children:[e.jsxs("span",{children:[e.jsx("strong",{className:"text-[#173b2b]",children:o.length})," in the seasonal guide"]}),e.jsxs("span",{children:[e.jsx("strong",{className:"text-[#173b2b]",children:h.length})," more celebrations"]}),e.jsxs("span",{className:"inline-flex items-center gap-1.5",children:[e.jsx(B,{className:"h-4 w-4 text-[#b98a2f]"})," One make-ahead schedule"]})]})]}),e.jsx("div",{className:"grid grid-cols-2 gap-3","aria-label":"Holiday recipe preview",children:j.map((r,c)=>e.jsxs(d,{to:`/recipes/${r.slug}`,className:`group relative overflow-hidden rounded-[1.4rem] border-2 border-white shadow-[0_14px_36px_rgba(23,59,43,.17)] ${c===0?"col-span-2 aspect-[16/9]":"aspect-square"}`,children:[e.jsx("img",{src:r.images?.hero,alt:"",className:"h-full w-full object-cover transition duration-500 group-hover:scale-[1.025]"}),e.jsx("span",{className:"absolute inset-x-0 bottom-0 bg-gradient-to-t from-[#122c21]/95 to-transparent px-4 pb-4 pt-12 font-serif text-lg text-white",children:r.meta?.title})]},r.slug))})]})}),e.jsxs("div",{id:"recipes",children:[e.jsxs("div",{className:"mx-auto max-w-6xl px-5 pt-12 sm:px-8 sm:pt-16",children:[e.jsx("label",{htmlFor:"holiday-search",className:"block font-serif text-2xl text-[#173b2b]",children:"Looking for one bake in particular?"}),e.jsxs("div",{className:"relative mt-3 max-w-xl",children:[e.jsx(b,{className:"pointer-events-none absolute left-4 top-1/2 h-5 w-5 -translate-y-1/2 text-[#8a8175]"}),e.jsx("input",{id:"holiday-search",type:"search",value:s,onChange:r=>i(r.target.value),placeholder:"Search holiday recipes... (stollen, babka, challah)",className:"min-h-12 w-full rounded-full border border-[#d8d0c0] bg-[#fffdf8] py-3 pl-12 pr-12 text-base text-[#173b2b] shadow-sm outline-none placeholder:text-[#8a8175] focus-visible:ring-2 focus-visible:ring-[#a22530]"}),s&&e.jsx("button",{type:"button",onClick:()=>i(""),"aria-label":"Clear search",className:"absolute right-3 top-1/2 grid h-8 w-8 -translate-y-1/2 place-items-center rounded-full text-[#655f55] hover:bg-[#f0ebe0]",children:e.jsx(_,{className:"h-4 w-4"})})]}),s.trim()&&e.jsxs("p",{className:"mt-3 text-sm text-[#655f55]",children:[m," ",m===1?"recipe":"recipes"," match â",s,"â",m===0&&" â try a different word, or clear the search to see them all."]})]}),e.jsx(f,{id:"winter-guide-recipes",title:"The seasonal guide collection",description:"The breads, sweets, and gathering recipes that follow the Holiday Bake from the first autumn weekends through the New Year.",recipes:o}),e.jsx("div",{className:"border-y border-[#d8d0c0] bg-[#e7efe9]",children:e.jsx(f,{id:"more-celebrations",title:"More celebrations from the Pantry",description:"Valentineâs, Mardi Gras, and Easter recipes belong in the holiday library too. Theyâre collected here without crowding the winter baking schedule.",recipes:h})})]}),e.jsxs("footer",{className:"bg-[#173b2b] px-5 py-12 text-center text-[#e9eee9]",children:[e.jsx("p",{className:"font-serif text-2xl",children:"Bake the season. Keep the recipes."}),e.jsxs("div",{className:"mt-5 flex flex-wrap justify-center gap-5 text-sm",children:[e.jsx(d,{to:"/recipes",className:"underline decoration-[#b98a2f] underline-offset-4",children:"Return to Recipe Pantry"}),e.jsx("a",{href:u,target:"_blank",rel:"noopener",className:"underline decoration-[#b98a2f] underline-offset-4",children:"Open the shareable guide"})]})]})]})}export{z 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.