@trycourier/react-designer 0.3.0 → 0.4.0
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.
- package/README.md +114 -2
- package/dist/cjs/index.js +55 -55
- package/dist/cjs/index.js.map +4 -4
- package/dist/cjs/styles.css +34 -0
- package/dist/components/BrandEditor/Editor/Editor.d.ts +16 -1
- package/dist/components/TemplateEditor/Channels/Email/Email.d.ts +1 -1
- package/dist/components/TemplateEditor/Channels/Email/EmailEditor.d.ts +2 -1
- package/dist/components/TemplateEditor/Channels/Email/EmailLayout.d.ts +1 -1
- package/dist/components/TemplateEditor/Channels/Inbox/Inbox.d.ts +1 -1
- package/dist/components/TemplateEditor/Channels/Inbox/InboxLayout.d.ts +1 -1
- package/dist/components/TemplateEditor/Channels/MSTeams/MSTeams.d.ts +1 -1
- package/dist/components/TemplateEditor/Channels/MSTeams/MSTeamsLayout.d.ts +1 -1
- package/dist/components/TemplateEditor/Channels/Push/Push.d.ts +1 -1
- package/dist/components/TemplateEditor/Channels/Push/PushLayout.d.ts +1 -1
- package/dist/components/TemplateEditor/Channels/SMS/SMS.d.ts +1 -1
- package/dist/components/TemplateEditor/Channels/SMS/SMSLayout.d.ts +1 -1
- package/dist/components/TemplateEditor/Channels/Slack/Slack.d.ts +1 -1
- package/dist/components/TemplateEditor/Channels/Slack/SlackLayout.d.ts +1 -1
- package/dist/components/TemplateEditor/Channels/useChannels.d.ts +8 -0
- package/dist/components/TemplateEditor/TemplateEditor.d.ts +16 -1
- package/dist/components/TemplateEditor/index.d.ts +1 -1
- package/dist/components/TemplateEditor/store.d.ts +10 -0
- package/dist/components/extensions/Variable/Variable.d.ts +8 -4
- package/dist/components/extensions/Variable/Variable.types.d.ts +3 -14
- package/dist/components/extensions/Variable/VariableSuggestions.d.ts +7 -0
- package/dist/components/extensions/Variable/index.d.ts +1 -0
- package/dist/components/extensions/Variable/suggestion.d.ts +2 -0
- package/dist/components/extensions/extension-kit.d.ts +7 -2
- package/dist/components/ui/VariableEditor/VariableAutocomplete.d.ts +16 -0
- package/dist/esm/index.js +55 -55
- package/dist/esm/index.js.map +4 -4
- package/dist/esm/styles.css +34 -0
- package/dist/index.d.ts +1 -0
- package/dist/styles.css +34 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/validation.types.d.ts +53 -0
- package/package.json +1 -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
|
|
46
|
+
var nb=Object.create;var pc=Object.defineProperty;var ib=Object.getOwnPropertyDescriptor;var ab=Object.getOwnPropertyNames;var sb=Object.getPrototypeOf,lb=Object.prototype.hasOwnProperty;var a=(e,t)=>pc(e,"name",{value:t,configurable:!0});var fc=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var cb=(e,t,r,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of ab(t))!lb.call(e,n)&&n!==r&&pc(e,n,{get:()=>t[n],enumerable:!(o=ib(t,n))||o.enumerable});return e};var Ja=(e,t,r)=>(r=e!=null?nb(sb(e)):{},cb(t||!e||!e.__esModule?pc(r,"default",{value:e,enumerable:!0}):r,e));var Cu=fc(ks=>{"use strict";Object.defineProperty(ks,"__esModule",{value:!0});ks.bind=void 0;function X2(e,t){var r=t.type,o=t.listener,n=t.options;return e.addEventListener(r,o,n),a(function(){e.removeEventListener(r,o,n)},"unbind")}a(X2,"bind");ks.bind=X2});var Cf=fc(Zn=>{"use strict";var jn=Zn&&Zn.__assign||function(){return jn=Object.assign||function(e){for(var t,r=1,o=arguments.length;r<o;r++){t=arguments[r];for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])}return e},jn.apply(this,arguments)};Object.defineProperty(Zn,"__esModule",{value:!0});Zn.bindAll=void 0;var Y2=Cu();function vf(e){if(typeof e!="undefined")return typeof e=="boolean"?{capture:e}:e}a(vf,"toOptions");function Q2(e,t){if(t==null)return e;var r=jn(jn({},e),{options:jn(jn({},vf(t)),vf(e.options))});return r}a(Q2,"getBinding");function ey(e,t,r){var o=t.map(function(n){var i=Q2(n,r);return(0,Y2.bind)(e,i)});return a(function(){o.forEach(function(i){return i()})},"unbindAll")}a(ey,"bindAll");Zn.bindAll=ey});var la=fc(qn=>{"use strict";Object.defineProperty(qn,"__esModule",{value:!0});qn.bindAll=qn.bind=void 0;var ty=Cu();Object.defineProperty(qn,"bind",{enumerable:!0,get:function(){return ty.bind}});var ry=Cf();Object.defineProperty(qn,"bindAll",{enumerable:!0,get:function(){return ry.bindAll}})});import{Provider as ub,useAtom as hc,createStore as db}from"jotai";import{useEffect as mb,memo as pb,useMemo as fb}from"react";import{atom as ur}from"jotai";var gc={method:"single",channels:["email"]},It=ur("https://api.courier.com/client/q"),Rt=ur(""),ut=ur(""),dr=ur(""),Ka=ur(gc),et=ur(null),pe=ur(null),tt=ur(null),Ht=ur(null),ae=ur(null),_m=ur(!0);import{Fragment as yb,jsx as bc}from"react/jsx-runtime";var gb=a(({children:e,tenantId:t,token:r,apiUrl:o})=>{let[,n]=hc(It),[,i]=hc(Rt),[,s]=hc(ut);return mb(()=>{i(r),s(t),o&&n(o)},[r,t,o,n,i,s]),bc(yb,{children:e})},"BrandProviderContext"),hb=a(e=>{let t=fb(()=>db(),[]);return bc(ub,{store:t,children:bc(gb,{...e})})},"BrandProviderComponent"),bb=pb(hb);import{Provider as vb,useAtom as Si,createStore as Cb,useStore as xb}from"jotai";import{createContext as Tb,memo as Eb,useContext as wb,useEffect as zm,useMemo as kb}from"react";import{toast as Pb}from"sonner";import{jsx as yc}from"react/jsx-runtime";var Ii=a(()=>({store:xb()}),"useTemplateStore"),$m=Tb(null),jm=a(()=>wb($m),"useUploadImage"),Ab=a(({children:e,templateId:t,tenantId:r,token:o,apiUrl:n,uploadImage:i})=>{let[,s]=Si(It),[,l]=Si(Rt),[,c]=Si(ut),[,u]=Si(dr),[d]=Si(ae);return zm(()=>{l(o),c(r),u(t),n&&s(n)},[o,r,t,n,s,l,c,u]),zm(()=>{d&&Pb.error(d.message,d.toastProps)},[d]),yc($m.Provider,{value:i||null,children:e})},"TemplateProviderContext"),Mb=a(e=>{let t=kb(()=>Cb(),[]);return yc(vb,{store:t,children:yc(Ab,{...e})})},"TemplateProviderComponent"),Nb=Eb(Mb);import{useAtom as Li,useSetAtom as is}from"jotai";var Xr=a((e,t)=>({message:e,toastProps:t}),"createCustomError"),s6=a(e=>{var t;return((t=e.toastProps)==null?void 0:t.action)!==void 0},"isRetryableError"),l6=a(e=>typeof e=="string"?e:e&&typeof e=="object"&&"message"in e?String(e.message):e instanceof Error?e.message:"Unknown error","extractErrorMessage"),Ga=a(e=>typeof e=="string"?Xr(e):e,"convertLegacyError");import{atom as Zm}from"jotai";import{toast as Sb}from"sonner";var qm=Zm(null,async(e,t,r)=>{var s;let o=e(It),n=e(Rt),i=e(ut);if(!o){t(ae,{message:"Missing API URL",toastProps:{duration:5e3}});return}t(tt,!0),t(ae,null);try{let c=await(await fetch(o,{method:"POST",headers:{Authorization:`Bearer ${n}`,"x-courier-client-key":`Bearer ${n}`,"Content-Type":"application/json"},body:JSON.stringify({query:`
|
|
47
47
|
mutation SaveTenantBrand($input: SaveBrandSettingsInput!) {
|
|
48
48
|
tenant {
|
|
49
49
|
brand {
|
|
@@ -53,8 +53,8 @@ var Mg=Object.create;var el=Object.defineProperty;var Ag=Object.getOwnPropertyDe
|
|
|
53
53
|
}
|
|
54
54
|
}
|
|
55
55
|
}
|
|
56
|
-
`,variables:{input:{tenantId:i,settings:r}}})})).json();if(!c.data)if(c.errors){let u=(
|
|
57
|
-
`),toastProps:{duration:4e3}})}else t(
|
|
56
|
+
`,variables:{input:{tenantId:i,settings:r}}})})).json();if(!c.data)if(c.errors){let u=(s=c.errors)==null?void 0:s.map(d=>d.message);t(ae,{message:u.join(`
|
|
57
|
+
`),toastProps:{duration:4e3}})}else t(ae,{message:"Error saving brand settings",toastProps:{duration:4e3}});return c}catch(l){throw t(ae,{message:"Network connection failed",toastProps:{duration:5e3,description:"Failed to save brand settings"}}),l}finally{t(tt,!1)}}),Jm=Zm(null,async(e,t)=>{let r=e(It),o=e(Rt),n=e(ut);if(!r){t(ae,{message:"Missing API URL",toastProps:{duration:5e3}});return}t(Ht,!0),t(ae,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 Mg=Object.create;var el=Object.defineProperty;var Ag=Object.getOwnPropertyDe
|
|
|
64
64
|
}
|
|
65
65
|
}
|
|
66
66
|
}
|
|
67
|
-
`,variables:{input:{tenantId:n}}})}),
|
|
67
|
+
`,variables:{input:{tenantId:n}}})}),s=await i.json();return i.status===200?Sb.success("Brand published"):t(ae,{message:"Error publishing brand",toastProps:{duration:4e3}}),s}catch(i){throw t(ae,{message:"Network connection failed",toastProps:{duration:5e3,description:"Failed to publish brand"}}),i}finally{t(Ht,!1)}});import{atom as Ib}from"jotai";import{atom as De}from"jotai";var Jo=De(null),Cc=De(null),Xa=De(null),se=De(e=>e(Xa),(e,t,r)=>{if(!r){t(Xa,r);return}let o=e(Cc),n=r;if(o)try{n=o(r)}catch(s){console.error("[ContentTransformer] Error applying transformer:",s),n=r}let i=e(Xa);JSON.stringify(i)!==JSON.stringify(n)&&t(Xa,n)}),Dn=De(null),Hn=De(null),we=De(null),Vn=De(null),dt=De(!1),Nr=De(!1),Ko=De({}),Ya=De({}),Qa=De(!1),Fn=De(void 0),Vt=De(!1),Oe=De(null),Km=De(null),vc=De(new Map),Go=De(e=>e(vc),(e,t,r)=>{let o=new Map(e(vc));r.action==="register"&&r.fn?o.set(r.id,r.fn):r.action==="unregister"&&o.delete(r.id),t(vc,o)}),Gm=a(e=>{e.forEach(t=>{try{t()}catch(r){console.error("[FlushPendingUpdates] Error flushing updates:",r)}})},"flushAllPendingUpdates"),qt=a(e=>typeof e=="object"&&"preset"in e,"isPresetReference"),es=["heading","text","image","spacer","divider","button","customCode"],Sr=De(es),ts=De({}),yo=De([]);var rs=Ib(null,async(e,t,r)=>{var c,u,d,p,m;let o=e(It),n=e(Rt),i=e(ut),s=e(dr),l=(c=r==null?void 0:r.includeBrand)!=null?c:!0;if(!o||!n||!i){let f=[];o||f.push("API URL"),n||f.push("token"),i||f.push("tenant ID"),t(ae,{message:"Missing configuration",toastProps:{description:`Missing: ${f.join(", ")}`,duration:5e3}});return}t(pe,!0),t(ae,null);try{let f=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,13 +122,13 @@ var Mg=Object.create;var el=Object.defineProperty;var Ag=Object.getOwnPropertyDe
|
|
|
122
122
|
}
|
|
123
123
|
}
|
|
124
124
|
}
|
|
125
|
-
`,variables:{tenantId:i,input:{notificationId:
|
|
126
|
-
`),toastProps:{duration:4e3}})}}catch{t(
|
|
127
|
-
`}]};if(t==="inbox"){let i=
|
|
125
|
+
`,variables:{tenantId:i,input:{notificationId:s,version:"latest"},brandInput:{version:"latest"},includeBrand:l}})}),v=await f.json(),h=f.status,y=(u=v.data)==null?void 0:u.tenant;if(y?(t(et,v),t(Dn,(d=y==null?void 0:y.notification)==null?void 0:d.publishedAt),t(Hn,(p=y==null?void 0:y.notification)==null?void 0:p.version)):h===401?t(ae,{message:"Authentication failed",toastProps:{duration:6e3}}):t(ae,{message:"Error fetching template data",toastProps:{duration:4e3}}),v.errors){let x=(m=v.errors)==null?void 0:m.map(E=>E.message);t(ae,{message:x.join(`
|
|
126
|
+
`),toastProps:{duration:4e3}})}}catch{t(ae,{message:"Network connection failed",toastProps:{duration:5e3,description:"Failed to fetch template data"}})}finally{t(pe,!1)}});import{atom as Ec}from"jotai";import{toast as Qm}from"sonner";function xc(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.background_color&&{background_color:t.background_color},...t.color&&{color:t.color},...t.style&&{style:t.style},...t.border&&{border:t.border}}:t)}a(xc,"cleanInboxElements");function Xm(e){return e.map(t=>t.type==="text"&&"content"in t?{type:"text",content:t.content}:t)}a(Xm,"cleanPushElements");function os(e){return e.map(t=>t.type==="text"&&"content"in t?{type:"text",content:t.content}:t)}a(os,"cleanSMSElements");function Tc(e){return{...e,elements:e.elements.map(t=>t.type==="channel"&&t.channel==="inbox"&&t.elements?{...t,elements:xc(t.elements)}:t)}}a(Tc,"cleanTemplateContent");function Ym(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(Ym,"getSubjectStorageFormat");function mr(e,t,r,o){let n=Ym(e,t);if(t==="push"){let i=o.find(d=>d.type==="meta"&&"title"in d),s=i&&"title"in i?i.title:r,l=o.filter(d=>d.type!=="meta"),c=Xm(l);return{elements:[{type:"meta",title:s},...c]}}if(t==="sms")return{elements:o.length>0?o:[{type:"text",content:`
|
|
127
|
+
`}]};if(t==="inbox"){let i=Rb(o),s=i||r,l=i?o.slice(1):o,c=l.filter(v=>v.type==="text"),u=l.filter(v=>v.type==="action"),d=c[0],p=d?{type:"text",content:"content"in d?d.content:`
|
|
128
128
|
`}:{type:"text",content:`
|
|
129
|
-
`},
|
|
130
|
-
`)return r}return null}
|
|
131
|
-
`&&("text_style"in
|
|
129
|
+
`},m=xc(u);return{elements:[{type:"meta",title:s},p,...m]}}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(mr,"createTitleUpdate");function Rb(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!==`
|
|
130
|
+
`)return r}return null}a(Rb,"extractTitleFromFirstElement");function Ri(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 l=s.content.trim();l&&l!==`
|
|
131
|
+
`&&("text_style"in s&&(s.text_style==="h1"||s.text_style==="h2")?n||(n=l):o||(o=l))}let i=n||o;if(i)return i}return""}a(Ri,"extractCurrentTitle");var ns=Ec(null,async(e,t,r)=>{var v;let o,n;if(r&&typeof r=="object"&&("content"in r||"routing"in r&&!("method"in r))){let h=r;o=h.routing,n=h.content}else o=r;let s=o!=null?o:e(Ka),l=e(It),c=e(Rt),u=e(ut),d=e(dr),p=n||e(se);if(!p)return;let m=Tc(p);if(!l){t(ae,{message:"Missing API URL",toastProps:{duration:5e3}});return}t(tt,!0),t(ae,null);let f={content:m,routing:s};try{let y=await(await fetch(l,{method:"POST",headers:{Authorization:`Bearer ${c}`,"x-courier-client-key":`Bearer ${c}`,"Content-Type":"application/json"},body:JSON.stringify({query:`
|
|
132
132
|
mutation SaveNotification($input: SaveNotificationInput!) {
|
|
133
133
|
tenant {
|
|
134
134
|
notification {
|
|
@@ -141,8 +141,8 @@ var Mg=Object.create;var el=Object.defineProperty;var Ag=Object.getOwnPropertyDe
|
|
|
141
141
|
}
|
|
142
142
|
}
|
|
143
143
|
}
|
|
144
|
-
`,variables:{input:{tenantId:u,notificationId:
|
|
145
|
-
`),toastProps:{duration:4e3}})}else t(
|
|
144
|
+
`,variables:{input:{tenantId:u,notificationId:d,name:d,data:f}}})})).json();if(y.data)t(Hn,y.data.tenant.notification.save.version);else if(y.errors){let x=(v=y.errors)==null?void 0:v.map(E=>E.message);t(ae,{message:x.join(`
|
|
145
|
+
`),toastProps:{duration:4e3}})}else t(ae,{message:"Error saving template",toastProps:{duration:4e3}});return y}catch(h){throw t(ae,{message:"Network connection failed",toastProps:{duration:5e3,description:"Failed to save template"}}),h}finally{t(tt,!1)}}),ep=Ec(null,async(e,t)=>{let r=e(It),o=e(Rt),n=e(ut),i=e(dr),s=e(Hn);if(!s){t(ae,{message:"Version not defined",toastProps:{duration:5e3}});return}if(!r){t(ae,{message:"Missing API URL",toastProps:{duration:5e3}});return}t(Ht,!0),t(ae,null);try{let l=await fetch(r,{method:"POST",headers:{Authorization:`Bearer ${o}`,"x-courier-client-key":`Bearer ${o}`,"Content-Type":"application/json"},body:JSON.stringify({query:`
|
|
146
146
|
mutation PublishNotification($input: PublishNotificationInput!) {
|
|
147
147
|
tenant {
|
|
148
148
|
notification {
|
|
@@ -154,7 +154,7 @@ var Mg=Object.create;var el=Object.defineProperty;var Ag=Object.getOwnPropertyDe
|
|
|
154
154
|
}
|
|
155
155
|
}
|
|
156
156
|
}
|
|
157
|
-
`,variables:{input:{tenantId:n,notificationId:i,version:
|
|
157
|
+
`,variables:{input:{tenantId:n,notificationId:i,version:s}}})}),c=await l.json();return l.status===200?(Qm.success("Template published"),t(Dn,new Date().toISOString()),t(Hn,c.data.tenant.notification.publish.version)):t(ae,{message:"Error publishing template",toastProps:{duration:4e3}}),c}catch(l){throw t(ae,{message:"Network connection failed",toastProps:{duration:5e3,description:"Failed to publish template"}}),l}finally{t(Ht,!1)}}),tp=Ec(null,async(e,t,r={})=>{var f,v,h,y,x;let{content:o,name:n}=r,i=e(It),s=e(Rt),l=e(ut),c=e(dr);if(!r.targetTemplateId&&!c){t(ae,{message:"No template is currently loaded",toastProps:{duration:5e3}});return}let u=r.targetTemplateId||`${c}-copy`,d=o||e(se);if(!d){t(ae,{message:"No template content to duplicate",toastProps:{duration:5e3}});return}if(!i){t(ae,{message:"Missing API URL",toastProps:{duration:5e3}});return}t(tt,!0),t(ae,null);let m={content:Tc(d)};try{let g=await(await fetch(i,{method:"POST",headers:{Authorization:`Bearer ${s}`,"x-courier-client-key":`Bearer ${s}`,"Content-Type":"application/json"},body:JSON.stringify({query:`
|
|
158
158
|
mutation SaveNotification($input: SaveNotificationInput!) {
|
|
159
159
|
tenant {
|
|
160
160
|
notification {
|
|
@@ -167,8 +167,8 @@ var Mg=Object.create;var el=Object.defineProperty;var Ag=Object.getOwnPropertyDe
|
|
|
167
167
|
}
|
|
168
168
|
}
|
|
169
169
|
}
|
|
170
|
-
`,variables:{input:{tenantId:l,notificationId:u,name:n||u,data:
|
|
171
|
-
`),toastProps:{duration:4e3}}),{success:!1,templateId:u}}else return t(
|
|
170
|
+
`,variables:{input:{tenantId:l,notificationId:u,name:n||u,data:m}}})})).json();if((y=(h=(v=(f=g.data)==null?void 0:f.tenant)==null?void 0:v.notification)==null?void 0:h.save)!=null&&y.success)return Qm.success("Template duplicated successfully"),{success:!0,templateId:u,version:g.data.tenant.notification.save.version};if(g.errors){let b=(x=g.errors)==null?void 0:x.map(M=>M.message);return t(ae,{message:b.join(`
|
|
171
|
+
`),toastProps:{duration:4e3}}),{success:!1,templateId:u}}else return t(ae,{message:"Error duplicating template",toastProps:{duration:4e3}}),{success:!1,templateId:u}}catch(E){throw t(ae,{message:"Network connection failed",toastProps:{duration:5e3,description:"Failed to duplicate template"}}),E}finally{t(tt,!1)}});function Bi(){Ii();let e=is(rs),t=is(qm),r=is(ns),o=is(Jm),[n,i]=Li(pe),[s,l]=Li(tt),[c,u]=Li(Ht),[d,p]=Li(ae),[m,f]=Li(et);return{getTemplate:e,saveTemplate:r,saveBrand:t,publishBrand:o,isTemplateLoading:n,setIsTemplateLoading:i,isTemplateSaving:s,setIsTemplateSaving:l,isTemplatePublishing:c,setIsTemplatePublishing:u,templateError:d,setTemplateError:a(h=>{p(h===null?null:typeof h=="string"?Xr(h):h)},"setTemplateError"),templateData:m,setTemplateData:f,createCustomError:Xr,convertLegacyError:Ga}}a(Bi,"useBrandActions");import{useAtom as Xo,useSetAtom as as}from"jotai";import{useCallback as Lb}from"react";function Di(){let e=as(rs),t=as(ns),r=as(ep),o=as(tp),[n,i]=Xo(pe),[s,l]=Xo(tt),[c,u]=Xo(Ht),[d,p]=Xo(ae),[m,f]=Xo(et),[v,h]=Xo(se),[y,x]=Xo(Cc),E=Lb(g=>{p(g===null?null:typeof g=="string"?Xr(g):g)},[p]);return{getTemplate:e,saveTemplate:t,publishTemplate:r,duplicateTemplate:o,isTemplateLoading:n,setIsTemplateLoading:i,isTemplateSaving:s,setIsTemplateSaving:l,isTemplatePublishing:c,setIsTemplatePublishing:u,templateError:d,setTemplateError:E,templateData:m,setTemplateData:f,templateEditorContent:v,setTemplateEditorContent:h,createCustomError:Xr,convertLegacyError:Ga,contentTransformer:y,setContentTransformer:x}}a(Di,"useTemplateActions");import{useAtom as op}from"jotai";import{useCallback as Db}from"react";var Bb=["image/png","image/jpeg","image/gif","image/webp"],rp=a(async(e,t)=>{var c,u,d;let{apiUrl:r,token:o}=t;if(!Bb.includes(e.type))throw new Error(`Invalid file type: ${e.type}. Only PNG, JPEG, GIF, and WebP images are supported.`);let n=e.name.split(".").pop()||"",i=`image_${Date.now()}_${Math.random().toString(36).substring(2,10)}.${n}`,l=(await new Promise((p,m)=>{let f=new FileReader;f.onload=()=>{typeof f.result=="string"?p(f.result):m(new Error("Failed to read file as data URL"))},f.onerror=()=>m(f.error),f.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:`
|
|
172
172
|
mutation UploadImage($input: UploadImageInput!) {
|
|
173
173
|
tenant {
|
|
174
174
|
notification {
|
|
@@ -178,57 +178,57 @@ var Mg=Object.create;var el=Object.defineProperty;var Ag=Object.getOwnPropertyDe
|
|
|
178
178
|
}
|
|
179
179
|
}
|
|
180
180
|
}
|
|
181
|
-
`,variables:{input:{name:i,type:e.type,data:l}}})})).json();if(
|
|
182
|
-
`));let f=
|
|
183
|
-
`);for(let o=0;o<r.length;o++)
|
|
181
|
+
`,variables:{input:{name:i,type:e.type,data:l}}})})).json();if(m.errors)throw new Error(m.errors.map(v=>v.message).join(`
|
|
182
|
+
`));let f=m.data;return(d=(u=(c=f==null?void 0:f.tenant)==null?void 0:c.notification)==null?void 0:u.uploadImage)==null?void 0:d.url}catch(p){throw console.error("Error uploading image:",p),p}},"uploadImage");function Hi(){let[e]=op(It),[t]=op(Rt),r=jm();return{uploadImage:Db(async n=>{if(typeof r=="function"){let i,s;try{i=await r(n),i===void 0&&(i=await r(n.file))}catch(u){s=u;try{i=await r(n.file)}catch{throw s}}let l="",c;if(typeof i=="string")l=i;else if(i){c=i==null?void 0:i.message;let u=i.url;typeof u=="string"?l=u:u&&typeof u=="object"&&(c=c||(u==null?void 0:u.message))}if(c)throw new Error(c);if(!l)throw s||new Error("Error uploading image");return{url:l}}else{if(!e||!t)throw new Error("Upload failed: Missing configuration for image upload");let i=n.file instanceof File?n.file:new File([n.file],"upload",{type:n.file.type}),s=await rp(i,{apiUrl:e,token:t});if(!s)throw new Error("Upload failed: No URL returned from server");return{url:s}}},[e,t,r])}}a(Hi,"useImageUpload");import{clsx as Wb}from"clsx";import{twMerge as Ub}from"tailwind-merge";import{v4 as tr}from"uuid";function mt(e){let t=e.trim();if(!t||t.startsWith(".")||t.endsWith(".")||t.includes("..")||t.includes(" "))return!1;let r=t.split("."),o=/^[a-zA-Z_][a-zA-Z0-9_]*$/;for(let n of r)if(!n||!o.test(n))return!1;return!0}a(mt,"isValidVariableName");var Hb="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7";function ss(e){return e?e===Hb:!0}a(ss,"isBlankImageSrc");var ls=a((e,t)=>new Promise(r=>{let o=new FileReader;o.onload=n=>{var s;let i=new Image;i.onload=()=>{var p;let l,c;i.width>i.height?(l=Math.min(t,i.width),c=Math.round(i.height/i.width*l)):(c=Math.min(t,i.height),l=Math.round(i.width/i.height*c));let u=document.createElement("canvas");u.width=l,u.height=c;let d=u.getContext("2d");if(d){d.imageSmoothingEnabled=!0,d.imageSmoothingQuality="high",d.drawImage(i,0,0,l,c);let m=.8,f=u.toDataURL(e.type||"image/jpeg",m),v=0,h=5;for(;f.length>512e3&&v<h;)v++,m-=.1,m<.3&&(m=.3),f=u.toDataURL(e.type||"image/jpeg",m);r({dataUrl:f,width:l,height:c})}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");function np(e){let t=[],r=e.replace(/\n$/,"").split(`
|
|
183
|
+
`);for(let o=0;o<r.length;o++)Vb(r[o],t),o<r.length-1&&t.push({type:"hardBreak"});return t}a(np,"parseMDContent");function Vb(e,t){wc(e,t)}a(Vb,"parseTextLine");function wc(e,t){var c,u;if(!e)return;let r=[{regex:/\{\{([^}]*)\}\}/g,type:"variable"},{regex:/\{\}([^{}]+)\{\}/g,type:"variable"},{regex:/\[([^\]]+)\]\(([^)]+)\)/g,type:"link"},{regex:/\*\*([^*]+)\*\*/g,type:"bold"},{regex:/__([^_]+)__/g,type:"bold"},{regex:/(?<!\*)\*([^*]+)\*(?!\*)/g,type:"italic"},{regex:/(?<!_)_([^_]+)_(?!_)/g,type:"italic"},{regex:/~([^~]+)~/g,type:"strike"},{regex:/\+([^+]+)\+/g,type:"underline"}],o=[];for(let d of r){let p=new RegExp(d.regex.source,d.regex.flags),m;for(;(m=p.exec(e))!==null;)if(d.type==="variable"){let f=m[1].trim(),v=f===""||mt(f);o.push({start:m.index,end:m.index+m[0].length,text:m[1],type:"variable",attrs:{id:f,isInvalid:!v}})}else d.type==="link"?o.push({start:m.index,end:m.index+m[0].length,text:m[1],type:"link",attrs:{href:m[2]}}):o.push({start:m.index,end:m.index+m[0].length,text:m[1],type:d.type})}o.sort((d,p)=>d.start-p.start);let n=[],i=0;for(let d of o)d.start>=i&&(n.push(d),i=d.end);let s=[],l=0;for(let d of n){if(d.start>l){let p=e.substring(l,d.start);p&&kc(p,[],s)}if(d.type==="variable")s.push({type:"variable",attrs:{id:(c=d.attrs)==null?void 0:c.id,isInvalid:(u=d.attrs)==null?void 0:u.isInvalid}});else if(d.type==="link"){let p=[];wc(d.text,p),p.forEach(m=>{var f;m.marks=m.marks||[],m.marks.push({type:"link",attrs:{href:(f=d.attrs)==null?void 0:f.href}})}),s.push(...p)}else{let p=[];wc(d.text,p),p.forEach(m=>{m.marks=m.marks||[],m.marks.push({type:d.type})}),s.push(...p)}l=d.end}if(l<e.length){let d=e.substring(l);d&&kc(d,[],s)}t.push(...s)}a(wc,"processMarkdownFormatting");function kc(e,t,r){if(!e)return;let o=/\{\{([^}]*)\}\}/g,n,i=0;for(o.lastIndex=0;(n=o.exec(e))!==null;){if(!n[0].startsWith("{{")||!n[0].endsWith("}}"))continue;if(n.index>i){let u=e.substring(i,n.index);u&&r.push({type:"text",text:u,...t.length>0&&{marks:t}})}let s=n[1].trim(),l=t.some(u=>u.type==="link"),c=s===""||mt(s);r.push({type:"variable",attrs:{id:s,isInvalid:!c,...l&&{inUrlContext:!0}},...t.length>0&&{marks:t}}),i=n.index+n[0].length}if(i<e.length){let s=e.substring(i);s&&r.push({type:"text",text:s,...t.length>0&&{marks:t}})}}a(kc,"parseTextWithVariables");function We(e,t){var d,p,m,f,v,h,y,x,E;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 g of e.elements)if(g.type==="channel"){let b=g;if(n){if(b.channel===n){i=b;break}}else{i=b;break}}if(!i||i.type!=="channel")return r;let s=i;if(s.elements&&s.elements.length>0?(o=s.elements,s.channel==="push"&&(o=o.map(g=>g.type==="meta"&&"title"in g?{type:"text",content:g.title||`
|
|
184
184
|
`,text_style:"h2"}:g))):o=[{type:"text",content:`
|
|
185
|
-
`}],!o||o.length===0)return r;let l=
|
|
186
|
-
`:
|
|
187
|
-
`;let
|
|
188
|
-
`:
|
|
189
|
-
`;let
|
|
190
|
-
`:
|
|
191
|
-
`}
|
|
192
|
-
`,align:"left"}):
|
|
193
|
-
`,align:"left"})}else for(let
|
|
194
|
-
`,align:"left"});let
|
|
195
|
-
`&&("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=fl(o.elements);if(n)return n}}return r||t||""}s(fl,"getTitle");function gl(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 fl(r.elements)}return""}s(gl,"getTitleForChannel");function _e(e,t){var a;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(l=>{var c;if(l.type!=="meta")if(l.type==="channel"){let u=l,p=!1;if(n?u.channel===n&&(p=!0):i||(p=!0),p){let m={};if(t.channel&&typeof t.channel=="object")for(let f in t.channel)f!=="type"&&f!=="elements"&&f!=="channel"&&Object.prototype.hasOwnProperty.call(t.channel,f)&&(m[f]=t.channel[f]);let d={type:"channel",channel:u.channel,...Object.fromEntries(Object.entries(u).filter(([f])=>!["type","channel","elements"].includes(f))),...m};if(t.elements!==void 0){let f=[],C=t.elements.find(b=>b.type==="meta");if(C)f.push(C);else{let b=(c=u.elements)==null?void 0:c.find(v=>v.type==="meta");b&&f.push(b)}let h=t.elements.filter(b=>b.type!=="meta");f.push(...h),d.elements=f}o.elements.push(d),i=!0}else o.elements.push(l)}else o.elements.push(l)}),n&&!i||!((a=r.elements)!=null&&a.some(l=>l.type==="channel"))&&!i){let l;n?l=n:t.channel&&typeof t.channel=="object"&&t.channel.channel?l=t.channel.channel:l="email";let c={};if(t.channel&&typeof t.channel=="object")for(let p in t.channel)p!=="type"&&p!=="elements"&&p!=="channel"&&Object.prototype.hasOwnProperty.call(t.channel,p)&&(c[p]=t.channel[p]);let u={type:"channel",channel:l,...c};if(t.elements!==void 0){let p=[],m=t.elements.find(f=>f.type==="meta");m&&p.push(m);let d=t.elements.filter(f=>f.type!=="meta");p.push(...d),u.elements=p}o.elements.push(u)}return o}s(_e,"updateElemental");function I(...e){return d5(u5(e))}s(I,"cn");import{Slot as m5}from"@radix-ui/react-slot";import{cva as p5}from"class-variance-authority";import{forwardRef as f5}from"react";import{jsx as g5}from"react/jsx-runtime";var aa=p5("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]",secondary:"courier-text-foreground courier-bg-[#F5F5F5] dark:courier-bg-neutral-700 dark:courier-text-white",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-blue-600 active:courier-bg-blue-700"},{variant:"primary",active:!0,class:"courier-bg-blue-700"},{variant:"secondary",disabled:!1,active:!1,class:"hover:courier-bg-neutral-100 active:courier-bg-neutral-200 dark:hover:courier-bg-neutral-600 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-[#3B82F6] dark:courier-text-white [&_svg]:dark:courier-text-white"}]}),ve=f5(({active:e,buttonSize:t="medium",disabled:r,variant:o="primary",className:n,asChild:i=!1,...a},l)=>g5(i?m5:"button",{ref:l,disabled:r,className:I(aa({variant:o,size:t,disabled:r,active:e}),n),...a}));ve.displayName="Button";import{forwardRef as h5}from"react";import{jsx as b5}from"react/jsx-runtime";var le=h5((e,t)=>b5("hr",{...e,ref:t,className:I("courier-my-1 courier-border-border dark:courier-border-neutral-600 courier-w-full",e.className)}));le.displayName="Divider";import*as Nr from"react";import*as ce from"@radix-ui/react-dropdown-menu";import{Check as y5,ChevronRight as C5,Circle as v5}from"lucide-react";import{jsx as gt,jsxs as hl}from"react/jsx-runtime";var sa=ce.Root,la=ce.Trigger;var x5=Nr.forwardRef(({className:e,inset:t,children:r,...o},n)=>hl(ce.SubTrigger,{ref:n,className:I("courier-flex courier-cursor-default courier-gap-2 courier-select-none courier-items-center courier-rounded-sm courier-px-2 courier-py-1.5 courier-text-sm courier-outline-none focus:courier-bg-accent data-[state=open]:courier-bg-accent [&_svg]:courier-pointer-events-none [&_svg]:courier-size-4 [&_svg]:courier-shrink-0",t&&"courier-pl-8",e),...o,children:[r,gt(C5,{className:"courier-ml-auto"})]}));x5.displayName=ce.SubTrigger.displayName;var T5=Nr.forwardRef(({className:e,...t},r)=>gt(ce.SubContent,{ref:r,className:I("courier-z-50 courier-min-w-[8rem] courier-overflow-hidden courier-rounded-md courier-border courier-bg-popover courier-p-1 courier-text-popover-foreground courier-shadow-lg data-[state=open]:courier-animate-in data-[state=closed]:courier-animate-out data-[state=closed]:courier-fade-out-0 data-[state=open]:courier-fade-in-0 data-[state=closed]:courier-zoom-out-95 data-[state=open]:courier-zoom-in-95 data-[side=bottom]:courier-slide-in-from-top-2 data-[side=left]:courier-slide-in-from-right-2 data-[side=right]:courier-slide-in-from-left-2 data-[side=top]:courier-slide-in-from-bottom-2",e),...t}));T5.displayName=ce.SubContent.displayName;var qn=Nr.forwardRef(({className:e,sideOffset:t=4,portalProps:r,...o},n)=>gt(ce.Portal,{...r,children:gt(ce.Content,{ref:n,sideOffset:t,className:I("courier-z-50 courier-min-w-[8rem] courier-overflow-hidden courier-rounded-md courier-border courier-bg-popover courier-p-1 courier-text-popover-foreground courier-shadow-md","data-[state=open]:courier-animate-in data-[state=closed]:courier-animate-out data-[state=closed]:courier-fade-out-0 data-[state=open]:courier-fade-in-0 data-[state=closed]:courier-zoom-out-95 data-[state=open]:courier-zoom-in-95 data-[side=bottom]:courier-slide-in-from-top-2 data-[side=left]:courier-slide-in-from-right-2 data-[side=right]:courier-slide-in-from-left-2 data-[side=top]:courier-slide-in-from-bottom-2",e),...o})}));qn.displayName=ce.Content.displayName;var Jn=Nr.forwardRef(({className:e,inset:t,...r},o)=>gt(ce.Item,{ref:o,className:I("courier-relative courier-flex courier-cursor-default courier-select-none courier-items-center courier-gap-2 courier-rounded-sm courier-px-2 courier-py-1.5 courier-text-sm courier-outline-none focus:courier-bg-accent focus:courier-text-foreground data-[disabled]:courier-pointer-events-none data-[disabled]:courier-opacity-50 [&>svg]:courier-size-4 [&>svg]:courier-shrink-0",t&&"courier-pl-8",e),...r}));Jn.displayName=ce.Item.displayName;var E5=Nr.forwardRef(({className:e,children:t,checked:r,...o},n)=>hl(ce.CheckboxItem,{ref:n,className:I("courier-relative courier-flex courier-cursor-default courier-select-none courier-items-center courier-rounded-sm courier-py-1.5 courier-pl-8 courier-pr-2 courier-text-sm courier-outline-none focus:courier-bg-accent focus:courier-text-accent-foreground data-[disabled]:courier-pointer-events-none data-[disabled]:courier-opacity-50",e),checked:r,...o,children:[gt("span",{className:"courier-absolute courier-left-2 courier-flex courier-h-3.5 courier-w-3.5 courier-items-center courier-justify-center",children:gt(ce.ItemIndicator,{children:gt(y5,{className:"courier-h-4 courier-w-4"})})}),t]}));E5.displayName=ce.CheckboxItem.displayName;var k5=Nr.forwardRef(({className:e,children:t,...r},o)=>hl(ce.RadioItem,{ref:o,className:I("courier-relative courier-flex courier-cursor-default courier-select-none courier-items-center courier-rounded-sm courier-py-1.5 courier-pl-8 courier-pr-2 courier-text-sm courier-outline-none focus:courier-bg-accent focus:courier-text-accent-foreground data-[disabled]:courier-pointer-events-none data-[disabled]:courier-opacity-50",e),...r,children:[gt("span",{className:"courier-absolute courier-left-2 courier-flex courier-h-3.5 courier-w-3.5 courier-items-center courier-justify-center",children:gt(ce.ItemIndicator,{children:gt(v5,{className:"courier-h-2 courier-w-2 courier-fill-current"})})}),t]}));k5.displayName=ce.RadioItem.displayName;var w5=Nr.forwardRef(({className:e,inset:t,...r},o)=>gt(ce.Label,{ref:o,className:I("courier-px-2 courier-py-1.5 courier-text-sm courier-font-semibold",t&&"courier-pl-8",e),...r}));w5.displayName=ce.Label.displayName;var P5=Nr.forwardRef(({className:e,...t},r)=>gt(ce.Separator,{ref:r,className:I("courier-mx-1 courier-my-1 courier-h-px courier-bg-muted",e),...t}));P5.displayName=ce.Separator.displayName;var N5=s(({className:e,...t})=>gt("span",{className:I("courier-ml-auto courier-text-xs courier-tracking-widest courier-opacity-60",e),...t}),"DropdownMenuShortcut");N5.displayName="DropdownMenuShortcut";import{Component as M5}from"react";import{jsx as yl,jsxs as I5}from"react/jsx-runtime";var Cl=class Cl extends M5{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||yl(A5,{error:this.state.error}):this.props.children}};s(Cl,"ErrorBoundary");var bl=Cl,A5=s(({error:e})=>I5("div",{className:"courier-p-6 courier-border courier-border-red-200 courier-bg-red-50 courier-rounded-lg courier-text-center",children:[yl("h3",{className:"courier-text-lg courier-font-semibold courier-text-red-800 courier-mb-2",children:"Something went wrong"}),yl("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 B5}from"@radix-ui/react-slot";import*as ht from"react";import{Controller as D5,FormProvider as H5,useFormContext as V5}from"react-hook-form";import*as vl from"@radix-ui/react-label";import{cva as S5}from"class-variance-authority";import*as xd from"react";import{jsx as L5}from"react/jsx-runtime";var R5=S5("courier-text-sm courier-font-medium courier-leading-none peer-disabled:courier-cursor-not-allowed peer-disabled:courier-opacity-70"),xl=xd.forwardRef(({className:e,...t},r)=>L5(vl.Root,{ref:r,className:I(R5(),e),...t}));xl.displayName=vl.Root.displayName;import{jsx as Zr}from"react/jsx-runtime";var Me=H5,Td=ht.createContext({}),J=s(({...e})=>Zr(Td.Provider,{value:{name:e.name},children:Zr(D5,{...e})}),"FormField"),ca=s(()=>{let e=ht.useContext(Td),t=ht.useContext(Ed),{getFieldState:r,formState:o}=V5(),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"),Ed=ht.createContext({}),Z=ht.forwardRef(({className:e,...t},r)=>{let o=ht.useId();return Zr(Ed.Provider,{value:{id:o},children:Zr("div",{ref:r,className:I("courier-space-y-2",e),...t})})});Z.displayName="FormItem";var ar=ht.forwardRef(({className:e,...t},r)=>{let{error:o,formItemId:n}=ca();return Zr(xl,{ref:r,className:I(o&&"courier-text-destructive",e),htmlFor:n,...t})});ar.displayName="FormLabel";var q=ht.forwardRef(({...e},t)=>{let{error:r,formItemId:o,formDescriptionId:n,formMessageId:i}=ca();return Zr(B5,{ref:t,id:o,"aria-describedby":r?`${n} ${i}`:`${n}`,"aria-invalid":!!r,...e})});q.displayName="FormControl";var F5=ht.forwardRef(({className:e,...t},r)=>{let{formDescriptionId:o}=ca();return Zr("p",{ref:r,id:o,className:I("courier-text-[0.8rem] courier-text-muted-foreground",e),...t})});F5.displayName="FormDescription";var j=ht.forwardRef(({className:e,children:t,...r},o)=>{let{error:n,formMessageId:i}=ca(),a=n?String(n==null?void 0:n.message):t;return a?Zr("p",{ref:o,id:i,className:I("courier-text-[0.8rem] courier-font-medium courier-text-destructive",e),...r,children:a}):null});j.displayName="FormMessage";import*as we from"@radix-ui/react-alert-dialog";import*as yo from"react";import{useCallback as O5}from"react";import{jsx as sr,jsxs as z5}from"react/jsx-runtime";var kd=we.Root,wd=we.Trigger,U5=we.Portal,Pd=yo.forwardRef(({className:e,...t},r)=>sr("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:sr(we.Overlay,{asChild:!0,className:I("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})}));Pd.displayName=we.Overlay.displayName;var Tl=yo.forwardRef(({className:e,...t},r)=>{let o=O5(()=>{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 z5(U5,{container:typeof window!="undefined"?o():void 0,children:[sr(Pd,{}),sr(we.Content,{ref:r,className:I("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})]})});Tl.displayName=we.Content.displayName;var El=s(({className:e,...t})=>sr("div",{className:I("courier-flex courier-flex-col courier-space-y-2 courier-text-center sm:courier-text-left",e),...t}),"AlertDialogHeader");El.displayName="AlertDialogHeader";var kl=s(({className:e,...t})=>sr("div",{className:I("courier-flex courier-flex-col-reverse sm:courier-flex-row sm:courier-justify-end sm:courier-space-x-2",e),...t}),"AlertDialogFooter");kl.displayName="AlertDialogFooter";var W5=yo.forwardRef(({className:e,...t},r)=>sr(we.Title,{ref:r,className:I("courier-text-lg courier-font-semibold",e),...t}));W5.displayName=we.Title.displayName;var _5=yo.forwardRef(({className:e,...t},r)=>sr(we.Description,{ref:r,className:I("courier-text-sm courier-text-muted-foreground",e),...t}));_5.displayName=we.Description.displayName;var wl=yo.forwardRef(({className:e,...t},r)=>sr(we.Action,{ref:r,className:I(aa(),e),...t}));wl.displayName=we.Action.displayName;var Pl=yo.forwardRef(({className:e,...t},r)=>sr(we.Cancel,{ref:r,className:I(aa({variant:"outline"}),"courier-mt-2 sm:courier-mt-0",e),...t}));Pl.displayName=we.Cancel.displayName;import*as Nd from"react";import{jsx as Nl,jsxs as $5}from"react/jsx-runtime";var pe=Nd.forwardRef(({className:e,type:t,startAdornment:r,endAdornment:o,...n},i)=>$5("div",{className:"courier-relative courier-flex courier-w-full courier-items-center",children:[r&&Nl("div",{className:"courier-absolute courier-left-2 courier-flex courier-items-center courier-pointer-events-none",children:r}),Nl("input",{type:t,className:I("courier-flex courier-w-full courier-rounded-md courier-border-none courier-bg-secondary courier-text-secondary-foreground courier-p-1.5 courier-text-base file:courier-border-0 file:courier-bg-transparent file:courier-text-sm file:courier-font-medium file:courier-text-foreground placeholder:courier-text-muted-foreground focus-visible:courier-outline-none disabled:courier-cursor-not-allowed disabled:courier-opacity-50 md:courier-text-sm dark:courier-[color-scheme:dark]",r&&"courier-pl-8",o&&"courier-pr-8",e),ref:i,...n}),o&&Nl("div",{className:"courier-absolute courier-right-2 courier-flex courier-items-center courier-pointer-events-none",children:o})]}));pe.displayName="Input";import{forwardRef as j5,useRef as K5,useMemo as G5,useCallback as Y5}from"react";import{useCallback as Ml,useEffect as Md,useRef as ua,useState as Ad}from"react";import{CircleX as Z5}from"lucide-react";import{jsx as lr,jsxs as Id}from"react/jsx-runtime";var q5=s(e=>e==="transparent"||/^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/.test(e),"isValidHex"),Sd=s(({color:e,onChange:t,className:r,presetColors:o,defaultValue:n="transparent"})=>{let[i,a]=Ad(()=>jn(e)),[l,c]=Ad(e),u=ua(null),p=ua(null),m=ua(null),d=ua(!1),f=e!==n,C=Ml(g=>{d.current=!0;let w=J5(g);c(w),t(w),d.current=!1},[t]),h=s(g=>w=>{m.current=g,b(w)},"handleMouseDown"),b=Ml(g=>{if(m.current){if(m.current==="gradient"&&u.current){let w=u.current.getBoundingClientRect(),N=Math.max(0,Math.min(1,(g.clientX-w.left)/w.width)),y=Math.max(0,Math.min(1,(g.clientY-w.top)/w.height)),S={...i,s:N*100,v:(1-y)*100};a(S),C(S)}else if(m.current==="hue"&&p.current){let w=p.current.getBoundingClientRect(),N=Math.max(0,Math.min(1,(g.clientX-w.left)/w.width)),y={...i,h:N*360};a(y),C(y)}}},[i,C]),v=Ml(()=>{m.current=null},[]);Md(()=>{if(m.current)return window.addEventListener("mousemove",b),window.addEventListener("mouseup",v),()=>{window.removeEventListener("mousemove",b),window.removeEventListener("mouseup",v)}},[b,v]),Md(()=>{d.current||(a(jn(e)),c(e))},[e]);let E=s(g=>{let w=g.target.value;if(c(w),q5(w)){let N=jn(w);a(N),C(N)}},"handleInputChange");return Id("div",{className:I("w-full",r),children:[lr("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:h("gradient"),children:lr("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}%`}})}),lr("div",{ref:p,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:lr("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}%`}})}),Id("div",{className:"courier-mt-3 courier-relative courier-flex courier-items-center",children:[lr(pe,{value:l,onChange:E,placeholder:"#000000",className:"courier-flex-1"}),f&&lr("button",{onClick:g=>{if(g.preventDefault(),n==="transparent"){t("transparent"),c("transparent"),a({h:0,s:0,v:0});return}let w=jn(n);a(w),C(w)},className:"courier-absolute courier-right-3 courier-flex courier-cursor-pointer courier-items-center courier-justify-center courier-transition-colors",children:lr(Z5,{size:14,strokeWidth:1.25})})]}),lr(le,{className:"courier-my-3"}),lr("div",{className:"courier-flex courier-flex-wrap courier-gap-1",children:o.map(g=>lr("button",{className:I("courier-h-6 courier-w-6 courier-rounded-md courier-border courier-border-input courier-shrink-0",g==="transparent"&&Al),style:{backgroundColor:g==="transparent"?void 0:g},onClick:w=>{if(w.preventDefault(),g==="transparent"){t("transparent"),c("transparent"),a({h:0,s:0,v:0});return}let N=jn(g);a(N),C(N)}},g))})]})},"ColorPicker");function jn(e){if(e==="transparent")return{h:0,s:0,v:0};let t=parseInt(e.slice(1,3),16)/255,r=parseInt(e.slice(3,5),16)/255,o=parseInt(e.slice(5,7),16)/255,n=Math.max(t,r,o),i=Math.min(t,r,o),a=n-i,l=0,c=n===0?0:a/n,u=n;if(n!==i){switch(n){case t:l=(r-o)/a+(r<o?6:0);break;case r:l=(o-t)/a+2;break;case o:l=(t-r)/a+4;break}l/=6}return{h:l*360,s:c*100,v:u*100}}s(jn,"hexToHsv");function J5({h:e,s:t,v:r}){t/=100,r/=100,e=e%360/360;let o=s(l=>{let c=(l+e*6)%6;return r-r*t*Math.max(0,Math.min(c,4-c,1))},"f"),n=Math.round(o(5)*255),i=Math.round(o(3)*255),a=Math.round(o(1)*255);return`#${[n,i,a].map(l=>l.toString(16).padStart(2,"0")).join("")}`}s(J5,"hsvToHex");import*as cr from"@radix-ui/react-popover";import*as Ld from"react";import{jsx as Rd}from"react/jsx-runtime";var Bd=cr.Root,Dd=cr.Trigger;var Il=Ld.forwardRef(({className:e,align:t="center",side:r="bottom",sideOffset:o=4,collisionPadding:n=10,avoidCollisions:i=!0,portalProps:a,...l},c)=>Rd(cr.Portal,{...a,children:Rd(cr.Content,{ref:c,side:r,align:t,sideOffset:o,collisionPadding:n,avoidCollisions:i,className:I("courier-z-50 courier-w-72 courier-rounded-md courier-border courier-bg-popover courier-p-4 courier-text-popover-foreground courier-shadow-md courier-outline-none data-[state=open]:courier-animate-in data-[state=closed]:courier-animate-out data-[state=closed]:courier-fade-out-0 data-[state=open]:courier-fade-in-0 data-[state=closed]:courier-zoom-out-95 data-[state=open]:courier-zoom-in-95 data-[side=bottom]:courier-slide-in-from-top-2 data-[side=left]:courier-slide-in-from-right-2 data-[side=right]:courier-slide-in-from-left-2 data-[side=top]:courier-slide-in-from-bottom-2",e),...l})}));Il.displayName=cr.Content.displayName;import{jsx as Kn,jsxs as Hd}from"react/jsx-runtime";var Al="bg-[url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNOCAwSDBWOEg4VjBaIiBmaWxsPSIjRDlEOUQ5Ii8+PHBhdGggZD0iTTE2IDhIOFYxNkgxNlY4WiIgZmlsbD0iI0Q5RDlEOSIvPjwvc3ZnPg==')]",X5=["#ef4444","#f97316","#eab308","#22c55e","#14b8a6","#06b6d4","#3b82f6","#6366f1","#8b5cf6","#000000","#525252","#a3a3a3","#ffffff","transparent"],Ge=j5(({className:e,value:t="",onChange:r,defaultValue:o,transparent:n=!0,presetColors:i=X5,...a},l)=>{let c=t!=="transparent",u=K5(null),p=G5(()=>n?i:i.filter(d=>d!=="transparent"),[i,n]),m=Y5(()=>{var f;let d=(f=u.current)==null?void 0:f.parentElement;for(;d;){if(d.classList.contains("theme-container"))return d;d=d.parentElement}return document.body},[]);return Hd(Bd,{children:[Kn(Dd,{asChild:!0,children:Hd("div",{className:"courier-relative courier-flex courier-items-center",ref:u,children:[Kn("div",{className:I("courier-absolute courier-left-2 courier-flex courier-h-4 courier-w-4 courier-cursor-pointer courier-items-center courier-justify-center courier-rounded-md courier-border courier-border-input courier-transition-colors courier-z-10",c?"":Al),style:{backgroundColor:c?t:void 0}}),Kn(pe,{...a,ref:l,readOnly:!0,type:"text",value:t==="transparent"?"Transparent":t,className:I("courier-relative courier-cursor-pointer courier-pl-8",e)})]})}),Kn(Il,{portalProps:{container:typeof window!="undefined"?m():void 0},className:"courier-w-[230px]",children:Kn(Sd,{color:t,onChange:r,presetColors:p,defaultValue:o})})]})});Ge.displayName="InputColor";import*as Vd from"react";import*as Sl from"@radix-ui/react-separator";import{jsx as Q5}from"react/jsx-runtime";var Rl=Vd.forwardRef(({className:e,orientation:t="horizontal",decorative:r=!0,...o},n)=>Q5(Sl.Root,{ref:n,decorative:r,orientation:t,className:I("courier-shrink-0 courier-bg-border",t==="horizontal"?"courier-h-[1px] courier-w-full":"courier-h-full courier-w-[1px]",e),...o}));Rl.displayName=Sl.Root.displayName;import*as Fd from"react";import*as Mr from"@radix-ui/react-slider";import{jsx as Ll,jsxs as e2}from"react/jsx-runtime";var Bl=Fd.forwardRef(({className:e,...t},r)=>e2(Mr.Root,{ref:r,className:I("courier-relative courier-flex courier-w-full courier-touch-none courier-select-none courier-items-center",e),...t,children:[Ll(Mr.Track,{className:"courier-relative courier-h-1.5 courier-w-full courier-grow courier-overflow-hidden courier-rounded-full courier-bg-secondary",children:Ll(Mr.Range,{className:"courier-absolute courier-h-full courier-bg-accent-foreground"})}),Ll(Mr.Thumb,{className:"courier-block courier-h-4 courier-w-4 courier-rounded-full courier-bg-accent-foreground courier-shadow courier-transition-colors focus-visible:courier-outline-none focus-visible:courier-ring-1 focus-visible:courier-ring-ring disabled:courier-pointer-events-none disabled:courier-opacity-50"})]}));Bl.displayName=Mr.Root.displayName;import*as Ud from"react";import*as Gn from"@radix-ui/react-switch";import{jsx as Od}from"react/jsx-runtime";var Jo=Ud.forwardRef(({className:e,...t},r)=>Od(Gn.Root,{className:I("courier-peer courier-inline-flex courier-h-5 courier-w-9 courier-shrink-0 courier-cursor-pointer courier-items-center courier-rounded-full courier-border-2 courier-border-transparent courier-shadow-sm courier-transition-colors focus-visible:courier-outline-none focus-visible:courier-ring-2 focus-visible:courier-ring-ring focus-visible:courier-ring-offset-2 focus-visible:courier-ring-offset-background disabled:courier-cursor-not-allowed disabled:courier-opacity-50 data-[state=checked]:courier-bg-accent-foreground data-[state=unchecked]:courier-bg-input",e),...t,ref:r,children:Od(Gn.Thumb,{className:I("courier-pointer-events-none courier-block courier-h-4 courier-w-4 courier-rounded-full courier-bg-background courier-shadow-lg courier-ring-0 courier-transition-transform data-[state=checked]:courier-translate-x-4 data-[state=unchecked]:courier-translate-x-0")})}));Jo.displayName=Gn.Root.displayName;import*as da from"react";import*as Kt from"@radix-ui/react-tabs";import{jsx as Dl}from"react/jsx-runtime";var ma=Kt.Root,Yn=da.forwardRef(({className:e,...t},r)=>Dl(Kt.List,{ref:r,className:I("courier-inline-flex courier-h-9 courier-items-center courier-justify-center courier-rounded-md courier-border courier-border-border courier-bg-background courier-p-[3px] courier-text-muted-foreground",e),...t}));Yn.displayName=Kt.List.displayName;var jo=da.forwardRef(({className:e,...t},r)=>Dl(Kt.Trigger,{ref:r,className:I("courier-inline-flex courier-items-center courier-justify-center courier-whitespace-nowrap courier-rounded-sm courier-px-3 courier-py-1 courier-text-sm courier-font-medium courier-ring-offset-background courier-transition-all focus-visible:courier-outline-none disabled:courier-pointer-events-none disabled:courier-opacity-50 data-[state=active]:courier-bg-accent data-[state=active]:courier-text-accent-foreground",e),...t}));jo.displayName=Kt.Trigger.displayName;var pa=da.forwardRef(({className:e,...t},r)=>Dl(Kt.Content,{ref:r,className:I("courier-mt-2 courier-ring-offset-background focus-visible:courier-outline-none focus-visible:courier-ring-2 focus-visible:courier-ring-ring focus-visible:courier-ring-offset-2",e),...t}));pa.displayName=Kt.Content.displayName;import*as Ko from"react";import{jsx as t2}from"react/jsx-runtime";var Hl=Ko.forwardRef(({className:e,autoResize:t=!1,...r},o)=>{let n=Ko.useRef(null),i=s(a=>{n.current=a,typeof o=="function"?o(a):o&&(o.current=a)},"combinedRef");return Ko.useEffect(()=>{if(!t)return;let a=n.current;if(!a)return;let l=s(()=>{a.style.height="auto",a.style.height=`${a.scrollHeight}px`},"adjustHeight");return l(),a.addEventListener("input",l),()=>{a.removeEventListener("input",l)}},[t]),t2("textarea",{className:I("courier-flex courier-min-h-[44px] courier-w-full courier-rounded-md courier-border-none courier-bg-secondary courier-text-secondary-foreground courier-p-1.5 courier-text-base courier-placeholder:courier-text-muted-foreground focus-visible:courier-outline-none disabled:courier-cursor-not-allowed disabled:courier-opacity-50 md:courier-text-sm",t&&"courier-resize-none",e),ref:i,...r})});Hl.displayName="Textarea";import{forwardRef as o2,useContext as n2}from"react";import{createContext as r2}from"react";var fa={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"},Wd={...fa},_d={...fa,colorScheme:"dark",background:"#262626",foreground:"#ffffff",muted:"#48465B",mutedForeground:"#C9C8E1",popover:"#171717",popoverForeground:"#ffffff",border:"#48465B",input:"#48465B",card:"#171717",cardForeground:"#ffffff",primary:"#2E333F",primaryForeground:"#ffffff",secondary:"#2E333F",secondaryForeground:"#C9C8E1",accent:"#0085FF",accentForeground:"#ffffff",destructive:"#FF3363",destructiveForeground:"#ffffff",ring:"#0085FF"};var Vl=r2(fa);import{jsx as zd}from"react/jsx-runtime";var $d=o2(({children:e,theme:t,colorScheme:r,className:o},n)=>{let i=r!=null?r:"light",a=i==="light"?Wd:_d,l=a;t&&(l=typeof t=="string"?t:{...a,...t});let c=typeof t=="string"?{}:Object.entries(l).reduce((u,[p,m])=>{let d=p.replace(/[A-Z]/g,f=>`-${f.toLowerCase()}`);return{...u,[`--${d}`]:m}},{});return zd(Vl.Provider,{value:typeof l=="object"?l:{},children:zd("div",{style:c,className:I("courier-flex courier-flex-col courier-relative",typeof t=="string"?t:"","theme-container",i==="dark"?"dark courier-dark":"",o),ref:n,children:e})})}),Zd=s(()=>n2(Vl),"useTheme");import*as qd from"react";import*as Fl from"@radix-ui/react-toggle";import{cva as i2}from"class-variance-authority";import{jsx as s2}from"react/jsx-runtime";var Ol=i2("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 data-[state=on]:dark:courier-text-white [&_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"}}),a2=qd.forwardRef(({className:e,variant:t,size:r,...o},n)=>s2(Fl.Root,{ref:n,className:I(Ol({variant:t,size:r,className:e})),...o}));a2.displayName=Fl.Root.displayName;import*as Go from"@radix-ui/react-toggle-group";import*as Co from"react";import{jsx as Ul}from"react/jsx-runtime";var Jd=Co.createContext({size:"default",variant:"default"}),Gt=Co.forwardRef(({className:e,variant:t,size:r,children:o,...n},i)=>Ul(Go.Root,{ref:i,className:I("courier-flex courier-items-center courier-justify-center courier-gap-1",e),...n,children:Ul(Jd.Provider,{value:{variant:t,size:r},children:o})}));Gt.displayName=Go.Root.displayName;var dt=Co.forwardRef(({className:e,children:t,variant:r,size:o,...n},i)=>{let a=Co.useContext(Jd);return Ul(Go.Item,{ref:i,className:I(Ol({variant:a.variant||r,size:a.size||o}),e),...n,children:t})});dt.displayName=Go.Item.displayName;import{jsx as Wl}from"react/jsx-runtime";var Ee=s(({colorProp:e,color:t,active:r,className:o,...n})=>e==="stroke"?Wl("path",{className:I(!t&&(r?"courier-stroke-accent-foreground":"courier-stroke-ring"),o),...n}):Wl("path",{className:I(!t&&(r?"courier-fill-accent-foreground":"courier-fill-ring"),o),...n}),"Path"),z=s(({width:e=28,height:t=28,...r})=>Wl("svg",{width:e,height:t,viewBox:`0 0 ${e} ${t}`,fill:"none",...r}),"Icon");import{jsx as _l,jsxs as l2}from"react/jsx-runtime";var jd=s(({color:e="#000000",width:t=19,height:r=10,...o})=>l2(z,{...o,width:t,height:r,children:[_l("rect",{opacity:"0.6",x:"0.553621",y:"0.876863",width:"16.4923",height:"7.87692",rx:"1.6",stroke:e,strokeWidth:"0.738462"}),_l("rect",{opacity:"0.9",x:"1.41528",y:"1.73828",width:"14.7692",height:"6.15385",rx:"0.984615",fill:e}),_l("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 Kd}from"react/jsx-runtime";var Xn=s(({color:e="#DC2626",width:t=13,height:r=13,...o})=>Kd(z,{...o,fill:"none",width:t,height:r,children:Kd("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 Gd}from"react/jsx-runtime";var Qn=s(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>Gd(z,{...n,width:r,height:o,children:Gd(Ee,{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 zl,jsxs as c2}from"react/jsx-runtime";var Ar=s(({color:e="#A3A3A3",width:t=16,height:r=16,...o})=>c2(z,{...o,width:t,height:r,children:[zl("rect",{y:"2.25",width:"16",height:"1.5",rx:"0.75",fill:e}),zl("rect",{y:"5.75",width:"16",height:"2.5",rx:"1.25",fill:e}),zl("rect",{y:"10.25",width:"16",height:"3.5",rx:"1.75",fill:e})]}),"BorderWidthIcon");import{jsx as Yd}from"react/jsx-runtime";var $l=s(({color:e,width:t=21,height:r=16,...o})=>Yd(z,{...o,width:t,height:r,children:Yd("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 Xd}from"react/jsx-runtime";var Zl=s(({color:e="#171717",width:t=12,height:r=13,...o})=>Xd(z,{...o,fill:"none",width:t,height:r,children:Xd("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 Qd}from"react/jsx-runtime";var ql=s(({color:e="#404040",width:t=20,height:r=15,viewBox:o="0 0 20 15",...n})=>Qd(z,{...n,width:t,height:r,viewBox:o,children:Qd("path",{d:"M1.875 0H18.125C19.1406 0 20 0.859375 20 1.875C20 2.5 19.6875 3.04688 19.2188 3.39844L10.7422 9.76562C10.2734 10.1172 9.6875 10.1172 9.21875 9.76562L0.742188 3.39844C0.273438 3.04688 0 2.5 0 1.875C0 0.859375 0.820312 0 1.875 0ZM0 4.375L8.47656 10.7812C9.375 11.4453 10.5859 11.4453 11.4844 10.7812L20 4.375V12.5C20 13.9062 18.8672 15 17.5 15H2.5C1.09375 15 0 13.9062 0 12.5V4.375Z",fill:e})}),"EmailIcon");import{jsx as em}from"react/jsx-runtime";var ei=s(({color:e="#737373",width:t=16,height:r=16,...o})=>em(z,{...o,width:t,height:r,children:em(Ee,{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 tm}from"react/jsx-runtime";var ti=s(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>tm(z,{...n,width:r,height:o,children:tm(Ee,{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 rm}from"react/jsx-runtime";var Jl=s(({color:e="#737373",width:t=14,height:r=16,...o})=>rm(z,{...o,width:t,height:r,children:rm(Ee,{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 om}from"react/jsx-runtime";var ri=s(({color:e="#404040",width:t=24,height:r=24,...o})=>om(z,{...o,width:t,height:r,children:om("path",{d:"M2 5.75C2 4.38281 3.09375 3.25 4.5 3.25H19.5C20.8672 3.25 22 4.38281 22 5.75V8.25V10.125V10.75V18.25C22 19.6562 20.8672 20.75 19.5 20.75H4.5C3.09375 20.75 2 19.6562 2 18.25V10.75V10.125V8.25V5.75ZM20.125 10.75H3.875V18.25C3.875 18.6016 4.14844 18.875 4.5 18.875H19.5C19.8125 18.875 20.125 18.6016 20.125 18.25V10.75ZM5.75 8.25C6.41406 8.25 7 7.70312 7 7C7 6.33594 6.41406 5.75 5.75 5.75C5.04688 5.75 4.5 6.33594 4.5 7C4.5 7.70312 5.04688 8.25 5.75 8.25ZM10.75 7C10.75 6.33594 10.1641 5.75 9.5 5.75C8.79688 5.75 8.25 6.33594 8.25 7C8.25 7.70312 8.79688 8.25 9.5 8.25C10.1641 8.25 10.75 7.70312 10.75 7ZM13.25 8.25C13.9141 8.25 14.5 7.70312 14.5 7C14.5 6.33594 13.9141 5.75 13.25 5.75C12.5469 5.75 12 6.33594 12 7C12 7.70312 12.5469 8.25 13.25 8.25Z",fill:e})}),"InboxIcon");import{jsx as nm}from"react/jsx-runtime";var oi=s(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>nm(z,{...n,width:r,height:o,children:nm(Ee,{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 im}from"react/jsx-runtime";var ni=s(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>im(z,{...n,width:r,height:o,children:im(Ee,{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 am}from"react/jsx-runtime";var jl=s(({color:e="#404040",width:t=20,height:r=21,viewBox:o="0 0 256 239",...n})=>am(z,{...n,width:t,height:r,viewBox:o,children:am("path",{d:"M244.688 89.3027C250.936 89.3028 256 94.367 256 100.614V160.846C256 183.806 237.387 202.419 214.427 202.419H214.23C207.916 202.42 201.932 201.009 196.571 198.491C186.31 221.332 163.63 237.486 136.931 238.14C107.972 237.431 83.7409 218.49 74.9551 192.558H120.063C130.509 192.558 138.977 184.09 138.977 173.645V89.3027H244.688ZM120.082 53.5811C120.127 53.5812 120.172 53.5842 120.217 53.585C125.988 53.6645 130.676 58.2209 130.962 63.9395C130.971 64.1173 130.976 64.2966 130.977 64.4766V173.646C130.976 179.672 126.09 184.558 120.063 184.558H10.9131C4.88618 184.558 9.07128e-05 179.672 0 173.646V64.4941C0 58.4673 4.88624 53.5811 10.9131 53.5811H120.082ZM36.7686 95.125H58.4873V154.541H72.3887V95.125H94.208V83.5986H36.7686V95.125ZM139.907 0C161.279 0.000200803 178.604 17.3254 178.604 38.6973C178.604 60.0693 161.279 77.3953 139.907 77.3955C139.596 77.3955 139.286 77.3901 138.977 77.3828V64.4941C138.976 54.0493 130.509 45.5811 120.063 45.5811H101.82C101.419 43.3471 101.209 41.0467 101.209 38.6973C101.209 17.3253 118.535 0 139.907 0ZM223.256 23.8145C238.052 23.8145 250.047 35.8085 250.047 50.6045C250.047 65.4005 238.052 77.3954 223.256 77.3955C208.46 77.3955 196.465 65.4006 196.465 50.6045C196.465 35.8085 208.46 23.8145 223.256 23.8145Z",fill:e})}),"MSTeamsIcon");import{jsx as sm}from"react/jsx-runtime";var ii=s(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>sm(z,{...n,width:r,height:o,children:sm(Ee,{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 Kl}from"react/jsx-runtime";var Gl=s(({color:e,width:t=21,height:r=16,...o})=>Kl(z,{...o,width:t,height:r,children:Kl("g",{transform:"translate(4, 0)",children:Kl("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 lm}from"react/jsx-runtime";var Yl=s(({color:e="#737373",width:t=14,height:r=16,...o})=>lm(z,{...o,width:t,height:r,children:lm(Ee,{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 cm}from"react/jsx-runtime";var ai=s(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>cm(z,{...n,width:r,height:o,children:cm(Ee,{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 um}from"react/jsx-runtime";var vo=s(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>um(z,{...n,width:r,height:o,children:um(Ee,{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 dm,jsxs as u2}from"react/jsx-runtime";var Xl=s(({width:e=20,height:t=21,viewBox:r="0 0 20 21",...o})=>u2(z,{...o,width:e,height:t,viewBox:r,children:[dm("path",{d:"M15 4.625H2.5C2.14844 4.625 1.875 4.9375 1.875 5.25V17.75C1.875 18.1016 2.14844 18.375 2.5 18.375H15C15.3125 18.375 15.625 18.1016 15.625 17.75V5.25C15.625 4.9375 15.3125 4.625 15 4.625ZM2.5 2.75H15C16.3672 2.75 17.5 3.88281 17.5 5.25V17.75C17.5 19.1562 16.3672 20.25 15 20.25H2.5C1.09375 20.25 0 19.1562 0 17.75V5.25C0 3.88281 1.09375 2.75 2.5 2.75Z",fill:"currentColor"}),dm("circle",{cx:"2",cy:"2",r:"3",transform:"matrix(-1 0 0 1 17.75 2)",fill:"currentColor",stroke:"white",strokeWidth:"2"})]}),"PushIcon");import{jsx as mm}from"react/jsx-runtime";var Ql=s(({color:e="#171717",width:t=16,height:r=13,...o})=>mm(z,{...o,fill:"none",width:t,height:r,children:mm("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 pm}from"react/jsx-runtime";var ec=s(({color:e="#171717",width:t=11,height:r=12,...o})=>pm(z,{...o,width:t,height:r,children:pm(Ee,{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 fm}from"react/jsx-runtime";var tc=s(({color:e="#404040",width:t=24,height:r=24,...o})=>fm(z,{...o,width:t,height:r,children:fm("path",{d:"M6.80469 17.3125C7.3125 16.9219 7.97656 16.8438 8.5625 17.0391C9.57812 17.4297 10.75 17.625 12 17.625C16.8438 17.625 20.125 14.5 20.125 11.375C20.125 8.28906 16.8438 5.125 12 5.125C7.11719 5.125 3.875 8.28906 3.875 11.375C3.875 12.625 4.34375 13.8359 5.24219 14.8906C5.59375 15.2422 5.75 15.75 5.71094 16.2578C5.67188 16.9609 5.47656 17.625 5.28125 18.2109C5.94531 17.8984 6.49219 17.5469 6.80469 17.3125ZM2.82031 18.875C2.89844 18.7969 2.9375 18.6797 3.01562 18.5625C3.40625 17.9375 3.75781 17.0781 3.83594 16.1016C2.66406 14.7734 2 13.1719 2 11.375C2 6.92188 6.45312 3.25 12 3.25C17.5078 3.25 22 6.92188 22 11.375C22 15.8672 17.5078 19.5 12 19.5C10.5156 19.5 9.14844 19.2656 7.89844 18.8359C7.46875 19.1484 6.6875 19.6172 5.78906 20.0078C5.20312 20.2812 4.53906 20.5156 3.83594 20.6328C3.79688 20.6328 3.75781 20.6719 3.75781 20.6719C3.5625 20.7109 3.40625 20.7109 3.21094 20.75C3.01562 20.75 2.82031 20.7891 2.58594 20.7891C2.35156 20.7891 2.11719 20.6328 2.03906 20.3984C1.92188 20.1641 2 19.8906 2.15625 19.6953C2.3125 19.5391 2.46875 19.3828 2.58594 19.1875C2.66406 19.0703 2.74219 18.9922 2.78125 18.9141V18.875H2.82031Z",fill:e})}),"SMSIcon");import{jsx as si,jsxs as d2}from"react/jsx-runtime";var gm=s(({color:e="#000000",width:t=14,height:r=9,...o})=>si(z,{...o,width:t,height:r,children:d2("g",{opacity:"0.9",children:[si("rect",{x:"0.799805",y:"5.92188",width:"2.46154",height:"2.95385",rx:"0.246154",fill:e}),si("rect",{x:"4.24609",y:"4.44531",width:"2.46154",height:"4.43077",rx:"0.246154",fill:e}),si("rect",{x:"7.93823",y:"2.72266",width:"2.46154",height:"6.15385",rx:"0.246154",fill:e}),si("rect",{x:"11.3845",y:"0.753906",width:"2.46154",height:"8.12308",rx:"0.246154",fill:e})]})}),"SignalIcon");import{jsx as hm}from"react/jsx-runtime";var rc=s(({color:e="#404040",width:t=16,height:r=16,...o})=>hm(z,{...o,width:t,height:r,children:hm("path",{d:"M3.5 10C3.5 10.8281 2.8125 11.5 2 11.5C1.16406 11.5 0.5 10.8281 0.5 10C0.5 9.19531 1.16406 8.5 2 8.5H3.5V10ZM4.25 10C4.25 9.19531 4.91406 8.5 5.75 8.5C6.5625 8.5 7.25 9.19531 7.25 10V14C7.25 14.8281 6.5625 15.5 5.75 15.5C4.91406 15.5 4.25 14.8281 4.25 14V10ZM5.75 3.5C4.91406 3.5 4.25 2.83594 4.25 2C4.25 1.1875 4.91406 0.5 5.75 0.5C6.5625 0.5 7.25 1.1875 7.25 2V3.5H5.75ZM5.75 4.25C6.5625 4.25 7.25 4.91406 7.25 5.75C7.25 6.5625 6.5625 7.25 5.75 7.25H2C1.16406 7.25 0.5 6.5625 0.5 5.75C0.5 4.91406 1.16406 4.25 2 4.25H5.75ZM12.5 5.75C12.5 4.91406 13.1641 4.25 14 4.25C14.8125 4.25 15.5 4.91406 15.5 5.75C15.5 6.5625 14.8125 7.25 14 7.25H12.5V5.75ZM11.75 5.75C11.75 6.5625 11.0859 7.25 10.25 7.25C9.41406 7.25 8.75 6.5625 8.75 5.75V2C8.75 1.1875 9.41406 0.5 10.25 0.5C11.0859 0.5 11.75 1.1875 11.75 2V5.75ZM10.25 12.5C11.0859 12.5 11.75 13.1641 11.75 14C11.75 14.8125 11.0859 15.5 10.25 15.5C9.41406 15.5 8.75 14.8125 8.75 14V12.5H10.25ZM10.25 11.75C9.41406 11.75 8.75 11.0859 8.75 10.25C8.75 9.41406 9.41406 8.75 10.25 8.75H14C14.8125 8.75 15.5 9.41406 15.5 10.25C15.5 11.0859 14.8125 11.75 14 11.75H10.25Z",fill:e})}),"SlackIcon");import{jsx as bm}from"react/jsx-runtime";var li=s(({color:e="#FFFFFF",width:t=24,height:r=24,...o})=>bm(z,{...o,width:t,height:r,viewBox:"0 0 24 24",children:bm("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M15.9302 18.0041C16.7152 19.4687 17.3201 20.6536 17.6716 21.4225C22.7992 18.3395 24.5289 11.7034 21.525 6.5012C18.5211 1.29895 11.9084 -0.521541 6.67543 2.3769C7.30667 3.26444 8.32896 4.86524 9.56215 6.89518C10.4351 8.33194 11.4134 9.98401 12.4328 11.7503C13.7758 14.0761 14.9841 16.2422 15.9302 18.0041ZM4.20759 16.4985C2.25528 13.1182 1.73242 9.41428 2.51159 6.43383C0.579784 9.73503 0.426001 13.9501 2.47497 17.4989C4.52394 21.0476 8.25134 23.0233 12.0769 22.9999C9.1052 22.1856 6.1599 19.8803 4.20759 16.4985ZM1.6094 17.9983C4.92231 23.738 12.2599 25.7035 17.9997 22.3906C23.738 19.0777 25.7035 11.7401 22.3906 6.00031C19.0776 0.262019 11.74 -1.70347 6.00172 1.60945C0.261966 4.92236 -1.70352 12.26 1.6094 17.9983ZM11.1249 21.6085C12.4884 22.1914 13.8534 22.4228 15.1188 22.2896C12.7711 21.2717 9.91951 18.3937 7.66989 14.4994C5.42174 10.605 4.35551 6.69599 4.6499 4.15492C3.90002 5.18306 3.41817 6.48069 3.24096 7.95408C2.94364 10.4131 3.51483 13.2999 5.07317 15.9991C6.6315 18.6998 8.84597 20.636 11.1249 21.6085ZM16.913 21.6876C16.6889 21.6993 16.4238 21.67 16.1089 21.5836C15.4513 21.402 14.6604 20.9861 13.7875 20.3197C12.0461 18.9898 10.1436 16.7827 8.53694 13.9999C6.92881 11.2157 5.9695 8.46376 5.6883 6.29176C5.62971 5.83334 5.60188 5.41008 5.60188 5.02342C5.60188 4.49324 5.65461 4.03335 5.7542 3.65109C5.89334 3.11945 6.10278 2.78845 6.33565 2.59219C7.11481 4.29259 9.11545 8.00387 11.5672 12.2497C14.0189 16.4956 16.2319 20.0853 17.3157 21.61C17.2 21.651 17.0667 21.6788 16.913 21.6876Z",fill:e})}),"UnionIcon");import{jsx as ym}from"react/jsx-runtime";var ci=s(({color:e="#A3A3A3",width:t=24,height:r=24,...o})=>ym(z,{...o,width:t,height:r,children:ym(Ee,{d:"M12 12C10.2031 12 8.5625 11.0625 7.66406 9.5C6.76562 7.97656 6.76562 6.0625 7.66406 4.5C8.5625 2.97656 10.2031 2 12 2C13.7578 2 15.3984 2.97656 16.2969 4.5C17.1953 6.0625 17.1953 7.97656 16.2969 9.5C15.3984 11.0625 13.7578 12 12 12ZM10.2031 13.875H13.7578C17.625 13.875 20.75 17 20.75 20.8672C20.75 21.4922 20.2031 22 19.5781 22H4.38281C3.75781 22 3.25 21.4922 3.25 20.8672C3.25 17 6.33594 13.875 10.2031 13.875Z",fill:e})}),"UserIcon");import{jsx as Cm}from"react/jsx-runtime";var vm=s(({width:e=24,height:t=20,...r})=>Cm(z,{...r,width:e,height:t,viewBox:"0 0 24 20",children:Cm("path",{d:"M6 1H5C4.46957 1 3.96086 1.21071 3.58579 1.58579C3.21071 1.96086 3 2.46957 3 3V8C3 8.53043 2.78929 9.03914 2.41421 9.41421C2.03914 9.78929 1.53043 10 1 10C1.53043 10 2.03914 10.2107 2.41421 10.5858C2.78929 10.9609 3 11.4696 3 12V17C3 18.1 3.9 19 5 19H6M18 19H19C19.5304 19 20.0391 18.7893 20.4142 18.4142C20.7893 18.0391 21 17.5304 21 17V12C21 10.9 21.9 10 23 10C22.4696 10 21.9609 9.78929 21.5858 9.41421C21.2107 9.03914 21 8.53043 21 8V3C21 2.46957 20.7893 1.96086 20.4142 1.58579C20.0391 1.21071 19.5304 1 19 1H18M10 16.5C10 16.7761 9.77614 17 9.5 17C9.22386 17 9 16.7761 9 16.5C9 16.2239 9.22386 16 9.5 16C9.77614 16 10 16.2239 10 16.5ZM15 16.5C15 16.7761 14.7761 17 14.5 17C14.2239 17 14 16.7761 14 16.5C14 16.2239 14.2239 16 14.5 16C14.7761 16 15 16.2239 15 16.5Z",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})}),"VariableIcon");import{jsx as ga,jsxs as m2}from"react/jsx-runtime";var xm=s(({color:e="#000000",width:t=14,height:r=10,...o})=>ga(z,{...o,width:t,height:r,children:m2("g",{opacity:"0.9",children:[ga("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}),ga("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}),ga("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 Tm}from"react/jsx-runtime";var ui=s(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>Tm(z,{...n,width:r,height:o,children:Tm(Ee,{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 p2}from"lucide-react";import{useEffect as f2,useState as g2,useRef as Em}from"react";import{jsx as oc}from"react/jsx-runtime";var xo=s(({className:e})=>oc("div",{className:I("courier-flex courier-flex-col courier-items-center courier-justify-center courier-text-ring",e),children:oc("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:oc("path",{d:"M21 12a9 9 0 1 1-6.219-8.56"})})}),"Loader");import{jsx as nc,jsxs as km}from"react/jsx-runtime";var di=s(({isError:e,isSaving:t,isLoading:r,renderIsSaving:o,renderIsError:n,renderSaved:i})=>{let[a,l]=g2(!1),c=Em(t),u=Em(null);return f2(()=>(r||e||t&&t!==c.current?(u.current&&(clearTimeout(u.current),u.current=null),l(!1)):c.current===!0&&t===!1&&!e&&!r&&(l(!0),u.current&&clearTimeout(u.current),u.current=setTimeout(()=>{l(!1),u.current=null},5e3)),c.current=t,()=>{u.current&&clearTimeout(u.current)}),[t,e,r]),r||t===null?null:t?o?o(t):km("div",{className:"courier-h-12 courier-flex courier-items-center courier-px-4 courier-text-xs courier-gap-1",children:[nc(xo,{className:"courier-w-4 courier-h-4"}),"Saving..."]}):e?n?n(e):nc("div",{className:"courier-h-12 courier-flex courier-items-center courier-px-4 courier-text-xs courier-gap-1",children:"Error"}):a?i?i(a):km("div",{className:"courier-h-12 courier-flex courier-items-center courier-px-4 courier-text-xs courier-gap-1",children:[nc(p2,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Saved"]}):null},"Status");import{atom as wm}from"jotai";import{jsx as Yo}from"react/jsx-runtime";var To=[{label:"Email",value:"email",icon:Yo(ql,{})},{label:"SMS",value:"sms",icon:Yo(tc,{})},{label:"Push",value:"push",icon:Yo(Xl,{})},{label:"In-app",value:"inbox",icon:Yo(ri,{})},{label:"Slack",value:"slack",icon:Yo(rc,{})},{label:"Teams",value:"msteams",icon:Yo(jl,{})}];var qr=wm("email"),Xo=wm("template");import{AlertDialogDescription as A4}from"@radix-ui/react-alert-dialog";import{useAtom as I4,useAtomValue as Ks,useSetAtom as S4}from"jotai";import{useCallback as Wi,useEffect as R4,useRef as L4}from"react";import{atom as Nt}from"jotai";var ic={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"}},ha=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 h2={paragraph:ic,heading:ic},mi=Nt(h2),fe=Nt(null),Le=Nt(null,(e,t,r)=>{t(fe,r)}),b2=Nt({ref:null,caretPosition:null}),ba=Nt({ref:null,caretPosition:null}),pi=Nt({isFocused:!1,hasVariables:!1,showVariablePopup:!1}),Pm=Nt(e=>(t,r=!1)=>{let o=e(mi),n=e(pi),i=ha(t,r),a=o[t],l=i;return a&&Object.keys(a).forEach(c=>{var p,m;let u=c;u!=="conditionalRules"&&((p=i[u])==null?void 0:p.state)==="enabled"&&((m=a[u])==null?void 0:m.state)==="enabled"&&(l[u]=a[u])}),n.isFocused&&n.hasVariables&&(l={...l,variable:{state:"enabled"}}),l}),Nm=Nt(null,(e,t,{nodeName:r,config:o})=>{let n=e(mi);t(mi,{...n,[r]:{...n[r],...Object.fromEntries(Object.entries(o).filter(([i])=>i!=="conditionalRules").map(([i,a])=>[i,{state:!Array.isArray(a)&&(a!=null&&a.state)?a.state:"hidden"}]))}})}),nk=Nt(null,(e,t,r)=>{let o=e(mi),{[r]:n,...i}=o;t(mi,i)}),Mm=Nt(null,(e,t,{ref:r,caretPosition:o})=>{t(b2,{ref:r,caretPosition:o})}),ik=Nt(null,(e,t,r)=>{let o=e(pi);t(pi,{...o,showVariablePopup:r})}),ac=Nt(null),ya=Nt(null,(e,t,r)=>{t(ac,r)});import{useAtom as w4,useAtomValue as ag,useSetAtom as Gu}from"jotai";import{useCallback as sg,useEffect as Yu,useMemo as lg,useRef as P4,useState as N4}from"react";import{atom as Am}from"jotai";var Yt=Am(null),ur=Am(null);import{forwardRef as y2}from"react";import{Toaster as C2}from"sonner";import{jsx as fi,jsxs as v2}from"react/jsx-runtime";var bt=y2(({theme:e,children:t,isLoading:r,Header:o,colorScheme:n,className:i,...a},l)=>fi($d,{theme:e,ref:l,colorScheme:n,className:i,children:v2("div",{...Object.fromEntries(Object.entries(a).filter(([c])=>c!=="variables"&&c!=="brandEditor")),className:"courier-main-layout",children:[o&&fi("div",{className:"courier-main-header 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-background",children:o}),r&&fi("div",{className:"courier-editor-loading",children:fi(xo,{})}),fi(C2,{position:"top-center",expand:!0,visibleToasts:2,style:{position:"absolute",top:"10px",left:"50%",transform:"translateX(-50%)"}}),t]})}));import{useAtom as lu,useAtomValue as no,useSetAtom as nC}from"jotai";import{forwardRef as iC,memo as aC,useCallback as s1,useEffect as Dr,useMemo as l1,useRef as Ai,useState as cu}from"react";function Im(e){if(Array.isArray(e))return e}s(Im,"_arrayWithHoles");function Sm(e,t){var r=e==null?null:typeof Symbol!="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(r!=null){var o,n,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,t===0){if(Object(r)!==r)return;c=!1}else for(;!(c=(o=i.call(r)).done)&&(l.push(o.value),l.length!==t);c=!0);}catch(p){u=!0,n=p}finally{try{if(!c&&r.return!=null&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw n}}return l}}s(Sm,"_iterableToArrayLimit");function gi(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,o=Array(t);r<t;r++)o[r]=e[r];return o}s(gi,"_arrayLikeToArray");function Ca(e,t){if(e){if(typeof e=="string")return gi(e,t);var r={}.toString.call(e).slice(8,-1);return r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set"?Array.from(e):r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?gi(e,t):void 0}}s(Ca,"_unsupportedIterableToArray");function Rm(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
196
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}
|
|
197
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}
|
|
198
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var i,
|
|
199
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var i,a=!0,l=!1;return{s:s(function(){r=r.call(e)},"s"),n:s(function(){var u=r.next();return a=u.done,u},"n"),e:s(function(u){l=!0,i=u},"e"),f:s(function(){try{a||r.return==null||r.return()}finally{if(l)throw i}},"f")}}s(W2,"_createForOfIteratorHelper");function _2(e,t){if(e){if(typeof e=="string")return sp(e,t);var r={}.toString.call(e).slice(8,-1);return r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set"?Array.from(e):r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?sp(e,t):void 0}}s(_2,"_unsupportedIterableToArray");function sp(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,o=Array(t);r<t;r++)o[r]=e[r];return o}s(sp,"_arrayLikeToArray");function lp(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),r.push.apply(r,o)}return r}s(lp,"ownKeys");function z2(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?lp(Object(r),!0).forEach(function(o){Ir(e,o,r[o])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):lp(Object(r)).forEach(function(o){Object.defineProperty(e,o,Object.getOwnPropertyDescriptor(r,o))})}return e}s(z2,"_objectSpread");function cp(){var e=new Set,t=null;function r(i){t&&(!i.canMonitor||i.canMonitor(t.canMonitorArgs))&&t.active.add(i)}s(r,"tryAddToActive");function o(i){var a=z2({},i);e.add(a),r(a);function l(){e.delete(a),t&&t.active.delete(a)}return s(l,"cleanup"),Ht(l)}s(o,"monitorForConsumers");function n(i){var a=i.eventName,l=i.payload;if(a==="onGenerateDragPreview"){t={canMonitorArgs:{initial:l.location.initial,source:l.source},active:new Set};var c=W2(e),u;try{for(c.s();!(u=c.n()).done;){var p=u.value;r(p)}}catch(b){c.e(b)}finally{c.f()}}if(t){for(var m=Array.from(t.active),d=0,f=m;d<f.length;d++){var C=f[d];if(t.active.has(C)){var h;(h=C[a])===null||h===void 0||h.call(C,l)}}a==="onDrop"&&(t.active.clear(),t=null)}}return s(n,"dispatchEvent"),{dispatchEvent:n,monitorForConsumers:o}}s(cp,"makeMonitor");function up(e){var t=e.typeKey,r=e.mount,o=e.dispatchEventToSource,n=e.onPostDispatch,i=e.defaultDropEffect,a=cp(),l=ap({typeKey:t,defaultDropEffect:i});function c(m){o==null||o(m),l.dispatchEvent(m),a.dispatchEvent(m),n==null||n(m)}s(c,"dispatchEvent");function u(m){var d=m.event,f=m.dragType;mc.start({event:d,dragType:f,getDropTargetsOver:l.getIsOver,dispatchEvent:c})}s(u,"start");function p(){function m(){var d={canStart:mc.canStart,start:u};return r(d)}return s(m,"mountAdapter"),op({typeKey:t,mount:m})}return s(p,"registerUsage"),{registerUsage:p,dropTarget:l.dropTargetForConsumers,monitor:a.monitorForConsumers}}s(up,"makeAdapter");var dp=Ht(s(function(){return navigator.userAgent.toLocaleLowerCase().includes("android")},"isAndroid")),mp="pdnd:android-fallback";var hc="text/plain";var pp="text/uri-list";var fp="application/vnd.pdnd";var Ma=new WeakMap;function $2(e){return Ma.set(e.element,e),s(function(){Ma.delete(e.element)},"cleanup")}s($2,"addToRegistry");var gp=zm(),bc=up({typeKey:"element",defaultDropEffect:"move",mount:s(function(t){return dr(gp.bindEvents(),(0,hp.bind)(document,{type:"dragstart",listener:s(function(o){var n,i,a,l,c,u;if(t.canStart(o)&&!o.defaultPrevented&&o.dataTransfer){var p=o.target;if(p instanceof HTMLElement){var m=Ma.get(p);if(m){var d=ko(o),f={element:m.element,dragHandle:(n=m.dragHandle)!==null&&n!==void 0?n:null,input:d};if(m.canDrag&&!m.canDrag(f)){o.preventDefault();return}if(m.dragHandle){var C=ka({x:d.clientX,y:d.clientY});if(!m.dragHandle.contains(C)){o.preventDefault();return}}var h=(i=(a=m.getInitialDataForExternal)===null||a===void 0?void 0:a.call(m,f))!==null&&i!==void 0?i:null;if(h)for(var b=0,v=Object.entries(h);b<v.length;b++){var E=va(v[b],2),g=E[0],w=E[1];o.dataTransfer.setData(g,w!=null?w:"")}dp()&&!o.dataTransfer.types.includes(hc)&&!o.dataTransfer.types.includes(pp)&&o.dataTransfer.setData(hc,mp),o.dataTransfer.setData(fp,"");var N={element:m.element,dragHandle:(l=m.dragHandle)!==null&&l!==void 0?l:null,data:(c=(u=m.getInitialData)===null||u===void 0?void 0:u.call(m,f))!==null&&c!==void 0?c:{}},y={type:"element",payload:N,startedFrom:"internal"};t.start({event:o,dragType:y})}}}},"listener")}))},"mount"),dispatchEventToSource:s(function(t){var r,o,n=t.eventName,i=t.payload;(r=Ma.get(i.source.element))===null||r===void 0||(o=r[n])===null||o===void 0||o.call(r,i)},"dispatchEventToSource"),onPostDispatch:gp.getOnPostDispatch()}),Mt=bc.dropTarget,yc=bc.monitor;function vi(e){if(0)var t;var r=dr(bc.registerUsage(),$2(e),Na(e.element,{attribute:"draggable",value:"true"}));return Ht(r)}s(vi,"draggable");function bp(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),r.push.apply(r,o)}return r}s(bp,"ownKeys");function yp(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?bp(Object(r),!0).forEach(function(o){Ir(e,o,r[o])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):bp(Object(r)).forEach(function(o){Object.defineProperty(e,o,Object.getOwnPropertyDescriptor(r,o))})}return e}s(yp,"_objectSpread");var Z2={top:s(function(t,r){return Math.abs(r.y-t.top)},"top"),right:s(function(t,r){return Math.abs(t.right-r.x)},"right"),bottom:s(function(t,r){return Math.abs(t.bottom-r.y)},"bottom"),left:s(function(t,r){return Math.abs(r.x-t.left)},"left")},Cp=Symbol("closestEdge");function vp(e,t){var r,o,n=t.element,i=t.input,a=t.allowedEdges,l={x:i.clientX,y:i.clientY},c=n.getBoundingClientRect(),u=a.map(function(m){return{edge:m,value:Z2[m](c,l)}}),p=(r=(o=u.sort(function(m,d){return m.value-d.value})[0])===null||o===void 0?void 0:o.edge)!==null&&r!==void 0?r:null;return yp(yp({},e),{},Ir({},Cp,p))}s(vp,"attachClosestEdge");function xi(e){var t;return(t=e[Cp])!==null&&t!==void 0?t:null}s(xi,"extractClosestEdge");import{mergeAttributes as G3}from"@tiptap/core";import{Node as q2,mergeAttributes as J2,wrappingInputRule as j2}from"@tiptap/core";var K2=/^\s*>\s$/,xp=q2.create({name:"blockquote",addOptions(){return{HTMLAttributes:{}}},content:"block+",group:"block",defining:!0,parseHTML(){return[{tag:"blockquote"}]},renderHTML({HTMLAttributes:e}){return["blockquote",J2(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[j2({find:K2,type:this.type})]}});import{ReactNodeViewRenderer as Y3}from"@tiptap/react";import{v4 as G2}from"uuid";function ze(e,t){let r=e.state.tr,o=!1;e.state.doc.descendants((n,i)=>{if(n.type.name===t&&!n.attrs.id){let a=`node-${G2()}`;r.setNodeMarkup(i,void 0,{...n.attrs,id:a}),o=!0}return!1}),o&&e.view.dispatch(r)}s(ze,"generateNodeIds");import{NodeViewWrapper as D3}from"@tiptap/react";import{useSetAtom as H3}from"jotai";import{forwardRef as V3,useCallback as Do,useEffect as su,useState as Ms,useRef as oo}from"react";import{v4 as F3}from"uuid";import{Color as jf}from"@tiptap/extension-color";import{Extension as Y2}from"@tiptap/core";import{dropCursor as X2}from"@tiptap/pm/dropcursor";var Cc=Y2.create({name:"dropCursor",addOptions(){return{color:"currentColor",width:1,class:void 0}},addProseMirrorPlugins(){return[X2(this.options)]}});import{HardBreak as Kf}from"@tiptap/extension-hard-break";import{Extension as Q2}from"@tiptap/core";import{undo as eh,redo as th,history as rh}from"@tiptap/pm/history";var oh=Q2.create({name:"history",addOptions(){return{depth:100,newGroupDelay:500}},addCommands(){return{undo:()=>({state:e,dispatch:t})=>eh(e,t),redo:()=>({state:e,dispatch:t})=>th(e,t)}},addProseMirrorPlugins(){return[rh(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 Gf}from"@tiptap/extension-placeholder";import{TextAlign as Yf}from"@tiptap/extension-text-align";import{Typography as Xf}from"@tiptap/extension-typography";import{Underline as Qf}from"@tiptap/extension-underline";import{StarterKit as e1}from"@tiptap/starter-kit";import{zodResolver as fb}from"@hookform/resolvers/zod";import{useForm as gb}from"react-hook-form";import{useCallback as nh,useEffect as ih,useRef as Tp}from"react";var Qe=s(({editor:e,element:t,form:r,nodeType:o})=>{let n=Tp(null),i=Tp(null);return ih(()=>{if(!e||!t)return;let l=s(()=>{let c=null;if(e.state.doc.descendants((u,p)=>u.attrs.id===t.attrs.id?(c=p,!1):!0),c!==null){let u=e.state.doc.nodeAt(c);(u==null?void 0:u.type.name)===o&&(n.current=u,i.current=c,Object.entries(u.attrs).forEach(([p,m])=>{r.getValues(p)!==m&&r.setValue(p,m)}))}},"updateCurrentNode");return l(),e.on("update",l),()=>{e.off("update",l)}},[e,t,r,o]),{updateNodeAttributes:nh(l=>{if(!e||i.current===null)return;let c=e.state.doc.nodeAt(i.current);if(!c||c.type.name!==o)return;let u={...c.attrs,...l,id:c.attrs.id};JSON.stringify(c.attrs)!==JSON.stringify(u)&&e.chain().command(({tr:m,dispatch:d})=>{let f=m.doc.nodeAt(i.current);return(f==null?void 0:f.type.name)===o&&d?(m.setNodeMarkup(i.current,f.type,u),m.setMeta("addToHistory",!0),!0):!1}).run()},[e,o])}},"useNodeAttributes");import{useAtomValue as Ia,useSetAtom as lh}from"jotai";import{useMemo as kp,useCallback as wp}from"react";var Aa=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,...Aa(n,i)]:[...r,i]},[]),"getFlattenedVariables");var ah={link:["href","content"],img:["src","href","alt_text"],image:["src","href","alt_text"],action:["href","content"],meta:["title"],list:["imgSrc","imgHref"],quote:["content"],html:[]},sh=["content","href","src","title"],Ep=s((e=[])=>{let t=new Set,r=/\{\{([^}]+)\}\}/g,o=s(i=>{let a=i.matchAll(r);for(let l of a){let c=l[1].trim();c&&Ke(c)&&t.add(c)}},"extractFromString"),n=s(i=>{let a=i;a.type==="string"&&typeof a.content=="string"&&o(a.content),a.type==="text"&&typeof a.content=="string"&&o(a.content);let l=a.type,c=ah[l];c&&c.forEach(u=>{typeof a[u]=="string"&&o(a[u])}),typeof a.if=="string"&&o(a.if),typeof a.loop=="string"&&o(a.loop),a.type==="channel"&&a.raw&&typeof a.raw=="object"&&a.raw!==null&&Object.values(a.raw).forEach(u=>{typeof u=="string"&&o(u)}),a.elements&&Array.isArray(a.elements)&&a.elements.forEach(u=>n(u)),a.locales&&typeof a.locales=="object"&&a.locales!==null&&Object.values(a.locales).forEach(u=>{if(u&&typeof u=="object"){let p=u;sh.forEach(m=>{typeof p[m]=="string"&&o(p[m])}),p.elements&&Array.isArray(p.elements)&&p.elements.forEach(m=>{m&&n(m)}),p.raw&&typeof p.raw=="object"&&p.raw!==null&&Object.values(p.raw).forEach(m=>{typeof m=="string"&&o(m)})}})},"processNode");return e.forEach(i=>n(i)),Array.from(t).sort()},"extractVariablesFromContent");var PN=s(e=>{let t=Ia(Ce),r=Ia(ee),o=Ia(qr),n=Ia(go),i=lh(go),a=e!=null?e:o,l=kp(()=>{var d,f;if(!t)return[];let m=((f=(d=t.extensionManager.extensions.find(C=>C.name==="variableSuggestion"))==null?void 0:d.options)==null?void 0:f.variables)||{};return Aa(m)},[t]),c=kp(()=>{if(!r||!a)return[];let m=r.elements.find(d=>d.type==="channel"&&d.channel===a);return m?Ep(m.elements||[]):[]},[r,a]),u=wp((m,d)=>{i(f=>({...f,[m]:d}))},[i]),p=wp(()=>{i({})},[i]);return{availableVariables:l,usedVariables:c,variableValues:n,addVariableValue:u,clearAllVariableValues:p}},"useVariables");import{useAtom as Xa,useAtomValue as pb}from"jotai";import{useCallback as fr}from"react";import{v4 as db}from"uuid";import{mergeAttributes as ph,Node as fh}from"@tiptap/core";import{ReactNodeViewRenderer as gh}from"@tiptap/react";import{NodeViewContent as ch}from"@tiptap/react";import{useSetAtom as uh}from"jotai";import{useCallback as dh}from"react";import{jsx as rn}from"react/jsx-runtime";var mh=s(({alignment:e,backgroundColor:t,textColor:r,borderRadius:o,padding:n,fontWeight:i,fontStyle:a,children:l})=>rn("div",{className:"courier-w-full node-element",children:rn("div",{className:"courier-flex",children:rn("div",{className:I("courier-inline-flex courier-justify-center courier-cursor-text courier-text-sm courier-leading-tight !courier-my-1",{left:"courier-mr-auto",center:"courier-mx-auto",right:"courier-ml-auto"}[e]),style:{backgroundColor:t,color:r,borderRadius:`${o}px`,caretColor:r,fontWeight:i,fontStyle:a,padding:`${Number(n)+2}px ${Number(n)+10}px`},children:l})})}),"ButtonComponent"),Pp=s(e=>{let t=uh(Le),r=dh(()=>{if(!e.editor.isEditable)return;let o=$e(e);if(o){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 rn(et,{id:e.node.attrs.id,className:I(e.node.attrs.isSelected&&"selected-element"),onClick:r,editor:e.editor,"data-node-type":"button",children:rn(mh,{...e.node.attrs,children:rn(ch,{as:"span"})})})},"ButtonComponentNode");import{v4 as hh}from"uuid";var Se={label:"Button",link:"",alignment:"center",backgroundColor:"#0085FF",borderRadius:0,padding:6,fontWeight:"normal",fontStyle:"normal",isUnderline:!1,isStrike:!1,textColor:"#ffffff",borderColor:"transparent"},Sa=fh.create({name:"button",group:"block",content:"inline*",selectable:!1,isolating:!0,onCreate(){ze(this.editor,this.name)},addAttributes(){return{label:{default:Se.label,parseHTML:e=>e.getAttribute("data-label"),renderHTML:e=>({"data-label":e.label})},link:{default:Se.link,parseHTML:e=>e.getAttribute("data-link"),renderHTML:e=>({"data-link":e.link})},alignment:{default:Se.alignment,parseHTML:e=>e.getAttribute("data-alignment"),renderHTML:e=>({"data-alignment":e.alignment})},backgroundColor:{default:Se.backgroundColor,parseHTML:e=>e.getAttribute("data-background-color"),renderHTML:e=>({"data-background-color":e.backgroundColor})},textColor:{default:Se.textColor,parseHTML:e=>e.getAttribute("data-text-color"),renderHTML:e=>({"data-text-color":e.textColor})},borderRadius:{default:Se.borderRadius,parseHTML:e=>e.getAttribute("data-border-radius"),renderHTML:e=>({"data-border-radius":e.borderRadius})},borderColor:{default:Se.borderColor,parseHTML:e=>e.getAttribute("data-border-color"),renderHTML:e=>({"data-border-color":e.borderColor})},padding:{default:Se.padding,parseHTML:e=>e.getAttribute("data-padding"),renderHTML:e=>({"data-padding":e.padding})},fontWeight:{default:Se.fontWeight,parseHTML:e=>e.getAttribute("data-font-weight"),renderHTML:e=>({"data-font-weight":e.fontWeight})},fontStyle:{default:Se.fontStyle,parseHTML:e=>e.getAttribute("data-font-style"),renderHTML:e=>({"data-font-style":e.fontStyle})},isUnderline:{default:Se.isUnderline,parseHTML:e=>e.getAttribute("data-is-underline"),renderHTML:e=>({"data-is-underline":e.isUnderline})},isStrike:{default:Se.isStrike,parseHTML:e=>e.getAttribute("data-is-strike"),renderHTML:e=>({"data-is-strike":e.isStrike})},id:{default:()=>`node-${hh()}`,parseHTML:e=>e.getAttribute("data-id"),renderHTML:e=>({"data-id":e.id,"data-node-id":e.id})},locales:{default:void 0,parseHTML:()=>{},renderHTML:()=>({})}}},parseHTML(){return[{tag:'div[data-type="button"]'}]},renderHTML({HTMLAttributes:e}){return["div",ph(this.options.HTMLAttributes,e,{"data-type":"button"}),0]},addNodeView(){return gh(Pp)},addKeyboardShortcuts(){return{"Mod-a":({editor:e})=>{let{$from:t}=e.state.selection;for(let r=t.depth;r>=0;r--)if(t.node(r).type.name==="button"){let n=t.start(r),i=t.end(r);return e.commands.setTextSelection({from:n,to:i}),!0}return!1}}},addCommands(){return{setButton:e=>({chain:t})=>t().insertContent({type:this.name,attrs:e,content:[{type:"text",text:e.label||"Button"}]}).run()}}});import{mergeAttributes as Eh,Node as kh}from"@tiptap/core";import{ReactNodeViewRenderer as wh}from"@tiptap/react";import{v4 as Ph}from"uuid";import{NodeViewContent as bh}from"@tiptap/react";import{useSetAtom as yh,useAtomValue as Ch}from"jotai";import{useCallback as vc,useEffect as Np,useState as xc,useRef as vh}from"react";import{jsx as mr}from"react/jsx-runtime";var xh=s(({columnId:e,index:t,isPreviewMode:r})=>{let o=vh(null),[n,i]=xc(!1);return Np(()=>{let a=o.current;if(a)return Mt({element:a,getData:()=>({type:"column-cell",columnId:e,index:t,isEmpty:!0}),onDragEnter:()=>i(!0),onDragLeave:()=>i(!1),onDrop:()=>i(!1)})},[e,t]),mr("div",{ref:o,"data-placeholder-cell":"true","data-column-cell":"true","data-column-id":e,"data-cell-index":t,onClick:a=>{a.stopPropagation()},className:I("courier-flex-1 courier-min-h-[120px] courier-flex courier-flex-col courier-p-4",!r&&"courier-border",!r&&(n?"courier-border-solid courier-border-t-2 courier-border-t-blue-500 courier-border-r-transparent courier-border-b-transparent courier-border-l-transparent courier-rounded-none":"courier-border-dashed courier-border-gray-300 courier-rounded"),!r&&"courier-items-center courier-justify-center courier-text-center courier-text-sm courier-text-gray-400"),children:!r&&mr("span",{className:"courier-pointer-events-none",children:"Drag and drop content blocks"})})},"PlaceholderCell"),Th=s(({paddingHorizontal:e,paddingVertical:t,backgroundColor:r,borderWidth:o,borderRadius:n,borderColor:i,node:a,columnsCount:l,isPreviewMode:c=!1})=>{var d;let u=!a.content||a.content.size===0,p={borderWidth:`${o}px`,borderStyle:o>0?"solid":"none",borderColor:i,borderRadius:`${n}px`},m={padding:`${t}px ${e}px`,backgroundColor:r};if(u){let f=((d=a.attrs)==null?void 0:d.id)||"";return mr("div",{className:"courier-w-full node-element",style:m,children:mr("div",{className:"courier-w-full courier-flex courier-gap-2 courier-p-2",style:p,children:Array.from({length:l}).map((C,h)=>mr(xh,{columnId:f,index:h,isPreviewMode:c},h))})})}return mr("div",{className:"courier-w-full node-element",style:m,children:mr("div",{className:"courier-w-full courier-p-2",style:p,children:mr(bh,{})})})},"ColumnComponent"),Mp=s(e=>{let t=yh(Le),r=Ch(ft),[o,n]=xc(!1),[i,a]=xc(e.editor.isEditable);Np(()=>{let m=s(()=>{a(e.editor.isEditable)},"handleUpdate");return e.editor.on("update",m),e.editor.on("transaction",m),e.editor.on("selectionUpdate",m),()=>{e.editor.off("update",m),e.editor.off("transaction",m),e.editor.off("selectionUpdate",m)}},[e.editor]);let l=!i&&!r,c=vc(m=>{var N,y;if(!e.editor.isEditable)return;let d=m.target,f=m.currentTarget,C=d===f,h=d.classList.contains("node-element"),b=d.classList.contains("courier-p-2"),v=d.classList.contains("courier-gap-2"),E=d.classList.contains("draggable-item"),g=d.hasAttribute("data-drag-handle")||d.closest("[data-drag-handle]")!==null;if(C||h||b||v||E||g||((y=(N=d.closest("[data-node-view-content]"))==null?void 0:N.parentElement)==null?void 0:y.classList.contains("node-element"))){m.stopPropagation(),g||m.preventDefault();let S=$e(e);if(S){e.editor.commands.blur();let P=S.attrs.id;e.editor.state.doc.descendants(T=>T.type.name==="column"&&T.attrs.id===P?(t(T),!1):!0)}}},[e,t]),u=vc(m=>{let d=m.target,f=m.currentTarget;if(!(d.closest("[data-column-cell]")!==null)){n(!0);return}let h=f.getBoundingClientRect(),b=m.clientY,v=30,E=b<=h.top+v||b>=h.bottom-v;n(E)},[]),p=vc(()=>{n(!1)},[]);return mr(et,{id:e.node.attrs.id,className:I(e.node.attrs.isSelected&&"selected-element",o&&"hover-edge-zone"),onMouseDown:c,onMouseMove:u,onMouseLeave:p,editor:e.editor,getPos:e.getPos,"data-node-type":"column",children:mr(Th,{...e.node.attrs,node:e.node,columnsCount:e.node.attrs.columnsCount||2,isPreviewMode:l})})},"ColumnComponentNode");var Ye={columnsCount:2,paddingHorizontal:0,paddingVertical:0,backgroundColor:"transparent",borderWidth:0,borderRadius:0,borderColor:"transparent",cells:[]},Ra=kh.create({name:"column",group:"block",content:"columnRow?",isolating:!0,selectable:!1,onCreate(){ze(this.editor,this.name)},addAttributes(){return{columnsCount:{default:Ye.columnsCount,parseHTML:e=>e.getAttribute("data-columns-count"),renderHTML:e=>({"data-columns-count":e.columnsCount})},paddingHorizontal:{default:Ye.paddingHorizontal,parseHTML:e=>e.getAttribute("data-padding-horizontal"),renderHTML:e=>({"data-padding-horizontal":e.paddingHorizontal})},paddingVertical:{default:Ye.paddingVertical,parseHTML:e=>e.getAttribute("data-padding-vertical"),renderHTML:e=>({"data-padding-vertical":e.paddingVertical})},backgroundColor:{default:Ye.backgroundColor,parseHTML:e=>e.getAttribute("data-background-color"),renderHTML:e=>({"data-background-color":e.backgroundColor})},borderWidth:{default:Ye.borderWidth,parseHTML:e=>e.getAttribute("data-border-width"),renderHTML:e=>({"data-border-width":e.borderWidth})},borderRadius:{default:Ye.borderRadius,parseHTML:e=>e.getAttribute("data-border-radius"),renderHTML:e=>({"data-border-radius":e.borderRadius})},borderColor:{default:Ye.borderColor,parseHTML:e=>e.getAttribute("data-border-color"),renderHTML:e=>({"data-border-color":e.borderColor})},id:{default:()=>`node-${Ph()}`,parseHTML:e=>e.getAttribute("data-id"),renderHTML:e=>({"data-id":e.id,"data-node-id":e.id})},locales:{default:void 0,parseHTML:()=>{},renderHTML:()=>({})},cells:{default:[],parseHTML:e=>{let t=e.getAttribute("data-cells");return t?JSON.parse(t):[]},renderHTML:e=>({"data-cells":JSON.stringify(e.cells||[])})}}},parseHTML(){return[{tag:'div[data-type="column"]'}]},renderHTML({HTMLAttributes:e}){return["div",Eh(this.options.HTMLAttributes,e,{"data-type":"column"}),0]},addNodeView(){return wh(Mp)},addCommands(){return{setColumn:e=>({chain:t})=>{let r=e.columnsCount||Ye.columnsCount,o=`node-${Date.now()}`,n=Array.from({length:r},(i,a)=>({type:"columnCell",attrs:{index:a,columnId:o},content:[{type:"paragraph"}]}));return t().insertContent({type:this.name,attrs:{...e,id:o},content:[{type:"columnRow",content:n}]}).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)==="column"},Delete:({editor:e})=>{let{selection:t}=e.state,r=e.state.doc.nodeAt(t.$anchor.pos);return(r==null?void 0:r.type.name)==="column"}}}});import{mergeAttributes as Ih,Node as Sh}from"@tiptap/core";import{ReactNodeViewRenderer as Rh}from"@tiptap/react";import{v4 as Lh}from"uuid";import{useSetAtom as Nh}from"jotai";import{useCallback as Mh}from"react";import{jsx as La}from"react/jsx-runtime";var Ah=s(({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",dangerouslySetInnerHTML:t?{__html:e}:{__html:" "}})})},"CustomCodeComponent"),Ap=s(e=>{let t=Nh(Le),r=Mh(()=>{if(!e.editor.isEditable)return;let i=$e(e);if(i){e.editor.commands.blur();let a=i.attrs.id;e.editor.state.doc.descendants(l=>l.type.name==="customCode"&&l.attrs.id===a?(t(l),!1):!0)}},[e,t]),o=e.node.attrs.code,n=!o||o.trim()===""||o==="<!-- Add your HTML code here -->";return La(et,{id:e.node.attrs.id,className:I(e.node.attrs.isSelected&&"selected-element",n&&"is-empty"),onClick:r,editor:e.editor,"data-node-type":"customCode",children:La(Ah,{...e.node.attrs,updateAttributes:e.updateAttributes})})},"CustomCodeComponentNode");var Sr={code:"<!-- Add your HTML code here -->"},Ba=Sh.create({name:"customCode",group:"block",atom:!0,selectable:!1,onCreate(){ze(this.editor,this.name)},addAttributes(){return{code:{default:Sr.code,parseHTML:e=>e.getAttribute("data-code")||"",renderHTML:e=>({"data-code":e.code})},id:{default:()=>`node-${Lh()}`,parseHTML:e=>e.getAttribute("data-id"),renderHTML:e=>({"data-id":e.id,"data-node-id":e.id})},locales:{default:void 0,parseHTML:()=>{},renderHTML:()=>({})}}},parseHTML(){return[{tag:'div[data-type="custom-code"]'}]},renderHTML({HTMLAttributes:e}){return["div",Ih(this.options.HTMLAttributes,e,{"data-type":"custom-code"}),["div",{innerHTML:e.code||Sr.code}]]},addNodeView(){return Rh(Ap)},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{mergeAttributes as _h}from"@tiptap/core";import{Node as Bh,mergeAttributes as Dh,isNodeSelection as Hh,nodeInputRule as Vh}from"@tiptap/core";import{TextSelection as Tc,NodeSelection as Fh}from"@tiptap/pm/state";var Ip=Bh.create({name:"horizontalRule",addOptions(){return{HTMLAttributes:{}}},group:"block",parseHTML(){return[{tag:"hr"}]},renderHTML({HTMLAttributes:e}){return["hr",Dh(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}):Hh(r)?i.insertContentAt(n.pos,{type:this.name}):i.insertContent({type:this.name}),i.command(({tr:a,dispatch:l})=>{var c;if(l){let{$to:u}=a.selection,p=u.end();if(u.nodeAfter)u.nodeAfter.isTextblock?a.setSelection(Tc.create(a.doc,u.pos+1)):u.nodeAfter.isBlock?a.setSelection(Fh.create(a.doc,u.pos)):a.setSelection(Tc.create(a.doc,u.pos));else{let m=(c=u.parent.type.contentMatch.defaultType)===null||c===void 0?void 0:c.create();m&&(a.insert(p,m),a.setSelection(Tc.create(a.doc,p+1)))}a.scrollIntoView()}return!0}).run()}}},addInputRules(){return[Vh({find:/^(?:---|—-|___\s|\*\*\*\s)$/,type:this.type})]}});import{ReactNodeViewRenderer as zh}from"@tiptap/react";import{v4 as $h}from"uuid";import{useSetAtom as Oh}from"jotai";import{useCallback as Uh}from"react";import{jsx as Da}from"react/jsx-runtime";var Wh=s(({padding:e,color:t,size:r,radius:o,variant:n="divider"})=>Da("div",{className:"courier-w-full node-element courier-flex",children:Da("hr",{style:{marginTop:`${e}px`,marginBottom:`${e}px`,backgroundColor:n==="spacer"?"transparent":t,height:`${r}px`,borderRadius:`${o}px`,border:"none",width:"100%"},"data-variant":n})}),"DividerComponent"),Sp=s(e=>{let t=Oh(Le),r=Uh(()=>{if(!e.editor.isEditable)return;let o=$e(e);o&&(e.editor.commands.blur(),t(o))},[e,t]);return Da(et,{id:e.node.attrs.id,className:I(e.node.attrs.isSelected&&"selected-element"),onClick:r,editor:e.editor,children:Da(Wh,{...e.node.attrs})})},"DividerComponentNode");var At={padding:6,color:"#000000",size:1,radius:0,variant:"divider"},on={padding:24,color:"transparent",size:1,radius:0,variant:"spacer"},Ec=Ip.extend({name:"divider",atom:!0,onCreate(){ze(this.editor,this.name)},addAttributes(){return{padding:{default:At.padding,parseHTML:e=>e.getAttribute("data-padding"),renderHTML:e=>({"data-padding":e.margin})},size:{default:At.size,parseHTML:e=>e.getAttribute("data-size"),renderHTML:e=>({"data-size":e.size})},color:{default:At.color,parseHTML:e=>e.getAttribute("data-color"),renderHTML:e=>({"data-color":e.color})},width:{default:At.size,parseHTML:e=>e.getAttribute("data-size"),renderHTML:e=>({"data-size":e.size})},radius:{default:At.radius,parseHTML:e=>e.getAttribute("data-radius"),renderHTML:e=>({"data-radius":e.radius})},variant:{default:At.variant,parseHTML:e=>e.getAttribute("data-variant"),renderHTML:e=>({"data-variant":e.variant})},id:{default:()=>`node-${$h()}`,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",_h(e,{"data-type":"divider"}),["hr"]]},addNodeView(){return zh(Sp)},addInputRules(){return[]}});import{mergeAttributes as Gh,Node as Yh}from"@tiptap/core";import{ReactNodeViewRenderer as Xh}from"@tiptap/react";import{useSetAtom as Rp}from"jotai";import{useCallback as Xt,useEffect as wc,useMemo as Zh,useRef as Lp,useState as Bp}from"react";import{Fragment as Kh,jsx as pr,jsxs as kc}from"react/jsx-runtime";var qh=["image/png","image/jpeg","image/gif","image/webp"],Jh=s(({sourcePath:e,alt:t,alignment:r,borderWidth:o,borderColor:n,isUploading:i,width:a,imageNaturalWidth:l,onFileSelect:c,editor:u})=>{let[p,m]=Bp(!1),[d,f]=Bp(!0),C=Lp(null),h=Lp(null);wc(()=>{e&&f(!0)},[e]),wc(()=>{if(e&&!l&&u){let T=new Image;T.onload=()=>{try{if(!u.view||!u.state)return;let x=u.view.state.selection.from;u.chain().setNodeSelection(x).updateAttributes("imageBlock",{imageNaturalWidth:T.naturalWidth}).run()}catch{}},T.src=e}},[e,l,u]);let b=Xt(T=>{var A,R;let x=(R=(A=u==null?void 0:u.view)==null?void 0:A.dom)==null?void 0:R.closest(".ProseMirror"),k=(x==null?void 0:x.clientWidth)||1e3,M=Math.min(100,T/k*100);return Math.round(M)},[u]),v=Zh(()=>b(l),[b,l]),E=Xt(T=>qh.includes(T),[]),g=Xt(T=>{T.preventDefault(),T.stopPropagation(),T.dataTransfer.types.includes("Files")&&Array.from(T.dataTransfer.items).some(M=>E(M.type))&&(m(!0),T.dataTransfer.dropEffect="copy")},[E]),w=Xt(T=>{T.preventDefault(),T.stopPropagation(),m(!1)},[]),N=Xt(T=>{T.preventDefault(),T.stopPropagation(),T.dataTransfer.types.includes("Files")&&Array.from(T.dataTransfer.items).some(M=>E(M.type))&&m(!0)},[E]),y=Xt(T=>{T.preventDefault(),T.stopPropagation(),m(!1);let k=Array.from(T.dataTransfer.files).find(M=>E(M.type));k&&c&&c(k)},[c,E]),S=Xt(T=>{var k;let x=(k=T.target.files)==null?void 0:k[0];x&&c&&c(x),T.target&&(T.target.value="")},[c]),P=Xt(()=>{var T;(T=C.current)==null||T.click()},[]);return oa(e)?kc("div",{className:I("courier-w-full node-element courier-empty-image courier-h-[160px] courier-bg-gray-100 courier-rounded-md courier-flex courier-flex-row courier-items-center courier-justify-center courier-cursor-pointer courier-transition-colors courier-flex-1 courier-text-center courier-flex-wrap courier-content-center courier-p-4",p&&"courier-border-primary courier-bg-gray-50"),onDragOver:g,onDragEnter:N,onDragLeave:w,onDrop:y,style:{pointerEvents:"all"},children:[i?pr(xo,{className:"courier-w-8 courier-h-8"}):kc(Kh,{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:P,children:"Browse"})]}),pr("input",{ref:C,type:"file",accept:"image/png, image/jpeg, image/gif, image/webp",className:"courier-hidden",onChange:S})]}):pr("div",{className:"courier-w-full node-element",children:kc("div",{className:I("courier-relative courier-p-1",(i||d)&&"courier-w-full courier-aspect-[4/3] courier-bg-gray-100"),children:[(i||d)&&pr("div",{className:"courier-absolute courier-inset-0 courier-flex courier-items-center courier-justify-center",children:pr(xo,{className:"courier-w-8 courier-h-8"})}),pr("img",{ref:h,src:e,alt:t,className:I("courier-h-auto courier-inline-block courier-w-full",{left:"courier-mr-auto",center:"courier-mx-auto",right:"courier-ml-auto"}[r],i&&"courier-opacity-50",(i||d)&&"courier-invisible"),style:{maxWidth:a===v?`${l}px`:`${a}%`,borderWidth:`${o}px`,borderColor:n,borderStyle:o>0?"solid":"none",display:"block"},loading:"lazy",decoding:"async",draggable:!1,onLoad:T=>{if(f(!1),!l&&u)try{if(!u.view||!u.state)return;setTimeout(()=>{let x=u.view.state.selection.from;u.chain().setNodeSelection(x).updateAttributes("imageBlock",{imageNaturalWidth:T.target.naturalWidth}).run()},100)}catch(x){console.warn("Editor not ready for image update:",x)}},onError:()=>f(!1)})]})})},"ImageBlockComponent"),jh=["image/png","image/jpeg","image/gif","image/webp"],Dp=s(e=>{let t=Rp(Le),r=Rp(G),{uploadImage:o}=$n(),n=Xt(l=>{var m,d,f;let c=(f=(d=(m=e.editor)==null?void 0:m.view)==null?void 0:d.dom)==null?void 0:f.closest(".ProseMirror"),u=(c==null?void 0:c.clientWidth)||1e3,p=Math.min(100,l/u*100);return Math.round(p)},[e.editor]);wc(()=>{var c,u;let l=$e(e);if((c=l==null?void 0:l.attrs)!=null&&c.sourcePath&&!((u=l==null?void 0:l.attrs)!=null&&u.imageNaturalWidth)){let p=new Image;p.onload=()=>{let m=l.attrs.width||n(p.naturalWidth),d=jr(e.getPos);d!==null&&e.editor.chain().focus().setNodeSelection(d).updateAttributes("imageBlock",{width:m,imageNaturalWidth:p.naturalWidth}).run()},p.src=l.attrs.sourcePath}},[e,n]);let i=Xt(()=>{if(!e.editor.isEditable)return;let l=$e(e);l&&(e.editor.commands.blur(),t(l))},[e,t]),a=Xt(async l=>{let c=jr(e.getPos);$e(e)&&c!==null&&e.editor.chain().focus().setNodeSelection(c).updateAttributes("imageBlock",{isUploading:!0,sourcePath:""}).run();try{if(!jh.includes(l.type))throw new Error("Only PNG, JPEG, GIF, and WebP images are supported");let p=new FileReader;p.readAsDataURL(l),await new Promise((h,b)=>{p.onload=h,p.onerror=b});let d=(await o({file:l})).url,f=jr(e.getPos);if($e(e)&&f!==null){let h=new Image;h.src=d,await new Promise((v,E)=>{h.onload=v,h.onerror=()=>E(new Error("Failed to load uploaded image"))});let b=n(h.naturalWidth);e.editor.chain().focus().setNodeSelection(f).updateAttributes("imageBlock",{sourcePath:d,isUploading:!1,width:b,imageNaturalWidth:h.naturalWidth}).run()}}catch(p){console.error("Error uploading image:",p);let m="Error uploading image";if(p instanceof Error){let C=p.message;C.includes("GraphQL error")?m="Server error: Could not process image":C.includes("network")||C.includes("fetch")?m="Network error: Could not upload image":m=C}r({message:m,toastProps:{duration:6e3,description:`File: ${l.name} (${(l.size/1024/1024).toFixed(2)}MB)`}});let d=jr(e.getPos);$e(e)&&d!==null&&e.editor.chain().focus().setNodeSelection(d).updateAttributes("imageBlock",{isUploading:!1}).run()}},[e,n,o,r]);return pr(et,{id:e.node.attrs.id,className:I(e.node.attrs.isSelected&&"selected-element"),onClick:i,editor:e.editor,children:pr(Jh,{...e.node.attrs,onFileSelect:a,editor:e.editor})})},"ImageBlockView");var Fe={sourcePath:"",link:"",alt:"",alignment:"center",width:1,borderWidth:0,borderColor:"transparent",isUploading:!1,imageNaturalWidth:0},Ha=Yh.create({name:"imageBlock",group:"block",atom:!0,inline:!1,onCreate(){ze(this.editor,this.name)},addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),placeholder:""}},addAttributes(){return{sourcePath:{default:Fe.sourcePath,parseHTML:e=>e.getAttribute("data-source-path")||"",renderHTML:e=>({"data-source-path":e.sourcePath||""})},link:{default:Fe.link,parseHTML:e=>e.getAttribute("data-link"),renderHTML:e=>({"data-link":e.link})},alt:{default:Fe.alt,parseHTML:e=>e.getAttribute("data-alt"),renderHTML:e=>({"data-alt":e.alt})},alignment:{default:Fe.alignment,parseHTML:e=>e.getAttribute("data-alignment"),renderHTML:e=>({"data-alignment":e.alignment})},width:{default:Fe.width,parseHTML:e=>e.getAttribute("data-width"),renderHTML:e=>({"data-width":e.width})},imageNaturalWidth:{default:Fe.imageNaturalWidth,parseHTML:e=>e.getAttribute("data-natural-width"),renderHTML:e=>({"data-natural-width":e.imageNaturalWidth})},borderWidth:{default:Fe.borderWidth,parseHTML:e=>e.getAttribute("data-border-width"),renderHTML:e=>({"data-border-width":e.borderWidth})},borderColor:{default:Fe.borderColor,parseHTML:e=>e.getAttribute("data-border-color"),renderHTML:e=>({"data-border-color":e.borderColor})},isUploading:{default:Fe.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})},locales:{default:void 0,parseHTML:()=>{},renderHTML:()=>({})}}},parseHTML(){return[{tag:'div[data-type="image-block"]'}]},renderHTML({HTMLAttributes:e}){return["div",Gh(this.options.HTMLAttributes,e,{"data-type":"image-block"}),0]},addNodeView(){return Xh(Dp)},addCommands(){return{setImageBlock:e=>({chain:t})=>t().insertContent({type:this.name,attrs:{...Fe,...e}}).run(),setImageBlockAt:({pos:e,src:t})=>({chain:r})=>r().insertContentAt(e,{type:this.name,attrs:{...Fe,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 Rr}from"zod";var Hp=Rr.object({paddingVertical:Rr.number(),paddingHorizontal:Rr.number(),backgroundColor:Rr.string(),borderWidth:Rr.number(),borderColor:Rr.string(),textAlign:Rr.enum(["left","center","right","justify"]).default("left"),selected:Rr.boolean().default(!1),id:Rr.string().optional()}),ue={paddingVertical:6,paddingHorizontal:0,backgroundColor:"transparent",borderWidth:0,borderColor:"transparent",textAlign:"left",selected:!1};import{NodeViewContent as Qh,NodeViewWrapper as eb}from"@tiptap/react";import{useSetAtom as tb,useAtomValue as rb}from"jotai";import{useCallback as ob}from"react";import{jsx as Kr}from"react/jsx-runtime";var Vp=s(({paddingVertical:e,paddingHorizontal:t,textAlign:r,backgroundColor:o,borderWidth:n,borderColor:i,level:a,type:l})=>{let c=l==="heading"?`h${a}`:"p",u=rb(ft);return Kr("div",{className:"courier-w-full node-element",children:Kr("div",{style:{padding:`${e}px ${t}px`,textAlign:r,backgroundColor:o,borderWidth:`${n}px`,borderColor:i,borderStyle:n>0?"solid":"none"},children:Kr("div",{style:{pointerEvents:u?"none":"auto"},children:Kr(Qh,{as:c})})})})},"TextBlockComponent"),Va=s(e=>{let t=tb(Le),r=ob(()=>{if(!e.editor.isEditable)return;let l=$e(e);l&&t(l)},[e,t]),o=!e.node.content||e.node.content.size===0,n=jr(e.getPos),i=n!==null?e.editor.state.doc.resolve(n):null;return(i==null?void 0:i.parent.type.name)==="blockquote"?Kr(eb,{children:Kr(Vp,{...e.node.attrs,type:e.node.type.name})}):Kr(et,{id:e.node.attrs.id,className:I(e.node.attrs.isSelected&&"selected-element",o&&"is-empty"),onClick:r,editor:e.editor,children:Kr(Vp,{...e.node.attrs,type:e.node.type.name})})},"TextBlockComponentNode");import{zodResolver as cb}from"@hookform/resolvers/zod";import{useForm as ub}from"react-hook-form";import{useSetAtom as sb}from"jotai";import{jsx as Fp,jsxs as nb}from"react/jsx-runtime";var Be=s(({draggable:e=!1,icon:t,draggableLabel:r,label:o})=>nb("div",{className:"courier-flex courier-flex-row courier-items-center courier-gap-2",children:[Fp("div",{className:I("courier-w-8 courier-h-8 courier-rounded-md courier-flex courier-items-center courier-justify-center",e?"courier-cursor-grab courier-bg-secondary":"courier-border courier-border-border"),children:t}),Fp("span",{className:"courier-text-sm courier-font-medium courier-text-foreground",children:e?r:o})]}),"BlockBase");import{Quote as ib}from"lucide-react";import{jsx as Op}from"react/jsx-runtime";var Fa=s(({draggable:e=!1})=>Op(Be,{draggable:e,icon:Op(ib,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),draggableLabel:"Blockquote",label:"Blockquote block"}),"BlockquoteBlock");import{jsx as Oa}from"react/jsx-runtime";var Pc=s(()=>Oa("svg",{width:"20",height:"12",viewBox:"0 0 20 12",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:Oa("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:"currentColor"})}),"ButtonBlockIcon"),Gr=s(({draggable:e=!1})=>Oa(Be,{draggable:e,icon:Oa(Pc,{}),draggableLabel:"Button",label:"Button block"}),"ButtonBlock");import{jsx as Ua}from"react/jsx-runtime";var Nc=s(()=>Ua("svg",{width:"20",height:"14",viewBox:"0 0 20 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:Ua("path",{d:"M14 1.5V12.5H18C18.25 12.5 18.5 12.2812 18.5 12V2C18.5 1.75 18.25 1.5 18 1.5H14ZM12.5 1.5H7.5V12.5H12.5V1.5ZM6 12.5V1.5H2C1.71875 1.5 1.5 1.75 1.5 2V12C1.5 12.2812 1.71875 12.5 2 12.5H6ZM0 2C0 0.90625 0.875 0 2 0H18C19.0938 0 20 0.90625 20 2V12C20 13.125 19.0938 14 18 14H2C0.875 14 0 13.125 0 12V2Z",fill:"currentColor"})}),"ColumnBlockIcon"),Wa=s(({draggable:e=!1})=>Ua(Be,{draggable:e,icon:Ua(Nc,{}),draggableLabel:"Column layout",label:"Column layout"}),"ColumnBlock");import{jsx as _a}from"react/jsx-runtime";var Mc=s(()=>_a("svg",{width:"20",height:"14",viewBox:"0 0 20 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:_a("path",{d:"M6.5 3.5L3 7L6.5 10.5M13.5 3.5L17 7L13.5 10.5M11.5 1L8.5 13",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})}),"CustomCodeBlockIcon"),za=s(({draggable:e=!1})=>_a(Be,{draggable:e,icon:_a(Mc,{}),draggableLabel:"Custom code",label:"Custom code"}),"CustomCodeBlock");import{jsx as $a}from"react/jsx-runtime";var Ac=s(()=>$a("svg",{width:"16",height:"2",viewBox:"0 0 16 2",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:$a("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:"currentColor"})}),"DividerBlockIcon"),Yr=s(({draggable:e=!1})=>$a(Be,{draggable:e,icon:$a(Ac,{}),draggableLabel:"Divider",label:"Divider block"}),"DividerBlock");import{jsx as Za}from"react/jsx-runtime";var Ic=s(()=>Za("svg",{width:"18",height:"13",viewBox:"0 0 18 13",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:Za("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:"currentColor"})}),"HeadingBlockIcon"),qa=s(({draggable:e=!1})=>Za(Be,{draggable:e,icon:Za(Ic,{}),draggableLabel:"Heading",label:"Heading block"}),"HeadingBlock");import{jsx as Ja}from"react/jsx-runtime";var Sc=s(()=>Ja("svg",{width:"16",height:"14",viewBox:"0 0 16 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:Ja("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:"currentColor"})}),"ImageBlockIcon"),ja=s(({draggable:e=!1})=>Ja(Be,{draggable:e,icon:Ja(Sc,{}),draggableLabel:"Image",label:"Image block"}),"ImageBlock");import{AlignVerticalSpaceAround as ab}from"lucide-react";import{jsx as Up}from"react/jsx-runtime";var Ka=s(({draggable:e=!1})=>Up(Be,{draggable:e,icon:Up(ab,{className:"courier-w-4 courier-h-4"}),draggableLabel:"Spacer",label:"Spacer block"}),"SpacerBlock");import{jsx as Ga}from"react/jsx-runtime";var Rc=s(()=>Ga("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:Ga("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:"currentColor"})}),"TextBlockIcon"),Xr=s(({draggable:e=!1})=>Ga(Be,{draggable:e,icon:Ga(Rc,{}),draggableLabel:"Text",label:"Text block"}),"TextBlock");import{jsx as Qt,jsxs as lb}from"react/jsx-runtime";var tt=s(({type:e})=>{let t=sb(Le);return lb("div",{className:"courier-flex courier-gap-4 courier-flex-col",children:[Qt(ve,{className:"courier-w-fit",variant:"secondary",buttonSize:"small",onClick:()=>{t(null)},children:"Close"}),e==="heading"&&Qt(qa,{}),e==="text"&&Qt(Xr,{}),e==="image"&&Qt(ja,{}),e==="spacer"&&Qt(Ka,{}),e==="divider"&&Qt(Yr,{}),e==="button"&&Qt(Gr,{}),e==="blockquote"&&Qt(Fa,{}),e==="customCode"&&Qt(za,{}),e==="column"&&Qt(Wa,{}),Qt(le,{className:"courier-m-0"})]})},"FormHeader");import{jsx as xe,jsxs as Qr}from"react/jsx-runtime";var Wp=s(({element:e,editor:t})=>{let r=ub({resolver:cb(Hp),defaultValues:{...ue,...e==null?void 0:e.attrs}}),{updateNodeAttributes:o}=Qe({editor:t,element:e,form:r,nodeType:(e==null?void 0:e.type.name)||"paragraph"});return e?Qr(Me,{...r,children:[xe(tt,{type:"text"}),Qr("form",{onChange:()=>{o(r.getValues())},children:[xe("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Frame"}),Qr("div",{className:"courier-flex courier-flex-row courier-gap-3 courier-mb-3",children:[xe(J,{control:r.control,name:"paddingHorizontal",render:({field:n})=>Qr(Z,{children:[xe(q,{children:xe(pe,{startAdornment:xe(ai,{}),type:"number",min:0,...n})}),xe(j,{})]})}),xe(J,{control:r.control,name:"paddingVertical",render:({field:n})=>Qr(Z,{children:[xe(q,{children:xe(pe,{startAdornment:xe(vo,{}),type:"number",min:0,...n})}),xe(j,{})]})})]}),xe(J,{control:r.control,name:"backgroundColor",render:({field:n})=>Qr(Z,{className:"courier-mb-4",children:[xe(q,{children:xe(Ge,{...n,defaultValue:ue.backgroundColor,onChange:i=>{n.onChange(i),o({...r.getValues(),[n.name]:i})}})}),xe(j,{})]})}),xe(le,{className:"courier-mb-4"}),xe("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Border"}),xe(J,{control:r.control,name:"borderWidth",render:({field:n})=>Qr(Z,{className:"courier-mb-3",children:[xe(q,{children:xe(pe,{startAdornment:xe(Ar,{}),type:"number",min:0,...n})}),xe(j,{})]})}),xe(J,{control:r.control,name:"borderColor",render:({field:n})=>Qr(Z,{className:"courier-mb-4",children:[xe(q,{children:xe(Ge,{...n,defaultValue:ue.borderColor,onChange:i=>{n.onChange(i),o({...r.getValues(),[n.name]:i})}})}),xe(j,{})]})})]})]}):null},"TextBlockForm");var mb=s((e,t)=>{let r=null;return e.state.doc.descendants((o,n)=>o.attrs.id===t?(r=n,!1):!0),r},"findNodePositionById"),Ya=s((e,t,r,o,n,i)=>{let a=`node-${db()}`,c={heading:()=>e.schema.nodes.heading.create({...ue,...o,id:a},i),paragraph:()=>e.schema.nodes.paragraph.create({...ue,...o,id:a},i),text:()=>e.schema.nodes.paragraph.create({...ue,...o,id:a},i),spacer:()=>e.schema.nodes.divider.create({...on,...o,id:a}),divider:()=>e.schema.nodes.divider.create({...At,...o,id:a}),button:()=>e.schema.nodes.button.create({...Se,...o,id:a},i),imageBlock:()=>e.schema.nodes.imageBlock.create({...Fe,...o,id:a}),image:()=>e.schema.nodes.imageBlock.create({...Fe,...o,id:a}),customCode:()=>e.schema.nodes.customCode.create({...Sr,...o,id:a}),column:()=>e.schema.nodes.column.create({...Ye,...o,id:a})}[t];if(c)try{let u=e.state.tr,p=c();u.insert(r,p),e.view.dispatch(u),n&&n(p),(t==="text"||t==="paragraph"||t==="heading")&&setTimeout(()=>{let d=mb(e,a);d!==null&&e.commands.setTextSelection(d+1),e.view.focus()},50);let m=new CustomEvent("node-duplicated",{detail:{newNodeId:a}});document.dispatchEvent(m)}catch(u){console.error("Error creating node:",u)}else try{if(e.schema.nodes[t]){let u=e.state.tr,p=e.schema.nodes[t].create({...o,id:a},i);u.insert(r,p),e.view.dispatch(u),n&&n(p);let m=new CustomEvent("node-duplicated",{detail:{newNodeId:a}});document.dispatchEvent(m)}else console.error(`Cannot duplicate node: type "${t}" not found in schema`)}catch(u){console.error("Error creating fallback node:",u)}return a},"createOrDuplicateNode");var ZI=s(()=>{let[e,t]=Xa(ir),[r,o]=Xa(Yi),[n,i]=Xa($r),a=pb(Ce),l=Xa(fe)[1],c=fr(E=>{l(E)},[l]),u=fr(E=>{t(E)},[t]),p=fr(()=>{t(Gi)},[t]),m=fr((E,g)=>{o(w=>({...w,[E]:{...w[E],...g}}))},[o]),d=fr(E=>r[E],[r]),f=fr(E=>{o(g=>{let w={...g};return delete w[E],w})},[o]),C=fr(E=>{i(g=>{let w=g.findIndex(N=>N.type===E.type&&N.key===E.key);if(w>=0){let N=[...g];return N[w]=E,N}return[...g,E]})},[i]),h=fr((E,g)=>{i(w=>w.filter(N=>!(N.type===E&&N.key===g)))},[i]),b=fr(E=>n.filter(g=>g.type===E),[n]),v=fr((E,g)=>{if(!a){console.warn("[useBlockConfig] Cannot insert block: editor not available");return}let w={};E==="spacer"&&(w={...on});let N=r[E];if(N&&(w={...w,...N}),g){let T=n.find(x=>x.type===E&&x.key===g);T?w={...w,...T.attributes}:console.warn(`[useBlockConfig] Preset "${g}" not found for type "${E}"`)}let y=a.state.doc.content.size,P={heading:"heading",text:"paragraph",image:"imageBlock",spacer:"divider",divider:"divider",button:"button",customCode:"customCode",column:"column",blockquote:"blockquote"}[E];Ya(a,P,y,w,c)},[a,r,n,c]);return{visibleBlocks:e,setVisibleBlocks:u,resetVisibleBlocks:p,defaultVisibleBlocks:Gi,setDefaults:m,getDefaults:d,clearDefaults:f,registerPreset:C,unregisterPreset:h,presets:n,getPresetsForType:b,insertBlock:v}},"useBlockConfig");import{z as wo}from"zod";var _p=wo.object({paddingHorizontal:wo.coerce.number().min(0),paddingVertical:wo.coerce.number().min(0),backgroundColor:wo.string(),borderLeftWidth:wo.coerce.number().min(0),borderColor:wo.string(),id:wo.string().optional()});import{jsx as nn,jsxs as Lc}from"react/jsx-runtime";var zp=s(({element:e,editor:t})=>{let r=gb({resolver:fb(_p),defaultValues:{...gr,...e==null?void 0:e.attrs}}),{updateNodeAttributes:o}=Qe({editor:t,element:e,form:r,nodeType:(e==null?void 0:e.type.name)||"blockquote"});return e?Lc(Me,{...r,children:[nn(tt,{type:"blockquote"}),Lc("form",{onChange:()=>{o(r.getValues())},children:[nn("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Border"}),nn(J,{control:r.control,name:"borderColor",render:({field:n})=>Lc(Z,{className:"courier-mb-3",children:[nn(q,{children:nn(Ge,{...n,defaultValue:gr.borderColor,onChange:i=>{n.onChange(i),o({...r.getValues(),[n.name]:i})}})}),nn(j,{})]})})]})]}):null},"BlockquoteForm");import{z as It}from"zod";var Qa=It.object({label:It.string(),link:It.string().optional(),alignment:It.enum(["left","center","right"]),backgroundColor:It.string(),borderRadius:It.number(),padding:It.number(),fontWeight:It.enum(["normal","bold"]),fontStyle:It.enum(["normal","italic"]),isUnderline:It.boolean(),isStrike:It.boolean(),textColor:It.string().optional(),borderColor:It.string().optional()});import{zodResolver as F0}from"@hookform/resolvers/zod";import{useForm as O0}from"react-hook-form";import{Node as hb}from"@tiptap/core";var an=hb.create({name:"doc",topNode:!0,content:"block+"});import{Node as bb,mergeAttributes as yb}from"@tiptap/core";var sn=bb.create({name:"paragraph",priority:1e3,addOptions(){return{HTMLAttributes:{}}},group:"block",content:"inline*",parseHTML(){return[{tag:"p"}]},renderHTML({HTMLAttributes:e}){return["p",yb(this.options.HTMLAttributes,e),0]},addCommands(){return{setParagraph:()=>({commands:e})=>e.setNode(this.name)}},addKeyboardShortcuts(){return{"Mod-Alt-0":()=>this.editor.commands.setParagraph()}}});import M0 from"@tiptap/extension-placeholder";import{Node as Cb}from"@tiptap/core";var es=Cb.create({name:"text",group:"inline"});import{EditorContent as A0,useEditor as I0}from"@tiptap/react";import*as Ao from"react";import{useCallback as S0,useEffect as df}from"react";import{Extension as Jp,InputRule as Ab,Node as Ib}from"@tiptap/core";import{ReactNodeViewRenderer as Sb}from"@tiptap/react";import{NodeViewWrapper as wb}from"@tiptap/react";import{useAtomValue as Pb}from"jotai";import{useCallback as Vc,useEffect as Nb,useState as Mb}from"react";import{useCallback as Po,useEffect as Bc,useMemo as vb,useRef as xb,useState as Tb}from"react";import{jsx as $p,jsxs as Eb}from"react/jsx-runtime";var Dc=50,Hc=24,ts=s(({variableId:e,isInvalid:t,onUpdateAttributes:r,onDelete:o,icon:n,value:i,singleClickToEdit:a=!1,className:l,textColorOverride:c,getColors:u})=>{let[p,m]=Tb(!1),d=xb(null);Bc(()=>{e===""&&!p&&m(!0)},[e,p]),Bc(()=>{if(p&&d.current){let y=d.current;y.textContent=e,y.focus(),requestAnimationFrame(()=>{if(y&&y.isConnected){let S=document.createRange();S.selectNodeContents(y),S.collapse(!1);let P=window.getSelection();P==null||P.removeAllRanges(),P==null||P.addRange(S)}})}},[p,e]);let f=Po(()=>{var P;m(!1);let y=(((P=d.current)==null?void 0:P.textContent)||"").trim();if(y===""){o();return}let S=Ke(y);r({id:y,isInvalid:!S})},[o,r]),C=Po(y=>{var S;y.key==="Enter"?(y.preventDefault(),(S=d.current)==null||S.blur()):y.key==="Escape"&&(y.preventDefault(),d.current&&(d.current.textContent=e),m(!1),e===""&&o())},[e,o]),h=Po(()=>{if(d.current){let y=d.current.textContent||"";if(y.length>Dc){y=y.slice(0,Dc),d.current.textContent=y;let S=document.createRange();S.selectNodeContents(d.current),S.collapse(!1);let P=window.getSelection();P==null||P.removeAllRanges(),P==null||P.addRange(S)}}},[]),b=Po(y=>{y.preventDefault();let S=y.clipboardData.getData("text/plain").slice(0,Dc),P=window.getSelection();if(P&&P.rangeCount>0){let T=P.getRangeAt(0);T.deleteContents();let x=document.createTextNode(S);T.insertNode(x),T.setStartAfter(x),T.setEndAfter(x),P.removeAllRanges(),P.addRange(T),h()}},[h]),v=Po(y=>{y.stopPropagation(),p||m(!0)},[p]),E=vb(()=>{let y=e,S=i?`="${i}"`:"",P=`${y}${S}`,T=y.length>Hc;return{displayText:`${T?`${y.slice(0,Hc)}\u2026`:y}${S}`,fullText:P,showTitle:T}},[e,i]);Bc(()=>{d.current&&!p&&(d.current.textContent=E.displayText)},[E.displayText,p]);let g=Po(y=>{y.stopPropagation()},[]),w=Po(y=>{y.stopPropagation()},[]),N=a?{onClick:v}:{onClick:w,onDoubleClick:v};return Eb("span",{className:I("courier-variable-chip",!t&&i&&"courier-variable-chip-has-value",t&&"courier-variable-chip-invalid",l),style:{direction:"ltr"},onMouseDown:g,...N,title:E.showTitle?E.fullText:void 0,children:[$p("span",{className:"courier-flex-shrink-0 courier-flex courier-items-center courier-pt-0.5",children:n}),$p("span",{ref:d,role:"textbox",contentEditable:p,suppressContentEditableWarning:!0,onBlur:f,onKeyDown:C,onInput:h,onPaste:b,onMouseDown:g,...a?{onClick:v}:{onClick:w,onDoubleClick:v},className:I("courier-outline-none courier-min-w-[1ch]",!p&&"courier-cursor-text"),style:{...c&&{color:c},maxWidth:`${Hc}ch`,overflow:"hidden",textOverflow:p?"clip":"ellipsis",whiteSpace:"nowrap",direction:"ltr",unicodeBidi:"isolate"},children:!p&&E.displayText})]})},"VariableChipBase");import{jsx as Zp,jsxs as kb}from"react/jsx-runtime";var rs=s(({color:e="#1D4ED8"})=>kb("svg",{width:"16",height:"16",viewBox:"0 0 20 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:"courier-flex-shrink-0",children:[Zp("path",{d:"M5.75 0H7.25C7.65625 0 8 0.34375 8 0.75C8 1.1875 7.65625 1.5 7.25 1.5H5.75C5.03125 1.5 4.5 2.0625 4.5 2.75V4.1875C4.5 4.90625 4.1875 5.625 3.6875 6.125L2.78125 7L3.6875 7.90625C4.1875 8.40625 4.5 9.125 4.5 9.84375V11.25C4.5 11.9688 5.03125 12.5 5.75 12.5H7.25C7.65625 12.5 8 12.8438 8 13.25C8 13.6875 7.65625 14 7.25 14H5.75C4.21875 14 3 12.7812 3 11.25V9.84375C3 9.5 2.84375 9.1875 2.625 8.96875L1.21875 7.53125C0.90625 7.25 0.90625 6.78125 1.21875 6.46875L2.625 5.0625C2.84375 4.84375 3 4.53125 3 4.1875V2.75C3 1.25 4.21875 0 5.75 0ZM14.25 0C15.75 0 17 1.25 17 2.75V4.1875C17 4.53125 17.125 4.84375 17.3438 5.0625L18.7812 6.5C19.0625 6.78125 19.0625 7.25 18.7812 7.53125L17.3438 8.96875C17.125 9.1875 17 9.5 17 9.84375V11.25C17 12.7812 15.75 14 14.25 14H12.75C12.3125 14 12 13.6875 12 13.25C12 12.8438 12.3125 12.5 12.75 12.5H14.25C14.9375 12.5 15.5 11.9688 15.5 11.25V9.84375C15.5 9.125 15.7812 8.40625 16.2812 7.90625L17.1875 7L16.2812 6.125C15.7812 5.625 15.5 4.90625 15.5 4.1875V2.75C15.5 2.0625 14.9375 1.5 14.25 1.5H12.75C12.3125 1.5 12 1.1875 12 0.75C12 0.34375 12.3125 0 12.75 0H14.25Z",fill:e}),Zp("circle",{cx:"10",cy:"7",r:"2",fill:e})]}),"VariableIcon");import{jsx as Fc}from"react/jsx-runtime";var qp=s(({node:e,editor:t,getPos:r,updateAttributes:o})=>{let n=Pb(go),i=e.attrs.id||"",a=n[i],l=e.attrs.isInvalid,[c,u]=Mb(!1),p=Vc(()=>{if(typeof r=="function")try{let h=r();if(h==null){u(!1);return}let v=t.state.doc.resolve(h).parent;u(v&&v.type.name==="button")}catch{u(!1)}else u(!1)},[t,r]);Nb(()=>{p();let h=s(()=>{p()},"handleUpdate");return t.on("update",h),t.on("selectionUpdate",h),()=>{t.off("update",h),t.off("selectionUpdate",h)}},[t,p]);let m=Vc(h=>{o(h)},[o]),d=Vc(()=>{if(typeof r=="function"){let h=r();typeof h=="number"&&t.chain().focus().deleteRange({from:h,to:h+e.nodeSize}).run()}},[t,r,e.nodeSize]),C=s((h,b)=>h?"#DC2626":b?"#1E40AF":"#B45309","getIconColor")(l,!!a);return Fc(wb,{className:"courier-inline-block courier-max-w-full",children:Fc(ts,{variableId:i,isInvalid:l,value:a,onUpdateAttributes:m,onDelete:d,icon:Fc(rs,{color:C}),className:I("courier-variable-node",c&&"courier-variable-in-button"),textColorOverride:c?"#000000":void 0})})},"VariableView");var Oc=Ib.create({name:"variable",group:"inline",inline:!0,selectable:!1,atom:!0,addAttributes(){return{id:{default:"",parseHTML:e=>e.getAttribute("data-id")||"",renderHTML:e=>({"data-id":e.id})},isInvalid:{default:!1,parseHTML:e=>e.getAttribute("data-invalid")==="true",renderHTML:e=>({"data-invalid":e.isInvalid?"true":void 0})}}},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 Sb(qp)}}),No=Jp.create({name:"variableInputRule",addInputRules(){return[new Ab({find:/\{\{$/,handler:({range:e,chain:t})=>{t().deleteRange(e).insertContent([{type:"variable",attrs:{id:"",isInvalid:!1}}]).run()}})]}});var Rb=Jp.create({name:"variableTypeHandler"});import{Extension as Lb}from"@tiptap/core";import{Plugin as Bb}from"@tiptap/pm/state";import{Slice as Db,Fragment as Hb}from"@tiptap/pm/model";var Mo=Lb.create({name:"variablePaste",addProseMirrorPlugins(){return[new Bb({props:{transformPastedHTML:e=>e.replace(/\{\{([^}]+)\}\}/g,(r,o)=>{let n=o.trim();return Ke(n)?`<span data-variable="true" data-id="${n}"></span>`:r}),transformPastedText:(e,t,r)=>{let o=/\{\{([^}]+)\}\}/g;if(!o.test(e))return e;let{schema:n}=r.state,i=[],a=0,l;for(o.lastIndex=0;(l=o.exec(e))!==null;){if(l.index>a){let u=e.substring(a,l.index);u&&i.push(n.text(u))}let c=l[1].trim();if(n.nodes.variable&&Ke(c))i.push(n.nodes.variable.create({id:c,isInvalid:!1}));else{let u=l[0];i.push(n.text(u))}a=l.index+l[0].length}if(a<e.length){let c=e.substring(a);c&&i.push(n.text(c))}if(i.length>0){let c=Hb.from(i),u=new Db(c,0,0),p=r.state.tr.replaceSelection(u);return r.dispatch(p),e}return e}}})]}});import{Node as Vb}from"@tiptap/core";import{NodeViewWrapper as Fb,ReactNodeViewRenderer as Ob}from"@tiptap/react";import{useCallback as jp}from"react";import{jsx as Ti,jsxs as zb}from"react/jsx-runtime";var Ub=s(({color:e="#B45309"})=>zb("svg",{width:"14",height:"14",viewBox:"0 0 20 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:"courier-flex-shrink-0",children:[Ti("path",{d:"M5.75 0H7.25C7.65625 0 8 0.34375 8 0.75C8 1.1875 7.65625 1.5 7.25 1.5H5.75C5.03125 1.5 4.5 2.0625 4.5 2.75V4.1875C4.5 4.90625 4.1875 5.625 3.6875 6.125L2.78125 7L3.6875 7.90625C4.1875 8.40625 4.5 9.125 4.5 9.84375V11.25C4.5 11.9688 5.03125 12.5 5.75 12.5H7.25C7.65625 12.5 8 12.8438 8 13.25C8 13.6875 7.65625 14 7.25 14H5.75C4.21875 14 3 12.7812 3 11.25V9.84375C3 9.5 2.84375 9.1875 2.625 8.96875L1.21875 7.53125C0.90625 7.25 0.90625 6.78125 1.21875 6.46875L2.625 5.0625C2.84375 4.84375 3 4.53125 3 4.1875V2.75C3 1.25 4.21875 0 5.75 0ZM14.25 0C15.75 0 17 1.25 17 2.75V4.1875C17 4.53125 17.125 4.84375 17.3438 5.0625L18.7812 6.5C19.0625 6.78125 19.0625 7.25 18.7812 7.53125L17.3438 8.96875C17.125 9.1875 17 9.5 17 9.84375V11.25C17 12.7812 15.75 14 14.25 14H12.75C12.3125 14 12 13.6875 12 13.25C12 12.8438 12.3125 12.5 12.75 12.5H14.25C14.9375 12.5 15.5 11.9688 15.5 11.25V9.84375C15.5 9.125 15.7812 8.40625 16.2812 7.90625L17.1875 7L16.2812 6.125C15.7812 5.625 15.5 4.90625 15.5 4.1875V2.75C15.5 2.0625 14.9375 1.5 14.25 1.5H12.75C12.3125 1.5 12 1.1875 12 0.75C12 0.34375 12.3125 0 12.75 0H14.25Z",fill:e}),Ti("circle",{cx:"10",cy:"7",r:"2",fill:e})]}),"VariableChipIcon"),Wb=s(e=>e?"#DC2626":"#B45309","getIconColor"),_b=s(({node:e,editor:t,getPos:r,updateAttributes:o})=>{let n=e.attrs.id||"",i=e.attrs.isInvalid||!1,a=jp(c=>{o(c)},[o]),l=jp(()=>{if(typeof r=="function"){let c=r();typeof c=="number"&&t.chain().focus().deleteRange({from:c,to:c+e.nodeSize}).run()}},[t,r,e.nodeSize]);return Ti(Fb,{as:"span",className:"courier-inline",children:Ti(ts,{variableId:n,isInvalid:i,onUpdateAttributes:a,onDelete:l,icon:Ti(Ub,{color:Wb(i)})})})},"SimpleVariableView"),os=Vb.create({name:"variable",group:"inline",inline:!0,selectable:!1,atom:!0,addAttributes(){return{id:{default:"",parseHTML:e=>e.getAttribute("data-id")||"",renderHTML:e=>({"data-id":e.id})},isInvalid:{default:!1,parseHTML:e=>e.getAttribute("data-invalid")==="true",renderHTML:e=>({"data-invalid":e.isInvalid?"true":void 0})}}},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 Ob(_b)}});function ln(e){if(!e)return{type:"doc",content:[{type:"paragraph"}]};let t=/\{\{([^}]+)\}\}/g,r=[],o=0,n;for(;(n=t.exec(e))!==null;){if(n.index>o){let a=e.substring(o,n.index);a&&r.push({type:"text",text:a})}let i=n[1].trim();Ke(i)?r.push({type:"variable",attrs:{id:i,isInvalid:!1}}):r.push({type:"text",text:n[0]}),o=n.index+n[0].length}if(o<e.length){let i=e.substring(o);i&&r.push({type:"text",text:i})}return{type:"doc",content:[{type:"paragraph",content:r.length>0?r:void 0}]}}s(ln,"parseStringToContent");function ns(e){if(!e.content)return"";let t="",r=s(o=>{var n;o.type==="text"&&o.text?t+=o.text:o.type==="variable"&&((n=o.attrs)!=null&&n.id)?t+=`{{${o.attrs.id}}}`:(o.type==="paragraph"||o.type==="doc")&&o.content&&o.content.forEach(i=>r(i))},"processNode");return e.content.forEach(o=>r(o)),t}s(ns,"contentToString");import{BubbleMenu as w0}from"@tiptap/react";import{useCallback as P0}from"react";import{useAtomValue as _c}from"jotai";import{AlignCenter as l0,AlignJustify as c0,AlignLeft as u0,AlignRight as d0,Bold as m0,Italic as p0,Link as f0,Quote as g0,Strikethrough as h0,Underline as b0}from"lucide-react";import{Fragment as y0,memo as cf,useMemo as lf,useRef as C0,useState as v0,useEffect as x0}from"react";import{forwardRef as Wc}from"react";import{forwardRef as $b}from"react";import{jsx as Zb}from"react/jsx-runtime";var Uc=$b(({children:e,className:t,withShadow:r=!0,withBorder:o=!0,...n},i)=>{let a=I("courier-bg-popover courier-rounded-lg courier-text-popover-foreground",r?"courier-shadow-sm":"",o?"courier-border courier-border-border":"",t);return Zb("div",{className:a,...n,ref:i,children:e})});Uc.displayName="Surface";import qb from"@tippyjs/react";import{useCallback as Jb,useState as jb}from"react";import{Fragment as Yp,jsx as hr,jsxs as Gp}from"react/jsx-runtime";var Kp=typeof window!="undefined"?navigator.platform.toUpperCase().indexOf("MAC")>=0:!1,Kb=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-muted-foreground courier-border-b-2";return e==="Mod"?hr("kbd",{className:t,children:Kp?"\u2318":"Ctrl"}):e==="Shift"?hr("kbd",{className:t,children:"\u21E7"}):e==="Alt"?hr("kbd",{className:t,children:Kp?"\u2325":"Alt"}):hr("kbd",{className:t,children:e})},"ShortcutKey"),Xp=s(({children:e,enabled:t=!0,title:r,shortcut:o,tippyOptions:n={}})=>{let i=Zd(),a=Jb(u=>{let p=Object.entries(i).reduce((m,[d,f])=>{let C=d.replace(/[A-Z]/g,h=>`-${h.toLowerCase()}`);return{...m,[`--${C}`]:f}},{});return Gp("span",{className:I("courier-flex courier-items-center courier-gap-2 courier-px-2.5 courier-py-1 courier-bg-popover courier-text-popover-foreground courier-border courier-border-border courier-rounded-lg courier-shadow-sm courier-z-[999]",i.colorScheme==="dark"?"dark":""),style:p,tabIndex:-1,"data-placement":u["data-placement"],"data-reference-hidden":u["data-reference-hidden"],"data-escaped":u["data-escaped"],children:[r&&hr("span",{className:"courier-text-xs courier-font-medium courier-text-muted-foreground",children:r}),o&&hr("span",{className:"courier-flex courier-items-center courier-gap-0.5",children:o.map(m=>hr(Kb,{children:m},m))})]})},[o,r,i]),[l,c]=jb(null);return t?Gp(Yp,{children:[hr("span",{ref:c,children:e}),l&&hr(qb,{...n,delay:500,offset:[0,8],touch:!1,zIndex:99999,appendTo:document.body,trigger:"mouseenter focus",showOnCreate:!1,render:a,animation:!1,reference:l})]}):hr(Yp,{children:e})},"Tooltip");import{jsx as is}from"react/jsx-runtime";var Qp=Wc(({shouldShowContent:e=!0,children:t,isVertical:r=!1,className:o,...n},i)=>{let a=I("courier-text-foreground courier-inline-flex courier-h-full courier-leading-none courier-gap-0.5",r?"courier-flex-col courier-p-2":"courier-flex-row courier-p-0.5 courier-items-center",o);return e&&is(Uc,{className:a,...n,ref:i,children:t})});Qp.displayName="Toolbar";var ef=Wc(({horizontal:e,className:t,...r},o)=>{let n=I("courier-bg-border",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 is("div",{className:n,ref:o,...r})});ef.displayName="Toolbar.Divider";var tf=Wc(({children:e,buttonSize:t="icon",variant:r="ghost",className:o,tooltip:n,tooltipShortcut:i,onMouseDown:a,...l},c)=>{let u=I("courier-gap-1 courier-min-w-[2rem] courier-w-auto",o),m=is(ve,{className:u,variant:r,buttonSize:t,ref:c,onMouseDown:s(d=>{d.preventDefault(),a==null||a(d)},"handleMouseDown"),...l,children:e});return n?is(Xp,{title:n,shortcut:i,children:m}):m});tf.displayName="ToolbarButton";var as={Wrapper:Qp,Divider:ef,Button:tf};import{ChevronDown as Gb}from"lucide-react";import{useMemo as Yb}from"react";import{Fragment as Qb,jsx as eo,jsxs as rf}from"react/jsx-runtime";var Xb=s(e=>e.type==="option","isOption"),of=s(({options:e,containerRef:t})=>{let r=Yb(()=>e.find(o=>o.type==="option"&&o.isActive()),[e]);return rf(sa,{children:[eo(la,{asChild:!0,children:rf(ve,{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",eo(Gb,{className:"courier-w-3 courier-h-3"})]})}),eo(qn,{portalProps:{container:(t==null?void 0:t.current)||void 0},children:e.map(o=>{if(Xb(o))return eo(Jn,{onClick:o.onClick,className:o.isActive()?"courier-bg-accent courier-text-foreground":"",children:o.id.startsWith("heading")?eo(Qb,{children:o.id==="heading1"?eo("h1",{className:"courier-text-2xl courier-font-bold",children:o.label}):o.id==="heading2"?eo("h2",{className:"courier-text-xl courier-font-bold",children:o.label}):o.id==="heading3"?eo("h3",{className:"courier-text-lg courier-font-bold",children:o.label}):o.label}):o.label},o.id)})})]})},"ContentTypePicker");import{useAtomValue as t0,useSetAtom as r0}from"jotai";import{useCallback as St}from"react";import{v4 as o0}from"uuid";import{useMemo as e0}from"react";var nf=s((e,t,r)=>e0(()=>{if(!(e!=null&&e.conditionalRules)||!t||!r)return null;let o=e.conditionalRules.filter(n=>n.trigger.type==="node"&&t.isActive(n.trigger.name)!==n.trigger.active?!1:n.conditions.activeItems.some(i=>i==="bold"?r.isBold:i==="italic"?r.isItalic:i==="underline"?r.isUnderline:i==="strike"?r.isStrike:!1));return{getRuleForItem:n=>o.find(i=>!i.conditions.activeItems.includes(n))}},[e,t,r]),"useConditionalRules");var ss=s((e,t,r)=>{let o=r0(Le),n=t0(fe),i=nf(t,e,r),a=St(g=>{let w=-1;return e.state.doc.descendants((N,y)=>{var S;return((S=N.attrs)==null?void 0:S.id)===g?(w=y,!1):!0}),w},[e]),l=St((g,w)=>{var N,y,S;if(((N=n==null?void 0:n.type)==null?void 0:N.name)==="button"&&((y=n.attrs)!=null&&y.id)){let P=n.attrs.id,T=a(P);if(T>=0){let x=e.state.tr;return x.setNodeMarkup(T,void 0,{...(S=e.state.doc.nodeAt(T))==null?void 0:S.attrs,[g]:w}),e.view.dispatch(x),setTimeout(()=>{let k=a(P);if(k>=0){let M=e.state.doc.nodeAt(k);M&&o(M)}},0),!0}}return!1},[e,n,a,o]),c=St(()=>{var g,w;if(((g=n==null?void 0:n.type)==null?void 0:g.name)==="button"&&((w=n.attrs)!=null&&w.id)){let N=n.attrs.id,y=a(N);if(y>=0){let S=e.state.doc.nodeAt(y);if(!S)return!1;let P={...S.attrs,fontWeight:"normal",fontStyle:"normal",isUnderline:!1,isStrike:!1},T=e.state.tr;return T.setNodeMarkup(y,void 0,P),e.view.dispatch(T),setTimeout(()=>{let x=a(N);if(x>=0){let k=e.state.doc.nodeAt(x);k&&o(k)}},0),!0}}return!1},[e,n,a,o]),u=St(()=>{var g;if(((g=n==null?void 0:n.type)==null?void 0:g.name)==="button"){let w=n.attrs.fontWeight==="bold"?"normal":"bold";if(l("fontWeight",w))return!0}if(i&&r){let w=i.getRuleForItem("bold");if(w&&w.action.type==="toggle_off"){let N=e.chain().focus();return w.action.targets.forEach(y=>{y==="italic"&&r.isItalic&&N.toggleItalic()}),N.toggleBold().run(),!0}}return e.chain().focus().toggleBold().run()},[e,n,l,i,r]),p=St(()=>{var g;if(((g=n==null?void 0:n.type)==null?void 0:g.name)==="button"){let w=n.attrs.fontStyle==="italic"?"normal":"italic";if(l("fontStyle",w))return!0}if(i&&r){let w=i.getRuleForItem("italic");if(w&&w.action.type==="toggle_off"){let N=e.chain().focus();return w.action.targets.forEach(y=>{y==="bold"&&r.isBold&&N.toggleBold()}),N.toggleItalic().run(),!0}}return e.chain().focus().toggleItalic().run()},[e,n,l,i,r]),m=St(()=>{var g;if(((g=n==null?void 0:n.type)==null?void 0:g.name)==="button"){let w=!n.attrs.isStrike;if(l("isStrike",w))return!0}return e.chain().focus().toggleMark("strike").run()},[e,n,l]),d=St(()=>{var g;if(((g=n==null?void 0:n.type)==null?void 0:g.name)==="button"){let w=!n.attrs.isUnderline;if(l("isUnderline",w))return!0}return e.chain().focus().toggleMark("underline").run()},[e,n,l]),f=St(()=>e.chain().focus().setTextAlign("left").run(),[e]),C=St(()=>e.chain().focus().setTextAlign("center").run(),[e]),h=St(()=>e.chain().focus().setTextAlign("right").run(),[e]),b=St(()=>e.chain().focus().setTextAlign("justify").run(),[e]),v=St((g,w)=>e.chain().focus().setLink({href:g,target:w?"_blank":""}).run(),[e]),E=St(()=>{let g=e.isActive("blockquote");if(e.chain().focus().toggleBlockquote().run()){let{selection:y}=e.state,S=y.$anchor;if(g){let P=S.node();(P.type.name==="paragraph"||P.type.name==="heading")&&o(P)}else for(let P=S.depth;P>0;P--){let T=S.node(P);if(T.type.name==="blockquote"){if(T.attrs.id)o(T);else{let x=S.before(P),k=`node-${o0()}`,M=e.state.tr;M.setNodeMarkup(x,void 0,{...T.attrs,id:k}),e.view.dispatch(M);let A=e.state.doc.nodeAt(x);A&&o(A)}break}}}},[e,o]);return{onBold:u,onItalic:p,onStrike:m,onUnderline:d,onAlignLeft:f,onAlignCenter:C,onAlignRight:h,onAlignJustify:b,onLink:v,onQuote:E,resetButtonFormatting:c}},"useTextmenuCommands");import{useEditorState as n0}from"@tiptap/react";var af=s(e=>n0({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{useAtomValue as i0}from"jotai";import{useCallback as sf,useEffect as a0,useState as s0}from"react";var ls=s(e=>{let t=i0(fe),[r,o]=s0({isBold:!1,isItalic:!1,isUnderline:!1,isStrike:!1,isAlignLeft:!1,isAlignCenter:!1,isAlignRight:!1,isAlignJustify:!1,isQuote:!1,isLink:!1}),n=sf(()=>{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 a0(()=>{if(e)return n(),e.on("selectionUpdate",n),e.on("transaction",n),()=>{e.off("selectionUpdate",n),e.off("transaction",n)}},[e,n]),{shouldShow:sf(({editor:a})=>{let l=["paragraph","heading","blockquote"],{$head:c}=a.state.selection,u=c.node();if(l.includes(u.type.name)&&u.attrs.isSelected)return!0;for(let p=1;p<=c.depth;p++){let m=c.node(p);if(m.type.name==="blockquote"){if(m.attrs.isSelected)return!0;let d=a.state.selection.from!==a.state.selection.to;if(a.isFocused&&d)return!0}}return!1},[]),...r}},"useTextmenuStates");import{jsx as rt,jsxs as k0}from"react/jsx-runtime";var T0=cf(as.Button),E0=cf(of),Ei=s(({editor:e,config:t})=>{var S;let r=ls(e),o=af(e),n=C0(null),i=_c(ba),a=_c(fe),l=a==null?void 0:a.type.name,c=_c(Pm),[u,p]=v0(()=>{let{selection:P}=e.state;return{from:P.from,to:P.to,empty:P.empty}});x0(()=>{let P=s(()=>{let{selection:T}=e.state;p({from:T.from,to:T.to,empty:T.empty})},"updateSelection");return e.on("selectionUpdate",P),e.on("transaction",P),()=>{e.off("selectionUpdate",P),e.off("transaction",P)}},[e]);let m=lf(()=>!u.empty&&u.from!==u.to,[u]),d=lf(()=>t||c(l||"",m),[t,c,l,m]),f=ss(e,d,r),C=s(()=>{let{selection:P}=e.state;if(!(P.empty&&!r.isLink&&!e.can().setLink({href:""})))if(r.isLink){let T=e.state.tr.setMeta("showLinkForm",{from:P.from,to:P.to});e.view.dispatch(T)}else{let T=e.state.tr.setMeta("showLinkForm",{from:P.from,to:P.to});e.view.dispatch(T)}},"handleLinkToggle"),h=s(()=>{if(i.ref){let P=i.ref,T=P.value,x=i.caretPosition||P.selectionStart||0,k=T.substring(0,x),M=T.substring(x),A=`${k}{{${M}`,R=x+2;P.focus();let B=new Event("input",{bubbles:!0,cancelable:!0});if(Object.defineProperty(B,"target",{writable:!1,value:{...P,value:A}}),P.value=A,P.dispatchEvent(B),P.setSelectionRange(R,R),P.getBoundingClientRect()){let L=A.slice(0,R),D=document.createElement("span");D.style.font=window.getComputedStyle(P).font,D.style.whiteSpace="pre-wrap",D.textContent=L,document.body.appendChild(D);let V=D.offsetWidth;document.body.removeChild(D);let O=parseInt(window.getComputedStyle(P).lineHeight),_=L.split(`
|
|
200
|
-
`).length-1,U=new CustomEvent("showVariableSuggestions",{detail:{cursorPosition:{left:Math.min(V%P.offsetWidth,P.offsetWidth-200),top:_*O+30}},bubbles:!0});P.dispatchEvent(U)}return}e.chain().focus().insertContent([{type:"variable",attrs:{id:"",isInvalid:!1}}]).run()},"handleVariableClick"),b=s((P,T,x,k,M,A,R)=>{let B=d[P];return!B||Array.isArray(B)||B.state==="hidden"?null:rt(T0,{tooltip:x,tooltipShortcut:A,onClick:k,active:M,disabled:B.state==="disabled",...R,children:T},P)},"renderButton"),v=s((P,T)=>{let x=P.filter(k=>!!k);return x.length>0?rt("div",{className:"courier-flex courier-items-center courier-gap-0.5",children:x},T):null},"renderGroup"),E=v([((S=d.contentType)==null?void 0:S.state)==="enabled"&&rt(E0,{options:o,containerRef:n},"content-type")],"content-type-group"),g=v([b("bold",rt(m0,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Bold",f.onBold,r.isBold,["Mod","B"]),b("italic",rt(p0,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Italic",f.onItalic,r.isItalic,["Mod","I"]),b("underline",rt(b0,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Underline",f.onUnderline,r.isUnderline,["Mod","U"]),b("strike",rt(h0,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Strikethrough",f.onStrike,r.isStrike,["Mod","Shift","S"])],"text-style-group"),w=v([b("alignLeft",rt(u0,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Align left",f.onAlignLeft,r.isAlignLeft,["Shift","Mod","L"]),b("alignCenter",rt(l0,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Align center",f.onAlignCenter,r.isAlignCenter,["Shift","Mod","E"]),b("alignRight",rt(d0,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Align right",f.onAlignRight,r.isAlignRight,["Shift","Mod","R"]),b("alignJustify",rt(c0,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Justify",f.onAlignJustify,r.isAlignJustify,["Shift","Mod","J"])],"alignment-group"),N=v([b("quote",rt(g0,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Quote",f.onQuote,r.isQuote,["Mod","Shift","B"])],"block-style-group"),y=v([b("link",rt(f0,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Link",C,r.isLink,["Mod","K"]),b("variable",rt(vm,{width:16}),"Variable",h,!1,["Mod","V"],{"data-variable-button":"true"})],"insert-group");return rt(as.Wrapper,{ref:n,className:"courier-border-b rounded-b-none rounded-t-sm !courier-shadow-md courier-justify-center courier-rounded-lg",children:[E,g,w,N,y].filter(Boolean).map((P,T)=>k0(y0,{children:[P,T<[E,g,w,N,y].filter(Boolean).length-1&&rt(as.Divider,{})]},`item-${T}`))})},"TextMenu");import{jsx as uf}from"react/jsx-runtime";var N0={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"}},ki=s(({editor:e})=>{let t=P0(({editor:r})=>r.isFocused&&r.isEditable,[]);return e?uf(w0,{editor:e,tippyOptions:{appendTo:r=>{var o;return(o=r.closest(".theme-container"))!=null?o:document.body},getReferenceClientRect:()=>e.view.dom.getBoundingClientRect(),placement:"top",offset:[0,8],zIndex:50,popperOptions:{modifiers:[{name:"flip",enabled:!1}]}},shouldShow:t,updateDelay:100,children:uf(Ei,{editor:e,config:N0})}):null},"VariableEditorToolbar");ki.displayName="VariableEditorToolbar";import{jsx as mf,jsxs as R0}from"react/jsx-runtime";var br=Ao.forwardRef(({value:e="",onChange:t,placeholder:r,className:o,disabled:n=!1,showToolbar:i=!1,onFocus:a,onBlur:l},c)=>{let u=Ao.useRef(!1),p=Ao.useRef(e),m=I0({immediatelyRender:!1,extensions:[an,sn.configure({HTMLAttributes:{class:"courier-m-0 courier-leading-normal"}}),es,os,No,Mo,M0.configure({placeholder:r||"",emptyEditorClass:"is-editor-empty"})],content:ln(e),editable:!n,editorProps:{attributes:{class:"courier-outline-none courier-min-h-[20px]"},handleKeyDown:(f,C)=>C.key==="Enter"&&!C.shiftKey?(C.preventDefault(),!0):!1},onUpdate:({editor:f})=>{if(u.current)return;let C=ns(f.getJSON());C!==p.current&&(p.current=C,t==null||t(C))},onFocus:()=>{a==null||a()},onBlur:()=>{l==null||l()}});df(()=>{if(!m||e===p.current)return;u.current=!0,p.current=e;let f=setTimeout(()=>{let C=ln(e);m.commands.setContent(C),u.current=!1},0);return()=>clearTimeout(f)},[m,e]),df(()=>{m&&m.setEditable(!n)},[m,n]);let d=S0(()=>{m==null||m.commands.focus()},[m]);return Ao.useImperativeHandle(c,()=>{let f=m==null?void 0:m.view.dom.parentElement;return f&&(f.focus=d),f},[m,d]),R0("div",{ref:c,className:I("variable-textarea-placeholder variable-editor-container","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 md:courier-text-sm",n&&"courier-cursor-not-allowed courier-opacity-50","[&_.ProseMirror]:courier-outline-none [&_.ProseMirror]:courier-min-h-[20px] [&_.ProseMirror]:courier-border-none [&_.ProseMirror]:courier-p-0","[&_.tiptap]:courier-outline-none [&_.tiptap]:courier-border-none",o),onClick:()=>m==null?void 0:m.commands.focus(),children:[mf(A0,{editor:m,className:"courier-w-full"}),i&&!n&&mf(ki,{editor:m})]})});br.displayName="VariableTextarea";import L0 from"@tiptap/extension-placeholder";import{EditorContent as B0,useEditor as D0}from"@tiptap/react";import*as Io from"react";import{useCallback as H0,useEffect as pf}from"react";import{jsx as ff,jsxs as V0}from"react/jsx-runtime";var wi=Io.forwardRef(({value:e="",onChange:t,placeholder:r,className:o,disabled:n=!1,readOnly:i=!1,showToolbar:a=!1,onFocus:l,onBlur:c},u)=>{let p=Io.useRef(!1),m=Io.useRef(e),d=D0({immediatelyRender:!1,extensions:[an,sn.configure({HTMLAttributes:{class:"courier-m-0 courier-leading-normal"}}),es,os,No,Mo,L0.configure({placeholder:r||"",emptyEditorClass:"is-editor-empty"})],content:ln(e),editable:!n&&!i,editorProps:{attributes:{class:"courier-outline-none"},handleKeyDown:(C,h)=>h.key==="Enter"?(h.preventDefault(),!0):!1},onUpdate:({editor:C})=>{if(p.current)return;let h=ns(C.getJSON());h!==m.current&&(m.current=h,t==null||t(h))},onFocus:()=>{l==null||l()},onBlur:()=>{c==null||c()}});pf(()=>{if(!d||e===m.current)return;p.current=!0,m.current=e;let C=setTimeout(()=>{let h=ln(e);d.commands.setContent(h),p.current=!1},0);return()=>clearTimeout(C)},[d,e]),pf(()=>{d&&d.setEditable(!n&&!i)},[d,n,i]);let f=H0(()=>{d==null||d.commands.focus()},[d]);return Io.useImperativeHandle(u,()=>{let C=d==null?void 0:d.view.dom.parentElement;return C&&(C.focus=f),C},[d,f]),V0("div",{ref:u,className:I("variable-input-placeholder variable-editor-container","courier-flex courier-items-center courier-w-full courier-rounded-md courier-border-none courier-bg-transparent courier-text-foreground courier-py-1",(n||i)&&"courier-cursor-default",n&&"courier-opacity-50","[&_.tiptap]:courier-outline-none [&_.tiptap]:courier-border-none",o),onClick:()=>!i&&!n&&(d==null?void 0:d.commands.focus()),children:[ff(B0,{editor:d,className:"courier-w-full courier-flex-1"}),a&&!n&&ff(ki,{editor:d})]})});wi.displayName="VariableInput";import{jsx as un,jsxs as HL}from"react/jsx-runtime";var cn=30,cs=s(({color:e="currentColor",width:t=cn,height:r=cn,...o})=>un(z,{...o,width:t,height:r,children:un("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"),us=s(({color:e="currentColor",width:t=cn,height:r=cn,...o})=>un(z,{...o,width:t,height:r,children:un("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"),ds=s(({color:e="currentColor",width:t=cn,height:r=cn,...o})=>un(z,{...o,width:t,height:r,children:un("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");import{jsx as ge,jsxs as to}from"react/jsx-runtime";var gf=s(({element:e,editor:t})=>{let r=O0({resolver:F0(Qa),defaultValues:{...Se,...e==null?void 0:e.attrs}}),{updateNodeAttributes:o}=Qe({editor:t,element:e,form:r,nodeType:"button"});return e?to(Me,{...r,children:[ge(tt,{type:"button"}),to("form",{onChange:()=>{o(r.getValues())},children:[ge("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Link"}),ge(J,{control:r.control,name:"link",render:({field:n})=>to(Z,{children:[ge(q,{children:ge(br,{value:n.value,onChange:i=>{n.onChange(i),o({...r.getValues(),link:i})},showToolbar:!0})}),ge(j,{})]})}),ge(le,{className:"courier-mt-6 courier-mb-4"}),ge("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Background"}),ge(J,{control:r.control,name:"backgroundColor",render:({field:n})=>to(Z,{className:"courier-mb-4",children:[ge(q,{children:ge(Ge,{...n,defaultValue:Se.backgroundColor,onChange:i=>{n.onChange(i),o({...r.getValues(),[n.name]:i})}})}),ge(j,{})]})}),ge(le,{className:"courier-mt-6 courier-mb-4"}),ge("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Frame"}),ge(J,{control:r.control,name:"padding",render:({field:n})=>to(Z,{className:"courier-mb-2",children:[ge(q,{children:ge(pe,{type:"number",min:0,...n})}),ge(j,{})]})}),ge(J,{control:r.control,name:"alignment",render:({field:n})=>to(Z,{children:[ge(q,{children:to(Gt,{type:"single",value:n.value,onValueChange:i=>{n.onChange(i),o({...r.getValues(),alignment:i})},className:"courier-w-full courier-border courier-rounded-md courier-border-border courier-p-0.5",children:[ge(dt,{size:"sm",value:"left",className:"courier-w-full",children:ge(cs,{className:"courier-h-4 courier-w-4"})}),ge(dt,{size:"sm",value:"center",className:"courier-w-full",children:ge(us,{className:"courier-h-4 courier-w-4"})}),ge(dt,{size:"sm",value:"right",className:"courier-w-full",children:ge(ds,{className:"courier-h-4 courier-w-4"})})]})}),ge(j,{})]})}),ge(le,{className:"courier-mt-6 courier-mb-4"}),ge("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Border"}),ge(J,{control:r.control,name:"borderRadius",render:({field:n})=>to(Z,{children:[ge(q,{children:ge(pe,{startAdornment:ge(Qn,{}),type:"number",min:0,...n})}),ge(j,{})]})})]})]}):null},"ButtonForm");import{mergeAttributes as j0,Node as K0}from"@tiptap/core";import{ReactNodeViewRenderer as G0}from"@tiptap/react";import{v4 as Y0}from"uuid";import{useAtomValue as U0,useSetAtom as W0}from"jotai";import{useCallback as Lr,useRef as So,useEffect as bf,useLayoutEffect as _0,useState as z0}from"react";import{Fragment as J0,jsx as yr,jsxs as zc}from"react/jsx-runtime";var $0=s(e=>{if(!e)return[];let t=[],r=/\{\{([^}]+)\}\}/g,o=0,n;for(r.lastIndex=0;(n=r.exec(e))!==null;){if(!n[0].startsWith("{{")||!n[0].endsWith("}}"))continue;n.index>o&&t.push({type:"text",content:e.substring(o,n.index)});let i=n[1].trim();Ke(i)?t.push({type:"variable",name:i}):t.push({type:"text",content:n[0]}),o=n.index+n[0].length}return o<e.length&&t.push({type:"text",content:e.substring(o)}),t},"parseLabel"),Z0=s(({parts:e})=>{let t=U0(go);return yr(J0,{children:e.map((r,o)=>{if(r.type==="text")return yr("span",{children:r.content},o);let n=t[r.name];return zc("span",{className:"courier-inline-flex courier-items-center courier-gap-0.5 courier-rounded courier-border courier-px-1.5 courier-pl-1 courier-py-[1px] courier-text-sm courier-variable-node courier-font-mono courier-max-w-full courier-tracking-[0.64px] courier-variable-in-button",style:{backgroundColor:n?"#EFF6FF":"#FFFBEB",borderColor:n?"#BFDBFE":"#FDE68A",color:"#000000"},children:[yr(rs,{color:n?void 0:"#B45309"}),zc("span",{className:"courier-truncate courier-min-w-0",style:{color:"#000000"},children:[r.name,n?`="${n}"`:""]})]},o)})})},"ButtonLabelDisplay"),hf=s(({label:e,backgroundColor:t,textColor:r,onLabelChange:o,editable:n})=>{let i=So(null),a=So(e),l=So(!1),[c,u]=z0(!1),p=$0(e),d=p.some(y=>y.type==="variable")&&!c;_0(()=>{if(!i.current||!d)return;Array.from(i.current.childNodes).filter(S=>S.nodeType===Node.TEXT_NODE).forEach(S=>S.remove())},[d,e]);let f=So(d),C=So(!0);bf(()=>{if(!i.current||d){f.current=d;return}let y=f.current&&!d;f.current=d,(C.current||y||!l.current&&e!==a.current)&&(i.current.textContent=e),C.current=!1,a.current=e},[e,d]);let h=Lr(()=>{if(i.current&&!d){l.current=!0;let y=i.current.textContent||"";a.current=y,o(y),requestAnimationFrame(()=>{l.current=!1})}},[o,d]),b=Lr(y=>{var S;if(d){y.preventDefault(),y.stopPropagation();return}if(y.key==="Enter"&&(y.preventDefault(),(S=i.current)==null||S.blur()),(y.metaKey||y.ctrlKey)&&y.key==="a"&&(y.preventDefault(),y.stopPropagation(),i.current)){let P=document.createRange();P.selectNodeContents(i.current);let T=window.getSelection();T==null||T.removeAllRanges(),T==null||T.addRange(P)}},[d]),v=Lr(()=>{u(!0)},[]),E=Lr(()=>{u(!1)},[]),g=Lr(y=>{let S=i.current;if(!S)return;if(d&&n){y.stopPropagation(),setTimeout(()=>{S.focus();let x=document.createRange();x.selectNodeContents(S),x.collapse(!1);let k=window.getSelection();k==null||k.removeAllRanges(),k==null||k.addRange(x)},0);return}if(!n)return;let P=s(()=>{let x=window.getSelection();if(!x||x.rangeCount===0)return;let k=x.getRangeAt(0),M=S.contains(k.startContainer),A=S.contains(k.endContainer);if(M&&!A){let R=document.createRange();R.selectNodeContents(S),x.removeAllRanges(),x.addRange(R)}},"checkAndConstrainSelection"),T=s(x=>{let k=S.getBoundingClientRect();(x.clientX<k.left||x.clientX>k.right||x.clientY<k.top||x.clientY>k.bottom)&&P(),document.removeEventListener("mouseup",T)},"handleMouseUp");document.addEventListener("mouseup",T)},[n,d]),w=d?yr(Z0,{parts:p}):n?null:e,N=Lr(y=>{d&&n&&y.stopPropagation()},[d,n]);return yr("div",{ref:i,contentEditable:n&&!d,suppressContentEditableWarning:!0,tabIndex:n&&d?0:void 0,onInput:h,onKeyDown:b,onPointerDown:g,onClick:N,onFocus:v,onBlur:E,className:I("courier-inline-flex courier-justify-start courier-px-2 courier-py-1 courier-text-sm courier-rounded-sm courier-border courier-border-border courier-outline-none",n&&!d&&"courier-cursor-text"),style:{backgroundColor:t,color:r,borderColor:"transparent",borderRadius:"4px",caretColor:r,WebkitUserSelect:"text",userSelect:"text"},children:w})},"EditableButton"),q0=s(({button1Label:e,button1Link:t,button1BackgroundColor:r,button1TextColor:o,button2Label:n,button2Link:i,button2BackgroundColor:a,button2TextColor:l,padding:c=6,onButton1LabelChange:u,onButton2LabelChange:p,editable:m=!1})=>yr("div",{className:"node-element",children:zc("div",{className:"courier-flex courier-gap-1 courier-justify-start",style:{marginTop:`${c}px`,marginBottom:`${c}px`},children:[yr(hf,{label:e,backgroundColor:r,textColor:o,onLabelChange:u||(()=>{}),editable:m},"button1"),yr(hf,{label:n,backgroundColor:a,textColor:l,onLabelChange:p||(()=>{}),editable:m},"button2")]})}),"ButtonRowComponent"),yf=s(e=>{let t=W0(Le),r=So({}),o=So({}),n=Lr(()=>{if(!e.editor.isEditable)return;let l=$e(e);l&&t(l)},[e,t]),i=Lr(l=>{o.current.button1=l,r.current.button1&&clearTimeout(r.current.button1),r.current.button1=setTimeout(()=>{o.current.button1!==void 0&&e.updateAttributes({button1Label:o.current.button1})},300)},[e]),a=Lr(l=>{o.current.button2=l,r.current.button2&&clearTimeout(r.current.button2),r.current.button2=setTimeout(()=>{o.current.button2!==void 0&&e.updateAttributes({button2Label:o.current.button2})},300)},[e]);return bf(()=>{let l=r.current;return()=>{l.button1&&clearTimeout(l.button1),l.button2&&clearTimeout(l.button2)}},[]),yr(et,{id:e.node.attrs.id,className:I(e.node.attrs.isSelected&&"selected-element"),onClick:n,editor:e.editor,"data-node-type":"buttonRow",children:yr(q0,{...e.node.attrs,onButton1LabelChange:i,onButton2LabelChange:a,editable:e.editor.isEditable})})},"ButtonRowComponentNode");var er={button1Label:"Register",button1Link:"",button1BackgroundColor:"#000000",button1TextColor:"#ffffff",button2Label:"Learn more",button2Link:"",button2BackgroundColor:"#ffffff",button2TextColor:"#000000",padding:6},ms=K0.create({name:"buttonRow",group:"block",atom:!0,selectable:!1,onCreate(){ze(this.editor,this.name)},addAttributes(){return{id:{default:()=>`node-${Y0()}`,parseHTML:e=>e.getAttribute("id"),renderHTML:e=>({id:e.id})},button1Label:{default:er.button1Label,parseHTML:e=>e.getAttribute("data-button1-label"),renderHTML:e=>({"data-button1-label":e.button1Label})},button1Link:{default:er.button1Link,parseHTML:e=>e.getAttribute("data-button1-link"),renderHTML:e=>({"data-button1-link":e.button1Link})},button1BackgroundColor:{default:er.button1BackgroundColor,parseHTML:e=>e.getAttribute("data-button1-bg"),renderHTML:e=>({"data-button1-bg":e.button1BackgroundColor})},button1TextColor:{default:er.button1TextColor,parseHTML:e=>e.getAttribute("data-button1-color"),renderHTML:e=>({"data-button1-color":e.button1TextColor})},button2Label:{default:er.button2Label,parseHTML:e=>e.getAttribute("data-button2-label"),renderHTML:e=>({"data-button2-label":e.button2Label})},button2Link:{default:er.button2Link,parseHTML:e=>e.getAttribute("data-button2-link"),renderHTML:e=>({"data-button2-link":e.button2Link})},button2BackgroundColor:{default:er.button2BackgroundColor,parseHTML:e=>e.getAttribute("data-button2-bg"),renderHTML:e=>({"data-button2-bg":e.button2BackgroundColor})},button2TextColor:{default:er.button2TextColor,parseHTML:e=>e.getAttribute("data-button2-color"),renderHTML:e=>({"data-button2-color":e.button2TextColor})},padding:{default:er.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",j0(e,{"data-type":"buttonRow"})]},addNodeView(){return G0(yf,{stopEvent:({event:e})=>!(e.type==="dragstart"||e.type==="drop")})},addCommands(){return{setButtonRow:e=>({chain:t})=>t().insertContent({type:this.name,attrs:{...er,...e}}).run()}}});import{zodResolver as X0}from"@hookform/resolvers/zod";import{useForm as Q0}from"react-hook-form";import{z as Vt}from"zod";var Cf=Vt.object({columnsCount:Vt.number().min(1).max(4).default(2),paddingHorizontal:Vt.number().default(0),paddingVertical:Vt.number().default(0),backgroundColor:Vt.string().default("transparent"),borderWidth:Vt.number().default(0),borderRadius:Vt.number().default(0),borderColor:Vt.string().default("transparent"),cells:Vt.array(Vt.object({elements:Vt.array(Vt.any())})).optional()});import{jsx as ie,jsxs as tr}from"react/jsx-runtime";var $c=s(({element:e,editor:t})=>{let r=Q0({resolver:X0(Cf),defaultValues:{...Ye,...e==null?void 0:e.attrs}}),{updateNodeAttributes:o}=Qe({editor:t,element:e,form:r,nodeType:"column"}),n=s(i=>{if(!t||!e)return;let a=null;if(t.state.doc.descendants((f,C)=>f.attrs.id===e.attrs.id&&f.type.name==="column"?(a=C,!1):!0),a===null)return;let l=t.state.doc.nodeAt(a);if(!l)return;let c=e.attrs.id,u=t.schema,p=t.state.tr,m=l.firstChild;if(!m||m.type.name!=="columnRow"){let f=Array.from({length:i},(h,b)=>u.nodes.columnCell.create({index:b,columnId:c,isEditorMode:!1})),C=u.nodes.columnRow.create({},f);p.replaceWith(a+1,a+l.nodeSize-1,C),p.setNodeMarkup(a,void 0,{...l.attrs,columnsCount:i}),p.setMeta("addToHistory",!0),t.view.dispatch(p);return}let d=m.childCount;if(i!==d){if(i>d){let f=i-d,h=a+1+m.nodeSize-1;for(let b=0;b<f;b++){let v=u.nodes.columnCell.create({index:d+b,columnId:c});p.insert(h+b*v.nodeSize,v)}}else{let f=d-i,h=a+1;for(let v=0;v<d-f;v++){let E=m.child(v);h+=E.nodeSize}let b=0;for(let v=d-f;v<d;v++){let E=m.child(v);b+=E.nodeSize}p.delete(h,h+b)}p.setNodeMarkup(a,void 0,{...l.attrs,columnsCount:i}),p.setMeta("addToHistory",!0),t.view.dispatch(p)}},"updateColumnCount");return e?tr(Me,{...r,children:[ie(tt,{type:"column",label:"Column layout"}),tr("form",{onChange:()=>{o(r.getValues())},children:[ie("h4",{className:"courier-text-sm courier-font-medium courier-text-foreground courier-mb-3",children:"Columns count"}),ie(J,{control:r.control,name:"columnsCount",render:({field:i})=>tr(Z,{className:"courier-mb-4",children:[ie(q,{children:ie(Gt,{type:"single",className:"courier-w-full courier-border courier-rounded-md courier-border-border courier-bg-secondary courier-p-0.5 courier-mb-3 courier-shadow-sm",value:i.value.toString(),onValueChange:a=>{if(a){let l=Number(a);i.onChange(l),n(l)}},children:[1,2,3,4].map(a=>ie(dt,{value:a.toString(),className:"courier-w-12 courier-h-7",children:ie("span",{className:"courier-text-sm courier-font-medium",children:a})},a))})}),ie(j,{})]})}),ie(le,{className:"courier-mt-6 courier-mb-4"}),ie("h4",{className:"courier-text-sm courier-font-medium courier-text-foreground courier-mb-3",children:"Frame"}),tr("div",{className:"courier-flex courier-flex-row courier-gap-3 courier-mb-3",children:[ie(J,{control:r.control,name:"paddingHorizontal",render:({field:i})=>tr(Z,{children:[ie(q,{children:ie(pe,{startAdornment:ie(ai,{}),type:"number",min:0,...i})}),ie(j,{})]})}),ie(J,{control:r.control,name:"paddingVertical",render:({field:i})=>tr(Z,{children:[ie(q,{children:ie(pe,{startAdornment:ie(vo,{}),type:"number",min:0,...i})}),ie(j,{})]})})]}),ie(J,{control:r.control,name:"backgroundColor",render:({field:i})=>tr(Z,{className:"courier-mb-4",children:[ie(q,{children:ie(Ge,{...i,defaultValue:Ye.backgroundColor,onChange:a=>{i.onChange(a),o({...r.getValues(),[i.name]:a})}})}),ie(j,{})]})}),ie(le,{className:"courier-mt-6 courier-mb-4"}),ie("h4",{className:"courier-text-sm courier-font-medium courier-text-foreground courier-mb-3",children:"Border"}),tr("div",{className:"courier-flex courier-flex-row courier-gap-3 courier-mb-3",children:[ie(J,{control:r.control,name:"borderWidth",render:({field:i})=>tr(Z,{children:[ie(q,{children:ie(pe,{startAdornment:ie(Ar,{}),type:"number",min:0,...i})}),ie(j,{})]})}),ie(J,{control:r.control,name:"borderRadius",render:({field:i})=>tr(Z,{children:[ie(q,{children:ie(pe,{startAdornment:ie(Qn,{}),type:"number",min:0,...i})}),ie(j,{})]})})]}),ie(J,{control:r.control,name:"borderColor",render:({field:i})=>tr(Z,{className:"courier-mb-4",children:[ie(q,{children:ie(Ge,{...i,defaultValue:Ye.borderColor,onChange:a=>{i.onChange(a),o({...r.getValues(),[i.name]:a})}})}),ie(j,{})]})})]})]}):null},"ColumnForm");import{mergeAttributes as ey,Node as ty}from"@tiptap/core";var ps=ty.create({name:"columnRow",group:"columnContent",content:"columnCell+",isolating:!0,parseHTML(){return[{tag:'div[data-type="column-row"]'}]},renderHTML({HTMLAttributes:e}){return["div",ey(e,{"data-type":"column-row",class:"courier-flex courier-flex-row courier-gap-2 courier-w-full",style:"display: flex; flex-direction: row; gap: 0.5rem; width: 100%;"}),0]},addCommands(){return{insertColumnRow:()=>({chain:e})=>e().insertContent({type:this.name}).run()}}});import{mergeAttributes as sy,Node as ly}from"@tiptap/core";import{ReactNodeViewRenderer as cy}from"@tiptap/react";import{Plugin as uy,PluginKey as dy}from"@tiptap/pm/state";import{NodeViewWrapper as ry,NodeViewContent as oy}from"@tiptap/react";import{useEffect as vf,useRef as ny,useState as xf}from"react";import{useAtomValue as iy}from"jotai";import{jsx as Tf,jsxs as ay}from"react/jsx-runtime";var Ef=s(e=>{let t=ny(null),[r,o]=xf(!1),n=iy(ft),i=e.node.attrs.isEditorMode===!0,[a,l]=xf(e.editor.isEditable);vf(()=>{let p=t.current;if(p)return Mt({element:p,getData:()=>({type:"column-cell",columnId:e.node.attrs.columnId,index:e.node.attrs.index}),onDragEnter:()=>o(!0),onDragLeave:()=>o(!1),onDrop:()=>o(!1)})},[e.node.attrs.columnId,e.node.attrs.index]),vf(()=>{let p=s(()=>{l(e.editor.isEditable)},"handleUpdate");return e.editor.on("update",p),e.editor.on("transaction",p),e.editor.on("selectionUpdate",p),()=>{e.editor.off("update",p),e.editor.off("transaction",p),e.editor.off("selectionUpdate",p)}},[e.editor]);let c=!a&&!n,u=!i&&!c;return ay(ry,{ref:t,"data-column-cell":"true","data-column-id":e.node.attrs.columnId,"data-cell-index":e.node.attrs.index,className:I("courier-flex-1 courier-min-h-[120px] courier-flex courier-flex-col courier-p-4 courier-pl-0 courier-w-full",!c&&"courier-border",!c&&(r?"courier-border-solid courier-border-t-2 courier-border-t-blue-500 courier-border-r-transparent courier-border-b-transparent courier-border-l-transparent courier-rounded-none":"courier-border-dashed courier-border-gray-300 courier-rounded"),u&&"courier-items-center courier-justify-center courier-text-center courier-text-sm courier-text-gray-400"),children:[u&&Tf("span",{className:"courier-pointer-events-none courier-pl-4",children:"Drag and drop content blocks"}),Tf(oy,{className:"courier-flex courier-flex-col courier-gap-2 courier-w-full"})]})},"ColumnCellComponentNode");var fs=ly.create({name:"columnCell",group:"columnRow",content:"block*",isolating:!0,selectable:!1,addAttributes(){return{index:{default:0,parseHTML:e=>{let t=e.getAttribute("data-cell-index");return t?parseInt(t,10):0},renderHTML:e=>({"data-cell-index":e.index})},columnId:{default:null,parseHTML:e=>e.getAttribute("data-column-id"),renderHTML:e=>({"data-column-id":e.columnId})},isEditorMode:{default:!1,parseHTML:e=>e.getAttribute("data-editor-mode")==="true",renderHTML:e=>({"data-editor-mode":e.isEditorMode?"true":"false"})}}},parseHTML(){return[{tag:'div[data-type="column-cell"]'}]},renderHTML({HTMLAttributes:e}){return["div",sy(e,{"data-type":"column-cell",style:"flex: 1 1 0%; width: 0; min-height: 120px;"}),0]},addNodeView(){return cy(Ef)},addCommands(){return{insertColumnCell:()=>({chain:e})=>e().insertContent({type:this.name}).run()}},addProseMirrorPlugins(){return[new uy({key:new dy("columnCellCleanup"),appendTransaction:(e,t,r)=>{if(!e.some(i=>i.docChanged))return null;let o=r.tr,n=!1;return r.doc.descendants((i,a)=>{var l,c;if(i.type.name==="columnCell"){let u=i.childCount===0,p=i.childCount===1&&((l=i.firstChild)==null?void 0:l.type.name)==="paragraph"&&((c=i.firstChild)==null?void 0:c.content.size)===0,m=i.attrs.isEditorMode;u?m=!1:u||(m=!0),m!==i.attrs.isEditorMode&&(o.setNodeAttribute(a,"isEditorMode",m),n=!0),p&&m===!1&&(o.delete(a+1,a+i.nodeSize-1),n=!0)}return!0}),n?o:null}})]}});import{useRef as gs,useCallback as kf,useState as wf,lazy as fy,Suspense as gy,useEffect as hy}from"react";import{forwardRef as my}from"react";import{jsx as py}from"react/jsx-runtime";var Zc=my(({className:e,...t},r)=>{let o=I("courier-animate-spin courier-rounded-full courier-border-2 courier-border-current courier-border-t-transparent courier-h-4 courier-w-4",e);return py("div",{className:o,ref:r,...t})});Zc.displayName="Spinner";import{jsx as dn}from"react/jsx-runtime";var by=s(()=>{let[e,t]=wf(!1),r=gs(null);return hy(()=>{var i;let o=s(()=>{if(r.current){let a=r.current.closest(".dark")!==null;t(a)}},"checkDarkMode");o();let n=new MutationObserver(o);return(i=r.current)!=null&&i.parentElement&&n.observe(document.body,{attributes:!0,attributeFilter:["class"],subtree:!0}),()=>n.disconnect()},[]),{isDark:e,containerRef:r}},"useIsDarkMode"),yy=fy(()=>import("@monaco-editor/react").then(e=>({default:e.Editor})));function Cy(e,t){let r=gs();return kf((...o)=>{r.current&&clearTimeout(r.current),r.current=setTimeout(()=>e(...o),t)},[e,t])}s(Cy,"useDebounce");var vy=s((e,t,r)=>{if(!t||!r)return!0;let o=t.getModel();if(!o)return!0;if(r.editor.getModelMarkers({resource:o.uri}).filter(a=>a.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 l=(e.match(/</g)||[]).length,c=(e.match(/>/g)||[]).length;if(l!==c||new DOMParser().parseFromString(e,"text/html").getElementsByTagName("parsererror").length>0)return!1;let d=(e.match(/<([a-z][a-z0-9]*)\b[^>]*(?<!\/\/)>/gi)||[]).map(b=>{var v,E;return(E=(v=b.match(/<([a-z][a-z0-9]*)/i))==null?void 0:v[1])==null?void 0:E.toLowerCase()}).filter(Boolean),f=(e.match(/<\/([a-z][a-z0-9]*)\s*>/gi)||[]).map(b=>{var v,E;return(E=(v=b.match(/<\/([a-z][a-z0-9]*)/i))==null?void 0:v[1])==null?void 0:E.toLowerCase()}).filter(Boolean),C=["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"],h=d.filter(b=>b&&!C.includes(b));for(let b of h){let v=d.filter(g=>g===b).length,E=f.filter(g=>g===b).length;if(v!==E)return!1}return!0}catch{return!1}},"defaultHTMLValidator"),qc=s(({code:e,onSave:t,onValidationChange:r,validator:o=vy})=>{let n=gs(null),i=gs(null),[a,l]=wf(!0),{isDark:c,containerRef:u}=by(),p=kf(()=>{if(!n.current||!i.current)return!0;let C=n.current.getModel();if(!C)return!0;let h=C.getValue(),b=o(h,n.current,i.current);return b!==a&&(l(b),r==null||r(b)),b},[a,r,o]),m=Cy(C=>{setTimeout(()=>{p()&&t(C)},150)},500);return dn("div",{ref:u,className:"courier-h-full courier-overflow-hidden",children:dn("div",{className:"courier-h-full courier-p-2",children:dn(gy,{fallback:dn("div",{className:"courier-flex courier-items-center courier-justify-center courier-h-full courier-text-gray-500",children:dn(Zc,{})}),children:dn(yy,{height:"100%",defaultLanguage:"html",value:e,onChange:s(C=>{m(C||"")},"handleCodeChange"),onMount:s((C,h)=>{n.current=C,i.current=h,C.focus(),C.onDidChangeModelContent(()=>{setTimeout(p,100)}),setTimeout(p,100)},"handleEditorDidMount"),theme:c?"vs-dark":"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 xy}from"@hookform/resolvers/zod";import{useForm as Ty}from"react-hook-form";import{z as Pf}from"zod";var Nf=Pf.object({code:Pf.string()});import{useCallback as Ey}from"react";import{useAtom as ky}from"jotai";import{Fragment as Mf,jsx as Cr,jsxs as Pi}from"react/jsx-runtime";var Jc=s(({element:e,editor:t})=>{let r=Ty({resolver:xy(Nf),defaultValues:{...Sr,...e==null?void 0:e.attrs}}),{updateNodeAttributes:o}=Qe({editor:t,element:e,form:r,nodeType:"customCode"}),[n,i]=ky(nr),a=Ey(l=>{r.setValue("code",l),o({code:l})},[r,o]);return e?Pi(Me,{...r,children:[!n&&Cr(tt,{type:"customCode"}),Pi("div",{className:"courier-flex courier-flex-col courier-gap-4",children:[Cr(ve,{className:"courier-w-fit",variant:"outline",buttonSize:"small",onClick:()=>i(!n),children:n?Pi(Mf,{children:[Cr(ec,{className:"courier-w-3 courier-h-3"}),"Minimize"]}):Pi(Mf,{children:[Cr(ei,{className:"courier-w-3 courier-h-3"}),"Expand Editor"]})}),Cr("div",{className:"courier-mb-4 courier-overflow-hidden courier-rounded-md courier-border courier-border-border",style:{minHeight:"200px",height:"300px",resize:"vertical",overflow:"auto"},children:Cr("form",{onChange:()=>{o(r.getValues())},className:"courier-h-full",children:Cr(J,{control:r.control,name:"code",render:({field:l})=>Pi(Z,{className:"courier-h-full",children:[Cr(q,{children:Cr(qc,{code:l.value,onSave:c=>{l.onChange(c),a(c)},onCancel:()=>{}})}),Cr(j,{})]})})})})]})]}):null},"CustomCodeForm");import{z as mn}from"zod";var Af=mn.object({padding:mn.number(),color:mn.string(),size:mn.number(),radius:mn.number(),variant:mn.enum(["divider","spacer"]).default("divider")});import{zodResolver as wy}from"@hookform/resolvers/zod";import{useForm as Py}from"react-hook-form";import{Fragment as Ny,jsx as Ze,jsxs as pn}from"react/jsx-runtime";var If=s(({element:e,editor:t})=>{let r=Py({resolver:wy(Af),defaultValues:{...At,...e==null?void 0:e.attrs}}),{updateNodeAttributes:o}=Qe({editor:t,element:e,form:r,nodeType:"divider"});if(!e)return null;let n=r.watch("variant");return pn(Me,{...r,children:[Ze(tt,{type:n}),pn("form",{onChange:()=>{o(r.getValues())},children:[Ze("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Frame"}),Ze(J,{control:r.control,name:"padding",render:({field:i})=>pn(Z,{children:[Ze(q,{children:Ze(pe,{startAdornment:Ze(vo,{}),type:"number",...i,onChange:a=>{i.onChange(a),o({...r.getValues(),margin:a.target.value})}})}),Ze(j,{})]})}),n==="divider"&&pn(Ny,{children:[Ze(le,{className:"courier-mt-6 courier-mb-4"}),Ze("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Line"}),Ze(J,{control:r.control,name:"size",render:({field:i})=>pn(Z,{className:"courier-mb-4",children:[Ze(q,{children:Ze(pe,{startAdornment:Ze(Ar,{}),type:"number",min:0,...i,onChange:a=>{i.onChange(a),o({...r.getValues(),width:a.target.value})}})}),Ze(j,{})]})}),Ze(J,{control:r.control,name:"color",render:({field:i})=>pn(Z,{className:"courier-mb-4",children:[Ze(q,{children:Ze(Ge,{...i,defaultValue:At.color,onChange:a=>{i.onChange(a),o({...r.getValues(),[i.name]:a})}})}),Ze(j,{})]})})]})]})]})},"DividerForm");var jc=an.extend({content:"(block)+"});import{Node as By}from"@tiptap/core";import{ReactNodeViewRenderer as Dy}from"@tiptap/react";import{NodeViewWrapper as My}from"@tiptap/react";import{forwardRef as Ay,useEffect as Sf,useState as Iy}from"react";import{jsx as hs}from"react/jsx-runtime";function Sy(){let[e,t]=Iy(!1);return Sf(()=>{let r=setTimeout(()=>t(!0),500);return()=>clearTimeout(r)},[]),e}s(Sy,"useMountStatus");var Ry=Ay(({children:e,className:t,dragOverlay:r,id:o},n)=>(Sf(()=>{if(r)return document.body.style.cursor="grabbing",()=>{document.body.style.cursor=""}},[r]),hs(My,{ref:n,"data-cypress":"draggable-item","data-node-view-wrapper":!0,"data-id":o,"data-placeholder":"true",className:I("courier-flex courier-items-start courier-gap-2 courier-pl-6",t),children:e}))),Ly=s(e=>{switch(e){case"text":return"Text";case"heading":return"Heading";case"spacer":return"Spacer";case"divider":return"Divider";case"button":return"Button";case"image":return"Image";case"customCode":return"Custom code";case"column":return"Column layout";default:return e}},"getPlaceholderLabel"),Rf=s(({node:e})=>{let t=e.attrs.type,r=e.attrs.id,o=Sy();return hs(Ry,{id:r,fadeIn:!o,children:hs("div",{className:I("courier-relative courier-flex courier-flex-grow courier-items-center courier-px-5 courier-py-[18px] courier-bg-background/50","courier-border-2 courier-border-dashed courier-border-accent-foreground courier-rounded-md"),children:hs("div",{className:"courier-text-accent-foreground",children:Ly(t)})})})},"DragPlaceholderComponent");var Lf=By.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 Dy(Rf,{as:"div",className:"drag-placeholder-wrapper"})}});import{Extension as Hy}from"@tiptap/core";import{Plugin as Vy,PluginKey as Fy}from"@tiptap/pm/state";var Oy=new Fy("file-handler"),Uy=Hy.create({name:"fileHandler",addOptions(){return{allowedMimeTypes:[],onDrop:()=>{},onPaste:()=>{}}},addProseMirrorPlugins(){let{allowedMimeTypes:e,onDrop:t,onPaste:r}=this.options;return[new Vy({key:Oy,props:{handleDrop:(o,n,i,a)=>{var p;if(!((p=n.dataTransfer)!=null&&p.files)||a)return!1;let{files:l}=n.dataTransfer,c=o.posAtCoords({left:n.clientX,top:n.clientY});if(!c)return!1;let u=Array.from(l).filter(m=>e==null?void 0:e.includes(m.type));return u.length===0?!1:(n.preventDefault(),t&&t(this.editor,u,c.pos),!0)},handlePaste:(o,n)=>{var l;if(!((l=n.clipboardData)!=null&&l.files))return!1;let{files:i}=n.clipboardData,a=Array.from(i).filter(c=>e==null?void 0:e.includes(c.type));return a.length===0?!1:(n.preventDefault(),r&&r(this.editor,a),!0)}}})]}}),bs=Uy;import{Extension as Wy}from"@tiptap/core";import{Plugin as _y,PluginKey as zy}from"@tiptap/pm/state";var $y=new zy("fixedChannelPaste"),Zy=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,a=0;n.forEach(p=>{p.type.name==="paragraph"||p.type.name==="heading"?i++:p.type.name==="button"&&a++});let l=i===1&&a===0,c=i===2&&a===0,u=i>=2&&i+a<=4;return l||c||u},"isInFixedChannel"),qy=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(`
|
|
201
|
-
`).trim()},"extractTextFromSlice"),ys=Wy.create({name:"fixedChannelPaste",addOptions(){return{fixedChannels:["push","sms","inbox"]}},addProseMirrorPlugins(){let e=this.editor;return[new _y({key:$y,props:{handlePaste:(t,r,o)=>{let{state:n}=t,{selection:i}=n;if(!Zy(e))return!1;let l=i.$from.node();if(!(l.type.name==="paragraph"||l.type.name==="heading")||o.content.childCount<=1)return!1;let u=qy(o);if(!u)return!1;r.preventDefault();let p=n.tr.replaceSelectionWith(n.schema.text(u),!1);return t.dispatch(p),!0}}})]},addStorage(){return{currentChannel:null}}});import{Extension as Jy}from"@tiptap/core";import{Plugin as jy,PluginKey as Ky,TextSelection as Kc}from"@tiptap/pm/state";var Ro=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"),Gc=s(e=>!!e.view.dom.closest(".courier-inbox-editor"),"isInInboxChannel"),Bf=s(e=>{if(!Gc(e))return!1;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.node(o-1),a=r.start(o),l=0;return i.forEach((c,u)=>{if(r.start(o-1)+u+1===a)return!1;l++}),l<=1}o--}return!1},"isInFixedInboxNode"),Lo=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),a=r.end(o);return{start:i,end:a,node:n}}o--}return null},"getCurrentElementBounds"),Cs=s(e=>{let{selection:t}=e.state,{$from:r,$to:o}=t;if(t.empty)return!1;let n=r.depth,i=o.depth,a=null,l=null;for(;n>0;){let c=r.node(n);if(c.type.name==="paragraph"||c.type.name==="heading"){a={node:c,depth:n};break}n--}for(;i>0;){let c=o.node(i);if(c.type.name==="paragraph"||c.type.name==="heading"){l={node:c,depth:i};break}i--}return!!(a&&l&&a.node!==l.node)},"isMultiElementSelection"),vs=new Ky("fixedChannelSelection"),xs=Jy.create({name:"fixedChannelSelection",addOptions(){return{channels:["push","sms","inbox"]}},addCommands(){return{constrainSelectionToElement:()=>({editor:e,tr:t,dispatch:r})=>{if(!Ro(e,this.options.channels))return!1;let o=Lo(e);if(!o)return!1;let{start:n,end:i}=o,{selection:a}=e.state;if(a.from>=n&&a.to<=i)return!1;let l=Math.max(a.from,n),c=Math.min(a.to,i);return r&&t.setSelection(Kc.create(t.doc,l,c)),!0}}},addKeyboardShortcuts(){return{"Mod-a":({editor:e})=>{if(!Ro(e,this.options.channels))return!1;let t=Lo(e);if(!t)return!1;let{start:r,end:o}=t;return e.commands.setTextSelection({from:r,to:o}),!0},Backspace:({editor:e})=>{if(!Ro(e,this.options.channels))return!1;if(Gc(e)){let{selection:t}=e.state;if(Lo(e)&&t.$anchor.parentOffset===0&&Bf(e))return!0}if(Cs(e)){let t=Lo(e);if(t){let{start:r,end:o}=t,{selection:n}=e.state,i=Math.max(n.from,r),a=Math.min(n.to,o);e.commands.setTextSelection({from:i,to:a})}return!0}return!1},Delete:({editor:e})=>{if(!Ro(e,this.options.channels))return!1;if(Gc(e)){let{selection:t}=e.state,r=Lo(e);if(r){let o=r.node.textContent;if(t.$anchor.parentOffset===o.length&&Bf(e))return!0}}if(Cs(e)){let t=Lo(e);if(t){let{start:r,end:o}=t,{selection:n}=e.state,i=Math.max(n.from,r),a=Math.min(n.to,o);e.commands.setTextSelection({from:i,to:a})}return!0}return!1}}},addProseMirrorPlugins(){return[new jy({key:vs,props:{handleTextInput:(e,t,r)=>{let o=this.editor;if(!Ro(o,this.options.channels))return!1;if(Cs(o)){let n=Lo(o);if(n){let{start:i,end:a}=n,l=Math.max(t,i),c=Math.min(r,a),u=e.state.tr;u.setSelection(Kc.create(u.doc,l,c)),e.dispatch(u)}return!0}return!1},handleDOMEvents:{mousedown:(e,t)=>{let r=this.editor;if(!Ro(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 a=n.node(i);if(a.type.name==="paragraph"||a.type.name==="heading"){e.dispatch(e.state.tr.setMeta(vs,{elementStart:n.start(i),elementEnd:n.end(i)}));break}i--}}return!1},mousemove:(e,t)=>{let r=this.editor;if(!Ro(r,this.options.channels))return!1;if(e.state.selection.from!==e.state.selection.to&&Cs(r)){let n=vs.getState(e.state);if(n!=null&&n.elementStart&&(n!=null&&n.elementEnd)){let{selection:i}=e.state,a=Math.max(i.from,n.elementStart),l=Math.min(i.to,n.elementEnd),c=e.state.tr;return c.setSelection(Kc.create(c.doc,a,l)),e.dispatch(c),!0}}return!1}}},state:{init(){return null},apply(e,t){return e.getMeta(vs)||t}}})]}});import{mergeAttributes as Qy}from"@tiptap/core";import{Node as Gy,mergeAttributes as Yy,textblockTypeInputRule as Xy}from"@tiptap/core";var Df=Gy.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]}`,Yy(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=>Xy({find:new RegExp(`^(#{${Math.min(...this.options.levels)},${e}})\\s$`),type:this.type,getAttributes:{level:e}}))}});import{ReactNodeViewRenderer as e3}from"@tiptap/react";var Yc=Df.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),HTMLAttributes:{class:""}}},onCreate(){ze(this.editor,this.name)},addAttributes(){var e;return{...(e=this.parent)==null?void 0:e.call(this),paddingVertical:{default:ue.paddingVertical,parseHTML:t=>t.style.paddingTop?parseInt(t.style.paddingTop):ue.paddingVertical,renderHTML:t=>({style:`padding-top: ${t.paddingVertical}px; padding-bottom: ${t.paddingVertical}px;`})},paddingHorizontal:{default:ue.paddingHorizontal,parseHTML:t=>t.style.paddingLeft?parseInt(t.style.paddingLeft):ue.paddingHorizontal,renderHTML:t=>({style:`padding-left: ${t.paddingHorizontal}px; padding-right: ${t.paddingHorizontal}px;`})},textAlign:{default:ue.textAlign,parseHTML:t=>t.style.textAlign||ue.textAlign,renderHTML:t=>({style:`text-align: ${t.textAlign}`})},backgroundColor:{default:ue.backgroundColor,parseHTML:t=>t.style.backgroundColor||ue.backgroundColor,renderHTML:t=>({style:`background-color: ${t.backgroundColor}`})},borderWidth:{default:ue.borderWidth,parseHTML:t=>t.style.borderWidth?parseInt(t.style.borderWidth):ue.borderWidth,renderHTML:t=>({style:`border-width: ${t.borderWidth}px`})},borderColor:{default:ue.borderColor,parseHTML:t=>t.style.borderColor||ue.borderColor,renderHTML:t=>({style:`border-color: ${t.borderColor}`})},id:{default:()=>null,parseHTML:t=>t.getAttribute("data-id"),renderHTML:t=>({"data-id":t.id})},locales:{default:void 0,parseHTML:()=>{},renderHTML:()=>({})}}},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]}`,Qy(this.options.HTMLAttributes,t),0]},addNodeView(){return e3(Va)}});import{z as vr}from"zod";var Hf=vr.object({sourcePath:vr.string(),link:vr.string().optional(),alt:vr.string().optional(),alignment:vr.enum(["left","center","right"]),width:vr.number().min(1).max(100),borderWidth:vr.number(),borderColor:vr.string(),isUploading:vr.boolean().optional(),imageNaturalWidth:vr.number()});import{zodResolver as t3}from"@hookform/resolvers/zod";import{useSetAtom as r3}from"jotai";import{ArrowUp as o3}from"lucide-react";import{useCallback as Mi,useEffect as Ff,useRef as Qc,useState as Es}from"react";import{useForm as n3}from"react-hook-form";import{useSetAtom as Xc}from"jotai";import*as Ni from"react";import{useRef as Vf}from"react";import{jsx as Ts}from"react/jsx-runtime";var ro=Ni.forwardRef(({as:e="Input",autoResize:t,onChange:r,...o},n)=>{let i=Vf(null),a=Vf(null),l=Xc(pi),c=Xc(Mm),u=Xc(ba),p=Ni.useCallback(()=>{if(!a.current)return;let h={ref:a.current,caretPosition:a.current.selectionStart};c(h),u(h),l({isFocused:!0,hasVariables:!1,showVariablePopup:!1})},[l,c,u]),m=Ni.useCallback(h=>{var v;((v=h.relatedTarget)==null?void 0:v.closest("[data-variable-button]"))||(c({ref:null,caretPosition:null}),l({isFocused:!1,hasVariables:!1,showVariablePopup:!1}))},[l,c]),d=s(h=>{let b=h.target,v={ref:b,caretPosition:b.selectionStart};c(v),u(v)},"handleSelect"),f=s(h=>{r&&r(h)},"handleChange");if(e==="Input"){let h={...o,ref:b=>{a.current=b,typeof n=="function"?n(b):n&&(n.current=b)},onChange:f,onFocus:p,onBlur:m,onSelect:d};return Ts("div",{ref:i,className:"courier-relative",children:Ts(pe,{...h})})}let C={...o,ref:h=>{a.current=h,typeof n=="function"?n(h):n&&(n.current=h)},onChange:f,onFocus:p,onBlur:m,autoResize:t,onSelect:d};return Ts("div",{ref:i,className:"courier-relative",children:Ts(Hl,{...C})})});ro.displayName="TextInput";import{Fragment as Of,jsx as K,jsxs as ot}from"react/jsx-runtime";var Uf=s(({element:e,editor:t})=>{var S,P;let r=Qc(null),o=Qc(null),n=Qc(null),[i,a]=Es(""),[l,c]=Es(!1),[u,p]=Es(((S=e==null?void 0:e.attrs)==null?void 0:S.imageNaturalWidth)||0),[m,d]=Es(!1),f=r3(G),{uploadImage:C}=$n(),h=n3({resolver:t3(Hf),defaultValues:{...Fe,...e==null?void 0:e.attrs},mode:"onChange"}),{updateNodeAttributes:b}=Qe({editor:t,element:e,form:h,nodeType:"imageBlock"});Ff(()=>{var x;let T=(x=e==null?void 0:e.attrs)==null?void 0:x.sourcePath;if(T&&!u){let k=new Image;k.onload=()=>{p(k.naturalWidth);let M={...h.getValues(),imageNaturalWidth:k.naturalWidth};h.setValue("imageNaturalWidth",k.naturalWidth),b(M)},k.src=T}},[(P=e==null?void 0:e.attrs)==null?void 0:P.sourcePath,u,h,b]);let v=Mi(T=>{var R,B;let x=(B=(R=t==null?void 0:t.view)==null?void 0:R.dom)==null?void 0:B.closest(".ProseMirror"),k=(x==null?void 0:x.clientWidth)||1e3;if(T||(T=u),!T)return 0;let M=Math.min(100,T/k*100);return Math.round(M)},[t,u]),E=Mi(T=>{var x;T.preventDefault(),(x=r.current)==null||x.click()},[]),g=Mi((T,x)=>{let k=v(T.naturalWidth);a(`${k}%`),c(!1),h.setValue("sourcePath",x),h.setValue("imageNaturalWidth",T.naturalWidth),h.setValue("width",k);let M={...h.getValues(),sourcePath:x,width:k,imageNaturalWidth:T.naturalWidth,isUploading:!1};b(M)},[h,b,v]),w=Mi(T=>{if(!T){h.setValue("imageNaturalWidth",0),h.setValue("width",0),b({...h.getValues(),sourcePath:"",imageNaturalWidth:0,width:0});return}let x=new Image;x.onload=()=>{let k=v(x.naturalWidth);h.setValue("imageNaturalWidth",x.naturalWidth),h.setValue("width",k);let M={...h.getValues(),sourcePath:T,width:k,imageNaturalWidth:x.naturalWidth};b(M)},x.onerror=()=>{console.debug("Image failed to load:",T)},x.src=T},[h,b,v]),N=Mi(T=>{n.current&&clearTimeout(n.current),n.current=setTimeout(()=>{w(T)},500)},[w]);Ff(()=>()=>{n.current&&clearTimeout(n.current)},[]);let y=h.getValues().sourcePath;return e?ot(Me,{...h,children:[K(tt,{type:"image"}),ot("form",{ref:o,onChange:()=>{let T=h.getValues();b(T)},children:[K("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Image"}),ot(ma,{defaultValue:"file",className:"courier-mb-3 courier-w-full",children:[ot(Yn,{className:"courier-w-full courier-flex courier-justify-stretch courier-mb-3",children:[K(jo,{value:"file",className:"courier-flex-1",children:"From file"}),K(jo,{value:"url",className:"courier-flex-1",children:"From URL"})]}),K(pa,{value:"file",children:ot("div",{className:"courier-flex courier-flex-col courier-gap-2",children:[K(ve,{onClick:E,className:"courier-w-full",variant:"outline",type:"button",disabled:m,children:m?K(Of,{children:"Uploading..."}):ot(Of,{children:[K(o3,{strokeWidth:1.25,className:"courier-w-4 courier-h-4 courier-ml-2 courier-text-foreground"}),"Upload image"]})}),K("input",{ref:r,type:"file",accept:"image/png, image/jpeg, image/gif, image/webp",className:"courier-hidden",onChange:T=>{var k;let x=(k=T.target.files)==null?void 0:k[0];if(x){d(!0),h.setValue("sourcePath",""),b({...h.getValues(),sourcePath:"",isUploading:!0});let M=new FileReader;M.onload=async()=>{try{let R=(await C({file:x})).url,B=new Image;B.onload=()=>{g(B,R),d(!1)},B.onerror=()=>{f({message:"Upload failed: Failed to load uploaded image",toastProps:{duration:6e3,description:`File: ${x.name} (${(x.size/1024/1024).toFixed(2)}MB)`}}),d(!1),b({...h.getValues(),isUploading:!1})},B.src=R}catch(A){console.error("Error uploading image:",A),f({message:"Upload failed: Failed to upload image",toastProps:{duration:6e3,description:`File: ${x.name} (${(x.size/1024/1024).toFixed(2)}MB)`}}),d(!1),b({...h.getValues(),isUploading:!1})}},M.onerror=()=>{f({message:"Upload failed: Failed to read image file",toastProps:{duration:6e3,description:`File: ${x.name} (${(x.size/1024/1024).toFixed(2)}MB)`}}),d(!1),b({...h.getValues(),isUploading:!1})},M.readAsDataURL(x)}}})]})}),K(pa,{value:"url",children:K(J,{control:h.control,name:"sourcePath",render:({field:T})=>ot(Z,{className:"courier-mb-3",children:[K(q,{children:K(ro,{as:"Textarea",...T,autoResize:!0,className:"courier-max-h-[88px]",onChange:x=>{T.onChange(x),N(x.target.value)}})}),K(j,{})]})})})]}),K(J,{control:h.control,name:"link",render:({field:T})=>ot(Z,{className:"courier-mb-3",children:[K(q,{children:K(br,{placeholder:"Link",value:T.value,onChange:x=>{T.onChange(x),b({...h.getValues(),link:x})},showToolbar:!0})}),K(j,{})]})}),K(J,{control:h.control,name:"alt",render:({field:T})=>ot(Z,{className:"courier-mb-4",children:[K(q,{children:K(br,{placeholder:"Alt text...",value:T.value,onChange:x=>{T.onChange(x),b({...h.getValues(),alt:x})},showToolbar:!0})}),K(j,{})]})}),K(le,{className:"courier-mt-6 courier-mb-4"}),K("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Width"}),(()=>{let T=h.getValues().width,x=h.getValues().imageNaturalWidth,k=v(x),M=T===k,A=M?"original":"fill";return ot(Gt,{type:"single",value:y?A:"original",onValueChange:R=>{if(!R||R===A)return;let B=R==="fill"?100:v(x);B>0&&(h.setValue("width",B),b({...h.getValues(),width:B}))},className:"courier-w-full courier-border courier-rounded-md courier-border-border courier-p-0.5 courier-mb-3 courier-shadow-sm",disabled:!y,children:[K(dt,{size:"sm",value:"original",className:"courier-w-full courier-h-7",children:"Original"}),K(dt,{size:"sm",value:"fill",className:"courier-w-full courier-h-7",disabled:M||!y,children:"Fill"})]})})(),K(J,{control:h.control,name:"width",render:({field:T})=>ot(Z,{className:"courier-flex-1 courier-mb-3",children:[K(q,{children:K(pe,{type:"text",inputMode:"numeric",pattern:"[0-9]*",min:1,max:100,...T,value:h.getValues().sourcePath?l?i:`${T.value}%`:"0%",className:"courier-text-2xl courier-font-normal",disabled:!h.getValues().sourcePath,onFocus:x=>{c(!0),a(x.target.value)},onChange:x=>{a(x.target.value)},onKeyDown:x=>{x.key==="Enter"&&(x.preventDefault(),x.currentTarget.blur())},onBlur:x=>{c(!1);let k=parseFloat(x.target.value.replace("%",""));if(!isNaN(k)){let M=Math.min(100,Math.max(1,k));T.onChange(M),b({...h.getValues(),width:Math.round(M)})}}})}),K(j,{})]})}),K(J,{control:h.control,name:"width",render:({field:T})=>ot(Z,{className:"courier-flex-1 courier-mb-3",children:[K(q,{children:K(Bl,{min:0,max:100,value:[y?T.value:0],disabled:!y,onValueChange:x=>{T.onChange(x[0]),b({...h.getValues(),width:x[0]})}})}),K(j,{})]})}),K(J,{control:h.control,name:"alignment",render:({field:T})=>ot(Z,{children:[K(q,{children:ot(Gt,{disabled:!y,type:"single",value:T.value,onValueChange:x=>{T.onChange(x),b({...h.getValues(),alignment:x})},className:"courier-w-full courier-border courier-rounded-md courier-border-border courier-p-0.5",children:[K(dt,{size:"sm",value:"left",className:"courier-w-full",children:K(cs,{className:"courier-h-4 courier-w-4"})}),K(dt,{size:"sm",value:"center",className:"courier-w-full",children:K(us,{className:"courier-h-4 courier-w-4"})}),K(dt,{size:"sm",value:"right",className:"courier-w-full",children:K(ds,{className:"courier-h-4 courier-w-4"})})]})}),K(j,{})]})}),K(le,{className:"courier-mt-6 courier-mb-4"}),K("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Border"}),K(J,{control:h.control,name:"borderWidth",render:({field:T})=>ot(Z,{className:"courier-mb-3",children:[K(q,{children:K(pe,{startAdornment:K(Ar,{}),type:"number",disabled:!y,min:0,...T,onChange:x=>{let k=parseInt(x.target.value)||0;T.onChange(k),b({...h.getValues(),borderWidth:k})}})}),K(j,{})]})}),K(J,{control:h.control,name:"borderColor",render:({field:T})=>ot(Z,{className:"courier-mb-4",children:[K(q,{children:K(Ge,{...T,disabled:!y,defaultValue:Fe.borderColor,onChange:x=>{T.onChange(x),b({...h.getValues(),[T.name]:x})}})}),K(j,{})]})})]})]}):null},"ImageBlockForm");import{getMarkRange as Wf,mergeAttributes as i3}from"@tiptap/core";import a3 from"@tiptap/extension-link";import{Plugin as _f,TextSelection as zf}from"@tiptap/pm/state";var eu=a3.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",i3(this.options.HTMLAttributes,e,{class:"link cursor-pointer"}),0]},addProseMirrorPlugins(){var t;return[...((t=this.parent)==null?void 0:t.call(this))||[],new _f({props:{handleClick:(r,o,n)=>{if(n.button!==0)return!1;let{state:i}=r,{doc:a}=i,l=a.resolve(o),c=l.marks().find(u=>u.type.name==="link");if(c||o>0&&(c=a.resolve(o-1).marks().find(p=>p.type.name==="link")),c||o<a.content.size&&(c=a.resolve(o+1).marks().find(p=>p.type.name==="link")),c){let u=Wf(l,c.type);return u?(r.dispatch(i.tr.setSelection(zf.create(a,u.from,u.to))),r.dispatch(r.state.tr.setMeta("showLinkForm",{from:u.from,to:u.to,href:c.attrs.originalHref||c.attrs.href})),!0):(r.dispatch(i.tr.setSelection(zf.create(a,o,o+1))),r.dispatch(r.state.tr.setMeta("showLinkForm",{from:o,to:o+1,href:c.attrs.originalHref||c.attrs.href})),!0)}return!1}}}),new _f({appendTransaction(r,o,n){if(!r.some(l=>l.docChanged))return null;let i=n.tr,a=!1;return n.doc.descendants((l,c)=>(l.marks.forEach(u=>{if(u.type.name==="link"&&u.attrs.href){let p=u.attrs.href;if(p.includes("__VAR_")){let m=p.replace(/__VAR_([^_]+)__/g,"{{$1}}");if(m!==p){let d=Wf(n.doc.resolve(c),u.type);d&&(i.removeMark(d.from,d.to,u.type),i.addMark(d.from,d.to,u.type.create({...u.attrs,href:m,hasVariables:!0,originalHref:m})),a=!0)}}}}),!0)),a?i:null}})]}});import{zodResolver as s3}from"@hookform/resolvers/zod";import{useSetAtom as l3}from"jotai";import{useRef as c3,useEffect as u3}from"react";import{useForm as d3}from"react-hook-form";import{z as tu}from"zod";import{jsx as Bo,jsxs as $f}from"react/jsx-runtime";var m3=tu.object({href:tu.string(),openInNewTab:tu.boolean().default(!1)}),Zf=s(({editor:e,mark:t,pendingLink:r})=>{let o=l3(ya),n=c3(null),i=d3({resolver:s3(m3),defaultValues:{href:(t==null?void 0:t.attrs.href)||"",openInNewTab:(t==null?void 0:t.attrs.target)==="_blank"||!1}});u3(()=>{i.reset({href:(t==null?void 0:t.attrs.href)||"",openInNewTab:(t==null?void 0:t.attrs.target)==="_blank"||!1})},[t,i]);let a=s(async l=>{let c=l.href.trim();if(!c){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:c,target:l.openInNewTab?"_blank":null}).run()),e==null||e.commands.setTextSelection((r==null?void 0:r.to)||0),o(null)},"updateLink");return $f(Me,{...i,children:[Bo("p",{className:"courier-font-medium courier-mb-4",children:"Link"}),Bo("div",{className:"courier-space-y-4",children:Bo(J,{control:i.control,name:"href",render:({field:l})=>$f(Z,{children:[Bo(ar,{children:"URL"}),Bo(q,{children:Bo(ro,{as:"Textarea",autoResize:!0,...l,ref:c=>{typeof l.ref=="function"&&l.ref(c),n.current=c},onKeyDown:c=>{c.key==="Enter"&&(c.preventDefault(),c.stopPropagation(),i.handleSubmit(a)())},onBlur:()=>{l.onBlur(),i.handleSubmit(a)()}})}),Bo(j,{})]})})})]})},"LinkForm");import{mergeAttributes as v3,ReactNodeViewRenderer as x3}from"@tiptap/react";import{TextSelection as T3,Plugin as E3,PluginKey as k3}from"prosemirror-state";var Br={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:"'"},ws={48:")",49:"!",50:"@",51:"#",52:"$",53:"%",54:"^",55:"&",56:"*",57:"(",59:":",61:"+",173:"_",186:":",187:"+",188:"<",189:"_",190:">",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"'},p3=typeof navigator!="undefined"&&/Mac/.test(navigator.platform),f3=typeof navigator!="undefined"&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);for(De=0;De<10;De++)Br[48+De]=Br[96+De]=String(De);var De;for(De=1;De<=24;De++)Br[De+111]="F"+De;var De;for(De=65;De<=90;De++)Br[De]=String.fromCharCode(De+32),ws[De]=String.fromCharCode(De);var De;for(ks in Br)ws.hasOwnProperty(ks)||(ws[ks]=Br[ks]);var ks;function qf(e){var t=p3&&e.metaKey&&e.shiftKey&&!e.ctrlKey&&!e.altKey||f3&&e.shiftKey&&e.key&&e.key.length==1||e.key=="Unidentified",r=!t&&e.key||(e.shiftKey?ws:Br)[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(qf,"keyName");import{Plugin as g3}from"prosemirror-state";var h3=typeof navigator!="undefined"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):!1;function b3(e){let t=e.split(/-(?!$)/),r=t[t.length-1];r=="Space"&&(r=" ");let o,n,i,a;for(let l=0;l<t.length-1;l++){let c=t[l];if(/^(cmd|meta|m)$/i.test(c))a=!0;else if(/^a(lt)?$/i.test(c))o=!0;else if(/^(c|ctrl|control)$/i.test(c))n=!0;else if(/^s(hift)?$/i.test(c))i=!0;else if(/^mod$/i.test(c))h3?a=!0:n=!0;else throw new Error("Unrecognized modifier name: "+c)}return o&&(r="Alt-"+r),n&&(r="Ctrl-"+r),a&&(r="Meta-"+r),i&&(r="Shift-"+r),r}s(b3,"normalizeKeyName");function y3(e){let t=Object.create(null);for(let r in e)t[b3(r)]=e[r];return t}s(y3,"normalize");function ru(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(ru,"modifiers");function Jf(e){return new g3({props:{handleKeyDown:C3(e)}})}s(Jf,"keymap");function C3(e){let t=y3(e);return function(r,o){let n=qf(o),i,a=t[ru(n,o)];if(a&&a(r.state,r.dispatch,r))return!0;if(n.length==1&&n!=" "){if(o.shiftKey){let l=t[ru(n,o,!1)];if(l&&l(r.state,r.dispatch,r))return!0}if((o.shiftKey||o.altKey||o.metaKey||n.charCodeAt(0)>127)&&(i=Br[o.keyCode])&&i!=n){let l=t[ru(i,o)];if(l&&l(r.state,r.dispatch,r))return!0}}return!1}}s(C3,"keydownHandler");import{v4 as w3}from"uuid";var ou=sn.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),HTMLAttributes:{class:""}}},onCreate(){ze(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-${w3()}`;e.setNodeMarkup(o,void 0,{...r.attrs,id:n}),t=!0}return!0}),t&&this.editor.view.dispatch(e)},addAttributes(){return{paddingVertical:{default:ue.paddingVertical,parseHTML:e=>e.style.paddingTop?parseInt(e.style.paddingTop):ue.paddingVertical,renderHTML:e=>({"data-padding-vertical":e.paddingVertical})},paddingHorizontal:{default:ue.paddingHorizontal,parseHTML:e=>e.style.paddingLeft?parseInt(e.style.paddingLeft):ue.paddingHorizontal,renderHTML:e=>({"data-padding-horizontal":e.paddingHorizontal})},textAlign:{default:ue.textAlign,parseHTML:e=>e.style.textAlign||ue.textAlign,renderHTML:e=>({"data-text-align":e.textAlign})},backgroundColor:{default:ue.backgroundColor,parseHTML:e=>e.style.backgroundColor||ue.backgroundColor,renderHTML:e=>({"data-background-color":e.backgroundColor})},borderWidth:{default:ue.borderWidth,parseHTML:e=>e.style.borderWidth?parseInt(e.style.borderWidth):ue.borderWidth,renderHTML:e=>({"data-border-width":e.borderWidth})},borderColor:{default:ue.borderColor,parseHTML:e=>e.style.borderColor||ue.borderColor,renderHTML:e=>({"data-border-color":e.borderColor})},id:{default:void 0,parseHTML:e=>e.getAttribute("data-id"),renderHTML:e=>({"data-id":e.id})},locales:{default:void 0,parseHTML:()=>{},renderHTML:()=>({})}}},parseHTML(){return[{tag:'div[data-type="paragraph"]'}]},renderHTML({HTMLAttributes:e}){return["div",v3(this.options.HTMLAttributes,e,{"data-type":"paragraph"}),0]},addNodeView(){return x3(Va)},addProseMirrorPlugins(){return[Jf({"Mod-a":({selection:e,tr:t})=>{document.execCommand("selectAll");let{$from:r}=e,o=r.depth,n=null;for(;o>0;){let i=r.node(o);if(i.type.name==="paragraph"||i.type.name==="heading"){n=i;break}o--}if(n){let i=r.start(o),a=r.end(o);if(e.from!==i||e.to!==a)return t.setSelection(T3.create(t.doc,i,a)),!0}return!1}}),new E3({key:new k3("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:a}=i,l=a.depth,c=null;for(;l>0;){let u=a.node(l);if(u.type.name==="paragraph"||u.type.name==="heading"){c=u;break}l--}if(c){let u=c.textContent,p=a.parentOffset===0,m=a.parentOffset===u.length,d=u.length===0,f=t.key==="Delete"||t.keyCode===46||t.code==="Delete",C=f?i.$from.nodeAfter:i.$from.nodeBefore,h=C!=null;if(h&&d)return!1;if(o||d&&!h||!f&&p&&!h||f&&m&&!h)return t.preventDefault(),t.stopPropagation(),!0}}return!1}}})]},addKeyboardShortcuts(){let e=s((t,r=!0)=>{let{empty:o,$anchor:n,$head:i}=t.state.selection,a=n.depth,l=null;for(;a>0;){let d=n.node(a);if(d.type.name==="paragraph"||d.type.name==="heading"){l=d;break}a--}if(!l)return!1;let c=r?n.pos===i.pos&&n.parentOffset===0:n.pos===i.pos&&n.parentOffset===l.textContent.length,u=l.textContent.length===0,p=r?t.state.selection.$from.nodeBefore:t.state.selection.$from.nodeAfter,m=p!=null;return m&&u?!1:c&&!m||u&&!m?!0:o?!1:(t.commands.command(({tr:d,dispatch:f})=>f?(d.insertText("",t.state.selection.from,t.state.selection.to),!0):!1),!0)},"handleDeletion");return{Enter:({editor:t})=>{if(t.view.dom.querySelector(".variable-suggestion")||t.view.state.selection.$from.node().type.spec.code)return!1;let{state:o,dispatch:n}=t.view,{tr:i}=o;return i.replaceSelectionWith(o.schema.nodes.hardBreak.create()).scrollIntoView(),n(i),!0},"Mod-a":({editor:t})=>{let{$from:r}=t.state.selection,o=r.depth;for(;o>0;){let n=r.node(o);if(n.type.name==="paragraph"||n.type.name==="heading"){let i=r.start(o),a=r.end(o);return t.commands.setTextSelection({from:i,to:a}),!0}o--}return!1},Backspace:({editor:t})=>e(t,!0),Delete:({editor:t})=>e(t,!1),Tab:()=>!0,"Shift-Tab":()=>!0}},addCommands(){var e;return{...(e=this.parent)==null?void 0:e.call(this),setTextAlign:t=>({chain:r})=>r().updateAttributes(this.name,{textAlign:t}).run()}}});import{Extension as P3}from"@tiptap/core";import{Plugin as N3,PluginKey as M3}from"@tiptap/pm/state";var A3=new M3("selection"),nu=P3.create({name:"selection",addOptions(){return{HTMLAttributes:{},setSelectedNode:()=>{},shouldHandleClick:()=>!0}},addGlobalAttributes(){return[{types:["paragraph","heading","button","spacer","divider","imageBlock","blockquote","customCode","column"],attributes:{isSelected:{default:!1,parseHTML:()=>!1,renderHTML:e=>e.isSelected?{class:"selected-element"}:{}}}}]},addCommands(){return{updateSelectionState:e=>({tr:t,dispatch:r})=>{var o,n;if(r){let i=(o=e==null?void 0:e.attrs)==null?void 0:o.id,a=(n=e==null?void 0:e.type)==null?void 0:n.name;t.doc.descendants((l,c)=>{var u,p,m;if(l.type.name!=="text"&&((u=l.type.spec.attrs)==null?void 0:u.isSelected)!==void 0){let d=!1;i?d=((p=l.attrs)==null?void 0:p.id)===i&&l.type.name===a:a&&(d=l.type.name===a&&l.content.size===((m=e==null?void 0:e.content)==null?void 0:m.size)),d?t.setNodeAttribute(c,"isSelected",!0):t.setNodeAttribute(c,"isSelected",!1)}return!0})}return!0}}},addProseMirrorPlugins(){return[new N3({key:A3,props:{handleClick:(e,t,r)=>{let{state:o}=e;if(!this.editor.isEditable||this.options.shouldHandleClick&&!this.options.shouldHandleClick())return!1;let n=r.target;if(n.closest(".node-blockquote")||n.closest('[data-cypress="draggable-handle"]')||n.closest('button[class*="courier-cursor-grab"]'))return!1;try{let l=window.getSelection();if(l&&l.rangeCount>0){let u=l.getRangeAt(0).startContainer.parentElement;if(u&&(["P","H1","H2","H3"].includes(u.tagName)||["P","H1","H2","H3"].some(p=>u.closest(p)))){let p=e.posAtDOM(u,0),d=o.doc.resolve(p).node();if(d&&["paragraph","heading"].includes(d.type.name))return this.options.setSelectedNode(d),this.editor.commands.updateSelectionState(d),!0}}}catch(l){console.error("Error handling click:",l)}let i=e.posAtDOM(n,0),a=o.doc.resolve(i).node();return a&&["paragraph","heading"].includes(a.type.name)?(this.options.setSelectedNode(a),this.editor.commands.updateSelectionState(a),!0):!1}}})]}});var jr=s(e=>{let t=e();return typeof t=="number"?t:null},"safeGetPos"),$e=s(e=>{let t=jr(e.getPos);return t===null?null:e.editor.state.doc.nodeAt(t)},"safeGetNodeAtPos");import{GripVertical as I3}from"lucide-react";import{forwardRef as S3}from"react";import{jsx as t1}from"react/jsx-runtime";var r1=S3((e,t)=>t1("button",{...e,ref:t,"data-cypress":"draggable-handle","data-drag-handle":!0,className:I("courier-flex-shrink-0 courier-p-1 courier-w-7 courier-h-7 courier-rounded-md courier-border courier-border-border courier-flex courier-items-center courier-justify-center courier-shadow-sm courier-bg-background hover:courier-bg-card courier-cursor-grab courier-select-none courier-z-10 courier-touch-none",e.className),style:{WebkitUserSelect:"none",userSelect:"none",touchAction:"none"},children:t1(I3,{strokeWidth:1,className:"courier-w-5 courier-stroke-neutral-400 courier-fill-neutral-400 courier-pointer-events-none"})}));import{useAtomValue as R3}from"jotai";import{jsx as au}from"react/jsx-runtime";var o1={text:"Text",heading:"Heading",spacer:"Spacer",divider:"Divider",button:"Button",image:"Image",customCode:"Custom code",column:"Column layout",blockquote:"Blockquote"},L3=s(e=>e.includes(":"),"isPresetType"),B3=s(e=>{let t=e.split(":");return t.length===2?{blockType:t[0],presetKey:t[1]}:null},"parsePresetType"),Ps=s(({type:e})=>{let t=R3($r),r=s(o=>{if(!o)return"Drop here";if(L3(o)){let n=B3(o);if(n){let a=t.find(l=>l.type===n.blockType&&l.key===n.presetKey);if(a)return a.label}let i=o.split(":")[0];return o1[i]||"Drop here"}return o1[o]||"Drop here"},"getPlaceholderLabel");return au("div",{className:"courier-flex courier-w-full courier-pointer-events-none",children:au("div",{className:I("courier-relative courier-flex courier-flex-grow courier-items-center courier-px-5 courier-py-[18px] courier-bg-background/50 courier-ml-10","courier-border-2 courier-border-dashed courier-border-accent-foreground courier-rounded-md courier-drag-indicator dark:courier-border-accent"),children:au("div",{className:"courier-text-accent-foreground dark:courier-text-accent",children:r(e)})})})},"DropIndicatorPlaceholder");import{Fragment as W3,jsx as Rt,jsxs as Ns}from"react/jsx-runtime";function O3(){let[e,t]=Ms(!1);return su(()=>{let r=setTimeout(()=>t(!0),500);return()=>clearTimeout(r)},[]),e}s(O3,"useMountStatus");var et=s(({children:e,id:t,className:r,editor:o,getPos:n,...i})=>{let a=oo(null),l=oo(null),c=oo(null),[u,p]=Ms(!1),[m,d]=Ms(null),[f,C]=Ms(null),h=oo(null),b=oo(!1),v=oo(null),E=oo(null),g=oo(null),w=O3(),N=u&&!w,y=Do(()=>{if(!o||!t)return null;let P=null;return o.state.doc.descendants((T,x,k)=>{var M;if(((M=T.attrs)==null?void 0:M.id)===t){let A=0;return k&&k.content.forEach((R,B,F)=>{R===T&&(A=F)}),P={node:T,pos:x,parent:k,index:A},!1}return!0}),P},[t,o]),S=Do(()=>{if(!o)return!1;let P=y();return!P||!P.parent?!1:P.index===P.parent.childCount-1},[o,y]);return su(()=>{let P=a.current,T=l.current;if(!P)return;let x=dr(vi({element:P,dragHandle:T||void 0,getInitialData:()=>{var B,F,L,D,V,O;let k=y(),M="text";if(k){let _=k.node;switch(_.type.name){case"heading":M="heading";break;case"paragraph":M="text";break;case"imageBlock":M="image";break;case"divider":M=(B=_.attrs)!=null&&B.spacer?"spacer":"divider";break;case"button":M="button";break;case"customCode":M="customCode";break;case"column":M="column";break}}let A=(k==null?void 0:k.parent)===o.state.doc,R=((F=k==null?void 0:k.parent)==null?void 0:F.type.name)==="columnCell";return{id:t,type:A?"editor":R?"column-cell-item":"nested-drag",index:(L=k==null?void 0:k.index)!=null?L:0,dragType:M,pos:k==null?void 0:k.pos,originalIndex:(D=k==null?void 0:k.index)!=null?D:0,columnId:R?(V=k==null?void 0:k.parent)==null?void 0:V.attrs.columnId:void 0,cellIndex:R?(O=k==null?void 0:k.parent)==null?void 0:O.attrs.index:void 0}},onGenerateDragPreview:()=>{let k=P.querySelectorAll("[data-no-drag-preview]"),M=[];k.forEach((A,R)=>{let B=A;M[R]=B.style.display,B.style.display="none"}),requestAnimationFrame(()=>{k.forEach((A,R)=>{let B=A;B.style.display=M[R]})})},onDragStart:()=>{p(!0),document.body.style.cursor="grabbing";let k=s(M=>{E.current=M.clientY},"handleMouseMove");document.addEventListener("mousemove",k),g.current=()=>{document.removeEventListener("mousemove",k)},o&&o.isEditable&&o.setEditable(!1)},onDrop:()=>{p(!1),document.body.style.cursor="",g.current&&(g.current(),g.current=null),o&&o.setEditable(!0)}}),Mt({element:P,getData:({input:k,element:M})=>{var O,_,U,W;let A=y(),R=(A==null?void 0:A.parent)===o.state.doc,B=((O=A==null?void 0:A.parent)==null?void 0:O.type.name)==="columnCell",F={id:t,type:R?"editor":B?"column-cell-item":"nested-drag",index:(_=A==null?void 0:A.index)!=null?_:0,pos:A==null?void 0:A.pos,nodeType:A==null?void 0:A.node.type.name,columnId:B?(U=A==null?void 0:A.parent)==null?void 0:U.attrs.columnId:void 0,cellIndex:B?(W=A==null?void 0:A.parent)==null?void 0:W.attrs.index:void 0};if(M.getAttribute("data-node-type")==="column"){let X=M.getBoundingClientRect(),te=k.clientY,re=30,H=Math.abs(te-X.top),Y=Math.abs(te-X.bottom);if(H>re&&Y>re)return{...F,disableDropIndicator:!0}}let D=M.closest('[data-column-cell="true"]');if(S()&&P){let X=P.getBoundingClientRect(),te=k.clientY,re=X.top+X.height/2;if(te>=re&&te>X.bottom)return{...F,[Symbol.for("closestEdge")]:"bottom"}}let V=S()?["top","bottom"]:["top"];return vp(F,{input:k,element:M,allowedEdges:V})},canDrop:({source:k})=>k.data.id!==t,onDragEnter:({self:k,source:M,location:A})=>{var _,U,W,X,te;if(k.data.disableDropIndicator){d(null);return}v.current&&(clearTimeout(v.current),v.current=null);let R=A.current.dropTargets;if(R.length>0&&R[0].element!==P){d(null),b.current=!1,h.current=null;return}let B=xi(k.data),F=B,L=S(),D=(W=(U=(_=A==null?void 0:A.current)==null?void 0:_.input)==null?void 0:U.clientY)!=null?W:E.current;D!==null&&(E.current=D);let V=M.data;C(V.dragType||null),B==="bottom"&&L&&M.data.id===t&&(F=null);let O=M.data.type==="editor"||M.data.type==="column-cell-item";if(L&&O)if(B==="top"){let re=a.current;if(re){let H=re.getBoundingClientRect(),Y=(X=D!=null?D:E.current)!=null?X:H.top+H.height/2,he=H.top+H.height/2,Te=H.height,He=Math.max(10,Math.min(30,Te*.3));Y<he-He?(b.current=!1,F="top"):b.current?F="bottom":F="top"}else b.current=!1,F="top"}else b.current?F="bottom":B==="bottom"&&(b.current=!0,F="bottom");else L&&!O&&(b.current=!1);if(!b.current&&(M.data.type==="editor"||M.data.type==="column-cell-item")&&typeof M.data.index=="number"){let re=M.data.index,H=y();((te=H==null?void 0:H.index)!=null?te:0)===re+1&&B==="top"&&(F=null)}F!==h.current&&(h.current=F,d(F))},onDrag:({self:k,source:M,location:A})=>{var _,U,W,X,te;if(k.data.disableDropIndicator){d(null);return}v.current&&(clearTimeout(v.current),v.current=null);let R=A.current.dropTargets;if(R.length>0&&R[0].element!==P){d(null);return}let B=(W=(U=(_=A==null?void 0:A.current)==null?void 0:_.input)==null?void 0:U.clientY)!=null?W:E.current;B!==null&&(E.current=B);let F=xi(k.data),L=F,D=S(),V=M.data;C(V.dragType||null),F==="bottom"&&D&&M.data.id===t&&(L=null);let O=M.data.type==="editor"||M.data.type==="column-cell-item";if(D&&O)if(F==="top"){let re=a.current;if(re){let H=re.getBoundingClientRect(),Y=(X=B!=null?B:E.current)!=null?X:H.top+H.height/2,he=H.top+H.height/2,Te=H.height,He=Math.max(10,Math.min(30,Te*.3));Y<he-He?(b.current=!1,L="top"):b.current?L="bottom":L="top"}else b.current=!1,L="top"}else b.current?L="bottom":F==="bottom"&&(b.current=!0,L="bottom");else D&&!O&&(b.current=!1);if(!b.current&&(M.data.type==="editor"||M.data.type==="column-cell-item")&&typeof M.data.index=="number"){let re=M.data.index,H=y();((te=H==null?void 0:H.index)!=null?te:0)===re+1&&F==="top"&&(L=null)}L!==h.current&&(h.current=L,d(L))},onDragLeave:()=>{if(S()&&b.current){let k=P==null?void 0:P.getBoundingClientRect(),M=E.current;if(k&&M!==null&&M>=k.bottom-10)return;v.current&&clearTimeout(v.current),v.current=setTimeout(()=>{b.current=!1,h.current=null,d(null),C(null),v.current=null},150)}else v.current&&(clearTimeout(v.current),v.current=null),b.current=!1,h.current=null,d(null),C(null)},onDrop:()=>{v.current&&(clearTimeout(v.current),v.current=null),b.current=!1,h.current=null,d(null),C(null)}}));return()=>{v.current&&(clearTimeout(v.current),v.current=null),x()}},[t,S,o,y]),Rt(U3,{ref:a,id:t,fadeIn:N,className:r,dragging:u,closestEdge:m,dragType:f,handleRef:l,contentRef:c,editor:o,...i,children:e})},"SortableItemWrapper"),U3=V3(({children:e,className:t,dragOverlay:r,handleRef:o,contentRef:n,closestEdge:i,dragType:a,id:l,editor:c,fadeIn:u,dragging:p,...m},d)=>{su(()=>{if(r)return document.body.style.cursor="grabbing",()=>{document.body.style.cursor=""}},[r]);let f=H3(fe),{resetButtonFormatting:C}=ss(c),h=s((y,S)=>{let P=null;return y.doc.descendants((T,x)=>{var k;return P!==null?!1:((k=T.attrs)==null?void 0:k.id)===S?(P=x,!1):!0}),P},"findNodePositionById"),b=Do(()=>{if(!c||!l)return{node:null,pos:null};let y=h(c.state,l);return y===null?{node:null,pos:null}:{node:c.state.doc.nodeAt(y),pos:y}},[c,l]),v=Do(()=>{c.commands.blur(),f(null)},[c,f]),E=Do(()=>{if(!(!c||!l))try{let{node:y,pos:S}=b();if(!y||S===null)return;let P=y.nodeSize,T=c.state.doc.childCount===1;f(null),c.commands.updateSelectionState(null);let x=c.state.tr;x.delete(S,S+P),x.setMeta("addToHistory",!0),c.view.dispatch(x),T&&setTimeout(()=>{let k=c.state.doc.nodeAt(0);if(k&&k.type.name==="paragraph"&&!k.attrs.id){let M=`node-${F3()}`,A=c.state.tr;A.setNodeMarkup(0,void 0,{...k.attrs,id:M}),c.view.dispatch(A);let R=new CustomEvent("node-duplicated",{detail:{newNodeId:M}});document.dispatchEvent(R)}},50)}catch(y){console.error("Error deleting node:",y)}},[c,l,b,f]),g=Do(()=>{if(!(!c||!l))try{let{node:y,pos:S}=b();if(!y||S===null)return;if(y.type.name==="button"){C();return}let P=y.type.name==="blockquote",T=y.type.name==="heading";!P&&!T&&v(),setTimeout(()=>{if(T){let k=S+1,M=S+y.nodeSize-1;c.chain().setTextSelection({from:k,to:M}).unsetAllMarks().blur().run(),f(null),c.commands.updateSelectionState(null);return}let x=c.chain();if(x.setNodeSelection(S).unsetAllMarks(),P&&y.content&&y.content.firstChild?y.content.firstChild.type.name!=="paragraph"&&x.setParagraph():y.type.name!=="paragraph"&&!P&&x.setParagraph(),x.run(),P){let k=b();k.node&&k.pos!==null&&(f(k.node),c.commands.updateSelectionState(k.node))}},100)}catch(y){console.error("Error removing formatting:",y)}},[c,l,b,v,C,f]),w=Do(()=>{if(!(!c||!l))try{v(),setTimeout(()=>{let{node:y,pos:S}=b();if(!y||S===null)return;let P=y.type.name,T={...y.attrs};delete T.id;let x=S+(y==null?void 0:y.nodeSize);Ya(c,P,x,T,k=>f(k),y.content)},100)}catch(y){console.error("Error duplicating node:",y)}},[c,l,b,v,f]),{node:N}=b();return Ns(D3,{ref:d,"data-cypress":"draggable-item","data-node-view-wrapper":!0,"data-id":l,className:I("courier-flex courier-flex-col courier-relative draggable-item",t),...m,children:[i==="top"&&Rt(Ps,{type:a}),Ns("div",{className:"courier-flex courier-items-center courier-justify-center courier-gap-2 courier-pl-10",children:[Rt(r1,{ref:o,className:"courier-absolute courier-left-[-8px]",tabIndex:-1,"data-no-drag-preview":!0}),Rt("div",{ref:n,className:"courier-flex-1 courier-grow draggable-content-wrapper",children:e}),Ns("div",{"data-no-drag-preview":!0,className:I("courier-actions-panel courier-absolute courier-right-[-50px] courier-rounded-lg courier-border courier-border-border courier-bg-background courier-shadow-md courier-hidden courier-items-center courier-justify-center hover:courier-z-[100000]",p&&"!courier-hidden"),children:[(N==null?void 0:N.type.name)!=="imageBlock"&&(N==null?void 0:N.type.name)!=="divider"&&(N==null?void 0:N.type.name)!=="spacer"&&(N==null?void 0:N.type.name)!=="button"&&(N==null?void 0:N.type.name)!=="column"&&(N==null?void 0:N.type.name)!=="customCode"&&Ns(W3,{children:[Rt("button",{className:"courier-w-8 courier-h-8 courier-flex courier-items-center courier-justify-center courier-text-[#171717] dark:courier-text-white dark:hover:courier-bg-secondary",onMouseDown:y=>{y.preventDefault(),y.stopPropagation()},onClick:y=>{y.stopPropagation(),g()},tabIndex:-1,children:Rt(Ql,{color:"currentColor"})}),Rt(le,{className:"!courier-my-0"})]}),Rt("button",{className:"courier-w-8 courier-h-8 courier-flex courier-items-center courier-justify-center courier-text-[#171717] dark:courier-text-white dark:hover:courier-bg-secondary",onMouseDown:y=>{y.preventDefault(),y.stopPropagation()},onClick:y=>{y.stopPropagation(),w()},tabIndex:-1,children:Rt(Zl,{color:"currentColor"})}),Rt(le,{className:"!courier-my-0"}),Rt("button",{className:"courier-w-8 courier-h-8 courier-flex courier-items-center courier-justify-center courier-text-[#DC2626] dark:courier-text-red-500 dark:hover:courier-bg-secondary",onMouseDown:y=>{y.preventDefault(),y.stopPropagation()},onClick:y=>{y.stopPropagation(),E()},tabIndex:-1,children:Rt(Xn,{color:"currentColor"})})]})]}),i==="bottom"&&Rt(Ps,{type:a})]})});import{NodeViewContent as _3,NodeViewWrapper as z3}from"@tiptap/react";import{useSetAtom as $3,useAtomValue as Z3}from"jotai";import{useCallback as q3,useEffect as J3,useRef as j3}from"react";import{jsx as Ho}from"react/jsx-runtime";var K3=s(({paddingHorizontal:e,paddingVertical:t,backgroundColor:r,borderLeftWidth:o,borderColor:n})=>Ho("div",{className:"courier-w-full node-element",children:Ho("div",{style:{position:"relative",padding:`${t}px ${e}px`,backgroundColor:r,borderLeftWidth:`${o}px`,borderColor:n,borderStyle:o>0?"solid":"none",whiteSpace:"pre-wrap"},children:Ho(_3,{})})}),"BlockquoteComponent"),n1=s(e=>{var l,c,u;let t=$3(Le),r=Z3(fe),o=j3(null),n=((l=r==null?void 0:r.type)==null?void 0:l.name)==="blockquote"&&(((c=r==null?void 0:r.attrs)==null?void 0:c.id)===e.node.attrs.id||!((u=r==null?void 0:r.attrs)!=null&&u.id)&&!e.node.attrs.id&&r===e.node),i=q3(()=>{if(!e.editor.isEditable)return;let p=e.node;p&&(t(p),e.editor.commands.updateSelectionState(p))},[e.editor.isEditable,e.node,e.editor.commands,t]);J3(()=>{let p=o.current;if(!p)return;let m=s(d=>{let f=d.target;f.closest(".courier-actions-panel")||f.closest("[data-no-drag-preview]")||i()},"handleClick");return p.addEventListener("click",m,!0),()=>{p.removeEventListener("click",m,!0)}},[i]);let a=!e.node.content||e.node.content.size===0;return Ho(z3,{children:Ho("div",{ref:o,children:Ho(et,{id:e.node.attrs.id,className:I(n&&"selected-element",a&&"is-empty"),editor:e.editor,children:Ho(K3,{...e.node.attrs})})})})},"BlockquoteComponentNode");var gr={paddingHorizontal:8,paddingVertical:6,backgroundColor:"transparent",borderLeftWidth:4,borderColor:"#e0e0e0"},iu=xp.extend({content:"block+",addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),HTMLAttributes:{class:""}}},onCreate(){ze(this.editor,this.name)},addAttributes(){return{id:{default:void 0,parseHTML:e=>e.getAttribute("data-id"),renderHTML:e=>({"data-id":e.id})},paddingHorizontal:{default:gr.paddingHorizontal,parseHTML:e=>e.getAttribute("data-padding-horizontal"),renderHTML:e=>({"data-padding-horizontal":e.paddingHorizontal})},paddingVertical:{default:gr.paddingVertical,parseHTML:e=>e.getAttribute("data-padding-vertical"),renderHTML:e=>({"data-padding-vertical":e.paddingVertical})},backgroundColor:{default:gr.backgroundColor,parseHTML:e=>e.getAttribute("data-background-color"),renderHTML:e=>({"data-background-color":e.backgroundColor})},borderLeftWidth:{default:gr.borderLeftWidth,parseHTML:e=>e.getAttribute("data-border-left-width"),renderHTML:e=>({"data-border-left-width":e.borderLeftWidth})},borderColor:{default:gr.borderColor,parseHTML:e=>e.getAttribute("data-border-color"),renderHTML:e=>({"data-border-color":e.borderColor})},locales:{default:void 0,parseHTML:()=>{},renderHTML:()=>({})}}},parseHTML(){return[{tag:"blockquote"}]},renderHTML({HTMLAttributes:e}){return["blockquote",G3(e,{"data-type":"blockquote","data-id":e.id}),0]},addKeyboardShortcuts(){return{Enter:({editor:e})=>{let{selection:t}=e.state,{empty:r}=t;if(!r)return!1;let o=e.isActive("blockquote");return!e.isActive("paragraph")||!o?!1:e.chain().command(({tr:i})=>{i.split(t.from);let a=i.selection.from,l=i.doc.resolve(a);if(l.depth>1){let c=l.blockRange();c&&i.lift(c,0)}return!0}).focus().run()}}},addNodeView(){return Y3(n1)}});import{v4 as X3}from"uuid";import{useAtomValue as As,useSetAtom as i1,useAtom as Q3}from"jotai";import{useCallback as fn,useRef as a1,useState as Is,useEffect as eC}from"react";var gn=s(({items:e,setItems:t,editor:r})=>{let[o]=Is(null),[n,i]=Is(null),[a,l]=Is(null),[c]=Is("outer"),u=a1([]),p=a1([]),m=As(Ce),d=i1(ft),[f,C]=Q3(ee),h=i1(Ae),b=As(qr),v=As($r),E=As(Yi),g=r||m,w=fn(()=>{if(!g)return;let x=g.getJSON(),k=me(x),M=_e(f,{channel:b,elements:k});C(M),h(M)},[g,b,f,C,h]),N=fn(()=>{g==null||g.commands.removeDragPlaceholder(),t(x=>({...x,Editor:x.Editor.filter(k=>!k.toString().includes("_temp"))}))},[g==null?void 0:g.commands,t]),y=fn(x=>{try{let k=g==null?void 0:g.state.doc;if(!k||x===0)return 0;if(x>=k.childCount)return k.content.size;let M=0;for(let A=0;A<Math.min(x,k.childCount);A++){let R=k.child(A);M+=R.nodeSize}return M}catch(k){return console.error("Error calculating document position:",k),0}},[g==null?void 0:g.state.doc]),S=fn(x=>{let k=x.includes(":"),M=x,A=null;if(k){let D=x.split(":");M=D[0],A=D[1]}let R={};switch(M){case"text":R=ue;break;case"heading":R={};break;case"image":R=Fe;break;case"button":R=Se;break;case"divider":R=At;break;case"spacer":R=on;break;case"customCode":R=Sr;break;case"column":R=Ye;break;case"blockquote":R=gr;break}let B=E[M];if(B&&(R={...R,...B}),k&&A){let D=v.find(V=>V.type===M&&V.key===A);D!=null&&D.attributes&&(R={...R,...D.attributes})}let L={type:M==="text"?"paragraph":M==="image"?"imageBlock":M==="spacer"?"divider":M,attrs:{...R,id:X3()}};if(M==="button"){let D="Button";if(k&&A){let V=v.find(O=>O.type===M&&O.key===A);V!=null&&V.label&&(D=V.label)}L.content=[{type:"text",text:D}]}return L},[E,v]),P=fn((x,k)=>{if(!g)return;let{columnId:M,index:A,isEmpty:R}=k,B=null,F=0,L=-1;if(x.type==="sidebar"){if(!x.dragType)return;B=S(x.dragType)}else if(x.type==="editor"){if(g.state.doc.descendants((U,W)=>U.attrs.id===x.id?(L=W,B=U.toJSON(),F=U.nodeSize,!1):!0),L===-1){let U=e.Editor.findIndex(W=>W===x.id);if(U!==-1){L=y(U);let W=g.state.doc.nodeAt(L);W&&(B=W.toJSON(),F=W.nodeSize)}}if(L!==-1){let U=e.Editor.filter(W=>W!==x.id);U.length!==e.Editor.length&&t({...e,Editor:U})}}if(!B)return;let D=-1,V=null;if(g.state.doc.descendants((U,W)=>U.type.name==="column"&&U.attrs.id===M?(D=W,V=U,!1):!0),D===-1||!V)return;let O=V;L!==-1&&L<D&&(D-=F);let _=g.state.tr;if(L!==-1&&_.delete(L,L+F),R){let U=g.schema,W=Array.from({length:O.attrs.columnsCount},(te,re)=>U.nodes.columnCell.create({index:re,columnId:M,isEditorMode:!1},re===A?[U.nodeFromJSON(B)]:[])),X=U.nodes.columnRow.create({},W);_.replaceWith(D+1,D+O.nodeSize-1,X)}else{let U=D+1;O.content.forEach(W=>{if(W.type.name==="columnRow"){let X=U+1;W.content.forEach((te,re,H)=>{if(H===A){let Y=X+te.nodeSize-1;_.insert(Y,g.schema.nodeFromJSON(B))}X+=te.nodeSize})}U+=W.nodeSize})}g.view.dispatch(_),w()},[g,e,t,y,S,w]),T=fn((x,k)=>{try{if(x.type==="sidebar"&&(k.type==="editor"||k.type==="column-cell-item"||k.type==="nested-drag")){let M=x.dragType;if(!M||!g)return;let A=k.insertPos;if(A===void 0)if(k.type==="editor"){let F=k.index+1;A=y(F)}else{console.warn("Nested drop without position data");return}let R=S(M);if(g.commands.insertContentAt(A,R),g.state.doc.resolve(A).depth===0){let F=g.state.doc.resolve(A).index(0),L=[...e.Editor];F<=L.length&&(L.splice(F,0,R.attrs.id),t({...e,Editor:L}))}w();return}if((x.type==="editor"||x.type==="column-cell-item"||x.type==="nested-drag")&&(k.type==="editor"||k.type==="column-cell-item"||k.type==="nested-drag")){if(!g)return;let M=-1,A=null;if(x.pos!==void 0&&(M=x.pos,A=g.state.doc.nodeAt(M)),(M===-1||!A)&&g.state.doc.descendants((L,D)=>L.attrs.id===x.id?(M=D,A=L,!1):!0),M===-1||!A){let L=e.Editor.findIndex(D=>D===x.id);L!==-1&&(M=y(L),A=g.state.doc.nodeAt(M))}if(!A||M===-1)return;let R=k.insertPos;if(R===void 0){let L;k.index===void 0?L=g.state.doc.childCount:k.index===-1?L=0:L=k.index+1,R=y(L)}if(R===void 0||R>M&&R<M+A.nodeSize)return;if(R>M){let L=R-A.nodeSize;g.chain().deleteRange({from:M,to:M+A.nodeSize}).insertContentAt(L,A.toJSON()).run()}else g.chain().insertContentAt(R,A.toJSON()).deleteRange({from:M+A.nodeSize,to:M+A.nodeSize*2}).run();let B=e.Editor.includes(x.id);if(B){let L=e.Editor.filter(D=>D!==x.id);t({...e,Editor:L})}let F=g.state.doc.resolve(R).depth===0;w()}}catch(M){console.error("[Pragmatic DnD] Error in handleDrop:",M)}},[e,g,t,y,w,S]);return eC(()=>yc({onDragStart:({source:x})=>{let k=x.data;d(!0),l(k.id),k.dragType&&i(k.dragType);let M=g==null?void 0:g.view.dom.querySelectorAll('[data-node-type="column"]');M&&(u.current=Array.from(M).map(R=>R.getBoundingClientRect()));let A=g==null?void 0:g.view.dom.querySelectorAll("[data-node-view-wrapper]");if(A){let R=new Set,B=Array.from(A).filter(F=>{let L=F,D=L.parentElement;if(D!=null&&D.hasAttribute("data-column-cell"))return!1;let V=L.getBoundingClientRect(),O=V.top+V.height/2;return R.has(Math.round(O))?!1:(R.add(Math.round(O)),!0)});p.current=B.map(F=>F.getBoundingClientRect())}},onDrop:({source:x,location:k})=>{let M=x.data,A=k.current.dropTargets[0];if(!A){N(),d(!1),l(null),i(null);return}let R=A.data;if(R.type==="column-cell"){P(M,R),d(!1),l(null),i(null),N();return}let B=R,F=xi(A.data);if(B.pos!==void 0&&F&&g){let L=g.state.doc.nodeAt(B.pos);L&&(F==="top"?B.insertPos=B.pos:F==="bottom"&&(B.insertPos=B.pos+L.nodeSize))}if(B.insertPos===void 0&&F&&B.index!==void 0){let L=F==="top"?B.index-1:B.index;B={...B,index:L}}else if(B.index===void 0&&B.insertPos===void 0){let D=k.current.input.clientY;if(p.current.length>0){let V=0,O=1/0;p.current.forEach((te,re)=>{let H=te.top+te.height/2,Y=Math.abs(D-H);Y<O&&(O=Y,V=re)});let _=p.current[V],U=_.top+_.height/2,X=D>=U?V:V-1;B={...B,index:X,fromCoordinates:!0}}else B={...B,index:(g==null?void 0:g.state.doc.childCount)||0}}T(M,B),d(!1),l(null),i(null),N()}}),[g,d,N,l,i,T,P]),{activeId:a,activeDragType:n,dndMode:c,lastPlaceholderIndex:o,cleanupPlaceholder:N}},"usePragmaticDnd");import{useCallback as tC,useEffect as rC}from"react";import{useAtomValue as oC}from"jotai";var Ss=s(({setItems:e,rafId:t,editor:r})=>{let o=oC(Ce),n=r||o,i=tC(a=>{t.current&&typeof cancelAnimationFrame!="undefined"&&cancelAnimationFrame(t.current);let l=setTimeout(()=>{if(typeof requestAnimationFrame!="undefined")t.current=requestAnimationFrame(()=>{try{let c=a==null?void 0:a.view.dom;if(!c)return;let u=c.querySelectorAll(".react-renderer > div[data-node-view-wrapper][data-id]"),p=[];u.forEach(m=>{let d=m,f=d.dataset.id;if(f){let C=d.parentElement,h=!1;for(;C&&C!==c;){if(C.hasAttribute("data-column-cell")){h=!0;break}C=C.parentElement}h||p.push(f)}}),e(m=>({Editor:p,Sidebar:m.Sidebar}))}catch(c){console.error("Error syncing editor items:",c),e(u=>({...u}))}});else try{let c=a==null?void 0:a.view.dom;if(!c)return;let u=c.querySelectorAll(".react-renderer > div[data-node-view-wrapper][data-id]"),p=[];u.forEach(m=>{let d=m,f=d.dataset.id;if(f){let C=d.parentElement,h=!1;for(;C&&C!==c;){if(C.hasAttribute("data-column-cell")){h=!0;break}C=C.parentElement}h||p.push(f)}}),e(m=>({Editor:p,Sidebar:m.Sidebar}))}catch(c){console.error("Error syncing editor items:",c)}},50);return()=>clearTimeout(l)},[e,t]);return rC(()=>{if(!n||typeof n.on!="function")return;let a,l=s(()=>{n&&(a&&a(),a=i(n))},"updateItems");n.on("update",l),n.on("selectionUpdate",l),n.on("create",l),n.on("transaction",l),n&&!n.isDestroyed&&l();let c=s(u=>{l()},"handleNodeDuplicated");return document.addEventListener("node-duplicated",c),()=>{n==null||n.off("update",l),n==null||n.off("selectionUpdate",l),n==null||n.off("create",l),n==null||n.off("transaction",l),document.removeEventListener("node-duplicated",c),a&&a(),t.current&&typeof cancelAnimationFrame!="undefined"&&(cancelAnimationFrame(t.current),t.current=null)}},[n,i,t]),{syncEditorItems:i}},"useSyncEditorItems");import{Fragment as lC,jsx as uu}from"react/jsx-runtime";var Ii=[{type:"text",align:"left",content:`
|
|
202
|
-
`,text_style:"h1"},{type:"text",align:"left",content:""},{type:"image",src:""}],sC=iC(({hidePublish:e,theme:t,channels:r,routing:o,render:n,headerRenderer:i,value:a,colorScheme:l,hidePreviewPanelExitButton:c,...u},p)=>{let m=no(Ce),[d,f]=lu(fe),[C,h]=lu(fo),b=Ai({}),[v,E]=cu(c?"desktop":void 0),g=no(Ue),w=no(ae),N=no(od),y=no(ur),S=Ai(-1),P=nC(Nm),T=Ai(!1),x=Ai(!1),[k]=lu(ee),M=no(Yt),A=no(je),R=no(ir),[B,F]=cu({Editor:[],Sidebar:R});Dr(()=>{F(H=>({...H,Sidebar:R}))},[R]);let L=Ai(null);gn({items:B,setItems:F,editor:m});let{syncEditorItems:D}=Ss({setItems:F,rafId:L,editor:m});Dr(()=>{A&&(x.current=!1)},[A]);let[V,O]=cu(!1);Dr(()=>{if(w===!1||w===null){let H=setTimeout(()=>{O(!0)},100);return()=>clearTimeout(H)}else O(!1)},[w,V]),Dr(()=>{if(d){let H=d.type.name,Y=ha(H);P({nodeName:H,config:Y})}},[d,P]);let _=l1(()=>{var Y,he,Te,He,qe,kt,wt,se,ke,ye,st,lt,Wt,_t,zt,$t,zr,oe,wr,mo,po,Rn,Ln,Bn,Dn,Hn,Vn,Q,ne,de,be,Pe,Zt,Oe;if(y)return y;let H=(Te=(he=(Y=g==null?void 0:g.data)==null?void 0:Y.tenant)==null?void 0:he.brand)==null?void 0:Te.settings;return{brandColor:((He=H==null?void 0:H.colors)==null?void 0:He.primary)||"#000000",textColor:((qe=H==null?void 0:H.colors)==null?void 0:qe.secondary)||"#000000",subtleColor:((kt=H==null?void 0:H.colors)==null?void 0:kt.tertiary)||"#666666",headerStyle:(se=(wt=H==null?void 0:H.email)==null?void 0:wt.header)!=null&&se.barColor?"border":"plain",logo:(st=(ye=(ke=H==null?void 0:H.email)==null?void 0:ke.header)==null?void 0:ye.logo)==null?void 0:st.image,link:(_t=(Wt=(lt=H==null?void 0:H.email)==null?void 0:lt.header)==null?void 0:Wt.logo)==null?void 0:_t.href,facebookLink:(oe=(zr=($t=(zt=H==null?void 0:H.email)==null?void 0:zt.footer)==null?void 0:$t.social)==null?void 0:zr.facebook)==null?void 0:oe.url,linkedinLink:(Rn=(po=(mo=(wr=H==null?void 0:H.email)==null?void 0:wr.footer)==null?void 0:mo.social)==null?void 0:po.linkedin)==null?void 0:Rn.url,instagramLink:(Hn=(Dn=(Bn=(Ln=H==null?void 0:H.email)==null?void 0:Ln.footer)==null?void 0:Bn.social)==null?void 0:Dn.instagram)==null?void 0:Hn.url,mediumLink:(de=(ne=(Q=(Vn=H==null?void 0:H.email)==null?void 0:Vn.footer)==null?void 0:Q.social)==null?void 0:ne.medium)==null?void 0:de.url,xLink:(Oe=(Zt=(Pe=(be=H==null?void 0:H.email)==null?void 0:be.footer)==null?void 0:Pe.social)==null?void 0:Zt.twitter)==null?void 0:Oe.url}},[y,g]),U=N&&!!_,W=s1(()=>{Object.values(b.current).forEach(H=>clearTimeout(H)),b.current={}},[]);Dr(()=>()=>{W()},[W]),Dr(()=>{let H=s(Y=>{if(Y.key==="Escape"&&(f(null),m==null||m.commands.blur(),S.current=-1),Y.key==="Tab"&&m){Y.preventDefault();let he=-1;d&&m.state.doc.content.forEach((qe,kt,wt)=>{d.attrs.id===qe.attrs.id&&(he=wt)}),he===-1&&(he=0);let Te=m.state.doc,He;if(Y.shiftKey?He=(he-1+Te.childCount)%Te.childCount:He=(he+1)%Te.childCount,He!==he||d===null){let qe=Te.child(He);f(qe),m.commands.blur()}}},"handleKeyPress");return document.addEventListener("keydown",H),()=>{document.removeEventListener("keydown",H)}},[m,d,f]),Dr(()=>{if(w!==!1||A)return;let H=k!=null?k:"";if(H){let Y=gl(H,"email");h(Y||"")}setTimeout(()=>{if(!(!m||m.isDestroyed)&&m.state.doc.childCount===1){let Y=m.state.doc.child(0);f(Y)}},0)},[g,w,A,m,h,f,k]),Dr(()=>{w===!1&&g&&!x.current&&(x.current=!0,setTimeout(()=>{m&&!m.isDestroyed&&D(m)},300))},[w,g,m,D]),Dr(()=>(T.current=!0,()=>{T.current=!1}),[]);let X=s1(H=>{let he=H||(v===void 0?"desktop":void 0);E(he),f(null),he?m==null||m.setEditable(!1):m==null||m.setEditable(!0)},[m,v,E,f]),te=s(H=>{h(H.target.value)},"handleSubjectChange"),re=l1(()=>{if(w!==!1||!V)return null;let H=a&&a.elements&&a.elements.length>0;H&&(x.current=!0);let Y;return H&&(Y=a.elements.find(Te=>Te.type==="channel"&&Te.channel==="email")),Y||(Y={type:"channel",channel:"email",elements:Ii}),Ie({version:"2022-01-01",elements:[Y]},{channel:"email"})},[a,w,V]);return A&&(k===null||re===null)?null:uu(bt,{theme:t,colorScheme:l,isLoading:!!w,Header:i?i({hidePublish:e,channels:r,routing:o}):uu(Ft,{hidePublish:e,channels:r,routing:o}),...u,children:uu(lC,{children:n==null?void 0:n({subject:C,handleSubjectChange:te,selectedNode:d,setSelectedNode:f,previewMode:v,templateEditor:m,ref:p,isBrandApply:U,brandSettings:_,items:B,content:re,syncEditorItems:D,brandEditorContent:M,templateData:g,togglePreviewMode:X,hidePreviewPanelExitButton:c})})})}),Rs=aC(sC);var Ls=class Ls{};s(Ls,"UploadImageAPI"),Ls.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 du=Ls,mu=du;var yt=s(e=>[jc,e1.configure({document:!1,dropcursor:!1,gapcursor:!1,heading:!1,horizontalRule:!1,paragraph:!1,blockquote:!1,hardBreak:!1,code:!1}),nu.configure({setSelectedNode:e==null?void 0:e.setSelectedNode,shouldHandleClick:e==null?void 0:e.shouldHandleClick}),Kf.configure({keepMarks:!0,HTMLAttributes:{class:"my-line-break"}}),Lf,Ec,ou,iu,Yc.configure({levels:[1,2,3,4,5,6]}),Sa,ms,jf,Ra,ps,fs,Ba,eu.configure({openOnClick:!1,defaultProtocol:"https",HTMLAttributes:{class:"link"}}),Qf,Ha.configure(),bs.configure({allowedMimeTypes:["image/png","image/jpeg","image/gif","image/webp"],onDrop:(t,r,o)=>{r.forEach(async n=>{let i=await mu.uploadImage(n);t.chain().setImageBlockAt({pos:o,src:i}).focus().run()})},onPaste:(t,r)=>{r.forEach(async o=>{let n=await mu.uploadImage(o);return t.chain().setImageBlockAt({pos:t.state.selection.anchor,src:n}).focus().run()})}}),Yf.extend({addKeyboardShortcuts(){return{}}}).configure({types:["paragraph","heading"]}),Xf,Gf.configure({includeChildren:!0,showOnlyCurrent:!0,placeholder:"",emptyEditorClass:"is-editor-empty",emptyNodeClass:"is-empty",showOnlyWhenEditable:!0}),Cc.configure({width:2,class:"ProseMirror-dropcursor courier-border-black"}),Oc,No,Mo,ys,xs],"ExtensionKit");import{BubbleMenu as cC,useCurrentEditor as uC}from"@tiptap/react";import{jsx as c1}from"react/jsx-runtime";var Ct=s(({config:e})=>{let{editor:t}=uC(),r=ls(t);return t?c1(cC,{editor:t,tippyOptions:{appendTo:o=>{var n;return(n=o.closest(".bubble-text-menu-container"))!=null?n:o},getReferenceClientRect:()=>{var a,l,c,u;let o=(c=(l=(a=t==null?void 0:t.state)==null?void 0:a.selection)==null?void 0:l.from)!=null?c:0,n=(u=t==null?void 0:t.view)==null?void 0:u.domAtPos(o),i=(n==null?void 0:n.node.parentNode).getBoundingClientRect();return{width:i==null?void 0:i.width,height:i==null?void 0:i.height,left:(i==null?void 0:i.left)-12,right:i==null?void 0:i.right,top:i==null?void 0:i.top,bottom:i==null?void 0:i.bottom,x:i==null?void 0:i.left,y:i==null?void 0:i.top,toJSON:()=>({})}},placement:"top",offset:[0,12]},shouldShow:r.shouldShow,updateDelay:100,"data-testid":"bubble-text-menu",children:t&&c1(Ei,{editor:t,config:e})}):null},"BubbleTextMenu");import{TextSelection as dC}from"@tiptap/pm/state";import{EditorProvider as mC,Extension as pC,useCurrentEditor as fC}from"@tiptap/react";import{useAtomValue as gC,useSetAtom as u1}from"jotai";import{memo as hC,useEffect as fu,useMemo as bC,useRef as d1}from"react";import{jsx as Ot,jsxs as pu}from"react/jsx-runtime";var yC=s(({value:e,readOnly:t})=>{let{editor:r}=fC(),o=u1(qo),n=gC(ae),i=d1(!1);return fu(()=>{!r||(n!==!1||i.current)&&!t||!e||(i.current=!0,r.commands.setContent(pl(e!=null?e:"")))},[r,e,n,t]),fu(()=>{r&&(o(r),setTimeout(()=>{r.commands.blur()},1))},[r,o]),null},"EditorContent"),CC=s(({facebookLink:e,linkedinLink:t,instagramLink:r,mediumLink:o,xLink:n,readOnly:i=!1,value:a,onUpdate:l})=>{let c=d1(!1),u=u1(fe),p=pC.create({name:"escapeHandler",addKeyboardShortcuts(){return{Escape:({editor:d})=>{let{state:f,dispatch:C}=d.view;return C(f.tr.setSelection(dC.create(f.doc,f.selection.$anchor.pos))),u&&u(null),!1}}}});fu(()=>(c.current=!0,()=>{c.current=!1}),[]);let m=bC(()=>[...yt({setSelectedNode:u}),p].filter(d=>d!==void 0),[p,u]);return pu("div",{className:"courier-flex courier-flex-row courier-gap-6 courier-justify-between courier-items-start",children:[pu(mC,{content:pl(a!=null?a:""),extensions:m,editable:!i,autofocus:!i,onUpdate:l,editorContainerProps:{className:I("courier-py-2 courier-flex-grow",i&&"courier-brand-editor-readonly")},immediatelyRender:!1,children:[Ot(yC,{value:a,readOnly:i}),Ot(Ct,{})]}),pu("div",{className:"courier-flex courier-justify-end courier-items-center courier-gap-2 courier-mt-3",children:[e&&Ot("a",{href:e,target:"_blank",rel:"noopener noreferrer",children:Ot(ti,{className:"courier-w-5 courier-h-5"})}),t&&Ot("a",{href:t,target:"_blank",rel:"noopener noreferrer",children:Ot(ni,{className:"courier-w-5 courier-h-5"})}),r&&Ot("a",{href:r,target:"_blank",rel:"noopener noreferrer",children:Ot(oi,{className:"courier-w-5 courier-h-5"})}),o&&Ot("a",{href:o,target:"_blank",rel:"noopener noreferrer",children:Ot(ii,{className:"courier-w-5 courier-h-5"})}),n&&Ot("a",{href:n,target:"_blank",rel:"noopener noreferrer",children:Ot(ui,{className:"courier-w-5 courier-h-5"})})]})]})},"BrandFooterComponent"),Si=hC(CC);import{Fragment as vC,jsx as hn,jsxs as Bs}from"react/jsx-runtime";var m1=s(({value:e,icon:t,...r})=>hn(dt,{value:e,...r,className:"!courier-w-10 !courier-h-6 [&_svg]:!courier-size-5 [&_svg]:courier-fill-accent dark:[&_svg]:courier-fill-accent-foreground hover:courier-bg-transparent courier-rounded-sm data-[state=on]:courier-bg-background [&_svg]:data-[state=on]:courier-fill-foreground",children:t}),"PreviewItem"),gu=s(({previewMode:e,togglePreviewMode:t,hideMobileToggle:r=!1,hideExitButton:o=!1,...n})=>Bs("div",{...n,className:I("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",n.className),children:[e&&!r&&Bs(vC,{children:[Bs(Gt,{type:"single",value:e,onValueChange:i=>{i!==""&&t(i)},className:"courier-w-full courier-rounded-md !courier-p-0.5 courier-bg-[#3B82F6] !courier-gap-0",children:[hn(m1,{value:"desktop",icon:hn($l,{})}),hn(m1,{value:"mobile",icon:hn(Gl,{})})]}),!o&&hn("div",{className:"courier-mx-4 courier-w-px courier-h-6 courier-bg-border"})]}),!o&&Bs(ve,{variant:"link",onClick:()=>t(),children:[e?"Exit":"View"," Preview"]})]}),"PreviewPanel");import{forwardRef as h1}from"react";function xC(){typeof window!="undefined"&&(window.__COURIER_CREATE_TEST__||(window.__COURIER_CREATE_TEST__={editors:{email:null,sms:null,push:null,inbox:null,slack:null,teams:null},currentEditor:null,activeChannel:null,templateEditorContent:null}))}s(xC,"initTestHelpers");function vt(e,t){typeof window!="undefined"&&(xC(),window.__COURIER_CREATE_TEST__&&(window.__COURIER_CREATE_TEST__.editors[e]=t,window.__COURIER_CREATE_TEST__.currentEditor=t,window.__COURIER_CREATE_TEST__.activeChannel=t?e:null))}s(vt,"setTestEditor");import{Extension as kC}from"@tiptap/core";import{TextSelection as wC}from"@tiptap/pm/state";import{EditorProvider as PC,useCurrentEditor as NC}from"@tiptap/react";import{useAtom as p1,useAtomValue as Hr,useSetAtom as Vo}from"jotai";import{useCallback as io,useEffect as Lt,useMemo as MC,useRef as xr}from"react";import{useCurrentEditor as TC}from"@tiptap/react";import{useEffect as EC}from"react";var Ut=s(({value:e,defaultValue:t})=>{let{editor:r}=TC();return EC(()=>{if(!r)return;let o=setTimeout(()=>{r.commands.setContent(e||t)},0);return()=>clearTimeout(o)},[r,e,t]),null},"ReadOnlyEditorContent");import{Fragment as SC,jsx as Ri,jsxs as RC}from"react/jsx-runtime";var AC=s(({value:e})=>{let{editor:t}=NC(),[r,o]=p1(ee),n=Vo(Ae),i=Hr(fo),a=Hr(fe),l=Vo(Ce),c=Vo(ho),u=xr(!1),p=xr(),m=Hr(ae),d=Hr(Ue),f=xr(!1),C=Hr(je);return Lt(()=>{m&&(f.current=!1)},[m]),Lt(()=>(c({action:"register",id:"email-subject",fn:s(()=>{var b;if(p.current&&(clearTimeout(p.current),p.current=void 0,t&&i!==null&&m===!1&&!C))try{let v=me(t.getJSON());if(!v||!Array.isArray(v))return;let E=i;if(!i&&r){let y=(b=r==null?void 0:r.elements)==null?void 0:b.find(S=>S.type==="channel"&&S.channel==="email");y&&(E=Un(y,"email"))}let g=jt(r,"email",E||"",v),w={elements:g.elements,channel:"email",...g.raw&&{raw:g.raw}},N=_e(r,w);JSON.stringify(r)!==JSON.stringify(N)&&(o(N),n(N))}catch(v){console.error("[FlushSubjectUpdate]",v)}},"flushSubjectUpdate")}),()=>{c({action:"unregister",id:"email-subject"})}),[t,i,m,C,r,o,n,c]),Lt(()=>{!t||m!==!1||f.current||!e||(l(t),f.current=!0,t.commands.setContent(e))},[t,e,l,m]),Lt(()=>{if(!(!(t&&i!==null)||m!==!1||C)&&!t.isFocused)return p.current&&clearTimeout(p.current),p.current=setTimeout(()=>{var h;try{let b=me(t.getJSON());if(!b||!Array.isArray(b))return;let v=i;if(!i&&r){let N=(h=r==null?void 0:r.elements)==null?void 0:h.find(y=>y.type==="channel"&&y.channel==="email");N&&(v=Un(N,"email"))}let E=jt(r,"email",v||"",b),g={elements:E.elements,channel:"email",...E.raw&&{raw:E.raw}},w=_e(r,g);JSON.stringify(r)!==JSON.stringify(w)&&(o(w),n(w))}catch(b){console.error(b)}},500),()=>{p.current&&clearTimeout(p.current)}},[d,t,i,o,n,m,r,C]),Lt(()=>()=>{t&&!t.isDestroyed&&t.setEditable(!0)},[t]),Lt(()=>{t&&u.current&&t.commands.updateSelectionState(a)},[t,a]),Lt(()=>(u.current=!0,()=>{u.current=!1}),[]),null},"EditorContent"),IC=s(({value:e,readOnly:t=!1,onDestroy:r,onUpdate:o,subject:n})=>{let i=Vo(ya),a=xr(),[l,c]=p1(ee),u=Hr(fo),p=n!=null?n:u,m=Vo(fe),d=Hr(Ce),f=Hr(je),C=Hr(ft),h=Vo(ho),b=Vo(Ae),v=xr(l),E=xr(p),g=xr(C);Lt(()=>{v.current=l},[l]),Lt(()=>{E.current=p},[p]),Lt(()=>{g.current=C},[C]),Lt(()=>{d==null||d.setEditable(!t)},[t,d]);let w=kC.create({name:"escapeHandler",addKeyboardShortcuts(){return{Escape:({editor:V})=>{let{state:O,dispatch:_}=V.view;return _(O.tr.setSelection(wC.create(O.doc,O.selection.$anchor.pos))),m&&m(null),!1}}}}),N=io(({editor:V})=>{o==null||o(V),vt("email",V),m&&setTimeout(()=>{m(null)},100)},[m,o]),y=xr(),S=xr(null),P=io((V,O)=>{var H;if(f)return;let _=v.current,U=E.current;if(!_){let Y={version:"2022-01-01",elements:[{type:"channel",channel:"email",elements:O}]};c(Y),b(Y);return}let W=_.elements.find(Y=>Y.type==="channel"&&Y.channel==="email"),X={...W};X.elements=(H=X.elements)==null?void 0:H.filter(Y=>Y.type!=="meta");let te={type:"channel",channel:"email",elements:O};if(JSON.stringify(X)!==JSON.stringify(te)){let Y=U;!U&&W&&(Y=Un(W,"email"));let he=jt(_,"email",Y||"",O);te.elements=he.elements,he.raw&&(te.raw=he.raw);let Te=_e(_,te);c(Te),b(Te)}o==null||o(V),vt("email",V)},[c,b,o,f]),T=io(({editor:V})=>{let O=me(V.getJSON());S.current={editor:V,elemental:O},y.current&&clearTimeout(y.current),y.current=setTimeout(()=>{if(S.current){let{editor:_,elemental:U}=S.current;P(_,U),S.current=null}},200)},[P]),x=io(({editor:V})=>{if(g.current)return;let{selection:O}=V.state,{$anchor:_}=O,W=O.$head.marks().find(H=>H.type.name==="link");W||V.isActive("link")?i({mark:W}):i(null);let X=_.depth,te=null,re=null;for(;X>0;){let H=_.node(X);!re&&H.type.name==="blockquote"&&(re=H),!te&&(H.type.name==="paragraph"||H.type.name==="heading")&&(te=H),X--}re?m(re):te&&m(te)},[i,m]),k=io(({editor:V,transaction:O})=>{let _=O==null?void 0:O.getMeta("showLinkForm");if(_){let{selection:U}=V.state,X=U.$head.marks().find(te=>te.type.name==="link");i({mark:X,link:{from:_.from,to:_.to}})}},[i]),M=io(()=>{a.current&&clearTimeout(a.current),y.current&&clearTimeout(y.current),r==null||r(),vt("email",null)},[r]);Lt(()=>(h({action:"register",id:"email-content",fn:s(()=>{if(y.current&&(clearTimeout(y.current),y.current=void 0,S.current)){let{editor:O,elemental:_}=S.current;P(O,_),S.current=null}},"flushContentUpdate")}),()=>{h({action:"unregister",id:"email-content"})}),[P,h]);let A=io(V=>{var X;if(g.current)return;let O=(X=V.view)==null?void 0:X.editor;if(!O||!O.isEditable)return;let _=V.target,U=O.view.posAtDOM(_,0),W=O.state.doc.resolve(U).node();W.type.name==="paragraph"&&m(W)},[m]),R=io(()=>!g.current,[]),B=MC(()=>[...yt({setSelectedNode:m,shouldHandleClick:R}),w].filter(V=>V!==void 0),[w,m,R]),F=e||{type:"doc",content:[{type:"paragraph"}]},L=t?{editable:!1,autofocus:!1}:{editable:!0,autofocus:!0,onCreate:N,onUpdate:T,onSelectionUpdate:x,onTransaction:k},D=xr(null);return Lt(()=>{let V=D.current;if(!(!V||t))return Mt({element:V,getData:()=>({type:"editor",id:"editor-drop-zone"}),canDrop:({source:O})=>O.data.type==="sidebar"?!0:O.data.type==="editor"})},[t]),Ri("div",{ref:D,"data-testid":"email-editor",children:Ri(PC,{content:F,extensions:B,...L,onDestroy:M,editorContainerProps:{onClick:A},immediatelyRender:!1,children:t?Ri(Ut,{value:F,defaultValue:Ii}):RC(SC,{children:[Ri(AC,{value:F}),Ri(Ct,{})]})})})},"EmailEditor"),hu=IC;import{useAtomValue as Ds,useSetAtom as FC}from"jotai";import{AlignVerticalSpaceAround as OC,GripVertical as UC,Quote as WC}from"lucide-react";import{forwardRef as LC,useEffect as BC,useRef as DC,useState as HC}from"react";import{jsx as bu}from"react/jsx-runtime";var bn=s(({children:e,id:t,className:r,editor:o})=>bu(VC,{id:t,className:r,editor:o,children:e}),"SideBarSortableItemWrapper"),VC=LC(({children:e,className:t,id:r,editor:o},n)=>{let i=DC(null),[a,l]=HC(!1);return BC(()=>{let c=i.current;if(!(!c||!r))return dr(vi({element:c,getInitialData:()=>({id:r,type:"sidebar",dragType:r}),onDragStart:()=>{l(!0),document.body.style.cursor="grabbing",o&&o.isEditable&&o.setEditable(!1)},onDrop:()=>{l(!1),document.body.style.cursor="",o&&o.setEditable(!0)}}))},[r,o]),bu("div",{ref:i,"data-cypress":"draggable-item","data-node-view-wrapper":!0,"data-id":r,className:I(t,"courier-relative",a&&"courier-opacity-50 courier-cursor-grabbing"),children:bu("div",{children:e})})});import{Fragment as qC,jsx as Ne,jsxs as yn}from"react/jsx-runtime";var _C={heading:qa,text:Xr,image:ja,spacer:Ka,divider:Yr,button:Gr,customCode:za,column:Wa,blockquote:Fa},zC=s(e=>({heading:Ne(Ic,{}),text:Ne(Rc,{}),image:Ne(Sc,{}),spacer:Ne(OC,{className:"courier-w-4 courier-h-4"}),divider:Ne(Ac,{}),button:Ne(Pc,{}),customCode:Ne(Mc,{}),column:Ne(Nc,{}),blockquote:Ne(WC,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"})})[e],"getBlockIcon"),$C=s(e=>Pt(e)?`${e.type}:${e.preset}`:e,"getItemKey"),ZC=s(({preset:e})=>{let t=e.icon||zC(e.type);return Ne(Be,{draggable:!0,icon:t,draggableLabel:e.label,label:e.label})},"PresetBlock"),yu=s(({items:e,brandEditor:t,label:r,editor:o})=>{var m,d;let n=Ds(Ue),i=FC(Xo),a=Ds(We),l=Ds(ir),c=Ds($r),u=e!=null?e:l,p=s(f=>{if(Pt(f)){let h=c.find(b=>b.type===f.type&&b.key===f.preset);return h?Ne(ZC,{preset:h}):(console.warn(`[SideBar] Preset not found: ${f.type}:${f.preset}`),null)}let C=_C[f];return C?Ne(C,{draggable:!0}):null},"renderBlockItem");return yn("div",{className:"courier-flex courier-flex-col courier-h-full",children:[yn("div",{className:"courier-flex-1",children:[r&&yn(qC,{children:[Ne("p",{className:"courier-text-sm courier-font-medium courier-text-foreground",children:r}),Ne(le,{className:"courier-my-4"})]}),Ne("div",{className:"courier-flex courier-flex-col courier-gap-4 courier-w-full",children:u.map(f=>{let C=$C(f);return Ne(bn,{id:C,editor:o,children:yn("div",{className:I("courier-rounded-md courier-border courier-border-border courier-flex courier-flex-row courier-items-center courier-gap-1 courier-bg-background courier-cursor-grab courier-opacity-[0.999] courier-px-3 courier-py-2 courier-select-none"),children:[Ne(UC,{strokeWidth:1,className:"courier-w-4 courier-stroke-neutral-400 courier-fill-neutral-400"}),p(f)]})},C)})})]}),t&&yn("div",{className:"courier-mt-auto courier-pt-4",children:[Ne(le,{className:"courier-mb-4 -courier-mx-4"}),(d=(m=n==null?void 0:n.data)==null?void 0:m.tenant)!=null&&d.brand?Ne("div",{className:"courier-flex courier-flex-row courier-gap-2 courier-items-center courier-justify-end courier-w-full",children:Ne(ve,{variant:"link",className:"courier-underline",onClick:()=>i("brand"),disabled:!!a,children:"Edit brand"})}):yn("div",{className:"courier-flex courier-flex-col courier-gap-2",children:[Ne("h3",{className:"courier-text-md courier-font-medium courier-text-foreground",children:"Customize brand theme"}),Ne("p",{className:"courier-text-sm courier-text-muted-foreground",children:"Customize header and footer to apply to the template."}),Ne(ve,{variant:"primary",className:"courier-w-fit courier-mt-2",onClick:()=>i("brand"),children:"Customize"})]})]})]})},"SideBar");import{useAtomValue as JC}from"jotai";import{jsx as ao,jsxs as jC}from"react/jsx-runtime";var Cu=s(({element:e,editor:t})=>{var i,a;let r=JC(ac);if(!e)return null;if(r!=null&&r.link||((i=r==null?void 0:r.mark)==null?void 0:i.type.name)==="link"&&((a=e.marks)!=null&&a.some(l=>l.type.name==="link")))return ao(Zf,{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:l}=t.state.selection,c=l.depth;for(;c>0;){let u=l.node(c);if(u.type.name==="blockquote")return u;c--}},"getBlockquoteElement");return jC("div",{className:"courier-flex courier-flex-col courier-gap-4",children:[e.type.name==="button"&&ao(gf,{element:e,editor:t},e.attrs.id),e.type.name==="divider"&&ao(If,{element:e,editor:t},e.attrs.id),["paragraph","heading"].includes(e.type.name)&&!o&&ao(Wp,{element:e,editor:t},e.attrs.id),e.type.name==="imageBlock"&&ao(Uf,{element:e,editor:t},e.attrs.id),e.type.name==="customCode"&&ao(Jc,{element:e,editor:t},e.attrs.id),(e.type.name==="blockquote"||e.type.name==="paragraph"&&o||e.type.name==="heading"&&o)&&ao(zp,{element:n()||e,editor:t},e.attrs.id),e.type.name==="column"&&ao($c,{element:e,editor:t},e.attrs.id)]})},"SideBarItemDetails");import{forwardRef as f1}from"react";import{useAtom as KC}from"jotai";import{Fragment as GC,jsx as Hs,jsxs as YC}from"react/jsx-runtime";var Fo=f1(({children:e,previewMode:t,className:r,readOnly:o=!1,...n},i)=>Hs("div",{className:I("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})),Oo=f1(({children:e,className:t,previewMode:r,skipExpanded:o=!1,width:n,...i},a)=>{let[l,c]=KC(nr),u=o?!1:l,p=n||"courier-w-64";return r?null:YC(GC,{children:[u&&Hs("div",{className:"courier-absolute courier-inset-0 courier-bg-black/50 courier-z-[9] courier-transition-opacity courier-duration-300 courier-cursor-pointer",onClick:()=>c(!1),"aria-hidden":"true"}),Hs("div",{className:I("courier-editor-sidebar-container courier-flex-shrink-0 courier-self-stretch courier-relative",p,t),children:Hs("div",{className:I("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-transition-all courier-duration-300 courier-ease-in-out",u?"courier-w-[80vw] courier-z-10 courier-shadow-xl courier-translate-x-0":p+" courier-translate-x-0"),...i,ref:a,children:e})})]})});import{useAtomValue as g1,useSetAtom as XC}from"jotai";import{jsx as xt,jsxs as Uo}from"react/jsx-runtime";var b1=h1(({children:e,className:t,...r},o)=>xt("div",{className:I("courier-editor-container courier-relative",t),...r,ref:o,children:e})),y1=h1(({children:e,previewMode:t,...r},o)=>xt("div",{className:I("courier-editor-main courier-transition-all courier-duration-300 courier-ease-in-out",t&&"courier-max-w-4xl courier-mx-auto"),...r,ref:o,children:e})),C1=s(({variables:e,theme:t,isLoading:r,hidePublish:o,channels:n,brandEditor:i,routing:a,colorScheme:l,...c})=>{let u=g1(ee),p=g1(nr),m=XC(nr),d=s(()=>{p&&m(!1)},"handleSubjectAreaClick");return xt(Rs,{value:u,variables:e,theme:t,isLoading:r,hidePublish:o,channels:n,brandEditor:i,routing:a,colorScheme:l,render:({subject:f,handleSubjectChange:C,selectedNode:h,setSelectedNode:b,previewMode:v,templateEditor:E,ref:g,isBrandApply:w,brandSettings:N,items:y,content:S,syncEditorItems:P,brandEditorContent:T,templateData:x,togglePreviewMode:k,hidePreviewPanelExitButton:M})=>{var A,R,B,F,L,D;return Uo(Fo,{previewMode:v,children:[Uo("div",{className:"courier-flex courier-flex-col courier-flex-1",children:[Uo("div",{className:"courier-bg-background courier-h-12 courier-flex courier-items-center courier-gap-2 courier-px-4 courier-border-b",onClick:d,children:[Uo("h4",{className:"courier-text-sm courier-h-[25px] courier-flex courier-items-end courier-pb-0.5",children:["Subject:"," "]}),xt(wi,{value:f!=null?f:"",onChange:V=>C({target:{value:V}}),onFocus:()=>b(null),className:"!courier-bg-background courier-text-sm courier-flex-1",placeholder:"Write subject...",readOnly:v!==void 0,showToolbar:!0})]}),Uo(b1,{ref:g,children:[Uo(y1,{previewMode:v,children:[w&&Uo("div",{className:I("courier-py-5 courier-px-9 courier-pb-0 courier-relative courier-overflow-hidden courier-flex courier-flex-col courier-items-start",(N==null?void 0:N.headerStyle)==="border"&&"courier-pt-6"),children:[(N==null?void 0:N.headerStyle)==="border"&&xt("div",{className:"courier-absolute courier-top-0 courier-left-0 courier-right-0 courier-h-2",style:{backgroundColor:N==null?void 0:N.brandColor}}),(N==null?void 0:N.logo)&&xt("img",{src:N.logo,alt:"Brand logo",className:"courier-w-auto courier-max-w-36 courier-object-contain courier-cursor-default"})]}),S&&xt(hu,{value:S,onUpdate:P,variables:e}),w&&x&&xt("div",{className:"courier-py-5 courier-px-9 courier-pt-0 courier-flex courier-flex-col",children:xt(Si,{readOnly:!0,value:T!=null?T:(D=(L=(F=(B=(R=(A=x==null?void 0:x.data)==null?void 0:A.tenant)==null?void 0:R.brand)==null?void 0:B.settings)==null?void 0:F.email)==null?void 0:L.footer)==null?void 0:D.markdown,variables:e,facebookLink:N==null?void 0:N.facebookLink,linkedinLink:N==null?void 0:N.linkedinLink,instagramLink:N==null?void 0:N.instagramLink,mediumLink:N==null?void 0:N.mediumLink,xLink:N==null?void 0:N.xLink})})]}),xt(gu,{previewMode:v,togglePreviewMode:k,hideExitButton:M})]})]}),xt(Oo,{previewMode:v,children:xt("div",{className:"courier-p-1 courier-h-full",children:h?xt(Cu,{element:h,editor:E}):xt(yu,{items:y.Sidebar,brandEditor:i,label:"Blocks library",editor:E!=null?E:void 0})})})]})},...c})},"EmailLayout");import{useCurrentEditor as QC}from"@tiptap/react";import{useAtom as e8,useAtomValue as Vs,useSetAtom as vu}from"jotai";import{forwardRef as t8,memo as r8,useCallback as o8,useEffect as Li,useMemo as v1,useRef as xu}from"react";import{jsx as x1}from"react/jsx-runtime";var Bi=[{type:"text",content:`
|
|
185
|
+
`}],!o||o.length===0)return r;let l=a(g=>{var b,M,C,S,P,k,w,T,A;if(g.type==="meta")return[];switch(g.type){case"text":if("content"in g){let N=g.text_style==="h1"?1:g.text_style==="h2"?2:null,R={};if(g.padding){let[D,F]=g.padding.replace(/px/g,"").split(" "),L=parseInt(D),W=parseInt(F);!isNaN(L)&&!isNaN(W)&&(R={paddingVertical:L,paddingHorizontal:W})}let B={};if(g.border_size||(b=g.border)!=null&&b.enabled||(M=g.border)!=null&&M.size){let D=g.border_size||((C=g.border)==null?void 0:C.size),F=g.border_color||((S=g.border)==null?void 0:S.color);B={...D&&{borderWidth:parseInt(D)},...F&&{borderColor:F}}}let H=g.content.trim()?np(g.content):[];return[{type:N?"heading":"paragraph",attrs:{textAlign:g.align||"left",level:N,id:`node-${tr()}`,...R,...B,...g.background_color&&{backgroundColor:g.background_color},...g.locales&&{locales:g.locales}},content:H}]}return[];case"action":{let R=n==="inbox"?{backgroundColor:"#000000",textColor:"#ffffff",borderColor:"transparent",borderWidth:1,borderRadius:4}:{},B=g.content||"Button",H=[];kc(B,[],H),H.length===0&&H.push({type:"text",text:B||"Button"});let D=(k=g.border_radius)!=null?k:(P=g.border)==null?void 0:P.radius,F=(w=g.border)==null?void 0:w.color,L;return typeof D=="string"?L=parseInt(D):typeof D=="number"&&(L=D),[{type:"button",content:H,attrs:{label:B,link:g.href,alignment:g.align==="full"?"center":g.align||"center",style:g.style,id:`node-${tr()}`,...R,...g.background_color&&{backgroundColor:g.background_color},...g.color&&{textColor:g.color},...g.padding&&{padding:parseInt(g.padding)},...L!==void 0&&{borderRadius:L},...F&&{borderColor:F},...g.locales&&{locales:g.locales}}}]}case"quote":{let N="paragraph",R;g.text_style==="h1"?(N="heading",R=1):g.text_style==="h2"?(N="heading",R=2):g.text_style==="subtext"&&(N="heading",R=3);let B={textAlign:g.align||"left",id:`node-${tr()}`};return R!==void 0&&(B.level=R),[{type:"blockquote",attrs:{textAlign:g.align||"left",id:`node-${tr()}`,...g.border_color&&{borderColor:g.border_color},...g.border_left_width!==void 0&&{borderLeftWidth:g.border_left_width},...g.padding_horizontal!==void 0&&{paddingHorizontal:g.padding_horizontal},...g.padding_vertical!==void 0&&{paddingVertical:g.padding_vertical},...g.background_color&&{backgroundColor:g.background_color},...g.locales&&{locales:g.locales}},content:[{type:N,attrs:B,content:np(g.content)}]}]}case"image":{let N={};if(g.width){let H=g.width.endsWith("px"),D=parseInt(g.width.replace(/%|px/,""));if(H&&g.image_natural_width&&g.image_natural_width>0){let F=Math.round(D/g.image_natural_width*100);N.width=Math.max(1,Math.min(100,F)),N.imageNaturalWidth=g.image_natural_width}else N.width=D,g.image_natural_width&&(N.imageNaturalWidth=g.image_natural_width)}let R=g.border_size||((T=g.border)==null?void 0:T.size),B=g.border_color||((A=g.border)==null?void 0:A.color);return[{type:"imageBlock",attrs:{sourcePath:ss(g.src)?"":g.src,id:`node-${tr()}`,...g.href&&{link:g.href},...g.align&&{alignment:g.align},...g.alt_text&&{alt:g.alt_text},...N,...R&&{borderWidth:parseInt(R),...B&&{borderColor:B}},...g.locales&&{locales:g.locales}}}]}case"divider":{let N=g.border_width||g.width;return[{type:"divider",attrs:{id:`node-${tr()}`,...g.color&&{color:g.color},...N&&{size:parseInt(N)},...g.padding&&{padding:parseInt(g.padding)},variant:g.color==="transparent"?"spacer":"divider"}}]}case"html":return[{type:"customCode",attrs:{id:`node-${tr()}`,code:g.content||"<!-- Add your HTML code here -->",...g.locales&&{locales:g.locales}}}];case"group":{let N=g.elements?g.elements.length:2,R=0,B=0;if(g.padding){let V=g.padding.split(" ");R=parseInt(V[0],10)||0,B=parseInt(V[1]||V[0],10)||0}let H=0,D=0,F="transparent";g.border&&(g.border.size&&(H=parseInt(g.border.size,10)||0),g.border.radius!==void 0&&(D=g.border.radius),g.border.color&&(F=g.border.color));let L=g.background_color||"transparent",W=`node-${tr()}`,_=g.elements?g.elements.map((V,j)=>{var U;if(V.type==="text"&&"content"in V&&((U=V.content)==null?void 0:U.trim())==="Drag and drop content blocks"&&V.align==="left")return{type:"columnCell",attrs:{index:j,columnId:W,isEditorMode:!1},content:[]};let J;V.type==="group"&&V.elements?J=V.elements.flatMap(l):J=l(V);let K=J.length>0?J:[{type:"paragraph",attrs:{textAlign:"left",id:`node-${tr()}`},content:[]}];return{type:"columnCell",attrs:{index:j,columnId:W,isEditorMode:J.length>0},content:K}}):[{type:"columnCell",attrs:{index:0,columnId:W,isEditorMode:!1},content:[{type:"paragraph",attrs:{textAlign:"left",id:`node-${tr()}`},content:[]}]},{type:"columnCell",attrs:{index:1,columnId:W,isEditorMode:!1},content:[{type:"paragraph",attrs:{textAlign:"left",id:`node-${tr()}`},content:[]}]}];return[{type:"column",attrs:{id:W,columnsCount:Math.min(Math.max(N,1),4),paddingVertical:R,paddingHorizontal:B,backgroundColor:L,borderWidth:H,borderRadius:D,borderColor:F,...g.locales&&{locales:g.locales}},content:[{type:"columnRow",content:_}]}]}default:return[]}},"convertNode"),c=[],u=o.flatMap(l);for(let g=0;g<u.length;g++){let b=u[g],M=u[g+1];if(b.type==="button"&&(M==null?void 0:M.type)==="button"&&n==="inbox"){let C={type:"buttonRow",attrs:{id:`node-${tr()}`,button1Label:((d=b.attrs)==null?void 0:d.label)||"Button 1",button1Link:((p=b.attrs)==null?void 0:p.link)||"",button1BackgroundColor:((m=b.attrs)==null?void 0:m.backgroundColor)||"#000000",button1TextColor:((f=b.attrs)==null?void 0:f.textColor)||"#ffffff",button2Label:((v=M.attrs)==null?void 0:v.label)||"Button 2",button2Link:((h=M.attrs)==null?void 0:h.link)||"",button2BackgroundColor:((y=M.attrs)==null?void 0:y.backgroundColor)||"#ffffff",button2TextColor:((x=M.attrs)==null?void 0:x.textColor)||"#000000",padding:((E=b.attrs)==null?void 0:E.padding)||6}};c.push(C),g++}else c.push(b)}return{type:"doc",content:c}}a(We,"convertElementalToTiptap");function ip(e,t,r){if(!e)return;let o=/{{([^}]*)}}/g,n,i=0;for(;(n=o.exec(e))!==null;){if(n.index>i){let c=e.substring(i,n.index);r.push({type:"text",text:c,...t.length>0&&{marks:t}})}let s=n[1].trim(),l=s===""||mt(s);r.push({type:"variable",attrs:{id:s,isInvalid:!l},...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(ip,"parseTextWithVariables");function Vi(e){var l,c;if(!e)return[];let t=[{regex:/\{\{([^}]*)\}\}/g,type:"variable"},{regex:/\[([^\]]+)\]\(([^)]+)\)/g,type:"link"},{regex:/\*\*([^*]+)\*\*/g,type:"bold"},{regex:/__([^_]+)__/g,type:"bold"},{regex:/(?<!\*)\*([^*]+)\*(?!\*)/g,type:"italic"},{regex:/(?<!_)_([^_]+)_(?!_)/g,type:"italic"},{regex:/~([^~]+)~/g,type:"strike"},{regex:/\+([^+]+)\+/g,type:"underline"}],r=[];for(let u of t){let d=new RegExp(u.regex.source,u.regex.flags),p;for(;(p=d.exec(e))!==null;)if(u.type==="variable"){let m=p[1].trim(),f=m===""||mt(m);r.push({start:p.index,end:p.index+p[0].length,text:p[1],type:"variable",attrs:{id:m,isInvalid:!f}})}else u.type==="link"?r.push({start:p.index,end:p.index+p[0].length,text:p[1],type:"link",attrs:{href:p[2]}}):r.push({start:p.index,end:p.index+p[0].length,text:p[1],type:u.type})}r.sort((u,d)=>u.start-d.start);let o=[],n=0;for(let u of r)u.start>=n&&(o.push(u),n=u.end);let i=[],s=0;for(let u of o){if(u.start>s){let d=e.substring(s,u.start);d&&ip(d,[],i)}if(u.type==="variable")i.push({type:"variable",attrs:{id:(l=u.attrs)==null?void 0:l.id,isInvalid:(c=u.attrs)==null?void 0:c.isInvalid}});else if(u.type==="link"){let d=[],p=Vi(u.text);d.push(...p),d.forEach(m=>{var f;m.marks=m.marks||[],m.marks.push({type:"link",attrs:{href:(f=u.attrs)==null?void 0:f.href}})}),i.push(...d)}else{let d=Vi(u.text);d.forEach(p=>{p.marks=p.marks||[],p.marks.push({type:u.type})}),i.push(...d)}s=u.end}if(s<e.length){let u=e.substring(s);u&&ip(u,[],i)}return i}a(Vi,"processMarkdownFormatting");function Fb(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:Vi(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:Vi(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:Vi(o)})}return t}a(Fb,"parseBlockContent");function Pc(e){return{type:"doc",content:Fb(e)}}a(Pc,"convertMarkdownToTiptap");var Ob=a(e=>{switch(e.type){case"bold":return"**";case"italic":return"*";case"strike":return"~";case"underline":return"+";default:return""}},"markToMD"),cs=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 l=e.marks.map(Ob).filter(Boolean);t=l.join("")+t+l.reverse().join("")}let r=(i=e.marks)==null?void 0:i.find(l=>l.type==="link");return r&&(t=`[${t}](${(s=r.attrs)==null?void 0:s.href})`),t},"convertTextToMarkdown");function be(e){let t=a(r=>{var o,n,i,s,l,c,u,d,p,m,f,v,h,y,x,E,g,b,M,C,S,P,k,w,T,A,N,R,B,H,D,F,L,W,_,V,j,Z,J,K,U,q,ce,ue,Ee,Me,Ye,lt,Mt,ct,bt,Qe,yt,Be,$e,le,ye,Te,ne,Fe,Nt,St,Ar,Mr,zo,$o,jo,O;switch(r.type){case"paragraph":{let z="",$=r.content||[];for(let me=0;me<$.length;me++)$[me].type==="hardBreak"?z+=`
|
|
186
|
+
`:z+=cs($[me]);z+=`
|
|
187
|
+
`;let G={};(o=r.attrs)!=null&&o.borderWidth&&(G.border_size=`${r.attrs.borderWidth}px`),(n=r.attrs)!=null&&n.borderColor&&(G.border_color=r.attrs.borderColor),((i=r.attrs)==null?void 0:i.paddingVertical)!==void 0&&((s=r.attrs)==null?void 0:s.paddingHorizontal)!==void 0&&(G.padding=`${r.attrs.paddingVertical}px ${r.attrs.paddingHorizontal}px`),(l=r.attrs)!=null&&l.backgroundColor&&(G.background_color=r.attrs.backgroundColor),G.type="text",G.align=((c=r.attrs)==null?void 0:c.textAlign)||"left",G.content=z;let Y=G;return(u=r.attrs)!=null&&u.locales&&(Y.locales=r.attrs.locales),[Y]}case"heading":{let z="",$=r.content||[];for(let me=0;me<$.length;me++)$[me].type==="hardBreak"?z+=`
|
|
188
|
+
`:z+=cs($[me]);z+=`
|
|
189
|
+
`;let G={};(d=r.attrs)!=null&&d.borderWidth&&(G.border_size=`${r.attrs.borderWidth}px`),(p=r.attrs)!=null&&p.borderColor&&(G.border_color=r.attrs.borderColor),G.text_style=((m=r.attrs)==null?void 0:m.level)===1?"h1":"h2",((f=r.attrs)==null?void 0:f.paddingVertical)!==void 0&&((v=r.attrs)==null?void 0:v.paddingHorizontal)!==void 0&&(G.padding=`${r.attrs.paddingVertical}px ${r.attrs.paddingHorizontal}px`),(h=r.attrs)!=null&&h.backgroundColor&&(G.background_color=r.attrs.backgroundColor),G.type="text",G.align=((y=r.attrs)==null?void 0:y.textAlign)||"left",G.content=z;let Y=G;return(x=r.attrs)!=null&&x.locales&&(Y.locales=r.attrs.locales),[Y]}case"blockquote":{let z="",$,G;if(r.content)for(let me of r.content){if(!$){if(me.type==="heading"){let Se=(E=me.attrs)==null?void 0:E.level;Se===1?$="h1":Se===2?$="h2":$="subtext"}G=(g=me.attrs)==null?void 0:g.textAlign}if(me.content)for(let Se of me.content)Se.type==="hardBreak"?z+=`
|
|
190
|
+
`:z+=cs(Se);z+=`
|
|
191
|
+
`}z=z.trim();let Y={type:"quote",content:z};return G&&G!=="left"&&(Y.align=G),(b=r.attrs)!=null&&b.borderColor&&(Y.border_color=r.attrs.borderColor),((M=r.attrs)==null?void 0:M.borderLeftWidth)!==void 0&&(Y.border_left_width=r.attrs.borderLeftWidth),((C=r.attrs)==null?void 0:C.paddingHorizontal)!==void 0&&(Y.padding_horizontal=r.attrs.paddingHorizontal),((S=r.attrs)==null?void 0:S.paddingVertical)!==void 0&&(Y.padding_vertical=r.attrs.paddingVertical),(P=r.attrs)!=null&&P.backgroundColor&&r.attrs.backgroundColor!=="transparent"&&(Y.background_color=r.attrs.backgroundColor),$&&(Y.text_style=$),(k=r.attrs)!=null&&k.locales&&(Y.locales=r.attrs.locales),[Y]}case"imageBlock":{let z={},$=(w=r.attrs)==null?void 0:w.width,G=(T=r.attrs)==null?void 0:T.imageNaturalWidth;if($&&G&&G>0){let me=Math.round($/100*G);z.width=`${me}px`,z.image_natural_width=G}else $&&(z.width=`${$}%`);(A=r.attrs)!=null&&A.borderWidth&&(z.border_size=`${r.attrs.borderWidth}px`),(N=r.attrs)!=null&&N.borderColor&&(z.border_color=r.attrs.borderColor),z.type="image",z.src=((R=r.attrs)==null?void 0:R.sourcePath)||"",(B=r.attrs)!=null&&B.alignment&&(z.align=r.attrs.alignment),(H=r.attrs)!=null&&H.link&&(z.href=r.attrs.link),(D=r.attrs)!=null&&D.alt&&(z.alt_text=r.attrs.alt);let Y=z;return(F=r.attrs)!=null&&F.locales&&(Y.locales=r.attrs.locales),[Y]}case"divider":{let z={type:"divider"};return(L=r.attrs)!=null&&L.color&&(z.color=r.attrs.color),(W=r.attrs)!=null&&W.size&&(z.border_width=`${r.attrs.size}px`),(_=r.attrs)!=null&&_.padding&&(z.padding=`${r.attrs.padding}px 0px`),[z]}case"button":{let z=(j=(V=r.attrs)==null?void 0:V.label)!=null?j:"";r.content&&r.content.length>0&&(z=r.content.map(cs).join(""));let $={type:"action",content:z,href:(J=(Z=r.attrs)==null?void 0:Z.link)!=null?J:"#"};return(K=r.attrs)!=null&&K.style&&($.style=r.attrs.style),$.align=((U=r.attrs)==null?void 0:U.alignment)||"center",(q=r.attrs)!=null&&q.backgroundColor&&($.background_color=r.attrs.backgroundColor),(ce=r.attrs)!=null&&ce.padding&&($.padding=`${r.attrs.padding}px`),(ue=r.attrs)!=null&&ue.borderRadius&&($.border_radius=`${r.attrs.borderRadius}px`),(Ee=r.attrs)!=null&&Ee.locales&&($.locales=r.attrs.locales),[$]}case"buttonRow":{let z={type:"action",content:(Ye=(Me=r.attrs)==null?void 0:Me.button1Label)!=null?Ye:"Button 1",href:(Mt=(lt=r.attrs)==null?void 0:lt.button1Link)!=null?Mt:"#",align:"left"};(ct=r.attrs)!=null&&ct.button1BackgroundColor&&(z.background_color=r.attrs.button1BackgroundColor),(bt=r.attrs)!=null&&bt.button1TextColor&&(z.color=r.attrs.button1TextColor);let $={type:"action",content:(yt=(Qe=r.attrs)==null?void 0:Qe.button2Label)!=null?yt:"Button 2",href:($e=(Be=r.attrs)==null?void 0:Be.button2Link)!=null?$e:"#",align:"left"};return(le=r.attrs)!=null&&le.button2BackgroundColor&&($.background_color=r.attrs.button2BackgroundColor),(ye=r.attrs)!=null&&ye.button2TextColor&&($.color=r.attrs.button2TextColor),[z,$]}case"customCode":{let z={type:"html",content:((Te=r.attrs)==null?void 0:Te.code)||"<!-- Add your HTML code here -->"};return(ne=r.attrs)!=null&&ne.locales&&(z.locales=r.attrs.locales),[z]}case"column":{let z=((Fe=r.attrs)==null?void 0:Fe.columnsCount)||2,$=[],G=(Nt=r.content)==null?void 0:Nt.find(Ne=>Ne.type==="columnRow");if(G&&G.content){for(let Ne of G.content)if(Ne.type==="columnCell")if(Ne.content&&Ne.content.length>0){let Zo=Ne.content.flatMap(t);Zo.length===0?$.push({type:"text",content:`Drag and drop content blocks
|
|
192
|
+
`,align:"left"}):Zo.length===1?$.push(Zo[0]):$.push({type:"group",elements:Zo})}else $.push({type:"text",content:`Drag and drop content blocks
|
|
193
|
+
`,align:"left"})}else for(let Ne=0;Ne<z;Ne++)$.push({type:"text",content:`Drag and drop content blocks
|
|
194
|
+
`,align:"left"});let Y={type:"group"};if((St=r.attrs)!=null&&St.borderWidth&&r.attrs.borderWidth>0){let Ne={};(Ar=r.attrs)!=null&&Ar.borderColor&&(Ne.color=r.attrs.borderColor),Ne.enabled=!0,Ne.size=`${r.attrs.borderWidth}px`,(Mr=r.attrs)!=null&&Mr.borderRadius&&(Ne.radius=r.attrs.borderRadius),Y.border=Ne}let me=((zo=r.attrs)==null?void 0:zo.paddingVertical)||0,Se=(($o=r.attrs)==null?void 0:$o.paddingHorizontal)||0;return(me>0||Se>0)&&(Y.padding=`${me}px ${Se}px`),(jo=r.attrs)!=null&&jo.backgroundColor&&r.attrs.backgroundColor!=="transparent"&&(Y.background_color=r.attrs.backgroundColor),Y.elements=$,(O=r.attrs)!=null&&O.locales&&(Y.locales=r.attrs.locales),[Y]}default:return r.content?r.content.flatMap(t):[]}},"convertNode");return e!=null&&e.content?e.content.flatMap(t):[]}a(be,"convertTiptapToElemental");function Ac(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!==`
|
|
195
|
+
`&&("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=Ac(o.elements);if(n)return n}}return r||t||""}a(Ac,"getTitle");function Mc(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 Ac(r.elements)}return""}a(Mc,"getTitleForChannel");function rt(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(l=>{var c;if(l.type!=="meta")if(l.type==="channel"){let u=l,d=!1;if(n?u.channel===n&&(d=!0):i||(d=!0),d){let p={};if(t.channel&&typeof t.channel=="object")for(let f in t.channel)f!=="type"&&f!=="elements"&&f!=="channel"&&Object.prototype.hasOwnProperty.call(t.channel,f)&&(p[f]=t.channel[f]);let m={type:"channel",channel:u.channel,...Object.fromEntries(Object.entries(u).filter(([f])=>!["type","channel","elements"].includes(f))),...p};if(t.elements!==void 0){let f=[],v=t.elements.find(y=>y.type==="meta");if(v)f.push(v);else{let y=(c=u.elements)==null?void 0:c.find(x=>x.type==="meta");y&&f.push(y)}let h=t.elements.filter(y=>y.type!=="meta");f.push(...h),m.elements=f}o.elements.push(m),i=!0}else o.elements.push(l)}else o.elements.push(l)}),n&&!i||!((s=r.elements)!=null&&s.some(l=>l.type==="channel"))&&!i){let l;n?l=n:t.channel&&typeof t.channel=="object"&&t.channel.channel?l=t.channel.channel:l="email";let c={};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)&&(c[d]=t.channel[d]);let u={type:"channel",channel:l,...c};if(t.elements!==void 0){let d=[],p=t.elements.find(f=>f.type==="meta");p&&d.push(p);let m=t.elements.filter(f=>f.type!=="meta");d.push(...m),u.elements=d}o.elements.push(u)}return o}a(rt,"updateElemental");function I(...e){return Ub(Wb(e))}a(I,"cn");import{Slot as _b}from"@radix-ui/react-slot";import{cva as zb}from"class-variance-authority";import{forwardRef as $b}from"react";import{jsx as jb}from"react/jsx-runtime";var us=zb("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]",secondary:"courier-text-foreground courier-bg-[#F5F5F5] dark:courier-bg-neutral-700 dark:courier-text-white",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-blue-600 active:courier-bg-blue-700"},{variant:"primary",active:!0,class:"courier-bg-blue-700"},{variant:"secondary",disabled:!1,active:!1,class:"hover:courier-bg-neutral-100 active:courier-bg-neutral-200 dark:hover:courier-bg-neutral-600 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-[#3B82F6] dark:courier-text-white [&_svg]:dark:courier-text-white"}]}),ke=$b(({active:e,buttonSize:t="medium",disabled:r,variant:o="primary",className:n,asChild:i=!1,...s},l)=>jb(i?_b:"button",{ref:l,disabled:r,className:I(us({variant:o,size:t,disabled:r,active:e}),n),...s}));ke.displayName="Button";import{forwardRef as Zb}from"react";import{jsx as qb}from"react/jsx-runtime";var fe=Zb((e,t)=>qb("hr",{...e,ref:t,className:I("courier-my-1 courier-border-border dark:courier-border-neutral-600 courier-w-full",e.className)}));fe.displayName="Divider";import*as Yr from"react";import*as ge from"@radix-ui/react-dropdown-menu";import{Check as Jb,ChevronRight as Kb,Circle as Gb}from"lucide-react";import{jsx as Ft,jsxs as Nc}from"react/jsx-runtime";var ds=ge.Root,ms=ge.Trigger;var Xb=Yr.forwardRef(({className:e,inset:t,children:r,...o},n)=>Nc(ge.SubTrigger,{ref:n,className:I("courier-flex courier-cursor-default courier-gap-2 courier-select-none courier-items-center courier-rounded-sm courier-px-2 courier-py-1.5 courier-text-sm courier-outline-none focus:courier-bg-accent data-[state=open]:courier-bg-accent [&_svg]:courier-pointer-events-none [&_svg]:courier-size-4 [&_svg]:courier-shrink-0",t&&"courier-pl-8",e),...o,children:[r,Ft(Kb,{className:"courier-ml-auto"})]}));Xb.displayName=ge.SubTrigger.displayName;var Yb=Yr.forwardRef(({className:e,...t},r)=>Ft(ge.SubContent,{ref:r,className:I("courier-z-50 courier-min-w-[8rem] courier-overflow-hidden courier-rounded-md courier-border courier-bg-popover courier-p-1 courier-text-popover-foreground courier-shadow-lg data-[state=open]:courier-animate-in data-[state=closed]:courier-animate-out data-[state=closed]:courier-fade-out-0 data-[state=open]:courier-fade-in-0 data-[state=closed]:courier-zoom-out-95 data-[state=open]:courier-zoom-in-95 data-[side=bottom]:courier-slide-in-from-top-2 data-[side=left]:courier-slide-in-from-right-2 data-[side=right]:courier-slide-in-from-left-2 data-[side=top]:courier-slide-in-from-bottom-2",e),...t}));Yb.displayName=ge.SubContent.displayName;var Fi=Yr.forwardRef(({className:e,sideOffset:t=4,portalProps:r,...o},n)=>Ft(ge.Portal,{...r,children:Ft(ge.Content,{ref:n,sideOffset:t,className:I("courier-z-50 courier-min-w-[8rem] courier-overflow-hidden courier-rounded-md courier-border courier-bg-popover courier-p-1 courier-text-popover-foreground courier-shadow-md","data-[state=open]:courier-animate-in data-[state=closed]:courier-animate-out data-[state=closed]:courier-fade-out-0 data-[state=open]:courier-fade-in-0 data-[state=closed]:courier-zoom-out-95 data-[state=open]:courier-zoom-in-95 data-[side=bottom]:courier-slide-in-from-top-2 data-[side=left]:courier-slide-in-from-right-2 data-[side=right]:courier-slide-in-from-left-2 data-[side=top]:courier-slide-in-from-bottom-2",e),...o})}));Fi.displayName=ge.Content.displayName;var Oi=Yr.forwardRef(({className:e,inset:t,...r},o)=>Ft(ge.Item,{ref:o,className:I("courier-relative courier-flex courier-cursor-default courier-select-none courier-items-center courier-gap-2 courier-rounded-sm courier-px-2 courier-py-1.5 courier-text-sm courier-outline-none focus:courier-bg-accent focus:courier-text-foreground data-[disabled]:courier-pointer-events-none data-[disabled]:courier-opacity-50 [&>svg]:courier-size-4 [&>svg]:courier-shrink-0",t&&"courier-pl-8",e),...r}));Oi.displayName=ge.Item.displayName;var Qb=Yr.forwardRef(({className:e,children:t,checked:r,...o},n)=>Nc(ge.CheckboxItem,{ref:n,className:I("courier-relative courier-flex courier-cursor-default courier-select-none courier-items-center courier-rounded-sm courier-py-1.5 courier-pl-8 courier-pr-2 courier-text-sm courier-outline-none focus:courier-bg-accent focus:courier-text-accent-foreground data-[disabled]:courier-pointer-events-none data-[disabled]:courier-opacity-50",e),checked:r,...o,children:[Ft("span",{className:"courier-absolute courier-left-2 courier-flex courier-h-3.5 courier-w-3.5 courier-items-center courier-justify-center",children:Ft(ge.ItemIndicator,{children:Ft(Jb,{className:"courier-h-4 courier-w-4"})})}),t]}));Qb.displayName=ge.CheckboxItem.displayName;var e2=Yr.forwardRef(({className:e,children:t,...r},o)=>Nc(ge.RadioItem,{ref:o,className:I("courier-relative courier-flex courier-cursor-default courier-select-none courier-items-center courier-rounded-sm courier-py-1.5 courier-pl-8 courier-pr-2 courier-text-sm courier-outline-none focus:courier-bg-accent focus:courier-text-accent-foreground data-[disabled]:courier-pointer-events-none data-[disabled]:courier-opacity-50",e),...r,children:[Ft("span",{className:"courier-absolute courier-left-2 courier-flex courier-h-3.5 courier-w-3.5 courier-items-center courier-justify-center",children:Ft(ge.ItemIndicator,{children:Ft(Gb,{className:"courier-h-2 courier-w-2 courier-fill-current"})})}),t]}));e2.displayName=ge.RadioItem.displayName;var t2=Yr.forwardRef(({className:e,inset:t,...r},o)=>Ft(ge.Label,{ref:o,className:I("courier-px-2 courier-py-1.5 courier-text-sm courier-font-semibold",t&&"courier-pl-8",e),...r}));t2.displayName=ge.Label.displayName;var r2=Yr.forwardRef(({className:e,...t},r)=>Ft(ge.Separator,{ref:r,className:I("courier-mx-1 courier-my-1 courier-h-px courier-bg-muted",e),...t}));r2.displayName=ge.Separator.displayName;var o2=a(({className:e,...t})=>Ft("span",{className:I("courier-ml-auto courier-text-xs courier-tracking-widest courier-opacity-60",e),...t}),"DropdownMenuShortcut");o2.displayName="DropdownMenuShortcut";import{Component as n2}from"react";import{jsx as Ic,jsxs as a2}from"react/jsx-runtime";var Rc=class Rc extends n2{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||Ic(i2,{error:this.state.error}):this.props.children}};a(Rc,"ErrorBoundary");var Sc=Rc,i2=a(({error:e})=>a2("div",{className:"courier-p-6 courier-border courier-border-red-200 courier-bg-red-50 courier-rounded-lg courier-text-center",children:[Ic("h3",{className:"courier-text-lg courier-font-semibold courier-text-red-800 courier-mb-2",children:"Something went wrong"}),Ic("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 u2}from"@radix-ui/react-slot";import*as Ot from"react";import{Controller as d2,FormProvider as m2,useFormContext as p2}from"react-hook-form";import*as Lc from"@radix-ui/react-label";import{cva as s2}from"class-variance-authority";import*as ap from"react";import{jsx as c2}from"react/jsx-runtime";var l2=s2("courier-text-sm courier-font-medium courier-leading-none peer-disabled:courier-cursor-not-allowed peer-disabled:courier-opacity-70"),Bc=ap.forwardRef(({className:e,...t},r)=>c2(Lc.Root,{ref:r,className:I(l2(),e),...t}));Bc.displayName=Lc.Root.displayName;import{jsx as vo}from"react/jsx-runtime";var He=m2,sp=Ot.createContext({}),re=a(({...e})=>vo(sp.Provider,{value:{name:e.name},children:vo(d2,{...e})}),"FormField"),ps=a(()=>{let e=Ot.useContext(sp),t=Ot.useContext(lp),{getFieldState:r,formState:o}=p2(),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"),lp=Ot.createContext({}),ee=Ot.forwardRef(({className:e,...t},r)=>{let o=Ot.useId();return vo(lp.Provider,{value:{id:o},children:vo("div",{ref:r,className:I("courier-space-y-2",e),...t})})});ee.displayName="FormItem";var Ir=Ot.forwardRef(({className:e,...t},r)=>{let{error:o,formItemId:n}=ps();return vo(Bc,{ref:r,className:I(o&&"courier-text-destructive",e),htmlFor:n,...t})});Ir.displayName="FormLabel";var te=Ot.forwardRef(({...e},t)=>{let{error:r,formItemId:o,formDescriptionId:n,formMessageId:i}=ps();return vo(u2,{ref:t,id:o,"aria-describedby":r?`${n} ${i}`:`${n}`,"aria-invalid":!!r,...e})});te.displayName="FormControl";var f2=Ot.forwardRef(({className:e,...t},r)=>{let{formDescriptionId:o}=ps();return vo("p",{ref:r,id:o,className:I("courier-text-[0.8rem] courier-text-muted-foreground",e),...t})});f2.displayName="FormDescription";var oe=Ot.forwardRef(({className:e,children:t,...r},o)=>{let{error:n,formMessageId:i}=ps(),s=n?String(n==null?void 0:n.message):t;return s?vo("p",{ref:o,id:i,className:I("courier-text-[0.8rem] courier-font-medium courier-text-destructive",e),...r,children:s}):null});oe.displayName="FormMessage";import*as Ie from"@radix-ui/react-alert-dialog";import*as Yo from"react";import{useCallback as g2}from"react";import{jsx as Rr,jsxs as v2}from"react/jsx-runtime";var cp=Ie.Root,up=Ie.Trigger,h2=Ie.Portal,dp=Yo.forwardRef(({className:e,...t},r)=>Rr("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:Rr(Ie.Overlay,{asChild:!0,className:I("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})}));dp.displayName=Ie.Overlay.displayName;var Dc=Yo.forwardRef(({className:e,...t},r)=>{let o=g2(()=>{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 v2(h2,{container:typeof window!="undefined"?o():void 0,children:[Rr(dp,{}),Rr(Ie.Content,{ref:r,className:I("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})]})});Dc.displayName=Ie.Content.displayName;var Hc=a(({className:e,...t})=>Rr("div",{className:I("courier-flex courier-flex-col courier-space-y-2 courier-text-center sm:courier-text-left",e),...t}),"AlertDialogHeader");Hc.displayName="AlertDialogHeader";var Vc=a(({className:e,...t})=>Rr("div",{className:I("courier-flex courier-flex-col-reverse sm:courier-flex-row sm:courier-justify-end sm:courier-space-x-2",e),...t}),"AlertDialogFooter");Vc.displayName="AlertDialogFooter";var b2=Yo.forwardRef(({className:e,...t},r)=>Rr(Ie.Title,{ref:r,className:I("courier-text-lg courier-font-semibold",e),...t}));b2.displayName=Ie.Title.displayName;var y2=Yo.forwardRef(({className:e,...t},r)=>Rr(Ie.Description,{ref:r,className:I("courier-text-sm courier-text-muted-foreground",e),...t}));y2.displayName=Ie.Description.displayName;var Fc=Yo.forwardRef(({className:e,...t},r)=>Rr(Ie.Action,{ref:r,className:I(us(),e),...t}));Fc.displayName=Ie.Action.displayName;var Oc=Yo.forwardRef(({className:e,...t},r)=>Rr(Ie.Cancel,{ref:r,className:I(us({variant:"outline"}),"courier-mt-2 sm:courier-mt-0",e),...t}));Oc.displayName=Ie.Cancel.displayName;import*as mp from"react";import{jsx as Wc,jsxs as C2}from"react/jsx-runtime";var ve=mp.forwardRef(({className:e,type:t,startAdornment:r,endAdornment:o,...n},i)=>C2("div",{className:"courier-relative courier-flex courier-w-full courier-items-center",children:[r&&Wc("div",{className:"courier-absolute courier-left-2 courier-flex courier-items-center courier-pointer-events-none",children:r}),Wc("input",{type:t,className:I("courier-flex courier-w-full courier-rounded-md courier-border-none courier-bg-secondary courier-text-secondary-foreground courier-p-1.5 courier-text-base file:courier-border-0 file:courier-bg-transparent file:courier-text-sm file:courier-font-medium file:courier-text-foreground placeholder:courier-text-muted-foreground focus-visible:courier-outline-none disabled:courier-cursor-not-allowed disabled:courier-opacity-50 md:courier-text-sm dark:courier-[color-scheme:dark]",r&&"courier-pl-8",o&&"courier-pr-8",e),ref:i,...n}),o&&Wc("div",{className:"courier-absolute courier-right-2 courier-flex courier-items-center courier-pointer-events-none",children:o})]}));ve.displayName="Input";import{forwardRef as w2,useRef as k2,useMemo as P2,useCallback as A2}from"react";import{useCallback as Uc,useEffect as pp,useRef as fs,useState as fp}from"react";import{CircleX as x2}from"lucide-react";import{jsx as Lr,jsxs as gp}from"react/jsx-runtime";var T2=a(e=>e==="transparent"||/^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/.test(e),"isValidHex"),hp=a(({color:e,onChange:t,className:r,presetColors:o,defaultValue:n="transparent"})=>{let[i,s]=fp(()=>Wi(e)),[l,c]=fp(e),u=fs(null),d=fs(null),p=fs(null),m=fs(!1),f=e!==n,v=Uc(g=>{m.current=!0;let b=E2(g);c(b),t(b),m.current=!1},[t]),h=a(g=>b=>{p.current=g,y(b)},"handleMouseDown"),y=Uc(g=>{if(p.current){if(p.current==="gradient"&&u.current){let b=u.current.getBoundingClientRect(),M=Math.max(0,Math.min(1,(g.clientX-b.left)/b.width)),C=Math.max(0,Math.min(1,(g.clientY-b.top)/b.height)),S={...i,s:M*100,v:(1-C)*100};s(S),v(S)}else if(p.current==="hue"&&d.current){let b=d.current.getBoundingClientRect(),M=Math.max(0,Math.min(1,(g.clientX-b.left)/b.width)),C={...i,h:M*360};s(C),v(C)}}},[i,v]),x=Uc(()=>{p.current=null},[]);pp(()=>{if(p.current)return window.addEventListener("mousemove",y),window.addEventListener("mouseup",x),()=>{window.removeEventListener("mousemove",y),window.removeEventListener("mouseup",x)}},[y,x]),pp(()=>{m.current||(s(Wi(e)),c(e))},[e]);let E=a(g=>{let b=g.target.value;if(c(b),T2(b)){let M=Wi(b);s(M),v(M)}},"handleInputChange");return gp("div",{className:I("w-full",r),children:[Lr("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:h("gradient"),children:Lr("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}%`}})}),Lr("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:h("hue"),children:Lr("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}%`}})}),gp("div",{className:"courier-mt-3 courier-relative courier-flex courier-items-center",children:[Lr(ve,{value:l,onChange:E,placeholder:"#000000",className:"courier-flex-1"}),f&&Lr("button",{onClick:g=>{if(g.preventDefault(),n==="transparent"){t("transparent"),c("transparent"),s({h:0,s:0,v:0});return}let b=Wi(n);s(b),v(b)},className:"courier-absolute courier-right-3 courier-flex courier-cursor-pointer courier-items-center courier-justify-center courier-transition-colors",children:Lr(x2,{size:14,strokeWidth:1.25})})]}),Lr(fe,{className:"courier-my-3"}),Lr("div",{className:"courier-flex courier-flex-wrap courier-gap-1",children:o.map(g=>Lr("button",{className:I("courier-h-6 courier-w-6 courier-rounded-md courier-border courier-border-input courier-shrink-0",g==="transparent"&&_c),style:{backgroundColor:g==="transparent"?void 0:g},onClick:b=>{if(b.preventDefault(),g==="transparent"){t("transparent"),c("transparent"),s({h:0,s:0,v:0});return}let M=Wi(g);s(M),v(M)}},g))})]})},"ColorPicker");function Wi(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,l=0,c=n===0?0:s/n,u=n;if(n!==i){switch(n){case t:l=(r-o)/s+(r<o?6:0);break;case r:l=(o-t)/s+2;break;case o:l=(t-r)/s+4;break}l/=6}return{h:l*360,s:c*100,v:u*100}}a(Wi,"hexToHsv");function E2({h:e,s:t,v:r}){t/=100,r/=100,e=e%360/360;let o=a(l=>{let c=(l+e*6)%6;return r-r*t*Math.max(0,Math.min(c,4-c,1))},"f"),n=Math.round(o(5)*255),i=Math.round(o(3)*255),s=Math.round(o(1)*255);return`#${[n,i,s].map(l=>l.toString(16).padStart(2,"0")).join("")}`}a(E2,"hsvToHex");import*as Br from"@radix-ui/react-popover";import*as yp from"react";import{jsx as bp}from"react/jsx-runtime";var vp=Br.Root,Cp=Br.Trigger;var zc=yp.forwardRef(({className:e,align:t="center",side:r="bottom",sideOffset:o=4,collisionPadding:n=10,avoidCollisions:i=!0,portalProps:s,...l},c)=>bp(Br.Portal,{...s,children:bp(Br.Content,{ref:c,side:r,align:t,sideOffset:o,collisionPadding:n,avoidCollisions:i,className:I("courier-z-50 courier-w-72 courier-rounded-md courier-border courier-bg-popover courier-p-4 courier-text-popover-foreground courier-shadow-md courier-outline-none data-[state=open]:courier-animate-in data-[state=closed]:courier-animate-out data-[state=closed]:courier-fade-out-0 data-[state=open]:courier-fade-in-0 data-[state=closed]:courier-zoom-out-95 data-[state=open]:courier-zoom-in-95 data-[side=bottom]:courier-slide-in-from-top-2 data-[side=left]:courier-slide-in-from-right-2 data-[side=right]:courier-slide-in-from-left-2 data-[side=top]:courier-slide-in-from-bottom-2",e),...l})}));zc.displayName=Br.Content.displayName;import{jsx as Ui,jsxs as xp}from"react/jsx-runtime";var _c="bg-[url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNOCAwSDBWOEg4VjBaIiBmaWxsPSIjRDlEOUQ5Ii8+PHBhdGggZD0iTTE2IDhIOFYxNkgxNlY4WiIgZmlsbD0iI0Q5RDlEOSIvPjwvc3ZnPg==')]",M2=["#ef4444","#f97316","#eab308","#22c55e","#14b8a6","#06b6d4","#3b82f6","#6366f1","#8b5cf6","#000000","#525252","#a3a3a3","#ffffff","transparent"],pt=w2(({className:e,value:t="",onChange:r,defaultValue:o,transparent:n=!0,presetColors:i=M2,...s},l)=>{let c=t!=="transparent",u=k2(null),d=P2(()=>n?i:i.filter(m=>m!=="transparent"),[i,n]),p=A2(()=>{var f;let m=(f=u.current)==null?void 0:f.parentElement;for(;m;){if(m.classList.contains("theme-container"))return m;m=m.parentElement}return document.body},[]);return xp(vp,{children:[Ui(Cp,{asChild:!0,children:xp("div",{className:"courier-relative courier-flex courier-items-center",ref:u,children:[Ui("div",{className:I("courier-absolute courier-left-2 courier-flex courier-h-4 courier-w-4 courier-cursor-pointer courier-items-center courier-justify-center courier-rounded-md courier-border courier-border-input courier-transition-colors courier-z-10",c?"":_c),style:{backgroundColor:c?t:void 0}}),Ui(ve,{...s,ref:l,readOnly:!0,type:"text",value:t==="transparent"?"Transparent":t,className:I("courier-relative courier-cursor-pointer courier-pl-8",e)})]})}),Ui(zc,{portalProps:{container:typeof window!="undefined"?p():void 0},className:"courier-w-[230px]",children:Ui(hp,{color:t,onChange:r,presetColors:d,defaultValue:o})})]})});pt.displayName="InputColor";import*as Tp from"react";import*as $c from"@radix-ui/react-separator";import{jsx as N2}from"react/jsx-runtime";var jc=Tp.forwardRef(({className:e,orientation:t="horizontal",decorative:r=!0,...o},n)=>N2($c.Root,{ref:n,decorative:r,orientation:t,className:I("courier-shrink-0 courier-bg-border",t==="horizontal"?"courier-h-[1px] courier-w-full":"courier-h-full courier-w-[1px]",e),...o}));jc.displayName=$c.Root.displayName;import*as Ep from"react";import*as Qr from"@radix-ui/react-slider";import{jsx as Zc,jsxs as S2}from"react/jsx-runtime";var qc=Ep.forwardRef(({className:e,...t},r)=>S2(Qr.Root,{ref:r,className:I("courier-relative courier-flex courier-w-full courier-touch-none courier-select-none courier-items-center",e),...t,children:[Zc(Qr.Track,{className:"courier-relative courier-h-1.5 courier-w-full courier-grow courier-overflow-hidden courier-rounded-full courier-bg-secondary",children:Zc(Qr.Range,{className:"courier-absolute courier-h-full courier-bg-accent-foreground"})}),Zc(Qr.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"})]}));qc.displayName=Qr.Root.displayName;import*as kp from"react";import*as _i from"@radix-ui/react-switch";import{jsx as wp}from"react/jsx-runtime";var On=kp.forwardRef(({className:e,...t},r)=>wp(_i.Root,{className:I("courier-peer courier-inline-flex courier-h-5 courier-w-9 courier-shrink-0 courier-cursor-pointer courier-items-center courier-rounded-full courier-border-2 courier-border-transparent courier-shadow-sm courier-transition-colors focus-visible:courier-outline-none focus-visible:courier-ring-2 focus-visible:courier-ring-ring focus-visible:courier-ring-offset-2 focus-visible:courier-ring-offset-background disabled:courier-cursor-not-allowed disabled:courier-opacity-50 data-[state=checked]:courier-bg-accent-foreground data-[state=unchecked]:courier-bg-input",e),...t,ref:r,children:wp(_i.Thumb,{className:I("courier-pointer-events-none courier-block courier-h-4 courier-w-4 courier-rounded-full courier-bg-background courier-shadow-lg courier-ring-0 courier-transition-transform data-[state=checked]:courier-translate-x-4 data-[state=unchecked]:courier-translate-x-0")})}));On.displayName=_i.Root.displayName;import*as gs from"react";import*as pr from"@radix-ui/react-tabs";import{jsx as Jc}from"react/jsx-runtime";var hs=pr.Root,zi=gs.forwardRef(({className:e,...t},r)=>Jc(pr.List,{ref:r,className:I("courier-inline-flex courier-h-9 courier-items-center courier-justify-center courier-rounded-md courier-border courier-border-border courier-bg-background courier-p-[3px] courier-text-muted-foreground",e),...t}));zi.displayName=pr.List.displayName;var Wn=gs.forwardRef(({className:e,...t},r)=>Jc(pr.Trigger,{ref:r,className:I("courier-inline-flex courier-items-center courier-justify-center courier-whitespace-nowrap courier-rounded-sm courier-px-3 courier-py-1 courier-text-sm courier-font-medium courier-ring-offset-background courier-transition-all focus-visible:courier-outline-none disabled:courier-pointer-events-none disabled:courier-opacity-50 data-[state=active]:courier-bg-accent data-[state=active]:courier-text-accent-foreground",e),...t}));Wn.displayName=pr.Trigger.displayName;var bs=gs.forwardRef(({className:e,...t},r)=>Jc(pr.Content,{ref:r,className:I("courier-mt-2 courier-ring-offset-background focus-visible:courier-outline-none focus-visible:courier-ring-2 focus-visible:courier-ring-ring focus-visible:courier-ring-offset-2",e),...t}));bs.displayName=pr.Content.displayName;import*as Un from"react";import{jsx as I2}from"react/jsx-runtime";var Kc=Un.forwardRef(({className:e,autoResize:t=!1,...r},o)=>{let n=Un.useRef(null),i=a(s=>{n.current=s,typeof o=="function"?o(s):o&&(o.current=s)},"combinedRef");return Un.useEffect(()=>{if(!t)return;let s=n.current;if(!s)return;let l=a(()=>{s.style.height="auto",s.style.height=`${s.scrollHeight}px`},"adjustHeight");return l(),s.addEventListener("input",l),()=>{s.removeEventListener("input",l)}},[t]),I2("textarea",{className:I("courier-flex courier-min-h-[44px] courier-w-full courier-rounded-md courier-border-none courier-bg-secondary courier-text-secondary-foreground courier-p-1.5 courier-text-base courier-placeholder:courier-text-muted-foreground focus-visible:courier-outline-none disabled:courier-cursor-not-allowed disabled:courier-opacity-50 md:courier-text-sm",t&&"courier-resize-none",e),ref:i,...r})});Kc.displayName="Textarea";import{forwardRef as L2,useContext as B2}from"react";import{createContext as R2}from"react";var ys={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"},Pp={...ys},Ap={...ys,colorScheme:"dark",background:"#262626",foreground:"#ffffff",muted:"#48465B",mutedForeground:"#C9C8E1",popover:"#171717",popoverForeground:"#ffffff",border:"#48465B",input:"#48465B",card:"#171717",cardForeground:"#ffffff",primary:"#2E333F",primaryForeground:"#ffffff",secondary:"#2E333F",secondaryForeground:"#C9C8E1",accent:"#0085FF",accentForeground:"#ffffff",destructive:"#FF3363",destructiveForeground:"#ffffff",ring:"#0085FF"};var Gc=R2(ys);import{jsx as Mp}from"react/jsx-runtime";var Np=L2(({children:e,theme:t,colorScheme:r,className:o},n)=>{let i=r!=null?r:"light",s=i==="light"?Pp:Ap,l=s;t&&(l=typeof t=="string"?t:{...s,...t});let c=typeof t=="string"?{}:Object.entries(l).reduce((u,[d,p])=>{let m=d.replace(/[A-Z]/g,f=>`-${f.toLowerCase()}`);return{...u,[`--${m}`]:p}},{});return Mp(Gc.Provider,{value:typeof l=="object"?l:{},children:Mp("div",{style:c,className:I("courier-flex courier-flex-col courier-relative",typeof t=="string"?t:"","theme-container",i==="dark"?"dark courier-dark":"",o),ref:n,children:e})})}),Sp=a(()=>B2(Gc),"useTheme");import*as Ip from"react";import*as Xc from"@radix-ui/react-toggle";import{cva as D2}from"class-variance-authority";import{jsx as V2}from"react/jsx-runtime";var Yc=D2("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 data-[state=on]:dark:courier-text-white [&_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"}}),H2=Ip.forwardRef(({className:e,variant:t,size:r,...o},n)=>V2(Xc.Root,{ref:n,className:I(Yc({variant:t,size:r,className:e})),...o}));H2.displayName=Xc.Root.displayName;import*as _n from"@radix-ui/react-toggle-group";import*as Qo from"react";import{jsx as Qc}from"react/jsx-runtime";var Rp=Qo.createContext({size:"default",variant:"default"}),fr=Qo.forwardRef(({className:e,variant:t,size:r,children:o,...n},i)=>Qc(_n.Root,{ref:i,className:I("courier-flex courier-items-center courier-justify-center courier-gap-1",e),...n,children:Qc(Rp.Provider,{value:{variant:t,size:r},children:o})}));fr.displayName=_n.Root.displayName;var Lt=Qo.forwardRef(({className:e,children:t,variant:r,size:o,...n},i)=>{let s=Qo.useContext(Rp);return Qc(_n.Item,{ref:i,className:I(Yc({variant:s.variant||r,size:s.size||o}),e),...n,children:t})});Lt.displayName=_n.Item.displayName;import{jsx as eu}from"react/jsx-runtime";var Ae=a(({colorProp:e,color:t,active:r,className:o,...n})=>e==="stroke"?eu("path",{className:I(!t&&(r?"courier-stroke-accent-foreground":"courier-stroke-ring"),o),...n}):eu("path",{className:I(!t&&(r?"courier-fill-accent-foreground":"courier-fill-ring"),o),...n}),"Path"),X=a(({width:e=28,height:t=28,...r})=>eu("svg",{width:e,height:t,viewBox:`0 0 ${e} ${t}`,fill:"none",...r}),"Icon");import{jsx as tu,jsxs as F2}from"react/jsx-runtime";var Lp=a(({color:e="#000000",width:t=19,height:r=10,...o})=>F2(X,{...o,width:t,height:r,children:[tu("rect",{opacity:"0.6",x:"0.553621",y:"0.876863",width:"16.4923",height:"7.87692",rx:"1.6",stroke:e,strokeWidth:"0.738462"}),tu("rect",{opacity:"0.9",x:"1.41528",y:"1.73828",width:"14.7692",height:"6.15385",rx:"0.984615",fill:e}),tu("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 Bp}from"react/jsx-runtime";var $i=a(({color:e="#DC2626",width:t=13,height:r=13,...o})=>Bp(X,{...o,fill:"none",width:t,height:r,children:Bp("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 Dp}from"react/jsx-runtime";var ji=a(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>Dp(X,{...n,width:r,height:o,children:Dp(Ae,{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 ru,jsxs as O2}from"react/jsx-runtime";var eo=a(({color:e="#A3A3A3",width:t=16,height:r=16,...o})=>O2(X,{...o,width:t,height:r,children:[ru("rect",{y:"2.25",width:"16",height:"1.5",rx:"0.75",fill:e}),ru("rect",{y:"5.75",width:"16",height:"2.5",rx:"1.25",fill:e}),ru("rect",{y:"10.25",width:"16",height:"3.5",rx:"1.75",fill:e})]}),"BorderWidthIcon");import{jsx as Hp}from"react/jsx-runtime";var ou=a(({color:e,width:t=21,height:r=16,...o})=>Hp(X,{...o,width:t,height:r,children:Hp("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 Vp}from"react/jsx-runtime";var nu=a(({color:e="#171717",width:t=12,height:r=13,...o})=>Vp(X,{...o,fill:"none",width:t,height:r,children:Vp("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 Fp}from"react/jsx-runtime";var iu=a(({color:e="#404040",width:t=20,height:r=15,viewBox:o="0 0 20 15",...n})=>Fp(X,{...n,width:t,height:r,viewBox:o,children:Fp("path",{d:"M1.875 0H18.125C19.1406 0 20 0.859375 20 1.875C20 2.5 19.6875 3.04688 19.2188 3.39844L10.7422 9.76562C10.2734 10.1172 9.6875 10.1172 9.21875 9.76562L0.742188 3.39844C0.273438 3.04688 0 2.5 0 1.875C0 0.859375 0.820312 0 1.875 0ZM0 4.375L8.47656 10.7812C9.375 11.4453 10.5859 11.4453 11.4844 10.7812L20 4.375V12.5C20 13.9062 18.8672 15 17.5 15H2.5C1.09375 15 0 13.9062 0 12.5V4.375Z",fill:e})}),"EmailIcon");import{jsx as Op}from"react/jsx-runtime";var Zi=a(({color:e="#737373",width:t=16,height:r=16,...o})=>Op(X,{...o,width:t,height:r,children:Op(Ae,{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 Wp}from"react/jsx-runtime";var qi=a(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>Wp(X,{...n,width:r,height:o,children:Wp(Ae,{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 Up}from"react/jsx-runtime";var au=a(({color:e="#737373",width:t=14,height:r=16,...o})=>Up(X,{...o,width:t,height:r,children:Up(Ae,{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 _p}from"react/jsx-runtime";var Ji=a(({color:e="#404040",width:t=24,height:r=24,...o})=>_p(X,{...o,width:t,height:r,children:_p("path",{d:"M2 5.75C2 4.38281 3.09375 3.25 4.5 3.25H19.5C20.8672 3.25 22 4.38281 22 5.75V8.25V10.125V10.75V18.25C22 19.6562 20.8672 20.75 19.5 20.75H4.5C3.09375 20.75 2 19.6562 2 18.25V10.75V10.125V8.25V5.75ZM20.125 10.75H3.875V18.25C3.875 18.6016 4.14844 18.875 4.5 18.875H19.5C19.8125 18.875 20.125 18.6016 20.125 18.25V10.75ZM5.75 8.25C6.41406 8.25 7 7.70312 7 7C7 6.33594 6.41406 5.75 5.75 5.75C5.04688 5.75 4.5 6.33594 4.5 7C4.5 7.70312 5.04688 8.25 5.75 8.25ZM10.75 7C10.75 6.33594 10.1641 5.75 9.5 5.75C8.79688 5.75 8.25 6.33594 8.25 7C8.25 7.70312 8.79688 8.25 9.5 8.25C10.1641 8.25 10.75 7.70312 10.75 7ZM13.25 8.25C13.9141 8.25 14.5 7.70312 14.5 7C14.5 6.33594 13.9141 5.75 13.25 5.75C12.5469 5.75 12 6.33594 12 7C12 7.70312 12.5469 8.25 13.25 8.25Z",fill:e})}),"InboxIcon");import{jsx as zp}from"react/jsx-runtime";var Ki=a(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>zp(X,{...n,width:r,height:o,children:zp(Ae,{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 $p}from"react/jsx-runtime";var Gi=a(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>$p(X,{...n,width:r,height:o,children:$p(Ae,{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 jp}from"react/jsx-runtime";var su=a(({color:e="#404040",width:t=20,height:r=21,viewBox:o="0 0 256 239",...n})=>jp(X,{...n,width:t,height:r,viewBox:o,children:jp("path",{d:"M244.688 89.3027C250.936 89.3028 256 94.367 256 100.614V160.846C256 183.806 237.387 202.419 214.427 202.419H214.23C207.916 202.42 201.932 201.009 196.571 198.491C186.31 221.332 163.63 237.486 136.931 238.14C107.972 237.431 83.7409 218.49 74.9551 192.558H120.063C130.509 192.558 138.977 184.09 138.977 173.645V89.3027H244.688ZM120.082 53.5811C120.127 53.5812 120.172 53.5842 120.217 53.585C125.988 53.6645 130.676 58.2209 130.962 63.9395C130.971 64.1173 130.976 64.2966 130.977 64.4766V173.646C130.976 179.672 126.09 184.558 120.063 184.558H10.9131C4.88618 184.558 9.07128e-05 179.672 0 173.646V64.4941C0 58.4673 4.88624 53.5811 10.9131 53.5811H120.082ZM36.7686 95.125H58.4873V154.541H72.3887V95.125H94.208V83.5986H36.7686V95.125ZM139.907 0C161.279 0.000200803 178.604 17.3254 178.604 38.6973C178.604 60.0693 161.279 77.3953 139.907 77.3955C139.596 77.3955 139.286 77.3901 138.977 77.3828V64.4941C138.976 54.0493 130.509 45.5811 120.063 45.5811H101.82C101.419 43.3471 101.209 41.0467 101.209 38.6973C101.209 17.3253 118.535 0 139.907 0ZM223.256 23.8145C238.052 23.8145 250.047 35.8085 250.047 50.6045C250.047 65.4005 238.052 77.3954 223.256 77.3955C208.46 77.3955 196.465 65.4006 196.465 50.6045C196.465 35.8085 208.46 23.8145 223.256 23.8145Z",fill:e})}),"MSTeamsIcon");import{jsx as Zp}from"react/jsx-runtime";var Xi=a(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>Zp(X,{...n,width:r,height:o,children:Zp(Ae,{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 lu}from"react/jsx-runtime";var cu=a(({color:e,width:t=21,height:r=16,...o})=>lu(X,{...o,width:t,height:r,children:lu("g",{transform:"translate(4, 0)",children:lu("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 qp}from"react/jsx-runtime";var uu=a(({color:e="#737373",width:t=14,height:r=16,...o})=>qp(X,{...o,width:t,height:r,children:qp(Ae,{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 Jp}from"react/jsx-runtime";var Yi=a(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>Jp(X,{...n,width:r,height:o,children:Jp(Ae,{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 Kp}from"react/jsx-runtime";var en=a(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>Kp(X,{...n,width:r,height:o,children:Kp(Ae,{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 Gp,jsxs as W2}from"react/jsx-runtime";var du=a(({width:e=20,height:t=21,viewBox:r="0 0 20 21",...o})=>W2(X,{...o,width:e,height:t,viewBox:r,children:[Gp("path",{d:"M15 4.625H2.5C2.14844 4.625 1.875 4.9375 1.875 5.25V17.75C1.875 18.1016 2.14844 18.375 2.5 18.375H15C15.3125 18.375 15.625 18.1016 15.625 17.75V5.25C15.625 4.9375 15.3125 4.625 15 4.625ZM2.5 2.75H15C16.3672 2.75 17.5 3.88281 17.5 5.25V17.75C17.5 19.1562 16.3672 20.25 15 20.25H2.5C1.09375 20.25 0 19.1562 0 17.75V5.25C0 3.88281 1.09375 2.75 2.5 2.75Z",fill:"currentColor"}),Gp("circle",{cx:"2",cy:"2",r:"3",transform:"matrix(-1 0 0 1 17.75 2)",fill:"currentColor",stroke:"white",strokeWidth:"2"})]}),"PushIcon");import{jsx as Xp}from"react/jsx-runtime";var mu=a(({color:e="#171717",width:t=16,height:r=13,...o})=>Xp(X,{...o,fill:"none",width:t,height:r,children:Xp("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 Yp}from"react/jsx-runtime";var pu=a(({color:e="#171717",width:t=11,height:r=12,...o})=>Yp(X,{...o,width:t,height:r,children:Yp(Ae,{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 Qp}from"react/jsx-runtime";var fu=a(({color:e="#404040",width:t=24,height:r=24,...o})=>Qp(X,{...o,width:t,height:r,children:Qp("path",{d:"M6.80469 17.3125C7.3125 16.9219 7.97656 16.8438 8.5625 17.0391C9.57812 17.4297 10.75 17.625 12 17.625C16.8438 17.625 20.125 14.5 20.125 11.375C20.125 8.28906 16.8438 5.125 12 5.125C7.11719 5.125 3.875 8.28906 3.875 11.375C3.875 12.625 4.34375 13.8359 5.24219 14.8906C5.59375 15.2422 5.75 15.75 5.71094 16.2578C5.67188 16.9609 5.47656 17.625 5.28125 18.2109C5.94531 17.8984 6.49219 17.5469 6.80469 17.3125ZM2.82031 18.875C2.89844 18.7969 2.9375 18.6797 3.01562 18.5625C3.40625 17.9375 3.75781 17.0781 3.83594 16.1016C2.66406 14.7734 2 13.1719 2 11.375C2 6.92188 6.45312 3.25 12 3.25C17.5078 3.25 22 6.92188 22 11.375C22 15.8672 17.5078 19.5 12 19.5C10.5156 19.5 9.14844 19.2656 7.89844 18.8359C7.46875 19.1484 6.6875 19.6172 5.78906 20.0078C5.20312 20.2812 4.53906 20.5156 3.83594 20.6328C3.79688 20.6328 3.75781 20.6719 3.75781 20.6719C3.5625 20.7109 3.40625 20.7109 3.21094 20.75C3.01562 20.75 2.82031 20.7891 2.58594 20.7891C2.35156 20.7891 2.11719 20.6328 2.03906 20.3984C1.92188 20.1641 2 19.8906 2.15625 19.6953C2.3125 19.5391 2.46875 19.3828 2.58594 19.1875C2.66406 19.0703 2.74219 18.9922 2.78125 18.9141V18.875H2.82031Z",fill:e})}),"SMSIcon");import{jsx as Qi,jsxs as U2}from"react/jsx-runtime";var ef=a(({color:e="#000000",width:t=14,height:r=9,...o})=>Qi(X,{...o,width:t,height:r,children:U2("g",{opacity:"0.9",children:[Qi("rect",{x:"0.799805",y:"5.92188",width:"2.46154",height:"2.95385",rx:"0.246154",fill:e}),Qi("rect",{x:"4.24609",y:"4.44531",width:"2.46154",height:"4.43077",rx:"0.246154",fill:e}),Qi("rect",{x:"7.93823",y:"2.72266",width:"2.46154",height:"6.15385",rx:"0.246154",fill:e}),Qi("rect",{x:"11.3845",y:"0.753906",width:"2.46154",height:"8.12308",rx:"0.246154",fill:e})]})}),"SignalIcon");import{jsx as tf}from"react/jsx-runtime";var gu=a(({color:e="#404040",width:t=16,height:r=16,...o})=>tf(X,{...o,width:t,height:r,children:tf("path",{d:"M3.5 10C3.5 10.8281 2.8125 11.5 2 11.5C1.16406 11.5 0.5 10.8281 0.5 10C0.5 9.19531 1.16406 8.5 2 8.5H3.5V10ZM4.25 10C4.25 9.19531 4.91406 8.5 5.75 8.5C6.5625 8.5 7.25 9.19531 7.25 10V14C7.25 14.8281 6.5625 15.5 5.75 15.5C4.91406 15.5 4.25 14.8281 4.25 14V10ZM5.75 3.5C4.91406 3.5 4.25 2.83594 4.25 2C4.25 1.1875 4.91406 0.5 5.75 0.5C6.5625 0.5 7.25 1.1875 7.25 2V3.5H5.75ZM5.75 4.25C6.5625 4.25 7.25 4.91406 7.25 5.75C7.25 6.5625 6.5625 7.25 5.75 7.25H2C1.16406 7.25 0.5 6.5625 0.5 5.75C0.5 4.91406 1.16406 4.25 2 4.25H5.75ZM12.5 5.75C12.5 4.91406 13.1641 4.25 14 4.25C14.8125 4.25 15.5 4.91406 15.5 5.75C15.5 6.5625 14.8125 7.25 14 7.25H12.5V5.75ZM11.75 5.75C11.75 6.5625 11.0859 7.25 10.25 7.25C9.41406 7.25 8.75 6.5625 8.75 5.75V2C8.75 1.1875 9.41406 0.5 10.25 0.5C11.0859 0.5 11.75 1.1875 11.75 2V5.75ZM10.25 12.5C11.0859 12.5 11.75 13.1641 11.75 14C11.75 14.8125 11.0859 15.5 10.25 15.5C9.41406 15.5 8.75 14.8125 8.75 14V12.5H10.25ZM10.25 11.75C9.41406 11.75 8.75 11.0859 8.75 10.25C8.75 9.41406 9.41406 8.75 10.25 8.75H14C14.8125 8.75 15.5 9.41406 15.5 10.25C15.5 11.0859 14.8125 11.75 14 11.75H10.25Z",fill:e})}),"SlackIcon");import{jsx as rf}from"react/jsx-runtime";var ea=a(({color:e="#FFFFFF",width:t=24,height:r=24,...o})=>rf(X,{...o,width:t,height:r,viewBox:"0 0 24 24",children:rf("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M15.9302 18.0041C16.7152 19.4687 17.3201 20.6536 17.6716 21.4225C22.7992 18.3395 24.5289 11.7034 21.525 6.5012C18.5211 1.29895 11.9084 -0.521541 6.67543 2.3769C7.30667 3.26444 8.32896 4.86524 9.56215 6.89518C10.4351 8.33194 11.4134 9.98401 12.4328 11.7503C13.7758 14.0761 14.9841 16.2422 15.9302 18.0041ZM4.20759 16.4985C2.25528 13.1182 1.73242 9.41428 2.51159 6.43383C0.579784 9.73503 0.426001 13.9501 2.47497 17.4989C4.52394 21.0476 8.25134 23.0233 12.0769 22.9999C9.1052 22.1856 6.1599 19.8803 4.20759 16.4985ZM1.6094 17.9983C4.92231 23.738 12.2599 25.7035 17.9997 22.3906C23.738 19.0777 25.7035 11.7401 22.3906 6.00031C19.0776 0.262019 11.74 -1.70347 6.00172 1.60945C0.261966 4.92236 -1.70352 12.26 1.6094 17.9983ZM11.1249 21.6085C12.4884 22.1914 13.8534 22.4228 15.1188 22.2896C12.7711 21.2717 9.91951 18.3937 7.66989 14.4994C5.42174 10.605 4.35551 6.69599 4.6499 4.15492C3.90002 5.18306 3.41817 6.48069 3.24096 7.95408C2.94364 10.4131 3.51483 13.2999 5.07317 15.9991C6.6315 18.6998 8.84597 20.636 11.1249 21.6085ZM16.913 21.6876C16.6889 21.6993 16.4238 21.67 16.1089 21.5836C15.4513 21.402 14.6604 20.9861 13.7875 20.3197C12.0461 18.9898 10.1436 16.7827 8.53694 13.9999C6.92881 11.2157 5.9695 8.46376 5.6883 6.29176C5.62971 5.83334 5.60188 5.41008 5.60188 5.02342C5.60188 4.49324 5.65461 4.03335 5.7542 3.65109C5.89334 3.11945 6.10278 2.78845 6.33565 2.59219C7.11481 4.29259 9.11545 8.00387 11.5672 12.2497C14.0189 16.4956 16.2319 20.0853 17.3157 21.61C17.2 21.651 17.0667 21.6788 16.913 21.6876Z",fill:e})}),"UnionIcon");import{jsx as of}from"react/jsx-runtime";var ta=a(({color:e="#A3A3A3",width:t=24,height:r=24,...o})=>of(X,{...o,width:t,height:r,children:of(Ae,{d:"M12 12C10.2031 12 8.5625 11.0625 7.66406 9.5C6.76562 7.97656 6.76562 6.0625 7.66406 4.5C8.5625 2.97656 10.2031 2 12 2C13.7578 2 15.3984 2.97656 16.2969 4.5C17.1953 6.0625 17.1953 7.97656 16.2969 9.5C15.3984 11.0625 13.7578 12 12 12ZM10.2031 13.875H13.7578C17.625 13.875 20.75 17 20.75 20.8672C20.75 21.4922 20.2031 22 19.5781 22H4.38281C3.75781 22 3.25 21.4922 3.25 20.8672C3.25 17 6.33594 13.875 10.2031 13.875Z",fill:e})}),"UserIcon");import{jsx as nf}from"react/jsx-runtime";var af=a(({width:e=24,height:t=20,...r})=>nf(X,{...r,width:e,height:t,viewBox:"0 0 24 20",children:nf("path",{d:"M6 1H5C4.46957 1 3.96086 1.21071 3.58579 1.58579C3.21071 1.96086 3 2.46957 3 3V8C3 8.53043 2.78929 9.03914 2.41421 9.41421C2.03914 9.78929 1.53043 10 1 10C1.53043 10 2.03914 10.2107 2.41421 10.5858C2.78929 10.9609 3 11.4696 3 12V17C3 18.1 3.9 19 5 19H6M18 19H19C19.5304 19 20.0391 18.7893 20.4142 18.4142C20.7893 18.0391 21 17.5304 21 17V12C21 10.9 21.9 10 23 10C22.4696 10 21.9609 9.78929 21.5858 9.41421C21.2107 9.03914 21 8.53043 21 8V3C21 2.46957 20.7893 1.96086 20.4142 1.58579C20.0391 1.21071 19.5304 1 19 1H18M10 16.5C10 16.7761 9.77614 17 9.5 17C9.22386 17 9 16.7761 9 16.5C9 16.2239 9.22386 16 9.5 16C9.77614 16 10 16.2239 10 16.5ZM15 16.5C15 16.7761 14.7761 17 14.5 17C14.2239 17 14 16.7761 14 16.5C14 16.2239 14.2239 16 14.5 16C14.7761 16 15 16.2239 15 16.5Z",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})}),"VariableIcon");import{jsx as vs,jsxs as _2}from"react/jsx-runtime";var sf=a(({color:e="#000000",width:t=14,height:r=10,...o})=>vs(X,{...o,width:t,height:r,children:_2("g",{opacity:"0.9",children:[vs("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}),vs("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}),vs("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 lf}from"react/jsx-runtime";var ra=a(({color:e="#A3A3A3",active:t,width:r=16,height:o=16,...n})=>lf(X,{...n,width:r,height:o,children:lf(Ae,{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 z2}from"lucide-react";import{useEffect as $2,useState as j2,useRef as cf}from"react";import{jsx as hu}from"react/jsx-runtime";var tn=a(({className:e})=>hu("div",{className:I("courier-flex courier-flex-col courier-items-center courier-justify-center courier-text-ring",e),children:hu("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:hu("path",{d:"M21 12a9 9 0 1 1-6.219-8.56"})})}),"Loader");import{jsx as bu,jsxs as uf}from"react/jsx-runtime";var oa=a(({isError:e,isSaving:t,isLoading:r,renderIsSaving:o,renderIsError:n,renderSaved:i})=>{let[s,l]=j2(!1),c=cf(t),u=cf(null);return $2(()=>(r||e||t&&t!==c.current?(u.current&&(clearTimeout(u.current),u.current=null),l(!1)):c.current===!0&&t===!1&&!e&&!r&&(l(!0),u.current&&clearTimeout(u.current),u.current=setTimeout(()=>{l(!1),u.current=null},5e3)),c.current=t,()=>{u.current&&clearTimeout(u.current)}),[t,e,r]),r||t===null?null:t?o?o(t):uf("div",{className:"courier-h-12 courier-flex courier-items-center courier-px-4 courier-text-xs courier-gap-1",children:[bu(tn,{className:"courier-w-4 courier-h-4"}),"Saving..."]}):e?n?n(e):bu("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):uf("div",{className:"courier-h-12 courier-flex courier-items-center courier-px-4 courier-text-xs courier-gap-1",children:[bu(z2,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Saved"]}):null},"Status");import{atom as df}from"jotai";import{jsx as zn}from"react/jsx-runtime";var rn=[{label:"Email",value:"email",icon:zn(iu,{})},{label:"SMS",value:"sms",icon:zn(fu,{})},{label:"Push",value:"push",icon:zn(du,{})},{label:"In-app",value:"inbox",icon:zn(Ji,{})},{label:"Slack",value:"slack",icon:zn(gu,{})},{label:"Teams",value:"msteams",icon:zn(su,{})}];var Co=df("email"),$n=df("template");import{AlertDialogDescription as uT}from"@radix-ui/react-alert-dialog";import{useAtom as dT,useAtomValue as lc,useSetAtom as mT}from"jotai";import{useCallback as _a,useEffect as pT,useRef as fT}from"react";import{atom as Jt}from"jotai";var yu={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"}},Cs=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 Z2={paragraph:yu,heading:yu},na=Jt(Z2),Ce=Jt(null),je=Jt(null,(e,t,r)=>{t(Ce,r)}),q2=Jt({ref:null,caretPosition:null}),xs=Jt({ref:null,caretPosition:null}),ia=Jt({isFocused:!1,hasVariables:!1,showVariablePopup:!1}),mf=Jt(e=>(t,r=!1)=>{let o=e(na),n=e(ia),i=Cs(t,r),s=o[t],l=i;return s&&Object.keys(s).forEach(c=>{var d,p;let u=c;u!=="conditionalRules"&&((d=i[u])==null?void 0:d.state)==="enabled"&&((p=s[u])==null?void 0:p.state)==="enabled"&&(l[u]=s[u])}),n.isFocused&&n.hasVariables&&(l={...l,variable:{state:"enabled"}}),l}),pf=Jt(null,(e,t,{nodeName:r,config:o})=>{let n=e(na);t(na,{...n,[r]:{...n[r],...Object.fromEntries(Object.entries(o).filter(([i])=>i!=="conditionalRules").map(([i,s])=>[i,{state:!Array.isArray(s)&&(s!=null&&s.state)?s.state:"hidden"}]))}})}),OA=Jt(null,(e,t,r)=>{let o=e(na),{[r]:n,...i}=o;t(na,i)}),ff=Jt(null,(e,t,{ref:r,caretPosition:o})=>{t(q2,{ref:r,caretPosition:o})}),WA=Jt(null,(e,t,r)=>{let o=e(ia);t(ia,{...o,showVariablePopup:r})}),vu=Jt(null),Ts=Jt(null,(e,t,r)=>{t(vu,r)});import{useAtom as aT,useAtomValue as Dh,useSetAtom as Bm}from"jotai";import{useCallback as Hh,useEffect as Dm,useMemo as Vh,useRef as sT,useState as lT}from"react";import{atom as gf}from"jotai";var gr=gf(null),Dr=gf(null);import{forwardRef as J2}from"react";import{Toaster as K2}from"sonner";import{jsx as aa,jsxs as G2}from"react/jsx-runtime";var Wt=J2(({theme:e,children:t,isLoading:r,Header:o,colorScheme:n,className:i,...s},l)=>aa(Np,{theme:e,ref:l,colorScheme:n,className:i,children:G2("div",{...Object.fromEntries(Object.entries(s).filter(([c])=>c!=="variables"&&c!=="brandEditor")),className:"courier-main-layout",children:[o&&aa("div",{className:"courier-main-header 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-background",children:o}),r&&aa("div",{className:"courier-editor-loading",children:aa(tn,{})}),aa(K2,{position:"top-center",expand:!0,visibleToasts:2,style:{position:"absolute",top:"10px",left:"50%",transform:"translateX(-50%)"}}),t]})}));import{useAtom as Zd,useAtomValue as Ho,useSetAtom as O8}from"jotai";import{forwardRef as W8,memo as U8,useCallback as H5,useEffect as co,useMemo as V5,useRef as Sa,useState as qd}from"react";function hf(e){if(Array.isArray(e))return e}a(hf,"_arrayWithHoles");function bf(e,t){var r=e==null?null:typeof Symbol!="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(r!=null){var o,n,i,s,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,t===0){if(Object(r)!==r)return;c=!1}else for(;!(c=(o=i.call(r)).done)&&(l.push(o.value),l.length!==t);c=!0);}catch(d){u=!0,n=d}finally{try{if(!c&&r.return!=null&&(s=r.return(),Object(s)!==s))return}finally{if(u)throw n}}return l}}a(bf,"_iterableToArrayLimit");function sa(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,o=Array(t);r<t;r++)o[r]=e[r];return o}a(sa,"_arrayLikeToArray");function Es(e,t){if(e){if(typeof e=="string")return sa(e,t);var r={}.toString.call(e).slice(8,-1);return r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set"?Array.from(e):r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?sa(e,t):void 0}}a(Es,"_unsupportedIterableToArray");function yf(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
196
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}a(yf,"_nonIterableRest");function ws(e,t){return hf(e)||bf(e,t)||Es(e,t)||yf()}a(ws,"_slicedToArray");var r1=Ja(la());var Ps="data-pdnd-honey-pot";function As(e){return e instanceof Element&&e.hasAttribute(Ps)}a(As,"isHoneyPotElement");function Ms(e){var t=document.elementsFromPoint(e.x,e.y),r=ws(t,2),o=r[0],n=r[1];return o?As(o)?n!=null?n:null:o:null}a(Ms,"getElementFromPointWithoutHoneypot");function on(e){"@babel/helpers - typeof";return on=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},on(e)}a(on,"_typeof");function xf(e,t){if(on(e)!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var o=r.call(e,t||"default");if(on(o)!="object")return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}a(xf,"toPrimitive");function Tf(e){var t=xf(e,"string");return on(t)=="symbol"?t:t+""}a(Tf,"toPropertyKey");function to(e,t,r){return(t=Tf(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}a(to,"_defineProperty");var ua=Ja(la());var Ef=2147483647;function wf(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),r.push.apply(r,o)}return r}a(wf,"ownKeys");function kf(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?wf(Object(r),!0).forEach(function(o){to(e,o,r[o])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):wf(Object(r)).forEach(function(o){Object.defineProperty(e,o,Object.getOwnPropertyDescriptor(r,o))})}return e}a(kf,"_objectSpread");var ca=2,Pf=ca/2;function oy(e){return{x:Math.floor(e.x),y:Math.floor(e.y)}}a(oy,"floorToClosestPixel");function ny(e){return{x:e.x-Pf,y:e.y-Pf}}a(ny,"pullBackByHalfHoneyPotSize");function iy(e){return{x:Math.max(e.x,0),y:Math.max(e.y,0)}}a(iy,"preventGoingBackwardsOffScreen");function ay(e){return{x:Math.min(e.x,window.innerWidth-ca),y:Math.min(e.y,window.innerHeight-ca)}}a(ay,"preventGoingForwardsOffScreen");function Af(e){var t=e.client,r=ay(iy(ny(oy(t))));return DOMRect.fromRect({x:r.x,y:r.y,width:ca,height:ca})}a(Af,"getHoneyPotRectFor");function Mf(e){var t=e.clientRect;return{left:"".concat(t.left,"px"),top:"".concat(t.top,"px"),width:"".concat(t.width,"px"),height:"".concat(t.height,"px")}}a(Mf,"getRectStyles");function sy(e){var t=e.client,r=e.clientRect;return t.x>=r.x&&t.x<=r.x+r.width&&t.y>=r.y&&t.y<=r.y+r.height}a(sy,"isWithin");function ly(e){var t=e.initial,r=document.createElement("div");r.setAttribute(Ps,"true");var o=Af({client:t});Object.assign(r.style,kf(kf({backgroundColor:"transparent",position:"fixed",padding:0,margin:0,boxSizing:"border-box"},Mf({clientRect:o})),{},{pointerEvents:"auto",zIndex:Ef})),document.body.appendChild(r);var n=(0,ua.bind)(window,{type:"pointermove",listener:a(function(s){var l={x:s.clientX,y:s.clientY};o=Af({client:l}),Object.assign(r.style,Mf({clientRect:o}))},"listener"),options:{capture:!0}});return a(function(s){var l=s.current;if(n(),sy({client:l,clientRect:o})){r.remove();return}function c(){u(),r.remove()}a(c,"cleanup");var u=(0,ua.bindAll)(window,[{type:"pointerdown",listener:c},{type:"pointermove",listener:c},{type:"focusin",listener:c},{type:"focusout",listener:c},{type:"dragstart",listener:c},{type:"dragenter",listener:c},{type:"dragover",listener:c}],{capture:!0})},"finish")}a(ly,"mountHoneyPot");function Nf(){var e=null;function t(){return e=null,(0,ua.bind)(window,{type:"pointermove",listener:a(function(n){e={x:n.clientX,y:n.clientY}},"listener"),options:{capture:!0}})}a(t,"bindEvents");function r(){var o=null;return a(function(i){var s=i.eventName,l=i.payload;if(s==="onDragStart"){var c=l.location.initial.input,u=e!=null?e:{x:c.clientX,y:c.clientY};o=ly({initial:u})}if(s==="onDrop"){var d,p=l.location.current.input;(d=o)===null||d===void 0||d({current:{x:p.clientX,y:p.clientY}}),o=null,e=null}},"onPostEvent")}return a(r,"getOnPostDispatch"),{bindEvents:t,getOnPostDispatch:r}}a(Nf,"makeHoneyPotFix");function Sf(e){if(Array.isArray(e))return sa(e)}a(Sf,"_arrayWithoutHoles");function If(e){if(typeof Symbol!="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}a(If,"_iterableToArray");function Rf(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
|
197
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}a(Rf,"_nonIterableSpread");function Ns(e){return Sf(e)||If(e)||Es(e)||Rf()}a(Ns,"_toConsumableArray");var Uf=Ja(la());function rr(e){var t=null;return a(function(){if(!t){for(var o=arguments.length,n=new Array(o),i=0;i<o;i++)n[i]=arguments[i];var s=e.apply(this,n);t={result:s}}return t.result},"wrapped")}a(rr,"once");var Lf=rr(a(function(){return navigator.userAgent.includes("Firefox")},"isFirefox"));var da=rr(a(function(){var t=navigator,r=t.userAgent;return r.includes("AppleWebKit")&&!r.includes("Chrome")},"isSafari"));var Bf=Ja(la());var xu={isLeavingWindow:Symbol("leaving"),isEnteringWindow:Symbol("entering")};function Df(e){var t=e.dragLeave;return da()?t.hasOwnProperty(xu.isLeavingWindow):!1}a(Df,"isLeavingWindowInSafari");a(function(){if(typeof window=="undefined"||!da())return;function t(){return{enterCount:0,isOverWindow:!1}}a(t,"getInitialState");var r=t();function o(){r=t()}a(o,"resetState"),(0,Bf.bindAll)(window,[{type:"dragstart",listener:a(function(){r.enterCount=0,r.isOverWindow=!0},"listener")},{type:"drop",listener:o},{type:"dragend",listener:o},{type:"dragenter",listener:a(function(i){!r.isOverWindow&&r.enterCount===0&&(i[xu.isEnteringWindow]=!0),r.isOverWindow=!0,r.enterCount++},"listener")},{type:"dragleave",listener:a(function(i){r.enterCount--,r.isOverWindow&&r.enterCount===0&&(i[xu.isLeavingWindow]=!0,r.isOverWindow=!1)},"listener")}],{capture:!0})},"fixSafari")();function cy(e){return"nodeName"in e}a(cy,"isNodeLike");function Hf(e){return cy(e)&&e.ownerDocument!==document}a(Hf,"isFromAnotherWindow");function Vf(e){var t=e.dragLeave,r=t.type,o=t.relatedTarget;return r!=="dragleave"?!1:da()?Df({dragLeave:t}):o==null?!0:Lf()?Hf(o):o instanceof HTMLIFrameElement}a(Vf,"isLeavingWindow");function Ff(e){var t=e.onDragEnd;return[{type:"pointermove",listener:function(){var r=0;return a(function(){if(r<20){r++;return}t()},"listener")}()},{type:"pointerdown",listener:t}]}a(Ff,"getBindingsForBrokenDrags");function nn(e){return{altKey:e.altKey,button:e.button,buttons:e.buttons,ctrlKey:e.ctrlKey,metaKey:e.metaKey,shiftKey:e.shiftKey,clientX:e.clientX,clientY:e.clientY,pageX:e.pageX,pageY:e.pageY}}a(nn,"getInput");var uy=a(function(t){var r=[],o=null,n=a(function(){for(var s=arguments.length,l=new Array(s),c=0;c<s;c++)l[c]=arguments[c];r=l,!o&&(o=requestAnimationFrame(function(){o=null,t.apply(void 0,r)}))},"wrapperFn");return n.cancel=function(){o&&(cancelAnimationFrame(o),o=null)},n},"rafSchd"),Of=uy;var Tu=Of(function(e){return e()}),Ss=function(){var e=null;function t(o){var n=requestAnimationFrame(function(){e=null,o()});e={frameId:n,fn:o}}a(t,"schedule");function r(){e&&(cancelAnimationFrame(e.frameId),e.fn(),e=null)}return a(r,"flush"),{schedule:t,flush:r}}();function Wf(e){var t=e.source,r=e.initial,o=e.dispatchEvent,n={dropTargets:[]};function i(l){o(l),n={dropTargets:l.payload.location.current.dropTargets}}a(i,"safeDispatch");var s={start:a(function(c){var u=c.nativeSetDragImage,d={current:r,previous:n,initial:r};i({eventName:"onGenerateDragPreview",payload:{source:t,location:d,nativeSetDragImage:u}}),Ss.schedule(function(){i({eventName:"onDragStart",payload:{source:t,location:d}})})},"start"),dragUpdate:a(function(c){var u=c.current;Ss.flush(),Tu.cancel(),i({eventName:"onDropTargetChange",payload:{source:t,location:{initial:r,previous:n,current:u}}})},"dragUpdate"),drag:a(function(c){var u=c.current;Tu(function(){Ss.flush();var d={initial:r,previous:n,current:u};i({eventName:"onDrag",payload:{source:t,location:d}})})},"drag"),drop:a(function(c){var u=c.current,d=c.updatedSourcePayload;Ss.flush(),Tu.cancel(),i({eventName:"onDrop",payload:{source:d!=null?d:t,location:{current:u,previous:n,initial:r}}})},"drop")};return s}a(Wf,"makeDispatch");var wu={isActive:!1};function _f(){return!wu.isActive}a(_f,"canStart");function dy(e){return e.dataTransfer?e.dataTransfer.setDragImage.bind(e.dataTransfer):null}a(dy,"getNativeSetDragImage");function my(e){var t=e.current,r=e.next;if(t.length!==r.length)return!0;for(var o=0;o<t.length;o++)if(t[o].element!==r[o].element)return!0;return!1}a(my,"hasHierarchyChanged");function py(e){var t=e.event,r=e.dragType,o=e.getDropTargetsOver,n=e.dispatchEvent;if(!_f())return;var i=fy({event:t,dragType:r,getDropTargetsOver:o});wu.isActive=!0;var s={current:i};Eu({event:t,current:i.dropTargets});var l=Wf({source:r.payload,dispatchEvent:n,initial:i});function c(f){var v=my({current:s.current.dropTargets,next:f.dropTargets});s.current=f,v&&l.dragUpdate({current:s.current})}a(c,"updateState");function u(f){var v=nn(f),h=As(f.target)?Ms({x:v.clientX,y:v.clientY}):f.target,y=o({target:h,input:v,source:r.payload,current:s.current.dropTargets});y.length&&(f.preventDefault(),Eu({event:f,current:y})),c({dropTargets:y,input:v})}a(u,"onUpdateEvent");function d(){s.current.dropTargets.length&&c({dropTargets:[],input:s.current.input}),l.drop({current:s.current,updatedSourcePayload:null}),p()}a(d,"cancel");function p(){wu.isActive=!1,m()}a(p,"finish");var m=(0,Uf.bindAll)(window,[{type:"dragover",listener:a(function(v){u(v),l.drag({current:s.current})},"listener")},{type:"dragenter",listener:u},{type:"dragleave",listener:a(function(v){Vf({dragLeave:v})&&(c({input:s.current.input,dropTargets:[]}),r.startedFrom==="external"&&d())},"listener")},{type:"drop",listener:a(function(v){if(s.current={dropTargets:s.current.dropTargets,input:nn(v)},!s.current.dropTargets.length){d();return}v.preventDefault(),Eu({event:v,current:s.current.dropTargets}),l.drop({current:s.current,updatedSourcePayload:r.type==="external"?r.getDropPayload(v):null}),p()},"listener")},{type:"dragend",listener:a(function(v){s.current={dropTargets:s.current.dropTargets,input:nn(v)},d()},"listener")}].concat(Ns(Ff({onDragEnd:d}))),{capture:!0});l.start({nativeSetDragImage:dy(t)})}a(py,"start");function Eu(e){var t,r=e.event,o=e.current,n=(t=o[0])===null||t===void 0?void 0:t.dropEffect;n!=null&&r.dataTransfer&&(r.dataTransfer.dropEffect=n)}a(Eu,"setDropEffectOnEvent");function fy(e){var t=e.event,r=e.dragType,o=e.getDropTargetsOver,n=nn(t);if(r.startedFrom==="external")return{input:n,dropTargets:[]};var i=o({input:n,source:r.payload,target:t.target,current:[]});return{input:n,dropTargets:i}}a(fy,"getStartLocation");var ku={canStart:_f,start:py};var Pu=new Map;function gy(e){var t=e.typeKey,r=e.mount,o=Pu.get(t);if(o)return o.usageCount++,o;var n={typeKey:t,unmount:r(),usageCount:1};return Pu.set(t,n),n}a(gy,"registerUsage");function zf(e){var t=gy(e);return a(function(){t.usageCount--,!(t.usageCount>0)&&(t.unmount(),Pu.delete(e.typeKey))},"unregister")}a(zf,"register");function Hr(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return a(function(){t.forEach(function(n){return n()})},"cleanup")}a(Hr,"combine");function Is(e,t){var r=t.attribute,o=t.value;return e.setAttribute(r,o),function(){return e.removeAttribute(r)}}a(Is,"addAttribute");function $f(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),r.push.apply(r,o)}return r}a($f,"ownKeys");function xo(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?$f(Object(r),!0).forEach(function(o){to(e,o,r[o])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):$f(Object(r)).forEach(function(o){Object.defineProperty(e,o,Object.getOwnPropertyDescriptor(r,o))})}return e}a(xo,"_objectSpread");function Au(e,t){var r=typeof Symbol!="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=hy(e))||t&&e&&typeof e.length=="number"){r&&(e=r);var o=0,n=a(function(){},"F");return{s:n,n:a(function(){return o>=e.length?{done:!0}:{done:!1,value:e[o++]}},"n"),e:a(function(u){throw u},"e"),f:n}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
|
|
198
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var i,s=!0,l=!1;return{s:a(function(){r=r.call(e)},"s"),n:a(function(){var u=r.next();return s=u.done,u},"n"),e:a(function(u){l=!0,i=u},"e"),f:a(function(){try{s||r.return==null||r.return()}finally{if(l)throw i}},"f")}}a(Au,"_createForOfIteratorHelper");function hy(e,t){if(e){if(typeof e=="string")return jf(e,t);var r={}.toString.call(e).slice(8,-1);return r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set"?Array.from(e):r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?jf(e,t):void 0}}a(hy,"_unsupportedIterableToArray");function jf(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,o=Array(t);r<t;r++)o[r]=e[r];return o}a(jf,"_arrayLikeToArray");function Mu(e){return e.slice(0).reverse()}a(Mu,"copyReverse");function Zf(e){var t=e.typeKey,r=e.defaultDropEffect,o=new WeakMap,n="data-drop-target-for-".concat(t),i="[".concat(n,"]");function s(f){return o.set(f.element,f),function(){return o.delete(f.element)}}a(s,"addToRegistry");function l(f){if(0)var v;var h=Hr(Is(f.element,{attribute:n,value:"true"}),s(f));return rr(h)}a(l,"dropTargetForConsumers");function c(f){var v,h,y,x,E=f.source,g=f.target,b=f.input,M=f.result,C=M===void 0?[]:M;if(g==null)return C;if(!(g instanceof Element))return g instanceof Node?c({source:E,target:g.parentElement,input:b,result:C}):C;var S=g.closest(i);if(S==null)return C;var P=o.get(S);if(P==null)return C;var k={input:b,source:E,element:P.element};if(P.canDrop&&!P.canDrop(k))return c({source:E,target:P.element.parentElement,input:b,result:C});var w=(v=(h=P.getData)===null||h===void 0?void 0:h.call(P,k))!==null&&v!==void 0?v:{},T=(y=(x=P.getDropEffect)===null||x===void 0?void 0:x.call(P,k))!==null&&y!==void 0?y:r,A={data:w,element:P.element,dropEffect:T,isActiveDueToStickiness:!1};return c({source:E,target:P.element.parentElement,input:b,result:[].concat(Ns(C),[A])})}a(c,"getActualDropTargets");function u(f){var v=f.eventName,h=f.payload,y=Au(h.location.current.dropTargets),x;try{for(y.s();!(x=y.n()).done;){var E,g=x.value,b=o.get(g.element),M=xo(xo({},h),{},{self:g});b==null||(E=b[v])===null||E===void 0||E.call(b,M)}}catch(C){y.e(C)}finally{y.f()}}a(u,"notifyCurrent");var d={onGenerateDragPreview:u,onDrag:u,onDragStart:u,onDrop:u,onDropTargetChange:a(function(v){var h=v.payload,y=new Set(h.location.current.dropTargets.map(function(D){return D.element})),x=new Set,E=Au(h.location.previous.dropTargets),g;try{for(E.s();!(g=E.n()).done;){var b,M=g.value;x.add(M.element);var C=o.get(M.element),S=y.has(M.element),P=xo(xo({},h),{},{self:M});if(C==null||(b=C.onDropTargetChange)===null||b===void 0||b.call(C,P),!S){var k;C==null||(k=C.onDragLeave)===null||k===void 0||k.call(C,P)}}}catch(D){E.e(D)}finally{E.f()}var w=Au(h.location.current.dropTargets),T;try{for(w.s();!(T=w.n()).done;){var A,N,R=T.value;if(!x.has(R.element)){var B=xo(xo({},h),{},{self:R}),H=o.get(R.element);H==null||(A=H.onDropTargetChange)===null||A===void 0||A.call(H,B),H==null||(N=H.onDragEnter)===null||N===void 0||N.call(H,B)}}}catch(D){w.e(D)}finally{w.f()}},"onDropTargetChange")};function p(f){d[f.eventName](f)}a(p,"dispatchEvent");function m(f){var v=f.source,h=f.target,y=f.input,x=f.current,E=c({source:v,target:h,input:y});if(E.length>=x.length)return E;for(var g=Mu(x),b=Mu(E),M=[],C=0;C<g.length;C++){var S,P=g[C],k=b[C];if(k!=null){M.push(k);continue}var w=M[C-1],T=g[C-1];if((w==null?void 0:w.element)!==(T==null?void 0:T.element))break;var A=o.get(P.element);if(!A)break;var N={input:y,source:v,element:A.element};if(A.canDrop&&!A.canDrop(N)||!((S=A.getIsSticky)!==null&&S!==void 0&&S.call(A,N)))break;M.push(xo(xo({},P),{},{isActiveDueToStickiness:!0}))}return Mu(M)}return a(m,"getIsOver"),{dropTargetForConsumers:l,getIsOver:m,dispatchEvent:p}}a(Zf,"makeDropTarget");function by(e,t){var r=typeof Symbol!="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=yy(e))||t&&e&&typeof e.length=="number"){r&&(e=r);var o=0,n=a(function(){},"F");return{s:n,n:a(function(){return o>=e.length?{done:!0}:{done:!1,value:e[o++]}},"n"),e:a(function(u){throw u},"e"),f:n}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
|
|
199
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var i,s=!0,l=!1;return{s:a(function(){r=r.call(e)},"s"),n:a(function(){var u=r.next();return s=u.done,u},"n"),e:a(function(u){l=!0,i=u},"e"),f:a(function(){try{s||r.return==null||r.return()}finally{if(l)throw i}},"f")}}a(by,"_createForOfIteratorHelper");function yy(e,t){if(e){if(typeof e=="string")return qf(e,t);var r={}.toString.call(e).slice(8,-1);return r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set"?Array.from(e):r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?qf(e,t):void 0}}a(yy,"_unsupportedIterableToArray");function qf(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,o=Array(t);r<t;r++)o[r]=e[r];return o}a(qf,"_arrayLikeToArray");function Jf(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),r.push.apply(r,o)}return r}a(Jf,"ownKeys");function vy(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Jf(Object(r),!0).forEach(function(o){to(e,o,r[o])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Jf(Object(r)).forEach(function(o){Object.defineProperty(e,o,Object.getOwnPropertyDescriptor(r,o))})}return e}a(vy,"_objectSpread");function Kf(){var e=new Set,t=null;function r(i){t&&(!i.canMonitor||i.canMonitor(t.canMonitorArgs))&&t.active.add(i)}a(r,"tryAddToActive");function o(i){var s=vy({},i);e.add(s),r(s);function l(){e.delete(s),t&&t.active.delete(s)}return a(l,"cleanup"),rr(l)}a(o,"monitorForConsumers");function n(i){var s=i.eventName,l=i.payload;if(s==="onGenerateDragPreview"){t={canMonitorArgs:{initial:l.location.initial,source:l.source},active:new Set};var c=by(e),u;try{for(c.s();!(u=c.n()).done;){var d=u.value;r(d)}}catch(y){c.e(y)}finally{c.f()}}if(t){for(var p=Array.from(t.active),m=0,f=p;m<f.length;m++){var v=f[m];if(t.active.has(v)){var h;(h=v[s])===null||h===void 0||h.call(v,l)}}s==="onDrop"&&(t.active.clear(),t=null)}}return a(n,"dispatchEvent"),{dispatchEvent:n,monitorForConsumers:o}}a(Kf,"makeMonitor");function Gf(e){var t=e.typeKey,r=e.mount,o=e.dispatchEventToSource,n=e.onPostDispatch,i=e.defaultDropEffect,s=Kf(),l=Zf({typeKey:t,defaultDropEffect:i});function c(p){o==null||o(p),l.dispatchEvent(p),s.dispatchEvent(p),n==null||n(p)}a(c,"dispatchEvent");function u(p){var m=p.event,f=p.dragType;ku.start({event:m,dragType:f,getDropTargetsOver:l.getIsOver,dispatchEvent:c})}a(u,"start");function d(){function p(){var m={canStart:ku.canStart,start:u};return r(m)}return a(p,"mountAdapter"),zf({typeKey:t,mount:p})}return a(d,"registerUsage"),{registerUsage:d,dropTarget:l.dropTargetForConsumers,monitor:s.monitorForConsumers}}a(Gf,"makeAdapter");var Xf=rr(a(function(){return navigator.userAgent.toLocaleLowerCase().includes("android")},"isAndroid")),Yf="pdnd:android-fallback";var Nu="text/plain";var Qf="text/uri-list";var e1="application/vnd.pdnd";var Rs=new WeakMap;function Cy(e){return Rs.set(e.element,e),a(function(){Rs.delete(e.element)},"cleanup")}a(Cy,"addToRegistry");var t1=Nf(),Su=Gf({typeKey:"element",defaultDropEffect:"move",mount:a(function(t){return Hr(t1.bindEvents(),(0,r1.bind)(document,{type:"dragstart",listener:a(function(o){var n,i,s,l,c,u;if(t.canStart(o)&&!o.defaultPrevented&&o.dataTransfer){var d=o.target;if(d instanceof HTMLElement){var p=Rs.get(d);if(p){var m=nn(o),f={element:p.element,dragHandle:(n=p.dragHandle)!==null&&n!==void 0?n:null,input:m};if(p.canDrag&&!p.canDrag(f)){o.preventDefault();return}if(p.dragHandle){var v=Ms({x:m.clientX,y:m.clientY});if(!p.dragHandle.contains(v)){o.preventDefault();return}}var h=(i=(s=p.getInitialDataForExternal)===null||s===void 0?void 0:s.call(p,f))!==null&&i!==void 0?i:null;if(h)for(var y=0,x=Object.entries(h);y<x.length;y++){var E=ws(x[y],2),g=E[0],b=E[1];o.dataTransfer.setData(g,b!=null?b:"")}Xf()&&!o.dataTransfer.types.includes(Nu)&&!o.dataTransfer.types.includes(Qf)&&o.dataTransfer.setData(Nu,Yf),o.dataTransfer.setData(e1,"");var M={element:p.element,dragHandle:(l=p.dragHandle)!==null&&l!==void 0?l:null,data:(c=(u=p.getInitialData)===null||u===void 0?void 0:u.call(p,f))!==null&&c!==void 0?c:{}},C={type:"element",payload:M,startedFrom:"internal"};t.start({event:o,dragType:C})}}}},"listener")}))},"mount"),dispatchEventToSource:a(function(t){var r,o,n=t.eventName,i=t.payload;(r=Rs.get(i.source.element))===null||r===void 0||(o=r[n])===null||o===void 0||o.call(r,i)},"dispatchEventToSource"),onPostDispatch:t1.getOnPostDispatch()}),Kt=Su.dropTarget,Iu=Su.monitor;function ma(e){if(0)var t;var r=Hr(Su.registerUsage(),Cy(e),Is(e.element,{attribute:"draggable",value:"true"}));return rr(r)}a(ma,"draggable");function o1(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),r.push.apply(r,o)}return r}a(o1,"ownKeys");function n1(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?o1(Object(r),!0).forEach(function(o){to(e,o,r[o])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):o1(Object(r)).forEach(function(o){Object.defineProperty(e,o,Object.getOwnPropertyDescriptor(r,o))})}return e}a(n1,"_objectSpread");var xy={top:a(function(t,r){return Math.abs(r.y-t.top)},"top"),right:a(function(t,r){return Math.abs(t.right-r.x)},"right"),bottom:a(function(t,r){return Math.abs(t.bottom-r.y)},"bottom"),left:a(function(t,r){return Math.abs(r.x-t.left)},"left")},i1=Symbol("closestEdge");function a1(e,t){var r,o,n=t.element,i=t.input,s=t.allowedEdges,l={x:i.clientX,y:i.clientY},c=n.getBoundingClientRect(),u=s.map(function(p){return{edge:p,value:xy[p](c,l)}}),d=(r=(o=u.sort(function(p,m){return p.value-m.value})[0])===null||o===void 0?void 0:o.edge)!==null&&r!==void 0?r:null;return n1(n1({},e),{},to({},i1,d))}a(a1,"attachClosestEdge");function pa(e){var t;return(t=e[i1])!==null&&t!==void 0?t:null}a(pa,"extractClosestEdge");import{mergeAttributes as I8}from"@tiptap/core";import{Node as Ty,mergeAttributes as Ey,wrappingInputRule as wy}from"@tiptap/core";var ky=/^\s*>\s$/,s1=Ty.create({name:"blockquote",addOptions(){return{HTMLAttributes:{}}},content:"block+",group:"block",defining:!0,parseHTML(){return[{tag:"blockquote"}]},renderHTML({HTMLAttributes:e}){return["blockquote",Ey(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[wy({find:ky,type:this.type})]}});import{ReactNodeViewRenderer as R8}from"@tiptap/react";import{v4 as Py}from"uuid";function ot(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-${Py()}`;r.setNodeMarkup(i,void 0,{...n.attrs,id:s}),o=!0}return!1}),o&&e.view.dispatch(r)}a(ot,"generateNodeIds");import{NodeViewWrapper as h8}from"@tiptap/react";import{useSetAtom as b8}from"jotai";import{forwardRef as y8,useCallback as wn,useEffect as jd,useState as Ul,useRef as Do}from"react";import{v4 as v8}from"uuid";import{Color as E5}from"@tiptap/extension-color";import{Extension as Ay}from"@tiptap/core";import{dropCursor as My}from"@tiptap/pm/dropcursor";var Ru=Ay.create({name:"dropCursor",addOptions(){return{color:"currentColor",width:1,class:void 0}},addProseMirrorPlugins(){return[My(this.options)]}});import{HardBreak as w5}from"@tiptap/extension-hard-break";import{Extension as Ny}from"@tiptap/core";import{undo as Sy,redo as Iy,history as Ry}from"@tiptap/pm/history";var Ly=Ny.create({name:"history",addOptions(){return{depth:100,newGroupDelay:500}},addCommands(){return{undo:()=>({state:e,dispatch:t})=>Sy(e,t),redo:()=>({state:e,dispatch:t})=>Iy(e,t)}},addProseMirrorPlugins(){return[Ry(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 k5}from"@tiptap/extension-placeholder";import{TextAlign as P5}from"@tiptap/extension-text-align";import{Typography as A5}from"@tiptap/extension-typography";import{Underline as M5}from"@tiptap/extension-underline";import{StarterKit as N5}from"@tiptap/starter-kit";import{zodResolver as $0}from"@hookform/resolvers/zod";import{useForm as j0}from"react-hook-form";import{useCallback as By,useEffect as Dy,useRef as l1}from"react";var vt=a(({editor:e,element:t,form:r,nodeType:o})=>{let n=l1(null),i=l1(null);return Dy(()=>{if(!e||!t)return;let l=a(()=>{let c=null;if(e.state.doc.descendants((u,d)=>u.attrs.id===t.attrs.id?(c=d,!1):!0),c!==null){let u=e.state.doc.nodeAt(c);(u==null?void 0:u.type.name)===o&&(n.current=u,i.current=c,Object.entries(u.attrs).forEach(([d,p])=>{r.getValues(d)!==p&&r.setValue(d,p)}))}},"updateCurrentNode");return l(),e.on("update",l),()=>{e.off("update",l)}},[e,t,r,o]),{updateNodeAttributes:By(l=>{if(!e||i.current===null)return;let c=e.state.doc.nodeAt(i.current);if(!c||c.type.name!==o)return;let u={...c.attrs,...l,id:c.attrs.id};JSON.stringify(c.attrs)!==JSON.stringify(u)&&e.chain().command(({tr:p,dispatch:m})=>{let f=p.doc.nodeAt(i.current);return(f==null?void 0:f.type.name)===o&&m?(p.setNodeMarkup(i.current,f.type,u),p.setMeta("addToHistory",!0),!0):!1}).run()},[e,o])}},"useNodeAttributes");import{useAtomValue as Ls,useSetAtom as Fy}from"jotai";import{useMemo as u1,useCallback as d1}from"react";var To=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,...To(n,i)]:[...r,i]},[]),"getFlattenedVariables");var Hy={link:["href","content"],img:["src","href","alt_text"],image:["src","href","alt_text"],action:["href","content"],meta:["title"],list:["imgSrc","imgHref"],quote:["content"],html:[]},Vy=["content","href","src","title"],c1=a((e=[])=>{let t=new Set,r=/\{\{([^}]+)\}\}/g,o=a(i=>{let s=i.matchAll(r);for(let l of s){let c=l[1].trim();c&&mt(c)&&t.add(c)}},"extractFromString"),n=a(i=>{let s=i;s.type==="string"&&typeof s.content=="string"&&o(s.content),s.type==="text"&&typeof s.content=="string"&&o(s.content);let l=s.type,c=Hy[l];c&&c.forEach(u=>{typeof s[u]=="string"&&o(s[u])}),typeof s.if=="string"&&o(s.if),typeof s.loop=="string"&&o(s.loop),s.type==="channel"&&s.raw&&typeof s.raw=="object"&&s.raw!==null&&Object.values(s.raw).forEach(u=>{typeof u=="string"&&o(u)}),s.elements&&Array.isArray(s.elements)&&s.elements.forEach(u=>n(u)),s.locales&&typeof s.locales=="object"&&s.locales!==null&&Object.values(s.locales).forEach(u=>{if(u&&typeof u=="object"){let d=u;Vy.forEach(p=>{typeof d[p]=="string"&&o(d[p])}),d.elements&&Array.isArray(d.elements)&&d.elements.forEach(p=>{p&&n(p)}),d.raw&&typeof d.raw=="object"&&d.raw!==null&&Object.values(d.raw).forEach(p=>{typeof p=="string"&&o(p)})}})},"processNode");return e.forEach(i=>n(i)),Array.from(t).sort()},"extractVariablesFromContent");var sI=a(e=>{let t=Ls(we),r=Ls(se),o=Ls(Co),n=Ls(Ko),i=Fy(Ko),s=e!=null?e:o,l=u1(()=>{var m,f;if(!t)return[];let p=((f=(m=t.extensionManager.extensions.find(v=>v.name==="variableSuggestion"))==null?void 0:m.options)==null?void 0:f.variables)||{};return To(p)},[t]),c=u1(()=>{if(!r||!s)return[];let p=r.elements.find(m=>m.type==="channel"&&m.channel===s);return p?c1(p.elements||[]):[]},[r,s]),u=d1((p,m)=>{i(f=>({...f,[p]:m}))},[i]),d=d1(()=>{i({})},[i]);return{availableVariables:l,usedVariables:c,variableValues:n,addVariableValue:u,clearAllVariableValues:d}},"useVariables");import{useAtom as tl,useAtomValue as z0}from"jotai";import{useCallback as Or}from"react";import{v4 as U0}from"uuid";import{mergeAttributes as zy,Node as $y}from"@tiptap/core";import{ReactNodeViewRenderer as jy}from"@tiptap/react";import{NodeViewContent as Oy}from"@tiptap/react";import{useSetAtom as Wy}from"jotai";import{useCallback as Uy}from"react";import{jsx as Jn}from"react/jsx-runtime";var _y=a(({alignment:e,backgroundColor:t,textColor:r,borderRadius:o,padding:n,fontWeight:i,fontStyle:s,children:l})=>Jn("div",{className:"courier-w-full node-element",children:Jn("div",{className:"courier-flex",children:Jn("div",{className:I("courier-inline-flex courier-justify-center courier-cursor-text courier-text-sm courier-leading-tight !courier-my-1",{left:"courier-mr-auto",center:"courier-mx-auto",right:"courier-ml-auto"}[e]),style:{backgroundColor:t,color:r,borderRadius:`${o}px`,caretColor:r,fontWeight:i,fontStyle:s,padding:`${Number(n)+2}px ${Number(n)+10}px`},children:l})})}),"ButtonComponent"),m1=a(e=>{let t=Wy(je),r=Uy(()=>{if(!e.editor.isEditable)return;let o=nt(e);if(o){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 Jn(Ct,{id:e.node.attrs.id,className:I(e.node.attrs.isSelected&&"selected-element"),onClick:r,editor:e.editor,"data-node-type":"button",children:Jn(_y,{...e.node.attrs,children:Jn(Oy,{as:"span"})})})},"ButtonComponentNode");import{v4 as Zy}from"uuid";var Ue={label:"Button",link:"",alignment:"center",backgroundColor:"#0085FF",borderRadius:0,padding:6,fontWeight:"normal",fontStyle:"normal",isUnderline:!1,isStrike:!1,textColor:"#ffffff",borderColor:"transparent"},Bs=$y.create({name:"button",group:"block",content:"inline*",selectable:!1,isolating:!0,onCreate(){ot(this.editor,this.name)},addAttributes(){return{label:{default:Ue.label,parseHTML:e=>e.getAttribute("data-label"),renderHTML:e=>({"data-label":e.label})},link:{default:Ue.link,parseHTML:e=>e.getAttribute("data-link"),renderHTML:e=>({"data-link":e.link})},alignment:{default:Ue.alignment,parseHTML:e=>e.getAttribute("data-alignment"),renderHTML:e=>({"data-alignment":e.alignment})},backgroundColor:{default:Ue.backgroundColor,parseHTML:e=>e.getAttribute("data-background-color"),renderHTML:e=>({"data-background-color":e.backgroundColor})},textColor:{default:Ue.textColor,parseHTML:e=>e.getAttribute("data-text-color"),renderHTML:e=>({"data-text-color":e.textColor})},borderRadius:{default:Ue.borderRadius,parseHTML:e=>e.getAttribute("data-border-radius"),renderHTML:e=>({"data-border-radius":e.borderRadius})},borderColor:{default:Ue.borderColor,parseHTML:e=>e.getAttribute("data-border-color"),renderHTML:e=>({"data-border-color":e.borderColor})},padding:{default:Ue.padding,parseHTML:e=>e.getAttribute("data-padding"),renderHTML:e=>({"data-padding":e.padding})},fontWeight:{default:Ue.fontWeight,parseHTML:e=>e.getAttribute("data-font-weight"),renderHTML:e=>({"data-font-weight":e.fontWeight})},fontStyle:{default:Ue.fontStyle,parseHTML:e=>e.getAttribute("data-font-style"),renderHTML:e=>({"data-font-style":e.fontStyle})},isUnderline:{default:Ue.isUnderline,parseHTML:e=>e.getAttribute("data-is-underline"),renderHTML:e=>({"data-is-underline":e.isUnderline})},isStrike:{default:Ue.isStrike,parseHTML:e=>e.getAttribute("data-is-strike"),renderHTML:e=>({"data-is-strike":e.isStrike})},id:{default:()=>`node-${Zy()}`,parseHTML:e=>e.getAttribute("data-id"),renderHTML:e=>({"data-id":e.id,"data-node-id":e.id})},locales:{default:void 0,parseHTML:()=>{},renderHTML:()=>({})}}},parseHTML(){return[{tag:'div[data-type="button"]'}]},renderHTML({HTMLAttributes:e}){return["div",zy(this.options.HTMLAttributes,e,{"data-type":"button"}),0]},addNodeView(){return jy(m1)},addKeyboardShortcuts(){return{"Mod-a":({editor:e})=>{let{$from:t}=e.state.selection;for(let r=t.depth;r>=0;r--)if(t.node(r).type.name==="button"){let n=t.start(r),i=t.end(r);return e.commands.setTextSelection({from:n,to:i}),!0}return!1}}},addCommands(){return{setButton:e=>({chain:t})=>t().insertContent({type:this.name,attrs:e,content:[{type:"text",text:e.label||"Button"}]}).run()}}});import{mergeAttributes as Qy,Node as e0}from"@tiptap/core";import{ReactNodeViewRenderer as t0}from"@tiptap/react";import{v4 as r0}from"uuid";import{NodeViewContent as qy}from"@tiptap/react";import{useSetAtom as Jy,useAtomValue as Ky}from"jotai";import{useCallback as Lu,useEffect as p1,useState as Bu,useRef as Gy}from"react";import{jsx as Vr}from"react/jsx-runtime";var Xy=a(({columnId:e,index:t,isPreviewMode:r})=>{let o=Gy(null),[n,i]=Bu(!1);return p1(()=>{let s=o.current;if(s)return Kt({element:s,getData:()=>({type:"column-cell",columnId:e,index:t,isEmpty:!0}),onDragEnter:()=>i(!0),onDragLeave:()=>i(!1),onDrop:()=>i(!1)})},[e,t]),Vr("div",{ref:o,"data-placeholder-cell":"true","data-column-cell":"true","data-column-id":e,"data-cell-index":t,onClick:s=>{s.stopPropagation()},className:I("courier-flex-1 courier-min-h-[120px] courier-flex courier-flex-col courier-p-4",!r&&"courier-border",!r&&(n?"courier-border-solid courier-border-t-2 courier-border-t-blue-500 courier-border-r-transparent courier-border-b-transparent courier-border-l-transparent courier-rounded-none":"courier-border-dashed courier-border-gray-300 courier-rounded"),!r&&"courier-items-center courier-justify-center courier-text-center courier-text-sm courier-text-gray-400"),children:!r&&Vr("span",{className:"courier-pointer-events-none",children:"Drag and drop content blocks"})})},"PlaceholderCell"),Yy=a(({paddingHorizontal:e,paddingVertical:t,backgroundColor:r,borderWidth:o,borderRadius:n,borderColor:i,node:s,columnsCount:l,isPreviewMode:c=!1})=>{var m;let u=!s.content||s.content.size===0,d={borderWidth:`${o}px`,borderStyle:o>0?"solid":"none",borderColor:i,borderRadius:`${n}px`},p={padding:`${t}px ${e}px`,backgroundColor:r};if(u){let f=((m=s.attrs)==null?void 0:m.id)||"";return Vr("div",{className:"courier-w-full node-element",style:p,children:Vr("div",{className:"courier-w-full courier-flex courier-gap-2 courier-p-2",style:d,children:Array.from({length:l}).map((v,h)=>Vr(Xy,{columnId:f,index:h,isPreviewMode:c},h))})})}return Vr("div",{className:"courier-w-full node-element",style:p,children:Vr("div",{className:"courier-w-full courier-p-2",style:d,children:Vr(qy,{})})})},"ColumnComponent"),f1=a(e=>{let t=Jy(je),r=Ky(Vt),[o,n]=Bu(!1),[i,s]=Bu(e.editor.isEditable);p1(()=>{let p=a(()=>{s(e.editor.isEditable)},"handleUpdate");return e.editor.on("update",p),e.editor.on("transaction",p),e.editor.on("selectionUpdate",p),()=>{e.editor.off("update",p),e.editor.off("transaction",p),e.editor.off("selectionUpdate",p)}},[e.editor]);let l=!i&&!r,c=Lu(p=>{var M,C;if(!e.editor.isEditable)return;let m=p.target,f=p.currentTarget,v=m===f,h=m.classList.contains("node-element"),y=m.classList.contains("courier-p-2"),x=m.classList.contains("courier-gap-2"),E=m.classList.contains("draggable-item"),g=m.hasAttribute("data-drag-handle")||m.closest("[data-drag-handle]")!==null;if(v||h||y||x||E||g||((C=(M=m.closest("[data-node-view-content]"))==null?void 0:M.parentElement)==null?void 0:C.classList.contains("node-element"))){p.stopPropagation(),g||p.preventDefault();let S=nt(e);if(S){e.editor.commands.blur();let P=S.attrs.id;e.editor.state.doc.descendants(k=>k.type.name==="column"&&k.attrs.id===P?(t(k),!1):!0)}}},[e,t]),u=Lu(p=>{let m=p.target,f=p.currentTarget;if(!(m.closest("[data-column-cell]")!==null)){n(!0);return}let h=f.getBoundingClientRect(),y=p.clientY,x=30,E=y<=h.top+x||y>=h.bottom-x;n(E)},[]),d=Lu(()=>{n(!1)},[]);return Vr(Ct,{id:e.node.attrs.id,className:I(e.node.attrs.isSelected&&"selected-element",o&&"hover-edge-zone"),onMouseDown:c,onMouseMove:u,onMouseLeave:d,editor:e.editor,getPos:e.getPos,"data-node-type":"column",children:Vr(Yy,{...e.node.attrs,node:e.node,columnsCount:e.node.attrs.columnsCount||2,isPreviewMode:l})})},"ColumnComponentNode");var ft={columnsCount:2,paddingHorizontal:0,paddingVertical:0,backgroundColor:"transparent",borderWidth:0,borderRadius:0,borderColor:"transparent",cells:[]},Ds=e0.create({name:"column",group:"block",content:"columnRow?",isolating:!0,selectable:!1,onCreate(){ot(this.editor,this.name)},addAttributes(){return{columnsCount:{default:ft.columnsCount,parseHTML:e=>e.getAttribute("data-columns-count"),renderHTML:e=>({"data-columns-count":e.columnsCount})},paddingHorizontal:{default:ft.paddingHorizontal,parseHTML:e=>e.getAttribute("data-padding-horizontal"),renderHTML:e=>({"data-padding-horizontal":e.paddingHorizontal})},paddingVertical:{default:ft.paddingVertical,parseHTML:e=>e.getAttribute("data-padding-vertical"),renderHTML:e=>({"data-padding-vertical":e.paddingVertical})},backgroundColor:{default:ft.backgroundColor,parseHTML:e=>e.getAttribute("data-background-color"),renderHTML:e=>({"data-background-color":e.backgroundColor})},borderWidth:{default:ft.borderWidth,parseHTML:e=>e.getAttribute("data-border-width"),renderHTML:e=>({"data-border-width":e.borderWidth})},borderRadius:{default:ft.borderRadius,parseHTML:e=>e.getAttribute("data-border-radius"),renderHTML:e=>({"data-border-radius":e.borderRadius})},borderColor:{default:ft.borderColor,parseHTML:e=>e.getAttribute("data-border-color"),renderHTML:e=>({"data-border-color":e.borderColor})},id:{default:()=>`node-${r0()}`,parseHTML:e=>e.getAttribute("data-id"),renderHTML:e=>({"data-id":e.id,"data-node-id":e.id})},locales:{default:void 0,parseHTML:()=>{},renderHTML:()=>({})},cells:{default:[],parseHTML:e=>{let t=e.getAttribute("data-cells");return t?JSON.parse(t):[]},renderHTML:e=>({"data-cells":JSON.stringify(e.cells||[])})}}},parseHTML(){return[{tag:'div[data-type="column"]'}]},renderHTML({HTMLAttributes:e}){return["div",Qy(this.options.HTMLAttributes,e,{"data-type":"column"}),0]},addNodeView(){return t0(f1)},addCommands(){return{setColumn:e=>({chain:t})=>{let r=e.columnsCount||ft.columnsCount,o=`node-${Date.now()}`,n=Array.from({length:r},(i,s)=>({type:"columnCell",attrs:{index:s,columnId:o},content:[{type:"paragraph"}]}));return t().insertContent({type:this.name,attrs:{...e,id:o},content:[{type:"columnRow",content:n}]}).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)==="column"},Delete:({editor:e})=>{let{selection:t}=e.state,r=e.state.doc.nodeAt(t.$anchor.pos);return(r==null?void 0:r.type.name)==="column"}}}});import{mergeAttributes as a0,Node as s0}from"@tiptap/core";import{ReactNodeViewRenderer as l0}from"@tiptap/react";import{v4 as c0}from"uuid";import{useSetAtom as o0}from"jotai";import{useCallback as n0}from"react";import{jsx as Hs}from"react/jsx-runtime";var i0=a(({code:e})=>{let t=e&&e.trim()&&e!=="<!-- Add your HTML code here -->";return Hs("div",{className:"courier-w-full node-element",children:Hs("div",{className:"courier-custom-code courier-py-1.5",dangerouslySetInnerHTML:t?{__html:e}:{__html:" "}})})},"CustomCodeComponent"),g1=a(e=>{let t=o0(je),r=n0(()=>{if(!e.editor.isEditable)return;let i=nt(e);if(i){e.editor.commands.blur();let s=i.attrs.id;e.editor.state.doc.descendants(l=>l.type.name==="customCode"&&l.attrs.id===s?(t(l),!1):!0)}},[e,t]),o=e.node.attrs.code,n=!o||o.trim()===""||o==="<!-- Add your HTML code here -->";return Hs(Ct,{id:e.node.attrs.id,className:I(e.node.attrs.isSelected&&"selected-element",n&&"is-empty"),onClick:r,editor:e.editor,"data-node-type":"customCode",children:Hs(i0,{...e.node.attrs,updateAttributes:e.updateAttributes})})},"CustomCodeComponentNode");var ro={code:"<!-- Add your HTML code here -->"},Vs=s0.create({name:"customCode",group:"block",atom:!0,selectable:!1,onCreate(){ot(this.editor,this.name)},addAttributes(){return{code:{default:ro.code,parseHTML:e=>e.getAttribute("data-code")||"",renderHTML:e=>({"data-code":e.code})},id:{default:()=>`node-${c0()}`,parseHTML:e=>e.getAttribute("data-id"),renderHTML:e=>({"data-id":e.id,"data-node-id":e.id})},locales:{default:void 0,parseHTML:()=>{},renderHTML:()=>({})}}},parseHTML(){return[{tag:'div[data-type="custom-code"]'}]},renderHTML({HTMLAttributes:e}){return["div",a0(this.options.HTMLAttributes,e,{"data-type":"custom-code"}),["div",{innerHTML:e.code||ro.code}]]},addNodeView(){return l0(g1)},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{mergeAttributes as y0}from"@tiptap/core";import{Node as u0,mergeAttributes as d0,isNodeSelection as m0,nodeInputRule as p0}from"@tiptap/core";import{TextSelection as Du,NodeSelection as f0}from"@tiptap/pm/state";var h1=u0.create({name:"horizontalRule",addOptions(){return{HTMLAttributes:{}}},group:"block",parseHTML(){return[{tag:"hr"}]},renderHTML({HTMLAttributes:e}){return["hr",d0(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}):m0(r)?i.insertContentAt(n.pos,{type:this.name}):i.insertContent({type:this.name}),i.command(({tr:s,dispatch:l})=>{var c;if(l){let{$to:u}=s.selection,d=u.end();if(u.nodeAfter)u.nodeAfter.isTextblock?s.setSelection(Du.create(s.doc,u.pos+1)):u.nodeAfter.isBlock?s.setSelection(f0.create(s.doc,u.pos)):s.setSelection(Du.create(s.doc,u.pos));else{let p=(c=u.parent.type.contentMatch.defaultType)===null||c===void 0?void 0:c.create();p&&(s.insert(d,p),s.setSelection(Du.create(s.doc,d+1)))}s.scrollIntoView()}return!0}).run()}}},addInputRules(){return[p0({find:/^(?:---|—-|___\s|\*\*\*\s)$/,type:this.type})]}});import{ReactNodeViewRenderer as v0}from"@tiptap/react";import{v4 as C0}from"uuid";import{useSetAtom as g0}from"jotai";import{useCallback as h0}from"react";import{jsx as Fs}from"react/jsx-runtime";var b0=a(({padding:e,color:t,size:r,radius:o,variant:n="divider"})=>Fs("div",{className:"courier-w-full node-element courier-flex",children:Fs("hr",{style:{marginTop:`${e}px`,marginBottom:`${e}px`,backgroundColor:n==="spacer"?"transparent":t,height:`${r}px`,borderRadius:`${o}px`,border:"none",width:"100%"},"data-variant":n})}),"DividerComponent"),b1=a(e=>{let t=g0(je),r=h0(()=>{if(!e.editor.isEditable)return;let o=nt(e);o&&(e.editor.commands.blur(),t(o))},[e,t]);return Fs(Ct,{id:e.node.attrs.id,className:I(e.node.attrs.isSelected&&"selected-element"),onClick:r,editor:e.editor,children:Fs(b0,{...e.node.attrs})})},"DividerComponentNode");var Gt={padding:6,color:"#000000",size:1,radius:0,variant:"divider"},Kn={padding:24,color:"transparent",size:1,radius:0,variant:"spacer"},Hu=h1.extend({name:"divider",atom:!0,onCreate(){ot(this.editor,this.name)},addAttributes(){return{padding:{default:Gt.padding,parseHTML:e=>e.getAttribute("data-padding"),renderHTML:e=>({"data-padding":e.margin})},size:{default:Gt.size,parseHTML:e=>e.getAttribute("data-size"),renderHTML:e=>({"data-size":e.size})},color:{default:Gt.color,parseHTML:e=>e.getAttribute("data-color"),renderHTML:e=>({"data-color":e.color})},width:{default:Gt.size,parseHTML:e=>e.getAttribute("data-size"),renderHTML:e=>({"data-size":e.size})},radius:{default:Gt.radius,parseHTML:e=>e.getAttribute("data-radius"),renderHTML:e=>({"data-radius":e.radius})},variant:{default:Gt.variant,parseHTML:e=>e.getAttribute("data-variant"),renderHTML:e=>({"data-variant":e.variant})},id:{default:()=>`node-${C0()}`,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",y0(e,{"data-type":"divider"}),["hr"]]},addNodeView(){return v0(b1)},addInputRules(){return[]}});import{mergeAttributes as P0,Node as A0}from"@tiptap/core";import{ReactNodeViewRenderer as M0}from"@tiptap/react";import{useSetAtom as y1}from"jotai";import{useCallback as hr,useEffect as Fu,useMemo as x0,useRef as v1,useState as C1}from"react";import{Fragment as k0,jsx as Fr,jsxs as Vu}from"react/jsx-runtime";var T0=["image/png","image/jpeg","image/gif","image/webp"],E0=a(({sourcePath:e,alt:t,alignment:r,borderWidth:o,borderColor:n,isUploading:i,width:s,imageNaturalWidth:l,onFileSelect:c,editor:u})=>{let[d,p]=C1(!1),[m,f]=C1(!0),v=v1(null),h=v1(null);Fu(()=>{e&&f(!0)},[e]),Fu(()=>{if(e&&!l&&u){let k=new Image;k.onload=()=>{try{if(!u.view||!u.state)return;let w=u.view.state.selection.from;u.chain().setNodeSelection(w).updateAttributes("imageBlock",{imageNaturalWidth:k.naturalWidth}).run()}catch{}},k.src=e}},[e,l,u]);let y=hr(k=>{var N,R;let w=(R=(N=u==null?void 0:u.view)==null?void 0:N.dom)==null?void 0:R.closest(".ProseMirror"),T=(w==null?void 0:w.clientWidth)||1e3,A=Math.min(100,k/T*100);return Math.round(A)},[u]),x=x0(()=>y(l),[y,l]),E=hr(k=>T0.includes(k),[]),g=hr(k=>{k.preventDefault(),k.stopPropagation(),k.dataTransfer.types.includes("Files")&&Array.from(k.dataTransfer.items).some(A=>E(A.type))&&(p(!0),k.dataTransfer.dropEffect="copy")},[E]),b=hr(k=>{k.preventDefault(),k.stopPropagation(),p(!1)},[]),M=hr(k=>{k.preventDefault(),k.stopPropagation(),k.dataTransfer.types.includes("Files")&&Array.from(k.dataTransfer.items).some(A=>E(A.type))&&p(!0)},[E]),C=hr(k=>{k.preventDefault(),k.stopPropagation(),p(!1);let T=Array.from(k.dataTransfer.files).find(A=>E(A.type));T&&c&&c(T)},[c,E]),S=hr(k=>{var T;let w=(T=k.target.files)==null?void 0:T[0];w&&c&&c(w),k.target&&(k.target.value="")},[c]),P=hr(()=>{var k;(k=v.current)==null||k.click()},[]);return ss(e)?Vu("div",{className:I("courier-w-full node-element courier-empty-image courier-h-[160px] courier-bg-gray-100 courier-rounded-md courier-flex courier-flex-row courier-items-center courier-justify-center courier-cursor-pointer courier-transition-colors courier-flex-1 courier-text-center courier-flex-wrap courier-content-center courier-p-4",d&&"courier-border-primary courier-bg-gray-50"),onDragOver:g,onDragEnter:M,onDragLeave:b,onDrop:C,style:{pointerEvents:"all"},children:[i?Fr(tn,{className:"courier-w-8 courier-h-8"}):Vu(k0,{children:[Fr("span",{className:"courier-text-sm courier-pointer-events-none courier-inline-block",children:"Drag and drop image, or\xA0"}),Fr("button",{className:"courier-underline courier-font-medium courier-inline-block courier-text-sm",onClick:P,children:"Browse"})]}),Fr("input",{ref:v,type:"file",accept:"image/png, image/jpeg, image/gif, image/webp",className:"courier-hidden",onChange:S})]}):Fr("div",{className:"courier-w-full node-element",children:Vu("div",{className:I("courier-relative courier-p-1",(i||m)&&"courier-w-full courier-aspect-[4/3] courier-bg-gray-100"),children:[(i||m)&&Fr("div",{className:"courier-absolute courier-inset-0 courier-flex courier-items-center courier-justify-center",children:Fr(tn,{className:"courier-w-8 courier-h-8"})}),Fr("img",{ref:h,src:e,alt:t,className:I("courier-h-auto courier-inline-block courier-w-full",{left:"courier-mr-auto",center:"courier-mx-auto",right:"courier-ml-auto"}[r],i&&"courier-opacity-50",(i||m)&&"courier-invisible"),style:{maxWidth:s===x?`${l}px`:`${s}%`,borderWidth:`${o}px`,borderColor:n,borderStyle:o>0?"solid":"none",display:"block"},loading:"lazy",decoding:"async",draggable:!1,onLoad:k=>{if(f(!1),!l&&u)try{if(!u.view||!u.state)return;setTimeout(()=>{let w=u.view.state.selection.from;u.chain().setNodeSelection(w).updateAttributes("imageBlock",{imageNaturalWidth:k.target.naturalWidth}).run()},100)}catch(w){console.warn("Editor not ready for image update:",w)}},onError:()=>f(!1)})]})})},"ImageBlockComponent"),w0=["image/png","image/jpeg","image/gif","image/webp"],x1=a(e=>{let t=y1(je),r=y1(ae),{uploadImage:o}=Hi(),n=hr(l=>{var p,m,f;let c=(f=(m=(p=e.editor)==null?void 0:p.view)==null?void 0:m.dom)==null?void 0:f.closest(".ProseMirror"),u=(c==null?void 0:c.clientWidth)||1e3,d=Math.min(100,l/u*100);return Math.round(d)},[e.editor]);Fu(()=>{var c,u;let l=nt(e);if((c=l==null?void 0:l.attrs)!=null&&c.sourcePath&&!((u=l==null?void 0:l.attrs)!=null&&u.imageNaturalWidth)){let d=new Image;d.onload=()=>{let p=l.attrs.width||n(d.naturalWidth),m=Eo(e.getPos);m!==null&&e.editor.chain().focus().setNodeSelection(m).updateAttributes("imageBlock",{width:p,imageNaturalWidth:d.naturalWidth}).run()},d.src=l.attrs.sourcePath}},[e,n]);let i=hr(()=>{if(!e.editor.isEditable)return;let l=nt(e);l&&(e.editor.commands.blur(),t(l))},[e,t]),s=hr(async l=>{let c=Eo(e.getPos);nt(e)&&c!==null&&e.editor.chain().focus().setNodeSelection(c).updateAttributes("imageBlock",{isUploading:!0,sourcePath:""}).run();try{if(!w0.includes(l.type))throw new Error("Only PNG, JPEG, GIF, and WebP images are supported");let d=new FileReader;d.readAsDataURL(l),await new Promise((h,y)=>{d.onload=h,d.onerror=y});let m=(await o({file:l})).url,f=Eo(e.getPos);if(nt(e)&&f!==null){let h=new Image;h.src=m,await new Promise((x,E)=>{h.onload=x,h.onerror=()=>E(new Error("Failed to load uploaded image"))});let y=n(h.naturalWidth);e.editor.chain().focus().setNodeSelection(f).updateAttributes("imageBlock",{sourcePath:m,isUploading:!1,width:y,imageNaturalWidth:h.naturalWidth}).run()}}catch(d){console.error("Error uploading image:",d);let p="Error uploading image";if(d instanceof Error){let v=d.message;v.includes("GraphQL error")?p="Server error: Could not process image":v.includes("network")||v.includes("fetch")?p="Network error: Could not upload image":p=v}r({message:p,toastProps:{duration:6e3,description:`File: ${l.name} (${(l.size/1024/1024).toFixed(2)}MB)`}});let m=Eo(e.getPos);nt(e)&&m!==null&&e.editor.chain().focus().setNodeSelection(m).updateAttributes("imageBlock",{isUploading:!1}).run()}},[e,n,o,r]);return Fr(Ct,{id:e.node.attrs.id,className:I(e.node.attrs.isSelected&&"selected-element"),onClick:i,editor:e.editor,children:Fr(E0,{...e.node.attrs,onFileSelect:s,editor:e.editor})})},"ImageBlockView");var Ke={sourcePath:"",link:"",alt:"",alignment:"center",width:1,borderWidth:0,borderColor:"transparent",isUploading:!1,imageNaturalWidth:0},Os=A0.create({name:"imageBlock",group:"block",atom:!0,inline:!1,onCreate(){ot(this.editor,this.name)},addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),placeholder:""}},addAttributes(){return{sourcePath:{default:Ke.sourcePath,parseHTML:e=>e.getAttribute("data-source-path")||"",renderHTML:e=>({"data-source-path":e.sourcePath||""})},link:{default:Ke.link,parseHTML:e=>e.getAttribute("data-link"),renderHTML:e=>({"data-link":e.link})},alt:{default:Ke.alt,parseHTML:e=>e.getAttribute("data-alt"),renderHTML:e=>({"data-alt":e.alt})},alignment:{default:Ke.alignment,parseHTML:e=>e.getAttribute("data-alignment"),renderHTML:e=>({"data-alignment":e.alignment})},width:{default:Ke.width,parseHTML:e=>e.getAttribute("data-width"),renderHTML:e=>({"data-width":e.width})},imageNaturalWidth:{default:Ke.imageNaturalWidth,parseHTML:e=>e.getAttribute("data-natural-width"),renderHTML:e=>({"data-natural-width":e.imageNaturalWidth})},borderWidth:{default:Ke.borderWidth,parseHTML:e=>e.getAttribute("data-border-width"),renderHTML:e=>({"data-border-width":e.borderWidth})},borderColor:{default:Ke.borderColor,parseHTML:e=>e.getAttribute("data-border-color"),renderHTML:e=>({"data-border-color":e.borderColor})},isUploading:{default:Ke.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})},locales:{default:void 0,parseHTML:()=>{},renderHTML:()=>({})}}},parseHTML(){return[{tag:'div[data-type="image-block"]'}]},renderHTML({HTMLAttributes:e}){return["div",P0(this.options.HTMLAttributes,e,{"data-type":"image-block"}),0]},addNodeView(){return M0(x1)},addCommands(){return{setImageBlock:e=>({chain:t})=>t().insertContent({type:this.name,attrs:{...Ke,...e}}).run(),setImageBlockAt:({pos:e,src:t})=>({chain:r})=>r().insertContentAt(e,{type:this.name,attrs:{...Ke,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 oo}from"zod";var T1=oo.object({paddingVertical:oo.number(),paddingHorizontal:oo.number(),backgroundColor:oo.string(),borderWidth:oo.number(),borderColor:oo.string(),textAlign:oo.enum(["left","center","right","justify"]).default("left"),selected:oo.boolean().default(!1),id:oo.string().optional()}),he={paddingVertical:6,paddingHorizontal:0,backgroundColor:"transparent",borderWidth:0,borderColor:"transparent",textAlign:"left",selected:!1};import{NodeViewContent as N0,NodeViewWrapper as S0}from"@tiptap/react";import{useSetAtom as I0,useAtomValue as R0}from"jotai";import{useCallback as L0}from"react";import{jsx as wo}from"react/jsx-runtime";var E1=a(({paddingVertical:e,paddingHorizontal:t,textAlign:r,backgroundColor:o,borderWidth:n,borderColor:i,level:s,type:l})=>{let c=l==="heading"?`h${s}`:"p",u=R0(Vt);return wo("div",{className:"courier-w-full node-element",children:wo("div",{style:{padding:`${e}px ${t}px`,textAlign:r,backgroundColor:o,borderWidth:`${n}px`,borderColor:i,borderStyle:n>0?"solid":"none"},children:wo("div",{style:{pointerEvents:u?"none":"auto"},children:wo(N0,{as:c})})})})},"TextBlockComponent"),Ws=a(e=>{let t=I0(je),r=L0(()=>{if(!e.editor.isEditable)return;let l=nt(e);l&&t(l)},[e,t]),o=!e.node.content||e.node.content.size===0,n=Eo(e.getPos),i=n!==null?e.editor.state.doc.resolve(n):null;return(i==null?void 0:i.parent.type.name)==="blockquote"?wo(S0,{children:wo(E1,{...e.node.attrs,type:e.node.type.name})}):wo(Ct,{id:e.node.attrs.id,className:I(e.node.attrs.isSelected&&"selected-element",o&&"is-empty"),onClick:r,editor:e.editor,children:wo(E1,{...e.node.attrs,type:e.node.type.name})})},"TextBlockComponentNode");import{zodResolver as O0}from"@hookform/resolvers/zod";import{useForm as W0}from"react-hook-form";import{useSetAtom as V0}from"jotai";import{jsx as w1,jsxs as B0}from"react/jsx-runtime";var Ze=a(({draggable:e=!1,icon:t,draggableLabel:r,label:o})=>B0("div",{className:"courier-flex courier-flex-row courier-items-center courier-gap-2",children:[w1("div",{className:I("courier-w-8 courier-h-8 courier-rounded-md courier-flex courier-items-center courier-justify-center",e?"courier-cursor-grab courier-bg-secondary":"courier-border courier-border-border"),children:t}),w1("span",{className:"courier-text-sm courier-font-medium courier-text-foreground",children:e?r:o})]}),"BlockBase");import{Quote as D0}from"lucide-react";import{jsx as k1}from"react/jsx-runtime";var Us=a(({draggable:e=!1})=>k1(Ze,{draggable:e,icon:k1(D0,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),draggableLabel:"Blockquote",label:"Blockquote block"}),"BlockquoteBlock");import{jsx as _s}from"react/jsx-runtime";var Ou=a(()=>_s("svg",{width:"20",height:"12",viewBox:"0 0 20 12",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:_s("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:"currentColor"})}),"ButtonBlockIcon"),ko=a(({draggable:e=!1})=>_s(Ze,{draggable:e,icon:_s(Ou,{}),draggableLabel:"Button",label:"Button block"}),"ButtonBlock");import{jsx as zs}from"react/jsx-runtime";var Wu=a(()=>zs("svg",{width:"20",height:"14",viewBox:"0 0 20 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:zs("path",{d:"M14 1.5V12.5H18C18.25 12.5 18.5 12.2812 18.5 12V2C18.5 1.75 18.25 1.5 18 1.5H14ZM12.5 1.5H7.5V12.5H12.5V1.5ZM6 12.5V1.5H2C1.71875 1.5 1.5 1.75 1.5 2V12C1.5 12.2812 1.71875 12.5 2 12.5H6ZM0 2C0 0.90625 0.875 0 2 0H18C19.0938 0 20 0.90625 20 2V12C20 13.125 19.0938 14 18 14H2C0.875 14 0 13.125 0 12V2Z",fill:"currentColor"})}),"ColumnBlockIcon"),$s=a(({draggable:e=!1})=>zs(Ze,{draggable:e,icon:zs(Wu,{}),draggableLabel:"Column layout",label:"Column layout"}),"ColumnBlock");import{jsx as js}from"react/jsx-runtime";var Uu=a(()=>js("svg",{width:"20",height:"14",viewBox:"0 0 20 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:js("path",{d:"M6.5 3.5L3 7L6.5 10.5M13.5 3.5L17 7L13.5 10.5M11.5 1L8.5 13",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})}),"CustomCodeBlockIcon"),Zs=a(({draggable:e=!1})=>js(Ze,{draggable:e,icon:js(Uu,{}),draggableLabel:"Custom code",label:"Custom code"}),"CustomCodeBlock");import{jsx as qs}from"react/jsx-runtime";var _u=a(()=>qs("svg",{width:"16",height:"2",viewBox:"0 0 16 2",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:qs("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:"currentColor"})}),"DividerBlockIcon"),Po=a(({draggable:e=!1})=>qs(Ze,{draggable:e,icon:qs(_u,{}),draggableLabel:"Divider",label:"Divider block"}),"DividerBlock");import{jsx as Js}from"react/jsx-runtime";var zu=a(()=>Js("svg",{width:"18",height:"13",viewBox:"0 0 18 13",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:Js("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:"currentColor"})}),"HeadingBlockIcon"),Ks=a(({draggable:e=!1})=>Js(Ze,{draggable:e,icon:Js(zu,{}),draggableLabel:"Heading",label:"Heading block"}),"HeadingBlock");import{jsx as Gs}from"react/jsx-runtime";var $u=a(()=>Gs("svg",{width:"16",height:"14",viewBox:"0 0 16 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:Gs("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:"currentColor"})}),"ImageBlockIcon"),Xs=a(({draggable:e=!1})=>Gs(Ze,{draggable:e,icon:Gs($u,{}),draggableLabel:"Image",label:"Image block"}),"ImageBlock");import{AlignVerticalSpaceAround as H0}from"lucide-react";import{jsx as P1}from"react/jsx-runtime";var Ys=a(({draggable:e=!1})=>P1(Ze,{draggable:e,icon:P1(H0,{className:"courier-w-4 courier-h-4"}),draggableLabel:"Spacer",label:"Spacer block"}),"SpacerBlock");import{jsx as Qs}from"react/jsx-runtime";var ju=a(()=>Qs("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:Qs("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:"currentColor"})}),"TextBlockIcon"),Ao=a(({draggable:e=!1})=>Qs(Ze,{draggable:e,icon:Qs(ju,{}),draggableLabel:"Text",label:"Text block"}),"TextBlock");import{jsx as br,jsxs as F0}from"react/jsx-runtime";var xt=a(({type:e})=>{let t=V0(je);return F0("div",{className:"courier-flex courier-gap-4 courier-flex-col",children:[br(ke,{className:"courier-w-fit",variant:"secondary",buttonSize:"small",onClick:()=>{t(null)},children:"Close"}),e==="heading"&&br(Ks,{}),e==="text"&&br(Ao,{}),e==="image"&&br(Xs,{}),e==="spacer"&&br(Ys,{}),e==="divider"&&br(Po,{}),e==="button"&&br(ko,{}),e==="blockquote"&&br(Us,{}),e==="customCode"&&br(Zs,{}),e==="column"&&br($s,{}),br(fe,{className:"courier-m-0"})]})},"FormHeader");import{jsx as Pe,jsxs as Mo}from"react/jsx-runtime";var A1=a(({element:e,editor:t})=>{let r=W0({resolver:O0(T1),defaultValues:{...he,...e==null?void 0:e.attrs}}),{updateNodeAttributes:o}=vt({editor:t,element:e,form:r,nodeType:(e==null?void 0:e.type.name)||"paragraph"});return e?Mo(He,{...r,children:[Pe(xt,{type:"text"}),Mo("form",{onChange:()=>{o(r.getValues())},children:[Pe("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Frame"}),Mo("div",{className:"courier-flex courier-flex-row courier-gap-3 courier-mb-3",children:[Pe(re,{control:r.control,name:"paddingHorizontal",render:({field:n})=>Mo(ee,{children:[Pe(te,{children:Pe(ve,{startAdornment:Pe(Yi,{}),type:"number",min:0,...n})}),Pe(oe,{})]})}),Pe(re,{control:r.control,name:"paddingVertical",render:({field:n})=>Mo(ee,{children:[Pe(te,{children:Pe(ve,{startAdornment:Pe(en,{}),type:"number",min:0,...n})}),Pe(oe,{})]})})]}),Pe(re,{control:r.control,name:"backgroundColor",render:({field:n})=>Mo(ee,{className:"courier-mb-4",children:[Pe(te,{children:Pe(pt,{...n,defaultValue:he.backgroundColor,onChange:i=>{n.onChange(i),o({...r.getValues(),[n.name]:i})}})}),Pe(oe,{})]})}),Pe(fe,{className:"courier-mb-4"}),Pe("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Border"}),Pe(re,{control:r.control,name:"borderWidth",render:({field:n})=>Mo(ee,{className:"courier-mb-3",children:[Pe(te,{children:Pe(ve,{startAdornment:Pe(eo,{}),type:"number",min:0,...n})}),Pe(oe,{})]})}),Pe(re,{control:r.control,name:"borderColor",render:({field:n})=>Mo(ee,{className:"courier-mb-4",children:[Pe(te,{children:Pe(pt,{...n,defaultValue:he.borderColor,onChange:i=>{n.onChange(i),o({...r.getValues(),[n.name]:i})}})}),Pe(oe,{})]})})]})]}):null},"TextBlockForm");var _0=a((e,t)=>{let r=null;return e.state.doc.descendants((o,n)=>o.attrs.id===t?(r=n,!1):!0),r},"findNodePositionById"),el=a((e,t,r,o,n,i)=>{let s=`node-${U0()}`,c={heading:()=>e.schema.nodes.heading.create({...he,...o,id:s},i),paragraph:()=>e.schema.nodes.paragraph.create({...he,...o,id:s},i),text:()=>e.schema.nodes.paragraph.create({...he,...o,id:s},i),spacer:()=>e.schema.nodes.divider.create({...Kn,...o,id:s}),divider:()=>e.schema.nodes.divider.create({...Gt,...o,id:s}),button:()=>e.schema.nodes.button.create({...Ue,...o,id:s},i),imageBlock:()=>e.schema.nodes.imageBlock.create({...Ke,...o,id:s}),image:()=>e.schema.nodes.imageBlock.create({...Ke,...o,id:s}),customCode:()=>e.schema.nodes.customCode.create({...ro,...o,id:s}),column:()=>e.schema.nodes.column.create({...ft,...o,id:s})}[t];if(c)try{let u=e.state.tr,d=c();u.insert(r,d),e.view.dispatch(u),n&&n(d),(t==="text"||t==="paragraph"||t==="heading")&&setTimeout(()=>{let m=_0(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(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:s},i);u.insert(r,d),e.view.dispatch(u),n&&n(d);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(u){console.error("Error creating fallback node:",u)}return s},"createOrDuplicateNode");var PB=a(()=>{let[e,t]=tl(Sr),[r,o]=tl(ts),[n,i]=tl(yo),s=z0(we),l=tl(Ce)[1],c=Or(E=>{l(E)},[l]),u=Or(E=>{t(E)},[t]),d=Or(()=>{t(es)},[t]),p=Or((E,g)=>{o(b=>({...b,[E]:{...b[E],...g}}))},[o]),m=Or(E=>r[E],[r]),f=Or(E=>{o(g=>{let b={...g};return delete b[E],b})},[o]),v=Or(E=>{i(g=>{let b=g.findIndex(M=>M.type===E.type&&M.key===E.key);if(b>=0){let M=[...g];return M[b]=E,M}return[...g,E]})},[i]),h=Or((E,g)=>{i(b=>b.filter(M=>!(M.type===E&&M.key===g)))},[i]),y=Or(E=>n.filter(g=>g.type===E),[n]),x=Or((E,g)=>{if(!s){console.warn("[useBlockConfig] Cannot insert block: editor not available");return}let b={};E==="spacer"&&(b={...Kn});let M=r[E];if(M&&(b={...b,...M}),g){let k=n.find(w=>w.type===E&&w.key===g);k?b={...b,...k.attributes}:console.warn(`[useBlockConfig] Preset "${g}" not found for type "${E}"`)}let C=s.state.doc.content.size,P={heading:"heading",text:"paragraph",image:"imageBlock",spacer:"divider",divider:"divider",button:"button",customCode:"customCode",column:"column",blockquote:"blockquote"}[E];el(s,P,C,b,c)},[s,r,n,c]);return{visibleBlocks:e,setVisibleBlocks:u,resetVisibleBlocks:d,defaultVisibleBlocks:es,setDefaults:p,getDefaults:m,clearDefaults:f,registerPreset:v,unregisterPreset:h,presets:n,getPresetsForType:y,insertBlock:x}},"useBlockConfig");import{z as an}from"zod";var M1=an.object({paddingHorizontal:an.coerce.number().min(0),paddingVertical:an.coerce.number().min(0),backgroundColor:an.string(),borderLeftWidth:an.coerce.number().min(0),borderColor:an.string(),id:an.string().optional()});import{jsx as Gn,jsxs as Zu}from"react/jsx-runtime";var N1=a(({element:e,editor:t})=>{let r=j0({resolver:$0(M1),defaultValues:{...Wr,...e==null?void 0:e.attrs}}),{updateNodeAttributes:o}=vt({editor:t,element:e,form:r,nodeType:(e==null?void 0:e.type.name)||"blockquote"});return e?Zu(He,{...r,children:[Gn(xt,{type:"blockquote"}),Zu("form",{onChange:()=>{o(r.getValues())},children:[Gn("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Border"}),Gn(re,{control:r.control,name:"borderColor",render:({field:n})=>Zu(ee,{className:"courier-mb-3",children:[Gn(te,{children:Gn(pt,{...n,defaultValue:Wr.borderColor,onChange:i=>{n.onChange(i),o({...r.getValues(),[n.name]:i})}})}),Gn(oe,{})]})})]})]}):null},"BlockquoteForm");import{z as Xt}from"zod";var rl=Xt.object({label:Xt.string(),link:Xt.string().optional(),alignment:Xt.enum(["left","center","right"]),backgroundColor:Xt.string(),borderRadius:Xt.number(),padding:Xt.number(),fontWeight:Xt.enum(["normal","bold"]),fontStyle:Xt.enum(["normal","italic"]),isUnderline:Xt.boolean(),isStrike:Xt.boolean(),textColor:Xt.string().optional(),borderColor:Xt.string().optional()});import{zodResolver as v3}from"@hookform/resolvers/zod";import{useForm as C3}from"react-hook-form";import{Node as Z0}from"@tiptap/core";var Xn=Z0.create({name:"doc",topNode:!0,content:"block+"});import{Node as q0,mergeAttributes as J0}from"@tiptap/core";var Yn=q0.create({name:"paragraph",priority:1e3,addOptions(){return{HTMLAttributes:{}}},group:"block",content:"inline*",parseHTML(){return[{tag:"p"}]},renderHTML({HTMLAttributes:e}){return["p",J0(this.options.HTMLAttributes,e),0]},addCommands(){return{setParagraph:()=>({commands:e})=>e.setNode(this.name)}},addKeyboardShortcuts(){return{"Mod-Alt-0":()=>this.editor.commands.setParagraph()}}});import c3 from"@tiptap/extension-placeholder";import{Node as K0}from"@tiptap/core";var ol=K0.create({name:"text",group:"inline"});import{EditorContent as u3,useEditor as d3}from"@tiptap/react";import*as yn from"react";import{useCallback as m3,useEffect as Wg}from"react";import{Extension as Td,InputRule as lC,Node as cC}from"@tiptap/core";import{ReactNodeViewRenderer as uC}from"@tiptap/react";import{Suggestion as dC}from"@tiptap/suggestion";import{ReactRenderer as Qv}from"@tiptap/react";var Ve="top",Ge="bottom",qe="right",_e="left",nl="auto",No=[Ve,Ge,qe,_e],no="start",sn="end",S1="clippingParents",il="viewport",Qn="popper",I1="reference",qu=No.reduce(function(e,t){return e.concat([t+"-"+no,t+"-"+sn])},[]),al=[].concat(No,[nl]).reduce(function(e,t){return e.concat([t,t+"-"+no,t+"-"+sn])},[]),G0="beforeRead",X0="read",Y0="afterRead",Q0="beforeMain",ev="main",tv="afterMain",rv="beforeWrite",ov="write",nv="afterWrite",R1=[G0,X0,Y0,Q0,ev,tv,rv,ov,nv];function it(e){return e?(e.nodeName||"").toLowerCase():null}a(it,"getNodeName");function Re(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}a(Re,"getWindow");function or(e){var t=Re(e).Element;return e instanceof t||e instanceof Element}a(or,"isElement");function Xe(e){var t=Re(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}a(Xe,"isHTMLElement");function ei(e){if(typeof ShadowRoot=="undefined")return!1;var t=Re(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}a(ei,"isShadowRoot");function iv(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];!Xe(i)||!it(i)||(Object.assign(i.style,o),Object.keys(n).forEach(function(s){var l=n[s];l===!1?i.removeAttribute(s):i.setAttribute(s,l===!0?"":l)}))})}a(iv,"applyStyles");function av(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]),l=s.reduce(function(c,u){return c[u]="",c},{});!Xe(n)||!it(n)||(Object.assign(n.style,l),Object.keys(i).forEach(function(c){n.removeAttribute(c)}))})}}a(av,"effect");var fa={name:"applyStyles",enabled:!0,phase:"write",fn:iv,effect:av,requires:["computeStyles"]};function at(e){return e.split("-")[0]}a(at,"getBasePlacement");var yr=Math.max,ln=Math.min,io=Math.round;function ti(){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(ti,"getUAString");function ga(){return!/^((?!chrome|android).)*safari/i.test(ti())}a(ga,"isLayoutViewport");function nr(e,t,r){t===void 0&&(t=!1),r===void 0&&(r=!1);var o=e.getBoundingClientRect(),n=1,i=1;t&&Xe(e)&&(n=e.offsetWidth>0&&io(o.width)/e.offsetWidth||1,i=e.offsetHeight>0&&io(o.height)/e.offsetHeight||1);var s=or(e)?Re(e):window,l=s.visualViewport,c=!ga()&&r,u=(o.left+(c&&l?l.offsetLeft:0))/n,d=(o.top+(c&&l?l.offsetTop:0))/i,p=o.width/n,m=o.height/i;return{width:p,height:m,top:d,right:u+p,bottom:d+m,left:u,x:u,y:d}}a(nr,"getBoundingClientRect");function cn(e){var t=nr(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(cn,"getLayoutRect");function ha(e,t){var r=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(r&&ei(r)){var o=t;do{if(o&&e.isSameNode(o))return!0;o=o.parentNode||o.host}while(o)}return!1}a(ha,"contains");function Bt(e){return Re(e).getComputedStyle(e)}a(Bt,"getComputedStyle");function Ju(e){return["table","td","th"].indexOf(it(e))>=0}a(Ju,"isTableElement");function gt(e){return((or(e)?e.ownerDocument:e.document)||window.document).documentElement}a(gt,"getDocumentElement");function ao(e){return it(e)==="html"?e:e.assignedSlot||e.parentNode||(ei(e)?e.host:null)||gt(e)}a(ao,"getParentNode");function L1(e){return!Xe(e)||Bt(e).position==="fixed"?null:e.offsetParent}a(L1,"getTrueOffsetParent");function sv(e){var t=/firefox/i.test(ti()),r=/Trident/i.test(ti());if(r&&Xe(e)){var o=Bt(e);if(o.position==="fixed")return null}var n=ao(e);for(ei(n)&&(n=n.host);Xe(n)&&["html","body"].indexOf(it(n))<0;){var i=Bt(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(sv,"getContainingBlock");function vr(e){for(var t=Re(e),r=L1(e);r&&Ju(r)&&Bt(r).position==="static";)r=L1(r);return r&&(it(r)==="html"||it(r)==="body"&&Bt(r).position==="static")?t:r||sv(e)||t}a(vr,"getOffsetParent");function un(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}a(un,"getMainAxisFromPlacement");function dn(e,t,r){return yr(e,ln(t,r))}a(dn,"within");function B1(e,t,r){var o=dn(e,t,r);return o>r?r:o}a(B1,"withinMaxClamp");function ba(){return{top:0,right:0,bottom:0,left:0}}a(ba,"getFreshSideObject");function ya(e){return Object.assign({},ba(),e)}a(ya,"mergePaddingObject");function va(e,t){return t.reduce(function(r,o){return r[o]=e,r},{})}a(va,"expandToHashMap");var lv=a(function(t,r){return t=typeof t=="function"?t(Object.assign({},r.rects,{placement:r.placement})):t,ya(typeof t!="number"?t:va(t,No))},"toPaddingObject");function cv(e){var t,r=e.state,o=e.name,n=e.options,i=r.elements.arrow,s=r.modifiersData.popperOffsets,l=at(r.placement),c=un(l),u=[_e,qe].indexOf(l)>=0,d=u?"height":"width";if(!(!i||!s)){var p=lv(n.padding,r),m=cn(i),f=c==="y"?Ve:_e,v=c==="y"?Ge:qe,h=r.rects.reference[d]+r.rects.reference[c]-s[c]-r.rects.popper[d],y=s[c]-r.rects.reference[c],x=vr(i),E=x?c==="y"?x.clientHeight||0:x.clientWidth||0:0,g=h/2-y/2,b=p[f],M=E-m[d]-p[v],C=E/2-m[d]/2+g,S=dn(b,C,M),P=c;r.modifiersData[o]=(t={},t[P]=S,t.centerOffset=S-C,t)}}a(cv,"arrow");function uv(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)||ha(t.elements.popper,n)&&(t.elements.arrow=n))}a(uv,"effect");var D1={name:"arrow",enabled:!0,phase:"main",fn:cv,effect:uv,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function ir(e){return e.split("-")[1]}a(ir,"getVariation");var dv={top:"auto",right:"auto",bottom:"auto",left:"auto"};function mv(e,t){var r=e.x,o=e.y,n=t.devicePixelRatio||1;return{x:io(r*n)/n||0,y:io(o*n)/n||0}}a(mv,"roundOffsetsByDPR");function H1(e){var t,r=e.popper,o=e.popperRect,n=e.placement,i=e.variation,s=e.offsets,l=e.position,c=e.gpuAcceleration,u=e.adaptive,d=e.roundOffsets,p=e.isFixed,m=s.x,f=m===void 0?0:m,v=s.y,h=v===void 0?0:v,y=typeof d=="function"?d({x:f,y:h}):{x:f,y:h};f=y.x,h=y.y;var x=s.hasOwnProperty("x"),E=s.hasOwnProperty("y"),g=_e,b=Ve,M=window;if(u){var C=vr(r),S="clientHeight",P="clientWidth";if(C===Re(r)&&(C=gt(r),Bt(C).position!=="static"&&l==="absolute"&&(S="scrollHeight",P="scrollWidth")),C=C,n===Ve||(n===_e||n===qe)&&i===sn){b=Ge;var k=p&&C===M&&M.visualViewport?M.visualViewport.height:C[S];h-=k-o.height,h*=c?1:-1}if(n===_e||(n===Ve||n===Ge)&&i===sn){g=qe;var w=p&&C===M&&M.visualViewport?M.visualViewport.width:C[P];f-=w-o.width,f*=c?1:-1}}var T=Object.assign({position:l},u&&dv),A=d===!0?mv({x:f,y:h},Re(r)):{x:f,y:h};if(f=A.x,h=A.y,c){var N;return Object.assign({},T,(N={},N[b]=E?"0":"",N[g]=x?"0":"",N.transform=(M.devicePixelRatio||1)<=1?"translate("+f+"px, "+h+"px)":"translate3d("+f+"px, "+h+"px, 0)",N))}return Object.assign({},T,(t={},t[b]=E?h+"px":"",t[g]=x?f+"px":"",t.transform="",t))}a(H1,"mapToStyles");function pv(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,l=r.roundOffsets,c=l===void 0?!0:l,u={placement:at(t.placement),variation:ir(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,H1(Object.assign({},u,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:s,roundOffsets:c})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,H1(Object.assign({},u,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:c})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}a(pv,"computeStyles");var V1={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:pv,data:{}};var sl={passive:!0};function fv(e){var t=e.state,r=e.instance,o=e.options,n=o.scroll,i=n===void 0?!0:n,s=o.resize,l=s===void 0?!0:s,c=Re(t.elements.popper),u=[].concat(t.scrollParents.reference,t.scrollParents.popper);return i&&u.forEach(function(d){d.addEventListener("scroll",r.update,sl)}),l&&c.addEventListener("resize",r.update,sl),function(){i&&u.forEach(function(d){d.removeEventListener("scroll",r.update,sl)}),l&&c.removeEventListener("resize",r.update,sl)}}a(fv,"effect");var F1={name:"eventListeners",enabled:!0,phase:"write",fn:a(function(){},"fn"),effect:fv,data:{}};var gv={left:"right",right:"left",bottom:"top",top:"bottom"};function ri(e){return e.replace(/left|right|bottom|top/g,function(t){return gv[t]})}a(ri,"getOppositePlacement");var hv={start:"end",end:"start"};function ll(e){return e.replace(/start|end/g,function(t){return hv[t]})}a(ll,"getOppositeVariationPlacement");function mn(e){var t=Re(e),r=t.pageXOffset,o=t.pageYOffset;return{scrollLeft:r,scrollTop:o}}a(mn,"getWindowScroll");function pn(e){return nr(gt(e)).left+mn(e).scrollLeft}a(pn,"getWindowScrollBarX");function Ku(e,t){var r=Re(e),o=gt(e),n=r.visualViewport,i=o.clientWidth,s=o.clientHeight,l=0,c=0;if(n){i=n.width,s=n.height;var u=ga();(u||!u&&t==="fixed")&&(l=n.offsetLeft,c=n.offsetTop)}return{width:i,height:s,x:l+pn(e),y:c}}a(Ku,"getViewportRect");function Gu(e){var t,r=gt(e),o=mn(e),n=(t=e.ownerDocument)==null?void 0:t.body,i=yr(r.scrollWidth,r.clientWidth,n?n.scrollWidth:0,n?n.clientWidth:0),s=yr(r.scrollHeight,r.clientHeight,n?n.scrollHeight:0,n?n.clientHeight:0),l=-o.scrollLeft+pn(e),c=-o.scrollTop;return Bt(n||r).direction==="rtl"&&(l+=yr(r.clientWidth,n?n.clientWidth:0)-i),{width:i,height:s,x:l,y:c}}a(Gu,"getDocumentRect");function fn(e){var t=Bt(e),r=t.overflow,o=t.overflowX,n=t.overflowY;return/auto|scroll|overlay|hidden/.test(r+n+o)}a(fn,"isScrollParent");function cl(e){return["html","body","#document"].indexOf(it(e))>=0?e.ownerDocument.body:Xe(e)&&fn(e)?e:cl(ao(e))}a(cl,"getScrollParent");function So(e,t){var r;t===void 0&&(t=[]);var o=cl(e),n=o===((r=e.ownerDocument)==null?void 0:r.body),i=Re(o),s=n?[i].concat(i.visualViewport||[],fn(o)?o:[]):o,l=t.concat(s);return n?l:l.concat(So(ao(s)))}a(So,"listScrollParents");function oi(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}a(oi,"rectToClientRect");function bv(e,t){var r=nr(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(bv,"getInnerBoundingClientRect");function O1(e,t,r){return t===il?oi(Ku(e,r)):or(t)?bv(t,r):oi(Gu(gt(e)))}a(O1,"getClientRectFromMixedType");function yv(e){var t=So(ao(e)),r=["absolute","fixed"].indexOf(Bt(e).position)>=0,o=r&&Xe(e)?vr(e):e;return or(o)?t.filter(function(n){return or(n)&&ha(n,o)&&it(n)!=="body"}):[]}a(yv,"getClippingParents");function Xu(e,t,r,o){var n=t==="clippingParents"?yv(e):[].concat(t),i=[].concat(n,[r]),s=i[0],l=i.reduce(function(c,u){var d=O1(e,u,o);return c.top=yr(d.top,c.top),c.right=ln(d.right,c.right),c.bottom=ln(d.bottom,c.bottom),c.left=yr(d.left,c.left),c},O1(e,s,o));return l.width=l.right-l.left,l.height=l.bottom-l.top,l.x=l.left,l.y=l.top,l}a(Xu,"getClippingRect");function Ca(e){var t=e.reference,r=e.element,o=e.placement,n=o?at(o):null,i=o?ir(o):null,s=t.x+t.width/2-r.width/2,l=t.y+t.height/2-r.height/2,c;switch(n){case Ve:c={x:s,y:t.y-r.height};break;case Ge:c={x:s,y:t.y+t.height};break;case qe:c={x:t.x+t.width,y:l};break;case _e:c={x:t.x-r.width,y:l};break;default:c={x:t.x,y:t.y}}var u=n?un(n):null;if(u!=null){var d=u==="y"?"height":"width";switch(i){case no:c[u]=c[u]-(t[d]/2-r[d]/2);break;case sn:c[u]=c[u]+(t[d]/2-r[d]/2);break;default:}}return c}a(Ca,"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,s=i===void 0?e.strategy:i,l=r.boundary,c=l===void 0?S1:l,u=r.rootBoundary,d=u===void 0?il:u,p=r.elementContext,m=p===void 0?Qn:p,f=r.altBoundary,v=f===void 0?!1:f,h=r.padding,y=h===void 0?0:h,x=ya(typeof y!="number"?y:va(y,No)),E=m===Qn?I1:Qn,g=e.rects.popper,b=e.elements[v?E:m],M=Xu(or(b)?b:b.contextElement||gt(e.elements.popper),c,d,s),C=nr(e.elements.reference),S=Ca({reference:C,element:g,strategy:"absolute",placement:n}),P=oi(Object.assign({},g,S)),k=m===Qn?P:C,w={top:M.top-k.top+x.top,bottom:k.bottom-M.bottom+x.bottom,left:M.left-k.left+x.left,right:k.right-M.right+x.right},T=e.modifiersData.offset;if(m===Qn&&T){var A=T[n];Object.keys(w).forEach(function(N){var R=[qe,Ge].indexOf(N)>=0?1:-1,B=[Ve,Ge].indexOf(N)>=0?"y":"x";w[N]+=A[B]*R})}return w}a(Cr,"detectOverflow");function Yu(e,t){t===void 0&&(t={});var r=t,o=r.placement,n=r.boundary,i=r.rootBoundary,s=r.padding,l=r.flipVariations,c=r.allowedAutoPlacements,u=c===void 0?al:c,d=ir(o),p=d?l?qu:qu.filter(function(v){return ir(v)===d}):No,m=p.filter(function(v){return u.indexOf(v)>=0});m.length===0&&(m=p);var f=m.reduce(function(v,h){return v[h]=Cr(e,{placement:h,boundary:n,rootBoundary:i,padding:s})[at(h)],v},{});return Object.keys(f).sort(function(v,h){return f[v]-f[h]})}a(Yu,"computeAutoPlacement");function vv(e){if(at(e)===nl)return[];var t=ri(e);return[ll(e),t,ll(t)]}a(vv,"getExpandedFallbackPlacements");function Cv(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,l=s===void 0?!0:s,c=r.fallbackPlacements,u=r.padding,d=r.boundary,p=r.rootBoundary,m=r.altBoundary,f=r.flipVariations,v=f===void 0?!0:f,h=r.allowedAutoPlacements,y=t.options.placement,x=at(y),E=x===y,g=c||(E||!v?[ri(y)]:vv(y)),b=[y].concat(g).reduce(function(Z,J){return Z.concat(at(J)===nl?Yu(t,{placement:J,boundary:d,rootBoundary:p,padding:u,flipVariations:v,allowedAutoPlacements:h}):J)},[]),M=t.rects.reference,C=t.rects.popper,S=new Map,P=!0,k=b[0],w=0;w<b.length;w++){var T=b[w],A=at(T),N=ir(T)===no,R=[Ve,Ge].indexOf(A)>=0,B=R?"width":"height",H=Cr(t,{placement:T,boundary:d,rootBoundary:p,altBoundary:m,padding:u}),D=R?N?qe:_e:N?Ge:Ve;M[B]>C[B]&&(D=ri(D));var F=ri(D),L=[];if(i&&L.push(H[A]<=0),l&&L.push(H[D]<=0,H[F]<=0),L.every(function(Z){return Z})){k=T,P=!1;break}S.set(T,L)}if(P)for(var W=v?3:1,_=a(function(J){var K=b.find(function(U){var q=S.get(U);if(q)return q.slice(0,J).every(function(ce){return ce})});if(K)return k=K,"break"},"_loop"),V=W;V>0;V--){var j=_(V);if(j==="break")break}t.placement!==k&&(t.modifiersData[o]._skip=!0,t.placement=k,t.reset=!0)}}a(Cv,"flip");var W1={name:"flip",enabled:!0,phase:"main",fn:Cv,requiresIfExists:["offset"],data:{_skip:!1}};function U1(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(U1,"getSideOffsets");function _1(e){return[Ve,qe,Ge,_e].some(function(t){return e[t]>=0})}a(_1,"isAnySideFullyClipped");function xv(e){var t=e.state,r=e.name,o=t.rects.reference,n=t.rects.popper,i=t.modifiersData.preventOverflow,s=Cr(t,{elementContext:"reference"}),l=Cr(t,{altBoundary:!0}),c=U1(s,o),u=U1(l,n,i),d=_1(c),p=_1(u);t.modifiersData[r]={referenceClippingOffsets:c,popperEscapeOffsets:u,isReferenceHidden:d,hasPopperEscaped:p},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":d,"data-popper-escaped":p})}a(xv,"hide");var z1={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:xv};function Tv(e,t,r){var o=at(e),n=[_e,Ve].indexOf(o)>=0?-1:1,i=typeof r=="function"?r(Object.assign({},t,{placement:e})):r,s=i[0],l=i[1];return s=s||0,l=(l||0)*n,[_e,qe].indexOf(o)>=0?{x:l,y:s}:{x:s,y:l}}a(Tv,"distanceAndSkiddingToXY");function Ev(e){var t=e.state,r=e.options,o=e.name,n=r.offset,i=n===void 0?[0,0]:n,s=al.reduce(function(d,p){return d[p]=Tv(p,t.rects,i),d},{}),l=s[t.placement],c=l.x,u=l.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=c,t.modifiersData.popperOffsets.y+=u),t.modifiersData[o]=s}a(Ev,"offset");var $1={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:Ev};function wv(e){var t=e.state,r=e.name;t.modifiersData[r]=Ca({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})}a(wv,"popperOffsets");var j1={name:"popperOffsets",enabled:!0,phase:"read",fn:wv,data:{}};function Qu(e){return e==="x"?"y":"x"}a(Qu,"getAltAxis");function kv(e){var t=e.state,r=e.options,o=e.name,n=r.mainAxis,i=n===void 0?!0:n,s=r.altAxis,l=s===void 0?!1:s,c=r.boundary,u=r.rootBoundary,d=r.altBoundary,p=r.padding,m=r.tether,f=m===void 0?!0:m,v=r.tetherOffset,h=v===void 0?0:v,y=Cr(t,{boundary:c,rootBoundary:u,padding:p,altBoundary:d}),x=at(t.placement),E=ir(t.placement),g=!E,b=un(x),M=Qu(b),C=t.modifiersData.popperOffsets,S=t.rects.reference,P=t.rects.popper,k=typeof h=="function"?h(Object.assign({},t.rects,{placement:t.placement})):h,w=typeof k=="number"?{mainAxis:k,altAxis:k}:Object.assign({mainAxis:0,altAxis:0},k),T=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,A={x:0,y:0};if(C){if(i){var N,R=b==="y"?Ve:_e,B=b==="y"?Ge:qe,H=b==="y"?"height":"width",D=C[b],F=D+y[R],L=D-y[B],W=f?-P[H]/2:0,_=E===no?S[H]:P[H],V=E===no?-P[H]:-S[H],j=t.elements.arrow,Z=f&&j?cn(j):{width:0,height:0},J=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:ba(),K=J[R],U=J[B],q=dn(0,S[H],Z[H]),ce=g?S[H]/2-W-q-K-w.mainAxis:_-q-K-w.mainAxis,ue=g?-S[H]/2+W+q+U+w.mainAxis:V+q+U+w.mainAxis,Ee=t.elements.arrow&&vr(t.elements.arrow),Me=Ee?b==="y"?Ee.clientTop||0:Ee.clientLeft||0:0,Ye=(N=T==null?void 0:T[b])!=null?N:0,lt=D+ce-Ye-Me,Mt=D+ue-Ye,ct=dn(f?ln(F,lt):F,D,f?yr(L,Mt):L);C[b]=ct,A[b]=ct-D}if(l){var bt,Qe=b==="x"?Ve:_e,yt=b==="x"?Ge:qe,Be=C[M],$e=M==="y"?"height":"width",le=Be+y[Qe],ye=Be-y[yt],Te=[Ve,_e].indexOf(x)!==-1,ne=(bt=T==null?void 0:T[M])!=null?bt:0,Fe=Te?le:Be-S[$e]-P[$e]-ne+w.altAxis,Nt=Te?Be+S[$e]+P[$e]-ne-w.altAxis:ye,St=f&&Te?B1(Fe,Be,Nt):dn(f?Fe:le,Be,f?Nt:ye);C[M]=St,A[M]=St-Be}t.modifiersData[o]=A}}a(kv,"preventOverflow");var Z1={name:"preventOverflow",enabled:!0,phase:"main",fn:kv,requiresIfExists:["offset"]};function ed(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}a(ed,"getHTMLElementScroll");function td(e){return e===Re(e)||!Xe(e)?mn(e):ed(e)}a(td,"getNodeScroll");function Pv(e){var t=e.getBoundingClientRect(),r=io(t.width)/e.offsetWidth||1,o=io(t.height)/e.offsetHeight||1;return r!==1||o!==1}a(Pv,"isElementScaled");function rd(e,t,r){r===void 0&&(r=!1);var o=Xe(t),n=Xe(t)&&Pv(t),i=gt(t),s=nr(e,n,r),l={scrollLeft:0,scrollTop:0},c={x:0,y:0};return(o||!o&&!r)&&((it(t)!=="body"||fn(i))&&(l=td(t)),Xe(t)?(c=nr(t,!0),c.x+=t.clientLeft,c.y+=t.clientTop):i&&(c.x=pn(i))),{x:s.left+l.scrollLeft-c.x,y:s.top+l.scrollTop-c.y,width:s.width,height:s.height}}a(rd,"getCompositeRect");function Av(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(l){if(!r.has(l)){var c=t.get(l);c&&n(c)}}),o.push(i)}return a(n,"sort"),e.forEach(function(i){r.has(i.name)||n(i)}),o}a(Av,"order");function od(e){var t=Av(e);return R1.reduce(function(r,o){return r.concat(t.filter(function(n){return n.phase===o}))},[])}a(od,"orderModifiers");function nd(e){var t;return function(){return t||(t=new Promise(function(r){Promise.resolve().then(function(){t=void 0,r(e())})})),t}}a(nd,"debounce");function id(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(id,"mergeByName");var q1={placement:"bottom",modifiers:[],strategy:"absolute"};function J1(){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(J1,"areValidElements");function K1(e){e===void 0&&(e={});var t=e,r=t.defaultModifiers,o=r===void 0?[]:r,n=t.defaultOptions,i=n===void 0?q1:n;return a(function(l,c,u){u===void 0&&(u=i);var d={placement:"bottom",orderedModifiers:[],options:Object.assign({},q1,i),modifiersData:{},elements:{reference:l,popper:c},attributes:{},styles:{}},p=[],m=!1,f={state:d,setOptions:a(function(x){var E=typeof x=="function"?x(d.options):x;h(),d.options=Object.assign({},i,d.options,E),d.scrollParents={reference:or(l)?So(l):l.contextElement?So(l.contextElement):[],popper:So(c)};var g=od(id([].concat(o,d.options.modifiers)));return d.orderedModifiers=g.filter(function(b){return b.enabled}),v(),f.update()},"setOptions"),forceUpdate:a(function(){if(!m){var x=d.elements,E=x.reference,g=x.popper;if(J1(E,g)){d.rects={reference:rd(E,vr(g),d.options.strategy==="fixed"),popper:cn(g)},d.reset=!1,d.placement=d.options.placement,d.orderedModifiers.forEach(function(w){return d.modifiersData[w.name]=Object.assign({},w.data)});for(var b=0;b<d.orderedModifiers.length;b++){if(d.reset===!0){d.reset=!1,b=-1;continue}var M=d.orderedModifiers[b],C=M.fn,S=M.options,P=S===void 0?{}:S,k=M.name;typeof C=="function"&&(d=C({state:d,options:P,name:k,instance:f})||d)}}}},"forceUpdate"),update:nd(function(){return new Promise(function(y){f.forceUpdate(),y(d)})}),destroy:a(function(){h(),m=!0},"destroy")};if(!J1(l,c))return f;f.setOptions(u).then(function(y){!m&&u.onFirstUpdate&&u.onFirstUpdate(y)});function v(){d.orderedModifiers.forEach(function(y){var x=y.name,E=y.options,g=E===void 0?{}:E,b=y.effect;if(typeof b=="function"){var M=b({state:d,name:x,instance:f,options:g}),C=a(function(){},"noopFn");p.push(M||C)}})}a(v,"runModifierEffects");function h(){p.forEach(function(y){return y()}),p=[]}return a(h,"cleanupModifierEffects"),f},"createPopper")}a(K1,"popperGenerator");var Mv=[F1,j1,V1,fa,$1,W1,Z1,D1,z1],ad=K1({defaultModifiers:Mv});var Nv="tippy-box",ig="tippy-content",Sv="tippy-backdrop",ag="tippy-arrow",sg="tippy-svg-arrow",gn={passive:!0,capture:!0},lg=a(function(){return document.body},"TIPPY_DEFAULT_APPEND_TO");function sd(e,t,r){if(Array.isArray(e)){var o=e[t];return o==null?Array.isArray(r)?r[t]:r:o}return e}a(sd,"getValueAtIndexOrReturn");function pd(e,t){var r={}.toString.call(e);return r.indexOf("[object")===0&&r.indexOf(t+"]")>-1}a(pd,"isType");function cg(e,t){return typeof e=="function"?e.apply(void 0,t):e}a(cg,"invokeWithArgsOrReturn");function G1(e,t){if(t===0)return e;var r;return function(o){clearTimeout(r),r=setTimeout(function(){e(o)},t)}}a(G1,"debounce");function Iv(e){return e.split(/\s+/).filter(Boolean)}a(Iv,"splitBySpaces");function ni(e){return[].concat(e)}a(ni,"normalizeToArray");function X1(e,t){e.indexOf(t)===-1&&e.push(t)}a(X1,"pushIfUnique");function Rv(e){return e.filter(function(t,r){return e.indexOf(t)===r})}a(Rv,"unique");function Lv(e){return e.split("-")[0]}a(Lv,"getBasePlacement");function dl(e){return[].slice.call(e)}a(dl,"arrayFrom");function Y1(e){return Object.keys(e).reduce(function(t,r){return e[r]!==void 0&&(t[r]=e[r]),t},{})}a(Y1,"removeUndefinedProps");function xa(){return document.createElement("div")}a(xa,"div");function ml(e){return["Element","Fragment"].some(function(t){return pd(e,t)})}a(ml,"isElement");function Bv(e){return pd(e,"NodeList")}a(Bv,"isNodeList");function Dv(e){return pd(e,"MouseEvent")}a(Dv,"isMouseEvent");function Hv(e){return!!(e&&e._tippy&&e._tippy.reference===e)}a(Hv,"isReferenceElement");function Vv(e){return ml(e)?[e]:Bv(e)?dl(e):Array.isArray(e)?e:dl(document.querySelectorAll(e))}a(Vv,"getArrayOfElements");function ld(e,t){e.forEach(function(r){r&&(r.style.transitionDuration=t+"ms")})}a(ld,"setTransitionDuration");function Q1(e,t){e.forEach(function(r){r&&r.setAttribute("data-state",t)})}a(Q1,"setVisibilityState");function Fv(e){var t,r=ni(e),o=r[0];return o!=null&&(t=o.ownerDocument)!=null&&t.body?o.ownerDocument:document}a(Fv,"getOwnerDocument");function Ov(e,t){var r=t.clientX,o=t.clientY;return e.every(function(n){var i=n.popperRect,s=n.popperState,l=n.props,c=l.interactiveBorder,u=Lv(s.placement),d=s.modifiersData.offset;if(!d)return!0;var p=u==="bottom"?d.top.y:0,m=u==="top"?d.bottom.y:0,f=u==="right"?d.left.x:0,v=u==="left"?d.right.x:0,h=i.top-o+p>c,y=o-i.bottom-m>c,x=i.left-r+f>c,E=r-i.right-v>c;return h||y||x||E})}a(Ov,"isCursorOutsideInteractiveBorder");function cd(e,t,r){var o=t+"EventListener";["transitionend","webkitTransitionEnd"].forEach(function(n){e[o](n,r)})}a(cd,"updateTransitionEndListener");function eg(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(eg,"actualContains");var Ur={isTouch:!1},tg=0;function Wv(){Ur.isTouch||(Ur.isTouch=!0,window.performance&&document.addEventListener("mousemove",ug))}a(Wv,"onDocumentTouchStart");function ug(){var e=performance.now();e-tg<20&&(Ur.isTouch=!1,document.removeEventListener("mousemove",ug)),tg=e}a(ug,"onDocumentMouseMove");function Uv(){var e=document.activeElement;if(Hv(e)){var t=e._tippy;e.blur&&!t.state.isVisible&&e.blur()}}a(Uv,"onWindowBlur");function _v(){document.addEventListener("touchstart",Wv,gn),window.addEventListener("blur",Uv)}a(_v,"bindGlobalEventListeners");var zv=typeof window!="undefined"&&typeof document!="undefined",$v=zv?!!window.msCrypto:!1;var jv={animateFill:!1,followCursor:!1,inlinePositioning:!1,sticky:!1},Zv={allowHTML:!1,animation:"fade",arrow:!0,content:"",inertia:!1,maxWidth:350,role:"tooltip",theme:"",zIndex:9999},xr=Object.assign({appendTo:lg,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},jv,Zv),qv=Object.keys(xr),Jv=a(function(t){var r=Object.keys(t);r.forEach(function(o){xr[o]=t[o]})},"setDefaultProps");function dg(e){var t=e.plugins||[],r=t.reduce(function(o,n){var i=n.name,s=n.defaultValue;if(i){var l;o[i]=e[i]!==void 0?e[i]:(l=xr[i])!=null?l:s}return o},{});return Object.assign({},e,r)}a(dg,"getExtendedPassedProps");function Kv(e,t){var r=t?Object.keys(dg(Object.assign({},xr,{plugins:t}))):qv,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(Kv,"getDataAttributeProps");function rg(e,t){var r=Object.assign({},t,{content:cg(t.content,[e])},t.ignoreAttributes?{}:Kv(e,t.plugins));return r.aria=Object.assign({},xr.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(rg,"evaluateProps");var Gv=a(function(){return"innerHTML"},"innerHTML");function dd(e,t){e[Gv()]=t}a(dd,"dangerouslySetInnerHTML");function og(e){var t=xa();return e===!0?t.className=ag:(t.className=sg,ml(e)?t.appendChild(e):dd(t,e)),t}a(og,"createArrowElement");function ng(e,t){ml(t.content)?(dd(e,""),e.appendChild(t.content)):typeof t.content!="function"&&(t.allowHTML?dd(e,t.content):e.textContent=t.content)}a(ng,"setContent");function md(e){var t=e.firstElementChild,r=dl(t.children);return{box:t,content:r.find(function(o){return o.classList.contains(ig)}),arrow:r.find(function(o){return o.classList.contains(ag)||o.classList.contains(sg)}),backdrop:r.find(function(o){return o.classList.contains(Sv)})}}a(md,"getChildren");function mg(e){var t=xa(),r=xa();r.className=Nv,r.setAttribute("data-state","hidden"),r.setAttribute("tabindex","-1");var o=xa();o.className=ig,o.setAttribute("data-state","hidden"),ng(o,e.props),t.appendChild(r),r.appendChild(o),n(e.props,e.props);function n(i,s){var l=md(t),c=l.box,u=l.content,d=l.arrow;s.theme?c.setAttribute("data-theme",s.theme):c.removeAttribute("data-theme"),typeof s.animation=="string"?c.setAttribute("data-animation",s.animation):c.removeAttribute("data-animation"),s.inertia?c.setAttribute("data-inertia",""):c.removeAttribute("data-inertia"),c.style.maxWidth=typeof s.maxWidth=="number"?s.maxWidth+"px":s.maxWidth,s.role?c.setAttribute("role",s.role):c.removeAttribute("role"),(i.content!==s.content||i.allowHTML!==s.allowHTML)&&ng(u,e.props),s.arrow?d?i.arrow!==s.arrow&&(c.removeChild(d),c.appendChild(og(s.arrow))):c.appendChild(og(s.arrow)):d&&c.removeChild(d)}return a(n,"onUpdate"),{popper:t,onUpdate:n}}a(mg,"render");mg.$$tippy=!0;var Xv=1,ul=[],ud=[];function Yv(e,t){var r=rg(e,Object.assign({},xr,dg(Y1(t)))),o,n,i,s=!1,l=!1,c=!1,u=!1,d,p,m,f=[],v=G1(lt,r.interactiveDebounce),h,y=Xv++,x=null,E=Rv(r.plugins),g={isEnabled:!0,isVisible:!1,isDestroyed:!1,isMounted:!1,isShown:!1},b={id:y,reference:e,popper:xa(),popperInstance:x,props:r,state:g,plugins:E,clearDelayTimeouts:Fe,setProps:Nt,setContent:St,show:Ar,hide:Mr,hideWithInteractivity:zo,enable:Te,disable:ne,unmount:$o,destroy:jo};if(!r.render)return b;var M=r.render(b),C=M.popper,S=M.onUpdate;C.setAttribute("data-tippy-root",""),C.id="tippy-"+b.id,b.popper=C,e._tippy=b,C._tippy=b;var P=E.map(function(O){return O.fn(b)}),k=e.hasAttribute("aria-expanded");return Ee(),W(),D(),F("onCreate",[b]),r.showOnCreate&&le(),C.addEventListener("mouseenter",function(){b.props.interactive&&b.state.isVisible&&b.clearDelayTimeouts()}),C.addEventListener("mouseleave",function(){b.props.interactive&&b.props.trigger.indexOf("mouseenter")>=0&&R().addEventListener("mousemove",v)}),b;function w(){var O=b.props.touch;return Array.isArray(O)?O:[O,0]}a(w,"getNormalizedTouchSettings");function T(){return w()[0]==="hold"}a(T,"getIsCustomTouchBehavior");function A(){var O;return!!((O=b.props.render)!=null&&O.$$tippy)}a(A,"getIsDefaultRenderFn");function N(){return h||e}a(N,"getCurrentTarget");function R(){var O=N().parentNode;return O?Fv(O):document}a(R,"getDocument");function B(){return md(C)}a(B,"getDefaultTemplateChildren");function H(O){return b.state.isMounted&&!b.state.isVisible||Ur.isTouch||d&&d.type==="focus"?0:sd(b.props.delay,O?0:1,xr.delay)}a(H,"getDelay");function D(O){O===void 0&&(O=!1),C.style.pointerEvents=b.props.interactive&&!O?"":"none",C.style.zIndex=""+b.props.zIndex}a(D,"handleStyles");function F(O,z,$){if($===void 0&&($=!0),P.forEach(function(Y){Y[O]&&Y[O].apply(Y,z)}),$){var G;(G=b.props)[O].apply(G,z)}}a(F,"invokeHook");function L(){var O=b.props.aria;if(O.content){var z="aria-"+O.content,$=C.id,G=ni(b.props.triggerTarget||e);G.forEach(function(Y){var me=Y.getAttribute(z);if(b.state.isVisible)Y.setAttribute(z,me?me+" "+$:$);else{var Se=me&&me.replace($,"").trim();Se?Y.setAttribute(z,Se):Y.removeAttribute(z)}})}}a(L,"handleAriaContentAttribute");function W(){if(!(k||!b.props.aria.expanded)){var O=ni(b.props.triggerTarget||e);O.forEach(function(z){b.props.interactive?z.setAttribute("aria-expanded",b.state.isVisible&&z===N()?"true":"false"):z.removeAttribute("aria-expanded")})}}a(W,"handleAriaExpandedAttribute");function _(){R().removeEventListener("mousemove",v),ul=ul.filter(function(O){return O!==v})}a(_,"cleanupInteractiveMouseListeners");function V(O){if(!(Ur.isTouch&&(c||O.type==="mousedown"))){var z=O.composedPath&&O.composedPath()[0]||O.target;if(!(b.props.interactive&&eg(C,z))){if(ni(b.props.triggerTarget||e).some(function($){return eg($,z)})){if(Ur.isTouch||b.state.isVisible&&b.props.trigger.indexOf("click")>=0)return}else F("onClickOutside",[b,O]);b.props.hideOnClick===!0&&(b.clearDelayTimeouts(),b.hide(),l=!0,setTimeout(function(){l=!1}),b.state.isMounted||K())}}}a(V,"onDocumentPress");function j(){c=!0}a(j,"onTouchMove");function Z(){c=!1}a(Z,"onTouchStart");function J(){var O=R();O.addEventListener("mousedown",V,!0),O.addEventListener("touchend",V,gn),O.addEventListener("touchstart",Z,gn),O.addEventListener("touchmove",j,gn)}a(J,"addDocumentPress");function K(){var O=R();O.removeEventListener("mousedown",V,!0),O.removeEventListener("touchend",V,gn),O.removeEventListener("touchstart",Z,gn),O.removeEventListener("touchmove",j,gn)}a(K,"removeDocumentPress");function U(O,z){ce(O,function(){!b.state.isVisible&&C.parentNode&&C.parentNode.contains(C)&&z()})}a(U,"onTransitionedOut");function q(O,z){ce(O,z)}a(q,"onTransitionedIn");function ce(O,z){var $=B().box;function G(Y){Y.target===$&&(cd($,"remove",G),z())}if(a(G,"listener"),O===0)return z();cd($,"remove",p),cd($,"add",G),p=G}a(ce,"onTransitionEnd");function ue(O,z,$){$===void 0&&($=!1);var G=ni(b.props.triggerTarget||e);G.forEach(function(Y){Y.addEventListener(O,z,$),f.push({node:Y,eventType:O,handler:z,options:$})})}a(ue,"on");function Ee(){T()&&(ue("touchstart",Ye,{passive:!0}),ue("touchend",Mt,{passive:!0})),Iv(b.props.trigger).forEach(function(O){if(O!=="manual")switch(ue(O,Ye),O){case"mouseenter":ue("mouseleave",Mt);break;case"focus":ue($v?"focusout":"blur",ct);break;case"focusin":ue("focusout",ct);break}})}a(Ee,"addListeners");function Me(){f.forEach(function(O){var z=O.node,$=O.eventType,G=O.handler,Y=O.options;z.removeEventListener($,G,Y)}),f=[]}a(Me,"removeListeners");function Ye(O){var z,$=!1;if(!(!b.state.isEnabled||bt(O)||l)){var G=((z=d)==null?void 0:z.type)==="focus";d=O,h=O.currentTarget,W(),!b.state.isVisible&&Dv(O)&&ul.forEach(function(Y){return Y(O)}),O.type==="click"&&(b.props.trigger.indexOf("mouseenter")<0||s)&&b.props.hideOnClick!==!1&&b.state.isVisible?$=!0:le(O),O.type==="click"&&(s=!$),$&&!G&&ye(O)}}a(Ye,"onTrigger");function lt(O){var z=O.target,$=N().contains(z)||C.contains(z);if(!(O.type==="mousemove"&&$)){var G=$e().concat(C).map(function(Y){var me,Se=Y._tippy,Ne=(me=Se.popperInstance)==null?void 0:me.state;return Ne?{popperRect:Y.getBoundingClientRect(),popperState:Ne,props:r}:null}).filter(Boolean);Ov(G,O)&&(_(),ye(O))}}a(lt,"onMouseMove");function Mt(O){var z=bt(O)||b.props.trigger.indexOf("click")>=0&&s;if(!z){if(b.props.interactive){b.hideWithInteractivity(O);return}ye(O)}}a(Mt,"onMouseLeave");function ct(O){b.props.trigger.indexOf("focusin")<0&&O.target!==N()||b.props.interactive&&O.relatedTarget&&C.contains(O.relatedTarget)||ye(O)}a(ct,"onBlurOrFocusOut");function bt(O){return Ur.isTouch?T()!==O.type.indexOf("touch")>=0:!1}a(bt,"isEventListenerStopped");function Qe(){yt();var O=b.props,z=O.popperOptions,$=O.placement,G=O.offset,Y=O.getReferenceClientRect,me=O.moveTransition,Se=A()?md(C).arrow:null,Ne=Y?{getBoundingClientRect:Y,contextElement:Y.contextElement||N()}:e,Zo={name:"$$tippy",enabled:!0,phase:"beforeWrite",requires:["computeStyles"],fn:a(function(Za){var Bn=Za.state;if(A()){var ob=B(),mc=ob.box;["placement","reference-hidden","escaped"].forEach(function(qa){qa==="placement"?mc.setAttribute("data-placement",Bn.placement):Bn.attributes.popper["data-popper-"+qa]?mc.setAttribute("data-"+qa,""):mc.removeAttribute("data-"+qa)}),Bn.attributes.popper={}}},"fn")},qo=[{name:"offset",options:{offset:G}},{name:"preventOverflow",options:{padding:{top:2,bottom:2,left:5,right:5}}},{name:"flip",options:{padding:5}},{name:"computeStyles",options:{adaptive:!me}},Zo];A()&&Se&&qo.push({name:"arrow",options:{element:Se,padding:3}}),qo.push.apply(qo,(z==null?void 0:z.modifiers)||[]),b.popperInstance=ad(Ne,C,Object.assign({},z,{placement:$,onFirstUpdate:m,modifiers:qo}))}a(Qe,"createPopperInstance");function yt(){b.popperInstance&&(b.popperInstance.destroy(),b.popperInstance=null)}a(yt,"destroyPopperInstance");function Be(){var O=b.props.appendTo,z,$=N();b.props.interactive&&O===lg||O==="parent"?z=$.parentNode:z=cg(O,[$]),z.contains(C)||z.appendChild(C),b.state.isMounted=!0,Qe()}a(Be,"mount");function $e(){return dl(C.querySelectorAll("[data-tippy-root]"))}a($e,"getNestedPopperTree");function le(O){b.clearDelayTimeouts(),O&&F("onTrigger",[b,O]),J();var z=H(!0),$=w(),G=$[0],Y=$[1];Ur.isTouch&&G==="hold"&&Y&&(z=Y),z?o=setTimeout(function(){b.show()},z):b.show()}a(le,"scheduleShow");function ye(O){if(b.clearDelayTimeouts(),F("onUntrigger",[b,O]),!b.state.isVisible){K();return}if(!(b.props.trigger.indexOf("mouseenter")>=0&&b.props.trigger.indexOf("click")>=0&&["mouseleave","mousemove"].indexOf(O.type)>=0&&s)){var z=H(!1);z?n=setTimeout(function(){b.state.isVisible&&b.hide()},z):i=requestAnimationFrame(function(){b.hide()})}}a(ye,"scheduleHide");function Te(){b.state.isEnabled=!0}a(Te,"enable");function ne(){b.hide(),b.state.isEnabled=!1}a(ne,"disable");function Fe(){clearTimeout(o),clearTimeout(n),cancelAnimationFrame(i)}a(Fe,"clearDelayTimeouts");function Nt(O){if(!b.state.isDestroyed){F("onBeforeUpdate",[b,O]),Me();var z=b.props,$=rg(e,Object.assign({},z,Y1(O),{ignoreAttributes:!0}));b.props=$,Ee(),z.interactiveDebounce!==$.interactiveDebounce&&(_(),v=G1(lt,$.interactiveDebounce)),z.triggerTarget&&!$.triggerTarget?ni(z.triggerTarget).forEach(function(G){G.removeAttribute("aria-expanded")}):$.triggerTarget&&e.removeAttribute("aria-expanded"),W(),D(),S&&S(z,$),b.popperInstance&&(Qe(),$e().forEach(function(G){requestAnimationFrame(G._tippy.popperInstance.forceUpdate)})),F("onAfterUpdate",[b,O])}}a(Nt,"setProps");function St(O){b.setProps({content:O})}a(St,"setContent");function Ar(){var O=b.state.isVisible,z=b.state.isDestroyed,$=!b.state.isEnabled,G=Ur.isTouch&&!b.props.touch,Y=sd(b.props.duration,0,xr.duration);if(!(O||z||$||G)&&!N().hasAttribute("disabled")&&(F("onShow",[b],!1),b.props.onShow(b)!==!1)){if(b.state.isVisible=!0,A()&&(C.style.visibility="visible"),D(),J(),b.state.isMounted||(C.style.transition="none"),A()){var me=B(),Se=me.box,Ne=me.content;ld([Se,Ne],0)}m=a(function(){var qo;if(!(!b.state.isVisible||u)){if(u=!0,C.offsetHeight,C.style.transition=b.props.moveTransition,A()&&b.props.animation){var dc=B(),Za=dc.box,Bn=dc.content;ld([Za,Bn],Y),Q1([Za,Bn],"visible")}L(),W(),X1(ud,b),(qo=b.popperInstance)==null||qo.forceUpdate(),F("onMount",[b]),b.props.animation&&A()&&q(Y,function(){b.state.isShown=!0,F("onShown",[b])})}},"onFirstUpdate"),Be()}}a(Ar,"show");function Mr(){var O=!b.state.isVisible,z=b.state.isDestroyed,$=!b.state.isEnabled,G=sd(b.props.duration,1,xr.duration);if(!(O||z||$)&&(F("onHide",[b],!1),b.props.onHide(b)!==!1)){if(b.state.isVisible=!1,b.state.isShown=!1,u=!1,s=!1,A()&&(C.style.visibility="hidden"),_(),K(),D(!0),A()){var Y=B(),me=Y.box,Se=Y.content;b.props.animation&&(ld([me,Se],G),Q1([me,Se],"hidden"))}L(),W(),b.props.animation?A()&&U(G,b.unmount):b.unmount()}}a(Mr,"hide");function zo(O){R().addEventListener("mousemove",v),X1(ul,v),v(O)}a(zo,"hideWithInteractivity");function $o(){b.state.isVisible&&b.hide(),b.state.isMounted&&(yt(),$e().forEach(function(O){O._tippy.unmount()}),C.parentNode&&C.parentNode.removeChild(C),ud=ud.filter(function(O){return O!==b}),b.state.isMounted=!1,F("onHidden",[b]))}a($o,"unmount");function jo(){b.state.isDestroyed||(b.clearDelayTimeouts(),b.unmount(),Me(),delete e._tippy,b.state.isDestroyed=!0,F("onDestroy",[b]))}a(jo,"destroy")}a(Yv,"createTippy");function Ta(e,t){t===void 0&&(t={});var r=xr.plugins.concat(t.plugins||[]);_v();var o=Object.assign({},t,{plugins:r}),n=Vv(e);if(0)var i,s;var l=n.reduce(function(c,u){var d=u&&Yv(u,o);return d&&c.push(d),c},[]);return ml(e)?l[0]:l}a(Ta,"tippy");Ta.defaultProps=xr;Ta.setDefaultProps=Jv;Ta.currentInput=Ur;var _O=Object.assign({},fa,{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")});Ta.setDefaultProps({render:mg});var pg=Ta;import{jsx as fg}from"react/jsx-runtime";var gg=a(({items:e,command:t,selected:r=0})=>e.length===0?null:fg("div",{className:"courier-bg-white dark:courier-bg-gray-800 courier-rounded-md courier-shadow-lg courier-border courier-border-border courier-max-h-60 courier-overflow-y-auto courier-z-50",children:e.map((o,n)=>fg("button",{className:I("courier-w-full courier-px-4 courier-py-2 courier-text-left courier-text-sm hover:courier-bg-gray-100 dark:hover:courier-bg-gray-700 focus:courier-bg-gray-100 dark:focus:courier-bg-gray-700 focus:courier-outline-none",n===r?"courier-bg-gray-100 dark:courier-bg-gray-700":""),onClick:()=>t(o),children:o},n))}),"VariableSuggestions");var Tr={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 To(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,isInvalid:!1}},{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 c,u;if(!r)return!1;let l=((c=Tr.items)==null?void 0:c.call(Tr,{query:(e==null?void 0:e.props).query||"",editor:(e==null?void 0:e.props).editor}))[i];return l?((u=Tr.command)==null||u.call(Tr,{editor:r.editor,range:r.range,props:l}),!0):!1},"selectItem");return{onStart:i=>{r=i,e=new Qv(gg,{props:{...i,selected:0},editor:i.editor}),i.clientRect&&(t=pg(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 c;if(!e||!r)return!1;let s=(c=Tr.items)==null?void 0:c.call(Tr,{query:e.props.query||"",editor:e.props.editor}),l=e.props.selected;if(i.event.key==="ArrowUp"){let u=(l-1+s.length)%s.length;return o(r,u),!0}if(i.event.key==="ArrowDown"){let u=(l+1)%s.length;return o(r,u),!0}return i.event.key==="Enter"?(i.event.preventDefault(),n(l)):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 nC}from"@tiptap/react";import{useAtomValue as iC}from"jotai";import{useCallback as Cd,useEffect as aC,useState as sC}from"react";import{useAtomValue as fd}from"jotai";import{useCallback as Io,useEffect as pl,useMemo as gd,useRef as Cg,useState as hd}from"react";import{createPortal as eC}from"react-dom";import{toast as tC}from"sonner";import{useEffect as hg,useRef as bg}from"react";import{jsx as yg}from"react/jsx-runtime";var vg=a(({items:e,onSelect:t,selectedIndex:r,anchorRef:o})=>{let n=bg(null),i=bg(null);return hg(()=>{i.current&&i.current.scrollIntoView({block:"nearest"})},[r]),hg(()=>{if(!n.current||!o.current)return;let s=o.current,l=n.current,c=s.getBoundingClientRect();l.style.position="fixed",l.style.left=`${c.left}px`,l.style.top=`${c.bottom+4}px`},[o,e]),e.length===0?null:yg("div",{ref:n,className:"courier-bg-white dark:courier-bg-gray-800 courier-rounded-md courier-shadow-lg courier-border courier-border-border courier-max-h-60 courier-overflow-y-auto courier-z-[9999]",style:{position:"fixed",width:"max-content",minWidth:"160px",maxWidth:"280px"},children:e.map((s,l)=>yg("button",{ref:l===r?i:void 0,className:I("courier-w-full courier-px-3 courier-py-1.5 courier-text-left courier-text-sm hover:courier-bg-gray-100 dark:hover:courier-bg-gray-700 focus:courier-bg-gray-100 dark:focus:courier-bg-gray-700 focus:courier-outline-none courier-truncate",l===r?"courier-bg-gray-100 dark:courier-bg-gray-700":""),onClick:c=>{c.preventDefault(),c.stopPropagation(),t(s)},onMouseDown:c=>{c.preventDefault()},title:s,children:s},s))})},"VariableAutocomplete");import{Fragment as rC,jsx as vd,jsxs as xg}from"react/jsx-runtime";var bd=50,yd=24,fl=a(({variableId:e,isInvalid:t,onUpdateAttributes:r,onDelete:o,icon:n,value:i,singleClickToEdit:s=!1,className:l,textColorOverride:c,getColors:u})=>{var F;let[d,p]=hd(!1),[m,f]=hd(""),[v,h]=hd(0),y=Cg(null),x=Cg(null),E=fd(Fn),g=fd(Ya),b=fd(Qa),M=gd(()=>b||!g||Object.keys(g).length===0?[]:To(g),[g,b]),C=gd(()=>M.length===0?[]:m?M.filter(L=>L.toLowerCase().includes(m.toLowerCase())):M,[M,m]),S=d&&C.length>0;pl(()=>{e===""&&!d&&(p(!0),f(""),h(0))},[e,d]),pl(()=>{!e||d||M.length>0&&!M.includes(e)&&(t||queueMicrotask(()=>{r({id:e,isInvalid:!0})}))},[e,M,t,d,r]),pl(()=>{if(d&&y.current){let L=y.current;L.textContent=e,L.focus(),requestAnimationFrame(()=>{if(L&&L.isConnected){let W=document.createRange();W.selectNodeContents(L),W.collapse(!1);let _=window.getSelection();_==null||_.removeAllRanges(),_==null||_.addRange(W)}})}},[d,e]);let P=Io(()=>{var _,V;p(!1);let L=(((_=y.current)==null?void 0:_.textContent)||"").trim();if(L===""){o();return}let W=!0;if(E!=null&&E.overrideFormatValidation?E.validate&&(W=E.validate(L)):(W=mt(L),W&&(E!=null&&E.validate)&&(W=E.validate(L))),W&&M.length>0&&(W=M.includes(L)),!W){let j=(V=E==null?void 0:E.onInvalid)!=null?V:"mark";if(E!=null&&E.invalidMessage){let Z=typeof E.invalidMessage=="function"?E.invalidMessage(L):E.invalidMessage;tC.error(Z)}if(j==="remove"){o();return}r({id:L,isInvalid:!0});return}r({id:L,isInvalid:!1})},[o,r,E,M]),k=Io(L=>{y.current&&(y.current.textContent=L),f(""),p(!1),r({id:L,isInvalid:!1})},[r]),w=Io(L=>{var W,_;if(S){if(L.key==="ArrowDown"){L.preventDefault(),h(V=>(V+1)%C.length);return}if(L.key==="ArrowUp"){L.preventDefault(),h(V=>(V-1+C.length)%C.length);return}if(L.key==="Enter"){L.preventDefault();let V=C[v];V?k(V):(W=y.current)==null||W.blur();return}if(L.key==="Tab"){L.preventDefault();let V=C[v];V&&k(V);return}}else if(L.key==="Enter"){L.preventDefault(),(_=y.current)==null||_.blur();return}L.key==="Escape"&&(L.preventDefault(),y.current&&(y.current.textContent=e),p(!1),f(""),e===""&&o())},[e,o,S,C,v,k]),T=Io(()=>{if(y.current){let L=y.current.textContent||"";if(L.length>bd){L=L.slice(0,bd),y.current.textContent=L;let W=document.createRange();W.selectNodeContents(y.current),W.collapse(!1);let _=window.getSelection();_==null||_.removeAllRanges(),_==null||_.addRange(W)}f(L),h(0)}},[]),A=Io(L=>{L.preventDefault();let W=L.clipboardData.getData("text/plain").slice(0,bd),_=window.getSelection();if(_&&_.rangeCount>0){let V=_.getRangeAt(0);V.deleteContents();let j=document.createTextNode(W);V.insertNode(j),V.setStartAfter(j),V.setEndAfter(j),_.removeAllRanges(),_.addRange(V),T()}},[T]),N=Io(L=>{L.stopPropagation(),d||p(!0)},[d]),R=gd(()=>{let L=e,W=i?`="${i}"`:"",_=`${L}${W}`,V=L.length>yd;return{displayText:`${V?`${L.slice(0,yd)}\u2026`:L}${W}`,fullText:_,showTitle:V}},[e,i]);pl(()=>{y.current&&!d&&(y.current.textContent=R.displayText)},[R.displayText,d]);let B=Io(L=>{L.stopPropagation()},[]),H=Io(L=>{L.stopPropagation()},[]),D=s?{onClick:N}:{onClick:H,onDoubleClick:N};return xg(rC,{children:[xg("span",{ref:x,className:I("courier-variable-chip",!t&&i&&"courier-variable-chip-has-value",t&&"courier-variable-chip-invalid",l),style:{direction:"ltr"},onMouseDown:B,...D,title:R.showTitle?R.fullText:void 0,children:[vd("span",{className:"courier-flex-shrink-0 courier-flex courier-items-center courier-pt-0.5",children:n}),vd("span",{ref:y,role:"textbox",contentEditable:d,suppressContentEditableWarning:!0,onBlur:P,onKeyDown:w,onInput:T,onPaste:A,onMouseDown:B,...s?{onClick:N}:{onClick:H,onDoubleClick:N},className:I("courier-outline-none courier-min-w-[1ch]",!d&&"courier-cursor-text"),style:{...c&&{color:c},maxWidth:`${yd}ch`,overflow:"hidden",textOverflow:d?"clip":"ellipsis",whiteSpace:"nowrap",direction:"ltr",unicodeBidi:"isolate"},children:!d&&R.displayText})]}),S&&eC(vd(vg,{items:C,onSelect:k,selectedIndex:v,anchorRef:x}),((F=x.current)==null?void 0:F.closest(".theme-container"))||document.body)]})},"VariableChipBase");import{jsx as Tg,jsxs as oC}from"react/jsx-runtime";var gl=a(({color:e="#1D4ED8"})=>oC("svg",{width:"16",height:"16",viewBox:"0 0 20 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:"courier-flex-shrink-0",children:[Tg("path",{d:"M5.75 0H7.25C7.65625 0 8 0.34375 8 0.75C8 1.1875 7.65625 1.5 7.25 1.5H5.75C5.03125 1.5 4.5 2.0625 4.5 2.75V4.1875C4.5 4.90625 4.1875 5.625 3.6875 6.125L2.78125 7L3.6875 7.90625C4.1875 8.40625 4.5 9.125 4.5 9.84375V11.25C4.5 11.9688 5.03125 12.5 5.75 12.5H7.25C7.65625 12.5 8 12.8438 8 13.25C8 13.6875 7.65625 14 7.25 14H5.75C4.21875 14 3 12.7812 3 11.25V9.84375C3 9.5 2.84375 9.1875 2.625 8.96875L1.21875 7.53125C0.90625 7.25 0.90625 6.78125 1.21875 6.46875L2.625 5.0625C2.84375 4.84375 3 4.53125 3 4.1875V2.75C3 1.25 4.21875 0 5.75 0ZM14.25 0C15.75 0 17 1.25 17 2.75V4.1875C17 4.53125 17.125 4.84375 17.3438 5.0625L18.7812 6.5C19.0625 6.78125 19.0625 7.25 18.7812 7.53125L17.3438 8.96875C17.125 9.1875 17 9.5 17 9.84375V11.25C17 12.7812 15.75 14 14.25 14H12.75C12.3125 14 12 13.6875 12 13.25C12 12.8438 12.3125 12.5 12.75 12.5H14.25C14.9375 12.5 15.5 11.9688 15.5 11.25V9.84375C15.5 9.125 15.7812 8.40625 16.2812 7.90625L17.1875 7L16.2812 6.125C15.7812 5.625 15.5 4.90625 15.5 4.1875V2.75C15.5 2.0625 14.9375 1.5 14.25 1.5H12.75C12.3125 1.5 12 1.1875 12 0.75C12 0.34375 12.3125 0 12.75 0H14.25Z",fill:e}),Tg("circle",{cx:"10",cy:"7",r:"2",fill:e})]}),"VariableIcon");import{jsx as xd}from"react/jsx-runtime";var Eg=a(({node:e,editor:t,getPos:r,updateAttributes:o})=>{let n=iC(Ko),i=e.attrs.id||"",s=n[i],l=e.attrs.isInvalid,[c,u]=sC(!1),d=Cd(()=>{if(typeof r=="function")try{let h=r();if(h==null){u(!1);return}let x=t.state.doc.resolve(h).parent;u(x&&x.type.name==="button")}catch{u(!1)}else u(!1)},[t,r]);aC(()=>{d();let h=a(()=>{d()},"handleUpdate");return t.on("update",h),t.on("selectionUpdate",h),()=>{t.off("update",h),t.off("selectionUpdate",h)}},[t,d]);let p=Cd(h=>{o(h)},[o]),m=Cd(()=>{if(typeof r=="function"){let h=r();typeof h=="number"&&t.chain().focus().deleteRange({from:h,to:h+e.nodeSize}).run()}},[t,r,e.nodeSize]),v=a((h,y)=>h?"#DC2626":y?"#1E40AF":"#B45309","getIconColor")(l,!!s);return xd(nC,{className:"courier-inline-block courier-max-w-full",children:xd(fl,{variableId:i,isInvalid:l,value:s,onUpdateAttributes:p,onDelete:m,icon:xd(gl,{color:v}),className:I("courier-variable-node",c&&"courier-variable-in-button"),textColorOverride:c?"#000000":void 0})})},"VariableView");var Ed=cC.create({name:"variable",group:"inline",inline:!0,selectable:!1,atom:!0,addAttributes(){return{id:{default:"",parseHTML:e=>e.getAttribute("data-id")||"",renderHTML:e=>({"data-id":e.id})},isInvalid:{default:!1,parseHTML:e=>e.getAttribute("data-invalid")==="true",renderHTML:e=>({"data-invalid":e.isInvalid?"true":void 0})}}},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 uC(Eg)}}),hn=Td.create({name:"variableInputRule",addInputRules(){return[new lC({find:/\{\{$/,handler:({range:e,chain:t})=>{t().deleteRange(e).insertContent([{type:"variable",attrs:{id:"",isInvalid:!1}}]).run()}})]}}),mC=Td.create({name:"variableSuggestion",addOptions(){return{HTMLAttributes:{},suggestion:{char:"{{",...Tr},variables:{},disableSuggestions:!1}},addProseMirrorPlugins(){return this.options.disableSuggestions?[]:[dC({editor:this.editor,...this.options.suggestion})]}}),pC=Td.create({name:"variableTypeHandler"});import{Extension as fC}from"@tiptap/core";import{Plugin as gC}from"@tiptap/pm/state";import{Slice as hC,Fragment as bC}from"@tiptap/pm/model";var bn=fC.create({name:"variablePaste",addProseMirrorPlugins(){return[new gC({props:{transformPastedHTML:e=>e.replace(/\{\{([^}]+)\}\}/g,(r,o)=>{let n=o.trim();return mt(n)?`<span data-variable="true" data-id="${n}"></span>`:r}),transformPastedText:(e,t,r)=>{let o=/\{\{([^}]+)\}\}/g;if(!o.test(e))return e;let{schema:n}=r.state,i=[],s=0,l;for(o.lastIndex=0;(l=o.exec(e))!==null;){if(l.index>s){let u=e.substring(s,l.index);u&&i.push(n.text(u))}let c=l[1].trim();if(n.nodes.variable&&mt(c))i.push(n.nodes.variable.create({id:c,isInvalid:!1}));else{let u=l[0];i.push(n.text(u))}s=l.index+l[0].length}if(s<e.length){let c=e.substring(s);c&&i.push(n.text(c))}if(i.length>0){let c=bC.from(i),u=new hC(c,0,0),d=r.state.tr.replaceSelection(u);return r.dispatch(d),e}return e}}})]}});import{Node as yC}from"@tiptap/core";import{NodeViewWrapper as vC,ReactNodeViewRenderer as CC}from"@tiptap/react";import{useCallback as wg}from"react";import{jsx as Ea,jsxs as wC}from"react/jsx-runtime";var xC=a(({color:e="#B45309"})=>wC("svg",{width:"14",height:"14",viewBox:"0 0 20 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:"courier-flex-shrink-0",children:[Ea("path",{d:"M5.75 0H7.25C7.65625 0 8 0.34375 8 0.75C8 1.1875 7.65625 1.5 7.25 1.5H5.75C5.03125 1.5 4.5 2.0625 4.5 2.75V4.1875C4.5 4.90625 4.1875 5.625 3.6875 6.125L2.78125 7L3.6875 7.90625C4.1875 8.40625 4.5 9.125 4.5 9.84375V11.25C4.5 11.9688 5.03125 12.5 5.75 12.5H7.25C7.65625 12.5 8 12.8438 8 13.25C8 13.6875 7.65625 14 7.25 14H5.75C4.21875 14 3 12.7812 3 11.25V9.84375C3 9.5 2.84375 9.1875 2.625 8.96875L1.21875 7.53125C0.90625 7.25 0.90625 6.78125 1.21875 6.46875L2.625 5.0625C2.84375 4.84375 3 4.53125 3 4.1875V2.75C3 1.25 4.21875 0 5.75 0ZM14.25 0C15.75 0 17 1.25 17 2.75V4.1875C17 4.53125 17.125 4.84375 17.3438 5.0625L18.7812 6.5C19.0625 6.78125 19.0625 7.25 18.7812 7.53125L17.3438 8.96875C17.125 9.1875 17 9.5 17 9.84375V11.25C17 12.7812 15.75 14 14.25 14H12.75C12.3125 14 12 13.6875 12 13.25C12 12.8438 12.3125 12.5 12.75 12.5H14.25C14.9375 12.5 15.5 11.9688 15.5 11.25V9.84375C15.5 9.125 15.7812 8.40625 16.2812 7.90625L17.1875 7L16.2812 6.125C15.7812 5.625 15.5 4.90625 15.5 4.1875V2.75C15.5 2.0625 14.9375 1.5 14.25 1.5H12.75C12.3125 1.5 12 1.1875 12 0.75C12 0.34375 12.3125 0 12.75 0H14.25Z",fill:e}),Ea("circle",{cx:"10",cy:"7",r:"2",fill:e})]}),"VariableChipIcon"),TC=a(e=>e?"#DC2626":"#B45309","getIconColor"),EC=a(({node:e,editor:t,getPos:r,updateAttributes:o})=>{let n=e.attrs.id||"",i=e.attrs.isInvalid||!1,s=wg(c=>{o(c)},[o]),l=wg(()=>{if(typeof r=="function"){let c=r();typeof c=="number"&&t.chain().focus().deleteRange({from:c,to:c+e.nodeSize}).run()}},[t,r,e.nodeSize]);return Ea(vC,{as:"span",className:"courier-inline",children:Ea(fl,{variableId:n,isInvalid:i,onUpdateAttributes:s,onDelete:l,icon:Ea(xC,{color:TC(i)})})})},"SimpleVariableView"),hl=yC.create({name:"variable",group:"inline",inline:!0,selectable:!1,atom:!0,addAttributes(){return{id:{default:"",parseHTML:e=>e.getAttribute("data-id")||"",renderHTML:e=>({"data-id":e.id})},isInvalid:{default:!1,parseHTML:e=>e.getAttribute("data-invalid")==="true",renderHTML:e=>({"data-invalid":e.isInvalid?"true":void 0})}}},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 CC(EC)}});function ii(e){if(!e)return{type:"doc",content:[{type:"paragraph"}]};let t=/\{\{([^}]+)\}\}/g,r=[],o=0,n;for(;(n=t.exec(e))!==null;){if(n.index>o){let s=e.substring(o,n.index);s&&r.push({type:"text",text:s})}let i=n[1].trim();mt(i)?r.push({type:"variable",attrs:{id:i,isInvalid:!1}}):r.push({type:"text",text:n[0]}),o=n.index+n[0].length}if(o<e.length){let i=e.substring(o);i&&r.push({type:"text",text:i})}return{type:"doc",content:[{type:"paragraph",content:r.length>0?r:void 0}]}}a(ii,"parseStringToContent");function bl(e){if(!e.content)return"";let t="",r=a(o=>{var n;o.type==="text"&&o.text?t+=o.text:o.type==="variable"&&((n=o.attrs)!=null&&n.id)?t+=`{{${o.attrs.id}}}`:(o.type==="paragraph"||o.type==="doc")&&o.content&&o.content.forEach(i=>r(i))},"processNode");return e.content.forEach(o=>r(o)),t}a(bl,"contentToString");import{BubbleMenu as a3}from"@tiptap/react";import{useCallback as s3}from"react";import{useAtomValue as Pd}from"jotai";import{AlignCenter as zC,AlignJustify as $C,AlignLeft as jC,AlignRight as ZC,Bold as qC,Italic as JC,Link as KC,Quote as GC,Strikethrough as XC,Underline as YC}from"lucide-react";import{Fragment as QC,memo as Fg,useMemo as Vg,useRef as e3,useState as t3,useEffect as r3}from"react";import{forwardRef as kd}from"react";import{forwardRef as kC}from"react";import{jsx as PC}from"react/jsx-runtime";var wd=kC(({children:e,className:t,withShadow:r=!0,withBorder:o=!0,...n},i)=>{let s=I("courier-bg-popover courier-rounded-lg courier-text-popover-foreground",r?"courier-shadow-sm":"",o?"courier-border courier-border-border":"",t);return PC("div",{className:s,...n,ref:i,children:e})});wd.displayName="Surface";import AC from"@tippyjs/react";import{useCallback as MC,useState as NC}from"react";import{Fragment as Ag,jsx as _r,jsxs as Pg}from"react/jsx-runtime";var kg=typeof window!="undefined"?navigator.platform.toUpperCase().indexOf("MAC")>=0:!1,SC=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-muted-foreground courier-border-b-2";return e==="Mod"?_r("kbd",{className:t,children:kg?"\u2318":"Ctrl"}):e==="Shift"?_r("kbd",{className:t,children:"\u21E7"}):e==="Alt"?_r("kbd",{className:t,children:kg?"\u2325":"Alt"}):_r("kbd",{className:t,children:e})},"ShortcutKey"),Mg=a(({children:e,enabled:t=!0,title:r,shortcut:o,tippyOptions:n={}})=>{let i=Sp(),s=MC(u=>{let d=Object.entries(i).reduce((p,[m,f])=>{let v=m.replace(/[A-Z]/g,h=>`-${h.toLowerCase()}`);return{...p,[`--${v}`]:f}},{});return Pg("span",{className:I("courier-flex courier-items-center courier-gap-2 courier-px-2.5 courier-py-1 courier-bg-popover courier-text-popover-foreground courier-border courier-border-border courier-rounded-lg courier-shadow-sm courier-z-[999]",i.colorScheme==="dark"?"dark":""),style:d,tabIndex:-1,"data-placement":u["data-placement"],"data-reference-hidden":u["data-reference-hidden"],"data-escaped":u["data-escaped"],children:[r&&_r("span",{className:"courier-text-xs courier-font-medium courier-text-muted-foreground",children:r}),o&&_r("span",{className:"courier-flex courier-items-center courier-gap-0.5",children:o.map(p=>_r(SC,{children:p},p))})]})},[o,r,i]),[l,c]=NC(null);return t?Pg(Ag,{children:[_r("span",{ref:c,children:e}),l&&_r(AC,{...n,delay:500,offset:[0,8],touch:!1,zIndex:99999,appendTo:document.body,trigger:"mouseenter focus",showOnCreate:!1,render:s,animation:!1,reference:l})]}):_r(Ag,{children:e})},"Tooltip");import{jsx as yl}from"react/jsx-runtime";var Ng=kd(({shouldShowContent:e=!0,children:t,isVertical:r=!1,className:o,...n},i)=>{let s=I("courier-text-foreground courier-inline-flex courier-h-full courier-leading-none courier-gap-0.5",r?"courier-flex-col courier-p-2":"courier-flex-row courier-p-0.5 courier-items-center",o);return e&&yl(wd,{className:s,...n,ref:i,children:t})});Ng.displayName="Toolbar";var Sg=kd(({horizontal:e,className:t,...r},o)=>{let n=I("courier-bg-border",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 yl("div",{className:n,ref:o,...r})});Sg.displayName="Toolbar.Divider";var Ig=kd(({children:e,buttonSize:t="icon",variant:r="ghost",className:o,tooltip:n,tooltipShortcut:i,onMouseDown:s,...l},c)=>{let u=I("courier-gap-1 courier-min-w-[2rem] courier-w-auto",o),p=yl(ke,{className:u,variant:r,buttonSize:t,ref:c,onMouseDown:a(m=>{m.preventDefault(),s==null||s(m)},"handleMouseDown"),...l,children:e});return n?yl(Mg,{title:n,shortcut:i,children:p}):p});Ig.displayName="ToolbarButton";var vl={Wrapper:Ng,Divider:Sg,Button:Ig};import{ChevronDown as IC}from"lucide-react";import{useMemo as RC}from"react";import{Fragment as BC,jsx as Ro,jsxs as Rg}from"react/jsx-runtime";var LC=a(e=>e.type==="option","isOption"),Lg=a(({options:e,containerRef:t})=>{let r=RC(()=>e.find(o=>o.type==="option"&&o.isActive()),[e]);return Rg(ds,{children:[Ro(ms,{asChild:!0,children:Rg(ke,{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",Ro(IC,{className:"courier-w-3 courier-h-3"})]})}),Ro(Fi,{portalProps:{container:(t==null?void 0:t.current)||void 0},children:e.map(o=>{if(LC(o))return Ro(Oi,{onClick:o.onClick,className:o.isActive()?"courier-bg-accent courier-text-foreground":"",children:o.id.startsWith("heading")?Ro(BC,{children:o.id==="heading1"?Ro("h1",{className:"courier-text-2xl courier-font-bold",children:o.label}):o.id==="heading2"?Ro("h2",{className:"courier-text-xl courier-font-bold",children:o.label}):o.id==="heading3"?Ro("h3",{className:"courier-text-lg courier-font-bold",children:o.label}):o.label}):o.label},o.id)})})]})},"ContentTypePicker");import{useAtomValue as HC,useSetAtom as VC}from"jotai";import{useCallback as Yt}from"react";import{v4 as FC}from"uuid";import{useMemo as DC}from"react";var Bg=a((e,t,r)=>DC(()=>{if(!(e!=null&&e.conditionalRules)||!t||!r)return null;let o=e.conditionalRules.filter(n=>n.trigger.type==="node"&&t.isActive(n.trigger.name)!==n.trigger.active?!1:n.conditions.activeItems.some(i=>i==="bold"?r.isBold:i==="italic"?r.isItalic:i==="underline"?r.isUnderline:i==="strike"?r.isStrike:!1));return{getRuleForItem:n=>o.find(i=>!i.conditions.activeItems.includes(n))}},[e,t,r]),"useConditionalRules");var Cl=a((e,t,r)=>{let o=VC(je),n=HC(Ce),i=Bg(t,e,r),s=Yt(g=>{let b=-1;return e.state.doc.descendants((M,C)=>{var S;return((S=M.attrs)==null?void 0:S.id)===g?(b=C,!1):!0}),b},[e]),l=Yt((g,b)=>{var M,C,S;if(((M=n==null?void 0:n.type)==null?void 0:M.name)==="button"&&((C=n.attrs)!=null&&C.id)){let P=n.attrs.id,k=s(P);if(k>=0){let w=e.state.tr;return w.setNodeMarkup(k,void 0,{...(S=e.state.doc.nodeAt(k))==null?void 0:S.attrs,[g]:b}),e.view.dispatch(w),setTimeout(()=>{let T=s(P);if(T>=0){let A=e.state.doc.nodeAt(T);A&&o(A)}},0),!0}}return!1},[e,n,s,o]),c=Yt(()=>{var g,b;if(((g=n==null?void 0:n.type)==null?void 0:g.name)==="button"&&((b=n.attrs)!=null&&b.id)){let M=n.attrs.id,C=s(M);if(C>=0){let S=e.state.doc.nodeAt(C);if(!S)return!1;let P={...S.attrs,fontWeight:"normal",fontStyle:"normal",isUnderline:!1,isStrike:!1},k=e.state.tr;return k.setNodeMarkup(C,void 0,P),e.view.dispatch(k),setTimeout(()=>{let w=s(M);if(w>=0){let T=e.state.doc.nodeAt(w);T&&o(T)}},0),!0}}return!1},[e,n,s,o]),u=Yt(()=>{var g;if(((g=n==null?void 0:n.type)==null?void 0:g.name)==="button"){let b=n.attrs.fontWeight==="bold"?"normal":"bold";if(l("fontWeight",b))return!0}if(i&&r){let b=i.getRuleForItem("bold");if(b&&b.action.type==="toggle_off"){let M=e.chain().focus();return b.action.targets.forEach(C=>{C==="italic"&&r.isItalic&&M.toggleItalic()}),M.toggleBold().run(),!0}}return e.chain().focus().toggleBold().run()},[e,n,l,i,r]),d=Yt(()=>{var g;if(((g=n==null?void 0:n.type)==null?void 0:g.name)==="button"){let b=n.attrs.fontStyle==="italic"?"normal":"italic";if(l("fontStyle",b))return!0}if(i&&r){let b=i.getRuleForItem("italic");if(b&&b.action.type==="toggle_off"){let M=e.chain().focus();return b.action.targets.forEach(C=>{C==="bold"&&r.isBold&&M.toggleBold()}),M.toggleItalic().run(),!0}}return e.chain().focus().toggleItalic().run()},[e,n,l,i,r]),p=Yt(()=>{var g;if(((g=n==null?void 0:n.type)==null?void 0:g.name)==="button"){let b=!n.attrs.isStrike;if(l("isStrike",b))return!0}return e.chain().focus().toggleMark("strike").run()},[e,n,l]),m=Yt(()=>{var g;if(((g=n==null?void 0:n.type)==null?void 0:g.name)==="button"){let b=!n.attrs.isUnderline;if(l("isUnderline",b))return!0}return e.chain().focus().toggleMark("underline").run()},[e,n,l]),f=Yt(()=>e.chain().focus().setTextAlign("left").run(),[e]),v=Yt(()=>e.chain().focus().setTextAlign("center").run(),[e]),h=Yt(()=>e.chain().focus().setTextAlign("right").run(),[e]),y=Yt(()=>e.chain().focus().setTextAlign("justify").run(),[e]),x=Yt((g,b)=>e.chain().focus().setLink({href:g,target:b?"_blank":""}).run(),[e]),E=Yt(()=>{let g=e.isActive("blockquote");if(e.chain().focus().toggleBlockquote().run()){let{selection:C}=e.state,S=C.$anchor;if(g){let P=S.node();(P.type.name==="paragraph"||P.type.name==="heading")&&o(P)}else for(let P=S.depth;P>0;P--){let k=S.node(P);if(k.type.name==="blockquote"){if(k.attrs.id)o(k);else{let w=S.before(P),T=`node-${FC()}`,A=e.state.tr;A.setNodeMarkup(w,void 0,{...k.attrs,id:T}),e.view.dispatch(A);let N=e.state.doc.nodeAt(w);N&&o(N)}break}}}},[e,o]);return{onBold:u,onItalic:d,onStrike:p,onUnderline:m,onAlignLeft:f,onAlignCenter:v,onAlignRight:h,onAlignJustify:y,onLink:x,onQuote:E,resetButtonFormatting:c}},"useTextmenuCommands");import{useEditorState as OC}from"@tiptap/react";var Dg=a(e=>OC({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{useAtomValue as WC}from"jotai";import{useCallback as Hg,useEffect as UC,useState as _C}from"react";var xl=a(e=>{let t=WC(Ce),[r,o]=_C({isBold:!1,isItalic:!1,isUnderline:!1,isStrike:!1,isAlignLeft:!1,isAlignCenter:!1,isAlignRight:!1,isAlignJustify:!1,isQuote:!1,isLink:!1}),n=Hg(()=>{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 UC(()=>{if(e)return n(),e.on("selectionUpdate",n),e.on("transaction",n),()=>{e.off("selectionUpdate",n),e.off("transaction",n)}},[e,n]),{shouldShow:Hg(({editor:s})=>{let l=["paragraph","heading","blockquote"],{$head:c}=s.state.selection,u=c.node();if(l.includes(u.type.name)&&u.attrs.isSelected)return!0;for(let d=1;d<=c.depth;d++){let p=c.node(d);if(p.type.name==="blockquote"){if(p.attrs.isSelected)return!0;let m=s.state.selection.from!==s.state.selection.to;if(s.isFocused&&m)return!0}}return!1},[]),...r}},"useTextmenuStates");import{jsx as Tt,jsxs as i3}from"react/jsx-runtime";var o3=Fg(vl.Button),n3=Fg(Lg),wa=a(({editor:e,config:t})=>{var S;let r=xl(e),o=Dg(e),n=e3(null),i=Pd(xs),s=Pd(Ce),l=s==null?void 0:s.type.name,c=Pd(mf),[u,d]=t3(()=>{let{selection:P}=e.state;return{from:P.from,to:P.to,empty:P.empty}});r3(()=>{let P=a(()=>{let{selection:k}=e.state;d({from:k.from,to:k.to,empty:k.empty})},"updateSelection");return e.on("selectionUpdate",P),e.on("transaction",P),()=>{e.off("selectionUpdate",P),e.off("transaction",P)}},[e]);let p=Vg(()=>!u.empty&&u.from!==u.to,[u]),m=Vg(()=>t||c(l||"",p),[t,c,l,p]),f=Cl(e,m,r),v=a(()=>{let{selection:P}=e.state;if(!(P.empty&&!r.isLink&&!e.can().setLink({href:""})))if(r.isLink){let k=e.state.tr.setMeta("showLinkForm",{from:P.from,to:P.to});e.view.dispatch(k)}else{let k=e.state.tr.setMeta("showLinkForm",{from:P.from,to:P.to});e.view.dispatch(k)}},"handleLinkToggle"),h=a(()=>{if(i.ref){let P=i.ref,k=P.value,w=i.caretPosition||P.selectionStart||0,T=k.substring(0,w),A=k.substring(w),N=`${T}{{${A}`,R=w+2;P.focus();let B=new Event("input",{bubbles:!0,cancelable:!0});if(Object.defineProperty(B,"target",{writable:!1,value:{...P,value:N}}),P.value=N,P.dispatchEvent(B),P.setSelectionRange(R,R),P.getBoundingClientRect()){let D=N.slice(0,R),F=document.createElement("span");F.style.font=window.getComputedStyle(P).font,F.style.whiteSpace="pre-wrap",F.textContent=D,document.body.appendChild(F);let L=F.offsetWidth;document.body.removeChild(F);let W=parseInt(window.getComputedStyle(P).lineHeight),_=D.split(`
|
|
200
|
+
`).length-1,V=new CustomEvent("showVariableSuggestions",{detail:{cursorPosition:{left:Math.min(L%P.offsetWidth,P.offsetWidth-200),top:_*W+30}},bubbles:!0});P.dispatchEvent(V)}return}e.chain().focus().insertContent([{type:"variable",attrs:{id:"",isInvalid:!1}}]).run()},"handleVariableClick"),y=a((P,k,w,T,A,N,R)=>{let B=m[P];return!B||Array.isArray(B)||B.state==="hidden"?null:Tt(o3,{tooltip:w,tooltipShortcut:N,onClick:T,active:A,disabled:B.state==="disabled",...R,children:k},P)},"renderButton"),x=a((P,k)=>{let w=P.filter(T=>!!T);return w.length>0?Tt("div",{className:"courier-flex courier-items-center courier-gap-0.5",children:w},k):null},"renderGroup"),E=x([((S=m.contentType)==null?void 0:S.state)==="enabled"&&Tt(n3,{options:o,containerRef:n},"content-type")],"content-type-group"),g=x([y("bold",Tt(qC,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Bold",f.onBold,r.isBold,["Mod","B"]),y("italic",Tt(JC,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Italic",f.onItalic,r.isItalic,["Mod","I"]),y("underline",Tt(YC,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Underline",f.onUnderline,r.isUnderline,["Mod","U"]),y("strike",Tt(XC,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Strikethrough",f.onStrike,r.isStrike,["Mod","Shift","S"])],"text-style-group"),b=x([y("alignLeft",Tt(jC,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Align left",f.onAlignLeft,r.isAlignLeft,["Shift","Mod","L"]),y("alignCenter",Tt(zC,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Align center",f.onAlignCenter,r.isAlignCenter,["Shift","Mod","E"]),y("alignRight",Tt(ZC,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Align right",f.onAlignRight,r.isAlignRight,["Shift","Mod","R"]),y("alignJustify",Tt($C,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Justify",f.onAlignJustify,r.isAlignJustify,["Shift","Mod","J"])],"alignment-group"),M=x([y("quote",Tt(GC,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Quote",f.onQuote,r.isQuote,["Mod","Shift","B"])],"block-style-group"),C=x([y("link",Tt(KC,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"}),"Link",v,r.isLink,["Mod","K"]),y("variable",Tt(af,{width:16}),"Variable",h,!1,["Mod","V"],{"data-variable-button":"true"})],"insert-group");return Tt(vl.Wrapper,{ref:n,className:"courier-border-b rounded-b-none rounded-t-sm !courier-shadow-md courier-justify-center courier-rounded-lg",children:[E,g,b,M,C].filter(Boolean).map((P,k)=>i3(QC,{children:[P,k<[E,g,b,M,C].filter(Boolean).length-1&&Tt(vl.Divider,{})]},`item-${k}`))})},"TextMenu");import{jsx as Og}from"react/jsx-runtime";var l3={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"}},ka=a(({editor:e})=>{let t=s3(({editor:r})=>r.isFocused&&r.isEditable,[]);return e?Og(a3,{editor:e,tippyOptions:{appendTo:r=>{var o;return(o=r.closest(".theme-container"))!=null?o:document.body},getReferenceClientRect:()=>e.view.dom.getBoundingClientRect(),placement:"top",offset:[0,8],zIndex:50,popperOptions:{modifiers:[{name:"flip",enabled:!1}]}},shouldShow:t,updateDelay:100,children:Og(wa,{editor:e,config:l3})}):null},"VariableEditorToolbar");ka.displayName="VariableEditorToolbar";import{jsx as Ug,jsxs as p3}from"react/jsx-runtime";var zr=yn.forwardRef(({value:e="",onChange:t,placeholder:r,className:o,disabled:n=!1,showToolbar:i=!1,onFocus:s,onBlur:l},c)=>{let u=yn.useRef(!1),d=yn.useRef(e),p=d3({immediatelyRender:!1,extensions:[Xn,Yn.configure({HTMLAttributes:{class:"courier-m-0 courier-leading-normal"}}),ol,hl,hn,bn,c3.configure({placeholder:r||"",emptyEditorClass:"is-editor-empty"})],content:ii(e),editable:!n,editorProps:{attributes:{class:"courier-outline-none courier-min-h-[20px]"},handleKeyDown:(f,v)=>v.key==="Enter"&&!v.shiftKey?(v.preventDefault(),!0):!1},onUpdate:({editor:f})=>{if(u.current)return;let v=bl(f.getJSON());v!==d.current&&(d.current=v,t==null||t(v))},onFocus:()=>{s==null||s()},onBlur:()=>{l==null||l()}});Wg(()=>{if(!p||e===d.current)return;u.current=!0,d.current=e;let f=setTimeout(()=>{let v=ii(e);p.commands.setContent(v),u.current=!1},0);return()=>clearTimeout(f)},[p,e]),Wg(()=>{p&&p.setEditable(!n)},[p,n]);let m=m3(()=>{p==null||p.commands.focus()},[p]);return yn.useImperativeHandle(c,()=>{let f=p==null?void 0:p.view.dom.parentElement;return f&&(f.focus=m),f},[p,m]),p3("div",{ref:c,className:I("variable-textarea-placeholder variable-editor-container","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 md:courier-text-sm",n&&"courier-cursor-not-allowed courier-opacity-50","[&_.ProseMirror]:courier-outline-none [&_.ProseMirror]:courier-min-h-[20px] [&_.ProseMirror]:courier-border-none [&_.ProseMirror]:courier-p-0","[&_.tiptap]:courier-outline-none [&_.tiptap]:courier-border-none",o),onClick:()=>p==null?void 0:p.commands.focus(),children:[Ug(u3,{editor:p,className:"courier-w-full"}),i&&!n&&Ug(ka,{editor:p})]})});zr.displayName="VariableTextarea";import f3 from"@tiptap/extension-placeholder";import{EditorContent as g3,useEditor as h3}from"@tiptap/react";import*as vn from"react";import{useCallback as b3,useEffect as _g}from"react";import{jsx as zg,jsxs as y3}from"react/jsx-runtime";var Pa=vn.forwardRef(({value:e="",onChange:t,placeholder:r,className:o,disabled:n=!1,readOnly:i=!1,showToolbar:s=!1,onFocus:l,onBlur:c},u)=>{let d=vn.useRef(!1),p=vn.useRef(e),m=h3({immediatelyRender:!1,extensions:[Xn,Yn.configure({HTMLAttributes:{class:"courier-m-0 courier-leading-normal"}}),ol,hl,hn,bn,f3.configure({placeholder:r||"",emptyEditorClass:"is-editor-empty"})],content:ii(e),editable:!n&&!i,editorProps:{attributes:{class:"courier-outline-none"},handleKeyDown:(v,h)=>h.key==="Enter"?(h.preventDefault(),!0):!1},onUpdate:({editor:v})=>{if(d.current)return;let h=bl(v.getJSON());h!==p.current&&(p.current=h,t==null||t(h))},onFocus:()=>{l==null||l()},onBlur:()=>{c==null||c()}});_g(()=>{if(!m||e===p.current)return;d.current=!0,p.current=e;let v=setTimeout(()=>{let h=ii(e);m.commands.setContent(h),d.current=!1},0);return()=>clearTimeout(v)},[m,e]),_g(()=>{m&&m.setEditable(!n&&!i)},[m,n,i]);let f=b3(()=>{m==null||m.commands.focus()},[m]);return vn.useImperativeHandle(u,()=>{let v=m==null?void 0:m.view.dom.parentElement;return v&&(v.focus=f),v},[m,f]),y3("div",{ref:u,className:I("variable-input-placeholder variable-editor-container","courier-flex courier-items-center courier-w-full courier-rounded-md courier-border-none courier-bg-transparent courier-text-foreground courier-py-1",(n||i)&&"courier-cursor-default",n&&"courier-opacity-50","[&_.tiptap]:courier-outline-none [&_.tiptap]:courier-border-none",o),onClick:()=>!i&&!n&&(m==null?void 0:m.commands.focus()),children:[zg(g3,{editor:m,className:"courier-w-full courier-flex-1"}),s&&!n&&zg(ka,{editor:m})]})});Pa.displayName="VariableInput";import{jsx as si,jsxs as V_}from"react/jsx-runtime";var ai=30,Tl=a(({color:e="currentColor",width:t=ai,height:r=ai,...o})=>si(X,{...o,width:t,height:r,children:si("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"),El=a(({color:e="currentColor",width:t=ai,height:r=ai,...o})=>si(X,{...o,width:t,height:r,children:si("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"),wl=a(({color:e="currentColor",width:t=ai,height:r=ai,...o})=>si(X,{...o,width:t,height:r,children:si("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");import{jsx as xe,jsxs as Lo}from"react/jsx-runtime";var $g=a(({element:e,editor:t})=>{let r=C3({resolver:v3(rl),defaultValues:{...Ue,...e==null?void 0:e.attrs}}),{updateNodeAttributes:o}=vt({editor:t,element:e,form:r,nodeType:"button"});return e?Lo(He,{...r,children:[xe(xt,{type:"button"}),Lo("form",{onChange:()=>{o(r.getValues())},children:[xe("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Link"}),xe(re,{control:r.control,name:"link",render:({field:n})=>Lo(ee,{children:[xe(te,{children:xe(zr,{value:n.value,onChange:i=>{n.onChange(i),o({...r.getValues(),link:i})},showToolbar:!0})}),xe(oe,{})]})}),xe(fe,{className:"courier-mt-6 courier-mb-4"}),xe("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Background"}),xe(re,{control:r.control,name:"backgroundColor",render:({field:n})=>Lo(ee,{className:"courier-mb-4",children:[xe(te,{children:xe(pt,{...n,defaultValue:Ue.backgroundColor,onChange:i=>{n.onChange(i),o({...r.getValues(),[n.name]:i})}})}),xe(oe,{})]})}),xe(fe,{className:"courier-mt-6 courier-mb-4"}),xe("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Frame"}),xe(re,{control:r.control,name:"padding",render:({field:n})=>Lo(ee,{className:"courier-mb-2",children:[xe(te,{children:xe(ve,{type:"number",min:0,...n})}),xe(oe,{})]})}),xe(re,{control:r.control,name:"alignment",render:({field:n})=>Lo(ee,{children:[xe(te,{children:Lo(fr,{type:"single",value:n.value,onValueChange:i=>{n.onChange(i),o({...r.getValues(),alignment:i})},className:"courier-w-full courier-border courier-rounded-md courier-border-border courier-p-0.5",children:[xe(Lt,{size:"sm",value:"left",className:"courier-w-full",children:xe(Tl,{className:"courier-h-4 courier-w-4"})}),xe(Lt,{size:"sm",value:"center",className:"courier-w-full",children:xe(El,{className:"courier-h-4 courier-w-4"})}),xe(Lt,{size:"sm",value:"right",className:"courier-w-full",children:xe(wl,{className:"courier-h-4 courier-w-4"})})]})}),xe(oe,{})]})}),xe(fe,{className:"courier-mt-6 courier-mb-4"}),xe("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Border"}),xe(re,{control:r.control,name:"borderRadius",render:({field:n})=>Lo(ee,{children:[xe(te,{children:xe(ve,{startAdornment:xe(ji,{}),type:"number",min:0,...n})}),xe(oe,{})]})})]})]}):null},"ButtonForm");import{mergeAttributes as N3,Node as S3}from"@tiptap/core";import{ReactNodeViewRenderer as I3}from"@tiptap/react";import{v4 as R3}from"uuid";import{useAtomValue as x3,useSetAtom as T3}from"jotai";import{useCallback as so,useRef as Cn,useEffect as Zg,useLayoutEffect as E3,useState as w3}from"react";import{Fragment as M3,jsx as $r,jsxs as Ad}from"react/jsx-runtime";var k3=a(e=>{if(!e)return[];let t=[],r=/\{\{([^}]+)\}\}/g,o=0,n;for(r.lastIndex=0;(n=r.exec(e))!==null;){if(!n[0].startsWith("{{")||!n[0].endsWith("}}"))continue;n.index>o&&t.push({type:"text",content:e.substring(o,n.index)});let i=n[1].trim();mt(i)?t.push({type:"variable",name:i}):t.push({type:"text",content:n[0]}),o=n.index+n[0].length}return o<e.length&&t.push({type:"text",content:e.substring(o)}),t},"parseLabel"),P3=a(({parts:e})=>{let t=x3(Ko);return $r(M3,{children:e.map((r,o)=>{if(r.type==="text")return $r("span",{children:r.content},o);let n=t[r.name];return Ad("span",{className:"courier-inline-flex courier-items-center courier-gap-0.5 courier-rounded courier-border courier-px-1.5 courier-pl-1 courier-py-[1px] courier-text-sm courier-variable-node courier-font-mono courier-max-w-full courier-tracking-[0.64px] courier-variable-in-button",style:{backgroundColor:n?"#EFF6FF":"#FFFBEB",borderColor:n?"#BFDBFE":"#FDE68A",color:"#000000"},children:[$r(gl,{color:n?void 0:"#B45309"}),Ad("span",{className:"courier-truncate courier-min-w-0",style:{color:"#000000"},children:[r.name,n?`="${n}"`:""]})]},o)})})},"ButtonLabelDisplay"),jg=a(({label:e,backgroundColor:t,textColor:r,onLabelChange:o,editable:n})=>{let i=Cn(null),s=Cn(e),l=Cn(!1),[c,u]=w3(!1),d=k3(e),m=d.some(C=>C.type==="variable")&&!c;E3(()=>{if(!i.current||!m)return;Array.from(i.current.childNodes).filter(S=>S.nodeType===Node.TEXT_NODE).forEach(S=>S.remove())},[m,e]);let f=Cn(m),v=Cn(!0);Zg(()=>{if(!i.current||m){f.current=m;return}let C=f.current&&!m;f.current=m,(v.current||C||!l.current&&e!==s.current)&&(i.current.textContent=e),v.current=!1,s.current=e},[e,m]);let h=so(()=>{if(i.current&&!m){l.current=!0;let C=i.current.textContent||"";s.current=C,o(C),requestAnimationFrame(()=>{l.current=!1})}},[o,m]),y=so(C=>{var S;if(m){C.preventDefault(),C.stopPropagation();return}if(C.key==="Enter"&&(C.preventDefault(),(S=i.current)==null||S.blur()),(C.metaKey||C.ctrlKey)&&C.key==="a"&&(C.preventDefault(),C.stopPropagation(),i.current)){let P=document.createRange();P.selectNodeContents(i.current);let k=window.getSelection();k==null||k.removeAllRanges(),k==null||k.addRange(P)}},[m]),x=so(()=>{u(!0)},[]),E=so(()=>{u(!1)},[]),g=so(C=>{let S=i.current;if(!S)return;if(m&&n){C.stopPropagation(),setTimeout(()=>{S.focus();let w=document.createRange();w.selectNodeContents(S),w.collapse(!1);let T=window.getSelection();T==null||T.removeAllRanges(),T==null||T.addRange(w)},0);return}if(!n)return;let P=a(()=>{let w=window.getSelection();if(!w||w.rangeCount===0)return;let T=w.getRangeAt(0),A=S.contains(T.startContainer),N=S.contains(T.endContainer);if(A&&!N){let R=document.createRange();R.selectNodeContents(S),w.removeAllRanges(),w.addRange(R)}},"checkAndConstrainSelection"),k=a(w=>{let T=S.getBoundingClientRect();(w.clientX<T.left||w.clientX>T.right||w.clientY<T.top||w.clientY>T.bottom)&&P(),document.removeEventListener("mouseup",k)},"handleMouseUp");document.addEventListener("mouseup",k)},[n,m]),b=m?$r(P3,{parts:d}):n?null:e,M=so(C=>{m&&n&&C.stopPropagation()},[m,n]);return $r("div",{ref:i,contentEditable:n&&!m,suppressContentEditableWarning:!0,tabIndex:n&&m?0:void 0,onInput:h,onKeyDown:y,onPointerDown:g,onClick:M,onFocus:x,onBlur:E,className:I("courier-inline-flex courier-justify-start courier-px-2 courier-py-1 courier-text-sm courier-rounded-sm courier-border courier-border-border courier-outline-none",n&&!m&&"courier-cursor-text"),style:{backgroundColor:t,color:r,borderColor:"transparent",borderRadius:"4px",caretColor:r,WebkitUserSelect:"text",userSelect:"text"},children:b})},"EditableButton"),A3=a(({button1Label:e,button1Link:t,button1BackgroundColor:r,button1TextColor:o,button2Label:n,button2Link:i,button2BackgroundColor:s,button2TextColor:l,padding:c=6,onButton1LabelChange:u,onButton2LabelChange:d,editable:p=!1})=>$r("div",{className:"node-element",children:Ad("div",{className:"courier-flex courier-gap-1 courier-justify-start",style:{marginTop:`${c}px`,marginBottom:`${c}px`},children:[$r(jg,{label:e,backgroundColor:r,textColor:o,onLabelChange:u||(()=>{}),editable:p},"button1"),$r(jg,{label:n,backgroundColor:s,textColor:l,onLabelChange:d||(()=>{}),editable:p},"button2")]})}),"ButtonRowComponent"),qg=a(e=>{let t=T3(je),r=Cn({}),o=Cn({}),n=so(()=>{if(!e.editor.isEditable)return;let l=nt(e);l&&t(l)},[e,t]),i=so(l=>{o.current.button1=l,r.current.button1&&clearTimeout(r.current.button1),r.current.button1=setTimeout(()=>{o.current.button1!==void 0&&e.updateAttributes({button1Label:o.current.button1})},300)},[e]),s=so(l=>{o.current.button2=l,r.current.button2&&clearTimeout(r.current.button2),r.current.button2=setTimeout(()=>{o.current.button2!==void 0&&e.updateAttributes({button2Label:o.current.button2})},300)},[e]);return Zg(()=>{let l=r.current;return()=>{l.button1&&clearTimeout(l.button1),l.button2&&clearTimeout(l.button2)}},[]),$r(Ct,{id:e.node.attrs.id,className:I(e.node.attrs.isSelected&&"selected-element"),onClick:n,editor:e.editor,"data-node-type":"buttonRow",children:$r(A3,{...e.node.attrs,onButton1LabelChange:i,onButton2LabelChange:s,editable:e.editor.isEditable})})},"ButtonRowComponentNode");var Er={button1Label:"Register",button1Link:"",button1BackgroundColor:"#000000",button1TextColor:"#ffffff",button2Label:"Learn more",button2Link:"",button2BackgroundColor:"#ffffff",button2TextColor:"#000000",padding:6},kl=S3.create({name:"buttonRow",group:"block",atom:!0,selectable:!1,onCreate(){ot(this.editor,this.name)},addAttributes(){return{id:{default:()=>`node-${R3()}`,parseHTML:e=>e.getAttribute("id"),renderHTML:e=>({id:e.id})},button1Label:{default:Er.button1Label,parseHTML:e=>e.getAttribute("data-button1-label"),renderHTML:e=>({"data-button1-label":e.button1Label})},button1Link:{default:Er.button1Link,parseHTML:e=>e.getAttribute("data-button1-link"),renderHTML:e=>({"data-button1-link":e.button1Link})},button1BackgroundColor:{default:Er.button1BackgroundColor,parseHTML:e=>e.getAttribute("data-button1-bg"),renderHTML:e=>({"data-button1-bg":e.button1BackgroundColor})},button1TextColor:{default:Er.button1TextColor,parseHTML:e=>e.getAttribute("data-button1-color"),renderHTML:e=>({"data-button1-color":e.button1TextColor})},button2Label:{default:Er.button2Label,parseHTML:e=>e.getAttribute("data-button2-label"),renderHTML:e=>({"data-button2-label":e.button2Label})},button2Link:{default:Er.button2Link,parseHTML:e=>e.getAttribute("data-button2-link"),renderHTML:e=>({"data-button2-link":e.button2Link})},button2BackgroundColor:{default:Er.button2BackgroundColor,parseHTML:e=>e.getAttribute("data-button2-bg"),renderHTML:e=>({"data-button2-bg":e.button2BackgroundColor})},button2TextColor:{default:Er.button2TextColor,parseHTML:e=>e.getAttribute("data-button2-color"),renderHTML:e=>({"data-button2-color":e.button2TextColor})},padding:{default:Er.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",N3(e,{"data-type":"buttonRow"})]},addNodeView(){return I3(qg,{stopEvent:({event:e})=>!(e.type==="dragstart"||e.type==="drop")})},addCommands(){return{setButtonRow:e=>({chain:t})=>t().insertContent({type:this.name,attrs:{...Er,...e}}).run()}}});import{zodResolver as L3}from"@hookform/resolvers/zod";import{useForm as B3}from"react-hook-form";import{z as ar}from"zod";var Jg=ar.object({columnsCount:ar.number().min(1).max(4).default(2),paddingHorizontal:ar.number().default(0),paddingVertical:ar.number().default(0),backgroundColor:ar.string().default("transparent"),borderWidth:ar.number().default(0),borderRadius:ar.number().default(0),borderColor:ar.string().default("transparent"),cells:ar.array(ar.object({elements:ar.array(ar.any())})).optional()});import{jsx as de,jsxs as wr}from"react/jsx-runtime";var Md=a(({element:e,editor:t})=>{let r=B3({resolver:L3(Jg),defaultValues:{...ft,...e==null?void 0:e.attrs}}),{updateNodeAttributes:o}=vt({editor:t,element:e,form:r,nodeType:"column"}),n=a(i=>{if(!t||!e)return;let s=null;if(t.state.doc.descendants((f,v)=>f.attrs.id===e.attrs.id&&f.type.name==="column"?(s=v,!1):!0),s===null)return;let l=t.state.doc.nodeAt(s);if(!l)return;let c=e.attrs.id,u=t.schema,d=t.state.tr,p=l.firstChild;if(!p||p.type.name!=="columnRow"){let f=Array.from({length:i},(h,y)=>u.nodes.columnCell.create({index:y,columnId:c,isEditorMode:!1})),v=u.nodes.columnRow.create({},f);d.replaceWith(s+1,s+l.nodeSize-1,v),d.setNodeMarkup(s,void 0,{...l.attrs,columnsCount:i}),d.setMeta("addToHistory",!0),t.view.dispatch(d);return}let m=p.childCount;if(i!==m){if(i>m){let f=i-m,h=s+1+p.nodeSize-1;for(let y=0;y<f;y++){let x=u.nodes.columnCell.create({index:m+y,columnId:c});d.insert(h+y*x.nodeSize,x)}}else{let f=m-i,h=s+1;for(let x=0;x<m-f;x++){let E=p.child(x);h+=E.nodeSize}let y=0;for(let x=m-f;x<m;x++){let E=p.child(x);y+=E.nodeSize}d.delete(h,h+y)}d.setNodeMarkup(s,void 0,{...l.attrs,columnsCount:i}),d.setMeta("addToHistory",!0),t.view.dispatch(d)}},"updateColumnCount");return e?wr(He,{...r,children:[de(xt,{type:"column",label:"Column layout"}),wr("form",{onChange:()=>{o(r.getValues())},children:[de("h4",{className:"courier-text-sm courier-font-medium courier-text-foreground courier-mb-3",children:"Columns count"}),de(re,{control:r.control,name:"columnsCount",render:({field:i})=>wr(ee,{className:"courier-mb-4",children:[de(te,{children:de(fr,{type:"single",className:"courier-w-full courier-border courier-rounded-md courier-border-border courier-bg-secondary courier-p-0.5 courier-mb-3 courier-shadow-sm",value:i.value.toString(),onValueChange:s=>{if(s){let l=Number(s);i.onChange(l),n(l)}},children:[1,2,3,4].map(s=>de(Lt,{value:s.toString(),className:"courier-w-12 courier-h-7",children:de("span",{className:"courier-text-sm courier-font-medium",children:s})},s))})}),de(oe,{})]})}),de(fe,{className:"courier-mt-6 courier-mb-4"}),de("h4",{className:"courier-text-sm courier-font-medium courier-text-foreground courier-mb-3",children:"Frame"}),wr("div",{className:"courier-flex courier-flex-row courier-gap-3 courier-mb-3",children:[de(re,{control:r.control,name:"paddingHorizontal",render:({field:i})=>wr(ee,{children:[de(te,{children:de(ve,{startAdornment:de(Yi,{}),type:"number",min:0,...i})}),de(oe,{})]})}),de(re,{control:r.control,name:"paddingVertical",render:({field:i})=>wr(ee,{children:[de(te,{children:de(ve,{startAdornment:de(en,{}),type:"number",min:0,...i})}),de(oe,{})]})})]}),de(re,{control:r.control,name:"backgroundColor",render:({field:i})=>wr(ee,{className:"courier-mb-4",children:[de(te,{children:de(pt,{...i,defaultValue:ft.backgroundColor,onChange:s=>{i.onChange(s),o({...r.getValues(),[i.name]:s})}})}),de(oe,{})]})}),de(fe,{className:"courier-mt-6 courier-mb-4"}),de("h4",{className:"courier-text-sm courier-font-medium courier-text-foreground courier-mb-3",children:"Border"}),wr("div",{className:"courier-flex courier-flex-row courier-gap-3 courier-mb-3",children:[de(re,{control:r.control,name:"borderWidth",render:({field:i})=>wr(ee,{children:[de(te,{children:de(ve,{startAdornment:de(eo,{}),type:"number",min:0,...i})}),de(oe,{})]})}),de(re,{control:r.control,name:"borderRadius",render:({field:i})=>wr(ee,{children:[de(te,{children:de(ve,{startAdornment:de(ji,{}),type:"number",min:0,...i})}),de(oe,{})]})})]}),de(re,{control:r.control,name:"borderColor",render:({field:i})=>wr(ee,{className:"courier-mb-4",children:[de(te,{children:de(pt,{...i,defaultValue:ft.borderColor,onChange:s=>{i.onChange(s),o({...r.getValues(),[i.name]:s})}})}),de(oe,{})]})})]})]}):null},"ColumnForm");import{mergeAttributes as D3,Node as H3}from"@tiptap/core";var Pl=H3.create({name:"columnRow",group:"columnContent",content:"columnCell+",isolating:!0,parseHTML(){return[{tag:'div[data-type="column-row"]'}]},renderHTML({HTMLAttributes:e}){return["div",D3(e,{"data-type":"column-row",class:"courier-flex courier-flex-row courier-gap-2 courier-w-full",style:"display: flex; flex-direction: row; gap: 0.5rem; width: 100%;"}),0]},addCommands(){return{insertColumnRow:()=>({chain:e})=>e().insertContent({type:this.name}).run()}}});import{mergeAttributes as _3,Node as z3}from"@tiptap/core";import{ReactNodeViewRenderer as $3}from"@tiptap/react";import{Plugin as j3,PluginKey as Z3}from"@tiptap/pm/state";import{NodeViewWrapper as V3,NodeViewContent as F3}from"@tiptap/react";import{useEffect as Kg,useRef as O3,useState as Gg}from"react";import{useAtomValue as W3}from"jotai";import{jsx as Xg,jsxs as U3}from"react/jsx-runtime";var Yg=a(e=>{let t=O3(null),[r,o]=Gg(!1),n=W3(Vt),i=e.node.attrs.isEditorMode===!0,[s,l]=Gg(e.editor.isEditable);Kg(()=>{let d=t.current;if(d)return Kt({element:d,getData:()=>({type:"column-cell",columnId:e.node.attrs.columnId,index:e.node.attrs.index}),onDragEnter:()=>o(!0),onDragLeave:()=>o(!1),onDrop:()=>o(!1)})},[e.node.attrs.columnId,e.node.attrs.index]),Kg(()=>{let d=a(()=>{l(e.editor.isEditable)},"handleUpdate");return e.editor.on("update",d),e.editor.on("transaction",d),e.editor.on("selectionUpdate",d),()=>{e.editor.off("update",d),e.editor.off("transaction",d),e.editor.off("selectionUpdate",d)}},[e.editor]);let c=!s&&!n,u=!i&&!c;return U3(V3,{ref:t,"data-column-cell":"true","data-column-id":e.node.attrs.columnId,"data-cell-index":e.node.attrs.index,className:I("courier-flex-1 courier-min-h-[120px] courier-flex courier-flex-col courier-p-4 courier-pl-0 courier-w-full",!c&&"courier-border",!c&&(r?"courier-border-solid courier-border-t-2 courier-border-t-blue-500 courier-border-r-transparent courier-border-b-transparent courier-border-l-transparent courier-rounded-none":"courier-border-dashed courier-border-gray-300 courier-rounded"),u&&"courier-items-center courier-justify-center courier-text-center courier-text-sm courier-text-gray-400"),children:[u&&Xg("span",{className:"courier-pointer-events-none courier-pl-4",children:"Drag and drop content blocks"}),Xg(F3,{className:"courier-flex courier-flex-col courier-gap-2 courier-w-full"})]})},"ColumnCellComponentNode");var Al=z3.create({name:"columnCell",group:"columnRow",content:"block*",isolating:!0,selectable:!1,addAttributes(){return{index:{default:0,parseHTML:e=>{let t=e.getAttribute("data-cell-index");return t?parseInt(t,10):0},renderHTML:e=>({"data-cell-index":e.index})},columnId:{default:null,parseHTML:e=>e.getAttribute("data-column-id"),renderHTML:e=>({"data-column-id":e.columnId})},isEditorMode:{default:!1,parseHTML:e=>e.getAttribute("data-editor-mode")==="true",renderHTML:e=>({"data-editor-mode":e.isEditorMode?"true":"false"})}}},parseHTML(){return[{tag:'div[data-type="column-cell"]'}]},renderHTML({HTMLAttributes:e}){return["div",_3(e,{"data-type":"column-cell",style:"flex: 1 1 0%; width: 0; min-height: 120px;"}),0]},addNodeView(){return $3(Yg)},addCommands(){return{insertColumnCell:()=>({chain:e})=>e().insertContent({type:this.name}).run()}},addProseMirrorPlugins(){return[new j3({key:new Z3("columnCellCleanup"),appendTransaction:(e,t,r)=>{if(!e.some(i=>i.docChanged))return null;let o=r.tr,n=!1;return r.doc.descendants((i,s)=>{var l,c;if(i.type.name==="columnCell"){let u=i.childCount===0,d=i.childCount===1&&((l=i.firstChild)==null?void 0:l.type.name)==="paragraph"&&((c=i.firstChild)==null?void 0:c.content.size)===0,p=i.attrs.isEditorMode;u?p=!1:u||(p=!0),p!==i.attrs.isEditorMode&&(o.setNodeAttribute(s,"isEditorMode",p),n=!0),d&&p===!1&&(o.delete(s+1,s+i.nodeSize-1),n=!0)}return!0}),n?o:null}})]}});import{useRef as Ml,useCallback as Qg,useState as e5,lazy as K3,Suspense as G3,useEffect as X3}from"react";import{forwardRef as q3}from"react";import{jsx as J3}from"react/jsx-runtime";var Nd=q3(({className:e,...t},r)=>{let o=I("courier-animate-spin courier-rounded-full courier-border-2 courier-border-current courier-border-t-transparent courier-h-4 courier-w-4",e);return J3("div",{className:o,ref:r,...t})});Nd.displayName="Spinner";import{jsx as li}from"react/jsx-runtime";var Y3=a(()=>{let[e,t]=e5(!1),r=Ml(null);return X3(()=>{var i;let o=a(()=>{if(r.current){let s=r.current.closest(".dark")!==null;t(s)}},"checkDarkMode");o();let n=new MutationObserver(o);return(i=r.current)!=null&&i.parentElement&&n.observe(document.body,{attributes:!0,attributeFilter:["class"],subtree:!0}),()=>n.disconnect()},[]),{isDark:e,containerRef:r}},"useIsDarkMode"),Q3=K3(()=>import("@monaco-editor/react").then(e=>({default:e.Editor})));function ex(e,t){let r=Ml();return Qg((...o)=>{r.current&&clearTimeout(r.current),r.current=setTimeout(()=>e(...o),t)},[e,t])}a(ex,"useDebounce");var tx=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 l=(e.match(/</g)||[]).length,c=(e.match(/>/g)||[]).length;if(l!==c||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 x,E;return(E=(x=y.match(/<([a-z][a-z0-9]*)/i))==null?void 0:x[1])==null?void 0:E.toLowerCase()}).filter(Boolean),f=(e.match(/<\/([a-z][a-z0-9]*)\s*>/gi)||[]).map(y=>{var x,E;return(E=(x=y.match(/<\/([a-z][a-z0-9]*)/i))==null?void 0:x[1])==null?void 0:E.toLowerCase()}).filter(Boolean),v=["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"],h=m.filter(y=>y&&!v.includes(y));for(let y of h){let x=m.filter(g=>g===y).length,E=f.filter(g=>g===y).length;if(x!==E)return!1}return!0}catch{return!1}},"defaultHTMLValidator"),Sd=a(({code:e,onSave:t,onValidationChange:r,validator:o=tx})=>{let n=Ml(null),i=Ml(null),[s,l]=e5(!0),{isDark:c,containerRef:u}=Y3(),d=Qg(()=>{if(!n.current||!i.current)return!0;let v=n.current.getModel();if(!v)return!0;let h=v.getValue(),y=o(h,n.current,i.current);return y!==s&&(l(y),r==null||r(y)),y},[s,r,o]),p=ex(v=>{setTimeout(()=>{d()&&t(v)},150)},500);return li("div",{ref:u,className:"courier-h-full courier-overflow-hidden",children:li("div",{className:"courier-h-full courier-p-2",children:li(G3,{fallback:li("div",{className:"courier-flex courier-items-center courier-justify-center courier-h-full courier-text-gray-500",children:li(Nd,{})}),children:li(Q3,{height:"100%",defaultLanguage:"html",value:e,onChange:a(v=>{p(v||"")},"handleCodeChange"),onMount:a((v,h)=>{n.current=v,i.current=h,v.focus(),v.onDidChangeModelContent(()=>{setTimeout(d,100)}),setTimeout(d,100)},"handleEditorDidMount"),theme:c?"vs-dark":"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 rx}from"@hookform/resolvers/zod";import{useForm as ox}from"react-hook-form";import{z as t5}from"zod";var r5=t5.object({code:t5.string()});import{useCallback as nx}from"react";import{useAtom as ix}from"jotai";import{Fragment as o5,jsx as jr,jsxs as Aa}from"react/jsx-runtime";var Id=a(({element:e,editor:t})=>{let r=ox({resolver:rx(r5),defaultValues:{...ro,...e==null?void 0:e.attrs}}),{updateNodeAttributes:o}=vt({editor:t,element:e,form:r,nodeType:"customCode"}),[n,i]=ix(Nr),s=nx(l=>{r.setValue("code",l),o({code:l})},[r,o]);return e?Aa(He,{...r,children:[!n&&jr(xt,{type:"customCode"}),Aa("div",{className:"courier-flex courier-flex-col courier-gap-4",children:[jr(ke,{className:"courier-w-fit",variant:"outline",buttonSize:"small",onClick:()=>i(!n),children:n?Aa(o5,{children:[jr(pu,{className:"courier-w-3 courier-h-3"}),"Minimize"]}):Aa(o5,{children:[jr(Zi,{className:"courier-w-3 courier-h-3"}),"Expand Editor"]})}),jr("div",{className:"courier-mb-4 courier-overflow-hidden courier-rounded-md courier-border courier-border-border",style:{minHeight:"200px",height:"300px",resize:"vertical",overflow:"auto"},children:jr("form",{onChange:()=>{o(r.getValues())},className:"courier-h-full",children:jr(re,{control:r.control,name:"code",render:({field:l})=>Aa(ee,{className:"courier-h-full",children:[jr(te,{children:jr(Sd,{code:l.value,onSave:c=>{l.onChange(c),s(c)},onCancel:()=>{}})}),jr(oe,{})]})})})})]})]}):null},"CustomCodeForm");import{z as ci}from"zod";var n5=ci.object({padding:ci.number(),color:ci.string(),size:ci.number(),radius:ci.number(),variant:ci.enum(["divider","spacer"]).default("divider")});import{zodResolver as ax}from"@hookform/resolvers/zod";import{useForm as sx}from"react-hook-form";import{Fragment as lx,jsx as st,jsxs as ui}from"react/jsx-runtime";var i5=a(({element:e,editor:t})=>{let r=sx({resolver:ax(n5),defaultValues:{...Gt,...e==null?void 0:e.attrs}}),{updateNodeAttributes:o}=vt({editor:t,element:e,form:r,nodeType:"divider"});if(!e)return null;let n=r.watch("variant");return ui(He,{...r,children:[st(xt,{type:n}),ui("form",{onChange:()=>{o(r.getValues())},children:[st("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Frame"}),st(re,{control:r.control,name:"padding",render:({field:i})=>ui(ee,{children:[st(te,{children:st(ve,{startAdornment:st(en,{}),type:"number",...i,onChange:s=>{i.onChange(s),o({...r.getValues(),margin:s.target.value})}})}),st(oe,{})]})}),n==="divider"&&ui(lx,{children:[st(fe,{className:"courier-mt-6 courier-mb-4"}),st("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Line"}),st(re,{control:r.control,name:"size",render:({field:i})=>ui(ee,{className:"courier-mb-4",children:[st(te,{children:st(ve,{startAdornment:st(eo,{}),type:"number",min:0,...i,onChange:s=>{i.onChange(s),o({...r.getValues(),width:s.target.value})}})}),st(oe,{})]})}),st(re,{control:r.control,name:"color",render:({field:i})=>ui(ee,{className:"courier-mb-4",children:[st(te,{children:st(pt,{...i,defaultValue:Gt.color,onChange:s=>{i.onChange(s),o({...r.getValues(),[i.name]:s})}})}),st(oe,{})]})})]})]})]})},"DividerForm");var Rd=Xn.extend({content:"(block)+"});import{Node as gx}from"@tiptap/core";import{ReactNodeViewRenderer as hx}from"@tiptap/react";import{NodeViewWrapper as cx}from"@tiptap/react";import{forwardRef as ux,useEffect as a5,useState as dx}from"react";import{jsx as Nl}from"react/jsx-runtime";function mx(){let[e,t]=dx(!1);return a5(()=>{let r=setTimeout(()=>t(!0),500);return()=>clearTimeout(r)},[]),e}a(mx,"useMountStatus");var px=ux(({children:e,className:t,dragOverlay:r,id:o},n)=>(a5(()=>{if(r)return document.body.style.cursor="grabbing",()=>{document.body.style.cursor=""}},[r]),Nl(cx,{ref:n,"data-cypress":"draggable-item","data-node-view-wrapper":!0,"data-id":o,"data-placeholder":"true",className:I("courier-flex courier-items-start courier-gap-2 courier-pl-6",t),children:e}))),fx=a(e=>{switch(e){case"text":return"Text";case"heading":return"Heading";case"spacer":return"Spacer";case"divider":return"Divider";case"button":return"Button";case"image":return"Image";case"customCode":return"Custom code";case"column":return"Column layout";default:return e}},"getPlaceholderLabel"),s5=a(({node:e})=>{let t=e.attrs.type,r=e.attrs.id,o=mx();return Nl(px,{id:r,fadeIn:!o,children:Nl("div",{className:I("courier-relative courier-flex courier-flex-grow courier-items-center courier-px-5 courier-py-[18px] courier-bg-background/50","courier-border-2 courier-border-dashed courier-border-accent-foreground courier-rounded-md"),children:Nl("div",{className:"courier-text-accent-foreground",children:fx(t)})})})},"DragPlaceholderComponent");var l5=gx.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 hx(s5,{as:"div",className:"drag-placeholder-wrapper"})}});import{Extension as bx}from"@tiptap/core";import{Plugin as yx,PluginKey as vx}from"@tiptap/pm/state";var Cx=new vx("file-handler"),xx=bx.create({name:"fileHandler",addOptions(){return{allowedMimeTypes:[],onDrop:()=>{},onPaste:()=>{}}},addProseMirrorPlugins(){let{allowedMimeTypes:e,onDrop:t,onPaste:r}=this.options;return[new yx({key:Cx,props:{handleDrop:(o,n,i,s)=>{var d;if(!((d=n.dataTransfer)!=null&&d.files)||s)return!1;let{files:l}=n.dataTransfer,c=o.posAtCoords({left:n.clientX,top:n.clientY});if(!c)return!1;let u=Array.from(l).filter(p=>e==null?void 0:e.includes(p.type));return u.length===0?!1:(n.preventDefault(),t&&t(this.editor,u,c.pos),!0)},handlePaste:(o,n)=>{var l;if(!((l=n.clipboardData)!=null&&l.files))return!1;let{files:i}=n.clipboardData,s=Array.from(i).filter(c=>e==null?void 0:e.includes(c.type));return s.length===0?!1:(n.preventDefault(),r&&r(this.editor,s),!0)}}})]}}),Sl=xx;import{Extension as Tx}from"@tiptap/core";import{Plugin as Ex,PluginKey as wx}from"@tiptap/pm/state";var kx=new wx("fixedChannelPaste"),Px=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(d=>{d.type.name==="paragraph"||d.type.name==="heading"?i++:d.type.name==="button"&&s++});let l=i===1&&s===0,c=i===2&&s===0,u=i>=2&&i+s<=4;return l||c||u},"isInFixedChannel"),Ax=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(`
|
|
201
|
+
`).trim()},"extractTextFromSlice"),Il=Tx.create({name:"fixedChannelPaste",addOptions(){return{fixedChannels:["push","sms","inbox"]}},addProseMirrorPlugins(){let e=this.editor;return[new Ex({key:kx,props:{handlePaste:(t,r,o)=>{let{state:n}=t,{selection:i}=n;if(!Px(e))return!1;let l=i.$from.node();if(!(l.type.name==="paragraph"||l.type.name==="heading")||o.content.childCount<=1)return!1;let u=Ax(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 Mx}from"@tiptap/core";import{Plugin as Nx,PluginKey as Sx,TextSelection as Ld}from"@tiptap/pm/state";var xn=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"),Bd=a(e=>!!e.view.dom.closest(".courier-inbox-editor"),"isInInboxChannel"),c5=a(e=>{if(!Bd(e))return!1;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.node(o-1),s=r.start(o),l=0;return i.forEach((c,u)=>{if(r.start(o-1)+u+1===s)return!1;l++}),l<=1}o--}return!1},"isInFixedInboxNode"),Tn=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"),Rl=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,l=null;for(;n>0;){let c=r.node(n);if(c.type.name==="paragraph"||c.type.name==="heading"){s={node:c,depth:n};break}n--}for(;i>0;){let c=o.node(i);if(c.type.name==="paragraph"||c.type.name==="heading"){l={node:c,depth:i};break}i--}return!!(s&&l&&s.node!==l.node)},"isMultiElementSelection"),Ll=new Sx("fixedChannelSelection"),Bl=Mx.create({name:"fixedChannelSelection",addOptions(){return{channels:["push","sms","inbox"]}},addCommands(){return{constrainSelectionToElement:()=>({editor:e,tr:t,dispatch:r})=>{if(!xn(e,this.options.channels))return!1;let o=Tn(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 l=Math.max(s.from,n),c=Math.min(s.to,i);return r&&t.setSelection(Ld.create(t.doc,l,c)),!0}}},addKeyboardShortcuts(){return{"Mod-a":({editor:e})=>{if(!xn(e,this.options.channels))return!1;let t=Tn(e);if(!t)return!1;let{start:r,end:o}=t;return e.commands.setTextSelection({from:r,to:o}),!0},Backspace:({editor:e})=>{if(!xn(e,this.options.channels))return!1;if(Bd(e)){let{selection:t}=e.state;if(Tn(e)&&t.$anchor.parentOffset===0&&c5(e))return!0}if(Rl(e)){let t=Tn(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(!xn(e,this.options.channels))return!1;if(Bd(e)){let{selection:t}=e.state,r=Tn(e);if(r){let o=r.node.textContent;if(t.$anchor.parentOffset===o.length&&c5(e))return!0}}if(Rl(e)){let t=Tn(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 Nx({key:Ll,props:{handleTextInput:(e,t,r)=>{let o=this.editor;if(!xn(o,this.options.channels))return!1;if(Rl(o)){let n=Tn(o);if(n){let{start:i,end:s}=n,l=Math.max(t,i),c=Math.min(r,s),u=e.state.tr;u.setSelection(Ld.create(u.doc,l,c)),e.dispatch(u)}return!0}return!1},handleDOMEvents:{mousedown:(e,t)=>{let r=this.editor;if(!xn(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(Ll,{elementStart:n.start(i),elementEnd:n.end(i)}));break}i--}}return!1},mousemove:(e,t)=>{let r=this.editor;if(!xn(r,this.options.channels))return!1;if(e.state.selection.from!==e.state.selection.to&&Rl(r)){let n=Ll.getState(e.state);if(n!=null&&n.elementStart&&(n!=null&&n.elementEnd)){let{selection:i}=e.state,s=Math.max(i.from,n.elementStart),l=Math.min(i.to,n.elementEnd),c=e.state.tr;return c.setSelection(Ld.create(c.doc,s,l)),e.dispatch(c),!0}}return!1}}},state:{init(){return null},apply(e,t){return e.getMeta(Ll)||t}}})]}});import{mergeAttributes as Bx}from"@tiptap/core";import{Node as Ix,mergeAttributes as Rx,textblockTypeInputRule as Lx}from"@tiptap/core";var u5=Ix.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]}`,Rx(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=>Lx({find:new RegExp(`^(#{${Math.min(...this.options.levels)},${e}})\\s$`),type:this.type,getAttributes:{level:e}}))}});import{ReactNodeViewRenderer as Dx}from"@tiptap/react";var Dd=u5.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),HTMLAttributes:{class:""}}},onCreate(){ot(this.editor,this.name)},addAttributes(){var e;return{...(e=this.parent)==null?void 0:e.call(this),paddingVertical:{default:he.paddingVertical,parseHTML:t=>t.style.paddingTop?parseInt(t.style.paddingTop):he.paddingVertical,renderHTML:t=>({style:`padding-top: ${t.paddingVertical}px; padding-bottom: ${t.paddingVertical}px;`})},paddingHorizontal:{default:he.paddingHorizontal,parseHTML:t=>t.style.paddingLeft?parseInt(t.style.paddingLeft):he.paddingHorizontal,renderHTML:t=>({style:`padding-left: ${t.paddingHorizontal}px; padding-right: ${t.paddingHorizontal}px;`})},textAlign:{default:he.textAlign,parseHTML:t=>t.style.textAlign||he.textAlign,renderHTML:t=>({style:`text-align: ${t.textAlign}`})},backgroundColor:{default:he.backgroundColor,parseHTML:t=>t.style.backgroundColor||he.backgroundColor,renderHTML:t=>({style:`background-color: ${t.backgroundColor}`})},borderWidth:{default:he.borderWidth,parseHTML:t=>t.style.borderWidth?parseInt(t.style.borderWidth):he.borderWidth,renderHTML:t=>({style:`border-width: ${t.borderWidth}px`})},borderColor:{default:he.borderColor,parseHTML:t=>t.style.borderColor||he.borderColor,renderHTML:t=>({style:`border-color: ${t.borderColor}`})},id:{default:()=>null,parseHTML:t=>t.getAttribute("data-id"),renderHTML:t=>({"data-id":t.id})},locales:{default:void 0,parseHTML:()=>{},renderHTML:()=>({})}}},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]}`,Bx(this.options.HTMLAttributes,t),0]},addNodeView(){return Dx(Ws)}});import{z as Zr}from"zod";var d5=Zr.object({sourcePath:Zr.string(),link:Zr.string().optional(),alt:Zr.string().optional(),alignment:Zr.enum(["left","center","right"]),width:Zr.number().min(1).max(100),borderWidth:Zr.number(),borderColor:Zr.string(),isUploading:Zr.boolean().optional(),imageNaturalWidth:Zr.number()});import{zodResolver as Hx}from"@hookform/resolvers/zod";import{useSetAtom as Vx}from"jotai";import{ArrowUp as Fx}from"lucide-react";import{useCallback as Na,useEffect as p5,useRef as Vd,useState as Hl}from"react";import{useForm as Ox}from"react-hook-form";import{useSetAtom as Hd}from"jotai";import*as Ma from"react";import{useRef as m5}from"react";import{jsx as Dl}from"react/jsx-runtime";var Bo=Ma.forwardRef(({as:e="Input",autoResize:t,onChange:r,...o},n)=>{let i=m5(null),s=m5(null),l=Hd(ia),c=Hd(ff),u=Hd(xs),d=Ma.useCallback(()=>{if(!s.current)return;let h={ref:s.current,caretPosition:s.current.selectionStart};c(h),u(h),l({isFocused:!0,hasVariables:!1,showVariablePopup:!1})},[l,c,u]),p=Ma.useCallback(h=>{var x;((x=h.relatedTarget)==null?void 0:x.closest("[data-variable-button]"))||(c({ref:null,caretPosition:null}),l({isFocused:!1,hasVariables:!1,showVariablePopup:!1}))},[l,c]),m=a(h=>{let y=h.target,x={ref:y,caretPosition:y.selectionStart};c(x),u(x)},"handleSelect"),f=a(h=>{r&&r(h)},"handleChange");if(e==="Input"){let h={...o,ref:y=>{s.current=y,typeof n=="function"?n(y):n&&(n.current=y)},onChange:f,onFocus:d,onBlur:p,onSelect:m};return Dl("div",{ref:i,className:"courier-relative",children:Dl(ve,{...h})})}let v={...o,ref:h=>{s.current=h,typeof n=="function"?n(h):n&&(n.current=h)},onChange:f,onFocus:d,onBlur:p,autoResize:t,onSelect:m};return Dl("div",{ref:i,className:"courier-relative",children:Dl(Kc,{...v})})});Bo.displayName="TextInput";import{Fragment as f5,jsx as ie,jsxs as Et}from"react/jsx-runtime";var g5=a(({element:e,editor:t})=>{var S,P;let r=Vd(null),o=Vd(null),n=Vd(null),[i,s]=Hl(""),[l,c]=Hl(!1),[u,d]=Hl(((S=e==null?void 0:e.attrs)==null?void 0:S.imageNaturalWidth)||0),[p,m]=Hl(!1),f=Vx(ae),{uploadImage:v}=Hi(),h=Ox({resolver:Hx(d5),defaultValues:{...Ke,...e==null?void 0:e.attrs},mode:"onChange"}),{updateNodeAttributes:y}=vt({editor:t,element:e,form:h,nodeType:"imageBlock"});p5(()=>{var w;let k=(w=e==null?void 0:e.attrs)==null?void 0:w.sourcePath;if(k&&!u){let T=new Image;T.onload=()=>{d(T.naturalWidth);let A={...h.getValues(),imageNaturalWidth:T.naturalWidth};h.setValue("imageNaturalWidth",T.naturalWidth),y(A)},T.src=k}},[(P=e==null?void 0:e.attrs)==null?void 0:P.sourcePath,u,h,y]);let x=Na(k=>{var R,B;let w=(B=(R=t==null?void 0:t.view)==null?void 0:R.dom)==null?void 0:B.closest(".ProseMirror"),T=(w==null?void 0:w.clientWidth)||1e3;if(k||(k=u),!k)return 0;let A=Math.min(100,k/T*100);return Math.round(A)},[t,u]),E=Na(k=>{var w;k.preventDefault(),(w=r.current)==null||w.click()},[]),g=Na((k,w)=>{let T=x(k.naturalWidth);s(`${T}%`),c(!1),h.setValue("sourcePath",w),h.setValue("imageNaturalWidth",k.naturalWidth),h.setValue("width",T);let A={...h.getValues(),sourcePath:w,width:T,imageNaturalWidth:k.naturalWidth,isUploading:!1};y(A)},[h,y,x]),b=Na(k=>{if(!k){h.setValue("imageNaturalWidth",0),h.setValue("width",0),y({...h.getValues(),sourcePath:"",imageNaturalWidth:0,width:0});return}let w=new Image;w.onload=()=>{let T=x(w.naturalWidth);h.setValue("imageNaturalWidth",w.naturalWidth),h.setValue("width",T);let A={...h.getValues(),sourcePath:k,width:T,imageNaturalWidth:w.naturalWidth};y(A)},w.onerror=()=>{console.debug("Image failed to load:",k)},w.src=k},[h,y,x]),M=Na(k=>{n.current&&clearTimeout(n.current),n.current=setTimeout(()=>{b(k)},500)},[b]);p5(()=>()=>{n.current&&clearTimeout(n.current)},[]);let C=h.getValues().sourcePath;return e?Et(He,{...h,children:[ie(xt,{type:"image"}),Et("form",{ref:o,onChange:()=>{let k=h.getValues();y(k)},children:[ie("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Image"}),Et(hs,{defaultValue:"file",className:"courier-mb-3 courier-w-full",children:[Et(zi,{className:"courier-w-full courier-flex courier-justify-stretch courier-mb-3",children:[ie(Wn,{value:"file",className:"courier-flex-1",children:"From file"}),ie(Wn,{value:"url",className:"courier-flex-1",children:"From URL"})]}),ie(bs,{value:"file",children:Et("div",{className:"courier-flex courier-flex-col courier-gap-2",children:[ie(ke,{onClick:E,className:"courier-w-full",variant:"outline",type:"button",disabled:p,children:p?ie(f5,{children:"Uploading..."}):Et(f5,{children:[ie(Fx,{strokeWidth:1.25,className:"courier-w-4 courier-h-4 courier-ml-2 courier-text-foreground"}),"Upload image"]})}),ie("input",{ref:r,type:"file",accept:"image/png, image/jpeg, image/gif, image/webp",className:"courier-hidden",onChange:k=>{var T;let w=(T=k.target.files)==null?void 0:T[0];if(w){m(!0),h.setValue("sourcePath",""),y({...h.getValues(),sourcePath:"",isUploading:!0});let A=new FileReader;A.onload=async()=>{try{let R=(await v({file:w})).url,B=new Image;B.onload=()=>{g(B,R),m(!1)},B.onerror=()=>{f({message:"Upload failed: Failed to load uploaded image",toastProps:{duration:6e3,description:`File: ${w.name} (${(w.size/1024/1024).toFixed(2)}MB)`}}),m(!1),y({...h.getValues(),isUploading:!1})},B.src=R}catch(N){console.error("Error uploading image:",N),f({message:"Upload failed: Failed to upload image",toastProps:{duration:6e3,description:`File: ${w.name} (${(w.size/1024/1024).toFixed(2)}MB)`}}),m(!1),y({...h.getValues(),isUploading:!1})}},A.onerror=()=>{f({message:"Upload failed: Failed to read image file",toastProps:{duration:6e3,description:`File: ${w.name} (${(w.size/1024/1024).toFixed(2)}MB)`}}),m(!1),y({...h.getValues(),isUploading:!1})},A.readAsDataURL(w)}}})]})}),ie(bs,{value:"url",children:ie(re,{control:h.control,name:"sourcePath",render:({field:k})=>Et(ee,{className:"courier-mb-3",children:[ie(te,{children:ie(Bo,{as:"Textarea",...k,autoResize:!0,className:"courier-max-h-[88px]",onChange:w=>{k.onChange(w),M(w.target.value)}})}),ie(oe,{})]})})})]}),ie(re,{control:h.control,name:"link",render:({field:k})=>Et(ee,{className:"courier-mb-3",children:[ie(te,{children:ie(zr,{placeholder:"Link",value:k.value,onChange:w=>{k.onChange(w),y({...h.getValues(),link:w})},showToolbar:!0})}),ie(oe,{})]})}),ie(re,{control:h.control,name:"alt",render:({field:k})=>Et(ee,{className:"courier-mb-4",children:[ie(te,{children:ie(zr,{placeholder:"Alt text...",value:k.value,onChange:w=>{k.onChange(w),y({...h.getValues(),alt:w})},showToolbar:!0})}),ie(oe,{})]})}),ie(fe,{className:"courier-mt-6 courier-mb-4"}),ie("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Width"}),(()=>{let k=h.getValues().width,w=h.getValues().imageNaturalWidth,T=x(w),A=k===T,N=A?"original":"fill";return Et(fr,{type:"single",value:C?N:"original",onValueChange:R=>{if(!R||R===N)return;let B=R==="fill"?100:x(w);B>0&&(h.setValue("width",B),y({...h.getValues(),width:B}))},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:[ie(Lt,{size:"sm",value:"original",className:"courier-w-full courier-h-7",children:"Original"}),ie(Lt,{size:"sm",value:"fill",className:"courier-w-full courier-h-7",disabled:A||!C,children:"Fill"})]})})(),ie(re,{control:h.control,name:"width",render:({field:k})=>Et(ee,{className:"courier-flex-1 courier-mb-3",children:[ie(te,{children:ie(ve,{type:"text",inputMode:"numeric",pattern:"[0-9]*",min:1,max:100,...k,value:h.getValues().sourcePath?l?i:`${k.value}%`:"0%",className:"courier-text-2xl courier-font-normal",disabled:!h.getValues().sourcePath,onFocus:w=>{c(!0),s(w.target.value)},onChange:w=>{s(w.target.value)},onKeyDown:w=>{w.key==="Enter"&&(w.preventDefault(),w.currentTarget.blur())},onBlur:w=>{c(!1);let T=parseFloat(w.target.value.replace("%",""));if(!isNaN(T)){let A=Math.min(100,Math.max(1,T));k.onChange(A),y({...h.getValues(),width:Math.round(A)})}}})}),ie(oe,{})]})}),ie(re,{control:h.control,name:"width",render:({field:k})=>Et(ee,{className:"courier-flex-1 courier-mb-3",children:[ie(te,{children:ie(qc,{min:0,max:100,value:[C?k.value:0],disabled:!C,onValueChange:w=>{k.onChange(w[0]),y({...h.getValues(),width:w[0]})}})}),ie(oe,{})]})}),ie(re,{control:h.control,name:"alignment",render:({field:k})=>Et(ee,{children:[ie(te,{children:Et(fr,{disabled:!C,type:"single",value:k.value,onValueChange:w=>{k.onChange(w),y({...h.getValues(),alignment:w})},className:"courier-w-full courier-border courier-rounded-md courier-border-border courier-p-0.5",children:[ie(Lt,{size:"sm",value:"left",className:"courier-w-full",children:ie(Tl,{className:"courier-h-4 courier-w-4"})}),ie(Lt,{size:"sm",value:"center",className:"courier-w-full",children:ie(El,{className:"courier-h-4 courier-w-4"})}),ie(Lt,{size:"sm",value:"right",className:"courier-w-full",children:ie(wl,{className:"courier-h-4 courier-w-4"})})]})}),ie(oe,{})]})}),ie(fe,{className:"courier-mt-6 courier-mb-4"}),ie("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Border"}),ie(re,{control:h.control,name:"borderWidth",render:({field:k})=>Et(ee,{className:"courier-mb-3",children:[ie(te,{children:ie(ve,{startAdornment:ie(eo,{}),type:"number",disabled:!C,min:0,...k,onChange:w=>{let T=parseInt(w.target.value)||0;k.onChange(T),y({...h.getValues(),borderWidth:T})}})}),ie(oe,{})]})}),ie(re,{control:h.control,name:"borderColor",render:({field:k})=>Et(ee,{className:"courier-mb-4",children:[ie(te,{children:ie(pt,{...k,disabled:!C,defaultValue:Ke.borderColor,onChange:w=>{k.onChange(w),y({...h.getValues(),[k.name]:w})}})}),ie(oe,{})]})})]})]}):null},"ImageBlockForm");import{getMarkRange as h5,mergeAttributes as Wx}from"@tiptap/core";import Ux from"@tiptap/extension-link";import{Plugin as b5,TextSelection as y5}from"@tiptap/pm/state";var Fd=Ux.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",Wx(this.options.HTMLAttributes,e,{class:"link cursor-pointer"}),0]},addProseMirrorPlugins(){var t;return[...((t=this.parent)==null?void 0:t.call(this))||[],new b5({props:{handleClick:(r,o,n)=>{if(n.button!==0)return!1;let{state:i}=r,{doc:s}=i,l=s.resolve(o),c=l.marks().find(u=>u.type.name==="link");if(c||o>0&&(c=s.resolve(o-1).marks().find(d=>d.type.name==="link")),c||o<s.content.size&&(c=s.resolve(o+1).marks().find(d=>d.type.name==="link")),c){let u=h5(l,c.type);return u?(r.dispatch(i.tr.setSelection(y5.create(s,u.from,u.to))),r.dispatch(r.state.tr.setMeta("showLinkForm",{from:u.from,to:u.to,href:c.attrs.originalHref||c.attrs.href})),!0):(r.dispatch(i.tr.setSelection(y5.create(s,o,o+1))),r.dispatch(r.state.tr.setMeta("showLinkForm",{from:o,to:o+1,href:c.attrs.originalHref||c.attrs.href})),!0)}return!1}}}),new b5({appendTransaction(r,o,n){if(!r.some(l=>l.docChanged))return null;let i=n.tr,s=!1;return n.doc.descendants((l,c)=>(l.marks.forEach(u=>{if(u.type.name==="link"&&u.attrs.href){let d=u.attrs.href;if(d.includes("__VAR_")){let p=d.replace(/__VAR_([^_]+)__/g,"{{$1}}");if(p!==d){let m=h5(n.doc.resolve(c),u.type);m&&(i.removeMark(m.from,m.to,u.type),i.addMark(m.from,m.to,u.type.create({...u.attrs,href:p,hasVariables:!0,originalHref:p})),s=!0)}}}}),!0)),s?i:null}})]}});import{zodResolver as _x}from"@hookform/resolvers/zod";import{useSetAtom as zx}from"jotai";import{useRef as $x,useEffect as jx}from"react";import{useForm as Zx}from"react-hook-form";import{z as Od}from"zod";import{jsx as En,jsxs as v5}from"react/jsx-runtime";var qx=Od.object({href:Od.string(),openInNewTab:Od.boolean().default(!1)}),C5=a(({editor:e,mark:t,pendingLink:r})=>{let o=zx(Ts),n=$x(null),i=Zx({resolver:_x(qx),defaultValues:{href:(t==null?void 0:t.attrs.href)||"",openInNewTab:(t==null?void 0:t.attrs.target)==="_blank"||!1}});jx(()=>{i.reset({href:(t==null?void 0:t.attrs.href)||"",openInNewTab:(t==null?void 0:t.attrs.target)==="_blank"||!1})},[t,i]);let s=a(async l=>{let c=l.href.trim();if(!c){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:c,target:l.openInNewTab?"_blank":null}).run()),e==null||e.commands.setTextSelection((r==null?void 0:r.to)||0),o(null)},"updateLink");return v5(He,{...i,children:[En("p",{className:"courier-font-medium courier-mb-4",children:"Link"}),En("div",{className:"courier-space-y-4",children:En(re,{control:i.control,name:"href",render:({field:l})=>v5(ee,{children:[En(Ir,{children:"URL"}),En(te,{children:En(Bo,{as:"Textarea",autoResize:!0,...l,ref:c=>{typeof l.ref=="function"&&l.ref(c),n.current=c},onKeyDown:c=>{c.key==="Enter"&&(c.preventDefault(),c.stopPropagation(),i.handleSubmit(s)())},onBlur:()=>{l.onBlur(),i.handleSubmit(s)()}})}),En(oe,{})]})})})]})},"LinkForm");import{mergeAttributes as t8,ReactNodeViewRenderer as r8}from"@tiptap/react";import{TextSelection as o8,Plugin as n8,PluginKey as i8}from"prosemirror-state";var lo={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:"'"},Fl={48:")",49:"!",50:"@",51:"#",52:"$",53:"%",54:"^",55:"&",56:"*",57:"(",59:":",61:"+",173:"_",186:":",187:"+",188:"<",189:"_",190:">",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"'},Jx=typeof navigator!="undefined"&&/Mac/.test(navigator.platform),Kx=typeof navigator!="undefined"&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);for(Je=0;Je<10;Je++)lo[48+Je]=lo[96+Je]=String(Je);var Je;for(Je=1;Je<=24;Je++)lo[Je+111]="F"+Je;var Je;for(Je=65;Je<=90;Je++)lo[Je]=String.fromCharCode(Je+32),Fl[Je]=String.fromCharCode(Je);var Je;for(Vl in lo)Fl.hasOwnProperty(Vl)||(Fl[Vl]=lo[Vl]);var Vl;function x5(e){var t=Jx&&e.metaKey&&e.shiftKey&&!e.ctrlKey&&!e.altKey||Kx&&e.shiftKey&&e.key&&e.key.length==1||e.key=="Unidentified",r=!t&&e.key||(e.shiftKey?Fl:lo)[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(x5,"keyName");import{Plugin as Gx}from"prosemirror-state";var Xx=typeof navigator!="undefined"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):!1;function Yx(e){let t=e.split(/-(?!$)/),r=t[t.length-1];r=="Space"&&(r=" ");let o,n,i,s;for(let l=0;l<t.length-1;l++){let c=t[l];if(/^(cmd|meta|m)$/i.test(c))s=!0;else if(/^a(lt)?$/i.test(c))o=!0;else if(/^(c|ctrl|control)$/i.test(c))n=!0;else if(/^s(hift)?$/i.test(c))i=!0;else if(/^mod$/i.test(c))Xx?s=!0:n=!0;else throw new Error("Unrecognized modifier name: "+c)}return o&&(r="Alt-"+r),n&&(r="Ctrl-"+r),s&&(r="Meta-"+r),i&&(r="Shift-"+r),r}a(Yx,"normalizeKeyName");function Qx(e){let t=Object.create(null);for(let r in e)t[Yx(r)]=e[r];return t}a(Qx,"normalize");function Wd(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(Wd,"modifiers");function T5(e){return new Gx({props:{handleKeyDown:e8(e)}})}a(T5,"keymap");function e8(e){let t=Qx(e);return function(r,o){let n=x5(o),i,s=t[Wd(n,o)];if(s&&s(r.state,r.dispatch,r))return!0;if(n.length==1&&n!=" "){if(o.shiftKey){let l=t[Wd(n,o,!1)];if(l&&l(r.state,r.dispatch,r))return!0}if((o.shiftKey||o.altKey||o.metaKey||n.charCodeAt(0)>127)&&(i=lo[o.keyCode])&&i!=n){let l=t[Wd(i,o)];if(l&&l(r.state,r.dispatch,r))return!0}}return!1}}a(e8,"keydownHandler");import{v4 as a8}from"uuid";var Ud=Yn.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),HTMLAttributes:{class:""}}},onCreate(){ot(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-${a8()}`;e.setNodeMarkup(o,void 0,{...r.attrs,id:n}),t=!0}return!0}),t&&this.editor.view.dispatch(e)},addAttributes(){return{paddingVertical:{default:he.paddingVertical,parseHTML:e=>e.style.paddingTop?parseInt(e.style.paddingTop):he.paddingVertical,renderHTML:e=>({"data-padding-vertical":e.paddingVertical})},paddingHorizontal:{default:he.paddingHorizontal,parseHTML:e=>e.style.paddingLeft?parseInt(e.style.paddingLeft):he.paddingHorizontal,renderHTML:e=>({"data-padding-horizontal":e.paddingHorizontal})},textAlign:{default:he.textAlign,parseHTML:e=>e.style.textAlign||he.textAlign,renderHTML:e=>({"data-text-align":e.textAlign})},backgroundColor:{default:he.backgroundColor,parseHTML:e=>e.style.backgroundColor||he.backgroundColor,renderHTML:e=>({"data-background-color":e.backgroundColor})},borderWidth:{default:he.borderWidth,parseHTML:e=>e.style.borderWidth?parseInt(e.style.borderWidth):he.borderWidth,renderHTML:e=>({"data-border-width":e.borderWidth})},borderColor:{default:he.borderColor,parseHTML:e=>e.style.borderColor||he.borderColor,renderHTML:e=>({"data-border-color":e.borderColor})},id:{default:void 0,parseHTML:e=>e.getAttribute("data-id"),renderHTML:e=>({"data-id":e.id})},locales:{default:void 0,parseHTML:()=>{},renderHTML:()=>({})}}},parseHTML(){return[{tag:'div[data-type="paragraph"]'}]},renderHTML({HTMLAttributes:e}){return["div",t8(this.options.HTMLAttributes,e,{"data-type":"paragraph"}),0]},addNodeView(){return r8(Ws)},addProseMirrorPlugins(){return[T5({"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(o8.create(t.doc,i,s)),!0}return!1}}),new n8({key:new i8("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,l=s.depth,c=null;for(;l>0;){let u=s.node(l);if(u.type.name==="paragraph"||u.type.name==="heading"){c=u;break}l--}if(c){let u=c.textContent,d=s.parentOffset===0,p=s.parentOffset===u.length,m=u.length===0,f=t.key==="Delete"||t.keyCode===46||t.code==="Delete",v=f?i.$from.nodeAfter:i.$from.nodeBefore,h=v!=null;if(h&&m)return!1;if(o||m&&!h||!f&&d&&!h||f&&p&&!h)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,l=null;for(;s>0;){let m=n.node(s);if(m.type.name==="paragraph"||m.type.name==="heading"){l=m;break}s--}if(!l)return!1;let c=r?n.pos===i.pos&&n.parentOffset===0:n.pos===i.pos&&n.parentOffset===l.textContent.length,u=l.textContent.length===0,d=r?t.state.selection.$from.nodeBefore:t.state.selection.$from.nodeAfter,p=d!=null;return p&&u?!1:c&&!p||u&&!p?!0:o?!1:(t.commands.command(({tr:m,dispatch:f})=>f?(m.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(){var e;return{...(e=this.parent)==null?void 0:e.call(this),setTextAlign:t=>({chain:r})=>r().updateAttributes(this.name,{textAlign:t}).run()}}});import{Extension as s8}from"@tiptap/core";import{Plugin as l8,PluginKey as c8}from"@tiptap/pm/state";var u8=new c8("selection"),_d=s8.create({name:"selection",addOptions(){return{HTMLAttributes:{},setSelectedNode:()=>{},shouldHandleClick:()=>!0}},addGlobalAttributes(){return[{types:["paragraph","heading","button","spacer","divider","imageBlock","blockquote","customCode","column"],attributes:{isSelected:{default:!1,parseHTML:()=>!1,renderHTML:e=>e.isSelected?{class:"selected-element"}:{}}}}]},addCommands(){return{updateSelectionState:e=>({tr:t,dispatch:r})=>{var o,n;if(r){let i=(o=e==null?void 0:e.attrs)==null?void 0:o.id,s=(n=e==null?void 0:e.type)==null?void 0:n.name;t.doc.descendants((l,c)=>{var u,d,p;if(l.type.name!=="text"&&((u=l.type.spec.attrs)==null?void 0:u.isSelected)!==void 0){let m=!1;i?m=((d=l.attrs)==null?void 0:d.id)===i&&l.type.name===s:s&&(m=l.type.name===s&&l.content.size===((p=e==null?void 0:e.content)==null?void 0:p.size)),m?t.setNodeAttribute(c,"isSelected",!0):t.setNodeAttribute(c,"isSelected",!1)}return!0})}return!0}}},addProseMirrorPlugins(){return[new l8({key:u8,props:{handleClick:(e,t,r)=>{let{state:o}=e;if(!this.editor.isEditable||this.options.shouldHandleClick&&!this.options.shouldHandleClick())return!1;let n=r.target;if(n.closest(".node-blockquote")||n.closest('[data-cypress="draggable-handle"]')||n.closest('button[class*="courier-cursor-grab"]'))return!1;try{let l=window.getSelection();if(l&&l.rangeCount>0){let u=l.getRangeAt(0).startContainer.parentElement;if(u&&(["P","H1","H2","H3"].includes(u.tagName)||["P","H1","H2","H3"].some(d=>u.closest(d)))){let d=e.posAtDOM(u,0),m=o.doc.resolve(d).node();if(m&&["paragraph","heading"].includes(m.type.name))return this.options.setSelectedNode(m),this.editor.commands.updateSelectionState(m),!0}}}catch(l){console.error("Error handling click:",l)}let i=e.posAtDOM(n,0),s=o.doc.resolve(i).node();return s&&["paragraph","heading"].includes(s.type.name)?(this.options.setSelectedNode(s),this.editor.commands.updateSelectionState(s),!0):!1}}})]}});var Eo=a(e=>{let t=e();return typeof t=="number"?t:null},"safeGetPos"),nt=a(e=>{let t=Eo(e.getPos);return t===null?null:e.editor.state.doc.nodeAt(t)},"safeGetNodeAtPos");import{GripVertical as d8}from"lucide-react";import{forwardRef as m8}from"react";import{jsx as S5}from"react/jsx-runtime";var I5=m8((e,t)=>S5("button",{...e,ref:t,"data-cypress":"draggable-handle","data-drag-handle":!0,className:I("courier-flex-shrink-0 courier-p-1 courier-w-7 courier-h-7 courier-rounded-md courier-border courier-border-border courier-flex courier-items-center courier-justify-center courier-shadow-sm courier-bg-background hover:courier-bg-card courier-cursor-grab courier-select-none courier-z-10 courier-touch-none",e.className),style:{WebkitUserSelect:"none",userSelect:"none",touchAction:"none"},children:S5(d8,{strokeWidth:1,className:"courier-w-5 courier-stroke-neutral-400 courier-fill-neutral-400 courier-pointer-events-none"})}));import{useAtomValue as p8}from"jotai";import{jsx as $d}from"react/jsx-runtime";var R5={text:"Text",heading:"Heading",spacer:"Spacer",divider:"Divider",button:"Button",image:"Image",customCode:"Custom code",column:"Column layout",blockquote:"Blockquote"},f8=a(e=>e.includes(":"),"isPresetType"),g8=a(e=>{let t=e.split(":");return t.length===2?{blockType:t[0],presetKey:t[1]}:null},"parsePresetType"),Ol=a(({type:e})=>{let t=p8(yo),r=a(o=>{if(!o)return"Drop here";if(f8(o)){let n=g8(o);if(n){let s=t.find(l=>l.type===n.blockType&&l.key===n.presetKey);if(s)return s.label}let i=o.split(":")[0];return R5[i]||"Drop here"}return R5[o]||"Drop here"},"getPlaceholderLabel");return $d("div",{className:"courier-flex courier-w-full courier-pointer-events-none",children:$d("div",{className:I("courier-relative courier-flex courier-flex-grow courier-items-center courier-px-5 courier-py-[18px] courier-bg-background/50 courier-ml-10","courier-border-2 courier-border-dashed courier-border-accent-foreground courier-rounded-md courier-drag-indicator dark:courier-border-accent"),children:$d("div",{className:"courier-text-accent-foreground dark:courier-text-accent",children:r(e)})})})},"DropIndicatorPlaceholder");import{Fragment as T8,jsx as Qt,jsxs as Wl}from"react/jsx-runtime";function C8(){let[e,t]=Ul(!1);return jd(()=>{let r=setTimeout(()=>t(!0),500);return()=>clearTimeout(r)},[]),e}a(C8,"useMountStatus");var Ct=a(({children:e,id:t,className:r,editor:o,getPos:n,...i})=>{let s=Do(null),l=Do(null),c=Do(null),[u,d]=Ul(!1),[p,m]=Ul(null),[f,v]=Ul(null),h=Do(null),y=Do(!1),x=Do(null),E=Do(null),g=Do(null),b=C8(),M=u&&!b,C=wn(()=>{if(!o||!t)return null;let P=null;return o.state.doc.descendants((k,w,T)=>{var A;if(((A=k.attrs)==null?void 0:A.id)===t){let N=0;return T&&T.content.forEach((R,B,H)=>{R===k&&(N=H)}),P={node:k,pos:w,parent:T,index:N},!1}return!0}),P},[t,o]),S=wn(()=>{if(!o)return!1;let P=C();return!P||!P.parent?!1:P.index===P.parent.childCount-1},[o,C]);return jd(()=>{let P=s.current,k=l.current;if(!P)return;let w=Hr(ma({element:P,dragHandle:k||void 0,getInitialData:()=>{var B,H,D,F,L,W;let T=C(),A="text";if(T){let _=T.node;switch(_.type.name){case"heading":A="heading";break;case"paragraph":A="text";break;case"imageBlock":A="image";break;case"divider":A=(B=_.attrs)!=null&&B.spacer?"spacer":"divider";break;case"button":A="button";break;case"customCode":A="customCode";break;case"column":A="column";break}}let N=(T==null?void 0:T.parent)===o.state.doc,R=((H=T==null?void 0:T.parent)==null?void 0:H.type.name)==="columnCell";return{id:t,type:N?"editor":R?"column-cell-item":"nested-drag",index:(D=T==null?void 0:T.index)!=null?D:0,dragType:A,pos:T==null?void 0:T.pos,originalIndex:(F=T==null?void 0:T.index)!=null?F:0,columnId:R?(L=T==null?void 0:T.parent)==null?void 0:L.attrs.columnId:void 0,cellIndex:R?(W=T==null?void 0:T.parent)==null?void 0:W.attrs.index:void 0}},onGenerateDragPreview:()=>{let T=P.querySelectorAll("[data-no-drag-preview]"),A=[];T.forEach((N,R)=>{let B=N;A[R]=B.style.display,B.style.display="none"}),requestAnimationFrame(()=>{T.forEach((N,R)=>{let B=N;B.style.display=A[R]})})},onDragStart:()=>{d(!0),document.body.style.cursor="grabbing";let T=a(A=>{E.current=A.clientY},"handleMouseMove");document.addEventListener("mousemove",T),g.current=()=>{document.removeEventListener("mousemove",T)},o&&o.isEditable&&o.setEditable(!1)},onDrop:()=>{d(!1),document.body.style.cursor="",g.current&&(g.current(),g.current=null),o&&o.setEditable(!0)}}),Kt({element:P,getData:({input:T,element:A})=>{var W,_,V,j;let N=C(),R=(N==null?void 0:N.parent)===o.state.doc,B=((W=N==null?void 0:N.parent)==null?void 0:W.type.name)==="columnCell",H={id:t,type:R?"editor":B?"column-cell-item":"nested-drag",index:(_=N==null?void 0:N.index)!=null?_:0,pos:N==null?void 0:N.pos,nodeType:N==null?void 0:N.node.type.name,columnId:B?(V=N==null?void 0:N.parent)==null?void 0:V.attrs.columnId:void 0,cellIndex:B?(j=N==null?void 0:N.parent)==null?void 0:j.attrs.index:void 0};if(A.getAttribute("data-node-type")==="column"){let Z=A.getBoundingClientRect(),J=T.clientY,K=30,U=Math.abs(J-Z.top),q=Math.abs(J-Z.bottom);if(U>K&&q>K)return{...H,disableDropIndicator:!0}}let F=A.closest('[data-column-cell="true"]');if(S()&&P){let Z=P.getBoundingClientRect(),J=T.clientY,K=Z.top+Z.height/2;if(J>=K&&J>Z.bottom)return{...H,[Symbol.for("closestEdge")]:"bottom"}}let L=S()?["top","bottom"]:["top"];return a1(H,{input:T,element:A,allowedEdges:L})},canDrop:({source:T})=>T.data.id!==t,onDragEnter:({self:T,source:A,location:N})=>{var _,V,j,Z,J;if(T.data.disableDropIndicator){m(null);return}x.current&&(clearTimeout(x.current),x.current=null);let R=N.current.dropTargets;if(R.length>0&&R[0].element!==P){m(null),y.current=!1,h.current=null;return}let B=pa(T.data),H=B,D=S(),F=(j=(V=(_=N==null?void 0:N.current)==null?void 0:_.input)==null?void 0:V.clientY)!=null?j:E.current;F!==null&&(E.current=F);let L=A.data;v(L.dragType||null),B==="bottom"&&D&&A.data.id===t&&(H=null);let W=A.data.type==="editor"||A.data.type==="column-cell-item";if(D&&W)if(B==="top"){let K=s.current;if(K){let U=K.getBoundingClientRect(),q=(Z=F!=null?F:E.current)!=null?Z:U.top+U.height/2,ce=U.top+U.height/2,ue=U.height,Ee=Math.max(10,Math.min(30,ue*.3));q<ce-Ee?(y.current=!1,H="top"):y.current?H="bottom":H="top"}else y.current=!1,H="top"}else y.current?H="bottom":B==="bottom"&&(y.current=!0,H="bottom");else D&&!W&&(y.current=!1);if(!y.current&&(A.data.type==="editor"||A.data.type==="column-cell-item")&&typeof A.data.index=="number"){let K=A.data.index,U=C();((J=U==null?void 0:U.index)!=null?J:0)===K+1&&B==="top"&&(H=null)}H!==h.current&&(h.current=H,m(H))},onDrag:({self:T,source:A,location:N})=>{var _,V,j,Z,J;if(T.data.disableDropIndicator){m(null);return}x.current&&(clearTimeout(x.current),x.current=null);let R=N.current.dropTargets;if(R.length>0&&R[0].element!==P){m(null);return}let B=(j=(V=(_=N==null?void 0:N.current)==null?void 0:_.input)==null?void 0:V.clientY)!=null?j:E.current;B!==null&&(E.current=B);let H=pa(T.data),D=H,F=S(),L=A.data;v(L.dragType||null),H==="bottom"&&F&&A.data.id===t&&(D=null);let W=A.data.type==="editor"||A.data.type==="column-cell-item";if(F&&W)if(H==="top"){let K=s.current;if(K){let U=K.getBoundingClientRect(),q=(Z=B!=null?B:E.current)!=null?Z:U.top+U.height/2,ce=U.top+U.height/2,ue=U.height,Ee=Math.max(10,Math.min(30,ue*.3));q<ce-Ee?(y.current=!1,D="top"):y.current?D="bottom":D="top"}else y.current=!1,D="top"}else y.current?D="bottom":H==="bottom"&&(y.current=!0,D="bottom");else F&&!W&&(y.current=!1);if(!y.current&&(A.data.type==="editor"||A.data.type==="column-cell-item")&&typeof A.data.index=="number"){let K=A.data.index,U=C();((J=U==null?void 0:U.index)!=null?J:0)===K+1&&H==="top"&&(D=null)}D!==h.current&&(h.current=D,m(D))},onDragLeave:()=>{if(S()&&y.current){let T=P==null?void 0:P.getBoundingClientRect(),A=E.current;if(T&&A!==null&&A>=T.bottom-10)return;x.current&&clearTimeout(x.current),x.current=setTimeout(()=>{y.current=!1,h.current=null,m(null),v(null),x.current=null},150)}else x.current&&(clearTimeout(x.current),x.current=null),y.current=!1,h.current=null,m(null),v(null)},onDrop:()=>{x.current&&(clearTimeout(x.current),x.current=null),y.current=!1,h.current=null,m(null),v(null)}}));return()=>{x.current&&(clearTimeout(x.current),x.current=null),w()}},[t,S,o,C]),Qt(x8,{ref:s,id:t,fadeIn:M,className:r,dragging:u,closestEdge:p,dragType:f,handleRef:l,contentRef:c,editor:o,...i,children:e})},"SortableItemWrapper"),x8=y8(({children:e,className:t,dragOverlay:r,handleRef:o,contentRef:n,closestEdge:i,dragType:s,id:l,editor:c,fadeIn:u,dragging:d,...p},m)=>{jd(()=>{if(r)return document.body.style.cursor="grabbing",()=>{document.body.style.cursor=""}},[r]);let f=b8(Ce),{resetButtonFormatting:v}=Cl(c),h=a((C,S)=>{let P=null;return C.doc.descendants((k,w)=>{var T;return P!==null?!1:((T=k.attrs)==null?void 0:T.id)===S?(P=w,!1):!0}),P},"findNodePositionById"),y=wn(()=>{if(!c||!l)return{node:null,pos:null};let C=h(c.state,l);return C===null?{node:null,pos:null}:{node:c.state.doc.nodeAt(C),pos:C}},[c,l]),x=wn(()=>{c.commands.blur(),f(null)},[c,f]),E=wn(()=>{if(!(!c||!l))try{let{node:C,pos:S}=y();if(!C||S===null)return;let P=C.nodeSize,k=c.state.doc.childCount===1;f(null),c.commands.updateSelectionState(null);let w=c.state.tr;w.delete(S,S+P),w.setMeta("addToHistory",!0),c.view.dispatch(w),k&&setTimeout(()=>{let T=c.state.doc.nodeAt(0);if(T&&T.type.name==="paragraph"&&!T.attrs.id){let A=`node-${v8()}`,N=c.state.tr;N.setNodeMarkup(0,void 0,{...T.attrs,id:A}),c.view.dispatch(N);let R=new CustomEvent("node-duplicated",{detail:{newNodeId:A}});document.dispatchEvent(R)}},50)}catch(C){console.error("Error deleting node:",C)}},[c,l,y,f]),g=wn(()=>{if(!(!c||!l))try{let{node:C,pos:S}=y();if(!C||S===null)return;if(C.type.name==="button"){v();return}let P=C.type.name==="blockquote",k=C.type.name==="heading";!P&&!k&&x(),setTimeout(()=>{if(k){let T=S+1,A=S+C.nodeSize-1;c.chain().setTextSelection({from:T,to:A}).unsetAllMarks().blur().run(),f(null),c.commands.updateSelectionState(null);return}let w=c.chain();if(w.setNodeSelection(S).unsetAllMarks(),P&&C.content&&C.content.firstChild?C.content.firstChild.type.name!=="paragraph"&&w.setParagraph():C.type.name!=="paragraph"&&!P&&w.setParagraph(),w.run(),P){let T=y();T.node&&T.pos!==null&&(f(T.node),c.commands.updateSelectionState(T.node))}},100)}catch(C){console.error("Error removing formatting:",C)}},[c,l,y,x,v,f]),b=wn(()=>{if(!(!c||!l))try{x(),setTimeout(()=>{let{node:C,pos:S}=y();if(!C||S===null)return;let P=C.type.name,k={...C.attrs};delete k.id;let w=S+(C==null?void 0:C.nodeSize);el(c,P,w,k,T=>f(T),C.content)},100)}catch(C){console.error("Error duplicating node:",C)}},[c,l,y,x,f]),{node:M}=y();return Wl(h8,{ref:m,"data-cypress":"draggable-item","data-node-view-wrapper":!0,"data-id":l,className:I("courier-flex courier-flex-col courier-relative draggable-item",t),...p,children:[i==="top"&&Qt(Ol,{type:s}),Wl("div",{className:"courier-flex courier-items-center courier-justify-center courier-gap-2 courier-pl-10",children:[Qt(I5,{ref:o,className:"courier-absolute courier-left-[-8px]",tabIndex:-1,"data-no-drag-preview":!0}),Qt("div",{ref:n,className:"courier-flex-1 courier-grow draggable-content-wrapper",children:e}),Wl("div",{"data-no-drag-preview":!0,className:I("courier-actions-panel courier-absolute courier-right-[-50px] courier-rounded-lg courier-border courier-border-border courier-bg-background courier-shadow-md courier-hidden courier-items-center courier-justify-center hover:courier-z-[100000]",d&&"!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"&&(M==null?void 0:M.type.name)!=="button"&&(M==null?void 0:M.type.name)!=="column"&&(M==null?void 0:M.type.name)!=="customCode"&&Wl(T8,{children:[Qt("button",{className:"courier-w-8 courier-h-8 courier-flex courier-items-center courier-justify-center courier-text-[#171717] dark:courier-text-white dark:hover:courier-bg-secondary",onMouseDown:C=>{C.preventDefault(),C.stopPropagation()},onClick:C=>{C.stopPropagation(),g()},tabIndex:-1,children:Qt(mu,{color:"currentColor"})}),Qt(fe,{className:"!courier-my-0"})]}),Qt("button",{className:"courier-w-8 courier-h-8 courier-flex courier-items-center courier-justify-center courier-text-[#171717] dark:courier-text-white dark:hover:courier-bg-secondary",onMouseDown:C=>{C.preventDefault(),C.stopPropagation()},onClick:C=>{C.stopPropagation(),b()},tabIndex:-1,children:Qt(nu,{color:"currentColor"})}),Qt(fe,{className:"!courier-my-0"}),Qt("button",{className:"courier-w-8 courier-h-8 courier-flex courier-items-center courier-justify-center courier-text-[#DC2626] dark:courier-text-red-500 dark:hover:courier-bg-secondary",onMouseDown:C=>{C.preventDefault(),C.stopPropagation()},onClick:C=>{C.stopPropagation(),E()},tabIndex:-1,children:Qt($i,{color:"currentColor"})})]})]}),i==="bottom"&&Qt(Ol,{type:s})]})});import{NodeViewContent as E8,NodeViewWrapper as w8}from"@tiptap/react";import{useSetAtom as k8,useAtomValue as P8}from"jotai";import{useCallback as A8,useEffect as M8,useRef as N8}from"react";import{jsx as kn}from"react/jsx-runtime";var S8=a(({paddingHorizontal:e,paddingVertical:t,backgroundColor:r,borderLeftWidth:o,borderColor:n})=>kn("div",{className:"courier-w-full node-element",children:kn("div",{style:{position:"relative",padding:`${t}px ${e}px`,backgroundColor:r,borderLeftWidth:`${o}px`,borderColor:n,borderStyle:o>0?"solid":"none",whiteSpace:"pre-wrap"},children:kn(E8,{})})}),"BlockquoteComponent"),L5=a(e=>{var l,c,u;let t=k8(je),r=P8(Ce),o=N8(null),n=((l=r==null?void 0:r.type)==null?void 0:l.name)==="blockquote"&&(((c=r==null?void 0:r.attrs)==null?void 0:c.id)===e.node.attrs.id||!((u=r==null?void 0:r.attrs)!=null&&u.id)&&!e.node.attrs.id&&r===e.node),i=A8(()=>{if(!e.editor.isEditable)return;let d=e.node;d&&(t(d),e.editor.commands.updateSelectionState(d))},[e.editor.isEditable,e.node,e.editor.commands,t]);M8(()=>{let d=o.current;if(!d)return;let p=a(m=>{let f=m.target;f.closest(".courier-actions-panel")||f.closest("[data-no-drag-preview]")||i()},"handleClick");return d.addEventListener("click",p,!0),()=>{d.removeEventListener("click",p,!0)}},[i]);let s=!e.node.content||e.node.content.size===0;return kn(w8,{children:kn("div",{ref:o,children:kn(Ct,{id:e.node.attrs.id,className:I(n&&"selected-element",s&&"is-empty"),editor:e.editor,children:kn(S8,{...e.node.attrs})})})})},"BlockquoteComponentNode");var Wr={paddingHorizontal:8,paddingVertical:6,backgroundColor:"transparent",borderLeftWidth:4,borderColor:"#e0e0e0"},zd=s1.extend({content:"block+",addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),HTMLAttributes:{class:""}}},onCreate(){ot(this.editor,this.name)},addAttributes(){return{id:{default:void 0,parseHTML:e=>e.getAttribute("data-id"),renderHTML:e=>({"data-id":e.id})},paddingHorizontal:{default:Wr.paddingHorizontal,parseHTML:e=>e.getAttribute("data-padding-horizontal"),renderHTML:e=>({"data-padding-horizontal":e.paddingHorizontal})},paddingVertical:{default:Wr.paddingVertical,parseHTML:e=>e.getAttribute("data-padding-vertical"),renderHTML:e=>({"data-padding-vertical":e.paddingVertical})},backgroundColor:{default:Wr.backgroundColor,parseHTML:e=>e.getAttribute("data-background-color"),renderHTML:e=>({"data-background-color":e.backgroundColor})},borderLeftWidth:{default:Wr.borderLeftWidth,parseHTML:e=>e.getAttribute("data-border-left-width"),renderHTML:e=>({"data-border-left-width":e.borderLeftWidth})},borderColor:{default:Wr.borderColor,parseHTML:e=>e.getAttribute("data-border-color"),renderHTML:e=>({"data-border-color":e.borderColor})},locales:{default:void 0,parseHTML:()=>{},renderHTML:()=>({})}}},parseHTML(){return[{tag:"blockquote"}]},renderHTML({HTMLAttributes:e}){return["blockquote",I8(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,l=i.doc.resolve(s);if(l.depth>1){let c=l.blockRange();c&&i.lift(c,0)}return!0}).focus().run()}}},addNodeView(){return R8(L5)}});import{v4 as L8}from"uuid";import{useAtomValue as _l,useSetAtom as B5,useAtom as B8}from"jotai";import{useCallback as di,useRef as D5,useState as zl,useEffect as D8}from"react";var mi=a(({items:e,setItems:t,editor:r})=>{let[o]=zl(null),[n,i]=zl(null),[s,l]=zl(null),[c]=zl("outer"),u=D5([]),d=D5([]),p=_l(we),m=B5(Vt),[f,v]=B8(se),h=B5(Oe),y=_l(Co),x=_l(yo),E=_l(ts),g=r||p,b=di(()=>{if(!g)return;let w=g.getJSON(),T=be(w),A=rt(f,{channel:y,elements:T});v(A),h(A)},[g,y,f,v,h]),M=di(()=>{g==null||g.commands.removeDragPlaceholder(),t(w=>({...w,Editor:w.Editor.filter(T=>!T.toString().includes("_temp"))}))},[g==null?void 0:g.commands,t]),C=di(w=>{try{let T=g==null?void 0:g.state.doc;if(!T||w===0)return 0;if(w>=T.childCount)return T.content.size;let A=0;for(let N=0;N<Math.min(w,T.childCount);N++){let R=T.child(N);A+=R.nodeSize}return A}catch(T){return console.error("Error calculating document position:",T),0}},[g==null?void 0:g.state.doc]),S=di(w=>{let T=w.includes(":"),A=w,N=null;if(T){let F=w.split(":");A=F[0],N=F[1]}let R={};switch(A){case"text":R=he;break;case"heading":R={};break;case"image":R=Ke;break;case"button":R=Ue;break;case"divider":R=Gt;break;case"spacer":R=Kn;break;case"customCode":R=ro;break;case"column":R=ft;break;case"blockquote":R=Wr;break}let B=E[A];if(B&&(R={...R,...B}),T&&N){let F=x.find(L=>L.type===A&&L.key===N);F!=null&&F.attributes&&(R={...R,...F.attributes})}let D={type:A==="text"?"paragraph":A==="image"?"imageBlock":A==="spacer"?"divider":A,attrs:{...R,id:L8()}};if(A==="button"){let F="Button";if(T&&N){let L=x.find(W=>W.type===A&&W.key===N);L!=null&&L.label&&(F=L.label)}D.content=[{type:"text",text:F}]}return D},[E,x]),P=di((w,T)=>{if(!g)return;let{columnId:A,index:N,isEmpty:R}=T,B=null,H=0,D=-1;if(w.type==="sidebar"){if(!w.dragType)return;B=S(w.dragType)}else if(w.type==="editor"){if(g.state.doc.descendants((V,j)=>V.attrs.id===w.id?(D=j,B=V.toJSON(),H=V.nodeSize,!1):!0),D===-1){let V=e.Editor.findIndex(j=>j===w.id);if(V!==-1){D=C(V);let j=g.state.doc.nodeAt(D);j&&(B=j.toJSON(),H=j.nodeSize)}}if(D!==-1){let V=e.Editor.filter(j=>j!==w.id);V.length!==e.Editor.length&&t({...e,Editor:V})}}if(!B)return;let F=-1,L=null;if(g.state.doc.descendants((V,j)=>V.type.name==="column"&&V.attrs.id===A?(F=j,L=V,!1):!0),F===-1||!L)return;let W=L;D!==-1&&D<F&&(F-=H);let _=g.state.tr;if(D!==-1&&_.delete(D,D+H),R){let V=g.schema,j=Array.from({length:W.attrs.columnsCount},(J,K)=>V.nodes.columnCell.create({index:K,columnId:A,isEditorMode:!1},K===N?[V.nodeFromJSON(B)]:[])),Z=V.nodes.columnRow.create({},j);_.replaceWith(F+1,F+W.nodeSize-1,Z)}else{let V=F+1;W.content.forEach(j=>{if(j.type.name==="columnRow"){let Z=V+1;j.content.forEach((J,K,U)=>{if(U===N){let q=Z+J.nodeSize-1;_.insert(q,g.schema.nodeFromJSON(B))}Z+=J.nodeSize})}V+=j.nodeSize})}g.view.dispatch(_),b()},[g,e,t,C,S,b]),k=di((w,T)=>{try{if(w.type==="sidebar"&&(T.type==="editor"||T.type==="column-cell-item"||T.type==="nested-drag")){let A=w.dragType;if(!A||!g)return;let N=T.insertPos;if(N===void 0)if(T.type==="editor"){let H=T.index+1;N=C(H)}else{console.warn("Nested drop without position data");return}let R=S(A);if(g.commands.insertContentAt(N,R),g.state.doc.resolve(N).depth===0){let H=g.state.doc.resolve(N).index(0),D=[...e.Editor];H<=D.length&&(D.splice(H,0,R.attrs.id),t({...e,Editor:D}))}b();return}if((w.type==="editor"||w.type==="column-cell-item"||w.type==="nested-drag")&&(T.type==="editor"||T.type==="column-cell-item"||T.type==="nested-drag")){if(!g)return;let A=-1,N=null;if(w.pos!==void 0&&(A=w.pos,N=g.state.doc.nodeAt(A)),(A===-1||!N)&&g.state.doc.descendants((D,F)=>D.attrs.id===w.id?(A=F,N=D,!1):!0),A===-1||!N){let D=e.Editor.findIndex(F=>F===w.id);D!==-1&&(A=C(D),N=g.state.doc.nodeAt(A))}if(!N||A===-1)return;let R=T.insertPos;if(R===void 0){let D;T.index===void 0?D=g.state.doc.childCount:T.index===-1?D=0:D=T.index+1,R=C(D)}if(R===void 0||R>A&&R<A+N.nodeSize)return;if(R>A){let D=R-N.nodeSize;g.chain().deleteRange({from:A,to:A+N.nodeSize}).insertContentAt(D,N.toJSON()).run()}else g.chain().insertContentAt(R,N.toJSON()).deleteRange({from:A+N.nodeSize,to:A+N.nodeSize*2}).run();let B=e.Editor.includes(w.id);if(B){let D=e.Editor.filter(F=>F!==w.id);t({...e,Editor:D})}let H=g.state.doc.resolve(R).depth===0;b()}}catch(A){console.error("[Pragmatic DnD] Error in handleDrop:",A)}},[e,g,t,C,b,S]);return D8(()=>Iu({onDragStart:({source:w})=>{let T=w.data;m(!0),l(T.id),T.dragType&&i(T.dragType);let A=g==null?void 0:g.view.dom.querySelectorAll('[data-node-type="column"]');A&&(u.current=Array.from(A).map(R=>R.getBoundingClientRect()));let N=g==null?void 0:g.view.dom.querySelectorAll("[data-node-view-wrapper]");if(N){let R=new Set,B=Array.from(N).filter(H=>{let D=H,F=D.parentElement;if(F!=null&&F.hasAttribute("data-column-cell"))return!1;let L=D.getBoundingClientRect(),W=L.top+L.height/2;return R.has(Math.round(W))?!1:(R.add(Math.round(W)),!0)});d.current=B.map(H=>H.getBoundingClientRect())}},onDrop:({source:w,location:T})=>{let A=w.data,N=T.current.dropTargets[0];if(!N){M(),m(!1),l(null),i(null);return}let R=N.data;if(R.type==="column-cell"){P(A,R),m(!1),l(null),i(null),M();return}let B=R,H=pa(N.data);if(B.pos!==void 0&&H&&g){let D=g.state.doc.nodeAt(B.pos);D&&(H==="top"?B.insertPos=B.pos:H==="bottom"&&(B.insertPos=B.pos+D.nodeSize))}if(B.insertPos===void 0&&H&&B.index!==void 0){let D=H==="top"?B.index-1:B.index;B={...B,index:D}}else if(B.index===void 0&&B.insertPos===void 0){let F=T.current.input.clientY;if(d.current.length>0){let L=0,W=1/0;d.current.forEach((J,K)=>{let U=J.top+J.height/2,q=Math.abs(F-U);q<W&&(W=q,L=K)});let _=d.current[L],V=_.top+_.height/2,Z=F>=V?L:L-1;B={...B,index:Z,fromCoordinates:!0}}else B={...B,index:(g==null?void 0:g.state.doc.childCount)||0}}k(A,B),m(!1),l(null),i(null),M()}}),[g,m,M,l,i,k,P]),{activeId:s,activeDragType:n,dndMode:c,lastPlaceholderIndex:o,cleanupPlaceholder:M}},"usePragmaticDnd");import{useCallback as H8,useEffect as V8}from"react";import{useAtomValue as F8}from"jotai";var $l=a(({setItems:e,rafId:t,editor:r})=>{let o=F8(we),n=r||o,i=H8(s=>{t.current&&typeof cancelAnimationFrame!="undefined"&&cancelAnimationFrame(t.current);let l=setTimeout(()=>{if(typeof requestAnimationFrame!="undefined")t.current=requestAnimationFrame(()=>{try{let c=s==null?void 0:s.view.dom;if(!c)return;let u=c.querySelectorAll(".react-renderer > div[data-node-view-wrapper][data-id]"),d=[];u.forEach(p=>{let m=p,f=m.dataset.id;if(f){let v=m.parentElement,h=!1;for(;v&&v!==c;){if(v.hasAttribute("data-column-cell")){h=!0;break}v=v.parentElement}h||d.push(f)}}),e(p=>({Editor:d,Sidebar:p.Sidebar}))}catch(c){console.error("Error syncing editor items:",c),e(u=>({...u}))}});else try{let c=s==null?void 0:s.view.dom;if(!c)return;let u=c.querySelectorAll(".react-renderer > div[data-node-view-wrapper][data-id]"),d=[];u.forEach(p=>{let m=p,f=m.dataset.id;if(f){let v=m.parentElement,h=!1;for(;v&&v!==c;){if(v.hasAttribute("data-column-cell")){h=!0;break}v=v.parentElement}h||d.push(f)}}),e(p=>({Editor:d,Sidebar:p.Sidebar}))}catch(c){console.error("Error syncing editor items:",c)}},50);return()=>clearTimeout(l)},[e,t]);return V8(()=>{if(!n||typeof n.on!="function")return;let s,l=a(()=>{n&&(s&&s(),s=i(n))},"updateItems");n.on("update",l),n.on("selectionUpdate",l),n.on("create",l),n.on("transaction",l),n&&!n.isDestroyed&&l();let c=a(u=>{l()},"handleNodeDuplicated");return document.addEventListener("node-duplicated",c),()=>{n==null||n.off("update",l),n==null||n.off("selectionUpdate",l),n==null||n.off("create",l),n==null||n.off("transaction",l),document.removeEventListener("node-duplicated",c),s&&s(),t.current&&typeof cancelAnimationFrame!="undefined"&&(cancelAnimationFrame(t.current),t.current=null)}},[n,i,t]),{syncEditorItems:i}},"useSyncEditorItems");import{Fragment as z8,jsx as Jd}from"react/jsx-runtime";var Ia=[{type:"text",align:"left",content:`
|
|
202
|
+
`,text_style:"h1"},{type:"text",align:"left",content:""},{type:"image",src:""}],_8=W8(({hidePublish:e,theme:t,channels:r,routing:o,render:n,headerRenderer:i,value:s,colorScheme:l,hidePreviewPanelExitButton:c,...u},d)=>{let p=Ho(we),[m,f]=Zd(Ce),[v,h]=Zd(Jo),y=Sa({}),[x,E]=qd(c?"desktop":void 0),g=Ho(et),b=Ho(pe),M=Ho(_m),C=Ho(Dr),S=Sa(-1),P=O8(pf),k=Sa(!1),w=Sa(!1),[T]=Zd(se),A=Ho(gr),N=Ho(dt),R=Ho(Sr),[B,H]=qd({Editor:[],Sidebar:R});co(()=>{H(U=>({...U,Sidebar:R}))},[R]);let D=Sa(null);mi({items:B,setItems:H,editor:p});let{syncEditorItems:F}=$l({setItems:H,rafId:D,editor:p});co(()=>{N&&(w.current=!1)},[N]);let[L,W]=qd(!1);co(()=>{if(b===!1||b===null){let U=setTimeout(()=>{W(!0)},100);return()=>clearTimeout(U)}else W(!1)},[b,L]),co(()=>{if(m){let U=m.type.name,q=Cs(U);P({nodeName:U,config:q})}},[m,P]);let _=V5(()=>{var q,ce,ue,Ee,Me,Ye,lt,Mt,ct,bt,Qe,yt,Be,$e,le,ye,Te,ne,Fe,Nt,St,Ar,Mr,zo,$o,jo,O,z,$,G,Y,me,Se,Ne;if(C)return C;let U=(ue=(ce=(q=g==null?void 0:g.data)==null?void 0:q.tenant)==null?void 0:ce.brand)==null?void 0:ue.settings;return{brandColor:((Ee=U==null?void 0:U.colors)==null?void 0:Ee.primary)||"#000000",textColor:((Me=U==null?void 0:U.colors)==null?void 0:Me.secondary)||"#000000",subtleColor:((Ye=U==null?void 0:U.colors)==null?void 0:Ye.tertiary)||"#666666",headerStyle:(Mt=(lt=U==null?void 0:U.email)==null?void 0:lt.header)!=null&&Mt.barColor?"border":"plain",logo:(Qe=(bt=(ct=U==null?void 0:U.email)==null?void 0:ct.header)==null?void 0:bt.logo)==null?void 0:Qe.image,link:($e=(Be=(yt=U==null?void 0:U.email)==null?void 0:yt.header)==null?void 0:Be.logo)==null?void 0:$e.href,facebookLink:(ne=(Te=(ye=(le=U==null?void 0:U.email)==null?void 0:le.footer)==null?void 0:ye.social)==null?void 0:Te.facebook)==null?void 0:ne.url,linkedinLink:(Ar=(St=(Nt=(Fe=U==null?void 0:U.email)==null?void 0:Fe.footer)==null?void 0:Nt.social)==null?void 0:St.linkedin)==null?void 0:Ar.url,instagramLink:(jo=($o=(zo=(Mr=U==null?void 0:U.email)==null?void 0:Mr.footer)==null?void 0:zo.social)==null?void 0:$o.instagram)==null?void 0:jo.url,mediumLink:(G=($=(z=(O=U==null?void 0:U.email)==null?void 0:O.footer)==null?void 0:z.social)==null?void 0:$.medium)==null?void 0:G.url,xLink:(Ne=(Se=(me=(Y=U==null?void 0:U.email)==null?void 0:Y.footer)==null?void 0:me.social)==null?void 0:Se.twitter)==null?void 0:Ne.url}},[C,g]),V=M&&!!_,j=H5(()=>{Object.values(y.current).forEach(U=>clearTimeout(U)),y.current={}},[]);co(()=>()=>{j()},[j]),co(()=>{let U=a(q=>{if(q.key==="Escape"&&(f(null),p==null||p.commands.blur(),S.current=-1),q.key==="Tab"&&p){q.preventDefault();let ce=-1;m&&p.state.doc.content.forEach((Me,Ye,lt)=>{m.attrs.id===Me.attrs.id&&(ce=lt)}),ce===-1&&(ce=0);let ue=p.state.doc,Ee;if(q.shiftKey?Ee=(ce-1+ue.childCount)%ue.childCount:Ee=(ce+1)%ue.childCount,Ee!==ce||m===null){let Me=ue.child(Ee);f(Me),p.commands.blur()}}},"handleKeyPress");return document.addEventListener("keydown",U),()=>{document.removeEventListener("keydown",U)}},[p,m,f]),co(()=>{if(b!==!1||N)return;let U=T!=null?T:"";if(U){let q=Mc(U,"email");h(q||"")}setTimeout(()=>{if(!(!p||p.isDestroyed)&&p.state.doc.childCount===1){let q=p.state.doc.child(0);f(q)}},0)},[g,b,N,p,h,f,T]),co(()=>{b===!1&&g&&!w.current&&(w.current=!0,setTimeout(()=>{p&&!p.isDestroyed&&F(p)},300))},[b,g,p,F]),co(()=>(k.current=!0,()=>{k.current=!1}),[]);let Z=H5(U=>{let ce=U||(x===void 0?"desktop":void 0);E(ce),f(null),ce?p==null||p.setEditable(!1):p==null||p.setEditable(!0)},[p,x,E,f]),J=a(U=>{h(U.target.value)},"handleSubjectChange"),K=V5(()=>{if(b!==!1||!L)return null;let U=s&&s.elements&&s.elements.length>0;U&&(w.current=!0);let q;return U&&(q=s.elements.find(ue=>ue.type==="channel"&&ue.channel==="email")),q||(q={type:"channel",channel:"email",elements:Ia}),We({version:"2022-01-01",elements:[q]},{channel:"email"})},[s,b,L]);return N&&(T===null||K===null)?null:Jd(Wt,{theme:t,colorScheme:l,isLoading:!!b,Header:i?i({hidePublish:e,channels:r,routing:o}):Jd(sr,{hidePublish:e,channels:r,routing:o}),...u,children:Jd(z8,{children:n==null?void 0:n({subject:v,handleSubjectChange:J,selectedNode:m,setSelectedNode:f,previewMode:x,templateEditor:p,ref:d,isBrandApply:V,brandSettings:_,items:B,content:K,syncEditorItems:F,brandEditorContent:A,templateData:g,togglePreviewMode:Z,hidePreviewPanelExitButton:c})})})}),jl=U8(_8);var Zl=class Zl{};a(Zl,"UploadImageAPI"),Zl.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 Kd=Zl,Gd=Kd;var Ut=a(e=>(e==null||e.variables,e==null||e.disableVariablesAutocomplete,[Rd,N5.configure({document:!1,dropcursor:!1,gapcursor:!1,heading:!1,horizontalRule:!1,paragraph:!1,blockquote:!1,hardBreak:!1,code:!1}),_d.configure({setSelectedNode:e==null?void 0:e.setSelectedNode,shouldHandleClick:e==null?void 0:e.shouldHandleClick}),w5.configure({keepMarks:!0,HTMLAttributes:{class:"my-line-break"}}),l5,Hu,Ud,zd,Dd.configure({levels:[1,2,3,4,5,6]}),Bs,kl,E5,Ds,Pl,Al,Vs,Fd.configure({openOnClick:!1,defaultProtocol:"https",HTMLAttributes:{class:"link"}}),M5,Os.configure(),Sl.configure({allowedMimeTypes:["image/png","image/jpeg","image/gif","image/webp"],onDrop:(t,r,o)=>{r.forEach(async n=>{let i=await Gd.uploadImage(n);t.chain().setImageBlockAt({pos:o,src:i}).focus().run()})},onPaste:(t,r)=>{r.forEach(async o=>{let n=await Gd.uploadImage(o);return t.chain().setImageBlockAt({pos:t.state.selection.anchor,src:n}).focus().run()})}}),P5.extend({addKeyboardShortcuts(){return{}}}).configure({types:["paragraph","heading"]}),A5,k5.configure({includeChildren:!0,showOnlyCurrent:!0,placeholder:"",emptyEditorClass:"is-editor-empty",emptyNodeClass:"is-empty",showOnlyWhenEditable:!0}),Ru.configure({width:2,class:"ProseMirror-dropcursor courier-border-black"}),Ed,hn,bn,Il,Bl]),"ExtensionKit");import{BubbleMenu as $8,useCurrentEditor as j8}from"@tiptap/react";import{jsx as F5}from"react/jsx-runtime";var _t=a(({config:e})=>{let{editor:t}=j8(),r=xl(t);return t?F5($8,{editor:t,tippyOptions:{appendTo:o=>{var n;return(n=o.closest(".bubble-text-menu-container"))!=null?n:o},getReferenceClientRect:()=>{var s,l,c,u;let o=(c=(l=(s=t==null?void 0:t.state)==null?void 0:s.selection)==null?void 0:l.from)!=null?c:0,n=(u=t==null?void 0:t.view)==null?void 0:u.domAtPos(o),i=(n==null?void 0:n.node.parentNode).getBoundingClientRect();return{width:i==null?void 0:i.width,height:i==null?void 0:i.height,left:(i==null?void 0:i.left)-12,right:i==null?void 0:i.right,top:i==null?void 0:i.top,bottom:i==null?void 0:i.bottom,x:i==null?void 0:i.left,y:i==null?void 0:i.top,toJSON:()=>({})}},placement:"top",offset:[0,12]},shouldShow:r.shouldShow,updateDelay:100,"data-testid":"bubble-text-menu",children:t&&F5(wa,{editor:t,config:e})}):null},"BubbleTextMenu");import{TextSelection as Z8}from"@tiptap/pm/state";import{EditorProvider as q8,Extension as J8,useCurrentEditor as K8}from"@tiptap/react";import{useAtomValue as G8,useSetAtom as O5}from"jotai";import{memo as X8,useEffect as Yd,useMemo as Y8,useRef as W5}from"react";import{jsx as lr,jsxs as Xd}from"react/jsx-runtime";var Q8=a(({value:e,readOnly:t})=>{let{editor:r}=K8(),o=O5(Vn),n=G8(pe),i=W5(!1);return Yd(()=>{!r||(n!==!1||i.current)&&!t||!e||(i.current=!0,r.commands.setContent(Pc(e!=null?e:"")))},[r,e,n,t]),Yd(()=>{r&&(o(r),setTimeout(()=>{r.commands.blur()},1))},[r,o]),null},"EditorContent"),e4=a(({facebookLink:e,linkedinLink:t,instagramLink:r,mediumLink:o,xLink:n,readOnly:i=!1,value:s,onUpdate:l})=>{let c=W5(!1),u=O5(Ce),d=J8.create({name:"escapeHandler",addKeyboardShortcuts(){return{Escape:({editor:m})=>{let{state:f,dispatch:v}=m.view;return v(f.tr.setSelection(Z8.create(f.doc,f.selection.$anchor.pos))),u&&u(null),!1}}}});Yd(()=>(c.current=!0,()=>{c.current=!1}),[]);let p=Y8(()=>[...Ut({setSelectedNode:u}),d].filter(m=>m!==void 0),[d,u]);return Xd("div",{className:"courier-flex courier-flex-row courier-gap-6 courier-justify-between courier-items-start",children:[Xd(q8,{content:Pc(s!=null?s:""),extensions:p,editable:!i,autofocus:!i,onUpdate:l,editorContainerProps:{className:I("courier-py-2 courier-flex-grow",i&&"courier-brand-editor-readonly")},immediatelyRender:!1,children:[lr(Q8,{value:s,readOnly:i}),lr(_t,{})]}),Xd("div",{className:"courier-flex courier-justify-end courier-items-center courier-gap-2 courier-mt-3",children:[e&&lr("a",{href:e,target:"_blank",rel:"noopener noreferrer",children:lr(qi,{className:"courier-w-5 courier-h-5"})}),t&&lr("a",{href:t,target:"_blank",rel:"noopener noreferrer",children:lr(Gi,{className:"courier-w-5 courier-h-5"})}),r&&lr("a",{href:r,target:"_blank",rel:"noopener noreferrer",children:lr(Ki,{className:"courier-w-5 courier-h-5"})}),o&&lr("a",{href:o,target:"_blank",rel:"noopener noreferrer",children:lr(Xi,{className:"courier-w-5 courier-h-5"})}),n&&lr("a",{href:n,target:"_blank",rel:"noopener noreferrer",children:lr(ra,{className:"courier-w-5 courier-h-5"})})]})]})},"BrandFooterComponent"),Ra=X8(e4);import{Fragment as t4,jsx as pi,jsxs as ql}from"react/jsx-runtime";var U5=a(({value:e,icon:t,...r})=>pi(Lt,{value:e,...r,className:"!courier-w-10 !courier-h-6 [&_svg]:!courier-size-5 [&_svg]:courier-fill-accent dark:[&_svg]:courier-fill-accent-foreground hover:courier-bg-transparent courier-rounded-sm data-[state=on]:courier-bg-background [&_svg]:data-[state=on]:courier-fill-foreground",children:t}),"PreviewItem"),Qd=a(({previewMode:e,togglePreviewMode:t,hideMobileToggle:r=!1,hideExitButton:o=!1,...n})=>ql("div",{...n,className:I("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",n.className),children:[e&&!r&&ql(t4,{children:[ql(fr,{type:"single",value:e,onValueChange:i=>{i!==""&&t(i)},className:"courier-w-full courier-rounded-md !courier-p-0.5 courier-bg-[#3B82F6] !courier-gap-0",children:[pi(U5,{value:"desktop",icon:pi(ou,{})}),pi(U5,{value:"mobile",icon:pi(cu,{})})]}),!o&&pi("div",{className:"courier-mx-4 courier-w-px courier-h-6 courier-bg-border"})]}),!o&&ql(ke,{variant:"link",onClick:()=>t(),children:[e?"Exit":"View"," Preview"]})]}),"PreviewPanel");import{forwardRef as j5}from"react";function r4(){typeof window!="undefined"&&(window.__COURIER_CREATE_TEST__||(window.__COURIER_CREATE_TEST__={editors:{email:null,sms:null,push:null,inbox:null,slack:null,teams:null},currentEditor:null,activeChannel:null,templateEditorContent:null}))}a(r4,"initTestHelpers");function zt(e,t){typeof window!="undefined"&&(r4(),window.__COURIER_CREATE_TEST__&&(window.__COURIER_CREATE_TEST__.editors[e]=t,window.__COURIER_CREATE_TEST__.currentEditor=t,window.__COURIER_CREATE_TEST__.activeChannel=t?e:null))}a(zt,"setTestEditor");import{Extension as i4}from"@tiptap/core";import{TextSelection as a4}from"@tiptap/pm/state";import{EditorProvider as s4,useCurrentEditor as l4}from"@tiptap/react";import{useAtom as _5,useAtomValue as uo,useSetAtom as Pn}from"jotai";import{useCallback as Vo,useEffect as er,useMemo as c4,useRef as qr}from"react";import{useCurrentEditor as o4}from"@tiptap/react";import{useEffect as n4}from"react";var cr=a(({value:e,defaultValue:t})=>{let{editor:r}=o4();return n4(()=>{if(!r)return;let o=setTimeout(()=>{r.commands.setContent(e||t)},0);return()=>clearTimeout(o)},[r,e,t]),null},"ReadOnlyEditorContent");import{Fragment as m4,jsx as La,jsxs as p4}from"react/jsx-runtime";var u4=a(({value:e})=>{let{editor:t}=l4(),[r,o]=_5(se),n=Pn(Oe),i=uo(Jo),s=uo(Ce),l=Pn(we),c=Pn(Go),u=qr(!1),d=qr(),p=uo(pe),m=uo(et),f=qr(!1),v=uo(dt);return er(()=>{p&&(f.current=!1)},[p]),er(()=>(c({action:"register",id:"email-subject",fn:a(()=>{var y;if(d.current&&(clearTimeout(d.current),d.current=void 0,t&&i!==null&&p===!1&&!v))try{let x=be(t.getJSON());if(!x||!Array.isArray(x))return;let E=i;if(!i&&r){let C=(y=r==null?void 0:r.elements)==null?void 0:y.find(S=>S.type==="channel"&&S.channel==="email");C&&(E=Ri(C,"email"))}let g=mr(r,"email",E||"",x),b={elements:g.elements,channel:"email",...g.raw&&{raw:g.raw}},M=rt(r,b);JSON.stringify(r)!==JSON.stringify(M)&&(o(M),n(M))}catch(x){console.error("[FlushSubjectUpdate]",x)}},"flushSubjectUpdate")}),()=>{c({action:"unregister",id:"email-subject"})}),[t,i,p,v,r,o,n,c]),er(()=>{!t||p!==!1||f.current||!e||(l(t),f.current=!0,t.commands.setContent(e))},[t,e,l,p]),er(()=>{if(!(!(t&&i!==null)||p!==!1||v)&&!t.isFocused)return d.current&&clearTimeout(d.current),d.current=setTimeout(()=>{var h;try{let y=be(t.getJSON());if(!y||!Array.isArray(y))return;let x=i;if(!i&&r){let M=(h=r==null?void 0:r.elements)==null?void 0:h.find(C=>C.type==="channel"&&C.channel==="email");M&&(x=Ri(M,"email"))}let E=mr(r,"email",x||"",y),g={elements:E.elements,channel:"email",...E.raw&&{raw:E.raw}},b=rt(r,g);JSON.stringify(r)!==JSON.stringify(b)&&(o(b),n(b))}catch(y){console.error(y)}},500),()=>{d.current&&clearTimeout(d.current)}},[m,t,i,o,n,p,r,v]),er(()=>()=>{t&&!t.isDestroyed&&t.setEditable(!0)},[t]),er(()=>{t&&u.current&&t.commands.updateSelectionState(s)},[t,s]),er(()=>(u.current=!0,()=>{u.current=!1}),[]),null},"EditorContent"),d4=a(({value:e,readOnly:t=!1,onDestroy:r,onUpdate:o,subject:n,variables:i,disableVariablesAutocomplete:s=!1})=>{let l=Pn(Ts),c=qr(),[u,d]=_5(se),p=uo(Jo),m=n!=null?n:p,f=Pn(Ce),v=uo(we),h=uo(dt),y=uo(Vt),x=Pn(Go),E=Pn(Oe),g=qr(u),b=qr(m),M=qr(y);er(()=>{g.current=u},[u]),er(()=>{b.current=m},[m]),er(()=>{M.current=y},[y]),er(()=>{v==null||v.setEditable(!t)},[t,v]);let C=i4.create({name:"escapeHandler",addKeyboardShortcuts(){return{Escape:({editor:_})=>{let{state:V,dispatch:j}=_.view;return j(V.tr.setSelection(a4.create(V.doc,V.selection.$anchor.pos))),f&&f(null),!1}}}}),S=Vo(({editor:_})=>{o==null||o(_),zt("email",_),f&&setTimeout(()=>{f(null)},100)},[f,o]),P=qr(),k=qr(null),w=Vo((_,V)=>{var ce;if(h)return;let j=g.current,Z=b.current;if(!j){let ue={version:"2022-01-01",elements:[{type:"channel",channel:"email",elements:V}]};d(ue),E(ue);return}let J=j.elements.find(ue=>ue.type==="channel"&&ue.channel==="email"),K={...J};K.elements=(ce=K.elements)==null?void 0:ce.filter(ue=>ue.type!=="meta");let U={type:"channel",channel:"email",elements:V};if(JSON.stringify(K)!==JSON.stringify(U)){let ue=Z;!Z&&J&&(ue=Ri(J,"email"));let Ee=mr(j,"email",ue||"",V);U.elements=Ee.elements,Ee.raw&&(U.raw=Ee.raw);let Me=rt(j,U);d(Me),E(Me)}o==null||o(_),zt("email",_)},[d,E,o,h]),T=Vo(({editor:_})=>{let V=be(_.getJSON());k.current={editor:_,elemental:V},P.current&&clearTimeout(P.current),P.current=setTimeout(()=>{if(k.current){let{editor:j,elemental:Z}=k.current;w(j,Z),k.current=null}},200)},[w]),A=Vo(({editor:_})=>{if(M.current)return;let{selection:V}=_.state,{$anchor:j}=V,J=V.$head.marks().find(ce=>ce.type.name==="link");J||_.isActive("link")?l({mark:J}):l(null);let K=j.depth,U=null,q=null;for(;K>0;){let ce=j.node(K);!q&&ce.type.name==="blockquote"&&(q=ce),!U&&(ce.type.name==="paragraph"||ce.type.name==="heading")&&(U=ce),K--}q?f(q):U&&f(U)},[l,f]),N=Vo(({editor:_,transaction:V})=>{let j=V==null?void 0:V.getMeta("showLinkForm");if(j){let{selection:Z}=_.state,K=Z.$head.marks().find(U=>U.type.name==="link");l({mark:K,link:{from:j.from,to:j.to}})}},[l]),R=Vo(()=>{c.current&&clearTimeout(c.current),P.current&&clearTimeout(P.current),r==null||r(),zt("email",null)},[r]);er(()=>(x({action:"register",id:"email-content",fn:a(()=>{if(P.current&&(clearTimeout(P.current),P.current=void 0,k.current)){let{editor:V,elemental:j}=k.current;w(V,j),k.current=null}},"flushContentUpdate")}),()=>{x({action:"unregister",id:"email-content"})}),[w,x]);let B=Vo(_=>{var K;if(M.current)return;let V=(K=_.view)==null?void 0:K.editor;if(!V||!V.isEditable)return;let j=_.target,Z=V.view.posAtDOM(j,0),J=V.state.doc.resolve(Z).node();J.type.name==="paragraph"&&f(J)},[f]),H=Vo(()=>!M.current,[]),D=c4(()=>[...Ut({setSelectedNode:f,shouldHandleClick:H,variables:i,disableVariablesAutocomplete:s}),C].filter(_=>_!==void 0),[C,f,H,i,s]),F=e||{type:"doc",content:[{type:"paragraph"}]},L=t?{editable:!1,autofocus:!1}:{editable:!0,autofocus:!0,onCreate:S,onUpdate:T,onSelectionUpdate:A,onTransaction:N},W=qr(null);return er(()=>{let _=W.current;if(!(!_||t))return Kt({element:_,getData:()=>({type:"editor",id:"editor-drop-zone"}),canDrop:({source:V})=>V.data.type==="sidebar"?!0:V.data.type==="editor"})},[t]),La("div",{ref:W,"data-testid":"email-editor",children:La(s4,{content:F,extensions:D,...L,onDestroy:R,editorContainerProps:{onClick:B},immediatelyRender:!1,children:t?La(cr,{value:F,defaultValue:Ia}):p4(m4,{children:[La(u4,{value:F}),La(_t,{})]})})})},"EmailEditor"),em=d4;import{useAtomValue as Jl,useSetAtom as v4}from"jotai";import{AlignVerticalSpaceAround as C4,GripVertical as x4,Quote as T4}from"lucide-react";import{forwardRef as f4,useEffect as g4,useRef as h4,useState as b4}from"react";import{jsx as tm}from"react/jsx-runtime";var fi=a(({children:e,id:t,className:r,editor:o})=>tm(y4,{id:t,className:r,editor:o,children:e}),"SideBarSortableItemWrapper"),y4=f4(({children:e,className:t,id:r,editor:o},n)=>{let i=h4(null),[s,l]=b4(!1);return g4(()=>{let c=i.current;if(!(!c||!r))return Hr(ma({element:c,getInitialData:()=>({id:r,type:"sidebar",dragType:r}),onDragStart:()=>{l(!0),document.body.style.cursor="grabbing",o&&o.isEditable&&o.setEditable(!1)},onDrop:()=>{l(!1),document.body.style.cursor="",o&&o.setEditable(!0)}}))},[r,o]),tm("div",{ref:i,"data-cypress":"draggable-item","data-node-view-wrapper":!0,"data-id":r,className:I(t,"courier-relative",s&&"courier-opacity-50 courier-cursor-grabbing"),children:tm("div",{children:e})})});import{Fragment as A4,jsx as Le,jsxs as gi}from"react/jsx-runtime";var E4={heading:Ks,text:Ao,image:Xs,spacer:Ys,divider:Po,button:ko,customCode:Zs,column:$s,blockquote:Us},w4=a(e=>({heading:Le(zu,{}),text:Le(ju,{}),image:Le($u,{}),spacer:Le(C4,{className:"courier-w-4 courier-h-4"}),divider:Le(_u,{}),button:Le(Ou,{}),customCode:Le(Uu,{}),column:Le(Wu,{}),blockquote:Le(T4,{strokeWidth:1.25,className:"courier-w-4 courier-h-4"})})[e],"getBlockIcon"),k4=a(e=>qt(e)?`${e.type}:${e.preset}`:e,"getItemKey"),P4=a(({preset:e})=>{let t=e.icon||w4(e.type);return Le(Ze,{draggable:!0,icon:t,draggableLabel:e.label,label:e.label})},"PresetBlock"),rm=a(({items:e,brandEditor:t,label:r,editor:o})=>{var p,m;let n=Jl(et),i=v4($n),s=Jl(tt),l=Jl(Sr),c=Jl(yo),u=e!=null?e:l,d=a(f=>{if(qt(f)){let h=c.find(y=>y.type===f.type&&y.key===f.preset);return h?Le(P4,{preset:h}):(console.warn(`[SideBar] Preset not found: ${f.type}:${f.preset}`),null)}let v=E4[f];return v?Le(v,{draggable:!0}):null},"renderBlockItem");return gi("div",{className:"courier-flex courier-flex-col courier-h-full",children:[gi("div",{className:"courier-flex-1",children:[r&&gi(A4,{children:[Le("p",{className:"courier-text-sm courier-font-medium courier-text-foreground",children:r}),Le(fe,{className:"courier-my-4"})]}),Le("div",{className:"courier-flex courier-flex-col courier-gap-4 courier-w-full",children:u.map(f=>{let v=k4(f);return Le(fi,{id:v,editor:o,children:gi("div",{className:I("courier-rounded-md courier-border courier-border-border courier-flex courier-flex-row courier-items-center courier-gap-1 courier-bg-background courier-cursor-grab courier-opacity-[0.999] courier-px-3 courier-py-2 courier-select-none"),children:[Le(x4,{strokeWidth:1,className:"courier-w-4 courier-stroke-neutral-400 courier-fill-neutral-400"}),d(f)]})},v)})})]}),t&&gi("div",{className:"courier-mt-auto courier-pt-4",children:[Le(fe,{className:"courier-mb-4 -courier-mx-4"}),(m=(p=n==null?void 0:n.data)==null?void 0:p.tenant)!=null&&m.brand?Le("div",{className:"courier-flex courier-flex-row courier-gap-2 courier-items-center courier-justify-end courier-w-full",children:Le(ke,{variant:"link",className:"courier-underline",onClick:()=>i("brand"),disabled:!!s,children:"Edit brand"})}):gi("div",{className:"courier-flex courier-flex-col courier-gap-2",children:[Le("h3",{className:"courier-text-md courier-font-medium courier-text-foreground",children:"Customize brand theme"}),Le("p",{className:"courier-text-sm courier-text-muted-foreground",children:"Customize header and footer to apply to the template."}),Le(ke,{variant:"primary",className:"courier-w-fit courier-mt-2",onClick:()=>i("brand"),children:"Customize"})]})]})]})},"SideBar");import{useAtomValue as M4}from"jotai";import{jsx as Fo,jsxs as N4}from"react/jsx-runtime";var om=a(({element:e,editor:t})=>{var i,s;let r=M4(vu);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(l=>l.type.name==="link")))return Fo(C5,{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:l}=t.state.selection,c=l.depth;for(;c>0;){let u=l.node(c);if(u.type.name==="blockquote")return u;c--}},"getBlockquoteElement");return N4("div",{className:"courier-flex courier-flex-col courier-gap-4",children:[e.type.name==="button"&&Fo($g,{element:e,editor:t},e.attrs.id),e.type.name==="divider"&&Fo(i5,{element:e,editor:t},e.attrs.id),["paragraph","heading"].includes(e.type.name)&&!o&&Fo(A1,{element:e,editor:t},e.attrs.id),e.type.name==="imageBlock"&&Fo(g5,{element:e,editor:t},e.attrs.id),e.type.name==="customCode"&&Fo(Id,{element:e,editor:t},e.attrs.id),(e.type.name==="blockquote"||e.type.name==="paragraph"&&o||e.type.name==="heading"&&o)&&Fo(N1,{element:n()||e,editor:t},e.attrs.id),e.type.name==="column"&&Fo(Md,{element:e,editor:t},e.attrs.id)]})},"SideBarItemDetails");import{forwardRef as z5}from"react";import{useAtom as S4}from"jotai";import{Fragment as I4,jsx as Kl,jsxs as R4}from"react/jsx-runtime";var An=z5(({children:e,previewMode:t,className:r,readOnly:o=!1,...n},i)=>Kl("div",{className:I("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})),Mn=z5(({children:e,className:t,previewMode:r,skipExpanded:o=!1,width:n,...i},s)=>{let[l,c]=S4(Nr),u=o?!1:l,d=n||"courier-w-64";return r?null:R4(I4,{children:[u&&Kl("div",{className:"courier-absolute courier-inset-0 courier-bg-black/50 courier-z-[9] courier-transition-opacity courier-duration-300 courier-cursor-pointer",onClick:()=>c(!1),"aria-hidden":"true"}),Kl("div",{className:I("courier-editor-sidebar-container courier-flex-shrink-0 courier-self-stretch courier-relative",d,t),children:Kl("div",{className:I("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-transition-all courier-duration-300 courier-ease-in-out",u?"courier-w-[80vw] courier-z-10 courier-shadow-xl courier-translate-x-0":d+" courier-translate-x-0"),...i,ref:s,children:e})})]})});import{useAtomValue as $5,useSetAtom as L4}from"jotai";import{jsx as $t,jsxs as Nn}from"react/jsx-runtime";var Z5=j5(({children:e,className:t,...r},o)=>$t("div",{className:I("courier-editor-container courier-relative",t),...r,ref:o,children:e})),q5=j5(({children:e,previewMode:t,...r},o)=>$t("div",{className:I("courier-editor-main courier-transition-all courier-duration-300 courier-ease-in-out",t&&"courier-max-w-4xl courier-mx-auto"),...r,ref:o,children:e})),J5=a(({variables:e,disableVariablesAutocomplete:t,theme:r,isLoading:o,hidePublish:n,channels:i,brandEditor:s,routing:l,colorScheme:c,...u})=>{let d=$5(se),p=$5(Nr),m=L4(Nr),f=a(()=>{p&&m(!1)},"handleSubjectAreaClick");return $t(jl,{value:d,variables:e,theme:r,isLoading:o,hidePublish:n,channels:i,brandEditor:s,routing:l,colorScheme:c,render:({subject:v,handleSubjectChange:h,selectedNode:y,setSelectedNode:x,previewMode:E,templateEditor:g,ref:b,isBrandApply:M,brandSettings:C,items:S,content:P,syncEditorItems:k,brandEditorContent:w,templateData:T,togglePreviewMode:A,hidePreviewPanelExitButton:N})=>{var R,B,H,D,F,L;return Nn(An,{previewMode:E,children:[Nn("div",{className:"courier-flex courier-flex-col courier-flex-1",children:[Nn("div",{className:"courier-bg-background courier-h-12 courier-flex courier-items-center courier-gap-2 courier-px-4 courier-border-b",onClick:f,children:[Nn("h4",{className:"courier-text-sm courier-h-[25px] courier-flex courier-items-end courier-pb-0.5",children:["Subject:"," "]}),$t(Pa,{value:v!=null?v:"",onChange:W=>h({target:{value:W}}),onFocus:()=>x(null),className:"!courier-bg-background courier-text-sm courier-flex-1",placeholder:"Write subject...",readOnly:E!==void 0,showToolbar:!0})]}),Nn(Z5,{ref:b,children:[Nn(q5,{previewMode:E,children:[M&&Nn("div",{className:I("courier-py-5 courier-px-9 courier-pb-0 courier-relative courier-overflow-hidden courier-flex courier-flex-col courier-items-start",(C==null?void 0:C.headerStyle)==="border"&&"courier-pt-6"),children:[(C==null?void 0:C.headerStyle)==="border"&&$t("div",{className:"courier-absolute courier-top-0 courier-left-0 courier-right-0 courier-h-2",style:{backgroundColor:C==null?void 0:C.brandColor}}),(C==null?void 0:C.logo)&&$t("img",{src:C.logo,alt:"Brand logo",className:"courier-w-auto courier-max-w-36 courier-object-contain courier-cursor-default"})]}),P&&$t(em,{value:P,onUpdate:k,variables:e,disableVariablesAutocomplete:t},`email-editor-${t?"no-autocomplete":"autocomplete"}`),M&&T&&$t("div",{className:"courier-py-5 courier-px-9 courier-pt-0 courier-flex courier-flex-col",children:$t(Ra,{readOnly:!0,value:w!=null?w:(L=(F=(D=(H=(B=(R=T==null?void 0:T.data)==null?void 0:R.tenant)==null?void 0:B.brand)==null?void 0:H.settings)==null?void 0:D.email)==null?void 0:F.footer)==null?void 0:L.markdown,variables:e,facebookLink:C==null?void 0:C.facebookLink,linkedinLink:C==null?void 0:C.linkedinLink,instagramLink:C==null?void 0:C.instagramLink,mediumLink:C==null?void 0:C.mediumLink,xLink:C==null?void 0:C.xLink})})]}),$t(Qd,{previewMode:E,togglePreviewMode:A,hideExitButton:N})]})]}),$t(Mn,{previewMode:E,children:$t("div",{className:"courier-p-1 courier-h-full",children:y?$t(om,{element:y,editor:g}):$t(rm,{items:S.Sidebar,brandEditor:s,label:"Blocks library",editor:g!=null?g:void 0})})})]})},...u})},"EmailLayout");import{useCurrentEditor as B4}from"@tiptap/react";import{useAtom as D4,useAtomValue as Gl,useSetAtom as nm}from"jotai";import{forwardRef as H4,memo as V4,useCallback as F4,useEffect as Ba,useMemo as K5,useRef as im}from"react";import{jsx as G5}from"react/jsx-runtime";var Da=[{type:"text",content:`
|
|
203
203
|
`,text_style:"h2"},{type:"text",content:`
|
|
204
|
-
`},{type:"action",content:"Register",align:"left",href:""}],
|
|
205
|
-
`,text_style:"h2"},u=i[0],
|
|
206
|
-
`};t={...t,elements:[c,
|
|
204
|
+
`},{type:"action",content:"Register",align:"left",href:""}],X5=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:Da};else if(t.type==="channel"&&"elements"in t){let r=t.elements||[],o=r.find(m=>m.type==="meta"),n=r.filter(m=>m.type!=="meta"),i=n.filter(m=>m.type==="text"),s=n.filter(m=>m.type==="action"),c={type:"text",content:(o&&"title"in o&&o.title||"")+`
|
|
205
|
+
`,text_style:"h2"},u=i[0],d={type:"text",content:u&&"content"in u?u.content:`
|
|
206
|
+
`};t={...t,elements:[c,d,...s]}}return t},"getOrCreateInboxElement"),Y5={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"}},Q5=a(({value:e})=>{let{editor:t}=B4(),r=nm(we),o=Gl(se),n=Gl(pe),i=im(!1);return Ba(()=>{n&&(i.current=!1)},[n]),Ba(()=>{!t||n!==!1||i.current||!e||(i.current=!0,t.commands.setContent(e))},[t,e,n]),Ba(()=>{t&&(r(t),zt("inbox",t),setTimeout(()=>{t.commands.blur()},1))},[t,r]),Ba(()=>{if(!t||!o||t.isFocused)return;let s=X5(o),l=We({version:"2022-01-01",elements:[s]},{channel:"inbox"}),c=be(l),u=be(t.getJSON());JSON.stringify(c)!==JSON.stringify(u)&&setTimeout(()=>{t.isFocused||t.commands.setContent(l)},1)},[t,o]),null},"InboxEditorContent"),O4=H4(({theme:e,hidePublish:t,readOnly:r,channels:o,routing:n,headerRenderer:i,render:s,value:l,colorScheme:c,variables:u,disableVariablesAutocomplete:d=!1,...p},m)=>{let f=Gl(pe),v=im(!0),h=im(!1),y=nm(Ce),[x,E]=D4(se),g=nm(Oe),b=Gl(dt);Ba(()=>(h.current=!0,()=>{h.current=!1}),[]);let M=K5(()=>[...Ut({setSelectedNode:y,variables:u,disableVariablesAutocomplete:d})].filter(P=>P!==void 0),[y,u,d]),C=F4(({editor:P})=>{if(!P||b)return;if(!x){let B=be(P.getJSON()),H=mr(null,"inbox","",B),D={version:"2022-01-01",elements:[{type:"channel",channel:"inbox",elements:H.elements,...H.raw&&{raw:H.raw}}]};E(D),g(D);return}let k=P.getJSON(),w=be(k),T=mr(x,"inbox","",w),A=rt(x,{elements:T.elements,channel:"inbox",...T.raw&&{raw:T.raw}}),N=JSON.stringify(x.elements),R=JSON.stringify(A.elements);N!==R&&setTimeout(()=>{h.current&&(E(A),g(A))},100)},[x,E,g,b]),S=K5(()=>{let P=X5(l);return We({version:"2022-01-01",elements:[P]},{channel:"inbox"})},[l]);return G5(Wt,{theme:e,colorScheme:c,isLoading:!!(f&&v.current),Header:i?i({hidePublish:t,channels:o,routing:n}):G5(sr,{hidePublish:t,channels:o,routing:n}),...p,ref:m,children:s==null?void 0:s({content:S,extensions:M,editable:!r,autofocus:!r,onUpdate:C})})}),Xl=V4(O4);import{EditorProvider as W4}from"@tiptap/react";import{Fragment as U4,jsx as mo,jsxs as Ha}from"react/jsx-runtime";var am=a(({content:e,extensions:t,editable:r,autofocus:o,onUpdate:n,readOnly:i=!1})=>e?Ha("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:[Ha("div",{className:"courier-my-3 courier-mx-4 courier-flex courier-items-center courier-gap-2 courier-justify-between",children:[Ha("div",{className:"courier-flex courier-items-center courier-gap-3",children:[mo(Ji,{}),mo("span",{className:"courier-text-xl courier-font-medium",children:"In-app"})]}),Ha("div",{className:"courier-flex courier-items-center courier-gap-4",children:[mo(au,{}),mo(Zi,{}),mo(uu,{})]})]}),mo(W4,{content:e,extensions:t,...i?{editable:!1,autofocus:!1}:{editable:r,autofocus:o,onUpdate:n},editorContainerProps:{className:I("courier-inbox-editor")},immediatelyRender:!1,children:i?mo(cr,{value:e,defaultValue:Da}):Ha(U4,{children:[mo(Q5,{value:e}),mo(_t,{config:Y5})]})})]}):null,"InboxEditor");import{useSetAtom as _4}from"jotai";import{useCallback as eh,useEffect as th,useRef as sm}from"react";function lm(e,t,r=500){let o=_4(Go),n=sm(),i=sm(void 0),s=sm(t);th(()=>{s.current=t},[t]);let l=eh(()=>{n.current&&(clearTimeout(n.current),n.current=void 0),i.current!==void 0&&(s.current(i.current),i.current=void 0)},[]);return th(()=>(o({action:"register",id:e,fn:l}),()=>{l(),o({action:"unregister",id:e}),n.current&&clearTimeout(n.current)}),[e,o,l]),eh(u=>{i.current=u,n.current&&clearTimeout(n.current),n.current=setTimeout(()=>{l()},r)},[r,l])}a(lm,"useDebouncedFlush");import{zodResolver as z4}from"@hookform/resolvers/zod";import{useAtom as $4,useAtomValue as j4,useSetAtom as Z4}from"jotai";import{memo as q4,useCallback as Yl,useEffect as cm,useRef as um}from"react";import{useForm as J4}from"react-hook-form";import{z as Sn}from"zod";import{jsx as ze,jsxs as Va}from"react/jsx-runtime";var K4=Sn.object({enableButton:Sn.boolean().default(!0),buttonLabel:Sn.string().default("Try now"),buttonUrl:Sn.string().default(""),enableSecondaryButton:Sn.boolean().default(!1),secondaryButtonLabel:Sn.string().default("Learn more"),secondaryButtonUrl:Sn.string().default("")}),G4=a(()=>{let e=j4(we),[t,r]=$4(se),o=Z4(Oe),n=um(!1),i=um(null),s=um(t);cm(()=>{s.current=t},[t]);let l=J4({resolver:z4(K4),defaultValues:{enableButton:!1,buttonLabel:"Try now",buttonUrl:"",enableSecondaryButton:!1,secondaryButtonLabel:"Learn more",secondaryButtonUrl:""},mode:"onChange"});cm(()=>{if(!e)return;let f=a(()=>{let{doc:v}=e.state,h=null,y=[];if(v.descendants(x=>x.type.name==="buttonRow"&&!h?(h=x.attrs,!1):(x.type.name==="button"&&y.length<2&&y.push(x.attrs),!0)),n.current=!0,h){let{button1Label:x,button1Link:E,button2Label:g,button2Link:b}=h,M=l.getValues();M.enableButton||l.setValue("enableButton",!0,{shouldDirty:!1}),M.buttonLabel!==(x||"Try now")&&l.setValue("buttonLabel",x||"Try now",{shouldDirty:!1}),M.buttonUrl!==(E||"")&&l.setValue("buttonUrl",E||"",{shouldDirty:!1}),M.enableSecondaryButton||l.setValue("enableSecondaryButton",!0,{shouldDirty:!1}),M.secondaryButtonLabel!==(g||"Learn more")&&l.setValue("secondaryButtonLabel",g||"Learn more",{shouldDirty:!1}),M.secondaryButtonUrl!==(b||"")&&l.setValue("secondaryButtonUrl",b||"",{shouldDirty:!1})}else if(y.length>0){let x=y[0],E=l.getValues();if(E.enableButton||l.setValue("enableButton",!0,{shouldDirty:!1}),E.buttonLabel!==(x.label||"Try now")&&l.setValue("buttonLabel",x.label||"Try now",{shouldDirty:!1}),E.buttonUrl!==(x.link||"")&&l.setValue("buttonUrl",x.link||"",{shouldDirty:!1}),y.length>1){let g=y[1];E.enableSecondaryButton||l.setValue("enableSecondaryButton",!0,{shouldDirty:!1}),E.secondaryButtonLabel!==(g.label||"Learn more")&&l.setValue("secondaryButtonLabel",g.label||"Learn more",{shouldDirty:!1}),E.secondaryButtonUrl!==(g.link||"")&&l.setValue("secondaryButtonUrl",g.link||"",{shouldDirty:!1})}else E.enableSecondaryButton&&l.setValue("enableSecondaryButton",!1,{shouldDirty:!1})}else l.reset({enableButton:!1,buttonLabel:"Try now",buttonUrl:"",enableSecondaryButton:!1,secondaryButtonLabel:"Learn more",secondaryButtonUrl:""});i.current=l.getValues(),setTimeout(()=>{n.current=!1},0)},"syncFromEditor");return f(),e.on("update",f),()=>{e.off("update",f)}},[e,l]),cm(()=>{if(e||!t||n.current)return;n.current=!0;let f=t.elements.find(h=>h.type==="channel"&&h.channel==="inbox");if(!f||!f.elements){n.current=!1;return}let v=f.elements.filter(h=>h.type==="action");if(v.length>0){let h=v[0],y=v[1];l.setValue("enableButton",!0),l.setValue("buttonLabel",h.content||"Register"),l.setValue("buttonUrl",h.href||""),y?(l.setValue("enableSecondaryButton",!0),l.setValue("secondaryButtonLabel",y.content||"Learn more"),l.setValue("secondaryButtonUrl",y.href||"")):l.setValue("enableSecondaryButton",!1)}else l.setValue("enableButton",!1),l.setValue("enableSecondaryButton",!1);i.current=l.getValues(),n.current=!1},[t,l,e]);let c=Yl(f=>{let v=s.current;if(!v||n.current)return;let h=v.elements.find(C=>C.type==="channel"&&C.channel==="inbox");h||(h={type:"channel",channel:"inbox",elements:[{type:"text",content:`
|
|
207
207
|
`,text_style:"h2"},{type:"text",content:`
|
|
208
|
-
`}]}),h.elements||(h.elements=[]);let
|
|
209
|
-
`,text_style:"h2"}:
|
|
210
|
-
`}],
|
|
211
|
-
`,text_style:"h2"}:T),
|
|
212
|
-
`}],
|
|
213
|
-
`}],
|
|
214
|
-
`}],eg=s(e=>{let t=e==null?void 0:e.elements.find(r=>r.type==="channel"&&r.channel==="msteams");return t||(t={type:"channel",channel:"msteams",elements:Oi}),t},"getOrCreateMSTeamsElement"),tg=s(({value:e})=>{let{editor:t}=i4(),r=Q1(Ce),o=lo(ee),n=lo(ae),i=lo(fe),a=Nn(!1),l=Nn(!1);return or(()=>{n&&(a.current=!1)},[n]),or(()=>{!t||n!==!1||a.current||!e||(a.current=!0,t.commands.setContent(e))},[t,e,n]),or(()=>{t&&(r(t),vt("teams",t),setTimeout(()=>{t.commands.blur()},1))},[t,r]),or(()=>{t&&l.current&&t.commands.updateSelectionState(i)},[t,i]),or(()=>(l.current=!0,()=>{l.current=!1}),[]),or(()=>{if(!t||!o||t.isFocused)return;let c=eg(o),u=Ie({version:"2022-01-01",elements:[c]},{channel:"msteams"}),p=me(u),m=me(t.getJSON());JSON.stringify(p)!==JSON.stringify(m)&&setTimeout(()=>{t.isFocused||t.commands.setContent(u)},1)},[t,o]),null},"MSTeamsEditorContent"),rg={contentType:{state:"hidden"},bold:{state:"enabled"},italic:{state:"enabled"},underline:{state:"hidden"},strike:{state:"hidden"},alignLeft:{state:"hidden"},alignCenter:{state:"hidden"},alignRight:{state:"hidden"},alignJustify:{state:"hidden"},link:{state:"hidden"},quote:{state:"enabled"},variable:{state:"enabled"},conditionalRules:[{id:"msteams-blockquote-bold-italic-mutex-1",trigger:{type:"node",name:"blockquote",active:!0},conditions:{activeItems:["italic"]},action:{type:"toggle_off",targets:["italic"]}},{id:"msteams-blockquote-bold-italic-mutex-2",trigger:{type:"node",name:"blockquote",active:!0},conditions:{activeItems:["bold"]},action:{type:"toggle_off",targets:["bold"]}}]},c4=a4(({theme:e,hidePublish:t,readOnly:r,channels:o,routing:n,headerRenderer:i,render:a,value:l,colorScheme:c,...u},p)=>{let m=lo(ae),d=lo(je),f=lo(Ce),C=lo(ft),[h,b]=X1(fe),[v,E]=X1(ee),g=Q1(Ae),w=Nn(!0),N=Nn(!1),y=Nn(C),S=lo(ir),P=Zu(()=>{let L=["text","divider"];return S.filter(D=>{let V=Pt(D)?D.type:D;return L.includes(V)})},[S]),[T,x]=l4({Sidebar:P,Editor:[]});or(()=>{x(L=>({...L,Sidebar:P}))},[P]);let k=Nn(null);gn({items:T,setItems:x});let M=$u(L=>{k.current&&cancelAnimationFrame(k.current),setTimeout(()=>{k.current=requestAnimationFrame(()=>{try{let D=L==null?void 0:L.view.dom;if(!D){console.warn("syncEditorItems: Editor DOM element not found");return}let V=D.querySelectorAll(".react-renderer > div[data-node-view-wrapper][data-id]"),O=[];V.forEach(_=>{let U=_.dataset.id;U&&O.push(U)}),x(_=>({Editor:O,Sidebar:_.Sidebar}))}catch(D){console.error("Error syncing editor items:",D),x(V=>({...V}))}})},50)},[]);or(()=>(N.current=!0,()=>{N.current=!1}),[]),or(()=>{y.current=C},[C]),or(()=>{let L=s(()=>{f&&M(f)},"updateItems");f==null||f.on("update",L),f==null||f.on("selectionUpdate",L),f==null||f.on("create",L),f==null||f.on("transaction",L),f&&!f.isDestroyed&&L();let D=s(V=>{L()},"handleNodeDuplicated");return document.addEventListener("node-duplicated",D),()=>{f==null||f.off("update",L),f==null||f.off("selectionUpdate",L),f==null||f.off("create",L),f==null||f.off("transaction",L),document.removeEventListener("node-duplicated",D),k.current&&cancelAnimationFrame(k.current)}},[f,M]),or(()=>{m===!1&&v&&setTimeout(()=>{f&&!f.isDestroyed&&M(f)},300)},[m,v,f,M]);let A=$u(()=>!y.current,[]),R=Zu(()=>[...yt({setSelectedNode:b,shouldHandleClick:A})].filter(L=>L!==void 0),[b,A]),B=$u(({editor:L})=>{if(!L||d)return;if(!v){let X={version:"2022-01-01",elements:[{type:"channel",channel:"msteams",elements:me(L.getJSON())}]};E(X),g(X);return}let D=L.getJSON(),V=me(D),O=_e(v,{elements:V,channel:"msteams"}),_=JSON.stringify(v.elements),U=JSON.stringify(O.elements);_!==U&&(E(O),g(O))},[v,E,g,d]),F=Zu(()=>{let L=eg(l);return Ie({version:"2022-01-01",elements:[L]},{channel:"msteams"})},[l]);return qu(bt,{theme:e,colorScheme:c,isLoading:!!(m&&w.current),Header:i?i({hidePublish:t,channels:o,routing:n}):qu(Ft,{hidePublish:t,channels:o,routing:n}),ref:p,...u,children:qu(u4,{children:a==null?void 0:a({content:F,extensions:R,editable:!r,autofocus:!r,onUpdate:B,items:T,selectedNode:h,msteamsEditor:f})})})}),js=s4(c4);import{EditorProvider as f4}from"@tiptap/react";import{jsx as it,jsxs as Ui}from"react/jsx-runtime";var d4=s(()=>it("div",{className:"courier-w-9 courier-h-9 courier-flex courier-bg-[#E5E5E5] dark:courier-bg-[#48465B] courier-rounded-full",children:it(ci,{className:"courier-mx-auto courier-h-full dark:courier-text-[#8786A9]"})}),"AvatarSkeleton"),m4=s(()=>Ui("div",{className:"courier-flex courier-gap-2 courier-flex-row courier-items-start courier-w-full",children:[it(d4,{}),Ui("div",{className:"courier-flex courier-flex-col courier-gap-2 courier-w-full",children:[it("div",{className:"courier-w-2/12 courier-h-[14px] courier-bg-[#F5F5F5] dark:courier-bg-[#2E333F] courier-rounded-[12px]"}),it("div",{className:"courier-w-9/12 courier-h-[48px] courier-bg-[#F5F5F5] dark:courier-bg-[#2E333F] courier-rounded-[12px]"})]})]}),"MessageSkeleton"),p4=s(()=>it("div",{className:"courier-flex courier-justify-end courier-w-full",children:it("div",{className:"courier-flex courier-flex-col courier-gap-2 courier-items-end courier-w-full",children:it("div",{className:"courier-w-6/12 courier-h-[48px] courier-bg-[#F5F5F5] dark:courier-bg-[#2E333F] courier-rounded-[12px]"})})}),"RightMessageSkeleton"),og=s(({children:e,className:t})=>Ui("div",{className:I("courier-w-full courier-max-w-[800px] courier-bg-white dark:courier-bg-[#171717] courier-rounded-lg courier-shadow-md courier-p-4 courier-mx-auto",t),children:[it(m4,{}),Ui("div",{className:"courier-flex courier-gap-3 courier-my-8",children:[it("div",{className:"courier-flex-shrink-0 courier-mt-6",children:it("div",{className:"courier-w-9 courier-h-9 courier-rounded-full courier-bg-gradient-to-br courier-bg-[#9C4085] courier-flex courier-items-center courier-justify-center",children:it(li,{color:"#FFFFFF"})})}),Ui("div",{className:"courier-flex-1 courier-min-w-0",children:[it("div",{className:"courier-flex courier-items-center courier-gap-2 courier-mt-1",children:it("span",{className:"courier-text-sm courier-text-[#A3A3A3] dark:courier-text-[#8786A9]",children:"Circle"})}),it("div",{className:"courier-bg-[#F5F5F5] dark:courier-bg-[#2E333F] courier-rounded-[12px] courier-px-3 courier-py-2 courier-text-sm courier-text-gray-900 dark:courier-text-[#C9C8E1] courier-leading-relaxed courier-max-w-full courier-pr-5",children:e})]})]}),it(p4,{})]}),"MSTeamsFrame");import{useRef as g4,useEffect as h4}from"react";import{Fragment as b4,jsx as Mn,jsxs as y4}from"react/jsx-runtime";var Ju=s(({content:e,extensions:t,editable:r,autofocus:o,onUpdate:n,readOnly:i=!1})=>{let a=g4(null);return h4(()=>{let l=a.current;if(!(!l||i))return Mt({element:l,getData:()=>({type:"editor",id:"editor-drop-zone"})})},[i]),e?Mn(og,{children:Mn("div",{ref:a,children:Mn(f4,{content:e,extensions:t,editable:r,autofocus:o,onUpdate:n,editorContainerProps:{className:I("courier-msteams-editor")},immediatelyRender:!1,children:i?Mn(Ut,{value:e,defaultValue:Oi}):y4(b4,{children:[Mn(tg,{value:e}),Mn(Ct,{config:rg})]})})})}):null},"MSTeamsEditor");import{useAtomValue as x4}from"jotai";import{GripVertical as C4}from"lucide-react";import{Fragment as v4,jsx as Wr,jsxs as ju}from"react/jsx-runtime";var Ku=s(({items:e,label:t,editor:r})=>Wr("div",{className:"courier-flex courier-flex-col courier-h-full",children:ju("div",{className:"courier-flex-1",children:[t&&ju(v4,{children:[Wr("p",{className:"courier-text-sm courier-font-medium courier-text-foreground",children:t}),Wr(le,{className:"courier-my-4"})]}),Wr("div",{className:"courier-flex courier-flex-col courier-gap-4 courier-w-full",children:e.map(o=>{let n=Pt(o)?`${o.type}:${o.preset}`:o,i=Pt(o)?o.type:o;return Wr(bn,{id:n,editor:r,children:ju("div",{className:I("courier-rounded-md courier-border courier-border-border courier-flex courier-flex-row courier-items-center courier-gap-1 courier-bg-background courier-cursor-grab courier-opacity-[0.999] courier-px-3 courier-py-2 courier-select-none"),children:[Wr(C4,{strokeWidth:1,className:"courier-w-4 courier-stroke-neutral-400 courier-fill-neutral-400"}),i==="text"&&Wr(Xr,{draggable:!0}),i==="divider"&&Wr(Yr,{draggable:!0}),i==="button"&&Wr(Gr,{draggable:!0})]})},n)})})]})}),"MSTeamsSideBar");import{forwardRef as ng}from"react";import{jsx as Er,jsxs as k4}from"react/jsx-runtime";var T4=ng(({children:e,className:t,...r},o)=>Er("div",{className:I("courier-editor-container courier-relative",t),...r,ref:o,children:e})),E4=ng(({children:e,...t},r)=>Er("div",{className:"courier-editor-main courier-transition-all courier-duration-300 courier-ease-in-out",...t,ref:r,children:e})),ig=s(({hidePublish:e,theme:t,variables:r,channels:o,routing:n,colorScheme:i})=>{let a=x4(ee);return Er(js,{value:a,variables:r,theme:t,hidePublish:e,channels:o,routing:n,colorScheme:i,render:l=>{var c;return k4(Fo,{children:[Er("div",{className:"courier-flex courier-flex-col courier-flex-1",children:Er(T4,{children:Er(E4,{children:Er(Ju,{...l})})})}),Er(Oo,{children:Er("div",{className:"courier-p-1 courier-h-full",children:Er(Ku,{items:l.items.Sidebar,label:"Blocks library",editor:(c=l.msteamsEditor)!=null?c:void 0})})})]})}})},"MSTeamsLayout");var cg={sms:{elements:Ur},push:{elements:_o},inbox:{elements:Bi},slack:{elements:Fi},email:{elements:Ii},msteams:{elements:Oi}},ug=s(e=>{var t;return(t=cg[e])!=null?t:cg.email},"getChannelDefaults"),M4=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"),Xu=s(({channels:e=["email"],routing:t})=>{let[r,o]=N4([]),n=ag(ee),i=Gu(ee),a=Gu(Ae),[l,c]=w4(qr),u=Gu(fe),p=ag(ae),m=M4(t,e),d=P4(m);d.current=m,Yu(()=>{if(p||n!=null&&n.elements)return;let E=d.current.map(g=>To.find(w=>w.value===g)).filter(g=>!!g);o(E),E.length>0&&!l&&c(E[0].value)},[n,p,c,l]),Yu(()=>{if(p||!(n!=null&&n.elements))return;let v=d.current,E=n.elements.filter(w=>w.type==="channel").map(w=>w.channel).filter(w=>v.includes(w)),g=v.filter(w=>E.includes(w)).map(w=>To.find(N=>N.value===w)).filter(w=>!!w);o(g)},[n,p]),Yu(()=>{var g;if(p||r.length===0)return;let v=r.some(w=>w.value===l),E=(g=n==null?void 0:n.elements)==null?void 0:g.some(w=>w.type==="channel"&&w.channel===l);!v&&!E&&c(r[0].value)},[r,l,c,p,n]);let f=lg(()=>(m==null?void 0:m.filter(v=>!r.some(E=>E.value===v)).map(v=>To.find(E=>E.value===v)).filter(v=>!!v))||[],[r,m]),C=sg(v=>{let E=[],g,{elements:w,raw:N}=ug(v);if(E=w,g=N,!n){let P=[];for(let k of r){let{elements:M,raw:A}=ug(k.value),R={type:"channel",channel:k.value,elements:M};A&&(R.raw=A),P.push(R)}let T={type:"channel",channel:v,elements:E};g&&(T.raw=g),P.push(T);let x={version:"2022-01-01",elements:P};i(x),a(x),c(v);return}let S=_e(n,{elements:E,channel:g?{channel:v,raw:g}:v});i(S),a(S),c(v)},[n,i,a,c,r]),h=sg(v=>{if(!n)return;let E=n.elements.filter(N=>N.type==="channel"?N.channel!==v:!0),g={...n,elements:E};i(g),a(g),u(null);let w=r.filter(N=>N.value!==v);l===v&&w.length>0&&c(w[0].value)},[n,i,a,r,l,c,u]),b=lg(()=>[...r,...f],[r,f]);return{enabledChannels:r,disabledChannels:f,channel:l,channelOptions:b,setChannel:c,addChannel:C,removeChannel:h}},"useChannels");import{Fragment as B4,jsx as Xe,jsxs as kr}from"react/jsx-runtime";var Ft=s(({hidePublish:e=!1,channels:t,routing:r})=>{let o=L4(null),n=Ks(We),i=Ks(ae),a=Ks(G),{publishTemplate:l,isTemplatePublishing:c}=zn(),[u,p]=I4($o),m=S4(nr),d=Ks(nr),{enabledChannels:f,disabledChannels:C,channel:h,setChannel:b,addChannel:v,removeChannel:E}=Xu({channels:t,routing:r});R4(()=>{n===!0&&p(null)},[n,p]);let g=Wi(()=>{d&&m(!1),l()},[l,d,m]),w=Wi(P=>{d&&m(!1),b(P)},[d,m,b]),N=Wi(P=>{d&&m(!1),v(P)},[d,m,v]),y=Wi(P=>{d&&m(!1),E(P)},[d,m,E]),S=Wi(()=>{d&&m(!1)},[d,m]);return kr("div",{className:"courier-flex courier-justify-between courier-w-full courier-h-full courier-self-stretch",ref:o,onClick:S,children:[kr("div",{className:"courier-flex courier-items-center courier-gap-2 courier-flex-grow courier-self-stretch",children:[Xe(ma,{value:h,onValueChange:w,className:"courier-h-full",ref:o,children:Xe(Yn,{className:"courier-grid courier-w-full courier-border-none courier-h-full !courier-p-0",style:{gridTemplateColumns:`repeat(${To.length}, fit-content(100%))`},children:f.map(P=>kr(jo,{value:P.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:[P.label,P.value===h&&f.length>1&&kr(kd,{children:[Xe(wd,{asChild:!0,children:Xe("div",{className:"courier-pl-2",children:Xe(Xn,{color:"#A3A3A3"})})}),kr(Tl,{ref:o,children:[Xe(El,{children:Xe(A4,{children:"Are you sure you want to delete this channel?"})}),kr(kl,{children:[Xe(Pl,{asChild:!0,children:Xe(ve,{buttonSize:"small",variant:"outline",children:"Cancel"})}),Xe(wl,{asChild:!0,children:Xe(ve,{buttonSize:"small",variant:"primary",onClick:()=>y(P.value),children:"Delete"})})]})]})]})]},P.value))})}),C.length>0&&kr(B4,{children:[Xe(Rl,{orientation:"vertical",className:"!courier-h-5"}),kr(sa,{children:[Xe(la,{asChild:!0,children:Xe(ve,{variant:"link",children:"+ Add channel"})}),Xe(qn,{portalProps:{container:o.current},children:C.map(P=>kr(Jn,{onClick:()=>N(P.value),children:[P.icon,P.label]},P.value))})]})]})]}),kr("div",{className:"courier-w-64 courier-pl-4 courier-flex courier-justify-end courier-items-center courier-gap-2",children:[n!==null&&Xe(di,{isLoading:!!i,isSaving:!!n,isError:!!a}),!e&&i!==null&&Xe(ve,{variant:"primary",buttonSize:"small",disabled:c===!0||n===!0||u!==null,onClick:g,children:c?"Publishing...":"Publish changes"})]})]})},"Channels");import{useCallback as dg,useEffect as mg,useRef as co,useState as D4}from"react";function _i({onSave:e,debounceMs:t=2e3,enabled:r=!0,onError:o,initialContent:n,flushBeforeSave:i}){let[a,l]=D4(!1),c=co(!1),u=co(null),p=co(),m=co(0),d=co();mg(()=>{n&&(p.current=JSON.stringify(n))},[n]);let f=dg(async()=>{if(c.current)return;if(i)try{i()}catch(g){console.error("[AutoSave] Error flushing updates:",g)}let E=u.current;if(u.current=null,!!E)try{let g=JSON.stringify(E);if(g===p.current)return;c.current=!0,l(!0),p.current=g,m.current=Date.now(),await e(E)}catch(g){console.error("[AutoSave] Save failed:",g),o==null||o(g)}finally{if(c.current=!1,l(!1),u.current){let g=t;d.current=setTimeout(()=>{d.current=void 0,f()},g)}}},[t,o,e,i]),C=co(r),h=co(t),b=co(f);return mg(()=>{C.current=r,h.current=t,b.current=f}),{handleAutoSave:dg(async E=>{if(!C.current)return;let g=JSON.stringify(E);if(u.current=E,g===p.current||c.current)return;d.current&&(clearTimeout(d.current),d.current=void 0);let w=h.current;d.current=setTimeout(()=>{d.current=void 0,b.current()},w)},[]),isSaving:a}}s(_i,"useAutoSave");import{useAtom as $i,useAtomValue as _r,useSetAtom as Xs}from"jotai";import{memo as s7,useCallback as rd,useEffect as Bt,useRef as Qs,useState as l7}from"react";import{useAtom as xg,useAtomValue as td,useSetAtom as Tg}from"jotai";import{forwardRef as n7,memo as i7,useCallback as Eg,useEffect as Sn,useRef as kg}from"react";import{z as Tt}from"zod";var pg=Tt.object({headerStyle:Tt.enum(["plain","border"]),isUnsubscribe:Tt.boolean().optional(),isPreferences:Tt.boolean().optional(),link:Tt.string().optional(),brandColor:Tt.string(),textColor:Tt.string(),subtleColor:Tt.string(),logo:Tt.string().optional(),facebookLink:Tt.string().optional(),linkedinLink:Tt.string().optional(),instagramLink:Tt.string().optional(),mediumLink:Tt.string().optional(),xLink:Tt.string().optional()}),mt={headerStyle:"plain",isUnsubscribe:!1,isPreferences:!1,link:"",brandColor:"#000000",textColor:"#9CA3AF",subtleColor:"#737373",logo:"",facebookLink:"",linkedinLink:"",instagramLink:"",mediumLink:"",xLink:""};var H4=s(e=>{switch(e.type){case"bold":return"**";case"italic":return"*";case"strike":return"~";case"underline":return"+";default:return""}},"markToMD"),zi=s(e=>{var t,r,o,n,i,a,l,c,u,p,m,d,f,C;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 v=e.marks.map(H4).filter(Boolean);h=v.join("")+h+v.reverse().join("")}let b=(o=e.marks)==null?void 0:o.find(v=>v.type==="link");return b&&(h=`[${h}](${(n=b.attrs)==null?void 0:n.href})`),h}case"hardBreak":return`
|
|
215
|
-
`;case"paragraph":return(((i=e.content)==null?void 0:i.map(
|
|
208
|
+
`}]}),h.elements||(h.elements=[]);let x=[...h.elements.filter(C=>C.type!=="action")];if(f.enableButton){let C={type:"action",content:f.buttonLabel,border:{enabled:!0,color:"#000000",radius:4,size:"1px"},align:"left",href:f.buttonUrl};x.push(C)}if(f.enableSecondaryButton){let C={type:"action",content:f.secondaryButtonLabel,border:{enabled:!0,color:"#000000",radius:4,size:"1px"},align:"left",href:f.secondaryButtonUrl};x.push(C)}let E={...h,elements:x},g=v.elements.findIndex(C=>C.type==="channel"&&C.channel==="inbox"),b=[...v.elements];g!==-1?b[g]=E:b.push(E);let M={...v,elements:b};r(M),o(M)},[r,o]),u=Yl(f=>{if(!e)return!1;let{doc:v}=e.state,h=null,y=[];v.descendants((E,g)=>E.type.name==="buttonRow"&&h===null?(h=g,!1):(E.type.name==="button"&&y.push({pos:g,attrs:E.attrs}),!0));let x=a((E,g)=>{let b=v.nodeAt(E);return b?(e.commands.command(({tr:M})=>(M.setNodeMarkup(E,b.type,g),!0)),!0):!1},"applyAttrs");if(h!==null){let E=v.nodeAt(h);if(!E)return!1;let g={...E.attrs,button1Label:f.buttonLabel,button1Link:f.buttonUrl,button2Label:f.secondaryButtonLabel,button2Link:f.secondaryButtonUrl};return x(h,g)}if(y.length>0){let[E,g]=y,b={...E.attrs,label:f.buttonLabel,link:f.buttonUrl},M=x(E.pos,b),C=!0;if(g){let S={...g.attrs,label:f.secondaryButtonLabel,link:f.secondaryButtonUrl};C=x(g.pos,S)}return M&&C}return!1},[e]),d=Yl(f=>{if(n.current)return;let v=i.current;if(i.current=f,!v||v.enableButton!==f.enableButton||v.enableSecondaryButton!==f.enableSecondaryButton){c(f);return}u(f)||c(f)},[c,u]),p=lm("inbox-sidebar",d,500),m=Yl(()=>{let f=l.getValues();p(f)},[l,p]);return ze(He,{...l,children:Va("form",{onChange:m,children:[ze("div",{className:"courier-pb-4",children:ze(re,{control:l.control,name:"enableButton",render:({field:f})=>Va(ee,{className:"courier-flex courier-flex-row courier-items-center courier-justify-between",children:[ze(Ir,{className:"!courier-m-0",children:"Enable button"}),ze(te,{children:ze(On,{checked:f.value,onCheckedChange:f.onChange,className:"!courier-m-0"})})]})})}),l.watch("enableButton")&&ze(re,{control:l.control,name:"buttonUrl",render:({field:f})=>Va(ee,{className:"courier-mb-6",children:[ze(Ir,{children:"Action URL"}),ze(te,{children:ze(ve,{placeholder:"https://example.com",...f})}),ze(oe,{})]})}),ze(fe,{className:"courier-mb-6"}),ze(re,{control:l.control,name:"enableSecondaryButton",render:({field:f})=>Va(ee,{className:"courier-flex courier-flex-row courier-items-center courier-justify-between courier-mb-4",children:[ze(Ir,{className:"!courier-m-0",children:"Enable secondary button"}),ze(te,{children:ze(On,{checked:f.value,onCheckedChange:f.onChange,className:"!courier-m-0"})})]})}),l.watch("enableSecondaryButton")&&ze(re,{control:l.control,name:"secondaryButtonUrl",render:({field:f})=>Va(ee,{className:"courier-mb-4",children:[ze(Ir,{children:"Action URL"}),ze(te,{children:ze(ve,{placeholder:"https://example.com",...f})}),ze(oe,{})]})})]})})},"SideBarComponent"),dm=q4(G4);import{useAtomValue as X4}from"jotai";import{jsx as hi,jsxs as Y4}from"react/jsx-runtime";var rh=a(({hidePublish:e,theme:t,variables:r,disableVariablesAutocomplete:o,channels:n,routing:i,colorScheme:s,...l})=>{let c=X4(se);return hi(Xl,{value:c,variables:r,disableVariablesAutocomplete:o,theme:t,hidePublish:e,channels:n,routing:i,colorScheme:s,render:u=>Y4("div",{className:"courier-flex courier-flex-1 courier-flex-row courier-overflow-hidden",children:[hi("div",{className:"courier-flex courier-flex-col courier-flex-1 courier-py-8 courier-items-center",children:hi(am,{...u},`inbox-editor-${o?"no-autocomplete":"autocomplete"}`)}),hi("div",{className:"courier-editor-sidebar courier-opacity-100 courier-translate-x-0 courier-w-64 courier-flex-shrink-0",children:hi("div",{className:"courier-p-4 courier-h-full",children:hi(dm,{})})})]}),...l})},"InboxLayout");import{useCurrentEditor as Q4}from"@tiptap/react";import{useAtom as e7,useAtomValue as Ql,useSetAtom as mm}from"jotai";import{forwardRef as t7,memo as r7,useCallback as o7,useEffect as Fa,useMemo as oh,useRef as pm}from"react";import{jsx as nh}from"react/jsx-runtime";var ih=a(({value:e})=>{let{editor:t}=Q4(),r=mm(we),o=Ql(se),n=Ql(pe),i=pm(!1);return Fa(()=>{n&&(i.current=!1)},[n]),Fa(()=>{!t||n!==!1||i.current||!e||(i.current=!0,t.commands.setContent(e))},[t,e,n]),Fa(()=>{t&&(r(t),zt("push",t),setTimeout(()=>{t.commands.blur()},1))},[t,r]),Fa(()=>{if(!t||!o||t.isFocused)return;let s=ah(o),l=s.type==="channel"&&"elements"in s&&s.elements||In;l=l.map(m=>m.type==="meta"&&"title"in m?{type:"text",content:m.title||`
|
|
209
|
+
`,text_style:"h2"}:m);let u=We({version:"2022-01-01",elements:[{type:"channel",channel:"push",elements:l}]}),d=be(u),p=be(t.getJSON());JSON.stringify(d)!==JSON.stringify(p)&&setTimeout(()=>{t.isFocused||t.commands.setContent(u)},1)},[t,o]),null},"PushEditorContent"),In=[{type:"meta",title:""},{type:"text",content:`
|
|
210
|
+
`}],ah=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",elements:In}),t},"getOrCreatePushElement"),sh={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"}},n7=t7(({theme:e,hidePublish:t,readOnly:r,channels:o,routing:n,headerRenderer:i,render:s,value:l,colorScheme:c,variables:u,disableVariablesAutocomplete:d=!1,...p},m)=>{let f=Ql(pe),v=pm(!0),h=pm(!1),y=mm(Ce),[x,E]=e7(se),g=mm(Oe),b=Ql(dt);Fa(()=>(h.current=!0,()=>{h.current=!1}),[]);let M=oh(()=>[...Ut({setSelectedNode:y,variables:u,disableVariablesAutocomplete:d})].filter(P=>P!==void 0),[y,u,d]),C=o7(({editor:P})=>{if(b)return;if(!x){let B=be(P.getJSON()),H=B[0],D="",F=B;H&&H.type==="text"&&"text_style"in H&&H.text_style==="h2"&&"content"in H&&(D=H.content.trim(),F=B.slice(1));let W={version:"2022-01-01",elements:[{type:"channel",channel:"push",elements:mr(null,"push",D,F).elements}]};E(W),g(W);return}let k=be(P.getJSON()),w=k[0],T="",A=k;w&&w.type==="text"&&"text_style"in w&&w.text_style==="h2"&&"content"in w&&(T=w.content.trim(),A=k.slice(1));let N=mr(x,"push",T,A),R=rt(x,{channel:"push",elements:N.elements});JSON.stringify(x)!==JSON.stringify(R)&&(E(R),g(R))},[x,E,g,b]),S=oh(()=>{if(f!==!1)return null;let P=l==null?void 0:l.elements.find(T=>T.type==="channel"&&T.channel==="push");!P&&x&&(P=ah(x));let k=(P==null?void 0:P.type)==="channel"&&"elements"in P&&P.elements||In;return k=k.map(T=>T.type==="meta"&&"title"in T?{type:"text",content:T.title||`
|
|
211
|
+
`,text_style:"h2"}:T),We({version:"2022-01-01",elements:[{type:"channel",channel:"push",elements:k}]})},[l,x,f]);return nh(Wt,{theme:e,colorScheme:c,isLoading:!!(f&&v.current),Header:i?i({hidePublish:t,channels:o,routing:n}):nh(sr,{hidePublish:t,channels:o,routing:n}),...p,ref:m,children:s==null?void 0:s({content:S,extensions:M,editable:!r,autofocus:!r,onUpdate:C})})}),ec=r7(n7);import{EditorProvider as i7}from"@tiptap/react";import{jsx as po,jsxs as tc}from"react/jsx-runtime";var rc=a(({children:e})=>tc("div",{className:"courier-relative",children:[po("div",{className:"courier-absolute courier-w-0.5 courier-h-6 courier-bg-border -courier-left-[2px] courier-top-[136px]"}),po("div",{className:"courier-absolute courier-w-0.5 courier-h-[50px] courier-bg-border -courier-left-[2px] courier-top-[178px]"}),po("div",{className:"courier-absolute courier-w-0.5 courier-h-[50px] courier-bg-border -courier-left-[2px] courier-top-[245px]"}),po("div",{className:"courier-absolute courier-w-0.5 courier-h-[78px] courier-bg-border -courier-right-[2px] courier-top-[200px]"}),tc("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:[tc("div",{className:"courier-my-6 courier-mx-11 courier-flex courier-items-center courier-gap-2 courier-justify-between",children:[po("span",{className:"courier-text-xs courier-font-semibold",children:new Date().toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})}),tc("div",{className:"courier-flex courier-items-center courier-gap-2",children:[po(ef,{}),po(sf,{}),po(Lp,{})]})]}),po("div",{className:"courier-flex-1 courier-overflow-auto courier-h-[calc(90%-56px)] courier-mb-6",children:e})]})]}),"IPhoneFrame");import{Fragment as a7,jsx as bi,jsxs as fm}from"react/jsx-runtime";var gm=a(({content:e,extensions:t,editable:r,autofocus:o,onUpdate:n,className:i,readOnly:s=!1})=>{let l=e||{type:"doc",content:[{type:"paragraph"}]},c=s?{editable:!1,autofocus:!1}:{editable:r,autofocus:o,onUpdate:n};return fm(rc,{children:[fm("div",{className:I("courier-px-4 courier-py-2 courier-text-[#A3A3A3] courier-text-center courier-my-8",i),children:[bi("p",{className:"courier-text-lg courier-font-medium",children:new Date().toLocaleDateString(void 0,{weekday:"long",month:"long",day:"numeric"})}),bi("p",{className:"courier-text-5xl courier-font-semibold courier-mt-1",children:new Date().toLocaleTimeString(void 0,{hour:"numeric",minute:"2-digit",hour12:!0})})]}),bi(i7,{content:l,extensions:t,...c,editorContainerProps:{className:I("courier-push-editor")},"data-testid":"editor-provider",immediatelyRender:!1,children:s?bi(cr,{value:l,defaultValue:In}):fm(a7,{children:[bi(ih,{value:l}),bi(_t,{config:sh})]})})]})},"PushEditor");import{useAtomValue as s7}from"jotai";import{jsx as hm}from"react/jsx-runtime";var lh=a(({hidePublish:e,theme:t,variables:r,disableVariablesAutocomplete:o,channels:n,routing:i,...s})=>{let l=s7(se);return hm(ec,{value:l,variables:r,disableVariablesAutocomplete:o,theme:t,hidePublish:e,channels:n,routing:i,render:c=>hm("div",{className:"courier-flex courier-flex-col courier-items-center courier-py-8",children:hm(gm,{...c},`push-editor-${o?"no-autocomplete":"autocomplete"}`)}),...s})},"PushLayout");import{useCurrentEditor as l7}from"@tiptap/react";import{useAtom as ch,useAtomValue as Oo,useSetAtom as dh}from"jotai";import{forwardRef as c7,memo as u7,useCallback as uh,useEffect as Jr,useMemo as bm,useRef as yi,useState as d7}from"react";import{Fragment as p7,jsx as ym}from"react/jsx-runtime";var Oa=[{type:"text",content:`
|
|
212
|
+
`}],mh=a(e=>{let t=e==null?void 0:e.elements.find(r=>r.type==="channel"&&r.channel==="slack");return t||(t={type:"channel",channel:"slack",elements:Oa}),t},"getOrCreateSlackElement"),ph=a(({value:e})=>{let{editor:t}=l7(),r=dh(we),o=Oo(se),n=Oo(pe),i=Oo(Ce),s=yi(!1),l=yi(!1);return Jr(()=>{n&&(s.current=!1)},[n]),Jr(()=>{!t||n!==!1||s.current||!e||(s.current=!0,t.commands.setContent(e))},[t,e,n]),Jr(()=>{t&&(r(t),zt("slack",t),setTimeout(()=>{t.commands.blur()},1))},[t,r]),Jr(()=>{t&&l.current&&t.commands.updateSelectionState(i)},[t,i]),Jr(()=>(l.current=!0,()=>{l.current=!1}),[]),Jr(()=>{if(!t||!o||t.isFocused)return;let c=mh(o),u=We({version:"2022-01-01",elements:[c]},{channel:"slack"}),d=be(u),p=be(t.getJSON());JSON.stringify(d)!==JSON.stringify(p)&&setTimeout(()=>{t.isFocused||t.commands.setContent(u)},1)},[t,o]),null},"SlackEditorContent"),fh={contentType:{state:"hidden"},bold:{state:"enabled"},italic:{state:"enabled"},underline:{state:"enabled"},strike:{state:"enabled"},alignLeft:{state:"hidden"},alignCenter:{state:"hidden"},alignRight:{state:"hidden"},alignJustify:{state:"hidden"},link:{state:"hidden"},quote:{state:"enabled"},variable:{state:"enabled"},conditionalRules:[{id:"slack-blockquote-bold-italic-mutex-1",trigger:{type:"node",name:"blockquote",active:!0},conditions:{activeItems:["italic"]},action:{type:"toggle_off",targets:["italic"]}},{id:"slack-blockquote-bold-italic-mutex-2",trigger:{type:"node",name:"blockquote",active:!0},conditions:{activeItems:["bold"]},action:{type:"toggle_off",targets:["bold"]}}]},m7=c7(({theme:e,hidePublish:t,readOnly:r,channels:o,routing:n,headerRenderer:i,render:s,value:l,colorScheme:c,variables:u,disableVariablesAutocomplete:d=!1,...p},m)=>{let f=Oo(pe),v=Oo(dt),h=Oo(we),y=Oo(Vt),[x,E]=ch(Ce),[g,b]=ch(se),M=dh(Oe),C=yi(!0),S=yi(!1),P=yi(y),k=yi(null),w=Oo(Sr),T=bm(()=>{let L=["text","divider","button"];return w.filter(W=>{let _=qt(W)?W.type:W;return L.includes(_)})},[w]),[A,N]=d7({Sidebar:T,Editor:[]});Jr(()=>{N(L=>({...L,Sidebar:T}))},[T]),mi({items:A,setItems:N});let{syncEditorItems:R}=$l({setItems:N,rafId:k});Jr(()=>(S.current=!0,()=>{S.current=!1}),[]),Jr(()=>{P.current=y},[y]),Jr(()=>{f===!1&&g&&setTimeout(()=>{h&&!h.isDestroyed&&R(h)},300)},[f,g,h,R]);let B=uh(()=>!P.current,[]),H=bm(()=>[...Ut({setSelectedNode:E,shouldHandleClick:B,variables:u,disableVariablesAutocomplete:d})].filter(L=>L!==void 0),[E,B,u,d]),D=uh(({editor:L})=>{if(!L||v)return;if(!g){let K={version:"2022-01-01",elements:[{type:"channel",channel:"slack",elements:be(L.getJSON())}]};b(K),M(K);return}let W=L.getJSON(),_=be(W),V=rt(g,{elements:_,channel:"slack"}),j=JSON.stringify(g.elements),Z=JSON.stringify(V.elements);j!==Z&&(b(V),M(V))},[g,b,M,v]),F=bm(()=>{let L=mh(l);return We({version:"2022-01-01",elements:[L]},{channel:"slack"})},[l]);return ym(Wt,{theme:e,colorScheme:c,isLoading:!!(f&&C.current),Header:i?i({hidePublish:t,channels:o,routing:n}):ym(sr,{hidePublish:t,channels:o,routing:n}),ref:m,...p,children:ym(p7,{children:s==null?void 0:s({content:F,extensions:H,editable:!r,autofocus:!r,onUpdate:D,items:A,selectedNode:x,slackEditor:h})})})}),oc=u7(m7);import{EditorProvider as h7}from"@tiptap/react";import{jsx as wt,jsxs as vi}from"react/jsx-runtime";var f7=a(()=>vi("div",{className:"courier-flex courier-gap-2 courier-flex-col courier-w-full",children:[wt("div",{className:"courier-w-3/12 courier-h-[16px] courier-bg-[#F5F5F5] dark:courier-bg-[#2E333F] courier-rounded-md"}),wt("div",{className:"courier-w-full courier-h-[16px] courier-bg-[#F5F5F5] dark:courier-bg-[#2E333F] courier-rounded-md"}),wt("div",{className:"courier-w-6/12 courier-h-[16px] courier-bg-[#F5F5F5] dark:courier-bg-[#2E333F] courier-rounded-md"})]}),"TextSkeleton"),g7=a(()=>wt("div",{className:"courier-w-9 courier-h-9 courier-flex courier-bg-[#E5E5E5] dark:courier-bg-[#48465B] courier-rounded-lg",children:wt(ta,{className:"courier-mx-auto courier-h-full dark:courier-text-[#8786A9]"})}),"AvatarSkeleton"),gh=a(()=>vi("div",{className:"courier-flex courier-gap-2 courier-flex-row",children:[wt(g7,{}),wt(f7,{})]}),"InteractionSkeleton"),hh=a(({children:e,className:t})=>vi("div",{className:I("courier-w-full courier-max-w-[800px] courier-bg-white dark:courier-bg-[#171717] courier-rounded-lg courier-shadow-md courier-p-4 courier-mx-auto",t),children:[wt(gh,{}),vi("div",{className:"courier-flex courier-gap-3 courier-my-8",children:[wt("div",{className:"courier-flex-shrink-0",children:wt("div",{className:"courier-w-9 courier-h-9 courier-rounded-md courier-bg-gradient-to-br courier-bg-[#9C4085] courier-flex courier-items-center courier-justify-center",children:wt(ea,{color:"#FFFFFF"})})}),vi("div",{className:"courier-flex-1 courier-min-w-0",children:[vi("div",{className:"courier-flex courier-items-center courier-gap-2 courier-mb-1",children:[wt("span",{className:"courier-font-semibold courier-text-sm courier-text-gray-900 dark:courier-text-[#C9C8E1]",children:"Circle"}),wt("span",{className:"courier-inline-flex courier-items-center courier-px-1.5 courier-py-0.5 courier-rounded courier-text-xs courier-font-medium courier-bg-gray-200 dark:courier-bg-[#2E333F] courier-text-gray-700 dark:courier-text-[#C9C8E1]",children:"APP"}),wt("span",{className:"courier-text-xs courier-text-gray-500 dark:courier-text-[#8786A9]",children:"Now"})]}),wt("div",{className:"courier-text-sm courier-text-gray-900 dark:courier-text-[#C9C8E1] courier-leading-relaxed courier-pr-4",children:e})]})]}),wt(gh,{})]}),"SlackFrame");import{useRef as b7,useEffect as y7}from"react";import{Fragment as v7,jsx as Ci,jsxs as C7}from"react/jsx-runtime";var vm=a(({content:e,extensions:t,editable:r,autofocus:o,onUpdate:n,readOnly:i=!1})=>{let s=b7(null);return y7(()=>{let l=s.current;if(!(!l||i))return Kt({element:l,getData:()=>({type:"editor",id:"editor-drop-zone"})})},[i]),e?Ci(hh,{children:Ci("div",{ref:s,children:Ci(h7,{content:e,extensions:t,editable:r,autofocus:o,onUpdate:n,editorContainerProps:{className:I("courier-slack-editor")},immediatelyRender:!1,children:i?Ci(cr,{value:e,defaultValue:Oa}):C7(v7,{children:[Ci(ph,{value:e}),Ci(_t,{config:fh})]})})})}):null},"SlackEditor");import{useAtomValue as k7}from"jotai";import{GripVertical as x7}from"lucide-react";import{Fragment as T7,jsx as fo,jsxs as Cm}from"react/jsx-runtime";var xm=a(({items:e,label:t,editor:r})=>fo("div",{className:"courier-flex courier-flex-col courier-h-full",children:Cm("div",{className:"courier-flex-1",children:[t&&Cm(T7,{children:[fo("p",{className:"courier-text-sm courier-font-medium courier-text-foreground",children:t}),fo(fe,{className:"courier-my-4"})]}),fo("div",{className:"courier-flex courier-flex-col courier-gap-4 courier-w-full",children:e.map(o=>{let n=qt(o)?`${o.type}:${o.preset}`:o,i=qt(o)?o.type:o;return fo(fi,{id:n,editor:r,children:Cm("div",{className:I("courier-rounded-md courier-border courier-border-border courier-flex courier-flex-row courier-items-center courier-gap-1 courier-bg-background courier-cursor-grab courier-opacity-[0.999] courier-px-3 courier-py-2 courier-select-none"),children:[fo(x7,{strokeWidth:1,className:"courier-w-4 courier-stroke-neutral-400 courier-fill-neutral-400"}),i==="text"&&fo(Ao,{draggable:!0}),i==="divider"&&fo(Po,{draggable:!0}),i==="button"&&fo(ko,{draggable:!0})]})},n)})})]})}),"SlackSideBar");import{zodResolver as E7}from"@hookform/resolvers/zod";import{useForm as w7}from"react-hook-form";import{jsx as xi,jsxs as Tm}from"react/jsx-runtime";var bh=a(({element:e,editor:t})=>{let r=w7({resolver:E7(rl),defaultValues:{...Ue,...e==null?void 0:e.attrs}}),{updateNodeAttributes:o}=vt({editor:t,element:e,form:r,nodeType:"button"});return e?Tm(He,{...r,children:[xi(xt,{type:"button"}),Tm("form",{onChange:()=>{o(r.getValues())},children:[xi("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Link"}),xi(re,{control:r.control,name:"link",render:({field:n})=>Tm(ee,{children:[xi(te,{children:xi(zr,{value:n.value,onChange:i=>{n.onChange(i),o({...r.getValues(),link:i})}})}),xi(oe,{})]})})]})]}):null},"SlackButtonForm");import{jsx as yh}from"react/jsx-runtime";var Em=a(({element:e,editor:t,defaultElement:r})=>e&&e.type.name==="button"?yh("div",{className:"courier-flex courier-flex-col courier-gap-4",children:yh(bh,{element:e,editor:t},e.attrs.id)}):r,"SlackSideBarItemDetails");import{forwardRef as vh}from"react";import{jsx as kr,jsxs as M7}from"react/jsx-runtime";var P7=vh(({children:e,className:t,...r},o)=>kr("div",{className:I("courier-editor-container courier-relative",t),...r,ref:o,children:e})),A7=vh(({children:e,...t},r)=>kr("div",{className:"courier-editor-main courier-transition-all courier-duration-300 courier-ease-in-out",...t,ref:r,children:e})),Ch=a(({hidePublish:e,theme:t,variables:r,disableVariablesAutocomplete:o,channels:n,routing:i,colorScheme:s})=>{let l=k7(se);return kr(oc,{value:l,variables:r,disableVariablesAutocomplete:o,theme:t,hidePublish:e,channels:n,routing:i,colorScheme:s,render:c=>{var u;return M7(An,{children:[kr("div",{className:"courier-flex courier-flex-col courier-flex-1",children:kr(P7,{children:kr(A7,{children:kr(vm,{...c},`slack-editor-${o?"no-autocomplete":"autocomplete"}`)})})}),kr(Mn,{children:kr("div",{className:"courier-p-1 courier-h-full",children:kr(Em,{element:c.selectedNode,editor:c.slackEditor,defaultElement:kr(xm,{items:c.items.Sidebar,label:"Blocks library",editor:(u=c.slackEditor)!=null?u:void 0})})})})]})}})},"SlackLayout");import{useCurrentEditor as N7}from"@tiptap/react";import{useAtom as S7,useAtomValue as ic,useSetAtom as wm}from"jotai";import{forwardRef as I7,memo as R7,useCallback as xh,useEffect as Ti,useMemo as Th,useRef as nc,useState as L7}from"react";import{SegmentedMessage as B7}from"sms-segments-calculator";import{jsx as km}from"react/jsx-runtime";var go=[{type:"text",content:`
|
|
213
|
+
`}],Eh=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",elements:go}),t},"getOrCreateSMSElement"),wh=a(({value:e})=>{var c;let{editor:t}=N7(),r=wm(we),o=ic(se),n=(c=t==null?void 0:t.getText())!=null?c:"",i=Th(()=>new B7(n),[n]),s=ic(pe),l=nc(!1);return Ti(()=>{s&&(l.current=!1)},[s]),Ti(()=>{!t||s!==!1||l.current||!e||(l.current=!0,t.commands.setContent(e))},[t,e,s]),Ti(()=>{t&&(r(t),zt("sms",t),setTimeout(()=>{t.commands.blur()},1))},[t,r]),Ti(()=>{if(!t||!o||t.isFocused)return;let u=Eh(o),p={type:"channel",channel:"sms",elements:u.type==="channel"&&"elements"in u&&u.elements||go},m=We({version:"2022-01-01",elements:[p]}),f=be(m),v=be(t.getJSON());JSON.stringify(f)!==JSON.stringify(v)&&setTimeout(()=>{t.isFocused||t.commands.setContent(m)},1)},[t,o]),km("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"),kh={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"}},D7=I7(({theme:e,hidePublish:t,readOnly:r,channels:o,routing:n,render:i,headerRenderer:s,value:l,colorScheme:c,variables:u,disableVariablesAutocomplete:d=!1,...p},m)=>{let f=ic(pe),v=nc(!0),h=nc(!1),y=wm(Ce),[x,E]=S7(se),g=wm(Oe),b=ic(dt);Ti(()=>(h.current=!0,()=>{h.current=!1}),[]);let M=Th(()=>[...Ut({setSelectedNode:y,variables:u,disableVariablesAutocomplete:d})].filter(T=>T!==void 0),[y,u,d]),C=nc(!1),S=xh(({editor:T})=>{if(b)return;if(!x){let B=be(T.getJSON()),H=os(B),D={version:"2022-01-01",elements:[{type:"channel",channel:"sms",elements:H.length>0?H:go}]};C.current=!0,E(D),g(D);return}let A=be(T.getJSON()),N=os(A),R=rt(x,{channel:"sms",elements:N.length>0?N:go});JSON.stringify(x)!==JSON.stringify(R)&&(C.current=!0,E(R),g(R))},[x,E,g,b]),[P,k]=L7(null),w=xh(T=>{if(!T)return null;let A=T==null?void 0:T.elements.find(B=>B.type==="channel"&&B.channel==="sms");A||(A=Eh(T));let R={type:"channel",channel:"sms",elements:(A==null?void 0:A.type)==="channel"&&"elements"in A&&A.elements||go};return We({version:"2022-01-01",elements:[R]})},[]);return Ti(()=>{if(f!==!1)return;if(C.current){C.current=!1;return}let T=l!=null?l:x,A=w(T);A&&k(A)},[l,x,w,f]),km(Wt,{theme:e,colorScheme:c,isLoading:!!(f&&v.current),Header:s?s({hidePublish:t,channels:o,routing:n}):km(sr,{hidePublish:t,channels:o,routing:n}),...p,ref:m,children:i==null?void 0:i({content:P,extensions:M,editable:!r,autofocus:!r,onUpdate:S})})}),ac=R7(D7);import{EditorProvider as H7}from"@tiptap/react";import{Fragment as V7,jsx as Ei,jsxs as F7}from"react/jsx-runtime";var Pm=a(({content:e,extensions:t,editable:r,autofocus:o,onUpdate:n,className:i,readOnly:s=!1})=>{let l=e||{type:"doc",content:[{type:"paragraph"}]},c=s?{editable:!1,autofocus:!1}:{editable:r,autofocus:o,onUpdate:n};return Ei(rc,{children:Ei("div",{className:I("courier-sms-editor",i),children:Ei(H7,{content:l,extensions:t,...c,"data-testid":"editor-provider",immediatelyRender:!1,children:s?Ei(cr,{value:l,defaultValue:go}):F7(V7,{children:[Ei(wh,{value:l}),Ei(_t,{config:kh})]})})})})},"SMSEditor");import{useAtomValue as O7}from"jotai";import{jsx as Am}from"react/jsx-runtime";var Ph=a(({hidePublish:e,theme:t,variables:r,disableVariablesAutocomplete:o,channels:n,routing:i,colorScheme:s,...l})=>{let c=O7(se);return Am(ac,{value:c,variables:r,disableVariablesAutocomplete:o,theme:t,hidePublish:e,channels:n,routing:i,colorScheme:s,render:u=>Am("div",{className:"courier-flex courier-flex-col courier-items-center courier-py-8",children:Am(Pm,{...u},`sms-editor-${o?"no-autocomplete":"autocomplete"}`)}),...l})},"SMSLayout");import{useCurrentEditor as W7}from"@tiptap/react";import{useAtom as Ah,useAtomValue as Wo,useSetAtom as Mh}from"jotai";import{forwardRef as U7,memo as _7,useCallback as Mm,useEffect as Pr,useMemo as Nm,useRef as wi,useState as z7}from"react";import{Fragment as j7,jsx as Sm}from"react/jsx-runtime";var Wa=[{type:"text",content:`
|
|
214
|
+
`}],Nh=a(e=>{let t=e==null?void 0:e.elements.find(r=>r.type==="channel"&&r.channel==="msteams");return t||(t={type:"channel",channel:"msteams",elements:Wa}),t},"getOrCreateMSTeamsElement"),Sh=a(({value:e})=>{let{editor:t}=W7(),r=Mh(we),o=Wo(se),n=Wo(pe),i=Wo(Ce),s=wi(!1),l=wi(!1);return Pr(()=>{n&&(s.current=!1)},[n]),Pr(()=>{!t||n!==!1||s.current||!e||(s.current=!0,t.commands.setContent(e))},[t,e,n]),Pr(()=>{t&&(r(t),zt("teams",t),setTimeout(()=>{t.commands.blur()},1))},[t,r]),Pr(()=>{t&&l.current&&t.commands.updateSelectionState(i)},[t,i]),Pr(()=>(l.current=!0,()=>{l.current=!1}),[]),Pr(()=>{if(!t||!o||t.isFocused)return;let c=Nh(o),u=We({version:"2022-01-01",elements:[c]},{channel:"msteams"}),d=be(u),p=be(t.getJSON());JSON.stringify(d)!==JSON.stringify(p)&&setTimeout(()=>{t.isFocused||t.commands.setContent(u)},1)},[t,o]),null},"MSTeamsEditorContent"),Ih={contentType:{state:"hidden"},bold:{state:"enabled"},italic:{state:"enabled"},underline:{state:"hidden"},strike:{state:"hidden"},alignLeft:{state:"hidden"},alignCenter:{state:"hidden"},alignRight:{state:"hidden"},alignJustify:{state:"hidden"},link:{state:"hidden"},quote:{state:"enabled"},variable:{state:"enabled"},conditionalRules:[{id:"msteams-blockquote-bold-italic-mutex-1",trigger:{type:"node",name:"blockquote",active:!0},conditions:{activeItems:["italic"]},action:{type:"toggle_off",targets:["italic"]}},{id:"msteams-blockquote-bold-italic-mutex-2",trigger:{type:"node",name:"blockquote",active:!0},conditions:{activeItems:["bold"]},action:{type:"toggle_off",targets:["bold"]}}]},$7=U7(({theme:e,hidePublish:t,readOnly:r,channels:o,routing:n,headerRenderer:i,render:s,value:l,colorScheme:c,variables:u,disableVariablesAutocomplete:d=!1,...p},m)=>{let f=Wo(pe),v=Wo(dt),h=Wo(we),y=Wo(Vt),[x,E]=Ah(Ce),[g,b]=Ah(se),M=Mh(Oe),C=wi(!0),S=wi(!1),P=wi(y),k=Wo(Sr),w=Nm(()=>{let L=["text","divider"];return k.filter(W=>{let _=qt(W)?W.type:W;return L.includes(_)})},[k]),[T,A]=z7({Sidebar:w,Editor:[]});Pr(()=>{A(L=>({...L,Sidebar:w}))},[w]);let N=wi(null);mi({items:T,setItems:A});let R=Mm(L=>{N.current&&cancelAnimationFrame(N.current),setTimeout(()=>{N.current=requestAnimationFrame(()=>{try{let W=L==null?void 0:L.view.dom;if(!W){console.warn("syncEditorItems: Editor DOM element not found");return}let _=W.querySelectorAll(".react-renderer > div[data-node-view-wrapper][data-id]"),V=[];_.forEach(j=>{let Z=j.dataset.id;Z&&V.push(Z)}),A(j=>({Editor:V,Sidebar:j.Sidebar}))}catch(W){console.error("Error syncing editor items:",W),A(_=>({..._}))}})},50)},[]);Pr(()=>(S.current=!0,()=>{S.current=!1}),[]),Pr(()=>{P.current=y},[y]),Pr(()=>{let L=a(()=>{h&&R(h)},"updateItems");h==null||h.on("update",L),h==null||h.on("selectionUpdate",L),h==null||h.on("create",L),h==null||h.on("transaction",L),h&&!h.isDestroyed&&L();let W=a(_=>{L()},"handleNodeDuplicated");return document.addEventListener("node-duplicated",W),()=>{h==null||h.off("update",L),h==null||h.off("selectionUpdate",L),h==null||h.off("create",L),h==null||h.off("transaction",L),document.removeEventListener("node-duplicated",W),N.current&&cancelAnimationFrame(N.current)}},[h,R]),Pr(()=>{f===!1&&g&&setTimeout(()=>{h&&!h.isDestroyed&&R(h)},300)},[f,g,h,R]);let B=Mm(()=>!P.current,[]),H=Nm(()=>[...Ut({setSelectedNode:E,shouldHandleClick:B,variables:u,disableVariablesAutocomplete:d})].filter(L=>L!==void 0),[E,B,u,d]),D=Mm(({editor:L})=>{if(!L||v)return;if(!g){let K={version:"2022-01-01",elements:[{type:"channel",channel:"msteams",elements:be(L.getJSON())}]};b(K),M(K);return}let W=L.getJSON(),_=be(W),V=rt(g,{elements:_,channel:"msteams"}),j=JSON.stringify(g.elements),Z=JSON.stringify(V.elements);j!==Z&&(b(V),M(V))},[g,b,M,v]),F=Nm(()=>{let L=Nh(l);return We({version:"2022-01-01",elements:[L]},{channel:"msteams"})},[l]);return Sm(Wt,{theme:e,colorScheme:c,isLoading:!!(f&&C.current),Header:i?i({hidePublish:t,channels:o,routing:n}):Sm(sr,{hidePublish:t,channels:o,routing:n}),ref:m,...p,children:Sm(j7,{children:s==null?void 0:s({content:F,extensions:H,editable:!r,autofocus:!r,onUpdate:D,items:T,selectedNode:x,msteamsEditor:h})})})}),sc=_7($7);import{EditorProvider as K7}from"@tiptap/react";import{jsx as kt,jsxs as Ua}from"react/jsx-runtime";var Z7=a(()=>kt("div",{className:"courier-w-9 courier-h-9 courier-flex courier-bg-[#E5E5E5] dark:courier-bg-[#48465B] courier-rounded-full",children:kt(ta,{className:"courier-mx-auto courier-h-full dark:courier-text-[#8786A9]"})}),"AvatarSkeleton"),q7=a(()=>Ua("div",{className:"courier-flex courier-gap-2 courier-flex-row courier-items-start courier-w-full",children:[kt(Z7,{}),Ua("div",{className:"courier-flex courier-flex-col courier-gap-2 courier-w-full",children:[kt("div",{className:"courier-w-2/12 courier-h-[14px] courier-bg-[#F5F5F5] dark:courier-bg-[#2E333F] courier-rounded-[12px]"}),kt("div",{className:"courier-w-9/12 courier-h-[48px] courier-bg-[#F5F5F5] dark:courier-bg-[#2E333F] courier-rounded-[12px]"})]})]}),"MessageSkeleton"),J7=a(()=>kt("div",{className:"courier-flex courier-justify-end courier-w-full",children:kt("div",{className:"courier-flex courier-flex-col courier-gap-2 courier-items-end courier-w-full",children:kt("div",{className:"courier-w-6/12 courier-h-[48px] courier-bg-[#F5F5F5] dark:courier-bg-[#2E333F] courier-rounded-[12px]"})})}),"RightMessageSkeleton"),Rh=a(({children:e,className:t})=>Ua("div",{className:I("courier-w-full courier-max-w-[800px] courier-bg-white dark:courier-bg-[#171717] courier-rounded-lg courier-shadow-md courier-p-4 courier-mx-auto",t),children:[kt(q7,{}),Ua("div",{className:"courier-flex courier-gap-3 courier-my-8",children:[kt("div",{className:"courier-flex-shrink-0 courier-mt-6",children:kt("div",{className:"courier-w-9 courier-h-9 courier-rounded-full courier-bg-gradient-to-br courier-bg-[#9C4085] courier-flex courier-items-center courier-justify-center",children:kt(ea,{color:"#FFFFFF"})})}),Ua("div",{className:"courier-flex-1 courier-min-w-0",children:[kt("div",{className:"courier-flex courier-items-center courier-gap-2 courier-mt-1",children:kt("span",{className:"courier-text-sm courier-text-[#A3A3A3] dark:courier-text-[#8786A9]",children:"Circle"})}),kt("div",{className:"courier-bg-[#F5F5F5] dark:courier-bg-[#2E333F] courier-rounded-[12px] courier-px-3 courier-py-2 courier-text-sm courier-text-gray-900 dark:courier-text-[#C9C8E1] courier-leading-relaxed courier-max-w-full courier-pr-5",children:e})]})]}),kt(J7,{})]}),"MSTeamsFrame");import{useRef as G7,useEffect as X7}from"react";import{Fragment as Y7,jsx as ki,jsxs as Q7}from"react/jsx-runtime";var Im=a(({content:e,extensions:t,editable:r,autofocus:o,onUpdate:n,readOnly:i=!1})=>{let s=G7(null);return X7(()=>{let l=s.current;if(!(!l||i))return Kt({element:l,getData:()=>({type:"editor",id:"editor-drop-zone"})})},[i]),e?ki(Rh,{children:ki("div",{ref:s,children:ki(K7,{content:e,extensions:t,editable:r,autofocus:o,onUpdate:n,editorContainerProps:{className:I("courier-msteams-editor")},immediatelyRender:!1,children:i?ki(cr,{value:e,defaultValue:Wa}):Q7(Y7,{children:[ki(Sh,{value:e}),ki(_t,{config:Ih})]})})})}):null},"MSTeamsEditor");import{useAtomValue as rT}from"jotai";import{GripVertical as eT}from"lucide-react";import{Fragment as tT,jsx as ho,jsxs as Rm}from"react/jsx-runtime";var Lm=a(({items:e,label:t,editor:r})=>ho("div",{className:"courier-flex courier-flex-col courier-h-full",children:Rm("div",{className:"courier-flex-1",children:[t&&Rm(tT,{children:[ho("p",{className:"courier-text-sm courier-font-medium courier-text-foreground",children:t}),ho(fe,{className:"courier-my-4"})]}),ho("div",{className:"courier-flex courier-flex-col courier-gap-4 courier-w-full",children:e.map(o=>{let n=qt(o)?`${o.type}:${o.preset}`:o,i=qt(o)?o.type:o;return ho(fi,{id:n,editor:r,children:Rm("div",{className:I("courier-rounded-md courier-border courier-border-border courier-flex courier-flex-row courier-items-center courier-gap-1 courier-bg-background courier-cursor-grab courier-opacity-[0.999] courier-px-3 courier-py-2 courier-select-none"),children:[ho(eT,{strokeWidth:1,className:"courier-w-4 courier-stroke-neutral-400 courier-fill-neutral-400"}),i==="text"&&ho(Ao,{draggable:!0}),i==="divider"&&ho(Po,{draggable:!0}),i==="button"&&ho(ko,{draggable:!0})]})},n)})})]})}),"MSTeamsSideBar");import{forwardRef as Lh}from"react";import{jsx as Kr,jsxs as iT}from"react/jsx-runtime";var oT=Lh(({children:e,className:t,...r},o)=>Kr("div",{className:I("courier-editor-container courier-relative",t),...r,ref:o,children:e})),nT=Lh(({children:e,...t},r)=>Kr("div",{className:"courier-editor-main courier-transition-all courier-duration-300 courier-ease-in-out",...t,ref:r,children:e})),Bh=a(({hidePublish:e,theme:t,variables:r,disableVariablesAutocomplete:o,channels:n,routing:i,colorScheme:s})=>{let l=rT(se);return Kr(sc,{value:l,variables:r,disableVariablesAutocomplete:o,theme:t,hidePublish:e,channels:n,routing:i,colorScheme:s,render:c=>{var u;return iT(An,{children:[Kr("div",{className:"courier-flex courier-flex-col courier-flex-1",children:Kr(oT,{children:Kr(nT,{children:Kr(Im,{...c},`msteams-editor-${o?"no-autocomplete":"autocomplete"}`)})})}),Kr(Mn,{children:Kr("div",{className:"courier-p-1 courier-h-full",children:Kr(Lm,{items:c.items.Sidebar,label:"Blocks library",editor:(u=c.msteamsEditor)!=null?u:void 0})})})]})}})},"MSTeamsLayout");var Fh={sms:{elements:go},push:{elements:In},inbox:{elements:Da},slack:{elements:Oa},email:{elements:Ia},msteams:{elements:Wa}},Hm=a(e=>{var t;return(t=Fh[e])!=null?t:Fh.email},"getChannelDefaults"),cT=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"),Vm=a(({channels:e=["email"],routing:t})=>{let[r,o]=lT([]),n=Dh(se),i=Bm(se),s=Bm(Oe),[l,c]=aT(Co),u=Bm(Ce),d=Dh(pe),p=cT(t,e),m=sT(p);m.current=p,Dm(()=>{if(d||n!=null&&n.elements)return;let E=m.current.map(g=>rn.find(b=>b.value===g)).filter(g=>!!g);o(E),E.length>0&&!l&&c(E[0].value)},[n,d,c,l]),Dm(()=>{if(d||!(n!=null&&n.elements))return;let x=m.current,E=n.elements.filter(b=>b.type==="channel").map(b=>b.channel).filter(b=>x.includes(b)),g=x.filter(b=>E.includes(b)).map(b=>rn.find(M=>M.value===b)).filter(b=>!!b);o(g)},[n,d]),Dm(()=>{var g;if(d||r.length===0)return;let x=r.some(b=>b.value===l),E=(g=n==null?void 0:n.elements)==null?void 0:g.some(b=>b.type==="channel"&&b.channel===l);!x&&!E&&c(r[0].value)},[r,l,c,d,n]);let f=Vh(()=>(p==null?void 0:p.filter(x=>!r.some(E=>E.value===x)).map(x=>rn.find(E=>E.value===x)).filter(x=>!!x))||[],[r,p]),v=Hh(x=>{let E=[],g,{elements:b,raw:M}=Hm(x);if(E=b,g=M,!n){let P=[];for(let T of r){let{elements:A,raw:N}=Hm(T.value),R={type:"channel",channel:T.value,elements:A};N&&(R.raw=N),P.push(R)}let k={type:"channel",channel:x,elements:E};g&&(k.raw=g),P.push(k);let w={version:"2022-01-01",elements:P};i(w),s(w),c(x);return}let S=rt(n,{elements:E,channel:g?{channel:x,raw:g}:x});i(S),s(S),c(x)},[n,i,s,c,r]),h=Hh(x=>{if(!n)return;let E=n.elements.filter(M=>M.type==="channel"?M.channel!==x:!0),g={...n,elements:E};i(g),s(g),u(null);let b=r.filter(M=>M.value!==x);l===x&&b.length>0&&c(b[0].value)},[n,i,s,r,l,c,u]),y=Vh(()=>[...r,...f],[r,f]);return{enabledChannels:r,disabledChannels:f,channel:l,channelOptions:y,setChannel:c,addChannel:v,removeChannel:h}},"useChannels");import{Fragment as gT,jsx as ht,jsxs as Gr}from"react/jsx-runtime";var sr=a(({hidePublish:e=!1,channels:t,routing:r})=>{let o=fT(null),n=lc(tt),i=lc(pe),s=lc(ae),{publishTemplate:l,isTemplatePublishing:c}=Di(),[u,d]=dT(Dn),p=mT(Nr),m=lc(Nr),{enabledChannels:f,disabledChannels:v,channel:h,setChannel:y,addChannel:x,removeChannel:E}=Vm({channels:t,routing:r});pT(()=>{n===!0&&d(null)},[n,d]);let g=_a(()=>{m&&p(!1),l()},[l,m,p]),b=_a(P=>{m&&p(!1),y(P)},[m,p,y]),M=_a(P=>{m&&p(!1),x(P)},[m,p,x]),C=_a(P=>{m&&p(!1),E(P)},[m,p,E]),S=_a(()=>{m&&p(!1)},[m,p]);return Gr("div",{className:"courier-flex courier-justify-between courier-w-full courier-h-full courier-self-stretch",ref:o,onClick:S,children:[Gr("div",{className:"courier-flex courier-items-center courier-gap-2 courier-flex-grow courier-self-stretch",children:[ht(hs,{value:h,onValueChange:b,className:"courier-h-full",ref:o,children:ht(zi,{className:"courier-grid courier-w-full courier-border-none courier-h-full !courier-p-0",style:{gridTemplateColumns:`repeat(${rn.length}, fit-content(100%))`},children:f.map(P=>Gr(Wn,{value:P.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:[P.label,P.value===h&&f.length>1&&Gr(cp,{children:[ht(up,{asChild:!0,children:ht("div",{className:"courier-pl-2",children:ht($i,{color:"#A3A3A3"})})}),Gr(Dc,{ref:o,children:[ht(Hc,{children:ht(uT,{children:"Are you sure you want to delete this channel?"})}),Gr(Vc,{children:[ht(Oc,{asChild:!0,children:ht(ke,{buttonSize:"small",variant:"outline",children:"Cancel"})}),ht(Fc,{asChild:!0,children:ht(ke,{buttonSize:"small",variant:"primary",onClick:()=>C(P.value),children:"Delete"})})]})]})]})]},P.value))})}),v.length>0&&Gr(gT,{children:[ht(jc,{orientation:"vertical",className:"!courier-h-5"}),Gr(ds,{children:[ht(ms,{asChild:!0,children:ht(ke,{variant:"link",children:"+ Add channel"})}),ht(Fi,{portalProps:{container:o.current},children:v.map(P=>Gr(Oi,{onClick:()=>M(P.value),children:[P.icon,P.label]},P.value))})]})]})]}),Gr("div",{className:"courier-w-64 courier-pl-4 courier-flex courier-justify-end courier-items-center courier-gap-2",children:[n!==null&&ht(oa,{isLoading:!!i,isSaving:!!n,isError:!!s}),!e&&i!==null&&ht(ke,{variant:"primary",buttonSize:"small",disabled:c===!0||n===!0||u!==null,onClick:g,children:c?"Publishing...":"Publish changes"})]})]})},"Channels");import{useCallback as Oh,useEffect as Wh,useRef as Uo,useState as hT}from"react";function za({onSave:e,debounceMs:t=2e3,enabled:r=!0,onError:o,initialContent:n,flushBeforeSave:i}){let[s,l]=hT(!1),c=Uo(!1),u=Uo(null),d=Uo(),p=Uo(0),m=Uo();Wh(()=>{n&&(d.current=JSON.stringify(n))},[n]);let f=Oh(async()=>{if(c.current)return;if(i)try{i()}catch(g){console.error("[AutoSave] Error flushing updates:",g)}let E=u.current;if(u.current=null,!!E)try{let g=JSON.stringify(E);if(g===d.current)return;c.current=!0,l(!0),d.current=g,p.current=Date.now(),await e(E)}catch(g){console.error("[AutoSave] Save failed:",g),o==null||o(g)}finally{if(c.current=!1,l(!1),u.current){let g=t;m.current=setTimeout(()=>{m.current=void 0,f()},g)}}},[t,o,e,i]),v=Uo(r),h=Uo(t),y=Uo(f);return Wh(()=>{v.current=r,h.current=t,y.current=f}),{handleAutoSave:Oh(async E=>{if(!v.current)return;let g=JSON.stringify(E);if(u.current=E,g===d.current||c.current)return;m.current&&(clearTimeout(m.current),m.current=void 0);let b=h.current;m.current=setTimeout(()=>{m.current=void 0,y.current()},b)},[]),isSaving:s}}a(za,"useAutoSave");import{useAtom as ja,useAtomValue as bo,useSetAtom as Rn}from"jotai";import{memo as _T,useCallback as Um,useEffect as At,useRef as Ni,useState as zT}from"react";import{useAtom as Gh,useAtomValue as Wm,useSetAtom as Xh}from"jotai";import{forwardRef as OT,memo as WT,useCallback as Yh,useEffect as Mi,useRef as Qh}from"react";import{z as jt}from"zod";var Uh=jt.object({headerStyle:jt.enum(["plain","border"]),isUnsubscribe:jt.boolean().optional(),isPreferences:jt.boolean().optional(),link:jt.string().optional(),brandColor:jt.string(),textColor:jt.string(),subtleColor:jt.string(),logo:jt.string().optional(),facebookLink:jt.string().optional(),linkedinLink:jt.string().optional(),instagramLink:jt.string().optional(),mediumLink:jt.string().optional(),xLink:jt.string().optional()}),Dt={headerStyle:"plain",isUnsubscribe:!1,isPreferences:!1,link:"",brandColor:"#000000",textColor:"#9CA3AF",subtleColor:"#737373",logo:"",facebookLink:"",linkedinLink:"",instagramLink:"",mediumLink:"",xLink:""};var bT=a(e=>{switch(e.type){case"bold":return"**";case"italic":return"*";case"strike":return"~";case"underline":return"+";default:return""}},"markToMD"),$a=a(e=>{var t,r,o,n,i,s,l,c,u,d,p,m,f,v;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 x=e.marks.map(bT).filter(Boolean);h=x.join("")+h+x.reverse().join("")}let y=(o=e.marks)==null?void 0:o.find(x=>x.type==="link");return y&&(h=`[${h}](${(n=y.attrs)==null?void 0:n.href})`),h}case"hardBreak":return`
|
|
215
|
+
`;case"paragraph":return(((i=e.content)==null?void 0:i.map($a).join(""))||"")+`
|
|
216
216
|
|
|
217
|
-
`;case"heading":{let h=((
|
|
217
|
+
`;case"heading":{let h=((s=e.attrs)==null?void 0:s.level)||1,y="#".repeat(h)+" ",x=((l=e.content)==null?void 0:l.map($a).join(""))||"";return y+x+`
|
|
218
218
|
|
|
219
|
-
`}case"blockquote":return(((c=e.content)==null?void 0:c.map(
|
|
220
|
-
`).map(
|
|
219
|
+
`}case"blockquote":return(((c=e.content)==null?void 0:c.map($a).join(""))||"").split(`
|
|
220
|
+
`).map(y=>`> ${y}`).join(`
|
|
221
221
|
`)+`
|
|
222
222
|
|
|
223
|
-
`;case"imageBlock":{let h=((u=e.attrs)==null?void 0:u.alt)||"",
|
|
223
|
+
`;case"imageBlock":{let h=((u=e.attrs)==null?void 0:u.alt)||"",y=((d=e.attrs)==null?void 0:d.sourcePath)||"",x=(p=e.attrs)==null?void 0:p.link,E=``;return x?`[${E}](${x})
|
|
224
224
|
|
|
225
225
|
`:E+`
|
|
226
226
|
|
|
227
227
|
`}case"divider":return`---
|
|
228
228
|
|
|
229
|
-
`;case"button":{let h=((
|
|
229
|
+
`;case"button":{let h=((m=e.attrs)==null?void 0:m.label)||"",y=((f=e.attrs)==null?void 0:f.link)||"#";return`[${h}](${y})
|
|
230
230
|
|
|
231
|
-
`}default:return((C=e.content)==null?void 0:C.map(zi).join(""))||""}},"convertNodeToMarkdown");function Gs(e){return e.content?e.content.map(zi).join("").trim():""}s(Gs,"convertTiptapToMarkdown");import{useAtom as Cg,useAtomValue as An,useSetAtom as Q4}from"jotai";import{forwardRef as e7,memo as t7,useCallback as Ys}from"react";import{forwardRef as V4}from"react";import{jsx as F4}from"react/jsx-runtime";var fg=V4(({children:e},t)=>F4("div",{ref:t,className:"courier-z-30 courier-flex courier-w-full courier-bg-primary courier-h-12 courier-border-b rounded-b-none rounded-t-sm courier-shadow-none courier-justify-between courier-items-center courier-px-4",children:e}));import{useCallback as uo,useRef as O4,useState as U4}from"react";import{jsx as Qu,jsxs as _4}from"react/jsx-runtime";var W4=["image/png","image/jpeg","image/gif","image/webp"],gg=s(({onFileSelect:e})=>{let[t,r]=U4(!1),o=O4(null),n=uo(d=>W4.includes(d),[]),i=uo(d=>{d.preventDefault(),d.stopPropagation(),d.dataTransfer.types.includes("Files")&&Array.from(d.dataTransfer.items).some(h=>n(h.type))&&(r(!0),d.dataTransfer.dropEffect="copy")},[n]),a=uo(d=>{d.preventDefault(),d.stopPropagation(),r(!1)},[]),l=uo(d=>{d.preventDefault(),d.stopPropagation(),d.dataTransfer.types.includes("Files")&&Array.from(d.dataTransfer.items).some(h=>n(h.type))&&r(!0)},[n]),c=uo(async d=>{try{let{dataUrl:f}=await na(d,800);e==null||e(f),o.current&&(o.current.value="")}catch(f){console.error("Error processing image:",f),o.current&&(o.current.value="")}},[e]),u=uo(d=>{d.preventDefault(),d.stopPropagation(),r(!1);let C=Array.from(d.dataTransfer.files).find(h=>n(h.type));C&&c(C)},[c,n]),p=uo(d=>{var C;let f=(C=d.target.files)==null?void 0:C[0];f&&c(f)},[c]),m=uo(d=>{var f;d.preventDefault(),d.stopPropagation(),(f=o.current)==null||f.click()},[]);return _4("div",{className:I("courier-bg-gray-100 courier-rounded-md courier-flex courier-flex-row courier-items-center courier-cursor-pointer courier-transition-colors courier-py-4 courier-px-6 courier-gap-1 !courier-w-fit",t&&"courier-border-primary courier-bg-gray-50"),onDragOver:i,onDragEnter:l,onDragLeave:a,onDrop:u,style:{pointerEvents:"all"},children:[Qu("span",{className:"courier-text-sm courier-pointer-events-none",children:"Drag and drop logo, or"}),Qu("button",{className:"courier-underline courier-font-medium courier-text-sm",onClick:m,type:"button",children:"Browse"}),Qu("input",{ref:o,type:"file",accept:"image/png, image/jpeg, image/gif, image/webp",className:"courier-hidden",onChange:p},"logo-input")]})},"LogoUploader");import{zodResolver as z4}from"@hookform/resolvers/zod";import{useAtom as $4,useAtomValue as Z4,useSetAtom as q4}from"jotai";import{ArrowUp as J4}from"lucide-react";import{memo as j4,useCallback as hg,useEffect as K4,useRef as G4}from"react";import{useForm as Y4}from"react-hook-form";import{jsx as $,jsxs as Et}from"react/jsx-runtime";var bg=s(({isActive:e,onClick:t,value:r})=>$("div",{className:I("courier-w-full courier-h-16 courier-rounded-md courier-border-border courier-border courier-overflow-hidden courier-bg-secondary courier-cursor-pointer",e&&"!courier-border-[#3B82F6]"),onClick:t,children:$("div",{className:"courier-h-full courier-m-2 courier-rounded-md courier-border-border courier-border courier-shadow-md courier-bg-background courier-overflow-hidden",children:r==="border"&&$("div",{className:"courier-w-full courier-bg-[#000000] courier-h-1"})})}),"HeaderStyle"),X4=s(()=>{let[e,t]=$4(ur),r=q4(Yt),o=Z4(qo),n=G4(null),i=Y4({resolver:z4(pg),defaultValues:{...mt,...e},mode:"onChange"});K4(()=>{e&&i.reset(e)},[e,i]);let a=hg(()=>{t(i.getValues())},[i,t]),l=hg(c=>{var u;if(o){if(c){let m={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(m).run()}else{let m=((u=o.getJSON().content)==null?void 0:u.filter(d=>{var C;return d.type!=="paragraph"?!0:!((C=d.content)==null?void 0:C.some(h=>{var b;return h.type==="text"&&((b=h.marks)==null?void 0:b.some(v=>{var E;return v.type==="link"&&((E=v.attrs)==null?void 0:E.href)==="{{urls.preferences}}"}))}))}))||[];o.chain().focus().setContent({type:"doc",content:m}).run()}r(Gs(o.getJSON()))}},[o,r]);return $(Me,{...i,children:$("form",{onChange:()=>a(),children:Et("div",{className:"courier-pb-6",children:[$("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Header style"}),$(J,{control:i.control,name:"headerStyle",render:({field:c})=>Et(Z,{className:"courier-mb-4",children:[$(q,{children:Et("div",{className:"courier-w-full courier-flex courier-flex-row courier-gap-3",children:[$(bg,{isActive:c.value==="plain",onClick:()=>{c.onChange("plain"),t({...i.getValues(),headerStyle:"plain"})},value:"plain"}),$(bg,{isActive:c.value==="border",onClick:()=>{c.onChange("border"),t({...i.getValues(),headerStyle:"border"})},value:"border"})]})}),$(j,{})]})}),$(le,{className:"courier-mb-4"}),$("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?$(ve,{onClick:()=>{let c=i.getValues();c.logo="",i.reset(c),t({...c}),n.current&&(n.current.value=""),a()},className:"courier-w-full",variant:"outline",type:"button",children:"Remove logo"}):Et(ve,{onClick:c=>{c.preventDefault(),n.current&&(n.current.value="",n.current.click())},className:"courier-w-full",variant:"outline",type:"button",children:[$(J4,{strokeWidth:1.25,className:"courier-w-4 courier-h-4 courier-mr-2 courier-text-foreground"}),"Upload logo"]}),$("input",{ref:n,type:"file",accept:"image/png, image/jpeg, image/gif, image/webp",className:"courier-hidden",onChange:async c=>{var p;let u=(p=c.target.files)==null?void 0:p[0];if(u)try{let{dataUrl:m}=await na(u,800),d=i.getValues();d.logo=m,i.reset(d),t({...d})}catch(m){console.error("Error processing image:",m)}n.current&&(n.current.value="")}})]}),$(J,{control:i.control,name:"link",render:({field:c})=>Et(Z,{className:"courier-mb-3",children:[$(q,{children:$(ro,{as:"Textarea",placeholder:"Link",...c,onChange:u=>{c.onChange(u),a()}})}),$(j,{})]})}),$(le,{className:"courier-mb-4"}),$("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Brand color"}),$(J,{control:i.control,name:"brandColor",render:({field:c})=>Et(Z,{className:"courier-mb-4",children:[$(q,{children:$(Ge,{...c,defaultValue:c.value,onChange:u=>{c.onChange(u),a()}})}),$(j,{})]})}),$(le,{className:"courier-mb-4"}),$("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,{control:i.control,name:"facebookLink",render:({field:c})=>Et(Z,{children:[$(q,{children:$(pe,{startAdornment:$(ti,{}),placeholder:"facebook.com/username",...c,autoFocus:!0})}),$(j,{})]})}),$(J,{control:i.control,name:"linkedinLink",render:({field:c})=>Et(Z,{children:[$(q,{children:$(pe,{startAdornment:$(ni,{}),placeholder:"linkedin.com/username",...c})}),$(j,{})]})}),$(J,{control:i.control,name:"instagramLink",render:({field:c})=>Et(Z,{children:[$(q,{children:$(pe,{startAdornment:$(oi,{}),placeholder:"instagram.com/username",...c})}),$(j,{})]})}),$(J,{control:i.control,name:"mediumLink",render:({field:c})=>Et(Z,{children:[$(q,{children:$(pe,{startAdornment:$(ii,{}),placeholder:"medium.com/username",...c})}),$(j,{})]})}),$(J,{control:i.control,name:"xLink",render:({field:c})=>Et(Z,{children:[$(q,{children:$(pe,{startAdornment:$(ui,{}),placeholder:"x.com/username",...c})}),$(j,{})]})})]}),$(le,{className:"courier-mb-4"}),$("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Footer actions"}),$(J,{control:i.control,name:"isPreferences",render:({field:c})=>Et(Z,{className:"courier-flex courier-flex-row courier-items-center courier-gap-2 courier-mb-4",children:[$(q,{children:$(Jo,{checked:c.value,onCheckedChange:u=>{i.setValue("isPreferences",u),c.onChange(u),l(u);let p={...i.getValues(),isPreferences:u};t(p)}})}),$(ar,{className:"!courier-m-0",children:"Manage Preferences"}),$(j,{})]})})]})})})},"SideBarComponent"),yg=j4(X4);import{Fragment as o7,jsx as at,jsxs as In}from"react/jsx-runtime";var r7=e7(({hidePublish:e=!1,templateEditor:t,variables:r},o)=>{var w,N,y,S,P,T,x,k;let n=Q4(Xo),{publishBrand:i}=_n(),a=An(Ue),l=An(pt),c=An(We),u=An(ae),p=An(G),m=An(qo),[d,f]=Cg(ur),[C,h]=Cg(Yt),b=Ys(()=>{i()},[i]),v=Ys(({editor:M})=>{h(Gs(M.getJSON()))},[h]),E=Ys(M=>{f(A=>A?{...A,logo:M}:{...mt,logo:M})},[f]),g=Ys(()=>{n("template")},[n]);return In(o7,{children:[at("div",{className:"courier-z-30 courier-w-full courier-h-12",children:In(fg,{children:[at("div",{className:"courier-text-sm courier-font-medium",children:"Brand theme"}),In("div",{className:"courier-flex courier-gap-2 courier-items-center",children:[c!==null&&at(di,{isLoading:!!u,isSaving:!!c,isError:!!p}),t&&at(ve,{variant:"outline",buttonSize:"small",onClick:g,disabled:l===!0||c===!0,children:"Back"}),!e&&u!==null&&at(ve,{variant:"primary",buttonSize:"small",disabled:!((N=(w=a==null?void 0:a.data)==null?void 0:w.tenant)!=null&&N.brand)||l===!0||c!==!1,onClick:b,children:l?"Publishing...":"Publish changes"})]})]})}),In("div",{className:"courier-flex courier-flex-1 courier-flex-row courier-overflow-hidden",children:[at("div",{className:"courier-flex courier-flex-col courier-flex-1",children:In("div",{className:"courier-editor-container",ref:o,children:[at("div",{className:"courier-mb-3 courier-max-w-2xl courier-self-center courier-w-full",children:"Header"}),In("div",{className:I("courier-editor-main courier-transition-all courier-duration-300 courier-ease-in-out courier-py-5 courier-px-9 courier-mb-8 courier-relative courier-overflow-hidden courier-flex courier-flex-col courier-items-start",(d==null?void 0:d.headerStyle)==="border"&&"courier-pt-6"),children:[(d==null?void 0:d.headerStyle)==="border"&&at("div",{className:"courier-absolute courier-top-0 courier-left-0 courier-right-0 courier-h-2",style:{backgroundColor:d.brandColor}}),d!=null&&d.logo?at("img",{src:d.logo,alt:"Brand logo",className:"courier-w-auto courier-max-w-36 courier-object-contain courier-cursor-default"}):at(gg,{onFileSelect:E})]}),at("div",{className:"courier-mb-3 courier-max-w-2xl courier-self-center courier-w-full",children:"Footer"}),at("div",{className:"courier-theme-editor-main courier-transition-all courier-duration-300 courier-ease-in-out courier-pt-3 courier-pb-5 courier-px-9",children:at(Si,{value:C!=null?C:(k=(x=(T=(P=(S=(y=a==null?void 0:a.data)==null?void 0:y.tenant)==null?void 0:S.brand)==null?void 0:P.settings)==null?void 0:T.email)==null?void 0:x.footer)==null?void 0:k.markdown,variables:r,facebookLink:d==null?void 0:d.facebookLink,linkedinLink:d==null?void 0:d.linkedinLink,instagramLink:d==null?void 0:d.instagramLink,mediumLink:d==null?void 0:d.mediumLink,xLink:d==null?void 0:d.xLink,onUpdate:v})})]})}),at("div",{className:"courier-editor-sidebar courier-opacity-100 courier-translate-x-0 courier-w-64 courier-flex-shrink-0",children:at("div",{className:"courier-p-4 courier-h-full",children:m&&at(yg,{})})})]})]})}),vg=t7(r7);import{jsx as wg}from"react/jsx-runtime";var a7=n7(({hidePublish:e=!1,autoSaveDebounce:t=500,autoSave:r=!0,theme:o,colorScheme:n,...i},a)=>{let l=td(ae),c=kg(!0),u=td(Je),{getTemplate:p,saveBrand:m}=_n(),[d,f]=xg(Ue),C=Tg(Yt),h=td(Yt),[b,v]=xg(ur),E=kg(!1),g=Tg(G);Sn(()=>{var S,P;d&&u!==((P=(S=d==null?void 0:d.data)==null?void 0:S.tenant)==null?void 0:P.tenantId)&&(f(null),C(null),c.current=!1)},[d,u,f,C]);let w=Eg(async S=>{await m(S)},[m]),N=Eg(()=>{g(Pr("Error saving theme"))},[g]),{handleAutoSave:y}=_i({onSave:w,enabled:l!==null&&r&&h!==null,debounceMs:t,onError:N});return Sn(()=>{!u||l||d&&l===!1||p()},[u,p,l,d]),Sn(()=>{h&&setTimeout(()=>{E.current=!0},500)},[h]),Sn(()=>{if(!E.current||!b)return;let S={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:h!=null?h: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}}}}};y(S)},[b,h,y]),Sn(()=>{l||(c.current=!1)},[l]),Sn(()=>{var S,P,T,x,k,M,A,R,B,F,L,D,V,O,_,U,W,X,te,re,H,Y,he,Te,He,qe,kt,wt,se,ke,ye,st,lt,Wt,_t,zt,$t,zr;if(!b){let oe=(T=(P=(S=d==null?void 0:d.data)==null?void 0:S.tenant)==null?void 0:P.brand)==null?void 0:T.settings,wr=(A=h==null?void 0:h.split(`
|
|
232
|
-
`))!=null?
|
|
233
|
-
`),
|
|
231
|
+
`}default:return((v=e.content)==null?void 0:v.map($a).join(""))||""}},"convertNodeToMarkdown");function cc(e){return e.content?e.content.map($a).join("").trim():""}a(cc,"convertTiptapToMarkdown");import{useAtom as qh,useAtomValue as Pi,useSetAtom as Jh}from"jotai";import{forwardRef as BT,memo as DT,useCallback as uc,useEffect as HT}from"react";import{forwardRef as yT}from"react";import{jsx as vT}from"react/jsx-runtime";var _h=yT(({children:e},t)=>vT("div",{ref:t,className:"courier-z-30 courier-flex courier-w-full courier-bg-primary courier-h-12 courier-border-b rounded-b-none rounded-t-sm courier-shadow-none courier-justify-between courier-items-center courier-px-4",children:e}));import{useCallback as _o,useRef as CT,useState as xT}from"react";import{jsx as Fm,jsxs as ET}from"react/jsx-runtime";var TT=["image/png","image/jpeg","image/gif","image/webp"],zh=a(({onFileSelect:e})=>{let[t,r]=xT(!1),o=CT(null),n=_o(m=>TT.includes(m),[]),i=_o(m=>{m.preventDefault(),m.stopPropagation(),m.dataTransfer.types.includes("Files")&&Array.from(m.dataTransfer.items).some(h=>n(h.type))&&(r(!0),m.dataTransfer.dropEffect="copy")},[n]),s=_o(m=>{m.preventDefault(),m.stopPropagation(),r(!1)},[]),l=_o(m=>{m.preventDefault(),m.stopPropagation(),m.dataTransfer.types.includes("Files")&&Array.from(m.dataTransfer.items).some(h=>n(h.type))&&r(!0)},[n]),c=_o(async m=>{try{let{dataUrl:f}=await ls(m,800);e==null||e(f),o.current&&(o.current.value="")}catch(f){console.error("Error processing image:",f),o.current&&(o.current.value="")}},[e]),u=_o(m=>{m.preventDefault(),m.stopPropagation(),r(!1);let v=Array.from(m.dataTransfer.files).find(h=>n(h.type));v&&c(v)},[c,n]),d=_o(m=>{var v;let f=(v=m.target.files)==null?void 0:v[0];f&&c(f)},[c]),p=_o(m=>{var f;m.preventDefault(),m.stopPropagation(),(f=o.current)==null||f.click()},[]);return ET("div",{className:I("courier-bg-gray-100 courier-rounded-md courier-flex courier-flex-row courier-items-center courier-cursor-pointer courier-transition-colors courier-py-4 courier-px-6 courier-gap-1 !courier-w-fit",t&&"courier-border-primary courier-bg-gray-50"),onDragOver:i,onDragEnter:l,onDragLeave:s,onDrop:u,style:{pointerEvents:"all"},children:[Fm("span",{className:"courier-text-sm courier-pointer-events-none",children:"Drag and drop logo, or"}),Fm("button",{className:"courier-underline courier-font-medium courier-text-sm",onClick:p,type:"button",children:"Browse"}),Fm("input",{ref:o,type:"file",accept:"image/png, image/jpeg, image/gif, image/webp",className:"courier-hidden",onChange:d},"logo-input")]})},"LogoUploader");import{zodResolver as wT}from"@hookform/resolvers/zod";import{useAtom as kT,useAtomValue as PT,useSetAtom as AT}from"jotai";import{ArrowUp as MT}from"lucide-react";import{memo as NT,useCallback as $h,useEffect as ST,useRef as IT}from"react";import{useForm as RT}from"react-hook-form";import{jsx as Q,jsxs as Zt}from"react/jsx-runtime";var jh=a(({isActive:e,onClick:t,value:r})=>Q("div",{className:I("courier-w-full courier-h-16 courier-rounded-md courier-border-border courier-border courier-overflow-hidden courier-bg-secondary courier-cursor-pointer",e&&"!courier-border-[#3B82F6]"),onClick:t,children: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"),LT=a(()=>{let[e,t]=kT(Dr),r=AT(gr),o=PT(Vn),n=IT(null),i=RT({resolver:wT(Uh),defaultValues:{...Dt,...e},mode:"onChange"});ST(()=>{e&&i.reset(e)},[e,i]);let s=$h(()=>{t(i.getValues())},[i,t]),l=$h(c=>{var u;if(o){if(c){let p={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(p).run()}else{let p=((u=o.getJSON().content)==null?void 0:u.filter(m=>{var v;return m.type!=="paragraph"?!0:!((v=m.content)==null?void 0:v.some(h=>{var y;return h.type==="text"&&((y=h.marks)==null?void 0:y.some(x=>{var E;return x.type==="link"&&((E=x.attrs)==null?void 0:E.href)==="{{urls.preferences}}"}))}))}))||[];o.chain().focus().setContent({type:"doc",content:p}).run()}r(cc(o.getJSON()))}},[o,r]);return Q(He,{...i,children:Q("form",{onChange:()=>s(),children:Zt("div",{className:"courier-pb-6",children:[Q("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Header style"}),Q(re,{control:i.control,name:"headerStyle",render:({field:c})=>Zt(ee,{className:"courier-mb-4",children:[Q(te,{children:Zt("div",{className:"courier-w-full courier-flex courier-flex-row courier-gap-3",children:[Q(jh,{isActive:c.value==="plain",onClick:()=>{c.onChange("plain"),t({...i.getValues(),headerStyle:"plain"})},value:"plain"}),Q(jh,{isActive:c.value==="border",onClick:()=>{c.onChange("border"),t({...i.getValues(),headerStyle:"border"})},value:"border"})]})}),Q(oe,{})]})}),Q(fe,{className:"courier-mb-4"}),Q("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Logo"}),Zt("div",{className:"courier-flex courier-flex-row courier-gap-3 courier-mb-3",children:[i.getValues().logo?Q(ke,{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"}):Zt(ke,{onClick:c=>{c.preventDefault(),n.current&&(n.current.value="",n.current.click())},className:"courier-w-full",variant:"outline",type:"button",children:[Q(MT,{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/png, image/jpeg, image/gif, image/webp",className:"courier-hidden",onChange:async c=>{var d;let u=(d=c.target.files)==null?void 0:d[0];if(u)try{let{dataUrl:p}=await ls(u,800),m=i.getValues();m.logo=p,i.reset(m),t({...m})}catch(p){console.error("Error processing image:",p)}n.current&&(n.current.value="")}})]}),Q(re,{control:i.control,name:"link",render:({field:c})=>Zt(ee,{className:"courier-mb-3",children:[Q(te,{children:Q(Bo,{as:"Textarea",placeholder:"Link",...c,onChange:u=>{c.onChange(u),s()}})}),Q(oe,{})]})}),Q(fe,{className:"courier-mb-4"}),Q("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Brand color"}),Q(re,{control:i.control,name:"brandColor",render:({field:c})=>Zt(ee,{className:"courier-mb-4",children:[Q(te,{children:Q(pt,{...c,defaultValue:c.value,onChange:u=>{c.onChange(u),s()}})}),Q(oe,{})]})}),Q(fe,{className:"courier-mb-4"}),Q("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Footer links"}),Zt("div",{className:"courier-flex courier-flex-col courier-gap-3 courier-mb-3",children:[Q(re,{control:i.control,name:"facebookLink",render:({field:c})=>Zt(ee,{children:[Q(te,{children:Q(ve,{startAdornment:Q(qi,{}),placeholder:"facebook.com/username",...c,autoFocus:!0})}),Q(oe,{})]})}),Q(re,{control:i.control,name:"linkedinLink",render:({field:c})=>Zt(ee,{children:[Q(te,{children:Q(ve,{startAdornment:Q(Gi,{}),placeholder:"linkedin.com/username",...c})}),Q(oe,{})]})}),Q(re,{control:i.control,name:"instagramLink",render:({field:c})=>Zt(ee,{children:[Q(te,{children:Q(ve,{startAdornment:Q(Ki,{}),placeholder:"instagram.com/username",...c})}),Q(oe,{})]})}),Q(re,{control:i.control,name:"mediumLink",render:({field:c})=>Zt(ee,{children:[Q(te,{children:Q(ve,{startAdornment:Q(Xi,{}),placeholder:"medium.com/username",...c})}),Q(oe,{})]})}),Q(re,{control:i.control,name:"xLink",render:({field:c})=>Zt(ee,{children:[Q(te,{children:Q(ve,{startAdornment:Q(ra,{}),placeholder:"x.com/username",...c})}),Q(oe,{})]})})]}),Q(fe,{className:"courier-mb-4"}),Q("h4",{className:"courier-text-sm courier-font-medium courier-mb-3",children:"Footer actions"}),Q(re,{control:i.control,name:"isPreferences",render:({field:c})=>Zt(ee,{className:"courier-flex courier-flex-row courier-items-center courier-gap-2 courier-mb-4",children:[Q(te,{children:Q(On,{checked:c.value,onCheckedChange:u=>{i.setValue("isPreferences",u),c.onChange(u),l(u);let d={...i.getValues(),isPreferences:u};t(d)}})}),Q(Ir,{className:"!courier-m-0",children:"Manage Preferences"}),Q(oe,{})]})})]})})})},"SideBarComponent"),Zh=NT(LT);import{Fragment as FT,jsx as Pt,jsxs as Ai}from"react/jsx-runtime";var VT=BT(({hidePublish:e=!1,templateEditor:t,variables:r,variableValidation:o},n)=>{var C,S,P,k,w,T,A,N;let i=Jh($n),{publishBrand:s}=Bi(),l=Jh(Fn);HT(()=>{l(o)},[o,l]);let c=Pi(et),u=Pi(Ht),d=Pi(tt),p=Pi(pe),m=Pi(ae),f=Pi(Vn),[v,h]=qh(Dr),[y,x]=qh(gr),E=uc(()=>{s()},[s]),g=uc(({editor:R})=>{x(cc(R.getJSON()))},[x]),b=uc(R=>{h(B=>B?{...B,logo:R}:{...Dt,logo:R})},[h]),M=uc(()=>{i("template")},[i]);return Ai(FT,{children:[Pt("div",{className:"courier-z-30 courier-w-full courier-h-12",children:Ai(_h,{children:[Pt("div",{className:"courier-text-sm courier-font-medium",children:"Brand theme"}),Ai("div",{className:"courier-flex courier-gap-2 courier-items-center",children:[d!==null&&Pt(oa,{isLoading:!!p,isSaving:!!d,isError:!!m}),t&&Pt(ke,{variant:"outline",buttonSize:"small",onClick:M,disabled:u===!0||d===!0,children:"Back"}),!e&&p!==null&&Pt(ke,{variant:"primary",buttonSize:"small",disabled:!((S=(C=c==null?void 0:c.data)==null?void 0:C.tenant)!=null&&S.brand)||u===!0||d!==!1,onClick:E,children:u?"Publishing...":"Publish changes"})]})]})}),Ai("div",{className:"courier-flex courier-flex-1 courier-flex-row courier-overflow-hidden",children:[Pt("div",{className:"courier-flex courier-flex-col courier-flex-1",children:Ai("div",{className:"courier-editor-container",ref:n,children:[Pt("div",{className:"courier-mb-3 courier-max-w-2xl courier-self-center courier-w-full",children:"Header"}),Ai("div",{className:I("courier-editor-main courier-transition-all courier-duration-300 courier-ease-in-out courier-py-5 courier-px-9 courier-mb-8 courier-relative courier-overflow-hidden courier-flex courier-flex-col courier-items-start",(v==null?void 0:v.headerStyle)==="border"&&"courier-pt-6"),children:[(v==null?void 0:v.headerStyle)==="border"&&Pt("div",{className:"courier-absolute courier-top-0 courier-left-0 courier-right-0 courier-h-2",style:{backgroundColor:v.brandColor}}),v!=null&&v.logo?Pt("img",{src:v.logo,alt:"Brand logo",className:"courier-w-auto courier-max-w-36 courier-object-contain courier-cursor-default"}):Pt(zh,{onFileSelect:b})]}),Pt("div",{className:"courier-mb-3 courier-max-w-2xl courier-self-center courier-w-full",children:"Footer"}),Pt("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:Pt(Ra,{value:y!=null?y:(N=(A=(T=(w=(k=(P=c==null?void 0:c.data)==null?void 0:P.tenant)==null?void 0:k.brand)==null?void 0:w.settings)==null?void 0:T.email)==null?void 0:A.footer)==null?void 0:N.markdown,variables:r,facebookLink:v==null?void 0:v.facebookLink,linkedinLink:v==null?void 0:v.linkedinLink,instagramLink:v==null?void 0:v.instagramLink,mediumLink:v==null?void 0:v.mediumLink,xLink:v==null?void 0:v.xLink,onUpdate:g})})]})}),Pt("div",{className:"courier-editor-sidebar courier-opacity-100 courier-translate-x-0 courier-w-64 courier-flex-shrink-0",children:Pt("div",{className:"courier-p-4 courier-h-full",children:f&&Pt(Zh,{})})})]})]})}),Kh=DT(VT);import{jsx as eb}from"react/jsx-runtime";var UT=OT(({hidePublish:e=!1,autoSaveDebounce:t=500,autoSave:r=!0,theme:o,colorScheme:n,...i},s)=>{let l=Wm(pe),c=Qh(!0),u=Wm(ut),{getTemplate:d,saveBrand:p}=Bi(),[m,f]=Gh(et),v=Xh(gr),h=Wm(gr),[y,x]=Gh(Dr),E=Qh(!1),g=Xh(ae);Mi(()=>{var S,P;m&&u!==((P=(S=m==null?void 0:m.data)==null?void 0:S.tenant)==null?void 0:P.tenantId)&&(f(null),v(null),c.current=!1)},[m,u,f,v]);let b=Yh(async S=>{await p(S)},[p]),M=Yh(()=>{g(Xr("Error saving theme"))},[g]),{handleAutoSave:C}=za({onSave:b,enabled:l!==null&&r&&h!==null,debounceMs:t,onError:M});return Mi(()=>{!u||l||m&&l===!1||d()},[u,d,l,m]),Mi(()=>{h&&setTimeout(()=>{E.current=!0},500)},[h]),Mi(()=>{if(!E.current||!y)return;let S={colors:{primary:y==null?void 0:y.brandColor,secondary:y==null?void 0:y.textColor,tertiary:y==null?void 0:y.subtleColor},email:{header:{barColor:(y==null?void 0:y.headerStyle)==="border"?y==null?void 0:y.brandColor:"",logo:{href:y==null?void 0:y.link,image:y==null?void 0:y.logo}},footer:{markdown:h!=null?h:void 0,social:{facebook:{url:y==null?void 0:y.facebookLink},instagram:{url:y==null?void 0:y.instagramLink},linkedin:{url:y==null?void 0:y.linkedinLink},medium:{url:y==null?void 0:y.mediumLink},twitter:{url:y==null?void 0:y.xLink}}}}};C(S)},[y,h,C]),Mi(()=>{l||(c.current=!1)},[l]),Mi(()=>{var S,P,k,w,T,A,N,R,B,H,D,F,L,W,_,V,j,Z,J,K,U,q,ce,ue,Ee,Me,Ye,lt,Mt,ct,bt,Qe,yt,Be,$e,le,ye,Te;if(!y){let ne=(k=(P=(S=m==null?void 0:m.data)==null?void 0:S.tenant)==null?void 0:P.brand)==null?void 0:k.settings,Fe=(N=h==null?void 0:h.split(`
|
|
232
|
+
`))!=null?N:(A=(T=(w=ne==null?void 0:ne.email)==null?void 0:w.footer)==null?void 0:T.markdown)==null?void 0:A.split(`
|
|
233
|
+
`),Nt=Fe==null?void 0:Fe.find(St=>St.includes("{{urls.preferences}}"));x({brandColor:((R=ne==null?void 0:ne.colors)==null?void 0:R.primary)||Dt.brandColor,textColor:((B=ne==null?void 0:ne.colors)==null?void 0:B.secondary)||Dt.textColor,subtleColor:((H=ne==null?void 0:ne.colors)==null?void 0:H.tertiary)||Dt.subtleColor,headerStyle:(F=(D=ne==null?void 0:ne.email)==null?void 0:D.header)!=null&&F.barColor?"border":"plain",logo:((_=(W=(L=ne==null?void 0:ne.email)==null?void 0:L.header)==null?void 0:W.logo)==null?void 0:_.image)||Dt.logo,link:((Z=(j=(V=ne==null?void 0:ne.email)==null?void 0:V.header)==null?void 0:j.logo)==null?void 0:Z.href)||Dt.link,facebookLink:((q=(U=(K=(J=ne==null?void 0:ne.email)==null?void 0:J.footer)==null?void 0:K.social)==null?void 0:U.facebook)==null?void 0:q.url)||Dt.facebookLink,linkedinLink:((Me=(Ee=(ue=(ce=ne==null?void 0:ne.email)==null?void 0:ce.footer)==null?void 0:ue.social)==null?void 0:Ee.linkedin)==null?void 0:Me.url)||Dt.linkedinLink,instagramLink:((ct=(Mt=(lt=(Ye=ne==null?void 0:ne.email)==null?void 0:Ye.footer)==null?void 0:lt.social)==null?void 0:Mt.instagram)==null?void 0:ct.url)||Dt.instagramLink,mediumLink:((Be=(yt=(Qe=(bt=ne==null?void 0:ne.email)==null?void 0:bt.footer)==null?void 0:Qe.social)==null?void 0:yt.medium)==null?void 0:Be.url)||Dt.mediumLink,xLink:((Te=(ye=(le=($e=ne==null?void 0:ne.email)==null?void 0:$e.footer)==null?void 0:le.social)==null?void 0:ye.twitter)==null?void 0:Te.url)||Dt.xLink,isPreferences:!!Nt})}},[m,x,h,y]),eb(Wt,{theme:o,colorScheme:n,isLoading:!!(l&&c.current),children:eb(Kh,{ref:s,hidePublish:e,...i})})}),tb=WT(UT);import{jsx as Ln}from"react/jsx-runtime";var rb=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:["slack","email","sms","push","inbox"]},"resolveChannels"),$T=a(({theme:e,value:t=null,onChange:r,variables:o,disableVariablesAutocomplete:n=!1,variableValidation:i,hidePublish:s=!1,autoSave:l=!0,autoSaveDebounce:c=500,brandEditor:u=!1,brandProps:d,channels:p,routing:m=gc,colorScheme:f,...v})=>{let{store:h}=Ii(),y=Rn(Ka),x=Rn(Fn),E=Rn(Ya),g=Rn(Qa),b=bo(pe),M=bo(Ht),C=bo(ae),[S,P]=ja(et),k=bo(dr),w=bo(ut),[T,A]=ja(Jo),{getTemplate:N,saveTemplate:R,setTemplateError:B}=Di(),H=bo($n),D=Ni(!1),[F,L]=ja(se),[W,_]=ja(dt);At(()=>{typeof window!="undefined"&&window.__COURIER_CREATE_TEST__&&(window.__COURIER_CREATE_TEST__.templateEditorContent=F)},[F]);let V=Rn(gr),j=Rn(Dr),[Z,J]=ja(Co),K=Rn(pe),U=rb(m,p),[q,ce]=zT(U),ue=Ni(JSON.stringify(U)),Ee=Ni(!1);At(()=>{let le=rb(m,p),ye=JSON.stringify(le);ye!==ue.current&&(ce(le),ue.current=ye,le.length&&!le.includes(Z)&&J(le[0]))},[m,p,Z,J]),At(()=>{var ye;if(b||!(F!=null&&F.elements))return;let le=F.elements.filter(Te=>Te.type==="channel").map(Te=>Te.channel);if(!le.includes(Z)){let Te=(ye=m==null?void 0:m.channels)==null?void 0:ye.find(ne=>le.includes(ne));!Te&&le.length>0&&(Te=le[0]),Te&&J(Te)}},[F,Z,J,m==null?void 0:m.channels,b]),At(()=>{var ye;let le=(ye=S==null?void 0:S.data)==null?void 0:ye.tenant;k&&le&&!(le!=null&&le.notification)&&b===!1&&(q!=null&&q.length)&&J(q[0])},[k,S,b,q,J]);let Me=Ni(null);At(()=>{Me.current&&(Me.current.templateId!==k||Me.current.tenantId!==w)&&k&&w&&(_(!0),D.current=!1,P(null),L(null),V(null),j(null),A(null),J((q==null?void 0:q[0])||"email"),K(null)),k&&w&&(Me.current={templateId:k,tenantId:w})},[k,w,q,_,P,L,V,j,A,J,K]);let Ye=Ni(m);At(()=>{Ye.current=m,y(m)},[m,y]),At(()=>{x(i)},[i,x]),At(()=>{E(o||{})},[o,E]),At(()=>{g(n)},[n,g]);let lt=Um(async le=>{let ye=le==null?void 0:le._capturedTemplateId,Te=h.get(dr);if(ye&&ye!==Te)return;let{_capturedTemplateId:ne,...Fe}=le;await R({routing:Ye.current,content:Fe})},[R,h]),Mt=Um(()=>{B("Error saving template")},[B]),ct=bo(Go),bt=Um(()=>{Gm(ct)},[ct]),{handleAutoSave:Qe}=za({onSave:lt,debounceMs:c,enabled:b===!1&&l,onError:Mt,flushBeforeSave:bt});At(()=>{!k||!w||b||S&&b===!1||C||N({includeBrand:u})},[k,w,u,N,b,S,C]);let yt=Ni(null);At(()=>{if(!t||l&&b!==!1)return;let le=JSON.stringify(t);if(le!==yt.current&&JSON.stringify(be(We(F)))!==JSON.stringify(be(We(t)))){if(Ee.current=!0,yt.current=le,L(t),!l)K(!1);else{let ye={...t,_capturedTemplateId:k};Qe(ye)}Promise.resolve().then(()=>{Ee.current=!1})}},[l,t,F,L,K,Qe,k,b]),At(()=>{var Te,ne,Fe,Nt,St,Ar,Mr;if(b!==!1)return;let le=(Fe=(ne=(Te=S==null?void 0:S.data)==null?void 0:Te.tenant)==null?void 0:ne.notification)==null?void 0:Fe.notificationId;if(S&&le&&le!==k)return;let ye=t||((Mr=(Ar=(St=(Nt=S==null?void 0:S.data)==null?void 0:Nt.tenant)==null?void 0:St.notification)==null?void 0:Ar.data)==null?void 0:Mr.content);L(ye),setTimeout(()=>{_(!1)},100)},[S,L,b,_,k,t]),At(()=>{M===!0&&(D.current=!1)},[M]),At(()=>{!F||b!==!1||setTimeout(()=>{D.current=!0},1e3)},[F,Z,b]),At(()=>{D.current=!1},[Z]);let Be=bo(Oe),$e=bo(Km);if(At(()=>{let le=!!Be&&b===!1&&!W,ye=D.current&&!!F&&b===!1&&!W;if(!le&&!ye)return;let Te=Be||F;if(!Te||JSON.stringify(Te)===$e)return;let Fe={...Te,_capturedTemplateId:k};r&&!Ee.current&&(D.current=!1,r(F||Te)),Qe(Fe)},[F,Be,Qe,b,W,k,r,$e]),u&&H==="brand")return Ln(tb,{hidePublish:s,autoSave:l,templateEditor:!0,variables:o,disableVariablesAutocomplete:n,theme:e,colorScheme:f,...d});if(H==="template"&&Z==="email")return Ln(J5,{variables:o,disableVariablesAutocomplete:n,theme:e,colorScheme:f,isLoading:!!b,hidePublish:s,channels:q,brandEditor:u,routing:m,...v});if(H==="template"&&Z==="sms")return Ln(Ph,{colorScheme:f,variables:o,disableVariablesAutocomplete:n,theme:e,hidePublish:s,channels:q,routing:m,...v});if(H==="template"&&Z==="push")return Ln(lh,{variables:o,disableVariablesAutocomplete:n,theme:e,colorScheme:f,hidePublish:s,channels:q,routing:m,...v});if(H==="template"&&Z==="inbox")return Ln(rh,{variables:o,disableVariablesAutocomplete:n,theme:e,colorScheme:f,hidePublish:s,channels:q,routing:m,...v});if(H==="template"&&Z==="slack")return Ln(Ch,{theme:e,colorScheme:f,hidePublish:s,channels:q,routing:m,variables:o,disableVariablesAutocomplete:n,...v});if(H==="template"&&Z==="msteams")return Ln(Bh,{theme:e,colorScheme:f,hidePublish:s,channels:q,routing:m,variables:o,disableVariablesAutocomplete:n,...v})},"TemplateEditorComponent"),Coe=_T($T);var koe=jl,Poe=ac,Aoe=ec,Moe=Xl,Noe=sc,Soe=oc;export{tb as BrandEditor,Ra as BrandFooter,bb as BrandProvider,rn as CHANNELS,An as ChannelRootContainer,gc as DEFAULT_ROUTING,Mn as EditorSidebar,koe as EmailChannel,em as EmailEditor,Z5 as EmailEditorContainer,q5 as EmailEditorMain,rm as EmailSideBar,om as EmailSideBarItemDetails,Sc as ErrorBoundary,Moe as InboxChannel,am as InboxEditor,dm as InboxSideBar,Noe as MSTeamsChannel,Im as MSTeamsEditor,Lm as MSTeamsSideBar,Sd as MonacoCodeEditor,Qd as PreviewPanel,Aoe as PushChannel,gm as PushEditor,Poe as SMSChannel,Pm as SMSEditor,Soe as SlackChannel,vm as SlackEditor,xm as SlackSideBar,Em as SlackSideBarItemDetails,Coe as TemplateEditor,Nb as TemplateProvider,oa as TemplateStatus,wa as TextMenu,fr as ToggleGroup,Pa as VariableInput,zr as VariableTextarea,It as apiUrlAtom,_m as brandApplyAtom,I as cn,We as convertElementalToTiptap,Ga as convertLegacyError,be as convertTiptapToElemental,Xr as createCustomError,l6 as extractErrorMessage,Hm as getChannelDefaults,To as getFlattenedVariables,s6 as isRetryableError,pe as isTemplateLoadingAtom,Ht as isTemplatePublishingAtom,tt as isTemplateSavingAtom,Ka as routingAtom,et as templateDataAtom,ae as templateErrorAtom,dr as templateIdAtom,ut as tenantIdAtom,Rt as tokenAtom,za as useAutoSave,PB as useBlockConfig,Bi as useBrandActions,Vm as useChannels,lm as useDebouncedFlush,Hi as useImageUpload,vt as useNodeAttributes,Di as useTemplateActions,Ii as useTemplateStore,sI as useVariables};
|
|
234
234
|
//# sourceMappingURL=index.js.map
|