@trycourier/react-designer 0.0.7 → 0.0.8

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 (50) hide show
  1. package/README.md +21 -0
  2. package/dist/cjs/index.css +1 -1
  3. package/dist/cjs/index.css.map +2 -2
  4. package/dist/cjs/index.js +47 -47
  5. package/dist/cjs/index.js.map +4 -4
  6. package/dist/cjs/styles.css +113 -67
  7. package/dist/components/Providers/TemplateProvider.d.ts +11 -5
  8. package/dist/components/Providers/TemplateProvider.test.d.ts +1 -0
  9. package/dist/components/Providers/index.d.ts +1 -1
  10. package/dist/components/Providers/store.d.ts +0 -9
  11. package/dist/components/TemplateEditor/Channels/Email/Email.d.ts +2 -1
  12. package/dist/components/TemplateEditor/Channels/Email/EmailLayout.d.ts +1 -1
  13. package/dist/components/TemplateEditor/Channels/Inbox/Inbox.d.ts +2 -1
  14. package/dist/components/TemplateEditor/Channels/Inbox/InboxEditor.d.ts +2 -1
  15. package/dist/components/TemplateEditor/Channels/Inbox/InboxLayout.d.ts +1 -1
  16. package/dist/components/TemplateEditor/Channels/Push/Push.d.ts +2 -1
  17. package/dist/components/TemplateEditor/Channels/Push/PushEditor.d.ts +2 -1
  18. package/dist/components/TemplateEditor/Channels/Push/PushLayout.d.ts +1 -1
  19. package/dist/components/TemplateEditor/Channels/SMS/SMS.d.ts +2 -1
  20. package/dist/components/TemplateEditor/Channels/SMS/SMSEditor.d.ts +2 -1
  21. package/dist/components/TemplateEditor/Channels/SMS/SMSLayout.d.ts +1 -1
  22. package/dist/components/TemplateEditor/Layout/Layout.d.ts +2 -0
  23. package/dist/components/TemplateEditor/TemplateEditor.d.ts +3 -1
  24. package/dist/components/TemplateEditor/index.d.ts +3 -1
  25. package/dist/components/TemplateEditor/store.d.ts +3 -0
  26. package/dist/components/extensions/CustomCode/CustomCode.d.ts +11 -0
  27. package/dist/components/extensions/CustomCode/CustomCode.test.d.ts +1 -0
  28. package/dist/components/extensions/CustomCode/CustomCode.types.d.ts +11 -0
  29. package/dist/components/extensions/CustomCode/CustomCodeComponent.d.ts +9 -0
  30. package/dist/components/extensions/CustomCode/CustomCodeForm.d.ts +8 -0
  31. package/dist/components/extensions/CustomCode/MonacoCodeEditor.d.ts +22 -0
  32. package/dist/components/extensions/CustomCode/index.d.ts +6 -0
  33. package/dist/components/extensions/index.d.ts +1 -0
  34. package/dist/components/ui/Blocks/CustomCodeBlock/CustomCodeBlock.d.ts +3 -0
  35. package/dist/components/ui/Blocks/CustomCodeBlock/index.d.ts +1 -0
  36. package/dist/components/ui/Blocks/index.d.ts +1 -0
  37. package/dist/components/ui/ContentIcon/ContentIcon.d.ts +1 -0
  38. package/dist/components/ui/FormHeader/FormHeader.d.ts +1 -1
  39. package/dist/components/ui/MainLayout/MainLayout.d.ts +3 -1
  40. package/dist/components/ui-kit/Icon/RightToLineIcon.d.ts +3 -0
  41. package/dist/components/ui-kit/Icon/index.d.ts +1 -0
  42. package/dist/components/ui-kit/ThemeProvider/ThemeProvider.d.ts +2 -0
  43. package/dist/components/ui-kit/ThemeProvider/ThemeProvider.types.d.ts +3 -0
  44. package/dist/esm/index.css +1 -1
  45. package/dist/esm/index.css.map +2 -2
  46. package/dist/esm/index.js +46 -46
  47. package/dist/esm/index.js.map +4 -4
  48. package/dist/esm/styles.css +113 -67
  49. package/dist/styles.css +113 -67
  50. package/package.json +3 -1
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 _m=Object.defineProperty;var s=(e,t)=>_m(e,"name",{value:t,configurable:!0});import{Provider as qm,useAtom as Ua}from"jotai";import{useEffect as jm,memo as Gm}from"react";import{atom as Vt,createStore as Zm}from"jotai";var Kt=Zm(),bt=Vt("https://api.courier.com/client/q"),yt=Vt(""),nt=Vt(""),mr=Vt(""),ze=Vt(null),he=Vt(null),it=Vt(null),vt=Vt(null),ee=Vt(null),vc=Vt(!0),vi=Vt(null),xi=Vt(null);import{Fragment as Ym,jsx as $a}from"react/jsx-runtime";var Km=s(({children:e,tenantId:t,token:r,apiUrl:o})=>{let[,n]=Ua(bt),[,i]=Ua(yt),[,l]=Ua(nt);return jm(()=>{i(r),l(t),o&&n(o)},[r,t,o,n,i,l]),$a(Ym,{children:e})},"BrandProviderContext"),Jm=s(e=>$a(qm,{store:Kt,children:$a(Km,{...e})}),"BrandProviderComponent"),Xm=Gm(Jm);import{Provider as nf,useAtom as kn}from"jotai";import{memo as af,useEffect as En,useRef as sf}from"react";import{toast as lf}from"sonner";import{useAtom as _o,useSetAtom as _a}from"jotai";import{atom as lo}from"jotai";var co=lo(null),be=lo(null),zo=lo(null),Uo=lo(null),Pn=lo(null),Ot=lo(null),Mt=lo(!1);var Jt=s((e,t)=>({message:e,toastProps:t}),"createCustomError"),Uy=s(e=>{var t;return((t=e.toastProps)==null?void 0:t.action)!==void 0},"isRetryableError"),$y=s(e=>typeof e=="string"?e:e&&typeof e=="object"&&"message"in e?String(e.message):e instanceof Error?e.message:"Unknown error","extractErrorMessage"),$o=s(e=>typeof e=="string"?Jt(e):e,"convertLegacyError");import{atom as xc}from"jotai";import{toast as Qm}from"sonner";var Cc=xc(null,async(e,t,r)=>{var l;let o=e(bt),n=e(yt),i=e(nt);if(!o){t(ee,{message:"Missing API URL",toastProps:{duration:5e3}});return}t(it,!0),t(ee,null);try{let a=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 Pf=Object.defineProperty;var a=(e,t)=>Pf(e,"name",{value:t,configurable:!0});import{Provider as zf,useAtom as ls,createStore as $f}from"jotai";import{useEffect as Uf,memo as _f,useMemo as eu}from"react";import{atom as $t}from"jotai";var kt=$t("https://api.courier.com/client/q"),Et=$t(""),dt=$t(""),hr=$t(""),_e=$t(null),ge=$t(null),pt=$t(null),Mt=$t(null),re=$t(null),_c=$t(!0),Pi=$t(null),ki=$t(null);import{Provider as Lf,useAtom as An,createStore as If}from"jotai";import{createContext as Sf,memo as Rf,useContext as Bf,useEffect as Li,useMemo as ss,useRef as Hf}from"react";import{toast as Df}from"sonner";import{useAtom as Go,useSetAtom as is}from"jotai";import{atom as Yr}from"jotai";var fo=Yr(null),he=Yr(null),Zo=Yr(null),qo=Yr(null),Nn=Yr(null),Ut=Yr(null),Bt=Yr(!1),br=Yr(!1);var Qt=a((e,t)=>({message:e,toastProps:t}),"createCustomError"),zv=a(e=>{var t;return((t=e.toastProps)==null?void 0:t.action)!==void 0},"isRetryableError"),$v=a(e=>typeof e=="string"?e:e&&typeof e=="object"&&"message"in e?String(e.message):e instanceof Error?e.message:"Unknown error","extractErrorMessage"),jo=a(e=>typeof e=="string"?Qt(e):e,"convertLegacyError");import{atom as Zc}from"jotai";import{toast as kf}from"sonner";var qc=Zc(null,async(e,t,r)=>{var s;let o=e(kt),n=e(Et),i=e(dt);if(!o){t(re,{message:"Missing API URL",toastProps:{duration:5e3}});return}t(pt,!0),t(re,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:`
47
47
  mutation SaveTenantBrand($input: SaveBrandSettingsInput!) {
48
48
  tenant {
49
49
  brand {
@@ -53,8 +53,8 @@ var _m=Object.defineProperty;var s=(e,t)=>_m(e,"name",{value:t,configurable:!0})
53
53
  }
54
54
  }
55
55
  }
56
- `,variables:{input:{tenantId:i,settings:r}}})})).json();if(!a.data)if(a.errors){let u=(l=a.errors)==null?void 0:l.map(d=>d.message);t(ee,{message:u.join(`
57
- `),toastProps:{duration:4e3}})}else t(ee,{message:"Error saving brand settings",toastProps:{duration:4e3}});return a}catch(c){throw t(ee,{message:"Network connection failed",toastProps:{duration:5e3,description:"Failed to save brand settings"}}),c}finally{t(it,!1)}}),Tc=xc(null,async(e,t)=>{let r=e(bt),o=e(yt),n=e(nt);if(!r){t(ee,{message:"Missing API URL",toastProps:{duration:5e3}});return}t(vt,!0),t(ee,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();if(!l.data)if(l.errors){let d=(s=l.errors)==null?void 0:s.map(c=>c.message);t(re,{message:d.join(`
57
+ `),toastProps:{duration:4e3}})}else t(re,{message:"Error saving brand settings",toastProps:{duration:4e3}});return l}catch(u){throw t(re,{message:"Network connection failed",toastProps:{duration:5e3,description:"Failed to save brand settings"}}),u}finally{t(pt,!1)}}),jc=Zc(null,async(e,t)=>{let r=e(kt),o=e(Et),n=e(dt);if(!r){t(re,{message:"Missing API URL",toastProps:{duration:5e3}});return}t(Mt,!0),t(re,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 _m=Object.defineProperty;var s=(e,t)=>_m(e,"name",{value:t,configurable:!0})
64
64
  }
65
65
  }
66
66
  }
67
- `,variables:{input:{tenantId:n}}})}),l=await i.json();return i.status===200?Qm.success("Brand published"):t(ee,{message:"Error publishing brand",toastProps:{duration:4e3}}),l}catch(i){throw t(ee,{message:"Network connection failed",toastProps:{duration:5e3,description:"Failed to publish brand"}}),i}finally{t(vt,!1)}});import{atom as ef}from"jotai";var Ci=ef(null,async(e,t,r)=>{var a,u,d,p,f;let o=e(bt),n=e(yt),i=e(nt),l=e(mr),c=(a=r==null?void 0:r.includeBrand)!=null?a:!0;if(!o||!n||!i){let h=[];o||h.push("API URL"),n||h.push("token"),i||h.push("tenant ID"),t(ee,{message:"Missing configuration",toastProps:{description:`Missing: ${h.join(", ")}`,duration:5e3}});return}t(he,!0),t(ee,null);try{let h=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}}})}),s=await i.json();return i.status===200?kf.success("Brand published"):t(re,{message:"Error publishing brand",toastProps:{duration:4e3}}),s}catch(i){throw t(re,{message:"Network connection failed",toastProps:{duration:5e3,description:"Failed to publish brand"}}),i}finally{t(Mt,!1)}});import{atom as Ef}from"jotai";var Ei=Ef(null,async(e,t,r)=>{var l,d,c,p,m;let o=e(kt),n=e(Et),i=e(dt),s=e(hr),u=(l=r==null?void 0:r.includeBrand)!=null?l:!0;if(!o||!n||!i){let g=[];o||g.push("API URL"),n||g.push("token"),i||g.push("tenant ID"),t(re,{message:"Missing configuration",toastProps:{description:`Missing: ${g.join(", ")}`,duration:5e3}});return}t(ge,!0),t(re,null);try{let g=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
@@ -122,11 +122,11 @@ var _m=Object.defineProperty;var s=(e,t)=>_m(e,"name",{value:t,configurable:!0})
122
122
  }
123
123
  }
124
124
  }
125
- `,variables:{tenantId:i,input:{notificationId:l,version:"latest"},brandInput:{version:"latest"},includeBrand:c}})}),g=await h.json(),b=h.status,y=(u=g.data)==null?void 0:u.tenant;if(y?(t(ze,g),t(zo,(d=y==null?void 0:y.notification)==null?void 0:d.publishedAt),t(Uo,(p=y==null?void 0:y.notification)==null?void 0:p.version)):b===401?t(ee,{message:"Authentication failed",toastProps:{duration:6e3}}):t(ee,{message:"Error fetching template data",toastProps:{duration:4e3}}),g.errors){let w=(f=g.errors)==null?void 0:f.map(N=>N.message);t(ee,{message:w.join(`
126
- `),toastProps:{duration:4e3}})}}catch{t(ee,{message:"Network connection failed",toastProps:{duration:5e3,description:"Failed to fetch template data"}})}finally{t(he,!1)}});import{atom as Nc}from"jotai";import{toast as rf}from"sonner";function Pc(e){return e.map(t=>t.type==="text"&&"content"in t?{type:"text",content:t.content}:t.type==="action"&&"content"in t&&"href"in t?{type:"action",content:t.content,href:t.href,...t.align&&{align:t.align}}:t)}s(Pc,"cleanInboxElements");function kc(e){return{...e,elements:e.elements.map(t=>t.type==="channel"&&t.channel==="inbox"&&t.elements?{...t,elements:Pc(t.elements)}:t)}}s(kc,"cleanTemplateContent");function Ec(e,t){if(!(e!=null&&e.elements))return"none";let r=e.elements.find(o=>o.type==="channel"&&o.channel===t);if(!r||r.type!=="channel")return"none";if("raw"in r&&r.raw&&("subject"in r.raw&&r.raw.subject||"title"in r.raw&&r.raw.title))return"raw";if("elements"in r&&r.elements){let o=r.elements.find(n=>n.type==="meta");if(o&&"title"in o&&o.title)return"meta"}return"none"}s(Ec,"getSubjectStorageFormat");function uo(e,t,r,o){let n=Ec(e,t);if(t==="push"){let i=wc(o),l=tf(o);return{elements:[],raw:{title:i||r,text:l||""}}}if(t==="inbox"){let i=wc(o),l=i||r,c=i?o.slice(1):o,a=Pc(c);return{elements:[{type:"meta",title:l},...a]}}if(n==="raw"){let i={};return t==="email"?i.subject=r:i.title=r,{elements:o,raw:i}}else return{elements:[{type:"meta",title:r},...o]}}s(uo,"createTitleUpdate");function wc(e){if(e.length===0)return null;let t=e[0];if(t.type==="text"&&"content"in t&&t.content){let r=t.content.trim();if(r&&r!==`
127
- `)return r}return null}s(wc,"extractTitleFromFirstElement");function tf(e){if(e.length<2)return null;let t=e[1];if(t.type==="text"&&"content"in t&&t.content){let r=t.content.trim();if(r&&r!==`
128
- `)return r}return null}s(tf,"extractTextFromSecondElement");function Ti(e,t){if(!e||e.type!=="channel")return"";if("raw"in e&&e.raw){if(t==="email"&&"subject"in e.raw&&e.raw.subject)return e.raw.subject;if("title"in e.raw&&e.raw.title)return e.raw.title}if("elements"in e&&e.elements){let r=e.elements.find(l=>l.type==="meta");if(r&&"title"in r&&typeof r.title=="string")return r.title;if(t==="email")return"";let o="",n="";for(let l of e.elements)if(l.type==="text"&&"content"in l&&l.content){let c=l.content.trim();c&&c!==`
129
- `&&("text_style"in l&&(l.text_style==="h1"||l.text_style==="h2")?n||(n=c):o||(o=c))}let i=n||o;if(i)return i}return""}s(Ti,"extractCurrentTitle");var wi=Nc(null,async(e,t,r)=>{var d;let o=e(bt),n=e(yt),i=e(nt),l=e(mr),c=e(be);if(!c)return;let a=kc(c);if(!o){t(ee,{message:"Missing API URL",toastProps:{duration:5e3}});return}t(it,!0),t(ee,null);let u={content:a,routing:r};try{let f=await(await fetch(o,{method:"POST",headers:{Authorization:`Bearer ${n}`,"x-courier-client-key":`Bearer ${n}`,"Content-Type":"application/json"},body:JSON.stringify({query:`
125
+ `,variables:{tenantId:i,input:{notificationId:s,version:"latest"},brandInput:{version:"latest"},includeBrand:u}})}),b=await g.json(),h=g.status,y=(d=b.data)==null?void 0:d.tenant;if(y?(t(_e,b),t(Zo,(c=y==null?void 0:y.notification)==null?void 0:c.publishedAt),t(qo,(p=y==null?void 0:y.notification)==null?void 0:p.version)):h===401?t(re,{message:"Authentication failed",toastProps:{duration:6e3}}):t(re,{message:"Error fetching template data",toastProps:{duration:4e3}}),b.errors){let T=(m=b.errors)==null?void 0:m.map(N=>N.message);t(re,{message:T.join(`
126
+ `),toastProps:{duration:4e3}})}}catch{t(re,{message:"Network connection failed",toastProps:{duration:5e3,description:"Failed to fetch template data"}})}finally{t(ge,!1)}});import{atom as Yc}from"jotai";import{toast as Nf}from"sonner";function Kc(e){return e.map(t=>t.type==="text"&&"content"in t?{type:"text",content:t.content}:t.type==="action"&&"content"in t&&"href"in t?{type:"action",content:t.content,href:t.href,...t.align&&{align:t.align}}:t)}a(Kc,"cleanInboxElements");function Jc(e){return{...e,elements:e.elements.map(t=>t.type==="channel"&&t.channel==="inbox"&&t.elements?{...t,elements:Kc(t.elements)}:t)}}a(Jc,"cleanTemplateContent");function Xc(e,t){if(!(e!=null&&e.elements))return"none";let r=e.elements.find(o=>o.type==="channel"&&o.channel===t);if(!r||r.type!=="channel")return"none";if("raw"in r&&r.raw&&("subject"in r.raw&&r.raw.subject||"title"in r.raw&&r.raw.title))return"raw";if("elements"in r&&r.elements){let o=r.elements.find(n=>n.type==="meta");if(o&&"title"in o&&o.title)return"meta"}return"none"}a(Xc,"getSubjectStorageFormat");function go(e,t,r,o){let n=Xc(e,t);if(t==="push"){let i=Gc(o),s=Mf(o);return{elements:[],raw:{title:i||r,text:s||""}}}if(t==="inbox"){let i=Gc(o),s=i||r,u=i?o.slice(1):o,l=Kc(u);return{elements:[{type:"meta",title:s},...l]}}if(n==="raw"){let i={};return t==="email"?i.subject=r:i.title=r,{elements:o,raw:i}}else return{elements:[{type:"meta",title:r},...o]}}a(go,"createTitleUpdate");function Gc(e){if(e.length===0)return null;let t=e[0];if(t.type==="text"&&"content"in t&&t.content){let r=t.content.trim();if(r&&r!==`
127
+ `)return r}return null}a(Gc,"extractTitleFromFirstElement");function Mf(e){if(e.length<2)return null;let t=e[1];if(t.type==="text"&&"content"in t&&t.content){let r=t.content.trim();if(r&&r!==`
128
+ `)return r}return null}a(Mf,"extractTextFromSecondElement");function Mi(e,t){if(!e||e.type!=="channel")return"";if("raw"in e&&e.raw){if(t==="email"&&"subject"in e.raw&&e.raw.subject)return e.raw.subject;if("title"in e.raw&&e.raw.title)return e.raw.title}if("elements"in e&&e.elements){let r=e.elements.find(s=>s.type==="meta");if(r&&"title"in r&&typeof r.title=="string")return r.title;if(t==="email")return"";let o="",n="";for(let s of e.elements)if(s.type==="text"&&"content"in s&&s.content){let u=s.content.trim();u&&u!==`
129
+ `&&("text_style"in s&&(s.text_style==="h1"||s.text_style==="h2")?n||(n=u):o||(o=u))}let i=n||o;if(i)return i}return""}a(Mi,"extractCurrentTitle");var Ni=Yc(null,async(e,t,r)=>{var c;let o=e(kt),n=e(Et),i=e(dt),s=e(hr),u=e(he);if(!u)return;let l=Jc(u);if(!o){t(re,{message:"Missing API URL",toastProps:{duration:5e3}});return}t(pt,!0),t(re,null);let d={content:l,routing:r};try{let m=await(await fetch(o,{method:"POST",headers:{Authorization:`Bearer ${n}`,"x-courier-client-key":`Bearer ${n}`,"Content-Type":"application/json"},body:JSON.stringify({query:`
130
130
  mutation SaveNotification($input: SaveNotificationInput!) {
131
131
  tenant {
132
132
  notification {
@@ -139,8 +139,8 @@ var _m=Object.defineProperty;var s=(e,t)=>_m(e,"name",{value:t,configurable:!0})
139
139
  }
140
140
  }
141
141
  }
142
- `,variables:{input:{tenantId:i,notificationId:l,name:l,data:u}}})})).json();if(f.data)t(Uo,f.data.tenant.notification.save.version);else if(f.errors){let h=(d=f.errors)==null?void 0:d.map(g=>g.message);t(ee,{message:h.join(`
143
- `),toastProps:{duration:4e3}})}else t(ee,{message:"Error saving template",toastProps:{duration:4e3}});return f}catch(p){throw t(ee,{message:"Network connection failed",toastProps:{duration:5e3,description:"Failed to save template"}}),p}finally{t(it,!1)}}),Mc=Nc(null,async(e,t)=>{let r=e(bt),o=e(yt),n=e(nt),i=e(mr),l=e(Uo);if(!l){t(ee,{message:"Version not defined",toastProps:{duration:5e3}});return}if(!r){t(ee,{message:"Missing API URL",toastProps:{duration:5e3}});return}t(vt,!0),t(ee,null);try{let c=await fetch(r,{method:"POST",headers:{Authorization:`Bearer ${o}`,"x-courier-client-key":`Bearer ${o}`,"Content-Type":"application/json"},body:JSON.stringify({query:`
142
+ `,variables:{input:{tenantId:i,notificationId:s,name:s,data:d}}})})).json();if(m.data)t(qo,m.data.tenant.notification.save.version);else if(m.errors){let g=(c=m.errors)==null?void 0:c.map(b=>b.message);t(re,{message:g.join(`
143
+ `),toastProps:{duration:4e3}})}else t(re,{message:"Error saving template",toastProps:{duration:4e3}});return m}catch(p){throw t(re,{message:"Network connection failed",toastProps:{duration:5e3,description:"Failed to save template"}}),p}finally{t(pt,!1)}}),Qc=Yc(null,async(e,t)=>{let r=e(kt),o=e(Et),n=e(dt),i=e(hr),s=e(qo);if(!s){t(re,{message:"Version not defined",toastProps:{duration:5e3}});return}if(!r){t(re,{message:"Missing API URL",toastProps:{duration:5e3}});return}t(Mt,!0),t(re,null);try{let u=await fetch(r,{method:"POST",headers:{Authorization:`Bearer ${o}`,"x-courier-client-key":`Bearer ${o}`,"Content-Type":"application/json"},body:JSON.stringify({query:`
144
144
  mutation PublishNotification($input: PublishNotificationInput!) {
145
145
  tenant {
146
146
  notification {
@@ -152,7 +152,7 @@ var _m=Object.defineProperty;var s=(e,t)=>_m(e,"name",{value:t,configurable:!0})
152
152
  }
153
153
  }
154
154
  }
155
- `,variables:{input:{tenantId:n,notificationId:i,version:l}}})}),a=await c.json();return c.status===200?(rf.success("Template published"),t(zo,new Date().toISOString()),t(Uo,a.data.tenant.notification.publish.version)):t(ee,{message:"Error publishing template",toastProps:{duration:4e3}}),a}catch(c){throw t(ee,{message:"Network connection failed",toastProps:{duration:5e3,description:"Failed to publish template"}}),c}finally{t(vt,!1)}});import{useMemo as of,useCallback as Ac}from"react";function Br(){let e=_a(Ci),t=_a(wi),r=_a(Mc),[o,n]=_o(he),[i,l]=_o(it),[c,a]=_o(vt),[u,d]=_o(ee),[p,f]=_o(ze),[h,g]=_o(be),b=Ac(v=>{d(v===null?null:typeof v=="string"?Jt(v):v)},[d]),y=of(()=>({getTemplate:async()=>{},saveTemplate:async()=>{},publishTemplate:r,isTemplateLoading:o,setIsTemplateLoading:n,isTemplateSaving:i,setIsTemplateSaving:l,isTemplatePublishing:c,setIsTemplatePublishing:a,templateError:u,setTemplateError:b,templateData:p,setTemplateData:f,templateEditorContent:h,setTemplateEditorContent:g,createCustomError:Jt,convertLegacyError:$o}),[o,c,i,r,n,a,l,f,g,b,p,h,u]);return{getTemplate:Ac(async v=>{let m=Gr.getTemplate;typeof m=="function"?await m(y):await e(v)},[y,e]),saveTemplate:s(async v=>{let m=Gr.saveTemplate;typeof m=="function"?await m(y,v):await t(v)},"saveTemplate"),publishTemplate:r,isTemplateLoading:o,setIsTemplateLoading:n,isTemplateSaving:i,setIsTemplateSaving:l,isTemplatePublishing:c,setIsTemplatePublishing:a,templateError:u,setTemplateError:b,templateData:p,setTemplateData:f,templateEditorContent:h,setTemplateEditorContent:g,createCustomError:Jt,convertLegacyError:$o}}s(Br,"useTemplateActions");import{Fragment as pf,jsx as Za}from"react/jsx-runtime";var cf=s(({children:e,templateId:t,tenantId:r,token:o,apiUrl:n})=>{let[,i]=kn(bt),[,l]=kn(yt),[,c]=kn(nt),[,a]=kn(mr),u=Br(),d=sf(u),[p]=kn(ee);return d.current=u,En(()=>{l(o),c(r),a(t),n&&i(n)},[o,r,t,n,i,l,c,a]),En(()=>{p&&lf.error(p.message,p.toastProps)},[p]),Za(pf,{children:e})},"TemplateProviderContext"),Gr={getTemplate:null,saveTemplate:null,uploadImage:null},uf=s(e=>(En(()=>{Gr.getTemplate=e.getTemplate||null,Kt.set(vi,e.getTemplate?()=>Promise.resolve():null)},[e.getTemplate]),En(()=>{Gr.saveTemplate=e.saveTemplate||null,Kt.set(xi,e.saveTemplate?()=>Promise.resolve():null)},[e.saveTemplate]),En(()=>{Gr.uploadImage=e.uploadImage||null},[e.uploadImage]),Za(nf,{store:Kt,children:Za(cf,{...e})})),"TemplateProviderComponent"),df=af(uf);import{useAtom as Hr}from"jotai";function Nn(){let[,e]=Hr(Ci),[,t]=Hr(Cc),[,r]=Hr(wi),[,o]=Hr(Tc),[n,i]=Hr(he),[l,c]=Hr(it),[a,u]=Hr(vt),[d,p]=Hr(ee),[f,h]=Hr(ze),g=s(N=>{p(N===null?null:typeof N=="string"?Jt(N):N)},"setTemplateError"),b={getTemplate:async()=>{},saveTemplate:async()=>{},publishTemplate:o,isTemplateLoading:n,setIsTemplateLoading:i,isTemplateSaving:l,setIsTemplateSaving:c,isTemplatePublishing:a,setIsTemplatePublishing:u,templateError:d,setTemplateError:g,templateData:f,setTemplateData:h,templateEditorContent:null,setTemplateEditorContent:()=>{},createCustomError:Jt,convertLegacyError:$o};return{getTemplate:s(async N=>{let v=Kt.get(vi);v?await v:await e(N)},"getTemplateWithOverride"),saveTemplate:s(async N=>{let v=Kt.get(xi);v?await v(b,N):await r(N)},"saveTemplateWithOverride"),saveBrand:t,publishBrand:o,isTemplateLoading:n,setIsTemplateLoading:i,isTemplateSaving:l,setIsTemplateSaving:c,isTemplatePublishing:a,setIsTemplatePublishing:u,templateError:d,setTemplateError:g,templateData:f,setTemplateData:h,createCustomError:Jt,convertLegacyError:$o}}s(Nn,"useBrandActions");import{useAtom as Lc}from"jotai";import{useCallback as mf}from"react";var Ic=s(async(e,t)=>{var a,u,d;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((p,f)=>{let h=new FileReader;h.onload=()=>{typeof h.result=="string"?p(h.result):f(new Error("Failed to read file as data URL"))},h.onerror=()=>f(h.error),h.readAsDataURL(e)})).split(",")[1];try{let f=await(await fetch(r,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${o}`},body:JSON.stringify({query:`
155
+ `,variables:{input:{tenantId:n,notificationId:i,version:s}}})}),l=await u.json();return u.status===200?(Nf.success("Template published"),t(Zo,new Date().toISOString()),t(qo,l.data.tenant.notification.publish.version)):t(re,{message:"Error publishing template",toastProps:{duration:4e3}}),l}catch(u){throw t(re,{message:"Network connection failed",toastProps:{duration:5e3,description:"Failed to publish template"}}),u}finally{t(Mt,!1)}});import{useMemo as Af,useCallback as as}from"react";function Wr(){let{overrideFunctions:e}=zr(),t=is(Ei),r=is(Ni),o=is(Qc),[n,i]=Go(ge),[s,u]=Go(pt),[l,d]=Go(Mt),[c,p]=Go(re),[m,g]=Go(_e),[b,h]=Go(he),y=as(f=>{p(f===null?null:typeof f=="string"?Qt(f):f)},[p]),T=Af(()=>({getTemplate:async()=>{},saveTemplate:async()=>{},publishTemplate:o,isTemplateLoading:n,setIsTemplateLoading:i,isTemplateSaving:s,setIsTemplateSaving:u,isTemplatePublishing:l,setIsTemplatePublishing:d,templateError:c,setTemplateError:y,templateData:m,setTemplateData:g,templateEditorContent:b,setTemplateEditorContent:h,createCustomError:Qt,convertLegacyError:jo}),[n,l,s,o,i,d,u,g,h,y,m,b,c]),N=as(async f=>{let x=e.getTemplate;typeof x=="function"?await x(T):await t(f)},[T,t,e]),v=as(async f=>{let x=e.saveTemplate;typeof x=="function"?await x(T,f):await r(f)},[T,r,e]);return{getTemplate:N,saveTemplate:v,publishTemplate:o,isTemplateLoading:n,setIsTemplateLoading:i,isTemplateSaving:s,setIsTemplateSaving:u,isTemplatePublishing:l,setIsTemplatePublishing:d,templateError:c,setTemplateError:y,templateData:m,setTemplateData:g,templateEditorContent:b,setTemplateEditorContent:h,createCustomError:Qt,convertLegacyError:jo}}a(Wr,"useTemplateActions");import{Fragment as Wf,jsx as Ai}from"react/jsx-runtime";var Ii=Sf(null),zr=a(()=>{let e=Bf(Ii);if(!e)throw new Error("useTemplateStore must be used within a TemplateProvider");return e},"useTemplateStore"),Ff=a(({children:e,templateId:t,tenantId:r,token:o,apiUrl:n})=>{let[,i]=An(kt),[,s]=An(Et),[,u]=An(dt),[,l]=An(hr),d=Wr(),c=Hf(d),[p]=An(re);return c.current=d,Li(()=>{s(o),u(r),l(t),n&&i(n)},[o,r,t,n,i,s,u,l]),Li(()=>{p&&Df.error(p.message,p.toastProps)},[p]),Ai(Wf,{children:e})},"TemplateProviderContext"),Vf=a(e=>{let t=ss(()=>If(),[]),r=ss(()=>({getTemplate:e.getTemplate||null,saveTemplate:e.saveTemplate||null,uploadImage:e.uploadImage||null}),[e.getTemplate,e.saveTemplate,e.uploadImage]);Li(()=>{t.set(Pi,e.getTemplate?()=>Promise.resolve():null)},[t,e.getTemplate]),Li(()=>{t.set(ki,e.saveTemplate?()=>Promise.resolve():null)},[t,e.saveTemplate]);let o=ss(()=>({store:t,overrideFunctions:r}),[t,r]);return Ai(Lf,{store:t,children:Ai(Ii.Provider,{value:o,children:Ai(Ff,{...e})})})},"TemplateProviderComponent"),Of=Rf(Vf);import{Fragment as Gf,jsx as Si}from"react/jsx-runtime";var Zf=a(({children:e,tenantId:t,token:r,apiUrl:o})=>{let[,n]=ls(kt),[,i]=ls(Et),[,s]=ls(dt);return Uf(()=>{i(r),s(t),o&&n(o)},[r,t,o,n,i,s]),Si(Gf,{children:e})},"BrandProviderContext"),qf=a(e=>{let t=eu(()=>$f(),[]),r=eu(()=>({store:t,overrideFunctions:{getTemplate:null,saveTemplate:null,uploadImage:null}}),[t]);return Si(zf,{store:t,children:Si(Ii.Provider,{value:r,children:Si(Zf,{...e})})})},"BrandProviderComponent"),jf=_f(qf);import{useAtom as $r}from"jotai";function Ln(){let{store:e}=zr(),[,t]=$r(Ei),[,r]=$r(qc),[,o]=$r(Ni),[,n]=$r(jc),[i,s]=$r(ge),[u,l]=$r(pt),[d,c]=$r(Mt),[p,m]=$r(re),[g,b]=$r(_e),h=a(v=>{m(v===null?null:typeof v=="string"?Qt(v):v)},"setTemplateError"),y={getTemplate:async()=>{},saveTemplate:async()=>{},publishTemplate:n,isTemplateLoading:i,setIsTemplateLoading:s,isTemplateSaving:u,setIsTemplateSaving:l,isTemplatePublishing:d,setIsTemplatePublishing:c,templateError:p,setTemplateError:h,templateData:g,setTemplateData:b,templateEditorContent:null,setTemplateEditorContent:()=>{},createCustomError:Qt,convertLegacyError:jo};return{getTemplate:a(async v=>{let f=e.get(Pi);f?await f:await t(v)},"getTemplateWithOverride"),saveTemplate:a(async v=>{let f=e.get(ki);f?await f(y,v):await o(v)},"saveTemplateWithOverride"),saveBrand:r,publishBrand:n,isTemplateLoading:i,setIsTemplateLoading:s,isTemplateSaving:u,setIsTemplateSaving:l,isTemplatePublishing:d,setIsTemplatePublishing:c,templateError:p,setTemplateError:h,templateData:g,setTemplateData:b,createCustomError:Qt,convertLegacyError:jo}}a(Ln,"useBrandActions");import{useAtom as ru}from"jotai";import{useCallback as Kf}from"react";var tu=a(async(e,t)=>{var l,d,c;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}`,u=(await new Promise((p,m)=>{let g=new FileReader;g.onload=()=>{typeof g.result=="string"?p(g.result):m(new Error("Failed to read file as data URL"))},g.onerror=()=>m(g.error),g.readAsDataURL(e)})).split(",")[1];try{let m=await(await fetch(r,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${o}`},body:JSON.stringify({query:`
156
156
  mutation UploadImage($input: UploadImageInput!) {
157
157
  tenant {
158
158
  notification {
@@ -162,52 +162,52 @@ var _m=Object.defineProperty;var s=(e,t)=>_m(e,"name",{value:t,configurable:!0})
162
162
  }
163
163
  }
164
164
  }
165
- `,variables:{input:{name:i,type:e.type,data:c}}})})).json();if(f.errors)throw new Error(f.errors.map(g=>g.message).join(`
166
- `));let h=f.data;return(d=(u=(a=h==null?void 0:h.tenant)==null?void 0:a.notification)==null?void 0:u.uploadImage)==null?void 0:d.url}catch(p){throw console.error("Error uploading image:",p),p}},"uploadImage");function Mn(){let[e]=Lc(bt),[t]=Lc(yt);return{uploadImage:mf(async o=>{let n=Gr.uploadImage;if(typeof n=="function")return await n(o);{if(!e||!t)throw new Error("Upload failed: Missing configuration for image upload");let i=await Ic(o.file,{apiUrl:e,token:t});if(!i)throw new Error("Upload failed: No URL returned from server");return{url:i}}},[e,t])}}s(Mn,"useImageUpload");import{clsx as yf}from"clsx";import{twMerge as vf}from"tailwind-merge";import{v4 as po}from"uuid";function Rc(e){let t=[],r=e.replace(/\n$/,"").split(`
167
- `);for(let o=0;o<r.length;o++)ff(r[o],t),o<r.length-1&&t.push({type:"hardBreak"});return t}s(Rc,"parseMDContent");function ff(e,t){gf(e,t)}s(ff,"parseTextLine");function Sc(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})}s(Sc,"applyMarks");function gf(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,f=u.text,h;for(;(h=p.exec(f))!==null;){let g=h.index,b=h[0],y=g+b.length;if(g>d&&l.push({type:"text",text:f.substring(d,g),start:u.start+d,end:u.start+g}),b.startsWith("{{")||b.startsWith("{}")){let w=b.startsWith("{{")?b.slice(2,-2):b.substring(2,b.length-2);l.push({type:"variable",text:b,start:u.start+g,end:u.start+y,attrs:{id:w}})}else l.push({type:"marker",text:b,start:u.start+g,end:u.start+y});d=y}d<f.length&&l.push({type:"text",text:f.substring(d),start:u.start+d,end:u.start+f.length})}l.sort((u,d)=>u.start-d.start);let c=[],a=[];for(let u of l)if(u.type==="text"){let d=[];Bc(u.text,[],d),Sc(d,c),a.push(...d)}else if(u.type==="variable"){let d={type:"variable",attrs:u.attrs};Sc([d],c),a.push(d)}else if(u.type==="link"){let d=[];Bc(u.text,[],d),d.forEach(p=>{var f;p.marks=p.marks||[],p.marks.push({type:"link",attrs:{href:(f=u.attrs)==null?void 0:f.href}})}),a.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",f=c.findLastIndex(h=>h.text===d);f!==-1?c.splice(f,1):c.push({type:p,text:d,start:u.start})}}t.push(...a)}s(gf,"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 a=e.substring(i,n.index);r.push({type:"text",text:a,...t.length>0&&{marks:t}})}let l=n[0].startsWith("{{")?n[0].slice(2,-2):n[0].substring(2,n[0].length-2),c=t.some(a=>a.type==="link");r.push({type:"variable",attrs:{id:l,...c&&{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}})}}s(Bc,"parseTextWithVariables");function xt(e,t){var d,p,f,h,g,b,y,w,N;let r={type:"doc",content:[]};if(!e||!e.elements||e.elements.length===0)return r;let o,n=t==null?void 0:t.channel,i;for(let v of e.elements)if(v.type==="channel"){let m=v;if(n){if(m.channel===n){i=m;break}}else{i=m;break}}if(!i||i.type!=="channel")return r;let l=i;if(l.elements&&l.elements.length>0)o=l.elements;else if(l.raw)switch(l.channel){case"sms":{let m=l.raw.text||"";o=m?[{type:"text",content:m}]:[{type:"text",content:`
168
- `}];break}case"push":{let m=l.raw.title||"",x=l.raw.text||"";o=[{type:"text",content:m||`
165
+ `,variables:{input:{name:i,type:e.type,data:u}}})})).json();if(m.errors)throw new Error(m.errors.map(b=>b.message).join(`
166
+ `));let g=m.data;return(c=(d=(l=g==null?void 0:g.tenant)==null?void 0:l.notification)==null?void 0:d.uploadImage)==null?void 0:c.url}catch(p){throw console.error("Error uploading image:",p),p}},"uploadImage");function In(){let{overrideFunctions:e}=zr(),[t]=ru(kt),[r]=ru(Et);return{uploadImage:Kf(async n=>{let i=e.uploadImage;if(typeof i=="function")return await i(n);{if(!t||!r)throw new Error("Upload failed: Missing configuration for image upload");let s=await tu(n.file,{apiUrl:t,token:r});if(!s)throw new Error("Upload failed: No URL returned from server");return{url:s}}},[t,r,e])}}a(In,"useImageUpload");import{clsx as e1}from"clsx";import{twMerge as t1}from"tailwind-merge";import{v4 as Qr}from"uuid";function ou(e){let t=[],r=e.replace(/\n$/,"").split(`
167
+ `);for(let o=0;o<r.length;o++)Jf(r[o],t),o<r.length-1&&t.push({type:"hardBreak"});return t}a(ou,"parseMDContent");function Jf(e,t){Xf(e,t)}a(Jf,"parseTextLine");function nu(e,t){t.length!==0&&e.forEach(r=>{r.marks=r.marks||[],t.forEach(o=>{var n,i;(n=r.marks)!=null&&n.some(s=>s.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(nu,"applyMarks");function Xf(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 s=[];for(let d of r){if(d.type==="link"){s.push(d);continue}let c=0,p=/(\*\*|\*|__|_|~|\+|\{\{[^}]+\}\}|\{\}[^{}]+\{\})/g,m=d.text,g;for(;(g=p.exec(m))!==null;){let b=g.index,h=g[0],y=b+h.length;if(b>c&&s.push({type:"text",text:m.substring(c,b),start:d.start+c,end:d.start+b}),h.startsWith("{{")||h.startsWith("{}")){let T=h.startsWith("{{")?h.slice(2,-2):h.substring(2,h.length-2);s.push({type:"variable",text:h,start:d.start+b,end:d.start+y,attrs:{id:T}})}else s.push({type:"marker",text:h,start:d.start+b,end:d.start+y});c=y}c<m.length&&s.push({type:"text",text:m.substring(c),start:d.start+c,end:d.start+m.length})}s.sort((d,c)=>d.start-c.start);let u=[],l=[];for(let d of s)if(d.type==="text"){let c=[];iu(d.text,[],c),nu(c,u),l.push(...c)}else if(d.type==="variable"){let c={type:"variable",attrs:d.attrs};nu([c],u),l.push(c)}else if(d.type==="link"){let c=[];iu(d.text,[],c),c.forEach(p=>{var m;p.marks=p.marks||[],p.marks.push({type:"link",attrs:{href:(m=d.attrs)==null?void 0:m.href}})}),l.push(...c)}else if(d.type==="marker"){let c=d.text;if(["**","*","__","_","~","+"].includes(c)){let p=c==="**"||c==="__"?"bold":c==="*"||c==="_"?"italic":c==="~"?"strike":"underline",m=u.findLastIndex(g=>g.text===c);m!==-1?u.splice(m,1):u.push({type:p,text:c,start:d.start})}}t.push(...l)}a(Xf,"processMarkdownFormatting");function iu(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 s=n[0].startsWith("{{")?n[0].slice(2,-2):n[0].substring(2,n[0].length-2),u=t.some(l=>l.type==="link");r.push({type:"variable",attrs:{id:s,...u&&{inUrlContext:!0}},...t.length>0&&{marks:t}}),i=n.index+n[0].length}if(i<e.length){let s=e.substring(i);r.push({type:"text",text:s,...t.length>0&&{marks:t}})}}a(iu,"parseTextWithVariables");function xt(e,t){var c,p,m,g,b,h,y,T,N;let r={type:"doc",content:[]};if(!e||!e.elements||e.elements.length===0)return r;let o,n=t==null?void 0:t.channel,i;for(let v of e.elements)if(v.type==="channel"){let f=v;if(n){if(f.channel===n){i=f;break}}else{i=f;break}}if(!i||i.type!=="channel")return r;let s=i;if(s.elements&&s.elements.length>0)o=s.elements;else if(s.raw)switch(s.channel){case"sms":{let f=s.raw.text||"";o=f?[{type:"text",content:f}]:[{type:"text",content:`
168
+ `}];break}case"push":{let f=s.raw.title||"",x=s.raw.text||"";o=[{type:"text",content:f||`
169
169
  `,text_style:"h2"},{type:"text",content:x||`
170
- `}];break}default:{let m=l.raw.text||l.raw.subject||"";o=m?[{type:"text",content:m}]:[{type:"text",content:`
171
- `}];break}}if(!o||o.length===0)return r;let c=s(v=>{var m,x,k;if(v.type==="meta")return[];switch(v.type){case"text":if("content"in v){let B=v.text_style==="h1"?1:v.text_style==="h2"?2:null,R={};if(v.padding){let[P,T]=v.padding.replace(/px/g,"").split(" "),I=parseInt(P),H=parseInt(T);!isNaN(I)&&!isNaN(H)&&(R={paddingVertical:I,paddingHorizontal:H})}let C={};(m=v.border)!=null&&m.enabled&&(C={...v.border.color&&{borderColor:v.border.color},...v.border.size&&{borderWidth:parseInt(v.border.size)},...v.border.radius&&{borderRadius:v.border.radius}});let E=v.content.trim()?Rc(v.content):[];return[{type:B?"heading":"paragraph",attrs:{textAlign:v.align||"left",level:B,id:`node-${po()}`,...R,...v.color&&{textColor:v.color},...v.background_color&&{backgroundColor:v.background_color},...C},content:E}]}return[];case"action":{let R=n==="inbox"?{backgroundColor:"#000000",textColor:"#ffffff",borderColor:"#000000",borderWidth:1,borderRadius:4}:{};return[{type:"button",attrs:{label:v.content,link:v.href,alignment:v.align==="full"?"center":v.align||"center",size:v.align==="full"?"full":"default",style:v.style,id:`node-${po()}`,...R,...v.background_color&&{backgroundColor:v.background_color},...v.color&&{textColor:v.color},...v.padding&&{padding:parseInt(v.padding)},...((x=v.border)==null?void 0:x.enabled)&&{...v.border.color&&{borderColor:v.border.color},...v.border.size&&{borderWidth:parseInt(v.border.size)},...v.border.radius&&{borderRadius:v.border.radius}}}}]}case"quote":return[{type:"blockquote",attrs:{textAlign:v.align||"left",id:`node-${po()}`,...v.border_color&&{borderColor:v.border_color}},content:[{type:"paragraph",attrs:{textAlign:v.align||"left",id:`node-${po()}`},content:Rc(v.content)}]}];case"image":return[{type:"imageBlock",attrs:{sourcePath:v.src,id:`node-${po()}`,...v.href&&{link:v.href},...v.align&&{alignment:v.align},...v.alt_text&&{alt:v.alt_text},...v.width&&{width:parseInt(v.width.replace(/%|px/,""))},...((k=v.border)==null?void 0:k.enabled)&&{...v.border.color&&{borderColor:v.border.color},...v.border.size&&{borderWidth:parseInt(v.border.size)},...v.border.radius&&{borderRadius:parseInt(v.border.radius)}}}}];case"divider":return[{type:"divider",attrs:{id:`node-${po()}`,...v.dividerColor&&{color:v.dividerColor},...v.borderWidth&&{size:parseInt(v.borderWidth)},...v.padding&&{padding:parseInt(v.padding)},variant:v.dividerColor==="transparent"?"spacer":"divider"}}];default:return[]}},"convertNode"),a=[],u=o.flatMap(c);for(let v=0;v<u.length;v++){let m=u[v],x=u[v+1];if(m.type==="button"&&(x==null?void 0:x.type)==="button"&&n==="inbox"){let k={type:"buttonRow",attrs:{id:`node-${po()}`,button1Label:((d=m.attrs)==null?void 0:d.label)||"Button 1",button1Link:((p=m.attrs)==null?void 0:p.link)||"",button1BackgroundColor:((f=m.attrs)==null?void 0:f.backgroundColor)||"#000000",button1TextColor:((h=m.attrs)==null?void 0:h.textColor)||"#ffffff",button2Label:((g=x.attrs)==null?void 0:g.label)||"Button 2",button2Link:((b=x.attrs)==null?void 0:b.link)||"",button2BackgroundColor:((y=x.attrs)==null?void 0:y.backgroundColor)||"#ffffff",button2TextColor:((w=x.attrs)==null?void 0:w.textColor)||"#000000",padding:((N=m.attrs)==null?void 0:N.padding)||6}};a.push(k),v++}else a.push(m)}return{type:"doc",content:a}}s(xt,"convertElementalToTiptap");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(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})}s(Hc,"applyMarks");function Dc(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}})}}s(Dc,"parseTextWithVariables");function qa(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 a of t){if(a.type==="link"){i.push(a);continue}let u=0,d=/(\*\*|\*|__|_|~|\+|{{[^}]+}})/g,p=a.text,f;for(;(f=d.exec(p))!==null;){let h=f.index,g=f[0],b=h+g.length;if(h>u&&i.push({type:"text",text:p.substring(u,h),start:a.start+u,end:a.start+h}),g.startsWith("{{")){let y=g.slice(2,-2);i.push({type:"variable",text:g,start:a.start+h,end:a.start+b,attrs:{id:y}})}else i.push({type:"marker",text:g,start:a.start+h,end:a.start+b});u=b}u<p.length&&i.push({type:"text",text:p.substring(u),start:a.start+u,end:a.start+p.length})}i.sort((a,u)=>a.start-u.start);let l=[],c=[];for(let a of i)if(a.type==="text"){let u=[];Dc(a.text,[],u),Hc(u,l),c.push(...u)}else if(a.type==="variable"){let u={type:"variable",attrs:a.attrs};Hc([u],l),c.push(u)}else if(a.type==="link"){let u=[];Dc(a.text,[],u),u.forEach(d=>{var p;d.marks=d.marks||[],d.marks.push({type:"link",attrs:{href:(p=a.attrs)==null?void 0:p.href}})}),c.push(...u)}else if(a.type==="marker"){let u=a.text;if(["**","*","__","_","~","+"].includes(u)){let d=u==="**"||u==="__"?"bold":u==="*"||u==="_"?"italic":u==="~"?"strike":"underline",p=l.findLastIndex(f=>f.text===u);p!==-1?l.splice(p,1):l.push({type:d,text:u,start:a.start})}}return c}s(qa,"processMarkdownFormatting");function hf(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:qa(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:qa(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:qa(o)})}return t}s(hf,"parseBlockContent");function ja(e){return{type:"doc",content:hf(e)}}s(ja,"convertMarkdownToTiptap");var bf=s(e=>{switch(e.type){case"bold":return"**";case"italic":return"*";case"strike":return"~";case"underline":return"+";default:return""}},"markToMD"),Ga=s(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 c=e.marks.map(bf).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}](${(l=r.attrs)==null?void 0:l.href})`),t},"convertTextToMarkdown");function Ie(e){let t=s(r=>{var o,n,i,l,c,a,u,d,p,f,h,g,b,y,w,N,v,m,x,k,B,R,C,E,P,T,I,H,V,D,z,X,G,ye,Ne,de,Ce,O,oe,ue,Me,Se,ht,Ge,Fe,St,ot,Bt,Ht,Nt,Ke,Dt,Ft,Je,Xe,L,Q,F,ie,te,me,ge,ve,Ye,Ve,Lr,io,A;switch(r.type){case"paragraph":{let S="",W=r.content||[];for(let ae=0;ae<W.length;ae++)W[ae].type==="hardBreak"?S+=`
172
- `:S+=Ga(W[ae]);S+=`
173
- `;let _={};if((o=r.attrs)!=null&&o.borderWidth||(n=r.attrs)!=null&&n.borderColor||(i=r.attrs)!=null&&i.borderRadius){let ae={};(l=r.attrs)!=null&&l.borderColor&&(ae.color=r.attrs.borderColor),ae.enabled=!0,(c=r.attrs)!=null&&c.borderWidth&&(ae.size=`${r.attrs.borderWidth}px`),(a=r.attrs)!=null&&a.borderRadius&&(ae.radius=r.attrs.borderRadius),_.border=ae}return((u=r.attrs)==null?void 0:u.paddingVertical)!==void 0&&((d=r.attrs)==null?void 0:d.paddingHorizontal)!==void 0&&(_.padding=`${r.attrs.paddingVertical}px ${r.attrs.paddingHorizontal}px`),(p=r.attrs)!=null&&p.textColor&&(_.color=r.attrs.textColor),(f=r.attrs)!=null&&f.backgroundColor&&(_.background_color=r.attrs.backgroundColor),_.type="text",_.align=((h=r.attrs)==null?void 0:h.textAlign)||"left",_.content=S,[_]}case"heading":{let S="",W=r.content||[];for(let ae=0;ae<W.length;ae++)W[ae].type==="hardBreak"?S+=`
174
- `:S+=Ga(W[ae]);S+=`
175
- `;let _={};if((g=r.attrs)!=null&&g.borderWidth||(b=r.attrs)!=null&&b.borderColor||(y=r.attrs)!=null&&y.borderRadius){let ae={};(w=r.attrs)!=null&&w.borderColor&&(ae.color=r.attrs.borderColor),ae.enabled=!0,(N=r.attrs)!=null&&N.borderWidth&&(ae.size=`${r.attrs.borderWidth}px`),(v=r.attrs)!=null&&v.borderRadius&&(ae.radius=r.attrs.borderRadius),_.border=ae}return _.text_style=((m=r.attrs)==null?void 0:m.level)===1?"h1":"h2",((x=r.attrs)==null?void 0:x.paddingVertical)!==void 0&&((k=r.attrs)==null?void 0:k.paddingHorizontal)!==void 0&&(_.padding=`${r.attrs.paddingVertical}px ${r.attrs.paddingHorizontal}px`),(B=r.attrs)!=null&&B.textColor&&(_.color=r.attrs.textColor),(R=r.attrs)!=null&&R.backgroundColor&&(_.background_color=r.attrs.backgroundColor),_.type="text",_.align=((C=r.attrs)==null?void 0:C.textAlign)||"left",_.content=S,[_]}case"blockquote":{let S="";if(r.content)for(let _ of r.content)_.content&&(S+=_.content.map(Ga).join("")),S+=`
176
- `;S=S.trim();let W={type:"quote",content:S};return((E=r.attrs)==null?void 0:E.textAlign)!=="left"&&(W.align=(P=r.attrs)==null?void 0:P.textAlign),(T=r.attrs)!=null&&T.borderColor&&(W.border_color=r.attrs.borderColor),[W]}case"imageBlock":{let S={};if((I=r.attrs)!=null&&I.width&&(typeof r.attrs.width=="number"?S.width=`${r.attrs.width}%`:S.width=`${r.attrs.width}%`),(H=r.attrs)!=null&&H.borderWidth||(V=r.attrs)!=null&&V.borderColor||(D=r.attrs)!=null&&D.borderRadius){let _={};(z=r.attrs)!=null&&z.borderColor&&(_.color=r.attrs.borderColor),_.enabled=!0,(X=r.attrs)!=null&&X.borderWidth&&(_.size=`${r.attrs.borderWidth}px`),(G=r.attrs)!=null&&G.borderRadius&&(_.radius=`${r.attrs.borderRadius}px`),S.border=_}return S.type="image",S.src=((ye=r.attrs)==null?void 0:ye.sourcePath)||"",(Ne=r.attrs)!=null&&Ne.alignment&&(S.align=r.attrs.alignment),(de=r.attrs)!=null&&de.link&&(S.href=r.attrs.link),(Ce=r.attrs)!=null&&Ce.alt&&(S.alt_text=r.attrs.alt),[S]}case"divider":{let S={type:"divider"};return(O=r.attrs)!=null&&O.color&&(S.dividerColor=r.attrs.color),(oe=r.attrs)!=null&&oe.size&&(S.borderWidth=`${r.attrs.size}px`),(ue=r.attrs)!=null&&ue.padding&&(S.padding=`${r.attrs.padding}px`),[S]}case"button":{let S={type:"action",content:(Se=(Me=r.attrs)==null?void 0:Me.label)!=null?Se:"",href:(Ge=(ht=r.attrs)==null?void 0:ht.link)!=null?Ge:"#"};return(Fe=r.attrs)!=null&&Fe.style&&(S.style=r.attrs.style),S.align=((St=r.attrs)==null?void 0:St.size)==="full"?"full":((ot=r.attrs)==null?void 0:ot.alignment)||"center",(Bt=r.attrs)!=null&&Bt.backgroundColor&&(S.background_color=r.attrs.backgroundColor),(Ht=r.attrs)!=null&&Ht.textColor&&(S.color=r.attrs.textColor),(Nt=r.attrs)!=null&&Nt.padding&&(S.padding=`${r.attrs.padding}px`),((Ke=r.attrs)!=null&&Ke.borderWidth||(Dt=r.attrs)!=null&&Dt.borderColor||(Ft=r.attrs)!=null&&Ft.borderRadius)&&(S.border={enabled:!0},(Je=r.attrs)!=null&&Je.borderColor&&(S.border.color=r.attrs.borderColor),(Xe=r.attrs)!=null&&Xe.borderWidth&&(S.border.size=`${r.attrs.borderWidth}px`),(L=r.attrs)!=null&&L.borderRadius&&(S.border.radius=r.attrs.borderRadius)),[S]}case"buttonRow":{let S={type:"action",content:(F=(Q=r.attrs)==null?void 0:Q.button1Label)!=null?F:"Button 1",href:(te=(ie=r.attrs)==null?void 0:ie.button1Link)!=null?te:"#",align:"left"};(me=r.attrs)!=null&&me.button1BackgroundColor&&(S.background_color=r.attrs.button1BackgroundColor),(ge=r.attrs)!=null&&ge.button1TextColor&&(S.color=r.attrs.button1TextColor);let W={type:"action",content:(Ye=(ve=r.attrs)==null?void 0:ve.button2Label)!=null?Ye:"Button 2",href:(Lr=(Ve=r.attrs)==null?void 0:Ve.button2Link)!=null?Lr:"#",align:"left"};return(io=r.attrs)!=null&&io.button2BackgroundColor&&(W.background_color=r.attrs.button2BackgroundColor),(A=r.attrs)!=null&&A.button2TextColor&&(W.color=r.attrs.button2TextColor),[S,W]}default:return r.content?r.content.flatMap(t):[]}},"convertNode");return e!=null&&e.content?e.content.flatMap(t):[]}s(Ie,"convertTiptapToElemental");function Ka(e){let t="",r="";for(let o of e)if(!("visible"in o&&o.visible===!1)){if(o.type==="meta"&&"title"in o&&o.title)return o.title;if(o.type==="channel"&&"raw"in o&&o.raw){if("subject"in o.raw&&o.raw.subject)return o.raw.subject;if("title"in o.raw&&o.raw.title)return o.raw.title}if(o.type==="text"&&"content"in o&&o.content){let n=o.content.trim();n&&n!==`
177
- `&&("text_style"in o&&(o.text_style==="h1"||o.text_style==="h2")?r||(r=n):t||(t=n))}if(o.type==="channel"&&"elements"in o&&o.elements){let n=Ka(o.elements);if(n)return n}}return r||t||""}s(Ka,"getTitle");function Ja(e,t){if(!e||!e.elements)return"";let r=e.elements.find(o=>o.type==="channel"&&o.channel===t);if(!r||r.type!=="channel")return"";if("raw"in r&&r.raw){if("subject"in r.raw&&r.raw.subject)return r.raw.subject;if("title"in r.raw&&r.raw.title)return r.raw.title}if("elements"in r&&r.elements){if(t==="email"){let o=r.elements.find(n=>n.type==="meta");return o&&"title"in o&&o.title?o.title:""}return Ka(r.elements)}return""}s(Ja,"getTitleForChannel");function Xt(e,t){var l;let r=e||{version:"2022-01-01",elements:[]},o={...r,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 a;if(c.type!=="meta")if(c.type==="channel"){let u=c,d=!1;if(n?u.channel===n&&(d=!0):i||(d=!0),d){let p={};if(t.channel&&typeof t.channel=="object")for(let h in t.channel)h!=="type"&&h!=="elements"&&h!=="channel"&&Object.prototype.hasOwnProperty.call(t.channel,h)&&(p[h]=t.channel[h]);let f={type:"channel",channel:u.channel,...Object.fromEntries(Object.entries(u).filter(([h])=>!["type","channel","elements"].includes(h))),...p};if(t.elements!==void 0){let h=[],g=t.elements.find(y=>y.type==="meta");if(g)h.push(g);else{let y=(a=u.elements)==null?void 0:a.find(w=>w.type==="meta");y&&h.push(y)}let b=t.elements.filter(y=>y.type!=="meta");h.push(...b),f.elements=h}o.elements.push(f),i=!0}else o.elements.push(c)}else o.elements.push(c)}),n&&!i||!((l=r.elements)!=null&&l.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 a={};if(t.channel&&typeof t.channel=="object")for(let d in t.channel)d!=="type"&&d!=="elements"&&d!=="channel"&&Object.prototype.hasOwnProperty.call(t.channel,d)&&(a[d]=t.channel[d]);let u={type:"channel",channel:c,...a};if(t.elements!==void 0){let d=[],p=t.elements.find(h=>h.type==="meta");p&&d.push(p);let f=t.elements.filter(h=>h.type!=="meta");d.push(...f),u.elements=d}o.elements.push(u)}return o}s(Xt,"updateElemental");function M(...e){return vf(yf(e))}s(M,"cn");import{Slot as xf}from"@radix-ui/react-slot";import{cva as Cf}from"class-variance-authority";import{forwardRef as Tf}from"react";import{jsx as wf}from"react/jsx-runtime";var Pi=Cf("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"}]}),Te=Tf(({active:e,buttonSize:t="medium",disabled:r,variant:o="primary",className:n,asChild:i=!1,...l},c)=>wf(i?xf:"button",{ref:c,disabled:r,className:M(Pi({variant:o,size:t,disabled:r,active:e}),n),...l}));Te.displayName="Button";import{forwardRef as Pf}from"react";import{jsx as kf}from"react/jsx-runtime";var fe=Pf((e,t)=>kf("hr",{...e,ref:t,className:M("courier-my-1 courier-border-border dark:courier-border-neutral-800",e.className)}));fe.displayName="Divider";import*as Dr from"react";import*as pe from"@radix-ui/react-dropdown-menu";import{Check as Ef,ChevronRight as Nf,Circle as Mf}from"lucide-react";import{jsx as Ct,jsxs as Xa}from"react/jsx-runtime";var ki=pe.Root,Ei=pe.Trigger;var Af=Dr.forwardRef(({className:e,inset:t,children:r,...o},n)=>Xa(pe.SubTrigger,{ref:n,className:M("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,Ct(Nf,{className:"courier-ml-auto"})]}));Af.displayName=pe.SubTrigger.displayName;var If=Dr.forwardRef(({className:e,...t},r)=>Ct(pe.SubContent,{ref:r,className:M("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}));If.displayName=pe.SubContent.displayName;var An=Dr.forwardRef(({className:e,sideOffset:t=4,portalProps:r,...o},n)=>Ct(pe.Portal,{...r,children:Ct(pe.Content,{ref:n,sideOffset:t,className:M("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})}));An.displayName=pe.Content.displayName;var In=Dr.forwardRef(({className:e,inset:t,...r},o)=>Ct(pe.Item,{ref:o,className:M("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}));In.displayName=pe.Item.displayName;var Lf=Dr.forwardRef(({className:e,children:t,checked:r,...o},n)=>Xa(pe.CheckboxItem,{ref:n,className:M("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:[Ct("span",{className:"courier-absolute courier-left-2 courier-flex courier-h-3.5 courier-w-3.5 courier-items-center courier-justify-center",children:Ct(pe.ItemIndicator,{children:Ct(Ef,{className:"courier-h-4 courier-w-4"})})}),t]}));Lf.displayName=pe.CheckboxItem.displayName;var Rf=Dr.forwardRef(({className:e,children:t,...r},o)=>Xa(pe.RadioItem,{ref:o,className:M("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:[Ct("span",{className:"courier-absolute courier-left-2 courier-flex courier-h-3.5 courier-w-3.5 courier-items-center courier-justify-center",children:Ct(pe.ItemIndicator,{children:Ct(Mf,{className:"courier-h-2 courier-w-2 courier-fill-current"})})}),t]}));Rf.displayName=pe.RadioItem.displayName;var Sf=Dr.forwardRef(({className:e,inset:t,...r},o)=>Ct(pe.Label,{ref:o,className:M("courier-px-2 courier-py-1.5 courier-text-sm courier-font-semibold",t&&"courier-pl-8",e),...r}));Sf.displayName=pe.Label.displayName;var Bf=Dr.forwardRef(({className:e,...t},r)=>Ct(pe.Separator,{ref:r,className:M("courier-mx-1 courier-my-1 courier-h-px courier-bg-muted",e),...t}));Bf.displayName=pe.Separator.displayName;var Hf=s(({className:e,...t})=>Ct("span",{className:M("courier-ml-auto courier-text-xs courier-tracking-widest courier-opacity-60",e),...t}),"DropdownMenuShortcut");Hf.displayName="DropdownMenuShortcut";import{Component as Df}from"react";import{jsx as Qa,jsxs as Vf}from"react/jsx-runtime";var es=class es extends Df{constructor(t){super(t),this.state={hasError:!1}}static getDerivedStateFromError(t){return{hasError:!0,error:t}}componentDidCatch(t,r){var o,n;console.error("ErrorBoundary caught an error:",t,r),(n=(o=this.props).onError)==null||n.call(o,t,r)}render(){return this.state.hasError?this.props.fallback||Qa(Ff,{error:this.state.error}):this.props.children}};s(es,"ErrorBoundary");var Ya=es,Ff=s(({error:e})=>Vf("div",{className:"courier-p-6 courier-border courier-border-red-200 courier-bg-red-50 courier-rounded-lg courier-text-center",children:[Qa("h3",{className:"courier-text-lg courier-font-semibold courier-text-red-800 courier-mb-2",children:"Something went wrong"}),Qa("p",{className:"courier-text-red-600 courier-mb-4",children:"An unexpected error occurred in the editor. Please refresh the page or contact support if the problem persists."}),!1]}),"DefaultErrorFallback");import{Slot as Uf}from"@radix-ui/react-slot";import*as Tt from"react";import{Controller as $f,FormProvider as _f,useFormContext as Zf}from"react-hook-form";import*as ts from"@radix-ui/react-label";import{cva as Of}from"class-variance-authority";import*as Fc from"react";import{jsx as zf}from"react/jsx-runtime";var Wf=Of("courier-text-sm courier-font-medium courier-leading-none peer-disabled:courier-cursor-not-allowed peer-disabled:courier-opacity-70"),rs=Fc.forwardRef(({className:e,...t},r)=>zf(ts.Root,{ref:r,className:M(Wf(),e),...t}));rs.displayName=ts.Root.displayName;import{jsx as Kr}from"react/jsx-runtime";var at=_f,Vc=Tt.createContext({}),Z=s(({...e})=>Kr(Vc.Provider,{value:{name:e.name},children:Kr($f,{...e})}),"FormField"),Ni=s(()=>{let e=Tt.useContext(Vc),t=Tt.useContext(Oc),{getFieldState:r,formState:o}=Zf(),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"),Oc=Tt.createContext({}),U=Tt.forwardRef(({className:e,...t},r)=>{let o=Tt.useId();return Kr(Oc.Provider,{value:{id:o},children:Kr("div",{ref:r,className:M("courier-space-y-2",e),...t})})});U.displayName="FormItem";var Wt=Tt.forwardRef(({className:e,...t},r)=>{let{error:o,formItemId:n}=Ni();return Kr(rs,{ref:r,className:M(o&&"courier-text-destructive",e),htmlFor:n,...t})});Wt.displayName="FormLabel";var $=Tt.forwardRef(({...e},t)=>{let{error:r,formItemId:o,formDescriptionId:n,formMessageId:i}=Ni();return Kr(Uf,{ref:t,id:o,"aria-describedby":r?`${n} ${i}`:`${n}`,"aria-invalid":!!r,...e})});$.displayName="FormControl";var qf=Tt.forwardRef(({className:e,...t},r)=>{let{formDescriptionId:o}=Ni();return Kr("p",{ref:r,id:o,className:M("courier-text-[0.8rem] courier-text-muted-foreground",e),...t})});qf.displayName="FormDescription";var K=Tt.forwardRef(({className:e,children:t,...r},o)=>{let{error:n,formMessageId:i}=Ni(),l=n?String(n==null?void 0:n.message):t;return l?Kr("p",{ref:o,id:i,className:M("courier-text-[0.8rem] courier-font-medium courier-text-destructive",e),...r,children:l}):null});K.displayName="FormMessage";import*as we from"@radix-ui/react-alert-dialog";import*as mo from"react";import{useCallback as jf}from"react";import{jsx as fr,jsxs as Xf}from"react/jsx-runtime";var Wc=we.Root,zc=we.Trigger,Gf=we.Portal,Uc=mo.forwardRef(({className:e,...t},r)=>fr("div",{className:"courier-absolute courier-inset-0 courier-z-50 courier-bg-[#0a0a0a52] 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",children:fr(we.Overlay,{asChild:!0,className:M("courier-fixed courier-inset-0 courier-z-50 courier-bg-black/80 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",e),...t,ref:r})}));Uc.displayName=we.Overlay.displayName;var os=mo.forwardRef(({className:e,...t},r)=>{let o=jf(()=>{var i;let n=(i=r==null?void 0:r.current)==null?void 0:i.parentElement;for(;n;){if(n.classList.contains("lightTheme"))return n;n=n.parentElement}return document.body},[r]);return Xf(Gf,{container:typeof window!="undefined"?o():void 0,children:[fr(Uc,{}),fr(we.Content,{ref:r,className:M("courier-fixed courier-left-[50%] courier-top-[50%] courier-z-50 courier-grid courier-w-full courier-max-w-lg courier-translate-x-[-50%] courier-translate-y-[-50%] courier-gap-4 courier-border courier-bg-background courier-p-6 courier-shadow-lg courier-duration-200 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-[state=closed]:courier-slide-out-to-left-1/2 data-[state=closed]:courier-slide-out-to-top-[48%] data-[state=open]:courier-slide-in-from-left-1/2 data-[state=open]:courier-slide-in-from-top-[48%] sm:courier-rounded-lg",e),...t})]})});os.displayName=we.Content.displayName;var ns=s(({className:e,...t})=>fr("div",{className:M("courier-flex courier-flex-col courier-space-y-2 courier-text-center sm:courier-text-left",e),...t}),"AlertDialogHeader");ns.displayName="AlertDialogHeader";var is=s(({className:e,...t})=>fr("div",{className:M("courier-flex courier-flex-col-reverse sm:courier-flex-row sm:courier-justify-end sm:courier-space-x-2",e),...t}),"AlertDialogFooter");is.displayName="AlertDialogFooter";var Kf=mo.forwardRef(({className:e,...t},r)=>fr(we.Title,{ref:r,className:M("courier-text-lg courier-font-semibold",e),...t}));Kf.displayName=we.Title.displayName;var Jf=mo.forwardRef(({className:e,...t},r)=>fr(we.Description,{ref:r,className:M("courier-text-sm courier-text-muted-foreground",e),...t}));Jf.displayName=we.Description.displayName;var as=mo.forwardRef(({className:e,...t},r)=>fr(we.Action,{ref:r,className:M(Pi(),e),...t}));as.displayName=we.Action.displayName;var ss=mo.forwardRef(({className:e,...t},r)=>fr(we.Cancel,{ref:r,className:M(Pi({variant:"outline"}),"courier-mt-2 sm:courier-mt-0",e),...t}));ss.displayName=we.Cancel.displayName;import*as $c from"react";import{jsx as ls,jsxs as Yf}from"react/jsx-runtime";var se=$c.forwardRef(({className:e,type:t,startAdornment:r,endAdornment:o,...n},i)=>Yf("div",{className:"courier-relative courier-flex courier-w-full courier-items-center",children:[r&&ls("div",{className:"courier-absolute courier-left-2 courier-flex courier-items-center courier-pointer-events-none",children:r}),ls("input",{type:t,className:M("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&&ls("div",{className:"courier-absolute courier-right-2 courier-flex courier-items-center courier-pointer-events-none",children:o})]}));se.displayName="Input";import{forwardRef as r1,useRef as o1,useMemo as n1,useCallback as i1}from"react";import{useCallback as cs,useEffect as _c,useRef as Mi,useState as Zc}from"react";import{CircleX as Qf}from"lucide-react";import{jsx as gr,jsxs as qc}from"react/jsx-runtime";var e1=s(e=>e==="transparent"||/^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/.test(e),"isValidHex"),jc=s(({color:e,onChange:t,className:r,presetColors:o,defaultValue:n="transparent"})=>{let[i,l]=Zc(()=>Ln(e)),[c,a]=Zc(e),u=Mi(null),d=Mi(null),p=Mi(null),f=Mi(!1),h=e!==n,g=cs(v=>{f.current=!0;let m=t1(v);a(m),t(m),f.current=!1},[t]),b=s(v=>m=>{p.current=v,y(m)},"handleMouseDown"),y=cs(v=>{if(p.current){if(p.current==="gradient"&&u.current){let m=u.current.getBoundingClientRect(),x=Math.max(0,Math.min(1,(v.clientX-m.left)/m.width)),k=Math.max(0,Math.min(1,(v.clientY-m.top)/m.height)),B={...i,s:x*100,v:(1-k)*100};l(B),g(B)}else if(p.current==="hue"&&d.current){let m=d.current.getBoundingClientRect(),x=Math.max(0,Math.min(1,(v.clientX-m.left)/m.width)),k={...i,h:x*360};l(k),g(k)}}},[i,g]),w=cs(()=>{p.current=null},[]);_c(()=>{if(p.current)return window.addEventListener("mousemove",y),window.addEventListener("mouseup",w),()=>{window.removeEventListener("mousemove",y),window.removeEventListener("mouseup",w)}},[y,w]),_c(()=>{f.current||(l(Ln(e)),a(e))},[e]);let N=s(v=>{let m=v.target.value;if(a(m),e1(m)){let x=Ln(m);l(x),g(x)}},"handleInputChange");return qc("div",{className:M("w-full",r),children:[gr("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:b("gradient"),children:gr("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}%`}})}),gr("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:b("hue"),children:gr("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}%`}})}),qc("div",{className:"courier-mt-3 courier-relative courier-flex courier-items-center",children:[gr(se,{value:c,onChange:N,placeholder:"#000000",className:"courier-flex-1"}),h&&gr("button",{onClick:v=>{if(v.preventDefault(),n==="transparent"){t("transparent"),a("transparent"),l({h:0,s:0,v:0});return}let m=Ln(n);l(m),g(m)},className:"courier-absolute courier-right-3 courier-flex courier-cursor-pointer courier-items-center courier-justify-center courier-transition-colors",children:gr(Qf,{size:14,strokeWidth:1.25})})]}),gr(fe,{className:"courier-my-3"}),gr("div",{className:"courier-flex courier-flex-wrap courier-gap-1",children:o.map(v=>gr("button",{className:M("courier-h-6 courier-w-6 courier-rounded-md courier-border courier-border-input courier-shrink-0",v==="transparent"&&us),style:{backgroundColor:v==="transparent"?void 0:v},onClick:m=>{if(m.preventDefault(),v==="transparent"){t("transparent"),a("transparent"),l({h:0,s:0,v:0});return}let x=Ln(v);l(x),g(x)}},v))})]})},"ColorPicker");function Ln(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,c=0,a=n===0?0:l/n,u=n;if(n!==i){switch(n){case t:c=(r-o)/l+(r<o?6:0);break;case r:c=(o-t)/l+2;break;case o:c=(t-r)/l+4;break}c/=6}return{h:c*360,s:a*100,v:u*100}}s(Ln,"hexToHsv");function t1({h:e,s:t,v:r}){t/=100,r/=100,e=e%360/360;let o=s(c=>{let a=(c+e*6)%6;return r-r*t*Math.max(0,Math.min(a,4-a,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(c=>c.toString(16).padStart(2,"0")).join("")}`}s(t1,"hsvToHex");import*as hr from"@radix-ui/react-popover";import*as Kc from"react";import{jsx as Gc}from"react/jsx-runtime";var Jc=hr.Root,Xc=hr.Trigger;var ds=Kc.forwardRef(({className:e,align:t="center",side:r="bottom",sideOffset:o=4,collisionPadding:n=10,avoidCollisions:i=!0,portalProps:l,...c},a)=>Gc(hr.Portal,{...l,children:Gc(hr.Content,{ref:a,side:r,align:t,sideOffset:o,collisionPadding:n,avoidCollisions:i,className:M("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),...c})}));ds.displayName=hr.Content.displayName;import{jsx as Rn,jsxs as Yc}from"react/jsx-runtime";var us="bg-[url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNOCAwSDBWOEg4VjBaIiBmaWxsPSIjRDlEOUQ5Ii8+PHBhdGggZD0iTTE2IDhIOFYxNkgxNlY4WiIgZmlsbD0iI0Q5RDlEOSIvPjwvc3ZnPg==')]",a1=["#ef4444","#f97316","#eab308","#22c55e","#14b8a6","#06b6d4","#3b82f6","#6366f1","#8b5cf6","#000000","#525252","#a3a3a3","#ffffff","transparent"],Ue=r1(({className:e,value:t="",onChange:r,defaultValue:o,transparent:n=!0,presetColors:i=a1,...l},c)=>{let a=t!=="transparent",u=o1(null),d=n1(()=>n?i:i.filter(f=>f!=="transparent"),[i,n]),p=i1(()=>{var h;let f=(h=u.current)==null?void 0:h.parentElement;for(;f;){if(f.classList.contains("lightTheme"))return f;f=f.parentElement}return document.body},[]);return Yc(Jc,{children:[Rn(Xc,{asChild:!0,children:Yc("div",{className:"courier-relative courier-flex courier-items-center",ref:u,children:[Rn("div",{className:M("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",a?"":us),style:{backgroundColor:a?t:void 0}}),Rn(se,{...l,ref:c,readOnly:!0,type:"text",value:t==="transparent"?"Transparent":t,className:M("courier-relative courier-cursor-pointer courier-pl-8",e)})]})}),Rn(ds,{portalProps:{container:typeof window!="undefined"?p():void 0},className:"courier-w-[230px]",children:Rn(jc,{color:t,onChange:r,presetColors:d,defaultValue:o})})]})});Ue.displayName="InputColor";import*as Qc from"react";import*as ps from"@radix-ui/react-separator";import{jsx as s1}from"react/jsx-runtime";var ms=Qc.forwardRef(({className:e,orientation:t="horizontal",decorative:r=!0,...o},n)=>s1(ps.Root,{ref:n,decorative:r,orientation:t,className:M("courier-shrink-0 courier-bg-border",t==="horizontal"?"courier-h-[1px] courier-w-full":"courier-h-full courier-w-[1px]",e),...o}));ms.displayName=ps.Root.displayName;import*as eu from"react";import*as Fr from"@radix-ui/react-slider";import{jsx as fs,jsxs as l1}from"react/jsx-runtime";var gs=eu.forwardRef(({className:e,...t},r)=>l1(Fr.Root,{ref:r,className:M("courier-relative courier-flex courier-w-full courier-touch-none courier-select-none courier-items-center",e),...t,children:[fs(Fr.Track,{className:"courier-relative courier-h-1.5 courier-w-full courier-grow courier-overflow-hidden courier-rounded-full courier-bg-secondary",children:fs(Fr.Range,{className:"courier-absolute courier-h-full courier-bg-accent-foreground"})}),fs(Fr.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"})]}));gs.displayName=Fr.Root.displayName;import*as ru from"react";import*as Sn from"@radix-ui/react-switch";import{jsx as tu}from"react/jsx-runtime";var Zo=ru.forwardRef(({className:e,...t},r)=>tu(Sn.Root,{className:M("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:tu(Sn.Thumb,{className:M("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")})}));Zo.displayName=Sn.Root.displayName;import*as Ai from"react";import*as Yt from"@radix-ui/react-tabs";import{jsx as hs}from"react/jsx-runtime";var Ii=Yt.Root,Bn=Ai.forwardRef(({className:e,...t},r)=>hs(Yt.List,{ref:r,className:M("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}));Bn.displayName=Yt.List.displayName;var qo=Ai.forwardRef(({className:e,...t},r)=>hs(Yt.Trigger,{ref:r,className:M("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}));qo.displayName=Yt.Trigger.displayName;var Li=Ai.forwardRef(({className:e,...t},r)=>hs(Yt.Content,{ref:r,className:M("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}));Li.displayName=Yt.Content.displayName;import*as jo from"react";import{jsx as c1}from"react/jsx-runtime";var bs=jo.forwardRef(({className:e,autoResize:t=!1,...r},o)=>{let n=jo.useRef(null),i=s(l=>{n.current=l,typeof o=="function"?o(l):o&&(o.current=l)},"combinedRef");return jo.useEffect(()=>{if(!t)return;let l=n.current;if(!l)return;let c=s(()=>{l.style.height="auto",l.style.height=`${l.scrollHeight}px`},"adjustHeight");return c(),l.addEventListener("input",c),()=>{l.removeEventListener("input",c)}},[t]),c1("textarea",{className:M("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})});bs.displayName="Textarea";import{forwardRef as d1,useContext as Jx}from"react";import{createContext as u1}from"react";var Go={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 ou=u1(Go);import{jsx as nu}from"react/jsx-runtime";var iu=d1(({children:e,theme:t=Go},r)=>{let o=typeof t=="string"?Go:{...Go,...t},n=typeof t=="string"?{}:Object.entries(t).reduce((i,[l,c])=>{let a=l.replace(/[A-Z]/g,u=>`-${u.toLowerCase()}`);return{...i,[`--${a}`]:c}},{});return nu(ou.Provider,{value:o,children:nu("div",{style:n,className:M("courier-flex courier-flex-col courier-relative",typeof t=="string"?t:"","lightTheme"),ref:r,children:e})})});import*as au from"react";import*as ys from"@radix-ui/react-toggle";import{cva as p1}from"class-variance-authority";import{jsx as f1}from"react/jsx-runtime";var vs=p1("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"}}),m1=au.forwardRef(({className:e,variant:t,size:r,...o},n)=>f1(ys.Root,{ref:n,className:M(vs({variant:t,size:r,className:e})),...o}));m1.displayName=ys.Root.displayName;import*as Ko from"@radix-ui/react-toggle-group";import*as fo from"react";import{jsx as xs}from"react/jsx-runtime";var su=fo.createContext({size:"default",variant:"default"}),zt=fo.forwardRef(({className:e,variant:t,size:r,children:o,...n},i)=>xs(Ko.Root,{ref:i,className:M("courier-flex courier-items-center courier-justify-center courier-gap-1",e),...n,children:xs(su.Provider,{value:{variant:t,size:r},children:o})}));zt.displayName=Ko.Root.displayName;var Be=fo.forwardRef(({className:e,children:t,variant:r,size:o,...n},i)=>{let l=fo.useContext(su);return xs(Ko.Item,{ref:i,className:M(vs({variant:l.variant||r,size:l.size||o}),e),...n,children:t})});Be.displayName=Ko.Item.displayName;import{jsx as Cs}from"react/jsx-runtime";var Pe=s(({colorProp:e,color:t,active:r,className:o,...n})=>e==="stroke"?Cs("path",{className:M(!t&&(r?"courier-stroke-accent-foreground":"courier-stroke-ring"),o),...n}):Cs("path",{className:M(!t&&(r?"courier-fill-accent-foreground":"courier-fill-ring"),o),...n}),"Path"),Y=s(({width:e=28,height:t=28,...r})=>Cs("svg",{width:e,height:t,viewBox:`0 0 ${e} ${t}`,fill:"none",...r}),"Icon");import{jsx as Ts,jsxs as g1}from"react/jsx-runtime";var lu=s(({color:e="#000000",width:t=19,height:r=10,...o})=>g1(Y,{...o,width:t,height:r,children:[Ts("rect",{opacity:"0.6",x:"0.553621",y:"0.876863",width:"16.4923",height:"7.87692",rx:"1.6",stroke:e,strokeWidth:"0.738462"}),Ts("rect",{opacity:"0.9",x:"1.41528",y:"1.73828",width:"14.7692",height:"6.15385",rx:"0.984615",fill:e}),Ts("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 cu}from"react/jsx-runtime";var Hn=s(({color:e="#DC2626",width:t=13,height:r=13,...o})=>cu(Y,{...o,fill:"none",width:t,height:r,children:cu("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 uu}from"react/jsx-runtime";var go=s(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>uu(Y,{...n,width:r,height:o,children:uu(Pe,{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 ws,jsxs as h1}from"react/jsx-runtime";var Qt=s(({color:e="#A3A3A3",width:t=16,height:r=16,...o})=>h1(Y,{...o,width:t,height:r,children:[ws("rect",{y:"2.25",width:"16",height:"1.5",rx:"0.75",fill:e}),ws("rect",{y:"5.75",width:"16",height:"2.5",rx:"1.25",fill:e}),ws("rect",{y:"10.25",width:"16",height:"3.5",rx:"1.75",fill:e})]}),"BorderWidthIcon");import{jsx as du}from"react/jsx-runtime";var Ps=s(({color:e,width:t=21,height:r=16,...o})=>du(Y,{...o,width:t,height:r,children:du("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 pu}from"react/jsx-runtime";var ks=s(({color:e="#171717",width:t=12,height:r=13,...o})=>pu(Y,{...o,fill:"none",width:t,height:r,children:pu("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 mu}from"react/jsx-runtime";var Es=s(({color:e="#737373",width:t=16,height:r=16,...o})=>mu(Y,{...o,width:t,height:r,children:mu(Pe,{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 fu}from"react/jsx-runtime";var Dn=s(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>fu(Y,{...n,width:r,height:o,children:fu(Pe,{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 gu}from"react/jsx-runtime";var Ns=s(({color:e="#737373",width:t=14,height:r=16,...o})=>gu(Y,{...o,width:t,height:r,children:gu(Pe,{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 hu,jsxs as b1}from"react/jsx-runtime";var Ri=s(({color:e="#404040",width:t=18,height:r=20,...o})=>b1(Y,{...o,width:t,height:r,children:[hu("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}),hu("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 bu}from"react/jsx-runtime";var Ms=s(({color:e="#404040",width:t=16,height:r=20,...o})=>bu(Y,{...o,width:t,height:r,children:bu(Pe,{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 yu}from"react/jsx-runtime";var Fn=s(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>yu(Y,{...n,width:r,height:o,children:yu(Pe,{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 vu}from"react/jsx-runtime";var Vn=s(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>vu(Y,{...n,width:r,height:o,children:vu(Pe,{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 xu}from"react/jsx-runtime";var On=s(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>xu(Y,{...n,width:r,height:o,children:xu(Pe,{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 As}from"react/jsx-runtime";var Is=s(({color:e,width:t=21,height:r=16,...o})=>As(Y,{...o,width:t,height:r,children:As("g",{transform:"translate(4, 0)",children:As("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 Cu}from"react/jsx-runtime";var Ls=s(({color:e="#737373",width:t=14,height:r=16,...o})=>Cu(Y,{...o,width:t,height:r,children:Cu(Pe,{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 Tu}from"react/jsx-runtime";var Wn=s(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>Tu(Y,{...n,width:r,height:o,children:Tu(Pe,{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 wu}from"react/jsx-runtime";var ho=s(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>wu(Y,{...n,width:r,height:o,children:wu(Pe,{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 Pu}from"react/jsx-runtime";var Rs=s(({color:e="#404040",width:t=16,height:r=20,...o})=>Pu(Y,{...o,width:t,height:r,children:Pu("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 ku}from"react/jsx-runtime";var Ss=s(({color:e="#171717",width:t=16,height:r=13,...o})=>ku(Y,{...o,fill:"none",width:t,height:r,children:ku("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 zn,jsxs as y1}from"react/jsx-runtime";var Eu=s(({color:e="#000000",width:t=14,height:r=9,...o})=>zn(Y,{...o,width:t,height:r,children:y1("g",{opacity:"0.9",children:[zn("rect",{x:"0.799805",y:"5.92188",width:"2.46154",height:"2.95385",rx:"0.246154",fill:e}),zn("rect",{x:"4.24609",y:"4.44531",width:"2.46154",height:"4.43077",rx:"0.246154",fill:e}),zn("rect",{x:"7.93823",y:"2.72266",width:"2.46154",height:"6.15385",rx:"0.246154",fill:e}),zn("rect",{x:"11.3845",y:"0.753906",width:"2.46154",height:"8.12308",rx:"0.246154",fill:e})]})}),"SignalIcon");import{jsx as Nu}from"react/jsx-runtime";var Bs=s(({color:e="#404040",width:t=16,height:r=20,...o})=>Nu(Y,{...o,width:t,height:r,children:Nu("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 Si,jsxs as v1}from"react/jsx-runtime";var Mu=s(({color:e="#000000",width:t=14,height:r=10,...o})=>Si(Y,{...o,width:t,height:r,children:v1("g",{opacity:"0.9",children:[Si("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}),Si("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}),Si("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 Au}from"react/jsx-runtime";var Un=s(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>Au(Y,{...n,width:r,height:o,children:Au(Pe,{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 x1}from"lucide-react";import{useEffect as C1,useState as T1,useRef as Iu}from"react";import{jsx as Hs}from"react/jsx-runtime";var bo=s(({className:e})=>Hs("div",{className:M("courier-flex courier-flex-col courier-items-center courier-justify-center courier-text-ring",e),children:Hs("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:Hs("path",{d:"M21 12a9 9 0 1 1-6.219-8.56"})})}),"Loader");import{jsx as Ds,jsxs as Lu}from"react/jsx-runtime";var $n=s(({isError:e,isSaving:t,isLoading:r,renderIsSaving:o,renderIsError:n,renderSaved:i})=>{let[l,c]=T1(!1),a=Iu(t),u=Iu(null);return C1(()=>(r||e||t&&t!==a.current?(u.current&&(clearTimeout(u.current),u.current=null),c(!1)):a.current===!0&&t===!1&&!e&&!r&&(c(!0),u.current&&clearTimeout(u.current),u.current=setTimeout(()=>{c(!1),u.current=null},5e3)),a.current=t,()=>{u.current&&clearTimeout(u.current)}),[t,e,r]),r||t===null?null:t?o?o(t):Lu("div",{className:"courier-h-12 courier-flex courier-items-center courier-px-4 courier-text-xs courier-gap-1",children:[Ds(bo,{className:"courier-w-4 courier-h-4"}),"Saving..."]}):e?n?n(e):Ds("div",{className:"courier-h-12 courier-flex courier-items-center courier-px-4 courier-text-xs courier-gap-1",children:"Error"}):l?i?i(l):Lu("div",{className:"courier-h-12 courier-flex courier-items-center courier-px-4 courier-text-xs courier-gap-1",children:[Ds(x1,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Saved"]}):null},"Status");import{atom as Ru}from"jotai";import{jsx as Bi}from"react/jsx-runtime";var Jo=[{label:"Email",value:"email",icon:Bi(Ri,{})},{label:"SMS",value:"sms",icon:Bi(Bs,{})},{label:"Push",value:"push",icon:Bi(Rs,{})},{label:"In-app",value:"inbox",icon:Bi(Ri,{})}];var Hi=Ru("email"),Xo=Ru("template");import{AlertDialogDescription as q0}from"@radix-ui/react-alert-dialog";import{useAtom as j0,useAtomValue as sc}from"jotai";import{useCallback as G0,useEffect as K0,useRef as J0}from"react";import{atom as At}from"jotai";var Fs={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 w1={paragraph:Fs,heading:Fs},_n=At(w1),ke=At(null),st=At(null,(e,t,r)=>{t(ke,r)}),P1=At({ref:null,caretPosition:null}),Fi=At({ref:null,caretPosition:null}),Zn=At({isFocused:!1,hasVariables:!1,showVariablePopup:!1}),Su=At(e=>(t,r=!1)=>{let o=e(_n),n=e(Zn),i=Di(t,r),l=o[t],c=i;return l&&Object.keys(l).forEach(a=>{var d,p;let u=a;((d=i[u])==null?void 0:d.state)==="enabled"&&((p=l[u])==null?void 0:p.state)==="enabled"&&(c[u]=l[u])}),n.isFocused&&n.hasVariables&&(c={...c,variable:{state:"enabled"}}),c}),Bu=At(null,(e,t,{nodeName:r,config:o})=>{let n=e(_n);t(_n,{...n,[r]:{...n[r],...Object.fromEntries(Object.entries(o).map(([i,l])=>[i,{state:(l==null?void 0:l.state)||"hidden"}]))}})}),_4=At(null,(e,t,r)=>{let o=e(_n),{[r]:n,...i}=o;t(_n,i)}),Hu=At(null,(e,t,{ref:r,caretPosition:o})=>{t(P1,{ref:r,caretPosition:o})}),Z4=At(null,(e,t,r)=>{let o=e(Zn);t(Zn,{...o,showVariablePopup:r})}),Vs=At(null),Vi=At(null,(e,t,r)=>{t(Vs,r)});import{useAtom as z0,useAtomValue as wm,useSetAtom as Pm}from"jotai";import{useCallback as km,useEffect as U0,useMemo as Em,useRef as $0,useState as _0}from"react";import{atom as Du}from"jotai";var er=Du(null),br=Du(null);import{jsx as Fu,jsxs as k1}from"react/jsx-runtime";var wt=s(({draggable:e=!1,icon:t,draggableLabel:r,label:o})=>k1("div",{className:"courier-flex courier-flex-row courier-items-center courier-gap-2",children:[Fu("div",{className:M("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}),Fu("span",{className:"courier-text-sm courier-font-medium",children:e?r:o})]}),"BlockBase");import{jsx as Oi}from"react/jsx-runtime";var E1=s(()=>Oi("svg",{width:"20",height:"12",viewBox:"0 0 20 12",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:Oi("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"),Yo=s(({draggable:e=!1})=>Oi(wt,{draggable:e,icon:Oi(E1,{}),draggableLabel:"Button",label:"Button block"}),"ButtonBlock");import{jsx as Wi}from"react/jsx-runtime";var N1=s(()=>Wi("svg",{width:"16",height:"2",viewBox:"0 0 16 2",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:Wi("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"),Qo=s(({draggable:e=!1})=>Wi(wt,{draggable:e,icon:Wi(N1,{}),draggableLabel:"Divider",label:"Divider block"}),"DividerBlock");import{jsx as zi}from"react/jsx-runtime";var M1=s(()=>zi("svg",{width:"18",height:"13",viewBox:"0 0 18 13",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:zi("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"),en=s(({draggable:e=!1})=>zi(wt,{draggable:e,icon:zi(M1,{}),draggableLabel:"Heading",label:"Heading block"}),"HeadingBlock");import{jsx as Ui}from"react/jsx-runtime";var A1=s(()=>Ui("svg",{width:"16",height:"14",viewBox:"0 0 16 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:Ui("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"),tn=s(({draggable:e=!1})=>Ui(wt,{draggable:e,icon:Ui(A1,{}),draggableLabel:"Image",label:"Image block"}),"ImageBlock");import{AlignVerticalSpaceAround as I1}from"lucide-react";import{jsx as Vu}from"react/jsx-runtime";var rn=s(({draggable:e=!1})=>Vu(wt,{draggable:e,icon:Vu(I1,{className:"courier-w-4 courier-h-4"}),draggableLabel:"Spacer",label:"Spacer block"}),"SpacerBlock");import{jsx as $i}from"react/jsx-runtime";var L1=s(()=>$i("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:$i("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"),on=s(({draggable:e=!1})=>$i(wt,{draggable:e,icon:$i(L1,{}),draggableLabel:"Text",label:"Text block"}),"TextBlock");import{Toaster as R1}from"sonner";import{forwardRef as S1}from"react";import{jsx as qn,jsxs as B1}from"react/jsx-runtime";var yr=S1(({theme:e,children:t,isLoading:r,Header:o},n)=>qn(iu,{theme:e,ref:n,children:B1("div",{className:"courier-main-layout","data-mode":"light",children:[o&&qn("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 courier-self-stretch",children:o}),r&&qn("div",{className:"courier-editor-loading",children:qn(bo,{})}),qn(R1,{position:"top-center",expand:!0,visibleToasts:2,style:{position:"absolute",top:"10px",left:"50%",transform:"translateX(-50%)"}}),t]})}));import{closestCenter as Mp,DndContext as Fb,DragOverlay as Vb,getFirstCollision as Ob,KeyboardSensor as Wb,MeasuringStrategy as zb,MouseSensor as Ub,pointerWithin as $b,rectIntersection as _b,TouchSensor as Zb,useSensor as Nl,useSensors as qb}from"@dnd-kit/core";import{arrayMove as jb,verticalListSortingStrategy as Gb}from"@dnd-kit/sortable";import{useAtom as Ml,useAtomValue as Ro,useSetAtom as Kb}from"jotai";import{forwardRef as Jb,memo as Xb,useCallback as qt,useEffect as So,useMemo as Al,useRef as Bo,useState as li}from"react";import{Color as xp}from"@tiptap/extension-color";import{Extension as H1}from"@tiptap/core";import{dropCursor as D1}from"@tiptap/pm/dropcursor";var Os=H1.create({name:"dropCursor",addOptions(){return{color:"currentColor",width:1,class:void 0}},addProseMirrorPlugins(){return[D1(this.options)]}});import{HardBreak as Cp}from"@tiptap/extension-hard-break";import{Extension as F1}from"@tiptap/core";import{undo as V1,redo as O1,history as W1}from"@tiptap/pm/history";var z1=F1.create({name:"history",addOptions(){return{depth:100,newGroupDelay:500}},addCommands(){return{undo:()=>({state:e,dispatch:t})=>V1(e,t),redo:()=>({state:e,dispatch:t})=>O1(e,t)}},addProseMirrorPlugins(){return[W1(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 Tp}from"@tiptap/extension-placeholder";import{TextAlign as wp}from"@tiptap/extension-text-align";import{Typography as Pp}from"@tiptap/extension-typography";import{Underline as kp}from"@tiptap/extension-underline";import{StarterKit as Ep}from"@tiptap/starter-kit";import{mergeAttributes as ug}from"@tiptap/core";import{Node as U1,mergeAttributes as $1,wrappingInputRule as _1}from"@tiptap/core";var Z1=/^\s*>\s$/,Ou=U1.create({name:"blockquote",addOptions(){return{HTMLAttributes:{}}},content:"block+",group:"block",defining:!0,parseHTML(){return[{tag:"blockquote"}]},renderHTML({HTMLAttributes:e}){return["blockquote",$1(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[_1({find:Z1,type:this.type})]}});import{ReactNodeViewRenderer as dg}from"@tiptap/react";import{v4 as q1}from"uuid";function Pt(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-${q1()}`;r.setNodeMarkup(i,void 0,{...n.attrs,id:l}),o=!0}return!1}),o&&e.view.dispatch(r)}s(Pt,"generateNodeIds");import{useSortable as X1}from"@dnd-kit/sortable";import{NodeViewWrapper as Y1}from"@tiptap/react";import{useSetAtom as Q1}from"jotai";import{forwardRef as eg,useCallback as jn,useEffect as Uu,useState as tg}from"react";import{v4 as rg}from"uuid";import{GripVertical as j1}from"lucide-react";import{forwardRef as G1}from"react";import{jsx as Wu}from"react/jsx-runtime";var zu=G1((e,t)=>Wu("button",{...e,ref:t,"data-cypress":"draggable-handle",className:M("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:Wu(j1,{strokeWidth:1,className:"courier-w-5 courier-stroke-ring courier-fill-ring"})}));import{useAtomValue as K1,useSetAtom as J1}from"jotai";import{useCallback as It}from"react";var _i=s(e=>{let t=J1(st),r=K1(ke),o=It(y=>{let w=-1;return e.state.doc.descendants((N,v)=>{var m;return((m=N.attrs)==null?void 0:m.id)===y?(w=v,!1):!0}),w},[e]),n=It((y,w)=>{var N,v,m;if(((N=r==null?void 0:r.type)==null?void 0:N.name)==="button"&&((v=r.attrs)!=null&&v.id)){let x=r.attrs.id,k=o(x);if(k>=0){let B=e.state.tr;return B.setNodeMarkup(k,void 0,{...(m=e.state.doc.nodeAt(k))==null?void 0:m.attrs,[y]:w}),e.view.dispatch(B),setTimeout(()=>{let R=o(x);if(R>=0){let C=e.state.doc.nodeAt(R);C&&t(C)}},0),!0}}return!1},[e,r,o,t]),i=It(()=>{var y,w;if(((y=r==null?void 0:r.type)==null?void 0:y.name)==="button"&&((w=r.attrs)!=null&&w.id)){let N=r.attrs.id,v=o(N);if(v>=0){let m=e.state.doc.nodeAt(v);if(!m)return!1;let x={...m.attrs,fontWeight:"normal",fontStyle:"normal",isUnderline:!1,isStrike:!1},k=e.state.tr;return k.setNodeMarkup(v,void 0,x),e.view.dispatch(k),setTimeout(()=>{let B=o(N);if(B>=0){let R=e.state.doc.nodeAt(B);R&&t(R)}},0),!0}}return!1},[e,r,o,t]),l=It(()=>{var y;if(((y=r==null?void 0:r.type)==null?void 0:y.name)==="button"){let w=r.attrs.fontWeight==="bold"?"normal":"bold";if(n("fontWeight",w))return!0}return e.chain().focus().toggleBold().run()},[e,r,n]),c=It(()=>{var y;if(((y=r==null?void 0:r.type)==null?void 0:y.name)==="button"){let w=r.attrs.fontStyle==="italic"?"normal":"italic";if(n("fontStyle",w))return!0}return e.chain().focus().toggleItalic().run()},[e,r,n]),a=It(()=>{var y;if(((y=r==null?void 0:r.type)==null?void 0:y.name)==="button"){let w=!r.attrs.isStrike;if(n("isStrike",w))return!0}return e.chain().focus().toggleMark("strike").run()},[e,r,n]),u=It(()=>{var y;if(((y=r==null?void 0:r.type)==null?void 0:y.name)==="button"){let w=!r.attrs.isUnderline;if(n("isUnderline",w))return!0}return e.chain().focus().toggleMark("underline").run()},[e,r,n]),d=It(()=>e.chain().focus().setTextAlign("left").run(),[e]),p=It(()=>e.chain().focus().setTextAlign("center").run(),[e]),f=It(()=>e.chain().focus().setTextAlign("right").run(),[e]),h=It(()=>e.chain().focus().setTextAlign("justify").run(),[e]),g=It((y,w)=>e.chain().focus().setLink({href:y,target:w?"_blank":""}).run(),[e]),b=It(()=>{let y=e.isActive("blockquote");if(e.chain().focus().toggleBlockquote().run()){let{selection:v}=e.state,m=v.$anchor;if(y){let x=m.node();(x.type.name==="paragraph"||x.type.name==="heading")&&t(x)}else for(let x=m.depth;x>0;x--){let k=m.node(x);if(k.type.name==="blockquote"){t(k);break}}}},[e,t]);return{onBold:l,onItalic:c,onStrike:a,onUnderline:u,onAlignLeft:d,onAlignCenter:p,onAlignRight:f,onAlignJustify:h,onLink:g,onQuote:b,resetButtonFormatting:i}},"useTextmenuCommands");import{Fragment as ig,jsx as vr,jsxs as Ws}from"react/jsx-runtime";function og(){let[e,t]=tg(!1);return Uu(()=>{let r=setTimeout(()=>t(!0),500);return()=>clearTimeout(r)},[]),e}s(og,"useMountStatus");var Ut=s(({children:e,id:t,className:r,...o})=>{let{setNodeRef:n,setActivatorNodeRef:i,listeners:l,isDragging:c,transform:a,transition:u}=X1({id:t}),d=og();return vr(ng,{ref:n,id:t,transition:u,transform:a,fadeIn:c&&!d,listeners:l,className:r,handleProps:{ref:i},...o,children:e})},"SortableItemWrapper"),ng=eg(({children:e,className:t,dragOverlay:r,handleProps:o,listeners:n,id:i,transition:l,transform:c,editor:a,fadeIn:u,...d},p)=>{Uu(()=>{if(r)return document.body.style.cursor="grabbing",()=>{document.body.style.cursor=""}},[r]);let f=Q1(ke),{resetButtonFormatting:h}=_i(a),g=s((x,k)=>{let B=null;return x.doc.descendants((R,C)=>{var E;return B!==null?!1:((E=R.attrs)==null?void 0:E.id)===k?(B=C,!1):!0}),B},"findNodePositionById"),b=jn(()=>{if(!a||!i)return{node:null,pos:null};let x=g(a.state,i);return x===null?{node:null,pos:null}:{node:a.state.doc.nodeAt(x),pos:x}},[a,i]),y=jn(()=>{a.commands.blur(),f(null)},[a,f]),w=jn(()=>{if(!(!a||!i))try{y(),setTimeout(()=>{let{node:x,pos:k}=b();if(!x||k===null)return;let B=a.state.doc.childCount===1,R=a.state.tr;R.delete(k,k+(x==null?void 0:x.nodeSize)),R.setMeta("addToHistory",!0),a.view.dispatch(R),B&&setTimeout(()=>{let C=a.state.doc.nodeAt(0);if(C&&C.type.name==="paragraph"&&!C.attrs.id){let E=`node-${rg()}`,P=a.state.tr;P.setNodeMarkup(0,void 0,{...C.attrs,id:E}),a.view.dispatch(P);let T=new CustomEvent("node-duplicated",{detail:{newNodeId:E}});document.dispatchEvent(T)}},50),f(null)},100)}catch(x){console.error("Error deleting node:",x)}},[a,i,b,y,f]),N=jn(()=>{if(!(!a||!i))try{let{node:x,pos:k}=b();if(!x||k===null)return;if(x.type.name==="button"){h();return}y(),setTimeout(()=>{let B=a.chain();B.setNodeSelection(k).unsetAllMarks(),x.type.name==="blockquote"&&x.content&&x.content.firstChild?x.content.firstChild.type.name!=="paragraph"&&B.setParagraph():x.type.name!=="paragraph"&&x.type.name!=="blockquote"&&B.setParagraph(),B.run()},100)}catch(x){console.error("Error removing formatting:",x)}},[a,i,b,y,h]),v=jn(()=>{if(!(!a||!i))try{y(),setTimeout(()=>{let{node:x,pos:k}=b();if(!x||k===null)return;let B=x.type.name,R={...x.attrs};delete R.id;let C=k+(x==null?void 0:x.nodeSize);Zi(a,B,C,R,E=>f(E),x.content)},100)}catch(x){console.error("Error duplicating node:",x)}},[a,i,b,y,f]),{node:m}=b();return Ws(Y1,{ref:p,"data-cypress":"draggable-item","data-node-view-wrapper":!0,"data-id":i,className:M("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":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:[vr(zu,{className:"courier-absolute courier-left-[-20px]",tabIndex:-1,...o,...n}),e,Ws("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"&&Ws(ig,{children:[vr("button",{className:"courier-w-8 courier-h-8 courier-flex courier-items-center courier-justify-center",onClick:N,tabIndex:-1,children:vr(Ss,{})}),vr(fe,{className:"courier-m-0"})]}),vr("button",{className:"courier-w-8 courier-h-8 courier-flex courier-items-center courier-justify-center",onClick:v,tabIndex:-1,children:vr(ks,{})}),vr(fe,{className:"courier-m-0"}),vr("button",{className:"courier-w-8 courier-h-8 courier-flex courier-items-center courier-justify-center",onClick:w,tabIndex:-1,children:vr(Hn,{})})]})]})});import{NodeViewContent as ag}from"@tiptap/react";import{useSetAtom as sg}from"jotai";import{useCallback as lg}from"react";import{jsx as Gn}from"react/jsx-runtime";var cg=s(({paddingHorizontal:e,paddingVertical:t,backgroundColor:r,borderLeftWidth:o,borderColor:n})=>Gn("div",{className:"courier-w-full node-element",children:Gn("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:Gn(ag,{})})}),"BlockquoteComponent"),$u=s(e=>{let t=sg(st),r=lg(()=>{if(!e.editor.isEditable)return;let n=lt(e);n&&(e.editor.commands.blur(),t(n))},[e,t]),o=!e.node.content||e.node.content.size===0;return Gn(Ut,{id:e.node.attrs.id,className:M(e.node.attrs.isSelected&&"selected-element",o&&"is-empty"),onClick:r,editor:e.editor,children:Gn(cg,{...e.node.attrs})})},"BlockquoteComponentNode");var Vr={paddingHorizontal:8,paddingVertical:6,backgroundColor:"transparent",borderLeftWidth:4,borderColor:"#e0e0e0"},zs=Ou.extend({content:"block+",addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),HTMLAttributes:{class:""}}},onCreate(){Pt(this.editor,this.name)},addAttributes(){return{id:{default:void 0,parseHTML:e=>e.getAttribute("data-id"),renderHTML:e=>({"data-id":e.id})},paddingHorizontal:{default:Vr.paddingHorizontal,parseHTML:e=>e.getAttribute("data-padding-horizontal"),renderHTML:e=>({"data-padding-horizontal":e.paddingHorizontal})},paddingVertical:{default:Vr.paddingVertical,parseHTML:e=>e.getAttribute("data-padding-vertical"),renderHTML:e=>({"data-padding-vertical":e.paddingVertical})},backgroundColor:{default:Vr.backgroundColor,parseHTML:e=>e.getAttribute("data-background-color"),renderHTML:e=>({"data-background-color":e.backgroundColor})},borderLeftWidth:{default:Vr.borderLeftWidth,parseHTML:e=>e.getAttribute("data-border-left-width"),renderHTML:e=>({"data-border-left-width":e.borderLeftWidth})},borderColor:{default:Vr.borderColor,parseHTML:e=>e.getAttribute("data-border-color"),renderHTML:e=>({"data-border-color":e.borderColor})}}},parseHTML(){return[{tag:"blockquote"}]},renderHTML({HTMLAttributes:e}){return["blockquote",ug(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,c=i.doc.resolve(l);if(c.depth>1){let a=c.blockRange();a&&i.lift(a,0)}return!0}).focus().run()}}},addNodeView(){return dg($u)}});import{zodResolver as hg}from"@hookform/resolvers/zod";import{useForm as bg}from"react-hook-form";import{useEffect as pg,useRef as _u}from"react";var xr=s(({editor:e,element:t,form:r,nodeType:o})=>{let n=_u(null),i=_u(null);return pg(()=>{if(!e||!t)return;let c=s(()=>{let a=null;if(e.state.doc.descendants((u,d)=>u.attrs.id===t.attrs.id?(a=d,!1):!0),a!==null){let u=e.state.doc.nodeAt(a);(u==null?void 0:u.type.name)===o&&(n.current=u,i.current=a,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:a})=>{let u=a.doc.nodeAt(i.current);if((u==null?void 0:u.type.name)===o){let d={...u.attrs,...c,id:u.attrs.id};return a.setNodeMarkup(i.current,u.type,d),!0}return!1})},"updateNodeAttributes")}},"useNodeAttributes");import{useSetAtom as fg}from"jotai";import{Quote as mg}from"lucide-react";import{jsx as Zu}from"react/jsx-runtime";var qu=s(({draggable:e=!1})=>Zu(wt,{draggable:e,icon:Zu(mg,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),draggableLabel:"Blockquote",label:"Blockquote block"}),"BlockquoteBlock");import{jsx as Or,jsxs as gg}from"react/jsx-runtime";var Cr=s(({type:e})=>{let t=fg(st);return gg("div",{className:"courier-flex courier-gap-4 courier-flex-col",children:[Or(Te,{className:"courier-w-fit",variant:"secondary",buttonSize:"small",onClick:()=>{t(null)},children:"Close"}),e==="heading"&&Or(en,{}),e==="text"&&Or(on,{}),e==="image"&&Or(tn,{}),e==="spacer"&&Or(rn,{}),e==="divider"&&Or(Qo,{}),e==="button"&&Or(Yo,{}),e==="blockquote"&&Or(qu,{}),Or(fe,{className:"courier-m-0"})]})},"FormHeader");import{z as yo}from"zod";var ju=yo.object({paddingHorizontal:yo.coerce.number().min(0),paddingVertical:yo.coerce.number().min(0),backgroundColor:yo.string(),borderLeftWidth:yo.coerce.number().min(0),borderColor:yo.string(),id:yo.string().optional()});import{jsx as xe,jsxs as Jr}from"react/jsx-runtime";var Gu=s(({element:e,editor:t})=>{let r=bg({resolver:hg(ju),defaultValues:{...Vr,...e==null?void 0:e.attrs}}),{updateNodeAttributes:o}=xr({editor:t,element:e,form:r,nodeType:(e==null?void 0:e.type.name)||"blockquote"});return e?Jr(at,{...r,children:[xe(Cr,{type:"blockquote"}),Jr("form",{onChange:()=>{o(r.getValues())},children:[xe("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Frame"}),Jr("div",{className:"courier-flex courier-flex-row courier-gap-3 courier-mb-3",children:[xe(Z,{control:r.control,name:"paddingHorizontal",render:({field:n})=>Jr(U,{children:[xe($,{children:xe(se,{startAdornment:xe(Wn,{}),type:"number",min:0,...n})}),xe(K,{})]})}),xe(Z,{control:r.control,name:"paddingVertical",render:({field:n})=>Jr(U,{children:[xe($,{children:xe(se,{startAdornment:xe(ho,{}),type:"number",min:0,...n})}),xe(K,{})]})})]}),xe(Z,{control:r.control,name:"backgroundColor",render:({field:n})=>Jr(U,{className:"courier-mb-3",children:[xe($,{children:xe(Ue,{...n,defaultValue:Vr.backgroundColor,onChange:i=>{n.onChange(i),o({...r.getValues(),[n.name]:i})}})}),xe(K,{})]})}),xe(fe,{className:"courier-mb-4"}),xe("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Border"}),xe(Z,{control:r.control,name:"borderLeftWidth",render:({field:n})=>Jr(U,{className:"courier-mb-3",children:[xe($,{children:xe(se,{startAdornment:xe(Qt,{}),type:"number",min:0,...n})}),xe(K,{})]})}),xe(Z,{control:r.control,name:"borderColor",render:({field:n})=>Jr(U,{className:"courier-mb-3",children:[xe($,{children:xe(Ue,{...n,defaultValue:Vr.borderColor,onChange:i=>{n.onChange(i),o({...r.getValues(),[n.name]:i})}})}),xe(K,{})]})})]})]}):null},"BlockquoteForm");import{mergeAttributes as Cg,Node as Tg}from"@tiptap/core";import{ReactNodeViewRenderer as wg}from"@tiptap/react";import{Plugin as Pg,PluginKey as kg}from"@tiptap/pm/state";import{useSetAtom as yg}from"jotai";import{useCallback as vg}from"react";import{jsx as Xr}from"react/jsx-runtime";var xg=s(({label:e,alignment:t,size:r,backgroundColor:o,textColor:n,borderWidth:i,borderRadius:l,borderColor:c,padding:a,fontWeight:u,fontStyle:d,isUnderline:p,isStrike:f})=>Xr("div",{className:"courier-w-full node-element",children:Xr("div",{className:"courier-flex",style:{marginTop:`${a}px`,marginBottom:`${a}px`},children:Xr("div",{className:M("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:c,borderStyle:i>0?"solid":"none",caretColor:"#ff0000",fontWeight:u,fontStyle:d},children:f?Xr("s",{children:p?Xr("u",{children:e}):e}):p?Xr("u",{children:e}):e})})}),"ButtonComponent"),Ku=s(e=>{let t=yg(st),r=vg(()=>{if(!e.editor.isEditable)return;let o=lt(e);if(o){e.editor.commands.blur();let n=o.attrs.id;e.editor.state.doc.descendants(i=>i.type.name==="button"&&i.attrs.id===n?(t(i),!1):!0)}},[e,t]);return Xr(Ut,{id:e.node.attrs.id,className:M(e.node.attrs.isSelected&&"selected-element"),onClick:r,editor:e.editor,"data-node-type":"button",children:Xr(xg,{...e.node.attrs})})},"ButtonComponentNode");import{v4 as Eg}from"uuid";var Le={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},qi=Tg.create({name:"button",group:"block",atom:!0,selectable:!1,onCreate(){Pt(this.editor,this.name)},addAttributes(){return{label:{default:Le.label,parseHTML:e=>e.getAttribute("data-label"),renderHTML:e=>({"data-label":e.label})},link:{default:Le.link,parseHTML:e=>e.getAttribute("data-link"),renderHTML:e=>({"data-link":e.link})},alignment:{default:Le.alignment,parseHTML:e=>e.getAttribute("data-alignment"),renderHTML:e=>({"data-alignment":e.alignment})},size:{default:Le.size,parseHTML:e=>e.getAttribute("data-size"),renderHTML:e=>({"data-size":e.size})},backgroundColor:{default:Le.backgroundColor,parseHTML:e=>e.getAttribute("data-background-color"),renderHTML:e=>({"data-background-color":e.backgroundColor})},textColor:{default:Le.textColor,parseHTML:e=>e.getAttribute("data-text-color"),renderHTML:e=>({"data-text-color":e.textColor})},borderWidth:{default:Le.borderWidth,parseHTML:e=>e.getAttribute("data-border-width"),renderHTML:e=>({"data-border-width":e.borderWidth})},borderRadius:{default:Le.borderRadius,parseHTML:e=>e.getAttribute("data-border-radius"),renderHTML:e=>({"data-border-radius":e.borderRadius})},borderColor:{default:Le.borderColor,parseHTML:e=>e.getAttribute("data-border-color"),renderHTML:e=>({"data-border-color":e.borderColor})},padding:{default:Le.padding,parseHTML:e=>e.getAttribute("data-padding"),renderHTML:e=>({"data-padding":e.padding})},fontWeight:{default:Le.fontWeight,parseHTML:e=>e.getAttribute("data-font-weight"),renderHTML:e=>({"data-font-weight":e.fontWeight})},fontStyle:{default:Le.fontStyle,parseHTML:e=>e.getAttribute("data-font-style"),renderHTML:e=>({"data-font-style":e.fontStyle})},isUnderline:{default:Le.isUnderline,parseHTML:e=>e.getAttribute("data-is-underline"),renderHTML:e=>({"data-is-underline":e.isUnderline})},isStrike:{default:Le.isStrike,parseHTML:e=>e.getAttribute("data-is-strike"),renderHTML:e=>({"data-is-strike":e.isStrike})},id:{default:()=>`node-${Eg()}`,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",Cg(this.options.HTMLAttributes,e,{"data-type":"button"}),0]},addNodeView(){return wg(Ku)},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 Pg({key:new kg("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 mt}from"zod";var Ju=mt.object({label:mt.string(),link:mt.string().optional(),alignment:mt.enum(["left","center","right"]),size:mt.enum(["default","full"]),backgroundColor:mt.string(),textColor:mt.string(),borderWidth:mt.number(),borderRadius:mt.number(),borderColor:mt.string(),padding:mt.number(),fontWeight:mt.enum(["normal","bold"]),fontStyle:mt.enum(["normal","italic"]),isUnderline:mt.boolean(),isStrike:mt.boolean()});import{zodResolver as Ng}from"@hookform/resolvers/zod";import{useForm as Mg}from"react-hook-form";import{useSetAtom as Us}from"jotai";import*as vo from"react";import{useRef as Yu,useState as $s}from"react";import{jsx as Xu}from"react/jsx-runtime";var Kn=s(({items:e,command:t,selected:r=0})=>Xu("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)=>Xu("button",{className:M("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 nn,jsxs as Qu}from"react/jsx-runtime";var Lt=vo.forwardRef(({as:e="Input",variables:t=[],autoResize:r,onChange:o,...n},i)=>{let[l,c]=$s(!1),[a,u]=$s(null),[d,p]=$s(0),f=Yu(null),h=Yu(null),g=Us(Zn),b=Us(Hu),y=Us(Fi),w=vo.useCallback(()=>{if(!h.current)return;let C={ref:h.current,caretPosition:h.current.selectionStart};b(C),y(C);let E={isFocused:!0,hasVariables:t.length>0,showVariablePopup:!1};g(E)},[g,b,y,t]),N=vo.useCallback(C=>{var T,I;let E=C.relatedTarget&&((T=f.current)==null?void 0:T.contains(C.relatedTarget)),P=(I=C.relatedTarget)==null?void 0:I.closest("[data-variable-button]");!E&&!P&&(b({ref:null,caretPosition:null}),g({isFocused:!1,hasVariables:!1,showVariablePopup:!1}))},[g,b]),v=s(C=>{let E=C.target,P={ref:E,caretPosition:E.selectionStart};b(P),y(P)},"handleSelect"),m=s(C=>{var E;if(l)switch(C.key){case"ArrowUp":C.preventDefault(),p(P=>P>0?P-1:t.length-1);break;case"ArrowDown":C.preventDefault(),p(P=>P<t.length-1?P+1:0);break;case"Enter":if(t[d]){C.preventDefault(),C.stopPropagation(),x(t[d]);return}break;case"Escape":c(!1),C.preventDefault(),C.stopPropagation();break}(E=n.onKeyDown)==null||E.call(n,C)},"handleKeyDown"),x=s(C=>{let E=h.current;if(!E)return;let P=E.value,T=E.selectionStart||0,I=P.substring(0,T-2),H=P.substring(T),V=`${I}{{${C}}}${H}`,D=T+C.length+3;if(o){let z={target:{...E,value:V}};o(z)}setTimeout(()=>{E.value=V,E.setSelectionRange(D,D)},0),c(!1)},"insertVariable"),k=s(C=>{var I;let E=C.target,P=E.value,T=E.selectionStart||0;if(P.slice(T-2,T)==="{{"&&((I=f.current)==null?void 0:I.getBoundingClientRect())){let V=P.slice(0,T),D=document.createElement("span");D.style.font=window.getComputedStyle(E).font,D.style.whiteSpace="pre-wrap",D.textContent=V,document.body.appendChild(D);let z=D.offsetWidth;document.body.removeChild(D);let X=parseInt(window.getComputedStyle(E).lineHeight),G=V.split(`
178
- `).length-1;u({left:Math.min(z%E.offsetWidth,E.offsetWidth-200),top:G*X+30}),c(!0),p(0)}o&&o({target:E,currentTarget:E,type:"change",preventDefault:()=>{},stopPropagation:()=>{}})},"handleChange"),B=s(C=>{var I;let E=C.target,P=E.value,T=E.selectionStart||0;if(P.slice(T-2,T)==="{{"&&((I=f.current)==null?void 0:I.getBoundingClientRect())){let V=P.slice(0,T),D=document.createElement("span");D.style.font=window.getComputedStyle(E).font,D.style.whiteSpace="pre-wrap",D.textContent=V,document.body.appendChild(D);let z=D.offsetWidth;document.body.removeChild(D);let X=parseInt(window.getComputedStyle(E).lineHeight),G=V.split(`
179
- `).length-1;u({left:Math.min(z%E.offsetWidth,E.offsetWidth-200),top:G*X+30}),c(!0),p(0)}o&&o({target:E,currentTarget:E,type:"change",preventDefault:()=>{},stopPropagation:()=>{}})},"handleInput");if(vo.useEffect(()=>{let C=h.current;if(!C)return;let E=s(P=>{u(P.detail.cursorPosition),c(!0),p(0)},"handleShowSuggestions");return C.addEventListener("showVariableSuggestions",E),()=>{C.removeEventListener("showVariableSuggestions",E)}},[]),e==="Input"){let C={...n,ref:E=>{h.current=E,typeof i=="function"?i(E):i&&(i.current=E)},onChange:k,onInput:B,onKeyDown:m,onFocus:w,onBlur:N,onSelect:v};return Qu("div",{ref:f,className:"courier-relative",children:[nn(se,{...C}),l&&a&&nn("div",{style:{position:"absolute",left:`${a.left}px`,top:`${a.top}px`,zIndex:50},children:nn(Kn,{items:t,command:x,selected:d})})]})}let R={...n,ref:C=>{h.current=C,typeof i=="function"?i(C):i&&(i.current=C)},onChange:k,onInput:B,onKeyDown:m,onFocus:w,onBlur:N,autoResize:r,onSelect:v};return Qu("div",{ref:f,className:"courier-relative",children:[nn(bs,{...R}),l&&a&&nn("div",{style:{position:"absolute",left:`${a.left}px`,top:`${a.top}px`,zIndex:50},children:nn(Kn,{items:t,command:x,selected:d})})]})});Lt.displayName="TextInput";var tr=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,...tr(n,i)]:[...r,i]},[]),"getFlattenedVariables");import{jsx as wr,jsxs as rd}from"react/jsx-runtime";var Jn="#80849D",Tr=30,ji=s(({color:e=Jn,width:t=Tr,height:r=Tr,...o})=>wr(Y,{...o,width:t,height:r,children:wr("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"),Gi=s(({color:e=Jn,width:t=Tr,height:r=Tr,...o})=>wr(Y,{...o,width:t,height:r,children:wr("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"),Ki=s(({color:e=Jn,width:t=Tr,height:r=Tr,...o})=>wr(Y,{...o,width:t,height:r,children:wr("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"),ed=s(({color:e=Jn,width:t=Tr,height:r=Tr,...o})=>rd(Y,{...o,width:t,height:r,children:[wr("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}),wr("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"),td=s(({color:e=Jn,width:t=Tr,height:r=Tr,...o})=>rd(Y,{...o,width:t,height:r,children:[wr("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}),wr("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 q,jsxs as ct}from"react/jsx-runtime";var od=s(({element:e,editor:t})=>{var l,c;let r=Mg({resolver:Ng(Ju),defaultValues:{...Le,...e==null?void 0:e.attrs}}),{updateNodeAttributes:o}=xr({editor:t,element:e,form:r,nodeType:"button"}),n=((c=(l=t==null?void 0:t.extensionManager.extensions.find(a=>a.name==="variableSuggestion"))==null?void 0:l.options)==null?void 0:c.variables)||{},i=tr(n);return e?ct(at,{...r,children:[q(Cr,{type:"button"}),ct("form",{onChange:()=>{o(r.getValues())},children:[q("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Link"}),q(Z,{control:r.control,name:"link",render:({field:a})=>ct(U,{children:[q($,{children:q(Lt,{as:"Textarea",...a,variables:i,onChange:u=>{a.onChange(u),o({...r.getValues(),link:u.target.value})}})}),q(K,{})]})}),q(fe,{className:"courier-mt-6 courier-mb-4"}),q("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Text"}),q(Z,{control:r.control,name:"label",render:({field:a})=>ct(U,{className:"courier-mb-2",children:[q($,{children:q(Lt,{...a,variables:i,onChange:u=>{a.onChange(u),o({...r.getValues(),label:u.target.value})}})}),q(K,{})]})}),q(Z,{control:r.control,name:"textColor",render:({field:a})=>ct(U,{className:"courier-mb-4",children:[q($,{children:q(Ue,{...a,defaultValue:Le.textColor,onChange:u=>{a.onChange(u),o({...r.getValues(),[a.name]:u})}})}),q(K,{})]})}),q(fe,{className:"courier-mt-6 courier-mb-4"}),q("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Background"}),q(Z,{control:r.control,name:"backgroundColor",render:({field:a})=>ct(U,{className:"courier-mb-4",children:[q($,{children:q(Ue,{...a,defaultValue:Le.backgroundColor,onChange:u=>{a.onChange(u),o({...r.getValues(),[a.name]:u})}})}),q(K,{})]})}),q(fe,{className:"courier-mt-6 courier-mb-4"}),q("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Frame"}),q(Z,{control:r.control,name:"padding",render:({field:a})=>ct(U,{className:"courier-mb-2",children:[q($,{children:q(se,{type:"number",min:0,...a})}),q(K,{})]})}),ct("div",{className:"courier-flex courier-flex-row courier-gap-6",children:[q(Z,{control:r.control,name:"alignment",render:({field:a})=>ct(U,{children:[q($,{children:ct(zt,{type:"single",value:a.value,onValueChange:u=>{a.onChange(u),o({...r.getValues(),alignment:u})},children:[q(Be,{value:"left",children:q(ji,{})}),q(Be,{value:"center",children:q(Gi,{})}),q(Be,{value:"right",children:q(Ki,{})})]})}),q(K,{})]})}),q(Z,{control:r.control,name:"size",render:({field:a})=>ct(U,{children:[q($,{children:ct(zt,{type:"single",value:a.value,onValueChange:u=>{a.onChange(u),o({...r.getValues(),size:u})},children:[q(Be,{value:"default",children:q(ed,{})}),q(Be,{value:"full",children:q(td,{})})]})}),q(K,{})]})})]}),q(fe,{className:"courier-mt-6 courier-mb-4"}),q("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Border"}),ct("div",{className:"courier-flex courier-flex-row courier-gap-3 courier-mb-3",children:[q(Z,{control:r.control,name:"borderWidth",render:({field:a})=>ct(U,{children:[q($,{children:q(se,{startAdornment:q(Qt,{}),type:"number",min:0,...a})}),q(K,{})]})}),q(Z,{control:r.control,name:"borderRadius",render:({field:a})=>ct(U,{children:[q($,{children:q(se,{startAdornment:q(go,{}),type:"number",min:0,...a})}),q(K,{})]})})]}),q(Z,{control:r.control,name:"borderColor",render:({field:a})=>ct(U,{className:"courier-mb-4",children:[q($,{children:q(Ue,{...a,defaultValue:Le.borderColor,onChange:u=>{a.onChange(u),o({...r.getValues(),[a.name]:u})}})}),q(K,{})]})})]})]}):null},"ButtonForm");import{mergeAttributes as Sg,Node as Bg}from"@tiptap/core";import{ReactNodeViewRenderer as Hg}from"@tiptap/react";import{v4 as Dg}from"uuid";import{useSetAtom as Ag}from"jotai";import{useCallback as Ig}from"react";import{jsx as Xn,jsxs as Rg}from"react/jsx-runtime";var Lg=s(({button1Label:e,button1Link:t,button1BackgroundColor:r,button1TextColor:o,button2Label:n,button2Link:i,button2BackgroundColor:l,button2TextColor:c,padding:a=6})=>Xn("div",{className:"node-element",children:Rg("div",{className:"courier-flex courier-gap-1 courier-justify-start",style:{marginTop:`${a}px`,marginBottom:`${a}px`},children:[Xn("div",{className:M("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}),Xn("div",{className:M("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:c,borderColor:"#000000",borderRadius:"4px"},children:n})]})}),"ButtonRowComponent"),nd=s(e=>{let t=Ag(st),r=Ig(()=>{if(!e.editor.isEditable)return;let o=lt(e);o&&(e.editor.commands.blur(),t(o))},[e,t]);return Xn(Ut,{id:e.node.attrs.id,className:M(e.node.attrs.isSelected&&"selected-element"),onClick:r,editor:e.editor,"data-node-type":"buttonRow",children:Xn(Lg,{...e.node.attrs})})},"ButtonRowComponentNode");var rr={button1Label:"Register",button1Link:"",button1BackgroundColor:"#000000",button1TextColor:"#ffffff",button2Label:"Learn more",button2Link:"",button2BackgroundColor:"#ffffff",button2TextColor:"#000000",padding:6},Ji=Bg.create({name:"buttonRow",group:"block",atom:!0,onCreate(){Pt(this.editor,this.name)},addAttributes(){return{id:{default:()=>`node-${Dg()}`,parseHTML:e=>e.getAttribute("id"),renderHTML:e=>({id:e.id})},button1Label:{default:rr.button1Label,parseHTML:e=>e.getAttribute("data-button1-label"),renderHTML:e=>({"data-button1-label":e.button1Label})},button1Link:{default:rr.button1Link,parseHTML:e=>e.getAttribute("data-button1-link"),renderHTML:e=>({"data-button1-link":e.button1Link})},button1BackgroundColor:{default:rr.button1BackgroundColor,parseHTML:e=>e.getAttribute("data-button1-bg"),renderHTML:e=>({"data-button1-bg":e.button1BackgroundColor})},button1TextColor:{default:rr.button1TextColor,parseHTML:e=>e.getAttribute("data-button1-color"),renderHTML:e=>({"data-button1-color":e.button1TextColor})},button2Label:{default:rr.button2Label,parseHTML:e=>e.getAttribute("data-button2-label"),renderHTML:e=>({"data-button2-label":e.button2Label})},button2Link:{default:rr.button2Link,parseHTML:e=>e.getAttribute("data-button2-link"),renderHTML:e=>({"data-button2-link":e.button2Link})},button2BackgroundColor:{default:rr.button2BackgroundColor,parseHTML:e=>e.getAttribute("data-button2-bg"),renderHTML:e=>({"data-button2-bg":e.button2BackgroundColor})},button2TextColor:{default:rr.button2TextColor,parseHTML:e=>e.getAttribute("data-button2-color"),renderHTML:e=>({"data-button2-color":e.button2TextColor})},padding:{default:rr.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",Sg(e,{"data-type":"buttonRow"})]},addNodeView(){return Hg(nd)},addCommands(){return{setButtonRow:e=>({chain:t})=>t().insertContent({type:this.name,attrs:{...rr,...e}}).run()}}});import{mergeAttributes as Zg}from"@tiptap/core";import{Node as Fg,mergeAttributes as Vg,isNodeSelection as Og,nodeInputRule as Wg}from"@tiptap/core";import{TextSelection as _s,NodeSelection as zg}from"@tiptap/pm/state";var id=Fg.create({name:"horizontalRule",addOptions(){return{HTMLAttributes:{}}},group:"block",parseHTML(){return[{tag:"hr"}]},renderHTML({HTMLAttributes:e}){return["hr",Vg(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}):Og(r)?i.insertContentAt(n.pos,{type:this.name}):i.insertContent({type:this.name}),i.command(({tr:l,dispatch:c})=>{var a;if(c){let{$to:u}=l.selection,d=u.end();if(u.nodeAfter)u.nodeAfter.isTextblock?l.setSelection(_s.create(l.doc,u.pos+1)):u.nodeAfter.isBlock?l.setSelection(zg.create(l.doc,u.pos)):l.setSelection(_s.create(l.doc,u.pos));else{let p=(a=u.parent.type.contentMatch.defaultType)===null||a===void 0?void 0:a.create();p&&(l.insert(d,p),l.setSelection(_s.create(l.doc,d+1)))}l.scrollIntoView()}return!0}).run()}}},addInputRules(){return[Wg({find:/^(?:---|—-|___\s|\*\*\*\s)$/,type:this.type})]}});import{ReactNodeViewRenderer as qg}from"@tiptap/react";import{v4 as jg}from"uuid";import{useSetAtom as Ug}from"jotai";import{useCallback as $g}from"react";import{jsx as Xi}from"react/jsx-runtime";var _g=s(({padding:e,color:t,size:r,radius:o,variant:n="divider"})=>Xi("div",{className:"courier-w-full node-element",children:Xi("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"),ad=s(e=>{let t=Ug(st),r=$g(()=>{if(!e.editor.isEditable)return;let o=lt(e);o&&(e.editor.commands.blur(),t(o))},[e,t]);return Xi(Ut,{id:e.node.attrs.id,className:M(e.node.attrs.isSelected&&"selected-element"),onClick:r,editor:e.editor,children:Xi(_g,{...e.node.attrs})})},"DividerComponentNode");var or={padding:6,color:"#000000",size:1,radius:0,variant:"divider"},sd={padding:6,color:"transparent",size:1,radius:0,variant:"spacer"},Zs=id.extend({name:"divider",atom:!0,onCreate(){Pt(this.editor,this.name)},addAttributes(){return{padding:{default:or.padding,parseHTML:e=>e.getAttribute("data-padding"),renderHTML:e=>({"data-padding":e.margin})},size:{default:or.size,parseHTML:e=>e.getAttribute("data-size"),renderHTML:e=>({"data-size":e.size})},color:{default:or.color,parseHTML:e=>e.getAttribute("data-color"),renderHTML:e=>({"data-color":e.color})},width:{default:or.size,parseHTML:e=>e.getAttribute("data-size"),renderHTML:e=>({"data-size":e.size})},radius:{default:or.radius,parseHTML:e=>e.getAttribute("data-radius"),renderHTML:e=>({"data-radius":e.radius})},variant:{default:or.variant,parseHTML:e=>e.getAttribute("data-variant"),renderHTML:e=>({"data-variant":e.variant})},id:{default:()=>`node-${jg()}`,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",Zg(e,{"data-type":"divider"}),["hr"]]},addNodeView(){return qg(ad)}});import{z as an}from"zod";var ld=an.object({padding:an.number(),color:an.string(),size:an.number(),radius:an.number(),variant:an.enum(["divider","spacer"]).default("divider")});import{zodResolver as Gg}from"@hookform/resolvers/zod";import{useForm as Kg}from"react-hook-form";import{Fragment as Jg,jsx as $e,jsxs as sn}from"react/jsx-runtime";var cd=s(({element:e,editor:t})=>{let r=Kg({resolver:Gg(ld),defaultValues:{...or,...e==null?void 0:e.attrs}}),{updateNodeAttributes:o}=xr({editor:t,element:e,form:r,nodeType:"divider"});if(!e)return null;let n=r.watch("variant");return sn(at,{...r,children:[$e(Cr,{type:n}),sn("form",{onChange:()=>{o(r.getValues())},children:[$e("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Frame"}),$e(Z,{control:r.control,name:"padding",render:({field:i})=>sn(U,{children:[$e($,{children:$e(se,{startAdornment:$e(ho,{}),type:"number",...i,onChange:l=>{i.onChange(l),o({...r.getValues(),margin:l.target.value})}})}),$e(K,{})]})}),n==="divider"&&sn(Jg,{children:[$e(fe,{className:"courier-mt-6 courier-mb-4"}),$e("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Line"}),$e(Z,{control:r.control,name:"size",render:({field:i})=>sn(U,{className:"courier-mb-4",children:[$e($,{children:$e(se,{startAdornment:$e(Qt,{}),type:"number",min:0,...i,onChange:l=>{i.onChange(l),o({...r.getValues(),width:l.target.value})}})}),$e(K,{})]})}),$e(Z,{control:r.control,name:"color",render:({field:i})=>sn(U,{className:"courier-mb-4",children:[$e($,{children:$e(Ue,{...i,defaultValue:or.color,onChange:l=>{i.onChange(l),o({...r.getValues(),[i.name]:l})}})}),$e(K,{})]})})]})]})]})},"DividerForm");import{Node as Xg}from"@tiptap/core";var ud=Xg.create({name:"doc",topNode:!0,content:"block+"});var qs=ud.extend({content:"(block)+"});import{Node as nh}from"@tiptap/core";import{ReactNodeViewRenderer as ih}from"@tiptap/react";import{useSortable as Yg}from"@dnd-kit/sortable";import{NodeViewWrapper as Qg}from"@tiptap/react";import{forwardRef as eh,useEffect as dd,useState as th}from"react";import{jsx as Yi}from"react/jsx-runtime";function rh(){let[e,t]=th(!1);return dd(()=>{let r=setTimeout(()=>t(!0),500);return()=>clearTimeout(r)},[]),e}s(rh,"useMountStatus");var oh=eh(({children:e,className:t,dragOverlay:r,id:o},n)=>(dd(()=>{if(r)return document.body.style.cursor="grabbing",()=>{document.body.style.cursor=""}},[r]),Yi(Qg,{ref:n,"data-cypress":"draggable-item","data-node-view-wrapper":!0,"data-id":o,className:M("courier-flex courier-items-start courier-gap-2 courier-pl-6",t),children:e}))),pd=s(({node:e})=>{let t=e.attrs.type,r=e.attrs.id,{setNodeRef:o,setActivatorNodeRef:n,listeners:i,isDragging:l,transform:c,transition:a}=Yg({id:r}),u=rh();return Yi(oh,{ref:o,id:r,transition:a,transform:c,fadeIn:l&&!u,listeners:i,handleProps:{ref:n},children:Yi("div",{className:M("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:Yi("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 md=nh.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 ih(pd,{as:"div",className:"drag-placeholder-wrapper"})}});import{Extension as ah}from"@tiptap/core";import{Plugin as sh,PluginKey as lh}from"@tiptap/pm/state";var ch=new lh("file-handler"),uh=ah.create({name:"fileHandler",addOptions(){return{allowedMimeTypes:[],onDrop:()=>{},onPaste:()=>{}}},addProseMirrorPlugins(){let{allowedMimeTypes:e,onDrop:t,onPaste:r}=this.options;return[new sh({key:ch,props:{handleDrop:(o,n,i,l)=>{var d;if(!((d=n.dataTransfer)!=null&&d.files)||l)return!1;let{files:c}=n.dataTransfer,a=o.posAtCoords({left:n.clientX,top:n.clientY});if(!a)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,a.pos),!0)},handlePaste:(o,n)=>{var c;if(!((c=n.clipboardData)!=null&&c.files))return!1;let{files:i}=n.clipboardData,l=Array.from(i).filter(a=>e==null?void 0:e.includes(a.type));return l.length===0?!1:(n.preventDefault(),r&&r(this.editor,l),!0)}}})]}}),Qi=uh;import{Extension as dh}from"@tiptap/core";import{Plugin as ph,PluginKey as mh}from"@tiptap/pm/state";var fh=new mh("fixedChannelPaste"),gh=s(e=>{let t=e.view.dom.closest(".courier-push-editor"),r=e.view.dom.closest(".courier-sms-editor"),o=e.view.dom.closest(".courier-inbox-editor");if(t||r||o)return!0;let n=e.state.doc,i=0,l=0;n.forEach(d=>{d.type.name==="paragraph"||d.type.name==="heading"?i++:d.type.name==="button"&&l++});let c=i===1&&l===0,a=i===2&&l===0,u=i>=2&&i+l<=4;return c||a||u},"isInFixedChannel"),hh=s(e=>{let t=[],r=s(o=>{if(o.type.name==="text")t.push(o.text||"");else if(o.type.name==="paragraph"||o.type.name==="heading"){let n=o.textContent||"";n.trim()&&t.push(n)}else o.content&&o.content.forEach(n=>{r(n)})},"extractTextFromNode");return e.content.forEach(o=>{r(o)}),t.filter(o=>o.trim()).join(`
180
- `).trim()},"extractTextFromSlice"),ea=dh.create({name:"fixedChannelPaste",addOptions(){return{fixedChannels:["push","sms","inbox"]}},addProseMirrorPlugins(){let e=this.editor;return[new ph({key:fh,props:{handlePaste:(t,r,o)=>{let{state:n}=t,{selection:i}=n;if(!gh(e))return!1;let c=i.$from.node();if(!(c.type.name==="paragraph"||c.type.name==="heading")||o.content.childCount<=1)return!1;let u=hh(o);if(!u)return!1;r.preventDefault();let d=n.tr.replaceSelectionWith(n.schema.text(u),!1);return t.dispatch(d),!0}}})]},addStorage(){return{currentChannel:null}}});import{Extension as bh}from"@tiptap/core";import{Plugin as yh,PluginKey as vh,TextSelection as js}from"@tiptap/pm/state";var xo=s((e,t)=>{if(t.length===0)return!1;let r={push:()=>e.view.dom.closest(".courier-push-editor"),sms:()=>e.view.dom.closest(".courier-sms-editor"),inbox:()=>e.view.dom.closest(".courier-inbox-editor")};return t.some(o=>{var n;return(n=r[o])==null?void 0:n.call(r)})},"isInFixedChannel"),Yn=s(e=>{let{selection:t}=e.state,{$anchor:r}=t,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{start:i,end:l,node:n}}o--}return null},"getCurrentElementBounds"),ta=s(e=>{let{selection:t}=e.state,{$from:r,$to:o}=t;if(t.empty)return!1;let n=r.depth,i=o.depth,l=null,c=null;for(;n>0;){let a=r.node(n);if(a.type.name==="paragraph"||a.type.name==="heading"){l={node:a,depth:n};break}n--}for(;i>0;){let a=o.node(i);if(a.type.name==="paragraph"||a.type.name==="heading"){c={node:a,depth:i};break}i--}return!!(l&&c&&l.node!==c.node)},"isMultiElementSelection"),ra=new vh("fixedChannelSelection"),oa=bh.create({name:"fixedChannelSelection",addOptions(){return{channels:["push","sms","inbox"]}},addCommands(){return{constrainSelectionToElement:()=>({editor:e,tr:t,dispatch:r})=>{if(!xo(e,this.options.channels))return!1;let o=Yn(e);if(!o)return!1;let{start:n,end:i}=o,{selection:l}=e.state;if(l.from>=n&&l.to<=i)return!1;let c=Math.max(l.from,n),a=Math.min(l.to,i);return r&&t.setSelection(js.create(t.doc,c,a)),!0}}},addKeyboardShortcuts(){return{"Mod-a":({editor:e})=>{if(!xo(e,this.options.channels))return!1;let t=Yn(e);if(!t)return!1;let{start:r,end:o}=t;return e.commands.setTextSelection({from:r,to:o}),!0},Backspace:({editor:e})=>{if(!xo(e,this.options.channels))return!1;if(ta(e)){let t=Yn(e);if(t){let{start:r,end:o}=t,{selection:n}=e.state,i=Math.max(n.from,r),l=Math.min(n.to,o);e.commands.setTextSelection({from:i,to:l})}return!0}return!1},Delete:({editor:e})=>{if(!xo(e,this.options.channels))return!1;if(ta(e)){let t=Yn(e);if(t){let{start:r,end:o}=t,{selection:n}=e.state,i=Math.max(n.from,r),l=Math.min(n.to,o);e.commands.setTextSelection({from:i,to:l})}return!0}return!1}}},addProseMirrorPlugins(){return[new yh({key:ra,props:{handleTextInput:(e,t,r)=>{let o=this.editor;if(!xo(o,this.options.channels))return!1;if(ta(o)){let n=Yn(o);if(n){let{start:i,end:l}=n,c=Math.max(t,i),a=Math.min(r,l),u=e.state.tr;u.setSelection(js.create(u.doc,c,a)),e.dispatch(u)}return!0}return!1},handleDOMEvents:{mousedown:(e,t)=>{let r=this.editor;if(!xo(r,this.options.channels))return!1;let o=e.posAtCoords({left:t.clientX,top:t.clientY});if(o!==null){let n=e.state.doc.resolve(o.pos),i=n.depth;for(;i>0;){let l=n.node(i);if(l.type.name==="paragraph"||l.type.name==="heading"){e.dispatch(e.state.tr.setMeta(ra,{elementStart:n.start(i),elementEnd:n.end(i)}));break}i--}}return!1},mousemove:(e,t)=>{let r=this.editor;if(!xo(r,this.options.channels))return!1;if(e.state.selection.from!==e.state.selection.to&&ta(r)){let n=ra.getState(e.state);if(n!=null&&n.elementStart&&(n!=null&&n.elementEnd)){let{selection:i}=e.state,l=Math.max(i.from,n.elementStart),c=Math.min(i.to,n.elementEnd),a=e.state.tr;return a.setSelection(js.create(a.doc,l,c)),e.dispatch(a),!0}}return!1}}},state:{init(){return null},apply(e,t){return e.getMeta(ra)||t}}})]}});import{mergeAttributes as Ah}from"@tiptap/core";import{Node as xh,mergeAttributes as Ch,textblockTypeInputRule as Th}from"@tiptap/core";var fd=xh.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]}`,Ch(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=>Th({find:new RegExp(`^(#{${Math.min(...this.options.levels)},${e}})\\s$`),type:this.type,getAttributes:{level:e}}))}});import{z as nr}from"zod";var gd=nr.object({paddingVertical:nr.number(),paddingHorizontal:nr.number(),backgroundColor:nr.string(),borderWidth:nr.number(),borderRadius:nr.number(),borderColor:nr.string(),textColor:nr.string(),textAlign:nr.enum(["left","center","right","justify"]).default("left"),selected:nr.boolean().default(!1),id:nr.string().optional()}),re={paddingVertical:6,paddingHorizontal:0,backgroundColor:"transparent",borderWidth:0,borderRadius:0,borderColor:"#000000",textColor:"#292929",textAlign:"left",selected:!1};import{NodeViewContent as wh,NodeViewWrapper as Ph}from"@tiptap/react";import{useSetAtom as kh}from"jotai";import{useCallback as Eh}from"react";import{jsx as Co}from"react/jsx-runtime";var hd=s(({paddingVertical:e,paddingHorizontal:t,textAlign:r,backgroundColor:o,borderWidth:n,borderRadius:i,borderColor:l,textColor:c,level:a,type:u})=>{let d=u==="heading"?`h${a}`:"p";return Co("div",{className:"courier-w-full node-element",children:Co("div",{className:M(!c&&"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:c},children:Co(wh,{as:d})})})},"TextBlockComponent"),na=s(e=>{let t=kh(st),r=Eh(()=>{if(!e.editor.isEditable)return;let c=lt(e);c&&t(c)},[e,t]),o=!e.node.content||e.node.content.size===0,n=Yr(e.getPos),i=n!==null?e.editor.state.doc.resolve(n):null;return(i==null?void 0:i.parent.type.name)==="blockquote"?Co(Ph,{className:M(e.node.attrs.isSelected&&"selected-element"),onClick:r,children:Co(hd,{...e.node.attrs,type:e.node.type.name})}):Co(Ut,{id:e.node.attrs.id,className:M(e.node.attrs.isSelected&&"selected-element",o&&"is-empty"),onClick:r,editor:e.editor,children:Co(hd,{...e.node.attrs,type:e.node.type.name})})},"TextBlockComponentNode");import{zodResolver as Nh}from"@hookform/resolvers/zod";import{useForm as Mh}from"react-hook-form";import{jsx as ce,jsxs as ir}from"react/jsx-runtime";var bd=s(({element:e,editor:t})=>{let r=Mh({resolver:Nh(gd),defaultValues:{...re,...e==null?void 0:e.attrs}}),{updateNodeAttributes:o}=xr({editor:t,element:e,form:r,nodeType:(e==null?void 0:e.type.name)||"paragraph"});return e?ir(at,{...r,children:[ce(Cr,{type:"text"}),ir("form",{onChange:()=>{o(r.getValues())},children:[ce("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Frame"}),ir("div",{className:"courier-flex courier-flex-row courier-gap-3 courier-mb-3",children:[ce(Z,{control:r.control,name:"paddingHorizontal",render:({field:n})=>ir(U,{children:[ce($,{children:ce(se,{startAdornment:ce(Wn,{}),type:"number",min:0,...n})}),ce(K,{})]})}),ce(Z,{control:r.control,name:"paddingVertical",render:({field:n})=>ir(U,{children:[ce($,{children:ce(se,{startAdornment:ce(ho,{}),type:"number",min:0,...n})}),ce(K,{})]})})]}),ce(Z,{control:r.control,name:"backgroundColor",render:({field:n})=>ir(U,{className:"courier-mb-4",children:[ce($,{children:ce(Ue,{...n,defaultValue:re.backgroundColor,onChange:i=>{n.onChange(i),o({...r.getValues(),[n.name]:i})}})}),ce(K,{})]})}),ce(fe,{className:"courier-mb-4"}),ce("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Text"}),ce(Z,{control:r.control,name:"textColor",render:({field:n})=>ir(U,{className:"courier-mb-4",children:[ce($,{children:ce(Ue,{...n,transparent:!1,defaultValue:re.textColor,onChange:i=>{n.onChange(i),o({...r.getValues(),[n.name]:i})}})}),ce(K,{})]})}),ce(fe,{className:"courier-mb-4"}),ce("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Border"}),ir("div",{className:"courier-flex courier-flex-row courier-gap-3 courier-mb-3",children:[ce(Z,{control:r.control,name:"borderWidth",render:({field:n})=>ir(U,{children:[ce($,{children:ce(se,{startAdornment:ce(Qt,{}),type:"number",min:0,...n})}),ce(K,{})]})}),ce(Z,{control:r.control,name:"borderRadius",render:({field:n})=>ir(U,{children:[ce($,{children:ce(se,{startAdornment:ce(go,{}),type:"number",min:0,...n})}),ce(K,{})]})})]}),ce(Z,{control:r.control,name:"borderColor",render:({field:n})=>ir(U,{className:"courier-mb-4",children:[ce($,{children:ce(Ue,{...n,defaultValue:re.borderColor,onChange:i=>{n.onChange(i),o({...r.getValues(),[n.name]:i})}})}),ce(K,{})]})})]})]}):null},"TextBlockForm");import{ReactNodeViewRenderer as Ih}from"@tiptap/react";var Gs=fd.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),HTMLAttributes:{class:""}}},onCreate(){Pt(this.editor,this.name)},addAttributes(){var e;return{...(e=this.parent)==null?void 0:e.call(this),paddingVertical:{default:re.paddingVertical,parseHTML:t=>t.style.paddingTop?parseInt(t.style.paddingTop):re.paddingVertical,renderHTML:t=>({style:`padding-top: ${t.paddingVertical}px; padding-bottom: ${t.paddingVertical}px;`})},paddingHorizontal:{default:re.paddingHorizontal,parseHTML:t=>t.style.paddingLeft?parseInt(t.style.paddingLeft):re.paddingHorizontal,renderHTML:t=>({style:`padding-left: ${t.paddingHorizontal}px; padding-right: ${t.paddingHorizontal}px;`})},textAlign:{default:re.textAlign,parseHTML:t=>t.style.textAlign||re.textAlign,renderHTML:t=>({style:`text-align: ${t.textAlign}`})},backgroundColor:{default:re.backgroundColor,parseHTML:t=>t.style.backgroundColor||re.backgroundColor,renderHTML:t=>({style:`background-color: ${t.backgroundColor}`})},borderWidth:{default:re.borderWidth,parseHTML:t=>t.style.borderWidth?parseInt(t.style.borderWidth):re.borderWidth,renderHTML:t=>({style:`border-width: ${t.borderWidth}px`})},borderRadius:{default:re.borderRadius,parseHTML:t=>t.style.borderRadius?parseInt(t.style.borderRadius):re.borderRadius,renderHTML:t=>({style:`border-radius: ${t.borderRadius}px`})},borderColor:{default:re.borderColor,parseHTML:t=>t.style.borderColor||re.borderColor,renderHTML:t=>({style:`border-color: ${t.borderColor}`})},textColor:{default:re.textColor,parseHTML:t=>t.style.color||re.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]}`,Ah(this.options.HTMLAttributes,t),0]},addNodeView(){return Ih(na)}});import{mergeAttributes as Bh,Node as Hh}from"@tiptap/core";import{ReactNodeViewRenderer as Dh}from"@tiptap/react";import{useSetAtom as yd}from"jotai";import{useCallback as kr,useEffect as Js,useMemo as Lh,useRef as vd,useState as xd}from"react";import{Fragment as Sh,jsx as Pr,jsxs as Ks}from"react/jsx-runtime";var Rh=s(({sourcePath:e,alt:t,alignment:r,borderWidth:o,borderRadius:n,borderColor:i,isUploading:l,width:c,imageNaturalWidth:a,onFileSelect:u,editor:d})=>{let[p,f]=xd(!1),[h,g]=xd(!0),b=vd(null),y=vd(null);Js(()=>{e&&g(!0)},[e]),Js(()=>{if(e&&!a&&d){let C=new Image;C.onload=()=>{try{if(!d.view||!d.state)return;let E=d.view.state.selection.from;d.chain().setNodeSelection(E).updateAttributes("imageBlock",{imageNaturalWidth:C.naturalWidth}).run()}catch{}},C.src=e}},[e,a,d]);let w=kr(C=>{var I,H;let E=(H=(I=d==null?void 0:d.view)==null?void 0:I.dom)==null?void 0:H.closest(".ProseMirror"),P=(E==null?void 0:E.clientWidth)||1e3,T=Math.min(100,C/P*100);return Math.round(T)},[d]),N=Lh(()=>w(a),[w,a]),v=kr(C=>{C.preventDefault(),C.stopPropagation(),C.dataTransfer.types.includes("Files")&&Array.from(C.dataTransfer.items).some(T=>T.type.startsWith("image/"))&&(f(!0),C.dataTransfer.dropEffect="copy")},[]),m=kr(C=>{C.preventDefault(),C.stopPropagation(),f(!1)},[]),x=kr(C=>{C.preventDefault(),C.stopPropagation(),C.dataTransfer.types.includes("Files")&&Array.from(C.dataTransfer.items).some(T=>T.type.startsWith("image/"))&&f(!0)},[]),k=kr(C=>{C.preventDefault(),C.stopPropagation(),f(!1);let P=Array.from(C.dataTransfer.files).find(T=>T.type.startsWith("image/"));P&&u&&u(P)},[u]),B=kr(C=>{var P;let E=(P=C.target.files)==null?void 0:P[0];E&&u&&u(E)},[u]),R=kr(()=>{var C;(C=b.current)==null||C.click()},[]);return e?Pr("div",{className:"courier-w-full node-element",children:Ks("div",{className:M("courier-relative courier-p-1",(l||h)&&"courier-min-h-[200px] courier-min-w-[300px] courier-bg-gray-100"),children:[(l||h)&&Pr("div",{className:"courier-absolute courier-inset-0 courier-flex courier-items-center courier-justify-center",children:Pr(bo,{className:"courier-w-8 courier-h-8"})}),Pr("img",{ref:y,src:e,alt:t,className:M("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||h)&&"courier-invisible"),style:{maxWidth:c===N?`${a}px`:`${c}%`,borderWidth:`${o}px`,borderRadius:`${n}px`,borderColor:i,borderStyle:o>0?"solid":"none",display:"block"},loading:"lazy",decoding:"async",draggable:!1,onLoad:C=>{if(g(!1),!a&&d)try{if(!d.view||!d.state)return;setTimeout(()=>{let E=d.view.state.selection.from;d.chain().setNodeSelection(E).updateAttributes("imageBlock",{imageNaturalWidth:C.target.naturalWidth}).run()},100)}catch(E){console.warn("Editor not ready for image update:",E)}},onError:()=>g(!1)})]})}):Ks("div",{className:M("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:v,onDragEnter:x,onDragLeave:m,onDrop:k,style:{pointerEvents:"all"},children:[l?Pr(bo,{className:"courier-w-8 courier-h-8"}):Ks(Sh,{children:[Pr("span",{className:"courier-text-sm courier-pointer-events-none courier-inline-block",children:"Drag and drop image, or\xA0"}),Pr("button",{className:"courier-underline courier-font-medium courier-inline-block courier-text-sm",onClick:R,children:"Browse"})]}),Pr("input",{ref:b,type:"file",accept:"image/*",className:"courier-hidden",onChange:B})]})},"ImageBlockComponent"),Cd=s(e=>{let t=yd(st),r=yd(ee),{uploadImage:o}=Mn(),n=kr(c=>{var p,f,h;let a=(h=(f=(p=e.editor)==null?void 0:p.view)==null?void 0:f.dom)==null?void 0:h.closest(".ProseMirror"),u=(a==null?void 0:a.clientWidth)||1e3,d=Math.min(100,c/u*100);return Math.round(d)},[e.editor]);Js(()=>{var a,u;let c=lt(e);if((a=c==null?void 0:c.attrs)!=null&&a.sourcePath&&!((u=c==null?void 0:c.attrs)!=null&&u.imageNaturalWidth)){let d=new Image;d.onload=()=>{let p=c.attrs.width||n(d.naturalWidth),f=Yr(e.getPos);f!==null&&e.editor.chain().focus().setNodeSelection(f).updateAttributes("imageBlock",{width:p,imageNaturalWidth:d.naturalWidth}).run()},d.src=c.attrs.sourcePath}},[e,n]);let i=kr(()=>{if(!e.editor.isEditable)return;let c=lt(e);c&&(e.editor.commands.blur(),t(c))},[e,t]),l=kr(async c=>{let a=Yr(e.getPos);lt(e)&&a!==null&&e.editor.chain().focus().setNodeSelection(a).updateAttributes("imageBlock",{isUploading:!0,sourcePath:""}).run();try{if(!c.type.startsWith("image/"))throw new Error("Only image files are supported");let d=new FileReader;d.readAsDataURL(c),await new Promise((b,y)=>{d.onload=b,d.onerror=y});let f=(await o({file:c})).url,h=Yr(e.getPos);if(lt(e)&&h!==null){let b=new Image;b.src=f,await new Promise(w=>{b.onload=w});let y=n(b.naturalWidth);e.editor.chain().focus().setNodeSelection(h).updateAttributes("imageBlock",{sourcePath:f,isUploading:!1,width:y,imageNaturalWidth:b.naturalWidth}).run()}}catch(d){console.error("Error uploading image:",d);let p="Failed to upload image: "+d;if(d instanceof Error){let g=d.message;g.includes("GraphQL error")?p="Server error: Could not process image":(g.includes("network")||g.includes("fetch"))&&(p="Network error: Could not upload image")}r({message:`Upload failed: ${p}`,toastProps:{duration:6e3,description:`File: ${c.name} (${(c.size/1024/1024).toFixed(2)}MB)`}});let f=Yr(e.getPos);lt(e)&&f!==null&&e.editor.chain().focus().setNodeSelection(f).updateAttributes("imageBlock",{isUploading:!1}).run()}},[e,n,o,r]);return Pr(Ut,{id:e.node.attrs.id,className:M(e.node.attrs.isSelected&&"selected-element"),onClick:i,editor:e.editor,children:Pr(Rh,{...e.node.attrs,onFileSelect:l,editor:e.editor})})},"ImageBlockView");var _e={sourcePath:"",link:"",alt:"",alignment:"center",width:1,borderWidth:0,borderRadius:0,borderColor:"#000000",isUploading:!1,imageNaturalWidth:0},ia=Hh.create({name:"imageBlock",group:"block",atom:!0,inline:!1,onCreate(){Pt(this.editor,this.name)},addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),placeholder:""}},addAttributes(){return{sourcePath:{default:_e.sourcePath,parseHTML:e=>e.getAttribute("data-source-path")||"",renderHTML:e=>({"data-source-path":e.sourcePath||""})},link:{default:_e.link,parseHTML:e=>e.getAttribute("data-link"),renderHTML:e=>({"data-link":e.link})},alt:{default:_e.alt,parseHTML:e=>e.getAttribute("data-alt"),renderHTML:e=>({"data-alt":e.alt})},alignment:{default:_e.alignment,parseHTML:e=>e.getAttribute("data-alignment"),renderHTML:e=>({"data-alignment":e.alignment})},width:{default:_e.width,parseHTML:e=>e.getAttribute("data-width"),renderHTML:e=>({"data-width":e.width})},imageNaturalWidth:{default:_e.imageNaturalWidth,parseHTML:e=>e.getAttribute("data-natural-width"),renderHTML:e=>({"data-natural-width":e.imageNaturalWidth})},borderWidth:{default:_e.borderWidth,parseHTML:e=>e.getAttribute("data-border-width"),renderHTML:e=>({"data-border-width":e.borderWidth})},borderRadius:{default:_e.borderRadius,parseHTML:e=>e.getAttribute("data-border-radius"),renderHTML:e=>({"data-border-radius":e.borderRadius})},borderColor:{default:_e.borderColor,parseHTML:e=>e.getAttribute("data-border-color"),renderHTML:e=>({"data-border-color":e.borderColor})},isUploading:{default:_e.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",Bh(this.options.HTMLAttributes,e,{"data-type":"image-block"}),0]},addNodeView(){return Dh(Cd)},addCommands(){return{setImageBlock:e=>({chain:t})=>t().insertContent({type:this.name,attrs:{..._e,...e}}).run(),setImageBlockAt:({pos:e,src:t})=>({chain:r})=>r().insertContentAt(e,{type:this.name,attrs:{..._e,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 ar}from"zod";var Td=ar.object({sourcePath:ar.string(),link:ar.string().optional(),alt:ar.string().optional(),alignment:ar.enum(["left","center","right"]),width:ar.number().min(1).max(100),borderWidth:ar.number(),borderRadius:ar.number(),borderColor:ar.string(),isUploading:ar.boolean().optional(),imageNaturalWidth:ar.number()});import{zodResolver as Fh}from"@hookform/resolvers/zod";import{useSetAtom as Vh}from"jotai";import{ArrowUp as Oh}from"lucide-react";import{useCallback as aa,useEffect as Wh,useRef as wd,useState as sa}from"react";import{useForm as zh}from"react-hook-form";import{Fragment as Pd,jsx as J,jsxs as Ze}from"react/jsx-runtime";var kd=s(({element:e,editor:t})=>{var B,R,C,E;let r=wd(null),o=wd(null),[n,i]=sa(""),[l,c]=sa(!1),[a,u]=sa(((B=e==null?void 0:e.attrs)==null?void 0:B.imageNaturalWidth)||0),[d,p]=sa(!1),f=Vh(ee),{uploadImage:h}=Mn(),g=zh({resolver:Fh(Td),defaultValues:{..._e,...e==null?void 0:e.attrs},mode:"onChange"}),{updateNodeAttributes:b}=xr({editor:t,element:e,form:g,nodeType:"imageBlock"});Wh(()=>{var T;let P=(T=e==null?void 0:e.attrs)==null?void 0:T.sourcePath;if(P&&!a){let I=new Image;I.onload=()=>{u(I.naturalWidth);let H={...g.getValues(),imageNaturalWidth:I.naturalWidth};g.setValue("imageNaturalWidth",I.naturalWidth),b(H)},I.src=P}},[(R=e==null?void 0:e.attrs)==null?void 0:R.sourcePath,a,g,b]);let y=aa(P=>{var D,z;let T=(z=(D=t==null?void 0:t.view)==null?void 0:D.dom)==null?void 0:z.closest(".ProseMirror"),I=(T==null?void 0:T.clientWidth)||1e3;if(P||(P=a),!P)return 0;let H=Math.min(100,P/I*100);return Math.round(H)},[t,a]),w=aa(P=>{var T;P.preventDefault(),(T=r.current)==null||T.click()},[]),N=aa((P,T)=>{let I=y(P.naturalWidth);i(`${I}%`),c(!1),g.setValue("sourcePath",T),g.setValue("imageNaturalWidth",P.naturalWidth),g.setValue("width",I);let H={...g.getValues(),sourcePath:T,width:I,imageNaturalWidth:P.naturalWidth,isUploading:!1};b(H)},[g,b,y]),v=aa(P=>{if(!P)return;let T=new Image;T.onload=()=>{let I=y(T.naturalWidth);g.setValue("sourcePath",P),g.setValue("imageNaturalWidth",T.naturalWidth),g.setValue("width",I);let H={...g.getValues(),sourcePath:P,width:I,imageNaturalWidth:T.naturalWidth};b(H)},T.src=P},[g,b,y]),m=((E=(C=t==null?void 0:t.extensionManager.extensions.find(P=>P.name==="variableSuggestion"))==null?void 0:C.options)==null?void 0:E.variables)||{},x=tr(m),k=g.getValues().sourcePath;return e?Ze(at,{...g,children:[J(Cr,{type:"image"}),Ze("form",{ref:o,onChange:()=>{let P=g.getValues();b(P)},children:[J("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Image"}),Ze(Ii,{defaultValue:"file",className:"courier-mb-3 courier-w-full",children:[Ze(Bn,{className:"courier-w-full courier-flex courier-justify-stretch courier-mb-3",children:[J(qo,{value:"file",className:"courier-flex-1",children:"From file"}),J(qo,{value:"url",className:"courier-flex-1",children:"From URL"})]}),J(Li,{value:"file",children:Ze("div",{className:"courier-flex courier-flex-col courier-gap-2",children:[J(Te,{onClick:w,className:"courier-w-full",variant:"outline",type:"button",disabled:d,children:d?J(Pd,{children:"Uploading..."}):Ze(Pd,{children:[J(Oh,{strokeWidth:1.25,className:"courier-w-4 courier-h-4 courier-ml-2 courier-text-foreground"}),"Upload image"]})}),J("input",{ref:r,type:"file",accept:"image/*",className:"courier-hidden",onChange:P=>{var I;let T=(I=P.target.files)==null?void 0:I[0];if(T){p(!0),g.setValue("sourcePath",""),b({...g.getValues(),sourcePath:"",isUploading:!0});let H=new FileReader;H.onload=async()=>{try{let D=(await h({file:T})).url,z=new Image;z.onload=()=>{N(z,D),p(!1)},z.onerror=()=>{f({message:"Upload failed: Failed to load uploaded image",toastProps:{duration:6e3,description:`File: ${T.name} (${(T.size/1024/1024).toFixed(2)}MB)`}}),p(!1),b({...g.getValues(),isUploading:!1})},z.src=D}catch(V){console.error("Error uploading image:",V),f({message:"Upload failed: Failed to upload image",toastProps:{duration:6e3,description:`File: ${T.name} (${(T.size/1024/1024).toFixed(2)}MB)`}}),p(!1),b({...g.getValues(),isUploading:!1})}},H.onerror=()=>{f({message:"Upload failed: Failed to read image file",toastProps:{duration:6e3,description:`File: ${T.name} (${(T.size/1024/1024).toFixed(2)}MB)`}}),p(!1),b({...g.getValues(),isUploading:!1})},H.readAsDataURL(T)}}})]})}),J(Li,{value:"url",children:J(Z,{control:g.control,name:"sourcePath",render:({field:P})=>Ze(U,{className:"courier-mb-3",children:[J($,{children:J(Lt,{as:"Textarea",...P,autoResize:!0,className:"courier-max-h-[88px]",variables:x,onChange:T=>v(T.target.value)})}),J(K,{})]})})})]}),J(Z,{control:g.control,name:"link",render:({field:P})=>Ze(U,{className:"courier-mb-3",children:[J($,{children:J(Lt,{as:"Textarea",placeholder:"Link",...P,variables:x,onChange:T=>{P.onChange(T),b({...g.getValues(),link:T.target.value})}})}),J(K,{})]})}),J(Z,{control:g.control,name:"alt",render:({field:P})=>Ze(U,{className:"courier-mb-4",children:[J($,{children:J(Lt,{as:"Textarea",...P,placeholder:"Alt text...",variables:x,onChange:T=>{P.onChange(T),b({...g.getValues(),alt:T.target.value})}})}),J(K,{})]})}),J(fe,{className:"courier-mt-6 courier-mb-4"}),J("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Width"}),(()=>{let P=g.getValues().width,T=g.getValues().imageNaturalWidth,I=y(T),H=P===I,V=H?"original":"fill";return Ze(zt,{type:"single",value:k?V:"original",onValueChange:D=>{if(!D||D===V)return;let z=D==="fill"?100:y(T);z>0&&(g.setValue("width",z),b({...g.getValues(),width:z}))},className:"courier-w-full courier-border courier-rounded-md courier-border-border courier-p-0.5 courier-mb-3 courier-shadow-sm",disabled:!k,children:[J(Be,{size:"sm",value:"original",className:"courier-w-full courier-h-7",children:"Original"}),J(Be,{size:"sm",value:"fill",className:"courier-w-full courier-h-7",disabled:H||!k,children:"Fill"})]})})(),J(Z,{control:g.control,name:"width",render:({field:P})=>Ze(U,{className:"courier-flex-1 courier-mb-3",children:[J($,{children:J(se,{type:"text",inputMode:"numeric",pattern:"[0-9]*",min:1,max:100,...P,value:g.getValues().sourcePath?l?n:`${P.value}%`:"0%",className:"courier-text-2xl courier-font-normal",disabled:!g.getValues().sourcePath,onFocus:T=>{c(!0),i(T.target.value)},onChange:T=>{i(T.target.value)},onKeyDown:T=>{T.key==="Enter"&&(T.preventDefault(),T.currentTarget.blur())},onBlur:T=>{c(!1);let I=parseFloat(T.target.value.replace("%",""));if(!isNaN(I)){let H=Math.min(100,Math.max(1,I));P.onChange(H),b({...g.getValues(),width:Math.round(H)})}}})}),J(K,{})]})}),J(Z,{control:g.control,name:"width",render:({field:P})=>Ze(U,{className:"courier-flex-1 courier-mb-3",children:[J($,{children:J(gs,{min:1,max:100,value:[k?P.value:0],disabled:!k,onValueChange:T=>{P.onChange(T[0]),b({...g.getValues(),width:T[0]})}})}),J(K,{})]})}),J(Z,{control:g.control,name:"alignment",render:({field:P})=>Ze(U,{children:[J($,{children:Ze(zt,{disabled:!k,type:"single",value:P.value,onValueChange:T=>{P.onChange(T),b({...g.getValues(),alignment:T})},className:"courier-w-full courier-border courier-rounded-md courier-border-border courier-p-0.5",children:[J(Be,{size:"sm",value:"left",className:"courier-w-full",children:J(ji,{className:"courier-h-4 courier-w-4"})}),J(Be,{size:"sm",value:"center",className:"courier-w-full",children:J(Gi,{className:"courier-h-4 courier-w-4"})}),J(Be,{size:"sm",value:"right",className:"courier-w-full",children:J(Ki,{className:"courier-h-4 courier-w-4"})})]})}),J(K,{})]})}),J(fe,{className:"courier-mt-6 courier-mb-4"}),J("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Border"}),Ze("div",{className:"courier-flex courier-flex-row courier-gap-3 courier-mb-3",children:[J(Z,{control:g.control,name:"borderWidth",render:({field:P})=>Ze(U,{children:[J($,{children:J(se,{startAdornment:J(Qt,{}),type:"number",disabled:!k,min:0,...P,onChange:T=>{let I=parseInt(T.target.value)||0;P.onChange(I),b({...g.getValues(),borderWidth:I})}})}),J(K,{})]})}),J(Z,{control:g.control,name:"borderRadius",render:({field:P})=>Ze(U,{children:[J($,{children:J(se,{startAdornment:J(go,{}),type:"number",disabled:!k,min:0,...P,onChange:T=>{let I=parseInt(T.target.value)||0;P.onChange(I),b({...g.getValues(),borderRadius:I})}})}),J(K,{})]})})]}),J(Z,{control:g.control,name:"borderColor",render:({field:P})=>Ze(U,{className:"courier-mb-4",children:[J($,{children:J(Ue,{...P,disabled:!k,defaultValue:_e.borderColor,onChange:T=>{P.onChange(T),b({...g.getValues(),[P.name]:T})}})}),J(K,{})]})})]})]}):null},"ImageBlockForm");import{getMarkRange as Ed,mergeAttributes as Uh}from"@tiptap/core";import $h from"@tiptap/extension-link";import{Plugin as Nd,TextSelection as Md}from"@tiptap/pm/state";var Xs=$h.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",Uh(this.options.HTMLAttributes,e,{class:"link cursor-pointer"}),0]},addProseMirrorPlugins(){var t;return[...((t=this.parent)==null?void 0:t.call(this))||[],new Nd({props:{handleClick:(r,o,n)=>{if(n.button!==0)return!1;let{state:i}=r,{doc:l}=i,c=l.resolve(o),a=c.marks().find(u=>u.type.name==="link");if(a||o>0&&(a=l.resolve(o-1).marks().find(d=>d.type.name==="link")),a||o<l.content.size&&(a=l.resolve(o+1).marks().find(d=>d.type.name==="link")),a){let u=Ed(c,a.type);return u?(r.dispatch(i.tr.setSelection(Md.create(l,u.from,u.to))),r.dispatch(r.state.tr.setMeta("showLinkForm",{from:u.from,to:u.to,href:a.attrs.originalHref||a.attrs.href})),!0):(r.dispatch(i.tr.setSelection(Md.create(l,o,o+1))),r.dispatch(r.state.tr.setMeta("showLinkForm",{from:o,to:o+1,href:a.attrs.originalHref||a.attrs.href})),!0)}return!1}}}),new Nd({appendTransaction(r,o,n){if(!r.some(c=>c.docChanged))return null;let i=n.tr,l=!1;return n.doc.descendants((c,a)=>(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 f=Ed(n.doc.resolve(a),u.type);f&&(i.removeMark(f.from,f.to,u.type),i.addMark(f.from,f.to,u.type.create({...u.attrs,href:p,hasVariables:!0,originalHref:p})),l=!0)}}}}),!0)),l?i:null}})]}});import{zodResolver as _h}from"@hookform/resolvers/zod";import{useSetAtom as Zh}from"jotai";import{useRef as qh,useEffect as jh}from"react";import{useForm as Gh}from"react-hook-form";import{z as Ys}from"zod";import{jsx as To,jsxs as Ad}from"react/jsx-runtime";var Kh=Ys.object({href:Ys.string(),openInNewTab:Ys.boolean().default(!1)}),Id=s(({editor:e,mark:t,pendingLink:r})=>{var u,d;let o=Zh(Vi),n=qh(null),i=Gh({resolver:_h(Kh),defaultValues:{href:(t==null?void 0:t.attrs.href)||"",openInNewTab:(t==null?void 0:t.attrs.target)==="_blank"||!1}});jh(()=>{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)||{},c=tr(l),a=s(async p=>{let f=p.href.trim();if(!f){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:f,target:p.openInNewTab?"_blank":null}).run()),e==null||e.commands.setTextSelection((r==null?void 0:r.to)||0),o(null)},"updateLink");return Ad(at,{...i,children:[To("p",{className:"courier-font-medium courier-mb-4",children:"Link"}),To("div",{className:"courier-space-y-4",children:To(Z,{control:i.control,name:"href",render:({field:p})=>Ad(U,{children:[To(Wt,{children:"URL"}),To($,{children:To(Lt,{as:"Textarea",autoResize:!0,...p,variables:c,ref:f=>{typeof p.ref=="function"&&p.ref(f),n.current=f},onKeyDown:f=>{f.key==="Enter"&&(f.preventDefault(),f.stopPropagation(),i.handleSubmit(a)())},onBlur:()=>{p.onBlur(),i.handleSubmit(a)()}})}),To(K,{})]})})})]})},"LinkForm");import{Node as Jh,mergeAttributes as Xh}from"@tiptap/core";var Ld=Jh.create({name:"paragraph",priority:1e3,addOptions(){return{HTMLAttributes:{}}},group:"block",content:"inline*",parseHTML(){return[{tag:"p"}]},renderHTML({HTMLAttributes:e}){return["p",Xh(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 i5,ReactNodeViewRenderer as a5}from"@tiptap/react";import{TextSelection as s5,Plugin as l5,PluginKey as c5}from"prosemirror-state";var Wr={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:"'"},ca={48:")",49:"!",50:"@",51:"#",52:"$",53:"%",54:"^",55:"&",56:"*",57:"(",59:":",61:"+",173:"_",186:":",187:"+",188:"<",189:"_",190:">",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"'},Yh=typeof navigator!="undefined"&&/Mac/.test(navigator.platform),Qh=typeof navigator!="undefined"&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);for(He=0;He<10;He++)Wr[48+He]=Wr[96+He]=String(He);var He;for(He=1;He<=24;He++)Wr[He+111]="F"+He;var He;for(He=65;He<=90;He++)Wr[He]=String.fromCharCode(He+32),ca[He]=String.fromCharCode(He);var He;for(la in Wr)ca.hasOwnProperty(la)||(ca[la]=Wr[la]);var la;function Rd(e){var t=Yh&&e.metaKey&&e.shiftKey&&!e.ctrlKey&&!e.altKey||Qh&&e.shiftKey&&e.key&&e.key.length==1||e.key=="Unidentified",r=!t&&e.key||(e.shiftKey?ca:Wr)[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(Rd,"keyName");import{Plugin as e5}from"prosemirror-state";var t5=typeof navigator!="undefined"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):!1;function r5(e){let t=e.split(/-(?!$)/),r=t[t.length-1];r=="Space"&&(r=" ");let o,n,i,l;for(let c=0;c<t.length-1;c++){let a=t[c];if(/^(cmd|meta|m)$/i.test(a))l=!0;else if(/^a(lt)?$/i.test(a))o=!0;else if(/^(c|ctrl|control)$/i.test(a))n=!0;else if(/^s(hift)?$/i.test(a))i=!0;else if(/^mod$/i.test(a))t5?l=!0:n=!0;else throw new Error("Unrecognized modifier name: "+a)}return o&&(r="Alt-"+r),n&&(r="Ctrl-"+r),l&&(r="Meta-"+r),i&&(r="Shift-"+r),r}s(r5,"normalizeKeyName");function o5(e){let t=Object.create(null);for(let r in e)t[r5(r)]=e[r];return t}s(o5,"normalize");function Qs(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(Qs,"modifiers");function Sd(e){return new e5({props:{handleKeyDown:n5(e)}})}s(Sd,"keymap");function n5(e){let t=o5(e);return function(r,o){let n=Rd(o),i,l=t[Qs(n,o)];if(l&&l(r.state,r.dispatch,r))return!0;if(n.length==1&&n!=" "){if(o.shiftKey){let c=t[Qs(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=Wr[o.keyCode])&&i!=n){let c=t[Qs(i,o)];if(c&&c(r.state,r.dispatch,r))return!0}}return!1}}s(n5,"keydownHandler");import{v4 as u5}from"uuid";var el=Ld.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),HTMLAttributes:{class:""}}},onCreate(){Pt(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-${u5()}`;e.setNodeMarkup(o,void 0,{...r.attrs,id:n}),t=!0}return!0}),t&&this.editor.view.dispatch(e)},addAttributes(){return{paddingVertical:{default:re.paddingVertical,parseHTML:e=>e.style.paddingTop?parseInt(e.style.paddingTop):re.paddingVertical,renderHTML:e=>({"data-padding-vertical":e.paddingVertical})},paddingHorizontal:{default:re.paddingHorizontal,parseHTML:e=>e.style.paddingLeft?parseInt(e.style.paddingLeft):re.paddingHorizontal,renderHTML:e=>({"data-padding-horizontal":e.paddingHorizontal})},textAlign:{default:re.textAlign,parseHTML:e=>e.style.textAlign||re.textAlign,renderHTML:e=>({"data-text-align":e.textAlign})},backgroundColor:{default:re.backgroundColor,parseHTML:e=>e.style.backgroundColor||re.backgroundColor,renderHTML:e=>({"data-background-color":e.backgroundColor})},borderWidth:{default:re.borderWidth,parseHTML:e=>e.style.borderWidth?parseInt(e.style.borderWidth):re.borderWidth,renderHTML:e=>({"data-border-width":e.borderWidth})},borderRadius:{default:re.borderRadius,parseHTML:e=>e.style.borderRadius?parseInt(e.style.borderRadius):re.borderRadius,renderHTML:e=>({"data-border-radius":e.borderRadius})},borderColor:{default:re.borderColor,parseHTML:e=>e.style.borderColor||re.borderColor,renderHTML:e=>({"data-border-color":e.borderColor})},textColor:{default:re.textColor,parseHTML:e=>e.style.color||re.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",i5(this.options.HTMLAttributes,e,{"data-type":"paragraph"}),0]},addNodeView(){return a5(na)},addProseMirrorPlugins(){return[Sd({"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(s5.create(t.doc,i,l)),!0}return!1}}),new l5({key:new c5("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,c=l.depth,a=null;for(;c>0;){let u=l.node(c);if(u.type.name==="paragraph"||u.type.name==="heading"){a=u;break}c--}if(a){let u=a.textContent,d=l.parentOffset===0,p=l.parentOffset===u.length,f=u.length===0,h=t.key==="Delete"||t.keyCode===46||t.code==="Delete";if(o||f||!h&&d||h&&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,l=n.depth,c=null;for(;l>0;){let d=n.node(l);if(d.type.name==="paragraph"||d.type.name==="heading"){c=d;break}l--}if(!c)return!1;let a=r?n.pos===i.pos&&n.parentOffset===0:n.pos===i.pos&&n.parentOffset===c.textContent.length,u=c.textContent.length===0;return a||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 d5}from"@tiptap/core";import{Plugin as p5,PluginKey as m5}from"@tiptap/pm/state";var f5=new m5("selection"),tl=d5.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 p5({key:f5,props:{handleClick:(e,t,r)=>{var c;let{state:o}=e;if(!this.editor.isEditable)return!1;try{let a=window.getSelection();if(a&&a.rangeCount>0){let d=a.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),f=o.doc.resolve(p);if(((c=f.node(1))==null?void 0:c.type.name)==="blockquote")return this.options.setSelectedNode(f.node(1)),this.editor.commands.updateSelectionState(f.node(1)),!0;let h=f.node();if(h&&["paragraph","heading","blockquote"].includes(h.type.name))return this.options.setSelectedNode(h),this.editor.commands.updateSelectionState(h),!0}}}catch(a){console.error("Error handling click:",a)}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 Ae="top",Oe="bottom",De="right",Re="left",ua="auto",Qr=[Ae,Oe,De,Re],zr="start",wo="end",Bd="clippingParents",da="viewport",ln="popper",Hd="reference",rl=Qr.reduce(function(e,t){return e.concat([t+"-"+zr,t+"-"+wo])},[]),pa=[].concat(Qr,[ua]).reduce(function(e,t){return e.concat([t,t+"-"+zr,t+"-"+wo])},[]),g5="beforeRead",h5="read",b5="afterRead",y5="beforeMain",v5="main",x5="afterMain",C5="beforeWrite",T5="write",w5="afterWrite",Dd=[g5,h5,b5,y5,v5,x5,C5,T5,w5];function qe(e){return e?(e.nodeName||"").toLowerCase():null}s(qe,"getNodeName");function Ee(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}s(Ee,"getWindow");function $t(e){var t=Ee(e).Element;return e instanceof t||e instanceof Element}s($t,"isElement");function We(e){var t=Ee(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}s(We,"isHTMLElement");function cn(e){if(typeof ShadowRoot=="undefined")return!1;var t=Ee(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}s(cn,"isShadowRoot");function P5(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];!We(i)||!qe(i)||(Object.assign(i.style,o),Object.keys(n).forEach(function(l){var c=n[l];c===!1?i.removeAttribute(l):i.setAttribute(l,c===!0?"":c)}))})}s(P5,"applyStyles");function k5(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]),c=l.reduce(function(a,u){return a[u]="",a},{});!We(n)||!qe(n)||(Object.assign(n.style,c),Object.keys(i).forEach(function(a){n.removeAttribute(a)}))})}}s(k5,"effect");var Qn={name:"applyStyles",enabled:!0,phase:"write",fn:P5,effect:k5,requires:["computeStyles"]};function je(e){return e.split("-")[0]}s(je,"getBasePlacement");var sr=Math.max,Po=Math.min,Ur=Math.round;function un(){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(un,"getUAString");function ei(){return!/^((?!chrome|android).)*safari/i.test(un())}s(ei,"isLayoutViewport");function _t(e,t,r){t===void 0&&(t=!1),r===void 0&&(r=!1);var o=e.getBoundingClientRect(),n=1,i=1;t&&We(e)&&(n=e.offsetWidth>0&&Ur(o.width)/e.offsetWidth||1,i=e.offsetHeight>0&&Ur(o.height)/e.offsetHeight||1);var l=$t(e)?Ee(e):window,c=l.visualViewport,a=!ei()&&r,u=(o.left+(a&&c?c.offsetLeft:0))/n,d=(o.top+(a&&c?c.offsetTop:0))/i,p=o.width/n,f=o.height/i;return{width:p,height:f,top:d,right:u+p,bottom:d+f,left:u,x:u,y:d}}s(_t,"getBoundingClientRect");function ko(e){var t=_t(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(ko,"getLayoutRect");function ti(e,t){var r=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(r&&cn(r)){var o=t;do{if(o&&e.isSameNode(o))return!0;o=o.parentNode||o.host}while(o)}return!1}s(ti,"contains");function ft(e){return Ee(e).getComputedStyle(e)}s(ft,"getComputedStyle");function ol(e){return["table","td","th"].indexOf(qe(e))>=0}s(ol,"isTableElement");function Qe(e){return(($t(e)?e.ownerDocument:e.document)||window.document).documentElement}s(Qe,"getDocumentElement");function $r(e){return qe(e)==="html"?e:e.assignedSlot||e.parentNode||(cn(e)?e.host:null)||Qe(e)}s($r,"getParentNode");function Fd(e){return!We(e)||ft(e).position==="fixed"?null:e.offsetParent}s(Fd,"getTrueOffsetParent");function E5(e){var t=/firefox/i.test(un()),r=/Trident/i.test(un());if(r&&We(e)){var o=ft(e);if(o.position==="fixed")return null}var n=$r(e);for(cn(n)&&(n=n.host);We(n)&&["html","body"].indexOf(qe(n))<0;){var i=ft(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(E5,"getContainingBlock");function lr(e){for(var t=Ee(e),r=Fd(e);r&&ol(r)&&ft(r).position==="static";)r=Fd(r);return r&&(qe(r)==="html"||qe(r)==="body"&&ft(r).position==="static")?t:r||E5(e)||t}s(lr,"getOffsetParent");function Eo(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}s(Eo,"getMainAxisFromPlacement");function No(e,t,r){return sr(e,Po(t,r))}s(No,"within");function Vd(e,t,r){var o=No(e,t,r);return o>r?r:o}s(Vd,"withinMaxClamp");function ri(){return{top:0,right:0,bottom:0,left:0}}s(ri,"getFreshSideObject");function oi(e){return Object.assign({},ri(),e)}s(oi,"mergePaddingObject");function ni(e,t){return t.reduce(function(r,o){return r[o]=e,r},{})}s(ni,"expandToHashMap");var N5=s(function(t,r){return t=typeof t=="function"?t(Object.assign({},r.rects,{placement:r.placement})):t,oi(typeof t!="number"?t:ni(t,Qr))},"toPaddingObject");function M5(e){var t,r=e.state,o=e.name,n=e.options,i=r.elements.arrow,l=r.modifiersData.popperOffsets,c=je(r.placement),a=Eo(c),u=[Re,De].indexOf(c)>=0,d=u?"height":"width";if(!(!i||!l)){var p=N5(n.padding,r),f=ko(i),h=a==="y"?Ae:Re,g=a==="y"?Oe:De,b=r.rects.reference[d]+r.rects.reference[a]-l[a]-r.rects.popper[d],y=l[a]-r.rects.reference[a],w=lr(i),N=w?a==="y"?w.clientHeight||0:w.clientWidth||0:0,v=b/2-y/2,m=p[h],x=N-f[d]-p[g],k=N/2-f[d]/2+v,B=No(m,k,x),R=a;r.modifiersData[o]=(t={},t[R]=B,t.centerOffset=B-k,t)}}s(M5,"arrow");function A5(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)||ti(t.elements.popper,n)&&(t.elements.arrow=n))}s(A5,"effect");var Od={name:"arrow",enabled:!0,phase:"main",fn:M5,effect:A5,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function Zt(e){return e.split("-")[1]}s(Zt,"getVariation");var I5={top:"auto",right:"auto",bottom:"auto",left:"auto"};function L5(e,t){var r=e.x,o=e.y,n=t.devicePixelRatio||1;return{x:Ur(r*n)/n||0,y:Ur(o*n)/n||0}}s(L5,"roundOffsetsByDPR");function Wd(e){var t,r=e.popper,o=e.popperRect,n=e.placement,i=e.variation,l=e.offsets,c=e.position,a=e.gpuAcceleration,u=e.adaptive,d=e.roundOffsets,p=e.isFixed,f=l.x,h=f===void 0?0:f,g=l.y,b=g===void 0?0:g,y=typeof d=="function"?d({x:h,y:b}):{x:h,y:b};h=y.x,b=y.y;var w=l.hasOwnProperty("x"),N=l.hasOwnProperty("y"),v=Re,m=Ae,x=window;if(u){var k=lr(r),B="clientHeight",R="clientWidth";if(k===Ee(r)&&(k=Qe(r),ft(k).position!=="static"&&c==="absolute"&&(B="scrollHeight",R="scrollWidth")),k=k,n===Ae||(n===Re||n===De)&&i===wo){m=Oe;var C=p&&k===x&&x.visualViewport?x.visualViewport.height:k[B];b-=C-o.height,b*=a?1:-1}if(n===Re||(n===Ae||n===Oe)&&i===wo){v=De;var E=p&&k===x&&x.visualViewport?x.visualViewport.width:k[R];h-=E-o.width,h*=a?1:-1}}var P=Object.assign({position:c},u&&I5),T=d===!0?L5({x:h,y:b},Ee(r)):{x:h,y:b};if(h=T.x,b=T.y,a){var I;return Object.assign({},P,(I={},I[m]=N?"0":"",I[v]=w?"0":"",I.transform=(x.devicePixelRatio||1)<=1?"translate("+h+"px, "+b+"px)":"translate3d("+h+"px, "+b+"px, 0)",I))}return Object.assign({},P,(t={},t[m]=N?b+"px":"",t[v]=w?h+"px":"",t.transform="",t))}s(Wd,"mapToStyles");function R5(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,c=r.roundOffsets,a=c===void 0?!0:c,u={placement:je(t.placement),variation:Zt(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,Wd(Object.assign({},u,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:l,roundOffsets:a})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,Wd(Object.assign({},u,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:a})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}s(R5,"computeStyles");var zd={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:R5,data:{}};var ma={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,c=l===void 0?!0:l,a=Ee(t.elements.popper),u=[].concat(t.scrollParents.reference,t.scrollParents.popper);return i&&u.forEach(function(d){d.addEventListener("scroll",r.update,ma)}),c&&a.addEventListener("resize",r.update,ma),function(){i&&u.forEach(function(d){d.removeEventListener("scroll",r.update,ma)}),c&&a.removeEventListener("resize",r.update,ma)}}s(S5,"effect");var Ud={name:"eventListeners",enabled:!0,phase:"write",fn:s(function(){},"fn"),effect:S5,data:{}};var B5={left:"right",right:"left",bottom:"top",top:"bottom"};function dn(e){return e.replace(/left|right|bottom|top/g,function(t){return B5[t]})}s(dn,"getOppositePlacement");var H5={start:"end",end:"start"};function fa(e){return e.replace(/start|end/g,function(t){return H5[t]})}s(fa,"getOppositeVariationPlacement");function Mo(e){var t=Ee(e),r=t.pageXOffset,o=t.pageYOffset;return{scrollLeft:r,scrollTop:o}}s(Mo,"getWindowScroll");function Ao(e){return _t(Qe(e)).left+Mo(e).scrollLeft}s(Ao,"getWindowScrollBarX");function nl(e,t){var r=Ee(e),o=Qe(e),n=r.visualViewport,i=o.clientWidth,l=o.clientHeight,c=0,a=0;if(n){i=n.width,l=n.height;var u=ei();(u||!u&&t==="fixed")&&(c=n.offsetLeft,a=n.offsetTop)}return{width:i,height:l,x:c+Ao(e),y:a}}s(nl,"getViewportRect");function il(e){var t,r=Qe(e),o=Mo(e),n=(t=e.ownerDocument)==null?void 0:t.body,i=sr(r.scrollWidth,r.clientWidth,n?n.scrollWidth:0,n?n.clientWidth:0),l=sr(r.scrollHeight,r.clientHeight,n?n.scrollHeight:0,n?n.clientHeight:0),c=-o.scrollLeft+Ao(e),a=-o.scrollTop;return ft(n||r).direction==="rtl"&&(c+=sr(r.clientWidth,n?n.clientWidth:0)-i),{width:i,height:l,x:c,y:a}}s(il,"getDocumentRect");function Io(e){var t=ft(e),r=t.overflow,o=t.overflowX,n=t.overflowY;return/auto|scroll|overlay|hidden/.test(r+n+o)}s(Io,"isScrollParent");function ga(e){return["html","body","#document"].indexOf(qe(e))>=0?e.ownerDocument.body:We(e)&&Io(e)?e:ga($r(e))}s(ga,"getScrollParent");function eo(e,t){var r;t===void 0&&(t=[]);var o=ga(e),n=o===((r=e.ownerDocument)==null?void 0:r.body),i=Ee(o),l=n?[i].concat(i.visualViewport||[],Io(o)?o:[]):o,c=t.concat(l);return n?c:c.concat(eo($r(l)))}s(eo,"listScrollParents");function pn(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}s(pn,"rectToClientRect");function D5(e,t){var r=_t(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(D5,"getInnerBoundingClientRect");function $d(e,t,r){return t===da?pn(nl(e,r)):$t(t)?D5(t,r):pn(il(Qe(e)))}s($d,"getClientRectFromMixedType");function F5(e){var t=eo($r(e)),r=["absolute","fixed"].indexOf(ft(e).position)>=0,o=r&&We(e)?lr(e):e;return $t(o)?t.filter(function(n){return $t(n)&&ti(n,o)&&qe(n)!=="body"}):[]}s(F5,"getClippingParents");function al(e,t,r,o){var n=t==="clippingParents"?F5(e):[].concat(t),i=[].concat(n,[r]),l=i[0],c=i.reduce(function(a,u){var d=$d(e,u,o);return a.top=sr(d.top,a.top),a.right=Po(d.right,a.right),a.bottom=Po(d.bottom,a.bottom),a.left=sr(d.left,a.left),a},$d(e,l,o));return c.width=c.right-c.left,c.height=c.bottom-c.top,c.x=c.left,c.y=c.top,c}s(al,"getClippingRect");function ii(e){var t=e.reference,r=e.element,o=e.placement,n=o?je(o):null,i=o?Zt(o):null,l=t.x+t.width/2-r.width/2,c=t.y+t.height/2-r.height/2,a;switch(n){case Ae:a={x:l,y:t.y-r.height};break;case Oe:a={x:l,y:t.y+t.height};break;case De:a={x:t.x+t.width,y:c};break;case Re:a={x:t.x-r.width,y:c};break;default:a={x:t.x,y:t.y}}var u=n?Eo(n):null;if(u!=null){var d=u==="y"?"height":"width";switch(i){case zr:a[u]=a[u]-(t[d]/2-r[d]/2);break;case wo:a[u]=a[u]+(t[d]/2-r[d]/2);break;default:}}return a}s(ii,"computeOffsets");function cr(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,c=r.boundary,a=c===void 0?Bd:c,u=r.rootBoundary,d=u===void 0?da:u,p=r.elementContext,f=p===void 0?ln:p,h=r.altBoundary,g=h===void 0?!1:h,b=r.padding,y=b===void 0?0:b,w=oi(typeof y!="number"?y:ni(y,Qr)),N=f===ln?Hd:ln,v=e.rects.popper,m=e.elements[g?N:f],x=al($t(m)?m:m.contextElement||Qe(e.elements.popper),a,d,l),k=_t(e.elements.reference),B=ii({reference:k,element:v,strategy:"absolute",placement:n}),R=pn(Object.assign({},v,B)),C=f===ln?R:k,E={top:x.top-C.top+w.top,bottom:C.bottom-x.bottom+w.bottom,left:x.left-C.left+w.left,right:C.right-x.right+w.right},P=e.modifiersData.offset;if(f===ln&&P){var T=P[n];Object.keys(E).forEach(function(I){var H=[De,Oe].indexOf(I)>=0?1:-1,V=[Ae,Oe].indexOf(I)>=0?"y":"x";E[I]+=T[V]*H})}return E}s(cr,"detectOverflow");function sl(e,t){t===void 0&&(t={});var r=t,o=r.placement,n=r.boundary,i=r.rootBoundary,l=r.padding,c=r.flipVariations,a=r.allowedAutoPlacements,u=a===void 0?pa:a,d=Zt(o),p=d?c?rl:rl.filter(function(g){return Zt(g)===d}):Qr,f=p.filter(function(g){return u.indexOf(g)>=0});f.length===0&&(f=p);var h=f.reduce(function(g,b){return g[b]=cr(e,{placement:b,boundary:n,rootBoundary:i,padding:l})[je(b)],g},{});return Object.keys(h).sort(function(g,b){return h[g]-h[b]})}s(sl,"computeAutoPlacement");function V5(e){if(je(e)===ua)return[];var t=dn(e);return[fa(e),t,fa(t)]}s(V5,"getExpandedFallbackPlacements");function O5(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,c=l===void 0?!0:l,a=r.fallbackPlacements,u=r.padding,d=r.boundary,p=r.rootBoundary,f=r.altBoundary,h=r.flipVariations,g=h===void 0?!0:h,b=r.allowedAutoPlacements,y=t.options.placement,w=je(y),N=w===y,v=a||(N||!g?[dn(y)]:V5(y)),m=[y].concat(v).reduce(function(O,oe){return O.concat(je(oe)===ua?sl(t,{placement:oe,boundary:d,rootBoundary:p,padding:u,flipVariations:g,allowedAutoPlacements:b}):oe)},[]),x=t.rects.reference,k=t.rects.popper,B=new Map,R=!0,C=m[0],E=0;E<m.length;E++){var P=m[E],T=je(P),I=Zt(P)===zr,H=[Ae,Oe].indexOf(T)>=0,V=H?"width":"height",D=cr(t,{placement:P,boundary:d,rootBoundary:p,altBoundary:f,padding:u}),z=H?I?De:Re:I?Oe:Ae;x[V]>k[V]&&(z=dn(z));var X=dn(z),G=[];if(i&&G.push(D[T]<=0),c&&G.push(D[z]<=0,D[X]<=0),G.every(function(O){return O})){C=P,R=!1;break}B.set(P,G)}if(R)for(var ye=g?3:1,Ne=s(function(oe){var ue=m.find(function(Me){var Se=B.get(Me);if(Se)return Se.slice(0,oe).every(function(ht){return ht})});if(ue)return C=ue,"break"},"_loop"),de=ye;de>0;de--){var Ce=Ne(de);if(Ce==="break")break}t.placement!==C&&(t.modifiersData[o]._skip=!0,t.placement=C,t.reset=!0)}}s(O5,"flip");var _d={name:"flip",enabled:!0,phase:"main",fn:O5,requiresIfExists:["offset"],data:{_skip:!1}};function Zd(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(Zd,"getSideOffsets");function qd(e){return[Ae,De,Oe,Re].some(function(t){return e[t]>=0})}s(qd,"isAnySideFullyClipped");function W5(e){var t=e.state,r=e.name,o=t.rects.reference,n=t.rects.popper,i=t.modifiersData.preventOverflow,l=cr(t,{elementContext:"reference"}),c=cr(t,{altBoundary:!0}),a=Zd(l,o),u=Zd(c,n,i),d=qd(a),p=qd(u);t.modifiersData[r]={referenceClippingOffsets:a,popperEscapeOffsets:u,isReferenceHidden:d,hasPopperEscaped:p},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":d,"data-popper-escaped":p})}s(W5,"hide");var jd={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:W5};function z5(e,t,r){var o=je(e),n=[Re,Ae].indexOf(o)>=0?-1:1,i=typeof r=="function"?r(Object.assign({},t,{placement:e})):r,l=i[0],c=i[1];return l=l||0,c=(c||0)*n,[Re,De].indexOf(o)>=0?{x:c,y:l}:{x:l,y:c}}s(z5,"distanceAndSkiddingToXY");function U5(e){var t=e.state,r=e.options,o=e.name,n=r.offset,i=n===void 0?[0,0]:n,l=pa.reduce(function(d,p){return d[p]=z5(p,t.rects,i),d},{}),c=l[t.placement],a=c.x,u=c.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=a,t.modifiersData.popperOffsets.y+=u),t.modifiersData[o]=l}s(U5,"offset");var Gd={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:U5};function $5(e){var t=e.state,r=e.name;t.modifiersData[r]=ii({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})}s($5,"popperOffsets");var Kd={name:"popperOffsets",enabled:!0,phase:"read",fn:$5,data:{}};function ll(e){return e==="x"?"y":"x"}s(ll,"getAltAxis");function _5(e){var t=e.state,r=e.options,o=e.name,n=r.mainAxis,i=n===void 0?!0:n,l=r.altAxis,c=l===void 0?!1:l,a=r.boundary,u=r.rootBoundary,d=r.altBoundary,p=r.padding,f=r.tether,h=f===void 0?!0:f,g=r.tetherOffset,b=g===void 0?0:g,y=cr(t,{boundary:a,rootBoundary:u,padding:p,altBoundary:d}),w=je(t.placement),N=Zt(t.placement),v=!N,m=Eo(w),x=ll(m),k=t.modifiersData.popperOffsets,B=t.rects.reference,R=t.rects.popper,C=typeof b=="function"?b(Object.assign({},t.rects,{placement:t.placement})):b,E=typeof C=="number"?{mainAxis:C,altAxis:C}:Object.assign({mainAxis:0,altAxis:0},C),P=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,T={x:0,y:0};if(k){if(i){var I,H=m==="y"?Ae:Re,V=m==="y"?Oe:De,D=m==="y"?"height":"width",z=k[m],X=z+y[H],G=z-y[V],ye=h?-R[D]/2:0,Ne=N===zr?B[D]:R[D],de=N===zr?-R[D]:-B[D],Ce=t.elements.arrow,O=h&&Ce?ko(Ce):{width:0,height:0},oe=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:ri(),ue=oe[H],Me=oe[V],Se=No(0,B[D],O[D]),ht=v?B[D]/2-ye-Se-ue-E.mainAxis:Ne-Se-ue-E.mainAxis,Ge=v?-B[D]/2+ye+Se+Me+E.mainAxis:de+Se+Me+E.mainAxis,Fe=t.elements.arrow&&lr(t.elements.arrow),St=Fe?m==="y"?Fe.clientTop||0:Fe.clientLeft||0:0,ot=(I=P==null?void 0:P[m])!=null?I:0,Bt=z+ht-ot-St,Ht=z+Ge-ot,Nt=No(h?Po(X,Bt):X,z,h?sr(G,Ht):G);k[m]=Nt,T[m]=Nt-z}if(c){var Ke,Dt=m==="x"?Ae:Re,Ft=m==="x"?Oe:De,Je=k[x],Xe=x==="y"?"height":"width",L=Je+y[Dt],Q=Je-y[Ft],F=[Ae,Re].indexOf(w)!==-1,ie=(Ke=P==null?void 0:P[x])!=null?Ke:0,te=F?L:Je-B[Xe]-R[Xe]-ie+E.altAxis,me=F?Je+B[Xe]+R[Xe]-ie-E.altAxis:Q,ge=h&&F?Vd(te,Je,me):No(h?te:L,Je,h?me:Q);k[x]=ge,T[x]=ge-Je}t.modifiersData[o]=T}}s(_5,"preventOverflow");var Jd={name:"preventOverflow",enabled:!0,phase:"main",fn:_5,requiresIfExists:["offset"]};function cl(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}s(cl,"getHTMLElementScroll");function ul(e){return e===Ee(e)||!We(e)?Mo(e):cl(e)}s(ul,"getNodeScroll");function Z5(e){var t=e.getBoundingClientRect(),r=Ur(t.width)/e.offsetWidth||1,o=Ur(t.height)/e.offsetHeight||1;return r!==1||o!==1}s(Z5,"isElementScaled");function dl(e,t,r){r===void 0&&(r=!1);var o=We(t),n=We(t)&&Z5(t),i=Qe(t),l=_t(e,n,r),c={scrollLeft:0,scrollTop:0},a={x:0,y:0};return(o||!o&&!r)&&((qe(t)!=="body"||Io(i))&&(c=ul(t)),We(t)?(a=_t(t,!0),a.x+=t.clientLeft,a.y+=t.clientTop):i&&(a.x=Ao(i))),{x:l.left+c.scrollLeft-a.x,y:l.top+c.scrollTop-a.y,width:l.width,height:l.height}}s(dl,"getCompositeRect");function q5(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(c){if(!r.has(c)){var a=t.get(c);a&&n(a)}}),o.push(i)}return s(n,"sort"),e.forEach(function(i){r.has(i.name)||n(i)}),o}s(q5,"order");function pl(e){var t=q5(e);return Dd.reduce(function(r,o){return r.concat(t.filter(function(n){return n.phase===o}))},[])}s(pl,"orderModifiers");function ml(e){var t;return function(){return t||(t=new Promise(function(r){Promise.resolve().then(function(){t=void 0,r(e())})})),t}}s(ml,"debounce");function fl(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(fl,"mergeByName");var Xd={placement:"bottom",modifiers:[],strategy:"absolute"};function Yd(){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(Yd,"areValidElements");function Qd(e){e===void 0&&(e={});var t=e,r=t.defaultModifiers,o=r===void 0?[]:r,n=t.defaultOptions,i=n===void 0?Xd:n;return s(function(c,a,u){u===void 0&&(u=i);var d={placement:"bottom",orderedModifiers:[],options:Object.assign({},Xd,i),modifiersData:{},elements:{reference:c,popper:a},attributes:{},styles:{}},p=[],f=!1,h={state:d,setOptions:s(function(w){var N=typeof w=="function"?w(d.options):w;b(),d.options=Object.assign({},i,d.options,N),d.scrollParents={reference:$t(c)?eo(c):c.contextElement?eo(c.contextElement):[],popper:eo(a)};var v=pl(fl([].concat(o,d.options.modifiers)));return d.orderedModifiers=v.filter(function(m){return m.enabled}),g(),h.update()},"setOptions"),forceUpdate:s(function(){if(!f){var w=d.elements,N=w.reference,v=w.popper;if(Yd(N,v)){d.rects={reference:dl(N,lr(v),d.options.strategy==="fixed"),popper:ko(v)},d.reset=!1,d.placement=d.options.placement,d.orderedModifiers.forEach(function(E){return d.modifiersData[E.name]=Object.assign({},E.data)});for(var m=0;m<d.orderedModifiers.length;m++){if(d.reset===!0){d.reset=!1,m=-1;continue}var x=d.orderedModifiers[m],k=x.fn,B=x.options,R=B===void 0?{}:B,C=x.name;typeof k=="function"&&(d=k({state:d,options:R,name:C,instance:h})||d)}}}},"forceUpdate"),update:ml(function(){return new Promise(function(y){h.forceUpdate(),y(d)})}),destroy:s(function(){b(),f=!0},"destroy")};if(!Yd(c,a))return h;h.setOptions(u).then(function(y){!f&&u.onFirstUpdate&&u.onFirstUpdate(y)});function g(){d.orderedModifiers.forEach(function(y){var w=y.name,N=y.options,v=N===void 0?{}:N,m=y.effect;if(typeof m=="function"){var x=m({state:d,name:w,instance:h,options:v}),k=s(function(){},"noopFn");p.push(x||k)}})}s(g,"runModifierEffects");function b(){p.forEach(function(y){return y()}),p=[]}return s(b,"cleanupModifierEffects"),h},"createPopper")}s(Qd,"popperGenerator");var j5=[Ud,Kd,zd,Qn,Gd,_d,Jd,Od,jd],gl=Qd({defaultModifiers:j5});var G5="tippy-box",cp="tippy-content",K5="tippy-backdrop",up="tippy-arrow",dp="tippy-svg-arrow",Lo={passive:!0,capture:!0},pp=s(function(){return document.body},"TIPPY_DEFAULT_APPEND_TO");function hl(e,t,r){if(Array.isArray(e)){var o=e[t];return o==null?Array.isArray(r)?r[t]:r:o}return e}s(hl,"getValueAtIndexOrReturn");function Tl(e,t){var r={}.toString.call(e);return r.indexOf("[object")===0&&r.indexOf(t+"]")>-1}s(Tl,"isType");function mp(e,t){return typeof e=="function"?e.apply(void 0,t):e}s(mp,"invokeWithArgsOrReturn");function ep(e,t){if(t===0)return e;var r;return function(o){clearTimeout(r),r=setTimeout(function(){e(o)},t)}}s(ep,"debounce");function J5(e){return e.split(/\s+/).filter(Boolean)}s(J5,"splitBySpaces");function mn(e){return[].concat(e)}s(mn,"normalizeToArray");function tp(e,t){e.indexOf(t)===-1&&e.push(t)}s(tp,"pushIfUnique");function X5(e){return e.filter(function(t,r){return e.indexOf(t)===r})}s(X5,"unique");function Y5(e){return e.split("-")[0]}s(Y5,"getBasePlacement");function ba(e){return[].slice.call(e)}s(ba,"arrayFrom");function rp(e){return Object.keys(e).reduce(function(t,r){return e[r]!==void 0&&(t[r]=e[r]),t},{})}s(rp,"removeUndefinedProps");function ai(){return document.createElement("div")}s(ai,"div");function ya(e){return["Element","Fragment"].some(function(t){return Tl(e,t)})}s(ya,"isElement");function Q5(e){return Tl(e,"NodeList")}s(Q5,"isNodeList");function eb(e){return Tl(e,"MouseEvent")}s(eb,"isMouseEvent");function tb(e){return!!(e&&e._tippy&&e._tippy.reference===e)}s(tb,"isReferenceElement");function rb(e){return ya(e)?[e]:Q5(e)?ba(e):Array.isArray(e)?e:ba(document.querySelectorAll(e))}s(rb,"getArrayOfElements");function bl(e,t){e.forEach(function(r){r&&(r.style.transitionDuration=t+"ms")})}s(bl,"setTransitionDuration");function op(e,t){e.forEach(function(r){r&&r.setAttribute("data-state",t)})}s(op,"setVisibilityState");function ob(e){var t,r=mn(e),o=r[0];return o!=null&&(t=o.ownerDocument)!=null&&t.body?o.ownerDocument:document}s(ob,"getOwnerDocument");function nb(e,t){var r=t.clientX,o=t.clientY;return e.every(function(n){var i=n.popperRect,l=n.popperState,c=n.props,a=c.interactiveBorder,u=Y5(l.placement),d=l.modifiersData.offset;if(!d)return!0;var p=u==="bottom"?d.top.y:0,f=u==="top"?d.bottom.y:0,h=u==="right"?d.left.x:0,g=u==="left"?d.right.x:0,b=i.top-o+p>a,y=o-i.bottom-f>a,w=i.left-r+h>a,N=r-i.right-g>a;return b||y||w||N})}s(nb,"isCursorOutsideInteractiveBorder");function yl(e,t,r){var o=t+"EventListener";["transitionend","webkitTransitionEnd"].forEach(function(n){e[o](n,r)})}s(yl,"updateTransitionEndListener");function np(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(np,"actualContains");var Er={isTouch:!1},ip=0;function ib(){Er.isTouch||(Er.isTouch=!0,window.performance&&document.addEventListener("mousemove",fp))}s(ib,"onDocumentTouchStart");function fp(){var e=performance.now();e-ip<20&&(Er.isTouch=!1,document.removeEventListener("mousemove",fp)),ip=e}s(fp,"onDocumentMouseMove");function ab(){var e=document.activeElement;if(tb(e)){var t=e._tippy;e.blur&&!t.state.isVisible&&e.blur()}}s(ab,"onWindowBlur");function sb(){document.addEventListener("touchstart",ib,Lo),window.addEventListener("blur",ab)}s(sb,"bindGlobalEventListeners");var lb=typeof window!="undefined"&&typeof document!="undefined",cb=lb?!!window.msCrypto:!1;var ub={animateFill:!1,followCursor:!1,inlinePositioning:!1,sticky:!1},db={allowHTML:!1,animation:"fade",arrow:!0,content:"",inertia:!1,maxWidth:350,role:"tooltip",theme:"",zIndex:9999},ur=Object.assign({appendTo:pp,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},ub,db),pb=Object.keys(ur),mb=s(function(t){var r=Object.keys(t);r.forEach(function(o){ur[o]=t[o]})},"setDefaultProps");function gp(e){var t=e.plugins||[],r=t.reduce(function(o,n){var i=n.name,l=n.defaultValue;if(i){var c;o[i]=e[i]!==void 0?e[i]:(c=ur[i])!=null?c:l}return o},{});return Object.assign({},e,r)}s(gp,"getExtendedPassedProps");function fb(e,t){var r=t?Object.keys(gp(Object.assign({},ur,{plugins:t}))):pb,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}s(fb,"getDataAttributeProps");function ap(e,t){var r=Object.assign({},t,{content:mp(t.content,[e])},t.ignoreAttributes?{}:fb(e,t.plugins));return r.aria=Object.assign({},ur.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(ap,"evaluateProps");var gb=s(function(){return"innerHTML"},"innerHTML");function xl(e,t){e[gb()]=t}s(xl,"dangerouslySetInnerHTML");function sp(e){var t=ai();return e===!0?t.className=up:(t.className=dp,ya(e)?t.appendChild(e):xl(t,e)),t}s(sp,"createArrowElement");function lp(e,t){ya(t.content)?(xl(e,""),e.appendChild(t.content)):typeof t.content!="function"&&(t.allowHTML?xl(e,t.content):e.textContent=t.content)}s(lp,"setContent");function Cl(e){var t=e.firstElementChild,r=ba(t.children);return{box:t,content:r.find(function(o){return o.classList.contains(cp)}),arrow:r.find(function(o){return o.classList.contains(up)||o.classList.contains(dp)}),backdrop:r.find(function(o){return o.classList.contains(K5)})}}s(Cl,"getChildren");function hp(e){var t=ai(),r=ai();r.className=G5,r.setAttribute("data-state","hidden"),r.setAttribute("tabindex","-1");var o=ai();o.className=cp,o.setAttribute("data-state","hidden"),lp(o,e.props),t.appendChild(r),r.appendChild(o),n(e.props,e.props);function n(i,l){var c=Cl(t),a=c.box,u=c.content,d=c.arrow;l.theme?a.setAttribute("data-theme",l.theme):a.removeAttribute("data-theme"),typeof l.animation=="string"?a.setAttribute("data-animation",l.animation):a.removeAttribute("data-animation"),l.inertia?a.setAttribute("data-inertia",""):a.removeAttribute("data-inertia"),a.style.maxWidth=typeof l.maxWidth=="number"?l.maxWidth+"px":l.maxWidth,l.role?a.setAttribute("role",l.role):a.removeAttribute("role"),(i.content!==l.content||i.allowHTML!==l.allowHTML)&&lp(u,e.props),l.arrow?d?i.arrow!==l.arrow&&(a.removeChild(d),a.appendChild(sp(l.arrow))):a.appendChild(sp(l.arrow)):d&&a.removeChild(d)}return s(n,"onUpdate"),{popper:t,onUpdate:n}}s(hp,"render");hp.$$tippy=!0;var hb=1,ha=[],vl=[];function bb(e,t){var r=ap(e,Object.assign({},ur,gp(rp(t)))),o,n,i,l=!1,c=!1,a=!1,u=!1,d,p,f,h=[],g=ep(Bt,r.interactiveDebounce),b,y=hb++,w=null,N=X5(r.plugins),v={isEnabled:!0,isVisible:!1,isDestroyed:!1,isMounted:!1,isShown:!1},m={id:y,reference:e,popper:ai(),popperInstance:w,props:r,state:v,plugins:N,clearDelayTimeouts:te,setProps:me,setContent:ge,show:ve,hide:Ye,hideWithInteractivity:Ve,enable:F,disable:ie,unmount:Lr,destroy:io};if(!r.render)return m;var x=r.render(m),k=x.popper,B=x.onUpdate;k.setAttribute("data-tippy-root",""),k.id="tippy-"+m.id,m.popper=k,e._tippy=m,k._tippy=m;var R=N.map(function(A){return A.fn(m)}),C=e.hasAttribute("aria-expanded");return Fe(),ye(),z(),X("onCreate",[m]),r.showOnCreate&&L(),k.addEventListener("mouseenter",function(){m.props.interactive&&m.state.isVisible&&m.clearDelayTimeouts()}),k.addEventListener("mouseleave",function(){m.props.interactive&&m.props.trigger.indexOf("mouseenter")>=0&&H().addEventListener("mousemove",g)}),m;function E(){var A=m.props.touch;return Array.isArray(A)?A:[A,0]}s(E,"getNormalizedTouchSettings");function P(){return E()[0]==="hold"}s(P,"getIsCustomTouchBehavior");function T(){var A;return!!((A=m.props.render)!=null&&A.$$tippy)}s(T,"getIsDefaultRenderFn");function I(){return b||e}s(I,"getCurrentTarget");function H(){var A=I().parentNode;return A?ob(A):document}s(H,"getDocument");function V(){return Cl(k)}s(V,"getDefaultTemplateChildren");function D(A){return m.state.isMounted&&!m.state.isVisible||Er.isTouch||d&&d.type==="focus"?0:hl(m.props.delay,A?0:1,ur.delay)}s(D,"getDelay");function z(A){A===void 0&&(A=!1),k.style.pointerEvents=m.props.interactive&&!A?"":"none",k.style.zIndex=""+m.props.zIndex}s(z,"handleStyles");function X(A,S,W){if(W===void 0&&(W=!0),R.forEach(function(le){le[A]&&le[A].apply(le,S)}),W){var _;(_=m.props)[A].apply(_,S)}}s(X,"invokeHook");function G(){var A=m.props.aria;if(A.content){var S="aria-"+A.content,W=k.id,_=mn(m.props.triggerTarget||e);_.forEach(function(le){var ae=le.getAttribute(S);if(m.state.isVisible)le.setAttribute(S,ae?ae+" "+W:W);else{var pt=ae&&ae.replace(W,"").trim();pt?le.setAttribute(S,pt):le.removeAttribute(S)}})}}s(G,"handleAriaContentAttribute");function ye(){if(!(C||!m.props.aria.expanded)){var A=mn(m.props.triggerTarget||e);A.forEach(function(S){m.props.interactive?S.setAttribute("aria-expanded",m.state.isVisible&&S===I()?"true":"false"):S.removeAttribute("aria-expanded")})}}s(ye,"handleAriaExpandedAttribute");function Ne(){H().removeEventListener("mousemove",g),ha=ha.filter(function(A){return A!==g})}s(Ne,"cleanupInteractiveMouseListeners");function de(A){if(!(Er.isTouch&&(a||A.type==="mousedown"))){var S=A.composedPath&&A.composedPath()[0]||A.target;if(!(m.props.interactive&&np(k,S))){if(mn(m.props.triggerTarget||e).some(function(W){return np(W,S)})){if(Er.isTouch||m.state.isVisible&&m.props.trigger.indexOf("click")>=0)return}else X("onClickOutside",[m,A]);m.props.hideOnClick===!0&&(m.clearDelayTimeouts(),m.hide(),c=!0,setTimeout(function(){c=!1}),m.state.isMounted||ue())}}}s(de,"onDocumentPress");function Ce(){a=!0}s(Ce,"onTouchMove");function O(){a=!1}s(O,"onTouchStart");function oe(){var A=H();A.addEventListener("mousedown",de,!0),A.addEventListener("touchend",de,Lo),A.addEventListener("touchstart",O,Lo),A.addEventListener("touchmove",Ce,Lo)}s(oe,"addDocumentPress");function ue(){var A=H();A.removeEventListener("mousedown",de,!0),A.removeEventListener("touchend",de,Lo),A.removeEventListener("touchstart",O,Lo),A.removeEventListener("touchmove",Ce,Lo)}s(ue,"removeDocumentPress");function Me(A,S){ht(A,function(){!m.state.isVisible&&k.parentNode&&k.parentNode.contains(k)&&S()})}s(Me,"onTransitionedOut");function Se(A,S){ht(A,S)}s(Se,"onTransitionedIn");function ht(A,S){var W=V().box;function _(le){le.target===W&&(yl(W,"remove",_),S())}if(s(_,"listener"),A===0)return S();yl(W,"remove",p),yl(W,"add",_),p=_}s(ht,"onTransitionEnd");function Ge(A,S,W){W===void 0&&(W=!1);var _=mn(m.props.triggerTarget||e);_.forEach(function(le){le.addEventListener(A,S,W),h.push({node:le,eventType:A,handler:S,options:W})})}s(Ge,"on");function Fe(){P()&&(Ge("touchstart",ot,{passive:!0}),Ge("touchend",Ht,{passive:!0})),J5(m.props.trigger).forEach(function(A){if(A!=="manual")switch(Ge(A,ot),A){case"mouseenter":Ge("mouseleave",Ht);break;case"focus":Ge(cb?"focusout":"blur",Nt);break;case"focusin":Ge("focusout",Nt);break}})}s(Fe,"addListeners");function St(){h.forEach(function(A){var S=A.node,W=A.eventType,_=A.handler,le=A.options;S.removeEventListener(W,_,le)}),h=[]}s(St,"removeListeners");function ot(A){var S,W=!1;if(!(!m.state.isEnabled||Ke(A)||c)){var _=((S=d)==null?void 0:S.type)==="focus";d=A,b=A.currentTarget,ye(),!m.state.isVisible&&eb(A)&&ha.forEach(function(le){return le(A)}),A.type==="click"&&(m.props.trigger.indexOf("mouseenter")<0||l)&&m.props.hideOnClick!==!1&&m.state.isVisible?W=!0:L(A),A.type==="click"&&(l=!W),W&&!_&&Q(A)}}s(ot,"onTrigger");function Bt(A){var S=A.target,W=I().contains(S)||k.contains(S);if(!(A.type==="mousemove"&&W)){var _=Xe().concat(k).map(function(le){var ae,pt=le._tippy,Rr=(ae=pt.popperInstance)==null?void 0:ae.state;return Rr?{popperRect:le.getBoundingClientRect(),popperState:Rr,props:r}:null}).filter(Boolean);nb(_,A)&&(Ne(),Q(A))}}s(Bt,"onMouseMove");function Ht(A){var S=Ke(A)||m.props.trigger.indexOf("click")>=0&&l;if(!S){if(m.props.interactive){m.hideWithInteractivity(A);return}Q(A)}}s(Ht,"onMouseLeave");function Nt(A){m.props.trigger.indexOf("focusin")<0&&A.target!==I()||m.props.interactive&&A.relatedTarget&&k.contains(A.relatedTarget)||Q(A)}s(Nt,"onBlurOrFocusOut");function Ke(A){return Er.isTouch?P()!==A.type.indexOf("touch")>=0:!1}s(Ke,"isEventListenerStopped");function Dt(){Ft();var A=m.props,S=A.popperOptions,W=A.placement,_=A.offset,le=A.getReferenceClientRect,ae=A.moveTransition,pt=T()?Cl(k).arrow:null,Rr=le?{getBoundingClientRect:le,contextElement:le.contextElement||I()}:e,wn={name:"$$tippy",enabled:!0,phase:"beforeWrite",requires:["computeStyles"],fn:s(function(ao){var Sr=ao.state;if(T()){var yi=V(),Wo=yi.box;["placement","reference-hidden","escaped"].forEach(function(so){so==="placement"?Wo.setAttribute("data-placement",Sr.placement):Sr.attributes.popper["data-popper-"+so]?Wo.setAttribute("data-"+so,""):Wo.removeAttribute("data-"+so)}),Sr.attributes.popper={}}},"fn")},pr=[{name:"offset",options:{offset:_}},{name:"preventOverflow",options:{padding:{top:2,bottom:2,left:5,right:5}}},{name:"flip",options:{padding:5}},{name:"computeStyles",options:{adaptive:!ae}},wn];T()&&pt&&pr.push({name:"arrow",options:{element:pt,padding:3}}),pr.push.apply(pr,(S==null?void 0:S.modifiers)||[]),m.popperInstance=gl(Rr,k,Object.assign({},S,{placement:W,onFirstUpdate:f,modifiers:pr}))}s(Dt,"createPopperInstance");function Ft(){m.popperInstance&&(m.popperInstance.destroy(),m.popperInstance=null)}s(Ft,"destroyPopperInstance");function Je(){var A=m.props.appendTo,S,W=I();m.props.interactive&&A===pp||A==="parent"?S=W.parentNode:S=mp(A,[W]),S.contains(k)||S.appendChild(k),m.state.isMounted=!0,Dt()}s(Je,"mount");function Xe(){return ba(k.querySelectorAll("[data-tippy-root]"))}s(Xe,"getNestedPopperTree");function L(A){m.clearDelayTimeouts(),A&&X("onTrigger",[m,A]),oe();var S=D(!0),W=E(),_=W[0],le=W[1];Er.isTouch&&_==="hold"&&le&&(S=le),S?o=setTimeout(function(){m.show()},S):m.show()}s(L,"scheduleShow");function Q(A){if(m.clearDelayTimeouts(),X("onUntrigger",[m,A]),!m.state.isVisible){ue();return}if(!(m.props.trigger.indexOf("mouseenter")>=0&&m.props.trigger.indexOf("click")>=0&&["mouseleave","mousemove"].indexOf(A.type)>=0&&l)){var S=D(!1);S?n=setTimeout(function(){m.state.isVisible&&m.hide()},S):i=requestAnimationFrame(function(){m.hide()})}}s(Q,"scheduleHide");function F(){m.state.isEnabled=!0}s(F,"enable");function ie(){m.hide(),m.state.isEnabled=!1}s(ie,"disable");function te(){clearTimeout(o),clearTimeout(n),cancelAnimationFrame(i)}s(te,"clearDelayTimeouts");function me(A){if(!m.state.isDestroyed){X("onBeforeUpdate",[m,A]),St();var S=m.props,W=ap(e,Object.assign({},S,rp(A),{ignoreAttributes:!0}));m.props=W,Fe(),S.interactiveDebounce!==W.interactiveDebounce&&(Ne(),g=ep(Bt,W.interactiveDebounce)),S.triggerTarget&&!W.triggerTarget?mn(S.triggerTarget).forEach(function(_){_.removeAttribute("aria-expanded")}):W.triggerTarget&&e.removeAttribute("aria-expanded"),ye(),z(),B&&B(S,W),m.popperInstance&&(Dt(),Xe().forEach(function(_){requestAnimationFrame(_._tippy.popperInstance.forceUpdate)})),X("onAfterUpdate",[m,A])}}s(me,"setProps");function ge(A){m.setProps({content:A})}s(ge,"setContent");function ve(){var A=m.state.isVisible,S=m.state.isDestroyed,W=!m.state.isEnabled,_=Er.isTouch&&!m.props.touch,le=hl(m.props.duration,0,ur.duration);if(!(A||S||W||_)&&!I().hasAttribute("disabled")&&(X("onShow",[m],!1),m.props.onShow(m)!==!1)){if(m.state.isVisible=!0,T()&&(k.style.visibility="visible"),z(),oe(),m.state.isMounted||(k.style.transition="none"),T()){var ae=V(),pt=ae.box,Rr=ae.content;bl([pt,Rr],0)}f=s(function(){var pr;if(!(!m.state.isVisible||u)){if(u=!0,k.offsetHeight,k.style.transition=m.props.moveTransition,T()&&m.props.animation){var Oo=V(),ao=Oo.box,Sr=Oo.content;bl([ao,Sr],le),op([ao,Sr],"visible")}G(),ye(),tp(vl,m),(pr=m.popperInstance)==null||pr.forceUpdate(),X("onMount",[m]),m.props.animation&&T()&&Se(le,function(){m.state.isShown=!0,X("onShown",[m])})}},"onFirstUpdate"),Je()}}s(ve,"show");function Ye(){var A=!m.state.isVisible,S=m.state.isDestroyed,W=!m.state.isEnabled,_=hl(m.props.duration,1,ur.duration);if(!(A||S||W)&&(X("onHide",[m],!1),m.props.onHide(m)!==!1)){if(m.state.isVisible=!1,m.state.isShown=!1,u=!1,l=!1,T()&&(k.style.visibility="hidden"),Ne(),ue(),z(!0),T()){var le=V(),ae=le.box,pt=le.content;m.props.animation&&(bl([ae,pt],_),op([ae,pt],"hidden"))}G(),ye(),m.props.animation?T()&&Me(_,m.unmount):m.unmount()}}s(Ye,"hide");function Ve(A){H().addEventListener("mousemove",g),tp(ha,g),g(A)}s(Ve,"hideWithInteractivity");function Lr(){m.state.isVisible&&m.hide(),m.state.isMounted&&(Ft(),Xe().forEach(function(A){A._tippy.unmount()}),k.parentNode&&k.parentNode.removeChild(k),vl=vl.filter(function(A){return A!==m}),m.state.isMounted=!1,X("onHidden",[m]))}s(Lr,"unmount");function io(){m.state.isDestroyed||(m.clearDelayTimeouts(),m.unmount(),St(),delete e._tippy,m.state.isDestroyed=!0,X("onDestroy",[m]))}s(io,"destroy")}s(bb,"createTippy");function si(e,t){t===void 0&&(t={});var r=ur.plugins.concat(t.plugins||[]);sb();var o=Object.assign({},t,{plugins:r}),n=rb(e);if(0)var i,l;var c=n.reduce(function(a,u){var d=u&&bb(u,o);return d&&a.push(d),a},[]);return ya(e)?c[0]:c}s(si,"tippy");si.defaultProps=ur;si.setDefaultProps=mb;si.currentInput=Er;var SI=Object.assign({},Qn,{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")});si.setDefaultProps({render:hp});var bp=si;import{forwardRef as yb}from"react";import{jsx as vb}from"react/jsx-runtime";var wl=yb(({children:e,className:t,withShadow:r=!0,withBorder:o=!0,...n},i)=>{let l=M("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 vb("div",{className:l,...n,ref:i,children:e})});wl.displayName="Surface";import{Extension as Pb,Node as kb}from"@tiptap/core";import{ReactNodeViewRenderer as Eb}from"@tiptap/react";import{Suggestion as Nb}from"@tiptap/suggestion";import{ReactRenderer as xb}from"@tiptap/react";var dr={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 tr(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=s((i,l)=>{e==null||e.updateProps({...i,selected:l})},"updateComponent"),n=s(i=>{var a,u;if(!r)return!1;let c=((a=dr.items)==null?void 0:a.call(dr,{query:(e==null?void 0:e.props).query||"",editor:(e==null?void 0:e.props).editor}))[i];return c?((u=dr.command)==null||u.call(dr,{editor:r.editor,range:r.range,props:c}),!0):!1},"selectItem");return{onStart:i=>{r=i,e=new xb(Kn,{props:{...i,selected:0},editor:i.editor}),i.clientRect&&(t=bp(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 a;if(!e||!r)return!1;let l=(a=dr.items)==null?void 0:a.call(dr,{query:e.props.query||"",editor:e.props.editor}),c=e.props.selected;if(i.event.key==="ArrowUp"){let u=(c-1+l.length)%l.length;return o(r,u),!0}if(i.event.key==="ArrowDown"){let u=(c+1)%l.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 Cb}from"@tiptap/react";import{Braces as Tb}from"lucide-react";import{jsx as yp,jsxs as wb}from"react/jsx-runtime";var vp=s(({node:e})=>yp(Cb,{className:"courier-inline-block",children:wb("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:[yp(Tb,{size:16,className:"courier-text-gray-500 group-hover:courier-stroke-primary"}),e.attrs.id]})}),"VariableView");var Pl=kb.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]",getAttrs:e=>{let t=e.getAttribute("data-id");return t?{id:t}:!1}}]},renderHTML({HTMLAttributes:e,node:t}){return["span",{"data-variable":!0,...e},`{{${t.attrs.id}}}`]},renderText({node:e}){return`{{${e.attrs.id}}}`},addNodeView(){return Eb(vp)}}),kl=Pb.create({name:"variableSuggestion",addOptions(){return{HTMLAttributes:{},suggestion:{char:"{{",...dr}}},addProseMirrorPlugins(){return[Nb({editor:this.editor,...this.options.suggestion})]}});import{Extension as Mb}from"@tiptap/core";import{Plugin as Ab}from"@tiptap/pm/state";import{Slice as Ib,Fragment as Lb}from"@tiptap/pm/model";var El=Mb.create({name:"variablePaste",addProseMirrorPlugins(){return[new Ab({props:{transformPastedHTML:e=>e.replace(/\{\{([^}]+)\}\}/g,'<span data-variable="true" data-id="$1"></span>'),transformPastedText:(e,t,r)=>{let o=/\{\{([^}]+)\}\}/g;if(!o.test(e))return e;let{schema:n}=r.state,i=[],l=0,c;for(o.lastIndex=0;(c=o.exec(e))!==null;){if(c.index>l){let u=e.substring(l,c.index);u&&i.push(n.text(u))}let a=c[1];n.nodes.variable&&i.push(n.nodes.variable.create({id:a})),l=c.index+c[0].length}if(l<e.length){let a=e.substring(l);a&&i.push(n.text(a))}if(i.length>0){let a=Lb.from(i),u=new Ib(a,0,0),d=r.state.tr.replaceSelection(u);return r.dispatch(d),e}return e}}})]}});import{v4 as Rb}from"uuid";var Sb=s((e,t)=>{let r=null;return e.state.doc.descendants((o,n)=>o.attrs.id===t?(r=n,!1):!0),r},"findNodePositionById"),Zi=s((e,t,r,o,n,i)=>{let l=`node-${Rb()}`,a={heading:()=>e.schema.nodes.heading.create({...re,...o,id:l},i),paragraph:()=>e.schema.nodes.paragraph.create({...re,...o,id:l},i),text:()=>e.schema.nodes.paragraph.create({...re,...o,id:l},i),spacer:()=>e.schema.nodes.divider.create({...sd,...o,id:l}),divider:()=>e.schema.nodes.divider.create({...or,...o,id:l}),button:()=>e.schema.nodes.button.create({...Le,...o,id:l},i),imageBlock:()=>e.schema.nodes.imageBlock.create({..._e,...o,id:l}),image:()=>e.schema.nodes.imageBlock.create({..._e,...o,id:l})}[t];if(a)try{let u=e.state.tr,d=a();u.insert(r,d),e.view.dispatch(u),n&&n(d),(t==="text"||t==="paragraph"||t==="heading")&&setTimeout(()=>{let f=Sb(e,l);f!==null&&e.commands.setTextSelection(f+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 Bb,getFirstCollision as Hb,KeyboardCode as to}from"@dnd-kit/core";var Db=[to.Down,to.Right,to.Up,to.Left],Np=s((e,{context:{active:t,droppableRects:r,droppableContainers:o,collisionRect:n}})=>{var i;if(Db.includes(e.code)){if(e.preventDefault(),!t||!n)return;let l=[];o.getEnabled().forEach(u=>{var f;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:g}=p;if(h==="container"&&(g==null?void 0:g.length)>0&&((f=t.data.current)==null?void 0:f.type)!=="container")return}switch(e.code){case to.Down:n.top<d.top&&l.push(u);break;case to.Up:n.top>d.top&&l.push(u);break;case to.Left:n.left>=d.left+d.width&&l.push(u);break;case to.Right:n.left+n.width<=d.left&&l.push(u);break}});let c=Bb({active:t,collisionRect:n,droppableRects:r,droppableContainers:l,pointerCoordinates:null}),a=Hb(c,"id");if(a!=null){let u=o.get(a),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");var Yr=s(e=>{let t=e();return typeof t=="number"?t:null},"safeGetPos"),lt=s(e=>{let t=Yr(e.getPos);return t===null?null:e.editor.state.doc.nodeAt(t)},"safeGetNodeAtPos");import{jsx as _r,jsxs as Ap}from"react/jsx-runtime";var va=[{type:"text",align:"left",content:`
181
- `,text_style:"h1"},{type:"text",align:"left",content:""},{type:"image",src:""}],Yb=Jb(({hidePublish:e,theme:t,channels:r,routing:o,render:n,headerRenderer:i,value:l},c)=>{let a=Ro(Pn),[u,d]=Ml(ke),[p,f]=Ml(co),[h,g]=li(null),[b,y]=li(null),w=Bo(null),N=Bo(!1),v=Bo({}),[m,x]=li(null),[k,B]=li(void 0),R=Ro(ze),C=Ro(he),E=Ro(vc),P=Ro(br),T=Bo(-1),I=Kb(Bu),H=Bo(!1),V=Bo(!1),[D]=Ml(be),z=Ro(er),X=Ro(Mt),G=Bo(null);So(()=>{if(u){let L=u.type.name,Q=Di(L);I({nodeName:L,config:Q})}},[u,I]);let ye=Al(()=>{var Q,F,ie,te,me,ge,ve,Ye,Ve,Lr,io,A,S,W,_,le,ae,pt,Rr,wn,pr,Oo,ao,Sr,yi,Wo,so,pc,mc,fc,gc,hc,bc,yc;if(P)return P;let L=(ie=(F=(Q=R==null?void 0:R.data)==null?void 0:Q.tenant)==null?void 0:F.brand)==null?void 0:ie.settings;return{brandColor:((te=L==null?void 0:L.colors)==null?void 0:te.primary)||"#000000",textColor:((me=L==null?void 0:L.colors)==null?void 0:me.secondary)||"#000000",subtleColor:((ge=L==null?void 0:L.colors)==null?void 0:ge.tertiary)||"#666666",headerStyle:(Ye=(ve=L==null?void 0:L.email)==null?void 0:ve.header)!=null&&Ye.barColor?"border":"plain",logo:(io=(Lr=(Ve=L==null?void 0:L.email)==null?void 0:Ve.header)==null?void 0:Lr.logo)==null?void 0:io.image,link:(W=(S=(A=L==null?void 0:L.email)==null?void 0:A.header)==null?void 0:S.logo)==null?void 0:W.href,facebookLink:(pt=(ae=(le=(_=L==null?void 0:L.email)==null?void 0:_.footer)==null?void 0:le.social)==null?void 0:ae.facebook)==null?void 0:pt.url,linkedinLink:(Oo=(pr=(wn=(Rr=L==null?void 0:L.email)==null?void 0:Rr.footer)==null?void 0:wn.social)==null?void 0:pr.linkedin)==null?void 0:Oo.url,instagramLink:(Wo=(yi=(Sr=(ao=L==null?void 0:L.email)==null?void 0:ao.footer)==null?void 0:Sr.social)==null?void 0:yi.instagram)==null?void 0:Wo.url,mediumLink:(fc=(mc=(pc=(so=L==null?void 0:L.email)==null?void 0:so.footer)==null?void 0:pc.social)==null?void 0:mc.medium)==null?void 0:fc.url,xLink:(yc=(bc=(hc=(gc=L==null?void 0:L.email)==null?void 0:gc.footer)==null?void 0:hc.social)==null?void 0:bc.twitter)==null?void 0:yc.url}},[P,R]),Ne=E&&!!ye,de=Np,Ce=Gb,[O,oe]=li({Editor:[],Sidebar:["heading","text","image","spacer","divider","button"]}),ue=qt(()=>{Object.values(v.current).forEach(L=>clearTimeout(L)),v.current={}},[]);So(()=>()=>{ue()},[ue]);let Me=qt(L=>{G.current&&cancelAnimationFrame(G.current),setTimeout(()=>{G.current=requestAnimationFrame(()=>{try{let Q=L==null?void 0:L.view.dom;if(!Q){console.warn("syncEditorItems: Editor DOM element not found");return}let F=Q.querySelectorAll(".react-renderer > div[data-node-view-wrapper][data-id]"),ie=[];F.forEach(te=>{let me=te.dataset.id;me&&ie.push(me)}),oe(te=>({Editor:ie,Sidebar:te.Sidebar}))}catch(Q){console.error("Error syncing editor items:",Q),oe(F=>({...F}))}})},50)},[]);So(()=>{let L=s(Q=>{if(Q.key==="Escape"&&(d(null),a==null||a.commands.blur(),T.current=-1),Q.key==="Tab"&&a){Q.preventDefault();let F=-1;u&&a.state.doc.content.forEach((me,ge,ve)=>{u.attrs.id===me.attrs.id&&(F=ve)}),F===-1&&(F=0);let ie=a.state.doc,te;if(Q.shiftKey?te=(F-1+ie.childCount)%ie.childCount:te=(F+1)%ie.childCount,te!==F||u===null){let me=ie.child(te);d(me),a.commands.blur()}}},"handleKeyPress");return document.addEventListener("keydown",L),()=>{document.removeEventListener("keydown",L)}},[a,u,d]),So(()=>{let L=D!=null?D:"";if(!L)return;let Q=Ja(L,"email");f(Q||""),setTimeout(()=>{if(!(!a||a.isDestroyed)&&a.state.doc.childCount===1){let F=a.state.doc.child(0);d(F)}},0)},[R,C,a,D,f,d]),So(()=>{C===!1&&R&&!V.current&&(V.current=!0,setTimeout(()=>{a&&!a.isDestroyed&&Me(a)},300))},[C,R,a,Me]),So(()=>(H.current=!0,()=>{H.current=!1}),[]),So(()=>{let L=s(()=>{a&&Me(a)},"updateItems");a==null||a.on("update",L),a==null||a.on("selectionUpdate",L),a==null||a.on("create",L),a==null||a.on("transaction",L),a&&!a.isDestroyed&&L();let Q=s(F=>{L()},"handleNodeDuplicated");return document.addEventListener("node-duplicated",Q),()=>{a==null||a.off("update",L),a==null||a.off("selectionUpdate",L),a==null||a.off("create",L),a==null||a.off("transaction",L),document.removeEventListener("node-duplicated",Q),G.current&&cancelAnimationFrame(G.current)}},[a,Me]);let Se=qt(L=>{let F=L||(k===void 0?"desktop":void 0);B(F),d(null),F?a==null||a.setEditable(!1):a==null||a.setEditable(!0)},[a,k,B,d]),ht=qb(Nl(Ub),Nl(Zb),Nl(Wb,{coordinateGetter:de})),Ge=qt(()=>{g(null)},[]),Fe=qt(L=>typeof L=="string"&&L.includes("_temp_")?"Editor":L in O?L:Object.keys(O).find(Q=>O[Q].includes(L)),[O]),St=qt(L=>{var me;if(h&&h in O)return Mp({...L,droppableContainers:L.droppableContainers.filter(ge=>ge.id in O)});let Q=$b(L),ie=(Q.length>0?Q:_b(L)).filter(ge=>ge.id!==void 0),te=Ob(ie,"id");if(te!=null){if(te==="Editor")return w.current=te,[{id:te}];if(te in O){let ge=O[te];if(ge.length>0){let ve=(me=Mp({...L,droppableContainers:L.droppableContainers.filter(Ye=>Ye.id!==te&&ge.includes(Ye.id))})[0])==null?void 0:me.id;ve&&(te=ve)}}return w.current=te,[{id:te}]}return N.current&&(w.current=h),w.current?[{id:w.current}]:[]},[h,O]),ot=qt(L=>{var Q,F;try{let ie=a==null?void 0:a.state.doc;if(!ie||L===0)return 0;if(L>=ie.childCount)return ie.content.size;let te=0;for(let me=0;me<Math.min(L,ie.childCount);me++)te+=(Q=ie.child(me))==null?void 0:Q.nodeSize;return te}catch(ie){return console.warn("Error calculating document position:",ie),(F=a==null?void 0:a.state.doc.content.size)!=null?F:0}},[a]),Bt=Al(()=>({droppable:{strategy:zb.Always}}),[]),Ht=qt(({active:L})=>{g(L.id),(L.id==="text"||L.id==="divider"||L.id==="spacer"||L.id==="button"||L.id==="image"||L.id==="heading")&&y(L.id)},[]),Nt=qt(({active:L,over:Q})=>{if(!Q)return;let F=Fe(Q.id);if(!(Fe(L.id)==="Sidebar"&&F==="Editor"))return;let te=L.rect.current;if(!(te!=null&&te.translated))return;let me=a==null?void 0:a.view.dom.querySelectorAll("[data-node-view-wrapper]");if(!me)return;let ge=me.length;for(let ve=0;ve<me.length;ve++){let Ve=me[ve].getBoundingClientRect();if(te.translated.top<Ve.top+Ve.height/2){ge=ve;break}}if(ge!==m){let ve=`${L.id}_temp_${Date.now()}`;x(ge),requestAnimationFrame(()=>{a==null||a.commands.removeDragPlaceholder(),a==null||a.commands.setDragPlaceholder({id:ve,type:L.id,pos:ot(ge)}),oe(Ye=>({...Ye,Editor:[...Ye.Editor.filter(Ve=>!Ve.toString().includes("_temp")),ve]}))})}},[a==null?void 0:a.commands,a==null?void 0:a.view.dom,Fe,ot,m]),Ke=qt(()=>{a==null||a.commands.removeDragPlaceholder(),oe(L=>({...L,Editor:L.Editor.filter(Q=>!Q.toString().includes("_temp"))}))},[a==null?void 0:a.commands,oe]),Dt=qt(({active:L,over:Q})=>{var me;Ke();let F=Q==null?void 0:Q.id;if(!F){oe(ge=>({...ge,Editor:ge.Editor.filter(ve=>!ve.toString().includes("_temp"))})),g(null),y(null);return}if(!a)return;let ie=Fe(F),te=Fe(L.id);if(te==="Sidebar"&&ie==="Editor"&&m!==null){let ge=ot(m!=null?m:0);Zi(a,b,ge,void 0,ve=>d(ve))}else if(te===ie){let ge=O[te].indexOf(L.id),ve=O[ie].indexOf(F);if(ge!==-1&&ve!==-1&&ge!==ve){oe(Ve=>({...Ve,[ie]:jb(Ve[ie],ge,ve)}));let Ye=(me=a.getJSON())==null?void 0:me.content;if(Array.isArray(Ye)){let Ve=[...Ye],[Lr]=Ve.splice(ge,1);Ve.splice(ve,0,Lr),a.view.dispatch(a.view.state.tr.replaceWith(0,a.view.state.doc.content.size,a.state.schema.nodeFromJSON({type:"doc",content:Ve})))}}}te==="Sidebar"&&ie==="Sidebar"&&setTimeout(()=>{Ke()},100),x(null),g(null),y(null)},[Ke,a,Fe,ot,O,m,d,y,g,b]),Ft=qt(()=>{Ke(),a==null||a.commands.removeDragPlaceholder(),Ge()},[Ke,a==null?void 0:a.commands,Ge]),Je=s(L=>{f(L.target.value)},"handleSubjectChange"),Xe=Al(()=>{if(C!==!1)return null;let L=l==null?void 0:l.elements.find(F=>F.type==="channel"&&F.channel==="email");return L||(L={type:"channel",channel:"email",elements:va}),xt({version:"2022-01-01",elements:[L]},{channel:"email"})},[l,C]);return X&&(D===null||Xe===null)?null:_r(yr,{theme:t,isLoading:!!C,Header:i?i({hidePublish:e,channels:r,routing:o}):_r(ro,{hidePublish:e,channels:r,routing:o}),children:Ap(Fb,{sensors:ht,collisionDetection:St,measuring:Bt,onDragStart:Ht,onDragMove:Nt,onDragEnd:Dt,onDragCancel:Ft,children:[n==null?void 0:n({subject:p,handleSubjectChange:Je,selectedNode:u,setSelectedNode:d,previewMode:k,emailEditor:a,ref:c,isBrandApply:Ne,brandSettings:ye,items:O,content:Xe,strategy:Ce,syncEditorItems:Me,brandEditorContent:z,templateData:R,togglePreviewMode:Se}),_r(Vb,{dropAnimation:null,children:h&&(h==="text"||h==="divider"||h==="spacer"||h==="button"||h==="image"||h==="heading")?Ap("div",{className:M("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"&&_r(en,{draggable:!0}),b==="text"&&_r(on,{draggable:!0}),b==="spacer"&&_r(rn,{draggable:!0}),b==="divider"&&_r(Qo,{draggable:!0}),b==="button"&&_r(Yo,{draggable:!0}),b==="image"&&_r(tn,{draggable:!0})]}):null})]})})}),xa=Xb(Yb);var Ca=class Ca{};s(Ca,"UploadImageAPI"),Ca.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 Il=Ca,Ll=Il;var Nr=s(e=>[qs,Ep.configure({document:!1,dropcursor:!1,gapcursor:!1,heading:!1,horizontalRule:!1,paragraph:!1,blockquote:!1,hardBreak:!1}),tl.configure({setSelectedNode:e==null?void 0:e.setSelectedNode}),Cp.configure({keepMarks:!0,HTMLAttributes:{class:"my-line-break"}}),md,Zs,el,zs,Gs.configure({levels:[1,2,3,4,5,6]}),qi,Ji,xp,Xs.configure({openOnClick:!1,defaultProtocol:"https",HTMLAttributes:{class:"link"}}),kp,ia.configure(),Qi.configure({allowedMimeTypes:["image/png","image/jpeg","image/gif","image/webp"],onDrop:(t,r,o)=>{r.forEach(async n=>{let i=await Ll.uploadImage(n);t.chain().setImageBlockAt({pos:o,src:i}).focus().run()})},onPaste:(t,r)=>{r.forEach(async o=>{let n=await Ll.uploadImage(o);return t.chain().setImageBlockAt({pos:t.state.selection.anchor,src:n}).focus().run()})}}),wp.extend({addKeyboardShortcuts(){return{}}}).configure({types:["paragraph","heading"]}),Pp,Tp.configure({includeChildren:!0,showOnlyCurrent:!0,placeholder:"",emptyEditorClass:"is-editor-empty",emptyNodeClass:"is-empty",showOnlyWhenEditable:!0}),Os.configure({width:2,class:"ProseMirror-dropcursor courier-border-black"}),kl.configure({variables:e==null?void 0:e.variables}),Pl,El,ea,oa],"ExtensionKit");import{BubbleMenu as I2,useCurrentEditor as L2}from"@tiptap/react";import{useAtomValue as Qb}from"jotai";import{useCallback as Ip,useEffect as e2,useState as t2}from"react";var Ta=s(e=>{let t=Qb(ke),[r,o]=t2({isBold:!1,isItalic:!1,isUnderline:!1,isStrike:!1,isAlignLeft:!1,isAlignCenter:!1,isAlignRight:!1,isAlignJustify:!1,isQuote:!1,isLink:!1}),n=Ip(()=>{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 e2(()=>{if(e)return n(),e.on("selectionUpdate",n),e.on("transaction",n),()=>{e.off("selectionUpdate",n),e.off("transaction",n)}},[e,n]),{shouldShow:Ip(({editor:l})=>{let c=["paragraph","heading","blockquote"],{$head:a}=l.state.selection,u=a.node();if(c.includes(u.type.name)&&u.attrs.isSelected)return!0;for(let d=1;d<=a.depth;d++){let p=a.node(d);if(p.type.name==="blockquote"&&p.attrs.isSelected)return!0}return!1},[]),...r}},"useTextmenuStates");import{useAtomValue as Sl}from"jotai";import{AlignCenter as p2,AlignJustify as m2,AlignLeft as f2,AlignRight as g2,Bold as h2,Braces as b2,Italic as y2,Link as v2,Quote as x2,Strikethrough as C2,Underline as T2}from"lucide-react";import{Fragment as w2,memo as Wp,useMemo as Op,useRef as P2,useState as k2,useEffect as E2}from"react";import{forwardRef as Rl}from"react";import r2 from"@tippyjs/react";import{useCallback as o2}from"react";import{Fragment as a2,jsx as Mr,jsxs as i2}from"react/jsx-runtime";var Lp=typeof window!="undefined"?navigator.platform.toUpperCase().indexOf("MAC")>=0:!1,n2=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"?Mr("kbd",{className:t,children:Lp?"\u2318":"Ctrl"}):e==="Shift"?Mr("kbd",{className:t,children:"\u21E7"}):e==="Alt"?Mr("kbd",{className:t,children:Lp?"\u2325":"Alt"}):Mr("kbd",{className:t,children:e})},"ShortcutKey"),Rp=s(({children:e,enabled:t=!0,title:r,shortcut:o,tippyOptions:n={}})=>{let i=o2(l=>i2("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&&Mr("span",{className:"courier-text-xs courier-font-medium courier-text-neutral-500",children:r}),o&&Mr("span",{className:"courier-flex courier-items-center courier-gap-0.5",children:o.map(c=>Mr(n2,{children:c},c))})]}),[o,r]);return t?Mr(r2,{...n,delay:500,offset:[0,8],touch:!1,zIndex:99999,appendTo:document.body,trigger:"mouseenter focus",showOnCreate:!1,render:i,animation:!1,children:Mr("span",{children:e})}):Mr(a2,{children:e})},"Tooltip");import{jsx as wa}from"react/jsx-runtime";var Sp=Rl(({shouldShowContent:e=!0,children:t,isVertical:r=!1,className:o,...n},i)=>{let l=M("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&&wa(wl,{className:l,...n,ref:i,children:t})});Sp.displayName="Toolbar";var Bp=Rl(({horizontal:e,className:t,...r},o)=>{let n=M("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 wa("div",{className:n,ref:o,...r})});Bp.displayName="Toolbar.Divider";var Hp=Rl(({children:e,buttonSize:t="icon",variant:r="ghost",className:o,tooltip:n,tooltipShortcut:i,...l},c)=>{let a=M("courier-gap-1 courier-min-w-[2rem] courier-w-auto",o),u=wa(Te,{className:a,variant:r,buttonSize:t,ref:c,...l,children:e});return n?wa(Rp,{title:n,shortcut:i,children:u}):u});Hp.displayName="ToolbarButton";var Pa={Wrapper:Sp,Divider:Bp,Button:Hp};import{ChevronDown as s2}from"lucide-react";import{useMemo as l2}from"react";import{Fragment as u2,jsx as oo,jsxs as Dp}from"react/jsx-runtime";var c2=s(e=>e.type==="option","isOption"),Fp=s(({options:e,containerRef:t})=>{let r=l2(()=>e.find(o=>o.type==="option"&&o.isActive()),[e]);return Dp(ki,{children:[oo(Ei,{asChild:!0,children:Dp(Te,{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",oo(s2,{className:"courier-w-3 courier-h-3"})]})}),oo(An,{portalProps:{container:(t==null?void 0:t.current)||void 0},children:e.map(o=>{if(c2(o))return oo(In,{onClick:o.onClick,className:o.isActive()?"courier-bg-accent courier-text-foreground":"",children:o.id.startsWith("heading")?oo(u2,{children:o.id==="heading1"?oo("h1",{className:"courier-text-2xl courier-font-bold",children:o.label}):o.id==="heading2"?oo("h2",{className:"courier-text-xl courier-font-bold",children:o.label}):o.id==="heading3"?oo("h3",{className:"courier-text-lg courier-font-bold",children:o.label}):o.label}):o.label},o.id)})})]})},"ContentTypePicker");import{useEditorState as d2}from"@tiptap/react";var Vp=s(e=>d2({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 ut,jsxs as A2}from"react/jsx-runtime";var N2=Wp(Pa.Button),M2=Wp(Fp),Bl=s(({editor:e,config:t})=>{var B;let r=_i(e),o=Ta(e),n=Vp(e),i=P2(null),l=Sl(Fi),c=Sl(ke),a=c==null?void 0:c.type.name,u=Sl(Su),[d,p]=k2(()=>{let{selection:R}=e.state;return{from:R.from,to:R.to,empty:R.empty}});E2(()=>{let R=s(()=>{let{selection:C}=e.state;p({from:C.from,to:C.to,empty:C.empty})},"updateSelection");return e.on("selectionUpdate",R),e.on("transaction",R),()=>{e.off("selectionUpdate",R),e.off("transaction",R)}},[e]);let f=Op(()=>!d.empty&&d.from!==d.to,[d]),h=Op(()=>t||u(a||"",f),[t,u,a,f]),g=s(()=>{let{selection:R}=e.state;if(!(R.empty&&!o.isLink&&!e.can().setLink({href:""})))if(o.isLink){let C=e.state.tr.setMeta("showLinkForm",{from:R.from,to:R.to});e.view.dispatch(C)}else{let C=e.state.tr.setMeta("showLinkForm",{from:R.from,to:R.to});e.view.dispatch(C)}},"handleLinkToggle"),b=s(()=>{if(l.ref){let T=l.ref,I=T.value,H=l.caretPosition||T.selectionStart||0,V=I.substring(0,H),D=I.substring(H),z=`${V}{{${D}`,X=H+2;T.focus();let G=new Event("input",{bubbles:!0,cancelable:!0});if(Object.defineProperty(G,"target",{writable:!1,value:{...T,value:z}}),T.value=z,T.dispatchEvent(G),T.setSelectionRange(X,X),T.getBoundingClientRect()){let Ne=z.slice(0,X),de=document.createElement("span");de.style.font=window.getComputedStyle(T).font,de.style.whiteSpace="pre-wrap",de.textContent=Ne,document.body.appendChild(de);let Ce=de.offsetWidth;document.body.removeChild(de);let O=parseInt(window.getComputedStyle(T).lineHeight),oe=Ne.split(`
182
- `).length-1,ue=new CustomEvent("showVariableSuggestions",{detail:{cursorPosition:{left:Math.min(Ce%T.offsetWidth,T.offsetWidth-200),top:oe*O+30}},bubbles:!0});T.dispatchEvent(ue)}return}let{state:R,dispatch:C}=e.view,{tr:E}=R;E.insertText("{{"),C(E),e.commands.focus();let P=e.state.tr.setMeta("showVariableSuggestions",{from:e.state.selection.from,to:e.state.selection.to});e.view.dispatch(P)},"handleVariableClick"),y=s((R,C,E,P,T,I,H)=>{let V=h[R];return!V||V.state==="hidden"?null:ut(N2,{tooltip:E,tooltipShortcut:I,onClick:P,active:T,disabled:V.state==="disabled",...H,children:C},R)},"renderButton"),w=s((R,C)=>{let E=R.filter(P=>!!P);return E.length>0?ut("div",{className:"courier-flex courier-items-center courier-gap-0.5",children:E},C):null},"renderGroup"),N=w([((B=h.contentType)==null?void 0:B.state)==="enabled"&&ut(M2,{options:n,containerRef:i},"content-type")],"content-type-group"),v=w([y("bold",ut(h2,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Bold",r.onBold,o.isBold,["Mod","B"]),y("italic",ut(y2,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Italic",r.onItalic,o.isItalic,["Mod","I"]),y("underline",ut(T2,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Underline",r.onUnderline,o.isUnderline,["Mod","U"]),y("strike",ut(C2,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Strikethrough",r.onStrike,o.isStrike,["Mod","Shift","S"])],"text-style-group"),m=w([y("alignLeft",ut(f2,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Align left",r.onAlignLeft,o.isAlignLeft,["Shift","Mod","L"]),y("alignCenter",ut(p2,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Align center",r.onAlignCenter,o.isAlignCenter,["Shift","Mod","E"]),y("alignRight",ut(g2,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Align right",r.onAlignRight,o.isAlignRight,["Shift","Mod","R"]),y("alignJustify",ut(m2,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Justify",r.onAlignJustify,o.isAlignJustify,["Shift","Mod","J"])],"alignment-group"),x=w([y("quote",ut(x2,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Quote",r.onQuote,o.isQuote,["Mod","Shift","B"])],"block-style-group"),k=w([y("link",ut(v2,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Link",g,o.isLink,["Mod","K"]),y("variable",ut(b2,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Variable",b,!1,["Mod","V"],{"data-variable-button":"true"})],"insert-group");return ut(Pa.Wrapper,{ref:i,className:"courier-border-b rounded-b-none rounded-t-sm !courier-shadow-md courier-justify-center courier-rounded-lg",children:[N,v,m,x,k].filter(Boolean).map((R,C)=>A2(w2,{children:[R,C<[N,v,m,x,k].filter(Boolean).length-1&&ut(Pa.Divider,{})]},`item-${C}`))})},"TextMenu");import{jsx as zp}from"react/jsx-runtime";var Ar=s(({config:e})=>{let{editor:t}=L2(),r=Ta(t);return t?zp(I2,{editor:t,tippyOptions:{appendTo:o=>{var n;return(n=o.closest(".bubble-text-menu-container"))!=null?n:o},getReferenceClientRect:()=>{var l,c,a,u;let o=(a=(c=(l=t==null?void 0:t.state)==null?void 0:l.selection)==null?void 0:c.from)!=null?a: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,"data-testid":"bubble-text-menu",children:t&&zp(Bl,{editor:t,config:e})}):null},"BubbleTextMenu");import{TextSelection as R2}from"@tiptap/pm/state";import{EditorProvider as S2,Extension as B2,useCurrentEditor as H2}from"@tiptap/react";import{useAtomValue as D2,useSetAtom as $p}from"jotai";import{memo as F2,useEffect as Dl,useMemo as Up,useRef as _p}from"react";import{jsx as jt,jsxs as Hl}from"react/jsx-runtime";var V2=s(({value:e,readOnly:t})=>{let{editor:r}=H2(),o=$p(Ot),n=D2(he),i=_p(!1);return Dl(()=>{!r||(n!==!1||i.current)&&!t||!e||(i.current=!0,r.commands.setContent(ja(e!=null?e:"")))},[r,e,n,t]),Dl(()=>{r&&(o(r),setTimeout(()=>{r.commands.blur()},1))},[r,o]),null},"EditorContent"),O2=s(({variables:e,facebookLink:t,linkedinLink:r,instagramLink:o,mediumLink:n,xLink:i,readOnly:l=!1,value:c,onUpdate:a})=>{let u=_p(!1),d=$p(ke),p=Up(()=>({urls:{unsubscribe:!0,preferences:!0},...e}),[e]),f=B2.create({name:"escapeHandler",addKeyboardShortcuts(){return{Escape:({editor:g})=>{let{state:b,dispatch:y}=g.view;return y(b.tr.setSelection(R2.create(b.doc,b.selection.$anchor.pos))),d&&d(null),!1}}}});Dl(()=>(u.current=!0,()=>{u.current=!1}),[]);let h=Up(()=>[...Nr({variables:p,setSelectedNode:d}),f].filter(g=>g!==void 0),[f,p,d]);return Hl("div",{className:"courier-flex courier-flex-row courier-gap-6 courier-justify-between courier-items-start",children:[Hl(S2,{content:ja(c!=null?c:""),extensions:h,editable:!l,autofocus:!l,onUpdate:a,editorContainerProps:{className:M("courier-py-2 courier-flex-grow",l&&"courier-brand-editor-readonly")},immediatelyRender:!1,children:[jt(V2,{value:c,readOnly:l}),jt(Ar,{})]}),Hl("div",{className:"courier-flex courier-justify-end courier-items-center courier-gap-2 courier-mt-3",children:[t&&jt("a",{href:t,target:"_blank",rel:"noopener noreferrer",children:jt(Dn,{className:"courier-w-5 courier-h-5"})}),r&&jt("a",{href:r,target:"_blank",rel:"noopener noreferrer",children:jt(Vn,{className:"courier-w-5 courier-h-5"})}),o&&jt("a",{href:o,target:"_blank",rel:"noopener noreferrer",children:jt(Fn,{className:"courier-w-5 courier-h-5"})}),n&&jt("a",{href:n,target:"_blank",rel:"noopener noreferrer",children:jt(On,{className:"courier-w-5 courier-h-5"})}),i&&jt("a",{href:i,target:"_blank",rel:"noopener noreferrer",children:jt(Un,{className:"courier-w-5 courier-h-5"})})]})]})},"BrandFooterComponent"),ci=F2(O2);import{Fragment as W2,jsx as fn,jsxs as ka}from"react/jsx-runtime";var Zp=s(({value:e,icon:t,...r})=>fn(Be,{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"),Fl=s(({previewMode:e,togglePreviewMode:t,...r})=>ka("div",{...r,className:M("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",r.className),children:[e&&ka(W2,{children:[ka(zt,{type:"single",value:e,onValueChange:o=>{o!==""&&t(o)},className:"courier-w-full courier-rounded-md !courier-p-0.5 courier-bg-[#3B82F6] !courier-gap-0",children:[fn(Zp,{value:"desktop",icon:fn(Ps,{})}),fn(Zp,{value:"mobile",icon:fn(Is,{})})]}),fn("div",{className:"courier-mx-4 courier-w-px courier-h-6 courier-bg-border"})]}),ka(Te,{variant:"link",onClick:()=>t(),children:[e?"Exit":"View"," Preview"]})]}),"PreviewPanel");import{SortableContext as Qp}from"@dnd-kit/sortable";import{forwardRef as em}from"react";import{Extension as z2}from"@tiptap/core";import{TextSelection as U2}from"@tiptap/pm/state";import{EditorProvider as $2,useCurrentEditor as _2}from"@tiptap/react";import{useAtom as jp,useAtomValue as no,useSetAtom as Vl}from"jotai";import{useCallback as Ho,useEffect as Zr,useMemo as Z2,useRef as Do}from"react";import{jsx as qp,jsxs as G2}from"react/jsx-runtime";var q2=s(({value:e})=>{let{editor:t}=_2(),[r,o]=jp(be),n=no(co),i=no(ke),l=Vl(Pn),c=Do(!1),a=no(he),u=no(ze),d=Do(!1),p=no(Mt);return Zr(()=>{a&&(d.current=!1)},[a]),Zr(()=>{if(!t||a!==!1||d.current)return;let f=e||{type:"doc",content:[{type:"paragraph"}]};l(t),d.current=!0,t.commands.setContent(f)},[t,e,l,a]),Zr(()=>{if(!(t&&n!==null)||a!==!1||p||t.isFocused)return;let f=Ie(t.getJSON());if(!f||!Array.isArray(f))return;let h=n;if(!n&&r){let w=r.elements.find(N=>N.type==="channel"&&N.channel==="email");w&&(h=Ti(w,"email"))}let g=uo(r,"email",h||"",f),b={elements:g.elements,channel:"email",...g.raw&&{raw:g.raw}},y=Xt(r,b);JSON.stringify(r)!==JSON.stringify(y)&&o(y)},[u,t,n,o,a,r,p]),Zr(()=>()=>{t&&!t.isDestroyed&&t.setEditable(!0)},[t]),Zr(()=>{t&&c.current&&t.commands.updateSelectionState(i)},[t,i]),Zr(()=>(c.current=!0,()=>{c.current=!1}),[]),null},"EditorContent"),j2=s(({value:e,readOnly:t=!1,variables:r,onDestroy:o,onUpdate:n,subject:i})=>{let l=Vl(Vi),c=Do(),[a,u]=jp(be),d=no(co),p=i!=null?i:d,f=Vl(ke),h=no(Pn),g=no(Mt),b=Do(a),y=Do(p);Zr(()=>{b.current=a},[a]),Zr(()=>{y.current=p},[p]),Zr(()=>{h==null||h.setEditable(!t)},[t,h]);let w=z2.create({name:"escapeHandler",addKeyboardShortcuts(){return{Escape:({editor:I})=>{let{state:H,dispatch:V}=I.view;return V(H.tr.setSelection(U2.create(H.doc,H.selection.$anchor.pos))),f&&f(null),!1}}}}),N=Ho(({editor:I})=>{n==null||n(I),window.editor=I,f&&setTimeout(()=>{f(null)},100)},[f,n]),v=Do(),m=Do(null),x=Ho((I,H)=>{var Ne;if(g)return;let V=b.current,D=y.current;if(!V){u({version:"2022-01-01",elements:[{type:"channel",channel:"email",elements:H}]});return}let z=V.elements.find(de=>de.type==="channel"&&de.channel==="email"),X={...z};X.elements=(Ne=X.elements)==null?void 0:Ne.filter(de=>de.type!=="meta");let G={type:"channel",channel:"email",elements:H};if(JSON.stringify(X)!==JSON.stringify(G)){let de=D;!D&&z&&(de=Ti(z,"email"));let Ce=uo(V,"email",de||"",H);G.elements=Ce.elements,Ce.raw&&(G.raw=Ce.raw);let O=Xt(V,G);u(O)}n==null||n(I),window.editor=I},[u,n,g]),k=Ho(({editor:I})=>{let H=Ie(I.getJSON());m.current={editor:I,elemental:H},v.current&&clearTimeout(v.current),v.current=setTimeout(()=>{if(m.current){let{editor:V,elemental:D}=m.current;x(V,D),m.current=null}},200)},[x]),B=Ho(({editor:I})=>{let{selection:H}=I.state,{$anchor:V}=H,z=H.$head.marks().find(ye=>ye.type.name==="link");z||I.isActive("link")?l({mark:z}):l(null);let X=V.depth,G=null;for(;X>0;){let ye=V.node(X);if(ye.type.name==="paragraph"||ye.type.name==="heading"){G=ye;break}X--}G&&f(G)},[l,f]),R=Ho(({editor:I,transaction:H})=>{let V=H==null?void 0:H.getMeta("showLinkForm");if(V){let{selection:D}=I.state,X=D.$head.marks().find(G=>G.type.name==="link");l({mark:X,link:{from:V.from,to:V.to}})}},[l]),C=Ho(()=>{c.current&&clearTimeout(c.current),v.current&&clearTimeout(v.current),o==null||o(),window.editor=null},[o]),E=Ho(I=>{var X;let H=(X=I.view)==null?void 0:X.editor;if(!H||!H.isEditable)return;let V=I.target,D=H.view.posAtDOM(V,0),z=H.state.doc.resolve(D).node();z.type.name==="paragraph"&&f(z)},[f]),P=Z2(()=>[...Nr({variables:r,setSelectedNode:f}),w].filter(I=>I!==void 0),[w,r,f]),T=e||{type:"doc",content:[{type:"paragraph"}]};return G2($2,{content:T,extensions:P,editable:!t,autofocus:!t,onCreate:N,onUpdate:k,onSelectionUpdate:B,onTransaction:R,onDestroy:C,editorContainerProps:{onClick:E},"data-testid":"editor-provider",immediatelyRender:!1,children:[qp(q2,{value:T}),qp(Ar,{})]})},"EmailEditor"),Ol=j2;import{useAtomValue as Jp,useSetAtom as e0}from"jotai";import{GripVertical as t0}from"lucide-react";import{useSortable as K2}from"@dnd-kit/sortable";import{forwardRef as J2,useEffect as Gp,useState as X2}from"react";import{jsx as Wl}from"react/jsx-runtime";function Y2(){let[e,t]=X2(!1);return Gp(()=>{let r=setTimeout(()=>t(!0),500);return()=>clearTimeout(r)},[]),e}s(Y2,"useMountStatus");var Kp=s(({children:e,id:t,className:r})=>{let{setNodeRef:o,setActivatorNodeRef:n,listeners:i,isDragging:l,transform:c,transition:a}=K2({id:t}),u=Y2();return Wl(Q2,{ref:o,id:t,transition:a,transform:c,fadeIn:l&&!u,listeners:i,className:r,handleProps:{ref:n},children:e})},"SideBarSortableItemWrapper"),Q2=J2(({children:e,className:t,dragOverlay:r,handleProps:o,listeners:n,id:i},l)=>(Gp(()=>{if(r)return document.body.style.cursor="grabbing",()=>{document.body.style.cursor=""}},[r]),Wl("div",{ref:l,"data-cypress":"draggable-item","data-node-view-wrapper":!0,"data-id":i,className:M(t,"courier-relative"),children:Wl("div",{...o,...n,children:e})})));import{Fragment as r0,jsx as et,jsxs as gn}from"react/jsx-runtime";var zl=s(({items:e,brandEditor:t,label:r})=>{var l,c;let o=Jp(ze),n=e0(Xo),i=Jp(it);return gn("div",{className:"courier-flex courier-flex-col courier-h-full",children:[gn("div",{className:"courier-flex-1",children:[r&&gn(r0,{children:[et("p",{children:r}),et(fe,{className:"courier-my-4"})]}),et("div",{className:"courier-flex courier-flex-col courier-gap-4 courier-w-full",children:e.map(a=>et(Kp,{id:a.toString(),children:gn("div",{className:M("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:[et(t0,{strokeWidth:1,className:"courier-w-4 courier-stroke-ring courier-fill-ring"}),a==="heading"&&et(en,{draggable:!0}),a==="text"&&et(on,{draggable:!0}),a==="image"&&et(tn,{draggable:!0}),a==="spacer"&&et(rn,{draggable:!0}),a==="divider"&&et(Qo,{draggable:!0}),a==="button"&&et(Yo,{draggable:!0})]})},a))})]}),t&&gn("div",{className:"courier-mt-auto courier-pt-4",children:[et(fe,{className:"courier-mb-4 -courier-mx-4"}),(c=(l=o==null?void 0:o.data)==null?void 0:l.tenant)!=null&&c.brand?et("div",{className:"courier-flex courier-flex-row courier-gap-2 courier-items-center courier-justify-end courier-w-full",children:et(Te,{variant:"link",className:"courier-underline",onClick:()=>n("brand"),disabled:!!i,children:"Edit brand"})}):gn("div",{className:"courier-flex courier-flex-col courier-gap-2",children:[et("h3",{className:"courier-text-md courier-font-medium",children:"Customize brand theme"}),et("p",{className:"courier-text-sm courier-text-muted-foreground",children:"Customize header and footer to apply to the template."}),et(Te,{variant:"primary",className:"courier-w-fit courier-mt-2",onClick:()=>n("brand"),children:"Customize"})]})]})]})},"SideBar");import{useAtomValue as o0}from"jotai";import{jsx as hn,jsxs as n0}from"react/jsx-runtime";var Ul=s(({element:e,editor:t})=>{var i,l;let r=o0(Vs);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(c=>c.type.name==="link")))return hn(Id,{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,a=c.depth;for(;a>0;){let u=c.node(a);if(u.type.name==="blockquote")return u;a--}},"getBlockquoteElement");return n0("div",{className:"courier-flex courier-flex-col courier-gap-4",children:[e.type.name==="button"&&hn(od,{element:e,editor:t},e.attrs.id),e.type.name==="divider"&&hn(cd,{element:e,editor:t},e.attrs.id),["paragraph","heading"].includes(e.type.name)&&!o&&hn(bd,{element:e,editor:t},e.attrs.id),e.type.name==="imageBlock"&&hn(kd,{element:e,editor:t},e.attrs.id),(e.type.name==="blockquote"||e.type.name==="paragraph"&&o||e.type.name==="heading"&&o)&&hn(Gu,{element:n()||e,editor:t},e.attrs.id)]})},"SideBarItemDetails");import{forwardRef as Xp}from"react";import{jsx as Yp}from"react/jsx-runtime";var $l=Xp(({children:e,previewMode:t,className:r,readOnly:o=!1,...n},i)=>Yp("div",{className:M("courier-flex courier-flex-1 courier-overflow-hidden",o&&"courier-editor-readonly",t&&"courier-editor-preview-mode",t==="mobile"&&"courier-editor-preview-mode-mobile",r),...n,ref:i,children:e})),_l=Xp(({children:e,className:t,previewMode:r,...o},n)=>Yp("div",{style:{padding:12},className:M("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{useAtomValue as i0}from"jotai";import{jsx as tt,jsxs as bn}from"react/jsx-runtime";var tm=em(({children:e,className:t,...r},o)=>tt("div",{className:M("courier-editor-container courier-relative",t),...r,ref:o,children:e})),rm=em(({children:e,previewMode:t,...r},o)=>tt("div",{className:M("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})),om=s(({variables:e,theme:t,isLoading:r,hidePublish:o,channels:n,brandEditor:i,routing:l})=>{let c=i0(be);return tt(xa,{value:c,variables:e,theme:t,isLoading:r,hidePublish:o,channels:n,brandEditor:i,routing:l,render:({subject:a,handleSubjectChange:u,selectedNode:d,setSelectedNode:p,previewMode:f,emailEditor:h,ref:g,isBrandApply:b,brandSettings:y,items:w,content:N,strategy:v,syncEditorItems:m,brandEditorContent:x,templateData:k,togglePreviewMode:B})=>{var R,C,E,P,T,I;return bn($l,{previewMode:f,children:[bn("div",{className:"courier-flex courier-flex-col courier-flex-1",children:[bn("div",{className:"courier-bg-primary courier-h-12 courier-flex courier-items-center courier-gap-2 courier-px-4 courier-border-b",children:[tt("h4",{className:"courier-text-sm",children:"Subject: "}),tt(se,{value:a!=null?a:"",onChange:u,onFocus:()=>p(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:f!==void 0})]}),bn(tm,{ref:g,children:[bn(rm,{previewMode:f,children:[b&&bn("div",{className:M("courier-py-5 courier-px-9 courier-pb-0 courier-relative courier-overflow-hidden courier-flex courier-flex-col courier-items-start",(y==null?void 0:y.headerStyle)==="border"&&"courier-pt-6"),children:[(y==null?void 0:y.headerStyle)==="border"&&tt("div",{className:"courier-absolute courier-top-0 courier-left-0 courier-right-0 courier-h-2",style:{backgroundColor:y==null?void 0:y.brandColor}}),(y==null?void 0:y.logo)&&tt("img",{src:y.logo,alt:"Brand logo",className:"courier-w-auto courier-max-w-36 courier-object-contain courier-cursor-default"})]}),tt(Qp,{items:w.Editor,strategy:v,children:N&&tt(Ol,{value:N,onUpdate:m,variables:e})}),b&&k&&tt("div",{className:"courier-py-5 courier-px-9 courier-pt-0 courier-flex courier-flex-col",children:tt(ci,{readOnly:!0,value:x!=null?x:(I=(T=(P=(E=(C=(R=k==null?void 0:k.data)==null?void 0:R.tenant)==null?void 0:C.brand)==null?void 0:E.settings)==null?void 0:P.email)==null?void 0:T.footer)==null?void 0:I.markdown,variables:e,facebookLink:y==null?void 0:y.facebookLink,linkedinLink:y==null?void 0:y.linkedinLink,instagramLink:y==null?void 0:y.instagramLink,mediumLink:y==null?void 0:y.mediumLink,xLink:y==null?void 0:y.xLink})})]}),tt(Fl,{previewMode:f,togglePreviewMode:B})]})]}),tt(_l,{previewMode:f,children:tt("div",{className:"courier-p-1 courier-h-full",children:d?tt(Ul,{element:d,editor:h}):tt(Qp,{items:w.Sidebar,strategy:v,children:tt(zl,{items:w.Sidebar,brandEditor:i,label:"Blocks library"})})})})]})}})},"EmailLayout");import{useCurrentEditor as a0}from"@tiptap/react";import{useAtom as s0,useAtomValue as Ea,useSetAtom as im}from"jotai";import{forwardRef as l0,memo as c0,useCallback as u0,useEffect as ui,useMemo as Zl,useRef as ql}from"react";import{jsx as nm}from"react/jsx-runtime";var Na=[{type:"text",content:`
170
+ `}];break}default:{let f=s.raw.text||s.raw.subject||"";o=f?[{type:"text",content:f}]:[{type:"text",content:`
171
+ `}];break}}if(!o||o.length===0)return r;let u=a(v=>{var f,x,C;if(v.type==="meta")return[];switch(v.type){case"text":if("content"in v){let B=v.text_style==="h1"?1:v.text_style==="h2"?2:null,L={};if(v.padding){let[w,P]=v.padding.replace(/px/g,"").split(" "),S=parseInt(w),H=parseInt(P);!isNaN(S)&&!isNaN(H)&&(L={paddingVertical:S,paddingHorizontal:H})}let k={};(f=v.border)!=null&&f.enabled&&(k={...v.border.color&&{borderColor:v.border.color},...v.border.size&&{borderWidth:parseInt(v.border.size)},...v.border.radius&&{borderRadius:v.border.radius}});let E=v.content.trim()?ou(v.content):[];return[{type:B?"heading":"paragraph",attrs:{textAlign:v.align||"left",level:B,id:`node-${Qr()}`,...L,...v.color&&{textColor:v.color},...v.background_color&&{backgroundColor:v.background_color},...k},content:E}]}return[];case"action":{let L=n==="inbox"?{backgroundColor:"#000000",textColor:"#ffffff",borderColor:"#000000",borderWidth:1,borderRadius:4}:{};return[{type:"button",attrs:{label:v.content,link:v.href,alignment:v.align==="full"?"center":v.align||"center",size:v.align==="full"?"full":"default",style:v.style,id:`node-${Qr()}`,...L,...v.background_color&&{backgroundColor:v.background_color},...v.color&&{textColor:v.color},...v.padding&&{padding:parseInt(v.padding)},...((x=v.border)==null?void 0:x.enabled)&&{...v.border.color&&{borderColor:v.border.color},...v.border.size&&{borderWidth:parseInt(v.border.size)},...v.border.radius&&{borderRadius:v.border.radius}}}}]}case"quote":return[{type:"blockquote",attrs:{textAlign:v.align||"left",id:`node-${Qr()}`,...v.border_color&&{borderColor:v.border_color}},content:[{type:"paragraph",attrs:{textAlign:v.align||"left",id:`node-${Qr()}`},content:ou(v.content)}]}];case"image":return[{type:"imageBlock",attrs:{sourcePath:v.src,id:`node-${Qr()}`,...v.href&&{link:v.href},...v.align&&{alignment:v.align},...v.alt_text&&{alt:v.alt_text},...v.width&&{width:parseInt(v.width.replace(/%|px/,""))},...((C=v.border)==null?void 0:C.enabled)&&{...v.border.color&&{borderColor:v.border.color},...v.border.size&&{borderWidth:parseInt(v.border.size)},...v.border.radius&&{borderRadius:parseInt(v.border.radius)}}}}];case"divider":return[{type:"divider",attrs:{id:`node-${Qr()}`,...v.dividerColor&&{color:v.dividerColor},...v.borderWidth&&{size:parseInt(v.borderWidth)},...v.padding&&{padding:parseInt(v.padding)},variant:v.dividerColor==="transparent"?"spacer":"divider"}}];case"html":return[{type:"customCode",attrs:{id:`node-${Qr()}`,code:v.content||"<!-- Add your HTML code here -->"}}];default:return[]}},"convertNode"),l=[],d=o.flatMap(u);for(let v=0;v<d.length;v++){let f=d[v],x=d[v+1];if(f.type==="button"&&(x==null?void 0:x.type)==="button"&&n==="inbox"){let C={type:"buttonRow",attrs:{id:`node-${Qr()}`,button1Label:((c=f.attrs)==null?void 0:c.label)||"Button 1",button1Link:((p=f.attrs)==null?void 0:p.link)||"",button1BackgroundColor:((m=f.attrs)==null?void 0:m.backgroundColor)||"#000000",button1TextColor:((g=f.attrs)==null?void 0:g.textColor)||"#ffffff",button2Label:((b=x.attrs)==null?void 0:b.label)||"Button 2",button2Link:((h=x.attrs)==null?void 0:h.link)||"",button2BackgroundColor:((y=x.attrs)==null?void 0:y.backgroundColor)||"#ffffff",button2TextColor:((T=x.attrs)==null?void 0:T.textColor)||"#000000",padding:((N=f.attrs)==null?void 0:N.padding)||6}};l.push(C),v++}else l.push(f)}return{type:"doc",content:l}}a(xt,"convertElementalToTiptap");function au(e,t){t.length!==0&&e.forEach(r=>{r.marks=r.marks||[],t.forEach(o=>{var n,i;(n=r.marks)!=null&&n.some(s=>s.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(au,"applyMarks");function su(e,t,r){if(!e)return;let o=/{{([^}]+)}}/g,n,i=0;for(;(n=o.exec(e))!==null;){if(n.index>i){let s=e.substring(i,n.index);r.push({type:"text",text:s,...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 s=e.substring(i);r.push({type:"text",text:s,...t.length>0&&{marks:t}})}}a(su,"parseTextWithVariables");function cs(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 d=0,c=/(\*\*|\*|__|_|~|\+|{{[^}]+}})/g,p=l.text,m;for(;(m=c.exec(p))!==null;){let g=m.index,b=m[0],h=g+b.length;if(g>d&&i.push({type:"text",text:p.substring(d,g),start:l.start+d,end:l.start+g}),b.startsWith("{{")){let y=b.slice(2,-2);i.push({type:"variable",text:b,start:l.start+g,end:l.start+h,attrs:{id:y}})}else i.push({type:"marker",text:b,start:l.start+g,end:l.start+h});d=h}d<p.length&&i.push({type:"text",text:p.substring(d),start:l.start+d,end:l.start+p.length})}i.sort((l,d)=>l.start-d.start);let s=[],u=[];for(let l of i)if(l.type==="text"){let d=[];su(l.text,[],d),au(d,s),u.push(...d)}else if(l.type==="variable"){let d={type:"variable",attrs:l.attrs};au([d],s),u.push(d)}else if(l.type==="link"){let d=[];su(l.text,[],d),d.forEach(c=>{var p;c.marks=c.marks||[],c.marks.push({type:"link",attrs:{href:(p=l.attrs)==null?void 0:p.href}})}),u.push(...d)}else if(l.type==="marker"){let d=l.text;if(["**","*","__","_","~","+"].includes(d)){let c=d==="**"||d==="__"?"bold":d==="*"||d==="_"?"italic":d==="~"?"strike":"underline",p=s.findLastIndex(m=>m.text===d);p!==-1?s.splice(p,1):s.push({type:c,text:d,start:l.start})}}return u}a(cs,"processMarkdownFormatting");function Yf(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:cs(n[2])});continue}if(o.startsWith(">")){let s=o.slice(1).trim();t.push({type:"blockquote",attrs:{textAlign:"left"},content:[{type:"paragraph",attrs:{textAlign:"left"},content:cs(s)}]});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:cs(o)})}return t}a(Yf,"parseBlockContent");function us(e){return{type:"doc",content:Yf(e)}}a(us,"convertMarkdownToTiptap");var Qf=a(e=>{switch(e.type){case"bold":return"**";case"italic":return"*";case"strike":return"~";case"underline":return"+";default:return""}},"markToMD"),ds=a(e=>{var o,n,i,s;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 u=e.marks.map(Qf).filter(Boolean);t=u.join("")+t+u.reverse().join("")}let r=(i=e.marks)==null?void 0:i.find(u=>u.type==="link");return r&&(t=`[${t}](${(s=r.attrs)==null?void 0:s.href})`),t},"convertTextToMarkdown");function Ie(e){let t=a(r=>{var o,n,i,s,u,l,d,c,p,m,g,b,h,y,T,N,v,f,x,C,B,L,k,E,w,P,S,H,V,D,F,G,Y,se,oe,ye,xe,we,Ee,Re,at,me,Q,ve,be,ze,st,yt,lt,Be,ct,vt,Wt,tt,ut,rt,Ct,ee,Rt,zt,I,J,de,le,te,Ce,Te,M,O;switch(r.type){case"paragraph":{let R="",X=r.content||[];for(let ue=0;ue<X.length;ue++)X[ue].type==="hardBreak"?R+=`
172
+ `:R+=ds(X[ue]);R+=`
173
+ `;let W={};if((o=r.attrs)!=null&&o.borderWidth||(n=r.attrs)!=null&&n.borderColor||(i=r.attrs)!=null&&i.borderRadius){let ue={};(s=r.attrs)!=null&&s.borderColor&&(ue.color=r.attrs.borderColor),ue.enabled=!0,(u=r.attrs)!=null&&u.borderWidth&&(ue.size=`${r.attrs.borderWidth}px`),(l=r.attrs)!=null&&l.borderRadius&&(ue.radius=r.attrs.borderRadius),W.border=ue}return((d=r.attrs)==null?void 0:d.paddingVertical)!==void 0&&((c=r.attrs)==null?void 0:c.paddingHorizontal)!==void 0&&(W.padding=`${r.attrs.paddingVertical}px ${r.attrs.paddingHorizontal}px`),(p=r.attrs)!=null&&p.textColor&&(W.color=r.attrs.textColor),(m=r.attrs)!=null&&m.backgroundColor&&(W.background_color=r.attrs.backgroundColor),W.type="text",W.align=((g=r.attrs)==null?void 0:g.textAlign)||"left",W.content=R,[W]}case"heading":{let R="",X=r.content||[];for(let ue=0;ue<X.length;ue++)X[ue].type==="hardBreak"?R+=`
174
+ `:R+=ds(X[ue]);R+=`
175
+ `;let W={};if((b=r.attrs)!=null&&b.borderWidth||(h=r.attrs)!=null&&h.borderColor||(y=r.attrs)!=null&&y.borderRadius){let ue={};(T=r.attrs)!=null&&T.borderColor&&(ue.color=r.attrs.borderColor),ue.enabled=!0,(N=r.attrs)!=null&&N.borderWidth&&(ue.size=`${r.attrs.borderWidth}px`),(v=r.attrs)!=null&&v.borderRadius&&(ue.radius=r.attrs.borderRadius),W.border=ue}return W.text_style=((f=r.attrs)==null?void 0:f.level)===1?"h1":"h2",((x=r.attrs)==null?void 0:x.paddingVertical)!==void 0&&((C=r.attrs)==null?void 0:C.paddingHorizontal)!==void 0&&(W.padding=`${r.attrs.paddingVertical}px ${r.attrs.paddingHorizontal}px`),(B=r.attrs)!=null&&B.textColor&&(W.color=r.attrs.textColor),(L=r.attrs)!=null&&L.backgroundColor&&(W.background_color=r.attrs.backgroundColor),W.type="text",W.align=((k=r.attrs)==null?void 0:k.textAlign)||"left",W.content=R,[W]}case"blockquote":{let R="";if(r.content)for(let W of r.content)W.content&&(R+=W.content.map(ds).join("")),R+=`
176
+ `;R=R.trim();let X={type:"quote",content:R};return((E=r.attrs)==null?void 0:E.textAlign)!=="left"&&(X.align=(w=r.attrs)==null?void 0:w.textAlign),(P=r.attrs)!=null&&P.borderColor&&(X.border_color=r.attrs.borderColor),[X]}case"imageBlock":{let R={};if((S=r.attrs)!=null&&S.width&&(typeof r.attrs.width=="number"?R.width=`${r.attrs.width}%`:R.width=`${r.attrs.width}%`),(H=r.attrs)!=null&&H.borderWidth||(V=r.attrs)!=null&&V.borderColor||(D=r.attrs)!=null&&D.borderRadius){let W={};(F=r.attrs)!=null&&F.borderColor&&(W.color=r.attrs.borderColor),W.enabled=!0,(G=r.attrs)!=null&&G.borderWidth&&(W.size=`${r.attrs.borderWidth}px`),(Y=r.attrs)!=null&&Y.borderRadius&&(W.radius=`${r.attrs.borderRadius}px`),R.border=W}return R.type="image",R.src=((se=r.attrs)==null?void 0:se.sourcePath)||"",(oe=r.attrs)!=null&&oe.alignment&&(R.align=r.attrs.alignment),(ye=r.attrs)!=null&&ye.link&&(R.href=r.attrs.link),(xe=r.attrs)!=null&&xe.alt&&(R.alt_text=r.attrs.alt),[R]}case"divider":{let R={type:"divider"};return(we=r.attrs)!=null&&we.color&&(R.dividerColor=r.attrs.color),(Ee=r.attrs)!=null&&Ee.size&&(R.borderWidth=`${r.attrs.size}px`),(Re=r.attrs)!=null&&Re.padding&&(R.padding=`${r.attrs.padding}px`),[R]}case"button":{let R={type:"action",content:(me=(at=r.attrs)==null?void 0:at.label)!=null?me:"",href:(ve=(Q=r.attrs)==null?void 0:Q.link)!=null?ve:"#"};return(be=r.attrs)!=null&&be.style&&(R.style=r.attrs.style),R.align=((ze=r.attrs)==null?void 0:ze.size)==="full"?"full":((st=r.attrs)==null?void 0:st.alignment)||"center",(yt=r.attrs)!=null&&yt.backgroundColor&&(R.background_color=r.attrs.backgroundColor),(lt=r.attrs)!=null&&lt.textColor&&(R.color=r.attrs.textColor),(Be=r.attrs)!=null&&Be.padding&&(R.padding=`${r.attrs.padding}px`),((ct=r.attrs)!=null&&ct.borderWidth||(vt=r.attrs)!=null&&vt.borderColor||(Wt=r.attrs)!=null&&Wt.borderRadius)&&(R.border={enabled:!0},(tt=r.attrs)!=null&&tt.borderColor&&(R.border.color=r.attrs.borderColor),(ut=r.attrs)!=null&&ut.borderWidth&&(R.border.size=`${r.attrs.borderWidth}px`),(rt=r.attrs)!=null&&rt.borderRadius&&(R.border.radius=r.attrs.borderRadius)),[R]}case"buttonRow":{let R={type:"action",content:(ee=(Ct=r.attrs)==null?void 0:Ct.button1Label)!=null?ee:"Button 1",href:(zt=(Rt=r.attrs)==null?void 0:Rt.button1Link)!=null?zt:"#",align:"left"};(I=r.attrs)!=null&&I.button1BackgroundColor&&(R.background_color=r.attrs.button1BackgroundColor),(J=r.attrs)!=null&&J.button1TextColor&&(R.color=r.attrs.button1TextColor);let X={type:"action",content:(le=(de=r.attrs)==null?void 0:de.button2Label)!=null?le:"Button 2",href:(Ce=(te=r.attrs)==null?void 0:te.button2Link)!=null?Ce:"#",align:"left"};return(Te=r.attrs)!=null&&Te.button2BackgroundColor&&(X.background_color=r.attrs.button2BackgroundColor),(M=r.attrs)!=null&&M.button2TextColor&&(X.color=r.attrs.button2TextColor),[R,X]}case"customCode":return[{type:"html",content:((O=r.attrs)==null?void 0:O.code)||"<!-- Add your HTML code here -->"}];default:return r.content?r.content.flatMap(t):[]}},"convertNode");return e!=null&&e.content?e.content.flatMap(t):[]}a(Ie,"convertTiptapToElemental");function ps(e){let t="",r="";for(let o of e)if(!("visible"in o&&o.visible===!1)){if(o.type==="meta"&&"title"in o&&o.title)return o.title;if(o.type==="channel"&&"raw"in o&&o.raw){if("subject"in o.raw&&o.raw.subject)return o.raw.subject;if("title"in o.raw&&o.raw.title)return o.raw.title}if(o.type==="text"&&"content"in o&&o.content){let n=o.content.trim();n&&n!==`
177
+ `&&("text_style"in o&&(o.text_style==="h1"||o.text_style==="h2")?r||(r=n):t||(t=n))}if(o.type==="channel"&&"elements"in o&&o.elements){let n=ps(o.elements);if(n)return n}}return r||t||""}a(ps,"getTitle");function ms(e,t){if(!e||!e.elements)return"";let r=e.elements.find(o=>o.type==="channel"&&o.channel===t);if(!r||r.type!=="channel")return"";if("raw"in r&&r.raw){if("subject"in r.raw&&r.raw.subject)return r.raw.subject;if("title"in r.raw&&r.raw.title)return r.raw.title}if("elements"in r&&r.elements){if(t==="email"){let o=r.elements.find(n=>n.type==="meta");return o&&"title"in o&&o.title?o.title:""}return ps(r.elements)}return""}a(ms,"getTitleForChannel");function er(e,t){var s;let r=e||{version:"2022-01-01",elements:[]},o={...r,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(u=>{var l;if(u.type!=="meta")if(u.type==="channel"){let d=u,c=!1;if(n?d.channel===n&&(c=!0):i||(c=!0),c){let p={};if(t.channel&&typeof t.channel=="object")for(let g in t.channel)g!=="type"&&g!=="elements"&&g!=="channel"&&Object.prototype.hasOwnProperty.call(t.channel,g)&&(p[g]=t.channel[g]);let m={type:"channel",channel:d.channel,...Object.fromEntries(Object.entries(d).filter(([g])=>!["type","channel","elements"].includes(g))),...p};if(t.elements!==void 0){let g=[],b=t.elements.find(y=>y.type==="meta");if(b)g.push(b);else{let y=(l=d.elements)==null?void 0:l.find(T=>T.type==="meta");y&&g.push(y)}let h=t.elements.filter(y=>y.type!=="meta");g.push(...h),m.elements=g}o.elements.push(m),i=!0}else o.elements.push(u)}else o.elements.push(u)}),n&&!i||!((s=r.elements)!=null&&s.some(u=>u.type==="channel"))&&!i){let u;n?u=n:t.channel&&typeof t.channel=="object"&&t.channel.channel?u=t.channel.channel:u="email";let l={};if(t.channel&&typeof t.channel=="object")for(let c in t.channel)c!=="type"&&c!=="elements"&&c!=="channel"&&Object.prototype.hasOwnProperty.call(t.channel,c)&&(l[c]=t.channel[c]);let d={type:"channel",channel:u,...l};if(t.elements!==void 0){let c=[],p=t.elements.find(g=>g.type==="meta");p&&c.push(p);let m=t.elements.filter(g=>g.type!=="meta");c.push(...m),d.elements=c}o.elements.push(d)}return o}a(er,"updateElemental");function A(...e){return t1(e1(e))}a(A,"cn");import{Slot as r1}from"@radix-ui/react-slot";import{cva as o1}from"class-variance-authority";import{forwardRef as n1}from"react";import{jsx as i1}from"react/jsx-runtime";var Ri=o1("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"}]}),Pe=n1(({active:e,buttonSize:t="medium",disabled:r,variant:o="primary",className:n,asChild:i=!1,...s},u)=>i1(i?r1:"button",{ref:u,disabled:r,className:A(Ri({variant:o,size:t,disabled:r,active:e}),n),...s}));Pe.displayName="Button";import{forwardRef as a1}from"react";import{jsx as s1}from"react/jsx-runtime";var fe=a1((e,t)=>s1("hr",{...e,ref:t,className:A("courier-my-1 courier-border-border dark:courier-border-neutral-800",e.className)}));fe.displayName="Divider";import*as Ur from"react";import*as pe from"@radix-ui/react-dropdown-menu";import{Check as l1,ChevronRight as c1,Circle as u1}from"lucide-react";import{jsx as Nt,jsxs as fs}from"react/jsx-runtime";var Bi=pe.Root,Hi=pe.Trigger;var d1=Ur.forwardRef(({className:e,inset:t,children:r,...o},n)=>fs(pe.SubTrigger,{ref:n,className:A("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,Nt(c1,{className:"courier-ml-auto"})]}));d1.displayName=pe.SubTrigger.displayName;var p1=Ur.forwardRef(({className:e,...t},r)=>Nt(pe.SubContent,{ref:r,className:A("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}));p1.displayName=pe.SubContent.displayName;var Sn=Ur.forwardRef(({className:e,sideOffset:t=4,portalProps:r,...o},n)=>Nt(pe.Portal,{...r,children:Nt(pe.Content,{ref:n,sideOffset:t,className:A("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})}));Sn.displayName=pe.Content.displayName;var Rn=Ur.forwardRef(({className:e,inset:t,...r},o)=>Nt(pe.Item,{ref:o,className:A("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}));Rn.displayName=pe.Item.displayName;var m1=Ur.forwardRef(({className:e,children:t,checked:r,...o},n)=>fs(pe.CheckboxItem,{ref:n,className:A("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:[Nt("span",{className:"courier-absolute courier-left-2 courier-flex courier-h-3.5 courier-w-3.5 courier-items-center courier-justify-center",children:Nt(pe.ItemIndicator,{children:Nt(l1,{className:"courier-h-4 courier-w-4"})})}),t]}));m1.displayName=pe.CheckboxItem.displayName;var f1=Ur.forwardRef(({className:e,children:t,...r},o)=>fs(pe.RadioItem,{ref:o,className:A("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:[Nt("span",{className:"courier-absolute courier-left-2 courier-flex courier-h-3.5 courier-w-3.5 courier-items-center courier-justify-center",children:Nt(pe.ItemIndicator,{children:Nt(u1,{className:"courier-h-2 courier-w-2 courier-fill-current"})})}),t]}));f1.displayName=pe.RadioItem.displayName;var g1=Ur.forwardRef(({className:e,inset:t,...r},o)=>Nt(pe.Label,{ref:o,className:A("courier-px-2 courier-py-1.5 courier-text-sm courier-font-semibold",t&&"courier-pl-8",e),...r}));g1.displayName=pe.Label.displayName;var h1=Ur.forwardRef(({className:e,...t},r)=>Nt(pe.Separator,{ref:r,className:A("courier-mx-1 courier-my-1 courier-h-px courier-bg-muted",e),...t}));h1.displayName=pe.Separator.displayName;var b1=a(({className:e,...t})=>Nt("span",{className:A("courier-ml-auto courier-text-xs courier-tracking-widest courier-opacity-60",e),...t}),"DropdownMenuShortcut");b1.displayName="DropdownMenuShortcut";import{Component as y1}from"react";import{jsx as hs,jsxs as C1}from"react/jsx-runtime";var bs=class bs extends y1{constructor(t){super(t),this.state={hasError:!1}}static getDerivedStateFromError(t){return{hasError:!0,error:t}}componentDidCatch(t,r){var o,n;console.error("ErrorBoundary caught an error:",t,r),(n=(o=this.props).onError)==null||n.call(o,t,r)}render(){return this.state.hasError?this.props.fallback||hs(v1,{error:this.state.error}):this.props.children}};a(bs,"ErrorBoundary");var gs=bs,v1=a(({error:e})=>C1("div",{className:"courier-p-6 courier-border courier-border-red-200 courier-bg-red-50 courier-rounded-lg courier-text-center",children:[hs("h3",{className:"courier-text-lg courier-font-semibold courier-text-red-800 courier-mb-2",children:"Something went wrong"}),hs("p",{className:"courier-text-red-600 courier-mb-4",children:"An unexpected error occurred in the editor. Please refresh the page or contact support if the problem persists."}),!1]}),"DefaultErrorFallback");import{Slot as P1}from"@radix-ui/react-slot";import*as At from"react";import{Controller as k1,FormProvider as E1,useFormContext as M1}from"react-hook-form";import*as ys from"@radix-ui/react-label";import{cva as x1}from"class-variance-authority";import*as lu from"react";import{jsx as w1}from"react/jsx-runtime";var T1=x1("courier-text-sm courier-font-medium courier-leading-none peer-disabled:courier-cursor-not-allowed peer-disabled:courier-opacity-70"),vs=lu.forwardRef(({className:e,...t},r)=>w1(ys.Root,{ref:r,className:A(T1(),e),...t}));vs.displayName=ys.Root.displayName;import{jsx as eo}from"react/jsx-runtime";var Ze=E1,cu=At.createContext({}),U=a(({...e})=>eo(cu.Provider,{value:{name:e.name},children:eo(k1,{...e})}),"FormField"),Di=a(()=>{let e=At.useContext(cu),t=At.useContext(uu),{getFieldState:r,formState:o}=M1(),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"),uu=At.createContext({}),z=At.forwardRef(({className:e,...t},r)=>{let o=At.useId();return eo(uu.Provider,{value:{id:o},children:eo("div",{ref:r,className:A("courier-space-y-2",e),...t})})});z.displayName="FormItem";var _t=At.forwardRef(({className:e,...t},r)=>{let{error:o,formItemId:n}=Di();return eo(vs,{ref:r,className:A(o&&"courier-text-destructive",e),htmlFor:n,...t})});_t.displayName="FormLabel";var $=At.forwardRef(({...e},t)=>{let{error:r,formItemId:o,formDescriptionId:n,formMessageId:i}=Di();return eo(P1,{ref:t,id:o,"aria-describedby":r?`${n} ${i}`:`${n}`,"aria-invalid":!!r,...e})});$.displayName="FormControl";var N1=At.forwardRef(({className:e,...t},r)=>{let{formDescriptionId:o}=Di();return eo("p",{ref:r,id:o,className:A("courier-text-[0.8rem] courier-text-muted-foreground",e),...t})});N1.displayName="FormDescription";var _=At.forwardRef(({className:e,children:t,...r},o)=>{let{error:n,formMessageId:i}=Di(),s=n?String(n==null?void 0:n.message):t;return s?eo("p",{ref:o,id:i,className:A("courier-text-[0.8rem] courier-font-medium courier-text-destructive",e),...r,children:s}):null});_.displayName="FormMessage";import*as Ne from"@radix-ui/react-alert-dialog";import*as ho from"react";import{useCallback as A1}from"react";import{jsx as yr,jsxs as R1}from"react/jsx-runtime";var du=Ne.Root,pu=Ne.Trigger,L1=Ne.Portal,mu=ho.forwardRef(({className:e,...t},r)=>yr("div",{className:"courier-absolute courier-inset-0 courier-z-50 courier-bg-[#0a0a0a52] 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",children:yr(Ne.Overlay,{asChild:!0,className:A("courier-fixed courier-inset-0 courier-z-50 courier-bg-black/80 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",e),...t,ref:r})}));mu.displayName=Ne.Overlay.displayName;var Cs=ho.forwardRef(({className:e,...t},r)=>{let o=A1(()=>{var i;let n=(i=r==null?void 0:r.current)==null?void 0:i.parentElement;for(;n;){if(n.classList.contains("theme-container"))return n;n=n.parentElement}return document.body},[r]);return R1(L1,{container:typeof window!="undefined"?o():void 0,children:[yr(mu,{}),yr(Ne.Content,{ref:r,className:A("courier-fixed courier-left-[50%] courier-top-[50%] courier-z-50 courier-grid courier-w-full courier-max-w-lg courier-translate-x-[-50%] courier-translate-y-[-50%] courier-gap-4 courier-border courier-bg-background courier-p-6 courier-shadow-lg courier-duration-200 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-[state=closed]:courier-slide-out-to-left-1/2 data-[state=closed]:courier-slide-out-to-top-[48%] data-[state=open]:courier-slide-in-from-left-1/2 data-[state=open]:courier-slide-in-from-top-[48%] sm:courier-rounded-lg",e),...t})]})});Cs.displayName=Ne.Content.displayName;var xs=a(({className:e,...t})=>yr("div",{className:A("courier-flex courier-flex-col courier-space-y-2 courier-text-center sm:courier-text-left",e),...t}),"AlertDialogHeader");xs.displayName="AlertDialogHeader";var Ts=a(({className:e,...t})=>yr("div",{className:A("courier-flex courier-flex-col-reverse sm:courier-flex-row sm:courier-justify-end sm:courier-space-x-2",e),...t}),"AlertDialogFooter");Ts.displayName="AlertDialogFooter";var I1=ho.forwardRef(({className:e,...t},r)=>yr(Ne.Title,{ref:r,className:A("courier-text-lg courier-font-semibold",e),...t}));I1.displayName=Ne.Title.displayName;var S1=ho.forwardRef(({className:e,...t},r)=>yr(Ne.Description,{ref:r,className:A("courier-text-sm courier-text-muted-foreground",e),...t}));S1.displayName=Ne.Description.displayName;var ws=ho.forwardRef(({className:e,...t},r)=>yr(Ne.Action,{ref:r,className:A(Ri(),e),...t}));ws.displayName=Ne.Action.displayName;var Ps=ho.forwardRef(({className:e,...t},r)=>yr(Ne.Cancel,{ref:r,className:A(Ri({variant:"outline"}),"courier-mt-2 sm:courier-mt-0",e),...t}));Ps.displayName=Ne.Cancel.displayName;import*as fu from"react";import{jsx as ks,jsxs as B1}from"react/jsx-runtime";var ae=fu.forwardRef(({className:e,type:t,startAdornment:r,endAdornment:o,...n},i)=>B1("div",{className:"courier-relative courier-flex courier-w-full courier-items-center",children:[r&&ks("div",{className:"courier-absolute courier-left-2 courier-flex courier-items-center courier-pointer-events-none",children:r}),ks("input",{type:t,className:A("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&&ks("div",{className:"courier-absolute courier-right-2 courier-flex courier-items-center courier-pointer-events-none",children:o})]}));ae.displayName="Input";import{forwardRef as V1,useRef as O1,useMemo as W1,useCallback as z1}from"react";import{useCallback as Es,useEffect as gu,useRef as Fi,useState as hu}from"react";import{CircleX as H1}from"lucide-react";import{jsx as vr,jsxs as bu}from"react/jsx-runtime";var D1=a(e=>e==="transparent"||/^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/.test(e),"isValidHex"),yu=a(({color:e,onChange:t,className:r,presetColors:o,defaultValue:n="transparent"})=>{let[i,s]=hu(()=>Bn(e)),[u,l]=hu(e),d=Fi(null),c=Fi(null),p=Fi(null),m=Fi(!1),g=e!==n,b=Es(v=>{m.current=!0;let f=F1(v);l(f),t(f),m.current=!1},[t]),h=a(v=>f=>{p.current=v,y(f)},"handleMouseDown"),y=Es(v=>{if(p.current){if(p.current==="gradient"&&d.current){let f=d.current.getBoundingClientRect(),x=Math.max(0,Math.min(1,(v.clientX-f.left)/f.width)),C=Math.max(0,Math.min(1,(v.clientY-f.top)/f.height)),B={...i,s:x*100,v:(1-C)*100};s(B),b(B)}else if(p.current==="hue"&&c.current){let f=c.current.getBoundingClientRect(),x=Math.max(0,Math.min(1,(v.clientX-f.left)/f.width)),C={...i,h:x*360};s(C),b(C)}}},[i,b]),T=Es(()=>{p.current=null},[]);gu(()=>{if(p.current)return window.addEventListener("mousemove",y),window.addEventListener("mouseup",T),()=>{window.removeEventListener("mousemove",y),window.removeEventListener("mouseup",T)}},[y,T]),gu(()=>{m.current||(s(Bn(e)),l(e))},[e]);let N=a(v=>{let f=v.target.value;if(l(f),D1(f)){let x=Bn(f);s(x),b(x)}},"handleInputChange");return bu("div",{className:A("w-full",r),children:[vr("div",{ref:d,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:h("gradient"),children:vr("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}%`}})}),vr("div",{ref:c,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:h("hue"),children:vr("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}%`}})}),bu("div",{className:"courier-mt-3 courier-relative courier-flex courier-items-center",children:[vr(ae,{value:u,onChange:N,placeholder:"#000000",className:"courier-flex-1"}),g&&vr("button",{onClick:v=>{if(v.preventDefault(),n==="transparent"){t("transparent"),l("transparent"),s({h:0,s:0,v:0});return}let f=Bn(n);s(f),b(f)},className:"courier-absolute courier-right-3 courier-flex courier-cursor-pointer courier-items-center courier-justify-center courier-transition-colors",children:vr(H1,{size:14,strokeWidth:1.25})})]}),vr(fe,{className:"courier-my-3"}),vr("div",{className:"courier-flex courier-flex-wrap courier-gap-1",children:o.map(v=>vr("button",{className:A("courier-h-6 courier-w-6 courier-rounded-md courier-border courier-border-input courier-shrink-0",v==="transparent"&&Ms),style:{backgroundColor:v==="transparent"?void 0:v},onClick:f=>{if(f.preventDefault(),v==="transparent"){t("transparent"),l("transparent"),s({h:0,s:0,v:0});return}let x=Bn(v);s(x),b(x)}},v))})]})},"ColorPicker");function Bn(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),s=n-i,u=0,l=n===0?0:s/n,d=n;if(n!==i){switch(n){case t:u=(r-o)/s+(r<o?6:0);break;case r:u=(o-t)/s+2;break;case o:u=(t-r)/s+4;break}u/=6}return{h:u*360,s:l*100,v:d*100}}a(Bn,"hexToHsv");function F1({h:e,s:t,v:r}){t/=100,r/=100,e=e%360/360;let o=a(u=>{let l=(u+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),s=Math.round(o(1)*255);return`#${[n,i,s].map(u=>u.toString(16).padStart(2,"0")).join("")}`}a(F1,"hsvToHex");import*as Cr from"@radix-ui/react-popover";import*as Cu from"react";import{jsx as vu}from"react/jsx-runtime";var xu=Cr.Root,Tu=Cr.Trigger;var Ns=Cu.forwardRef(({className:e,align:t="center",side:r="bottom",sideOffset:o=4,collisionPadding:n=10,avoidCollisions:i=!0,portalProps:s,...u},l)=>vu(Cr.Portal,{...s,children:vu(Cr.Content,{ref:l,side:r,align:t,sideOffset:o,collisionPadding:n,avoidCollisions:i,className:A("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),...u})}));Ns.displayName=Cr.Content.displayName;import{jsx as Hn,jsxs as wu}from"react/jsx-runtime";var Ms="bg-[url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNOCAwSDBWOEg4VjBaIiBmaWxsPSIjRDlEOUQ5Ii8+PHBhdGggZD0iTTE2IDhIOFYxNkgxNlY4WiIgZmlsbD0iI0Q5RDlEOSIvPjwvc3ZnPg==')]",$1=["#ef4444","#f97316","#eab308","#22c55e","#14b8a6","#06b6d4","#3b82f6","#6366f1","#8b5cf6","#000000","#525252","#a3a3a3","#ffffff","transparent"],qe=V1(({className:e,value:t="",onChange:r,defaultValue:o,transparent:n=!0,presetColors:i=$1,...s},u)=>{let l=t!=="transparent",d=O1(null),c=W1(()=>n?i:i.filter(m=>m!=="transparent"),[i,n]),p=z1(()=>{var g;let m=(g=d.current)==null?void 0:g.parentElement;for(;m;){if(m.classList.contains("theme-container"))return m;m=m.parentElement}return document.body},[]);return wu(xu,{children:[Hn(Tu,{asChild:!0,children:wu("div",{className:"courier-relative courier-flex courier-items-center",ref:d,children:[Hn("div",{className:A("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?"":Ms),style:{backgroundColor:l?t:void 0}}),Hn(ae,{...s,ref:u,readOnly:!0,type:"text",value:t==="transparent"?"Transparent":t,className:A("courier-relative courier-cursor-pointer courier-pl-8",e)})]})}),Hn(Ns,{portalProps:{container:typeof window!="undefined"?p():void 0},className:"courier-w-[230px]",children:Hn(yu,{color:t,onChange:r,presetColors:c,defaultValue:o})})]})});qe.displayName="InputColor";import*as Pu from"react";import*as As from"@radix-ui/react-separator";import{jsx as U1}from"react/jsx-runtime";var Ls=Pu.forwardRef(({className:e,orientation:t="horizontal",decorative:r=!0,...o},n)=>U1(As.Root,{ref:n,decorative:r,orientation:t,className:A("courier-shrink-0 courier-bg-border",t==="horizontal"?"courier-h-[1px] courier-w-full":"courier-h-full courier-w-[1px]",e),...o}));Ls.displayName=As.Root.displayName;import*as ku from"react";import*as _r from"@radix-ui/react-slider";import{jsx as Is,jsxs as _1}from"react/jsx-runtime";var Ss=ku.forwardRef(({className:e,...t},r)=>_1(_r.Root,{ref:r,className:A("courier-relative courier-flex courier-w-full courier-touch-none courier-select-none courier-items-center",e),...t,children:[Is(_r.Track,{className:"courier-relative courier-h-1.5 courier-w-full courier-grow courier-overflow-hidden courier-rounded-full courier-bg-secondary",children:Is(_r.Range,{className:"courier-absolute courier-h-full courier-bg-accent-foreground"})}),Is(_r.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"})]}));Ss.displayName=_r.Root.displayName;import*as Mu from"react";import*as Dn from"@radix-ui/react-switch";import{jsx as Eu}from"react/jsx-runtime";var Ko=Mu.forwardRef(({className:e,...t},r)=>Eu(Dn.Root,{className:A("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:Eu(Dn.Thumb,{className:A("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")})}));Ko.displayName=Dn.Root.displayName;import*as Vi from"react";import*as tr from"@radix-ui/react-tabs";import{jsx as Rs}from"react/jsx-runtime";var Oi=tr.Root,Fn=Vi.forwardRef(({className:e,...t},r)=>Rs(tr.List,{ref:r,className:A("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=tr.List.displayName;var Jo=Vi.forwardRef(({className:e,...t},r)=>Rs(tr.Trigger,{ref:r,className:A("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}));Jo.displayName=tr.Trigger.displayName;var Wi=Vi.forwardRef(({className:e,...t},r)=>Rs(tr.Content,{ref:r,className:A("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}));Wi.displayName=tr.Content.displayName;import*as Xo from"react";import{jsx as Z1}from"react/jsx-runtime";var Bs=Xo.forwardRef(({className:e,autoResize:t=!1,...r},o)=>{let n=Xo.useRef(null),i=a(s=>{n.current=s,typeof o=="function"?o(s):o&&(o.current=s)},"combinedRef");return Xo.useEffect(()=>{if(!t)return;let s=n.current;if(!s)return;let u=a(()=>{s.style.height="auto",s.style.height=`${s.scrollHeight}px`},"adjustHeight");return u(),s.addEventListener("input",u),()=>{s.removeEventListener("input",u)}},[t]),Z1("textarea",{className:A("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})});Bs.displayName="Textarea";import{forwardRef as j1,useContext as o8}from"react";import{createContext as q1}from"react";var zi={colorScheme:"light",background:"#ffffff",foreground:"#404040",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"},Nu={...zi},Au={...zi,colorScheme:"dark",foreground:"#d4d4d4",background:"#262626",card:"#262626",primary:"#262626"};var Lu=q1(zi);import{jsx as Iu}from"react/jsx-runtime";var Su=j1(({children:e,theme:t,dataMode:r="light",className:o},n)=>{let i=r==="light"?Nu:Au,s=i;t&&(s=typeof t=="string"?t:{...i,...t});let u=typeof t=="string"?{}:Object.entries(s).reduce((l,[d,c])=>{let p=d.replace(/[A-Z]/g,m=>`-${m.toLowerCase()}`);return{...l,[`--${p}`]:c}},{});return Iu(Lu.Provider,{value:typeof s=="object"?s:{},children:Iu("div",{style:u,className:A("courier-flex courier-flex-col courier-relative",typeof t=="string"?t:"","theme-container",o),ref:n,children:e})})});import*as Ru from"react";import*as Hs from"@radix-ui/react-toggle";import{cva as G1}from"class-variance-authority";import{jsx as J1}from"react/jsx-runtime";var Ds=G1("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"}}),K1=Ru.forwardRef(({className:e,variant:t,size:r,...o},n)=>J1(Hs.Root,{ref:n,className:A(Ds({variant:t,size:r,className:e})),...o}));K1.displayName=Hs.Root.displayName;import*as Yo from"@radix-ui/react-toggle-group";import*as bo from"react";import{jsx as Fs}from"react/jsx-runtime";var Bu=bo.createContext({size:"default",variant:"default"}),Ht=bo.forwardRef(({className:e,variant:t,size:r,children:o,...n},i)=>Fs(Yo.Root,{ref:i,className:A("courier-flex courier-items-center courier-justify-center courier-gap-1",e),...n,children:Fs(Bu.Provider,{value:{variant:t,size:r},children:o})}));Ht.displayName=Yo.Root.displayName;var Ve=bo.forwardRef(({className:e,children:t,variant:r,size:o,...n},i)=>{let s=bo.useContext(Bu);return Fs(Yo.Item,{ref:i,className:A(Ds({variant:s.variant||r,size:s.size||o}),e),...n,children:t})});Ve.displayName=Yo.Item.displayName;import{jsx as Vs}from"react/jsx-runtime";var Me=a(({colorProp:e,color:t,active:r,className:o,...n})=>e==="stroke"?Vs("path",{className:A(!t&&(r?"courier-stroke-accent-foreground":"courier-stroke-ring"),o),...n}):Vs("path",{className:A(!t&&(r?"courier-fill-accent-foreground":"courier-fill-ring"),o),...n}),"Path"),K=a(({width:e=28,height:t=28,...r})=>Vs("svg",{width:e,height:t,viewBox:`0 0 ${e} ${t}`,fill:"none",...r}),"Icon");import{jsx as Os,jsxs as X1}from"react/jsx-runtime";var Hu=a(({color:e="#000000",width:t=19,height:r=10,...o})=>X1(K,{...o,width:t,height:r,children:[Os("rect",{opacity:"0.6",x:"0.553621",y:"0.876863",width:"16.4923",height:"7.87692",rx:"1.6",stroke:e,strokeWidth:"0.738462"}),Os("rect",{opacity:"0.9",x:"1.41528",y:"1.73828",width:"14.7692",height:"6.15385",rx:"0.984615",fill:e}),Os("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 Du}from"react/jsx-runtime";var Vn=a(({color:e="#DC2626",width:t=13,height:r=13,...o})=>Du(K,{...o,fill:"none",width:t,height:r,children:Du("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 Fu}from"react/jsx-runtime";var yo=a(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>Fu(K,{...n,width:r,height:o,children:Fu(Me,{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 Ws,jsxs as Y1}from"react/jsx-runtime";var rr=a(({color:e="#A3A3A3",width:t=16,height:r=16,...o})=>Y1(K,{...o,width:t,height:r,children:[Ws("rect",{y:"2.25",width:"16",height:"1.5",rx:"0.75",fill:e}),Ws("rect",{y:"5.75",width:"16",height:"2.5",rx:"1.25",fill:e}),Ws("rect",{y:"10.25",width:"16",height:"3.5",rx:"1.75",fill:e})]}),"BorderWidthIcon");import{jsx as Vu}from"react/jsx-runtime";var zs=a(({color:e,width:t=21,height:r=16,...o})=>Vu(K,{...o,width:t,height:r,children:Vu("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 Ou}from"react/jsx-runtime";var $s=a(({color:e="#171717",width:t=12,height:r=13,...o})=>Ou(K,{...o,fill:"none",width:t,height:r,children:Ou("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 Wu}from"react/jsx-runtime";var On=a(({color:e="#737373",width:t=16,height:r=16,...o})=>Wu(K,{...o,width:t,height:r,children:Wu(Me,{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 zu}from"react/jsx-runtime";var Wn=a(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>zu(K,{...n,width:r,height:o,children:zu(Me,{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 $u}from"react/jsx-runtime";var Us=a(({color:e="#737373",width:t=14,height:r=16,...o})=>$u(K,{...o,width:t,height:r,children:$u(Me,{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 Uu,jsxs as Q1}from"react/jsx-runtime";var $i=a(({color:e="#404040",width:t=18,height:r=20,...o})=>Q1(K,{...o,width:t,height:r,children:[Uu("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}),Uu("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 _u}from"react/jsx-runtime";var _s=a(({color:e="#404040",width:t=16,height:r=20,...o})=>_u(K,{...o,width:t,height:r,children:_u(Me,{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 Zu}from"react/jsx-runtime";var zn=a(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>Zu(K,{...n,width:r,height:o,children:Zu(Me,{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 qu}from"react/jsx-runtime";var $n=a(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>qu(K,{...n,width:r,height:o,children:qu(Me,{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 ju}from"react/jsx-runtime";var Un=a(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>ju(K,{...n,width:r,height:o,children:ju(Me,{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 Zs}from"react/jsx-runtime";var qs=a(({color:e,width:t=21,height:r=16,...o})=>Zs(K,{...o,width:t,height:r,children:Zs("g",{transform:"translate(4, 0)",children:Zs("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 Gu}from"react/jsx-runtime";var js=a(({color:e="#737373",width:t=14,height:r=16,...o})=>Gu(K,{...o,width:t,height:r,children:Gu(Me,{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 Ku}from"react/jsx-runtime";var _n=a(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>Ku(K,{...n,width:r,height:o,children:Ku(Me,{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 Ju}from"react/jsx-runtime";var vo=a(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>Ju(K,{...n,width:r,height:o,children:Ju(Me,{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 Xu}from"react/jsx-runtime";var Gs=a(({color:e="#404040",width:t=16,height:r=20,...o})=>Xu(K,{...o,width:t,height:r,children:Xu("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 Yu}from"react/jsx-runtime";var Ks=a(({color:e="#171717",width:t=16,height:r=13,...o})=>Yu(K,{...o,fill:"none",width:t,height:r,children:Yu("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 Qu}from"react/jsx-runtime";var Js=a(({color:e="#171717",width:t=11,height:r=12,...o})=>Qu(K,{...o,width:t,height:r,children:Qu(Me,{d:"M10.75 2.75V10.25C10.75 10.6719 10.3984 11 10 11C9.57812 11 9.25 10.6719 9.25 10.25V2.75C9.25 2.35156 9.57812 2 10 2C10.3984 2 10.75 2.35156 10.75 2.75ZM7.51562 7.03906L4.51562 10.0391C4.23438 10.3438 3.74219 10.3438 3.46094 10.0391C3.15625 9.75781 3.15625 9.26562 3.46094 8.98438L5.17188 7.25H1C0.578125 7.25 0.25 6.92188 0.25 6.5C0.25 6.10156 0.578125 5.75 1 5.75H5.17188L3.46094 4.03906C3.15625 3.75781 3.15625 3.26562 3.46094 2.98438C3.74219 2.67969 4.23438 2.67969 4.51562 2.98438L7.51562 5.98438C7.82031 6.26562 7.82031 6.75781 7.51562 7.03906Z",fill:e})}),"RightToLineIcon");import{jsx as Zn,jsxs as eg}from"react/jsx-runtime";var ed=a(({color:e="#000000",width:t=14,height:r=9,...o})=>Zn(K,{...o,width:t,height:r,children:eg("g",{opacity:"0.9",children:[Zn("rect",{x:"0.799805",y:"5.92188",width:"2.46154",height:"2.95385",rx:"0.246154",fill:e}),Zn("rect",{x:"4.24609",y:"4.44531",width:"2.46154",height:"4.43077",rx:"0.246154",fill:e}),Zn("rect",{x:"7.93823",y:"2.72266",width:"2.46154",height:"6.15385",rx:"0.246154",fill:e}),Zn("rect",{x:"11.3845",y:"0.753906",width:"2.46154",height:"8.12308",rx:"0.246154",fill:e})]})}),"SignalIcon");import{jsx as td}from"react/jsx-runtime";var Xs=a(({color:e="#404040",width:t=16,height:r=20,...o})=>td(K,{...o,width:t,height:r,children:td("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 Ui,jsxs as tg}from"react/jsx-runtime";var rd=a(({color:e="#000000",width:t=14,height:r=10,...o})=>Ui(K,{...o,width:t,height:r,children:tg("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 od}from"react/jsx-runtime";var qn=a(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>od(K,{...n,width:r,height:o,children:od(Me,{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 rg}from"lucide-react";import{useEffect as og,useState as ng,useRef as nd}from"react";import{jsx as Ys}from"react/jsx-runtime";var Co=a(({className:e})=>Ys("div",{className:A("courier-flex courier-flex-col courier-items-center courier-justify-center courier-text-ring",e),children:Ys("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:Ys("path",{d:"M21 12a9 9 0 1 1-6.219-8.56"})})}),"Loader");import{jsx as Qs,jsxs as id}from"react/jsx-runtime";var jn=a(({isError:e,isSaving:t,isLoading:r,renderIsSaving:o,renderIsError:n,renderSaved:i})=>{let[s,u]=ng(!1),l=nd(t),d=nd(null);return og(()=>(r||e||t&&t!==l.current?(d.current&&(clearTimeout(d.current),d.current=null),u(!1)):l.current===!0&&t===!1&&!e&&!r&&(u(!0),d.current&&clearTimeout(d.current),d.current=setTimeout(()=>{u(!1),d.current=null},5e3)),l.current=t,()=>{d.current&&clearTimeout(d.current)}),[t,e,r]),r||t===null?null:t?o?o(t):id("div",{className:"courier-h-12 courier-flex courier-items-center courier-px-4 courier-text-xs courier-gap-1",children:[Qs(Co,{className:"courier-w-4 courier-h-4"}),"Saving..."]}):e?n?n(e):Qs("div",{className:"courier-h-12 courier-flex courier-items-center courier-px-4 courier-text-xs courier-gap-1",children:"Error"}):s?i?i(s):id("div",{className:"courier-h-12 courier-flex courier-items-center courier-px-4 courier-text-xs courier-gap-1",children:[Qs(rg,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Saved"]}):null},"Status");import{atom as ad}from"jotai";import{jsx as _i}from"react/jsx-runtime";var Qo=[{label:"Email",value:"email",icon:_i($i,{})},{label:"SMS",value:"sms",icon:_i(Xs,{})},{label:"Push",value:"push",icon:_i(Gs,{})},{label:"In-app",value:"inbox",icon:_i($i,{})}];var Zi=ad("email"),en=ad("template");import{AlertDialogDescription as Yy}from"@radix-ui/react-alert-dialog";import{useAtom as Qy,useAtomValue as Qa,useSetAtom as ev}from"jotai";import{useCallback as yi,useEffect as tv,useRef as rv}from"react";import{atom as Dt}from"jotai";var el={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"}},qi=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 ig={paragraph:el,heading:el},Gn=Dt(ig),Ae=Dt(null),je=Dt(null,(e,t,r)=>{t(Ae,r)}),ag=Dt({ref:null,caretPosition:null}),ji=Dt({ref:null,caretPosition:null}),Kn=Dt({isFocused:!1,hasVariables:!1,showVariablePopup:!1}),sd=Dt(e=>(t,r=!1)=>{let o=e(Gn),n=e(Kn),i=qi(t,r),s=o[t],u=i;return s&&Object.keys(s).forEach(l=>{var c,p;let d=l;((c=i[d])==null?void 0:c.state)==="enabled"&&((p=s[d])==null?void 0:p.state)==="enabled"&&(u[d]=s[d])}),n.isFocused&&n.hasVariables&&(u={...u,variable:{state:"enabled"}}),u}),ld=Dt(null,(e,t,{nodeName:r,config:o})=>{let n=e(Gn);t(Gn,{...n,[r]:{...n[r],...Object.fromEntries(Object.entries(o).map(([i,s])=>[i,{state:(s==null?void 0:s.state)||"hidden"}]))}})}),rT=Dt(null,(e,t,r)=>{let o=e(Gn),{[r]:n,...i}=o;t(Gn,i)}),cd=Dt(null,(e,t,{ref:r,caretPosition:o})=>{t(ag,{ref:r,caretPosition:o})}),oT=Dt(null,(e,t,r)=>{let o=e(Kn);t(Kn,{...o,showVariablePopup:r})}),tl=Dt(null),Gi=Dt(null,(e,t,r)=>{t(tl,r)});import{useAtom as jy,useAtomValue as rf,useSetAtom as of}from"jotai";import{useCallback as nf,useEffect as Gy,useMemo as af,useRef as Ky,useState as Jy}from"react";import{atom as ud}from"jotai";var or=ud(null),xr=ud(null);import{jsx as dd,jsxs as sg}from"react/jsx-runtime";var mt=a(({draggable:e=!1,icon:t,draggableLabel:r,label:o})=>sg("div",{className:"courier-flex courier-flex-row courier-items-center courier-gap-2",children:[dd("div",{className:A("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}),dd("span",{className:"courier-text-sm courier-font-medium",children:e?r:o})]}),"BlockBase");import{jsx as Ki}from"react/jsx-runtime";var lg=a(()=>Ki("svg",{width:"20",height:"12",viewBox:"0 0 20 12",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:Ki("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"),tn=a(({draggable:e=!1})=>Ki(mt,{draggable:e,icon:Ki(lg,{}),draggableLabel:"Button",label:"Button block"}),"ButtonBlock");import{jsx as Ji}from"react/jsx-runtime";var cg=a(()=>Ji("svg",{width:"20",height:"14",viewBox:"0 0 20 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:Ji("path",{d:"M6.5 3.5L3 7L6.5 10.5M13.5 3.5L17 7L13.5 10.5M11.5 1L8.5 13",stroke:"#171717",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})}),"CustomCodeBlockIcon"),xo=a(({draggable:e=!1})=>Ji(mt,{draggable:e,icon:Ji(cg,{}),draggableLabel:"Custom code",label:"Custom code"}),"CustomCodeBlock");import{jsx as Xi}from"react/jsx-runtime";var ug=a(()=>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"),rn=a(({draggable:e=!1})=>Xi(mt,{draggable:e,icon:Xi(ug,{}),draggableLabel:"Divider",label:"Divider block"}),"DividerBlock");import{jsx as Yi}from"react/jsx-runtime";var dg=a(()=>Yi("svg",{width:"18",height:"13",viewBox:"0 0 18 13",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:Yi("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"),on=a(({draggable:e=!1})=>Yi(mt,{draggable:e,icon:Yi(dg,{}),draggableLabel:"Heading",label:"Heading block"}),"HeadingBlock");import{jsx as Qi}from"react/jsx-runtime";var pg=a(()=>Qi("svg",{width:"16",height:"14",viewBox:"0 0 16 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:Qi("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"),nn=a(({draggable:e=!1})=>Qi(mt,{draggable:e,icon:Qi(pg,{}),draggableLabel:"Image",label:"Image block"}),"ImageBlock");import{AlignVerticalSpaceAround as mg}from"lucide-react";import{jsx as pd}from"react/jsx-runtime";var an=a(({draggable:e=!1})=>pd(mt,{draggable:e,icon:pd(mg,{className:"courier-w-4 courier-h-4"}),draggableLabel:"Spacer",label:"Spacer block"}),"SpacerBlock");import{jsx as ea}from"react/jsx-runtime";var fg=a(()=>ea("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:ea("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"),sn=a(({draggable:e=!1})=>ea(mt,{draggable:e,icon:ea(fg,{}),draggableLabel:"Text",label:"Text block"}),"TextBlock");import{forwardRef as gg}from"react";import{Toaster as hg}from"sonner";import{jsx as Jn,jsxs as bg}from"react/jsx-runtime";var Tr=gg(({theme:e,children:t,isLoading:r,Header:o,dataMode:n="light",className:i,...s},u)=>Jn(Su,{theme:e,ref:u,dataMode:n,className:i,children:bg("div",{...Object.fromEntries(Object.entries(s).filter(([l])=>l!=="variables")),className:"courier-main-layout",children:[o&&Jn("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 courier-self-stretch dark:courier-bg-primary",children:o}),r&&Jn("div",{className:"courier-editor-loading",children:Jn(Co,{})}),Jn(hg,{position:"top-center",expand:!0,visibleToasts:2,style:{position:"absolute",top:"10px",left:"50%",transform:"translateX(-50%)"}}),t]})}));import{closestCenter as sm,DndContext as O2,DragOverlay as W2,getFirstCollision as z2,KeyboardSensor as $2,MeasuringStrategy as U2,MouseSensor as _2,pointerWithin as Z2,rectIntersection as q2,TouchSensor as j2,useSensor as Gl,useSensors as G2}from"@dnd-kit/core";import{arrayMove as K2,verticalListSortingStrategy as J2}from"@dnd-kit/sortable";import{useAtom as Kl,useAtomValue as Fo,useSetAtom as X2}from"jotai";import{forwardRef as Y2,memo as Q2,useCallback as Jt,useEffect as Ir,useMemo as Jl,useRef as so,useState as yn}from"react";import{Color as Qp}from"@tiptap/extension-color";import{Extension as yg}from"@tiptap/core";import{dropCursor as vg}from"@tiptap/pm/dropcursor";var rl=yg.create({name:"dropCursor",addOptions(){return{color:"currentColor",width:1,class:void 0}},addProseMirrorPlugins(){return[vg(this.options)]}});import{HardBreak as em}from"@tiptap/extension-hard-break";import{Extension as Cg}from"@tiptap/core";import{undo as xg,redo as Tg,history as wg}from"@tiptap/pm/history";var Pg=Cg.create({name:"history",addOptions(){return{depth:100,newGroupDelay:500}},addCommands(){return{undo:()=>({state:e,dispatch:t})=>xg(e,t),redo:()=>({state:e,dispatch:t})=>Tg(e,t)}},addProseMirrorPlugins(){return[wg(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 tm}from"@tiptap/extension-placeholder";import{TextAlign as rm}from"@tiptap/extension-text-align";import{Typography as om}from"@tiptap/extension-typography";import{Underline as nm}from"@tiptap/extension-underline";import{StarterKit as im}from"@tiptap/starter-kit";import{mergeAttributes as jg}from"@tiptap/core";import{Node as kg,mergeAttributes as Eg,wrappingInputRule as Mg}from"@tiptap/core";var Ng=/^\s*>\s$/,md=kg.create({name:"blockquote",addOptions(){return{HTMLAttributes:{}}},content:"block+",group:"block",defining:!0,parseHTML(){return[{tag:"blockquote"}]},renderHTML({HTMLAttributes:e}){return["blockquote",Eg(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[Mg({find:Ng,type:this.type})]}});import{ReactNodeViewRenderer as Gg}from"@tiptap/react";import{v4 as Ag}from"uuid";function ft(e,t){let r=e.state.tr,o=!1;e.state.doc.descendants((n,i)=>{if(n.type.name===t&&!n.attrs.id){let s=`node-${Ag()}`;r.setNodeMarkup(i,void 0,{...n.attrs,id:s}),o=!0}return!1}),o&&e.view.dispatch(r)}a(ft,"generateNodeIds");import{useSortable as Bg}from"@dnd-kit/sortable";import{NodeViewWrapper as Hg}from"@tiptap/react";import{useSetAtom as Dg}from"jotai";import{forwardRef as Fg,useCallback as Xn,useEffect as hd,useState as Vg}from"react";import{v4 as Og}from"uuid";import{GripVertical as Lg}from"lucide-react";import{forwardRef as Ig}from"react";import{jsx as fd}from"react/jsx-runtime";var gd=Ig((e,t)=>fd("button",{...e,ref:t,"data-cypress":"draggable-handle",className:A("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:fd(Lg,{strokeWidth:1,className:"courier-w-5 courier-stroke-ring courier-fill-ring"})}));import{useAtomValue as Sg,useSetAtom as Rg}from"jotai";import{useCallback as Ft}from"react";var ta=a(e=>{let t=Rg(je),r=Sg(Ae),o=Ft(y=>{let T=-1;return e.state.doc.descendants((N,v)=>{var f;return((f=N.attrs)==null?void 0:f.id)===y?(T=v,!1):!0}),T},[e]),n=Ft((y,T)=>{var N,v,f;if(((N=r==null?void 0:r.type)==null?void 0:N.name)==="button"&&((v=r.attrs)!=null&&v.id)){let x=r.attrs.id,C=o(x);if(C>=0){let B=e.state.tr;return B.setNodeMarkup(C,void 0,{...(f=e.state.doc.nodeAt(C))==null?void 0:f.attrs,[y]:T}),e.view.dispatch(B),setTimeout(()=>{let L=o(x);if(L>=0){let k=e.state.doc.nodeAt(L);k&&t(k)}},0),!0}}return!1},[e,r,o,t]),i=Ft(()=>{var y,T;if(((y=r==null?void 0:r.type)==null?void 0:y.name)==="button"&&((T=r.attrs)!=null&&T.id)){let N=r.attrs.id,v=o(N);if(v>=0){let f=e.state.doc.nodeAt(v);if(!f)return!1;let x={...f.attrs,fontWeight:"normal",fontStyle:"normal",isUnderline:!1,isStrike:!1},C=e.state.tr;return C.setNodeMarkup(v,void 0,x),e.view.dispatch(C),setTimeout(()=>{let B=o(N);if(B>=0){let L=e.state.doc.nodeAt(B);L&&t(L)}},0),!0}}return!1},[e,r,o,t]),s=Ft(()=>{var y;if(((y=r==null?void 0:r.type)==null?void 0:y.name)==="button"){let T=r.attrs.fontWeight==="bold"?"normal":"bold";if(n("fontWeight",T))return!0}return e.chain().focus().toggleBold().run()},[e,r,n]),u=Ft(()=>{var y;if(((y=r==null?void 0:r.type)==null?void 0:y.name)==="button"){let T=r.attrs.fontStyle==="italic"?"normal":"italic";if(n("fontStyle",T))return!0}return e.chain().focus().toggleItalic().run()},[e,r,n]),l=Ft(()=>{var y;if(((y=r==null?void 0:r.type)==null?void 0:y.name)==="button"){let T=!r.attrs.isStrike;if(n("isStrike",T))return!0}return e.chain().focus().toggleMark("strike").run()},[e,r,n]),d=Ft(()=>{var y;if(((y=r==null?void 0:r.type)==null?void 0:y.name)==="button"){let T=!r.attrs.isUnderline;if(n("isUnderline",T))return!0}return e.chain().focus().toggleMark("underline").run()},[e,r,n]),c=Ft(()=>e.chain().focus().setTextAlign("left").run(),[e]),p=Ft(()=>e.chain().focus().setTextAlign("center").run(),[e]),m=Ft(()=>e.chain().focus().setTextAlign("right").run(),[e]),g=Ft(()=>e.chain().focus().setTextAlign("justify").run(),[e]),b=Ft((y,T)=>e.chain().focus().setLink({href:y,target:T?"_blank":""}).run(),[e]),h=Ft(()=>{let y=e.isActive("blockquote");if(e.chain().focus().toggleBlockquote().run()){let{selection:v}=e.state,f=v.$anchor;if(y){let x=f.node();(x.type.name==="paragraph"||x.type.name==="heading")&&t(x)}else for(let x=f.depth;x>0;x--){let C=f.node(x);if(C.type.name==="blockquote"){t(C);break}}}},[e,t]);return{onBold:s,onItalic:u,onStrike:l,onUnderline:d,onAlignLeft:c,onAlignCenter:p,onAlignRight:m,onAlignJustify:g,onLink:b,onQuote:h,resetButtonFormatting:i}},"useTextmenuCommands");import{Fragment as $g,jsx as wr,jsxs as ol}from"react/jsx-runtime";function Wg(){let[e,t]=Vg(!1);return hd(()=>{let r=setTimeout(()=>t(!0),500);return()=>clearTimeout(r)},[]),e}a(Wg,"useMountStatus");var Lt=a(({children:e,id:t,className:r,...o})=>{let{setNodeRef:n,setActivatorNodeRef:i,listeners:s,isDragging:u,transform:l,transition:d}=Bg({id:t}),c=Wg();return wr(zg,{ref:n,id:t,transition:d,transform:l,fadeIn:u&&!c,listeners:s,className:r,handleProps:{ref:i},...o,children:e})},"SortableItemWrapper"),zg=Fg(({children:e,className:t,dragOverlay:r,handleProps:o,listeners:n,id:i,transition:s,transform:u,editor:l,fadeIn:d,...c},p)=>{hd(()=>{if(r)return document.body.style.cursor="grabbing",()=>{document.body.style.cursor=""}},[r]);let m=Dg(Ae),{resetButtonFormatting:g}=ta(l),b=a((x,C)=>{let B=null;return x.doc.descendants((L,k)=>{var E;return B!==null?!1:((E=L.attrs)==null?void 0:E.id)===C?(B=k,!1):!0}),B},"findNodePositionById"),h=Xn(()=>{if(!l||!i)return{node:null,pos:null};let x=b(l.state,i);return x===null?{node:null,pos:null}:{node:l.state.doc.nodeAt(x),pos:x}},[l,i]),y=Xn(()=>{l.commands.blur(),m(null)},[l,m]),T=Xn(()=>{if(!(!l||!i))try{y(),setTimeout(()=>{let{node:x,pos:C}=h();if(!x||C===null)return;let B=l.state.doc.childCount===1,L=l.state.tr;L.delete(C,C+(x==null?void 0:x.nodeSize)),L.setMeta("addToHistory",!0),l.view.dispatch(L),B&&setTimeout(()=>{let k=l.state.doc.nodeAt(0);if(k&&k.type.name==="paragraph"&&!k.attrs.id){let E=`node-${Og()}`,w=l.state.tr;w.setNodeMarkup(0,void 0,{...k.attrs,id:E}),l.view.dispatch(w);let P=new CustomEvent("node-duplicated",{detail:{newNodeId:E}});document.dispatchEvent(P)}},50),m(null)},100)}catch(x){console.error("Error deleting node:",x)}},[l,i,h,y,m]),N=Xn(()=>{if(!(!l||!i))try{let{node:x,pos:C}=h();if(!x||C===null)return;if(x.type.name==="button"){g();return}y(),setTimeout(()=>{let B=l.chain();B.setNodeSelection(C).unsetAllMarks(),x.type.name==="blockquote"&&x.content&&x.content.firstChild?x.content.firstChild.type.name!=="paragraph"&&B.setParagraph():x.type.name!=="paragraph"&&x.type.name!=="blockquote"&&B.setParagraph(),B.run()},100)}catch(x){console.error("Error removing formatting:",x)}},[l,i,h,y,g]),v=Xn(()=>{if(!(!l||!i))try{y(),setTimeout(()=>{let{node:x,pos:C}=h();if(!x||C===null)return;let B=x.type.name,L={...x.attrs};delete L.id;let k=C+(x==null?void 0:x.nodeSize);ra(l,B,k,L,E=>m(E),x.content)},100)}catch(x){console.error("Error duplicating node:",x)}},[l,i,h,y,m]),{node:f}=h();return ol(Hg,{ref:p,"data-cypress":"draggable-item","data-node-view-wrapper":!0,"data-id":i,className:A("courier-flex courier-items-center courier-justify-center courier-gap-2 courier-pl-6 draggable-item",t),style:{transition:[s].filter(Boolean).join(", "),"--translate-x":u?`${Math.round(u.x)}px`:void 0,"--translate-y":u?`${Math.round(u.y)}px`:void 0,"--scale-x":u!=null&&u.scaleX?`${u.scaleX}`:void 0,"--scale-y":u!=null&&u.scaleY?`${u.scaleY}`:void 0,transform:"translate3d(var(--translate-x, 0), var(--translate-y, 0), 0) scaleX(var(--scale-x, 1)) scaleY(var(--scale-y, 1))"},...c,children:[wr(gd,{className:"courier-absolute courier-left-[-20px]",tabIndex:-1,...o,...n}),e,ol("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"&&ol($g,{children:[wr("button",{className:"courier-w-8 courier-h-8 courier-flex courier-items-center courier-justify-center",onClick:N,tabIndex:-1,children:wr(Ks,{})}),wr(fe,{className:"courier-m-0"})]}),wr("button",{className:"courier-w-8 courier-h-8 courier-flex courier-items-center courier-justify-center",onClick:v,tabIndex:-1,children:wr($s,{})}),wr(fe,{className:"courier-m-0"}),wr("button",{className:"courier-w-8 courier-h-8 courier-flex courier-items-center courier-justify-center",onClick:T,tabIndex:-1,children:wr(Vn,{})})]})]})});import{NodeViewContent as Ug}from"@tiptap/react";import{useSetAtom as _g}from"jotai";import{useCallback as Zg}from"react";import{jsx as Yn}from"react/jsx-runtime";var qg=a(({paddingHorizontal:e,paddingVertical:t,backgroundColor:r,borderLeftWidth:o,borderColor:n})=>Yn("div",{className:"courier-w-full node-element",children:Yn("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:Yn(Ug,{})})}),"BlockquoteComponent"),bd=a(e=>{let t=_g(je),r=Zg(()=>{if(!e.editor.isEditable)return;let n=Ge(e);n&&(e.editor.commands.blur(),t(n))},[e,t]),o=!e.node.content||e.node.content.size===0;return Yn(Lt,{id:e.node.attrs.id,className:A(e.node.attrs.isSelected&&"selected-element",o&&"is-empty"),onClick:r,editor:e.editor,children:Yn(qg,{...e.node.attrs})})},"BlockquoteComponentNode");var Zr={paddingHorizontal:8,paddingVertical:6,backgroundColor:"transparent",borderLeftWidth:4,borderColor:"#e0e0e0"},nl=md.extend({content:"block+",addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),HTMLAttributes:{class:""}}},onCreate(){ft(this.editor,this.name)},addAttributes(){return{id:{default:void 0,parseHTML:e=>e.getAttribute("data-id"),renderHTML:e=>({"data-id":e.id})},paddingHorizontal:{default:Zr.paddingHorizontal,parseHTML:e=>e.getAttribute("data-padding-horizontal"),renderHTML:e=>({"data-padding-horizontal":e.paddingHorizontal})},paddingVertical:{default:Zr.paddingVertical,parseHTML:e=>e.getAttribute("data-padding-vertical"),renderHTML:e=>({"data-padding-vertical":e.paddingVertical})},backgroundColor:{default:Zr.backgroundColor,parseHTML:e=>e.getAttribute("data-background-color"),renderHTML:e=>({"data-background-color":e.backgroundColor})},borderLeftWidth:{default:Zr.borderLeftWidth,parseHTML:e=>e.getAttribute("data-border-left-width"),renderHTML:e=>({"data-border-left-width":e.borderLeftWidth})},borderColor:{default:Zr.borderColor,parseHTML:e=>e.getAttribute("data-border-color"),renderHTML:e=>({"data-border-color":e.borderColor})}}},parseHTML(){return[{tag:"blockquote"}]},renderHTML({HTMLAttributes:e}){return["blockquote",jg(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 s=i.selection.from,u=i.doc.resolve(s);if(u.depth>1){let l=u.blockRange();l&&i.lift(l,0)}return!0}).focus().run()}}},addNodeView(){return Gg(bd)}});import{zodResolver as Qg}from"@hookform/resolvers/zod";import{useForm as eh}from"react-hook-form";import{useEffect as Kg,useRef as yd}from"react";var Zt=a(({editor:e,element:t,form:r,nodeType:o})=>{let n=yd(null),i=yd(null);return Kg(()=>{if(!e||!t)return;let u=a(()=>{let l=null;if(e.state.doc.descendants((d,c)=>d.attrs.id===t.attrs.id?(l=c,!1):!0),l!==null){let d=e.state.doc.nodeAt(l);(d==null?void 0:d.type.name)===o&&(n.current=d,i.current=l,Object.entries(d.attrs).forEach(([c,p])=>{r.getValues(c)!==p&&r.setValue(c,p)}))}},"updateCurrentNode");return u(),e.on("update",u),()=>{e.off("update",u)}},[e,t,r,o]),{updateNodeAttributes:a(u=>{!e||i.current===null||e.commands.command(({tr:l})=>{let d=l.doc.nodeAt(i.current);if((d==null?void 0:d.type.name)===o){let c={...d.attrs,...u,id:d.attrs.id};return l.setNodeMarkup(i.current,d.type,c),!0}return!1})},"updateNodeAttributes")}},"useNodeAttributes");import{useSetAtom as Xg}from"jotai";import{Quote as Jg}from"lucide-react";import{jsx as vd}from"react/jsx-runtime";var Cd=a(({draggable:e=!1})=>vd(mt,{draggable:e,icon:vd(Jg,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),draggableLabel:"Blockquote",label:"Blockquote block"}),"BlockquoteBlock");import{jsx as Pr,jsxs as Yg}from"react/jsx-runtime";var qt=a(({type:e})=>{let t=Xg(je);return Yg("div",{className:"courier-flex courier-gap-4 courier-flex-col",children:[Pr(Pe,{className:"courier-w-fit",variant:"secondary",buttonSize:"small",onClick:()=>{t(null)},children:"Close"}),e==="heading"&&Pr(on,{}),e==="text"&&Pr(sn,{}),e==="image"&&Pr(nn,{}),e==="spacer"&&Pr(an,{}),e==="divider"&&Pr(rn,{}),e==="button"&&Pr(tn,{}),e==="blockquote"&&Pr(Cd,{}),e==="customCode"&&Pr(xo,{}),Pr(fe,{className:"courier-m-0"})]})},"FormHeader");import{z as To}from"zod";var xd=To.object({paddingHorizontal:To.coerce.number().min(0),paddingVertical:To.coerce.number().min(0),backgroundColor:To.string(),borderLeftWidth:To.coerce.number().min(0),borderColor:To.string(),id:To.string().optional()});import{jsx as ke,jsxs as to}from"react/jsx-runtime";var Td=a(({element:e,editor:t})=>{let r=eh({resolver:Qg(xd),defaultValues:{...Zr,...e==null?void 0:e.attrs}}),{updateNodeAttributes:o}=Zt({editor:t,element:e,form:r,nodeType:(e==null?void 0:e.type.name)||"blockquote"});return e?to(Ze,{...r,children:[ke(qt,{type:"blockquote"}),to("form",{onChange:()=>{o(r.getValues())},children:[ke("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Frame"}),to("div",{className:"courier-flex courier-flex-row courier-gap-3 courier-mb-3",children:[ke(U,{control:r.control,name:"paddingHorizontal",render:({field:n})=>to(z,{children:[ke($,{children:ke(ae,{startAdornment:ke(_n,{}),type:"number",min:0,...n})}),ke(_,{})]})}),ke(U,{control:r.control,name:"paddingVertical",render:({field:n})=>to(z,{children:[ke($,{children:ke(ae,{startAdornment:ke(vo,{}),type:"number",min:0,...n})}),ke(_,{})]})})]}),ke(U,{control:r.control,name:"backgroundColor",render:({field:n})=>to(z,{className:"courier-mb-3",children:[ke($,{children:ke(qe,{...n,defaultValue:Zr.backgroundColor,onChange:i=>{n.onChange(i),o({...r.getValues(),[n.name]:i})}})}),ke(_,{})]})}),ke(fe,{className:"courier-mb-4"}),ke("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Border"}),ke(U,{control:r.control,name:"borderLeftWidth",render:({field:n})=>to(z,{className:"courier-mb-3",children:[ke($,{children:ke(ae,{startAdornment:ke(rr,{}),type:"number",min:0,...n})}),ke(_,{})]})}),ke(U,{control:r.control,name:"borderColor",render:({field:n})=>to(z,{className:"courier-mb-3",children:[ke($,{children:ke(qe,{...n,defaultValue:Zr.borderColor,onChange:i=>{n.onChange(i),o({...r.getValues(),[n.name]:i})}})}),ke(_,{})]})})]})]}):null},"BlockquoteForm");import{mergeAttributes as nh,Node as ih}from"@tiptap/core";import{ReactNodeViewRenderer as ah}from"@tiptap/react";import{Plugin as sh,PluginKey as lh}from"@tiptap/pm/state";import{useSetAtom as th}from"jotai";import{useCallback as rh}from"react";import{jsx as ro}from"react/jsx-runtime";var oh=a(({label:e,alignment:t,size:r,backgroundColor:o,textColor:n,borderWidth:i,borderRadius:s,borderColor:u,padding:l,fontWeight:d,fontStyle:c,isUnderline:p,isStrike:m})=>ro("div",{className:"courier-w-full node-element",children:ro("div",{className:"courier-flex",style:{marginTop:`${l}px`,marginBottom:`${l}px`},children:ro("div",{className:A("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:`${s}px`,borderColor:u,borderStyle:i>0?"solid":"none",caretColor:"#ff0000",fontWeight:d,fontStyle:c},children:m?ro("s",{children:p?ro("u",{children:e}):e}):p?ro("u",{children:e}):e})})}),"ButtonComponent"),wd=a(e=>{let t=th(je),r=rh(()=>{if(!e.editor.isEditable)return;let o=Ge(e);if(o){e.editor.commands.blur();let n=o.attrs.id;e.editor.state.doc.descendants(i=>i.type.name==="button"&&i.attrs.id===n?(t(i),!1):!0)}},[e,t]);return ro(Lt,{id:e.node.attrs.id,className:A(e.node.attrs.isSelected&&"selected-element"),onClick:r,editor:e.editor,"data-node-type":"button",children:ro(oh,{...e.node.attrs})})},"ButtonComponentNode");import{v4 as ch}from"uuid";var He={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},oa=ih.create({name:"button",group:"block",atom:!0,selectable:!1,onCreate(){ft(this.editor,this.name)},addAttributes(){return{label:{default:He.label,parseHTML:e=>e.getAttribute("data-label"),renderHTML:e=>({"data-label":e.label})},link:{default:He.link,parseHTML:e=>e.getAttribute("data-link"),renderHTML:e=>({"data-link":e.link})},alignment:{default:He.alignment,parseHTML:e=>e.getAttribute("data-alignment"),renderHTML:e=>({"data-alignment":e.alignment})},size:{default:He.size,parseHTML:e=>e.getAttribute("data-size"),renderHTML:e=>({"data-size":e.size})},backgroundColor:{default:He.backgroundColor,parseHTML:e=>e.getAttribute("data-background-color"),renderHTML:e=>({"data-background-color":e.backgroundColor})},textColor:{default:He.textColor,parseHTML:e=>e.getAttribute("data-text-color"),renderHTML:e=>({"data-text-color":e.textColor})},borderWidth:{default:He.borderWidth,parseHTML:e=>e.getAttribute("data-border-width"),renderHTML:e=>({"data-border-width":e.borderWidth})},borderRadius:{default:He.borderRadius,parseHTML:e=>e.getAttribute("data-border-radius"),renderHTML:e=>({"data-border-radius":e.borderRadius})},borderColor:{default:He.borderColor,parseHTML:e=>e.getAttribute("data-border-color"),renderHTML:e=>({"data-border-color":e.borderColor})},padding:{default:He.padding,parseHTML:e=>e.getAttribute("data-padding"),renderHTML:e=>({"data-padding":e.padding})},fontWeight:{default:He.fontWeight,parseHTML:e=>e.getAttribute("data-font-weight"),renderHTML:e=>({"data-font-weight":e.fontWeight})},fontStyle:{default:He.fontStyle,parseHTML:e=>e.getAttribute("data-font-style"),renderHTML:e=>({"data-font-style":e.fontStyle})},isUnderline:{default:He.isUnderline,parseHTML:e=>e.getAttribute("data-is-underline"),renderHTML:e=>({"data-is-underline":e.isUnderline})},isStrike:{default:He.isStrike,parseHTML:e=>e.getAttribute("data-is-strike"),renderHTML:e=>({"data-is-strike":e.isStrike})},id:{default:()=>`node-${ch()}`,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",nh(this.options.HTMLAttributes,e,{"data-type":"button"}),0]},addNodeView(){return ah(wd)},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 sh({key:new lh("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 Tt}from"zod";var Pd=Tt.object({label:Tt.string(),link:Tt.string().optional(),alignment:Tt.enum(["left","center","right"]),size:Tt.enum(["default","full"]),backgroundColor:Tt.string(),textColor:Tt.string(),borderWidth:Tt.number(),borderRadius:Tt.number(),borderColor:Tt.string(),padding:Tt.number(),fontWeight:Tt.enum(["normal","bold"]),fontStyle:Tt.enum(["normal","italic"]),isUnderline:Tt.boolean(),isStrike:Tt.boolean()});import{zodResolver as uh}from"@hookform/resolvers/zod";import{useForm as dh}from"react-hook-form";import{useSetAtom as il}from"jotai";import*as wo from"react";import{useRef as Ed,useState as al}from"react";import{jsx as kd}from"react/jsx-runtime";var Qn=a(({items:e,command:t,selected:r=0})=>kd("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)=>kd("button",{className:A("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 ln,jsxs as Md}from"react/jsx-runtime";var Vt=wo.forwardRef(({as:e="Input",variables:t=[],autoResize:r,onChange:o,...n},i)=>{let[s,u]=al(!1),[l,d]=al(null),[c,p]=al(0),m=Ed(null),g=Ed(null),b=il(Kn),h=il(cd),y=il(ji),T=wo.useCallback(()=>{if(!g.current)return;let k={ref:g.current,caretPosition:g.current.selectionStart};h(k),y(k);let E={isFocused:!0,hasVariables:t.length>0,showVariablePopup:!1};b(E)},[b,h,y,t]),N=wo.useCallback(k=>{var P,S;let E=k.relatedTarget&&((P=m.current)==null?void 0:P.contains(k.relatedTarget)),w=(S=k.relatedTarget)==null?void 0:S.closest("[data-variable-button]");!E&&!w&&(h({ref:null,caretPosition:null}),b({isFocused:!1,hasVariables:!1,showVariablePopup:!1}))},[b,h]),v=a(k=>{let E=k.target,w={ref:E,caretPosition:E.selectionStart};h(w),y(w)},"handleSelect"),f=a(k=>{var E;if(s)switch(k.key){case"ArrowUp":k.preventDefault(),p(w=>w>0?w-1:t.length-1);break;case"ArrowDown":k.preventDefault(),p(w=>w<t.length-1?w+1:0);break;case"Enter":if(t[c]){k.preventDefault(),k.stopPropagation(),x(t[c]);return}break;case"Escape":u(!1),k.preventDefault(),k.stopPropagation();break}(E=n.onKeyDown)==null||E.call(n,k)},"handleKeyDown"),x=a(k=>{let E=g.current;if(!E)return;let w=E.value,P=E.selectionStart||0,S=w.substring(0,P-2),H=w.substring(P),V=`${S}{{${k}}}${H}`,D=P+k.length+3;if(o){let F={target:{...E,value:V}};o(F)}setTimeout(()=>{E.value=V,E.setSelectionRange(D,D)},0),u(!1)},"insertVariable"),C=a(k=>{var S;let E=k.target,w=E.value,P=E.selectionStart||0;if(w.slice(P-2,P)==="{{"&&((S=m.current)==null?void 0:S.getBoundingClientRect())){let V=w.slice(0,P),D=document.createElement("span");D.style.font=window.getComputedStyle(E).font,D.style.whiteSpace="pre-wrap",D.textContent=V,document.body.appendChild(D);let F=D.offsetWidth;document.body.removeChild(D);let G=parseInt(window.getComputedStyle(E).lineHeight),Y=V.split(`
178
+ `).length-1;d({left:Math.min(F%E.offsetWidth,E.offsetWidth-200),top:Y*G+30}),u(!0),p(0)}o&&o({target:E,currentTarget:E,type:"change",preventDefault:()=>{},stopPropagation:()=>{}})},"handleChange"),B=a(k=>{var S;let E=k.target,w=E.value,P=E.selectionStart||0;if(w.slice(P-2,P)==="{{"&&((S=m.current)==null?void 0:S.getBoundingClientRect())){let V=w.slice(0,P),D=document.createElement("span");D.style.font=window.getComputedStyle(E).font,D.style.whiteSpace="pre-wrap",D.textContent=V,document.body.appendChild(D);let F=D.offsetWidth;document.body.removeChild(D);let G=parseInt(window.getComputedStyle(E).lineHeight),Y=V.split(`
179
+ `).length-1;d({left:Math.min(F%E.offsetWidth,E.offsetWidth-200),top:Y*G+30}),u(!0),p(0)}o&&o({target:E,currentTarget:E,type:"change",preventDefault:()=>{},stopPropagation:()=>{}})},"handleInput");if(wo.useEffect(()=>{let k=g.current;if(!k)return;let E=a(w=>{d(w.detail.cursorPosition),u(!0),p(0)},"handleShowSuggestions");return k.addEventListener("showVariableSuggestions",E),()=>{k.removeEventListener("showVariableSuggestions",E)}},[]),e==="Input"){let k={...n,ref:E=>{g.current=E,typeof i=="function"?i(E):i&&(i.current=E)},onChange:C,onInput:B,onKeyDown:f,onFocus:T,onBlur:N,onSelect:v};return Md("div",{ref:m,className:"courier-relative",children:[ln(ae,{...k}),s&&l&&ln("div",{style:{position:"absolute",left:`${l.left}px`,top:`${l.top}px`,zIndex:50},children:ln(Qn,{items:t,command:x,selected:c})})]})}let L={...n,ref:k=>{g.current=k,typeof i=="function"?i(k):i&&(i.current=k)},onChange:C,onInput:B,onKeyDown:f,onFocus:T,onBlur:N,autoResize:r,onSelect:v};return Md("div",{ref:m,className:"courier-relative",children:[ln(Bs,{...L}),s&&l&&ln("div",{style:{position:"absolute",left:`${l.left}px`,top:`${l.top}px`,zIndex:50},children:ln(Qn,{items:t,command:x,selected:c})})]})});Vt.displayName="TextInput";var nr=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,...nr(n,i)]:[...r,i]},[]),"getFlattenedVariables");import{jsx as Er,jsxs as Ld}from"react/jsx-runtime";var ei="#80849D",kr=30,na=a(({color:e=ei,width:t=kr,height:r=kr,...o})=>Er(K,{...o,width:t,height:r,children:Er("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"),ia=a(({color:e=ei,width:t=kr,height:r=kr,...o})=>Er(K,{...o,width:t,height:r,children:Er("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"),aa=a(({color:e=ei,width:t=kr,height:r=kr,...o})=>Er(K,{...o,width:t,height:r,children:Er("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"),Nd=a(({color:e=ei,width:t=kr,height:r=kr,...o})=>Ld(K,{...o,width:t,height:r,children:[Er("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}),Er("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"),Ad=a(({color:e=ei,width:t=kr,height:r=kr,...o})=>Ld(K,{...o,width:t,height:r,children:[Er("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}),Er("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 gt}from"react/jsx-runtime";var Id=a(({element:e,editor:t})=>{var s,u;let r=dh({resolver:uh(Pd),defaultValues:{...He,...e==null?void 0:e.attrs}}),{updateNodeAttributes:o}=Zt({editor:t,element:e,form:r,nodeType:"button"}),n=((u=(s=t==null?void 0:t.extensionManager.extensions.find(l=>l.name==="variableSuggestion"))==null?void 0:s.options)==null?void 0:u.variables)||{},i=nr(n);return e?gt(Ze,{...r,children:[Z(qt,{type:"button"}),gt("form",{onChange:()=>{o(r.getValues())},children:[Z("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Link"}),Z(U,{control:r.control,name:"link",render:({field:l})=>gt(z,{children:[Z($,{children:Z(Vt,{as:"Textarea",...l,variables:i,onChange:d=>{l.onChange(d),o({...r.getValues(),link:d.target.value})}})}),Z(_,{})]})}),Z(fe,{className:"courier-mt-6 courier-mb-4"}),Z("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Text"}),Z(U,{control:r.control,name:"label",render:({field:l})=>gt(z,{className:"courier-mb-2",children:[Z($,{children:Z(Vt,{...l,variables:i,onChange:d=>{l.onChange(d),o({...r.getValues(),label:d.target.value})}})}),Z(_,{})]})}),Z(U,{control:r.control,name:"textColor",render:({field:l})=>gt(z,{className:"courier-mb-4",children:[Z($,{children:Z(qe,{...l,defaultValue:He.textColor,onChange:d=>{l.onChange(d),o({...r.getValues(),[l.name]:d})}})}),Z(_,{})]})}),Z(fe,{className:"courier-mt-6 courier-mb-4"}),Z("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Background"}),Z(U,{control:r.control,name:"backgroundColor",render:({field:l})=>gt(z,{className:"courier-mb-4",children:[Z($,{children:Z(qe,{...l,defaultValue:He.backgroundColor,onChange:d=>{l.onChange(d),o({...r.getValues(),[l.name]:d})}})}),Z(_,{})]})}),Z(fe,{className:"courier-mt-6 courier-mb-4"}),Z("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Frame"}),Z(U,{control:r.control,name:"padding",render:({field:l})=>gt(z,{className:"courier-mb-2",children:[Z($,{children:Z(ae,{type:"number",min:0,...l})}),Z(_,{})]})}),gt("div",{className:"courier-flex courier-flex-row courier-gap-6",children:[Z(U,{control:r.control,name:"alignment",render:({field:l})=>gt(z,{children:[Z($,{children:gt(Ht,{type:"single",value:l.value,onValueChange:d=>{l.onChange(d),o({...r.getValues(),alignment:d})},children:[Z(Ve,{value:"left",children:Z(na,{})}),Z(Ve,{value:"center",children:Z(ia,{})}),Z(Ve,{value:"right",children:Z(aa,{})})]})}),Z(_,{})]})}),Z(U,{control:r.control,name:"size",render:({field:l})=>gt(z,{children:[Z($,{children:gt(Ht,{type:"single",value:l.value,onValueChange:d=>{l.onChange(d),o({...r.getValues(),size:d})},children:[Z(Ve,{value:"default",children:Z(Nd,{})}),Z(Ve,{value:"full",children:Z(Ad,{})})]})}),Z(_,{})]})})]}),Z(fe,{className:"courier-mt-6 courier-mb-4"}),Z("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Border"}),gt("div",{className:"courier-flex courier-flex-row courier-gap-3 courier-mb-3",children:[Z(U,{control:r.control,name:"borderWidth",render:({field:l})=>gt(z,{children:[Z($,{children:Z(ae,{startAdornment:Z(rr,{}),type:"number",min:0,...l})}),Z(_,{})]})}),Z(U,{control:r.control,name:"borderRadius",render:({field:l})=>gt(z,{children:[Z($,{children:Z(ae,{startAdornment:Z(yo,{}),type:"number",min:0,...l})}),Z(_,{})]})})]}),Z(U,{control:r.control,name:"borderColor",render:({field:l})=>gt(z,{className:"courier-mb-4",children:[Z($,{children:Z(qe,{...l,defaultValue:He.borderColor,onChange:d=>{l.onChange(d),o({...r.getValues(),[l.name]:d})}})}),Z(_,{})]})})]})]}):null},"ButtonForm");import{mergeAttributes as hh,Node as bh}from"@tiptap/core";import{ReactNodeViewRenderer as yh}from"@tiptap/react";import{v4 as vh}from"uuid";import{useSetAtom as ph}from"jotai";import{useCallback as mh}from"react";import{jsx as ti,jsxs as gh}from"react/jsx-runtime";var fh=a(({button1Label:e,button1Link:t,button1BackgroundColor:r,button1TextColor:o,button2Label:n,button2Link:i,button2BackgroundColor:s,button2TextColor:u,padding:l=6})=>ti("div",{className:"node-element",children:gh("div",{className:"courier-flex courier-gap-1 courier-justify-start",style:{marginTop:`${l}px`,marginBottom:`${l}px`},children:[ti("div",{className:A("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}),ti("div",{className:A("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:s,color:u,borderColor:"#000000",borderRadius:"4px"},children:n})]})}),"ButtonRowComponent"),Sd=a(e=>{let t=ph(je),r=mh(()=>{if(!e.editor.isEditable)return;let o=Ge(e);o&&(e.editor.commands.blur(),t(o))},[e,t]);return ti(Lt,{id:e.node.attrs.id,className:A(e.node.attrs.isSelected&&"selected-element"),onClick:r,editor:e.editor,"data-node-type":"buttonRow",children:ti(fh,{...e.node.attrs})})},"ButtonRowComponentNode");var ir={button1Label:"Register",button1Link:"",button1BackgroundColor:"#000000",button1TextColor:"#ffffff",button2Label:"Learn more",button2Link:"",button2BackgroundColor:"#ffffff",button2TextColor:"#000000",padding:6},sa=bh.create({name:"buttonRow",group:"block",atom:!0,onCreate(){ft(this.editor,this.name)},addAttributes(){return{id:{default:()=>`node-${vh()}`,parseHTML:e=>e.getAttribute("id"),renderHTML:e=>({id:e.id})},button1Label:{default:ir.button1Label,parseHTML:e=>e.getAttribute("data-button1-label"),renderHTML:e=>({"data-button1-label":e.button1Label})},button1Link:{default:ir.button1Link,parseHTML:e=>e.getAttribute("data-button1-link"),renderHTML:e=>({"data-button1-link":e.button1Link})},button1BackgroundColor:{default:ir.button1BackgroundColor,parseHTML:e=>e.getAttribute("data-button1-bg"),renderHTML:e=>({"data-button1-bg":e.button1BackgroundColor})},button1TextColor:{default:ir.button1TextColor,parseHTML:e=>e.getAttribute("data-button1-color"),renderHTML:e=>({"data-button1-color":e.button1TextColor})},button2Label:{default:ir.button2Label,parseHTML:e=>e.getAttribute("data-button2-label"),renderHTML:e=>({"data-button2-label":e.button2Label})},button2Link:{default:ir.button2Link,parseHTML:e=>e.getAttribute("data-button2-link"),renderHTML:e=>({"data-button2-link":e.button2Link})},button2BackgroundColor:{default:ir.button2BackgroundColor,parseHTML:e=>e.getAttribute("data-button2-bg"),renderHTML:e=>({"data-button2-bg":e.button2BackgroundColor})},button2TextColor:{default:ir.button2TextColor,parseHTML:e=>e.getAttribute("data-button2-color"),renderHTML:e=>({"data-button2-color":e.button2TextColor})},padding:{default:ir.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",hh(e,{"data-type":"buttonRow"})]},addNodeView(){return yh(Sd)},addCommands(){return{setButtonRow:e=>({chain:t})=>t().insertContent({type:this.name,attrs:{...ir,...e}}).run()}}});import{mergeAttributes as wh,Node as Ph}from"@tiptap/core";import{ReactNodeViewRenderer as kh}from"@tiptap/react";import{v4 as Eh}from"uuid";import{useSetAtom as Ch}from"jotai";import{useCallback as xh}from"react";import{jsx as la}from"react/jsx-runtime";var Th=a(({code:e})=>{let t=e&&e.trim()&&e!=="<!-- Add your HTML code here -->";return la("div",{className:"courier-w-full node-element",children:la("div",{className:"courier-custom-code courier-py-1.5 courier-overflow-auto",dangerouslySetInnerHTML:t?{__html:e}:{__html:"&#160;"}})})},"CustomCodeComponent"),Rd=a(e=>{let t=Ch(je),r=xh(()=>{if(!e.editor.isEditable)return;let i=Ge(e);if(i){e.editor.commands.blur();let s=i.attrs.id;e.editor.state.doc.descendants(u=>u.type.name==="customCode"&&u.attrs.id===s?(t(u),!1):!0)}},[e,t]),o=e.node.attrs.code,n=!o||o.trim()===""||o==="<!-- Add your HTML code here -->";return la(Lt,{id:e.node.attrs.id,className:A(e.node.attrs.isSelected&&"selected-element",n&&"is-empty"),onClick:r,editor:e.editor,"data-node-type":"customCode",children:la(Th,{...e.node.attrs,updateAttributes:e.updateAttributes})})},"CustomCodeComponentNode");var Po={code:"<!-- Add your HTML code here -->"},ca=Ph.create({name:"customCode",group:"block",atom:!0,selectable:!1,onCreate(){ft(this.editor,this.name)},addAttributes(){return{code:{default:Po.code,parseHTML:e=>e.getAttribute("data-code")||"",renderHTML:e=>({"data-code":e.code})},id:{default:()=>`node-${Eh()}`,parseHTML:e=>e.getAttribute("data-id"),renderHTML:e=>({"data-id":e.id,"data-node-id":e.id})}}},parseHTML(){return[{tag:'div[data-type="custom-code"]'}]},renderHTML({HTMLAttributes:e}){return["div",wh(this.options.HTMLAttributes,e,{"data-type":"custom-code"}),["div",{innerHTML:e.code||Po.code}]]},addNodeView(){return kh(Rd)},addCommands(){return{setCustomCode:e=>({chain:t})=>t().insertContent({type:this.name,attrs:e}).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)==="customCode"},Delete:({editor:e})=>{let{selection:t}=e.state,r=e.state.doc.nodeAt(t.$anchor.pos);return(r==null?void 0:r.type.name)==="customCode"}}}});import{useRef as ll,useCallback as Bd,useState as Ah,lazy as Lh,Suspense as Ih}from"react";import{forwardRef as Mh}from"react";import{jsx as Nh}from"react/jsx-runtime";var sl=Mh(({className:e,...t},r)=>{let o=A("courier-animate-spin courier-rounded-full courier-border-2 courier-border-current courier-border-t-transparent courier-h-4 courier-w-4",e);return Nh("div",{className:o,ref:r,...t})});sl.displayName="Spinner";import{jsx as cn}from"react/jsx-runtime";var Sh=Lh(()=>import("@monaco-editor/react").then(e=>({default:e.Editor})));function Rh(e,t){let r=ll();return Bd((...o)=>{r.current&&clearTimeout(r.current),r.current=setTimeout(()=>e(...o),t)},[e,t])}a(Rh,"useDebounce");var Bh=a((e,t,r)=>{if(!t||!r)return!0;let o=t.getModel();if(!o)return!0;if(r.editor.getModelMarkers({resource:o.uri}).filter(s=>s.severity===8).length>0)return!1;if(!e.trim())return!0;try{if(/<[a-z][a-z0-9]*\s[^>]*$/i.test(e.trim()))return!1;let u=(e.match(/</g)||[]).length,l=(e.match(/>/g)||[]).length;if(u!==l||new DOMParser().parseFromString(e,"text/html").getElementsByTagName("parsererror").length>0)return!1;let m=(e.match(/<([a-z][a-z0-9]*)\b[^>]*(?<!\/\/)>/gi)||[]).map(y=>{var T,N;return(N=(T=y.match(/<([a-z][a-z0-9]*)/i))==null?void 0:T[1])==null?void 0:N.toLowerCase()}).filter(Boolean),g=(e.match(/<\/([a-z][a-z0-9]*)\s*>/gi)||[]).map(y=>{var T,N;return(N=(T=y.match(/<\/([a-z][a-z0-9]*)/i))==null?void 0:T[1])==null?void 0:N.toLowerCase()}).filter(Boolean),b=["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"],h=m.filter(y=>y&&!b.includes(y));for(let y of h){let T=m.filter(v=>v===y).length,N=g.filter(v=>v===y).length;if(T!==N)return!1}return!0}catch{return!1}},"defaultHTMLValidator"),cl=a(({code:e,onSave:t,onValidationChange:r,validator:o=Bh})=>{let n=ll(null),i=ll(null),[s,u]=Ah(!0),l=Bd(()=>{if(!n.current||!i.current)return!0;let m=n.current.getModel();if(!m)return!0;let g=m.getValue(),b=o(g,n.current,i.current);return b!==s&&(u(b),r==null||r(b)),b},[s,r,o]),d=Rh(m=>{setTimeout(()=>{l()&&t(m)},150)},500);return cn("div",{className:"courier-border courier-border-gray-300 courier-rounded courier-overflow-hidden",children:cn("div",{className:"courier-h-[300px] courier-p-2",children:cn(Ih,{fallback:cn("div",{className:"courier-flex courier-items-center courier-justify-center courier-h-full courier-text-gray-500",children:cn(sl,{})}),children:cn(Sh,{height:"100%",defaultLanguage:"html",value:e,onChange:a(m=>{d(m||"")},"handleCodeChange"),onMount:a((m,g)=>{n.current=m,i.current=g,m.focus(),m.onDidChangeModelContent(()=>{setTimeout(l,100)}),setTimeout(l,100)},"handleEditorDidMount"),theme:"vs-light",options:{minimap:{enabled:!1},scrollBeyondLastLine:!1,fontSize:14,wordWrap:"on",automaticLayout:!0,tabSize:2,insertSpaces:!0,formatOnPaste:!0,formatOnType:!0,glyphMargin:!1,folding:!1,lineDecorationsWidth:10,lineNumbersMinChars:0,fixedOverflowWidgets:!0}})})})})},"MonacoCodeEditor");import{zodResolver as Hh}from"@hookform/resolvers/zod";import{useForm as Dh}from"react-hook-form";import{z as Hd}from"zod";var Dd=Hd.object({code:Hd.string()});import{useCallback as Fh}from"react";import{useAtom as Vh}from"jotai";import{Fragment as Fd,jsx as Mr,jsxs as ri}from"react/jsx-runtime";var ul=a(({element:e,editor:t})=>{let r=Dh({resolver:Hh(Dd),defaultValues:{...Po,...e==null?void 0:e.attrs}}),{updateNodeAttributes:o}=Zt({editor:t,element:e,form:r,nodeType:"customCode"}),[n,i]=Vh(br),s=Fh(u=>{r.setValue("code",u),o({code:u})},[r,o]);return e?ri(Ze,{...r,children:[!n&&Mr(qt,{type:"customCode"}),ri("div",{className:"courier-flex courier-flex-col courier-gap-4",children:[Mr(Pe,{className:"courier-w-fit",variant:"outline",buttonSize:"small",onClick:()=>i(!n),children:n?ri(Fd,{children:[Mr(Js,{className:"courier-w-3 courier-h-3"}),"Minimize"]}):ri(Fd,{children:[Mr(On,{className:"courier-w-3 courier-h-3"}),"Expand Editor"]})}),Mr("div",{className:"courier-h-[300px] courier-mb-4",children:Mr("form",{onChange:()=>{o(r.getValues())},className:"courier-h-full",children:Mr(U,{control:r.control,name:"code",render:({field:u})=>ri(z,{className:"courier-h-full",children:[Mr($,{children:Mr(cl,{code:u.value,onSave:l=>{u.onChange(l),s(l)},onCancel:()=>{}})}),Mr(_,{})]})})})})]})]}):null},"CustomCodeForm");import{mergeAttributes as jh}from"@tiptap/core";import{Node as Oh,mergeAttributes as Wh,isNodeSelection as zh,nodeInputRule as $h}from"@tiptap/core";import{TextSelection as dl,NodeSelection as Uh}from"@tiptap/pm/state";var Vd=Oh.create({name:"horizontalRule",addOptions(){return{HTMLAttributes:{}}},group:"block",parseHTML(){return[{tag:"hr"}]},renderHTML({HTMLAttributes:e}){return["hr",Wh(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}):zh(r)?i.insertContentAt(n.pos,{type:this.name}):i.insertContent({type:this.name}),i.command(({tr:s,dispatch:u})=>{var l;if(u){let{$to:d}=s.selection,c=d.end();if(d.nodeAfter)d.nodeAfter.isTextblock?s.setSelection(dl.create(s.doc,d.pos+1)):d.nodeAfter.isBlock?s.setSelection(Uh.create(s.doc,d.pos)):s.setSelection(dl.create(s.doc,d.pos));else{let p=(l=d.parent.type.contentMatch.defaultType)===null||l===void 0?void 0:l.create();p&&(s.insert(c,p),s.setSelection(dl.create(s.doc,c+1)))}s.scrollIntoView()}return!0}).run()}}},addInputRules(){return[$h({find:/^(?:---|—-|___\s|\*\*\*\s)$/,type:this.type})]}});import{ReactNodeViewRenderer as Gh}from"@tiptap/react";import{v4 as Kh}from"uuid";import{useSetAtom as _h}from"jotai";import{useCallback as Zh}from"react";import{jsx as ua}from"react/jsx-runtime";var qh=a(({padding:e,color:t,size:r,radius:o,variant:n="divider"})=>ua("div",{className:"courier-w-full node-element",children:ua("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"),Od=a(e=>{let t=_h(je),r=Zh(()=>{if(!e.editor.isEditable)return;let o=Ge(e);o&&(e.editor.commands.blur(),t(o))},[e,t]);return ua(Lt,{id:e.node.attrs.id,className:A(e.node.attrs.isSelected&&"selected-element"),onClick:r,editor:e.editor,children:ua(qh,{...e.node.attrs})})},"DividerComponentNode");var ar={padding:6,color:"#000000",size:1,radius:0,variant:"divider"},Wd={padding:6,color:"transparent",size:1,radius:0,variant:"spacer"},pl=Vd.extend({name:"divider",atom:!0,onCreate(){ft(this.editor,this.name)},addAttributes(){return{padding:{default:ar.padding,parseHTML:e=>e.getAttribute("data-padding"),renderHTML:e=>({"data-padding":e.margin})},size:{default:ar.size,parseHTML:e=>e.getAttribute("data-size"),renderHTML:e=>({"data-size":e.size})},color:{default:ar.color,parseHTML:e=>e.getAttribute("data-color"),renderHTML:e=>({"data-color":e.color})},width:{default:ar.size,parseHTML:e=>e.getAttribute("data-size"),renderHTML:e=>({"data-size":e.size})},radius:{default:ar.radius,parseHTML:e=>e.getAttribute("data-radius"),renderHTML:e=>({"data-radius":e.radius})},variant:{default:ar.variant,parseHTML:e=>e.getAttribute("data-variant"),renderHTML:e=>({"data-variant":e.variant})},id:{default:()=>`node-${Kh()}`,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",jh(e,{"data-type":"divider"}),["hr"]]},addNodeView(){return Gh(Od)}});import{z as un}from"zod";var zd=un.object({padding:un.number(),color:un.string(),size:un.number(),radius:un.number(),variant:un.enum(["divider","spacer"]).default("divider")});import{zodResolver as Jh}from"@hookform/resolvers/zod";import{useForm as Xh}from"react-hook-form";import{Fragment as Yh,jsx as Ke,jsxs as dn}from"react/jsx-runtime";var $d=a(({element:e,editor:t})=>{let r=Xh({resolver:Jh(zd),defaultValues:{...ar,...e==null?void 0:e.attrs}}),{updateNodeAttributes:o}=Zt({editor:t,element:e,form:r,nodeType:"divider"});if(!e)return null;let n=r.watch("variant");return dn(Ze,{...r,children:[Ke(qt,{type:n}),dn("form",{onChange:()=>{o(r.getValues())},children:[Ke("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Frame"}),Ke(U,{control:r.control,name:"padding",render:({field:i})=>dn(z,{children:[Ke($,{children:Ke(ae,{startAdornment:Ke(vo,{}),type:"number",...i,onChange:s=>{i.onChange(s),o({...r.getValues(),margin:s.target.value})}})}),Ke(_,{})]})}),n==="divider"&&dn(Yh,{children:[Ke(fe,{className:"courier-mt-6 courier-mb-4"}),Ke("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Line"}),Ke(U,{control:r.control,name:"size",render:({field:i})=>dn(z,{className:"courier-mb-4",children:[Ke($,{children:Ke(ae,{startAdornment:Ke(rr,{}),type:"number",min:0,...i,onChange:s=>{i.onChange(s),o({...r.getValues(),width:s.target.value})}})}),Ke(_,{})]})}),Ke(U,{control:r.control,name:"color",render:({field:i})=>dn(z,{className:"courier-mb-4",children:[Ke($,{children:Ke(qe,{...i,defaultValue:ar.color,onChange:s=>{i.onChange(s),o({...r.getValues(),[i.name]:s})}})}),Ke(_,{})]})})]})]})]})},"DividerForm");import{Node as Qh}from"@tiptap/core";var Ud=Qh.create({name:"doc",topNode:!0,content:"block+"});var ml=Ud.extend({content:"(block)+"});import{Node as a5}from"@tiptap/core";import{ReactNodeViewRenderer as s5}from"@tiptap/react";import{useSortable as e5}from"@dnd-kit/sortable";import{NodeViewWrapper as t5}from"@tiptap/react";import{forwardRef as r5,useEffect as _d,useState as o5}from"react";import{jsx as da}from"react/jsx-runtime";function n5(){let[e,t]=o5(!1);return _d(()=>{let r=setTimeout(()=>t(!0),500);return()=>clearTimeout(r)},[]),e}a(n5,"useMountStatus");var i5=r5(({children:e,className:t,dragOverlay:r,id:o},n)=>(_d(()=>{if(r)return document.body.style.cursor="grabbing",()=>{document.body.style.cursor=""}},[r]),da(t5,{ref:n,"data-cypress":"draggable-item","data-node-view-wrapper":!0,"data-id":o,className:A("courier-flex courier-items-start courier-gap-2 courier-pl-6",t),children:e}))),Zd=a(({node:e})=>{let t=e.attrs.type,r=e.attrs.id,{setNodeRef:o,setActivatorNodeRef:n,listeners:i,isDragging:s,transform:u,transition:l}=e5({id:r}),d=n5();return da(i5,{ref:o,id:r,transition:l,transform:u,fadeIn:s&&!d,listeners:i,handleProps:{ref:n},children:da("div",{className:A("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:da("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 qd=a5.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 s5(Zd,{as:"div",className:"drag-placeholder-wrapper"})}});import{Extension as l5}from"@tiptap/core";import{Plugin as c5,PluginKey as u5}from"@tiptap/pm/state";var d5=new u5("file-handler"),p5=l5.create({name:"fileHandler",addOptions(){return{allowedMimeTypes:[],onDrop:()=>{},onPaste:()=>{}}},addProseMirrorPlugins(){let{allowedMimeTypes:e,onDrop:t,onPaste:r}=this.options;return[new c5({key:d5,props:{handleDrop:(o,n,i,s)=>{var c;if(!((c=n.dataTransfer)!=null&&c.files)||s)return!1;let{files:u}=n.dataTransfer,l=o.posAtCoords({left:n.clientX,top:n.clientY});if(!l)return!1;let d=Array.from(u).filter(p=>e==null?void 0:e.includes(p.type));return d.length===0?!1:(n.preventDefault(),t&&t(this.editor,d,l.pos),!0)},handlePaste:(o,n)=>{var u;if(!((u=n.clipboardData)!=null&&u.files))return!1;let{files:i}=n.clipboardData,s=Array.from(i).filter(l=>e==null?void 0:e.includes(l.type));return s.length===0?!1:(n.preventDefault(),r&&r(this.editor,s),!0)}}})]}}),pa=p5;import{Extension as m5}from"@tiptap/core";import{Plugin as f5,PluginKey as g5}from"@tiptap/pm/state";var h5=new g5("fixedChannelPaste"),b5=a(e=>{let t=e.view.dom.closest(".courier-push-editor"),r=e.view.dom.closest(".courier-sms-editor"),o=e.view.dom.closest(".courier-inbox-editor");if(t||r||o)return!0;let n=e.state.doc,i=0,s=0;n.forEach(c=>{c.type.name==="paragraph"||c.type.name==="heading"?i++:c.type.name==="button"&&s++});let u=i===1&&s===0,l=i===2&&s===0,d=i>=2&&i+s<=4;return u||l||d},"isInFixedChannel"),y5=a(e=>{let t=[],r=a(o=>{if(o.type.name==="text")t.push(o.text||"");else if(o.type.name==="paragraph"||o.type.name==="heading"){let n=o.textContent||"";n.trim()&&t.push(n)}else o.content&&o.content.forEach(n=>{r(n)})},"extractTextFromNode");return e.content.forEach(o=>{r(o)}),t.filter(o=>o.trim()).join(`
180
+ `).trim()},"extractTextFromSlice"),ma=m5.create({name:"fixedChannelPaste",addOptions(){return{fixedChannels:["push","sms","inbox"]}},addProseMirrorPlugins(){let e=this.editor;return[new f5({key:h5,props:{handlePaste:(t,r,o)=>{let{state:n}=t,{selection:i}=n;if(!b5(e))return!1;let u=i.$from.node();if(!(u.type.name==="paragraph"||u.type.name==="heading")||o.content.childCount<=1)return!1;let d=y5(o);if(!d)return!1;r.preventDefault();let c=n.tr.replaceSelectionWith(n.schema.text(d),!1);return t.dispatch(c),!0}}})]},addStorage(){return{currentChannel:null}}});import{Extension as v5}from"@tiptap/core";import{Plugin as C5,PluginKey as x5,TextSelection as fl}from"@tiptap/pm/state";var ko=a((e,t)=>{if(t.length===0)return!1;let r={push:()=>e.view.dom.closest(".courier-push-editor"),sms:()=>e.view.dom.closest(".courier-sms-editor"),inbox:()=>e.view.dom.closest(".courier-inbox-editor")};return t.some(o=>{var n;return(n=r[o])==null?void 0:n.call(r)})},"isInFixedChannel"),oi=a(e=>{let{selection:t}=e.state,{$anchor:r}=t,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),s=r.end(o);return{start:i,end:s,node:n}}o--}return null},"getCurrentElementBounds"),fa=a(e=>{let{selection:t}=e.state,{$from:r,$to:o}=t;if(t.empty)return!1;let n=r.depth,i=o.depth,s=null,u=null;for(;n>0;){let l=r.node(n);if(l.type.name==="paragraph"||l.type.name==="heading"){s={node:l,depth:n};break}n--}for(;i>0;){let l=o.node(i);if(l.type.name==="paragraph"||l.type.name==="heading"){u={node:l,depth:i};break}i--}return!!(s&&u&&s.node!==u.node)},"isMultiElementSelection"),ga=new x5("fixedChannelSelection"),ha=v5.create({name:"fixedChannelSelection",addOptions(){return{channels:["push","sms","inbox"]}},addCommands(){return{constrainSelectionToElement:()=>({editor:e,tr:t,dispatch:r})=>{if(!ko(e,this.options.channels))return!1;let o=oi(e);if(!o)return!1;let{start:n,end:i}=o,{selection:s}=e.state;if(s.from>=n&&s.to<=i)return!1;let u=Math.max(s.from,n),l=Math.min(s.to,i);return r&&t.setSelection(fl.create(t.doc,u,l)),!0}}},addKeyboardShortcuts(){return{"Mod-a":({editor:e})=>{if(!ko(e,this.options.channels))return!1;let t=oi(e);if(!t)return!1;let{start:r,end:o}=t;return e.commands.setTextSelection({from:r,to:o}),!0},Backspace:({editor:e})=>{if(!ko(e,this.options.channels))return!1;if(fa(e)){let t=oi(e);if(t){let{start:r,end:o}=t,{selection:n}=e.state,i=Math.max(n.from,r),s=Math.min(n.to,o);e.commands.setTextSelection({from:i,to:s})}return!0}return!1},Delete:({editor:e})=>{if(!ko(e,this.options.channels))return!1;if(fa(e)){let t=oi(e);if(t){let{start:r,end:o}=t,{selection:n}=e.state,i=Math.max(n.from,r),s=Math.min(n.to,o);e.commands.setTextSelection({from:i,to:s})}return!0}return!1}}},addProseMirrorPlugins(){return[new C5({key:ga,props:{handleTextInput:(e,t,r)=>{let o=this.editor;if(!ko(o,this.options.channels))return!1;if(fa(o)){let n=oi(o);if(n){let{start:i,end:s}=n,u=Math.max(t,i),l=Math.min(r,s),d=e.state.tr;d.setSelection(fl.create(d.doc,u,l)),e.dispatch(d)}return!0}return!1},handleDOMEvents:{mousedown:(e,t)=>{let r=this.editor;if(!ko(r,this.options.channels))return!1;let o=e.posAtCoords({left:t.clientX,top:t.clientY});if(o!==null){let n=e.state.doc.resolve(o.pos),i=n.depth;for(;i>0;){let s=n.node(i);if(s.type.name==="paragraph"||s.type.name==="heading"){e.dispatch(e.state.tr.setMeta(ga,{elementStart:n.start(i),elementEnd:n.end(i)}));break}i--}}return!1},mousemove:(e,t)=>{let r=this.editor;if(!ko(r,this.options.channels))return!1;if(e.state.selection.from!==e.state.selection.to&&fa(r)){let n=ga.getState(e.state);if(n!=null&&n.elementStart&&(n!=null&&n.elementEnd)){let{selection:i}=e.state,s=Math.max(i.from,n.elementStart),u=Math.min(i.to,n.elementEnd),l=e.state.tr;return l.setSelection(fl.create(l.doc,s,u)),e.dispatch(l),!0}}return!1}}},state:{init(){return null},apply(e,t){return e.getMeta(ga)||t}}})]}});import{mergeAttributes as I5}from"@tiptap/core";import{Node as T5,mergeAttributes as w5,textblockTypeInputRule as P5}from"@tiptap/core";var jd=T5.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]}`,w5(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=>P5({find:new RegExp(`^(#{${Math.min(...this.options.levels)},${e}})\\s$`),type:this.type,getAttributes:{level:e}}))}});import{z as sr}from"zod";var Gd=sr.object({paddingVertical:sr.number(),paddingHorizontal:sr.number(),backgroundColor:sr.string(),borderWidth:sr.number(),borderRadius:sr.number(),borderColor:sr.string(),textColor:sr.string(),textAlign:sr.enum(["left","center","right","justify"]).default("left"),selected:sr.boolean().default(!1),id:sr.string().optional()}),ne={paddingVertical:6,paddingHorizontal:0,backgroundColor:"transparent",borderWidth:0,borderRadius:0,borderColor:"#000000",textColor:"#292929",textAlign:"left",selected:!1};import{NodeViewContent as k5,NodeViewWrapper as E5}from"@tiptap/react";import{useSetAtom as M5}from"jotai";import{useCallback as N5}from"react";import{jsx as Eo}from"react/jsx-runtime";var Kd=a(({paddingVertical:e,paddingHorizontal:t,textAlign:r,backgroundColor:o,borderWidth:n,borderRadius:i,borderColor:s,textColor:u,level:l,type:d})=>{let c=d==="heading"?`h${l}`:"p";return Eo("div",{className:"courier-w-full node-element",children:Eo("div",{className:A(!u&&"is-empty"),style:{padding:`${e}px ${t}px`,textAlign:r,backgroundColor:o,borderWidth:`${n}px`,borderRadius:`${i}px`,borderColor:s,borderStyle:n>0?"solid":"none",color:u},children:Eo(k5,{as:c})})})},"TextBlockComponent"),ba=a(e=>{let t=M5(je),r=N5(()=>{if(!e.editor.isEditable)return;let u=Ge(e);u&&t(u)},[e,t]),o=!e.node.content||e.node.content.size===0,n=oo(e.getPos),i=n!==null?e.editor.state.doc.resolve(n):null;return(i==null?void 0:i.parent.type.name)==="blockquote"?Eo(E5,{className:A(e.node.attrs.isSelected&&"selected-element"),onClick:r,children:Eo(Kd,{...e.node.attrs,type:e.node.type.name})}):Eo(Lt,{id:e.node.attrs.id,className:A(e.node.attrs.isSelected&&"selected-element",o&&"is-empty"),onClick:r,editor:e.editor,children:Eo(Kd,{...e.node.attrs,type:e.node.type.name})})},"TextBlockComponentNode");import{zodResolver as A5}from"@hookform/resolvers/zod";import{useForm as L5}from"react-hook-form";import{jsx as ce,jsxs as lr}from"react/jsx-runtime";var Jd=a(({element:e,editor:t})=>{let r=L5({resolver:A5(Gd),defaultValues:{...ne,...e==null?void 0:e.attrs}}),{updateNodeAttributes:o}=Zt({editor:t,element:e,form:r,nodeType:(e==null?void 0:e.type.name)||"paragraph"});return e?lr(Ze,{...r,children:[ce(qt,{type:"text"}),lr("form",{onChange:()=>{o(r.getValues())},children:[ce("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Frame"}),lr("div",{className:"courier-flex courier-flex-row courier-gap-3 courier-mb-3",children:[ce(U,{control:r.control,name:"paddingHorizontal",render:({field:n})=>lr(z,{children:[ce($,{children:ce(ae,{startAdornment:ce(_n,{}),type:"number",min:0,...n})}),ce(_,{})]})}),ce(U,{control:r.control,name:"paddingVertical",render:({field:n})=>lr(z,{children:[ce($,{children:ce(ae,{startAdornment:ce(vo,{}),type:"number",min:0,...n})}),ce(_,{})]})})]}),ce(U,{control:r.control,name:"backgroundColor",render:({field:n})=>lr(z,{className:"courier-mb-4",children:[ce($,{children:ce(qe,{...n,defaultValue:ne.backgroundColor,onChange:i=>{n.onChange(i),o({...r.getValues(),[n.name]:i})}})}),ce(_,{})]})}),ce(fe,{className:"courier-mb-4"}),ce("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Text"}),ce(U,{control:r.control,name:"textColor",render:({field:n})=>lr(z,{className:"courier-mb-4",children:[ce($,{children:ce(qe,{...n,transparent:!1,defaultValue:ne.textColor,onChange:i=>{n.onChange(i),o({...r.getValues(),[n.name]:i})}})}),ce(_,{})]})}),ce(fe,{className:"courier-mb-4"}),ce("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Border"}),lr("div",{className:"courier-flex courier-flex-row courier-gap-3 courier-mb-3",children:[ce(U,{control:r.control,name:"borderWidth",render:({field:n})=>lr(z,{children:[ce($,{children:ce(ae,{startAdornment:ce(rr,{}),type:"number",min:0,...n})}),ce(_,{})]})}),ce(U,{control:r.control,name:"borderRadius",render:({field:n})=>lr(z,{children:[ce($,{children:ce(ae,{startAdornment:ce(yo,{}),type:"number",min:0,...n})}),ce(_,{})]})})]}),ce(U,{control:r.control,name:"borderColor",render:({field:n})=>lr(z,{className:"courier-mb-4",children:[ce($,{children:ce(qe,{...n,defaultValue:ne.borderColor,onChange:i=>{n.onChange(i),o({...r.getValues(),[n.name]:i})}})}),ce(_,{})]})})]})]}):null},"TextBlockForm");import{ReactNodeViewRenderer as S5}from"@tiptap/react";var gl=jd.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),HTMLAttributes:{class:""}}},onCreate(){ft(this.editor,this.name)},addAttributes(){var e;return{...(e=this.parent)==null?void 0:e.call(this),paddingVertical:{default:ne.paddingVertical,parseHTML:t=>t.style.paddingTop?parseInt(t.style.paddingTop):ne.paddingVertical,renderHTML:t=>({style:`padding-top: ${t.paddingVertical}px; padding-bottom: ${t.paddingVertical}px;`})},paddingHorizontal:{default:ne.paddingHorizontal,parseHTML:t=>t.style.paddingLeft?parseInt(t.style.paddingLeft):ne.paddingHorizontal,renderHTML:t=>({style:`padding-left: ${t.paddingHorizontal}px; padding-right: ${t.paddingHorizontal}px;`})},textAlign:{default:ne.textAlign,parseHTML:t=>t.style.textAlign||ne.textAlign,renderHTML:t=>({style:`text-align: ${t.textAlign}`})},backgroundColor:{default:ne.backgroundColor,parseHTML:t=>t.style.backgroundColor||ne.backgroundColor,renderHTML:t=>({style:`background-color: ${t.backgroundColor}`})},borderWidth:{default:ne.borderWidth,parseHTML:t=>t.style.borderWidth?parseInt(t.style.borderWidth):ne.borderWidth,renderHTML:t=>({style:`border-width: ${t.borderWidth}px`})},borderRadius:{default:ne.borderRadius,parseHTML:t=>t.style.borderRadius?parseInt(t.style.borderRadius):ne.borderRadius,renderHTML:t=>({style:`border-radius: ${t.borderRadius}px`})},borderColor:{default:ne.borderColor,parseHTML:t=>t.style.borderColor||ne.borderColor,renderHTML:t=>({style:`border-color: ${t.borderColor}`})},textColor:{default:ne.textColor,parseHTML:t=>t.style.color||ne.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]}`,I5(this.options.HTMLAttributes,t),0]},addNodeView(){return S5(ba)}});import{mergeAttributes as D5,Node as F5}from"@tiptap/core";import{ReactNodeViewRenderer as V5}from"@tiptap/react";import{useSetAtom as Xd}from"jotai";import{useCallback as Ar,useEffect as bl,useMemo as R5,useRef as Yd,useState as Qd}from"react";import{Fragment as H5,jsx as Nr,jsxs as hl}from"react/jsx-runtime";var B5=a(({sourcePath:e,alt:t,alignment:r,borderWidth:o,borderRadius:n,borderColor:i,isUploading:s,width:u,imageNaturalWidth:l,onFileSelect:d,editor:c})=>{let[p,m]=Qd(!1),[g,b]=Qd(!0),h=Yd(null),y=Yd(null);bl(()=>{e&&b(!0)},[e]),bl(()=>{if(e&&!l&&c){let k=new Image;k.onload=()=>{try{if(!c.view||!c.state)return;let E=c.view.state.selection.from;c.chain().setNodeSelection(E).updateAttributes("imageBlock",{imageNaturalWidth:k.naturalWidth}).run()}catch{}},k.src=e}},[e,l,c]);let T=Ar(k=>{var S,H;let E=(H=(S=c==null?void 0:c.view)==null?void 0:S.dom)==null?void 0:H.closest(".ProseMirror"),w=(E==null?void 0:E.clientWidth)||1e3,P=Math.min(100,k/w*100);return Math.round(P)},[c]),N=R5(()=>T(l),[T,l]),v=Ar(k=>{k.preventDefault(),k.stopPropagation(),k.dataTransfer.types.includes("Files")&&Array.from(k.dataTransfer.items).some(P=>P.type.startsWith("image/"))&&(m(!0),k.dataTransfer.dropEffect="copy")},[]),f=Ar(k=>{k.preventDefault(),k.stopPropagation(),m(!1)},[]),x=Ar(k=>{k.preventDefault(),k.stopPropagation(),k.dataTransfer.types.includes("Files")&&Array.from(k.dataTransfer.items).some(P=>P.type.startsWith("image/"))&&m(!0)},[]),C=Ar(k=>{k.preventDefault(),k.stopPropagation(),m(!1);let w=Array.from(k.dataTransfer.files).find(P=>P.type.startsWith("image/"));w&&d&&d(w)},[d]),B=Ar(k=>{var w;let E=(w=k.target.files)==null?void 0:w[0];E&&d&&d(E)},[d]),L=Ar(()=>{var k;(k=h.current)==null||k.click()},[]);return e?Nr("div",{className:"courier-w-full node-element",children:hl("div",{className:A("courier-relative courier-p-1",(s||g)&&"courier-min-h-[200px] courier-min-w-[300px] courier-bg-gray-100"),children:[(s||g)&&Nr("div",{className:"courier-absolute courier-inset-0 courier-flex courier-items-center courier-justify-center",children:Nr(Co,{className:"courier-w-8 courier-h-8"})}),Nr("img",{ref:y,src:e,alt:t,className:A("courier-h-auto courier-inline-block courier-w-full",{left:"courier-mr-auto",center:"courier-mx-auto",right:"courier-ml-auto"}[r],s&&"courier-opacity-50",(s||g)&&"courier-invisible"),style:{maxWidth:u===N?`${l}px`:`${u}%`,borderWidth:`${o}px`,borderRadius:`${n}px`,borderColor:i,borderStyle:o>0?"solid":"none",display:"block"},loading:"lazy",decoding:"async",draggable:!1,onLoad:k=>{if(b(!1),!l&&c)try{if(!c.view||!c.state)return;setTimeout(()=>{let E=c.view.state.selection.from;c.chain().setNodeSelection(E).updateAttributes("imageBlock",{imageNaturalWidth:k.target.naturalWidth}).run()},100)}catch(E){console.warn("Editor not ready for image update:",E)}},onError:()=>b(!1)})]})}):hl("div",{className:A("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:v,onDragEnter:x,onDragLeave:f,onDrop:C,style:{pointerEvents:"all"},children:[s?Nr(Co,{className:"courier-w-8 courier-h-8"}):hl(H5,{children:[Nr("span",{className:"courier-text-sm courier-pointer-events-none courier-inline-block",children:"Drag and drop image, or\xA0"}),Nr("button",{className:"courier-underline courier-font-medium courier-inline-block courier-text-sm",onClick:L,children:"Browse"})]}),Nr("input",{ref:h,type:"file",accept:"image/*",className:"courier-hidden",onChange:B})]})},"ImageBlockComponent"),ep=a(e=>{let t=Xd(je),r=Xd(re),{uploadImage:o}=In(),n=Ar(u=>{var p,m,g;let l=(g=(m=(p=e.editor)==null?void 0:p.view)==null?void 0:m.dom)==null?void 0:g.closest(".ProseMirror"),d=(l==null?void 0:l.clientWidth)||1e3,c=Math.min(100,u/d*100);return Math.round(c)},[e.editor]);bl(()=>{var l,d;let u=Ge(e);if((l=u==null?void 0:u.attrs)!=null&&l.sourcePath&&!((d=u==null?void 0:u.attrs)!=null&&d.imageNaturalWidth)){let c=new Image;c.onload=()=>{let p=u.attrs.width||n(c.naturalWidth),m=oo(e.getPos);m!==null&&e.editor.chain().focus().setNodeSelection(m).updateAttributes("imageBlock",{width:p,imageNaturalWidth:c.naturalWidth}).run()},c.src=u.attrs.sourcePath}},[e,n]);let i=Ar(()=>{if(!e.editor.isEditable)return;let u=Ge(e);u&&(e.editor.commands.blur(),t(u))},[e,t]),s=Ar(async u=>{let l=oo(e.getPos);Ge(e)&&l!==null&&e.editor.chain().focus().setNodeSelection(l).updateAttributes("imageBlock",{isUploading:!0,sourcePath:""}).run();try{if(!u.type.startsWith("image/"))throw new Error("Only image files are supported");let c=new FileReader;c.readAsDataURL(u),await new Promise((h,y)=>{c.onload=h,c.onerror=y});let m=(await o({file:u})).url,g=oo(e.getPos);if(Ge(e)&&g!==null){let h=new Image;h.src=m,await new Promise(T=>{h.onload=T});let y=n(h.naturalWidth);e.editor.chain().focus().setNodeSelection(g).updateAttributes("imageBlock",{sourcePath:m,isUploading:!1,width:y,imageNaturalWidth:h.naturalWidth}).run()}}catch(c){console.error("Error uploading image:",c);let p="Failed to upload image: "+c;if(c instanceof Error){let b=c.message;b.includes("GraphQL error")?p="Server error: Could not process image":(b.includes("network")||b.includes("fetch"))&&(p="Network error: Could not upload image")}r({message:`Upload failed: ${p}`,toastProps:{duration:6e3,description:`File: ${u.name} (${(u.size/1024/1024).toFixed(2)}MB)`}});let m=oo(e.getPos);Ge(e)&&m!==null&&e.editor.chain().focus().setNodeSelection(m).updateAttributes("imageBlock",{isUploading:!1}).run()}},[e,n,o,r]);return Nr(Lt,{id:e.node.attrs.id,className:A(e.node.attrs.isSelected&&"selected-element"),onClick:i,editor:e.editor,children:Nr(B5,{...e.node.attrs,onFileSelect:s,editor:e.editor})})},"ImageBlockView");var Je={sourcePath:"",link:"",alt:"",alignment:"center",width:1,borderWidth:0,borderRadius:0,borderColor:"#000000",isUploading:!1,imageNaturalWidth:0},ya=F5.create({name:"imageBlock",group:"block",atom:!0,inline:!1,onCreate(){ft(this.editor,this.name)},addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),placeholder:""}},addAttributes(){return{sourcePath:{default:Je.sourcePath,parseHTML:e=>e.getAttribute("data-source-path")||"",renderHTML:e=>({"data-source-path":e.sourcePath||""})},link:{default:Je.link,parseHTML:e=>e.getAttribute("data-link"),renderHTML:e=>({"data-link":e.link})},alt:{default:Je.alt,parseHTML:e=>e.getAttribute("data-alt"),renderHTML:e=>({"data-alt":e.alt})},alignment:{default:Je.alignment,parseHTML:e=>e.getAttribute("data-alignment"),renderHTML:e=>({"data-alignment":e.alignment})},width:{default:Je.width,parseHTML:e=>e.getAttribute("data-width"),renderHTML:e=>({"data-width":e.width})},imageNaturalWidth:{default:Je.imageNaturalWidth,parseHTML:e=>e.getAttribute("data-natural-width"),renderHTML:e=>({"data-natural-width":e.imageNaturalWidth})},borderWidth:{default:Je.borderWidth,parseHTML:e=>e.getAttribute("data-border-width"),renderHTML:e=>({"data-border-width":e.borderWidth})},borderRadius:{default:Je.borderRadius,parseHTML:e=>e.getAttribute("data-border-radius"),renderHTML:e=>({"data-border-radius":e.borderRadius})},borderColor:{default:Je.borderColor,parseHTML:e=>e.getAttribute("data-border-color"),renderHTML:e=>({"data-border-color":e.borderColor})},isUploading:{default:Je.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",D5(this.options.HTMLAttributes,e,{"data-type":"image-block"}),0]},addNodeView(){return V5(ep)},addCommands(){return{setImageBlock:e=>({chain:t})=>t().insertContent({type:this.name,attrs:{...Je,...e}}).run(),setImageBlockAt:({pos:e,src:t})=>({chain:r})=>r().insertContentAt(e,{type:this.name,attrs:{...Je,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 cr}from"zod";var tp=cr.object({sourcePath:cr.string(),link:cr.string().optional(),alt:cr.string().optional(),alignment:cr.enum(["left","center","right"]),width:cr.number().min(1).max(100),borderWidth:cr.number(),borderRadius:cr.number(),borderColor:cr.string(),isUploading:cr.boolean().optional(),imageNaturalWidth:cr.number()});import{zodResolver as O5}from"@hookform/resolvers/zod";import{useSetAtom as W5}from"jotai";import{ArrowUp as z5}from"lucide-react";import{useCallback as va,useEffect as $5,useRef as rp,useState as Ca}from"react";import{useForm as U5}from"react-hook-form";import{Fragment as op,jsx as j,jsxs as Xe}from"react/jsx-runtime";var np=a(({element:e,editor:t})=>{var B,L,k,E;let r=rp(null),o=rp(null),[n,i]=Ca(""),[s,u]=Ca(!1),[l,d]=Ca(((B=e==null?void 0:e.attrs)==null?void 0:B.imageNaturalWidth)||0),[c,p]=Ca(!1),m=W5(re),{uploadImage:g}=In(),b=U5({resolver:O5(tp),defaultValues:{...Je,...e==null?void 0:e.attrs},mode:"onChange"}),{updateNodeAttributes:h}=Zt({editor:t,element:e,form:b,nodeType:"imageBlock"});$5(()=>{var P;let w=(P=e==null?void 0:e.attrs)==null?void 0:P.sourcePath;if(w&&!l){let S=new Image;S.onload=()=>{d(S.naturalWidth);let H={...b.getValues(),imageNaturalWidth:S.naturalWidth};b.setValue("imageNaturalWidth",S.naturalWidth),h(H)},S.src=w}},[(L=e==null?void 0:e.attrs)==null?void 0:L.sourcePath,l,b,h]);let y=va(w=>{var D,F;let P=(F=(D=t==null?void 0:t.view)==null?void 0:D.dom)==null?void 0:F.closest(".ProseMirror"),S=(P==null?void 0:P.clientWidth)||1e3;if(w||(w=l),!w)return 0;let H=Math.min(100,w/S*100);return Math.round(H)},[t,l]),T=va(w=>{var P;w.preventDefault(),(P=r.current)==null||P.click()},[]),N=va((w,P)=>{let S=y(w.naturalWidth);i(`${S}%`),u(!1),b.setValue("sourcePath",P),b.setValue("imageNaturalWidth",w.naturalWidth),b.setValue("width",S);let H={...b.getValues(),sourcePath:P,width:S,imageNaturalWidth:w.naturalWidth,isUploading:!1};h(H)},[b,h,y]),v=va(w=>{if(!w)return;let P=new Image;P.onload=()=>{let S=y(P.naturalWidth);b.setValue("sourcePath",w),b.setValue("imageNaturalWidth",P.naturalWidth),b.setValue("width",S);let H={...b.getValues(),sourcePath:w,width:S,imageNaturalWidth:P.naturalWidth};h(H)},P.src=w},[b,h,y]),f=((E=(k=t==null?void 0:t.extensionManager.extensions.find(w=>w.name==="variableSuggestion"))==null?void 0:k.options)==null?void 0:E.variables)||{},x=nr(f),C=b.getValues().sourcePath;return e?Xe(Ze,{...b,children:[j(qt,{type:"image"}),Xe("form",{ref:o,onChange:()=>{let w=b.getValues();h(w)},children:[j("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Image"}),Xe(Oi,{defaultValue:"file",className:"courier-mb-3 courier-w-full",children:[Xe(Fn,{className:"courier-w-full courier-flex courier-justify-stretch courier-mb-3",children:[j(Jo,{value:"file",className:"courier-flex-1",children:"From file"}),j(Jo,{value:"url",className:"courier-flex-1",children:"From URL"})]}),j(Wi,{value:"file",children:Xe("div",{className:"courier-flex courier-flex-col courier-gap-2",children:[j(Pe,{onClick:T,className:"courier-w-full",variant:"outline",type:"button",disabled:c,children:c?j(op,{children:"Uploading..."}):Xe(op,{children:[j(z5,{strokeWidth:1.25,className:"courier-w-4 courier-h-4 courier-ml-2 courier-text-foreground"}),"Upload image"]})}),j("input",{ref:r,type:"file",accept:"image/*",className:"courier-hidden",onChange:w=>{var S;let P=(S=w.target.files)==null?void 0:S[0];if(P){p(!0),b.setValue("sourcePath",""),h({...b.getValues(),sourcePath:"",isUploading:!0});let H=new FileReader;H.onload=async()=>{try{let D=(await g({file:P})).url,F=new Image;F.onload=()=>{N(F,D),p(!1)},F.onerror=()=>{m({message:"Upload failed: Failed to load uploaded image",toastProps:{duration:6e3,description:`File: ${P.name} (${(P.size/1024/1024).toFixed(2)}MB)`}}),p(!1),h({...b.getValues(),isUploading:!1})},F.src=D}catch(V){console.error("Error uploading image:",V),m({message:"Upload failed: Failed to upload image",toastProps:{duration:6e3,description:`File: ${P.name} (${(P.size/1024/1024).toFixed(2)}MB)`}}),p(!1),h({...b.getValues(),isUploading:!1})}},H.onerror=()=>{m({message:"Upload failed: Failed to read image file",toastProps:{duration:6e3,description:`File: ${P.name} (${(P.size/1024/1024).toFixed(2)}MB)`}}),p(!1),h({...b.getValues(),isUploading:!1})},H.readAsDataURL(P)}}})]})}),j(Wi,{value:"url",children:j(U,{control:b.control,name:"sourcePath",render:({field:w})=>Xe(z,{className:"courier-mb-3",children:[j($,{children:j(Vt,{as:"Textarea",...w,autoResize:!0,className:"courier-max-h-[88px]",variables:x,onChange:P=>v(P.target.value)})}),j(_,{})]})})})]}),j(U,{control:b.control,name:"link",render:({field:w})=>Xe(z,{className:"courier-mb-3",children:[j($,{children:j(Vt,{as:"Textarea",placeholder:"Link",...w,variables:x,onChange:P=>{w.onChange(P),h({...b.getValues(),link:P.target.value})}})}),j(_,{})]})}),j(U,{control:b.control,name:"alt",render:({field:w})=>Xe(z,{className:"courier-mb-4",children:[j($,{children:j(Vt,{as:"Textarea",...w,placeholder:"Alt text...",variables:x,onChange:P=>{w.onChange(P),h({...b.getValues(),alt:P.target.value})}})}),j(_,{})]})}),j(fe,{className:"courier-mt-6 courier-mb-4"}),j("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Width"}),(()=>{let w=b.getValues().width,P=b.getValues().imageNaturalWidth,S=y(P),H=w===S,V=H?"original":"fill";return Xe(Ht,{type:"single",value:C?V:"original",onValueChange:D=>{if(!D||D===V)return;let F=D==="fill"?100:y(P);F>0&&(b.setValue("width",F),h({...b.getValues(),width:F}))},className:"courier-w-full courier-border courier-rounded-md courier-border-border courier-p-0.5 courier-mb-3 courier-shadow-sm",disabled:!C,children:[j(Ve,{size:"sm",value:"original",className:"courier-w-full courier-h-7",children:"Original"}),j(Ve,{size:"sm",value:"fill",className:"courier-w-full courier-h-7",disabled:H||!C,children:"Fill"})]})})(),j(U,{control:b.control,name:"width",render:({field:w})=>Xe(z,{className:"courier-flex-1 courier-mb-3",children:[j($,{children:j(ae,{type:"text",inputMode:"numeric",pattern:"[0-9]*",min:1,max:100,...w,value:b.getValues().sourcePath?s?n:`${w.value}%`:"0%",className:"courier-text-2xl courier-font-normal",disabled:!b.getValues().sourcePath,onFocus:P=>{u(!0),i(P.target.value)},onChange:P=>{i(P.target.value)},onKeyDown:P=>{P.key==="Enter"&&(P.preventDefault(),P.currentTarget.blur())},onBlur:P=>{u(!1);let S=parseFloat(P.target.value.replace("%",""));if(!isNaN(S)){let H=Math.min(100,Math.max(1,S));w.onChange(H),h({...b.getValues(),width:Math.round(H)})}}})}),j(_,{})]})}),j(U,{control:b.control,name:"width",render:({field:w})=>Xe(z,{className:"courier-flex-1 courier-mb-3",children:[j($,{children:j(Ss,{min:1,max:100,value:[C?w.value:0],disabled:!C,onValueChange:P=>{w.onChange(P[0]),h({...b.getValues(),width:P[0]})}})}),j(_,{})]})}),j(U,{control:b.control,name:"alignment",render:({field:w})=>Xe(z,{children:[j($,{children:Xe(Ht,{disabled:!C,type:"single",value:w.value,onValueChange:P=>{w.onChange(P),h({...b.getValues(),alignment:P})},className:"courier-w-full courier-border courier-rounded-md courier-border-border courier-p-0.5",children:[j(Ve,{size:"sm",value:"left",className:"courier-w-full",children:j(na,{className:"courier-h-4 courier-w-4"})}),j(Ve,{size:"sm",value:"center",className:"courier-w-full",children:j(ia,{className:"courier-h-4 courier-w-4"})}),j(Ve,{size:"sm",value:"right",className:"courier-w-full",children:j(aa,{className:"courier-h-4 courier-w-4"})})]})}),j(_,{})]})}),j(fe,{className:"courier-mt-6 courier-mb-4"}),j("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Border"}),Xe("div",{className:"courier-flex courier-flex-row courier-gap-3 courier-mb-3",children:[j(U,{control:b.control,name:"borderWidth",render:({field:w})=>Xe(z,{children:[j($,{children:j(ae,{startAdornment:j(rr,{}),type:"number",disabled:!C,min:0,...w,onChange:P=>{let S=parseInt(P.target.value)||0;w.onChange(S),h({...b.getValues(),borderWidth:S})}})}),j(_,{})]})}),j(U,{control:b.control,name:"borderRadius",render:({field:w})=>Xe(z,{children:[j($,{children:j(ae,{startAdornment:j(yo,{}),type:"number",disabled:!C,min:0,...w,onChange:P=>{let S=parseInt(P.target.value)||0;w.onChange(S),h({...b.getValues(),borderRadius:S})}})}),j(_,{})]})})]}),j(U,{control:b.control,name:"borderColor",render:({field:w})=>Xe(z,{className:"courier-mb-4",children:[j($,{children:j(qe,{...w,disabled:!C,defaultValue:Je.borderColor,onChange:P=>{w.onChange(P),h({...b.getValues(),[w.name]:P})}})}),j(_,{})]})})]})]}):null},"ImageBlockForm");import{getMarkRange as ip,mergeAttributes as _5}from"@tiptap/core";import Z5 from"@tiptap/extension-link";import{Plugin as ap,TextSelection as sp}from"@tiptap/pm/state";var yl=Z5.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",_5(this.options.HTMLAttributes,e,{class:"link cursor-pointer"}),0]},addProseMirrorPlugins(){var t;return[...((t=this.parent)==null?void 0:t.call(this))||[],new ap({props:{handleClick:(r,o,n)=>{if(n.button!==0)return!1;let{state:i}=r,{doc:s}=i,u=s.resolve(o),l=u.marks().find(d=>d.type.name==="link");if(l||o>0&&(l=s.resolve(o-1).marks().find(c=>c.type.name==="link")),l||o<s.content.size&&(l=s.resolve(o+1).marks().find(c=>c.type.name==="link")),l){let d=ip(u,l.type);return d?(r.dispatch(i.tr.setSelection(sp.create(s,d.from,d.to))),r.dispatch(r.state.tr.setMeta("showLinkForm",{from:d.from,to:d.to,href:l.attrs.originalHref||l.attrs.href})),!0):(r.dispatch(i.tr.setSelection(sp.create(s,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 ap({appendTransaction(r,o,n){if(!r.some(u=>u.docChanged))return null;let i=n.tr,s=!1;return n.doc.descendants((u,l)=>(u.marks.forEach(d=>{if(d.type.name==="link"&&d.attrs.href){let c=d.attrs.href;if(c.includes("__VAR_")){let p=c.replace(/__VAR_([^_]+)__/g,"{{$1}}");if(p!==c){let m=ip(n.doc.resolve(l),d.type);m&&(i.removeMark(m.from,m.to,d.type),i.addMark(m.from,m.to,d.type.create({...d.attrs,href:p,hasVariables:!0,originalHref:p})),s=!0)}}}}),!0)),s?i:null}})]}});import{zodResolver as q5}from"@hookform/resolvers/zod";import{useSetAtom as j5}from"jotai";import{useRef as G5,useEffect as K5}from"react";import{useForm as J5}from"react-hook-form";import{z as vl}from"zod";import{jsx as Mo,jsxs as lp}from"react/jsx-runtime";var X5=vl.object({href:vl.string(),openInNewTab:vl.boolean().default(!1)}),cp=a(({editor:e,mark:t,pendingLink:r})=>{var d,c;let o=j5(Gi),n=G5(null),i=J5({resolver:q5(X5),defaultValues:{href:(t==null?void 0:t.attrs.href)||"",openInNewTab:(t==null?void 0:t.attrs.target)==="_blank"||!1}});K5(()=>{i.reset({href:(t==null?void 0:t.attrs.href)||"",openInNewTab:(t==null?void 0:t.attrs.target)==="_blank"||!1})},[t,i]);let s=((c=(d=e==null?void 0:e.extensionManager.extensions.find(p=>p.name==="variableSuggestion"))==null?void 0:d.options)==null?void 0:c.variables)||{},u=nr(s),l=a(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 lp(Ze,{...i,children:[Mo("p",{className:"courier-font-medium courier-mb-4",children:"Link"}),Mo("div",{className:"courier-space-y-4",children:Mo(U,{control:i.control,name:"href",render:({field:p})=>lp(z,{children:[Mo(_t,{children:"URL"}),Mo($,{children:Mo(Vt,{as:"Textarea",autoResize:!0,...p,variables:u,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)()}})}),Mo(_,{})]})})})]})},"LinkForm");import{Node as Y5,mergeAttributes as Q5}from"@tiptap/core";var up=Y5.create({name:"paragraph",priority:1e3,addOptions(){return{HTMLAttributes:{}}},group:"block",content:"inline*",parseHTML(){return[{tag:"p"}]},renderHTML({HTMLAttributes:e}){return["p",Q5(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 sb,ReactNodeViewRenderer as lb}from"@tiptap/react";import{TextSelection as cb,Plugin as ub,PluginKey as db}from"prosemirror-state";var qr={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:"'"},Ta={48:")",49:"!",50:"@",51:"#",52:"$",53:"%",54:"^",55:"&",56:"*",57:"(",59:":",61:"+",173:"_",186:":",187:"+",188:"<",189:"_",190:">",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"'},eb=typeof navigator!="undefined"&&/Mac/.test(navigator.platform),tb=typeof navigator!="undefined"&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);for(Oe=0;Oe<10;Oe++)qr[48+Oe]=qr[96+Oe]=String(Oe);var Oe;for(Oe=1;Oe<=24;Oe++)qr[Oe+111]="F"+Oe;var Oe;for(Oe=65;Oe<=90;Oe++)qr[Oe]=String.fromCharCode(Oe+32),Ta[Oe]=String.fromCharCode(Oe);var Oe;for(xa in qr)Ta.hasOwnProperty(xa)||(Ta[xa]=qr[xa]);var xa;function dp(e){var t=eb&&e.metaKey&&e.shiftKey&&!e.ctrlKey&&!e.altKey||tb&&e.shiftKey&&e.key&&e.key.length==1||e.key=="Unidentified",r=!t&&e.key||(e.shiftKey?Ta:qr)[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(dp,"keyName");import{Plugin as rb}from"prosemirror-state";var ob=typeof navigator!="undefined"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):!1;function nb(e){let t=e.split(/-(?!$)/),r=t[t.length-1];r=="Space"&&(r=" ");let o,n,i,s;for(let u=0;u<t.length-1;u++){let l=t[u];if(/^(cmd|meta|m)$/i.test(l))s=!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))ob?s=!0:n=!0;else throw new Error("Unrecognized modifier name: "+l)}return o&&(r="Alt-"+r),n&&(r="Ctrl-"+r),s&&(r="Meta-"+r),i&&(r="Shift-"+r),r}a(nb,"normalizeKeyName");function ib(e){let t=Object.create(null);for(let r in e)t[nb(r)]=e[r];return t}a(ib,"normalize");function Cl(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(Cl,"modifiers");function pp(e){return new rb({props:{handleKeyDown:ab(e)}})}a(pp,"keymap");function ab(e){let t=ib(e);return function(r,o){let n=dp(o),i,s=t[Cl(n,o)];if(s&&s(r.state,r.dispatch,r))return!0;if(n.length==1&&n!=" "){if(o.shiftKey){let u=t[Cl(n,o,!1)];if(u&&u(r.state,r.dispatch,r))return!0}if((o.shiftKey||o.altKey||o.metaKey||n.charCodeAt(0)>127)&&(i=qr[o.keyCode])&&i!=n){let u=t[Cl(i,o)];if(u&&u(r.state,r.dispatch,r))return!0}}return!1}}a(ab,"keydownHandler");import{v4 as pb}from"uuid";var xl=up.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),HTMLAttributes:{class:""}}},onCreate(){ft(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-${pb()}`;e.setNodeMarkup(o,void 0,{...r.attrs,id:n}),t=!0}return!0}),t&&this.editor.view.dispatch(e)},addAttributes(){return{paddingVertical:{default:ne.paddingVertical,parseHTML:e=>e.style.paddingTop?parseInt(e.style.paddingTop):ne.paddingVertical,renderHTML:e=>({"data-padding-vertical":e.paddingVertical})},paddingHorizontal:{default:ne.paddingHorizontal,parseHTML:e=>e.style.paddingLeft?parseInt(e.style.paddingLeft):ne.paddingHorizontal,renderHTML:e=>({"data-padding-horizontal":e.paddingHorizontal})},textAlign:{default:ne.textAlign,parseHTML:e=>e.style.textAlign||ne.textAlign,renderHTML:e=>({"data-text-align":e.textAlign})},backgroundColor:{default:ne.backgroundColor,parseHTML:e=>e.style.backgroundColor||ne.backgroundColor,renderHTML:e=>({"data-background-color":e.backgroundColor})},borderWidth:{default:ne.borderWidth,parseHTML:e=>e.style.borderWidth?parseInt(e.style.borderWidth):ne.borderWidth,renderHTML:e=>({"data-border-width":e.borderWidth})},borderRadius:{default:ne.borderRadius,parseHTML:e=>e.style.borderRadius?parseInt(e.style.borderRadius):ne.borderRadius,renderHTML:e=>({"data-border-radius":e.borderRadius})},borderColor:{default:ne.borderColor,parseHTML:e=>e.style.borderColor||ne.borderColor,renderHTML:e=>({"data-border-color":e.borderColor})},textColor:{default:ne.textColor,parseHTML:e=>e.style.color||ne.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",sb(this.options.HTMLAttributes,e,{"data-type":"paragraph"}),0]},addNodeView(){return lb(ba)},addProseMirrorPlugins(){return[pp({"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),s=r.end(o);if(e.from!==i||e.to!==s)return t.setSelection(cb.create(t.doc,i,s)),!0}return!1}}),new ub({key:new db("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:s}=i,u=s.depth,l=null;for(;u>0;){let d=s.node(u);if(d.type.name==="paragraph"||d.type.name==="heading"){l=d;break}u--}if(l){let d=l.textContent,c=s.parentOffset===0,p=s.parentOffset===d.length,m=d.length===0,g=t.key==="Delete"||t.keyCode===46||t.code==="Delete";if(o||m||!g&&c||g&&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,s=n.depth,u=null;for(;s>0;){let c=n.node(s);if(c.type.name==="paragraph"||c.type.name==="heading"){u=c;break}s--}if(!u)return!1;let l=r?n.pos===i.pos&&n.parentOffset===0:n.pos===i.pos&&n.parentOffset===u.textContent.length,d=u.textContent.length===0;return l||d?!0:o?!1:(t.commands.command(({tr:c,dispatch:p})=>p?(c.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),s=r.end(o);return t.commands.setTextSelection({from:i,to:s}),!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 mb}from"@tiptap/core";import{Plugin as fb,PluginKey as gb}from"@tiptap/pm/state";var hb=new gb("selection"),Tl=mb.create({name:"selection",addOptions(){return{HTMLAttributes:{},setSelectedNode:()=>{}}},addGlobalAttributes(){return[{types:["paragraph","heading","button","spacer","divider","imageBlock","blockquote","customCode"],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 fb({key:hb,props:{handleClick:(e,t,r)=>{var u;let{state:o}=e;if(!this.editor.isEditable)return!1;try{let l=window.getSelection();if(l&&l.rangeCount>0){let c=l.getRangeAt(0).startContainer.parentElement;if(c&&(["P","H1","H2","H3","BLOCKQUOTE"].includes(c.tagName)||["P","H1","H2","H3","BLOCKQUOTE"].some(p=>c.closest(p)))){let p=e.posAtDOM(c,0),m=o.doc.resolve(p);if(((u=m.node(1))==null?void 0:u.type.name)==="blockquote")return this.options.setSelectedNode(m.node(1)),this.editor.commands.updateSelectionState(m.node(1)),!0;let g=m.node();if(g&&["paragraph","heading","blockquote"].includes(g.type.name))return this.options.setSelectedNode(g),this.editor.commands.updateSelectionState(g),!0}}}catch(l){console.error("Error handling click:",l)}let n=r.target,i=e.posAtDOM(n,0),s=o.doc.resolve(i).node();return s&&["paragraph","heading","blockquote"].includes(s.type.name)?(this.options.setSelectedNode(s),this.editor.commands.updateSelectionState(s),!0):!1}}})]}});var Se="top",$e="bottom",We="right",De="left",wa="auto",no=[Se,$e,We,De],jr="start",No="end",mp="clippingParents",Pa="viewport",pn="popper",fp="reference",wl=no.reduce(function(e,t){return e.concat([t+"-"+jr,t+"-"+No])},[]),ka=[].concat(no,[wa]).reduce(function(e,t){return e.concat([t,t+"-"+jr,t+"-"+No])},[]),bb="beforeRead",yb="read",vb="afterRead",Cb="beforeMain",xb="main",Tb="afterMain",wb="beforeWrite",Pb="write",kb="afterWrite",gp=[bb,yb,vb,Cb,xb,Tb,wb,Pb,kb];function Ye(e){return e?(e.nodeName||"").toLowerCase():null}a(Ye,"getNodeName");function Le(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}a(Le,"getWindow");function jt(e){var t=Le(e).Element;return e instanceof t||e instanceof Element}a(jt,"isElement");function Ue(e){var t=Le(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}a(Ue,"isHTMLElement");function mn(e){if(typeof ShadowRoot=="undefined")return!1;var t=Le(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}a(mn,"isShadowRoot");function Eb(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];!Ue(i)||!Ye(i)||(Object.assign(i.style,o),Object.keys(n).forEach(function(s){var u=n[s];u===!1?i.removeAttribute(s):i.setAttribute(s,u===!0?"":u)}))})}a(Eb,"applyStyles");function Mb(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]||{},s=Object.keys(t.styles.hasOwnProperty(o)?t.styles[o]:r[o]),u=s.reduce(function(l,d){return l[d]="",l},{});!Ue(n)||!Ye(n)||(Object.assign(n.style,u),Object.keys(i).forEach(function(l){n.removeAttribute(l)}))})}}a(Mb,"effect");var ni={name:"applyStyles",enabled:!0,phase:"write",fn:Eb,effect:Mb,requires:["computeStyles"]};function Qe(e){return e.split("-")[0]}a(Qe,"getBasePlacement");var ur=Math.max,Ao=Math.min,Gr=Math.round;function fn(){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(fn,"getUAString");function ii(){return!/^((?!chrome|android).)*safari/i.test(fn())}a(ii,"isLayoutViewport");function Gt(e,t,r){t===void 0&&(t=!1),r===void 0&&(r=!1);var o=e.getBoundingClientRect(),n=1,i=1;t&&Ue(e)&&(n=e.offsetWidth>0&&Gr(o.width)/e.offsetWidth||1,i=e.offsetHeight>0&&Gr(o.height)/e.offsetHeight||1);var s=jt(e)?Le(e):window,u=s.visualViewport,l=!ii()&&r,d=(o.left+(l&&u?u.offsetLeft:0))/n,c=(o.top+(l&&u?u.offsetTop:0))/i,p=o.width/n,m=o.height/i;return{width:p,height:m,top:c,right:d+p,bottom:c+m,left:d,x:d,y:c}}a(Gt,"getBoundingClientRect");function Lo(e){var t=Gt(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(Lo,"getLayoutRect");function ai(e,t){var r=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(r&&mn(r)){var o=t;do{if(o&&e.isSameNode(o))return!0;o=o.parentNode||o.host}while(o)}return!1}a(ai,"contains");function wt(e){return Le(e).getComputedStyle(e)}a(wt,"getComputedStyle");function Pl(e){return["table","td","th"].indexOf(Ye(e))>=0}a(Pl,"isTableElement");function ot(e){return((jt(e)?e.ownerDocument:e.document)||window.document).documentElement}a(ot,"getDocumentElement");function Kr(e){return Ye(e)==="html"?e:e.assignedSlot||e.parentNode||(mn(e)?e.host:null)||ot(e)}a(Kr,"getParentNode");function hp(e){return!Ue(e)||wt(e).position==="fixed"?null:e.offsetParent}a(hp,"getTrueOffsetParent");function Nb(e){var t=/firefox/i.test(fn()),r=/Trident/i.test(fn());if(r&&Ue(e)){var o=wt(e);if(o.position==="fixed")return null}var n=Kr(e);for(mn(n)&&(n=n.host);Ue(n)&&["html","body"].indexOf(Ye(n))<0;){var i=wt(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(Nb,"getContainingBlock");function dr(e){for(var t=Le(e),r=hp(e);r&&Pl(r)&&wt(r).position==="static";)r=hp(r);return r&&(Ye(r)==="html"||Ye(r)==="body"&&wt(r).position==="static")?t:r||Nb(e)||t}a(dr,"getOffsetParent");function Io(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}a(Io,"getMainAxisFromPlacement");function So(e,t,r){return ur(e,Ao(t,r))}a(So,"within");function bp(e,t,r){var o=So(e,t,r);return o>r?r:o}a(bp,"withinMaxClamp");function si(){return{top:0,right:0,bottom:0,left:0}}a(si,"getFreshSideObject");function li(e){return Object.assign({},si(),e)}a(li,"mergePaddingObject");function ci(e,t){return t.reduce(function(r,o){return r[o]=e,r},{})}a(ci,"expandToHashMap");var Ab=a(function(t,r){return t=typeof t=="function"?t(Object.assign({},r.rects,{placement:r.placement})):t,li(typeof t!="number"?t:ci(t,no))},"toPaddingObject");function Lb(e){var t,r=e.state,o=e.name,n=e.options,i=r.elements.arrow,s=r.modifiersData.popperOffsets,u=Qe(r.placement),l=Io(u),d=[De,We].indexOf(u)>=0,c=d?"height":"width";if(!(!i||!s)){var p=Ab(n.padding,r),m=Lo(i),g=l==="y"?Se:De,b=l==="y"?$e:We,h=r.rects.reference[c]+r.rects.reference[l]-s[l]-r.rects.popper[c],y=s[l]-r.rects.reference[l],T=dr(i),N=T?l==="y"?T.clientHeight||0:T.clientWidth||0:0,v=h/2-y/2,f=p[g],x=N-m[c]-p[b],C=N/2-m[c]/2+v,B=So(f,C,x),L=l;r.modifiersData[o]=(t={},t[L]=B,t.centerOffset=B-C,t)}}a(Lb,"arrow");function Ib(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)||ai(t.elements.popper,n)&&(t.elements.arrow=n))}a(Ib,"effect");var yp={name:"arrow",enabled:!0,phase:"main",fn:Lb,effect:Ib,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function Kt(e){return e.split("-")[1]}a(Kt,"getVariation");var Sb={top:"auto",right:"auto",bottom:"auto",left:"auto"};function Rb(e,t){var r=e.x,o=e.y,n=t.devicePixelRatio||1;return{x:Gr(r*n)/n||0,y:Gr(o*n)/n||0}}a(Rb,"roundOffsetsByDPR");function vp(e){var t,r=e.popper,o=e.popperRect,n=e.placement,i=e.variation,s=e.offsets,u=e.position,l=e.gpuAcceleration,d=e.adaptive,c=e.roundOffsets,p=e.isFixed,m=s.x,g=m===void 0?0:m,b=s.y,h=b===void 0?0:b,y=typeof c=="function"?c({x:g,y:h}):{x:g,y:h};g=y.x,h=y.y;var T=s.hasOwnProperty("x"),N=s.hasOwnProperty("y"),v=De,f=Se,x=window;if(d){var C=dr(r),B="clientHeight",L="clientWidth";if(C===Le(r)&&(C=ot(r),wt(C).position!=="static"&&u==="absolute"&&(B="scrollHeight",L="scrollWidth")),C=C,n===Se||(n===De||n===We)&&i===No){f=$e;var k=p&&C===x&&x.visualViewport?x.visualViewport.height:C[B];h-=k-o.height,h*=l?1:-1}if(n===De||(n===Se||n===$e)&&i===No){v=We;var E=p&&C===x&&x.visualViewport?x.visualViewport.width:C[L];g-=E-o.width,g*=l?1:-1}}var w=Object.assign({position:u},d&&Sb),P=c===!0?Rb({x:g,y:h},Le(r)):{x:g,y:h};if(g=P.x,h=P.y,l){var S;return Object.assign({},w,(S={},S[f]=N?"0":"",S[v]=T?"0":"",S.transform=(x.devicePixelRatio||1)<=1?"translate("+g+"px, "+h+"px)":"translate3d("+g+"px, "+h+"px, 0)",S))}return Object.assign({},w,(t={},t[f]=N?h+"px":"",t[v]=T?g+"px":"",t.transform="",t))}a(vp,"mapToStyles");function Bb(e){var t=e.state,r=e.options,o=r.gpuAcceleration,n=o===void 0?!0:o,i=r.adaptive,s=i===void 0?!0:i,u=r.roundOffsets,l=u===void 0?!0:u,d={placement:Qe(t.placement),variation:Kt(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,vp(Object.assign({},d,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:s,roundOffsets:l})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,vp(Object.assign({},d,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:l})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}a(Bb,"computeStyles");var Cp={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Bb,data:{}};var Ea={passive:!0};function Hb(e){var t=e.state,r=e.instance,o=e.options,n=o.scroll,i=n===void 0?!0:n,s=o.resize,u=s===void 0?!0:s,l=Le(t.elements.popper),d=[].concat(t.scrollParents.reference,t.scrollParents.popper);return i&&d.forEach(function(c){c.addEventListener("scroll",r.update,Ea)}),u&&l.addEventListener("resize",r.update,Ea),function(){i&&d.forEach(function(c){c.removeEventListener("scroll",r.update,Ea)}),u&&l.removeEventListener("resize",r.update,Ea)}}a(Hb,"effect");var xp={name:"eventListeners",enabled:!0,phase:"write",fn:a(function(){},"fn"),effect:Hb,data:{}};var Db={left:"right",right:"left",bottom:"top",top:"bottom"};function gn(e){return e.replace(/left|right|bottom|top/g,function(t){return Db[t]})}a(gn,"getOppositePlacement");var Fb={start:"end",end:"start"};function Ma(e){return e.replace(/start|end/g,function(t){return Fb[t]})}a(Ma,"getOppositeVariationPlacement");function Ro(e){var t=Le(e),r=t.pageXOffset,o=t.pageYOffset;return{scrollLeft:r,scrollTop:o}}a(Ro,"getWindowScroll");function Bo(e){return Gt(ot(e)).left+Ro(e).scrollLeft}a(Bo,"getWindowScrollBarX");function kl(e,t){var r=Le(e),o=ot(e),n=r.visualViewport,i=o.clientWidth,s=o.clientHeight,u=0,l=0;if(n){i=n.width,s=n.height;var d=ii();(d||!d&&t==="fixed")&&(u=n.offsetLeft,l=n.offsetTop)}return{width:i,height:s,x:u+Bo(e),y:l}}a(kl,"getViewportRect");function El(e){var t,r=ot(e),o=Ro(e),n=(t=e.ownerDocument)==null?void 0:t.body,i=ur(r.scrollWidth,r.clientWidth,n?n.scrollWidth:0,n?n.clientWidth:0),s=ur(r.scrollHeight,r.clientHeight,n?n.scrollHeight:0,n?n.clientHeight:0),u=-o.scrollLeft+Bo(e),l=-o.scrollTop;return wt(n||r).direction==="rtl"&&(u+=ur(r.clientWidth,n?n.clientWidth:0)-i),{width:i,height:s,x:u,y:l}}a(El,"getDocumentRect");function Ho(e){var t=wt(e),r=t.overflow,o=t.overflowX,n=t.overflowY;return/auto|scroll|overlay|hidden/.test(r+n+o)}a(Ho,"isScrollParent");function Na(e){return["html","body","#document"].indexOf(Ye(e))>=0?e.ownerDocument.body:Ue(e)&&Ho(e)?e:Na(Kr(e))}a(Na,"getScrollParent");function io(e,t){var r;t===void 0&&(t=[]);var o=Na(e),n=o===((r=e.ownerDocument)==null?void 0:r.body),i=Le(o),s=n?[i].concat(i.visualViewport||[],Ho(o)?o:[]):o,u=t.concat(s);return n?u:u.concat(io(Kr(s)))}a(io,"listScrollParents");function hn(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}a(hn,"rectToClientRect");function Vb(e,t){var r=Gt(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(Vb,"getInnerBoundingClientRect");function Tp(e,t,r){return t===Pa?hn(kl(e,r)):jt(t)?Vb(t,r):hn(El(ot(e)))}a(Tp,"getClientRectFromMixedType");function Ob(e){var t=io(Kr(e)),r=["absolute","fixed"].indexOf(wt(e).position)>=0,o=r&&Ue(e)?dr(e):e;return jt(o)?t.filter(function(n){return jt(n)&&ai(n,o)&&Ye(n)!=="body"}):[]}a(Ob,"getClippingParents");function Ml(e,t,r,o){var n=t==="clippingParents"?Ob(e):[].concat(t),i=[].concat(n,[r]),s=i[0],u=i.reduce(function(l,d){var c=Tp(e,d,o);return l.top=ur(c.top,l.top),l.right=Ao(c.right,l.right),l.bottom=Ao(c.bottom,l.bottom),l.left=ur(c.left,l.left),l},Tp(e,s,o));return u.width=u.right-u.left,u.height=u.bottom-u.top,u.x=u.left,u.y=u.top,u}a(Ml,"getClippingRect");function ui(e){var t=e.reference,r=e.element,o=e.placement,n=o?Qe(o):null,i=o?Kt(o):null,s=t.x+t.width/2-r.width/2,u=t.y+t.height/2-r.height/2,l;switch(n){case Se:l={x:s,y:t.y-r.height};break;case $e:l={x:s,y:t.y+t.height};break;case We:l={x:t.x+t.width,y:u};break;case De:l={x:t.x-r.width,y:u};break;default:l={x:t.x,y:t.y}}var d=n?Io(n):null;if(d!=null){var c=d==="y"?"height":"width";switch(i){case jr:l[d]=l[d]-(t[c]/2-r[c]/2);break;case No:l[d]=l[d]+(t[c]/2-r[c]/2);break;default:}}return l}a(ui,"computeOffsets");function pr(e,t){t===void 0&&(t={});var r=t,o=r.placement,n=o===void 0?e.placement:o,i=r.strategy,s=i===void 0?e.strategy:i,u=r.boundary,l=u===void 0?mp:u,d=r.rootBoundary,c=d===void 0?Pa:d,p=r.elementContext,m=p===void 0?pn:p,g=r.altBoundary,b=g===void 0?!1:g,h=r.padding,y=h===void 0?0:h,T=li(typeof y!="number"?y:ci(y,no)),N=m===pn?fp:pn,v=e.rects.popper,f=e.elements[b?N:m],x=Ml(jt(f)?f:f.contextElement||ot(e.elements.popper),l,c,s),C=Gt(e.elements.reference),B=ui({reference:C,element:v,strategy:"absolute",placement:n}),L=hn(Object.assign({},v,B)),k=m===pn?L:C,E={top:x.top-k.top+T.top,bottom:k.bottom-x.bottom+T.bottom,left:x.left-k.left+T.left,right:k.right-x.right+T.right},w=e.modifiersData.offset;if(m===pn&&w){var P=w[n];Object.keys(E).forEach(function(S){var H=[We,$e].indexOf(S)>=0?1:-1,V=[Se,$e].indexOf(S)>=0?"y":"x";E[S]+=P[V]*H})}return E}a(pr,"detectOverflow");function Nl(e,t){t===void 0&&(t={});var r=t,o=r.placement,n=r.boundary,i=r.rootBoundary,s=r.padding,u=r.flipVariations,l=r.allowedAutoPlacements,d=l===void 0?ka:l,c=Kt(o),p=c?u?wl:wl.filter(function(b){return Kt(b)===c}):no,m=p.filter(function(b){return d.indexOf(b)>=0});m.length===0&&(m=p);var g=m.reduce(function(b,h){return b[h]=pr(e,{placement:h,boundary:n,rootBoundary:i,padding:s})[Qe(h)],b},{});return Object.keys(g).sort(function(b,h){return g[b]-g[h]})}a(Nl,"computeAutoPlacement");function Wb(e){if(Qe(e)===wa)return[];var t=gn(e);return[Ma(e),t,Ma(t)]}a(Wb,"getExpandedFallbackPlacements");function zb(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,s=r.altAxis,u=s===void 0?!0:s,l=r.fallbackPlacements,d=r.padding,c=r.boundary,p=r.rootBoundary,m=r.altBoundary,g=r.flipVariations,b=g===void 0?!0:g,h=r.allowedAutoPlacements,y=t.options.placement,T=Qe(y),N=T===y,v=l||(N||!b?[gn(y)]:Wb(y)),f=[y].concat(v).reduce(function(we,Ee){return we.concat(Qe(Ee)===wa?Nl(t,{placement:Ee,boundary:c,rootBoundary:p,padding:d,flipVariations:b,allowedAutoPlacements:h}):Ee)},[]),x=t.rects.reference,C=t.rects.popper,B=new Map,L=!0,k=f[0],E=0;E<f.length;E++){var w=f[E],P=Qe(w),S=Kt(w)===jr,H=[Se,$e].indexOf(P)>=0,V=H?"width":"height",D=pr(t,{placement:w,boundary:c,rootBoundary:p,altBoundary:m,padding:d}),F=H?S?We:De:S?$e:Se;x[V]>C[V]&&(F=gn(F));var G=gn(F),Y=[];if(i&&Y.push(D[P]<=0),u&&Y.push(D[F]<=0,D[G]<=0),Y.every(function(we){return we})){k=w,L=!1;break}B.set(w,Y)}if(L)for(var se=b?3:1,oe=a(function(Ee){var Re=f.find(function(at){var me=B.get(at);if(me)return me.slice(0,Ee).every(function(Q){return Q})});if(Re)return k=Re,"break"},"_loop"),ye=se;ye>0;ye--){var xe=oe(ye);if(xe==="break")break}t.placement!==k&&(t.modifiersData[o]._skip=!0,t.placement=k,t.reset=!0)}}a(zb,"flip");var wp={name:"flip",enabled:!0,phase:"main",fn:zb,requiresIfExists:["offset"],data:{_skip:!1}};function Pp(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(Pp,"getSideOffsets");function kp(e){return[Se,We,$e,De].some(function(t){return e[t]>=0})}a(kp,"isAnySideFullyClipped");function $b(e){var t=e.state,r=e.name,o=t.rects.reference,n=t.rects.popper,i=t.modifiersData.preventOverflow,s=pr(t,{elementContext:"reference"}),u=pr(t,{altBoundary:!0}),l=Pp(s,o),d=Pp(u,n,i),c=kp(l),p=kp(d);t.modifiersData[r]={referenceClippingOffsets:l,popperEscapeOffsets:d,isReferenceHidden:c,hasPopperEscaped:p},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":c,"data-popper-escaped":p})}a($b,"hide");var Ep={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:$b};function Ub(e,t,r){var o=Qe(e),n=[De,Se].indexOf(o)>=0?-1:1,i=typeof r=="function"?r(Object.assign({},t,{placement:e})):r,s=i[0],u=i[1];return s=s||0,u=(u||0)*n,[De,We].indexOf(o)>=0?{x:u,y:s}:{x:s,y:u}}a(Ub,"distanceAndSkiddingToXY");function _b(e){var t=e.state,r=e.options,o=e.name,n=r.offset,i=n===void 0?[0,0]:n,s=ka.reduce(function(c,p){return c[p]=Ub(p,t.rects,i),c},{}),u=s[t.placement],l=u.x,d=u.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=l,t.modifiersData.popperOffsets.y+=d),t.modifiersData[o]=s}a(_b,"offset");var Mp={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:_b};function Zb(e){var t=e.state,r=e.name;t.modifiersData[r]=ui({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})}a(Zb,"popperOffsets");var Np={name:"popperOffsets",enabled:!0,phase:"read",fn:Zb,data:{}};function Al(e){return e==="x"?"y":"x"}a(Al,"getAltAxis");function qb(e){var t=e.state,r=e.options,o=e.name,n=r.mainAxis,i=n===void 0?!0:n,s=r.altAxis,u=s===void 0?!1:s,l=r.boundary,d=r.rootBoundary,c=r.altBoundary,p=r.padding,m=r.tether,g=m===void 0?!0:m,b=r.tetherOffset,h=b===void 0?0:b,y=pr(t,{boundary:l,rootBoundary:d,padding:p,altBoundary:c}),T=Qe(t.placement),N=Kt(t.placement),v=!N,f=Io(T),x=Al(f),C=t.modifiersData.popperOffsets,B=t.rects.reference,L=t.rects.popper,k=typeof h=="function"?h(Object.assign({},t.rects,{placement:t.placement})):h,E=typeof k=="number"?{mainAxis:k,altAxis:k}:Object.assign({mainAxis:0,altAxis:0},k),w=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,P={x:0,y:0};if(C){if(i){var S,H=f==="y"?Se:De,V=f==="y"?$e:We,D=f==="y"?"height":"width",F=C[f],G=F+y[H],Y=F-y[V],se=g?-L[D]/2:0,oe=N===jr?B[D]:L[D],ye=N===jr?-L[D]:-B[D],xe=t.elements.arrow,we=g&&xe?Lo(xe):{width:0,height:0},Ee=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:si(),Re=Ee[H],at=Ee[V],me=So(0,B[D],we[D]),Q=v?B[D]/2-se-me-Re-E.mainAxis:oe-me-Re-E.mainAxis,ve=v?-B[D]/2+se+me+at+E.mainAxis:ye+me+at+E.mainAxis,be=t.elements.arrow&&dr(t.elements.arrow),ze=be?f==="y"?be.clientTop||0:be.clientLeft||0:0,st=(S=w==null?void 0:w[f])!=null?S:0,yt=F+Q-st-ze,lt=F+ve-st,Be=So(g?Ao(G,yt):G,F,g?ur(Y,lt):Y);C[f]=Be,P[f]=Be-F}if(u){var ct,vt=f==="x"?Se:De,Wt=f==="x"?$e:We,tt=C[x],ut=x==="y"?"height":"width",rt=tt+y[vt],Ct=tt-y[Wt],ee=[Se,De].indexOf(T)!==-1,Rt=(ct=w==null?void 0:w[x])!=null?ct:0,zt=ee?rt:tt-B[ut]-L[ut]-Rt+E.altAxis,I=ee?tt+B[ut]+L[ut]-Rt-E.altAxis:Ct,J=g&&ee?bp(zt,tt,I):So(g?zt:rt,tt,g?I:Ct);C[x]=J,P[x]=J-tt}t.modifiersData[o]=P}}a(qb,"preventOverflow");var Ap={name:"preventOverflow",enabled:!0,phase:"main",fn:qb,requiresIfExists:["offset"]};function Ll(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}a(Ll,"getHTMLElementScroll");function Il(e){return e===Le(e)||!Ue(e)?Ro(e):Ll(e)}a(Il,"getNodeScroll");function jb(e){var t=e.getBoundingClientRect(),r=Gr(t.width)/e.offsetWidth||1,o=Gr(t.height)/e.offsetHeight||1;return r!==1||o!==1}a(jb,"isElementScaled");function Sl(e,t,r){r===void 0&&(r=!1);var o=Ue(t),n=Ue(t)&&jb(t),i=ot(t),s=Gt(e,n,r),u={scrollLeft:0,scrollTop:0},l={x:0,y:0};return(o||!o&&!r)&&((Ye(t)!=="body"||Ho(i))&&(u=Il(t)),Ue(t)?(l=Gt(t,!0),l.x+=t.clientLeft,l.y+=t.clientTop):i&&(l.x=Bo(i))),{x:s.left+u.scrollLeft-l.x,y:s.top+u.scrollTop-l.y,width:s.width,height:s.height}}a(Sl,"getCompositeRect");function Gb(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 s=[].concat(i.requires||[],i.requiresIfExists||[]);s.forEach(function(u){if(!r.has(u)){var l=t.get(u);l&&n(l)}}),o.push(i)}return a(n,"sort"),e.forEach(function(i){r.has(i.name)||n(i)}),o}a(Gb,"order");function Rl(e){var t=Gb(e);return gp.reduce(function(r,o){return r.concat(t.filter(function(n){return n.phase===o}))},[])}a(Rl,"orderModifiers");function Bl(e){var t;return function(){return t||(t=new Promise(function(r){Promise.resolve().then(function(){t=void 0,r(e())})})),t}}a(Bl,"debounce");function Hl(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(Hl,"mergeByName");var Lp={placement:"bottom",modifiers:[],strategy:"absolute"};function Ip(){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(Ip,"areValidElements");function Sp(e){e===void 0&&(e={});var t=e,r=t.defaultModifiers,o=r===void 0?[]:r,n=t.defaultOptions,i=n===void 0?Lp:n;return a(function(u,l,d){d===void 0&&(d=i);var c={placement:"bottom",orderedModifiers:[],options:Object.assign({},Lp,i),modifiersData:{},elements:{reference:u,popper:l},attributes:{},styles:{}},p=[],m=!1,g={state:c,setOptions:a(function(T){var N=typeof T=="function"?T(c.options):T;h(),c.options=Object.assign({},i,c.options,N),c.scrollParents={reference:jt(u)?io(u):u.contextElement?io(u.contextElement):[],popper:io(l)};var v=Rl(Hl([].concat(o,c.options.modifiers)));return c.orderedModifiers=v.filter(function(f){return f.enabled}),b(),g.update()},"setOptions"),forceUpdate:a(function(){if(!m){var T=c.elements,N=T.reference,v=T.popper;if(Ip(N,v)){c.rects={reference:Sl(N,dr(v),c.options.strategy==="fixed"),popper:Lo(v)},c.reset=!1,c.placement=c.options.placement,c.orderedModifiers.forEach(function(E){return c.modifiersData[E.name]=Object.assign({},E.data)});for(var f=0;f<c.orderedModifiers.length;f++){if(c.reset===!0){c.reset=!1,f=-1;continue}var x=c.orderedModifiers[f],C=x.fn,B=x.options,L=B===void 0?{}:B,k=x.name;typeof C=="function"&&(c=C({state:c,options:L,name:k,instance:g})||c)}}}},"forceUpdate"),update:Bl(function(){return new Promise(function(y){g.forceUpdate(),y(c)})}),destroy:a(function(){h(),m=!0},"destroy")};if(!Ip(u,l))return g;g.setOptions(d).then(function(y){!m&&d.onFirstUpdate&&d.onFirstUpdate(y)});function b(){c.orderedModifiers.forEach(function(y){var T=y.name,N=y.options,v=N===void 0?{}:N,f=y.effect;if(typeof f=="function"){var x=f({state:c,name:T,instance:g,options:v}),C=a(function(){},"noopFn");p.push(x||C)}})}a(b,"runModifierEffects");function h(){p.forEach(function(y){return y()}),p=[]}return a(h,"cleanupModifierEffects"),g},"createPopper")}a(Sp,"popperGenerator");var Kb=[xp,Np,Cp,ni,Mp,wp,Ap,yp,Ep],Dl=Sp({defaultModifiers:Kb});var Jb="tippy-box",$p="tippy-content",Xb="tippy-backdrop",Up="tippy-arrow",_p="tippy-svg-arrow",Do={passive:!0,capture:!0},Zp=a(function(){return document.body},"TIPPY_DEFAULT_APPEND_TO");function Fl(e,t,r){if(Array.isArray(e)){var o=e[t];return o==null?Array.isArray(r)?r[t]:r:o}return e}a(Fl,"getValueAtIndexOrReturn");function Ul(e,t){var r={}.toString.call(e);return r.indexOf("[object")===0&&r.indexOf(t+"]")>-1}a(Ul,"isType");function qp(e,t){return typeof e=="function"?e.apply(void 0,t):e}a(qp,"invokeWithArgsOrReturn");function Rp(e,t){if(t===0)return e;var r;return function(o){clearTimeout(r),r=setTimeout(function(){e(o)},t)}}a(Rp,"debounce");function Yb(e){return e.split(/\s+/).filter(Boolean)}a(Yb,"splitBySpaces");function bn(e){return[].concat(e)}a(bn,"normalizeToArray");function Bp(e,t){e.indexOf(t)===-1&&e.push(t)}a(Bp,"pushIfUnique");function Qb(e){return e.filter(function(t,r){return e.indexOf(t)===r})}a(Qb,"unique");function e2(e){return e.split("-")[0]}a(e2,"getBasePlacement");function La(e){return[].slice.call(e)}a(La,"arrayFrom");function Hp(e){return Object.keys(e).reduce(function(t,r){return e[r]!==void 0&&(t[r]=e[r]),t},{})}a(Hp,"removeUndefinedProps");function di(){return document.createElement("div")}a(di,"div");function Ia(e){return["Element","Fragment"].some(function(t){return Ul(e,t)})}a(Ia,"isElement");function t2(e){return Ul(e,"NodeList")}a(t2,"isNodeList");function r2(e){return Ul(e,"MouseEvent")}a(r2,"isMouseEvent");function o2(e){return!!(e&&e._tippy&&e._tippy.reference===e)}a(o2,"isReferenceElement");function n2(e){return Ia(e)?[e]:t2(e)?La(e):Array.isArray(e)?e:La(document.querySelectorAll(e))}a(n2,"getArrayOfElements");function Vl(e,t){e.forEach(function(r){r&&(r.style.transitionDuration=t+"ms")})}a(Vl,"setTransitionDuration");function Dp(e,t){e.forEach(function(r){r&&r.setAttribute("data-state",t)})}a(Dp,"setVisibilityState");function i2(e){var t,r=bn(e),o=r[0];return o!=null&&(t=o.ownerDocument)!=null&&t.body?o.ownerDocument:document}a(i2,"getOwnerDocument");function a2(e,t){var r=t.clientX,o=t.clientY;return e.every(function(n){var i=n.popperRect,s=n.popperState,u=n.props,l=u.interactiveBorder,d=e2(s.placement),c=s.modifiersData.offset;if(!c)return!0;var p=d==="bottom"?c.top.y:0,m=d==="top"?c.bottom.y:0,g=d==="right"?c.left.x:0,b=d==="left"?c.right.x:0,h=i.top-o+p>l,y=o-i.bottom-m>l,T=i.left-r+g>l,N=r-i.right-b>l;return h||y||T||N})}a(a2,"isCursorOutsideInteractiveBorder");function Ol(e,t,r){var o=t+"EventListener";["transitionend","webkitTransitionEnd"].forEach(function(n){e[o](n,r)})}a(Ol,"updateTransitionEndListener");function Fp(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(Fp,"actualContains");var Lr={isTouch:!1},Vp=0;function s2(){Lr.isTouch||(Lr.isTouch=!0,window.performance&&document.addEventListener("mousemove",jp))}a(s2,"onDocumentTouchStart");function jp(){var e=performance.now();e-Vp<20&&(Lr.isTouch=!1,document.removeEventListener("mousemove",jp)),Vp=e}a(jp,"onDocumentMouseMove");function l2(){var e=document.activeElement;if(o2(e)){var t=e._tippy;e.blur&&!t.state.isVisible&&e.blur()}}a(l2,"onWindowBlur");function c2(){document.addEventListener("touchstart",s2,Do),window.addEventListener("blur",l2)}a(c2,"bindGlobalEventListeners");var u2=typeof window!="undefined"&&typeof document!="undefined",d2=u2?!!window.msCrypto:!1;var p2={animateFill:!1,followCursor:!1,inlinePositioning:!1,sticky:!1},m2={allowHTML:!1,animation:"fade",arrow:!0,content:"",inertia:!1,maxWidth:350,role:"tooltip",theme:"",zIndex:9999},mr=Object.assign({appendTo:Zp,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},p2,m2),f2=Object.keys(mr),g2=a(function(t){var r=Object.keys(t);r.forEach(function(o){mr[o]=t[o]})},"setDefaultProps");function Gp(e){var t=e.plugins||[],r=t.reduce(function(o,n){var i=n.name,s=n.defaultValue;if(i){var u;o[i]=e[i]!==void 0?e[i]:(u=mr[i])!=null?u:s}return o},{});return Object.assign({},e,r)}a(Gp,"getExtendedPassedProps");function h2(e,t){var r=t?Object.keys(Gp(Object.assign({},mr,{plugins:t}))):f2,o=r.reduce(function(n,i){var s=(e.getAttribute("data-tippy-"+i)||"").trim();if(!s)return n;if(i==="content")n[i]=s;else try{n[i]=JSON.parse(s)}catch{n[i]=s}return n},{});return o}a(h2,"getDataAttributeProps");function Op(e,t){var r=Object.assign({},t,{content:qp(t.content,[e])},t.ignoreAttributes?{}:h2(e,t.plugins));return r.aria=Object.assign({},mr.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(Op,"evaluateProps");var b2=a(function(){return"innerHTML"},"innerHTML");function zl(e,t){e[b2()]=t}a(zl,"dangerouslySetInnerHTML");function Wp(e){var t=di();return e===!0?t.className=Up:(t.className=_p,Ia(e)?t.appendChild(e):zl(t,e)),t}a(Wp,"createArrowElement");function zp(e,t){Ia(t.content)?(zl(e,""),e.appendChild(t.content)):typeof t.content!="function"&&(t.allowHTML?zl(e,t.content):e.textContent=t.content)}a(zp,"setContent");function $l(e){var t=e.firstElementChild,r=La(t.children);return{box:t,content:r.find(function(o){return o.classList.contains($p)}),arrow:r.find(function(o){return o.classList.contains(Up)||o.classList.contains(_p)}),backdrop:r.find(function(o){return o.classList.contains(Xb)})}}a($l,"getChildren");function Kp(e){var t=di(),r=di();r.className=Jb,r.setAttribute("data-state","hidden"),r.setAttribute("tabindex","-1");var o=di();o.className=$p,o.setAttribute("data-state","hidden"),zp(o,e.props),t.appendChild(r),r.appendChild(o),n(e.props,e.props);function n(i,s){var u=$l(t),l=u.box,d=u.content,c=u.arrow;s.theme?l.setAttribute("data-theme",s.theme):l.removeAttribute("data-theme"),typeof s.animation=="string"?l.setAttribute("data-animation",s.animation):l.removeAttribute("data-animation"),s.inertia?l.setAttribute("data-inertia",""):l.removeAttribute("data-inertia"),l.style.maxWidth=typeof s.maxWidth=="number"?s.maxWidth+"px":s.maxWidth,s.role?l.setAttribute("role",s.role):l.removeAttribute("role"),(i.content!==s.content||i.allowHTML!==s.allowHTML)&&zp(d,e.props),s.arrow?c?i.arrow!==s.arrow&&(l.removeChild(c),l.appendChild(Wp(s.arrow))):l.appendChild(Wp(s.arrow)):c&&l.removeChild(c)}return a(n,"onUpdate"),{popper:t,onUpdate:n}}a(Kp,"render");Kp.$$tippy=!0;var y2=1,Aa=[],Wl=[];function v2(e,t){var r=Op(e,Object.assign({},mr,Gp(Hp(t)))),o,n,i,s=!1,u=!1,l=!1,d=!1,c,p,m,g=[],b=Rp(yt,r.interactiveDebounce),h,y=y2++,T=null,N=Qb(r.plugins),v={isEnabled:!0,isVisible:!1,isDestroyed:!1,isMounted:!1,isShown:!1},f={id:y,reference:e,popper:di(),popperInstance:T,props:r,state:v,plugins:N,clearDelayTimeouts:zt,setProps:I,setContent:J,show:de,hide:le,hideWithInteractivity:te,enable:ee,disable:Rt,unmount:Ce,destroy:Te};if(!r.render)return f;var x=r.render(f),C=x.popper,B=x.onUpdate;C.setAttribute("data-tippy-root",""),C.id="tippy-"+f.id,f.popper=C,e._tippy=f,C._tippy=f;var L=N.map(function(M){return M.fn(f)}),k=e.hasAttribute("aria-expanded");return be(),se(),F(),G("onCreate",[f]),r.showOnCreate&&rt(),C.addEventListener("mouseenter",function(){f.props.interactive&&f.state.isVisible&&f.clearDelayTimeouts()}),C.addEventListener("mouseleave",function(){f.props.interactive&&f.props.trigger.indexOf("mouseenter")>=0&&H().addEventListener("mousemove",b)}),f;function E(){var M=f.props.touch;return Array.isArray(M)?M:[M,0]}a(E,"getNormalizedTouchSettings");function w(){return E()[0]==="hold"}a(w,"getIsCustomTouchBehavior");function P(){var M;return!!((M=f.props.render)!=null&&M.$$tippy)}a(P,"getIsDefaultRenderFn");function S(){return h||e}a(S,"getCurrentTarget");function H(){var M=S().parentNode;return M?i2(M):document}a(H,"getDocument");function V(){return $l(C)}a(V,"getDefaultTemplateChildren");function D(M){return f.state.isMounted&&!f.state.isVisible||Lr.isTouch||c&&c.type==="focus"?0:Fl(f.props.delay,M?0:1,mr.delay)}a(D,"getDelay");function F(M){M===void 0&&(M=!1),C.style.pointerEvents=f.props.interactive&&!M?"":"none",C.style.zIndex=""+f.props.zIndex}a(F,"handleStyles");function G(M,O,R){if(R===void 0&&(R=!0),L.forEach(function(W){W[M]&&W[M].apply(W,O)}),R){var X;(X=f.props)[M].apply(X,O)}}a(G,"invokeHook");function Y(){var M=f.props.aria;if(M.content){var O="aria-"+M.content,R=C.id,X=bn(f.props.triggerTarget||e);X.forEach(function(W){var Fe=W.getAttribute(O);if(f.state.isVisible)W.setAttribute(O,Fe?Fe+" "+R:R);else{var ue=Fe&&Fe.replace(R,"").trim();ue?W.setAttribute(O,ue):W.removeAttribute(O)}})}}a(Y,"handleAriaContentAttribute");function se(){if(!(k||!f.props.aria.expanded)){var M=bn(f.props.triggerTarget||e);M.forEach(function(O){f.props.interactive?O.setAttribute("aria-expanded",f.state.isVisible&&O===S()?"true":"false"):O.removeAttribute("aria-expanded")})}}a(se,"handleAriaExpandedAttribute");function oe(){H().removeEventListener("mousemove",b),Aa=Aa.filter(function(M){return M!==b})}a(oe,"cleanupInteractiveMouseListeners");function ye(M){if(!(Lr.isTouch&&(l||M.type==="mousedown"))){var O=M.composedPath&&M.composedPath()[0]||M.target;if(!(f.props.interactive&&Fp(C,O))){if(bn(f.props.triggerTarget||e).some(function(R){return Fp(R,O)})){if(Lr.isTouch||f.state.isVisible&&f.props.trigger.indexOf("click")>=0)return}else G("onClickOutside",[f,M]);f.props.hideOnClick===!0&&(f.clearDelayTimeouts(),f.hide(),u=!0,setTimeout(function(){u=!1}),f.state.isMounted||Re())}}}a(ye,"onDocumentPress");function xe(){l=!0}a(xe,"onTouchMove");function we(){l=!1}a(we,"onTouchStart");function Ee(){var M=H();M.addEventListener("mousedown",ye,!0),M.addEventListener("touchend",ye,Do),M.addEventListener("touchstart",we,Do),M.addEventListener("touchmove",xe,Do)}a(Ee,"addDocumentPress");function Re(){var M=H();M.removeEventListener("mousedown",ye,!0),M.removeEventListener("touchend",ye,Do),M.removeEventListener("touchstart",we,Do),M.removeEventListener("touchmove",xe,Do)}a(Re,"removeDocumentPress");function at(M,O){Q(M,function(){!f.state.isVisible&&C.parentNode&&C.parentNode.contains(C)&&O()})}a(at,"onTransitionedOut");function me(M,O){Q(M,O)}a(me,"onTransitionedIn");function Q(M,O){var R=V().box;function X(W){W.target===R&&(Ol(R,"remove",X),O())}if(a(X,"listener"),M===0)return O();Ol(R,"remove",p),Ol(R,"add",X),p=X}a(Q,"onTransitionEnd");function ve(M,O,R){R===void 0&&(R=!1);var X=bn(f.props.triggerTarget||e);X.forEach(function(W){W.addEventListener(M,O,R),g.push({node:W,eventType:M,handler:O,options:R})})}a(ve,"on");function be(){w()&&(ve("touchstart",st,{passive:!0}),ve("touchend",lt,{passive:!0})),Yb(f.props.trigger).forEach(function(M){if(M!=="manual")switch(ve(M,st),M){case"mouseenter":ve("mouseleave",lt);break;case"focus":ve(d2?"focusout":"blur",Be);break;case"focusin":ve("focusout",Be);break}})}a(be,"addListeners");function ze(){g.forEach(function(M){var O=M.node,R=M.eventType,X=M.handler,W=M.options;O.removeEventListener(R,X,W)}),g=[]}a(ze,"removeListeners");function st(M){var O,R=!1;if(!(!f.state.isEnabled||ct(M)||u)){var X=((O=c)==null?void 0:O.type)==="focus";c=M,h=M.currentTarget,se(),!f.state.isVisible&&r2(M)&&Aa.forEach(function(W){return W(M)}),M.type==="click"&&(f.props.trigger.indexOf("mouseenter")<0||s)&&f.props.hideOnClick!==!1&&f.state.isVisible?R=!0:rt(M),M.type==="click"&&(s=!R),R&&!X&&Ct(M)}}a(st,"onTrigger");function yt(M){var O=M.target,R=S().contains(O)||C.contains(O);if(!(M.type==="mousemove"&&R)){var X=ut().concat(C).map(function(W){var Fe,ue=W._tippy,Vr=(Fe=ue.popperInstance)==null?void 0:Fe.state;return Vr?{popperRect:W.getBoundingClientRect(),popperState:Vr,props:r}:null}).filter(Boolean);a2(X,M)&&(oe(),Ct(M))}}a(yt,"onMouseMove");function lt(M){var O=ct(M)||f.props.trigger.indexOf("click")>=0&&s;if(!O){if(f.props.interactive){f.hideWithInteractivity(M);return}Ct(M)}}a(lt,"onMouseLeave");function Be(M){f.props.trigger.indexOf("focusin")<0&&M.target!==S()||f.props.interactive&&M.relatedTarget&&C.contains(M.relatedTarget)||Ct(M)}a(Be,"onBlurOrFocusOut");function ct(M){return Lr.isTouch?w()!==M.type.indexOf("touch")>=0:!1}a(ct,"isEventListenerStopped");function vt(){Wt();var M=f.props,O=M.popperOptions,R=M.placement,X=M.offset,W=M.getReferenceClientRect,Fe=M.moveTransition,ue=P()?$l(C).arrow:null,Vr=W?{getBoundingClientRect:W,contextElement:W.contextElement||S()}:e,Mn={name:"$$tippy",enabled:!0,phase:"beforeWrite",requires:["computeStyles"],fn:a(function(po){var Or=po.state;if(P()){var wi=V(),_o=wi.box;["placement","reference-hidden","escaped"].forEach(function(mo){mo==="placement"?_o.setAttribute("data-placement",Or.placement):Or.attributes.popper["data-popper-"+mo]?_o.setAttribute("data-"+mo,""):_o.removeAttribute("data-"+mo)}),Or.attributes.popper={}}},"fn")},gr=[{name:"offset",options:{offset:X}},{name:"preventOverflow",options:{padding:{top:2,bottom:2,left:5,right:5}}},{name:"flip",options:{padding:5}},{name:"computeStyles",options:{adaptive:!Fe}},Mn];P()&&ue&&gr.push({name:"arrow",options:{element:ue,padding:3}}),gr.push.apply(gr,(O==null?void 0:O.modifiers)||[]),f.popperInstance=Dl(Vr,C,Object.assign({},O,{placement:R,onFirstUpdate:m,modifiers:gr}))}a(vt,"createPopperInstance");function Wt(){f.popperInstance&&(f.popperInstance.destroy(),f.popperInstance=null)}a(Wt,"destroyPopperInstance");function tt(){var M=f.props.appendTo,O,R=S();f.props.interactive&&M===Zp||M==="parent"?O=R.parentNode:O=qp(M,[R]),O.contains(C)||O.appendChild(C),f.state.isMounted=!0,vt()}a(tt,"mount");function ut(){return La(C.querySelectorAll("[data-tippy-root]"))}a(ut,"getNestedPopperTree");function rt(M){f.clearDelayTimeouts(),M&&G("onTrigger",[f,M]),Ee();var O=D(!0),R=E(),X=R[0],W=R[1];Lr.isTouch&&X==="hold"&&W&&(O=W),O?o=setTimeout(function(){f.show()},O):f.show()}a(rt,"scheduleShow");function Ct(M){if(f.clearDelayTimeouts(),G("onUntrigger",[f,M]),!f.state.isVisible){Re();return}if(!(f.props.trigger.indexOf("mouseenter")>=0&&f.props.trigger.indexOf("click")>=0&&["mouseleave","mousemove"].indexOf(M.type)>=0&&s)){var O=D(!1);O?n=setTimeout(function(){f.state.isVisible&&f.hide()},O):i=requestAnimationFrame(function(){f.hide()})}}a(Ct,"scheduleHide");function ee(){f.state.isEnabled=!0}a(ee,"enable");function Rt(){f.hide(),f.state.isEnabled=!1}a(Rt,"disable");function zt(){clearTimeout(o),clearTimeout(n),cancelAnimationFrame(i)}a(zt,"clearDelayTimeouts");function I(M){if(!f.state.isDestroyed){G("onBeforeUpdate",[f,M]),ze();var O=f.props,R=Op(e,Object.assign({},O,Hp(M),{ignoreAttributes:!0}));f.props=R,be(),O.interactiveDebounce!==R.interactiveDebounce&&(oe(),b=Rp(yt,R.interactiveDebounce)),O.triggerTarget&&!R.triggerTarget?bn(O.triggerTarget).forEach(function(X){X.removeAttribute("aria-expanded")}):R.triggerTarget&&e.removeAttribute("aria-expanded"),se(),F(),B&&B(O,R),f.popperInstance&&(vt(),ut().forEach(function(X){requestAnimationFrame(X._tippy.popperInstance.forceUpdate)})),G("onAfterUpdate",[f,M])}}a(I,"setProps");function J(M){f.setProps({content:M})}a(J,"setContent");function de(){var M=f.state.isVisible,O=f.state.isDestroyed,R=!f.state.isEnabled,X=Lr.isTouch&&!f.props.touch,W=Fl(f.props.duration,0,mr.duration);if(!(M||O||R||X)&&!S().hasAttribute("disabled")&&(G("onShow",[f],!1),f.props.onShow(f)!==!1)){if(f.state.isVisible=!0,P()&&(C.style.visibility="visible"),F(),Ee(),f.state.isMounted||(C.style.transition="none"),P()){var Fe=V(),ue=Fe.box,Vr=Fe.content;Vl([ue,Vr],0)}m=a(function(){var gr;if(!(!f.state.isVisible||d)){if(d=!0,C.offsetHeight,C.style.transition=f.props.moveTransition,P()&&f.props.animation){var Uo=V(),po=Uo.box,Or=Uo.content;Vl([po,Or],W),Dp([po,Or],"visible")}Y(),se(),Bp(Wl,f),(gr=f.popperInstance)==null||gr.forceUpdate(),G("onMount",[f]),f.props.animation&&P()&&me(W,function(){f.state.isShown=!0,G("onShown",[f])})}},"onFirstUpdate"),tt()}}a(de,"show");function le(){var M=!f.state.isVisible,O=f.state.isDestroyed,R=!f.state.isEnabled,X=Fl(f.props.duration,1,mr.duration);if(!(M||O||R)&&(G("onHide",[f],!1),f.props.onHide(f)!==!1)){if(f.state.isVisible=!1,f.state.isShown=!1,d=!1,s=!1,P()&&(C.style.visibility="hidden"),oe(),Re(),F(!0),P()){var W=V(),Fe=W.box,ue=W.content;f.props.animation&&(Vl([Fe,ue],X),Dp([Fe,ue],"hidden"))}Y(),se(),f.props.animation?P()&&at(X,f.unmount):f.unmount()}}a(le,"hide");function te(M){H().addEventListener("mousemove",b),Bp(Aa,b),b(M)}a(te,"hideWithInteractivity");function Ce(){f.state.isVisible&&f.hide(),f.state.isMounted&&(Wt(),ut().forEach(function(M){M._tippy.unmount()}),C.parentNode&&C.parentNode.removeChild(C),Wl=Wl.filter(function(M){return M!==f}),f.state.isMounted=!1,G("onHidden",[f]))}a(Ce,"unmount");function Te(){f.state.isDestroyed||(f.clearDelayTimeouts(),f.unmount(),ze(),delete e._tippy,f.state.isDestroyed=!0,G("onDestroy",[f]))}a(Te,"destroy")}a(v2,"createTippy");function pi(e,t){t===void 0&&(t={});var r=mr.plugins.concat(t.plugins||[]);c2();var o=Object.assign({},t,{plugins:r}),n=n2(e);if(0)var i,s;var u=n.reduce(function(l,d){var c=d&&v2(d,o);return c&&l.push(c),l},[]);return Ia(e)?u[0]:u}a(pi,"tippy");pi.defaultProps=mr;pi.setDefaultProps=g2;pi.currentInput=Lr;var US=Object.assign({},ni,{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")});pi.setDefaultProps({render:Kp});var Jp=pi;import{forwardRef as C2}from"react";import{jsx as x2}from"react/jsx-runtime";var _l=C2(({children:e,className:t,withShadow:r=!0,withBorder:o=!0,...n},i)=>{let s=A("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 x2("div",{className:s,...n,ref:i,children:e})});_l.displayName="Surface";import{Extension as E2,Node as M2}from"@tiptap/core";import{ReactNodeViewRenderer as N2}from"@tiptap/react";import{Suggestion as A2}from"@tiptap/suggestion";import{ReactRenderer as T2}from"@tiptap/react";var fr={items:({query:e,editor:t})=>{var n,i;let r=((i=(n=t.extensionManager.extensions.find(s=>s.name==="variableSuggestion"))==null?void 0:n.options)==null?void 0:i.variables)||{};return nr(r).filter(s=>s.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,s)=>{e==null||e.updateProps({...i,selected:s})},"updateComponent"),n=a(i=>{var l,d;if(!r)return!1;let u=((l=fr.items)==null?void 0:l.call(fr,{query:(e==null?void 0:e.props).query||"",editor:(e==null?void 0:e.props).editor}))[i];return u?((d=fr.command)==null||d.call(fr,{editor:r.editor,range:r.range,props:u}),!0):!1},"selectItem");return{onStart:i=>{r=i,e=new T2(Qn,{props:{...i,selected:0},editor:i.editor}),i.clientRect&&(t=Jp(i.editor.options.element,{getReferenceClientRect:()=>{var s;return((s=i.clientRect)==null?void 0:s.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 s;return((s=i.clientRect)==null?void 0:s.call(i))||new DOMRect}}))},onKeyDown(i){var l;if(!e||!r)return!1;let s=(l=fr.items)==null?void 0:l.call(fr,{query:e.props.query||"",editor:e.props.editor}),u=e.props.selected;if(i.event.key==="ArrowUp"){let d=(u-1+s.length)%s.length;return o(r,d),!0}if(i.event.key==="ArrowDown"){let d=(u+1)%s.length;return o(r,d),!0}return i.event.key==="Enter"?(i.event.preventDefault(),n(u)):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 w2}from"@tiptap/react";import{Braces as P2}from"lucide-react";import{jsx as Xp,jsxs as k2}from"react/jsx-runtime";var Yp=a(({node:e})=>Xp(w2,{className:"courier-inline-block",children:k2("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:[Xp(P2,{size:16,className:"courier-text-gray-500 group-hover:courier-stroke-primary"}),e.attrs.id]})}),"VariableView");var Zl=M2.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]",getAttrs:e=>{let t=e.getAttribute("data-id");return t?{id:t}:!1}}]},renderHTML({HTMLAttributes:e,node:t}){return["span",{"data-variable":!0,...e},`{{${t.attrs.id}}}`]},renderText({node:e}){return`{{${e.attrs.id}}}`},addNodeView(){return N2(Yp)}}),ql=E2.create({name:"variableSuggestion",addOptions(){return{HTMLAttributes:{},suggestion:{char:"{{",...fr}}},addProseMirrorPlugins(){return[A2({editor:this.editor,...this.options.suggestion})]}});import{Extension as L2}from"@tiptap/core";import{Plugin as I2}from"@tiptap/pm/state";import{Slice as S2,Fragment as R2}from"@tiptap/pm/model";var jl=L2.create({name:"variablePaste",addProseMirrorPlugins(){return[new I2({props:{transformPastedHTML:e=>e.replace(/\{\{([^}]+)\}\}/g,'<span data-variable="true" data-id="$1"></span>'),transformPastedText:(e,t,r)=>{let o=/\{\{([^}]+)\}\}/g;if(!o.test(e))return e;let{schema:n}=r.state,i=[],s=0,u;for(o.lastIndex=0;(u=o.exec(e))!==null;){if(u.index>s){let d=e.substring(s,u.index);d&&i.push(n.text(d))}let l=u[1];n.nodes.variable&&i.push(n.nodes.variable.create({id:l})),s=u.index+u[0].length}if(s<e.length){let l=e.substring(s);l&&i.push(n.text(l))}if(i.length>0){let l=R2.from(i),d=new S2(l,0,0),c=r.state.tr.replaceSelection(d);return r.dispatch(c),e}return e}}})]}});import{v4 as B2}from"uuid";var H2=a((e,t)=>{let r=null;return e.state.doc.descendants((o,n)=>o.attrs.id===t?(r=n,!1):!0),r},"findNodePositionById"),ra=a((e,t,r,o,n,i)=>{let s=`node-${B2()}`,l={heading:()=>e.schema.nodes.heading.create({...ne,...o,id:s},i),paragraph:()=>e.schema.nodes.paragraph.create({...ne,...o,id:s},i),text:()=>e.schema.nodes.paragraph.create({...ne,...o,id:s},i),spacer:()=>e.schema.nodes.divider.create({...Wd,...o,id:s}),divider:()=>e.schema.nodes.divider.create({...ar,...o,id:s}),button:()=>e.schema.nodes.button.create({...He,...o,id:s},i),imageBlock:()=>e.schema.nodes.imageBlock.create({...Je,...o,id:s}),image:()=>e.schema.nodes.imageBlock.create({...Je,...o,id:s}),customCode:()=>e.schema.nodes.customCode.create({...Po,...o,id:s})}[t];if(l)try{let d=e.state.tr,c=l();d.insert(r,c),e.view.dispatch(d),n&&n(c),(t==="text"||t==="paragraph"||t==="heading")&&setTimeout(()=>{let m=H2(e,s);m!==null&&e.commands.setTextSelection(m+1),e.view.focus()},50);let p=new CustomEvent("node-duplicated",{detail:{newNodeId:s}});document.dispatchEvent(p)}catch(d){console.error("Error creating node:",d)}else try{if(e.schema.nodes[t]){let d=e.state.tr,c=e.schema.nodes[t].create({...o,id:s},i);d.insert(r,c),e.view.dispatch(d),n&&n(c);let p=new CustomEvent("node-duplicated",{detail:{newNodeId:s}});document.dispatchEvent(p)}else console.error(`Cannot duplicate node: type "${t}" not found in schema`)}catch(d){console.error("Error creating fallback node:",d)}return s},"createOrDuplicateNode");import{closestCorners as D2,getFirstCollision as F2,KeyboardCode as ao}from"@dnd-kit/core";var V2=[ao.Down,ao.Right,ao.Up,ao.Left],am=a((e,{context:{active:t,droppableRects:r,droppableContainers:o,collisionRect:n}})=>{var i;if(V2.includes(e.code)){if(e.preventDefault(),!t||!n)return;let s=[];o.getEnabled().forEach(d=>{var m;if(!d||d!=null&&d.disabled)return;let c=r.get(d.id);if(!c)return;let p=d.data.current;if(p){let{type:g,children:b}=p;if(g==="container"&&(b==null?void 0:b.length)>0&&((m=t.data.current)==null?void 0:m.type)!=="container")return}switch(e.code){case ao.Down:n.top<c.top&&s.push(d);break;case ao.Up:n.top>c.top&&s.push(d);break;case ao.Left:n.left>=c.left+c.width&&s.push(d);break;case ao.Right:n.left+n.width<=c.left&&s.push(d);break}});let u=D2({active:t,collisionRect:n,droppableRects:r,droppableContainers:s,pointerCoordinates:null}),l=F2(u,"id");if(l!=null){let d=o.get(l),c=d==null?void 0:d.node.current,p=d==null?void 0:d.rect.current;if(c&&p)return d.id==="placeholder"?{x:p.left+(p.width-n.width)/2,y:p.top+(p.height-n.height)/2}:((i=d.data.current)==null?void 0:i.type)==="container"?{x:p.left+20,y:p.top+74}:{x:p.left,y:p.top}}}},"coordinateGetter");var oo=a(e=>{let t=e();return typeof t=="number"?t:null},"safeGetPos"),Ge=a(e=>{let t=oo(e.getPos);return t===null?null:e.editor.state.doc.nodeAt(t)},"safeGetNodeAtPos");import{jsx as Sr,jsxs as lm}from"react/jsx-runtime";var Sa=[{type:"text",align:"left",content:`
181
+ `,text_style:"h1"},{type:"text",align:"left",content:""},{type:"image",src:""}],e0=Y2(({hidePublish:e,theme:t,channels:r,routing:o,render:n,headerRenderer:i,value:s,dataMode:u,...l},d)=>{let c=Fo(Nn),[p,m]=Kl(Ae),[g,b]=Kl(fo),[h,y]=yn(null),[T,N]=yn(null),v=so(null),f=so(!1),x=so({}),[C,B]=yn(null),[L,k]=yn(void 0),E=Fo(_e),w=Fo(ge),P=Fo(_c),S=Fo(xr),H=so(-1),V=X2(ld),D=so(!1),F=so(!1),[G]=Kl(he),Y=Fo(or),se=Fo(Bt),oe=so(null);Ir(()=>{se&&(F.current=!1)},[se]);let[ye,xe]=yn(!1);Ir(()=>{if(w===!1||w===null){let I=setTimeout(()=>{xe(!0)},100);return()=>clearTimeout(I)}else xe(!1)},[w]),Ir(()=>{if(p){let I=p.type.name,J=qi(I);V({nodeName:I,config:J})}},[p,V]);let we=Jl(()=>{var J,de,le,te,Ce,Te,M,O,R,X,W,Fe,ue,Vr,Mn,gr,Uo,po,Or,wi,_o,mo,Sc,Rc,Bc,Hc,Dc,Fc,Vc,Oc,Wc,zc,$c,Uc;if(S)return S;let I=(le=(de=(J=E==null?void 0:E.data)==null?void 0:J.tenant)==null?void 0:de.brand)==null?void 0:le.settings;return{brandColor:((te=I==null?void 0:I.colors)==null?void 0:te.primary)||"#000000",textColor:((Ce=I==null?void 0:I.colors)==null?void 0:Ce.secondary)||"#000000",subtleColor:((Te=I==null?void 0:I.colors)==null?void 0:Te.tertiary)||"#666666",headerStyle:(O=(M=I==null?void 0:I.email)==null?void 0:M.header)!=null&&O.barColor?"border":"plain",logo:(W=(X=(R=I==null?void 0:I.email)==null?void 0:R.header)==null?void 0:X.logo)==null?void 0:W.image,link:(Vr=(ue=(Fe=I==null?void 0:I.email)==null?void 0:Fe.header)==null?void 0:ue.logo)==null?void 0:Vr.href,facebookLink:(po=(Uo=(gr=(Mn=I==null?void 0:I.email)==null?void 0:Mn.footer)==null?void 0:gr.social)==null?void 0:Uo.facebook)==null?void 0:po.url,linkedinLink:(mo=(_o=(wi=(Or=I==null?void 0:I.email)==null?void 0:Or.footer)==null?void 0:wi.social)==null?void 0:_o.linkedin)==null?void 0:mo.url,instagramLink:(Hc=(Bc=(Rc=(Sc=I==null?void 0:I.email)==null?void 0:Sc.footer)==null?void 0:Rc.social)==null?void 0:Bc.instagram)==null?void 0:Hc.url,mediumLink:(Oc=(Vc=(Fc=(Dc=I==null?void 0:I.email)==null?void 0:Dc.footer)==null?void 0:Fc.social)==null?void 0:Vc.medium)==null?void 0:Oc.url,xLink:(Uc=($c=(zc=(Wc=I==null?void 0:I.email)==null?void 0:Wc.footer)==null?void 0:zc.social)==null?void 0:$c.twitter)==null?void 0:Uc.url}},[S,E]),Ee=P&&!!we,Re=am,at=J2,[me,Q]=yn({Editor:[],Sidebar:["heading","text","image","spacer","divider","button","customCode"]}),ve=Jt(()=>{Object.values(x.current).forEach(I=>clearTimeout(I)),x.current={}},[]);Ir(()=>()=>{ve()},[ve]);let be=Jt(I=>{oe.current&&cancelAnimationFrame(oe.current),setTimeout(()=>{oe.current=requestAnimationFrame(()=>{try{let J=I==null?void 0:I.view.dom;if(!J){console.warn("syncEditorItems: Editor DOM element not found");return}let de=J.querySelectorAll(".react-renderer > div[data-node-view-wrapper][data-id]"),le=[];de.forEach(te=>{let Ce=te.dataset.id;Ce&&le.push(Ce)}),Q(te=>({Editor:le,Sidebar:te.Sidebar}))}catch(J){console.error("Error syncing editor items:",J),Q(de=>({...de}))}})},50)},[]);Ir(()=>{let I=a(J=>{if(J.key==="Escape"&&(m(null),c==null||c.commands.blur(),H.current=-1),J.key==="Tab"&&c){J.preventDefault();let de=-1;p&&c.state.doc.content.forEach((Ce,Te,M)=>{p.attrs.id===Ce.attrs.id&&(de=M)}),de===-1&&(de=0);let le=c.state.doc,te;if(J.shiftKey?te=(de-1+le.childCount)%le.childCount:te=(de+1)%le.childCount,te!==de||p===null){let Ce=le.child(te);m(Ce),c.commands.blur()}}},"handleKeyPress");return document.addEventListener("keydown",I),()=>{document.removeEventListener("keydown",I)}},[c,p,m]);let ze=so(null);Ir(()=>{var J,de,le;if(w!==!1||se||!((de=(J=E==null?void 0:E.data)==null?void 0:J.tenant)!=null&&de.notification))return;let I=E.data.tenant.notification.notificationId;if(I&&I!==ze.current){let te=(le=E.data.tenant.notification.data)==null?void 0:le.content;if(te){let Ce=ms(te,"email");b(Ce||""),ze.current=I}}setTimeout(()=>{if(!(!c||c.isDestroyed)&&c.state.doc.childCount===1){let te=c.state.doc.child(0);m(te)}},0)},[E,w,se,c,b,m]),Ir(()=>{se&&(ze.current=null)},[se]),Ir(()=>{w===!1&&E&&!F.current&&(F.current=!0,setTimeout(()=>{c&&!c.isDestroyed&&be(c)},300))},[w,E,c,be]),Ir(()=>(D.current=!0,()=>{D.current=!1}),[]),Ir(()=>{let I=a(()=>{c&&be(c)},"updateItems");c==null||c.on("update",I),c==null||c.on("selectionUpdate",I),c==null||c.on("create",I),c==null||c.on("transaction",I),c&&!c.isDestroyed&&I();let J=a(de=>{I()},"handleNodeDuplicated");return document.addEventListener("node-duplicated",J),()=>{c==null||c.off("update",I),c==null||c.off("selectionUpdate",I),c==null||c.off("create",I),c==null||c.off("transaction",I),document.removeEventListener("node-duplicated",J),oe.current&&cancelAnimationFrame(oe.current)}},[c,be]);let st=Jt(I=>{let de=I||(L===void 0?"desktop":void 0);k(de),m(null),de?c==null||c.setEditable(!1):c==null||c.setEditable(!0)},[c,L,k,m]),yt=G2(Gl(_2),Gl(j2),Gl($2,{coordinateGetter:Re})),lt=Jt(()=>{y(null)},[]),Be=Jt(I=>typeof I=="string"&&I.includes("_temp_")?"Editor":I in me?I:Object.keys(me).find(J=>me[J].includes(I)),[me]),ct=Jt(I=>{var Ce;if(h&&h in me)return sm({...I,droppableContainers:I.droppableContainers.filter(Te=>Te.id in me)});let J=Z2(I),le=(J.length>0?J:q2(I)).filter(Te=>Te.id!==void 0),te=z2(le,"id");if(te!=null){if(te==="Editor")return v.current=te,[{id:te}];if(te in me){let Te=me[te];if(Te.length>0){let M=(Ce=sm({...I,droppableContainers:I.droppableContainers.filter(O=>O.id!==te&&Te.includes(O.id))})[0])==null?void 0:Ce.id;M&&(te=M)}}return v.current=te,[{id:te}]}return f.current&&(v.current=h),v.current?[{id:v.current}]:[]},[h,me]),vt=Jt(I=>{var J,de;try{let le=c==null?void 0:c.state.doc;if(!le||I===0)return 0;if(I>=le.childCount)return le.content.size;let te=0;for(let Ce=0;Ce<Math.min(I,le.childCount);Ce++)te+=(J=le.child(Ce))==null?void 0:J.nodeSize;return te}catch(le){return console.warn("Error calculating document position:",le),(de=c==null?void 0:c.state.doc.content.size)!=null?de:0}},[c]),Wt=Jl(()=>({droppable:{strategy:U2.Always}}),[]),tt=Jt(({active:I})=>{y(I.id),(I.id==="text"||I.id==="divider"||I.id==="spacer"||I.id==="button"||I.id==="image"||I.id==="heading"||I.id==="customCode")&&N(I.id)},[]),ut=Jt(({active:I,over:J})=>{if(!J)return;let de=Be(J.id);if(!(Be(I.id)==="Sidebar"&&de==="Editor"))return;let te=I.rect.current;if(!(te!=null&&te.translated))return;let Ce=c==null?void 0:c.view.dom.querySelectorAll("[data-node-view-wrapper]");if(!Ce)return;let Te=Ce.length;for(let M=0;M<Ce.length;M++){let R=Ce[M].getBoundingClientRect();if(te.translated.top<R.top+R.height/2){Te=M;break}}if(Te!==C){let M=`${I.id}_temp_${Date.now()}`;B(Te),requestAnimationFrame(()=>{c==null||c.commands.removeDragPlaceholder(),c==null||c.commands.setDragPlaceholder({id:M,type:I.id,pos:vt(Te)}),Q(O=>({...O,Editor:[...O.Editor.filter(R=>!R.toString().includes("_temp")),M]}))})}},[c==null?void 0:c.commands,c==null?void 0:c.view.dom,Be,vt,C]),rt=Jt(()=>{c==null||c.commands.removeDragPlaceholder(),Q(I=>({...I,Editor:I.Editor.filter(J=>!J.toString().includes("_temp"))}))},[c==null?void 0:c.commands,Q]),Ct=Jt(({active:I,over:J})=>{var Ce;rt();let de=J==null?void 0:J.id;if(!de){Q(Te=>({...Te,Editor:Te.Editor.filter(M=>!M.toString().includes("_temp"))})),y(null),N(null);return}if(!c)return;let le=Be(de),te=Be(I.id);if(te==="Sidebar"&&le==="Editor"&&C!==null){let Te=vt(C!=null?C:0);ra(c,T,Te,void 0,M=>m(M))}else if(te===le&&te!=="Sidebar"){let Te=me[te].indexOf(I.id),M=me[le].indexOf(de);if(Te!==-1&&M!==-1&&Te!==M){Q(R=>({...R,[le]:K2(R[le],Te,M)}));let O=(Ce=c.getJSON())==null?void 0:Ce.content;if(Array.isArray(O)){let R=[...O],[X]=R.splice(Te,1);R.splice(M,0,X),c.view.dispatch(c.view.state.tr.replaceWith(0,c.view.state.doc.content.size,c.state.schema.nodeFromJSON({type:"doc",content:R})))}}}te==="Sidebar"&&le==="Sidebar"&&setTimeout(()=>{rt()},100),B(null),y(null),N(null)},[rt,c,Be,vt,me,C,m,N,y,T]),ee=Jt(()=>{rt(),c==null||c.commands.removeDragPlaceholder(),lt()},[rt,c==null?void 0:c.commands,lt]),Rt=a(I=>{b(I.target.value)},"handleSubjectChange"),zt=Jl(()=>{if(w!==!1||!ye)return null;let I=s&&s.elements&&s.elements.length>0;I&&(F.current=!0);let J;return I&&(J=s.elements.find(le=>le.type==="channel"&&le.channel==="email")),J||(J={type:"channel",channel:"email",elements:Sa}),xt({version:"2022-01-01",elements:[J]},{channel:"email"})},[s,w,ye]);return se&&(G===null||zt===null)?null:Sr(Tr,{theme:t,dataMode:u,isLoading:!!w,Header:i?i({hidePublish:e,channels:r,routing:o}):Sr(lo,{hidePublish:e,channels:r,routing:o}),...l,children:lm(O2,{sensors:yt,collisionDetection:ct,measuring:Wt,onDragStart:tt,onDragMove:ut,onDragEnd:Ct,onDragCancel:ee,children:[n==null?void 0:n({subject:g,handleSubjectChange:Rt,selectedNode:p,setSelectedNode:m,previewMode:L,emailEditor:c,ref:d,isBrandApply:Ee,brandSettings:we,items:me,content:zt,strategy:at,syncEditorItems:be,brandEditorContent:Y,templateData:E,togglePreviewMode:st}),Sr(W2,{dropAnimation:null,children:h&&(h==="text"||h==="divider"||h==="spacer"||h==="button"||h==="image"||h==="heading"||h==="customCode")?lm("div",{className:A("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:[T==="heading"&&Sr(on,{draggable:!0}),T==="text"&&Sr(sn,{draggable:!0}),T==="spacer"&&Sr(an,{draggable:!0}),T==="divider"&&Sr(rn,{draggable:!0}),T==="button"&&Sr(tn,{draggable:!0}),T==="image"&&Sr(nn,{draggable:!0}),T==="customCode"&&Sr(xo,{draggable:!0})]}):null})]})})}),Ra=Q2(e0);var Ba=class Ba{};a(Ba,"UploadImageAPI"),Ba.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 Xl=Ba,Yl=Xl;var Rr=a(e=>[ml,im.configure({document:!1,dropcursor:!1,gapcursor:!1,heading:!1,horizontalRule:!1,paragraph:!1,blockquote:!1,hardBreak:!1}),Tl.configure({setSelectedNode:e==null?void 0:e.setSelectedNode}),em.configure({keepMarks:!0,HTMLAttributes:{class:"my-line-break"}}),qd,pl,xl,nl,gl.configure({levels:[1,2,3,4,5,6]}),oa,sa,Qp,ca,yl.configure({openOnClick:!1,defaultProtocol:"https",HTMLAttributes:{class:"link"}}),nm,ya.configure(),pa.configure({allowedMimeTypes:["image/png","image/jpeg","image/gif","image/webp"],onDrop:(t,r,o)=>{r.forEach(async n=>{let i=await Yl.uploadImage(n);t.chain().setImageBlockAt({pos:o,src:i}).focus().run()})},onPaste:(t,r)=>{r.forEach(async o=>{let n=await Yl.uploadImage(o);return t.chain().setImageBlockAt({pos:t.state.selection.anchor,src:n}).focus().run()})}}),rm.extend({addKeyboardShortcuts(){return{}}}).configure({types:["paragraph","heading"]}),om,tm.configure({includeChildren:!0,showOnlyCurrent:!0,placeholder:"",emptyEditorClass:"is-editor-empty",emptyNodeClass:"is-empty",showOnlyWhenEditable:!0}),rl.configure({width:2,class:"ProseMirror-dropcursor courier-border-black"}),ql.configure({variables:e==null?void 0:e.variables}),Zl,jl,ma,ha],"ExtensionKit");import{BubbleMenu as S0,useCurrentEditor as R0}from"@tiptap/react";import{useAtomValue as t0}from"jotai";import{useCallback as cm,useEffect as r0,useState as o0}from"react";var Ha=a(e=>{let t=t0(Ae),[r,o]=o0({isBold:!1,isItalic:!1,isUnderline:!1,isStrike:!1,isAlignLeft:!1,isAlignCenter:!1,isAlignRight:!1,isAlignJustify:!1,isQuote:!1,isLink:!1}),n=cm(()=>{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 r0(()=>{if(e)return n(),e.on("selectionUpdate",n),e.on("transaction",n),()=>{e.off("selectionUpdate",n),e.off("transaction",n)}},[e,n]),{shouldShow:cm(({editor:s})=>{let u=["paragraph","heading","blockquote"],{$head:l}=s.state.selection,d=l.node();if(u.includes(d.type.name)&&d.attrs.isSelected)return!0;for(let c=1;c<=l.depth;c++){let p=l.node(c);if(p.type.name==="blockquote"&&p.attrs.isSelected)return!0}return!1},[]),...r}},"useTextmenuStates");import{useAtomValue as ec}from"jotai";import{AlignCenter as f0,AlignJustify as g0,AlignLeft as h0,AlignRight as b0,Bold as y0,Braces as v0,Italic as C0,Link as x0,Quote as T0,Strikethrough as w0,Underline as P0}from"lucide-react";import{Fragment as k0,memo as vm,useMemo as ym,useRef as E0,useState as M0,useEffect as N0}from"react";import{forwardRef as Ql}from"react";import n0 from"@tippyjs/react";import{useCallback as i0}from"react";import{Fragment as l0,jsx as Br,jsxs as s0}from"react/jsx-runtime";var um=typeof window!="undefined"?navigator.platform.toUpperCase().indexOf("MAC")>=0:!1,a0=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:um?"\u2318":"Ctrl"}):e==="Shift"?Br("kbd",{className:t,children:"\u21E7"}):e==="Alt"?Br("kbd",{className:t,children:um?"\u2325":"Alt"}):Br("kbd",{className:t,children:e})},"ShortcutKey"),dm=a(({children:e,enabled:t=!0,title:r,shortcut:o,tippyOptions:n={}})=>{let i=i0(s=>s0("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":s["data-placement"],"data-reference-hidden":s["data-reference-hidden"],"data-escaped":s["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(u=>Br(a0,{children:u},u))})]}),[o,r]);return t?Br(n0,{...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(l0,{children:e})},"Tooltip");import{jsx as Da}from"react/jsx-runtime";var pm=Ql(({shouldShowContent:e=!0,children:t,isVertical:r=!1,className:o,...n},i)=>{let s=A("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&&Da(_l,{className:s,...n,ref:i,children:t})});pm.displayName="Toolbar";var mm=Ql(({horizontal:e,className:t,...r},o)=>{let n=A("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 Da("div",{className:n,ref:o,...r})});mm.displayName="Toolbar.Divider";var fm=Ql(({children:e,buttonSize:t="icon",variant:r="ghost",className:o,tooltip:n,tooltipShortcut:i,...s},u)=>{let l=A("courier-gap-1 courier-min-w-[2rem] courier-w-auto",o),d=Da(Pe,{className:l,variant:r,buttonSize:t,ref:u,...s,children:e});return n?Da(dm,{title:n,shortcut:i,children:d}):d});fm.displayName="ToolbarButton";var Fa={Wrapper:pm,Divider:mm,Button:fm};import{ChevronDown as c0}from"lucide-react";import{useMemo as u0}from"react";import{Fragment as p0,jsx as co,jsxs as gm}from"react/jsx-runtime";var d0=a(e=>e.type==="option","isOption"),hm=a(({options:e,containerRef:t})=>{let r=u0(()=>e.find(o=>o.type==="option"&&o.isActive()),[e]);return gm(Bi,{children:[co(Hi,{asChild:!0,children:gm(Pe,{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",co(c0,{className:"courier-w-3 courier-h-3"})]})}),co(Sn,{portalProps:{container:(t==null?void 0:t.current)||void 0},children:e.map(o=>{if(d0(o))return co(Rn,{onClick:o.onClick,className:o.isActive()?"courier-bg-accent courier-text-foreground":"",children:o.id.startsWith("heading")?co(p0,{children:o.id==="heading1"?co("h1",{className:"courier-text-2xl courier-font-bold",children:o.label}):o.id==="heading2"?co("h2",{className:"courier-text-xl courier-font-bold",children:o.label}):o.id==="heading3"?co("h3",{className:"courier-text-lg courier-font-bold",children:o.label}):o.label}):o.label},o.id)})})]})},"ContentTypePicker");import{useEditorState as m0}from"@tiptap/react";var bm=a(e=>m0({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 ht,jsxs as I0}from"react/jsx-runtime";var A0=vm(Fa.Button),L0=vm(hm),tc=a(({editor:e,config:t})=>{var B;let r=ta(e),o=Ha(e),n=bm(e),i=E0(null),s=ec(ji),u=ec(Ae),l=u==null?void 0:u.type.name,d=ec(sd),[c,p]=M0(()=>{let{selection:L}=e.state;return{from:L.from,to:L.to,empty:L.empty}});N0(()=>{let L=a(()=>{let{selection:k}=e.state;p({from:k.from,to:k.to,empty:k.empty})},"updateSelection");return e.on("selectionUpdate",L),e.on("transaction",L),()=>{e.off("selectionUpdate",L),e.off("transaction",L)}},[e]);let m=ym(()=>!c.empty&&c.from!==c.to,[c]),g=ym(()=>t||d(l||"",m),[t,d,l,m]),b=a(()=>{let{selection:L}=e.state;if(!(L.empty&&!o.isLink&&!e.can().setLink({href:""})))if(o.isLink){let k=e.state.tr.setMeta("showLinkForm",{from:L.from,to:L.to});e.view.dispatch(k)}else{let k=e.state.tr.setMeta("showLinkForm",{from:L.from,to:L.to});e.view.dispatch(k)}},"handleLinkToggle"),h=a(()=>{if(s.ref){let P=s.ref,S=P.value,H=s.caretPosition||P.selectionStart||0,V=S.substring(0,H),D=S.substring(H),F=`${V}{{${D}`,G=H+2;P.focus();let Y=new Event("input",{bubbles:!0,cancelable:!0});if(Object.defineProperty(Y,"target",{writable:!1,value:{...P,value:F}}),P.value=F,P.dispatchEvent(Y),P.setSelectionRange(G,G),P.getBoundingClientRect()){let oe=F.slice(0,G),ye=document.createElement("span");ye.style.font=window.getComputedStyle(P).font,ye.style.whiteSpace="pre-wrap",ye.textContent=oe,document.body.appendChild(ye);let xe=ye.offsetWidth;document.body.removeChild(ye);let we=parseInt(window.getComputedStyle(P).lineHeight),Ee=oe.split(`
182
+ `).length-1,Re=new CustomEvent("showVariableSuggestions",{detail:{cursorPosition:{left:Math.min(xe%P.offsetWidth,P.offsetWidth-200),top:Ee*we+30}},bubbles:!0});P.dispatchEvent(Re)}return}let{state:L,dispatch:k}=e.view,{tr:E}=L;E.insertText("{{"),k(E),e.commands.focus();let w=e.state.tr.setMeta("showVariableSuggestions",{from:e.state.selection.from,to:e.state.selection.to});e.view.dispatch(w)},"handleVariableClick"),y=a((L,k,E,w,P,S,H)=>{let V=g[L];return!V||V.state==="hidden"?null:ht(A0,{tooltip:E,tooltipShortcut:S,onClick:w,active:P,disabled:V.state==="disabled",...H,children:k},L)},"renderButton"),T=a((L,k)=>{let E=L.filter(w=>!!w);return E.length>0?ht("div",{className:"courier-flex courier-items-center courier-gap-0.5",children:E},k):null},"renderGroup"),N=T([((B=g.contentType)==null?void 0:B.state)==="enabled"&&ht(L0,{options:n,containerRef:i},"content-type")],"content-type-group"),v=T([y("bold",ht(y0,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Bold",r.onBold,o.isBold,["Mod","B"]),y("italic",ht(C0,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Italic",r.onItalic,o.isItalic,["Mod","I"]),y("underline",ht(P0,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Underline",r.onUnderline,o.isUnderline,["Mod","U"]),y("strike",ht(w0,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Strikethrough",r.onStrike,o.isStrike,["Mod","Shift","S"])],"text-style-group"),f=T([y("alignLeft",ht(h0,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Align left",r.onAlignLeft,o.isAlignLeft,["Shift","Mod","L"]),y("alignCenter",ht(f0,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Align center",r.onAlignCenter,o.isAlignCenter,["Shift","Mod","E"]),y("alignRight",ht(b0,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Align right",r.onAlignRight,o.isAlignRight,["Shift","Mod","R"]),y("alignJustify",ht(g0,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Justify",r.onAlignJustify,o.isAlignJustify,["Shift","Mod","J"])],"alignment-group"),x=T([y("quote",ht(T0,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Quote",r.onQuote,o.isQuote,["Mod","Shift","B"])],"block-style-group"),C=T([y("link",ht(x0,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Link",b,o.isLink,["Mod","K"]),y("variable",ht(v0,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Variable",h,!1,["Mod","V"],{"data-variable-button":"true"})],"insert-group");return ht(Fa.Wrapper,{ref:i,className:"courier-border-b rounded-b-none rounded-t-sm !courier-shadow-md courier-justify-center courier-rounded-lg",children:[N,v,f,x,C].filter(Boolean).map((L,k)=>I0(k0,{children:[L,k<[N,v,f,x,C].filter(Boolean).length-1&&ht(Fa.Divider,{})]},`item-${k}`))})},"TextMenu");import{jsx as Cm}from"react/jsx-runtime";var Hr=a(({config:e})=>{let{editor:t}=R0(),r=Ha(t);return t?Cm(S0,{editor:t,tippyOptions:{appendTo:o=>{var n;return(n=o.closest(".bubble-text-menu-container"))!=null?n:o},getReferenceClientRect:()=>{var s,u,l,d;let o=(l=(u=(s=t==null?void 0:t.state)==null?void 0:s.selection)==null?void 0:u.from)!=null?l:0,n=(d=t==null?void 0:t.view)==null?void 0:d.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,"data-testid":"bubble-text-menu",children:t&&Cm(tc,{editor:t,config:e})}):null},"BubbleTextMenu");import{TextSelection as B0}from"@tiptap/pm/state";import{EditorProvider as H0,Extension as D0,useCurrentEditor as F0}from"@tiptap/react";import{useAtomValue as V0,useSetAtom as Tm}from"jotai";import{memo as O0,useEffect as oc,useMemo as xm,useRef as wm}from"react";import{jsx as Xt,jsxs as rc}from"react/jsx-runtime";var W0=a(({value:e,readOnly:t})=>{let{editor:r}=F0(),o=Tm(Ut),n=V0(ge),i=wm(!1);return oc(()=>{!r||(n!==!1||i.current)&&!t||!e||(i.current=!0,r.commands.setContent(us(e!=null?e:"")))},[r,e,n,t]),oc(()=>{r&&(o(r),setTimeout(()=>{r.commands.blur()},1))},[r,o]),null},"EditorContent"),z0=a(({variables:e,facebookLink:t,linkedinLink:r,instagramLink:o,mediumLink:n,xLink:i,readOnly:s=!1,value:u,onUpdate:l})=>{let d=wm(!1),c=Tm(Ae),p=xm(()=>({urls:{unsubscribe:!0,preferences:!0},...e}),[e]),m=D0.create({name:"escapeHandler",addKeyboardShortcuts(){return{Escape:({editor:b})=>{let{state:h,dispatch:y}=b.view;return y(h.tr.setSelection(B0.create(h.doc,h.selection.$anchor.pos))),c&&c(null),!1}}}});oc(()=>(d.current=!0,()=>{d.current=!1}),[]);let g=xm(()=>[...Rr({variables:p,setSelectedNode:c}),m].filter(b=>b!==void 0),[m,p,c]);return rc("div",{className:"courier-flex courier-flex-row courier-gap-6 courier-justify-between courier-items-start",children:[rc(H0,{content:us(u!=null?u:""),extensions:g,editable:!s,autofocus:!s,onUpdate:l,editorContainerProps:{className:A("courier-py-2 courier-flex-grow",s&&"courier-brand-editor-readonly")},immediatelyRender:!1,children:[Xt(W0,{value:u,readOnly:s}),Xt(Hr,{})]}),rc("div",{className:"courier-flex courier-justify-end courier-items-center courier-gap-2 courier-mt-3",children:[t&&Xt("a",{href:t,target:"_blank",rel:"noopener noreferrer",children:Xt(Wn,{className:"courier-w-5 courier-h-5"})}),r&&Xt("a",{href:r,target:"_blank",rel:"noopener noreferrer",children:Xt($n,{className:"courier-w-5 courier-h-5"})}),o&&Xt("a",{href:o,target:"_blank",rel:"noopener noreferrer",children:Xt(zn,{className:"courier-w-5 courier-h-5"})}),n&&Xt("a",{href:n,target:"_blank",rel:"noopener noreferrer",children:Xt(Un,{className:"courier-w-5 courier-h-5"})}),i&&Xt("a",{href:i,target:"_blank",rel:"noopener noreferrer",children:Xt(qn,{className:"courier-w-5 courier-h-5"})})]})]})},"BrandFooterComponent"),mi=O0(z0);import{Fragment as $0,jsx as vn,jsxs as Va}from"react/jsx-runtime";var Pm=a(({value:e,icon:t,...r})=>vn(Ve,{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"),nc=a(({previewMode:e,togglePreviewMode:t,...r})=>Va("div",{...r,className:A("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",r.className),children:[e&&Va($0,{children:[Va(Ht,{type:"single",value:e,onValueChange:o=>{o!==""&&t(o)},className:"courier-w-full courier-rounded-md !courier-p-0.5 courier-bg-[#3B82F6] !courier-gap-0",children:[vn(Pm,{value:"desktop",icon:vn(zs,{})}),vn(Pm,{value:"mobile",icon:vn(qs,{})})]}),vn("div",{className:"courier-mx-4 courier-w-px courier-h-6 courier-bg-border"})]}),Va(Pe,{variant:"link",onClick:()=>t(),children:[e?"Exit":"View"," Preview"]})]}),"PreviewPanel");import{SortableContext as Im}from"@dnd-kit/sortable";import{forwardRef as Rm}from"react";import{Extension as U0}from"@tiptap/core";import{TextSelection as _0}from"@tiptap/pm/state";import{EditorProvider as Z0,useCurrentEditor as km}from"@tiptap/react";import{useAtom as Em,useAtomValue as uo,useSetAtom as ic}from"jotai";import{useCallback as Vo,useEffect as Dr,useMemo as q0,useRef as Oo}from"react";import{Fragment as J0,jsx as Oa,jsxs as X0}from"react/jsx-runtime";var j0=a(({value:e})=>{let{editor:t}=km();return Dr(()=>{t&&t.commands.setContent(e||{type:"doc",content:[{type:"paragraph"}]})},[t,e]),null},"ReadOnlyEditorContent"),G0=a(({value:e})=>{let{editor:t}=km(),[r,o]=Em(he),n=uo(fo),i=uo(Ae),s=ic(Nn),u=Oo(!1),l=uo(ge),d=uo(_e),c=Oo(!1),p=uo(Bt);return Dr(()=>{l&&(c.current=!1)},[l]),Dr(()=>{!t||l!==!1||c.current||!e||(s(t),c.current=!0,t.commands.setContent(e))},[t,e,s,l]),Dr(()=>{if(!(t&&n!==null)||l!==!1||p||t.isFocused)return;let m=Ie(t.getJSON());if(!m||!Array.isArray(m))return;let g=n;if(!n&&r){let T=r.elements.find(N=>N.type==="channel"&&N.channel==="email");T&&(g=Mi(T,"email"))}let b=go(r,"email",g||"",m),h={elements:b.elements,channel:"email",...b.raw&&{raw:b.raw}},y=er(r,h);JSON.stringify(r)!==JSON.stringify(y)&&o(y)},[d,t,n,o,l,r,p]),Dr(()=>()=>{t&&!t.isDestroyed&&t.setEditable(!0)},[t]),Dr(()=>{t&&u.current&&t.commands.updateSelectionState(i)},[t,i]),Dr(()=>(u.current=!0,()=>{u.current=!1}),[]),null},"EditorContent"),K0=a(({value:e,readOnly:t=!1,variables:r,onDestroy:o,onUpdate:n,subject:i})=>{let s=ic(Gi),u=Oo(),[l,d]=Em(he),c=uo(fo),p=i!=null?i:c,m=ic(Ae),g=uo(Nn),b=uo(Bt),h=Oo(l),y=Oo(p);Dr(()=>{h.current=l},[l]),Dr(()=>{y.current=p},[p]),Dr(()=>{g==null||g.setEditable(!t)},[t,g]);let T=U0.create({name:"escapeHandler",addKeyboardShortcuts(){return{Escape:({editor:H})=>{let{state:V,dispatch:D}=H.view;return D(V.tr.setSelection(_0.create(V.doc,V.selection.$anchor.pos))),m&&m(null),!1}}}}),N=Vo(({editor:H})=>{n==null||n(H),window.editor=H,m&&setTimeout(()=>{m(null)},100)},[m,n]),v=Oo(),f=Oo(null),x=Vo((H,V)=>{var ye;if(b)return;let D=h.current,F=y.current;if(!D){d({version:"2022-01-01",elements:[{type:"channel",channel:"email",elements:V}]});return}let G=D.elements.find(xe=>xe.type==="channel"&&xe.channel==="email"),Y={...G};Y.elements=(ye=Y.elements)==null?void 0:ye.filter(xe=>xe.type!=="meta");let se={type:"channel",channel:"email",elements:V};if(JSON.stringify(Y)!==JSON.stringify(se)){let xe=F;!F&&G&&(xe=Mi(G,"email"));let we=go(D,"email",xe||"",V);se.elements=we.elements,we.raw&&(se.raw=we.raw);let Ee=er(D,se);d(Ee)}n==null||n(H),window.editor=H},[d,n,b]),C=Vo(({editor:H})=>{let V=Ie(H.getJSON());f.current={editor:H,elemental:V},v.current&&clearTimeout(v.current),v.current=setTimeout(()=>{if(f.current){let{editor:D,elemental:F}=f.current;x(D,F),f.current=null}},200)},[x]),B=Vo(({editor:H})=>{let{selection:V}=H.state,{$anchor:D}=V,G=V.$head.marks().find(oe=>oe.type.name==="link");G||H.isActive("link")?s({mark:G}):s(null);let Y=D.depth,se=null;for(;Y>0;){let oe=D.node(Y);if(oe.type.name==="paragraph"||oe.type.name==="heading"){se=oe;break}Y--}se&&m(se)},[s,m]),L=Vo(({editor:H,transaction:V})=>{let D=V==null?void 0:V.getMeta("showLinkForm");if(D){let{selection:F}=H.state,Y=F.$head.marks().find(se=>se.type.name==="link");s({mark:Y,link:{from:D.from,to:D.to}})}},[s]),k=Vo(()=>{u.current&&clearTimeout(u.current),v.current&&clearTimeout(v.current),o==null||o(),window.editor=null},[o]),E=Vo(H=>{var Y;let V=(Y=H.view)==null?void 0:Y.editor;if(!V||!V.isEditable)return;let D=H.target,F=V.view.posAtDOM(D,0),G=V.state.doc.resolve(F).node();G.type.name==="paragraph"&&m(G)},[m]),w=q0(()=>[...Rr({variables:r,setSelectedNode:m}),T].filter(H=>H!==void 0),[T,r,m]),P=e||{type:"doc",content:[{type:"paragraph"}]};return Oa(Z0,{content:P,extensions:w,...t?{editable:!1,autofocus:!1}:{editable:!0,autofocus:!0,onCreate:N,onUpdate:C,onSelectionUpdate:B,onTransaction:L},onDestroy:k,editorContainerProps:{onClick:E},"data-testid":"editor-provider",immediatelyRender:!1,children:t?Oa(j0,{value:P}):X0(J0,{children:[Oa(G0,{value:P}),Oa(Hr,{})]})})},"EmailEditor"),ac=K0;import{useAtomValue as Am,useSetAtom as oy}from"jotai";import{GripVertical as ny}from"lucide-react";import{useSortable as Y0}from"@dnd-kit/sortable";import{forwardRef as Q0,useEffect as Mm,useState as ey}from"react";import{jsx as sc}from"react/jsx-runtime";function ty(){let[e,t]=ey(!1);return Mm(()=>{let r=setTimeout(()=>t(!0),500);return()=>clearTimeout(r)},[]),e}a(ty,"useMountStatus");var Nm=a(({children:e,id:t,className:r})=>{let{setNodeRef:o,setActivatorNodeRef:n,listeners:i,isDragging:s,transform:u,transition:l}=Y0({id:t}),d=ty();return sc(ry,{ref:o,id:t,transition:l,transform:u,fadeIn:s&&!d,listeners:i,className:r,handleProps:{ref:n},children:e})},"SideBarSortableItemWrapper"),ry=Q0(({children:e,className:t,dragOverlay:r,handleProps:o,listeners:n,id:i},s)=>(Mm(()=>{if(r)return document.body.style.cursor="grabbing",()=>{document.body.style.cursor=""}},[r]),sc("div",{ref:s,"data-cypress":"draggable-item","data-node-view-wrapper":!0,"data-id":i,className:A(t,"courier-relative"),children:sc("div",{...o,...n,children:e})})));import{Fragment as iy,jsx as et,jsxs as Cn}from"react/jsx-runtime";var lc=a(({items:e,brandEditor:t,label:r})=>{var s,u;let o=Am(_e),n=oy(en),i=Am(pt);return Cn("div",{className:"courier-flex courier-flex-col courier-h-full",children:[Cn("div",{className:"courier-flex-1",children:[r&&Cn(iy,{children:[et("p",{children:r}),et(fe,{className:"courier-my-4"})]}),et("div",{className:"courier-flex courier-flex-col courier-gap-4 courier-w-full",children:e.map(l=>et(Nm,{id:l.toString(),children:Cn("div",{className:A("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:[et(ny,{strokeWidth:1,className:"courier-w-4 courier-stroke-ring courier-fill-ring"}),l==="heading"&&et(on,{draggable:!0}),l==="text"&&et(sn,{draggable:!0}),l==="image"&&et(nn,{draggable:!0}),l==="spacer"&&et(an,{draggable:!0}),l==="divider"&&et(rn,{draggable:!0}),l==="button"&&et(tn,{draggable:!0}),l==="customCode"&&et(xo,{draggable:!0})]})},l))})]}),t&&Cn("div",{className:"courier-mt-auto courier-pt-4",children:[et(fe,{className:"courier-mb-4 -courier-mx-4"}),(u=(s=o==null?void 0:o.data)==null?void 0:s.tenant)!=null&&u.brand?et("div",{className:"courier-flex courier-flex-row courier-gap-2 courier-items-center courier-justify-end courier-w-full",children:et(Pe,{variant:"link",className:"courier-underline",onClick:()=>n("brand"),disabled:!!i,children:"Edit brand"})}):Cn("div",{className:"courier-flex courier-flex-col courier-gap-2",children:[et("h3",{className:"courier-text-md courier-font-medium",children:"Customize brand theme"}),et("p",{className:"courier-text-sm courier-text-muted-foreground",children:"Customize header and footer to apply to the template."}),et(Pe,{variant:"primary",className:"courier-w-fit courier-mt-2",onClick:()=>n("brand"),children:"Customize"})]})]})]})},"SideBar");import{useAtomValue as ay}from"jotai";import{jsx as Wo,jsxs as sy}from"react/jsx-runtime";var cc=a(({element:e,editor:t})=>{var i,s;let r=ay(tl);if(!e)return null;if(r!=null&&r.link||((i=r==null?void 0:r.mark)==null?void 0:i.type.name)==="link"&&((s=e.marks)!=null&&s.some(u=>u.type.name==="link")))return Wo(cp,{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:u}=t.state.selection,l=u.depth;for(;l>0;){let d=u.node(l);if(d.type.name==="blockquote")return d;l--}},"getBlockquoteElement");return sy("div",{className:"courier-flex courier-flex-col courier-gap-4",children:[e.type.name==="button"&&Wo(Id,{element:e,editor:t},e.attrs.id),e.type.name==="divider"&&Wo($d,{element:e,editor:t},e.attrs.id),["paragraph","heading"].includes(e.type.name)&&!o&&Wo(Jd,{element:e,editor:t},e.attrs.id),e.type.name==="imageBlock"&&Wo(np,{element:e,editor:t},e.attrs.id),e.type.name==="customCode"&&Wo(ul,{element:e,editor:t},e.attrs.id),(e.type.name==="blockquote"||e.type.name==="paragraph"&&o||e.type.name==="heading"&&o)&&Wo(Td,{element:n()||e,editor:t},e.attrs.id)]})},"SideBarItemDetails");import{forwardRef as Lm}from"react";import{useAtom as ly}from"jotai";import{Fragment as cy,jsx as Wa,jsxs as uy}from"react/jsx-runtime";var uc=Lm(({children:e,previewMode:t,className:r,readOnly:o=!1,...n},i)=>Wa("div",{className:A("courier-flex courier-flex-1 courier-overflow-hidden courier-root-container courier-relative",o&&"courier-editor-readonly",t&&"courier-editor-preview-mode",t==="mobile"&&"courier-editor-preview-mode-mobile",r),...n,ref:i,children:e})),dc=Lm(({children:e,className:t,previewMode:r,skipExpanded:o=!1,width:n,...i},s)=>{let[u,l]=ly(br),d=o?!1:u,c=n||"courier-w-64";return r?null:uy(cy,{children:[d&&Wa("div",{className:"courier-absolute courier-inset-0 courier-bg-black/50 courier-z-[9] courier-transition-opacity courier-duration-300 courier-cursor-pointer",onClick:()=>l(!1),"aria-hidden":"true"}),Wa("div",{className:A("courier-editor-sidebar-container courier-flex-shrink-0 courier-self-stretch courier-relative",c,t),children:Wa("div",{className:A("courier-editor-sidebar courier-absolute courier-top-0 courier-bottom-0 courier-right-0 courier-p-4 courier-h-full courier-overflow-y-auto courier-bg-white","courier-transition-all courier-duration-300 courier-ease-in-out",d?"courier-w-[80vw] courier-z-10 courier-shadow-xl courier-translate-x-0":c+" courier-translate-x-0"),...i,ref:s,children:e})})]})});import{useAtomValue as Sm,useSetAtom as dy}from"jotai";import{jsx as nt,jsxs as xn}from"react/jsx-runtime";var Bm=Rm(({children:e,className:t,...r},o)=>nt("div",{className:A("courier-editor-container courier-relative",t),...r,ref:o,children:e})),Hm=Rm(({children:e,previewMode:t,...r},o)=>nt("div",{className:A("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})),Dm=a(({variables:e,theme:t,isLoading:r,hidePublish:o,channels:n,brandEditor:i,routing:s,dataMode:u,...l})=>{let d=Sm(he),c=Sm(br),p=dy(br),m=a(()=>{c&&p(!1)},"handleSubjectAreaClick");return nt(Ra,{value:d,variables:e,theme:t,isLoading:r,hidePublish:o,channels:n,brandEditor:i,routing:s,dataMode:u,render:({subject:g,handleSubjectChange:b,selectedNode:h,setSelectedNode:y,previewMode:T,emailEditor:N,ref:v,isBrandApply:f,brandSettings:x,items:C,content:B,strategy:L,syncEditorItems:k,brandEditorContent:E,templateData:w,togglePreviewMode:P})=>{var S,H,V,D,F,G;return xn(uc,{previewMode:T,children:[xn("div",{className:"courier-flex courier-flex-col courier-flex-1",children:[xn("div",{className:"courier-bg-primary courier-h-12 courier-flex courier-items-center courier-gap-2 courier-px-4 courier-border-b",onClick:m,children:[nt("h4",{className:"courier-text-sm",children:"Subject: "}),nt(ae,{value:g!=null?g:"",onChange:b,onFocus:()=>y(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:T!==void 0})]}),xn(Bm,{ref:v,children:[xn(Hm,{previewMode:T,children:[f&&xn("div",{className:A("courier-py-5 courier-px-9 courier-pb-0 courier-relative courier-overflow-hidden courier-flex courier-flex-col courier-items-start",(x==null?void 0:x.headerStyle)==="border"&&"courier-pt-6"),children:[(x==null?void 0:x.headerStyle)==="border"&&nt("div",{className:"courier-absolute courier-top-0 courier-left-0 courier-right-0 courier-h-2",style:{backgroundColor:x==null?void 0:x.brandColor}}),(x==null?void 0:x.logo)&&nt("img",{src:x.logo,alt:"Brand logo",className:"courier-w-auto courier-max-w-36 courier-object-contain courier-cursor-default"})]}),nt(Im,{items:C.Editor,strategy:L,children:B&&nt(ac,{value:B,onUpdate:k,variables:e})}),f&&w&&nt("div",{className:"courier-py-5 courier-px-9 courier-pt-0 courier-flex courier-flex-col",children:nt(mi,{readOnly:!0,value:E!=null?E:(G=(F=(D=(V=(H=(S=w==null?void 0:w.data)==null?void 0:S.tenant)==null?void 0:H.brand)==null?void 0:V.settings)==null?void 0:D.email)==null?void 0:F.footer)==null?void 0:G.markdown,variables:e,facebookLink:x==null?void 0:x.facebookLink,linkedinLink:x==null?void 0:x.linkedinLink,instagramLink:x==null?void 0:x.instagramLink,mediumLink:x==null?void 0:x.mediumLink,xLink:x==null?void 0:x.xLink})})]}),nt(nc,{previewMode:T,togglePreviewMode:P})]})]}),nt(dc,{previewMode:T,children:nt("div",{className:"courier-p-1 courier-h-full",children:h?nt(cc,{element:h,editor:N}):nt(Im,{items:C.Sidebar,strategy:L,children:nt(lc,{items:C.Sidebar,brandEditor:i,label:"Blocks library"})})})})]})},...l})},"EmailLayout");import{useCurrentEditor as py}from"@tiptap/react";import{useAtom as my,useAtomValue as za,useSetAtom as Vm}from"jotai";import{forwardRef as fy,memo as gy,useCallback as hy,useEffect as fi,useMemo as pc,useRef as mc}from"react";import{jsx as Fm}from"react/jsx-runtime";var $a=[{type:"text",content:`
183
183
  `,text_style:"h2"},{type:"text",content:`
184
- `},{type:"action",content:"Register",align:"left",href:""}],am=s(e=>{let t=e==null?void 0:e.elements.find(r=>r.type==="channel"&&r.channel==="inbox");if(!t)t={type:"channel",channel:"inbox",elements:Na};else if(t.type==="channel"&&"elements"in t){let r=t.elements||[],o=r.find(i=>i.type==="meta"),n=r.filter(i=>i.type!=="meta");if(o&&"title"in o&&o.title){let i={type:"text",content:o.title+`
185
- `,text_style:"h2"};t={...t,elements:[i,...n]}}}return t},"getOrCreateInboxElement"),sm={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"}},lm=s(({value:e})=>{let{editor:t}=a0(),r=im(Ot),o=Ea(be),n=Ea(he),i=ql(!1);return ui(()=>{n&&(i.current=!1)},[n]),ui(()=>{!t||n!==!1||i.current||!e||(i.current=!0,t.commands.setContent(e))},[t,e,n]),ui(()=>{t&&(r(t),setTimeout(()=>{t.commands.blur()},1))},[t,r]),ui(()=>{if(!t||!o||t.isFocused)return;let l=am(o),c=xt({version:"2022-01-01",elements:[l]},{channel:"inbox"}),a=Ie(c),u=Ie(t.getJSON());JSON.stringify(a)!==JSON.stringify(u)&&setTimeout(()=>{t.isFocused||t.commands.setContent(c)},1)},[t,o]),null},"InboxEditorContent"),d0=l0(({theme:e,hidePublish:t,variables:r,readOnly:o,channels:n,routing:i,headerRenderer:l,render:c,value:a},u)=>{let d=Ea(he),p=ql(!0),f=ql(!1),h=im(ke),[g,b]=s0(be),y=Ea(Mt),w=Zl(()=>({urls:{unsubscribe:!0,preferences:!0},...r}),[r]);ui(()=>(f.current=!0,()=>{f.current=!1}),[]);let N=Zl(()=>[...Nr({variables:w,setSelectedNode:h})].filter(x=>x!==void 0),[w,h]),v=u0(({editor:x})=>{if(!x||y)return;if(!g){let T=Ie(x.getJSON()),I=uo(null,"inbox","",T),H={version:"2022-01-01",elements:[{type:"channel",channel:"inbox",elements:I.elements,...I.raw&&{raw:I.raw}}]};b(H);return}let k=x.getJSON(),B=Ie(k),R=uo(g,"inbox","",B),C=Xt(g,{elements:R.elements,channel:"inbox",...R.raw&&{raw:R.raw}}),E=JSON.stringify(g.elements),P=JSON.stringify(C.elements);E!==P&&setTimeout(()=>{f.current&&b(C)},100)},[g,b,y]),m=Zl(()=>{let x=am(a);return xt({version:"2022-01-01",elements:[x]},{channel:"inbox"})},[a]);return nm(yr,{theme:e,isLoading:!!(d&&p.current),Header:l?l({hidePublish:t,channels:n,routing:i}):nm(ro,{hidePublish:t,channels:n,routing:i}),ref:u,children:c==null?void 0:c({content:m,extensions:N,editable:!o,autofocus:!o,onUpdate:v})})}),Ma=c0(d0);import{EditorProvider as p0}from"@tiptap/react";import{jsx as Fo,jsxs as di}from"react/jsx-runtime";var jl=s(({content:e,extensions:t,editable:r,autofocus:o,onUpdate:n})=>e?di("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:[di("div",{className:"courier-my-3 courier-mx-4 courier-flex courier-items-center courier-gap-2 courier-justify-between",children:[di("div",{className:"courier-flex courier-items-center courier-gap-3",children:[Fo(Ms,{}),Fo("span",{className:"courier-text-xl courier-font-medium",children:"Inbox"})]}),di("div",{className:"courier-flex courier-items-center courier-gap-4",children:[Fo(Ns,{}),Fo(Es,{}),Fo(Ls,{})]})]}),di(p0,{content:e,extensions:t,editable:r,autofocus:o,onUpdate:n,editorContainerProps:{className:M("courier-inbox-editor")},immediatelyRender:!1,children:[Fo(lm,{value:e}),Fo(Ar,{config:sm})]})]}):null,"InboxEditor");import{zodResolver as m0}from"@hookform/resolvers/zod";import{useAtom as f0}from"jotai";import{memo as g0,useCallback as cm,useEffect as h0,useRef as b0}from"react";import{useForm as y0}from"react-hook-form";import{z as qr}from"zod";import{Fragment as um,jsx as ne,jsxs as Rt}from"react/jsx-runtime";var v0=qr.object({enableButton:qr.boolean().default(!0),buttonStyle:qr.enum(["filled","outlined"]).default("filled"),buttonLabel:qr.string().min(1,"Button label is required"),buttonUrl:qr.string().default(""),enableSecondaryButton:qr.boolean().default(!1),secondaryButtonStyle:qr.enum(["filled","outlined"]).default("outlined"),secondaryButtonLabel:qr.string().default("Learn more"),secondaryButtonUrl:qr.string().default("")}),x0=s(()=>{let[e,t]=f0(be),r=b0(!1),o=y0({resolver:m0(v0),defaultValues:{enableButton:!1,buttonStyle:"filled",buttonLabel:"Try now",buttonUrl:"",enableSecondaryButton:!1,secondaryButtonStyle:"outlined",secondaryButtonLabel:"Learn more",secondaryButtonUrl:""},mode:"onChange"});h0(()=>{if(!e||r.current)return;r.current=!0;let l=e.elements.find(a=>a.type==="channel"&&a.channel==="inbox");if(!l||!l.elements){r.current=!1;return}let c=l.elements.filter(a=>a.type==="action");if(c.length>0){let a=c[0],u=c[1];o.setValue("enableButton",!0),o.setValue("buttonLabel",a.content||"Register"),o.setValue("buttonUrl",a.href||""),o.setValue("buttonStyle",a.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=cm(l=>{if(!e||r.current)return;let c=e.elements.find(g=>g.type==="channel"&&g.channel==="inbox");c||(c={type:"channel",channel:"inbox",elements:[{type:"text",content:`
184
+ `},{type:"action",content:"Register",align:"left",href:""}],Om=a(e=>{let t=e==null?void 0:e.elements.find(r=>r.type==="channel"&&r.channel==="inbox");if(!t)t={type:"channel",channel:"inbox",elements:$a};else if(t.type==="channel"&&"elements"in t){let r=t.elements||[],o=r.find(i=>i.type==="meta"),n=r.filter(i=>i.type!=="meta");if(o&&"title"in o&&o.title){let i={type:"text",content:o.title+`
185
+ `,text_style:"h2"};t={...t,elements:[i,...n]}}}return t},"getOrCreateInboxElement"),Wm={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"}},zm=a(({value:e})=>{let{editor:t}=py(),r=Vm(Ut),o=za(he),n=za(ge),i=mc(!1);return fi(()=>{n&&(i.current=!1)},[n]),fi(()=>{!t||n!==!1||i.current||!e||(i.current=!0,t.commands.setContent(e))},[t,e,n]),fi(()=>{t&&(r(t),setTimeout(()=>{t.commands.blur()},1))},[t,r]),fi(()=>{if(!t||!o||t.isFocused)return;let s=Om(o),u=xt({version:"2022-01-01",elements:[s]},{channel:"inbox"}),l=Ie(u),d=Ie(t.getJSON());JSON.stringify(l)!==JSON.stringify(d)&&setTimeout(()=>{t.isFocused||t.commands.setContent(u)},1)},[t,o]),null},"InboxEditorContent"),by=fy(({theme:e,hidePublish:t,variables:r,readOnly:o,channels:n,routing:i,headerRenderer:s,render:u,value:l,...d},c)=>{let p=za(ge),m=mc(!0),g=mc(!1),b=Vm(Ae),[h,y]=my(he),T=za(Bt),N=pc(()=>({urls:{unsubscribe:!0,preferences:!0},...r}),[r]);fi(()=>(g.current=!0,()=>{g.current=!1}),[]);let v=pc(()=>[...Rr({variables:N,setSelectedNode:b})].filter(C=>C!==void 0),[N,b]),f=hy(({editor:C})=>{if(!C||T)return;if(!h){let S=Ie(C.getJSON()),H=go(null,"inbox","",S),V={version:"2022-01-01",elements:[{type:"channel",channel:"inbox",elements:H.elements,...H.raw&&{raw:H.raw}}]};y(V);return}let B=C.getJSON(),L=Ie(B),k=go(h,"inbox","",L),E=er(h,{elements:k.elements,channel:"inbox",...k.raw&&{raw:k.raw}}),w=JSON.stringify(h.elements),P=JSON.stringify(E.elements);w!==P&&setTimeout(()=>{g.current&&y(E)},100)},[h,y,T]),x=pc(()=>{let C=Om(l);return xt({version:"2022-01-01",elements:[C]},{channel:"inbox"})},[l]);return Fm(Tr,{theme:e,isLoading:!!(p&&m.current),Header:s?s({hidePublish:t,channels:n,routing:i}):Fm(lo,{hidePublish:t,channels:n,routing:i}),...d,ref:c,children:u==null?void 0:u({content:x,extensions:v,editable:!o,autofocus:!o,onUpdate:f})})}),Ua=gy(by);import{EditorProvider as yy}from"@tiptap/react";import{jsx as zo,jsxs as gi}from"react/jsx-runtime";var fc=a(({content:e,extensions:t,editable:r,autofocus:o,onUpdate:n,readOnly:i=!1})=>e?gi("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:[gi("div",{className:"courier-my-3 courier-mx-4 courier-flex courier-items-center courier-gap-2 courier-justify-between",children:[gi("div",{className:"courier-flex courier-items-center courier-gap-3",children:[zo(_s,{}),zo("span",{className:"courier-text-xl courier-font-medium",children:"Inbox"})]}),gi("div",{className:"courier-flex courier-items-center courier-gap-4",children:[zo(Us,{}),zo(On,{}),zo(js,{})]})]}),gi(yy,{content:e,extensions:t,...i?{editable:!1,autofocus:!1}:{editable:r,autofocus:o,onUpdate:n},editorContainerProps:{className:A("courier-inbox-editor")},immediatelyRender:!1,children:[zo(zm,{value:e}),!i&&zo(Hr,{config:Wm})]})]}):null,"InboxEditor");import{zodResolver as vy}from"@hookform/resolvers/zod";import{useAtom as Cy}from"jotai";import{memo as xy,useCallback as $m,useEffect as Ty,useRef as wy}from"react";import{useForm as Py}from"react-hook-form";import{z as Jr}from"zod";import{Fragment as Um,jsx as ie,jsxs as Ot}from"react/jsx-runtime";var ky=Jr.object({enableButton:Jr.boolean().default(!0),buttonStyle:Jr.enum(["filled","outlined"]).default("filled"),buttonLabel:Jr.string().min(1,"Button label is required"),buttonUrl:Jr.string().default(""),enableSecondaryButton:Jr.boolean().default(!1),secondaryButtonStyle:Jr.enum(["filled","outlined"]).default("outlined"),secondaryButtonLabel:Jr.string().default("Learn more"),secondaryButtonUrl:Jr.string().default("")}),Ey=a(()=>{let[e,t]=Cy(he),r=wy(!1),o=Py({resolver:vy(ky),defaultValues:{enableButton:!1,buttonStyle:"filled",buttonLabel:"Try now",buttonUrl:"",enableSecondaryButton:!1,secondaryButtonStyle:"outlined",secondaryButtonLabel:"Learn more",secondaryButtonUrl:""},mode:"onChange"});Ty(()=>{if(!e||r.current)return;r.current=!0;let s=e.elements.find(l=>l.type==="channel"&&l.channel==="inbox");if(!s||!s.elements){r.current=!1;return}let u=s.elements.filter(l=>l.type==="action");if(u.length>0){let l=u[0],d=u[1];o.setValue("enableButton",!0),o.setValue("buttonLabel",l.content||"Register"),o.setValue("buttonUrl",l.href||""),o.setValue("buttonStyle",l.style==="link"?"outlined":"filled"),d?(o.setValue("enableSecondaryButton",!0),o.setValue("secondaryButtonLabel",d.content||"Learn more"),o.setValue("secondaryButtonUrl",d.href||""),o.setValue("secondaryButtonStyle",d.style==="link"?"outlined":"filled")):o.setValue("enableSecondaryButton",!1)}else o.setValue("enableButton",!1),o.setValue("enableSecondaryButton",!1);r.current=!1},[e,o]);let n=$m(s=>{if(!e||r.current)return;let u=e.elements.find(b=>b.type==="channel"&&b.channel==="inbox");u||(u={type:"channel",channel:"inbox",elements:[{type:"text",content:`
186
186
  `,text_style:"h2"},{type:"text",content:`
187
- `}]}),c.elements||(c.elements=[]);let u=[...c.elements.filter(g=>g.type!=="action")];if(l.enableButton){let g={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(g)}if(l.enableSecondaryButton){let g={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(g)}let d={...c,elements:u},p=e.elements.findIndex(g=>g.type==="channel"&&g.channel==="inbox"),f=[...e.elements];p!==-1?f[p]=d:f.push(d);let h={...e,elements:f};t(h)},[e,t]),i=cm(()=>{let l=o.getValues();n(l)},[o,n]);return ne(at,{...o,children:Rt("form",{onChange:i,children:[ne("div",{className:"courier-pb-4",children:ne(Z,{control:o.control,name:"enableButton",render:({field:l})=>Rt(U,{className:"courier-flex courier-flex-row courier-items-center courier-justify-between",children:[ne(Wt,{className:"!courier-m-0",children:"Enable button"}),ne($,{children:ne(Zo,{checked:l.value,onCheckedChange:l.onChange,className:"!courier-m-0"})})]})})}),o.watch("enableButton")&&Rt(um,{children:[ne(Z,{control:o.control,name:"buttonStyle",render:({field:l})=>Rt(U,{className:"courier-mb-4",children:[ne($,{children:Rt(zt,{type:"single",value:l.value,onValueChange:c=>{l.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:[ne(Be,{size:"sm",value:"filled",className:"courier-w-full courier-h-7",children:"Filled"}),ne(Be,{size:"sm",value:"outlined",className:"courier-w-full courier-h-7",children:"Outlined"})]})}),ne(K,{})]})}),ne(Z,{control:o.control,name:"buttonLabel",render:({field:l})=>Rt(U,{className:"courier-mb-4",children:[ne(Wt,{children:"Action label"}),ne($,{children:ne(se,{placeholder:"Register",...l})}),ne(K,{})]})}),ne(Z,{control:o.control,name:"buttonUrl",render:({field:l})=>Rt(U,{className:"courier-mb-4",children:[ne(Wt,{children:"Action URL"}),ne($,{children:ne(se,{placeholder:"https://example.com",...l})}),ne(K,{})]})}),ne(fe,{className:"courier-my-6"}),ne(Z,{control:o.control,name:"enableSecondaryButton",render:({field:l})=>Rt(U,{className:"courier-flex courier-flex-row courier-items-center courier-justify-between courier-mb-4",children:[ne(Wt,{className:"!courier-m-0",children:"Enable secondary button"}),ne($,{children:ne(Zo,{checked:l.value,onCheckedChange:l.onChange,className:"!courier-m-0"})})]})}),o.watch("enableSecondaryButton")&&Rt(um,{children:[ne(Z,{control:o.control,name:"secondaryButtonStyle",render:({field:l})=>Rt(U,{className:"courier-mb-4",children:[ne($,{children:Rt(zt,{type:"single",value:l.value,onValueChange:c=>{l.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:[ne(Be,{size:"sm",value:"filled",className:"courier-w-full courier-h-7",children:"Filled"}),ne(Be,{size:"sm",value:"outlined",className:"courier-w-full courier-h-7",children:"Outlined"})]})}),ne(K,{})]})}),ne(Z,{control:o.control,name:"secondaryButtonLabel",render:({field:l})=>Rt(U,{className:"courier-mb-4",children:[ne(Wt,{children:"Action label"}),ne($,{children:ne(se,{placeholder:"Learn more",...l})}),ne(K,{})]})}),ne(Z,{control:o.control,name:"secondaryButtonUrl",render:({field:l})=>Rt(U,{className:"courier-mb-4",children:[ne(Wt,{children:"Action URL"}),ne($,{children:ne(se,{placeholder:"https://example.com",...l})}),ne(K,{})]})})]})]})]})})},"SideBarComponent"),Gl=g0(x0);import{useAtomValue as C0}from"jotai";import{jsx as yn,jsxs as T0}from"react/jsx-runtime";var dm=s(({hidePublish:e,theme:t,variables:r,channels:o,routing:n})=>{let i=C0(be);return yn(Ma,{value:i,variables:r,theme:t,hidePublish:e,channels:o,routing:n,render:l=>T0("div",{className:"courier-flex courier-flex-1 courier-flex-row courier-overflow-hidden",children:[yn("div",{className:"courier-flex courier-flex-col courier-flex-1 courier-py-8 courier-items-center",children:yn(jl,{...l})}),yn("div",{className:"courier-editor-sidebar courier-opacity-100 courier-translate-x-0 courier-w-64 courier-flex-shrink-0",children:yn("div",{className:"courier-p-4 courier-h-full",children:yn(Gl,{})})})]})})},"InboxLayout");import{useCurrentEditor as w0}from"@tiptap/react";import{useAtom as P0,useAtomValue as Aa,useSetAtom as mm}from"jotai";import{forwardRef as k0,memo as E0,useCallback as N0,useEffect as pi,useMemo as Kl,useRef as Jl}from"react";import{jsx as pm}from"react/jsx-runtime";var fm=s(({value:e})=>{let{editor:t}=w0(),r=mm(Ot),o=Aa(be),n=Aa(he),i=Jl(!1);return pi(()=>{n&&(i.current=!1)},[n]),pi(()=>{!t||n!==!1||i.current||!e||(i.current=!0,t.commands.setContent(e))},[t,e,n]),pi(()=>{t&&(r(t),setTimeout(()=>{t.commands.blur()},1))},[t,r]),pi(()=>{var g,b;if(!t||!o||t.isFocused)return;let l=gm(o),c=l.type==="channel"&&"raw"in l&&((g=l.raw)==null?void 0:g.title)||"",a=l.type==="channel"&&"raw"in l&&((b=l.raw)==null?void 0:b.text)||"",p=xt({version:"2022-01-01",elements:[{type:"channel",channel:"push",elements:[{type:"text",content:c||`
188
- `,text_style:"h2"},{type:"text",content:a||`
189
- `}]}]}),f=Ie(p),h=Ie(t.getJSON());JSON.stringify(f)!==JSON.stringify(h)&&setTimeout(()=>{t.isFocused||t.commands.setContent(p)},1)},[t,o]),null},"PushEditorContent"),Xl={raw:{title:"",text:""}},gm=s(e=>{let t=e==null?void 0:e.elements.find(r=>r.type==="channel"&&r.channel==="push");return t||(t={type:"channel",channel:"push",raw:{title:"",text:""}}),t},"getOrCreatePushElement"),hm={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"}},M0=k0(({theme:e,hidePublish:t,variables:r,readOnly:o,channels:n,routing:i,headerRenderer:l,render:c,value:a},u)=>{let d=Aa(he),p=Jl(!0),f=Jl(!1),h=mm(ke),[g,b]=P0(be),y=Aa(Mt),w=Kl(()=>({urls:{unsubscribe:!0,preferences:!0},...r}),[r]);pi(()=>(f.current=!0,()=>{f.current=!1}),[]);let N=Kl(()=>[...Nr({variables:w,setSelectedNode:h})].filter(x=>x!==void 0),[w,h]),v=N0(({editor:x})=>{if(y)return;if(!g){let I=Ie(x.getJSON()).filter(X=>X.type==="text"),H=s(X=>"content"in X&&X.content?X.content.trim():"","getTextContent"),V=I[0]?H(I[0]):"",D=I[1]?H(I[1]):"";b({version:"2022-01-01",elements:[{type:"channel",channel:"push",raw:{title:V,text:D}}]});return}let B=Ie(x.getJSON()).filter(T=>T.type==="text"),R=s(T=>"content"in T&&T.content?T.content.trim():"","getTextContent"),C=B[0]?R(B[0]):"",E=B[1]?R(B[1]):"",P=Xt(g,{channel:{channel:"push",raw:{title:C,text:E}}});JSON.stringify(g)!==JSON.stringify(P)&&b(P)},[g,b,y]),m=Kl(()=>{var E,P;if(d!==!1)return null;let x=a==null?void 0:a.elements.find(T=>T.type==="channel"&&T.channel==="push");!x&&g&&(x=gm(g));let k=(x==null?void 0:x.type)==="channel"&&"raw"in x&&((E=x.raw)==null?void 0:E.title)||"",B=(x==null?void 0:x.type)==="channel"&&"raw"in x&&((P=x.raw)==null?void 0:P.text)||"";return xt({version:"2022-01-01",elements:[{type:"channel",channel:"push",elements:[{type:"text",content:k||`
190
- `,text_style:"h2"},{type:"text",content:B||`
191
- `}]}]})},[a,g,d]);return pm(yr,{theme:e,isLoading:!!(d&&p.current),Header:l?l({hidePublish:t,channels:n,routing:i}):pm(ro,{hidePublish:t,channels:n,routing:i}),ref:u,children:c==null?void 0:c({content:m,extensions:N,editable:!o,autofocus:!o,onUpdate:v})})}),Ia=E0(M0);import{EditorProvider as A0}from"@tiptap/react";import{jsx as jr,jsxs as La}from"react/jsx-runtime";var Ra=s(({children:e})=>La("div",{className:"courier-relative",children:[jr("div",{className:"courier-absolute courier-w-0.5 courier-h-6 courier-bg-border -courier-left-[2px] courier-top-[136px]"}),jr("div",{className:"courier-absolute courier-w-0.5 courier-h-[50px] courier-bg-border -courier-left-[2px] courier-top-[178px]"}),jr("div",{className:"courier-absolute courier-w-0.5 courier-h-[50px] courier-bg-border -courier-left-[2px] courier-top-[245px]"}),jr("div",{className:"courier-absolute courier-w-0.5 courier-h-[78px] courier-bg-border -courier-right-[2px] courier-top-[200px]"}),La("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:[La("div",{className:"courier-my-6 courier-mx-11 courier-flex courier-items-center courier-gap-2 courier-justify-between",children:[jr("span",{className:"courier-text-xs courier-font-semibold",children:new Date().toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})}),La("div",{className:"courier-flex courier-items-center courier-gap-2",children:[jr(Eu,{}),jr(Mu,{}),jr(lu,{})]})]}),jr("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 Yl}from"react/jsx-runtime";var Ql=s(({content:e,extensions:t,editable:r,autofocus:o,onUpdate:n,className:i})=>{let l=e||{type:"doc",content:[{type:"paragraph"}]};return Yl(Ra,{children:[Yl("div",{className:M("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})})]}),Yl(A0,{content:l,extensions:t,editable:r,autofocus:o,onUpdate:n,editorContainerProps:{className:M("courier-push-editor")},"data-testid":"editor-provider",immediatelyRender:!1,children:[Sa(fm,{value:l}),Sa(Ar,{config:hm})]})]})},"PushEditor");import{useAtomValue as I0}from"jotai";import{jsx as ec}from"react/jsx-runtime";var bm=s(({hidePublish:e,theme:t,variables:r,channels:o,routing:n})=>{let i=I0(be);return ec(Ia,{value:i,variables:r,theme:t,hidePublish:e,channels:o,routing:n,render:l=>ec("div",{className:"courier-flex courier-flex-col courier-items-center courier-py-8",children:ec(Ql,{...l})})})},"PushLayout");import{useCurrentEditor as L0}from"@tiptap/react";import{useAtom as R0,useAtomValue as Ha,useSetAtom as ym}from"jotai";import{forwardRef as S0,memo as B0,useCallback as H0,useEffect as mi,useMemo as Ba,useRef as tc}from"react";import{SegmentedMessage as D0}from"sms-segments-calculator";import{jsx as rc}from"react/jsx-runtime";var oc={raw:{text:""}},vm=s(e=>{let t=e==null?void 0:e.elements.find(r=>r.type==="channel"&&r.channel==="sms");return t||(t={type:"channel",channel:"sms",raw:{text:""}}),t},"getOrCreateSMSElement"),xm=s(({value:e})=>{var a;let{editor:t}=L0(),r=ym(Ot),o=Ha(be),n=(a=t==null?void 0:t.getText())!=null?a:"",i=Ba(()=>new D0(n),[n]),l=Ha(he),c=tc(!1);return mi(()=>{l&&(c.current=!1)},[l]),mi(()=>{!t||l!==!1||c.current||!e||(c.current=!0,t.commands.setContent(e))},[t,e,l]),mi(()=>{t&&(r(t),setTimeout(()=>{t.commands.blur()},1))},[t,r]),mi(()=>{var y;if(!t||!o||t.isFocused)return;let u=vm(o),d=u.type==="channel"&&"raw"in u&&((y=u.raw)==null?void 0:y.text)||"",h=xt({version:"2022-01-01",elements:[{type:"channel",channel:"sms",elements:d?[{type:"text",content:d}]:[{type:"text",content:`
192
- `}]}]}),g=Ie(h),b=Ie(t.getJSON());JSON.stringify(g)!==JSON.stringify(b)&&setTimeout(()=>{t.isFocused||t.commands.setContent(h)},1)},[t,o]),rc("span",{className:"courier-self-end courier-pr-2 courier-text-xs courier-color-gray-500",children:Math.ceil(((i==null?void 0:i.messageSize)||0)/8)})},"SMSEditorContent"),Cm={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"}},F0=S0(({theme:e,hidePublish:t,variables:r,readOnly:o,channels:n,routing:i,render:l,headerRenderer:c,value:a},u)=>{let d=Ha(he),p=tc(!0),f=tc(!1),h=ym(ke),[g,b]=R0(be),y=Ha(Mt),w=Ba(()=>({urls:{unsubscribe:!0,preferences:!0},...r}),[r]);mi(()=>(f.current=!0,()=>{f.current=!1}),[]);let N=Ba(()=>[...Nr({variables:w,setSelectedNode:h})].filter(x=>x!==void 0),[w,h]),v=H0(({editor:x})=>{if(y)return;if(!g){let T=Ie(x.getJSON()).filter(D=>D.type==="text"),I=s(D=>"content"in D&&D.content?D.content.trim():"","getTextContent"),V={version:"2022-01-01",elements:[{type:"channel",channel:"sms",raw:{text:T.map(I).join(" ").trim()}}]};b(V);return}let B=Ie(x.getJSON()).filter(P=>P.type==="text"),R=s(P=>"content"in P&&P.content?P.content.trim():"","getTextContent"),C=B.map(R).join(" ").trim(),E=Xt(g,{channel:{channel:"sms",raw:{text:C}}});JSON.stringify(g)!==JSON.stringify(E)&&b(E)},[g,b,y]),m=Ba(()=>{var C;if(d!==!1)return null;let x=a==null?void 0:a.elements.find(E=>E.type==="channel"&&E.channel==="sms");!x&&g&&(x=vm(g));let k=(x==null?void 0:x.type)==="channel"&&"raw"in x&&((C=x.raw)==null?void 0:C.text)||"";return xt({version:"2022-01-01",elements:[{type:"channel",channel:"sms",elements:k?[{type:"text",content:k}]:[{type:"text",content:`
193
- `}]}]})},[a,g,d]);return rc(yr,{theme:e,isLoading:!!(d&&p.current),Header:c?c({hidePublish:t,channels:n,routing:i}):rc(ro,{hidePublish:t,channels:n,routing:i}),ref:u,children:l==null?void 0:l({content:m,extensions:N,editable:!o,autofocus:!o,onUpdate:v})})}),Da=B0(F0);import{EditorProvider as V0}from"@tiptap/react";import{jsx as Fa,jsxs as O0}from"react/jsx-runtime";var nc=s(({content:e,extensions:t,editable:r,autofocus:o,onUpdate:n,className:i})=>{let l=e||{type:"doc",content:[{type:"paragraph"}]};return Fa(Ra,{children:Fa("div",{className:M("courier-sms-editor",i),children:O0(V0,{content:l,extensions:t,editable:r,autofocus:o,onUpdate:n,"data-testid":"editor-provider",immediatelyRender:!1,children:[Fa(xm,{value:l}),Fa(Ar,{config:Cm})]})})})},"SMSEditor");import{useAtomValue as W0}from"jotai";import{jsx as ic}from"react/jsx-runtime";var Tm=s(({hidePublish:e,theme:t,variables:r,channels:o,routing:n})=>{let i=W0(be);return ic(Da,{value:i,variables:r,theme:t,hidePublish:e,channels:o,routing:n,render:l=>ic("div",{className:"courier-flex courier-flex-col courier-items-center courier-py-8",children:ic(nc,{...l})})})},"SMSLayout");var Z0=s((e,t)=>{if(e!=null&&e.channels&&e.channels.length>0){let r=e.channels.filter(o=>typeof o=="string");if(r.length>0)return r}return t!=null?t:["email"]},"resolveChannels"),ac=s(({channels:e=["email"],routing:t})=>{let[r,o]=_0([]),n=wm(be),i=Pm(be),[l,c]=z0(Hi),a=Pm(ke),u=wm(he),{saveTemplate:d}=Br(),p=Z0(t,e),f=$0(p);f.current=p,U0(()=>{if(u)return;let w=f.current;if(!n||!n.elements){let m=w.map(x=>Jo.find(k=>k.value===x)).filter(x=>!!x);o(m),m.length>0&&c(m[0].value);return}let N=n.elements.filter(m=>m.type==="channel").map(m=>m.channel).filter(m=>w.includes(m)),v=w.filter(m=>N.includes(m)).map(m=>Jo.find(x=>x.value===m)).filter(m=>!!m);o(v)},[n,u,c]);let h=Em(()=>(p==null?void 0:p.filter(w=>!r.some(N=>N.value===w)).map(w=>Jo.find(N=>N.value===w)).filter(w=>!!w))||[],[r,p]),g=km(w=>{let N=[],v;switch(w){case"sms":N=[],v=oc.raw;break;case"push":N=[],v=Xl.raw;break;case"inbox":N=Na;break;default:N=va}if(!n){let k=[];for(let C of r){let E=[],P;switch(C.value){case"sms":E=[],P=oc.raw;break;case"push":E=[],P=Xl.raw;break;case"inbox":E=Na;break;default:E=va}let T={type:"channel",channel:C.value,...C.value==="push"?{}:{elements:E}};P&&(T.raw=P),k.push(T)}let B={type:"channel",channel:w,...w==="push"||w==="sms"?{}:{elements:N}};v&&(B.raw=v),k.push(B),i({version:"2022-01-01",elements:k}),c(w);return}let m={...w==="push"||w==="sms"?{}:{elements:N},channel:v?{channel:w,raw:v}:w},x=Xt(n,m);i(x),c(w)},[n,i,c,r]),b=km(async w=>{if(!n)return;let N=n.elements.filter(x=>x.type==="channel"?x.channel!==w:!0),v={...n,elements:N};i(v),a(null);let m=r.filter(x=>x.value!==w);if(l===w&&m.length>0&&c(m[0].value),t)try{await d(t)}catch(x){console.error("Failed to save template after removing channel:",x)}},[n,i,r,l,c,a,t,d]),y=Em(()=>[...r,...h],[r,h]);return{enabledChannels:r,disabledChannels:h,channel:l,channelOptions:y,setChannel:c,addChannel:g,removeChannel:b}},"useChannels");import{Fragment as X0,jsx as rt,jsxs as Ir}from"react/jsx-runtime";var ro=s(({hidePublish:e=!1,channels:t,routing:r})=>{let o=J0(null),n=sc(it),i=sc(he),l=sc(ee),{publishTemplate:c,isTemplatePublishing:a}=Br(),[u,d]=j0(zo),{enabledChannels:p,disabledChannels:f,channel:h,setChannel:g,addChannel:b,removeChannel:y}=ac({channels:t,routing:r});K0(()=>{n===!0&&d(null)},[n,d]);let w=G0(()=>{c()},[c]);return Ir("div",{className:"courier-flex courier-justify-between courier-w-full courier-h-full courier-self-stretch",ref:o,children:[Ir("div",{className:"courier-flex courier-items-center courier-gap-2 courier-flex-grow courier-self-stretch",children:[rt(Ii,{value:h,onValueChange:N=>g(N),className:"courier-h-full",ref:o,children:rt(Bn,{className:"courier-grid courier-w-full courier-border-none courier-h-full !courier-p-0",style:{gridTemplateColumns:`repeat(${Jo.length}, fit-content(100%))`},children:p.map(N=>Ir(qo,{value:N.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:[N.label,N.value===h&&p.length>1&&Ir(Wc,{children:[rt(zc,{asChild:!0,children:rt("div",{className:"courier-pl-2",children:rt(Hn,{color:"#A3A3A3"})})}),Ir(os,{ref:o,children:[rt(ns,{children:rt(q0,{children:"Are you sure you want to delete this channel?"})}),Ir(is,{children:[rt(ss,{asChild:!0,children:rt(Te,{buttonSize:"small",variant:"outline",children:"Cancel"})}),rt(as,{asChild:!0,children:rt(Te,{buttonSize:"small",variant:"primary",onClick:()=>y(N.value),children:"Delete"})})]})]})]})]},N.value))})}),f.length>0&&Ir(X0,{children:[rt(ms,{orientation:"vertical",className:"!courier-h-5"}),Ir(ki,{children:[rt(Ei,{asChild:!0,children:rt(Te,{variant:"link",children:"+ Add channel"})}),rt(An,{portalProps:{container:o.current},children:f.map(N=>Ir(In,{onClick:()=>b(N.value),children:[N.icon,N.label]},N.value))})]})]})]}),Ir("div",{className:"courier-w-64 courier-pl-4 courier-flex courier-justify-end courier-items-center courier-gap-2",children:[n!==null&&rt($n,{isLoading:!!i,isSaving:!!n,isError:!!l}),!e&&i!==null&&rt(Te,{variant:"primary",buttonSize:"small",disabled:a===!0||n===!0||u!==null,onClick:w,children:a?"Publishing...":"Publish changes"})]})]})},"Channels");import{SortableContext as qV}from"@dnd-kit/sortable";import{useCallback as Y0,useEffect as Q0,useRef as Va,useState as ey}from"react";function fi({onSave:e,debounceMs:t=200,enabled:r=!0,onError:o,initialContent:n}){let[i,l]=ey(!1),c=Va(null),a=Va(),u=Va(0),d=Va();Q0(()=>{n&&(a.current=JSON.stringify(n))},[n]);let p=Y0(async f=>{if(!r)return;c.current=f,d.current&&(clearTimeout(d.current),d.current=void 0);let h=s(async()=>{let w=c.current;if(c.current=null,!!w){try{let N=JSON.stringify(w);if(N===a.current)return;l(!0),a.current=N,u.current=Date.now(),await e(w)}catch(N){o==null||o(N),l(!1);return}l(!1),c.current&&p(c.current)}},"processPendingContent");if(i)return;let b=Date.now()-u.current,y=Math.max(0,t-b);d.current=setTimeout(()=>{d.current=void 0,h()},y)},[t,r,i,o,e]);return{handleAutoSave:p,isSaving:i}}s(fi,"useAutoSave");import{useAtom as hi,useAtomValue as Tn,useSetAtom as dc}from"jotai";import{memo as ky,useCallback as Um,useEffect as Gt,useRef as Ey,useState as Ny}from"react";import{useAtom as Dm,useAtomValue as uc,useSetAtom as Fm}from"jotai";import{forwardRef as Ty,memo as wy,useCallback as Vm,useEffect as Cn,useRef as Om}from"react";import{z as kt}from"zod";var Nm=kt.object({headerStyle:kt.enum(["plain","border"]),isUnsubscribe:kt.boolean().optional(),isPreferences:kt.boolean().optional(),link:kt.string().optional(),brandColor:kt.string(),textColor:kt.string(),subtleColor:kt.string(),logo:kt.string().optional(),facebookLink:kt.string().optional(),linkedinLink:kt.string().optional(),instagramLink:kt.string().optional(),mediumLink:kt.string().optional(),xLink:kt.string().optional()}),gt={headerStyle:"plain",isUnsubscribe:!1,isPreferences:!1,link:"",brandColor:"#000000",textColor:"#9CA3AF",subtleColor:"#737373",logo:"",facebookLink:"",linkedinLink:"",instagramLink:"",mediumLink:"",xLink:""};var ty=s(e=>{switch(e.type){case"bold":return"**";case"italic":return"*";case"strike":return"~";case"underline":return"+";default:return""}},"markToMD"),gi=s(e=>{var t,r,o,n,i,l,c,a,u,d,p,f,h,g;switch(e.type){case"variable":return`{{${(t=e.attrs)==null?void 0:t.id}}}`;case"text":{let b=e.text||"";if((r=e.marks)!=null&&r.length){let w=e.marks.map(ty).filter(Boolean);b=w.join("")+b+w.reverse().join("")}let y=(o=e.marks)==null?void 0:o.find(w=>w.type==="link");return y&&(b=`[${b}](${(n=y.attrs)==null?void 0:n.href})`),b}case"hardBreak":return`
194
- `;case"paragraph":return(((i=e.content)==null?void 0:i.map(gi).join(""))||"")+`
187
+ `}]}),u.elements||(u.elements=[]);let d=[...u.elements.filter(b=>b.type!=="action")];if(s.enableButton){let b={type:"action",content:s.buttonLabel,background_color:s.buttonStyle==="outlined"?"#ffffff":"#000000",color:s.buttonStyle==="outlined"?"#000000":"#ffffff",border:{enabled:!0,color:"#000000",radius:4,size:"1px"},align:"left",href:s.buttonUrl,style:s.buttonStyle==="outlined"?"link":"button"};d.push(b)}if(s.enableSecondaryButton){let b={type:"action",content:s.secondaryButtonLabel,background_color:s.secondaryButtonStyle==="outlined"?"#ffffff":"#000000",color:s.secondaryButtonStyle==="outlined"?"#000000":"#ffffff",border:{enabled:!0,color:"#000000",radius:4,size:"1px"},align:"left",href:s.secondaryButtonUrl,style:s.secondaryButtonStyle==="outlined"?"link":"button"};d.push(b)}let c={...u,elements:d},p=e.elements.findIndex(b=>b.type==="channel"&&b.channel==="inbox"),m=[...e.elements];p!==-1?m[p]=c:m.push(c);let g={...e,elements:m};t(g)},[e,t]),i=$m(()=>{let s=o.getValues();n(s)},[o,n]);return ie(Ze,{...o,children:Ot("form",{onChange:i,children:[ie("div",{className:"courier-pb-4",children:ie(U,{control:o.control,name:"enableButton",render:({field:s})=>Ot(z,{className:"courier-flex courier-flex-row courier-items-center courier-justify-between",children:[ie(_t,{className:"!courier-m-0",children:"Enable button"}),ie($,{children:ie(Ko,{checked:s.value,onCheckedChange:s.onChange,className:"!courier-m-0"})})]})})}),o.watch("enableButton")&&Ot(Um,{children:[ie(U,{control:o.control,name:"buttonStyle",render:({field:s})=>Ot(z,{className:"courier-mb-4",children:[ie($,{children:Ot(Ht,{type:"single",value:s.value,onValueChange:u=>{s.onChange(u),i()},className:"courier-w-full courier-border courier-rounded-md courier-border-border courier-p-0.5 courier-mb-3 courier-shadow-sm",children:[ie(Ve,{size:"sm",value:"filled",className:"courier-w-full courier-h-7",children:"Filled"}),ie(Ve,{size:"sm",value:"outlined",className:"courier-w-full courier-h-7",children:"Outlined"})]})}),ie(_,{})]})}),ie(U,{control:o.control,name:"buttonLabel",render:({field:s})=>Ot(z,{className:"courier-mb-4",children:[ie(_t,{children:"Action label"}),ie($,{children:ie(ae,{placeholder:"Register",...s})}),ie(_,{})]})}),ie(U,{control:o.control,name:"buttonUrl",render:({field:s})=>Ot(z,{className:"courier-mb-4",children:[ie(_t,{children:"Action URL"}),ie($,{children:ie(ae,{placeholder:"https://example.com",...s})}),ie(_,{})]})}),ie(fe,{className:"courier-my-6"}),ie(U,{control:o.control,name:"enableSecondaryButton",render:({field:s})=>Ot(z,{className:"courier-flex courier-flex-row courier-items-center courier-justify-between courier-mb-4",children:[ie(_t,{className:"!courier-m-0",children:"Enable secondary button"}),ie($,{children:ie(Ko,{checked:s.value,onCheckedChange:s.onChange,className:"!courier-m-0"})})]})}),o.watch("enableSecondaryButton")&&Ot(Um,{children:[ie(U,{control:o.control,name:"secondaryButtonStyle",render:({field:s})=>Ot(z,{className:"courier-mb-4",children:[ie($,{children:Ot(Ht,{type:"single",value:s.value,onValueChange:u=>{s.onChange(u),i()},className:"courier-w-full courier-border courier-rounded-md courier-border-border courier-p-0.5 courier-mb-3 courier-shadow-sm",children:[ie(Ve,{size:"sm",value:"filled",className:"courier-w-full courier-h-7",children:"Filled"}),ie(Ve,{size:"sm",value:"outlined",className:"courier-w-full courier-h-7",children:"Outlined"})]})}),ie(_,{})]})}),ie(U,{control:o.control,name:"secondaryButtonLabel",render:({field:s})=>Ot(z,{className:"courier-mb-4",children:[ie(_t,{children:"Action label"}),ie($,{children:ie(ae,{placeholder:"Learn more",...s})}),ie(_,{})]})}),ie(U,{control:o.control,name:"secondaryButtonUrl",render:({field:s})=>Ot(z,{className:"courier-mb-4",children:[ie(_t,{children:"Action URL"}),ie($,{children:ie(ae,{placeholder:"https://example.com",...s})}),ie(_,{})]})})]})]})]})})},"SideBarComponent"),gc=xy(Ey);import{useAtomValue as My}from"jotai";import{jsx as Tn,jsxs as Ny}from"react/jsx-runtime";var _m=a(({hidePublish:e,theme:t,variables:r,channels:o,routing:n,...i})=>{let s=My(he);return Tn(Ua,{value:s,variables:r,theme:t,hidePublish:e,channels:o,routing:n,render:u=>Ny("div",{className:"courier-flex courier-flex-1 courier-flex-row courier-overflow-hidden",children:[Tn("div",{className:"courier-flex courier-flex-col courier-flex-1 courier-py-8 courier-items-center",children:Tn(fc,{...u})}),Tn("div",{className:"courier-editor-sidebar courier-opacity-100 courier-translate-x-0 courier-w-64 courier-flex-shrink-0",children:Tn("div",{className:"courier-p-4 courier-h-full",children:Tn(gc,{})})})]}),...i})},"InboxLayout");import{useCurrentEditor as Ay}from"@tiptap/react";import{useAtom as Ly,useAtomValue as _a,useSetAtom as qm}from"jotai";import{forwardRef as Iy,memo as Sy,useCallback as Ry,useEffect as hi,useMemo as hc,useRef as bc}from"react";import{jsx as Zm}from"react/jsx-runtime";var jm=a(({value:e})=>{let{editor:t}=Ay(),r=qm(Ut),o=_a(he),n=_a(ge),i=bc(!1);return hi(()=>{n&&(i.current=!1)},[n]),hi(()=>{!t||n!==!1||i.current||!e||(i.current=!0,t.commands.setContent(e))},[t,e,n]),hi(()=>{t&&(r(t),setTimeout(()=>{t.commands.blur()},1))},[t,r]),hi(()=>{var b,h;if(!t||!o||t.isFocused)return;let s=Gm(o),u=s.type==="channel"&&"raw"in s&&((b=s.raw)==null?void 0:b.title)||"",l=s.type==="channel"&&"raw"in s&&((h=s.raw)==null?void 0:h.text)||"",p=xt({version:"2022-01-01",elements:[{type:"channel",channel:"push",elements:[{type:"text",content:u||`
188
+ `,text_style:"h2"},{type:"text",content:l||`
189
+ `}]}]}),m=Ie(p),g=Ie(t.getJSON());JSON.stringify(m)!==JSON.stringify(g)&&setTimeout(()=>{t.isFocused||t.commands.setContent(p)},1)},[t,o]),null},"PushEditorContent"),yc={raw:{title:"",text:""}},Gm=a(e=>{let t=e==null?void 0:e.elements.find(r=>r.type==="channel"&&r.channel==="push");return t||(t={type:"channel",channel:"push",raw:{title:"",text:""}}),t},"getOrCreatePushElement"),Km={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"}},By=Iy(({theme:e,hidePublish:t,variables:r,readOnly:o,channels:n,routing:i,headerRenderer:s,render:u,value:l,...d},c)=>{let p=_a(ge),m=bc(!0),g=bc(!1),b=qm(Ae),[h,y]=Ly(he),T=_a(Bt),N=hc(()=>({urls:{unsubscribe:!0,preferences:!0},...r}),[r]);hi(()=>(g.current=!0,()=>{g.current=!1}),[]);let v=hc(()=>[...Rr({variables:N,setSelectedNode:b})].filter(C=>C!==void 0),[N,b]),f=Ry(({editor:C})=>{if(T)return;if(!h){let H=Ie(C.getJSON()).filter(Y=>Y.type==="text"),V=a(Y=>"content"in Y&&Y.content?Y.content.trim():"","getTextContent"),D=H[0]?V(H[0]):"",F=H[1]?V(H[1]):"";y({version:"2022-01-01",elements:[{type:"channel",channel:"push",raw:{title:D,text:F}}]});return}let L=Ie(C.getJSON()).filter(S=>S.type==="text"),k=a(S=>"content"in S&&S.content?S.content.trim():"","getTextContent"),E=L[0]?k(L[0]):"",w=L[1]?k(L[1]):"",P=er(h,{channel:{channel:"push",raw:{title:E,text:w}}});JSON.stringify(h)!==JSON.stringify(P)&&y(P)},[h,y,T]),x=hc(()=>{var w,P;if(p!==!1)return null;let C=l==null?void 0:l.elements.find(S=>S.type==="channel"&&S.channel==="push");!C&&h&&(C=Gm(h));let B=(C==null?void 0:C.type)==="channel"&&"raw"in C&&((w=C.raw)==null?void 0:w.title)||"",L=(C==null?void 0:C.type)==="channel"&&"raw"in C&&((P=C.raw)==null?void 0:P.text)||"";return xt({version:"2022-01-01",elements:[{type:"channel",channel:"push",elements:[{type:"text",content:B||`
190
+ `,text_style:"h2"},{type:"text",content:L||`
191
+ `}]}]})},[l,h,p]);return Zm(Tr,{theme:e,isLoading:!!(p&&m.current),Header:s?s({hidePublish:t,channels:n,routing:i}):Zm(lo,{hidePublish:t,channels:n,routing:i}),...d,ref:c,children:u==null?void 0:u({content:x,extensions:v,editable:!o,autofocus:!o,onUpdate:f})})}),Za=Sy(By);import{EditorProvider as Hy}from"@tiptap/react";import{jsx as Xr,jsxs as qa}from"react/jsx-runtime";var ja=a(({children:e})=>qa("div",{className:"courier-relative",children:[Xr("div",{className:"courier-absolute courier-w-0.5 courier-h-6 courier-bg-border -courier-left-[2px] courier-top-[136px]"}),Xr("div",{className:"courier-absolute courier-w-0.5 courier-h-[50px] courier-bg-border -courier-left-[2px] courier-top-[178px]"}),Xr("div",{className:"courier-absolute courier-w-0.5 courier-h-[50px] courier-bg-border -courier-left-[2px] courier-top-[245px]"}),Xr("div",{className:"courier-absolute courier-w-0.5 courier-h-[78px] courier-bg-border -courier-right-[2px] courier-top-[200px]"}),qa("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:[qa("div",{className:"courier-my-6 courier-mx-11 courier-flex courier-items-center courier-gap-2 courier-justify-between",children:[Xr("span",{className:"courier-text-xs courier-font-semibold",children:new Date().toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})}),qa("div",{className:"courier-flex courier-items-center courier-gap-2",children:[Xr(ed,{}),Xr(rd,{}),Xr(Hu,{})]})]}),Xr("div",{className:"courier-flex-1 courier-overflow-auto courier-h-[calc(90%-56px)] courier-mb-6",children:e})]})]}),"IPhoneFrame");import{jsx as Ga,jsxs as vc}from"react/jsx-runtime";var Cc=a(({content:e,extensions:t,editable:r,autofocus:o,onUpdate:n,className:i,readOnly:s=!1})=>{let u=e||{type:"doc",content:[{type:"paragraph"}]},l=s?{editable:!1,autofocus:!1}:{editable:r,autofocus:o,onUpdate:n};return vc(ja,{children:[vc("div",{className:A("courier-px-4 courier-py-2 courier-text-[#A3A3A3] courier-text-center courier-my-8",i),children:[Ga("p",{className:"courier-text-lg courier-font-medium",children:new Date().toLocaleDateString(void 0,{weekday:"long",month:"long",day:"numeric"})}),Ga("p",{className:"courier-text-5xl courier-font-semibold courier-mt-1",children:new Date().toLocaleTimeString(void 0,{hour:"numeric",minute:"2-digit",hour12:!0})})]}),vc(Hy,{content:u,extensions:t,...l,editorContainerProps:{className:A("courier-push-editor")},"data-testid":"editor-provider",immediatelyRender:!1,children:[Ga(jm,{value:u}),!s&&Ga(Hr,{config:Km})]})]})},"PushEditor");import{useAtomValue as Dy}from"jotai";import{jsx as xc}from"react/jsx-runtime";var Jm=a(({hidePublish:e,theme:t,variables:r,channels:o,routing:n,...i})=>{let s=Dy(he);return xc(Za,{value:s,variables:r,theme:t,hidePublish:e,channels:o,routing:n,render:u=>xc("div",{className:"courier-flex courier-flex-col courier-items-center courier-py-8",children:xc(Cc,{...u})}),...i})},"PushLayout");import{useCurrentEditor as Fy}from"@tiptap/react";import{useAtom as Vy,useAtomValue as Ja,useSetAtom as Xm}from"jotai";import{forwardRef as Oy,memo as Wy,useCallback as zy,useEffect as bi,useMemo as Ka,useRef as Tc}from"react";import{SegmentedMessage as $y}from"sms-segments-calculator";import{jsx as wc}from"react/jsx-runtime";var Pc={raw:{text:""}},Ym=a(e=>{let t=e==null?void 0:e.elements.find(r=>r.type==="channel"&&r.channel==="sms");return t||(t={type:"channel",channel:"sms",raw:{text:""}}),t},"getOrCreateSMSElement"),Qm=a(({value:e})=>{var l;let{editor:t}=Fy(),r=Xm(Ut),o=Ja(he),n=(l=t==null?void 0:t.getText())!=null?l:"",i=Ka(()=>new $y(n),[n]),s=Ja(ge),u=Tc(!1);return bi(()=>{s&&(u.current=!1)},[s]),bi(()=>{!t||s!==!1||u.current||!e||(u.current=!0,t.commands.setContent(e))},[t,e,s]),bi(()=>{t&&(r(t),setTimeout(()=>{t.commands.blur()},1))},[t,r]),bi(()=>{var y;if(!t||!o||t.isFocused)return;let d=Ym(o),c=d.type==="channel"&&"raw"in d&&((y=d.raw)==null?void 0:y.text)||"",g=xt({version:"2022-01-01",elements:[{type:"channel",channel:"sms",elements:c?[{type:"text",content:c}]:[{type:"text",content:`
192
+ `}]}]}),b=Ie(g),h=Ie(t.getJSON());JSON.stringify(b)!==JSON.stringify(h)&&setTimeout(()=>{t.isFocused||t.commands.setContent(g)},1)},[t,o]),wc("span",{className:"courier-self-end courier-pr-2 courier-text-xs courier-color-gray-500",children:Math.ceil(((i==null?void 0:i.messageSize)||0)/8)})},"SMSEditorContent"),ef={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"}},Uy=Oy(({theme:e,hidePublish:t,variables:r,readOnly:o,channels:n,routing:i,render:s,headerRenderer:u,value:l,...d},c)=>{let p=Ja(ge),m=Tc(!0),g=Tc(!1),b=Xm(Ae),[h,y]=Vy(he),T=Ja(Bt),N=Ka(()=>({urls:{unsubscribe:!0,preferences:!0},...r}),[r]);bi(()=>(g.current=!0,()=>{g.current=!1}),[]);let v=Ka(()=>[...Rr({variables:N,setSelectedNode:b})].filter(C=>C!==void 0),[N,b]),f=zy(({editor:C})=>{if(T)return;if(!h){let S=Ie(C.getJSON()).filter(F=>F.type==="text"),H=a(F=>"content"in F&&F.content?F.content.trim():"","getTextContent"),D={version:"2022-01-01",elements:[{type:"channel",channel:"sms",raw:{text:S.map(H).join(" ").trim()}}]};y(D);return}let L=Ie(C.getJSON()).filter(P=>P.type==="text"),k=a(P=>"content"in P&&P.content?P.content.trim():"","getTextContent"),E=L.map(k).join(" ").trim(),w=er(h,{channel:{channel:"sms",raw:{text:E}}});JSON.stringify(h)!==JSON.stringify(w)&&y(w)},[h,y,T]),x=Ka(()=>{var E;if(p!==!1)return null;let C=l==null?void 0:l.elements.find(w=>w.type==="channel"&&w.channel==="sms");!C&&h&&(C=Ym(h));let B=(C==null?void 0:C.type)==="channel"&&"raw"in C&&((E=C.raw)==null?void 0:E.text)||"";return xt({version:"2022-01-01",elements:[{type:"channel",channel:"sms",elements:B?[{type:"text",content:B}]:[{type:"text",content:`
193
+ `}]}]})},[l,h,p]);return wc(Tr,{theme:e,isLoading:!!(p&&m.current),Header:u?u({hidePublish:t,channels:n,routing:i}):wc(lo,{hidePublish:t,channels:n,routing:i}),...d,ref:c,children:s==null?void 0:s({content:x,extensions:v,editable:!o,autofocus:!o,onUpdate:f})})}),Xa=Wy(Uy);import{EditorProvider as _y}from"@tiptap/react";import{jsx as Ya,jsxs as Zy}from"react/jsx-runtime";var kc=a(({content:e,extensions:t,editable:r,autofocus:o,onUpdate:n,className:i,readOnly:s=!1})=>{let u=e||{type:"doc",content:[{type:"paragraph"}]},l=s?{editable:!1,autofocus:!1}:{editable:r,autofocus:o,onUpdate:n};return Ya(ja,{children:Ya("div",{className:A("courier-sms-editor",i),children:Zy(_y,{content:u,extensions:t,...l,"data-testid":"editor-provider",immediatelyRender:!1,children:[Ya(Qm,{value:u}),!s&&Ya(Hr,{config:ef})]})})})},"SMSEditor");import{useAtomValue as qy}from"jotai";import{jsx as Ec}from"react/jsx-runtime";var tf=a(({hidePublish:e,theme:t,variables:r,channels:o,routing:n,dataMode:i,...s})=>{let u=qy(he);return Ec(Xa,{value:u,variables:r,theme:t,hidePublish:e,channels:o,routing:n,dataMode:i,render:l=>Ec("div",{className:"courier-flex courier-flex-col courier-items-center courier-py-8",children:Ec(kc,{...l})}),...s})},"SMSLayout");var Xy=a((e,t)=>{if(e!=null&&e.channels&&e.channels.length>0){let r=e.channels.filter(o=>typeof o=="string");if(r.length>0)return r}return t!=null?t:["email"]},"resolveChannels"),Mc=a(({channels:e=["email"],routing:t})=>{let[r,o]=Jy([]),n=rf(he),i=of(he),[s,u]=jy(Zi),l=of(Ae),d=rf(ge),{saveTemplate:c}=Wr(),p=Xy(t,e),m=Ky(p);m.current=p,Gy(()=>{if(d)return;let T=m.current;if(!n||!n.elements){let f=T.map(x=>Qo.find(C=>C.value===x)).filter(x=>!!x);o(f),f.length>0&&u(f[0].value);return}let N=n.elements.filter(f=>f.type==="channel").map(f=>f.channel).filter(f=>T.includes(f)),v=T.filter(f=>N.includes(f)).map(f=>Qo.find(x=>x.value===f)).filter(f=>!!f);o(v)},[n,d,u]);let g=af(()=>(p==null?void 0:p.filter(T=>!r.some(N=>N.value===T)).map(T=>Qo.find(N=>N.value===T)).filter(T=>!!T))||[],[r,p]),b=nf(T=>{let N=[],v;switch(T){case"sms":N=[],v=Pc.raw;break;case"push":N=[],v=yc.raw;break;case"inbox":N=$a;break;default:N=Sa}if(!n){let C=[];for(let k of r){let E=[],w;switch(k.value){case"sms":E=[],w=Pc.raw;break;case"push":E=[],w=yc.raw;break;case"inbox":E=$a;break;default:E=Sa}let P={type:"channel",channel:k.value,...k.value==="push"?{}:{elements:E}};w&&(P.raw=w),C.push(P)}let B={type:"channel",channel:T,...T==="push"||T==="sms"?{}:{elements:N}};v&&(B.raw=v),C.push(B),i({version:"2022-01-01",elements:C}),u(T);return}let f={...T==="push"||T==="sms"?{}:{elements:N},channel:v?{channel:T,raw:v}:T},x=er(n,f);i(x),u(T)},[n,i,u,r]),h=nf(async T=>{if(!n)return;let N=n.elements.filter(x=>x.type==="channel"?x.channel!==T:!0),v={...n,elements:N};i(v),l(null);let f=r.filter(x=>x.value!==T);if(s===T&&f.length>0&&u(f[0].value),t)try{await c(t)}catch(x){console.error("Failed to save template after removing channel:",x)}},[n,i,r,s,u,l,t,c]),y=af(()=>[...r,...g],[r,g]);return{enabledChannels:r,disabledChannels:g,channel:s,channelOptions:y,setChannel:u,addChannel:b,removeChannel:h}},"useChannels");import{Fragment as ov,jsx as it,jsxs as Fr}from"react/jsx-runtime";var lo=a(({hidePublish:e=!1,channels:t,routing:r})=>{let o=rv(null),n=Qa(pt),i=Qa(ge),s=Qa(re),{publishTemplate:u,isTemplatePublishing:l}=Wr(),[d,c]=Qy(Zo),p=ev(br),m=Qa(br),{enabledChannels:g,disabledChannels:b,channel:h,setChannel:y,addChannel:T,removeChannel:N}=Mc({channels:t,routing:r});tv(()=>{n===!0&&c(null)},[n,c]);let v=yi(()=>{m&&p(!1),u()},[u,m,p]),f=yi(L=>{m&&p(!1),y(L)},[m,p,y]),x=yi(L=>{m&&p(!1),T(L)},[m,p,T]),C=yi(L=>{m&&p(!1),N(L)},[m,p,N]),B=yi(()=>{m&&p(!1)},[m,p]);return Fr("div",{className:"courier-flex courier-justify-between courier-w-full courier-h-full courier-self-stretch",ref:o,onClick:B,children:[Fr("div",{className:"courier-flex courier-items-center courier-gap-2 courier-flex-grow courier-self-stretch",children:[it(Oi,{value:h,onValueChange:f,className:"courier-h-full",ref:o,children:it(Fn,{className:"courier-grid courier-w-full courier-border-none courier-h-full !courier-p-0",style:{gridTemplateColumns:`repeat(${Qo.length}, fit-content(100%))`},children:g.map(L=>Fr(Jo,{value:L.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:[L.label,L.value===h&&g.length>1&&Fr(du,{children:[it(pu,{asChild:!0,children:it("div",{className:"courier-pl-2",children:it(Vn,{color:"#A3A3A3"})})}),Fr(Cs,{ref:o,children:[it(xs,{children:it(Yy,{children:"Are you sure you want to delete this channel?"})}),Fr(Ts,{children:[it(Ps,{asChild:!0,children:it(Pe,{buttonSize:"small",variant:"outline",children:"Cancel"})}),it(ws,{asChild:!0,children:it(Pe,{buttonSize:"small",variant:"primary",onClick:()=>C(L.value),children:"Delete"})})]})]})]})]},L.value))})}),b.length>0&&Fr(ov,{children:[it(Ls,{orientation:"vertical",className:"!courier-h-5"}),Fr(Bi,{children:[it(Hi,{asChild:!0,children:it(Pe,{variant:"link",children:"+ Add channel"})}),it(Sn,{portalProps:{container:o.current},children:b.map(L=>Fr(Rn,{onClick:()=>x(L.value),children:[L.icon,L.label]},L.value))})]})]})]}),Fr("div",{className:"courier-w-64 courier-pl-4 courier-flex courier-justify-end courier-items-center courier-gap-2",children:[n!==null&&it(jn,{isLoading:!!i,isSaving:!!n,isError:!!s}),!e&&i!==null&&it(Pe,{variant:"primary",buttonSize:"small",disabled:l===!0||n===!0||d!==null,onClick:v,children:l?"Publishing...":"Publish changes"})]})]})},"Channels");import{SortableContext as lz}from"@dnd-kit/sortable";import{useCallback as nv,useEffect as iv,useRef as es,useState as av}from"react";function vi({onSave:e,debounceMs:t=200,enabled:r=!0,onError:o,initialContent:n}){let[i,s]=av(!1),u=es(null),l=es(),d=es(0),c=es();iv(()=>{n&&(l.current=JSON.stringify(n))},[n]);let p=nv(async m=>{if(!r)return;u.current=m,c.current&&(clearTimeout(c.current),c.current=void 0);let g=a(async()=>{let T=u.current;if(u.current=null,!!T){try{let N=JSON.stringify(T);if(N===l.current)return;s(!0),l.current=N,d.current=Date.now(),await e(T)}catch(N){o==null||o(N),s(!1);return}s(!1),u.current&&p(u.current)}},"processPendingContent");if(i)return;let h=Date.now()-d.current,y=Math.max(0,t-h);c.current=setTimeout(()=>{c.current=void 0,g()},y)},[t,r,i,o,e]);return{handleAutoSave:p,isSaving:i}}a(vi,"useAutoSave");import{useAtom as xi,useAtomValue as En,useSetAtom as Ic}from"jotai";import{memo as Iv,useCallback as Tf,useEffect as Yt,useRef as ns,useState as Sv}from"react";import{useAtom as hf,useAtomValue as Lc,useSetAtom as bf}from"jotai";import{forwardRef as Nv,memo as Av,useCallback as yf,useEffect as kn,useRef as vf}from"react";import{z as It}from"zod";var sf=It.object({headerStyle:It.enum(["plain","border"]),isUnsubscribe:It.boolean().optional(),isPreferences:It.boolean().optional(),link:It.string().optional(),brandColor:It.string(),textColor:It.string(),subtleColor:It.string(),logo:It.string().optional(),facebookLink:It.string().optional(),linkedinLink:It.string().optional(),instagramLink:It.string().optional(),mediumLink:It.string().optional(),xLink:It.string().optional()}),Pt={headerStyle:"plain",isUnsubscribe:!1,isPreferences:!1,link:"",brandColor:"#000000",textColor:"#9CA3AF",subtleColor:"#737373",logo:"",facebookLink:"",linkedinLink:"",instagramLink:"",mediumLink:"",xLink:""};var sv=a(e=>{switch(e.type){case"bold":return"**";case"italic":return"*";case"strike":return"~";case"underline":return"+";default:return""}},"markToMD"),Ci=a(e=>{var t,r,o,n,i,s,u,l,d,c,p,m,g,b;switch(e.type){case"variable":return`{{${(t=e.attrs)==null?void 0:t.id}}}`;case"text":{let h=e.text||"";if((r=e.marks)!=null&&r.length){let T=e.marks.map(sv).filter(Boolean);h=T.join("")+h+T.reverse().join("")}let y=(o=e.marks)==null?void 0:o.find(T=>T.type==="link");return y&&(h=`[${h}](${(n=y.attrs)==null?void 0:n.href})`),h}case"hardBreak":return`
194
+ `;case"paragraph":return(((i=e.content)==null?void 0:i.map(Ci).join(""))||"")+`
195
195
 
196
- `;case"heading":{let b=((l=e.attrs)==null?void 0:l.level)||1,y="#".repeat(b)+" ",w=((c=e.content)==null?void 0:c.map(gi).join(""))||"";return y+w+`
196
+ `;case"heading":{let h=((s=e.attrs)==null?void 0:s.level)||1,y="#".repeat(h)+" ",T=((u=e.content)==null?void 0:u.map(Ci).join(""))||"";return y+T+`
197
197
 
198
- `}case"blockquote":return(((a=e.content)==null?void 0:a.map(gi).join(""))||"").split(`
198
+ `}case"blockquote":return(((l=e.content)==null?void 0:l.map(Ci).join(""))||"").split(`
199
199
  `).map(y=>`> ${y}`).join(`
200
200
  `)+`
201
201
 
202
- `;case"imageBlock":{let b=((u=e.attrs)==null?void 0:u.alt)||"",y=((d=e.attrs)==null?void 0:d.sourcePath)||"",w=(p=e.attrs)==null?void 0:p.link,N=`![${b}](${y})`;return w?`[${N}](${w})
202
+ `;case"imageBlock":{let h=((d=e.attrs)==null?void 0:d.alt)||"",y=((c=e.attrs)==null?void 0:c.sourcePath)||"",T=(p=e.attrs)==null?void 0:p.link,N=`![${h}](${y})`;return T?`[${N}](${T})
203
203
 
204
204
  `:N+`
205
205
 
206
206
  `}case"divider":return`---
207
207
 
208
- `;case"button":{let b=((f=e.attrs)==null?void 0:f.label)||"",y=((h=e.attrs)==null?void 0:h.link)||"#";return`[${b}](${y})
208
+ `;case"button":{let h=((m=e.attrs)==null?void 0:m.label)||"",y=((g=e.attrs)==null?void 0:g.link)||"#";return`[${h}](${y})
209
209
 
210
- `}default:return((g=e.content)==null?void 0:g.map(gi).join(""))||""}},"convertNodeToMarkdown");function Oa(e){return e.content?e.content.map(gi).join("").trim():""}s(Oa,"convertTiptapToMarkdown");import{useAtom as Bm,useAtomValue as vn,useSetAtom as by}from"jotai";import{forwardRef as yy,memo as vy,useCallback as za}from"react";import{forwardRef as ry}from"react";import{jsx as oy}from"react/jsx-runtime";var Mm=ry(({children:e},t)=>oy("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 Wa=s((e,t)=>new Promise(r=>{let o=new FileReader;o.onload=n=>{var l;let i=new Image;i.onload=()=>{var p;let c,a;i.width>i.height?(c=Math.min(t,i.width),a=Math.round(i.height/i.width*c)):(a=Math.min(t,i.height),c=Math.round(i.width/i.height*a));let u=document.createElement("canvas");u.width=c,u.height=a;let d=u.getContext("2d");if(d){d.imageSmoothingEnabled=!0,d.imageSmoothingQuality="high",d.drawImage(i,0,0,c,a);let f=.8,h=u.toDataURL(e.type||"image/jpeg",f),g=0,b=5;for(;h.length>512e3&&g<b;)g++,f-=.1,f<.3&&(f=.3),h=u.toDataURL(e.type||"image/jpeg",f);r({dataUrl:h,width:c,height:a})}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 Vo,useRef as ny,useState as iy}from"react";import{jsx as lc,jsxs as ay}from"react/jsx-runtime";var Am=s(({onFileSelect:e})=>{let[t,r]=iy(!1),o=ny(null),n=Vo(p=>{p.preventDefault(),p.stopPropagation(),p.dataTransfer.types.includes("Files")&&Array.from(p.dataTransfer.items).some(g=>g.type.startsWith("image/"))&&(r(!0),p.dataTransfer.dropEffect="copy")},[]),i=Vo(p=>{p.preventDefault(),p.stopPropagation(),r(!1)},[]),l=Vo(p=>{p.preventDefault(),p.stopPropagation(),p.dataTransfer.types.includes("Files")&&Array.from(p.dataTransfer.items).some(g=>g.type.startsWith("image/"))&&r(!0)},[]),c=Vo(async p=>{try{let{dataUrl:f}=await Wa(p,800);e==null||e(f),o.current&&(o.current.value="")}catch(f){console.error("Error processing image:",f),o.current&&(o.current.value="")}},[e]),a=Vo(p=>{p.preventDefault(),p.stopPropagation(),r(!1);let h=Array.from(p.dataTransfer.files).find(g=>g.type.startsWith("image/"));h&&c(h)},[c]),u=Vo(p=>{var h;let f=(h=p.target.files)==null?void 0:h[0];f&&c(f)},[c]),d=Vo(p=>{var f;p.preventDefault(),p.stopPropagation(),(f=o.current)==null||f.click()},[]);return ay("div",{className:M("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:a,style:{pointerEvents:"all"},children:[lc("span",{className:"courier-text-sm courier-pointer-events-none",children:"Drag and drop logo, or"}),lc("button",{className:"courier-underline courier-font-medium courier-text-sm",onClick:d,type:"button",children:"Browse"}),lc("input",{ref:o,type:"file",accept:"image/*",className:"courier-hidden",onChange:u},"logo-input")]})},"LogoUploader");import{zodResolver as sy}from"@hookform/resolvers/zod";import{useAtom as ly,useAtomValue as cy,useSetAtom as uy}from"jotai";import{ArrowUp as dy}from"lucide-react";import{memo as py,useCallback as Im,useEffect as my,useMemo as Lm,useRef as fy}from"react";import{useForm as gy}from"react-hook-form";import{jsx as j,jsxs as Et}from"react/jsx-runtime";var Rm=s(({isActive:e,onClick:t,value:r})=>j("div",{className:M("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:j("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"&&j("div",{className:"courier-w-full courier-bg-[#000000] courier-h-1"})})}),"HeaderStyle"),hy=s(()=>{let[e,t]=ly(br),r=uy(er),o=cy(Ot),n=fy(null),i=gy({resolver:sy(Nm),defaultValues:{...gt,...e},mode:"onChange"});my(()=>{e&&i.reset(e)},[e,i]);let l=Im(()=>{t(i.getValues())},[i,t]),c=Im(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(g=>{var y;return g.type!=="paragraph"?!0:!((y=g.content)==null?void 0:y.some(w=>{var N;return w.type==="text"&&((N=w.marks)==null?void 0:N.some(v=>{var m;return v.type==="link"&&((m=v.attrs)==null?void 0:m.href)==="{{urls.preferences}}"}))}))}))||[];o.chain().focus().setContent({type:"doc",content:h}).run()}r(Oa(o.getJSON()))}},[o,r]),a=Lm(()=>{var d,p;return((p=(d=o==null?void 0:o.extensionManager.extensions.find(f=>f.name==="variableSuggestion"))==null?void 0:d.options)==null?void 0:p.variables)||{}},[o]),u=Lm(()=>tr(a),[a]);return j(at,{...i,children:j("form",{onChange:()=>l(),children:Et("div",{className:"courier-pb-6",children:[j("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Header style"}),j(Z,{control:i.control,name:"headerStyle",render:({field:d})=>Et(U,{className:"courier-mb-4",children:[j($,{children:Et("div",{className:"courier-w-full courier-flex courier-flex-row courier-gap-3",children:[j(Rm,{isActive:d.value==="plain",onClick:()=>{d.onChange("plain"),t({...i.getValues(),headerStyle:"plain"})},value:"plain"}),j(Rm,{isActive:d.value==="border",onClick:()=>{d.onChange("border"),t({...i.getValues(),headerStyle:"border"})},value:"border"})]})}),j(K,{})]})}),j(fe,{className:"courier-mb-4"}),j("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Logo"}),Et("div",{className:"courier-flex courier-flex-row courier-gap-3 courier-mb-3",children:[i.getValues().logo?j(Te,{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"}):Et(Te,{onClick:d=>{d.preventDefault(),n.current&&(n.current.value="",n.current.click())},className:"courier-w-full",variant:"outline",type:"button",children:[j(dy,{strokeWidth:1.25,className:"courier-w-4 courier-h-4 courier-mr-2 courier-text-foreground"}),"Upload logo"]}),j("input",{ref:n,type:"file",accept:"image/*",className:"courier-hidden",onChange:async d=>{var f;let p=(f=d.target.files)==null?void 0:f[0];if(p)try{let{dataUrl:h}=await Wa(p,800),g=i.getValues();g.logo=h,i.reset(g),t({...g})}catch(h){console.error("Error processing image:",h)}n.current&&(n.current.value="")}})]}),j(Z,{control:i.control,name:"link",render:({field:d})=>Et(U,{className:"courier-mb-3",children:[j($,{children:j(Lt,{as:"Textarea",placeholder:"Link",...d,variables:u,onChange:p=>{d.onChange(p),l()}})}),j(K,{})]})}),j(fe,{className:"courier-mb-4"}),j("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Brand color"}),j(Z,{control:i.control,name:"brandColor",render:({field:d})=>Et(U,{className:"courier-mb-4",children:[j($,{children:j(Ue,{...d,defaultValue:d.value,onChange:p=>{d.onChange(p),l()}})}),j(K,{})]})}),j(fe,{className:"courier-mb-4"}),j("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Footer links"}),Et("div",{className:"courier-flex courier-flex-col courier-gap-3 courier-mb-3",children:[j(Z,{control:i.control,name:"facebookLink",render:({field:d})=>Et(U,{children:[j($,{children:j(se,{startAdornment:j(Dn,{}),placeholder:"facebook.com/username",...d,autoFocus:!0})}),j(K,{})]})}),j(Z,{control:i.control,name:"linkedinLink",render:({field:d})=>Et(U,{children:[j($,{children:j(se,{startAdornment:j(Vn,{}),placeholder:"linkedin.com/username",...d})}),j(K,{})]})}),j(Z,{control:i.control,name:"instagramLink",render:({field:d})=>Et(U,{children:[j($,{children:j(se,{startAdornment:j(Fn,{}),placeholder:"instagram.com/username",...d})}),j(K,{})]})}),j(Z,{control:i.control,name:"mediumLink",render:({field:d})=>Et(U,{children:[j($,{children:j(se,{startAdornment:j(On,{}),placeholder:"medium.com/username",...d})}),j(K,{})]})}),j(Z,{control:i.control,name:"xLink",render:({field:d})=>Et(U,{children:[j($,{children:j(se,{startAdornment:j(Un,{}),placeholder:"x.com/username",...d})}),j(K,{})]})})]}),j(fe,{className:"courier-mb-4"}),j("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Footer actions"}),j(Z,{control:i.control,name:"isPreferences",render:({field:d})=>Et(U,{className:"courier-flex courier-flex-row courier-items-center courier-gap-2 courier-mb-4",children:[j($,{children:j(Zo,{checked:d.value,onCheckedChange:p=>{i.setValue("isPreferences",p),d.onChange(p),c(p);let f={...i.getValues(),isPreferences:p};t(f)}})}),j(Wt,{className:"!courier-m-0",children:"Manage Preferences"}),j(K,{})]})})]})})})},"SideBarComponent"),Sm=py(hy);import{Fragment as Cy,jsx as dt,jsxs as xn}from"react/jsx-runtime";var xy=yy(({hidePublish:e=!1,templateEditor:t,variables:r},o)=>{var m,x,k,B,R,C,E,P;let n=by(Xo),{publishBrand:i}=Nn(),l=vn(ze),c=vn(vt),a=vn(it),u=vn(he),d=vn(ee),p=vn(Ot),[f,h]=Bm(br),[g,b]=Bm(er),y=za(()=>{i()},[i]),w=za(({editor:T})=>{b(Oa(T.getJSON()))},[b]),N=za(T=>{h(I=>I?{...I,logo:T}:{...gt,logo:T})},[h]),v=za(()=>{n("template")},[n]);return xn(Cy,{children:[dt("div",{className:"courier-z-30 courier-w-full courier-h-12",children:xn(Mm,{children:[dt("div",{className:"courier-text-sm courier-font-medium",children:"Brand theme"}),xn("div",{className:"courier-flex courier-gap-2 courier-items-center",children:[a!==null&&dt($n,{isLoading:!!u,isSaving:!!a,isError:!!d}),t&&dt(Te,{variant:"outline",buttonSize:"small",onClick:v,disabled:c===!0||a===!0,children:"Back"}),!e&&u!==null&&dt(Te,{variant:"primary",buttonSize:"small",disabled:!((x=(m=l==null?void 0:l.data)==null?void 0:m.tenant)!=null&&x.brand)||c===!0||a!==!1,onClick:y,children:c?"Publishing...":"Publish changes"})]})]})}),xn("div",{className:"courier-flex courier-flex-1 courier-flex-row courier-overflow-hidden",children:[dt("div",{className:"courier-flex courier-flex-col courier-flex-1",children:xn("div",{className:"courier-editor-container",ref:o,children:[dt("div",{className:"courier-mb-3 courier-max-w-2xl courier-self-center courier-w-full",children:"Header"}),xn("div",{className:M("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",(f==null?void 0:f.headerStyle)==="border"&&"courier-pt-6"),children:[(f==null?void 0:f.headerStyle)==="border"&&dt("div",{className:"courier-absolute courier-top-0 courier-left-0 courier-right-0 courier-h-2",style:{backgroundColor:f.brandColor}}),f!=null&&f.logo?dt("img",{src:f.logo,alt:"Brand logo",className:"courier-w-auto courier-max-w-36 courier-object-contain courier-cursor-default"}):dt(Am,{onFileSelect:N})]}),dt("div",{className:"courier-mb-3 courier-max-w-2xl courier-self-center courier-w-full",children:"Footer"}),dt("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:dt(ci,{value:g!=null?g:(P=(E=(C=(R=(B=(k=l==null?void 0:l.data)==null?void 0:k.tenant)==null?void 0:B.brand)==null?void 0:R.settings)==null?void 0:C.email)==null?void 0:E.footer)==null?void 0:P.markdown,variables:r,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,onUpdate:w})})]})}),dt("div",{className:"courier-editor-sidebar courier-opacity-100 courier-translate-x-0 courier-w-64 courier-flex-shrink-0",children:dt("div",{className:"courier-p-4 courier-h-full",children:p&&dt(Sm,{})})})]})]})}),Hm=vy(xy);import{jsx as Wm}from"react/jsx-runtime";var Py=Ty(({hidePublish:e=!1,autoSaveDebounce:t=200,autoSave:r=!0,theme:o,...n},i)=>{let l=uc(he),c=Om(!0),a=uc(nt),{getTemplate:u,saveBrand:d}=Nn(),[p,f]=Dm(ze),h=Fm(er),g=uc(er),[b,y]=Dm(br),w=Om(!1),N=Fm(ee);Cn(()=>{var k,B;p&&a!==((B=(k=p==null?void 0:p.data)==null?void 0:k.tenant)==null?void 0:B.tenantId)&&(f(null),h(null),c.current=!1)},[p,a,f,h]);let v=Vm(async k=>{await d(k)},[d]),m=Vm(()=>{N(Jt("Error saving theme"))},[N]),{handleAutoSave:x}=fi({onSave:v,enabled:l!==null&&r&&g!==null,debounceMs:t,onError:m});return Cn(()=>{!a||l||p&&l===!1||u()},[a,u,l,p]),Cn(()=>{g&&setTimeout(()=>{w.current=!0},500)},[g]),Cn(()=>{if(!w.current||!b)return;let k={colors:{primary:b==null?void 0:b.brandColor,secondary:b==null?void 0:b.textColor,tertiary:b==null?void 0:b.subtleColor},email:{header:{barColor:(b==null?void 0:b.headerStyle)==="border"?b==null?void 0:b.brandColor:"",logo:{href:b==null?void 0:b.link,image:b==null?void 0:b.logo}},footer:{markdown:g!=null?g:void 0,social:{facebook:{url:b==null?void 0:b.facebookLink},instagram:{url:b==null?void 0:b.instagramLink},linkedin:{url:b==null?void 0:b.linkedinLink},medium:{url:b==null?void 0:b.mediumLink},twitter:{url:b==null?void 0:b.xLink}}}}};x(k)},[b,g,x]),Cn(()=>{l||(c.current=!1)},[l]),Cn(()=>{var k,B,R,C,E,P,T,I,H,V,D,z,X,G,ye,Ne,de,Ce,O,oe,ue,Me,Se,ht,Ge,Fe,St,ot,Bt,Ht,Nt,Ke,Dt,Ft,Je,Xe,L,Q;if(!b){let F=(R=(B=(k=p==null?void 0:p.data)==null?void 0:k.tenant)==null?void 0:B.brand)==null?void 0:R.settings,ie=(T=g==null?void 0:g.split(`
211
- `))!=null?T:(P=(E=(C=F==null?void 0:F.email)==null?void 0:C.footer)==null?void 0:E.markdown)==null?void 0:P.split(`
212
- `),te=ie==null?void 0:ie.find(me=>me.includes("{{urls.preferences}}"));y({brandColor:((I=F==null?void 0:F.colors)==null?void 0:I.primary)||gt.brandColor,textColor:((H=F==null?void 0:F.colors)==null?void 0:H.secondary)||gt.textColor,subtleColor:((V=F==null?void 0:F.colors)==null?void 0:V.tertiary)||gt.subtleColor,headerStyle:(z=(D=F==null?void 0:F.email)==null?void 0:D.header)!=null&&z.barColor?"border":"plain",logo:((ye=(G=(X=F==null?void 0:F.email)==null?void 0:X.header)==null?void 0:G.logo)==null?void 0:ye.image)||gt.logo,link:((Ce=(de=(Ne=F==null?void 0:F.email)==null?void 0:Ne.header)==null?void 0:de.logo)==null?void 0:Ce.href)||gt.link,facebookLink:((Me=(ue=(oe=(O=F==null?void 0:F.email)==null?void 0:O.footer)==null?void 0:oe.social)==null?void 0:ue.facebook)==null?void 0:Me.url)||gt.facebookLink,linkedinLink:((Fe=(Ge=(ht=(Se=F==null?void 0:F.email)==null?void 0:Se.footer)==null?void 0:ht.social)==null?void 0:Ge.linkedin)==null?void 0:Fe.url)||gt.linkedinLink,instagramLink:((Ht=(Bt=(ot=(St=F==null?void 0:F.email)==null?void 0:St.footer)==null?void 0:ot.social)==null?void 0:Bt.instagram)==null?void 0:Ht.url)||gt.instagramLink,mediumLink:((Ft=(Dt=(Ke=(Nt=F==null?void 0:F.email)==null?void 0:Nt.footer)==null?void 0:Ke.social)==null?void 0:Dt.medium)==null?void 0:Ft.url)||gt.mediumLink,xLink:((Q=(L=(Xe=(Je=F==null?void 0:F.email)==null?void 0:Je.footer)==null?void 0:Xe.social)==null?void 0:L.twitter)==null?void 0:Q.url)||gt.xLink,isPreferences:!!te})}},[p,y,g,b]),Wm(yr,{theme:o,isLoading:!!(l&&c.current),children:Wm(Hm,{ref:i,hidePublish:e,...n})})}),zm=wy(Py);import{jsx as bi}from"react/jsx-runtime";var $m=s((e,t)=>{if(e!=null&&e.channels&&e.channels.length>0){let r=e.channels.filter(o=>typeof o=="string");if(r.length>0)return r}return t!=null?t:["email","sms","push","inbox"]},"resolveChannels"),My=s(({theme:e,value:t=null,onChange:r,variables:o,hidePublish:n=!1,autoSave:i=!0,autoSaveDebounce:l=300,brandEditor:c=!1,brandProps:a,channels:u,routing:d})=>{let p=Tn(he),f=Tn(vt),h=Tn(ee),[g,b]=hi(ze),y=Tn(mr),w=Tn(nt),[N,v]=hi(co),{getTemplate:m,saveTemplate:x,setTemplateError:k}=Br(),B=Tn(Xo),R=Ey(!1),[C,E]=hi(be),[P,T]=hi(Mt),I=dc(er),H=dc(br),[V,D]=hi(Hi),z=dc(he),X=$m(d,u),[G,ye]=Ny(X);Gt(()=>{let O=$m(d,u);ye(O)},[d,u]),Gt(()=>{G!=null&&G.length&&D(G[0])},[G,D]),Gt(()=>{var oe;if(p||!(C!=null&&C.elements))return;let O=C.elements.filter(ue=>ue.type==="channel").map(ue=>ue.channel);if(!O.includes(V)){let ue=(oe=d==null?void 0:d.channels)==null?void 0:oe.find(Me=>O.includes(Me));!ue&&O.length>0&&(ue=O[0]),ue&&D(ue)}},[C,V,D,d==null?void 0:d.channels,p]),Gt(()=>{var oe;let O=(oe=g==null?void 0:g.data)==null?void 0:oe.tenant;y&&O&&!(O!=null&&O.notification)&&p===!1&&(G!=null&&G.length)&&D(G[0])},[y,g,p,G,D]),Gt(()=>{var oe,ue;let O=(oe=g==null?void 0:g.data)==null?void 0:oe.tenant;y&&O&&(O!=null&&O.notification)&&(y!==((ue=O==null?void 0:O.notification)==null?void 0:ue.notificationId)||w!==(O==null?void 0:O.tenantId))&&(T(!0),R.current=!1,b(null),E(null),I(null),H(null),v(null),D((G==null?void 0:G[0])||"email"))},[G,y,R,g,w,E,v,b,I,H,D,T]);let Ne=Um(async O=>{let oe=O==null?void 0:O._capturedTemplateId,ue=Kt.get(mr);oe&&oe!==ue||await x(d)},[x,d]),de=Um(()=>{k("Error saving template")},[k]),{handleAutoSave:Ce}=fi({onSave:Ne,debounceMs:l,enabled:p===!1&&i,onError:de});if(Gt(()=>{!y||!w||p||g&&p===!1||h||m({includeBrand:c})},[y,w,c,m,p,g,h]),Gt(()=>{if(!(!t||i&&p!==!1)&&JSON.stringify(Ie(xt(C)))!==JSON.stringify(Ie(xt(t))))if(E(t),!i)z(!1);else{let O={...t,_capturedTemplateId:y};Ce(O)}},[i,t,C,E,z,Ce,y,p]),Gt(()=>{var oe,ue,Me,Se;if(p!==!1)return;let O=t||((Se=(Me=(ue=(oe=g==null?void 0:g.data)==null?void 0:oe.tenant)==null?void 0:ue.notification)==null?void 0:Me.data)==null?void 0:Se.content);E(O),setTimeout(()=>{T(!1)},100)},[g,E,p,T,y,t]),Gt(()=>{f===!0&&(R.current=!1)},[f]),Gt(()=>{!C||p!==!1||setTimeout(()=>{R.current=!0},1e3)},[C,V,p]),Gt(()=>{R.current=!1},[V]),Gt(()=>{if(!R.current||!C||p!==!1||P)return;let O={...C,_capturedTemplateId:y};r&&(R.current=!1,r(C)),Ce(O)},[C,Ce,p,P,y,r]),c&&B==="brand")return bi(zm,{hidePublish:n,autoSave:i,templateEditor:!0,variables:o,...a});if(B==="template"&&V==="email")return bi(om,{variables:o,theme:e,isLoading:!!p,hidePublish:n,channels:G,brandEditor:c,routing:d});if(B==="template"&&V==="sms")return bi(Tm,{theme:e,hidePublish:n,channels:G,routing:d});if(B==="template"&&V==="push")return bi(bm,{theme:e,hidePublish:n,channels:G,routing:d});if(B==="template"&&V==="inbox")return bi(dm,{theme:e,hidePublish:n,channels:G,routing:d})},"TemplateEditorComponent"),LV=ky(My);var DV=xa,FV=Da,VV=Ia,OV=Ma;export{zm as BrandEditor,ci as BrandFooter,Xm as BrandProvider,$l as ChannelRootContainer,_l as EditorSidebar,DV as EmailChannel,Ol as EmailEditor,tm as EmailEditorContainer,rm as EmailEditorMain,zl as EmailSideBar,Ul as EmailSideBarItemDetails,Ya as ErrorBoundary,OV as InboxChannel,jl as InboxEditor,Gl as InboxSideBar,Fl as PreviewPanel,VV as PushChannel,Ql as PushEditor,FV as SMSChannel,nc as SMSEditor,qV as SortableContext,LV as TemplateEditor,df as TemplateProvider,$n as TemplateStatus,Bl as TextMenu,bt as apiUrlAtom,vc as brandApplyAtom,M as cn,$o as convertLegacyError,Jt as createCustomError,Kt as editorStore,$y as extractErrorMessage,vi as getTemplateOverrideAtom,Uy as isRetryableError,he as isTemplateLoadingAtom,vt as isTemplatePublishingAtom,it as isTemplateSavingAtom,xi as saveTemplateOverrideAtom,ze as templateDataAtom,ee as templateErrorAtom,mr as templateIdAtom,nt as tenantIdAtom,yt as tokenAtom,fi as useAutoSave,Nn as useBrandActions,ac as useChannels,Mn as useImageUpload,Br as useTemplateActions};
210
+ `}default:return((b=e.content)==null?void 0:b.map(Ci).join(""))||""}},"convertNodeToMarkdown");function ts(e){return e.content?e.content.map(Ci).join("").trim():""}a(ts,"convertTiptapToMarkdown");import{useAtom as ff,useAtomValue as wn,useSetAtom as wv}from"jotai";import{forwardRef as Pv,memo as kv,useCallback as os}from"react";import{forwardRef as lv}from"react";import{jsx as cv}from"react/jsx-runtime";var lf=lv(({children:e},t)=>cv("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 rs=a((e,t)=>new Promise(r=>{let o=new FileReader;o.onload=n=>{var s;let i=new Image;i.onload=()=>{var p;let u,l;i.width>i.height?(u=Math.min(t,i.width),l=Math.round(i.height/i.width*u)):(l=Math.min(t,i.height),u=Math.round(i.width/i.height*l));let d=document.createElement("canvas");d.width=u,d.height=l;let c=d.getContext("2d");if(c){c.imageSmoothingEnabled=!0,c.imageSmoothingQuality="high",c.drawImage(i,0,0,u,l);let m=.8,g=d.toDataURL(e.type||"image/jpeg",m),b=0,h=5;for(;g.length>512e3&&b<h;)b++,m-=.1,m<.3&&(m=.3),g=d.toDataURL(e.type||"image/jpeg",m);r({dataUrl:g,width:u,height:l})}else r({dataUrl:(p=n.target)==null?void 0:p.result,width:i.width,height:i.height})},i.src=(s=n.target)==null?void 0:s.result},o.readAsDataURL(e)}),"resizeImage");import{useCallback as $o,useRef as uv,useState as dv}from"react";import{jsx as Nc,jsxs as pv}from"react/jsx-runtime";var cf=a(({onFileSelect:e})=>{let[t,r]=dv(!1),o=uv(null),n=$o(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=$o(p=>{p.preventDefault(),p.stopPropagation(),r(!1)},[]),s=$o(p=>{p.preventDefault(),p.stopPropagation(),p.dataTransfer.types.includes("Files")&&Array.from(p.dataTransfer.items).some(b=>b.type.startsWith("image/"))&&r(!0)},[]),u=$o(async p=>{try{let{dataUrl:m}=await rs(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=$o(p=>{p.preventDefault(),p.stopPropagation(),r(!1);let g=Array.from(p.dataTransfer.files).find(b=>b.type.startsWith("image/"));g&&u(g)},[u]),d=$o(p=>{var g;let m=(g=p.target.files)==null?void 0:g[0];m&&u(m)},[u]),c=$o(p=>{var m;p.preventDefault(),p.stopPropagation(),(m=o.current)==null||m.click()},[]);return pv("div",{className:A("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:s,onDragLeave:i,onDrop:l,style:{pointerEvents:"all"},children:[Nc("span",{className:"courier-text-sm courier-pointer-events-none",children:"Drag and drop logo, or"}),Nc("button",{className:"courier-underline courier-font-medium courier-text-sm",onClick:c,type:"button",children:"Browse"}),Nc("input",{ref:o,type:"file",accept:"image/*",className:"courier-hidden",onChange:d},"logo-input")]})},"LogoUploader");import{zodResolver as mv}from"@hookform/resolvers/zod";import{useAtom as fv,useAtomValue as gv,useSetAtom as hv}from"jotai";import{ArrowUp as bv}from"lucide-react";import{memo as yv,useCallback as uf,useEffect as vv,useMemo as df,useRef as Cv}from"react";import{useForm as xv}from"react-hook-form";import{jsx as q,jsxs as St}from"react/jsx-runtime";var pf=a(({isActive:e,onClick:t,value:r})=>q("div",{className:A("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:q("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"&&q("div",{className:"courier-w-full courier-bg-[#000000] courier-h-1"})})}),"HeaderStyle"),Tv=a(()=>{let[e,t]=fv(xr),r=hv(or),o=gv(Ut),n=Cv(null),i=xv({resolver:mv(sf),defaultValues:{...Pt,...e},mode:"onChange"});vv(()=>{e&&i.reset(e)},[e,i]);let s=uf(()=>{t(i.getValues())},[i,t]),u=uf(c=>{var p;if(o){if(c){let g={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(g).run()}else{let g=((p=o.getJSON().content)==null?void 0:p.filter(b=>{var y;return b.type!=="paragraph"?!0:!((y=b.content)==null?void 0:y.some(T=>{var N;return T.type==="text"&&((N=T.marks)==null?void 0:N.some(v=>{var f;return v.type==="link"&&((f=v.attrs)==null?void 0:f.href)==="{{urls.preferences}}"}))}))}))||[];o.chain().focus().setContent({type:"doc",content:g}).run()}r(ts(o.getJSON()))}},[o,r]),l=df(()=>{var c,p;return((p=(c=o==null?void 0:o.extensionManager.extensions.find(m=>m.name==="variableSuggestion"))==null?void 0:c.options)==null?void 0:p.variables)||{}},[o]),d=df(()=>nr(l),[l]);return q(Ze,{...i,children:q("form",{onChange:()=>s(),children:St("div",{className:"courier-pb-6",children:[q("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Header style"}),q(U,{control:i.control,name:"headerStyle",render:({field:c})=>St(z,{className:"courier-mb-4",children:[q($,{children:St("div",{className:"courier-w-full courier-flex courier-flex-row courier-gap-3",children:[q(pf,{isActive:c.value==="plain",onClick:()=>{c.onChange("plain"),t({...i.getValues(),headerStyle:"plain"})},value:"plain"}),q(pf,{isActive:c.value==="border",onClick:()=>{c.onChange("border"),t({...i.getValues(),headerStyle:"border"})},value:"border"})]})}),q(_,{})]})}),q(fe,{className:"courier-mb-4"}),q("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Logo"}),St("div",{className:"courier-flex courier-flex-row courier-gap-3 courier-mb-3",children:[i.getValues().logo?q(Pe,{onClick:()=>{let c=i.getValues();c.logo="",i.reset(c),t({...c}),n.current&&(n.current.value=""),s()},className:"courier-w-full",variant:"outline",type:"button",children:"Remove logo"}):St(Pe,{onClick:c=>{c.preventDefault(),n.current&&(n.current.value="",n.current.click())},className:"courier-w-full",variant:"outline",type:"button",children:[q(bv,{strokeWidth:1.25,className:"courier-w-4 courier-h-4 courier-mr-2 courier-text-foreground"}),"Upload logo"]}),q("input",{ref:n,type:"file",accept:"image/*",className:"courier-hidden",onChange:async c=>{var m;let p=(m=c.target.files)==null?void 0:m[0];if(p)try{let{dataUrl:g}=await rs(p,800),b=i.getValues();b.logo=g,i.reset(b),t({...b})}catch(g){console.error("Error processing image:",g)}n.current&&(n.current.value="")}})]}),q(U,{control:i.control,name:"link",render:({field:c})=>St(z,{className:"courier-mb-3",children:[q($,{children:q(Vt,{as:"Textarea",placeholder:"Link",...c,variables:d,onChange:p=>{c.onChange(p),s()}})}),q(_,{})]})}),q(fe,{className:"courier-mb-4"}),q("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Brand color"}),q(U,{control:i.control,name:"brandColor",render:({field:c})=>St(z,{className:"courier-mb-4",children:[q($,{children:q(qe,{...c,defaultValue:c.value,onChange:p=>{c.onChange(p),s()}})}),q(_,{})]})}),q(fe,{className:"courier-mb-4"}),q("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Footer links"}),St("div",{className:"courier-flex courier-flex-col courier-gap-3 courier-mb-3",children:[q(U,{control:i.control,name:"facebookLink",render:({field:c})=>St(z,{children:[q($,{children:q(ae,{startAdornment:q(Wn,{}),placeholder:"facebook.com/username",...c,autoFocus:!0})}),q(_,{})]})}),q(U,{control:i.control,name:"linkedinLink",render:({field:c})=>St(z,{children:[q($,{children:q(ae,{startAdornment:q($n,{}),placeholder:"linkedin.com/username",...c})}),q(_,{})]})}),q(U,{control:i.control,name:"instagramLink",render:({field:c})=>St(z,{children:[q($,{children:q(ae,{startAdornment:q(zn,{}),placeholder:"instagram.com/username",...c})}),q(_,{})]})}),q(U,{control:i.control,name:"mediumLink",render:({field:c})=>St(z,{children:[q($,{children:q(ae,{startAdornment:q(Un,{}),placeholder:"medium.com/username",...c})}),q(_,{})]})}),q(U,{control:i.control,name:"xLink",render:({field:c})=>St(z,{children:[q($,{children:q(ae,{startAdornment:q(qn,{}),placeholder:"x.com/username",...c})}),q(_,{})]})})]}),q(fe,{className:"courier-mb-4"}),q("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Footer actions"}),q(U,{control:i.control,name:"isPreferences",render:({field:c})=>St(z,{className:"courier-flex courier-flex-row courier-items-center courier-gap-2 courier-mb-4",children:[q($,{children:q(Ko,{checked:c.value,onCheckedChange:p=>{i.setValue("isPreferences",p),c.onChange(p),u(p);let m={...i.getValues(),isPreferences:p};t(m)}})}),q(_t,{className:"!courier-m-0",children:"Manage Preferences"}),q(_,{})]})})]})})})},"SideBarComponent"),mf=yv(Tv);import{Fragment as Mv,jsx as bt,jsxs as Pn}from"react/jsx-runtime";var Ev=Pv(({hidePublish:e=!1,templateEditor:t,variables:r},o)=>{var f,x,C,B,L,k,E,w;let n=wv(en),{publishBrand:i}=Ln(),s=wn(_e),u=wn(Mt),l=wn(pt),d=wn(ge),c=wn(re),p=wn(Ut),[m,g]=ff(xr),[b,h]=ff(or),y=os(()=>{i()},[i]),T=os(({editor:P})=>{h(ts(P.getJSON()))},[h]),N=os(P=>{g(S=>S?{...S,logo:P}:{...Pt,logo:P})},[g]),v=os(()=>{n("template")},[n]);return Pn(Mv,{children:[bt("div",{className:"courier-z-30 courier-w-full courier-h-12",children:Pn(lf,{children:[bt("div",{className:"courier-text-sm courier-font-medium",children:"Brand theme"}),Pn("div",{className:"courier-flex courier-gap-2 courier-items-center",children:[l!==null&&bt(jn,{isLoading:!!d,isSaving:!!l,isError:!!c}),t&&bt(Pe,{variant:"outline",buttonSize:"small",onClick:v,disabled:u===!0||l===!0,children:"Back"}),!e&&d!==null&&bt(Pe,{variant:"primary",buttonSize:"small",disabled:!((x=(f=s==null?void 0:s.data)==null?void 0:f.tenant)!=null&&x.brand)||u===!0||l!==!1,onClick:y,children:u?"Publishing...":"Publish changes"})]})]})}),Pn("div",{className:"courier-flex courier-flex-1 courier-flex-row courier-overflow-hidden",children:[bt("div",{className:"courier-flex courier-flex-col courier-flex-1",children:Pn("div",{className:"courier-editor-container",ref:o,children:[bt("div",{className:"courier-mb-3 courier-max-w-2xl courier-self-center courier-w-full",children:"Header"}),Pn("div",{className:A("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"&&bt("div",{className:"courier-absolute courier-top-0 courier-left-0 courier-right-0 courier-h-2",style:{backgroundColor:m.brandColor}}),m!=null&&m.logo?bt("img",{src:m.logo,alt:"Brand logo",className:"courier-w-auto courier-max-w-36 courier-object-contain courier-cursor-default"}):bt(cf,{onFileSelect:N})]}),bt("div",{className:"courier-mb-3 courier-max-w-2xl courier-self-center courier-w-full",children:"Footer"}),bt("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:bt(mi,{value:b!=null?b:(w=(E=(k=(L=(B=(C=s==null?void 0:s.data)==null?void 0:C.tenant)==null?void 0:B.brand)==null?void 0:L.settings)==null?void 0:k.email)==null?void 0:E.footer)==null?void 0:w.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:T})})]})}),bt("div",{className:"courier-editor-sidebar courier-opacity-100 courier-translate-x-0 courier-w-64 courier-flex-shrink-0",children:bt("div",{className:"courier-p-4 courier-h-full",children:p&&bt(mf,{})})})]})]})}),gf=kv(Ev);import{jsx as Cf}from"react/jsx-runtime";var Lv=Nv(({hidePublish:e=!1,autoSaveDebounce:t=200,autoSave:r=!0,theme:o,...n},i)=>{let s=Lc(ge),u=vf(!0),l=Lc(dt),{getTemplate:d,saveBrand:c}=Ln(),[p,m]=hf(_e),g=bf(or),b=Lc(or),[h,y]=hf(xr),T=vf(!1),N=bf(re);kn(()=>{var C,B;p&&l!==((B=(C=p==null?void 0:p.data)==null?void 0:C.tenant)==null?void 0:B.tenantId)&&(m(null),g(null),u.current=!1)},[p,l,m,g]);let v=yf(async C=>{await c(C)},[c]),f=yf(()=>{N(Qt("Error saving theme"))},[N]),{handleAutoSave:x}=vi({onSave:v,enabled:s!==null&&r&&b!==null,debounceMs:t,onError:f});return kn(()=>{!l||s||p&&s===!1||d()},[l,d,s,p]),kn(()=>{b&&setTimeout(()=>{T.current=!0},500)},[b]),kn(()=>{if(!T.current||!h)return;let C={colors:{primary:h==null?void 0:h.brandColor,secondary:h==null?void 0:h.textColor,tertiary:h==null?void 0:h.subtleColor},email:{header:{barColor:(h==null?void 0:h.headerStyle)==="border"?h==null?void 0:h.brandColor:"",logo:{href:h==null?void 0:h.link,image:h==null?void 0:h.logo}},footer:{markdown:b!=null?b:void 0,social:{facebook:{url:h==null?void 0:h.facebookLink},instagram:{url:h==null?void 0:h.instagramLink},linkedin:{url:h==null?void 0:h.linkedinLink},medium:{url:h==null?void 0:h.mediumLink},twitter:{url:h==null?void 0:h.xLink}}}}};x(C)},[h,b,x]),kn(()=>{s||(u.current=!1)},[s]),kn(()=>{var C,B,L,k,E,w,P,S,H,V,D,F,G,Y,se,oe,ye,xe,we,Ee,Re,at,me,Q,ve,be,ze,st,yt,lt,Be,ct,vt,Wt,tt,ut,rt,Ct;if(!h){let ee=(L=(B=(C=p==null?void 0:p.data)==null?void 0:C.tenant)==null?void 0:B.brand)==null?void 0:L.settings,Rt=(P=b==null?void 0:b.split(`
211
+ `))!=null?P:(w=(E=(k=ee==null?void 0:ee.email)==null?void 0:k.footer)==null?void 0:E.markdown)==null?void 0:w.split(`
212
+ `),zt=Rt==null?void 0:Rt.find(I=>I.includes("{{urls.preferences}}"));y({brandColor:((S=ee==null?void 0:ee.colors)==null?void 0:S.primary)||Pt.brandColor,textColor:((H=ee==null?void 0:ee.colors)==null?void 0:H.secondary)||Pt.textColor,subtleColor:((V=ee==null?void 0:ee.colors)==null?void 0:V.tertiary)||Pt.subtleColor,headerStyle:(F=(D=ee==null?void 0:ee.email)==null?void 0:D.header)!=null&&F.barColor?"border":"plain",logo:((se=(Y=(G=ee==null?void 0:ee.email)==null?void 0:G.header)==null?void 0:Y.logo)==null?void 0:se.image)||Pt.logo,link:((xe=(ye=(oe=ee==null?void 0:ee.email)==null?void 0:oe.header)==null?void 0:ye.logo)==null?void 0:xe.href)||Pt.link,facebookLink:((at=(Re=(Ee=(we=ee==null?void 0:ee.email)==null?void 0:we.footer)==null?void 0:Ee.social)==null?void 0:Re.facebook)==null?void 0:at.url)||Pt.facebookLink,linkedinLink:((be=(ve=(Q=(me=ee==null?void 0:ee.email)==null?void 0:me.footer)==null?void 0:Q.social)==null?void 0:ve.linkedin)==null?void 0:be.url)||Pt.linkedinLink,instagramLink:((lt=(yt=(st=(ze=ee==null?void 0:ee.email)==null?void 0:ze.footer)==null?void 0:st.social)==null?void 0:yt.instagram)==null?void 0:lt.url)||Pt.instagramLink,mediumLink:((Wt=(vt=(ct=(Be=ee==null?void 0:ee.email)==null?void 0:Be.footer)==null?void 0:ct.social)==null?void 0:vt.medium)==null?void 0:Wt.url)||Pt.mediumLink,xLink:((Ct=(rt=(ut=(tt=ee==null?void 0:ee.email)==null?void 0:tt.footer)==null?void 0:ut.social)==null?void 0:rt.twitter)==null?void 0:Ct.url)||Pt.xLink,isPreferences:!!zt})}},[p,y,b,h]),Cf(Tr,{theme:o,isLoading:!!(s&&u.current),children:Cf(gf,{ref:i,hidePublish:e,...n})})}),xf=Av(Lv);import{jsx as Ti}from"react/jsx-runtime";var wf=a((e,t)=>{if(e!=null&&e.channels&&e.channels.length>0){let r=e.channels.filter(o=>typeof o=="string");if(r.length>0)return r}return t!=null?t:["email","sms","push","inbox"]},"resolveChannels"),Rv=a(({theme:e,value:t=null,onChange:r,variables:o,hidePublish:n=!1,autoSave:i=!0,autoSaveDebounce:s=300,brandEditor:u=!1,brandProps:l,channels:d,routing:c,...p})=>{let{store:m}=zr(),g=En(ge),b=En(Mt),h=En(re),[y,T]=xi(_e),N=En(hr),v=En(dt),[f,x]=xi(fo),{getTemplate:C,saveTemplate:B,setTemplateError:L}=Wr(),k=En(en),E=ns(!1),[w,P]=xi(he),[S,H]=xi(Bt),V=Ic(or),D=Ic(xr),[F,G]=xi(Zi),Y=Ic(ge),se=wf(c,d),[oe,ye]=Sv(se),xe=ns(JSON.stringify(se));Yt(()=>{let Q=wf(c,d),ve=JSON.stringify(Q);ve!==xe.current&&(ye(Q),xe.current=ve,Q.length&&!Q.includes(F)&&G(Q[0]))},[c,d,F,G]),Yt(()=>{var ve;if(g||!(w!=null&&w.elements))return;let Q=w.elements.filter(be=>be.type==="channel").map(be=>be.channel);if(!Q.includes(F)){let be=(ve=c==null?void 0:c.channels)==null?void 0:ve.find(ze=>Q.includes(ze));!be&&Q.length>0&&(be=Q[0]),be&&G(be)}},[w,F,G,c==null?void 0:c.channels,g]),Yt(()=>{var ve;let Q=(ve=y==null?void 0:y.data)==null?void 0:ve.tenant;N&&Q&&!(Q!=null&&Q.notification)&&g===!1&&(oe!=null&&oe.length)&&G(oe[0])},[N,y,g,oe,G]);let we=ns(null);Yt(()=>{we.current&&(we.current.templateId!==N||we.current.tenantId!==v)&&N&&v&&(H(!0),E.current=!1,T(null),P(null),V(null),D(null),x(null),G((oe==null?void 0:oe[0])||"email"),Y(null)),N&&v&&(we.current={templateId:N,tenantId:v})},[N,v,oe,H,T,P,V,D,x,G,Y]);let Ee=ns(c);Yt(()=>{Ee.current=c},[c]);let Re=Tf(async Q=>{let ve=Q==null?void 0:Q._capturedTemplateId,be=m.get(hr);ve&&ve!==be||await B(Ee.current)},[B,m]),at=Tf(()=>{L("Error saving template")},[L]),{handleAutoSave:me}=vi({onSave:Re,debounceMs:s,enabled:g===!1&&i,onError:at});if(Yt(()=>{!N||!v||g||y&&g===!1||h||C({includeBrand:u})},[N,v,u,C,g,y,h]),Yt(()=>{if(!(!t||i&&g!==!1)&&JSON.stringify(Ie(xt(w)))!==JSON.stringify(Ie(xt(t))))if(P(t),!i)Y(!1);else{let Q={...t,_capturedTemplateId:N};me(Q)}},[i,t,w,P,Y,me,N,g]),Yt(()=>{var be,ze,st,yt,lt,Be,ct;if(g!==!1)return;let Q=(st=(ze=(be=y==null?void 0:y.data)==null?void 0:be.tenant)==null?void 0:ze.notification)==null?void 0:st.notificationId;if(y&&Q&&Q!==N)return;let ve=t||((ct=(Be=(lt=(yt=y==null?void 0:y.data)==null?void 0:yt.tenant)==null?void 0:lt.notification)==null?void 0:Be.data)==null?void 0:ct.content);P(ve),setTimeout(()=>{H(!1)},100)},[y,P,g,H,N,t]),Yt(()=>{b===!0&&(E.current=!1)},[b]),Yt(()=>{!w||g!==!1||setTimeout(()=>{E.current=!0},1e3)},[w,F,g]),Yt(()=>{E.current=!1},[F]),Yt(()=>{if(!E.current||!w||g!==!1||S)return;let Q={...w,_capturedTemplateId:N};r&&(E.current=!1,r(w)),me(Q)},[w,me,g,S,N,r]),u&&k==="brand")return Ti(xf,{hidePublish:n,autoSave:i,templateEditor:!0,variables:o,...l});if(k==="template"&&F==="email")return Ti(Dm,{variables:o,theme:e,isLoading:!!g,hidePublish:n,channels:oe,brandEditor:u,routing:c,...p});if(k==="template"&&F==="sms")return Ti(tf,{variables:o,theme:e,hidePublish:n,channels:oe,routing:c,...p});if(k==="template"&&F==="push")return Ti(Jm,{variables:o,theme:e,hidePublish:n,channels:oe,routing:c,...p});if(k==="template"&&F==="inbox")return Ti(_m,{variables:o,theme:e,hidePublish:n,channels:oe,routing:c,...p})},"TemplateEditorComponent"),jW=Iv(Rv);var YW=Ra,QW=Xa,ez=Za,tz=Ua;export{xf as BrandEditor,mi as BrandFooter,jf as BrandProvider,uc as ChannelRootContainer,dc as EditorSidebar,YW as EmailChannel,ac as EmailEditor,Bm as EmailEditorContainer,Hm as EmailEditorMain,lc as EmailSideBar,cc as EmailSideBarItemDetails,gs as ErrorBoundary,tz as InboxChannel,fc as InboxEditor,gc as InboxSideBar,cl as MonacoCodeEditor,nc as PreviewPanel,ez as PushChannel,Cc as PushEditor,QW as SMSChannel,kc as SMSEditor,lz as SortableContext,jW as TemplateEditor,Of as TemplateProvider,jn as TemplateStatus,tc as TextMenu,Ht as ToggleGroup,kt as apiUrlAtom,_c as brandApplyAtom,A as cn,xt as convertElementalToTiptap,jo as convertLegacyError,Ie as convertTiptapToElemental,Qt as createCustomError,$v as extractErrorMessage,Pi as getTemplateOverrideAtom,zv as isRetryableError,ge as isTemplateLoadingAtom,Mt as isTemplatePublishingAtom,pt as isTemplateSavingAtom,ki as saveTemplateOverrideAtom,_e as templateDataAtom,re as templateErrorAtom,hr as templateIdAtom,dt as tenantIdAtom,Et as tokenAtom,vi as useAutoSave,Ln as useBrandActions,Mc as useChannels,In as useImageUpload,Wr as useTemplateActions,zr as useTemplateStore};
213
213
  //# sourceMappingURL=index.js.map