1import{d as z,m as M,r as y,c as d,a as l,u as s,h as I,w as a,b as o,l as T,q,p as f,e as i,f as n,t as u,s as V,v as A,F as $,g as U,y as P,A as j}from"./app-CqbOMvUx.js";import{_ as H,S as R}from"./TinyMCEEditor.vue_vue_type_script_setup_true_lang-D0DFdfkN.js";import{_ as G}from"./AppLayout.vue_vue_type_script_setup_true_lang-DGhC2BDa.js";import{_ as k}from"./Button.vue_vue_type_script_setup_true_lang-CwQgyPq0.js";import{_ as w}from"./Input.vue_vue_type_script_setup_true_lang-D6YrCT7H.js";import{_ as b}from"./Label.vue_vue_type_script_setup_true_lang-D8J6Oytb.js";import{_ as D}from"./Textarea.vue_vue_type_script_setup_true_lang-4x1bOoeH.js";import{_ as J,a as K,b as Q,c as W,d as X}from"./DialogTitle.vue_vue_type_script_setup_true_lang-SqL8dDRE.js";import{_ as Y}from"./DialogFooter.vue_vue_type_script_setup_true_lang-9uSrN1zP.js";import{A as Z}from"./arrow-left-MqbU5Ojd.js";import{P as ee}from"./plus-BFajy855.js";import"./createLucideIcon-ycY0zbnc.js";import"./index-CIiWasEK.js";import"./VisuallyHidden-B71WcTOf.js";import"./useForwardExpose-Bgh7_mYR.js";import"./RovingFocusGroup-BfBOSlh1.js";import"./useArrowNavigation-C6Y-ieo6.js";import"./index-CxHIEzKO.js";import"./x-DxtVOdel.js";import"./AppLogoIcon.vue_vue_type_script_setup_true_lang-CwIf7n71.js";import"./file-text-CYzpFlMe.js";import"./book-open-DR3XsM6m.js";const te={class:"flex h-full flex-1 flex-col gap-4 overflow-x-auto rounded-xl p-4"},se={class:"mb-6 flex items-center gap-4"},re={class:"grid grid-cols-1 gap-6 lg:grid-cols-3"},oe={class:"lg:col-span-2 space-y-6"},le={class:"rounded-lg border border-[#e3e3e0] bg-white p-6 shadow-sm dark:border-[#3E3E3A] dark:bg-[#161615]"},ae={key:0,class:"mt-1 text-sm text-red-600 dark:text-red-400"},de={class:"mt-4"},ie={key:0,class:"mt-1 text-sm text-red-600 dark:text-red-400"},ne={class:"mt-4"},ue={key:0,class:"mt-1 text-sm text-red-600 dark:text-red-400"},me={class:"rounded-lg border border-[#e3e3e0] bg-white p-6 shadow-sm dark:border-[#3E3E3A] dark:bg-[#161615]"},pe={class:"mt-2"},fe={key:0,class:"mt-1 text-sm text-red-600 dark:text-red-400"},ge={class:"rounded-lg border border-[#e3e3e0] bg-white p-6 shadow-sm dark:border-[#3E3E3A] dark:bg-[#161615]"},be={key:0,class:"mt-1 text-sm text-red-600 dark:text-red-400"},ce={class:"mt-4"},xe={key:0,class:"mt-1 text-sm text-red-600 dark:text-red-400"},ve={class:"space-y-6"},_e={class:"rounded-lg border border-[#e3e3e0] bg-white p-6 shadow-sm dark:border-[#3E3E3A] dark:bg-[#161615]"},ye={key:0,class:"mt-1 text-sm text-red-600 dark:text-red-400"},ke={class:"mt-4"},we={key:0,class:"mt-1 text-sm text-red-600 dark:text-red-400"},Ee={class:"mt-6"},he={class:"rounded-lg border border-[#e3e3e0] bg-white p-6 shadow-sm dark:border-[#3E3E3A] dark:bg-[#161615]"},Ce={class:"mb-4 flex items-center justify-between"},Ve=["value"],Ae={key:0,class:"mt-1 text-sm text-red-600 dark:text-red-400"},$e={class:"rounded-lg border border-[#e3e3e0] bg-white p-6 shadow-sm dark:border-[#3E3E3A] dark:bg-[#161615]"},De={key:0,class:"mb-4"},Se=["src"],Ue={key:1,class:"mt-1 text-sm text-red-600 dark:text-red-400"},Pe={class:"space-y-4 py-4"},Fe=["value"],Be={key:0,class:"rounded-md bg-red-50 p-3 text-sm text-red-600 dark:bg-red-900/20 dark:text-red-400"},rt=z({__name:"Edit",props:{post:{},categories:{}},setup(h){const p=h,r=M({_method:"put",title:p.post.title,slug:p.post.slug,excerpt:p.post.excerpt||"",content:p.post.content,category_ids:p.post.categories.map(m=>m.id),featured_image:null,meta_title:p.post.meta_title||"",meta_description:p.post.meta_description||"",status:p.post.status,published_at:p.post.published_at?new Date(p.post.published_at).toISOString().slice(0,16):""}),F=()=>{r.title&&!r.slug&&(r.slug=r.title.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,""))},B=m=>{const e=m.target;e.files&&e.files[0]&&(r.featured_image=e.files[0])},N=()=>{r.post(`/admin/blog/${p.post.id}`,{preserveScroll:!0,forceFormData:!0,onSuccess:()=>{r.featured_image=null}})},v=y(!1),g=y({name:"",parent_id:null,description:""}),c=y(""),_=y(!1),E=y(p.categories),O=async()=>{if(!g.value.name){c.value="Category name is required";return}_.value=!0,c.value="";try{const e=(await j.post("/admin/categories",g.value)).data;if(e.success){if(g.value.parent_id){const t=S(E.value,g.value.parent_id);t&&(t.children||(t.children=[]),t.children.push(e.category))}else E.value.push(e.category);g.value={name:"",parent_id:null,description:""},v.value=!1}else c.value=e.message||"Failed to create category"}catch(m){if(m.response?.data?.message)c.value=m.response.data.message;else if(m.response?.data?.errors){const e=Object.values(m.response.data.errors).flat();c.value=e[0]}else c.value="An error occurred while creating the category"}finally{_.value=!1}},S=(m,e)=>{for(const t of m){if(t.id===e)return t;if(t.children){const x=S(t.children,e);if(x)return x}}return null},C=(m,e=0)=>{const t=[];for(const x of m)t.push({id:x.id,name:x.name,level:e}),x.children&&x.children.length>0&&t.push(...C(x.children,e+1));return t},L=[{title:"Blog Posts",href:"/admin/blog"},{title:"Edit Post",href:`/admin/blog/${p.post.id}/edit`}
1];return(m,e)=>(n(),d($,null,[l(s(I),{title:"Edit Post"}),l(G,{breadcrumbs:L},{default:a(()=>[o("div",te,[o("div",se,[l(k,{"as-child":"",variant:"outline",size:"sm"},{default:a(()=>[l(s(T),{href:"/admin/blog"},{default:a(()=>[l(s(Z),{class:"h-4 w-4"})]),_:1})]),_:1}),e[15]||(e[15]=o("div",null,[o("h1",{class:"text-2xl font-bold text-[#1b1b18] dark:text-[#EDEDEC]"}," Edit Post "),o("p",{class:"mt-1 text-sm text-[#706f6c] dark:text-[#A1A09A]"}," Update your blog content ")],-1))]),o("form",{onSubmit:q(N,["prevent"]),class:"space-y-6"},[o("div",re,[o("div",oe,[o("div",le,[o("div",null,[l(b,{for:"title"},{default:a(()=>[...e[16]||(e[16]=[i("Title *",-1)])]),_:1}),l(w,{id:"title",modelValue:s(r).title,"onUpdate:modelValue":e[0]||(e[0]=t=>s(r).title=t),type:"text",required:"",placeholder:"Enter post title",class:"mt-2",onBlur:F},null,8,["modelValue"]),s(r).errors.title?(n(),d("div",ae,u(s(r).errors.title),1)):f("",!0)]),o("div",de,[l(b,{for:"slug"},{default:a(()=>[...e[17]||(e[17]=[i("Slug",-1)])]),_:1}),l(w,{id:"slug",modelValue:s(r).slug,"onUpdate:modelValue":e[1]||(e[1]=t=>s(r).slug=t),type:"text",placeholder:"post-slug-url",class:"mt-2"},null,8,["modelValue"]),s(r).errors.slug?(n(),d("div",ie,u(s(r).errors.slug),1)):f("",!0)]),o("div",ne,[l(b,{for:"excerpt"},{default:a(()=>[...e[18]||(e[18]=[i("Excerpt",-1)])]),_:1}),l(D,{id:"excerpt",modelValue:s(r).excerpt,"onUpdate:modelValue":e[2]||(e[2]=t=>s(r).excerpt=t),rows:"3",placeholder:"Brief summary of the post...",class:"mt-2"},null,8,["modelValue"]),s(r).errors.excerpt?(n(),d("div",ue,u(s(r).errors.excerpt),1)):f("",!0)])]),o("div",me,[l(b,{for:"content"},{default:a(()=>[...e[19]||(e[19]=[i("Content *",-1)])]),_:1}),o("div",pe,[l(H,{modelValue:s(r).content,"onUpdate:modelValue":e[3]||(e[3]=t=>s(r).content=t),height:500},null,8,["modelValue"]),s(r).errors.content?(n(),d("div",fe,u(s(r).errors.content),1)):f("",!0)])]),o("div",ge,[e[22]||(e[22]=o("h3",{class:"mb-4 text-lg font-semibold text-[#1b1b18] dark:text-[#EDEDEC]"}," SEO Settings ",-1)),o("div",null,[l(b,{for:"meta_title"},{default:a(()=>[...e[20]||(e[20]=[i("Meta Title",-1)])]),_:1}),l(w,{id:"meta_title",modelValue:s(r).meta_title,"onUpdate:modelValue":e[4]||(e[4]=t=>s(r).meta_title=t),type:"text",placeholder:"SEO title (defaults to post title)",class:"mt-2"},null,8,["modelValue"]),s(r).errors.meta_title?(n(),d("div",be,u(s(r).errors.meta_title),1)):f("",!0)]),o("div",ce,[l(b,{for:"meta_description"},{default:a(()=>[...e[21]||(e[21]=[i("Meta Description",-1)])]),_:1}),l(D,{id:"meta_description",modelValue:s(r).meta_description,"onUpdate:modelValue":e[5]||(e[5]=t=>s(r).meta_description=t),rows:"3",placeholder:"SEO description (max 160 characters recommended)",class:"mt-2"},null,8,["modelValue"]),s(r).errors.meta_description?(n(),d("div",xe,u(s(r).errors.meta_description),1)):f("",!0)])])]),o("div",ve,[o("div",_e,[e[27]||(e[27]=o("h3",{class:"mb-4 text-lg font-semibold text-[#1b1b18] dark:text-[#EDEDEC]"}," Publish ",-1)),o("div",null,[l(b,{for:"status"},{default:a(()=>[...e[23]||(e[23]=[i("Status *",-1)])]),_:1}),V(o("select",{id:"status","onUpdate:modelValue":e[6]||(e[6]=t=>s(r).status=t),class:"mt-2 flex h-10 w-full rounded-md border border-[#e3e3e0] bg-white px-3 py-2 text-sm dark:border-[#3E3E3A] dark:bg-[#161615]"},[...e[24]||(e[24]=[o("option",{value:"draft"},"Draft",-1),o("option",{value:"published"},"Published",-1)])],512),[[A,s(r).status]]),s(r).errors.status?(n(),d("div",ye,u(s(r).errors.status),1)):f("",!0)]),o("div",ke,[l(b,{for:"published_at"},{default:a(()=>[...e[25]||(e[25]=[i("Publish Date",-1)])]),_:1}),l(w,{id:"published_at",modelValue:s(r).published_at,"onUpdate:modelValue":e[7]||(e[7]=t=>s(r).published_at=t),type:"datetime-local",class:"mt-2"},null,8,["modelValue"]),e[26]||(e[26]=o("p",{class:"mt-1 text-xs text-[#706f6c] dark:text-[#A1A09A]"}," Leave blank for immediate publish ",-1)),s(r).errors.published_at?(n(),d("div",we,u(s(r).errors.published_at),1)):f("",!0)]),o("div",Ee,[l(k,{type:"submit",class:"w-full",disabled:s(r).processing},{default:a(()=>[l(s(R),{class:"mr-2 h-4 w-4"}
1),i(" "+u(s(r).processing?"Updating...":"Update Post"),1)]),_:1},8,["disabled"])])]),o("div",he,[o("div",Ce,[e[29]||(e[29]=o("h3",{class:"text-lg font-semibold text-[#1b1b18] dark:text-[#EDEDEC]"}," Category ",-1)),l(k,{type:"button",size:"sm",variant:"outline",onClick:e[8]||(e[8]=t=>v.value=!0)},{default:a(()=>[l(s(ee),{class:"mr-1 h-3 w-3"}),e[28]||(e[28]=i(" New ",-1))]),_:1})]),V(o("select",{"onUpdate:modelValue":e[9]||(e[9]=t=>s(r).category_ids=t),multiple:"",class:"flex min-h-[120px] w-full rounded-md border border-[#e3e3e0] bg-white px-3 py-2 text-sm dark:border-[#3E3E3A] dark:bg-[#161615]"},[(n(!0),d($,null,U(C(E.value),t=>(n(),d("option",{key:t.id,value:t.id,style:P({paddingLeft:`${t.level*12}px`})},u("â".repeat(t.level))+" "+u(t.name),13,Ve))),128))],512),[[A,s(r).category_ids]]),s(r).errors.category_ids?(n(),d("div",Ae,u(s(r).errors.category_ids),1)):f("",!0),e[30]||(e[30]=o("p",{class:"mt-1 text-xs text-[#706f6c] dark:text-[#A1A09A]"}," Hold Cmd/Ctrl to select multiple categories ",-1))]),o("div",$e,[e[31]||(e[31]=o("h3",{class:"mb-4 text-lg font-semibold text-[#1b1b18] dark:text-[#EDEDEC]"}," Featured Image ",-1)),h.post.featured_image?(n(),d("div",De,[o("img",{src:`/storage/${h.post.featured_image}`,alt:"Current featured image",class:"w-full rounded-lg"},null,8,Se)])):f("",!0),o("input",{type:"file",accept:"image/*",onChange:B,class:"w-full text-sm text-[#706f6c] file:mr-4 file:rounded file:border-0 file:bg-[#f53003] file:px-4 file:py-2 file:text-sm file:font-medium file:text-white hover:file:bg-[#d42a02] dark:file:bg-[#FF4433] dark:hover:file:bg-[#ff3322]"},null,32),e[32]||(e[32]=o("p",{class:"mt-1 text-xs text-[#706f6c] dark:text-[#A1A09A]"}," Upload a new image to replace the current one ",-1)),s(r).errors.featured_image?(n(),d("div",Ue,u(s(r).errors.featured_image),1)):f("",!0)])])])],32),l(s(J),{open:v.value,"onUpdate:open":e[14]||(e[14]=t=>v.value=t)},{default:a(()=>[l(s(K),null,{default:a(()=>[l(s(Q),null,{default:a(()=>[l(s(W),null,{default:a(()=>[...e[33]||(e[33]=[i("Create New Category",-1)])]),_:1}),l(s(X),null,{default:a(()=>[...e[34]||(e[34]=[i(" Add a new category or subcategory for organizing your blog posts. ",-1)])]),_:1})]),_:1}),o("div",Pe,[o("div",null,[l(b,{for:"category-name"},{default:a(()=>[...e[35]||(e[35]=[i("Category Name *",-1)])]),_:1}),l(w,{id:"category-name",modelValue:g.value.name,"onUpdate:modelValue":e[10]||(e[10]=t=>g.value.name=t),placeholder:"e.g., Technology, Marketing",class:"mt-2"},null,8,["modelValue"])]),o("div",null,[l(b,{for:"parent-category"},{default:a(()=>[...e[36]||(e[36]=[i("Parent Category (Optional)",-1)])]),_:1}),V(o("select",{id:"parent-category","onUpdate:modelValue":e[11]||(e[11]=t=>g.value.parent_id=t),class:"mt-2 flex h-10 w-full rounded-md border border-[#e3e3e0] bg-white px-3 py-2 text-sm dark:border-[#3E3E3A] dark:bg-[#161615]"},[e[37]||(e[37]=o("option",{value:null},"None (Root Category)",-1)),(n(!0),d($,null,U(C(E.value),t=>(n(),d("option",{key:t.id,value:t.id,style:P({paddingLeft:`${t.level*12}px`})},u("â".repeat(t.level))+" "+u(t.name),13,Fe))),128))],512),[[A,g.value.parent_id]]),e[38]||(e[38]=o("p",{class:"mt-1 text-xs text-[#706f6c] dark:text-[#A1A09A]"}," Select a parent to create a subcategory ",-1))]),o("div",null,[l(b,{for:"category-description"},{default:a(()=>[...e[39]||(e[39]=[i("Description (Optional)",-1)])]),_:1}),l(D,{id:"category-description",modelValue:g.value.description,"onUpdate:modelValue":e[12]||(e[12]=t=>g.value.description=t),placeholder:"Brief description of the category",rows:"3",class:"mt-2"},null,8,["modelValue"])]),c.value?(n(),d("div",Be,u(c.value),1)):f("",!0)]),l(s(Y),null,{default:a(()=>[l(k,{type:"button",variant:"outline",onClick:e[13]||(e[13]=t=>v.value=!1),disabled:_.value},{default:a(()=>[...e[40]||(e[40]=[i(" Cancel ",-1)])]),_:1},8,["disabled"]),l(k,{type:"button",onClick:O,disabled:_.value},{default:a(()=>[i(u(_.value?"Creating...":"Create Category"),1)]),_:1},8,["disabled"])]),_:1})]),_:1})]),_:1},8,["open"])])]),_:1})],64))}});export{rt 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.