@trycourier/react-designer 0.0.0-canary-20250605142011 → 0.0.0-canary-20250626144519

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (64) hide show
  1. package/dist/channels.d.ts +7 -0
  2. package/dist/cjs/index.css +1 -1
  3. package/dist/cjs/index.css.map +2 -2
  4. package/dist/cjs/index.js +43 -43
  5. package/dist/cjs/index.js.map +4 -4
  6. package/dist/cjs/styles.css +35 -18
  7. package/dist/components/TemplateEditor/Channels/Email/Email.d.ts +48 -0
  8. package/dist/components/TemplateEditor/Channels/Email/EmailLayout.d.ts +9 -0
  9. package/dist/components/TemplateEditor/Channels/Email/SideBar/SideBar.d.ts +3 -3
  10. package/dist/components/TemplateEditor/Channels/Email/SideBar/SideBarItemDetails/SideBarItemDetails.d.ts +1 -2
  11. package/dist/components/TemplateEditor/Channels/Email/SideBar/index.d.ts +1 -0
  12. package/dist/components/TemplateEditor/Channels/Email/index.d.ts +1 -0
  13. package/dist/components/TemplateEditor/Channels/Inbox/Inbox.d.ts +22 -0
  14. package/dist/components/TemplateEditor/Channels/Inbox/InboxEditor.d.ts +4 -0
  15. package/dist/components/TemplateEditor/Channels/Inbox/InboxLayout.d.ts +4 -0
  16. package/dist/components/TemplateEditor/Channels/Inbox/index.d.ts +2 -0
  17. package/dist/components/TemplateEditor/Channels/Push/Push.d.ts +22 -0
  18. package/dist/components/TemplateEditor/Channels/Push/PushEditor.d.ts +6 -0
  19. package/dist/components/TemplateEditor/Channels/Push/PushLayout.d.ts +4 -0
  20. package/dist/components/TemplateEditor/Channels/Push/index.d.ts +2 -0
  21. package/dist/components/TemplateEditor/Channels/SMS/SMS.d.ts +22 -0
  22. package/dist/components/TemplateEditor/Channels/SMS/SMSEditor.d.ts +5 -0
  23. package/dist/components/TemplateEditor/Channels/SMS/SMSLayout.d.ts +4 -0
  24. package/dist/components/TemplateEditor/Channels/SMS/index.d.ts +2 -0
  25. package/dist/components/TemplateEditor/Channels/index.d.ts +1 -0
  26. package/dist/components/TemplateEditor/Channels/useChannels.d.ts +13 -0
  27. package/dist/components/TemplateEditor/Layout/Layout.d.ts +7 -0
  28. package/dist/components/TemplateEditor/Layout/index.d.ts +1 -0
  29. package/dist/components/TemplateEditor/index.d.ts +16 -0
  30. package/dist/components/extensions/Blockquote/Blockquote.test.d.ts +1 -0
  31. package/dist/components/extensions/Blockquote/Blockquote.types.d.ts +2 -2
  32. package/dist/components/extensions/Button/Button.test.d.ts +1 -0
  33. package/dist/components/extensions/Button/Button.types.d.ts +6 -6
  34. package/dist/components/extensions/ButtonRow/ButtonRow.d.ts +11 -0
  35. package/dist/components/extensions/ButtonRow/ButtonRow.test.d.ts +1 -0
  36. package/dist/components/extensions/ButtonRow/ButtonRow.types.d.ts +45 -0
  37. package/dist/components/extensions/ButtonRow/ButtonRowComponent.d.ts +5 -0
  38. package/dist/components/extensions/ButtonRow/index.d.ts +4 -0
  39. package/dist/components/extensions/Divider/Divider.test.d.ts +1 -0
  40. package/dist/components/extensions/DragPlaceholder/DragPlaceholder.test.d.ts +1 -0
  41. package/dist/components/extensions/FileHandler/FileHandler.test.d.ts +1 -0
  42. package/dist/components/extensions/Heading/Heading.test.d.ts +1 -0
  43. package/dist/components/extensions/Image/Image.test.d.ts +1 -0
  44. package/dist/components/extensions/ImageBlock/ImageBlock.test.d.ts +1 -0
  45. package/dist/components/extensions/Link/Link.test.d.ts +1 -0
  46. package/dist/components/extensions/Paragraph/Paragraph.test.d.ts +1 -0
  47. package/dist/components/extensions/Selection/Selection.test.d.ts +1 -0
  48. package/dist/components/extensions/TextBlock/TextBlock.test.d.ts +1 -0
  49. package/dist/components/extensions/TextBlock/TextBlock.types.d.ts +4 -4
  50. package/dist/components/extensions/UniqueId/UniqueId.test.d.ts +1 -0
  51. package/dist/components/extensions/Variable/Variable.test.d.ts +1 -0
  52. package/dist/components/extensions/index.d.ts +1 -0
  53. package/dist/components/ui-kit/Icon/InAppIcon.d.ts +3 -0
  54. package/dist/components/ui-kit/Icon/PushIcon.d.ts +3 -0
  55. package/dist/components/ui-kit/Icon/SMSIcon.d.ts +3 -0
  56. package/dist/components/ui-kit/Icon/index.d.ts +3 -0
  57. package/dist/esm/index.css +1 -1
  58. package/dist/esm/index.css.map +2 -2
  59. package/dist/esm/index.js +43 -43
  60. package/dist/esm/index.js.map +4 -4
  61. package/dist/esm/styles.css +35 -18
  62. package/dist/store.d.ts +4 -8
  63. package/dist/styles.css +35 -18
  64. package/package.json +2 -2
package/dist/esm/index.js CHANGED
@@ -43,7 +43,7 @@ if (typeof require !== "undefined") {
43
43
  console.warn('Unable to setup tippy imports polyfill');
44
44
  }
45
45
  }
46
- var mp=Object.defineProperty;var s=(e,t)=>mp(e,"name",{value:t,configurable:!0});import{useCallback as fp,useEffect as gp,useRef as jn,useState as hp}from"react";function Gn({onSave:e,debounceMs:t=200,enabled:r=!0,onError:o,initialContent:n}){let[i,a]=hp(!1),c=jn(null),l=jn(),u=jn(0),d=jn();gp(()=>{n&&(l.current=JSON.stringify(n))},[n]);let p=fp(async m=>{if(!r)return;c.current=m,d.current&&(clearTimeout(d.current),d.current=void 0);let h=s(async()=>{let k=c.current;if(c.current=null,!!k){try{let R=JSON.stringify(k);if(R===l.current)return;a(!0),l.current=R,u.current=Date.now(),await e(k)}catch(R){o==null||o(R),a(!1);return}a(!1),c.current&&p(c.current)}},"processPendingContent");if(i)return;let g=Date.now()-u.current,v=Math.max(0,t-g);d.current=setTimeout(()=>{d.current=void 0,h()},v)},[t,r,i,o,e]);return{handleAutoSave:p,isSaving:i}}s(Gn,"useAutoSave");import{useAtom as ta,useAtomValue as Zn,useSetAtom as ub}from"jotai";import{memo as db,useEffect as To,useMemo as pb,useRef as mb}from"react";import{toast as fb}from"sonner";import{atom as sc}from"jotai";var Xr=[{label:"Email",value:"email"},{label:"SMS",value:"sms"},{label:"Push",value:"push"},{label:"In-app notification",value:"inbox"}],Kn=sc("email"),Mo=sc("template");import{useAtom as Ad,useAtomValue as Bs,useSetAtom as Rh}from"jotai";import{forwardRef as Bh,memo as Hh,useEffect as Xo,useMemo as Dh,useRef as Sd}from"react";import{toast as Vh}from"sonner";import{Provider as yp,useAtom as Qr,useAtomValue as an}from"jotai";import{useEffect as xp,memo as Cp}from"react";import{atom as lc}from"jotai";import{toast as Dr}from"sonner";import{atom as ar,createStore as bp}from"jotai";var Jn=bp(),et=ar("https://api.courier.com/client/q"),tt=ar(""),Ee=ar(""),kr=ar(""),ke=ar(null),be=ar(null),rt=ar(null),Rt=ar(null),le=ar(null),cc=ar(!0);var uc=lc(null,async(e,t,r)=>{var a;let o=e(et),n=e(tt),i=e(Ee);if(!o){t(le,"Missing API URL"),Dr.error("Missing API URL");return}t(rt,!0),t(le,null);try{let l=await(await fetch(o,{method:"POST",headers:{Authorization:`Bearer ${n}`,"x-courier-client-key":`Bearer ${n}`,"Content-Type":"application/json"},body:JSON.stringify({query:`
46
+ var jp=Object.defineProperty;var a=(e,t)=>jp(e,"name",{value:t,configurable:!0});import{Provider as Jp,useAtom as Yr,useAtomValue as ln}from"jotai";import{useEffect as Xp,memo as Yp}from"react";import{atom as Il}from"jotai";import{toast as Dr}from"sonner";import{atom as or,createStore as Gp}from"jotai";var Xn=Gp(),Ye=or("https://api.courier.com/client/q"),Qe=or(""),Le=or(""),Tr=or(""),Ce=or(null),pe=or(null),et=or(null),Et=or(null),de=or(null),Ll=or(!0);var El=Il(null,async(e,t,r)=>{var l;let o=e(Ye),n=e(Qe),i=e(Le);if(!o){t(de,"Missing API URL"),Dr.error("Missing API URL");return}t(et,!0),t(de,null);try{let c=await(await fetch(o,{method:"POST",headers:{Authorization:`Bearer ${n}`,"x-courier-client-key":`Bearer ${n}`,"Content-Type":"application/json"},body:JSON.stringify({query:`
47
47
  mutation SaveTenantBrand($input: SaveBrandSettingsInput!) {
48
48
  tenant {
49
49
  brand {
@@ -53,8 +53,8 @@ var mp=Object.defineProperty;var s=(e,t)=>mp(e,"name",{value:t,configurable:!0})
53
53
  }
54
54
  }
55
55
  }
56
- `,variables:{input:{tenantId:i,settings:r}}})})).json();return l.data||(l.errors?Dr.error((a=l.errors)==null?void 0:a.map(u=>u.message).join(`
57
- `)):Dr.error("Error saving brand settings")),l}catch(c){throw Dr.error("Error saving brand settings"),t(le,c instanceof Error?c.message:"Unknown error"),c}finally{t(rt,!1)}}),dc=lc(null,async(e,t)=>{let r=e(et),o=e(tt),n=e(Ee);if(!r){t(le,"Missing API URL"),Dr.error("Missing API URL");return}t(Rt,!0),t(le,null);try{let i=await fetch(r,{method:"POST",headers:{Authorization:`Bearer ${o}`,"x-courier-client-key":`Bearer ${o}`,"Content-Type":"application/json"},body:JSON.stringify({query:`
56
+ `,variables:{input:{tenantId:i,settings:r}}})})).json();return c.data||(c.errors?Dr.error((l=c.errors)==null?void 0:l.map(u=>u.message).join(`
57
+ `)):Dr.error("Error saving brand settings")),c}catch(s){throw Dr.error("Error saving brand settings"),t(de,s instanceof Error?s.message:"Unknown error"),s}finally{t(et,!1)}}),Al=Il(null,async(e,t)=>{let r=e(Ye),o=e(Qe),n=e(Le);if(!r){t(de,"Missing API URL"),Dr.error("Missing API URL");return}t(Et,!0),t(de,null);try{let i=await fetch(r,{method:"POST",headers:{Authorization:`Bearer ${o}`,"x-courier-client-key":`Bearer ${o}`,"Content-Type":"application/json"},body:JSON.stringify({query:`
58
58
  mutation PublishNotification($input: PublishBrandInput!) {
59
59
  tenant {
60
60
  brand {
@@ -64,7 +64,7 @@ var mp=Object.defineProperty;var s=(e,t)=>mp(e,"name",{value:t,configurable:!0})
64
64
  }
65
65
  }
66
66
  }
67
- `,variables:{input:{tenantId:n}}})}),a=await i.json();return i.status===200?Dr.success("Brand published"):Dr.error("Error publishing brand"),a}catch(i){throw Dr.error("Error publishing brand"),t(le,i instanceof Error?i.message:"Unknown error"),i}finally{t(Rt,!1)}});import{atom as vp}from"jotai";import{toast as nn}from"sonner";var Xn=vp(null,async(e,t,r)=>{var l,u,d;let o=e(et),n=e(tt),i=e(Ee),a=e(kr),c=(l=r==null?void 0:r.includeBrand)!=null?l:!0;if(!o||!n||!i){t(le,"Missing configuration"),nn.error("Missing configuration: "+JSON.stringify({apiUrl:o,token:n,tenantId:i}));return}t(be,!0),t(le,null);try{let p=await fetch(o,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${n}`,"x-courier-client-key":`Bearer ${n}`},body:JSON.stringify({query:`
67
+ `,variables:{input:{tenantId:n}}})}),l=await i.json();return i.status===200?Dr.success("Brand published"):Dr.error("Error publishing brand"),l}catch(i){throw Dr.error("Error publishing brand"),t(de,i instanceof Error?i.message:"Unknown error"),i}finally{t(Et,!1)}});import{atom as Kp}from"jotai";import{toast as sn}from"sonner";var Yn=Kp(null,async(e,t,r)=>{var c,u,d;let o=e(Ye),n=e(Qe),i=e(Le),l=e(Tr),s=(c=r==null?void 0:r.includeBrand)!=null?c:!0;if(!o||!n||!i){t(de,"Missing configuration"),sn.error("Missing configuration: "+JSON.stringify({apiUrl:o,token:n,tenantId:i}));return}t(pe,!0),t(de,null);try{let p=await fetch(o,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${n}`,"x-courier-client-key":`Bearer ${n}`},body:JSON.stringify({query:`
68
68
  query GetTenant($tenantId: String!, $input: GetNotificationInput!, $brandInput: GetTenantBrandInput!, $includeBrand: Boolean!) {
69
69
  tenant(tenantId: $tenantId) {
70
70
  tenantId
@@ -121,8 +121,8 @@ var mp=Object.defineProperty;var s=(e,t)=>mp(e,"name",{value:t,configurable:!0})
121
121
  }
122
122
  }
123
123
  }
124
- `,variables:{tenantId:i,input:{notificationId:a,version:"latest"},brandInput:{version:"latest"},includeBrand:c}})}),m=await p.json(),h=p.status;(u=m.data)!=null&&u.tenant?t(ke,m):m.errors?(nn.error((d=m.errors)==null?void 0:d.map(b=>b.message).join(`
125
- `)),t(le,"Error fetching template")):h===401?(nn.error("Unauthorized"),t(le,"Unauthorized")):(nn.error("Error fetching template"),t(le,"Error fetching template"))}catch(p){nn.error("Error fetching template"),t(le,p instanceof Error?p.message:"Unknown error")}finally{t(be,!1)}});import{atom as pc}from"jotai";import{toast as Vr}from"sonner";import{atom as Yn}from"jotai";var Yr=Yn(null),Ae=Yn(null),Qn=Yn(null),Bt=Yn(null);var mc=pc(null,async(e,t,r)=>{var u;let o=e(et),n=e(tt),i=e(Ee),a=e(kr),c=e(Ae);if(!c)return;if(!o){t(le,"Missing API URL"),Vr.error("Missing API URL");return}t(rt,!0),t(le,null);let l={content:c,routing:r};try{let p=await(await fetch(o,{method:"POST",headers:{Authorization:`Bearer ${n}`,"x-courier-client-key":`Bearer ${n}`,"Content-Type":"application/json"},body:JSON.stringify({query:`
124
+ `,variables:{tenantId:i,input:{notificationId:l,version:"latest"},brandInput:{version:"latest"},includeBrand:s}})}),g=await p.json(),b=p.status;(u=g.data)!=null&&u.tenant?t(Ce,g):g.errors?(sn.error((d=g.errors)==null?void 0:d.map(v=>v.message).join(`
125
+ `)),t(de,"Error fetching template")):b===401?(sn.error("Unauthorized"),t(de,"Unauthorized")):(sn.error("Error fetching template"),t(de,"Error fetching template"))}catch(p){sn.error("Error fetching template"),t(de,p instanceof Error?p.message:"Unknown error")}finally{t(pe,!1)}});import{atom as Sl}from"jotai";import{toast as Vr}from"sonner";import{atom as Qn}from"jotai";var Xr=Qn(null),ke=Qn(null),ei=Qn(null),At=Qn(null);var Rl=Sl(null,async(e,t,r)=>{var u;let o=e(Ye),n=e(Qe),i=e(Le),l=e(Tr),s=e(ke);if(!s)return;if(!o){t(de,"Missing API URL"),Vr.error("Missing API URL");return}t(et,!0),t(de,null);let c={content:s,routing:r};try{let p=await(await fetch(o,{method:"POST",headers:{Authorization:`Bearer ${n}`,"x-courier-client-key":`Bearer ${n}`,"Content-Type":"application/json"},body:JSON.stringify({query:`
126
126
  mutation SaveNotification($input: SaveNotificationInput!) {
127
127
  tenant {
128
128
  notification {
@@ -132,8 +132,8 @@ var mp=Object.defineProperty;var s=(e,t)=>mp(e,"name",{value:t,configurable:!0})
132
132
  }
133
133
  }
134
134
  }
135
- `,variables:{input:{tenantId:i,notificationId:a,name:a,data:l}}})})).json();return p.data||(p.errors?Vr.error((u=p.errors)==null?void 0:u.map(m=>m.message).join(`
136
- `)):Vr.error("Error saving template")),p}catch(d){throw Vr.error("Error saving template!"),t(le,d instanceof Error?d.message:"Unknown error"),d}finally{t(rt,!1)}}),fc=pc(null,async(e,t)=>{var l,u,d;let r=e(et),o=e(tt),n=e(Ee),i=e(kr),a=e(ke),c=(d=(u=(l=a==null?void 0:a.data)==null?void 0:l.tenant)==null?void 0:u.notification)==null?void 0:d.version;if(!c){Vr.error("Version not defined");return}if(!r){t(le,"Missing API URL");return}t(Rt,!0),t(le,null);try{let p=await fetch(r,{method:"POST",headers:{Authorization:`Bearer ${o}`,"x-courier-client-key":`Bearer ${o}`,"Content-Type":"application/json"},body:JSON.stringify({query:`
135
+ `,variables:{input:{tenantId:i,notificationId:l,name:l,data:c}}})})).json();return p.data||(p.errors?Vr.error((u=p.errors)==null?void 0:u.map(g=>g.message).join(`
136
+ `)):Vr.error("Error saving template")),p}catch(d){throw Vr.error("Error saving template!"),t(de,d instanceof Error?d.message:"Unknown error"),d}finally{t(et,!1)}}),Bl=Sl(null,async(e,t)=>{var c,u,d;let r=e(Ye),o=e(Qe),n=e(Le),i=e(Tr),l=e(Ce),s=(d=(u=(c=l==null?void 0:l.data)==null?void 0:c.tenant)==null?void 0:u.notification)==null?void 0:d.version;if(!s){Vr.error("Version not defined");return}if(!r){t(de,"Missing API URL");return}t(Et,!0),t(de,null);try{let p=await fetch(r,{method:"POST",headers:{Authorization:`Bearer ${o}`,"x-courier-client-key":`Bearer ${o}`,"Content-Type":"application/json"},body:JSON.stringify({query:`
137
137
  mutation PublishNotification($input: PublishNotificationInput!) {
138
138
  tenant {
139
139
  notification {
@@ -143,30 +143,15 @@ var mp=Object.defineProperty;var s=(e,t)=>mp(e,"name",{value:t,configurable:!0})
143
143
  }
144
144
  }
145
145
  }
146
- `,variables:{input:{tenantId:n,notificationId:i,version:c}}})}),m=await p.json();return p.status===200?Vr.success("Template published"):Vr.error("Error publishing template"),m}catch(p){throw Vr.error("Error publishing template"),t(le,p instanceof Error?p.message:"Unknown error"),p}finally{t(Rt,!1)}});import{Fragment as Pp,jsx as ra}from"react/jsx-runtime";function sn(){let[,e]=Qr(Xn),[,t]=Qr(mc),[,r]=Qr(fc),o=an(be),n=an(rt),i=an(Rt),a=an(le),c=an(ke);return{getTenant:e,saveTemplate:t,publishTemplate:r,isTenantLoading:o,isTenantSaving:n,isTenantPublishing:i,tenantError:a,tenantData:c}}s(sn,"useTemplateActions");var wp=s(({children:e,templateId:t,tenantId:r,token:o,apiUrl:n})=>{let[,i]=Qr(et),[,a]=Qr(tt),[,c]=Qr(Ee),[,l]=Qr(kr);return xp(()=>{a(o),c(r),l(t),n&&i(n)},[o,r,t,n,i,a,c,l]),ra(Pp,{children:e})},"TemplateProviderContext"),Tp=s(e=>ra(yp,{store:Jn,children:ra(wp,{...e})}),"TemplateProviderComponent"),kp=Cp(Tp);import{Provider as Mp,useAtom as No,useAtomValue as cn}from"jotai";import{useEffect as Np,memo as Ip}from"react";import{Fragment as Sp,jsx as oa}from"react/jsx-runtime";function ln(){let[,e]=No(Xn),[,t]=No(uc),[,r]=No(dc),o=cn(be),n=cn(rt),i=cn(Rt),a=cn(le),c=cn(ke);return{getTenant:e,saveBrand:t,publishBrand:r,isTenantLoading:o,isTenantSaving:n,isTenantPublishing:i,tenantError:a,tenantData:c}}s(ln,"useBrandActions");var Lp=s(({children:e,tenantId:t,token:r,apiUrl:o})=>{let[,n]=No(et),[,i]=No(tt),[,a]=No(Ee);return Np(()=>{i(r),a(t),o&&n(o)},[r,t,o,n,i,a]),oa(Sp,{children:e})},"BrandProviderContext"),Ep=s(e=>oa(Mp,{store:Jn,children:oa(Lp,{...e})}),"BrandProviderComponent"),Ap=Ip(Ep);import{Toaster as Mm}from"sonner";import{clsx as Vp}from"clsx";import{twMerge as Fp}from"tailwind-merge";import{v4 as Io}from"uuid";function gc(e){let t=[],r=e.replace(/\n$/,"").split(`
147
- `);for(let o=0;o<r.length;o++)Rp(r[o],t),o<r.length-1&&t.push({type:"hardBreak"});return t}s(gc,"parseMDContent");function Rp(e,t){Bp(e,t)}s(Rp,"parseTextLine");function hc(e,t){t.length!==0&&e.forEach(r=>{r.marks=r.marks||[],t.forEach(o=>{var n,i;(n=r.marks)!=null&&n.some(a=>a.type===o.type)||(i=r.marks)==null||i.push({type:o.type,...o.href&&{attrs:{href:o.href}}})}),r.marks.length===0&&delete r.marks})}s(hc,"applyMarks");function Bp(e,t){if(!e)return;let r=[],o=/\[([^\]]+)\]\(([^)]+)\)/g,n,i=0;for(;(n=o.exec(e))!==null;)n.index>i&&r.push({type:"text",text:e.substring(i,n.index),start:i,end:n.index}),r.push({type:"link",text:n[1],start:n.index,end:n.index+n[1].length,attrs:{href:n[2]}}),i=n.index+n[0].length;i<e.length&&r.push({type:"text",text:e.substring(i),start:i,end:e.length});let a=[];for(let u of r){if(u.type==="link"){a.push(u);continue}let d=0,p=/(\*\*|\*|__|_|~|\+|\{\{[^}]+\}\}|\{\}[^{}]+\{\})/g,m=u.text,h;for(;(h=p.exec(m))!==null;){let b=h.index,g=h[0],v=b+g.length;if(b>d&&a.push({type:"text",text:m.substring(d,b),start:u.start+d,end:u.start+b}),g.startsWith("{{")||g.startsWith("{}")){let k=g.startsWith("{{")?g.slice(2,-2):g.substring(2,g.length-2);a.push({type:"variable",text:g,start:u.start+b,end:u.start+v,attrs:{id:k}})}else a.push({type:"marker",text:g,start:u.start+b,end:u.start+v});d=v}d<m.length&&a.push({type:"text",text:m.substring(d),start:u.start+d,end:u.start+m.length})}a.sort((u,d)=>u.start-d.start);let c=[],l=[];for(let u of a)if(u.type==="text"){let d=[];bc(u.text,[],d),hc(d,c),l.push(...d)}else if(u.type==="variable"){let d={type:"variable",attrs:u.attrs};hc([d],c),l.push(d)}else if(u.type==="link"){let d=[];bc(u.text,[],d),d.forEach(p=>{var m;p.marks=p.marks||[],p.marks.push({type:"link",attrs:{href:(m=u.attrs)==null?void 0:m.href}})}),l.push(...d)}else if(u.type==="marker"){let d=u.text;if(["**","*","__","_","~","+"].includes(d)){let p=d==="**"||d==="__"?"bold":d==="*"||d==="_"?"italic":d==="~"?"strike":"underline",m=c.findLastIndex(h=>h.text===d);m!==-1?c.splice(m,1):c.push({type:p,text:d,start:u.start})}}t.push(...l)}s(Bp,"processMarkdownFormatting");function bc(e,t,r){if(!e)return;let o=/(\{\{[^}]+\}\}\|\{\}[^{}]+\{\})/g,n,i=0;for(;(n=o.exec(e))!==null;){if(n.index>i){let l=e.substring(i,n.index);r.push({type:"text",text:l,...t.length>0&&{marks:t}})}let a=n[0].startsWith("{{")?n[0].slice(2,-2):n[0].substring(2,n[0].length-2),c=t.some(l=>l.type==="link");r.push({type:"variable",attrs:{id:a,...c&&{inUrlContext:!0}},...t.length>0&&{marks:t}}),i=n.index+n[0].length}if(i<e.length){let a=e.substring(i);r.push({type:"text",text:a,...t.length>0&&{marks:t}})}}s(bc,"parseTextWithVariables");function Pr(e,t){let r={type:"doc",content:[]};if(!e||!e.elements||e.elements.length===0)return r;let o,n=t==null?void 0:t.channel;for(let a of e.elements)if(a.type==="channel"){let c=a;if(n){if(c.channel===n){o=c.elements;break}}else{o=c.elements;break}}if(!o||o.length===0)return r;let i=s(a=>{var c,l,u;if(a.type==="meta")return[];switch(a.type){case"text":if("content"in a){let d=a.text_style==="h1"?1:a.text_style==="h2"?2:null,p={};if(a.padding){let[b,g]=a.padding.replace(/px/g,"").split(" "),v=parseInt(b),k=parseInt(g);!isNaN(v)&&!isNaN(k)&&(p={paddingVertical:v,paddingHorizontal:k})}let m={};(c=a.border)!=null&&c.enabled&&(m={...a.border.color&&{borderColor:a.border.color},...a.border.size&&{borderWidth:parseInt(a.border.size)},...a.border.radius&&{borderRadius:a.border.radius}});let h=a.content.trim()?gc(a.content):[];return[{type:d?"heading":"paragraph",attrs:{textAlign:a.align||"left",level:d,id:`node-${Io()}`,...p,...a.color&&{textColor:a.color},...a.background_color&&{backgroundColor:a.background_color},...m},content:h}]}return[];case"action":return[{type:"button",attrs:{label:a.content,link:a.href,alignment:a.align==="full"?"center":a.align||"center",size:a.align==="full"?"full":"default",style:a.style,id:`node-${Io()}`,...a.background_color&&{backgroundColor:a.background_color},...a.color&&{textColor:a.color},...a.padding&&{padding:parseInt(a.padding)},...((l=a.border)==null?void 0:l.enabled)&&{...a.border.color&&{borderColor:a.border.color},...a.border.size&&{borderWidth:parseInt(a.border.size)},...a.border.radius&&{borderRadius:a.border.radius}}}}];case"quote":return[{type:"blockquote",attrs:{textAlign:a.align||"left",id:`node-${Io()}`,...a.border_color&&{borderColor:a.border_color}},content:[{type:"paragraph",attrs:{textAlign:a.align||"left",id:`node-${Io()}`},content:gc(a.content)}]}];case"image":return[{type:"imageBlock",attrs:{sourcePath:a.src,id:`node-${Io()}`,...a.href&&{link:a.href},...a.align&&{alignment:a.align},...a.alt_text&&{alt:a.alt_text},...a.width&&{width:parseInt(a.width.replace(/%|px/,""))},...((u=a.border)==null?void 0:u.enabled)&&{...a.border.color&&{borderColor:a.border.color},...a.border.size&&{borderWidth:parseInt(a.border.size)},...a.border.radius&&{borderRadius:parseInt(a.border.radius)}}}}];case"divider":return[{type:"divider",attrs:{id:`node-${Io()}`,...a.dividerColor&&{color:a.dividerColor},...a.borderWidth&&{size:parseInt(a.borderWidth)},...a.padding&&{padding:parseInt(a.padding)},variant:a.dividerColor==="transparent"?"spacer":"divider"}}];default:return[]}},"convertNode");return{type:"doc",content:o.flatMap(i)}}s(Pr,"convertElementalToTiptap");function vc(e,t){t.length!==0&&e.forEach(r=>{r.marks=r.marks||[],t.forEach(o=>{var n,i;(n=r.marks)!=null&&n.some(a=>a.type===o.type)||(i=r.marks)==null||i.push({type:o.type,...o.href&&{attrs:{href:o.href}}})}),r.marks.length===0&&delete r.marks})}s(vc,"applyMarks");function yc(e,t,r){if(!e)return;let o=/{{([^}]+)}}/g,n,i=0;for(;(n=o.exec(e))!==null;){if(n.index>i){let a=e.substring(i,n.index);r.push({type:"text",text:a,...t.length>0&&{marks:t}})}r.push({type:"variable",attrs:{id:n[1]},...t.length>0&&{marks:t}}),i=n.index+n[0].length}if(i<e.length){let a=e.substring(i);r.push({type:"text",text:a,...t.length>0&&{marks:t}})}}s(yc,"parseTextWithVariables");function na(e){if(!e)return[];let t=[],r=/\[([^\]]+)\]\(([^)]+)\)/g,o,n=0;for(;(o=r.exec(e))!==null;)o.index>n&&t.push({type:"text",text:e.substring(n,o.index),start:n,end:o.index}),t.push({type:"link",text:o[1],start:o.index,end:o.index+o[1].length,attrs:{href:o[2]}}),n=o.index+o[0].length;n<e.length&&t.push({type:"text",text:e.substring(n),start:n,end:e.length});let i=[];for(let l of t){if(l.type==="link"){i.push(l);continue}let u=0,d=/(\*\*|\*|__|_|~|\+|{{[^}]+}})/g,p=l.text,m;for(;(m=d.exec(p))!==null;){let h=m.index,b=m[0],g=h+b.length;if(h>u&&i.push({type:"text",text:p.substring(u,h),start:l.start+u,end:l.start+h}),b.startsWith("{{")){let v=b.slice(2,-2);i.push({type:"variable",text:b,start:l.start+h,end:l.start+g,attrs:{id:v}})}else i.push({type:"marker",text:b,start:l.start+h,end:l.start+g});u=g}u<p.length&&i.push({type:"text",text:p.substring(u),start:l.start+u,end:l.start+p.length})}i.sort((l,u)=>l.start-u.start);let a=[],c=[];for(let l of i)if(l.type==="text"){let u=[];yc(l.text,[],u),vc(u,a),c.push(...u)}else if(l.type==="variable"){let u={type:"variable",attrs:l.attrs};vc([u],a),c.push(u)}else if(l.type==="link"){let u=[];yc(l.text,[],u),u.forEach(d=>{var p;d.marks=d.marks||[],d.marks.push({type:"link",attrs:{href:(p=l.attrs)==null?void 0:p.href}})}),c.push(...u)}else if(l.type==="marker"){let u=l.text;if(["**","*","__","_","~","+"].includes(u)){let d=u==="**"||u==="__"?"bold":u==="*"||u==="_"?"italic":u==="~"?"strike":"underline",p=a.findLastIndex(m=>m.text===u);p!==-1?a.splice(p,1):a.push({type:d,text:u,start:l.start})}}return c}s(na,"processMarkdownFormatting");function Hp(e){let t=[],r=e.split(/\n/);for(let o of r){if(!o.trim())continue;let n=o.match(/^(#{1,6})\s+(.*)$/);if(n){t.push({type:"heading",attrs:{level:n[1].length,textAlign:"left"},content:na(n[2])});continue}if(o.startsWith(">")){let a=o.slice(1).trim();t.push({type:"blockquote",attrs:{textAlign:"left"},content:[{type:"paragraph",attrs:{textAlign:"left"},content:na(a)}]});continue}if(o.match(/^-{3,}$/)){t.push({type:"divider"});continue}let i=o.match(/^!\[(.*?)\]\((.*?)(?:\s+"(.*?)")?\)$/);if(i){t.push({type:"imageBlock",attrs:{sourcePath:i[2],alt:i[1]||"",...i[3]&&{title:i[3]}}});continue}t.push({type:"paragraph",attrs:{textAlign:"left"},content:na(o)})}return t}s(Hp,"parseBlockContent");function xc(e){return{type:"doc",content:Hp(e)}}s(xc,"convertMarkdownToTiptap");var Dp=s(e=>{switch(e.type){case"bold":return"**";case"italic":return"*";case"strike":return"~";case"underline":return"+";default:return""}},"markToMD"),ia=s(e=>{var o,n,i,a;if(e.type==="variable")return`{{${(o=e.attrs)==null?void 0:o.id}}}`;let t=e.text||"";if((n=e.marks)!=null&&n.length){let c=e.marks.map(Dp).filter(Boolean);t=c.join("")+t+c.reverse().join("")}let r=(i=e.marks)==null?void 0:i.find(c=>c.type==="link");return r&&(t=`[${t}](${(a=r.attrs)==null?void 0:a.href})`),t},"convertTextToMarkdown");function Zt(e){let t=s(r=>{var o,n,i,a,c,l,u,d,p,m,h,b,g,v,k,R,T,f,w,P,A,N,y,M,S,C,I,H,V,_,G,D,me,He,De,re,xe,Le,ge,Ve,mt,Ge,st,Me,ft,ct,wt,Lt,Et,Ke,Tt,At,St,We,Je,gt;switch(r.type){case"paragraph":{let j="",Te=r.content||[];for(let Xe=0;Xe<Te.length;Xe++)Te[Xe].type==="hardBreak"?j+=`
148
- `:j+=ia(Te[Xe]);j+=`
149
- `;let de={type:"text",align:((o=r.attrs)==null?void 0:o.textAlign)||"left",content:j};return((n=r.attrs)==null?void 0:n.paddingVertical)!==void 0&&((i=r.attrs)==null?void 0:i.paddingHorizontal)!==void 0&&(de.padding=`${r.attrs.paddingVertical}px ${r.attrs.paddingHorizontal}px`),(a=r.attrs)!=null&&a.textColor&&(de.color=r.attrs.textColor),(c=r.attrs)!=null&&c.backgroundColor&&(de.background_color=r.attrs.backgroundColor),((l=r.attrs)!=null&&l.borderWidth||(u=r.attrs)!=null&&u.borderColor||(d=r.attrs)!=null&&d.borderRadius)&&(de.border={enabled:!0},(p=r.attrs)!=null&&p.borderColor&&(de.border.color=r.attrs.borderColor),(m=r.attrs)!=null&&m.borderWidth&&(de.border.size=`${r.attrs.borderWidth}px`),(h=r.attrs)!=null&&h.borderRadius&&(de.border.radius=r.attrs.borderRadius)),[de]}case"heading":{let j="",Te=r.content||[];for(let Xe=0;Xe<Te.length;Xe++)Te[Xe].type==="hardBreak"?j+=`
150
- `:j+=ia(Te[Xe]);j+=`
151
- `;let de={type:"text",align:((b=r.attrs)==null?void 0:b.textAlign)||"left",content:j,text_style:((g=r.attrs)==null?void 0:g.level)===1?"h1":"h2"};return((v=r.attrs)==null?void 0:v.paddingVertical)!==void 0&&((k=r.attrs)==null?void 0:k.paddingHorizontal)!==void 0&&(de.padding=`${r.attrs.paddingVertical}px ${r.attrs.paddingHorizontal}px`),(R=r.attrs)!=null&&R.textColor&&(de.color=r.attrs.textColor),(T=r.attrs)!=null&&T.backgroundColor&&(de.background_color=r.attrs.backgroundColor),((f=r.attrs)!=null&&f.borderWidth||(w=r.attrs)!=null&&w.borderColor||(P=r.attrs)!=null&&P.borderRadius)&&(de.border={enabled:!0},(A=r.attrs)!=null&&A.borderColor&&(de.border.color=r.attrs.borderColor),(N=r.attrs)!=null&&N.borderWidth&&(de.border.size=`${r.attrs.borderWidth}px`),(y=r.attrs)!=null&&y.borderRadius&&(de.border.radius=r.attrs.borderRadius)),[de]}case"blockquote":{let j="";if(r.content)for(let de of r.content)de.content&&(j+=de.content.map(ia).join("")),j+=`
152
- `;j=j.trim();let Te={type:"quote",content:j};return((M=r.attrs)==null?void 0:M.textAlign)!=="left"&&(Te.align=(S=r.attrs)==null?void 0:S.textAlign),(C=r.attrs)!=null&&C.borderColor&&(Te.border_color=r.attrs.borderColor),[Te]}case"imageBlock":{let j={type:"image",src:((I=r.attrs)==null?void 0:I.sourcePath)||""};return(H=r.attrs)!=null&&H.link&&(j.href=r.attrs.link),(V=r.attrs)!=null&&V.alignment&&(j.align=r.attrs.alignment),(_=r.attrs)!=null&&_.alt&&(j.alt_text=r.attrs.alt),(G=r.attrs)!=null&&G.width&&(j.width=`${r.attrs.width}%`),((D=r.attrs)!=null&&D.borderWidth||(me=r.attrs)!=null&&me.borderColor||(He=r.attrs)!=null&&He.borderRadius)&&(j.border={enabled:!0},(De=r.attrs)!=null&&De.borderColor&&(j.border.color=r.attrs.borderColor),(re=r.attrs)!=null&&re.borderWidth&&(j.border.size=`${r.attrs.borderWidth}px`),(xe=r.attrs)!=null&&xe.borderRadius&&(j.border.radius=`${r.attrs.borderRadius}px`)),[j]}case"divider":{let j={type:"divider"};return(Le=r.attrs)!=null&&Le.color&&(j.dividerColor=r.attrs.color),(ge=r.attrs)!=null&&ge.size&&(j.borderWidth=`${r.attrs.size}px`),(Ve=r.attrs)!=null&&Ve.padding&&(j.padding=`${r.attrs.padding}px`),[j]}case"button":{let j={type:"action",content:(Ge=(mt=r.attrs)==null?void 0:mt.label)!=null?Ge:"",href:(Me=(st=r.attrs)==null?void 0:st.link)!=null?Me:"#"};return(ft=r.attrs)!=null&&ft.style&&(j.style=r.attrs.style),j.align=((ct=r.attrs)==null?void 0:ct.size)==="full"?"full":((wt=r.attrs)==null?void 0:wt.alignment)||"center",(Lt=r.attrs)!=null&&Lt.backgroundColor&&(j.background_color=r.attrs.backgroundColor),(Et=r.attrs)!=null&&Et.textColor&&(j.color=r.attrs.textColor),(Ke=r.attrs)!=null&&Ke.padding&&(j.padding=`${r.attrs.padding}px`),((Tt=r.attrs)!=null&&Tt.borderWidth||(At=r.attrs)!=null&&At.borderColor||(St=r.attrs)!=null&&St.borderRadius)&&(j.border={enabled:!0},(We=r.attrs)!=null&&We.borderColor&&(j.border.color=r.attrs.borderColor),(Je=r.attrs)!=null&&Je.borderWidth&&(j.border.size=`${r.attrs.borderWidth}px`),(gt=r.attrs)!=null&&gt.borderRadius&&(j.border.radius=r.attrs.borderRadius)),[j]}default:return r.content?r.content.flatMap(t):[]}},"convertNode");return e!=null&&e.content?e.content.flatMap(t):[]}s(Zt,"convertTiptapToElemental");function qt(e,t){var a;let r=e||{version:"2022-01-01",elements:[]},o={version:r.version||"2022-01-01",elements:[]},n;typeof t.channel=="string"?n=t.channel:t.channel&&typeof t.channel.channel=="string"?n=t.channel.channel:t.channel;let i=!1;if(r.elements&&Array.isArray(r.elements)&&r.elements.forEach(c=>{var u;let l={...c};if(c.type==="channel"){let d=c,p=!1;if(n?d.channel===n&&(p=!0):i||(p=!0),p){let m={};if(t.channel&&typeof t.channel=="object")for(let b in t.channel)b!=="type"&&b!=="elements"&&b!=="channel"&&Object.prototype.hasOwnProperty.call(t.channel,b)&&(m[b]=t.channel[b]);let h=[];if(t.meta)h.push({type:"meta",...t.meta});else{let b=(u=d.elements)==null?void 0:u.find(g=>g.type==="meta");b&&h.push(b)}h.push(...t.elements),l={type:"channel",channel:d.channel,...Object.fromEntries(Object.entries(d).filter(([b])=>!["type","channel","elements"].includes(b))),...m,elements:h},i=!0}}o.elements.push(l)}),n&&!i||!((a=r.elements)!=null&&a.some(c=>c.type==="channel"))&&!i){let c;n?c=n:t.channel&&typeof t.channel=="object"&&t.channel.channel?c=t.channel.channel:c="email";let l={};if(t.channel&&typeof t.channel=="object")for(let p in t.channel)p!=="type"&&p!=="elements"&&p!=="channel"&&Object.prototype.hasOwnProperty.call(t.channel,p)&&(l[p]=t.channel[p]);let u=[];t.meta&&u.push({type:"meta",...t.meta}),u.push(...t.elements);let d={type:"channel",channel:c,elements:u,...l};o.elements.push(d)}return o}s(qt,"updateElemental");function E(...e){return Fp(Vp(e))}s(E,"cn");import{Slot as Op}from"@radix-ui/react-slot";import{cva as Wp}from"class-variance-authority";import{forwardRef as zp}from"react";import{jsx as Up}from"react/jsx-runtime";var $p=Wp("courier-flex courier-group courier-items-center courier-justify-center courier-border courier-border-transparent courier-gap-2 courier-text-sm courier-font-semibold courier-rounded-md disabled:courier-opacity-50 courier-whitespace-nowrap courier-outline-none",{variants:{variant:{primary:"courier-text-white courier-bg-[#3B82F6] courier-border-[#3B82F6] dark:courier-text-foreground dark:courier-bg-white dark:courier-border-white",secondary:"courier-text-foreground courier-bg-[#F5F5F5]",tertiary:"courier-bg-neutral-50 courier-text-foreground dark:courier-bg-foreground dark:courier-text-white dark:courier-border-foreground",quaternary:"courier-bg-transparent courier-border-transparent courier-text-neutral-500 dark:courier-text-neutral-400",ghost:"hover:courier-bg-accent hover:courier-text-accent-foreground",link:"courier-text-foreground !courier-font-normal hover:courier-text-accent-foreground !courier-p-0 courier-border-none",outline:"!courier-border-border courier-text-foreground dark:courier-text-white dark:courier-border-foreground hover:courier-bg-neutral-100 dark:hover:courier-bg-neutral-800"},size:{medium:"courier-py-2 courier-px-3",small:"courier-py-1 courier-px-2",icon:"courier-w-8 courier-h-8",iconSmall:"courier-w-6 courier-h-6"},active:{true:"",false:""},disabled:{true:"",false:""}},compoundVariants:[{variant:"primary",disabled:!1,active:!1,class:"hover:courier-bg-neutral-800 active:courier-bg-neutral-900 dark:hover:courier-bg-neutral-200 dark:active:courier-bg-neutral-300"},{variant:"primary",active:!0,class:"courier-bg-neutral-900 dark:courier-bg-neutral-300"},{variant:"secondary",disabled:!1,active:!1,class:"hover:courier-bg-neutral-100 active:courier-bg-neutral-200 dark:hover:courier-bg-neutral-900 dark:active:courier-bg-neutral-800"},{variant:"secondary",active:!0,class:"courier-bg-neutral-200 dark:courier-bg-neutral-800"},{variant:"tertiary",disabled:!1,active:!1,class:"hover:courier-bg-neutral-100 active:courier-bg-neutral-200 dark:hover:courier-bg-neutral-800 dark:active:courier-bg-neutral-700"},{variant:"tertiary",active:!0,class:"courier-bg-neutral-200 dark:courier-bg-neutral-800"},{variant:"ghost",disabled:!1,active:!1,class:"hover:courier-bg-black/5 hover:courier-text-neutral-700 active:courier-bg-black/10 active:courier-text-neutral-800 dark:hover:courier-bg-white/10 dark:hover:courier-text-neutral-300 dark:active:courier-text-neutral-200"},{variant:"ghost",active:!0,class:"courier-bg-accent courier-text-accent-foreground [&_svg]:courier-text-accent-foreground dark:courier-bg-white/20 dark:courier-text-neutral-200"}]}),Ce=zp(({active:e,buttonSize:t="medium",disabled:r,variant:o="primary",className:n,asChild:i=!1,...a},c)=>Up(i?Op:"button",{ref:c,disabled:r,className:E($p({variant:o,size:t,disabled:r,active:e}),n),...a}));Ce.displayName="Button";import{forwardRef as Zp}from"react";import{jsx as qp}from"react/jsx-runtime";var se=Zp((e,t)=>qp("hr",{...e,ref:t,className:E("courier-my-1 courier-border-border dark:courier-border-neutral-800",e.className)}));se.displayName="Divider";import*as Mr from"react";import*as ie from"@radix-ui/react-dropdown-menu";import{Check as _p,ChevronRight as jp,Circle as Gp}from"lucide-react";import{jsx as ht,jsxs as aa}from"react/jsx-runtime";var ei=ie.Root,ti=ie.Trigger;var Kp=Mr.forwardRef(({className:e,inset:t,children:r,...o},n)=>aa(ie.SubTrigger,{ref:n,className:E("courier-flex courier-cursor-default courier-gap-2 courier-select-none courier-items-center courier-rounded-sm courier-px-2 courier-py-1.5 courier-text-sm courier-outline-none focus:courier-bg-accent data-[state=open]:courier-bg-accent [&_svg]:courier-pointer-events-none [&_svg]:courier-size-4 [&_svg]:courier-shrink-0",t&&"courier-pl-8",e),...o,children:[r,ht(jp,{className:"courier-ml-auto"})]}));Kp.displayName=ie.SubTrigger.displayName;var Jp=Mr.forwardRef(({className:e,...t},r)=>ht(ie.SubContent,{ref:r,className:E("courier-z-50 courier-min-w-[8rem] courier-overflow-hidden courier-rounded-md courier-border courier-bg-popover courier-p-1 courier-text-popover-foreground courier-shadow-lg data-[state=open]:courier-animate-in data-[state=closed]:courier-animate-out data-[state=closed]:courier-fade-out-0 data-[state=open]:courier-fade-in-0 data-[state=closed]:courier-zoom-out-95 data-[state=open]:courier-zoom-in-95 data-[side=bottom]:courier-slide-in-from-top-2 data-[side=left]:courier-slide-in-from-right-2 data-[side=right]:courier-slide-in-from-left-2 data-[side=top]:courier-slide-in-from-bottom-2",e),...t}));Jp.displayName=ie.SubContent.displayName;var un=Mr.forwardRef(({className:e,sideOffset:t=4,portalProps:r,...o},n)=>ht(ie.Portal,{...r,children:ht(ie.Content,{ref:n,sideOffset:t,className:E("courier-z-50 courier-min-w-[8rem] courier-overflow-hidden courier-rounded-md courier-border courier-bg-popover courier-p-1 courier-text-popover-foreground courier-shadow-md","data-[state=open]:courier-animate-in data-[state=closed]:courier-animate-out data-[state=closed]:courier-fade-out-0 data-[state=open]:courier-fade-in-0 data-[state=closed]:courier-zoom-out-95 data-[state=open]:courier-zoom-in-95 data-[side=bottom]:courier-slide-in-from-top-2 data-[side=left]:courier-slide-in-from-right-2 data-[side=right]:courier-slide-in-from-left-2 data-[side=top]:courier-slide-in-from-bottom-2",e),...o})}));un.displayName=ie.Content.displayName;var dn=Mr.forwardRef(({className:e,inset:t,...r},o)=>ht(ie.Item,{ref:o,className:E("courier-relative courier-flex courier-cursor-default courier-select-none courier-items-center courier-gap-2 courier-rounded-sm courier-px-2 courier-py-1.5 courier-text-sm courier-outline-none focus:courier-bg-accent focus:courier-text-foreground data-[disabled]:courier-pointer-events-none data-[disabled]:courier-opacity-50 [&>svg]:courier-size-4 [&>svg]:courier-shrink-0",t&&"courier-pl-8",e),...r}));dn.displayName=ie.Item.displayName;var Xp=Mr.forwardRef(({className:e,children:t,checked:r,...o},n)=>aa(ie.CheckboxItem,{ref:n,className:E("courier-relative courier-flex courier-cursor-default courier-select-none courier-items-center courier-rounded-sm courier-py-1.5 courier-pl-8 courier-pr-2 courier-text-sm courier-outline-none focus:courier-bg-accent focus:courier-text-accent-foreground data-[disabled]:courier-pointer-events-none data-[disabled]:courier-opacity-50",e),checked:r,...o,children:[ht("span",{className:"courier-absolute courier-left-2 courier-flex courier-h-3.5 courier-w-3.5 courier-items-center courier-justify-center",children:ht(ie.ItemIndicator,{children:ht(_p,{className:"courier-h-4 courier-w-4"})})}),t]}));Xp.displayName=ie.CheckboxItem.displayName;var Yp=Mr.forwardRef(({className:e,children:t,...r},o)=>aa(ie.RadioItem,{ref:o,className:E("courier-relative courier-flex courier-cursor-default courier-select-none courier-items-center courier-rounded-sm courier-py-1.5 courier-pl-8 courier-pr-2 courier-text-sm courier-outline-none focus:courier-bg-accent focus:courier-text-accent-foreground data-[disabled]:courier-pointer-events-none data-[disabled]:courier-opacity-50",e),...r,children:[ht("span",{className:"courier-absolute courier-left-2 courier-flex courier-h-3.5 courier-w-3.5 courier-items-center courier-justify-center",children:ht(ie.ItemIndicator,{children:ht(Gp,{className:"courier-h-2 courier-w-2 courier-fill-current"})})}),t]}));Yp.displayName=ie.RadioItem.displayName;var Qp=Mr.forwardRef(({className:e,inset:t,...r},o)=>ht(ie.Label,{ref:o,className:E("courier-px-2 courier-py-1.5 courier-text-sm courier-font-semibold",t&&"courier-pl-8",e),...r}));Qp.displayName=ie.Label.displayName;var em=Mr.forwardRef(({className:e,...t},r)=>ht(ie.Separator,{ref:r,className:E("courier-mx-1 courier-my-1 courier-h-px courier-bg-muted",e),...t}));em.displayName=ie.Separator.displayName;var tm=s(({className:e,...t})=>ht("span",{className:E("courier-ml-auto courier-text-xs courier-tracking-widest courier-opacity-60",e),...t}),"DropdownMenuShortcut");tm.displayName="DropdownMenuShortcut";import{Slot as im}from"@radix-ui/react-slot";import*as bt from"react";import{Controller as am,FormProvider as sm,useFormContext as cm}from"react-hook-form";import*as sa from"@radix-ui/react-label";import{cva as rm}from"class-variance-authority";import*as Cc from"react";import{jsx as nm}from"react/jsx-runtime";var om=rm("courier-text-sm courier-font-medium courier-leading-none peer-disabled:courier-cursor-not-allowed peer-disabled:courier-opacity-70"),ca=Cc.forwardRef(({className:e,...t},r)=>nm(sa.Root,{ref:r,className:E(om(),e),...t}));ca.displayName=sa.Root.displayName;import{jsx as Fr}from"react/jsx-runtime";var ot=sm,wc=bt.createContext({}),z=s(({...e})=>Fr(wc.Provider,{value:{name:e.name},children:Fr(am,{...e})}),"FormField"),ri=s(()=>{let e=bt.useContext(wc),t=bt.useContext(Tc),{getFieldState:r,formState:o}=cm(),n=r(e.name,o);if(!e)throw new Error("useFormField should be used within <FormField>");let{id:i}=t;return{id:i,name:e.name,formItemId:`${i}-form-item`,formDescriptionId:`${i}-form-item-description`,formMessageId:`${i}-form-item-message`,...n}},"useFormField"),Tc=bt.createContext({}),O=bt.forwardRef(({className:e,...t},r)=>{let o=bt.useId();return Fr(Tc.Provider,{value:{id:o},children:Fr("div",{ref:r,className:E("courier-space-y-2",e),...t})})});O.displayName="FormItem";var Ht=bt.forwardRef(({className:e,...t},r)=>{let{error:o,formItemId:n}=ri();return Fr(ca,{ref:r,className:E(o&&"courier-text-destructive",e),htmlFor:n,...t})});Ht.displayName="FormLabel";var W=bt.forwardRef(({...e},t)=>{let{error:r,formItemId:o,formDescriptionId:n,formMessageId:i}=ri();return Fr(im,{ref:t,id:o,"aria-describedby":r?`${n} ${i}`:`${n}`,"aria-invalid":!!r,...e})});W.displayName="FormControl";var lm=bt.forwardRef(({className:e,...t},r)=>{let{formDescriptionId:o}=ri();return Fr("p",{ref:r,id:o,className:E("courier-text-[0.8rem] courier-text-muted-foreground",e),...t})});lm.displayName="FormDescription";var Z=bt.forwardRef(({className:e,children:t,...r},o)=>{let{error:n,formMessageId:i}=ri(),a=n?String(n==null?void 0:n.message):t;return a?Fr("p",{ref:o,id:i,className:E("courier-text-[0.8rem] courier-font-medium courier-text-destructive",e),...r,children:a}):null});Z.displayName="FormMessage";import*as kc from"react";import{jsx as la,jsxs as um}from"react/jsx-runtime";var te=kc.forwardRef(({className:e,type:t,startAdornment:r,endAdornment:o,...n},i)=>um("div",{className:"courier-relative courier-flex courier-w-full courier-items-center",children:[r&&la("div",{className:"courier-absolute courier-left-2 courier-flex courier-items-center courier-pointer-events-none",children:r}),la("input",{type:t,className:E("courier-flex courier-w-full courier-rounded-md courier-border-none courier-bg-secondary courier-text-secondary-foreground courier-p-1.5 courier-text-base file:courier-border-0 file:courier-bg-transparent file:courier-text-sm file:courier-font-medium file:courier-text-foreground placeholder:courier-text-muted-foreground focus-visible:courier-outline-none disabled:courier-cursor-not-allowed disabled:courier-opacity-50 md:courier-text-sm",r&&"courier-pl-8",o&&"courier-pr-8",e),ref:i,...n}),o&&la("div",{className:"courier-absolute courier-right-2 courier-flex courier-items-center courier-pointer-events-none",children:o})]}));te.displayName="Input";import{forwardRef as fm,useRef as gm,useMemo as hm}from"react";import{useCallback as ua,useEffect as Pc,useRef as oi,useState as Mc}from"react";import{CircleX as dm}from"lucide-react";import{jsx as sr,jsxs as Nc}from"react/jsx-runtime";var pm=s(e=>e==="transparent"||/^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/.test(e),"isValidHex"),Ic=s(({color:e,onChange:t,className:r,presetColors:o,defaultValue:n="transparent"})=>{let[i,a]=Mc(()=>pn(e)),[c,l]=Mc(e),u=oi(null),d=oi(null),p=oi(null),m=oi(!1),h=e!==n,b=ua(T=>{m.current=!0;let f=mm(T);l(f),t(f),m.current=!1},[t]),g=s(T=>f=>{p.current=T,v(f)},"handleMouseDown"),v=ua(T=>{if(p.current){if(p.current==="gradient"&&u.current){let f=u.current.getBoundingClientRect(),w=Math.max(0,Math.min(1,(T.clientX-f.left)/f.width)),P=Math.max(0,Math.min(1,(T.clientY-f.top)/f.height)),A={...i,s:w*100,v:(1-P)*100};a(A),b(A)}else if(p.current==="hue"&&d.current){let f=d.current.getBoundingClientRect(),w=Math.max(0,Math.min(1,(T.clientX-f.left)/f.width)),P={...i,h:w*360};a(P),b(P)}}},[i,b]),k=ua(()=>{p.current=null},[]);Pc(()=>{if(p.current)return window.addEventListener("mousemove",v),window.addEventListener("mouseup",k),()=>{window.removeEventListener("mousemove",v),window.removeEventListener("mouseup",k)}},[v,k]),Pc(()=>{m.current||(a(pn(e)),l(e))},[e]);let R=s(T=>{let f=T.target.value;if(l(f),pm(f)){let w=pn(f);a(w),b(w)}},"handleInputChange");return Nc("div",{className:E("w-full",r),children:[sr("div",{ref:u,className:"courier-relative courier-h-[160px] courier-w-full courier-cursor-crosshair courier-rounded-lg",style:{backgroundColor:`hsl(${i.h}, 100%, 50%)`,backgroundImage:"linear-gradient(to top, #000, transparent), linear-gradient(to right, #fff, transparent)"},onMouseDown:g("gradient"),children:sr("div",{className:"courier-absolute courier-h-3 courier-w-3 courier-translate-x-[-50%] courier-translate-y-[-50%] courier-rounded-full courier-border-2 courier-border-white",style:{left:`${i.s}%`,top:`${100-i.v}%`}})}),sr("div",{ref:d,className:"courier-relative courier-mt-2 courier-h-3 courier-w-full courier-cursor-pointer courier-rounded",style:{background:"linear-gradient(to right, #f00, #ff0, #0f0, #0ff, #00f, #f0f, #f00)"},onMouseDown:g("hue"),children:sr("div",{className:"courier-absolute courier-h-full courier-w-1 courier-translate-x-[-50%] courier-rounded courier-border courier-border-input courier-bg-background",style:{left:`${i.h/360*100}%`}})}),Nc("div",{className:"courier-mt-3 courier-relative courier-flex courier-items-center",children:[sr(te,{value:c,onChange:R,placeholder:"#000000",className:"courier-flex-1"}),h&&sr("button",{onClick:T=>{if(T.preventDefault(),n==="transparent"){t("transparent"),l("transparent"),a({h:0,s:0,v:0});return}let f=pn(n);a(f),b(f)},className:"courier-absolute courier-right-3 courier-flex courier-cursor-pointer courier-items-center courier-justify-center courier-transition-colors",children:sr(dm,{size:14,strokeWidth:1.25})})]}),sr(se,{className:"courier-my-3"}),sr("div",{className:"courier-flex courier-flex-wrap courier-gap-1",children:o.map(T=>sr("button",{className:E("courier-h-6 courier-w-6 courier-rounded-md courier-border courier-border-input courier-shrink-0",T==="transparent"&&da),style:{backgroundColor:T==="transparent"?void 0:T},onClick:f=>{if(f.preventDefault(),T==="transparent"){t("transparent"),l("transparent"),a({h:0,s:0,v:0});return}let w=pn(T);a(w),b(w)}},T))})]})},"ColorPicker");function pn(e){if(e==="transparent")return{h:0,s:0,v:0};let t=parseInt(e.slice(1,3),16)/255,r=parseInt(e.slice(3,5),16)/255,o=parseInt(e.slice(5,7),16)/255,n=Math.max(t,r,o),i=Math.min(t,r,o),a=n-i,c=0,l=n===0?0:a/n,u=n;if(n!==i){switch(n){case t:c=(r-o)/a+(r<o?6:0);break;case r:c=(o-t)/a+2;break;case o:c=(t-r)/a+4;break}c/=6}return{h:c*360,s:l*100,v:u*100}}s(pn,"hexToHsv");function mm({h:e,s:t,v:r}){t/=100,r/=100,e=e%360/360;let o=s(c=>{let l=(c+e*6)%6;return r-r*t*Math.max(0,Math.min(l,4-l,1))},"f"),n=Math.round(o(5)*255),i=Math.round(o(3)*255),a=Math.round(o(1)*255);return`#${[n,i,a].map(c=>c.toString(16).padStart(2,"0")).join("")}`}s(mm,"hsvToHex");import*as cr from"@radix-ui/react-popover";import*as Ec from"react";import{jsx as Lc}from"react/jsx-runtime";var Ac=cr.Root,Sc=cr.Trigger;var pa=Ec.forwardRef(({className:e,align:t="center",sideOffset:r=4,portalProps:o,...n},i)=>Lc(cr.Portal,{...o,children:Lc(cr.Content,{ref:i,align:t,sideOffset:r,className:E("courier-z-50 courier-w-72 courier-rounded-md courier-border courier-bg-popover courier-p-4 courier-text-popover-foreground courier-shadow-md courier-outline-none data-[state=open]:courier-animate-in data-[state=closed]:courier-animate-out data-[state=closed]:courier-fade-out-0 data-[state=open]:courier-fade-in-0 data-[state=closed]:courier-zoom-out-95 data-[state=open]:courier-zoom-in-95 data-[side=bottom]:courier-slide-in-from-top-2 data-[side=left]:courier-slide-in-from-right-2 data-[side=right]:courier-slide-in-from-left-2 data-[side=top]:courier-slide-in-from-bottom-2",e),...n})}));pa.displayName=cr.Content.displayName;import{jsx as mn,jsxs as Rc}from"react/jsx-runtime";var da="bg-[url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNOCAwSDBWOEg4VjBaIiBmaWxsPSIjRDlEOUQ5Ii8+PHBhdGggZD0iTTE2IDhIOFYxNkgxNlY4WiIgZmlsbD0iI0Q5RDlEOSIvPjwvc3ZnPg==')]",bm=["#ef4444","#f97316","#eab308","#22c55e","#14b8a6","#06b6d4","#3b82f6","#6366f1","#8b5cf6","#000000","#525252","#a3a3a3","#ffffff","transparent"],$e=fm(({className:e,value:t="",onChange:r,defaultValue:o,transparent:n=!0,presetColors:i=bm,...a},c)=>{let l=t!=="transparent",u=gm(null),d=hm(()=>n?i:i.filter(p=>p!=="transparent"),[i,n]);return Rc(Ac,{children:[mn(Sc,{asChild:!0,children:Rc("div",{className:"courier-relative courier-flex courier-items-center",ref:u,children:[mn("div",{className:E("courier-absolute courier-left-2 courier-flex courier-h-4 courier-w-4 courier-cursor-pointer courier-items-center courier-justify-center courier-rounded-md courier-border courier-border-input courier-transition-colors courier-z-10",l?"":da),style:{backgroundColor:l?t:void 0}}),mn(te,{...a,ref:c,readOnly:!0,type:"text",value:t==="transparent"?"Transparent":t,className:E("courier-relative courier-cursor-pointer courier-pl-8",e)})]})}),mn(pa,{portalProps:{container:(u==null?void 0:u.current)||void 0},className:"courier-w-[230px]",children:mn(Ic,{color:t,onChange:r,presetColors:d,defaultValue:o})})]})});$e.displayName="InputColor";import*as Bc from"react";import*as ma from"@radix-ui/react-separator";import{jsx as vm}from"react/jsx-runtime";var fa=Bc.forwardRef(({className:e,orientation:t="horizontal",decorative:r=!0,...o},n)=>vm(ma.Root,{ref:n,decorative:r,orientation:t,className:E("courier-shrink-0 courier-bg-border",t==="horizontal"?"courier-h-[1px] courier-w-full":"courier-h-full courier-w-[1px]",e),...o}));fa.displayName=ma.Root.displayName;import*as Hc from"react";import*as Nr from"@radix-ui/react-slider";import{jsx as ga,jsxs as ym}from"react/jsx-runtime";var ha=Hc.forwardRef(({className:e,...t},r)=>ym(Nr.Root,{ref:r,className:E("courier-relative courier-flex courier-w-full courier-touch-none courier-select-none courier-items-center",e),...t,children:[ga(Nr.Track,{className:"courier-relative courier-h-1.5 courier-w-full courier-grow courier-overflow-hidden courier-rounded-full courier-bg-secondary",children:ga(Nr.Range,{className:"courier-absolute courier-h-full courier-bg-accent-foreground"})}),ga(Nr.Thumb,{className:"courier-block courier-h-4 courier-w-4 courier-rounded-full courier-bg-accent-foreground courier-shadow courier-transition-colors focus-visible:courier-outline-none focus-visible:courier-ring-1 focus-visible:courier-ring-ring disabled:courier-pointer-events-none disabled:courier-opacity-50"})]}));ha.displayName=Nr.Root.displayName;import*as Vc from"react";import*as fn from"@radix-ui/react-switch";import{jsx as Dc}from"react/jsx-runtime";var Lo=Vc.forwardRef(({className:e,...t},r)=>Dc(fn.Root,{className:E("courier-peer courier-inline-flex courier-h-5 courier-w-9 courier-shrink-0 courier-cursor-pointer courier-items-center courier-rounded-full courier-border-2 courier-border-transparent courier-shadow-sm courier-transition-colors focus-visible:courier-outline-none focus-visible:courier-ring-2 focus-visible:courier-ring-ring focus-visible:courier-ring-offset-2 focus-visible:courier-ring-offset-background disabled:courier-cursor-not-allowed disabled:courier-opacity-50 data-[state=checked]:courier-bg-accent-foreground data-[state=unchecked]:courier-bg-input",e),...t,ref:r,children:Dc(fn.Thumb,{className:E("courier-pointer-events-none courier-block courier-h-4 courier-w-4 courier-rounded-full courier-bg-background courier-shadow-lg courier-ring-0 courier-transition-transform data-[state=checked]:courier-translate-x-4 data-[state=unchecked]:courier-translate-x-0")})}));Lo.displayName=fn.Root.displayName;import*as ni from"react";import*as _t from"@radix-ui/react-tabs";import{jsx as ba}from"react/jsx-runtime";var ii=_t.Root,gn=ni.forwardRef(({className:e,...t},r)=>ba(_t.List,{ref:r,className:E("courier-inline-flex courier-h-9 courier-items-center courier-justify-center courier-rounded-md courier-border courier-border-border courier-bg-background courier-p-[3px] courier-text-muted-foreground",e),...t}));gn.displayName=_t.List.displayName;var Eo=ni.forwardRef(({className:e,...t},r)=>ba(_t.Trigger,{ref:r,className:E("courier-inline-flex courier-items-center courier-justify-center courier-whitespace-nowrap courier-rounded-sm courier-px-3 courier-py-1 courier-text-sm courier-font-medium courier-ring-offset-background courier-transition-all focus-visible:courier-outline-none disabled:courier-pointer-events-none disabled:courier-opacity-50 data-[state=active]:courier-bg-accent data-[state=active]:courier-text-accent-foreground",e),...t}));Eo.displayName=_t.Trigger.displayName;var ai=ni.forwardRef(({className:e,...t},r)=>ba(_t.Content,{ref:r,className:E("courier-mt-2 courier-ring-offset-background focus-visible:courier-outline-none focus-visible:courier-ring-2 focus-visible:courier-ring-ring focus-visible:courier-ring-offset-2",e),...t}));ai.displayName=_t.Content.displayName;import*as Ao from"react";import{jsx as xm}from"react/jsx-runtime";var va=Ao.forwardRef(({className:e,autoResize:t=!1,...r},o)=>{let n=Ao.useRef(null),i=s(a=>{n.current=a,typeof o=="function"?o(a):o&&(o.current=a)},"combinedRef");return Ao.useEffect(()=>{if(!t)return;let a=n.current;if(!a)return;let c=s(()=>{a.style.height="auto",a.style.height=`${a.scrollHeight}px`},"adjustHeight");return c(),a.addEventListener("input",c),()=>{a.removeEventListener("input",c)}},[t]),xm("textarea",{className:E("courier-flex courier-min-h-[44px] courier-w-full courier-rounded-md courier-border-none courier-bg-secondary courier-text-secondary-foreground courier-p-1.5 courier-text-base courier-placeholder:courier-text-muted-foreground focus-visible:courier-outline-none disabled:courier-cursor-not-allowed disabled:courier-opacity-50 md:courier-text-sm",t&&"courier-resize-none",e),ref:i,...r})});va.displayName="Textarea";import{forwardRef as wm,useContext as $3}from"react";import{createContext as Cm}from"react";var So={background:"#ffffff",foreground:"#292929",muted:"#D9D9D9",mutedForeground:"#A3A3A3",popover:"#ffffff",popoverForeground:"#292929",border:"#DCDEE4",input:"#DCDEE4",card:"#FAF9F8",cardForeground:"#292929",primary:"#ffffff",primaryForeground:"#696F8C",secondary:"#F5F5F5",secondaryForeground:"#171717",accent:"#E5F3FF",accentForeground:"#1D4ED8",destructive:"#292929",destructiveForeground:"#FF3363",ring:"#80849D",radius:"6px"};var Fc=Cm(So);import{jsx as Oc}from"react/jsx-runtime";var Wc=wm(({children:e,theme:t=So},r)=>{let o=typeof t=="string"?So:{...So,...t},n=typeof t=="string"?{}:Object.entries(t).reduce((i,[a,c])=>{let l=a.replace(/[A-Z]/g,u=>`-${u.toLowerCase()}`);return{...i,[`--${l}`]:c}},{});return Oc(Fc.Provider,{value:o,children:Oc("div",{style:n,className:E("courier-flex courier-flex-col",typeof t=="string"?t:"","lightTheme"),ref:r,children:e})})});import*as zc from"react";import*as ya from"@radix-ui/react-toggle";import{cva as Tm}from"class-variance-authority";import{jsx as Pm}from"react/jsx-runtime";var xa=Tm("courier-inline-flex courier-items-center courier-justify-center courier-gap-2 courier-rounded-md courier-text-sm courier-font-medium courier-transition-colors hover:courier-bg-secondary hover:courier-text-foreground focus-visible:courier-outline-none focus-visible:courier-ring-1 focus-visible:courier-ring-ring disabled:courier-pointer-events-none disabled:courier-opacity-50 data-[state=on]:courier-bg-accent data-[state=on]:courier-text-accent-foreground [&_svg]:courier-pointer-events-none [&_svg]:courier-size-[30px] [&_svg]:courier-shrink-0",{variants:{variant:{default:"courier-bg-transparent",outline:"courier-border courier-border-input courier-bg-transparent courier-shadow-sm hover:courier-bg-accent hover:courier-text-accent-foreground"},size:{default:"courier-h-9 courier-min-w-9",sm:"courier-h-8 courier-px-1.5 courier-min-w-8",lg:"courier-h-10 courier-px-2.5 courier-min-w-10"}},defaultVariants:{variant:"default",size:"default"}}),km=zc.forwardRef(({className:e,variant:t,size:r,...o},n)=>Pm(ya.Root,{ref:n,className:E(xa({variant:t,size:r,className:e})),...o}));km.displayName=ya.Root.displayName;import*as Ro from"@radix-ui/react-toggle-group";import*as eo from"react";import{jsx as Ca}from"react/jsx-runtime";var $c=eo.createContext({size:"default",variant:"default"}),Dt=eo.forwardRef(({className:e,variant:t,size:r,children:o,...n},i)=>Ca(Ro.Root,{ref:i,className:E("courier-flex courier-items-center courier-justify-center courier-gap-1",e),...n,children:Ca($c.Provider,{value:{variant:t,size:r},children:o})}));Dt.displayName=Ro.Root.displayName;var Se=eo.forwardRef(({className:e,children:t,variant:r,size:o,...n},i)=>{let a=eo.useContext($c);return Ca(Ro.Item,{ref:i,className:E(xa({variant:a.variant||r,size:a.size||o}),e),...n,children:t})});Se.displayName=Ro.Item.displayName;import{jsx as wa}from"react/jsx-runtime";var to=s(({className:e})=>wa("div",{className:E("courier-flex courier-flex-col courier-items-center courier-justify-center courier-text-ring",e),children:wa("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"courier-w-6 courier-h-6 courier-animate-spin",children:wa("path",{d:"M21 12a9 9 0 1 1-6.219-8.56"})})}),"Loader");import{forwardRef as Nm}from"react";import{jsx as hn,jsxs as Im}from"react/jsx-runtime";var lr=Nm(({theme:e,children:t,isLoading:r,Header:o},n)=>hn(Wc,{theme:e,ref:n,children:Im("div",{className:"courier-main-layout","data-mode":"light",children:[o&&hn("div",{className:"courier-flex courier-flex-row courier-h-12 courier-flex-shrink-0 courier-w-full courier-bg-primary courier-border-b courier-px-4 courier-items-center courier-gap-4",children:o}),r&&hn("div",{className:"courier-editor-loading",children:hn(to,{})}),hn(Mm,{position:"top-center",expand:!0,visibleToasts:2,style:{position:"absolute",top:"10px",left:"50%",transform:"translateX(-50%)"}}),t]})}));import{z as vt}from"zod";var Uc=vt.object({headerStyle:vt.enum(["plain","border"]),isUnsubscribe:vt.boolean().optional(),isPreferences:vt.boolean().optional(),link:vt.string().optional(),brandColor:vt.string(),textColor:vt.string(),subtleColor:vt.string(),logo:vt.string().optional(),facebookLink:vt.string().optional(),linkedinLink:vt.string().optional(),instagramLink:vt.string().optional(),mediumLink:vt.string().optional(),xLink:vt.string().optional()}),ut={headerStyle:"plain",isUnsubscribe:!1,isPreferences:!1,link:"",brandColor:"#000000",textColor:"#9CA3AF",subtleColor:"#737373",logo:"",facebookLink:"",linkedinLink:"",instagramLink:"",mediumLink:"",xLink:""};var Lm=s(e=>{switch(e.type){case"bold":return"**";case"italic":return"*";case"strike":return"~";case"underline":return"+";default:return""}},"markToMD"),bn=s(e=>{var t,r,o,n,i,a,c,l,u,d,p,m,h,b;switch(e.type){case"variable":return`{{${(t=e.attrs)==null?void 0:t.id}}}`;case"text":{let g=e.text||"";if((r=e.marks)!=null&&r.length){let k=e.marks.map(Lm).filter(Boolean);g=k.join("")+g+k.reverse().join("")}let v=(o=e.marks)==null?void 0:o.find(k=>k.type==="link");return v&&(g=`[${g}](${(n=v.attrs)==null?void 0:n.href})`),g}case"hardBreak":return`
153
- `;case"paragraph":return(((i=e.content)==null?void 0:i.map(bn).join(""))||"")+`
154
-
155
- `;case"heading":{let g=((a=e.attrs)==null?void 0:a.level)||1,v="#".repeat(g)+" ",k=((c=e.content)==null?void 0:c.map(bn).join(""))||"";return v+k+`
156
-
157
- `}case"blockquote":return(((l=e.content)==null?void 0:l.map(bn).join(""))||"").split(`
158
- `).map(v=>`> ${v}`).join(`
159
- `)+`
160
-
161
- `;case"imageBlock":{let g=((u=e.attrs)==null?void 0:u.alt)||"",v=((d=e.attrs)==null?void 0:d.sourcePath)||"",k=(p=e.attrs)==null?void 0:p.link,R=`![${g}](${v})`;return k?`[${R}](${k})
162
-
163
- `:R+`
164
-
165
- `}case"divider":return`---
166
-
167
- `;case"button":{let g=((m=e.attrs)==null?void 0:m.label)||"",v=((h=e.attrs)==null?void 0:h.link)||"#";return`[${g}](${v})
168
-
169
- `}default:return((b=e.content)==null?void 0:b.map(bn).join(""))||""}},"convertNodeToMarkdown");function si(e){return e.content?e.content.map(bn).join("").trim():""}s(si,"convertTiptapToMarkdown");import{useAtom as Ld,useAtomValue as Ko,useSetAtom as Ih}from"jotai";import{forwardRef as Lh,memo as Eh,useCallback as Ji}from"react";import{forwardRef as Em}from"react";import{jsx as Am}from"react/jsx-runtime";var Zc=Em(({children:e},t)=>Am("div",{ref:t,className:"courier-z-30 courier-flex courier-w-full courier-bg-primary courier-h-12 courier-border-b rounded-b-none rounded-t-sm courier-shadow-none courier-justify-between courier-items-center courier-px-4",children:e}));import{CircleCheck as Sm}from"lucide-react";import{useEffect as Rm,useState as Bm,useRef as qc}from"react";import{jsx as Ta,jsxs as _c}from"react/jsx-runtime";var ci=s(({isError:e,isSaving:t,isLoading:r})=>{let[o,n]=Bm(!1),i=qc(t),a=qc(null);return Rm(()=>(r||e||t&&t!==i.current?(a.current&&(clearTimeout(a.current),a.current=null),n(!1)):i.current===!0&&t===!1&&!e&&!r&&(n(!0),a.current&&clearTimeout(a.current),a.current=setTimeout(()=>{n(!1),a.current=null},5e3)),i.current=t,()=>{a.current&&clearTimeout(a.current)}),[t,e,r]),r||t===null?null:t?_c("div",{className:"courier-h-12 courier-flex courier-items-center courier-px-4 courier-text-xs courier-gap-1",children:[Ta(to,{className:"courier-w-4 courier-h-4"}),"Saving..."]}):e?Ta("div",{className:"courier-h-12 courier-flex courier-items-center courier-px-4 courier-text-xs courier-gap-1",children:"Error"}):o?_c("div",{className:"courier-h-12 courier-flex courier-items-center courier-px-4 courier-text-xs courier-gap-1",children:[Ta(Sm,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Saved"]}):null},"Status");import{atom as jc}from"jotai";var jt=jc(null),Or=jc(null);var li=class li{};s(li,"UploadImageAPI"),li.uploadImage=s(async t=>new Promise((r,o)=>{let n=new FileReader;n.onload=()=>{typeof n.result=="string"?r(n.result):o(new Error("Failed to convert image to data URL"))},n.onerror=()=>{o(new Error("Failed to read image file"))},n.readAsDataURL(t)}),"uploadImage");var ka=li,Pa=ka;import{Color as td}from"@tiptap/extension-color";import{Extension as Hm}from"@tiptap/core";import{dropCursor as Dm}from"@tiptap/pm/dropcursor";var Ma=Hm.create({name:"dropCursor",addOptions(){return{color:"currentColor",width:1,class:void 0}},addProseMirrorPlugins(){return[Dm(this.options)]}});import{HardBreak as rd}from"@tiptap/extension-hard-break";import{Extension as Vm}from"@tiptap/core";import{undo as Fm,redo as Om,history as Wm}from"@tiptap/pm/history";var zm=Vm.create({name:"history",addOptions(){return{depth:100,newGroupDelay:500}},addCommands(){return{undo:()=>({state:e,dispatch:t})=>Fm(e,t),redo:()=>({state:e,dispatch:t})=>Om(e,t)}},addProseMirrorPlugins(){return[Wm(this.options)]},addKeyboardShortcuts(){return{"Mod-z":()=>this.editor.commands.undo(),"Shift-Mod-z":()=>this.editor.commands.redo(),"Mod-y":()=>this.editor.commands.redo(),"Mod-\u044F":()=>this.editor.commands.undo(),"Shift-Mod-\u044F":()=>this.editor.commands.redo()}}});import{Placeholder as od}from"@tiptap/extension-placeholder";import{TextAlign as nd}from"@tiptap/extension-text-align";import{Typography as id}from"@tiptap/extension-typography";import{Underline as ad}from"@tiptap/extension-underline";import{StarterKit as sd}from"@tiptap/starter-kit";import{mergeAttributes as u1}from"@tiptap/core";import{Node as $m,mergeAttributes as Um,wrappingInputRule as Zm}from"@tiptap/core";var qm=/^\s*>\s$/,Gc=$m.create({name:"blockquote",addOptions(){return{HTMLAttributes:{}}},content:"block+",group:"block",defining:!0,parseHTML(){return[{tag:"blockquote"}]},renderHTML({HTMLAttributes:e}){return["blockquote",Um(this.options.HTMLAttributes,e),0]},addCommands(){return{setBlockquote:()=>({commands:e})=>e.wrapIn(this.name),toggleBlockquote:()=>({commands:e})=>e.toggleWrap(this.name),unsetBlockquote:()=>({commands:e})=>e.lift(this.name)}},addKeyboardShortcuts(){return{"Mod-Shift-b":()=>this.editor.commands.toggleBlockquote()}},addInputRules(){return[Zm({find:qm,type:this.type})]}});import{ReactNodeViewRenderer as d1}from"@tiptap/react";import{v4 as _m}from"uuid";function Vt(e,t){let r=e.state.tr,o=!1;e.state.doc.descendants((n,i)=>{if(n.type.name===t&&!n.attrs.id){let a=`node-${_m()}`;r.setNodeMarkup(i,void 0,{...n.attrs,id:a}),o=!0}return!1}),o&&e.view.dispatch(r)}s(Vt,"generateNodeIds");import{jsx as Na}from"react/jsx-runtime";var fe=s(({colorProp:e,color:t,active:r,className:o,...n})=>e==="stroke"?Na("path",{className:E(!t&&(r?"courier-stroke-accent-foreground":"courier-stroke-ring"),o),...n}):Na("path",{className:E(!t&&(r?"courier-fill-accent-foreground":"courier-fill-ring"),o),...n}),"Path"),J=s(({width:e=28,height:t=28,...r})=>Na("svg",{width:e,height:t,viewBox:`0 0 ${e} ${t}`,fill:"none",...r}),"Icon");import{jsx as Ia,jsxs as jm}from"react/jsx-runtime";var Kc=s(({color:e="#000000",width:t=19,height:r=10,...o})=>jm(J,{...o,width:t,height:r,children:[Ia("rect",{opacity:"0.6",x:"0.553621",y:"0.876863",width:"16.4923",height:"7.87692",rx:"1.6",stroke:e,strokeWidth:"0.738462"}),Ia("rect",{opacity:"0.9",x:"1.41528",y:"1.73828",width:"14.7692",height:"6.15385",rx:"0.984615",fill:e}),Ia("path",{opacity:"0.6",d:"M17.9075 3.70703C18.4513 3.70703 18.8921 4.14786 18.8921 4.69165V4.9378C18.8921 5.48159 18.4513 5.92242 17.9075 5.92242V3.70703Z",fill:e})]}),"BatteryIcon");import{jsx as Jc}from"react/jsx-runtime";var La=s(({color:e="#DC2626",width:t=13,height:r=13,...o})=>Jc(J,{...o,fill:"none",width:t,height:r,children:Jc("path",{d:"M4.89844 1.625C4.82812 1.625 4.78125 1.67188 4.73438 1.71875L4.28906 2.375H7.6875L7.24219 1.71875C7.21875 1.67188 7.14844 1.625 7.07812 1.625H4.89844ZM9.04688 2.375H9.35156H10.5H10.6875C10.9922 2.375 11.25 2.63281 11.25 2.9375C11.25 3.26562 10.9922 3.5 10.6875 3.5H10.4062L9.84375 11.1172C9.77344 11.9141 9.14062 12.5 8.34375 12.5H3.63281C2.83594 12.5 2.20312 11.9141 2.13281 11.1172L1.57031 3.5H1.3125C0.984375 3.5 0.75 3.26562 0.75 2.9375C0.75 2.63281 0.984375 2.375 1.3125 2.375H1.5H2.625H2.92969L3.79688 1.08594C4.03125 0.734375 4.45312 0.5 4.89844 0.5H7.07812C7.52344 0.5 7.94531 0.734375 8.17969 1.08594L9.04688 2.375ZM9.28125 3.5H2.69531L3.25781 11.0469C3.28125 11.2344 3.44531 11.375 3.63281 11.375H8.34375C8.53125 11.375 8.69531 11.2344 8.71875 11.0469L9.28125 3.5Z",fill:e})}),"BinIcon");import{jsx as Xc}from"react/jsx-runtime";var ro=s(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>Xc(J,{...n,width:r,height:o,children:Xc(fe,{active:t,colorProp:"stroke",stroke:e,strokeWidth:"1.5",strokeLinecap:"round",d:"M1 15V11C1 5.47715 5.47715 1 11 1H15"})}),"BorderRadiusIcon");import{jsx as Ea,jsxs as Gm}from"react/jsx-runtime";var Gt=s(({color:e="#A3A3A3",width:t=16,height:r=16,...o})=>Gm(J,{...o,width:t,height:r,children:[Ea("rect",{y:"2.25",width:"16",height:"1.5",rx:"0.75",fill:e}),Ea("rect",{y:"5.75",width:"16",height:"2.5",rx:"1.25",fill:e}),Ea("rect",{y:"10.25",width:"16",height:"3.5",rx:"1.75",fill:e})]}),"BorderWidthIcon");import{jsx as Yc}from"react/jsx-runtime";var Qc=s(({color:e="#404040",width:t=16,height:r=16,...o})=>Yc(J,{...o,width:t,height:r,viewBox:"0 0 16 16",children:Yc(fe,{d:"M2.28125 1.21875L8 6.96875L13.7188 1.25C14 0.9375 14.4688 0.9375 14.7812 1.25C15.0625 1.53125 15.0625 2 14.7812 2.28125L9.03125 8.03125L14.75 13.75C15.0625 14.0312 15.0625 14.5 14.75 14.7812C14.4688 15.0938 14 15.0938 13.7188 14.7812L7.96875 9.0625L2.25 14.7812C1.96875 15.0938 1.5 15.0938 1.21875 14.7812C0.90625 14.5 0.90625 14.0312 1.21875 13.7188L6.9375 8L1.21875 2.28125C0.90625 2 0.90625 1.53125 1.21875 1.21875C1.5 0.9375 1.96875 0.9375 2.28125 1.21875Z",fill:e})}),"CloseIcon");import{jsx as el}from"react/jsx-runtime";var Aa=s(({color:e,width:t=21,height:r=16,...o})=>el(J,{...o,width:t,height:r,children:el("path",{d:"M2.5 1.5C2.21875 1.5 2 1.75 2 2V11C2 11.2812 2.21875 11.5 2.5 11.5H18.5C18.75 11.5 19 11.2812 19 11V2C19 1.75 18.75 1.5 18.5 1.5H2.5ZM0.5 2C0.5 0.90625 1.375 0 2.5 0H18.5C19.5938 0 20.5 0.90625 20.5 2V11C20.5 12.125 19.5938 13 18.5 13H2.5C1.375 13 0.5 12.125 0.5 11V2ZM4.25 14.5H16.75C17.1562 14.5 17.5 14.8438 17.5 15.25C17.5 15.6875 17.1562 16 16.75 16H4.25C3.8125 16 3.5 15.6875 3.5 15.25C3.5 14.8438 3.8125 14.5 4.25 14.5Z",fill:e})}),"DesktopIcon");import{jsx as tl}from"react/jsx-runtime";var Sa=s(({color:e="#171717",width:t=12,height:r=13,...o})=>tl(J,{...o,fill:"none",width:t,height:r,children:tl("path",{d:"M1.5 11.375H6.75C6.9375 11.375 7.125 11.2109 7.125 11V9.5H8.25V11C8.25 11.8438 7.57031 12.5 6.75 12.5H1.5C0.65625 12.5 0 11.8438 0 11V5.75C0 4.92969 0.65625 4.25 1.5 4.25H3V5.375H1.5C1.28906 5.375 1.125 5.5625 1.125 5.75V11C1.125 11.2109 1.28906 11.375 1.5 11.375ZM5.25 7.625H10.5C10.6875 7.625 10.875 7.46094 10.875 7.25V2C10.875 1.8125 10.6875 1.625 10.5 1.625H5.25C5.03906 1.625 4.875 1.8125 4.875 2V7.25C4.875 7.46094 5.03906 7.625 5.25 7.625ZM3.75 7.25V2C3.75 1.17969 4.40625 0.5 5.25 0.5H10.5C11.3203 0.5 12 1.17969 12 2V7.25C12 8.09375 11.3203 8.75 10.5 8.75H5.25C4.40625 8.75 3.75 8.09375 3.75 7.25Z",fill:e})}),"DuplicateIcon");import{jsx as rl}from"react/jsx-runtime";var Ra=s(({color:e="#737373",width:t=16,height:r=16,...o})=>rl(J,{...o,width:t,height:r,children:rl(fe,{d:"M10.25 1H14.25C14.6562 1 15 1.34375 15 1.75V5.75C15 6.1875 14.6562 6.5 14.25 6.5C13.8125 6.5 13.5 6.1875 13.5 5.75V3.5625L9.03125 8L13.5 12.4688V10.25C13.5 9.84375 13.8125 9.5 14.25 9.5C14.6562 9.5 15 9.84375 15 10.25V14.25C15 14.6875 14.6562 15 14.25 15H10.25C9.8125 15 9.5 14.6875 9.5 14.25C9.5 13.8438 9.8125 13.5 10.25 13.5H12.4375L8 9.0625L3.53125 13.5H5.75C6.15625 13.5 6.5 13.8438 6.5 14.25C6.5 14.6875 6.15625 15 5.75 15H1.75C1.3125 15 1 14.6875 1 14.25V10.25C1 9.84375 1.3125 9.5 1.75 9.5C2.15625 9.5 2.5 9.84375 2.5 10.25V12.4688L6.9375 8L2.5 3.5625V5.75C2.5 6.1875 2.15625 6.5 1.75 6.5C1.3125 6.5 1 6.1875 1 5.75V1.75C1 1.34375 1.3125 1 1.75 1H5.75C6.15625 1 6.5 1.34375 6.5 1.75C6.5 2.1875 6.15625 2.5 5.75 2.5H3.53125L8 6.96875L12.4375 2.5H10.25C9.8125 2.5 9.5 2.1875 9.5 1.75C9.5 1.34375 9.8125 1 10.25 1Z",fill:e})}),"ExpandIcon");import{jsx as ol}from"react/jsx-runtime";var vn=s(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>ol(J,{...n,width:r,height:o,children:ol(fe,{d:"M16 8C16 12.0938 12.9062 15.4688 8.96875 15.9688V10.4688H11.125L11.5625 8H8.96875V7.15625C8.96875 5.84375 9.46875 5.34375 10.7812 5.34375C11.1875 5.34375 11.5 5.375 11.6875 5.375V3.1875C11.3438 3.0625 10.4688 2.96875 9.96875 2.96875C7.28125 2.96875 6.0625 4.25 6.0625 6.96875V8H4.40625V10.4688H6.0625V15.7812C2.5625 14.9062 0 11.75 0 8C0 3.59375 3.5625 0 8 0C12.4062 0 16 3.59375 16 8Z",active:t,fill:e})}),"FacebookIcon");import{jsx as nl}from"react/jsx-runtime";var Ba=s(({color:e="#737373",width:t=14,height:r=16,...o})=>nl(J,{...o,width:t,height:r,children:nl(fe,{d:"M0 2.75C0 2.34375 0.3125 2 0.75 2H13.25C13.6562 2 14 2.34375 14 2.75C14 3.1875 13.6562 3.5 13.25 3.5H0.75C0.3125 3.5 0 3.1875 0 2.75ZM2 7.75C2 7.34375 2.3125 7 2.75 7H11.25C11.6562 7 12 7.34375 12 7.75C12 8.1875 11.6562 8.5 11.25 8.5H2.75C2.3125 8.5 2 8.1875 2 7.75ZM9 12.75C9 13.1875 8.65625 13.5 8.25 13.5H5.75C5.3125 13.5 5 13.1875 5 12.75C5 12.3438 5.3125 12 5.75 12H8.25C8.65625 12 9 12.3438 9 12.75Z",fill:e})}),"HamburgerMenuIcon");import{jsx as il}from"react/jsx-runtime";var Ha=s(({color:e="#404040",width:t=16,height:r=20,...o})=>il(J,{...o,width:t,height:r,children:il(fe,{d:"M1.5 12.5V15C1.5 15.2812 1.71875 15.5 2 15.5H14C14.25 15.5 14.5 15.2812 14.5 15V12.5H11.9375L11.2812 13.8125C11.0938 14.25 10.6562 14.5 10.1875 14.5H5.78125C5.3125 14.5 4.875 14.25 4.6875 13.8125L4.03125 12.5H1.5ZM14.1875 11L12.6562 4.90625C12.5938 4.65625 12.4062 4.5 12.1875 4.5H3.8125C3.5625 4.5 3.375 4.65625 3.3125 4.90625L1.78125 11H4.1875C4.65625 11 5.09375 11.2812 5.3125 11.7188L5.9375 13H10.0312L10.6875 11.7188C10.875 11.2812 11.3125 11 11.7812 11H14.1875ZM0 12.25C0 12.0938 0 11.9375 0.03125 11.7812L1.84375 4.53125C2.09375 3.625 2.875 3 3.8125 3H12.1875C13.0938 3 13.9062 3.625 14.125 4.53125L15.9375 11.7812C15.9688 11.9375 16 12.0938 16 12.25V15C16 16.125 15.0938 17 14 17H2C0.875 17 0 16.125 0 15V12.25Z",fill:e})}),"InboxIcon");import{jsx as al}from"react/jsx-runtime";var yn=s(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>al(J,{...n,width:r,height:o,children:al(fe,{d:"M8 4.40625C9.96875 4.40625 11.5938 6.03125 11.5938 8C11.5938 10 9.96875 11.5938 8 11.5938C6 11.5938 4.40625 10 4.40625 8C4.40625 6.03125 6 4.40625 8 4.40625ZM8 10.3438C9.28125 10.3438 10.3125 9.3125 10.3125 8C10.3125 6.71875 9.28125 5.6875 8 5.6875C6.6875 5.6875 5.65625 6.71875 5.65625 8C5.65625 9.3125 6.71875 10.3438 8 10.3438ZM12.5625 4.28125C12.5625 3.8125 12.1875 3.4375 11.7188 3.4375C11.25 3.4375 10.875 3.8125 10.875 4.28125C10.875 4.75 11.25 5.125 11.7188 5.125C12.1875 5.125 12.5625 4.75 12.5625 4.28125ZM14.9375 5.125C15 6.28125 15 9.75 14.9375 10.9062C14.875 12.0312 14.625 13 13.8125 13.8438C13 14.6562 12 14.9062 10.875 14.9688C9.71875 15.0312 6.25 15.0312 5.09375 14.9688C3.96875 14.9062 3 14.6562 2.15625 13.8438C1.34375 13 1.09375 12.0312 1.03125 10.9062C0.96875 9.75 0.96875 6.28125 1.03125 5.125C1.09375 4 1.34375 3 2.15625 2.1875C3 1.375 3.96875 1.125 5.09375 1.0625C6.25 1 9.71875 1 10.875 1.0625C12 1.125 13 1.375 13.8125 2.1875C14.625 3 14.875 4 14.9375 5.125ZM13.4375 12.125C13.8125 11.2188 13.7188 9.03125 13.7188 8C13.7188 7 13.8125 4.8125 13.4375 3.875C13.1875 3.28125 12.7188 2.78125 12.125 2.5625C11.1875 2.1875 9 2.28125 8 2.28125C6.96875 2.28125 4.78125 2.1875 3.875 2.5625C3.25 2.8125 2.78125 3.28125 2.53125 3.875C2.15625 4.8125 2.25 7 2.25 8C2.25 9.03125 2.15625 11.2188 2.53125 12.125C2.78125 12.75 3.25 13.2188 3.875 13.4688C4.78125 13.8438 6.96875 13.75 8 13.75C9 13.75 11.1875 13.8438 12.125 13.4688C12.7188 13.2188 13.2188 12.75 13.4375 12.125Z",active:t,fill:e})}),"InstagramIcon");import{jsx as sl}from"react/jsx-runtime";var xn=s(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>sl(J,{...n,width:r,height:o,children:sl(fe,{d:"M14 1C14.5312 1 15 1.46875 15 2.03125V14C15 14.5625 14.5312 15 14 15H1.96875C1.4375 15 1 14.5625 1 14V2.03125C1 1.46875 1.4375 1 1.96875 1H14ZM5.21875 13V6.34375H3.15625V13H5.21875ZM4.1875 5.40625C4.84375 5.40625 5.375 4.875 5.375 4.21875C5.375 3.5625 4.84375 3 4.1875 3C3.5 3 2.96875 3.5625 2.96875 4.21875C2.96875 4.875 3.5 5.40625 4.1875 5.40625ZM13 13V9.34375C13 7.5625 12.5938 6.15625 10.5 6.15625C9.5 6.15625 8.8125 6.71875 8.53125 7.25H8.5V6.34375H6.53125V13H8.59375V9.71875C8.59375 8.84375 8.75 8 9.84375 8C10.9062 8 10.9062 9 10.9062 9.75V13H13Z",active:t,fill:e})}),"LinkedinIcon");import{jsx as cl}from"react/jsx-runtime";var Cn=s(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>cl(J,{...n,width:r,height:o,children:cl(fe,{d:"M5.625 2.34375C8.75 2.34375 11.2812 4.875 11.2812 8C11.2812 11.1562 8.75 13.6875 5.625 13.6875C2.5 13.6875 0 11.1562 0 8C0 4.875 2.5 2.34375 5.625 2.34375ZM14.625 2.65625C16.1875 2.65625 17.4688 5.0625 17.4688 8.03125C17.4688 10.9688 16.1875 13.375 14.625 13.375C13.0625 13.375 11.8125 10.9688 11.8125 8.03125C11.8125 5.0625 13.0625 2.65625 14.625 2.65625ZM19 3.21875C19.5312 3.21875 20 5.375 20 8C20 10.6562 19.5312 12.8125 19 12.8125C18.4375 12.8125 18 10.6562 18 8.03125C18 5.375 18.4375 3.21875 19 3.21875Z",active:t,fill:e})}),"MediumIcon");import{jsx as Da}from"react/jsx-runtime";var Va=s(({color:e,width:t=21,height:r=16,...o})=>Da(J,{...o,width:t,height:r,children:Da("g",{transform:"translate(4, 0)",children:Da("path",{d:"M8.5 1.5V2C8.5 2.28125 8.25 2.5 8 2.5H5C4.71875 2.5 4.5 2.28125 4.5 2V1.5H3.5C2.9375 1.5 2.5 1.96875 2.5 2.5V13.5C2.5 14.0625 2.9375 14.5 3.5 14.5H9.5C10.0312 14.5 10.5 14.0625 10.5 13.5V2.5C10.5 1.96875 10.0312 1.5 9.5 1.5H8.5ZM1 2.5C1 1.125 2.09375 0 3.5 0H9.5C10.875 0 12 1.125 12 2.5V13.5C12 14.9062 10.875 16 9.5 16H3.5C2.09375 16 1 14.9062 1 13.5V2.5Z",fill:e})})}),"MobileIcon");import{jsx as ll}from"react/jsx-runtime";var Fa=s(({color:e="#737373",width:t=14,height:r=16,...o})=>ll(J,{...o,width:t,height:r,children:ll(fe,{d:"M13.5 8C13.5 8.5625 13.1875 9.03125 12.75 9.3125C12.2812 9.59375 11.6875 9.59375 11.25 9.3125C10.7812 9.03125 10.5 8.5625 10.5 8C10.5 7.46875 10.7812 7 11.25 6.71875C11.6875 6.4375 12.2812 6.4375 12.75 6.71875C13.1875 7 13.5 7.46875 13.5 8ZM8.5 8C8.5 8.5625 8.1875 9.03125 7.75 9.3125C7.28125 9.59375 6.6875 9.59375 6.25 9.3125C5.78125 9.03125 5.5 8.5625 5.5 8C5.5 7.46875 5.78125 7 6.25 6.71875C6.6875 6.4375 7.28125 6.4375 7.75 6.71875C8.1875 7 8.5 7.46875 8.5 8ZM2 9.5C1.4375 9.5 0.96875 9.21875 0.6875 8.75C0.40625 8.3125 0.40625 7.71875 0.6875 7.25C0.96875 6.8125 1.4375 6.5 2 6.5C2.53125 6.5 3 6.8125 3.28125 7.25C3.5625 7.71875 3.5625 8.3125 3.28125 8.75C3 9.21875 2.53125 9.5 2 9.5Z",fill:e})}),"MoreMenuIcon");import{jsx as ul}from"react/jsx-runtime";var wn=s(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>ul(J,{...n,width:r,height:o,children:ul(fe,{d:"M14.25 0C14.6562 0 15 0.34375 15 0.75V15.25C15 15.6875 14.6562 16 14.25 16C13.8125 16 13.5 15.6875 13.5 15.25V0.75C13.5 0.34375 13.8125 0 14.25 0ZM9.5 11.5V4.5H6.5V11.5H9.5ZM11 4.5V11.5C11 12.3438 10.3125 13 9.5 13H6.5C5.65625 13 5 12.3438 5 11.5V4.5C5 3.6875 5.65625 3 6.5 3H9.5C10.3125 3 11 3.6875 11 4.5ZM2.5 0.75V15.25C2.5 15.6875 2.15625 16 1.75 16C1.3125 16 1 15.6875 1 15.25V0.75C1 0.34375 1.3125 0 1.75 0C2.15625 0 2.5 0.34375 2.5 0.75Z",active:t,fill:e})}),"PaddingHorizontalIcon");import{jsx as dl}from"react/jsx-runtime";var oo=s(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>dl(J,{...n,width:r,height:o,children:dl(fe,{d:"M0 1.75C0 1.34375 0.3125 1 0.75 1H15.25C15.6562 1 16 1.34375 16 1.75C16 2.1875 15.6562 2.5 15.25 2.5H0.75C0.3125 2.5 0 2.1875 0 1.75ZM11.5 6.5H4.5V9.5H11.5V6.5ZM4.5 5H11.5C12.3125 5 13 5.6875 13 6.5V9.5C13 10.3438 12.3125 11 11.5 11H4.5C3.65625 11 3 10.3438 3 9.5V6.5C3 5.6875 3.65625 5 4.5 5ZM0.75 13.5H15.25C15.6562 13.5 16 13.8438 16 14.25C16 14.6875 15.6562 15 15.25 15H0.75C0.3125 15 0 14.6875 0 14.25C0 13.8438 0.3125 13.5 0.75 13.5Z",active:t,fill:e})}),"PaddingVerticalIcon");import{jsx as pl}from"react/jsx-runtime";var Oa=s(({color:e="#171717",width:t=16,height:r=13,...o})=>pl(J,{...o,fill:"none",width:t,height:r,children:pl("path",{d:"M1.39062 0.640625L4.01562 2.67969L4.17969 1.97656C4.29688 1.55469 4.67188 1.25 5.09375 1.25H12.9453C13.5547 1.25 14 1.83594 13.8594 2.42188L13.6016 3.45312C13.5312 3.75781 13.2266 3.94531 12.9219 3.875C12.6172 3.80469 12.4297 3.5 12.5 3.19531L12.7109 2.375H9.78125L8.65625 6.33594L15.2656 11.5156C15.5234 11.7031 15.5703 12.0547 15.3594 12.2891C15.1719 12.5469 14.8203 12.5938 14.5859 12.3828L0.710938 1.50781C0.453125 1.32031 0.40625 0.96875 0.617188 0.734375C0.804688 0.476562 1.15625 0.429688 1.39062 0.640625ZM4.97656 3.42969L7.71875 5.58594L8.60938 2.375H5.23438L4.97656 3.42969ZM8 8.67969L7.4375 10.625H8.75C9.05469 10.625 9.3125 10.8828 9.3125 11.1875C9.3125 11.5156 9.05469 11.75 8.75 11.75H5C4.67188 11.75 4.4375 11.5156 4.4375 11.1875C4.4375 10.8828 4.67188 10.625 5 10.625H6.28906L6.3125 10.4844L7.03906 7.92969L8 8.67969Z",fill:e})}),"RemoveFormattingIcon");import{jsx as Tn,jsxs as Km}from"react/jsx-runtime";var ml=s(({color:e="#000000",width:t=14,height:r=9,...o})=>Tn(J,{...o,width:t,height:r,children:Km("g",{opacity:"0.9",children:[Tn("rect",{x:"0.799805",y:"5.92188",width:"2.46154",height:"2.95385",rx:"0.246154",fill:e}),Tn("rect",{x:"4.24609",y:"4.44531",width:"2.46154",height:"4.43077",rx:"0.246154",fill:e}),Tn("rect",{x:"7.93823",y:"2.72266",width:"2.46154",height:"6.15385",rx:"0.246154",fill:e}),Tn("rect",{x:"11.3845",y:"0.753906",width:"2.46154",height:"8.12308",rx:"0.246154",fill:e})]})}),"SignalIcon");import{jsx as ui,jsxs as Jm}from"react/jsx-runtime";var fl=s(({color:e="#000000",width:t=14,height:r=10,...o})=>ui(J,{...o,width:t,height:r,children:Jm("g",{opacity:"0.9",children:[ui("path",{d:"M13.3282 2.87894C11.7229 1.26255 9.4985 0.261719 7.04045 0.261719C4.57494 0.261719 2.34465 1.26857 0.738281 2.89354L2.13071 4.28604C3.38071 3.01741 5.11881 2.23095 7.04045 2.23095C8.95475 2.23095 10.6867 3.01137 11.9356 4.27141L13.3282 2.87894Z",fill:e}),ui("path",{d:"M11.0654 5.14169C10.0392 4.10437 8.61484 3.46172 7.04045 3.46172C5.45859 3.46172 4.02831 4.11043 3.00102 5.15634L4.39357 6.5489C5.06436 5.85932 6.00246 5.43095 7.04045 5.43095C8.07109 5.43095 9.00307 5.85322 9.6729 6.5342L11.0654 5.14169Z",fill:e}),ui("path",{d:"M8.80258 7.40452C8.35559 6.94626 7.73119 6.66172 7.04045 6.66172C6.34225 6.66172 5.71196 6.95239 5.264 7.41931L7.0259 9.18121L8.80258 7.40452Z",fill:e})]})}),"WiFiIcon");import{jsx as gl}from"react/jsx-runtime";var kn=s(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>gl(J,{...n,width:r,height:o,children:gl(fe,{d:"M12.1562 1.5H14.3438L9.53125 7.03125L15.2188 14.5H10.7812L7.28125 9.96875L3.3125 14.5H1.09375L6.25 8.625L0.8125 1.5H5.375L8.5 5.65625L12.1562 1.5ZM11.375 13.1875H12.5938L4.71875 2.75H3.40625L11.375 13.1875Z",active:t,fill:e})}),"XIcon");import{useSortable as Xf}from"@dnd-kit/sortable";import{NodeViewWrapper as Yf}from"@tiptap/react";import{useSetAtom as Qf}from"jotai";import{forwardRef as e1,useCallback as Nn,useEffect as Fl,useState as t1}from"react";import{v4 as r1}from"uuid";import{v4 as $f}from"uuid";import{mergeAttributes as rf,Node as of}from"@tiptap/core";import{ReactNodeViewRenderer as nf}from"@tiptap/react";import{useSetAtom as Qm}from"jotai";import{useCallback as ef}from"react";import{atom as kt}from"jotai";var Wa={contentType:{state:"enabled"},bold:{state:"enabled"},italic:{state:"enabled"},underline:{state:"enabled"},strike:{state:"enabled"},alignLeft:{state:"enabled"},alignCenter:{state:"enabled"},alignRight:{state:"enabled"},alignJustify:{state:"enabled"},quote:{state:"enabled"},link:{state:"enabled"},variable:{state:"enabled"}},di=s((e,t=!1)=>{let r=["paragraph","heading","blockquote"].includes(e);if(r&&t)return{contentType:{state:"enabled"},bold:{state:"enabled"},italic:{state:"enabled"},underline:{state:"enabled"},strike:{state:"enabled"},alignLeft:{state:"hidden"},alignCenter:{state:"hidden"},alignRight:{state:"hidden"},alignJustify:{state:"hidden"},quote:{state:"hidden"},link:{state:"enabled"},variable:{state:"enabled"}};if(r&&!t)return{contentType:{state:"enabled"},bold:{state:"hidden"},italic:{state:"hidden"},underline:{state:"hidden"},strike:{state:"hidden"},alignLeft:{state:"enabled"},alignCenter:{state:"enabled"},alignRight:{state:"enabled"},alignJustify:{state:"enabled"},quote:{state:"enabled"},link:{state:"hidden"},variable:{state:"enabled"}};switch(e){case"button":return{bold:{state:"enabled"},italic:{state:"enabled"},underline:{state:"enabled"},strike:{state:"enabled"}};default:return{contentType:{state:"hidden"},bold:{state:"hidden"},italic:{state:"hidden"},underline:{state:"hidden"},strike:{state:"hidden"},alignLeft:{state:"hidden"},alignCenter:{state:"hidden"},alignRight:{state:"hidden"},alignJustify:{state:"hidden"},quote:{state:"hidden"},link:{state:"hidden"},variable:{state:"hidden"}}}},"getTextMenuConfigForNode");var Xm={paragraph:Wa,heading:Wa},Pn=kt(Xm),ve=kt(null),yt=kt(null,(e,t,r)=>{t(ve,r)}),Ym=kt({ref:null,caretPosition:null}),pi=kt({ref:null,caretPosition:null}),Mn=kt({isFocused:!1,hasVariables:!1,showVariablePopup:!1}),hl=kt(e=>(t,r=!1)=>{let o=e(Pn),n=e(Mn),i=di(t,r),a=o[t],c=i;return a&&Object.keys(a).forEach(l=>{var d,p;let u=l;((d=i[u])==null?void 0:d.state)==="enabled"&&((p=a[u])==null?void 0:p.state)==="enabled"&&(c[u]=a[u])}),n.isFocused&&n.hasVariables&&(c={...c,variable:{state:"enabled"}}),c}),bl=kt(null,(e,t,{nodeName:r,config:o})=>{let n=e(Pn);t(Pn,{...n,[r]:{...n[r],...Object.fromEntries(Object.entries(o).map(([i,a])=>[i,{state:(a==null?void 0:a.state)||"hidden"}]))}})}),j8=kt(null,(e,t,r)=>{let o=e(Pn),{[r]:n,...i}=o;t(Pn,i)}),vl=kt(null,(e,t,{ref:r,caretPosition:o})=>{t(Ym,{ref:r,caretPosition:o})}),G8=kt(null,(e,t,r)=>{let o=e(Mn);t(Mn,{...o,showVariablePopup:r})}),za=kt(null),mi=kt(null,(e,t,r)=>{t(za,r)});import{jsx as Wr}from"react/jsx-runtime";var tf=s(({label:e,alignment:t,size:r,backgroundColor:o,textColor:n,borderWidth:i,borderRadius:a,borderColor:c,padding:l,fontWeight:u,fontStyle:d,isUnderline:p,isStrike:m})=>Wr("div",{className:"courier-w-full node-element",children:Wr("div",{className:"courier-flex",style:{marginTop:`${l}px`,marginBottom:`${l}px`},children:Wr("div",{className:E("courier-inline-flex courier-justify-center courier-px-4 courier-py-2 courier-cursor-pointer courier-text-base",{left:"courier-mr-auto",center:"courier-mx-auto",right:"courier-ml-auto"}[t],r==="full"&&"courier-w-full"),style:{backgroundColor:o,color:n,borderWidth:`${i}px`,borderRadius:`${a}px`,borderColor:c,borderStyle:i>0?"solid":"none",caretColor:"#ff0000",fontWeight:u,fontStyle:d},children:m?Wr("s",{children:p?Wr("u",{children:e}):e}):p?Wr("u",{children:e}):e})})}),"ButtonComponent"),yl=s(e=>{let t=Qm(yt),r=ef(()=>{if(!e.editor.isEditable)return;let o=e.getPos(),n=e.editor.state.doc.nodeAt(o);if(n){e.editor.commands.blur();let i=n.attrs.id;e.editor.state.doc.descendants(a=>a.type.name==="button"&&a.attrs.id===i?(t(a),!1):!0)}},[e,t]);return Wr(ur,{id:e.node.attrs.id,className:E(e.node.attrs.isSelected&&"selected-element"),onClick:r,editor:e.editor,"data-node-type":"button",children:Wr(tf,{...e.node.attrs})})},"ButtonComponentNode");import{v4 as af}from"uuid";var Ne={label:"Button",link:"",alignment:"center",size:"default",backgroundColor:"#0085FF",textColor:"#ffffff",borderWidth:0,borderRadius:0,borderColor:"#000000",padding:6,fontWeight:"normal",fontStyle:"normal",isUnderline:!1,isStrike:!1},fi=of.create({name:"button",group:"block",atom:!0,onCreate(){Vt(this.editor,this.name)},addAttributes(){return{label:{default:Ne.label,parseHTML:e=>e.getAttribute("data-label"),renderHTML:e=>({"data-label":e.label})},link:{default:Ne.link,parseHTML:e=>e.getAttribute("data-link"),renderHTML:e=>({"data-link":e.link})},alignment:{default:Ne.alignment,parseHTML:e=>e.getAttribute("data-alignment"),renderHTML:e=>({"data-alignment":e.alignment})},size:{default:Ne.size,parseHTML:e=>e.getAttribute("data-size"),renderHTML:e=>({"data-size":e.size})},backgroundColor:{default:Ne.backgroundColor,parseHTML:e=>e.getAttribute("data-background-color"),renderHTML:e=>({"data-background-color":e.backgroundColor})},textColor:{default:Ne.textColor,parseHTML:e=>e.getAttribute("data-text-color"),renderHTML:e=>({"data-text-color":e.textColor})},borderWidth:{default:Ne.borderWidth,parseHTML:e=>e.getAttribute("data-border-width"),renderHTML:e=>({"data-border-width":e.borderWidth})},borderRadius:{default:Ne.borderRadius,parseHTML:e=>e.getAttribute("data-border-radius"),renderHTML:e=>({"data-border-radius":e.borderRadius})},borderColor:{default:Ne.borderColor,parseHTML:e=>e.getAttribute("data-border-color"),renderHTML:e=>({"data-border-color":e.borderColor})},padding:{default:Ne.padding,parseHTML:e=>e.getAttribute("data-padding"),renderHTML:e=>({"data-padding":e.padding})},fontWeight:{default:Ne.fontWeight,parseHTML:e=>e.getAttribute("data-font-weight"),renderHTML:e=>({"data-font-weight":e.fontWeight})},fontStyle:{default:Ne.fontStyle,parseHTML:e=>e.getAttribute("data-font-style"),renderHTML:e=>({"data-font-style":e.fontStyle})},isUnderline:{default:Ne.isUnderline,parseHTML:e=>e.getAttribute("data-is-underline"),renderHTML:e=>({"data-is-underline":e.isUnderline})},isStrike:{default:Ne.isStrike,parseHTML:e=>e.getAttribute("data-is-strike"),renderHTML:e=>({"data-is-strike":e.isStrike})},id:{default:()=>`node-${af()}`,parseHTML:e=>e.getAttribute("data-id"),renderHTML:e=>({"data-id":e.id,"data-node-id":e.id})}}},parseHTML(){return[{tag:'div[data-type="button"]'}]},renderHTML({HTMLAttributes:e}){return["div",rf(this.options.HTMLAttributes,e,{"data-type":"button"}),0]},addNodeView(){return nf(yl)},addCommands(){return{toggleBold:()=>({editor:e,chain:t})=>{let{selection:r}=e.state,o=e.state.doc.nodeAt(r.$anchor.pos);if((o==null?void 0:o.type.name)==="button"){let n=o.attrs.fontWeight==="bold"?"normal":"bold";return t().updateAttributes(o.type,{fontWeight:n}).run()}return t().focus().toggleMark("bold").run()},toggleItalic:()=>({editor:e,chain:t})=>{let{selection:r}=e.state,o=e.state.doc.nodeAt(r.$anchor.pos);if((o==null?void 0:o.type.name)==="button"){let n=o.attrs.fontStyle==="italic"?"normal":"italic";return t().updateAttributes(o.type,{fontStyle:n}).run()}return t().focus().toggleMark("italic").run()},toggleUnderline:()=>({editor:e,chain:t})=>{let{selection:r}=e.state,o=e.state.doc.nodeAt(r.$anchor.pos);if((o==null?void 0:o.type.name)==="button"){let n=!o.attrs.isUnderline;return t().updateAttributes(o.type,{isUnderline:n}).run()}return t().focus().toggleMark("underline").run()},toggleStrike:()=>({editor:e,chain:t})=>{let{selection:r}=e.state,o=e.state.doc.nodeAt(r.$anchor.pos);if((o==null?void 0:o.type.name)==="button"){let n=!o.attrs.isStrike;return t().updateAttributes(o.type,{isStrike:n}).run()}return t().focus().toggleMark("strike").run()}}}});import{mergeAttributes as gf}from"@tiptap/core";import{Node as sf,mergeAttributes as cf,isNodeSelection as lf,nodeInputRule as uf}from"@tiptap/core";import{TextSelection as $a,NodeSelection as df}from"@tiptap/pm/state";var xl=sf.create({name:"horizontalRule",addOptions(){return{HTMLAttributes:{}}},group:"block",parseHTML(){return[{tag:"hr"}]},renderHTML({HTMLAttributes:e}){return["hr",cf(this.options.HTMLAttributes,e)]},addCommands(){return{setHorizontalRule:()=>({chain:e,state:t})=>{let{selection:r}=t,{$from:o,$to:n}=r,i=e();return o.parentOffset===0?i.insertContentAt({from:Math.max(o.pos-1,0),to:n.pos},{type:this.name}):lf(r)?i.insertContentAt(n.pos,{type:this.name}):i.insertContent({type:this.name}),i.command(({tr:a,dispatch:c})=>{var l;if(c){let{$to:u}=a.selection,d=u.end();if(u.nodeAfter)u.nodeAfter.isTextblock?a.setSelection($a.create(a.doc,u.pos+1)):u.nodeAfter.isBlock?a.setSelection(df.create(a.doc,u.pos)):a.setSelection($a.create(a.doc,u.pos));else{let p=(l=u.parent.type.contentMatch.defaultType)===null||l===void 0?void 0:l.create();p&&(a.insert(d,p),a.setSelection($a.create(a.doc,d+1)))}a.scrollIntoView()}return!0}).run()}}},addInputRules(){return[uf({find:/^(?:---|—-|___\s|\*\*\*\s)$/,type:this.type})]}});import{ReactNodeViewRenderer as hf}from"@tiptap/react";import{v4 as bf}from"uuid";import{useSetAtom as pf}from"jotai";import{useCallback as mf}from"react";import{jsx as gi}from"react/jsx-runtime";var ff=s(({padding:e,color:t,size:r,radius:o,variant:n="divider"})=>gi("div",{className:"courier-w-full node-element",children:gi("hr",{style:{marginTop:`${e}px`,marginBottom:`${e}px`,backgroundColor:n==="spacer"?"transparent":t,height:`${r}px`,borderRadius:`${o}px`,border:"none"},"data-variant":n})}),"DividerComponent"),Cl=s(e=>{let t=pf(yt),r=mf(()=>{if(!e.editor.isEditable)return;let o=e.getPos(),n=e.editor.state.doc.nodeAt(o);n&&(e.editor.commands.blur(),t(n))},[e,t]);return gi(ur,{id:e.node.attrs.id,className:E(e.node.attrs.isSelected&&"selected-element"),onClick:r,editor:e.editor,children:gi(ff,{...e.node.attrs})})},"DividerComponentNode");var Kt={padding:6,color:"#000000",size:1,radius:0,variant:"divider"},wl={padding:6,color:"transparent",size:1,radius:0,variant:"spacer"},Ua=xl.extend({name:"divider",atom:!0,onCreate(){Vt(this.editor,this.name)},addAttributes(){return{padding:{default:Kt.padding,parseHTML:e=>e.getAttribute("data-padding"),renderHTML:e=>({"data-padding":e.margin})},size:{default:Kt.size,parseHTML:e=>e.getAttribute("data-size"),renderHTML:e=>({"data-size":e.size})},color:{default:Kt.color,parseHTML:e=>e.getAttribute("data-color"),renderHTML:e=>({"data-color":e.color})},width:{default:Kt.size,parseHTML:e=>e.getAttribute("data-size"),renderHTML:e=>({"data-size":e.size})},radius:{default:Kt.radius,parseHTML:e=>e.getAttribute("data-radius"),renderHTML:e=>({"data-radius":e.radius})},variant:{default:Kt.variant,parseHTML:e=>e.getAttribute("data-variant"),renderHTML:e=>({"data-variant":e.variant})},id:{default:()=>`node-${bf()}`,parseHTML:e=>e.getAttribute("data-id"),renderHTML:e=>({"data-id":e.id,"data-node-id":e.id})}}},parseHTML(){return[{tag:'div[data-type="divider"]'}]},renderHTML({HTMLAttributes:e}){return["div",gf(e,{"data-type":"divider"}),["hr"]]},addNodeView(){return hf(Cl)}});import{mergeAttributes as wf,Node as Tf}from"@tiptap/core";import{ReactNodeViewRenderer as kf}from"@tiptap/react";var hi=s(async(e,t)=>{let{apiUrl:r,token:o}=t;if(!e.type.startsWith("image/"))throw new Error(`Invalid file type: ${e.type}. Only image files are supported.`);let n=e.name.split(".").pop()||"",i=`image_${Date.now()}_${Math.random().toString(36).substring(2,10)}.${n}`,c=(await new Promise((l,u)=>{let d=new FileReader;d.onload=()=>{typeof d.result=="string"?l(d.result):u(new Error("Failed to read file as data URL"))},d.onerror=()=>u(d.error),d.readAsDataURL(e)})).split(",")[1];try{let u=await(await fetch(r,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${o}`},body:JSON.stringify({query:`
146
+ `,variables:{input:{tenantId:n,notificationId:i,version:s}}})}),g=await p.json();return p.status===200?Vr.success("Template published"):Vr.error("Error publishing template"),g}catch(p){throw Vr.error("Error publishing template"),t(de,p instanceof Error?p.message:"Unknown error"),p}finally{t(Et,!1)}});import{Fragment as rm,jsx as ya}from"react/jsx-runtime";function Qr(){let[,e]=Yr(Yn),[,t]=Yr(Rl),[,r]=Yr(Bl),o=ln(pe),n=ln(et),i=ln(Et),l=ln(de),s=ln(Ce);return{getTenant:e,saveTemplate:t,publishTemplate:r,isTenantLoading:o,isTenantSaving:n,isTenantPublishing:i,tenantError:l,tenantData:s}}a(Qr,"useTemplateActions");var Qp=a(({children:e,templateId:t,tenantId:r,token:o,apiUrl:n})=>{let[,i]=Yr(Ye),[,l]=Yr(Qe),[,s]=Yr(Le),[,c]=Yr(Tr);return Xp(()=>{l(o),s(r),c(t),n&&i(n)},[o,r,t,n,i,l,s,c]),ya(rm,{children:e})},"TemplateProviderContext"),em=a(e=>ya(Jp,{store:Xn,children:ya(Qp,{...e})}),"TemplateProviderComponent"),tm=Yp(em);import{clsx as sm}from"clsx";import{twMerge as lm}from"tailwind-merge";import{v4 as eo}from"uuid";function Hl(e){let t=[],r=e.replace(/\n$/,"").split(`
147
+ `);for(let o=0;o<r.length;o++)om(r[o],t),o<r.length-1&&t.push({type:"hardBreak"});return t}a(Hl,"parseMDContent");function om(e,t){nm(e,t)}a(om,"parseTextLine");function Dl(e,t){t.length!==0&&e.forEach(r=>{r.marks=r.marks||[],t.forEach(o=>{var n,i;(n=r.marks)!=null&&n.some(l=>l.type===o.type)||(i=r.marks)==null||i.push({type:o.type,...o.href&&{attrs:{href:o.href}}})}),r.marks.length===0&&delete r.marks})}a(Dl,"applyMarks");function nm(e,t){if(!e)return;let r=[],o=/\[([^\]]+)\]\(([^)]+)\)/g,n,i=0;for(;(n=o.exec(e))!==null;)n.index>i&&r.push({type:"text",text:e.substring(i,n.index),start:i,end:n.index}),r.push({type:"link",text:n[1],start:n.index,end:n.index+n[1].length,attrs:{href:n[2]}}),i=n.index+n[0].length;i<e.length&&r.push({type:"text",text:e.substring(i),start:i,end:e.length});let l=[];for(let u of r){if(u.type==="link"){l.push(u);continue}let d=0,p=/(\*\*|\*|__|_|~|\+|\{\{[^}]+\}\}|\{\}[^{}]+\{\})/g,g=u.text,b;for(;(b=p.exec(g))!==null;){let v=b.index,f=b[0],y=v+f.length;if(v>d&&l.push({type:"text",text:g.substring(d,v),start:u.start+d,end:u.start+v}),f.startsWith("{{")||f.startsWith("{}")){let h=f.startsWith("{{")?f.slice(2,-2):f.substring(2,f.length-2);l.push({type:"variable",text:f,start:u.start+v,end:u.start+y,attrs:{id:h}})}else l.push({type:"marker",text:f,start:u.start+v,end:u.start+y});d=y}d<g.length&&l.push({type:"text",text:g.substring(d),start:u.start+d,end:u.start+g.length})}l.sort((u,d)=>u.start-d.start);let s=[],c=[];for(let u of l)if(u.type==="text"){let d=[];Vl(u.text,[],d),Dl(d,s),c.push(...d)}else if(u.type==="variable"){let d={type:"variable",attrs:u.attrs};Dl([d],s),c.push(d)}else if(u.type==="link"){let d=[];Vl(u.text,[],d),d.forEach(p=>{var g;p.marks=p.marks||[],p.marks.push({type:"link",attrs:{href:(g=u.attrs)==null?void 0:g.href}})}),c.push(...d)}else if(u.type==="marker"){let d=u.text;if(["**","*","__","_","~","+"].includes(d)){let p=d==="**"||d==="__"?"bold":d==="*"||d==="_"?"italic":d==="~"?"strike":"underline",g=s.findLastIndex(b=>b.text===d);g!==-1?s.splice(g,1):s.push({type:p,text:d,start:u.start})}}t.push(...c)}a(nm,"processMarkdownFormatting");function Vl(e,t,r){if(!e)return;let o=/(\{\{[^}]+\}\}\|\{\}[^{}]+\{\})/g,n,i=0;for(;(n=o.exec(e))!==null;){if(n.index>i){let c=e.substring(i,n.index);r.push({type:"text",text:c,...t.length>0&&{marks:t}})}let l=n[0].startsWith("{{")?n[0].slice(2,-2):n[0].substring(2,n[0].length-2),s=t.some(c=>c.type==="link");r.push({type:"variable",attrs:{id:l,...s&&{inUrlContext:!0}},...t.length>0&&{marks:t}}),i=n.index+n[0].length}if(i<e.length){let l=e.substring(i);r.push({type:"text",text:l,...t.length>0&&{marks:t}})}}a(Vl,"parseTextWithVariables");function kr(e,t){var c,u,d,p,g,b,v,f,y;let r={type:"doc",content:[]};if(!e||!e.elements||e.elements.length===0)return r;let o,n=t==null?void 0:t.channel;for(let h of e.elements)if(h.type==="channel"){let L=h;if(n){if(L.channel===n){o=L.elements;break}}else{o=L.elements;break}}if(!o||o.length===0)return r;let i=a(h=>{var L,w,m;if(h.type==="meta")return[];switch(h.type){case"text":if("content"in h){let C=h.text_style==="h1"?1:h.text_style==="h2"?2:null,P={};if(h.padding){let[k,M]=h.padding.replace(/px/g,"").split(" "),B=parseInt(k),x=parseInt(M);!isNaN(B)&&!isNaN(x)&&(P={paddingVertical:B,paddingHorizontal:x})}let A={};(L=h.border)!=null&&L.enabled&&(A={...h.border.color&&{borderColor:h.border.color},...h.border.size&&{borderWidth:parseInt(h.border.size)},...h.border.radius&&{borderRadius:h.border.radius}});let R=h.content.trim()?Hl(h.content):[];return[{type:C?"heading":"paragraph",attrs:{textAlign:h.align||"left",level:C,id:`node-${eo()}`,...P,...h.color&&{textColor:h.color},...h.background_color&&{backgroundColor:h.background_color},...A},content:R}]}return[];case"action":{let P=n==="inbox"?{backgroundColor:"#000000",textColor:"#ffffff",borderColor:"#000000",borderWidth:1,borderRadius:4}:{};return[{type:"button",attrs:{label:h.content,link:h.href,alignment:h.align==="full"?"center":h.align||"center",size:h.align==="full"?"full":"default",style:h.style,id:`node-${eo()}`,...P,...h.background_color&&{backgroundColor:h.background_color},...h.color&&{textColor:h.color},...h.padding&&{padding:parseInt(h.padding)},...((w=h.border)==null?void 0:w.enabled)&&{...h.border.color&&{borderColor:h.border.color},...h.border.size&&{borderWidth:parseInt(h.border.size)},...h.border.radius&&{borderRadius:h.border.radius}}}}]}case"quote":return[{type:"blockquote",attrs:{textAlign:h.align||"left",id:`node-${eo()}`,...h.border_color&&{borderColor:h.border_color}},content:[{type:"paragraph",attrs:{textAlign:h.align||"left",id:`node-${eo()}`},content:Hl(h.content)}]}];case"image":return[{type:"imageBlock",attrs:{sourcePath:h.src,id:`node-${eo()}`,...h.href&&{link:h.href},...h.align&&{alignment:h.align},...h.alt_text&&{alt:h.alt_text},...h.width&&{width:parseInt(h.width.replace(/%|px/,""))},...((m=h.border)==null?void 0:m.enabled)&&{...h.border.color&&{borderColor:h.border.color},...h.border.size&&{borderWidth:parseInt(h.border.size)},...h.border.radius&&{borderRadius:parseInt(h.border.radius)}}}}];case"divider":return[{type:"divider",attrs:{id:`node-${eo()}`,...h.dividerColor&&{color:h.dividerColor},...h.borderWidth&&{size:parseInt(h.borderWidth)},...h.padding&&{padding:parseInt(h.padding)},variant:h.dividerColor==="transparent"?"spacer":"divider"}}];default:return[]}},"convertNode"),l=[],s=o.flatMap(i);for(let h=0;h<s.length;h++){let L=s[h],w=s[h+1];if(L.type==="button"&&(w==null?void 0:w.type)==="button"&&n==="inbox"){let m={type:"buttonRow",attrs:{id:`node-${eo()}`,button1Label:((c=L.attrs)==null?void 0:c.label)||"Button 1",button1Link:((u=L.attrs)==null?void 0:u.link)||"",button1BackgroundColor:((d=L.attrs)==null?void 0:d.backgroundColor)||"#000000",button1TextColor:((p=L.attrs)==null?void 0:p.textColor)||"#ffffff",button2Label:((g=w.attrs)==null?void 0:g.label)||"Button 2",button2Link:((b=w.attrs)==null?void 0:b.link)||"",button2BackgroundColor:((v=w.attrs)==null?void 0:v.backgroundColor)||"#ffffff",button2TextColor:((f=w.attrs)==null?void 0:f.textColor)||"#000000",padding:((y=L.attrs)==null?void 0:y.padding)||6}};l.push(m),h++}else l.push(L)}return{type:"doc",content:l}}a(kr,"convertElementalToTiptap");function Fl(e,t){t.length!==0&&e.forEach(r=>{r.marks=r.marks||[],t.forEach(o=>{var n,i;(n=r.marks)!=null&&n.some(l=>l.type===o.type)||(i=r.marks)==null||i.push({type:o.type,...o.href&&{attrs:{href:o.href}}})}),r.marks.length===0&&delete r.marks})}a(Fl,"applyMarks");function Ol(e,t,r){if(!e)return;let o=/{{([^}]+)}}/g,n,i=0;for(;(n=o.exec(e))!==null;){if(n.index>i){let l=e.substring(i,n.index);r.push({type:"text",text:l,...t.length>0&&{marks:t}})}r.push({type:"variable",attrs:{id:n[1]},...t.length>0&&{marks:t}}),i=n.index+n[0].length}if(i<e.length){let l=e.substring(i);r.push({type:"text",text:l,...t.length>0&&{marks:t}})}}a(Ol,"parseTextWithVariables");function xa(e){if(!e)return[];let t=[],r=/\[([^\]]+)\]\(([^)]+)\)/g,o,n=0;for(;(o=r.exec(e))!==null;)o.index>n&&t.push({type:"text",text:e.substring(n,o.index),start:n,end:o.index}),t.push({type:"link",text:o[1],start:o.index,end:o.index+o[1].length,attrs:{href:o[2]}}),n=o.index+o[0].length;n<e.length&&t.push({type:"text",text:e.substring(n),start:n,end:e.length});let i=[];for(let c of t){if(c.type==="link"){i.push(c);continue}let u=0,d=/(\*\*|\*|__|_|~|\+|{{[^}]+}})/g,p=c.text,g;for(;(g=d.exec(p))!==null;){let b=g.index,v=g[0],f=b+v.length;if(b>u&&i.push({type:"text",text:p.substring(u,b),start:c.start+u,end:c.start+b}),v.startsWith("{{")){let y=v.slice(2,-2);i.push({type:"variable",text:v,start:c.start+b,end:c.start+f,attrs:{id:y}})}else i.push({type:"marker",text:v,start:c.start+b,end:c.start+f});u=f}u<p.length&&i.push({type:"text",text:p.substring(u),start:c.start+u,end:c.start+p.length})}i.sort((c,u)=>c.start-u.start);let l=[],s=[];for(let c of i)if(c.type==="text"){let u=[];Ol(c.text,[],u),Fl(u,l),s.push(...u)}else if(c.type==="variable"){let u={type:"variable",attrs:c.attrs};Fl([u],l),s.push(u)}else if(c.type==="link"){let u=[];Ol(c.text,[],u),u.forEach(d=>{var p;d.marks=d.marks||[],d.marks.push({type:"link",attrs:{href:(p=c.attrs)==null?void 0:p.href}})}),s.push(...u)}else if(c.type==="marker"){let u=c.text;if(["**","*","__","_","~","+"].includes(u)){let d=u==="**"||u==="__"?"bold":u==="*"||u==="_"?"italic":u==="~"?"strike":"underline",p=l.findLastIndex(g=>g.text===u);p!==-1?l.splice(p,1):l.push({type:d,text:u,start:c.start})}}return s}a(xa,"processMarkdownFormatting");function im(e){let t=[],r=e.split(/\n/);for(let o of r){if(!o.trim())continue;let n=o.match(/^(#{1,6})\s+(.*)$/);if(n){t.push({type:"heading",attrs:{level:n[1].length,textAlign:"left"},content:xa(n[2])});continue}if(o.startsWith(">")){let l=o.slice(1).trim();t.push({type:"blockquote",attrs:{textAlign:"left"},content:[{type:"paragraph",attrs:{textAlign:"left"},content:xa(l)}]});continue}if(o.match(/^-{3,}$/)){t.push({type:"divider"});continue}let i=o.match(/^!\[(.*?)\]\((.*?)(?:\s+"(.*?)")?\)$/);if(i){t.push({type:"imageBlock",attrs:{sourcePath:i[2],alt:i[1]||"",...i[3]&&{title:i[3]}}});continue}t.push({type:"paragraph",attrs:{textAlign:"left"},content:xa(o)})}return t}a(im,"parseBlockContent");function Wl(e){return{type:"doc",content:im(e)}}a(Wl,"convertMarkdownToTiptap");var am=a(e=>{switch(e.type){case"bold":return"**";case"italic":return"*";case"strike":return"~";case"underline":return"+";default:return""}},"markToMD"),Ca=a(e=>{var o,n,i,l;if(e.type==="variable")return`{{${(o=e.attrs)==null?void 0:o.id}}}`;let t=e.text||"";if((n=e.marks)!=null&&n.length){let s=e.marks.map(am).filter(Boolean);t=s.join("")+t+s.reverse().join("")}let r=(i=e.marks)==null?void 0:i.find(s=>s.type==="link");return r&&(t=`[${t}](${(l=r.attrs)==null?void 0:l.href})`),t},"convertTextToMarkdown");function Wt(e){let t=a(r=>{var o,n,i,l,s,c,u,d,p,g,b,v,f,y,h,L,w,m,C,P,A,R,k,M,B,x,E,H,V,j,J,ee,fe,Se,Ve,ae,ye,Ne,ge,Re,pt,_e,at,Te,mt,st,xt,Mt,Nt,qe,Ct,Lt,It,je,T,_,q,oe,X,ue,ne,le,Ge,Be,xr,jr,Gr,N;switch(r.type){case"paragraph":{let S="",D=r.content||[];for(let Y=0;Y<D.length;Y++)D[Y].type==="hardBreak"?S+=`
148
+ `:S+=Ca(D[Y]);S+=`
149
+ `;let K={type:"text",align:((o=r.attrs)==null?void 0:o.textAlign)||"left",content:S};return((n=r.attrs)==null?void 0:n.paddingVertical)!==void 0&&((i=r.attrs)==null?void 0:i.paddingHorizontal)!==void 0&&(K.padding=`${r.attrs.paddingVertical}px ${r.attrs.paddingHorizontal}px`),(l=r.attrs)!=null&&l.textColor&&(K.color=r.attrs.textColor),(s=r.attrs)!=null&&s.backgroundColor&&(K.background_color=r.attrs.backgroundColor),((c=r.attrs)!=null&&c.borderWidth||(u=r.attrs)!=null&&u.borderColor||(d=r.attrs)!=null&&d.borderRadius)&&(K.border={enabled:!0},(p=r.attrs)!=null&&p.borderColor&&(K.border.color=r.attrs.borderColor),(g=r.attrs)!=null&&g.borderWidth&&(K.border.size=`${r.attrs.borderWidth}px`),(b=r.attrs)!=null&&b.borderRadius&&(K.border.radius=r.attrs.borderRadius)),[K]}case"heading":{let S="",D=r.content||[];for(let Y=0;Y<D.length;Y++)D[Y].type==="hardBreak"?S+=`
150
+ `:S+=Ca(D[Y]);S+=`
151
+ `;let K={type:"text",align:((v=r.attrs)==null?void 0:v.textAlign)||"left",content:S,text_style:((f=r.attrs)==null?void 0:f.level)===1?"h1":"h2"};return((y=r.attrs)==null?void 0:y.paddingVertical)!==void 0&&((h=r.attrs)==null?void 0:h.paddingHorizontal)!==void 0&&(K.padding=`${r.attrs.paddingVertical}px ${r.attrs.paddingHorizontal}px`),(L=r.attrs)!=null&&L.textColor&&(K.color=r.attrs.textColor),(w=r.attrs)!=null&&w.backgroundColor&&(K.background_color=r.attrs.backgroundColor),((m=r.attrs)!=null&&m.borderWidth||(C=r.attrs)!=null&&C.borderColor||(P=r.attrs)!=null&&P.borderRadius)&&(K.border={enabled:!0},(A=r.attrs)!=null&&A.borderColor&&(K.border.color=r.attrs.borderColor),(R=r.attrs)!=null&&R.borderWidth&&(K.border.size=`${r.attrs.borderWidth}px`),(k=r.attrs)!=null&&k.borderRadius&&(K.border.radius=r.attrs.borderRadius)),[K]}case"blockquote":{let S="";if(r.content)for(let K of r.content)K.content&&(S+=K.content.map(Ca).join("")),S+=`
152
+ `;S=S.trim();let D={type:"quote",content:S};return((M=r.attrs)==null?void 0:M.textAlign)!=="left"&&(D.align=(B=r.attrs)==null?void 0:B.textAlign),(x=r.attrs)!=null&&x.borderColor&&(D.border_color=r.attrs.borderColor),[D]}case"imageBlock":{let S={type:"image",src:((E=r.attrs)==null?void 0:E.sourcePath)||""};return(H=r.attrs)!=null&&H.link&&(S.href=r.attrs.link),(V=r.attrs)!=null&&V.alignment&&(S.align=r.attrs.alignment),(j=r.attrs)!=null&&j.alt&&(S.alt_text=r.attrs.alt),(J=r.attrs)!=null&&J.width&&(S.width=`${r.attrs.width}%`),((ee=r.attrs)!=null&&ee.borderWidth||(fe=r.attrs)!=null&&fe.borderColor||(Se=r.attrs)!=null&&Se.borderRadius)&&(S.border={enabled:!0},(Ve=r.attrs)!=null&&Ve.borderColor&&(S.border.color=r.attrs.borderColor),(ae=r.attrs)!=null&&ae.borderWidth&&(S.border.size=`${r.attrs.borderWidth}px`),(ye=r.attrs)!=null&&ye.borderRadius&&(S.border.radius=`${r.attrs.borderRadius}px`)),[S]}case"divider":{let S={type:"divider"};return(Ne=r.attrs)!=null&&Ne.color&&(S.dividerColor=r.attrs.color),(ge=r.attrs)!=null&&ge.size&&(S.borderWidth=`${r.attrs.size}px`),(Re=r.attrs)!=null&&Re.padding&&(S.padding=`${r.attrs.padding}px`),[S]}case"button":{let S={type:"action",content:(_e=(pt=r.attrs)==null?void 0:pt.label)!=null?_e:"",href:(Te=(at=r.attrs)==null?void 0:at.link)!=null?Te:"#"};return(mt=r.attrs)!=null&&mt.style&&(S.style=r.attrs.style),S.align=((st=r.attrs)==null?void 0:st.size)==="full"?"full":((xt=r.attrs)==null?void 0:xt.alignment)||"center",(Mt=r.attrs)!=null&&Mt.backgroundColor&&(S.background_color=r.attrs.backgroundColor),(Nt=r.attrs)!=null&&Nt.textColor&&(S.color=r.attrs.textColor),(qe=r.attrs)!=null&&qe.padding&&(S.padding=`${r.attrs.padding}px`),((Ct=r.attrs)!=null&&Ct.borderWidth||(Lt=r.attrs)!=null&&Lt.borderColor||(It=r.attrs)!=null&&It.borderRadius)&&(S.border={enabled:!0},(je=r.attrs)!=null&&je.borderColor&&(S.border.color=r.attrs.borderColor),(T=r.attrs)!=null&&T.borderWidth&&(S.border.size=`${r.attrs.borderWidth}px`),(_=r.attrs)!=null&&_.borderRadius&&(S.border.radius=r.attrs.borderRadius)),[S]}case"buttonRow":{let S={type:"action",content:(oe=(q=r.attrs)==null?void 0:q.button1Label)!=null?oe:"Button 1",href:(ue=(X=r.attrs)==null?void 0:X.button1Link)!=null?ue:"#",align:"left"};(ne=r.attrs)!=null&&ne.button1BackgroundColor&&(S.background_color=r.attrs.button1BackgroundColor),(le=r.attrs)!=null&&le.button1TextColor&&(S.color=r.attrs.button1TextColor);let D={type:"action",content:(Be=(Ge=r.attrs)==null?void 0:Ge.button2Label)!=null?Be:"Button 2",href:(jr=(xr=r.attrs)==null?void 0:xr.button2Link)!=null?jr:"#",align:"left"};return(Gr=r.attrs)!=null&&Gr.button2BackgroundColor&&(D.background_color=r.attrs.button2BackgroundColor),(N=r.attrs)!=null&&N.button2TextColor&&(D.color=r.attrs.button2TextColor),[S,D]}default:return r.content?r.content.flatMap(t):[]}},"convertNode");return e!=null&&e.content?e.content.flatMap(t):[]}a(Wt,"convertTiptapToElemental");function zt(e,t){var l;let r=e||{version:"2022-01-01",elements:[]},o={version:r.version||"2022-01-01",elements:[]},n;typeof t.channel=="string"?n=t.channel:t.channel&&typeof t.channel.channel=="string"?n=t.channel.channel:t.channel;let i=!1;if(r.elements&&Array.isArray(r.elements)&&r.elements.forEach(s=>{var u;let c={...s};if(s.type==="channel"){let d=s,p=!1;if(n?d.channel===n&&(p=!0):i||(p=!0),p){let g={};if(t.channel&&typeof t.channel=="object")for(let v in t.channel)v!=="type"&&v!=="elements"&&v!=="channel"&&Object.prototype.hasOwnProperty.call(t.channel,v)&&(g[v]=t.channel[v]);let b=[];if(t.meta)b.push({type:"meta",...t.meta});else{let v=(u=d.elements)==null?void 0:u.find(f=>f.type==="meta");v&&b.push(v)}b.push(...t.elements),c={type:"channel",channel:d.channel,...Object.fromEntries(Object.entries(d).filter(([v])=>!["type","channel","elements"].includes(v))),...g,elements:b},i=!0}}o.elements.push(c)}),n&&!i||!((l=r.elements)!=null&&l.some(s=>s.type==="channel"))&&!i){let s;n?s=n:t.channel&&typeof t.channel=="object"&&t.channel.channel?s=t.channel.channel:s="email";let c={};if(t.channel&&typeof t.channel=="object")for(let p in t.channel)p!=="type"&&p!=="elements"&&p!=="channel"&&Object.prototype.hasOwnProperty.call(t.channel,p)&&(c[p]=t.channel[p]);let u=[];t.meta&&u.push({type:"meta",...t.meta}),u.push(...t.elements);let d={type:"channel",channel:s,elements:u,...c};o.elements.push(d)}return o}a(zt,"updateElemental");function I(...e){return lm(sm(e))}a(I,"cn");import{Slot as cm}from"@radix-ui/react-slot";import{cva as um}from"class-variance-authority";import{forwardRef as dm}from"react";import{jsx as mm}from"react/jsx-runtime";var pm=um("courier-flex courier-group courier-items-center courier-justify-center courier-border courier-border-transparent courier-gap-2 courier-text-sm courier-font-semibold courier-rounded-md disabled:courier-opacity-50 courier-whitespace-nowrap courier-outline-none",{variants:{variant:{primary:"courier-text-white courier-bg-[#3B82F6] courier-border-[#3B82F6] dark:courier-text-foreground dark:courier-bg-white dark:courier-border-white",secondary:"courier-text-foreground courier-bg-[#F5F5F5]",tertiary:"courier-bg-neutral-50 courier-text-foreground dark:courier-bg-foreground dark:courier-text-white dark:courier-border-foreground",quaternary:"courier-bg-transparent courier-border-transparent courier-text-neutral-500 dark:courier-text-neutral-400",ghost:"hover:courier-bg-accent hover:courier-text-accent-foreground",link:"courier-text-foreground !courier-font-normal hover:courier-text-accent-foreground !courier-p-0 courier-border-none",outline:"!courier-border-border courier-text-foreground dark:courier-text-white dark:courier-border-foreground hover:courier-bg-neutral-100 dark:hover:courier-bg-neutral-800"},size:{medium:"courier-py-2 courier-px-3",small:"courier-py-1 courier-px-2",icon:"courier-w-8 courier-h-8",iconSmall:"courier-w-6 courier-h-6"},active:{true:"",false:""},disabled:{true:"",false:""}},compoundVariants:[{variant:"primary",disabled:!1,active:!1,class:"hover:courier-bg-neutral-800 active:courier-bg-neutral-900 dark:hover:courier-bg-neutral-200 dark:active:courier-bg-neutral-300"},{variant:"primary",active:!0,class:"courier-bg-neutral-900 dark:courier-bg-neutral-300"},{variant:"secondary",disabled:!1,active:!1,class:"hover:courier-bg-neutral-100 active:courier-bg-neutral-200 dark:hover:courier-bg-neutral-900 dark:active:courier-bg-neutral-800"},{variant:"secondary",active:!0,class:"courier-bg-neutral-200 dark:courier-bg-neutral-800"},{variant:"tertiary",disabled:!1,active:!1,class:"hover:courier-bg-neutral-100 active:courier-bg-neutral-200 dark:hover:courier-bg-neutral-800 dark:active:courier-bg-neutral-700"},{variant:"tertiary",active:!0,class:"courier-bg-neutral-200 dark:courier-bg-neutral-800"},{variant:"ghost",disabled:!1,active:!1,class:"hover:courier-bg-black/5 hover:courier-text-neutral-700 active:courier-bg-black/10 active:courier-text-neutral-800 dark:hover:courier-bg-white/10 dark:hover:courier-text-neutral-300 dark:active:courier-text-neutral-200"},{variant:"ghost",active:!0,class:"courier-bg-accent courier-text-accent-foreground [&_svg]:courier-text-accent-foreground dark:courier-bg-white/20 dark:courier-text-neutral-200"}]}),xe=dm(({active:e,buttonSize:t="medium",disabled:r,variant:o="primary",className:n,asChild:i=!1,...l},s)=>mm(i?cm:"button",{ref:s,disabled:r,className:I(pm({variant:o,size:t,disabled:r,active:e}),n),...l}));xe.displayName="Button";import{forwardRef as fm}from"react";import{jsx as gm}from"react/jsx-runtime";var ce=fm((e,t)=>gm("hr",{...e,ref:t,className:I("courier-my-1 courier-border-border dark:courier-border-neutral-800",e.className)}));ce.displayName="Divider";import*as Pr from"react";import*as se from"@radix-ui/react-dropdown-menu";import{Check as hm,ChevronRight as bm,Circle as vm}from"lucide-react";import{jsx as ft,jsxs as wa}from"react/jsx-runtime";var ti=se.Root,ri=se.Trigger;var ym=Pr.forwardRef(({className:e,inset:t,children:r,...o},n)=>wa(se.SubTrigger,{ref:n,className:I("courier-flex courier-cursor-default courier-gap-2 courier-select-none courier-items-center courier-rounded-sm courier-px-2 courier-py-1.5 courier-text-sm courier-outline-none focus:courier-bg-accent data-[state=open]:courier-bg-accent [&_svg]:courier-pointer-events-none [&_svg]:courier-size-4 [&_svg]:courier-shrink-0",t&&"courier-pl-8",e),...o,children:[r,ft(bm,{className:"courier-ml-auto"})]}));ym.displayName=se.SubTrigger.displayName;var xm=Pr.forwardRef(({className:e,...t},r)=>ft(se.SubContent,{ref:r,className:I("courier-z-50 courier-min-w-[8rem] courier-overflow-hidden courier-rounded-md courier-border courier-bg-popover courier-p-1 courier-text-popover-foreground courier-shadow-lg data-[state=open]:courier-animate-in data-[state=closed]:courier-animate-out data-[state=closed]:courier-fade-out-0 data-[state=open]:courier-fade-in-0 data-[state=closed]:courier-zoom-out-95 data-[state=open]:courier-zoom-in-95 data-[side=bottom]:courier-slide-in-from-top-2 data-[side=left]:courier-slide-in-from-right-2 data-[side=right]:courier-slide-in-from-left-2 data-[side=top]:courier-slide-in-from-bottom-2",e),...t}));xm.displayName=se.SubContent.displayName;var cn=Pr.forwardRef(({className:e,sideOffset:t=4,portalProps:r,...o},n)=>ft(se.Portal,{...r,children:ft(se.Content,{ref:n,sideOffset:t,className:I("courier-z-50 courier-min-w-[8rem] courier-overflow-hidden courier-rounded-md courier-border courier-bg-popover courier-p-1 courier-text-popover-foreground courier-shadow-md","data-[state=open]:courier-animate-in data-[state=closed]:courier-animate-out data-[state=closed]:courier-fade-out-0 data-[state=open]:courier-fade-in-0 data-[state=closed]:courier-zoom-out-95 data-[state=open]:courier-zoom-in-95 data-[side=bottom]:courier-slide-in-from-top-2 data-[side=left]:courier-slide-in-from-right-2 data-[side=right]:courier-slide-in-from-left-2 data-[side=top]:courier-slide-in-from-bottom-2",e),...o})}));cn.displayName=se.Content.displayName;var un=Pr.forwardRef(({className:e,inset:t,...r},o)=>ft(se.Item,{ref:o,className:I("courier-relative courier-flex courier-cursor-default courier-select-none courier-items-center courier-gap-2 courier-rounded-sm courier-px-2 courier-py-1.5 courier-text-sm courier-outline-none focus:courier-bg-accent focus:courier-text-foreground data-[disabled]:courier-pointer-events-none data-[disabled]:courier-opacity-50 [&>svg]:courier-size-4 [&>svg]:courier-shrink-0",t&&"courier-pl-8",e),...r}));un.displayName=se.Item.displayName;var Cm=Pr.forwardRef(({className:e,children:t,checked:r,...o},n)=>wa(se.CheckboxItem,{ref:n,className:I("courier-relative courier-flex courier-cursor-default courier-select-none courier-items-center courier-rounded-sm courier-py-1.5 courier-pl-8 courier-pr-2 courier-text-sm courier-outline-none focus:courier-bg-accent focus:courier-text-accent-foreground data-[disabled]:courier-pointer-events-none data-[disabled]:courier-opacity-50",e),checked:r,...o,children:[ft("span",{className:"courier-absolute courier-left-2 courier-flex courier-h-3.5 courier-w-3.5 courier-items-center courier-justify-center",children:ft(se.ItemIndicator,{children:ft(hm,{className:"courier-h-4 courier-w-4"})})}),t]}));Cm.displayName=se.CheckboxItem.displayName;var wm=Pr.forwardRef(({className:e,children:t,...r},o)=>wa(se.RadioItem,{ref:o,className:I("courier-relative courier-flex courier-cursor-default courier-select-none courier-items-center courier-rounded-sm courier-py-1.5 courier-pl-8 courier-pr-2 courier-text-sm courier-outline-none focus:courier-bg-accent focus:courier-text-accent-foreground data-[disabled]:courier-pointer-events-none data-[disabled]:courier-opacity-50",e),...r,children:[ft("span",{className:"courier-absolute courier-left-2 courier-flex courier-h-3.5 courier-w-3.5 courier-items-center courier-justify-center",children:ft(se.ItemIndicator,{children:ft(vm,{className:"courier-h-2 courier-w-2 courier-fill-current"})})}),t]}));wm.displayName=se.RadioItem.displayName;var Tm=Pr.forwardRef(({className:e,inset:t,...r},o)=>ft(se.Label,{ref:o,className:I("courier-px-2 courier-py-1.5 courier-text-sm courier-font-semibold",t&&"courier-pl-8",e),...r}));Tm.displayName=se.Label.displayName;var km=Pr.forwardRef(({className:e,...t},r)=>ft(se.Separator,{ref:r,className:I("courier-mx-1 courier-my-1 courier-h-px courier-bg-muted",e),...t}));km.displayName=se.Separator.displayName;var Pm=a(({className:e,...t})=>ft("span",{className:I("courier-ml-auto courier-text-xs courier-tracking-widest courier-opacity-60",e),...t}),"DropdownMenuShortcut");Pm.displayName="DropdownMenuShortcut";import{Slot as Im}from"@radix-ui/react-slot";import*as gt from"react";import{Controller as Em,FormProvider as Am,useFormContext as Sm}from"react-hook-form";import*as Ta from"@radix-ui/react-label";import{cva as Mm}from"class-variance-authority";import*as zl from"react";import{jsx as Lm}from"react/jsx-runtime";var Nm=Mm("courier-text-sm courier-font-medium courier-leading-none peer-disabled:courier-cursor-not-allowed peer-disabled:courier-opacity-70"),ka=zl.forwardRef(({className:e,...t},r)=>Lm(Ta.Root,{ref:r,className:I(Nm(),e),...t}));ka.displayName=Ta.Root.displayName;import{jsx as Fr}from"react/jsx-runtime";var tt=Am,$l=gt.createContext({}),W=a(({...e})=>Fr($l.Provider,{value:{name:e.name},children:Fr(Em,{...e})}),"FormField"),oi=a(()=>{let e=gt.useContext($l),t=gt.useContext(Ul),{getFieldState:r,formState:o}=Sm(),n=r(e.name,o);if(!e)throw new Error("useFormField should be used within <FormField>");let{id:i}=t;return{id:i,name:e.name,formItemId:`${i}-form-item`,formDescriptionId:`${i}-form-item-description`,formMessageId:`${i}-form-item-message`,...n}},"useFormField"),Ul=gt.createContext({}),F=gt.forwardRef(({className:e,...t},r)=>{let o=gt.useId();return Fr(Ul.Provider,{value:{id:o},children:Fr("div",{ref:r,className:I("courier-space-y-2",e),...t})})});F.displayName="FormItem";var St=gt.forwardRef(({className:e,...t},r)=>{let{error:o,formItemId:n}=oi();return Fr(ka,{ref:r,className:I(o&&"courier-text-destructive",e),htmlFor:n,...t})});St.displayName="FormLabel";var O=gt.forwardRef(({...e},t)=>{let{error:r,formItemId:o,formDescriptionId:n,formMessageId:i}=oi();return Fr(Im,{ref:t,id:o,"aria-describedby":r?`${n} ${i}`:`${n}`,"aria-invalid":!!r,...e})});O.displayName="FormControl";var Rm=gt.forwardRef(({className:e,...t},r)=>{let{formDescriptionId:o}=oi();return Fr("p",{ref:r,id:o,className:I("courier-text-[0.8rem] courier-text-muted-foreground",e),...t})});Rm.displayName="FormDescription";var U=gt.forwardRef(({className:e,children:t,...r},o)=>{let{error:n,formMessageId:i}=oi(),l=n?String(n==null?void 0:n.message):t;return l?Fr("p",{ref:o,id:i,className:I("courier-text-[0.8rem] courier-font-medium courier-text-destructive",e),...r,children:l}):null});U.displayName="FormMessage";import*as Zl from"react";import{jsx as Pa,jsxs as Bm}from"react/jsx-runtime";var re=Zl.forwardRef(({className:e,type:t,startAdornment:r,endAdornment:o,...n},i)=>Bm("div",{className:"courier-relative courier-flex courier-w-full courier-items-center",children:[r&&Pa("div",{className:"courier-absolute courier-left-2 courier-flex courier-items-center courier-pointer-events-none",children:r}),Pa("input",{type:t,className:I("courier-flex courier-w-full courier-rounded-md courier-border-none courier-bg-secondary courier-text-secondary-foreground courier-p-1.5 courier-text-base file:courier-border-0 file:courier-bg-transparent file:courier-text-sm file:courier-font-medium file:courier-text-foreground placeholder:courier-text-muted-foreground focus-visible:courier-outline-none disabled:courier-cursor-not-allowed disabled:courier-opacity-50 md:courier-text-sm",r&&"courier-pl-8",o&&"courier-pr-8",e),ref:i,...n}),o&&Pa("div",{className:"courier-absolute courier-right-2 courier-flex courier-items-center courier-pointer-events-none",children:o})]}));re.displayName="Input";import{forwardRef as Fm,useRef as Om,useMemo as Wm,useCallback as zm}from"react";import{useCallback as Ma,useEffect as _l,useRef as ni,useState as ql}from"react";import{CircleX as Hm}from"lucide-react";import{jsx as nr,jsxs as jl}from"react/jsx-runtime";var Dm=a(e=>e==="transparent"||/^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/.test(e),"isValidHex"),Gl=a(({color:e,onChange:t,className:r,presetColors:o,defaultValue:n="transparent"})=>{let[i,l]=ql(()=>dn(e)),[s,c]=ql(e),u=ni(null),d=ni(null),p=ni(null),g=ni(!1),b=e!==n,v=Ma(w=>{g.current=!0;let m=Vm(w);c(m),t(m),g.current=!1},[t]),f=a(w=>m=>{p.current=w,y(m)},"handleMouseDown"),y=Ma(w=>{if(p.current){if(p.current==="gradient"&&u.current){let m=u.current.getBoundingClientRect(),C=Math.max(0,Math.min(1,(w.clientX-m.left)/m.width)),P=Math.max(0,Math.min(1,(w.clientY-m.top)/m.height)),A={...i,s:C*100,v:(1-P)*100};l(A),v(A)}else if(p.current==="hue"&&d.current){let m=d.current.getBoundingClientRect(),C=Math.max(0,Math.min(1,(w.clientX-m.left)/m.width)),P={...i,h:C*360};l(P),v(P)}}},[i,v]),h=Ma(()=>{p.current=null},[]);_l(()=>{if(p.current)return window.addEventListener("mousemove",y),window.addEventListener("mouseup",h),()=>{window.removeEventListener("mousemove",y),window.removeEventListener("mouseup",h)}},[y,h]),_l(()=>{g.current||(l(dn(e)),c(e))},[e]);let L=a(w=>{let m=w.target.value;if(c(m),Dm(m)){let C=dn(m);l(C),v(C)}},"handleInputChange");return jl("div",{className:I("w-full",r),children:[nr("div",{ref:u,className:"courier-relative courier-h-[160px] courier-w-full courier-cursor-crosshair courier-rounded-lg",style:{backgroundColor:`hsl(${i.h}, 100%, 50%)`,backgroundImage:"linear-gradient(to top, #000, transparent), linear-gradient(to right, #fff, transparent)"},onMouseDown:f("gradient"),children:nr("div",{className:"courier-absolute courier-h-3 courier-w-3 courier-translate-x-[-50%] courier-translate-y-[-50%] courier-rounded-full courier-border-2 courier-border-white",style:{left:`${i.s}%`,top:`${100-i.v}%`}})}),nr("div",{ref:d,className:"courier-relative courier-mt-2 courier-h-3 courier-w-full courier-cursor-pointer courier-rounded",style:{background:"linear-gradient(to right, #f00, #ff0, #0f0, #0ff, #00f, #f0f, #f00)"},onMouseDown:f("hue"),children:nr("div",{className:"courier-absolute courier-h-full courier-w-1 courier-translate-x-[-50%] courier-rounded courier-border courier-border-input courier-bg-background",style:{left:`${i.h/360*100}%`}})}),jl("div",{className:"courier-mt-3 courier-relative courier-flex courier-items-center",children:[nr(re,{value:s,onChange:L,placeholder:"#000000",className:"courier-flex-1"}),b&&nr("button",{onClick:w=>{if(w.preventDefault(),n==="transparent"){t("transparent"),c("transparent"),l({h:0,s:0,v:0});return}let m=dn(n);l(m),v(m)},className:"courier-absolute courier-right-3 courier-flex courier-cursor-pointer courier-items-center courier-justify-center courier-transition-colors",children:nr(Hm,{size:14,strokeWidth:1.25})})]}),nr(ce,{className:"courier-my-3"}),nr("div",{className:"courier-flex courier-flex-wrap courier-gap-1",children:o.map(w=>nr("button",{className:I("courier-h-6 courier-w-6 courier-rounded-md courier-border courier-border-input courier-shrink-0",w==="transparent"&&Na),style:{backgroundColor:w==="transparent"?void 0:w},onClick:m=>{if(m.preventDefault(),w==="transparent"){t("transparent"),c("transparent"),l({h:0,s:0,v:0});return}let C=dn(w);l(C),v(C)}},w))})]})},"ColorPicker");function dn(e){if(e==="transparent")return{h:0,s:0,v:0};let t=parseInt(e.slice(1,3),16)/255,r=parseInt(e.slice(3,5),16)/255,o=parseInt(e.slice(5,7),16)/255,n=Math.max(t,r,o),i=Math.min(t,r,o),l=n-i,s=0,c=n===0?0:l/n,u=n;if(n!==i){switch(n){case t:s=(r-o)/l+(r<o?6:0);break;case r:s=(o-t)/l+2;break;case o:s=(t-r)/l+4;break}s/=6}return{h:s*360,s:c*100,v:u*100}}a(dn,"hexToHsv");function Vm({h:e,s:t,v:r}){t/=100,r/=100,e=e%360/360;let o=a(s=>{let c=(s+e*6)%6;return r-r*t*Math.max(0,Math.min(c,4-c,1))},"f"),n=Math.round(o(5)*255),i=Math.round(o(3)*255),l=Math.round(o(1)*255);return`#${[n,i,l].map(s=>s.toString(16).padStart(2,"0")).join("")}`}a(Vm,"hsvToHex");import*as ir from"@radix-ui/react-popover";import*as Jl from"react";import{jsx as Kl}from"react/jsx-runtime";var Xl=ir.Root,Yl=ir.Trigger;var La=Jl.forwardRef(({className:e,align:t="center",side:r="bottom",sideOffset:o=4,collisionPadding:n=10,avoidCollisions:i=!0,portalProps:l,...s},c)=>Kl(ir.Portal,{...l,children:Kl(ir.Content,{ref:c,side:r,align:t,sideOffset:o,collisionPadding:n,avoidCollisions:i,className:I("courier-z-50 courier-w-72 courier-rounded-md courier-border courier-bg-popover courier-p-4 courier-text-popover-foreground courier-shadow-md courier-outline-none data-[state=open]:courier-animate-in data-[state=closed]:courier-animate-out data-[state=closed]:courier-fade-out-0 data-[state=open]:courier-fade-in-0 data-[state=closed]:courier-zoom-out-95 data-[state=open]:courier-zoom-in-95 data-[side=bottom]:courier-slide-in-from-top-2 data-[side=left]:courier-slide-in-from-right-2 data-[side=right]:courier-slide-in-from-left-2 data-[side=top]:courier-slide-in-from-bottom-2",e),...s})}));La.displayName=ir.Content.displayName;import{jsx as pn,jsxs as Ql}from"react/jsx-runtime";var Na="bg-[url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNOCAwSDBWOEg4VjBaIiBmaWxsPSIjRDlEOUQ5Ii8+PHBhdGggZD0iTTE2IDhIOFYxNkgxNlY4WiIgZmlsbD0iI0Q5RDlEOSIvPjwvc3ZnPg==')]",$m=["#ef4444","#f97316","#eab308","#22c55e","#14b8a6","#06b6d4","#3b82f6","#6366f1","#8b5cf6","#000000","#525252","#a3a3a3","#ffffff","transparent"],Oe=Fm(({className:e,value:t="",onChange:r,defaultValue:o,transparent:n=!0,presetColors:i=$m,...l},s)=>{let c=t!=="transparent",u=Om(null),d=Wm(()=>n?i:i.filter(g=>g!=="transparent"),[i,n]),p=zm(()=>{var b;let g=(b=u.current)==null?void 0:b.parentElement;for(;g;){if(g.classList.contains("lightTheme"))return g;g=g.parentElement}return document.body},[]);return Ql(Xl,{children:[pn(Yl,{asChild:!0,children:Ql("div",{className:"courier-relative courier-flex courier-items-center",ref:u,children:[pn("div",{className:I("courier-absolute courier-left-2 courier-flex courier-h-4 courier-w-4 courier-cursor-pointer courier-items-center courier-justify-center courier-rounded-md courier-border courier-border-input courier-transition-colors courier-z-10",c?"":Na),style:{backgroundColor:c?t:void 0}}),pn(re,{...l,ref:s,readOnly:!0,type:"text",value:t==="transparent"?"Transparent":t,className:I("courier-relative courier-cursor-pointer courier-pl-8",e)})]})}),pn(La,{portalProps:{container:typeof window!="undefined"?p():void 0},className:"courier-w-[230px]",children:pn(Gl,{color:t,onChange:r,presetColors:d,defaultValue:o})})]})});Oe.displayName="InputColor";import*as ec from"react";import*as Ia from"@radix-ui/react-separator";import{jsx as Um}from"react/jsx-runtime";var Ea=ec.forwardRef(({className:e,orientation:t="horizontal",decorative:r=!0,...o},n)=>Um(Ia.Root,{ref:n,decorative:r,orientation:t,className:I("courier-shrink-0 courier-bg-border",t==="horizontal"?"courier-h-[1px] courier-w-full":"courier-h-full courier-w-[1px]",e),...o}));Ea.displayName=Ia.Root.displayName;import*as tc from"react";import*as Mr from"@radix-ui/react-slider";import{jsx as Aa,jsxs as Zm}from"react/jsx-runtime";var Sa=tc.forwardRef(({className:e,...t},r)=>Zm(Mr.Root,{ref:r,className:I("courier-relative courier-flex courier-w-full courier-touch-none courier-select-none courier-items-center",e),...t,children:[Aa(Mr.Track,{className:"courier-relative courier-h-1.5 courier-w-full courier-grow courier-overflow-hidden courier-rounded-full courier-bg-secondary",children:Aa(Mr.Range,{className:"courier-absolute courier-h-full courier-bg-accent-foreground"})}),Aa(Mr.Thumb,{className:"courier-block courier-h-4 courier-w-4 courier-rounded-full courier-bg-accent-foreground courier-shadow courier-transition-colors focus-visible:courier-outline-none focus-visible:courier-ring-1 focus-visible:courier-ring-ring disabled:courier-pointer-events-none disabled:courier-opacity-50"})]}));Sa.displayName=Mr.Root.displayName;import*as oc from"react";import*as mn from"@radix-ui/react-switch";import{jsx as rc}from"react/jsx-runtime";var No=oc.forwardRef(({className:e,...t},r)=>rc(mn.Root,{className:I("courier-peer courier-inline-flex courier-h-5 courier-w-9 courier-shrink-0 courier-cursor-pointer courier-items-center courier-rounded-full courier-border-2 courier-border-transparent courier-shadow-sm courier-transition-colors focus-visible:courier-outline-none focus-visible:courier-ring-2 focus-visible:courier-ring-ring focus-visible:courier-ring-offset-2 focus-visible:courier-ring-offset-background disabled:courier-cursor-not-allowed disabled:courier-opacity-50 data-[state=checked]:courier-bg-accent-foreground data-[state=unchecked]:courier-bg-input",e),...t,ref:r,children:rc(mn.Thumb,{className:I("courier-pointer-events-none courier-block courier-h-4 courier-w-4 courier-rounded-full courier-bg-background courier-shadow-lg courier-ring-0 courier-transition-transform data-[state=checked]:courier-translate-x-4 data-[state=unchecked]:courier-translate-x-0")})}));No.displayName=mn.Root.displayName;import*as ii from"react";import*as $t from"@radix-ui/react-tabs";import{jsx as Ra}from"react/jsx-runtime";var ai=$t.Root,fn=ii.forwardRef(({className:e,...t},r)=>Ra($t.List,{ref:r,className:I("courier-inline-flex courier-h-9 courier-items-center courier-justify-center courier-rounded-md courier-border courier-border-border courier-bg-background courier-p-[3px] courier-text-muted-foreground",e),...t}));fn.displayName=$t.List.displayName;var Lo=ii.forwardRef(({className:e,...t},r)=>Ra($t.Trigger,{ref:r,className:I("courier-inline-flex courier-items-center courier-justify-center courier-whitespace-nowrap courier-rounded-sm courier-px-3 courier-py-1 courier-text-sm courier-font-medium courier-ring-offset-background courier-transition-all focus-visible:courier-outline-none disabled:courier-pointer-events-none disabled:courier-opacity-50 data-[state=active]:courier-bg-accent data-[state=active]:courier-text-accent-foreground",e),...t}));Lo.displayName=$t.Trigger.displayName;var si=ii.forwardRef(({className:e,...t},r)=>Ra($t.Content,{ref:r,className:I("courier-mt-2 courier-ring-offset-background focus-visible:courier-outline-none focus-visible:courier-ring-2 focus-visible:courier-ring-ring focus-visible:courier-ring-offset-2",e),...t}));si.displayName=$t.Content.displayName;import*as Io from"react";import{jsx as _m}from"react/jsx-runtime";var Ba=Io.forwardRef(({className:e,autoResize:t=!1,...r},o)=>{let n=Io.useRef(null),i=a(l=>{n.current=l,typeof o=="function"?o(l):o&&(o.current=l)},"combinedRef");return Io.useEffect(()=>{if(!t)return;let l=n.current;if(!l)return;let s=a(()=>{l.style.height="auto",l.style.height=`${l.scrollHeight}px`},"adjustHeight");return s(),l.addEventListener("input",s),()=>{l.removeEventListener("input",s)}},[t]),_m("textarea",{className:I("courier-flex courier-min-h-[44px] courier-w-full courier-rounded-md courier-border-none courier-bg-secondary courier-text-secondary-foreground courier-p-1.5 courier-text-base courier-placeholder:courier-text-muted-foreground focus-visible:courier-outline-none disabled:courier-cursor-not-allowed disabled:courier-opacity-50 md:courier-text-sm",t&&"courier-resize-none",e),ref:i,...r})});Ba.displayName="Textarea";import{forwardRef as jm,useContext as gv}from"react";import{createContext as qm}from"react";var Eo={background:"#ffffff",foreground:"#292929",muted:"#D9D9D9",mutedForeground:"#A3A3A3",popover:"#ffffff",popoverForeground:"#292929",border:"#DCDEE4",input:"#DCDEE4",card:"#FAF9F8",cardForeground:"#292929",primary:"#ffffff",primaryForeground:"#696F8C",secondary:"#F5F5F5",secondaryForeground:"#171717",accent:"#E5F3FF",accentForeground:"#1D4ED8",destructive:"#292929",destructiveForeground:"#FF3363",ring:"#80849D",radius:"6px"};var nc=qm(Eo);import{jsx as ic}from"react/jsx-runtime";var ac=jm(({children:e,theme:t=Eo},r)=>{let o=typeof t=="string"?Eo:{...Eo,...t},n=typeof t=="string"?{}:Object.entries(t).reduce((i,[l,s])=>{let c=l.replace(/[A-Z]/g,u=>`-${u.toLowerCase()}`);return{...i,[`--${c}`]:s}},{});return ic(nc.Provider,{value:o,children:ic("div",{style:n,className:I("courier-flex courier-flex-col",typeof t=="string"?t:"","lightTheme"),ref:r,children:e})})});import*as sc from"react";import*as Ha from"@radix-ui/react-toggle";import{cva as Gm}from"class-variance-authority";import{jsx as Jm}from"react/jsx-runtime";var Da=Gm("courier-inline-flex courier-items-center courier-justify-center courier-gap-2 courier-rounded-md courier-text-sm courier-font-medium courier-transition-colors hover:courier-bg-secondary hover:courier-text-foreground focus-visible:courier-outline-none focus-visible:courier-ring-1 focus-visible:courier-ring-ring disabled:courier-pointer-events-none disabled:courier-opacity-50 data-[state=on]:courier-bg-accent data-[state=on]:courier-text-accent-foreground [&_svg]:courier-pointer-events-none [&_svg]:courier-size-[30px] [&_svg]:courier-shrink-0",{variants:{variant:{default:"courier-bg-transparent",outline:"courier-border courier-border-input courier-bg-transparent courier-shadow-sm hover:courier-bg-accent hover:courier-text-accent-foreground"},size:{default:"courier-h-9 courier-min-w-9",sm:"courier-h-8 courier-px-1.5 courier-min-w-8",lg:"courier-h-10 courier-px-2.5 courier-min-w-10"}},defaultVariants:{variant:"default",size:"default"}}),Km=sc.forwardRef(({className:e,variant:t,size:r,...o},n)=>Jm(Ha.Root,{ref:n,className:I(Da({variant:t,size:r,className:e})),...o}));Km.displayName=Ha.Root.displayName;import*as Ao from"@radix-ui/react-toggle-group";import*as to from"react";import{jsx as Va}from"react/jsx-runtime";var lc=to.createContext({size:"default",variant:"default"}),Rt=to.forwardRef(({className:e,variant:t,size:r,children:o,...n},i)=>Va(Ao.Root,{ref:i,className:I("courier-flex courier-items-center courier-justify-center courier-gap-1",e),...n,children:Va(lc.Provider,{value:{variant:t,size:r},children:o})}));Rt.displayName=Ao.Root.displayName;var Ie=to.forwardRef(({className:e,children:t,variant:r,size:o,...n},i)=>{let l=to.useContext(lc);return Va(Ao.Item,{ref:i,className:I(Da({variant:l.variant||r,size:l.size||o}),e),...n,children:t})});Ie.displayName=Ao.Item.displayName;import{jsx as Fa}from"react/jsx-runtime";var he=a(({colorProp:e,color:t,active:r,className:o,...n})=>e==="stroke"?Fa("path",{className:I(!t&&(r?"courier-stroke-accent-foreground":"courier-stroke-ring"),o),...n}):Fa("path",{className:I(!t&&(r?"courier-fill-accent-foreground":"courier-fill-ring"),o),...n}),"Path"),G=a(({width:e=28,height:t=28,...r})=>Fa("svg",{width:e,height:t,viewBox:`0 0 ${e} ${t}`,fill:"none",...r}),"Icon");import{jsx as Oa,jsxs as Xm}from"react/jsx-runtime";var cc=a(({color:e="#000000",width:t=19,height:r=10,...o})=>Xm(G,{...o,width:t,height:r,children:[Oa("rect",{opacity:"0.6",x:"0.553621",y:"0.876863",width:"16.4923",height:"7.87692",rx:"1.6",stroke:e,strokeWidth:"0.738462"}),Oa("rect",{opacity:"0.9",x:"1.41528",y:"1.73828",width:"14.7692",height:"6.15385",rx:"0.984615",fill:e}),Oa("path",{opacity:"0.6",d:"M17.9075 3.70703C18.4513 3.70703 18.8921 4.14786 18.8921 4.69165V4.9378C18.8921 5.48159 18.4513 5.92242 17.9075 5.92242V3.70703Z",fill:e})]}),"BatteryIcon");import{jsx as uc}from"react/jsx-runtime";var gn=a(({color:e="#DC2626",width:t=13,height:r=13,...o})=>uc(G,{...o,fill:"none",width:t,height:r,children:uc("path",{d:"M4.89844 1.625C4.82812 1.625 4.78125 1.67188 4.73438 1.71875L4.28906 2.375H7.6875L7.24219 1.71875C7.21875 1.67188 7.14844 1.625 7.07812 1.625H4.89844ZM9.04688 2.375H9.35156H10.5H10.6875C10.9922 2.375 11.25 2.63281 11.25 2.9375C11.25 3.26562 10.9922 3.5 10.6875 3.5H10.4062L9.84375 11.1172C9.77344 11.9141 9.14062 12.5 8.34375 12.5H3.63281C2.83594 12.5 2.20312 11.9141 2.13281 11.1172L1.57031 3.5H1.3125C0.984375 3.5 0.75 3.26562 0.75 2.9375C0.75 2.63281 0.984375 2.375 1.3125 2.375H1.5H2.625H2.92969L3.79688 1.08594C4.03125 0.734375 4.45312 0.5 4.89844 0.5H7.07812C7.52344 0.5 7.94531 0.734375 8.17969 1.08594L9.04688 2.375ZM9.28125 3.5H2.69531L3.25781 11.0469C3.28125 11.2344 3.44531 11.375 3.63281 11.375H8.34375C8.53125 11.375 8.69531 11.2344 8.71875 11.0469L9.28125 3.5Z",fill:e})}),"BinIcon");import{jsx as dc}from"react/jsx-runtime";var ro=a(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>dc(G,{...n,width:r,height:o,children:dc(he,{active:t,colorProp:"stroke",stroke:e,strokeWidth:"1.5",strokeLinecap:"round",d:"M1 15V11C1 5.47715 5.47715 1 11 1H15"})}),"BorderRadiusIcon");import{jsx as Wa,jsxs as Ym}from"react/jsx-runtime";var Ut=a(({color:e="#A3A3A3",width:t=16,height:r=16,...o})=>Ym(G,{...o,width:t,height:r,children:[Wa("rect",{y:"2.25",width:"16",height:"1.5",rx:"0.75",fill:e}),Wa("rect",{y:"5.75",width:"16",height:"2.5",rx:"1.25",fill:e}),Wa("rect",{y:"10.25",width:"16",height:"3.5",rx:"1.75",fill:e})]}),"BorderWidthIcon");import{jsx as pc}from"react/jsx-runtime";var za=a(({color:e,width:t=21,height:r=16,...o})=>pc(G,{...o,width:t,height:r,children:pc("path",{d:"M2.5 1.5C2.21875 1.5 2 1.75 2 2V11C2 11.2812 2.21875 11.5 2.5 11.5H18.5C18.75 11.5 19 11.2812 19 11V2C19 1.75 18.75 1.5 18.5 1.5H2.5ZM0.5 2C0.5 0.90625 1.375 0 2.5 0H18.5C19.5938 0 20.5 0.90625 20.5 2V11C20.5 12.125 19.5938 13 18.5 13H2.5C1.375 13 0.5 12.125 0.5 11V2ZM4.25 14.5H16.75C17.1562 14.5 17.5 14.8438 17.5 15.25C17.5 15.6875 17.1562 16 16.75 16H4.25C3.8125 16 3.5 15.6875 3.5 15.25C3.5 14.8438 3.8125 14.5 4.25 14.5Z",fill:e})}),"DesktopIcon");import{jsx as mc}from"react/jsx-runtime";var $a=a(({color:e="#171717",width:t=12,height:r=13,...o})=>mc(G,{...o,fill:"none",width:t,height:r,children:mc("path",{d:"M1.5 11.375H6.75C6.9375 11.375 7.125 11.2109 7.125 11V9.5H8.25V11C8.25 11.8438 7.57031 12.5 6.75 12.5H1.5C0.65625 12.5 0 11.8438 0 11V5.75C0 4.92969 0.65625 4.25 1.5 4.25H3V5.375H1.5C1.28906 5.375 1.125 5.5625 1.125 5.75V11C1.125 11.2109 1.28906 11.375 1.5 11.375ZM5.25 7.625H10.5C10.6875 7.625 10.875 7.46094 10.875 7.25V2C10.875 1.8125 10.6875 1.625 10.5 1.625H5.25C5.03906 1.625 4.875 1.8125 4.875 2V7.25C4.875 7.46094 5.03906 7.625 5.25 7.625ZM3.75 7.25V2C3.75 1.17969 4.40625 0.5 5.25 0.5H10.5C11.3203 0.5 12 1.17969 12 2V7.25C12 8.09375 11.3203 8.75 10.5 8.75H5.25C4.40625 8.75 3.75 8.09375 3.75 7.25Z",fill:e})}),"DuplicateIcon");import{jsx as fc}from"react/jsx-runtime";var Ua=a(({color:e="#737373",width:t=16,height:r=16,...o})=>fc(G,{...o,width:t,height:r,children:fc(he,{d:"M10.25 1H14.25C14.6562 1 15 1.34375 15 1.75V5.75C15 6.1875 14.6562 6.5 14.25 6.5C13.8125 6.5 13.5 6.1875 13.5 5.75V3.5625L9.03125 8L13.5 12.4688V10.25C13.5 9.84375 13.8125 9.5 14.25 9.5C14.6562 9.5 15 9.84375 15 10.25V14.25C15 14.6875 14.6562 15 14.25 15H10.25C9.8125 15 9.5 14.6875 9.5 14.25C9.5 13.8438 9.8125 13.5 10.25 13.5H12.4375L8 9.0625L3.53125 13.5H5.75C6.15625 13.5 6.5 13.8438 6.5 14.25C6.5 14.6875 6.15625 15 5.75 15H1.75C1.3125 15 1 14.6875 1 14.25V10.25C1 9.84375 1.3125 9.5 1.75 9.5C2.15625 9.5 2.5 9.84375 2.5 10.25V12.4688L6.9375 8L2.5 3.5625V5.75C2.5 6.1875 2.15625 6.5 1.75 6.5C1.3125 6.5 1 6.1875 1 5.75V1.75C1 1.34375 1.3125 1 1.75 1H5.75C6.15625 1 6.5 1.34375 6.5 1.75C6.5 2.1875 6.15625 2.5 5.75 2.5H3.53125L8 6.96875L12.4375 2.5H10.25C9.8125 2.5 9.5 2.1875 9.5 1.75C9.5 1.34375 9.8125 1 10.25 1Z",fill:e})}),"ExpandIcon");import{jsx as gc}from"react/jsx-runtime";var hn=a(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>gc(G,{...n,width:r,height:o,children:gc(he,{d:"M16 8C16 12.0938 12.9062 15.4688 8.96875 15.9688V10.4688H11.125L11.5625 8H8.96875V7.15625C8.96875 5.84375 9.46875 5.34375 10.7812 5.34375C11.1875 5.34375 11.5 5.375 11.6875 5.375V3.1875C11.3438 3.0625 10.4688 2.96875 9.96875 2.96875C7.28125 2.96875 6.0625 4.25 6.0625 6.96875V8H4.40625V10.4688H6.0625V15.7812C2.5625 14.9062 0 11.75 0 8C0 3.59375 3.5625 0 8 0C12.4062 0 16 3.59375 16 8Z",active:t,fill:e})}),"FacebookIcon");import{jsx as hc}from"react/jsx-runtime";var Za=a(({color:e="#737373",width:t=14,height:r=16,...o})=>hc(G,{...o,width:t,height:r,children:hc(he,{d:"M0 2.75C0 2.34375 0.3125 2 0.75 2H13.25C13.6562 2 14 2.34375 14 2.75C14 3.1875 13.6562 3.5 13.25 3.5H0.75C0.3125 3.5 0 3.1875 0 2.75ZM2 7.75C2 7.34375 2.3125 7 2.75 7H11.25C11.6562 7 12 7.34375 12 7.75C12 8.1875 11.6562 8.5 11.25 8.5H2.75C2.3125 8.5 2 8.1875 2 7.75ZM9 12.75C9 13.1875 8.65625 13.5 8.25 13.5H5.75C5.3125 13.5 5 13.1875 5 12.75C5 12.3438 5.3125 12 5.75 12H8.25C8.65625 12 9 12.3438 9 12.75Z",fill:e})}),"HamburgerMenuIcon");import{jsx as bc,jsxs as Qm}from"react/jsx-runtime";var li=a(({color:e="#404040",width:t=18,height:r=20,...o})=>Qm(G,{...o,width:t,height:r,children:[bc("path",{d:"M13 4.5H3C2.71875 4.5 2.5 4.75 2.5 5V15C2.5 15.2812 2.71875 15.5 3 15.5H13C13.25 15.5 13.5 15.2812 13.5 15V5C13.5 4.75 13.25 4.5 13 4.5ZM3 3H13C14.0938 3 15 3.90625 15 5V15C15 16.125 14.0938 17 13 17H3C1.875 17 1 16.125 1 15V5C1 3.90625 1.875 3 3 3Z",fill:e}),bc("circle",{cx:"2",cy:"2",r:"3",transform:"matrix(-1 0 0 1 16 2)",fill:e,stroke:"white",strokeWidth:"2"})]}),"InAppIcon");import{jsx as vc}from"react/jsx-runtime";var _a=a(({color:e="#404040",width:t=16,height:r=20,...o})=>vc(G,{...o,width:t,height:r,children:vc(he,{d:"M1.5 12.5V15C1.5 15.2812 1.71875 15.5 2 15.5H14C14.25 15.5 14.5 15.2812 14.5 15V12.5H11.9375L11.2812 13.8125C11.0938 14.25 10.6562 14.5 10.1875 14.5H5.78125C5.3125 14.5 4.875 14.25 4.6875 13.8125L4.03125 12.5H1.5ZM14.1875 11L12.6562 4.90625C12.5938 4.65625 12.4062 4.5 12.1875 4.5H3.8125C3.5625 4.5 3.375 4.65625 3.3125 4.90625L1.78125 11H4.1875C4.65625 11 5.09375 11.2812 5.3125 11.7188L5.9375 13H10.0312L10.6875 11.7188C10.875 11.2812 11.3125 11 11.7812 11H14.1875ZM0 12.25C0 12.0938 0 11.9375 0.03125 11.7812L1.84375 4.53125C2.09375 3.625 2.875 3 3.8125 3H12.1875C13.0938 3 13.9062 3.625 14.125 4.53125L15.9375 11.7812C15.9688 11.9375 16 12.0938 16 12.25V15C16 16.125 15.0938 17 14 17H2C0.875 17 0 16.125 0 15V12.25Z",fill:e})}),"InboxIcon");import{jsx as yc}from"react/jsx-runtime";var bn=a(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>yc(G,{...n,width:r,height:o,children:yc(he,{d:"M8 4.40625C9.96875 4.40625 11.5938 6.03125 11.5938 8C11.5938 10 9.96875 11.5938 8 11.5938C6 11.5938 4.40625 10 4.40625 8C4.40625 6.03125 6 4.40625 8 4.40625ZM8 10.3438C9.28125 10.3438 10.3125 9.3125 10.3125 8C10.3125 6.71875 9.28125 5.6875 8 5.6875C6.6875 5.6875 5.65625 6.71875 5.65625 8C5.65625 9.3125 6.71875 10.3438 8 10.3438ZM12.5625 4.28125C12.5625 3.8125 12.1875 3.4375 11.7188 3.4375C11.25 3.4375 10.875 3.8125 10.875 4.28125C10.875 4.75 11.25 5.125 11.7188 5.125C12.1875 5.125 12.5625 4.75 12.5625 4.28125ZM14.9375 5.125C15 6.28125 15 9.75 14.9375 10.9062C14.875 12.0312 14.625 13 13.8125 13.8438C13 14.6562 12 14.9062 10.875 14.9688C9.71875 15.0312 6.25 15.0312 5.09375 14.9688C3.96875 14.9062 3 14.6562 2.15625 13.8438C1.34375 13 1.09375 12.0312 1.03125 10.9062C0.96875 9.75 0.96875 6.28125 1.03125 5.125C1.09375 4 1.34375 3 2.15625 2.1875C3 1.375 3.96875 1.125 5.09375 1.0625C6.25 1 9.71875 1 10.875 1.0625C12 1.125 13 1.375 13.8125 2.1875C14.625 3 14.875 4 14.9375 5.125ZM13.4375 12.125C13.8125 11.2188 13.7188 9.03125 13.7188 8C13.7188 7 13.8125 4.8125 13.4375 3.875C13.1875 3.28125 12.7188 2.78125 12.125 2.5625C11.1875 2.1875 9 2.28125 8 2.28125C6.96875 2.28125 4.78125 2.1875 3.875 2.5625C3.25 2.8125 2.78125 3.28125 2.53125 3.875C2.15625 4.8125 2.25 7 2.25 8C2.25 9.03125 2.15625 11.2188 2.53125 12.125C2.78125 12.75 3.25 13.2188 3.875 13.4688C4.78125 13.8438 6.96875 13.75 8 13.75C9 13.75 11.1875 13.8438 12.125 13.4688C12.7188 13.2188 13.2188 12.75 13.4375 12.125Z",active:t,fill:e})}),"InstagramIcon");import{jsx as xc}from"react/jsx-runtime";var vn=a(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>xc(G,{...n,width:r,height:o,children:xc(he,{d:"M14 1C14.5312 1 15 1.46875 15 2.03125V14C15 14.5625 14.5312 15 14 15H1.96875C1.4375 15 1 14.5625 1 14V2.03125C1 1.46875 1.4375 1 1.96875 1H14ZM5.21875 13V6.34375H3.15625V13H5.21875ZM4.1875 5.40625C4.84375 5.40625 5.375 4.875 5.375 4.21875C5.375 3.5625 4.84375 3 4.1875 3C3.5 3 2.96875 3.5625 2.96875 4.21875C2.96875 4.875 3.5 5.40625 4.1875 5.40625ZM13 13V9.34375C13 7.5625 12.5938 6.15625 10.5 6.15625C9.5 6.15625 8.8125 6.71875 8.53125 7.25H8.5V6.34375H6.53125V13H8.59375V9.71875C8.59375 8.84375 8.75 8 9.84375 8C10.9062 8 10.9062 9 10.9062 9.75V13H13Z",active:t,fill:e})}),"LinkedinIcon");import{jsx as Cc}from"react/jsx-runtime";var yn=a(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>Cc(G,{...n,width:r,height:o,children:Cc(he,{d:"M5.625 2.34375C8.75 2.34375 11.2812 4.875 11.2812 8C11.2812 11.1562 8.75 13.6875 5.625 13.6875C2.5 13.6875 0 11.1562 0 8C0 4.875 2.5 2.34375 5.625 2.34375ZM14.625 2.65625C16.1875 2.65625 17.4688 5.0625 17.4688 8.03125C17.4688 10.9688 16.1875 13.375 14.625 13.375C13.0625 13.375 11.8125 10.9688 11.8125 8.03125C11.8125 5.0625 13.0625 2.65625 14.625 2.65625ZM19 3.21875C19.5312 3.21875 20 5.375 20 8C20 10.6562 19.5312 12.8125 19 12.8125C18.4375 12.8125 18 10.6562 18 8.03125C18 5.375 18.4375 3.21875 19 3.21875Z",active:t,fill:e})}),"MediumIcon");import{jsx as qa}from"react/jsx-runtime";var ja=a(({color:e,width:t=21,height:r=16,...o})=>qa(G,{...o,width:t,height:r,children:qa("g",{transform:"translate(4, 0)",children:qa("path",{d:"M8.5 1.5V2C8.5 2.28125 8.25 2.5 8 2.5H5C4.71875 2.5 4.5 2.28125 4.5 2V1.5H3.5C2.9375 1.5 2.5 1.96875 2.5 2.5V13.5C2.5 14.0625 2.9375 14.5 3.5 14.5H9.5C10.0312 14.5 10.5 14.0625 10.5 13.5V2.5C10.5 1.96875 10.0312 1.5 9.5 1.5H8.5ZM1 2.5C1 1.125 2.09375 0 3.5 0H9.5C10.875 0 12 1.125 12 2.5V13.5C12 14.9062 10.875 16 9.5 16H3.5C2.09375 16 1 14.9062 1 13.5V2.5Z",fill:e})})}),"MobileIcon");import{jsx as wc}from"react/jsx-runtime";var Ga=a(({color:e="#737373",width:t=14,height:r=16,...o})=>wc(G,{...o,width:t,height:r,children:wc(he,{d:"M13.5 8C13.5 8.5625 13.1875 9.03125 12.75 9.3125C12.2812 9.59375 11.6875 9.59375 11.25 9.3125C10.7812 9.03125 10.5 8.5625 10.5 8C10.5 7.46875 10.7812 7 11.25 6.71875C11.6875 6.4375 12.2812 6.4375 12.75 6.71875C13.1875 7 13.5 7.46875 13.5 8ZM8.5 8C8.5 8.5625 8.1875 9.03125 7.75 9.3125C7.28125 9.59375 6.6875 9.59375 6.25 9.3125C5.78125 9.03125 5.5 8.5625 5.5 8C5.5 7.46875 5.78125 7 6.25 6.71875C6.6875 6.4375 7.28125 6.4375 7.75 6.71875C8.1875 7 8.5 7.46875 8.5 8ZM2 9.5C1.4375 9.5 0.96875 9.21875 0.6875 8.75C0.40625 8.3125 0.40625 7.71875 0.6875 7.25C0.96875 6.8125 1.4375 6.5 2 6.5C2.53125 6.5 3 6.8125 3.28125 7.25C3.5625 7.71875 3.5625 8.3125 3.28125 8.75C3 9.21875 2.53125 9.5 2 9.5Z",fill:e})}),"MoreMenuIcon");import{jsx as Tc}from"react/jsx-runtime";var xn=a(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>Tc(G,{...n,width:r,height:o,children:Tc(he,{d:"M14.25 0C14.6562 0 15 0.34375 15 0.75V15.25C15 15.6875 14.6562 16 14.25 16C13.8125 16 13.5 15.6875 13.5 15.25V0.75C13.5 0.34375 13.8125 0 14.25 0ZM9.5 11.5V4.5H6.5V11.5H9.5ZM11 4.5V11.5C11 12.3438 10.3125 13 9.5 13H6.5C5.65625 13 5 12.3438 5 11.5V4.5C5 3.6875 5.65625 3 6.5 3H9.5C10.3125 3 11 3.6875 11 4.5ZM2.5 0.75V15.25C2.5 15.6875 2.15625 16 1.75 16C1.3125 16 1 15.6875 1 15.25V0.75C1 0.34375 1.3125 0 1.75 0C2.15625 0 2.5 0.34375 2.5 0.75Z",active:t,fill:e})}),"PaddingHorizontalIcon");import{jsx as kc}from"react/jsx-runtime";var oo=a(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>kc(G,{...n,width:r,height:o,children:kc(he,{d:"M0 1.75C0 1.34375 0.3125 1 0.75 1H15.25C15.6562 1 16 1.34375 16 1.75C16 2.1875 15.6562 2.5 15.25 2.5H0.75C0.3125 2.5 0 2.1875 0 1.75ZM11.5 6.5H4.5V9.5H11.5V6.5ZM4.5 5H11.5C12.3125 5 13 5.6875 13 6.5V9.5C13 10.3438 12.3125 11 11.5 11H4.5C3.65625 11 3 10.3438 3 9.5V6.5C3 5.6875 3.65625 5 4.5 5ZM0.75 13.5H15.25C15.6562 13.5 16 13.8438 16 14.25C16 14.6875 15.6562 15 15.25 15H0.75C0.3125 15 0 14.6875 0 14.25C0 13.8438 0.3125 13.5 0.75 13.5Z",active:t,fill:e})}),"PaddingVerticalIcon");import{jsx as Pc}from"react/jsx-runtime";var Ka=a(({color:e="#404040",width:t=16,height:r=20,...o})=>Pc(G,{...o,width:t,height:r,children:Pc("path",{d:"M8 2C8.53125 2 9 2.46875 9 3V3.625C11.2812 4.0625 13 6.09375 13 8.5V9.3125C13 10.7188 13.4688 12.0938 14.3438 13.2188L14.8125 13.7812C15 14.0312 15.0312 14.3438 14.9062 14.5938C14.7812 14.8438 14.5312 15 14.25 15H1.75C1.4375 15 1.1875 14.8438 1.0625 14.5938C0.9375 14.3438 0.96875 14.0312 1.15625 13.7812L1.625 13.2188C2.5 12.0938 3 10.7188 3 9.3125V8.5C3 6.09375 4.71875 4.0625 7 3.625V3C7 2.46875 7.4375 2 8 2ZM8 5C6.0625 5 4.5 6.59375 4.5 8.5V9.3125C4.5 10.8125 4.0625 12.25 3.25 13.5H12.7188C11.9062 12.25 11.5 10.8125 11.5 9.3125V8.5C11.5 6.59375 9.90625 5 8 5ZM10 16C10 16.5312 9.78125 17.0625 9.40625 17.4375C9.03125 17.8125 8.53125 18 8 18C7.46875 18 6.9375 17.8125 6.5625 17.4375C6.1875 17.0625 6 16.5312 6 16H8H10Z",fill:e})}),"PushIcon");import{jsx as Mc}from"react/jsx-runtime";var Ja=a(({color:e="#171717",width:t=16,height:r=13,...o})=>Mc(G,{...o,fill:"none",width:t,height:r,children:Mc("path",{d:"M1.39062 0.640625L4.01562 2.67969L4.17969 1.97656C4.29688 1.55469 4.67188 1.25 5.09375 1.25H12.9453C13.5547 1.25 14 1.83594 13.8594 2.42188L13.6016 3.45312C13.5312 3.75781 13.2266 3.94531 12.9219 3.875C12.6172 3.80469 12.4297 3.5 12.5 3.19531L12.7109 2.375H9.78125L8.65625 6.33594L15.2656 11.5156C15.5234 11.7031 15.5703 12.0547 15.3594 12.2891C15.1719 12.5469 14.8203 12.5938 14.5859 12.3828L0.710938 1.50781C0.453125 1.32031 0.40625 0.96875 0.617188 0.734375C0.804688 0.476562 1.15625 0.429688 1.39062 0.640625ZM4.97656 3.42969L7.71875 5.58594L8.60938 2.375H5.23438L4.97656 3.42969ZM8 8.67969L7.4375 10.625H8.75C9.05469 10.625 9.3125 10.8828 9.3125 11.1875C9.3125 11.5156 9.05469 11.75 8.75 11.75H5C4.67188 11.75 4.4375 11.5156 4.4375 11.1875C4.4375 10.8828 4.67188 10.625 5 10.625H6.28906L6.3125 10.4844L7.03906 7.92969L8 8.67969Z",fill:e})}),"RemoveFormattingIcon");import{jsx as Cn,jsxs as ef}from"react/jsx-runtime";var Nc=a(({color:e="#000000",width:t=14,height:r=9,...o})=>Cn(G,{...o,width:t,height:r,children:ef("g",{opacity:"0.9",children:[Cn("rect",{x:"0.799805",y:"5.92188",width:"2.46154",height:"2.95385",rx:"0.246154",fill:e}),Cn("rect",{x:"4.24609",y:"4.44531",width:"2.46154",height:"4.43077",rx:"0.246154",fill:e}),Cn("rect",{x:"7.93823",y:"2.72266",width:"2.46154",height:"6.15385",rx:"0.246154",fill:e}),Cn("rect",{x:"11.3845",y:"0.753906",width:"2.46154",height:"8.12308",rx:"0.246154",fill:e})]})}),"SignalIcon");import{jsx as Lc}from"react/jsx-runtime";var Xa=a(({color:e="#404040",width:t=16,height:r=20,...o})=>Lc(G,{...o,width:t,height:r,children:Lc("path",{d:"M5 13.5C5.8125 13.5 6.5 14.1875 6.5 15V15.5L8.75 13.8125C9 13.625 9.3125 13.5 9.65625 13.5H14C14.25 13.5 14.5 13.2812 14.5 13V4C14.5 3.75 14.25 3.5 14 3.5H2C1.71875 3.5 1.5 3.75 1.5 4V13C1.5 13.2812 1.71875 13.5 2 13.5H5ZM6.5 17.375L6.46875 17.4062L6.3125 17.5L5.78125 17.9062C5.625 18.0312 5.4375 18.0312 5.25 17.9688C5.09375 17.875 5 17.7188 5 17.5V16.8438V16.6562V16.625V16.5V15H3.5H2C0.875 15 0 14.125 0 13V4C0 2.90625 0.875 2 2 2H14C15.0938 2 16 2.90625 16 4V13C16 14.125 15.0938 15 14 15H9.65625L6.5 17.375Z",fill:e})}),"SMSIcon");import{jsx as ci,jsxs as tf}from"react/jsx-runtime";var Ic=a(({color:e="#000000",width:t=14,height:r=10,...o})=>ci(G,{...o,width:t,height:r,children:tf("g",{opacity:"0.9",children:[ci("path",{d:"M13.3282 2.87894C11.7229 1.26255 9.4985 0.261719 7.04045 0.261719C4.57494 0.261719 2.34465 1.26857 0.738281 2.89354L2.13071 4.28604C3.38071 3.01741 5.11881 2.23095 7.04045 2.23095C8.95475 2.23095 10.6867 3.01137 11.9356 4.27141L13.3282 2.87894Z",fill:e}),ci("path",{d:"M11.0654 5.14169C10.0392 4.10437 8.61484 3.46172 7.04045 3.46172C5.45859 3.46172 4.02831 4.11043 3.00102 5.15634L4.39357 6.5489C5.06436 5.85932 6.00246 5.43095 7.04045 5.43095C8.07109 5.43095 9.00307 5.85322 9.6729 6.5342L11.0654 5.14169Z",fill:e}),ci("path",{d:"M8.80258 7.40452C8.35559 6.94626 7.73119 6.66172 7.04045 6.66172C6.34225 6.66172 5.71196 6.95239 5.264 7.41931L7.0259 9.18121L8.80258 7.40452Z",fill:e})]})}),"WiFiIcon");import{jsx as Ec}from"react/jsx-runtime";var wn=a(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>Ec(G,{...n,width:r,height:o,children:Ec(he,{d:"M12.1562 1.5H14.3438L9.53125 7.03125L15.2188 14.5H10.7812L7.28125 9.96875L3.3125 14.5H1.09375L6.25 8.625L0.8125 1.5H5.375L8.5 5.65625L12.1562 1.5ZM11.375 13.1875H12.5938L4.71875 2.75H3.40625L11.375 13.1875Z",active:t,fill:e})}),"XIcon");import{CircleCheck as rf}from"lucide-react";import{useEffect as of,useState as nf,useRef as Ac}from"react";import{jsx as Ya}from"react/jsx-runtime";var no=a(({className:e})=>Ya("div",{className:I("courier-flex courier-flex-col courier-items-center courier-justify-center courier-text-ring",e),children:Ya("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"courier-w-6 courier-h-6 courier-animate-spin",children:Ya("path",{d:"M21 12a9 9 0 1 1-6.219-8.56"})})}),"Loader");import{jsx as Qa,jsxs as Sc}from"react/jsx-runtime";var ui=a(({isError:e,isSaving:t,isLoading:r})=>{let[o,n]=nf(!1),i=Ac(t),l=Ac(null);return of(()=>(r||e||t&&t!==i.current?(l.current&&(clearTimeout(l.current),l.current=null),n(!1)):i.current===!0&&t===!1&&!e&&!r&&(n(!0),l.current&&clearTimeout(l.current),l.current=setTimeout(()=>{n(!1),l.current=null},5e3)),i.current=t,()=>{l.current&&clearTimeout(l.current)}),[t,e,r]),r||t===null?null:t?Sc("div",{className:"courier-h-12 courier-flex courier-items-center courier-px-4 courier-text-xs courier-gap-1",children:[Qa(no,{className:"courier-w-4 courier-h-4"}),"Saving..."]}):e?Qa("div",{className:"courier-h-12 courier-flex courier-items-center courier-px-4 courier-text-xs courier-gap-1",children:"Error"}):o?Sc("div",{className:"courier-h-12 courier-flex courier-items-center courier-px-4 courier-text-xs courier-gap-1",children:[Qa(rf,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Saved"]}):null},"Status");import{atom as Rc}from"jotai";import{jsx as di}from"react/jsx-runtime";var So=[{label:"Email",value:"email",icon:di(li,{})},{label:"SMS",value:"sms",icon:di(Xa,{})},{label:"Push",value:"push",icon:di(Ka,{})},{label:"In-app",value:"inbox",icon:di(li,{})}];var pi=Rc("email"),Ro=Rc("template");import{useAtomValue as pa}from"jotai";import{useCallback as fb,useRef as gb}from"react";import{useAtom as cb,useAtomValue as Ep,useSetAtom as Ap}from"jotai";import{useEffect as ub,useMemo as db,useState as pb,useRef as mb,useCallback as Sp}from"react";import{atom as wt}from"jotai";var es={contentType:{state:"enabled"},bold:{state:"enabled"},italic:{state:"enabled"},underline:{state:"enabled"},strike:{state:"enabled"},alignLeft:{state:"enabled"},alignCenter:{state:"enabled"},alignRight:{state:"enabled"},alignJustify:{state:"enabled"},quote:{state:"enabled"},link:{state:"enabled"},variable:{state:"enabled"}},mi=a((e,t=!1)=>{let r=["paragraph","heading","blockquote"].includes(e);if(r&&t)return{contentType:{state:"enabled"},bold:{state:"enabled"},italic:{state:"enabled"},underline:{state:"enabled"},strike:{state:"enabled"},alignLeft:{state:"hidden"},alignCenter:{state:"hidden"},alignRight:{state:"hidden"},alignJustify:{state:"hidden"},quote:{state:"hidden"},link:{state:"enabled"},variable:{state:"enabled"}};if(r&&!t)return{contentType:{state:"enabled"},bold:{state:"hidden"},italic:{state:"hidden"},underline:{state:"hidden"},strike:{state:"hidden"},alignLeft:{state:"enabled"},alignCenter:{state:"enabled"},alignRight:{state:"enabled"},alignJustify:{state:"enabled"},quote:{state:"enabled"},link:{state:"hidden"},variable:{state:"enabled"}};switch(e){case"button":return{bold:{state:"enabled"},italic:{state:"enabled"},underline:{state:"enabled"},strike:{state:"enabled"}};default:return{contentType:{state:"hidden"},bold:{state:"hidden"},italic:{state:"hidden"},underline:{state:"hidden"},strike:{state:"hidden"},alignLeft:{state:"hidden"},alignCenter:{state:"hidden"},alignRight:{state:"hidden"},alignJustify:{state:"hidden"},quote:{state:"hidden"},link:{state:"hidden"},variable:{state:"hidden"}}}},"getTextMenuConfigForNode");var af={paragraph:es,heading:es},Tn=wt(af),be=wt(null),rt=wt(null,(e,t,r)=>{t(be,r)}),sf=wt({ref:null,caretPosition:null}),fi=wt({ref:null,caretPosition:null}),kn=wt({isFocused:!1,hasVariables:!1,showVariablePopup:!1}),Bc=wt(e=>(t,r=!1)=>{let o=e(Tn),n=e(kn),i=mi(t,r),l=o[t],s=i;return l&&Object.keys(l).forEach(c=>{var d,p;let u=c;((d=i[u])==null?void 0:d.state)==="enabled"&&((p=l[u])==null?void 0:p.state)==="enabled"&&(s[u]=l[u])}),n.isFocused&&n.hasVariables&&(s={...s,variable:{state:"enabled"}}),s}),Hc=wt(null,(e,t,{nodeName:r,config:o})=>{let n=e(Tn);t(Tn,{...n,[r]:{...n[r],...Object.fromEntries(Object.entries(o).map(([i,l])=>[i,{state:(l==null?void 0:l.state)||"hidden"}]))}})}),c4=wt(null,(e,t,r)=>{let o=e(Tn),{[r]:n,...i}=o;t(Tn,i)}),Dc=wt(null,(e,t,{ref:r,caretPosition:o})=>{t(sf,{ref:r,caretPosition:o})}),u4=wt(null,(e,t,r)=>{let o=e(kn);t(kn,{...o,showVariablePopup:r})}),ts=wt(null),gi=wt(null,(e,t,r)=>{t(ts,r)});import{atom as Vc}from"jotai";var Zt=Vc(null),ar=Vc(null);import{jsx as Fc,jsxs as lf}from"react/jsx-runtime";var ht=a(({draggable:e=!1,icon:t,draggableLabel:r,label:o})=>lf("div",{className:"courier-flex courier-flex-row courier-items-center courier-gap-2",children:[Fc("div",{className:I("courier-w-8 courier-h-8 courier-rounded-md courier-flex courier-items-center courier-justify-center",e?"courier-cursor-grab courier-bg-[#F5F5F5]":"courier-border"),children:t}),Fc("span",{className:"courier-text-sm courier-font-medium",children:e?r:o})]}),"BlockBase");import{jsx as hi}from"react/jsx-runtime";var cf=a(()=>hi("svg",{width:"20",height:"12",viewBox:"0 0 20 12",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:hi("path",{d:"M18 1.5H2C1.71875 1.5 1.5 1.75 1.5 2V10C1.5 10.2812 1.71875 10.5 2 10.5H18C18.25 10.5 18.5 10.2812 18.5 10V2C18.5 1.75 18.25 1.5 18 1.5ZM2 0H18C19.0938 0 20 0.90625 20 2V10C20 11.125 19.0938 12 18 12H2C0.875 12 0 11.125 0 10V2C0 0.90625 0.875 0 2 0Z",fill:"#171717"})}),"ButtonBlockIcon"),Bo=a(({draggable:e=!1})=>hi(ht,{draggable:e,icon:hi(cf,{}),draggableLabel:"Button",label:"Button block"}),"ButtonBlock");import{jsx as bi}from"react/jsx-runtime";var uf=a(()=>bi("svg",{width:"16",height:"2",viewBox:"0 0 16 2",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:bi("path",{d:"M0 1C0 0.59375 0.3125 0.25 0.75 0.25H15.25C15.6562 0.25 16 0.59375 16 1C16 1.4375 15.6562 1.75 15.25 1.75H0.75C0.3125 1.75 0 1.4375 0 1Z",fill:"#171717"})}),"DividerBlockIcon"),Ho=a(({draggable:e=!1})=>bi(ht,{draggable:e,icon:bi(uf,{}),draggableLabel:"Divider",label:"Divider block"}),"DividerBlock");import{jsx as vi}from"react/jsx-runtime";var df=a(()=>vi("svg",{width:"18",height:"13",viewBox:"0 0 18 13",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:vi("path",{d:"M1.5 1.75V6H8.5V1.75C8.5 1.34375 8.8125 1 9.25 1C9.65625 1 10 1.34375 10 1.75V6.75V12.25C10 12.6875 9.65625 13 9.25 13C8.8125 13 8.5 12.6875 8.5 12.25V7.5H1.5V12.25C1.5 12.6875 1.15625 13 0.75 13C0.3125 13 0 12.6875 0 12.25V6.75V1.75C0 1.34375 0.3125 1 0.75 1C1.15625 1 1.5 1.34375 1.5 1.75ZM15.75 1.75V11.5H17.25C17.6562 11.5 18 11.8438 18 12.25C18 12.6875 17.6562 13 17.25 13H15H12.75C12.3125 13 12 12.6875 12 12.25C12 11.8438 12.3125 11.5 12.75 11.5H14.25V3.03125L13.0938 3.65625C12.75 3.875 12.2812 3.75 12.0938 3.375C11.875 3 12 2.5625 12.375 2.34375L14.625 1.09375C14.8438 0.96875 15.125 0.96875 15.375 1.125C15.5938 1.25 15.75 1.5 15.75 1.75Z",fill:"#171717"})}),"HeadingBlockIcon"),Do=a(({draggable:e=!1})=>vi(ht,{draggable:e,icon:vi(df,{}),draggableLabel:"Heading",label:"Heading block"}),"HeadingBlock");import{jsx as yi}from"react/jsx-runtime";var pf=a(()=>yi("svg",{width:"16",height:"14",viewBox:"0 0 16 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:yi("path",{d:"M14 1.5H2C1.71875 1.5 1.5 1.75 1.5 2V12V12.0312L1.625 11.8438L4.125 8.34375C4.28125 8.125 4.5 8 4.75 8C4.96875 8 5.21875 8.125 5.34375 8.3125L6.3125 9.65625L8.90625 6.3125C9.03125 6.125 9.25 6 9.5 6C9.71875 6 9.9375 6.125 10.0938 6.3125L14.3438 11.8125L14.5 12V2C14.5 1.75 14.25 1.5 14 1.5ZM2 0H14C15.0938 0 16 0.90625 16 2V12C16 13.125 15.0938 14 14 14H2C0.875 14 0 13.125 0 12V2C0 0.90625 0.875 0 2 0ZM4.5 6C3.9375 6 3.46875 5.71875 3.1875 5.25C2.90625 4.8125 2.90625 4.21875 3.1875 3.75C3.46875 3.3125 3.9375 3 4.5 3C5.03125 3 5.5 3.3125 5.78125 3.75C6.0625 4.21875 6.0625 4.8125 5.78125 5.25C5.5 5.71875 5.03125 6 4.5 6Z",fill:"#171717"})}),"ImageBlockIcon"),Vo=a(({draggable:e=!1})=>yi(ht,{draggable:e,icon:yi(pf,{}),draggableLabel:"Image",label:"Image block"}),"ImageBlock");import{AlignVerticalSpaceAround as mf}from"lucide-react";import{jsx as Oc}from"react/jsx-runtime";var Fo=a(({draggable:e=!1})=>Oc(ht,{draggable:e,icon:Oc(mf,{className:"courier-w-4 courier-h-4"}),draggableLabel:"Spacer",label:"Spacer block"}),"SpacerBlock");import{jsx as xi}from"react/jsx-runtime";var ff=a(()=>xi("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:xi("path",{d:"M1.5 1.5V3C1.5 3.4375 1.15625 3.75 0.75 3.75C0.3125 3.75 0 3.4375 0 3V1.25C0 0.5625 0.53125 0 1.25 0H12.75C13.4375 0 14 0.5625 14 1.25V3C14 3.4375 13.6562 3.75 13.25 3.75C12.8125 3.75 12.5 3.4375 12.5 3V1.5H7.75V12.5H9.25C9.65625 12.5 10 12.8438 10 13.25C10 13.6875 9.65625 14 9.25 14H4.75C4.3125 14 4 13.6875 4 13.25C4 12.8438 4.3125 12.5 4.75 12.5H6.25V1.5H1.5Z",fill:"#171717"})}),"TextBlockIcon"),Oo=a(({draggable:e=!1})=>xi(ht,{draggable:e,icon:xi(ff,{}),draggableLabel:"Text",label:"Text block"}),"TextBlock");import{Toaster as gf}from"sonner";import{forwardRef as hf}from"react";import{jsx as Pn,jsxs as bf}from"react/jsx-runtime";var sr=hf(({theme:e,children:t,isLoading:r,Header:o},n)=>Pn(ac,{theme:e,ref:n,children:bf("div",{className:"courier-main-layout","data-mode":"light",children:[o&&Pn("div",{className:"courier-flex courier-flex-row courier-min-h-12 courier-flex-shrink-0 courier-w-full courier-bg-primary courier-border-b courier-px-4 courier-items-center courier-gap-4",children:o}),r&&Pn("div",{className:"courier-editor-loading",children:Pn(no,{})}),Pn(gf,{position:"top-center",expand:!0,visibleToasts:2,style:{position:"absolute",top:"10px",left:"50%",transform:"translateX(-50%)"}}),t]})}));import{closestCenter as Id,DndContext as sh,DragOverlay as lh,getFirstCollision as ch,KeyboardSensor as uh,MeasuringStrategy as dh,MouseSensor as ph,pointerWithin as mh,rectIntersection as fh,TouchSensor as gh,useSensor as Zs,useSensors as hh}from"@dnd-kit/core";import{arrayMove as bh,verticalListSortingStrategy as vh}from"@dnd-kit/sortable";import{useAtom as Ed,useAtomValue as yo,useSetAtom as yh}from"jotai";import{forwardRef as xh,memo as Ch,useCallback as Ft,useEffect as xo,useMemo as _s,useRef as Co,useState as Wn}from"react";import{Color as Cd}from"@tiptap/extension-color";import{Extension as vf}from"@tiptap/core";import{dropCursor as yf}from"@tiptap/pm/dropcursor";var rs=vf.create({name:"dropCursor",addOptions(){return{color:"currentColor",width:1,class:void 0}},addProseMirrorPlugins(){return[yf(this.options)]}});import{HardBreak as wd}from"@tiptap/extension-hard-break";import{Extension as xf}from"@tiptap/core";import{undo as Cf,redo as wf,history as Tf}from"@tiptap/pm/history";var kf=xf.create({name:"history",addOptions(){return{depth:100,newGroupDelay:500}},addCommands(){return{undo:()=>({state:e,dispatch:t})=>Cf(e,t),redo:()=>({state:e,dispatch:t})=>wf(e,t)}},addProseMirrorPlugins(){return[Tf(this.options)]},addKeyboardShortcuts(){return{"Mod-z":()=>this.editor.commands.undo(),"Shift-Mod-z":()=>this.editor.commands.redo(),"Mod-y":()=>this.editor.commands.redo(),"Mod-\u044F":()=>this.editor.commands.undo(),"Shift-Mod-\u044F":()=>this.editor.commands.redo()}}});import{Placeholder as Td}from"@tiptap/extension-placeholder";import{TextAlign as kd}from"@tiptap/extension-text-align";import{Typography as Pd}from"@tiptap/extension-typography";import{Underline as Md}from"@tiptap/extension-underline";import{StarterKit as Nd}from"@tiptap/starter-kit";import{mergeAttributes as jf}from"@tiptap/core";import{Node as Pf,mergeAttributes as Mf,wrappingInputRule as Nf}from"@tiptap/core";var Lf=/^\s*>\s$/,Wc=Pf.create({name:"blockquote",addOptions(){return{HTMLAttributes:{}}},content:"block+",group:"block",defining:!0,parseHTML(){return[{tag:"blockquote"}]},renderHTML({HTMLAttributes:e}){return["blockquote",Mf(this.options.HTMLAttributes,e),0]},addCommands(){return{setBlockquote:()=>({commands:e})=>e.wrapIn(this.name),toggleBlockquote:()=>({commands:e})=>e.toggleWrap(this.name),unsetBlockquote:()=>({commands:e})=>e.lift(this.name)}},addKeyboardShortcuts(){return{"Mod-Shift-b":()=>this.editor.commands.toggleBlockquote()}},addInputRules(){return[Nf({find:Lf,type:this.type})]}});import{ReactNodeViewRenderer as Gf}from"@tiptap/react";import{v4 as If}from"uuid";function bt(e,t){let r=e.state.tr,o=!1;e.state.doc.descendants((n,i)=>{if(n.type.name===t&&!n.attrs.id){let l=`node-${If()}`;r.setNodeMarkup(i,void 0,{...n.attrs,id:l}),o=!0}return!1}),o&&e.view.dispatch(r)}a(bt,"generateNodeIds");import{useSortable as Bf}from"@dnd-kit/sortable";import{NodeViewWrapper as Hf}from"@tiptap/react";import{useSetAtom as Df}from"jotai";import{forwardRef as Vf,useCallback as Mn,useEffect as Uc,useState as Ff}from"react";import{v4 as Of}from"uuid";import{GripVertical as Ef}from"lucide-react";import{forwardRef as Af}from"react";import{jsx as zc}from"react/jsx-runtime";var $c=Af((e,t)=>zc("button",{...e,ref:t,"data-cypress":"draggable-handle",className:I("courier-flex-shrink-0 courier-p-1 courier-w-7 courier-h-7 courier-rounded-md courier-border courier-border-border courier-flex courier-items-center courier-justify-center courier-shadow-sm courier-bg-background hover:courier-bg-card courier-cursor-grab",e.className),children:zc(Ef,{strokeWidth:1,className:"courier-w-5 courier-stroke-ring courier-fill-ring"})}));import{useAtomValue as Sf,useSetAtom as Rf}from"jotai";import{useCallback as Tt}from"react";var Ci=a(e=>{let t=Rf(rt),r=Sf(be),o=Tt(y=>{let h=-1;return e.state.doc.descendants((L,w)=>{var m;return((m=L.attrs)==null?void 0:m.id)===y?(h=w,!1):!0}),h},[e]),n=Tt((y,h)=>{var L,w,m;if(((L=r==null?void 0:r.type)==null?void 0:L.name)==="button"&&((w=r.attrs)!=null&&w.id)){let C=r.attrs.id,P=o(C);if(P>=0){let A=e.state.tr;return A.setNodeMarkup(P,void 0,{...(m=e.state.doc.nodeAt(P))==null?void 0:m.attrs,[y]:h}),e.view.dispatch(A),setTimeout(()=>{let R=o(C);if(R>=0){let k=e.state.doc.nodeAt(R);k&&t(k)}},0),!0}}return!1},[e,r,o,t]),i=Tt(()=>{var y,h;if(((y=r==null?void 0:r.type)==null?void 0:y.name)==="button"&&((h=r.attrs)!=null&&h.id)){let L=r.attrs.id,w=o(L);if(w>=0){let m=e.state.doc.nodeAt(w);if(!m)return!1;let C={...m.attrs,fontWeight:"normal",fontStyle:"normal",isUnderline:!1,isStrike:!1},P=e.state.tr;return P.setNodeMarkup(w,void 0,C),e.view.dispatch(P),setTimeout(()=>{let A=o(L);if(A>=0){let R=e.state.doc.nodeAt(A);R&&t(R)}},0),!0}}return!1},[e,r,o,t]),l=Tt(()=>{var y;if(((y=r==null?void 0:r.type)==null?void 0:y.name)==="button"){let h=r.attrs.fontWeight==="bold"?"normal":"bold";if(n("fontWeight",h))return!0}return e.chain().focus().toggleBold().run()},[e,r,n]),s=Tt(()=>{var y;if(((y=r==null?void 0:r.type)==null?void 0:y.name)==="button"){let h=r.attrs.fontStyle==="italic"?"normal":"italic";if(n("fontStyle",h))return!0}return e.chain().focus().toggleItalic().run()},[e,r,n]),c=Tt(()=>{var y;if(((y=r==null?void 0:r.type)==null?void 0:y.name)==="button"){let h=!r.attrs.isStrike;if(n("isStrike",h))return!0}return e.chain().focus().toggleMark("strike").run()},[e,r,n]),u=Tt(()=>{var y;if(((y=r==null?void 0:r.type)==null?void 0:y.name)==="button"){let h=!r.attrs.isUnderline;if(n("isUnderline",h))return!0}return e.chain().focus().toggleMark("underline").run()},[e,r,n]),d=Tt(()=>e.chain().focus().setTextAlign("left").run(),[e]),p=Tt(()=>e.chain().focus().setTextAlign("center").run(),[e]),g=Tt(()=>e.chain().focus().setTextAlign("right").run(),[e]),b=Tt(()=>e.chain().focus().setTextAlign("justify").run(),[e]),v=Tt((y,h)=>e.chain().focus().setLink({href:y,target:h?"_blank":""}).run(),[e]),f=Tt(()=>{let y=e.isActive("blockquote");if(e.chain().focus().toggleBlockquote().run()){let{selection:w}=e.state,m=w.$anchor;if(y){let C=m.node();(C.type.name==="paragraph"||C.type.name==="heading")&&t(C)}else for(let C=m.depth;C>0;C--){let P=m.node(C);if(P.type.name==="blockquote"){t(P);break}}}},[e,t]);return{onBold:l,onItalic:s,onStrike:c,onUnderline:u,onAlignLeft:d,onAlignCenter:p,onAlignRight:g,onAlignJustify:b,onLink:v,onQuote:f,resetButtonFormatting:i}},"useTextmenuCommands");import{Fragment as $f,jsx as lr,jsxs as os}from"react/jsx-runtime";function Wf(){let[e,t]=Ff(!1);return Uc(()=>{let r=setTimeout(()=>t(!0),500);return()=>clearTimeout(r)},[]),e}a(Wf,"useMountStatus");var Bt=a(({children:e,id:t,className:r,...o})=>{let{setNodeRef:n,setActivatorNodeRef:i,listeners:l,isDragging:s,transform:c,transition:u}=Bf({id:t}),d=Wf();return lr(zf,{ref:n,id:t,transition:u,transform:c,fadeIn:s&&!d,listeners:l,className:r,handleProps:{ref:i},...o,children:e})},"SortableItemWrapper"),zf=Vf(({children:e,className:t,dragOverlay:r,handleProps:o,listeners:n,id:i,transition:l,transform:s,editor:c,fadeIn:u,...d},p)=>{Uc(()=>{if(r)return document.body.style.cursor="grabbing",()=>{document.body.style.cursor=""}},[r]);let g=Df(be),{resetButtonFormatting:b}=Ci(c),v=a((C,P)=>{let A=null;return C.doc.descendants((R,k)=>{var M;return A!==null?!1:((M=R.attrs)==null?void 0:M.id)===P?(A=k,!1):!0}),A},"findNodePositionById"),f=Mn(()=>{if(!c||!i)return{node:null,pos:null};let C=v(c.state,i);return C===null?{node:null,pos:null}:{node:c.state.doc.nodeAt(C),pos:C}},[c,i]),y=Mn(()=>{c.commands.blur(),g(null)},[c,g]),h=Mn(()=>{if(!(!c||!i))try{y(),setTimeout(()=>{let{node:C,pos:P}=f();if(!C||P===null)return;let A=c.state.doc.childCount===1,R=c.state.tr;R.delete(P,P+(C==null?void 0:C.nodeSize)),R.setMeta("addToHistory",!0),c.view.dispatch(R),A&&setTimeout(()=>{let k=c.state.doc.nodeAt(0);if(k&&k.type.name==="paragraph"&&!k.attrs.id){let M=`node-${Of()}`,B=c.state.tr;B.setNodeMarkup(0,void 0,{...k.attrs,id:M}),c.view.dispatch(B);let x=new CustomEvent("node-duplicated",{detail:{newNodeId:M}});document.dispatchEvent(x)}},50),g(null)},100)}catch(C){console.error("Error deleting node:",C)}},[c,i,f,y,g]),L=Mn(()=>{if(!(!c||!i))try{let{node:C,pos:P}=f();if(!C||P===null)return;if(C.type.name==="button"){b();return}y(),setTimeout(()=>{let A=c.chain();A.setNodeSelection(P).unsetAllMarks(),C.type.name==="blockquote"&&C.content&&C.content.firstChild?C.content.firstChild.type.name!=="paragraph"&&A.setParagraph():C.type.name!=="paragraph"&&C.type.name!=="blockquote"&&A.setParagraph(),A.run()},100)}catch(C){console.error("Error removing formatting:",C)}},[c,i,f,y,b]),w=Mn(()=>{if(!(!c||!i))try{y(),setTimeout(()=>{let{node:C,pos:P}=f();if(!C||P===null)return;let A=C.type.name,R={...C.attrs};delete R.id;let k=P+(C==null?void 0:C.nodeSize);wi(c,A,k,R,M=>g(M),C.content)},100)}catch(C){console.error("Error duplicating node:",C)}},[c,i,f,y,g]),{node:m}=f();return os(Hf,{ref:p,"data-cypress":"draggable-item","data-node-view-wrapper":!0,"data-id":i,className:I("courier-flex courier-items-center courier-justify-center courier-gap-2 courier-pl-6 draggable-item",t),style:{transition:[l].filter(Boolean).join(", "),"--translate-x":s?`${Math.round(s.x)}px`:void 0,"--translate-y":s?`${Math.round(s.y)}px`:void 0,"--scale-x":s!=null&&s.scaleX?`${s.scaleX}`:void 0,"--scale-y":s!=null&&s.scaleY?`${s.scaleY}`:void 0,transform:"translate3d(var(--translate-x, 0), var(--translate-y, 0), 0) scaleX(var(--scale-x, 1)) scaleY(var(--scale-y, 1))"},...d,children:[lr($c,{className:"courier-absolute courier-left-[-20px]",tabIndex:-1,...o,...n}),e,os("div",{className:"courier-actions-panel courier-absolute courier-right-[-50px] courier-rounded-lg courier-border courier-border-border courier-bg-background courier-shadow-md courier-flex courier-items-center courier-justify-center courier-hidden",children:[(m==null?void 0:m.type.name)!=="imageBlock"&&(m==null?void 0:m.type.name)!=="divider"&&(m==null?void 0:m.type.name)!=="spacer"&&os($f,{children:[lr("button",{className:"courier-w-8 courier-h-8 courier-flex courier-items-center courier-justify-center",onClick:L,tabIndex:-1,children:lr(Ja,{})}),lr(ce,{className:"courier-m-0"})]}),lr("button",{className:"courier-w-8 courier-h-8 courier-flex courier-items-center courier-justify-center",onClick:w,tabIndex:-1,children:lr($a,{})}),lr(ce,{className:"courier-m-0"}),lr("button",{className:"courier-w-8 courier-h-8 courier-flex courier-items-center courier-justify-center",onClick:h,tabIndex:-1,children:lr(gn,{})})]})]})});import{NodeViewContent as Uf}from"@tiptap/react";import{useSetAtom as Zf}from"jotai";import{useCallback as _f}from"react";import{jsx as Nn}from"react/jsx-runtime";var qf=a(({paddingHorizontal:e,paddingVertical:t,backgroundColor:r,borderLeftWidth:o,borderColor:n})=>Nn("div",{className:"courier-w-full node-element",children:Nn("div",{style:{zIndex:-15,position:"relative",padding:`${t}px ${e}px`,backgroundColor:r,borderLeftWidth:`${o}px`,borderColor:n,borderStyle:o>0?"solid":"none",whiteSpace:"pre-wrap"},children:Nn(Uf,{})})}),"BlockquoteComponent"),Zc=a(e=>{let t=Zf(rt),r=_f(()=>{if(!e.editor.isEditable)return;let n=e.getPos(),i=e.editor.state.doc.nodeAt(n);i&&t(i)},[e,t]),o=!e.node.content||e.node.content.size===0;return Nn(Bt,{id:e.node.attrs.id,className:I(e.node.attrs.isSelected&&"selected-element",o&&"is-empty"),onClick:r,editor:e.editor,children:Nn(qf,{...e.node.attrs})})},"BlockquoteComponentNode");var Nr={paddingHorizontal:8,paddingVertical:6,backgroundColor:"transparent",borderLeftWidth:4,borderColor:"#e0e0e0"},ns=Wc.extend({content:"block+",addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),HTMLAttributes:{class:""}}},onCreate(){bt(this.editor,this.name)},addAttributes(){return{id:{default:void 0,parseHTML:e=>e.getAttribute("data-id"),renderHTML:e=>({"data-id":e.id})},paddingHorizontal:{default:Nr.paddingHorizontal,parseHTML:e=>e.getAttribute("data-padding-horizontal"),renderHTML:e=>({"data-padding-horizontal":e.paddingHorizontal})},paddingVertical:{default:Nr.paddingVertical,parseHTML:e=>e.getAttribute("data-padding-vertical"),renderHTML:e=>({"data-padding-vertical":e.paddingVertical})},backgroundColor:{default:Nr.backgroundColor,parseHTML:e=>e.getAttribute("data-background-color"),renderHTML:e=>({"data-background-color":e.backgroundColor})},borderLeftWidth:{default:Nr.borderLeftWidth,parseHTML:e=>e.getAttribute("data-border-left-width"),renderHTML:e=>({"data-border-left-width":e.borderLeftWidth})},borderColor:{default:Nr.borderColor,parseHTML:e=>e.getAttribute("data-border-color"),renderHTML:e=>({"data-border-color":e.borderColor})}}},parseHTML(){return[{tag:"blockquote"}]},renderHTML({HTMLAttributes:e}){return["blockquote",jf(e,{"data-type":"blockquote","data-id":e.id}),0]},addKeyboardShortcuts(){return{Enter:({editor:e})=>{let{selection:t}=e.state,{empty:r}=t;if(!r)return!1;let o=e.isActive("blockquote");return!e.isActive("paragraph")||!o?!1:e.chain().command(({tr:i})=>{i.split(t.from);let l=i.selection.from,s=i.doc.resolve(l);if(s.depth>1){let c=s.blockRange();c&&i.lift(c,0)}return!0}).focus().run()}}},addNodeView(){return Gf(Zc)}});import{zodResolver as Qf}from"@hookform/resolvers/zod";import{useForm as e1}from"react-hook-form";import{useEffect as Kf,useRef as _c}from"react";var cr=a(({editor:e,element:t,form:r,nodeType:o})=>{let n=_c(null),i=_c(null);return Kf(()=>{if(!e||!t)return;let s=a(()=>{let c=null;if(e.state.doc.descendants((u,d)=>u.attrs.id===t.attrs.id?(c=d,!1):!0),c!==null){let u=e.state.doc.nodeAt(c);(u==null?void 0:u.type.name)===o&&(n.current=u,i.current=c,Object.entries(u.attrs).forEach(([d,p])=>{r.getValues(d)!==p&&r.setValue(d,p)}))}},"updateCurrentNode");return s(),e.on("update",s),()=>{e.off("update",s)}},[e,t,r,o]),{updateNodeAttributes:a(s=>{!e||i.current===null||e.commands.command(({tr:c})=>{let u=c.doc.nodeAt(i.current);if((u==null?void 0:u.type.name)===o){let d={...u.attrs,...s,id:u.attrs.id};return c.setNodeMarkup(i.current,u.type,d),!0}return!1})},"updateNodeAttributes")}},"useNodeAttributes");import{useSetAtom as Xf}from"jotai";import{Quote as Jf}from"lucide-react";import{jsx as qc}from"react/jsx-runtime";var jc=a(({draggable:e=!1})=>qc(ht,{draggable:e,icon:qc(Jf,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),draggableLabel:"Blockquote",label:"Blockquote block"}),"BlockquoteBlock");import{jsx as Lr,jsxs as Yf}from"react/jsx-runtime";var ur=a(({type:e})=>{let t=Xf(rt);return Yf("div",{className:"courier-flex courier-gap-4 courier-flex-col",children:[Lr(xe,{className:"courier-w-fit",variant:"secondary",buttonSize:"small",onClick:()=>{t(null)},children:"Close"}),e==="heading"&&Lr(Do,{}),e==="text"&&Lr(Oo,{}),e==="image"&&Lr(Vo,{}),e==="spacer"&&Lr(Fo,{}),e==="divider"&&Lr(Ho,{}),e==="button"&&Lr(Bo,{}),e==="blockquote"&&Lr(jc,{}),Lr(ce,{className:"courier-m-0"})]})},"FormHeader");import{z as io}from"zod";var Gc=io.object({paddingHorizontal:io.coerce.number().min(0),paddingVertical:io.coerce.number().min(0),backgroundColor:io.string(),borderLeftWidth:io.coerce.number().min(0),borderColor:io.string(),id:io.string().optional()});import{jsx as me,jsxs as Or}from"react/jsx-runtime";var Kc=a(({element:e,editor:t})=>{let r=e1({resolver:Qf(Gc),defaultValues:{...Nr,...e==null?void 0:e.attrs}}),{updateNodeAttributes:o}=cr({editor:t,element:e,form:r,nodeType:(e==null?void 0:e.type.name)||"blockquote"});return e?Or(tt,{...r,children:[me(ur,{type:"blockquote"}),Or("form",{onChange:()=>{o(r.getValues())},children:[me("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Frame"}),Or("div",{className:"courier-flex courier-flex-row courier-gap-3 courier-mb-3",children:[me(W,{control:r.control,name:"paddingHorizontal",render:({field:n})=>Or(F,{children:[me(O,{children:me(re,{startAdornment:me(xn,{}),type:"number",min:0,...n})}),me(U,{})]})}),me(W,{control:r.control,name:"paddingVertical",render:({field:n})=>Or(F,{children:[me(O,{children:me(re,{startAdornment:me(oo,{}),type:"number",min:0,...n})}),me(U,{})]})})]}),me(W,{control:r.control,name:"backgroundColor",render:({field:n})=>Or(F,{className:"courier-mb-3",children:[me(O,{children:me(Oe,{...n,defaultValue:Nr.backgroundColor,onChange:i=>{n.onChange(i),o({...r.getValues(),[n.name]:i})}})}),me(U,{})]})}),me(ce,{className:"courier-mb-4"}),me("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Border"}),me(W,{control:r.control,name:"borderLeftWidth",render:({field:n})=>Or(F,{className:"courier-mb-3",children:[me(O,{children:me(re,{startAdornment:me(Ut,{}),type:"number",min:0,...n})}),me(U,{})]})}),me(W,{control:r.control,name:"borderColor",render:({field:n})=>Or(F,{className:"courier-mb-3",children:[me(O,{children:me(Oe,{...n,defaultValue:Nr.borderColor,onChange:i=>{n.onChange(i),o({...r.getValues(),[n.name]:i})}})}),me(U,{})]})})]})]}):null},"BlockquoteForm");import{mergeAttributes as n1,Node as i1}from"@tiptap/core";import{ReactNodeViewRenderer as a1}from"@tiptap/react";import{Plugin as s1,PluginKey as l1}from"@tiptap/pm/state";import{useSetAtom as t1}from"jotai";import{useCallback as r1}from"react";import{jsx as Wr}from"react/jsx-runtime";var o1=a(({label:e,alignment:t,size:r,backgroundColor:o,textColor:n,borderWidth:i,borderRadius:l,borderColor:s,padding:c,fontWeight:u,fontStyle:d,isUnderline:p,isStrike:g})=>Wr("div",{className:"courier-w-full node-element",children:Wr("div",{className:"courier-flex",style:{marginTop:`${c}px`,marginBottom:`${c}px`},children:Wr("div",{className:I("courier-inline-flex courier-justify-center courier-px-4 courier-py-2 courier-cursor-pointer courier-text-base",{left:"courier-mr-auto",center:"courier-mx-auto",right:"courier-ml-auto"}[t],r==="full"&&"courier-w-full"),style:{backgroundColor:o,color:n,borderWidth:`${i}px`,borderRadius:`${l}px`,borderColor:s,borderStyle:i>0?"solid":"none",caretColor:"#ff0000",fontWeight:u,fontStyle:d},children:g?Wr("s",{children:p?Wr("u",{children:e}):e}):p?Wr("u",{children:e}):e})})}),"ButtonComponent"),Jc=a(e=>{let t=t1(rt),r=r1(()=>{if(!e.editor.isEditable)return;let o=e.getPos(),n=e.editor.state.doc.nodeAt(o);if(n){e.editor.commands.blur();let i=n.attrs.id;e.editor.state.doc.descendants(l=>l.type.name==="button"&&l.attrs.id===i?(t(l),!1):!0)}},[e,t]);return Wr(Bt,{id:e.node.attrs.id,className:I(e.node.attrs.isSelected&&"selected-element"),onClick:r,editor:e.editor,"data-node-type":"button",children:Wr(o1,{...e.node.attrs})})},"ButtonComponentNode");import{v4 as c1}from"uuid";var Pe={label:"Button",link:"",alignment:"center",size:"default",backgroundColor:"#0085FF",textColor:"#ffffff",borderWidth:0,borderRadius:0,borderColor:"#000000",padding:6,fontWeight:"normal",fontStyle:"normal",isUnderline:!1,isStrike:!1},Ti=i1.create({name:"button",group:"block",atom:!0,selectable:!1,onCreate(){bt(this.editor,this.name)},addAttributes(){return{label:{default:Pe.label,parseHTML:e=>e.getAttribute("data-label"),renderHTML:e=>({"data-label":e.label})},link:{default:Pe.link,parseHTML:e=>e.getAttribute("data-link"),renderHTML:e=>({"data-link":e.link})},alignment:{default:Pe.alignment,parseHTML:e=>e.getAttribute("data-alignment"),renderHTML:e=>({"data-alignment":e.alignment})},size:{default:Pe.size,parseHTML:e=>e.getAttribute("data-size"),renderHTML:e=>({"data-size":e.size})},backgroundColor:{default:Pe.backgroundColor,parseHTML:e=>e.getAttribute("data-background-color"),renderHTML:e=>({"data-background-color":e.backgroundColor})},textColor:{default:Pe.textColor,parseHTML:e=>e.getAttribute("data-text-color"),renderHTML:e=>({"data-text-color":e.textColor})},borderWidth:{default:Pe.borderWidth,parseHTML:e=>e.getAttribute("data-border-width"),renderHTML:e=>({"data-border-width":e.borderWidth})},borderRadius:{default:Pe.borderRadius,parseHTML:e=>e.getAttribute("data-border-radius"),renderHTML:e=>({"data-border-radius":e.borderRadius})},borderColor:{default:Pe.borderColor,parseHTML:e=>e.getAttribute("data-border-color"),renderHTML:e=>({"data-border-color":e.borderColor})},padding:{default:Pe.padding,parseHTML:e=>e.getAttribute("data-padding"),renderHTML:e=>({"data-padding":e.padding})},fontWeight:{default:Pe.fontWeight,parseHTML:e=>e.getAttribute("data-font-weight"),renderHTML:e=>({"data-font-weight":e.fontWeight})},fontStyle:{default:Pe.fontStyle,parseHTML:e=>e.getAttribute("data-font-style"),renderHTML:e=>({"data-font-style":e.fontStyle})},isUnderline:{default:Pe.isUnderline,parseHTML:e=>e.getAttribute("data-is-underline"),renderHTML:e=>({"data-is-underline":e.isUnderline})},isStrike:{default:Pe.isStrike,parseHTML:e=>e.getAttribute("data-is-strike"),renderHTML:e=>({"data-is-strike":e.isStrike})},id:{default:()=>`node-${c1()}`,parseHTML:e=>e.getAttribute("data-id"),renderHTML:e=>({"data-id":e.id,"data-node-id":e.id})}}},parseHTML(){return[{tag:'div[data-type="button"]'}]},renderHTML({HTMLAttributes:e}){return["div",n1(this.options.HTMLAttributes,e,{"data-type":"button"}),0]},addNodeView(){return a1(Jc)},addCommands(){return{toggleBold:()=>({editor:e,chain:t})=>{let{selection:r}=e.state,o=e.state.doc.nodeAt(r.$anchor.pos);if((o==null?void 0:o.type.name)==="button"){let n=o.attrs.fontWeight==="bold"?"normal":"bold";return t().updateAttributes(o.type,{fontWeight:n}).run()}return t().focus().toggleMark("bold").run()},toggleItalic:()=>({editor:e,chain:t})=>{let{selection:r}=e.state,o=e.state.doc.nodeAt(r.$anchor.pos);if((o==null?void 0:o.type.name)==="button"){let n=o.attrs.fontStyle==="italic"?"normal":"italic";return t().updateAttributes(o.type,{fontStyle:n}).run()}return t().focus().toggleMark("italic").run()},toggleUnderline:()=>({editor:e,chain:t})=>{let{selection:r}=e.state,o=e.state.doc.nodeAt(r.$anchor.pos);if((o==null?void 0:o.type.name)==="button"){let n=!o.attrs.isUnderline;return t().updateAttributes(o.type,{isUnderline:n}).run()}return t().focus().toggleMark("underline").run()},toggleStrike:()=>({editor:e,chain:t})=>{let{selection:r}=e.state,o=e.state.doc.nodeAt(r.$anchor.pos);if((o==null?void 0:o.type.name)==="button"){let n=!o.attrs.isStrike;return t().updateAttributes(o.type,{isStrike:n}).run()}return t().focus().toggleMark("strike").run()}}},addKeyboardShortcuts(){return{Backspace:({editor:e})=>{let{selection:t}=e.state,r=e.state.doc.nodeAt(t.$anchor.pos);return(r==null?void 0:r.type.name)==="button"},Delete:({editor:e})=>{let{selection:t}=e.state,r=e.state.doc.nodeAt(t.$anchor.pos);return(r==null?void 0:r.type.name)==="button"},Space:({editor:e})=>{let{selection:t}=e.state,r=e.state.doc.nodeAt(t.$anchor.pos);return(r==null?void 0:r.type.name)==="button"},Enter:({editor:e})=>{let{selection:t}=e.state,r=e.state.doc.nodeAt(t.$anchor.pos);return(r==null?void 0:r.type.name)==="button"}}},addProseMirrorPlugins(){return[new s1({key:new l1("preventButtonTextInput"),props:{handleTextInput:(e,t,r,o)=>{let n=e.state.doc.nodeAt(t);return(n==null?void 0:n.type.name)==="button"},handleKeyDown:(e,t)=>{let{selection:r}=e.state,o=e.state.doc.nodeAt(r.$anchor.pos);return(o==null?void 0:o.type.name)==="button"&&t.key.length===1&&!t.ctrlKey&&!t.metaKey&&!t.altKey?(t.preventDefault(),t.stopPropagation(),!0):!1}}})]}});import{z as ct}from"zod";var Xc=ct.object({label:ct.string(),link:ct.string().optional(),alignment:ct.enum(["left","center","right"]),size:ct.enum(["default","full"]),backgroundColor:ct.string(),textColor:ct.string(),borderWidth:ct.number(),borderRadius:ct.number(),borderColor:ct.string(),padding:ct.number(),fontWeight:ct.enum(["normal","bold"]),fontStyle:ct.enum(["normal","italic"]),isUnderline:ct.boolean(),isStrike:ct.boolean()});import{zodResolver as u1}from"@hookform/resolvers/zod";import{useForm as d1}from"react-hook-form";import{useSetAtom as is}from"jotai";import*as ao from"react";import{useRef as Qc,useState as as}from"react";import{jsx as Yc}from"react/jsx-runtime";var Ln=a(({items:e,command:t,selected:r=0})=>Yc("div",{className:"courier-bg-white courier-rounded-md courier-shadow-lg courier-border courier-border-border courier-max-h-60 courier-overflow-y-auto",children:e.map((o,n)=>Yc("button",{className:I("courier-w-full courier-px-4 courier-py-2 courier-text-left hover:courier-bg-gray-100 focus:courier-bg-gray-100 focus:courier-outline-none",n===r?"courier-bg-gray-100":""),onClick:()=>t(o),children:o},n))}),"VariableSuggestions");import{jsx as Wo,jsxs as eu}from"react/jsx-runtime";var kt=ao.forwardRef(({as:e="Input",variables:t=[],autoResize:r,onChange:o,...n},i)=>{let[l,s]=as(!1),[c,u]=as(null),[d,p]=as(0),g=Qc(null),b=Qc(null),v=is(kn),f=is(Dc),y=is(fi),h=ao.useCallback(()=>{if(!b.current)return;let k={ref:b.current,caretPosition:b.current.selectionStart};f(k),y(k);let M={isFocused:!0,hasVariables:t.length>0,showVariablePopup:!1};v(M)},[v,f,y,t]),L=ao.useCallback(k=>{var x,E;let M=k.relatedTarget&&((x=g.current)==null?void 0:x.contains(k.relatedTarget)),B=(E=k.relatedTarget)==null?void 0:E.closest("[data-variable-button]");!M&&!B&&(f({ref:null,caretPosition:null}),v({isFocused:!1,hasVariables:!1,showVariablePopup:!1}))},[v,f]),w=a(k=>{let M=k.target,B={ref:M,caretPosition:M.selectionStart};f(B),y(B)},"handleSelect"),m=a(k=>{var M;if(l)switch(k.key){case"ArrowUp":k.preventDefault(),p(B=>B>0?B-1:t.length-1);break;case"ArrowDown":k.preventDefault(),p(B=>B<t.length-1?B+1:0);break;case"Enter":if(t[d]){k.preventDefault(),k.stopPropagation(),C(t[d]);return}break;case"Escape":s(!1),k.preventDefault(),k.stopPropagation();break}(M=n.onKeyDown)==null||M.call(n,k)},"handleKeyDown"),C=a(k=>{let M=b.current;if(!M)return;let B=M.value,x=M.selectionStart||0,E=B.substring(0,x-2),H=B.substring(x),V=`${E}{{${k}}}${H}`,j=x+k.length+3;if(o){let J={target:{...M,value:V}};o(J)}setTimeout(()=>{M.value=V,M.setSelectionRange(j,j)},0),s(!1)},"insertVariable"),P=a(k=>{var E;let M=k.target,B=M.value,x=M.selectionStart||0;if(B.slice(x-2,x)==="{{"&&((E=g.current)==null?void 0:E.getBoundingClientRect())){let V=B.slice(0,x),j=document.createElement("span");j.style.font=window.getComputedStyle(M).font,j.style.whiteSpace="pre-wrap",j.textContent=V,document.body.appendChild(j);let J=j.offsetWidth;document.body.removeChild(j);let ee=parseInt(window.getComputedStyle(M).lineHeight),fe=V.split(`
153
+ `).length-1;u({left:Math.min(J%M.offsetWidth,M.offsetWidth-200),top:fe*ee+30}),s(!0),p(0)}o&&o({target:M,currentTarget:M,type:"change",preventDefault:()=>{},stopPropagation:()=>{}})},"handleChange"),A=a(k=>{var E;let M=k.target,B=M.value,x=M.selectionStart||0;if(B.slice(x-2,x)==="{{"&&((E=g.current)==null?void 0:E.getBoundingClientRect())){let V=B.slice(0,x),j=document.createElement("span");j.style.font=window.getComputedStyle(M).font,j.style.whiteSpace="pre-wrap",j.textContent=V,document.body.appendChild(j);let J=j.offsetWidth;document.body.removeChild(j);let ee=parseInt(window.getComputedStyle(M).lineHeight),fe=V.split(`
154
+ `).length-1;u({left:Math.min(J%M.offsetWidth,M.offsetWidth-200),top:fe*ee+30}),s(!0),p(0)}o&&o({target:M,currentTarget:M,type:"change",preventDefault:()=>{},stopPropagation:()=>{}})},"handleInput");if(ao.useEffect(()=>{let k=b.current;if(!k)return;let M=a(B=>{u(B.detail.cursorPosition),s(!0),p(0)},"handleShowSuggestions");return k.addEventListener("showVariableSuggestions",M),()=>{k.removeEventListener("showVariableSuggestions",M)}},[]),e==="Input"){let k={...n,ref:M=>{b.current=M,typeof i=="function"?i(M):i&&(i.current=M)},onChange:P,onInput:A,onKeyDown:m,onFocus:h,onBlur:L,onSelect:w};return eu("div",{ref:g,className:"courier-relative",children:[Wo(re,{...k}),l&&c&&Wo("div",{style:{position:"absolute",left:`${c.left}px`,top:`${c.top}px`,zIndex:50},children:Wo(Ln,{items:t,command:C,selected:d})})]})}let R={...n,ref:k=>{b.current=k,typeof i=="function"?i(k):i&&(i.current=k)},onChange:P,onInput:A,onKeyDown:m,onFocus:h,onBlur:L,autoResize:r,onSelect:w};return eu("div",{ref:g,className:"courier-relative",children:[Wo(Ba,{...R}),l&&c&&Wo("div",{style:{position:"absolute",left:`${c.left}px`,top:`${c.top}px`,zIndex:50},children:Wo(Ln,{items:t,command:C,selected:d})})]})});kt.displayName="TextInput";var _t=a((e={},t="")=>Object.entries(e).reduce((r,[o,n])=>{let i=t?`${t}.${o}`:o;return n&&typeof n=="object"&&!Array.isArray(n)?[...r,..._t(n,i)]:[...r,i]},[]),"getFlattenedVariables");import{jsx as pr,jsxs as ou}from"react/jsx-runtime";var In="#80849D",dr=30,ki=a(({color:e=In,width:t=dr,height:r=dr,...o})=>pr(G,{...o,width:t,height:r,children:pr("path",{d:"M6.375 23.9998C6.375 24.345 6.65482 24.6248 7 24.6248C7.34518 24.6248 7.625 24.345 7.625 23.9998H6.375ZM7.625 7.33317C7.625 6.98799 7.34518 6.70817 7 6.70817C6.65482 6.70817 6.375 6.98799 6.375 7.33317H7.625ZM7.625 23.9998V7.33317H6.375V23.9998H7.625ZM10.4583 16.4995V14.8328H9.20834V16.4995H10.4583ZM11.5 13.7912H21.5V12.5412H11.5V13.7912ZM22.5417 14.8328V16.4995H23.7917V14.8328H22.5417ZM21.5 17.5412H11.5V18.7912H21.5V17.5412ZM22.5417 16.4995C22.5417 16.91 22.5403 17.155 22.5167 17.3306C22.5059 17.4111 22.4932 17.4514 22.4857 17.4695C22.484 17.4737 22.4826 17.4765 22.4818 17.4781C22.481 17.4797 22.4805 17.4804 22.4805 17.4805C22.4804 17.4805 22.4805 17.4803 22.4808 17.4801C22.481 17.4798 22.481 17.4798 22.4807 17.4802L23.3645 18.364C23.6221 18.1065 23.7158 17.7934 23.7556 17.4972C23.793 17.2189 23.7917 16.8747 23.7917 16.4995H22.5417ZM21.5 18.7912C21.8752 18.7912 22.2194 18.7925 22.4977 18.7551C22.7939 18.7153 23.107 18.6216 23.3645 18.364L22.4807 17.4802C22.4803 17.4805 22.4803 17.4805 22.4806 17.4803C22.4808 17.48 22.481 17.4799 22.481 17.48C22.4809 17.48 22.4802 17.4805 22.4786 17.4813C22.477 17.4821 22.4742 17.4835 22.47 17.4852C22.4519 17.4927 22.4116 17.5054 22.3311 17.5162C22.1555 17.5398 21.9105 17.5412 21.5 17.5412V18.7912ZM21.5 13.7912C21.9105 13.7912 22.1555 13.7925 22.3311 13.8161C22.4116 13.8269 22.4519 13.8397 22.47 13.8471C22.4742 13.8489 22.477 13.8502 22.4786 13.8511C22.4802 13.8519 22.4809 13.8524 22.481 13.8524C22.481 13.8524 22.4808 13.8523 22.4806 13.8521C22.4803 13.8518 22.4803 13.8518 22.4807 13.8522L23.3645 12.9683C23.107 12.7108 22.7939 12.6171 22.4977 12.5773C22.2194 12.5398 21.8752 12.5412 21.5 12.5412V13.7912ZM23.7917 14.8328C23.7917 14.4577 23.793 14.1134 23.7556 13.8352C23.7158 13.5389 23.6221 13.2258 23.3645 12.9683L22.4807 13.8522C22.481 13.8526 22.481 13.8526 22.4808 13.8523C22.4805 13.852 22.4804 13.8518 22.4805 13.8519C22.4805 13.8519 22.481 13.8526 22.4818 13.8542C22.4826 13.8558 22.484 13.8586 22.4857 13.8628C22.4932 13.881 22.5059 13.9213 22.5167 14.0017C22.5403 14.1773 22.5417 14.4223 22.5417 14.8328H23.7917ZM10.4583 14.8328C10.4583 14.4223 10.4597 14.1773 10.4833 14.0017C10.4941 13.9213 10.5068 13.881 10.5143 13.8628C10.516 13.8586 10.5174 13.8558 10.5182 13.8542C10.5191 13.8526 10.5195 13.8519 10.5196 13.8519C10.5196 13.8518 10.5195 13.852 10.5192 13.8523C10.519 13.8526 10.519 13.8526 10.5194 13.8522L9.63548 12.9683C9.37796 13.2258 9.28425 13.5389 9.24443 13.8352C9.20702 14.1134 9.20834 14.4577 9.20834 14.8328H10.4583ZM11.5 12.5412C11.1248 12.5412 10.7806 12.5398 10.5023 12.5773C10.2061 12.6171 9.893 12.7108 9.63548 12.9683L10.5194 13.8522C10.5197 13.8518 10.5198 13.8518 10.5195 13.8521C10.5192 13.8523 10.519 13.8524 10.519 13.8524C10.5191 13.8524 10.5198 13.8519 10.5214 13.8511C10.523 13.8502 10.5258 13.8489 10.53 13.8471C10.5481 13.8397 10.5884 13.8269 10.6689 13.8161C10.8445 13.7925 11.0895 13.7912 11.5 13.7912V12.5412ZM9.20834 16.4995C9.20834 16.8747 9.20702 17.2189 9.24443 17.4972C9.28425 17.7934 9.37796 18.1065 9.63548 18.364L10.5194 17.4802C10.519 17.4798 10.519 17.4798 10.5192 17.4801C10.5195 17.4803 10.5196 17.4805 10.5196 17.4805C10.5195 17.4804 10.5191 17.4797 10.5182 17.4781C10.5174 17.4765 10.516 17.4737 10.5143 17.4695C10.5068 17.4514 10.4941 17.4111 10.4833 17.3306C10.4597 17.155 10.4583 16.91 10.4583 16.4995H9.20834ZM11.5 17.5412C11.0895 17.5412 10.8445 17.5398 10.6689 17.5162C10.5884 17.5054 10.5481 17.4927 10.53 17.4852C10.5258 17.4835 10.523 17.4821 10.5214 17.4813C10.5198 17.4805 10.5191 17.48 10.519 17.48C10.519 17.4799 10.5192 17.48 10.5195 17.4803C10.5198 17.4805 10.5197 17.4805 10.5194 17.4802L9.63548 18.364C9.893 18.6216 10.2061 18.7153 10.5023 18.7551C10.7806 18.7925 11.1248 18.7912 11.5 18.7912V17.5412Z",fill:e})}),"ButtonAlignLeftIcon"),Pi=a(({color:e=In,width:t=dr,height:r=dr,...o})=>pr(G,{...o,width:t,height:r,children:pr("path",{d:"M14.9583 7C14.9583 6.65482 14.6785 6.375 14.3333 6.375C13.9881 6.375 13.7083 6.65482 13.7083 7L14.9583 7ZM13.7083 23.3333C13.7083 23.6785 13.9881 23.9583 14.3333 23.9583C14.6785 23.9583 14.9583 23.6785 14.9583 23.3333L13.7083 23.3333ZM13.7083 7L13.7083 12.6665L14.9583 12.6665L14.9583 7L13.7083 7ZM20.375 14.3332L20.375 15.9998L21.625 15.9998L21.625 14.3332L20.375 14.3332ZM19.3333 17.0415L9.33333 17.0415L9.33333 18.2915L19.3333 18.2915L19.3333 17.0415ZM8.29167 15.9998L8.29167 14.3332L7.04167 14.3332L7.04167 15.9998L8.29167 15.9998ZM9.33333 13.2915L19.3333 13.2915L19.3333 12.0415L9.33333 12.0415L9.33333 13.2915ZM8.29167 14.3332C8.29167 13.9227 8.29299 13.6777 8.3166 13.5021C8.32742 13.4216 8.34016 13.3813 8.34763 13.3631C8.34936 13.3589 8.35071 13.3562 8.35155 13.3546C8.35238 13.353 8.35284 13.3523 8.35289 13.3522C8.35292 13.3521 8.35279 13.3523 8.35256 13.3526C8.35232 13.3529 8.35231 13.3529 8.35269 13.3525L7.4688 12.4686C7.21128 12.7262 7.11758 13.0393 7.07775 13.3355C7.04034 13.6138 7.04167 13.958 7.04167 14.3332L8.29167 14.3332ZM9.33333 12.0415C8.95816 12.0415 8.61391 12.0402 8.33566 12.0776C8.03943 12.1174 7.72632 12.2111 7.4688 12.4686L8.35269 13.3525C8.35307 13.3521 8.35308 13.3522 8.35279 13.3524C8.3525 13.3526 8.3523 13.3528 8.35236 13.3527C8.35243 13.3527 8.35313 13.3522 8.35472 13.3514C8.35634 13.3505 8.3591 13.3492 8.3633 13.3475C8.38145 13.34 8.42175 13.3273 8.50222 13.3164C8.67782 13.2928 8.92283 13.2915 9.33333 13.2915L9.33333 12.0415ZM9.33333 17.0415C8.92283 17.0415 8.67782 17.0402 8.50222 17.0166C8.42175 17.0057 8.38145 16.993 8.3633 16.9855C8.3591 16.9838 8.35634 16.9825 8.35472 16.9816C8.35313 16.9808 8.35243 16.9803 8.35236 16.9803C8.3523 16.9802 8.3525 16.9804 8.35279 16.9806C8.35308 16.9808 8.35307 16.9809 8.35269 16.9805L7.4688 17.8644C7.72632 18.1219 8.03943 18.2156 8.33566 18.2554C8.61391 18.2928 8.95816 18.2915 9.33333 18.2915L9.33333 17.0415ZM7.04167 15.9998C7.04167 16.375 7.04034 16.7193 7.07775 16.9975C7.11758 17.2937 7.21128 17.6068 7.4688 17.8644L8.35269 16.9805C8.3523 16.9801 8.35232 16.9801 8.35256 16.9804C8.35279 16.9807 8.35292 16.9809 8.35289 16.9808C8.35284 16.9807 8.35238 16.98 8.35155 16.9784C8.35071 16.9768 8.34936 16.9741 8.34763 16.9699C8.34016 16.9517 8.32742 16.9114 8.3166 16.8309C8.29299 16.6553 8.29167 16.4103 8.29167 15.9998L7.04167 15.9998ZM20.375 15.9998C20.375 16.4103 20.3737 16.6553 20.3501 16.8309C20.3392 16.9114 20.3265 16.9517 20.319 16.9699C20.3173 16.9741 20.316 16.9768 20.3151 16.9784C20.3143 16.98 20.3138 16.9807 20.3138 16.9808C20.3137 16.9809 20.3139 16.9807 20.3141 16.9804C20.3143 16.9801 20.3144 16.9801 20.314 16.9805L21.1979 17.8644C21.4554 17.6068 21.5491 17.2937 21.5889 16.9975C21.6263 16.7193 21.625 16.375 21.625 15.9998L20.375 15.9998ZM19.3333 18.2915C19.7085 18.2915 20.0528 18.2928 20.331 18.2554C20.6272 18.2156 20.9403 18.1219 21.1979 17.8644L20.314 16.9805C20.3136 16.9809 20.3136 16.9808 20.3139 16.9806C20.3142 16.9804 20.3144 16.9802 20.3143 16.9803C20.3142 16.9803 20.3135 16.9808 20.3119 16.9816C20.3103 16.9825 20.3076 16.9838 20.3034 16.9855C20.2852 16.993 20.2449 17.0057 20.1644 17.0166C19.9888 17.0402 19.7438 17.0415 19.3333 17.0415L19.3333 18.2915ZM21.625 14.3332C21.625 13.958 21.6263 13.6138 21.5889 13.3355C21.5491 13.0393 21.4554 12.7262 21.1979 12.4686L20.314 13.3525C20.3144 13.3529 20.3143 13.3529 20.3141 13.3526C20.3139 13.3523 20.3137 13.3521 20.3138 13.3522C20.3138 13.3523 20.3143 13.353 20.3151 13.3546C20.316 13.3562 20.3173 13.3589 20.319 13.3631C20.3265 13.3813 20.3392 13.4216 20.3501 13.5021C20.3737 13.6777 20.375 13.9227 20.375 14.3332L21.625 14.3332ZM19.3333 13.2915C19.7438 13.2915 19.9888 13.2928 20.1644 13.3164C20.2449 13.3273 20.2852 13.34 20.3034 13.3475C20.3076 13.3492 20.3103 13.3505 20.3119 13.3514C20.3135 13.3522 20.3142 13.3527 20.3143 13.3527C20.3144 13.3528 20.3142 13.3526 20.3139 13.3524C20.3136 13.3522 20.3136 13.3521 20.314 13.3525L21.1979 12.4686C20.9403 12.2111 20.6272 12.1174 20.331 12.0776C20.0528 12.0402 19.7085 12.0415 19.3333 12.0415L19.3333 13.2915ZM13.7083 17.6665L13.7083 23.3333L14.9583 23.3333L14.9583 17.6665L13.7083 17.6665Z",fill:e})}),"ButtonAlignCenterIcon"),Mi=a(({color:e=In,width:t=dr,height:r=dr,...o})=>pr(G,{...o,width:t,height:r,children:pr("path",{d:"M23.625 23.9998C23.625 24.345 23.3452 24.6248 23 24.6248C22.6548 24.6248 22.375 24.345 22.375 23.9998H23.625ZM22.375 7.33317C22.375 6.98799 22.6548 6.70817 23 6.70817C23.3452 6.70817 23.625 6.98799 23.625 7.33317H22.375ZM22.375 23.9998V7.33317H23.625V23.9998H22.375ZM19.5417 16.4995V14.8328H20.7917V16.4995H19.5417ZM18.5 13.7912H8.49999V12.5412H18.5V13.7912ZM7.45832 14.8328V16.4995H6.20832V14.8328H7.45832ZM8.49999 17.5412H18.5V18.7912H8.49999V17.5412ZM7.45832 16.4995C7.45832 16.91 7.45965 17.155 7.48326 17.3306C7.49408 17.4111 7.50682 17.4514 7.51429 17.4695C7.51602 17.4737 7.51737 17.4765 7.51821 17.4781C7.51904 17.4797 7.5195 17.4804 7.51955 17.4805C7.51958 17.4805 7.51945 17.4803 7.51922 17.4801C7.51898 17.4798 7.51896 17.4798 7.51934 17.4802L6.63546 18.364C6.37794 18.1065 6.28424 17.7934 6.24441 17.4972C6.207 17.2189 6.20832 16.8747 6.20832 16.4995H7.45832ZM8.49999 18.7912C8.12482 18.7912 7.78057 18.7925 7.50232 18.7551C7.20608 18.7153 6.89298 18.6216 6.63546 18.364L7.51934 17.4802C7.51972 17.4805 7.51974 17.4805 7.51945 17.4803C7.51916 17.48 7.51896 17.4799 7.51902 17.48C7.51909 17.48 7.51979 17.4805 7.52138 17.4813C7.52299 17.4821 7.52576 17.4835 7.52996 17.4852C7.54811 17.4927 7.58841 17.5054 7.66888 17.5162C7.84448 17.5398 8.08948 17.5412 8.49999 17.5412V18.7912ZM8.49999 13.7912C8.08948 13.7912 7.84448 13.7925 7.66888 13.8161C7.58841 13.8269 7.54811 13.8397 7.52996 13.8471C7.52576 13.8489 7.52299 13.8502 7.52138 13.8511C7.51979 13.8519 7.51909 13.8524 7.51902 13.8524C7.51896 13.8524 7.51916 13.8523 7.51945 13.8521C7.51974 13.8518 7.51972 13.8518 7.51934 13.8522L6.63546 12.9683C6.89298 12.7108 7.20608 12.6171 7.50232 12.5773C7.78057 12.5398 8.12482 12.5412 8.49999 12.5412V13.7912ZM6.20832 14.8328C6.20832 14.4577 6.207 14.1134 6.24441 13.8352C6.28424 13.5389 6.37794 13.2258 6.63546 12.9683L7.51934 13.8522C7.51896 13.8526 7.51898 13.8526 7.51922 13.8523C7.51945 13.852 7.51958 13.8518 7.51955 13.8519C7.5195 13.8519 7.51904 13.8526 7.51821 13.8542C7.51737 13.8558 7.51602 13.8586 7.51429 13.8628C7.50682 13.881 7.49408 13.9213 7.48326 14.0017C7.45965 14.1773 7.45832 14.4223 7.45832 14.8328H6.20832ZM19.5417 14.8328C19.5417 14.4223 19.5403 14.1773 19.5167 14.0017C19.5059 13.9213 19.4932 13.881 19.4857 13.8628C19.484 13.8586 19.4826 13.8558 19.4818 13.8542C19.4809 13.8526 19.4805 13.8519 19.4804 13.8519C19.4804 13.8518 19.4805 13.852 19.4808 13.8523C19.481 13.8526 19.481 13.8526 19.4806 13.8522L20.3645 12.9683C20.622 13.2258 20.7157 13.5389 20.7556 13.8352C20.793 14.1134 20.7917 14.4577 20.7917 14.8328H19.5417ZM18.5 12.5412C18.8752 12.5412 19.2194 12.5398 19.4977 12.5773C19.7939 12.6171 20.107 12.7108 20.3645 12.9683L19.4806 13.8522C19.4803 13.8518 19.4802 13.8518 19.4805 13.8521C19.4808 13.8523 19.481 13.8524 19.481 13.8524C19.4809 13.8524 19.4802 13.8519 19.4786 13.8511C19.477 13.8502 19.4742 13.8489 19.47 13.8471C19.4519 13.8397 19.4116 13.8269 19.3311 13.8161C19.1555 13.7925 18.9105 13.7912 18.5 13.7912V12.5412ZM20.7917 16.4995C20.7917 16.8747 20.793 17.2189 20.7556 17.4972C20.7157 17.7934 20.622 18.1065 20.3645 18.364L19.4806 17.4802C19.481 17.4798 19.481 17.4798 19.4808 17.4801C19.4805 17.4803 19.4804 17.4805 19.4804 17.4805C19.4805 17.4804 19.4809 17.4797 19.4818 17.4781C19.4826 17.4765 19.484 17.4737 19.4857 17.4695C19.4932 17.4514 19.5059 17.4111 19.5167 17.3306C19.5403 17.155 19.5417 16.91 19.5417 16.4995H20.7917ZM18.5 17.5412C18.9105 17.5412 19.1555 17.5398 19.3311 17.5162C19.4116 17.5054 19.4519 17.4927 19.47 17.4852C19.4742 17.4835 19.477 17.4821 19.4786 17.4813C19.4802 17.4805 19.4809 17.48 19.481 17.48C19.481 17.4799 19.4808 17.48 19.4805 17.4803C19.4802 17.4805 19.4803 17.4805 19.4806 17.4802L20.3645 18.364C20.107 18.6216 19.7939 18.7153 19.4977 18.7551C19.2194 18.7925 18.8752 18.7912 18.5 18.7912V17.5412Z",fill:e})}),"ButtonAlignRightIcon"),tu=a(({color:e=In,width:t=dr,height:r=dr,...o})=>ou(G,{...o,width:t,height:r,children:[pr("path",{d:"M10.3007 18.8007C10.0566 19.0448 10.0566 19.4405 10.3007 19.6846C10.5448 19.9287 10.9405 19.9287 11.1846 19.6846L10.3007 18.8007ZM11.1846 10.3154C10.9405 10.0713 10.5448 10.0713 10.3007 10.3154C10.0566 10.5595 10.0566 10.9552 10.3007 11.1993L11.1846 10.3154ZM8.11464 14.375C7.76946 14.375 7.48964 14.6548 7.48964 15C7.48964 15.3452 7.76946 15.625 8.11464 15.625L8.11464 14.375ZM13.5092 15.625C13.8544 15.625 14.1342 15.3452 14.1342 15C14.1342 14.6548 13.8544 14.375 13.5092 14.375L13.5092 15.625ZM11.1846 19.6846L13.9512 16.918L13.0673 16.0341L10.3007 18.8007L11.1846 19.6846ZM13.9512 13.082L11.1846 10.3154L10.3007 11.1993L13.0673 13.9659L13.9512 13.082ZM13.9512 16.918C14.2866 16.5826 14.5836 16.2875 14.7889 16.0183C15.0053 15.7347 15.178 15.4078 15.178 15L13.928 15C13.928 15.0246 13.9267 15.0877 13.7951 15.2601C13.6526 15.4469 13.4277 15.6737 13.0673 16.0341L13.9512 16.918ZM13.0673 13.9659C13.4277 14.3263 13.6526 14.5531 13.7951 14.7399C13.9267 14.9123 13.928 14.9754 13.928 15L15.178 15C15.178 14.5922 15.0053 14.2653 14.7889 13.9817C14.5836 13.7125 14.2866 13.4174 13.9512 13.082L13.0673 13.9659ZM8.11464 15.625L13.5092 15.625L13.5092 14.375L8.11464 14.375L8.11464 15.625Z",fill:e}),pr("path",{d:"M21.6993 18.8007C21.9434 19.0448 21.9434 19.4405 21.6993 19.6846C21.4552 19.9287 21.0595 19.9287 20.8154 19.6846L21.6993 18.8007ZM20.8154 10.3154C21.0595 10.0713 21.4552 10.0713 21.6993 10.3154C21.9434 10.5595 21.9434 10.9552 21.6993 11.1993L20.8154 10.3154ZM23.8854 14.375C24.2305 14.375 24.5104 14.6548 24.5104 15C24.5104 15.3452 24.2305 15.625 23.8854 15.625L23.8854 14.375ZM18.4908 15.625C18.1456 15.625 17.8658 15.3452 17.8658 15C17.8658 14.6548 18.1456 14.375 18.4908 14.375L18.4908 15.625ZM20.8154 19.6846L18.0488 16.918L18.9327 16.0341L21.6993 18.8007L20.8154 19.6846ZM18.0488 13.082L20.8154 10.3154L21.6993 11.1993L18.9327 13.9659L18.0488 13.082ZM18.0488 16.918C17.7134 16.5826 17.4164 16.2875 17.2111 16.0183C16.9947 15.7347 16.822 15.4078 16.822 15L18.072 15C18.072 15.0246 18.0733 15.0877 18.2049 15.2601C18.3474 15.4469 18.5723 15.6737 18.9327 16.0341L18.0488 16.918ZM18.9327 13.9659C18.5723 14.3263 18.3474 14.5531 18.2049 14.7399C18.0733 14.9123 18.072 14.9754 18.072 15L16.822 15C16.822 14.5922 16.9947 14.2653 17.2111 13.9817C17.4164 13.7125 17.7134 13.4174 18.0488 13.082L18.9327 13.9659ZM23.8854 15.625L18.4908 15.625L18.4908 14.375L23.8854 14.375L23.8854 15.625Z",fill:e})]}),"ButtonSizeDefaultIcon"),ru=a(({color:e=In,width:t=dr,height:r=dr,...o})=>ou(G,{...o,width:t,height:r,children:[pr("path",{d:"M9.18459 18.8007C9.42867 19.0448 9.42867 19.4405 9.18459 19.6846C8.94051 19.9287 8.54479 19.9287 8.30071 19.6846L9.18459 18.8007ZM8.30071 10.3154C8.54479 10.0713 8.94051 10.0713 9.18459 10.3154C9.42867 10.5595 9.42867 10.9552 9.18459 11.1993L8.30071 10.3154ZM11.3707 14.375C11.7158 14.375 11.9957 14.6548 11.9957 15C11.9957 15.3452 11.7158 15.625 11.3707 15.625L11.3707 14.375ZM5.97605 15.625C5.63087 15.625 5.35105 15.3452 5.35105 15C5.35105 14.6548 5.63087 14.375 5.97605 14.375L5.97605 15.625ZM8.30071 19.6846L5.5341 16.918L6.41799 16.0341L9.18459 18.8007L8.30071 19.6846ZM5.5341 13.082L8.30071 10.3154L9.18459 11.1993L6.41799 13.9659L5.5341 13.082ZM5.5341 16.918C5.19869 16.5826 4.90174 16.2875 4.69637 16.0183C4.48 15.7347 4.30733 15.4078 4.30733 15L5.55733 15C5.55733 15.0246 5.55861 15.0877 5.69015 15.2601C5.83269 15.4469 6.05759 15.6737 6.41799 16.0341L5.5341 16.918ZM6.41799 13.9659C6.05759 14.3263 5.83269 14.5531 5.69015 14.7399C5.55861 14.9123 5.55733 14.9754 5.55733 15L4.30733 15C4.30733 14.5922 4.48 14.2653 4.69637 13.9817C4.90174 13.7125 5.19869 13.4174 5.5341 13.082L6.41799 13.9659ZM11.3707 15.625L5.97605 15.625L5.97605 14.375L11.3707 14.375L11.3707 15.625Z",fill:e}),pr("path",{d:"M22.8154 18.8007C22.5713 19.0448 22.5713 19.4405 22.8154 19.6846C23.0595 19.9287 23.4552 19.9287 23.6993 19.6846L22.8154 18.8007ZM23.6993 10.3154C23.4552 10.0713 23.0595 10.0713 22.8154 10.3154C22.5713 10.5595 22.5713 10.9552 22.8154 11.1993L23.6993 10.3154ZM20.6293 14.375C20.2842 14.375 20.0043 14.6548 20.0043 15C20.0043 15.3452 20.2842 15.625 20.6293 15.625L20.6293 14.375ZM26.024 15.625C26.3691 15.625 26.649 15.3452 26.649 15C26.649 14.6548 26.3691 14.375 26.024 14.375L26.024 15.625ZM23.6993 19.6846L26.4659 16.918L25.582 16.0341L22.8154 18.8007L23.6993 19.6846ZM26.4659 13.082L23.6993 10.3154L22.8154 11.1993L25.582 13.9659L26.4659 13.082ZM26.4659 16.918C26.8013 16.5826 27.0983 16.2875 27.3036 16.0183C27.52 15.7347 27.6927 15.4078 27.6927 15L26.4427 15C26.4427 15.0246 26.4414 15.0877 26.3099 15.2601C26.1673 15.4469 25.9424 15.6737 25.582 16.0341L26.4659 16.918ZM25.582 13.9659C25.9424 14.3263 26.1673 14.5531 26.3099 14.7399C26.4414 14.9123 26.4427 14.9754 26.4427 15L27.6927 15C27.6927 14.5922 27.52 14.2653 27.3036 13.9817C27.0983 13.7125 26.8013 13.4174 26.4659 13.082L25.582 13.9659ZM20.6293 15.625L26.024 15.625L26.024 14.375L20.6293 14.375L20.6293 15.625Z",fill:e})]}),"ButtonSizeFullIcon");import{jsx as z,jsxs as ot}from"react/jsx-runtime";var nu=a(({element:e,editor:t})=>{var l,s;let r=d1({resolver:u1(Xc),defaultValues:{...Pe,...e==null?void 0:e.attrs}}),{updateNodeAttributes:o}=cr({editor:t,element:e,form:r,nodeType:"button"}),n=((s=(l=t==null?void 0:t.extensionManager.extensions.find(c=>c.name==="variableSuggestion"))==null?void 0:l.options)==null?void 0:s.variables)||{},i=_t(n);return e?ot(tt,{...r,children:[z(ur,{type:"button"}),ot("form",{onChange:()=>{o(r.getValues())},children:[z("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Link"}),z(W,{control:r.control,name:"link",render:({field:c})=>ot(F,{children:[z(O,{children:z(kt,{as:"Textarea",...c,variables:i,onChange:u=>{c.onChange(u),o({...r.getValues(),link:u.target.value})}})}),z(U,{})]})}),z(ce,{className:"courier-mt-6 courier-mb-4"}),z("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Text"}),z(W,{control:r.control,name:"label",render:({field:c})=>ot(F,{className:"courier-mb-2",children:[z(O,{children:z(kt,{...c,variables:i,onChange:u=>{c.onChange(u),o({...r.getValues(),label:u.target.value})}})}),z(U,{})]})}),z(W,{control:r.control,name:"textColor",render:({field:c})=>ot(F,{className:"courier-mb-4",children:[z(O,{children:z(Oe,{...c,defaultValue:Pe.textColor,onChange:u=>{c.onChange(u),o({...r.getValues(),[c.name]:u})}})}),z(U,{})]})}),z(ce,{className:"courier-mt-6 courier-mb-4"}),z("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Background"}),z(W,{control:r.control,name:"backgroundColor",render:({field:c})=>ot(F,{className:"courier-mb-4",children:[z(O,{children:z(Oe,{...c,defaultValue:Pe.backgroundColor,onChange:u=>{c.onChange(u),o({...r.getValues(),[c.name]:u})}})}),z(U,{})]})}),z(ce,{className:"courier-mt-6 courier-mb-4"}),z("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Frame"}),z(W,{control:r.control,name:"padding",render:({field:c})=>ot(F,{className:"courier-mb-2",children:[z(O,{children:z(re,{type:"number",min:0,...c})}),z(U,{})]})}),ot("div",{className:"courier-flex courier-flex-row courier-gap-6",children:[z(W,{control:r.control,name:"alignment",render:({field:c})=>ot(F,{children:[z(O,{children:ot(Rt,{type:"single",value:c.value,onValueChange:u=>{c.onChange(u),o({...r.getValues(),alignment:u})},children:[z(Ie,{value:"left",children:z(ki,{})}),z(Ie,{value:"center",children:z(Pi,{})}),z(Ie,{value:"right",children:z(Mi,{})})]})}),z(U,{})]})}),z(W,{control:r.control,name:"size",render:({field:c})=>ot(F,{children:[z(O,{children:ot(Rt,{type:"single",value:c.value,onValueChange:u=>{c.onChange(u),o({...r.getValues(),size:u})},children:[z(Ie,{value:"default",children:z(tu,{})}),z(Ie,{value:"full",children:z(ru,{})})]})}),z(U,{})]})})]}),z(ce,{className:"courier-mt-6 courier-mb-4"}),z("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Border"}),ot("div",{className:"courier-flex courier-flex-row courier-gap-3 courier-mb-3",children:[z(W,{control:r.control,name:"borderWidth",render:({field:c})=>ot(F,{children:[z(O,{children:z(re,{startAdornment:z(Ut,{}),type:"number",min:0,...c})}),z(U,{})]})}),z(W,{control:r.control,name:"borderRadius",render:({field:c})=>ot(F,{children:[z(O,{children:z(re,{startAdornment:z(ro,{}),type:"number",min:0,...c})}),z(U,{})]})})]}),z(W,{control:r.control,name:"borderColor",render:({field:c})=>ot(F,{className:"courier-mb-4",children:[z(O,{children:z(Oe,{...c,defaultValue:Pe.borderColor,onChange:u=>{c.onChange(u),o({...r.getValues(),[c.name]:u})}})}),z(U,{})]})})]})]}):null},"ButtonForm");import{mergeAttributes as h1,Node as b1}from"@tiptap/core";import{ReactNodeViewRenderer as v1}from"@tiptap/react";import{v4 as y1}from"uuid";import{useSetAtom as p1}from"jotai";import{useCallback as m1}from"react";import{jsx as En,jsxs as g1}from"react/jsx-runtime";var f1=a(({button1Label:e,button1Link:t,button1BackgroundColor:r,button1TextColor:o,button2Label:n,button2Link:i,button2BackgroundColor:l,button2TextColor:s,padding:c=6})=>En("div",{className:"node-element",children:g1("div",{className:"courier-flex courier-gap-1 courier-justify-start",style:{marginTop:`${c}px`,marginBottom:`${c}px`},children:[En("div",{className:I("courier-inline-flex courier-justify-start courier-px-2 courier-py-1 courier-cursor-pointer courier-text-sm courier-rounded-sm courier-border courier-border-border"),style:{backgroundColor:r,color:o,borderColor:"#000000",borderRadius:"4px"},children:e}),En("div",{className:I("courier-inline-flex courier-justify-start courier-px-2 courier-py-1 courier-cursor-pointer courier-text-sm courier-rounded-sm courier-border courier-border-border"),style:{backgroundColor:l,color:s,borderColor:"#000000",borderRadius:"4px"},children:n})]})}),"ButtonRowComponent"),iu=a(e=>{let t=p1(rt),r=m1(()=>{if(!e.editor.isEditable)return;let o=e.getPos(),n=e.editor.state.doc.nodeAt(o);if(n){e.editor.commands.blur();let i=n.attrs.id;e.editor.state.doc.descendants(l=>l.type.name==="buttonRow"&&l.attrs.id===i?(t(l),!1):!0)}},[e,t]);return En(Bt,{id:e.node.attrs.id,className:I(e.node.attrs.isSelected&&"selected-element"),onClick:r,editor:e.editor,"data-node-type":"buttonRow",children:En(f1,{...e.node.attrs})})},"ButtonRowComponentNode");var qt={button1Label:"Register",button1Link:"",button1BackgroundColor:"#000000",button1TextColor:"#ffffff",button2Label:"Learn more",button2Link:"",button2BackgroundColor:"#ffffff",button2TextColor:"#000000",padding:6},Ni=b1.create({name:"buttonRow",group:"block",atom:!0,onCreate(){bt(this.editor,this.name)},addAttributes(){return{id:{default:()=>`node-${y1()}`,parseHTML:e=>e.getAttribute("id"),renderHTML:e=>({id:e.id})},button1Label:{default:qt.button1Label,parseHTML:e=>e.getAttribute("data-button1-label"),renderHTML:e=>({"data-button1-label":e.button1Label})},button1Link:{default:qt.button1Link,parseHTML:e=>e.getAttribute("data-button1-link"),renderHTML:e=>({"data-button1-link":e.button1Link})},button1BackgroundColor:{default:qt.button1BackgroundColor,parseHTML:e=>e.getAttribute("data-button1-bg"),renderHTML:e=>({"data-button1-bg":e.button1BackgroundColor})},button1TextColor:{default:qt.button1TextColor,parseHTML:e=>e.getAttribute("data-button1-color"),renderHTML:e=>({"data-button1-color":e.button1TextColor})},button2Label:{default:qt.button2Label,parseHTML:e=>e.getAttribute("data-button2-label"),renderHTML:e=>({"data-button2-label":e.button2Label})},button2Link:{default:qt.button2Link,parseHTML:e=>e.getAttribute("data-button2-link"),renderHTML:e=>({"data-button2-link":e.button2Link})},button2BackgroundColor:{default:qt.button2BackgroundColor,parseHTML:e=>e.getAttribute("data-button2-bg"),renderHTML:e=>({"data-button2-bg":e.button2BackgroundColor})},button2TextColor:{default:qt.button2TextColor,parseHTML:e=>e.getAttribute("data-button2-color"),renderHTML:e=>({"data-button2-color":e.button2TextColor})},padding:{default:qt.padding,parseHTML:e=>parseInt(e.getAttribute("data-padding")||"6"),renderHTML:e=>({"data-padding":e.padding})}}},parseHTML(){return[{tag:'div[data-type="buttonRow"]'}]},renderHTML({HTMLAttributes:e}){return["div",h1(e,{"data-type":"buttonRow"})]},addNodeView(){return v1(iu)},addCommands(){return{setButtonRow:e=>({chain:t})=>t().insertContent({type:this.name,attrs:{...qt,...e}}).run()}}});import{mergeAttributes as L1}from"@tiptap/core";import{Node as x1,mergeAttributes as C1,isNodeSelection as w1,nodeInputRule as T1}from"@tiptap/core";import{TextSelection as ss,NodeSelection as k1}from"@tiptap/pm/state";var au=x1.create({name:"horizontalRule",addOptions(){return{HTMLAttributes:{}}},group:"block",parseHTML(){return[{tag:"hr"}]},renderHTML({HTMLAttributes:e}){return["hr",C1(this.options.HTMLAttributes,e)]},addCommands(){return{setHorizontalRule:()=>({chain:e,state:t})=>{let{selection:r}=t,{$from:o,$to:n}=r,i=e();return o.parentOffset===0?i.insertContentAt({from:Math.max(o.pos-1,0),to:n.pos},{type:this.name}):w1(r)?i.insertContentAt(n.pos,{type:this.name}):i.insertContent({type:this.name}),i.command(({tr:l,dispatch:s})=>{var c;if(s){let{$to:u}=l.selection,d=u.end();if(u.nodeAfter)u.nodeAfter.isTextblock?l.setSelection(ss.create(l.doc,u.pos+1)):u.nodeAfter.isBlock?l.setSelection(k1.create(l.doc,u.pos)):l.setSelection(ss.create(l.doc,u.pos));else{let p=(c=u.parent.type.contentMatch.defaultType)===null||c===void 0?void 0:c.create();p&&(l.insert(d,p),l.setSelection(ss.create(l.doc,d+1)))}l.scrollIntoView()}return!0}).run()}}},addInputRules(){return[T1({find:/^(?:---|—-|___\s|\*\*\*\s)$/,type:this.type})]}});import{ReactNodeViewRenderer as I1}from"@tiptap/react";import{v4 as E1}from"uuid";import{useSetAtom as P1}from"jotai";import{useCallback as M1}from"react";import{jsx as Li}from"react/jsx-runtime";var N1=a(({padding:e,color:t,size:r,radius:o,variant:n="divider"})=>Li("div",{className:"courier-w-full node-element",children:Li("hr",{style:{marginTop:`${e}px`,marginBottom:`${e}px`,backgroundColor:n==="spacer"?"transparent":t,height:`${r}px`,borderRadius:`${o}px`,border:"none"},"data-variant":n})}),"DividerComponent"),su=a(e=>{let t=P1(rt),r=M1(()=>{if(!e.editor.isEditable)return;let o=e.getPos(),n=e.editor.state.doc.nodeAt(o);n&&(e.editor.commands.blur(),t(n))},[e,t]);return Li(Bt,{id:e.node.attrs.id,className:I(e.node.attrs.isSelected&&"selected-element"),onClick:r,editor:e.editor,children:Li(N1,{...e.node.attrs})})},"DividerComponentNode");var jt={padding:6,color:"#000000",size:1,radius:0,variant:"divider"},lu={padding:6,color:"transparent",size:1,radius:0,variant:"spacer"},ls=au.extend({name:"divider",atom:!0,onCreate(){bt(this.editor,this.name)},addAttributes(){return{padding:{default:jt.padding,parseHTML:e=>e.getAttribute("data-padding"),renderHTML:e=>({"data-padding":e.margin})},size:{default:jt.size,parseHTML:e=>e.getAttribute("data-size"),renderHTML:e=>({"data-size":e.size})},color:{default:jt.color,parseHTML:e=>e.getAttribute("data-color"),renderHTML:e=>({"data-color":e.color})},width:{default:jt.size,parseHTML:e=>e.getAttribute("data-size"),renderHTML:e=>({"data-size":e.size})},radius:{default:jt.radius,parseHTML:e=>e.getAttribute("data-radius"),renderHTML:e=>({"data-radius":e.radius})},variant:{default:jt.variant,parseHTML:e=>e.getAttribute("data-variant"),renderHTML:e=>({"data-variant":e.variant})},id:{default:()=>`node-${E1()}`,parseHTML:e=>e.getAttribute("data-id"),renderHTML:e=>({"data-id":e.id,"data-node-id":e.id})}}},parseHTML(){return[{tag:'div[data-type="divider"]'}]},renderHTML({HTMLAttributes:e}){return["div",L1(e,{"data-type":"divider"}),["hr"]]},addNodeView(){return I1(su)}});import{z as zo}from"zod";var cu=zo.object({padding:zo.number(),color:zo.string(),size:zo.number(),radius:zo.number(),variant:zo.enum(["divider","spacer"]).default("divider")});import{zodResolver as A1}from"@hookform/resolvers/zod";import{useForm as S1}from"react-hook-form";import{Fragment as R1,jsx as We,jsxs as $o}from"react/jsx-runtime";var uu=a(({element:e,editor:t})=>{let r=S1({resolver:A1(cu),defaultValues:{...jt,...e==null?void 0:e.attrs}}),{updateNodeAttributes:o}=cr({editor:t,element:e,form:r,nodeType:"divider"});if(!e)return null;let n=r.watch("variant");return $o(tt,{...r,children:[We(ur,{type:n}),$o("form",{onChange:()=>{o(r.getValues())},children:[We("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Frame"}),We(W,{control:r.control,name:"padding",render:({field:i})=>$o(F,{children:[We(O,{children:We(re,{startAdornment:We(oo,{}),type:"number",...i,onChange:l=>{i.onChange(l),o({...r.getValues(),margin:l.target.value})}})}),We(U,{})]})}),n==="divider"&&$o(R1,{children:[We(ce,{className:"courier-mt-6 courier-mb-4"}),We("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Line"}),We(W,{control:r.control,name:"size",render:({field:i})=>$o(F,{className:"courier-mb-4",children:[We(O,{children:We(re,{startAdornment:We(Ut,{}),type:"number",min:0,...i,onChange:l=>{i.onChange(l),o({...r.getValues(),width:l.target.value})}})}),We(U,{})]})}),We(W,{control:r.control,name:"color",render:({field:i})=>$o(F,{className:"courier-mb-4",children:[We(O,{children:We(Oe,{...i,defaultValue:jt.color,onChange:l=>{i.onChange(l),o({...r.getValues(),[i.name]:l})}})}),We(U,{})]})})]})]})]})},"DividerForm");import{Node as B1}from"@tiptap/core";var du=B1.create({name:"doc",topNode:!0,content:"block+"});var cs=du.extend({content:"(block)+"});import{Node as z1}from"@tiptap/core";import{ReactNodeViewRenderer as $1}from"@tiptap/react";import{useSortable as H1}from"@dnd-kit/sortable";import{NodeViewWrapper as D1}from"@tiptap/react";import{forwardRef as V1,useEffect as pu,useState as F1}from"react";import{jsx as Ii}from"react/jsx-runtime";function O1(){let[e,t]=F1(!1);return pu(()=>{let r=setTimeout(()=>t(!0),500);return()=>clearTimeout(r)},[]),e}a(O1,"useMountStatus");var W1=V1(({children:e,className:t,dragOverlay:r,id:o},n)=>(pu(()=>{if(r)return document.body.style.cursor="grabbing",()=>{document.body.style.cursor=""}},[r]),Ii(D1,{ref:n,"data-cypress":"draggable-item","data-node-view-wrapper":!0,"data-id":o,className:I("courier-flex courier-items-start courier-gap-2 courier-pl-6",t),children:e}))),mu=a(({node:e})=>{let t=e.attrs.type,r=e.attrs.id,{setNodeRef:o,setActivatorNodeRef:n,listeners:i,isDragging:l,transform:s,transition:c}=H1({id:r}),u=O1();return Ii(W1,{ref:o,id:r,transition:c,transform:s,fadeIn:l&&!u,listeners:i,handleProps:{ref:n},children:Ii("div",{className:I("courier-relative courier-flex courier-flex-grow courier-items-center courier-px-5 courier-py-[18px] courier-bg-background/50","courier-border-2 courier-border-dashed courier-border-accent-foreground courier-rounded-md"),children:Ii("div",{className:"courier-text-accent-foreground",children:t==="text"?"Text":t==="heading"?"Heading":t==="spacer"?"Spacer":t==="divider"?"Divider":t==="button"?"Button":t==="image"?"Image":t})})})},"DragPlaceholderComponent");var fu=z1.create({name:"dragPlaceholder",group:"block",atom:!0,draggable:!0,addAttributes(){return{id:{default:null,parseHTML:e=>e.getAttribute("data-id"),renderHTML:e=>e.id?{"data-id":e.id}:{}},type:{default:"text",parseHTML:e=>e.getAttribute("data-type"),renderHTML:e=>({"data-type":e.type})}}},parseHTML(){return[{tag:'div[data-type="drag-placeholder"]'}]},renderHTML({HTMLAttributes:e}){return["div",{"data-type":"drag-placeholder",...e},0]},addCommands(){return{setDragPlaceholder:e=>({tr:t,dispatch:r})=>{if(r){let o=this.type.create(e);typeof e.pos=="number"?t.insert(e.pos,o):t.replaceSelectionWith(o)}return!0},removeDragPlaceholder:()=>({tr:e,state:t,dispatch:r})=>{let o=!1;return t.doc.descendants((n,i)=>n.type.name===this.name?(r&&(n!=null&&n.nodeSize)&&(e.delete(i,i+n.nodeSize),o=!0),!1):!0),o}}},addNodeView(){return $1(mu,{as:"div",className:"drag-placeholder-wrapper"})}});import{Extension as U1}from"@tiptap/core";import{Plugin as Z1,PluginKey as _1}from"@tiptap/pm/state";var q1=new _1("file-handler"),j1=U1.create({name:"fileHandler",addOptions(){return{allowedMimeTypes:[],onDrop:()=>{},onPaste:()=>{}}},addProseMirrorPlugins(){let{allowedMimeTypes:e,onDrop:t,onPaste:r}=this.options;return[new Z1({key:q1,props:{handleDrop:(o,n,i,l)=>{var d;if(!((d=n.dataTransfer)!=null&&d.files)||l)return!1;let{files:s}=n.dataTransfer,c=o.posAtCoords({left:n.clientX,top:n.clientY});if(!c)return!1;let u=Array.from(s).filter(p=>e==null?void 0:e.includes(p.type));return u.length===0?!1:(n.preventDefault(),t&&t(this.editor,u,c.pos),!0)},handlePaste:(o,n)=>{var s;if(!((s=n.clipboardData)!=null&&s.files))return!1;let{files:i}=n.clipboardData,l=Array.from(i).filter(c=>e==null?void 0:e.includes(c.type));return l.length===0?!1:(n.preventDefault(),r&&r(this.editor,l),!0)}}})]}}),Ei=j1;import{mergeAttributes as og}from"@tiptap/core";import{Node as G1,mergeAttributes as K1,textblockTypeInputRule as J1}from"@tiptap/core";var gu=G1.create({name:"heading",addOptions(){return{levels:[1,2,3,4,5,6],HTMLAttributes:{}}},content:"inline*",group:"block",defining:!0,addAttributes(){return{level:{default:1,rendered:!1}}},parseHTML(){return this.options.levels.map(e=>({tag:`h${e}`,attrs:{level:e}}))},renderHTML({node:e,HTMLAttributes:t}){return[`h${this.options.levels.includes(e.attrs.level)?e.attrs.level:this.options.levels[0]}`,K1(this.options.HTMLAttributes,t),0]},addCommands(){return{setHeading:e=>({commands:t})=>this.options.levels.includes(e.level)?t.setNode(this.name,e):!1,toggleHeading:e=>({commands:t})=>this.options.levels.includes(e.level)?t.toggleNode(this.name,"paragraph",e):!1}},addKeyboardShortcuts(){return this.options.levels.reduce((e,t)=>({...e,[`Mod-Alt-${t}`]:()=>this.editor.commands.toggleHeading({level:t})}),{})},addInputRules(){return this.options.levels.map(e=>J1({find:new RegExp(`^(#{${Math.min(...this.options.levels)},${e}})\\s$`),type:this.type,getAttributes:{level:e}}))}});import{z as Gt}from"zod";var hu=Gt.object({paddingVertical:Gt.number(),paddingHorizontal:Gt.number(),backgroundColor:Gt.string(),borderWidth:Gt.number(),borderRadius:Gt.number(),borderColor:Gt.string(),textColor:Gt.string(),textAlign:Gt.enum(["left","center","right","justify"]).default("left"),selected:Gt.boolean().default(!1),id:Gt.string().optional()}),Q={paddingVertical:6,paddingHorizontal:0,backgroundColor:"transparent",borderWidth:0,borderRadius:0,borderColor:"#000000",textColor:"#292929",textAlign:"left",selected:!1};import{NodeViewContent as X1,NodeViewWrapper as Y1}from"@tiptap/react";import{useSetAtom as Q1}from"jotai";import{useCallback as eg}from"react";import{jsx as so}from"react/jsx-runtime";var bu=a(({paddingVertical:e,paddingHorizontal:t,textAlign:r,backgroundColor:o,borderWidth:n,borderRadius:i,borderColor:l,textColor:s,level:c,type:u})=>{let d=u==="heading"?`h${c}`:"p";return so("div",{className:"courier-w-full node-element",children:so("div",{className:I(!s&&"is-empty"),style:{padding:`${e}px ${t}px`,textAlign:r,backgroundColor:o,borderWidth:`${n}px`,borderRadius:`${i}px`,borderColor:l,borderStyle:n>0?"solid":"none",color:s},children:so(X1,{as:d})})})},"TextBlockComponent"),Ai=a(e=>{let t=Q1(rt),r=eg(()=>{if(!e.editor.isEditable)return;let l=e.getPos(),s=e.editor.state.doc.nodeAt(l);s&&t(s)},[e,t]),o=!e.node.content||e.node.content.size===0;return e.editor.state.doc.resolve(e.getPos()).parent.type.name==="blockquote"?so(Y1,{className:I(e.node.attrs.isSelected&&"selected-element"),onClick:r,children:so(bu,{...e.node.attrs,type:e.node.type.name})}):so(Bt,{id:e.node.attrs.id,className:I(e.node.attrs.isSelected&&"selected-element",o&&"is-empty"),onClick:r,editor:e.editor,children:so(bu,{...e.node.attrs,type:e.node.type.name})})},"TextBlockComponentNode");import{zodResolver as tg}from"@hookform/resolvers/zod";import{useForm as rg}from"react-hook-form";import{jsx as ie,jsxs as Kt}from"react/jsx-runtime";var vu=a(({element:e,editor:t})=>{let r=rg({resolver:tg(hu),defaultValues:{...Q,...e==null?void 0:e.attrs}}),{updateNodeAttributes:o}=cr({editor:t,element:e,form:r,nodeType:(e==null?void 0:e.type.name)||"paragraph"});return e?Kt(tt,{...r,children:[ie(ur,{type:"text"}),Kt("form",{onChange:()=>{o(r.getValues())},children:[ie("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Frame"}),Kt("div",{className:"courier-flex courier-flex-row courier-gap-3 courier-mb-3",children:[ie(W,{control:r.control,name:"paddingHorizontal",render:({field:n})=>Kt(F,{children:[ie(O,{children:ie(re,{startAdornment:ie(xn,{}),type:"number",min:0,...n})}),ie(U,{})]})}),ie(W,{control:r.control,name:"paddingVertical",render:({field:n})=>Kt(F,{children:[ie(O,{children:ie(re,{startAdornment:ie(oo,{}),type:"number",min:0,...n})}),ie(U,{})]})})]}),ie(W,{control:r.control,name:"backgroundColor",render:({field:n})=>Kt(F,{className:"courier-mb-4",children:[ie(O,{children:ie(Oe,{...n,defaultValue:Q.backgroundColor,onChange:i=>{n.onChange(i),o({...r.getValues(),[n.name]:i})}})}),ie(U,{})]})}),ie(ce,{className:"courier-mb-4"}),ie("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Text"}),ie(W,{control:r.control,name:"textColor",render:({field:n})=>Kt(F,{className:"courier-mb-4",children:[ie(O,{children:ie(Oe,{...n,transparent:!1,defaultValue:Q.textColor,onChange:i=>{n.onChange(i),o({...r.getValues(),[n.name]:i})}})}),ie(U,{})]})}),ie(ce,{className:"courier-mb-4"}),ie("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Border"}),Kt("div",{className:"courier-flex courier-flex-row courier-gap-3 courier-mb-3",children:[ie(W,{control:r.control,name:"borderWidth",render:({field:n})=>Kt(F,{children:[ie(O,{children:ie(re,{startAdornment:ie(Ut,{}),type:"number",min:0,...n})}),ie(U,{})]})}),ie(W,{control:r.control,name:"borderRadius",render:({field:n})=>Kt(F,{children:[ie(O,{children:ie(re,{startAdornment:ie(ro,{}),type:"number",min:0,...n})}),ie(U,{})]})})]}),ie(W,{control:r.control,name:"borderColor",render:({field:n})=>Kt(F,{className:"courier-mb-4",children:[ie(O,{children:ie(Oe,{...n,defaultValue:Q.borderColor,onChange:i=>{n.onChange(i),o({...r.getValues(),[n.name]:i})}})}),ie(U,{})]})})]})]}):null},"TextBlockForm");import{ReactNodeViewRenderer as ng}from"@tiptap/react";var us=gu.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),HTMLAttributes:{class:""}}},onCreate(){bt(this.editor,this.name)},addAttributes(){var e;return{...(e=this.parent)==null?void 0:e.call(this),paddingVertical:{default:Q.paddingVertical,parseHTML:t=>t.style.paddingTop?parseInt(t.style.paddingTop):Q.paddingVertical,renderHTML:t=>({style:`padding-top: ${t.paddingVertical}px; padding-bottom: ${t.paddingVertical}px;`})},paddingHorizontal:{default:Q.paddingHorizontal,parseHTML:t=>t.style.paddingLeft?parseInt(t.style.paddingLeft):Q.paddingHorizontal,renderHTML:t=>({style:`padding-left: ${t.paddingHorizontal}px; padding-right: ${t.paddingHorizontal}px;`})},textAlign:{default:Q.textAlign,parseHTML:t=>t.style.textAlign||Q.textAlign,renderHTML:t=>({style:`text-align: ${t.textAlign}`})},backgroundColor:{default:Q.backgroundColor,parseHTML:t=>t.style.backgroundColor||Q.backgroundColor,renderHTML:t=>({style:`background-color: ${t.backgroundColor}`})},borderWidth:{default:Q.borderWidth,parseHTML:t=>t.style.borderWidth?parseInt(t.style.borderWidth):Q.borderWidth,renderHTML:t=>({style:`border-width: ${t.borderWidth}px`})},borderRadius:{default:Q.borderRadius,parseHTML:t=>t.style.borderRadius?parseInt(t.style.borderRadius):Q.borderRadius,renderHTML:t=>({style:`border-radius: ${t.borderRadius}px`})},borderColor:{default:Q.borderColor,parseHTML:t=>t.style.borderColor||Q.borderColor,renderHTML:t=>({style:`border-color: ${t.borderColor}`})},textColor:{default:Q.textColor,parseHTML:t=>t.style.color||Q.textColor,renderHTML:t=>({style:`color: ${t.textColor}`})},id:{default:()=>null,parseHTML:t=>t.getAttribute("data-id"),renderHTML:t=>({"data-id":t.id})}}},addCommands(){return{setTextAlign:e=>({chain:t})=>t().updateAttributes(this.name,{textAlign:e}).run()}},parseHTML(){return[{tag:'div[data-type="heading"]'}]},renderHTML({node:e,HTMLAttributes:t}){let r=parseInt(e.attrs.level,10);return[`h${this.options.levels.includes(r)?r:this.options.levels[0]}`,og(this.options.HTMLAttributes,t),0]},addNodeView(){return ng(Ai)}});import{mergeAttributes as cg,Node as ug}from"@tiptap/core";import{ReactNodeViewRenderer as dg}from"@tiptap/react";var Si=a(async(e,t)=>{let{apiUrl:r,token:o}=t;if(!e.type.startsWith("image/"))throw new Error(`Invalid file type: ${e.type}. Only image files are supported.`);let n=e.name.split(".").pop()||"",i=`image_${Date.now()}_${Math.random().toString(36).substring(2,10)}.${n}`,s=(await new Promise((c,u)=>{let d=new FileReader;d.onload=()=>{typeof d.result=="string"?c(d.result):u(new Error("Failed to read file as data URL"))},d.onerror=()=>u(d.error),d.readAsDataURL(e)})).split(",")[1];try{let u=await(await fetch(r,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${o}`},body:JSON.stringify({query:`
170
155
  mutation UploadImage($input: UploadImageInput!) {
171
156
  tenant {
172
157
  notification {
@@ -176,18 +161,33 @@ var mp=Object.defineProperty;var s=(e,t)=>mp(e,"name",{value:t,configurable:!0})
176
161
  }
177
162
  }
178
163
  }
179
- `,variables:{input:{name:i,type:e.type,data:c}}})})).json();if(u.errors)throw new Error(u.errors.map(p=>p.message).join(`
180
- `));return u.data.tenant.notification.uploadImage.url}catch(l){throw console.error("Error uploading image:",l),l}},"uploadImage");import{useAtomValue as Za,useSetAtom as vf}from"jotai";import{useCallback as pr,useEffect as _a,useMemo as yf,useRef as Tl,useState as kl}from"react";import{toast as Pl}from"sonner";import{Fragment as Cf,jsx as dr,jsxs as qa}from"react/jsx-runtime";var xf=s(({sourcePath:e,alt:t,alignment:r,borderWidth:o,borderRadius:n,borderColor:i,isUploading:a,width:c,imageNaturalWidth:l,onFileSelect:u,editor:d})=>{let[p,m]=kl(!1),[h,b]=kl(!0),g=Tl(null),v=Tl(null);_a(()=>{e&&b(!0)},[e]),_a(()=>{if(e&&!l&&d){let y=new Image;y.onload=()=>{try{if(!d.view||!d.state)return;let M=d.view.state.selection.from;d.chain().setNodeSelection(M).updateAttributes("imageBlock",{imageNaturalWidth:y.naturalWidth}).run()}catch{}},y.src=e}},[e,l,d]);let k=pr(y=>{var I,H;let M=(H=(I=d==null?void 0:d.view)==null?void 0:I.dom)==null?void 0:H.closest(".ProseMirror"),S=(M==null?void 0:M.clientWidth)||1e3,C=Math.min(100,y/S*100);return Math.round(C)},[d]),R=yf(()=>k(l),[k,l]),T=pr(y=>{y.preventDefault(),y.stopPropagation(),y.dataTransfer.types.includes("Files")&&Array.from(y.dataTransfer.items).some(C=>C.type.startsWith("image/"))&&(m(!0),y.dataTransfer.dropEffect="copy")},[]),f=pr(y=>{y.preventDefault(),y.stopPropagation(),m(!1)},[]),w=pr(y=>{y.preventDefault(),y.stopPropagation(),y.dataTransfer.types.includes("Files")&&Array.from(y.dataTransfer.items).some(C=>C.type.startsWith("image/"))&&m(!0)},[]),P=pr(y=>{y.preventDefault(),y.stopPropagation(),m(!1);let S=Array.from(y.dataTransfer.files).find(C=>C.type.startsWith("image/"));S&&u&&u(S)},[u]),A=pr(y=>{var S;let M=(S=y.target.files)==null?void 0:S[0];M&&u&&u(M)},[u]),N=pr(()=>{var y;(y=g.current)==null||y.click()},[]);return e?dr("div",{className:"courier-w-full node-element",children:qa("div",{className:E("courier-relative courier-p-1",(a||h)&&"courier-min-h-[200px] courier-min-w-[300px] courier-bg-gray-100"),children:[(a||h)&&dr("div",{className:"courier-absolute courier-inset-0 courier-flex courier-items-center courier-justify-center",children:dr(to,{className:"courier-w-8 courier-h-8"})}),dr("img",{ref:v,src:e,alt:t,className:E("courier-h-auto courier-inline-block courier-w-full",{left:"courier-mr-auto",center:"courier-mx-auto",right:"courier-ml-auto"}[r],a&&"courier-opacity-50",(a||h)&&"courier-invisible"),style:{maxWidth:c===R?`${l}px`:`${c}%`,borderWidth:`${o}px`,borderRadius:`${n}px`,borderColor:i,borderStyle:o>0?"solid":"none",display:"block"},loading:"lazy",decoding:"async",draggable:!1,onLoad:y=>{if(b(!1),!l&&d)try{if(!d.view||!d.state)return;setTimeout(()=>{let M=d.view.state.selection.from;d.chain().setNodeSelection(M).updateAttributes("imageBlock",{imageNaturalWidth:y.target.naturalWidth}).run()},100)}catch(M){console.warn("Editor not ready for image update:",M)}},onError:()=>b(!1)})]})}):qa("div",{className:E("courier-w-full node-element courier-empty-image courier-h-[160px] courier-bg-gray-100 courier-rounded-md courier-flex courier-flex-row courier-items-center courier-justify-center courier-cursor-pointer courier-transition-colors courier-flex-1",p&&"courier-border-primary courier-bg-gray-50"),onDragOver:T,onDragEnter:w,onDragLeave:f,onDrop:P,style:{pointerEvents:"all"},children:[a?dr(to,{className:"courier-w-8 courier-h-8"}):qa(Cf,{children:[dr("span",{className:"courier-text-sm courier-pointer-events-none courier-inline-block",children:"Drag and drop image, or\xA0"}),dr("button",{className:"courier-underline courier-font-medium courier-inline-block courier-text-sm",onClick:N,children:"Browse"})]}),dr("input",{ref:g,type:"file",accept:"image/*",className:"courier-hidden",onChange:A})]})},"ImageBlockComponent"),Ml=s(e=>{let t=vf(yt),r=Za(et),o=Za(tt),n=Za(Ee),i=pr(l=>{var m,h,b;let u=(b=(h=(m=e.editor)==null?void 0:m.view)==null?void 0:h.dom)==null?void 0:b.closest(".ProseMirror"),d=(u==null?void 0:u.clientWidth)||1e3,p=Math.min(100,l/d*100);return Math.round(p)},[e.editor]);_a(()=>{var u,d;let l=e.editor.state.doc.nodeAt(e.getPos());if((u=l==null?void 0:l.attrs)!=null&&u.sourcePath&&!((d=l==null?void 0:l.attrs)!=null&&d.imageNaturalWidth)){let p=new Image;p.onload=()=>{let m=l.attrs.width||i(p.naturalWidth);e.editor.chain().focus().setNodeSelection(e.getPos()).updateAttributes("imageBlock",{width:m,imageNaturalWidth:p.naturalWidth}).run()},p.src=l.attrs.sourcePath}},[e,e.getPos,i]);let a=pr(()=>{if(!e.editor.isEditable)return;let l=e.getPos(),u=e.editor.state.doc.nodeAt(l);u&&(e.editor.commands.blur(),t(u))},[e,t]),c=pr(async l=>{if(!r||!o||!n){Pl.error("Missing configuration for image upload");return}let u=e.getPos();e.editor.state.doc.nodeAt(u)&&e.editor.chain().focus().setNodeSelection(u).updateAttributes("imageBlock",{isUploading:!0}).run();try{if(!l.type.startsWith("image/"))throw new Error("Only image files are supported");let p=new FileReader;p.readAsDataURL(l),await new Promise((g,v)=>{p.onload=g,p.onerror=v});let m=await hi(l,{apiUrl:r,token:o,tenantId:n}),h=e.getPos();if(e.editor.state.doc.nodeAt(h)){let g=new Image;g.src=m,await new Promise(k=>{g.onload=k});let v=i(g.naturalWidth);e.editor.chain().focus().setNodeSelection(h).updateAttributes("imageBlock",{sourcePath:m,isUploading:!1,width:v,imageNaturalWidth:g.naturalWidth}).run()}}catch(p){console.error("Error uploading image:",p);let m="Failed to upload image";if(p instanceof Error){let g=p.message;g.includes("GraphQL error")?m="Server error: Could not process image":(g.includes("network")||g.includes("fetch"))&&(m="Network error: Could not upload image")}Pl.error(m);let h=e.getPos();e.editor.state.doc.nodeAt(h)&&e.editor.chain().focus().setNodeSelection(h).updateAttributes("imageBlock",{isUploading:!1}).run()}},[e,i,r,o,n]);return dr(ur,{id:e.node.attrs.id,className:E(e.node.attrs.isSelected&&"selected-element"),onClick:a,editor:e.editor,children:dr(xf,{...e.node.attrs,onFileSelect:c,editor:e.editor})})},"ImageBlockView");var Ue={sourcePath:"",link:"",alt:"",alignment:"center",width:1,borderWidth:0,borderRadius:0,borderColor:"#000000",isUploading:!1,imageNaturalWidth:0},bi=Tf.create({name:"imageBlock",group:"block",atom:!0,inline:!1,onCreate(){Vt(this.editor,this.name)},addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),placeholder:""}},addAttributes(){return{sourcePath:{default:Ue.sourcePath,parseHTML:e=>e.getAttribute("data-source-path")||"",renderHTML:e=>({"data-source-path":e.sourcePath||""})},link:{default:Ue.link,parseHTML:e=>e.getAttribute("data-link"),renderHTML:e=>({"data-link":e.link})},alt:{default:Ue.alt,parseHTML:e=>e.getAttribute("data-alt"),renderHTML:e=>({"data-alt":e.alt})},alignment:{default:Ue.alignment,parseHTML:e=>e.getAttribute("data-alignment"),renderHTML:e=>({"data-alignment":e.alignment})},width:{default:Ue.width,parseHTML:e=>e.getAttribute("data-width"),renderHTML:e=>({"data-width":e.width})},imageNaturalWidth:{default:Ue.imageNaturalWidth,parseHTML:e=>e.getAttribute("data-natural-width"),renderHTML:e=>({"data-natural-width":e.imageNaturalWidth})},borderWidth:{default:Ue.borderWidth,parseHTML:e=>e.getAttribute("data-border-width"),renderHTML:e=>({"data-border-width":e.borderWidth})},borderRadius:{default:Ue.borderRadius,parseHTML:e=>e.getAttribute("data-border-radius"),renderHTML:e=>({"data-border-radius":e.borderRadius})},borderColor:{default:Ue.borderColor,parseHTML:e=>e.getAttribute("data-border-color"),renderHTML:e=>({"data-border-color":e.borderColor})},isUploading:{default:Ue.isUploading,parseHTML:e=>e.getAttribute("data-is-uploading"),renderHTML:e=>({"data-is-uploading":e.isUploading})},id:{default:void 0,parseHTML:e=>e.getAttribute("data-id"),renderHTML:e=>({"data-id":e.id})}}},parseHTML(){return[{tag:'div[data-type="image-block"]'}]},renderHTML({HTMLAttributes:e}){return["div",wf(this.options.HTMLAttributes,e,{"data-type":"image-block"}),0]},addNodeView(){return kf(Ml)},addCommands(){return{setImageBlock:e=>({chain:t})=>t().insertContent({type:this.name,attrs:{...Ue,...e}}).run(),setImageBlockAt:({pos:e,src:t})=>({chain:r})=>r().insertContentAt(e,{type:this.name,attrs:{...Ue,sourcePath:t||""}}).run(),setImageBlockAlign:e=>({commands:t})=>t.updateAttributes(this.name,{alignment:e}),setImageBlockWidth:e=>({commands:t})=>t.updateAttributes(this.name,{width:e}),uploadImage:e=>({chain:t})=>{let r=new FileReader;return r.onload=()=>{t().setImageBlock({sourcePath:r.result,isUploading:!0}).run()},r.readAsDataURL(e),!0}}}});import{z as Jt}from"zod";var Nl=Jt.object({paddingVertical:Jt.number(),paddingHorizontal:Jt.number(),backgroundColor:Jt.string(),borderWidth:Jt.number(),borderRadius:Jt.number(),borderColor:Jt.string(),textColor:Jt.string(),textAlign:Jt.enum(["left","center","right","justify"]).default("left"),selected:Jt.boolean().default(!1),id:Jt.string().optional()}),Y={paddingVertical:6,paddingHorizontal:0,backgroundColor:"transparent",borderWidth:0,borderRadius:0,borderColor:"#000000",textColor:"#292929",textAlign:"left",selected:!1};import{NodeViewContent as Pf,NodeViewWrapper as Mf}from"@tiptap/react";import{useSetAtom as Nf}from"jotai";import{useCallback as If}from"react";import{jsx as no}from"react/jsx-runtime";var Il=s(({paddingVertical:e,paddingHorizontal:t,textAlign:r,backgroundColor:o,borderWidth:n,borderRadius:i,borderColor:a,textColor:c,level:l,type:u})=>{let d=u==="heading"?`h${l}`:"p";return no("div",{className:"courier-w-full node-element",children:no("div",{className:E(!c&&"is-empty"),style:{padding:`${e}px ${t}px`,textAlign:r,backgroundColor:o,borderWidth:`${n}px`,borderRadius:`${i}px`,borderColor:a,borderStyle:n>0?"solid":"none",color:c},children:no(Pf,{as:d})})})},"TextBlockComponent"),vi=s(e=>{let t=Nf(yt),r=If(()=>{if(!e.editor.isEditable)return;let a=e.getPos(),c=e.editor.state.doc.nodeAt(a);c&&t(c)},[e,t]),o=!e.node.content||e.node.content.size===0;return e.editor.state.doc.resolve(e.getPos()).parent.type.name==="blockquote"?no(Mf,{className:E(e.node.attrs.isSelected&&"selected-element"),onClick:r,children:no(Il,{...e.node.attrs,type:e.node.type.name})}):no(ur,{id:e.node.attrs.id,className:E(e.node.attrs.isSelected&&"selected-element",o&&"is-empty"),onClick:r,editor:e.editor,children:no(Il,{...e.node.attrs,type:e.node.type.name})})},"TextBlockComponentNode");import{zodResolver as Wf}from"@hookform/resolvers/zod";import{useForm as zf}from"react-hook-form";import{useEffect as Lf,useRef as Ll}from"react";var mr=s(({editor:e,element:t,form:r,nodeType:o})=>{let n=Ll(null),i=Ll(null);return Lf(()=>{if(!e||!t)return;let c=s(()=>{let l=null;if(e.state.doc.descendants((u,d)=>u.attrs.id===t.attrs.id?(l=d,!1):!0),l!==null){let u=e.state.doc.nodeAt(l);(u==null?void 0:u.type.name)===o&&(n.current=u,i.current=l,Object.entries(u.attrs).forEach(([d,p])=>{r.getValues(d)!==p&&r.setValue(d,p)}))}},"updateCurrentNode");return c(),e.on("update",c),()=>{e.off("update",c)}},[e,t,r,o]),{updateNodeAttributes:s(c=>{!e||i.current===null||e.commands.command(({tr:l})=>{let u=l.doc.nodeAt(i.current);if((u==null?void 0:u.type.name)===o){let d={...u.attrs,...c,id:u.attrs.id};return l.setNodeMarkup(i.current,u.type,d),!0}return!1})},"updateNodeAttributes")}},"useNodeAttributes");import{useSetAtom as Ff}from"jotai";import{jsx as El,jsxs as Ef}from"react/jsx-runtime";var xt=s(({draggable:e=!1,icon:t,draggableLabel:r,label:o})=>Ef("div",{className:"courier-flex courier-flex-row courier-items-center courier-gap-2",children:[El("div",{className:E("courier-w-8 courier-h-8 courier-rounded-md courier-flex courier-items-center courier-justify-center",e?"courier-cursor-grab courier-bg-[#F5F5F5]":"courier-border"),children:t}),El("span",{className:"courier-text-sm courier-font-medium",children:e?r:o})]}),"BlockBase");import{Quote as Af}from"lucide-react";import{jsx as Al}from"react/jsx-runtime";var Sl=s(({draggable:e=!1})=>Al(xt,{draggable:e,icon:Al(Af,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),draggableLabel:"Blockquote",label:"Blockquote block"}),"BlockquoteBlock");import{jsx as yi}from"react/jsx-runtime";var Sf=s(()=>yi("svg",{width:"20",height:"12",viewBox:"0 0 20 12",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:yi("path",{d:"M18 1.5H2C1.71875 1.5 1.5 1.75 1.5 2V10C1.5 10.2812 1.71875 10.5 2 10.5H18C18.25 10.5 18.5 10.2812 18.5 10V2C18.5 1.75 18.25 1.5 18 1.5ZM2 0H18C19.0938 0 20 0.90625 20 2V10C20 11.125 19.0938 12 18 12H2C0.875 12 0 11.125 0 10V2C0 0.90625 0.875 0 2 0Z",fill:"#171717"})}),"ButtonBlockIcon"),Bo=s(({draggable:e=!1})=>yi(xt,{draggable:e,icon:yi(Sf,{}),draggableLabel:"Button",label:"Button block"}),"ButtonBlock");import{jsx as xi}from"react/jsx-runtime";var Rf=s(()=>xi("svg",{width:"16",height:"2",viewBox:"0 0 16 2",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:xi("path",{d:"M0 1C0 0.59375 0.3125 0.25 0.75 0.25H15.25C15.6562 0.25 16 0.59375 16 1C16 1.4375 15.6562 1.75 15.25 1.75H0.75C0.3125 1.75 0 1.4375 0 1Z",fill:"#171717"})}),"DividerBlockIcon"),Ho=s(({draggable:e=!1})=>xi(xt,{draggable:e,icon:xi(Rf,{}),draggableLabel:"Divider",label:"Divider block"}),"DividerBlock");import{jsx as Ci}from"react/jsx-runtime";var Bf=s(()=>Ci("svg",{width:"18",height:"13",viewBox:"0 0 18 13",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:Ci("path",{d:"M1.5 1.75V6H8.5V1.75C8.5 1.34375 8.8125 1 9.25 1C9.65625 1 10 1.34375 10 1.75V6.75V12.25C10 12.6875 9.65625 13 9.25 13C8.8125 13 8.5 12.6875 8.5 12.25V7.5H1.5V12.25C1.5 12.6875 1.15625 13 0.75 13C0.3125 13 0 12.6875 0 12.25V6.75V1.75C0 1.34375 0.3125 1 0.75 1C1.15625 1 1.5 1.34375 1.5 1.75ZM15.75 1.75V11.5H17.25C17.6562 11.5 18 11.8438 18 12.25C18 12.6875 17.6562 13 17.25 13H15H12.75C12.3125 13 12 12.6875 12 12.25C12 11.8438 12.3125 11.5 12.75 11.5H14.25V3.03125L13.0938 3.65625C12.75 3.875 12.2812 3.75 12.0938 3.375C11.875 3 12 2.5625 12.375 2.34375L14.625 1.09375C14.8438 0.96875 15.125 0.96875 15.375 1.125C15.5938 1.25 15.75 1.5 15.75 1.75Z",fill:"#171717"})}),"HeadingBlockIcon"),Do=s(({draggable:e=!1})=>Ci(xt,{draggable:e,icon:Ci(Bf,{}),draggableLabel:"Heading",label:"Heading block"}),"HeadingBlock");import{jsx as wi}from"react/jsx-runtime";var Hf=s(()=>wi("svg",{width:"16",height:"14",viewBox:"0 0 16 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:wi("path",{d:"M14 1.5H2C1.71875 1.5 1.5 1.75 1.5 2V12V12.0312L1.625 11.8438L4.125 8.34375C4.28125 8.125 4.5 8 4.75 8C4.96875 8 5.21875 8.125 5.34375 8.3125L6.3125 9.65625L8.90625 6.3125C9.03125 6.125 9.25 6 9.5 6C9.71875 6 9.9375 6.125 10.0938 6.3125L14.3438 11.8125L14.5 12V2C14.5 1.75 14.25 1.5 14 1.5ZM2 0H14C15.0938 0 16 0.90625 16 2V12C16 13.125 15.0938 14 14 14H2C0.875 14 0 13.125 0 12V2C0 0.90625 0.875 0 2 0ZM4.5 6C3.9375 6 3.46875 5.71875 3.1875 5.25C2.90625 4.8125 2.90625 4.21875 3.1875 3.75C3.46875 3.3125 3.9375 3 4.5 3C5.03125 3 5.5 3.3125 5.78125 3.75C6.0625 4.21875 6.0625 4.8125 5.78125 5.25C5.5 5.71875 5.03125 6 4.5 6Z",fill:"#171717"})}),"ImageBlockIcon"),Vo=s(({draggable:e=!1})=>wi(xt,{draggable:e,icon:wi(Hf,{}),draggableLabel:"Image",label:"Image block"}),"ImageBlock");import{AlignVerticalSpaceAround as Df}from"lucide-react";import{jsx as Rl}from"react/jsx-runtime";var Fo=s(({draggable:e=!1})=>Rl(xt,{draggable:e,icon:Rl(Df,{className:"courier-w-4 courier-h-4"}),draggableLabel:"Spacer",label:"Spacer block"}),"SpacerBlock");import{jsx as Ti}from"react/jsx-runtime";var Vf=s(()=>Ti("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:Ti("path",{d:"M1.5 1.5V3C1.5 3.4375 1.15625 3.75 0.75 3.75C0.3125 3.75 0 3.4375 0 3V1.25C0 0.5625 0.53125 0 1.25 0H12.75C13.4375 0 14 0.5625 14 1.25V3C14 3.4375 13.6562 3.75 13.25 3.75C12.8125 3.75 12.5 3.4375 12.5 3V1.5H7.75V12.5H9.25C9.65625 12.5 10 12.8438 10 13.25C10 13.6875 9.65625 14 9.25 14H4.75C4.3125 14 4 13.6875 4 13.25C4 12.8438 4.3125 12.5 4.75 12.5H6.25V1.5H1.5Z",fill:"#171717"})}),"TextBlockIcon"),Oo=s(({draggable:e=!1})=>Ti(xt,{draggable:e,icon:Ti(Vf,{}),draggableLabel:"Text",label:"Text block"}),"TextBlock");import{jsx as Ir,jsxs as Of}from"react/jsx-runtime";var fr=s(({type:e})=>{let t=Ff(yt);return Of("div",{className:"courier-flex courier-gap-4 courier-flex-col",children:[Ir(Ce,{className:"courier-w-fit",variant:"secondary",buttonSize:"small",onClick:()=>{t(null)},children:"Close"}),e==="heading"&&Ir(Do,{}),e==="text"&&Ir(Oo,{}),e==="image"&&Ir(Vo,{}),e==="spacer"&&Ir(Fo,{}),e==="divider"&&Ir(Ho,{}),e==="button"&&Ir(Bo,{}),e==="blockquote"&&Ir(Sl,{}),Ir(se,{className:"courier-m-0"})]})},"FormHeader");import{jsx as oe,jsxs as Xt}from"react/jsx-runtime";var Bl=s(({element:e,editor:t})=>{let r=zf({resolver:Wf(Nl),defaultValues:{...Y,...e==null?void 0:e.attrs}}),{updateNodeAttributes:o}=mr({editor:t,element:e,form:r,nodeType:(e==null?void 0:e.type.name)||"paragraph"});return e?Xt(ot,{...r,children:[oe(fr,{type:"text"}),Xt("form",{onChange:()=>{o(r.getValues())},children:[oe("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Frame"}),Xt("div",{className:"courier-flex courier-flex-row courier-gap-3 courier-mb-3",children:[oe(z,{control:r.control,name:"paddingHorizontal",render:({field:n})=>Xt(O,{children:[oe(W,{children:oe(te,{startAdornment:oe(wn,{}),type:"number",min:0,...n})}),oe(Z,{})]})}),oe(z,{control:r.control,name:"paddingVertical",render:({field:n})=>Xt(O,{children:[oe(W,{children:oe(te,{startAdornment:oe(oo,{}),type:"number",min:0,...n})}),oe(Z,{})]})})]}),oe(z,{control:r.control,name:"backgroundColor",render:({field:n})=>Xt(O,{className:"courier-mb-4",children:[oe(W,{children:oe($e,{...n,defaultValue:Y.backgroundColor,onChange:i=>{n.onChange(i),o({...r.getValues(),[n.name]:i})}})}),oe(Z,{})]})}),oe(se,{className:"courier-mb-4"}),oe("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Text"}),oe(z,{control:r.control,name:"textColor",render:({field:n})=>Xt(O,{className:"courier-mb-4",children:[oe(W,{children:oe($e,{...n,transparent:!1,defaultValue:Y.textColor,onChange:i=>{n.onChange(i),o({...r.getValues(),[n.name]:i})}})}),oe(Z,{})]})}),oe(se,{className:"courier-mb-4"}),oe("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Border"}),Xt("div",{className:"courier-flex courier-flex-row courier-gap-3 courier-mb-3",children:[oe(z,{control:r.control,name:"borderWidth",render:({field:n})=>Xt(O,{children:[oe(W,{children:oe(te,{startAdornment:oe(Gt,{}),type:"number",min:0,...n})}),oe(Z,{})]})}),oe(z,{control:r.control,name:"borderRadius",render:({field:n})=>Xt(O,{children:[oe(W,{children:oe(te,{startAdornment:oe(ro,{}),type:"number",min:0,...n})}),oe(Z,{})]})})]}),oe(z,{control:r.control,name:"borderColor",render:({field:n})=>Xt(O,{className:"courier-mb-4",children:[oe(W,{children:oe($e,{...n,defaultValue:Y.borderColor,onChange:i=>{n.onChange(i),o({...r.getValues(),[n.name]:i})}})}),oe(Z,{})]})})]})]}):null},"TextBlockForm");var Uf=s((e,t)=>{let r=null;return e.state.doc.descendants((o,n)=>o.attrs.id===t?(r=n,!1):!0),r},"findNodePositionById"),ki=s((e,t,r,o,n,i)=>{let a=`node-${$f()}`,l={heading:()=>e.schema.nodes.heading.create({...Y,...o,id:a},i),paragraph:()=>e.schema.nodes.paragraph.create({...Y,...o,id:a},i),text:()=>e.schema.nodes.paragraph.create({...Y,...o,id:a},i),spacer:()=>e.schema.nodes.divider.create({...wl,...o,id:a}),divider:()=>e.schema.nodes.divider.create({...Kt,...o,id:a}),button:()=>e.schema.nodes.button.create({...Ne,...o,id:a},i),imageBlock:()=>e.schema.nodes.imageBlock.create({...Ue,...o,id:a}),image:()=>e.schema.nodes.imageBlock.create({...Ue,...o,id:a})}[t];if(l)try{let u=e.state.tr,d=l();u.insert(r,d),e.view.dispatch(u),n&&n(d),(t==="text"||t==="paragraph"||t==="heading")&&setTimeout(()=>{let m=Uf(e,a);m!==null&&e.commands.setTextSelection(m+1),e.view.focus()},50);let p=new CustomEvent("node-duplicated",{detail:{newNodeId:a}});document.dispatchEvent(p)}catch(u){console.error("Error creating node:",u)}else try{if(e.schema.nodes[t]){let u=e.state.tr,d=e.schema.nodes[t].create({...o,id:a},i);u.insert(r,d),e.view.dispatch(u),n&&n(d);let p=new CustomEvent("node-duplicated",{detail:{newNodeId:a}});document.dispatchEvent(p)}else console.error(`Cannot duplicate node: type "${t}" not found in schema`)}catch(u){console.error("Error creating fallback node:",u)}return a},"createOrDuplicateNode");import{closestCorners as Zf,getFirstCollision as qf,KeyboardCode as zr}from"@dnd-kit/core";var _f=[zr.Down,zr.Right,zr.Up,zr.Left],Hl=s((e,{context:{active:t,droppableRects:r,droppableContainers:o,collisionRect:n}})=>{var i;if(_f.includes(e.code)){if(e.preventDefault(),!t||!n)return;let a=[];o.getEnabled().forEach(u=>{var m;if(!u||u!=null&&u.disabled)return;let d=r.get(u.id);if(!d)return;let p=u.data.current;if(p){let{type:h,children:b}=p;if(h==="container"&&(b==null?void 0:b.length)>0&&((m=t.data.current)==null?void 0:m.type)!=="container")return}switch(e.code){case zr.Down:n.top<d.top&&a.push(u);break;case zr.Up:n.top>d.top&&a.push(u);break;case zr.Left:n.left>=d.left+d.width&&a.push(u);break;case zr.Right:n.left+n.width<=d.left&&a.push(u);break}});let c=Zf({active:t,collisionRect:n,droppableRects:r,droppableContainers:a,pointerCoordinates:null}),l=qf(c,"id");if(l!=null){let u=o.get(l),d=u==null?void 0:u.node.current,p=u==null?void 0:u.rect.current;if(d&&p)return u.id==="placeholder"?{x:p.left+(p.width-n.width)/2,y:p.top+(p.height-n.height)/2}:((i=u.data.current)==null?void 0:i.type)==="container"?{x:p.left+20,y:p.top+74}:{x:p.left,y:p.top}}}},"coordinateGetter");import{GripVertical as jf}from"lucide-react";import{forwardRef as Gf}from"react";import{jsx as Dl}from"react/jsx-runtime";var Vl=Gf((e,t)=>Dl("button",{...e,ref:t,"data-cypress":"draggable-handle",className:E("courier-flex-shrink-0 courier-p-1 courier-w-7 courier-h-7 courier-rounded-md courier-border courier-border-border courier-flex courier-items-center courier-justify-center courier-shadow-sm courier-bg-background hover:courier-bg-card courier-cursor-grab",e.className),children:Dl(jf,{strokeWidth:1,className:"courier-w-5 courier-stroke-ring courier-fill-ring"})}));import{useAtomValue as Kf,useSetAtom as Jf}from"jotai";import{useCallback as Pt}from"react";var Pi=s(e=>{let t=Jf(yt),r=Kf(ve),o=Pt(v=>{let k=-1;return e.state.doc.descendants((R,T)=>{var f;return((f=R.attrs)==null?void 0:f.id)===v?(k=T,!1):!0}),k},[e]),n=Pt((v,k)=>{var R,T,f;if(((R=r==null?void 0:r.type)==null?void 0:R.name)==="button"&&((T=r.attrs)!=null&&T.id)){let w=r.attrs.id,P=o(w);if(P>=0){let A=e.state.tr;return A.setNodeMarkup(P,void 0,{...(f=e.state.doc.nodeAt(P))==null?void 0:f.attrs,[v]:k}),e.view.dispatch(A),setTimeout(()=>{let N=o(w);if(N>=0){let y=e.state.doc.nodeAt(N);y&&t(y)}},0),!0}}return!1},[e,r,o,t]),i=Pt(()=>{var v,k;if(((v=r==null?void 0:r.type)==null?void 0:v.name)==="button"&&((k=r.attrs)!=null&&k.id)){let R=r.attrs.id,T=o(R);if(T>=0){let f=e.state.doc.nodeAt(T);if(!f)return!1;let w={...f.attrs,fontWeight:"normal",fontStyle:"normal",isUnderline:!1,isStrike:!1},P=e.state.tr;return P.setNodeMarkup(T,void 0,w),e.view.dispatch(P),setTimeout(()=>{let A=o(R);if(A>=0){let N=e.state.doc.nodeAt(A);N&&t(N)}},0),!0}}return!1},[e,r,o,t]),a=Pt(()=>{var v;if(((v=r==null?void 0:r.type)==null?void 0:v.name)==="button"){let k=r.attrs.fontWeight==="bold"?"normal":"bold";if(n("fontWeight",k))return!0}return e.chain().focus().toggleBold().run()},[e,r,n]),c=Pt(()=>{var v;if(((v=r==null?void 0:r.type)==null?void 0:v.name)==="button"){let k=r.attrs.fontStyle==="italic"?"normal":"italic";if(n("fontStyle",k))return!0}return e.chain().focus().toggleItalic().run()},[e,r,n]),l=Pt(()=>{var v;if(((v=r==null?void 0:r.type)==null?void 0:v.name)==="button"){let k=!r.attrs.isStrike;if(n("isStrike",k))return!0}return e.chain().focus().toggleMark("strike").run()},[e,r,n]),u=Pt(()=>{var v;if(((v=r==null?void 0:r.type)==null?void 0:v.name)==="button"){let k=!r.attrs.isUnderline;if(n("isUnderline",k))return!0}return e.chain().focus().toggleMark("underline").run()},[e,r,n]),d=Pt(()=>e.chain().focus().setTextAlign("left").run(),[e]),p=Pt(()=>e.chain().focus().setTextAlign("center").run(),[e]),m=Pt(()=>e.chain().focus().setTextAlign("right").run(),[e]),h=Pt(()=>e.chain().focus().setTextAlign("justify").run(),[e]),b=Pt((v,k)=>e.chain().focus().setLink({href:v,target:k?"_blank":""}).run(),[e]),g=Pt(()=>{let v=e.isActive("blockquote");if(e.chain().focus().toggleBlockquote().run()){let{selection:T}=e.state,f=T.$anchor;if(v){let w=f.node();(w.type.name==="paragraph"||w.type.name==="heading")&&t(w)}else for(let w=f.depth;w>0;w--){let P=f.node(w);if(P.type.name==="blockquote"){t(P);break}}}},[e,t]);return{onBold:a,onItalic:c,onStrike:l,onUnderline:u,onAlignLeft:d,onAlignCenter:p,onAlignRight:m,onAlignJustify:h,onLink:b,onQuote:g,resetButtonFormatting:i}},"useTextmenuCommands");import{Fragment as i1,jsx as gr,jsxs as ja}from"react/jsx-runtime";function o1(){let[e,t]=t1(!1);return Fl(()=>{let r=setTimeout(()=>t(!0),500);return()=>clearTimeout(r)},[]),e}s(o1,"useMountStatus");var ur=s(({children:e,id:t,className:r,...o})=>{let{setNodeRef:n,setActivatorNodeRef:i,listeners:a,isDragging:c,transform:l,transition:u}=Xf({id:t}),d=o1();return gr(n1,{ref:n,id:t,transition:u,transform:l,fadeIn:c&&!d,listeners:a,className:r,handleProps:{ref:i},...o,children:e})},"SortableItemWrapper"),n1=e1(({children:e,className:t,dragOverlay:r,handleProps:o,listeners:n,id:i,transition:a,transform:c,editor:l,fadeIn:u,...d},p)=>{Fl(()=>{if(r)return document.body.style.cursor="grabbing",()=>{document.body.style.cursor=""}},[r]);let m=Qf(ve),{resetButtonFormatting:h}=Pi(l),b=s((w,P)=>{let A=null;return w.doc.descendants((N,y)=>{var M;return A!==null?!1:((M=N.attrs)==null?void 0:M.id)===P?(A=y,!1):!0}),A},"findNodePositionById"),g=Nn(()=>{if(!l||!i)return{node:null,pos:null};let w=b(l.state,i);return w===null?{node:null,pos:null}:{node:l.state.doc.nodeAt(w),pos:w}},[l,i]),v=Nn(()=>{l.commands.blur(),m(null)},[l,m]),k=Nn(()=>{if(!(!l||!i))try{v(),setTimeout(()=>{let{node:w,pos:P}=g();if(!w||P===null)return;let A=l.state.doc.childCount===1,N=l.state.tr;N.delete(P,P+(w==null?void 0:w.nodeSize)),N.setMeta("addToHistory",!0),l.view.dispatch(N),A&&setTimeout(()=>{let y=l.state.doc.nodeAt(0);if(y&&y.type.name==="paragraph"&&!y.attrs.id){let M=`node-${r1()}`,S=l.state.tr;S.setNodeMarkup(0,void 0,{...y.attrs,id:M}),l.view.dispatch(S);let C=new CustomEvent("node-duplicated",{detail:{newNodeId:M}});document.dispatchEvent(C)}},50),m(null)},100)}catch(w){console.error("Error deleting node:",w)}},[l,i,g,v,m]),R=Nn(()=>{if(!(!l||!i))try{let{node:w,pos:P}=g();if(!w||P===null)return;if(w.type.name==="button"){h();return}v(),setTimeout(()=>{let A=l.chain();A.setNodeSelection(P).unsetAllMarks(),w.type.name==="blockquote"&&w.content&&w.content.firstChild?w.content.firstChild.type.name!=="paragraph"&&A.setParagraph():w.type.name!=="paragraph"&&w.type.name!=="blockquote"&&A.setParagraph(),A.run()},100)}catch(w){console.error("Error removing formatting:",w)}},[l,i,g,v,h]),T=Nn(()=>{if(!(!l||!i))try{v(),setTimeout(()=>{let{node:w,pos:P}=g();if(!w||P===null)return;let A=w.type.name,N={...w.attrs};delete N.id;let y=P+(w==null?void 0:w.nodeSize);ki(l,A,y,N,M=>m(M),w.content)},100)}catch(w){console.error("Error duplicating node:",w)}},[l,i,g,v,m]),{node:f}=g();return ja(Yf,{ref:p,"data-cypress":"draggable-item","data-node-view-wrapper":!0,"data-id":i,className:E("courier-flex courier-items-center courier-justify-center courier-gap-2 courier-pl-6 draggable-item",t),style:{transition:[a].filter(Boolean).join(", "),"--translate-x":c?`${Math.round(c.x)}px`:void 0,"--translate-y":c?`${Math.round(c.y)}px`:void 0,"--scale-x":c!=null&&c.scaleX?`${c.scaleX}`:void 0,"--scale-y":c!=null&&c.scaleY?`${c.scaleY}`:void 0,transform:"translate3d(var(--translate-x, 0), var(--translate-y, 0), 0) scaleX(var(--scale-x, 1)) scaleY(var(--scale-y, 1))"},...d,children:[gr(Vl,{className:"courier-absolute courier-left-[-20px]",tabIndex:-1,...o,...n}),e,ja("div",{className:"courier-actions-panel courier-absolute courier-right-[-50px] courier-rounded-lg courier-border courier-border-border courier-bg-background courier-shadow-md courier-flex courier-items-center courier-justify-center courier-hidden",children:[(f==null?void 0:f.type.name)!=="imageBlock"&&(f==null?void 0:f.type.name)!=="divider"&&(f==null?void 0:f.type.name)!=="spacer"&&ja(i1,{children:[gr("button",{className:"courier-w-8 courier-h-8 courier-flex courier-items-center courier-justify-center",onClick:R,tabIndex:-1,children:gr(Oa,{})}),gr(se,{className:"courier-m-0"})]}),gr("button",{className:"courier-w-8 courier-h-8 courier-flex courier-items-center courier-justify-center",onClick:T,tabIndex:-1,children:gr(Sa,{})}),gr(se,{className:"courier-m-0"}),gr("button",{className:"courier-w-8 courier-h-8 courier-flex courier-items-center courier-justify-center",onClick:k,tabIndex:-1,children:gr(La,{})})]})]})});import{NodeViewContent as a1}from"@tiptap/react";import{useSetAtom as s1}from"jotai";import{useCallback as c1}from"react";import{jsx as In}from"react/jsx-runtime";var l1=s(({paddingHorizontal:e,paddingVertical:t,backgroundColor:r,borderLeftWidth:o,borderColor:n})=>In("div",{className:"courier-w-full node-element",children:In("div",{style:{zIndex:-15,position:"relative",padding:`${t}px ${e}px`,backgroundColor:r,borderLeftWidth:`${o}px`,borderColor:n,borderStyle:o>0?"solid":"none",whiteSpace:"pre-wrap"},children:In(a1,{})})}),"BlockquoteComponent"),Ol=s(e=>{let t=s1(yt),r=c1(()=>{if(!e.editor.isEditable)return;let n=e.getPos(),i=e.editor.state.doc.nodeAt(n);i&&t(i)},[e,t]),o=!e.node.content||e.node.content.size===0;return In(ur,{id:e.node.attrs.id,className:E(e.node.attrs.isSelected&&"selected-element",o&&"is-empty"),onClick:r,editor:e.editor,children:In(l1,{...e.node.attrs})})},"BlockquoteComponentNode");var Lr={paddingHorizontal:8,paddingVertical:6,backgroundColor:"transparent",borderLeftWidth:4,borderColor:"#e0e0e0"},Ga=Gc.extend({content:"block+",addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),HTMLAttributes:{class:""}}},onCreate(){Vt(this.editor,this.name)},addAttributes(){return{id:{default:void 0,parseHTML:e=>e.getAttribute("data-id"),renderHTML:e=>({"data-id":e.id})},paddingHorizontal:{default:Lr.paddingHorizontal,parseHTML:e=>e.getAttribute("data-padding-horizontal"),renderHTML:e=>({"data-padding-horizontal":e.paddingHorizontal})},paddingVertical:{default:Lr.paddingVertical,parseHTML:e=>e.getAttribute("data-padding-vertical"),renderHTML:e=>({"data-padding-vertical":e.paddingVertical})},backgroundColor:{default:Lr.backgroundColor,parseHTML:e=>e.getAttribute("data-background-color"),renderHTML:e=>({"data-background-color":e.backgroundColor})},borderLeftWidth:{default:Lr.borderLeftWidth,parseHTML:e=>e.getAttribute("data-border-left-width"),renderHTML:e=>({"data-border-left-width":e.borderLeftWidth})},borderColor:{default:Lr.borderColor,parseHTML:e=>e.getAttribute("data-border-color"),renderHTML:e=>({"data-border-color":e.borderColor})}}},parseHTML(){return[{tag:"blockquote"}]},renderHTML({HTMLAttributes:e}){return["blockquote",u1(e,{"data-type":"blockquote","data-id":e.id}),0]},addKeyboardShortcuts(){return{Enter:({editor:e})=>{let{selection:t}=e.state,{empty:r}=t;if(!r)return!1;let o=e.isActive("blockquote");return!e.isActive("paragraph")||!o?!1:e.chain().command(({tr:i})=>{i.split(t.from);let a=i.selection.from,c=i.doc.resolve(a);if(c.depth>1){let l=c.blockRange();l&&i.lift(l,0)}return!0}).focus().run()}}},addNodeView(){return d1(Ol)}});import{zodResolver as p1}from"@hookform/resolvers/zod";import{useForm as m1}from"react-hook-form";import{z as io}from"zod";var Wl=io.object({paddingHorizontal:io.coerce.number().min(0),paddingVertical:io.coerce.number().min(0),backgroundColor:io.string(),borderLeftWidth:io.coerce.number().min(0),borderColor:io.string(),id:io.string().optional()});import{jsx as pe,jsxs as $r}from"react/jsx-runtime";var zl=s(({element:e,editor:t})=>{let r=m1({resolver:p1(Wl),defaultValues:{...Lr,...e==null?void 0:e.attrs}}),{updateNodeAttributes:o}=mr({editor:t,element:e,form:r,nodeType:(e==null?void 0:e.type.name)||"blockquote"});return e?$r(ot,{...r,children:[pe(fr,{type:"blockquote"}),$r("form",{onChange:()=>{o(r.getValues())},children:[pe("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Frame"}),$r("div",{className:"courier-flex courier-flex-row courier-gap-3 courier-mb-3",children:[pe(z,{control:r.control,name:"paddingHorizontal",render:({field:n})=>$r(O,{children:[pe(W,{children:pe(te,{startAdornment:pe(wn,{}),type:"number",min:0,...n})}),pe(Z,{})]})}),pe(z,{control:r.control,name:"paddingVertical",render:({field:n})=>$r(O,{children:[pe(W,{children:pe(te,{startAdornment:pe(oo,{}),type:"number",min:0,...n})}),pe(Z,{})]})})]}),pe(z,{control:r.control,name:"backgroundColor",render:({field:n})=>$r(O,{className:"courier-mb-3",children:[pe(W,{children:pe($e,{...n,defaultValue:Lr.backgroundColor,onChange:i=>{n.onChange(i),o({...r.getValues(),[n.name]:i})}})}),pe(Z,{})]})}),pe(se,{className:"courier-mb-4"}),pe("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Border"}),pe(z,{control:r.control,name:"borderLeftWidth",render:({field:n})=>$r(O,{className:"courier-mb-3",children:[pe(W,{children:pe(te,{startAdornment:pe(Gt,{}),type:"number",min:0,...n})}),pe(Z,{})]})}),pe(z,{control:r.control,name:"borderColor",render:({field:n})=>$r(O,{className:"courier-mb-3",children:[pe(W,{children:pe($e,{...n,defaultValue:Lr.borderColor,onChange:i=>{n.onChange(i),o({...r.getValues(),[n.name]:i})}})}),pe(Z,{})]})})]})]}):null},"BlockquoteForm");import{z as dt}from"zod";var $l=dt.object({label:dt.string(),link:dt.string().optional(),alignment:dt.enum(["left","center","right"]),size:dt.enum(["default","full"]),backgroundColor:dt.string(),textColor:dt.string(),borderWidth:dt.number(),borderRadius:dt.number(),borderColor:dt.string(),padding:dt.number(),fontWeight:dt.enum(["normal","bold"]),fontStyle:dt.enum(["normal","italic"]),isUnderline:dt.boolean(),isStrike:dt.boolean()});import{zodResolver as f1}from"@hookform/resolvers/zod";import{useForm as g1}from"react-hook-form";import{useSetAtom as Ka}from"jotai";import*as ao from"react";import{useRef as Zl,useState as Ja}from"react";import{jsx as Ul}from"react/jsx-runtime";var Ln=s(({items:e,command:t,selected:r=0})=>Ul("div",{className:"courier-bg-white courier-rounded-md courier-shadow-lg courier-border courier-border-border courier-max-h-60 courier-overflow-y-auto",children:e.map((o,n)=>Ul("button",{className:E("courier-w-full courier-px-4 courier-py-2 courier-text-left hover:courier-bg-gray-100 focus:courier-bg-gray-100 focus:courier-outline-none",n===r?"courier-bg-gray-100":""),onClick:()=>t(o),children:o},n))}),"VariableSuggestions");import{jsx as Wo,jsxs as ql}from"react/jsx-runtime";var Mt=ao.forwardRef(({as:e="Input",variables:t=[],autoResize:r,onChange:o,...n},i)=>{let[a,c]=Ja(!1),[l,u]=Ja(null),[d,p]=Ja(0),m=Zl(null),h=Zl(null),b=Ka(Mn),g=Ka(vl),v=Ka(pi),k=ao.useCallback(()=>{if(!h.current)return;let y={ref:h.current,caretPosition:h.current.selectionStart};g(y),v(y);let M={isFocused:!0,hasVariables:t.length>0,showVariablePopup:!1};b(M)},[b,g,v,t]),R=ao.useCallback(y=>{var C,I;let M=y.relatedTarget&&((C=m.current)==null?void 0:C.contains(y.relatedTarget)),S=(I=y.relatedTarget)==null?void 0:I.closest("[data-variable-button]");!M&&!S&&(g({ref:null,caretPosition:null}),b({isFocused:!1,hasVariables:!1,showVariablePopup:!1}))},[b,g]),T=s(y=>{let M=y.target,S={ref:M,caretPosition:M.selectionStart};g(S),v(S)},"handleSelect"),f=s(y=>{var M;if(a)switch(y.key){case"ArrowUp":y.preventDefault(),p(S=>S>0?S-1:t.length-1);break;case"ArrowDown":y.preventDefault(),p(S=>S<t.length-1?S+1:0);break;case"Enter":if(t[d]){y.preventDefault(),y.stopPropagation(),w(t[d]);return}break;case"Escape":c(!1),y.preventDefault(),y.stopPropagation();break}(M=n.onKeyDown)==null||M.call(n,y)},"handleKeyDown"),w=s(y=>{let M=h.current;if(!M)return;let S=M.value,C=M.selectionStart||0,I=S.substring(0,C-2),H=S.substring(C),V=`${I}{{${y}}}${H}`,_=C+y.length+3;if(o){let G={target:{...M,value:V}};o(G)}setTimeout(()=>{M.value=V,M.setSelectionRange(_,_)},0),c(!1)},"insertVariable"),P=s(y=>{var I;let M=y.target,S=M.value,C=M.selectionStart||0;if(S.slice(C-2,C)==="{{"&&((I=m.current)==null?void 0:I.getBoundingClientRect())){let V=S.slice(0,C),_=document.createElement("span");_.style.font=window.getComputedStyle(M).font,_.style.whiteSpace="pre-wrap",_.textContent=V,document.body.appendChild(_);let G=_.offsetWidth;document.body.removeChild(_);let D=parseInt(window.getComputedStyle(M).lineHeight),me=V.split(`
181
- `).length-1;u({left:Math.min(G%M.offsetWidth,M.offsetWidth-200),top:me*D+30}),c(!0),p(0)}o&&o({target:M,currentTarget:M,type:"change",preventDefault:()=>{},stopPropagation:()=>{}})},"handleChange"),A=s(y=>{var I;let M=y.target,S=M.value,C=M.selectionStart||0;if(S.slice(C-2,C)==="{{"&&((I=m.current)==null?void 0:I.getBoundingClientRect())){let V=S.slice(0,C),_=document.createElement("span");_.style.font=window.getComputedStyle(M).font,_.style.whiteSpace="pre-wrap",_.textContent=V,document.body.appendChild(_);let G=_.offsetWidth;document.body.removeChild(_);let D=parseInt(window.getComputedStyle(M).lineHeight),me=V.split(`
182
- `).length-1;u({left:Math.min(G%M.offsetWidth,M.offsetWidth-200),top:me*D+30}),c(!0),p(0)}o&&o({target:M,currentTarget:M,type:"change",preventDefault:()=>{},stopPropagation:()=>{}})},"handleInput");if(ao.useEffect(()=>{let y=h.current;if(!y)return;let M=s(S=>{u(S.detail.cursorPosition),c(!0),p(0)},"handleShowSuggestions");return y.addEventListener("showVariableSuggestions",M),()=>{y.removeEventListener("showVariableSuggestions",M)}},[]),e==="Input"){let y={...n,ref:M=>{h.current=M,typeof i=="function"?i(M):i&&(i.current=M)},onChange:P,onInput:A,onKeyDown:f,onFocus:k,onBlur:R,onSelect:T};return ql("div",{ref:m,className:"courier-relative",children:[Wo(te,{...y}),a&&l&&Wo("div",{style:{position:"absolute",left:`${l.left}px`,top:`${l.top}px`,zIndex:50},children:Wo(Ln,{items:t,command:w,selected:d})})]})}let N={...n,ref:y=>{h.current=y,typeof i=="function"?i(y):i&&(i.current=y)},onChange:P,onInput:A,onKeyDown:f,onFocus:k,onBlur:R,autoResize:r,onSelect:T};return ql("div",{ref:m,className:"courier-relative",children:[Wo(va,{...N}),a&&l&&Wo("div",{style:{position:"absolute",left:`${l.left}px`,top:`${l.top}px`,zIndex:50},children:Wo(Ln,{items:t,command:w,selected:d})})]})});Mt.displayName="TextInput";var Yt=s((e={},t="")=>Object.entries(e).reduce((r,[o,n])=>{let i=t?`${t}.${o}`:o;return n&&typeof n=="object"&&!Array.isArray(n)?[...r,...Yt(n,i)]:[...r,i]},[]),"getFlattenedVariables");import{jsx as br,jsxs as Gl}from"react/jsx-runtime";var En="#80849D",hr=30,Mi=s(({color:e=En,width:t=hr,height:r=hr,...o})=>br(J,{...o,width:t,height:r,children:br("path",{d:"M6.375 23.9998C6.375 24.345 6.65482 24.6248 7 24.6248C7.34518 24.6248 7.625 24.345 7.625 23.9998H6.375ZM7.625 7.33317C7.625 6.98799 7.34518 6.70817 7 6.70817C6.65482 6.70817 6.375 6.98799 6.375 7.33317H7.625ZM7.625 23.9998V7.33317H6.375V23.9998H7.625ZM10.4583 16.4995V14.8328H9.20834V16.4995H10.4583ZM11.5 13.7912H21.5V12.5412H11.5V13.7912ZM22.5417 14.8328V16.4995H23.7917V14.8328H22.5417ZM21.5 17.5412H11.5V18.7912H21.5V17.5412ZM22.5417 16.4995C22.5417 16.91 22.5403 17.155 22.5167 17.3306C22.5059 17.4111 22.4932 17.4514 22.4857 17.4695C22.484 17.4737 22.4826 17.4765 22.4818 17.4781C22.481 17.4797 22.4805 17.4804 22.4805 17.4805C22.4804 17.4805 22.4805 17.4803 22.4808 17.4801C22.481 17.4798 22.481 17.4798 22.4807 17.4802L23.3645 18.364C23.6221 18.1065 23.7158 17.7934 23.7556 17.4972C23.793 17.2189 23.7917 16.8747 23.7917 16.4995H22.5417ZM21.5 18.7912C21.8752 18.7912 22.2194 18.7925 22.4977 18.7551C22.7939 18.7153 23.107 18.6216 23.3645 18.364L22.4807 17.4802C22.4803 17.4805 22.4803 17.4805 22.4806 17.4803C22.4808 17.48 22.481 17.4799 22.481 17.48C22.4809 17.48 22.4802 17.4805 22.4786 17.4813C22.477 17.4821 22.4742 17.4835 22.47 17.4852C22.4519 17.4927 22.4116 17.5054 22.3311 17.5162C22.1555 17.5398 21.9105 17.5412 21.5 17.5412V18.7912ZM21.5 13.7912C21.9105 13.7912 22.1555 13.7925 22.3311 13.8161C22.4116 13.8269 22.4519 13.8397 22.47 13.8471C22.4742 13.8489 22.477 13.8502 22.4786 13.8511C22.4802 13.8519 22.4809 13.8524 22.481 13.8524C22.481 13.8524 22.4808 13.8523 22.4806 13.8521C22.4803 13.8518 22.4803 13.8518 22.4807 13.8522L23.3645 12.9683C23.107 12.7108 22.7939 12.6171 22.4977 12.5773C22.2194 12.5398 21.8752 12.5412 21.5 12.5412V13.7912ZM23.7917 14.8328C23.7917 14.4577 23.793 14.1134 23.7556 13.8352C23.7158 13.5389 23.6221 13.2258 23.3645 12.9683L22.4807 13.8522C22.481 13.8526 22.481 13.8526 22.4808 13.8523C22.4805 13.852 22.4804 13.8518 22.4805 13.8519C22.4805 13.8519 22.481 13.8526 22.4818 13.8542C22.4826 13.8558 22.484 13.8586 22.4857 13.8628C22.4932 13.881 22.5059 13.9213 22.5167 14.0017C22.5403 14.1773 22.5417 14.4223 22.5417 14.8328H23.7917ZM10.4583 14.8328C10.4583 14.4223 10.4597 14.1773 10.4833 14.0017C10.4941 13.9213 10.5068 13.881 10.5143 13.8628C10.516 13.8586 10.5174 13.8558 10.5182 13.8542C10.5191 13.8526 10.5195 13.8519 10.5196 13.8519C10.5196 13.8518 10.5195 13.852 10.5192 13.8523C10.519 13.8526 10.519 13.8526 10.5194 13.8522L9.63548 12.9683C9.37796 13.2258 9.28425 13.5389 9.24443 13.8352C9.20702 14.1134 9.20834 14.4577 9.20834 14.8328H10.4583ZM11.5 12.5412C11.1248 12.5412 10.7806 12.5398 10.5023 12.5773C10.2061 12.6171 9.893 12.7108 9.63548 12.9683L10.5194 13.8522C10.5197 13.8518 10.5198 13.8518 10.5195 13.8521C10.5192 13.8523 10.519 13.8524 10.519 13.8524C10.5191 13.8524 10.5198 13.8519 10.5214 13.8511C10.523 13.8502 10.5258 13.8489 10.53 13.8471C10.5481 13.8397 10.5884 13.8269 10.6689 13.8161C10.8445 13.7925 11.0895 13.7912 11.5 13.7912V12.5412ZM9.20834 16.4995C9.20834 16.8747 9.20702 17.2189 9.24443 17.4972C9.28425 17.7934 9.37796 18.1065 9.63548 18.364L10.5194 17.4802C10.519 17.4798 10.519 17.4798 10.5192 17.4801C10.5195 17.4803 10.5196 17.4805 10.5196 17.4805C10.5195 17.4804 10.5191 17.4797 10.5182 17.4781C10.5174 17.4765 10.516 17.4737 10.5143 17.4695C10.5068 17.4514 10.4941 17.4111 10.4833 17.3306C10.4597 17.155 10.4583 16.91 10.4583 16.4995H9.20834ZM11.5 17.5412C11.0895 17.5412 10.8445 17.5398 10.6689 17.5162C10.5884 17.5054 10.5481 17.4927 10.53 17.4852C10.5258 17.4835 10.523 17.4821 10.5214 17.4813C10.5198 17.4805 10.5191 17.48 10.519 17.48C10.519 17.4799 10.5192 17.48 10.5195 17.4803C10.5198 17.4805 10.5197 17.4805 10.5194 17.4802L9.63548 18.364C9.893 18.6216 10.2061 18.7153 10.5023 18.7551C10.7806 18.7925 11.1248 18.7912 11.5 18.7912V17.5412Z",fill:e})}),"ButtonAlignLeftIcon"),Ni=s(({color:e=En,width:t=hr,height:r=hr,...o})=>br(J,{...o,width:t,height:r,children:br("path",{d:"M14.9583 7C14.9583 6.65482 14.6785 6.375 14.3333 6.375C13.9881 6.375 13.7083 6.65482 13.7083 7L14.9583 7ZM13.7083 23.3333C13.7083 23.6785 13.9881 23.9583 14.3333 23.9583C14.6785 23.9583 14.9583 23.6785 14.9583 23.3333L13.7083 23.3333ZM13.7083 7L13.7083 12.6665L14.9583 12.6665L14.9583 7L13.7083 7ZM20.375 14.3332L20.375 15.9998L21.625 15.9998L21.625 14.3332L20.375 14.3332ZM19.3333 17.0415L9.33333 17.0415L9.33333 18.2915L19.3333 18.2915L19.3333 17.0415ZM8.29167 15.9998L8.29167 14.3332L7.04167 14.3332L7.04167 15.9998L8.29167 15.9998ZM9.33333 13.2915L19.3333 13.2915L19.3333 12.0415L9.33333 12.0415L9.33333 13.2915ZM8.29167 14.3332C8.29167 13.9227 8.29299 13.6777 8.3166 13.5021C8.32742 13.4216 8.34016 13.3813 8.34763 13.3631C8.34936 13.3589 8.35071 13.3562 8.35155 13.3546C8.35238 13.353 8.35284 13.3523 8.35289 13.3522C8.35292 13.3521 8.35279 13.3523 8.35256 13.3526C8.35232 13.3529 8.35231 13.3529 8.35269 13.3525L7.4688 12.4686C7.21128 12.7262 7.11758 13.0393 7.07775 13.3355C7.04034 13.6138 7.04167 13.958 7.04167 14.3332L8.29167 14.3332ZM9.33333 12.0415C8.95816 12.0415 8.61391 12.0402 8.33566 12.0776C8.03943 12.1174 7.72632 12.2111 7.4688 12.4686L8.35269 13.3525C8.35307 13.3521 8.35308 13.3522 8.35279 13.3524C8.3525 13.3526 8.3523 13.3528 8.35236 13.3527C8.35243 13.3527 8.35313 13.3522 8.35472 13.3514C8.35634 13.3505 8.3591 13.3492 8.3633 13.3475C8.38145 13.34 8.42175 13.3273 8.50222 13.3164C8.67782 13.2928 8.92283 13.2915 9.33333 13.2915L9.33333 12.0415ZM9.33333 17.0415C8.92283 17.0415 8.67782 17.0402 8.50222 17.0166C8.42175 17.0057 8.38145 16.993 8.3633 16.9855C8.3591 16.9838 8.35634 16.9825 8.35472 16.9816C8.35313 16.9808 8.35243 16.9803 8.35236 16.9803C8.3523 16.9802 8.3525 16.9804 8.35279 16.9806C8.35308 16.9808 8.35307 16.9809 8.35269 16.9805L7.4688 17.8644C7.72632 18.1219 8.03943 18.2156 8.33566 18.2554C8.61391 18.2928 8.95816 18.2915 9.33333 18.2915L9.33333 17.0415ZM7.04167 15.9998C7.04167 16.375 7.04034 16.7193 7.07775 16.9975C7.11758 17.2937 7.21128 17.6068 7.4688 17.8644L8.35269 16.9805C8.3523 16.9801 8.35232 16.9801 8.35256 16.9804C8.35279 16.9807 8.35292 16.9809 8.35289 16.9808C8.35284 16.9807 8.35238 16.98 8.35155 16.9784C8.35071 16.9768 8.34936 16.9741 8.34763 16.9699C8.34016 16.9517 8.32742 16.9114 8.3166 16.8309C8.29299 16.6553 8.29167 16.4103 8.29167 15.9998L7.04167 15.9998ZM20.375 15.9998C20.375 16.4103 20.3737 16.6553 20.3501 16.8309C20.3392 16.9114 20.3265 16.9517 20.319 16.9699C20.3173 16.9741 20.316 16.9768 20.3151 16.9784C20.3143 16.98 20.3138 16.9807 20.3138 16.9808C20.3137 16.9809 20.3139 16.9807 20.3141 16.9804C20.3143 16.9801 20.3144 16.9801 20.314 16.9805L21.1979 17.8644C21.4554 17.6068 21.5491 17.2937 21.5889 16.9975C21.6263 16.7193 21.625 16.375 21.625 15.9998L20.375 15.9998ZM19.3333 18.2915C19.7085 18.2915 20.0528 18.2928 20.331 18.2554C20.6272 18.2156 20.9403 18.1219 21.1979 17.8644L20.314 16.9805C20.3136 16.9809 20.3136 16.9808 20.3139 16.9806C20.3142 16.9804 20.3144 16.9802 20.3143 16.9803C20.3142 16.9803 20.3135 16.9808 20.3119 16.9816C20.3103 16.9825 20.3076 16.9838 20.3034 16.9855C20.2852 16.993 20.2449 17.0057 20.1644 17.0166C19.9888 17.0402 19.7438 17.0415 19.3333 17.0415L19.3333 18.2915ZM21.625 14.3332C21.625 13.958 21.6263 13.6138 21.5889 13.3355C21.5491 13.0393 21.4554 12.7262 21.1979 12.4686L20.314 13.3525C20.3144 13.3529 20.3143 13.3529 20.3141 13.3526C20.3139 13.3523 20.3137 13.3521 20.3138 13.3522C20.3138 13.3523 20.3143 13.353 20.3151 13.3546C20.316 13.3562 20.3173 13.3589 20.319 13.3631C20.3265 13.3813 20.3392 13.4216 20.3501 13.5021C20.3737 13.6777 20.375 13.9227 20.375 14.3332L21.625 14.3332ZM19.3333 13.2915C19.7438 13.2915 19.9888 13.2928 20.1644 13.3164C20.2449 13.3273 20.2852 13.34 20.3034 13.3475C20.3076 13.3492 20.3103 13.3505 20.3119 13.3514C20.3135 13.3522 20.3142 13.3527 20.3143 13.3527C20.3144 13.3528 20.3142 13.3526 20.3139 13.3524C20.3136 13.3522 20.3136 13.3521 20.314 13.3525L21.1979 12.4686C20.9403 12.2111 20.6272 12.1174 20.331 12.0776C20.0528 12.0402 19.7085 12.0415 19.3333 12.0415L19.3333 13.2915ZM13.7083 17.6665L13.7083 23.3333L14.9583 23.3333L14.9583 17.6665L13.7083 17.6665Z",fill:e})}),"ButtonAlignCenterIcon"),Ii=s(({color:e=En,width:t=hr,height:r=hr,...o})=>br(J,{...o,width:t,height:r,children:br("path",{d:"M23.625 23.9998C23.625 24.345 23.3452 24.6248 23 24.6248C22.6548 24.6248 22.375 24.345 22.375 23.9998H23.625ZM22.375 7.33317C22.375 6.98799 22.6548 6.70817 23 6.70817C23.3452 6.70817 23.625 6.98799 23.625 7.33317H22.375ZM22.375 23.9998V7.33317H23.625V23.9998H22.375ZM19.5417 16.4995V14.8328H20.7917V16.4995H19.5417ZM18.5 13.7912H8.49999V12.5412H18.5V13.7912ZM7.45832 14.8328V16.4995H6.20832V14.8328H7.45832ZM8.49999 17.5412H18.5V18.7912H8.49999V17.5412ZM7.45832 16.4995C7.45832 16.91 7.45965 17.155 7.48326 17.3306C7.49408 17.4111 7.50682 17.4514 7.51429 17.4695C7.51602 17.4737 7.51737 17.4765 7.51821 17.4781C7.51904 17.4797 7.5195 17.4804 7.51955 17.4805C7.51958 17.4805 7.51945 17.4803 7.51922 17.4801C7.51898 17.4798 7.51896 17.4798 7.51934 17.4802L6.63546 18.364C6.37794 18.1065 6.28424 17.7934 6.24441 17.4972C6.207 17.2189 6.20832 16.8747 6.20832 16.4995H7.45832ZM8.49999 18.7912C8.12482 18.7912 7.78057 18.7925 7.50232 18.7551C7.20608 18.7153 6.89298 18.6216 6.63546 18.364L7.51934 17.4802C7.51972 17.4805 7.51974 17.4805 7.51945 17.4803C7.51916 17.48 7.51896 17.4799 7.51902 17.48C7.51909 17.48 7.51979 17.4805 7.52138 17.4813C7.52299 17.4821 7.52576 17.4835 7.52996 17.4852C7.54811 17.4927 7.58841 17.5054 7.66888 17.5162C7.84448 17.5398 8.08948 17.5412 8.49999 17.5412V18.7912ZM8.49999 13.7912C8.08948 13.7912 7.84448 13.7925 7.66888 13.8161C7.58841 13.8269 7.54811 13.8397 7.52996 13.8471C7.52576 13.8489 7.52299 13.8502 7.52138 13.8511C7.51979 13.8519 7.51909 13.8524 7.51902 13.8524C7.51896 13.8524 7.51916 13.8523 7.51945 13.8521C7.51974 13.8518 7.51972 13.8518 7.51934 13.8522L6.63546 12.9683C6.89298 12.7108 7.20608 12.6171 7.50232 12.5773C7.78057 12.5398 8.12482 12.5412 8.49999 12.5412V13.7912ZM6.20832 14.8328C6.20832 14.4577 6.207 14.1134 6.24441 13.8352C6.28424 13.5389 6.37794 13.2258 6.63546 12.9683L7.51934 13.8522C7.51896 13.8526 7.51898 13.8526 7.51922 13.8523C7.51945 13.852 7.51958 13.8518 7.51955 13.8519C7.5195 13.8519 7.51904 13.8526 7.51821 13.8542C7.51737 13.8558 7.51602 13.8586 7.51429 13.8628C7.50682 13.881 7.49408 13.9213 7.48326 14.0017C7.45965 14.1773 7.45832 14.4223 7.45832 14.8328H6.20832ZM19.5417 14.8328C19.5417 14.4223 19.5403 14.1773 19.5167 14.0017C19.5059 13.9213 19.4932 13.881 19.4857 13.8628C19.484 13.8586 19.4826 13.8558 19.4818 13.8542C19.4809 13.8526 19.4805 13.8519 19.4804 13.8519C19.4804 13.8518 19.4805 13.852 19.4808 13.8523C19.481 13.8526 19.481 13.8526 19.4806 13.8522L20.3645 12.9683C20.622 13.2258 20.7157 13.5389 20.7556 13.8352C20.793 14.1134 20.7917 14.4577 20.7917 14.8328H19.5417ZM18.5 12.5412C18.8752 12.5412 19.2194 12.5398 19.4977 12.5773C19.7939 12.6171 20.107 12.7108 20.3645 12.9683L19.4806 13.8522C19.4803 13.8518 19.4802 13.8518 19.4805 13.8521C19.4808 13.8523 19.481 13.8524 19.481 13.8524C19.4809 13.8524 19.4802 13.8519 19.4786 13.8511C19.477 13.8502 19.4742 13.8489 19.47 13.8471C19.4519 13.8397 19.4116 13.8269 19.3311 13.8161C19.1555 13.7925 18.9105 13.7912 18.5 13.7912V12.5412ZM20.7917 16.4995C20.7917 16.8747 20.793 17.2189 20.7556 17.4972C20.7157 17.7934 20.622 18.1065 20.3645 18.364L19.4806 17.4802C19.481 17.4798 19.481 17.4798 19.4808 17.4801C19.4805 17.4803 19.4804 17.4805 19.4804 17.4805C19.4805 17.4804 19.4809 17.4797 19.4818 17.4781C19.4826 17.4765 19.484 17.4737 19.4857 17.4695C19.4932 17.4514 19.5059 17.4111 19.5167 17.3306C19.5403 17.155 19.5417 16.91 19.5417 16.4995H20.7917ZM18.5 17.5412C18.9105 17.5412 19.1555 17.5398 19.3311 17.5162C19.4116 17.5054 19.4519 17.4927 19.47 17.4852C19.4742 17.4835 19.477 17.4821 19.4786 17.4813C19.4802 17.4805 19.4809 17.48 19.481 17.48C19.481 17.4799 19.4808 17.48 19.4805 17.4803C19.4802 17.4805 19.4803 17.4805 19.4806 17.4802L20.3645 18.364C20.107 18.6216 19.7939 18.7153 19.4977 18.7551C19.2194 18.7925 18.8752 18.7912 18.5 18.7912V17.5412Z",fill:e})}),"ButtonAlignRightIcon"),_l=s(({color:e=En,width:t=hr,height:r=hr,...o})=>Gl(J,{...o,width:t,height:r,children:[br("path",{d:"M10.3007 18.8007C10.0566 19.0448 10.0566 19.4405 10.3007 19.6846C10.5448 19.9287 10.9405 19.9287 11.1846 19.6846L10.3007 18.8007ZM11.1846 10.3154C10.9405 10.0713 10.5448 10.0713 10.3007 10.3154C10.0566 10.5595 10.0566 10.9552 10.3007 11.1993L11.1846 10.3154ZM8.11464 14.375C7.76946 14.375 7.48964 14.6548 7.48964 15C7.48964 15.3452 7.76946 15.625 8.11464 15.625L8.11464 14.375ZM13.5092 15.625C13.8544 15.625 14.1342 15.3452 14.1342 15C14.1342 14.6548 13.8544 14.375 13.5092 14.375L13.5092 15.625ZM11.1846 19.6846L13.9512 16.918L13.0673 16.0341L10.3007 18.8007L11.1846 19.6846ZM13.9512 13.082L11.1846 10.3154L10.3007 11.1993L13.0673 13.9659L13.9512 13.082ZM13.9512 16.918C14.2866 16.5826 14.5836 16.2875 14.7889 16.0183C15.0053 15.7347 15.178 15.4078 15.178 15L13.928 15C13.928 15.0246 13.9267 15.0877 13.7951 15.2601C13.6526 15.4469 13.4277 15.6737 13.0673 16.0341L13.9512 16.918ZM13.0673 13.9659C13.4277 14.3263 13.6526 14.5531 13.7951 14.7399C13.9267 14.9123 13.928 14.9754 13.928 15L15.178 15C15.178 14.5922 15.0053 14.2653 14.7889 13.9817C14.5836 13.7125 14.2866 13.4174 13.9512 13.082L13.0673 13.9659ZM8.11464 15.625L13.5092 15.625L13.5092 14.375L8.11464 14.375L8.11464 15.625Z",fill:e}),br("path",{d:"M21.6993 18.8007C21.9434 19.0448 21.9434 19.4405 21.6993 19.6846C21.4552 19.9287 21.0595 19.9287 20.8154 19.6846L21.6993 18.8007ZM20.8154 10.3154C21.0595 10.0713 21.4552 10.0713 21.6993 10.3154C21.9434 10.5595 21.9434 10.9552 21.6993 11.1993L20.8154 10.3154ZM23.8854 14.375C24.2305 14.375 24.5104 14.6548 24.5104 15C24.5104 15.3452 24.2305 15.625 23.8854 15.625L23.8854 14.375ZM18.4908 15.625C18.1456 15.625 17.8658 15.3452 17.8658 15C17.8658 14.6548 18.1456 14.375 18.4908 14.375L18.4908 15.625ZM20.8154 19.6846L18.0488 16.918L18.9327 16.0341L21.6993 18.8007L20.8154 19.6846ZM18.0488 13.082L20.8154 10.3154L21.6993 11.1993L18.9327 13.9659L18.0488 13.082ZM18.0488 16.918C17.7134 16.5826 17.4164 16.2875 17.2111 16.0183C16.9947 15.7347 16.822 15.4078 16.822 15L18.072 15C18.072 15.0246 18.0733 15.0877 18.2049 15.2601C18.3474 15.4469 18.5723 15.6737 18.9327 16.0341L18.0488 16.918ZM18.9327 13.9659C18.5723 14.3263 18.3474 14.5531 18.2049 14.7399C18.0733 14.9123 18.072 14.9754 18.072 15L16.822 15C16.822 14.5922 16.9947 14.2653 17.2111 13.9817C17.4164 13.7125 17.7134 13.4174 18.0488 13.082L18.9327 13.9659ZM23.8854 15.625L18.4908 15.625L18.4908 14.375L23.8854 14.375L23.8854 15.625Z",fill:e})]}),"ButtonSizeDefaultIcon"),jl=s(({color:e=En,width:t=hr,height:r=hr,...o})=>Gl(J,{...o,width:t,height:r,children:[br("path",{d:"M9.18459 18.8007C9.42867 19.0448 9.42867 19.4405 9.18459 19.6846C8.94051 19.9287 8.54479 19.9287 8.30071 19.6846L9.18459 18.8007ZM8.30071 10.3154C8.54479 10.0713 8.94051 10.0713 9.18459 10.3154C9.42867 10.5595 9.42867 10.9552 9.18459 11.1993L8.30071 10.3154ZM11.3707 14.375C11.7158 14.375 11.9957 14.6548 11.9957 15C11.9957 15.3452 11.7158 15.625 11.3707 15.625L11.3707 14.375ZM5.97605 15.625C5.63087 15.625 5.35105 15.3452 5.35105 15C5.35105 14.6548 5.63087 14.375 5.97605 14.375L5.97605 15.625ZM8.30071 19.6846L5.5341 16.918L6.41799 16.0341L9.18459 18.8007L8.30071 19.6846ZM5.5341 13.082L8.30071 10.3154L9.18459 11.1993L6.41799 13.9659L5.5341 13.082ZM5.5341 16.918C5.19869 16.5826 4.90174 16.2875 4.69637 16.0183C4.48 15.7347 4.30733 15.4078 4.30733 15L5.55733 15C5.55733 15.0246 5.55861 15.0877 5.69015 15.2601C5.83269 15.4469 6.05759 15.6737 6.41799 16.0341L5.5341 16.918ZM6.41799 13.9659C6.05759 14.3263 5.83269 14.5531 5.69015 14.7399C5.55861 14.9123 5.55733 14.9754 5.55733 15L4.30733 15C4.30733 14.5922 4.48 14.2653 4.69637 13.9817C4.90174 13.7125 5.19869 13.4174 5.5341 13.082L6.41799 13.9659ZM11.3707 15.625L5.97605 15.625L5.97605 14.375L11.3707 14.375L11.3707 15.625Z",fill:e}),br("path",{d:"M22.8154 18.8007C22.5713 19.0448 22.5713 19.4405 22.8154 19.6846C23.0595 19.9287 23.4552 19.9287 23.6993 19.6846L22.8154 18.8007ZM23.6993 10.3154C23.4552 10.0713 23.0595 10.0713 22.8154 10.3154C22.5713 10.5595 22.5713 10.9552 22.8154 11.1993L23.6993 10.3154ZM20.6293 14.375C20.2842 14.375 20.0043 14.6548 20.0043 15C20.0043 15.3452 20.2842 15.625 20.6293 15.625L20.6293 14.375ZM26.024 15.625C26.3691 15.625 26.649 15.3452 26.649 15C26.649 14.6548 26.3691 14.375 26.024 14.375L26.024 15.625ZM23.6993 19.6846L26.4659 16.918L25.582 16.0341L22.8154 18.8007L23.6993 19.6846ZM26.4659 13.082L23.6993 10.3154L22.8154 11.1993L25.582 13.9659L26.4659 13.082ZM26.4659 16.918C26.8013 16.5826 27.0983 16.2875 27.3036 16.0183C27.52 15.7347 27.6927 15.4078 27.6927 15L26.4427 15C26.4427 15.0246 26.4414 15.0877 26.3099 15.2601C26.1673 15.4469 25.9424 15.6737 25.582 16.0341L26.4659 16.918ZM25.582 13.9659C25.9424 14.3263 26.1673 14.5531 26.3099 14.7399C26.4414 14.9123 26.4427 14.9754 26.4427 15L27.6927 15C27.6927 14.5922 27.52 14.2653 27.3036 13.9817C27.0983 13.7125 26.8013 13.4174 26.4659 13.082L25.582 13.9659ZM20.6293 15.625L26.024 15.625L26.024 14.375L20.6293 14.375L20.6293 15.625Z",fill:e})]}),"ButtonSizeFullIcon");import{jsx as $,jsxs as nt}from"react/jsx-runtime";var Kl=s(({element:e,editor:t})=>{var a,c;let r=g1({resolver:f1($l),defaultValues:{...Ne,...e==null?void 0:e.attrs}}),{updateNodeAttributes:o}=mr({editor:t,element:e,form:r,nodeType:"button"}),n=((c=(a=t==null?void 0:t.extensionManager.extensions.find(l=>l.name==="variableSuggestion"))==null?void 0:a.options)==null?void 0:c.variables)||{},i=Yt(n);return e?nt(ot,{...r,children:[$(fr,{type:"button"}),nt("form",{onChange:()=>{o(r.getValues())},children:[$("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Link"}),$(z,{control:r.control,name:"link",render:({field:l})=>nt(O,{children:[$(W,{children:$(Mt,{as:"Textarea",...l,variables:i,onChange:u=>{l.onChange(u),o({...r.getValues(),link:u.target.value})}})}),$(Z,{})]})}),$(se,{className:"courier-mt-6 courier-mb-4"}),$("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Text"}),$(z,{control:r.control,name:"label",render:({field:l})=>nt(O,{className:"courier-mb-2",children:[$(W,{children:$(Mt,{...l,variables:i,onChange:u=>{l.onChange(u),o({...r.getValues(),label:u.target.value})}})}),$(Z,{})]})}),$(z,{control:r.control,name:"textColor",render:({field:l})=>nt(O,{className:"courier-mb-4",children:[$(W,{children:$($e,{...l,defaultValue:Ne.textColor,onChange:u=>{l.onChange(u),o({...r.getValues(),[l.name]:u})}})}),$(Z,{})]})}),$(se,{className:"courier-mt-6 courier-mb-4"}),$("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Background"}),$(z,{control:r.control,name:"backgroundColor",render:({field:l})=>nt(O,{className:"courier-mb-4",children:[$(W,{children:$($e,{...l,defaultValue:Ne.backgroundColor,onChange:u=>{l.onChange(u),o({...r.getValues(),[l.name]:u})}})}),$(Z,{})]})}),$(se,{className:"courier-mt-6 courier-mb-4"}),$("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Frame"}),$(z,{control:r.control,name:"padding",render:({field:l})=>nt(O,{className:"courier-mb-2",children:[$(W,{children:$(te,{type:"number",min:0,...l})}),$(Z,{})]})}),nt("div",{className:"courier-flex courier-flex-row courier-gap-6",children:[$(z,{control:r.control,name:"alignment",render:({field:l})=>nt(O,{children:[$(W,{children:nt(Dt,{type:"single",value:l.value,onValueChange:u=>{l.onChange(u),o({...r.getValues(),alignment:u})},children:[$(Se,{value:"left",children:$(Mi,{})}),$(Se,{value:"center",children:$(Ni,{})}),$(Se,{value:"right",children:$(Ii,{})})]})}),$(Z,{})]})}),$(z,{control:r.control,name:"size",render:({field:l})=>nt(O,{children:[$(W,{children:nt(Dt,{type:"single",value:l.value,onValueChange:u=>{l.onChange(u),o({...r.getValues(),size:u})},children:[$(Se,{value:"default",children:$(_l,{})}),$(Se,{value:"full",children:$(jl,{})})]})}),$(Z,{})]})})]}),$(se,{className:"courier-mt-6 courier-mb-4"}),$("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Border"}),nt("div",{className:"courier-flex courier-flex-row courier-gap-3 courier-mb-3",children:[$(z,{control:r.control,name:"borderWidth",render:({field:l})=>nt(O,{children:[$(W,{children:$(te,{startAdornment:$(Gt,{}),type:"number",min:0,...l})}),$(Z,{})]})}),$(z,{control:r.control,name:"borderRadius",render:({field:l})=>nt(O,{children:[$(W,{children:$(te,{startAdornment:$(ro,{}),type:"number",min:0,...l})}),$(Z,{})]})})]}),$(z,{control:r.control,name:"borderColor",render:({field:l})=>nt(O,{className:"courier-mb-4",children:[$(W,{children:$($e,{...l,defaultValue:Ne.borderColor,onChange:u=>{l.onChange(u),o({...r.getValues(),[l.name]:u})}})}),$(Z,{})]})})]})]}):null},"ButtonForm");import{z as zo}from"zod";var Jl=zo.object({padding:zo.number(),color:zo.string(),size:zo.number(),radius:zo.number(),variant:zo.enum(["divider","spacer"]).default("divider")});import{zodResolver as h1}from"@hookform/resolvers/zod";import{useForm as b1}from"react-hook-form";import{Fragment as v1,jsx as Ze,jsxs as $o}from"react/jsx-runtime";var Xl=s(({element:e,editor:t})=>{let r=b1({resolver:h1(Jl),defaultValues:{...Kt,...e==null?void 0:e.attrs}}),{updateNodeAttributes:o}=mr({editor:t,element:e,form:r,nodeType:"divider"});if(!e)return null;let n=r.watch("variant");return $o(ot,{...r,children:[Ze(fr,{type:n}),$o("form",{onChange:()=>{o(r.getValues())},children:[Ze("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Frame"}),Ze(z,{control:r.control,name:"padding",render:({field:i})=>$o(O,{children:[Ze(W,{children:Ze(te,{startAdornment:Ze(oo,{}),type:"number",...i,onChange:a=>{i.onChange(a),o({...r.getValues(),margin:a.target.value})}})}),Ze(Z,{})]})}),n==="divider"&&$o(v1,{children:[Ze(se,{className:"courier-mt-6 courier-mb-4"}),Ze("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Line"}),Ze(z,{control:r.control,name:"size",render:({field:i})=>$o(O,{className:"courier-mb-4",children:[Ze(W,{children:Ze(te,{startAdornment:Ze(Gt,{}),type:"number",min:0,...i,onChange:a=>{i.onChange(a),o({...r.getValues(),width:a.target.value})}})}),Ze(Z,{})]})}),Ze(z,{control:r.control,name:"color",render:({field:i})=>$o(O,{className:"courier-mb-4",children:[Ze(W,{children:Ze($e,{...i,defaultValue:Kt.color,onChange:a=>{i.onChange(a),o({...r.getValues(),[i.name]:a})}})}),Ze(Z,{})]})})]})]})]})},"DividerForm");import{Node as y1}from"@tiptap/core";var Yl=y1.create({name:"doc",topNode:!0,content:"block+"});var Xa=Yl.extend({content:"(block)+"});import{Node as M1}from"@tiptap/core";import{ReactNodeViewRenderer as N1}from"@tiptap/react";import{useSortable as x1}from"@dnd-kit/sortable";import{NodeViewWrapper as C1}from"@tiptap/react";import{forwardRef as w1,useEffect as Ql,useState as T1}from"react";import{jsx as Li}from"react/jsx-runtime";function k1(){let[e,t]=T1(!1);return Ql(()=>{let r=setTimeout(()=>t(!0),500);return()=>clearTimeout(r)},[]),e}s(k1,"useMountStatus");var P1=w1(({children:e,className:t,dragOverlay:r,id:o},n)=>(Ql(()=>{if(r)return document.body.style.cursor="grabbing",()=>{document.body.style.cursor=""}},[r]),Li(C1,{ref:n,"data-cypress":"draggable-item","data-node-view-wrapper":!0,"data-id":o,className:E("courier-flex courier-items-start courier-gap-2 courier-pl-6",t),children:e}))),eu=s(({node:e})=>{let t=e.attrs.type,r=e.attrs.id,{setNodeRef:o,setActivatorNodeRef:n,listeners:i,isDragging:a,transform:c,transition:l}=x1({id:r}),u=k1();return Li(P1,{ref:o,id:r,transition:l,transform:c,fadeIn:a&&!u,listeners:i,handleProps:{ref:n},children:Li("div",{className:E("courier-relative courier-flex courier-flex-grow courier-items-center courier-px-5 courier-py-[18px] courier-bg-background/50","courier-border-2 courier-border-dashed courier-border-accent-foreground courier-rounded-md"),children:Li("div",{className:"courier-text-accent-foreground",children:t==="text"?"Text":t==="heading"?"Heading":t==="spacer"?"Spacer":t==="divider"?"Divider":t==="button"?"Button":t==="image"?"Image":t})})})},"DragPlaceholderComponent");var tu=M1.create({name:"dragPlaceholder",group:"block",atom:!0,draggable:!0,addAttributes(){return{id:{default:null,parseHTML:e=>e.getAttribute("data-id"),renderHTML:e=>e.id?{"data-id":e.id}:{}},type:{default:"text",parseHTML:e=>e.getAttribute("data-type"),renderHTML:e=>({"data-type":e.type})}}},parseHTML(){return[{tag:'div[data-type="drag-placeholder"]'}]},renderHTML({HTMLAttributes:e}){return["div",{"data-type":"drag-placeholder",...e},0]},addCommands(){return{setDragPlaceholder:e=>({tr:t,dispatch:r})=>{if(r){let o=this.type.create(e);typeof e.pos=="number"?t.insert(e.pos,o):t.replaceSelectionWith(o)}return!0},removeDragPlaceholder:()=>({tr:e,state:t,dispatch:r})=>{let o=!1;return t.doc.descendants((n,i)=>n.type.name===this.name?(r&&(n!=null&&n.nodeSize)&&(e.delete(i,i+n.nodeSize),o=!0),!1):!0),o}}},addNodeView(){return N1(eu,{as:"div",className:"drag-placeholder-wrapper"})}});import{Extension as I1}from"@tiptap/core";import{Plugin as L1,PluginKey as E1}from"@tiptap/pm/state";var A1=new E1("file-handler"),S1=I1.create({name:"fileHandler",addOptions(){return{allowedMimeTypes:[],onDrop:()=>{},onPaste:()=>{}}},addProseMirrorPlugins(){let{allowedMimeTypes:e,onDrop:t,onPaste:r}=this.options;return[new L1({key:A1,props:{handleDrop:(o,n,i,a)=>{var d;if(!((d=n.dataTransfer)!=null&&d.files)||a)return!1;let{files:c}=n.dataTransfer,l=o.posAtCoords({left:n.clientX,top:n.clientY});if(!l)return!1;let u=Array.from(c).filter(p=>e==null?void 0:e.includes(p.type));return u.length===0?!1:(n.preventDefault(),t&&t(this.editor,u,l.pos),!0)},handlePaste:(o,n)=>{var c;if(!((c=n.clipboardData)!=null&&c.files))return!1;let{files:i}=n.clipboardData,a=Array.from(i).filter(l=>e==null?void 0:e.includes(l.type));return a.length===0?!1:(n.preventDefault(),r&&r(this.editor,a),!0)}}})]}}),Ei=S1;import{mergeAttributes as D1}from"@tiptap/core";import{Node as R1,mergeAttributes as B1,textblockTypeInputRule as H1}from"@tiptap/core";var ru=R1.create({name:"heading",addOptions(){return{levels:[1,2,3,4,5,6],HTMLAttributes:{}}},content:"inline*",group:"block",defining:!0,addAttributes(){return{level:{default:1,rendered:!1}}},parseHTML(){return this.options.levels.map(e=>({tag:`h${e}`,attrs:{level:e}}))},renderHTML({node:e,HTMLAttributes:t}){return[`h${this.options.levels.includes(e.attrs.level)?e.attrs.level:this.options.levels[0]}`,B1(this.options.HTMLAttributes,t),0]},addCommands(){return{setHeading:e=>({commands:t})=>this.options.levels.includes(e.level)?t.setNode(this.name,e):!1,toggleHeading:e=>({commands:t})=>this.options.levels.includes(e.level)?t.toggleNode(this.name,"paragraph",e):!1}},addKeyboardShortcuts(){return this.options.levels.reduce((e,t)=>({...e,[`Mod-Alt-${t}`]:()=>this.editor.commands.toggleHeading({level:t})}),{})},addInputRules(){return this.options.levels.map(e=>H1({find:new RegExp(`^(#{${Math.min(...this.options.levels)},${e}})\\s$`),type:this.type,getAttributes:{level:e}}))}});import{ReactNodeViewRenderer as V1}from"@tiptap/react";var Ya=ru.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),HTMLAttributes:{class:""}}},onCreate(){Vt(this.editor,this.name)},addAttributes(){var e;return{...(e=this.parent)==null?void 0:e.call(this),paddingVertical:{default:Y.paddingVertical,parseHTML:t=>t.style.paddingTop?parseInt(t.style.paddingTop):Y.paddingVertical,renderHTML:t=>({style:`padding-top: ${t.paddingVertical}px; padding-bottom: ${t.paddingVertical}px;`})},paddingHorizontal:{default:Y.paddingHorizontal,parseHTML:t=>t.style.paddingLeft?parseInt(t.style.paddingLeft):Y.paddingHorizontal,renderHTML:t=>({style:`padding-left: ${t.paddingHorizontal}px; padding-right: ${t.paddingHorizontal}px;`})},textAlign:{default:Y.textAlign,parseHTML:t=>t.style.textAlign||Y.textAlign,renderHTML:t=>({style:`text-align: ${t.textAlign}`})},backgroundColor:{default:Y.backgroundColor,parseHTML:t=>t.style.backgroundColor||Y.backgroundColor,renderHTML:t=>({style:`background-color: ${t.backgroundColor}`})},borderWidth:{default:Y.borderWidth,parseHTML:t=>t.style.borderWidth?parseInt(t.style.borderWidth):Y.borderWidth,renderHTML:t=>({style:`border-width: ${t.borderWidth}px`})},borderRadius:{default:Y.borderRadius,parseHTML:t=>t.style.borderRadius?parseInt(t.style.borderRadius):Y.borderRadius,renderHTML:t=>({style:`border-radius: ${t.borderRadius}px`})},borderColor:{default:Y.borderColor,parseHTML:t=>t.style.borderColor||Y.borderColor,renderHTML:t=>({style:`border-color: ${t.borderColor}`})},textColor:{default:Y.textColor,parseHTML:t=>t.style.color||Y.textColor,renderHTML:t=>({style:`color: ${t.textColor}`})},id:{default:()=>null,parseHTML:t=>t.getAttribute("data-id"),renderHTML:t=>({"data-id":t.id})}}},addCommands(){return{setTextAlign:e=>({chain:t})=>t().updateAttributes(this.name,{textAlign:e}).run()}},parseHTML(){return[{tag:'div[data-type="heading"]'}]},renderHTML({node:e,HTMLAttributes:t}){let r=parseInt(e.attrs.level,10);return[`h${this.options.levels.includes(r)?r:this.options.levels[0]}`,D1(this.options.HTMLAttributes,t),0]},addNodeView(){return V1(vi)}});import{z as Qt}from"zod";var ou=Qt.object({sourcePath:Qt.string(),link:Qt.string().optional(),alt:Qt.string().optional(),alignment:Qt.enum(["left","center","right"]),width:Qt.number().min(1).max(100),borderWidth:Qt.number(),borderRadius:Qt.number(),borderColor:Qt.string(),isUploading:Qt.boolean().optional(),imageNaturalWidth:Qt.number()});import{zodResolver as F1}from"@hookform/resolvers/zod";import{ArrowUp as O1}from"lucide-react";import{useCallback as Ai,useEffect as W1,useRef as nu,useState as Si}from"react";import{useForm as z1}from"react-hook-form";import{toast as Ri}from"sonner";import{useAtomValue as Qa}from"jotai";import{Fragment as iu,jsx as q,jsxs as qe}from"react/jsx-runtime";var au=s(({element:e,editor:t})=>{var N,y,M,S;let r=nu(null),o=nu(null),[n,i]=Si(""),[a,c]=Si(!1),[l,u]=Si(((N=e==null?void 0:e.attrs)==null?void 0:N.imageNaturalWidth)||0),[d,p]=Si(!1),m=Qa(et),h=Qa(tt),b=Qa(Ee),g=z1({resolver:F1(ou),defaultValues:{...Ue,...e==null?void 0:e.attrs},mode:"onChange"}),{updateNodeAttributes:v}=mr({editor:t,element:e,form:g,nodeType:"imageBlock"});W1(()=>{var I;let C=(I=e==null?void 0:e.attrs)==null?void 0:I.sourcePath;if(C&&!l){let H=new Image;H.onload=()=>{u(H.naturalWidth);let V={...g.getValues(),imageNaturalWidth:H.naturalWidth};g.setValue("imageNaturalWidth",H.naturalWidth),v(V)},H.src=C}},[(y=e==null?void 0:e.attrs)==null?void 0:y.sourcePath,l,g,v]);let k=Ai(C=>{var G,D;let I=(D=(G=t==null?void 0:t.view)==null?void 0:G.dom)==null?void 0:D.closest(".ProseMirror"),H=(I==null?void 0:I.clientWidth)||1e3;if(C||(C=l),!C)return 0;let V=Math.min(100,C/H*100);return Math.round(V)},[t,l]),R=Ai(C=>{var I;C.preventDefault(),(I=r.current)==null||I.click()},[]),T=Ai((C,I)=>{let H=k(C.naturalWidth);i(`${H}%`),c(!1),g.setValue("sourcePath",I),g.setValue("imageNaturalWidth",C.naturalWidth),g.setValue("width",H);let V={...g.getValues(),sourcePath:I,width:H,imageNaturalWidth:C.naturalWidth};v(V)},[g,v,k]),f=Ai(C=>{if(!C)return;let I=new Image;I.onload=()=>{let H=k(I.naturalWidth);g.setValue("sourcePath",C),g.setValue("imageNaturalWidth",I.naturalWidth),g.setValue("width",H);let V={...g.getValues(),sourcePath:C,width:H,imageNaturalWidth:I.naturalWidth};v(V)},I.src=C},[g,v,k]),w=((S=(M=t==null?void 0:t.extensionManager.extensions.find(C=>C.name==="variableSuggestion"))==null?void 0:M.options)==null?void 0:S.variables)||{},P=Yt(w),A=g.getValues().sourcePath;return e?qe(ot,{...g,children:[q(fr,{type:"image"}),qe("form",{ref:o,onChange:()=>{let C=g.getValues();v(C)},children:[q("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Image"}),qe(ii,{defaultValue:"file",className:"courier-mb-3 courier-w-full",children:[qe(gn,{className:"courier-w-full courier-flex courier-justify-stretch courier-mb-3",children:[q(Eo,{value:"file",className:"courier-flex-1",children:"From file"}),q(Eo,{value:"url",className:"courier-flex-1",children:"From URL"})]}),q(ai,{value:"file",children:qe("div",{className:"courier-flex courier-flex-col courier-gap-2",children:[q(Ce,{onClick:R,className:"courier-w-full",variant:"outline",type:"button",disabled:d,children:d?q(iu,{children:"Uploading..."}):qe(iu,{children:[q(O1,{strokeWidth:1.25,className:"courier-w-4 courier-h-4 courier-ml-2 courier-text-foreground"}),"Upload image"]})}),q("input",{ref:r,type:"file",accept:"image/*",className:"courier-hidden",onChange:C=>{var H;let I=(H=C.target.files)==null?void 0:H[0];if(I){p(!0);let V=new FileReader;V.onload=async()=>{try{if(!m||!h||!b){Ri.error("Missing configuration for image upload"),p(!1);return}let _=await hi(I,{apiUrl:m,token:h,tenantId:b}),G=new Image;G.onload=()=>{T(G,_),p(!1)},G.onerror=()=>{Ri.error("Failed to load uploaded image"),p(!1)},G.src=_}catch(_){console.error("Error uploading image:",_),Ri.error("Failed to upload image"),p(!1)}},V.onerror=()=>{Ri.error("Failed to read image file"),p(!1)},V.readAsDataURL(I)}}})]})}),q(ai,{value:"url",children:q(z,{control:g.control,name:"sourcePath",render:({field:C})=>qe(O,{className:"courier-mb-3",children:[q(W,{children:q(Mt,{as:"Textarea",...C,autoResize:!0,className:"courier-max-h-[88px]",variables:P,onChange:I=>f(I.target.value)})}),q(Z,{})]})})})]}),q(z,{control:g.control,name:"link",render:({field:C})=>qe(O,{className:"courier-mb-3",children:[q(W,{children:q(Mt,{as:"Textarea",placeholder:"Link",...C,variables:P,onChange:I=>{C.onChange(I),v({...g.getValues(),link:I.target.value})}})}),q(Z,{})]})}),q(z,{control:g.control,name:"alt",render:({field:C})=>qe(O,{className:"courier-mb-4",children:[q(W,{children:q(Mt,{as:"Textarea",...C,placeholder:"Alt text...",variables:P,onChange:I=>{C.onChange(I),v({...g.getValues(),alt:I.target.value})}})}),q(Z,{})]})}),q(se,{className:"courier-mt-6 courier-mb-4"}),q("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Width"}),(()=>{let C=g.getValues().width,I=k(l),H=C===I,V=H?"original":"fill";return qe(Dt,{type:"single",value:A?V:"original",onValueChange:_=>{if(!_||_===V)return;let G=_==="fill"?100:k(l);G>0&&(g.setValue("width",G),v({...g.getValues(),width:G}))},className:"courier-w-full courier-border courier-rounded-md courier-border-border courier-p-0.5 courier-mb-3 courier-shadow-sm",disabled:!A,children:[q(Se,{size:"sm",value:"original",className:"courier-w-full courier-h-7",children:"Original"}),q(Se,{size:"sm",value:"fill",className:"courier-w-full courier-h-7",disabled:H||!A,children:"Fill"})]})})(),q(z,{control:g.control,name:"width",render:({field:C})=>qe(O,{className:"courier-flex-1 courier-mb-3",children:[q(W,{children:q(te,{type:"text",inputMode:"numeric",pattern:"[0-9]*",min:1,max:100,...C,value:g.getValues().sourcePath?a?n:`${C.value}%`:"0%",className:"courier-text-2xl courier-font-normal",disabled:!g.getValues().sourcePath,onFocus:I=>{c(!0),i(I.target.value)},onChange:I=>{i(I.target.value)},onKeyDown:I=>{I.key==="Enter"&&(I.preventDefault(),I.currentTarget.blur())},onBlur:I=>{c(!1);let H=parseFloat(I.target.value.replace("%",""));if(!isNaN(H)){let V=Math.min(100,Math.max(1,H));C.onChange(V),v({...g.getValues(),width:Math.round(V)})}}})}),q(Z,{})]})}),q(z,{control:g.control,name:"width",render:({field:C})=>qe(O,{className:"courier-flex-1 courier-mb-3",children:[q(W,{children:q(ha,{min:1,max:100,value:[A?C.value:0],disabled:!A,onValueChange:I=>{C.onChange(I[0]),v({...g.getValues(),width:I[0]})}})}),q(Z,{})]})}),q(z,{control:g.control,name:"alignment",render:({field:C})=>qe(O,{children:[q(W,{children:qe(Dt,{disabled:!A,type:"single",value:C.value,onValueChange:I=>{C.onChange(I),v({...g.getValues(),alignment:I})},className:"courier-w-full courier-border courier-rounded-md courier-border-border courier-p-0.5",children:[q(Se,{size:"sm",value:"left",className:"courier-w-full",children:q(Mi,{className:"courier-h-4 courier-w-4"})}),q(Se,{size:"sm",value:"center",className:"courier-w-full",children:q(Ni,{className:"courier-h-4 courier-w-4"})}),q(Se,{size:"sm",value:"right",className:"courier-w-full",children:q(Ii,{className:"courier-h-4 courier-w-4"})})]})}),q(Z,{})]})}),q(se,{className:"courier-mt-6 courier-mb-4"}),q("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Border"}),qe("div",{className:"courier-flex courier-flex-row courier-gap-3 courier-mb-3",children:[q(z,{control:g.control,name:"borderWidth",render:({field:C})=>qe(O,{children:[q(W,{children:q(te,{startAdornment:q(Gt,{}),type:"number",disabled:!A,min:0,...C,onChange:I=>{let H=parseInt(I.target.value)||0;C.onChange(H),v({...g.getValues(),borderWidth:H})}})}),q(Z,{})]})}),q(z,{control:g.control,name:"borderRadius",render:({field:C})=>qe(O,{children:[q(W,{children:q(te,{startAdornment:q(ro,{}),type:"number",disabled:!A,min:0,...C,onChange:I=>{let H=parseInt(I.target.value)||0;C.onChange(H),v({...g.getValues(),borderRadius:H})}})}),q(Z,{})]})})]}),q(z,{control:g.control,name:"borderColor",render:({field:C})=>qe(O,{className:"courier-mb-4",children:[q(W,{children:q($e,{...C,disabled:!A,defaultValue:Ue.borderColor,onChange:I=>{C.onChange(I),v({...g.getValues(),[C.name]:I})}})}),q(Z,{})]})})]})]}):null},"ImageBlockForm");import{getMarkRange as su,mergeAttributes as $1}from"@tiptap/core";import U1 from"@tiptap/extension-link";import{Plugin as cu,TextSelection as lu}from"@tiptap/pm/state";var es=U1.extend({inclusive:!0,addAttributes(){var e;return{...(e=this.parent)==null?void 0:e.call(this),hasVariables:{default:!1},originalHref:{default:null}}},parseHTML(){return[{tag:'a[href]:not([data-type="button"]):not([href *= "javascript:" i])'}]},renderHTML({HTMLAttributes:e}){if(e.hasVariables&&e.originalHref)e.href=e.originalHref,delete e.hasVariables,delete e.originalHref;else if(e.href){let t=e.href;t.includes("__VAR_")&&(e.href=t.replace(/__VAR_([^_]+)__/g,"{{$1}}"))}return["a",$1(this.options.HTMLAttributes,e,{class:"link cursor-pointer"}),0]},addProseMirrorPlugins(){var t;return[...((t=this.parent)==null?void 0:t.call(this))||[],new cu({props:{handleClick:(r,o,n)=>{if(n.button!==0)return!1;let{state:i}=r,{doc:a}=i,c=a.resolve(o),l=c.marks().find(u=>u.type.name==="link");if(l||o>0&&(l=a.resolve(o-1).marks().find(d=>d.type.name==="link")),l||o<a.content.size&&(l=a.resolve(o+1).marks().find(d=>d.type.name==="link")),l){let u=su(c,l.type);return u?(r.dispatch(i.tr.setSelection(lu.create(a,u.from,u.to))),r.dispatch(r.state.tr.setMeta("showLinkForm",{from:u.from,to:u.to,href:l.attrs.originalHref||l.attrs.href})),!0):(r.dispatch(i.tr.setSelection(lu.create(a,o,o+1))),r.dispatch(r.state.tr.setMeta("showLinkForm",{from:o,to:o+1,href:l.attrs.originalHref||l.attrs.href})),!0)}return!1}}}),new cu({appendTransaction(r,o,n){if(!r.some(c=>c.docChanged))return null;let i=n.tr,a=!1;return n.doc.descendants((c,l)=>(c.marks.forEach(u=>{if(u.type.name==="link"&&u.attrs.href){let d=u.attrs.href;if(d.includes("__VAR_")){let p=d.replace(/__VAR_([^_]+)__/g,"{{$1}}");if(p!==d){let m=su(n.doc.resolve(l),u.type);m&&(i.removeMark(m.from,m.to,u.type),i.addMark(m.from,m.to,u.type.create({...u.attrs,href:p,hasVariables:!0,originalHref:p})),a=!0)}}}}),!0)),a?i:null}})]}});import{zodResolver as Z1}from"@hookform/resolvers/zod";import{useSetAtom as q1}from"jotai";import{useRef as _1,useEffect as j1}from"react";import{useForm as G1}from"react-hook-form";import{z as ts}from"zod";import{jsx as so,jsxs as uu}from"react/jsx-runtime";var K1=ts.object({href:ts.string(),openInNewTab:ts.boolean().default(!1)}),du=s(({editor:e,mark:t,pendingLink:r})=>{var u,d;let o=q1(mi),n=_1(null),i=G1({resolver:Z1(K1),defaultValues:{href:(t==null?void 0:t.attrs.href)||"",openInNewTab:(t==null?void 0:t.attrs.target)==="_blank"||!1}});j1(()=>{i.reset({href:(t==null?void 0:t.attrs.href)||"",openInNewTab:(t==null?void 0:t.attrs.target)==="_blank"||!1})},[t,i]);let a=((d=(u=e==null?void 0:e.extensionManager.extensions.find(p=>p.name==="variableSuggestion"))==null?void 0:u.options)==null?void 0:d.variables)||{},c=Yt(a),l=s(async p=>{let m=p.href.trim();if(!m){r&&(e==null||e.commands.setTextSelection({from:r.from,to:r.to})),e==null||e.commands.unsetLink(),o(null);return}r&&(e==null||e.commands.setTextSelection({from:r.from,to:r.to})),await(e==null?void 0:e.chain().focus().unsetLink().setTextSelection({from:(r==null?void 0:r.from)||0,to:(r==null?void 0:r.to)||0}).setLink({href:m,target:p.openInNewTab?"_blank":null}).run()),e==null||e.commands.setTextSelection((r==null?void 0:r.to)||0),o(null)},"updateLink");return uu(ot,{...i,children:[so("p",{className:"courier-font-medium courier-mb-4",children:"Link"}),so("div",{className:"courier-space-y-4",children:so(z,{control:i.control,name:"href",render:({field:p})=>uu(O,{children:[so(Ht,{children:"URL"}),so(W,{children:so(Mt,{as:"Textarea",autoResize:!0,...p,variables:c,ref:m=>{typeof p.ref=="function"&&p.ref(m),n.current=m},onKeyDown:m=>{m.key==="Enter"&&(m.preventDefault(),m.stopPropagation(),i.handleSubmit(l)())},onBlur:()=>{p.onBlur(),i.handleSubmit(l)()}})}),so(Z,{})]})})})]})},"LinkForm");import{Node as J1,mergeAttributes as X1}from"@tiptap/core";var pu=J1.create({name:"paragraph",priority:1e3,addOptions(){return{HTMLAttributes:{}}},group:"block",content:"inline*",parseHTML(){return[{tag:"p"}]},renderHTML({HTMLAttributes:e}){return["p",X1(this.options.HTMLAttributes,e),0]},addCommands(){return{setParagraph:()=>({commands:e})=>e.setNode(this.name)}},addKeyboardShortcuts(){return{"Mod-Alt-0":()=>this.editor.commands.setParagraph()}}});import{mergeAttributes as ig,ReactNodeViewRenderer as ag}from"@tiptap/react";import{TextSelection as sg,Plugin as cg,PluginKey as lg}from"prosemirror-state";var Er={8:"Backspace",9:"Tab",10:"Enter",12:"NumLock",13:"Enter",16:"Shift",17:"Control",18:"Alt",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",44:"PrintScreen",45:"Insert",46:"Delete",59:";",61:"=",91:"Meta",92:"Meta",106:"*",107:"+",108:",",109:"-",110:".",111:"/",144:"NumLock",145:"ScrollLock",160:"Shift",161:"Shift",162:"Control",163:"Control",164:"Alt",165:"Alt",173:"-",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'"},Hi={48:")",49:"!",50:"@",51:"#",52:"$",53:"%",54:"^",55:"&",56:"*",57:"(",59:":",61:"+",173:"_",186:":",187:"+",188:"<",189:"_",190:">",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"'},Y1=typeof navigator!="undefined"&&/Mac/.test(navigator.platform),Q1=typeof navigator!="undefined"&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);for(Re=0;Re<10;Re++)Er[48+Re]=Er[96+Re]=String(Re);var Re;for(Re=1;Re<=24;Re++)Er[Re+111]="F"+Re;var Re;for(Re=65;Re<=90;Re++)Er[Re]=String.fromCharCode(Re+32),Hi[Re]=String.fromCharCode(Re);var Re;for(Bi in Er)Hi.hasOwnProperty(Bi)||(Hi[Bi]=Er[Bi]);var Bi;function mu(e){var t=Y1&&e.metaKey&&e.shiftKey&&!e.ctrlKey&&!e.altKey||Q1&&e.shiftKey&&e.key&&e.key.length==1||e.key=="Unidentified",r=!t&&e.key||(e.shiftKey?Hi:Er)[e.keyCode]||e.key||"Unidentified";return r=="Esc"&&(r="Escape"),r=="Del"&&(r="Delete"),r=="Left"&&(r="ArrowLeft"),r=="Up"&&(r="ArrowUp"),r=="Right"&&(r="ArrowRight"),r=="Down"&&(r="ArrowDown"),r}s(mu,"keyName");import{Plugin as eg}from"prosemirror-state";var tg=typeof navigator!="undefined"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):!1;function rg(e){let t=e.split(/-(?!$)/),r=t[t.length-1];r=="Space"&&(r=" ");let o,n,i,a;for(let c=0;c<t.length-1;c++){let l=t[c];if(/^(cmd|meta|m)$/i.test(l))a=!0;else if(/^a(lt)?$/i.test(l))o=!0;else if(/^(c|ctrl|control)$/i.test(l))n=!0;else if(/^s(hift)?$/i.test(l))i=!0;else if(/^mod$/i.test(l))tg?a=!0:n=!0;else throw new Error("Unrecognized modifier name: "+l)}return o&&(r="Alt-"+r),n&&(r="Ctrl-"+r),a&&(r="Meta-"+r),i&&(r="Shift-"+r),r}s(rg,"normalizeKeyName");function og(e){let t=Object.create(null);for(let r in e)t[rg(r)]=e[r];return t}s(og,"normalize");function rs(e,t,r=!0){return t.altKey&&(e="Alt-"+e),t.ctrlKey&&(e="Ctrl-"+e),t.metaKey&&(e="Meta-"+e),r&&t.shiftKey&&(e="Shift-"+e),e}s(rs,"modifiers");function fu(e){return new eg({props:{handleKeyDown:ng(e)}})}s(fu,"keymap");function ng(e){let t=og(e);return function(r,o){let n=mu(o),i,a=t[rs(n,o)];if(a&&a(r.state,r.dispatch,r))return!0;if(n.length==1&&n!=" "){if(o.shiftKey){let c=t[rs(n,o,!1)];if(c&&c(r.state,r.dispatch,r))return!0}if((o.shiftKey||o.altKey||o.metaKey||n.charCodeAt(0)>127)&&(i=Er[o.keyCode])&&i!=n){let c=t[rs(i,o)];if(c&&c(r.state,r.dispatch,r))return!0}}return!1}}s(ng,"keydownHandler");import{v4 as ug}from"uuid";var os=pu.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),HTMLAttributes:{class:""}}},onCreate(){Vt(this.editor,this.name)},onTransaction(){let e=this.editor.state.tr,t=!1;this.editor.state.doc.descendants((r,o)=>{if(r.type.name===this.name&&!r.attrs.id){let n=`node-${ug()}`;e.setNodeMarkup(o,void 0,{...r.attrs,id:n}),t=!0}return!0}),t&&this.editor.view.dispatch(e)},addAttributes(){return{paddingVertical:{default:Y.paddingVertical,parseHTML:e=>e.style.paddingTop?parseInt(e.style.paddingTop):Y.paddingVertical,renderHTML:e=>({"data-padding-vertical":e.paddingVertical})},paddingHorizontal:{default:Y.paddingHorizontal,parseHTML:e=>e.style.paddingLeft?parseInt(e.style.paddingLeft):Y.paddingHorizontal,renderHTML:e=>({"data-padding-horizontal":e.paddingHorizontal})},textAlign:{default:Y.textAlign,parseHTML:e=>e.style.textAlign||Y.textAlign,renderHTML:e=>({"data-text-align":e.textAlign})},backgroundColor:{default:Y.backgroundColor,parseHTML:e=>e.style.backgroundColor||Y.backgroundColor,renderHTML:e=>({"data-background-color":e.backgroundColor})},borderWidth:{default:Y.borderWidth,parseHTML:e=>e.style.borderWidth?parseInt(e.style.borderWidth):Y.borderWidth,renderHTML:e=>({"data-border-width":e.borderWidth})},borderRadius:{default:Y.borderRadius,parseHTML:e=>e.style.borderRadius?parseInt(e.style.borderRadius):Y.borderRadius,renderHTML:e=>({"data-border-radius":e.borderRadius})},borderColor:{default:Y.borderColor,parseHTML:e=>e.style.borderColor||Y.borderColor,renderHTML:e=>({"data-border-color":e.borderColor})},textColor:{default:Y.textColor,parseHTML:e=>e.style.color||Y.textColor,renderHTML:e=>({"data-text-color":e.textColor})},id:{default:void 0,parseHTML:e=>e.getAttribute("data-id"),renderHTML:e=>({"data-id":e.id})}}},parseHTML(){return[{tag:'div[data-type="paragraph"]'}]},renderHTML({HTMLAttributes:e}){return["div",ig(this.options.HTMLAttributes,e,{"data-type":"paragraph"}),0]},addNodeView(){return ag(vi)},addProseMirrorPlugins(){return[fu({"Mod-a":({selection:e,tr:t})=>{document.execCommand("selectAll");let{$from:r}=e,o=r.depth,n=null;for(;o>0;){let i=r.node(o);if(i.type.name==="paragraph"||i.type.name==="heading"){n=i;break}o--}if(n){let i=r.start(o),a=r.end(o);if(e.from!==i||e.to!==a)return t.setSelection(sg.create(t.doc,i,a)),!0}return!1}}),new cg({key:new lg("preventElementDeletion"),props:{handleKeyDown:(e,t)=>{let r=t.key==="Delete"||t.key==="Backspace",o=t.metaKey||t.ctrlKey||t.altKey;if(r){let{state:n}=e,{selection:i}=n,{$anchor:a}=i,c=a.depth,l=null;for(;c>0;){let u=a.node(c);if(u.type.name==="paragraph"||u.type.name==="heading"){l=u;break}c--}if(l){let u=l.textContent,d=a.parentOffset===0,p=a.parentOffset===u.length,m=u.length===0;if(o||m||t.key==="Backspace"&&d||t.key==="Delete"&&p)return t.preventDefault(),t.stopPropagation(),!0}}return!1}}})]},addKeyboardShortcuts(){let e=s((t,r=!0)=>{let{empty:o,$anchor:n,$head:i}=t.state.selection,a=n.depth,c=null;for(;a>0;){let d=n.node(a);if(d.type.name==="paragraph"||d.type.name==="heading"){c=d;break}a--}if(!c)return!1;let l=r?n.pos===i.pos&&n.parentOffset===0:n.pos===i.pos&&n.parentOffset===c.textContent.length,u=c.textContent.length===0;return l||u?!0:o?!1:(t.commands.command(({tr:d,dispatch:p})=>p?(d.insertText("",t.state.selection.from,t.state.selection.to),!0):!1),!0)},"handleDeletion");return{Enter:({editor:t})=>{if(t.view.dom.querySelector(".variable-suggestion")||t.view.state.selection.$from.node().type.spec.code)return!1;let{state:o,dispatch:n}=t.view,{tr:i}=o;return i.replaceSelectionWith(o.schema.nodes.hardBreak.create()).scrollIntoView(),n(i),!0},"Mod-a":({editor:t})=>{let{$from:r}=t.state.selection,o=r.depth;for(;o>0;){let n=r.node(o);if(n.type.name==="paragraph"||n.type.name==="heading"){let i=r.start(o),a=r.end(o);return t.commands.setTextSelection({from:i,to:a}),!0}o--}return!1},Backspace:({editor:t})=>e(t,!0),Delete:({editor:t})=>e(t,!1),Tab:()=>!0,"Shift-Tab":()=>!0}},addCommands(){return{setTextAlign:e=>({chain:t})=>t().updateAttributes(this.name,{textAlign:e}).run()}}});import{Extension as dg}from"@tiptap/core";import{Plugin as pg,PluginKey as mg}from"@tiptap/pm/state";var fg=new mg("selection"),ns=dg.create({name:"selection",addOptions(){return{HTMLAttributes:{},setSelectedNode:()=>{}}},addGlobalAttributes(){return[{types:["paragraph","heading","button","spacer","divider","imageBlock","blockquote"],attributes:{isSelected:{default:!1,parseHTML:()=>!1,renderHTML:e=>e.isSelected?{class:"selected-element"}:{}}}}]},addCommands(){return{updateSelectionState:e=>({tr:t,dispatch:r})=>(r&&t.doc.descendants((o,n)=>{var i;return o.type.name!=="text"&&((i=o.type.spec.attrs)==null?void 0:i.isSelected)!==void 0&&(o===e?t.setNodeAttribute(n,"isSelected",!0):t.setNodeAttribute(n,"isSelected",!1)),!0}),!0)}},addProseMirrorPlugins(){return[new pg({key:fg,props:{handleClick:(e,t,r)=>{var c;let{state:o}=e;if(!this.editor.isEditable)return!1;try{let l=window.getSelection();if(l&&l.rangeCount>0){let d=l.getRangeAt(0).startContainer.parentElement;if(d&&(["P","H1","H2","H3","BLOCKQUOTE"].includes(d.tagName)||["P","H1","H2","H3","BLOCKQUOTE"].some(p=>d.closest(p)))){let p=e.posAtDOM(d,0),m=o.doc.resolve(p);if(((c=m.node(1))==null?void 0:c.type.name)==="blockquote")return this.options.setSelectedNode(m.node(1)),this.editor.commands.updateSelectionState(m.node(1)),!0;let h=m.node();if(h&&["paragraph","heading","blockquote"].includes(h.type.name))return this.options.setSelectedNode(h),this.editor.commands.updateSelectionState(h),!0}}}catch(l){console.error("Error handling click:",l)}let n=r.target,i=e.posAtDOM(n,0),a=o.doc.resolve(i).node();return a&&["paragraph","heading","blockquote"].includes(a.type.name)?(this.options.setSelectedNode(a),this.editor.commands.updateSelectionState(a),!0):!1}}})]}});var Pe="top",Fe="bottom",Be="right",Ie="left",Di="auto",Ur=[Pe,Fe,Be,Ie],Ar="start",co="end",gu="clippingParents",Vi="viewport",Uo="popper",hu="reference",is=Ur.reduce(function(e,t){return e.concat([t+"-"+Ar,t+"-"+co])},[]),Fi=[].concat(Ur,[Di]).reduce(function(e,t){return e.concat([t,t+"-"+Ar,t+"-"+co])},[]),gg="beforeRead",hg="read",bg="afterRead",vg="beforeMain",yg="main",xg="afterMain",Cg="beforeWrite",wg="write",Tg="afterWrite",bu=[gg,hg,bg,vg,yg,xg,Cg,wg,Tg];function _e(e){return e?(e.nodeName||"").toLowerCase():null}s(_e,"getNodeName");function ye(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}s(ye,"getWindow");function Ft(e){var t=ye(e).Element;return e instanceof t||e instanceof Element}s(Ft,"isElement");function Oe(e){var t=ye(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}s(Oe,"isHTMLElement");function Zo(e){if(typeof ShadowRoot=="undefined")return!1;var t=ye(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}s(Zo,"isShadowRoot");function kg(e){var t=e.state;Object.keys(t.elements).forEach(function(r){var o=t.styles[r]||{},n=t.attributes[r]||{},i=t.elements[r];!Oe(i)||!_e(i)||(Object.assign(i.style,o),Object.keys(n).forEach(function(a){var c=n[a];c===!1?i.removeAttribute(a):i.setAttribute(a,c===!0?"":c)}))})}s(kg,"applyStyles");function Pg(e){var t=e.state,r={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,r.popper),t.styles=r,t.elements.arrow&&Object.assign(t.elements.arrow.style,r.arrow),function(){Object.keys(t.elements).forEach(function(o){var n=t.elements[o],i=t.attributes[o]||{},a=Object.keys(t.styles.hasOwnProperty(o)?t.styles[o]:r[o]),c=a.reduce(function(l,u){return l[u]="",l},{});!Oe(n)||!_e(n)||(Object.assign(n.style,c),Object.keys(i).forEach(function(l){n.removeAttribute(l)}))})}}s(Pg,"effect");var An={name:"applyStyles",enabled:!0,phase:"write",fn:kg,effect:Pg,requires:["computeStyles"]};function je(e){return e.split("-")[0]}s(je,"getBasePlacement");var er=Math.max,lo=Math.min,Sr=Math.round;function qo(){var e=navigator.userAgentData;return e!=null&&e.brands&&Array.isArray(e.brands)?e.brands.map(function(t){return t.brand+"/"+t.version}).join(" "):navigator.userAgent}s(qo,"getUAString");function Sn(){return!/^((?!chrome|android).)*safari/i.test(qo())}s(Sn,"isLayoutViewport");function Ot(e,t,r){t===void 0&&(t=!1),r===void 0&&(r=!1);var o=e.getBoundingClientRect(),n=1,i=1;t&&Oe(e)&&(n=e.offsetWidth>0&&Sr(o.width)/e.offsetWidth||1,i=e.offsetHeight>0&&Sr(o.height)/e.offsetHeight||1);var a=Ft(e)?ye(e):window,c=a.visualViewport,l=!Sn()&&r,u=(o.left+(l&&c?c.offsetLeft:0))/n,d=(o.top+(l&&c?c.offsetTop:0))/i,p=o.width/n,m=o.height/i;return{width:p,height:m,top:d,right:u+p,bottom:d+m,left:u,x:u,y:d}}s(Ot,"getBoundingClientRect");function uo(e){var t=Ot(e),r=e.offsetWidth,o=e.offsetHeight;return Math.abs(t.width-r)<=1&&(r=t.width),Math.abs(t.height-o)<=1&&(o=t.height),{x:e.offsetLeft,y:e.offsetTop,width:r,height:o}}s(uo,"getLayoutRect");function Rn(e,t){var r=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(r&&Zo(r)){var o=t;do{if(o&&e.isSameNode(o))return!0;o=o.parentNode||o.host}while(o)}return!1}s(Rn,"contains");function pt(e){return ye(e).getComputedStyle(e)}s(pt,"getComputedStyle");function as(e){return["table","td","th"].indexOf(_e(e))>=0}s(as,"isTableElement");function Ye(e){return((Ft(e)?e.ownerDocument:e.document)||window.document).documentElement}s(Ye,"getDocumentElement");function Rr(e){return _e(e)==="html"?e:e.assignedSlot||e.parentNode||(Zo(e)?e.host:null)||Ye(e)}s(Rr,"getParentNode");function vu(e){return!Oe(e)||pt(e).position==="fixed"?null:e.offsetParent}s(vu,"getTrueOffsetParent");function Mg(e){var t=/firefox/i.test(qo()),r=/Trident/i.test(qo());if(r&&Oe(e)){var o=pt(e);if(o.position==="fixed")return null}var n=Rr(e);for(Zo(n)&&(n=n.host);Oe(n)&&["html","body"].indexOf(_e(n))<0;){var i=pt(n);if(i.transform!=="none"||i.perspective!=="none"||i.contain==="paint"||["transform","perspective"].indexOf(i.willChange)!==-1||t&&i.willChange==="filter"||t&&i.filter&&i.filter!=="none")return n;n=n.parentNode}return null}s(Mg,"getContainingBlock");function tr(e){for(var t=ye(e),r=vu(e);r&&as(r)&&pt(r).position==="static";)r=vu(r);return r&&(_e(r)==="html"||_e(r)==="body"&&pt(r).position==="static")?t:r||Mg(e)||t}s(tr,"getOffsetParent");function po(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}s(po,"getMainAxisFromPlacement");function mo(e,t,r){return er(e,lo(t,r))}s(mo,"within");function yu(e,t,r){var o=mo(e,t,r);return o>r?r:o}s(yu,"withinMaxClamp");function Bn(){return{top:0,right:0,bottom:0,left:0}}s(Bn,"getFreshSideObject");function Hn(e){return Object.assign({},Bn(),e)}s(Hn,"mergePaddingObject");function Dn(e,t){return t.reduce(function(r,o){return r[o]=e,r},{})}s(Dn,"expandToHashMap");var Ng=s(function(t,r){return t=typeof t=="function"?t(Object.assign({},r.rects,{placement:r.placement})):t,Hn(typeof t!="number"?t:Dn(t,Ur))},"toPaddingObject");function Ig(e){var t,r=e.state,o=e.name,n=e.options,i=r.elements.arrow,a=r.modifiersData.popperOffsets,c=je(r.placement),l=po(c),u=[Ie,Be].indexOf(c)>=0,d=u?"height":"width";if(!(!i||!a)){var p=Ng(n.padding,r),m=uo(i),h=l==="y"?Pe:Ie,b=l==="y"?Fe:Be,g=r.rects.reference[d]+r.rects.reference[l]-a[l]-r.rects.popper[d],v=a[l]-r.rects.reference[l],k=tr(i),R=k?l==="y"?k.clientHeight||0:k.clientWidth||0:0,T=g/2-v/2,f=p[h],w=R-m[d]-p[b],P=R/2-m[d]/2+T,A=mo(f,P,w),N=l;r.modifiersData[o]=(t={},t[N]=A,t.centerOffset=A-P,t)}}s(Ig,"arrow");function Lg(e){var t=e.state,r=e.options,o=r.element,n=o===void 0?"[data-popper-arrow]":o;n!=null&&(typeof n=="string"&&(n=t.elements.popper.querySelector(n),!n)||Rn(t.elements.popper,n)&&(t.elements.arrow=n))}s(Lg,"effect");var xu={name:"arrow",enabled:!0,phase:"main",fn:Ig,effect:Lg,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function Wt(e){return e.split("-")[1]}s(Wt,"getVariation");var Eg={top:"auto",right:"auto",bottom:"auto",left:"auto"};function Ag(e,t){var r=e.x,o=e.y,n=t.devicePixelRatio||1;return{x:Sr(r*n)/n||0,y:Sr(o*n)/n||0}}s(Ag,"roundOffsetsByDPR");function Cu(e){var t,r=e.popper,o=e.popperRect,n=e.placement,i=e.variation,a=e.offsets,c=e.position,l=e.gpuAcceleration,u=e.adaptive,d=e.roundOffsets,p=e.isFixed,m=a.x,h=m===void 0?0:m,b=a.y,g=b===void 0?0:b,v=typeof d=="function"?d({x:h,y:g}):{x:h,y:g};h=v.x,g=v.y;var k=a.hasOwnProperty("x"),R=a.hasOwnProperty("y"),T=Ie,f=Pe,w=window;if(u){var P=tr(r),A="clientHeight",N="clientWidth";if(P===ye(r)&&(P=Ye(r),pt(P).position!=="static"&&c==="absolute"&&(A="scrollHeight",N="scrollWidth")),P=P,n===Pe||(n===Ie||n===Be)&&i===co){f=Fe;var y=p&&P===w&&w.visualViewport?w.visualViewport.height:P[A];g-=y-o.height,g*=l?1:-1}if(n===Ie||(n===Pe||n===Fe)&&i===co){T=Be;var M=p&&P===w&&w.visualViewport?w.visualViewport.width:P[N];h-=M-o.width,h*=l?1:-1}}var S=Object.assign({position:c},u&&Eg),C=d===!0?Ag({x:h,y:g},ye(r)):{x:h,y:g};if(h=C.x,g=C.y,l){var I;return Object.assign({},S,(I={},I[f]=R?"0":"",I[T]=k?"0":"",I.transform=(w.devicePixelRatio||1)<=1?"translate("+h+"px, "+g+"px)":"translate3d("+h+"px, "+g+"px, 0)",I))}return Object.assign({},S,(t={},t[f]=R?g+"px":"",t[T]=k?h+"px":"",t.transform="",t))}s(Cu,"mapToStyles");function Sg(e){var t=e.state,r=e.options,o=r.gpuAcceleration,n=o===void 0?!0:o,i=r.adaptive,a=i===void 0?!0:i,c=r.roundOffsets,l=c===void 0?!0:c,u={placement:je(t.placement),variation:Wt(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:n,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,Cu(Object.assign({},u,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:a,roundOffsets:l})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,Cu(Object.assign({},u,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:l})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}s(Sg,"computeStyles");var wu={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Sg,data:{}};var Oi={passive:!0};function Rg(e){var t=e.state,r=e.instance,o=e.options,n=o.scroll,i=n===void 0?!0:n,a=o.resize,c=a===void 0?!0:a,l=ye(t.elements.popper),u=[].concat(t.scrollParents.reference,t.scrollParents.popper);return i&&u.forEach(function(d){d.addEventListener("scroll",r.update,Oi)}),c&&l.addEventListener("resize",r.update,Oi),function(){i&&u.forEach(function(d){d.removeEventListener("scroll",r.update,Oi)}),c&&l.removeEventListener("resize",r.update,Oi)}}s(Rg,"effect");var Tu={name:"eventListeners",enabled:!0,phase:"write",fn:s(function(){},"fn"),effect:Rg,data:{}};var Bg={left:"right",right:"left",bottom:"top",top:"bottom"};function _o(e){return e.replace(/left|right|bottom|top/g,function(t){return Bg[t]})}s(_o,"getOppositePlacement");var Hg={start:"end",end:"start"};function Wi(e){return e.replace(/start|end/g,function(t){return Hg[t]})}s(Wi,"getOppositeVariationPlacement");function fo(e){var t=ye(e),r=t.pageXOffset,o=t.pageYOffset;return{scrollLeft:r,scrollTop:o}}s(fo,"getWindowScroll");function go(e){return Ot(Ye(e)).left+fo(e).scrollLeft}s(go,"getWindowScrollBarX");function ss(e,t){var r=ye(e),o=Ye(e),n=r.visualViewport,i=o.clientWidth,a=o.clientHeight,c=0,l=0;if(n){i=n.width,a=n.height;var u=Sn();(u||!u&&t==="fixed")&&(c=n.offsetLeft,l=n.offsetTop)}return{width:i,height:a,x:c+go(e),y:l}}s(ss,"getViewportRect");function cs(e){var t,r=Ye(e),o=fo(e),n=(t=e.ownerDocument)==null?void 0:t.body,i=er(r.scrollWidth,r.clientWidth,n?n.scrollWidth:0,n?n.clientWidth:0),a=er(r.scrollHeight,r.clientHeight,n?n.scrollHeight:0,n?n.clientHeight:0),c=-o.scrollLeft+go(e),l=-o.scrollTop;return pt(n||r).direction==="rtl"&&(c+=er(r.clientWidth,n?n.clientWidth:0)-i),{width:i,height:a,x:c,y:l}}s(cs,"getDocumentRect");function ho(e){var t=pt(e),r=t.overflow,o=t.overflowX,n=t.overflowY;return/auto|scroll|overlay|hidden/.test(r+n+o)}s(ho,"isScrollParent");function zi(e){return["html","body","#document"].indexOf(_e(e))>=0?e.ownerDocument.body:Oe(e)&&ho(e)?e:zi(Rr(e))}s(zi,"getScrollParent");function Zr(e,t){var r;t===void 0&&(t=[]);var o=zi(e),n=o===((r=e.ownerDocument)==null?void 0:r.body),i=ye(o),a=n?[i].concat(i.visualViewport||[],ho(o)?o:[]):o,c=t.concat(a);return n?c:c.concat(Zr(Rr(a)))}s(Zr,"listScrollParents");function jo(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}s(jo,"rectToClientRect");function Dg(e,t){var r=Ot(e,!1,t==="fixed");return r.top=r.top+e.clientTop,r.left=r.left+e.clientLeft,r.bottom=r.top+e.clientHeight,r.right=r.left+e.clientWidth,r.width=e.clientWidth,r.height=e.clientHeight,r.x=r.left,r.y=r.top,r}s(Dg,"getInnerBoundingClientRect");function ku(e,t,r){return t===Vi?jo(ss(e,r)):Ft(t)?Dg(t,r):jo(cs(Ye(e)))}s(ku,"getClientRectFromMixedType");function Vg(e){var t=Zr(Rr(e)),r=["absolute","fixed"].indexOf(pt(e).position)>=0,o=r&&Oe(e)?tr(e):e;return Ft(o)?t.filter(function(n){return Ft(n)&&Rn(n,o)&&_e(n)!=="body"}):[]}s(Vg,"getClippingParents");function ls(e,t,r,o){var n=t==="clippingParents"?Vg(e):[].concat(t),i=[].concat(n,[r]),a=i[0],c=i.reduce(function(l,u){var d=ku(e,u,o);return l.top=er(d.top,l.top),l.right=lo(d.right,l.right),l.bottom=lo(d.bottom,l.bottom),l.left=er(d.left,l.left),l},ku(e,a,o));return c.width=c.right-c.left,c.height=c.bottom-c.top,c.x=c.left,c.y=c.top,c}s(ls,"getClippingRect");function Vn(e){var t=e.reference,r=e.element,o=e.placement,n=o?je(o):null,i=o?Wt(o):null,a=t.x+t.width/2-r.width/2,c=t.y+t.height/2-r.height/2,l;switch(n){case Pe:l={x:a,y:t.y-r.height};break;case Fe:l={x:a,y:t.y+t.height};break;case Be:l={x:t.x+t.width,y:c};break;case Ie:l={x:t.x-r.width,y:c};break;default:l={x:t.x,y:t.y}}var u=n?po(n):null;if(u!=null){var d=u==="y"?"height":"width";switch(i){case Ar:l[u]=l[u]-(t[d]/2-r[d]/2);break;case co:l[u]=l[u]+(t[d]/2-r[d]/2);break;default:}}return l}s(Vn,"computeOffsets");function rr(e,t){t===void 0&&(t={});var r=t,o=r.placement,n=o===void 0?e.placement:o,i=r.strategy,a=i===void 0?e.strategy:i,c=r.boundary,l=c===void 0?gu:c,u=r.rootBoundary,d=u===void 0?Vi:u,p=r.elementContext,m=p===void 0?Uo:p,h=r.altBoundary,b=h===void 0?!1:h,g=r.padding,v=g===void 0?0:g,k=Hn(typeof v!="number"?v:Dn(v,Ur)),R=m===Uo?hu:Uo,T=e.rects.popper,f=e.elements[b?R:m],w=ls(Ft(f)?f:f.contextElement||Ye(e.elements.popper),l,d,a),P=Ot(e.elements.reference),A=Vn({reference:P,element:T,strategy:"absolute",placement:n}),N=jo(Object.assign({},T,A)),y=m===Uo?N:P,M={top:w.top-y.top+k.top,bottom:y.bottom-w.bottom+k.bottom,left:w.left-y.left+k.left,right:y.right-w.right+k.right},S=e.modifiersData.offset;if(m===Uo&&S){var C=S[n];Object.keys(M).forEach(function(I){var H=[Be,Fe].indexOf(I)>=0?1:-1,V=[Pe,Fe].indexOf(I)>=0?"y":"x";M[I]+=C[V]*H})}return M}s(rr,"detectOverflow");function us(e,t){t===void 0&&(t={});var r=t,o=r.placement,n=r.boundary,i=r.rootBoundary,a=r.padding,c=r.flipVariations,l=r.allowedAutoPlacements,u=l===void 0?Fi:l,d=Wt(o),p=d?c?is:is.filter(function(b){return Wt(b)===d}):Ur,m=p.filter(function(b){return u.indexOf(b)>=0});m.length===0&&(m=p);var h=m.reduce(function(b,g){return b[g]=rr(e,{placement:g,boundary:n,rootBoundary:i,padding:a})[je(g)],b},{});return Object.keys(h).sort(function(b,g){return h[b]-h[g]})}s(us,"computeAutoPlacement");function Fg(e){if(je(e)===Di)return[];var t=_o(e);return[Wi(e),t,Wi(t)]}s(Fg,"getExpandedFallbackPlacements");function Og(e){var t=e.state,r=e.options,o=e.name;if(!t.modifiersData[o]._skip){for(var n=r.mainAxis,i=n===void 0?!0:n,a=r.altAxis,c=a===void 0?!0:a,l=r.fallbackPlacements,u=r.padding,d=r.boundary,p=r.rootBoundary,m=r.altBoundary,h=r.flipVariations,b=h===void 0?!0:h,g=r.allowedAutoPlacements,v=t.options.placement,k=je(v),R=k===v,T=l||(R||!b?[_o(v)]:Fg(v)),f=[v].concat(T).reduce(function(Le,ge){return Le.concat(je(ge)===Di?us(t,{placement:ge,boundary:d,rootBoundary:p,padding:u,flipVariations:b,allowedAutoPlacements:g}):ge)},[]),w=t.rects.reference,P=t.rects.popper,A=new Map,N=!0,y=f[0],M=0;M<f.length;M++){var S=f[M],C=je(S),I=Wt(S)===Ar,H=[Pe,Fe].indexOf(C)>=0,V=H?"width":"height",_=rr(t,{placement:S,boundary:d,rootBoundary:p,altBoundary:m,padding:u}),G=H?I?Be:Ie:I?Fe:Pe;w[V]>P[V]&&(G=_o(G));var D=_o(G),me=[];if(i&&me.push(_[C]<=0),c&&me.push(_[G]<=0,_[D]<=0),me.every(function(Le){return Le})){y=S,N=!1;break}A.set(S,me)}if(N)for(var He=b?3:1,De=s(function(ge){var Ve=f.find(function(mt){var Ge=A.get(mt);if(Ge)return Ge.slice(0,ge).every(function(st){return st})});if(Ve)return y=Ve,"break"},"_loop"),re=He;re>0;re--){var xe=De(re);if(xe==="break")break}t.placement!==y&&(t.modifiersData[o]._skip=!0,t.placement=y,t.reset=!0)}}s(Og,"flip");var Pu={name:"flip",enabled:!0,phase:"main",fn:Og,requiresIfExists:["offset"],data:{_skip:!1}};function Mu(e,t,r){return r===void 0&&(r={x:0,y:0}),{top:e.top-t.height-r.y,right:e.right-t.width+r.x,bottom:e.bottom-t.height+r.y,left:e.left-t.width-r.x}}s(Mu,"getSideOffsets");function Nu(e){return[Pe,Be,Fe,Ie].some(function(t){return e[t]>=0})}s(Nu,"isAnySideFullyClipped");function Wg(e){var t=e.state,r=e.name,o=t.rects.reference,n=t.rects.popper,i=t.modifiersData.preventOverflow,a=rr(t,{elementContext:"reference"}),c=rr(t,{altBoundary:!0}),l=Mu(a,o),u=Mu(c,n,i),d=Nu(l),p=Nu(u);t.modifiersData[r]={referenceClippingOffsets:l,popperEscapeOffsets:u,isReferenceHidden:d,hasPopperEscaped:p},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":d,"data-popper-escaped":p})}s(Wg,"hide");var Iu={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:Wg};function zg(e,t,r){var o=je(e),n=[Ie,Pe].indexOf(o)>=0?-1:1,i=typeof r=="function"?r(Object.assign({},t,{placement:e})):r,a=i[0],c=i[1];return a=a||0,c=(c||0)*n,[Ie,Be].indexOf(o)>=0?{x:c,y:a}:{x:a,y:c}}s(zg,"distanceAndSkiddingToXY");function $g(e){var t=e.state,r=e.options,o=e.name,n=r.offset,i=n===void 0?[0,0]:n,a=Fi.reduce(function(d,p){return d[p]=zg(p,t.rects,i),d},{}),c=a[t.placement],l=c.x,u=c.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=l,t.modifiersData.popperOffsets.y+=u),t.modifiersData[o]=a}s($g,"offset");var Lu={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:$g};function Ug(e){var t=e.state,r=e.name;t.modifiersData[r]=Vn({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})}s(Ug,"popperOffsets");var Eu={name:"popperOffsets",enabled:!0,phase:"read",fn:Ug,data:{}};function ds(e){return e==="x"?"y":"x"}s(ds,"getAltAxis");function Zg(e){var t=e.state,r=e.options,o=e.name,n=r.mainAxis,i=n===void 0?!0:n,a=r.altAxis,c=a===void 0?!1:a,l=r.boundary,u=r.rootBoundary,d=r.altBoundary,p=r.padding,m=r.tether,h=m===void 0?!0:m,b=r.tetherOffset,g=b===void 0?0:b,v=rr(t,{boundary:l,rootBoundary:u,padding:p,altBoundary:d}),k=je(t.placement),R=Wt(t.placement),T=!R,f=po(k),w=ds(f),P=t.modifiersData.popperOffsets,A=t.rects.reference,N=t.rects.popper,y=typeof g=="function"?g(Object.assign({},t.rects,{placement:t.placement})):g,M=typeof y=="number"?{mainAxis:y,altAxis:y}:Object.assign({mainAxis:0,altAxis:0},y),S=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,C={x:0,y:0};if(P){if(i){var I,H=f==="y"?Pe:Ie,V=f==="y"?Fe:Be,_=f==="y"?"height":"width",G=P[f],D=G+v[H],me=G-v[V],He=h?-N[_]/2:0,De=R===Ar?A[_]:N[_],re=R===Ar?-N[_]:-A[_],xe=t.elements.arrow,Le=h&&xe?uo(xe):{width:0,height:0},ge=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:Bn(),Ve=ge[H],mt=ge[V],Ge=mo(0,A[_],Le[_]),st=T?A[_]/2-He-Ge-Ve-M.mainAxis:De-Ge-Ve-M.mainAxis,Me=T?-A[_]/2+He+Ge+mt+M.mainAxis:re+Ge+mt+M.mainAxis,ft=t.elements.arrow&&tr(t.elements.arrow),ct=ft?f==="y"?ft.clientTop||0:ft.clientLeft||0:0,wt=(I=S==null?void 0:S[f])!=null?I:0,Lt=G+st-wt-ct,Et=G+Me-wt,Ke=mo(h?lo(D,Lt):D,G,h?er(me,Et):me);P[f]=Ke,C[f]=Ke-G}if(c){var Tt,At=f==="x"?Pe:Ie,St=f==="x"?Fe:Be,We=P[w],Je=w==="y"?"height":"width",gt=We+v[At],j=We-v[St],Te=[Pe,Ie].indexOf(k)!==-1,de=(Tt=S==null?void 0:S[w])!=null?Tt:0,Xe=Te?gt:We-A[Je]-N[Je]-de+M.altAxis,L=Te?We+A[Je]+N[Je]-de-M.altAxis:j,K=h&&Te?yu(Xe,We,L):mo(h?Xe:gt,We,h?L:j);P[w]=K,C[w]=K-We}t.modifiersData[o]=C}}s(Zg,"preventOverflow");var Au={name:"preventOverflow",enabled:!0,phase:"main",fn:Zg,requiresIfExists:["offset"]};function ps(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}s(ps,"getHTMLElementScroll");function ms(e){return e===ye(e)||!Oe(e)?fo(e):ps(e)}s(ms,"getNodeScroll");function qg(e){var t=e.getBoundingClientRect(),r=Sr(t.width)/e.offsetWidth||1,o=Sr(t.height)/e.offsetHeight||1;return r!==1||o!==1}s(qg,"isElementScaled");function fs(e,t,r){r===void 0&&(r=!1);var o=Oe(t),n=Oe(t)&&qg(t),i=Ye(t),a=Ot(e,n,r),c={scrollLeft:0,scrollTop:0},l={x:0,y:0};return(o||!o&&!r)&&((_e(t)!=="body"||ho(i))&&(c=ms(t)),Oe(t)?(l=Ot(t,!0),l.x+=t.clientLeft,l.y+=t.clientTop):i&&(l.x=go(i))),{x:a.left+c.scrollLeft-l.x,y:a.top+c.scrollTop-l.y,width:a.width,height:a.height}}s(fs,"getCompositeRect");function _g(e){var t=new Map,r=new Set,o=[];e.forEach(function(i){t.set(i.name,i)});function n(i){r.add(i.name);var a=[].concat(i.requires||[],i.requiresIfExists||[]);a.forEach(function(c){if(!r.has(c)){var l=t.get(c);l&&n(l)}}),o.push(i)}return s(n,"sort"),e.forEach(function(i){r.has(i.name)||n(i)}),o}s(_g,"order");function gs(e){var t=_g(e);return bu.reduce(function(r,o){return r.concat(t.filter(function(n){return n.phase===o}))},[])}s(gs,"orderModifiers");function hs(e){var t;return function(){return t||(t=new Promise(function(r){Promise.resolve().then(function(){t=void 0,r(e())})})),t}}s(hs,"debounce");function bs(e){var t=e.reduce(function(r,o){var n=r[o.name];return r[o.name]=n?Object.assign({},n,o,{options:Object.assign({},n.options,o.options),data:Object.assign({},n.data,o.data)}):o,r},{});return Object.keys(t).map(function(r){return t[r]})}s(bs,"mergeByName");var Su={placement:"bottom",modifiers:[],strategy:"absolute"};function Ru(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return!t.some(function(o){return!(o&&typeof o.getBoundingClientRect=="function")})}s(Ru,"areValidElements");function Bu(e){e===void 0&&(e={});var t=e,r=t.defaultModifiers,o=r===void 0?[]:r,n=t.defaultOptions,i=n===void 0?Su:n;return s(function(c,l,u){u===void 0&&(u=i);var d={placement:"bottom",orderedModifiers:[],options:Object.assign({},Su,i),modifiersData:{},elements:{reference:c,popper:l},attributes:{},styles:{}},p=[],m=!1,h={state:d,setOptions:s(function(k){var R=typeof k=="function"?k(d.options):k;g(),d.options=Object.assign({},i,d.options,R),d.scrollParents={reference:Ft(c)?Zr(c):c.contextElement?Zr(c.contextElement):[],popper:Zr(l)};var T=gs(bs([].concat(o,d.options.modifiers)));return d.orderedModifiers=T.filter(function(f){return f.enabled}),b(),h.update()},"setOptions"),forceUpdate:s(function(){if(!m){var k=d.elements,R=k.reference,T=k.popper;if(Ru(R,T)){d.rects={reference:fs(R,tr(T),d.options.strategy==="fixed"),popper:uo(T)},d.reset=!1,d.placement=d.options.placement,d.orderedModifiers.forEach(function(M){return d.modifiersData[M.name]=Object.assign({},M.data)});for(var f=0;f<d.orderedModifiers.length;f++){if(d.reset===!0){d.reset=!1,f=-1;continue}var w=d.orderedModifiers[f],P=w.fn,A=w.options,N=A===void 0?{}:A,y=w.name;typeof P=="function"&&(d=P({state:d,options:N,name:y,instance:h})||d)}}}},"forceUpdate"),update:hs(function(){return new Promise(function(v){h.forceUpdate(),v(d)})}),destroy:s(function(){g(),m=!0},"destroy")};if(!Ru(c,l))return h;h.setOptions(u).then(function(v){!m&&u.onFirstUpdate&&u.onFirstUpdate(v)});function b(){d.orderedModifiers.forEach(function(v){var k=v.name,R=v.options,T=R===void 0?{}:R,f=v.effect;if(typeof f=="function"){var w=f({state:d,name:k,instance:h,options:T}),P=s(function(){},"noopFn");p.push(w||P)}})}s(b,"runModifierEffects");function g(){p.forEach(function(v){return v()}),p=[]}return s(g,"cleanupModifierEffects"),h},"createPopper")}s(Bu,"popperGenerator");var jg=[Tu,Eu,wu,An,Lu,Pu,Au,xu,Iu],vs=Bu({defaultModifiers:jg});var Gg="tippy-box",Zu="tippy-content",Kg="tippy-backdrop",qu="tippy-arrow",_u="tippy-svg-arrow",bo={passive:!0,capture:!0},ju=s(function(){return document.body},"TIPPY_DEFAULT_APPEND_TO");function ys(e,t,r){if(Array.isArray(e)){var o=e[t];return o==null?Array.isArray(r)?r[t]:r:o}return e}s(ys,"getValueAtIndexOrReturn");function Ps(e,t){var r={}.toString.call(e);return r.indexOf("[object")===0&&r.indexOf(t+"]")>-1}s(Ps,"isType");function Gu(e,t){return typeof e=="function"?e.apply(void 0,t):e}s(Gu,"invokeWithArgsOrReturn");function Hu(e,t){if(t===0)return e;var r;return function(o){clearTimeout(r),r=setTimeout(function(){e(o)},t)}}s(Hu,"debounce");function Jg(e){return e.split(/\s+/).filter(Boolean)}s(Jg,"splitBySpaces");function Go(e){return[].concat(e)}s(Go,"normalizeToArray");function Du(e,t){e.indexOf(t)===-1&&e.push(t)}s(Du,"pushIfUnique");function Xg(e){return e.filter(function(t,r){return e.indexOf(t)===r})}s(Xg,"unique");function Yg(e){return e.split("-")[0]}s(Yg,"getBasePlacement");function Ui(e){return[].slice.call(e)}s(Ui,"arrayFrom");function Vu(e){return Object.keys(e).reduce(function(t,r){return e[r]!==void 0&&(t[r]=e[r]),t},{})}s(Vu,"removeUndefinedProps");function Fn(){return document.createElement("div")}s(Fn,"div");function Zi(e){return["Element","Fragment"].some(function(t){return Ps(e,t)})}s(Zi,"isElement");function Qg(e){return Ps(e,"NodeList")}s(Qg,"isNodeList");function e5(e){return Ps(e,"MouseEvent")}s(e5,"isMouseEvent");function t5(e){return!!(e&&e._tippy&&e._tippy.reference===e)}s(t5,"isReferenceElement");function r5(e){return Zi(e)?[e]:Qg(e)?Ui(e):Array.isArray(e)?e:Ui(document.querySelectorAll(e))}s(r5,"getArrayOfElements");function xs(e,t){e.forEach(function(r){r&&(r.style.transitionDuration=t+"ms")})}s(xs,"setTransitionDuration");function Fu(e,t){e.forEach(function(r){r&&r.setAttribute("data-state",t)})}s(Fu,"setVisibilityState");function o5(e){var t,r=Go(e),o=r[0];return o!=null&&(t=o.ownerDocument)!=null&&t.body?o.ownerDocument:document}s(o5,"getOwnerDocument");function n5(e,t){var r=t.clientX,o=t.clientY;return e.every(function(n){var i=n.popperRect,a=n.popperState,c=n.props,l=c.interactiveBorder,u=Yg(a.placement),d=a.modifiersData.offset;if(!d)return!0;var p=u==="bottom"?d.top.y:0,m=u==="top"?d.bottom.y:0,h=u==="right"?d.left.x:0,b=u==="left"?d.right.x:0,g=i.top-o+p>l,v=o-i.bottom-m>l,k=i.left-r+h>l,R=r-i.right-b>l;return g||v||k||R})}s(n5,"isCursorOutsideInteractiveBorder");function Cs(e,t,r){var o=t+"EventListener";["transitionend","webkitTransitionEnd"].forEach(function(n){e[o](n,r)})}s(Cs,"updateTransitionEndListener");function Ou(e,t){for(var r=t;r;){var o;if(e.contains(r))return!0;r=r.getRootNode==null||(o=r.getRootNode())==null?void 0:o.host}return!1}s(Ou,"actualContains");var vr={isTouch:!1},Wu=0;function i5(){vr.isTouch||(vr.isTouch=!0,window.performance&&document.addEventListener("mousemove",Ku))}s(i5,"onDocumentTouchStart");function Ku(){var e=performance.now();e-Wu<20&&(vr.isTouch=!1,document.removeEventListener("mousemove",Ku)),Wu=e}s(Ku,"onDocumentMouseMove");function a5(){var e=document.activeElement;if(t5(e)){var t=e._tippy;e.blur&&!t.state.isVisible&&e.blur()}}s(a5,"onWindowBlur");function s5(){document.addEventListener("touchstart",i5,bo),window.addEventListener("blur",a5)}s(s5,"bindGlobalEventListeners");var c5=typeof window!="undefined"&&typeof document!="undefined",l5=c5?!!window.msCrypto:!1;var u5={animateFill:!1,followCursor:!1,inlinePositioning:!1,sticky:!1},d5={allowHTML:!1,animation:"fade",arrow:!0,content:"",inertia:!1,maxWidth:350,role:"tooltip",theme:"",zIndex:9999},or=Object.assign({appendTo:ju,aria:{content:"auto",expanded:"auto"},delay:0,duration:[300,250],getReferenceClientRect:null,hideOnClick:!0,ignoreAttributes:!1,interactive:!1,interactiveBorder:2,interactiveDebounce:0,moveTransition:"",offset:[0,10],onAfterUpdate:s(function(){},"onAfterUpdate"),onBeforeUpdate:s(function(){},"onBeforeUpdate"),onCreate:s(function(){},"onCreate"),onDestroy:s(function(){},"onDestroy"),onHidden:s(function(){},"onHidden"),onHide:s(function(){},"onHide"),onMount:s(function(){},"onMount"),onShow:s(function(){},"onShow"),onShown:s(function(){},"onShown"),onTrigger:s(function(){},"onTrigger"),onUntrigger:s(function(){},"onUntrigger"),onClickOutside:s(function(){},"onClickOutside"),placement:"top",plugins:[],popperOptions:{},render:null,showOnCreate:!1,touch:!0,trigger:"mouseenter focus",triggerTarget:null},u5,d5),p5=Object.keys(or),m5=s(function(t){var r=Object.keys(t);r.forEach(function(o){or[o]=t[o]})},"setDefaultProps");function Ju(e){var t=e.plugins||[],r=t.reduce(function(o,n){var i=n.name,a=n.defaultValue;if(i){var c;o[i]=e[i]!==void 0?e[i]:(c=or[i])!=null?c:a}return o},{});return Object.assign({},e,r)}s(Ju,"getExtendedPassedProps");function f5(e,t){var r=t?Object.keys(Ju(Object.assign({},or,{plugins:t}))):p5,o=r.reduce(function(n,i){var a=(e.getAttribute("data-tippy-"+i)||"").trim();if(!a)return n;if(i==="content")n[i]=a;else try{n[i]=JSON.parse(a)}catch{n[i]=a}return n},{});return o}s(f5,"getDataAttributeProps");function zu(e,t){var r=Object.assign({},t,{content:Gu(t.content,[e])},t.ignoreAttributes?{}:f5(e,t.plugins));return r.aria=Object.assign({},or.aria,r.aria),r.aria={expanded:r.aria.expanded==="auto"?t.interactive:r.aria.expanded,content:r.aria.content==="auto"?t.interactive?null:"describedby":r.aria.content},r}s(zu,"evaluateProps");var g5=s(function(){return"innerHTML"},"innerHTML");function Ts(e,t){e[g5()]=t}s(Ts,"dangerouslySetInnerHTML");function $u(e){var t=Fn();return e===!0?t.className=qu:(t.className=_u,Zi(e)?t.appendChild(e):Ts(t,e)),t}s($u,"createArrowElement");function Uu(e,t){Zi(t.content)?(Ts(e,""),e.appendChild(t.content)):typeof t.content!="function"&&(t.allowHTML?Ts(e,t.content):e.textContent=t.content)}s(Uu,"setContent");function ks(e){var t=e.firstElementChild,r=Ui(t.children);return{box:t,content:r.find(function(o){return o.classList.contains(Zu)}),arrow:r.find(function(o){return o.classList.contains(qu)||o.classList.contains(_u)}),backdrop:r.find(function(o){return o.classList.contains(Kg)})}}s(ks,"getChildren");function Xu(e){var t=Fn(),r=Fn();r.className=Gg,r.setAttribute("data-state","hidden"),r.setAttribute("tabindex","-1");var o=Fn();o.className=Zu,o.setAttribute("data-state","hidden"),Uu(o,e.props),t.appendChild(r),r.appendChild(o),n(e.props,e.props);function n(i,a){var c=ks(t),l=c.box,u=c.content,d=c.arrow;a.theme?l.setAttribute("data-theme",a.theme):l.removeAttribute("data-theme"),typeof a.animation=="string"?l.setAttribute("data-animation",a.animation):l.removeAttribute("data-animation"),a.inertia?l.setAttribute("data-inertia",""):l.removeAttribute("data-inertia"),l.style.maxWidth=typeof a.maxWidth=="number"?a.maxWidth+"px":a.maxWidth,a.role?l.setAttribute("role",a.role):l.removeAttribute("role"),(i.content!==a.content||i.allowHTML!==a.allowHTML)&&Uu(u,e.props),a.arrow?d?i.arrow!==a.arrow&&(l.removeChild(d),l.appendChild($u(a.arrow))):l.appendChild($u(a.arrow)):d&&l.removeChild(d)}return s(n,"onUpdate"),{popper:t,onUpdate:n}}s(Xu,"render");Xu.$$tippy=!0;var h5=1,$i=[],ws=[];function b5(e,t){var r=zu(e,Object.assign({},or,Ju(Vu(t)))),o,n,i,a=!1,c=!1,l=!1,u=!1,d,p,m,h=[],b=Hu(Lt,r.interactiveDebounce),g,v=h5++,k=null,R=Xg(r.plugins),T={isEnabled:!0,isVisible:!1,isDestroyed:!1,isMounted:!1,isShown:!1},f={id:v,reference:e,popper:Fn(),popperInstance:k,props:r,state:T,plugins:R,clearDelayTimeouts:Xe,setProps:L,setContent:K,show:X,hide:ue,hideWithInteractivity:Q,enable:Te,disable:de,unmount:he,destroy:ce};if(!r.render)return f;var w=r.render(f),P=w.popper,A=w.onUpdate;P.setAttribute("data-tippy-root",""),P.id="tippy-"+f.id,f.popper=P,e._tippy=f,P._tippy=f;var N=R.map(function(x){return x.fn(f)}),y=e.hasAttribute("aria-expanded");return ft(),He(),G(),D("onCreate",[f]),r.showOnCreate&&gt(),P.addEventListener("mouseenter",function(){f.props.interactive&&f.state.isVisible&&f.clearDelayTimeouts()}),P.addEventListener("mouseleave",function(){f.props.interactive&&f.props.trigger.indexOf("mouseenter")>=0&&H().addEventListener("mousemove",b)}),f;function M(){var x=f.props.touch;return Array.isArray(x)?x:[x,0]}s(M,"getNormalizedTouchSettings");function S(){return M()[0]==="hold"}s(S,"getIsCustomTouchBehavior");function C(){var x;return!!((x=f.props.render)!=null&&x.$$tippy)}s(C,"getIsDefaultRenderFn");function I(){return g||e}s(I,"getCurrentTarget");function H(){var x=I().parentNode;return x?o5(x):document}s(H,"getDocument");function V(){return ks(P)}s(V,"getDefaultTemplateChildren");function _(x){return f.state.isMounted&&!f.state.isVisible||vr.isTouch||d&&d.type==="focus"?0:ys(f.props.delay,x?0:1,or.delay)}s(_,"getDelay");function G(x){x===void 0&&(x=!1),P.style.pointerEvents=f.props.interactive&&!x?"":"none",P.style.zIndex=""+f.props.zIndex}s(G,"handleStyles");function D(x,B,F){if(F===void 0&&(F=!0),N.forEach(function(ne){ne[x]&&ne[x].apply(ne,B)}),F){var ae;(ae=f.props)[x].apply(ae,B)}}s(D,"invokeHook");function me(){var x=f.props.aria;if(x.content){var B="aria-"+x.content,F=P.id,ae=Go(f.props.triggerTarget||e);ae.forEach(function(ne){var ze=ne.getAttribute(B);if(f.state.isVisible)ne.setAttribute(B,ze?ze+" "+F:F);else{var lt=ze&&ze.replace(F,"").trim();lt?ne.setAttribute(B,lt):ne.removeAttribute(B)}})}}s(me,"handleAriaContentAttribute");function He(){if(!(y||!f.props.aria.expanded)){var x=Go(f.props.triggerTarget||e);x.forEach(function(B){f.props.interactive?B.setAttribute("aria-expanded",f.state.isVisible&&B===I()?"true":"false"):B.removeAttribute("aria-expanded")})}}s(He,"handleAriaExpandedAttribute");function De(){H().removeEventListener("mousemove",b),$i=$i.filter(function(x){return x!==b})}s(De,"cleanupInteractiveMouseListeners");function re(x){if(!(vr.isTouch&&(l||x.type==="mousedown"))){var B=x.composedPath&&x.composedPath()[0]||x.target;if(!(f.props.interactive&&Ou(P,B))){if(Go(f.props.triggerTarget||e).some(function(F){return Ou(F,B)})){if(vr.isTouch||f.state.isVisible&&f.props.trigger.indexOf("click")>=0)return}else D("onClickOutside",[f,x]);f.props.hideOnClick===!0&&(f.clearDelayTimeouts(),f.hide(),c=!0,setTimeout(function(){c=!1}),f.state.isMounted||Ve())}}}s(re,"onDocumentPress");function xe(){l=!0}s(xe,"onTouchMove");function Le(){l=!1}s(Le,"onTouchStart");function ge(){var x=H();x.addEventListener("mousedown",re,!0),x.addEventListener("touchend",re,bo),x.addEventListener("touchstart",Le,bo),x.addEventListener("touchmove",xe,bo)}s(ge,"addDocumentPress");function Ve(){var x=H();x.removeEventListener("mousedown",re,!0),x.removeEventListener("touchend",re,bo),x.removeEventListener("touchstart",Le,bo),x.removeEventListener("touchmove",xe,bo)}s(Ve,"removeDocumentPress");function mt(x,B){st(x,function(){!f.state.isVisible&&P.parentNode&&P.parentNode.contains(P)&&B()})}s(mt,"onTransitionedOut");function Ge(x,B){st(x,B)}s(Ge,"onTransitionedIn");function st(x,B){var F=V().box;function ae(ne){ne.target===F&&(Cs(F,"remove",ae),B())}if(s(ae,"listener"),x===0)return B();Cs(F,"remove",p),Cs(F,"add",ae),p=ae}s(st,"onTransitionEnd");function Me(x,B,F){F===void 0&&(F=!1);var ae=Go(f.props.triggerTarget||e);ae.forEach(function(ne){ne.addEventListener(x,B,F),h.push({node:ne,eventType:x,handler:B,options:F})})}s(Me,"on");function ft(){S()&&(Me("touchstart",wt,{passive:!0}),Me("touchend",Et,{passive:!0})),Jg(f.props.trigger).forEach(function(x){if(x!=="manual")switch(Me(x,wt),x){case"mouseenter":Me("mouseleave",Et);break;case"focus":Me(l5?"focusout":"blur",Ke);break;case"focusin":Me("focusout",Ke);break}})}s(ft,"addListeners");function ct(){h.forEach(function(x){var B=x.node,F=x.eventType,ae=x.handler,ne=x.options;B.removeEventListener(F,ae,ne)}),h=[]}s(ct,"removeListeners");function wt(x){var B,F=!1;if(!(!f.state.isEnabled||Tt(x)||c)){var ae=((B=d)==null?void 0:B.type)==="focus";d=x,g=x.currentTarget,He(),!f.state.isVisible&&e5(x)&&$i.forEach(function(ne){return ne(x)}),x.type==="click"&&(f.props.trigger.indexOf("mouseenter")<0||a)&&f.props.hideOnClick!==!1&&f.state.isVisible?F=!0:gt(x),x.type==="click"&&(a=!F),F&&!ae&&j(x)}}s(wt,"onTrigger");function Lt(x){var B=x.target,F=I().contains(B)||P.contains(B);if(!(x.type==="mousemove"&&F)){var ae=Je().concat(P).map(function(ne){var ze,lt=ne._tippy,wr=(ze=lt.popperInstance)==null?void 0:ze.state;return wr?{popperRect:ne.getBoundingClientRect(),popperState:wr,props:r}:null}).filter(Boolean);n5(ae,x)&&(De(),j(x))}}s(Lt,"onMouseMove");function Et(x){var B=Tt(x)||f.props.trigger.indexOf("click")>=0&&a;if(!B){if(f.props.interactive){f.hideWithInteractivity(x);return}j(x)}}s(Et,"onMouseLeave");function Ke(x){f.props.trigger.indexOf("focusin")<0&&x.target!==I()||f.props.interactive&&x.relatedTarget&&P.contains(x.relatedTarget)||j(x)}s(Ke,"onBlurOrFocusOut");function Tt(x){return vr.isTouch?S()!==x.type.indexOf("touch")>=0:!1}s(Tt,"isEventListenerStopped");function At(){St();var x=f.props,B=x.popperOptions,F=x.placement,ae=x.offset,ne=x.getReferenceClientRect,ze=x.moveTransition,lt=C()?ks(P).arrow:null,wr=ne?{getBoundingClientRect:ne,contextElement:ne.contextElement||I()}:e,on={name:"$$tippy",enabled:!0,phase:"beforeWrite",requires:["computeStyles"],fn:s(function(Kr){var Tr=Kr.state;if(C()){var _n=V(),Po=_n.box;["placement","reference-hidden","escaped"].forEach(function(Jr){Jr==="placement"?Po.setAttribute("data-placement",Tr.placement):Tr.attributes.popper["data-popper-"+Jr]?Po.setAttribute("data-"+Jr,""):Po.removeAttribute("data-"+Jr)}),Tr.attributes.popper={}}},"fn")},ir=[{name:"offset",options:{offset:ae}},{name:"preventOverflow",options:{padding:{top:2,bottom:2,left:5,right:5}}},{name:"flip",options:{padding:5}},{name:"computeStyles",options:{adaptive:!ze}},on];C()&&lt&&ir.push({name:"arrow",options:{element:lt,padding:3}}),ir.push.apply(ir,(B==null?void 0:B.modifiers)||[]),f.popperInstance=vs(wr,P,Object.assign({},B,{placement:F,onFirstUpdate:m,modifiers:ir}))}s(At,"createPopperInstance");function St(){f.popperInstance&&(f.popperInstance.destroy(),f.popperInstance=null)}s(St,"destroyPopperInstance");function We(){var x=f.props.appendTo,B,F=I();f.props.interactive&&x===ju||x==="parent"?B=F.parentNode:B=Gu(x,[F]),B.contains(P)||B.appendChild(P),f.state.isMounted=!0,At()}s(We,"mount");function Je(){return Ui(P.querySelectorAll("[data-tippy-root]"))}s(Je,"getNestedPopperTree");function gt(x){f.clearDelayTimeouts(),x&&D("onTrigger",[f,x]),ge();var B=_(!0),F=M(),ae=F[0],ne=F[1];vr.isTouch&&ae==="hold"&&ne&&(B=ne),B?o=setTimeout(function(){f.show()},B):f.show()}s(gt,"scheduleShow");function j(x){if(f.clearDelayTimeouts(),D("onUntrigger",[f,x]),!f.state.isVisible){Ve();return}if(!(f.props.trigger.indexOf("mouseenter")>=0&&f.props.trigger.indexOf("click")>=0&&["mouseleave","mousemove"].indexOf(x.type)>=0&&a)){var B=_(!1);B?n=setTimeout(function(){f.state.isVisible&&f.hide()},B):i=requestAnimationFrame(function(){f.hide()})}}s(j,"scheduleHide");function Te(){f.state.isEnabled=!0}s(Te,"enable");function de(){f.hide(),f.state.isEnabled=!1}s(de,"disable");function Xe(){clearTimeout(o),clearTimeout(n),cancelAnimationFrame(i)}s(Xe,"clearDelayTimeouts");function L(x){if(!f.state.isDestroyed){D("onBeforeUpdate",[f,x]),ct();var B=f.props,F=zu(e,Object.assign({},B,Vu(x),{ignoreAttributes:!0}));f.props=F,ft(),B.interactiveDebounce!==F.interactiveDebounce&&(De(),b=Hu(Lt,F.interactiveDebounce)),B.triggerTarget&&!F.triggerTarget?Go(B.triggerTarget).forEach(function(ae){ae.removeAttribute("aria-expanded")}):F.triggerTarget&&e.removeAttribute("aria-expanded"),He(),G(),A&&A(B,F),f.popperInstance&&(At(),Je().forEach(function(ae){requestAnimationFrame(ae._tippy.popperInstance.forceUpdate)})),D("onAfterUpdate",[f,x])}}s(L,"setProps");function K(x){f.setProps({content:x})}s(K,"setContent");function X(){var x=f.state.isVisible,B=f.state.isDestroyed,F=!f.state.isEnabled,ae=vr.isTouch&&!f.props.touch,ne=ys(f.props.duration,0,or.duration);if(!(x||B||F||ae)&&!I().hasAttribute("disabled")&&(D("onShow",[f],!1),f.props.onShow(f)!==!1)){if(f.state.isVisible=!0,C()&&(P.style.visibility="visible"),G(),ge(),f.state.isMounted||(P.style.transition="none"),C()){var ze=V(),lt=ze.box,wr=ze.content;xs([lt,wr],0)}m=s(function(){var ir;if(!(!f.state.isVisible||u)){if(u=!0,P.offsetHeight,P.style.transition=f.props.moveTransition,C()&&f.props.animation){var ko=V(),Kr=ko.box,Tr=ko.content;xs([Kr,Tr],ne),Fu([Kr,Tr],"visible")}me(),He(),Du(ws,f),(ir=f.popperInstance)==null||ir.forceUpdate(),D("onMount",[f]),f.props.animation&&C()&&Ge(ne,function(){f.state.isShown=!0,D("onShown",[f])})}},"onFirstUpdate"),We()}}s(X,"show");function ue(){var x=!f.state.isVisible,B=f.state.isDestroyed,F=!f.state.isEnabled,ae=ys(f.props.duration,1,or.duration);if(!(x||B||F)&&(D("onHide",[f],!1),f.props.onHide(f)!==!1)){if(f.state.isVisible=!1,f.state.isShown=!1,u=!1,a=!1,C()&&(P.style.visibility="hidden"),De(),Ve(),G(!0),C()){var ne=V(),ze=ne.box,lt=ne.content;f.props.animation&&(xs([ze,lt],ae),Fu([ze,lt],"hidden"))}me(),He(),f.props.animation?C()&&mt(ae,f.unmount):f.unmount()}}s(ue,"hide");function Q(x){H().addEventListener("mousemove",b),Du($i,b),b(x)}s(Q,"hideWithInteractivity");function he(){f.state.isVisible&&f.hide(),f.state.isMounted&&(St(),Je().forEach(function(x){x._tippy.unmount()}),P.parentNode&&P.parentNode.removeChild(P),ws=ws.filter(function(x){return x!==f}),f.state.isMounted=!1,D("onHidden",[f]))}s(he,"unmount");function ce(){f.state.isDestroyed||(f.clearDelayTimeouts(),f.unmount(),ct(),delete e._tippy,f.state.isDestroyed=!0,D("onDestroy",[f]))}s(ce,"destroy")}s(b5,"createTippy");function On(e,t){t===void 0&&(t={});var r=or.plugins.concat(t.plugins||[]);s5();var o=Object.assign({},t,{plugins:r}),n=r5(e);if(0)var i,a;var c=n.reduce(function(l,u){var d=u&&b5(u,o);return d&&l.push(d),l},[]);return Zi(e)?c[0]:c}s(On,"tippy");On.defaultProps=or;On.setDefaultProps=m5;On.currentInput=vr;var KM=Object.assign({},An,{effect:s(function(t){var r=t.state,o={popper:{position:r.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};Object.assign(r.elements.popper.style,o.popper),r.styles=o,r.elements.arrow&&Object.assign(r.elements.arrow.style,o.arrow)},"effect")});On.setDefaultProps({render:Xu});var Yu=On;import{forwardRef as v5}from"react";import{jsx as y5}from"react/jsx-runtime";var Ms=v5(({children:e,className:t,withShadow:r=!0,withBorder:o=!0,...n},i)=>{let a=E("courier-bg-white courier-rounded-lg dark:courier-bg-black",r?"courier-shadow-sm":"",o?"courier-border courier-border-border dark:courier-border-neutral-800":"",t);return y5("div",{className:a,...n,ref:i,children:e})});Ms.displayName="Surface";import{Extension as k5,Node as P5}from"@tiptap/core";import{ReactNodeViewRenderer as M5}from"@tiptap/react";import{Suggestion as N5}from"@tiptap/suggestion";import{ReactRenderer as x5}from"@tiptap/react";var nr={items:({query:e,editor:t})=>{var n,i;let r=((i=(n=t.extensionManager.extensions.find(a=>a.name==="variableSuggestion"))==null?void 0:n.options)==null?void 0:i.variables)||{};return Yt(r).filter(a=>a.toLowerCase().includes(e.toLowerCase()))},char:"{{",allowSpaces:!1,allowedPrefixes:null,startOfLine:!1,decorationTag:"span",decorationClass:"variable-suggestion",command:({editor:e,range:t,props:r})=>{e.chain().focus().deleteRange(t).insertContent([{type:"variable",attrs:{id:r}},{type:"text",text:" "}]).run()},render:()=>{let e=null,t=null,r=null,o=s((i,a)=>{e==null||e.updateProps({...i,selected:a})},"updateComponent"),n=s(i=>{var l,u;if(!r)return!1;let c=((l=nr.items)==null?void 0:l.call(nr,{query:(e==null?void 0:e.props).query||"",editor:(e==null?void 0:e.props).editor}))[i];return c?((u=nr.command)==null||u.call(nr,{editor:r.editor,range:r.range,props:c}),!0):!1},"selectItem");return{onStart:i=>{r=i,e=new x5(Ln,{props:{...i,selected:0},editor:i.editor}),i.clientRect&&(t=Yu(i.editor.options.element,{getReferenceClientRect:()=>{var a;return((a=i.clientRect)==null?void 0:a.call(i))||new DOMRect},appendTo:()=>i.editor.options.element,content:e==null?void 0:e.element,showOnCreate:!0,interactive:!0,trigger:"manual",placement:"bottom-start",theme:"variable"}),e!=null&&e.element&&e.element.focus())},onUpdate(i){r=i,e==null||e.updateProps({...i,selected:e.props.selected}),i.clientRect&&(t==null||t.setProps({getReferenceClientRect:()=>{var a;return((a=i.clientRect)==null?void 0:a.call(i))||new DOMRect}}))},onKeyDown(i){var l;if(!e||!r)return!1;let a=(l=nr.items)==null?void 0:l.call(nr,{query:e.props.query||"",editor:e.props.editor}),c=e.props.selected;if(i.event.key==="ArrowUp"){let u=(c-1+a.length)%a.length;return o(r,u),!0}if(i.event.key==="ArrowDown"){let u=(c+1)%a.length;return o(r,u),!0}return i.event.key==="Enter"?(i.event.preventDefault(),n(c)):i.event.key==="Escape"?(r.editor.chain().focus().deleteRange(r.range).run(),!0):!1},onExit(){t==null||t.destroy(),e==null||e.destroy(),r=null}}}};import{NodeViewWrapper as C5}from"@tiptap/react";import{Braces as w5}from"lucide-react";import{jsx as Qu,jsxs as T5}from"react/jsx-runtime";var ed=s(({node:e})=>Qu(C5,{className:"courier-inline-block",children:T5("span",{className:"courier-group courier-text-sm courier-variable-node courier-bg-gray-200 courier-pl-2 courier-pr-3 courier-py-[1px] courier-rounded courier-border courier-border-gray-400 hover:courier-bg-[#3B82F6] hover:courier-border-[#3B82F6] hover:courier-text-[#ffffff] courier-flex courier-items-center courier-gap-1",children:[Qu(w5,{size:16,className:"courier-text-gray-500 group-hover:courier-stroke-primary"}),e.attrs.id]})}),"VariableView");var Ns=P5.create({name:"variable",group:"inline",inline:!0,selectable:!1,atom:!0,addAttributes(){return{id:{default:null,parseHTML:e=>e.getAttribute("data-id"),renderHTML:e=>({"data-id":e.id})}}},parseHTML(){return[{tag:"span[data-variable]"}]},renderHTML({HTMLAttributes:e}){return["span",{"data-variable":!0,...e},0]},addNodeView(){return M5(ed)}}),Is=k5.create({name:"variableSuggestion",addOptions(){return{HTMLAttributes:{},suggestion:{char:"{{",...nr}}},addProseMirrorPlugins(){return[N5({editor:this.editor,...this.options.suggestion})]}});var yr=s(e=>[Xa,sd.configure({document:!1,dropcursor:!1,gapcursor:!1,heading:!1,horizontalRule:!1,paragraph:!1,blockquote:!1,hardBreak:!1}),ns.configure({setSelectedNode:e==null?void 0:e.setSelectedNode}),rd.configure({keepMarks:!0,HTMLAttributes:{class:"my-line-break"}}),tu,Ua,os,Ga,Ya.configure({levels:[1,2,3,4,5,6]}),fi,td,es.configure({openOnClick:!1,defaultProtocol:"https",HTMLAttributes:{class:"link"}}),ad,bi.configure(),Ei.configure({allowedMimeTypes:["image/png","image/jpeg","image/gif","image/webp"],onDrop:(t,r,o)=>{r.forEach(async n=>{let i=await Pa.uploadImage(n);t.chain().setImageBlockAt({pos:o,src:i}).focus().run()})},onPaste:(t,r)=>{r.forEach(async o=>{let n=await Pa.uploadImage(o);return t.chain().setImageBlockAt({pos:t.state.selection.anchor,src:n}).focus().run()})}}),nd.extend({addKeyboardShortcuts(){return{}}}).configure({types:["paragraph","heading"]}),id,od.configure({includeChildren:!0,showOnlyCurrent:!0,placeholder:"",emptyEditorClass:"is-editor-empty",emptyNodeClass:"is-empty",showOnlyWhenEditable:!0}),Ma.configure({width:2,class:"ProseMirror-dropcursor courier-border-black"}),Is.configure({variables:e==null?void 0:e.variables}),Ns],"ExtensionKit");import{BubbleMenu as ih,useCurrentEditor as ah}from"@tiptap/react";import{useAtomValue as I5}from"jotai";import{useCallback as cd,useEffect as L5,useState as E5}from"react";var qi=s(e=>{let t=I5(ve),[r,o]=E5({isBold:!1,isItalic:!1,isUnderline:!1,isStrike:!1,isAlignLeft:!1,isAlignCenter:!1,isAlignRight:!1,isAlignJustify:!1,isQuote:!1,isLink:!1}),n=cd(()=>{if(e){if((t==null?void 0:t.type.name)==="button"){o({isBold:t.attrs.fontWeight==="bold",isItalic:t.attrs.fontStyle==="italic",isUnderline:t.attrs.isUnderline,isStrike:t.attrs.isStrike,isAlignLeft:!1,isAlignCenter:!1,isAlignRight:!1,isAlignJustify:!1,isQuote:!1,isLink:!1});return}o({isBold:e.isActive("bold"),isItalic:e.isActive("italic"),isUnderline:e.isActive("underline"),isStrike:e.isActive("strike"),isAlignLeft:e.isActive({textAlign:"left"}),isAlignCenter:e.isActive({textAlign:"center"}),isAlignRight:e.isActive({textAlign:"right"}),isAlignJustify:e.isActive({textAlign:"justify"}),isQuote:e.isActive("blockquote"),isLink:e.isActive("link")})}},[e,t]);return L5(()=>{if(e)return n(),e.on("selectionUpdate",n),e.on("transaction",n),()=>{e.off("selectionUpdate",n),e.off("transaction",n)}},[e,n]),{shouldShow:cd(({editor:a})=>{let c=["paragraph","heading","blockquote"],{$head:l}=a.state.selection,u=l.node();if(c.includes(u.type.name)&&u.attrs.isSelected)return!0;for(let d=1;d<=l.depth;d++){let p=l.node(d);if(p.type.name==="blockquote"&&p.attrs.isSelected)return!0}return!1},[]),...r}},"useTextmenuStates");import{useAtomValue as Es}from"jotai";import{AlignCenter as z5,AlignJustify as $5,AlignLeft as U5,AlignRight as Z5,Bold as q5,Braces as _5,Italic as j5,Link as G5,Quote as K5,Strikethrough as J5,Underline as X5}from"lucide-react";import{Fragment as Y5,memo as vd,useMemo as bd,useRef as Q5,useState as eh,useEffect as th}from"react";import{forwardRef as Ls}from"react";import A5 from"@tippyjs/react";import{useCallback as S5}from"react";import{Fragment as H5,jsx as xr,jsxs as B5}from"react/jsx-runtime";var ld=typeof window!="undefined"?navigator.platform.toUpperCase().indexOf("MAC")>=0:!1,R5=s(({children:e})=>{let t="courier-inline-flex courier-items-center courier-justify-center courier-w-5 courier-h-5 courier-p-1 courier-text-[0.625rem] courier-rounded courier-font-semibold courier-leading-none courier-border courier-border-border courier-text-neutral-500 courier-border-b-2";return e==="Mod"?xr("kbd",{className:t,children:ld?"\u2318":"Ctrl"}):e==="Shift"?xr("kbd",{className:t,children:"\u21E7"}):e==="Alt"?xr("kbd",{className:t,children:ld?"\u2325":"Alt"}):xr("kbd",{className:t,children:e})},"ShortcutKey"),ud=s(({children:e,enabled:t=!0,title:r,shortcut:o,tippyOptions:n={}})=>{let i=S5(a=>B5("span",{className:"courier-flex courier-items-center courier-gap-2 courier-px-2.5 courier-py-1 courier-bg-white courier-border courier-border-neutral-100 courier-rounded-lg courier-shadow-sm courier-z-[999]",tabIndex:-1,"data-placement":a["data-placement"],"data-reference-hidden":a["data-reference-hidden"],"data-escaped":a["data-escaped"],children:[r&&xr("span",{className:"courier-text-xs courier-font-medium courier-text-neutral-500",children:r}),o&&xr("span",{className:"courier-flex courier-items-center courier-gap-0.5",children:o.map(c=>xr(R5,{children:c},c))})]}),[o,r]);return t?xr(A5,{...n,delay:500,offset:[0,8],touch:!1,zIndex:99999,appendTo:document.body,trigger:"mouseenter focus",showOnCreate:!1,render:i,animation:!1,children:xr("span",{children:e})}):xr(H5,{children:e})},"Tooltip");import{jsx as _i}from"react/jsx-runtime";var dd=Ls(({shouldShowContent:e=!0,children:t,isVertical:r=!1,className:o,...n},i)=>{let a=E("courier-text-foreground courier-inline-flex courier-h-full courier-leading-none courier-gap-0.5",r?"courier-flex-col courier-p-2":"courier-flex-row courier-p-0.5 courier-items-center",o);return e&&_i(Ms,{className:a,...n,ref:i,children:t})});dd.displayName="Toolbar";var pd=Ls(({horizontal:e,className:t,...r},o)=>{let n=E("courier-bg-neutral-200 dark:courier-bg-neutral-800",e?"courier-w-full courier-min-w-[1.5rem] courier-h-[1px] courier-my-1 first:courier-mt-0 last:courier-mt-0":"courier-h-full courier-min-h-[1.5rem] courier-w-[1px] courier-mx-1 first:courier-ml-0 last:courier-mr-0",t);return _i("div",{className:n,ref:o,...r})});pd.displayName="Toolbar.Divider";var md=Ls(({children:e,buttonSize:t="icon",variant:r="ghost",className:o,tooltip:n,tooltipShortcut:i,...a},c)=>{let l=E("courier-gap-1 courier-min-w-[2rem] courier-w-auto",o),u=_i(Ce,{className:l,variant:r,buttonSize:t,ref:c,...a,children:e});return n?_i(ud,{title:n,shortcut:i,children:u}):u});md.displayName="ToolbarButton";var ji={Wrapper:dd,Divider:pd,Button:md};import{ChevronDown as D5}from"lucide-react";import{useMemo as V5}from"react";import{Fragment as O5,jsx as qr,jsxs as fd}from"react/jsx-runtime";var F5=s(e=>e.type==="option","isOption"),gd=s(({options:e,containerRef:t})=>{let r=V5(()=>e.find(o=>o.type==="option"&&o.isActive()),[e]);return fd(ei,{children:[qr(ti,{asChild:!0,children:fd(Ce,{variant:"ghost",className:"courier-flex courier-items-center courier-justify-center courier-font-normal !courier-py-[5px]",children:[(r==null?void 0:r.label)||"Normal text",qr(D5,{className:"courier-w-3 courier-h-3"})]})}),qr(un,{portalProps:{container:(t==null?void 0:t.current)||void 0},children:e.map(o=>{if(F5(o))return qr(dn,{onClick:o.onClick,className:o.isActive()?"courier-bg-accent courier-text-foreground":"",children:o.id.startsWith("heading")?qr(O5,{children:o.id==="heading1"?qr("h1",{className:"courier-text-2xl courier-font-bold",children:o.label}):o.id==="heading2"?qr("h2",{className:"courier-text-xl courier-font-bold",children:o.label}):o.id==="heading3"?qr("h3",{className:"courier-text-lg courier-font-bold",children:o.label}):o.label}):o.label},o.id)})})]})},"ContentTypePicker");import{useEditorState as W5}from"@tiptap/react";var hd=s(e=>W5({editor:e,selector:t=>[{label:"Normal text",onClick:()=>{t.editor.chain().focus().setNode("paragraph").run()},id:"paragraph",disabled:()=>!t.editor.can().setParagraph(),isActive:()=>t.editor.isActive("paragraph")&&!t.editor.isActive("heading"),type:"option"},{label:"Heading 1",onClick:()=>{t.editor.chain().focus().setNode("heading",{level:1}).run()},id:"heading1",disabled:()=>!t.editor.can().setHeading({level:1}),isActive:()=>t.editor.isActive("heading",{level:1}),type:"option"},{label:"Heading 2",onClick:()=>{t.editor.chain().focus().setNode("heading",{level:2}).run()},id:"heading2",disabled:()=>!t.editor.can().setHeading({level:2}),isActive:()=>t.editor.isActive("heading",{level:2}),type:"option"},{label:"Heading 3",onClick:()=>{t.editor.chain().focus().setNode("heading",{level:3}).run()},id:"heading3",disabled:()=>!t.editor.can().setHeading({level:3}),isActive:()=>t.editor.isActive("heading",{level:3}),type:"option"}]}),"useTextmenuContentTypes");import{jsx as it,jsxs as nh}from"react/jsx-runtime";var rh=vd(ji.Button),oh=vd(gd),yd=s(({editor:e,config:t})=>{var A;let r=Pi(e),o=qi(e),n=hd(e),i=Q5(null),a=Es(pi),c=Es(ve),l=c==null?void 0:c.type.name,u=Es(hl),[d,p]=eh(()=>{let{selection:N}=e.state;return{from:N.from,to:N.to,empty:N.empty}});th(()=>{let N=s(()=>{let{selection:y}=e.state;p({from:y.from,to:y.to,empty:y.empty})},"updateSelection");return e.on("selectionUpdate",N),e.on("transaction",N),()=>{e.off("selectionUpdate",N),e.off("transaction",N)}},[e]);let m=bd(()=>!d.empty&&d.from!==d.to,[d]),h=bd(()=>t||u(l||"",m),[t,u,l,m]),b=s(()=>{let{selection:N}=e.state;if(!(N.empty&&!o.isLink&&!e.can().setLink({href:""})))if(o.isLink){let y=e.state.tr.setMeta("showLinkForm",{from:N.from,to:N.to});e.view.dispatch(y)}else{let y=e.state.tr.setMeta("showLinkForm",{from:N.from,to:N.to});e.view.dispatch(y)}},"handleLinkToggle"),g=s(()=>{if(a.ref){let C=a.ref,I=C.value,H=a.caretPosition||C.selectionStart||0,V=I.substring(0,H),_=I.substring(H),G=`${V}{{${_}`,D=H+2;C.focus();let me=new Event("input",{bubbles:!0,cancelable:!0});if(Object.defineProperty(me,"target",{writable:!1,value:{...C,value:G}}),C.value=G,C.dispatchEvent(me),C.setSelectionRange(D,D),C.getBoundingClientRect()){let De=G.slice(0,D),re=document.createElement("span");re.style.font=window.getComputedStyle(C).font,re.style.whiteSpace="pre-wrap",re.textContent=De,document.body.appendChild(re);let xe=re.offsetWidth;document.body.removeChild(re);let Le=parseInt(window.getComputedStyle(C).lineHeight),ge=De.split(`
183
- `).length-1,Ve=new CustomEvent("showVariableSuggestions",{detail:{cursorPosition:{left:Math.min(xe%C.offsetWidth,C.offsetWidth-200),top:ge*Le+30}},bubbles:!0});C.dispatchEvent(Ve)}return}let{state:N,dispatch:y}=e.view,{tr:M}=N;M.insertText("{{"),y(M),e.commands.focus();let S=e.state.tr.setMeta("showVariableSuggestions",{from:e.state.selection.from,to:e.state.selection.to});e.view.dispatch(S)},"handleVariableClick"),v=s((N,y,M,S,C,I,H)=>{let V=h[N];return!V||V.state==="hidden"?null:it(rh,{tooltip:M,tooltipShortcut:I,onClick:S,active:C,disabled:V.state==="disabled",...H,children:y},N)},"renderButton"),k=s((N,y)=>{let M=N.filter(S=>!!S);return M.length>0?it("div",{className:"courier-flex courier-items-center courier-gap-0.5",children:M},y):null},"renderGroup"),R=k([((A=h.contentType)==null?void 0:A.state)==="enabled"&&it(oh,{options:n,containerRef:i},"content-type")],"content-type-group"),T=k([v("bold",it(q5,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Bold",r.onBold,o.isBold,["Mod","B"]),v("italic",it(j5,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Italic",r.onItalic,o.isItalic,["Mod","I"]),v("underline",it(X5,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Underline",r.onUnderline,o.isUnderline,["Mod","U"]),v("strike",it(J5,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Strikethrough",r.onStrike,o.isStrike,["Mod","Shift","S"])],"text-style-group"),f=k([v("alignLeft",it(U5,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Align left",r.onAlignLeft,o.isAlignLeft,["Shift","Mod","L"]),v("alignCenter",it(z5,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Align center",r.onAlignCenter,o.isAlignCenter,["Shift","Mod","E"]),v("alignRight",it(Z5,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Align right",r.onAlignRight,o.isAlignRight,["Shift","Mod","R"]),v("alignJustify",it($5,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Justify",r.onAlignJustify,o.isAlignJustify,["Shift","Mod","J"])],"alignment-group"),w=k([v("quote",it(K5,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Quote",r.onQuote,o.isQuote,["Mod","Shift","B"])],"block-style-group"),P=k([v("link",it(G5,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Link",b,o.isLink,["Mod","K"]),v("variable",it(_5,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Variable",g,!1,["Mod","V"],{"data-variable-button":"true"})],"insert-group");return it(ji.Wrapper,{ref:i,className:"courier-border-b rounded-b-none rounded-t-sm !courier-shadow-md courier-justify-center courier-rounded-lg",children:[R,T,f,w,P].filter(Boolean).map((N,y)=>nh(Y5,{children:[N,y<[R,T,f,w,P].filter(Boolean).length-1&&it(ji.Divider,{})]},`item-${y}`))})},"TextMenu");import{jsx as xd}from"react/jsx-runtime";var Cr=s(({config:e})=>{let{editor:t}=ah(),r=qi(t);return t?xd(ih,{editor:t,tippyOptions:{appendTo:o=>{var n;return(n=o.closest(".bubble-text-menu-container"))!=null?n:o},getReferenceClientRect:()=>{var a,c,l,u;let o=(l=(c=(a=t==null?void 0:t.state)==null?void 0:a.selection)==null?void 0:c.from)!=null?l:0,n=(u=t==null?void 0:t.view)==null?void 0:u.domAtPos(o),i=(n==null?void 0:n.node.parentNode).getBoundingClientRect();return{width:i==null?void 0:i.width,height:i==null?void 0:i.height,left:(i==null?void 0:i.left)-12,right:i==null?void 0:i.right,top:i==null?void 0:i.top,bottom:i==null?void 0:i.bottom,x:i==null?void 0:i.left,y:i==null?void 0:i.top,toJSON:()=>({})}},placement:"top",offset:[0,12]},shouldShow:r.shouldShow,updateDelay:100,children:t&&xd(yd,{editor:t,config:e})}):null},"BubbleTextMenu");import{TextSelection as sh}from"@tiptap/pm/state";import{EditorProvider as ch,Extension as lh,useCurrentEditor as uh}from"@tiptap/react";import{useSetAtom as wd}from"jotai";import{memo as dh,useEffect as Td,useMemo as Cd,useRef as ph}from"react";import{jsx as zt,jsxs as As}from"react/jsx-runtime";var mh=s(()=>{let{editor:e}=uh(),t=wd(Bt);return Td(()=>{e&&(t(e),setTimeout(()=>{e.commands.blur()},1))},[e,t]),null},"EditorContent"),fh=s(({variables:e,facebookLink:t,linkedinLink:r,instagramLink:o,mediumLink:n,xLink:i,readOnly:a=!1,value:c,onUpdate:l})=>{let u=ph(!1),d=wd(ve),p=Cd(()=>({urls:{unsubscribe:!0,preferences:!0},...e}),[e]),m=lh.create({name:"escapeHandler",addKeyboardShortcuts(){return{Escape:({editor:b})=>{let{state:g,dispatch:v}=b.view;return v(g.tr.setSelection(sh.create(g.doc,g.selection.$anchor.pos))),d&&d(null),!1}}}});Td(()=>(u.current=!0,()=>{u.current=!1}),[]);let h=Cd(()=>[...yr({variables:p,setSelectedNode:d}),m].filter(b=>b!==void 0),[m,p,d]);return As("div",{className:"courier-flex courier-flex-row courier-gap-6 courier-justify-between courier-items-start",children:[As(ch,{content:xc(c!=null?c:""),extensions:h,editable:!a,autofocus:!a,onUpdate:l,editorContainerProps:{className:E("courier-py-2 courier-flex-grow",a&&"courier-brand-editor-readonly")},immediatelyRender:!1,children:[zt(mh,{}),zt(Cr,{})]}),As("div",{className:"courier-flex courier-justify-end courier-items-center courier-gap-2 courier-mt-3",children:[t&&zt("a",{href:t,target:"_blank",rel:"noopener noreferrer",children:zt(vn,{className:"courier-w-5 courier-h-5"})}),r&&zt("a",{href:r,target:"_blank",rel:"noopener noreferrer",children:zt(xn,{className:"courier-w-5 courier-h-5"})}),o&&zt("a",{href:o,target:"_blank",rel:"noopener noreferrer",children:zt(yn,{className:"courier-w-5 courier-h-5"})}),n&&zt("a",{href:n,target:"_blank",rel:"noopener noreferrer",children:zt(Cn,{className:"courier-w-5 courier-h-5"})}),i&&zt("a",{href:i,target:"_blank",rel:"noopener noreferrer",children:zt(kn,{className:"courier-w-5 courier-h-5"})})]})]})},"BrandFooterComponent"),Gi=dh(fh);var Ki=s((e,t)=>new Promise(r=>{let o=new FileReader;o.onload=n=>{var a;let i=new Image;i.onload=()=>{var p;let c,l;i.width>i.height?(c=Math.min(t,i.width),l=Math.round(i.height/i.width*c)):(l=Math.min(t,i.height),c=Math.round(i.width/i.height*l));let u=document.createElement("canvas");u.width=c,u.height=l;let d=u.getContext("2d");if(d){d.imageSmoothingEnabled=!0,d.imageSmoothingQuality="high",d.drawImage(i,0,0,c,l);let m=.8,h=u.toDataURL(e.type||"image/jpeg",m),b=0,g=5;for(;h.length>512e3&&b<g;)b++,m-=.1,m<.3&&(m=.3),h=u.toDataURL(e.type||"image/jpeg",m);r({dataUrl:h,width:c,height:l})}else r({dataUrl:(p=n.target)==null?void 0:p.result,width:i.width,height:i.height})},i.src=(a=n.target)==null?void 0:a.result},o.readAsDataURL(e)}),"resizeImage");import{useCallback as vo,useRef as gh,useState as hh}from"react";import{jsx as Ss,jsxs as bh}from"react/jsx-runtime";var kd=s(({onFileSelect:e})=>{let[t,r]=hh(!1),o=gh(null),n=vo(p=>{p.preventDefault(),p.stopPropagation(),p.dataTransfer.types.includes("Files")&&Array.from(p.dataTransfer.items).some(b=>b.type.startsWith("image/"))&&(r(!0),p.dataTransfer.dropEffect="copy")},[]),i=vo(p=>{p.preventDefault(),p.stopPropagation(),r(!1)},[]),a=vo(p=>{p.preventDefault(),p.stopPropagation(),p.dataTransfer.types.includes("Files")&&Array.from(p.dataTransfer.items).some(b=>b.type.startsWith("image/"))&&r(!0)},[]),c=vo(async p=>{try{let{dataUrl:m}=await Ki(p,800);e==null||e(m),o.current&&(o.current.value="")}catch(m){console.error("Error processing image:",m),o.current&&(o.current.value="")}},[e]),l=vo(p=>{p.preventDefault(),p.stopPropagation(),r(!1);let h=Array.from(p.dataTransfer.files).find(b=>b.type.startsWith("image/"));h&&c(h)},[c]),u=vo(p=>{var h;let m=(h=p.target.files)==null?void 0:h[0];m&&c(m)},[c]),d=vo(p=>{var m;p.preventDefault(),p.stopPropagation(),(m=o.current)==null||m.click()},[]);return bh("div",{className:E("courier-bg-gray-100 courier-rounded-md courier-flex courier-flex-row courier-items-center courier-cursor-pointer courier-transition-colors courier-py-4 courier-px-6 courier-gap-1 !courier-w-fit",t&&"courier-border-primary courier-bg-gray-50"),onDragOver:n,onDragEnter:a,onDragLeave:i,onDrop:l,style:{pointerEvents:"all"},children:[Ss("span",{className:"courier-text-sm courier-pointer-events-none",children:"Drag and drop logo, or"}),Ss("button",{className:"courier-underline courier-font-medium courier-text-sm",onClick:d,type:"button",children:"Browse"}),Ss("input",{ref:o,type:"file",accept:"image/*",className:"courier-hidden",onChange:u},"logo-input")]})},"LogoUploader");import{zodResolver as vh}from"@hookform/resolvers/zod";import{useAtom as yh,useAtomValue as xh,useSetAtom as Ch}from"jotai";import{ArrowUp as wh}from"lucide-react";import{memo as Th,useCallback as Pd,useEffect as kh,useMemo as Md,useRef as Ph}from"react";import{useForm as Mh}from"react-hook-form";import{jsx as U,jsxs as Ct}from"react/jsx-runtime";var Nd=s(({isActive:e,onClick:t,value:r})=>U("div",{className:E("courier-w-full courier-h-16 courier-rounded-md courier-border-border courier-border courier-overflow-hidden courier-bg-secondary courier-cursor-pointer",e&&"!courier-border-[#3B82F6]"),onClick:t,children:U("div",{className:"courier-h-full courier-m-2 courier-rounded-md courier-border-border courier-border courier-shadow-md courier-bg-background courier-overflow-hidden",children:r==="border"&&U("div",{className:"courier-w-full courier-bg-[#000000] courier-h-1"})})}),"HeaderStyle"),Nh=s(()=>{let[e,t]=yh(Or),r=Ch(jt),o=xh(Bt),n=Ph(null),i=Mh({resolver:vh(Uc),defaultValues:{...ut,...e},mode:"onChange"});kh(()=>{e&&i.reset(e)},[e,i]);let a=Pd(()=>{t(i.getValues())},[i,t]),c=Pd(d=>{var p;if(o){if(d){let h={type:"doc",content:[...o.getJSON().content||[],{type:"paragraph",content:[{type:"text",text:"Manage Notification Preferences",marks:[{type:"link",attrs:{href:"{{urls.preferences}}"}}]}]}]};o.chain().focus().setContent(h).run()}else{let h=((p=o.getJSON().content)==null?void 0:p.filter(b=>{var v;return b.type!=="paragraph"?!0:!((v=b.content)==null?void 0:v.some(k=>{var R;return k.type==="text"&&((R=k.marks)==null?void 0:R.some(T=>{var f;return T.type==="link"&&((f=T.attrs)==null?void 0:f.href)==="{{urls.preferences}}"}))}))}))||[];o.chain().focus().setContent({type:"doc",content:h}).run()}r(si(o.getJSON()))}},[o,r]),l=Md(()=>{var d,p;return((p=(d=o==null?void 0:o.extensionManager.extensions.find(m=>m.name==="variableSuggestion"))==null?void 0:d.options)==null?void 0:p.variables)||{}},[o]),u=Md(()=>Yt(l),[l]);return U(ot,{...i,children:U("form",{onChange:()=>a(),children:Ct("div",{className:"courier-pb-6",children:[U("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Header style"}),U(z,{control:i.control,name:"headerStyle",render:({field:d})=>Ct(O,{className:"courier-mb-4",children:[U(W,{children:Ct("div",{className:"courier-w-full courier-flex courier-flex-row courier-gap-3",children:[U(Nd,{isActive:d.value==="plain",onClick:()=>{d.onChange("plain"),t({...i.getValues(),headerStyle:"plain"})},value:"plain"}),U(Nd,{isActive:d.value==="border",onClick:()=>{d.onChange("border"),t({...i.getValues(),headerStyle:"border"})},value:"border"})]})}),U(Z,{})]})}),U(se,{className:"courier-mb-4"}),U("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Logo"}),Ct("div",{className:"courier-flex courier-flex-row courier-gap-3 courier-mb-3",children:[i.getValues().logo?U(Ce,{onClick:()=>{let d=i.getValues();d.logo="",i.reset(d),t({...d}),n.current&&(n.current.value=""),a()},className:"courier-w-full",variant:"outline",type:"button",children:"Remove logo"}):Ct(Ce,{onClick:d=>{d.preventDefault(),n.current&&(n.current.value="",n.current.click())},className:"courier-w-full",variant:"outline",type:"button",children:[U(wh,{strokeWidth:1.25,className:"courier-w-4 courier-h-4 courier-mr-2 courier-text-foreground"}),"Upload logo"]}),U("input",{ref:n,type:"file",accept:"image/*",className:"courier-hidden",onChange:async d=>{var m;let p=(m=d.target.files)==null?void 0:m[0];if(p)try{let{dataUrl:h}=await Ki(p,800),b=i.getValues();b.logo=h,i.reset(b),t({...b})}catch(h){console.error("Error processing image:",h)}n.current&&(n.current.value="")}})]}),U(z,{control:i.control,name:"link",render:({field:d})=>Ct(O,{className:"courier-mb-3",children:[U(W,{children:U(Mt,{as:"Textarea",placeholder:"Link",...d,variables:u,onChange:p=>{d.onChange(p),a()}})}),U(Z,{})]})}),U(se,{className:"courier-mb-4"}),U("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Brand color"}),U(z,{control:i.control,name:"brandColor",render:({field:d})=>Ct(O,{className:"courier-mb-4",children:[U(W,{children:U($e,{...d,defaultValue:d.value,onChange:p=>{d.onChange(p),a()}})}),U(Z,{})]})}),U(se,{className:"courier-mb-4"}),U("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Footer links"}),Ct("div",{className:"courier-flex courier-flex-col courier-gap-3 courier-mb-3",children:[U(z,{control:i.control,name:"facebookLink",render:({field:d})=>Ct(O,{children:[U(W,{children:U(te,{startAdornment:U(vn,{}),placeholder:"facebook.com/username",...d,autoFocus:!0})}),U(Z,{})]})}),U(z,{control:i.control,name:"linkedinLink",render:({field:d})=>Ct(O,{children:[U(W,{children:U(te,{startAdornment:U(xn,{}),placeholder:"linkedin.com/username",...d})}),U(Z,{})]})}),U(z,{control:i.control,name:"instagramLink",render:({field:d})=>Ct(O,{children:[U(W,{children:U(te,{startAdornment:U(yn,{}),placeholder:"instagram.com/username",...d})}),U(Z,{})]})}),U(z,{control:i.control,name:"mediumLink",render:({field:d})=>Ct(O,{children:[U(W,{children:U(te,{startAdornment:U(Cn,{}),placeholder:"medium.com/username",...d})}),U(Z,{})]})}),U(z,{control:i.control,name:"xLink",render:({field:d})=>Ct(O,{children:[U(W,{children:U(te,{startAdornment:U(kn,{}),placeholder:"x.com/username",...d})}),U(Z,{})]})})]}),U(se,{className:"courier-mb-4"}),U("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Footer actions"}),U(z,{control:i.control,name:"isPreferences",render:({field:d})=>Ct(O,{className:"courier-flex courier-flex-row courier-items-center courier-gap-2 courier-mb-4",children:[U(W,{children:U(Lo,{checked:d.value,onCheckedChange:p=>{i.setValue("isPreferences",p),d.onChange(p),c(p);let m={...i.getValues(),isPreferences:p};t(m)}})}),U(Ht,{className:"!courier-m-0",children:"Manage Preferences"}),U(Z,{})]})})]})})})},"SideBarComponent"),Id=Th(Nh);import{Fragment as Sh,jsx as at,jsxs as Jo}from"react/jsx-runtime";var Ah=Lh(({hidePublish:e=!1,templateEditor:t,variables:r},o)=>{var f,w,P,A,N,y,M,S;let n=Ih(Mo),{publishBrand:i}=ln(),a=Ko(ke),c=Ko(Rt),l=Ko(rt),u=Ko(be),d=Ko(le),p=Ko(Bt),[m,h]=Ld(Or),[b,g]=Ld(jt),v=Ji(()=>{i()},[i]),k=Ji(({editor:C})=>{g(si(C.getJSON()))},[g]),R=Ji(C=>{h(I=>I?{...I,logo:C}:{...ut,logo:C})},[h]),T=Ji(()=>{n("template")},[n]);return Jo(Sh,{children:[at("div",{className:"courier-z-30 courier-w-full courier-h-12",children:Jo(Zc,{children:[at("div",{className:"courier-text-sm courier-font-medium",children:"Brand theme"}),Jo("div",{className:"courier-flex courier-gap-2 courier-items-center",children:[l!==null&&at(ci,{isLoading:!!u,isSaving:!!l,isError:!!d}),t&&at(Ce,{variant:"outline",buttonSize:"small",onClick:T,disabled:c===!0||l===!0,children:"Back"}),!e&&u!==null&&at(Ce,{variant:"primary",buttonSize:"small",disabled:!((w=(f=a==null?void 0:a.data)==null?void 0:f.tenant)!=null&&w.brand)||c===!0||l!==!1,onClick:v,children:c?"Publishing...":"Publish changes"})]})]})}),Jo("div",{className:"courier-flex courier-flex-1 courier-flex-row courier-overflow-hidden",children:[at("div",{className:"courier-flex courier-flex-col courier-flex-1",children:Jo("div",{className:"courier-editor-container",ref:o,children:[at("div",{className:"courier-mb-3 courier-max-w-2xl courier-self-center courier-w-full",children:"Header"}),Jo("div",{className:E("courier-editor-main courier-transition-all courier-duration-300 courier-ease-in-out courier-py-5 courier-px-9 courier-mb-8 courier-relative courier-overflow-hidden courier-flex courier-flex-col courier-items-start",(m==null?void 0:m.headerStyle)==="border"&&"courier-pt-6"),children:[(m==null?void 0:m.headerStyle)==="border"&&at("div",{className:"courier-absolute courier-top-0 courier-left-0 courier-right-0 courier-h-2",style:{backgroundColor:m.brandColor}}),m!=null&&m.logo?at("img",{src:m.logo,alt:"Brand logo",className:"courier-w-auto courier-max-w-36 courier-object-contain courier-cursor-default"}):at(kd,{onFileSelect:R})]}),at("div",{className:"courier-mb-3 courier-max-w-2xl courier-self-center courier-w-full",children:"Footer"}),at("div",{className:"courier-theme-editor-main courier-transition-all courier-duration-300 courier-ease-in-out courier-pt-3 courier-pb-5 courier-px-9",children:at(Gi,{value:b!=null?b:(S=(M=(y=(N=(A=(P=a==null?void 0:a.data)==null?void 0:P.tenant)==null?void 0:A.brand)==null?void 0:N.settings)==null?void 0:y.email)==null?void 0:M.footer)==null?void 0:S.markdown,variables:r,facebookLink:m==null?void 0:m.facebookLink,linkedinLink:m==null?void 0:m.linkedinLink,instagramLink:m==null?void 0:m.instagramLink,mediumLink:m==null?void 0:m.mediumLink,xLink:m==null?void 0:m.xLink,onUpdate:k})})]})}),at("div",{className:"courier-editor-sidebar courier-opacity-100 courier-translate-x-0 courier-w-64 courier-flex-shrink-0",children:at("div",{className:"courier-p-4 courier-h-full",children:p&&at(Id,{})})})]})]})}),Ed=Eh(Ah);import{jsx as Rd}from"react/jsx-runtime";var Fh=Bh(({hidePublish:e=!1,autoSaveDebounce:t=200,autoSave:r=!0,theme:o,...n},i)=>{let a=Bs(be),c=Sd(!0),l=Bs(Ee),{getTenant:u,saveBrand:d}=ln(),[p,m]=Ad(ke),h=Rh(jt),b=Bs(jt),[g,v]=Ad(Or),k=Sd(!1);Xo(()=>{var T,f;p&&l!==((f=(T=p==null?void 0:p.data)==null?void 0:T.tenant)==null?void 0:f.tenantId)&&(m(null),h(null),c.current=!1)},[p,l,m,h]);let{handleAutoSave:R}=Gn({onSave:async T=>{await d(T)},enabled:a!==null&&r&&b!==null,debounceMs:t,onError:Dh(()=>()=>Vh.error("Error saving theme"),[])});return Xo(()=>{!l||a||p&&a===!1||u()},[l,u,a,p]),Xo(()=>{b&&setTimeout(()=>{k.current=!0},500)},[b]),Xo(()=>{if(!k.current||!g)return;let T={colors:{primary:g==null?void 0:g.brandColor,secondary:g==null?void 0:g.textColor,tertiary:g==null?void 0:g.subtleColor},email:{header:{barColor:(g==null?void 0:g.headerStyle)==="border"?g==null?void 0:g.brandColor:"",logo:{href:g==null?void 0:g.link,image:g==null?void 0:g.logo}},footer:{markdown:b!=null?b:void 0,social:{facebook:{url:g==null?void 0:g.facebookLink},instagram:{url:g==null?void 0:g.instagramLink},linkedin:{url:g==null?void 0:g.linkedinLink},medium:{url:g==null?void 0:g.mediumLink},twitter:{url:g==null?void 0:g.xLink}}}}};R(T)},[g,b,R]),Xo(()=>{a||(c.current=!1)},[a]),Xo(()=>{var P,A,N,y,M,S,C,I,H,V,_,G,D,me,He,De,re,xe,Le,ge,Ve,mt,Ge,st,Me,ft,ct,wt,Lt,Et,Ke,Tt,At,St,We,Je,gt,j;let T=(N=(A=(P=p==null?void 0:p.data)==null?void 0:P.tenant)==null?void 0:A.brand)==null?void 0:N.settings,f=(C=b==null?void 0:b.split(`
184
- `))!=null?C:(S=(M=(y=T==null?void 0:T.email)==null?void 0:y.footer)==null?void 0:M.markdown)==null?void 0:S.split(`
185
- `),w=f==null?void 0:f.find(Te=>Te.includes("{{urls.preferences}}"));v({brandColor:((I=T==null?void 0:T.colors)==null?void 0:I.primary)||ut.brandColor,textColor:((H=T==null?void 0:T.colors)==null?void 0:H.secondary)||ut.textColor,subtleColor:((V=T==null?void 0:T.colors)==null?void 0:V.tertiary)||ut.subtleColor,headerStyle:(G=(_=T==null?void 0:T.email)==null?void 0:_.header)!=null&&G.barColor?"border":"plain",logo:((He=(me=(D=T==null?void 0:T.email)==null?void 0:D.header)==null?void 0:me.logo)==null?void 0:He.image)||ut.logo,link:((xe=(re=(De=T==null?void 0:T.email)==null?void 0:De.header)==null?void 0:re.logo)==null?void 0:xe.href)||ut.link,facebookLink:((mt=(Ve=(ge=(Le=T==null?void 0:T.email)==null?void 0:Le.footer)==null?void 0:ge.social)==null?void 0:Ve.facebook)==null?void 0:mt.url)||ut.facebookLink,linkedinLink:((ft=(Me=(st=(Ge=T==null?void 0:T.email)==null?void 0:Ge.footer)==null?void 0:st.social)==null?void 0:Me.linkedin)==null?void 0:ft.url)||ut.linkedinLink,instagramLink:((Et=(Lt=(wt=(ct=T==null?void 0:T.email)==null?void 0:ct.footer)==null?void 0:wt.social)==null?void 0:Lt.instagram)==null?void 0:Et.url)||ut.instagramLink,mediumLink:((St=(At=(Tt=(Ke=T==null?void 0:T.email)==null?void 0:Ke.footer)==null?void 0:Tt.social)==null?void 0:At.medium)==null?void 0:St.url)||ut.mediumLink,xLink:((j=(gt=(Je=(We=T==null?void 0:T.email)==null?void 0:We.footer)==null?void 0:Je.social)==null?void 0:gt.twitter)==null?void 0:j.url)||ut.xLink,isPreferences:!!w})},[p,v,b]),Rd(lr,{theme:o,isLoading:!!(a&&c.current),children:Rd(Ed,{ref:i,hidePublish:e,...n})})}),Bd=Hh(Fh);import{useAtom as pp,useAtomValue as ea,useSetAtom as nb}from"jotai";import{useCallback as Gs,useEffect as ib,useMemo as ab,useRef as sb,useState as cb}from"react";import{EditorProvider as Oh,useCurrentEditor as Wh}from"@tiptap/react";import{useAtom as zh,useAtomValue as $h,useSetAtom as Dd}from"jotai";import{forwardRef as Uh,memo as Zh,useCallback as qh,useEffect as Vd,useMemo as Yi,useRef as Hd}from"react";import{SegmentedMessage as _h}from"sms-segments-calculator";import{jsx as Br,jsxs as Hs}from"react/jsx-runtime";var Xi=s(({children:e})=>Hs("div",{className:"courier-py-2 courier-border-8 courier-border-b-0 courier-w-[306px] courier-h-[500px] courier-rounded-3xl courier-rounded-b-none courier-bg-background courier-pb-6 courier-relative courier-relative",style:{maskImage:"linear-gradient(180deg, #000 80%, transparent)",WebkitMaskImage:"linear-gradient(180deg, #000 80%, transparent)"},children:[Br("div",{className:"courier-absolute courier-w-0.5 courier-h-6 courier-bg-border -courier-left-[10px] courier-top-[136px]"}),Br("div",{className:"courier-absolute courier-w-0.5 courier-h-[50px] courier-bg-border -courier-left-[10px] courier-top-[178px]"}),Br("div",{className:"courier-absolute courier-w-0.5 courier-h-[50px] courier-bg-border -courier-left-[10px] courier-top-[245px]"}),Br("div",{className:"courier-absolute courier-w-0.5 courier-h-[78px] courier-bg-border -courier-right-[10px] courier-top-[200px]"}),Hs("div",{className:"courier-my-6 courier-mx-11 courier-flex courier-items-center courier-gap-2 courier-justify-between",children:[Br("span",{className:"courier-text-xs courier-font-semibold",children:new Date().toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})}),Hs("div",{className:"courier-flex courier-items-center courier-gap-2",children:[Br(ml,{}),Br(fl,{}),Br(Kc,{})]})]}),Br("div",{className:"courier-flex-1 courier-overflow-auto courier-h-[calc(90%-56px)] courier-mb-6",children:e})]}),"IPhoneFrame");import{jsx as _r,jsxs as Jh}from"react/jsx-runtime";var Ds=[{type:"text",content:""}],jh=s(()=>{var n;let{editor:e}=Wh(),t=Dd(Bt),r=(n=e==null?void 0:e.getText())!=null?n:"",o=Yi(()=>new _h(r),[r]);return Vd(()=>{e&&(t(e),setTimeout(()=>{e.commands.blur()},1))},[e,t]),_r("span",{className:"courier-self-end courier-pr-2 courier-text-xs courier-color-gray-500",children:Math.ceil((o==null?void 0:o.messageSize)/8)})},"EditorContent"),Gh={contentType:{state:"hidden"},bold:{state:"hidden"},italic:{state:"hidden"},underline:{state:"hidden"},strike:{state:"hidden"},alignLeft:{state:"hidden"},alignCenter:{state:"hidden"},alignRight:{state:"hidden"},alignJustify:{state:"hidden"},quote:{state:"hidden"},link:{state:"hidden"},variable:{state:"enabled"}},Kh=Uh(({theme:e,hidePublish:t,variables:r,readOnly:o,channels:n,routing:i},a)=>{let c=$h(be),l=Hd(!0),u=Hd(!1),d=Dd(ve),[p,m]=zh(Ae),h=Yi(()=>({urls:{unsubscribe:!0,preferences:!0},...r}),[r]);Vd(()=>(u.current=!0,()=>{u.current=!1}),[]);let b=Yi(()=>[...yr({variables:h,setSelectedNode:d})].filter(k=>k!==void 0),[h,d]),g=qh(({editor:k})=>{if(!p)return;let R=Zt(k.getJSON()),T=qt(p,{elements:R,channel:"sms"});JSON.stringify(p)!==JSON.stringify(T)&&m(T)},[p,m]),v=Yi(()=>{let k=p==null?void 0:p.elements.find(R=>R.type==="channel"&&R.channel==="sms");return k||(k={type:"channel",channel:"sms",elements:Ds}),Pr({version:"2022-01-01",elements:[k]})},[p]);return _r(lr,{theme:e,isLoading:!!(c&&l.current),Header:_r(jr,{hidePublish:t,channels:n,routing:i}),ref:a,children:_r("div",{className:"courier-flex courier-flex-col courier-items-center courier-py-8",children:_r(Xi,{children:_r("div",{className:"courier-sms-editor",children:Jh(Oh,{content:v,extensions:b,editable:!o,autofocus:!o,onUpdate:g,immediatelyRender:!1,children:[_r(jh,{}),_r(Cr,{config:Gh})]})})})})})}),Fd=Zh(Kh);import{EditorProvider as Xh,useCurrentEditor as Yh}from"@tiptap/react";import{useAtom as Qh,useAtomValue as e2,useSetAtom as Wd}from"jotai";import{forwardRef as t2,memo as r2,useCallback as o2,useEffect as zd,useMemo as Vs,useRef as Od}from"react";import{jsx as yo,jsxs as Fs}from"react/jsx-runtime";var n2=s(()=>{let{editor:e}=Yh(),t=Wd(Bt);return zd(()=>{e&&(t(e),setTimeout(()=>{e.commands.blur()},1))},[e,t]),null},"EditorContent"),Os=[{type:"text",content:`
164
+ `,variables:{input:{name:i,type:e.type,data:s}}})})).json();if(u.errors)throw new Error(u.errors.map(p=>p.message).join(`
165
+ `));return u.data.tenant.notification.uploadImage.url}catch(c){throw console.error("Error uploading image:",c),c}},"uploadImage");import{useAtomValue as ds,useSetAtom as ig}from"jotai";import{useCallback as fr,useEffect as ms,useMemo as ag,useRef as yu,useState as xu}from"react";import{toast as Cu}from"sonner";import{Fragment as lg,jsx as mr,jsxs as ps}from"react/jsx-runtime";var sg=a(({sourcePath:e,alt:t,alignment:r,borderWidth:o,borderRadius:n,borderColor:i,isUploading:l,width:s,imageNaturalWidth:c,onFileSelect:u,editor:d})=>{let[p,g]=xu(!1),[b,v]=xu(!0),f=yu(null),y=yu(null);ms(()=>{e&&v(!0)},[e]),ms(()=>{if(e&&!c&&d){let k=new Image;k.onload=()=>{try{if(!d.view||!d.state)return;let M=d.view.state.selection.from;d.chain().setNodeSelection(M).updateAttributes("imageBlock",{imageNaturalWidth:k.naturalWidth}).run()}catch{}},k.src=e}},[e,c,d]);let h=fr(k=>{var E,H;let M=(H=(E=d==null?void 0:d.view)==null?void 0:E.dom)==null?void 0:H.closest(".ProseMirror"),B=(M==null?void 0:M.clientWidth)||1e3,x=Math.min(100,k/B*100);return Math.round(x)},[d]),L=ag(()=>h(c),[h,c]),w=fr(k=>{k.preventDefault(),k.stopPropagation(),k.dataTransfer.types.includes("Files")&&Array.from(k.dataTransfer.items).some(x=>x.type.startsWith("image/"))&&(g(!0),k.dataTransfer.dropEffect="copy")},[]),m=fr(k=>{k.preventDefault(),k.stopPropagation(),g(!1)},[]),C=fr(k=>{k.preventDefault(),k.stopPropagation(),k.dataTransfer.types.includes("Files")&&Array.from(k.dataTransfer.items).some(x=>x.type.startsWith("image/"))&&g(!0)},[]),P=fr(k=>{k.preventDefault(),k.stopPropagation(),g(!1);let B=Array.from(k.dataTransfer.files).find(x=>x.type.startsWith("image/"));B&&u&&u(B)},[u]),A=fr(k=>{var B;let M=(B=k.target.files)==null?void 0:B[0];M&&u&&u(M)},[u]),R=fr(()=>{var k;(k=f.current)==null||k.click()},[]);return e?mr("div",{className:"courier-w-full node-element",children:ps("div",{className:I("courier-relative courier-p-1",(l||b)&&"courier-min-h-[200px] courier-min-w-[300px] courier-bg-gray-100"),children:[(l||b)&&mr("div",{className:"courier-absolute courier-inset-0 courier-flex courier-items-center courier-justify-center",children:mr(no,{className:"courier-w-8 courier-h-8"})}),mr("img",{ref:y,src:e,alt:t,className:I("courier-h-auto courier-inline-block courier-w-full",{left:"courier-mr-auto",center:"courier-mx-auto",right:"courier-ml-auto"}[r],l&&"courier-opacity-50",(l||b)&&"courier-invisible"),style:{maxWidth:s===L?`${c}px`:`${s}%`,borderWidth:`${o}px`,borderRadius:`${n}px`,borderColor:i,borderStyle:o>0?"solid":"none",display:"block"},loading:"lazy",decoding:"async",draggable:!1,onLoad:k=>{if(v(!1),!c&&d)try{if(!d.view||!d.state)return;setTimeout(()=>{let M=d.view.state.selection.from;d.chain().setNodeSelection(M).updateAttributes("imageBlock",{imageNaturalWidth:k.target.naturalWidth}).run()},100)}catch(M){console.warn("Editor not ready for image update:",M)}},onError:()=>v(!1)})]})}):ps("div",{className:I("courier-w-full node-element courier-empty-image courier-h-[160px] courier-bg-gray-100 courier-rounded-md courier-flex courier-flex-row courier-items-center courier-justify-center courier-cursor-pointer courier-transition-colors courier-flex-1",p&&"courier-border-primary courier-bg-gray-50"),onDragOver:w,onDragEnter:C,onDragLeave:m,onDrop:P,style:{pointerEvents:"all"},children:[l?mr(no,{className:"courier-w-8 courier-h-8"}):ps(lg,{children:[mr("span",{className:"courier-text-sm courier-pointer-events-none courier-inline-block",children:"Drag and drop image, or\xA0"}),mr("button",{className:"courier-underline courier-font-medium courier-inline-block courier-text-sm",onClick:R,children:"Browse"})]}),mr("input",{ref:f,type:"file",accept:"image/*",className:"courier-hidden",onChange:A})]})},"ImageBlockComponent"),wu=a(e=>{let t=ig(rt),r=ds(Ye),o=ds(Qe),n=ds(Le),i=fr(c=>{var g,b,v;let u=(v=(b=(g=e.editor)==null?void 0:g.view)==null?void 0:b.dom)==null?void 0:v.closest(".ProseMirror"),d=(u==null?void 0:u.clientWidth)||1e3,p=Math.min(100,c/d*100);return Math.round(p)},[e.editor]);ms(()=>{var u,d;let c=e.editor.state.doc.nodeAt(e.getPos());if((u=c==null?void 0:c.attrs)!=null&&u.sourcePath&&!((d=c==null?void 0:c.attrs)!=null&&d.imageNaturalWidth)){let p=new Image;p.onload=()=>{let g=c.attrs.width||i(p.naturalWidth);e.editor.chain().focus().setNodeSelection(e.getPos()).updateAttributes("imageBlock",{width:g,imageNaturalWidth:p.naturalWidth}).run()},p.src=c.attrs.sourcePath}},[e,e.getPos,i]);let l=fr(()=>{if(!e.editor.isEditable)return;let c=e.getPos(),u=e.editor.state.doc.nodeAt(c);u&&(e.editor.commands.blur(),t(u))},[e,t]),s=fr(async c=>{if(!r||!o||!n){Cu.error("Missing configuration for image upload");return}let u=e.getPos();e.editor.state.doc.nodeAt(u)&&e.editor.chain().focus().setNodeSelection(u).updateAttributes("imageBlock",{isUploading:!0}).run();try{if(!c.type.startsWith("image/"))throw new Error("Only image files are supported");let p=new FileReader;p.readAsDataURL(c),await new Promise((f,y)=>{p.onload=f,p.onerror=y});let g=await Si(c,{apiUrl:r,token:o,tenantId:n}),b=e.getPos();if(e.editor.state.doc.nodeAt(b)){let f=new Image;f.src=g,await new Promise(h=>{f.onload=h});let y=i(f.naturalWidth);e.editor.chain().focus().setNodeSelection(b).updateAttributes("imageBlock",{sourcePath:g,isUploading:!1,width:y,imageNaturalWidth:f.naturalWidth}).run()}}catch(p){console.error("Error uploading image:",p);let g="Failed to upload image";if(p instanceof Error){let f=p.message;f.includes("GraphQL error")?g="Server error: Could not process image":(f.includes("network")||f.includes("fetch"))&&(g="Network error: Could not upload image")}Cu.error(g);let b=e.getPos();e.editor.state.doc.nodeAt(b)&&e.editor.chain().focus().setNodeSelection(b).updateAttributes("imageBlock",{isUploading:!1}).run()}},[e,i,r,o,n]);return mr(Bt,{id:e.node.attrs.id,className:I(e.node.attrs.isSelected&&"selected-element"),onClick:l,editor:e.editor,children:mr(sg,{...e.node.attrs,onFileSelect:s,editor:e.editor})})},"ImageBlockView");var ze={sourcePath:"",link:"",alt:"",alignment:"center",width:1,borderWidth:0,borderRadius:0,borderColor:"#000000",isUploading:!1,imageNaturalWidth:0},Ri=ug.create({name:"imageBlock",group:"block",atom:!0,inline:!1,onCreate(){bt(this.editor,this.name)},addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),placeholder:""}},addAttributes(){return{sourcePath:{default:ze.sourcePath,parseHTML:e=>e.getAttribute("data-source-path")||"",renderHTML:e=>({"data-source-path":e.sourcePath||""})},link:{default:ze.link,parseHTML:e=>e.getAttribute("data-link"),renderHTML:e=>({"data-link":e.link})},alt:{default:ze.alt,parseHTML:e=>e.getAttribute("data-alt"),renderHTML:e=>({"data-alt":e.alt})},alignment:{default:ze.alignment,parseHTML:e=>e.getAttribute("data-alignment"),renderHTML:e=>({"data-alignment":e.alignment})},width:{default:ze.width,parseHTML:e=>e.getAttribute("data-width"),renderHTML:e=>({"data-width":e.width})},imageNaturalWidth:{default:ze.imageNaturalWidth,parseHTML:e=>e.getAttribute("data-natural-width"),renderHTML:e=>({"data-natural-width":e.imageNaturalWidth})},borderWidth:{default:ze.borderWidth,parseHTML:e=>e.getAttribute("data-border-width"),renderHTML:e=>({"data-border-width":e.borderWidth})},borderRadius:{default:ze.borderRadius,parseHTML:e=>e.getAttribute("data-border-radius"),renderHTML:e=>({"data-border-radius":e.borderRadius})},borderColor:{default:ze.borderColor,parseHTML:e=>e.getAttribute("data-border-color"),renderHTML:e=>({"data-border-color":e.borderColor})},isUploading:{default:ze.isUploading,parseHTML:e=>e.getAttribute("data-is-uploading"),renderHTML:e=>({"data-is-uploading":e.isUploading})},id:{default:void 0,parseHTML:e=>e.getAttribute("data-id"),renderHTML:e=>({"data-id":e.id})}}},parseHTML(){return[{tag:'div[data-type="image-block"]'}]},renderHTML({HTMLAttributes:e}){return["div",cg(this.options.HTMLAttributes,e,{"data-type":"image-block"}),0]},addNodeView(){return dg(wu)},addCommands(){return{setImageBlock:e=>({chain:t})=>t().insertContent({type:this.name,attrs:{...ze,...e}}).run(),setImageBlockAt:({pos:e,src:t})=>({chain:r})=>r().insertContentAt(e,{type:this.name,attrs:{...ze,sourcePath:t||""}}).run(),setImageBlockAlign:e=>({commands:t})=>t.updateAttributes(this.name,{alignment:e}),setImageBlockWidth:e=>({commands:t})=>t.updateAttributes(this.name,{width:e}),uploadImage:e=>({chain:t})=>{let r=new FileReader;return r.onload=()=>{t().setImageBlock({sourcePath:r.result,isUploading:!0}).run()},r.readAsDataURL(e),!0}}}});import{z as Jt}from"zod";var Tu=Jt.object({sourcePath:Jt.string(),link:Jt.string().optional(),alt:Jt.string().optional(),alignment:Jt.enum(["left","center","right"]),width:Jt.number().min(1).max(100),borderWidth:Jt.number(),borderRadius:Jt.number(),borderColor:Jt.string(),isUploading:Jt.boolean().optional(),imageNaturalWidth:Jt.number()});import{zodResolver as pg}from"@hookform/resolvers/zod";import{ArrowUp as mg}from"lucide-react";import{useCallback as Bi,useEffect as fg,useRef as ku,useState as Hi}from"react";import{useForm as gg}from"react-hook-form";import{toast as Di}from"sonner";import{useAtomValue as fs}from"jotai";import{Fragment as Pu,jsx as Z,jsxs as $e}from"react/jsx-runtime";var Mu=a(({element:e,editor:t})=>{var R,k,M,B;let r=ku(null),o=ku(null),[n,i]=Hi(""),[l,s]=Hi(!1),[c,u]=Hi(((R=e==null?void 0:e.attrs)==null?void 0:R.imageNaturalWidth)||0),[d,p]=Hi(!1),g=fs(Ye),b=fs(Qe),v=fs(Le),f=gg({resolver:pg(Tu),defaultValues:{...ze,...e==null?void 0:e.attrs},mode:"onChange"}),{updateNodeAttributes:y}=cr({editor:t,element:e,form:f,nodeType:"imageBlock"});fg(()=>{var E;let x=(E=e==null?void 0:e.attrs)==null?void 0:E.sourcePath;if(x&&!c){let H=new Image;H.onload=()=>{u(H.naturalWidth);let V={...f.getValues(),imageNaturalWidth:H.naturalWidth};f.setValue("imageNaturalWidth",H.naturalWidth),y(V)},H.src=x}},[(k=e==null?void 0:e.attrs)==null?void 0:k.sourcePath,c,f,y]);let h=Bi(x=>{var J,ee;let E=(ee=(J=t==null?void 0:t.view)==null?void 0:J.dom)==null?void 0:ee.closest(".ProseMirror"),H=(E==null?void 0:E.clientWidth)||1e3;if(x||(x=c),!x)return 0;let V=Math.min(100,x/H*100);return Math.round(V)},[t,c]),L=Bi(x=>{var E;x.preventDefault(),(E=r.current)==null||E.click()},[]),w=Bi((x,E)=>{let H=h(x.naturalWidth);i(`${H}%`),s(!1),f.setValue("sourcePath",E),f.setValue("imageNaturalWidth",x.naturalWidth),f.setValue("width",H);let V={...f.getValues(),sourcePath:E,width:H,imageNaturalWidth:x.naturalWidth};y(V)},[f,y,h]),m=Bi(x=>{if(!x)return;let E=new Image;E.onload=()=>{let H=h(E.naturalWidth);f.setValue("sourcePath",x),f.setValue("imageNaturalWidth",E.naturalWidth),f.setValue("width",H);let V={...f.getValues(),sourcePath:x,width:H,imageNaturalWidth:E.naturalWidth};y(V)},E.src=x},[f,y,h]),C=((B=(M=t==null?void 0:t.extensionManager.extensions.find(x=>x.name==="variableSuggestion"))==null?void 0:M.options)==null?void 0:B.variables)||{},P=_t(C),A=f.getValues().sourcePath;return e?$e(tt,{...f,children:[Z(ur,{type:"image"}),$e("form",{ref:o,onChange:()=>{let x=f.getValues();y(x)},children:[Z("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Image"}),$e(ai,{defaultValue:"file",className:"courier-mb-3 courier-w-full",children:[$e(fn,{className:"courier-w-full courier-flex courier-justify-stretch courier-mb-3",children:[Z(Lo,{value:"file",className:"courier-flex-1",children:"From file"}),Z(Lo,{value:"url",className:"courier-flex-1",children:"From URL"})]}),Z(si,{value:"file",children:$e("div",{className:"courier-flex courier-flex-col courier-gap-2",children:[Z(xe,{onClick:L,className:"courier-w-full",variant:"outline",type:"button",disabled:d,children:d?Z(Pu,{children:"Uploading..."}):$e(Pu,{children:[Z(mg,{strokeWidth:1.25,className:"courier-w-4 courier-h-4 courier-ml-2 courier-text-foreground"}),"Upload image"]})}),Z("input",{ref:r,type:"file",accept:"image/*",className:"courier-hidden",onChange:x=>{var H;let E=(H=x.target.files)==null?void 0:H[0];if(E){p(!0);let V=new FileReader;V.onload=async()=>{try{if(!g||!b||!v){Di.error("Missing configuration for image upload"),p(!1);return}let j=await Si(E,{apiUrl:g,token:b,tenantId:v}),J=new Image;J.onload=()=>{w(J,j),p(!1)},J.onerror=()=>{Di.error("Failed to load uploaded image"),p(!1)},J.src=j}catch(j){console.error("Error uploading image:",j),Di.error("Failed to upload image"),p(!1)}},V.onerror=()=>{Di.error("Failed to read image file"),p(!1)},V.readAsDataURL(E)}}})]})}),Z(si,{value:"url",children:Z(W,{control:f.control,name:"sourcePath",render:({field:x})=>$e(F,{className:"courier-mb-3",children:[Z(O,{children:Z(kt,{as:"Textarea",...x,autoResize:!0,className:"courier-max-h-[88px]",variables:P,onChange:E=>m(E.target.value)})}),Z(U,{})]})})})]}),Z(W,{control:f.control,name:"link",render:({field:x})=>$e(F,{className:"courier-mb-3",children:[Z(O,{children:Z(kt,{as:"Textarea",placeholder:"Link",...x,variables:P,onChange:E=>{x.onChange(E),y({...f.getValues(),link:E.target.value})}})}),Z(U,{})]})}),Z(W,{control:f.control,name:"alt",render:({field:x})=>$e(F,{className:"courier-mb-4",children:[Z(O,{children:Z(kt,{as:"Textarea",...x,placeholder:"Alt text...",variables:P,onChange:E=>{x.onChange(E),y({...f.getValues(),alt:E.target.value})}})}),Z(U,{})]})}),Z(ce,{className:"courier-mt-6 courier-mb-4"}),Z("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Width"}),(()=>{let x=f.getValues().width,E=f.getValues().imageNaturalWidth,H=h(E),V=x===H,j=V?"original":"fill";return $e(Rt,{type:"single",value:A?j:"original",onValueChange:J=>{if(!J||J===j)return;let ee=J==="fill"?100:h(E);ee>0&&(f.setValue("width",ee),y({...f.getValues(),width:ee}))},className:"courier-w-full courier-border courier-rounded-md courier-border-border courier-p-0.5 courier-mb-3 courier-shadow-sm",disabled:!A,children:[Z(Ie,{size:"sm",value:"original",className:"courier-w-full courier-h-7",children:"Original"}),Z(Ie,{size:"sm",value:"fill",className:"courier-w-full courier-h-7",disabled:V||!A,children:"Fill"})]})})(),Z(W,{control:f.control,name:"width",render:({field:x})=>$e(F,{className:"courier-flex-1 courier-mb-3",children:[Z(O,{children:Z(re,{type:"text",inputMode:"numeric",pattern:"[0-9]*",min:1,max:100,...x,value:f.getValues().sourcePath?l?n:`${x.value}%`:"0%",className:"courier-text-2xl courier-font-normal",disabled:!f.getValues().sourcePath,onFocus:E=>{s(!0),i(E.target.value)},onChange:E=>{i(E.target.value)},onKeyDown:E=>{E.key==="Enter"&&(E.preventDefault(),E.currentTarget.blur())},onBlur:E=>{s(!1);let H=parseFloat(E.target.value.replace("%",""));if(!isNaN(H)){let V=Math.min(100,Math.max(1,H));x.onChange(V),y({...f.getValues(),width:Math.round(V)})}}})}),Z(U,{})]})}),Z(W,{control:f.control,name:"width",render:({field:x})=>$e(F,{className:"courier-flex-1 courier-mb-3",children:[Z(O,{children:Z(Sa,{min:1,max:100,value:[A?x.value:0],disabled:!A,onValueChange:E=>{x.onChange(E[0]),y({...f.getValues(),width:E[0]})}})}),Z(U,{})]})}),Z(W,{control:f.control,name:"alignment",render:({field:x})=>$e(F,{children:[Z(O,{children:$e(Rt,{disabled:!A,type:"single",value:x.value,onValueChange:E=>{x.onChange(E),y({...f.getValues(),alignment:E})},className:"courier-w-full courier-border courier-rounded-md courier-border-border courier-p-0.5",children:[Z(Ie,{size:"sm",value:"left",className:"courier-w-full",children:Z(ki,{className:"courier-h-4 courier-w-4"})}),Z(Ie,{size:"sm",value:"center",className:"courier-w-full",children:Z(Pi,{className:"courier-h-4 courier-w-4"})}),Z(Ie,{size:"sm",value:"right",className:"courier-w-full",children:Z(Mi,{className:"courier-h-4 courier-w-4"})})]})}),Z(U,{})]})}),Z(ce,{className:"courier-mt-6 courier-mb-4"}),Z("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Border"}),$e("div",{className:"courier-flex courier-flex-row courier-gap-3 courier-mb-3",children:[Z(W,{control:f.control,name:"borderWidth",render:({field:x})=>$e(F,{children:[Z(O,{children:Z(re,{startAdornment:Z(Ut,{}),type:"number",disabled:!A,min:0,...x,onChange:E=>{let H=parseInt(E.target.value)||0;x.onChange(H),y({...f.getValues(),borderWidth:H})}})}),Z(U,{})]})}),Z(W,{control:f.control,name:"borderRadius",render:({field:x})=>$e(F,{children:[Z(O,{children:Z(re,{startAdornment:Z(ro,{}),type:"number",disabled:!A,min:0,...x,onChange:E=>{let H=parseInt(E.target.value)||0;x.onChange(H),y({...f.getValues(),borderRadius:H})}})}),Z(U,{})]})})]}),Z(W,{control:f.control,name:"borderColor",render:({field:x})=>$e(F,{className:"courier-mb-4",children:[Z(O,{children:Z(Oe,{...x,disabled:!A,defaultValue:ze.borderColor,onChange:E=>{x.onChange(E),y({...f.getValues(),[x.name]:E})}})}),Z(U,{})]})})]})]}):null},"ImageBlockForm");import{getMarkRange as Nu,mergeAttributes as hg}from"@tiptap/core";import bg from"@tiptap/extension-link";import{Plugin as Lu,TextSelection as Iu}from"@tiptap/pm/state";var gs=bg.extend({inclusive:!0,addAttributes(){var e;return{...(e=this.parent)==null?void 0:e.call(this),hasVariables:{default:!1},originalHref:{default:null}}},parseHTML(){return[{tag:'a[href]:not([data-type="button"]):not([href *= "javascript:" i])'}]},renderHTML({HTMLAttributes:e}){if(e.hasVariables&&e.originalHref)e.href=e.originalHref,delete e.hasVariables,delete e.originalHref;else if(e.href){let t=e.href;t.includes("__VAR_")&&(e.href=t.replace(/__VAR_([^_]+)__/g,"{{$1}}"))}return["a",hg(this.options.HTMLAttributes,e,{class:"link cursor-pointer"}),0]},addProseMirrorPlugins(){var t;return[...((t=this.parent)==null?void 0:t.call(this))||[],new Lu({props:{handleClick:(r,o,n)=>{if(n.button!==0)return!1;let{state:i}=r,{doc:l}=i,s=l.resolve(o),c=s.marks().find(u=>u.type.name==="link");if(c||o>0&&(c=l.resolve(o-1).marks().find(d=>d.type.name==="link")),c||o<l.content.size&&(c=l.resolve(o+1).marks().find(d=>d.type.name==="link")),c){let u=Nu(s,c.type);return u?(r.dispatch(i.tr.setSelection(Iu.create(l,u.from,u.to))),r.dispatch(r.state.tr.setMeta("showLinkForm",{from:u.from,to:u.to,href:c.attrs.originalHref||c.attrs.href})),!0):(r.dispatch(i.tr.setSelection(Iu.create(l,o,o+1))),r.dispatch(r.state.tr.setMeta("showLinkForm",{from:o,to:o+1,href:c.attrs.originalHref||c.attrs.href})),!0)}return!1}}}),new Lu({appendTransaction(r,o,n){if(!r.some(s=>s.docChanged))return null;let i=n.tr,l=!1;return n.doc.descendants((s,c)=>(s.marks.forEach(u=>{if(u.type.name==="link"&&u.attrs.href){let d=u.attrs.href;if(d.includes("__VAR_")){let p=d.replace(/__VAR_([^_]+)__/g,"{{$1}}");if(p!==d){let g=Nu(n.doc.resolve(c),u.type);g&&(i.removeMark(g.from,g.to,u.type),i.addMark(g.from,g.to,u.type.create({...u.attrs,href:p,hasVariables:!0,originalHref:p})),l=!0)}}}}),!0)),l?i:null}})]}});import{zodResolver as vg}from"@hookform/resolvers/zod";import{useSetAtom as yg}from"jotai";import{useRef as xg,useEffect as Cg}from"react";import{useForm as wg}from"react-hook-form";import{z as hs}from"zod";import{jsx as lo,jsxs as Eu}from"react/jsx-runtime";var Tg=hs.object({href:hs.string(),openInNewTab:hs.boolean().default(!1)}),Au=a(({editor:e,mark:t,pendingLink:r})=>{var u,d;let o=yg(gi),n=xg(null),i=wg({resolver:vg(Tg),defaultValues:{href:(t==null?void 0:t.attrs.href)||"",openInNewTab:(t==null?void 0:t.attrs.target)==="_blank"||!1}});Cg(()=>{i.reset({href:(t==null?void 0:t.attrs.href)||"",openInNewTab:(t==null?void 0:t.attrs.target)==="_blank"||!1})},[t,i]);let l=((d=(u=e==null?void 0:e.extensionManager.extensions.find(p=>p.name==="variableSuggestion"))==null?void 0:u.options)==null?void 0:d.variables)||{},s=_t(l),c=a(async p=>{let g=p.href.trim();if(!g){r&&(e==null||e.commands.setTextSelection({from:r.from,to:r.to})),e==null||e.commands.unsetLink(),o(null);return}r&&(e==null||e.commands.setTextSelection({from:r.from,to:r.to})),await(e==null?void 0:e.chain().focus().unsetLink().setTextSelection({from:(r==null?void 0:r.from)||0,to:(r==null?void 0:r.to)||0}).setLink({href:g,target:p.openInNewTab?"_blank":null}).run()),e==null||e.commands.setTextSelection((r==null?void 0:r.to)||0),o(null)},"updateLink");return Eu(tt,{...i,children:[lo("p",{className:"courier-font-medium courier-mb-4",children:"Link"}),lo("div",{className:"courier-space-y-4",children:lo(W,{control:i.control,name:"href",render:({field:p})=>Eu(F,{children:[lo(St,{children:"URL"}),lo(O,{children:lo(kt,{as:"Textarea",autoResize:!0,...p,variables:s,ref:g=>{typeof p.ref=="function"&&p.ref(g),n.current=g},onKeyDown:g=>{g.key==="Enter"&&(g.preventDefault(),g.stopPropagation(),i.handleSubmit(c)())},onBlur:()=>{p.onBlur(),i.handleSubmit(c)()}})}),lo(U,{})]})})})]})},"LinkForm");import{Node as kg,mergeAttributes as Pg}from"@tiptap/core";var Su=kg.create({name:"paragraph",priority:1e3,addOptions(){return{HTMLAttributes:{}}},group:"block",content:"inline*",parseHTML(){return[{tag:"p"}]},renderHTML({HTMLAttributes:e}){return["p",Pg(this.options.HTMLAttributes,e),0]},addCommands(){return{setParagraph:()=>({commands:e})=>e.setNode(this.name)}},addKeyboardShortcuts(){return{"Mod-Alt-0":()=>this.editor.commands.setParagraph()}}});import{mergeAttributes as Rg,ReactNodeViewRenderer as Bg}from"@tiptap/react";import{TextSelection as Hg,Plugin as Dg,PluginKey as Vg}from"prosemirror-state";var Ir={8:"Backspace",9:"Tab",10:"Enter",12:"NumLock",13:"Enter",16:"Shift",17:"Control",18:"Alt",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",44:"PrintScreen",45:"Insert",46:"Delete",59:";",61:"=",91:"Meta",92:"Meta",106:"*",107:"+",108:",",109:"-",110:".",111:"/",144:"NumLock",145:"ScrollLock",160:"Shift",161:"Shift",162:"Control",163:"Control",164:"Alt",165:"Alt",173:"-",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'"},Fi={48:")",49:"!",50:"@",51:"#",52:"$",53:"%",54:"^",55:"&",56:"*",57:"(",59:":",61:"+",173:"_",186:":",187:"+",188:"<",189:"_",190:">",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"'},Mg=typeof navigator!="undefined"&&/Mac/.test(navigator.platform),Ng=typeof navigator!="undefined"&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);for(Ee=0;Ee<10;Ee++)Ir[48+Ee]=Ir[96+Ee]=String(Ee);var Ee;for(Ee=1;Ee<=24;Ee++)Ir[Ee+111]="F"+Ee;var Ee;for(Ee=65;Ee<=90;Ee++)Ir[Ee]=String.fromCharCode(Ee+32),Fi[Ee]=String.fromCharCode(Ee);var Ee;for(Vi in Ir)Fi.hasOwnProperty(Vi)||(Fi[Vi]=Ir[Vi]);var Vi;function Ru(e){var t=Mg&&e.metaKey&&e.shiftKey&&!e.ctrlKey&&!e.altKey||Ng&&e.shiftKey&&e.key&&e.key.length==1||e.key=="Unidentified",r=!t&&e.key||(e.shiftKey?Fi:Ir)[e.keyCode]||e.key||"Unidentified";return r=="Esc"&&(r="Escape"),r=="Del"&&(r="Delete"),r=="Left"&&(r="ArrowLeft"),r=="Up"&&(r="ArrowUp"),r=="Right"&&(r="ArrowRight"),r=="Down"&&(r="ArrowDown"),r}a(Ru,"keyName");import{Plugin as Lg}from"prosemirror-state";var Ig=typeof navigator!="undefined"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):!1;function Eg(e){let t=e.split(/-(?!$)/),r=t[t.length-1];r=="Space"&&(r=" ");let o,n,i,l;for(let s=0;s<t.length-1;s++){let c=t[s];if(/^(cmd|meta|m)$/i.test(c))l=!0;else if(/^a(lt)?$/i.test(c))o=!0;else if(/^(c|ctrl|control)$/i.test(c))n=!0;else if(/^s(hift)?$/i.test(c))i=!0;else if(/^mod$/i.test(c))Ig?l=!0:n=!0;else throw new Error("Unrecognized modifier name: "+c)}return o&&(r="Alt-"+r),n&&(r="Ctrl-"+r),l&&(r="Meta-"+r),i&&(r="Shift-"+r),r}a(Eg,"normalizeKeyName");function Ag(e){let t=Object.create(null);for(let r in e)t[Eg(r)]=e[r];return t}a(Ag,"normalize");function bs(e,t,r=!0){return t.altKey&&(e="Alt-"+e),t.ctrlKey&&(e="Ctrl-"+e),t.metaKey&&(e="Meta-"+e),r&&t.shiftKey&&(e="Shift-"+e),e}a(bs,"modifiers");function Bu(e){return new Lg({props:{handleKeyDown:Sg(e)}})}a(Bu,"keymap");function Sg(e){let t=Ag(e);return function(r,o){let n=Ru(o),i,l=t[bs(n,o)];if(l&&l(r.state,r.dispatch,r))return!0;if(n.length==1&&n!=" "){if(o.shiftKey){let s=t[bs(n,o,!1)];if(s&&s(r.state,r.dispatch,r))return!0}if((o.shiftKey||o.altKey||o.metaKey||n.charCodeAt(0)>127)&&(i=Ir[o.keyCode])&&i!=n){let s=t[bs(i,o)];if(s&&s(r.state,r.dispatch,r))return!0}}return!1}}a(Sg,"keydownHandler");import{v4 as Fg}from"uuid";var vs=Su.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),HTMLAttributes:{class:""}}},onCreate(){bt(this.editor,this.name)},onTransaction(){let e=this.editor.state.tr,t=!1;this.editor.state.doc.descendants((r,o)=>{if(r.type.name===this.name&&!r.attrs.id){let n=`node-${Fg()}`;e.setNodeMarkup(o,void 0,{...r.attrs,id:n}),t=!0}return!0}),t&&this.editor.view.dispatch(e)},addAttributes(){return{paddingVertical:{default:Q.paddingVertical,parseHTML:e=>e.style.paddingTop?parseInt(e.style.paddingTop):Q.paddingVertical,renderHTML:e=>({"data-padding-vertical":e.paddingVertical})},paddingHorizontal:{default:Q.paddingHorizontal,parseHTML:e=>e.style.paddingLeft?parseInt(e.style.paddingLeft):Q.paddingHorizontal,renderHTML:e=>({"data-padding-horizontal":e.paddingHorizontal})},textAlign:{default:Q.textAlign,parseHTML:e=>e.style.textAlign||Q.textAlign,renderHTML:e=>({"data-text-align":e.textAlign})},backgroundColor:{default:Q.backgroundColor,parseHTML:e=>e.style.backgroundColor||Q.backgroundColor,renderHTML:e=>({"data-background-color":e.backgroundColor})},borderWidth:{default:Q.borderWidth,parseHTML:e=>e.style.borderWidth?parseInt(e.style.borderWidth):Q.borderWidth,renderHTML:e=>({"data-border-width":e.borderWidth})},borderRadius:{default:Q.borderRadius,parseHTML:e=>e.style.borderRadius?parseInt(e.style.borderRadius):Q.borderRadius,renderHTML:e=>({"data-border-radius":e.borderRadius})},borderColor:{default:Q.borderColor,parseHTML:e=>e.style.borderColor||Q.borderColor,renderHTML:e=>({"data-border-color":e.borderColor})},textColor:{default:Q.textColor,parseHTML:e=>e.style.color||Q.textColor,renderHTML:e=>({"data-text-color":e.textColor})},id:{default:void 0,parseHTML:e=>e.getAttribute("data-id"),renderHTML:e=>({"data-id":e.id})}}},parseHTML(){return[{tag:'div[data-type="paragraph"]'}]},renderHTML({HTMLAttributes:e}){return["div",Rg(this.options.HTMLAttributes,e,{"data-type":"paragraph"}),0]},addNodeView(){return Bg(Ai)},addProseMirrorPlugins(){return[Bu({"Mod-a":({selection:e,tr:t})=>{document.execCommand("selectAll");let{$from:r}=e,o=r.depth,n=null;for(;o>0;){let i=r.node(o);if(i.type.name==="paragraph"||i.type.name==="heading"){n=i;break}o--}if(n){let i=r.start(o),l=r.end(o);if(e.from!==i||e.to!==l)return t.setSelection(Hg.create(t.doc,i,l)),!0}return!1}}),new Dg({key:new Vg("preventElementDeletion"),props:{handleKeyDown:(e,t)=>{let r=t.key==="Delete"||t.key==="Backspace"||t.keyCode===8||t.keyCode===46||t.code==="Delete"||t.code==="Backspace",o=t.metaKey||t.ctrlKey||t.altKey;if(r){let{state:n}=e,{selection:i}=n,{$anchor:l}=i,s=l.depth,c=null;for(;s>0;){let u=l.node(s);if(u.type.name==="paragraph"||u.type.name==="heading"){c=u;break}s--}if(c){let u=c.textContent,d=l.parentOffset===0,p=l.parentOffset===u.length,g=u.length===0,b=t.key==="Delete"||t.keyCode===46||t.code==="Delete";if(o||g||!b&&d||b&&p)return t.preventDefault(),t.stopPropagation(),!0}}return!1}}})]},addKeyboardShortcuts(){let e=a((t,r=!0)=>{let{empty:o,$anchor:n,$head:i}=t.state.selection,l=n.depth,s=null;for(;l>0;){let d=n.node(l);if(d.type.name==="paragraph"||d.type.name==="heading"){s=d;break}l--}if(!s)return!1;let c=r?n.pos===i.pos&&n.parentOffset===0:n.pos===i.pos&&n.parentOffset===s.textContent.length,u=s.textContent.length===0;return c||u?!0:o?!1:(t.commands.command(({tr:d,dispatch:p})=>p?(d.insertText("",t.state.selection.from,t.state.selection.to),!0):!1),!0)},"handleDeletion");return{Enter:({editor:t})=>{if(t.view.dom.querySelector(".variable-suggestion")||t.view.state.selection.$from.node().type.spec.code)return!1;let{state:o,dispatch:n}=t.view,{tr:i}=o;return i.replaceSelectionWith(o.schema.nodes.hardBreak.create()).scrollIntoView(),n(i),!0},"Mod-a":({editor:t})=>{let{$from:r}=t.state.selection,o=r.depth;for(;o>0;){let n=r.node(o);if(n.type.name==="paragraph"||n.type.name==="heading"){let i=r.start(o),l=r.end(o);return t.commands.setTextSelection({from:i,to:l}),!0}o--}return!1},Backspace:({editor:t})=>e(t,!0),Delete:({editor:t})=>e(t,!1),Tab:()=>!0,"Shift-Tab":()=>!0}},addCommands(){return{setTextAlign:e=>({chain:t})=>t().updateAttributes(this.name,{textAlign:e}).run()}}});import{Extension as Og}from"@tiptap/core";import{Plugin as Wg,PluginKey as zg}from"@tiptap/pm/state";var $g=new zg("selection"),ys=Og.create({name:"selection",addOptions(){return{HTMLAttributes:{},setSelectedNode:()=>{}}},addGlobalAttributes(){return[{types:["paragraph","heading","button","spacer","divider","imageBlock","blockquote"],attributes:{isSelected:{default:!1,parseHTML:()=>!1,renderHTML:e=>e.isSelected?{class:"selected-element"}:{}}}}]},addCommands(){return{updateSelectionState:e=>({tr:t,dispatch:r})=>(r&&t.doc.descendants((o,n)=>{var i;return o.type.name!=="text"&&((i=o.type.spec.attrs)==null?void 0:i.isSelected)!==void 0&&(o===e?t.setNodeAttribute(n,"isSelected",!0):t.setNodeAttribute(n,"isSelected",!1)),!0}),!0)}},addProseMirrorPlugins(){return[new Wg({key:$g,props:{handleClick:(e,t,r)=>{var s;let{state:o}=e;if(!this.editor.isEditable)return!1;try{let c=window.getSelection();if(c&&c.rangeCount>0){let d=c.getRangeAt(0).startContainer.parentElement;if(d&&(["P","H1","H2","H3","BLOCKQUOTE"].includes(d.tagName)||["P","H1","H2","H3","BLOCKQUOTE"].some(p=>d.closest(p)))){let p=e.posAtDOM(d,0),g=o.doc.resolve(p);if(((s=g.node(1))==null?void 0:s.type.name)==="blockquote")return this.options.setSelectedNode(g.node(1)),this.editor.commands.updateSelectionState(g.node(1)),!0;let b=g.node();if(b&&["paragraph","heading","blockquote"].includes(b.type.name))return this.options.setSelectedNode(b),this.editor.commands.updateSelectionState(b),!0}}}catch(c){console.error("Error handling click:",c)}let n=r.target,i=e.posAtDOM(n,0),l=o.doc.resolve(i).node();return l&&["paragraph","heading","blockquote"].includes(l.type.name)?(this.options.setSelectedNode(l),this.editor.commands.updateSelectionState(l),!0):!1}}})]}});var we="top",He="bottom",Ae="right",Me="left",Oi="auto",zr=[we,He,Ae,Me],Er="start",co="end",Hu="clippingParents",Wi="viewport",Uo="popper",Du="reference",xs=zr.reduce(function(e,t){return e.concat([t+"-"+Er,t+"-"+co])},[]),zi=[].concat(zr,[Oi]).reduce(function(e,t){return e.concat([t,t+"-"+Er,t+"-"+co])},[]),Ug="beforeRead",Zg="read",_g="afterRead",qg="beforeMain",jg="main",Gg="afterMain",Kg="beforeWrite",Jg="write",Xg="afterWrite",Vu=[Ug,Zg,_g,qg,jg,Gg,Kg,Jg,Xg];function Ue(e){return e?(e.nodeName||"").toLowerCase():null}a(Ue,"getNodeName");function ve(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}a(ve,"getWindow");function Ht(e){var t=ve(e).Element;return e instanceof t||e instanceof Element}a(Ht,"isElement");function De(e){var t=ve(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}a(De,"isHTMLElement");function Zo(e){if(typeof ShadowRoot=="undefined")return!1;var t=ve(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}a(Zo,"isShadowRoot");function Yg(e){var t=e.state;Object.keys(t.elements).forEach(function(r){var o=t.styles[r]||{},n=t.attributes[r]||{},i=t.elements[r];!De(i)||!Ue(i)||(Object.assign(i.style,o),Object.keys(n).forEach(function(l){var s=n[l];s===!1?i.removeAttribute(l):i.setAttribute(l,s===!0?"":s)}))})}a(Yg,"applyStyles");function Qg(e){var t=e.state,r={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,r.popper),t.styles=r,t.elements.arrow&&Object.assign(t.elements.arrow.style,r.arrow),function(){Object.keys(t.elements).forEach(function(o){var n=t.elements[o],i=t.attributes[o]||{},l=Object.keys(t.styles.hasOwnProperty(o)?t.styles[o]:r[o]),s=l.reduce(function(c,u){return c[u]="",c},{});!De(n)||!Ue(n)||(Object.assign(n.style,s),Object.keys(i).forEach(function(c){n.removeAttribute(c)}))})}}a(Qg,"effect");var An={name:"applyStyles",enabled:!0,phase:"write",fn:Yg,effect:Qg,requires:["computeStyles"]};function Ze(e){return e.split("-")[0]}a(Ze,"getBasePlacement");var Xt=Math.max,uo=Math.min,Ar=Math.round;function _o(){var e=navigator.userAgentData;return e!=null&&e.brands&&Array.isArray(e.brands)?e.brands.map(function(t){return t.brand+"/"+t.version}).join(" "):navigator.userAgent}a(_o,"getUAString");function Sn(){return!/^((?!chrome|android).)*safari/i.test(_o())}a(Sn,"isLayoutViewport");function Dt(e,t,r){t===void 0&&(t=!1),r===void 0&&(r=!1);var o=e.getBoundingClientRect(),n=1,i=1;t&&De(e)&&(n=e.offsetWidth>0&&Ar(o.width)/e.offsetWidth||1,i=e.offsetHeight>0&&Ar(o.height)/e.offsetHeight||1);var l=Ht(e)?ve(e):window,s=l.visualViewport,c=!Sn()&&r,u=(o.left+(c&&s?s.offsetLeft:0))/n,d=(o.top+(c&&s?s.offsetTop:0))/i,p=o.width/n,g=o.height/i;return{width:p,height:g,top:d,right:u+p,bottom:d+g,left:u,x:u,y:d}}a(Dt,"getBoundingClientRect");function po(e){var t=Dt(e),r=e.offsetWidth,o=e.offsetHeight;return Math.abs(t.width-r)<=1&&(r=t.width),Math.abs(t.height-o)<=1&&(o=t.height),{x:e.offsetLeft,y:e.offsetTop,width:r,height:o}}a(po,"getLayoutRect");function Rn(e,t){var r=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(r&&Zo(r)){var o=t;do{if(o&&e.isSameNode(o))return!0;o=o.parentNode||o.host}while(o)}return!1}a(Rn,"contains");function ut(e){return ve(e).getComputedStyle(e)}a(ut,"getComputedStyle");function Cs(e){return["table","td","th"].indexOf(Ue(e))>=0}a(Cs,"isTableElement");function Ke(e){return((Ht(e)?e.ownerDocument:e.document)||window.document).documentElement}a(Ke,"getDocumentElement");function Sr(e){return Ue(e)==="html"?e:e.assignedSlot||e.parentNode||(Zo(e)?e.host:null)||Ke(e)}a(Sr,"getParentNode");function Fu(e){return!De(e)||ut(e).position==="fixed"?null:e.offsetParent}a(Fu,"getTrueOffsetParent");function e5(e){var t=/firefox/i.test(_o()),r=/Trident/i.test(_o());if(r&&De(e)){var o=ut(e);if(o.position==="fixed")return null}var n=Sr(e);for(Zo(n)&&(n=n.host);De(n)&&["html","body"].indexOf(Ue(n))<0;){var i=ut(n);if(i.transform!=="none"||i.perspective!=="none"||i.contain==="paint"||["transform","perspective"].indexOf(i.willChange)!==-1||t&&i.willChange==="filter"||t&&i.filter&&i.filter!=="none")return n;n=n.parentNode}return null}a(e5,"getContainingBlock");function Yt(e){for(var t=ve(e),r=Fu(e);r&&Cs(r)&&ut(r).position==="static";)r=Fu(r);return r&&(Ue(r)==="html"||Ue(r)==="body"&&ut(r).position==="static")?t:r||e5(e)||t}a(Yt,"getOffsetParent");function mo(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}a(mo,"getMainAxisFromPlacement");function fo(e,t,r){return Xt(e,uo(t,r))}a(fo,"within");function Ou(e,t,r){var o=fo(e,t,r);return o>r?r:o}a(Ou,"withinMaxClamp");function Bn(){return{top:0,right:0,bottom:0,left:0}}a(Bn,"getFreshSideObject");function Hn(e){return Object.assign({},Bn(),e)}a(Hn,"mergePaddingObject");function Dn(e,t){return t.reduce(function(r,o){return r[o]=e,r},{})}a(Dn,"expandToHashMap");var t5=a(function(t,r){return t=typeof t=="function"?t(Object.assign({},r.rects,{placement:r.placement})):t,Hn(typeof t!="number"?t:Dn(t,zr))},"toPaddingObject");function r5(e){var t,r=e.state,o=e.name,n=e.options,i=r.elements.arrow,l=r.modifiersData.popperOffsets,s=Ze(r.placement),c=mo(s),u=[Me,Ae].indexOf(s)>=0,d=u?"height":"width";if(!(!i||!l)){var p=t5(n.padding,r),g=po(i),b=c==="y"?we:Me,v=c==="y"?He:Ae,f=r.rects.reference[d]+r.rects.reference[c]-l[c]-r.rects.popper[d],y=l[c]-r.rects.reference[c],h=Yt(i),L=h?c==="y"?h.clientHeight||0:h.clientWidth||0:0,w=f/2-y/2,m=p[b],C=L-g[d]-p[v],P=L/2-g[d]/2+w,A=fo(m,P,C),R=c;r.modifiersData[o]=(t={},t[R]=A,t.centerOffset=A-P,t)}}a(r5,"arrow");function o5(e){var t=e.state,r=e.options,o=r.element,n=o===void 0?"[data-popper-arrow]":o;n!=null&&(typeof n=="string"&&(n=t.elements.popper.querySelector(n),!n)||Rn(t.elements.popper,n)&&(t.elements.arrow=n))}a(o5,"effect");var Wu={name:"arrow",enabled:!0,phase:"main",fn:r5,effect:o5,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function Vt(e){return e.split("-")[1]}a(Vt,"getVariation");var n5={top:"auto",right:"auto",bottom:"auto",left:"auto"};function i5(e,t){var r=e.x,o=e.y,n=t.devicePixelRatio||1;return{x:Ar(r*n)/n||0,y:Ar(o*n)/n||0}}a(i5,"roundOffsetsByDPR");function zu(e){var t,r=e.popper,o=e.popperRect,n=e.placement,i=e.variation,l=e.offsets,s=e.position,c=e.gpuAcceleration,u=e.adaptive,d=e.roundOffsets,p=e.isFixed,g=l.x,b=g===void 0?0:g,v=l.y,f=v===void 0?0:v,y=typeof d=="function"?d({x:b,y:f}):{x:b,y:f};b=y.x,f=y.y;var h=l.hasOwnProperty("x"),L=l.hasOwnProperty("y"),w=Me,m=we,C=window;if(u){var P=Yt(r),A="clientHeight",R="clientWidth";if(P===ve(r)&&(P=Ke(r),ut(P).position!=="static"&&s==="absolute"&&(A="scrollHeight",R="scrollWidth")),P=P,n===we||(n===Me||n===Ae)&&i===co){m=He;var k=p&&P===C&&C.visualViewport?C.visualViewport.height:P[A];f-=k-o.height,f*=c?1:-1}if(n===Me||(n===we||n===He)&&i===co){w=Ae;var M=p&&P===C&&C.visualViewport?C.visualViewport.width:P[R];b-=M-o.width,b*=c?1:-1}}var B=Object.assign({position:s},u&&n5),x=d===!0?i5({x:b,y:f},ve(r)):{x:b,y:f};if(b=x.x,f=x.y,c){var E;return Object.assign({},B,(E={},E[m]=L?"0":"",E[w]=h?"0":"",E.transform=(C.devicePixelRatio||1)<=1?"translate("+b+"px, "+f+"px)":"translate3d("+b+"px, "+f+"px, 0)",E))}return Object.assign({},B,(t={},t[m]=L?f+"px":"",t[w]=h?b+"px":"",t.transform="",t))}a(zu,"mapToStyles");function a5(e){var t=e.state,r=e.options,o=r.gpuAcceleration,n=o===void 0?!0:o,i=r.adaptive,l=i===void 0?!0:i,s=r.roundOffsets,c=s===void 0?!0:s,u={placement:Ze(t.placement),variation:Vt(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:n,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,zu(Object.assign({},u,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:l,roundOffsets:c})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,zu(Object.assign({},u,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:c})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}a(a5,"computeStyles");var $u={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:a5,data:{}};var $i={passive:!0};function s5(e){var t=e.state,r=e.instance,o=e.options,n=o.scroll,i=n===void 0?!0:n,l=o.resize,s=l===void 0?!0:l,c=ve(t.elements.popper),u=[].concat(t.scrollParents.reference,t.scrollParents.popper);return i&&u.forEach(function(d){d.addEventListener("scroll",r.update,$i)}),s&&c.addEventListener("resize",r.update,$i),function(){i&&u.forEach(function(d){d.removeEventListener("scroll",r.update,$i)}),s&&c.removeEventListener("resize",r.update,$i)}}a(s5,"effect");var Uu={name:"eventListeners",enabled:!0,phase:"write",fn:a(function(){},"fn"),effect:s5,data:{}};var l5={left:"right",right:"left",bottom:"top",top:"bottom"};function qo(e){return e.replace(/left|right|bottom|top/g,function(t){return l5[t]})}a(qo,"getOppositePlacement");var c5={start:"end",end:"start"};function Ui(e){return e.replace(/start|end/g,function(t){return c5[t]})}a(Ui,"getOppositeVariationPlacement");function go(e){var t=ve(e),r=t.pageXOffset,o=t.pageYOffset;return{scrollLeft:r,scrollTop:o}}a(go,"getWindowScroll");function ho(e){return Dt(Ke(e)).left+go(e).scrollLeft}a(ho,"getWindowScrollBarX");function ws(e,t){var r=ve(e),o=Ke(e),n=r.visualViewport,i=o.clientWidth,l=o.clientHeight,s=0,c=0;if(n){i=n.width,l=n.height;var u=Sn();(u||!u&&t==="fixed")&&(s=n.offsetLeft,c=n.offsetTop)}return{width:i,height:l,x:s+ho(e),y:c}}a(ws,"getViewportRect");function Ts(e){var t,r=Ke(e),o=go(e),n=(t=e.ownerDocument)==null?void 0:t.body,i=Xt(r.scrollWidth,r.clientWidth,n?n.scrollWidth:0,n?n.clientWidth:0),l=Xt(r.scrollHeight,r.clientHeight,n?n.scrollHeight:0,n?n.clientHeight:0),s=-o.scrollLeft+ho(e),c=-o.scrollTop;return ut(n||r).direction==="rtl"&&(s+=Xt(r.clientWidth,n?n.clientWidth:0)-i),{width:i,height:l,x:s,y:c}}a(Ts,"getDocumentRect");function bo(e){var t=ut(e),r=t.overflow,o=t.overflowX,n=t.overflowY;return/auto|scroll|overlay|hidden/.test(r+n+o)}a(bo,"isScrollParent");function Zi(e){return["html","body","#document"].indexOf(Ue(e))>=0?e.ownerDocument.body:De(e)&&bo(e)?e:Zi(Sr(e))}a(Zi,"getScrollParent");function $r(e,t){var r;t===void 0&&(t=[]);var o=Zi(e),n=o===((r=e.ownerDocument)==null?void 0:r.body),i=ve(o),l=n?[i].concat(i.visualViewport||[],bo(o)?o:[]):o,s=t.concat(l);return n?s:s.concat($r(Sr(l)))}a($r,"listScrollParents");function jo(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}a(jo,"rectToClientRect");function u5(e,t){var r=Dt(e,!1,t==="fixed");return r.top=r.top+e.clientTop,r.left=r.left+e.clientLeft,r.bottom=r.top+e.clientHeight,r.right=r.left+e.clientWidth,r.width=e.clientWidth,r.height=e.clientHeight,r.x=r.left,r.y=r.top,r}a(u5,"getInnerBoundingClientRect");function Zu(e,t,r){return t===Wi?jo(ws(e,r)):Ht(t)?u5(t,r):jo(Ts(Ke(e)))}a(Zu,"getClientRectFromMixedType");function d5(e){var t=$r(Sr(e)),r=["absolute","fixed"].indexOf(ut(e).position)>=0,o=r&&De(e)?Yt(e):e;return Ht(o)?t.filter(function(n){return Ht(n)&&Rn(n,o)&&Ue(n)!=="body"}):[]}a(d5,"getClippingParents");function ks(e,t,r,o){var n=t==="clippingParents"?d5(e):[].concat(t),i=[].concat(n,[r]),l=i[0],s=i.reduce(function(c,u){var d=Zu(e,u,o);return c.top=Xt(d.top,c.top),c.right=uo(d.right,c.right),c.bottom=uo(d.bottom,c.bottom),c.left=Xt(d.left,c.left),c},Zu(e,l,o));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}a(ks,"getClippingRect");function Vn(e){var t=e.reference,r=e.element,o=e.placement,n=o?Ze(o):null,i=o?Vt(o):null,l=t.x+t.width/2-r.width/2,s=t.y+t.height/2-r.height/2,c;switch(n){case we:c={x:l,y:t.y-r.height};break;case He:c={x:l,y:t.y+t.height};break;case Ae:c={x:t.x+t.width,y:s};break;case Me:c={x:t.x-r.width,y:s};break;default:c={x:t.x,y:t.y}}var u=n?mo(n):null;if(u!=null){var d=u==="y"?"height":"width";switch(i){case Er:c[u]=c[u]-(t[d]/2-r[d]/2);break;case co:c[u]=c[u]+(t[d]/2-r[d]/2);break;default:}}return c}a(Vn,"computeOffsets");function Qt(e,t){t===void 0&&(t={});var r=t,o=r.placement,n=o===void 0?e.placement:o,i=r.strategy,l=i===void 0?e.strategy:i,s=r.boundary,c=s===void 0?Hu:s,u=r.rootBoundary,d=u===void 0?Wi:u,p=r.elementContext,g=p===void 0?Uo:p,b=r.altBoundary,v=b===void 0?!1:b,f=r.padding,y=f===void 0?0:f,h=Hn(typeof y!="number"?y:Dn(y,zr)),L=g===Uo?Du:Uo,w=e.rects.popper,m=e.elements[v?L:g],C=ks(Ht(m)?m:m.contextElement||Ke(e.elements.popper),c,d,l),P=Dt(e.elements.reference),A=Vn({reference:P,element:w,strategy:"absolute",placement:n}),R=jo(Object.assign({},w,A)),k=g===Uo?R:P,M={top:C.top-k.top+h.top,bottom:k.bottom-C.bottom+h.bottom,left:C.left-k.left+h.left,right:k.right-C.right+h.right},B=e.modifiersData.offset;if(g===Uo&&B){var x=B[n];Object.keys(M).forEach(function(E){var H=[Ae,He].indexOf(E)>=0?1:-1,V=[we,He].indexOf(E)>=0?"y":"x";M[E]+=x[V]*H})}return M}a(Qt,"detectOverflow");function Ps(e,t){t===void 0&&(t={});var r=t,o=r.placement,n=r.boundary,i=r.rootBoundary,l=r.padding,s=r.flipVariations,c=r.allowedAutoPlacements,u=c===void 0?zi:c,d=Vt(o),p=d?s?xs:xs.filter(function(v){return Vt(v)===d}):zr,g=p.filter(function(v){return u.indexOf(v)>=0});g.length===0&&(g=p);var b=g.reduce(function(v,f){return v[f]=Qt(e,{placement:f,boundary:n,rootBoundary:i,padding:l})[Ze(f)],v},{});return Object.keys(b).sort(function(v,f){return b[v]-b[f]})}a(Ps,"computeAutoPlacement");function p5(e){if(Ze(e)===Oi)return[];var t=qo(e);return[Ui(e),t,Ui(t)]}a(p5,"getExpandedFallbackPlacements");function m5(e){var t=e.state,r=e.options,o=e.name;if(!t.modifiersData[o]._skip){for(var n=r.mainAxis,i=n===void 0?!0:n,l=r.altAxis,s=l===void 0?!0:l,c=r.fallbackPlacements,u=r.padding,d=r.boundary,p=r.rootBoundary,g=r.altBoundary,b=r.flipVariations,v=b===void 0?!0:b,f=r.allowedAutoPlacements,y=t.options.placement,h=Ze(y),L=h===y,w=c||(L||!v?[qo(y)]:p5(y)),m=[y].concat(w).reduce(function(Ne,ge){return Ne.concat(Ze(ge)===Oi?Ps(t,{placement:ge,boundary:d,rootBoundary:p,padding:u,flipVariations:v,allowedAutoPlacements:f}):ge)},[]),C=t.rects.reference,P=t.rects.popper,A=new Map,R=!0,k=m[0],M=0;M<m.length;M++){var B=m[M],x=Ze(B),E=Vt(B)===Er,H=[we,He].indexOf(x)>=0,V=H?"width":"height",j=Qt(t,{placement:B,boundary:d,rootBoundary:p,altBoundary:g,padding:u}),J=H?E?Ae:Me:E?He:we;C[V]>P[V]&&(J=qo(J));var ee=qo(J),fe=[];if(i&&fe.push(j[x]<=0),s&&fe.push(j[J]<=0,j[ee]<=0),fe.every(function(Ne){return Ne})){k=B,R=!1;break}A.set(B,fe)}if(R)for(var Se=v?3:1,Ve=a(function(ge){var Re=m.find(function(pt){var _e=A.get(pt);if(_e)return _e.slice(0,ge).every(function(at){return at})});if(Re)return k=Re,"break"},"_loop"),ae=Se;ae>0;ae--){var ye=Ve(ae);if(ye==="break")break}t.placement!==k&&(t.modifiersData[o]._skip=!0,t.placement=k,t.reset=!0)}}a(m5,"flip");var _u={name:"flip",enabled:!0,phase:"main",fn:m5,requiresIfExists:["offset"],data:{_skip:!1}};function qu(e,t,r){return r===void 0&&(r={x:0,y:0}),{top:e.top-t.height-r.y,right:e.right-t.width+r.x,bottom:e.bottom-t.height+r.y,left:e.left-t.width-r.x}}a(qu,"getSideOffsets");function ju(e){return[we,Ae,He,Me].some(function(t){return e[t]>=0})}a(ju,"isAnySideFullyClipped");function f5(e){var t=e.state,r=e.name,o=t.rects.reference,n=t.rects.popper,i=t.modifiersData.preventOverflow,l=Qt(t,{elementContext:"reference"}),s=Qt(t,{altBoundary:!0}),c=qu(l,o),u=qu(s,n,i),d=ju(c),p=ju(u);t.modifiersData[r]={referenceClippingOffsets:c,popperEscapeOffsets:u,isReferenceHidden:d,hasPopperEscaped:p},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":d,"data-popper-escaped":p})}a(f5,"hide");var Gu={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:f5};function g5(e,t,r){var o=Ze(e),n=[Me,we].indexOf(o)>=0?-1:1,i=typeof r=="function"?r(Object.assign({},t,{placement:e})):r,l=i[0],s=i[1];return l=l||0,s=(s||0)*n,[Me,Ae].indexOf(o)>=0?{x:s,y:l}:{x:l,y:s}}a(g5,"distanceAndSkiddingToXY");function h5(e){var t=e.state,r=e.options,o=e.name,n=r.offset,i=n===void 0?[0,0]:n,l=zi.reduce(function(d,p){return d[p]=g5(p,t.rects,i),d},{}),s=l[t.placement],c=s.x,u=s.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=c,t.modifiersData.popperOffsets.y+=u),t.modifiersData[o]=l}a(h5,"offset");var Ku={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:h5};function b5(e){var t=e.state,r=e.name;t.modifiersData[r]=Vn({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})}a(b5,"popperOffsets");var Ju={name:"popperOffsets",enabled:!0,phase:"read",fn:b5,data:{}};function Ms(e){return e==="x"?"y":"x"}a(Ms,"getAltAxis");function v5(e){var t=e.state,r=e.options,o=e.name,n=r.mainAxis,i=n===void 0?!0:n,l=r.altAxis,s=l===void 0?!1:l,c=r.boundary,u=r.rootBoundary,d=r.altBoundary,p=r.padding,g=r.tether,b=g===void 0?!0:g,v=r.tetherOffset,f=v===void 0?0:v,y=Qt(t,{boundary:c,rootBoundary:u,padding:p,altBoundary:d}),h=Ze(t.placement),L=Vt(t.placement),w=!L,m=mo(h),C=Ms(m),P=t.modifiersData.popperOffsets,A=t.rects.reference,R=t.rects.popper,k=typeof f=="function"?f(Object.assign({},t.rects,{placement:t.placement})):f,M=typeof k=="number"?{mainAxis:k,altAxis:k}:Object.assign({mainAxis:0,altAxis:0},k),B=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,x={x:0,y:0};if(P){if(i){var E,H=m==="y"?we:Me,V=m==="y"?He:Ae,j=m==="y"?"height":"width",J=P[m],ee=J+y[H],fe=J-y[V],Se=b?-R[j]/2:0,Ve=L===Er?A[j]:R[j],ae=L===Er?-R[j]:-A[j],ye=t.elements.arrow,Ne=b&&ye?po(ye):{width:0,height:0},ge=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:Bn(),Re=ge[H],pt=ge[V],_e=fo(0,A[j],Ne[j]),at=w?A[j]/2-Se-_e-Re-M.mainAxis:Ve-_e-Re-M.mainAxis,Te=w?-A[j]/2+Se+_e+pt+M.mainAxis:ae+_e+pt+M.mainAxis,mt=t.elements.arrow&&Yt(t.elements.arrow),st=mt?m==="y"?mt.clientTop||0:mt.clientLeft||0:0,xt=(E=B==null?void 0:B[m])!=null?E:0,Mt=J+at-xt-st,Nt=J+Te-xt,qe=fo(b?uo(ee,Mt):ee,J,b?Xt(fe,Nt):fe);P[m]=qe,x[m]=qe-J}if(s){var Ct,Lt=m==="x"?we:Me,It=m==="x"?He:Ae,je=P[C],T=C==="y"?"height":"width",_=je+y[Lt],q=je-y[It],oe=[we,Me].indexOf(h)!==-1,X=(Ct=B==null?void 0:B[C])!=null?Ct:0,ue=oe?_:je-A[T]-R[T]-X+M.altAxis,ne=oe?je+A[T]+R[T]-X-M.altAxis:q,le=b&&oe?Ou(ue,je,ne):fo(b?ue:_,je,b?ne:q);P[C]=le,x[C]=le-je}t.modifiersData[o]=x}}a(v5,"preventOverflow");var Xu={name:"preventOverflow",enabled:!0,phase:"main",fn:v5,requiresIfExists:["offset"]};function Ns(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}a(Ns,"getHTMLElementScroll");function Ls(e){return e===ve(e)||!De(e)?go(e):Ns(e)}a(Ls,"getNodeScroll");function y5(e){var t=e.getBoundingClientRect(),r=Ar(t.width)/e.offsetWidth||1,o=Ar(t.height)/e.offsetHeight||1;return r!==1||o!==1}a(y5,"isElementScaled");function Is(e,t,r){r===void 0&&(r=!1);var o=De(t),n=De(t)&&y5(t),i=Ke(t),l=Dt(e,n,r),s={scrollLeft:0,scrollTop:0},c={x:0,y:0};return(o||!o&&!r)&&((Ue(t)!=="body"||bo(i))&&(s=Ls(t)),De(t)?(c=Dt(t,!0),c.x+=t.clientLeft,c.y+=t.clientTop):i&&(c.x=ho(i))),{x:l.left+s.scrollLeft-c.x,y:l.top+s.scrollTop-c.y,width:l.width,height:l.height}}a(Is,"getCompositeRect");function x5(e){var t=new Map,r=new Set,o=[];e.forEach(function(i){t.set(i.name,i)});function n(i){r.add(i.name);var l=[].concat(i.requires||[],i.requiresIfExists||[]);l.forEach(function(s){if(!r.has(s)){var c=t.get(s);c&&n(c)}}),o.push(i)}return a(n,"sort"),e.forEach(function(i){r.has(i.name)||n(i)}),o}a(x5,"order");function Es(e){var t=x5(e);return Vu.reduce(function(r,o){return r.concat(t.filter(function(n){return n.phase===o}))},[])}a(Es,"orderModifiers");function As(e){var t;return function(){return t||(t=new Promise(function(r){Promise.resolve().then(function(){t=void 0,r(e())})})),t}}a(As,"debounce");function Ss(e){var t=e.reduce(function(r,o){var n=r[o.name];return r[o.name]=n?Object.assign({},n,o,{options:Object.assign({},n.options,o.options),data:Object.assign({},n.data,o.data)}):o,r},{});return Object.keys(t).map(function(r){return t[r]})}a(Ss,"mergeByName");var Yu={placement:"bottom",modifiers:[],strategy:"absolute"};function Qu(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return!t.some(function(o){return!(o&&typeof o.getBoundingClientRect=="function")})}a(Qu,"areValidElements");function ed(e){e===void 0&&(e={});var t=e,r=t.defaultModifiers,o=r===void 0?[]:r,n=t.defaultOptions,i=n===void 0?Yu:n;return a(function(s,c,u){u===void 0&&(u=i);var d={placement:"bottom",orderedModifiers:[],options:Object.assign({},Yu,i),modifiersData:{},elements:{reference:s,popper:c},attributes:{},styles:{}},p=[],g=!1,b={state:d,setOptions:a(function(h){var L=typeof h=="function"?h(d.options):h;f(),d.options=Object.assign({},i,d.options,L),d.scrollParents={reference:Ht(s)?$r(s):s.contextElement?$r(s.contextElement):[],popper:$r(c)};var w=Es(Ss([].concat(o,d.options.modifiers)));return d.orderedModifiers=w.filter(function(m){return m.enabled}),v(),b.update()},"setOptions"),forceUpdate:a(function(){if(!g){var h=d.elements,L=h.reference,w=h.popper;if(Qu(L,w)){d.rects={reference:Is(L,Yt(w),d.options.strategy==="fixed"),popper:po(w)},d.reset=!1,d.placement=d.options.placement,d.orderedModifiers.forEach(function(M){return d.modifiersData[M.name]=Object.assign({},M.data)});for(var m=0;m<d.orderedModifiers.length;m++){if(d.reset===!0){d.reset=!1,m=-1;continue}var C=d.orderedModifiers[m],P=C.fn,A=C.options,R=A===void 0?{}:A,k=C.name;typeof P=="function"&&(d=P({state:d,options:R,name:k,instance:b})||d)}}}},"forceUpdate"),update:As(function(){return new Promise(function(y){b.forceUpdate(),y(d)})}),destroy:a(function(){f(),g=!0},"destroy")};if(!Qu(s,c))return b;b.setOptions(u).then(function(y){!g&&u.onFirstUpdate&&u.onFirstUpdate(y)});function v(){d.orderedModifiers.forEach(function(y){var h=y.name,L=y.options,w=L===void 0?{}:L,m=y.effect;if(typeof m=="function"){var C=m({state:d,name:h,instance:b,options:w}),P=a(function(){},"noopFn");p.push(C||P)}})}a(v,"runModifierEffects");function f(){p.forEach(function(y){return y()}),p=[]}return a(f,"cleanupModifierEffects"),b},"createPopper")}a(ed,"popperGenerator");var C5=[Uu,Ju,$u,An,Ku,_u,Xu,Wu,Gu],Rs=ed({defaultModifiers:C5});var w5="tippy-box",ud="tippy-content",T5="tippy-backdrop",dd="tippy-arrow",pd="tippy-svg-arrow",vo={passive:!0,capture:!0},md=a(function(){return document.body},"TIPPY_DEFAULT_APPEND_TO");function Bs(e,t,r){if(Array.isArray(e)){var o=e[t];return o==null?Array.isArray(r)?r[t]:r:o}return e}a(Bs,"getValueAtIndexOrReturn");function Ws(e,t){var r={}.toString.call(e);return r.indexOf("[object")===0&&r.indexOf(t+"]")>-1}a(Ws,"isType");function fd(e,t){return typeof e=="function"?e.apply(void 0,t):e}a(fd,"invokeWithArgsOrReturn");function td(e,t){if(t===0)return e;var r;return function(o){clearTimeout(r),r=setTimeout(function(){e(o)},t)}}a(td,"debounce");function k5(e){return e.split(/\s+/).filter(Boolean)}a(k5,"splitBySpaces");function Go(e){return[].concat(e)}a(Go,"normalizeToArray");function rd(e,t){e.indexOf(t)===-1&&e.push(t)}a(rd,"pushIfUnique");function P5(e){return e.filter(function(t,r){return e.indexOf(t)===r})}a(P5,"unique");function M5(e){return e.split("-")[0]}a(M5,"getBasePlacement");function qi(e){return[].slice.call(e)}a(qi,"arrayFrom");function od(e){return Object.keys(e).reduce(function(t,r){return e[r]!==void 0&&(t[r]=e[r]),t},{})}a(od,"removeUndefinedProps");function Fn(){return document.createElement("div")}a(Fn,"div");function ji(e){return["Element","Fragment"].some(function(t){return Ws(e,t)})}a(ji,"isElement");function N5(e){return Ws(e,"NodeList")}a(N5,"isNodeList");function L5(e){return Ws(e,"MouseEvent")}a(L5,"isMouseEvent");function I5(e){return!!(e&&e._tippy&&e._tippy.reference===e)}a(I5,"isReferenceElement");function E5(e){return ji(e)?[e]:N5(e)?qi(e):Array.isArray(e)?e:qi(document.querySelectorAll(e))}a(E5,"getArrayOfElements");function Hs(e,t){e.forEach(function(r){r&&(r.style.transitionDuration=t+"ms")})}a(Hs,"setTransitionDuration");function nd(e,t){e.forEach(function(r){r&&r.setAttribute("data-state",t)})}a(nd,"setVisibilityState");function A5(e){var t,r=Go(e),o=r[0];return o!=null&&(t=o.ownerDocument)!=null&&t.body?o.ownerDocument:document}a(A5,"getOwnerDocument");function S5(e,t){var r=t.clientX,o=t.clientY;return e.every(function(n){var i=n.popperRect,l=n.popperState,s=n.props,c=s.interactiveBorder,u=M5(l.placement),d=l.modifiersData.offset;if(!d)return!0;var p=u==="bottom"?d.top.y:0,g=u==="top"?d.bottom.y:0,b=u==="right"?d.left.x:0,v=u==="left"?d.right.x:0,f=i.top-o+p>c,y=o-i.bottom-g>c,h=i.left-r+b>c,L=r-i.right-v>c;return f||y||h||L})}a(S5,"isCursorOutsideInteractiveBorder");function Ds(e,t,r){var o=t+"EventListener";["transitionend","webkitTransitionEnd"].forEach(function(n){e[o](n,r)})}a(Ds,"updateTransitionEndListener");function id(e,t){for(var r=t;r;){var o;if(e.contains(r))return!0;r=r.getRootNode==null||(o=r.getRootNode())==null?void 0:o.host}return!1}a(id,"actualContains");var gr={isTouch:!1},ad=0;function R5(){gr.isTouch||(gr.isTouch=!0,window.performance&&document.addEventListener("mousemove",gd))}a(R5,"onDocumentTouchStart");function gd(){var e=performance.now();e-ad<20&&(gr.isTouch=!1,document.removeEventListener("mousemove",gd)),ad=e}a(gd,"onDocumentMouseMove");function B5(){var e=document.activeElement;if(I5(e)){var t=e._tippy;e.blur&&!t.state.isVisible&&e.blur()}}a(B5,"onWindowBlur");function H5(){document.addEventListener("touchstart",R5,vo),window.addEventListener("blur",B5)}a(H5,"bindGlobalEventListeners");var D5=typeof window!="undefined"&&typeof document!="undefined",V5=D5?!!window.msCrypto:!1;var F5={animateFill:!1,followCursor:!1,inlinePositioning:!1,sticky:!1},O5={allowHTML:!1,animation:"fade",arrow:!0,content:"",inertia:!1,maxWidth:350,role:"tooltip",theme:"",zIndex:9999},er=Object.assign({appendTo:md,aria:{content:"auto",expanded:"auto"},delay:0,duration:[300,250],getReferenceClientRect:null,hideOnClick:!0,ignoreAttributes:!1,interactive:!1,interactiveBorder:2,interactiveDebounce:0,moveTransition:"",offset:[0,10],onAfterUpdate:a(function(){},"onAfterUpdate"),onBeforeUpdate:a(function(){},"onBeforeUpdate"),onCreate:a(function(){},"onCreate"),onDestroy:a(function(){},"onDestroy"),onHidden:a(function(){},"onHidden"),onHide:a(function(){},"onHide"),onMount:a(function(){},"onMount"),onShow:a(function(){},"onShow"),onShown:a(function(){},"onShown"),onTrigger:a(function(){},"onTrigger"),onUntrigger:a(function(){},"onUntrigger"),onClickOutside:a(function(){},"onClickOutside"),placement:"top",plugins:[],popperOptions:{},render:null,showOnCreate:!1,touch:!0,trigger:"mouseenter focus",triggerTarget:null},F5,O5),W5=Object.keys(er),z5=a(function(t){var r=Object.keys(t);r.forEach(function(o){er[o]=t[o]})},"setDefaultProps");function hd(e){var t=e.plugins||[],r=t.reduce(function(o,n){var i=n.name,l=n.defaultValue;if(i){var s;o[i]=e[i]!==void 0?e[i]:(s=er[i])!=null?s:l}return o},{});return Object.assign({},e,r)}a(hd,"getExtendedPassedProps");function $5(e,t){var r=t?Object.keys(hd(Object.assign({},er,{plugins:t}))):W5,o=r.reduce(function(n,i){var l=(e.getAttribute("data-tippy-"+i)||"").trim();if(!l)return n;if(i==="content")n[i]=l;else try{n[i]=JSON.parse(l)}catch{n[i]=l}return n},{});return o}a($5,"getDataAttributeProps");function sd(e,t){var r=Object.assign({},t,{content:fd(t.content,[e])},t.ignoreAttributes?{}:$5(e,t.plugins));return r.aria=Object.assign({},er.aria,r.aria),r.aria={expanded:r.aria.expanded==="auto"?t.interactive:r.aria.expanded,content:r.aria.content==="auto"?t.interactive?null:"describedby":r.aria.content},r}a(sd,"evaluateProps");var U5=a(function(){return"innerHTML"},"innerHTML");function Fs(e,t){e[U5()]=t}a(Fs,"dangerouslySetInnerHTML");function ld(e){var t=Fn();return e===!0?t.className=dd:(t.className=pd,ji(e)?t.appendChild(e):Fs(t,e)),t}a(ld,"createArrowElement");function cd(e,t){ji(t.content)?(Fs(e,""),e.appendChild(t.content)):typeof t.content!="function"&&(t.allowHTML?Fs(e,t.content):e.textContent=t.content)}a(cd,"setContent");function Os(e){var t=e.firstElementChild,r=qi(t.children);return{box:t,content:r.find(function(o){return o.classList.contains(ud)}),arrow:r.find(function(o){return o.classList.contains(dd)||o.classList.contains(pd)}),backdrop:r.find(function(o){return o.classList.contains(T5)})}}a(Os,"getChildren");function bd(e){var t=Fn(),r=Fn();r.className=w5,r.setAttribute("data-state","hidden"),r.setAttribute("tabindex","-1");var o=Fn();o.className=ud,o.setAttribute("data-state","hidden"),cd(o,e.props),t.appendChild(r),r.appendChild(o),n(e.props,e.props);function n(i,l){var s=Os(t),c=s.box,u=s.content,d=s.arrow;l.theme?c.setAttribute("data-theme",l.theme):c.removeAttribute("data-theme"),typeof l.animation=="string"?c.setAttribute("data-animation",l.animation):c.removeAttribute("data-animation"),l.inertia?c.setAttribute("data-inertia",""):c.removeAttribute("data-inertia"),c.style.maxWidth=typeof l.maxWidth=="number"?l.maxWidth+"px":l.maxWidth,l.role?c.setAttribute("role",l.role):c.removeAttribute("role"),(i.content!==l.content||i.allowHTML!==l.allowHTML)&&cd(u,e.props),l.arrow?d?i.arrow!==l.arrow&&(c.removeChild(d),c.appendChild(ld(l.arrow))):c.appendChild(ld(l.arrow)):d&&c.removeChild(d)}return a(n,"onUpdate"),{popper:t,onUpdate:n}}a(bd,"render");bd.$$tippy=!0;var Z5=1,_i=[],Vs=[];function _5(e,t){var r=sd(e,Object.assign({},er,hd(od(t)))),o,n,i,l=!1,s=!1,c=!1,u=!1,d,p,g,b=[],v=td(Mt,r.interactiveDebounce),f,y=Z5++,h=null,L=P5(r.plugins),w={isEnabled:!0,isVisible:!1,isDestroyed:!1,isMounted:!1,isShown:!1},m={id:y,reference:e,popper:Fn(),popperInstance:h,props:r,state:w,plugins:L,clearDelayTimeouts:ue,setProps:ne,setContent:le,show:Ge,hide:Be,hideWithInteractivity:xr,enable:oe,disable:X,unmount:jr,destroy:Gr};if(!r.render)return m;var C=r.render(m),P=C.popper,A=C.onUpdate;P.setAttribute("data-tippy-root",""),P.id="tippy-"+m.id,m.popper=P,e._tippy=m,P._tippy=m;var R=L.map(function(N){return N.fn(m)}),k=e.hasAttribute("aria-expanded");return mt(),Se(),J(),ee("onCreate",[m]),r.showOnCreate&&_(),P.addEventListener("mouseenter",function(){m.props.interactive&&m.state.isVisible&&m.clearDelayTimeouts()}),P.addEventListener("mouseleave",function(){m.props.interactive&&m.props.trigger.indexOf("mouseenter")>=0&&H().addEventListener("mousemove",v)}),m;function M(){var N=m.props.touch;return Array.isArray(N)?N:[N,0]}a(M,"getNormalizedTouchSettings");function B(){return M()[0]==="hold"}a(B,"getIsCustomTouchBehavior");function x(){var N;return!!((N=m.props.render)!=null&&N.$$tippy)}a(x,"getIsDefaultRenderFn");function E(){return f||e}a(E,"getCurrentTarget");function H(){var N=E().parentNode;return N?A5(N):document}a(H,"getDocument");function V(){return Os(P)}a(V,"getDefaultTemplateChildren");function j(N){return m.state.isMounted&&!m.state.isVisible||gr.isTouch||d&&d.type==="focus"?0:Bs(m.props.delay,N?0:1,er.delay)}a(j,"getDelay");function J(N){N===void 0&&(N=!1),P.style.pointerEvents=m.props.interactive&&!N?"":"none",P.style.zIndex=""+m.props.zIndex}a(J,"handleStyles");function ee(N,S,D){if(D===void 0&&(D=!0),R.forEach(function(Y){Y[N]&&Y[N].apply(Y,S)}),D){var K;(K=m.props)[N].apply(K,S)}}a(ee,"invokeHook");function fe(){var N=m.props.aria;if(N.content){var S="aria-"+N.content,D=P.id,K=Go(m.props.triggerTarget||e);K.forEach(function(Y){var Fe=Y.getAttribute(S);if(m.state.isVisible)Y.setAttribute(S,Fe?Fe+" "+D:D);else{var lt=Fe&&Fe.replace(D,"").trim();lt?Y.setAttribute(S,lt):Y.removeAttribute(S)}})}}a(fe,"handleAriaContentAttribute");function Se(){if(!(k||!m.props.aria.expanded)){var N=Go(m.props.triggerTarget||e);N.forEach(function(S){m.props.interactive?S.setAttribute("aria-expanded",m.state.isVisible&&S===E()?"true":"false"):S.removeAttribute("aria-expanded")})}}a(Se,"handleAriaExpandedAttribute");function Ve(){H().removeEventListener("mousemove",v),_i=_i.filter(function(N){return N!==v})}a(Ve,"cleanupInteractiveMouseListeners");function ae(N){if(!(gr.isTouch&&(c||N.type==="mousedown"))){var S=N.composedPath&&N.composedPath()[0]||N.target;if(!(m.props.interactive&&id(P,S))){if(Go(m.props.triggerTarget||e).some(function(D){return id(D,S)})){if(gr.isTouch||m.state.isVisible&&m.props.trigger.indexOf("click")>=0)return}else ee("onClickOutside",[m,N]);m.props.hideOnClick===!0&&(m.clearDelayTimeouts(),m.hide(),s=!0,setTimeout(function(){s=!1}),m.state.isMounted||Re())}}}a(ae,"onDocumentPress");function ye(){c=!0}a(ye,"onTouchMove");function Ne(){c=!1}a(Ne,"onTouchStart");function ge(){var N=H();N.addEventListener("mousedown",ae,!0),N.addEventListener("touchend",ae,vo),N.addEventListener("touchstart",Ne,vo),N.addEventListener("touchmove",ye,vo)}a(ge,"addDocumentPress");function Re(){var N=H();N.removeEventListener("mousedown",ae,!0),N.removeEventListener("touchend",ae,vo),N.removeEventListener("touchstart",Ne,vo),N.removeEventListener("touchmove",ye,vo)}a(Re,"removeDocumentPress");function pt(N,S){at(N,function(){!m.state.isVisible&&P.parentNode&&P.parentNode.contains(P)&&S()})}a(pt,"onTransitionedOut");function _e(N,S){at(N,S)}a(_e,"onTransitionedIn");function at(N,S){var D=V().box;function K(Y){Y.target===D&&(Ds(D,"remove",K),S())}if(a(K,"listener"),N===0)return S();Ds(D,"remove",p),Ds(D,"add",K),p=K}a(at,"onTransitionEnd");function Te(N,S,D){D===void 0&&(D=!1);var K=Go(m.props.triggerTarget||e);K.forEach(function(Y){Y.addEventListener(N,S,D),b.push({node:Y,eventType:N,handler:S,options:D})})}a(Te,"on");function mt(){B()&&(Te("touchstart",xt,{passive:!0}),Te("touchend",Nt,{passive:!0})),k5(m.props.trigger).forEach(function(N){if(N!=="manual")switch(Te(N,xt),N){case"mouseenter":Te("mouseleave",Nt);break;case"focus":Te(V5?"focusout":"blur",qe);break;case"focusin":Te("focusout",qe);break}})}a(mt,"addListeners");function st(){b.forEach(function(N){var S=N.node,D=N.eventType,K=N.handler,Y=N.options;S.removeEventListener(D,K,Y)}),b=[]}a(st,"removeListeners");function xt(N){var S,D=!1;if(!(!m.state.isEnabled||Ct(N)||s)){var K=((S=d)==null?void 0:S.type)==="focus";d=N,f=N.currentTarget,Se(),!m.state.isVisible&&L5(N)&&_i.forEach(function(Y){return Y(N)}),N.type==="click"&&(m.props.trigger.indexOf("mouseenter")<0||l)&&m.props.hideOnClick!==!1&&m.state.isVisible?D=!0:_(N),N.type==="click"&&(l=!D),D&&!K&&q(N)}}a(xt,"onTrigger");function Mt(N){var S=N.target,D=E().contains(S)||P.contains(S);if(!(N.type==="mousemove"&&D)){var K=T().concat(P).map(function(Y){var Fe,lt=Y._tippy,Cr=(Fe=lt.popperInstance)==null?void 0:Fe.state;return Cr?{popperRect:Y.getBoundingClientRect(),popperState:Cr,props:r}:null}).filter(Boolean);S5(K,N)&&(Ve(),q(N))}}a(Mt,"onMouseMove");function Nt(N){var S=Ct(N)||m.props.trigger.indexOf("click")>=0&&l;if(!S){if(m.props.interactive){m.hideWithInteractivity(N);return}q(N)}}a(Nt,"onMouseLeave");function qe(N){m.props.trigger.indexOf("focusin")<0&&N.target!==E()||m.props.interactive&&N.relatedTarget&&P.contains(N.relatedTarget)||q(N)}a(qe,"onBlurOrFocusOut");function Ct(N){return gr.isTouch?B()!==N.type.indexOf("touch")>=0:!1}a(Ct,"isEventListenerStopped");function Lt(){It();var N=m.props,S=N.popperOptions,D=N.placement,K=N.offset,Y=N.getReferenceClientRect,Fe=N.moveTransition,lt=x()?Os(P).arrow:null,Cr=Y?{getBoundingClientRect:Y,contextElement:Y.contextElement||E()}:e,an={name:"$$tippy",enabled:!0,phase:"beforeWrite",requires:["computeStyles"],fn:a(function(Kr){var wr=Kr.state;if(x()){var Jn=V(),Mo=Jn.box;["placement","reference-hidden","escaped"].forEach(function(Jr){Jr==="placement"?Mo.setAttribute("data-placement",wr.placement):wr.attributes.popper["data-popper-"+Jr]?Mo.setAttribute("data-"+Jr,""):Mo.removeAttribute("data-"+Jr)}),wr.attributes.popper={}}},"fn")},rr=[{name:"offset",options:{offset:K}},{name:"preventOverflow",options:{padding:{top:2,bottom:2,left:5,right:5}}},{name:"flip",options:{padding:5}},{name:"computeStyles",options:{adaptive:!Fe}},an];x()&&lt&&rr.push({name:"arrow",options:{element:lt,padding:3}}),rr.push.apply(rr,(S==null?void 0:S.modifiers)||[]),m.popperInstance=Rs(Cr,P,Object.assign({},S,{placement:D,onFirstUpdate:g,modifiers:rr}))}a(Lt,"createPopperInstance");function It(){m.popperInstance&&(m.popperInstance.destroy(),m.popperInstance=null)}a(It,"destroyPopperInstance");function je(){var N=m.props.appendTo,S,D=E();m.props.interactive&&N===md||N==="parent"?S=D.parentNode:S=fd(N,[D]),S.contains(P)||S.appendChild(P),m.state.isMounted=!0,Lt()}a(je,"mount");function T(){return qi(P.querySelectorAll("[data-tippy-root]"))}a(T,"getNestedPopperTree");function _(N){m.clearDelayTimeouts(),N&&ee("onTrigger",[m,N]),ge();var S=j(!0),D=M(),K=D[0],Y=D[1];gr.isTouch&&K==="hold"&&Y&&(S=Y),S?o=setTimeout(function(){m.show()},S):m.show()}a(_,"scheduleShow");function q(N){if(m.clearDelayTimeouts(),ee("onUntrigger",[m,N]),!m.state.isVisible){Re();return}if(!(m.props.trigger.indexOf("mouseenter")>=0&&m.props.trigger.indexOf("click")>=0&&["mouseleave","mousemove"].indexOf(N.type)>=0&&l)){var S=j(!1);S?n=setTimeout(function(){m.state.isVisible&&m.hide()},S):i=requestAnimationFrame(function(){m.hide()})}}a(q,"scheduleHide");function oe(){m.state.isEnabled=!0}a(oe,"enable");function X(){m.hide(),m.state.isEnabled=!1}a(X,"disable");function ue(){clearTimeout(o),clearTimeout(n),cancelAnimationFrame(i)}a(ue,"clearDelayTimeouts");function ne(N){if(!m.state.isDestroyed){ee("onBeforeUpdate",[m,N]),st();var S=m.props,D=sd(e,Object.assign({},S,od(N),{ignoreAttributes:!0}));m.props=D,mt(),S.interactiveDebounce!==D.interactiveDebounce&&(Ve(),v=td(Mt,D.interactiveDebounce)),S.triggerTarget&&!D.triggerTarget?Go(S.triggerTarget).forEach(function(K){K.removeAttribute("aria-expanded")}):D.triggerTarget&&e.removeAttribute("aria-expanded"),Se(),J(),A&&A(S,D),m.popperInstance&&(Lt(),T().forEach(function(K){requestAnimationFrame(K._tippy.popperInstance.forceUpdate)})),ee("onAfterUpdate",[m,N])}}a(ne,"setProps");function le(N){m.setProps({content:N})}a(le,"setContent");function Ge(){var N=m.state.isVisible,S=m.state.isDestroyed,D=!m.state.isEnabled,K=gr.isTouch&&!m.props.touch,Y=Bs(m.props.duration,0,er.duration);if(!(N||S||D||K)&&!E().hasAttribute("disabled")&&(ee("onShow",[m],!1),m.props.onShow(m)!==!1)){if(m.state.isVisible=!0,x()&&(P.style.visibility="visible"),J(),ge(),m.state.isMounted||(P.style.transition="none"),x()){var Fe=V(),lt=Fe.box,Cr=Fe.content;Hs([lt,Cr],0)}g=a(function(){var rr;if(!(!m.state.isVisible||u)){if(u=!0,P.offsetHeight,P.style.transition=m.props.moveTransition,x()&&m.props.animation){var Po=V(),Kr=Po.box,wr=Po.content;Hs([Kr,wr],Y),nd([Kr,wr],"visible")}fe(),Se(),rd(Vs,m),(rr=m.popperInstance)==null||rr.forceUpdate(),ee("onMount",[m]),m.props.animation&&x()&&_e(Y,function(){m.state.isShown=!0,ee("onShown",[m])})}},"onFirstUpdate"),je()}}a(Ge,"show");function Be(){var N=!m.state.isVisible,S=m.state.isDestroyed,D=!m.state.isEnabled,K=Bs(m.props.duration,1,er.duration);if(!(N||S||D)&&(ee("onHide",[m],!1),m.props.onHide(m)!==!1)){if(m.state.isVisible=!1,m.state.isShown=!1,u=!1,l=!1,x()&&(P.style.visibility="hidden"),Ve(),Re(),J(!0),x()){var Y=V(),Fe=Y.box,lt=Y.content;m.props.animation&&(Hs([Fe,lt],K),nd([Fe,lt],"hidden"))}fe(),Se(),m.props.animation?x()&&pt(K,m.unmount):m.unmount()}}a(Be,"hide");function xr(N){H().addEventListener("mousemove",v),rd(_i,v),v(N)}a(xr,"hideWithInteractivity");function jr(){m.state.isVisible&&m.hide(),m.state.isMounted&&(It(),T().forEach(function(N){N._tippy.unmount()}),P.parentNode&&P.parentNode.removeChild(P),Vs=Vs.filter(function(N){return N!==m}),m.state.isMounted=!1,ee("onHidden",[m]))}a(jr,"unmount");function Gr(){m.state.isDestroyed||(m.clearDelayTimeouts(),m.unmount(),st(),delete e._tippy,m.state.isDestroyed=!0,ee("onDestroy",[m]))}a(Gr,"destroy")}a(_5,"createTippy");function On(e,t){t===void 0&&(t={});var r=er.plugins.concat(t.plugins||[]);H5();var o=Object.assign({},t,{plugins:r}),n=E5(e);if(0)var i,l;var s=n.reduce(function(c,u){var d=u&&_5(u,o);return d&&c.push(d),c},[]);return ji(e)?s[0]:s}a(On,"tippy");On.defaultProps=er;On.setDefaultProps=z5;On.currentInput=gr;var FN=Object.assign({},An,{effect:a(function(t){var r=t.state,o={popper:{position:r.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};Object.assign(r.elements.popper.style,o.popper),r.styles=o,r.elements.arrow&&Object.assign(r.elements.arrow.style,o.arrow)},"effect")});On.setDefaultProps({render:bd});var vd=On;import{forwardRef as q5}from"react";import{jsx as j5}from"react/jsx-runtime";var zs=q5(({children:e,className:t,withShadow:r=!0,withBorder:o=!0,...n},i)=>{let l=I("courier-bg-white courier-rounded-lg dark:courier-bg-black",r?"courier-shadow-sm":"",o?"courier-border courier-border-border dark:courier-border-neutral-800":"",t);return j5("div",{className:l,...n,ref:i,children:e})});zs.displayName="Surface";import{Extension as Y5,Node as Q5}from"@tiptap/core";import{ReactNodeViewRenderer as eh}from"@tiptap/react";import{Suggestion as th}from"@tiptap/suggestion";import{ReactRenderer as G5}from"@tiptap/react";var tr={items:({query:e,editor:t})=>{var n,i;let r=((i=(n=t.extensionManager.extensions.find(l=>l.name==="variableSuggestion"))==null?void 0:n.options)==null?void 0:i.variables)||{};return _t(r).filter(l=>l.toLowerCase().includes(e.toLowerCase()))},char:"{{",allowSpaces:!1,allowedPrefixes:null,startOfLine:!1,decorationTag:"span",decorationClass:"variable-suggestion",command:({editor:e,range:t,props:r})=>{e.chain().focus().deleteRange(t).insertContent([{type:"variable",attrs:{id:r}},{type:"text",text:" "}]).run()},render:()=>{let e=null,t=null,r=null,o=a((i,l)=>{e==null||e.updateProps({...i,selected:l})},"updateComponent"),n=a(i=>{var c,u;if(!r)return!1;let s=((c=tr.items)==null?void 0:c.call(tr,{query:(e==null?void 0:e.props).query||"",editor:(e==null?void 0:e.props).editor}))[i];return s?((u=tr.command)==null||u.call(tr,{editor:r.editor,range:r.range,props:s}),!0):!1},"selectItem");return{onStart:i=>{r=i,e=new G5(Ln,{props:{...i,selected:0},editor:i.editor}),i.clientRect&&(t=vd(i.editor.options.element,{getReferenceClientRect:()=>{var l;return((l=i.clientRect)==null?void 0:l.call(i))||new DOMRect},appendTo:()=>i.editor.options.element,content:e==null?void 0:e.element,showOnCreate:!0,interactive:!0,trigger:"manual",placement:"bottom-start",theme:"variable"}),e!=null&&e.element&&e.element.focus())},onUpdate(i){r=i,e==null||e.updateProps({...i,selected:e.props.selected}),i.clientRect&&(t==null||t.setProps({getReferenceClientRect:()=>{var l;return((l=i.clientRect)==null?void 0:l.call(i))||new DOMRect}}))},onKeyDown(i){var c;if(!e||!r)return!1;let l=(c=tr.items)==null?void 0:c.call(tr,{query:e.props.query||"",editor:e.props.editor}),s=e.props.selected;if(i.event.key==="ArrowUp"){let u=(s-1+l.length)%l.length;return o(r,u),!0}if(i.event.key==="ArrowDown"){let u=(s+1)%l.length;return o(r,u),!0}return i.event.key==="Enter"?(i.event.preventDefault(),n(s)):i.event.key==="Escape"?(r.editor.chain().focus().deleteRange(r.range).run(),!0):!1},onExit(){t==null||t.destroy(),e==null||e.destroy(),r=null}}}};import{NodeViewWrapper as K5}from"@tiptap/react";import{Braces as J5}from"lucide-react";import{jsx as yd,jsxs as X5}from"react/jsx-runtime";var xd=a(({node:e})=>yd(K5,{className:"courier-inline-block",children:X5("span",{className:"courier-group courier-text-sm courier-variable-node courier-bg-gray-200 courier-pl-2 courier-pr-3 courier-py-[1px] courier-rounded courier-border courier-border-gray-400 hover:courier-bg-[#3B82F6] hover:courier-border-[#3B82F6] hover:courier-text-[#ffffff] courier-flex courier-items-center courier-gap-1",children:[yd(J5,{size:16,className:"courier-text-gray-500 group-hover:courier-stroke-primary"}),e.attrs.id]})}),"VariableView");var $s=Q5.create({name:"variable",group:"inline",inline:!0,selectable:!1,atom:!0,addAttributes(){return{id:{default:null,parseHTML:e=>e.getAttribute("data-id"),renderHTML:e=>({"data-id":e.id})}}},parseHTML(){return[{tag:"span[data-variable]"}]},renderHTML({HTMLAttributes:e}){return["span",{"data-variable":!0,...e},0]},addNodeView(){return eh(xd)}}),Us=Y5.create({name:"variableSuggestion",addOptions(){return{HTMLAttributes:{},suggestion:{char:"{{",...tr}}},addProseMirrorPlugins(){return[th({editor:this.editor,...this.options.suggestion})]}});import{v4 as rh}from"uuid";var oh=a((e,t)=>{let r=null;return e.state.doc.descendants((o,n)=>o.attrs.id===t?(r=n,!1):!0),r},"findNodePositionById"),wi=a((e,t,r,o,n,i)=>{let l=`node-${rh()}`,c={heading:()=>e.schema.nodes.heading.create({...Q,...o,id:l},i),paragraph:()=>e.schema.nodes.paragraph.create({...Q,...o,id:l},i),text:()=>e.schema.nodes.paragraph.create({...Q,...o,id:l},i),spacer:()=>e.schema.nodes.divider.create({...lu,...o,id:l}),divider:()=>e.schema.nodes.divider.create({...jt,...o,id:l}),button:()=>e.schema.nodes.button.create({...Pe,...o,id:l},i),imageBlock:()=>e.schema.nodes.imageBlock.create({...ze,...o,id:l}),image:()=>e.schema.nodes.imageBlock.create({...ze,...o,id:l})}[t];if(c)try{let u=e.state.tr,d=c();u.insert(r,d),e.view.dispatch(u),n&&n(d),(t==="text"||t==="paragraph"||t==="heading")&&setTimeout(()=>{let g=oh(e,l);g!==null&&e.commands.setTextSelection(g+1),e.view.focus()},50);let p=new CustomEvent("node-duplicated",{detail:{newNodeId:l}});document.dispatchEvent(p)}catch(u){console.error("Error creating node:",u)}else try{if(e.schema.nodes[t]){let u=e.state.tr,d=e.schema.nodes[t].create({...o,id:l},i);u.insert(r,d),e.view.dispatch(u),n&&n(d);let p=new CustomEvent("node-duplicated",{detail:{newNodeId:l}});document.dispatchEvent(p)}else console.error(`Cannot duplicate node: type "${t}" not found in schema`)}catch(u){console.error("Error creating fallback node:",u)}return l},"createOrDuplicateNode");import{closestCorners as nh,getFirstCollision as ih,KeyboardCode as Ur}from"@dnd-kit/core";var ah=[Ur.Down,Ur.Right,Ur.Up,Ur.Left],Ld=a((e,{context:{active:t,droppableRects:r,droppableContainers:o,collisionRect:n}})=>{var i;if(ah.includes(e.code)){if(e.preventDefault(),!t||!n)return;let l=[];o.getEnabled().forEach(u=>{var g;if(!u||u!=null&&u.disabled)return;let d=r.get(u.id);if(!d)return;let p=u.data.current;if(p){let{type:b,children:v}=p;if(b==="container"&&(v==null?void 0:v.length)>0&&((g=t.data.current)==null?void 0:g.type)!=="container")return}switch(e.code){case Ur.Down:n.top<d.top&&l.push(u);break;case Ur.Up:n.top>d.top&&l.push(u);break;case Ur.Left:n.left>=d.left+d.width&&l.push(u);break;case Ur.Right:n.left+n.width<=d.left&&l.push(u);break}});let s=nh({active:t,collisionRect:n,droppableRects:r,droppableContainers:l,pointerCoordinates:null}),c=ih(s,"id");if(c!=null){let u=o.get(c),d=u==null?void 0:u.node.current,p=u==null?void 0:u.rect.current;if(d&&p)return u.id==="placeholder"?{x:p.left+(p.width-n.width)/2,y:p.top+(p.height-n.height)/2}:((i=u.data.current)==null?void 0:i.type)==="container"?{x:p.left+20,y:p.top+74}:{x:p.left,y:p.top}}}},"coordinateGetter");import{jsx as Rr,jsxs as Ad}from"react/jsx-runtime";var Gi=[{type:"text",align:"left",content:`
166
+ `,text_style:"h1"},{type:"text",align:"left",content:""},{type:"image",src:""}],wh=xh(({hidePublish:e,theme:t,channels:r,routing:o,render:n,headerRenderer:i},l)=>{let s=yo(ei),[c,u]=Ed(be),[d,p]=Ed(Xr),[g,b]=Wn(null),[v,f]=Wn(null),y=Co(null),h=Co(!1),L=Co({}),[w,m]=Wn(null),[C,P]=Wn(void 0),A=yo(Ce),R=yo(pe),k=yo(Ll),M=yo(ar),B=Co(-1),x=yh(Hc),E=Co(!1),H=Co(!1),V=yo(ke),j=yo(Zt),J=Co(null);xo(()=>{if(c){let T=c.type.name,_=mi(T);x({nodeName:T,config:_})}},[c,x]);let ee=_s(()=>{var _,q,oe,X,ue,ne,le,Ge,Be,xr,jr,Gr,N,S,D,K,Y,Fe,lt,Cr,an,rr,Po,Kr,wr,Jn,Mo,Jr,wl,Tl,kl,Pl,Ml,Nl;if(M)return M;let T=(oe=(q=(_=A==null?void 0:A.data)==null?void 0:_.tenant)==null?void 0:q.brand)==null?void 0:oe.settings;return{brandColor:((X=T==null?void 0:T.colors)==null?void 0:X.primary)||"#000000",textColor:((ue=T==null?void 0:T.colors)==null?void 0:ue.secondary)||"#000000",subtleColor:((ne=T==null?void 0:T.colors)==null?void 0:ne.tertiary)||"#666666",headerStyle:(Ge=(le=T==null?void 0:T.email)==null?void 0:le.header)!=null&&Ge.barColor?"border":"plain",logo:(jr=(xr=(Be=T==null?void 0:T.email)==null?void 0:Be.header)==null?void 0:xr.logo)==null?void 0:jr.image,link:(S=(N=(Gr=T==null?void 0:T.email)==null?void 0:Gr.header)==null?void 0:N.logo)==null?void 0:S.href,facebookLink:(Fe=(Y=(K=(D=T==null?void 0:T.email)==null?void 0:D.footer)==null?void 0:K.social)==null?void 0:Y.facebook)==null?void 0:Fe.url,linkedinLink:(rr=(an=(Cr=(lt=T==null?void 0:T.email)==null?void 0:lt.footer)==null?void 0:Cr.social)==null?void 0:an.linkedin)==null?void 0:rr.url,instagramLink:(Jn=(wr=(Kr=(Po=T==null?void 0:T.email)==null?void 0:Po.footer)==null?void 0:Kr.social)==null?void 0:wr.instagram)==null?void 0:Jn.url,mediumLink:(Tl=(wl=(Jr=(Mo=T==null?void 0:T.email)==null?void 0:Mo.footer)==null?void 0:Jr.social)==null?void 0:wl.medium)==null?void 0:Tl.url,xLink:(Nl=(Ml=(Pl=(kl=T==null?void 0:T.email)==null?void 0:kl.footer)==null?void 0:Pl.social)==null?void 0:Ml.twitter)==null?void 0:Nl.url}},[M,A]),fe=k&&!!ee,Se=Ld,Ve=vh,[ae,ye]=Wn({Editor:[],Sidebar:["heading","text","image","spacer","divider","button"]}),Ne=Ft(()=>{Object.values(L.current).forEach(T=>clearTimeout(T)),L.current={}},[]);xo(()=>()=>{Ne()},[Ne]);let ge=Ft(T=>{J.current&&cancelAnimationFrame(J.current),setTimeout(()=>{J.current=requestAnimationFrame(()=>{try{let _=T==null?void 0:T.view.dom;if(!_){console.warn("syncEditorItems: Editor DOM element not found");return}let q=_.querySelectorAll(".react-renderer > div[data-node-view-wrapper][data-id]"),oe=[];q.forEach(X=>{let ue=X.dataset.id;ue&&oe.push(ue)}),ye(X=>({Editor:oe,Sidebar:X.Sidebar}))}catch(_){console.error("Error syncing editor items:",_),ye(q=>({...q}))}})},50)},[]);xo(()=>{let T=a(_=>{if(_.key==="Escape"&&(u(null),s==null||s.commands.blur(),B.current=-1),_.key==="Tab"&&s){_.preventDefault();let q=-1;c&&s.state.doc.content.forEach((ue,ne,le)=>{c.attrs.id===ue.attrs.id&&(q=le)}),q===-1&&(q=0);let oe=s.state.doc,X;if(_.shiftKey?X=(q-1+oe.childCount)%oe.childCount:X=(q+1)%oe.childCount,X!==q||c===null){let ue=oe.child(X);u(ue),s.commands.blur()}}},"handleKeyPress");return document.addEventListener("keydown",T),()=>{document.removeEventListener("keydown",T)}},[s,c,u]);let Re=a(T=>{let _=T.elements.find(q=>q.type==="channel"&&q.channel==="email");if(_&&"elements"in _&&_.elements){let q=_.elements.find(oe=>oe.type==="meta");if(q&&"subject"in q&&typeof q.subject=="string")return q.subject}return null},"getSubject");xo(()=>{var q,oe,X,ue,ne;let T=(ne=V!=null?V:(ue=(X=(oe=(q=A==null?void 0:A.data)==null?void 0:q.tenant)==null?void 0:oe.notification)==null?void 0:X.data)==null?void 0:ue.content)!=null?ne:"";if(!T)return;let _=Re(T);p(_!=null?_:""),setTimeout(()=>{if(!(!s||s.isDestroyed)&&s.state.doc.childCount===1){let le=s.state.doc.child(0);u(le)}},0)},[A,R,s,V,p,u]),xo(()=>{R===!1&&A&&!H.current&&(H.current=!0,setTimeout(()=>{s&&!s.isDestroyed&&ge(s)},300))},[R,A,s,ge]),xo(()=>(E.current=!0,()=>{E.current=!1}),[]),xo(()=>{let T=a(()=>{s&&ge(s)},"updateItems");s==null||s.on("update",T),s==null||s.on("selectionUpdate",T),s==null||s.on("create",T),s==null||s.on("transaction",T),s&&!s.isDestroyed&&T();let _=a(q=>{T()},"handleNodeDuplicated");return document.addEventListener("node-duplicated",_),()=>{s==null||s.off("update",T),s==null||s.off("selectionUpdate",T),s==null||s.off("create",T),s==null||s.off("transaction",T),document.removeEventListener("node-duplicated",_),J.current&&cancelAnimationFrame(J.current)}},[s,ge]);let pt=Ft(T=>{let q=T||(C===void 0?"desktop":void 0);P(q),u(null),q?s==null||s.setEditable(!1):s==null||s.setEditable(!0)},[s,C,P,u]),_e=hh(Zs(ph),Zs(gh),Zs(uh,{coordinateGetter:Se})),at=Ft(()=>{b(null)},[]),Te=Ft(T=>typeof T=="string"&&T.includes("_temp_")?"Editor":T in ae?T:Object.keys(ae).find(_=>ae[_].includes(T)),[ae]),mt=Ft(T=>{var ue;if(g&&g in ae)return Id({...T,droppableContainers:T.droppableContainers.filter(ne=>ne.id in ae)});let _=mh(T),oe=(_.length>0?_:fh(T)).filter(ne=>ne.id!==void 0),X=ch(oe,"id");if(X!=null){if(X==="Editor")return y.current=X,[{id:X}];if(X in ae){let ne=ae[X];if(ne.length>0){let le=(ue=Id({...T,droppableContainers:T.droppableContainers.filter(Ge=>Ge.id!==X&&ne.includes(Ge.id))})[0])==null?void 0:ue.id;le&&(X=le)}}return y.current=X,[{id:X}]}return h.current&&(y.current=g),y.current?[{id:y.current}]:[]},[g,ae]),st=Ft(T=>{var _;try{let q=s==null?void 0:s.state.doc;if(!q||T===0)return 0;if(T>=q.childCount)return q.content.size;let oe=0;for(let X=0;X<Math.min(T,q.childCount);X++)oe+=(_=q.child(X))==null?void 0:_.nodeSize;return oe}catch{return s==null?void 0:s.state.doc.content.size}},[s]),xt=_s(()=>({droppable:{strategy:dh.Always}}),[]),Mt=Ft(({active:T})=>{b(T.id),(T.id==="text"||T.id==="divider"||T.id==="spacer"||T.id==="button"||T.id==="image"||T.id==="heading")&&f(T.id)},[]),Nt=Ft(({active:T,over:_})=>{if(!_)return;let q=Te(_.id);if(!(Te(T.id)==="Sidebar"&&q==="Editor"))return;let X=T.rect.current;if(!(X!=null&&X.translated))return;let ue=s==null?void 0:s.view.dom.querySelectorAll("[data-node-view-wrapper]");if(!ue)return;let ne=ue.length;for(let le=0;le<ue.length;le++){let Be=ue[le].getBoundingClientRect();if(X.translated.top<Be.top+Be.height/2){ne=le;break}}if(ne!==w){let le=`${T.id}_temp_${Date.now()}`;m(ne),requestAnimationFrame(()=>{s==null||s.commands.removeDragPlaceholder(),s==null||s.commands.setDragPlaceholder({id:le,type:T.id,pos:st(ne)}),ye(Ge=>({...Ge,Editor:[...Ge.Editor.filter(Be=>!Be.toString().includes("_temp")),le]}))})}},[s==null?void 0:s.commands,s==null?void 0:s.view.dom,Te,st,w]),qe=Ft(()=>{s==null||s.commands.removeDragPlaceholder(),ye(T=>({...T,Editor:T.Editor.filter(_=>!_.toString().includes("_temp"))}))},[s==null?void 0:s.commands,ye]),Ct=Ft(({active:T,over:_})=>{var ue;qe();let q=_==null?void 0:_.id;if(!q){ye(ne=>({...ne,Editor:ne.Editor.filter(le=>!le.toString().includes("_temp"))})),b(null),f(null);return}if(!s)return;let oe=Te(q),X=Te(T.id);if(X==="Sidebar"&&oe==="Editor"&&w!==null){let ne=st(w);wi(s,v,ne!=null?ne:0,void 0,le=>u(le))}else if(X===oe){let ne=ae[X].indexOf(T.id),le=ae[oe].indexOf(q);if(ne!==-1&&le!==-1&&ne!==le){ye(Be=>({...Be,[oe]:bh(Be[oe],ne,le)}));let Ge=(ue=s.getJSON())==null?void 0:ue.content;if(Array.isArray(Ge)){let Be=[...Ge],[xr]=Be.splice(ne,1);Be.splice(le,0,xr),s.view.dispatch(s.view.state.tr.replaceWith(0,s.view.state.doc.content.size,s.state.schema.nodeFromJSON({type:"doc",content:Be})))}}}X==="Sidebar"&&oe==="Sidebar"&&setTimeout(()=>{qe()},100),m(null),b(null),f(null)},[qe,s,Te,st,ae,w,u,f,b,v]),Lt=Ft(()=>{qe(),s==null||s.commands.removeDragPlaceholder(),at()},[qe,s==null?void 0:s.commands,at]),It=a(T=>{p(T.target.value)},"handleSubjectChange"),je=_s(()=>{let T=V==null?void 0:V.elements.find(q=>q.type==="channel"&&q.channel==="email");return T||(T={type:"channel",channel:"email",elements:Gi}),kr({version:"2022-01-01",elements:[T]},{channel:"email"})},[V]);return Rr(sr,{theme:t,isLoading:!!R,Header:i?i({hidePublish:e,channels:r,routing:o}):Rr(Zr,{hidePublish:e,channels:r,routing:o}),children:Ad(sh,{sensors:_e,collisionDetection:mt,measuring:xt,onDragStart:Mt,onDragMove:Nt,onDragEnd:Ct,onDragCancel:Lt,children:[n==null?void 0:n({subject:d,handleSubjectChange:It,selectedNode:c,setSelectedNode:u,previewMode:C,emailEditor:s,ref:l,isBrandApply:fe,brandSettings:ee,items:ae,content:je,strategy:Ve,syncEditorItems:ge,brandEditorContent:j,tenantData:A,togglePreviewMode:pt}),Rr(lh,{dropAnimation:null,children:g&&(g==="text"||g==="divider"||g==="spacer"||g==="button"||g==="image"||g==="heading")?Ad("div",{className:I("courier-bg-white courier-border courier-border-border courier-rounded-lg courier-p-4 courier-shadow-lg","courier-opacity-90 courier-scale-105 courier-transition-transform"),children:[v==="heading"&&Rr(Do,{draggable:!0}),v==="text"&&Rr(Oo,{draggable:!0}),v==="spacer"&&Rr(Fo,{draggable:!0}),v==="divider"&&Rr(Ho,{draggable:!0}),v==="button"&&Rr(Bo,{draggable:!0}),v==="image"&&Rr(Vo,{draggable:!0})]}):null})]})})}),Ki=Ch(wh);var Ji=class Ji{};a(Ji,"UploadImageAPI"),Ji.uploadImage=a(async t=>new Promise((r,o)=>{let n=new FileReader;n.onload=()=>{typeof n.result=="string"?r(n.result):o(new Error("Failed to convert image to data URL"))},n.onerror=()=>{o(new Error("Failed to read image file"))},n.readAsDataURL(t)}),"uploadImage");var qs=Ji,js=qs;var hr=a(e=>[cs,Nd.configure({document:!1,dropcursor:!1,gapcursor:!1,heading:!1,horizontalRule:!1,paragraph:!1,blockquote:!1,hardBreak:!1}),ys.configure({setSelectedNode:e==null?void 0:e.setSelectedNode}),wd.configure({keepMarks:!0,HTMLAttributes:{class:"my-line-break"}}),fu,ls,vs,ns,us.configure({levels:[1,2,3,4,5,6]}),Ti,Ni,Cd,gs.configure({openOnClick:!1,defaultProtocol:"https",HTMLAttributes:{class:"link"}}),Md,Ri.configure(),Ei.configure({allowedMimeTypes:["image/png","image/jpeg","image/gif","image/webp"],onDrop:(t,r,o)=>{r.forEach(async n=>{let i=await js.uploadImage(n);t.chain().setImageBlockAt({pos:o,src:i}).focus().run()})},onPaste:(t,r)=>{r.forEach(async o=>{let n=await js.uploadImage(o);return t.chain().setImageBlockAt({pos:t.state.selection.anchor,src:n}).focus().run()})}}),kd.extend({addKeyboardShortcuts(){return{}}}).configure({types:["paragraph","heading"]}),Pd,Td.configure({includeChildren:!0,showOnlyCurrent:!0,placeholder:"",emptyEditorClass:"is-editor-empty",emptyNodeClass:"is-empty",showOnlyWhenEditable:!0}),rs.configure({width:2,class:"ProseMirror-dropcursor courier-border-black"}),Us.configure({variables:e==null?void 0:e.variables}),$s],"ExtensionKit");import{BubbleMenu as e2,useCurrentEditor as t2}from"@tiptap/react";import{useAtomValue as Th}from"jotai";import{useCallback as Sd,useEffect as kh,useState as Ph}from"react";var Xi=a(e=>{let t=Th(be),[r,o]=Ph({isBold:!1,isItalic:!1,isUnderline:!1,isStrike:!1,isAlignLeft:!1,isAlignCenter:!1,isAlignRight:!1,isAlignJustify:!1,isQuote:!1,isLink:!1}),n=Sd(()=>{if(e){if((t==null?void 0:t.type.name)==="button"){o({isBold:t.attrs.fontWeight==="bold",isItalic:t.attrs.fontStyle==="italic",isUnderline:t.attrs.isUnderline,isStrike:t.attrs.isStrike,isAlignLeft:!1,isAlignCenter:!1,isAlignRight:!1,isAlignJustify:!1,isQuote:!1,isLink:!1});return}o({isBold:e.isActive("bold"),isItalic:e.isActive("italic"),isUnderline:e.isActive("underline"),isStrike:e.isActive("strike"),isAlignLeft:e.isActive({textAlign:"left"}),isAlignCenter:e.isActive({textAlign:"center"}),isAlignRight:e.isActive({textAlign:"right"}),isAlignJustify:e.isActive({textAlign:"justify"}),isQuote:e.isActive("blockquote"),isLink:e.isActive("link")})}},[e,t]);return kh(()=>{if(e)return n(),e.on("selectionUpdate",n),e.on("transaction",n),()=>{e.off("selectionUpdate",n),e.off("transaction",n)}},[e,n]),{shouldShow:Sd(({editor:l})=>{let s=["paragraph","heading","blockquote"],{$head:c}=l.state.selection,u=c.node();if(s.includes(u.type.name)&&u.attrs.isSelected)return!0;for(let d=1;d<=c.depth;d++){let p=c.node(d);if(p.type.name==="blockquote"&&p.attrs.isSelected)return!0}return!1},[]),...r}},"useTextmenuStates");import{useAtomValue as Ks}from"jotai";import{AlignCenter as Dh,AlignJustify as Vh,AlignLeft as Fh,AlignRight as Oh,Bold as Wh,Braces as zh,Italic as $h,Link as Uh,Quote as Zh,Strikethrough as _h,Underline as qh}from"lucide-react";import{Fragment as jh,memo as $d,useMemo as zd,useRef as Gh,useState as Kh,useEffect as Jh}from"react";import{forwardRef as Gs}from"react";import Mh from"@tippyjs/react";import{useCallback as Nh}from"react";import{Fragment as Eh,jsx as br,jsxs as Ih}from"react/jsx-runtime";var Rd=typeof window!="undefined"?navigator.platform.toUpperCase().indexOf("MAC")>=0:!1,Lh=a(({children:e})=>{let t="courier-inline-flex courier-items-center courier-justify-center courier-w-5 courier-h-5 courier-p-1 courier-text-[0.625rem] courier-rounded courier-font-semibold courier-leading-none courier-border courier-border-border courier-text-neutral-500 courier-border-b-2";return e==="Mod"?br("kbd",{className:t,children:Rd?"\u2318":"Ctrl"}):e==="Shift"?br("kbd",{className:t,children:"\u21E7"}):e==="Alt"?br("kbd",{className:t,children:Rd?"\u2325":"Alt"}):br("kbd",{className:t,children:e})},"ShortcutKey"),Bd=a(({children:e,enabled:t=!0,title:r,shortcut:o,tippyOptions:n={}})=>{let i=Nh(l=>Ih("span",{className:"courier-flex courier-items-center courier-gap-2 courier-px-2.5 courier-py-1 courier-bg-white courier-border courier-border-neutral-100 courier-rounded-lg courier-shadow-sm courier-z-[999]",tabIndex:-1,"data-placement":l["data-placement"],"data-reference-hidden":l["data-reference-hidden"],"data-escaped":l["data-escaped"],children:[r&&br("span",{className:"courier-text-xs courier-font-medium courier-text-neutral-500",children:r}),o&&br("span",{className:"courier-flex courier-items-center courier-gap-0.5",children:o.map(s=>br(Lh,{children:s},s))})]}),[o,r]);return t?br(Mh,{...n,delay:500,offset:[0,8],touch:!1,zIndex:99999,appendTo:document.body,trigger:"mouseenter focus",showOnCreate:!1,render:i,animation:!1,children:br("span",{children:e})}):br(Eh,{children:e})},"Tooltip");import{jsx as Yi}from"react/jsx-runtime";var Hd=Gs(({shouldShowContent:e=!0,children:t,isVertical:r=!1,className:o,...n},i)=>{let l=I("courier-text-foreground courier-inline-flex courier-h-full courier-leading-none courier-gap-0.5",r?"courier-flex-col courier-p-2":"courier-flex-row courier-p-0.5 courier-items-center",o);return e&&Yi(zs,{className:l,...n,ref:i,children:t})});Hd.displayName="Toolbar";var Dd=Gs(({horizontal:e,className:t,...r},o)=>{let n=I("courier-bg-neutral-200 dark:courier-bg-neutral-800",e?"courier-w-full courier-min-w-[1.5rem] courier-h-[1px] courier-my-1 first:courier-mt-0 last:courier-mt-0":"courier-h-full courier-min-h-[1.5rem] courier-w-[1px] courier-mx-1 first:courier-ml-0 last:courier-mr-0",t);return Yi("div",{className:n,ref:o,...r})});Dd.displayName="Toolbar.Divider";var Vd=Gs(({children:e,buttonSize:t="icon",variant:r="ghost",className:o,tooltip:n,tooltipShortcut:i,...l},s)=>{let c=I("courier-gap-1 courier-min-w-[2rem] courier-w-auto",o),u=Yi(xe,{className:c,variant:r,buttonSize:t,ref:s,...l,children:e});return n?Yi(Bd,{title:n,shortcut:i,children:u}):u});Vd.displayName="ToolbarButton";var Qi={Wrapper:Hd,Divider:Dd,Button:Vd};import{ChevronDown as Ah}from"lucide-react";import{useMemo as Sh}from"react";import{Fragment as Bh,jsx as _r,jsxs as Fd}from"react/jsx-runtime";var Rh=a(e=>e.type==="option","isOption"),Od=a(({options:e,containerRef:t})=>{let r=Sh(()=>e.find(o=>o.type==="option"&&o.isActive()),[e]);return Fd(ti,{children:[_r(ri,{asChild:!0,children:Fd(xe,{variant:"ghost",className:"courier-flex courier-items-center courier-justify-center courier-font-normal !courier-py-[5px]",children:[(r==null?void 0:r.label)||"Normal text",_r(Ah,{className:"courier-w-3 courier-h-3"})]})}),_r(cn,{portalProps:{container:(t==null?void 0:t.current)||void 0},children:e.map(o=>{if(Rh(o))return _r(un,{onClick:o.onClick,className:o.isActive()?"courier-bg-accent courier-text-foreground":"",children:o.id.startsWith("heading")?_r(Bh,{children:o.id==="heading1"?_r("h1",{className:"courier-text-2xl courier-font-bold",children:o.label}):o.id==="heading2"?_r("h2",{className:"courier-text-xl courier-font-bold",children:o.label}):o.id==="heading3"?_r("h3",{className:"courier-text-lg courier-font-bold",children:o.label}):o.label}):o.label},o.id)})})]})},"ContentTypePicker");import{useEditorState as Hh}from"@tiptap/react";var Wd=a(e=>Hh({editor:e,selector:t=>[{label:"Normal text",onClick:()=>{t.editor.chain().focus().setNode("paragraph").run()},id:"paragraph",disabled:()=>!t.editor.can().setParagraph(),isActive:()=>t.editor.isActive("paragraph")&&!t.editor.isActive("heading"),type:"option"},{label:"Heading 1",onClick:()=>{t.editor.chain().focus().setNode("heading",{level:1}).run()},id:"heading1",disabled:()=>!t.editor.can().setHeading({level:1}),isActive:()=>t.editor.isActive("heading",{level:1}),type:"option"},{label:"Heading 2",onClick:()=>{t.editor.chain().focus().setNode("heading",{level:2}).run()},id:"heading2",disabled:()=>!t.editor.can().setHeading({level:2}),isActive:()=>t.editor.isActive("heading",{level:2}),type:"option"},{label:"Heading 3",onClick:()=>{t.editor.chain().focus().setNode("heading",{level:3}).run()},id:"heading3",disabled:()=>!t.editor.can().setHeading({level:3}),isActive:()=>t.editor.isActive("heading",{level:3}),type:"option"}]}),"useTextmenuContentTypes");import{jsx as nt,jsxs as Qh}from"react/jsx-runtime";var Xh=$d(Qi.Button),Yh=$d(Od),Js=a(({editor:e,config:t})=>{var A;let r=Ci(e),o=Xi(e),n=Wd(e),i=Gh(null),l=Ks(fi),s=Ks(be),c=s==null?void 0:s.type.name,u=Ks(Bc),[d,p]=Kh(()=>{let{selection:R}=e.state;return{from:R.from,to:R.to,empty:R.empty}});Jh(()=>{let R=a(()=>{let{selection:k}=e.state;p({from:k.from,to:k.to,empty:k.empty})},"updateSelection");return e.on("selectionUpdate",R),e.on("transaction",R),()=>{e.off("selectionUpdate",R),e.off("transaction",R)}},[e]);let g=zd(()=>!d.empty&&d.from!==d.to,[d]),b=zd(()=>t||u(c||"",g),[t,u,c,g]),v=a(()=>{let{selection:R}=e.state;if(!(R.empty&&!o.isLink&&!e.can().setLink({href:""})))if(o.isLink){let k=e.state.tr.setMeta("showLinkForm",{from:R.from,to:R.to});e.view.dispatch(k)}else{let k=e.state.tr.setMeta("showLinkForm",{from:R.from,to:R.to});e.view.dispatch(k)}},"handleLinkToggle"),f=a(()=>{if(l.ref){let x=l.ref,E=x.value,H=l.caretPosition||x.selectionStart||0,V=E.substring(0,H),j=E.substring(H),J=`${V}{{${j}`,ee=H+2;x.focus();let fe=new Event("input",{bubbles:!0,cancelable:!0});if(Object.defineProperty(fe,"target",{writable:!1,value:{...x,value:J}}),x.value=J,x.dispatchEvent(fe),x.setSelectionRange(ee,ee),x.getBoundingClientRect()){let Ve=J.slice(0,ee),ae=document.createElement("span");ae.style.font=window.getComputedStyle(x).font,ae.style.whiteSpace="pre-wrap",ae.textContent=Ve,document.body.appendChild(ae);let ye=ae.offsetWidth;document.body.removeChild(ae);let Ne=parseInt(window.getComputedStyle(x).lineHeight),ge=Ve.split(`
167
+ `).length-1,Re=new CustomEvent("showVariableSuggestions",{detail:{cursorPosition:{left:Math.min(ye%x.offsetWidth,x.offsetWidth-200),top:ge*Ne+30}},bubbles:!0});x.dispatchEvent(Re)}return}let{state:R,dispatch:k}=e.view,{tr:M}=R;M.insertText("{{"),k(M),e.commands.focus();let B=e.state.tr.setMeta("showVariableSuggestions",{from:e.state.selection.from,to:e.state.selection.to});e.view.dispatch(B)},"handleVariableClick"),y=a((R,k,M,B,x,E,H)=>{let V=b[R];return!V||V.state==="hidden"?null:nt(Xh,{tooltip:M,tooltipShortcut:E,onClick:B,active:x,disabled:V.state==="disabled",...H,children:k},R)},"renderButton"),h=a((R,k)=>{let M=R.filter(B=>!!B);return M.length>0?nt("div",{className:"courier-flex courier-items-center courier-gap-0.5",children:M},k):null},"renderGroup"),L=h([((A=b.contentType)==null?void 0:A.state)==="enabled"&&nt(Yh,{options:n,containerRef:i},"content-type")],"content-type-group"),w=h([y("bold",nt(Wh,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Bold",r.onBold,o.isBold,["Mod","B"]),y("italic",nt($h,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Italic",r.onItalic,o.isItalic,["Mod","I"]),y("underline",nt(qh,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Underline",r.onUnderline,o.isUnderline,["Mod","U"]),y("strike",nt(_h,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Strikethrough",r.onStrike,o.isStrike,["Mod","Shift","S"])],"text-style-group"),m=h([y("alignLeft",nt(Fh,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Align left",r.onAlignLeft,o.isAlignLeft,["Shift","Mod","L"]),y("alignCenter",nt(Dh,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Align center",r.onAlignCenter,o.isAlignCenter,["Shift","Mod","E"]),y("alignRight",nt(Oh,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Align right",r.onAlignRight,o.isAlignRight,["Shift","Mod","R"]),y("alignJustify",nt(Vh,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Justify",r.onAlignJustify,o.isAlignJustify,["Shift","Mod","J"])],"alignment-group"),C=h([y("quote",nt(Zh,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Quote",r.onQuote,o.isQuote,["Mod","Shift","B"])],"block-style-group"),P=h([y("link",nt(Uh,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Link",v,o.isLink,["Mod","K"]),y("variable",nt(zh,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Variable",f,!1,["Mod","V"],{"data-variable-button":"true"})],"insert-group");return nt(Qi.Wrapper,{ref:i,className:"courier-border-b rounded-b-none rounded-t-sm !courier-shadow-md courier-justify-center courier-rounded-lg",children:[L,w,m,C,P].filter(Boolean).map((R,k)=>Qh(jh,{children:[R,k<[L,w,m,C,P].filter(Boolean).length-1&&nt(Qi.Divider,{})]},`item-${k}`))})},"TextMenu");import{jsx as Ud}from"react/jsx-runtime";var vr=a(({config:e})=>{let{editor:t}=t2(),r=Xi(t);return t?Ud(e2,{editor:t,tippyOptions:{appendTo:o=>{var n;return(n=o.closest(".bubble-text-menu-container"))!=null?n:o},getReferenceClientRect:()=>{var l,s,c,u;let o=(c=(s=(l=t==null?void 0:t.state)==null?void 0:l.selection)==null?void 0:s.from)!=null?c:0,n=(u=t==null?void 0:t.view)==null?void 0:u.domAtPos(o),i=(n==null?void 0:n.node.parentNode).getBoundingClientRect();return{width:i==null?void 0:i.width,height:i==null?void 0:i.height,left:(i==null?void 0:i.left)-12,right:i==null?void 0:i.right,top:i==null?void 0:i.top,bottom:i==null?void 0:i.bottom,x:i==null?void 0:i.left,y:i==null?void 0:i.top,toJSON:()=>({})}},placement:"top",offset:[0,12]},shouldShow:r.shouldShow,updateDelay:100,children:t&&Ud(Js,{editor:t,config:e})}):null},"BubbleTextMenu");import{TextSelection as r2}from"@tiptap/pm/state";import{EditorProvider as o2,Extension as n2,useCurrentEditor as i2}from"@tiptap/react";import{useSetAtom as _d}from"jotai";import{memo as a2,useEffect as qd,useMemo as Zd,useRef as s2}from"react";import{jsx as Ot,jsxs as Xs}from"react/jsx-runtime";var l2=a(()=>{let{editor:e}=i2(),t=_d(At);return qd(()=>{e&&(t(e),setTimeout(()=>{e.commands.blur()},1))},[e,t]),null},"EditorContent"),c2=a(({variables:e,facebookLink:t,linkedinLink:r,instagramLink:o,mediumLink:n,xLink:i,readOnly:l=!1,value:s,onUpdate:c})=>{let u=s2(!1),d=_d(be),p=Zd(()=>({urls:{unsubscribe:!0,preferences:!0},...e}),[e]),g=n2.create({name:"escapeHandler",addKeyboardShortcuts(){return{Escape:({editor:v})=>{let{state:f,dispatch:y}=v.view;return y(f.tr.setSelection(r2.create(f.doc,f.selection.$anchor.pos))),d&&d(null),!1}}}});qd(()=>(u.current=!0,()=>{u.current=!1}),[]);let b=Zd(()=>[...hr({variables:p,setSelectedNode:d}),g].filter(v=>v!==void 0),[g,p,d]);return Xs("div",{className:"courier-flex courier-flex-row courier-gap-6 courier-justify-between courier-items-start",children:[Xs(o2,{content:Wl(s!=null?s:""),extensions:b,editable:!l,autofocus:!l,onUpdate:c,editorContainerProps:{className:I("courier-py-2 courier-flex-grow",l&&"courier-brand-editor-readonly")},immediatelyRender:!1,children:[Ot(l2,{}),Ot(vr,{})]}),Xs("div",{className:"courier-flex courier-justify-end courier-items-center courier-gap-2 courier-mt-3",children:[t&&Ot("a",{href:t,target:"_blank",rel:"noopener noreferrer",children:Ot(hn,{className:"courier-w-5 courier-h-5"})}),r&&Ot("a",{href:r,target:"_blank",rel:"noopener noreferrer",children:Ot(vn,{className:"courier-w-5 courier-h-5"})}),o&&Ot("a",{href:o,target:"_blank",rel:"noopener noreferrer",children:Ot(bn,{className:"courier-w-5 courier-h-5"})}),n&&Ot("a",{href:n,target:"_blank",rel:"noopener noreferrer",children:Ot(yn,{className:"courier-w-5 courier-h-5"})}),i&&Ot("a",{href:i,target:"_blank",rel:"noopener noreferrer",children:Ot(wn,{className:"courier-w-5 courier-h-5"})})]})]})},"BrandFooterComponent"),zn=a2(c2);import{Fragment as u2,jsx as Ko,jsxs as ea}from"react/jsx-runtime";var jd=a(({value:e,icon:t,...r})=>Ko(Ie,{value:e,...r,className:"!courier-w-10 !courier-h-6 [&_svg]:!courier-size-5 [&_svg]:courier-fill-accent hover:courier-bg-transparent courier-rounded-sm data-[state=on]:courier-bg-background [&_svg]:data-[state=on]:courier-fill-foreground",children:t}),"PreviewItem"),Ys=a(({previewMode:e,togglePreviewMode:t})=>ea("div",{className:"courier-sticky courier-bottom-0 courier-mt-auto courier-self-center courier-bg-background courier-px-3 courier-py-2 courier-shadow-lg courier-border courier-border-border courier-rounded-md courier-z-10 courier-flex courier-items-center courier-gap-2",children:[e&&ea(u2,{children:[ea(Rt,{type:"single",value:e,onValueChange:r=>{r!==""&&t(r)},className:"courier-w-full courier-rounded-md !courier-p-0.5 courier-bg-[#3B82F6] !courier-gap-0",children:[Ko(jd,{value:"desktop",icon:Ko(za,{})}),Ko(jd,{value:"mobile",icon:Ko(ja,{})})]}),Ko("div",{className:"courier-mx-4 courier-w-px courier-h-6 courier-bg-border"})]}),ea(xe,{variant:"link",onClick:()=>t(),children:[e?"Exit":"View"," Preview"]})]}),"PreviewPanel");import{SortableContext as rp}from"@dnd-kit/sortable";import{forwardRef as op}from"react";import{Extension as d2}from"@tiptap/core";import{TextSelection as p2}from"@tiptap/pm/state";import{EditorProvider as m2,useCurrentEditor as f2}from"@tiptap/react";import{useAtom as Kd,useAtomValue as Un,useSetAtom as Qs}from"jotai";import{useCallback as Jo,useEffect as $n,useMemo as g2,useRef as Jd}from"react";import{jsx as Gd,jsxs as v2}from"react/jsx-runtime";var h2=a(({value:e})=>{let{editor:t}=f2(),[r,o]=Kd(ke),n=Un(Xr),i=Un(be),l=Qs(ei),s=Jd(!1),c=Un(pe),u=Un(Ce);return $n(()=>{if(t){l(t);let d=Wt(t.getJSON()),p=e?Wt(e):[];e&&JSON.stringify(p)!==JSON.stringify(d)&&setTimeout(()=>{t.commands.setContent(e)},1)}},[t,e,l]),$n(()=>{if(!(t&&n!==null)||c!==!1)return;let d=Wt(t.getJSON()),p=zt(r,{elements:d,channel:"email",meta:{subject:n}});JSON.stringify(r)!==JSON.stringify(p)&&o(p)},[u,t,n,o,c,r]),$n(()=>()=>{t&&!t.isDestroyed&&t.setEditable(!0)},[t]),$n(()=>{t&&s.current&&t.commands.updateSelectionState(i)},[t,i]),$n(()=>(s.current=!0,()=>{s.current=!1}),[]),null},"EditorContent"),b2=a(({value:e,readOnly:t=!1,variables:r,onDestroy:o,onUpdate:n,subject:i})=>{let l=Qs(gi),s=Jd(),[c,u]=Kd(ke),d=Un(Xr),p=i!=null?i:d,g=Qs(be),b=d2.create({name:"escapeHandler",addKeyboardShortcuts(){return{Escape:({editor:C})=>{let{state:P,dispatch:A}=C.view;return A(P.tr.setSelection(p2.create(P.doc,P.selection.$anchor.pos))),g&&g(null),!1}}}}),v=Jo(({editor:C})=>{n==null||n(C),window.editor=C,g&&setTimeout(()=>{g(null)},100)},[g,n]),f=Jo(({editor:C})=>{if(!c)return;let P=Wt(C.getJSON()),A=zt(c,{elements:P,channel:"email",meta:{subject:p}});JSON.stringify(c)!==JSON.stringify(A)&&u(A),n==null||n(C),window.editor=C},[c,p,u,n]),y=Jo(({editor:C})=>{let{selection:P}=C.state,{$anchor:A}=P,k=P.$head.marks().find(x=>x.type.name==="link");k||C.isActive("link")?l({mark:k}):l(null);let M=A.depth,B=null;for(;M>0;){let x=A.node(M);if(x.type.name==="paragraph"||x.type.name==="heading"){B=x;break}M--}B&&g(B)},[l,g]),h=Jo(({editor:C,transaction:P})=>{let A=P==null?void 0:P.getMeta("showLinkForm");if(A){let{selection:R}=C.state,M=R.$head.marks().find(B=>B.type.name==="link");l({mark:M,link:{from:A.from,to:A.to}})}},[l]),L=Jo(()=>{s.current&&clearTimeout(s.current),o==null||o(),window.editor=null},[o]),w=Jo(C=>{var M;let P=(M=C.view)==null?void 0:M.editor;if(!P||!P.isEditable)return;let A=C.target,R=P.view.posAtDOM(A,0),k=P.state.doc.resolve(R).node();k.type.name==="paragraph"&&g(k)},[g]),m=g2(()=>[...hr({variables:r,setSelectedNode:g}),b].filter(C=>C!==void 0),[b,r,g]);return v2(m2,{content:e,extensions:m,editable:!t,autofocus:!t,onCreate:v,onUpdate:f,onSelectionUpdate:y,onTransaction:h,onDestroy:L,editorContainerProps:{onClick:w},immediatelyRender:!1,children:[Gd(h2,{value:e}),Gd(vr,{})]})},"EmailEditor"),el=b2;import{useAtomValue as Qd,useSetAtom as k2}from"jotai";import{GripVertical as P2}from"lucide-react";import{useSortable as y2}from"@dnd-kit/sortable";import{forwardRef as x2,useEffect as Xd,useState as C2}from"react";import{jsx as tl}from"react/jsx-runtime";function w2(){let[e,t]=C2(!1);return Xd(()=>{let r=setTimeout(()=>t(!0),500);return()=>clearTimeout(r)},[]),e}a(w2,"useMountStatus");var Yd=a(({children:e,id:t,className:r})=>{let{setNodeRef:o,setActivatorNodeRef:n,listeners:i,isDragging:l,transform:s,transition:c}=y2({id:t}),u=w2();return tl(T2,{ref:o,id:t,transition:c,transform:s,fadeIn:l&&!u,listeners:i,className:r,handleProps:{ref:n},children:e})},"SideBarSortableItemWrapper"),T2=x2(({children:e,className:t,dragOverlay:r,handleProps:o,listeners:n,id:i},l)=>(Xd(()=>{if(r)return document.body.style.cursor="grabbing",()=>{document.body.style.cursor=""}},[r]),tl("div",{ref:l,"data-cypress":"draggable-item","data-node-view-wrapper":!0,"data-id":i,className:I(t,"courier-relative"),children:tl("div",{...o,...n,children:e})})));import{Fragment as M2,jsx as Je,jsxs as Xo}from"react/jsx-runtime";var rl=a(({items:e,brandEditor:t,label:r})=>{var l,s;let o=Qd(Ce),n=k2(Ro),i=Qd(et);return Xo("div",{className:"courier-flex courier-flex-col courier-h-full",children:[Xo("div",{className:"courier-flex-1",children:[r&&Xo(M2,{children:[Je("p",{children:r}),Je(ce,{className:"courier-my-4"})]}),Je("div",{className:"courier-flex courier-flex-col courier-gap-4 courier-w-full",children:e.map(c=>Je(Yd,{id:c.toString(),children:Xo("div",{className:I("courier-rounded-md courier-border courier-border-border courier-flex courier-flex-row courier-items-center courier-gap-1 courier-bg-white courier-cursor-grab courier-opacity-[0.999] courier-px-3 courier-py-2 courier-select-none"),children:[Je(P2,{strokeWidth:1,className:"courier-w-4 courier-stroke-ring courier-fill-ring"}),c==="heading"&&Je(Do,{draggable:!0}),c==="text"&&Je(Oo,{draggable:!0}),c==="image"&&Je(Vo,{draggable:!0}),c==="spacer"&&Je(Fo,{draggable:!0}),c==="divider"&&Je(Ho,{draggable:!0}),c==="button"&&Je(Bo,{draggable:!0})]})},c))})]}),t&&Xo("div",{className:"courier-mt-auto courier-pt-4",children:[Je(ce,{className:"courier-mb-4 -courier-mx-4"}),(s=(l=o==null?void 0:o.data)==null?void 0:l.tenant)!=null&&s.brand?Je("div",{className:"courier-flex courier-flex-row courier-gap-2 courier-items-center courier-justify-end courier-w-full",children:Je(xe,{variant:"link",className:"courier-underline",onClick:()=>n("brand"),disabled:!!i,children:"Edit brand"})}):Xo("div",{className:"courier-flex courier-flex-col courier-gap-2",children:[Je("h3",{className:"courier-text-md courier-font-medium",children:"Customize brand theme"}),Je("p",{className:"courier-text-sm courier-text-muted-foreground",children:"Customize header and footer to apply to the template."}),Je(xe,{variant:"primary",className:"courier-w-fit courier-mt-2",onClick:()=>n("brand"),children:"Customize"})]})]})]})},"SideBar");import{useAtomValue as N2}from"jotai";import{jsx as Yo,jsxs as L2}from"react/jsx-runtime";var ol=a(({element:e,editor:t})=>{var i,l;let r=N2(ts);if(!e)return null;if(r!=null&&r.link||((i=r==null?void 0:r.mark)==null?void 0:i.type.name)==="link"&&((l=e.marks)!=null&&l.some(s=>s.type.name==="link")))return Yo(Au,{editor:t,mark:r==null?void 0:r.mark,pendingLink:r==null?void 0:r.link});let o=t==null?void 0:t.isActive("blockquote"),n=a(()=>{if(!t)return;let{$anchor:s}=t.state.selection,c=s.depth;for(;c>0;){let u=s.node(c);if(u.type.name==="blockquote")return u;c--}},"getBlockquoteElement");return L2("div",{className:"courier-flex courier-flex-col courier-gap-4",children:[e.type.name==="button"&&Yo(nu,{element:e,editor:t},e.attrs.id),e.type.name==="divider"&&Yo(uu,{element:e,editor:t},e.attrs.id),["paragraph","heading"].includes(e.type.name)&&!o&&Yo(vu,{element:e,editor:t},e.attrs.id),e.type.name==="imageBlock"&&Yo(Mu,{element:e,editor:t},e.attrs.id),(e.type.name==="blockquote"||e.type.name==="paragraph"&&o||e.type.name==="heading"&&o)&&Yo(Kc,{element:n()||e,editor:t},e.attrs.id)]})},"SideBarItemDetails");import{forwardRef as ep}from"react";import{jsx as tp}from"react/jsx-runtime";var nl=ep(({children:e,previewMode:t,className:r,...o},n)=>tp("div",{className:I("courier-flex courier-flex-1 courier-overflow-hidden",t&&"courier-editor-preview-mode",t==="mobile"&&"courier-editor-preview-mode-mobile",r),...o,ref:n,children:e})),il=ep(({children:e,className:t,previewMode:r,...o},n)=>tp("div",{style:{padding:12},className:I("courier-editor-sidebar",r?"courier-opacity-0 courier-pointer-events-none courier-translate-x-full courier-w-0 courier-flex-shrink-0":"courier-opacity-100 courier-translate-x-0 courier-w-64 courier-flex-shrink-0",t),...o,ref:n,children:e}));import{jsx as Xe,jsxs as Qo}from"react/jsx-runtime";var np=op(({children:e,className:t,...r},o)=>Xe("div",{className:I("courier-editor-container courier-relative",t),...r,ref:o,children:e})),ip=op(({children:e,previewMode:t,...r},o)=>Xe("div",{className:I("courier-editor-main courier-transition-all courier-duration-300 courier-ease-in-out",t&&"courier-max-w-4xl courier-mx-auto"),...r,ref:o,children:e})),ap=a(({variables:e,theme:t,isLoading:r,hidePublish:o,channels:n,brandEditor:i,routing:l})=>Xe(Ki,{variables:e,theme:t,isLoading:r,hidePublish:o,channels:n,brandEditor:i,routing:l,render:({subject:s,handleSubjectChange:c,selectedNode:u,setSelectedNode:d,previewMode:p,emailEditor:g,ref:b,isBrandApply:v,brandSettings:f,items:y,content:h,strategy:L,syncEditorItems:w,brandEditorContent:m,tenantData:C,togglePreviewMode:P})=>{var A,R,k,M,B,x;return Qo(nl,{previewMode:p,children:[Qo("div",{className:"courier-flex courier-flex-col courier-flex-1",children:[Qo("div",{className:"courier-bg-primary courier-h-12 courier-flex courier-items-center courier-gap-2 courier-px-4 courier-border-b",children:[Xe("h4",{className:"courier-text-sm",children:"Subject: "}),Xe(re,{value:s!=null?s:"",onChange:c,onFocus:()=>d(null),className:"!courier-bg-background read-only:courier-cursor-default read-only:courier-border-transparent md:courier-text-md courier-py-1 courier-border-transparent !courier-border-none courier-font-medium",placeholder:"Write subject...",readOnly:p!==void 0})]}),Qo(np,{ref:b,children:[Qo(ip,{previewMode:p,children:[v&&Qo("div",{className:I("courier-py-5 courier-px-9 courier-pb-0 courier-relative courier-overflow-hidden courier-flex courier-flex-col courier-items-start",(f==null?void 0:f.headerStyle)==="border"&&"courier-pt-6"),children:[(f==null?void 0:f.headerStyle)==="border"&&Xe("div",{className:"courier-absolute courier-top-0 courier-left-0 courier-right-0 courier-h-2",style:{backgroundColor:f==null?void 0:f.brandColor}}),(f==null?void 0:f.logo)&&Xe("img",{src:f.logo,alt:"Brand logo",className:"courier-w-auto courier-max-w-36 courier-object-contain courier-cursor-default"})]}),Xe(rp,{items:y.Editor,strategy:L,children:h&&Xe(el,{value:h,onUpdate:w})}),v&&C&&Xe("div",{className:"courier-py-5 courier-px-9 courier-pt-0 courier-flex courier-flex-col",children:Xe(zn,{readOnly:!0,value:m!=null?m:(x=(B=(M=(k=(R=(A=C==null?void 0:C.data)==null?void 0:A.tenant)==null?void 0:R.brand)==null?void 0:k.settings)==null?void 0:M.email)==null?void 0:B.footer)==null?void 0:x.markdown,variables:e,facebookLink:f==null?void 0:f.facebookLink,linkedinLink:f==null?void 0:f.linkedinLink,instagramLink:f==null?void 0:f.instagramLink,mediumLink:f==null?void 0:f.mediumLink,xLink:f==null?void 0:f.xLink})})]}),Xe(Ys,{previewMode:p,togglePreviewMode:P})]})]}),Xe(il,{previewMode:p,children:Xe("div",{className:"courier-p-1 courier-h-full",children:u?Xe(ol,{element:u,editor:g}):Xe(rp,{items:y.Sidebar,strategy:L,children:Xe(rl,{items:y.Sidebar,brandEditor:i,label:"Blocks library"})})})})]})}}),"EmailLayout");import{useCurrentEditor as I2}from"@tiptap/react";import{useAtom as cp,useAtomValue as E2,useSetAtom as up}from"jotai";import{forwardRef as A2,memo as S2,useCallback as R2,useEffect as sl,useMemo as al,useRef as sp}from"react";import{jsx as lp}from"react/jsx-runtime";var ta=[{type:"text",content:`
186
168
  `,text_style:"h2"},{type:"text",content:`
187
- `}],i2={contentType:{state:"hidden"},bold:{state:"hidden"},italic:{state:"hidden"},underline:{state:"hidden"},strike:{state:"hidden"},alignLeft:{state:"hidden"},alignCenter:{state:"hidden"},alignRight:{state:"hidden"},alignJustify:{state:"hidden"},quote:{state:"hidden"},link:{state:"hidden"},variable:{state:"enabled"}},a2=t2(({theme:e,hidePublish:t,variables:r,readOnly:o,channels:n,routing:i},a)=>{let c=e2(be),l=Od(!0),u=Od(!1),d=Wd(ve),[p,m]=Qh(Ae),h=Vs(()=>({urls:{unsubscribe:!0,preferences:!0},...r}),[r]);zd(()=>(u.current=!0,()=>{u.current=!1}),[]);let b=Vs(()=>[...yr({variables:h,setSelectedNode:d})].filter(k=>k!==void 0),[h,d]),g=o2(({editor:k})=>{if(!p)return;let R=Zt(k.getJSON()),T=qt(p,{elements:R,channel:"push"});JSON.stringify(p)!==JSON.stringify(T)&&m(T)},[p,m]),v=Vs(()=>{let k=p==null?void 0:p.elements.find(R=>R.type==="channel"&&R.channel==="push");return k||(k={type:"channel",channel:"push",elements:Os}),Pr({version:"2022-01-01",elements:[k]})},[p]);return yo(lr,{theme:e,isLoading:!!(c&&l.current),Header:yo(jr,{hidePublish:t,channels:n,routing:i}),ref:a,children:yo("div",{className:"courier-flex courier-flex-col courier-items-center courier-py-8",children:Fs(Xi,{children:[Fs("div",{className:"courier-px-4 courier-py-2 courier-text-[#A3A3A3] courier-text-center courier-my-8",children:[yo("p",{className:"courier-text-lg courier-font-medium",children:new Date().toLocaleDateString(void 0,{weekday:"long",month:"long",day:"numeric"})}),yo("p",{className:"courier-text-5xl courier-font-semibold courier-mt-1",children:new Date().toLocaleTimeString(void 0,{hour:"numeric",minute:"2-digit",hour12:!0})})]}),Fs(Xh,{content:v,extensions:b,editable:!o,autofocus:!o,onUpdate:g,editorContainerProps:{className:E("courier-push-editor")},immediatelyRender:!1,children:[yo(n2,{}),yo(Cr,{config:i2})]})]})})})}),$d=r2(a2);import{EditorProvider as g2,useCurrentEditor as h2}from"@tiptap/react";import{useAtom as jd,useAtomValue as b2,useSetAtom as Gd}from"jotai";import{forwardRef as v2,memo as y2,useCallback as x2,useEffect as zs,useMemo as Ws,useRef as _d}from"react";import{zodResolver as s2}from"@hookform/resolvers/zod";import{useAtom as c2}from"jotai";import{memo as l2,useCallback as Ud,useEffect as u2,useRef as d2}from"react";import{useForm as p2}from"react-hook-form";import{z as Hr}from"zod";import{Fragment as Zd,jsx as ee,jsxs as Nt}from"react/jsx-runtime";var m2=Hr.object({enableButton:Hr.boolean().default(!0),buttonStyle:Hr.enum(["filled","outlined"]).default("filled"),buttonLabel:Hr.string().min(1,"Button label is required"),buttonUrl:Hr.string().default(""),enableSecondaryButton:Hr.boolean().default(!1),secondaryButtonStyle:Hr.enum(["filled","outlined"]).default("outlined"),secondaryButtonLabel:Hr.string().default("Learn more"),secondaryButtonUrl:Hr.string().default("")}),f2=s(()=>{let[e,t]=c2(Ae),r=d2(!1),o=p2({resolver:s2(m2),defaultValues:{enableButton:!1,buttonStyle:"filled",buttonLabel:"Try now",buttonUrl:"",enableSecondaryButton:!1,secondaryButtonStyle:"outlined",secondaryButtonLabel:"Learn more",secondaryButtonUrl:""},mode:"onChange"});u2(()=>{if(!e||r.current)return;r.current=!0;let a=e.elements.find(l=>l.type==="channel"&&l.channel==="inbox");if(!a||!a.elements){r.current=!1;return}let c=a.elements.filter(l=>l.type==="action");if(c.length>0){let l=c[0],u=c[1];o.setValue("enableButton",!0),o.setValue("buttonLabel",l.content||"Register"),o.setValue("buttonUrl",l.href||""),o.setValue("buttonStyle",l.style==="link"?"outlined":"filled"),u?(o.setValue("enableSecondaryButton",!0),o.setValue("secondaryButtonLabel",u.content||"Learn more"),o.setValue("secondaryButtonUrl",u.href||""),o.setValue("secondaryButtonStyle",u.style==="link"?"outlined":"filled")):o.setValue("enableSecondaryButton",!1)}else o.setValue("enableButton",!1),o.setValue("enableSecondaryButton",!1);r.current=!1},[e,o]);let n=Ud(a=>{if(!e||r.current)return;let c=e.elements.find(b=>b.type==="channel"&&b.channel==="inbox");c||(c={type:"channel",channel:"inbox",elements:[{type:"text",content:`
169
+ `},{type:"action",content:"Register",align:"left",href:""}],dp=a(e=>{let t=e==null?void 0:e.elements.find(r=>r.type==="channel"&&r.channel==="inbox");return t||(t={type:"channel",channel:"inbox",elements:ta}),t},"getOrCreateInboxElement"),pp={contentType:{state:"hidden"},bold:{state:"hidden"},italic:{state:"hidden"},underline:{state:"hidden"},strike:{state:"hidden"},alignLeft:{state:"hidden"},alignCenter:{state:"hidden"},alignRight:{state:"hidden"},alignJustify:{state:"hidden"},quote:{state:"hidden"},link:{state:"hidden"},variable:{state:"enabled"}},mp=a(()=>{let{editor:e}=I2(),t=up(At),[r]=cp(ke);return sl(()=>{e&&(t(e),setTimeout(()=>{e.commands.blur()},1))},[e,t]),sl(()=>{if(!e||!r||e.isFocused)return;let o=dp(r),n=kr({version:"2022-01-01",elements:[o]},{channel:"inbox"}),i=e.getJSON();JSON.stringify(i)!==JSON.stringify(n)&&setTimeout(()=>{e.isFocused||e.commands.setContent(n)},1)},[e,r]),null},"InboxEditorContent"),B2=A2(({theme:e,hidePublish:t,variables:r,readOnly:o,channels:n,routing:i,headerRenderer:l,render:s},c)=>{let u=E2(pe),d=sp(!0),p=sp(!1),g=up(be),[b,v]=cp(ke),f=al(()=>({urls:{unsubscribe:!0,preferences:!0},...r}),[r]);sl(()=>(p.current=!0,()=>{p.current=!1}),[]);let y=al(()=>[...hr({variables:f,setSelectedNode:g})].filter(w=>w!==void 0),[f,g]),h=R2(({editor:w})=>{if(!b||!w)return;let m=w.getJSON(),C=Wt(m),P=zt(b,{elements:C,channel:"inbox"}),A=JSON.stringify(b.elements),R=JSON.stringify(P.elements);A!==R&&setTimeout(()=>{p.current&&v(P)},100)},[b,v]),L=al(()=>{let w=dp(b);return kr({version:"2022-01-01",elements:[w]},{channel:"inbox"})},[b]);return lp(sr,{theme:e,isLoading:!!(u&&d.current),Header:l?l({hidePublish:t,channels:n,routing:i}):lp(Zr,{hidePublish:t,channels:n,routing:i}),ref:c,children:s==null?void 0:s({content:L,extensions:y,editable:!o,autofocus:!o,onUpdate:h})})}),ra=S2(B2);import{EditorProvider as H2}from"@tiptap/react";import{jsx as wo,jsxs as Zn}from"react/jsx-runtime";var ll=a(({content:e,extensions:t,editable:r,autofocus:o,onUpdate:n})=>Zn("div",{className:"courier-py-2 courier-border courier-w-[360px] courier-h-[500px] courier-rounded-3xl courier-bg-background",style:{maskImage:"linear-gradient(180deg, #000 80%, transparent)",WebkitMaskImage:"linear-gradient(180deg, #000 80%, transparent)"},children:[Zn("div",{className:"courier-my-3 courier-mx-4 courier-flex courier-items-center courier-gap-2 courier-justify-between",children:[Zn("div",{className:"courier-flex courier-items-center courier-gap-3",children:[wo(_a,{}),wo("span",{className:"courier-text-xl courier-font-medium",children:"Inbox"})]}),Zn("div",{className:"courier-flex courier-items-center courier-gap-4",children:[wo(Za,{}),wo(Ua,{}),wo(Ga,{})]})]}),Zn(H2,{content:e,extensions:t,editable:r,autofocus:o,onUpdate:n,editorContainerProps:{className:I("courier-inbox-editor")},immediatelyRender:!1,children:[wo(mp,{}),wo(vr,{config:pp})]})]}),"InboxEditor");import{zodResolver as D2}from"@hookform/resolvers/zod";import{useAtom as V2}from"jotai";import{memo as F2,useCallback as fp,useEffect as O2,useRef as W2}from"react";import{useForm as z2}from"react-hook-form";import{z as Br}from"zod";import{Fragment as gp,jsx as te,jsxs as Pt}from"react/jsx-runtime";var $2=Br.object({enableButton:Br.boolean().default(!0),buttonStyle:Br.enum(["filled","outlined"]).default("filled"),buttonLabel:Br.string().min(1,"Button label is required"),buttonUrl:Br.string().default(""),enableSecondaryButton:Br.boolean().default(!1),secondaryButtonStyle:Br.enum(["filled","outlined"]).default("outlined"),secondaryButtonLabel:Br.string().default("Learn more"),secondaryButtonUrl:Br.string().default("")}),U2=a(()=>{let[e,t]=V2(ke),r=W2(!1),o=z2({resolver:D2($2),defaultValues:{enableButton:!1,buttonStyle:"filled",buttonLabel:"Try now",buttonUrl:"",enableSecondaryButton:!1,secondaryButtonStyle:"outlined",secondaryButtonLabel:"Learn more",secondaryButtonUrl:""},mode:"onChange"});O2(()=>{if(!e||r.current)return;r.current=!0;let l=e.elements.find(c=>c.type==="channel"&&c.channel==="inbox");if(!l||!l.elements){r.current=!1;return}let s=l.elements.filter(c=>c.type==="action");if(s.length>0){let c=s[0],u=s[1];o.setValue("enableButton",!0),o.setValue("buttonLabel",c.content||"Register"),o.setValue("buttonUrl",c.href||""),o.setValue("buttonStyle",c.style==="link"?"outlined":"filled"),u?(o.setValue("enableSecondaryButton",!0),o.setValue("secondaryButtonLabel",u.content||"Learn more"),o.setValue("secondaryButtonUrl",u.href||""),o.setValue("secondaryButtonStyle",u.style==="link"?"outlined":"filled")):o.setValue("enableSecondaryButton",!1)}else o.setValue("enableButton",!1),o.setValue("enableSecondaryButton",!1);r.current=!1},[e,o]);let n=fp(l=>{if(!e||r.current)return;let s=e.elements.find(v=>v.type==="channel"&&v.channel==="inbox");s||(s={type:"channel",channel:"inbox",elements:[{type:"text",content:`
188
170
  `,text_style:"h2"},{type:"text",content:`
189
- `}]}),c.elements||(c.elements=[]);let u=[...c.elements.filter(b=>b.type!=="action")];if(a.enableButton){let b={type:"action",content:a.buttonLabel,background_color:a.buttonStyle==="outlined"?"#ffffff":"#000000",color:a.buttonStyle==="outlined"?"#000000":"#ffffff",border:{enabled:!0,color:"#000000",radius:4,size:"1px"},align:"left",href:a.buttonUrl,style:a.buttonStyle==="outlined"?"link":"button"};u.push(b)}if(a.enableSecondaryButton){let b={type:"action",content:a.secondaryButtonLabel,background_color:a.secondaryButtonStyle==="outlined"?"#ffffff":"#000000",color:a.secondaryButtonStyle==="outlined"?"#000000":"#ffffff",border:{enabled:!0,color:"#000000",radius:4,size:"1px"},align:"left",href:a.secondaryButtonUrl,style:a.secondaryButtonStyle==="outlined"?"link":"button"};u.push(b)}let d={...c,elements:u},p=e.elements.findIndex(b=>b.type==="channel"&&b.channel==="inbox"),m=[...e.elements];p!==-1?m[p]=d:m.push(d);let h={...e,elements:m};t(h)},[e,t]),i=Ud(()=>{let a=o.getValues();n(a)},[o,n]);return ee(ot,{...o,children:Nt("form",{onChange:i,children:[ee("div",{className:"courier-pb-4",children:ee(z,{control:o.control,name:"enableButton",render:({field:a})=>Nt(O,{className:"courier-flex courier-flex-row courier-items-center courier-justify-between",children:[ee(Ht,{className:"!courier-m-0",children:"Enable button"}),ee(W,{children:ee(Lo,{checked:a.value,onCheckedChange:a.onChange,className:"!courier-m-0"})})]})})}),o.watch("enableButton")&&Nt(Zd,{children:[ee(z,{control:o.control,name:"buttonStyle",render:({field:a})=>Nt(O,{className:"courier-mb-4",children:[ee(W,{children:Nt(Dt,{type:"single",value:a.value,onValueChange:c=>{a.onChange(c),i()},className:"courier-w-full courier-border courier-rounded-md courier-border-border courier-p-0.5 courier-mb-3 courier-shadow-sm",children:[ee(Se,{size:"sm",value:"filled",className:"courier-w-full courier-h-7",children:"Filled"}),ee(Se,{size:"sm",value:"outlined",className:"courier-w-full courier-h-7",children:"Outlined"})]})}),ee(Z,{})]})}),ee(z,{control:o.control,name:"buttonLabel",render:({field:a})=>Nt(O,{className:"courier-mb-4",children:[ee(Ht,{children:"Action label"}),ee(W,{children:ee(te,{placeholder:"Register",...a})}),ee(Z,{})]})}),ee(z,{control:o.control,name:"buttonUrl",render:({field:a})=>Nt(O,{className:"courier-mb-4",children:[ee(Ht,{children:"Action URL"}),ee(W,{children:ee(te,{placeholder:"https://example.com",...a})}),ee(Z,{})]})}),ee(se,{className:"courier-my-6"}),ee(z,{control:o.control,name:"enableSecondaryButton",render:({field:a})=>Nt(O,{className:"courier-flex courier-flex-row courier-items-center courier-justify-between courier-mb-4",children:[ee(Ht,{className:"!courier-m-0",children:"Enable secondary button"}),ee(W,{children:ee(Lo,{checked:a.value,onCheckedChange:a.onChange,className:"!courier-m-0"})})]})}),o.watch("enableSecondaryButton")&&Nt(Zd,{children:[ee(z,{control:o.control,name:"secondaryButtonStyle",render:({field:a})=>Nt(O,{className:"courier-mb-4",children:[ee(W,{children:Nt(Dt,{type:"single",value:a.value,onValueChange:c=>{a.onChange(c),i()},className:"courier-w-full courier-border courier-rounded-md courier-border-border courier-p-0.5 courier-mb-3 courier-shadow-sm",children:[ee(Se,{size:"sm",value:"filled",className:"courier-w-full courier-h-7",children:"Filled"}),ee(Se,{size:"sm",value:"outlined",className:"courier-w-full courier-h-7",children:"Outlined"})]})}),ee(Z,{})]})}),ee(z,{control:o.control,name:"secondaryButtonLabel",render:({field:a})=>Nt(O,{className:"courier-mb-4",children:[ee(Ht,{children:"Action label"}),ee(W,{children:ee(te,{placeholder:"Learn more",...a})}),ee(Z,{})]})}),ee(z,{control:o.control,name:"secondaryButtonUrl",render:({field:a})=>Nt(O,{className:"courier-mb-4",children:[ee(Ht,{children:"Action URL"}),ee(W,{children:ee(te,{placeholder:"https://example.com",...a})}),ee(Z,{})]})})]})]})]})})},"SideBarComponent"),qd=l2(f2);import{jsx as It,jsxs as Yo}from"react/jsx-runtime";var $s=[{type:"text",content:`
171
+ `}]}),s.elements||(s.elements=[]);let u=[...s.elements.filter(v=>v.type!=="action")];if(l.enableButton){let v={type:"action",content:l.buttonLabel,background_color:l.buttonStyle==="outlined"?"#ffffff":"#000000",color:l.buttonStyle==="outlined"?"#000000":"#ffffff",border:{enabled:!0,color:"#000000",radius:4,size:"1px"},align:"left",href:l.buttonUrl,style:l.buttonStyle==="outlined"?"link":"button"};u.push(v)}if(l.enableSecondaryButton){let v={type:"action",content:l.secondaryButtonLabel,background_color:l.secondaryButtonStyle==="outlined"?"#ffffff":"#000000",color:l.secondaryButtonStyle==="outlined"?"#000000":"#ffffff",border:{enabled:!0,color:"#000000",radius:4,size:"1px"},align:"left",href:l.secondaryButtonUrl,style:l.secondaryButtonStyle==="outlined"?"link":"button"};u.push(v)}let d={...s,elements:u},p=e.elements.findIndex(v=>v.type==="channel"&&v.channel==="inbox"),g=[...e.elements];p!==-1?g[p]=d:g.push(d);let b={...e,elements:g};t(b)},[e,t]),i=fp(()=>{let l=o.getValues();n(l)},[o,n]);return te(tt,{...o,children:Pt("form",{onChange:i,children:[te("div",{className:"courier-pb-4",children:te(W,{control:o.control,name:"enableButton",render:({field:l})=>Pt(F,{className:"courier-flex courier-flex-row courier-items-center courier-justify-between",children:[te(St,{className:"!courier-m-0",children:"Enable button"}),te(O,{children:te(No,{checked:l.value,onCheckedChange:l.onChange,className:"!courier-m-0"})})]})})}),o.watch("enableButton")&&Pt(gp,{children:[te(W,{control:o.control,name:"buttonStyle",render:({field:l})=>Pt(F,{className:"courier-mb-4",children:[te(O,{children:Pt(Rt,{type:"single",value:l.value,onValueChange:s=>{l.onChange(s),i()},className:"courier-w-full courier-border courier-rounded-md courier-border-border courier-p-0.5 courier-mb-3 courier-shadow-sm",children:[te(Ie,{size:"sm",value:"filled",className:"courier-w-full courier-h-7",children:"Filled"}),te(Ie,{size:"sm",value:"outlined",className:"courier-w-full courier-h-7",children:"Outlined"})]})}),te(U,{})]})}),te(W,{control:o.control,name:"buttonLabel",render:({field:l})=>Pt(F,{className:"courier-mb-4",children:[te(St,{children:"Action label"}),te(O,{children:te(re,{placeholder:"Register",...l})}),te(U,{})]})}),te(W,{control:o.control,name:"buttonUrl",render:({field:l})=>Pt(F,{className:"courier-mb-4",children:[te(St,{children:"Action URL"}),te(O,{children:te(re,{placeholder:"https://example.com",...l})}),te(U,{})]})}),te(ce,{className:"courier-my-6"}),te(W,{control:o.control,name:"enableSecondaryButton",render:({field:l})=>Pt(F,{className:"courier-flex courier-flex-row courier-items-center courier-justify-between courier-mb-4",children:[te(St,{className:"!courier-m-0",children:"Enable secondary button"}),te(O,{children:te(No,{checked:l.value,onCheckedChange:l.onChange,className:"!courier-m-0"})})]})}),o.watch("enableSecondaryButton")&&Pt(gp,{children:[te(W,{control:o.control,name:"secondaryButtonStyle",render:({field:l})=>Pt(F,{className:"courier-mb-4",children:[te(O,{children:Pt(Rt,{type:"single",value:l.value,onValueChange:s=>{l.onChange(s),i()},className:"courier-w-full courier-border courier-rounded-md courier-border-border courier-p-0.5 courier-mb-3 courier-shadow-sm",children:[te(Ie,{size:"sm",value:"filled",className:"courier-w-full courier-h-7",children:"Filled"}),te(Ie,{size:"sm",value:"outlined",className:"courier-w-full courier-h-7",children:"Outlined"})]})}),te(U,{})]})}),te(W,{control:o.control,name:"secondaryButtonLabel",render:({field:l})=>Pt(F,{className:"courier-mb-4",children:[te(St,{children:"Action label"}),te(O,{children:te(re,{placeholder:"Learn more",...l})}),te(U,{})]})}),te(W,{control:o.control,name:"secondaryButtonUrl",render:({field:l})=>Pt(F,{className:"courier-mb-4",children:[te(St,{children:"Action URL"}),te(O,{children:te(re,{placeholder:"https://example.com",...l})}),te(U,{})]})})]})]})]})})},"SideBarComponent"),cl=F2(U2);import{jsx as en,jsxs as Z2}from"react/jsx-runtime";var hp=a(({hidePublish:e,theme:t,variables:r,channels:o,routing:n})=>en(ra,{variables:r,theme:t,hidePublish:e,channels:o,routing:n,render:i=>Z2("div",{className:"courier-flex courier-flex-1 courier-flex-row courier-overflow-hidden",children:[en("div",{className:"courier-flex courier-flex-col courier-flex-1 courier-py-8 courier-items-center",children:en(ll,{...i})}),en("div",{className:"courier-editor-sidebar courier-opacity-100 courier-translate-x-0 courier-w-64 courier-flex-shrink-0",children:en("div",{className:"courier-p-4 courier-h-full",children:en(cl,{})})})]})}),"InboxLayout");import{useCurrentEditor as _2}from"@tiptap/react";import{useAtom as q2,useAtomValue as j2,useSetAtom as yp}from"jotai";import{forwardRef as G2,memo as K2,useCallback as J2,useEffect as xp,useMemo as ul,useRef as bp}from"react";import{jsx as vp}from"react/jsx-runtime";var Cp=a(()=>{let{editor:e}=_2(),t=yp(At);return xp(()=>{e&&(t(e),setTimeout(()=>{e.commands.blur()},1))},[e,t]),null},"PushEditorContent"),oa=[{type:"text",content:`
190
172
  `,text_style:"h2"},{type:"text",content:`
191
- `},{type:"action",content:"Register",align:"left",href:""}],Kd=s(e=>{let t=e==null?void 0:e.elements.find(r=>r.type==="channel"&&r.channel==="inbox");return t||(t={type:"channel",channel:"inbox",elements:$s}),t},"getOrCreateInboxElement"),C2={contentType:{state:"hidden"},bold:{state:"hidden"},italic:{state:"hidden"},underline:{state:"hidden"},strike:{state:"hidden"},alignLeft:{state:"hidden"},alignCenter:{state:"hidden"},alignRight:{state:"hidden"},alignJustify:{state:"hidden"},quote:{state:"hidden"},link:{state:"hidden"},variable:{state:"enabled"}},w2=s(()=>{let{editor:e}=h2(),t=Gd(Bt),[r]=jd(Ae);return zs(()=>{e&&(t(e),setTimeout(()=>{e.commands.blur()},1))},[e,t]),zs(()=>{if(!e||!r||e.isFocused)return;let o=Kd(r),n=Pr({version:"2022-01-01",elements:[o]}),i=e.getJSON();JSON.stringify(i)!==JSON.stringify(n)&&setTimeout(()=>{e.isFocused||e.commands.setContent(n)},1)},[e,r]),null},"EditorContent"),T2=v2(({theme:e,hidePublish:t,variables:r,readOnly:o,channels:n,routing:i},a)=>{let c=b2(be),l=_d(!0),u=_d(!1),d=Gd(ve),[p,m]=jd(Ae),h=Ws(()=>({urls:{unsubscribe:!0,preferences:!0},...r}),[r]);zs(()=>(u.current=!0,()=>{u.current=!1}),[]);let b=Ws(()=>[...yr({variables:h,setSelectedNode:d})].filter(k=>k!==void 0),[h,d]),g=x2(({editor:k})=>{if(!p||!k)return;let R=k.getJSON(),T=Zt(R),f=qt(p,{elements:T,channel:"inbox"}),w=JSON.stringify(p.elements),P=JSON.stringify(f.elements);w!==P&&setTimeout(()=>{u.current&&m(f)},100)},[p,m]),v=Ws(()=>{let k=Kd(p);return Pr({version:"2022-01-01",elements:[k]})},[p]);return It(lr,{theme:e,isLoading:!!(c&&l.current),Header:It(jr,{hidePublish:t,channels:n,routing:i}),ref:a,children:Yo("div",{className:"courier-flex courier-flex-1 courier-flex-row courier-overflow-hidden",children:[It("div",{className:"courier-flex courier-flex-col courier-flex-1 courier-py-8 courier-items-center",children:Yo("div",{className:"courier-py-2 courier-border courier-w-[360px] courier-h-[500px] courier-rounded-3xl courier-bg-background",style:{maskImage:"linear-gradient(180deg, #000 80%, transparent)",WebkitMaskImage:"linear-gradient(180deg, #000 80%, transparent)"},children:[Yo("div",{className:"courier-my-3 courier-mx-4 courier-flex courier-items-center courier-gap-2 courier-justify-between",children:[Yo("div",{className:"courier-flex courier-items-center courier-gap-3",children:[It(Ha,{}),It("span",{className:"courier-text-xl courier-font-medium",children:"Inbox"})]}),Yo("div",{className:"courier-flex courier-items-center courier-gap-4",children:[It(Ba,{}),It(Ra,{}),It(Fa,{})]})]}),Yo(g2,{content:v,extensions:b,editable:!o,autofocus:!o,onUpdate:g,editorContainerProps:{className:E("courier-inbox-editor")},immediatelyRender:!1,children:[It(w2,{}),It(Cr,{config:C2})]})]})}),It("div",{className:"courier-editor-sidebar courier-opacity-100 courier-translate-x-0 courier-w-64 courier-flex-shrink-0",children:It("div",{className:"courier-p-4 courier-h-full",children:It(qd,{})})})]})})}),Jd=y2(T2);import{Fragment as k2,jsx as Qo,jsxs as Qi}from"react/jsx-runtime";var Xd=s(({value:e,icon:t,...r})=>Qo(Se,{value:e,...r,className:"!courier-w-10 !courier-h-6 [&_svg]:!courier-size-5 [&_svg]:courier-fill-accent hover:courier-bg-transparent courier-rounded-sm data-[state=on]:courier-bg-background [&_svg]:data-[state=on]:courier-fill-foreground",children:t}),"PreviewItem"),Yd=s(({previewMode:e,togglePreviewMode:t})=>Qi("div",{className:"courier-sticky courier-bottom-0 courier-mt-auto courier-self-center courier-bg-background courier-px-3 courier-py-2 courier-shadow-lg courier-border courier-border-border courier-rounded-md courier-z-10 courier-flex courier-items-center courier-gap-2",children:[e&&Qi(k2,{children:[Qi(Dt,{type:"single",value:e,onValueChange:r=>{r!==""&&t(r)},className:"courier-w-full courier-rounded-md !courier-p-0.5 courier-bg-[#3B82F6] !courier-gap-0",children:[Qo(Xd,{value:"desktop",icon:Qo(Aa,{})}),Qo(Xd,{value:"mobile",icon:Qo(Va,{})})]}),Qo("div",{className:"courier-mx-4 courier-w-px courier-h-6 courier-bg-border"})]}),Qi(Ce,{variant:"link",onClick:()=>t(),children:[e?"Exit":"View"," Preview"]})]}),"PreviewPanel");import{closestCenter as cp,DndContext as $2,DragOverlay as U2,getFirstCollision as Z2,KeyboardSensor as q2,MeasuringStrategy as _2,MouseSensor as j2,pointerWithin as G2,rectIntersection as K2,TouchSensor as J2,useSensor as qs,useSensors as X2}from"@dnd-kit/core";import{arrayMove as Y2,SortableContext as lp,verticalListSortingStrategy as Q2}from"@dnd-kit/sortable";import{useAtom as up,useAtomValue as xo,useSetAtom as eb}from"jotai";import{forwardRef as tb,memo as rb,useCallback as $t,useEffect as Co,useMemo as _s,useRef as wo,useState as Un}from"react";import{Extension as P2}from"@tiptap/core";import{TextSelection as M2}from"@tiptap/pm/state";import{EditorProvider as N2,useCurrentEditor as I2}from"@tiptap/react";import{useAtom as ep,useAtomValue as zn,useSetAtom as Us}from"jotai";import{useCallback as en,useEffect as Wn,useMemo as L2,useRef as tp}from"react";import{jsx as Qd,jsxs as S2}from"react/jsx-runtime";var E2=s(({value:e})=>{let{editor:t}=I2(),[r,o]=ep(Ae),n=zn(Yr),i=zn(ve),a=Us(Qn),c=tp(!1),l=zn(be),u=zn(ke);return Wn(()=>{if(t){a(t);let d=Zt(t.getJSON()),p=e?Zt(e):[];e&&JSON.stringify(p)!==JSON.stringify(d)&&setTimeout(()=>{t.commands.setContent(e)},1)}},[t,e,a]),Wn(()=>{if(!(t&&n!==null)||l!==!1)return;let d=Zt(t.getJSON()),p=qt(r,{elements:d,channel:"email",meta:{subject:n}});JSON.stringify(r)!==JSON.stringify(p)&&o(p)},[u,t,n,o,l,r]),Wn(()=>()=>{t&&!t.isDestroyed&&t.setEditable(!0)},[t]),Wn(()=>{t&&c.current&&t.commands.updateSelectionState(i)},[t,i]),Wn(()=>(c.current=!0,()=>{c.current=!1}),[]),null},"EditorContent"),A2=s(({value:e,readOnly:t=!1,variables:r,onDestroy:o,onUpdate:n,subject:i})=>{let a=Us(mi),c=tp(),[l,u]=ep(Ae),d=zn(Yr),p=i!=null?i:d,m=Us(ve),h=P2.create({name:"escapeHandler",addKeyboardShortcuts(){return{Escape:({editor:w})=>{let{state:P,dispatch:A}=w.view;return A(P.tr.setSelection(M2.create(P.doc,P.selection.$anchor.pos))),m&&m(null),!1}}}}),b=en(({editor:w})=>{n==null||n(w),m&&setTimeout(()=>{m(null)},100)},[m,n]),g=en(({editor:w})=>{if(!l)return;let P=Zt(w.getJSON()),A=qt(l,{elements:P,channel:"email",meta:{subject:p}});JSON.stringify(l)!==JSON.stringify(A)&&u(A),n==null||n(w)},[l,p,u,n]),v=en(({editor:w})=>{let{selection:P}=w.state,N=P.$head.marks().find(y=>y.type.name==="link");N||w.isActive("link")?a({mark:N}):a(null)},[a]),k=en(({editor:w,transaction:P})=>{let A=P==null?void 0:P.getMeta("showLinkForm");if(A){let{selection:N}=w.state,M=N.$head.marks().find(S=>S.type.name==="link");a({mark:M,link:{from:A.from,to:A.to}})}},[a]),R=en(()=>{c.current&&clearTimeout(c.current),o==null||o(),window.editor=null},[o]),T=en(w=>{var M;let P=(M=w.view)==null?void 0:M.editor;if(!P||!P.isEditable)return;let A=w.target,N=P.view.posAtDOM(A,0),y=P.state.doc.resolve(N).node();y.type.name==="paragraph"&&m(y)},[m]),f=L2(()=>[...yr({variables:r,setSelectedNode:m}),h].filter(w=>w!==void 0),[h,r,m]);return S2(N2,{content:e,extensions:f,editable:!t,autofocus:!t,onCreate:b,onUpdate:g,onSelectionUpdate:v,onTransaction:k,onDestroy:R,editorContainerProps:{onClick:T},immediatelyRender:!1,children:[Qd(E2,{value:e}),Qd(Cr,{})]})},"EmailEditor"),rp=A2;import{useAtomValue as ip,useSetAtom as F2}from"jotai";import{GripVertical as O2}from"lucide-react";import{useSortable as R2}from"@dnd-kit/sortable";import{forwardRef as B2,useEffect as op,useState as H2}from"react";import{jsx as Zs}from"react/jsx-runtime";function D2(){let[e,t]=H2(!1);return op(()=>{let r=setTimeout(()=>t(!0),500);return()=>clearTimeout(r)},[]),e}s(D2,"useMountStatus");var np=s(({children:e,id:t,className:r})=>{let{setNodeRef:o,setActivatorNodeRef:n,listeners:i,isDragging:a,transform:c,transition:l}=R2({id:t}),u=D2();return Zs(V2,{ref:o,id:t,transition:l,transform:c,fadeIn:a&&!u,listeners:i,className:r,handleProps:{ref:n},children:e})},"SideBarSortableItemWrapper"),V2=B2(({children:e,className:t,dragOverlay:r,handleProps:o,listeners:n,id:i},a)=>(op(()=>{if(r)return document.body.style.cursor="grabbing",()=>{document.body.style.cursor=""}},[r]),Zs("div",{ref:a,"data-cypress":"draggable-item","data-node-view-wrapper":!0,"data-id":i,className:E(t,"courier-relative"),children:Zs("div",{...o,...n,children:e})})));import{jsx as Qe,jsxs as $n}from"react/jsx-runtime";var ap=s(({items:e,brandEditor:t})=>{var i,a;let r=ip(ke),o=F2(Mo),n=ip(rt);return $n("div",{className:"courier-flex courier-flex-col courier-h-full",children:[$n("div",{className:"courier-flex-1",children:[Qe("p",{children:"Blocks library"}),Qe(se,{className:"courier-my-4"}),Qe("div",{className:"courier-flex courier-flex-col courier-gap-4 courier-w-full",children:e.map(c=>Qe(np,{id:c.toString(),children:$n("div",{className:E("courier-rounded-md courier-border courier-border-border courier-flex courier-flex-row courier-items-center courier-gap-1 courier-bg-white courier-cursor-grab courier-opacity-[0.999] courier-px-3 courier-py-2 courier-select-none"),children:[Qe(O2,{strokeWidth:1,className:"courier-w-4 courier-stroke-ring courier-fill-ring"}),c==="heading"&&Qe(Do,{draggable:!0}),c==="text"&&Qe(Oo,{draggable:!0}),c==="image"&&Qe(Vo,{draggable:!0}),c==="spacer"&&Qe(Fo,{draggable:!0}),c==="divider"&&Qe(Ho,{draggable:!0}),c==="button"&&Qe(Bo,{draggable:!0})]})},c))})]}),t&&$n("div",{className:"courier-mt-auto courier-pt-4",children:[Qe(se,{className:"courier-mb-4 -courier-mx-4"}),(a=(i=r==null?void 0:r.data)==null?void 0:i.tenant)!=null&&a.brand?Qe("div",{className:"courier-flex courier-flex-row courier-gap-2 courier-items-center courier-justify-end courier-w-full",children:Qe(Ce,{variant:"link",className:"courier-underline",onClick:()=>o("brand"),disabled:!!n,children:"Edit brand"})}):$n("div",{className:"courier-flex courier-flex-col courier-gap-2",children:[Qe("h3",{className:"courier-text-md courier-font-medium",children:"Customize brand theme"}),Qe("p",{className:"courier-text-sm courier-text-muted-foreground",children:"Customize header and footer to apply to the template."}),Qe(Ce,{variant:"primary",className:"courier-w-fit courier-mt-2",onClick:()=>o("brand"),children:"Customize"})]})]})]})},"SideBar");import{useAtomValue as W2}from"jotai";import{jsx as tn,jsxs as z2}from"react/jsx-runtime";var sp=s(({element:e,editor:t})=>{var i,a;let r=W2(za);if(!e)return null;if(r!=null&&r.link||((i=r==null?void 0:r.mark)==null?void 0:i.type.name)==="link"&&((a=e.marks)!=null&&a.some(c=>c.type.name==="link")))return tn(du,{editor:t,mark:r==null?void 0:r.mark,pendingLink:r==null?void 0:r.link});let o=t==null?void 0:t.isActive("blockquote"),n=s(()=>{if(!t)return;let{$anchor:c}=t.state.selection,l=c.depth;for(;l>0;){let u=c.node(l);if(u.type.name==="blockquote")return u;l--}},"getBlockquoteElement");return z2("div",{className:"courier-flex courier-flex-col courier-gap-4",children:[e.type.name==="button"&&tn(Kl,{element:e,editor:t},e.attrs.id),e.type.name==="divider"&&tn(Xl,{element:e,editor:t},e.attrs.id),["paragraph","heading"].includes(e.type.name)&&!o&&tn(Bl,{element:e,editor:t},e.attrs.id),e.type.name==="imageBlock"&&tn(au,{element:e,editor:t},e.attrs.id),(e.type.name==="blockquote"||e.type.name==="paragraph"&&o||e.type.name==="heading"&&o)&&tn(zl,{element:n()||e,editor:t},e.attrs.id)]})},"SideBarItemDetails");import{jsx as we,jsxs as Gr}from"react/jsx-runtime";var js=[{type:"text",align:"left",content:`
192
- `,text_style:"h1"},{type:"text",align:"left",content:""},{type:"image",src:""}],ob=tb(({hidePublish:e,brandEditor:t,variables:r,theme:o,channels:n,routing:i},a)=>{var Je,gt,j,Te,de,Xe;let c=xo(Qn),[l,u]=up(ve),[d,p]=up(Yr),[m,h]=Un(null),[b,g]=Un(null),v=wo(null),k=wo(!1),R=wo({}),[T,f]=Un(null),[w,P]=Un(void 0),A=xo(ke),N=xo(be),y=xo(cc),M=xo(Or),S=wo(-1),C=eb(bl),I=wo(!1),H=wo(!1),V=xo(Ae),_=xo(jt),G=wo(null);Co(()=>{if(l){let L=l.type.name,K=di(L);C({nodeName:L,config:K})}},[l,C]);let D=_s(()=>{var K,X,ue,Q,he,ce,x,B,F,ae,ne,ze,lt,wr,on,ir,ko,Kr,Tr,_n,Po,Jr,Ks,Js,Xs,Ys,Qs,ec,tc,rc,oc,nc,ic,ac;if(M)return M;let L=(ue=(X=(K=A==null?void 0:A.data)==null?void 0:K.tenant)==null?void 0:X.brand)==null?void 0:ue.settings;return{brandColor:(Q=L==null?void 0:L.colors)==null?void 0:Q.primary,textColor:(he=L==null?void 0:L.colors)==null?void 0:he.secondary,subtleColor:(ce=L==null?void 0:L.colors)==null?void 0:ce.tertiary,headerStyle:(B=(x=L==null?void 0:L.email)==null?void 0:x.header)!=null&&B.barColor?"border":"plain",logo:(ne=(ae=(F=L==null?void 0:L.email)==null?void 0:F.header)==null?void 0:ae.logo)==null?void 0:ne.image,link:(wr=(lt=(ze=L==null?void 0:L.email)==null?void 0:ze.header)==null?void 0:lt.logo)==null?void 0:wr.href,facebookLink:(Kr=(ko=(ir=(on=L==null?void 0:L.email)==null?void 0:on.footer)==null?void 0:ir.social)==null?void 0:ko.facebook)==null?void 0:Kr.url,linkedinLink:(Jr=(Po=(_n=(Tr=L==null?void 0:L.email)==null?void 0:Tr.footer)==null?void 0:_n.social)==null?void 0:Po.linkedin)==null?void 0:Jr.url,instagramLink:(Ys=(Xs=(Js=(Ks=L==null?void 0:L.email)==null?void 0:Ks.footer)==null?void 0:Js.social)==null?void 0:Xs.instagram)==null?void 0:Ys.url,mediumLink:(rc=(tc=(ec=(Qs=L==null?void 0:L.email)==null?void 0:Qs.footer)==null?void 0:ec.social)==null?void 0:tc.medium)==null?void 0:rc.url,xLink:(ac=(ic=(nc=(oc=L==null?void 0:L.email)==null?void 0:oc.footer)==null?void 0:nc.social)==null?void 0:ic.twitter)==null?void 0:ac.url}},[M,A]),me=y&&!!D,He=Hl,De=Q2,[re,xe]=Un({Editor:[],Sidebar:["heading","text","image","spacer","divider","button"]}),Le=$t(()=>{Object.values(R.current).forEach(L=>clearTimeout(L)),R.current={}},[]);Co(()=>()=>{Le()},[Le]);let ge=$t(L=>{G.current&&cancelAnimationFrame(G.current),setTimeout(()=>{G.current=requestAnimationFrame(()=>{try{let K=L==null?void 0:L.view.dom;if(!K){console.warn("syncEditorItems: Editor DOM element not found");return}let X=K.querySelectorAll(".react-renderer > div[data-node-view-wrapper][data-id]"),ue=[];X.forEach(Q=>{let he=Q.dataset.id;he&&ue.push(he)}),xe(Q=>({Editor:ue,Sidebar:Q.Sidebar}))}catch(K){console.error("Error syncing editor items:",K),xe(X=>({...X}))}})},50)},[]);Co(()=>{let L=s(K=>{if(K.key==="Escape"&&(u(null),c==null||c.commands.blur(),S.current=-1),K.key==="Tab"&&c){K.preventDefault();let X=-1;l&&c.state.doc.content.forEach((he,ce,x)=>{l.attrs.id===he.attrs.id&&(X=x)}),X===-1&&(X=0);let ue=c.state.doc,Q;if(K.shiftKey?Q=(X-1+ue.childCount)%ue.childCount:Q=(X+1)%ue.childCount,Q!==X||l===null){let he=ue.child(Q);u(he),c.commands.blur()}}},"handleKeyPress");return document.addEventListener("keydown",L),()=>{document.removeEventListener("keydown",L)}},[c,l,u]);let Ve=s(L=>{let K=L.elements.find(X=>X.type==="channel"&&X.channel==="email");if(K&&"elements"in K&&K.elements){let X=K.elements.find(ue=>ue.type==="meta");if(X&&"subject"in X&&typeof X.subject=="string")return X.subject}return null},"getSubject");Co(()=>{var X,ue,Q,he,ce;let L=(ce=V!=null?V:(he=(Q=(ue=(X=A==null?void 0:A.data)==null?void 0:X.tenant)==null?void 0:ue.notification)==null?void 0:Q.data)==null?void 0:he.content)!=null?ce:"";if(!L)return;let K=Ve(L);p(K!=null?K:""),setTimeout(()=>{if(!(!c||c.isDestroyed)&&c.state.doc.childCount===1){let x=c.state.doc.child(0);u(x)}},0)},[A,N,c,V,p,u]),Co(()=>{N===!1&&A&&!H.current&&(H.current=!0,setTimeout(()=>{c&&!c.isDestroyed&&ge(c)},300))},[N,A,c,ge]),Co(()=>(I.current=!0,()=>{I.current=!1}),[]),Co(()=>{let L=s(()=>{c&&ge(c)},"updateItems");c==null||c.on("update",L),c==null||c.on("selectionUpdate",L),c==null||c.on("create",L),c==null||c.on("transaction",L),c&&!c.isDestroyed&&L();let K=s(X=>{L()},"handleNodeDuplicated");return document.addEventListener("node-duplicated",K),()=>{c==null||c.off("update",L),c==null||c.off("selectionUpdate",L),c==null||c.off("create",L),c==null||c.off("transaction",L),document.removeEventListener("node-duplicated",K),G.current&&cancelAnimationFrame(G.current)}},[c,ge]);let mt=$t(L=>{let X=L||(w===void 0?"desktop":void 0);P(X),u(null),X?c==null||c.setEditable(!1):c==null||c.setEditable(!0)},[c,w,P,u]),Ge=X2(qs(j2),qs(J2),qs(q2,{coordinateGetter:He})),st=$t(()=>{h(null)},[]),Me=$t(L=>typeof L=="string"&&L.includes("_temp_")?"Editor":L in re?L:Object.keys(re).find(K=>re[K].includes(L)),[re]),ft=$t(L=>{var he;if(m&&m in re)return cp({...L,droppableContainers:L.droppableContainers.filter(ce=>ce.id in re)});let K=G2(L),ue=(K.length>0?K:K2(L)).filter(ce=>ce.id!==void 0),Q=Z2(ue,"id");if(Q!=null){if(Q==="Editor")return v.current=Q,[{id:Q}];if(Q in re){let ce=re[Q];if(ce.length>0){let x=(he=cp({...L,droppableContainers:L.droppableContainers.filter(B=>B.id!==Q&&ce.includes(B.id))})[0])==null?void 0:he.id;x&&(Q=x)}}return v.current=Q,[{id:Q}]}return k.current&&(v.current=m),v.current?[{id:v.current}]:[]},[m,re]),ct=$t(L=>{var K;try{let X=c==null?void 0:c.state.doc;if(!X||L===0)return 0;if(L>=X.childCount)return X.content.size;let ue=0;for(let Q=0;Q<Math.min(L,X.childCount);Q++)ue+=(K=X.child(Q))==null?void 0:K.nodeSize;return ue}catch{return c==null?void 0:c.state.doc.content.size}},[c]),wt=_s(()=>({droppable:{strategy:_2.Always}}),[]),Lt=$t(({active:L})=>{h(L.id),(L.id==="text"||L.id==="divider"||L.id==="spacer"||L.id==="button"||L.id==="image"||L.id==="heading")&&g(L.id)},[]),Et=$t(({active:L,over:K})=>{if(!K)return;let X=Me(K.id);if(!(Me(L.id)==="Sidebar"&&X==="Editor"))return;let Q=L.rect.current;if(!(Q!=null&&Q.translated))return;let he=c==null?void 0:c.view.dom.querySelectorAll("[data-node-view-wrapper]");if(!he)return;let ce=he.length;for(let x=0;x<he.length;x++){let F=he[x].getBoundingClientRect();if(Q.translated.top<F.top+F.height/2){ce=x;break}}if(ce!==T){let x=`${L.id}_temp_${Date.now()}`;f(ce),requestAnimationFrame(()=>{c==null||c.commands.removeDragPlaceholder(),c==null||c.commands.setDragPlaceholder({id:x,type:L.id,pos:ct(ce)}),xe(B=>({...B,Editor:[...B.Editor.filter(F=>!F.toString().includes("_temp")),x]}))})}},[c==null?void 0:c.commands,c==null?void 0:c.view.dom,Me,ct,T]),Ke=$t(()=>{c==null||c.commands.removeDragPlaceholder(),xe(L=>({...L,Editor:L.Editor.filter(K=>!K.toString().includes("_temp"))}))},[c==null?void 0:c.commands,xe]),Tt=$t(({active:L,over:K})=>{var he;Ke();let X=K==null?void 0:K.id;if(!X){xe(ce=>({...ce,Editor:ce.Editor.filter(x=>!x.toString().includes("_temp"))})),h(null),g(null);return}if(!c)return;let ue=Me(X),Q=Me(L.id);if(Q==="Sidebar"&&ue==="Editor"&&T!==null){let ce=ct(T);ki(c,b,ce!=null?ce:0,void 0,x=>u(x))}else if(Q===ue){let ce=re[Q].indexOf(L.id),x=re[ue].indexOf(X);if(ce!==-1&&x!==-1&&ce!==x){xe(F=>({...F,[ue]:Y2(F[ue],ce,x)}));let B=(he=c.getJSON())==null?void 0:he.content;if(Array.isArray(B)){let F=[...B],[ae]=F.splice(ce,1);F.splice(x,0,ae),c.view.dispatch(c.view.state.tr.replaceWith(0,c.view.state.doc.content.size,c.state.schema.nodeFromJSON({type:"doc",content:F})))}}}Q==="Sidebar"&&ue==="Sidebar"&&setTimeout(()=>{Ke()},100),f(null),h(null),g(null)},[Ke,c,Me,ct,re,T,u,g,h,b]),At=$t(()=>{Ke(),c==null||c.commands.removeDragPlaceholder(),st()},[Ke,c==null?void 0:c.commands,st]),St=s(L=>{p(L.target.value)},"handleSubjectChange"),We=_s(()=>{let L=V==null?void 0:V.elements.find(X=>X.type==="channel"&&X.channel==="email");return L||(L={type:"channel",channel:"email",elements:js}),Pr({version:"2022-01-01",elements:[L]})},[V]);return we(lr,{theme:o,isLoading:!!N,Header:we(jr,{hidePublish:e,channels:n,routing:i}),children:Gr($2,{sensors:Ge,collisionDetection:ft,measuring:wt,onDragStart:Lt,onDragMove:Et,onDragEnd:Tt,onDragCancel:At,children:[Gr("div",{className:E("courier-flex courier-flex-1 courier-overflow-hidden",w&&"courier-editor-preview-mode",w==="mobile"&&"courier-editor-preview-mode-mobile"),children:[Gr("div",{className:"courier-flex courier-flex-col courier-flex-1",children:[Gr("div",{className:"courier-bg-primary courier-h-12 courier-flex courier-items-center courier-gap-2 courier-px-4 courier-border-b",children:[we("h4",{className:"courier-text-sm",children:"Subject: "}),we(te,{value:d!=null?d:"",onChange:St,onFocus:()=>u(null),className:"!courier-bg-background read-only:courier-cursor-default read-only:courier-border-transparent md:courier-text-md courier-py-1 courier-border-transparent !courier-border-none courier-font-medium",placeholder:"Write subject...",readOnly:w!==void 0})]}),Gr("div",{className:"courier-editor-container courier-relative",ref:a,children:[Gr("div",{className:E("courier-editor-main courier-transition-all courier-duration-300 courier-ease-in-out",w&&"courier-max-w-4xl courier-mx-auto"),children:[me&&Gr("div",{className:E("courier-py-5 courier-px-9 courier-pb-0 courier-relative courier-overflow-hidden courier-flex courier-flex-col courier-items-start",(D==null?void 0:D.headerStyle)==="border"&&"courier-pt-6"),children:[(D==null?void 0:D.headerStyle)==="border"&&we("div",{className:"courier-absolute courier-top-0 courier-left-0 courier-right-0 courier-h-2",style:{backgroundColor:D==null?void 0:D.brandColor}}),(D==null?void 0:D.logo)&&we("img",{src:D.logo,alt:"Brand logo",className:"courier-w-auto courier-max-w-36 courier-object-contain courier-cursor-default"})]}),we(lp,{items:re.Editor,strategy:De,children:We&&we(rp,{value:We,onUpdate:ge,variables:r})}),me&&A&&we("div",{className:"courier-py-5 courier-px-9 courier-pt-0 courier-flex courier-flex-col",children:we(Gi,{readOnly:!0,value:_!=null?_:(Xe=(de=(Te=(j=(gt=(Je=A==null?void 0:A.data)==null?void 0:Je.tenant)==null?void 0:gt.brand)==null?void 0:j.settings)==null?void 0:Te.email)==null?void 0:de.footer)==null?void 0:Xe.markdown,variables:r,facebookLink:D==null?void 0:D.facebookLink,linkedinLink:D==null?void 0:D.linkedinLink,instagramLink:D==null?void 0:D.instagramLink,mediumLink:D==null?void 0:D.mediumLink,xLink:D==null?void 0:D.xLink})})]}),we(Yd,{previewMode:w,togglePreviewMode:mt})]})]}),we("div",{className:E("courier-editor-sidebar",w?"courier-opacity-0 courier-pointer-events-none courier-translate-x-full courier-w-0 courier-flex-shrink-0":"courier-opacity-100 courier-translate-x-0 courier-w-64 courier-flex-shrink-0"),children:we("div",{className:"courier-p-4 courier-h-full",children:l?we(sp,{element:l,editor:c}):we(lp,{items:re.Sidebar,strategy:De,children:we(ap,{items:re.Sidebar,brandEditor:t})})})})]}),we(U2,{dropAnimation:null,children:m&&(m==="text"||m==="divider"||m==="spacer"||m==="button"||m==="image"||m==="heading")?Gr("div",{className:E("courier-bg-white courier-border courier-border-border courier-rounded-lg courier-p-4 courier-shadow-lg","courier-opacity-90 courier-scale-105 courier-transition-transform"),children:[b==="heading"&&we(Do,{draggable:!0}),b==="text"&&we(Oo,{draggable:!0}),b==="spacer"&&we(Fo,{draggable:!0}),b==="divider"&&we(Ho,{draggable:!0}),b==="button"&&we(Bo,{draggable:!0}),b==="image"&&we(Vo,{draggable:!0})]}):null})]})})}),dp=rb(ob);import{Fragment as lb,jsx as Ut,jsxs as rn}from"react/jsx-runtime";var jr=s(({hidePublish:e=!1,channels:t,routing:r})=>{var P,A;let o=sb(null),[n,i]=pp(Kn),a=ea(rt),c=ea(be),l=ea(le),u=ea(ke),{publishTemplate:d,saveTemplate:p,isTenantPublishing:m}=sn(),[h,b]=cb(Xr),[g,v]=pp(Ae),k=nb(ve);ib(()=>{var M;if(c)return;if(!g){b([(M=Xr.find(S=>S.value===(t==null?void 0:t[0])))!=null?M:Xr[0]]);return}let N=g==null?void 0:g.elements.map(S=>S.channel),y=Xr.filter(S=>N==null?void 0:N.includes(S.value));JSON.stringify(h)!==JSON.stringify(y)&&b(y)},[h,t,g,c]);let R=Gs(()=>{d()},[d]),T=ab(()=>Xr.filter(N=>!h.includes(N)&&(t==null?void 0:t.includes(N.value))),[h,t]),f=Gs(N=>{if(!g)return;let y=[];switch(N){case"sms":y=Ds;break;case"push":y=Os;break;case"inbox":y=$s;break;default:y=js}let M=qt(g,{elements:y,channel:N});v(M),i(N)},[g,v,i]),w=Gs(async N=>{if(!g)return;let y=g.elements.filter(C=>C.type==="channel"?C.channel!==N:!0),M={...g,elements:y};v(M);let S=h.filter(C=>C.value!==N);if(b(S),k(null),n===N&&S.length>0&&i(S[0].value),r)try{await p(r)}catch(C){console.error("Failed to save template after removing channel:",C)}},[g,v,h,b,n,i,k,r,p]);return rn("div",{className:"courier-flex courier-justify-between courier-w-full courier-h-full",ref:o,children:[rn("div",{className:"courier-flex courier-items-center courier-gap-2 courier-h-full courier-flex-grow",children:[Ut(ii,{value:n,onValueChange:N=>i(N),className:"courier-h-full",ref:o,children:Ut(gn,{className:"courier-grid courier-w-full courier-border-none courier-h-full !courier-p-0",style:{gridTemplateColumns:`repeat(${Xr.length}, fit-content(100%))`},children:h.map(N=>rn(Eo,{value:N.value,className:"!courier-pl-2 !courier-pr-2 courier-w-full courier-flex courier-items-center courier-justify-between courier-h-full courier-border-b-2 courier-border-b-transparent !courier-rounded-none data-[state=active]:courier-bg-transparent data-[state=active]:courier-text-foreground data-[state=active]:courier-border-b-accent-foreground",children:[Ut("span",{className:"courier-pr-3",children:N.label}),N.value===n&&h.length>1&&Ut("a",{onClick:()=>w(N.value),children:Ut(Qc,{width:10,height:10,className:"courier-text-xs courier-cursor-pointer courier-hover:courier-text-foreground courier-ml-2"})})]},N.value))})}),T.length>0&&rn(lb,{children:[Ut(fa,{orientation:"vertical",className:"!courier-h-5"}),rn(ei,{children:[Ut(ti,{asChild:!0,children:Ut(Ce,{variant:"link",children:"+ Add channel"})}),Ut(un,{portalProps:{container:o.current},children:T.map(N=>Ut(dn,{onClick:()=>f(N.value),children:N.label},N.value))})]})]})]}),rn("div",{className:"courier-w-64 courier-pl-4 courier-flex courier-justify-end courier-items-center courier-gap-2",children:[a!==null&&Ut(ci,{isLoading:!!c,isSaving:!!a,isError:!!l}),!e&&c!==null&&Ut(Ce,{variant:"primary",buttonSize:"small",disabled:!((A=(P=u==null?void 0:u.data)==null?void 0:P.tenant)!=null&&A.notification)||m===!0||a!==!1,onClick:R,children:m?"Publishing...":"Publish changes"})]})]})},"Channels");import{jsx as qn}from"react/jsx-runtime";var gb=s(({theme:e,variables:t,hidePublish:r=!1,autoSave:o=!0,autoSaveDebounce:n=200,brandEditor:i=!1,brandProps:a,channels:c=["email","sms","push","inbox"],routing:l})=>{let u=Zn(be),d=Zn(le),[p,m]=ta(ke),h=Zn(kr),b=Zn(Ee),[g,v]=ta(Yr),{getTenant:k,saveTemplate:R}=sn(),T=Zn(Mo),f=mb(!1),[w,P]=ta(Ae),A=ub(jt),[N,y]=ta(Kn);To(()=>{c!=null&&c.length&&y(c[0])},[c,y]),To(()=>{var C,I;let S=(C=p==null?void 0:p.data)==null?void 0:C.tenant;h&&S&&(S!=null&&S.notification)&&(h!==((I=S==null?void 0:S.notification)==null?void 0:I.notificationId)||b!==(S==null?void 0:S.tenantId))&&(m(null),P(null),A(null),v(null),y((c==null?void 0:c[0])||"email"),f.current=!1)},[c,h,f,p,b,P,v,m,A,y]);let{handleAutoSave:M}=Gn({onSave:async()=>{await R(l)},debounceMs:n,enabled:u!==null&&o,onError:pb(()=>()=>fb.error("Error saving template"),[])});if(To(()=>{!h||!b||u||p&&u===!1||d||k({includeBrand:i})},[h,b,i,k,u,p,d]),To(()=>{var S,C,I,H;u===!1&&P((H=(I=(C=(S=p==null?void 0:p.data)==null?void 0:S.tenant)==null?void 0:C.notification)==null?void 0:I.data)==null?void 0:H.content)},[p,P,u]),To(()=>{w&&setTimeout(()=>{f.current=!0},500)},[w,N]),To(()=>{f.current=!1},[N]),To(()=>{!f.current||!w||M(w)},[w,M]),i&&T==="brand")return qn(Bd,{hidePublish:r,autoSave:o,templateEditor:!0,variables:t,...a});if(T==="template"&&N==="email")return qn(dp,{variables:t,theme:e,isLoading:!!u,hidePublish:r,channels:c,brandEditor:i,routing:l});if(T==="template"&&N==="sms")return qn(Fd,{theme:e,hidePublish:r,channels:c,routing:l});if(T==="template"&&N==="push")return qn($d,{theme:e,hidePublish:r,channels:c,routing:l});if(T==="template"&&N==="inbox")return qn(Jd,{theme:e,hidePublish:r,channels:c,routing:l})},"TemplateEditorComponent"),iR=db(gb);export{Bd as BrandEditor,Ap as BrandProvider,iR as TemplateEditor,kp as TemplateProvider,et as apiUrlAtom,cc as brandApplyAtom,Jn as editorStore,be as isTenantLoadingAtom,Rt as isTenantPublishingAtom,rt as isTenantSavingAtom,kr as templateIdAtom,ke as tenantDataAtom,le as tenantErrorAtom,Ee as tenantIdAtom,tt as tokenAtom,ln as useBrandActions,sn as useTemplateActions};
173
+ `}],wp={contentType:{state:"hidden"},bold:{state:"hidden"},italic:{state:"hidden"},underline:{state:"hidden"},strike:{state:"hidden"},alignLeft:{state:"hidden"},alignCenter:{state:"hidden"},alignRight:{state:"hidden"},alignJustify:{state:"hidden"},quote:{state:"hidden"},link:{state:"hidden"},variable:{state:"enabled"}},X2=G2(({theme:e,hidePublish:t,variables:r,readOnly:o,channels:n,routing:i,headerRenderer:l,render:s},c)=>{let u=j2(pe),d=bp(!0),p=bp(!1),g=yp(be),[b,v]=q2(ke),f=ul(()=>({urls:{unsubscribe:!0,preferences:!0},...r}),[r]);xp(()=>(p.current=!0,()=>{p.current=!1}),[]);let y=ul(()=>[...hr({variables:f,setSelectedNode:g})].filter(w=>w!==void 0),[f,g]),h=J2(({editor:w})=>{if(!b)return;let m=Wt(w.getJSON()),C=zt(b,{elements:m,channel:"push"});JSON.stringify(b)!==JSON.stringify(C)&&v(C)},[b,v]),L=ul(()=>{let w=b==null?void 0:b.elements.find(m=>m.type==="channel"&&m.channel==="push");return w||(w={type:"channel",channel:"push",elements:oa}),kr({version:"2022-01-01",elements:[w]})},[b]);return vp(sr,{theme:e,isLoading:!!(u&&d.current),Header:l?l({hidePublish:t,channels:n,routing:i}):vp(Zr,{hidePublish:t,channels:n,routing:i}),ref:c,children:s==null?void 0:s({content:L,extensions:y,editable:!o,autofocus:!o,onUpdate:h})})}),na=K2(X2);import{EditorProvider as Y2}from"@tiptap/react";import{jsx as Hr,jsxs as ia}from"react/jsx-runtime";var aa=a(({children:e})=>ia("div",{className:"courier-relative",children:[Hr("div",{className:"courier-absolute courier-w-0.5 courier-h-6 courier-bg-border -courier-left-[2px] courier-top-[136px]"}),Hr("div",{className:"courier-absolute courier-w-0.5 courier-h-[50px] courier-bg-border -courier-left-[2px] courier-top-[178px]"}),Hr("div",{className:"courier-absolute courier-w-0.5 courier-h-[50px] courier-bg-border -courier-left-[2px] courier-top-[245px]"}),Hr("div",{className:"courier-absolute courier-w-0.5 courier-h-[78px] courier-bg-border -courier-right-[2px] courier-top-[200px]"}),ia("div",{className:"courier-py-2 courier-border-8 courier-border-b-0 courier-w-[306px] courier-h-[500px] courier-rounded-[40px] courier-rounded-b-none courier-bg-background courier-pb-6 courier-relative",style:{maskImage:"linear-gradient(180deg, #000 80%, transparent)",WebkitMaskImage:"linear-gradient(180deg, #000 80%, transparent)"},children:[ia("div",{className:"courier-my-6 courier-mx-11 courier-flex courier-items-center courier-gap-2 courier-justify-between",children:[Hr("span",{className:"courier-text-xs courier-font-semibold",children:new Date().toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})}),ia("div",{className:"courier-flex courier-items-center courier-gap-2",children:[Hr(Nc,{}),Hr(Ic,{}),Hr(cc,{})]})]}),Hr("div",{className:"courier-flex-1 courier-overflow-auto courier-h-[calc(90%-56px)] courier-mb-6",children:e})]})]}),"IPhoneFrame");import{jsx as sa,jsxs as dl}from"react/jsx-runtime";var pl=a(({content:e,extensions:t,editable:r,autofocus:o,onUpdate:n,className:i})=>dl(aa,{children:[dl("div",{className:I("courier-px-4 courier-py-2 courier-text-[#A3A3A3] courier-text-center courier-my-8",i),children:[sa("p",{className:"courier-text-lg courier-font-medium",children:new Date().toLocaleDateString(void 0,{weekday:"long",month:"long",day:"numeric"})}),sa("p",{className:"courier-text-5xl courier-font-semibold courier-mt-1",children:new Date().toLocaleTimeString(void 0,{hour:"numeric",minute:"2-digit",hour12:!0})})]}),dl(Y2,{content:e,extensions:t,editable:r,autofocus:o,onUpdate:n,editorContainerProps:{className:I("courier-push-editor")},immediatelyRender:!1,children:[sa(Cp,{}),sa(vr,{config:wp})]})]}),"PushEditor");import{jsx as ml}from"react/jsx-runtime";var Tp=a(({hidePublish:e,theme:t,variables:r,channels:o,routing:n})=>ml(na,{variables:r,theme:t,hidePublish:e,channels:o,routing:n,render:i=>ml("div",{className:"courier-flex courier-flex-col courier-items-center courier-py-8",children:ml(pl,{...i})})}),"PushLayout");import{useCurrentEditor as Q2}from"@tiptap/react";import{useAtom as eb,useAtomValue as tb,useSetAtom as Pp}from"jotai";import{forwardRef as rb,memo as ob,useCallback as nb,useEffect as Mp,useMemo as la,useRef as kp}from"react";import{SegmentedMessage as ib}from"sms-segments-calculator";import{jsx as fl}from"react/jsx-runtime";var ca=[{type:"text",content:""}],Np=a(()=>{var n;let{editor:e}=Q2(),t=Pp(At),r=(n=e==null?void 0:e.getText())!=null?n:"",o=la(()=>new ib(r),[r]);return Mp(()=>{e&&(t(e),setTimeout(()=>{e.commands.blur()},1))},[e,t]),fl("span",{className:"courier-self-end courier-pr-2 courier-text-xs courier-color-gray-500",children:Math.ceil((o==null?void 0:o.messageSize)/8)})},"SMSEditorContent"),Lp={contentType:{state:"hidden"},bold:{state:"hidden"},italic:{state:"hidden"},underline:{state:"hidden"},strike:{state:"hidden"},alignLeft:{state:"hidden"},alignCenter:{state:"hidden"},alignRight:{state:"hidden"},alignJustify:{state:"hidden"},quote:{state:"hidden"},link:{state:"hidden"},variable:{state:"enabled"}},ab=rb(({theme:e,hidePublish:t,variables:r,readOnly:o,channels:n,routing:i,render:l,headerRenderer:s},c)=>{let u=tb(pe),d=kp(!0),p=kp(!1),g=Pp(be),[b,v]=eb(ke),f=la(()=>({urls:{unsubscribe:!0,preferences:!0},...r}),[r]);Mp(()=>(p.current=!0,()=>{p.current=!1}),[]);let y=la(()=>[...hr({variables:f,setSelectedNode:g})].filter(w=>w!==void 0),[f,g]),h=nb(({editor:w})=>{if(!b)return;let m=Wt(w.getJSON()),C=zt(b,{elements:m,channel:"sms"});JSON.stringify(b)!==JSON.stringify(C)&&v(C)},[b,v]),L=la(()=>{let w=b==null?void 0:b.elements.find(m=>m.type==="channel"&&m.channel==="sms");return w||(w={type:"channel",channel:"sms",elements:ca}),kr({version:"2022-01-01",elements:[w]})},[b]);return fl(sr,{theme:e,isLoading:!!(u&&d.current),Header:s?s({hidePublish:t,channels:n,routing:i}):fl(Zr,{hidePublish:t,channels:n,routing:i}),ref:c,children:l==null?void 0:l({content:L,extensions:y,editable:!o,autofocus:!o,onUpdate:h})})}),ua=ob(ab);import{EditorProvider as sb}from"@tiptap/react";import{jsx as da,jsxs as lb}from"react/jsx-runtime";var gl=a(({content:e,extensions:t,editable:r,autofocus:o,onUpdate:n,className:i})=>da(aa,{children:da("div",{className:I("courier-sms-editor",i),children:lb(sb,{content:e,extensions:t,editable:r,autofocus:o,onUpdate:n,immediatelyRender:!1,children:[da(Np,{}),da(vr,{config:Lp})]})})}),"SMSEditor");import{jsx as hl}from"react/jsx-runtime";var Ip=a(({hidePublish:e,theme:t,variables:r,channels:o,routing:n})=>hl(ua,{variables:r,theme:t,hidePublish:e,channels:o,routing:n,render:i=>hl("div",{className:"courier-flex courier-flex-col courier-items-center courier-py-8",children:hl(gl,{...i})})}),"SMSLayout");var bl=a(({channels:e=["email"],routing:t})=>{let[r,o]=pb([]),n=Ep(ke),i=Ap(ke),[l,s]=cb(pi),c=Ap(be),u=Ep(pe),{saveTemplate:d}=Qr(),p=mb(e);p.current=e,ub(()=>{if(u)return;let f=p.current;if(!n||!n.elements){let L=So.find(w=>f.includes(w.value));o(L?[L]:[]);return}let y=n.elements.filter(L=>L.type==="channel").map(L=>L.channel).filter(L=>f.includes(L)),h=So.filter(L=>y.includes(L.value));o(h)},[n,u]);let g=db(()=>So.filter(f=>!r.some(y=>y.value===f.value)&&(e==null?void 0:e.includes(f.value))),[r,e]),b=Sp(f=>{let y=[];switch(f){case"sms":y=ca;break;case"push":y=oa;break;case"inbox":y=ta;break;default:y=Gi}if(!n){let L=[];for(let m of r){let C=[];switch(m.value){case"sms":C=ca;break;case"push":C=oa;break;case"inbox":C=ta;break;default:C=Gi}L.push({type:"channel",channel:m.value,elements:C})}L.push({type:"channel",channel:f,elements:y}),i({version:"2022-01-01",elements:L}),s(f);return}let h=zt(n,{elements:y,channel:f});i(h),s(f)},[n,i,s,r]),v=Sp(async f=>{if(!n)return;let y=n.elements.filter(w=>w.type==="channel"?w.channel!==f:!0),h={...n,elements:y};i(h),c(null);let L=r.filter(w=>w.value!==f);if(l===f&&L.length>0&&s(L[0].value),t)try{await d(t)}catch(w){console.error("Failed to save template after removing channel:",w)}},[n,i,r,l,s,c,t,d]);return{enabledChannels:r,disabledChannels:g,channel:l,setChannel:s,addChannel:b,removeChannel:v}},"useChannels");import{Fragment as hb,jsx as yr,jsxs as To}from"react/jsx-runtime";var Zr=a(({hidePublish:e=!1,channels:t,routing:r})=>{var h,L;let o=gb(null),n=pa(et),i=pa(pe),l=pa(de),s=pa(Ce),{publishTemplate:c,isTenantPublishing:u}=Qr(),{enabledChannels:d,disabledChannels:p,channel:g,setChannel:b,addChannel:v,removeChannel:f}=bl({channels:t,routing:r}),y=fb(()=>{c()},[c]);return To("div",{className:"courier-flex courier-justify-between courier-w-full courier-h-full",ref:o,children:[To("div",{className:"courier-flex courier-items-center courier-gap-2 courier-h-full courier-flex-grow",children:[yr(ai,{value:g,onValueChange:w=>b(w),className:"courier-h-full",ref:o,children:yr(fn,{className:"courier-grid courier-w-full courier-border-none courier-h-full !courier-p-0",style:{gridTemplateColumns:`repeat(${So.length}, fit-content(100%))`},children:d.map(w=>To(Lo,{value:w.value,className:"!courier-px-2 courier-w-full courier-flex courier-items-center courier-justify-between courier-h-full courier-border-b-2 courier-border-b-transparent !courier-rounded-none data-[state=active]:courier-bg-transparent data-[state=active]:courier-text-foreground data-[state=active]:courier-border-b-accent-foreground",children:[w.label,w.value===g&&d.length>1&&yr("a",{onClick:()=>f(w.value),className:"courier-pl-2",children:yr(gn,{color:"#A3A3A3"})})]},w.value))})}),p.length>0&&To(hb,{children:[yr(Ea,{orientation:"vertical",className:"!courier-h-5"}),To(ti,{children:[yr(ri,{asChild:!0,children:yr(xe,{variant:"link",children:"+ Add channel"})}),yr(cn,{portalProps:{container:o.current},children:p.map(w=>To(un,{onClick:()=>v(w.value),children:[w.icon,w.label]},w.value))})]})]})]}),To("div",{className:"courier-w-64 courier-pl-4 courier-flex courier-justify-end courier-items-center courier-gap-2",children:[n!==null&&yr(ui,{isLoading:!!i,isSaving:!!n,isError:!!l}),!e&&i!==null&&yr(xe,{variant:"primary",buttonSize:"small",disabled:!((L=(h=s==null?void 0:s.data)==null?void 0:h.tenant)!=null&&L.notification)||u===!0||n!==!1,onClick:y,children:u?"Publishing...":"Publish changes"})]})]})},"Channels");import{SortableContext as $H}from"@dnd-kit/sortable";import{useCallback as bb,useEffect as vb,useRef as ma,useState as yb}from"react";function fa({onSave:e,debounceMs:t=200,enabled:r=!0,onError:o,initialContent:n}){let[i,l]=yb(!1),s=ma(null),c=ma(),u=ma(0),d=ma();vb(()=>{n&&(c.current=JSON.stringify(n))},[n]);let p=bb(async g=>{if(!r)return;s.current=g,d.current&&(clearTimeout(d.current),d.current=void 0);let b=a(async()=>{let h=s.current;if(s.current=null,!!h){try{let L=JSON.stringify(h);if(L===c.current)return;l(!0),c.current=L,u.current=Date.now(),await e(h)}catch(L){o==null||o(L),l(!1);return}l(!1),s.current&&p(s.current)}},"processPendingContent");if(i)return;let f=Date.now()-u.current,y=Math.max(0,t-f);d.current=setTimeout(()=>{d.current=void 0,b()},y)},[t,r,i,o,e]);return{handleAutoSave:p,isSaving:i}}a(fa,"useAutoSave");import{useAtom as va,useAtomValue as Gn,useSetAtom as qp}from"jotai";import{memo as e0,useEffect as qr,useMemo as t0,useRef as r0}from"react";import{toast as o0}from"sonner";import{useAtom as $p,useAtomValue as Cl,useSetAtom as Gb}from"jotai";import{forwardRef as Kb,memo as Jb,useEffect as nn,useMemo as Xb,useRef as Up}from"react";import{toast as Yb}from"sonner";import{Provider as xb,useAtom as tn,useAtomValue as _n}from"jotai";import{useEffect as Cb,memo as wb}from"react";import{Fragment as Mb,jsx as vl}from"react/jsx-runtime";function qn(){let[,e]=tn(Yn),[,t]=tn(El),[,r]=tn(Al),o=_n(pe),n=_n(et),i=_n(Et),l=_n(de),s=_n(Ce);return{getTenant:e,saveBrand:t,publishBrand:r,isTenantLoading:o,isTenantSaving:n,isTenantPublishing:i,tenantError:l,tenantData:s}}a(qn,"useBrandActions");var Tb=a(({children:e,tenantId:t,token:r,apiUrl:o})=>{let[,n]=tn(Ye),[,i]=tn(Qe),[,l]=tn(Le);return Cb(()=>{i(r),l(t),o&&n(o)},[r,t,o,n,i,l]),vl(Mb,{children:e})},"BrandProviderContext"),kb=a(e=>vl(xb,{store:Xn,children:vl(Tb,{...e})}),"BrandProviderComponent"),Pb=wb(kb);import{z as vt}from"zod";var Rp=vt.object({headerStyle:vt.enum(["plain","border"]),isUnsubscribe:vt.boolean().optional(),isPreferences:vt.boolean().optional(),link:vt.string().optional(),brandColor:vt.string(),textColor:vt.string(),subtleColor:vt.string(),logo:vt.string().optional(),facebookLink:vt.string().optional(),linkedinLink:vt.string().optional(),instagramLink:vt.string().optional(),mediumLink:vt.string().optional(),xLink:vt.string().optional()}),dt={headerStyle:"plain",isUnsubscribe:!1,isPreferences:!1,link:"",brandColor:"#000000",textColor:"#9CA3AF",subtleColor:"#737373",logo:"",facebookLink:"",linkedinLink:"",instagramLink:"",mediumLink:"",xLink:""};var Nb=a(e=>{switch(e.type){case"bold":return"**";case"italic":return"*";case"strike":return"~";case"underline":return"+";default:return""}},"markToMD"),jn=a(e=>{var t,r,o,n,i,l,s,c,u,d,p,g,b,v;switch(e.type){case"variable":return`{{${(t=e.attrs)==null?void 0:t.id}}}`;case"text":{let f=e.text||"";if((r=e.marks)!=null&&r.length){let h=e.marks.map(Nb).filter(Boolean);f=h.join("")+f+h.reverse().join("")}let y=(o=e.marks)==null?void 0:o.find(h=>h.type==="link");return y&&(f=`[${f}](${(n=y.attrs)==null?void 0:n.href})`),f}case"hardBreak":return`
174
+ `;case"paragraph":return(((i=e.content)==null?void 0:i.map(jn).join(""))||"")+`
175
+
176
+ `;case"heading":{let f=((l=e.attrs)==null?void 0:l.level)||1,y="#".repeat(f)+" ",h=((s=e.content)==null?void 0:s.map(jn).join(""))||"";return y+h+`
177
+
178
+ `}case"blockquote":return(((c=e.content)==null?void 0:c.map(jn).join(""))||"").split(`
179
+ `).map(y=>`> ${y}`).join(`
180
+ `)+`
181
+
182
+ `;case"imageBlock":{let f=((u=e.attrs)==null?void 0:u.alt)||"",y=((d=e.attrs)==null?void 0:d.sourcePath)||"",h=(p=e.attrs)==null?void 0:p.link,L=`![${f}](${y})`;return h?`[${L}](${h})
183
+
184
+ `:L+`
185
+
186
+ `}case"divider":return`---
187
+
188
+ `;case"button":{let f=((g=e.attrs)==null?void 0:g.label)||"",y=((b=e.attrs)==null?void 0:b.link)||"#";return`[${f}](${y})
189
+
190
+ `}default:return((v=e.content)==null?void 0:v.map(jn).join(""))||""}},"convertNodeToMarkdown");function ga(e){return e.content?e.content.map(jn).join("").trim():""}a(ga,"convertTiptapToMarkdown");import{useAtom as Wp,useAtomValue as rn,useSetAtom as Ub}from"jotai";import{forwardRef as Zb,memo as _b,useCallback as ba}from"react";import{forwardRef as Lb}from"react";import{jsx as Ib}from"react/jsx-runtime";var Bp=Lb(({children:e},t)=>Ib("div",{ref:t,className:"courier-z-30 courier-flex courier-w-full courier-bg-primary courier-h-12 courier-border-b rounded-b-none rounded-t-sm courier-shadow-none courier-justify-between courier-items-center courier-px-4",children:e}));var ha=a((e,t)=>new Promise(r=>{let o=new FileReader;o.onload=n=>{var l;let i=new Image;i.onload=()=>{var p;let s,c;i.width>i.height?(s=Math.min(t,i.width),c=Math.round(i.height/i.width*s)):(c=Math.min(t,i.height),s=Math.round(i.width/i.height*c));let u=document.createElement("canvas");u.width=s,u.height=c;let d=u.getContext("2d");if(d){d.imageSmoothingEnabled=!0,d.imageSmoothingQuality="high",d.drawImage(i,0,0,s,c);let g=.8,b=u.toDataURL(e.type||"image/jpeg",g),v=0,f=5;for(;b.length>512e3&&v<f;)v++,g-=.1,g<.3&&(g=.3),b=u.toDataURL(e.type||"image/jpeg",g);r({dataUrl:b,width:s,height:c})}else r({dataUrl:(p=n.target)==null?void 0:p.result,width:i.width,height:i.height})},i.src=(l=n.target)==null?void 0:l.result},o.readAsDataURL(e)}),"resizeImage");import{useCallback as ko,useRef as Eb,useState as Ab}from"react";import{jsx as yl,jsxs as Sb}from"react/jsx-runtime";var Hp=a(({onFileSelect:e})=>{let[t,r]=Ab(!1),o=Eb(null),n=ko(p=>{p.preventDefault(),p.stopPropagation(),p.dataTransfer.types.includes("Files")&&Array.from(p.dataTransfer.items).some(v=>v.type.startsWith("image/"))&&(r(!0),p.dataTransfer.dropEffect="copy")},[]),i=ko(p=>{p.preventDefault(),p.stopPropagation(),r(!1)},[]),l=ko(p=>{p.preventDefault(),p.stopPropagation(),p.dataTransfer.types.includes("Files")&&Array.from(p.dataTransfer.items).some(v=>v.type.startsWith("image/"))&&r(!0)},[]),s=ko(async p=>{try{let{dataUrl:g}=await ha(p,800);e==null||e(g),o.current&&(o.current.value="")}catch(g){console.error("Error processing image:",g),o.current&&(o.current.value="")}},[e]),c=ko(p=>{p.preventDefault(),p.stopPropagation(),r(!1);let b=Array.from(p.dataTransfer.files).find(v=>v.type.startsWith("image/"));b&&s(b)},[s]),u=ko(p=>{var b;let g=(b=p.target.files)==null?void 0:b[0];g&&s(g)},[s]),d=ko(p=>{var g;p.preventDefault(),p.stopPropagation(),(g=o.current)==null||g.click()},[]);return Sb("div",{className:I("courier-bg-gray-100 courier-rounded-md courier-flex courier-flex-row courier-items-center courier-cursor-pointer courier-transition-colors courier-py-4 courier-px-6 courier-gap-1 !courier-w-fit",t&&"courier-border-primary courier-bg-gray-50"),onDragOver:n,onDragEnter:l,onDragLeave:i,onDrop:c,style:{pointerEvents:"all"},children:[yl("span",{className:"courier-text-sm courier-pointer-events-none",children:"Drag and drop logo, or"}),yl("button",{className:"courier-underline courier-font-medium courier-text-sm",onClick:d,type:"button",children:"Browse"}),yl("input",{ref:o,type:"file",accept:"image/*",className:"courier-hidden",onChange:u},"logo-input")]})},"LogoUploader");import{zodResolver as Rb}from"@hookform/resolvers/zod";import{useAtom as Bb,useAtomValue as Hb,useSetAtom as Db}from"jotai";import{ArrowUp as Vb}from"lucide-react";import{memo as Fb,useCallback as Dp,useEffect as Ob,useMemo as Vp,useRef as Wb}from"react";import{useForm as zb}from"react-hook-form";import{jsx as $,jsxs as yt}from"react/jsx-runtime";var Fp=a(({isActive:e,onClick:t,value:r})=>$("div",{className:I("courier-w-full courier-h-16 courier-rounded-md courier-border-border courier-border courier-overflow-hidden courier-bg-secondary courier-cursor-pointer",e&&"!courier-border-[#3B82F6]"),onClick:t,children:$("div",{className:"courier-h-full courier-m-2 courier-rounded-md courier-border-border courier-border courier-shadow-md courier-bg-background courier-overflow-hidden",children:r==="border"&&$("div",{className:"courier-w-full courier-bg-[#000000] courier-h-1"})})}),"HeaderStyle"),$b=a(()=>{let[e,t]=Bb(ar),r=Db(Zt),o=Hb(At),n=Wb(null),i=zb({resolver:Rb(Rp),defaultValues:{...dt,...e},mode:"onChange"});Ob(()=>{e&&i.reset(e)},[e,i]);let l=Dp(()=>{t(i.getValues())},[i,t]),s=Dp(d=>{var p;if(o){if(d){let b={type:"doc",content:[...o.getJSON().content||[],{type:"paragraph",content:[{type:"text",text:"Manage Notification Preferences",marks:[{type:"link",attrs:{href:"{{urls.preferences}}"}}]}]}]};o.chain().focus().setContent(b).run()}else{let b=((p=o.getJSON().content)==null?void 0:p.filter(v=>{var y;return v.type!=="paragraph"?!0:!((y=v.content)==null?void 0:y.some(h=>{var L;return h.type==="text"&&((L=h.marks)==null?void 0:L.some(w=>{var m;return w.type==="link"&&((m=w.attrs)==null?void 0:m.href)==="{{urls.preferences}}"}))}))}))||[];o.chain().focus().setContent({type:"doc",content:b}).run()}r(ga(o.getJSON()))}},[o,r]),c=Vp(()=>{var d,p;return((p=(d=o==null?void 0:o.extensionManager.extensions.find(g=>g.name==="variableSuggestion"))==null?void 0:d.options)==null?void 0:p.variables)||{}},[o]),u=Vp(()=>_t(c),[c]);return $(tt,{...i,children:$("form",{onChange:()=>l(),children:yt("div",{className:"courier-pb-6",children:[$("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Header style"}),$(W,{control:i.control,name:"headerStyle",render:({field:d})=>yt(F,{className:"courier-mb-4",children:[$(O,{children:yt("div",{className:"courier-w-full courier-flex courier-flex-row courier-gap-3",children:[$(Fp,{isActive:d.value==="plain",onClick:()=>{d.onChange("plain"),t({...i.getValues(),headerStyle:"plain"})},value:"plain"}),$(Fp,{isActive:d.value==="border",onClick:()=>{d.onChange("border"),t({...i.getValues(),headerStyle:"border"})},value:"border"})]})}),$(U,{})]})}),$(ce,{className:"courier-mb-4"}),$("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Logo"}),yt("div",{className:"courier-flex courier-flex-row courier-gap-3 courier-mb-3",children:[i.getValues().logo?$(xe,{onClick:()=>{let d=i.getValues();d.logo="",i.reset(d),t({...d}),n.current&&(n.current.value=""),l()},className:"courier-w-full",variant:"outline",type:"button",children:"Remove logo"}):yt(xe,{onClick:d=>{d.preventDefault(),n.current&&(n.current.value="",n.current.click())},className:"courier-w-full",variant:"outline",type:"button",children:[$(Vb,{strokeWidth:1.25,className:"courier-w-4 courier-h-4 courier-mr-2 courier-text-foreground"}),"Upload logo"]}),$("input",{ref:n,type:"file",accept:"image/*",className:"courier-hidden",onChange:async d=>{var g;let p=(g=d.target.files)==null?void 0:g[0];if(p)try{let{dataUrl:b}=await ha(p,800),v=i.getValues();v.logo=b,i.reset(v),t({...v})}catch(b){console.error("Error processing image:",b)}n.current&&(n.current.value="")}})]}),$(W,{control:i.control,name:"link",render:({field:d})=>yt(F,{className:"courier-mb-3",children:[$(O,{children:$(kt,{as:"Textarea",placeholder:"Link",...d,variables:u,onChange:p=>{d.onChange(p),l()}})}),$(U,{})]})}),$(ce,{className:"courier-mb-4"}),$("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Brand color"}),$(W,{control:i.control,name:"brandColor",render:({field:d})=>yt(F,{className:"courier-mb-4",children:[$(O,{children:$(Oe,{...d,defaultValue:d.value,onChange:p=>{d.onChange(p),l()}})}),$(U,{})]})}),$(ce,{className:"courier-mb-4"}),$("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Footer links"}),yt("div",{className:"courier-flex courier-flex-col courier-gap-3 courier-mb-3",children:[$(W,{control:i.control,name:"facebookLink",render:({field:d})=>yt(F,{children:[$(O,{children:$(re,{startAdornment:$(hn,{}),placeholder:"facebook.com/username",...d,autoFocus:!0})}),$(U,{})]})}),$(W,{control:i.control,name:"linkedinLink",render:({field:d})=>yt(F,{children:[$(O,{children:$(re,{startAdornment:$(vn,{}),placeholder:"linkedin.com/username",...d})}),$(U,{})]})}),$(W,{control:i.control,name:"instagramLink",render:({field:d})=>yt(F,{children:[$(O,{children:$(re,{startAdornment:$(bn,{}),placeholder:"instagram.com/username",...d})}),$(U,{})]})}),$(W,{control:i.control,name:"mediumLink",render:({field:d})=>yt(F,{children:[$(O,{children:$(re,{startAdornment:$(yn,{}),placeholder:"medium.com/username",...d})}),$(U,{})]})}),$(W,{control:i.control,name:"xLink",render:({field:d})=>yt(F,{children:[$(O,{children:$(re,{startAdornment:$(wn,{}),placeholder:"x.com/username",...d})}),$(U,{})]})})]}),$(ce,{className:"courier-mb-4"}),$("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Footer actions"}),$(W,{control:i.control,name:"isPreferences",render:({field:d})=>yt(F,{className:"courier-flex courier-flex-row courier-items-center courier-gap-2 courier-mb-4",children:[$(O,{children:$(No,{checked:d.value,onCheckedChange:p=>{i.setValue("isPreferences",p),d.onChange(p),s(p);let g={...i.getValues(),isPreferences:p};t(g)}})}),$(St,{className:"!courier-m-0",children:"Manage Preferences"}),$(U,{})]})})]})})})},"SideBarComponent"),Op=Fb($b);import{Fragment as jb,jsx as it,jsxs as on}from"react/jsx-runtime";var qb=Zb(({hidePublish:e=!1,templateEditor:t,variables:r},o)=>{var m,C,P,A,R,k,M,B;let n=Ub(Ro),{publishBrand:i}=qn(),l=rn(Ce),s=rn(Et),c=rn(et),u=rn(pe),d=rn(de),p=rn(At),[g,b]=Wp(ar),[v,f]=Wp(Zt),y=ba(()=>{i()},[i]),h=ba(({editor:x})=>{f(ga(x.getJSON()))},[f]),L=ba(x=>{b(E=>E?{...E,logo:x}:{...dt,logo:x})},[b]),w=ba(()=>{n("template")},[n]);return on(jb,{children:[it("div",{className:"courier-z-30 courier-w-full courier-h-12",children:on(Bp,{children:[it("div",{className:"courier-text-sm courier-font-medium",children:"Brand theme"}),on("div",{className:"courier-flex courier-gap-2 courier-items-center",children:[c!==null&&it(ui,{isLoading:!!u,isSaving:!!c,isError:!!d}),t&&it(xe,{variant:"outline",buttonSize:"small",onClick:w,disabled:s===!0||c===!0,children:"Back"}),!e&&u!==null&&it(xe,{variant:"primary",buttonSize:"small",disabled:!((C=(m=l==null?void 0:l.data)==null?void 0:m.tenant)!=null&&C.brand)||s===!0||c!==!1,onClick:y,children:s?"Publishing...":"Publish changes"})]})]})}),on("div",{className:"courier-flex courier-flex-1 courier-flex-row courier-overflow-hidden",children:[it("div",{className:"courier-flex courier-flex-col courier-flex-1",children:on("div",{className:"courier-editor-container",ref:o,children:[it("div",{className:"courier-mb-3 courier-max-w-2xl courier-self-center courier-w-full",children:"Header"}),on("div",{className:I("courier-editor-main courier-transition-all courier-duration-300 courier-ease-in-out courier-py-5 courier-px-9 courier-mb-8 courier-relative courier-overflow-hidden courier-flex courier-flex-col courier-items-start",(g==null?void 0:g.headerStyle)==="border"&&"courier-pt-6"),children:[(g==null?void 0:g.headerStyle)==="border"&&it("div",{className:"courier-absolute courier-top-0 courier-left-0 courier-right-0 courier-h-2",style:{backgroundColor:g.brandColor}}),g!=null&&g.logo?it("img",{src:g.logo,alt:"Brand logo",className:"courier-w-auto courier-max-w-36 courier-object-contain courier-cursor-default"}):it(Hp,{onFileSelect:L})]}),it("div",{className:"courier-mb-3 courier-max-w-2xl courier-self-center courier-w-full",children:"Footer"}),it("div",{className:"courier-theme-editor-main courier-transition-all courier-duration-300 courier-ease-in-out courier-pt-3 courier-pb-5 courier-px-9",children:it(zn,{value:v!=null?v:(B=(M=(k=(R=(A=(P=l==null?void 0:l.data)==null?void 0:P.tenant)==null?void 0:A.brand)==null?void 0:R.settings)==null?void 0:k.email)==null?void 0:M.footer)==null?void 0:B.markdown,variables:r,facebookLink:g==null?void 0:g.facebookLink,linkedinLink:g==null?void 0:g.linkedinLink,instagramLink:g==null?void 0:g.instagramLink,mediumLink:g==null?void 0:g.mediumLink,xLink:g==null?void 0:g.xLink,onUpdate:h})})]})}),it("div",{className:"courier-editor-sidebar courier-opacity-100 courier-translate-x-0 courier-w-64 courier-flex-shrink-0",children:it("div",{className:"courier-p-4 courier-h-full",children:p&&it(Op,{})})})]})]})}),zp=_b(qb);import{jsx as Zp}from"react/jsx-runtime";var Qb=Kb(({hidePublish:e=!1,autoSaveDebounce:t=200,autoSave:r=!0,theme:o,...n},i)=>{let l=Cl(pe),s=Up(!0),c=Cl(Le),{getTenant:u,saveBrand:d}=qn(),[p,g]=$p(Ce),b=Gb(Zt),v=Cl(Zt),[f,y]=$p(ar),h=Up(!1);nn(()=>{var w,m;p&&c!==((m=(w=p==null?void 0:p.data)==null?void 0:w.tenant)==null?void 0:m.tenantId)&&(g(null),b(null),s.current=!1)},[p,c,g,b]);let{handleAutoSave:L}=fa({onSave:async w=>{await d(w)},enabled:l!==null&&r&&v!==null,debounceMs:t,onError:Xb(()=>()=>Yb.error("Error saving theme"),[])});return nn(()=>{!c||l||p&&l===!1||u()},[c,u,l,p]),nn(()=>{v&&setTimeout(()=>{h.current=!0},500)},[v]),nn(()=>{if(!h.current||!f)return;let w={colors:{primary:f==null?void 0:f.brandColor,secondary:f==null?void 0:f.textColor,tertiary:f==null?void 0:f.subtleColor},email:{header:{barColor:(f==null?void 0:f.headerStyle)==="border"?f==null?void 0:f.brandColor:"",logo:{href:f==null?void 0:f.link,image:f==null?void 0:f.logo}},footer:{markdown:v!=null?v:void 0,social:{facebook:{url:f==null?void 0:f.facebookLink},instagram:{url:f==null?void 0:f.instagramLink},linkedin:{url:f==null?void 0:f.linkedinLink},medium:{url:f==null?void 0:f.mediumLink},twitter:{url:f==null?void 0:f.xLink}}}}};L(w)},[f,v,L]),nn(()=>{l||(s.current=!1)},[l]),nn(()=>{var w,m,C,P,A,R,k,M,B,x,E,H,V,j,J,ee,fe,Se,Ve,ae,ye,Ne,ge,Re,pt,_e,at,Te,mt,st,xt,Mt,Nt,qe,Ct,Lt,It,je;if(!f){let T=(C=(m=(w=p==null?void 0:p.data)==null?void 0:w.tenant)==null?void 0:m.brand)==null?void 0:C.settings,_=(k=v==null?void 0:v.split(`
191
+ `))!=null?k:(R=(A=(P=T==null?void 0:T.email)==null?void 0:P.footer)==null?void 0:A.markdown)==null?void 0:R.split(`
192
+ `),q=_==null?void 0:_.find(oe=>oe.includes("{{urls.preferences}}"));y({brandColor:((M=T==null?void 0:T.colors)==null?void 0:M.primary)||dt.brandColor,textColor:((B=T==null?void 0:T.colors)==null?void 0:B.secondary)||dt.textColor,subtleColor:((x=T==null?void 0:T.colors)==null?void 0:x.tertiary)||dt.subtleColor,headerStyle:(H=(E=T==null?void 0:T.email)==null?void 0:E.header)!=null&&H.barColor?"border":"plain",logo:((J=(j=(V=T==null?void 0:T.email)==null?void 0:V.header)==null?void 0:j.logo)==null?void 0:J.image)||dt.logo,link:((Se=(fe=(ee=T==null?void 0:T.email)==null?void 0:ee.header)==null?void 0:fe.logo)==null?void 0:Se.href)||dt.link,facebookLink:((Ne=(ye=(ae=(Ve=T==null?void 0:T.email)==null?void 0:Ve.footer)==null?void 0:ae.social)==null?void 0:ye.facebook)==null?void 0:Ne.url)||dt.facebookLink,linkedinLink:((_e=(pt=(Re=(ge=T==null?void 0:T.email)==null?void 0:ge.footer)==null?void 0:Re.social)==null?void 0:pt.linkedin)==null?void 0:_e.url)||dt.linkedinLink,instagramLink:((st=(mt=(Te=(at=T==null?void 0:T.email)==null?void 0:at.footer)==null?void 0:Te.social)==null?void 0:mt.instagram)==null?void 0:st.url)||dt.instagramLink,mediumLink:((qe=(Nt=(Mt=(xt=T==null?void 0:T.email)==null?void 0:xt.footer)==null?void 0:Mt.social)==null?void 0:Nt.medium)==null?void 0:qe.url)||dt.mediumLink,xLink:((je=(It=(Lt=(Ct=T==null?void 0:T.email)==null?void 0:Ct.footer)==null?void 0:Lt.social)==null?void 0:It.twitter)==null?void 0:je.url)||dt.xLink,isPreferences:!!q})}},[p,y,v,f]),Zp(sr,{theme:o,isLoading:!!(l&&s.current),children:Zp(zp,{ref:i,hidePublish:e,...n})})}),_p=Jb(Qb);import{jsx as Kn}from"react/jsx-runtime";var n0=a(({theme:e,variables:t,hidePublish:r=!1,autoSave:o=!0,autoSaveDebounce:n=200,brandEditor:i=!1,brandProps:l,channels:s=["email","sms","push","inbox"],routing:c})=>{let u=Gn(pe),d=Gn(de),[p,g]=va(Ce),b=Gn(Tr),v=Gn(Le),[f,y]=va(Xr),{getTenant:h,saveTemplate:L}=Qr(),w=Gn(Ro),m=r0(!1),[C,P]=va(ke),A=qp(Zt),R=qp(ar),[k,M]=va(pi);qr(()=>{s!=null&&s.length&&M(s[0])},[s,M]),qr(()=>{var E;let x=(E=p==null?void 0:p.data)==null?void 0:E.tenant;b&&x&&!(x!=null&&x.notification)&&u===!1&&(s!=null&&s.length)&&M(s[0])},[b,p,u,s,M]),qr(()=>{var E,H;let x=(E=p==null?void 0:p.data)==null?void 0:E.tenant;b&&x&&(x!=null&&x.notification)&&(b!==((H=x==null?void 0:x.notification)==null?void 0:H.notificationId)||v!==(x==null?void 0:x.tenantId))&&(g(null),P(null),A(null),R(null),y(null),M((s==null?void 0:s[0])||"email"),m.current=!1)},[s,b,m,p,v,P,y,g,A,R,M]);let{handleAutoSave:B}=fa({onSave:async()=>{await L(c)},debounceMs:n,enabled:u!==null&&o,onError:t0(()=>()=>o0.error("Error saving template"),[])});if(qr(()=>{!b||!v||u||p&&u===!1||d||h({includeBrand:i})},[b,v,i,h,u,p,d]),qr(()=>{var E,H,V,j;if(u!==!1)return;let x=((j=(V=(H=(E=p==null?void 0:p.data)==null?void 0:E.tenant)==null?void 0:H.notification)==null?void 0:V.data)==null?void 0:j.content)||null;P(x)},[p,P,u]),qr(()=>{C&&setTimeout(()=>{m.current=!0},500)},[C,k]),qr(()=>{m.current=!1},[k]),qr(()=>{!m.current||!C||B(C)},[C,B]),i&&w==="brand")return Kn(_p,{hidePublish:r,autoSave:o,templateEditor:!0,variables:t,...l});if(w==="template"&&k==="email")return Kn(ap,{variables:t,theme:e,isLoading:!!u,hidePublish:r,channels:s,brandEditor:i,routing:c});if(w==="template"&&k==="sms")return Kn(Ip,{theme:e,hidePublish:r,channels:s,routing:c});if(w==="template"&&k==="push")return Kn(Tp,{theme:e,hidePublish:r,channels:s,routing:c});if(w==="template"&&k==="inbox")return Kn(hp,{theme:e,hidePublish:r,channels:s,routing:c})},"TemplateEditorComponent"),NH=e0(n0);var SH=Ki,RH=ua,BH=na,HH=ra;export{_p as BrandEditor,zn as BrandFooter,Pb as BrandProvider,nl as ChannelRootContainer,il as EditorSidebar,SH as EmailChannel,el as EmailEditor,np as EmailEditorContainer,ip as EmailEditorMain,rl as EmailSideBar,ol as EmailSideBarItemDetails,HH as InboxChannel,ll as InboxEditor,cl as InboxSideBar,Ys as PreviewPanel,BH as PushChannel,pl as PushEditor,RH as SMSChannel,gl as SMSEditor,$H as SortableContext,NH as TemplateEditor,tm as TemplateProvider,Js as TextMenu,Ye as apiUrlAtom,Ll as brandApplyAtom,I as cn,Xn as editorStore,pe as isTenantLoadingAtom,Et as isTenantPublishingAtom,et as isTenantSavingAtom,Tr as templateIdAtom,Ce as tenantDataAtom,de as tenantErrorAtom,Le as tenantIdAtom,Qe as tokenAtom,qn as useBrandActions,bl as useChannels,Qr as useTemplateActions};
193
193
  //# sourceMappingURL=index.js.map