| Server IP : 198.38.94.13 / Your IP : 216.73.217.33 Web Server : Apache System : Linux d4744.dxb1.stableserver.net 5.14.0-611.49.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Tue Apr 21 16:39:08 EDT 2026 x86_64 User : revivere ( 1140) PHP Version : 8.2.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /home/revivere/www/wp-content/plugins/post-duplicator/assets/build/ |
Upload File : |
(()=>{"use strict";var t={715(t){t.exports=window.wp.blockEditor}},e={};function s(a){var o=e[a];if(void 0!==o)return o.exports;var i=e[a]={exports:{}};return t[a](i,i.exports,s),i.exports}const a=window.wp.plugins,o=window.wp.editor,i=window.wp.components,l=window.wp.data,n=window.wp.element,r=window.wp.i18n,c=window.wp.primitives,p=window.ReactJSXRuntime,d=(0,p.jsx)(c.SVG,{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",children:(0,p.jsx)(c.Path,{fillRule:"evenodd",clipRule:"evenodd",d:"M5 4.5h11a.5.5 0 0 1 .5.5v11a.5.5 0 0 1-.5.5H5a.5.5 0 0 1-.5-.5V5a.5.5 0 0 1 .5-.5ZM3 5a2 2 0 0 1 2-2h11a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5Zm17 3v10.75c0 .69-.56 1.25-1.25 1.25H6v1.5h12.75a2.75 2.75 0 0 0 2.75-2.75V8H20Z"})}),u=(0,p.jsx)(c.SVG,{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:(0,p.jsx)(c.Path,{d:"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm.5 16c0 .3-.2.5-.5.5H5c-.3 0-.5-.2-.5-.5V7h15v12zM9 10H7v2h2v-2zm0 4H7v2h2v-2zm4-4h-2v2h2v-2zm4 0h-2v2h2v-2zm-4 4h-2v2h2v-2zm4 0h-2v2h2v-2z"})}),m=({settings:t,onSettingsChange:e,postTypes:a,statusChoices:o,originalPost:l,featuredImage:c,onFeaturedImageChange:d})=>{const[m,g]=(0,n.useState)((()=>{const e={...t};return"same"===t.type&&l?.type&&(e.type=l.type),"same"===t.status&&l?.status&&(e.status=l.status),e})()),[_,h]=(0,n.useState)(!1),[f,x]=(0,n.useState)(""),[y,w]=(0,n.useState)(""),[S,v]=(0,n.useState)(!1),[j,P]=(0,n.useState)([]),[D,b]=(0,n.useState)(!1),T=window.postDuplicatorVars?.currentUser,C=window.postDuplicatorVars?.postTypesAuthorSupport||{},k=window.postDuplicatorVars?.postTypesHierarchicalSupport||{},N=()=>"same"===m.type?l?.type:m.type,I=()=>{const t=N();return!0===k[t]},[M,$]=(0,n.useState)((()=>{const t=l?.type;return!1!==C[t]?T?.id?String(T.id):j.length>0?j[0].value:"":""})()),[E,V]=(0,n.useState)(""),[U,z]=(0,n.useState)([]),[B,H]=(0,n.useState)((new Date).toISOString()),[A,F]=(0,n.useState)(""),[R,O]=(0,n.useState)(!1),L=(0,n.useRef)(null),W=(0,n.useRef)(null);(0,n.useEffect)(()=>{(async()=>{if(0===j.length&&!D){b(!0);try{const t=window.postDuplicatorVars?.restUrl||"",e=window.postDuplicatorVars?.nonce||"";if(!t||!e)return console.error("Missing REST URL or nonce for users fetch"),void b(!1);const s=`${t}users`,a=await fetch(s,{method:"GET",headers:{"X-WP-Nonce":e,"Content-Type":"application/json"}});if(a.ok){const t=await a.json();Array.isArray(t)?P(t):console.error("Invalid users response format:",t)}else{const t=await a.text();console.error("Error fetching users:",a.status,a.statusText,t)}}catch(t){console.error("Error fetching users:",t)}finally{b(!1)}}})()},[]);const{MediaUpload:X,MediaUploadCheck:Z}=(()=>{try{const t=s(715);if(t&&t.MediaUpload&&t.MediaUploadCheck&&"function"==typeof t.MediaUpload&&"function"==typeof t.MediaUploadCheck)return{MediaUpload:t.MediaUpload,MediaUploadCheck:t.MediaUploadCheck}}catch(t){}return{MediaUpload:null,MediaUploadCheck:null}})();let G=!0;try{if(void 0!==window.wp&&window.wp.data&&"function"==typeof window.wp.data.select){const t=window.wp.data.select("core/editor");G=!t||"function"!=typeof t.getCurrentPost}}catch(t){G=!0}const J=t=>t.toLowerCase().trim().replace(/\s+/g,"-").replace(/[^\w\-]/g,"").replace(/\-\-+/g,"-").replace(/^-+/,"").replace(/-+$/,""),q=t=>J(t),K=(t,s)=>{const a={...m,[t]:s};"timestamp"===t&&"custom"!==s&&(a.customDate=null),g(a),e(a)};(0,n.useEffect)(()=>{if(!S&&l?.title&&l?.slug){const s=t.fullTitle||`${l.title} ${t.title||""}`;x(s.trim());const a=t.fullSlug||`${l.slug}-${t.slug||"copy"}`;w(a);const o={...t,fullTitle:s.trim(),fullSlug:a};g(o),e(o);const i=l?.type;let n,r="";!1!==C[i]&&(r="current_user"===t.post_author?String(T?.id||""):String(l.authorId||T?.id||"")),$(r);let c=!1;if(t.customDate?(n=t.customDate,c=!1):"duplicate"===t.timestamp&&l?.date?(n=l.date,c=!0):(n=(new Date).toISOString(),c=!0),t.time_offset&&c){const e=new Date(n),s=864e5*(t.time_offset_days||0)+36e5*(t.time_offset_hours||0)+6e4*(t.time_offset_minutes||0)+1e3*(t.time_offset_seconds||0);"newer"===t.time_offset_direction?e.setTime(e.getTime()+s):e.setTime(e.getTime()-s),n=e.toISOString()}H(n),F(Q(n));const p=l?.parent||0;V(p>0?String(p):""),K("selectedParentId",p>0?p:null),v(!0)}},[l,S,t,T]),(0,n.useEffect)(()=>{(async()=>{if(!l?.type)return void z([]);const t="same"===m.type?l.type:m.type;try{const e=await fetch(`${window.postDuplicatorVars.restUrl}parent-posts?post_type=${t}&exclude_id=${l.id}`,{headers:{"X-WP-Nonce":window.postDuplicatorVars.nonce}});if(e.ok){const t=await e.json(),s=t=>{const e=t.level||0;return 0===e?t.title:`${"—".repeat(e)+" "}${t.title}`},a=[{label:(0,r.__)("— No Parent —","post-duplicator"),value:""},...t.map(t=>({label:s(t),value:String(t.id),level:t.level||0}))];z(a),l?.parentPost&&l.parent>0&&(t.some(t=>t.id===l.parent)||(a.splice(1,0,{label:l.parentPost.title,value:String(l.parent),level:0}),z(a)))}}catch(t){console.error("Error fetching parent posts:",t),z([{label:(0,r.__)("— No Parent —","post-duplicator"),value:""}])}})()},[l?.type,m.type,l?.id,l?.parent,l?.parentPost]),(0,n.useEffect)(()=>{const e={...t};"same"===t.type&&l?.type&&(e.type=l.type),"same"===t.status&&l?.status&&(e.status=l.status),g(e)},[t,l]),(0,n.useEffect)(()=>{if(!S)return;const t=N(),e=!1!==C[t];if(e||""===M){if(e&&""===M&&T?.id){const t=String(T.id);$(t),K("selectedAuthorId",parseInt(t))}}else $(""),K("selectedAuthorId",null)},[m.type,S]),(0,n.useEffect)(()=>{S&&(I()||""===E||(V(""),K("selectedParentId",null)))},[m.type,S]);const Q=t=>new Date(t).toLocaleString("en-US",{year:"numeric",month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"}),Y=t=>Array.isArray(t)?t:Object.entries(t).map(([t,e])=>({value:t,label:e})),tt=()=>{if(void 0===window.wp||!window.wp.media)return console.error("WordPress media library is not available. Make sure wp_enqueue_media() is called."),void alert((0,r.__)("Media library is not available. Please refresh the page.","post-duplicator"));const t=window.wp.media({title:(0,r.__)("Select or Upload Featured Image","post-duplicator"),button:{text:(0,r.__)("Use this image","post-duplicator")},multiple:!1,library:{type:"image"}});t.on("select",()=>{const e=t.state().get("selection").first().toJSON(),s={id:e.id,url:e.url,thumbnail:e.sizes?.thumbnail?.url||e.url,alt:e.alt||""};d&&d(s)}),t.open()},et=t=>{const e=c?.alt||"",s=c?.url?.split("/").pop()||"",a=`editor-post-featured-image-${c?.id||"new"}-describedby`,o=e||(0,r.__)("The current image has no alternative text.","post-duplicator")+(s?` ${(0,r.__)("The file name is:","post-duplicator")} ${s}`:"");return(0,p.jsxs)("div",{className:"editor-post-featured-image__container",children:[c&&(0,p.jsx)("div",{id:a,className:"hidden",children:o}),c?(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(i.Button,{type:"button",className:"components-button editor-post-featured-image__preview is-next-40px-default-size",onClick:t,"aria-label":(0,r.__)("Edit or replace the featured image","post-duplicator"),"aria-describedby":a,"aria-haspopup":"dialog",children:(0,p.jsx)("img",{className:"editor-post-featured-image__preview-image",src:c.url,alt:o})}),(0,p.jsxs)(i.__experimentalHStack,{className:"editor-post-featured-image__actions",children:[(0,p.jsx)(i.Button,{type:"button",className:"components-button editor-post-featured-image__action is-next-40px-default-size",onClick:t,"aria-haspopup":"dialog",children:(0,r.__)("Replace","post-duplicator")}),(0,p.jsx)(i.Button,{type:"button",className:"components-button editor-post-featured-image__action is-next-40px-default-size",onClick:()=>{d&&d(null)},children:(0,r.__)("Remove","post-duplicator")})]})]}):(0,p.jsx)(i.Button,{variant:"secondary",onClick:t,__next40pxDefaultSize:!0,children:(0,r.__)("Set featured image","post-duplicator")}),i.DropZone&&(0,p.jsx)(i.DropZone,{onFilesDrop:e=>{e.length>0&&t()},className:"components-drop-zone",children:(0,p.jsx)("div",{className:"components-drop-zone__content",children:(0,p.jsxs)("div",{className:"components-drop-zone__content-inner",children:[(0,p.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",width:"24",height:"24",className:"components-drop-zone__content-icon","aria-hidden":"true",focusable:"false",children:(0,p.jsx)("path",{d:"M18.5 15v3.5H13V6.7l4.5 4.1 1-1.1-6.2-5.8-5.8 5.8 1 1.1 4-4v11.7h-6V15H4v5h16v-5z"})}),(0,p.jsx)("span",{className:"components-drop-zone__content-text",children:(0,r.__)("Drop files to upload","post-duplicator")})]})})})]})};return(0,p.jsxs)(i.__experimentalVStack,{className:"duplicate-settings-fields",spacing:"20px",children:[(0,p.jsxs)(i.__experimentalHStack,{spacing:"16px",alignment:"stretch",className:"duplicate-settings-fields__top",children:[(0,p.jsxs)(i.__experimentalVStack,{className:"duplicate-settings-fields__title",children:[(0,p.jsx)(i.TextControl,{label:(0,r.__)("Title","post-duplicator"),value:f,onChange:t=>{if(x(t),!_&&l?.title){const s=q(t);w(s);const a={...m,fullTitle:t,fullSlug:s};g(a),e(a)}else K("fullTitle",t)},__nextHasNoMarginBottom:!0,__next40pxDefaultSize:!0,style:{flex:1}}),(0,p.jsx)(i.TextControl,{label:(0,r.__)("Slug","post-duplicator"),value:y,onChange:t=>{w(t),h(!0),K("fullSlug",t)},onBlur:()=>{if(y&&""!==y.trim()){const t=J(y);w(t),K("fullSlug",t)}else{const t=q(f);w(t),K("fullSlug",t),h(!1)}},__nextHasNoMarginBottom:!0,__next40pxDefaultSize:!0})]}),(0,p.jsx)("div",{className:"duplicate-settings-fields__featured-image",style:{minWidth:"200px",width:"35%",flex:"0 0 auto"},children:(()=>{if(!G&&X&&Z)return(0,p.jsx)(Z,{children:(0,p.jsx)(X,{onSelect:t=>{const e={id:t.id,url:t.url,thumbnail:t.sizes?.thumbnail?.url||t.url,alt:t.alt||""};d&&d(e)},allowedTypes:["image"],value:c?.id,render:({open:t})=>et(t)})});try{return et(()=>tt())}catch(t){return console.error("Error rendering featured image UI:",t),(0,p.jsxs)("div",{children:[(0,p.jsxs)("p",{children:["Error rendering featured image UI: ",t.message]}),(0,p.jsx)(i.Button,{variant:"secondary",onClick:()=>tt(),__next40pxDefaultSize:!0,children:(0,r.__)("Set featured image","post-duplicator")})]})}})()})]}),(0,p.jsxs)(i.__experimentalHStack,{spacing:"16px",alignment:"stretch",children:[(0,p.jsx)(i.SelectControl,{label:(0,r.__)("Post Type","post-duplicator"),value:m.type,options:Y((()=>{const t={...a};if(l?.type&&!t[l.type]){const e=(window.postDuplicatorVars?.allPostTypes||[]).find(t=>t.id===l.type);if(e)t[l.type]=e.label;else{const e=l.type.split("_").map(t=>t.charAt(0).toUpperCase()+t.slice(1)).join(" ");t[l.type]=e}}const e={};return t.same&&(e.same=t.same,delete t.same),Object.entries(t).sort((t,e)=>t[1].localeCompare(e[1],void 0,{sensitivity:"base"})).forEach(([t,s])=>{e[t]=s}),e})()),onChange:t=>K("type",t),__nextHasNoMarginBottom:!0,__next40pxDefaultSize:!0}),(0,p.jsx)(i.SelectControl,{label:(0,r.__)("Post Status","post-duplicator"),value:m.status,options:Y(o),onChange:t=>K("status",t),__nextHasNoMarginBottom:!0,__next40pxDefaultSize:!0}),(0,p.jsx)(i.SelectControl,{label:(0,r.__)("Post Parent","post-duplicator"),value:E||"",options:U,onChange:t=>{V(t),K("selectedParentId",t?parseInt(t):null)},disabled:!I(),__nextHasNoMarginBottom:!0,__next40pxDefaultSize:!0})]}),(0,p.jsxs)(i.__experimentalHStack,{spacing:"16px",alignment:"stretch",children:[(0,p.jsx)(i.SelectControl,{label:(0,r.__)("Post Author","post-duplicator"),value:M||"",options:[{label:(0,r.__)("No Author","post-duplicator"),value:""},...j],onChange:t=>{$(t),K("selectedAuthorId",t?parseInt(t):null)},__nextHasNoMarginBottom:!0,__next40pxDefaultSize:!0}),(0,p.jsxs)("div",{ref:L,style:{flex:1,position:"relative"},children:[(0,p.jsx)(i.TextControl,{label:(0,r.__)("Post Date","post-duplicator"),value:A,onChange:t=>{F(t)},onBlur:()=>{try{const t=new Date(A);if(isNaN(t.getTime()))F(Q(B));else{const s=t.toISOString();H(s),F(Q(s));const a={...m,timestamp:"custom",customDate:s};g(a),e(a)}}catch(t){F(Q(B))}},__nextHasNoMarginBottom:!0,__next40pxDefaultSize:!0}),(0,p.jsx)(i.Button,{ref:W,onClick:()=>O(!R),"aria-expanded":R,icon:u,style:{position:"absolute",right:"2px",top:"26px",minWidth:"36px",height:"36px",padding:"0"},variant:"tertiary"}),R&&(0,p.jsx)(i.Popover,{anchorRef:L,placement:"bottom-start",offset:8,onClose:()=>O(!1),children:(0,p.jsx)("div",{style:{padding:"16px"},children:(0,p.jsx)(i.DateTimePicker,{currentDate:B,onChange:t=>{(t=>{const s=t instanceof Date?t.toISOString():new Date(t).toISOString();H(s),F(Q(s));const a={...m,timestamp:"custom",customDate:s};g(a),e(a)})(t),O(!1)},is12Hour:!1})})})]})]})]})},g=({taxonomies:t,onChange:e,enabled:s,onToggle:a})=>{const[o,l]=(0,n.useState)(!1),[c,d]=(0,n.useState)({});(0,n.useEffect)(()=>{if(t&&t.length>0){const e={};t.forEach(t=>{e[t.slug]=t.assignedTermIds||[]}),d(e)}},[t]);const u=t?t.length:0,m=t?t.reduce((t,e)=>t+e.terms.length,0):0,g=Object.values(c).reduce((t,e)=>t+e.length,0);return t&&0!==t.length?(0,p.jsxs)("div",{className:"duplicate-post-modal__taxonomy-section",style:{opacity:s?1:.5},children:[(0,p.jsxs)("div",{className:"duplicate-post-modal__section-header",onClick:t=>{t.target.closest(".components-toggle-control")||l(!o)},style:{display:"flex",alignItems:"center",gap:"12px",padding:"12px",cursor:"pointer",borderBottom:o?"1px solid rgba(0, 0, 0, 0.1)":"none"},children:[(0,p.jsx)(i.ToggleControl,{checked:s,onChange:a,__nextHasNoMarginBottom:!0}),(0,p.jsxs)("div",{style:{flex:1},children:[(0,p.jsx)("span",{className:"duplicate-post-modal__section-label",children:(0,r.__)("Taxonomies","post-duplicator")}),s&&(0,p.jsxs)("span",{className:"duplicate-post-modal__section-count",children:[" ","(",u," ",(0,r.__)("taxonomies","post-duplicator"),","," ",g||m," ",(0,r.__)("terms","post-duplicator"),")"]})]})]}),o&&(0,p.jsx)("div",{className:"duplicate-post-modal__section-content",style:{padding:"16px"},children:(0,p.jsx)(i.__experimentalVStack,{spacing:"20px",children:t.map(t=>{const s=c[t.slug]||[],a=t.terms.map(t=>t.name),o=t.terms.filter(t=>s.includes(t.id)).map(t=>t.name);return(0,p.jsxs)("div",{children:[(0,p.jsx)("label",{style:{display:"block",marginBottom:"8px",fontWeight:500},children:t.label}),(0,p.jsx)(i.FormTokenField,{value:o,suggestions:a,onChange:s=>{const a=s.map(e=>{const s=t.terms.find(t=>t.name===e);return s?s.id:null}).filter(t=>null!==t);((t,s)=>{const a={...c,[t]:s};d(a),e&&e(a)})(t.slug,a)},__experimentalExpandOnFocus:!0,__experimentalShowHowTo:!1,__nextHasNoMarginBottom:!0,__next40pxDefaultSize:!0})]},t.slug)})})})]}):null},_=(0,p.jsx)(c.SVG,{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",children:(0,p.jsx)(c.Path,{fillRule:"evenodd",clipRule:"evenodd",d:"M12 5.5A2.25 2.25 0 0 0 9.878 7h4.244A2.251 2.251 0 0 0 12 5.5ZM12 4a3.751 3.751 0 0 0-3.675 3H5v1.5h1.27l.818 8.997a2.75 2.75 0 0 0 2.739 2.501h4.347a2.75 2.75 0 0 0 2.738-2.5L17.73 8.5H19V7h-3.325A3.751 3.751 0 0 0 12 4Zm4.224 4.5H7.776l.806 8.861a1.25 1.25 0 0 0 1.245 1.137h4.347a1.25 1.25 0 0 0 1.245-1.137l.805-8.861Z"})}),h=({customMeta:t,onChange:e,enabled:s,onToggle:a})=>{const[o,l]=(0,n.useState)(!1),[c,d]=(0,n.useState)([]);(0,n.useEffect)(()=>{t&&t.length>0?d(t.map(t=>({key:t.key,value:t.value,type:t.type||"string",isSerialized:t.isSerialized||!1,originalValue:t.originalValue||t.value,isDeleted:!1}))):d([])},[t]);const u=c.filter(t=>!t.isDeleted).length,m=(t,s,a)=>{const o=[...c];if(o[t]={...o[t],[s]:a},"value"===s&&("array"===o[t].type||"object"===o[t].type))try{const e=JSON.parse(a);o[t].type=Array.isArray(e)?"array":"object"}catch(t){}if(d(o),e){const t=o.filter(t=>!t.isDeleted).map(t=>({key:t.key,value:t.value,type:t.type,isSerialized:t.isSerialized}));e(t)}};return t&&0!==t.length?(0,p.jsxs)("div",{className:"duplicate-post-modal__custom-meta-section",style:{opacity:s?1:.5},children:[(0,p.jsxs)("div",{className:"duplicate-post-modal__section-header",onClick:t=>{t.target.closest(".components-toggle-control")||l(!o)},style:{display:"flex",alignItems:"center",gap:"12px",padding:"12px",cursor:"pointer",borderBottom:o?"1px solid rgba(0, 0, 0, 0.1)":"none"},children:[(0,p.jsx)(i.ToggleControl,{checked:s,onChange:a,__nextHasNoMarginBottom:!0}),(0,p.jsxs)("div",{style:{flex:1},children:[(0,p.jsx)("span",{className:"duplicate-post-modal__section-label",children:(0,r.__)("Custom Meta","post-duplicator")}),s&&(0,p.jsxs)("span",{className:"duplicate-post-modal__section-count",children:[" ","(",u," ",(0,r.__)("fields","post-duplicator"),")"]})]})]}),o&&(0,p.jsx)("div",{className:"duplicate-post-modal__section-content",style:{padding:"16px"},children:(0,p.jsxs)(i.__experimentalVStack,{spacing:"16px",children:[c.map((t,s)=>!t.isDeleted&&(0,p.jsx)("div",{style:{padding:"12px",border:"1px solid rgba(0, 0, 0, 0.1)",borderRadius:"4px"},children:(0,p.jsxs)(i.__experimentalHStack,{spacing:"8px",alignment:"top",children:[(0,p.jsx)("div",{style:{flex:1},children:(0,p.jsx)(i.TextControl,{label:(0,r.__)("Key","post-duplicator"),value:t.key,onChange:t=>m(s,"key",t),__nextHasNoMarginBottom:!0,__next40pxDefaultSize:!0})}),(0,p.jsx)("div",{style:{flex:2},children:"array"===t.type||"object"===t.type?(0,p.jsx)(i.TextareaControl,{label:(0,r.__)("Value (JSON)","post-duplicator"),value:t.value,onChange:t=>m(s,"value",t),onBlur:t=>((t,e)=>{const s=c[t];if("array"===s.type||"object"===s.type)try{JSON.parse(e)}catch(e){m(t,"value",s.value)}})(s,t.target.value),rows:6,__nextHasNoMarginBottom:!0,__next40pxDefaultSize:!0}):(0,p.jsx)(i.TextareaControl,{label:(0,r.__)("Value","post-duplicator"),value:t.value,onChange:t=>m(s,"value",t),rows:3,__nextHasNoMarginBottom:!0,__next40pxDefaultSize:!0})}),(0,p.jsx)("div",{children:(0,p.jsx)(i.Button,{icon:_,variant:"tertiary",onClick:()=>(t=>{const s=[...c];if(s[t].isDeleted=!0,d(s),e){const t=s.filter(t=>!t.isDeleted).map(t=>({key:t.key,value:t.value,type:t.type,isSerialized:t.isSerialized}));e(t)}})(s),label:(0,r.__)("Delete field","post-duplicator"),style:{marginTop:"32px"}})})]})},s)),(0,p.jsx)(i.Button,{variant:"secondary",onClick:()=>{const t=[...c,{key:"",value:"",type:"string",isSerialized:!1,originalValue:"",isDeleted:!1}];d(t)},style:{alignSelf:"flex-start"},children:(0,r.__)("Add Field","post-duplicator")})]})})]}):null},f=(0,p.jsx)(c.SVG,{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:(0,p.jsx)(c.Path,{d:"M6.5 12.4L12 8l5.5 4.4-.9 1.2L12 10l-4.5 3.6-1-1.2z"})}),x=(0,p.jsx)(c.SVG,{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:(0,p.jsx)(c.Path,{d:"M17.5 11.6L12 16l-5.5-4.4.9-1.2L12 14l4.5-3.6 1 1.2z"})}),y=({post:t,index:e,onUpdate:s,onDelete:a,onToggleExpand:o,isExpanded:l,showDelete:c=!0,postTypes:d,statusChoices:u,siteUrl:y,currentUser:w,defaultSettings:S})=>{const[v,j]=(0,n.useState)(t.settings||S),[P,D]=(0,n.useState)(!0),[b,T]=(0,n.useState)(!0),[C,k]=(0,n.useState)({}),[N,I]=(0,n.useState)([]),[M,$]=(0,n.useState)(t.originalPost?.featuredImage||null),[E,V]=(0,n.useState)(!1),U=void 0!==l?l:E;(0,n.useEffect)(()=>{if(t.originalPost?.taxonomies){const e={};t.originalPost.taxonomies.forEach(t=>{e[t.slug]=t.assignedTermIds||[]}),k(e)}else k({})},[t.originalPost]),(0,n.useEffect)(()=>{t.originalPost?.customMeta?I(t.originalPost.customMeta.map(t=>({key:t.key,value:t.value,type:t.type||"string",isSerialized:t.isSerialized||!1}))):I([])},[t.originalPost]),(0,n.useEffect)(()=>{t.originalPost?.featuredImage?$(t.originalPost.featuredImage):$(null)},[t.originalPost]),(0,n.useEffect)(()=>{s&&s({...t,settings:v,taxonomyData:C,customMetaData:N,featuredImage:M,includeTaxonomies:P,includeCustomMeta:b})},[v,C,N,M,P,b]);const z=()=>{o?o(t.id):V(!E)},B=(()=>{if(v?.fullTitle)return v.fullTitle;const e=v?.title||(0,r.__)("Copy","post-duplicator");return`${t.originalPost?.title||""} ${e}`})(),H=M?.thumbnail||M?.url||null;return(0,p.jsxs)("div",{className:"duplicate-post-modal__post-item "+(U?"duplicate-post-modal__post-item--expanded":"duplicate-post-modal__post-item--collapsed"),children:[(0,p.jsx)("div",{className:"duplicate-post-modal__post-item-header",onClick:t=>{t.target.closest(".duplicate-post-modal__post-item-actions")||z()},children:(0,p.jsxs)(i.__experimentalHStack,{spacing:"12px",alignment:"center",children:[H&&(0,p.jsx)("img",{src:H,alt:"",className:"duplicate-post-modal__post-item-thumbnail"}),(0,p.jsx)("h3",{className:"duplicate-post-modal__post-item-title",children:B}),(0,p.jsxs)("div",{className:"duplicate-post-modal__post-item-actions",onClick:t=>t.stopPropagation(),children:[(0,p.jsx)(i.Button,{icon:U?f:x,variant:"tertiary",onClick:t=>{t.stopPropagation(),z()},label:U?(0,r.__)("Collapse","post-duplicator"):(0,r.__)("Expand","post-duplicator")}),c&&(0,p.jsx)(i.Button,{icon:_,variant:"tertiary",onClick:e=>{e.stopPropagation(),a&&a(t.id)},label:(0,r.__)("Remove","post-duplicator")})]})]})}),U&&(0,p.jsx)("div",{className:"duplicate-post-modal__post-item-content",children:(0,p.jsxs)(i.__experimentalVStack,{spacing:"20px",children:[(0,p.jsx)(m,{settings:v,onSettingsChange:j,postTypes:d,statusChoices:u,originalPost:t.originalPost,featuredImage:M,onFeaturedImageChange:$}),t.originalPost?.taxonomies&&t.originalPost.taxonomies.length>0&&(0,p.jsx)(g,{taxonomies:t.originalPost.taxonomies,onChange:t=>{k(t)},enabled:P,onToggle:D}),t.originalPost?.customMeta&&t.originalPost.customMeta.length>0&&(0,p.jsx)(h,{customMeta:t.originalPost.customMeta,onChange:t=>{I(t)},enabled:b,onToggle:T})]})})]})},w=({posts:t,onPostsChange:e,postTypes:s,statusChoices:a,siteUrl:o,currentUser:l,defaultSettings:r,isMultipleClonesMode:c=!1})=>{const[d,u]=(0,n.useState)(new Set),m=s=>{const a=t.map(t=>t.id===s.id?s:t);e&&e(a)},g=s=>{if(c){const e=t.filter(t=>t.isDuplicate);if(e.length<=1&&e.some(t=>t.id===s))return}const a=t.filter(t=>t.id!==s);e&&e(a);const o=new Set(d);o.delete(s),u(o)},_=t=>{const e=new Set(d);e.has(t)?e.delete(t):e.add(t),u(e)};if(!t||0===t.length)return null;const h=e=>!c||!!e.isDuplicate&&t.filter(t=>t.isDuplicate).length>1;return(0,p.jsx)(i.__experimentalVStack,{spacing:"12px",className:"duplicate-post-modal__post-list",children:t.map((t,e)=>(0,p.jsx)(y,{post:t,index:e,onUpdate:m,onDelete:g,onToggleExpand:_,isExpanded:d.has(t.id),showDelete:h(t),postTypes:s,statusChoices:a,siteUrl:o,currentUser:l,defaultSettings:r},t.id))})},S=()=>{const t=[{id:"email-customizer",name:"Email Customizer",tagline:(0,r.__)("Transform standard Gravity Forms notifications into stunning, on-brand emails using the familiar WordPress editor to build your templates.","post-duplicator"),cta:(0,r.__)("Learn More →","post-duplicator"),image:"/wp-content/plugins/post-duplicator/assets/img/marketing/email-customizer-bordered.svg",url:"https://www.metaphorcreations.com/wordpress-plugins/email-customizer/?campaign=post-duplicator&ref=266"}],[e]=(0,n.useState)(()=>{const e=Math.floor(Math.random()*t.length);return t[e]});return(0,p.jsxs)("a",{href:e.url,target:"_blank",rel:"noopener noreferrer",className:"duplicate-post-modal__marketing-banner",children:[(0,p.jsx)("div",{className:"duplicate-post-modal__marketing-banner-image",children:(0,p.jsx)("img",{src:e.image,alt:e.name})}),(0,p.jsxs)("div",{className:"duplicate-post-modal__marketing-banner-content",children:[(0,p.jsx)("div",{className:"duplicate-post-modal__marketing-banner-title",children:e.name}),(0,p.jsx)("div",{className:"duplicate-post-modal__marketing-banner-tagline",children:e.tagline})]}),(0,p.jsx)("div",{className:"duplicate-post-modal__marketing-banner-cta",children:e.cta})]})},v=({isOpen:t,onClose:e,onDuplicate:s,originalPost:a,postsToDuplicate:o,mode:l="single",defaultSettings:c,postTypes:u,statusChoices:_,siteUrl:f,currentUser:x,isLoadingPostData:y=!1,initialDuplicationResult:v=null})=>{const j=window.postDuplicatorVars?.postTypesPublicSupport||{},P="bulk"===l||o&&o.length>0||v&&Array.isArray(v),[D,b]=(0,n.useState)("multiple-clones"===l),[T,C]=(0,n.useState)(2),k=()=>o&&o.length>0?o:a?[{id:`post-${a.id}`,originalPost:a,settings:{...c},isDuplicate:!1}]:[],[N,I]=(0,n.useState)(k()),[M,$]=(0,n.useState)(c),[E,V]=(0,n.useState)(!1),[U,z]=(0,n.useState)(!0),[B,H]=(0,n.useState)(!0),[A,F]=(0,n.useState)({}),[R,O]=(0,n.useState)([]),[L,W]=(0,n.useState)(null),[X,Z]=(0,n.useState)("idle"),[G,J]=(0,n.useState)(null),[q,K]=(0,n.useState)(""),[Q,Y]=(0,n.useState)([]),[tt,et]=(0,n.useState)(0),st=(0,n.useRef)(!1);(0,n.useEffect)(()=>{if(t&&!st.current)if(v)$(c),Array.isArray(v)?(Y(v),Z("complete"),I([])):(v.postId&&J(v.postId),v.title&&K(v.title),W(v.featuredImage||null),v.postType&&$({...c,type:v.postType===a?.type?"same":v.postType}),Z("complete"),I([]));else{$(c),z(!0),H(!0),Z("idle"),J(null),K(""),Y([]);const t=k();I(t),b("multiple-clones"===l),C(2)}!t&&st.current&&(et(t=>t+1),$(c),z(!0),H(!0),F({}),O([]),W(null),Y([])),st.current=t},[t,c,l,v]),(0,n.useEffect)(()=>{v&&(Array.isArray(v)?(Y(v),Z("complete")):(v.postId&&J(v.postId),v.title&&K(v.title),W(v.featuredImage||null),v.postType&&$(t=>({...t,type:v.postType===a?.type?"same":v.postType})),Z("complete")))},[v,a]),(0,n.useEffect)(()=>{if(t&&"idle"===X){const t=k();I(t)}},[a,o,t,X]),N.filter(t=>t.isDuplicate).length;const at=(0,n.useRef)(T),ot=(0,n.useRef)(!1);(0,n.useEffect)(()=>{at.current=T},[T]),(0,n.useEffect)(()=>{if(D&&!P&&"idle"===X&&!ot.current){const t=N.filter(t=>t.isDuplicate).length;t<at.current&&t>=1&&(ot.current=!0,C(t),setTimeout(()=>{ot.current=!1},0))}},[N,D,P,X]);const it=(t,e,s)=>{if(!e.time_offset)return null;let a;a="duplicate"===e.timestamp&&s?.date?new Date(s.date):new Date;const o=(864e5*(e.time_offset_days||0)+36e5*(e.time_offset_hours||0)+6e4*(e.time_offset_minutes||0)+1e3*(e.time_offset_seconds||0))*(t+1);return"newer"===e.time_offset_direction?a.setTime(a.getTime()+o):a.setTime(a.getTime()-o),a.toISOString()};if((0,n.useEffect)(()=>{if(!D||P||"idle"!==X)return;const t=N.find(t=>!t.isDuplicate);if(!t)return;if(!c.time_offset)return;const e=N.map((e,s)=>{if(!e.isDuplicate)return e;const a=N.filter(t=>t.isDuplicate).findIndex(t=>t.id===e.id);if(-1===a)return e;const o=it(a,c,t.originalPost);return o?{...e,settings:{...e.settings,customDate:o,timestamp:"custom"}}:e});e.some((t,e)=>t.settings?.customDate!==N[e]?.settings?.customDate)&&I(e)},[c.time_offset,c.time_offset_days,c.time_offset_hours,c.time_offset_minutes,c.time_offset_seconds,c.time_offset_direction,c.timestamp,D,P,X]),(0,n.useEffect)(()=>{if(!ot.current)if(D&&!P&&"idle"===X){const t=N.find(t=>!t.isDuplicate);if(!t)return;const e=N.filter(t=>t.isDuplicate),s=Math.max(1,T);if(e.length!==s){ot.current=!0;const a=[];for(let o=0;o<s;o++){const s=e[o];if(s)a.push(s);else{const e=it(o,c,t.originalPost),s={...c};e&&(s.customDate=e,s.timestamp="custom"),a.push({id:`clone-${t.originalPost.id}-${o}`,originalPost:t.originalPost,settings:s,isDuplicate:!0})}}I([t,...a]),at.current=s,setTimeout(()=>{ot.current=!1},0)}}else if(!D&&!P&&N.length>1&&"idle"===X){const t=N.find(t=>!t.isDuplicate)||N[0];t&&I([{...t,isDuplicate:!1}])}},[D,P,T,X]),(0,n.useEffect)(()=>{if(!t||"idle"!==X||D||P)return;const e=N[0]?.originalPost||a;if(e){if(e?.taxonomies){const t={};e.taxonomies.forEach(e=>{t[e.slug]=e.assignedTermIds||[]}),F(t)}else F({});O(e?.customMeta?e.customMeta.map(t=>({key:t.key,value:t.value,type:t.type||"string",isSerialized:t.isSerialized||!1})):[]),W(e?.featuredImage?e.featuredImage:null)}},[t,a,X,D,P,N]),(0,n.useEffect)(()=>{const e=D||P?N[0]?.featuredImage||null:L;if(t){const t=setTimeout(()=>{const t=document.querySelector(".duplicate-post-modal.components-modal__frame"),s=t?.closest(".components-modal__screen-overlay");s&&s.classList.add("duplicate-post-modal-overlay"),e&&t&&t.style.setProperty("--featured-image-url",`url(${e.thumbnail||e.url})`)},0);return()=>{clearTimeout(t);const e=document.querySelector(".duplicate-post-modal.components-modal__frame"),s=e?.closest(".components-modal__screen-overlay");s&&s.classList.remove("duplicate-post-modal-overlay")}}},[L,N,D,P,t]),!t)return null;const lt=()=>{"duplicating"!==X&&("complete"===X&&(Z("idle"),J(null),K("")),e())},nt=N[0]?.originalPost||a,rt=D||P?N[0]?.featuredImage||null:L,ct=o&&0!==o.length||!a||"idle"!==X?null:(0,p.jsx)(i.__experimentalHStack,{spacing:"4px",style:{flex:0},children:(0,p.jsx)(i.Button,{icon:d,size:"compact",variant:D?"primary":"secondary",onClick:()=>{const t=!D;b(t),t&&T<2&&C(2)},label:D?(0,r.__)("Multiple Clone","post-duplicator"):(0,r.__)("Single Clone","post-duplicator"),isPressed:D})});return(0,p.jsxs)(i.Modal,{title:(()=>{if(P)return(0,r.__)("Duplicate Posts","post-duplicator");if(D){const t=N[0]?.originalPost||a,e=t?.featuredImage?.thumbnail||t?.featuredImage?.url;return t?.title?e?(0,p.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:"12px"},children:[(0,p.jsx)("img",{src:e,alt:"",style:{width:"40px",height:"40px",objectFit:"cover",borderRadius:"4px",flexShrink:0}}),(0,p.jsx)("span",{children:(0,r.__)(`Duplicate: ${t.title}`,"post-duplicator")})]}):(0,r.__)(`Duplicate: ${t.title}`,"post-duplicator"):(0,r.__)("Duplicate Post","post-duplicator")}const t=N[0]?.originalPost||a;return t?.title?M.fullTitle?M.fullTitle:`${t.title} ${M.title}`:""})(),onRequestClose:lt,headerActions:ct,className:"duplicate-post-modal "+(rt?"duplicate-post-modal--has-featured-image":""),size:"large",style:{borderRadius:0},children:[(0,p.jsx)("div",{className:"duplicate-post-modal__content",style:{paddingBottom:"idle"===X?"77px":"0"},children:y?(0,p.jsxs)("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",padding:"60px 20px",minHeight:"200px"},children:[(0,p.jsx)(i.Spinner,{}),(0,p.jsx)("p",{style:{marginTop:"16px",color:"#646970"},children:P||o&&o.length>0?(0,r.__)("Loading posts data...","post-duplicator"):(0,r.__)("Loading post data...","post-duplicator")})]}):"idle"===X?(0,p.jsxs)(p.Fragment,{children:[(0,p.jsxs)(i.__experimentalVStack,{className:"duplicate-post-modal__settings",spacing:"20px",children:[D&&!P&&(!o||0===o.length)&&a&&(0,p.jsx)("div",{className:"duplicate-post-modal__clone-count",children:(0,p.jsx)(i.__experimentalNumberControl,{label:(0,r.__)("Number of Clones","post-duplicator"),value:T,onChange:t=>{const e=Math.max(1,Math.min(50,parseInt(t)||1));C(e)},min:1,max:50,__nextHasNoMarginBottom:!0,__next40pxDefaultSize:!0})}),!D&&!P&&(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(m,{settings:M,onSettingsChange:$,postTypes:u,statusChoices:_,originalPost:nt,featuredImage:L,onFeaturedImageChange:W},`duplicate-settings-${nt?.id||0}-${tt}`),nt?.taxonomies&&nt.taxonomies.length>0&&(0,p.jsx)(g,{taxonomies:nt.taxonomies,onChange:t=>{F(t)},enabled:U,onToggle:z}),nt?.customMeta&&nt.customMeta.length>0&&(0,p.jsx)(h,{customMeta:nt.customMeta,onChange:t=>{O(t)},enabled:B,onToggle:H})]}),(D||P)&&(0,p.jsx)(w,{posts:D&&!P?N.filter(t=>t.isDuplicate):N,onPostsChange:t=>{if(D&&!P){if(t.filter(t=>t.isDuplicate).length<1)return;const e=N.find(t=>!t.isDuplicate);I(e?[e,...t]:t)}else I(t)},postTypes:u,statusChoices:_,siteUrl:f,currentUser:x,defaultSettings:c,isMultipleClonesMode:D&&!P})]}),(0,p.jsx)(S,{})]}):(0,p.jsxs)("div",{className:"duplicate-post-modal__status",children:[!D&&!P&&(0,p.jsxs)("div",{className:"duplicate-post-modal__status-item",children:[(()=>{const t=L||v&&v.featuredImage;return t&&(t.thumbnail||t.url)?(0,p.jsx)("img",{src:t.thumbnail||t.url,alt:"",className:"duplicate-post-modal__status-thumbnail"}):null})(),(0,p.jsx)("h3",{className:"duplicate-post-modal__status-title",children:q}),(0,p.jsx)("div",{className:"duplicate-post-modal__status-actions",children:"duplicating"===X?(0,p.jsx)(i.Spinner,{}):(0,p.jsxs)(p.Fragment,{children:[(()=>{const t=G||v&&v.postId;if(!t)return null;let e;e=v&&v.postType?v.postType:"same"===M.type?a?.type:M.type;const s=!1!==j[e],o=v?.permalink||Q[0]?.permalink||`${f}/?p=${t}`;return s&&(0,p.jsx)(i.Button,{variant:"secondary",onClick:()=>window.open(o,"_blank"),children:(0,r.__)("View Post","post-duplicator")})})(),(()=>{const t=G||v&&v.postId;if(!t)return null;let e;e=v&&v.postType?v.postType:"same"===M.type?a?.type:M.type;const s=e&&"post"!==e?`${f}/wp-admin/post.php?post=${t}&action=edit&post_type=${e}`:`${f}/wp-admin/post.php?post=${t}&action=edit`;return(0,p.jsx)(i.Button,{variant:"primary",onClick:()=>{window.open(s,"_blank")},children:(0,r.__)("Edit Post","post-duplicator")})})()]})})]}),(D||P)&&(0,p.jsxs)(i.__experimentalVStack,{spacing:"12px",className:"duplicate-post-modal__success-list",children:["duplicating"===X&&(0,p.jsxs)("div",{style:{textAlign:"center",padding:"20px"},children:[(0,p.jsx)(i.Spinner,{}),(0,p.jsx)("p",{style:{marginTop:"12px"},children:(0,r.__)("Duplicating posts...","post-duplicator")})]}),"complete"===X&&0===Q.length&&(0,p.jsx)("div",{style:{textAlign:"center",padding:"20px"},children:(0,p.jsx)("p",{children:(0,r.__)("No posts were duplicated.","post-duplicator")})}),Q.length>0&&Q.map((t,e)=>(0,p.jsx)("div",{className:"duplicate-post-modal__success-item "+(t.success?"":"duplicate-post-modal__success-item--error"),children:t.success?(0,p.jsxs)(p.Fragment,{children:[t.featuredImage&&(0,p.jsx)("img",{src:t.featuredImage.thumbnail||t.featuredImage.url,alt:"",className:"duplicate-post-modal__status-thumbnail"}),(0,p.jsx)("h3",{className:"duplicate-post-modal__status-title",children:t.title}),(0,p.jsxs)("div",{className:"duplicate-post-modal__status-actions",children:[(()=>{const e=t.postType||t.originalPost?.type,s=!1!==j[e],a=t.permalink||`${f}/?p=${t.postId}`;return s&&(0,p.jsx)(i.Button,{variant:"secondary",onClick:()=>window.open(a,"_blank"),children:(0,r.__)("View Post","post-duplicator")})})(),(0,p.jsx)(i.Button,{variant:"primary",onClick:()=>{const e=t.postType||t.originalPost?.type,s=e&&"post"!==e?`${f}/wp-admin/post.php?post=${t.postId}&action=edit&post_type=${e}`:`${f}/wp-admin/post.php?post=${t.postId}&action=edit`;window.open(s,"_blank")},children:(0,r.__)("Edit Post","post-duplicator")})]})]}):(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)("h3",{className:"duplicate-post-modal__status-title",children:t.title||t.originalPost?.title||(0,r.__)("Unknown Post","post-duplicator")}),(0,p.jsxs)("div",{className:"duplicate-post-modal__status-error",children:[(0,r.__)("Error:","post-duplicator")," ",t.error]})]})},e))]})]})}),"idle"===X&&(0,p.jsxs)(i.__experimentalHStack,{alignment:"right",className:"duplicate-post-modal__footer",style:{position:"absolute",bottom:"0px",left:"0",padding:"20px",borderTop:"1px solid rgba(0, 0, 0, 0.1)",background:"#FFF"},children:[(0,p.jsx)(i.Button,{variant:"tertiary",onClick:lt,disabled:E||y,children:(0,r.__)("Cancel","post-duplicator")}),(0,p.jsx)(i.Button,{variant:"primary",onClick:async()=>{if(0===N.length)return;V(!0),Z("duplicating"),Y([]);const t=[];if(D||P){const e=D&&!P?N.filter(t=>t.isDuplicate):N;for(let a=0;a<e.length;a++){const o=e[a],i=o.settings||c,l=o.taxonomyData||{},n=o.customMetaData||[],p=o.featuredImage||null,d=void 0===o.includeTaxonomies||o.includeTaxonomies,u=void 0===o.includeCustomMeta||o.includeCustomMeta,m=i.fullTitle||`${o.originalPost.title} ${i.title||(0,r.__)("Copy","post-duplicator")}`;try{const e={...i,includeTaxonomies:d,includeCustomMeta:u,...d?{taxonomyData:l}:{},customMetaData:n,featuredImageId:p?.id||null};await new Promise((a,l)=>{s(o.originalPost.id,e,{onSuccess:e=>{const s="same"===i.type?o.originalPost.type:i.type;t.push({success:!0,postId:e.duplicate_id,permalink:e.permalink,title:m,originalPost:o.originalPost,featuredImage:p,postType:s}),Y([...t]),a(e)},onError:e=>{console.error(`Error duplicating post ${o.originalPost.id}:`,e),t.push({success:!1,error:e.message||e.data?.message||"Unknown error",title:m,originalPost:o.originalPost}),Y([...t]),a(null)}})})}catch(e){t.push({success:!1,error:e.message||"Unknown error",title:m,originalPost:o.originalPost}),Y([...t])}}Z("complete"),V(!1)}else{const e=N[0],a=M.fullTitle||`${e.originalPost.title} ${M.title}`;K(a);try{const o=void 0!==M.selectedParentId?M.selectedParentId:e.originalPost?.parent>0?e.originalPost.parent:null,i={...M,includeTaxonomies:U,includeCustomMeta:B,...U?{taxonomyData:A}:{},customMetaData:R,featuredImageId:L?.id||null,selectedParentId:o};await new Promise((o,l)=>{s(e.originalPost.id,i,{onSuccess:s=>{const i="same"===M.type?e.originalPost.type:M.type;t.push({success:!0,postId:s.duplicate_id,permalink:s.permalink,title:a,originalPost:e.originalPost,featuredImage:L,postType:i}),Y(t),J(s.duplicate_id),Z("complete"),V(!1),o(s)},onError:s=>{console.error("Error duplicating:",s),t.push({success:!1,error:s.message||s.data?.message||"Unknown error",originalPost:e.originalPost}),Y(t),Z("complete"),V(!1),l(s)}})})}catch(t){}}},disabled:E||y||0===N.length,isBusy:E,children:E?(0,r.__)("Duplicating...","post-duplicator"):(()=>{if(P||D){const t=D&&!P?T:N.length;return(0,r.__)(`Duplicate ${t} ${1===t?"Post":"Posts"}`,"post-duplicator")}const t=N[0]?.originalPost||a,e="same"===M.type?t?.type:M.type;let s=u[e];if(!s&&e){const t=(window.postDuplicatorVars?.allPostTypes||[]).find(t=>t.id===e);s=t?.label||e}else s||(s=e);return(0,r.__)(`Duplicate ${s}`,"post-duplicator")})()})]})]})},j=async(t,e,s={})=>{const{onSuccess:a,onError:o}=s,i=Number.parseInt(e?.selectedParentId,10),l=Number.isFinite(i)&&i>0?i:null;try{const s=await fetch(`${postDuplicatorVars.restUrl}duplicate-post`,{method:"POST",headers:{"X-WP-Nonce":postDuplicatorVars.nonce,"Content-Type":"application/json"},body:JSON.stringify({original_id:t,...e,selectedParentId:l})});if(!s.ok){const t=await s.json(),e=new Error(t.message||"Failed to duplicate post");throw e.data=t,e}const o=await s.json();return o.duplicate_id&&a&&a(o),o}catch(t){throw console.error("Error duplicating post:",t),o&&o(t),t}};(0,a.registerPlugin)("post-duplicator-button",{render:()=>{const[t,e]=(0,n.useState)(!1),[s,a]=(0,n.useState)(null),[c,d]=(0,n.useState)(!1),[u,m]=(0,n.useState)([]),[g,_]=(0,n.useState)([]),[h,f]=(0,n.useState)(null),[x,y]=(0,n.useState)(null),[w,S]=(0,n.useState)(null),[P,D]=(0,n.useState)(!1),b=window.postDuplicatorVars?.enabledPostTypesForDuplication||[],{postId:T,postType:C,postStatus:k,postTypeLabel:N,postTitle:I,postSlug:M,postDate:$,postAuthor:E,postParent:V,featuredMediaId:U}=(0,l.useSelect)(t=>{const e=t("core/editor"),s=e.getCurrentPost(),a=e.getCurrentPostType(),o=t("core").getPostType(a),i=e.getEditedPostAttribute("author"),l=t("core").getUser(i),n=l?l.name:"Unknown Author",r=e.getEditedPostAttribute("parent")||0,c=e.getEditedPostAttribute("featured_media");return{postId:s.id,postType:a,postStatus:e.getEditedPostAttribute("status"),postTypeLabel:o?o.labels.singular_name:"Post",postTitle:e.getEditedPostAttribute("title"),postSlug:e.getEditedPostAttribute("slug"),postDate:e.getEditedPostAttribute("date"),postAuthor:n,postParent:r,featuredMediaId:c}},[]);if(!b.includes(C))return null;if((0,n.useEffect)(()=>{if(c&&T){const t=async()=>{try{const t=await fetch(`${postDuplicatorVars.restUrl}post-data/${T}`,{headers:{"X-WP-Nonce":postDuplicatorVars.nonce}});if(t.ok){const e=await t.json();m(e.taxonomies||[]),_(e.customMeta||[])}const e=await fetch(`${postDuplicatorVars.restUrl}post-full-data/${T}`,{headers:{"X-WP-Nonce":postDuplicatorVars.nonce}});if(e.ok){const t=await e.json();f(t.featuredImage||null),y(t.parentPost||null)}else{if(V&&V>0)try{const t=await fetch(`${postDuplicatorVars.restUrl}post-full-data/${V}`,{headers:{"X-WP-Nonce":postDuplicatorVars.nonce}});if(t.ok){const e=await t.json();y({id:e.id,title:e.title})}else y(null)}catch(t){console.error("Error fetching parent post:",t),y(null)}else y(null);f(null)}}catch(t){console.error("Error fetching post data:",t),f(null),y(null)}};t()}},[c,T,V,C,U]),"publish"!==k||!T)return null;const z={id:T,title:I,type:C,status:k,slug:M,date:$,author:E,parent:V||0,parentPost:x||null,taxonomies:u,customMeta:g,featuredImage:h};return(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(o.PluginPostStatusInfo,{className:"m4c-duplicate-post-status-info",children:(0,p.jsxs)("div",{className:"m4c-duplicate-post-wrapper",style:{paddingTop:"16px"},children:[(0,p.jsx)(i.Button,{variant:"secondary",className:"m4c-duplicate-post-gutenberg",onClick:()=>{"basic"===(postDuplicatorVars.mode||"advanced")?(async()=>{e(!0),a(null);try{const t=await fetch(`${postDuplicatorVars.restUrl}post-data/${T}`,{headers:{"X-WP-Nonce":postDuplicatorVars.nonce}});let s={},o=[];if(t.ok){const e=await t.json();(e.taxonomies||[]).forEach(t=>{s[t.slug]=t.assignedTermIds||[]}),o=(e.customMeta||[]).map(t=>({key:t.key,value:t.value,type:t.type||"string",isSerialized:t.isSerialized||!1}))}const i=await fetch(`${postDuplicatorVars.restUrl}post-full-data/${T}`,{headers:{"X-WP-Nonce":postDuplicatorVars.nonce}});let l=null,n=null;if(i.ok){const t=await i.json();l=t.featuredImage?.id||null,n=t.featuredImage||null}const r={...postDuplicatorVars.defaultSettings,includeTaxonomies:!0,includeCustomMeta:!0,taxonomyData:s,customMetaData:o,featuredImageId:l};await j(T,r,{onSuccess:async t=>{e(!1);const s=postDuplicatorVars.singleAfterDuplicationAction||"notice",a="same"===r.type?C:r.type,o=`${I} ${postDuplicatorVars.defaultSettings.title}`;let i=null;try{const e=await fetch(`${postDuplicatorVars.restUrl}post-full-data/${t.duplicate_id}`,{headers:{"X-WP-Nonce":postDuplicatorVars.nonce}});e.ok&&(i=(await e.json()).featuredImage||null)}catch(t){console.error("Error fetching duplicated post featured image:",t)}if("notice"===s)S({postId:t.duplicate_id,permalink:t.permalink,title:o,featuredImage:i,postType:a}),D(!0);else if("new_tab"===s){const e="post"!==a?`${postDuplicatorVars.siteUrl}/wp-admin/post.php?post=${t.duplicate_id}&action=edit&post_type=${a}`:`${postDuplicatorVars.siteUrl}/wp-admin/post.php?post=${t.duplicate_id}&action=edit`;window.open(e,"_blank")}else if("same_tab"===s){const e="post"!==a?`${postDuplicatorVars.siteUrl}/wp-admin/post.php?post=${t.duplicate_id}&action=edit&post_type=${a}`:`${postDuplicatorVars.siteUrl}/wp-admin/post.php?post=${t.duplicate_id}&action=edit`;window.location.href=e}else"refresh"===s&&window.location.reload()},onError:t=>{a(t.message||t.data?.message||"Failed to duplicate post"),e(!1)}})}catch(t){console.error("Error in basic mode duplication:",t),a("Failed to duplicate post. Please try again."),e(!1)}})():d(!0)},disabled:t,children:(0,r.__)(`Duplicate ${N}`,"post-duplicator")}),s&&(0,p.jsx)("div",{className:"m4c-duplicate-error",children:s})]})}),(0,p.jsx)(v,{isOpen:c||P,onClose:()=>{d(!1),D(!1),S(null)},onDuplicate:async(t,s,o)=>{e(!0),a(null);const i=t||T;await j(i,s,{onSuccess:t=>{e(!1),o?.onSuccess&&o.onSuccess(t)},onError:t=>{a(t.message||t.data?.message||"Failed to duplicate post"),e(!1),o?.onError&&o.onError(t)}})},originalPost:z,defaultSettings:postDuplicatorVars.defaultSettings,postTypes:postDuplicatorVars.postTypes,statusChoices:postDuplicatorVars.statusChoices,siteUrl:postDuplicatorVars.siteUrl,currentUser:postDuplicatorVars.currentUser,initialDuplicationResult:P&&w?{postId:w.postId,permalink:w.permalink,title:w.title,featuredImage:w.featuredImage,postType:w.postType}:null})]})}})})();