PageSourceSearch

https://app.teacherstack.com/assets/LunchChoiceView-BRamB6Ga.js

js teacherstack.com collected 2026-10-02 00:20:08 UTC 25,109 bytes, 1 lines download raw bytes

1import{d as me,r as p,z as F,e as $,m as k,c as Y,p as _,F as ce,f as o,w as s,h as g,k as b,V as D,g as u,D as G,j as E,C as Ye,J as ve,au as Ge,q as U,t as q,_ as Ve,a as ue,o as qe,P as Qe,N as Xe,H as he,B as ke,A as Ze,y as et,O as ye}from"./index-CBp6Fk2f.js";import{F as tt}from"./FullScreenDialog-BLeQfpcR.js";import{S as ot}from"./SimpleDatePickerDialog-Cxm38UnV.js";import{T as be}from"./TiptapLessonEditor-BiGjDYzv.js";import{C as De,L as at}from"./LunchChoiceCore-BbGO410Q.js";import{g as nt}from"./utils-Ckt3hAW8.js";import{V as st}from"./VDialog-C7IX1Q-r.js";import{V as oe,b as lt,c as it}from"./VCard-BwTJTxPy.js";import{V as _e,a as Se}from"./VToolbar-JNXB9lpf.js";import{V as ae}from"./VSpacer-BDtmUuvk.js";import{V as rt}from"./VChip-ckHIamIn.js";import{u as ut,s as te,S as Ce}from"./teacher-CPNXO_J6.js";import{u as dt}from"./useSerializedSave-BIaKDMC6.js";import{u as ct}from"./useImageDeletion-BBvlVnF5.js";import{a as z}from"./index-hyNd5_tp.js";import{S as mt}from"./SaveAttendanceDialog-DTbReiFn.js";import{a as gt,S as ft}from"./background-sets-ml-4zZJM.js";import{B as pt}from"./BackgroundDialog-DVHV7i5t.js";import{g as vt}from"./dateUtils-DJqbw22C.js";import{V as ht}from"./VAlert-QXd_RM7E.js";import{V as de}from"./VSwitch-CLgMycwb.js";import{V as we}from"./VSlider-BR-S18_N.js";import{V as kt}from"./VContainer-Da_Cj4vb.js";import"./useFullscreen-JtdWITjb.js";import"./VNavigationDrawer-CGv9LJqd.js";import"./VSelect-Bl3M8v4D.js";import"./VInput-WTGrqqcB.js";import"./index-BoX4YJIA.js";import"./VTextField-ZW4o5WaU.js";import"./VMenu-Wxz-YB2X.js";import"./dialog-transition-CYM4ydOJ.js";import"./VCheckboxBtn-4LcrPuYH.js";import"./VSelectionControl-CvZsAqyS.js";import"./VBadge-D6IziQMm.js";import"./VPicker-e1j0DKLf.js";import"./index-D1ToClUR.js";import"./index-CvSayD2m.js";import"./index-D5-FSo2W.js";import"./index-CNxho-Kv.js";import"./listItemColor-CSZk42Qn.js";import"./imageUtils-Dm-_osA-.js";import"./ImageLibraryDialog-Bew4a6Xm.js";import"./SimpleDeleteDialog-BM85g2sS.js";import"./VTabs-C07Wqp8S.js";import"./VSlideGroup-Ah-Z1DhR.js";import"./useTouchDrag-DIWo9Opp.js";import"./constants-C1Yk8m4g.js";import"./vuedraggable.umd-Ba-I_y6G.js";import"./tap-D3VwnMlK.js";import"./audio-DiANbat8.js";/* empty css              */import"./index-t--hEgTQ.js";import"./VCheckbox-WK7WYZB2.js";import"./ColorPicker-DoZZ2vyG.js";import"./VRow-lha5VhOv.js";import"./VFileInput-D6dXbKLy.js";const yt=me({__name:"CalendarView",props:{modelValue:{type:Boolean},selectedDate:{}},emits:["update:modelValue","selectDate"],setup(j,{emit:B}){const M=j,n=B,v=p(void 0);F(()=>M.modelValue,C=>{C&&(v.value=new Date(M.selectedDate+"T00:00:00"))}),F(()=>M.selectedDate,C=>{v.value=new Date(C+"T00:00:00")});function y(C){const w=C.toISOString().split("T")[0];n("selectDate",w)}function S(){n("update:modelValue",!1)}return(C,w)=>(k(),$(ot,{open:j.modelValue,"model-value":v.value,"show-today-button":!0,onSelect:y,onClose:S},null,8,["open","model-value"]))}}),Ct={class:"mb-8"},wt={class:"d-flex align-center justify-space-between mb-2"},Vt={class:"d-flex align-center justify-space-between mb-4"},bt={key:0,class:"default-choices-grid mb-4"},Dt={class:"default-choice-content"},_t={key:2,class:"choice-card-name mt-2"},St={class:"choice-actions mt-2"},Lt={key:1,class:"empty-defaults-state"},At=me({__name:"DefaultsDialog",props:{modelValue:{type:Boolean},defaultMorningWork:{},defaultLunchChoices:{}},emits:["update:modelValue","save"],setup(j,{emit:B}){const M=j,n=B,v=p(""),y=p([]),S=p(!1),C=p(null),w=p(null),W=Y({get:()=>M.modelValue,set:V=>n("update:modelValue",V)});F(()=>M.modelValue,V=>{V&&(v.value=M.defaultMorningWork,y.value=JSON.parse(JSON.stringify(M.defaultLunchChoices)))});const P=()=>{C.value=null,w.value=null,S.value=!0},x=V=>{C.value={...y.value[V]},w.value=V,S.value=!0},Q=V=>{y.value.splice(V,1)},X=V=>{w.value!==null?y.value[w.value]={name:V.name,image_uri:V.image_uri}:y.value.push({name:V.name,image_uri:V.image_uri}),S.value=!1},ne=()=>{w.value!==null&&y.value.splice(w.value,1),S.value=!1},se=()=>{n("save",{defaultMorningWork:v.value,defaultLunchChoices:y.value}),W.value=!1},Z=()=>{W.value=!1};return(V,d)=>(k(),_(ce,null,[o(st,{modelValue:W.value,"onUpdate:modelValue":d[1]||(d[1]=L=>W.value=L),"max-width":"900px"},{default:s(()=>[o(oe,null,{default:s(()=>[o(_e,{color:"primary",density:"compact"},{default:s(()=>[o(Se,null,{default:s(()=>[...d[3]||(d[3]=[g("Set Defaults",-1)])]),_:1}),o(ae),o(b,{icon:"",onClick:Z},{default:s(()=>[o(D,null,{default:s(()=>[...d[4]||(d[4]=[g("mdi-close",-1)])]),_:1})]),_:1})]),_:1}),o(lt,{class:"pa-8 defaults-dialog-content"},{default:s(()=>[u("div",Ct,[d[5]||(d[5]=u("h4",{class:"text-h6 mb-2"},"Default Morning Work",-1)),d[6]||(d[6]=u("p",{class:"text-caption text-grey mb-4"}," This content will appear on new days automatically ",-1)),o(be,{modelValue:v.value,"onUpdate:modelValue":d[
10]||(d[0]=L=>v.value=L),toolbar:"basic",placeholder:"Default morning work..."},null,8,["modelValue"])]),o(G,{class:"my-8"}),u("div",null,[u("div",wt,[d[9]||(d[9]=u("h4",{class:"text-h6 mb-0"},"Default Lunch Choices",-1)),o(b,{variant:"outlined",color:"primary",onClick:P,disabled:y.value.length>=6,class:"add-default-btn"},{default:s(()=>[o(D,{class:"mr-3"},{default:s(()=>[...d[7]||(d[7]=[g("mdi-plus-circle",-1)])]),_:1}),d[8]||(d[8]=g(" Add Choice ",-1))]),_:1},8,["disabled"])]),u("div",Vt,[d[12]||(d[12]=u("p",{class:"text-caption text-grey mb-0"}," These choices will appear on new days (students not assigned) ",-1)),y.value.length>=6?(k(),$(rt,{key:0,color:"warning",variant:"tonal",size:"small"},{default:s(()=>[o(D,{start:"",size:"small"},{default:s(()=>[...d[10]||(d[10]=[g("mdi-alert",-1)])]),_:1}),d[11]||(d[11]=g(" Max 6 reached ",-1))]),_:1})):E("",!0)]),y.value.length>0?(k(),_("div",bt,[(k(!0),_(ce,null,Ye(y.value,(L,H)=>(k(),_("div",{key:H,class:"default-choice-card"},[u("div",Dt,[L.image_uri?(k(),$(ve,{key:0,size:"56",class:"choice-avatar"},{default:s(()=>[o(Ge,{src:U(nt)(L.image_uri)},null,8,["src"])]),_:2},1024)):(k(),$(ve,{key:1,color:"grey-lighten-3",size:"56",class:"choice-avatar"},{default:s(()=>[o(D,{size:"32"},{default:s(()=>[...d[13]||(d[13]=[g("mdi-food-fork-drink",-1)])]),_:1})]),_:1})),L.name?(k(),_("h4",_t,q(L.name),1)):E("",!0),u("div",St,[o(b,{icon:"mdi-pencil",size:"small",variant:"tonal",onClick:a=>x(H)},null,8,["onClick"]),o(b,{icon:"mdi-delete",size:"small",variant:"tonal",color:"error",onClick:a=>Q(H)},null,8,["onClick"])])])]))),128))])):(k(),_("div",Lt,[o(D,{size:"48",color:"grey-lighten-1"},{default:s(()=>[...d[14]||(d[14]=[g("mdi-food-fork-drink",-1)])]),_:1}),d[15]||(d[15]=u("p",{class:"text-body-2 text-grey mt-2 mb-0"},[g(" No default choices configured yet."),u("br"),g(" New days will start empty. ")],-1))]))])]),_:1}),o(it,{class:"px-8 pb-6 pt-4"},{default:s(()=>[o(ae),o(b,{variant:"text",size:"large",onClick:Z},{default:s(()=>[...d[16]||(d[16]=[g("Cancel",-1)])]),_:1}),o(b,{color:"primary",variant:"elevated",size:"large",onClick:se,class:"px-6"},{default:s(()=>[o(D,{class:"mr-3"},{default:s(()=>[...d[17]||(d[17]=[g("mdi-content-save",-1)])]),_:1}),d[18]||(d[18]=g(" Save Defaults ",-1))]),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue"]),o(De,{modelValue:S.value,"onUpdate:modelValue":d[2]||(d[2]=L=>S.value=L),choice:C.value,onSave:X,onDelete:ne},null,8,["modelValue","choice"])],64))}}),Mt=Ve(At,[["__scopeId","data-v-5b51b117"]]),Wt={class:"date-navigation"},xt={class:"settings-panel"},Tt={class:"setting-group"},It={class:"setting-group"},zt={key:0,class:"setting-group"},Ut={class:"split-values"},Et={class:"setting-group"},$t={class:"setting-group"},Bt={class:"setting-group"},Nt={class:"setting-group"},Rt={class:"setting-group"},Ft={class:"presentation-container"},jt={key:0,class:"loading-container"},Pt={key:1,class:"no-content-warning"},Ht={key:2,class:"content-layout"},Ot={class:"morning-work-content"},Kt={class:"launch-container"},Jt={class:"launch-content"},Yt={class:"empty-action"},Gt=me({__name:"LunchChoiceView",setup(j){const B=()=>`${Date.now()}-${Math.random().toString(36).substr(2,9)}`,M=et(),n=ut(),v=p(vt()),y=p(!1),S=p(!1),C=p(null),w=p(!1),W=p(""),P=p(!1),x=ue({default_morning_work:"",default_lunch_choices:[]}),Q=p(!0),X=p(!0),ne=()=>{var l;const t=(l=n==null?void 0:n.selectedClass)==null?void 0:l.id;if(!t)return;const e=te.getItem({key:te.getClassKey(Ce.LUNCH_CHOICE_SELECTED_DATE,t),defaultValue:null});if(e){const m=new Date(e+"T00:00:00"),i=new Date;i.setHours(0,0,0,0),m>=i&&(v.value=e)}};F(v,t=>{var l;const e=(l=n==null?void 0:n.selectedClass)==null?void 0:l.id;e&&te.setItem({key:te.getClassKey(Ce.LUNCH_CHOICE_SELECTED_DATE,e),defaultValue:new Date().toISOString().split("T")[0]},t)});const se=Y(()=>{const t=new Date(v.value+"T00:00:00"),e={weekday:"short",month:"short",day:"numeric",year:"numeric"};return t.toLocaleDateString("en-US",e)}),Z=Y(()=>{const t=new Map;if(!n.selectedClass)return t;for(const e of a.choices)for(const l of e.students)t.set(l.id,"present");for(const e of a.unassigned)t.set(e.id,"absent");return t}),V=t=>{const e=t.getFullYear(),l=String(t.getMonth()+1).padStart(2,"0"),m=String(t.getDate()).padStart(2,"0");return`${e}-${l}-${m}`},d=t=>{const e=new Date(v.value+"T00:00:00");e.setDate(e.getDate()+t),v.value=V(e)},L=()=>d(-1),H=()=>d(1),a=ue({dialog:!0,drawer:!0,choices:[],unassigned:[],drag:!1,showMorningWork:!0,showLunchChoice:!0,morningWorkContent:"",editMorningWork:!0}),c=ue({lunchChoiceFontSizeAdjustment:14,playAudio:!0,background:null,
1splitRatio:40}),ee=p(!1),A=p(null),N=p(!1),R=p(!1),ge=p(!1),O=p(!1),K=p(null),J=()=>{Q.value||(K.value&&clearTimeout(K.value),K.value=setTimeout(async()=>{var l,m;const t=(l=n==null?void 0:n.teacher)==null?void 0:l.id,e=(m=n==null?void 0:n.selectedClass)==null?void 0:m.id;if(!(!t||!e))try{await z.saveToolSettings(t,e,"lunch-choice",{default_morning_work:x.default_morning_work,default_lunch_choices:x.default_lunch_choices,showMorningWork:a.showMorningWork,showLunchChoice:a.showLunchChoice,playAudio:c.playAudio,fontSizeAdjustment:c.lunchChoiceFontSizeAdjustment,background:c.background,splitRatio:c.splitRatio})}catch(i){console.error("Error saving settings:",i)}},500))};F([()=>a.showMorningWork,()=>a.showLunchChoice,()=>c.lunchChoiceFontSizeAdjustment,()=>c.playAudio,()=>c.splitRatio],()=>J()),ct(t=>{const{imageKey:e}=t;a.choices.forEach(l=>{l.image_uri===e&&(l.image_uri=null)}),T()});const T=()=>{C.value&&clearTimeout(C.value),C.value=setTimeout(()=>{fe()},500)},Le=t=>{var m,i;const e=[];let l=((m=n.selectedClass)==null?void 0:m.students.slice())??[];for(const h of t){const f=[];for(const r of h.students||[]){const I=(i=n.selectedClass)==null?void 0:i.students.find(re=>re.id===r);I&&(f.push(I),l=l.filter(re=>re.id!==r))}f.sort((r,I)=>r.displayName.localeCompare(I.displayName)),e.push({_uid:B(),name:h.name,students:f,image_uri:h.image_uri})}return l.sort((h,f)=>h.displayName.localeCompare(f.displayName)),{choices:e,unassigned:l}},fe=dt(async()=>{var l,m;const t=(l=n==null?void 0:n.selectedClass)==null?void 0:l.id,e=(m=n==null?void 0:n.teacher)==null?void 0:m.id;if(!(!t||!e)){a.choices.forEach(i=>{i.students.sort((h,f)=>h.displayName.localeCompare(f.displayName))}),a.unassigned.sort((i,h)=>i.displayName.localeCompare(h.displayName));try{const i=a.choices.map(f=>({name:f.name,students:f.students.map(r=>r.id),image_uri:f.image_uri})),h={morning_work_content:a.morningWorkContent||"",choices:i};await z.saveLunchChoiceDay(e,t,v.value,h)}catch(i){console.error("Error saving lunch choice data:",i),W.value="Failed to save lunch choice data. Please try again.",w.value=!0}}}),le=async()=>{var l,m,i,h;const t=(l=n==null?void 0:n.selectedClass)==null?void 0:l.id,e=(m=n==null?void 0:n.teacher)==null?void 0:m.id;if(!(!t||!e)){S.value=!0;try{const f=await z.getLunchChoiceDay(e,t,v.value);if(f.morning_work_content&&typeof f.morning_work_content=="string"&&f.morning_work_content.trim()?(a.morningWorkContent=f.morning_work_content,a.editMorningWork=!1):(a.morningWorkContent="",a.editMorningWork=!0),f.choices&&f.choices.length>0){const{choices:r,unassigned:I}=Le(f.choices);a.choices=r,a.unassigned=I}else a.choices=[],a.unassigned=((i=n.selectedClass)==null?void 0:i.students.slice().sort((r,I)=>r.displayName.localeCompare(I.displayName)))??[]}catch(f){console.error("Error loading lunch choice data:",f),W.value="Failed to load lunch choice data. Please refresh the page.",w.value=!0,a.choices=[],a.unassigned=((h=n.selectedClass)==null?void 0:h.students.slice())??[]}finally{S.value=!1}}};F(v,async()=>{X.value||await le()}),qe(async()=>{await pe(),Q.value=!1,ne(),await le(),X.value=!1,a.dialog=!0}),Qe(()=>{C.value&&(clearTimeout(C.value),fe()),K.value&&clearTimeout(K.value)});const Ae=Y(()=>ge.value?!1:a.choices.some(t=>t.students.length>0)),Me=()=>{Ae.value?(R.value=!0,N.value=!0):ie()},ie=()=>{a.dialog=!1,M.back()},We=()=>{N.value=!1,R.value=!1,ie()},xe=()=>{N.value=!1,R.value=!1},Te=()=>{const t=R.value;N.value=!1,R.value=!1,ge.value=!0,t&&ie()},Ie=()=>{a.dialog=!0},ze=t=>{a.choices=t,T()},Ue=t=>{a.unassigned=t,T()},Ee=()=>{if(a.choices.length>=6){alert("You can have a maximum of 6 lunch choices to ensure they all fit on screen.");return}A.value=null,ee.value=!0},$e=t=>{A.value={name:t.name,image_uri:t.image_uri},ee.value=!0},Be=t=>{if(A.value){const e=a.choices.find(l=>l.name===A.value.name&&l.image_uri===A.value.image_uri);e&&(e.name=t.name,e.image_uri=t.image_uri,ye("lunch_choice_update","lunch_choice",{name:t.name,image_path:t.image_uri||""}))}else a.choices.push({_uid:B(),name:t.name,students:[],image_uri:t.image_uri}),ye("lunch_choice_add","lunch_choice",{name:t.name,image_uri:t.image_uri});T(),A.value=null},Ne=()=>{if(A.value){const t=a.choices.find(e=>e.name===A.value.name&&e.image_uri===A.value.image_uri);if(t){a.choices=a.choices.filter(e=>e!==t);for(const e of t.students)a.unassigned.push(e);T()}}A.value=null},Re=Y(()=>n.teacherImages.filter(t=>t.category==="background")),Fe=async t=>{c.background=t,O.value=!1,J()},je=async t=>{var e,l;if(n.teacher)try{const m=await z.createTeacherImage(n.teacher.id,"background",[t],void 0),i=Array.isArray(m)?m[0]:m;n.teacherImages=await z.getTeacherImages(n.teacher.id),c.background={type:"image",value:i.key,mode:"cover"},O.value=!1,J()}catch(m){console.error("Failed to upload background image:",m),W.value=((l=(e=m==null?void 0:m.response)==null?void 0:e.data)==null?void 0:l.message)||"Failed to upload background image. Please try again.",w.value=!0}},Pe=t=>{var e,l;((e=c.background)==null?void 0:e.type)==="image"&&((l=c.background)==null?void 0:l.value)===t&&(c.background=null,J())},He=()=>{c.background=null,J()},pe=async()=>{var l,m;const t=(l=n==null?void 0:n.teacher)==null?void 0:l.id,e=(m=n==null?void 0:n.selectedClass)==null?void 0:m.id;if(!(!t||!e))try{const i=await z.getToolSettings(t,e,"lunch-choice");i.default_morning_work!==void 0&&(x.default_morning_work=i.default_morning_work),i.default_lunch_choices!==void 0&&(x.default_lunch_choices=i.default_lunch_choices),i.showMorningWork!==void 0&&(a.showMorningWork=i.showMorningWork
1),i.showLunchChoice!==void 0&&(a.showLunchChoice=i.showLunchChoice),i.playAudio!==void 0&&(c.playAudio=i.playAudio),i.fontSizeAdjustment!==void 0&&(c.lunchChoiceFontSizeAdjustment=i.fontSizeAdjustment),i.background!==void 0&&(c.background=i.background),i.splitRatio!==void 0&&(c.splitRatio=i.splitRatio)}catch(i){console.error("Error loading settings:",i)}},Oe=async()=>{await pe(),P.value=!0},Ke=async t=>{var m,i;const e=(m=n==null?void 0:n.teacher)==null?void 0:m.id,l=(i=n==null?void 0:n.selectedClass)==null?void 0:i.id;if(!(!e||!l))try{x.default_morning_work=t.defaultMorningWork,x.default_lunch_choices=t.defaultLunchChoices,await z.saveToolSettings(e,l,"lunch-choice",{default_morning_work:t.defaultMorningWork,default_lunch_choices:t.defaultLunchChoices,showMorningWork:a.showMorningWork,showLunchChoice:a.showLunchChoice,playAudio:c.playAudio,fontSizeAdjustment:c.lunchChoiceFontSizeAdjustment,background:c.background,splitRatio:c.splitRatio}),await Je()||await le()}catch(h){console.error("Error saving settings:",h),W.value="Failed to save settings. Please try again.",w.value=!0}},Je=async()=>{var l,m;const t=(l=n==null?void 0:n.teacher)==null?void 0:l.id,e=(m=n==null?void 0:n.selectedClass)==null?void 0:m.id;if(!t||!e)return!1;try{return(await z.getLunchChoiceDay(t,e,v.value)).id!==void 0}catch{return!1}};return(t,e)=>{var l,m,i,h,f;return k(),_(ce,null,[o(yt,{modelValue:y.value,"onUpdate:modelValue":e[0]||(e[0]=r=>y.value=r),"selected-date":v.value,"class-id":(m=(l=U(n))==null?void 0:l.selectedClass)==null?void 0:m.id,"teacher-id":(h=(i=U(n))==null?void 0:i.teacher)==null?void 0:h.id,onSelectDate:e[1]||(e[1]=r=>{v.value=r,y.value=!1})},null,8,["modelValue","selected-date","class-id","teacher-id"]),o(Mt,{modelValue:P.value,"onUpdate:modelValue":e[2]||(e[2]=r=>P.value=r),"default-morning-work":x.default_morning_work,"default-lunch-choices":x.default_lunch_choices,onSave:Ke},null,8,["modelValue","default-morning-work","default-lunch-choices"]),o(De,{modelValue:ee.value,"onUpdate:modelValue":e[3]||(e[3]=r=>ee.value=r),choice:A.value,onSave:Be,onDelete:Ne},null,8,["modelValue","choice"]),o(mt,{open:N.value,students:((f=U(n).selectedClass)==null?void 0:f.students)||[],"inferred-statuses":Z.value,"allow-discard":R.value,onClose:xe,onSaved:Te,onDiscard:We},null,8,["open","students","inferred-statuses","allow-discard"]),o(U(pt),{modelValue:O.value,"onUpdate:modelValue":e[4]||(e[4]=r=>O.value=r),"current-background":c.background,"teacher-images":Re.value,"css-themes":U(gt),"allow-upload":!0,"allow-delete":!0,onSelect:Fe,onUpload:je,onDeleted:Pe},null,8,["modelValue","current-background","teacher-images","css-themes"]),o(tt,{modelValue:a.dialog,"onUpdate:modelValue":e[17]||(e[17]=r=>a.dialog=r),title:"Lunch Choice","include-settings":"","toolbar-position-absolute":"",onClose:Me},{toolbar:s(()=>[o(ae),u("div",Wt,[o(b,{icon:"",variant:"text",onClick:L,class:"nav-btn"},{default:s(()=>[o(D,null,{default:s(()=>[...e[20]||(e[20]=[g("mdi-chevron-left",-1)])]),_:1})]),_:1}),o(b,{variant:"text",class:"date-display-btn mx-1",onClick:e[5]||(e[5]=r=>y.value=!0)},{default:s(()=>[g(q(se.value),1)]),_:1}),o(b,{icon:"",variant:"text",onClick:H,class:"nav-btn"},{default:s(()=>[o(D,null,{default:s(()=>[...e[21]||(e[21]=[g("mdi-chevron-right",-1)])]),_:1})]),_:1})])]),settingsContent:s(()=>[u("div",xt,[u("div",Tt,[o(de,{label:"Show Morning Work",modelValue:a.showMorningWork,"onUpdate:modelValue":e[6]||(e[6]=r=>a.showMorningWork=r),onChange:T,color:"primary",class:"setting-switch","hide-details":"",density:"compact"},null,8,["modelValue"])]),u("div",It,[o(de,{label:"Show Lunch Choice",modelValue:a.showLunchChoice,"onUpdate:modelValue":e[7]||(e[7]=r=>a.showLunchChoice=r),onChange:T,color:"primary",class:"setting-switch","hide-details":"",density:"compact"},null,8,["modelValue"])]),a.showMorningWork&&a.showLunchChoice?(k(),_("div",zt,[e[22]||(e[22]=u("label",{class:"setting-label"},"Layout Split",-1)),e[23]||(e[23]=u("div",{class:"split-labels"},[u("span",null,"Morning Work"),u("span",null,"Lunch Choice")],-1)),o(we,{modelValue:c.splitRatio,"onUpdate:modelValue":e[8]||(e[8]=r=>c.splitRatio=r),min:20,step:5,max:65,color:"primary","track-color":"grey-lighten-3","hide-details":"",class:"split-slider"},null,8,["modelValue"]),u("div",Ut,[u("span",null,q(c.splitRatio)+"%",1),u("span",null,q(100-c.splitRatio)+"%",1)])])):E("",!0),u("div",Et,[o(de,{label:"Play Audio",modelValue:c.playAudio,"onUpdate:modelValue":e[9]||(e[9]=r=>c.playAudio=r),color:"primary",class:"setting-switch","hide-details":"",density:"compact"},null,8,["modelValue"])]),u("div",$t,[e[24]||(e[24]=u("label",{class:"setting-label"},"Font Size",-1)),o(we,{modelValue:c.lunchChoiceFontSizeAdjustment,"onUpdate:modelValue":[e[10
1]||(e[10]=r=>c.lunchChoiceFontSizeAdjustment=r),e[11]||(e[11]=r=>T())],min:10,step:1,max:25,color:"primary","track-color":"grey-lighten-3","thumb-label":"",class:"font-size-slider","hide-details":""},null,8,["modelValue"])]),o(G,{class:"my-3"}),u("div",Bt,[e[27]||(e[27]=u("h3",{class:"setting-section-title"},"Background",-1)),o(b,{color:"primary",variant:"outlined",block:"","prepend-icon":"mdi-palette",onClick:e[12]||(e[12]=r=>O.value=!0),class:"mb-2"},{default:s(()=>[...e[25]||(e[25]=[g(" Change Background ",-1)])]),_:1}),c.background?(k(),$(b,{key:0,color:"secondary",variant:"text",block:"","prepend-icon":"mdi-close",onClick:He,size:"small"},{default:s(()=>[...e[26]||(e[26]=[g(" Remove Background ",-1)])]),_:1})):E("",!0)]),o(G,{class:"my-3"}),u("div",Nt,[e[30]||(e[30]=u("h3",{class:"setting-section-title"},"Default Settings",-1)),e[31]||(e[31]=u("p",{class:"setting-description text-caption text-grey"}," Set defaults for new days ",-1)),o(b,{variant:"outlined",color:"primary",onClick:Oe,size:"small"},{default:s(()=>[o(D,{class:"mr-2"},{default:s(()=>[...e[28]||(e[28]=[g("mdi-cog",-1)])]),_:1}),e[29]||(e[29]=g(" Set Defaults ",-1))]),_:1})]),o(G,{class:"my-3"}),u("div",Rt,[e[34]||(e[34]=u("h3",{class:"setting-section-title"},"Attendance",-1)),e[35]||(e[35]=u("p",{class:"setting-description text-caption text-grey"}," Save today's lunch choices as attendance ",-1)),o(b,{variant:"elevated",color:"success",onClick:e[13]||(e[13]=r=>N.value=!0),size:"small"},{default:s(()=>[o(D,{class:"mr-2"},{default:s(()=>[...e[32]||(e[32]=[g("mdi-account-check",-1)])]),_:1}),e[33]||(e[33]=g(" Save Attendance ",-1))]),_:1})])])]),default:s(()=>[u("div",Ft,[o(U(ft),{background:c.background||null},null,8,["background"]),S.value?(k(),_("div",jt,[o(Xe,{indeterminate:"",color:"primary",size:"64"}),e[36]||(e[36]=u("p",{class:"mt-4 text-h6"},"Loading lunch choice data...",-1))])):!a.showMorningWork&&!a.showLunchChoice?(k(),_("div",Pt,[o(ht,{type:"warning",variant:"outlined",class:"warning-alert"},{default:s(()=>[o(D,{class:"mr-2"},{default:s(()=>[...e[37]||(e[37]=[g("mdi-alert",-1)])]),_:1}),e[38]||(e[38]=g(" Please enable Morning Work or Lunch Choice in the settings to display content ",-1))]),_:1})])):(k(),_("div",Ht,[a.showMorningWork?(k(),_("div",{key:0,class:ke(["morning-work-section",{"full-width":!a.showLunchChoice}]),style:he(a.showLunchChoice?{flex:`0 0 ${c.splitRatio}%`}:{})},[o(oe,{class:"morning-work-card",elevation:"4"},{default:s(()=>[o(_e,{color:"transparent",density:"compact",class:"morning-work-toolbar"},{default:s(()=>[o(D,{class:"section-icon",color:"orange-darken-1"},{default:s(()=>[...e[39]||(e[39]=[g("mdi-white-balance-sunny",-1)])]),_:1}),o(Se,{class:"section-title"},{default:s(()=>[...e[40]||(e[40]=[g("Morning Work",-1)])]),_:1}),o(ae),a.editMorningWork?E("",!0):(k(),$(b,{key:0,icon:"",onClick:e[14]||(e[14]=r=>a.editMorningWork=!0),variant:"text",class:"edit-btn"},{default:s(()=>[o(D,null,{default:s(()=>[...e[41]||(e[41]=[g("mdi-pencil",-1)])]),_:1})]),_:1})),a.editMorningWork?(k(),$(b,{key:1,icon:"",onClick:e[15]||(e[15]=r=>{a.editMorningWork=!1,T()}),color:"primary",variant:"text",class:"save-btn"},{default:s(()=>[o(D,null,{default:s(()=>[...e[42]||(e[42]=[g("mdi-content-save",-1)])]),_:1})]),_:1})):E("",!0)]),_:1}),o(G),u("div",Ot,[o(be,{modelValue:a.morningWorkContent,"onUpdate:modelValue":e[16]||(e[16]=r=>a.morningWorkContent=r),readonly:!a.editMorningWork,toolbar:"basic",fill:"",bordered:!1,placeholder:"Add morning work...",class:"morning-work-editor",onBlur:T},null,8,["modelValue","readonly"])])]),_:1})],6)):E("",!0),a.showLunchChoice?(k(),_("div",{key:1,class:ke(["lunch-choice-section",{"full-width":!a.showMorningWork}]),style:he(a.showMorningWork?{flex:`0 0 ${100-c.splitRatio}%`}:{})},[o(oe,{class:"lunch-choice-card",elevation:"4"},{default:s(()=>{var r;return[o(at,{choices:a.choices,"unassigned-students":a.unassigned,"all-students":((r=U(n).selectedClass)==null?void 0:r.students)||[],compact:!1,"allow-editing":!0,"play-audio":c.playAudio,"font-size-adjustment":c.lunchChoiceFontSizeAdjustment,"show-header":!0,"onUpdate:choices":ze,"onUpdate:unassignedStudents":Ue,onAddChoice:Ee,onEditChoice:$e},null,8,["choices","unassigned-students","all-students","play-audio","font-size-adjustment"])]}),_:1})],6)):E("",!0)]))])]),_:1},8,["modelValue"]),o(kt,{class:"main-content"},{default:s(()=>[o(oe,{class:"tool-card",elevation:"4"},{default:s(()=>[u("div",Kt,[u("div",Jt,[o(D,{class:"empty-icon",color:"primary"},{default:s(()=>[...e[43]||(e[43]=[g("mdi-food-fork-drink",-1)])]),_:1}),e[46]||(e[46]=u("h1",{class:"empty-title"},"Lunch Choice",-1)),e[47]||(e[47]=u("p",{class:"empty-description"}," Create lunch options and let students make their choices. Perfect for managing daily lunch selections in your classroom. ",-1)),u("div",Yt,[o(b,{color:"primary",variant:"elevated",onClick:e[18]||(e[18]=r=>Ie()),class:"launch-btn",size:"large"},{default:s(()=>[o(D,{class:"mr-2"},{default:s(()=>[...e[44]||(e[44]=[g("mdi-rocket-launch",-1)])]),_:1}),e[45]||(e[45]=g(" Launch Lunch Choice ",-1))]),_:1})])])])]),_:1}),o(Ze,{modelValue:w.value,"onUpdate:modelValue":e[19]||(e[19]=r=>w.value=r),color:"error",timeout:5e3,location:"top"},{default:s(()=>[g(q(W.value),1)]),_:1},8,["modelValue"])]),_:1})],64)}}}),Zo=Ve(Gt,[["__scopeId","data-v-ac7a390d"]]);export{Zo 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.