1import{r as b,y as G,I as H,u as K,o as h,d as N,b as l,w as r,a,c as P,f as i,m as Q,h as I,e as u,D as X,t as d,i as Z,j as U,v as T,s as ee,F as te,z as j}from"./app-Dsu_9ZFr.js";import{_ as oe}from"./ConfirmationModal-Dw2ws9ke.js";import{_ as le}from"./Datatable-DgZ9ISbg.js";import{D as se}from"./DialogModal-C_cZHFZ-.js";import A from"./CloseDeleteIcon-H_stXYhA.js";import re from"./EditIcon-3lrK0TbV.js";import{_ as g}from"./InputError-DZewhVtc.js";import{_ as c}from"./InputLabel-BWamd_x9.js";import{_ as w}from"./PrimaryButton-CNrxCghz.js";import{_ as C}from"./SecondaryButton-D3ZBnHX0.js";import{_ as ae}from"./SelectInput-_BQJKGUX.js";import{_ as k}from"./SwitchInput-BcTX_p79.js";import{_ as V}from"./TextInput-AzIcQ4VN.js";import{_ as ie}from"./RichTextEditor-DctRR1LE.js";import{_ as ne}from"./AdminLayout-BhPmOhB0.js";import me from"./PerformanceIcon-CqcRLOml.js";import ue from"./WellbeingIcon-BL3WhJkR.js";import pe from"./MyCoursesIcon-PPse1Nm8.js";import"./Modal-DQiy6TZu.js";import"./Checkbox-BLfmsTpy.js";import"./Pagination-CxRqdIQA.js";import"./_plugin-vue_export-helper-DlAUqK2U.js";import"./AlertIcon-DHTuICF4.js";import"./useButtonClasses-DaBVTZqM.js";import"./DropdownLink-CnrycL-H.js";import"./x-CdR-vzUA.js";import"./createLucideIcon-CYXWfzkQ.js";import"./check-Dpc42qNa.js";import"./dynamic-import-helper-BheWnx7M.js";import"./ColourPicker-1D8mk1su.js";import"./ColourPicker.vue_vue_type_style_index_0_scoped_076f26d4_lang-SGHer6Zx.js";import"./filepond.esm-DpgIsP34.js";import"./CourseFormatHelpers-CHJOTa6W.js";import"./link-D6k6hEeb.js";import"./image-BNfuZpfY.js";import"./code-VSeZ_7jJ.js";import"./maximize-2-CpMa6Zny.js";import"./ImpersonatingBar-CSiu7E_c.js";import"./DashboardIcon-DDHz8ph2.js";import"./CompaniesIcon-Ci2fs5Bl.js";import"./UserIcon-CgYuJ9nl.js";import"./SettingsIcon-2iCRzdYc.js";import"./SubLinkMenu-H1JJlyZd.js";import"./ColourHelpers-BUTFcReV.js";import"./ReturnIcon-B3V341O-.js";import"./NotificationIcon-BuPA2t8R.js";import"./MessagesIcon-DlHxhtVy.js";import"./CourseCollectionIcon-Kpnn3Z3q.js";import"./DownloadIcon-DUotIHkd.js";import"./SyncIcon-BGTjby5c.js";import"./chart-column-j-gZZslH.js";import"./ApplicationMark-Cy_xIW--.js";import"./MenuIcon-Bim_zm4r.js";import"./AppHead-B6AtMQLP.js";import"./toastWatcher-CLWKU_yT.js";import"./ToastMessage-CZnctVTd.js";import"./TickIcon-DREWnL2M.js";import"./InfoIcon-C0aFXn2U.js";import"./useMediaPickerStore-FTvSyb2Y.js";import"./FileUpload-CLTMQXnO.js";import"./filepond-plugin-image-preview.min-T3029Ca-.js";import"./circle-check-big-DcvhH7uh.js";import"./file-CYOWkNIP.js";const de={class:"flex flex-wrap items-center justify-between w-full gap-4"},ge={class:"flex flex-wrap items-center gap-4"},ce=["dusk"],fe=["dusk"],_e=["dusk"],ye=["onClick"],be=["onClick"],he={class:"pb-6"},ve={class:"pb-6"},we={class:"pb-6"},Ce={class:"pb-6"},ke={class:"pb-6"},Ve={class:"pb-6"},xe={key:0,class:"pb-6"},Se={class:"flex items-center w-full gap-4 p-2 mt-2 border border-gray-300 rounded-lg shadow-inner"},Fe={class:"font-semibold"},$e={class:"mt-6"},De=["src","alt"],Ne={class:"mt-6"},Pe={class:"flex justify-between w-full"},Ie={class:"flex justify-between w-full"},Yt={__name:"Index",props:{categories:{required:!0,type:Object},filters:{type:Array}},setup(x){const S=x,B={title:{title:"Title",headingClasses:["text-left"]},type:{title:"Type"},premium:{title:"Premium"},wellbeing:{title:"Wellbeing"},performance:{title:"Performance"},courses_count:{title:"Course Count"},edit:{title:""},delete:{title:""}},p=b({search:S.filters.search,per_page:Number(S.filters.per_page??15)}),v=b(null),_=b(null),y=b(null),F=b(null);G(p,()=>{j.reload({data:{...p.value,page:1}})},{deep:!0});const n=H({categoryFormShowing:!1,categoryToDelete:null,deleteCategoryFormShowing:!1,selectedCategory:null,settings:{}}),M=t=>{typeof t=="string"&&(t=JSON.parse(t)),t===null&&(t={}),t={...t};const e=["wellbeing_hub","performance_hub","premium"];for(let s in e)typeof t[e[s]]>"u"&&(t[e[s]]=!1);return typeof t.tagline>"u"&&(t.tagline=null),t},$=()=>{o._method="post",o.description=null,o.image=null,o.settings={wellbeing_hub:!1,performance_hub:!1,premium:!1,tagline:null},o.title=null},D=t=>{$(),t!=null&&t.slug?(o._method="put",o.description=t.description,o.settings=M(t.settings),o.title=t.title,F.value=t.image,n.selectedCategory=t):n.selectedCategory=null,v.value=null,y.value=null,n.categoryFormShowing=!0},o=K({_method:"post",description:"",image:null,settings:{wellbeing_hub:!1,performance_hub:!1,premium:!1,tagline:null},title:""}),W=t=>{o.settings.premium=t,t&&(o.settings.wellbeing_hub=!1,o.settings.performance_hub=!1)},z=t=>
1{o.settings.wellbeing_hub=t,t&&(o.settings.premium=!1)},E=t=>{o.settings.performance_hub=t,t&&(o.settings.premium=!1)},f=()=>{n.categoryFormShowing=!1,n.categoryToDelete=null,n.deleteCategoryFormShowing=!1,n.selectedCategory=null,o.clearErrors(),$()},Y=()=>{const t={category:n.selectedCategory!==null?n.selectedCategory.slug:null,description:o.description,image:o.image,settings:o.settings,title:o.title},e={onError:s=>console.warn(s),onSuccess:()=>f()};o.post(route("client-management.course-categories."+(n.selectedCategory?"update":"store"),t),e)},O=t=>{n.deleteCategoryFormShowing=!0,n.categoryToDelete=t},R=()=>{j.delete(route("client-management.course-categories.destroy",{category:n.categoryToDelete.slug}),{onSuccess:()=>f()})},q=()=>{_.value.click()},J=()=>{const t=_.value.files[0];if(!t)return;const e=new FileReader;e.onload=s=>{y.value=s.target.result,v.value=_.value.files[0].name,o.image=_.value.files[0]},e.readAsDataURL(t)},L=t=>t==="wellbeing"?ue:t==="performance"?me:pe;return(t,e)=>(h(),N(te,null,[l(ne,{title:"Course categories"},{default:r(()=>[a("div",null,[a("div",de,[a("div",ge,[l(V,{class:"w-full md:w-64",type:"text",placeholder:"Search categories by title...",modelValue:p.value.search,"onUpdate:modelValue":e[0]||(e[0]=s=>p.value.search=s)},null,8,["modelValue"]),l(ae,{class:"w-full md:w-32",modelValue:p.value.per_page,"onUpdate:modelValue":e[1]||(e[1]=s=>p.value.per_page=s),options:[{label:15,value:15},{label:25,value:25},{label:50,value:50}]},null,8,["modelValue"]),p.value.search||p.value.per_page!==15?(h(),P(i(Q),{key:0,href:t.route("client-management.course-categories.index")},{default:r(()=>[l(A,{class:"h-5"})]),_:1},8,["href"])):I("",!0)]),l(w,{dusk:"add-category-button",onClick:D},{default:r(()=>e[5]||(e[5]=[u(" Add category ")])),_:1})]),l(le,{headings:B,rows:x.categories},{type:r(({row:s})=>[(h(),P(X(L(s.type)),{class:"h-5 mx-auto"}))]),premium:r(({row:s})=>{var m;return[a("span",{dusk:`category-premium-cell-${s.slug}`},d((m=s.settings)!=null&&m.premium?"Yes":"No"),9,ce)]}),wellbeing:r(({row:s})=>{var m;return[a("span",{dusk:`category-wellbeing-cell-${s.slug}`},d((m=s.settings)!=null&&m.wellbeing_hub?"Yes":"No"),9,fe)]}),performance:r(({row:s})=>{var m;return[a("span",{dusk:`category-performance-cell-${s.slug}`},d((m=s.settings)!=null&&m.performance_hub?"Yes":"No"),9,_e)]}),courses_count:r(({row:s})=>[u(d(Math.max(s.resources_count,s.courses_count)),1)]),edit:r(({row:s})=>[a("button",{onClick:m=>D(s)},[l(re,{class:"h-5"})],8,ye)]),delete:r(({row:s})=>[a("button",{onClick:m=>O(s)},[l(A,{class:"h-5"})],8,be)]),_:1},8,["rows"])])]),_:1}),l(se,{onClose:f,show:n.categoryFormShowing,dusk:"category-form-modal"},{title:r(()=>[a("h2",null,d(n.selectedCategory===null?"Create":"Update")+" category",1)]),content:r(()=>{var s;return[a("div",he,[l(c,null,{default:r(()=>e[6]||(e[6]=[u("Category title")])),_:1}),l(V,{class:"mt-1",type:"text",modelValue:i(o).title,"onUpdate:modelValue":e[2]||(e[2]=m=>i(o).title=m),dusk:"category-title-input"},null,8,["modelValue"]),l(g,{class:"mt-2",message:i(o).errors.title},null,8,["message"])]),a("div",ve,[l(c,null,{default:r(()=>e[7]||(e[7]=[u("Category tagline")])),_:1}),l(V,{class:"mt-1",type:"text",modelValue:i(o).settings.tagline,"onUpdate:modelValue":e[3]||(e[3]=m=>i(o).settings.tagline=m),dusk:"category-tagline-input"},null,8,["modelValue"]),l(g,{class:"mt-2",message:(s=i(o).errors.settings)==null?void 0:s.tagline},null,8,["message"])]),a("div",we,[l(c,null,{default:r(()=>e[8]||(e[8]=[u("Category Description")])),_:1}),l(ie,{modelValue:i(o).description,"onUpdate:modelValue":e[4]||(e[4]=m=>i(o).description=m),placeholder:"Category description text",toolbarName:"course_notes"},null,8,["modelValue"]),l(g,{class:"mt-2",message:i(o).errors.description},null,8,["message"])]),a("div",Ce,[l(c,null,{default:r(()=>e[9]||(e[9]=[u("Premium category")])),_:1}),l(k,{class:"mt-1",dusk:"category-premium-toggle","model-value":i(o).settings.premium,"onUpdate:modelValue":W},null,8,["model-value"]),l(g,{message:i(o).errors["settings.premium"],class:"mt-1"},null,8,["message"])]),a("div",ke,[l(c,null,{default:r(()=>e[10]||(e[10]=[u("Category is part of the Wellbeing hub?")])),_:1}),l(k,{class:"mt-1",dusk:"category-wellbeing-toggle","model-value":i(o).settings.wellbeing_hub,"onUpdate:modelValue":z},null,8,["model-value"]),l(g,{message:i(o).errors["settings.wellbeing_hub"],class:"mt-1"},null,8,["message"])]),a("div",Ve,[l(c,null,{default:r(()=>
1e[11]||(e[11]=[u("Category is part of the Performance hub?")])),_:1}),l(k,{class:"mt-1",dusk:"category-performance-toggle","model-value":i(o).settings.performance_hub,"onUpdate:modelValue":E},null,8,["model-value"]),l(g,{message:i(o).errors["settings.performance_hub"],class:"mt-1"},null,8,["message"])]),i(o).settings.wellbeing_hub?(h(),N("div",xe,[a("input",{ref_key:"photoInput",ref:_,type:"file",class:"hidden",onChange:J,accept:"image/png, image/jpeg, image/webp, image/gif"},null,544),l(c,{for:"photo",value:"Category Image"}),a("div",Se,[l(C,{size:"small",class:"",type:"button",onClick:Z(q,["prevent"])},{default:r(()=>e[12]||(e[12]=[u(" Choose File ")])),_:1}),a("span",Fe,d(v.value),1)]),U(a("div",$e,[a("img",{src:F.value,alt:i(o).title,class:"self-start block w-64 h-32 bg-cover rounded-lg"},null,8,De)],512),[[T,!y.value]]),U(a("div",Ne,[a("span",{class:"block w-64 h-32 bg-center bg-no-repeat bg-cover rounded-lg",style:ee("background-image: url('"+y.value+"');")},null,4)],512),[[T,y.value]]),l(g,{message:i(o).errors.image,class:"mt-2"},null,8,["message"])])):I("",!0)]}),footer:r(()=>[a("div",Pe,[l(C,{onClick:f},{default:r(()=>e[13]||(e[13]=[u("Cancel")])),_:1}),l(w,{dusk:"save-category-button",onClick:Y},{default:r(()=>e[14]||(e[14]=[u("Save")])),_:1})])]),_:1},8,["show"]),l(oe,{onClose:f,show:n.deleteCategoryFormShowing},{title:r(()=>e[15]||(e[15]=[a("h2",null,"Delete category?",-1)])),content:r(()=>{var s;return[u(" Are you sure you want to delete the category - "+d((s=n.categoryToDelete)==null?void 0:s.title)+" ? ",1)]}),footer:r(()=>[a("div",Ie,[l(C,{onClick:f},{default:r(()=>e[16]||(e[16]=[u("Cancel")])),_:1}),l(w,{onClick:R},{default:r(()=>e[17]||(e[17]=[u("Confirm")])),_:1})])]),_:1},8,["show"])],64))}};export{Yt 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.