PageSourceSearch

https://airawath.com/_next/static/chunks/1924-906ef98741ae034e.js

js airawath.com collected 2026-10-02 01:24:19 UTC 140,316 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1924],{48641:function(e,t,n){n.d(t,{H:function(){return l},e:function(){return o}});var r=n(2265),i=n(88781);let a=(0,r.createContext)(i.Wk),o=a.Provider;function l(){return(0,r.useContext)(a)}},74122:function(e,t,n){var r=n(57437),i=n(2265),a=n(75277),o=n(31047),l=n(91723),s=n(83774),d=n(99397),u=n(40875),c=n(88781);let h=[{field:"title",label:"Title",icon:(0,r.jsx)(a.Z,{size:14})},{field:"date",label:"Date",icon:(0,r.jsx)(o.Z,{size:14})},{field:"time",label:"Time",icon:(0,r.jsx)(l.Z,{size:14})},{field:"datetime",label:"Date & Time",icon:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(o.Z,{size:14}),(0,r.jsx)(l.Z,{size:14})]})},{field:"location",label:"Location",icon:(0,r.jsx)(s.Z,{size:14})}];t.Z=e=>{let{onAddText:t,existingBoundFields:n,variant:o="icon"}=e,[l,s]=(0,i.useState)(!1),g=(0,i.useRef)(null),m=(0,i.useRef)(null),f=(0,i.useRef)(null);(0,i.useEffect)(()=>{if(!l)return;let e=e=>{g.current&&!g.current.contains(e.target)&&s(!1)};return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[l]);let p=()=>{var e,t;return Array.from(null!==(t=null===(e=f.current)||void 0===e?void 0:e.querySelectorAll('[role="menuitem"]'))&&void 0!==t?t:[])};(0,i.useEffect)(()=>{var e;l&&(null===(e=p()[0])||void 0===e||e.focus())},[l]);let v=function(){var e;let t=!(arguments.length>0)||void 0===arguments[0]||arguments[0];s(!1),t&&(null===(e=m.current)||void 0===e||e.focus())},x=e=>{("ArrowDown"===e.key||"ArrowUp"===e.key)&&(e.preventDefault(),s(!0))},b=e=>{t(e),v()};return(0,r.jsxs)("div",{ref:g,onBlur:e=>{e.currentTarget.contains(e.relatedTarget)||s(!1)},style:{position:"relative",display:"inline-block"},children:["button"===o?(0,r.jsxs)("button",{type:"button",ref:m,onKeyDown:x,onClick:()=>s(e=>!e),className:"flex items-center gap-2 px-4 py-2.5 rounded-xl transition-colors hover:bg-gray-100",style:{border:c.T5,fontFamily:c.ut,fontSize:13,fontWeight:600,color:c.DM.text},"aria-haspopup":"menu","aria-expanded":l,children:[(0,r.jsx)(d.Z,{size:16}),"Create new text",(0,r.jsx)(u.Z,{size:14})]}):(0,r.jsxs)("button",{type:"button",ref:m,onKeyDown:x,onClick:()=>s(e=>!e),className:"flex items-center justify-center gap-0.5 p-1.5 hover:bg-gray-100 rounded-md transition-colors",style:{color:c.DM.text,border:"none",background:"none",cursor:"pointer"},"aria-label":"Add new textbox","aria-haspopup":"menu","aria-expanded":l,children:[(0,r.jsx)(d.Z,{size:18}),(0,r.jsx)(u.Z,{size:12})]}),l&&(0,r.jsxs)("div",{ref:f,role:"menu",onKeyDown:e=>{if("Escape"===e.key){e.preventDefault(),v();return}let t=p();if(0===t.length)return;let n=t.indexOf(document.activeElement),r="ArrowDown"===e.key?(n+1)%t.length:"ArrowUp"===e.key?(n-1+t.length)%t.length:"Home"===e.key?0:"End"===e.key?t.length-1:-1;-1!==r&&(e.preventDefault(),t[r].focus())},className:"absolute ".concat("button"===o?"left-0":"right-0"," top-full mt-1 z-50 flex flex-col py-1"),style:{border:c.T5,borderRadius:c.zf.radius,backgroundColor:"#fff",boxShadow:"0 8px 24px rgba(0,0,0,0.12)",minWidth:170},children:[h.map(e=>{let t=!!(e.field&&(null==n?void 0:n.has(e.field)));return(0,r.jsxs)("button",{type:"button",role:"menuitem","aria-disabled":t,onClick:()=>{t||b(e.field)},className:"flex items-center gap-2 px-3 py-2 text-left transition-colors hover:bg-gray-50",style:{fontFamily:c.ut,fontSize:13,fontWeight:500,color:t?"#d1d5db":c.DM.black,border:"none",background:"none",cursor:t?"not-allowed":"pointer"},children:[(0,r.jsx)("span",{className:"flex items-center gap-1",style:{color:t?"#d1d5db":c.DM.text,width:20},children:e.icon}),e.label,t&&(0,r.jsx)("span",{style:{fontSize:10,color:"#9ca3af",marginLeft:"auto"},children:"Added"})]},e.field||"normal")}),(0,r.jsx)("div",{style:{height:1,backgroundColor:"#e5e7eb",margin:"4px 0"}}),(0,r.jsxs)("button",{type:"button",role:"menuitem",onClick:()=>b(),className:"flex items-center gap-2 px-3 py-2 text-left transition-colors hover:bg-gray-50",style:{fontFamily:c.ut,fontSize:13,fontWeight:500,color:c.DM.black,border:"none",background:"none",cursor:"pointer"},children:[(0,r.jsx)("span",{style:{color:c.DM.text,width:20},children:(0,r.jsx)(a.Z,{size:14})}),"Normal Textbox"]})]})]})}},19589:function(e,t,n){var r=n(57437);n(2265);var i=n(42208),a=n(88781);t.Z=e=>{let{active:t,onClick:n}=e;return(0,r.jsxs)("button",{type:"button",onClick:n,"aria-pressed":t,className:"absolute top-3.5 left-5 flex items-center gap-1 pl-3 pr-1.5 py-1.5 rounded-md z-20 cursor-pointer transition-opacity hover:opacity-80",style:{backgroundColor:t?a.DM.primary:a.DM.bgLight,border:a.T5,op
1acity:t?1:.5},children:[(0,r.jsx)(i.Z,{size:24,color:t?"#fff":a.DM.text}),(0,r.jsx)("span",{className:"text-base font-medium whitespace-nowrap",style:{fontFamily:a.ut,color:t?"#fff":a.DM.text},children:"PREVIEW"})]})}},78266:function(e,t,n){n.d(t,{$R:function(){return c},IW:function(){return u},R8:function(){return d},tZ:function(){return s}});var r=n(2265),i=n(27600);let a=(e,t)=>"draft:".concat(e||"none",":").concat(t||"new"),o=(e,t)=>"pending:".concat(e||"none",":").concat(t||"new"),l=(e,t)=>"prev:".concat(e||"none",":").concat(t||"new"),s=e=>{let{templateId:t,eventId:n,textElements:o,imageElements:s,paintStrokes:d,backgroundUrl:u,backgroundColor:c,enabled:h}=e,[g,m]=(0,r.useState)(!1),[f,p]=(0,r.useState)(null),[v,x]=(0,r.useState)(!1),[b,y]=(0,r.useState)(null),[w,k]=(0,r.useState)(null),S=(0,r.useRef)(null),E=(0,r.useRef)(!1),C=(0,r.useRef)(!1),A=(0,r.useRef)(null),I=a(t,n),T=l(t,n),M=(0,r.useRef)(I);M.current!==I&&(M.current=I,E.current=!1,A.current=null),(0,r.useEffect)(()=>{(async()=>{try{let e=await (0,i.U2)(I);e&&1===e.version&&(m(!0),p(e.timestamp),y(e));let t=await (0,i.U2)(T);t&&1===t.version&&(x(!0),k(t))}catch(e){console.warn("IndexedDB read failed (previous version check):",e)}})()},[I,T]),(0,r.useEffect)(()=>{if(!h)return;if(!C.current){C.current=!0;return}E.current=!0;let e={version:1,timestamp:Date.now(),templateId:t,eventId:n,textElements:o,imageElements:s,paintStrokes:d,backgroundUrl:u.startsWith("data:")?"":u,backgroundColor:c};return A.current=e,S.current&&clearTimeout(S.current),S.current=setTimeout(async()=>{if(E.current)try{await (0,i.t8)(I,e),E.current=!1,A.current=null}catch(e){console.warn("IndexedDB autosave write failed:",e)}},5e3),()=>{S.current&&clearTimeout(S.current)}},[h,t,n,o,s,d,u,c,I]),(0,r.useEffect)(()=>()=>{A.current&&E.current&&(0,i.t8)(I,A.current).catch(e=>console.warn("IndexedDB draft save on unmount failed:",e))},[I]),(0,r.useEffect)(()=>{if(!h)return;let e=e=>{E.current&&e.preventDefault()};return window.addEventListener("beforeunload",e),()=>window.removeEventListener("beforeunload",e)},[h]);let j=(0,r.useCallback)(()=>{b&&(window.dispatchEvent(new CustomEvent("editor:restore-draft",{detail:b})),m(!1),p(null),y(null))},[b]),R=(0,r.useCallback)(async()=>{try{await (0,i.IV)(I)}catch(e){console.warn("[useEditorAutosave] IndexedDB delete failed (dismissDraft):",e)}m(!1),p(null),y(null)},[I]),D=(0,r.useCallback)(async()=>{try{await (0,i.IV)(I)}catch(e){console.warn("[useEditorAutosave] IndexedDB delete failed (clearDraft):",e)}E.current=!1,m(!1),p(null)},[I]),L=(0,r.useCallback)(async()=>{let e={version:1,timestamp:Date.now(),templateId:t,eventId:n,textElements:o,imageElements:s,paintStrokes:d,backgroundUrl:u.startsWith("data:")?"":u,backgroundColor:c};try{await (0,i.t8)(T,e),x(!0),k(e)}catch(e){console.warn("[useEditorAutosave] IndexedDB set failed (savePreviousVersion):",e)}},[T,t,n,o,s,d,u,c]),_=(0,r.useCallback)(()=>{w&&(window.dispatchEvent(new CustomEvent("editor:restore-draft",{detail:w})),x(!1),k(null))},[w]),W=(0,r.useCallback)(async()=>{try{await (0,i.IV)(T)}catch(e){console.warn("[useEditorAutosave] IndexedDB delete failed (dismissPrevious):",e)}x(!1),k(null)},[T]),P=(0,r.useCallback)(()=>{E.current=!1,A.current=null},[]),H=(0,r.useCallback)(()=>{E.current=!0,C.current=!0},[]);return{hasDraft:g,draftTimestamp:f,restoreDraft:j,dismissDraft:R,hasPreviousVersion:v,restorePrevious:_,dismissPrevious:W,clearDraft:D,savePreviousVersion:L,isDirty:E.current,resetDirty:P,markDirty:H}},d=async(e,t,n)=>{let r=o(e,t);try{await (0,i.t8)(r,{...n,timestamp:Date.now()})}catch(r){console.warn("IndexedDB pending save failed, falling back to sessionStorage:",r),sessionStorage.setItem("pendingEditorSave:".concat(e||"none",":").concat(t||"new"),JSON.stringify(n))}},u=async(e,t)=>{let n=o(e,t);try{let e=await (0,i.U2)(n);if(e)return e}catch(e){}let r=sessionStorage.getItem("pendingEditorSave:".concat(e||"none",":").concat(t||"new"));if(r)return JSON.parse(r);let a=sessionStorage.getItem("pendingEditorSave");return a?JSON.parse(a):null},c=async(e,t)=>{let n=o(e,t);try{await (0,i.IV)(n)}catch(e){}sessionStorage.removeItem("pendingEditorSave:".concat(e||"none",":").concat(t||"new")),sessionStorage.removeItem("pendingEditorSave")}},21924:function(e,t,n){n.r(t),n.d(t,{default:function(){return tE}});var r=n(57437),i=n(2265),a=n(30166),o=n(99376),l=n(78693),s=n(35389),d=n(82156),u=n(5002),c=n(71096),h=n.n(c),g=n(7261),m=n(68575),f=n(23780),p=n(24937);async function v(e){if("image/gif"===e.type||e.size<=512e3)return e;try{let t=await (0,p.Z)(e,{maxSizeMB:1.5,maxWidthOrHeight:1800,useWebWorker:!0,fileType:"image/webp",initialQuality:.9,preserveExif:!1});if(t.size>=e.size)return e;return((1-t.size/e.size)*100).toFixed(0),t}catch(t){return e}}var x=n(45347),b=n(57061),y=n(39438),w=n(75345),k=n(88781),S=n(56864),E=n(48641);
1function C(e){return e.naturalWidth&&e.naturalHeight&&e.naturalWidth>0&&e.naturalHeight>0?{width:e.naturalWidth,height:e.naturalHeight}:e.originalBox&&e.originalBox.width>0&&e.originalBox.height>0?{width:e.originalBox.width,height:e.originalBox.height}:{width:e.width,height:e.height}}function A(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:.6*k.Wk.WIDTH,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:.5*k.Wk.HEIGHT,i=e>0?e:1,a=t>0?t:1,o=Math.min(n/i,r/a),l=Math.round(a*o);return{x:k.Wk.WIDTH/2,y:(k.Wk.HEIGHT-l)/2,width:Math.round(i*o),height:l}}let I=()=>{let[e,t]=(0,i.useState)([]),[n,r]=(0,i.useState)([]),[a,o]=(0,i.useState)([]),l=(0,i.useRef)(a);l.current=a;let s=a.length>0?a[a.length-1]:null,d=(0,i.useMemo)(()=>s?e.findIndex(e=>e.id===s):-1,[s,e]),u=(0,i.useMemo)(()=>s?n.findIndex(e=>e.id===s):-1,[s,n]),c=e=>o([e]),h=()=>o([]),g=e[d]||null,m=n[u]||null;return{textElements:e,setTextElements:t,imageElements:n,setImageElements:r,selectedIds:a,setSelectedIds:o,selectedIdsRef:l,selectElement:c,toggleElement:e=>o(t=>t.includes(e)?t.filter(t=>t!==e):[...t,e]),deselectAll:h,deleteSelectedElements:()=>{let e=new Set(l.current);t(t=>t.filter(t=>!(e.has(t.id)&&!t.locked))),r(t=>t.filter(t=>!(e.has(t.id)&&!t.locked))),o([])},selectedTextIndex:d,selectedImageIndex:u,selectedText:g,selectedImage:m,updateText:(e,n)=>{s&&t(t=>{let r=t.findIndex(e=>e.id===s);if(r<0)return t;let i=[...t];return i[r]={...i[r],[e]:n,...["content","fontSize","fontFamily","fontWeight","fontStyle","color","textAlign","textTransform","letterSpacing","lineHeight","opacity","textDecoration","textCurve"].includes(e)?{isUserEdited:!0}:{}},i})},addTextElement:e=>{let n=e&&({title:{content:"Your Event Title",fontSize:48,fontWeight:700,width:500},date:{content:"Select Date",fontSize:24,fontWeight:500,width:400},time:{content:"Select Time",fontSize:24,fontWeight:500,width:400},datetime:{content:"Select Date & Time",fontSize:24,fontWeight:500,width:500},location:{content:"Event Location",fontSize:20,fontWeight:400,width:450}})[e]||{},r=n.content||"New Text",i={x:450,y:500,width:300,fontSize:48,fontFamily:"Inter",color:"#080808",textAlign:"center",textTransform:"none",lineHeight:1.2,letterSpacing:0,opacity:100,...n},a=(0,S.ju)("text"),o={id:a,content:r,locked:!1,...i,...e?{boundField:e,originalContent:r,originalStyles:(0,S.kK)({...i,fontWeight:n.fontWeight})}:{}};t(e=>[...e,o]),c(a)},deleteTextElement:e=>{t(t=>t.filter((t,n)=>n!==e)),h()},toggleLock:e=>{t(t=>{let n=[...t];return n[e]={...n[e],locked:!n[e].locked},n})},duplicateTextElement:e=>{let n=(0,S.ju)("text");t(t=>{let r=t[e];return r?[...t,{...r,id:n,x:r.x+30,y:r.y+30,locked:!1,boundField:void 0}]:t}),c(n)},updateImage:(e,t)=>{s&&r(n=>{let r=n.findIndex(e=>e.id===s);if(r<0)return n;let i=[...n],a=i[r];if("imageShape"===e&&t&&"none"!==t&&a.cropRegion)return i[r]={...a,imageShape:t,cropRegion:void 0,objectFit:"crop"===a.objectFit?"fit":a.objectFit},i;if("objectFit"===e){var o;let e=C(a),n=e.width,l=e.height,s=null!==(o=a.originalBox)&&void 0!==o?o:{x:a.x,y:a.y,width:a.width,height:a.height};if("fit"===t){let e=Math.min(k.Wk.WIDTH/n,k.Wk.HEIGHT/l),o=l*e;i[r]={...a,objectFit:t,originalBox:s,width:n*e,height:o,x:k.Wk.WIDTH/2,y:(k.Wk.HEIGHT-o)/2}}else"fill"===t?i[r]={...a,objectFit:t,originalBox:s,width:k.Wk.WIDTH,height:k.Wk.HEIGHT,x:k.Wk.WIDTH/2,y:0}:i[r]={...a,objectFit:t,originalBox:s,imageShape:void 0};if("crop"!==t&&i[r].cropRegion){let e=i[r].cropRegion,a=n*e.w,o=l*e.h;if("fit"===t){let e=Math.min(k.Wk.WIDTH/a,k.Wk.HEIGHT/o),n=o*e;i[r]={...i[r],objectFit:t,width:a*e,height:n,x:k.Wk.WIDTH/2,y:(k.Wk.HEIGHT-n)/2}}}}else i[r]={...a,[e]:t};return i})},updateImageSize:(e,t)=>{s&&r(n=>{let r=n.findIndex(e=>e.id===s);if(r<0)return n;let i=[...n],a=i[r],o=a.width/a.height;return"width"===e?i[r]={...a,width:t,height:t/o}:i[r]={...a,height:t,width:t*o},i})},deleteImageElement:e=>{r(t=>t.filter((t,n)=>n!==e)),h()},duplicateImageElement:e=>{let t=(0,S.ju)("img");r(n=>{let r=n[e];return r?[...n,{...r,id:t,x:r.x+30,y:r.y+30,locked:!1}]:n}),c(t)},toggleImageLock:e=>{r(t=>{let n=[...t];return n[e]={...n[e],locked:!n[e].locked},n})}}};var T=n(21513);let M=e=>{let{activeToolbarItem:t,canvasRef:n,deselectAll:r,onBeforeStrokeEnd:a,onBeforeErase:o}=e,[l,s]=(0,i.useState)("pen"),[d,u]=(0,i.useState)(18),[c,h]=(0,i.useState)(32),[g,m]=(0,i.useState)("#000000"),[f,p]=(0,i.useState)([]),v=(0,i.useRef)(null),x=(0,i.useRef)(!1),b=(0,i.useRef)(null),y=(0,i.useRef)(null),w=c/2,k=(0,i.useCallback)(()=>"eraser"===l?c:"marker"===l?2.5*d:"brush"===l?1.2*d:d,[l,c,d]),E=e=>{if(!n.current)return null;let t=n.current.getBoundingClientRect();return{x:(e.clientX-t.left)/t.width*T.vj,y:(e.clientY-t.top)/t.height*T.lf}},C=(0,i.useCallback)(e=>{let n=y.current;if(!n||"PAINT"!==t)return;let r=Math.max(k()/2,1);e.save(),e.setLineDash("eraser"===l?[10,8]:[]),e.beginPath(),e.arc(n.x,n.y,r,0,2*Math.PI),e.lineWidth=4,e.strokeStyle="rgba(255,255,255,0.9)",e.stroke(),e.beginPath(),e.arc(n.x,n.y,r,0,2*Math.PI),e.lineWidth=2,e.strokeStyle="rgba(8,8,8,0.8)",e.stroke(),e.beginPath(),e.arc(n.x,n.y,1.5,0,2*Math.PI),e.fillStyle="rgba(8,8,8,0.8)",e.fill(),e.restore(
1)},[t,l,k]),A=(0,i.useCallback)(()=>{let e=v.current;if(!e)return;let t=e.getContext("2d");t&&(t.clearRect(0,0,T.vj,T.lf),b.current&&b.current.points.length>1&&(0,S.vQ)(t,b.current),C(t))},[C]);(0,i.useEffect)(()=>{A()},[A]);let I=(e,t,n)=>{if(0===t.length)return!1;if(1===t.length){let r=e.x-t[0].x,i=e.y-t[0].y;return Math.sqrt(r*r+i*i)<=n}for(let r=0;r<t.length-1;r++){let i=t[r],a=t[r+1],o=(i.x-a.x)**2+(i.y-a.y)**2;if(0===o)continue;let l=((e.x-i.x)*(a.x-i.x)+(e.y-i.y)*(a.y-i.y))/o;l=Math.max(0,Math.min(1,l));let s={x:i.x+l*(a.x-i.x),y:i.y+l*(a.y-i.y)},d=e.x-s.x,u=e.y-s.y;if(Math.sqrt(d*d+u*u)<=n)return!0}return!1},M=(e,t,n)=>{let r=[],i=[];for(let a of e.points){let e=a.x-t.x,o=a.y-t.y;Math.sqrt(e*e+o*o)<=n?i.length&&(r.push(i),i=[]):i.push(a)}return i.length&&r.push(i),r.filter(e=>e.length>=2).map((t,n)=>({...e,id:0===n?e.id:(0,S.ju)("stroke"),points:t}))},j=e=>{p(t=>t.flatMap(t=>{var n;if(!(null==t?void 0:null===(n=t.points)||void 0===n?void 0:n.length))return[];if(!I(e,t.points,w))return[t];let r=M(t,e,w);return 1===r.length&&r[0].points.length===t.points.length?[t]:r}))};return{paintTool:l,setPaintTool:s,brushSize:d,setBrushSize:u,eraserSize:c,setEraserSize:h,paintColor:g,setPaintColor:m,paintStrokes:f,setPaintStrokes:p,paintCanvasRef:v,startDrawing:e=>{if("PAINT"!==t)return;let n=E(e);if(n){try{e.currentTarget.setPointerCapture(e.pointerId)}catch(e){}if(x.current=!0,y.current=n,"eraser"===l){null==o||o(),j(n),A();return}b.current={id:(0,S.ju)("stroke"),tool:l,color:g,size:d,points:[n]},r()}},continueDrawing:e=>{let t=E(e);if(y.current=t,!x.current){A();return}if(t){if("eraser"===l){j(t),A();return}b.current&&(b.current.points.push(t),A())}},endDrawing:()=>{if(x.current&&(x.current=!1,"eraser"!==l&&b.current)){if(b.current.points.length>1){let e=b.current;null==a||a(),p(t=>[...t,e])}b.current=null,A()}},clearToolHover:()=>{y.current&&(y.current=null,A())},undoPaintStroke:()=>{p(e=>e.slice(0,-1))},clearPaintStrokes:()=>{p([])}}},j=e=>{let{textElements:t,imageElements:n,paintStrokes:r,selectedIds:a,selectElement:o,toggleElement:l,deselectAll:s,setSelectedIds:d,setTextElements:u,setImageElements:c,setPaintStrokes:h}=e,[g,m]=(0,i.useState)([]),[f,p]=(0,i.useState)(new Set),[v,x]=(0,i.useState)(null),[b,y]=(0,i.useState)(null);return(0,i.useRef)(null),(0,i.useEffect)(()=>{m(e=>{let i=new Set(e.map(e=>e.id)),a=new Set;t.forEach(e=>{e&&e.id&&a.add(e.id)}),n.forEach(e=>{e&&a.add(e.id)}),r.forEach(e=>{e&&a.add(e.id)});let o=e.filter(e=>a.has(e.id)),l=[];return r.forEach(e=>{e&&!i.has(e.id)&&l.push({id:e.id,type:"paint"})}),[...n].reverse().forEach(e=>{e&&!i.has(e.id)&&l.push({id:e.id,type:"image"})}),t.forEach(e=>{e&&e.id&&!i.has(e.id)&&l.push({id:e.id,type:"text"})}),[...l,...o]})},[t,n,r]),{layerOrder:g,setLayerOrder:m,hiddenLayers:f,setHiddenLayers:p,getLayerZIndex:e=>{let t=g.findIndex(t=>t.id===e);return t<0?1:g.length-t},isLayerHidden:e=>f.has(e),toggleLayerVisibility:e=>{p(t=>{let n=new Set(t);return n.has(e)?n.delete(e):(n.add(e),a.includes(e)&&d(t=>t.filter(t=>t!==e))),n})},toggleLayerLock:(e,t)=>{"text"===t?u(t=>t.map(t=>t.id===e?{...t,locked:!t.locked}:t)):"image"===t&&c(t=>t.map(t=>t.id===e?{...t,locked:!t.locked}:t))},deleteLayer:(e,t)=>{a.includes(e)&&d(t=>t.filter(t=>t!==e)),"text"===t?u(t=>t.filter(t=>t.id!==e)):"image"===t?c(t=>t.filter(t=>t.id!==e)):"paint"===t&&h(t=>t.filter(t=>t.id!==e))},onLayerReorder:(e,t)=>{m(n=>{let r=Array.from(n),[i]=r.splice(e,1);return r.splice(t,0,i),r})},selectLayerElement:(e,t)=>{if("paint"===e.type){s();return}t?l(e.id):o(e.id)}}};var R=n(44219);function D(e,t,n,r,i){let a=r/2;return{id:e,left:t-a,right:t+a,centerX:t,top:n,bottom:n+i,centerY:n+i/2}}function L(e){let{canvasWidth:t,canvasHeight:n,margin:r=0}=e,i=[{pos:0,type:"edge"},{pos:t,type:"edge"},{pos:t/2,type:"center"}],a=[{pos:0,type:"edge"},{pos:n,type:"edge"},{pos:n/2,type:"center"}];return r>0&&(i.push({pos:r,type:"margin"},{pos:t-r,type:"margin"}),a.push({pos:r,type:"margin"},{pos:n-r,type:"margin"})),{xTargets:i,yTargets:a}}function _(e,t,n){var r;let i=null!==(r=n.threshold)&&void 0!==r?r:8,{xTargets:a,yTargets:o}=L(n),l=[],s=[],d=[e.left,e.centerX,e.right],u=[e.top,e.centerY,e.bottom];for(let e of t){for(let t of d)for(let n of[e.left,e.centerX,e.right]){let e=Math.abs(t-n);e<i&&l.push({offset:n-t,guidePos:n,type:"element",distance:e})}for(let t of u)for(let n of[e.top,e.centerY,e.bottom]){let e=Math.abs(t-n);e<i&&s.push({offset:n-t,guidePos:n,type:"element",distance:e})}}for(let e of d)for(let t of a){let n=Math.abs(e-t.pos);n<i&&l.push({offset:t.pos-e,guidePos:t.pos,type:t.type,distance:n})}for(let e of u)for(let t of o){let n=Math.abs(e-t.pos);n<i&&s.push({offset:t.pos-e,guidePos:t.pos,type:t.type,distance:n})}let c=0,h=0,g=[];if(l.length>0){l.sort((e,t)=>
1e.distance-t.distance);let e=l[0];c=e.offset;let t=new Set;for(let n of l).5>Math.abs(n.offset-e.offset)&&!t.has(Math.round(n.guidePos))&&(t.add(Math.round(n.guidePos)),g.push({axis:"x",position:n.guidePos,type:n.type}))}if(s.length>0){s.sort((e,t)=>e.distance-t.distance);let e=s[0];h=e.offset;let t=new Set;for(let n of s).5>Math.abs(n.offset-e.offset)&&!t.has(Math.round(n.guidePos))&&(t.add(Math.round(n.guidePos)),g.push({axis:"y",position:n.guidePos,type:n.type}))}return{x:e.centerX+c,y:e.top+h,guides:g}}function W(e,t,n,r){var i;let a=null!==(i=r.threshold)&&void 0!==i?i:8,{xTargets:o,yTargets:l}=L(r),s="x"===t?o:l,d=a,u=e,c="element";for(let r of n)for(let n of"x"===t?[r.left,r.centerX,r.right]:[r.top,r.centerY,r.bottom]){let t=Math.abs(e-n);t<d&&(d=t,u=n,c="element")}for(let t of s){let n=Math.abs(e-t.pos);n<d&&(d=n,u=t.pos,c=t.type)}let h=[];return d<a&&h.push({axis:t,position:u,type:c}),{snappedPos:u,guides:h}}function P(e,t,n,r,i){e.current&&(r.current=function(e,t,n,r){let i=e.getBoundingClientRect();if(0===i.width||0===i.height)return[];let a=t/i.width,o=n/i.height,l=[];return e.querySelectorAll("[data-element-overlay]").forEach(e=>{let t=e.dataset.elementId;if(!t||(r instanceof Set?r.has(t):t===r))return;let n=e.getBoundingClientRect(),s=(n.left-i.left)*a,d=(n.top-i.top)*o,u=n.width*a,c=n.height*o;l.push({id:t,left:s,right:s+u,centerX:s+u/2,top:d,bottom:d+c,centerY:d+c/2})}),l}(e.current,t,n,i))}function H(e,t,n){if(!e.current)return 100;let r=t/e.current.getBoundingClientRect().height;try{let t=e.current.querySelector('[data-element-id="'.concat(CSS.escape(n),'"]'));if(!t)return 100;return t.getBoundingClientRect().height*r}catch(e){return 100}}function z(e){let t=1/0,n=1/0,r=-1/0,i=-1/0;for(let a of e){let e=a.width/2;t=Math.min(t,a.startX-e),r=Math.max(r,a.startX+e),n=Math.min(n,a.startY),i=Math.max(i,a.startY+a.height)}return{x:t,y:n,width:r-t,height:i-n}}let B=e=>{let{canvasConfig:t,canvasRef:n,textElements:r,imageElements:a,selectedIds:o,setTextElements:l,setImageElements:s,onBeforeDrag:d,onBeforeResize:u,isLayerHidden:c,onSnapGuidesChange:h,onDragPositionChange:g}=e,m=t.WIDTH,f=t.HEIGHT,p=(0,i.useRef)(r);p.current=r;let v=(0,i.useRef)(a);v.current=a;let x=(0,i.useRef)(o);x.current=o;let b=(0,i.useRef)([]),y=i.useMemo(()=>({canvasWidth:m,canvasHeight:f,threshold:8,margin:40}),[m,f]),w=e=>P(n,m,f,b,e),k=e=>H(n,f,e),S=(0,i.useCallback)(()=>null==h?void 0:h([]),[h]),E=(0,i.useRef)(null),C=(0,i.useCallback)(e=>{let t=E.current;if(!t||!n.current)return;let r=n.current.getBoundingClientRect(),i=(e.clientX-t.startX)*(m/r.width),a=(e.clientY-t.startY)*(f/r.height),o=_(D("group",t.groupBBox.x+t.groupBBox.width/2+i,t.groupBBox.y+a,t.groupBBox.width,t.groupBBox.height),b.current,y),d=o.x-(t.groupBBox.x+t.groupBBox.width/2),u=o.y-t.groupBBox.y;null==h||h(o.guides),null==g||g({x:Math.round(o.x),y:Math.round(o.y)});let c=new Map(t.elements.map(e=>[e.id,e]));l(e=>e.map(e=>{let t=c.get(e.id);return t&&"text"===t.type?{...e,x:Math.max(0,Math.min(m,t.startX+d)),y:Math.max(0,Math.min(f,t.startY+u))}:e})),s(e=>e.map(e=>{let t=c.get(e.id);return t&&"image"===t.type?{...e,x:Math.max(0,Math.min(m,t.startX+d)),y:Math.max(0,Math.min(f,t.startY+u))}:e}))},[n,m,f,l,s,y,h,g]),A=(0,i.useCallback)(()=>{E.current=null,S(),null==g||g(null),window.removeEventListener("mousemove",C),window.removeEventListener("mouseup",A)},[C,S,g]),I=(0,i.useCallback)(e=>{if(!n.current)return;let t=x.current;if(t.length<2)return;null==d||d();let r=[],i=new Set(t);for(let e of p.current){if(!i.has(e.id)||e.locked||(null==c?void 0:c(e.id)))continue;let t=k(e.id);r.push({id:e.id,type:"text",startX:e.x,startY:e.y,width:e.width,height:t})}for(let e of v.current)!i.has(e.id)||e.locked||(null==c?void 0:c(e.id))||r.push({id:e.id,type:"image",startX:e.x,startY:e.y,width:e.width,height:e.height});0!==r.length&&(w(i),E.current={startX:e.clientX,startY:e.clientY,elements:r,groupBBox:z(r)},window.addEventListener("mousemove",C),window.addEventListener("mouseup",A))},[n,d,C,A,c]),T=(0,i.useRef)(null),M=(0,i.useCallback)(e=>{let t=T.current;if(!t||!n.current)return;let r=n.current.getBoundingClientRect(),i=m/r.width,a=(e.clientX-t.startX)*i,o=(e.clientY-t.startY)*(f/r.height),d=t.handle,u=a*("tr"===d||"br"===d?1:-1)+o*("bl"===d||"br"===d?1:-1);if(.25>Math.abs(u))return;let c=Math.min(...t.elements.map(e=>m/Math.max(1,e.width))),h=Math.max(50,Math.min(t.groupBBox.width*c,t.groupBBox.width+2*u))/t.groupBBox.width,g=t.groupBBox.x+t.groupBBox.width/2,p=t.groupBBox.y+t.groupBBox.height/2,v=new Map,x=new Map;for(let e of t.elements){let t=e.startX-g,n=e.startY+e.height/2-p,r=g+t*h,i=p+n*h,a=Math.min(m,Math.max(50,e.width*h)),o=Math.min(f,Math.max(50,e.height*h));if("text"===e.type){let t=Math.max(8,Math.min(800,Math.round((e.fontSize||48)*h)));v.set(e.id,{x:Math.max(0,Math.min(m,r)),y:Math.max(0,Math.min(f,i-o/2)),width:a,fontSize:t})}else x.set(e.id,{x:Math.max(0,Math.min(m,r)),y:Math.max(0,Math.min(f,i-o/2)),width:a,height:o})}v.size>0&&l(e=>e.map(e=>{let t=v.get(e.id);return t?{...e,...t}:e})),x.size>0&&s(e=>e.map(e=>{let t=x.get(e.id);return t?{...e,...t}:e}))},[n,m,f,l,s]),j=(0,i.useCallback)(()=>{T.current=null,null==g||g(null),window.removeEventListener("mousemove",M),window.removeEventListener("mouseup",j)},[M,g]),R=(0,i.useCallback)((e,t)=>{if(e.preventDefault(),e.stopPropagation(),!n.current)return;let r=x.current;if(r.length<2)return;null==u||u();let i=new Set(r),a=[];for(let e of p.current){if(!i.has(e.id)||e.locked||(null==c?void 0:c(e.id)))continue;let t=k(e.id);a.push({id:e.id,type:"text",startX:e.x,startY:e.y,width:e.width,height:t,fontSize:e.fontSize})}for(let e of v.current)!i.has(e.id)||e.locked||(null==c?void 0:c(e.id))||a.push({id:e.id,type:"image",startX:e.x,startY:e.y,width:e.width,height:e.height});0!==a.length&&(T.current={startX:e.clientX,startY:e.clientY,handle:t,elements:a,groupBBox:z(a)},window.addEventListener("mousemove",M),window.addEventListener("mouseup",j))},[n,u,M,j,c]);return(0,i.useEffect)(()=>()=>{window.removeEventListener("mousemove",C),window.removeEventListener("mouseup",A),window.removeEventListener("mousemove",M),window.removeEventListener("mouseup",j)},[C,A,M,j]),{onMultiDragStart:I,onGroupResizeStart:R}};var F=n(29501),U=n(95713),Z=n(33623),Y=n(34422),N=n(52869);let G=Y.Ry({nvite_title:Y.Z_().max(N.w,"Title must be less than ".concat(N.w," characters")).trim().required("Title is required"),nvite_description:Y.Z_().max(N.R,"Description must be less than ".concat(N.R," characters")).trim().required("Description is required"),nvite_date:Y.hT().required("Date is required"),nvite_time:Y.Z_().required("Time is required"),location:Y.Z_().trim().required("Location is required"),occasions:Y.Z_().trim().required("Occasion is required"),other_occasion:Y.Z_().trim().when("occasions",{is:"Other",then:e=>e.required("Other occasion is required"),otherwise:e=>e.optional()}),timezone:Y.Z_().trim().required("Timezone is required")}),X=e=>
1{let{eventId:t,templateId:n,nviteTemplateId:r,aiBackground:a,templateOccasion:o,setTextElements:l,setImageElements:s,setPaintStrokes:d}=e,[u,c]=(0,i.useState)(!0),[g,m]=(0,i.useState)(null),[p,v]=(0,i.useState)(""),[b,y]=(0,i.useState)(!1),[w,E]=(0,i.useState)("#ffffff"),[C,A]=(0,i.useState)(!1),[I,M]=(0,i.useState)(null),[j,R]=(0,i.useState)(null),[D,L]=(0,i.useState)("designer"),[_,W]=(0,i.useState)("#527288"),[P,H]=(0,i.useState)("#ffffff"),[z,B]=(0,i.useState)(""),[Y,N]=(0,i.useState)("auto"),[X,O]=(0,i.useState)([]),[q,K]=(0,i.useState)(null),[V,J]=(0,i.useState)({}),[Q,$]=(0,i.useState)([]),[ee,et]=(0,i.useState)(!1),[en,er]=(0,i.useState)(n),[ei,ea]=(0,i.useState)(null),eo=(0,i.useRef)({preset:"blur",color:"#527288",backgroundColor:"#ffffff",backgroundUrl:"",textMode:"auto",customColors:[]}),el=(0,i.useRef)(null),{watch:es,reset:ed}=(0,F.cI)({resolver:(0,U.X)(G),mode:"onChange",defaultValues:{nvite_title:"",nvite_description:"",nvite_date:void 0,nvite_time:h()().format("HH:mm"),location:"",occasions:"",other_occasion:"",timezone:Intl.DateTimeFormat().resolvedOptions().timeZone||"UTC"}}),eu=es("nvite_title"),ec=es("nvite_date"),eh=es("nvite_time"),eg=es("location");(0,i.useEffect)(()=>{let e="",t="",n="";if(ec&&(n=e=new Date(ec).toLocaleDateString("en-US",{weekday:"long",month:"long",day:"numeric"})),eh)try{let e=eh.includes("AM")||eh.includes("PM")?h()(eh,"hh:mm A"):h()(eh,"HH:mm");e.isValid()&&(t=e.format("h:mm A"),n?n+=" • "+t:n=t)}catch(e){}let r={"{{NviteTitle}}":eu||"","{{nvitetitle}}":eu||"","{{NviteDate}}":e||"","{{nvitedate}}":e||"","{{NviteTime}}":t||"","{{nvitetime}}":t||"","{{Location}}":eg||"","{{location}}":eg||""};l(i=>i&&0!==i.length?i.map(i=>{if(!i||i.isUserEdited)return i;if("title"===i.boundField&&eu)return{...i,content:eu};if("datetime"===i.boundField&&(ec||eh))return{...i,content:n||"DATE • TIME"};if("date"===i.boundField&&ec)return{...i,content:e||"DATE"};if("time"===i.boundField&&eh)return{...i,content:t||"TIME"};if("location"===i.boundField&&eg)return{...i,content:eg};let a=i.originalContent||i.content;if(/\{\{(NviteTitle|NviteDate|NviteTime|Location)\}\}/i.test(a)){let e=a;return Object.entries(r).forEach(t=>{let[n,r]=t;e=e.replace(RegExp(n.replace(/[{}]/g,"\\$&"),"gi"),r)}),{...i,content:e}}return i}):i)},[eu,ec,eh,eg]);let em=function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];(e.startsWith("https://")||e.startsWith("http://")||e.startsWith("data:image")||e.startsWith("data:video"))&&(v(e),y(t))},ef=async(e,t)=>{A(!0);try{var n,r;let i=await fetch(e),a=await i.blob();if(null==t?void 0:t.aborted)return;let o=a.type.split("/")[1]||"png",l=new File([a],"legacy-background.".concat(o),{type:a.type}),s=await (0,f.C2)(l,"background");if(null==t?void 0:t.aborted)return;let d=null===(r=s.data)||void 0===r?void 0:null===(n=r.data)||void 0===n?void 0:n.url;d?v(d):v(e)}catch(n){(null==t?void 0:t.aborted)||v(e)}finally{(null==t?void 0:t.aborted)||A(!1)}},ep=(e,t)=>{if(!e||!e.children)return[];let n=e.children,r=e.width||1080,i=e.height||1920,a=[],o=e=>{if(!e)return"";let n=e,r="DATE • TIME";return(null==t?void 0:t.event_date)&&(r=new Date(t.event_date).toLocaleDateString("en-US",{weekday:"long",month:"long",day:"numeric"}),t.event_time&&(r+=" | "+new Date("2000-01-01T".concat(t.event_time)).toLocaleTimeString("en-US",{hour:"numeric",minute:"2-digit"}))),!(n=(n=(n=n.replace(/{{NviteTitle}}/gi,(null==t?void 0:t.title)||"Your Event")).replace(/{{NviteDate}}/gi,r.split(" | ")[0])).replace(/{{NviteTime}}/gi,r.split(" | ")[1]||"")).includes("|")||(null==t?void 0:t.event_time)||(n=n.replace("|","")),n=n.replace(/{{Location}}/gi,(null==t?void 0:t.location)||"Location")},l=k.Wk.WIDTH,s=k.Wk.HEIGHT,d=l/r,u=s/i;return n.forEach((e,t)=>{if("text"===e.type){let n=e.fontSize||24,r=e.fontFamily||"Roboto",i=T.zh[r]||r;a.push({id:e.id||"legacy-".concat(t),content:o(e.text),x:e.x*d+e.width*d/2,y:e.y*u,width:e.width*d,fontSize:n*d,fontFamily:i,color:e.fill||"#000000",textAlign:e.align||"center",textTransform:"none",letterSpacing:e.letterSpacing||0,lineHeight:e.lineHeight||1.2,fontWeight:e.fontWeight||"normal",fontStyle:e.fontStyle||"normal",opacity:null!=e.opacity?100*e.opacity:100})}}),a.length>0?a:[]},ev=async(e,n,r)=>{var i,a,o,u,c,h,g,m,p,b,w;null===(i=el.current)||void 0===i||i.abort();let C=new AbortController;el.current=C;let A=C.signal,I=!1,T=null,j=!1;
1if(!e&&!n)return{foundValidBackground:!1,baseTemplateId:null,templateLoadFailed:j};try{let i=await (0,f.Bj)({template_id:e?parseInt(e):null,event_id:(0,x.E7)(t),nvite_template_id:n?parseInt(n):null});(null==i?void 0:null===(o=i.data)||void 0===o?void 0:null===(a=o.data)||void 0===a?void 0:a.base_template_id)&&(T=String(i.data.data.base_template_id));let C=null==i?void 0:null===(c=i.data)||void 0===c?void 0:null===(u=c.data)||void 0===u?void 0:u.polotno_json;if(C){if("v2_custom"===C.editor_version){if((0,S.gU)(C.background_url)?(v(C.background_url),I=!0):C.background_url&&/^[a-zA-Z0-9\/_\-\.]+$/.test(C.background_url)&&(v(C.background_url),I=!0),C.is_ai_background&&y(!0),C.background_color?E(C.background_color):C.background_url&&!(0,S.gU)(C.background_url)&&E(C.background_url),C.text_elements){let e=["title","date","time","datetime","location"],t=C.text_elements.map(t=>{let n=t.boundField||(e.includes(t.id)?t.id:void 0);return{...t,boundField:n,originalContent:t.originalContent||t.content,originalStyles:t.originalStyles||(0,S.kK)(t),isUserEdited:t.isUserEdited||!1}});l(t)}if(s(C.image_elements||(null===(g=C.custom)||void 0===g?void 0:g.image_elements)||[]),d(C.paint_strokes||(null===(m=C.custom)||void 0===m?void 0:m.paint_strokes)||[]),C.layer_order&&M(C.layer_order),C.hidden_layers&&R(C.hidden_layers),C.theme){let e=C.designer_theme||C.theme;eo.current={preset:e.preset||"blur",color:e.color||"#527288",backgroundColor:e.background_color||"#ffffff",backgroundUrl:e.background_url||"",textMode:e.text_mode||"auto",customColors:e.custom_colors||[]},W(C.theme.color||"#527288"),H(C.theme.background_color||"#ffffff"),C.theme.background_url&&(0,S.gU)(C.theme.background_url)&&B(C.theme.background_url),N(C.theme.text_mode||"auto"),O(C.theme.custom_colors||[])}C.event_fields&&J(C.event_fields),!n||(null===(p=C.theme)||void 0===p?void 0:p.is_designer_default)?L("designer"):L((null===(b=C.theme)||void 0===b?void 0:b.preset)||"designer")}else if(null===(h=C.pages)||void 0===h?void 0:h[0]){let e=C.pages[0],t=C.background_url||e.background||e.backgroundImage;t&&((0,S.gU)(t)?(v(t),I=!0):E(t));let n=null===(w=e.children)||void 0===w?void 0:w.find(e=>"image"===e.type||"video"===e.type||e.src&&(e.src.startsWith("data:video")||e.src.startsWith("data:image")||e.src.endsWith(".mp4")));if((null==n?void 0:n.src)&&(0,S.gU)(n.src)){let e=n.src;e.startsWith("data:")?ef(e,A):v(e),I=!0}let i=ep(e,r||q);if(i.length>0){let e=i.map(e=>({...e,originalContent:e.content,originalStyles:{fontSize:e.fontSize,fontFamily:e.fontFamily,fontWeight:e.fontWeight,fontStyle:e.fontStyle,color:e.color,textAlign:e.textAlign,textTransform:e.textTransform,letterSpacing:e.letterSpacing,lineHeight:e.lineHeight,opacity:e.opacity,textDecoration:e.textDecoration,textCurve:e.textCurve,width:e.width,x:e.x,y:e.y},isUserEdited:!1}));l(e)}else l([]);let a=e.children;if(a){let t=e.width||1080,r=e.height||1920,i=k.Wk.WIDTH/t,o=k.Wk.HEIGHT/r,l=a.filter(e=>"image"===e.type&&e!==n&&e.src&&"string"==typeof e.src);if(l.length>0){let e=l.map((e,t)=>({id:e.id||"legacy-img-".concat(t),src:e.src,x:(e.x||0)*i,y:(e.y||0)*o,width:(e.width||200)*i,height:(e.height||200)*o,naturalWidth:(e.width||200)*i,naturalHeight:(e.height||200)*o,opacity:null!=e.opacity?100*e.opacity:100}));s(e);let t=e.filter(e=>e.src.startsWith("data:"));t.length>0&&(async()=>{for(let r of t){if(A.aborted)return;try{var e,n;let t=await fetch(r.src),i=await t.blob();if(A.aborted)return;let a=i.type.split("/")[1]||"png",o=new File([i],"legacy-image.".concat(a),{type:i.type}),l=await (0,f.C2)(o,"image");if(A.aborted)return;let d=null===(n=l.data)||void 0===n?void 0:null===(e=n.data)||void 0===e?void 0:e.url;d&&s(e=>e.map(e=>e.id===r.id?{...e,src:d}:e))}catch(e){}}})()}}}}}catch(e){console.error("Template fetch error:",e),j=!0}return{foundValidBackground:I,baseTemplateId:T,templateLoadFailed:j}};(0,i.useEffect)(()=>{(async()=>{if(c(!0),"session"===a){try{let e=sessionStorage.getItem("ai_background_image");e&&(e.startsWith("https://")||e.startsWith("http://"))&&(v(e),y(!0))}catch(e){}finally{c(!1)}return}try{var e,i,o,l,s,d;let a=null,u=(0,x.E7)(t);if(null!==u){let t=await (0,f.Ff)({event_id:u});if(null==t?void 0:null===(e=t.data)||void 0===e?void 0:e.data){let e=t.data.data;K(e),a=e;let n=e.location||"",r=Z.W2.map(e=>e.value).includes(e.occasion);ed({nvite_title:e.title||"",nvite_description:e.description||"",nvite_date:e.event_date?h()(e.event_date,"YYYY-MM-DD").toDate():void 0,nvite_time:e.event_time?h()(e.event_time,"HH:mm:ss").format("HH:mm"):"",location:n,occasions:r?e.occasion:"Other",other_occasion:r?"":e.occasion,timezone:e.timezone||Intl.DateTimeFormat().resolvedOptions().timeZone||"UTC"});e.event_date&&(new Date(e.event_date).toLocaleDateString("en-US",{weekday:"long",month:"long",day:"numeric"}),e.event_time&&new Date("2000-01-01T".concat(e.event_time)).toLocaleTimeString("en-US",{hour:"numeric",minute:"2-digit"}))}}let c=r||((null==a?void 0:a.nvite_template_id)?String(a.nvite_template_id):null),{foundValidBackgroun
1d:g,baseTemplateId:p,templateLoadFailed:b}=await ev(n,c,a);if(b){m("We couldn't load this invitation. Check your connection and reload the page — your saved design is safe.");return}if(ea(p),!g&&p)try{let e=await (0,f.Bj)({template_id:parseInt(p),nvite_template_id:null}),t=null==e?void 0:null===(o=e.data)||void 0===o?void 0:null===(i=o.data)||void 0===i?void 0:i.polotno_json;if(t){if((0,S.gU)(t.background_url))v(t.background_url);else if(null===(l=t.pages)||void 0===l?void 0:l[0]){let e=t.pages[0],n=t.background_url||e.background||e.backgroundImage;if(n&&(0,S.gU)(n))v(n);else{let t=null===(s=e.children)||void 0===s?void 0:s.find(e=>"image"===e.type||"video"===e.type||e.src&&(e.src.startsWith("data:video")||e.src.startsWith("data:image")||e.src.endsWith(".mp4")));if((null==t?void 0:t.src)&&(0,S.gU)(t.src)){let e=t.src;e.startsWith("data:")?ef(e,null===(d=el.current)||void 0===d?void 0:d.signal):v(e)}}}}}catch(e){}}catch(e){console.error("[TemplateLoader] load() error:",e),(t||n||r)&&m("We couldn't load this invitation. Check your connection and reload the page — your saved design is safe.")}finally{c(!1)}})()},[t,n,r,a]),(0,i.useEffect)(()=>{let e=e=>{let t=e.detail;t.backgroundUrl&&em(t.backgroundUrl),t.backgroundColor&&E(t.backgroundColor)};return window.addEventListener("editor:restore-background",e),()=>window.removeEventListener("editor:restore-background",e)},[]);let ex=async()=>{let e=o||(null==q?void 0:q.occasion),n="nvite_templates_".concat(t,"_").concat(e||"all"),r=sessionStorage.getItem(n);if(r)try{let{data:e,ts:t}=JSON.parse(r);if(Date.now()-t<6e5){$(e);return}}catch(e){}et(!0);try{var i,a;let r=await (0,f.tx)({event_id:(0,x.E7)(t),page:1,limit:30,occasion:e||void 0}),o=(null==r?void 0:null===(a=r.data)||void 0===a?void 0:null===(i=a.data)||void 0===i?void 0:i.templates)||[];$(o),sessionStorage.setItem(n,JSON.stringify({data:o,ts:Date.now()}))}catch(e){console.warn("Failed to load templates:",e)}finally{et(!1)}},eb=async e=>{c(!0),er(e.toString()),l([]),s([]),d([]),v(""),E("#ffffff"),y(!1),L("designer"),W("#527288"),H("#ffffff"),N("auto"),O([]),eo.current={preset:"blur",color:"#527288",backgroundColor:"#ffffff",backgroundUrl:"",textMode:"auto",customColors:[]};let{templateLoadFailed:t}=await ev(e.toString(),null);t&&m("We couldn't load that template. Reload the page to get your invitation back — your saved design is safe."),c(!1)},ey=(0,i.useRef)(null),ew=(0,i.useCallback)(()=>{if(ey.current)return ey.current;if(!en&&!r&&!t)return Promise.resolve();let e=(async()=>{var e,n,i,a;let o=await (0,f.Bj)({template_id:en?parseInt(en):null,event_id:(0,x.E7)(t),nvite_template_id:r?parseInt(r):null}),l=null==o?void 0:null===(n=o.data)||void 0===n?void 0:null===(e=n.data)||void 0===e?void 0:e.polotno_json;if(!l)return;l.background_url&&((0,S.gU)(l.background_url)?v(l.background_url):/^[a-zA-Z0-9/_\-.]+$/.test(l.background_url)&&v(l.background_url)),(null===(i=l.theme)||void 0===i?void 0:i.background_url)&&(0,S.gU)(l.theme.background_url)&&B(l.theme.background_url);let d=l.image_elements||(null===(a=l.custom)||void 0===a?void 0:a.image_elements);if(Array.isArray(d)&&d.length>0){let e=new Map;for(let t of d)(null==t?void 0:t.id)&&"string"==typeof t.src&&t.src&&e.set(t.id,t.src);e.size>0&&s(t=>t.map(t=>{let n=e.get(t.id);return n&&n!==t.src?{...t,src:n}:t}))}})().catch(e=>{throw console.error("[useTemplateLoader.refreshTemplateUrls] failed:",e),e}).finally(()=>{ey.current=null});return ey.current=e,e},[en,r,t,s]);return{loading:u,loadError:g,backgroundUrl:p,changeBackground:em,backgroundColor:w,setBackgroundColor:E,isAiBackground:b,setIsAiBackground:y,isBackgroundUploading:C,templates:Q,templatesLoading:ee,openTemplates:ex,selectTemplate:eb,selectedTemplateId:en,baseTemplateId:ei,themePreset:D,setThemePreset:L,themeColor:_,setThemeColor:W,themeBackgroun
1dColor:P,setThemeBackgroundColor:H,themeBackgroundUrl:z,setThemeBackgroundUrl:B,themeTextMode:Y,setThemeTextMode:N,templateColors:X,setTemplateColors:O,designerTheme:eo.current,restoreDesignerTheme:()=>{let e=eo.current;W(e.color),H(e.backgroundColor),B(e.backgroundUrl),N(e.textMode),O(e.customColors)},refreshTemplateUrls:ew,initialEventFields:V,eventDetails:q,savedLayerOrder:I,savedHiddenLayers:j}};var O=n(57911),q=n(34307);let K="gif,png,webp",V=q.default.create({baseURL:"https://api.klipy.com/api/v1/".concat("qKsZAvXfpscmMmTQT0AYCKmPBO9Uf7XYeXZEwu6Fws82snWXqDYKnUqmANi2wTEe","/stickers")}),J=()=>V.get("/categories",{params:{locale:"US"}}),Q=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:30;return V.get("/trending",{params:{page:t,per_page:n,customer_id:e,locale:"US",format_filter:K}})},$=function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:30;return V.get("/search",{params:{q:e,page:n,per_page:r,customer_id:t,locale:"US",format_filter:K}})};function ee(e){return e?new Promise((t,n)=>{let r=new Image;r.crossOrigin="anonymous",r.onload=()=>t(r),r.onerror=()=>{let r=new Image;r.onload=()=>t(r),r.onerror=n,r.src=e},r.src=e}):Promise.reject(Error("Empty image source"))}let et=e=>{let{activeToolbarItem:t,imageElements:n,setImageElements:r,selectElement:a,setActiveToolbarItem:o,onBeforeAddSticker:l}=e,{user:s}=(0,m.v9)(e=>e.auth),d=(null==s?void 0:s.id)?String(s.id):"anonymous",[u,c]=(0,i.useState)([]),[h,g]=(0,i.useState)([]),[f,p]=(0,i.useState)(""),[v,x]=(0,i.useState)(null),[b,y]=(0,i.useState)(!1),[w,k]=(0,i.useState)(1),[E,C]=(0,i.useState)(!1),[A,I]=(0,i.useState)([]),[T,M]=(0,i.useState)("browse"),j=(0,i.useRef)(!1),R=(0,i.useRef)(null),D=async function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;y(!0);try{var n;let r=e?await $(e,d,t):await Q(d,t),i=null===(n=r.data)||void 0===n?void 0:n.data;i&&(g(e=>t>1?[...e,...i.data]:i.data),C(i.has_next),k(t))}catch(e){console.warn("Sticker load failed (non-critical):",e)}finally{y(!1)}},L=async()=>{try{var e,t;let n=await J(),r=null===(t=n.data)||void 0===t?void 0:null===(e=t.data)||void 0===e?void 0:e.categories;Array.isArray(r)&&c(r)}catch(e){console.warn("Sticker categories load failed:",e)}};return(0,i.useEffect)(()=>{"STICKER"!==t||j.current||(j.current=!0,L(),(async()=>{try{var e;let t=await Q(d,1,9),n=null===(e=t.data)||void 0===e?void 0:e.data;n&&I(n.data.slice(0,9))}catch(e){console.warn("Trending stickers load failed:",e)}})(),D())},[t]),(0,i.useEffect)(()=>{if("STICKER"===t&&!v)return R.current&&clearTimeout(R.current),R.current=setTimeout(()=>{f?(M("results"),D(f)):M("browse")},400),()=>{R.current&&clearTimeout(R.current)}},[f]),{stickerCategories:u,stickers:h,setStickers:g,stickerQuery:f,setStickerQuery:p,stickerActiveCategory:v,setStickerActiveCategory:x,stickersLoading:b,stickerPage:w,stickerHasNext:E,stickerTrending:A,stickerMode:T,setStickerMode:M,loadStickers:D,addStickerToCanvas:e=>{var t,n,i,s,d,u,c,h,g,m,f,p;let v=null==e?void 0:e.file;if(!v)return;let x=(null===(t=v.md)||void 0===t?void 0:t.gif)||(null===(n=v.sm)||void 0===n?void 0:n.gif)||(null===(i=v.hd)||void 0===i?void 0:i.gif)||(null===(s=v.xs)||void 0===s?void 0:s.gif)||(null===(d=v.md)||void 0===d?void 0:d.png)||(null===(u=v.sm)||void 0===u?void 0:u.png)||(null===(c=v.hd)||void 0===c?void 0:c.png)||(null===(h=v.xs)||void 0===h?void 0:h.png)||(null===(g=v.md)||void 0===g?void 0:g.webp)||(null===(m=v.sm)||void 0===m?void 0:m.webp)||(null===(f=v.hd)||void 0===f?void 0:f.webp)||(null===(p=v.xs)||void 0===p?void 0:p.webp);(null==x?void 0:x.url)&&ee(x.url).then(e=>{let t=Math.min(300/e.width,400/e.height,1),n=e.width*t,i=e.height*t;null==l||l();let s=(0,S.ju)("sticker"),d={id:s,src:x.url,x:450,y:600,width:n,height:i,naturalWidth:n,naturalHeight:i,opacity:100,source:"sticker"};r(e=>[...e,d]),a(s),o("IMAGE")}).catch(()=>{})}}},en=e=>{let t=null,n=n=>{null===t&&(t=requestAnimationFrame(()=>{e(n),t=null}))};return n._cancel=()=>{null!==t&&cancelAnimationFrame(t),t=null},n},er=e=>{let{canvasRef:t,textElements:n,imageElements:r,setTextElements:a,setImageElements:o,selectedIds:l,selectElement:s,toggleElement:d,setActiveToolbarItem:u,onBeforeDrag:c,onBeforeResize:h,onSnapGuidesChange:g,onDragPositionChange:m,onMultiDragStart:f}=e,p=(0,i.useRef)(null),v=(0,i.useRef)(null),x=(0,i.useRef)(null),b=(0,i.useRef)(null),y=(0,i.useRef)(null),w=(0,i.useRef)(null),k=(0,i.useRef)(null),S=(0,i.useRef)(null),E=(0,i.useRef)(null),C=(0,i.useRef)(null),A=(0,i.useRef)([]),I=(0,i.useRef)(0),M={canvasWidth:T.vj,canvasHeight:T.lf,threshold:8,margin:40},j=e=>P(t,T.vj,T.lf,A,e),R=e=>H(t,T.lf,e),L=()=>null==g?void 0:g([]),z=(0,i.useCallback)(e=>{let n=p.current;if(!n||!t.current)return;let r=t.current.getBoundingClientRect(),i=(e.clientX-n.startX)*(T.vj/r.width),o=(e.clientY-n.startY)*(T.lf/r.height),l=Math.max(0,Math.min(T.vj,n.elemX+i)),s=Math.max(0,Math.min(T.lf,n.elemY+o)),d=_(D("dragged",l,s,n.elemWidth,I.current),A.current,M);l=Math.max(0,Math.min(T.vj,d.x)),s=Math.max(0,Math.min(T.lf,d.y)),null==g||g(d.guides),null==m||m({x:Math.round(l),y:Math.round(s)}),a(e=>{let t=e.findIndex(e=>e.id===n.id);if(t<0)return e;let r=[...e];return r[t]={...r[t],x:l,y:s},r})},[t,a,g,m]),B=(0,i.useCallback)(()=>
1{if(p.current=null,L(),null==m||m(null),w.current){var e,t;window.removeEventListener("mousemove",w.current),null===(e=(t=w.current)._cancel)||void 0===e||e.call(t),w.current=null}window.removeEventListener("mouseup",B)},[]),F=(0,i.useCallback)(e=>{let n=v.current;if(!n||!t.current)return;let r=t.current.getBoundingClientRect(),i=n.handle;if("l"===i||"r"===i){let t=(e.clientX-n.startX)*(T.vj/r.width)*("r"===i?1:-1)*2,o=Math.max(50,Math.min(T.SC,n.startWidth+t)),l=W(n.elemX+("r"===i?o/2:-o/2),"x",A.current,M);if(l.guides.length>0){let e=2*Math.abs(l.snappedPos-n.elemX);o=Math.max(50,Math.min(T.SC,e))}null==g||g(l.guides),a(e=>{let t=e.findIndex(e=>e.id===n.id);if(t<0)return e;let r=[...e];return r[t]={...r[t],width:o},r})}else{let t="tr"===i||"br"===i?1:-1,o=(e.clientX-n.startX)*(T.vj/r.width)*t*2,l=Math.max(50,Math.min(T.SC,n.startWidth+o)),s=W(n.elemX+(t>0?l/2:-l/2),"x",A.current,M);if(s.guides.length>0){let e=2*Math.abs(s.snappedPos-n.elemX);l=Math.max(50,Math.min(T.SC,e))}null==g||g(s.guides);let d=l/n.startWidth,u=Math.max(8,Math.min(800,Math.round(n.startFontSize*d)));a(e=>{let t=e.findIndex(e=>e.id===n.id);if(t<0)return e;let r=[...e];return r[t]={...r[t],width:l,fontSize:u},r})}},[t,a,g]),U=(0,i.useCallback)(()=>{if(v.current=null,L(),k.current){var e,t;window.removeEventListener("mousemove",k.current),null===(e=(t=k.current)._cancel)||void 0===e||e.call(t),k.current=null}window.removeEventListener("mouseup",U)},[]),Z=(0,i.useCallback)(e=>{let t=x.current;if(!t)return;let n=Math.atan2(e.clientY-t.centerY,e.clientX-t.centerX)*(180/Math.PI)-t.startAngle;n=((n+180)%360+360)%360-180;let r=t.elemRotation+n;e.shiftKey&&(r=15*Math.round(r/15)),r=(r%360+360)%360,a(e=>{let n=e.findIndex(e=>e.id===t.id);if(n<0)return e;let i=[...e];return i[n]={...i[n],rotation:r},i})},[a]),Y=(0,i.useCallback)(()=>{if(x.current=null,S.current){var e,t;window.removeEventListener("mousemove",S.current),null===(e=(t=S.current)._cancel)||void 0===e||e.call(t),S.current=null}window.removeEventListener("mouseup",Y)},[]),N=(0,i.useCallback)(e=>{let n=b.current;if(!n||!t.current)return;let r=t.current.getBoundingClientRect(),i=(e.clientX-n.startX)*(T.vj/r.width),a=(e.clientY-n.startY)*(T.lf/r.height),l=Math.max(0,Math.min(T.vj,n.elemX+i)),s=Math.max(0,Math.min(T.lf,n.elemY+a)),d=_(D("dragged",l,s,n.elemWidth,n.elemHeight),A.current,M);l=Math.max(0,Math.min(T.vj,d.x)),s=Math.max(0,Math.min(T.lf,d.y)),null==g||g(d.guides),null==m||m({x:Math.round(l),y:Math.round(s)}),o(e=>{let t=e.findIndex(e=>e.id===n.id);if(t<0)return e;let r=[...e];return r[t]={...r[t],x:l,y:s},r})},[t,o,g,m]),G=(0,i.useCallback)(()=>{if(b.current=null,L(),null==m||m(null),E.current){var e,t;window.removeEventListener("mousemove",E.current),null===(e=(t=E.current)._cancel)||void 0===e||e.call(t),E.current=null}window.removeEventListener("mouseup",G)},[]),X=(0,i.useCallback)(e=>{if(!y.current||!t.current)return;let n=t.current.getBoundingClientRect(),r=y.current,i=T.vj/n.width,a=T.lf/n.height,l=(e.clientX-r.startX)*i,s=(e.clientY-r.startY)*a,d=r.handle,u=r.startWidth,c=r.startHeight;"tl"===d||"tr"===d||"bl"===d||"br"===d?c=(u=Math.max(50,Math.min(T.SC,r.startWidth+l*("tr"===d||"br"===d?1:-1)*2)))/r.aspectRatio:"l"===d||"r"===d?c=(u=Math.max(50,Math.min(T.SC,r.startWidth+l*("r"===d?1:-1)*2)))/r.aspectRatio:("t"===d||"b"===d)&&(u=(c=Math.max(50,Math.min(1100,r.startHeight+s*("b"===d?1:-1)*2)))*r.aspectRatio);let h=D("resized",r.elemX,r.elemY,u,c),m=W("r"===d||"tr"===d||"br"===d?h.right:h.left,"x",A.current,M),f=W("b"===d||"bl"===d||"br"===d?h.bottom:h.top,"y",A.current,M);null==g||g([...m.guides,...f.guides]),o(e=>{let t=e.findIndex(e=>e.id===r.id);if(t<0)return e;let n=[...e];return n[t]={...n[t],width:u,height:c},n})},[t,o,g]),O=(0,i.useCallback)(()=>{if(y.current=null,L(),C.current){var e,t;window.removeEventListener("mousemove",C.current),null===(e=(t=C.current)._cancel)||void 0===e||e.call(t),C.current=null}window.removeEventListener("mouseup",O)},[]);return(0,i.useEffect)(()=>()=>{[w,k,S,E,C].forEach(e=>{if(e.current){var t,n;window.removeEventListener("mousemove",e.current),null===(t=(n=e.current)._cancel)||void 0===t||t.call(n)}}),window.removeEventListener("mouseup",B),window.removeEventListener("mouseup",U),window.removeEventListener("mouseup",Y),window.removeEventListener("mouseup",G),window.removeEventListener("mouseup",O)},[B,U,Y,G,O]),{onDragStart:(e,t)=>{e.preventDefault();let r=n[t];if(!r)return;if(e.shiftKey){d(r.id),u("TEXT");return}if(l.length>1&&l.includes(r.id)){null==f||f(e);return}if(s(r.id),u("TEXT"),r.locked)return;null==c||c();let i=R(r.id);I.current=i,j(r.id),p.current={idx:t,id:r.id,startX:e.clientX,startY:e.clientY,elemX:r.x,elemY:r.y,elemWidth:r.width,elemHeight:i},w.current=en(z),window.addEventListener("mousemove",w.current),window.addEventListener("mouseup",B)},onResizeStart:(e,t,r)=>{e.preventDefault(),e.stopPropagation(),n[t].locked||(null==h||h(),j(n[t].id),v.current={idx:t,id:n[t].id,startX:e.clientX,startWidth:n[t].width,startFontSize:n[t].fontSize,handle:r,elemX:n[t].x},k.current=en(F),window.addEventListener("mousemove",k.current),window.addEventListener("mouseup",U))},onRotateStart:(e,r)=>{var i,a;if(e.preventDefault(),e.stopPropagation(),n[r].locked||!t.current)return;null==h||h();let o=e.target.closest("[data-element-overlay]");
1if(o){let t=o.getBoundingClientRect(),a=t.left+t.width/2,l=t.top+t.height/2,s=Math.atan2(e.clientY-l,e.clientX-a)*(180/Math.PI);x.current={idx:r,id:n[r].id,startAngle:s,elemRotation:null!==(i=n[r].rotation)&&void 0!==i?i:0,centerX:a,centerY:l}}else{let i=t.current.getBoundingClientRect(),o=n[r],l=R(o.id),s=i.left+o.x/T.vj*i.width,d=i.top+(o.y+l/2)/T.lf*i.height,u=Math.atan2(e.clientY-d,e.clientX-s)*(180/Math.PI);x.current={idx:r,id:o.id,startAngle:u,elemRotation:null!==(a=o.rotation)&&void 0!==a?a:0,centerX:s,centerY:d}}S.current=en(Z),window.addEventListener("mousemove",S.current),window.addEventListener("mouseup",Y)},onImageDragStart:(e,t)=>{e.preventDefault();let n=r[t];if(n){if(e.shiftKey){d(n.id),u("IMAGE");return}if(l.length>1&&l.includes(n.id)){null==f||f(e);return}s(n.id),u("IMAGE"),n.locked||(null==c||c(),j(n.id),b.current={idx:t,id:n.id,startX:e.clientX,startY:e.clientY,elemX:n.x,elemY:n.y,elemWidth:n.width,elemHeight:n.height},E.current=en(N),window.addEventListener("mousemove",E.current),window.addEventListener("mouseup",G))}},onImageResizeStart:(e,t,n)=>{if(e.preventDefault(),e.stopPropagation(),r[t].locked)return;null==h||h(),j(r[t].id);let i=r[t];y.current={idx:t,id:i.id,startX:e.clientX,startY:e.clientY,startWidth:i.width,startHeight:i.height,aspectRatio:i.height>0?i.width/i.height:1,handle:n,elemX:i.x,elemY:i.y},C.current=en(X),window.addEventListener("mousemove",C.current),window.addEventListener("mouseup",O)}}},ei=()=>{var e,t;let n=((null===(e=document.activeElement)||void 0===e?void 0:e.tagName)||"").toLowerCase();return"input"===n||"textarea"===n||(null===(t=document.activeElement)||void 0===t?void 0:t.isContentEditable)===!0};var ea=n(73732);let eo=null,el=null,es=()=>{eo&&(URL.revokeObjectURL(eo),eo=null)},ed=()=>{let e=el;el=null,e&&e.img.getAttribute("src")!==e.originalSrc&&e.img.setAttribute("src",e.originalSrc),es()},eu=e=>new Promise(t=>{let n=()=>t();if(e.complete&&e.naturalWidth>0){e.decode().then(n,n);return}let r=()=>{e.removeEventListener("load",i),e.removeEventListener("error",a)},i=()=>{r(),e.decode().then(n,n)},a=()=>{r(),t()};e.addEventListener("load",i),e.addEventListener("error",a)}),ec=e=>e.complete&&e.naturalWidth>0,eh=e=>{e.style.display=""},eg=e=>(eh(e),{kind:"ready",img:e}),em=async(e,t)=>{var n;es();let r=e.querySelector("img[data-capture-background]");if(!r)return{kind:"absent"};if(r.complete||await Promise.race([eu(r),new Promise(e=>setTimeout(e,t))]),ec(r))return eg(r);if(!r.complete)return eh(r),{kind:"unavailable",recoverable:!1,reason:"still-downloading"};let i=null!==(n=r.getAttribute("src"))&&void 0!==n?n:"";if(!/^https?:\/\//.test(i))return{kind:"unavailable",recoverable:!1,reason:"non-http-source"};let a="(unparseable url)";try{a=new URL(i).pathname}catch(e){}try{let e=await fetch(i,{mode:"cors",cache:"reload",signal:AbortSignal.timeout(t)});e.ok?eo=URL.createObjectURL(await e.blob()):console.warn("[editor-save.background-preflight-failed]",{keyPath:a,status:e.status})}catch(e){console.warn("[editor-save.background-preflight-failed]",{keyPath:a,err:e})}return eo&&(el={img:r,originalSrc:i},r.src=eo,await Promise.race([eu(r),new Promise(e=>setTimeout(e,t))]),ec(r))?eg(r):(console.warn("[editor-save.background-unrestored-at-capture]",{keyPath:a}),{kind:"unavailable",recoverable:!0,reason:"unrepairable"})};class ef extends Error{constructor(e,t){super(e,t),this.name="CompositeCaptureError"}}let ep=e=>{var t;return(null===(t=e.dataset)||void 0===t?void 0:t.captureBackground)!==void 0},ev=(e,t,n,r)=>{let{naturalWidth:i,naturalHeight:a}=t;if(!i||!a)throw new ef("Preview capture: background image has no decoded pixels");let o=Math.max(n/i,r/a),l=i*o,s=a*o,d=getComputedStyle(t),u=[d.borderTopLeftRadius,d.borderTopRightRadius,d.borderBottomRightRadius,d.borderBottomLeftRadius].map(e=>parseFloat(e)||0);e.save(),u.some(e=>e>0)&&"function"==typeof e.roundRect&&(e.beginPath(),e.roundRect(0,0,n,r,u),e.clip()),e.drawImage(t,(n-l)/2,(r-s)/2,l,s),e.restore()},ex=async(e,t,n)=>{let r,i;let{width:a,height:o,overlayTimeoutMs:l}=t,s=document.createElement("canvas");s.width=a,s.height=o;let d=s.getContext("2d");if(!d)throw new ef("Preview capture: 2D canvas context unavailable");d.fillStyle=getComputedStyle(e).backgroundColor||"transparent",d.fillRect(0,0,a,o),n(d,a,o);let u=e.style.backgroundColor,c=e.style.backgroundImage;e.style.backgroundColor="transparent",e.style.backgroundImage="none";try{r=await (0,ea.YM)(e,{...t,filter:e=>{var n,r;return!ep(e)&&(null===(r=null===(n=t.filter)||void 0===n?void 0:n.call(t,e))||void 0===r||r)},backgroundColor:void 0})}
1finally{e.style.backgroundColor=u,e.style.backgroundImage=c}let h=new Image;h.crossOrigin="anonymous";try{await new Promise((e,t)=>{i=setTimeout(()=>t(new ef("Preview capture: overlay layer timed out")),l),h.onload=()=>e(),h.onerror=()=>t(new ef("Preview capture: overlay layer failed to load")),h.src=r})}finally{clearTimeout(i)}await Promise.race([h.decode().catch(()=>void 0),new Promise(e=>setTimeout(e,l))]),d.drawImage(h,0,0,a,o);try{return s.toDataURL("image/png")}catch(e){throw new ef("Preview capture: composite canvas could not be exported",{cause:e})}};var eb=n(46418),ey=n(92442),ew=n(78266);let ek=()=>{throw Error("Preview capture: an image layer failed to load")};class eS extends Error{constructor(e,t){var n;super(e,t),this.userFacing=!0,this.name="UserFacingSaveError",this.recoverable=null!==(n=null==t?void 0:t.recoverable)&&void 0!==n&&n}}let eE=()=>new Promise(e=>requestAnimationFrame(()=>requestAnimationFrame(()=>e()))),eC=e=>{var t,n;return!("VIDEO"===e.tagName||(null===(t=e.classList)||void 0===t?void 0:t.contains("action-bar")))&&(null===(n=e.dataset)||void 0===n?void 0:n.captureExclude)!=="true"},eA=(e,t,n,r)=>new Promise(i=>{let a=()=>1>=Math.abs(e.offsetWidth-t)&&1>=Math.abs(e.offsetHeight-n);if(a()){i();return}let o=new ResizeObserver(()=>{a()&&(o.disconnect(),clearTimeout(l),i())});o.observe(e);let l=setTimeout(()=>{o.disconnect(),console.warn("[useEditorSave] waitForSize timeout — capturing at",e.offsetWidth,"x",e.offsetHeight,"target",t,"x",n),i()},r)}),eI=(e,t)=>new Promise((n,r)=>{if(e.readyState>=2){n();return}let i=()=>{e.removeEventListener("loadeddata",a),e.removeEventListener("canplay",a),e.removeEventListener("error",o),clearTimeout(l)},a=()=>{i(),n()},o=()=>{i(),r(Error("Video failed to load"))},l=setTimeout(()=>{i(),r(Error("Video readiness timed out"))},t);e.addEventListener("loadeddata",a),e.addEventListener("canplay",a),e.addEventListener("error",o),e.paused&&e.load()}),eT=async e=>{let t=e.current;if(!t)throw Error("Canvas container not found");let n=t.style.width,r=t.style.height,i=t.style.maxWidth,a=t.style.maxHeight,o=t.style.aspectRatio,l=t.style.getPropertyValue("-webkit-mask-image"),s=t.style.isolation,d=t.style.boxShadow,u=t.style.borderRadius,c=Array.from(t.querySelectorAll("[data-peek-hidden]")),h=c.map(e=>e.style.opacity);c.forEach(e=>{e.style.opacity="1"}),t.style.width="".concat(k.Wk.WIDTH,"px"),t.style.height="".concat(k.Wk.HEIGHT,"px"),t.style.maxWidth="none",t.style.maxHeight="none",t.style.aspectRatio="auto",t.style.setProperty("-webkit-mask-image","none"),t.style.isolation="auto",t.style.boxShadow="none",t.style.borderRadius="0";let g=t.querySelectorAll("[data-element-overlay]");g.forEach(e=>{e.style.border="1px solid transparent"});try{var m,f;await eA(t,k.Wk.WIDTH,k.Wk.HEIGHT,1e3);let e=null!==(f=null===(m=document.fonts)||void 0===m?void 0:m.ready)&&void 0!==f?f:Promise.resolve();await Promise.race([Promise.resolve(e).catch(()=>void 0),new Promise(e=>setTimeout(e,2e3))]);let n=Array.from(t.querySelectorAll("img"));await Promise.race([Promise.allSettled(n.map(e=>eu(e))),new Promise(e=>setTimeout(e,3e3))]);let r=t.querySelector("video"),i=r?{kind:"absent"}:await em(t,3e3);if("unavailable"===i.kind)throw console.warn("[editor-save.background-unavailable]",{reason:i.reason,recoverable:i.recoverable}),new eS("still-downloading"===i.reason?eb.s:eb.bi,{recoverable:i.recoverable});let a={width:k.Wk.WIDTH,height:k.Wk.HEIGHT,pixelRatio:1,includeQueryParams:!0,filter:eC,overlayTimeoutMs:3e3,fetchRequestInit:{mode:"cors",cache:"reload"},onImageErrorHandler:ek};if(r)try{await eI(r,5e3)}catch(e){throw new eS(null!==r.error?eb.bi:eb.s,{cause:e,recoverable:null!==r.error})}let o="",l=null,s="foreign-object";for(let e=1;e<=3;e++)try{if(r){if(s="video-composite",r.readyState<2)throw Error("Video background not ready at snapshot time");o=await ex(t,a,(e,t,n)=>{e.drawImage(r,0,0,t,n)})}else"ready"===i.kind?(s="image-composite",o=await ex(t,a,(e,t,n)=>{ev(e,i.img,t,n)})):(s="foreign-object",o=await (0,ea.YM)(t,a));break}catch(t){l=t,console.warn("[useEditorSave] capture attempt ".concat(e,"/").concat(3," failed via ").concat(s),t),e<3&&await new Promise(e=>setTimeout(e,250))}if(!o){if(l instanceof ef)throw new eS("We could not finish rendering your invitation preview. Please try saving again.",{cause:l});throw null!=l?l:Error("Preview capture failed after ".concat(3," attempts"))}return o}finally{t.style.width=n,t.style.height=r,t.style.maxWidth=i,t.style.maxHeight=a,t.style.aspectRatio=o,t.style.setProperty("-webkit-mask-image",l),t.style.isolation=s,t.style.boxShadow=d,t.style.borderRadius=u,g.forEach(e
1=>{e.style.border=""}),c.forEach((e,t)=>{e.style.opacity=h[t]}),ed()}},eM=async e=>Promise.all(e.map(async e=>{if(e.src&&e.src.startsWith("data:"))try{var t,n;let r=await (await fetch(e.src)).blob(),i=new File([r],"image.png",{type:r.type}),a=await (0,f.C2)(i,"image"),o=null===(n=a.data)||void 0===n?void 0:null===(t=n.data)||void 0===t?void 0:t.url;if(o)return{...e,src:o}}catch(e){}return e})),ej=(e,t)=>{let n=e.backgroundUrl&&((0,S.gU)(e.backgroundUrl)||e.backgroundUrl.startsWith("data:"))?e.backgroundUrl:null;return{editor_version:"v2_custom",canvas:{width:k.Wk.WIDTH,height:k.Wk.HEIGHT},background_url:n,background_color:e.backgroundColor||"#ffffff",is_ai_background:e.isAiBackground||!1,text_elements:e.textElements,image_elements:t,paint_strokes:e.paintStrokes,layer_order:e.layerOrder||[],hidden_layers:e.hiddenLayers||[],theme:(()=>{let t="designer"===e.themePreset,n=e.designerTheme;return{preset:t&&n?n.preset:e.themePreset||"blur",color:t&&n?n.color:e.themeColor||"#527288",background_color:t&&n?n.backgroundColor:e.themeBackgroun
1dColor||"#ffffff",text_mode:t&&n?n.textMode:e.themeTextMode||"auto",custom_colors:t&&n?n.customColors:e.templateColors||[],background_url:t&&n?n.backgroundUrl||null:e.themeBackgroundUrl||null,is_designer_default:t}})(),...e.eventFields&&Object.keys(e.eventFields).length>0&&{event_fields:e.eventFields},...e.designerTheme&&{designer_theme:{preset:e.designerTheme.preset,color:e.designerTheme.color,background_color:e.designerTheme.backgroundColor,background_url:e.designerTheme.backgroundUrl||null,text_mode:e.designerTheme.textMode,custom_colors:e.designerTheme.customColors}}}},eR=e=>{let{eventId:t,category:r,mode:a,type:l,templateId:s,canvasContainerRef:d}=e,u=(0,o.useRouter)(),{isAuthenticated:c}=(0,m.v9)(e=>e.auth),[h,p]=(0,i.useState)(!1);return{handleSave:async i=>{var o,m,v,b,y,w,k,S,E,C,A,I,T,M;let j=null===(o=null==i?void 0:i.navigate)||void 0===o||o;if(!h){if(e.hasPendingUploads){g.Am.info("Please wait for the image upload to complete");return}if(e.isBackgroundUploading){g.Am.info("Please wait for the background upload to complete");return}if(e.isTemplateLoading){g.Am.info("Still loading this template — please try again in a moment");return}try{let i;if(p(!0),(0,x.DM)(t))throw new eS("We couldn't save this invitation. Please reopen it from your invitations list and try again.");let o=!!e.canvasSuppressed;o&&console.warn("[editor-save.canvas-suppressed]",{templateId:s,eventId:t});try{i=o?"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mNkYPhfDwAChwGA60e6kgAAAABJRU5ErkJggg==":await eT(d)}catch(t){if(t instanceof eS&&!t.recoverable||(console.warn("[editor-save.url-refresh-retry-fired]",{reason:t instanceof Error?t.message:String(t),hasRefreshCallback:!!e.onRefreshAssetUrls}),!e.onRefreshAssetUrls))throw t;await e.onRefreshAssetUrls(),await (null===(T=e.awaitPendingUploads)||void 0===T?void 0:T.call(e)),await eE(),i=await eT(d)}let h=await eM(e.imageElements),R=ej(e,h);if(!c){try{await (0,ew.R8)(s,t,{imageDataUrl:i,editorState:R,templateId:s,category:r,type:l})}catch(e){throw new eS("Failed to save draft. Please try again.",{cause:e})}let e="/nvite-management/create-nvite?restore=true&template_id=".concat(s,"&category=").concat(r);if(j)return u.push("/login?redirectTo=".concat(encodeURIComponent(e))),!0;return!1}null===(m=e.onBeforeSave)||void 0===m||m.call(e);let D=await (await fetch(i)).blob(),L=e.backgroundUrl&&!e.backgroundUrl.startsWith("data:")&&(e.backgroundUrl.startsWith("http://")||e.backgroundUrl.startsWith("https://"))?e.backgroundUrl:void 0,_=L?(0,ey.g1)(L):void 0,W=await (0,f.sD)({event_id:null!==(M=(0,x.E7)(t))&&void 0!==M?M:void 0,design_json:R,preview_image:D,template_id:s?parseInt(s,10):void 0,is_thank_you_note:"thank-you"===l,template_media_url:L,template_media_type:_});null===(v=e.onAfterSave)||void 0===v||v.call(e);let P=(null==W?void 0:null===(y=W.data)||void 0===y?void 0:null===(b=y.data)||void 0===b?void 0:b.event_id)||t,H=(null==W?void 0:null===(k=W.data)||void 0===k?void 0:null===(w=k.data)||void 0===w?void 0:w.nvite_template_id)||(null==W?void 0:null===(E=W.data)||void 0===E?void 0:null===(S=E.data)||void 0===S?void 0:S.template_id),z=null==W?void 0:null===(A=W.data)||void 0===A?void 0:null===(C=A.data)||void 0===C?void 0:C.preview_warning,B=(0,eb.PS)({previewWarning:z,backendMessage:null==W?void 0:null===(I=W.data)||void 0===I?void 0:I.message});g.Am[B.kind](B.message);try{sessionStorage.removeItem("ai_background_image"),sessionStorage.removeItem("ai_background_analysis")}catch(e){}try{let{migrateUploads:e,entityKey:t}=await Promise.resolve().then(n.bind(n,98512));e(t("event",P))}catch(e){}if(!t&&P)try{let e=new URLSearchParams;e.set("event_id",String(P)),H&&e.set("nvite_template_id",String(H)),r&&e.set("category",r),a&&e.set("mode",a),window.history.replaceState(window.history.state,"","/nvite-management/create-nvite?".concat(e.toString()))}catch(e){}let F=(0,x.E7)(P);if(j){if(null===F)throw console.error("[EditorSave] save succeeded but returned no usable event_id:",P),u.replace("/nvite-management/nvite"),new eS("Saved, but we couldn't open the next step. Your inv
1itation is in your list — open it from there to carry on.");let e="/nvite-management/nvite-additional?event_id=".concat(F,"&category=").concat(r);return H&&(e+="&nvite_template_id=".concat(H)),a&&(e+="&mode=".concat(a)),u.push(e),!0}if(null!==F)return F;return!1}catch(e){throw console.error("[useEditorSave.handleSave] save failed:",e),g.Am.error((0,eb.ST)(e)),e}finally{p(!1)}}}}},eD=e=>{let{textElements:t,imageElements:n,paintStrokes:r,selectedIds:a,backgroundColor:o,setTextElements:l,setImageElements:s,setPaintStrokes:d,setSelectedIds:u,setBackgroundColor:c,onHistoryEmpty:h}=e,[g,m]=(0,i.useState)([]),[f,p]=(0,i.useState)([]),v=(0,i.useRef)(t),x=(0,i.useRef)(n),b=(0,i.useRef)(r),y=(0,i.useRef)(a),w=(0,i.useRef)(o),k=(0,i.useRef)(c);v.current=t,x.current=n,b.current=r,y.current=a,w.current=o,k.current=c;let S=(0,i.useCallback)(()=>({textElements:v.current.map(e=>({...e})),imageElements:x.current.map(e=>({...e})),paintStrokes:b.current.filter(Boolean).map(e=>({...e,points:[...e.points]})),selectedIds:[...y.current],backgroundColor:w.current}),[]),E=(0,i.useCallback)(e=>{var t,n;l(e.textElements),s(e.imageElements),d(e.paintStrokes),u(null!==(n=e.selectedIds)&&void 0!==n?n:[]),void 0!==e.backgroundColor&&(null===(t=k.current)||void 0===t||t.call(k,e.backgroundColor))},[l,s,d,u]),C=(0,i.useCallback)(()=>{let e=S();m(t=>{let n=[...t,e];return n.length>30&&n.shift(),n}),p([])},[S]),A=(0,i.useRef)(h);A.current=h;let I=(0,i.useCallback)(()=>{m(e=>{if(0===e.length)return e;let t=e[e.length-1],n=e.slice(0,-1),r=S();if(p(e=>[...e,r]),E(t),0===n.length){var i;null===(i=A.current)||void 0===i||i.call(A)}return n})},[S,E]),T=(0,i.useCallback)(()=>{p(e=>{if(0===e.length)return e;let t=e[e.length-1],n=e.slice(0,-1),r=S();return m(e=>[...e,r]),E(t),n})},[S,E]),M=(0,i.useCallback)(()=>{m([]),p([])},[]);return{pushSnapshot:C,undo:I,redo:T,canUndo:g.length>0,canRedo:f.length>0,clearHistory:M}};var eL=n(14064),e_=n(18477),eW=n(19589),eP=n(96820),eH=n(51206),ez=n(41982),eB=n(63043),eF=n(17946),eU=n(78655);let eZ=[{icon:eP.Z,label:"TEMPLATES"},{icon:eH.Z,label:"TEXT"},{icon:eF.Z,label:"PAINT"},{icon:ez.Z,label:"IMAGE"},{icon:eB.Z,label:"STICKER"},{icon:eU.Z,label:"LAYERS"}],eY="THEME";var eN=e=>{let{activeItem:t,onItemClick:n,onPreviewClick:i,previewActive:a,canUndo:o,canRedo:l,onUndo:s,onRedo:d}=e;return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(eW.Z,{active:!!a,onClick:()=>null==i?void 0:i()}),(0,r.jsxs)("div",{className:"absolute top-3.5 z-20 flex items-center gap-2",style:{left:"calc(1.25rem + 130px)",opacity:a?0:1,pointerEvents:a?"none":"auto",transition:"opacity 800ms ease-in-out"},children:[(0,r.jsx)("button",{type:"button",onClick:s,disabled:!o,className:"flex items-center justify-center w-9 h-9 rounded-md cursor-pointer transition-opacity hover:opacity-80",style:{backgroundColor:k.DM.bgLight,border:k.T5,opacity:o?1:.35},title:"Undo (Ctrl+Z)",children:(0,r.jsx)(eL.Z,{size:18,color:k.DM.text})}),(0,r.jsx)("button",{type:"button",onClick:d,disabled:!l,className:"flex items-center justify-center w-9 h-9 rounded-md cursor-pointer transition-opacity hover:opacity-80",style:{backgroundColor:k.DM.bgLight,border:k.T5,opacity:l?1:.35},title:"Redo (Ctrl+Shift+Z)",children:(0,r.jsx)(e_.Z,{size:18,color:k.DM.text})})]}),(0,r.jsxs)("div",{className:"absolute left-5 top-1/2 -translate-y-1/2 flex flex-col items-center gap-3 z-20",style:{opacity:a?0:1,pointerEvents:a?"none":"auto",transition:"opacity 800ms ease-in-out"},children:[(0,r.jsx)("div",{className:"flex flex-col items-center",style:{width:"56px",backgroundColor:"#fff",border:"0.8px solid rgba(8, 8, 8, 0.2)",borderRadius:"28px",padding:"12px 0",boxSizing:"border-box"},children:eZ.map(e=>{let i=t===e.label;return(0,r.jsxs)("div",{className:"relative group",children:[(0,r.jsx)("button",{type:"button",className:"flex items-center justify-center",style:{width:"48px",height:"48px",overflow:"visible",flexShrink:0,padding:0,border:i?"2px solid ".concat(k.DM.text):"2px solid transparent",borderRadius:"50%",backgroundColor:"transparent",cursor:"pointer",transition:"all 0.2s ease"},onClick:()=>n(e.label),children:(0,r.jsx)("img",{src:e.icon.src,alt:e.label,style:{display:"block",width:"38px",height:"38px",objectFit:"contain"}})}),(0,r.jsx)("span",{className:"absolute top-1/2 -translate-y-1/2 whitespace-nowrap pointer-events-none opacity-0 group-hover:opacity-100 transition-opacity",style:{left:"calc(100% + 24px)",...k.x1.tooltipPopup,textTransform:void 0},children:e.label})]},e.label)})}),(0,r.jsxs)("div",{className:"relative group",children:[(0,r.jsx)("button",{type:"button",className:"flex items-center justify-center",style:{width:"52px",height:"52px",border:t===eY?"2px solid ".concat(k.DM.text):"1px solid rgba(8, 8, 8, 0.2)",borderRadius:"50%",backgroundColor:"#fff",cursor:"pointer",transition:"all 0.2s ease"},onClick:()=>n(eY),children:(0,r.jsx)("img",{src:"/_next/static/media/backgrounds.e228f028.png",alt:eY,style:{display:"block",width:"36px",height:"36px",objectFit:"contain"}})}),(0,r.jsx)("span",{className:"absolute top-1/2 -translate-y-1/2 whitespace-nowrap pointer-events-none opacity-0 group-hover:opacity-100 transition-opacity",style:{left:"calc(100% + 24px)",...k.x1.tooltipPopup,textTransform:void 0},children:eY})]})]})]})}
1,eG=n(44644),eX=n(5897),eO=n(62245);let eq={element:"rgba(8, 8, 8, 0.7)",center:"rgba(8, 8, 8, 0.8)",edge:"rgba(8, 8, 8, 0.5)",margin:"rgba(8, 8, 8, 0.4)"};var eK=i.memo(e=>{let{guides:t}=e;return 0===t.length?null:(0,r.jsx)("div",{"data-capture-exclude":"true",style:{position:"absolute",inset:0,pointerEvents:"none"},children:t.map((e,t)=>{let n=eq[e.type],i="center"===e.type;return"x"===e.axis?(0,r.jsx)("div",{style:{position:"absolute",left:"".concat(e.position/k.Wk.WIDTH*100,"%"),top:0,width:i?1:.5,height:"100%",backgroundColor:n,pointerEvents:"none",zIndex:k.kg.snapGuides}},"x-".concat(t)):(0,r.jsx)("div",{style:{position:"absolute",top:"".concat(e.position/k.Wk.HEIGHT*100,"%"),left:0,height:i?1:.5,width:"100%",backgroundColor:n,pointerEvents:"none",zIndex:k.kg.snapGuides}},"y-".concat(t))})})}),eV=i.memo(e=>{let{position:t}=e;return T.vj&&T.lf?(0,r.jsxs)("div",{"data-capture-exclude":"true",style:{position:"absolute",left:"".concat(t.x/T.vj*100,"%"),top:"".concat(t.y/T.lf*100,"%"),transform:"translate(-50%, -100%) translateY(-12px)",backgroundColor:"rgba(8, 8, 8, 0.8)",color:"#fff",fontSize:11,fontFamily:"'Plus Jakarta Sans', monospace",fontWeight:500,padding:"3px 8px",borderRadius:6,whiteSpace:"nowrap",pointerEvents:"none",zIndex:k.kg.dragTooltip,letterSpacing:.3},children:["x: ",t.x,", y: ",t.y]}):null}),eJ=n(22381);let eQ=[{handle:"tl",style:{left:-5,top:-5,cursor:"nwse-resize"}},{handle:"tr",style:{right:-5,top:-5,cursor:"nesw-resize"}},{handle:"bl",style:{left:-5,bottom:-5,cursor:"nesw-resize"}},{handle:"br",style:{right:-5,bottom:-5,cursor:"nwse-resize"}}],e$=(e,t)=>"".concat(e/t*100,"%");var e0=e=>{let{selectedIds:t,textElements:n,imageElements:a,marqueeRect:o,measuredGroupBBox:l,onGroupResizeStart:s}=e,d=(0,E.H)(),u=(0,i.useMemo)(()=>(0,R.Cp)(t,n,a),[t,n,a]),c=null!=l?l:u;return(0,r.jsxs)(r.Fragment,{children:[o&&o.width>0&&o.height>0&&(0,r.jsx)("div",{"data-capture-exclude":"true",style:{position:"absolute",left:e$(o.x,d.WIDTH),top:e$(o.y,d.HEIGHT),width:e$(o.width,d.WIDTH),height:e$(o.height,d.HEIGHT),border:"2px dashed ".concat(k.DM.accent),backgroundColor:"".concat(k.DM.accent,"25"),pointerEvents:"none",zIndex:k.kg.marquee}}),c&&(0,r.jsx)("div",{"data-group-bbox-cursor":!0,"data-capture-exclude":"true",style:{position:"absolute",left:e$(c.x-8,d.WIDTH),top:e$(c.y-8,d.HEIGHT),width:e$(c.width+16,d.WIDTH),height:e$(c.height+16,d.HEIGHT),pointerEvents:"auto",cursor:"move",zIndex:0}}),c&&(0,r.jsx)("div",{"data-group-bbox":!0,"data-capture-exclude":"true",style:{position:"absolute",left:e$(c.x-8,d.WIDTH),top:e$(c.y-8,d.HEIGHT),width:e$(c.width+16,d.WIDTH),height:e$(c.height+16,d.HEIGHT),border:"1.5px dashed ".concat(k.DM.accent),pointerEvents:"none",zIndex:k.kg.groupBBox},children:s&&eQ.map(e=>{let{handle:t,style:n}=e;return(0,r.jsx)("div",{onMouseDown:e=>s(e,t),style:{position:"absolute",...n,width:10,height:10,backgroundColor:k.DM.accent,borderRadius:"50%",border:"2px solid white",pointerEvents:"auto",zIndex:10}},t)})})]})},e1=n(18930),e2=n(66337),e5=n(49589),e8=n(41827),e4=n(39113),e3=e=>{let{selectedIds:t,textElements:n,imageElements:a,measuredGroupBBox:o,deleteSelectedElements:l,duplicateSelected:s,toggleLockSelected:d,allLocked:u,hasLockedSelected:c,addToast:h}=e,g=(0,E.H)(),m=i.useMemo(()=>(0,R.Cp)(t,n,a),[t,n,a]),f=null!=o?o:m,p=i.useMemo(()=>new Set(t),[t]),v=i.useMemo(()=>n.filter(e=>p.has(e.id)).length+a.filter(e=>p.has(e.id)).length,[n,a,p]);if(!f)return null;let x=(f.x+f.width/2)/g.WIDTH*100,b=f.y/g.HEIGHT*100,y=(f.y+f.height)/g.HEIGHT*100,w=b<8;return(0,r.jsx)("div",{"data-capture-exclude":"true",onMouseDown:e=>e.stopPropagation(),className:"absolute flex items-center gap-1",style:{left:"".concat(x,"%"),top:w?"".concat(y,"%"):"".concat(b,"%"),transform:w?"translate(-50%, calc(12px))":"translate(-50%, calc(-100% - 12px))",zIndex:k.kg.groupActionBar},children:(0,r.jsxs)("div",{className:"flex items-center rounded-3xl",style:k.x1.actionBar,children:[(0,r.jsx)(e4.Z,{icon:(0,r.jsx)(e1.Z,{size:20}),tooltip:"Delete selected",onClick:()=>{c&&(null==h||h("success","Locked elements were kept.")),l()}}),(0,r.jsx)(e4.Z,{icon:u?(0,r.jsx)(e2.Z,{size:20}):(0,r.jsx)(e5.Z,{size:20}),tooltip:u?"UNLOCK ALL":"LOCK ALL",onClick:d,active:u}),(0,r.jsx)(e4.Z,{icon:(0,r.jsx)(e8.Z,{size:20}),tooltip:"Duplicate selected",onClick:s}),(0,r.jsxs)("span",{className:"px-2 text-xs font-medium opacity-60",children:[v," selected"]})]})})};let e9=(0,a.default)(()=>Promise.all([n.e(4705),n.e(1073)]).then(n.bind(n,11073)),{loadableGenerated:{webpack:()=>[11073]},ssr:!1,loading:()=>(0,r.jsx)("div",{style:{position:"absolute",top:0,left:0,width:"100%",height:"100%",display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:"#faf5ff",color:"#7c3aed",fontSize:11,fontWeight:700,borderRadius:k.zf.radius},children:"Loading..."})}),e6=(0,i.forwardRef)((e,t)=>{let{canvasRef:n,backgroundUrl:a,backgroundColor:o,textElements:l,imageElements:s,paintStrokes:d,selectedIds:u,activeToolbarItem:c,paintCanvasRef:h,getLayerZIndex:g,isLayerHidden:m,onDragStart:f,onResizeStart:p,onRotateStart:v,onImageDragStart:x,onImageResizeStart:b,activeSnapGuides:y,dragPosition:w,deleteTextElement:S,toggleLock:E,duplicateTextElement:C,deleteImageElement:A,toggleImageLock:I,duplicateImageElement:T,setActiveToolbarItem:M,startDrawing:j,continueDrawing:D,endDrawing:L,clearToolHover:_,hideBackgroun
1dMedia:W=!1,onDeselect:P,previewMode:H,themeColor:z,hideWatermark:B,showBorder:F,isCropMode:U,onCropApply:Z,onCropCancel:Y,onTextContentChange:N,marqueeRect:G,onMarqueeStart:X,onMultiDragStart:O,onGroupResizeStart:q,deleteSelectedElements:K,duplicateSelected:V,toggleLockSelected:J,allLocked:Q,hasLockedSelected:$,addToast:ee}=e,et=(0,i.useMemo)(()=>new Set(u),[u]),en=u.length>=2,er=(0,i.useRef)(null),ei=(0,i.useCallback)(e=>{er.current=e,"function"==typeof n?n(e):n&&"current"in n&&(n.current=e),"function"==typeof t?t(e):t&&"current"in t&&(t.current=e)},[n,t]),[ea,eo]=(0,i.useState)(null),el=(0,i.useRef)(null),es=(0,i.useRef)(null);(0,i.useLayoutEffect)(()=>{if(null!==es.current&&(cancelAnimationFrame(es.current),es.current=null),!en||!er.current){null!==el.current&&(el.current=null,eo(null));return}return es.current=requestAnimationFrame(()=>{es.current=null;let e=er.current;if(!e)return;let t=e.getBoundingClientRect();if(0===t.width||0===t.height)return;let n=k.Wk.WIDTH/t.width,r=k.Wk.HEIGHT/t.height,i=1/0,a=1/0,o=-1/0,l=-1/0,s=0;for(let d of u){let u=null;try{u=e.querySelector('[data-element-id="'.concat(CSS.escape(d),'"]'))}catch(e){u=null}if(!u)continue;let c=u.getBoundingClientRect(),h=(c.left-t.left)*n,g=(c.top-t.top)*r,m=h+c.width*n,f=g+c.height*r;h<i&&(i=h),g<a&&(a=g),m>o&&(o=m),f>l&&(l=f),s++}let d=s<2||!isFinite(i)?null:{x:i,y:a,width:o-i,height:l-a},c=el.current;null===c&&null===d||null!==c&&null!==d&&.5>Math.abs(c.x-d.x)&&.5>Math.abs(c.y-d.y)&&.5>Math.abs(c.width-d.width)&&.5>Math.abs(c.height-d.height)||(el.current=d,eo(d))}),()=>{null!==es.current&&(cancelAnimationFrame(es.current),es.current=null)}},[en,u,l,s]);let ed=(0,r.jsxs)("div",{ref:ei,onMouseDown:e=>{let t=e.target;if(!(t.closest("[data-element-overlay]")||t.closest("[data-group-bbox]"))&&"PAINT"!==c){if(e.preventDefault(),en&&O){let t=null!=ea?ea:(0,R.Cp)(u,l,s);if(t){let n=e.currentTarget.getBoundingClientRect(),r=k.Wk.WIDTH/n.width,i=k.Wk.HEIGHT/n.height,a=(e.clientX-n.left)*r,o=(e.clientY-n.top)*i;if(a>=t.x-8&&a<=t.x+t.width+8&&o>=t.y-8&&o<=t.y+t.height+8){O(e);return}}}X?X(e):P()}},style:{aspectRatio:k.Wk.ASPECT_RATIO,...H?{height:"100%"}:{width:"min(100%, calc((100vh - 200px) * 0.75))"}
1,flexShrink:0,backgroundColor:o,boxShadow:H?"0 4px 20px rgba(0,0,0,0.1)":"0 8px 40px rgba(0,0,0,0.15)",border:F?"1px solid rgba(0, 0, 0, 0.1)":void 0,borderRadius:k.zf.radius,position:"relative",userSelect:"none",containerType:"size",overflow:"hidden",zIndex:H?1:void 0,willChange:"transform",WebkitMaskImage:"-webkit-radial-gradient(white, black)",isolation:"isolate"},children:[a&&(()=>{let e="";try{var t;e=(null===(t=new URL(a).pathname.split(".").pop())||void 0===t?void 0:t.toLowerCase())||""}catch(t){e=""}let n=a.startsWith("data:video")||["mp4","webm"].includes(e),i="json"===e;return n?(0,r.jsx)("video",{src:a,crossOrigin:"anonymous",autoPlay:!0,loop:!0,muted:!0,playsInline:!0,draggable:!1,"data-peek-hidden":W?"":void 0,style:{width:"100%",height:"100%",objectFit:"cover",position:"absolute",top:0,left:0,borderRadius:k.zf.radius,opacity:W?0:void 0},onError:e=>{e.target.style.display="none"}}):i?(0,r.jsx)("div",{"data-peek-hidden":W?"":void 0,style:{position:"absolute",top:0,left:0,width:"100%",height:"100%",borderRadius:k.zf.radius,overflow:"hidden",opacity:W?0:void 0},children:(0,r.jsx)(e9,{src:a,style:{width:"100%",height:"100%"}})}):(0,r.jsx)("img",{src:a,alt:"Template background","data-capture-background":"","data-peek-hidden":W?"":void 0,crossOrigin:"anonymous",draggable:!1,style:{width:"100%",height:"100%",objectFit:"cover",position:"absolute",top:0,left:0,borderRadius:k.zf.radius,opacity:W?0:void 0},onError:e=>{e.target.style.display="none"}})})(),l.map((e,t)=>(0,r.jsx)(eX.Z,{el:e,idx:t,isSelected:!!e.id&&et.has(e.id),isMultiSelected:en,layerHidden:!!e.id&&m(e.id),zIndex:e.id?g(e.id):1,onDragStart:f,onResizeStart:p,onRotateStart:v,onDelete:S,onToggleLock:E,onDuplicate:C,onOpenLayers:()=>M("LAYERS"),onContentChange:N},e.id||t)),s.map((e,t)=>(0,r.jsx)(eO.Z,{img:e,idx:t,isSelected:et.has(e.id),isMultiSelected:en,zIndex:g(e.id),isHidden:m(e.id),isCropMode:U&&et.has(e.id),onDragStart:x,onResizeStart:b,onDelete:A,onToggleLock:I,onDuplicate:T,onOpenLayers:()=>M("LAYERS"),onCropApply:Z,onCropCancel:Y},e.id)),null==d?void 0:d.map(e=>e?(0,r.jsx)(eJ.Z,{stroke:e,zIndex:g(e.id),isHidden:m(e.id)},e.id):null),(void 0!==G||en)&&(0,r.jsx)(e0,{selectedIds:u,textElements:l,imageElements:s,marqueeRect:null!=G?G:null,measuredGroupBBox:ea,onGroupResizeStart:q}),en&&K&&V&&J&&(0,r.jsx)(e3,{selectedIds:u,textElements:l,imageElements:s,measuredGroupBBox:ea,deleteSelectedElements:K,duplicateSelected:V,toggleLockSelected:J,allLocked:null!=Q&&Q,hasLockedSelected:null!=$&&$,addToast:ee}),y&&y.length>0&&(0,r.jsx)(eK,{guides:y}),w&&(0,r.jsx)(eV,{position:w}),!B&&(0,r.jsx)("img",{src:"/images/Logo1.svg",alt:"",draggable:!1,style:{position:"absolute",bottom:"2cqmin",right:"2cqmin",width:"min(8cqw, 10cqh)",pointerEvents:"none",zIndex:9998,userSelect:"none"}}),(0,r.jsx)("canvas",{ref:h,"data-capture-exclude":"true",width:k.Wk.WIDTH,height:k.Wk.HEIGHT,onPointerDown:j,onPointerMove:D,onPointerUp:L,onPointerCancel:L,onPointerLeave:_,style:{position:"absolute",top:0,left:0,width:"100%",height:"100%",pointerEvents:"PAINT"===c?"auto":"none",touchAction:"none",zIndex:9999,cursor:"PAINT"===c?"none":"default"}})]});return(0,r.jsx)("div",{onMouseDown:e=>{e.target===e.currentTarget&&P()},style:{position:"absolute",inset:0,display:"flex",alignItems:H?"flex-start":"center",justifyContent:H?"flex-end":"center",paddingTop:k.zf.canvasPadding,paddingBottom:k.zf.canvasPadding,paddingRight:H?"24px":void 0},children:(0,r.jsxs)("div",{style:H?{display:"flex",flexDirection:"column",alignItems:"center",flexShrink:0,marginTop:"clamp(8px, 1.5vh, 14px)",height:"calc(100% - clamp(16px, 2vw, 32px))"}:{display:"contents"},children:[(0,r.jsxs)("div",{style:H?{height:"calc(99% - clamp(16px, 2vw, 32px))",flexShrink:0,overflow:"visible",position:"relative"}:{display:"contents"},children:[H&&(0,r.jsxs)("div",{style:{position:"absolute",top:"clamp(-10px, -1vh, -6px)",left:"clamp(-10px, -1vh, -6px)",right:"clamp(-10px, -1vh, -6px)",bottom:"clamp(-10px, -1vh, -6px)",borderRadius:"clamp(16px, 2.5vh, 42px)",backdropFilter:"blur(24px)",WebkitBackdropFilter:"blur(24px)",backgroundColor:z||"#527288",overflow:"hidden",boxShadow:"0 8px 40px rgba(0,0,0,0.15)",zIndex:0},children:[(0,r.jsx)("div",{style:{position:"absolute",inset:0,backgroundColor:"rgba(255, 255, 255, 0.1)",pointerEvents:"none"}}),(0,r.jsx)("div",{style:{position:"absolute",inset:0,opacity:.15,pointerEvents:"none",backgroundImage:"url(\"data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E\")",backgroundSize:"128px 128px"}})]}),ed]}),H&&(0,r.jsx)("img",{src:eG.Z.src,alt:"Powered by Airawath",style:{marginTop:"clamp(16px, 1.2vh, 18px)",height:"clamp(30px, 2.4vh, 48px)",objectFit:"contain"}})]})})});
1e6.displayName="CanvasPreview";var e7=n(74122);let te=e=>{let[t,n]=(0,i.useState)(!1),r=(0,i.useRef)(e);return r.current=e,(0,i.useEffect)(()=>{if(!e)return;let t=()=>{r.current&&(window.history.pushState(null,"",window.location.href),n(!0))};return window.history.pushState(null,"",window.location.href),window.addEventListener("popstate",t),()=>{window.removeEventListener("popstate",t)}},[e]),{isBlocked:t,confirmNavigation:(0,i.useCallback)(()=>{n(!1),r.current=!1,window.history.back()},[]),cancelNavigation:(0,i.useCallback)(()=>{n(!1)},[])}},tt=e=>{let t=Math.floor((Date.now()-e)/6e4);if(t<1)return"just now";if(t<60)return"".concat(t,"m ago");let n=Math.floor(t/60);return n<24?"".concat(n,"h ago"):"".concat(Math.floor(n/24),"d ago")};var tn=e=>{let{timestamp:t,onRestore:n,onDismiss:i,label:a}=e;return(0,r.jsxs)("div",{style:{position:"absolute",top:8,left:"50%",transform:"translateX(-50%)",zIndex:10001,display:"flex",alignItems:"center",gap:12,padding:"8px 16px",borderRadius:k.zf.radius,backgroundColor:"#fffbeb",border:"1px solid #f59e0b",boxShadow:"0 2px 8px rgba(0,0,0,0.1)",fontFamily:k.ut,fontSize:13,color:"#92400e",whiteSpace:"nowrap"},children:[(0,r.jsx)("span",{children:a||"Unsaved changes recovered".concat(t?" from ".concat(tt(t)):"",".")}),(0,r.jsx)("button",{onClick:n,style:{padding:"3px 10px",borderRadius:6,backgroundColor:k.DM.primary,color:k.DM.white,fontSize:12,fontWeight:600,fontFamily:k.ut,border:"none",cursor:"pointer"},children:"Restore"}),(0,r.jsx)("button",{onClick:i,style:{padding:"3px 10px",borderRadius:6,backgroundColor:"transparent",color:"#92400e",fontSize:12,fontWeight:600,fontFamily:k.ut,border:"1px solid #d97706",cursor:"pointer"},children:"Dismiss"})]})},tr=n(87855),ti=n(95204);let ta=null,to=0;var tl=n(98512),ts=n(99598);let td=()=>(0,r.jsx)(l.Z,{sx:{width:k.zf.panelWidth,height:"100%",display:"flex",alignItems:"center",justifyContent:"center"},children:(0,r.jsx)(s.Z,{size:24})}),tu=()=>(0,r.jsx)(l.Z,{sx:{position:"fixed",inset:0,display:"flex",alignItems:"center",justifyContent:"center",bgcolor:"rgba(0,0,0,0.15)",zIndex:1300},children:(0,r.jsx)(s.Z,{})}),tc=(0,a.default)(()=>n.e(2207).then(n.bind(n,92207)),{loadableGenerated:{webpack:()=>[92207]},ssr:!1,loading:td}),th=(0,a.default)(()=>Promise.all([n.e(1008),n.e(4705),n.e(6381),n.e(974),n.e(8058),n.e(7066),n.e(7571),n.e(1321),n.e(2229),n.e(2596)]).then(n.bind(n,52229)),{loadableGenerated:{webpack:()=>[52229]},ssr:!1,loading:tu}),tg=(0,a.default)(()=>n.e(3940).then(n.bind(n,63940)),{loadableGenerated:{webpack:()=>[63940]},ssr:!1,loading:tu}),tm=(0,a.default)(()=>n.e(7247).then(n.bind(n,97247)),{loadableGenerated:{webpack:()=>[97247]},ssr:!1,loading:td}),tf=(0,a.default)(()=>n.e(2358).then(n.bind(n,82358)),{loadableGenerated:{webpack:()=>[82358]},ssr:!1,loading:td}),tp=(0,a.default)(()=>n.e(965).then(n.bind(n,60965)),{loadableGenerated:{webpack:()=>[60965]},ssr:!1,loading:td}),tv=(0,a.default)(()=>Promise.all([n.e(3338),n.e(156)]).then(n.bind(n,40414)),{loadableGenerated:{webpack:()=>[40414]},ssr:!1,loading:td}),tx=(0,a.default)(()=>Promise.all([n.e(7571),n.e(7e3),n.e(7644),n.e(1453),n.e(101),n.e(6841)]).then(n.bind(n,6841)),{loadableGenerated:{webpack:()=>[6841]},ssr:!1,loading:td}),tb=(0,a.default)(()=>n.e(6832).then(n.bind(n,86832)),{loadableGenerated:{webpack:()=>[86832]},ssr:!1,loading:td}),ty=(0,a.default)(()=>n.e(3071).then(n.bind(n,93071)),{loadableGenerated:{webpack:()=>[93071]},ssr:!1,loading:td}),tw=(0,a.default)(()=>n.e(9507).then(n.bind(n,19507)),{loadableGenerated:{webpack:()=>[19507]},ssr:!1,loading:td}),tk=i.memo(function(e){let{fullUrl:t,thumbUrl:n,onLoaded:a}=e,[o,l]=(0,i.useState)(!1),s=(0,i.useRef)(a);return s.current=a,(0,i.useEffect)(()=>
1{l(!1);let e=!1,n=()=>{var t;e||(l(!0),null===(t=s.current)||void 0===t||t.call(s))};return ee(t).then(n).catch(n),()=>{e=!0}},[t]),(0,r.jsxs)(r.Fragment,{children:[n&&!o&&(0,r.jsx)("div",{style:{position:"absolute",inset:"-20px",backgroundImage:'url("'.concat(n,'")'),backgroundSize:"cover",backgroundPosition:"center",filter:"blur(20px)",zIndex:0}}),(0,r.jsx)("div",{style:{position:"absolute",inset:0,backgroundImage:'url("'.concat(t,'")'),backgroundSize:"cover",backgroundPosition:"center",opacity:o?1:0,transition:"opacity 0.3s ease-in-out",zIndex:0}})]})}),tS=(0,i.forwardRef)((e,t)=>{var n,a,c,p,T,D;let{eventId:L,templateId:_,nviteTemplateId:W,category:P,mode:H,type:z,initialSection:F,aiBackground:U,templateOccasion:Z,onPreviewChange:Y,onLoadErrorChange:N}=e,G=!_&&!W&&!U&&"IMAGE"!==F,q="IMAGE"===F,K=(0,i.useRef)(null),V=(0,i.useRef)(null),J=(0,i.useRef)(null),Q=(0,i.useRef)(null),$=(0,i.useRef)(null),en=(0,i.useRef)(!1),ea=(0,i.useRef)(!1),[eo,el]=(0,i.useState)(null);(0,i.useEffect)(()=>()=>{eo&&URL.revokeObjectURL(eo)},[eo]);let es=(0,i.useCallback)(()=>el(null),[]),ed=(0,d.Z)("(max-width:767px)",{noSsr:!0}),eu=(0,d.Z)("(max-width:1199px) and (orientation: portrait)",{noSsr:!0}),ec=ed?"mobile":eu?"tablet-portrait":"ok",eh=(0,o.useRouter)(),eg=(0,i.useCallback)(()=>{if(window.history.length>1){eh.back();return}eh.replace("/")},[eh]),[em,ef]=(0,i.useState)(F||(G?"PAINT":"THEME")),[ep,ev]=(0,i.useState)(null),[ex,eb]=(0,i.useState)(!1),[ey,ek]=(0,i.useState)(!1),[eE,eC]=(0,i.useState)(0),[eA,eI]=(0,i.useState)([]),eT=(0,i.useRef)(eA);(0,i.useEffect)(()=>{eT.current=eA},[eA]);let[eM,ej]=(0,i.useState)(!1),[eL,e_]=(0,i.useState)(!1),[eW,eP]=(0,i.useState)(0),[eH,ez]=(0,i.useState)(null),[eB,eF]=(0,i.useState)(!1),[eU,eZ]=(0,i.useState)(null),{isAuthenticated:eY,user:eG}=(0,m.v9)(e=>e.auth),eX=(null==eG?void 0:eG.first_name)||void 0,eO=(null==eG?void 0:eG.profile_image_url)||void 0,eq=(0,i.useMemo)(()=>(0,tl.entityKey)("event",L),[L]),{textElements:eK,setTextElements:eV,imageElements:eJ,setImageElements:eQ,selectedIds:e$,setSelectedIds:e0,selectElement:e1,toggleElement:e2,deselectAll:e5,deleteSelectedElements:e8,selectedTextIndex:e4,selectedImageIndex:e3,selectedText:e9,selectedImage:tt,updateText:td,addTextElement:tu,deleteTextElement:tS,toggleLock:tE,duplicateTextElement:tC,updateImage:tA,updateImageSize:tI,deleteImageElement:tT,duplicateImageElement:tM,toggleImageLock:tj}=I(),{paintTool:tR,setPaintTool:tD,brushSize:tL,setBrushSize:t_,eraserSize:tW,setEraserSize:tP,paintColor:tH,setPaintColor:tz,paintStrokes:tB,setPaintStrokes:tF,paintCanvasRef:tU,startDrawing:tZ,continueDrawing:tY,endDrawing:tN,clearToolHover:tG,undoPaintStroke:tX,clearPaintStrokes:tO}=M({activeToolbarItem:em,canvasRef:K,deselectAll:e5,onBeforeStrokeEnd:()=>nj(),onBeforeErase:()=>nj()}),tq=(0,i.useRef)(()=>{}),{layerOrder:tK,setLayerOrder:tV,hiddenLayers:tJ,setHiddenLayers:tQ,getLayerZIndex:t$,isLayerHidden:t0,toggleLayerVisibility:t1,toggleLayerLock:t2,deleteLayer:t5,onLayerReorder:t8,selectLayerElement:t4}=j({textElements:eK,imageElements:eJ,paintStrokes:tB,selectedIds:e$,selectElement:e1,toggleElement:e2,deselectAll:e5,setSelectedIds:e0,setTextElements:eV,setImageElements:eQ,setPaintStrokes:tF}),{loading:t3,backgroundUrl:t9,changeBackground:t6,backgroundColor:t7,setBackgroundColor:ne,isAiBackground:nt,setIsAiBackground:nn,isBackgroundUploading:nr,templates:ni,templatesLoading:na,openTemplates:no,selectTemplate:nl,selectedTemplateId:ns,baseTemplateId:nd,themePreset:nu,setThemePreset:nc,themeColor:nh,setThemeColor:ng,themeBackgroun
1dColor:nm,setThemeBackgroundColor:nf,themeBackgroundUrl:np,setThemeBackgroundUrl:nv,themeTextMode:nx,setThemeTextMode:nb,templateColors:ny,setTemplateColors:nw,designerTheme:nk,restoreDesignerTheme:nS,refreshTemplateUrls:nE,initialEventFields:nC,eventDetails:nA,savedLayerOrder:nI,savedHiddenLayers:nT,loadError:nM}=X({eventId:L,templateId:_,nviteTemplateId:W,aiBackground:U,templateOccasion:Z,setTextElements:eV,setImageElements:eQ,setPaintStrokes:tF});(0,i.useEffect)(()=>{eb(!1)},[t9]),(0,i.useEffect)(()=>{null==N||N(null!==nM)},[nM,N]);let{pushSnapshot:nj,undo:nR,redo:nD,canUndo:nL,canRedo:n_,clearHistory:nW}=eD({textElements:eK,imageElements:eJ,paintStrokes:tB,selectedIds:e$,backgroundColor:t7,setTextElements:eV,setImageElements:eQ,setPaintStrokes:tF,setSelectedIds:e0,setBackgroundColor:ne,onHistoryEmpty:()=>tq.current()}),nP=nt||!(_||ns||nd),[nH,nz]=(0,i.useState)({});(0,i.useEffect)(()=>{nC&&Object.keys(nC).length>0&&nz(nC)},[nC]),(0,i.useEffect)(()=>{nI&&nI.length>0&&requestAnimationFrame(()=>tV(nI))},[nI]),(0,i.useEffect)(()=>{nT&&nT.length>0&&tQ(new Set(nT))},[nT]);let nB=(0,i.useCallback)((e,t)=>{if(nj(),"title"===e){if(null===t)nz(e=>({...e,title:void 0}));else{let e="string"==typeof t?t:"";nz(t=>({...t,title:e})),eV(t=>t.map(t=>"title"===t.boundField?{...t,content:e,isUserEdited:!0}:t))}}else if("date"===e){let e=t instanceof Date?h()(t).format("YYYY-MM-DD"):"";if(nz(t=>({...t,date:e||void 0})),t instanceof Date){let e=t.toLocaleDateString("en-US",{weekday:"long",month:"long",day:"numeric",year:"numeric"});eV(t=>t.map(t=>{if("date"===t.boundField)return{...t,content:e,isUserEdited:!0};if("datetime"===t.boundField){let n=nH.time?(()=>{let e=h()(nH.time,["hh:mm A","HH:mm"]);return e.isValid()?e.format("h:mm A"):""})():"";return{...t,content:n?"".concat(e," • ").concat(n):e,isUserEdited:!0}}return t}))}}else if("time"===e){let e="string"==typeof t?t:"";if(nz(t=>({...t,time:e||void 0})),e){let t=h()(e,["hh:mm A","HH:mm"]),n=t.isValid()?t.format("h:mm A"):e,r=nH.timezone||Intl.DateTimeFormat().resolvedOptions().timeZone,i=(0,ts.P)(r);i&&(n="".concat(n," ").concat(i)),eV(e=>e.map(e=>{if("time"===e.boundField)return{...e,content:n,isUserEdited:!0};if("datetime"===e.boundField){let t=nH.date?new Date(nH.date+"T12:00:00").toLocaleDateString("en-US",{weekday:"long",month:"long",day:"numeric",year:"numeric"}):"";return{...e,content:t?"".concat(t," • ").concat(n):n,isUserEdited:!0}}return e}))}}else if("timezone"===e){let e="string"==typeof t?t:"";if(nz(t=>({...t,timezone:e||void 0})),nH.time){let t=h()(nH.time,["hh:mm A","HH:mm"]),n=t.isValid()?t.format("h:mm A"):nH.time,r=(0,ts.P)(e);r&&(n="".concat(n," ").concat(r)),eV(e=>e.map(e=>{if("time"===e.boundField)return{...e,content:n,isUserEdited:!0};if("datetime"===e.boundField){let t=nH.date?new Date(nH.date+"T12:00:00").toLocaleDateString("en-US",{weekday:"long",month:"long",day:"numeric",year:"numeric"}):"";return{...e,content:t?"".concat(t," • ").concat(n):n,isUserEdited:!0}}return e}))}}else if("location"===e){if(null===t)nz(e=>({...e,location:void 0}));else{let e="string"==typeof t?t:"";nz(t=>({...t,location:e})),eV(t=>t.map(t=>"location"===t.boundField?{...t,content:e,isUserEdited:!0}:t))}}},[nj,eV,nH.date,nH.time,nH.timezone]),[nF,nU]=(0,i.useState)(null),nZ=async e=>{if(rM){nU(e);return}await nY(e)},nY=async e=>{ef("TEXT"),rI(),rj(),e5(),await nl(e),nW()},nN=async()=>{null!==nF&&(nU(null),await nY(nF))},{allFonts:nG,customFonts:nX,fontCategory:nO,recentFonts:nq,setRecentFonts:nK,loadFont:nV}=(0,O.i)(eK),{backgrounds:nJ}=function(){let[e,t]=(0,i.useState)(ta||[]),[n,r]=(0,i.useState)(!1),a=(0,i.useRef)(!1);return(0,i.useEffect)(()=>{if(ta&&Date.now()-to<18e5){t(ta);return}if(a.current)return;a.current=!0;let e="https://api.airawath.com/v1/".replace(/\/$/,"");e&&(r(!0),fetch("".concat(e,"/backgrounds")).then(e=>{if(!e.ok)throw Error("HTTP ".concat(e.status));return e.json()}).then(e=>{let n=(null==e?void 0:e.data)||[];ta=n,to=Date.now(),t(n)}).catch(e=>console.error("Failed to load theme backgrounds",e)).finally(()=>r(!1)))},[]),{backgrounds:e,loading:n}}(),{handleCropApply:nQ,handleCropCancel:n$,handleImageReset:n0}=function(e){let{selectedImageIndex:t,setImageElements:n,setIsCropMode:r,pushSnapshot:a}=e;return{handleCropApply:(0,i.useCallback)((e,t)=>{try{a(),n(n=>{if(!n[e])return n;let r=[...n],i=r[e],a=C(i),o=a.width*t.w,l=a.height*t.h,s=i.width/(o/l);return r[e]={...i,cropRegion:t,height:s},r})}finally{r(!1)}},[a,n,r]),handleCropCancel:(0,i.useCallback)(()=>{r(!1)},[r]),handleImageReset:(0,i.useCallback)(()=>{t<0||(a(),n(e=>{var n;if(!e[t])return e;let r=[...e],i=r[t],a=C(i),o=null!==(n=i.originalBox)&&void 0!==n?n:A(a.width,a.height);return r[t]={...i,objectFit:void 0,cropRegion:void 0,...o},r}),r(!1))},[t,a,n,r])}}({selectedImageIndex:e3,setImageElements:eQ,setIsCropMode:eF,pushSnapshot:nj}),[n1,n2]=(0,i.useState)([]),[n5,n8]=(0,i.useState)(null),{onMultiDragStart:n4,onGroupResizeStart:n3}=B({canvasConfig:k.Wk,canvasRef:K,textElements:eK,imageElements:eJ,selectedIds:e$,setTextElements:eV,setImageElements:eQ,isLayerHidden:t0,onBeforeDrag:nj,onBeforeResize:nj,onSnapGuidesChange:n2,onDragPositionChange:eZ}),{onMarqueeStart:n9}=function(e){let{canvasConfig:t,canvasRef:n,textElements:r,imageElements:a,isLayerHidden:o,selectedIds:l,setSelectedIds:s,deselectAll:d,onMarqueeChange:u}=e,[c,h]=(0,i.useState)(!1),g=(0,i.useRef)(()=>{}),m=(0,i.useRef)(()=>{}),f=(0,i.useRef)(null),p=(0,i.useCallback)((e,n,r)=>{let i=t.WIDTH/r.width,a=t.HEIGHT/r.height;return{x:(e-r.left)*i,y:(n-r.top)*a}},[t]),v=(e,t,n,r)=>({x:Math.min(e,n),y:Math.min(t,r),width:Math.abs(n-e),height:Math.abs(r-t)}),x=(0,i.useCallback)(e=>{let t=[];for(let n of r){if(!n.id||o(n.id))continue;let r=n.width/2,i=n.x-r,a=n.x+r,l=n.y,s=l+(0,R.$X)(n);i<e.x+e.width&&a>e.x&&l<e.y+e.height&&s>
1e.y&&t.push(n.id)}for(let n of a){if(!n.id||o(n.id))continue;let r=n.width/2,i=n.x-r,a=n.x+r,l=n.y,s=n.y+n.height;i<e.x+e.width&&a>e.x&&l<e.y+e.height&&s>e.y&&t.push(n.id)}return t},[r,a,o]),b=(0,i.useCallback)(e=>{let n=f.current;if(!n)return;if(!n.active){let t=e.clientX-n.clientX,r=e.clientY-n.clientY;if(5>Math.sqrt(t*t+r*r))return;n.active=!0,h(!0)}let r=p(n.clientX,n.clientY,n.canvasRect),i=p(e.clientX,e.clientY,n.canvasRect),a=(e,t)=>Math.max(0,Math.min(t,e)),o=a(i.x,t.WIDTH),l=a(i.y,t.HEIGHT),d=v(r.x,r.y,o,l);u(d);let c=x(d);if(n.shiftKey){let e=[...n.previousIds],t=new Set(e);for(let n of c)t.has(n)||e.push(n);s(e)}else s(c)},[t,p,x,u,s]);g.current=b;let y=(0,i.useCallback)(e=>g.current(e),[]),w=(0,i.useCallback)(()=>m.current(),[]),k=(0,i.useCallback)(()=>{let e=f.current;f.current=null,h(!1),u(null),window.removeEventListener("mousemove",y),window.removeEventListener("mouseup",w),!e||e.active||e.shiftKey||d()},[u,d,y,w]);m.current=k;let S=(0,i.useCallback)(e=>{if(!n.current)return;e.preventDefault();let t=n.current.getBoundingClientRect();f.current={clientX:e.clientX,clientY:e.clientY,canvasRect:t,active:!1,shiftKey:e.shiftKey,previousIds:[...l]},window.addEventListener("mousemove",y),window.addEventListener("mouseup",w)},[n,y,w,l]);return(0,i.useEffect)(()=>()=>{window.removeEventListener("mousemove",y),window.removeEventListener("mouseup",w)},[y,w]),{onMarqueeStart:S,isMarqueeActive:c}}({canvasConfig:k.Wk,canvasRef:K,textElements:eK,imageElements:eJ,isLayerHidden:t0,selectedIds:e$,setSelectedIds:e0,deselectAll:e5,onMarqueeChange:n8}),{duplicateSelected:n6,toggleLockSelected:n7}=function(e){let{selectedIds:t,textElements:n,imageElements:r,setTextElements:a,setImageElements:o,setSelectedIds:l,pushSnapshot:s}=e,d=(0,i.useRef)(t);return d.current=t,{duplicateSelected:(0,i.useCallback)(()=>{let e=new Set(d.current);if(0===e.size)return;let t=new Set(n.map(e=>e.id)),i=new Set(r.map(e=>e.id)),u=new Map,c=new Map;for(let n of e)t.has(n)?u.set(n,(0,S.ju)("text")):i.has(n)&&c.set(n,(0,S.ju)("img"));(0!==u.size||0!==c.size)&&(s(),a(e=>{let t=[];for(let n of e){let e=u.get(n.id);e&&t.push({...n,id:e,x:n.x+30,y:n.y+30,locked:!1,boundField:void 0})}return[...e,...t]}),o(e=>{let t=[];for(let n of e){let e=c.get(n.id);e&&t.push({...n,id:e,x:n.x+30,y:n.y+30,locked:!1})}return[...e,...t]}),l([...u.values(),...c.values()]))},[s,n,r,a,o,l]),toggleLockSelected:(0,i.useCallback)(()=>{let e=new Set(d.current);if(0===e.size)return;s();let t=[...n.filter(t=>e.has(t.id)),...r.filter(t=>e.has(t.id))],i=!(t.length>0&&t.every(e=>e.locked));a(t=>t.map(t=>e.has(t.id)?{...t,locked:i}:t)),o(t=>t.map(t=>e.has(t.id)?{...t,locked:i}:t))},[n,r,s,a,o])}}({selectedIds:e$,textElements:eK,imageElements:eJ,setTextElements:eV,setImageElements:eQ,setSelectedIds:e0,pushSnapshot:nj}),{onDragStart:re,onResizeStart:rt,onRotateStart:rn,onImageDragStart:rr,onImageResizeStart:ri}=er({canvasRef:K,textElements:eK,imageElements:eJ,setTextElements:eV,setImageElements:eQ,selectedIds:e$,selectElement:e1,toggleElement:e2,setActiveToolbarItem:ef,onBeforeDrag:nj,onBeforeResize:nj,onSnapGuidesChange:n2,onDragPositionChange:eZ,onMultiDragStart:n4}),{stickerCategories:ra,stickers:ro,setStickers:rl,stickerQuery:rs,setStickerQuery:rd,stickerActiveCategory:ru,setStickerActiveCategory:rc,stickersLoading:rh,stickerPage:rg,stickerHasNext:rm,stickerTrending:rf,stickerMode:rp,setStickerMode:rv,loadStickers:rx,addStickerToCanvas:rb}=et({activeToolbarItem:em,imageElements:eJ,setImageElements:eQ,selectElement:e1,setActiveToolbarItem:ef,onBeforeAddSticker:()=>nj()}),{hasDraft:ry,draftTimestamp:rw,restoreDraft:rk,dismissDraft:rS,hasPreviousVersion:rE,restorePrevious:rC,dismissPrevious:rA,clearDraft:rI,savePreviousVersion:rT,isDirty:rM,resetDirty:rj,markDirty:rR}=(0,ew.tZ)({templateId:ns||_,eventId:L,textElements:eK,imageElements:eJ,paintStrokes:tB,backgroundUrl:t9,backgroundColor:t7,enabled:!t3}),rD=(0,i.useRef)(0),rL=(0,i.useCallback)(e=>{let t=Date.now();t-rD.current>600&&nj(),rD.current=t,ne(e),rR()},[nj,ne,rR]);tq.current=rj,(0,i.useEffect)(()=>{!t3&&nt&&t9&&rR()},[t3]);let{isBlocked:r_,confirmNavigation:rW,cancelNavigation:rP}=te(rM);(0,i.useEffect)(()=>{let e=e=>{let t=e.detail;t.textElements&&eV(t.textElements),t.imageElements&&eQ(t.imageElements),t.paintStrokes&&tF(t.paintStrokes),void 0!==t.backgroundUrl&&window.dispatchEvent(new CustomEvent("editor:restore-background",{detail:{backgroundUrl:t.backgroundUrl,backgroundColor:t.backgroundColor}})),nW(),e5()};return window.addEventListener("editor:restore-draft",e),()=>window.removeEventListener("editor:restore-draft",e)},[eV,eQ,tF,nW,e5]);let{handleSave:rH}=eR({eventId:L,category:P,mode:H,type:z,templateId:ns||_,backgroundUrl:t9,backgroundColor:t7,textElements:eK,imageElements:eJ,paintStrokes:tB,canvasContainerRef:V,hasPendingUploads:eA.some(e=>"uploading"===e.status),canvasSuppressed:"ok"!==ec,isTemplateLoading:t3,awaitPendingUploads:async()=>{let e=Date.now();for(;eT.current.some(e=>"uploading"===e.status);){if(Date.now()-e>
12e3)throw console.warn("[editor-save.pending-uploads-timeout]",{pendingCount:eT.current.filter(e=>"uploading"===e.status).length,waitedMs:Date.now()-e}),new eS("Image upload did not complete in time. Please wait a moment and save again.");await new Promise(e=>setTimeout(e,100))}},isBackgroundUploading:nr,onBeforeSave:rT,onAfterSave:rI,themePreset:nu,themeColor:nh,themeBackgroundColor:nm,themeTextMode:nx,templateColors:ny,themeBackgroundUrl:np,designerTheme:nk,eventFields:nH,isAiBackground:nt,layerOrder:tK,hiddenLayers:Array.from(tJ),onRefreshAssetUrls:nE}),rz=e=>{var t;let n=null===(t=e.target.files)||void 0===t?void 0:t[0];if(!n)return;let r=e.target===$.current;if(e.target.value="",!eY){g.Am.info("Please log in to upload images");return}if(!["image/png","image/jpeg","image/gif","image/webp"].includes(n.type)){g.Am.error("Please upload a PNG, JPEG, GIF, or WebP image");return}if(n.size>10485760){g.Am.error("Image must be smaller than 10MB");return}en.current?rB(n,r):(ev({file:n,isReplacing:r}),ek(!0))},rB=async(e,t)=>{let n="pending-".concat(Date.now());eI(t=>[...t,{id:n,fileName:e.name,fileSize:e.size,status:"uploading"}]),ef("IMAGE");try{var r,i,a,o;let l=await v(e),s=await (0,f.C2)(l,"image"),d=null===(i=s.data)||void 0===i?void 0:null===(r=i.data)||void 0===r?void 0:r.url,u=null===(o=s.data)||void 0===o?void 0:null===(a=o.data)||void 0===a?void 0:a.key;if(!d)throw Error("No URL returned from upload");(0,tl.wW)(eq,d,"image",e.name,e.size,u),eI(e=>e.map(e=>e.id===n?{...e,status:"done",url:d}:e)),eC(e=>e+1);let c="designer"===nu?null==nk?void 0:nk.backgroundUrl:np,h=!t9&&!c&&0===eJ.length;if(q&&!t&&h&&!ea.current){ea.current=!0,el(URL.createObjectURL(e)),nj(),t6(d),nv(d),nc("custom"),setTimeout(()=>eI(e=>e.filter(e=>e.id!==n)),3e3);return}let g=URL.createObjectURL(l);try{let n=new Image;await new Promise((e,t)=>{n.onload=()=>e(),n.onerror=t,n.src=g});let r=A(n.width,n.height),i=n.naturalWidth,a=n.naturalHeight;if(nj(),t&&e3>=0&&eJ[e3])eQ(t=>{let n=[...t],r=eJ[e3].id,o=t.findIndex(e=>e.id===r);if(o<0)return t;let l=t[o],s=!!l.imageShape&&"none"!==l.imageShape;return n[o]={...l,src:d,naturalWidth:i,naturalHeight:a,objectFit:s?l.objectFit:"crop",cropRegion:void 0,fileName:e.name,fileSize:e.size},n});else{let t=(0,S.ju)("img"),n={id:t,src:d,x:r.x,y:r.y,width:r.width,height:r.height,naturalWidth:i,naturalHeight:a,objectFit:"fit",opacity:100,fileName:e.name,fileSize:e.size};eQ(e=>[...e,n]),e1(t)}}finally{URL.revokeObjectURL(g)}setTimeout(()=>eI(e=>e.filter(e=>e.id!==n)),3e3)}catch(e){eI(e=>e.map(e=>e.id===n?{...e,status:"failed"}:e)),g.Am.error("Failed to upload image. Please try again.")}},rF=(0,i.useMemo)(()=>new Set(eK.filter(e=>e.boundField).map(e=>e.boundField)),[eK]),rU=(0,i.useMemo)(()=>eM?"36.28vw":"THEME"===em?"min(100%, 450px)":"clamp(200px, 28vw, 34vw)",[eM,em]),rZ=(0,i.useMemo)(()=>eM||"THEME"===em?"left":void 0,[eM,em]),rY=(0,i.useCallback)((e,t)=>{var n;let r=null===(n=eK[e])||void 0===n?void 0:n.id;r&&e1(r),eV(n=>n.map((n,r)=>r===e?{...n,content:t}:n))},[eK,e1,eV]),rN=(0,i.useCallback)(e=>{nj(),eV([]),eQ([]),tF([]),t6(e,!0),rR()},[nj,t6,eV,eQ,tF,rR]),rG=(0,i.useCallback)(e=>{rN("string"==typeof e?e:e.url),e_(!1),eP(e=>e+1)},[rN]),{trackedUpdateText:rX,trackedAddTextElement:rO,trackedDeleteTextElement:rq,trackedDuplicateTextElement:rK,trackedToggleLock:rV,trackedUpdateImage:rJ,trackedUpdateImageSize:rQ,trackedDeleteImageElement:r$,trackedDuplicateImageElement:r0,trackedToggleImageLock:r1,trackedUndoPaintStroke:r2,trackedClearPaintStrokes:r5,trackedDeleteLayer:r8,trackedOnLayerReorder:r4}=function(e){let{pushSnapshot:t}=e,n=(0,i.useRef)(e);return n.current=e,{trackedUpdateText:(0,i.useCallback)((e,r)=>{t(),n.current.updateText(e,r)},[t]),trackedAddTextElement:(0,i.useCallback)(e=>{t(),n.current.addTextElement(e)},[t]),trackedDeleteTextElement:(0,i.useCallback)(e=>{t(),n.current.deleteTextElement(e)},[t]),trackedDuplicateTextElement:(0,i.useCallback)(e=>{t(),n.current.duplicateTextElement(e)},[t]),trackedToggleLock:(0,i.useCallback)(e=>{t(),n.current.toggleLock(e)},[t]),trackedUpdateImage:(0,i.useCallback)(function(){for(var e=arguments.length,r=Array(e),i=0;i<e;i++)r[i]=arguments[i];t(),n.current.updateImage(...r)},[t]),trackedUpdateImageSize:(0,i.useCallback)(function(){for(var e=arguments.length,r=Array(e),i=0;i<e;i++)r[i]=arguments[i];t(),n.current.updateImageSize(...r)},[t]),trackedDeleteImageElement:(0,i.useCallback)(e=>{t(),n.current.deleteImageElement(e)},[t]),trackedDuplicateImageElement:(0,i.useCallback)(e=>{t(),n.current.duplicateImageElement(e)},[t]),trackedToggleImageLock:(0,i.useCallback)(e=>{t(),n.current.toggleImageLock(e)},[t]),trackedUndoPaintStroke:(0,i.useCallback)(()=>{t(),n.current.undoPaintStroke()},[t]),trackedClearPaintStrokes:(0,i.useCallback)(()=>{t(),n.current.clearPaintStrokes()},[t]),trackedDeleteLayer:(0,i.useCallback)((e,r)=>{t(),n.current.deleteLayer(e,r)},[t]),trackedOnLayerReorder:(0,i.useCallback)((e,r)=>{t(),n.current.onLayerReorder(e,r)},[t])}}({pushSnapshot:nj,updateText:td,addTextElement:tu,deleteTextElement:tS,duplicateTextElement:tC,toggleLock:tE,updateImage:tA,updateImageSize:tI,deleteImageElement:tT,duplicateImageElement:tM,toggleImageLock:tj,undoPaintStroke:tX,clearPaintStrokes:tO,deleteLayer:t5,onLayerReorder:t8}),r3=(0,i.useCallback)((e,t)=>{"error"===e?g.Am.error(t):g.Am.info(t)},[]);!function(e){let{undo:t,redo:n,selectedIds:r,textElements:a,imageElements:o,paintStrokes:l,deleteSelectedElements:s,setSelectedIds:d,setTextElements:u,setImageElements:c,pushSnapshot:h,hiddenLayers:g,addToast:m}=e,f=(0,i.useRef)(!1),p=(0,i.useRef)({selectedIds:r,textElements:a,imageElements:o,paintStrokes:l,hiddenLayers:g});p.current={selectedIds:r,textElements:a,imageElements:o,paintStrokes:l,hiddenLayers:g},(0,i.useEffect)(()=>{let e=e=>{let r=e.metaKey||e.ctrlKey;if(r&&("z"===e.key||"y"===e.key)){if(ei())return;"z"!==e.key||e.shiftKey||(e.preventDefault(),t()),"z"===e.key&&e.shiftKey&&(e.preventDefault(),n()),"y"===e.key&&(e.preventDefault(),n())}if(r&&"a"===e.key){if(ei())return;e.preventDefault();let{textElements:t,imageElements:n,paintStrokes:r,hiddenLayers:i}=p.current,a=[];
1t.forEach(e=>{e.id&&!i.has(e.id)&&a.push(e.id)}),n.forEach(e=>{e.id&&!i.has(e.id)&&a.push(e.id)}),r.forEach(e=>{e.id&&!i.has(e.id)&&a.push(e.id)}),d(a)}if("Delete"===e.key||"Backspace"===e.key){if(ei())return;let{selectedIds:t,textElements:n,imageElements:r}=p.current;if(0===t.length)return;let i=new Set(t);(n.some(e=>i.has(e.id)&&e.locked)||r.some(e=>i.has(e.id)&&e.locked))&&(null==m||m("success","Locked elements were kept.")),e.preventDefault(),s()}if(["ArrowUp","ArrowDown","ArrowLeft","ArrowRight"].includes(e.key)){if(ei())return;let{selectedIds:t,textElements:n,imageElements:r}=p.current;if(0===t.length)return;let i=new Set(t);if(!(n.some(e=>i.has(e.id)&&!e.locked)||r.some(e=>i.has(e.id)&&!e.locked)))return;e.preventDefault(),f.current||(f.current=!0,h());let a=e.shiftKey?10:1,o="ArrowLeft"===e.key?-a:"ArrowRight"===e.key?a:0,l="ArrowUp"===e.key?-a:"ArrowDown"===e.key?a:0;u(e=>e.map(e=>i.has(e.id)&&!e.locked?{...e,x:e.x+o,y:e.y+l}:e)),c(e=>e.map(e=>i.has(e.id)&&!e.locked?{...e,x:e.x+o,y:e.y+l}:e))}},r=e=>{["ArrowUp","ArrowDown","ArrowLeft","ArrowRight"].includes(e.key)&&(f.current=!1)};return window.addEventListener("keydown",e),window.addEventListener("keyup",r),()=>{window.removeEventListener("keydown",e),window.removeEventListener("keyup",r)}},[t,n,s,d,u,c,h,m])}({undo:nR,redo:nD,selectedIds:e$,textElements:eK,imageElements:eJ,paintStrokes:tB,deleteSelectedElements:()=>{nj(),e8()},setSelectedIds:e0,setTextElements:eV,setImageElements:eQ,pushSnapshot:nj,hiddenLayers:tJ,addToast:r3}),function(e){let{setImageElements:t,selectElement:n,pushSnapshot:r}=e,a=(0,i.useRef)(!1);(0,i.useEffect)(()=>{let e=async e=>{var i,o,l,s,d;let u=((null===(i=document.activeElement)||void 0===i?void 0:i.tagName)||"").toLowerCase();if("input"===u||"textarea"===u||(null===(o=document.activeElement)||void 0===o?void 0:o.isContentEditable)||a.current)return;let c=null===(l=e.clipboardData)||void 0===l?void 0:l.items;if(c)for(let i of c){if(!i.type.startsWith("image/"))continue;let o=i.getAsFile();if(o){if(o.size>10485760){g.Am.error("Pasted image must be smaller than 10MB");return}e.preventDefault(),a.current=!0;
1try{let e=await v(o),i=await (0,f.C2)(e,"image"),a=null==i?void 0:null===(d=i.data)||void 0===d?void 0:null===(s=d.data)||void 0===s?void 0:s.url;if(!a)throw Error("Upload failed");let l=new Image;await new Promise((e,t)=>{l.onload=()=>e(),l.onerror=()=>t(Error("Image load failed")),l.src=a}),r();let u=(0,S.ju)("img"),c=A(l.naturalWidth,l.naturalHeight,300,300),h={id:u,src:a,x:c.x,y:c.y,width:c.width,height:c.height,naturalWidth:l.naturalWidth,naturalHeight:l.naturalHeight,opacity:100,locked:!1,source:"upload",objectFit:"fit",borderRadius:0,imageShape:"none",blur:0,dropShadow:!1};t(e=>[...e,h]),n(u),g.Am.info("Image pasted onto canvas")}catch(e){g.Am.error("Failed to paste image. Please try again.")}finally{a.current=!1}break}}};return window.addEventListener("paste",e),()=>window.removeEventListener("paste",e)},[t,n,r])}({setImageElements:eQ,selectElement:e1,pushSnapshot:nj}),(0,i.useImperativeHandle)(t,()=>({save:e=>rH(e)}),[rH]);let r9=(0,i.useMemo)(()=>{if(e$.length<2)return{allLocked:!1,hasLockedSelected:!1};let e=new Set(e$),t=[...eK.filter(t=>e.has(t.id)),...eJ.filter(t=>e.has(t.id))];return 0===t.length?{allLocked:!1,hasLockedSelected:!1}:{allLocked:t.every(e=>!!e.locked),hasLockedSelected:t.some(e=>!!e.locked)}},[e$,eK,eJ]);if(t3)return(0,r.jsx)(l.Z,{sx:{height:"100vh",display:"flex",alignItems:"center",justifyContent:"center"},children:(0,r.jsx)(s.Z,{})});if(nM)return(0,r.jsx)(b.Z,{message:nM});if("ok"!==ec){let e="mobile"===ec,t=ns||_||nd,n=null!=t?Number(t):NaN,i=Number.isInteger(n)&&n>0?n:null,a=e&&!eY&&null!=i;return t3&&null==i?(0,r.jsx)(l.Z,{sx:{height:"100vh",display:"flex",alignItems:"center",justifyContent:"center"},children:(0,r.jsx)(s.Z,{})}):a?(0,r.jsx)(ti.Z,{open:!0,templateId:i,occasion:Z,onClose:eg}):(0,r.jsxs)(l.Z,{sx:{width:"100%",minHeight:"70vh",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",padding:"24px",textAlign:"center",gap:"12px"},children:[(0,r.jsx)(u.Z,{sx:{fontSize:"18px",fontWeight:600,color:k.DM.text,fontFamily:k.ut},children:e?"Best viewed on a larger screen":"Rotate for a better view"}),(0,r.jsx)(u.Z,{sx:{fontSize:"14px",color:k.DM.textMuted,maxWidth:"360px",lineHeight:1.5,fontFamily:k.ut},children:e?"The invitation editor needs room to breathe. Please continue on a laptop or desktop for the full editing experience.":"Rotate your device to landscape for the full editing experience — you'll get more room for the canvas and preview."})]})}return t3?(0,r.jsx)(l.Z,{sx:{height:"100vh",display:"flex",alignItems:"center",justifyContent:"center"},children:(0,r.jsx)(s.Z,{})}):(0,r.jsx)(E.e,{value:k.Wk,children:(0,r.jsxs)(l.Z,{sx:{width:"100%",flex:1,minHeight:0,display:"flex",justifyContent:"center",bgcolor:"transparent",overflow:"hidden",px:eM?0:"30px",pb:eM?0:"24px"},children:[(0,r.jsxs)(l.Z,{ref:J,sx:{width:"100%",height:"100%",position:"relative",border:eM?"none":k.T5,borderRadius:eM?0:k.zf.radius,overflow:"hidden",backgroundColor:k.DM.white,backgroundImage:"radial-gradient(circle, #F2F2F2 3.5px, transparent 4px)",backgroundSize:"24px 24px"},children:[(()=>{var e;let t="designer"===nu?nk.preset:nu,n="designer"===nu?nk.backgroundColor:nm,i="designer"===nu?nk.backgroundUrl:np,a=e=>e.startsWith("data:video")||/\.(mp4|webm)(\?|$)/i.test(e);if("white"===t)return(0,r.jsx)("div",{style:{position:"absolute",inset:0,backgroundColor:n,zIndex:0}});if("blur"===t){let e=eJ.length>0?[...eJ].sort((e,t)=>t.width*t.height-e.width*e.height)[0]:void 0,t=t9||(null==e?void 0:e.src)||"";return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("div",{style:{position:"absolute",inset:0,backgroundColor:n,zIndex:0}}),t&&(a(t)?(0,r.jsx)("video",{src:t,crossOrigin:"anonymous",autoPlay:!0,loop:!0,muted:!0,playsInline:!0,style:{position:"absolute",top:"-60px",left:"-60px",width:"calc(100% + 120px)",height:"calc(100% + 120px)",objectFit:"cover",filter:"blur(40px)",zIndex:0}}):(0,r.jsx)("div",{style:{position:"absolute",top:"-60px",left:"-60px",right:"-60px",bottom:"-60px",overflow:"hidden",filter:"blur(40px)",zIndex:0},children:(0,r.jsx)("img",{src:t,alt:"",crossOrigin:"anonymous",draggable:!1,style:{width:"100%",height:"100%",objectFit:"cover"}})}
1))]})}return"custom"===t?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("div",{style:{position:"absolute",inset:0,backgroundColor:n,zIndex:0}}),i&&(a(i)?(0,r.jsx)("video",{src:i,crossOrigin:"anonymous",autoPlay:!0,loop:!0,muted:!0,playsInline:!0,style:{position:"absolute",inset:0,width:"100%",height:"100%",objectFit:"cover",zIndex:0}}):(0,r.jsx)(tk,{fullUrl:i,thumbUrl:(null===(e=nJ.find(e=>e.file_url===i))||void 0===e?void 0:e.thumb_url)||eo,onLoaded:es}))]}):null})(),(0,r.jsx)(l.Z,{sx:{position:"absolute",top:0,bottom:0,left:eM?"calc(50% + 0.93vw)":"THEME"===em?"40%":"calc(50% + 0.93vw)",right:eM?0:"THEME"===em?"calc(".concat(k.zf.panelWidth," + 32px)"):0,display:eM?"block":{xs:"none",lg:"block"},pointerEvents:eM||"THEME"===em?"auto":"none",transform:eM||"THEME"===em?"none":"translateX(calc(295px - 10vw))",filter:eM||"THEME"===em?"none":"blur(40px)",opacity:eM||"THEME"===em?1:.7,overflow:"hidden",zIndex:"THEME"===em?2:1,willChange:"transform, filter, opacity",transition:"transform 700ms cubic-bezier(0.4, 0, 0.2, 1), filter 700ms ease-in-out, opacity 700ms ease-in-out, left 700ms cubic-bezier(0.4, 0, 0.2, 1), right 700ms cubic-bezier(0.4, 0, 0.2, 1)"},children:(0,r.jsx)(tr.Z,{thumbnailUrl:t9,templateBackgroundUrl:t9,templateBackgroundColor:t7,templateMediaType:(null==t9?void 0:t9.startsWith("data:video"))||/\.(mp4|webm|mov|m4v)(\?|$)/i.test(t9||"")?"video":void 0,loading:!1,phoneWidth:rU,phoneAlign:rZ,eventTitle:null!==(a=null!==(n=nH.title)&&void 0!==n?n:null==nA?void 0:nA.title)&&void 0!==a?a:"EVENT TITLE",eventDescription:(null==nA?void 0:nA.description)||"",eventDate:nH.date?new Date(nH.date+"T12:00:00"):(null==nA?void 0:nA.event_date)?new Date(nA.event_date):new Date,eventDateString:nH.date||(null==nA?void 0:nA.event_date),eventTime:nH.time||(null==nA?void 0:nA.event_time)||"6:00 PM",eventTimezone:(null==nA?void 0:nA.timezone)||Intl.DateTimeFormat().resolvedOptions().timeZone,eventLocation:null!==(p=null!==(c=nH.location)&&void 0!==c?c:null==nA?void 0:nA.location)&&void 0!==p?p:"",mealPreferences:(null==nA?void 0:nA.meal_options)||[],drinkPreferences:(null==nA?void 0:nA.drinks)||[],guestLimit:(null==nA?void 0:nA.guest_limit)?Number(nA.guest_limit):void 0,rsvpCloseDate:null!==(T=null==nA?void 0:nA.rsvp_close_date)&&void 0!==T?T:null,cardOrder:(null==nA?void 0:nA.card_order)||void 0,themePreset:nu,themeColor:nh,themeTextMode:nx,hostName:eX,hostAvatarUrl:eO})}),(0,r.jsxs)(l.Z,{sx:{position:"absolute",inset:0,right:{md:eM?"calc(50% + 0.93vw)":"calc(".concat(k.zf.panelWidth," * 0.9)"),lg:eM?"calc(50% + 0.93vw)":"THEME"===em?"60%":"calc(".concat(k.zf.panelWidth," * 0.9)")},zIndex:2,willChange:"right",transition:"right 700ms cubic-bezier(0.4, 0, 0.2, 1)"},children:[(0,r.jsx)(eN,{activeItem:em,onItemClick:e=>{ef(e),"TEMPLATES"===e&&no()},onPreviewClick:()=>{ej(e=>{let t=!e;return null==Y||Y(t),t})},previewActive:eM,canUndo:nL,canRedo:n_,onUndo:nR,onRedo:nD}),ry&&!eM&&(0,r.jsx)(tn,{timestamp:rw,onRestore:rk,onDismiss:rS}),(0,r.jsx)(e6,{ref:V,canvasRef:K,backgroundUrl:t9,hideBackgroundMedia:ex,backgroundColor:t7,textElements:eK,imageElements:eJ,paintStrokes:tB,selectedIds:e$,activeToolbarItem:em,paintCanvasRef:tU,getLayerZIndex:t$,isLayerHidden:t0,onDragStart:re,onResizeStart:rt,onRotateStart:rn,onImageDragStart:rr,onImageResizeStart:ri,activeSnapGuides:n1,dragPosition:eU,deleteTextElement:rq,toggleLock:rV,duplicateTextElement:rK,deleteImageElement:r$,toggleImageLock:r1,duplicateImageElement:r0,setActiveToolbarItem:ef,startDrawing:tZ,continueDrawing:tY,endDrawing:tN,clearToolHover:tG,onDeselect:()=>{e5(),eF(!1)},previewMode:eM,themeColor:nh,hideWatermark:nt,showBorder:G||q,isCropMode:eB,onCropApply:nQ,onCropCancel:n$,onTextContentChange:rY,marqueeRect:n5,onMarqueeStart:n9,onMultiDragStart:n4,onGroupResizeStart:n3,deleteSelectedElements:()=>{nj(),e8()},duplicateSelected:n6,toggleLockSelected:n7,allLocked:r9.allLocked,hasLockedSelected:r9.hasLockedSelected,addToast:r3}),nr&&(0,r.jsxs)("div",{style:{position:"absolute",inset:0,zIndex:1e4,display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:"rgba(255,255,255,0.6)",borderRadius:k.zf.radius},children:[(0,r.jsx)("style",{children:"@keyframes editorProgressBar { 0% { width: 0%; margin-left: 0; } 50% { width: 60%; margin-left: 20%; } 100% { width: 0%; margin-left: 100%; } }"}),(0,r.jsxs)("div",{style:{textAlign:"center",width:200},children:[(0,r.jsx)(s.Z,{size:40}),(0,r.jsx)("p",{style:{marginTop:8,fontSize:14,color:"#333",fontFamily:k.ut},children:nr?"Preparing template...":"Uploading image..."}),nr&&(0,r.jsx)("div",{style:{marginTop:12,width:"100%",height:4,backgroundColor:"#e5e7eb",borderRadius:2,overflow:"hidden"},children:(0,r.jsx)("div",{style:{height:"100%",backgroundColor:k.DM.primary,borderRadius:2,animation:"editorProgressBar 1.5s ease-in-out infinite"}})})]})]})]}),(0,r.jsx)(l.Z,{sx:{position:"absolute",right:"16px",top:"16px",bottom:"16
1px",width:{xs:"100%",md:k.zf.panelWidth},display:"flex",flexDirection:"column",zIndex:3,borderRadius:k.zf.radius,boxShadow:"0 8px 40px rgba(0, 0, 0, 0.12)",overflow:"hidden",opacity:eM?0:1,transform:eM?"translateX(30px)":"translateX(0)",pointerEvents:eM?"none":"auto",willChange:"transform, opacity",transition:"opacity 700ms ease-in-out, transform 700ms cubic-bezier(0.4, 0, 0.2, 1)"},children:(0,r.jsx)("div",{className:"flex-1 flex flex-col bg-white min-h-0",style:{fontFamily:k.ut},children:(0,r.jsx)("div",{className:"custom-scrollbar-thin overflow-y-auto flex-1 px-5 py-5 flex flex-col gap-5",children:"THEME"===em?(0,r.jsx)(tb,{activePreset:nu,onPresetChange:e=>{nc(e),"designer"===e&&nS()},themeColor:nh,onThemeColorChange:ng,themeBackgroundColor:nm,onThemeBackgroundColorChange:nf,themeTextMode:nx,onThemeTextModeChange:nb,backgroundUrl:np,backgrounds:nJ,onBackgroundSelect:nv,templateColors:ny,onTemplateColorsChange:nw,hideDesignerChoice:nP}):"TEMPLATES"===em?(0,r.jsx)(tc,{templates:ni,templatesLoading:na,selectTemplate:nZ,eventId:L,onSelectGeneration:rN,onViewGeneration:ez,onOpenAiModal:()=>e_(!0),refreshKey:eW}):"IMAGE"===em&&e$.length>=2?(0,r.jsx)(ty,{selectedIds:e$,textElements:eK,imageElements:eJ,setTextElements:eV,setImageElements:eQ,pushSnapshot:nj,deleteSelectedElements:e8,duplicateSelected:n6,toggleLockSelected:n7,allLocked:r9.allLocked,hasLockedSelected:r9.hasLockedSelected,addToast:r3}):"IMAGE"===em&&tt?(0,r.jsx)(tm,{selectedImage:tt,selectedImageIndex:e3,updateImage:rJ,updateImageSize:rQ,deleteImageElement:r$,duplicateImageElement:r0,toggleImageLock:r1,onUploadClick:()=>{var e;return null===(e=Q.current)||void 0===e?void 0:e.click()},onReplaceClick:()=>{var e;return null===(e=$.current)||void 0===e?void 0:e.click()},onCropClick:()=>eF(!0),onResetClick:n0}):"IMAGE"!==em||tt?"STICKER"===em?(0,r.jsx)(tf,{stickerCategories:ra,stickers:ro,setStickers:rl,stickerQuery:rs,setStickerQuery:rd,stickerActiveCategory:ru,setStickerActiveCategory:rc,stickersLoading:rh,stickerPage:rg,stickerHasNext:rm,stickerTrending:rf,stickerMode:rp,setStickerMode:rv,loadStickers:rx,addStickerToCanvas:rb}):"PAINT"===em?(0,r.jsx)(tp,{paintTool:tR,setPaintTool:tD,brushSize:tL,setBrushSize:t_,eraserSize:tW,setEraserSize:tP,paintColor:tH,setPaintColor:tz,paintStrokes:tB,undoPaintStroke:r2,clearPaintStrokes:r5,templateColors:ny,onTemplateColorsChange:nw,backgroundColor:t7,setBackgroundColor:rL,hasBackgroundImage:!!t9,isBackgroundHidden:ex}):"LAYERS"===em?(0,r.jsx)(tv,{layerOrder:tK,textElements:eK,imageElements:eJ,paintStrokes:tB,selectedIds:e$,isLayerHidden:t0,toggleLayerVisibility:t1,toggleLayerLock:t2,deleteLayer:r8,onLayerReorder:r4,selectLayerElement:t4,backgroundUrl:t9,backgroundColor:t7,isBackgroundHidden:ex,onToggleBackgroun
1dVisibility:()=>eb(e=>!e)}):e$.length>=2?(0,r.jsx)(ty,{selectedIds:e$,textElements:eK,imageElements:eJ,setTextElements:eV,setImageElements:eQ,pushSnapshot:nj,deleteSelectedElements:e8,duplicateSelected:n6,toggleLockSelected:n7,allLocked:r9.allLocked,hasLockedSelected:r9.hasLockedSelected,addToast:r3}):e9?(0,r.jsx)(tx,{selectedText:e9,updateText:rX,onAddText:rO,existingBoundFields:rF,allFonts:nG,customFonts:nX,fontCategory:nO,recentFonts:nq,setRecentFonts:nK,loadFont:nV,templateColors:ny,onTemplateColorsChange:nw,eventFields:nH,onEventFieldChange:nB}):(0,r.jsxs)("div",{className:"flex flex-col items-center justify-center py-16 gap-4",children:[(0,r.jsx)("p",{className:"text-sm text-gray-400",style:{fontFamily:k.ut},children:"Select a text element to edit"}),(0,r.jsx)("p",{className:"text-xs text-gray-400",style:{fontFamily:k.ut},children:"or"}),(0,r.jsx)(e7.Z,{onAddText:rO,existingBoundFields:rF,variant:"button"})]}):(0,r.jsx)(tw,{storageKey:eq,pendingUploads:eA,onSelectUpload:e=>{ee(e).then(t=>{nj();let n=(0,S.ju)("img"),r=A(t.naturalWidth,t.naturalHeight,300,300),i={id:n,src:e,x:r.x,y:r.y,width:r.width,height:r.height,naturalWidth:t.naturalWidth,naturalHeight:t.naturalHeight,opacity:100,locked:!1,source:"upload",objectFit:"fit",borderRadius:0,imageShape:"none",blur:0,dropShadow:!1};eQ(e=>[...e,i]),e1(n)}).catch(()=>g.Am.error("Image could not be loaded. Please re-upload."))},onUploadClick:()=>{var e;return null===(e=Q.current)||void 0===e?void 0:e.click()},refreshKey:eE})})})}),(0,r.jsx)("input",{ref:Q,type:"file",accept:"image/png,image/jpeg,image/gif,image/webp","aria-label":"Upload image",onChange:rz,style:{display:"none"}}),(0,r.jsx)("input",{ref:$,type:"file",accept:"image/png,image/jpeg,image/gif,image/webp","aria-label":"Replace image",onChange:rz,style:{display:"none"}})]}),(0,r.jsx)(w.Q,{open:r_,title:"Unsaved Changes",message:"You have unsaved changes. Leaving this page will discard your current edits.",confirmText:"Leave Page",cancelText:"Stay",tone:"danger",onClose:rP,onConfirm:rW,loader:!1}),(0,r.jsx)(w.Q,{open:null!==nF,title:"Unsaved Changes",message:"You have unsaved changes. Switching templates will discard your current edits.",confirmText:"Discard & Switch",cancelText:"Cancel",tone:"danger",onClose:()=>{nU(null)},onConfirm:nN,loader:!1}),(0,r.jsx)(y.Z,{open:ey,onClose:()=>{ev(null),ek(!1)},onAgree:e=>{if(!ep)return;let{file:t,isReplacing:n}=ep;e&&(en.current=!0),ev(null),ek(!1),rB(t,n)}}),(0,r.jsx)(tg,{open:!!eH,generation:eH,onClose:()=>ez(null),onUseAsBackground:e=>{ez(null),rN(e)},onRefine:(e,t)=>{let n=e.versions[t];ez(null),n&&(sessionStorage.setItem("ai_refine_prompt",n.prompt||""),sessionStorage.setItem("ai_refine_image",n.url||"")),e_(!0)}}),(0,r.jsx)(th,{open:eL,onClose:()=>{e_(!1),eP(e=>e+1)},onSelect:rG,eventId:null!==(D=(0,x.E7)(L))&&void 0!==D?D:void 0,startClean:!0})]})})});tS.displayName="InvitationEditor";var tE=tS},46418:function(e,t,n){n.d(t,{PS:function(){return l},ST:function(){return s},bi:function(){return o},cq:function(){return i},s:function(){return a}});var r=n(50859);let i="Save failed. Please try again.",a="Invitation background is still loading. Please wait a moment and try again.",o="Your invitation background could not be loaded. Try refreshing the page, or pick the background again.",l=e=>{let{previewWarning:t,backendMessage:n}=e;return t?{kind:"warning",message:n||"Saved. Preview image couldn't be saved — it will update when you save again."}:{kind:"success",message:"Saved!"}},s=e=>(0,r.E)(e)?e.message:i},44219:function(e,t,n){function r(e){return e.fontSize*(e.lineHeight||1.2)*1.5}function i(e,t,n){let i=new Set(e),a=[];for(let e of t){if(!i.has(e.id))continue;let t=e.width/2,n=r(e);a.push({id:e.id,type:"text",left:e.x-t,right:e.x+t,top:e.y,bottom:e.y+n,centerX:e.x,centerY:e.y+n/2,width:e.width,height:n})}for(let e of n){if(!i.has(e.id))continue;let t=e.width/2;a.push({id:e.id,type:"image",left:e.x-t,right:e.x+t,top:e.y,bottom:e.y+e.height,centerX:e.x,centerY:e.y+e.height/2,width:e.width,height:e.height})}return a}function a(e){let t=1/0,n=-1/0,r=1/0,i=-1/0;for(let a of e)t=Math.min(t,a.left),n=Math.max(n,a.right),r=Math.min(r,a.top),i=Math.max(i,a.bottom);return{left:t,right:n,top:r,bottom:i}}function o(e,t,n){return e.length<2?null:function(e){if(0===e.length)return null;let t=1/0,n=1/0,r=-1/0,i=-1/0;for(let a of e)t=Math.min(t,a.left),n=Math.min(n,a.top),r=Math.max(r,a.right),i=Math.max(i,a.bottom);return{x:t,y:n,width:r-t,height:i-n}}(i(e,t,n))}n.d(t,{$X:function(){return r},BE:function(){return a},Cp:function(){return o},Xm:function(){return i}})},99598:function(e,t,n){n.d(t,{P:function(){return r.P}});var r=n(37348)},98512:function(e,t,n){n.d(t,{PL:function(){return d},entityKey:function(){return a},migrateUploads:function(){return u},n7:function(){return o},w7:function(){return s},wW:function(){return l}});let r="airawath_uploads_",i="".concat(r,"draft"),a=(e,t)=>t?"".concat(r).concat(e,"_").concat(t):i,o=e=>{try{let t=localStorage.getItem(e);return t?JSON.parse(t):[]}catch(e){return[]}},l=(e,t,n,r,i,a)=>{try{let l=o(e),s=t.split("?")[0],d=l.filter(e=>e.url.split("?")[0]!==s);d.unshift({url:t,s3Key:a,type:n,fileName:r,fileSize:i,timestamp:Date.now()}),d.length>50&&(d.length=50),localStorage.setItem(e,JSON.stringify(d))}catch(e){}},s=(e,t)=>{try{let n=o(e),r=t.split("?")[0];localStorage.setItem(e,JSON.stringify(n.filter(e=>e.url.split("?")[0]!==r)))}catch(e){}},d=e=>{try{localStorage.removeItem(e)}catch(e){}},u=e=>
1{try{let t=o(i);if(0===t.length)return;let n=o(e),r=[...t,...n].slice(0,50);localStorage.setItem(e,JSON.stringify(r)),localStorage.removeItem(i)}catch(e){}}},75345:function(e,t,n){n.d(t,{Q:function(){return g}});var r=n(57437);n(2265);var i=n(35791),a=n(78693),o=n(59832),l=n(19643),s=n(5002),d=n(76631),u=n(31691),c=e=>(0,r.jsx)("svg",{width:"24",height:"25",viewBox:"0 0 24 25",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:(0,r.jsx)("path",{d:"M19.281 18.7198C19.3507 18.7895 19.406 18.8722 19.4437 18.9632C19.4814 19.0543 19.5008 19.1519 19.5008 19.2504C19.5008 19.349 19.4814 19.4465 19.4437 19.5376C19.406 19.6286 19.3507 19.7114 19.281 19.781C19.2114 19.8507 19.1286 19.906 19.0376 19.9437C18.9465 19.9814 18.849 20.0008 18.7504 20.0008C18.6519 20.0008 18.5543 19.9814 18.4632 19.9437C18.3722 19.906 18.2895 19.8507 18.2198 19.781L12.0004 13.5607L5.78104 19.781C5.64031 19.9218 5.44944 20.0008 5.25042 20.0008C5.05139 20.0008 4.86052 19.9218 4.71979 19.781C4.57906 19.6403 4.5 19.4494 4.5 19.2504C4.5 19.0514 4.57906 18.8605 4.71979 18.7198L10.9401 12.5004L4.71979 6.28104C4.57906 6.14031 4.5 5.94944 4.5 5.75042C4.5 5.55139 4.57906 5.36052 4.71979 5.21979C4.86052 5.07906 5.05139 5 5.25042 5C5.44944 5 5.64031 5.07906 5.78104 5.21979L12.0004 11.4401L18.2198 5.21979C18.3605 5.07906 18.5514 5 18.7504 5C18.9494 5 19.1403 5.07906 19.281 5.21979C19.4218 5.36052 19.5008 5.55139 19.5008 5.75042C19.5008 5.94944 19.4218 6.14031 19.281 6.28104L13.0607 12.5004L19.281 18.7198Z",fill:"#AAAAAA"})}),h=n(70311);let g=e=>{var t;let{open:n,title:g="Are you sure?",message:m,subtitle:f,confirmText:p="Confirm",cancelText:v="Cancel",onClose:x,onConfirm:b,loader:y,tone:w="default",context:k="default"}=e,S=(0,u.Z)(),E="gift-registry"===k,C="danger"===w?"#FF3A3A":(null===(t=S.palette.gradient)||void 0===t?void 0:t.main)||S.palette.primary.main;return(0,r.jsx)(i.Z,{maxWidth:"xs",fullWidth:!0,open:n,onClose:y?void 0:x,PaperProps:{sx:{borderRadius:E?"32px":"20px",boxShadow:E?"-2px 2px 4px rgba(0,0,0,0.25)":"0 24px 80px rgba(8, 8, 8, 0.18)",mx:2,overflow:"visible",backgroundColor:"#FFFFFF",maxWidth:E?"960px":void 0,width:E?"100%":void 0}},children:(0,r.jsxs)(a.Z,{sx:{position:"relative",px:{xs:3,sm:4},py:E?{xs:4,sm:5}:{xs:3,sm:4}},children:[(0,r.jsx)(o.Z,{"aria-label":"close",disabled:y,onClick:x,sx:{position:"absolute",right:E?28:16,top:E?20:16,width:E?62:32,height:E?62:32,color:E?"#A0A0A0":"#6F7780",backgroundColor:E?"#F2F2F2":"#F7F8F8","&:hover":{backgroundColor:E?"#ECECEC":"#EEF2F2"}},children:(0,r.jsx)(c,{})}),(0,r.jsxs)(l.Z,{spacing:E?3.25:2.25,alignItems:"center",children:[(0,r.jsx)(a.Z,{sx:{width:E?112:56,height:E?112:56,borderRadius:E?"30px":"16px",display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:"danger"===w?"rgba(255, 58, 58, 0.08)":"rgba(28, 75, 90, 0.08)",color:"danger"===w?"#FF3A3A":"#1C4B5A",fontFamily:"Plus Jakarta Sans, sans-serif",fontSize:E?"58px":"24px",fontWeight:700,lineHeight:1},children:"danger"===w?"!":"?"}),(0,r.jsx)(s.Z,{align:"center",sx:{color:"danger"===w?"#080808":"#1C4B5A",fontFamily:"Plus Jakarta Sans, sans-serif",fontSize:E?{xs:"44px",sm:"56px"}:{xs:"24px",sm:"28px"},fontWeight:700,lineHeight:E?1.1:1.2,maxWidth:E?760:360,pr:E?0:3},children:g}),m?(0,r.jsx)(s.Z,{align:"center",sx:{color:"#50616B",fontFamily:"Plus Jakarta Sans, sans-serif",fontSize:E?{xs:"28px",sm:"42px"}:"14px",fontWeight:500,lineHeight:E?1.15:1.6,maxWidth:E?880:380},children:m}):null,f?(0,r.jsx)(s.Z,{align:"center",sx:{color:"#50616B",fontFamily:"Plus Jakarta Sans, sans-serif",fontSize:E?{xs:"22px",sm:"28px"}:"14px",fontWeight:500,lineHeight:1.6,maxWidth:E?880:380},children:f}):null,(0,r.jsxs)(l.Z,{direction:{xs:"column",sm:"row"},spacing:E?2:1.5,sx:{width:"100%",pt:E?1.5:1},children:[(0,r.jsx)(d.Z,{variant:"outlined",disabled:y,sx:{flex:1,minHeight:E?104:52,borderRadius:E?"30px":"14px",borderColor:"rgba(28, 75, 90, 0.22)",backgroundColor:"#FFFFFF",color:"#1C4B5A",fontFamily:"Plus Jakarta Sans, sans-serif",fontSize:E?{xs:"36px",sm:"44px"}:"16px",fontWeight:700,textTransform:"none",boxShadow:"none","&:hover":{borderColor:"rgba(28, 75, 90, 0.38)",backgroundColor:"#F7FAFA",boxShadow:"none"}},type:"button",onClick:x,children:v}),(0,r.jsx)(d.Z,{variant:"contained",disabled:y,startIcon:y?(0,r.jsx)(h.Z,{}
1):null,sx:{flex:1,minHeight:E?104:52,borderRadius:E?"30px":"14px",background:C,boxShadow:E?"0 8px 16px rgba(28, 75, 90, 0.24)":"danger"===w?"0 12px 24px rgba(255, 58, 58, 0.2)":"0 12px 24px rgba(28, 75, 90, 0.16)",color:"#FFFFFF",fontFamily:"Plus Jakarta Sans, sans-serif",fontSize:E?{xs:"36px",sm:"44px"}:"16px",fontWeight:700,textTransform:"none","&:hover":{background:C,boxShadow:E?"0 12px 20px rgba(28, 75, 90, 0.28)":"danger"===w?"0 16px 28px rgba(255, 58, 58, 0.24)":"0 16px 28px rgba(28, 75, 90, 0.2)"},"&.Mui-disabled":{background:"danger"===w?"rgba(255, 58, 58, 0.4)":"rgba(28, 75, 90, 0.4)",color:"#FFFFFF"}},type:"button",onClick:b,children:p})]})]})]})})}},57061:function(e,t,n){var r=n(57437),i=n(78693),a=n(5002),o=n(76631);t.Z=e=>{let{message:t,heading:n="We couldn't load this invitation"}=e;return(0,r.jsxs)(i.Z,{role:"alert","aria-live":"assertive",sx:{height:"100vh",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:2,px:3,textAlign:"center"},children:[(0,r.jsx)(a.Z,{variant:"h6",sx:{fontWeight:600},children:n}),(0,r.jsx)(a.Z,{variant:"body2",sx:{color:"text.secondary",maxWidth:420},children:t}),(0,r.jsxs)(i.Z,{sx:{display:"flex",gap:1.5,flexWrap:"wrap",justifyContent:"center"},children:[(0,r.jsx)(o.Z,{variant:"contained",onClick:()=>window.location.reload(),children:"Try again"}),(0,r.jsx)(o.Z,{variant:"outlined",onClick:()=>window.location.assign("/nvite-management/nvite"),children:"Go to my invitations"})]})]})}},39438:function(e,t,n){n.d(t,{Z:function(){return h}});var r=n(57437),i=n(2265),a=n(35791),o=n(77468),l=n(5002),s=n(85860),d=n(11953),u=n(9026),c=n(76631);function h(e){let{open:t,onClose:n,onAgree:h}=e,[g,m]=(0,i.useState)(!1),f=()=>{m(!1),n()};return(0,r.jsxs)(a.Z,{open:t,onClose:f,maxWidth:"sm",fullWidth:!0,PaperProps:{sx:{bgcolor:"white",color:"#111827",borderRadius:3,p:3,boxShadow:"0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04)"}},children:[(0,r.jsxs)(o.Z,{sx:{pb:2},children:[(0,r.jsx)(l.Z,{variant:"h6",component:"h2",sx:{mb:3,fontWeight:600,fontSize:"1.25rem",color:"#111827"},children:"Creating content from images and files"}),(0,r.jsx)(l.Z,{variant:"body1",sx:{color:"#4B5563",fontSize:"1rem",lineHeight:1.6},children:"Make sure you have the necessary rights to any images or files you upload. Don't generate content that infringes on others' rights, including content that deceives, harasses, or harms. When using this feature, you must comply with our Prohibited Use Policy."}),(0,r.jsx)(s.Z,{control:(0,r.jsx)(d.Z,{checked:g,onChange:e=>m(e.target.checked),sx:{color:"#9CA3AF","&.Mui-checked":{color:"#7C3AED"}}}),label:"Don't show this again",sx:{mt:2,"& .MuiFormControlLabel-label":{color:"#6B7280",fontSize:"0.875rem"}}})]}),(0,r.jsxs)(u.Z,{sx:{px:4,pb:4,pt:2,gap:1},children:[(0,r.jsx)(c.Z,{onClick:f,sx:{color:"#6B7280",textTransform:"none",fontWeight:500,fontSize:"1rem",px:2,"&:hover":{bgcolor:"#F3F4F6"}},children:"Cancel"}),(0,r.jsx)(c.Z,{onClick:()=>{h(g),m(!1)},variant:"contained",sx:{bgcolor:"#7C3AED",color:"white",textTransform:"none",fontWeight:600,fontSize:"1rem",px:5,py:3,boxShadow:"none","&:hover":{bgcolor:"#6D28D9",boxShadow:"none"}},children:"Agree"})]})]})}},52869:function(e,t,n){n.d(t,{R:function(){return i},w:function(){return r}});let r=75,i=300},33623:function(e,t,n){n.d(t,{AV:function(){return f},Fn:function(){return v},QP:function(){return d},Qy:function(){return p},W2:function(){return h},dk:function(){return c},ei:function(){return l},k:function(){return o},qi:function(){return g},tC:function(){return m},tg:function(){return u},uX:function(){return a},xH:function(){return s}});var r=n(82631),i=n(76817);"https://airawath.com/resources/blog/".replace(/\/+$/,"");let a="Hey! I'm Elie, your gifting assistant. Who are you shopping for today? Tell me a little about them and I'll help you find something perfect.",o="elie_event_gift_seed_v1",l="I understand Airawath is in beta and that AI technologies are used to analyze my preferences and provide personalized recommendations. Features, data, and availability may change. I agree to use the platform at my own risk during this period.",s=[{href:"/templates",text:"E-Invitations",active:!1},{href:r.b,text:"Talk to Elie",active:!1},{href:"/blog",text:"Blogs",active:!1},{href:"/features",text:"Features",active:!1},{href:"/about",text:"About",active:!1},{href:"/downloads",text:"Download",active:!1},{href:"/login",text:"Sign In",active:!1,isCta:!0}],d=(e,t)=>t?e.map(e=>e.isCta?{...e,href:i.s,text:"My Account"}:e):e,u=[{href:"#about",text:"About"},{href:"#services",text:"Services"},{href:"#",text:"Forum"},{href:"/blog",text:"Blog"}],c=[{name:"Privacy Policy",path:"/privacy-policy"},{name:"Terms of Service",path:"/terms-of-service"},{name:"Delete Account",path:"/delete-account"}],h=[{label:"Birthdays",value:"Birthdays"},{label:"Thanksgiving Dinner",value:"Thanksgiving Dinner"},{label:"Christmas Eve",value:"Christmas Eve"},{label:"New Year Eve",value:"New Year Eve"},{label:"Halloween",value:"Halloween"},{label:"Baby Shower",value:"Baby Shower"},{label:"Housewarming",value:"Housewarming"},{label:"Super Bowl Party",value:"Super Bowl Party"},{label:"Easter",value:"Easter"},{label:"Fourth of July",value:"Fourth of July"},{label:"Other",value:"Other"}],g=[{label:"Birthday",value:"birthday",color:"#8CB4C0"},{label:"Anniversary",value:"anniversary",color:"#6799BA"},{label:"Appointment",value:"appointment",color:"#C884E4"},{label:"Party",value:"party",color:"#A6F1C6"},{label:"Holiday",value:"holiday",color:"#F3B0A9"},{label:"Event",value:"event",color:"#D6AE8A"},{label:"Other",value:"other",color:"#BBB5BB"}],m=[{label:"Family",value:"family",color:"#1C4B5A"},{label:"Friends",value:"friends",color:"#6799BA"},{label:"Work",value:"work",color:"#9B59B6"},{label:"Individual",value:"individual",color:"#2ECC71"},{label:"Team",value:"team",color:"#F1C40F"},{label:"Clients",value:"clients",color:"#F1C40F"},{label:"Health",value:"health",color:"#E67E22"},{label:"Business Partners",value:"business partners",color:"#E84393"},{label:"Neighbors",value:"neighbors",color:"#E0564E"},{label:"Social",value:"social",color:"#00CEC9"},{label:"Other",value:"other",color:"#BBB5BB"}],f=[{label:"Daily",value:"daily"},{label:"Weekly",value:"weekly"},{label:"Monthly",value:"monthly"},{label:"Yearly",value:"yearly"},{label:"No-repeat",value:"no-repeat"}],p=[{label:"10 minutes",value:"10 minutes"},{label:"1 hour",value:"1 hour"},{label:"1 day before",value:"1 day before"}],v={"Cultural Celebrations":["Eid"],"Indian Celebrations":["Dhoti Ceremony","Half Saree Ceremony","Sathyanarayan Vratham"],"Teen Birthday":["13th Birthday","16th Birthday"],"Baby Celebrations":["Seemantham Ceremony","Baby Shower","Gender Reveal"],"Kids’ Birthday":["First Birthday","Children's Birthday"],"Milestone Birthdays":["18th Birthday","21st Birthday","Adult Birthday"],Graduation:["College Graduation","Kids Graduation"],Housewarming:["Housewarming Party","Indian Griha Pravesh"],"Parties & Get-Togethers":["Brunch & Tea Party","Potluck Party"]}},76817:function(e,t,n){n.d(t,{s:function(){return r}});let r="/nvite-management/nvite"},44644:function(e,t){t.Z={src:"/_next/static/media/Branding.f11f4966.png",height:128,width:1024,blurDataURL:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAABCAYAAADjAO9DAAAAK0lEQVR4nGPsXbBU8QsLC5fm65csVm+eM8o8/cKv8uT5798c7O///v//DQD94hHizMMFQgAAAABJRU5ErkJggg==",blurWidth:8,blurHeight:1}},51206:function(e,t){t.Z={src:"/_next/static/media/Text.a4ec1604.png",height:400,width:400,blurDataURL:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAkUlEQVR42mMAgWMr/jIyoIG98z9DxE6t/g9mbJ7yUnfP3E9Ou+d8dALSOgxAsG/+F0aGK1v/M0EVrN056/0TIH66c+b7FQxAsGXKK7Acw5qeRywMQLC293Hqtulv0hiAYP+Cr0AxKDi0+Acz2JTJLzfumv1hEwMQABUyM6CDrdNeewDt92AgG2yZ+ooZ6AsUowEZ2UHcqfXg9gAAAABJRU5ErkJggg==",blurWidth:8,blurHeight:8}},41982:function(e,t){t.Z={src:"/_next/static/media/image.805ba282.png",height:400,width:400,blurDataURL:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAt0lEQVR42mMAgQdffjEyoIGzr35CxO59+QZm3Pz8Uf7ul69uF7/+dzv9/J08RNEXRoYnn/4zgThPPv8/8fjr///vn5/7f//hreMgsR83ljMxwMC2z3svrP289f/V+7v/n7p36jwDHFxiAFuhcofhIstVhv8M5/T/K523vMgAAgcZmBhMzrpAHHPEzJTxlG6m1DmGTIazDKYgoYALvhA5pVOWjAxowOtCAJrYORZmhnOMLCAMYsOEAceXTlf3VcGpAAAAAElFTkSuQmCC",blurWidth:8,blurHeight:8}},78655:function(e,t){t.Z={src:"/_next/static/media/layers.44ca54e0.png",height:400,width:400,blurDataURL:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAmElEQVR42mOAgfX3/7LA2K3nwGxMcOH1X9n7n35LMmADh17979r//N/v5ff+/+i69r+OgYGB4dyHv4wMYFB4kjVj35fn5af//Y/Y8+O/0ZLHN1B0uzEwMDIUbdjFUL/3P0PBiv8MflVrGEBgyl1GBp6YTrAxjQwMLDIeqVFi1kEhZQwMjAykg8R+RoboNhYG/1IWBotQuAkADcE4McB7Z5kAAAAASUVORK5CYII=",blurWidth:8,blurHeight:8}},17946:function(e,t){t.Z={src:"/_next/static/media/paint.3907545c.png",height:400,width:400,blurDataURL:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAr0lEQVR42mOAgXcMDIww9t3b+5kZsIF/P09p/39/XArEXnFxD0TDhyXzwKo/7dxU/fvs3P9PHm38f+/h+QSQ2J0Hx5kZ
1/kON/nZi98M/x1b/f3zz4PcTl64tBonl737ExPDzzgmwCW+v7K/4/vDk/583tj/5cXGlGkjs181tTChueHZpm8m724fcn1/ZzwXiv7y6j5EBBv7fPA/mwMC7i5tBfFTw+upu5vc39qJ4EQAp11Ntc9ZIcgAAAABJRU5ErkJggg==",blurWidth:8,blurHeight:8}},63043:function(e,t){t.Z={src:"/_next/static/media/stickers.de542267.png",height:400,width:400,blurDataURL:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAm0lEQVR42mMAgf+bTzAxoIF/m08wghn/t5wEM/5vP8P//9hdnv+HbvL923aaFy4HZcj+23T85c91hx8C8TMg+/6/LSeF4cb933HW4t+ag/9fL9r2/w0Q/1976P+/nec0wJL/oPb/33pq3jegom9rD/4HsifA5f5DHQNWtO10AhBHwh26CSr3Z9Nxxv87zsEVAh0MZWN6jQWEkcUAO3dirLu5Qp4AAAAASUVORK5CYII=",blurWidth:8,blurHeight:8}},96820:function(e,t){t.Z={src:"/_next/static/media/templates.360aebef.png",height:400,width:400,blurDataURL:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAwklEQVR42mMAgZAJh5kY0IB3wy5GMCOo/whYMqBxj6B726F8357jlW7V26VBYi51eyCKKvc+FEpacPmSf9Ou/0Etu/5bV+1OAYm7NexhBStYfOocj9nkSwcWL5r9a+2Cif8Zyk+XgMQdK3ewMPh0HASrsqzb6xvYsPN/UN32/6FTTq1hAAG/pcwM9uU7wPZ4lG8V8us73u3Udqjaq3qnDEjMtWEPxPG+jbsZMXyBLubetJfRsWoni3PNLhbf9oNwbwMAufJHkFmduX4AAAAASUVORK5CYII=",blurWidth:8,blurHeight:8}}}]);

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.