import{d as F,u as Y,a as Q,r as S,c as D,o as j,A as J,b as _,e as o,f as t,g as a,h as l,w as e,V as b,i as k,j as z,n as Z,t as y,k as R,l as L,m as T,F as C,p as M,q,s as G,D as I,v as E,x as U,y as O,z as B,B as ee,C as te,E as ae,_ as W,G as H,H as le,I as K,J as se,K as re,L as ne,M as A,N as oe,O as ue}from"./main-BhFWIRV_.js";import{R as ie}from"./RecipeCard-ZQiVryVZ.js";import{V as de}from"./AddToShoppingDialog.vue_vue_type_script_setup_true_lang-ByrmCw9F.js";import"./KeywordsBar.vue_vue_type_script_setup_true_lang-9vWdzSaj.js";import"./PrivateRecipeBadge.vue_vue_type_script_setup_true_lang-CuYHMwhT.js";import"./BtnCopy.vue_vue_type_script_setup_true_lang-B_1A58TG.js";import"./VTooltip-CP00KBBq.js";import"./useFileApi-4KcBp6Fj.js";import"./number_utils-1sJWKMUK.js";import"./model_utils-CVQgSPL_.js";function X($){switch($){case"xs":return 1;case"sm":return 2;case"md":return 4;case"lg":return 4;case"xl":return 5;case"xxl":return 6;default:return 1}}const V=F({__name:"HorizontalRecipeWindow",props:{mode:{type:String,required:!0},skeletons:{type:Number,default:0}},setup($){const n=$,{t:i}=Y(),{name:v}=Q(),p=S(!0),w=S([]),P=S({}),g=S({}),N=D(()=>{switch(n.mode){case"recent":return i("Recently_Viewed");case"random":return i("Random Recipes");case"new":return i("New");case"rating":return i("Rating");case"keyword":return Object.keys(P.value).length>0?P.value.label:i("Keyword");case"created_by":return Object.keys(g.value).length>0?i("CreatedBy")+" "+g.value.displayName:i("CreatedBy")}}),c=D(()=>{switch(n.mode){case"recent":return"fa-solid fa-eye";case"random":return"fa-solid fa-dice";case"new":return"fa-solid fa-calendar-alt";case"rating":return"fa-solid fa-star";case"keyword":return"fa-solid fa-tags";case"created_by":return"fa-solid fa-user"}}),u=D(()=>X(v.value));j(()=>{f()});function f(){let s=new J,r={pageSize:16};switch(n.mode){case"recent":r.numRecent=16;break;case"random":r.random="true";break;case"new":r._new="true";break;case"rating":r.rating=4;break;case"keyword":s.apiKeywordList({random:"true",limit:"1"}).then(d=>{d.count>0?(P.value=d.results[0],r.keywords=[P.value.id],m(r)):p.value=!1});return;case"created_by":s.apiUserList({}).then(d=>{d.length>0?(g.value=d[Math.floor(Math.random()*d.length)],r.createdby=g.value.id,r.random="true",m(r)):p.value=!1});return}m(r)}function m(s){new J().apiRecipeList(s).then(d=>{n.mode=="new"?w.value=d.results.filter(h=>h._new):n.mode=="recent"?w.value=d.results.filter(h=>h.recent!="0"):w.value=d.results}).finally(()=>{p.value=!1})}let x=D(()=>{let s=[],r=[];for(const[d,h]of w?.value.entries())r.push(h),d%u.value==u.value-1&&(r.length>0&&s.push(r),r=[]);return r.length>0&&s.push(r),s});return(s,r)=>p.value||w.value.length>0?(t(),_(C,{key:0},[a(R,{justify:"space-between"},{default:e(()=>[a(b,null,{default:e(()=>[k("h4",null,[k("i",{class:Z(c.value+" fa-fw")},null,2),z(" "+y(N.value),1)])]),_:1})]),_:1}),L(x).length>0?(t(),l(R,{key:0,class:"mt-0"},{default:e(()=>[a(b,null,{default:e(()=>[a(T,{"show-arrows":""},{default:e(()=>[(t(!0),_(C,null,M(L(x),d=>(t(),l(q,{class:"pt-1 pb-1"},{default:e(()=>[a(R,{dense:""},{default:e(()=>[(t(!0),_(C,null,M(d,h=>(t(),l(b,{class:"pr-0 pl-0",key:h.id},{default:e(()=>[a(ie,{recipe:h,show_description:!0,show_keywords:!0},null,8,["recipe"])]),_:2},1024))),128))]),_:2},1024)]),_:2},1024))),256))]),_:1})]),_:1})]),_:1})):o("",!0),$.skeletons>0&&p.value?(t(),l(R,{key:1},{default:e(()=>[a(b,null,{default:e(()=>[a(T,null,{default:e(()=>[a(q,null,{default:e(()=>[a(R,null,{default:e(()=>[(t(!0),_(C,null,M($.skeletons,d=>(t(),l(b,null,{default:e(()=>[a(de,{elevation:3,type:"card"})]),_:1}))),256))]),_:1})]),_:1})]),_:1})]),_:1})]),_:1})):o("",!0)],64)):o("",!0)}}),ce={class:"d-flex"},fe={class:"flex-col align-self-start"},pe={class:"flex-col flex-grow-1 mt-auto mb-auto"},me={class:"flex-col align-self-end"},_e={key:0},ye={key:1},ve=F({__name:"HorizontalMealPlanWindow",setup($){const n=G(),{name:i}=Q(),v=S(!1),p=S(0);let w=D(()=>X(i.value));const P=D(()=>{let c=[];for(const u of Array(4).keys()){let f=I.now().plus({days:u});c.push({date:f,create_default_date:f.toISODate(),date_label:f.toLocaleString({weekday:"short",month:"2-digit",day:"2-digit",year:"2-digit"}),plan_entries:E().planList.filter(m=>I.fromJSDate(m.fromDate).startOf("day")<=f.startOf("day")&&I.fromJSDate(m.toDate!=null?m.toDate:m.fromDate).startOf("day")>=f.startOf("day"))})}return c});let g=D(()=>{let c=[],u=[];for(const[f,m]of P.value.entries())u.push(m),f%w.value==w.value-1&&(u.length>0&&c.push(u),u=[]);return u.length>0&&c.push(u),c});j(()=>{v.value=!0,E().refreshFromAPI(I.now().toJSDate(),I.now().plus({days:7}).toJSDate()).finally(()=>{v.value=!1})});function N(c){c.recipe&&n.push({name:"RecipeViewPage",params:{id:c.recipe.id}})}return(c,u)=>L(g).length>0?(t(),l(R,{key:0,class:"mt-0"},{default:e(()=>[a(b,null,{default:e(()=>[a(T,{modelValue:p.value,"onUpdate:modelValue":u[2]||(u[2]=f=>p.value=f)},{default:e(()=>[(t(!0),_(C,null,M(L(g),(f,m)=>(t(),l(q,{value:m,class:"pt-1 pb-1"},{default:e(()=>[a(R,null,{default:e(()=>[(t(!0),_(C,null,M(f,x=>(t(),l(b,null,{default:e(()=>[a(U,{density:"compact",class:"pt-0 pb-0"},{default:e(()=>[a(O,{class:"text-center"},{default:e(()=>[k("div",ce,[k("div",fe,[p.value!=0?(t(),l(B,{key:0,onClick:u[0]||(u[0]=s=>p.value--),icon:"fa-solid fa-chevron-left",size:"small"})):o("",!0)]),k("div",pe,y(x.date_label),1),k("div",me,[p.value+1p.value++),icon:"fa-solid fa-chevron-right",size:"small"})):o("",!0)])])]),_:2},1024),x.plan_entries.length>0?(t(),l(ee,{key:0})):o("",!0),(t(!0),_(C,null,M(x.plan_entries,s=>(t(),l(O,{key:s.id,onClick:r=>N(s),link:""},{prepend:e(()=>[s.recipe?.image?(t(),l(K,{key:0,image:s.recipe.image},null,8,["image"])):(t(),l(K,{key:1,image:se}))]),append:e(()=>[a(B,{icon:"",variant:"plain"},{default:e(()=>[a(H,{icon:"$menu"}),a(le,{activator:"parent"},{default:e(()=>[a(U,null,{default:e(()=>[a(O,{"prepend-icon":"$edit",link:""},{default:e(()=>[z(y(c.$t("Edit"))+" ",1),a(W,{model:"MealPlan",item:s},null,8,["item"])]),_:2},1024)]),_:2},1024)]),_:2},1024)]),_:2},1024)]),default:e(()=>[a(te,null,{default:e(()=>[s.recipe?(t(),_("span",_e,y(s.recipe.name),1)):(t(),_("span",ye,y(s.title),1))]),_:2},1024),a(ae,null,{default:e(()=>[z(y(s.mealType.name),1)]),_:2},1024),s.recipe?o("",!0):(t(),l(W,{key:0,model:"MealPlan",item:s},null,8,["item"]))]),_:2},1032,["onClick"]))),128)),a(O,{class:"text-center cursor-pointer",variant:"tonal"},{default:e(()=>[a(W,{model:"MealPlan","item-defaults":{fromDate:x.date.toJSDate()},"close-after-create":!1,"close-after-save":!1},null,8,["item-defaults"]),a(H,{icon:"$create",size:"small"})]),_:2},1024)]),_:2},1024)]),_:2},1024))),256))]),_:2},1024)]),_:2},1032,["value"]))),256))]),_:1},8,["modelValue"])]),_:1})]),_:1})):o("",!0)}}),ke={class:"text-wrap"},we={class:"text-wrap"},Pe=F({__name:"StartPage",setup($){const n=S(-1);return j(()=>{new J().apiRecipeList({pageSize:1}).then(v=>{n.value=v.count})}),(i,v)=>(t(),l(re,null,{default:e(()=>[L(ne)().deviceSettings.start_showMealPlan?(t(),l(ve,{key:0})):o("",!0),n.value==0?(t(),l(A,{key:1,class:"mt-5 mb-5"},{default:e(()=>[a(oe,{class:"text-center"},{default:e(()=>[v[0]||(v[0]=k("i",{class:"fa-solid fa-eye-slash"},null,-1)),z(" "+y(i.$t("search_no_recipes")),1)]),_:1,__:[0]}),a(ue,null,{default:e(()=>[a(A,{title:i.$t("Create Recipe"),variant:"outlined",to:{name:"ModelEditPage",params:{model:"Recipe"}},"prepend-icon":"$recipes","append-icon":"fa-solid fa-arrow-right",class:"mb-4"},{subtitle:e(()=>[k("p",ke,y(i.$t("CreateFirstRecipe")),1)]),_:1},8,["title"]),a(A,{title:i.$t("Import"),variant:"outlined",to:{name:"RecipeImportPage",params:{}},"prepend-icon":"$import","append-icon":"fa-solid fa-arrow-right"},{subtitle:e(()=>[k("p",we,y(i.$t("ImportFirstRecipe")),1)]),_:1},8,["title"])]),_:1})]),_:1})):o("",!0),n.value>0?(t(),_(C,{key:2},[n.value>0?(t(),l(V,{key:0,skeletons:4,mode:"recent"})):o("",!0),n.value>10?(t(),l(V,{key:1,skeletons:4,mode:"new"})):o("",!0),n.value>10?(t(),l(V,{key:2,skeletons:4,mode:"keyword"})):o("",!0),n.value>=5?(t(),l(V,{key:3,skeletons:4,mode:"random"})):o("",!0),n.value>10?(t(),l(V,{key:4,skeletons:4,mode:"created_by"})):o("",!0),n.value>10?(t(),l(V,{key:5,skeletons:2,mode:"rating"})):o("",!0),n.value>25?(t(),l(V,{key:6,skeletons:4,mode:"keyword"})):o("",!0),n.value>25?(t(),l(V,{key:7,skeletons:4,mode:"random"})):o("",!0),a(R,null,{default:e(()=>[a(b,{class:"text-center"},{default:e(()=>[a(B,{size:"x-large",rounded:"xl","prepend-icon":"$search",variant:"tonal",to:{name:"SearchPage",params:{query:""}}},{default:e(()=>[z(y(i.$t("View_Recipes")),1)]),_:1})]),_:1})]),_:1})],64)):o("",!0)]),_:1}))}});export{Pe as default};