lms/public/build/assets/resource-form-DMd6KRIv.js
2025-12-15 12:26:23 +01:00

2 lines
2.8 KiB
JavaScript

import{r as i,u as N,b as R,j as e}from"./vendor-BKmmeuxg.js";import{C as T}from"./chunked-uploader-input-D0XPVOTS.js";import{I as f}from"./input-error-LaPr_4wd.js";import{L as q}from"./loading-button-BnTVAMJ7.js";import{D as V,a as A,b as H,c as O,d as w}from"./dialog-B2gN9MvT.js";import{I as j}from"./input-DM0goJrn.js";import{L as n}from"./label-HmIcv5Yx.js";import{S as z}from"./scroll-area-C8HGru-R.js";import{S as B,a as M,b as P,c as Z,d as G}from"./select-CD9o3HN1.js";import{g as J}from"./file-metadata-CAFSN-Sn.js";import{o as g}from"./inertia-SZXqLvQm.js";import"./button-BpNwv2aE.js";import"./index-WW_1X1qx.js";import"./utils-DxSsnXxD.js";import"./index-D9-QKOod.js";const ue=({title:v,handler:S,resource:r})=>{const[b,u]=i.useState(!1),[c,a]=i.useState(!1),[y,m]=i.useState(!1),{exam:C,translate:F}=N().props,{input:o,button:D}=F,{data:l,setData:t,post:I,put:E,reset:d,processing:p,errors:x,clearErrors:U}=R({title:r?r.title:"",type:r?r.type:"document",resource:r?r.resource:"",resource_url:null,exam_id:C.id}),_=async s=>{if(s.preventDefault(),l.type==="link"){h();return}a(!0)},h=()=>{U(),r?E(route("exam-resources.update",r.id),{preserveScroll:!0,onSuccess:()=>{d(),a(!1),u(!0)}}):I(route("exam-resources.store"),{preserveScroll:!0,onSuccess:()=>{d(),a(!1),u(!0)}})};i.useEffect(()=>{l.resource_url&&y&&(h(),d("resource_url"),m(!1))},[l.resource_url]);const k=[{label:"Document",value:"document"},{label:"Image File",value:"image"},{label:"Video File",value:"video"},{label:"Zip/Archive",value:"zip"},{label:"External Link",value:"link"}];return e.jsxs(V,{open:b,onOpenChange:u,children:[e.jsx(A,{children:S}),e.jsx(H,{className:"p-0",children:e.jsxs(z,{className:"max-h-[90vh] p-6",children:[e.jsx(O,{className:"mb-6",children:e.jsx(w,{children:v})}),e.jsxs("form",{onSubmit:_,className:"space-y-4",children:[e.jsxs("div",{children:[e.jsx(n,{children:o.title}),e.jsx(j,{required:!0,name:"title",value:l.title,placeholder:o.title,onChange:s=>g(s,t)}),e.jsx(f,{message:x.title})]}),e.jsxs("div",{children:[e.jsx(n,{children:"Resource Type"}),e.jsxs(B,{required:!0,name:"type",value:l.type,onValueChange:s=>t("type",s),children:[e.jsx(M,{className:"w-full",children:e.jsx(P,{placeholder:o.select})}),e.jsx(Z,{children:k.map(s=>e.jsx(G,{value:s.value,children:s.label},s.value))})]})]}),l.type==="link"?e.jsxs("div",{children:[e.jsx(n,{children:"Resource"}),e.jsx(j,{required:!0,type:"url",name:"resource",value:l.resource,placeholder:o.url,onChange:s=>g(s,t)}),e.jsx(f,{message:x.resource})]}):e.jsxs("div",{children:[e.jsx(n,{children:"Resource"}),e.jsx(T,{isSubmit:c,filetype:l.type,delayUpload:!0,onFileSelected:s=>{J(s).then(L=>{t("title",L.name)})},onFileUploaded:s=>{m(!0),t("resource_url",s.file_url)},onError:s=>{a(!1)},onCancelUpload:()=>{a(!1)}})]}),e.jsx(q,{loading:p||c,disabled:p||c,children:r?"Update":D.submit})]})]})})]})};export{ue as default};