useblocks 1.1.24 → 1.1.26

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (33) hide show
  1. package/iframe/js/amp.DAh9j5NQ.js +1 -1
  2. package/iframe/js/iframe-eblock.js +1 -1
  3. package/iframe/js/iframe.js +1 -1
  4. package/iframe/js/rules.B4dVzZIU.js +1 -1
  5. package/package.json +1 -1
  6. package/singlepage_headless_plugin.html +1 -1
  7. package/static/core/{b639c36e.js → 35387f7a.js} +1 -1
  8. package/static/core/3e01e3a7.js +1 -0
  9. package/static/core/{b98ddc69.js → 4dc76046.js} +1 -1
  10. package/static/core/{d6d622d8.js → 52646cb0.js} +2 -2
  11. package/static/core/{5872b082.js → 65b90005.js} +37 -38
  12. package/static/core/{c547314f.js → 8708a613.js} +1 -1
  13. package/static/core/{c52a21ea.js → 8a1c4338.js} +1 -1
  14. package/static/core/a13fc482.js +33 -0
  15. package/static/core/{d172b1ec.js → b4510ae5.js} +1 -1
  16. package/static/core/{d241e8cb.js → d37f7419.js} +1 -1
  17. package/static/core/{4b2f0647.js → e6c16532.js} +1 -1
  18. package/static/core/{9721d8c0.js → eff08366.js} +1 -1
  19. package/static/core/{7eb3f045.js → f38723d0.js} +1 -1
  20. package/static/core/f4ec16b4.js +78 -0
  21. package/static/esm/3159c14c.js +1 -0
  22. package/two_step_headless_plugin.html +1 -1
  23. package/{useblocks-core.952eee2c.js → useblocks-core.46e32bed.js} +1 -1
  24. package/useblocks-esm.js +129 -11
  25. package/useblocks.js +148 -24
  26. package/webpack/index.cjs +21 -3
  27. package/webpack/index.js +21 -3
  28. package/static/core/39a1b0bf.js +0 -1
  29. package/static/core/5abb5c27.js +0 -78
  30. package/static/core/9b1a1232.js +0 -33
  31. package/static/esm/bead096a.js +0 -1
  32. /package/iframe/{iframe-eblock.952eee2c.html → iframe-eblock.46e32bed.html} +0 -0
  33. /package/iframe/{iframe.952eee2c.html → iframe.46e32bed.html} +0 -0
@@ -0,0 +1 @@
1
+ import{d as e,s as t}from"./ea7efce0.js";import"useblocks/runtime/react";function n(e){if(e instanceof DOMException&&e.name===`AbortError`)return e;let t=e===void 0?`The operation was aborted.`:typeof e==`string`?e:e instanceof Error?e.message:String(e);return new DOMException(t,`AbortError`)}function r(e){if(e?.aborted)throw n(e.reason)}function i(e,t){return t?(r(t),new Promise((r,i)=>{let a=()=>{o(),i(n(t.reason))},o=()=>{t.removeEventListener(`abort`,a)};t.addEventListener(`abort`,a),e.then(e=>{o(),r(e)},e=>{o(),i(e)})})):e}function a(e){return typeof CSS<`u`&&typeof CSS.escape==`function`?CSS.escape(e):e.replace(/([^a-zA-Z0-9_-])/g,`\\$1`)}function o(e,t=document){try{let n=t.querySelector(e);if(n)return n}catch{return null}let n=t.querySelectorAll(`*`);for(let t=0;t<n.length;t++){let r=n[t]?.shadowRoot;if(!r)continue;let i=o(e,r);if(i)return i}return null}function s(e,t=[]){let n=e.querySelectorAll(`*`);for(let e=0;e<n.length;e++){let r=n[e]?.shadowRoot;r&&(t.push(r),s(r,t))}return t}function c(e,t,r){if(e.isConnected)return e;let i=e.id?.trim();return i?l(`#${a(i)}`,t,r):Promise.reject(n(`Editor mount element was disconnected and has no id — pass a CSS selector or call init() again after the host remounts the container.`))}function l(t,i,a){if(r(a),t!==void 0){if(typeof t==`string`){let r=t,c=o(r);if(c)return c;let l=i.addDisposable(new e);return new Promise((e,t)=>{let i=e=>{l.dispose(),e()},c=()=>{i(()=>t(n(a?.reason)))};if(a?.aborted){c();return}a?.addEventListener(`abort`,c),l.addDispose(()=>a?.removeEventListener(`abort`,c));let u=document.body??document.documentElement;if(!u){i(()=>t(n(`Document is not ready to observe mount element`)));return}let d=new Set,f=new MutationObserver(()=>{let t=o(r);if(t){i(()=>e(t));return}m()}),p=e=>{d.has(e)||(d.add(e),f.observe(e,{attributes:!0,childList:!0,subtree:!0}))},m=()=>{let e=document.documentElement;if(e)for(let t of s(e))p(t)};p(u),m(),l.addDispose(()=>f.disconnect())})}return t instanceof Element?c(t,i,a):t}return t}var u=new Map;t(`ELEMENT_INSERT_HTML_PIPELINE`),t(`BLOCK_INSERT_HTML_PIPELINE`),t(`DomComponentRegistry`),t(`ComponentRegistry`);function d(e){return t(e)}var f;(function(e){e.BEFORE_SAVE_EMAIL=d(),e.ON_SAVEBUTTON_CLICK_ID=d(),e.ON_NEXTBUTTON_CLICK_ID=d(),e.ON_PREVIOUSBUTTON_CLICK_ID=d(),e.ON_MODEL_CHANGE=d(),e.WILL_EMAIL_INIT_ID=d(),e.ON_EMAIL_INIT_ID=d(),e.ON_BLOCK_INIT_ID=d(),e.ON_CONTENT_CHANGED_ID=d(),e.ON_PREHEADER_CHANGED_ID=d(),e.ON_SUBJECT_CHANGED_ID=d(),e.ON_EMAIL_CHANGED_ID=d(),e.ON_BLOCK_CHANGED_ID=d(),e.ON_CHUNKS_LOADED=d(),e.ON_SEND_TESTEMAIL_ID=d(),e.ON_SEND_LIVEPREVIEW_ID=d(),e.ON_SHARE_ID=d(),e.ON_SHOW_PREVIEW_ID=d(),e.ON_EMAIL_CLONE_ID=d(),e.ON_SEND_EMAIL_MODAL_ID=d(),e.ON_NOTIFICATION=d(),e.READ_LOCALE=d(),e.ON_TRANSLATE_ID=d(),e.ON_CODE_VALIDATE_ID=d(),e.UPLOAD_EVENT_ID=d(),e.PROXY_URL_EVENT_ID=d(),e.FILE_PROXY_EVENT_ID=d(),e.ON_LIMIT_ID=d(),e.ON_BROWSER_EXTENSION_DETECTED_ID=d(),e.ON_BROWSER_TRANSLATE_DETECTED_ID=d()})(f||={}),t(),t(),t(`InitPipelineContext`),t(),t(),t(),t(),t(),t(),t(`PluginCollection`),d(`APP_LOAD_EVENT`),d(`CONFIG_CHANGED_EVENT`);export{r as a,i,l as n,n as r,u as t};
@@ -3,7 +3,7 @@
3
3
  <head>
4
4
  <meta charset="utf-8" />
5
5
  <title>Two-step flow: design → subject/preheader (headless)</title>
6
- <script id="plugin-script" type="text/javascript" src="useblocks.js?952eee2c"></script>
6
+ <script id="plugin-script" type="text/javascript" src="useblocks.js?46e32bed"></script>
7
7
  <style>
8
8
  body {
9
9
  margin: 0;
@@ -1 +1 @@
1
- __useblocks__.define(`core`,[`require`,`exports`,`module`,`static/core/4dc58c63.js`,`static/core/9b1a1232.js`,`static/core/4b2f0647.js`,`static/core/5abb5c27.js`],function(e,t,n){Object.defineProperties(t,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}}),e("./static/core/4dc58c63.js");let r=e("./static/core/9b1a1232.js"),i=e("./static/core/5abb5c27.js"),a=e("./static/core/4b2f0647.js");function o(e){return async()=>(await e.app.app_init_create({})).data}function s(e,t,n){e.inject(r.ro,void 0);let i;e.injectFactory(r.ro,async(e,r)=>i||(i=(async()=>{let e=r?await r:void 0;return t({baseUrl:n.baseUrl,user:n.user,project:n.project,prevApp:e})})(),i),!0)}var c=a.A(e=>{let t,n,i,a,c,l=!1;function u(e){return String(e||``).trim()||void 0}return{setOptions(d){let f=!!e.getInstance(r.do),p=d.hasOwnProperty(`baseUrl`)?u(d.baseUrl):n,m=p?r.Wa(p):void 0;if(d.hasOwnProperty(`baseUrl`)){let n=e.getInstance(r.Ha);t!==m&&n?.setOptions(m?{baseUrl:m}:{})}let h=i!==d.appInit,g=!r.za(a,d.user),_=c!==d.project,v=t!==m;if(i=d.appInit,a=d.user,c=d.project,t=m,n=p,f||l&&!h&&!g&&!_&&!v)return;let y=e.getInstance(r.eo);s(e,i||o(y),{baseUrl:n,user:d.user,project:d.project}),l=!0}}}),l=r.Ro(),u=r.Ro(),d=a.A(e=>({setOptions(t){let n=i.Nn();e.addService(r.Va,{execute:n.decorate(async n=>{if(!t.jwtAuth)return;let i=e.getInstance(l);if(!e.getInstance(u)){if(!i)try{let n=e.getInstance(r.Ha)?.getOptions()?.baseUrl||``,a=await fetch(`${n}/jwt-auth/token`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(t.jwtAuth)});if(!a.ok)throw Error(`JWT auth failed: ${a.status}`);i=(await a.json()).token,e.inject(l,i)}catch{throw e.inject(u,r.ra),Error(r.ra)}i&&n.headers.append(`authorization`,`Bearer ${i}`)}})})}})),f=a.A(e=>{let t,n,a;return{async setOptions(o){let s=a!==o.getAuthToken,c=!r.za(t,o.user),l=n!==o.project;if(a=o.getAuthToken,t=o.user,n=o.project,!(!e.getInstance(r.do)||!o.getAuthToken)&&!(!s&&!c&&!l))try{let t=await o.getAuthToken(o.user,o.project);e.inject(r.fo,Promise.resolve(t||``));let n=i.B(t);if(!n)return;e.inject(r.po,n);let a=e.getInstance(r.ro),s=a?await a.catch(()=>void 0):void 0;e.inject(r.ro,Promise.resolve(i.z(n,s)))}catch{}}}}),p=a.A(e=>{let t=e.getInstance(r.oo),n=new r.Mo,a=i.R(n.event);t.addDispose(()=>{let t=e.getInstance(r.co);n.fire(t)});let o=t.addDisposable(new i.L(a));return t.addDisposable(n),{setOptions({handleDestroy:e}){o.setListener(e)},instance:{handleDestroy:a,destroy:()=>{if(!t.isDisposed())try{t.dispose()}catch{}}}}}),m=a.A(e=>{let t=e.getInstance(r.oo),n=new i.P;e.inject(r.so,n);let a;return t.addDispose(()=>{n.abort()}),{setOptions(e){e.signal!==void 0&&(a=e.signal),n.configure({replaceSession:!0,...e.timeouts===void 0?{}:{timeouts:e.timeouts},...a===void 0?{}:{signal:a}})},dispose(){}}}),h=a.A(e=>{let t=e.getInstance(r.oo),n=i.R(r._o(e,r.io)),a=t.addDisposable(new i.L(n));return{setOptions({handleLoad:e}){a.setListener(e)},instance:{handleLoad:n},dispose:()=>t.dispose()}}),g=a.A(e=>{let t=e.getInstance(r.oo),n=t.addDisposable(new r.jo),a=t.addDisposable(new r.jo),o=r.go(e,r.ao),s=i.R(n.event),c=i.R(a.event),l=i.R(o.event),u=t.addDisposable(new i.L(s)),d=t.addDisposable(new i.L(c)),f=t.addDisposable(new i.L(l));return{instance:{handleSetOptions:s,handleOptionsChanged:c,handleConfigChanged:l},async setOptions(e){u.setListener(e.handleSetOptions),d.setListener(e.handleOptionsChanged),f.setListener(e.handleConfigChanged),await n.fire(e),await a.fire(e)},dispose(){}}}),_=1e4;function v(e,t,n,r={}){let i=Object.assign({},e);for(let[e,a]of Object.entries(t))if(a!==void 0)if(n.includes(e)&&typeof a==`object`&&a){let t=i[e],n=r[e]??{};i[e]=Object.assign({},typeof t==`object`&&t?t:n,a)}else i[e]=a;return i}var y={border:{all:null,top:null,right:null,bottom:null,left:null},borderRadius:{all:5,topLeft:null,topRight:null,bottomRight:null,bottomLeft:null},borderRadiusCards:{all:10,topLeft:null,topRight:null,bottomRight:null,bottomLeft:null},padding:{all:null,top:null,right:null,bottom:null,left:null}},b={fontFamily:[`Safe Fonts`,`-apple-system, 'Segoe UI', 'Helvetica Neue', Helvetica, Roboto, Arial, sans-serif`],fontSize:16,fontSizeDim:`px`,lineHeight:21,lineHeightDim:`px`,color:`#5a5a5a`,contrastColor:`#FFFFFF`,textAlign:`left`,paddingBottom:10,paddingBottomDim:`px`},x={fontFamily:[`Safe Fonts`,`-apple-system, 'Segoe UI', 'Helvetica Neue', Helvetica, Roboto, Arial, sans-serif`],fontSize:24,fontSizeDim:`px`,lineHeight:32,lineHeightDim:`px`,color:`#333333`,contrastColor:`#FFFFFF`,textAlign:`left`,paddingTop:20,paddingTopDim:`px`,paddingBottom:20,paddingBottomDim:`px`,letterSpacing:0,letterSpacingDim:`px`,bold:!0,italic:!1},S={color:`#1C52DC`,contrastColor:`#FFFFFF`,underline:!0},C={fontFamily:[`Safe Fonts`,`-apple-system, 'Segoe UI', 'Helvetica Neue', Helvetica, Roboto, Arial, sans-serif`],fontSize:16,fontSizeDim:`px`,letterSpacing:0,letterSpacingDim:`px`,color:`#FFFFFF`,contrastColor:`#1C52DC`,bold:!1,italic:!1,backgroundColor:`#1C52DC`,contrastBackgroundColor:`#FFFFFF`,marginTop:10,marginTopDim:`px`,marginBottom:10,marginBottomDim:`px`,border:y.border,borderRadius:y.borderRadius,textAlign:`center`,padding:y.padding},w={backgroundColor:`#FFFFFF`,contrastBackgroundColor:`#1C52DC`,padding:y.padding},T={contrastBackgroundColor:`#1C52DC`,contrastTextColor:`#FFFFFF`,baseBackgroundColor:`#F8F8F8`,baseTextColor:`#333333`,border:y.border,borderRadius:y.borderRadiusCards};function E(e){return{...b,...e}}function D(e){return{...x,...e,bold:e?.bold??x.bold,italic:e?.italic??x.italic}}function O(e){return{...S,...e,underline:e?.underline??S.underline}}function k(e){return{...C,...e,bold:e?.bold??C.bold,italic:e?.italic??C.italic,border:{...C.border,...e?.border??{}},borderRadius:{...C.borderRadius,...e?.borderRadius??{}},padding:{...C.padding,...e?.padding??{}}}}function A(e){return{...w,...e,padding:{...w.padding,...e?.padding??{}}}}function j(e){return{...T,...e,border:{...T.border,...e?.border??{}},borderRadius:{...T.borderRadius,...e?.borderRadius??{}}}}var M=class{_editor;_layoutSettingsChanged=new r.Mo;_contentStylesChanged=new r.Mo;_messageSubscription;_messageSubscriptionPromise;_prevLayoutSnapshot;_prevContentSnapshot;constructor(e){this._editor=e}onChangeEmailLayoutSettings(e){let t=this._layoutSettingsChanged.event(e);return this._ensureMessageSubscription(),{dispose:()=>{t.dispose(),this._disposeMessageSubscriptionIfUnused()}}}onChangeEmailContentStyles(e){let t=this._contentStylesChanged.event(e);return this._ensureMessageSubscription(),{dispose:()=>{t.dispose(),this._disposeMessageSubscriptionIfUnused()}}}_disposeMessageSubscriptionIfUnused(){this._layoutSettingsChanged.hasListeners()||this._contentStylesChanged.hasListeners()||(this._messageSubscription?.dispose(),this._messageSubscription=void 0)}_mapLayoutSettings(e={}){return{backgroundColor:e.backgroundColor||``,backgroundImage:(e.backgroundImage||[]).map(e=>({type:`url`,value:e?.value||``})),backgroundPositionX:e.backgroundPositionX||``,backgroundPositionY:e.backgroundPositionY||``,backgroundRepeat:e.backgroundRepeat||``,backgroundSize:e.backgroundSize||``,backgroundColorContent:e.backgroundColorContent||``,textStrong:e.textStrong||!1,textItalic:e.textItalic||!1,textUnderline:e.textUnderline||!1,width:e.width,responsive:e.responsive}}_parseCommonStyles(e){let t={...r.La};try{e&&e!==`{}`&&(t=JSON.parse(e))}catch{}return t}_mapCommonStylesToContentStyles(e){return{text:E(e.text),headings:D(e.headings),links:O(e.links),buttons:k(e.buttons),block:A(e.block),cards:j(e.cards)}}_getCurrentLayoutSettings(e){return this._mapLayoutSettings(r.fr(e.getState()))}_getCurrentContentStyles(e){return this._mapCommonStylesToContentStyles(this._parseCommonStyles(r.cr(e.getState())?.common_styles))}_getLayoutSnapshot(e){return JSON.stringify(e)}_getContentSnapshot(e){return JSON.stringify(e)}async _ensureMessageSubscription(){if(!this._messageSubscription){if(this._messageSubscriptionPromise)return this._messageSubscriptionPromise;this._messageSubscriptionPromise=(async()=>{let e=await this._editor.container.getInstanceAsync(r.mo);if(this._messageSubscription)return;let t=this._editor.container.getOrCreateInstance(r.Co,()=>new r.ko),n=this._getCurrentLayoutSettings(e),i=this._getCurrentContentStyles(e);this._prevLayoutSnapshot=this._getLayoutSnapshot(n),this._prevContentSnapshot=this._getContentSnapshot(i),this._messageSubscription=t.addListener(e=>{let t=e?.data?.operation;if(t===r.aa.APPLICATION_EMAIL_SETTINGS_SET){let t=this._mapLayoutSettings(e.data?.settings),n=this._getLayoutSnapshot(t);n!==this._prevLayoutSnapshot&&(this._prevLayoutSnapshot=n,this._layoutSettingsChanged.fire(t));return}if(t!==r.aa.APPLICATION_COMMON_STYLES_UPDATE)return;let n=this._mapCommonStylesToContentStyles(e.data?.settings?.commonStyles??{...r.La}),i=this._getContentSnapshot(n);i!==this._prevContentSnapshot&&(this._prevContentSnapshot=i,this._contentStylesChanged.fire(n))})})();try{await this._messageSubscriptionPromise}finally{this._messageSubscriptionPromise=void 0}}}async getEmailLayoutSettings(){let e=await this._editor.container.getInstanceAsync(r.mo);return await this._waitForEmailSettingsFromIframe(e),this._getCurrentLayoutSettings(e)}async setEmailLayoutSettings(e){let t=await this._editor.container.getInstanceAsync(r.mo);await this._waitForEmailSettingsFromIframe(t);let n={...r.fr(t.getState()),...e};t.dispatch(r.Or(n));let i=this._mapLayoutSettings(n);this._prevLayoutSnapshot=this._getLayoutSnapshot(i),this._layoutSettingsChanged.fire(i)}async _waitForEmailSettingsFromIframe(e,t=_){let n=e.getState(),i=r.cr(n),a=r.fr(n);if(i?.is_inited&&a&&Object.keys(a).length>0&&(a.backgroundColor||a.backgroundImage?.[0]?.value||a.width?.value||a.responsive!==void 0)||i?.is_inited)return;let o=this._editor.container,s=r._o(o,r.ho.ON_EMAIL_INIT_ID);return new Promise(e=>{let n=!1,r,i=()=>{r&&=(clearTimeout(r),void 0)},a=s(()=>{n||(n=!0,i(),a.dispose(),e())});r=setTimeout(()=>{n||(n=!0,a.dispose(),e())},t)})}async getEmailContentStyles(){let e=await this._editor.container.getInstanceAsync(r.mo);return this._getCurrentContentStyles(e)}async setEmailContentStyles(e){let t=await this._editor.container.getInstanceAsync(r.mo),n=r.cr(t.getState());if(!n)return;let i=this._parseCommonStyles(n.common_styles);e.text!==void 0&&(i.text={...i.text||{},...e.text}),e.headings!==void 0&&(i.headings={...i.headings||{},...e.headings}),e.links!==void 0&&(i.links={...i.links||{},...e.links}),e.buttons!==void 0&&(i.buttons=v(i.buttons||{},e.buttons,[`border`,`borderRadius`,`padding`],{border:y.border,borderRadius:y.borderRadius,padding:y.padding})),e.block!==void 0&&(i.block=v(i.block||{},e.block,[`padding`],{padding:y.padding})),e.cards!==void 0&&(i.cards=v(i.cards||{},e.cards,[`border`,`borderRadius`],{border:y.border,borderRadius:y.borderRadiusCards})),t.dispatch(r.Sr({...n,common_styles:JSON.stringify(i)}));let a=this._mapCommonStylesToContentStyles(i);this._prevContentSnapshot=this._getContentSnapshot(a),this._contentStylesChanged.fire(a)}},N={...r.vo,EmailSettingsApi:M};({...r.vo});var P={...N};function F(){i.j.addAll(P)}var I=[m,p,h,g,d,f,a.E,c];async function L(){return(await Promise.resolve().then(()=>e("./static/core/5872b082.js"))).default}var R=e=>{let t=null,n=!1;return{instance:{},async setOptions(i){if(!t&&!n){t=(await L())(e);let n=await e.getInstanceAsync(r.co);Object.assign(n,t.instance||{}),F()}t&&await t.setOptions(i)},dispose(){t?.dispose(),n=!0}}},z=a.k([...I,R]),B=class{_storage=Object.create(null);get(e){let t=this._storage[e];return t&&(!t.expires||t.expires<Date.now())?t.value:``}set(e,t,n){this._storage[e]={value:t,expires:n.expires?n.expires*1e3+Date.now():void 0}}remove(e){delete this._storage[e]}},V=100,H={events:[],container:null,collection:null};function U(e,t){H.container=e,H.collection=t,t.onLifecycle(e=>{H.events.push({...e,timestamp:Date.now()}),H.events.length>V&&(H.events=H.events.slice(-100))}),typeof window<`u`&&(window.__EMAILMAKER_DEVTOOLS__=W())}function W(){return{enabled:!0,plugins(){return H.collection?H.collection.getStatus().map(e=>({...e,hasInit:!0,hasDispose:!0,hasAfterInit:!0})):[]},registry(){if(!H.container)return[];try{return H.container.getInstance(i.M).keys().map(String)}catch{return[]}},events(e=50){return H.events.slice(-e)},clearEvents(){H.events=[]},getPlugin(e){if(H.collection)try{return H.collection.use(e)}catch{return}}}}var G=a.k([z]);async function K(e){i.In(e.signal);let t=new r.Ho;async function n(){let n=r.Lo.createChild();if(e.standaloneKey){n.inject(r.do,e.standaloneKey);let i=r._o(n,r.ho.FILE_PROXY_EVENT_ID);t.addDisposable(i(async({url:e})=>(await fetch(e)).blob(),Number.MIN_VALUE))}n.inject(r.oo,t),n.inject(r.$a,new B),r.Ga(n);let a=G(n),o={...a.instance,container:n,async reset(e){return i.In(e.signal),await a.setOptions(e),o}};n.inject(r.co,o);try{if(await a.setOptions(e),i.In(e.signal),e.devTools)try{let e=n.getInstance(r.uo);e&&U(n,e)}catch{}return i.In(e.signal),r.go(n,r.io).fire(o),o}catch(e){throw t.dispose(),e}}try{return await i.Fn(n(),e.signal)}catch(e){throw t.isDisposed()||t.dispose(),e}}async function q(e){let t=new Map;typeof e==`object`&&(e=e.code);let n=await i.a(e,async e=>{await i.g(e.document,e=>i.m.getEscapedText(e)===e?i.y(e):e,t);for(let t of e.document.querySelectorAll(`.em-amp-show-disabled`))t.remove();e.handleRender(async({contentDocument:e,managedNodeController:t})=>{await i.n(e,{mappedTags:{script:`___script`},commit:()=>t.commit()})})},[800]),r=await i.a(e,async e=>{await i.g(e.document,e=>i.m.getEscapedText(e)===e?i.y(e):e,t);for(let t of e.document.querySelectorAll(`.em-amp-show-only`))t.remove();await i.t(e.document,{mappedTags:{script:`___script`}})},[800]);return{code:e,html:r,ampHtml:n}}t.init=K,t.parseAMP=q,t.version=`1.1.24`});
1
+ __useblocks__.define(`core`,[`require`,`exports`,`module`,`static/core/4dc58c63.js`,`static/core/a13fc482.js`,`static/core/e6c16532.js`,`static/core/f4ec16b4.js`],function(e,t,n){Object.defineProperties(t,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}}),e("./static/core/4dc58c63.js");let r=e("./static/core/a13fc482.js"),i=e("./static/core/f4ec16b4.js"),a=e("./static/core/e6c16532.js");function o(e){return async()=>(await e.app.app_init_create({})).data}function s(e,t,n){e.inject(r.ro,void 0);let i;e.injectFactory(r.ro,async(e,r)=>i||(i=(async()=>{let e=r?await r:void 0;return t({baseUrl:n.baseUrl,user:n.user,project:n.project,prevApp:e})})(),i),!0)}var c=a.A(e=>{let t,n,i,a,c,l=!1;function u(e){return String(e||``).trim()||void 0}return{setOptions(d){let f=!!e.getInstance(r.do),p=d.hasOwnProperty(`baseUrl`)?u(d.baseUrl):n,m=p?r.Wa(p):void 0;if(d.hasOwnProperty(`baseUrl`)){let n=e.getInstance(r.Ha);t!==m&&n?.setOptions(m?{baseUrl:m}:{})}let h=i!==d.appInit,g=!r.za(a,d.user),_=c!==d.project,v=t!==m;if(i=d.appInit,a=d.user,c=d.project,t=m,n=p,f||l&&!h&&!g&&!_&&!v)return;let y=e.getInstance(r.eo);s(e,i||o(y),{baseUrl:n,user:d.user,project:d.project}),l=!0}}}),l=r.Ro(),u=r.Ro(),d=a.A(e=>({setOptions(t){let n=i.Nn();e.addService(r.Va,{execute:n.decorate(async n=>{if(!t.jwtAuth)return;let i=e.getInstance(l);if(!e.getInstance(u)){if(!i)try{let n=e.getInstance(r.Ha)?.getOptions()?.baseUrl||``,a=await fetch(`${n}/jwt-auth/token`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(t.jwtAuth)});if(!a.ok)throw Error(`JWT auth failed: ${a.status}`);i=(await a.json()).token,e.inject(l,i)}catch{throw e.inject(u,r.ra),Error(r.ra)}i&&n.headers.append(`authorization`,`Bearer ${i}`)}})})}})),f=a.A(e=>{let t,n,a;return{async setOptions(o){let s=a!==o.getAuthToken,c=!r.za(t,o.user),l=n!==o.project;if(a=o.getAuthToken,t=o.user,n=o.project,!(!e.getInstance(r.do)||!o.getAuthToken)&&!(!s&&!c&&!l))try{let t=await o.getAuthToken(o.user,o.project);e.inject(r.fo,Promise.resolve(t||``));let n=i.B(t);if(!n)return;e.inject(r.po,n);let a=e.getInstance(r.ro),s=a?await a.catch(()=>void 0):void 0;e.inject(r.ro,Promise.resolve(i.z(n,s)))}catch{}}}}),p=a.A(e=>{let t=e.getInstance(r.oo),n=new r.Mo,a=i.R(n.event);t.addDispose(()=>{let t=e.getInstance(r.co);n.fire(t)});let o=t.addDisposable(new i.L(a));return t.addDisposable(n),{setOptions({handleDestroy:e}){o.setListener(e)},instance:{handleDestroy:a,destroy:()=>{if(!t.isDisposed())try{t.dispose()}catch{}}}}}),m=a.A(e=>{let t=e.getInstance(r.oo),n=new i.P;e.inject(r.so,n);let a;return t.addDispose(()=>{n.abort()}),{setOptions(e){e.signal!==void 0&&(a=e.signal),n.configure({replaceSession:!0,...e.timeouts===void 0?{}:{timeouts:e.timeouts},...a===void 0?{}:{signal:a}})},dispose(){}}}),h=a.A(e=>{let t=e.getInstance(r.oo),n=i.R(r._o(e,r.io)),a=t.addDisposable(new i.L(n));return{setOptions({handleLoad:e}){a.setListener(e)},instance:{handleLoad:n},dispose:()=>t.dispose()}}),g=a.A(e=>{let t=e.getInstance(r.oo),n=t.addDisposable(new r.jo),a=t.addDisposable(new r.jo),o=r.go(e,r.ao),s=i.R(n.event),c=i.R(a.event),l=i.R(o.event),u=t.addDisposable(new i.L(s)),d=t.addDisposable(new i.L(c)),f=t.addDisposable(new i.L(l));return{instance:{handleSetOptions:s,handleOptionsChanged:c,handleConfigChanged:l},async setOptions(e){u.setListener(e.handleSetOptions),d.setListener(e.handleOptionsChanged),f.setListener(e.handleConfigChanged),await n.fire(e),await a.fire(e)},dispose(){}}}),_=1e4;function v(e,t,n,r={}){let i=Object.assign({},e);for(let[e,a]of Object.entries(t))if(a!==void 0)if(n.includes(e)&&typeof a==`object`&&a){let t=i[e],n=r[e]??{};i[e]=Object.assign({},typeof t==`object`&&t?t:n,a)}else i[e]=a;return i}var y={border:{all:null,top:null,right:null,bottom:null,left:null},borderRadius:{all:5,topLeft:null,topRight:null,bottomRight:null,bottomLeft:null},borderRadiusCards:{all:10,topLeft:null,topRight:null,bottomRight:null,bottomLeft:null},padding:{all:null,top:null,right:null,bottom:null,left:null}},b={fontFamily:[`Safe Fonts`,`-apple-system, 'Segoe UI', 'Helvetica Neue', Helvetica, Roboto, Arial, sans-serif`],fontSize:16,fontSizeDim:`px`,lineHeight:21,lineHeightDim:`px`,color:`#5a5a5a`,contrastColor:`#FFFFFF`,textAlign:`left`,paddingBottom:10,paddingBottomDim:`px`},x={fontFamily:[`Safe Fonts`,`-apple-system, 'Segoe UI', 'Helvetica Neue', Helvetica, Roboto, Arial, sans-serif`],fontSize:24,fontSizeDim:`px`,lineHeight:32,lineHeightDim:`px`,color:`#333333`,contrastColor:`#FFFFFF`,textAlign:`left`,paddingTop:20,paddingTopDim:`px`,paddingBottom:20,paddingBottomDim:`px`,letterSpacing:0,letterSpacingDim:`px`,bold:!0,italic:!1},S={color:`#1C52DC`,contrastColor:`#FFFFFF`,underline:!0},C={fontFamily:[`Safe Fonts`,`-apple-system, 'Segoe UI', 'Helvetica Neue', Helvetica, Roboto, Arial, sans-serif`],fontSize:16,fontSizeDim:`px`,letterSpacing:0,letterSpacingDim:`px`,color:`#FFFFFF`,contrastColor:`#1C52DC`,bold:!1,italic:!1,backgroundColor:`#1C52DC`,contrastBackgroundColor:`#FFFFFF`,marginTop:10,marginTopDim:`px`,marginBottom:10,marginBottomDim:`px`,border:y.border,borderRadius:y.borderRadius,textAlign:`center`,padding:y.padding},w={backgroundColor:`#FFFFFF`,contrastBackgroundColor:`#1C52DC`,padding:y.padding},T={contrastBackgroundColor:`#1C52DC`,contrastTextColor:`#FFFFFF`,baseBackgroundColor:`#F8F8F8`,baseTextColor:`#333333`,border:y.border,borderRadius:y.borderRadiusCards};function E(e){return{...b,...e}}function D(e){return{...x,...e,bold:e?.bold??x.bold,italic:e?.italic??x.italic}}function O(e){return{...S,...e,underline:e?.underline??S.underline}}function k(e){return{...C,...e,bold:e?.bold??C.bold,italic:e?.italic??C.italic,border:{...C.border,...e?.border??{}},borderRadius:{...C.borderRadius,...e?.borderRadius??{}},padding:{...C.padding,...e?.padding??{}}}}function A(e){return{...w,...e,padding:{...w.padding,...e?.padding??{}}}}function j(e){return{...T,...e,border:{...T.border,...e?.border??{}},borderRadius:{...T.borderRadius,...e?.borderRadius??{}}}}var M=class{_editor;_layoutSettingsChanged=new r.Mo;_contentStylesChanged=new r.Mo;_messageSubscription;_messageSubscriptionPromise;_prevLayoutSnapshot;_prevContentSnapshot;constructor(e){this._editor=e}onChangeEmailLayoutSettings(e){let t=this._layoutSettingsChanged.event(e);return this._ensureMessageSubscription(),{dispose:()=>{t.dispose(),this._disposeMessageSubscriptionIfUnused()}}}onChangeEmailContentStyles(e){let t=this._contentStylesChanged.event(e);return this._ensureMessageSubscription(),{dispose:()=>{t.dispose(),this._disposeMessageSubscriptionIfUnused()}}}_disposeMessageSubscriptionIfUnused(){this._layoutSettingsChanged.hasListeners()||this._contentStylesChanged.hasListeners()||(this._messageSubscription?.dispose(),this._messageSubscription=void 0)}_mapLayoutSettings(e={}){return{backgroundColor:e.backgroundColor||``,backgroundImage:(e.backgroundImage||[]).map(e=>({type:`url`,value:e?.value||``})),backgroundPositionX:e.backgroundPositionX||``,backgroundPositionY:e.backgroundPositionY||``,backgroundRepeat:e.backgroundRepeat||``,backgroundSize:e.backgroundSize||``,backgroundColorContent:e.backgroundColorContent||``,textStrong:e.textStrong||!1,textItalic:e.textItalic||!1,textUnderline:e.textUnderline||!1,width:e.width,responsive:e.responsive}}_parseCommonStyles(e){let t={...r.La};try{e&&e!==`{}`&&(t=JSON.parse(e))}catch{}return t}_mapCommonStylesToContentStyles(e){return{text:E(e.text),headings:D(e.headings),links:O(e.links),buttons:k(e.buttons),block:A(e.block),cards:j(e.cards)}}_getCurrentLayoutSettings(e){return this._mapLayoutSettings(r.fr(e.getState()))}_getCurrentContentStyles(e){return this._mapCommonStylesToContentStyles(this._parseCommonStyles(r.cr(e.getState())?.common_styles))}_getLayoutSnapshot(e){return JSON.stringify(e)}_getContentSnapshot(e){return JSON.stringify(e)}async _ensureMessageSubscription(){if(!this._messageSubscription){if(this._messageSubscriptionPromise)return this._messageSubscriptionPromise;this._messageSubscriptionPromise=(async()=>{let e=await this._editor.container.getInstanceAsync(r.mo);if(this._messageSubscription)return;let t=this._editor.container.getOrCreateInstance(r.Co,()=>new r.ko),n=this._getCurrentLayoutSettings(e),i=this._getCurrentContentStyles(e);this._prevLayoutSnapshot=this._getLayoutSnapshot(n),this._prevContentSnapshot=this._getContentSnapshot(i),this._messageSubscription=t.addListener(e=>{let t=e?.data?.operation;if(t===r.aa.APPLICATION_EMAIL_SETTINGS_SET){let t=this._mapLayoutSettings(e.data?.settings),n=this._getLayoutSnapshot(t);n!==this._prevLayoutSnapshot&&(this._prevLayoutSnapshot=n,this._layoutSettingsChanged.fire(t));return}if(t!==r.aa.APPLICATION_COMMON_STYLES_UPDATE)return;let n=this._mapCommonStylesToContentStyles(e.data?.settings?.commonStyles??{...r.La}),i=this._getContentSnapshot(n);i!==this._prevContentSnapshot&&(this._prevContentSnapshot=i,this._contentStylesChanged.fire(n))})})();try{await this._messageSubscriptionPromise}finally{this._messageSubscriptionPromise=void 0}}}async getEmailLayoutSettings(){let e=await this._editor.container.getInstanceAsync(r.mo);return await this._waitForEmailSettingsFromIframe(e),this._getCurrentLayoutSettings(e)}async setEmailLayoutSettings(e){let t=await this._editor.container.getInstanceAsync(r.mo);await this._waitForEmailSettingsFromIframe(t);let n={...r.fr(t.getState()),...e};t.dispatch(r.Or(n));let i=this._mapLayoutSettings(n);this._prevLayoutSnapshot=this._getLayoutSnapshot(i),this._layoutSettingsChanged.fire(i)}async _waitForEmailSettingsFromIframe(e,t=_){let n=e.getState(),i=r.cr(n),a=r.fr(n);if(i?.is_inited&&a&&Object.keys(a).length>0&&(a.backgroundColor||a.backgroundImage?.[0]?.value||a.width?.value||a.responsive!==void 0)||i?.is_inited)return;let o=this._editor.container,s=r._o(o,r.ho.ON_EMAIL_INIT_ID);return new Promise(e=>{let n=!1,r,i=()=>{r&&=(clearTimeout(r),void 0)},a=s(()=>{n||(n=!0,i(),a.dispose(),e())});r=setTimeout(()=>{n||(n=!0,a.dispose(),e())},t)})}async getEmailContentStyles(){let e=await this._editor.container.getInstanceAsync(r.mo);return this._getCurrentContentStyles(e)}async setEmailContentStyles(e){let t=await this._editor.container.getInstanceAsync(r.mo),n=r.cr(t.getState());if(!n)return;let i=this._parseCommonStyles(n.common_styles);e.text!==void 0&&(i.text={...i.text||{},...e.text}),e.headings!==void 0&&(i.headings={...i.headings||{},...e.headings}),e.links!==void 0&&(i.links={...i.links||{},...e.links}),e.buttons!==void 0&&(i.buttons=v(i.buttons||{},e.buttons,[`border`,`borderRadius`,`padding`],{border:y.border,borderRadius:y.borderRadius,padding:y.padding})),e.block!==void 0&&(i.block=v(i.block||{},e.block,[`padding`],{padding:y.padding})),e.cards!==void 0&&(i.cards=v(i.cards||{},e.cards,[`border`,`borderRadius`],{border:y.border,borderRadius:y.borderRadiusCards})),t.dispatch(r.Sr({...n,common_styles:JSON.stringify(i)}));let a=this._mapCommonStylesToContentStyles(i);this._prevContentSnapshot=this._getContentSnapshot(a),this._contentStylesChanged.fire(a)}},N={...r.vo,EmailSettingsApi:M};({...r.vo});var P={...N};function F(){i.j.addAll(P)}var I=[m,p,h,g,d,f,a.E,c];async function L(){return(await Promise.resolve().then(()=>e("./static/core/65b90005.js"))).default}var R=e=>{let t=null,n=!1;return{instance:{},async setOptions(i){if(!t&&!n){t=(await L())(e);let n=await e.getInstanceAsync(r.co);Object.assign(n,t.instance||{}),F()}t&&await t.setOptions(i)},dispose(){t?.dispose(),n=!0}}},z=a.k([...I,R]),B=class{_storage=Object.create(null);get(e){let t=this._storage[e];return t&&(!t.expires||t.expires<Date.now())?t.value:``}set(e,t,n){this._storage[e]={value:t,expires:n.expires?n.expires*1e3+Date.now():void 0}}remove(e){delete this._storage[e]}},V=100,H={events:[],container:null,collection:null};function U(e,t){H.container=e,H.collection=t,t.onLifecycle(e=>{H.events.push({...e,timestamp:Date.now()}),H.events.length>V&&(H.events=H.events.slice(-100))}),typeof window<`u`&&(window.__EMAILMAKER_DEVTOOLS__=W())}function W(){return{enabled:!0,plugins(){return H.collection?H.collection.getStatus().map(e=>({...e,hasInit:!0,hasDispose:!0,hasAfterInit:!0})):[]},registry(){if(!H.container)return[];try{return H.container.getInstance(i.M).keys().map(String)}catch{return[]}},events(e=50){return H.events.slice(-e)},clearEvents(){H.events=[]},getPlugin(e){if(H.collection)try{return H.collection.use(e)}catch{return}}}}var G=a.k([z]);async function K(e){i.In(e.signal);let t=new r.Ho;async function n(){let n=r.Lo.createChild();if(e.standaloneKey){n.inject(r.do,e.standaloneKey);let i=r._o(n,r.ho.FILE_PROXY_EVENT_ID);t.addDisposable(i(async({url:e})=>(await fetch(e)).blob(),Number.MIN_VALUE))}n.inject(r.oo,t),n.inject(r.$a,new B),r.Ga(n);let a=G(n),o={...a.instance,container:n,async reset(e){return i.In(e.signal),await a.setOptions(e),o}};n.inject(r.co,o);try{if(await a.setOptions(e),i.In(e.signal),e.devTools)try{let e=n.getInstance(r.uo);e&&U(n,e)}catch{}return i.In(e.signal),r.go(n,r.io).fire(o),o}catch(e){throw t.dispose(),e}}try{return await i.Fn(n(),e.signal)}catch(e){throw t.isDisposed()||t.dispose(),e}}async function q(e){let t=new Map;typeof e==`object`&&(e=e.code);let n=await i.a(e,async e=>{await i.g(e.document,e=>i.m.getEscapedText(e)===e?i.y(e):e,t);for(let t of e.document.querySelectorAll(`.em-amp-show-disabled`))t.remove();e.handleRender(async({contentDocument:e,managedNodeController:t})=>{await i.n(e,{mappedTags:{script:`___script`},commit:()=>t.commit()})})},[800]),r=await i.a(e,async e=>{await i.g(e.document,e=>i.m.getEscapedText(e)===e?i.y(e):e,t);for(let t of e.document.querySelectorAll(`.em-amp-show-only`))t.remove();await i.t(e.document,{mappedTags:{script:`___script`}})},[800]);return{code:e,html:r,ampHtml:n}}t.init=K,t.parseAMP=q,t.version=`1.1.26`});