@a-company/paradigm 5.22.0 → 5.24.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.
Files changed (39) hide show
  1. package/dist/{ambient-WEPHBAJD.js → ambient-HYZR42NX.js} +1 -1
  2. package/dist/chunk-4DVT5IEY.js +2 -0
  3. package/dist/chunk-73R63P7K.js +2 -0
  4. package/dist/{chunk-QIGE36CB.js → chunk-FSOI3CCD.js} +79 -21
  5. package/dist/{compliance-TSXLXADI.js → compliance-NLG7KB73.js} +2 -2
  6. package/dist/{docs-RXPN6CK7.js → docs-UIYXJ3O3.js} +1 -1
  7. package/dist/{habits-LX5IWCZM.js → habits-GICVMTJL.js} +1 -1
  8. package/dist/{hooks-EFM2IK6E.js → hooks-E7HQQ57M.js} +1 -1
  9. package/dist/index.js +3 -3
  10. package/dist/mcp.js +64 -41
  11. package/dist/{migrate-OMR5G5AF.js → migrate-WT56YYAM.js} +1 -1
  12. package/dist/platform-server-FXYBBH6E.js +25 -0
  13. package/dist/{project-type-SURTOIG7.js → project-type-4Y6CESWP.js} +1 -1
  14. package/dist/{roster-FLRZ5J42.js → roster-K2QILE7K.js} +1 -1
  15. package/dist/{serve-JE6UF5P2.js → serve-5W6KOA4R.js} +1 -1
  16. package/dist/{shift-ASDLMMK5.js → shift-TDOYQKR4.js} +2 -2
  17. package/dist/university-FJ7OCOA3.js +2 -0
  18. package/package.json +1 -1
  19. package/platform-ui/dist/assets/AmbientSection-BYjt75R1.js +1 -0
  20. package/platform-ui/dist/assets/{CanvasSection-DLW0s-Bu.js → CanvasSection-rKvA_vZj.js} +2 -2
  21. package/platform-ui/dist/assets/{DocsSection-BQ9Hi51g.js → DocsSection-CI9K73M-.js} +1 -1
  22. package/platform-ui/dist/assets/GitSection-DSGj_c6S.js +4 -0
  23. package/platform-ui/dist/assets/{GraphSection-0c9C-w7K.js → GraphSection-CawN7pC5.js} +2 -2
  24. package/platform-ui/dist/assets/LoreSection-oO5dCe6O.js +1 -0
  25. package/platform-ui/dist/assets/{SentinelSection-C4OoME9U.js → SentinelSection-DNgoYMH0.js} +1 -1
  26. package/platform-ui/dist/assets/SymphonySection-C0zfcqv3.js +1 -0
  27. package/platform-ui/dist/assets/TeamSection-Bzd3Dt9Q.js +1 -0
  28. package/platform-ui/dist/assets/UniversitySection-B3ltVfpt.css +1 -0
  29. package/platform-ui/dist/assets/UniversitySection-tBr62R0S.js +1 -0
  30. package/platform-ui/dist/assets/{index-DPpOdAtC.js → index-BaOmyn11.js} +12 -12
  31. package/platform-ui/dist/index.html +1 -1
  32. package/dist/chunk-AGVAHVUA.js +0 -2
  33. package/dist/chunk-RMOALQJN.js +0 -2
  34. package/dist/platform-server-2KXHGHFV.js +0 -25
  35. package/platform-ui/dist/assets/AmbientSection-DqQ2mfCO.js +0 -1
  36. package/platform-ui/dist/assets/GitSection-QQeUX6o3.js +0 -4
  37. package/platform-ui/dist/assets/LoreSection--t56kCj2.js +0 -1
  38. package/platform-ui/dist/assets/SymphonySection-B-rvsLxq.js +0 -1
  39. package/platform-ui/dist/assets/TeamSection-CBFmNEEo.js +0 -1
@@ -1,4 +1,4 @@
1
- import{c as zn,b as $e,g as Ft,r as b,R as O,d as Un,j as d}from"./index-DPpOdAtC.js";const Gn=500,vt="paradigm-canvas-last";let ot=null;function Wn(e,t=""){const r=new Date().toISOString();return{version:1,name:e,description:t,created:r,updated:r,editor:{},symbols:{},viewport:{width:1280,zoom:1,scrollX:0,scrollY:0}}}const z=zn((e,t)=>({files:[],currentFile:null,currentFileName:"",isDirty:!1,isLoading:!1,error:null,editorState:null,mode:"design",fetchFiles:async()=>{try{const r=await fetch("/api/canvas/files");if(!r.ok)throw new Error(`HTTP ${r.status}`);const n=await r.json();e({files:n.files||[]})}catch(r){e({error:r.message})}},loadFile:async r=>{e({isLoading:!0,error:null});try{const n=await fetch(`/api/canvas/files/${r}`);if(!n.ok)throw new Error(`HTTP ${n.status}`);const a=await n.json(),o=a.editor&&Object.keys(a.editor).length>0?JSON.stringify(a.editor):null;e({currentFile:r,currentFileName:a.name||r.replace(/\.canvas$/,""),editorState:o,isDirty:!1,isLoading:!1}),localStorage.setItem(vt,r)}catch(n){e({error:n.message,isLoading:!1})}},saveFile:async r=>{const n=t(),a=n.currentFile;if(!a)return;const o=r||n.editorState;let s={};if(o)try{s=JSON.parse(o)}catch{}const i={version:1,name:n.currentFileName,description:"",created:"",updated:"",editor:s,symbols:{},viewport:{width:1280,zoom:1,scrollX:0,scrollY:0}};try{const l=await fetch(`/api/canvas/files/${a}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(i)});if(!l.ok)throw new Error(`HTTP ${l.status}`);e({isDirty:!1})}catch(l){e({error:l.message})}},createFile:async(r,n="")=>{const a=r.endsWith(".canvas")?r:`${r}.canvas`,o=Wn(r,n);try{const s=await fetch(`/api/canvas/files/${a}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(o)});if(!s.ok)throw new Error(`HTTP ${s.status}`);await t().fetchFiles(),await t().loadFile(a)}catch(s){e({error:s.message})}},deleteFile:async r=>{try{const n=await fetch(`/api/canvas/files/${r}`,{method:"DELETE"});if(!n.ok)throw new Error(`HTTP ${n.status}`);t().currentFile===r&&(e({currentFile:null,currentFileName:"",editorState:null,isDirty:!1}),localStorage.removeItem(vt)),await t().fetchFiles()}catch(n){e({error:n.message})}},setCurrentFileName:r=>e({currentFileName:r,isDirty:!0}),setEditorState:r=>e({editorState:r}),setMode:r=>e({mode:r}),setDirty:r=>e({isDirty:r}),setError:r=>e({error:r}),debouncedSave:r=>{e({editorState:r,isDirty:!0}),ot&&clearTimeout(ot),ot=setTimeout(()=>{t().saveFile(r)},Gn)}}));function Kn(){return localStorage.getItem(vt)}function k(e){for(var t=arguments.length,r=Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];throw Error("[Immer] minified error nr: "+e+(r.length?" "+r.map(function(a){return"'"+a+"'"}).join(","):"")+". Find the full error at: https://bit.ly/3cXEKWf")}function oe(e){return!!e&&!!e[N]}function G(e){var t;return!!e&&(function(r){if(!r||typeof r!="object")return!1;var n=Object.getPrototypeOf(r);if(n===null)return!0;var a=Object.hasOwnProperty.call(n,"constructor")&&n.constructor;return a===Object||typeof a=="function"&&Function.toString.call(a)===ra}(e)||Array.isArray(e)||!!e[xe]||!!(!((t=e.constructor)===null||t===void 0)&&t[xe])||Ge(e)||We(e))}function ie(e,t,r){r===void 0&&(r=!1),Z(e)===0?(r?Object.keys:zt)(e).forEach(function(n){r&&typeof n=="symbol"||t(n,e[n],e)}):e.forEach(function(n,a){return t(a,n,e)})}function Z(e){var t=e[N];return t?t.i>3?t.i-4:t.i:Array.isArray(e)?1:Ge(e)?2:We(e)?3:0}function Ne(e,t){return Z(e)===2?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function Ie(e,t){return Z(e)===2?e.get(t):e[t]}function rn(e,t,r){var n=Z(e);n===2?e.set(t,r):n===3?e.add(r):e[t]=r}function Jn(e,t){return e===t?e!==0||1/e==1/t:e!=e&&t!=t}function Ge(e){return ea&&e instanceof Map}function We(e){return ta&&e instanceof Set}function I(e){return e.o||e.t}function Lt(e){if(Array.isArray(e))return Array.prototype.slice.call(e);var t=na(e);delete t[N];for(var r=zt(t),n=0;n<r.length;n++){var a=r[n],o=t[a];o.writable===!1&&(o.writable=!0,o.configurable=!0),(o.get||o.set)&&(t[a]={configurable:!0,writable:!0,enumerable:o.enumerable,value:e[a]})}return Object.create(Object.getPrototypeOf(e),t)}function Mt(e,t){return t===void 0&&(t=!1),Ht(e)||oe(e)||!G(e)||(Z(e)>1&&(e.set=e.add=e.clear=e.delete=Yn),Object.freeze(e),t&&ie(e,function(r,n){return Mt(n,!0)},!0)),e}function Yn(){k(2)}function Ht(e){return e==null||typeof e!="object"||Object.isFrozen(e)}function U(e){var t=yt[e];return t||k(18,e),t}function nn(e,t){yt[e]||(yt[e]=t)}function Re(){return Oe}function it(e,t){t&&(U("Patches"),e.u=[],e.s=[],e.v=t)}function ke(e){gt(e),e.p.forEach(Xn),e.p=null}function gt(e){e===Oe&&(Oe=e.l)}function ir(e){return Oe={p:[],l:Oe,h:e,m:!0,_:0}}function Xn(e){var t=e[N];t.i===0||t.i===1?t.j():t.g=!0}function st(e,t){t._=t.p.length;var r=t.p[0],n=e!==void 0&&e!==r;return t.h.O||U("ES5").S(t,e,n),n?(r[N].P&&(ke(t),k(4)),G(e)&&(e=Fe(t,e),t.l||Le(t,e)),t.u&&U("Patches").M(r[N].t,e,t.u,t.s)):e=Fe(t,r,[]),ke(t),t.u&&t.v(t.u,t.s),e!==Bt?e:void 0}function Fe(e,t,r){if(Ht(t))return t;var n=t[N];if(!n)return ie(t,function(i,l){return sr(e,n,t,i,l,r)},!0),t;if(n.A!==e)return t;if(!n.P)return Le(e,n.t,!0),n.t;if(!n.I){n.I=!0,n.A._--;var a=n.i===4||n.i===5?n.o=Lt(n.k):n.o,o=a,s=!1;n.i===3&&(o=new Set(a),a.clear(),s=!0),ie(o,function(i,l){return sr(e,n,a,i,l,r,s)}),Le(e,a,!1),r&&e.u&&U("Patches").N(n,r,e.u,e.s)}return n.o}function sr(e,t,r,n,a,o,s){if(oe(a)){var i=Fe(e,a,o&&t&&t.i!==3&&!Ne(t.R,n)?o.concat(n):void 0);if(rn(r,n,i),!oe(i))return;e.m=!1}else s&&r.add(a);if(G(a)&&!Ht(a)){if(!e.h.D&&e._<1)return;Fe(e,a),t&&t.A.l||Le(e,a)}}function Le(e,t,r){r===void 0&&(r=!1),!e.l&&e.h.D&&e.m&&Mt(t,r)}function ct(e,t){var r=e[N];return(r?I(r):e)[t]}function cr(e,t){if(t in e)for(var r=Object.getPrototypeOf(e);r;){var n=Object.getOwnPropertyDescriptor(r,t);if(n)return n;r=Object.getPrototypeOf(r)}}function X(e){e.P||(e.P=!0,e.l&&X(e.l))}function lt(e){e.o||(e.o=Lt(e.t))}function we(e,t,r){var n=Ge(t)?U("MapSet").F(t,r):We(t)?U("MapSet").T(t,r):e.O?function(a,o){var s=Array.isArray(a),i={i:s?1:0,A:o?o.A:Re(),P:!1,I:!1,R:{},l:o,t:a,k:null,o:null,j:null,C:!1},l=i,c=mt;s&&(l=[i],c=_e);var u=Proxy.revocable(l,c),f=u.revoke,p=u.proxy;return i.k=p,i.j=f,p}(t,r):U("ES5").J(t,r);return(r?r.A:Re()).p.push(n),n}function Vn(e){return oe(e)||k(22,e),function t(r){if(!G(r))return r;var n,a=r[N],o=Z(r);if(a){if(!a.P&&(a.i<4||!U("ES5").K(a)))return a.t;a.I=!0,n=lr(r,o),a.I=!1}else n=lr(r,o);return ie(n,function(s,i){a&&Ie(a.t,s)===i||rn(n,s,t(i))}),o===3?new Set(n):n}(e)}function lr(e,t){switch(t){case 2:return new Map(e);case 3:return Array.from(e)}return Lt(e)}function Qn(){function e(n){if(!G(n))return n;if(Array.isArray(n))return n.map(e);if(Ge(n))return new Map(Array.from(n.entries()).map(function(s){return[s[0],e(s[1])]}));if(We(n))return new Set(Array.from(n).map(e));var a=Object.create(Object.getPrototypeOf(n));for(var o in n)a[o]=e(n[o]);return Ne(n,xe)&&(a[xe]=n[xe]),a}function t(n){return oe(n)?e(n):n}var r="add";nn("Patches",{$:function(n,a){return a.forEach(function(o){for(var s=o.path,i=o.op,l=n,c=0;c<s.length-1;c++){var u=Z(l),f=s[c];typeof f!="string"&&typeof f!="number"&&(f=""+f),u!==0&&u!==1||f!=="__proto__"&&f!=="constructor"||k(24),typeof l=="function"&&f==="prototype"&&k(24),typeof(l=Ie(l,f))!="object"&&k(15,s.join("/"))}var p=Z(l),h=e(o.value),v=s[s.length-1];switch(i){case"replace":switch(p){case 2:return l.set(v,h);case 3:k(16);default:return l[v]=h}case r:switch(p){case 1:return v==="-"?l.push(h):l.splice(v,0,h);case 2:return l.set(v,h);case 3:return l.add(h);default:return l[v]=h}case"remove":switch(p){case 1:return l.splice(v,1);case 2:return l.delete(v);case 3:return l.delete(o.value);default:return delete l[v]}default:k(17,i)}}),n},N:function(n,a,o,s){switch(n.i){case 0:case 4:case 2:return function(i,l,c,u){var f=i.t,p=i.o;ie(i.R,function(h,v){var g=Ie(f,h),m=Ie(p,h),_=v?Ne(f,h)?"replace":r:"remove";if(g!==m||_!=="replace"){var y=l.concat(h);c.push(_==="remove"?{op:_,path:y}:{op:_,path:y,value:m}),u.push(_===r?{op:"remove",path:y}:_==="remove"?{op:r,path:y,value:t(g)}:{op:"replace",path:y,value:t(g)})}})}(n,a,o,s);case 5:case 1:return function(i,l,c,u){var f=i.t,p=i.R,h=i.o;if(h.length<f.length){var v=[h,f];f=v[0],h=v[1];var g=[u,c];c=g[0],u=g[1]}for(var m=0;m<f.length;m++)if(p[m]&&h[m]!==f[m]){var _=l.concat([m]);c.push({op:"replace",path:_,value:t(h[m])}),u.push({op:"replace",path:_,value:t(f[m])})}for(var y=f.length;y<h.length;y++){var j=l.concat([y]);c.push({op:r,path:j,value:t(h[y])})}f.length<h.length&&u.push({op:"replace",path:l.concat(["length"]),value:f.length})}(n,a,o,s);case 3:return function(i,l,c,u){var f=i.t,p=i.o,h=0;f.forEach(function(v){if(!p.has(v)){var g=l.concat([h]);c.push({op:"remove",path:g,value:v}),u.unshift({op:r,path:g,value:v})}h++}),h=0,p.forEach(function(v){if(!f.has(v)){var g=l.concat([h]);c.push({op:r,path:g,value:v}),u.unshift({op:"remove",path:g,value:v})}h++})}(n,a,o,s)}},M:function(n,a,o,s){o.push({op:"replace",path:[],value:a===Bt?void 0:a}),s.push({op:"replace",path:[],value:n})}})}function Zn(){function e(i,l){function c(){this.constructor=i}a(i,l),i.prototype=(c.prototype=l.prototype,new c)}function t(i){i.o||(i.R=new Map,i.o=new Map(i.t))}function r(i){i.o||(i.o=new Set,i.t.forEach(function(l){if(G(l)){var c=we(i.A.h,l,i);i.p.set(l,c),i.o.add(c)}else i.o.add(l)}))}function n(i){i.g&&k(3,JSON.stringify(I(i)))}var a=function(i,l){return(a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(c,u){c.__proto__=u}||function(c,u){for(var f in u)u.hasOwnProperty(f)&&(c[f]=u[f])})(i,l)},o=function(){function i(c,u){return this[N]={i:2,l:u,A:u?u.A:Re(),P:!1,I:!1,o:void 0,R:void 0,t:c,k:this,C:!1,g:!1},this}e(i,Map);var l=i.prototype;return Object.defineProperty(l,"size",{get:function(){return I(this[N]).size}}),l.has=function(c){return I(this[N]).has(c)},l.set=function(c,u){var f=this[N];return n(f),I(f).has(c)&&I(f).get(c)===u||(t(f),X(f),f.R.set(c,!0),f.o.set(c,u),f.R.set(c,!0)),this},l.delete=function(c){if(!this.has(c))return!1;var u=this[N];return n(u),t(u),X(u),u.t.has(c)?u.R.set(c,!1):u.R.delete(c),u.o.delete(c),!0},l.clear=function(){var c=this[N];n(c),I(c).size&&(t(c),X(c),c.R=new Map,ie(c.t,function(u){c.R.set(u,!1)}),c.o.clear())},l.forEach=function(c,u){var f=this;I(this[N]).forEach(function(p,h){c.call(u,f.get(h),h,f)})},l.get=function(c){var u=this[N];n(u);var f=I(u).get(c);if(u.I||!G(f)||f!==u.t.get(c))return f;var p=we(u.A.h,f,u);return t(u),u.o.set(c,p),p},l.keys=function(){return I(this[N]).keys()},l.values=function(){var c,u=this,f=this.keys();return(c={})[Pe]=function(){return u.values()},c.next=function(){var p=f.next();return p.done?p:{done:!1,value:u.get(p.value)}},c},l.entries=function(){var c,u=this,f=this.keys();return(c={})[Pe]=function(){return u.entries()},c.next=function(){var p=f.next();if(p.done)return p;var h=u.get(p.value);return{done:!1,value:[p.value,h]}},c},l[Pe]=function(){return this.entries()},i}(),s=function(){function i(c,u){return this[N]={i:3,l:u,A:u?u.A:Re(),P:!1,I:!1,o:void 0,t:c,k:this,p:new Map,g:!1,C:!1},this}e(i,Set);var l=i.prototype;return Object.defineProperty(l,"size",{get:function(){return I(this[N]).size}}),l.has=function(c){var u=this[N];return n(u),u.o?!!u.o.has(c)||!(!u.p.has(c)||!u.o.has(u.p.get(c))):u.t.has(c)},l.add=function(c){var u=this[N];return n(u),this.has(c)||(r(u),X(u),u.o.add(c)),this},l.delete=function(c){if(!this.has(c))return!1;var u=this[N];return n(u),r(u),X(u),u.o.delete(c)||!!u.p.has(c)&&u.o.delete(u.p.get(c))},l.clear=function(){var c=this[N];n(c),I(c).size&&(r(c),X(c),c.o.clear())},l.values=function(){var c=this[N];return n(c),r(c),c.o.values()},l.entries=function(){var c=this[N];return n(c),r(c),c.o.entries()},l.keys=function(){return this.values()},l[Pe]=function(){return this.values()},l.forEach=function(c,u){for(var f=this.values(),p=f.next();!p.done;)c.call(u,p.value,p.value,this),p=f.next()},i}();nn("MapSet",{F:function(i,l){return new o(i,l)},T:function(i,l){return new s(i,l)}})}var ur,Oe,qt=typeof Symbol<"u"&&typeof Symbol("x")=="symbol",ea=typeof Map<"u",ta=typeof Set<"u",dr=typeof Proxy<"u"&&Proxy.revocable!==void 0&&typeof Reflect<"u",Bt=qt?Symbol.for("immer-nothing"):((ur={})["immer-nothing"]=!0,ur),xe=qt?Symbol.for("immer-draftable"):"__$immer_draftable",N=qt?Symbol.for("immer-state"):"__$immer_state",Pe=typeof Symbol<"u"&&Symbol.iterator||"@@iterator",ra=""+Object.prototype.constructor,zt=typeof Reflect<"u"&&Reflect.ownKeys?Reflect.ownKeys:Object.getOwnPropertySymbols!==void 0?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:Object.getOwnPropertyNames,na=Object.getOwnPropertyDescriptors||function(e){var t={};return zt(e).forEach(function(r){t[r]=Object.getOwnPropertyDescriptor(e,r)}),t},yt={},mt={get:function(e,t){if(t===N)return e;var r=I(e);if(!Ne(r,t))return function(a,o,s){var i,l=cr(o,s);return l?"value"in l?l.value:(i=l.get)===null||i===void 0?void 0:i.call(a.k):void 0}(e,r,t);var n=r[t];return e.I||!G(n)?n:n===ct(e.t,t)?(lt(e),e.o[t]=we(e.A.h,n,e)):n},has:function(e,t){return t in I(e)},ownKeys:function(e){return Reflect.ownKeys(I(e))},set:function(e,t,r){var n=cr(I(e),t);if(n!=null&&n.set)return n.set.call(e.k,r),!0;if(!e.P){var a=ct(I(e),t),o=a==null?void 0:a[N];if(o&&o.t===r)return e.o[t]=r,e.R[t]=!1,!0;if(Jn(r,a)&&(r!==void 0||Ne(e.t,t)))return!0;lt(e),X(e)}return e.o[t]===r&&(r!==void 0||t in e.o)||Number.isNaN(r)&&Number.isNaN(e.o[t])||(e.o[t]=r,e.R[t]=!0),!0},deleteProperty:function(e,t){return ct(e.t,t)!==void 0||t in e.t?(e.R[t]=!1,lt(e),X(e)):delete e.R[t],e.o&&delete e.o[t],!0},getOwnPropertyDescriptor:function(e,t){var r=I(e),n=Reflect.getOwnPropertyDescriptor(r,t);return n&&{writable:!0,configurable:e.i!==1||t!=="length",enumerable:n.enumerable,value:r[t]}},defineProperty:function(){k(11)},getPrototypeOf:function(e){return Object.getPrototypeOf(e.t)},setPrototypeOf:function(){k(12)}},_e={};ie(mt,function(e,t){_e[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)}}),_e.deleteProperty=function(e,t){return _e.set.call(this,e,t,void 0)},_e.set=function(e,t,r){return mt.set.call(this,e[0],t,r,e[0])};var aa=function(){function e(r){var n=this;this.O=dr,this.D=!0,this.produce=function(a,o,s){if(typeof a=="function"&&typeof o!="function"){var i=o;o=a;var l=n;return function(g){var m=this;g===void 0&&(g=i);for(var _=arguments.length,y=Array(_>1?_-1:0),j=1;j<_;j++)y[j-1]=arguments[j];return l.produce(g,function(x){var w;return(w=o).call.apply(w,[m,x].concat(y))})}}var c;if(typeof o!="function"&&k(6),s!==void 0&&typeof s!="function"&&k(7),G(a)){var u=ir(n),f=we(n,a,void 0),p=!0;try{c=o(f),p=!1}finally{p?ke(u):gt(u)}return typeof Promise<"u"&&c instanceof Promise?c.then(function(g){return it(u,s),st(g,u)},function(g){throw ke(u),g}):(it(u,s),st(c,u))}if(!a||typeof a!="object"){if((c=o(a))===void 0&&(c=a),c===Bt&&(c=void 0),n.D&&Mt(c,!0),s){var h=[],v=[];U("Patches").M(a,c,h,v),s(h,v)}return c}k(21,a)},this.produceWithPatches=function(a,o){if(typeof a=="function")return function(c){for(var u=arguments.length,f=Array(u>1?u-1:0),p=1;p<u;p++)f[p-1]=arguments[p];return n.produceWithPatches(c,function(h){return a.apply(void 0,[h].concat(f))})};var s,i,l=n.produce(a,o,function(c,u){s=c,i=u});return typeof Promise<"u"&&l instanceof Promise?l.then(function(c){return[c,s,i]}):[l,s,i]},typeof(r==null?void 0:r.useProxies)=="boolean"&&this.setUseProxies(r.useProxies),typeof(r==null?void 0:r.autoFreeze)=="boolean"&&this.setAutoFreeze(r.autoFreeze)}var t=e.prototype;return t.createDraft=function(r){G(r)||k(8),oe(r)&&(r=Vn(r));var n=ir(this),a=we(this,r,void 0);return a[N].C=!0,gt(n),a},t.finishDraft=function(r,n){var a=r&&r[N],o=a.A;return it(o,n),st(void 0,o)},t.setAutoFreeze=function(r){this.D=r},t.setUseProxies=function(r){r&&!dr&&k(20),this.O=r},t.applyPatches=function(r,n){var a;for(a=n.length-1;a>=0;a--){var o=n[a];if(o.path.length===0&&o.op==="replace"){r=o.value;break}}a>-1&&(n=n.slice(a+1));var s=U("Patches").$;return oe(r)?s(r,n):this.produce(r,function(i){return s(i,n)})},e}(),H=new aa,oa=H.produce,fr=H.produceWithPatches.bind(H);H.setAutoFreeze.bind(H);H.setUseProxies.bind(H);var pr=H.applyPatches.bind(H);H.createDraft.bind(H);H.finishDraft.bind(H);function ia(){this.__data__=[],this.size=0}var sa=ia;function ca(e,t){return e===t||e!==e&&t!==t}var an=ca,la=an;function ua(e,t){for(var r=e.length;r--;)if(la(e[r][0],t))return r;return-1}var Ke=ua,da=Ke,fa=Array.prototype,pa=fa.splice;function ha(e){var t=this.__data__,r=da(t,e);if(r<0)return!1;var n=t.length-1;return r==n?t.pop():pa.call(t,r,1),--this.size,!0}var va=ha,ga=Ke;function ya(e){var t=this.__data__,r=ga(t,e);return r<0?void 0:t[r][1]}var ma=ya,ba=Ke;function _a(e){return ba(this.__data__,e)>-1}var ja=_a,xa=Ke;function Na(e,t){var r=this.__data__,n=xa(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this}var wa=Na,Oa=sa,Ea=va,Ca=ma,Sa=ja,Ta=wa;function fe(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}fe.prototype.clear=Oa;fe.prototype.delete=Ea;fe.prototype.get=Ca;fe.prototype.has=Sa;fe.prototype.set=Ta;var Je=fe,$a=Je;function Pa(){this.__data__=new $a,this.size=0}var Aa=Pa;function Da(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r}var Ia=Da;function Ra(e){return this.__data__.get(e)}var ka=Ra;function Fa(e){return this.__data__.has(e)}var La=Fa,Ma=typeof $e=="object"&&$e&&$e.Object===Object&&$e,on=Ma,Ha=on,qa=typeof self=="object"&&self&&self.Object===Object&&self,Ba=Ha||qa||Function("return this")(),W=Ba,za=W,Ua=za.Symbol,Ye=Ua,hr=Ye,sn=Object.prototype,Ga=sn.hasOwnProperty,Wa=sn.toString,be=hr?hr.toStringTag:void 0;function Ka(e){var t=Ga.call(e,be),r=e[be];try{e[be]=void 0;var n=!0}catch{}var a=Wa.call(e);return n&&(t?e[be]=r:delete e[be]),a}var Ja=Ka,Ya=Object.prototype,Xa=Ya.toString;function Va(e){return Xa.call(e)}var Qa=Va,vr=Ye,Za=Ja,eo=Qa,to="[object Null]",ro="[object Undefined]",gr=vr?vr.toStringTag:void 0;function no(e){return e==null?e===void 0?ro:to:gr&&gr in Object(e)?Za(e):eo(e)}var Xe=no;function ao(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}var cn=ao,oo=Xe,io=cn,so="[object AsyncFunction]",co="[object Function]",lo="[object GeneratorFunction]",uo="[object Proxy]";function fo(e){if(!io(e))return!1;var t=oo(e);return t==co||t==lo||t==so||t==uo}var Ut=fo;const po=Ft(Ut);var ho=W,vo=ho["__core-js_shared__"],go=vo,ut=go,yr=function(){var e=/[^.]+$/.exec(ut&&ut.keys&&ut.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function yo(e){return!!yr&&yr in e}var mo=yo,bo=Function.prototype,_o=bo.toString;function jo(e){if(e!=null){try{return _o.call(e)}catch{}try{return e+""}catch{}}return""}var ln=jo,xo=Ut,No=mo,wo=cn,Oo=ln,Eo=/[\\^$.*+?()[\]{}|]/g,Co=/^\[object .+?Constructor\]$/,So=Function.prototype,To=Object.prototype,$o=So.toString,Po=To.hasOwnProperty,Ao=RegExp("^"+$o.call(Po).replace(Eo,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Do(e){if(!wo(e)||No(e))return!1;var t=xo(e)?Ao:Co;return t.test(Oo(e))}var Io=Do;function Ro(e,t){return e==null?void 0:e[t]}var ko=Ro,Fo=Io,Lo=ko;function Mo(e,t){var r=Lo(e,t);return Fo(r)?r:void 0}var se=Mo,Ho=se,qo=W,Bo=Ho(qo,"Map"),Gt=Bo,zo=se,Uo=zo(Object,"create"),Ve=Uo,mr=Ve;function Go(){this.__data__=mr?mr(null):{},this.size=0}var Wo=Go;function Ko(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}var Jo=Ko,Yo=Ve,Xo="__lodash_hash_undefined__",Vo=Object.prototype,Qo=Vo.hasOwnProperty;function Zo(e){var t=this.__data__;if(Yo){var r=t[e];return r===Xo?void 0:r}return Qo.call(t,e)?t[e]:void 0}var ei=Zo,ti=Ve,ri=Object.prototype,ni=ri.hasOwnProperty;function ai(e){var t=this.__data__;return ti?t[e]!==void 0:ni.call(t,e)}var oi=ai,ii=Ve,si="__lodash_hash_undefined__";function ci(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=ii&&t===void 0?si:t,this}var li=ci,ui=Wo,di=Jo,fi=ei,pi=oi,hi=li;function pe(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}pe.prototype.clear=ui;pe.prototype.delete=di;pe.prototype.get=fi;pe.prototype.has=pi;pe.prototype.set=hi;var vi=pe,br=vi,gi=Je,yi=Gt;function mi(){this.size=0,this.__data__={hash:new br,map:new(yi||gi),string:new br}}var bi=mi;function _i(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}var ji=_i,xi=ji;function Ni(e,t){var r=e.__data__;return xi(t)?r[typeof t=="string"?"string":"hash"]:r.map}var Qe=Ni,wi=Qe;function Oi(e){var t=wi(this,e).delete(e);return this.size-=t?1:0,t}var Ei=Oi,Ci=Qe;function Si(e){return Ci(this,e).get(e)}var Ti=Si,$i=Qe;function Pi(e){return $i(this,e).has(e)}var Ai=Pi,Di=Qe;function Ii(e,t){var r=Di(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this}var Ri=Ii,ki=bi,Fi=Ei,Li=Ti,Mi=Ai,Hi=Ri;function he(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}he.prototype.clear=ki;he.prototype.delete=Fi;he.prototype.get=Li;he.prototype.has=Mi;he.prototype.set=Hi;var un=he,qi=Je,Bi=Gt,zi=un,Ui=200;function Gi(e,t){var r=this.__data__;if(r instanceof qi){var n=r.__data__;if(!Bi||n.length<Ui-1)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new zi(n)}return r.set(e,t),this.size=r.size,this}var Wi=Gi,Ki=Je,Ji=Aa,Yi=Ia,Xi=ka,Vi=La,Qi=Wi;function ve(e){var t=this.__data__=new Ki(e);this.size=t.size}ve.prototype.clear=Ji;ve.prototype.delete=Yi;ve.prototype.get=Xi;ve.prototype.has=Vi;ve.prototype.set=Qi;var Zi=ve,es="__lodash_hash_undefined__";function ts(e){return this.__data__.set(e,es),this}var rs=ts;function ns(e){return this.__data__.has(e)}var as=ns,os=un,is=rs,ss=as;function Me(e){var t=-1,r=e==null?0:e.length;for(this.__data__=new os;++t<r;)this.add(e[t])}Me.prototype.add=Me.prototype.push=is;Me.prototype.has=ss;var cs=Me;function ls(e,t){for(var r=-1,n=e==null?0:e.length;++r<n;)if(t(e[r],r,e))return!0;return!1}var us=ls;function ds(e,t){return e.has(t)}var fs=ds,ps=cs,hs=us,vs=fs,gs=1,ys=2;function ms(e,t,r,n,a,o){var s=r&gs,i=e.length,l=t.length;if(i!=l&&!(s&&l>i))return!1;var c=o.get(e),u=o.get(t);if(c&&u)return c==t&&u==e;var f=-1,p=!0,h=r&ys?new ps:void 0;for(o.set(e,t),o.set(t,e);++f<i;){var v=e[f],g=t[f];if(n)var m=s?n(g,v,f,t,e,o):n(v,g,f,e,t,o);if(m!==void 0){if(m)continue;p=!1;break}if(h){if(!hs(t,function(_,y){if(!vs(h,y)&&(v===_||a(v,_,r,n,o)))return h.push(y)})){p=!1;break}}else if(!(v===g||a(v,g,r,n,o))){p=!1;break}}return o.delete(e),o.delete(t),p}var dn=ms,bs=W,_s=bs.Uint8Array,js=_s;function xs(e){var t=-1,r=Array(e.size);return e.forEach(function(n,a){r[++t]=[a,n]}),r}var Ns=xs;function ws(e){var t=-1,r=Array(e.size);return e.forEach(function(n){r[++t]=n}),r}var Os=ws,_r=Ye,jr=js,Es=an,Cs=dn,Ss=Ns,Ts=Os,$s=1,Ps=2,As="[object Boolean]",Ds="[object Date]",Is="[object Error]",Rs="[object Map]",ks="[object Number]",Fs="[object RegExp]",Ls="[object Set]",Ms="[object String]",Hs="[object Symbol]",qs="[object ArrayBuffer]",Bs="[object DataView]",xr=_r?_r.prototype:void 0,dt=xr?xr.valueOf:void 0;function zs(e,t,r,n,a,o,s){switch(r){case Bs:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case qs:return!(e.byteLength!=t.byteLength||!o(new jr(e),new jr(t)));case As:case Ds:case ks:return Es(+e,+t);case Is:return e.name==t.name&&e.message==t.message;case Fs:case Ms:return e==t+"";case Rs:var i=Ss;case Ls:var l=n&$s;if(i||(i=Ts),e.size!=t.size&&!l)return!1;var c=s.get(e);if(c)return c==t;n|=Ps,s.set(e,t);var u=Cs(i(e),i(t),n,a,o,s);return s.delete(e),u;case Hs:if(dt)return dt.call(e)==dt.call(t)}return!1}var Us=zs;function Gs(e,t){for(var r=-1,n=t.length,a=e.length;++r<n;)e[a+r]=t[r];return e}var Ws=Gs,Ks=Array.isArray,Wt=Ks,Js=Ws,Ys=Wt;function Xs(e,t,r){var n=t(e);return Ys(e)?n:Js(n,r(e))}var Vs=Xs;function Qs(e,t){for(var r=-1,n=e==null?0:e.length,a=0,o=[];++r<n;){var s=e[r];t(s,r,e)&&(o[a++]=s)}return o}var Zs=Qs;function ec(){return[]}var tc=ec,rc=Zs,nc=tc,ac=Object.prototype,oc=ac.propertyIsEnumerable,Nr=Object.getOwnPropertySymbols,ic=Nr?function(e){return e==null?[]:(e=Object(e),rc(Nr(e),function(t){return oc.call(e,t)}))}:nc,sc=ic;function cc(e,t){for(var r=-1,n=Array(e);++r<e;)n[r]=t(r);return n}var lc=cc;function uc(e){return e!=null&&typeof e=="object"}var Ze=uc,dc=Xe,fc=Ze,pc="[object Arguments]";function hc(e){return fc(e)&&dc(e)==pc}var vc=hc,wr=vc,gc=Ze,fn=Object.prototype,yc=fn.hasOwnProperty,mc=fn.propertyIsEnumerable,bc=wr(function(){return arguments}())?wr:function(e){return gc(e)&&yc.call(e,"callee")&&!mc.call(e,"callee")},_c=bc,He={exports:{}};function jc(){return!1}var xc=jc;He.exports;(function(e,t){var r=W,n=xc,a=t&&!t.nodeType&&t,o=a&&!0&&e&&!e.nodeType&&e,s=o&&o.exports===a,i=s?r.Buffer:void 0,l=i?i.isBuffer:void 0,c=l||n;e.exports=c})(He,He.exports);var pn=He.exports,Nc=9007199254740991,wc=/^(?:0|[1-9]\d*)$/;function Oc(e,t){var r=typeof e;return t=t??Nc,!!t&&(r=="number"||r!="symbol"&&wc.test(e))&&e>-1&&e%1==0&&e<t}var Ec=Oc,Cc=9007199254740991;function Sc(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=Cc}var hn=Sc,Tc=Xe,$c=hn,Pc=Ze,Ac="[object Arguments]",Dc="[object Array]",Ic="[object Boolean]",Rc="[object Date]",kc="[object Error]",Fc="[object Function]",Lc="[object Map]",Mc="[object Number]",Hc="[object Object]",qc="[object RegExp]",Bc="[object Set]",zc="[object String]",Uc="[object WeakMap]",Gc="[object ArrayBuffer]",Wc="[object DataView]",Kc="[object Float32Array]",Jc="[object Float64Array]",Yc="[object Int8Array]",Xc="[object Int16Array]",Vc="[object Int32Array]",Qc="[object Uint8Array]",Zc="[object Uint8ClampedArray]",el="[object Uint16Array]",tl="[object Uint32Array]",T={};T[Kc]=T[Jc]=T[Yc]=T[Xc]=T[Vc]=T[Qc]=T[Zc]=T[el]=T[tl]=!0;T[Ac]=T[Dc]=T[Gc]=T[Ic]=T[Wc]=T[Rc]=T[kc]=T[Fc]=T[Lc]=T[Mc]=T[Hc]=T[qc]=T[Bc]=T[zc]=T[Uc]=!1;function rl(e){return Pc(e)&&$c(e.length)&&!!T[Tc(e)]}var nl=rl;function al(e){return function(t){return e(t)}}var ol=al,qe={exports:{}};qe.exports;(function(e,t){var r=on,n=t&&!t.nodeType&&t,a=n&&!0&&e&&!e.nodeType&&e,o=a&&a.exports===n,s=o&&r.process,i=function(){try{var l=a&&a.require&&a.require("util").types;return l||s&&s.binding&&s.binding("util")}catch{}}();e.exports=i})(qe,qe.exports);var Kt=qe.exports,il=nl,sl=ol,Or=Kt,Er=Or&&Or.isTypedArray,cl=Er?sl(Er):il,vn=cl,ll=lc,ul=_c,dl=Wt,fl=pn,pl=Ec,hl=vn,vl=Object.prototype,gl=vl.hasOwnProperty;function yl(e,t){var r=dl(e),n=!r&&ul(e),a=!r&&!n&&fl(e),o=!r&&!n&&!a&&hl(e),s=r||n||a||o,i=s?ll(e.length,String):[],l=i.length;for(var c in e)(t||gl.call(e,c))&&!(s&&(c=="length"||a&&(c=="offset"||c=="parent")||o&&(c=="buffer"||c=="byteLength"||c=="byteOffset")||pl(c,l)))&&i.push(c);return i}var ml=yl,bl=Object.prototype;function _l(e){var t=e&&e.constructor,r=typeof t=="function"&&t.prototype||bl;return e===r}var jl=_l;function xl(e,t){return function(r){return e(t(r))}}var Nl=xl,wl=Nl,Ol=wl(Object.keys,Object),El=Ol,Cl=jl,Sl=El,Tl=Object.prototype,$l=Tl.hasOwnProperty;function Pl(e){if(!Cl(e))return Sl(e);var t=[];for(var r in Object(e))$l.call(e,r)&&r!="constructor"&&t.push(r);return t}var Al=Pl,Dl=Ut,Il=hn;function Rl(e){return e!=null&&Il(e.length)&&!Dl(e)}var kl=Rl,Fl=ml,Ll=Al,Ml=kl;function Hl(e){return Ml(e)?Fl(e):Ll(e)}var ql=Hl,Bl=Vs,zl=sc,Ul=ql;function Gl(e){return Bl(e,Ul,zl)}var Wl=Gl,Cr=Wl,Kl=1,Jl=Object.prototype,Yl=Jl.hasOwnProperty;function Xl(e,t,r,n,a,o){var s=r&Kl,i=Cr(e),l=i.length,c=Cr(t),u=c.length;if(l!=u&&!s)return!1;for(var f=l;f--;){var p=i[f];if(!(s?p in t:Yl.call(t,p)))return!1}var h=o.get(e),v=o.get(t);if(h&&v)return h==t&&v==e;var g=!0;o.set(e,t),o.set(t,e);for(var m=s;++f<l;){p=i[f];var _=e[p],y=t[p];if(n)var j=s?n(y,_,p,t,e,o):n(_,y,p,e,t,o);if(!(j===void 0?_===y||a(_,y,r,n,o):j)){g=!1;break}m||(m=p=="constructor")}if(g&&!m){var x=e.constructor,w=t.constructor;x!=w&&"constructor"in e&&"constructor"in t&&!(typeof x=="function"&&x instanceof x&&typeof w=="function"&&w instanceof w)&&(g=!1)}return o.delete(e),o.delete(t),g}var Vl=Xl,Ql=se,Zl=W,eu=Ql(Zl,"DataView"),tu=eu,ru=se,nu=W,au=ru(nu,"Promise"),ou=au,iu=se,su=W,cu=iu(su,"Set"),lu=cu,uu=se,du=W,fu=uu(du,"WeakMap"),pu=fu,bt=tu,_t=Gt,jt=ou,xt=lu,Nt=pu,gn=Xe,ge=ln,Sr="[object Map]",hu="[object Object]",Tr="[object Promise]",$r="[object Set]",Pr="[object WeakMap]",Ar="[object DataView]",vu=ge(bt),gu=ge(_t),yu=ge(jt),mu=ge(xt),bu=ge(Nt),ne=gn;(bt&&ne(new bt(new ArrayBuffer(1)))!=Ar||_t&&ne(new _t)!=Sr||jt&&ne(jt.resolve())!=Tr||xt&&ne(new xt)!=$r||Nt&&ne(new Nt)!=Pr)&&(ne=function(e){var t=gn(e),r=t==hu?e.constructor:void 0,n=r?ge(r):"";if(n)switch(n){case vu:return Ar;case gu:return Sr;case yu:return Tr;case mu:return $r;case bu:return Pr}return t});var _u=ne,ft=Zi,ju=dn,xu=Us,Nu=Vl,Dr=_u,Ir=Wt,Rr=pn,wu=vn,Ou=1,kr="[object Arguments]",Fr="[object Array]",Ae="[object Object]",Eu=Object.prototype,Lr=Eu.hasOwnProperty;function Cu(e,t,r,n,a,o){var s=Ir(e),i=Ir(t),l=s?Fr:Dr(e),c=i?Fr:Dr(t);l=l==kr?Ae:l,c=c==kr?Ae:c;var u=l==Ae,f=c==Ae,p=l==c;if(p&&Rr(e)){if(!Rr(t))return!1;s=!0,u=!1}if(p&&!u)return o||(o=new ft),s||wu(e)?ju(e,t,r,n,a,o):xu(e,t,l,r,n,a,o);if(!(r&Ou)){var h=u&&Lr.call(e,"__wrapped__"),v=f&&Lr.call(t,"__wrapped__");if(h||v){var g=h?e.value():e,m=v?t.value():t;return o||(o=new ft),a(g,m,r,n,o)}}return p?(o||(o=new ft),Nu(e,t,r,n,a,o)):!1}var Su=Cu,Tu=Su,Mr=Ze;function yn(e,t,r,n,a){return e===t?!0:e==null||t==null||!Mr(e)&&!Mr(t)?e!==e&&t!==t:Tu(e,t,r,n,yn,a)}var $u=yn,Pu=$u;function Au(e,t,r){r=typeof r=="function"?r:void 0;var n=r?r(e,t):void 0;return n===void 0?Pu(e,t,void 0,r):!!n}var Du=Au;const Iu=Ft(Du);var Ru=function(t,r,n,a){var o=n?n.call(a,t,r):void 0;if(o!==void 0)return!!o;if(t===r)return!0;if(typeof t!="object"||!t||typeof r!="object"||!r)return!1;var s=Object.keys(t),i=Object.keys(r);if(s.length!==i.length)return!1;for(var l=Object.prototype.hasOwnProperty.bind(r),c=0;c<s.length;c++){var u=s[c];if(!l(u))return!1;var f=t[u],p=r[u];if(o=n?n.call(a,f,p,u):void 0,o===!1||o===void 0&&f!==p)return!1}return!0};const ku=Ft(Ru);let Fu=(e=21)=>crypto.getRandomValues(new Uint8Array(e)).reduce((t,r)=>(r&=63,r<36?t+=r.toString(36):r<62?t+=(r-26).toString(36).toUpperCase():r>62?t+="-":t+="_",t),"");var Lu="Invariant failed";function C(e,t){if(!e)throw new Error(Lu)}typeof window<"u"&&(window.__CRAFTJS__||(window.__CRAFTJS__={}),window.__CRAFTJS__["@craftjs/utils"]="0.2.5");var Q="ROOT",mn="canvas-ROOT",Mu="Attempting to add a node with duplicated id",Hu="Node cannot be dropped into target parent",qu="Target parent rejects incoming node",Bu="Current parent rejects outgoing node",Hr="Cannot move node that is not a direct child of a Canvas node",zu="Cannot move node into a non-Canvas parent",qr="A top-level Node cannot be moved",Uu="Cannot move node into a descendant",bn="The component type specified for this node (%node_type%) does not exist in the resolver",Gu="The node has specified a canDrag() rule that prevents it from being dragged",Wu=`An Error occurred while deserializing components: Cannot find component <%displayName% /> in resolver map. Please check your resolver in <Editor />
1
+ import{c as zn,b as $e,g as Ft,r as b,R as O,d as Un,j as d}from"./index-BaOmyn11.js";const Gn=500,vt="paradigm-canvas-last";let ot=null;function Wn(e,t=""){const r=new Date().toISOString();return{version:1,name:e,description:t,created:r,updated:r,editor:{},symbols:{},viewport:{width:1280,zoom:1,scrollX:0,scrollY:0}}}const z=zn((e,t)=>({files:[],currentFile:null,currentFileName:"",isDirty:!1,isLoading:!1,error:null,editorState:null,mode:"design",fetchFiles:async()=>{try{const r=await fetch("/api/canvas/files");if(!r.ok)throw new Error(`HTTP ${r.status}`);const n=await r.json();e({files:n.files||[]})}catch(r){e({error:r.message})}},loadFile:async r=>{e({isLoading:!0,error:null});try{const n=await fetch(`/api/canvas/files/${r}`);if(!n.ok)throw new Error(`HTTP ${n.status}`);const a=await n.json(),o=a.editor&&Object.keys(a.editor).length>0?JSON.stringify(a.editor):null;e({currentFile:r,currentFileName:a.name||r.replace(/\.canvas$/,""),editorState:o,isDirty:!1,isLoading:!1}),localStorage.setItem(vt,r)}catch(n){e({error:n.message,isLoading:!1})}},saveFile:async r=>{const n=t(),a=n.currentFile;if(!a)return;const o=r||n.editorState;let s={};if(o)try{s=JSON.parse(o)}catch{}const i={version:1,name:n.currentFileName,description:"",created:"",updated:"",editor:s,symbols:{},viewport:{width:1280,zoom:1,scrollX:0,scrollY:0}};try{const l=await fetch(`/api/canvas/files/${a}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(i)});if(!l.ok)throw new Error(`HTTP ${l.status}`);e({isDirty:!1})}catch(l){e({error:l.message})}},createFile:async(r,n="")=>{const a=r.endsWith(".canvas")?r:`${r}.canvas`,o=Wn(r,n);try{const s=await fetch(`/api/canvas/files/${a}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(o)});if(!s.ok)throw new Error(`HTTP ${s.status}`);await t().fetchFiles(),await t().loadFile(a)}catch(s){e({error:s.message})}},deleteFile:async r=>{try{const n=await fetch(`/api/canvas/files/${r}`,{method:"DELETE"});if(!n.ok)throw new Error(`HTTP ${n.status}`);t().currentFile===r&&(e({currentFile:null,currentFileName:"",editorState:null,isDirty:!1}),localStorage.removeItem(vt)),await t().fetchFiles()}catch(n){e({error:n.message})}},setCurrentFileName:r=>e({currentFileName:r,isDirty:!0}),setEditorState:r=>e({editorState:r}),setMode:r=>e({mode:r}),setDirty:r=>e({isDirty:r}),setError:r=>e({error:r}),debouncedSave:r=>{e({editorState:r,isDirty:!0}),ot&&clearTimeout(ot),ot=setTimeout(()=>{t().saveFile(r)},Gn)}}));function Kn(){return localStorage.getItem(vt)}function k(e){for(var t=arguments.length,r=Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];throw Error("[Immer] minified error nr: "+e+(r.length?" "+r.map(function(a){return"'"+a+"'"}).join(","):"")+". Find the full error at: https://bit.ly/3cXEKWf")}function oe(e){return!!e&&!!e[N]}function G(e){var t;return!!e&&(function(r){if(!r||typeof r!="object")return!1;var n=Object.getPrototypeOf(r);if(n===null)return!0;var a=Object.hasOwnProperty.call(n,"constructor")&&n.constructor;return a===Object||typeof a=="function"&&Function.toString.call(a)===ra}(e)||Array.isArray(e)||!!e[xe]||!!(!((t=e.constructor)===null||t===void 0)&&t[xe])||Ge(e)||We(e))}function ie(e,t,r){r===void 0&&(r=!1),Z(e)===0?(r?Object.keys:zt)(e).forEach(function(n){r&&typeof n=="symbol"||t(n,e[n],e)}):e.forEach(function(n,a){return t(a,n,e)})}function Z(e){var t=e[N];return t?t.i>3?t.i-4:t.i:Array.isArray(e)?1:Ge(e)?2:We(e)?3:0}function Ne(e,t){return Z(e)===2?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function Ie(e,t){return Z(e)===2?e.get(t):e[t]}function rn(e,t,r){var n=Z(e);n===2?e.set(t,r):n===3?e.add(r):e[t]=r}function Jn(e,t){return e===t?e!==0||1/e==1/t:e!=e&&t!=t}function Ge(e){return ea&&e instanceof Map}function We(e){return ta&&e instanceof Set}function I(e){return e.o||e.t}function Lt(e){if(Array.isArray(e))return Array.prototype.slice.call(e);var t=na(e);delete t[N];for(var r=zt(t),n=0;n<r.length;n++){var a=r[n],o=t[a];o.writable===!1&&(o.writable=!0,o.configurable=!0),(o.get||o.set)&&(t[a]={configurable:!0,writable:!0,enumerable:o.enumerable,value:e[a]})}return Object.create(Object.getPrototypeOf(e),t)}function Mt(e,t){return t===void 0&&(t=!1),Ht(e)||oe(e)||!G(e)||(Z(e)>1&&(e.set=e.add=e.clear=e.delete=Yn),Object.freeze(e),t&&ie(e,function(r,n){return Mt(n,!0)},!0)),e}function Yn(){k(2)}function Ht(e){return e==null||typeof e!="object"||Object.isFrozen(e)}function U(e){var t=yt[e];return t||k(18,e),t}function nn(e,t){yt[e]||(yt[e]=t)}function Re(){return Oe}function it(e,t){t&&(U("Patches"),e.u=[],e.s=[],e.v=t)}function ke(e){gt(e),e.p.forEach(Xn),e.p=null}function gt(e){e===Oe&&(Oe=e.l)}function ir(e){return Oe={p:[],l:Oe,h:e,m:!0,_:0}}function Xn(e){var t=e[N];t.i===0||t.i===1?t.j():t.g=!0}function st(e,t){t._=t.p.length;var r=t.p[0],n=e!==void 0&&e!==r;return t.h.O||U("ES5").S(t,e,n),n?(r[N].P&&(ke(t),k(4)),G(e)&&(e=Fe(t,e),t.l||Le(t,e)),t.u&&U("Patches").M(r[N].t,e,t.u,t.s)):e=Fe(t,r,[]),ke(t),t.u&&t.v(t.u,t.s),e!==Bt?e:void 0}function Fe(e,t,r){if(Ht(t))return t;var n=t[N];if(!n)return ie(t,function(i,l){return sr(e,n,t,i,l,r)},!0),t;if(n.A!==e)return t;if(!n.P)return Le(e,n.t,!0),n.t;if(!n.I){n.I=!0,n.A._--;var a=n.i===4||n.i===5?n.o=Lt(n.k):n.o,o=a,s=!1;n.i===3&&(o=new Set(a),a.clear(),s=!0),ie(o,function(i,l){return sr(e,n,a,i,l,r,s)}),Le(e,a,!1),r&&e.u&&U("Patches").N(n,r,e.u,e.s)}return n.o}function sr(e,t,r,n,a,o,s){if(oe(a)){var i=Fe(e,a,o&&t&&t.i!==3&&!Ne(t.R,n)?o.concat(n):void 0);if(rn(r,n,i),!oe(i))return;e.m=!1}else s&&r.add(a);if(G(a)&&!Ht(a)){if(!e.h.D&&e._<1)return;Fe(e,a),t&&t.A.l||Le(e,a)}}function Le(e,t,r){r===void 0&&(r=!1),!e.l&&e.h.D&&e.m&&Mt(t,r)}function ct(e,t){var r=e[N];return(r?I(r):e)[t]}function cr(e,t){if(t in e)for(var r=Object.getPrototypeOf(e);r;){var n=Object.getOwnPropertyDescriptor(r,t);if(n)return n;r=Object.getPrototypeOf(r)}}function X(e){e.P||(e.P=!0,e.l&&X(e.l))}function lt(e){e.o||(e.o=Lt(e.t))}function we(e,t,r){var n=Ge(t)?U("MapSet").F(t,r):We(t)?U("MapSet").T(t,r):e.O?function(a,o){var s=Array.isArray(a),i={i:s?1:0,A:o?o.A:Re(),P:!1,I:!1,R:{},l:o,t:a,k:null,o:null,j:null,C:!1},l=i,c=mt;s&&(l=[i],c=_e);var u=Proxy.revocable(l,c),f=u.revoke,p=u.proxy;return i.k=p,i.j=f,p}(t,r):U("ES5").J(t,r);return(r?r.A:Re()).p.push(n),n}function Vn(e){return oe(e)||k(22,e),function t(r){if(!G(r))return r;var n,a=r[N],o=Z(r);if(a){if(!a.P&&(a.i<4||!U("ES5").K(a)))return a.t;a.I=!0,n=lr(r,o),a.I=!1}else n=lr(r,o);return ie(n,function(s,i){a&&Ie(a.t,s)===i||rn(n,s,t(i))}),o===3?new Set(n):n}(e)}function lr(e,t){switch(t){case 2:return new Map(e);case 3:return Array.from(e)}return Lt(e)}function Qn(){function e(n){if(!G(n))return n;if(Array.isArray(n))return n.map(e);if(Ge(n))return new Map(Array.from(n.entries()).map(function(s){return[s[0],e(s[1])]}));if(We(n))return new Set(Array.from(n).map(e));var a=Object.create(Object.getPrototypeOf(n));for(var o in n)a[o]=e(n[o]);return Ne(n,xe)&&(a[xe]=n[xe]),a}function t(n){return oe(n)?e(n):n}var r="add";nn("Patches",{$:function(n,a){return a.forEach(function(o){for(var s=o.path,i=o.op,l=n,c=0;c<s.length-1;c++){var u=Z(l),f=s[c];typeof f!="string"&&typeof f!="number"&&(f=""+f),u!==0&&u!==1||f!=="__proto__"&&f!=="constructor"||k(24),typeof l=="function"&&f==="prototype"&&k(24),typeof(l=Ie(l,f))!="object"&&k(15,s.join("/"))}var p=Z(l),h=e(o.value),v=s[s.length-1];switch(i){case"replace":switch(p){case 2:return l.set(v,h);case 3:k(16);default:return l[v]=h}case r:switch(p){case 1:return v==="-"?l.push(h):l.splice(v,0,h);case 2:return l.set(v,h);case 3:return l.add(h);default:return l[v]=h}case"remove":switch(p){case 1:return l.splice(v,1);case 2:return l.delete(v);case 3:return l.delete(o.value);default:return delete l[v]}default:k(17,i)}}),n},N:function(n,a,o,s){switch(n.i){case 0:case 4:case 2:return function(i,l,c,u){var f=i.t,p=i.o;ie(i.R,function(h,v){var g=Ie(f,h),m=Ie(p,h),_=v?Ne(f,h)?"replace":r:"remove";if(g!==m||_!=="replace"){var y=l.concat(h);c.push(_==="remove"?{op:_,path:y}:{op:_,path:y,value:m}),u.push(_===r?{op:"remove",path:y}:_==="remove"?{op:r,path:y,value:t(g)}:{op:"replace",path:y,value:t(g)})}})}(n,a,o,s);case 5:case 1:return function(i,l,c,u){var f=i.t,p=i.R,h=i.o;if(h.length<f.length){var v=[h,f];f=v[0],h=v[1];var g=[u,c];c=g[0],u=g[1]}for(var m=0;m<f.length;m++)if(p[m]&&h[m]!==f[m]){var _=l.concat([m]);c.push({op:"replace",path:_,value:t(h[m])}),u.push({op:"replace",path:_,value:t(f[m])})}for(var y=f.length;y<h.length;y++){var j=l.concat([y]);c.push({op:r,path:j,value:t(h[y])})}f.length<h.length&&u.push({op:"replace",path:l.concat(["length"]),value:f.length})}(n,a,o,s);case 3:return function(i,l,c,u){var f=i.t,p=i.o,h=0;f.forEach(function(v){if(!p.has(v)){var g=l.concat([h]);c.push({op:"remove",path:g,value:v}),u.unshift({op:r,path:g,value:v})}h++}),h=0,p.forEach(function(v){if(!f.has(v)){var g=l.concat([h]);c.push({op:r,path:g,value:v}),u.unshift({op:"remove",path:g,value:v})}h++})}(n,a,o,s)}},M:function(n,a,o,s){o.push({op:"replace",path:[],value:a===Bt?void 0:a}),s.push({op:"replace",path:[],value:n})}})}function Zn(){function e(i,l){function c(){this.constructor=i}a(i,l),i.prototype=(c.prototype=l.prototype,new c)}function t(i){i.o||(i.R=new Map,i.o=new Map(i.t))}function r(i){i.o||(i.o=new Set,i.t.forEach(function(l){if(G(l)){var c=we(i.A.h,l,i);i.p.set(l,c),i.o.add(c)}else i.o.add(l)}))}function n(i){i.g&&k(3,JSON.stringify(I(i)))}var a=function(i,l){return(a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(c,u){c.__proto__=u}||function(c,u){for(var f in u)u.hasOwnProperty(f)&&(c[f]=u[f])})(i,l)},o=function(){function i(c,u){return this[N]={i:2,l:u,A:u?u.A:Re(),P:!1,I:!1,o:void 0,R:void 0,t:c,k:this,C:!1,g:!1},this}e(i,Map);var l=i.prototype;return Object.defineProperty(l,"size",{get:function(){return I(this[N]).size}}),l.has=function(c){return I(this[N]).has(c)},l.set=function(c,u){var f=this[N];return n(f),I(f).has(c)&&I(f).get(c)===u||(t(f),X(f),f.R.set(c,!0),f.o.set(c,u),f.R.set(c,!0)),this},l.delete=function(c){if(!this.has(c))return!1;var u=this[N];return n(u),t(u),X(u),u.t.has(c)?u.R.set(c,!1):u.R.delete(c),u.o.delete(c),!0},l.clear=function(){var c=this[N];n(c),I(c).size&&(t(c),X(c),c.R=new Map,ie(c.t,function(u){c.R.set(u,!1)}),c.o.clear())},l.forEach=function(c,u){var f=this;I(this[N]).forEach(function(p,h){c.call(u,f.get(h),h,f)})},l.get=function(c){var u=this[N];n(u);var f=I(u).get(c);if(u.I||!G(f)||f!==u.t.get(c))return f;var p=we(u.A.h,f,u);return t(u),u.o.set(c,p),p},l.keys=function(){return I(this[N]).keys()},l.values=function(){var c,u=this,f=this.keys();return(c={})[Pe]=function(){return u.values()},c.next=function(){var p=f.next();return p.done?p:{done:!1,value:u.get(p.value)}},c},l.entries=function(){var c,u=this,f=this.keys();return(c={})[Pe]=function(){return u.entries()},c.next=function(){var p=f.next();if(p.done)return p;var h=u.get(p.value);return{done:!1,value:[p.value,h]}},c},l[Pe]=function(){return this.entries()},i}(),s=function(){function i(c,u){return this[N]={i:3,l:u,A:u?u.A:Re(),P:!1,I:!1,o:void 0,t:c,k:this,p:new Map,g:!1,C:!1},this}e(i,Set);var l=i.prototype;return Object.defineProperty(l,"size",{get:function(){return I(this[N]).size}}),l.has=function(c){var u=this[N];return n(u),u.o?!!u.o.has(c)||!(!u.p.has(c)||!u.o.has(u.p.get(c))):u.t.has(c)},l.add=function(c){var u=this[N];return n(u),this.has(c)||(r(u),X(u),u.o.add(c)),this},l.delete=function(c){if(!this.has(c))return!1;var u=this[N];return n(u),r(u),X(u),u.o.delete(c)||!!u.p.has(c)&&u.o.delete(u.p.get(c))},l.clear=function(){var c=this[N];n(c),I(c).size&&(r(c),X(c),c.o.clear())},l.values=function(){var c=this[N];return n(c),r(c),c.o.values()},l.entries=function(){var c=this[N];return n(c),r(c),c.o.entries()},l.keys=function(){return this.values()},l[Pe]=function(){return this.values()},l.forEach=function(c,u){for(var f=this.values(),p=f.next();!p.done;)c.call(u,p.value,p.value,this),p=f.next()},i}();nn("MapSet",{F:function(i,l){return new o(i,l)},T:function(i,l){return new s(i,l)}})}var ur,Oe,qt=typeof Symbol<"u"&&typeof Symbol("x")=="symbol",ea=typeof Map<"u",ta=typeof Set<"u",dr=typeof Proxy<"u"&&Proxy.revocable!==void 0&&typeof Reflect<"u",Bt=qt?Symbol.for("immer-nothing"):((ur={})["immer-nothing"]=!0,ur),xe=qt?Symbol.for("immer-draftable"):"__$immer_draftable",N=qt?Symbol.for("immer-state"):"__$immer_state",Pe=typeof Symbol<"u"&&Symbol.iterator||"@@iterator",ra=""+Object.prototype.constructor,zt=typeof Reflect<"u"&&Reflect.ownKeys?Reflect.ownKeys:Object.getOwnPropertySymbols!==void 0?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:Object.getOwnPropertyNames,na=Object.getOwnPropertyDescriptors||function(e){var t={};return zt(e).forEach(function(r){t[r]=Object.getOwnPropertyDescriptor(e,r)}),t},yt={},mt={get:function(e,t){if(t===N)return e;var r=I(e);if(!Ne(r,t))return function(a,o,s){var i,l=cr(o,s);return l?"value"in l?l.value:(i=l.get)===null||i===void 0?void 0:i.call(a.k):void 0}(e,r,t);var n=r[t];return e.I||!G(n)?n:n===ct(e.t,t)?(lt(e),e.o[t]=we(e.A.h,n,e)):n},has:function(e,t){return t in I(e)},ownKeys:function(e){return Reflect.ownKeys(I(e))},set:function(e,t,r){var n=cr(I(e),t);if(n!=null&&n.set)return n.set.call(e.k,r),!0;if(!e.P){var a=ct(I(e),t),o=a==null?void 0:a[N];if(o&&o.t===r)return e.o[t]=r,e.R[t]=!1,!0;if(Jn(r,a)&&(r!==void 0||Ne(e.t,t)))return!0;lt(e),X(e)}return e.o[t]===r&&(r!==void 0||t in e.o)||Number.isNaN(r)&&Number.isNaN(e.o[t])||(e.o[t]=r,e.R[t]=!0),!0},deleteProperty:function(e,t){return ct(e.t,t)!==void 0||t in e.t?(e.R[t]=!1,lt(e),X(e)):delete e.R[t],e.o&&delete e.o[t],!0},getOwnPropertyDescriptor:function(e,t){var r=I(e),n=Reflect.getOwnPropertyDescriptor(r,t);return n&&{writable:!0,configurable:e.i!==1||t!=="length",enumerable:n.enumerable,value:r[t]}},defineProperty:function(){k(11)},getPrototypeOf:function(e){return Object.getPrototypeOf(e.t)},setPrototypeOf:function(){k(12)}},_e={};ie(mt,function(e,t){_e[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)}}),_e.deleteProperty=function(e,t){return _e.set.call(this,e,t,void 0)},_e.set=function(e,t,r){return mt.set.call(this,e[0],t,r,e[0])};var aa=function(){function e(r){var n=this;this.O=dr,this.D=!0,this.produce=function(a,o,s){if(typeof a=="function"&&typeof o!="function"){var i=o;o=a;var l=n;return function(g){var m=this;g===void 0&&(g=i);for(var _=arguments.length,y=Array(_>1?_-1:0),j=1;j<_;j++)y[j-1]=arguments[j];return l.produce(g,function(x){var w;return(w=o).call.apply(w,[m,x].concat(y))})}}var c;if(typeof o!="function"&&k(6),s!==void 0&&typeof s!="function"&&k(7),G(a)){var u=ir(n),f=we(n,a,void 0),p=!0;try{c=o(f),p=!1}finally{p?ke(u):gt(u)}return typeof Promise<"u"&&c instanceof Promise?c.then(function(g){return it(u,s),st(g,u)},function(g){throw ke(u),g}):(it(u,s),st(c,u))}if(!a||typeof a!="object"){if((c=o(a))===void 0&&(c=a),c===Bt&&(c=void 0),n.D&&Mt(c,!0),s){var h=[],v=[];U("Patches").M(a,c,h,v),s(h,v)}return c}k(21,a)},this.produceWithPatches=function(a,o){if(typeof a=="function")return function(c){for(var u=arguments.length,f=Array(u>1?u-1:0),p=1;p<u;p++)f[p-1]=arguments[p];return n.produceWithPatches(c,function(h){return a.apply(void 0,[h].concat(f))})};var s,i,l=n.produce(a,o,function(c,u){s=c,i=u});return typeof Promise<"u"&&l instanceof Promise?l.then(function(c){return[c,s,i]}):[l,s,i]},typeof(r==null?void 0:r.useProxies)=="boolean"&&this.setUseProxies(r.useProxies),typeof(r==null?void 0:r.autoFreeze)=="boolean"&&this.setAutoFreeze(r.autoFreeze)}var t=e.prototype;return t.createDraft=function(r){G(r)||k(8),oe(r)&&(r=Vn(r));var n=ir(this),a=we(this,r,void 0);return a[N].C=!0,gt(n),a},t.finishDraft=function(r,n){var a=r&&r[N],o=a.A;return it(o,n),st(void 0,o)},t.setAutoFreeze=function(r){this.D=r},t.setUseProxies=function(r){r&&!dr&&k(20),this.O=r},t.applyPatches=function(r,n){var a;for(a=n.length-1;a>=0;a--){var o=n[a];if(o.path.length===0&&o.op==="replace"){r=o.value;break}}a>-1&&(n=n.slice(a+1));var s=U("Patches").$;return oe(r)?s(r,n):this.produce(r,function(i){return s(i,n)})},e}(),H=new aa,oa=H.produce,fr=H.produceWithPatches.bind(H);H.setAutoFreeze.bind(H);H.setUseProxies.bind(H);var pr=H.applyPatches.bind(H);H.createDraft.bind(H);H.finishDraft.bind(H);function ia(){this.__data__=[],this.size=0}var sa=ia;function ca(e,t){return e===t||e!==e&&t!==t}var an=ca,la=an;function ua(e,t){for(var r=e.length;r--;)if(la(e[r][0],t))return r;return-1}var Ke=ua,da=Ke,fa=Array.prototype,pa=fa.splice;function ha(e){var t=this.__data__,r=da(t,e);if(r<0)return!1;var n=t.length-1;return r==n?t.pop():pa.call(t,r,1),--this.size,!0}var va=ha,ga=Ke;function ya(e){var t=this.__data__,r=ga(t,e);return r<0?void 0:t[r][1]}var ma=ya,ba=Ke;function _a(e){return ba(this.__data__,e)>-1}var ja=_a,xa=Ke;function Na(e,t){var r=this.__data__,n=xa(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this}var wa=Na,Oa=sa,Ea=va,Ca=ma,Sa=ja,Ta=wa;function fe(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}fe.prototype.clear=Oa;fe.prototype.delete=Ea;fe.prototype.get=Ca;fe.prototype.has=Sa;fe.prototype.set=Ta;var Je=fe,$a=Je;function Pa(){this.__data__=new $a,this.size=0}var Aa=Pa;function Da(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r}var Ia=Da;function Ra(e){return this.__data__.get(e)}var ka=Ra;function Fa(e){return this.__data__.has(e)}var La=Fa,Ma=typeof $e=="object"&&$e&&$e.Object===Object&&$e,on=Ma,Ha=on,qa=typeof self=="object"&&self&&self.Object===Object&&self,Ba=Ha||qa||Function("return this")(),W=Ba,za=W,Ua=za.Symbol,Ye=Ua,hr=Ye,sn=Object.prototype,Ga=sn.hasOwnProperty,Wa=sn.toString,be=hr?hr.toStringTag:void 0;function Ka(e){var t=Ga.call(e,be),r=e[be];try{e[be]=void 0;var n=!0}catch{}var a=Wa.call(e);return n&&(t?e[be]=r:delete e[be]),a}var Ja=Ka,Ya=Object.prototype,Xa=Ya.toString;function Va(e){return Xa.call(e)}var Qa=Va,vr=Ye,Za=Ja,eo=Qa,to="[object Null]",ro="[object Undefined]",gr=vr?vr.toStringTag:void 0;function no(e){return e==null?e===void 0?ro:to:gr&&gr in Object(e)?Za(e):eo(e)}var Xe=no;function ao(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}var cn=ao,oo=Xe,io=cn,so="[object AsyncFunction]",co="[object Function]",lo="[object GeneratorFunction]",uo="[object Proxy]";function fo(e){if(!io(e))return!1;var t=oo(e);return t==co||t==lo||t==so||t==uo}var Ut=fo;const po=Ft(Ut);var ho=W,vo=ho["__core-js_shared__"],go=vo,ut=go,yr=function(){var e=/[^.]+$/.exec(ut&&ut.keys&&ut.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function yo(e){return!!yr&&yr in e}var mo=yo,bo=Function.prototype,_o=bo.toString;function jo(e){if(e!=null){try{return _o.call(e)}catch{}try{return e+""}catch{}}return""}var ln=jo,xo=Ut,No=mo,wo=cn,Oo=ln,Eo=/[\\^$.*+?()[\]{}|]/g,Co=/^\[object .+?Constructor\]$/,So=Function.prototype,To=Object.prototype,$o=So.toString,Po=To.hasOwnProperty,Ao=RegExp("^"+$o.call(Po).replace(Eo,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Do(e){if(!wo(e)||No(e))return!1;var t=xo(e)?Ao:Co;return t.test(Oo(e))}var Io=Do;function Ro(e,t){return e==null?void 0:e[t]}var ko=Ro,Fo=Io,Lo=ko;function Mo(e,t){var r=Lo(e,t);return Fo(r)?r:void 0}var se=Mo,Ho=se,qo=W,Bo=Ho(qo,"Map"),Gt=Bo,zo=se,Uo=zo(Object,"create"),Ve=Uo,mr=Ve;function Go(){this.__data__=mr?mr(null):{},this.size=0}var Wo=Go;function Ko(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}var Jo=Ko,Yo=Ve,Xo="__lodash_hash_undefined__",Vo=Object.prototype,Qo=Vo.hasOwnProperty;function Zo(e){var t=this.__data__;if(Yo){var r=t[e];return r===Xo?void 0:r}return Qo.call(t,e)?t[e]:void 0}var ei=Zo,ti=Ve,ri=Object.prototype,ni=ri.hasOwnProperty;function ai(e){var t=this.__data__;return ti?t[e]!==void 0:ni.call(t,e)}var oi=ai,ii=Ve,si="__lodash_hash_undefined__";function ci(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=ii&&t===void 0?si:t,this}var li=ci,ui=Wo,di=Jo,fi=ei,pi=oi,hi=li;function pe(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}pe.prototype.clear=ui;pe.prototype.delete=di;pe.prototype.get=fi;pe.prototype.has=pi;pe.prototype.set=hi;var vi=pe,br=vi,gi=Je,yi=Gt;function mi(){this.size=0,this.__data__={hash:new br,map:new(yi||gi),string:new br}}var bi=mi;function _i(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}var ji=_i,xi=ji;function Ni(e,t){var r=e.__data__;return xi(t)?r[typeof t=="string"?"string":"hash"]:r.map}var Qe=Ni,wi=Qe;function Oi(e){var t=wi(this,e).delete(e);return this.size-=t?1:0,t}var Ei=Oi,Ci=Qe;function Si(e){return Ci(this,e).get(e)}var Ti=Si,$i=Qe;function Pi(e){return $i(this,e).has(e)}var Ai=Pi,Di=Qe;function Ii(e,t){var r=Di(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this}var Ri=Ii,ki=bi,Fi=Ei,Li=Ti,Mi=Ai,Hi=Ri;function he(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}he.prototype.clear=ki;he.prototype.delete=Fi;he.prototype.get=Li;he.prototype.has=Mi;he.prototype.set=Hi;var un=he,qi=Je,Bi=Gt,zi=un,Ui=200;function Gi(e,t){var r=this.__data__;if(r instanceof qi){var n=r.__data__;if(!Bi||n.length<Ui-1)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new zi(n)}return r.set(e,t),this.size=r.size,this}var Wi=Gi,Ki=Je,Ji=Aa,Yi=Ia,Xi=ka,Vi=La,Qi=Wi;function ve(e){var t=this.__data__=new Ki(e);this.size=t.size}ve.prototype.clear=Ji;ve.prototype.delete=Yi;ve.prototype.get=Xi;ve.prototype.has=Vi;ve.prototype.set=Qi;var Zi=ve,es="__lodash_hash_undefined__";function ts(e){return this.__data__.set(e,es),this}var rs=ts;function ns(e){return this.__data__.has(e)}var as=ns,os=un,is=rs,ss=as;function Me(e){var t=-1,r=e==null?0:e.length;for(this.__data__=new os;++t<r;)this.add(e[t])}Me.prototype.add=Me.prototype.push=is;Me.prototype.has=ss;var cs=Me;function ls(e,t){for(var r=-1,n=e==null?0:e.length;++r<n;)if(t(e[r],r,e))return!0;return!1}var us=ls;function ds(e,t){return e.has(t)}var fs=ds,ps=cs,hs=us,vs=fs,gs=1,ys=2;function ms(e,t,r,n,a,o){var s=r&gs,i=e.length,l=t.length;if(i!=l&&!(s&&l>i))return!1;var c=o.get(e),u=o.get(t);if(c&&u)return c==t&&u==e;var f=-1,p=!0,h=r&ys?new ps:void 0;for(o.set(e,t),o.set(t,e);++f<i;){var v=e[f],g=t[f];if(n)var m=s?n(g,v,f,t,e,o):n(v,g,f,e,t,o);if(m!==void 0){if(m)continue;p=!1;break}if(h){if(!hs(t,function(_,y){if(!vs(h,y)&&(v===_||a(v,_,r,n,o)))return h.push(y)})){p=!1;break}}else if(!(v===g||a(v,g,r,n,o))){p=!1;break}}return o.delete(e),o.delete(t),p}var dn=ms,bs=W,_s=bs.Uint8Array,js=_s;function xs(e){var t=-1,r=Array(e.size);return e.forEach(function(n,a){r[++t]=[a,n]}),r}var Ns=xs;function ws(e){var t=-1,r=Array(e.size);return e.forEach(function(n){r[++t]=n}),r}var Os=ws,_r=Ye,jr=js,Es=an,Cs=dn,Ss=Ns,Ts=Os,$s=1,Ps=2,As="[object Boolean]",Ds="[object Date]",Is="[object Error]",Rs="[object Map]",ks="[object Number]",Fs="[object RegExp]",Ls="[object Set]",Ms="[object String]",Hs="[object Symbol]",qs="[object ArrayBuffer]",Bs="[object DataView]",xr=_r?_r.prototype:void 0,dt=xr?xr.valueOf:void 0;function zs(e,t,r,n,a,o,s){switch(r){case Bs:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case qs:return!(e.byteLength!=t.byteLength||!o(new jr(e),new jr(t)));case As:case Ds:case ks:return Es(+e,+t);case Is:return e.name==t.name&&e.message==t.message;case Fs:case Ms:return e==t+"";case Rs:var i=Ss;case Ls:var l=n&$s;if(i||(i=Ts),e.size!=t.size&&!l)return!1;var c=s.get(e);if(c)return c==t;n|=Ps,s.set(e,t);var u=Cs(i(e),i(t),n,a,o,s);return s.delete(e),u;case Hs:if(dt)return dt.call(e)==dt.call(t)}return!1}var Us=zs;function Gs(e,t){for(var r=-1,n=t.length,a=e.length;++r<n;)e[a+r]=t[r];return e}var Ws=Gs,Ks=Array.isArray,Wt=Ks,Js=Ws,Ys=Wt;function Xs(e,t,r){var n=t(e);return Ys(e)?n:Js(n,r(e))}var Vs=Xs;function Qs(e,t){for(var r=-1,n=e==null?0:e.length,a=0,o=[];++r<n;){var s=e[r];t(s,r,e)&&(o[a++]=s)}return o}var Zs=Qs;function ec(){return[]}var tc=ec,rc=Zs,nc=tc,ac=Object.prototype,oc=ac.propertyIsEnumerable,Nr=Object.getOwnPropertySymbols,ic=Nr?function(e){return e==null?[]:(e=Object(e),rc(Nr(e),function(t){return oc.call(e,t)}))}:nc,sc=ic;function cc(e,t){for(var r=-1,n=Array(e);++r<e;)n[r]=t(r);return n}var lc=cc;function uc(e){return e!=null&&typeof e=="object"}var Ze=uc,dc=Xe,fc=Ze,pc="[object Arguments]";function hc(e){return fc(e)&&dc(e)==pc}var vc=hc,wr=vc,gc=Ze,fn=Object.prototype,yc=fn.hasOwnProperty,mc=fn.propertyIsEnumerable,bc=wr(function(){return arguments}())?wr:function(e){return gc(e)&&yc.call(e,"callee")&&!mc.call(e,"callee")},_c=bc,He={exports:{}};function jc(){return!1}var xc=jc;He.exports;(function(e,t){var r=W,n=xc,a=t&&!t.nodeType&&t,o=a&&!0&&e&&!e.nodeType&&e,s=o&&o.exports===a,i=s?r.Buffer:void 0,l=i?i.isBuffer:void 0,c=l||n;e.exports=c})(He,He.exports);var pn=He.exports,Nc=9007199254740991,wc=/^(?:0|[1-9]\d*)$/;function Oc(e,t){var r=typeof e;return t=t??Nc,!!t&&(r=="number"||r!="symbol"&&wc.test(e))&&e>-1&&e%1==0&&e<t}var Ec=Oc,Cc=9007199254740991;function Sc(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=Cc}var hn=Sc,Tc=Xe,$c=hn,Pc=Ze,Ac="[object Arguments]",Dc="[object Array]",Ic="[object Boolean]",Rc="[object Date]",kc="[object Error]",Fc="[object Function]",Lc="[object Map]",Mc="[object Number]",Hc="[object Object]",qc="[object RegExp]",Bc="[object Set]",zc="[object String]",Uc="[object WeakMap]",Gc="[object ArrayBuffer]",Wc="[object DataView]",Kc="[object Float32Array]",Jc="[object Float64Array]",Yc="[object Int8Array]",Xc="[object Int16Array]",Vc="[object Int32Array]",Qc="[object Uint8Array]",Zc="[object Uint8ClampedArray]",el="[object Uint16Array]",tl="[object Uint32Array]",T={};T[Kc]=T[Jc]=T[Yc]=T[Xc]=T[Vc]=T[Qc]=T[Zc]=T[el]=T[tl]=!0;T[Ac]=T[Dc]=T[Gc]=T[Ic]=T[Wc]=T[Rc]=T[kc]=T[Fc]=T[Lc]=T[Mc]=T[Hc]=T[qc]=T[Bc]=T[zc]=T[Uc]=!1;function rl(e){return Pc(e)&&$c(e.length)&&!!T[Tc(e)]}var nl=rl;function al(e){return function(t){return e(t)}}var ol=al,qe={exports:{}};qe.exports;(function(e,t){var r=on,n=t&&!t.nodeType&&t,a=n&&!0&&e&&!e.nodeType&&e,o=a&&a.exports===n,s=o&&r.process,i=function(){try{var l=a&&a.require&&a.require("util").types;return l||s&&s.binding&&s.binding("util")}catch{}}();e.exports=i})(qe,qe.exports);var Kt=qe.exports,il=nl,sl=ol,Or=Kt,Er=Or&&Or.isTypedArray,cl=Er?sl(Er):il,vn=cl,ll=lc,ul=_c,dl=Wt,fl=pn,pl=Ec,hl=vn,vl=Object.prototype,gl=vl.hasOwnProperty;function yl(e,t){var r=dl(e),n=!r&&ul(e),a=!r&&!n&&fl(e),o=!r&&!n&&!a&&hl(e),s=r||n||a||o,i=s?ll(e.length,String):[],l=i.length;for(var c in e)(t||gl.call(e,c))&&!(s&&(c=="length"||a&&(c=="offset"||c=="parent")||o&&(c=="buffer"||c=="byteLength"||c=="byteOffset")||pl(c,l)))&&i.push(c);return i}var ml=yl,bl=Object.prototype;function _l(e){var t=e&&e.constructor,r=typeof t=="function"&&t.prototype||bl;return e===r}var jl=_l;function xl(e,t){return function(r){return e(t(r))}}var Nl=xl,wl=Nl,Ol=wl(Object.keys,Object),El=Ol,Cl=jl,Sl=El,Tl=Object.prototype,$l=Tl.hasOwnProperty;function Pl(e){if(!Cl(e))return Sl(e);var t=[];for(var r in Object(e))$l.call(e,r)&&r!="constructor"&&t.push(r);return t}var Al=Pl,Dl=Ut,Il=hn;function Rl(e){return e!=null&&Il(e.length)&&!Dl(e)}var kl=Rl,Fl=ml,Ll=Al,Ml=kl;function Hl(e){return Ml(e)?Fl(e):Ll(e)}var ql=Hl,Bl=Vs,zl=sc,Ul=ql;function Gl(e){return Bl(e,Ul,zl)}var Wl=Gl,Cr=Wl,Kl=1,Jl=Object.prototype,Yl=Jl.hasOwnProperty;function Xl(e,t,r,n,a,o){var s=r&Kl,i=Cr(e),l=i.length,c=Cr(t),u=c.length;if(l!=u&&!s)return!1;for(var f=l;f--;){var p=i[f];if(!(s?p in t:Yl.call(t,p)))return!1}var h=o.get(e),v=o.get(t);if(h&&v)return h==t&&v==e;var g=!0;o.set(e,t),o.set(t,e);for(var m=s;++f<l;){p=i[f];var _=e[p],y=t[p];if(n)var j=s?n(y,_,p,t,e,o):n(_,y,p,e,t,o);if(!(j===void 0?_===y||a(_,y,r,n,o):j)){g=!1;break}m||(m=p=="constructor")}if(g&&!m){var x=e.constructor,w=t.constructor;x!=w&&"constructor"in e&&"constructor"in t&&!(typeof x=="function"&&x instanceof x&&typeof w=="function"&&w instanceof w)&&(g=!1)}return o.delete(e),o.delete(t),g}var Vl=Xl,Ql=se,Zl=W,eu=Ql(Zl,"DataView"),tu=eu,ru=se,nu=W,au=ru(nu,"Promise"),ou=au,iu=se,su=W,cu=iu(su,"Set"),lu=cu,uu=se,du=W,fu=uu(du,"WeakMap"),pu=fu,bt=tu,_t=Gt,jt=ou,xt=lu,Nt=pu,gn=Xe,ge=ln,Sr="[object Map]",hu="[object Object]",Tr="[object Promise]",$r="[object Set]",Pr="[object WeakMap]",Ar="[object DataView]",vu=ge(bt),gu=ge(_t),yu=ge(jt),mu=ge(xt),bu=ge(Nt),ne=gn;(bt&&ne(new bt(new ArrayBuffer(1)))!=Ar||_t&&ne(new _t)!=Sr||jt&&ne(jt.resolve())!=Tr||xt&&ne(new xt)!=$r||Nt&&ne(new Nt)!=Pr)&&(ne=function(e){var t=gn(e),r=t==hu?e.constructor:void 0,n=r?ge(r):"";if(n)switch(n){case vu:return Ar;case gu:return Sr;case yu:return Tr;case mu:return $r;case bu:return Pr}return t});var _u=ne,ft=Zi,ju=dn,xu=Us,Nu=Vl,Dr=_u,Ir=Wt,Rr=pn,wu=vn,Ou=1,kr="[object Arguments]",Fr="[object Array]",Ae="[object Object]",Eu=Object.prototype,Lr=Eu.hasOwnProperty;function Cu(e,t,r,n,a,o){var s=Ir(e),i=Ir(t),l=s?Fr:Dr(e),c=i?Fr:Dr(t);l=l==kr?Ae:l,c=c==kr?Ae:c;var u=l==Ae,f=c==Ae,p=l==c;if(p&&Rr(e)){if(!Rr(t))return!1;s=!0,u=!1}if(p&&!u)return o||(o=new ft),s||wu(e)?ju(e,t,r,n,a,o):xu(e,t,l,r,n,a,o);if(!(r&Ou)){var h=u&&Lr.call(e,"__wrapped__"),v=f&&Lr.call(t,"__wrapped__");if(h||v){var g=h?e.value():e,m=v?t.value():t;return o||(o=new ft),a(g,m,r,n,o)}}return p?(o||(o=new ft),Nu(e,t,r,n,a,o)):!1}var Su=Cu,Tu=Su,Mr=Ze;function yn(e,t,r,n,a){return e===t?!0:e==null||t==null||!Mr(e)&&!Mr(t)?e!==e&&t!==t:Tu(e,t,r,n,yn,a)}var $u=yn,Pu=$u;function Au(e,t,r){r=typeof r=="function"?r:void 0;var n=r?r(e,t):void 0;return n===void 0?Pu(e,t,void 0,r):!!n}var Du=Au;const Iu=Ft(Du);var Ru=function(t,r,n,a){var o=n?n.call(a,t,r):void 0;if(o!==void 0)return!!o;if(t===r)return!0;if(typeof t!="object"||!t||typeof r!="object"||!r)return!1;var s=Object.keys(t),i=Object.keys(r);if(s.length!==i.length)return!1;for(var l=Object.prototype.hasOwnProperty.bind(r),c=0;c<s.length;c++){var u=s[c];if(!l(u))return!1;var f=t[u],p=r[u];if(o=n?n.call(a,f,p,u):void 0,o===!1||o===void 0&&f!==p)return!1}return!0};const ku=Ft(Ru);let Fu=(e=21)=>crypto.getRandomValues(new Uint8Array(e)).reduce((t,r)=>(r&=63,r<36?t+=r.toString(36):r<62?t+=(r-26).toString(36).toUpperCase():r>62?t+="-":t+="_",t),"");var Lu="Invariant failed";function C(e,t){if(!e)throw new Error(Lu)}typeof window<"u"&&(window.__CRAFTJS__||(window.__CRAFTJS__={}),window.__CRAFTJS__["@craftjs/utils"]="0.2.5");var Q="ROOT",mn="canvas-ROOT",Mu="Attempting to add a node with duplicated id",Hu="Node cannot be dropped into target parent",qu="Target parent rejects incoming node",Bu="Current parent rejects outgoing node",Hr="Cannot move node that is not a direct child of a Canvas node",zu="Cannot move node into a non-Canvas parent",qr="A top-level Node cannot be moved",Uu="Cannot move node into a descendant",bn="The component type specified for this node (%node_type%) does not exist in the resolver",Gu="The node has specified a canDrag() rule that prevents it from being dragged",Wu=`An Error occurred while deserializing components: Cannot find component <%displayName% /> in resolver map. Please check your resolver in <Editor />
2
2
 
3
3
  Available components in resolver: %availableComponents%
4
4
 
@@ -6,4 +6,4 @@ More info: https://craft.js.org/r/docs/api/editor#props`;function Br(e,t){var r=
6
6
  In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function jn(e){if(Array.isArray(e))return e}function xn(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function Jt(e,t){if(e){if(typeof e=="string")return Et(e,t);var r=Object.prototype.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)?Et(e,t):void 0}}function Et(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function Nn(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
7
7
  In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function wn(e){var t=function(r,n){if(typeof r!="object"||r===null)return r;var a=r[Symbol.toPrimitive];if(a!==void 0){var o=a.call(r,"string");if(typeof o!="object")return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(r)}(e);return typeof t=="symbol"?t:String(t)}var P={UNDO:"HISTORY_UNDO",REDO:"HISTORY_REDO",THROTTLE:"HISTORY_THROTTLE",IGNORE:"HISTORY_IGNORE",MERGE:"HISTORY_MERGE",CLEAR:"HISTORY_CLEAR"},Ju=function(){function e(){ye(this,e),D(this,"timeline",[]),D(this,"pointer",-1)}return me(e,[{key:"add",value:function(t,r){t.length===0&&r.length===0||(this.pointer=this.pointer+1,this.timeline.length=this.pointer,this.timeline[this.pointer]={patches:t,inversePatches:r,timestamp:Date.now()})}},{key:"throttleAdd",value:function(t,r){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:500;if(t.length!==0||r.length!==0){if(this.timeline.length&&this.pointer>=0){var a=this.timeline[this.pointer],o=a.patches,s=a.inversePatches,i=a.timestamp;if(new Date().getTime()-i<n)return void(this.timeline[this.pointer]={timestamp:i,patches:[].concat(L(o),L(t)),inversePatches:[].concat(L(r),L(s))})}this.add(t,r)}}},{key:"merge",value:function(t,r){if(t.length!==0||r.length!==0)if(this.timeline.length&&this.pointer>=0){var n=this.timeline[this.pointer],a=n.inversePatches;this.timeline[this.pointer]={timestamp:n.timestamp,patches:[].concat(L(n.patches),L(t)),inversePatches:[].concat(L(r),L(a))}}else this.add(t,r)}},{key:"clear",value:function(){this.timeline=[],this.pointer=-1}},{key:"canUndo",value:function(){return this.pointer>=0}},{key:"canRedo",value:function(){return this.pointer<this.timeline.length-1}},{key:"undo",value:function(t){if(this.canUndo()){var r=this.timeline[this.pointer].inversePatches;return this.pointer=this.pointer-1,pr(t,r)}}},{key:"redo",value:function(t){if(this.canRedo())return this.pointer=this.pointer+1,pr(t,this.timeline[this.pointer].patches)}}]),e}();function Yu(e,t,r,n){var a,o=b.useMemo(function(){return new Ju},[]),s=b.useRef([]),i=b.useRef(function(){});typeof e=="function"?a=e:(a=e.methods,s.current=e.ignoreHistoryForActions,i.current=e.normalizeHistory);var l=b.useRef(n);l.current=n;var c=b.useRef(t),u=b.useMemo(function(){var m=i.current,_=s.current,y=l.current;return function(j,x){var w,S=r&&zr(r,function(){return j},o),F=_n(fr(j,function(J){var Y,at;switch(x.type){case P.UNDO:return o.undo(J);case P.REDO:return o.redo(J);case P.CLEAR:return o.clear(),q({},J);case P.IGNORE:case P.MERGE:case P.THROTTLE:var ar,or=jn(at=x.payload)||xn(at)||Jt(at)||Nn(),qn=or[0],Bn=or.slice(1);(ar=a(J,S))[qn].apply(ar,L(Bn));break;default:(Y=a(J,S))[x.type].apply(Y,L(x.payload))}}),3),te=F[0],K=F[1],re=F[2];return w=te,y&&y(te,j,{type:x.type,params:x.payload,patches:K},S,function(J){var Y=fr(te,J);w=Y[0],K=[].concat(L(K),L(Y[1])),re=[].concat(L(Y[2]),L(re))}),[P.UNDO,P.REDO].includes(x.type)&&m&&(w=oa(w,m)),[].concat(L(_),[P.UNDO,P.REDO,P.IGNORE,P.CLEAR]).includes(x.type)||(x.type===P.THROTTLE?o.throttleAdd(K,re,x.config&&x.config.rate):x.type===P.MERGE?o.merge(K,re):o.add(K,re)),w}},[o,a,r]),f=b.useCallback(function(){return c.current},[]),p=b.useMemo(function(){return new Xu(f)},[f]),h=b.useCallback(function(m){var _=u(c.current,m);c.current=_,p.notify()},[u,p]);b.useEffect(function(){p.notify()},[p]);var v=b.useMemo(function(){return r?zr(r,function(){return c.current},o):[]},[o,r]),g=b.useMemo(function(){var m=Object.keys(a(null,null)),_=s.current;return q(q({},m.reduce(function(y,j){return y[j]=function(){for(var x=arguments.length,w=new Array(x),S=0;S<x;S++)w[S]=arguments[S];return h({type:j,payload:w})},y},{})),{},{history:{undo:function(){return h({type:P.UNDO})},redo:function(){return h({type:P.REDO})},clear:function(){return h({type:P.CLEAR})},throttle:function(y){return q({},m.filter(function(j){return!_.includes(j)}).reduce(function(j,x){return j[x]=function(){for(var w=arguments.length,S=new Array(w),F=0;F<w;F++)S[F]=arguments[F];return h({type:P.THROTTLE,payload:[x].concat(S),config:{rate:y}})},j},{}))},ignore:function(){return q({},m.filter(function(y){return!_.includes(y)}).reduce(function(y,j){return y[j]=function(){for(var x=arguments.length,w=new Array(x),S=0;S<x;S++)w[S]=arguments[S];return h({type:P.IGNORE,payload:[j].concat(w)})},y},{}))},merge:function(){return q({},m.filter(function(y){return!_.includes(y)}).reduce(function(y,j){return y[j]=function(){for(var x=arguments.length,w=new Array(x),S=0;S<x;S++)w[S]=arguments[S];return h({type:P.MERGE,payload:[j].concat(w)})},y},{}))}}})},[h,a]);return b.useMemo(function(){return{getState:f,subscribe:function(m,_,y){return p.subscribe(m,_,y)},actions:g,query:v,history:o}},[g,v,p,f,o])}function zr(e,t,r){var n=Object.keys(e()).reduce(function(a,o){return q(q({},a),{},D({},o,function(){var s;return(s=e(t()))[o].apply(s,arguments)}))},{});return q(q({},n),{},{history:{canUndo:function(){return r.canUndo()},canRedo:function(){return r.canRedo()}}})}Zn(),Qn();var Xu=function(){function e(t){ye(this,e),D(this,"getState",void 0),D(this,"subscribers",[]),this.getState=t}return me(e,[{key:"subscribe",value:function(t,r,n){var a=this,o=new Vu(function(){return t(a.getState())},r,n);return this.subscribers.push(o),this.unsubscribe.bind(this,o)}},{key:"unsubscribe",value:function(t){if(this.subscribers.length){var r=this.subscribers.indexOf(t);if(r>-1)return this.subscribers.splice(r,1)}}},{key:"notify",value:function(){this.subscribers.forEach(function(t){return t.collect()})}}]),e}(),Vu=function(){function e(t,r){var n=arguments.length>2&&arguments[2]!==void 0&&arguments[2];ye(this,e),D(this,"collected",void 0),D(this,"collector",void 0),D(this,"onChange",void 0),D(this,"id",void 0),this.collector=t,this.onChange=r,n&&this.collect()}return me(e,[{key:"collect",value:function(){try{var t=this.collector();Iu(t,this.collected)||(this.collected=t,this.onChange&&this.onChange(this.collected))}catch(r){console.warn(r)}}}]),e}(),Ee=function(e){var t=e.getBoundingClientRect(),r=t.x,n=t.y,a=t.top,o=t.left,s=t.bottom,i=t.right,l=t.width,c=t.height,u=window.getComputedStyle(e),f={left:parseInt(u.marginLeft),right:parseInt(u.marginRight),bottom:parseInt(u.marginBottom),top:parseInt(u.marginTop)},p={left:parseInt(u.paddingLeft),right:parseInt(u.paddingRight),bottom:parseInt(u.paddingBottom),top:parseInt(u.paddingTop)};return{x:r,y:n,top:a,left:o,bottom:s,right:i,width:l,height:c,outerWidth:Math.round(l+f.left+f.right),outerHeight:Math.round(c+f.top+f.bottom),margin:f,padding:p,inFlow:e.parentElement&&!!function(h){var v=getComputedStyle(h);if(!(u.overflow&&u.overflow!=="visible"||v.float!=="none"||v.display==="grid"||v.display==="flex"&&v["flex-direction"]!=="column")){switch(u.position){case"static":case"relative":break;default:return}switch(e.tagName){case"TR":case"TBODY":case"THEAD":case"TFOOT":return!0}switch(u.display){case"block":case"list-item":case"table":case"flex":case"grid":return!0}}}(e.parentElement)}};function Qu(e,t){const{subscribe:r,getState:n,actions:a,query:o}=e,s=b.useRef(!0),i=b.useRef(null),l=b.useRef(t);l.current=t;const c=b.useCallback(p=>({...p,actions:a,query:o}),[a,o]);s.current&&t&&(i.current=t(n(),o),s.current=!1);const[u,f]=b.useState(c(i.current));return b.useEffect(()=>{let p;return l.current&&(p=r(h=>l.current(h,o),h=>{f(c(h))})),()=>{p&&p()}},[c,o,r]),u}var de,On=function(){return Fu(arguments.length>0&&arguments[0]!==void 0?arguments[0]:10)},Zu=function(){function e(){ye(this,e),D(this,"isEnabled",!0),D(this,"elementIdMap",new WeakMap),D(this,"registry",new Map)}return me(e,[{key:"getElementId",value:function(t){var r=this.elementIdMap.get(t);if(r)return r;var n=On();return this.elementIdMap.set(t,n),n}},{key:"getConnectorId",value:function(t,r){var n=this.getElementId(t);return"".concat(r,"--").concat(n)}},{key:"register",value:function(t,r){var n=this,a=this.getByElement(t,r.name);if(a){if(ku(r.required,a.required))return a;this.getByElement(t,r.name).disable()}var o=null,s=this.getConnectorId(t,r.name);return this.registry.set(s,{id:s,required:r.required,enable:function(){o&&o(),o=r.connector(t,r.required,r.options)},disable:function(){o&&o()},remove:function(){return n.remove(s)}}),this.isEnabled&&this.registry.get(s).enable(),this.registry.get(s)}},{key:"get",value:function(t){return this.registry.get(t)}},{key:"remove",value:function(t){var r=this.get(t);r&&(r.disable(),this.registry.delete(r.id))}},{key:"enable",value:function(){this.isEnabled=!0,this.registry.forEach(function(t){t.enable()})}},{key:"disable",value:function(){this.isEnabled=!1,this.registry.forEach(function(t){t.disable()})}},{key:"getByElement",value:function(t,r){return this.get(this.getConnectorId(t,r))}},{key:"removeByElement",value:function(t,r){return this.remove(this.getConnectorId(t,r))}},{key:"clear",value:function(){this.disable(),this.elementIdMap=new WeakMap,this.registry=new Map}}]),e}();(function(e){e[e.HandlerDisabled=0]="HandlerDisabled",e[e.HandlerEnabled=1]="HandlerEnabled"})(de||(de={}));var En=function(){function e(t){ye(this,e),D(this,"options",void 0),D(this,"registry",new Zu),D(this,"subscribers",new Set),this.options=t}return me(e,[{key:"listen",value:function(t){var r=this;return this.subscribers.add(t),function(){return r.subscribers.delete(t)}}},{key:"disable",value:function(){this.onDisable&&this.onDisable(),this.registry.disable(),this.subscribers.forEach(function(t){t(de.HandlerDisabled)})}},{key:"enable",value:function(){this.onEnable&&this.onEnable(),this.registry.enable(),this.subscribers.forEach(function(t){t(de.HandlerEnabled)})}},{key:"cleanup",value:function(){this.disable(),this.subscribers.clear(),this.registry.clear()}},{key:"addCraftEventListener",value:function(t,r,n,a){var o=function(s){(function(i,l,c){i.craft||(i.craft={stopPropagation:function(){},blockedEvents:{}});for(var u=i.craft&&i.craft.blockedEvents[l]||[],f=0;f<u.length;f++){var p=u[f];if(c!==p&&c.contains(p))return!0}return!1})(s,r,t)||(s.craft.stopPropagation=function(){s.craft.blockedEvents[r]||(s.craft.blockedEvents[r]=[]),s.craft.blockedEvents[r].push(t)},n(s))};return t.addEventListener(r,o,a),function(){return t.removeEventListener(r,o,a)}}},{key:"createConnectorsUsage",value:function(){var t=this,r=this.handlers(),n=new Set,a=!1,o=new Map;return{connectors:Object.entries(r).reduce(function(s,i){var l=_n(i,2),c=l[0],u=l[1];return q(q({},s),{},D({},c,function(f,p,h){var v=function(){var g=t.registry.register(f,{required:p,name:c,options:h,connector:u});return n.add(g.id),g};return o.set(t.registry.getConnectorId(f,c),v),a&&v(),f}))},{}),register:function(){a=!0,o.forEach(function(s){s()})},cleanup:function(){a=!1,n.forEach(function(s){return t.registry.remove(s)})}}}},{key:"derive",value:function(t,r){return new t(this,r)}},{key:"createProxyHandlers",value:function(t,r){var n=[],a=t.handlers(),o=new Proxy(a,{get:function(s,i,l){return i in a==0?Reflect.get(s,i,l):function(c){for(var u=arguments.length,f=new Array(u>1?u-1:0),p=1;p<u;p++)f[p-1]=arguments[p];var h=a[i].apply(a,[c].concat(f));h&&n.push(h)}}});return r(o),function(){n.forEach(function(s){s()})}}},{key:"reflect",value:function(t){return this.createProxyHandlers(this,t)}}]),e}(),ed=function(e){(function(o,s){if(typeof s!="function"&&s!==null)throw new TypeError("Super expression must either be null or a function");o.prototype=Object.create(s&&s.prototype,{constructor:{value:o,writable:!0,configurable:!0}}),Object.defineProperty(o,"prototype",{writable:!1}),s&&wt(o,s)})(a,En);var t,r,n=(t=a,r=function(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}(),function(){var o,s=ue(t);if(r){var i=ue(this).constructor;o=Reflect.construct(s,arguments,i)}else o=s.apply(this,arguments);return function(l,c){if(c&&(typeof c=="object"||typeof c=="function"))return c;if(c!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return pt(l)}(this,o)});function a(o,s){var i;return ye(this,a),D(pt(i=n.call(this,s)),"derived",void 0),D(pt(i),"unsubscribeParentHandlerListener",void 0),i.derived=o,i.options=s,i.unsubscribeParentHandlerListener=i.derived.listen(function(l){switch(l){case de.HandlerEnabled:return i.enable();case de.HandlerDisabled:return i.disable();default:return}}),i}return me(a,[{key:"inherit",value:function(o){return this.createProxyHandlers(this.derived,o)}},{key:"cleanup",value:function(){Ot(ue(a.prototype),"cleanup",this).call(this),this.unsubscribeParentHandlerListener()}}]),a}();function Ur(e,t){t&&(typeof e=="function"?e(t):e.current=t)}function td(e,t){const r=e.ref;return C(typeof r!="string"),b.cloneElement(e,r?{ref:n=>{Ur(r,n),Ur(t,n)}}:{ref:t})}function rd(e){return(t=null,...r)=>{if(!b.isValidElement(t)){if(!t)return;const a=t;return a&&e(a,...r),a}const n=t;return function(a){if(typeof a.type!="string")throw new Error}(n),td(n,e)}}function Cn(e){return Object.keys(e).reduce((t,r)=>(t[r]=rd((...n)=>e[r](...n)),t),{})}const nd=({style:e,className:t,parentDom:r})=>{const n=O.createElement("div",{className:t,style:{position:"fixed",display:"block",opacity:1,borderStyle:"solid",borderWidth:"1px",borderColor:"transparent",zIndex:99999,...e}});return r&&r.ownerDocument!==document?Un.createPortal(n,r.ownerDocument.body):n};var ee=function(e,t){var r="Deprecation warning: ".concat(e," will be deprecated in future relases."),n=t.suggest,a=t.doc;n&&(r+=" Please use ".concat(n," instead.")),a&&(r+="(".concat(a,")")),console.warn(r)},Sn=function(){return typeof window<"u"},ad=function(){return Sn()&&/Linux/i.test(window.navigator.userAgent)},od=function(){return Sn()&&/Chrome/i.test(window.navigator.userAgent)},id=se;(function(){try{var e=id(Object,"defineProperty");return e({},"",{}),e}catch{}})();var Be={exports:{}};Be.exports;(function(e,t){var r=W,n=t&&!t.nodeType&&t,a=n&&!0&&e&&!e.nodeType&&e,o=a&&a.exports===n,s=o?r.Buffer:void 0,i=s?s.allocUnsafe:void 0;function l(c,u){if(u)return c.slice();var f=c.length,p=i?i(f):new c.constructor(f);return c.copy(p),p}e.exports=l})(Be,Be.exports);Be.exports;var Gr=Ye,Wr=Gr?Gr.prototype:void 0;Wr&&Wr.valueOf;var Kr=Kt;Kr&&Kr.isMap;var Jr=Kt;Jr&&Jr.isSet;typeof window<"u"&&(window.__CRAFTJS__||(window.__CRAFTJS__={}),window.__CRAFTJS__["@craftjs/core"]="0.2.12");const Tn=O.createContext(null),$n=({id:e,related:t=!1,children:r})=>O.createElement(Tn.Provider,{value:{id:e,related:t}},r);function Yr(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function $(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Yr(Object(r),!0).forEach(function(n){A(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Yr(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function Ct(e){return Ct=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},Ct(e)}function et(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function sd(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,Dn(n.key),n)}}function tt(e,t,r){return t&&sd(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function A(e,t,r){return(t=Dn(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Yt(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&St(e,t)}function ze(e){return ze=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},ze(e)}function St(e,t){return St=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,n){return r.__proto__=n,r},St(e,t)}function Xt(e,t){if(e==null)return{};var r,n,a=function(s,i){if(s==null)return{};var l,c,u={},f=Object.keys(s);for(c=0;c<f.length;c++)i.indexOf(l=f[c])>=0||(u[l]=s[l]);return u}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n<o.length;n++)t.indexOf(r=o[n])>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function je(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function Vt(e){var t=function(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}();return function(){var r,n=ze(e);if(t){var a=ze(this).constructor;r=Reflect.construct(n,arguments,a)}else r=n.apply(this,arguments);return function(o,s){if(s&&(typeof s=="object"||typeof s=="function"))return s;if(s!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return je(o)}(this,r)}}function Pn(e,t){return function(r){if(Array.isArray(r))return r}(e)||function(r,n){var a=r==null?null:typeof Symbol<"u"&&r[Symbol.iterator]||r["@@iterator"];if(a!=null){var o,s,i,l,c=[],u=!0,f=!1;try{if(i=(a=a.call(r)).next,n!==0)for(;!(u=(o=i.call(a)).done)&&(c.push(o.value),c.length!==n);u=!0);}catch(p){f=!0,s=p}finally{try{if(!u&&a.return!=null&&(l=a.return(),Object(l)!==l))return}finally{if(f)throw s}}return c}}(e,t)||An(e,t)||function(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
8
8
  In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function Ce(e){return function(t){if(Array.isArray(t))return Tt(t)}(e)||function(t){if(typeof Symbol<"u"&&t[Symbol.iterator]!=null||t["@@iterator"]!=null)return Array.from(t)}(e)||An(e)||function(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
9
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function An(e,t){if(e){if(typeof e=="string")return Tt(e,t);var r=Object.prototype.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)?Tt(e,t):void 0}}function Tt(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function Dn(e){var t=function(r,n){if(typeof r!="object"||r===null)return r;var a=r[Symbol.toPrimitive];if(a!==void 0){var o=a.call(r,"string");if(typeof o!="object")return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(r)}(e);return typeof t=="symbol"?t:String(t)}const Qt=b.createContext(null);var In=b.createContext(null),Rn=function(){return b.useContext(In)};function ce(e){var t=Rn(),r=b.useContext(Qt);C(r);var n=Qu(r,e),a=b.useMemo(function(){return t&&t.createConnectorsUsage()},[t]);b.useEffect(function(){return a.register(),function(){a.cleanup()}},[a]);var o=b.useMemo(function(){return a&&Cn(a.connectors)},[a]);return $($({},n),{},{connectors:o,inContext:!!r,store:r})}var cd=["actions","query","connectors"];function rt(e){var t=b.useContext(Tn);C(t);var r=t.id,n=t.related,a=ce(function(u){return r&&u.nodes[r]&&e&&e(u.nodes[r])}),o=a.actions,s=a.connectors,i=Xt(a,cd),l=b.useMemo(function(){return Cn({connect:function(u){return s.connect(u,r)},drag:function(u){return s.drag(u,r)}})},[s,r]),c=b.useMemo(function(){return{setProp:function(u,f){f?o.history.throttle(f).setProp(r,u):o.setProp(r,u)},setCustom:function(u,f){f?o.history.throttle(f).setCustom(r,u):o.setCustom(r,u)},setHidden:function(u){return o.setHidden(r,u)}}},[o,r]);return $($({},i),{},{id:r,related:n,inNodeContext:!!t,actions:c,connectors:l})}var ld=["id","related","actions","inNodeContext","connectors"];function M(e){var t=rt(e),r=t.id,n=t.related,a=t.actions,o=t.inNodeContext,s=t.connectors;return $($({},Xt(t,ld)),{},{actions:a,id:r,related:n,setProp:function(i,l){return ee("useNode().setProp()",{suggest:"useNode().actions.setProp()"}),a.setProp(i,l)},inNodeContext:o,connectors:s})}const ud=({render:e})=>{const{connectors:{connect:t,drag:r}}=M();return typeof e.type=="string"?t(r(O.cloneElement(e))):e},dd=()=>{const{type:e,props:t,nodes:r,hydrationTimestamp:n}=rt(a=>({type:a.data.type,props:a.data.props,nodes:a.data.nodes,hydrationTimestamp:a._hydrationTimestamp}));return b.useMemo(()=>{let a=t.children;r&&r.length>0&&(a=O.createElement(O.Fragment,null,r.map(s=>O.createElement(Zt,{id:s,key:s}))));const o=O.createElement(e,t,a);return typeof e=="string"?O.createElement(ud,{render:o}):o},[e,t,n,r])},fd=({render:e})=>{const{hidden:t}=rt(n=>({hidden:n.data.hidden})),{onRender:r}=ce(n=>({onRender:n.options.onRender}));return t?null:O.createElement(r,{render:e||O.createElement(dd,null)})},Zt=({id:e,render:t})=>O.createElement($n,{id:e},O.createElement(fd,{render:t})),$t={is:"div",canvas:!1,custom:{},hidden:!1},pd={is:"type",canvas:"isCanvas"};function Se({id:e,children:t,...r}){const{is:n}={...$t,...r},{query:a,actions:o}=ce(),{id:s,inNodeContext:i}=rt(),[l]=b.useState(()=>{C(!!e);const c=a.node(s).get();if(i){const u=c.data.linkedNodes[e]?a.node(c.data.linkedNodes[e]).get():null;if(u&&u.data.type===n)return u.id;const f=O.createElement(Se,r,t),p=a.parseReactElement(f).toNodeTree();return o.history.ignore().addLinkedNodeFromTree(p,s,e),p.rootNodeId}return null});return l?O.createElement(Zt,{id:l}):null}const kn=()=>ee("<Canvas />",{suggest:"<Element canvas={true} />"});function Pt({...e}){return b.useEffect(()=>kn(),[]),O.createElement(Se,{...e,canvas:!0})}const hd=()=>{const{timestamp:e}=ce(t=>({timestamp:t.nodes[Q]&&t.nodes[Q]._hydrationTimestamp}));return e?O.createElement(Zt,{id:Q,key:e}):null},vd=({children:e,json:t,data:r})=>{const{actions:n,query:a}=ce();t&&ee("<Frame json={...} />",{suggest:"<Frame data={...} />"});const o=b.useRef(!1);if(!o.current){const s=r||t;if(s)n.history.ignore().deserialize(s);else if(e){const i=O.Children.only(e),l=a.parseReactElement(i).toNodeTree((c,u)=>(u===i&&(c.id=Q),c));n.history.ignore().addNodeTree(l)}o.current=!0}return O.createElement(hd,null)};var Xr;(function(e){e[e.Any=0]="Any",e[e.Id=1]="Id",e[e.Obj=2]="Obj"})(Xr||(Xr={}));const ht=e=>{const{addLinkedNodeFromTree:t,setDOM:r,setNodeEvent:n,replaceNodes:a,reset:o,...s}=e;return s};function Te(e){const{connectors:t,actions:r,query:n,store:a,...o}=ce(e),s=ht(r);return{connectors:t,actions:b.useMemo(()=>({...s,history:{...s.history,ignore:(...i)=>ht(s.history.ignore(...i)),throttle:(...i)=>ht(s.history.throttle(...i))}}),[s]),query:n,store:a,...o}}var Fn=function(e){return Object.fromEntries?Object.fromEntries(e):e.reduce(function(t,r){var n=Pn(r,2),a=n[0],o=n[1];return $($({},t),{},A({},a,o))},{})},V=function(e,t,r){var n=Array.isArray(t)?t:[t],a=$({existOnly:!1,idOnly:!1},r||{}),o=n.filter(function(s){return!!s}).map(function(s){return typeof s=="string"?{node:e[s],exists:!!e[s]}:Ct(s)!=="object"||a.idOnly?{node:null,exists:!1}:{node:s,exists:!!e[s.id]}});return a.existOnly&&C(o.filter(function(s){return!s.exists}).length===0),o},gd=["history"],le=null,Ue=function(e,t){if(typeof t=="string")return t;var r,n=function(a,o){var s=function(i){if(le&&le.resolver===i)return le.reversed;le={resolver:i,reversed:new Map};for(var l=0,c=Object.entries(i);l<c.length;l++){var u=Pn(c[l],2);le.reversed.set(u[1],u[0])}return le.reversed}(a).get(o);return s!==void 0?s:null}(e,t);return C(n,bn.replace("%node_type%",(r=t).name||r.displayName)),n};const yd=(e,t)=>typeof e=="string"?e:{resolvedName:Ue(t,e)},At=(e,t)=>{let{type:r,isCanvas:n,props:a}=e;return a=Object.keys(a).reduce((o,s)=>{const i=a[s];return i==null||typeof i=="function"||(o[s]=s==="children"&&typeof i!="string"?b.Children.map(i,l=>typeof l=="string"?l:At(l,t)):typeof i.type=="function"?At(i,t):i),o},{}),{type:yd(r,t),isCanvas:!!n,props:a}},md=(e,t)=>{const{type:r,props:n,isCanvas:a,name:o,...s}=e;return{...At({type:r,isCanvas:a,props:n},t),...s}};function Dt(e,t){C(typeof t=="string");var r=e.nodes[t],n=function(a){return Dt(e,a)};return{isCanvas:function(){return!!r.data.isCanvas},isRoot:function(){return r.id===Q},isLinkedNode:function(){return r.data.parent&&n(r.data.parent).linkedNodes().includes(r.id)},isTopLevelNode:function(){return this.isRoot()||this.isLinkedNode()},isDeletable:function(){return!this.isTopLevelNode()},isParentOfTopLevelNodes:function(){return r.data.linkedNodes&&Object.keys(r.data.linkedNodes).length>0},isParentOfTopLevelCanvas:function(){return ee("query.node(id).isParentOfTopLevelCanvas",{suggest:"query.node(id).isParentOfTopLevelNodes"}),this.isParentOfTopLevelNodes()},isSelected:function(){return e.events.selected.has(t)},isHovered:function(){return e.events.hovered.has(t)},isDragged:function(){return e.events.dragged.has(t)},get:function(){return r},ancestors:function(){var a=arguments.length>0&&arguments[0]!==void 0&&arguments[0];return function o(s){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],l=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,c=e.nodes[s];return c?(i.push(s),c.data.parent&&(a||!a&&l===0)&&(i=o(c.data.parent,i,l+1)),i):i}(r.data.parent)},descendants:function(){var a=arguments.length>0&&arguments[0]!==void 0&&arguments[0],o=arguments.length>1?arguments[1]:void 0;return function s(i){var l=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],c=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return(a||!a&&c===0)&&e.nodes[i]&&(o!=="childNodes"&&n(i).linkedNodes().forEach(function(u){l.push(u),l=s(u,l,c+1)}),o!=="linkedNodes"&&n(i).childNodes().forEach(function(u){l.push(u),l=s(u,l,c+1)})),l}(t)},linkedNodes:function(){return Object.values(r.data.linkedNodes||{})},childNodes:function(){return r.data.nodes||[]},isDraggable:function(a){try{var o=r;return C(!this.isTopLevelNode(),qr),C(Dt(e,o.data.parent).isCanvas(),Hr),C(o.rules.canDrag(o,n),Gu),!0}catch(s){return a&&a(s),!1}},isDroppable:function(a,o){var s=V(e.nodes,a),i=r;try{C(this.isCanvas(),zu),C(i.rules.canMoveIn(s.map(function(c){return c.node}),i,n),qu);var l={};return s.forEach(function(c){var u=c.node,f=c.exists;if(C(u.rules.canDrop(i,u,n),Hu),f){C(!n(u.id).isTopLevelNode(),qr);var p=n(u.id).descendants(!0);C(!p.includes(i.id)&&i.id!==u.id,Uu);var h=u.data.parent&&e.nodes[u.data.parent];C(h.data.isCanvas,Hr),C(h||!h&&!e.nodes[u.id],Mu),h.id!==i.id&&(l[h.id]||(l[h.id]=[]),l[h.id].push(u))}}),Object.keys(l).forEach(function(c){var u=e.nodes[c];C(u.rules.canMoveOut(l[c],u,n),Bu)}),!0}catch(c){return o&&o(c),!1}},toSerializedNode:function(){return md(r.data,e.options.resolver)},toNodeTree:function(a){var o=[t].concat(Ce(this.descendants(!0,a))).reduce(function(s,i){return s[i]=n(i).get(),s},{});return{rootNodeId:t,nodes:o}},decendants:function(){var a=arguments.length>0&&arguments[0]!==void 0&&arguments[0];return ee("query.node(id).decendants",{suggest:"query.node(id).descendants"}),this.descendants(a)},isTopLevelCanvas:function(){return!this.isRoot()&&!r.data.parent}}}function Ln(e,t,r,n){for(var a={parent:e,index:0,where:"before"},o=0,s=0,i=0,l=0,c=0,u=0,f=0,p=t.length;f<p;f++){var h=t[f];if(u=h.top+h.outerHeight,l=h.left+h.outerWidth/2,c=h.top+h.outerHeight/2,!(s&&h.left>s||i&&c>=i||o&&h.left+h.outerWidth<o))if(a.index=f,h.inFlow){if(n<c){a.where="before";break}a.where="after"}else n<u&&(i=u),r<l?(s=l,a.where="before"):(o=l,a.where="after")}return a}var De=function(e){return typeof e=="string"?e:e.name};function Vr(e,t){var r=e.data.type,n={id:e.id||On(),_hydrationTimestamp:Date.now(),data:$({type:r,name:De(r),displayName:De(r),props:{},custom:{},parent:null,isCanvas:!1,hidden:!1,nodes:[],linkedNodes:{}},e.data),info:{},related:{},events:{selected:!1,dragged:!1,hovered:!1},rules:{canDrag:function(){return!0},canDrop:function(){return!0},canMoveIn:function(){return!0},canMoveOut:function(){return!0}},dom:null};if(n.data.type===Se||n.data.type===Pt){var a=$($({},$t),n.data.props);n.data.props=Object.keys(n.data.props).reduce(function(i,l){return Object.keys($t).includes(l)?n.data[pd[l]||l]=a[l]:i[l]=n.data.props[l],i},{}),n.data.name=De(r=n.data.type),n.data.displayName=De(r),n.data.type===Pt&&(n.data.isCanvas=!0,kn())}t&&t(n);var o=r.craft;if(o){if(n.data.displayName=o.displayName||o.name||n.data.displayName,n.data.props=$($({},o.props||o.defaultProps||{}),n.data.props),n.data.custom=$($({},o.custom||{}),n.data.custom),o.isCanvas!=null&&(n.data.isCanvas=o.isCanvas),o.rules&&Object.keys(o.rules).forEach(function(i){["canDrag","canDrop","canMoveIn","canMoveOut"].includes(i)&&(n.rules[i]=o.rules[i])}),o.related){var s={id:n.id,related:!0};Object.keys(o.related).forEach(function(i){n.related[i]=function(l){return O.createElement($n,s,O.createElement(o.related[i],l))}})}o.info&&(n.info=o.info)}return n}const It=(e,t,r)=>{let{type:n,props:a}=e;const o=((i,l)=>typeof i=="object"&&i.resolvedName?i.resolvedName==="Canvas"?Pt:l[i.resolvedName]:typeof i=="string"?i:null)(n,t);if(!o)return;a=Object.keys(a).reduce((i,l)=>{const c=a[l];return i[l]=c==null?null:typeof c=="object"&&c.resolvedName?It(c,t):l==="children"&&Array.isArray(c)?c.map(u=>typeof u=="string"?u:It(u,t)):c,i},{});const s={...O.createElement(o,{...a})};return{...s,name:Ue(t,s.type)}},bd=(e,t)=>{const{type:r,props:n,...a}=e;C(r!==void 0&&typeof r=="string"||r!==void 0&&r.resolvedName!==void 0,Wu.replace("%displayName%",e.displayName).replace("%availableComponents%",Object.keys(t).join(", ")));const{type:o,name:s,props:i}=It(e,t),{parent:l,custom:c,displayName:u,isCanvas:f,nodes:p,hidden:h}=a;return{type:o,name:s,displayName:u||s,props:i,custom:c||{},isCanvas:!!f,hidden:!!h,parent:l,linkedNodes:a.linkedNodes||a._childCanvas||{},nodes:p||[]}},_d=(e,t)=>{if(t.length<1)return{[e.id]:e};const r=t.map(({rootNodeId:a})=>a),n={...e,data:{...e.data,nodes:r}};return t.reduce((a,o)=>{const s=o.nodes[o.rootNodeId];return{...a,...o.nodes,[s.id]:{...s,data:{...s.data,parent:e.id}}}},{[e.id]:n})},jd=(e,t)=>({rootNodeId:e.id,nodes:_d(e,t)});function Mn(e){const t=e&&e.options,r=()=>Mn(e);return{getDropPlaceholder:(n,a,o,s=i=>e.nodes[i.id].dom)=>{const i=e.nodes[a],l=r().node(i.id).isCanvas()?i:e.nodes[i.data.parent];if(!l)return;const c=l.data.nodes||[],u=Ln(l,c?c.reduce((h,v)=>{const g=s(e.nodes[v]);if(g){const m={id:v,...Ee(g)};h.push(m)}return h},[]):[],o.x,o.y),f=c.length&&e.nodes[c[u.index]],p={placement:{...u,currentNode:f},error:null};return V(e.nodes,n).forEach(({node:h,exists:v})=>{v&&r().node(h.id).isDraggable(g=>p.error=g)}),r().node(l.id).isDroppable(n,h=>p.error=h),p},getOptions:()=>t,getNodes:()=>e.nodes,node:n=>Dt(e,n),getSerializedNodes(){const n=Object.keys(e.nodes).map(a=>[a,this.node(a).toSerializedNode()]);return Fn(n)},getEvent:n=>function(a,o){var s=a.events[o];return{contains:function(i){return s.has(i)},isEmpty:function(){return this.all().length===0},first:function(){return this.all()[0]},last:function(){var i=this.all();return i[i.length-1]},all:function(){return Array.from(s)},size:function(){return this.all().length},at:function(i){return this.all()[i]},raw:function(){return s}}}(e,n),serialize(){return JSON.stringify(this.getSerializedNodes())},parseReactElement:n=>({toNodeTree(a){let o=function(i,l){let c=i;return typeof c=="string"&&(c=O.createElement(b.Fragment,{},c)),Vr({data:{type:c.type,props:{...c.props}}},u=>{l&&l(u,c)})}(n,(i,l)=>{const c=Ue(e.options.resolver,i.data.type);i.data.displayName=i.data.displayName||c,i.data.name=c,a&&a(i,l)}),s=[];return n.props&&n.props.children&&(s=O.Children.toArray(n.props.children).reduce((i,l)=>(O.isValidElement(l)&&i.push(r().parseReactElement(l).toNodeTree(a)),i),[])),jd(o,s)}}),parseSerializedNode:n=>({toNode(a){const o=bd(n,e.options.resolver);C(o.type);const s=typeof a=="string"&&a;return s&&ee("query.parseSerializedNode(...).toNode(id)",{suggest:"query.parseSerializedNode(...).toNode(node => node.id = id)"}),r().parseFreshNode({...s?{id:s}:{},data:o}).toNode(!s&&a)}}),parseFreshNode:n=>({toNode:a=>Vr(n,o=>{o.data.parent===mn&&(o.data.parent=Q);const s=Ue(e.options.resolver,o.data.type);C(s!==null),o.data.displayName=o.data.displayName||s,o.data.name=s,a&&a(o)})}),createNode(n,a){ee(`query.createNode(${n})`,{suggest:`query.parseReactElement(${n}).toNodeTree()`});const o=this.parseReactElement(n).toNodeTree(),s=o.nodes[o.rootNodeId];return a&&(a.id&&(s.id=a.id),a.data&&(s.data={...s.data,...a.data})),s},getState:()=>e}}var xd=function(e){Yt(r,En);var t=Vt(r);function r(){return et(this,r),t.apply(this,arguments)}return tt(r,[{key:"handlers",value:function(){return{connect:function(n,a){},select:function(n,a){},hover:function(n,a){},drag:function(n,a){},drop:function(n,a){},create:function(n,a,o){}}}}]),r}();(function(e){Yt(r,ed);var t=Vt(r);function r(){return et(this,r),t.apply(this,arguments)}return tt(r)})();var Qr=function(e){e.preventDefault()},Rt=function(){function e(t,r){et(this,e),A(this,"store",void 0),A(this,"dragTarget",void 0),A(this,"currentDropTargetId",void 0),A(this,"currentDropTargetCanvasAncestorId",void 0),A(this,"currentIndicator",null),A(this,"currentTargetId",void 0),A(this,"currentTargetChildDimensions",void 0),A(this,"dragError",void 0),A(this,"draggedNodes",void 0),A(this,"onScrollListener",void 0),this.store=t,this.dragTarget=r,this.currentDropTargetId=null,this.currentDropTargetCanvasAncestorId=null,this.currentTargetId=null,this.currentTargetChildDimensions=null,this.currentIndicator=null,this.dragError=null,this.draggedNodes=this.getDraggedNodes(),this.validateDraggedNodes(),this.onScrollListener=this.onScroll.bind(this),window.addEventListener("scroll",this.onScrollListener,!0),window.addEventListener("dragover",Qr,!1)}return tt(e,[{key:"cleanup",value:function(){window.removeEventListener("scroll",this.onScrollListener,!0),window.removeEventListener("dragover",Qr,!1)}},{key:"onScroll",value:function(t){var r=t.target,n=this.store.query.node(Q).get();r instanceof Element&&n&&n.dom&&r.contains(n.dom)&&(this.currentTargetChildDimensions=null)}},{key:"getDraggedNodes",value:function(){return V(this.store.query.getNodes(),this.dragTarget.type==="new"?this.dragTarget.tree.nodes[this.dragTarget.tree.rootNodeId]:this.dragTarget.nodes)}},{key:"validateDraggedNodes",value:function(){var t=this;this.dragTarget.type!=="new"&&this.draggedNodes.forEach(function(r){r.exists&&t.store.query.node(r.node.id).isDraggable(function(n){t.dragError=n})})}},{key:"isNearBorders",value:function(t,r,n){return t.top+e.BORDER_OFFSET>n||t.bottom-e.BORDER_OFFSET<n||t.left+e.BORDER_OFFSET>r||t.right-e.BORDER_OFFSET<r}},{key:"isDiff",value:function(t){return!this.currentIndicator||this.currentIndicator.placement.parent.id!==t.parent.id||this.currentIndicator.placement.index!==t.index||this.currentIndicator.placement.where!==t.where}},{key:"getChildDimensions",value:function(t){var r=this,n=this.currentTargetChildDimensions;return this.currentTargetId===t.id&&n?n:t.data.nodes.reduce(function(a,o){var s=r.store.query.node(o).get().dom;return s&&a.push($({id:o},Ee(s))),a},[])}},{key:"getCanvasAncestor",value:function(t){var r=this;if(t===this.currentDropTargetId&&this.currentDropTargetCanvasAncestorId){var n=this.store.query.node(this.currentDropTargetCanvasAncestorId).get();if(n)return n}return function a(o){var s=r.store.query.node(o).get();return s&&s.data.isCanvas?s:s.data.parent?a(s.data.parent):null}(t)}},{key:"computeIndicator",value:function(t,r,n){var a=this.getCanvasAncestor(t);if(a&&(this.currentDropTargetId=t,this.currentDropTargetCanvasAncestorId=a.id,a.data.parent&&this.isNearBorders(Ee(a.dom),r,n)&&!this.store.query.node(a.id).isLinkedNode()&&(a=this.store.query.node(a.data.parent).get()),a)){this.currentTargetChildDimensions=this.getChildDimensions(a),this.currentTargetId=a.id;var o=Ln(a,this.currentTargetChildDimensions,r,n);if(this.isDiff(o)){var s=this.dragError;s||this.store.query.node(a.id).isDroppable(this.draggedNodes.map(function(c){return c.node}),function(c){s=c});var i=a.data.nodes[o.index],l=i&&this.store.query.node(i).get();return this.currentIndicator={placement:$($({},o),{},{currentNode:l}),error:s},this.currentIndicator}}}},{key:"getIndicator",value:function(){return this.currentIndicator}}]),e}();A(Rt,"BORDER_OFFSET",10);var Zr=function(e,t){if(t.length===1||arguments.length>2&&arguments[2]!==void 0&&arguments[2]){var r=t[0].getBoundingClientRect(),n=r.width,a=r.height,o=t[0].cloneNode(!0);return o.style.position="absolute",o.style.left="-100%",o.style.top="-100%",o.style.width="".concat(n,"px"),o.style.height="".concat(a,"px"),o.style.pointerEvents="none",o.classList.add("drag-shadow"),document.body.appendChild(o),e.dataTransfer.setDragImage(o,0,0),o}var s=document.createElement("div");return s.style.position="absolute",s.style.left="-100%",s.style.top="-100%",s.style.width="100%",s.style.height="100%",s.style.pointerEvents="none",s.classList.add("drag-shadow-container"),t.forEach(function(i){var l=i.getBoundingClientRect(),c=l.width,u=l.height,f=l.top,p=l.left,h=i.cloneNode(!0);h.style.position="absolute",h.style.left="".concat(p,"px"),h.style.top="".concat(f,"px"),h.style.width="".concat(c,"px"),h.style.height="".concat(u,"px"),h.classList.add("drag-shadow"),s.appendChild(h)}),document.body.appendChild(s),e.dataTransfer.setDragImage(s,e.clientX,e.clientY),s},Hn=function(e){Yt(r,xd);var t=Vt(r);function r(){var n;et(this,r);for(var a=arguments.length,o=new Array(a),s=0;s<a;s++)o[s]=arguments[s];return A(je(n=t.call.apply(t,[this].concat(o))),"draggedElementShadow",void 0),A(je(n),"dragTarget",void 0),A(je(n),"positioner",null),A(je(n),"currentSelectedElementIds",[]),n}return tt(r,[{key:"onDisable",value:function(){this.options.store.actions.clearEvents()}},{key:"handlers",value:function(){var n=this,a=this.options.store;return{connect:function(o,s){return a.actions.setDOM(s,o),n.reflect(function(i){i.select(o,s),i.hover(o,s),i.drop(o,s)})},select:function(o,s){var i=n.addCraftEventListener(o,"mousedown",function(c){c.craft.stopPropagation();var u=[];if(s){var f=a.query,p=f.getEvent("selected").all();(n.options.isMultiSelectEnabled(c)||p.includes(s))&&(u=p.filter(function(h){var v=f.node(h).descendants(!0),g=f.node(h).ancestors(!0);return!v.includes(s)&&!g.includes(s)})),u.includes(s)||u.push(s)}a.actions.setNodeEvent("selected",u)}),l=n.addCraftEventListener(o,"click",function(c){c.craft.stopPropagation();var u=a.query.getEvent("selected").all(),f=n.options.isMultiSelectEnabled(c),p=n.currentSelectedElementIds.includes(s),h=Ce(u);f&&p?(h.splice(h.indexOf(s),1),a.actions.setNodeEvent("selected",h)):!f&&u.length>1&&a.actions.setNodeEvent("selected",h=[s]),n.currentSelectedElementIds=h});return function(){i(),l()}},hover:function(o,s){var i=n.addCraftEventListener(o,"mouseover",function(c){c.craft.stopPropagation(),a.actions.setNodeEvent("hovered",s)}),l=null;return n.options.removeHoverOnMouseleave&&(l=n.addCraftEventListener(o,"mouseleave",function(c){c.craft.stopPropagation(),a.actions.setNodeEvent("hovered",null)})),function(){i(),l&&l()}},drop:function(o,s){var i=n.addCraftEventListener(o,"dragover",function(c){if(c.craft.stopPropagation(),c.preventDefault(),n.positioner){var u=n.positioner.computeIndicator(s,c.clientX,c.clientY);u&&a.actions.setIndicator(u)}}),l=n.addCraftEventListener(o,"dragenter",function(c){c.craft.stopPropagation(),c.preventDefault()});return function(){l(),i()}},drag:function(o,s){if(!a.query.node(s).isDraggable())return function(){};o.setAttribute("draggable","true");var i=n.addCraftEventListener(o,"dragstart",function(c){c.craft.stopPropagation();var u=a.query,f=a.actions,p=u.getEvent("selected").all(),h=n.options.isMultiSelectEnabled(c);n.currentSelectedElementIds.includes(s)||(p=h?[].concat(Ce(p),[s]):[s],a.actions.setNodeEvent("selected",p)),f.setNodeEvent("dragged",p);var v=p.map(function(g){return u.node(g).get().dom});n.draggedElementShadow=Zr(c,v,r.forceSingleDragShadow),n.dragTarget={type:"existing",nodes:p},n.positioner=new Rt(n.options.store,n.dragTarget)}),l=n.addCraftEventListener(o,"dragend",function(c){c.craft.stopPropagation(),n.dropElement(function(u,f){u.type!=="new"&&a.actions.move(u.nodes,f.placement.parent.id,f.placement.index+(f.placement.where==="after"?1:0))})});return function(){o.setAttribute("draggable","false"),i(),l()}},create:function(o,s,i){o.setAttribute("draggable","true");var l=n.addCraftEventListener(o,"dragstart",function(u){var f;if(u.craft.stopPropagation(),typeof s=="function"){var p=s();f=O.isValidElement(p)?a.query.parseReactElement(p).toNodeTree():p}else f=a.query.parseReactElement(s).toNodeTree();n.draggedElementShadow=Zr(u,[u.currentTarget],r.forceSingleDragShadow),n.dragTarget={type:"new",tree:f},n.positioner=new Rt(n.options.store,n.dragTarget)}),c=n.addCraftEventListener(o,"dragend",function(u){u.craft.stopPropagation(),n.dropElement(function(f,p){f.type!=="existing"&&(a.actions.addNodeTree(f.tree,p.placement.parent.id,p.placement.index+(p.placement.where==="after"?1:0)),i&&po(i.onCreate)&&i.onCreate(f.tree))})});return function(){o.removeAttribute("draggable"),l(),c()}}}}},{key:"dropElement",value:function(n){var a=this.options.store;if(this.positioner){var o=this.draggedElementShadow,s=this.positioner.getIndicator();this.dragTarget&&s&&!s.error&&n(this.dragTarget,s),o&&(o.parentNode.removeChild(o),this.draggedElementShadow=null),this.dragTarget=null,a.actions.setIndicator(null),a.actions.setNodeEvent("dragged",null),this.positioner.cleanup(),this.positioner=null}}}]),r}();function Nd(e,t,r){var n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:2,a=0,o=0,s=0,i=0,l=e.where;return r?r.inFlow?(s=r.outerWidth,i=n,a=l==="before"?r.top:r.bottom,o=r.left):(s=n,i=r.outerHeight,a=r.top,o=l==="before"?r.left:r.left+r.outerWidth):t&&(a=t.top+t.padding.top,o=t.left+t.padding.left,s=t.outerWidth-t.padding.right-t.padding.left-t.margin.left-t.margin.right,i=n),{top:"".concat(a,"px"),left:"".concat(o,"px"),width:"".concat(s,"px"),height:"".concat(i,"px")}}A(Hn,"forceSingleDragShadow",od()&&ad());const wd=()=>{const{indicator:e,indicatorOptions:t,enabled:r}=ce(a=>({indicator:a.indicator,indicatorOptions:a.options.indicator,enabled:a.options.enabled})),n=Rn();return b.useEffect(()=>{n&&(r?n.enable():n.disable())},[r,n]),e?O.createElement(nd,{className:t.className,style:{...Nd(e.placement,Ee(e.placement.parent.dom),e.placement.currentNode&&Ee(e.placement.currentNode.dom),t.thickness),backgroundColor:e.error?t.error:t.success,transition:t.transition||"0.2s ease-in",...t.style??{}},parentDom:e.placement.parent.dom}):null},Od=({children:e})=>{const t=b.useContext(Qt),r=b.useMemo(()=>t.query.getOptions().handlers(t),[t]);return r?O.createElement(In.Provider,{value:r},O.createElement(wd,null),e):null},en={nodes:{},events:{dragged:new Set,selected:new Set,hovered:new Set},indicator:null,options:{onNodesChange:()=>null,onRender:({render:e})=>e,onBeforeMoveEnd:()=>null,resolver:{},enabled:!0,indicator:{error:"red",success:"rgb(98, 196, 98)"},handlers:e=>new Hn({store:e,removeHoverOnMouseleave:!1,isMultiSelectEnabled:t=>!!t.metaKey}),normalizeNodes:()=>{}}},Ed={methods:function(e,t){return $($({},function(r,n){var a=function(i,l,c){if(function p(h,v){var g=i.nodes[h];typeof g.data.type!="string"&&C(r.options.resolver[g.data.name],bn.replace("%node_type%","".concat(g.data.type.name))),r.nodes[h]=$($({},g),{},{data:$($({},g.data),{},{parent:v})}),g.data.nodes.length>0&&(delete r.nodes[h].data.props.children,g.data.nodes.forEach(function(m){return p(m,g.id)})),Object.values(g.data.linkedNodes).forEach(function(m){return p(m,g.id)})}(i.rootNodeId,l),l||i.rootNodeId!==Q){var u=o(l);if(c.type!=="child")u.data.linkedNodes[c.id]=i.rootNodeId;else{var f=c.index;f!=null?u.data.nodes.splice(f,0,i.rootNodeId):u.data.nodes.push(i.rootNodeId)}}},o=function(i){C(i);var l=r.nodes[i];return C(l),l},s=function i(l){var c=r.nodes[l],u=r.nodes[c.data.parent];if(c.data.nodes&&Ce(c.data.nodes).forEach(function(h){return i(h)}),c.data.linkedNodes&&Object.values(c.data.linkedNodes).map(function(h){return i(h)}),u.data.nodes.includes(l)){var f=u.data.nodes;f.splice(f.indexOf(l),1)}else{var p=Object.keys(u.data.linkedNodes).find(function(h){return u.data.linkedNodes[h]===h});p&&delete u.data.linkedNodes[p]}(function(h,v){Object.keys(h.events).forEach(function(g){var m=h.events[g];m&&m.has&&m.has(v)&&(h.events[g]=new Set(Array.from(m).filter(function(_){return v!==_})))})})(r,l),delete r.nodes[l]};return{addLinkedNodeFromTree:function(i,l,c){var u=o(l).data.linkedNodes[c];u&&s(u),a(i,l,{type:"linked",id:c})},add:function(i,l,c){var u=[i];Array.isArray(i)&&(ee("actions.add(node: Node[])",{suggest:"actions.add(node: Node)"}),u=i),u.forEach(function(f){a({nodes:A({},f.id,f),rootNodeId:f.id},l,{type:"child",index:c})})},addNodeTree:function(i,l,c){a(i,l,{type:"child",index:c})},delete:function(i){V(r.nodes,i,{existOnly:!0,idOnly:!0}).forEach(function(l){var c=l.node;C(!n.node(c.id).isTopLevelNode()),s(c.id)})},deserialize:function(i){var l=typeof i=="string"?JSON.parse(i):i,c=Object.keys(l).map(function(u){var f=u;return u===mn&&(f=Q),[f,n.parseSerializedNode(l[u]).toNode(function(p){return p.id=f})]});this.replaceNodes(Fn(c))},move:function(i,l,c){var u=V(r.nodes,i,{existOnly:!0}),f=r.nodes[l],p=new Set;u.forEach(function(h,v){var g=h.node,m=g.id,_=g.data.parent;n.node(l).isDroppable([m],function(x){throw new Error(x)}),r.options.onBeforeMoveEnd(g,f,r.nodes[_]);var y=r.nodes[_].data.nodes;p.add(y);var j=y.indexOf(m);y[j]="$$",f.data.nodes.splice(c+v,0,m),r.nodes[m].data.parent=l}),p.forEach(function(h){var v=h.length;Ce(h).reverse().forEach(function(g,m){g==="$$"&&h.splice(v-1-m,1)})})},replaceNodes:function(i){this.clearEvents(),r.nodes=i},clearEvents:function(){this.setNodeEvent("selected",null),this.setNodeEvent("hovered",null),this.setNodeEvent("dragged",null),this.setIndicator(null)},reset:function(){this.clearEvents(),this.replaceNodes({})},setOptions:function(i){i(r.options)},setNodeEvent:function(i,l){if(r.events[i].forEach(function(f){r.nodes[f]&&(r.nodes[f].events[i]=!1)}),r.events[i]=new Set,l){var c=V(r.nodes,l,{idOnly:!0,existOnly:!0}),u=new Set(c.map(function(f){return f.node.id}));u.forEach(function(f){r.nodes[f].events[i]=!0}),r.events[i]=u}},setCustom:function(i,l){V(r.nodes,i,{idOnly:!0,existOnly:!0}).forEach(function(c){return l(r.nodes[c.node.id].data.custom)})},setDOM:function(i,l){r.nodes[i]&&(r.nodes[i].dom=l)},setIndicator:function(i){i&&(!i.placement.parent.dom||i.placement.currentNode&&!i.placement.currentNode.dom)||(r.indicator=i)},setHidden:function(i,l){r.nodes[i].data.hidden=l},setProp:function(i,l){V(r.nodes,i,{idOnly:!0,existOnly:!0}).forEach(function(c){return l(r.nodes[c.node.id].data.props)})},selectNode:function(i){if(i){var l=V(r.nodes,i,{idOnly:!0,existOnly:!0});this.setNodeEvent("selected",l.map(function(c){return c.node.id}))}else this.setNodeEvent("selected",null);this.setNodeEvent("hovered",null)}}}(e,t)),{},{setState:function(r){var n=Xt(this,gd);r(e,n)}})},ignoreHistoryForActions:["setDOM","setNodeEvent","selectNode","clearEvents","setOptions","setIndicator"],normalizeHistory:e=>{Object.keys(e.events).forEach(t=>{Array.from(e.events[t]||[]).forEach(r=>{e.nodes[r]||e.events[t].delete(r)})}),Object.keys(e.nodes).forEach(t=>{const r=e.nodes[t];Object.keys(r.events).forEach(n=>{r.events[n]&&e.events[n]&&!e.events[n].has(r.id)&&(r.events[n]=!1)})})}},Cd=(e,t)=>Yu(Ed,{...en,options:{...en.options,...e}},Mn,t),Sd=({children:e,...t})=>{t.resolver!==void 0&&C(typeof t.resolver=="object"&&!Array.isArray(t.resolver)&&t.resolver!==null);const r=b.useRef(t),n=Cd(r.current,(a,o,s,i,l)=>{if(!s)return;const{patches:c,...u}=s;for(let f=0;f<c.length;f++){const{path:p}=c[f],h=p.length>2&&p[0]==="nodes"&&p[2]==="data";if([P.IGNORE,P.THROTTLE].includes(u.type)&&u.params&&(u.type=u.params[0]),["setState","deserialize"].includes(u.type)||h){l(v=>{a.options.normalizeNodes&&a.options.normalizeNodes(v,o,u,i)});break}}});return b.useEffect(()=>{n&&t.enabled!==void 0&&n.query.getOptions().enabled!==t.enabled&&n.actions.setOptions(a=>{a.enabled=t.enabled})},[n,t.enabled]),b.useEffect(()=>{n.subscribe(a=>({json:n.query.serialize()}),()=>{n.query.getOptions().onNodesChange(n.query)})},[n]),n?b.createElement(Qt.Provider,{value:n},b.createElement(Od,null,e)):null},E={display:"flex",flexDirection:"column",justifyContent:"flex-start",alignItems:"stretch",flexWrap:"nowrap",gap:0,padding:16,paddingTop:16,paddingRight:16,paddingBottom:16,paddingLeft:16,margin:0,marginTop:0,marginRight:0,marginBottom:0,marginLeft:0,background:"transparent",borderWidth:0,borderStyle:"none",borderColor:"#d1d5db",borderRadius:0,width:"100%",height:"auto",minHeight:"40px",overflow:"visible",opacity:1,boxShadow:"none"},B={content:"Edit this text",fontSize:16,fontWeight:"400",fontFamily:"inherit",color:"#1a1a1a",textAlign:"left",lineHeight:1.5,letterSpacing:0,padding:0,margin:0},R={label:"Button",fontSize:14,fontWeight:"500",color:"#ffffff",textAlign:"center",background:"#3b82f6",padding:0,paddingTop:10,paddingRight:20,paddingBottom:10,paddingLeft:20,borderWidth:0,borderStyle:"none",borderColor:"transparent",borderRadius:6,width:"auto",cursor:"pointer"},ae={src:"",alt:"Image",objectFit:"cover",width:"100%",height:"200px",borderRadius:0},kt={width:"100%",height:"24px"},nt=({children:e,display:t=E.display,flexDirection:r=E.flexDirection,justifyContent:n=E.justifyContent,alignItems:a=E.alignItems,flexWrap:o=E.flexWrap,gap:s=E.gap,paddingTop:i=E.paddingTop,paddingRight:l=E.paddingRight,paddingBottom:c=E.paddingBottom,paddingLeft:u=E.paddingLeft,marginTop:f=E.marginTop,marginRight:p=E.marginRight,marginBottom:h=E.marginBottom,marginLeft:v=E.marginLeft,background:g=E.background,borderWidth:m=E.borderWidth,borderStyle:_=E.borderStyle,borderColor:y=E.borderColor,borderRadius:j=E.borderRadius,width:x=E.width,height:w=E.height,minHeight:S=E.minHeight,overflow:F=E.overflow,opacity:te=E.opacity,boxShadow:K=E.boxShadow})=>{const{connectors:{connect:re,drag:J}}=M();return d.jsx("div",{ref:Y=>{Y&&re(J(Y))},style:{display:t,flexDirection:r,justifyContent:n,alignItems:a,flexWrap:o,gap:s,paddingTop:i,paddingRight:l,paddingBottom:c,paddingLeft:u,marginTop:f,marginRight:p,marginBottom:h,marginLeft:v,background:g,borderWidth:m>0?m:void 0,borderStyle:m>0?_:void 0,borderColor:m>0?y:void 0,borderRadius:j,width:x,height:w,minHeight:S,overflow:F,opacity:te,boxShadow:K!=="none"?K:void 0},children:e})};nt.craft={displayName:"Container",props:{...E},rules:{canDrag:()=>!0,canMoveIn:()=>!0,canMoveOut:()=>!0}};function Td(){return d.jsx("div",{className:"canvas-frame-wrapper",children:d.jsx("div",{className:"canvas-frame",children:d.jsx(vd,{children:d.jsx(Se,{is:nt,canvas:!0,display:"flex",flexDirection:"column",padding:24,minHeight:"600px",width:"100%",background:"#ffffff"})})})})}function $d({render:e}){const{id:t}=M(),{isSelected:r,isHovered:n,displayName:a,isCanvas:o}=M(l=>{var c;return{isSelected:l.events.selected,isHovered:l.events.hovered,displayName:((c=l.data.custom)==null?void 0:c.displayName)||l.data.displayName||l.data.type,isCanvas:l.data.isCanvas}}),{actions:s}=Te(),i=b.useCallback(l=>{l.stopPropagation(),s.delete(t)},[s,t]);return t==="ROOT"?d.jsx(d.Fragment,{children:e}):d.jsxs("div",{className:["craft-node",r?"craft-node--selected":"",n&&!r?"craft-node--hovered":"",o?"craft-node--canvas":""].filter(Boolean).join(" "),style:{position:"relative"},children:[e,r&&d.jsxs("div",{className:"craft-node__toolbar",children:[d.jsx("span",{className:"craft-node__label",children:String(a)}),d.jsx("button",{className:"craft-node__delete",onClick:i,title:"Delete",children:"×"})]})]})}function Pd(){const{files:e,currentFile:t,currentFileName:r,isDirty:n,mode:a,setCurrentFileName:o,saveFile:s,createFile:i,deleteFile:l,loadFile:c,setMode:u}=z(),{canUndo:f,canRedo:p,actions:h}=Te((y,j)=>({canUndo:j.history.canUndo(),canRedo:j.history.canRedo()})),v=b.useCallback(()=>{const y=prompt("Canvas name:");y!=null&&y.trim()&&i(y.trim())},[i]),g=b.useCallback(()=>{t&&confirm(`Delete "${r}"?`)&&l(t)},[t,r,l]),m=b.useCallback(y=>{const j=y.target.value;j&&c(j)},[c]),_=b.useCallback(()=>{s()},[s]);return d.jsxs("div",{className:"canvas-toolbar",children:[d.jsxs("div",{className:"canvas-toolbar__left",children:[t&&d.jsx("input",{className:"canvas-toolbar__name",value:r,onChange:y=>o(y.target.value),placeholder:"Canvas name"}),n&&d.jsx("span",{className:"canvas-toolbar__dirty",children:"*"})]}),d.jsxs("div",{className:"canvas-toolbar__center",children:[d.jsxs("select",{className:"canvas-toolbar__file-picker",value:t||"",onChange:m,children:[d.jsx("option",{value:"",disabled:!0,children:"Select canvas..."}),e.map(y=>d.jsx("option",{value:y.path,children:y.name},y.path))]}),d.jsx("button",{className:"canvas-toolbar__btn",onClick:v,title:"New canvas",children:"+ New"}),d.jsx("button",{className:"canvas-toolbar__btn",onClick:_,disabled:!t,title:"Save (Cmd+S)",children:"Save"}),d.jsx("button",{className:"canvas-toolbar__btn canvas-toolbar__btn--danger",onClick:g,disabled:!t,title:"Delete canvas",children:"Delete"})]}),d.jsxs("div",{className:"canvas-toolbar__right",children:[d.jsx("button",{className:"canvas-toolbar__btn",onClick:()=>h.history.undo(),disabled:!f,title:"Undo",children:"↩"}),d.jsx("button",{className:"canvas-toolbar__btn",onClick:()=>h.history.redo(),disabled:!p,title:"Redo",children:"↪"}),d.jsx("div",{className:"canvas-toolbar__divider"}),d.jsx("button",{className:`canvas-toolbar__btn ${a==="design"?"canvas-toolbar__btn--active":""}`,onClick:()=>u("design"),children:"Design"}),d.jsx("button",{className:`canvas-toolbar__btn ${a==="preview"?"canvas-toolbar__btn--active":""}`,onClick:()=>u("preview"),children:"Preview"})]})]})}const er=({content:e=B.content,fontSize:t=B.fontSize,fontWeight:r=B.fontWeight,fontFamily:n=B.fontFamily,color:a=B.color,textAlign:o=B.textAlign,lineHeight:s=B.lineHeight,letterSpacing:i=B.letterSpacing,padding:l=B.padding,margin:c=B.margin})=>{const{connectors:{connect:u,drag:f},actions:{setProp:p},isEditing:h}=M(y=>({isEditing:y.events.selected})),[v,g]=b.useState(!1),m=b.useCallback(()=>{g(!0)},[]),_=b.useCallback(y=>{g(!1),p(j=>{j.content=y.currentTarget.textContent||""})},[p]);return d.jsx("p",{ref:y=>{y&&u(f(y))},contentEditable:v,suppressContentEditableWarning:!0,onDoubleClick:m,onBlur:_,style:{fontSize:t,fontWeight:r,fontFamily:n,color:a,textAlign:o,lineHeight:s,letterSpacing:i,padding:l,margin:c,outline:"none",cursor:v?"text":"default",minWidth:20},children:e})};er.craft={displayName:"Text",props:{...B},rules:{canDrag:()=>!0,canMoveIn:()=>!1}};const tr=({label:e=R.label,fontSize:t=R.fontSize,fontWeight:r=R.fontWeight,color:n=R.color,textAlign:a=R.textAlign,background:o=R.background,paddingTop:s=R.paddingTop,paddingRight:i=R.paddingRight,paddingBottom:l=R.paddingBottom,paddingLeft:c=R.paddingLeft,borderWidth:u=R.borderWidth,borderStyle:f=R.borderStyle,borderColor:p=R.borderColor,borderRadius:h=R.borderRadius,width:v=R.width,cursor:g=R.cursor})=>{const{connectors:{connect:m,drag:_},actions:{setProp:y}}=M(),[j,x]=b.useState(!1),w=b.useCallback(()=>{x(!0)},[]),S=b.useCallback(F=>{x(!1),y(te=>{te.label=F.currentTarget.textContent||""})},[y]);return d.jsx("button",{ref:F=>{F&&m(_(F))},contentEditable:j,suppressContentEditableWarning:!0,onDoubleClick:w,onBlur:S,style:{fontSize:t,fontWeight:r,color:n,textAlign:a,background:o,paddingTop:s,paddingRight:i,paddingBottom:l,paddingLeft:c,borderWidth:u>0?u:0,borderStyle:u>0?f:"none",borderColor:u>0?p:"transparent",borderRadius:h,width:v,cursor:j?"text":g,outline:"none",fontFamily:"inherit",display:"inline-flex",alignItems:"center",justifyContent:"center"},children:e})};tr.craft={displayName:"Button",props:{...R},rules:{canDrag:()=>!0,canMoveIn:()=>!1}};const rr=({src:e=ae.src,alt:t=ae.alt,objectFit:r=ae.objectFit,width:n=ae.width,height:a=ae.height,borderRadius:o=ae.borderRadius})=>{const{connectors:{connect:s,drag:i}}=M();return e?d.jsx("img",{ref:l=>{l&&s(i(l))},src:e,alt:t,style:{objectFit:r,width:n,height:a,borderRadius:o,display:"block"}}):d.jsx("div",{ref:l=>{l&&s(i(l))},style:{width:n,height:a,borderRadius:o,display:"flex",alignItems:"center",justifyContent:"center",background:"#f0f0f0",color:"#999",fontSize:13,border:"1px dashed #ccc"},children:"Image placeholder"})};rr.craft={displayName:"Image",props:{...ae},rules:{canDrag:()=>!0,canMoveIn:()=>!1}};const nr=({width:e=kt.width,height:t=kt.height})=>{const{connectors:{connect:r,drag:n},selected:a}=M(o=>({selected:o.events.selected}));return d.jsx("div",{ref:o=>{o&&r(n(o))},style:{width:e,height:t,border:a?"1px dashed var(--p-border-active, #58a6ff)":"1px dashed transparent",background:a?"rgba(88, 166, 255, 0.05)":"transparent",transition:"border-color 150ms ease, background 150ms ease"}})};nr.craft={displayName:"Spacer",props:{...kt},rules:{canDrag:()=>!0,canMoveIn:()=>!1}};const Ad=[{name:"Container",icon:"▦",element:d.jsx(Se,{is:nt,canvas:!0})},{name:"Text",icon:"T",element:d.jsx(er,{})},{name:"Button",icon:"▮",element:d.jsx(tr,{})},{name:"Image",icon:"▨",element:d.jsx(rr,{})},{name:"Spacer",icon:"⊟",element:d.jsx(nr,{})}];function Dd(){const{connectors:e}=Te();return d.jsxs("div",{className:"component-palette",children:[d.jsx("div",{className:"component-palette__header",children:"Components"}),d.jsx("div",{className:"component-palette__list",children:Ad.map(t=>d.jsxs("div",{ref:r=>{r&&e.create(r,t.element)},className:"component-palette__item",children:[d.jsx("span",{className:"component-palette__icon",children:t.icon}),d.jsx("span",{className:"component-palette__name",children:t.name})]},t.name))})]})}function Id(){const{actions:{setProp:e},props:t}=M(n=>({props:n.data.props}));if(!("display"in t))return null;const r=t;return d.jsxs("div",{className:"prop-section",children:[d.jsx("div",{className:"prop-section__title",children:"Layout"}),d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Display"}),d.jsxs("select",{className:"prop-field__input",value:String(r.display||"flex"),onChange:n=>e(a=>{a.display=n.target.value}),children:[d.jsx("option",{value:"flex",children:"Flex"}),d.jsx("option",{value:"grid",children:"Grid"}),d.jsx("option",{value:"block",children:"Block"})]})]}),r.display==="flex"&&d.jsxs(d.Fragment,{children:[d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Direction"}),d.jsxs("select",{className:"prop-field__input",value:String(r.flexDirection||"column"),onChange:n=>e(a=>{a.flexDirection=n.target.value}),children:[d.jsx("option",{value:"row",children:"Row"}),d.jsx("option",{value:"row-reverse",children:"Row Reverse"}),d.jsx("option",{value:"column",children:"Column"}),d.jsx("option",{value:"column-reverse",children:"Column Reverse"})]})]}),d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Justify"}),d.jsxs("select",{className:"prop-field__input",value:String(r.justifyContent||"flex-start"),onChange:n=>e(a=>{a.justifyContent=n.target.value}),children:[d.jsx("option",{value:"flex-start",children:"Start"}),d.jsx("option",{value:"flex-end",children:"End"}),d.jsx("option",{value:"center",children:"Center"}),d.jsx("option",{value:"space-between",children:"Space Between"}),d.jsx("option",{value:"space-around",children:"Space Around"}),d.jsx("option",{value:"space-evenly",children:"Space Evenly"})]})]}),d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Align"}),d.jsxs("select",{className:"prop-field__input",value:String(r.alignItems||"stretch"),onChange:n=>e(a=>{a.alignItems=n.target.value}),children:[d.jsx("option",{value:"flex-start",children:"Start"}),d.jsx("option",{value:"flex-end",children:"End"}),d.jsx("option",{value:"center",children:"Center"}),d.jsx("option",{value:"stretch",children:"Stretch"}),d.jsx("option",{value:"baseline",children:"Baseline"})]})]}),d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Wrap"}),d.jsxs("select",{className:"prop-field__input",value:String(r.flexWrap||"nowrap"),onChange:n=>e(a=>{a.flexWrap=n.target.value}),children:[d.jsx("option",{value:"nowrap",children:"No Wrap"}),d.jsx("option",{value:"wrap",children:"Wrap"}),d.jsx("option",{value:"wrap-reverse",children:"Wrap Reverse"})]})]}),d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Gap"}),d.jsx("input",{className:"prop-field__input",type:"number",min:0,value:Number(r.gap||0),onChange:n=>e(a=>{a.gap=parseInt(n.target.value)||0})})]})]})]})}function tn({label:e,prefix:t,props:r,setProp:n}){const a=["Top","Right","Bottom","Left"];return d.jsxs("div",{className:"prop-quad",children:[d.jsx("span",{className:"prop-quad__label",children:e}),d.jsx("div",{className:"prop-quad__inputs",children:a.map(o=>{const s=`${t}${o}`;return d.jsx("input",{className:"prop-quad__input",type:"number",min:0,value:Number(r[s]||0),title:o,placeholder:o[0],onChange:i=>n(l=>{l[s]=parseInt(i.target.value)||0})},s)})})]})}function Rd(){const{actions:{setProp:e},props:t}=M(o=>({props:o.data.props})),r=t,n="paddingTop"in r||"padding"in r,a="marginTop"in r||"margin"in r;return!n&&!a?null:d.jsxs("div",{className:"prop-section",children:[d.jsx("div",{className:"prop-section__title",children:"Spacing"}),n&&d.jsx(tn,{label:"Padding",prefix:"padding",props:r,setProp:e}),a&&d.jsx(tn,{label:"Margin",prefix:"margin",props:r,setProp:e})]})}function kd(){const{actions:{setProp:e},props:t}=M(a=>({props:a.data.props})),r=t;return"width"in r||"height"in r?d.jsxs("div",{className:"prop-section",children:[d.jsx("div",{className:"prop-section__title",children:"Size"}),"width"in r&&d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Width"}),d.jsx("input",{className:"prop-field__input",type:"text",value:String(r.width||"auto"),onChange:a=>e(o=>{o.width=a.target.value})})]}),"height"in r&&d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Height"}),d.jsx("input",{className:"prop-field__input",type:"text",value:String(r.height||"auto"),onChange:a=>e(o=>{o.height=a.target.value})})]}),"minHeight"in r&&d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Min Height"}),d.jsx("input",{className:"prop-field__input",type:"text",value:String(r.minHeight||""),onChange:a=>e(o=>{o.minHeight=a.target.value})})]}),"overflow"in r&&d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Overflow"}),d.jsxs("select",{className:"prop-field__input",value:String(r.overflow||"visible"),onChange:a=>e(o=>{o.overflow=a.target.value}),children:[d.jsx("option",{value:"visible",children:"Visible"}),d.jsx("option",{value:"hidden",children:"Hidden"}),d.jsx("option",{value:"scroll",children:"Scroll"}),d.jsx("option",{value:"auto",children:"Auto"})]})]})]}):null}function Fd(){const{actions:{setProp:e},props:t}=M(a=>({props:a.data.props})),r=t;return"fontSize"in r||"fontWeight"in r||"content"in r||"label"in r?d.jsxs("div",{className:"prop-section",children:[d.jsx("div",{className:"prop-section__title",children:"Typography"}),"content"in r&&d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Content"}),d.jsx("input",{className:"prop-field__input",type:"text",value:String(r.content||""),onChange:a=>e(o=>{o.content=a.target.value})})]}),"label"in r&&d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Label"}),d.jsx("input",{className:"prop-field__input",type:"text",value:String(r.label||""),onChange:a=>e(o=>{o.label=a.target.value})})]}),"fontSize"in r&&d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Font Size"}),d.jsx("input",{className:"prop-field__input",type:"number",min:1,max:200,value:Number(r.fontSize||16),onChange:a=>e(o=>{o.fontSize=parseInt(a.target.value)||16})})]}),"fontWeight"in r&&d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Font Weight"}),d.jsxs("select",{className:"prop-field__input",value:String(r.fontWeight||"400"),onChange:a=>e(o=>{o.fontWeight=a.target.value}),children:[d.jsx("option",{value:"100",children:"Thin"}),d.jsx("option",{value:"300",children:"Light"}),d.jsx("option",{value:"400",children:"Regular"}),d.jsx("option",{value:"500",children:"Medium"}),d.jsx("option",{value:"600",children:"Semibold"}),d.jsx("option",{value:"700",children:"Bold"}),d.jsx("option",{value:"900",children:"Black"})]})]}),"fontFamily"in r&&d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Font Family"}),d.jsx("input",{className:"prop-field__input",type:"text",value:String(r.fontFamily||"inherit"),onChange:a=>e(o=>{o.fontFamily=a.target.value})})]}),"color"in r&&!("background"in r)&&d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Color"}),d.jsxs("div",{className:"prop-field__color-row",children:[d.jsx("input",{className:"prop-field__color-swatch",type:"color",value:String(r.color||"#000000"),onChange:a=>e(o=>{o.color=a.target.value})}),d.jsx("input",{className:"prop-field__input",type:"text",value:String(r.color||"#000000"),onChange:a=>e(o=>{o.color=a.target.value})})]})]}),"textAlign"in r&&d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Text Align"}),d.jsxs("select",{className:"prop-field__input",value:String(r.textAlign||"left"),onChange:a=>e(o=>{o.textAlign=a.target.value}),children:[d.jsx("option",{value:"left",children:"Left"}),d.jsx("option",{value:"center",children:"Center"}),d.jsx("option",{value:"right",children:"Right"}),d.jsx("option",{value:"justify",children:"Justify"})]})]}),"lineHeight"in r&&d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Line Height"}),d.jsx("input",{className:"prop-field__input",type:"number",step:.1,min:.5,max:4,value:Number(r.lineHeight||1.5),onChange:a=>e(o=>{o.lineHeight=parseFloat(a.target.value)||1.5})})]})]}):null}function Ld(){const{actions:{setProp:e},props:t}=M(n=>({props:n.data.props})),r=t;return"background"in r?d.jsxs("div",{className:"prop-section",children:[d.jsx("div",{className:"prop-section__title",children:"Background"}),d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Color"}),d.jsxs("div",{className:"prop-field__color-row",children:[d.jsx("input",{className:"prop-field__color-swatch",type:"color",value:String(r.background||"#ffffff").startsWith("#")?String(r.background):"#ffffff",onChange:n=>e(a=>{a.background=n.target.value})}),d.jsx("input",{className:"prop-field__input",type:"text",value:String(r.background||"transparent"),onChange:n=>e(a=>{a.background=n.target.value})})]})]}),"opacity"in r&&d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Opacity"}),d.jsx("input",{className:"prop-field__input",type:"number",step:.05,min:0,max:1,value:Number(r.opacity??1),onChange:n=>e(a=>{a.opacity=parseFloat(n.target.value)})})]})]}):null}function Md(){const{actions:{setProp:e},props:t}=M(n=>({props:n.data.props})),r=t;return!("borderWidth"in r)&&!("borderRadius"in r)?null:d.jsxs("div",{className:"prop-section",children:[d.jsx("div",{className:"prop-section__title",children:"Border"}),"borderWidth"in r&&d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Width"}),d.jsx("input",{className:"prop-field__input",type:"number",min:0,max:20,value:Number(r.borderWidth||0),onChange:n=>e(a=>{a.borderWidth=parseInt(n.target.value)||0})})]}),"borderStyle"in r&&Number(r.borderWidth||0)>0&&d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Style"}),d.jsxs("select",{className:"prop-field__input",value:String(r.borderStyle||"solid"),onChange:n=>e(a=>{a.borderStyle=n.target.value}),children:[d.jsx("option",{value:"solid",children:"Solid"}),d.jsx("option",{value:"dashed",children:"Dashed"}),d.jsx("option",{value:"dotted",children:"Dotted"})]})]}),"borderColor"in r&&Number(r.borderWidth||0)>0&&d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Color"}),d.jsxs("div",{className:"prop-field__color-row",children:[d.jsx("input",{className:"prop-field__color-swatch",type:"color",value:String(r.borderColor||"#d1d5db"),onChange:n=>e(a=>{a.borderColor=n.target.value})}),d.jsx("input",{className:"prop-field__input",type:"text",value:String(r.borderColor||"#d1d5db"),onChange:n=>e(a=>{a.borderColor=n.target.value})})]})]}),"borderRadius"in r&&d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Radius"}),d.jsx("input",{className:"prop-field__input",type:"number",min:0,max:100,value:Number(r.borderRadius||0),onChange:n=>e(a=>{a.borderRadius=parseInt(n.target.value)||0})})]})]})}function Hd(){const{selected:e,selectedNodeId:t}=Te(r=>{const[n]=r.events.selected;return{selectedNodeId:n,selected:n!=null}});return!e||!t?d.jsx("div",{className:"property-panel",children:d.jsx("div",{className:"property-panel__empty",children:"Select an element to edit its properties"})}):d.jsxs("div",{className:"property-panel",children:[d.jsx("div",{className:"property-panel__header",children:"Properties"}),d.jsx("div",{className:"property-panel__content",children:d.jsx(qd,{})})]})}function qd(){return d.jsxs(d.Fragment,{children:[d.jsx(Id,{}),d.jsx(Rd,{}),d.jsx(kd,{}),d.jsx(Fd,{}),d.jsx(Ld,{}),d.jsx(Md,{})]})}function Bd(){const{query:e,actions:t}=Te(),r=z(i=>i.editorState),n=z(i=>i.currentFile),a=z(i=>i.debouncedSave);z(i=>i.setEditorState);const o=b.useRef(!1),s=b.useRef(null);b.useEffect(()=>{if(r&&r!==s.current){o.current=!0;try{t.deserialize(r)}catch{}setTimeout(()=>{o.current=!1},100)}},[r,t]),b.useEffect(()=>{if(!n)return;const i=e.subscribe(()=>{if(!o.current)try{const l=e.serialize();l!==s.current&&(s.current=l,a(l))}catch{}});return()=>{typeof i=="function"&&i()}},[e,n,a])}const zd={ContainerComponent:nt,TextComponent:er,ButtonComponent:tr,ImageComponent:rr,SpacerComponent:nr};function Ud(){const e=z(t=>t.mode);return d.jsx(Sd,{resolver:zd,onRender:$d,enabled:e==="design",children:d.jsx(Gd,{})})}function Gd(){return Bd(),d.jsxs("div",{className:"canvas-editor",children:[d.jsx(Dd,{}),d.jsxs("div",{className:"canvas-editor__center",children:[d.jsx(Pd,{}),d.jsx(Td,{})]}),d.jsx(Hd,{})]})}function Kd(){const e=z(n=>n.fetchFiles),t=z(n=>n.loadFile),r=z(n=>n.currentFile);return z(n=>n.files),b.useEffect(()=>{e().then(()=>{const n=Kn();n&&!r&&t(n)})},[]),d.jsx("div",{className:"canvas-section",style:{height:"100%"},children:d.jsx(Ud,{})})}export{Kd as default};
9
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function An(e,t){if(e){if(typeof e=="string")return Tt(e,t);var r=Object.prototype.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)?Tt(e,t):void 0}}function Tt(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function Dn(e){var t=function(r,n){if(typeof r!="object"||r===null)return r;var a=r[Symbol.toPrimitive];if(a!==void 0){var o=a.call(r,"string");if(typeof o!="object")return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(r)}(e);return typeof t=="symbol"?t:String(t)}const Qt=b.createContext(null);var In=b.createContext(null),Rn=function(){return b.useContext(In)};function ce(e){var t=Rn(),r=b.useContext(Qt);C(r);var n=Qu(r,e),a=b.useMemo(function(){return t&&t.createConnectorsUsage()},[t]);b.useEffect(function(){return a.register(),function(){a.cleanup()}},[a]);var o=b.useMemo(function(){return a&&Cn(a.connectors)},[a]);return $($({},n),{},{connectors:o,inContext:!!r,store:r})}var cd=["actions","query","connectors"];function rt(e){var t=b.useContext(Tn);C(t);var r=t.id,n=t.related,a=ce(function(u){return r&&u.nodes[r]&&e&&e(u.nodes[r])}),o=a.actions,s=a.connectors,i=Xt(a,cd),l=b.useMemo(function(){return Cn({connect:function(u){return s.connect(u,r)},drag:function(u){return s.drag(u,r)}})},[s,r]),c=b.useMemo(function(){return{setProp:function(u,f){f?o.history.throttle(f).setProp(r,u):o.setProp(r,u)},setCustom:function(u,f){f?o.history.throttle(f).setCustom(r,u):o.setCustom(r,u)},setHidden:function(u){return o.setHidden(r,u)}}},[o,r]);return $($({},i),{},{id:r,related:n,inNodeContext:!!t,actions:c,connectors:l})}var ld=["id","related","actions","inNodeContext","connectors"];function M(e){var t=rt(e),r=t.id,n=t.related,a=t.actions,o=t.inNodeContext,s=t.connectors;return $($({},Xt(t,ld)),{},{actions:a,id:r,related:n,setProp:function(i,l){return ee("useNode().setProp()",{suggest:"useNode().actions.setProp()"}),a.setProp(i,l)},inNodeContext:o,connectors:s})}const ud=({render:e})=>{const{connectors:{connect:t,drag:r}}=M();return typeof e.type=="string"?t(r(O.cloneElement(e))):e},dd=()=>{const{type:e,props:t,nodes:r,hydrationTimestamp:n}=rt(a=>({type:a.data.type,props:a.data.props,nodes:a.data.nodes,hydrationTimestamp:a._hydrationTimestamp}));return b.useMemo(()=>{let a=t.children;r&&r.length>0&&(a=O.createElement(O.Fragment,null,r.map(s=>O.createElement(Zt,{id:s,key:s}))));const o=O.createElement(e,t,a);return typeof e=="string"?O.createElement(ud,{render:o}):o},[e,t,n,r])},fd=({render:e})=>{const{hidden:t}=rt(n=>({hidden:n.data.hidden})),{onRender:r}=ce(n=>({onRender:n.options.onRender}));return t?null:O.createElement(r,{render:e||O.createElement(dd,null)})},Zt=({id:e,render:t})=>O.createElement($n,{id:e},O.createElement(fd,{render:t})),$t={is:"div",canvas:!1,custom:{},hidden:!1},pd={is:"type",canvas:"isCanvas"};function Se({id:e,children:t,...r}){const{is:n}={...$t,...r},{query:a,actions:o}=ce(),{id:s,inNodeContext:i}=rt(),[l]=b.useState(()=>{C(!!e);const c=a.node(s).get();if(i){const u=c.data.linkedNodes[e]?a.node(c.data.linkedNodes[e]).get():null;if(u&&u.data.type===n)return u.id;const f=O.createElement(Se,r,t),p=a.parseReactElement(f).toNodeTree();return o.history.ignore().addLinkedNodeFromTree(p,s,e),p.rootNodeId}return null});return l?O.createElement(Zt,{id:l}):null}const kn=()=>ee("<Canvas />",{suggest:"<Element canvas={true} />"});function Pt({...e}){return b.useEffect(()=>kn(),[]),O.createElement(Se,{...e,canvas:!0})}const hd=()=>{const{timestamp:e}=ce(t=>({timestamp:t.nodes[Q]&&t.nodes[Q]._hydrationTimestamp}));return e?O.createElement(Zt,{id:Q,key:e}):null},vd=({children:e,json:t,data:r})=>{const{actions:n,query:a}=ce();t&&ee("<Frame json={...} />",{suggest:"<Frame data={...} />"});const o=b.useRef(!1);if(!o.current){const s=r||t;if(s)n.history.ignore().deserialize(s);else if(e){const i=O.Children.only(e),l=a.parseReactElement(i).toNodeTree((c,u)=>(u===i&&(c.id=Q),c));n.history.ignore().addNodeTree(l)}o.current=!0}return O.createElement(hd,null)};var Xr;(function(e){e[e.Any=0]="Any",e[e.Id=1]="Id",e[e.Obj=2]="Obj"})(Xr||(Xr={}));const ht=e=>{const{addLinkedNodeFromTree:t,setDOM:r,setNodeEvent:n,replaceNodes:a,reset:o,...s}=e;return s};function Te(e){const{connectors:t,actions:r,query:n,store:a,...o}=ce(e),s=ht(r);return{connectors:t,actions:b.useMemo(()=>({...s,history:{...s.history,ignore:(...i)=>ht(s.history.ignore(...i)),throttle:(...i)=>ht(s.history.throttle(...i))}}),[s]),query:n,store:a,...o}}var Fn=function(e){return Object.fromEntries?Object.fromEntries(e):e.reduce(function(t,r){var n=Pn(r,2),a=n[0],o=n[1];return $($({},t),{},A({},a,o))},{})},V=function(e,t,r){var n=Array.isArray(t)?t:[t],a=$({existOnly:!1,idOnly:!1},r||{}),o=n.filter(function(s){return!!s}).map(function(s){return typeof s=="string"?{node:e[s],exists:!!e[s]}:Ct(s)!=="object"||a.idOnly?{node:null,exists:!1}:{node:s,exists:!!e[s.id]}});return a.existOnly&&C(o.filter(function(s){return!s.exists}).length===0),o},gd=["history"],le=null,Ue=function(e,t){if(typeof t=="string")return t;var r,n=function(a,o){var s=function(i){if(le&&le.resolver===i)return le.reversed;le={resolver:i,reversed:new Map};for(var l=0,c=Object.entries(i);l<c.length;l++){var u=Pn(c[l],2);le.reversed.set(u[1],u[0])}return le.reversed}(a).get(o);return s!==void 0?s:null}(e,t);return C(n,bn.replace("%node_type%",(r=t).name||r.displayName)),n};const yd=(e,t)=>typeof e=="string"?e:{resolvedName:Ue(t,e)},At=(e,t)=>{let{type:r,isCanvas:n,props:a}=e;return a=Object.keys(a).reduce((o,s)=>{const i=a[s];return i==null||typeof i=="function"||(o[s]=s==="children"&&typeof i!="string"?b.Children.map(i,l=>typeof l=="string"?l:At(l,t)):typeof i.type=="function"?At(i,t):i),o},{}),{type:yd(r,t),isCanvas:!!n,props:a}},md=(e,t)=>{const{type:r,props:n,isCanvas:a,name:o,...s}=e;return{...At({type:r,isCanvas:a,props:n},t),...s}};function Dt(e,t){C(typeof t=="string");var r=e.nodes[t],n=function(a){return Dt(e,a)};return{isCanvas:function(){return!!r.data.isCanvas},isRoot:function(){return r.id===Q},isLinkedNode:function(){return r.data.parent&&n(r.data.parent).linkedNodes().includes(r.id)},isTopLevelNode:function(){return this.isRoot()||this.isLinkedNode()},isDeletable:function(){return!this.isTopLevelNode()},isParentOfTopLevelNodes:function(){return r.data.linkedNodes&&Object.keys(r.data.linkedNodes).length>0},isParentOfTopLevelCanvas:function(){return ee("query.node(id).isParentOfTopLevelCanvas",{suggest:"query.node(id).isParentOfTopLevelNodes"}),this.isParentOfTopLevelNodes()},isSelected:function(){return e.events.selected.has(t)},isHovered:function(){return e.events.hovered.has(t)},isDragged:function(){return e.events.dragged.has(t)},get:function(){return r},ancestors:function(){var a=arguments.length>0&&arguments[0]!==void 0&&arguments[0];return function o(s){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],l=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,c=e.nodes[s];return c?(i.push(s),c.data.parent&&(a||!a&&l===0)&&(i=o(c.data.parent,i,l+1)),i):i}(r.data.parent)},descendants:function(){var a=arguments.length>0&&arguments[0]!==void 0&&arguments[0],o=arguments.length>1?arguments[1]:void 0;return function s(i){var l=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],c=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return(a||!a&&c===0)&&e.nodes[i]&&(o!=="childNodes"&&n(i).linkedNodes().forEach(function(u){l.push(u),l=s(u,l,c+1)}),o!=="linkedNodes"&&n(i).childNodes().forEach(function(u){l.push(u),l=s(u,l,c+1)})),l}(t)},linkedNodes:function(){return Object.values(r.data.linkedNodes||{})},childNodes:function(){return r.data.nodes||[]},isDraggable:function(a){try{var o=r;return C(!this.isTopLevelNode(),qr),C(Dt(e,o.data.parent).isCanvas(),Hr),C(o.rules.canDrag(o,n),Gu),!0}catch(s){return a&&a(s),!1}},isDroppable:function(a,o){var s=V(e.nodes,a),i=r;try{C(this.isCanvas(),zu),C(i.rules.canMoveIn(s.map(function(c){return c.node}),i,n),qu);var l={};return s.forEach(function(c){var u=c.node,f=c.exists;if(C(u.rules.canDrop(i,u,n),Hu),f){C(!n(u.id).isTopLevelNode(),qr);var p=n(u.id).descendants(!0);C(!p.includes(i.id)&&i.id!==u.id,Uu);var h=u.data.parent&&e.nodes[u.data.parent];C(h.data.isCanvas,Hr),C(h||!h&&!e.nodes[u.id],Mu),h.id!==i.id&&(l[h.id]||(l[h.id]=[]),l[h.id].push(u))}}),Object.keys(l).forEach(function(c){var u=e.nodes[c];C(u.rules.canMoveOut(l[c],u,n),Bu)}),!0}catch(c){return o&&o(c),!1}},toSerializedNode:function(){return md(r.data,e.options.resolver)},toNodeTree:function(a){var o=[t].concat(Ce(this.descendants(!0,a))).reduce(function(s,i){return s[i]=n(i).get(),s},{});return{rootNodeId:t,nodes:o}},decendants:function(){var a=arguments.length>0&&arguments[0]!==void 0&&arguments[0];return ee("query.node(id).decendants",{suggest:"query.node(id).descendants"}),this.descendants(a)},isTopLevelCanvas:function(){return!this.isRoot()&&!r.data.parent}}}function Ln(e,t,r,n){for(var a={parent:e,index:0,where:"before"},o=0,s=0,i=0,l=0,c=0,u=0,f=0,p=t.length;f<p;f++){var h=t[f];if(u=h.top+h.outerHeight,l=h.left+h.outerWidth/2,c=h.top+h.outerHeight/2,!(s&&h.left>s||i&&c>=i||o&&h.left+h.outerWidth<o))if(a.index=f,h.inFlow){if(n<c){a.where="before";break}a.where="after"}else n<u&&(i=u),r<l?(s=l,a.where="before"):(o=l,a.where="after")}return a}var De=function(e){return typeof e=="string"?e:e.name};function Vr(e,t){var r=e.data.type,n={id:e.id||On(),_hydrationTimestamp:Date.now(),data:$({type:r,name:De(r),displayName:De(r),props:{},custom:{},parent:null,isCanvas:!1,hidden:!1,nodes:[],linkedNodes:{}},e.data),info:{},related:{},events:{selected:!1,dragged:!1,hovered:!1},rules:{canDrag:function(){return!0},canDrop:function(){return!0},canMoveIn:function(){return!0},canMoveOut:function(){return!0}},dom:null};if(n.data.type===Se||n.data.type===Pt){var a=$($({},$t),n.data.props);n.data.props=Object.keys(n.data.props).reduce(function(i,l){return Object.keys($t).includes(l)?n.data[pd[l]||l]=a[l]:i[l]=n.data.props[l],i},{}),n.data.name=De(r=n.data.type),n.data.displayName=De(r),n.data.type===Pt&&(n.data.isCanvas=!0,kn())}t&&t(n);var o=r.craft;if(o){if(n.data.displayName=o.displayName||o.name||n.data.displayName,n.data.props=$($({},o.props||o.defaultProps||{}),n.data.props),n.data.custom=$($({},o.custom||{}),n.data.custom),o.isCanvas!=null&&(n.data.isCanvas=o.isCanvas),o.rules&&Object.keys(o.rules).forEach(function(i){["canDrag","canDrop","canMoveIn","canMoveOut"].includes(i)&&(n.rules[i]=o.rules[i])}),o.related){var s={id:n.id,related:!0};Object.keys(o.related).forEach(function(i){n.related[i]=function(l){return O.createElement($n,s,O.createElement(o.related[i],l))}})}o.info&&(n.info=o.info)}return n}const It=(e,t,r)=>{let{type:n,props:a}=e;const o=((i,l)=>typeof i=="object"&&i.resolvedName?i.resolvedName==="Canvas"?Pt:l[i.resolvedName]:typeof i=="string"?i:null)(n,t);if(!o)return;a=Object.keys(a).reduce((i,l)=>{const c=a[l];return i[l]=c==null?null:typeof c=="object"&&c.resolvedName?It(c,t):l==="children"&&Array.isArray(c)?c.map(u=>typeof u=="string"?u:It(u,t)):c,i},{});const s={...O.createElement(o,{...a})};return{...s,name:Ue(t,s.type)}},bd=(e,t)=>{const{type:r,props:n,...a}=e;C(r!==void 0&&typeof r=="string"||r!==void 0&&r.resolvedName!==void 0,Wu.replace("%displayName%",e.displayName).replace("%availableComponents%",Object.keys(t).join(", ")));const{type:o,name:s,props:i}=It(e,t),{parent:l,custom:c,displayName:u,isCanvas:f,nodes:p,hidden:h}=a;return{type:o,name:s,displayName:u||s,props:i,custom:c||{},isCanvas:!!f,hidden:!!h,parent:l,linkedNodes:a.linkedNodes||a._childCanvas||{},nodes:p||[]}},_d=(e,t)=>{if(t.length<1)return{[e.id]:e};const r=t.map(({rootNodeId:a})=>a),n={...e,data:{...e.data,nodes:r}};return t.reduce((a,o)=>{const s=o.nodes[o.rootNodeId];return{...a,...o.nodes,[s.id]:{...s,data:{...s.data,parent:e.id}}}},{[e.id]:n})},jd=(e,t)=>({rootNodeId:e.id,nodes:_d(e,t)});function Mn(e){const t=e&&e.options,r=()=>Mn(e);return{getDropPlaceholder:(n,a,o,s=i=>e.nodes[i.id].dom)=>{const i=e.nodes[a],l=r().node(i.id).isCanvas()?i:e.nodes[i.data.parent];if(!l)return;const c=l.data.nodes||[],u=Ln(l,c?c.reduce((h,v)=>{const g=s(e.nodes[v]);if(g){const m={id:v,...Ee(g)};h.push(m)}return h},[]):[],o.x,o.y),f=c.length&&e.nodes[c[u.index]],p={placement:{...u,currentNode:f},error:null};return V(e.nodes,n).forEach(({node:h,exists:v})=>{v&&r().node(h.id).isDraggable(g=>p.error=g)}),r().node(l.id).isDroppable(n,h=>p.error=h),p},getOptions:()=>t,getNodes:()=>e.nodes,node:n=>Dt(e,n),getSerializedNodes(){const n=Object.keys(e.nodes).map(a=>[a,this.node(a).toSerializedNode()]);return Fn(n)},getEvent:n=>function(a,o){var s=a.events[o];return{contains:function(i){return s.has(i)},isEmpty:function(){return this.all().length===0},first:function(){return this.all()[0]},last:function(){var i=this.all();return i[i.length-1]},all:function(){return Array.from(s)},size:function(){return this.all().length},at:function(i){return this.all()[i]},raw:function(){return s}}}(e,n),serialize(){return JSON.stringify(this.getSerializedNodes())},parseReactElement:n=>({toNodeTree(a){let o=function(i,l){let c=i;return typeof c=="string"&&(c=O.createElement(b.Fragment,{},c)),Vr({data:{type:c.type,props:{...c.props}}},u=>{l&&l(u,c)})}(n,(i,l)=>{const c=Ue(e.options.resolver,i.data.type);i.data.displayName=i.data.displayName||c,i.data.name=c,a&&a(i,l)}),s=[];return n.props&&n.props.children&&(s=O.Children.toArray(n.props.children).reduce((i,l)=>(O.isValidElement(l)&&i.push(r().parseReactElement(l).toNodeTree(a)),i),[])),jd(o,s)}}),parseSerializedNode:n=>({toNode(a){const o=bd(n,e.options.resolver);C(o.type);const s=typeof a=="string"&&a;return s&&ee("query.parseSerializedNode(...).toNode(id)",{suggest:"query.parseSerializedNode(...).toNode(node => node.id = id)"}),r().parseFreshNode({...s?{id:s}:{},data:o}).toNode(!s&&a)}}),parseFreshNode:n=>({toNode:a=>Vr(n,o=>{o.data.parent===mn&&(o.data.parent=Q);const s=Ue(e.options.resolver,o.data.type);C(s!==null),o.data.displayName=o.data.displayName||s,o.data.name=s,a&&a(o)})}),createNode(n,a){ee(`query.createNode(${n})`,{suggest:`query.parseReactElement(${n}).toNodeTree()`});const o=this.parseReactElement(n).toNodeTree(),s=o.nodes[o.rootNodeId];return a&&(a.id&&(s.id=a.id),a.data&&(s.data={...s.data,...a.data})),s},getState:()=>e}}var xd=function(e){Yt(r,En);var t=Vt(r);function r(){return et(this,r),t.apply(this,arguments)}return tt(r,[{key:"handlers",value:function(){return{connect:function(n,a){},select:function(n,a){},hover:function(n,a){},drag:function(n,a){},drop:function(n,a){},create:function(n,a,o){}}}}]),r}();(function(e){Yt(r,ed);var t=Vt(r);function r(){return et(this,r),t.apply(this,arguments)}return tt(r)})();var Qr=function(e){e.preventDefault()},Rt=function(){function e(t,r){et(this,e),A(this,"store",void 0),A(this,"dragTarget",void 0),A(this,"currentDropTargetId",void 0),A(this,"currentDropTargetCanvasAncestorId",void 0),A(this,"currentIndicator",null),A(this,"currentTargetId",void 0),A(this,"currentTargetChildDimensions",void 0),A(this,"dragError",void 0),A(this,"draggedNodes",void 0),A(this,"onScrollListener",void 0),this.store=t,this.dragTarget=r,this.currentDropTargetId=null,this.currentDropTargetCanvasAncestorId=null,this.currentTargetId=null,this.currentTargetChildDimensions=null,this.currentIndicator=null,this.dragError=null,this.draggedNodes=this.getDraggedNodes(),this.validateDraggedNodes(),this.onScrollListener=this.onScroll.bind(this),window.addEventListener("scroll",this.onScrollListener,!0),window.addEventListener("dragover",Qr,!1)}return tt(e,[{key:"cleanup",value:function(){window.removeEventListener("scroll",this.onScrollListener,!0),window.removeEventListener("dragover",Qr,!1)}},{key:"onScroll",value:function(t){var r=t.target,n=this.store.query.node(Q).get();r instanceof Element&&n&&n.dom&&r.contains(n.dom)&&(this.currentTargetChildDimensions=null)}},{key:"getDraggedNodes",value:function(){return V(this.store.query.getNodes(),this.dragTarget.type==="new"?this.dragTarget.tree.nodes[this.dragTarget.tree.rootNodeId]:this.dragTarget.nodes)}},{key:"validateDraggedNodes",value:function(){var t=this;this.dragTarget.type!=="new"&&this.draggedNodes.forEach(function(r){r.exists&&t.store.query.node(r.node.id).isDraggable(function(n){t.dragError=n})})}},{key:"isNearBorders",value:function(t,r,n){return t.top+e.BORDER_OFFSET>n||t.bottom-e.BORDER_OFFSET<n||t.left+e.BORDER_OFFSET>r||t.right-e.BORDER_OFFSET<r}},{key:"isDiff",value:function(t){return!this.currentIndicator||this.currentIndicator.placement.parent.id!==t.parent.id||this.currentIndicator.placement.index!==t.index||this.currentIndicator.placement.where!==t.where}},{key:"getChildDimensions",value:function(t){var r=this,n=this.currentTargetChildDimensions;return this.currentTargetId===t.id&&n?n:t.data.nodes.reduce(function(a,o){var s=r.store.query.node(o).get().dom;return s&&a.push($({id:o},Ee(s))),a},[])}},{key:"getCanvasAncestor",value:function(t){var r=this;if(t===this.currentDropTargetId&&this.currentDropTargetCanvasAncestorId){var n=this.store.query.node(this.currentDropTargetCanvasAncestorId).get();if(n)return n}return function a(o){var s=r.store.query.node(o).get();return s&&s.data.isCanvas?s:s.data.parent?a(s.data.parent):null}(t)}},{key:"computeIndicator",value:function(t,r,n){var a=this.getCanvasAncestor(t);if(a&&(this.currentDropTargetId=t,this.currentDropTargetCanvasAncestorId=a.id,a.data.parent&&this.isNearBorders(Ee(a.dom),r,n)&&!this.store.query.node(a.id).isLinkedNode()&&(a=this.store.query.node(a.data.parent).get()),a)){this.currentTargetChildDimensions=this.getChildDimensions(a),this.currentTargetId=a.id;var o=Ln(a,this.currentTargetChildDimensions,r,n);if(this.isDiff(o)){var s=this.dragError;s||this.store.query.node(a.id).isDroppable(this.draggedNodes.map(function(c){return c.node}),function(c){s=c});var i=a.data.nodes[o.index],l=i&&this.store.query.node(i).get();return this.currentIndicator={placement:$($({},o),{},{currentNode:l}),error:s},this.currentIndicator}}}},{key:"getIndicator",value:function(){return this.currentIndicator}}]),e}();A(Rt,"BORDER_OFFSET",10);var Zr=function(e,t){if(t.length===1||arguments.length>2&&arguments[2]!==void 0&&arguments[2]){var r=t[0].getBoundingClientRect(),n=r.width,a=r.height,o=t[0].cloneNode(!0);return o.style.position="absolute",o.style.left="-100%",o.style.top="-100%",o.style.width="".concat(n,"px"),o.style.height="".concat(a,"px"),o.style.pointerEvents="none",o.classList.add("drag-shadow"),document.body.appendChild(o),e.dataTransfer.setDragImage(o,0,0),o}var s=document.createElement("div");return s.style.position="absolute",s.style.left="-100%",s.style.top="-100%",s.style.width="100%",s.style.height="100%",s.style.pointerEvents="none",s.classList.add("drag-shadow-container"),t.forEach(function(i){var l=i.getBoundingClientRect(),c=l.width,u=l.height,f=l.top,p=l.left,h=i.cloneNode(!0);h.style.position="absolute",h.style.left="".concat(p,"px"),h.style.top="".concat(f,"px"),h.style.width="".concat(c,"px"),h.style.height="".concat(u,"px"),h.classList.add("drag-shadow"),s.appendChild(h)}),document.body.appendChild(s),e.dataTransfer.setDragImage(s,e.clientX,e.clientY),s},Hn=function(e){Yt(r,xd);var t=Vt(r);function r(){var n;et(this,r);for(var a=arguments.length,o=new Array(a),s=0;s<a;s++)o[s]=arguments[s];return A(je(n=t.call.apply(t,[this].concat(o))),"draggedElementShadow",void 0),A(je(n),"dragTarget",void 0),A(je(n),"positioner",null),A(je(n),"currentSelectedElementIds",[]),n}return tt(r,[{key:"onDisable",value:function(){this.options.store.actions.clearEvents()}},{key:"handlers",value:function(){var n=this,a=this.options.store;return{connect:function(o,s){return a.actions.setDOM(s,o),n.reflect(function(i){i.select(o,s),i.hover(o,s),i.drop(o,s)})},select:function(o,s){var i=n.addCraftEventListener(o,"mousedown",function(c){c.craft.stopPropagation();var u=[];if(s){var f=a.query,p=f.getEvent("selected").all();(n.options.isMultiSelectEnabled(c)||p.includes(s))&&(u=p.filter(function(h){var v=f.node(h).descendants(!0),g=f.node(h).ancestors(!0);return!v.includes(s)&&!g.includes(s)})),u.includes(s)||u.push(s)}a.actions.setNodeEvent("selected",u)}),l=n.addCraftEventListener(o,"click",function(c){c.craft.stopPropagation();var u=a.query.getEvent("selected").all(),f=n.options.isMultiSelectEnabled(c),p=n.currentSelectedElementIds.includes(s),h=Ce(u);f&&p?(h.splice(h.indexOf(s),1),a.actions.setNodeEvent("selected",h)):!f&&u.length>1&&a.actions.setNodeEvent("selected",h=[s]),n.currentSelectedElementIds=h});return function(){i(),l()}},hover:function(o,s){var i=n.addCraftEventListener(o,"mouseover",function(c){c.craft.stopPropagation(),a.actions.setNodeEvent("hovered",s)}),l=null;return n.options.removeHoverOnMouseleave&&(l=n.addCraftEventListener(o,"mouseleave",function(c){c.craft.stopPropagation(),a.actions.setNodeEvent("hovered",null)})),function(){i(),l&&l()}},drop:function(o,s){var i=n.addCraftEventListener(o,"dragover",function(c){if(c.craft.stopPropagation(),c.preventDefault(),n.positioner){var u=n.positioner.computeIndicator(s,c.clientX,c.clientY);u&&a.actions.setIndicator(u)}}),l=n.addCraftEventListener(o,"dragenter",function(c){c.craft.stopPropagation(),c.preventDefault()});return function(){l(),i()}},drag:function(o,s){if(!a.query.node(s).isDraggable())return function(){};o.setAttribute("draggable","true");var i=n.addCraftEventListener(o,"dragstart",function(c){c.craft.stopPropagation();var u=a.query,f=a.actions,p=u.getEvent("selected").all(),h=n.options.isMultiSelectEnabled(c);n.currentSelectedElementIds.includes(s)||(p=h?[].concat(Ce(p),[s]):[s],a.actions.setNodeEvent("selected",p)),f.setNodeEvent("dragged",p);var v=p.map(function(g){return u.node(g).get().dom});n.draggedElementShadow=Zr(c,v,r.forceSingleDragShadow),n.dragTarget={type:"existing",nodes:p},n.positioner=new Rt(n.options.store,n.dragTarget)}),l=n.addCraftEventListener(o,"dragend",function(c){c.craft.stopPropagation(),n.dropElement(function(u,f){u.type!=="new"&&a.actions.move(u.nodes,f.placement.parent.id,f.placement.index+(f.placement.where==="after"?1:0))})});return function(){o.setAttribute("draggable","false"),i(),l()}},create:function(o,s,i){o.setAttribute("draggable","true");var l=n.addCraftEventListener(o,"dragstart",function(u){var f;if(u.craft.stopPropagation(),typeof s=="function"){var p=s();f=O.isValidElement(p)?a.query.parseReactElement(p).toNodeTree():p}else f=a.query.parseReactElement(s).toNodeTree();n.draggedElementShadow=Zr(u,[u.currentTarget],r.forceSingleDragShadow),n.dragTarget={type:"new",tree:f},n.positioner=new Rt(n.options.store,n.dragTarget)}),c=n.addCraftEventListener(o,"dragend",function(u){u.craft.stopPropagation(),n.dropElement(function(f,p){f.type!=="existing"&&(a.actions.addNodeTree(f.tree,p.placement.parent.id,p.placement.index+(p.placement.where==="after"?1:0)),i&&po(i.onCreate)&&i.onCreate(f.tree))})});return function(){o.removeAttribute("draggable"),l(),c()}}}}},{key:"dropElement",value:function(n){var a=this.options.store;if(this.positioner){var o=this.draggedElementShadow,s=this.positioner.getIndicator();this.dragTarget&&s&&!s.error&&n(this.dragTarget,s),o&&(o.parentNode.removeChild(o),this.draggedElementShadow=null),this.dragTarget=null,a.actions.setIndicator(null),a.actions.setNodeEvent("dragged",null),this.positioner.cleanup(),this.positioner=null}}}]),r}();function Nd(e,t,r){var n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:2,a=0,o=0,s=0,i=0,l=e.where;return r?r.inFlow?(s=r.outerWidth,i=n,a=l==="before"?r.top:r.bottom,o=r.left):(s=n,i=r.outerHeight,a=r.top,o=l==="before"?r.left:r.left+r.outerWidth):t&&(a=t.top+t.padding.top,o=t.left+t.padding.left,s=t.outerWidth-t.padding.right-t.padding.left-t.margin.left-t.margin.right,i=n),{top:"".concat(a,"px"),left:"".concat(o,"px"),width:"".concat(s,"px"),height:"".concat(i,"px")}}A(Hn,"forceSingleDragShadow",od()&&ad());const wd=()=>{const{indicator:e,indicatorOptions:t,enabled:r}=ce(a=>({indicator:a.indicator,indicatorOptions:a.options.indicator,enabled:a.options.enabled})),n=Rn();return b.useEffect(()=>{n&&(r?n.enable():n.disable())},[r,n]),e?O.createElement(nd,{className:t.className,style:{...Nd(e.placement,Ee(e.placement.parent.dom),e.placement.currentNode&&Ee(e.placement.currentNode.dom),t.thickness),backgroundColor:e.error?t.error:t.success,transition:t.transition||"0.2s ease-in",...t.style??{}},parentDom:e.placement.parent.dom}):null},Od=({children:e})=>{const t=b.useContext(Qt),r=b.useMemo(()=>t.query.getOptions().handlers(t),[t]);return r?O.createElement(In.Provider,{value:r},O.createElement(wd,null),e):null},en={nodes:{},events:{dragged:new Set,selected:new Set,hovered:new Set},indicator:null,options:{onNodesChange:()=>null,onRender:({render:e})=>e,onBeforeMoveEnd:()=>null,resolver:{},enabled:!0,indicator:{error:"red",success:"rgb(98, 196, 98)"},handlers:e=>new Hn({store:e,removeHoverOnMouseleave:!1,isMultiSelectEnabled:t=>!!t.metaKey}),normalizeNodes:()=>{}}},Ed={methods:function(e,t){return $($({},function(r,n){var a=function(i,l,c){if(function p(h,v){var g=i.nodes[h];typeof g.data.type!="string"&&C(r.options.resolver[g.data.name],bn.replace("%node_type%","".concat(g.data.type.name))),r.nodes[h]=$($({},g),{},{data:$($({},g.data),{},{parent:v})}),g.data.nodes.length>0&&(delete r.nodes[h].data.props.children,g.data.nodes.forEach(function(m){return p(m,g.id)})),Object.values(g.data.linkedNodes).forEach(function(m){return p(m,g.id)})}(i.rootNodeId,l),l||i.rootNodeId!==Q){var u=o(l);if(c.type!=="child")u.data.linkedNodes[c.id]=i.rootNodeId;else{var f=c.index;f!=null?u.data.nodes.splice(f,0,i.rootNodeId):u.data.nodes.push(i.rootNodeId)}}},o=function(i){C(i);var l=r.nodes[i];return C(l),l},s=function i(l){var c=r.nodes[l],u=r.nodes[c.data.parent];if(c.data.nodes&&Ce(c.data.nodes).forEach(function(h){return i(h)}),c.data.linkedNodes&&Object.values(c.data.linkedNodes).map(function(h){return i(h)}),u.data.nodes.includes(l)){var f=u.data.nodes;f.splice(f.indexOf(l),1)}else{var p=Object.keys(u.data.linkedNodes).find(function(h){return u.data.linkedNodes[h]===h});p&&delete u.data.linkedNodes[p]}(function(h,v){Object.keys(h.events).forEach(function(g){var m=h.events[g];m&&m.has&&m.has(v)&&(h.events[g]=new Set(Array.from(m).filter(function(_){return v!==_})))})})(r,l),delete r.nodes[l]};return{addLinkedNodeFromTree:function(i,l,c){var u=o(l).data.linkedNodes[c];u&&s(u),a(i,l,{type:"linked",id:c})},add:function(i,l,c){var u=[i];Array.isArray(i)&&(ee("actions.add(node: Node[])",{suggest:"actions.add(node: Node)"}),u=i),u.forEach(function(f){a({nodes:A({},f.id,f),rootNodeId:f.id},l,{type:"child",index:c})})},addNodeTree:function(i,l,c){a(i,l,{type:"child",index:c})},delete:function(i){V(r.nodes,i,{existOnly:!0,idOnly:!0}).forEach(function(l){var c=l.node;C(!n.node(c.id).isTopLevelNode()),s(c.id)})},deserialize:function(i){var l=typeof i=="string"?JSON.parse(i):i,c=Object.keys(l).map(function(u){var f=u;return u===mn&&(f=Q),[f,n.parseSerializedNode(l[u]).toNode(function(p){return p.id=f})]});this.replaceNodes(Fn(c))},move:function(i,l,c){var u=V(r.nodes,i,{existOnly:!0}),f=r.nodes[l],p=new Set;u.forEach(function(h,v){var g=h.node,m=g.id,_=g.data.parent;n.node(l).isDroppable([m],function(x){throw new Error(x)}),r.options.onBeforeMoveEnd(g,f,r.nodes[_]);var y=r.nodes[_].data.nodes;p.add(y);var j=y.indexOf(m);y[j]="$$",f.data.nodes.splice(c+v,0,m),r.nodes[m].data.parent=l}),p.forEach(function(h){var v=h.length;Ce(h).reverse().forEach(function(g,m){g==="$$"&&h.splice(v-1-m,1)})})},replaceNodes:function(i){this.clearEvents(),r.nodes=i},clearEvents:function(){this.setNodeEvent("selected",null),this.setNodeEvent("hovered",null),this.setNodeEvent("dragged",null),this.setIndicator(null)},reset:function(){this.clearEvents(),this.replaceNodes({})},setOptions:function(i){i(r.options)},setNodeEvent:function(i,l){if(r.events[i].forEach(function(f){r.nodes[f]&&(r.nodes[f].events[i]=!1)}),r.events[i]=new Set,l){var c=V(r.nodes,l,{idOnly:!0,existOnly:!0}),u=new Set(c.map(function(f){return f.node.id}));u.forEach(function(f){r.nodes[f].events[i]=!0}),r.events[i]=u}},setCustom:function(i,l){V(r.nodes,i,{idOnly:!0,existOnly:!0}).forEach(function(c){return l(r.nodes[c.node.id].data.custom)})},setDOM:function(i,l){r.nodes[i]&&(r.nodes[i].dom=l)},setIndicator:function(i){i&&(!i.placement.parent.dom||i.placement.currentNode&&!i.placement.currentNode.dom)||(r.indicator=i)},setHidden:function(i,l){r.nodes[i].data.hidden=l},setProp:function(i,l){V(r.nodes,i,{idOnly:!0,existOnly:!0}).forEach(function(c){return l(r.nodes[c.node.id].data.props)})},selectNode:function(i){if(i){var l=V(r.nodes,i,{idOnly:!0,existOnly:!0});this.setNodeEvent("selected",l.map(function(c){return c.node.id}))}else this.setNodeEvent("selected",null);this.setNodeEvent("hovered",null)}}}(e,t)),{},{setState:function(r){var n=Xt(this,gd);r(e,n)}})},ignoreHistoryForActions:["setDOM","setNodeEvent","selectNode","clearEvents","setOptions","setIndicator"],normalizeHistory:e=>{Object.keys(e.events).forEach(t=>{Array.from(e.events[t]||[]).forEach(r=>{e.nodes[r]||e.events[t].delete(r)})}),Object.keys(e.nodes).forEach(t=>{const r=e.nodes[t];Object.keys(r.events).forEach(n=>{r.events[n]&&e.events[n]&&!e.events[n].has(r.id)&&(r.events[n]=!1)})})}},Cd=(e,t)=>Yu(Ed,{...en,options:{...en.options,...e}},Mn,t),Sd=({children:e,...t})=>{t.resolver!==void 0&&C(typeof t.resolver=="object"&&!Array.isArray(t.resolver)&&t.resolver!==null);const r=b.useRef(t),n=Cd(r.current,(a,o,s,i,l)=>{if(!s)return;const{patches:c,...u}=s;for(let f=0;f<c.length;f++){const{path:p}=c[f],h=p.length>2&&p[0]==="nodes"&&p[2]==="data";if([P.IGNORE,P.THROTTLE].includes(u.type)&&u.params&&(u.type=u.params[0]),["setState","deserialize"].includes(u.type)||h){l(v=>{a.options.normalizeNodes&&a.options.normalizeNodes(v,o,u,i)});break}}});return b.useEffect(()=>{n&&t.enabled!==void 0&&n.query.getOptions().enabled!==t.enabled&&n.actions.setOptions(a=>{a.enabled=t.enabled})},[n,t.enabled]),b.useEffect(()=>{n.subscribe(a=>({json:n.query.serialize()}),()=>{n.query.getOptions().onNodesChange(n.query)})},[n]),n?b.createElement(Qt.Provider,{value:n},b.createElement(Od,null,e)):null},E={display:"flex",flexDirection:"column",justifyContent:"flex-start",alignItems:"stretch",flexWrap:"nowrap",gap:0,padding:16,paddingTop:16,paddingRight:16,paddingBottom:16,paddingLeft:16,margin:0,marginTop:0,marginRight:0,marginBottom:0,marginLeft:0,background:"transparent",borderWidth:0,borderStyle:"none",borderColor:"var(--p-border)",borderRadius:0,width:"100%",height:"auto",minHeight:"40px",overflow:"visible",opacity:1,boxShadow:"none"},B={content:"Edit this text",fontSize:16,fontWeight:"400",fontFamily:"inherit",color:"var(--p-text-primary)",textAlign:"left",lineHeight:1.5,letterSpacing:0,padding:0,margin:0},R={label:"Button",fontSize:14,fontWeight:"500",color:"var(--p-bg-primary)",textAlign:"center",background:"var(--p-accent-blue)",padding:0,paddingTop:10,paddingRight:20,paddingBottom:10,paddingLeft:20,borderWidth:0,borderStyle:"none",borderColor:"transparent",borderRadius:6,width:"auto",cursor:"pointer"},ae={src:"",alt:"Image",objectFit:"cover",width:"100%",height:"200px",borderRadius:0},kt={width:"100%",height:"24px"},nt=({children:e,display:t=E.display,flexDirection:r=E.flexDirection,justifyContent:n=E.justifyContent,alignItems:a=E.alignItems,flexWrap:o=E.flexWrap,gap:s=E.gap,paddingTop:i=E.paddingTop,paddingRight:l=E.paddingRight,paddingBottom:c=E.paddingBottom,paddingLeft:u=E.paddingLeft,marginTop:f=E.marginTop,marginRight:p=E.marginRight,marginBottom:h=E.marginBottom,marginLeft:v=E.marginLeft,background:g=E.background,borderWidth:m=E.borderWidth,borderStyle:_=E.borderStyle,borderColor:y=E.borderColor,borderRadius:j=E.borderRadius,width:x=E.width,height:w=E.height,minHeight:S=E.minHeight,overflow:F=E.overflow,opacity:te=E.opacity,boxShadow:K=E.boxShadow})=>{const{connectors:{connect:re,drag:J}}=M();return d.jsx("div",{ref:Y=>{Y&&re(J(Y))},style:{display:t,flexDirection:r,justifyContent:n,alignItems:a,flexWrap:o,gap:s,paddingTop:i,paddingRight:l,paddingBottom:c,paddingLeft:u,marginTop:f,marginRight:p,marginBottom:h,marginLeft:v,background:g,borderWidth:m>0?m:void 0,borderStyle:m>0?_:void 0,borderColor:m>0?y:void 0,borderRadius:j,width:x,height:w,minHeight:S,overflow:F,opacity:te,boxShadow:K!=="none"?K:void 0},children:e})};nt.craft={displayName:"Container",props:{...E},rules:{canDrag:()=>!0,canMoveIn:()=>!0,canMoveOut:()=>!0}};function Td(){return d.jsx("div",{className:"canvas-frame-wrapper",children:d.jsx("div",{className:"canvas-frame",children:d.jsx(vd,{children:d.jsx(Se,{is:nt,canvas:!0,display:"flex",flexDirection:"column",padding:24,minHeight:"600px",width:"100%",background:"#ffffff"})})})})}function $d({render:e}){const{id:t}=M(),{isSelected:r,isHovered:n,displayName:a,isCanvas:o}=M(l=>{var c;return{isSelected:l.events.selected,isHovered:l.events.hovered,displayName:((c=l.data.custom)==null?void 0:c.displayName)||l.data.displayName||l.data.type,isCanvas:l.data.isCanvas}}),{actions:s}=Te(),i=b.useCallback(l=>{l.stopPropagation(),s.delete(t)},[s,t]);return t==="ROOT"?d.jsx(d.Fragment,{children:e}):d.jsxs("div",{className:["craft-node",r?"craft-node--selected":"",n&&!r?"craft-node--hovered":"",o?"craft-node--canvas":""].filter(Boolean).join(" "),style:{position:"relative"},children:[e,r&&d.jsxs("div",{className:"craft-node__toolbar",children:[d.jsx("span",{className:"craft-node__label",children:String(a)}),d.jsx("button",{className:"craft-node__delete",onClick:i,title:"Delete",children:"×"})]})]})}function Pd(){const{files:e,currentFile:t,currentFileName:r,isDirty:n,mode:a,setCurrentFileName:o,saveFile:s,createFile:i,deleteFile:l,loadFile:c,setMode:u}=z(),{canUndo:f,canRedo:p,actions:h}=Te((y,j)=>({canUndo:j.history.canUndo(),canRedo:j.history.canRedo()})),v=b.useCallback(()=>{const y=prompt("Canvas name:");y!=null&&y.trim()&&i(y.trim())},[i]),g=b.useCallback(()=>{t&&confirm(`Delete "${r}"?`)&&l(t)},[t,r,l]),m=b.useCallback(y=>{const j=y.target.value;j&&c(j)},[c]),_=b.useCallback(()=>{s()},[s]);return d.jsxs("div",{className:"canvas-toolbar",children:[d.jsxs("div",{className:"canvas-toolbar__left",children:[t&&d.jsx("input",{className:"canvas-toolbar__name",value:r,onChange:y=>o(y.target.value),placeholder:"Canvas name"}),n&&d.jsx("span",{className:"canvas-toolbar__dirty",children:"*"})]}),d.jsxs("div",{className:"canvas-toolbar__center",children:[d.jsxs("select",{className:"canvas-toolbar__file-picker",value:t||"",onChange:m,children:[d.jsx("option",{value:"",disabled:!0,children:"Select canvas..."}),e.map(y=>d.jsx("option",{value:y.path,children:y.name},y.path))]}),d.jsx("button",{className:"canvas-toolbar__btn",onClick:v,title:"New canvas",children:"+ New"}),d.jsx("button",{className:"canvas-toolbar__btn",onClick:_,disabled:!t,title:"Save (Cmd+S)",children:"Save"}),d.jsx("button",{className:"canvas-toolbar__btn canvas-toolbar__btn--danger",onClick:g,disabled:!t,title:"Delete canvas",children:"Delete"})]}),d.jsxs("div",{className:"canvas-toolbar__right",children:[d.jsx("button",{className:"canvas-toolbar__btn",onClick:()=>h.history.undo(),disabled:!f,title:"Undo",children:"↩"}),d.jsx("button",{className:"canvas-toolbar__btn",onClick:()=>h.history.redo(),disabled:!p,title:"Redo",children:"↪"}),d.jsx("div",{className:"canvas-toolbar__divider"}),d.jsx("button",{className:`canvas-toolbar__btn ${a==="design"?"canvas-toolbar__btn--active":""}`,onClick:()=>u("design"),children:"Design"}),d.jsx("button",{className:`canvas-toolbar__btn ${a==="preview"?"canvas-toolbar__btn--active":""}`,onClick:()=>u("preview"),children:"Preview"})]})]})}const er=({content:e=B.content,fontSize:t=B.fontSize,fontWeight:r=B.fontWeight,fontFamily:n=B.fontFamily,color:a=B.color,textAlign:o=B.textAlign,lineHeight:s=B.lineHeight,letterSpacing:i=B.letterSpacing,padding:l=B.padding,margin:c=B.margin})=>{const{connectors:{connect:u,drag:f},actions:{setProp:p},isEditing:h}=M(y=>({isEditing:y.events.selected})),[v,g]=b.useState(!1),m=b.useCallback(()=>{g(!0)},[]),_=b.useCallback(y=>{g(!1),p(j=>{j.content=y.currentTarget.textContent||""})},[p]);return d.jsx("p",{ref:y=>{y&&u(f(y))},contentEditable:v,suppressContentEditableWarning:!0,onDoubleClick:m,onBlur:_,style:{fontSize:t,fontWeight:r,fontFamily:n,color:a,textAlign:o,lineHeight:s,letterSpacing:i,padding:l,margin:c,outline:"none",cursor:v?"text":"default",minWidth:20},children:e})};er.craft={displayName:"Text",props:{...B},rules:{canDrag:()=>!0,canMoveIn:()=>!1}};const tr=({label:e=R.label,fontSize:t=R.fontSize,fontWeight:r=R.fontWeight,color:n=R.color,textAlign:a=R.textAlign,background:o=R.background,paddingTop:s=R.paddingTop,paddingRight:i=R.paddingRight,paddingBottom:l=R.paddingBottom,paddingLeft:c=R.paddingLeft,borderWidth:u=R.borderWidth,borderStyle:f=R.borderStyle,borderColor:p=R.borderColor,borderRadius:h=R.borderRadius,width:v=R.width,cursor:g=R.cursor})=>{const{connectors:{connect:m,drag:_},actions:{setProp:y}}=M(),[j,x]=b.useState(!1),w=b.useCallback(()=>{x(!0)},[]),S=b.useCallback(F=>{x(!1),y(te=>{te.label=F.currentTarget.textContent||""})},[y]);return d.jsx("button",{ref:F=>{F&&m(_(F))},contentEditable:j,suppressContentEditableWarning:!0,onDoubleClick:w,onBlur:S,style:{fontSize:t,fontWeight:r,color:n,textAlign:a,background:o,paddingTop:s,paddingRight:i,paddingBottom:l,paddingLeft:c,borderWidth:u>0?u:0,borderStyle:u>0?f:"none",borderColor:u>0?p:"transparent",borderRadius:h,width:v,cursor:j?"text":g,outline:"none",fontFamily:"inherit",display:"inline-flex",alignItems:"center",justifyContent:"center"},children:e})};tr.craft={displayName:"Button",props:{...R},rules:{canDrag:()=>!0,canMoveIn:()=>!1}};const rr=({src:e=ae.src,alt:t=ae.alt,objectFit:r=ae.objectFit,width:n=ae.width,height:a=ae.height,borderRadius:o=ae.borderRadius})=>{const{connectors:{connect:s,drag:i}}=M();return e?d.jsx("img",{ref:l=>{l&&s(i(l))},src:e,alt:t,style:{objectFit:r,width:n,height:a,borderRadius:o,display:"block"}}):d.jsx("div",{ref:l=>{l&&s(i(l))},style:{width:n,height:a,borderRadius:o,display:"flex",alignItems:"center",justifyContent:"center",background:"var(--p-bg-tertiary)",color:"var(--p-text-muted)",fontSize:13,border:"1px dashed var(--p-border)"},children:"Image placeholder"})};rr.craft={displayName:"Image",props:{...ae},rules:{canDrag:()=>!0,canMoveIn:()=>!1}};const nr=({width:e=kt.width,height:t=kt.height})=>{const{connectors:{connect:r,drag:n},selected:a}=M(o=>({selected:o.events.selected}));return d.jsx("div",{ref:o=>{o&&r(n(o))},style:{width:e,height:t,border:a?"1px dashed var(--p-border-active, #58a6ff)":"1px dashed transparent",background:a?"color-mix(in srgb, var(--p-border-active) 5%, transparent)":"transparent",transition:"border-color 150ms ease, background 150ms ease"}})};nr.craft={displayName:"Spacer",props:{...kt},rules:{canDrag:()=>!0,canMoveIn:()=>!1}};const Ad=[{name:"Container",icon:"▦",element:d.jsx(Se,{is:nt,canvas:!0})},{name:"Text",icon:"T",element:d.jsx(er,{})},{name:"Button",icon:"▮",element:d.jsx(tr,{})},{name:"Image",icon:"▨",element:d.jsx(rr,{})},{name:"Spacer",icon:"⊟",element:d.jsx(nr,{})}];function Dd(){const{connectors:e}=Te();return d.jsxs("div",{className:"component-palette",children:[d.jsx("div",{className:"component-palette__header",children:"Components"}),d.jsx("div",{className:"component-palette__list",children:Ad.map(t=>d.jsxs("div",{ref:r=>{r&&e.create(r,t.element)},className:"component-palette__item",children:[d.jsx("span",{className:"component-palette__icon",children:t.icon}),d.jsx("span",{className:"component-palette__name",children:t.name})]},t.name))})]})}function Id(){const{actions:{setProp:e},props:t}=M(n=>({props:n.data.props}));if(!("display"in t))return null;const r=t;return d.jsxs("div",{className:"prop-section",children:[d.jsx("div",{className:"prop-section__title",children:"Layout"}),d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Display"}),d.jsxs("select",{className:"prop-field__input",value:String(r.display||"flex"),onChange:n=>e(a=>{a.display=n.target.value}),children:[d.jsx("option",{value:"flex",children:"Flex"}),d.jsx("option",{value:"grid",children:"Grid"}),d.jsx("option",{value:"block",children:"Block"})]})]}),r.display==="flex"&&d.jsxs(d.Fragment,{children:[d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Direction"}),d.jsxs("select",{className:"prop-field__input",value:String(r.flexDirection||"column"),onChange:n=>e(a=>{a.flexDirection=n.target.value}),children:[d.jsx("option",{value:"row",children:"Row"}),d.jsx("option",{value:"row-reverse",children:"Row Reverse"}),d.jsx("option",{value:"column",children:"Column"}),d.jsx("option",{value:"column-reverse",children:"Column Reverse"})]})]}),d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Justify"}),d.jsxs("select",{className:"prop-field__input",value:String(r.justifyContent||"flex-start"),onChange:n=>e(a=>{a.justifyContent=n.target.value}),children:[d.jsx("option",{value:"flex-start",children:"Start"}),d.jsx("option",{value:"flex-end",children:"End"}),d.jsx("option",{value:"center",children:"Center"}),d.jsx("option",{value:"space-between",children:"Space Between"}),d.jsx("option",{value:"space-around",children:"Space Around"}),d.jsx("option",{value:"space-evenly",children:"Space Evenly"})]})]}),d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Align"}),d.jsxs("select",{className:"prop-field__input",value:String(r.alignItems||"stretch"),onChange:n=>e(a=>{a.alignItems=n.target.value}),children:[d.jsx("option",{value:"flex-start",children:"Start"}),d.jsx("option",{value:"flex-end",children:"End"}),d.jsx("option",{value:"center",children:"Center"}),d.jsx("option",{value:"stretch",children:"Stretch"}),d.jsx("option",{value:"baseline",children:"Baseline"})]})]}),d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Wrap"}),d.jsxs("select",{className:"prop-field__input",value:String(r.flexWrap||"nowrap"),onChange:n=>e(a=>{a.flexWrap=n.target.value}),children:[d.jsx("option",{value:"nowrap",children:"No Wrap"}),d.jsx("option",{value:"wrap",children:"Wrap"}),d.jsx("option",{value:"wrap-reverse",children:"Wrap Reverse"})]})]}),d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Gap"}),d.jsx("input",{className:"prop-field__input",type:"number",min:0,value:Number(r.gap||0),onChange:n=>e(a=>{a.gap=parseInt(n.target.value)||0})})]})]})]})}function tn({label:e,prefix:t,props:r,setProp:n}){const a=["Top","Right","Bottom","Left"];return d.jsxs("div",{className:"prop-quad",children:[d.jsx("span",{className:"prop-quad__label",children:e}),d.jsx("div",{className:"prop-quad__inputs",children:a.map(o=>{const s=`${t}${o}`;return d.jsx("input",{className:"prop-quad__input",type:"number",min:0,value:Number(r[s]||0),title:o,placeholder:o[0],onChange:i=>n(l=>{l[s]=parseInt(i.target.value)||0})},s)})})]})}function Rd(){const{actions:{setProp:e},props:t}=M(o=>({props:o.data.props})),r=t,n="paddingTop"in r||"padding"in r,a="marginTop"in r||"margin"in r;return!n&&!a?null:d.jsxs("div",{className:"prop-section",children:[d.jsx("div",{className:"prop-section__title",children:"Spacing"}),n&&d.jsx(tn,{label:"Padding",prefix:"padding",props:r,setProp:e}),a&&d.jsx(tn,{label:"Margin",prefix:"margin",props:r,setProp:e})]})}function kd(){const{actions:{setProp:e},props:t}=M(a=>({props:a.data.props})),r=t;return"width"in r||"height"in r?d.jsxs("div",{className:"prop-section",children:[d.jsx("div",{className:"prop-section__title",children:"Size"}),"width"in r&&d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Width"}),d.jsx("input",{className:"prop-field__input",type:"text",value:String(r.width||"auto"),onChange:a=>e(o=>{o.width=a.target.value})})]}),"height"in r&&d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Height"}),d.jsx("input",{className:"prop-field__input",type:"text",value:String(r.height||"auto"),onChange:a=>e(o=>{o.height=a.target.value})})]}),"minHeight"in r&&d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Min Height"}),d.jsx("input",{className:"prop-field__input",type:"text",value:String(r.minHeight||""),onChange:a=>e(o=>{o.minHeight=a.target.value})})]}),"overflow"in r&&d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Overflow"}),d.jsxs("select",{className:"prop-field__input",value:String(r.overflow||"visible"),onChange:a=>e(o=>{o.overflow=a.target.value}),children:[d.jsx("option",{value:"visible",children:"Visible"}),d.jsx("option",{value:"hidden",children:"Hidden"}),d.jsx("option",{value:"scroll",children:"Scroll"}),d.jsx("option",{value:"auto",children:"Auto"})]})]})]}):null}function Fd(){const{actions:{setProp:e},props:t}=M(a=>({props:a.data.props})),r=t;return"fontSize"in r||"fontWeight"in r||"content"in r||"label"in r?d.jsxs("div",{className:"prop-section",children:[d.jsx("div",{className:"prop-section__title",children:"Typography"}),"content"in r&&d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Content"}),d.jsx("input",{className:"prop-field__input",type:"text",value:String(r.content||""),onChange:a=>e(o=>{o.content=a.target.value})})]}),"label"in r&&d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Label"}),d.jsx("input",{className:"prop-field__input",type:"text",value:String(r.label||""),onChange:a=>e(o=>{o.label=a.target.value})})]}),"fontSize"in r&&d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Font Size"}),d.jsx("input",{className:"prop-field__input",type:"number",min:1,max:200,value:Number(r.fontSize||16),onChange:a=>e(o=>{o.fontSize=parseInt(a.target.value)||16})})]}),"fontWeight"in r&&d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Font Weight"}),d.jsxs("select",{className:"prop-field__input",value:String(r.fontWeight||"400"),onChange:a=>e(o=>{o.fontWeight=a.target.value}),children:[d.jsx("option",{value:"100",children:"Thin"}),d.jsx("option",{value:"300",children:"Light"}),d.jsx("option",{value:"400",children:"Regular"}),d.jsx("option",{value:"500",children:"Medium"}),d.jsx("option",{value:"600",children:"Semibold"}),d.jsx("option",{value:"700",children:"Bold"}),d.jsx("option",{value:"900",children:"Black"})]})]}),"fontFamily"in r&&d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Font Family"}),d.jsx("input",{className:"prop-field__input",type:"text",value:String(r.fontFamily||"inherit"),onChange:a=>e(o=>{o.fontFamily=a.target.value})})]}),"color"in r&&!("background"in r)&&d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Color"}),d.jsxs("div",{className:"prop-field__color-row",children:[d.jsx("input",{className:"prop-field__color-swatch",type:"color",value:String(r.color||"#000000"),onChange:a=>e(o=>{o.color=a.target.value})}),d.jsx("input",{className:"prop-field__input",type:"text",value:String(r.color||"#000000"),onChange:a=>e(o=>{o.color=a.target.value})})]})]}),"textAlign"in r&&d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Text Align"}),d.jsxs("select",{className:"prop-field__input",value:String(r.textAlign||"left"),onChange:a=>e(o=>{o.textAlign=a.target.value}),children:[d.jsx("option",{value:"left",children:"Left"}),d.jsx("option",{value:"center",children:"Center"}),d.jsx("option",{value:"right",children:"Right"}),d.jsx("option",{value:"justify",children:"Justify"})]})]}),"lineHeight"in r&&d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Line Height"}),d.jsx("input",{className:"prop-field__input",type:"number",step:.1,min:.5,max:4,value:Number(r.lineHeight||1.5),onChange:a=>e(o=>{o.lineHeight=parseFloat(a.target.value)||1.5})})]})]}):null}function Ld(){const{actions:{setProp:e},props:t}=M(n=>({props:n.data.props})),r=t;return"background"in r?d.jsxs("div",{className:"prop-section",children:[d.jsx("div",{className:"prop-section__title",children:"Background"}),d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Color"}),d.jsxs("div",{className:"prop-field__color-row",children:[d.jsx("input",{className:"prop-field__color-swatch",type:"color",value:String(r.background||"#ffffff").startsWith("#")?String(r.background):"#ffffff",onChange:n=>e(a=>{a.background=n.target.value})}),d.jsx("input",{className:"prop-field__input",type:"text",value:String(r.background||"transparent"),onChange:n=>e(a=>{a.background=n.target.value})})]})]}),"opacity"in r&&d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Opacity"}),d.jsx("input",{className:"prop-field__input",type:"number",step:.05,min:0,max:1,value:Number(r.opacity??1),onChange:n=>e(a=>{a.opacity=parseFloat(n.target.value)})})]})]}):null}function Md(){const{actions:{setProp:e},props:t}=M(n=>({props:n.data.props})),r=t;return!("borderWidth"in r)&&!("borderRadius"in r)?null:d.jsxs("div",{className:"prop-section",children:[d.jsx("div",{className:"prop-section__title",children:"Border"}),"borderWidth"in r&&d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Width"}),d.jsx("input",{className:"prop-field__input",type:"number",min:0,max:20,value:Number(r.borderWidth||0),onChange:n=>e(a=>{a.borderWidth=parseInt(n.target.value)||0})})]}),"borderStyle"in r&&Number(r.borderWidth||0)>0&&d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Style"}),d.jsxs("select",{className:"prop-field__input",value:String(r.borderStyle||"solid"),onChange:n=>e(a=>{a.borderStyle=n.target.value}),children:[d.jsx("option",{value:"solid",children:"Solid"}),d.jsx("option",{value:"dashed",children:"Dashed"}),d.jsx("option",{value:"dotted",children:"Dotted"})]})]}),"borderColor"in r&&Number(r.borderWidth||0)>0&&d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Color"}),d.jsxs("div",{className:"prop-field__color-row",children:[d.jsx("input",{className:"prop-field__color-swatch",type:"color",value:String(r.borderColor||"#d1d5db"),onChange:n=>e(a=>{a.borderColor=n.target.value})}),d.jsx("input",{className:"prop-field__input",type:"text",value:String(r.borderColor||"#d1d5db"),onChange:n=>e(a=>{a.borderColor=n.target.value})})]})]}),"borderRadius"in r&&d.jsxs("label",{className:"prop-field",children:[d.jsx("span",{className:"prop-field__label",children:"Radius"}),d.jsx("input",{className:"prop-field__input",type:"number",min:0,max:100,value:Number(r.borderRadius||0),onChange:n=>e(a=>{a.borderRadius=parseInt(n.target.value)||0})})]})]})}function Hd(){const{selected:e,selectedNodeId:t}=Te(r=>{const[n]=r.events.selected;return{selectedNodeId:n,selected:n!=null}});return!e||!t?d.jsx("div",{className:"property-panel",children:d.jsx("div",{className:"property-panel__empty",children:"Select an element to edit its properties"})}):d.jsxs("div",{className:"property-panel",children:[d.jsx("div",{className:"property-panel__header",children:"Properties"}),d.jsx("div",{className:"property-panel__content",children:d.jsx(qd,{})})]})}function qd(){return d.jsxs(d.Fragment,{children:[d.jsx(Id,{}),d.jsx(Rd,{}),d.jsx(kd,{}),d.jsx(Fd,{}),d.jsx(Ld,{}),d.jsx(Md,{})]})}function Bd(){const{query:e,actions:t}=Te(),r=z(i=>i.editorState),n=z(i=>i.currentFile),a=z(i=>i.debouncedSave);z(i=>i.setEditorState);const o=b.useRef(!1),s=b.useRef(null);b.useEffect(()=>{if(r&&r!==s.current){o.current=!0;try{t.deserialize(r)}catch{}setTimeout(()=>{o.current=!1},100)}},[r,t]),b.useEffect(()=>{if(!n)return;const i=e.subscribe(()=>{if(!o.current)try{const l=e.serialize();l!==s.current&&(s.current=l,a(l))}catch{}});return()=>{typeof i=="function"&&i()}},[e,n,a])}const zd={ContainerComponent:nt,TextComponent:er,ButtonComponent:tr,ImageComponent:rr,SpacerComponent:nr};function Ud(){const e=z(t=>t.mode);return d.jsx(Sd,{resolver:zd,onRender:$d,enabled:e==="design",children:d.jsx(Gd,{})})}function Gd(){return Bd(),d.jsxs("div",{className:"canvas-editor",children:[d.jsx(Dd,{}),d.jsxs("div",{className:"canvas-editor__center",children:[d.jsx(Pd,{}),d.jsx(Td,{})]}),d.jsx(Hd,{})]})}function Kd(){const e=z(n=>n.fetchFiles),t=z(n=>n.loadFile),r=z(n=>n.currentFile);return z(n=>n.files),b.useEffect(()=>{e().then(()=>{const n=Kn();n&&!r&&t(n)})},[]),d.jsx("div",{className:"canvas-section",style:{height:"100%"},children:d.jsx(Ud,{})})}export{Kd as default};
@@ -1 +1 @@
1
- import{c as u,r as x,j as s,R as b}from"./index-DPpOdAtC.js";const d=u((a,e)=>({manifest:null,activePage:null,pageData:null,searchQuery:"",searchResults:[],loading:!1,searchLoading:!1,sidebarCollapsed:{},fetchManifest:async()=>{try{const n=await fetch("/api/docs/manifest");if(n.ok){const r=await n.json();a({manifest:r});const o={};for(const l of r.groups||[])if(o[l.id]=l.collapsed,l.subgroups)for(const i of l.subgroups)o[`${l.id}/${i.id}`]=i.collapsed;a({sidebarCollapsed:o})}}catch{}},selectPage:async(n,r)=>{a({loading:!0,activePage:{kind:n,id:r}});try{let o="";switch(n){case"symbol":o=`/api/docs/symbol/${encodeURIComponent(r)}`;break;case"flow":o=`/api/docs/flow/${encodeURIComponent(r)}`;break;case"portal":o="/api/docs/portal";break;case"custom":o=`/api/docs/page/${encodeURIComponent(r)}`;break}const l=await fetch(o);if(l.ok){const i=await l.json();a({pageData:i,loading:!1})}else a({pageData:null,loading:!1})}catch{a({pageData:null,loading:!1})}},search:async n=>{if(a({searchQuery:n,searchLoading:!0}),!n.trim()){a({searchResults:[],searchLoading:!1});return}try{const r=await fetch(`/api/docs/search?q=${encodeURIComponent(n)}&limit=20`);if(r.ok){const o=await r.json();a({searchResults:o.results||[],searchLoading:!1})}else a({searchResults:[],searchLoading:!1})}catch{a({searchResults:[],searchLoading:!1})}},clearSearch:()=>a({searchQuery:"",searchResults:[]}),toggleGroup:n=>{const r=e().sidebarCollapsed;a({sidebarCollapsed:{...r,[n]:!r[n]}})}})),y={component:"var(--p-symbol-component)",flow:"var(--p-symbol-flow)",gate:"var(--p-symbol-gate)",signal:"var(--p-symbol-signal)",aspect:"var(--p-symbol-aspect)",custom:"var(--p-accent-blue)",portal:"var(--p-accent-orange)",guide:"var(--p-accent-green)"},N={component:"#",flow:"$",gate:"^",signal:"!",aspect:"~"};function f(){const a=d(c=>c.manifest),e=d(c=>c.activePage),n=d(c=>c.searchQuery),r=d(c=>c.sidebarCollapsed),o=d(c=>c.selectPage),l=d(c=>c.search),i=d(c=>c.clearSearch),t=d(c=>c.toggleGroup),h=x.useCallback(c=>{const g=c.target.value;g?l(g):i()},[l,i]),m=x.useCallback(c=>{i(),o({component:"symbol",signal:"symbol",aspect:"symbol",gate:"symbol",flow:"flow",portal:"portal",custom:"custom",guide:"custom"}[c.kind]||"symbol",c.id)},[o,i]);return a?s.jsxs("div",{className:"docs-sidebar",children:[s.jsx("div",{className:"docs-sidebar__search",children:s.jsx("input",{type:"text",placeholder:"Search docs...",value:n,onChange:h,className:"docs-sidebar__search-input"})}),s.jsx("div",{className:"docs-sidebar__groups",children:a.groups.map(c=>s.jsx(_,{group:c,collapsed:r[c.id]??c.collapsed,activePage:e,sidebarCollapsed:r,onToggle:t,onItemClick:m},c.id))})]}):s.jsx("div",{className:"docs-sidebar docs-sidebar--loading",children:"Loading..."})}function _({group:a,collapsed:e,activePage:n,sidebarCollapsed:r,onToggle:o,onItemClick:l}){var i;return s.jsxs("div",{className:"docs-sidebar__group",children:[s.jsxs("button",{className:"docs-sidebar__group-header",onClick:()=>o(a.id),children:[s.jsx("span",{className:"docs-sidebar__group-arrow",children:e?"▸":"▾"}),s.jsx("span",{className:"docs-sidebar__group-label",children:a.label}),s.jsx("span",{className:"docs-sidebar__group-count",children:a.items.length})]}),!e&&s.jsxs(s.Fragment,{children:[(i=a.subgroups)==null?void 0:i.map(t=>s.jsx(_,{group:t,collapsed:r[`${a.id}/${t.id}`]??t.collapsed,activePage:n,sidebarCollapsed:r,onToggle:h=>o(`${a.id}/${h}`),onItemClick:l},t.id)),a.items.map(t=>s.jsxs("button",{className:`docs-sidebar__item ${(n==null?void 0:n.id)===t.id?"docs-sidebar__item--active":""}`,onClick:()=>l(t),title:t.description,children:[s.jsx("span",{className:"docs-sidebar__item-prefix",style:{color:y[t.kind]},children:N[t.kind]||""}),s.jsx("span",{className:"docs-sidebar__item-label",children:t.label}),t.badge&&s.jsx("span",{className:"docs-sidebar__item-badge",children:t.badge})]},t.id))]})]})}const v={"#":"var(--p-symbol-component)",$:"var(--p-symbol-flow)","^":"var(--p-symbol-gate)","!":"var(--p-symbol-signal)","~":"var(--p-symbol-aspect)"};function p({symbol:a,label:e}){const n=d(m=>m.selectPage),r=d(m=>m.clearSearch),o=a.charAt(0),l=v[o]||"var(--p-text-primary)",i=a.replace(/^[#$^!~]/,""),h={"#":"symbol",$:"flow","^":"symbol","!":"symbol","~":"symbol"}[o]||"symbol";return s.jsx("button",{className:"symbol-link",style:{color:l},onClick:()=>{r(),n(h,i)},title:e||a,children:e||a})}function k({entries:a}){return a.length===0?null:s.jsx("table",{className:"docs-table docs-table--properties",children:s.jsx("tbody",{children:a.map(e=>s.jsxs("tr",{children:[s.jsx("td",{className:"docs-table__key",children:e.key}),s.jsx("td",{className:"docs-table__value",children:s.jsx("code",{children:e.value})})]},e.key))})})}function w({data:a}){var n,r,o,l,i,t,h,m;const e=a;return s.jsxs("div",{className:"docs-page docs-page--symbol",children:[s.jsxs("header",{className:"docs-page__header",children:[s.jsx("span",{className:"docs-page__symbol","data-kind":e.category,children:e.symbol}),s.jsx("h1",{className:"docs-page__title",children:e.name}),e.componentType&&s.jsx("span",{className:"docs-page__type",children:e.componentType})]}),e.description&&s.jsx("p",{className:"docs-page__description",children:e.description}),((n=e.tags)==null?void 0:n.length)>0&&s.jsx("div",{className:"docs-page__tags",children:e.tags.map(c=>s.jsx("span",{className:"docs-page__tag",children:c},c))}),s.jsx(k,{entries:[{key:"Path",value:e.path},...e.parent?[{key:"Parent",value:e.parent}]:[],...(r=e.children)!=null&&r.length?[{key:"Children",value:e.children.join(", ")}]:[]]}),((o=e.related)==null?void 0:o.length)>0&&s.jsxs("section",{className:"docs-page__section",children:[s.jsx("h2",{children:"Related Symbols"}),s.jsx("div",{className:"docs-page__symbol-list",children:e.related.map(c=>s.jsx(p,{symbol:c},c))})]}),((l=e.referencedBy)==null?void 0:l.length)>0&&s.jsxs("section",{className:"docs-page__section",children:[s.jsx("h2",{children:"Referenced By"}),s.jsx("div",{className:"docs-page__symbol-list",children:e.referencedBy.map(c=>s.jsx(p,{symbol:c},c))})]}),((i=e.references)==null?void 0:i.length)>0&&s.jsxs("section",{className:"docs-page__section",children:[s.jsx("h2",{children:"References"}),s.jsx("div",{className:"docs-page__symbol-list",children:e.references.map(c=>s.jsx(p,{symbol:c},c))})]}),((t=e.flows)==null?void 0:t.length)>0&&s.jsxs("section",{className:"docs-page__section",children:[s.jsx("h2",{children:"Flows"}),s.jsx("div",{className:"docs-page__symbol-list",children:e.flows.map(c=>s.jsx(p,{symbol:`$${c.id}`,label:c.name},c.id))})]}),((h=e.gates)==null?void 0:h.length)>0&&s.jsxs("section",{className:"docs-page__section",children:[s.jsx("h2",{children:"Gates"}),s.jsx("div",{className:"docs-page__symbol-list",children:e.gates.map(c=>s.jsx(p,{symbol:`^${c.id}`,label:c.description},c.id))})]}),((m=e.guides)==null?void 0:m.length)>0&&s.jsxs("section",{className:"docs-page__section",children:[s.jsx("h2",{children:"Related Guides"}),e.guides.map(c=>s.jsx("div",{className:"docs-page__guide",children:c.title},c.id))]})]})}const j={gate:"var(--p-symbol-gate)",action:"var(--p-symbol-component)",signal:"var(--p-symbol-signal)"};function S({steps:a}){return s.jsx("div",{className:"flow-steps",children:a.map((e,n)=>s.jsxs("div",{className:"flow-steps__step",children:[s.jsxs("div",{className:"flow-steps__connector",children:[s.jsx("span",{className:"flow-steps__dot",style:{background:j[e.type]||"var(--p-text-muted)"}}),n<a.length-1&&s.jsx("span",{className:"flow-steps__line"})]}),s.jsxs("div",{className:"flow-steps__content",children:[s.jsx("span",{className:"flow-steps__type",style:{color:j[e.type]},children:e.type}),s.jsx(p,{symbol:e.symbol}),e.description&&s.jsx("span",{className:"flow-steps__desc",children:e.description})]})]},n))})}function R({data:a}){var n,r;const e=a;return s.jsxs("div",{className:"docs-page docs-page--flow",children:[s.jsxs("header",{className:"docs-page__header",children:[s.jsx("span",{className:"docs-page__symbol","data-kind":"flows",children:e.symbol}),s.jsx("h1",{className:"docs-page__title",children:e.name})]}),e.description&&s.jsx("p",{className:"docs-page__description",children:e.description}),e.trigger&&s.jsxs("div",{className:"docs-page__trigger",children:[s.jsx("strong",{children:"Trigger:"})," ",s.jsx("code",{children:e.trigger})]}),((n=e.steps)==null?void 0:n.length)>0&&s.jsxs("section",{className:"docs-page__section",children:[s.jsx("h2",{children:"Steps"}),s.jsx(S,{steps:e.steps})]}),e.successSignal&&s.jsxs("div",{className:"docs-page__signal",children:[s.jsx("strong",{children:"Success:"})," ",s.jsx(p,{symbol:e.successSignal})]}),e.errorSignal&&s.jsxs("div",{className:"docs-page__signal docs-page__signal--error",children:[s.jsx("strong",{children:"Error:"})," ",s.jsx(p,{symbol:e.errorSignal})]}),((r=e.tags)==null?void 0:r.length)>0&&s.jsx("div",{className:"docs-page__tags",children:e.tags.map(o=>s.jsx("span",{className:"docs-page__tag",children:o},o))})]})}function $({gates:a}){return a.length===0?s.jsx("span",{className:"gate-chain--empty",children:"none"}):s.jsx("span",{className:"gate-chain",children:a.map((e,n)=>s.jsxs(b.Fragment,{children:[n>0&&s.jsx("span",{className:"gate-chain__separator",children:" → "}),s.jsx(p,{symbol:e.symbol,label:e.description||e.symbol})]},e.symbol))})}function C({data:a}){var n,r;const e=a;return s.jsxs("div",{className:"docs-page docs-page--portal",children:[s.jsx("header",{className:"docs-page__header",children:s.jsx("h1",{className:"docs-page__title",children:"Portal — Gates & Routes"})}),((n=e.gates)==null?void 0:n.length)>0&&s.jsxs("section",{className:"docs-page__section",children:[s.jsx("h2",{children:"Gates"}),s.jsxs("table",{className:"docs-table",children:[s.jsx("thead",{children:s.jsxs("tr",{children:[s.jsx("th",{children:"Gate"}),s.jsx("th",{children:"Description"}),s.jsx("th",{children:"Routes"})]})}),s.jsx("tbody",{children:e.gates.map(o=>{var l;return s.jsxs("tr",{children:[s.jsx("td",{children:s.jsx(p,{symbol:o.symbol})}),s.jsx("td",{children:o.description}),s.jsx("td",{children:((l=o.routes)==null?void 0:l.length)||0})]},o.symbol)})})]})]}),((r=e.routes)==null?void 0:r.length)>0&&s.jsxs("section",{className:"docs-page__section",children:[s.jsx("h2",{children:"Routes"}),s.jsxs("table",{className:"docs-table",children:[s.jsx("thead",{children:s.jsxs("tr",{children:[s.jsx("th",{children:"Method"}),s.jsx("th",{children:"Route"}),s.jsx("th",{children:"Gate Chain"})]})}),s.jsx("tbody",{children:e.routes.map((o,l)=>s.jsxs("tr",{children:[s.jsx("td",{children:s.jsx("code",{className:"docs-method",children:o.method})}),s.jsx("td",{children:s.jsx("code",{children:o.route})}),s.jsx("td",{children:s.jsx($,{gates:o.gates||[]})})]},l))})]})]}),(!e.gates||e.gates.length===0)&&(!e.routes||e.routes.length===0)&&s.jsx("p",{className:"docs-page__empty",children:"No portal.yaml found. Add one to document your API authorization."})]})}function P({data:a}){const e=a;return s.jsxs("div",{className:"docs-page docs-page--custom",children:[s.jsx("header",{className:"docs-page__header",children:s.jsx("h1",{className:"docs-page__title",children:e.title||e.slug})}),e.description&&s.jsx("p",{className:"docs-page__description",children:e.description}),s.jsx("div",{className:"docs-page__body",dangerouslySetInnerHTML:{__html:D(e.body||"")}})]})}function D(a){return a.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/^### (.+)$/gm,"<h3>$1</h3>").replace(/^## (.+)$/gm,"<h2>$1</h2>").replace(/^# (.+)$/gm,"<h1>$1</h1>").replace(/\*\*(.+?)\*\*/g,"<strong>$1</strong>").replace(/`([^`]+)`/g,"<code>$1</code>").replace(/\n\n/g,"</p><p>").replace(/^/,"<p>").replace(/$/,"</p>")}function L(){const a=d(l=>l.searchResults),e=d(l=>l.searchQuery),n=d(l=>l.searchLoading),r=d(l=>l.selectPage),o=d(l=>l.clearSearch);return n?s.jsx("div",{className:"docs__loading",children:"Searching..."}):s.jsxs("div",{className:"docs-search",children:[s.jsxs("h2",{className:"docs-search__title",children:[a.length," result",a.length!==1?"s":"",' for "',e,'"']}),a.length===0&&s.jsx("p",{className:"docs-search__empty",children:"No matching documentation found."}),s.jsx("div",{className:"docs-search__results",children:a.map(l=>s.jsxs("button",{className:"docs-search__result",onClick:()=>{o(),r({component:"symbol",signal:"symbol",aspect:"symbol",gate:"symbol",flow:"flow",portal:"portal",custom:"custom"}[l.kind]||"symbol",l.id)},children:[s.jsxs("div",{className:"docs-search__result-header",children:[s.jsx("span",{className:"docs-search__result-kind","data-kind":l.kind,children:l.kind}),s.jsx("span",{className:"docs-search__result-label",children:l.label})]}),s.jsx("p",{className:"docs-search__result-desc",children:l.description})]},l.id))})]})}function G(){const a=d(t=>t.manifest),e=d(t=>t.activePage),n=d(t=>t.pageData),r=d(t=>t.loading),o=d(t=>t.searchQuery),l=d(t=>t.fetchManifest);x.useEffect(()=>{l()},[]);const i=()=>{if(o)return s.jsx(L,{});if(r)return s.jsx("div",{className:"docs__loading",children:"Loading..."});if(!e||!n)return s.jsxs("div",{className:"docs__welcome",children:[s.jsx("h2",{children:(a==null?void 0:a.title)||"Documentation"}),s.jsx("p",{children:"Select a symbol from the sidebar to view its documentation."}),a&&s.jsxs("div",{className:"docs__stats",children:[s.jsxs("span",{children:[a.totalSymbols," symbols documented"]}),Object.entries(a.symbolCounts).map(([t,h])=>s.jsxs("span",{className:"docs__stat-item",children:[t,": ",h]},t))]})]});switch(e.kind){case"symbol":return s.jsx(w,{data:n});case"flow":return s.jsx(R,{data:n});case"portal":return s.jsx(C,{data:n});case"custom":return s.jsx(P,{data:n});default:return null}};return s.jsxs("div",{className:"docs",children:[s.jsx(f,{}),s.jsx("div",{className:"docs__content",children:i()})]})}export{G as default};
1
+ import{c as u,r as x,j as s,R as b}from"./index-BaOmyn11.js";const d=u((a,e)=>({manifest:null,activePage:null,pageData:null,searchQuery:"",searchResults:[],loading:!1,searchLoading:!1,sidebarCollapsed:{},fetchManifest:async()=>{try{const n=await fetch("/api/docs/manifest");if(n.ok){const r=await n.json();a({manifest:r});const o={};for(const l of r.groups||[])if(o[l.id]=l.collapsed,l.subgroups)for(const i of l.subgroups)o[`${l.id}/${i.id}`]=i.collapsed;a({sidebarCollapsed:o})}}catch{}},selectPage:async(n,r)=>{a({loading:!0,activePage:{kind:n,id:r}});try{let o="";switch(n){case"symbol":o=`/api/docs/symbol/${encodeURIComponent(r)}`;break;case"flow":o=`/api/docs/flow/${encodeURIComponent(r)}`;break;case"portal":o="/api/docs/portal";break;case"custom":o=`/api/docs/page/${encodeURIComponent(r)}`;break}const l=await fetch(o);if(l.ok){const i=await l.json();a({pageData:i,loading:!1})}else a({pageData:null,loading:!1})}catch{a({pageData:null,loading:!1})}},search:async n=>{if(a({searchQuery:n,searchLoading:!0}),!n.trim()){a({searchResults:[],searchLoading:!1});return}try{const r=await fetch(`/api/docs/search?q=${encodeURIComponent(n)}&limit=20`);if(r.ok){const o=await r.json();a({searchResults:o.results||[],searchLoading:!1})}else a({searchResults:[],searchLoading:!1})}catch{a({searchResults:[],searchLoading:!1})}},clearSearch:()=>a({searchQuery:"",searchResults:[]}),toggleGroup:n=>{const r=e().sidebarCollapsed;a({sidebarCollapsed:{...r,[n]:!r[n]}})}})),y={component:"var(--p-symbol-component)",flow:"var(--p-symbol-flow)",gate:"var(--p-symbol-gate)",signal:"var(--p-symbol-signal)",aspect:"var(--p-symbol-aspect)",custom:"var(--p-accent-blue)",portal:"var(--p-accent-orange)",guide:"var(--p-accent-green)"},N={component:"#",flow:"$",gate:"^",signal:"!",aspect:"~"};function f(){const a=d(c=>c.manifest),e=d(c=>c.activePage),n=d(c=>c.searchQuery),r=d(c=>c.sidebarCollapsed),o=d(c=>c.selectPage),l=d(c=>c.search),i=d(c=>c.clearSearch),t=d(c=>c.toggleGroup),h=x.useCallback(c=>{const g=c.target.value;g?l(g):i()},[l,i]),m=x.useCallback(c=>{i(),o({component:"symbol",signal:"symbol",aspect:"symbol",gate:"symbol",flow:"flow",portal:"portal",custom:"custom",guide:"custom"}[c.kind]||"symbol",c.id)},[o,i]);return a?s.jsxs("div",{className:"docs-sidebar",children:[s.jsx("div",{className:"docs-sidebar__search",children:s.jsx("input",{type:"text",placeholder:"Search docs...",value:n,onChange:h,className:"docs-sidebar__search-input"})}),s.jsx("div",{className:"docs-sidebar__groups",children:a.groups.map(c=>s.jsx(_,{group:c,collapsed:r[c.id]??c.collapsed,activePage:e,sidebarCollapsed:r,onToggle:t,onItemClick:m},c.id))})]}):s.jsx("div",{className:"docs-sidebar docs-sidebar--loading",children:"Loading..."})}function _({group:a,collapsed:e,activePage:n,sidebarCollapsed:r,onToggle:o,onItemClick:l}){var i;return s.jsxs("div",{className:"docs-sidebar__group",children:[s.jsxs("button",{className:"docs-sidebar__group-header",onClick:()=>o(a.id),children:[s.jsx("span",{className:"docs-sidebar__group-arrow",children:e?"▸":"▾"}),s.jsx("span",{className:"docs-sidebar__group-label",children:a.label}),s.jsx("span",{className:"docs-sidebar__group-count",children:a.items.length})]}),!e&&s.jsxs(s.Fragment,{children:[(i=a.subgroups)==null?void 0:i.map(t=>s.jsx(_,{group:t,collapsed:r[`${a.id}/${t.id}`]??t.collapsed,activePage:n,sidebarCollapsed:r,onToggle:h=>o(`${a.id}/${h}`),onItemClick:l},t.id)),a.items.map(t=>s.jsxs("button",{className:`docs-sidebar__item ${(n==null?void 0:n.id)===t.id?"docs-sidebar__item--active":""}`,onClick:()=>l(t),title:t.description,children:[s.jsx("span",{className:"docs-sidebar__item-prefix",style:{color:y[t.kind]},children:N[t.kind]||""}),s.jsx("span",{className:"docs-sidebar__item-label",children:t.label}),t.badge&&s.jsx("span",{className:"docs-sidebar__item-badge",children:t.badge})]},t.id))]})]})}const v={"#":"var(--p-symbol-component)",$:"var(--p-symbol-flow)","^":"var(--p-symbol-gate)","!":"var(--p-symbol-signal)","~":"var(--p-symbol-aspect)"};function p({symbol:a,label:e}){const n=d(m=>m.selectPage),r=d(m=>m.clearSearch),o=a.charAt(0),l=v[o]||"var(--p-text-primary)",i=a.replace(/^[#$^!~]/,""),h={"#":"symbol",$:"flow","^":"symbol","!":"symbol","~":"symbol"}[o]||"symbol";return s.jsx("button",{className:"symbol-link",style:{color:l},onClick:()=>{r(),n(h,i)},title:e||a,children:e||a})}function k({entries:a}){return a.length===0?null:s.jsx("table",{className:"docs-table docs-table--properties",children:s.jsx("tbody",{children:a.map(e=>s.jsxs("tr",{children:[s.jsx("td",{className:"docs-table__key",children:e.key}),s.jsx("td",{className:"docs-table__value",children:s.jsx("code",{children:e.value})})]},e.key))})})}function w({data:a}){var n,r,o,l,i,t,h,m;const e=a;return s.jsxs("div",{className:"docs-page docs-page--symbol",children:[s.jsxs("header",{className:"docs-page__header",children:[s.jsx("span",{className:"docs-page__symbol","data-kind":e.category,children:e.symbol}),s.jsx("h1",{className:"docs-page__title",children:e.name}),e.componentType&&s.jsx("span",{className:"docs-page__type",children:e.componentType})]}),e.description&&s.jsx("p",{className:"docs-page__description",children:e.description}),((n=e.tags)==null?void 0:n.length)>0&&s.jsx("div",{className:"docs-page__tags",children:e.tags.map(c=>s.jsx("span",{className:"docs-page__tag",children:c},c))}),s.jsx(k,{entries:[{key:"Path",value:e.path},...e.parent?[{key:"Parent",value:e.parent}]:[],...(r=e.children)!=null&&r.length?[{key:"Children",value:e.children.join(", ")}]:[]]}),((o=e.related)==null?void 0:o.length)>0&&s.jsxs("section",{className:"docs-page__section",children:[s.jsx("h2",{children:"Related Symbols"}),s.jsx("div",{className:"docs-page__symbol-list",children:e.related.map(c=>s.jsx(p,{symbol:c},c))})]}),((l=e.referencedBy)==null?void 0:l.length)>0&&s.jsxs("section",{className:"docs-page__section",children:[s.jsx("h2",{children:"Referenced By"}),s.jsx("div",{className:"docs-page__symbol-list",children:e.referencedBy.map(c=>s.jsx(p,{symbol:c},c))})]}),((i=e.references)==null?void 0:i.length)>0&&s.jsxs("section",{className:"docs-page__section",children:[s.jsx("h2",{children:"References"}),s.jsx("div",{className:"docs-page__symbol-list",children:e.references.map(c=>s.jsx(p,{symbol:c},c))})]}),((t=e.flows)==null?void 0:t.length)>0&&s.jsxs("section",{className:"docs-page__section",children:[s.jsx("h2",{children:"Flows"}),s.jsx("div",{className:"docs-page__symbol-list",children:e.flows.map(c=>s.jsx(p,{symbol:`$${c.id}`,label:c.name},c.id))})]}),((h=e.gates)==null?void 0:h.length)>0&&s.jsxs("section",{className:"docs-page__section",children:[s.jsx("h2",{children:"Gates"}),s.jsx("div",{className:"docs-page__symbol-list",children:e.gates.map(c=>s.jsx(p,{symbol:`^${c.id}`,label:c.description},c.id))})]}),((m=e.guides)==null?void 0:m.length)>0&&s.jsxs("section",{className:"docs-page__section",children:[s.jsx("h2",{children:"Related Guides"}),e.guides.map(c=>s.jsx("div",{className:"docs-page__guide",children:c.title},c.id))]})]})}const j={gate:"var(--p-symbol-gate)",action:"var(--p-symbol-component)",signal:"var(--p-symbol-signal)"};function S({steps:a}){return s.jsx("div",{className:"flow-steps",children:a.map((e,n)=>s.jsxs("div",{className:"flow-steps__step",children:[s.jsxs("div",{className:"flow-steps__connector",children:[s.jsx("span",{className:"flow-steps__dot",style:{background:j[e.type]||"var(--p-text-muted)"}}),n<a.length-1&&s.jsx("span",{className:"flow-steps__line"})]}),s.jsxs("div",{className:"flow-steps__content",children:[s.jsx("span",{className:"flow-steps__type",style:{color:j[e.type]},children:e.type}),s.jsx(p,{symbol:e.symbol}),e.description&&s.jsx("span",{className:"flow-steps__desc",children:e.description})]})]},n))})}function R({data:a}){var n,r;const e=a;return s.jsxs("div",{className:"docs-page docs-page--flow",children:[s.jsxs("header",{className:"docs-page__header",children:[s.jsx("span",{className:"docs-page__symbol","data-kind":"flows",children:e.symbol}),s.jsx("h1",{className:"docs-page__title",children:e.name})]}),e.description&&s.jsx("p",{className:"docs-page__description",children:e.description}),e.trigger&&s.jsxs("div",{className:"docs-page__trigger",children:[s.jsx("strong",{children:"Trigger:"})," ",s.jsx("code",{children:e.trigger})]}),((n=e.steps)==null?void 0:n.length)>0&&s.jsxs("section",{className:"docs-page__section",children:[s.jsx("h2",{children:"Steps"}),s.jsx(S,{steps:e.steps})]}),e.successSignal&&s.jsxs("div",{className:"docs-page__signal",children:[s.jsx("strong",{children:"Success:"})," ",s.jsx(p,{symbol:e.successSignal})]}),e.errorSignal&&s.jsxs("div",{className:"docs-page__signal docs-page__signal--error",children:[s.jsx("strong",{children:"Error:"})," ",s.jsx(p,{symbol:e.errorSignal})]}),((r=e.tags)==null?void 0:r.length)>0&&s.jsx("div",{className:"docs-page__tags",children:e.tags.map(o=>s.jsx("span",{className:"docs-page__tag",children:o},o))})]})}function $({gates:a}){return a.length===0?s.jsx("span",{className:"gate-chain--empty",children:"none"}):s.jsx("span",{className:"gate-chain",children:a.map((e,n)=>s.jsxs(b.Fragment,{children:[n>0&&s.jsx("span",{className:"gate-chain__separator",children:" → "}),s.jsx(p,{symbol:e.symbol,label:e.description||e.symbol})]},e.symbol))})}function C({data:a}){var n,r;const e=a;return s.jsxs("div",{className:"docs-page docs-page--portal",children:[s.jsx("header",{className:"docs-page__header",children:s.jsx("h1",{className:"docs-page__title",children:"Portal — Gates & Routes"})}),((n=e.gates)==null?void 0:n.length)>0&&s.jsxs("section",{className:"docs-page__section",children:[s.jsx("h2",{children:"Gates"}),s.jsxs("table",{className:"docs-table",children:[s.jsx("thead",{children:s.jsxs("tr",{children:[s.jsx("th",{children:"Gate"}),s.jsx("th",{children:"Description"}),s.jsx("th",{children:"Routes"})]})}),s.jsx("tbody",{children:e.gates.map(o=>{var l;return s.jsxs("tr",{children:[s.jsx("td",{children:s.jsx(p,{symbol:o.symbol})}),s.jsx("td",{children:o.description}),s.jsx("td",{children:((l=o.routes)==null?void 0:l.length)||0})]},o.symbol)})})]})]}),((r=e.routes)==null?void 0:r.length)>0&&s.jsxs("section",{className:"docs-page__section",children:[s.jsx("h2",{children:"Routes"}),s.jsxs("table",{className:"docs-table",children:[s.jsx("thead",{children:s.jsxs("tr",{children:[s.jsx("th",{children:"Method"}),s.jsx("th",{children:"Route"}),s.jsx("th",{children:"Gate Chain"})]})}),s.jsx("tbody",{children:e.routes.map((o,l)=>s.jsxs("tr",{children:[s.jsx("td",{children:s.jsx("code",{className:"docs-method",children:o.method})}),s.jsx("td",{children:s.jsx("code",{children:o.route})}),s.jsx("td",{children:s.jsx($,{gates:o.gates||[]})})]},l))})]})]}),(!e.gates||e.gates.length===0)&&(!e.routes||e.routes.length===0)&&s.jsx("p",{className:"docs-page__empty",children:"No portal.yaml found. Add one to document your API authorization."})]})}function P({data:a}){const e=a;return s.jsxs("div",{className:"docs-page docs-page--custom",children:[s.jsx("header",{className:"docs-page__header",children:s.jsx("h1",{className:"docs-page__title",children:e.title||e.slug})}),e.description&&s.jsx("p",{className:"docs-page__description",children:e.description}),s.jsx("div",{className:"docs-page__body",dangerouslySetInnerHTML:{__html:D(e.body||"")}})]})}function D(a){return a.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/^### (.+)$/gm,"<h3>$1</h3>").replace(/^## (.+)$/gm,"<h2>$1</h2>").replace(/^# (.+)$/gm,"<h1>$1</h1>").replace(/\*\*(.+?)\*\*/g,"<strong>$1</strong>").replace(/`([^`]+)`/g,"<code>$1</code>").replace(/\n\n/g,"</p><p>").replace(/^/,"<p>").replace(/$/,"</p>")}function L(){const a=d(l=>l.searchResults),e=d(l=>l.searchQuery),n=d(l=>l.searchLoading),r=d(l=>l.selectPage),o=d(l=>l.clearSearch);return n?s.jsx("div",{className:"docs__loading",children:"Searching..."}):s.jsxs("div",{className:"docs-search",children:[s.jsxs("h2",{className:"docs-search__title",children:[a.length," result",a.length!==1?"s":"",' for "',e,'"']}),a.length===0&&s.jsx("p",{className:"docs-search__empty",children:"No matching documentation found."}),s.jsx("div",{className:"docs-search__results",children:a.map(l=>s.jsxs("button",{className:"docs-search__result",onClick:()=>{o(),r({component:"symbol",signal:"symbol",aspect:"symbol",gate:"symbol",flow:"flow",portal:"portal",custom:"custom"}[l.kind]||"symbol",l.id)},children:[s.jsxs("div",{className:"docs-search__result-header",children:[s.jsx("span",{className:"docs-search__result-kind","data-kind":l.kind,children:l.kind}),s.jsx("span",{className:"docs-search__result-label",children:l.label})]}),s.jsx("p",{className:"docs-search__result-desc",children:l.description})]},l.id))})]})}function G(){const a=d(t=>t.manifest),e=d(t=>t.activePage),n=d(t=>t.pageData),r=d(t=>t.loading),o=d(t=>t.searchQuery),l=d(t=>t.fetchManifest);x.useEffect(()=>{l()},[]);const i=()=>{if(o)return s.jsx(L,{});if(r)return s.jsx("div",{className:"docs__loading",children:"Loading..."});if(!e||!n)return s.jsxs("div",{className:"docs__welcome",children:[s.jsx("h2",{children:(a==null?void 0:a.title)||"Documentation"}),s.jsx("p",{children:"Select a symbol from the sidebar to view its documentation."}),a&&s.jsxs("div",{className:"docs__stats",children:[s.jsxs("span",{children:[a.totalSymbols," symbols documented"]}),Object.entries(a.symbolCounts).map(([t,h])=>s.jsxs("span",{className:"docs__stat-item",children:[t,": ",h]},t))]})]});switch(e.kind){case"symbol":return s.jsx(w,{data:n});case"flow":return s.jsx(R,{data:n});case"portal":return s.jsx(C,{data:n});case"custom":return s.jsx(P,{data:n});default:return null}};return s.jsxs("div",{className:"docs",children:[s.jsx(f,{}),s.jsx("div",{className:"docs__content",children:i()})]})}export{G as default};