1import"../chunks/tU0suguP.js";import{o as ze}from"../chunks/QIZt8um4.js";import{p as te,f as C,t as H,b as y,a as ae,g as e,u,e as n,h as c,r,d as U,j as Y,k as z,m as we,o as Be,c as ee,i as Oe,l as Ve}from"../chunks/DTZ2SJHX.js";import{d as re,a as Q,s as V}from"../chunks/BQpDz6WX.js";import{i as S}from"../chunks/BCqcwvdE.js";import{e as O,i as K}from"../chunks/BVwypQ-w.js";import{s as _e}from"../chunks/G0-4n_VU.js";import{s as F}from"../chunks/B5Pawp1m.js";import{a as T,s as W,b as xe,m as oe,h as Le,e as Pe}from"../chunks/C2_0Muv2.js";import{q as Fe}from"../chunks/NLqXFSjM.js";import{r as me}from"../chunks/DIyKd-oQ.js";import{b as Ne}from"../chunks/BLucZ915.js";import{p as qe}from"../chunks/DHP_PY7X.js";import{A as ve,M as Ue}from"../chunks/Fv64wOMT.js";import{u as ue}from"../chunks/97lrZR0l.js";import{u as We}from"../chunks/D-s8rFCc.js";import{U as Ye}from"../chunks/D_aEF3W_.js";(function(){try{var f=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{};f.SENTRY_RELEASE={id:"9da70b9549f1ddce80597ace24badc05e16c89bc"}}catch{}})();try{(function(){var f=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new f.Error().stack;t&&(f._sentryDebugIds=f._sentryDebugIds||{},f._sentryDebugIds[t]="0bda20dc-b4c9-4b34-8a48-8a421315a40d",f._sentryDebugIdIdentifier="sentry-dbid-0bda20dc-b4c9-4b34-8a48-8a421315a40d")})()}catch{}var Ge=C('<header class="flex justify-between print:justify-center border-b border-neutral-200 dark:border-neutral-600 print:border-none mt-2 pb-2 px-3"><button type="button" class="print:hidden text-primary-600 dark:text-primary-300 disabled:text-primary-900 dark:disabled:text-primary-700 disabled:text-opacity-50 dark:disabled:text-opacity-75"><span class="sr-only">Previous month</span> <svg class="h-7 w-7" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" aria-hidden="true"><path fill-rule="evenodd" d="M12.707 5.293a1 1 0 010 1.414L9.414 10l3.293 3.293a1 1 0 01-1.414 1.414l-4-4a1 1 0 010-1.414l4-4a1 1 0 011.414 0z" clip-rule="evenodd"></path></svg></button> <div class="text-primary-700 dark:text-primary-200 print:text-black text-xl"> </div> <button type="button" class="print:hidden text-primary-600 dark:text-primary-300 disabled:text-primary-900 dark:disabled:text-primary-700 disabled:text-opacity-50 dark:disabled:text-opacity-75"><span class="sr-only">Next month</span> <svg class="h-7 w-7" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" aria-hidden="true"><path fill-rule="evenodd" d="M7.293 14.707a1 1 0 010-1.414L10.586 10 7.293 6.707a1 1 0 011.414-1.414l4 4a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0z" clip-rule="evenodd"></path></svg></button></header>');function Je(f,t){te(t,!0);const p=u(()=>T.viewingRange),_=u(()=>T.disableBefore),s=u(()=>T.disableAfter);var m=Ge(),h=n(m),E=c(h,2),k=n(E);r(E);var D=c(E,2);r(m),H((I,w)=>{h.disabled=I,V(k,`${e(p).start.monthLong??""} ${e(p).start.year??""}`),D.disabled=w},[()=>e(_).toMillis()>e(p).start.toMillis(),()=>e(s).toMillis()<e(p).start.toMillis()]),Q("click",h,()=>{T.viewingRange={start:e(p).start.minus({month:1}).set({days:1,...W}),end:e(p).start.minus({month:1}).set({days:1,...W}).plus({month:1})}}),Q("click",D,()=>{T.viewingRange={start:e(p).start.plus({month:1}).set({days:1,...W}),end:e(p).start.plus({month:1}).set({days:1,...W}).plus({month:1})}}),y(f,m),ae()}re(["click"]);var Ke=C('<div class="text-[10px] print:text-[8px]"> </div>'),Qe=C('<!> <div><span class="mealEventHandle print:hidden"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="w-3 h-3 mr-1"><path fill-rule="evenodd" d="M2 4.75A.75.75 0 012.75 4h14.5a.75.75 0 010 1.5H2.75A.75.75 0 012 4.75zM2 10a.75.75 0 01.75-.75h14.5a.75.75 0 010 1.5H2.75A.75.75 0 012 10zm0 5.25a.75.75 0 01.75-.75h14.5a.75.75 0 010 1.5H2.75a.75.75 0 01-.75-.75z" clip-rule="evenodd"></path></svg></span> <span class="flex flex-col print:text-black print:text-[10px]"> <!></span></div>',1);function Xe(f,t){te(t,!0);const p=u(()=>ue);let _=qe(t,"dragDisabled",15),s=Y(!1),m=t.meal.type==="dinner"?"primary":t.meal.type==="lunch"?"warning":t.meal.type==="breakfast"?"secondary":"success";function h(){e(p).permissions.mealEvents.canEdit&&(z(s,!0),_(!0))}var E=Qe(),k=U(E);{var D=o=>{ve(o,{get id(){return t.meal.id},handleHide:()=>{z(s,!1),_(!1)}})};S(k,o=>{e(s)&&o(D)})}var I=c(k,2),w=c(n(I),2),A=n(w),G=c(A);{var L=o=>{var B=Ke(),N=n(B,!0);r(B),H(()=>V(N,t.meal.note||"")),y(o,B)};S(G,o=>
1{t.meal.note&&o(L)})}r(w),r(I),H(()=>{var o;F(I,1,`mealEventItem ${e(p).permissions.mealEvents.canEdit?"cursor-pointer":""} block flex items-center w-full text-left rounded px-2 my-1 text-${m}-50 bg-${m}-600 hover:bg-${m}-700 leading-3 py-2 print:p-0 print:pb-0.5`),V(A,`${(t.meal.recipeId?(o=me.recipes[t.meal.recipeId])==null?void 0:o.name:t.meal.recipeName||"")??""} `)}),Q("click",I,h),y(f,E),ae()}re(["click"]);var Ze=C('<div class="flex justify-end pb-2 pt-0.5 print:hidden"><button class="bg-neutral-100 hover:bg-neutral-200 dark:bg-neutral-800 hover:dark:bg-neutral-700 rounded-l-full rounded-r-full pr-2 pl-0.5"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" class="text-neutral-600 w-5 h-5 inline"><path fill-rule="evenodd" d="M12 2.25c-5.385 0-9.75 4.365-9.75 9.75s4.365 9.75 9.75 9.75 9.75-4.365 9.75-9.75S17.385 2.25 12 2.25zM12.75 9a.75.75 0 00-1.5 0v2.25H9a.75.75 0 000 1.5h2.25V15a.75.75 0 001.5 0v-2.25H15a.75.75 0 000-1.5h-2.25V9z" clip-rule="evenodd"></path></svg> Add</button></div>'),$e=C('<div><!> <div><time datetime="2021-12-27"> </time> <div class="space-y-1 mt-1 h-28 flex-grow overflow-x-auto overflow-y-auto no-scrollbar "><div class="min-h-[4.25rem] w-full"></div> <!></div></div></div>');function et(f,t){te(t,!0);const p=u(()=>ue);let _=Y(void 0);const s=u(()=>T.currentTime);let m=Y(!1),h=Y(!1);const E={animation:200,group:{name:"mealEvents",pull:!0,put:!0},handle:".mealEventHandle",ghostClass:"opacity-50",onStart:()=>xe(!0),onEnd:v=>{var M;xe(!1),(M=t.ondnd)==null||M.call(t,new CustomEvent("dnd",{detail:v}))}};we(()=>{t.day.id>e(s).set(W).minus({hours:12,month:1}).toMillis()&&We(()=>e(_),E)});var k=$e(),D=n(k);{var I=v=>{ve(v,{get date(){return t.day.id},handleHide:()=>z(m,!1)})};S(D,v=>{e(m)&&v(I)})}var w=c(D,2),A=n(w),G=n(A,!0);r(A);var L=c(A,2),o=n(L);O(o,21,()=>t.day.meals,v=>v.id,(v,M)=>{Xe(v,{get meal(){return e(M)},get dragDisabled(){return e(h)},set dragDisabled(q){z(h,q,!0)}})}),r(o),Ne(o,v=>z(_,v),()=>e(_));var B=c(o,2);{var N=v=>{var M=Ze(),q=n(M);r(M),Q("click",q,()=>z(m,!0)),y(v,M)},X=u(()=>e(s).minus({day:1}).toMillis()<t.day.time.toMillis()&&e(p).permissions.mealEvents.canCreate);S(B,v=>{e(X)&&v(N)})}r(L),r(w),r(k),H(()=>{F(w,1,`overflow-hidden py-2 px-3 print:px-1 print:py-0.5 sm:h-36 print:h-24 sm:print:h-24 ${t.index!==6?"print:border-r":""} print:border-b print:border-gray-200 w-32 sm:w-auto ${t.day.time.month===T.viewingRange.start.month?"bg-white dark:bg-neutral-900":"bg-neutral-50 dark:bg-neutral-800 text-neutral-500"}`),F(A,1,t.day.time.month===e(s).month&&t.day.time.day===e(s).day&&t.day.time.year===e(s).year?"flex h-6 w-6 items-center justify-center rounded-full bg-primary-600 font-semibold text-white":""),V(G,t.day.time.day),_e(o,"data-day",t.day.id)}),y(f,k),ae()}re(["click"]);var tt=C("<div> </div>"),at=C('<span class="mr-0.5 mt-1"><div><img alt="recipe icon" class="w-full"/></div></span>'),rt=C('<span class="mr-0.5 mt-1 text-xs text-neutral-500 dark:text-neutral-400"> </span>'),it=C('<button type="button"><time datetime="2021-12-28"> </time> <div class="overflow-y-scroll no-scrollbar w-full"><span class="w-full space-x-0.5 mt-auto flex flex-wrap "><!> <!></span></div></button>'),nt=C('<div class="border print:border-none rounded border-neutral-100 dark:border-neutral-700 my-3"><!> <div class="flex flex-col overflow-x-scroll overflow-hidden"><div class="shadow ring-1 ring-black ring-opacity-5 flex flex-auto flex-col min-w-max max-w-6xl md:max-w-full md:min-w-0"><div class="flex justify-between border-b border-neutral-300 dark:border-neutral-700 print:w-[54.85%] print:border-gray-200 print:border-b-2 bg-neutral-200 dark:bg-neutral-800 text-center text-xs font-semibold leading-6 text-neutral-700 flex-none"></div> <div class="hidden lg:block print:block print:w-[55%] bg-neutral-200 dark:bg-neutral-700 text-xs leading-6 text-neutral-700 dark:text-neutral-100 flex-auto"><div class=" grid grid-cols-7 grid-rows-6 gap-px pr-px"></div></div> <div class="isolate grid w-full grid-cols-7 gap-px grid-rows-6 bg-neutral-200 dark:bg-neutral-800 lg:hidden print:hidden"></div></div></div></div> <!> <div class="pb-10 px-4 sm:px-6 lg:hidden print:hidden"><div class="flex justify-between items-center pb-2.5"><div class="text-secondary-800 dark:text-secondary-300 font-medium"> </div> <!></div> <!></div>',1);function kt(f,t){te(t,!0);const p=u(()=>ue),_=u(()=>T.viewingRange),s=u(()=>T.mobileViewingDay),m=u(()=>T.currentTime),h=u(()=>
1oe);let E=Y(Be([])),k=Y(!1),D=!1;ze(()=>{I(),oe.init(),me.init()});function I(){const i=[];let d=e(_).start.set({days:1,hours:0,minutes:0,seconds:0,milliseconds:0}),l=d.weekday===7?d:d.minus({day:d.weekday}),g=e(h).mealsArray.filter(x=>x.startTime>d.minus({days:7}).toMillis());z(E,g,!0);for(let x=0;x<6;x++){const a=[];for(let b=0;b<7;b++)g=e(h).mealsArray.filter(R=>R.startTime>=l.toMillis()&&R.startTime<l.plus({day:1}).toMillis()),a.push({id:l.toMillis(),time:l,meals:g}),l=l.plus({day:1});i.push(a)}oe.mealCalendar=i}function w(i,d,l=!1){const g=i.set(W),x=i.set(Pe),a=Fe.fromMillis(d.startTime),b=g.until(a).invalidReason,R=!x.until(a).invalidReason,Z=!b&&!R;return Z&&l&&(D=!0),Z}const A=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"];function G(i){D=!1,T.mobileViewingDay=i,setTimeout(()=>{D&&window.scroll(0,500)},100)}we(()=>{e(h).meals,e(_),I()});var L=nt(),o=U(L),B=n(o);Je(B,{});var N=c(B,2),X=n(N),v=n(X);O(v,21,()=>A,K,(i,d)=>{var l=tt(),g=n(l,!0);r(l),H(()=>{F(l,1,`bg-white dark:bg-neutral-900 dark:text-neutral-50 py-2 w-full print:text-black ${e(d)==="Sat"?"":"border-r"} print:border-gray-200 border-neutral-200 dark:border-neutral-700`),V(g,e(d))}),y(i,l)}),r(v);var M=c(v,2),q=n(M);O(q,20,()=>e(h).mealCalendar,i=>i,(i,d)=>{var l=ee(),g=U(l);O(g,19,()=>d,x=>x.id,(x,a,b)=>{et(x,{get day(){return e(a)},get index(){return e(b)},get ondnd(){return Le}})}),y(i,l)}),r(q),r(M);var ce=c(M,2);O(ce,21,()=>e(h).mealCalendar,K,(i,d)=>{var l=ee(),g=U(l);O(g,17,()=>e(d),K,(x,a)=>{var b=it(),R=n(b),Z=n(R,!0);r(R);var pe=c(R,2),ge=n(pe),ye=n(ge);O(ye,17,()=>e(a).meals.slice(0,3),K,(P,j)=>{var $=ee(),J=U($);{var je=le=>{var se=at(),de=n(se),Se=n(de);r(de),r(se),H(()=>{var he;F(de,1,`rounded-full h-3 w-3 sm:h-6 sm:w-6 p-0.5 bg-${e(j).type==="dinner"?"primary":e(j).type==="lunch"?"warning":e(j).type==="breakfast"?"secondary":"success"}-600`),_e(Se,"src",`/recipe_icons/${(((he=me.recipes[e(j).recipeId])==null?void 0:he.iconId)||"default")??""}.svg`)}),y(le,se)},He=u(()=>w(e(a).time,e(j)));S(J,le=>{e(He)&&le(je)})}y(P,$)});var Ce=c(ye,2);{var Ae=P=>{var j=rt(),$=n(j);r(j),H(J=>V($,`+${J??""}`),[()=>e(a).meals.filter(J=>w(e(a).time,J)).length-3]),y(P,j)},Re=u(()=>e(a).meals.filter(P=>w(e(a).time,P)).length>3);S(Ce,P=>{e(Re)&&P(Ae)})}r(ge),r(pe),r(b),H(()=>{F(b,1,`flex h-16 flex-col bg-neutral-50 dark:bg-neutral-900 pt-2 px-1 text-neutral-500 dark:text-neutral-200 hover:bg-neutral-100 focus:z-10 2 ${e(a).time.month===e(_).start.month?"bg-white text-neutral-500":"bg-neutral-50 text-neutral-900"} 3 ${e(a).time.month===e(s).month&&e(a).time.day===e(s).day&&e(a).time.year===e(s).year?"font-semibold text-secondary-600":""} 4 ${e(a).time.month===e(m).month&&e(a).time.day===e(m).day&&e(a).time.year===e(m).year?"font-semibold text-primary-600":""}`),F(R,1,`ml-auto 5 ${e(a).time.month===e(s).month&&e(a).time.day===e(s).day&&e(a).time.year===e(s).year?"flex h-6 w-6 items-center justify-center rounded-full text-secondary-50 bg-secondary-600":""} 6 ${e(a).time.month===e(m).month&&e(a).time.day===e(m).day&&e(a).time.year===e(m).year?"flex h-6 w-6 items-center justify-center rounded-full text-primary-50 bg-primary-600":""} 7 `),V(Z,e(a).time.day)}),Q("click",b,()=>G(e(a).time)),y(x,b)}),y(i,l)}),r(ce),r(X),r(N),r(o);var fe=c(o,2);{var ke=i=>{{let d=u(()=>e(s).toMillis());ve(i,{get date(){return e(d)},handleHide:()=>z(k,!1)})}};S(fe,i=>{e(k)&&i(ke)})}var be=c(fe,2),ie=n(be),ne=n(ie),Me=n(ne,!0);r(ne);var Ee=c(ne,2);{var De=i=>{Ye(i,{handleClick:()=>z(k,!0),id:"addMeal",color:"neutral",mode:"outline",size:"sm",children:(d,l)=>{Oe();var g=Ve("Add Meal");y(d,g)},$$slots:{default:!0}})},Ie=u(()=>e(s).toMillis()>=e(m).minus({day:1}).toMillis()&&e(p).permissions.mealEvents.canCreate);S(Ee,i=>{e(Ie)&&i(De)})}r(ie);var Te=c(ie,2);O(Te,17,()=>e(E),K,(i,d)=>{var l=ee(),g=U(l);{var x=b=>{Ue(b,{get meal(){return e(d)}})},a=u(()=>w(e(s),e(d),!0));S(g,b=>{e(a)&&b(x)})}y(i,l)}),r(be),H(i=>V(Me,i),[()=>e(s).toFormat("MMMM dd, yyyy")]),y(f,L),ae()}re(["click"]);export{kt 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.