@ws-ui/store 0.0.38 → 0.0.39

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs.js CHANGED
@@ -5,7 +5,7 @@ Take a look at the logic that dispatched this action: `,F,`
5
5
  (See https://redux.js.org/faq/actions#why-should-type-be-a-string-or-at-least-serializable-why-should-my-action-types-be-constants)`,`
6
6
  (To allow non-serializable values see: https://redux-toolkit.js.org/usage/usage-guide#working-with-non-serializable-data)`)}});var W=C(F);return S||(D.measureTime(function(){var $=T.getState(),j=zu($,"",t,a,p);if(j){var A=j.keyPath,K=j.value;console.error("A non-serializable value was detected in the state, in the path: `"+A+"`. Value:",K,`
7
7
  Take a look at the reducer(s) handling this action type: `+F.type+`.
8
- (See https://redux.js.org/faq/organizing-state#can-i-put-functions-promises-or-other-non-serializable-items-in-my-store-state)`)}}),D.warnIfExceeded()),W}}}}function mu(e){return typeof e=="boolean"}function KS(){return function(r){return JS(r)}}function JS(e){e===void 0&&(e={});var r=e.thunk,t=r===void 0?!0:r,a=e.immutableCheck,i=a===void 0?!0:a,s=e.serializableCheck,c=s===void 0?!0:s,l=new WS;if(t&&(mu(t)?l.push(qd):l.push(qd.withExtraArgument(t.extraArgument))),process.env.NODE_ENV!=="production"){if(i){var f={};mu(i)||(f=i),l.unshift(zS(f))}if(c){var p={};mu(c)||(p=c),l.push(VS(p))}}return l}var bu=process.env.NODE_ENV==="production";function XS(e){var r=KS(),t=e||{},a=t.reducer,i=a===void 0?void 0:a,s=t.middleware,c=s===void 0?r():s,l=t.devTools,f=l===void 0?!0:l,p=t.preloadedState,h=p===void 0?void 0:p,m=t.enhancers,_=m===void 0?void 0:m,S;if(typeof i=="function")S=i;else if(ch(i))S=ih(i);else throw new Error('"reducer" is a required argument, and must be a function or an object of functions that can be passed to combineReducers');var T=c;if(typeof T=="function"&&(T=T(r),!bu&&!Array.isArray(T)))throw new Error("when using a middleware builder function, an array of middleware must be returned");if(!bu&&T.some(function($){return typeof $!="function"}))throw new Error("each middleware provided to configureStore must be a function");var C=TS.apply(void 0,T),F=mi;f&&(F=BS(vn({trace:!bu},typeof f=="object"&&f)));var D=[C];Array.isArray(_)?D=_i([C],_):typeof _=="function"&&(D=_(D));var W=F.apply(void 0,D);return oh(S,h,W)}function Lt(e,r){function t(){for(var a=[],i=0;i<arguments.length;i++)a[i]=arguments[i];if(r){var s=r.apply(void 0,a);if(!s)throw new Error("prepareAction did not return an object");return vn(vn({type:e,payload:s.payload},"meta"in s&&{meta:s.meta}),"error"in s&&{error:s.error})}return{type:e,payload:a[0]}}return t.toString=function(){return""+e},t.type=e,t.match=function(a){return a.type===e},t}function hh(e){var r={},t=[],a,i={addCase:function(s,c){if(process.env.NODE_ENV!=="production"){if(t.length>0)throw new Error("`builder.addCase` should only be called before calling `builder.addMatcher`");if(a)throw new Error("`builder.addCase` should only be called before calling `builder.addDefaultCase`")}var l=typeof s=="string"?s:s.type;if(l in r)throw new Error("addCase cannot be called with two reducers for the same action type");return r[l]=c,i},addMatcher:function(s,c){if(process.env.NODE_ENV!=="production"&&a)throw new Error("`builder.addMatcher` should only be called before calling `builder.addDefaultCase`");return t.push({matcher:s,reducer:c}),i},addDefaultCase:function(s){if(process.env.NODE_ENV!=="production"&&a)throw new Error("`builder.addDefaultCase` can only be called once");return a=s,i}};return e(i),[r,t,a]}function ZS(e){return typeof e=="function"}function QS(e,r,t,a){t===void 0&&(t=[]);var i=typeof r=="function"?hh(r):[r,t,a],s=i[0],c=i[1],l=i[2],f;if(ZS(e))f=function(){return ui(e(),function(){})};else{var p=ui(e,function(){});f=function(){return p}}function h(m,_){m===void 0&&(m=f());var S=_i([s[_.type]],c.filter(function(T){var C=T.matcher;return C(_)}).map(function(T){var C=T.reducer;return C}));return S.filter(function(T){return!!T}).length===0&&(S=[l]),S.reduce(function(T,C){if(C)if(Jr(T)){var F=T,D=C(F,_);return typeof D>"u"?T:D}else{if(wr(T))return ui(T,function(W){return C(W,_)});var D=C(T,_);if(typeof D>"u"){if(T===null)return T;throw Error("A case reducer on a non-draftable value must not return undefined")}return D}return T},m)}return h.getInitialState=f,h}function ew(e,r){return e+"/"+r}function fr(e){var r=e.name;if(!r)throw new Error("`name` is a required option for createSlice");var t=typeof e.initialState=="function"?e.initialState:ui(e.initialState,function(){}),a=e.reducers||{},i=Object.keys(a),s={},c={},l={};i.forEach(function(h){var m=a[h],_=ew(r,h),S,T;"reducer"in m?(S=m.reducer,T=m.prepare):S=m,s[h]=S,c[_]=S,l[h]=T?Lt(_,T):Lt(_)});function f(){var h=typeof e.extraReducers=="function"?hh(e.extraReducers):[e.extraReducers],m=h[0],_=m===void 0?{}:m,S=h[1],T=S===void 0?[]:S,C=h[2],F=C===void 0?void 0:C,D=vn(vn({},_),c);return QS(t,D,T,F)}var p;return{name:r,reducer:function(h,m){return p||(p=f()),p(h,m)},actions:l,caseReducers:s,getInitialState:function(){return p||(p=f()),p.getInitialState()}}}var tw="ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW",Cc=function(e){e===void 0&&(e=21);for(var r="",t=e;t--;)r+=tw[Math.random()*64|0];return r},rw=["name","message","stack","code"],_u=function(){function e(r,t){this.payload=r,this.meta=t}return e}(),Jd=function(){function e(r,t){this.payload=r,this.meta=t}return e}(),nw=function(e){if(typeof e=="object"&&e!==null){for(var r={},t=0,a=rw;t<a.length;t++){var i=a[t];typeof e[i]=="string"&&(r[i]=e[i])}return r}return{message:String(e)}};function re(e,r,t){var a=Lt(e+"/fulfilled",function(p,h,m,_){return{payload:p,meta:yu(vn({},_||{}),{arg:m,requestId:h,requestStatus:"fulfilled"})}}),i=Lt(e+"/pending",function(p,h,m){return{payload:void 0,meta:yu(vn({},m||{}),{arg:h,requestId:p,requestStatus:"pending"})}}),s=Lt(e+"/rejected",function(p,h,m,_,S){return{payload:_,error:(t&&t.serializeError||nw)(p||"Rejected"),meta:yu(vn({},S||{}),{arg:m,requestId:h,rejectedWithValue:!!_,requestStatus:"rejected",aborted:(p==null?void 0:p.name)==="AbortError",condition:(p==null?void 0:p.name)==="ConditionError"})}}),c=!1,l=typeof AbortController<"u"?AbortController:function(){function p(){this.signal={aborted:!1,addEventListener:function(){},dispatchEvent:function(){return!1},onabort:function(){},removeEventListener:function(){}}}return p.prototype.abort=function(){process.env.NODE_ENV!=="production"&&(c||(c=!0,console.info("This platform does not implement AbortController. \nIf you want to use the AbortController to react to `abort` events, please consider importing a polyfill like 'abortcontroller-polyfill/dist/abortcontroller-polyfill-only'.")))},p}();function f(p){return function(h,m,_){var S=t!=null&&t.idGenerator?t.idGenerator(p):Cc(),T=new l,C,F=new Promise(function(j,A){return T.signal.addEventListener("abort",function(){return A({name:"AbortError",message:C||"Aborted"})})}),D=!1;function W(j){D&&(C=j,T.abort())}var $=function(){return kS(this,null,function(){var j,A,K,G,Y,se;return FS(this,function(We){switch(We.label){case 0:return We.trys.push([0,4,,5]),G=(j=t==null?void 0:t.condition)==null?void 0:j.call(t,p,{getState:m,extra:_}),ow(G)?[4,G]:[3,2];case 1:G=We.sent(),We.label=2;case 2:if(G===!1)throw{name:"ConditionError",message:"Aborted due to condition callback returning false."};return D=!0,h(i(S,p,(A=t==null?void 0:t.getPendingMeta)==null?void 0:A.call(t,{requestId:S,arg:p},{getState:m,extra:_}))),[4,Promise.race([F,Promise.resolve(r(p,{dispatch:h,getState:m,extra:_,requestId:S,signal:T.signal,rejectWithValue:function(Oe,it){return new _u(Oe,it)},fulfillWithValue:function(Oe,it){return new Jd(Oe,it)}})).then(function(Oe){if(Oe instanceof _u)throw Oe;return Oe instanceof Jd?a(Oe.payload,S,p,Oe.meta):a(Oe,S,p)})])];case 3:return K=We.sent(),[3,5];case 4:return Y=We.sent(),K=Y instanceof _u?s(null,S,p,Y.payload,Y.meta):s(Y,S,p),[3,5];case 5:return se=t&&!t.dispatchConditionRejection&&s.match(K)&&K.meta.condition,se||h(K),[2,K]}})})}();return Object.assign($,{abort:W,requestId:S,arg:p,unwrap:function(){return $.then(aw)}})}}return Object.assign(f,{pending:i,rejected:s,fulfilled:a,typePrefix:e})}function aw(e){if(e.meta&&e.meta.rejectedWithValue)throw e.payload;if(e.error)throw e.error;return e.payload}function ow(e){return e!==null&&typeof e=="object"&&typeof e.then=="function"}var iw=function(e){return e&&typeof e.match=="function"},sw=function(e,r){return iw(e)?e.match(r):e(r)};function Er(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];return function(t){return e.some(function(a){return sw(a,t)})}}function Rc(e,r){if(!e||!e.meta)return!1;var t=typeof e.meta.requestId=="string",a=r.indexOf(e.meta.requestStatus)>-1;return t&&a}function Oc(e){return typeof e[0]=="function"&&"pending"in e[0]&&"fulfilled"in e[0]&&"rejected"in e[0]}function gh(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];return e.length===0?function(t){return Rc(t,["pending"])}:Oc(e)?function(t){var a=e.map(function(s){return s.pending}),i=Er.apply(void 0,a);return i(t)}:gh()(e[0])}function vh(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];return e.length===0?function(t){return Rc(t,["rejected"])}:Oc(e)?function(t){var a=e.map(function(s){return s.rejected}),i=Er.apply(void 0,a);return i(t)}:vh()(e[0])}function yh(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];return e.length===0?function(t){return Rc(t,["fulfilled"])}:Oc(e)?function(t){var a=e.map(function(s){return s.fulfilled}),i=Er.apply(void 0,a);return i(t)}:yh()(e[0])}sS();var Yr=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Ni(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function uw(e){if(e.__esModule)return e;var r=e.default;if(typeof r=="function"){var t=function a(){return this instanceof a?Reflect.construct(r,arguments,this.constructor):r.apply(this,arguments)};t.prototype=r.prototype}else t={};return Object.defineProperty(t,"__esModule",{value:!0}),Object.keys(e).forEach(function(a){var i=Object.getOwnPropertyDescriptor(e,a);Object.defineProperty(t,a,i.get?i:{enumerable:!0,get:function(){return e[a]}})}),t}function cw(e){var r=typeof e;return e!=null&&(r=="object"||r=="function")}var so=cw,lw=typeof Yr=="object"&&Yr&&Yr.Object===Object&&Yr,mh=lw,fw=mh,dw=typeof self=="object"&&self&&self.Object===Object&&self,pw=fw||dw||Function("return this")(),Dr=pw,hw=Dr,gw=function(){return hw.Date.now()},vw=gw,yw=/\s/;function mw(e){for(var r=e.length;r--&&yw.test(e.charAt(r)););return r}var bw=mw,_w=bw,Ew=/^\s+/;function Sw(e){return e&&e.slice(0,_w(e)+1).replace(Ew,"")}var ww=Sw,Tw=Dr,xw=Tw.Symbol,Ac=xw,Xd=Ac,bh=Object.prototype,Cw=bh.hasOwnProperty,Rw=bh.toString,qa=Xd?Xd.toStringTag:void 0;function Ow(e){var r=Cw.call(e,qa),t=e[qa];try{e[qa]=void 0;var a=!0}catch{}var i=Rw.call(e);return a&&(r?e[qa]=t:delete e[qa]),i}var Aw=Ow,Pw=Object.prototype,Dw=Pw.toString;function Iw(e){return Dw.call(e)}var Fw=Iw,Zd=Ac,$w=Aw,Mw=Fw,Nw="[object Null]",Lw="[object Undefined]",Qd=Zd?Zd.toStringTag:void 0;function jw(e){return e==null?e===void 0?Lw:Nw:Qd&&Qd in Object(e)?$w(e):Mw(e)}var Li=jw;function kw(e){return e!=null&&typeof e=="object"}var Pc=kw,Bw=Li,Ww=Pc,Uw="[object Symbol]";function Hw(e){return typeof e=="symbol"||Ww(e)&&Bw(e)==Uw}var Gw=Hw,qw=ww,ep=so,Yw=Gw,tp=0/0,zw=/^[-+]0x[0-9a-f]+$/i,Vw=/^0b[01]+$/i,Kw=/^0o[0-7]+$/i,Jw=parseInt;function Xw(e){if(typeof e=="number")return e;if(Yw(e))return tp;if(ep(e)){var r=typeof e.valueOf=="function"?e.valueOf():e;e=ep(r)?r+"":r}if(typeof e!="string")return e===0?e:+e;e=qw(e);var t=Vw.test(e);return t||Kw.test(e)?Jw(e.slice(2),t?2:8):zw.test(e)?tp:+e}var Zw=Xw,Qw=so,Eu=vw,rp=Zw,eT="Expected a function",tT=Math.max,rT=Math.min;function nT(e,r,t){var a,i,s,c,l,f,p=0,h=!1,m=!1,_=!0;if(typeof e!="function")throw new TypeError(eT);r=rp(r)||0,Qw(t)&&(h=!!t.leading,m="maxWait"in t,s=m?tT(rp(t.maxWait)||0,r):s,_="trailing"in t?!!t.trailing:_);function S(K){var G=a,Y=i;return a=i=void 0,p=K,c=e.apply(Y,G),c}function T(K){return p=K,l=setTimeout(D,r),h?S(K):c}function C(K){var G=K-f,Y=K-p,se=r-G;return m?rT(se,s-Y):se}function F(K){var G=K-f,Y=K-p;return f===void 0||G>=r||G<0||m&&Y>=s}function D(){var K=Eu();if(F(K))return W(K);l=setTimeout(D,C(K))}function W(K){return l=void 0,_&&a?S(K):(a=i=void 0,c)}function $(){l!==void 0&&clearTimeout(l),p=0,a=f=i=l=void 0}function j(){return l===void 0?c:W(Eu())}function A(){var K=Eu(),G=F(K);if(a=arguments,i=this,f=K,G){if(l===void 0)return T(f);if(m)return clearTimeout(l),l=setTimeout(D,r),S(f)}return l===void 0&&(l=setTimeout(D,r)),c}return A.cancel=$,A.flush=j,A}var aT=nT,oT=aT,iT=so,sT="Expected a function";function uT(e,r,t){var a=!0,i=!0;if(typeof e!="function")throw new TypeError(sT);return iT(t)&&(a="leading"in t?!!t.leading:a,i="trailing"in t?!!t.trailing:i),oT(e,r,{leading:a,maxWait:r,trailing:i})}var cT=uT;const lT=Ni(cT);var _h=(e=>(e[e.First=0]="First",e[e.Last=-1]="Last",e))(_h||{}),qr=(e=>(e.ATTACHED="attached",e.DETACHED="detached",e.ERROR="error",e))(qr||{}),Ei=(e=>(e.SOCKET_ERROR="socket-error",e.SOCKET_CLOSURE="socket-closure",e))(Ei||{}),Eh=(e=>(e.NOT_STARTED="remote debugger not started",e.ALREADY_IN_USE="already in use",e.TIMEOUT="timeout",e))(Eh||{});const ji=2e3,Dc={tabs:[],activeTab:"",recent:[],roles:{roles:{},privileges:{},flags:{touched:!1},selectedTab:"roles"},sharedCSS:{state:"loading",styles:[]},debugger:{meta:{state:qr.DETACHED},list:[],sessions:[],expressions:[]},webforms:{templates:{selectedGroup:"",data:[]},components:[],inspector:{css:{active:!1},datasource:{active:!1}},datasources:{theme:"grey"},flags:{"sidebar.section.resizable":!0}}},Sh="4DWS_PREFS",wh=e=>`APP_STATE_${e}`,Th=()=>{var e,r;return((r=(e=window==null?void 0:window.$$datastores)==null?void 0:e.ds)==null?void 0:r.getBaseID())||""};function xh(e){try{const r=Th(),t=JSON.stringify(e);localStorage.setItem(wh(r),t)}catch(r){console.error(r)}}function Ch(e){try{const r=JSON.stringify(e);localStorage.setItem(Sh,r)}catch(r){console.error(r)}}function Rh(){try{const e=localStorage.getItem(Sh);if(e)return JSON.parse(e)}catch(e){console.error(e)}}function ga(){const e=Th(),r=localStorage.getItem(wh(e));if(r){const t=JSON.parse(r);return t.tabs=t.tabs.map(a=>({...a,flags:{...a.flags,enabled:!0}})),t}return Dc}function ki(e){const{name:r,type:t,path:a}=e,i=a.split(".").at(-1);switch(t){case E.FileFolderType.WEBFORM:return`${r}.WebForm`;case E.FileFolderType.METHOD:case E.FileFolderType.CLASS:return i?`${r}.${i}`:r;case E.FileFolderType.ROLES:return r;default:return`${r}.${t}`}}const Oh=e=>{if(!e)return[];const r=new Map;return e.dataClasses.forEach(t=>{var s,c;const a=t.extraProperties||{},i={id:t.className,type:"table",position:{x:((s=a.position)==null?void 0:s.x)||0,y:((c=a.position)==null?void 0:c.y)||0},dragHandle:".custom-drag-handle",data:t};r.set(t.name,i)}),Array.from(r.values())};function Ah(e){return e?["json","4dmodel","webform","mform"].includes(e.toLowerCase()):!1}function fT(){this.__data__=[],this.size=0}var dT=fT;function pT(e,r){return e===r||e!==e&&r!==r}var hT=pT,gT=hT;function vT(e,r){for(var t=e.length;t--;)if(gT(e[t][0],r))return t;return-1}var Bi=vT,yT=Bi,mT=Array.prototype,bT=mT.splice;function _T(e){var r=this.__data__,t=yT(r,e);if(t<0)return!1;var a=r.length-1;return t==a?r.pop():bT.call(r,t,1),--this.size,!0}var ET=_T,ST=Bi;function wT(e){var r=this.__data__,t=ST(r,e);return t<0?void 0:r[t][1]}var TT=wT,xT=Bi;function CT(e){return xT(this.__data__,e)>-1}var RT=CT,OT=Bi;function AT(e,r){var t=this.__data__,a=OT(t,e);return a<0?(++this.size,t.push([e,r])):t[a][1]=r,this}var PT=AT,DT=dT,IT=ET,FT=TT,$T=RT,MT=PT;function va(e){var r=-1,t=e==null?0:e.length;for(this.clear();++r<t;){var a=e[r];this.set(a[0],a[1])}}va.prototype.clear=DT;va.prototype.delete=IT;va.prototype.get=FT;va.prototype.has=$T;va.prototype.set=MT;var Wi=va,NT=Wi;function LT(){this.__data__=new NT,this.size=0}var jT=LT;function kT(e){var r=this.__data__,t=r.delete(e);return this.size=r.size,t}var BT=kT;function WT(e){return this.__data__.get(e)}var UT=WT;function HT(e){return this.__data__.has(e)}var GT=HT,qT=Li,YT=so,zT="[object AsyncFunction]",VT="[object Function]",KT="[object GeneratorFunction]",JT="[object Proxy]";function XT(e){if(!YT(e))return!1;var r=qT(e);return r==VT||r==KT||r==zT||r==JT}var ZT=XT,QT=Dr,ex=QT["__core-js_shared__"],tx=ex,Su=tx,np=function(){var e=/[^.]+$/.exec(Su&&Su.keys&&Su.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function rx(e){return!!np&&np in e}var nx=rx,ax=Function.prototype,ox=ax.toString;function ix(e){if(e!=null){try{return ox.call(e)}catch{}try{return e+""}catch{}}return""}var Ph=ix,sx=ZT,ux=nx,cx=so,lx=Ph,fx=/[\\^$.*+?()[\]{}|]/g,dx=/^\[object .+?Constructor\]$/,px=Function.prototype,hx=Object.prototype,gx=px.toString,vx=hx.hasOwnProperty,yx=RegExp("^"+gx.call(vx).replace(fx,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function mx(e){if(!cx(e)||ux(e))return!1;var r=sx(e)?yx:dx;return r.test(lx(e))}var bx=mx;function _x(e,r){return e==null?void 0:e[r]}var Ex=_x,Sx=bx,wx=Ex;function Tx(e,r){var t=wx(e,r);return Sx(t)?t:void 0}var ya=Tx,xx=ya,Cx=Dr,Rx=xx(Cx,"Map"),Ic=Rx,Ox=ya,Ax=Ox(Object,"create"),Ui=Ax,ap=Ui;function Px(){this.__data__=ap?ap(null):{},this.size=0}var Dx=Px;function Ix(e){var r=this.has(e)&&delete this.__data__[e];return this.size-=r?1:0,r}var Fx=Ix,$x=Ui,Mx="__lodash_hash_undefined__",Nx=Object.prototype,Lx=Nx.hasOwnProperty;function jx(e){var r=this.__data__;if($x){var t=r[e];return t===Mx?void 0:t}return Lx.call(r,e)?r[e]:void 0}var kx=jx,Bx=Ui,Wx=Object.prototype,Ux=Wx.hasOwnProperty;function Hx(e){var r=this.__data__;return Bx?r[e]!==void 0:Ux.call(r,e)}var Gx=Hx,qx=Ui,Yx="__lodash_hash_undefined__";function zx(e,r){var t=this.__data__;return this.size+=this.has(e)?0:1,t[e]=qx&&r===void 0?Yx:r,this}var Vx=zx,Kx=Dx,Jx=Fx,Xx=kx,Zx=Gx,Qx=Vx;function ma(e){var r=-1,t=e==null?0:e.length;for(this.clear();++r<t;){var a=e[r];this.set(a[0],a[1])}}ma.prototype.clear=Kx;ma.prototype.delete=Jx;ma.prototype.get=Xx;ma.prototype.has=Zx;ma.prototype.set=Qx;var eC=ma,op=eC,tC=Wi,rC=Ic;function nC(){this.size=0,this.__data__={hash:new op,map:new(rC||tC),string:new op}}var aC=nC;function oC(e){var r=typeof e;return r=="string"||r=="number"||r=="symbol"||r=="boolean"?e!=="__proto__":e===null}var iC=oC,sC=iC;function uC(e,r){var t=e.__data__;return sC(r)?t[typeof r=="string"?"string":"hash"]:t.map}var Hi=uC,cC=Hi;function lC(e){var r=cC(this,e).delete(e);return this.size-=r?1:0,r}var fC=lC,dC=Hi;function pC(e){return dC(this,e).get(e)}var hC=pC,gC=Hi;function vC(e){return gC(this,e).has(e)}var yC=vC,mC=Hi;function bC(e,r){var t=mC(this,e),a=t.size;return t.set(e,r),this.size+=t.size==a?0:1,this}var _C=bC,EC=aC,SC=fC,wC=hC,TC=yC,xC=_C;function ba(e){var r=-1,t=e==null?0:e.length;for(this.clear();++r<t;){var a=e[r];this.set(a[0],a[1])}}ba.prototype.clear=EC;ba.prototype.delete=SC;ba.prototype.get=wC;ba.prototype.has=TC;ba.prototype.set=xC;var Dh=ba,CC=Wi,RC=Ic,OC=Dh,AC=200;function PC(e,r){var t=this.__data__;if(t instanceof CC){var a=t.__data__;if(!RC||a.length<AC-1)return a.push([e,r]),this.size=++t.size,this;t=this.__data__=new OC(a)}return t.set(e,r),this.size=t.size,this}var DC=PC,IC=Wi,FC=jT,$C=BT,MC=UT,NC=GT,LC=DC;function uo(e){var r=this.__data__=new IC(e);this.size=r.size}uo.prototype.clear=FC;uo.prototype.delete=$C;uo.prototype.get=MC;uo.prototype.has=NC;uo.prototype.set=LC;var jC="__lodash_hash_undefined__";function kC(e){return this.__data__.set(e,jC),this}var BC=kC;function WC(e){return this.__data__.has(e)}var UC=WC,HC=Dh,GC=BC,qC=UC;function Vu(e){var r=-1,t=e==null?0:e.length;for(this.__data__=new HC;++r<t;)this.add(e[r])}Vu.prototype.add=Vu.prototype.push=GC;Vu.prototype.has=qC;var YC=Dr;YC.Uint8Array;var ip=Ac,sp=ip?ip.prototype:void 0;sp&&sp.valueOf;var zC=Li,VC=Pc,KC="[object Arguments]";function JC(e){return VC(e)&&zC(e)==KC}var XC=JC,up=XC,ZC=Pc,Ih=Object.prototype,QC=Ih.hasOwnProperty,eR=Ih.propertyIsEnumerable;up(function(){return arguments}());var Si={exports:{}};function tR(){return!1}var rR=tR;Si.exports;(function(e,r){var t=Dr,a=rR,i=r&&!r.nodeType&&r,s=i&&!0&&e&&!e.nodeType&&e,c=s&&s.exports===i,l=c?t.Buffer:void 0,f=l?l.isBuffer:void 0,p=f||a;e.exports=p})(Si,Si.exports);Si.exports;var wi={exports:{}};wi.exports;(function(e,r){var t=mh,a=r&&!r.nodeType&&r,i=a&&!0&&e&&!e.nodeType&&e,s=i&&i.exports===a,c=s&&t.process,l=function(){try{var f=i&&i.require&&i.require("util").types;return f||c&&c.binding&&c.binding("util")}catch{}}();e.exports=l})(wi,wi.exports);var nR=wi.exports,cp=nR;cp&&cp.isTypedArray;var aR=ya,oR=Dr,iR=aR(oR,"DataView"),sR=iR,uR=ya,cR=Dr,lR=uR(cR,"Promise"),fR=lR,dR=ya,pR=Dr,hR=dR(pR,"Set"),gR=hR,vR=ya,yR=Dr,mR=vR(yR,"WeakMap"),bR=mR,Ku=sR,Ju=Ic,Xu=fR,Zu=gR,Qu=bR,Fh=Li,_a=Ph,lp="[object Map]",_R="[object Object]",fp="[object Promise]",dp="[object Set]",pp="[object WeakMap]",hp="[object DataView]",ER=_a(Ku),SR=_a(Ju),wR=_a(Xu),TR=_a(Zu),xR=_a(Qu),oa=Fh;(Ku&&oa(new Ku(new ArrayBuffer(1)))!=hp||Ju&&oa(new Ju)!=lp||Xu&&oa(Xu.resolve())!=fp||Zu&&oa(new Zu)!=dp||Qu&&oa(new Qu)!=pp)&&(oa=function(e){var r=Fh(e),t=r==_R?e.constructor:void 0,a=t?_a(t):"";if(a)switch(a){case ER:return hp;case SR:return lp;case wR:return fp;case TR:return dp;case xR:return pp}return r});const CR="ROOT";cS(),uS();var gp;(function(e){e[e.HandlerDisabled=0]="HandlerDisabled",e[e.HandlerEnabled=1]="HandlerEnabled"})(gp||(gp={}));var Ti={exports:{}};/**
8
+ (See https://redux.js.org/faq/organizing-state#can-i-put-functions-promises-or-other-non-serializable-items-in-my-store-state)`)}}),D.warnIfExceeded()),W}}}}function mu(e){return typeof e=="boolean"}function KS(){return function(r){return JS(r)}}function JS(e){e===void 0&&(e={});var r=e.thunk,t=r===void 0?!0:r,a=e.immutableCheck,i=a===void 0?!0:a,s=e.serializableCheck,c=s===void 0?!0:s,l=new WS;if(t&&(mu(t)?l.push(qd):l.push(qd.withExtraArgument(t.extraArgument))),process.env.NODE_ENV!=="production"){if(i){var f={};mu(i)||(f=i),l.unshift(zS(f))}if(c){var p={};mu(c)||(p=c),l.push(VS(p))}}return l}var bu=process.env.NODE_ENV==="production";function XS(e){var r=KS(),t=e||{},a=t.reducer,i=a===void 0?void 0:a,s=t.middleware,c=s===void 0?r():s,l=t.devTools,f=l===void 0?!0:l,p=t.preloadedState,h=p===void 0?void 0:p,m=t.enhancers,_=m===void 0?void 0:m,S;if(typeof i=="function")S=i;else if(ch(i))S=ih(i);else throw new Error('"reducer" is a required argument, and must be a function or an object of functions that can be passed to combineReducers');var T=c;if(typeof T=="function"&&(T=T(r),!bu&&!Array.isArray(T)))throw new Error("when using a middleware builder function, an array of middleware must be returned");if(!bu&&T.some(function($){return typeof $!="function"}))throw new Error("each middleware provided to configureStore must be a function");var C=TS.apply(void 0,T),F=mi;f&&(F=BS(vn({trace:!bu},typeof f=="object"&&f)));var D=[C];Array.isArray(_)?D=_i([C],_):typeof _=="function"&&(D=_(D));var W=F.apply(void 0,D);return oh(S,h,W)}function Lt(e,r){function t(){for(var a=[],i=0;i<arguments.length;i++)a[i]=arguments[i];if(r){var s=r.apply(void 0,a);if(!s)throw new Error("prepareAction did not return an object");return vn(vn({type:e,payload:s.payload},"meta"in s&&{meta:s.meta}),"error"in s&&{error:s.error})}return{type:e,payload:a[0]}}return t.toString=function(){return""+e},t.type=e,t.match=function(a){return a.type===e},t}function hh(e){var r={},t=[],a,i={addCase:function(s,c){if(process.env.NODE_ENV!=="production"){if(t.length>0)throw new Error("`builder.addCase` should only be called before calling `builder.addMatcher`");if(a)throw new Error("`builder.addCase` should only be called before calling `builder.addDefaultCase`")}var l=typeof s=="string"?s:s.type;if(l in r)throw new Error("addCase cannot be called with two reducers for the same action type");return r[l]=c,i},addMatcher:function(s,c){if(process.env.NODE_ENV!=="production"&&a)throw new Error("`builder.addMatcher` should only be called before calling `builder.addDefaultCase`");return t.push({matcher:s,reducer:c}),i},addDefaultCase:function(s){if(process.env.NODE_ENV!=="production"&&a)throw new Error("`builder.addDefaultCase` can only be called once");return a=s,i}};return e(i),[r,t,a]}function ZS(e){return typeof e=="function"}function QS(e,r,t,a){t===void 0&&(t=[]);var i=typeof r=="function"?hh(r):[r,t,a],s=i[0],c=i[1],l=i[2],f;if(ZS(e))f=function(){return ui(e(),function(){})};else{var p=ui(e,function(){});f=function(){return p}}function h(m,_){m===void 0&&(m=f());var S=_i([s[_.type]],c.filter(function(T){var C=T.matcher;return C(_)}).map(function(T){var C=T.reducer;return C}));return S.filter(function(T){return!!T}).length===0&&(S=[l]),S.reduce(function(T,C){if(C)if(Jr(T)){var F=T,D=C(F,_);return typeof D>"u"?T:D}else{if(wr(T))return ui(T,function(W){return C(W,_)});var D=C(T,_);if(typeof D>"u"){if(T===null)return T;throw Error("A case reducer on a non-draftable value must not return undefined")}return D}return T},m)}return h.getInitialState=f,h}function ew(e,r){return e+"/"+r}function fr(e){var r=e.name;if(!r)throw new Error("`name` is a required option for createSlice");var t=typeof e.initialState=="function"?e.initialState:ui(e.initialState,function(){}),a=e.reducers||{},i=Object.keys(a),s={},c={},l={};i.forEach(function(h){var m=a[h],_=ew(r,h),S,T;"reducer"in m?(S=m.reducer,T=m.prepare):S=m,s[h]=S,c[_]=S,l[h]=T?Lt(_,T):Lt(_)});function f(){var h=typeof e.extraReducers=="function"?hh(e.extraReducers):[e.extraReducers],m=h[0],_=m===void 0?{}:m,S=h[1],T=S===void 0?[]:S,C=h[2],F=C===void 0?void 0:C,D=vn(vn({},_),c);return QS(t,D,T,F)}var p;return{name:r,reducer:function(h,m){return p||(p=f()),p(h,m)},actions:l,caseReducers:s,getInitialState:function(){return p||(p=f()),p.getInitialState()}}}var tw="ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW",Cc=function(e){e===void 0&&(e=21);for(var r="",t=e;t--;)r+=tw[Math.random()*64|0];return r},rw=["name","message","stack","code"],_u=function(){function e(r,t){this.payload=r,this.meta=t}return e}(),Jd=function(){function e(r,t){this.payload=r,this.meta=t}return e}(),nw=function(e){if(typeof e=="object"&&e!==null){for(var r={},t=0,a=rw;t<a.length;t++){var i=a[t];typeof e[i]=="string"&&(r[i]=e[i])}return r}return{message:String(e)}};function re(e,r,t){var a=Lt(e+"/fulfilled",function(p,h,m,_){return{payload:p,meta:yu(vn({},_||{}),{arg:m,requestId:h,requestStatus:"fulfilled"})}}),i=Lt(e+"/pending",function(p,h,m){return{payload:void 0,meta:yu(vn({},m||{}),{arg:h,requestId:p,requestStatus:"pending"})}}),s=Lt(e+"/rejected",function(p,h,m,_,S){return{payload:_,error:(t&&t.serializeError||nw)(p||"Rejected"),meta:yu(vn({},S||{}),{arg:m,requestId:h,rejectedWithValue:!!_,requestStatus:"rejected",aborted:(p==null?void 0:p.name)==="AbortError",condition:(p==null?void 0:p.name)==="ConditionError"})}}),c=!1,l=typeof AbortController<"u"?AbortController:function(){function p(){this.signal={aborted:!1,addEventListener:function(){},dispatchEvent:function(){return!1},onabort:function(){},removeEventListener:function(){}}}return p.prototype.abort=function(){process.env.NODE_ENV!=="production"&&(c||(c=!0,console.info("This platform does not implement AbortController. \nIf you want to use the AbortController to react to `abort` events, please consider importing a polyfill like 'abortcontroller-polyfill/dist/abortcontroller-polyfill-only'.")))},p}();function f(p){return function(h,m,_){var S=t!=null&&t.idGenerator?t.idGenerator(p):Cc(),T=new l,C,F=new Promise(function(j,A){return T.signal.addEventListener("abort",function(){return A({name:"AbortError",message:C||"Aborted"})})}),D=!1;function W(j){D&&(C=j,T.abort())}var $=function(){return kS(this,null,function(){var j,A,K,G,Y,se;return FS(this,function(We){switch(We.label){case 0:return We.trys.push([0,4,,5]),G=(j=t==null?void 0:t.condition)==null?void 0:j.call(t,p,{getState:m,extra:_}),ow(G)?[4,G]:[3,2];case 1:G=We.sent(),We.label=2;case 2:if(G===!1)throw{name:"ConditionError",message:"Aborted due to condition callback returning false."};return D=!0,h(i(S,p,(A=t==null?void 0:t.getPendingMeta)==null?void 0:A.call(t,{requestId:S,arg:p},{getState:m,extra:_}))),[4,Promise.race([F,Promise.resolve(r(p,{dispatch:h,getState:m,extra:_,requestId:S,signal:T.signal,rejectWithValue:function(Oe,it){return new _u(Oe,it)},fulfillWithValue:function(Oe,it){return new Jd(Oe,it)}})).then(function(Oe){if(Oe instanceof _u)throw Oe;return Oe instanceof Jd?a(Oe.payload,S,p,Oe.meta):a(Oe,S,p)})])];case 3:return K=We.sent(),[3,5];case 4:return Y=We.sent(),K=Y instanceof _u?s(null,S,p,Y.payload,Y.meta):s(Y,S,p),[3,5];case 5:return se=t&&!t.dispatchConditionRejection&&s.match(K)&&K.meta.condition,se||h(K),[2,K]}})})}();return Object.assign($,{abort:W,requestId:S,arg:p,unwrap:function(){return $.then(aw)}})}}return Object.assign(f,{pending:i,rejected:s,fulfilled:a,typePrefix:e})}function aw(e){if(e.meta&&e.meta.rejectedWithValue)throw e.payload;if(e.error)throw e.error;return e.payload}function ow(e){return e!==null&&typeof e=="object"&&typeof e.then=="function"}var iw=function(e){return e&&typeof e.match=="function"},sw=function(e,r){return iw(e)?e.match(r):e(r)};function Er(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];return function(t){return e.some(function(a){return sw(a,t)})}}function Rc(e,r){if(!e||!e.meta)return!1;var t=typeof e.meta.requestId=="string",a=r.indexOf(e.meta.requestStatus)>-1;return t&&a}function Oc(e){return typeof e[0]=="function"&&"pending"in e[0]&&"fulfilled"in e[0]&&"rejected"in e[0]}function gh(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];return e.length===0?function(t){return Rc(t,["pending"])}:Oc(e)?function(t){var a=e.map(function(s){return s.pending}),i=Er.apply(void 0,a);return i(t)}:gh()(e[0])}function vh(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];return e.length===0?function(t){return Rc(t,["rejected"])}:Oc(e)?function(t){var a=e.map(function(s){return s.rejected}),i=Er.apply(void 0,a);return i(t)}:vh()(e[0])}function yh(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];return e.length===0?function(t){return Rc(t,["fulfilled"])}:Oc(e)?function(t){var a=e.map(function(s){return s.fulfilled}),i=Er.apply(void 0,a);return i(t)}:yh()(e[0])}sS();var Yr=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Ni(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function uw(e){if(e.__esModule)return e;var r=e.default;if(typeof r=="function"){var t=function a(){return this instanceof a?Reflect.construct(r,arguments,this.constructor):r.apply(this,arguments)};t.prototype=r.prototype}else t={};return Object.defineProperty(t,"__esModule",{value:!0}),Object.keys(e).forEach(function(a){var i=Object.getOwnPropertyDescriptor(e,a);Object.defineProperty(t,a,i.get?i:{enumerable:!0,get:function(){return e[a]}})}),t}function cw(e){var r=typeof e;return e!=null&&(r=="object"||r=="function")}var so=cw,lw=typeof Yr=="object"&&Yr&&Yr.Object===Object&&Yr,mh=lw,fw=mh,dw=typeof self=="object"&&self&&self.Object===Object&&self,pw=fw||dw||Function("return this")(),Dr=pw,hw=Dr,gw=function(){return hw.Date.now()},vw=gw,yw=/\s/;function mw(e){for(var r=e.length;r--&&yw.test(e.charAt(r)););return r}var bw=mw,_w=bw,Ew=/^\s+/;function Sw(e){return e&&e.slice(0,_w(e)+1).replace(Ew,"")}var ww=Sw,Tw=Dr,xw=Tw.Symbol,Ac=xw,Xd=Ac,bh=Object.prototype,Cw=bh.hasOwnProperty,Rw=bh.toString,qa=Xd?Xd.toStringTag:void 0;function Ow(e){var r=Cw.call(e,qa),t=e[qa];try{e[qa]=void 0;var a=!0}catch{}var i=Rw.call(e);return a&&(r?e[qa]=t:delete e[qa]),i}var Aw=Ow,Pw=Object.prototype,Dw=Pw.toString;function Iw(e){return Dw.call(e)}var Fw=Iw,Zd=Ac,$w=Aw,Mw=Fw,Nw="[object Null]",Lw="[object Undefined]",Qd=Zd?Zd.toStringTag:void 0;function jw(e){return e==null?e===void 0?Lw:Nw:Qd&&Qd in Object(e)?$w(e):Mw(e)}var Li=jw;function kw(e){return e!=null&&typeof e=="object"}var Pc=kw,Bw=Li,Ww=Pc,Uw="[object Symbol]";function Hw(e){return typeof e=="symbol"||Ww(e)&&Bw(e)==Uw}var Gw=Hw,qw=ww,ep=so,Yw=Gw,tp=0/0,zw=/^[-+]0x[0-9a-f]+$/i,Vw=/^0b[01]+$/i,Kw=/^0o[0-7]+$/i,Jw=parseInt;function Xw(e){if(typeof e=="number")return e;if(Yw(e))return tp;if(ep(e)){var r=typeof e.valueOf=="function"?e.valueOf():e;e=ep(r)?r+"":r}if(typeof e!="string")return e===0?e:+e;e=qw(e);var t=Vw.test(e);return t||Kw.test(e)?Jw(e.slice(2),t?2:8):zw.test(e)?tp:+e}var Zw=Xw,Qw=so,Eu=vw,rp=Zw,eT="Expected a function",tT=Math.max,rT=Math.min;function nT(e,r,t){var a,i,s,c,l,f,p=0,h=!1,m=!1,_=!0;if(typeof e!="function")throw new TypeError(eT);r=rp(r)||0,Qw(t)&&(h=!!t.leading,m="maxWait"in t,s=m?tT(rp(t.maxWait)||0,r):s,_="trailing"in t?!!t.trailing:_);function S(K){var G=a,Y=i;return a=i=void 0,p=K,c=e.apply(Y,G),c}function T(K){return p=K,l=setTimeout(D,r),h?S(K):c}function C(K){var G=K-f,Y=K-p,se=r-G;return m?rT(se,s-Y):se}function F(K){var G=K-f,Y=K-p;return f===void 0||G>=r||G<0||m&&Y>=s}function D(){var K=Eu();if(F(K))return W(K);l=setTimeout(D,C(K))}function W(K){return l=void 0,_&&a?S(K):(a=i=void 0,c)}function $(){l!==void 0&&clearTimeout(l),p=0,a=f=i=l=void 0}function j(){return l===void 0?c:W(Eu())}function A(){var K=Eu(),G=F(K);if(a=arguments,i=this,f=K,G){if(l===void 0)return T(f);if(m)return clearTimeout(l),l=setTimeout(D,r),S(f)}return l===void 0&&(l=setTimeout(D,r)),c}return A.cancel=$,A.flush=j,A}var aT=nT,oT=aT,iT=so,sT="Expected a function";function uT(e,r,t){var a=!0,i=!0;if(typeof e!="function")throw new TypeError(sT);return iT(t)&&(a="leading"in t?!!t.leading:a,i="trailing"in t?!!t.trailing:i),oT(e,r,{leading:a,maxWait:r,trailing:i})}var cT=uT;const lT=Ni(cT);var _h=(e=>(e[e.First=0]="First",e[e.Last=-1]="Last",e))(_h||{}),qr=(e=>(e.ATTACHED="attached",e.DETACHED="detached",e.ERROR="error",e))(qr||{}),Ei=(e=>(e.SOCKET_ERROR="socket-error",e.SOCKET_CLOSURE="socket-closure",e))(Ei||{}),Eh=(e=>(e.NOT_STARTED="remote debugger not started",e.ALREADY_IN_USE="already in use",e.TIMEOUT="timeout",e))(Eh||{});const ji=2e3,Dc={tabs:[],activeTab:"",recent:[],roles:{roles:{},privileges:{},flags:{touched:!1},selectedTab:"roles",forceLogin:!1},sharedCSS:{state:"loading",styles:[]},debugger:{meta:{state:qr.DETACHED},list:[],sessions:[],expressions:[]},webforms:{templates:{selectedGroup:"",data:[]},components:[],inspector:{css:{active:!1},datasource:{active:!1}},datasources:{theme:"grey"},flags:{"sidebar.section.resizable":!0}}},Sh="4DWS_PREFS",wh=e=>`APP_STATE_${e}`,Th=()=>{var e,r;return((r=(e=window==null?void 0:window.$$datastores)==null?void 0:e.ds)==null?void 0:r.getBaseID())||""};function xh(e){try{const r=Th(),t=JSON.stringify(e);localStorage.setItem(wh(r),t)}catch(r){console.error(r)}}function Ch(e){try{const r=JSON.stringify(e);localStorage.setItem(Sh,r)}catch(r){console.error(r)}}function Rh(){try{const e=localStorage.getItem(Sh);if(e)return JSON.parse(e)}catch(e){console.error(e)}}function ga(){const e=Th(),r=localStorage.getItem(wh(e));if(r){const t=JSON.parse(r);return t.tabs=t.tabs.map(a=>({...a,flags:{...a.flags,enabled:!0}})),t}return Dc}function ki(e){const{name:r,type:t,path:a}=e,i=a.split(".").at(-1);switch(t){case E.FileFolderType.WEBFORM:return`${r}.WebForm`;case E.FileFolderType.METHOD:case E.FileFolderType.CLASS:return i?`${r}.${i}`:r;case E.FileFolderType.ROLES:return r;default:return`${r}.${t}`}}const Oh=e=>{if(!e)return[];const r=new Map;return e.dataClasses.forEach(t=>{var s,c;const a=t.extraProperties||{},i={id:t.className,type:"table",position:{x:((s=a.position)==null?void 0:s.x)||0,y:((c=a.position)==null?void 0:c.y)||0},dragHandle:".custom-drag-handle",data:t};r.set(t.name,i)}),Array.from(r.values())};function Ah(e){return e?["json","4dmodel","webform","mform"].includes(e.toLowerCase()):!1}function fT(){this.__data__=[],this.size=0}var dT=fT;function pT(e,r){return e===r||e!==e&&r!==r}var hT=pT,gT=hT;function vT(e,r){for(var t=e.length;t--;)if(gT(e[t][0],r))return t;return-1}var Bi=vT,yT=Bi,mT=Array.prototype,bT=mT.splice;function _T(e){var r=this.__data__,t=yT(r,e);if(t<0)return!1;var a=r.length-1;return t==a?r.pop():bT.call(r,t,1),--this.size,!0}var ET=_T,ST=Bi;function wT(e){var r=this.__data__,t=ST(r,e);return t<0?void 0:r[t][1]}var TT=wT,xT=Bi;function CT(e){return xT(this.__data__,e)>-1}var RT=CT,OT=Bi;function AT(e,r){var t=this.__data__,a=OT(t,e);return a<0?(++this.size,t.push([e,r])):t[a][1]=r,this}var PT=AT,DT=dT,IT=ET,FT=TT,$T=RT,MT=PT;function va(e){var r=-1,t=e==null?0:e.length;for(this.clear();++r<t;){var a=e[r];this.set(a[0],a[1])}}va.prototype.clear=DT;va.prototype.delete=IT;va.prototype.get=FT;va.prototype.has=$T;va.prototype.set=MT;var Wi=va,NT=Wi;function LT(){this.__data__=new NT,this.size=0}var jT=LT;function kT(e){var r=this.__data__,t=r.delete(e);return this.size=r.size,t}var BT=kT;function WT(e){return this.__data__.get(e)}var UT=WT;function HT(e){return this.__data__.has(e)}var GT=HT,qT=Li,YT=so,zT="[object AsyncFunction]",VT="[object Function]",KT="[object GeneratorFunction]",JT="[object Proxy]";function XT(e){if(!YT(e))return!1;var r=qT(e);return r==VT||r==KT||r==zT||r==JT}var ZT=XT,QT=Dr,ex=QT["__core-js_shared__"],tx=ex,Su=tx,np=function(){var e=/[^.]+$/.exec(Su&&Su.keys&&Su.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function rx(e){return!!np&&np in e}var nx=rx,ax=Function.prototype,ox=ax.toString;function ix(e){if(e!=null){try{return ox.call(e)}catch{}try{return e+""}catch{}}return""}var Ph=ix,sx=ZT,ux=nx,cx=so,lx=Ph,fx=/[\\^$.*+?()[\]{}|]/g,dx=/^\[object .+?Constructor\]$/,px=Function.prototype,hx=Object.prototype,gx=px.toString,vx=hx.hasOwnProperty,yx=RegExp("^"+gx.call(vx).replace(fx,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function mx(e){if(!cx(e)||ux(e))return!1;var r=sx(e)?yx:dx;return r.test(lx(e))}var bx=mx;function _x(e,r){return e==null?void 0:e[r]}var Ex=_x,Sx=bx,wx=Ex;function Tx(e,r){var t=wx(e,r);return Sx(t)?t:void 0}var ya=Tx,xx=ya,Cx=Dr,Rx=xx(Cx,"Map"),Ic=Rx,Ox=ya,Ax=Ox(Object,"create"),Ui=Ax,ap=Ui;function Px(){this.__data__=ap?ap(null):{},this.size=0}var Dx=Px;function Ix(e){var r=this.has(e)&&delete this.__data__[e];return this.size-=r?1:0,r}var Fx=Ix,$x=Ui,Mx="__lodash_hash_undefined__",Nx=Object.prototype,Lx=Nx.hasOwnProperty;function jx(e){var r=this.__data__;if($x){var t=r[e];return t===Mx?void 0:t}return Lx.call(r,e)?r[e]:void 0}var kx=jx,Bx=Ui,Wx=Object.prototype,Ux=Wx.hasOwnProperty;function Hx(e){var r=this.__data__;return Bx?r[e]!==void 0:Ux.call(r,e)}var Gx=Hx,qx=Ui,Yx="__lodash_hash_undefined__";function zx(e,r){var t=this.__data__;return this.size+=this.has(e)?0:1,t[e]=qx&&r===void 0?Yx:r,this}var Vx=zx,Kx=Dx,Jx=Fx,Xx=kx,Zx=Gx,Qx=Vx;function ma(e){var r=-1,t=e==null?0:e.length;for(this.clear();++r<t;){var a=e[r];this.set(a[0],a[1])}}ma.prototype.clear=Kx;ma.prototype.delete=Jx;ma.prototype.get=Xx;ma.prototype.has=Zx;ma.prototype.set=Qx;var eC=ma,op=eC,tC=Wi,rC=Ic;function nC(){this.size=0,this.__data__={hash:new op,map:new(rC||tC),string:new op}}var aC=nC;function oC(e){var r=typeof e;return r=="string"||r=="number"||r=="symbol"||r=="boolean"?e!=="__proto__":e===null}var iC=oC,sC=iC;function uC(e,r){var t=e.__data__;return sC(r)?t[typeof r=="string"?"string":"hash"]:t.map}var Hi=uC,cC=Hi;function lC(e){var r=cC(this,e).delete(e);return this.size-=r?1:0,r}var fC=lC,dC=Hi;function pC(e){return dC(this,e).get(e)}var hC=pC,gC=Hi;function vC(e){return gC(this,e).has(e)}var yC=vC,mC=Hi;function bC(e,r){var t=mC(this,e),a=t.size;return t.set(e,r),this.size+=t.size==a?0:1,this}var _C=bC,EC=aC,SC=fC,wC=hC,TC=yC,xC=_C;function ba(e){var r=-1,t=e==null?0:e.length;for(this.clear();++r<t;){var a=e[r];this.set(a[0],a[1])}}ba.prototype.clear=EC;ba.prototype.delete=SC;ba.prototype.get=wC;ba.prototype.has=TC;ba.prototype.set=xC;var Dh=ba,CC=Wi,RC=Ic,OC=Dh,AC=200;function PC(e,r){var t=this.__data__;if(t instanceof CC){var a=t.__data__;if(!RC||a.length<AC-1)return a.push([e,r]),this.size=++t.size,this;t=this.__data__=new OC(a)}return t.set(e,r),this.size=t.size,this}var DC=PC,IC=Wi,FC=jT,$C=BT,MC=UT,NC=GT,LC=DC;function uo(e){var r=this.__data__=new IC(e);this.size=r.size}uo.prototype.clear=FC;uo.prototype.delete=$C;uo.prototype.get=MC;uo.prototype.has=NC;uo.prototype.set=LC;var jC="__lodash_hash_undefined__";function kC(e){return this.__data__.set(e,jC),this}var BC=kC;function WC(e){return this.__data__.has(e)}var UC=WC,HC=Dh,GC=BC,qC=UC;function Vu(e){var r=-1,t=e==null?0:e.length;for(this.__data__=new HC;++r<t;)this.add(e[r])}Vu.prototype.add=Vu.prototype.push=GC;Vu.prototype.has=qC;var YC=Dr;YC.Uint8Array;var ip=Ac,sp=ip?ip.prototype:void 0;sp&&sp.valueOf;var zC=Li,VC=Pc,KC="[object Arguments]";function JC(e){return VC(e)&&zC(e)==KC}var XC=JC,up=XC,ZC=Pc,Ih=Object.prototype,QC=Ih.hasOwnProperty,eR=Ih.propertyIsEnumerable;up(function(){return arguments}());var Si={exports:{}};function tR(){return!1}var rR=tR;Si.exports;(function(e,r){var t=Dr,a=rR,i=r&&!r.nodeType&&r,s=i&&!0&&e&&!e.nodeType&&e,c=s&&s.exports===i,l=c?t.Buffer:void 0,f=l?l.isBuffer:void 0,p=f||a;e.exports=p})(Si,Si.exports);Si.exports;var wi={exports:{}};wi.exports;(function(e,r){var t=mh,a=r&&!r.nodeType&&r,i=a&&!0&&e&&!e.nodeType&&e,s=i&&i.exports===a,c=s&&t.process,l=function(){try{var f=i&&i.require&&i.require("util").types;return f||c&&c.binding&&c.binding("util")}catch{}}();e.exports=l})(wi,wi.exports);var nR=wi.exports,cp=nR;cp&&cp.isTypedArray;var aR=ya,oR=Dr,iR=aR(oR,"DataView"),sR=iR,uR=ya,cR=Dr,lR=uR(cR,"Promise"),fR=lR,dR=ya,pR=Dr,hR=dR(pR,"Set"),gR=hR,vR=ya,yR=Dr,mR=vR(yR,"WeakMap"),bR=mR,Ku=sR,Ju=Ic,Xu=fR,Zu=gR,Qu=bR,Fh=Li,_a=Ph,lp="[object Map]",_R="[object Object]",fp="[object Promise]",dp="[object Set]",pp="[object WeakMap]",hp="[object DataView]",ER=_a(Ku),SR=_a(Ju),wR=_a(Xu),TR=_a(Zu),xR=_a(Qu),oa=Fh;(Ku&&oa(new Ku(new ArrayBuffer(1)))!=hp||Ju&&oa(new Ju)!=lp||Xu&&oa(Xu.resolve())!=fp||Zu&&oa(new Zu)!=dp||Qu&&oa(new Qu)!=pp)&&(oa=function(e){var r=Fh(e),t=r==_R?e.constructor:void 0,a=t?_a(t):"";if(a)switch(a){case ER:return hp;case SR:return lp;case wR:return fp;case TR:return dp;case xR:return pp}return r});const CR="ROOT";cS(),uS();var gp;(function(e){e[e.HandlerDisabled=0]="HandlerDisabled",e[e.HandlerEnabled=1]="HandlerEnabled"})(gp||(gp={}));var Ti={exports:{}};/**
9
9
  * @license
10
10
  * Lodash <https://lodash.com/>
11
11
  * Copyright OpenJS Foundation and other contributors <https://openjsf.org/>
@@ -87,7 +87,7 @@ Valid keys: `+JSON.stringify(Object.keys(H),null," "));var N=J(fe,ge,le,ye,ie+"
87
87
  The error may be correlated with this previous error:
88
88
  `+l.current.stack+`
89
89
 
90
- `),T}return uc(function(){f.current=e,p.current=m,h.current=_,l.current=void 0}),uc(function(){function T(){try{var C=t.getState();if(C===p.current)return;var F=f.current(C);if(r(F,h.current))return;h.current=F,p.current=C}catch(D){l.current=D}s()}return c.onStateChange=T,c.trySubscribe(),T(),function(){return c.tryUnsubscribe()}},[t,c]),_}function OO(e){e===void 0&&(e=Zr);var r=e===Zr?pg:function(){return dt.useContext(e)};return function(a,i){if(i===void 0&&(i=CO),process.env.NODE_ENV!=="production"){if(!a)throw new Error("You must pass a selector to useSelector");if(typeof a!="function")throw new Error("You must pass a function as a selector to useSelector");if(typeof i!="function")throw new Error("You must pass a function as an equality function to useSelector")}var s=r(),c=s.store,l=s.subscription,f=RO(a,i,c,l);return dt.useDebugValue(f),f}}var AO=OO();pO(nS.unstable_batchedUpdates);const PO=()=>xO(),Qr=AO,Lc=z(e=>e,e=>e.catalog.state==="loaded"?e.catalog.model:null),DO=z(e=>e,({catalog:e})=>e.state),IO=z(Lc,e=>e?e.dataClasses:[]),FO=z(Lc,e=>e?e.methods:[]),gg=e=>z(r=>r,r=>{switch(r.catalog.state){case"loaded":const t=e?r.catalog.model.dataClasses[e]:r.catalog.model;return(t==null?void 0:t.methods)||[];default:return[]}}),$O=e=>Qr(gg(e),dg),MO=(e,r)=>z(gg(e),t=>t.find(a=>`${a.applyTo}.${a.name}`===r)),NO=(e,r,t)=>Qr(MO(e,`${t}.${r}`),dg),vg=z(e=>e,e=>e),LO=e=>z(en,r=>{var i;const t=r.tabs.find(({path:s})=>s===e),a=t==null?void 0:t.content.components;return!t||!a?[]:(i=Object.keys(a))==null?void 0:i.map(s=>({id:s,...a[s]}))}),yg=e=>z(en,r=>{var a,i;const t=r.tabs.find(({path:s})=>s===e);return((i=(a=t==null?void 0:t.content)==null?void 0:a.metadata)==null?void 0:i.datasources)||[]}),jO=(e,r,t)=>z(vg,a=>{var i,s;if(r){const c=a.sharedDatasources.sources[r];return c?c.find(l=>l.id===e):void 0}else{const c=a.root.tabs.find(f=>f.path===t);return c?(s=(i=c.content.metadata)==null?void 0:i.datasources)==null?void 0:s.find(f=>f.id===e):void 0}}),mg=z(e=>e,e=>{var r;return((r=e.sharedDatasources)==null?void 0:r.sources)||[]}),kO=(e,r,t,a)=>z(yg(e),mg,(i,s)=>{const c=Ke.flatten(Ke.values(s)),l=[...r!=="private"?i:[],...r!=="shared"?c:[]];return t?l.filter(f=>(!a||a.every(({id:p,namespace:h=""})=>f.id!==p||(f.namespace||"")!==h))&&(t.includes(f.type)||f.dataType&&(t.includes(f.dataType)||t.includes("objectFromArray")&&f.dataType==="object"&&f.from))):l}),BO=z(e=>e.debugger,e=>e.meta),Un=z(e=>e.debugger,e=>e.list),kt=z(e=>e.debugger,e=>e.sessions),WO=z(kt,e=>e.length),Bn=(e,r,t,a)=>e.find(i=>i.filePath===r&&i.methodName===t&&(!a||i.className===a)),ft=(e,r)=>e.find(t=>t.threadId===r),bg=(e,r)=>e.find(t=>t.tabPath===r),UO=(e,r)=>z(Un,t=>{var a;return((a=Bn(t,e,r))==null?void 0:a.breakpoints.saved.locations)||[]}),HO=(e,r)=>z(Un,t=>{var a;return((a=Bn(t,e,r))==null?void 0:a.breakpoints.draft.locations)||[]}),GO=e=>z(Un,r=>r.filter(t=>t.filePath===e).reduce((t,a)=>[...t,...a.breakpoints.saved.locations.map(i=>({...i,line:i.line+(a.breakpoints.saved.offset||0)}))],[]).sort((t,a)=>t.line-a.line)),qO=e=>z(Un,r=>r.filter(t=>t.filePath===e).reduce((t,a)=>[...t,...a.breakpoints.draft.locations.map(i=>({...i,line:i.line+(a.breakpoints.draft.offset||0)}))],[]).sort((t,a)=>t.line-a.line)),YO=e=>z(kt,r=>{const t=ft(r,e);return t!=null&&t.stopped?t.highlightedLines:null}),zO=e=>z(kt,r=>{const t=ft(r,e);return t!=null&&t.stopped?t.activeLine:null}),VO=e=>z(kt,r=>{var t;return((t=ft(r,e))==null?void 0:t.expressions)||[]}),KO=e=>z(kt,r=>{var t;return((t=ft(r,e))==null?void 0:t.stopped)||!1}),JO=(e,r)=>z(Un,t=>{var a;return(a=Bn(t,e,r))==null?void 0:a.source}),XO=e=>z(kt,r=>{var t;return((t=bg(r,e))==null?void 0:t.threadId)||-1}),ZO=e=>z(kt,r=>{var t,a;return(a=(t=ft(r,e))==null?void 0:t.currentStackFrame)==null?void 0:a.source}),QO=e=>z(kt,r=>{var t;return(t=ft(r,e))==null?void 0:t.currentStackFrame}),eA=z(kt,e=>e.map(({channelId:r,threadId:t})=>({id:r,threadId:t}))),tA=e=>z(kt,r=>{var t;return((t=ft(r,e))==null?void 0:t.stackFrames)||[]}),rA=e=>z(kt,r=>{var t,a;return((a=(t=ft(r,e))==null?void 0:t.variables)==null?void 0:a.callchain)||[]}),nA=e=>z(kt,r=>{var t,a;return((a=(t=ft(r,e))==null?void 0:t.variables)==null?void 0:a.expressions)||[]}),aA=(e,r="saved")=>z(Un,t=>{const a=t.find(i=>i.filePath===e);return(a==null?void 0:a.breakpoints[r].offset)||0}),oA=(e,r,t,a)=>z(kt,i=>{var p;const s=((p=ft(i,e))==null?void 0:p.exceptions)||[],c=r===E.FileFolderType.CLASS,l=c&&a?`${a}.${t}`:t;return(l?s.filter(h=>h.location===l):s).map(h=>({...h,locationLine:c?h.locationLine:h.locationLine+1}))}),en=z(e=>e.root,e=>e),Ea=z(en,e=>e.tabs),iA=z(en,e=>e.activeTab),sA=z(en,e=>e.recent.filter(({type:r})=>r!==E.FileFolderType.DEBUGGER)),uA=z(en,({tabs:e,activeTab:r})=>e.find(({path:t})=>t===r)),cA=z(en,({tabs:e})=>e.reduce((t,a)=>(a==null?void 0:a.weight)>((t==null?void 0:t.weight)||0)?a:t,null)),lA=z(Ea,e=>e.filter(({type:r,flags:t})=>r===E.FileFolderType.WEBFORM&&t.enabled===!1).map(({path:r})=>r)),fA=z(Ea,e=>e.length>0),co=e=>z(en,r=>r.tabs.find(({path:t})=>t===e)),_g=(e,r="")=>z(co(e),t=>!t||!t.content||typeof t.content=="string"?t==null?void 0:t.content:Ke.get(t.content,r)),dA=e=>z(co(e),r=>r==null?void 0:r.extra),pA=(e,r=t=>t)=>z(_g(e,"components"),t=>r(t||{})),jc=z(Ea,e=>e.filter(r=>r.flags.touched)),hA=z(jc,e=>e.length),gA=z(kt,e=>e.map(({threadId:r,currentStackFrame:{source:t},tabPath:a})=>({name:Mh(r,t),path:a,type:E.FileFolderType.DEBUGGER,content:t==null?void 0:t.content,flags:{},extra:{source:t}}))),vA=z(e=>e,e=>e.explorer||[]),Eg=z(e=>e,e=>e.explorer.find(r=>r.path===E.FolderRootPath.WEBFORMS)),Sg=z(e=>e,e=>e.explorer.find(r=>r.path===E.FolderRootPath.METHODS)),wg=z(e=>e,e=>e.explorer.find(r=>r.path===E.FolderRootPath.CLASSES)),yA=z(Sg,e=>(e==null?void 0:e.children)||[]),mA=z(Eg,e=>(e==null?void 0:e.children)||[]),bA=z(wg,e=>(e==null?void 0:e.children)||[]),_A=z(e=>e.modals,e=>e.list),EA=z(e=>e.roles,e=>Qi(e)),SA=z(e=>e.roles,({roles:e})=>e),wA=z(e=>e.roles,({privileges:e})=>e),TA=z(e=>e.roles,({privileges:e})=>Object.values(e).find(({privilege:r})=>r==="guest")),xA=z(e=>e.roles,({flags:e})=>e),CA=z(e=>e.roles,({selectedTab:e})=>e),RA=z(e=>e.roles,({date:e})=>e),kc=z(e=>e.settings,e=>e.session),OA=(...e)=>z(kc,r=>e.length>0?Ke.pick(r,e):r),AA=z(e=>e.settings,e=>e.project),PA=z(e=>e.settings,e=>e),Bc=z(e=>e.settings,e=>e.server),DA=z(Bc,e=>e.remoteDebuggerMode),IA=z(Bc,e=>e.qodly),FA=z(kc,e=>e["monaco.zoom"]),Tg=["rounded-full","rounded-lg","border-gray-400","border-2","bg-red-500","bg-blue-500","bg-indigo-500","bg-transparent","bg-primary-dark","bg-green-500","bg-yellow-400","text-gray-500","text-4xl","text-white","px-4","py-2","primary","info","secondary","success","warning","danger","w-10","w-20","w-40","w-60","w-80","mb-2","mb-3","shadow","shadow-lg","shadow-xl","shadow-2xl"],xg=Tg.map(e=>({id:Cc(),content:"",name:e,parentId:null,scope:E.EWebFormStyleClassScope.THEME})),Wc=e=>z(co(e),r=>{var t,a;return((a=(t=r==null?void 0:r.content)==null?void 0:t.metadata)==null?void 0:a.styles)||[]}),$A=(e,r)=>z(Wc(e),t=>r.map(a=>{switch(!0){case a===E.EWebFormStyleClassScope.LOCAL:return t.map(i=>({...i,scope:E.EWebFormStyleClassScope.LOCAL}));case a===E.EWebFormStyleClassScope.THEME:return xg;default:return[]}}).flat()),MA=e=>z(Wc(e),r=>[...r.map(t=>({...t,scope:E.EWebFormStyleClassScope.LOCAL})),...xg]),NA=z(e=>e,e=>{var r;return[...(((r=e.sharedCSS)==null?void 0:r.styles)||[]).map(t=>({...t,scope:E.EWebFormStyleClassScope.SHARED}))]}),LA=e=>z(co(e),r=>r==null?void 0:r.flags),lo=z(e=>e.webforms,e=>e),Cg=z(lo,e=>(e==null?void 0:e.components)||[]),zi=z(lo,e=>e.inspector),jA=z(zi,e=>e.css),kA=z(zi,e=>e.datasource),Rg=z(lo,e=>e.templates||{data:[]}),BA=z(Rg,e=>e.data||[]),WA=e=>z(Cg,r=>r.find(t=>t.id===e)),UA=e=>z(zi,r=>r[e]),HA=z(lo,e=>e.datasources.theme),GA=z(e=>e.catalog,e=>e.sharedDatasources,e=>e.sharedCSS,(e,r,t)=>[e.state,r.state,t.state].every(a=>["loaded","error"].includes(a)));var Uc=(e=>(e.SHOW_AFTER_TIMEOUT="show_after_timeout",e.HIDE_AFTER_TIMEOUT="hide_after_timeout",e))(Uc||{}),Hc=(e=>(e.AIRY="airy",e.COMPACT="neutral",e))(Hc||{}),ai,qA=new Uint8Array(16);function Og(){if(!ai&&(ai=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)||typeof msCrypto<"u"&&typeof msCrypto.getRandomValues=="function"&&msCrypto.getRandomValues.bind(msCrypto),!ai))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return ai(qA)}const YA=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;function Vi(e){return typeof e=="string"&&YA.test(e)}var wt=[];for(var $u=0;$u<256;++$u)wt.push(($u+256).toString(16).substr(1));function Ki(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,t=(wt[e[r+0]]+wt[e[r+1]]+wt[e[r+2]]+wt[e[r+3]]+"-"+wt[e[r+4]]+wt[e[r+5]]+"-"+wt[e[r+6]]+wt[e[r+7]]+"-"+wt[e[r+8]]+wt[e[r+9]]+"-"+wt[e[r+10]]+wt[e[r+11]]+wt[e[r+12]]+wt[e[r+13]]+wt[e[r+14]]+wt[e[r+15]]).toLowerCase();if(!Vi(t))throw TypeError("Stringified UUID is invalid");return t}var Bp,Mu,Nu=0,Lu=0;function zA(e,r,t){var a=r&&t||0,i=r||new Array(16);e=e||{};var s=e.node||Bp,c=e.clockseq!==void 0?e.clockseq:Mu;if(s==null||c==null){var l=e.random||(e.rng||Og)();s==null&&(s=Bp=[l[0]|1,l[1],l[2],l[3],l[4],l[5]]),c==null&&(c=Mu=(l[6]<<8|l[7])&16383)}var f=e.msecs!==void 0?e.msecs:Date.now(),p=e.nsecs!==void 0?e.nsecs:Lu+1,h=f-Nu+(p-Lu)/1e4;if(h<0&&e.clockseq===void 0&&(c=c+1&16383),(h<0||f>Nu)&&e.nsecs===void 0&&(p=0),p>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");Nu=f,Lu=p,Mu=c,f+=122192928e5;var m=((f&268435455)*1e4+p)%4294967296;i[a++]=m>>>24&255,i[a++]=m>>>16&255,i[a++]=m>>>8&255,i[a++]=m&255;var _=f/4294967296*1e4&268435455;i[a++]=_>>>8&255,i[a++]=_&255,i[a++]=_>>>24&15|16,i[a++]=_>>>16&255,i[a++]=c>>>8|128,i[a++]=c&255;for(var S=0;S<6;++S)i[a+S]=s[S];return r||Ki(i)}function Ag(e){if(!Vi(e))throw TypeError("Invalid UUID");var r,t=new Uint8Array(16);return t[0]=(r=parseInt(e.slice(0,8),16))>>>24,t[1]=r>>>16&255,t[2]=r>>>8&255,t[3]=r&255,t[4]=(r=parseInt(e.slice(9,13),16))>>>8,t[5]=r&255,t[6]=(r=parseInt(e.slice(14,18),16))>>>8,t[7]=r&255,t[8]=(r=parseInt(e.slice(19,23),16))>>>8,t[9]=r&255,t[10]=(r=parseInt(e.slice(24,36),16))/1099511627776&255,t[11]=r/4294967296&255,t[12]=r>>>24&255,t[13]=r>>>16&255,t[14]=r>>>8&255,t[15]=r&255,t}function VA(e){e=unescape(encodeURIComponent(e));for(var r=[],t=0;t<e.length;++t)r.push(e.charCodeAt(t));return r}var KA="6ba7b810-9dad-11d1-80b4-00c04fd430c8",JA="6ba7b811-9dad-11d1-80b4-00c04fd430c8";function Pg(e,r,t){function a(i,s,c,l){if(typeof i=="string"&&(i=VA(i)),typeof s=="string"&&(s=Ag(s)),s.length!==16)throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)");var f=new Uint8Array(16+i.length);if(f.set(s),f.set(i,s.length),f=t(f),f[6]=f[6]&15|r,f[8]=f[8]&63|128,c){l=l||0;for(var p=0;p<16;++p)c[l+p]=f[p];return c}return Ki(f)}try{a.name=e}catch{}return a.DNS=KA,a.URL=JA,a}function XA(e){if(typeof e=="string"){var r=unescape(encodeURIComponent(e));e=new Uint8Array(r.length);for(var t=0;t<r.length;++t)e[t]=r.charCodeAt(t)}return ZA(QA(eP(e),e.length*8))}function ZA(e){for(var r=[],t=e.length*32,a="0123456789abcdef",i=0;i<t;i+=8){var s=e[i>>5]>>>i%32&255,c=parseInt(a.charAt(s>>>4&15)+a.charAt(s&15),16);r.push(c)}return r}function Dg(e){return(e+64>>>9<<4)+14+1}function QA(e,r){e[r>>5]|=128<<r%32,e[Dg(r)-1]=r;for(var t=1732584193,a=-271733879,i=-1732584194,s=271733878,c=0;c<e.length;c+=16){var l=t,f=a,p=i,h=s;t=Ct(t,a,i,s,e[c],7,-680876936),s=Ct(s,t,a,i,e[c+1],12,-389564586),i=Ct(i,s,t,a,e[c+2],17,606105819),a=Ct(a,i,s,t,e[c+3],22,-1044525330),t=Ct(t,a,i,s,e[c+4],7,-176418897),s=Ct(s,t,a,i,e[c+5],12,1200080426),i=Ct(i,s,t,a,e[c+6],17,-1473231341),a=Ct(a,i,s,t,e[c+7],22,-45705983),t=Ct(t,a,i,s,e[c+8],7,1770035416),s=Ct(s,t,a,i,e[c+9],12,-1958414417),i=Ct(i,s,t,a,e[c+10],17,-42063),a=Ct(a,i,s,t,e[c+11],22,-1990404162),t=Ct(t,a,i,s,e[c+12],7,1804603682),s=Ct(s,t,a,i,e[c+13],12,-40341101),i=Ct(i,s,t,a,e[c+14],17,-1502002290),a=Ct(a,i,s,t,e[c+15],22,1236535329),t=Rt(t,a,i,s,e[c+1],5,-165796510),s=Rt(s,t,a,i,e[c+6],9,-1069501632),i=Rt(i,s,t,a,e[c+11],14,643717713),a=Rt(a,i,s,t,e[c],20,-373897302),t=Rt(t,a,i,s,e[c+5],5,-701558691),s=Rt(s,t,a,i,e[c+10],9,38016083),i=Rt(i,s,t,a,e[c+15],14,-660478335),a=Rt(a,i,s,t,e[c+4],20,-405537848),t=Rt(t,a,i,s,e[c+9],5,568446438),s=Rt(s,t,a,i,e[c+14],9,-1019803690),i=Rt(i,s,t,a,e[c+3],14,-187363961),a=Rt(a,i,s,t,e[c+8],20,1163531501),t=Rt(t,a,i,s,e[c+13],5,-1444681467),s=Rt(s,t,a,i,e[c+2],9,-51403784),i=Rt(i,s,t,a,e[c+7],14,1735328473),a=Rt(a,i,s,t,e[c+12],20,-1926607734),t=Ot(t,a,i,s,e[c+5],4,-378558),s=Ot(s,t,a,i,e[c+8],11,-2022574463),i=Ot(i,s,t,a,e[c+11],16,1839030562),a=Ot(a,i,s,t,e[c+14],23,-35309556),t=Ot(t,a,i,s,e[c+1],4,-1530992060),s=Ot(s,t,a,i,e[c+4],11,1272893353),i=Ot(i,s,t,a,e[c+7],16,-155497632),a=Ot(a,i,s,t,e[c+10],23,-1094730640),t=Ot(t,a,i,s,e[c+13],4,681279174),s=Ot(s,t,a,i,e[c],11,-358537222),i=Ot(i,s,t,a,e[c+3],16,-722521979),a=Ot(a,i,s,t,e[c+6],23,76029189),t=Ot(t,a,i,s,e[c+9],4,-640364487),s=Ot(s,t,a,i,e[c+12],11,-421815835),i=Ot(i,s,t,a,e[c+15],16,530742520),a=Ot(a,i,s,t,e[c+2],23,-995338651),t=At(t,a,i,s,e[c],6,-198630844),s=At(s,t,a,i,e[c+7],10,1126891415),i=At(i,s,t,a,e[c+14],15,-1416354905),a=At(a,i,s,t,e[c+5],21,-57434055),t=At(t,a,i,s,e[c+12],6,1700485571),s=At(s,t,a,i,e[c+3],10,-1894986606),i=At(i,s,t,a,e[c+10],15,-1051523),a=At(a,i,s,t,e[c+1],21,-2054922799),t=At(t,a,i,s,e[c+8],6,1873313359),s=At(s,t,a,i,e[c+15],10,-30611744),i=At(i,s,t,a,e[c+6],15,-1560198380),a=At(a,i,s,t,e[c+13],21,1309151649),t=At(t,a,i,s,e[c+4],6,-145523070),s=At(s,t,a,i,e[c+11],10,-1120210379),i=At(i,s,t,a,e[c+2],15,718787259),a=At(a,i,s,t,e[c+9],21,-343485551),t=hn(t,l),a=hn(a,f),i=hn(i,p),s=hn(s,h)}return[t,a,i,s]}function eP(e){if(e.length===0)return[];for(var r=e.length*8,t=new Uint32Array(Dg(r)),a=0;a<r;a+=8)t[a>>5]|=(e[a/8]&255)<<a%32;return t}function hn(e,r){var t=(e&65535)+(r&65535),a=(e>>16)+(r>>16)+(t>>16);return a<<16|t&65535}function tP(e,r){return e<<r|e>>>32-r}function Ji(e,r,t,a,i,s){return hn(tP(hn(hn(r,e),hn(a,s)),i),t)}function Ct(e,r,t,a,i,s,c){return Ji(r&t|~r&a,e,r,i,s,c)}function Rt(e,r,t,a,i,s,c){return Ji(r&a|t&~a,e,r,i,s,c)}function Ot(e,r,t,a,i,s,c){return Ji(r^t^a,e,r,i,s,c)}function At(e,r,t,a,i,s,c){return Ji(t^(r|~a),e,r,i,s,c)}var rP=Pg("v3",48,XA);const nP=rP;function aP(e,r,t){e=e||{};var a=e.random||(e.rng||Og)();if(a[6]=a[6]&15|64,a[8]=a[8]&63|128,r){t=t||0;for(var i=0;i<16;++i)r[t+i]=a[i];return r}return Ki(a)}function oP(e,r,t,a){switch(e){case 0:return r&t^~r&a;case 1:return r^t^a;case 2:return r&t^r&a^t&a;case 3:return r^t^a}}function ju(e,r){return e<<r|e>>>32-r}function iP(e){var r=[1518500249,1859775393,2400959708,3395469782],t=[1732584193,4023233417,2562383102,271733878,3285377520];if(typeof e=="string"){var a=unescape(encodeURIComponent(e));e=[];for(var i=0;i<a.length;++i)e.push(a.charCodeAt(i))}else Array.isArray(e)||(e=Array.prototype.slice.call(e));e.push(128);for(var s=e.length/4+2,c=Math.ceil(s/16),l=new Array(c),f=0;f<c;++f){for(var p=new Uint32Array(16),h=0;h<16;++h)p[h]=e[f*64+h*4]<<24|e[f*64+h*4+1]<<16|e[f*64+h*4+2]<<8|e[f*64+h*4+3];l[f]=p}l[c-1][14]=(e.length-1)*8/Math.pow(2,32),l[c-1][14]=Math.floor(l[c-1][14]),l[c-1][15]=(e.length-1)*8&4294967295;for(var m=0;m<c;++m){for(var _=new Uint32Array(80),S=0;S<16;++S)_[S]=l[m][S];for(var T=16;T<80;++T)_[T]=ju(_[T-3]^_[T-8]^_[T-14]^_[T-16],1);for(var C=t[0],F=t[1],D=t[2],W=t[3],$=t[4],j=0;j<80;++j){var A=Math.floor(j/20),K=ju(C,5)+oP(A,F,D,W)+$+r[A]+_[j]>>>0;$=W,W=D,D=ju(F,30)>>>0,F=C,C=K}t[0]=t[0]+C>>>0,t[1]=t[1]+F>>>0,t[2]=t[2]+D>>>0,t[3]=t[3]+W>>>0,t[4]=t[4]+$>>>0}return[t[0]>>24&255,t[0]>>16&255,t[0]>>8&255,t[0]&255,t[1]>>24&255,t[1]>>16&255,t[1]>>8&255,t[1]&255,t[2]>>24&255,t[2]>>16&255,t[2]>>8&255,t[2]&255,t[3]>>24&255,t[3]>>16&255,t[3]>>8&255,t[3]&255,t[4]>>24&255,t[4]>>16&255,t[4]>>8&255,t[4]&255]}var sP=Pg("v5",80,iP);const uP=sP,cP="00000000-0000-0000-0000-000000000000";function lP(e){if(!Vi(e))throw TypeError("Invalid UUID");return parseInt(e.substr(14,1),16)}const fP=Object.freeze(Object.defineProperty({__proto__:null,NIL:cP,parse:Ag,stringify:Ki,v1:zA,v3:nP,v4:aP,v5:uP,validate:Vi,version:lP},Symbol.toStringTag,{value:"Module"})),dP=uw(fP);function Gc(e,r){if(!e||!r||!e.length||!r.length)throw new Error("Bad alphabet");this.srcAlphabet=e,this.dstAlphabet=r}Gc.prototype.convert=function(e){var r,t,a,i={},s=this.srcAlphabet.length,c=this.dstAlphabet.length,l=e.length,f=typeof e=="string"?"":[];if(!this.isValid(e))throw new Error('Number "'+e+'" contains of non-alphabetic digits ('+this.srcAlphabet+")");if(this.srcAlphabet===this.dstAlphabet)return e;for(r=0;r<l;r++)i[r]=this.srcAlphabet.indexOf(e[r]);do{for(t=0,a=0,r=0;r<l;r++)t=t*s+i[r],t>=c?(i[a++]=parseInt(t/c,10),t=t%c):a>0&&(i[a++]=0);l=a,f=this.dstAlphabet.slice(t,t+1).concat(f)}while(a!==0);return f};Gc.prototype.isValid=function(e){for(var r=0;r<e.length;++r)if(this.srcAlphabet.indexOf(e[r])===-1)return!1;return!0};var pP=Gc,hP=pP;function fo(e,r){var t=new hP(e,r);return function(a){return t.convert(a)}}fo.BIN="01";fo.OCT="01234567";fo.DEC="0123456789";fo.HEX="0123456789abcdef";var gP=fo;const{v4:ku}=dP,oi=gP,Bu="123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ",vP="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!#$%&'()*+-./:<=>?@[]^_`{|}~",yP={consistentLength:!0};let Wu;const Wp=(e,r,t)=>{const a=r(e.toLowerCase().replace(/-/g,""));return!t||!t.consistentLength?a:a.padStart(t.shortIdLength,t.paddingChar)},mP=(e,r)=>{const a=r(e).padStart(32,"0").match(/(\w{8})(\w{4})(\w{4})(\w{4})(\w{12})/);return[a[1],a[2],a[3],a[4],a[5]].join("-")},bP=e=>Math.ceil(Math.log(2**128)/Math.log(e));var Oi=(()=>{const e=(r,t)=>{const a=r||Bu,i={...yP,...t};if([...new Set(Array.from(a))].length!==a.length)throw new Error("The provided Alphabet has duplicate characters resulting in unreliable results");const s=bP(a.length),c={shortIdLength:s,consistentLength:i.consistentLength,paddingChar:a[0]},l=oi(oi.HEX,a),f=oi(a,oi.HEX),p=()=>Wp(ku(),l,c),h={new:p,generate:p,uuid:ku,fromUUID:m=>Wp(m,l,c),toUUID:m=>mP(m,f),alphabet:a,maxLength:s};return Object.freeze(h),h};return e.constants={flickrBase58:Bu,cookieBase90:vP},e.uuid=ku,e.generate=()=>(Wu||(Wu=e(Bu).generate),Wu()),e})(),Me=(e=>(e.DATACLASS="dataclass",e.METHOD="method",e.ATTRIBUTE="attribute",e.DATASTORE="datastore",e))(Me||{});const _P=[Me.DATASTORE,Me.DATACLASS,Me.ATTRIBUTE,Me.METHOD],Ai="guest",qc=[{key:"read",label:"Read",canApplyTo:[Me.DATASTORE,Me.DATACLASS,Me.ATTRIBUTE]},{key:"create",label:"Create",canApplyTo:[Me.DATASTORE,Me.DATACLASS,Me.ATTRIBUTE]},{key:"update",label:"Update",canApplyTo:[Me.DATASTORE,Me.DATACLASS,Me.ATTRIBUTE]},{key:"drop",label:"Delete",canApplyTo:[Me.DATASTORE,Me.DATACLASS,Me.ATTRIBUTE]},{key:"describe",label:"Describe",canApplyTo:[Me.DATASTORE,Me.DATACLASS,Me.ATTRIBUTE,Me.METHOD]},{key:"execute",label:"Execute",canApplyTo:[Me.DATASTORE,Me.DATACLASS,Me.METHOD]},{key:"promote",label:"Promote",canApplyTo:[Me.METHOD]}];function lr(e,...r){return Array.from(new Set([...e,...r]))}function Ig(e){const r={},t=new Map;e.forEach(f=>{const p=f.id||Oi.generate();r[p]={...f,id:p,parents:[],includes:lr(f.includes||[]),resources:[]},t.set(f.privilege,p)}),Object.entries(r).forEach(([f,p])=>{const h=p.includes.map(m=>{const _=t.get(m);return _?(r[_].parents=lr(r[_].parents,_),_):""}).filter(Boolean);r[f]={...p,includes:h}});const a=Fg(r),i=new Set;function s(f){i.add(f.id),f.includes=f.includes.filter(p=>!i.has(p))}if(a.forEach(s),a.forEach(f=>f.parents=[]),a.forEach(f=>{f.includes.forEach(p=>r[p].parents.push(f.id))}),Object.values(r).find(({privilege:f})=>f===Ai))return r;const l=Oi.generate();return{[l]:{id:l,privilege:Ai,includes:[],parents:[],resources:[]},...r}}function Fg(e){return Object.values(e).sort((r,t)=>r.parents.length-t.parents.length)}function Xi(e,r){const t=r[e];let a=[];return t&&t.parents.forEach(i=>{a=lr(a,...Xi(i,r),i)}),a}function Pi(e,r){const t=r[e];let a=[];return t&&t.includes.forEach(i=>{a=lr(a,...Pi(i,r),i)}),a}function EP(e,r){const t=r[e];if(!t)return[];const a=[e,...Xi(e,r),...t.includes];return Object.keys(r).filter(i=>!a.includes(i))}function SP(e,r){return r[e]?Object.keys(r).reduce((a,i)=>i===e?a:{...a,[i]:{...r[i],parents:r[i].parents.filter(s=>s!==e),includes:r[i].includes.filter(s=>s!==e)}},{}):r}function wP(e,r,t){const a=t[e],i=t[r];return!a||!i?t:{...t,[e]:{...t[e],includes:lr(a.includes,r)},[r]:{...t[r],parents:lr(i.parents,e)}}}function TP(e,r,t){const a=t[e],i=t[r];return!a||!i?t:{...t,[e]:{...t[e],includes:t[e].includes.filter(s=>s!==r)},[r]:{...t[r],parents:t[r].parents.filter(s=>s!==e)}}}function $g(e,r){E.validateName(e),Object.entries(r).forEach(([,{privilege:a}])=>{if(e.toLowerCase()===a.toLowerCase())throw new Error(`There's already a Privilege with the name ${e}`)});const t=Oi.generate();return{[t]:{id:t,privilege:e,includes:[],parents:[],resources:[]},...r}}function xP(e,r,t,a,i){let s=$g(e,i);const c=Object.entries(s).find(([,l])=>l.privilege===e);return c?(s=jg(c[1].id,r,t,a,s),s):i}function CP(e,r,t){if(!e)throw new Error("Please enter a name");if(!t[r])throw new Error("Invalid privilege");return Object.entries(t).forEach(([,{privilege:a,id:i}])=>{if(e.toLowerCase()===a.toLowerCase()&&r!==i)throw new Error(`There's already a Privilege with the name ${e}`)}),{...t,[r]:{...t[r],privilege:e}}}function RP(e,r){return e.map(t=>tn(t,r))}function tn(e,r){return r[e]?r[e]:null}function Mg({applyTo:e,type:r,...t}){return Object.entries(t).reduce((a,[i,s])=>{const c=Ke.find(qc,["key",i]);return!c||!c.canApplyTo.includes(r)||(typeof s=="string"?s.split(","):s).forEach(f=>{a[f]=lr(a[f]||[],i)}),a},{})}const lc=(e,r=!1)=>["read","create","update","delete"].includes(e.toLowerCase())?`All ${r?"dataclasses and ":""}attributes have the '${e.toLowerCase()}' permission`:e.toLowerCase()==="execute"?`All functions defined ${r?"through the model (DataStore, Dataclasses, Entity selections, Entities) have the execute permission":"on this Dataclass, Entity selection class, Entity class have the execute permission"}`:`All ${r?"dataclasses, ":""}attributes and functions have the '${e.toLowerCase()}' permission`;function Yc(e){return{permissions:qc.filter(({canApplyTo:r})=>r.includes(e.type)).map(({key:r,label:t})=>{const a={name:r,from:[]};switch(e.type){case Me.DATASTORE:return{...a,info:lc(t,!0)};case Me.DATACLASS:return{...a,info:lc(t)};default:return a}}),resource:e.applyTo,type:e.type}}function Ng(e,r){const t=Lg(r),a={};return e.filter(({type:i})=>_P.includes(i)).forEach(i=>{const s=Mg(i);Object.entries(s).forEach(([c,l])=>{var h;const f=(h=t[c])==null?void 0:h.id;if(!f)return;a[f]=a[f]||{...r[f]};let p=Ke.find(a[f].resources,{resource:i.applyTo,type:i.type});p||(p=Yc(i),a[f].resources.push(p)),p.permissions=p.permissions.map(m=>({...m,checked:m.checked||l.includes(m.name)}))})}),{...r,...a}}function Lg(e){return Object.values(e).reduce((r,t)=>({...r,[t.privilege]:t}),{})}function Zi(e){var t;const r=Ig(e.privileges||[]);return{privileges:Ng(((t=e.permissions)==null?void 0:t.allowed)||[],r),roles:(e.roles||[]).map(({id:a=Oi.generate(),role:i,privileges:s=[]})=>({id:a,role:i,privileges:lr(s).map(c=>{var l;return(l=Object.values(r).find(({privilege:f})=>f===c))==null?void 0:l.id}).filter(Boolean)})).reduce((a,i)=>({...a,[i.id]:{...i}}),{})}}function Qi(e){const r=Object.values(e.privileges).filter(({includes:a})=>a.length===0).map(({id:a})=>a),t=[...r,...r.map(a=>Xi(a,e.privileges).reverse())].flat().filter((a,i,s)=>s.indexOf(a)===i).map(a=>e.privileges[a]);return{permissions:{allowed:Object.values(e.privileges).reduce((a,i)=>(i.resources.forEach(({permissions:s,resource:c,type:l})=>{let f=Ke.find(a,{applyTo:c,type:l});f||(f={applyTo:c,type:l},a.push(f)),s.forEach(({name:p,checked:h})=>{h&&f&&(f[p]=f[p]||[],f[p].push(i.privilege))})}),a),[])},privileges:t.filter(({privilege:a})=>a!==Ai).map(({id:a,includes:i,privilege:s})=>({id:a,privilege:s,includes:i.map(c=>e.privileges[c].privilege)})),roles:Object.values(e.roles).map(a=>({...a,privileges:a.privileges.map(i=>{var s;return(s=e.privileges[i])==null?void 0:s.privilege}).filter(Boolean)}))}}function OP(e,r){const t=r[e],a={children:[],links:[],parents:[],selected:e};if(!t)return a;function i(l,f,p=[]){const h=l.reduce((m,_)=>[...m,...r[_][f]],[]);return h.length===0?p:(p.push(h),i(h,f,p))}function s(l){const f=[],p=[];for(let h=l.length-1;h>=0;h-=1){const m=l[h].filter(_=>f.includes(_)?!1:(f.push(_),!0));m.length>0&&p.unshift(lr(m))}return p}function c(l,f){const p=[];return l.reduce((h,m)=>(m.forEach(_=>{r[_][f==="parents"?"includes":"parents"].forEach(T=>{p.includes(T)&&h.push(f==="parents"?{source:_,target:T}:{source:T,target:_})}),p.push(_)}),h),[])}return a.children=i([e],"includes"),a.children=s(a.children),a.parents=i([e],"parents"),a.parents=s(a.parents),a.links=[...c([[e],...a.parents],"parents"),...c([[e],...a.children],"includes")],a}function AP(e,r,t){const a=tn(e,t);if(!a||Ke.find(a.resources,{resource:r.applyTo,type:r.type}))return t;const i={...a,resources:[...a.resources,Yc(r)]};return{...t,[e]:i}}function PP(e,r,t){const a=tn(e,t);if(!a)return t;const i={...a,resources:a.resources.filter(({resource:s,type:c})=>s!==r.applyTo||c!==r.type)};return{...t,[e]:i}}function DP(e,r){const t=tn(e,r);if(!t)return r;const a={...t,resources:t.resources.filter(i=>i.permissions.some(s=>s.from.length)).map(i=>({...i,permissions:i.permissions.map(s=>({...s,checked:!1}))}))};return{...r,[e]:a}}function jg(e,r,t,a,i){const s=tn(e,i);if(!s)return i;const l=Ke.find(s.resources,{type:t,resource:r})?{...s,resources:s.resources.map(f=>f.type===t&&f.resource===r?{...f,permissions:f.permissions.map(p=>p.name===a?{...p,checked:!p.checked,from:[]}:p)}:f)}:{...s,resources:[...s.resources,{type:t,resource:r,permissions:qc.filter(f=>f.canApplyTo.includes(t)).map(f=>({from:[],name:f.key,checked:f.key===a,info:lc(f.key,t===Me.DATASTORE)}))}]};return{...i,[e]:l}}function IP(e,r,t,a){const i=tn(e,a);if(!i)return a;const c=Ke.find(i.resources,{type:r.type,resource:r.resource})?{...i,resources:i.resources.map(l=>l.type===r.type&&l.resource===r.resource?{...l,permissions:r.permissions.map(f=>f.name===t.name?{...f,checked:!f.checked,from:[]}:f)}:l)}:{...i,resources:[...i.resources,{...r,permissions:r.permissions.map(l=>({...l,checked:t.name===l.name,from:[]}))}]};return{...a,[e]:c}}function FP(e,r){var f;const t=kg(e,r)||[],a=((f=tn(e,r))==null?void 0:f.resources)||[],c=([...t,...a].filter(({type:p})=>p===Me.METHOD)||[]).map(({resource:p})=>p);return Object.entries(r).reduce((p,[h,{resources:m}])=>(m.filter(({resource:_,type:S})=>S===Me.METHOD&&c.includes(_)).forEach(({permissions:_,resource:S})=>{var C;((C=_.find(({name:F})=>F==="promote"))==null?void 0:C.checked)&&(p[S]=lr(p[S]||[],h))}),p),{})}function kg(e,r){var c;const t=tn(e,r);if(!t)return[];const a=(c=Object.values(r).find(l=>l.privilege===Ai))==null?void 0:c.id;return(a&&a!==e?lr(Pi(e,r),a):Pi(e,r)).reduce((l,f)=>(r[f].resources.forEach(h=>{if(h.permissions.filter(({checked:S})=>S).length===0)return;const _=Ke.find(l,{type:h.type,resource:h.resource});if(!_){l.push({...h,permissions:h.permissions.map(S=>({...S,from:S.checked?[f]:[],checked:!1}))});return}_.permissions=_.permissions.map((S,T)=>{let{from:C=[]}=S;return h.permissions[T].checked&&!C.includes(f)&&(C=[...C,f]),{...S,from:C,checked:S.checked}})}),l),Ke.clone(t.resources.map(l=>({...l,permissions:l.permissions.map(({checked:f,...p})=>({...p,checked:!!f}))}))))}const $P=e=>e.reduce((r,t)=>({...r,[t.id]:{...t}}),{}),MP=(e,r)=>r[e]?Object.values(r).reduce((t,a)=>e===a.id||a.role===""?t:{...t,[a.id]:a},{}):r,NP=(e,r,t)=>t[e]?Object.values(t).reduce((a,i)=>e===i.id?{...a,[i.id]:{...i,name:r}}:{...a,[i.id]:i},{}):t,LP=(e,r)=>{const t={id:e,role:"",privileges:[]};return{...r,[t.id]:t}},jP=(e,r)=>{if(E.validateName(e.role),Object.values(r).find(a=>a.role===e.role))throw new Error(`a role with the name ${e.role} already exists`);return Object.values(r).reduce((a,i)=>e.id===i.id?{...a,[e.id]:e}:{...a,[i.id]:i},{})},kP={list:[]},Up=(e,r)=>e.list.filter(t=>t.id!==r),Bg=fr({name:"modals",initialState:kP,reducers:{createModal:(e,r)=>{e.list.push(r.payload)},editModal:(e,r)=>{const{id:t,...a}=r.payload,i=e.list.find(E.byId(t));i&&Object.assign(i,{...a})},removeModal:(e,r)=>{const t=r.payload;e.list=Up(e,t)},closeModal:(e,r)=>{const{id:t,reason:a}=r.payload;if(a){const i=e.list.find(s=>s.id===t);i&&(i.closeReason=a,i.isOpen=!1)}else e.list=Up(e,t)}}}),{createModal:Wg,removeModal:Ug,closeModal:BP,editModal:WP}=Bg.actions;var fc={exports:{}},sa={};/*
90
+ `),T}return uc(function(){f.current=e,p.current=m,h.current=_,l.current=void 0}),uc(function(){function T(){try{var C=t.getState();if(C===p.current)return;var F=f.current(C);if(r(F,h.current))return;h.current=F,p.current=C}catch(D){l.current=D}s()}return c.onStateChange=T,c.trySubscribe(),T(),function(){return c.tryUnsubscribe()}},[t,c]),_}function OO(e){e===void 0&&(e=Zr);var r=e===Zr?pg:function(){return dt.useContext(e)};return function(a,i){if(i===void 0&&(i=CO),process.env.NODE_ENV!=="production"){if(!a)throw new Error("You must pass a selector to useSelector");if(typeof a!="function")throw new Error("You must pass a function as a selector to useSelector");if(typeof i!="function")throw new Error("You must pass a function as an equality function to useSelector")}var s=r(),c=s.store,l=s.subscription,f=RO(a,i,c,l);return dt.useDebugValue(f),f}}var AO=OO();pO(nS.unstable_batchedUpdates);const PO=()=>xO(),Qr=AO,Lc=z(e=>e,e=>e.catalog.state==="loaded"?e.catalog.model:null),DO=z(e=>e,({catalog:e})=>e.state),IO=z(Lc,e=>e?e.dataClasses:[]),FO=z(Lc,e=>e?e.methods:[]),gg=e=>z(r=>r,r=>{switch(r.catalog.state){case"loaded":const t=e?r.catalog.model.dataClasses[e]:r.catalog.model;return(t==null?void 0:t.methods)||[];default:return[]}}),$O=e=>Qr(gg(e),dg),MO=(e,r)=>z(gg(e),t=>t.find(a=>`${a.applyTo}.${a.name}`===r)),NO=(e,r,t)=>Qr(MO(e,`${t}.${r}`),dg),vg=z(e=>e,e=>e),LO=e=>z(en,r=>{var i;const t=r.tabs.find(({path:s})=>s===e),a=t==null?void 0:t.content.components;return!t||!a?[]:(i=Object.keys(a))==null?void 0:i.map(s=>({id:s,...a[s]}))}),yg=e=>z(en,r=>{var a,i;const t=r.tabs.find(({path:s})=>s===e);return((i=(a=t==null?void 0:t.content)==null?void 0:a.metadata)==null?void 0:i.datasources)||[]}),jO=(e,r,t)=>z(vg,a=>{var i,s;if(r){const c=a.sharedDatasources.sources[r];return c?c.find(l=>l.id===e):void 0}else{const c=a.root.tabs.find(f=>f.path===t);return c?(s=(i=c.content.metadata)==null?void 0:i.datasources)==null?void 0:s.find(f=>f.id===e):void 0}}),mg=z(e=>e,e=>{var r;return((r=e.sharedDatasources)==null?void 0:r.sources)||[]}),kO=(e,r,t,a)=>z(yg(e),mg,(i,s)=>{const c=Ke.flatten(Ke.values(s)),l=[...r!=="private"?i:[],...r!=="shared"?c:[]];return t?l.filter(f=>(!a||a.every(({id:p,namespace:h=""})=>f.id!==p||(f.namespace||"")!==h))&&(t.includes(f.type)||f.dataType&&(t.includes(f.dataType)||t.includes("objectFromArray")&&f.dataType==="object"&&f.from))):l}),BO=z(e=>e.debugger,e=>e.meta),Un=z(e=>e.debugger,e=>e.list),kt=z(e=>e.debugger,e=>e.sessions),WO=z(kt,e=>e.length),Bn=(e,r,t,a)=>e.find(i=>i.filePath===r&&i.methodName===t&&(!a||i.className===a)),ft=(e,r)=>e.find(t=>t.threadId===r),bg=(e,r)=>e.find(t=>t.tabPath===r),UO=(e,r)=>z(Un,t=>{var a;return((a=Bn(t,e,r))==null?void 0:a.breakpoints.saved.locations)||[]}),HO=(e,r)=>z(Un,t=>{var a;return((a=Bn(t,e,r))==null?void 0:a.breakpoints.draft.locations)||[]}),GO=e=>z(Un,r=>r.filter(t=>t.filePath===e).reduce((t,a)=>[...t,...a.breakpoints.saved.locations.map(i=>({...i,line:i.line+(a.breakpoints.saved.offset||0)}))],[]).sort((t,a)=>t.line-a.line)),qO=e=>z(Un,r=>r.filter(t=>t.filePath===e).reduce((t,a)=>[...t,...a.breakpoints.draft.locations.map(i=>({...i,line:i.line+(a.breakpoints.draft.offset||0)}))],[]).sort((t,a)=>t.line-a.line)),YO=e=>z(kt,r=>{const t=ft(r,e);return t!=null&&t.stopped?t.highlightedLines:null}),zO=e=>z(kt,r=>{const t=ft(r,e);return t!=null&&t.stopped?t.activeLine:null}),VO=e=>z(kt,r=>{var t;return((t=ft(r,e))==null?void 0:t.expressions)||[]}),KO=e=>z(kt,r=>{var t;return((t=ft(r,e))==null?void 0:t.stopped)||!1}),JO=(e,r)=>z(Un,t=>{var a;return(a=Bn(t,e,r))==null?void 0:a.source}),XO=e=>z(kt,r=>{var t;return((t=bg(r,e))==null?void 0:t.threadId)||-1}),ZO=e=>z(kt,r=>{var t,a;return(a=(t=ft(r,e))==null?void 0:t.currentStackFrame)==null?void 0:a.source}),QO=e=>z(kt,r=>{var t;return(t=ft(r,e))==null?void 0:t.currentStackFrame}),eA=z(kt,e=>e.map(({channelId:r,threadId:t})=>({id:r,threadId:t}))),tA=e=>z(kt,r=>{var t;return((t=ft(r,e))==null?void 0:t.stackFrames)||[]}),rA=e=>z(kt,r=>{var t,a;return((a=(t=ft(r,e))==null?void 0:t.variables)==null?void 0:a.callchain)||[]}),nA=e=>z(kt,r=>{var t,a;return((a=(t=ft(r,e))==null?void 0:t.variables)==null?void 0:a.expressions)||[]}),aA=(e,r="saved")=>z(Un,t=>{const a=t.find(i=>i.filePath===e);return(a==null?void 0:a.breakpoints[r].offset)||0}),oA=(e,r,t,a)=>z(kt,i=>{var p;const s=((p=ft(i,e))==null?void 0:p.exceptions)||[],c=r===E.FileFolderType.CLASS,l=c&&a?`${a}.${t}`:t;return(l?s.filter(h=>h.location===l):s).map(h=>({...h,locationLine:c?h.locationLine:h.locationLine+1}))}),en=z(e=>e.root,e=>e),Ea=z(en,e=>e.tabs),iA=z(en,e=>e.activeTab),sA=z(en,e=>e.recent.filter(({type:r})=>r!==E.FileFolderType.DEBUGGER)),uA=z(en,({tabs:e,activeTab:r})=>e.find(({path:t})=>t===r)),cA=z(en,({tabs:e})=>e.reduce((t,a)=>(a==null?void 0:a.weight)>((t==null?void 0:t.weight)||0)?a:t,null)),lA=z(Ea,e=>e.filter(({type:r,flags:t})=>r===E.FileFolderType.WEBFORM&&t.enabled===!1).map(({path:r})=>r)),fA=z(Ea,e=>e.length>0),co=e=>z(en,r=>r.tabs.find(({path:t})=>t===e)),_g=(e,r="")=>z(co(e),t=>!t||!t.content||typeof t.content=="string"?t==null?void 0:t.content:Ke.get(t.content,r)),dA=e=>z(co(e),r=>r==null?void 0:r.extra),pA=(e,r=t=>t)=>z(_g(e,"components"),t=>r(t||{})),jc=z(Ea,e=>e.filter(r=>r.flags.touched)),hA=z(jc,e=>e.length),gA=z(kt,e=>e.map(({threadId:r,currentStackFrame:{source:t},tabPath:a})=>({name:Mh(r,t),path:a,type:E.FileFolderType.DEBUGGER,content:t==null?void 0:t.content,flags:{},extra:{source:t}}))),vA=z(e=>e,e=>e.explorer||[]),Eg=z(e=>e,e=>e.explorer.find(r=>r.path===E.FolderRootPath.WEBFORMS)),Sg=z(e=>e,e=>e.explorer.find(r=>r.path===E.FolderRootPath.METHODS)),wg=z(e=>e,e=>e.explorer.find(r=>r.path===E.FolderRootPath.CLASSES)),yA=z(Sg,e=>(e==null?void 0:e.children)||[]),mA=z(Eg,e=>(e==null?void 0:e.children)||[]),bA=z(wg,e=>(e==null?void 0:e.children)||[]),_A=z(e=>e.modals,e=>e.list),EA=z(e=>e.roles,e=>Qi(e)),SA=z(e=>e.roles,({roles:e})=>e),wA=z(e=>e.roles,({privileges:e})=>e),TA=z(e=>e.roles,({privileges:e})=>Object.values(e).find(({privilege:r})=>r==="guest")),xA=z(e=>e.roles,({flags:e})=>e),CA=z(e=>e.roles,({selectedTab:e})=>e),RA=z(e=>e.roles,({forceLogin:e})=>e),OA=z(e=>e.roles,({date:e})=>e),kc=z(e=>e.settings,e=>e.session),AA=(...e)=>z(kc,r=>e.length>0?Ke.pick(r,e):r),PA=z(e=>e.settings,e=>e.project),DA=z(e=>e.settings,e=>e),Bc=z(e=>e.settings,e=>e.server),IA=z(Bc,e=>e.remoteDebuggerMode),FA=z(Bc,e=>e.qodly),$A=z(kc,e=>e["monaco.zoom"]),Tg=["rounded-full","rounded-lg","border-gray-400","border-2","bg-red-500","bg-blue-500","bg-indigo-500","bg-transparent","bg-primary-dark","bg-green-500","bg-yellow-400","text-gray-500","text-4xl","text-white","px-4","py-2","primary","info","secondary","success","warning","danger","w-10","w-20","w-40","w-60","w-80","mb-2","mb-3","shadow","shadow-lg","shadow-xl","shadow-2xl"],xg=Tg.map(e=>({id:Cc(),content:"",name:e,parentId:null,scope:E.EWebFormStyleClassScope.THEME})),Wc=e=>z(co(e),r=>{var t,a;return((a=(t=r==null?void 0:r.content)==null?void 0:t.metadata)==null?void 0:a.styles)||[]}),MA=(e,r)=>z(Wc(e),t=>r.map(a=>{switch(!0){case a===E.EWebFormStyleClassScope.LOCAL:return t.map(i=>({...i,scope:E.EWebFormStyleClassScope.LOCAL}));case a===E.EWebFormStyleClassScope.THEME:return xg;default:return[]}}).flat()),NA=e=>z(Wc(e),r=>[...r.map(t=>({...t,scope:E.EWebFormStyleClassScope.LOCAL})),...xg]),LA=z(e=>e,e=>{var r;return[...(((r=e.sharedCSS)==null?void 0:r.styles)||[]).map(t=>({...t,scope:E.EWebFormStyleClassScope.SHARED}))]}),jA=e=>z(co(e),r=>r==null?void 0:r.flags),lo=z(e=>e.webforms,e=>e),Cg=z(lo,e=>(e==null?void 0:e.components)||[]),zi=z(lo,e=>e.inspector),kA=z(zi,e=>e.css),BA=z(zi,e=>e.datasource),Rg=z(lo,e=>e.templates||{data:[]}),WA=z(Rg,e=>e.data||[]),UA=e=>z(Cg,r=>r.find(t=>t.id===e)),HA=e=>z(zi,r=>r[e]),GA=z(lo,e=>e.datasources.theme),qA=z(e=>e.catalog,e=>e.sharedDatasources,e=>e.sharedCSS,(e,r,t)=>[e.state,r.state,t.state].every(a=>["loaded","error"].includes(a)));var Uc=(e=>(e.SHOW_AFTER_TIMEOUT="show_after_timeout",e.HIDE_AFTER_TIMEOUT="hide_after_timeout",e))(Uc||{}),Hc=(e=>(e.AIRY="airy",e.COMPACT="neutral",e))(Hc||{}),ai,YA=new Uint8Array(16);function Og(){if(!ai&&(ai=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)||typeof msCrypto<"u"&&typeof msCrypto.getRandomValues=="function"&&msCrypto.getRandomValues.bind(msCrypto),!ai))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return ai(YA)}const zA=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;function Vi(e){return typeof e=="string"&&zA.test(e)}var wt=[];for(var $u=0;$u<256;++$u)wt.push(($u+256).toString(16).substr(1));function Ki(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,t=(wt[e[r+0]]+wt[e[r+1]]+wt[e[r+2]]+wt[e[r+3]]+"-"+wt[e[r+4]]+wt[e[r+5]]+"-"+wt[e[r+6]]+wt[e[r+7]]+"-"+wt[e[r+8]]+wt[e[r+9]]+"-"+wt[e[r+10]]+wt[e[r+11]]+wt[e[r+12]]+wt[e[r+13]]+wt[e[r+14]]+wt[e[r+15]]).toLowerCase();if(!Vi(t))throw TypeError("Stringified UUID is invalid");return t}var Bp,Mu,Nu=0,Lu=0;function VA(e,r,t){var a=r&&t||0,i=r||new Array(16);e=e||{};var s=e.node||Bp,c=e.clockseq!==void 0?e.clockseq:Mu;if(s==null||c==null){var l=e.random||(e.rng||Og)();s==null&&(s=Bp=[l[0]|1,l[1],l[2],l[3],l[4],l[5]]),c==null&&(c=Mu=(l[6]<<8|l[7])&16383)}var f=e.msecs!==void 0?e.msecs:Date.now(),p=e.nsecs!==void 0?e.nsecs:Lu+1,h=f-Nu+(p-Lu)/1e4;if(h<0&&e.clockseq===void 0&&(c=c+1&16383),(h<0||f>Nu)&&e.nsecs===void 0&&(p=0),p>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");Nu=f,Lu=p,Mu=c,f+=122192928e5;var m=((f&268435455)*1e4+p)%4294967296;i[a++]=m>>>24&255,i[a++]=m>>>16&255,i[a++]=m>>>8&255,i[a++]=m&255;var _=f/4294967296*1e4&268435455;i[a++]=_>>>8&255,i[a++]=_&255,i[a++]=_>>>24&15|16,i[a++]=_>>>16&255,i[a++]=c>>>8|128,i[a++]=c&255;for(var S=0;S<6;++S)i[a+S]=s[S];return r||Ki(i)}function Ag(e){if(!Vi(e))throw TypeError("Invalid UUID");var r,t=new Uint8Array(16);return t[0]=(r=parseInt(e.slice(0,8),16))>>>24,t[1]=r>>>16&255,t[2]=r>>>8&255,t[3]=r&255,t[4]=(r=parseInt(e.slice(9,13),16))>>>8,t[5]=r&255,t[6]=(r=parseInt(e.slice(14,18),16))>>>8,t[7]=r&255,t[8]=(r=parseInt(e.slice(19,23),16))>>>8,t[9]=r&255,t[10]=(r=parseInt(e.slice(24,36),16))/1099511627776&255,t[11]=r/4294967296&255,t[12]=r>>>24&255,t[13]=r>>>16&255,t[14]=r>>>8&255,t[15]=r&255,t}function KA(e){e=unescape(encodeURIComponent(e));for(var r=[],t=0;t<e.length;++t)r.push(e.charCodeAt(t));return r}var JA="6ba7b810-9dad-11d1-80b4-00c04fd430c8",XA="6ba7b811-9dad-11d1-80b4-00c04fd430c8";function Pg(e,r,t){function a(i,s,c,l){if(typeof i=="string"&&(i=KA(i)),typeof s=="string"&&(s=Ag(s)),s.length!==16)throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)");var f=new Uint8Array(16+i.length);if(f.set(s),f.set(i,s.length),f=t(f),f[6]=f[6]&15|r,f[8]=f[8]&63|128,c){l=l||0;for(var p=0;p<16;++p)c[l+p]=f[p];return c}return Ki(f)}try{a.name=e}catch{}return a.DNS=JA,a.URL=XA,a}function ZA(e){if(typeof e=="string"){var r=unescape(encodeURIComponent(e));e=new Uint8Array(r.length);for(var t=0;t<r.length;++t)e[t]=r.charCodeAt(t)}return QA(eP(tP(e),e.length*8))}function QA(e){for(var r=[],t=e.length*32,a="0123456789abcdef",i=0;i<t;i+=8){var s=e[i>>5]>>>i%32&255,c=parseInt(a.charAt(s>>>4&15)+a.charAt(s&15),16);r.push(c)}return r}function Dg(e){return(e+64>>>9<<4)+14+1}function eP(e,r){e[r>>5]|=128<<r%32,e[Dg(r)-1]=r;for(var t=1732584193,a=-271733879,i=-1732584194,s=271733878,c=0;c<e.length;c+=16){var l=t,f=a,p=i,h=s;t=Ct(t,a,i,s,e[c],7,-680876936),s=Ct(s,t,a,i,e[c+1],12,-389564586),i=Ct(i,s,t,a,e[c+2],17,606105819),a=Ct(a,i,s,t,e[c+3],22,-1044525330),t=Ct(t,a,i,s,e[c+4],7,-176418897),s=Ct(s,t,a,i,e[c+5],12,1200080426),i=Ct(i,s,t,a,e[c+6],17,-1473231341),a=Ct(a,i,s,t,e[c+7],22,-45705983),t=Ct(t,a,i,s,e[c+8],7,1770035416),s=Ct(s,t,a,i,e[c+9],12,-1958414417),i=Ct(i,s,t,a,e[c+10],17,-42063),a=Ct(a,i,s,t,e[c+11],22,-1990404162),t=Ct(t,a,i,s,e[c+12],7,1804603682),s=Ct(s,t,a,i,e[c+13],12,-40341101),i=Ct(i,s,t,a,e[c+14],17,-1502002290),a=Ct(a,i,s,t,e[c+15],22,1236535329),t=Rt(t,a,i,s,e[c+1],5,-165796510),s=Rt(s,t,a,i,e[c+6],9,-1069501632),i=Rt(i,s,t,a,e[c+11],14,643717713),a=Rt(a,i,s,t,e[c],20,-373897302),t=Rt(t,a,i,s,e[c+5],5,-701558691),s=Rt(s,t,a,i,e[c+10],9,38016083),i=Rt(i,s,t,a,e[c+15],14,-660478335),a=Rt(a,i,s,t,e[c+4],20,-405537848),t=Rt(t,a,i,s,e[c+9],5,568446438),s=Rt(s,t,a,i,e[c+14],9,-1019803690),i=Rt(i,s,t,a,e[c+3],14,-187363961),a=Rt(a,i,s,t,e[c+8],20,1163531501),t=Rt(t,a,i,s,e[c+13],5,-1444681467),s=Rt(s,t,a,i,e[c+2],9,-51403784),i=Rt(i,s,t,a,e[c+7],14,1735328473),a=Rt(a,i,s,t,e[c+12],20,-1926607734),t=Ot(t,a,i,s,e[c+5],4,-378558),s=Ot(s,t,a,i,e[c+8],11,-2022574463),i=Ot(i,s,t,a,e[c+11],16,1839030562),a=Ot(a,i,s,t,e[c+14],23,-35309556),t=Ot(t,a,i,s,e[c+1],4,-1530992060),s=Ot(s,t,a,i,e[c+4],11,1272893353),i=Ot(i,s,t,a,e[c+7],16,-155497632),a=Ot(a,i,s,t,e[c+10],23,-1094730640),t=Ot(t,a,i,s,e[c+13],4,681279174),s=Ot(s,t,a,i,e[c],11,-358537222),i=Ot(i,s,t,a,e[c+3],16,-722521979),a=Ot(a,i,s,t,e[c+6],23,76029189),t=Ot(t,a,i,s,e[c+9],4,-640364487),s=Ot(s,t,a,i,e[c+12],11,-421815835),i=Ot(i,s,t,a,e[c+15],16,530742520),a=Ot(a,i,s,t,e[c+2],23,-995338651),t=At(t,a,i,s,e[c],6,-198630844),s=At(s,t,a,i,e[c+7],10,1126891415),i=At(i,s,t,a,e[c+14],15,-1416354905),a=At(a,i,s,t,e[c+5],21,-57434055),t=At(t,a,i,s,e[c+12],6,1700485571),s=At(s,t,a,i,e[c+3],10,-1894986606),i=At(i,s,t,a,e[c+10],15,-1051523),a=At(a,i,s,t,e[c+1],21,-2054922799),t=At(t,a,i,s,e[c+8],6,1873313359),s=At(s,t,a,i,e[c+15],10,-30611744),i=At(i,s,t,a,e[c+6],15,-1560198380),a=At(a,i,s,t,e[c+13],21,1309151649),t=At(t,a,i,s,e[c+4],6,-145523070),s=At(s,t,a,i,e[c+11],10,-1120210379),i=At(i,s,t,a,e[c+2],15,718787259),a=At(a,i,s,t,e[c+9],21,-343485551),t=hn(t,l),a=hn(a,f),i=hn(i,p),s=hn(s,h)}return[t,a,i,s]}function tP(e){if(e.length===0)return[];for(var r=e.length*8,t=new Uint32Array(Dg(r)),a=0;a<r;a+=8)t[a>>5]|=(e[a/8]&255)<<a%32;return t}function hn(e,r){var t=(e&65535)+(r&65535),a=(e>>16)+(r>>16)+(t>>16);return a<<16|t&65535}function rP(e,r){return e<<r|e>>>32-r}function Ji(e,r,t,a,i,s){return hn(rP(hn(hn(r,e),hn(a,s)),i),t)}function Ct(e,r,t,a,i,s,c){return Ji(r&t|~r&a,e,r,i,s,c)}function Rt(e,r,t,a,i,s,c){return Ji(r&a|t&~a,e,r,i,s,c)}function Ot(e,r,t,a,i,s,c){return Ji(r^t^a,e,r,i,s,c)}function At(e,r,t,a,i,s,c){return Ji(t^(r|~a),e,r,i,s,c)}var nP=Pg("v3",48,ZA);const aP=nP;function oP(e,r,t){e=e||{};var a=e.random||(e.rng||Og)();if(a[6]=a[6]&15|64,a[8]=a[8]&63|128,r){t=t||0;for(var i=0;i<16;++i)r[t+i]=a[i];return r}return Ki(a)}function iP(e,r,t,a){switch(e){case 0:return r&t^~r&a;case 1:return r^t^a;case 2:return r&t^r&a^t&a;case 3:return r^t^a}}function ju(e,r){return e<<r|e>>>32-r}function sP(e){var r=[1518500249,1859775393,2400959708,3395469782],t=[1732584193,4023233417,2562383102,271733878,3285377520];if(typeof e=="string"){var a=unescape(encodeURIComponent(e));e=[];for(var i=0;i<a.length;++i)e.push(a.charCodeAt(i))}else Array.isArray(e)||(e=Array.prototype.slice.call(e));e.push(128);for(var s=e.length/4+2,c=Math.ceil(s/16),l=new Array(c),f=0;f<c;++f){for(var p=new Uint32Array(16),h=0;h<16;++h)p[h]=e[f*64+h*4]<<24|e[f*64+h*4+1]<<16|e[f*64+h*4+2]<<8|e[f*64+h*4+3];l[f]=p}l[c-1][14]=(e.length-1)*8/Math.pow(2,32),l[c-1][14]=Math.floor(l[c-1][14]),l[c-1][15]=(e.length-1)*8&4294967295;for(var m=0;m<c;++m){for(var _=new Uint32Array(80),S=0;S<16;++S)_[S]=l[m][S];for(var T=16;T<80;++T)_[T]=ju(_[T-3]^_[T-8]^_[T-14]^_[T-16],1);for(var C=t[0],F=t[1],D=t[2],W=t[3],$=t[4],j=0;j<80;++j){var A=Math.floor(j/20),K=ju(C,5)+iP(A,F,D,W)+$+r[A]+_[j]>>>0;$=W,W=D,D=ju(F,30)>>>0,F=C,C=K}t[0]=t[0]+C>>>0,t[1]=t[1]+F>>>0,t[2]=t[2]+D>>>0,t[3]=t[3]+W>>>0,t[4]=t[4]+$>>>0}return[t[0]>>24&255,t[0]>>16&255,t[0]>>8&255,t[0]&255,t[1]>>24&255,t[1]>>16&255,t[1]>>8&255,t[1]&255,t[2]>>24&255,t[2]>>16&255,t[2]>>8&255,t[2]&255,t[3]>>24&255,t[3]>>16&255,t[3]>>8&255,t[3]&255,t[4]>>24&255,t[4]>>16&255,t[4]>>8&255,t[4]&255]}var uP=Pg("v5",80,sP);const cP=uP,lP="00000000-0000-0000-0000-000000000000";function fP(e){if(!Vi(e))throw TypeError("Invalid UUID");return parseInt(e.substr(14,1),16)}const dP=Object.freeze(Object.defineProperty({__proto__:null,NIL:lP,parse:Ag,stringify:Ki,v1:VA,v3:aP,v4:oP,v5:cP,validate:Vi,version:fP},Symbol.toStringTag,{value:"Module"})),pP=uw(dP);function Gc(e,r){if(!e||!r||!e.length||!r.length)throw new Error("Bad alphabet");this.srcAlphabet=e,this.dstAlphabet=r}Gc.prototype.convert=function(e){var r,t,a,i={},s=this.srcAlphabet.length,c=this.dstAlphabet.length,l=e.length,f=typeof e=="string"?"":[];if(!this.isValid(e))throw new Error('Number "'+e+'" contains of non-alphabetic digits ('+this.srcAlphabet+")");if(this.srcAlphabet===this.dstAlphabet)return e;for(r=0;r<l;r++)i[r]=this.srcAlphabet.indexOf(e[r]);do{for(t=0,a=0,r=0;r<l;r++)t=t*s+i[r],t>=c?(i[a++]=parseInt(t/c,10),t=t%c):a>0&&(i[a++]=0);l=a,f=this.dstAlphabet.slice(t,t+1).concat(f)}while(a!==0);return f};Gc.prototype.isValid=function(e){for(var r=0;r<e.length;++r)if(this.srcAlphabet.indexOf(e[r])===-1)return!1;return!0};var hP=Gc,gP=hP;function fo(e,r){var t=new gP(e,r);return function(a){return t.convert(a)}}fo.BIN="01";fo.OCT="01234567";fo.DEC="0123456789";fo.HEX="0123456789abcdef";var vP=fo;const{v4:ku}=pP,oi=vP,Bu="123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ",yP="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!#$%&'()*+-./:<=>?@[]^_`{|}~",mP={consistentLength:!0};let Wu;const Wp=(e,r,t)=>{const a=r(e.toLowerCase().replace(/-/g,""));return!t||!t.consistentLength?a:a.padStart(t.shortIdLength,t.paddingChar)},bP=(e,r)=>{const a=r(e).padStart(32,"0").match(/(\w{8})(\w{4})(\w{4})(\w{4})(\w{12})/);return[a[1],a[2],a[3],a[4],a[5]].join("-")},_P=e=>Math.ceil(Math.log(2**128)/Math.log(e));var Oi=(()=>{const e=(r,t)=>{const a=r||Bu,i={...mP,...t};if([...new Set(Array.from(a))].length!==a.length)throw new Error("The provided Alphabet has duplicate characters resulting in unreliable results");const s=_P(a.length),c={shortIdLength:s,consistentLength:i.consistentLength,paddingChar:a[0]},l=oi(oi.HEX,a),f=oi(a,oi.HEX),p=()=>Wp(ku(),l,c),h={new:p,generate:p,uuid:ku,fromUUID:m=>Wp(m,l,c),toUUID:m=>bP(m,f),alphabet:a,maxLength:s};return Object.freeze(h),h};return e.constants={flickrBase58:Bu,cookieBase90:yP},e.uuid=ku,e.generate=()=>(Wu||(Wu=e(Bu).generate),Wu()),e})(),Me=(e=>(e.DATACLASS="dataclass",e.METHOD="method",e.ATTRIBUTE="attribute",e.DATASTORE="datastore",e))(Me||{});const EP=[Me.DATASTORE,Me.DATACLASS,Me.ATTRIBUTE,Me.METHOD],Ai="guest",qc=[{key:"read",label:"Read",canApplyTo:[Me.DATASTORE,Me.DATACLASS,Me.ATTRIBUTE]},{key:"create",label:"Create",canApplyTo:[Me.DATASTORE,Me.DATACLASS,Me.ATTRIBUTE]},{key:"update",label:"Update",canApplyTo:[Me.DATASTORE,Me.DATACLASS,Me.ATTRIBUTE]},{key:"drop",label:"Delete",canApplyTo:[Me.DATASTORE,Me.DATACLASS,Me.ATTRIBUTE]},{key:"describe",label:"Describe",canApplyTo:[Me.DATASTORE,Me.DATACLASS,Me.ATTRIBUTE,Me.METHOD]},{key:"execute",label:"Execute",canApplyTo:[Me.DATASTORE,Me.DATACLASS,Me.METHOD]},{key:"promote",label:"Promote",canApplyTo:[Me.METHOD]}];function lr(e,...r){return Array.from(new Set([...e,...r]))}function Ig(e){const r={},t=new Map;e.forEach(f=>{const p=f.id||Oi.generate();r[p]={...f,id:p,parents:[],includes:lr(f.includes||[]),resources:[]},t.set(f.privilege,p)}),Object.entries(r).forEach(([f,p])=>{const h=p.includes.map(m=>{const _=t.get(m);return _?(r[_].parents=lr(r[_].parents,_),_):""}).filter(Boolean);r[f]={...p,includes:h}});const a=Fg(r),i=new Set;function s(f){i.add(f.id),f.includes=f.includes.filter(p=>!i.has(p))}if(a.forEach(s),a.forEach(f=>f.parents=[]),a.forEach(f=>{f.includes.forEach(p=>r[p].parents.push(f.id))}),Object.values(r).find(({privilege:f})=>f===Ai))return r;const l=Oi.generate();return{[l]:{id:l,privilege:Ai,includes:[],parents:[],resources:[]},...r}}function Fg(e){return Object.values(e).sort((r,t)=>r.parents.length-t.parents.length)}function Xi(e,r){const t=r[e];let a=[];return t&&t.parents.forEach(i=>{a=lr(a,...Xi(i,r),i)}),a}function Pi(e,r){const t=r[e];let a=[];return t&&t.includes.forEach(i=>{a=lr(a,...Pi(i,r),i)}),a}function SP(e,r){const t=r[e];if(!t)return[];const a=[e,...Xi(e,r),...t.includes];return Object.keys(r).filter(i=>!a.includes(i))}function wP(e,r){return r[e]?Object.keys(r).reduce((a,i)=>i===e?a:{...a,[i]:{...r[i],parents:r[i].parents.filter(s=>s!==e),includes:r[i].includes.filter(s=>s!==e)}},{}):r}function TP(e,r,t){const a=t[e],i=t[r];return!a||!i?t:{...t,[e]:{...t[e],includes:lr(a.includes,r)},[r]:{...t[r],parents:lr(i.parents,e)}}}function xP(e,r,t){const a=t[e],i=t[r];return!a||!i?t:{...t,[e]:{...t[e],includes:t[e].includes.filter(s=>s!==r)},[r]:{...t[r],parents:t[r].parents.filter(s=>s!==e)}}}function $g(e,r){E.validateName(e),Object.entries(r).forEach(([,{privilege:a}])=>{if(e.toLowerCase()===a.toLowerCase())throw new Error(`There's already a Privilege with the name ${e}`)});const t=Oi.generate();return{[t]:{id:t,privilege:e,includes:[],parents:[],resources:[]},...r}}function CP(e,r,t,a,i){let s=$g(e,i);const c=Object.entries(s).find(([,l])=>l.privilege===e);return c?(s=jg(c[1].id,r,t,a,s),s):i}function RP(e,r,t){if(!e)throw new Error("Please enter a name");if(!t[r])throw new Error("Invalid privilege");return Object.entries(t).forEach(([,{privilege:a,id:i}])=>{if(e.toLowerCase()===a.toLowerCase()&&r!==i)throw new Error(`There's already a Privilege with the name ${e}`)}),{...t,[r]:{...t[r],privilege:e}}}function OP(e,r){return e.map(t=>tn(t,r))}function tn(e,r){return r[e]?r[e]:null}function Mg({applyTo:e,type:r,...t}){return Object.entries(t).reduce((a,[i,s])=>{const c=Ke.find(qc,["key",i]);return!c||!c.canApplyTo.includes(r)||(typeof s=="string"?s.split(","):s).forEach(f=>{a[f]=lr(a[f]||[],i)}),a},{})}const lc=(e,r=!1)=>["read","create","update","delete"].includes(e.toLowerCase())?`All ${r?"dataclasses and ":""}attributes have the '${e.toLowerCase()}' permission`:e.toLowerCase()==="execute"?`All functions defined ${r?"through the model (DataStore, Dataclasses, Entity selections, Entities) have the execute permission":"on this Dataclass, Entity selection class, Entity class have the execute permission"}`:`All ${r?"dataclasses, ":""}attributes and functions have the '${e.toLowerCase()}' permission`;function Yc(e){return{permissions:qc.filter(({canApplyTo:r})=>r.includes(e.type)).map(({key:r,label:t})=>{const a={name:r,from:[]};switch(e.type){case Me.DATASTORE:return{...a,info:lc(t,!0)};case Me.DATACLASS:return{...a,info:lc(t)};default:return a}}),resource:e.applyTo,type:e.type}}function Ng(e,r){const t=Lg(r),a={};return e.filter(({type:i})=>EP.includes(i)).forEach(i=>{const s=Mg(i);Object.entries(s).forEach(([c,l])=>{var h;const f=(h=t[c])==null?void 0:h.id;if(!f)return;a[f]=a[f]||{...r[f]};let p=Ke.find(a[f].resources,{resource:i.applyTo,type:i.type});p||(p=Yc(i),a[f].resources.push(p)),p.permissions=p.permissions.map(m=>({...m,checked:m.checked||l.includes(m.name)}))})}),{...r,...a}}function Lg(e){return Object.values(e).reduce((r,t)=>({...r,[t.privilege]:t}),{})}function Zi(e){var t;const r=Ig(e.privileges||[]);return{forceLogin:e==null?void 0:e.forceLogin,privileges:Ng(((t=e.permissions)==null?void 0:t.allowed)||[],r),roles:(e.roles||[]).map(({id:a=Oi.generate(),role:i,privileges:s=[]})=>({id:a,role:i,privileges:lr(s).map(c=>{var l;return(l=Object.values(r).find(({privilege:f})=>f===c))==null?void 0:l.id}).filter(Boolean)})).reduce((a,i)=>({...a,[i.id]:{...i}}),{})}}function Qi(e){const r=Object.values(e.privileges).filter(({includes:a})=>a.length===0).map(({id:a})=>a),t=[...r,...r.map(a=>Xi(a,e.privileges).reverse())].flat().filter((a,i,s)=>s.indexOf(a)===i).map(a=>e.privileges[a]);return{forceLogin:e.forceLogin,permissions:{allowed:Object.values(e.privileges).reduce((a,i)=>(i.resources.forEach(({permissions:s,resource:c,type:l})=>{let f=Ke.find(a,{applyTo:c,type:l});f||(f={applyTo:c,type:l},a.push(f)),s.forEach(({name:p,checked:h})=>{h&&f&&(f[p]=f[p]||[],f[p].push(i.privilege))})}),a),[])},privileges:t.filter(({privilege:a})=>a!==Ai).map(({id:a,includes:i,privilege:s})=>({id:a,privilege:s,includes:i.map(c=>e.privileges[c].privilege)})),roles:Object.values(e.roles).map(a=>({...a,privileges:a.privileges.map(i=>{var s;return(s=e.privileges[i])==null?void 0:s.privilege}).filter(Boolean)}))}}function AP(e,r){const t=r[e],a={children:[],links:[],parents:[],selected:e};if(!t)return a;function i(l,f,p=[]){const h=l.reduce((m,_)=>[...m,...r[_][f]],[]);return h.length===0?p:(p.push(h),i(h,f,p))}function s(l){const f=[],p=[];for(let h=l.length-1;h>=0;h-=1){const m=l[h].filter(_=>f.includes(_)?!1:(f.push(_),!0));m.length>0&&p.unshift(lr(m))}return p}function c(l,f){const p=[];return l.reduce((h,m)=>(m.forEach(_=>{r[_][f==="parents"?"includes":"parents"].forEach(T=>{p.includes(T)&&h.push(f==="parents"?{source:_,target:T}:{source:T,target:_})}),p.push(_)}),h),[])}return a.children=i([e],"includes"),a.children=s(a.children),a.parents=i([e],"parents"),a.parents=s(a.parents),a.links=[...c([[e],...a.parents],"parents"),...c([[e],...a.children],"includes")],a}function PP(e,r,t){const a=tn(e,t);if(!a||Ke.find(a.resources,{resource:r.applyTo,type:r.type}))return t;const i={...a,resources:[...a.resources,Yc(r)]};return{...t,[e]:i}}function DP(e,r,t){const a=tn(e,t);if(!a)return t;const i={...a,resources:a.resources.filter(({resource:s,type:c})=>s!==r.applyTo||c!==r.type)};return{...t,[e]:i}}function IP(e,r){const t=tn(e,r);if(!t)return r;const a={...t,resources:t.resources.filter(i=>i.permissions.some(s=>s.from.length)).map(i=>({...i,permissions:i.permissions.map(s=>({...s,checked:!1}))}))};return{...r,[e]:a}}function jg(e,r,t,a,i){const s=tn(e,i);if(!s)return i;const l=Ke.find(s.resources,{type:t,resource:r})?{...s,resources:s.resources.map(f=>f.type===t&&f.resource===r?{...f,permissions:f.permissions.map(p=>p.name===a?{...p,checked:!p.checked,from:[]}:p)}:f)}:{...s,resources:[...s.resources,{type:t,resource:r,permissions:qc.filter(f=>f.canApplyTo.includes(t)).map(f=>({from:[],name:f.key,checked:f.key===a,info:lc(f.key,t===Me.DATASTORE)}))}]};return{...i,[e]:l}}function FP(e,r,t,a){const i=tn(e,a);if(!i)return a;const c=Ke.find(i.resources,{type:r.type,resource:r.resource})?{...i,resources:i.resources.map(l=>l.type===r.type&&l.resource===r.resource?{...l,permissions:r.permissions.map(f=>f.name===t.name?{...f,checked:!f.checked,from:[]}:f)}:l)}:{...i,resources:[...i.resources,{...r,permissions:r.permissions.map(l=>({...l,checked:t.name===l.name,from:[]}))}]};return{...a,[e]:c}}function $P(e,r){var f;const t=kg(e,r)||[],a=((f=tn(e,r))==null?void 0:f.resources)||[],c=([...t,...a].filter(({type:p})=>p===Me.METHOD)||[]).map(({resource:p})=>p);return Object.entries(r).reduce((p,[h,{resources:m}])=>(m.filter(({resource:_,type:S})=>S===Me.METHOD&&c.includes(_)).forEach(({permissions:_,resource:S})=>{var C;((C=_.find(({name:F})=>F==="promote"))==null?void 0:C.checked)&&(p[S]=lr(p[S]||[],h))}),p),{})}function kg(e,r){var c;const t=tn(e,r);if(!t)return[];const a=(c=Object.values(r).find(l=>l.privilege===Ai))==null?void 0:c.id;return(a&&a!==e?lr(Pi(e,r),a):Pi(e,r)).reduce((l,f)=>(r[f].resources.forEach(h=>{if(h.permissions.filter(({checked:S})=>S).length===0)return;const _=Ke.find(l,{type:h.type,resource:h.resource});if(!_){l.push({...h,permissions:h.permissions.map(S=>({...S,from:S.checked?[f]:[],checked:!1}))});return}_.permissions=_.permissions.map((S,T)=>{let{from:C=[]}=S;return h.permissions[T].checked&&!C.includes(f)&&(C=[...C,f]),{...S,from:C,checked:S.checked}})}),l),Ke.clone(t.resources.map(l=>({...l,permissions:l.permissions.map(({checked:f,...p})=>({...p,checked:!!f}))}))))}const MP=e=>e.reduce((r,t)=>({...r,[t.id]:{...t}}),{}),NP=(e,r)=>r[e]?Object.values(r).reduce((t,a)=>e===a.id||a.role===""?t:{...t,[a.id]:a},{}):r,LP=(e,r,t)=>t[e]?Object.values(t).reduce((a,i)=>e===i.id?{...a,[i.id]:{...i,name:r}}:{...a,[i.id]:i},{}):t,jP=(e,r)=>{const t={id:e,role:"",privileges:[]};return{...r,[t.id]:t}},kP=(e,r)=>{if(E.validateName(e.role),Object.values(r).find(a=>a.role===e.role))throw new Error(`a role with the name ${e.role} already exists`);return Object.values(r).reduce((a,i)=>e.id===i.id?{...a,[e.id]:e}:{...a,[i.id]:i},{})},BP={list:[]},Up=(e,r)=>e.list.filter(t=>t.id!==r),Bg=fr({name:"modals",initialState:BP,reducers:{createModal:(e,r)=>{e.list.push(r.payload)},editModal:(e,r)=>{const{id:t,...a}=r.payload,i=e.list.find(E.byId(t));i&&Object.assign(i,{...a})},removeModal:(e,r)=>{const t=r.payload;e.list=Up(e,t)},closeModal:(e,r)=>{const{id:t,reason:a}=r.payload;if(a){const i=e.list.find(s=>s.id===t);i&&(i.closeReason=a,i.isOpen=!1)}else e.list=Up(e,t)}}}),{createModal:Wg,removeModal:Ug,closeModal:WP,editModal:UP}=Bg.actions;var fc={exports:{}},sa={};/*
91
91
  object-assign
92
92
  (c) Sindre Sorhus
93
93
  @license MIT
@@ -98,14 +98,14 @@ object-assign
98
98
  *
99
99
  * This source code is licensed under the MIT license found in the
100
100
  * LICENSE file in the root directory of this source tree.
101
- */var Gp;function UP(){if(Gp)return sa;Gp=1,Hg();var e=dt,r=60103;if(sa.Fragment=60107,typeof Symbol=="function"&&Symbol.for){var t=Symbol.for;r=t("react.element"),sa.Fragment=t("react.fragment")}var a=e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,i=Object.prototype.hasOwnProperty,s={key:!0,ref:!0,__self:!0,__source:!0};function c(l,f,p){var h,m={},_=null,S=null;p!==void 0&&(_=""+p),f.key!==void 0&&(_=""+f.key),f.ref!==void 0&&(S=f.ref);for(h in f)i.call(f,h)&&!s.hasOwnProperty(h)&&(m[h]=f[h]);if(l&&l.defaultProps)for(h in f=l.defaultProps,f)m[h]===void 0&&(m[h]=f[h]);return{$$typeof:r,type:l,key:_,ref:S,props:m,_owner:a.current}}return sa.jsx=c,sa.jsxs=c,sa}var qp={};/** @license React v17.0.2
101
+ */var Gp;function HP(){if(Gp)return sa;Gp=1,Hg();var e=dt,r=60103;if(sa.Fragment=60107,typeof Symbol=="function"&&Symbol.for){var t=Symbol.for;r=t("react.element"),sa.Fragment=t("react.fragment")}var a=e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,i=Object.prototype.hasOwnProperty,s={key:!0,ref:!0,__self:!0,__source:!0};function c(l,f,p){var h,m={},_=null,S=null;p!==void 0&&(_=""+p),f.key!==void 0&&(_=""+f.key),f.ref!==void 0&&(S=f.ref);for(h in f)i.call(f,h)&&!s.hasOwnProperty(h)&&(m[h]=f[h]);if(l&&l.defaultProps)for(h in f=l.defaultProps,f)m[h]===void 0&&(m[h]=f[h]);return{$$typeof:r,type:l,key:_,ref:S,props:m,_owner:a.current}}return sa.jsx=c,sa.jsxs=c,sa}var qp={};/** @license React v17.0.2
102
102
  * react-jsx-runtime.development.js
103
103
  *
104
104
  * Copyright (c) Facebook, Inc. and its affiliates.
105
105
  *
106
106
  * This source code is licensed under the MIT license found in the
107
107
  * LICENSE file in the root directory of this source tree.
108
- */var Yp;function HP(){return Yp||(Yp=1,function(e){process.env.NODE_ENV!=="production"&&function(){var r=dt,t=Hg(),a=60103,i=60106;e.Fragment=60107;var s=60108,c=60114,l=60109,f=60110,p=60112,h=60113,m=60120,_=60115,S=60116,T=60121,C=60122,F=60117,D=60129,W=60131;if(typeof Symbol=="function"&&Symbol.for){var $=Symbol.for;a=$("react.element"),i=$("react.portal"),e.Fragment=$("react.fragment"),s=$("react.strict_mode"),c=$("react.profiler"),l=$("react.provider"),f=$("react.context"),p=$("react.forward_ref"),h=$("react.suspense"),m=$("react.suspense_list"),_=$("react.memo"),S=$("react.lazy"),T=$("react.block"),C=$("react.server.block"),F=$("react.fundamental"),$("react.scope"),$("react.opaque.id"),D=$("react.debug_trace_mode"),$("react.offscreen"),W=$("react.legacy_hidden")}var j=typeof Symbol=="function"&&Symbol.iterator,A="@@iterator";function K(g){if(g===null||typeof g!="object")return null;var R=j&&g[j]||g[A];return typeof R=="function"?R:null}var G=r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function Y(g){{for(var R=arguments.length,I=new Array(R>1?R-1:0),q=1;q<R;q++)I[q-1]=arguments[q];se("error",g,I)}}function se(g,R,I){{var q=G.ReactDebugCurrentFrame,ae=q.getStackAddendum();ae!==""&&(R+="%s",I=I.concat([ae]));var oe=I.map(function(ee){return""+ee});oe.unshift("Warning: "+R),Function.prototype.apply.call(console[g],console,oe)}}var We=!1;function Oe(g){return!!(typeof g=="string"||typeof g=="function"||g===e.Fragment||g===c||g===D||g===s||g===h||g===m||g===W||We||typeof g=="object"&&g!==null&&(g.$$typeof===S||g.$$typeof===_||g.$$typeof===l||g.$$typeof===f||g.$$typeof===p||g.$$typeof===F||g.$$typeof===T||g[0]===C))}function it(g,R,I){var q=R.displayName||R.name||"";return g.displayName||(q!==""?I+"("+q+")":I)}function Z(g){return g.displayName||"Context"}function we(g){if(g==null)return null;if(typeof g.tag=="number"&&Y("Received an unexpected object in getComponentName(). This is likely a bug in React. Please file an issue."),typeof g=="function")return g.displayName||g.name||null;if(typeof g=="string")return g;switch(g){case e.Fragment:return"Fragment";case i:return"Portal";case c:return"Profiler";case s:return"StrictMode";case h:return"Suspense";case m:return"SuspenseList"}if(typeof g=="object")switch(g.$$typeof){case f:var R=g;return Z(R)+".Consumer";case l:var I=g;return Z(I._context)+".Provider";case p:return it(g,g.render,"ForwardRef");case _:return we(g.type);case T:return we(g._render);case S:{var q=g,ae=q._payload,oe=q._init;try{return we(oe(ae))}catch{return null}}}return null}var Xe=0,Ze,Ue,et,Dt,H,V,ve;function he(){}he.__reactDisabledLog=!0;function le(){{if(Xe===0){Ze=console.log,Ue=console.info,et=console.warn,Dt=console.error,H=console.group,V=console.groupCollapsed,ve=console.groupEnd;var g={configurable:!0,enumerable:!0,value:he,writable:!0};Object.defineProperties(console,{info:g,log:g,warn:g,error:g,group:g,groupCollapsed:g,groupEnd:g})}Xe++}}function ye(){{if(Xe--,Xe===0){var g={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:t({},g,{value:Ze}),info:t({},g,{value:Ue}),warn:t({},g,{value:et}),error:t({},g,{value:Dt}),group:t({},g,{value:H}),groupCollapsed:t({},g,{value:V}),groupEnd:t({},g,{value:ve})})}Xe<0&&Y("disabledDepth fell below zero. This is a bug in React. Please file an issue.")}}var ie=G.ReactCurrentDispatcher,fe;function ue(g,R,I){{if(fe===void 0)try{throw Error()}catch(ae){var q=ae.stack.trim().match(/\n( *(at )?)/);fe=q&&q[1]||""}return`
108
+ */var Yp;function GP(){return Yp||(Yp=1,function(e){process.env.NODE_ENV!=="production"&&function(){var r=dt,t=Hg(),a=60103,i=60106;e.Fragment=60107;var s=60108,c=60114,l=60109,f=60110,p=60112,h=60113,m=60120,_=60115,S=60116,T=60121,C=60122,F=60117,D=60129,W=60131;if(typeof Symbol=="function"&&Symbol.for){var $=Symbol.for;a=$("react.element"),i=$("react.portal"),e.Fragment=$("react.fragment"),s=$("react.strict_mode"),c=$("react.profiler"),l=$("react.provider"),f=$("react.context"),p=$("react.forward_ref"),h=$("react.suspense"),m=$("react.suspense_list"),_=$("react.memo"),S=$("react.lazy"),T=$("react.block"),C=$("react.server.block"),F=$("react.fundamental"),$("react.scope"),$("react.opaque.id"),D=$("react.debug_trace_mode"),$("react.offscreen"),W=$("react.legacy_hidden")}var j=typeof Symbol=="function"&&Symbol.iterator,A="@@iterator";function K(g){if(g===null||typeof g!="object")return null;var R=j&&g[j]||g[A];return typeof R=="function"?R:null}var G=r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function Y(g){{for(var R=arguments.length,I=new Array(R>1?R-1:0),q=1;q<R;q++)I[q-1]=arguments[q];se("error",g,I)}}function se(g,R,I){{var q=G.ReactDebugCurrentFrame,ae=q.getStackAddendum();ae!==""&&(R+="%s",I=I.concat([ae]));var oe=I.map(function(ee){return""+ee});oe.unshift("Warning: "+R),Function.prototype.apply.call(console[g],console,oe)}}var We=!1;function Oe(g){return!!(typeof g=="string"||typeof g=="function"||g===e.Fragment||g===c||g===D||g===s||g===h||g===m||g===W||We||typeof g=="object"&&g!==null&&(g.$$typeof===S||g.$$typeof===_||g.$$typeof===l||g.$$typeof===f||g.$$typeof===p||g.$$typeof===F||g.$$typeof===T||g[0]===C))}function it(g,R,I){var q=R.displayName||R.name||"";return g.displayName||(q!==""?I+"("+q+")":I)}function Z(g){return g.displayName||"Context"}function we(g){if(g==null)return null;if(typeof g.tag=="number"&&Y("Received an unexpected object in getComponentName(). This is likely a bug in React. Please file an issue."),typeof g=="function")return g.displayName||g.name||null;if(typeof g=="string")return g;switch(g){case e.Fragment:return"Fragment";case i:return"Portal";case c:return"Profiler";case s:return"StrictMode";case h:return"Suspense";case m:return"SuspenseList"}if(typeof g=="object")switch(g.$$typeof){case f:var R=g;return Z(R)+".Consumer";case l:var I=g;return Z(I._context)+".Provider";case p:return it(g,g.render,"ForwardRef");case _:return we(g.type);case T:return we(g._render);case S:{var q=g,ae=q._payload,oe=q._init;try{return we(oe(ae))}catch{return null}}}return null}var Xe=0,Ze,Ue,et,Dt,H,V,ve;function he(){}he.__reactDisabledLog=!0;function le(){{if(Xe===0){Ze=console.log,Ue=console.info,et=console.warn,Dt=console.error,H=console.group,V=console.groupCollapsed,ve=console.groupEnd;var g={configurable:!0,enumerable:!0,value:he,writable:!0};Object.defineProperties(console,{info:g,log:g,warn:g,error:g,group:g,groupCollapsed:g,groupEnd:g})}Xe++}}function ye(){{if(Xe--,Xe===0){var g={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:t({},g,{value:Ze}),info:t({},g,{value:Ue}),warn:t({},g,{value:et}),error:t({},g,{value:Dt}),group:t({},g,{value:H}),groupCollapsed:t({},g,{value:V}),groupEnd:t({},g,{value:ve})})}Xe<0&&Y("disabledDepth fell below zero. This is a bug in React. Please file an issue.")}}var ie=G.ReactCurrentDispatcher,fe;function ue(g,R,I){{if(fe===void 0)try{throw Error()}catch(ae){var q=ae.stack.trim().match(/\n( *(at )?)/);fe=q&&q[1]||""}return`
109
109
  `+fe+g}}var me=!1,ge;{var J=typeof WeakMap=="function"?WeakMap:Map;ge=new J}function N(g,R){if(!g||me)return"";{var I=ge.get(g);if(I!==void 0)return I}var q;me=!0;var ae=Error.prepareStackTrace;Error.prepareStackTrace=void 0;var oe;oe=ie.current,ie.current=null,le();try{if(R){var ee=function(){throw Error()};if(Object.defineProperty(ee.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(ee,[])}catch(ut){q=ut}Reflect.construct(g,[],ee)}else{try{ee.call()}catch(ut){q=ut}g.call(ee.prototype)}}else{try{throw Error()}catch(ut){q=ut}g()}}catch(ut){if(ut&&q&&typeof ut.stack=="string"){for(var Q=ut.stack.split(`
110
110
  `),Ie=q.stack.split(`
111
111
  `),be=Q.length-1,Ee=Ie.length-1;be>=1&&Ee>=0&&Q[be]!==Ie[Ee];)Ee--;for(;be>=1&&Ee>=0;be--,Ee--)if(Q[be]!==Ie[Ee]){if(be!==1||Ee!==1)do if(be--,Ee--,Ee<0||Q[be]!==Ie[Ee]){var at=`
@@ -115,8 +115,8 @@ Check the render method of \``+g+"`."}return""}}function Ta(g){{if(g!==void 0){v
115
115
 
116
116
  Check your code at `+R+":"+I+"."}return""}}var xn={};function Hn(g){{var R=Tn();if(!R){var I=typeof g=="string"?g:g.displayName||g.name;I&&(R=`
117
117
 
118
- Check the top-level render call using <`+I+">.")}return R}}function rn(g,R){{if(!g._store||g._store.validated||g.key!=null)return;g._store.validated=!0;var I=Hn(R);if(xn[I])return;xn[I]=!0;var q="";g&&g._owner&&g._owner!==pr.current&&(q=" It was passed a child from "+we(g._owner.type)+"."),_t(g),Y('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',I,q),_t(null)}}function Cn(g,R){{if(typeof g!="object")return;if(Array.isArray(g))for(var I=0;I<g.length;I++){var q=g[I];gr(q)&&rn(q,R)}else if(gr(g))g._store&&(g._store.validated=!0);else if(g){var ae=K(g);if(typeof ae=="function"&&ae!==g.entries)for(var oe=ae.call(g),ee;!(ee=oe.next()).done;)gr(ee.value)&&rn(ee.value,R)}}}function xa(g){{var R=g.type;if(R==null||typeof R=="string")return;var I;if(typeof R=="function")I=R.propTypes;else if(typeof R=="object"&&(R.$$typeof===p||R.$$typeof===_))I=R.propTypes;else return;if(I){var q=we(R);Sa(I,g.props,"prop",q,g)}else if(R.PropTypes!==void 0&&!hr){hr=!0;var ae=we(R);Y("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?",ae||"Unknown")}typeof R.getDefaultProps=="function"&&!R.getDefaultProps.isReactClassApproved&&Y("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.")}}function Ca(g){{for(var R=Object.keys(g.props),I=0;I<R.length;I++){var q=R[I];if(q!=="children"&&q!=="key"){_t(g),Y("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.",q),_t(null);break}}g.ref!==null&&(_t(g),Y("Invalid attribute `ref` supplied to `React.Fragment`."),_t(null))}}function Rn(g,R,I,q,ae,oe){{var ee=Oe(g);if(!ee){var Q="";(g===void 0||typeof g=="object"&&g!==null&&Object.keys(g).length===0)&&(Q+=" You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.");var Ie=Ta(ae);Ie?Q+=Ie:Q+=Tn();var be;g===null?be="null":Array.isArray(g)?be="array":g!==void 0&&g.$$typeof===a?(be="<"+(we(g.type)||"Unknown")+" />",Q=" Did you accidentally export a JSX literal instead of a component?"):be=typeof g,Y("React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",be,Q)}var Ee=wn(g,R,I,ae,oe);if(Ee==null)return Ee;if(ee){var at=R.children;if(at!==void 0)if(q)if(Array.isArray(at)){for(var Ft=0;Ft<at.length;Ft++)Cn(at[Ft],g);Object.freeze&&Object.freeze(at)}else Y("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else Cn(at,g)}return g===e.Fragment?Ca(Ee):xa(Ee),Ee}}function Gn(g,R,I){return Rn(g,R,I,!0)}function Ra(g,R,I){return Rn(g,R,I,!1)}var Oa=Ra,Aa=Gn;e.jsx=Oa,e.jsxs=Aa}()}(qp)),qp}process.env.NODE_ENV==="production"?fc.exports=UP():fc.exports=HP();var Kr=fc.exports;const GP=e=>Kr.jsx("svg",{width:"1em",height:"1em",viewBox:"0 0 24 24",...e,children:Kr.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M11 21c5.523 0 10-4.477 10-10S16.523 1 11 1 1 5.477 1 11s4.477 10 10 10Zm0-14a1 1 0 1 0 0-2 1 1 0 0 0 0 2Zm1 1.5a.5.5 0 0 0-.5-.5h-2a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h.5v4h-.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5H12V8.5Z",fill:"currentColor"})}),qP=e=>Kr.jsxs("svg",{width:"1em",height:"1em",viewBox:"0 0 24 24",...e,children:[Kr.jsx("path",{d:"M13 17.5a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-8a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v8ZM12 6a1 1 0 1 0 0 2 1 1 0 0 0 0-2Z",fill:"currentColor"}),Kr.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M12 2C6.477 2 2 6.477 2 12s4.477 10 10 10 10-4.477 10-10S17.523 2 12 2Zm0 2a8 8 0 1 0 0 16 8 8 0 0 0 0-16Z",fill:"currentColor"})]}),YP=e=>Kr.jsx("svg",{width:"1em",height:"1em",viewBox:"0 0 24 24",...e,children:Kr.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M16.076 2.203a.5.5 0 0 0-.354-.146H3.001a1 1 0 0 0-1 1v18a1 1 0 0 0 1 1h18a1 1 0 0 0 1-1V8.335a.5.5 0 0 0-.147-.354l-5.778-5.778ZM12 19.057a3 3 0 1 0 0-6 3 3 0 0 0 0 6Zm-8-14.5a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-.5.5h-10a.5.5 0 0 1-.5-.5v-4Z",fill:"currentColor"})}),zP=e=>Kr.jsx("svg",{width:"1em",height:"1em",viewBox:"0 0 24 24",...e,children:Kr.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M12.953 3.53c-.393-.707-1.513-.707-1.906 0L2.114 19.612c-.354.638.16 1.388.953 1.388h17.866c.792 0 1.307-.75.953-1.388L12.953 3.53ZM11.508 8a.504.504 0 0 0-.507.531l.491 8A.505.505 0 0 0 12 17c.269 0 .49-.205.508-.469l.492-8A.504.504 0 0 0 12.492 8h-.984ZM12 20c.561 0 1.016-.448 1.016-1s-.455-1-1.016-1c-.561 0-1.016.448-1.016 1s.455 1 1.016 1Z",fill:"currentColor"})}),VP={FdSave:YP,FdWarningDanger:zP,FdInfoCircle:qP,FdInfoBold:GP};var qt=(e=>(e.ALERT="alert",e.CONFIRM="confirm",e))(qt||{}),Ir=(e=>(e.PRIMARY="primary",e.WARNING="warning",e.DANGER="danger",e))(Ir||{}),zc=(e=>(e.CONFIRMED="confirmed",e.CANCELED="canceled",e))(zc||{});const dr=re("modals/open",async(e,{dispatch:r})=>{const{type:t=qt.ALERT,store:a=qv()}=e,i=Cc();switch(r(Wg({id:i,type:t,isOpen:!0,...e})),t){case qt.CONFIRM:return new Promise(s=>{const c=a.subscribe(()=>{var p;const{modals:l}=a.getState(),f=l.list.find(h=>h.id===i);if(f&&!f.isOpen){const h=f.closeReason===zc.CONFIRMED,m=Ke.entries((p=f.views)==null?void 0:p.toggles).reduce((_,S)=>({..._,[S[0]]:S[1].value}),{});r(Ug(i)),c(),s({confirmed:h,options:m})}})});default:return{}}}),Gg=()=>E.getFileContent({name:E.ROLES_TAB_PATH}),qg="Roles & Privileges",Di=re("roles/fetchRoles",async(e,{dispatch:r,rejectWithValue:t})=>{var s;let a;try{a=await Gg()}catch(c){if(!Array.isArray((s=c==null?void 0:c.data)==null?void 0:s.__ERROR))return t("Error while loading the roles");a={name:E.ROLES_TAB_PATH,date:new Date().toISOString(),content:{permissions:{allowed:[]},privileges:[],roles:[]}}}const i={name:qg,type:E.FileFolderType.ROLES,date:a.date,view:{panel:{isOpen:!1,type:"",current:""}},path:E.ROLES_TAB_PATH,flags:{},extra:{editor:{key:"editors:roles"}},content:{}};return r(jt(i)),{...a,content:Zi(a.content)}}),Yg=re("roles/fetchRolesChanges",async(e,{getState:r})=>{const{tabs:t}=r().root;if(t.find(i=>i.path===E.ROLES_TAB_PATH)){const{date:i}=r().roles;if(i&&await Vc(i))return{old:!0}}return{}}),Vc=async e=>{if(!e)return!1;try{const r=await Gg();if(r.date){const t=new Date(e),a=new Date(r.date);if(t>a)return!0}}catch(r){if(!Array.isArray(r==null?void 0:r.data.__ERROR))throw r}return!1},dc=re("roles/saveRoles",async(e,{getState:r,rejectWithValue:t,dispatch:a})=>{try{const{flags:i,date:s}=r().roles;if(i.old||await Vc(s)){const{confirmed:f}=await a(dr({title:qg,message:"New content has been found on the server. Are you sure you want to continue?",type:qt.CONFIRM,icon:"FdSave"})).unwrap();if(!f)return t({old:!0})}return await E.setFileContent({name:E.ROLES_TAB_PATH,content:Qi(e)})}catch{return t("Error while loading the roles")}}),zg=fr({name:"roles",initialState:()=>{const{roles:e}=ga(),{roles:r={},privileges:t={},flags:a={touched:!1},date:i,selectedTab:s="roles"}=e||{};return{flags:a,roles:r,privileges:t,date:i,selectedTab:s}},reducers:{updatePrivileges:(e,r)=>{e.privileges=r.payload,e.flags.touched=!0},updateRoles:(e,r)=>{e.roles=r.payload,e.flags.touched=!0},updateRolesAndPrivileges:(e,r)=>{e.roles=r.payload.roles,e.privileges=r.payload.privileges},toggleTab:(e,r)=>{e.selectedTab=r.payload},setRolesContent(e,r){const{content:t,flags:a={},...i}=r.payload,s=Zi(t),c={...e.flags,...a};return{...e,...s,...i,flags:c}}},extraReducers(e){e.addCase(Di.fulfilled,(r,t)=>{const{content:a,date:i}=t.payload;r={...r,...a,date:i}}).addCase(Di.rejected,r=>({...r,roles:{},privileges:{},flags:{touched:!1},date:void 0})).addCase(dc.fulfilled,(r,t)=>({...r,flags:{...r.flags,confirmed:!0,touched:!1,old:!1},date:t.payload.date})).addCase(dc.rejected,(r,t)=>$h.isString(t.payload)?r:{...r,flags:{...r.flags,...t.payload}}).addCase(Yg.fulfilled,(r,t)=>({...r,flags:{...r.flags,...t.payload}})).addCase(da.fulfilled,(r,t)=>{!t.payload||t.payload.path!==E.ROLES_TAB_PATH||(r.flags.touched=!1,r.flags.old=!1)}).addCase(tl.fulfilled,(r,t)=>{t.meta.arg!==E.ROLES_TAB_PATH||!t.payload||(r.flags.touched=!1,r.flags.old=!1)})}}),{updatePrivileges:Vg,updateRoles:Kg,setRolesContent:Kc,toggleTab:KP,updateRolesAndPrivileges:Jc}=zg.actions,JP=zg.reducer,Xc=re("settings/fetch",async()=>await E.getNodeInfo({verb:E.DesignerRequestVerb.GET_INFO,path:E.SETTINGS_TAB_PATH,content:!0,as:"json"})),Jg=re("settings/app",E.getAppSettings),XP=Rh(),zp={session:{"studio.tips":!0,"studio.notifications":!0,"studio.enablePreview":!1,"studio.tipsBaseUrl":"https://raw.githubusercontent.com/4d/Web-studio-TIPS/gh-build","webforms.tooltip.behavior":Uc.SHOW_AFTER_TIMEOUT,"webforms.tooltip.timeout":3e3,"webforms.renderer.showPopOver":!0,"welcometour.active":!0,"webforms.properties.advanced-mode":!1,"monaco.zoom":0},project:{"webforms.renderer.indexPage":"","webforms.display-mode":"neutral"},server:{projectOpened:!1,remoteDebuggerMode:E.RemoteDebuggerMode.DISABLED,baseUrl:"",qodly:!0,urls:{renderer:"/$lib/renderer/",debugger:"",lsp:""},isRestActive:!0}},ZP={...zp,session:{...zp.session,...XP},welcometour:{}},Xg=fr({name:"settings",initialState:ZP,reducers:{setSetting(e,r){const{path:t,settingsKey:a,value:i}=r.payload;e[t][a]=i},setSettings(e,r){const{path:t,value:a}=r.payload;e[t]={...e[t],...a}},setSettingsAsText(e,r){const{path:t,settings:a}=r.payload;e[t]=a}},extraReducers(e){e.addCase(Xc.fulfilled,(r,t)=>{r.project={...r.project,...t.payload.content}}),e.addCase(Jg.fulfilled,(r,t)=>{r.server=t.payload,r.server.qodly&&(r.project["webforms.display-mode"]="airy")})}}),{setSetting:pc,setSettings:es,setSettingsAsText:QP}=Xg.actions,eD=Xg.reducer,hc=e=>{const r=["folder","file"];return e.sort((t,a)=>t.type===a.type?t.name.localeCompare(a.name):r.indexOf(t.type)-r.indexOf(a.type))},Fe=(e,r)=>e.reduce((t,a)=>a.path===r.path&&a.type===r.type?[...t,r]:a.children?[...t,{...a,children:hc(Fe(a.children,r))}]:[...t,a],[]),vt=(e,r)=>e.reduce((t,a)=>t||(a.path===r?a:a.children?vt(a.children,r):null),null),tD=[{name:E.FolderRootPath.WEBFORMS,type:E.FileFolderType.FOLDER,children:[],path:E.FolderRootPath.WEBFORMS,error:null,flags:{expanded:!1,loading:!1,cached:!1},tipKey:"editors:webform:explorer:webforms",config:{},isRoot:!0},{name:E.FolderRootPath.METHODS,type:E.FileFolderType.FOLDER,children:[],path:E.FolderRootPath.METHODS,error:null,flags:{expanded:!1,loading:!1,cached:!1},config:{},isRoot:!0},{name:E.FolderRootPath.CLASSES,type:E.FileFolderType.FOLDER,children:[],path:E.FolderRootPath.CLASSES,error:null,flags:{expanded:!1,loading:!1,cached:!1},config:{},isRoot:!0},{name:E.FolderRootPath.SHARED,type:E.FileFolderType.FOLDER,children:[],path:E.FolderRootPath.SHARED,error:null,flags:{expanded:!1,loading:!1,cached:!1},config:{},isRoot:!0},{name:"Debugger",type:E.FileFolderType.FOLDER,children:[],path:"Debugger",error:null,flags:{expanded:!1,cached:!0},config:{},isRoot:!0},{name:"Roles And Privileges",type:E.FileFolderType.FILE,ext:"json",path:"roles",error:null,flags:{},config:{editor:{key:"editors:roles"},supportedEditors:[{key:"editors:code",config:{language:"json",theme:"vs-dark"}}]},isRoot:!0},{name:"Model",type:E.FileFolderType.MODEL,ext:"4DModel",path:"model",error:null,flags:{},config:{editor:{key:"editors:model"},supportedEditors:[{key:"editors:code",config:{language:"json",theme:"vs-dark"}}]}},{name:"Settings",type:E.FileFolderType.FILE,ext:"json",path:"qodlyApp",error:null,flags:{},config:{editor:{key:"editors:settings"}},isRoot:!0}],Zg=fr({name:"explorer",initialState:tD,reducers:{toggleExpandFolder:(e,r)=>(e=Fe(e,{...r.payload,flags:{...r.payload.flags,expanded:!r.payload.flags.expanded}}),e),expandFolder:(e,r)=>(e=Fe(e,{...r.payload,flags:{...r.payload.flags,expanded:!0}}),e),openAddFileInput:(e,r)=>Fe(e,{...r.payload,flags:{...r.payload.flags,adding:!0}}),addNewFile:(e,r)=>{const{parent:t,child:a}=r.payload;return Fe(e,{...t,children:[a,...t.children||[]]})},removeFile:(e,r)=>{const{parent:t,child:a}=r.payload;return Fe(e,{...t,children:t.children.filter(i=>i.path!==a.path)})},refreshFile:(e,r)=>{const{parent:t,child:a}=r.payload,i=(t.children||[]).filter(s=>s.path!==a.path&&!a.error);return Fe(e,{...t,children:[a,...i]})},setFolderChildren:(e,r)=>{const t=vt(e,r.payload.parentPath);return t?Fe(e,{...t,children:r.payload.children}):e}},extraReducers:e=>{e.addCase(fa.pending,(r,t)=>{const{file:a,newname:i}=t.meta.arg,s=vt(r,a.path);if(!s)return r;const c=a.path.split("/");c.pop();const l=`${c.join("/")}/${a.name}.${a.ext}`,f=`${c.join("/")}/${i}.${a.ext}`;switch(a.ext){case"4dm":case"4qs":E.lspSubject.next({action:E.LspActions.WILL_RENAME,payload:{oldPath:l,newPath:f}});break}return Fe(r,{...s,flags:{...s.flags,loading:!0}})}),e.addCase(fa.fulfilled,(r,t)=>{const{meta:{arg:{file:a}},payload:i}=t,s=vt(r,a.path);if(!s)return r;switch(i.old.ext){case"4dm":case"4qs":E.lspSubject.next({action:E.LspActions.DID_RENAME,payload:{oldPath:i.old.path,newPath:i.new.path}});break}return Fe(r,{...s,flags:{...s.flags,loading:!1}})}),e.addCase(fa.rejected,(r,t)=>{const{file:a}=t.meta.arg,i=vt(r,a.path);return i?Fe(r,{...i,flags:{...i.flags,loading:!1}}):r}),e.addCase(Pr.pending,(r,t)=>{const a=t.meta.arg,i=vt(r,a);return i?Fe(r,{...i,flags:{...i.flags,loading:!0}}):r}),e.addCase(Pr.fulfilled,(r,t)=>{const a=t.meta.arg,i=vt(r,a);return i?Fe(r,{...i,children:hc(t.payload),flags:{...i.flags,loading:!1,cached:!0,expanded:!0},error:null}):r}),e.addCase(Pr.rejected,(r,t)=>{const a=t.meta.arg,i=vt(r,a);return i?Fe(r,{...i,error:{message:t.payload},flags:{...i.flags,loading:!1,cached:!0,expanded:!0}}):r}),e.addCase(Ja.pending,(r,t)=>{const a=t.meta.arg,i=vt(r,a);return i?Fe(r,{...i,flags:{...i.flags,loading:!0}}):r}),e.addCase(Ja.fulfilled,(r,t)=>{const a=t.meta.arg,i=vt(r,a);return i?Fe(r,{...i,children:hc(t.payload),flags:{...i.flags,loading:!1,cached:!0,expanded:!1},error:null}):r}),e.addCase(Ja.rejected,(r,t)=>{const a=t.meta.arg,i=vt(r,a);return i?Fe(r,{...i,error:{message:t.payload},flags:{...i.flags,loading:!1,cached:!0,expanded:!1}}):r}),e.addCase(li.pending,(r,t)=>{const{fileName:a,parentNode:i,path:s,type:c}=t.meta.arg;return Fe(r,{...i,children:[{name:a,path:`${s}/${a}`,type:c,error:null,flags:{loading:!0},config:{}},...i.children]})}),e.addCase(li.fulfilled,(r,t)=>{const{path:a,fileName:i,type:s}=t.meta.arg,c=E.getFileExtentionFromType(s),{editor:l,supportedEditors:f}=Sr(`${a}${c?`.${c.toLowerCase()}`:""}`);return Fe(r,{name:i,path:`${a}/${i}`,type:s,error:null,flags:{loading:!1},config:{editor:l,supportedEditors:f}})}),e.addCase(li.rejected,(r,t)=>{const{path:a,fileName:i,type:s}=t.meta.arg;return Fe(r,{name:i,path:`${a}/${i}`,type:s,error:{message:t.payload},flags:{loading:!1},config:{}})}),e.addCase(fi.pending,(r,t)=>{const{node:a,parentNode:i}=t.meta.arg;return Fe(r,{...i,children:[{name:`${a.name}_copy`,path:`${a.path}/${a.name}_copy`,type:a.type,error:null,flags:{loading:!0},permissions:{canRename:!0,canDelete:!0}},...i.children]})}),e.addCase(fi.fulfilled,(r,t)=>{const{node:a}=t.payload,{node:{path:i,ext:s}}=t.meta.arg,{editor:c,supportedEditors:l}=Sr(`${i}${s?`.${s.toLowerCase()}`:""}`);return Fe(r,{name:`${a.name}`,path:`${i}/${a.name}`,type:a.type,error:null,flags:{loading:!1},config:{editor:c,supportedEditors:l}})}),e.addCase(fi.rejected,(r,t)=>{const a=t.payload,{node:i}=t.meta.arg;return Fe(r,{name:`${i.name}_copy`,path:`${i.path}/${i.name}_copy`,type:i.type,error:{message:a},flags:{loading:!1},config:{}})}),e.addCase(Za.pending,(r,t)=>{}),e.addCase(Za.fulfilled,(r,t)=>{var m;const{draggedNode:a,newLocation:i}=t.meta.arg,s=Jh(a.path),c=vt(r,s),l=vt(r,i.path),f=(m=c==null?void 0:c.children)==null?void 0:m.filter(_=>_.path!==a.path),p=i.path.split("/").length,h=a.path.split("/").length;return p>=h?(r=Fe(r,{...c,children:f}),r=Fe(r,{...l,children:[{...a,path:`${l.path}/${a.name}`},...l!=null&&l.children?l==null?void 0:l.children:[]],flags:{...l.flags,expanded:!0}})):(r=Fe(r,{...l,children:[{...a,path:`${l.path}/${a.name}`},...l!=null&&l.children?l==null?void 0:l.children:[]],flags:{...l.flags,expanded:!0}}),r=Fe(r,{...c,children:f})),r}),e.addCase(Za.rejected,(r,t)=>{E.toastSubject.next({message:"Error moving file",kind:"danger"})}),e.addCase(la.pending,(r,t)=>{var C;const{fileName:a,parentNode:i,path:s,type:c,qodly:l}=t.meta.arg,f=E.getFileExtentionFromType(c,l),p=`${s}/${a}${f?`.${f.toLowerCase()}`:""}`,{editor:h,supportedEditors:m}=Sr(p);switch(c){case E.FileFolderType.CLASS:case E.FileFolderType.METHOD:E.lspSubject.next({action:E.LspActions.WILL_CREATE,payload:{filePath:p}});break}const _=(C=i.children)==null?void 0:C.filter(F=>F.path!==`${s}/${a}`),S=[{name:a,path:`${s}/${a}`,type:E.FileFolderType.FILE,error:null,flags:{loading:!0},config:{editor:h,supportedEditors:m},ext:f,date:new Date().toISOString()},..._],T=Fe(r,{...i,children:S});return $h.merge(r,T)}),e.addCase(la.fulfilled,(r,t)=>{const{fileName:a,path:i,type:s,qodly:c}=t.meta.arg,l=E.getFileExtentionFromType(s,c),f=`${i}/${a}${l?`.${l.toLowerCase()}`:""}`,{editor:p,supportedEditors:h}=Sr(f),m=Fe(r,{name:a,path:`${i}/${a}`,type:E.FileFolderType.FILE,error:null,flags:{},config:{editor:p,supportedEditors:h},ext:l,date:new Date().toISOString()});switch(s){case E.FileFolderType.CLASS:case E.FileFolderType.METHOD:E.lspSubject.next({action:E.LspActions.DID_CREATE,payload:{filePath:f}});break}return r=m,r}),e.addCase(la.rejected,(r,t)=>{const{fileName:a,path:i,type:s}=t.meta.arg,c=E.getFileExtentionFromType(s),{editor:l,supportedEditors:f}=Sr(`${i}${c?`.${c.toLowerCase()}`:""}`);return r=Fe(r,{name:a,path:`${i}/${a}`,type:E.FileFolderType.FILE,error:{message:"Failed creating file"},flags:{},config:{editor:l,supportedEditors:f},ext:c,date:new Date().toISOString()}),r}),e.addMatcher(gh(Xa),(r,t)=>{const a=vt(r,t.meta.arg.file.path.split(".")[0]);return a&&(r=Fe(r,{...a,flags:{...a.flags,loading:!0}})),r}),e.addMatcher(yh(Xa),(r,t)=>{const a=vt(r,t.meta.arg.file.path.split(".")[0]);return a&&(r=Fe(r,{...a,flags:{...a.flags,loading:!1}})),r}),e.addMatcher(vh(Xa),(r,t)=>{const a=vt(r,t.meta.arg.file.path.split(".")[0]);return a&&(r=Fe(r,{...a,flags:{...a.flags,loading:!1}})),E.toastSubject.next({message:"Failed to open file, try again",kind:"danger"}),r})}}),{toggleExpandFolder:rD,expandFolder:nD,openAddFileInput:aD,addNewFile:Qg,refreshFile:oD,removeFile:gc,setFolderChildren:iD}=Zg.actions;function ev(e,r){switch(e){case E.FileFolderType.WEBFORMS:const t={metadata:{v:"1.0",datasources:[],styles:[]},components:{ROOT:{parent:"",type:{resolvedName:"Container"},isCanvas:!0,props:{airyMode:!1,className:"bg-white h-full w-full px-6",classNames:[],events:[]},displayName:"App",custom:{},hidden:!1,nodes:[],linkedNodes:{}}}};return r["webforms.display-mode"]===Hc.AIRY&&(t.components.ROOT.props.airyMode=!0),t;case E.FileFolderType.METHODS:return`//%attributes = {}
119
- `;default:return""}}function tv(e,r,t){switch(r){case E.FileFolderType.MOBILEFORM:return`${e}.MForm`;case E.FileFolderType.WEBFORM:return`${e}.WebForm`;case E.FileFolderType.METHOD:case E.FileFolderType.CLASS:return`${e}.${t?"4qs":"4dm"}`;default:return e}}function sD(e){switch(e){case E.FolderRootPath.WEBFORMS:return E.FileFolderType.WEBFORMS;case E.FolderRootPath.METHODS:return E.FileFolderType.METHODS;case E.FolderRootPath.CLASSES:return E.FileFolderType.CLASSES;case"Mobile":return E.FileFolderType.MOBILE;default:return e}}function rv(e){switch(e){case E.FileFolderType.WEBFORMS:return E.FileFolderType.WEBFORM;case E.FileFolderType.CLASSES:return E.FileFolderType.CLASS;case E.FileFolderType.METHODS:return E.FileFolderType.METHOD;case E.FileFolderType.FOLDER:return E.FileFolderType.FOLDER;case E.FileFolderType.MOBILE:return E.FileFolderType.MOBILEFORM;default:return e}}const uD=re("files/tryEditMethod",async({method:e},{dispatch:r})=>{const t=e.filePath.split("/"),[a]=t[1].split("."),{editor:i}=Sr(e.filePath);return await r(Zc({file:{name:a,path:e.filePath,date:new Date().toISOString(),type:E.FileFolderType.CLASS,editor:i},line:e.startingLine+1})).unwrap()}),vc=re("explorer/createModelFiles",async(e,{dispatch:r,getState:t})=>{var m;const a=t(),i=E.FolderRootPath.CLASSES,s=a.settings.server.qodly,c=vt(a.explorer,i);if(!c)return;await r(Pr(i));const f=((m=t().explorer.find(_=>_.name===i))==null?void 0:m.children)||[];let p=[{content:"",name:""}];const h=_=>{switch(_){case"dataclass":return{name:e.type==="dataclass"?e.className:"DataStore",content:s?`extends DataClass
118
+ Check the top-level render call using <`+I+">.")}return R}}function rn(g,R){{if(!g._store||g._store.validated||g.key!=null)return;g._store.validated=!0;var I=Hn(R);if(xn[I])return;xn[I]=!0;var q="";g&&g._owner&&g._owner!==pr.current&&(q=" It was passed a child from "+we(g._owner.type)+"."),_t(g),Y('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',I,q),_t(null)}}function Cn(g,R){{if(typeof g!="object")return;if(Array.isArray(g))for(var I=0;I<g.length;I++){var q=g[I];gr(q)&&rn(q,R)}else if(gr(g))g._store&&(g._store.validated=!0);else if(g){var ae=K(g);if(typeof ae=="function"&&ae!==g.entries)for(var oe=ae.call(g),ee;!(ee=oe.next()).done;)gr(ee.value)&&rn(ee.value,R)}}}function xa(g){{var R=g.type;if(R==null||typeof R=="string")return;var I;if(typeof R=="function")I=R.propTypes;else if(typeof R=="object"&&(R.$$typeof===p||R.$$typeof===_))I=R.propTypes;else return;if(I){var q=we(R);Sa(I,g.props,"prop",q,g)}else if(R.PropTypes!==void 0&&!hr){hr=!0;var ae=we(R);Y("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?",ae||"Unknown")}typeof R.getDefaultProps=="function"&&!R.getDefaultProps.isReactClassApproved&&Y("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.")}}function Ca(g){{for(var R=Object.keys(g.props),I=0;I<R.length;I++){var q=R[I];if(q!=="children"&&q!=="key"){_t(g),Y("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.",q),_t(null);break}}g.ref!==null&&(_t(g),Y("Invalid attribute `ref` supplied to `React.Fragment`."),_t(null))}}function Rn(g,R,I,q,ae,oe){{var ee=Oe(g);if(!ee){var Q="";(g===void 0||typeof g=="object"&&g!==null&&Object.keys(g).length===0)&&(Q+=" You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.");var Ie=Ta(ae);Ie?Q+=Ie:Q+=Tn();var be;g===null?be="null":Array.isArray(g)?be="array":g!==void 0&&g.$$typeof===a?(be="<"+(we(g.type)||"Unknown")+" />",Q=" Did you accidentally export a JSX literal instead of a component?"):be=typeof g,Y("React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",be,Q)}var Ee=wn(g,R,I,ae,oe);if(Ee==null)return Ee;if(ee){var at=R.children;if(at!==void 0)if(q)if(Array.isArray(at)){for(var Ft=0;Ft<at.length;Ft++)Cn(at[Ft],g);Object.freeze&&Object.freeze(at)}else Y("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else Cn(at,g)}return g===e.Fragment?Ca(Ee):xa(Ee),Ee}}function Gn(g,R,I){return Rn(g,R,I,!0)}function Ra(g,R,I){return Rn(g,R,I,!1)}var Oa=Ra,Aa=Gn;e.jsx=Oa,e.jsxs=Aa}()}(qp)),qp}process.env.NODE_ENV==="production"?fc.exports=HP():fc.exports=GP();var Kr=fc.exports;const qP=e=>Kr.jsx("svg",{width:"1em",height:"1em",viewBox:"0 0 24 24",...e,children:Kr.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M11 21c5.523 0 10-4.477 10-10S16.523 1 11 1 1 5.477 1 11s4.477 10 10 10Zm0-14a1 1 0 1 0 0-2 1 1 0 0 0 0 2Zm1 1.5a.5.5 0 0 0-.5-.5h-2a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h.5v4h-.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5H12V8.5Z",fill:"currentColor"})}),YP=e=>Kr.jsxs("svg",{width:"1em",height:"1em",viewBox:"0 0 24 24",...e,children:[Kr.jsx("path",{d:"M13 17.5a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-8a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v8ZM12 6a1 1 0 1 0 0 2 1 1 0 0 0 0-2Z",fill:"currentColor"}),Kr.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M12 2C6.477 2 2 6.477 2 12s4.477 10 10 10 10-4.477 10-10S17.523 2 12 2Zm0 2a8 8 0 1 0 0 16 8 8 0 0 0 0-16Z",fill:"currentColor"})]}),zP=e=>Kr.jsx("svg",{width:"1em",height:"1em",viewBox:"0 0 24 24",...e,children:Kr.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M16.076 2.203a.5.5 0 0 0-.354-.146H3.001a1 1 0 0 0-1 1v18a1 1 0 0 0 1 1h18a1 1 0 0 0 1-1V8.335a.5.5 0 0 0-.147-.354l-5.778-5.778ZM12 19.057a3 3 0 1 0 0-6 3 3 0 0 0 0 6Zm-8-14.5a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-.5.5h-10a.5.5 0 0 1-.5-.5v-4Z",fill:"currentColor"})}),VP=e=>Kr.jsx("svg",{width:"1em",height:"1em",viewBox:"0 0 24 24",...e,children:Kr.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M12.953 3.53c-.393-.707-1.513-.707-1.906 0L2.114 19.612c-.354.638.16 1.388.953 1.388h17.866c.792 0 1.307-.75.953-1.388L12.953 3.53ZM11.508 8a.504.504 0 0 0-.507.531l.491 8A.505.505 0 0 0 12 17c.269 0 .49-.205.508-.469l.492-8A.504.504 0 0 0 12.492 8h-.984ZM12 20c.561 0 1.016-.448 1.016-1s-.455-1-1.016-1c-.561 0-1.016.448-1.016 1s.455 1 1.016 1Z",fill:"currentColor"})}),KP={FdSave:zP,FdWarningDanger:VP,FdInfoCircle:YP,FdInfoBold:qP};var qt=(e=>(e.ALERT="alert",e.CONFIRM="confirm",e))(qt||{}),Ir=(e=>(e.PRIMARY="primary",e.WARNING="warning",e.DANGER="danger",e))(Ir||{}),zc=(e=>(e.CONFIRMED="confirmed",e.CANCELED="canceled",e))(zc||{});const dr=re("modals/open",async(e,{dispatch:r})=>{const{type:t=qt.ALERT,store:a=qv()}=e,i=Cc();switch(r(Wg({id:i,type:t,isOpen:!0,...e})),t){case qt.CONFIRM:return new Promise(s=>{const c=a.subscribe(()=>{var p;const{modals:l}=a.getState(),f=l.list.find(h=>h.id===i);if(f&&!f.isOpen){const h=f.closeReason===zc.CONFIRMED,m=Ke.entries((p=f.views)==null?void 0:p.toggles).reduce((_,S)=>({..._,[S[0]]:S[1].value}),{});r(Ug(i)),c(),s({confirmed:h,options:m})}})});default:return{}}}),Gg=()=>E.getFileContent({name:E.ROLES_TAB_PATH}),qg="Roles & Privileges",Di=re("roles/fetchRoles",async(e,{dispatch:r,rejectWithValue:t})=>{var s;let a;try{a=await Gg()}catch(c){if(!Array.isArray((s=c==null?void 0:c.data)==null?void 0:s.__ERROR))return t("Error while loading the roles");a={name:E.ROLES_TAB_PATH,date:new Date().toISOString(),content:{permissions:{allowed:[]},privileges:[],roles:[]}}}const i={name:qg,type:E.FileFolderType.ROLES,date:a.date,view:{panel:{isOpen:!1,type:"",current:""}},path:E.ROLES_TAB_PATH,flags:{},extra:{editor:{key:"editors:roles"}},content:{}};return r(jt(i)),{...a,content:Zi(a.content)}}),Yg=re("roles/fetchRolesChanges",async(e,{getState:r})=>{const{tabs:t}=r().root;if(t.find(i=>i.path===E.ROLES_TAB_PATH)){const{date:i}=r().roles;if(i&&await Vc(i))return{old:!0}}return{}}),Vc=async e=>{if(!e)return!1;try{const r=await Gg();if(r.date){const t=new Date(e),a=new Date(r.date);if(t>a)return!0}}catch(r){if(!Array.isArray(r==null?void 0:r.data.__ERROR))throw r}return!1},dc=re("roles/saveRoles",async(e,{getState:r,rejectWithValue:t,dispatch:a})=>{try{const{flags:i,date:s}=r().roles;if(i.old||await Vc(s)){const{confirmed:f}=await a(dr({title:qg,message:"New content has been found on the server. Are you sure you want to continue?",type:qt.CONFIRM,icon:"FdSave"})).unwrap();if(!f)return t({old:!0})}return await E.setFileContent({name:E.ROLES_TAB_PATH,content:Qi(e)})}catch{return t("Error while loading the roles")}}),zg=fr({name:"roles",initialState:()=>{const{roles:e}=ga(),{roles:r={},privileges:t={},flags:a={touched:!1},date:i,selectedTab:s="roles"}=e||{};return{flags:a,roles:r,privileges:t,date:i,selectedTab:s}},reducers:{updatePrivileges:(e,r)=>{e.privileges=r.payload,e.flags.touched=!0},updateRoles:(e,r)=>{e.roles=r.payload,e.flags.touched=!0},updateRolesAndPrivileges:(e,r)=>{e.roles=r.payload.roles,e.privileges=r.payload.privileges},toggleTab:(e,r)=>{e.selectedTab=r.payload},toggleForceLogin:(e,r)=>{e.forceLogin=r.payload},setRolesContent(e,r){const{content:t,flags:a={},...i}=r.payload,s=Zi(t),c={...e.flags,...a};return{...e,...s,...i,flags:c}}},extraReducers(e){e.addCase(Di.fulfilled,(r,t)=>{const{content:a,date:i}=t.payload;r={...r,...a,date:i}}).addCase(Di.rejected,r=>({...r,roles:{},privileges:{},flags:{touched:!1},date:void 0})).addCase(dc.fulfilled,(r,t)=>({...r,flags:{...r.flags,confirmed:!0,touched:!1,old:!1},date:t.payload.date})).addCase(dc.rejected,(r,t)=>$h.isString(t.payload)?r:{...r,flags:{...r.flags,...t.payload}}).addCase(Yg.fulfilled,(r,t)=>({...r,flags:{...r.flags,...t.payload}})).addCase(da.fulfilled,(r,t)=>{!t.payload||t.payload.path!==E.ROLES_TAB_PATH||(r.flags.touched=!1,r.flags.old=!1)}).addCase(tl.fulfilled,(r,t)=>{t.meta.arg!==E.ROLES_TAB_PATH||!t.payload||(r.flags.touched=!1,r.flags.old=!1)})}}),{updatePrivileges:Vg,updateRoles:Kg,setRolesContent:Kc,toggleTab:JP,toggleForceLogin:XP,updateRolesAndPrivileges:Jc}=zg.actions,ZP=zg.reducer,Xc=re("settings/fetch",async()=>await E.getNodeInfo({verb:E.DesignerRequestVerb.GET_INFO,path:E.SETTINGS_TAB_PATH,content:!0,as:"json"})),Jg=re("settings/app",E.getAppSettings),QP=Rh(),zp={session:{"studio.tips":!0,"studio.notifications":!0,"studio.enablePreview":!1,"studio.tipsBaseUrl":"https://raw.githubusercontent.com/4d/Web-studio-TIPS/gh-build","webforms.tooltip.behavior":Uc.SHOW_AFTER_TIMEOUT,"webforms.tooltip.timeout":3e3,"webforms.renderer.showPopOver":!0,"welcometour.active":!0,"webforms.properties.advanced-mode":!1,"monaco.zoom":0},project:{"webforms.renderer.indexPage":"","webforms.display-mode":"neutral"},server:{projectOpened:!1,remoteDebuggerMode:E.RemoteDebuggerMode.DISABLED,baseUrl:"",qodly:!0,urls:{renderer:"/$lib/renderer/",debugger:"",lsp:""},isRestActive:!0}},eD={...zp,session:{...zp.session,...QP},welcometour:{}},Xg=fr({name:"settings",initialState:eD,reducers:{setSetting(e,r){const{path:t,settingsKey:a,value:i}=r.payload;e[t][a]=i},setSettings(e,r){const{path:t,value:a}=r.payload;e[t]={...e[t],...a}},setSettingsAsText(e,r){const{path:t,settings:a}=r.payload;e[t]=a}},extraReducers(e){e.addCase(Xc.fulfilled,(r,t)=>{r.project={...r.project,...t.payload.content}}),e.addCase(Jg.fulfilled,(r,t)=>{r.server=t.payload,r.server.qodly&&(r.project["webforms.display-mode"]="airy")})}}),{setSetting:pc,setSettings:es,setSettingsAsText:tD}=Xg.actions,rD=Xg.reducer,hc=e=>{const r=["folder","file"];return e.sort((t,a)=>t.type===a.type?t.name.localeCompare(a.name):r.indexOf(t.type)-r.indexOf(a.type))},Fe=(e,r)=>e.reduce((t,a)=>a.path===r.path&&a.type===r.type?[...t,r]:a.children?[...t,{...a,children:hc(Fe(a.children,r))}]:[...t,a],[]),vt=(e,r)=>e.reduce((t,a)=>t||(a.path===r?a:a.children?vt(a.children,r):null),null),nD=[{name:E.FolderRootPath.WEBFORMS,type:E.FileFolderType.FOLDER,children:[],path:E.FolderRootPath.WEBFORMS,error:null,flags:{expanded:!1,loading:!1,cached:!1},tipKey:"editors:webform:explorer:webforms",config:{},isRoot:!0},{name:E.FolderRootPath.METHODS,type:E.FileFolderType.FOLDER,children:[],path:E.FolderRootPath.METHODS,error:null,flags:{expanded:!1,loading:!1,cached:!1},config:{},isRoot:!0},{name:E.FolderRootPath.CLASSES,type:E.FileFolderType.FOLDER,children:[],path:E.FolderRootPath.CLASSES,error:null,flags:{expanded:!1,loading:!1,cached:!1},config:{},isRoot:!0},{name:E.FolderRootPath.SHARED,type:E.FileFolderType.FOLDER,children:[],path:E.FolderRootPath.SHARED,error:null,flags:{expanded:!1,loading:!1,cached:!1},config:{},isRoot:!0},{name:"Debugger",type:E.FileFolderType.FOLDER,children:[],path:"Debugger",error:null,flags:{expanded:!1,cached:!0},config:{},isRoot:!0},{name:"Roles And Privileges",type:E.FileFolderType.FILE,ext:"json",path:"roles",error:null,flags:{},config:{editor:{key:"editors:roles"},supportedEditors:[{key:"editors:code",config:{language:"json",theme:"vs-dark"}}]},isRoot:!0},{name:"Model",type:E.FileFolderType.MODEL,ext:"4DModel",path:"model",error:null,flags:{},config:{editor:{key:"editors:model"},supportedEditors:[{key:"editors:code",config:{language:"json",theme:"vs-dark"}}]}},{name:"Settings",type:E.FileFolderType.FILE,ext:"json",path:"qodlyApp",error:null,flags:{},config:{editor:{key:"editors:settings"}},isRoot:!0}],Zg=fr({name:"explorer",initialState:nD,reducers:{toggleExpandFolder:(e,r)=>(e=Fe(e,{...r.payload,flags:{...r.payload.flags,expanded:!r.payload.flags.expanded}}),e),expandFolder:(e,r)=>(e=Fe(e,{...r.payload,flags:{...r.payload.flags,expanded:!0}}),e),openAddFileInput:(e,r)=>Fe(e,{...r.payload,flags:{...r.payload.flags,adding:!0}}),addNewFile:(e,r)=>{const{parent:t,child:a}=r.payload;return Fe(e,{...t,children:[a,...t.children||[]]})},removeFile:(e,r)=>{const{parent:t,child:a}=r.payload;return Fe(e,{...t,children:t.children.filter(i=>i.path!==a.path)})},refreshFile:(e,r)=>{const{parent:t,child:a}=r.payload,i=(t.children||[]).filter(s=>s.path!==a.path&&!a.error);return Fe(e,{...t,children:[a,...i]})},setFolderChildren:(e,r)=>{const t=vt(e,r.payload.parentPath);return t?Fe(e,{...t,children:r.payload.children}):e}},extraReducers:e=>{e.addCase(fa.pending,(r,t)=>{const{file:a,newname:i}=t.meta.arg,s=vt(r,a.path);if(!s)return r;const c=a.path.split("/");c.pop();const l=`${c.join("/")}/${a.name}.${a.ext}`,f=`${c.join("/")}/${i}.${a.ext}`;switch(a.ext){case"4dm":case"4qs":E.lspSubject.next({action:E.LspActions.WILL_RENAME,payload:{oldPath:l,newPath:f}});break}return Fe(r,{...s,flags:{...s.flags,loading:!0}})}),e.addCase(fa.fulfilled,(r,t)=>{const{meta:{arg:{file:a}},payload:i}=t,s=vt(r,a.path);if(!s)return r;switch(i.old.ext){case"4dm":case"4qs":E.lspSubject.next({action:E.LspActions.DID_RENAME,payload:{oldPath:i.old.path,newPath:i.new.path}});break}return Fe(r,{...s,flags:{...s.flags,loading:!1}})}),e.addCase(fa.rejected,(r,t)=>{const{file:a}=t.meta.arg,i=vt(r,a.path);return i?Fe(r,{...i,flags:{...i.flags,loading:!1}}):r}),e.addCase(Pr.pending,(r,t)=>{const a=t.meta.arg,i=vt(r,a);return i?Fe(r,{...i,flags:{...i.flags,loading:!0}}):r}),e.addCase(Pr.fulfilled,(r,t)=>{const a=t.meta.arg,i=vt(r,a);return i?Fe(r,{...i,children:hc(t.payload),flags:{...i.flags,loading:!1,cached:!0,expanded:!0},error:null}):r}),e.addCase(Pr.rejected,(r,t)=>{const a=t.meta.arg,i=vt(r,a);return i?Fe(r,{...i,error:{message:t.payload},flags:{...i.flags,loading:!1,cached:!0,expanded:!0}}):r}),e.addCase(Ja.pending,(r,t)=>{const a=t.meta.arg,i=vt(r,a);return i?Fe(r,{...i,flags:{...i.flags,loading:!0}}):r}),e.addCase(Ja.fulfilled,(r,t)=>{const a=t.meta.arg,i=vt(r,a);return i?Fe(r,{...i,children:hc(t.payload),flags:{...i.flags,loading:!1,cached:!0,expanded:!1},error:null}):r}),e.addCase(Ja.rejected,(r,t)=>{const a=t.meta.arg,i=vt(r,a);return i?Fe(r,{...i,error:{message:t.payload},flags:{...i.flags,loading:!1,cached:!0,expanded:!1}}):r}),e.addCase(li.pending,(r,t)=>{const{fileName:a,parentNode:i,path:s,type:c}=t.meta.arg;return Fe(r,{...i,children:[{name:a,path:`${s}/${a}`,type:c,error:null,flags:{loading:!0},config:{}},...i.children]})}),e.addCase(li.fulfilled,(r,t)=>{const{path:a,fileName:i,type:s}=t.meta.arg,c=E.getFileExtentionFromType(s),{editor:l,supportedEditors:f}=Sr(`${a}${c?`.${c.toLowerCase()}`:""}`);return Fe(r,{name:i,path:`${a}/${i}`,type:s,error:null,flags:{loading:!1},config:{editor:l,supportedEditors:f}})}),e.addCase(li.rejected,(r,t)=>{const{path:a,fileName:i,type:s}=t.meta.arg;return Fe(r,{name:i,path:`${a}/${i}`,type:s,error:{message:t.payload},flags:{loading:!1},config:{}})}),e.addCase(fi.pending,(r,t)=>{const{node:a,parentNode:i}=t.meta.arg;return Fe(r,{...i,children:[{name:`${a.name}_copy`,path:`${a.path}/${a.name}_copy`,type:a.type,error:null,flags:{loading:!0},permissions:{canRename:!0,canDelete:!0}},...i.children]})}),e.addCase(fi.fulfilled,(r,t)=>{const{node:a}=t.payload,{node:{path:i,ext:s}}=t.meta.arg,{editor:c,supportedEditors:l}=Sr(`${i}${s?`.${s.toLowerCase()}`:""}`);return Fe(r,{name:`${a.name}`,path:`${i}/${a.name}`,type:a.type,error:null,flags:{loading:!1},config:{editor:c,supportedEditors:l}})}),e.addCase(fi.rejected,(r,t)=>{const a=t.payload,{node:i}=t.meta.arg;return Fe(r,{name:`${i.name}_copy`,path:`${i.path}/${i.name}_copy`,type:i.type,error:{message:a},flags:{loading:!1},config:{}})}),e.addCase(Za.pending,(r,t)=>{}),e.addCase(Za.fulfilled,(r,t)=>{var m;const{draggedNode:a,newLocation:i}=t.meta.arg,s=Jh(a.path),c=vt(r,s),l=vt(r,i.path),f=(m=c==null?void 0:c.children)==null?void 0:m.filter(_=>_.path!==a.path),p=i.path.split("/").length,h=a.path.split("/").length;return p>=h?(r=Fe(r,{...c,children:f}),r=Fe(r,{...l,children:[{...a,path:`${l.path}/${a.name}`},...l!=null&&l.children?l==null?void 0:l.children:[]],flags:{...l.flags,expanded:!0}})):(r=Fe(r,{...l,children:[{...a,path:`${l.path}/${a.name}`},...l!=null&&l.children?l==null?void 0:l.children:[]],flags:{...l.flags,expanded:!0}}),r=Fe(r,{...c,children:f})),r}),e.addCase(Za.rejected,(r,t)=>{E.toastSubject.next({message:"Error moving file",kind:"danger"})}),e.addCase(la.pending,(r,t)=>{var C;const{fileName:a,parentNode:i,path:s,type:c,qodly:l}=t.meta.arg,f=E.getFileExtentionFromType(c,l),p=`${s}/${a}${f?`.${f.toLowerCase()}`:""}`,{editor:h,supportedEditors:m}=Sr(p);switch(c){case E.FileFolderType.CLASS:case E.FileFolderType.METHOD:E.lspSubject.next({action:E.LspActions.WILL_CREATE,payload:{filePath:p}});break}const _=(C=i.children)==null?void 0:C.filter(F=>F.path!==`${s}/${a}`),S=[{name:a,path:`${s}/${a}`,type:E.FileFolderType.FILE,error:null,flags:{loading:!0},config:{editor:h,supportedEditors:m},ext:f,date:new Date().toISOString()},..._],T=Fe(r,{...i,children:S});return $h.merge(r,T)}),e.addCase(la.fulfilled,(r,t)=>{const{fileName:a,path:i,type:s,qodly:c}=t.meta.arg,l=E.getFileExtentionFromType(s,c),f=`${i}/${a}${l?`.${l.toLowerCase()}`:""}`,{editor:p,supportedEditors:h}=Sr(f),m=Fe(r,{name:a,path:`${i}/${a}`,type:E.FileFolderType.FILE,error:null,flags:{},config:{editor:p,supportedEditors:h},ext:l,date:new Date().toISOString()});switch(s){case E.FileFolderType.CLASS:case E.FileFolderType.METHOD:E.lspSubject.next({action:E.LspActions.DID_CREATE,payload:{filePath:f}});break}return r=m,r}),e.addCase(la.rejected,(r,t)=>{const{fileName:a,path:i,type:s}=t.meta.arg,c=E.getFileExtentionFromType(s),{editor:l,supportedEditors:f}=Sr(`${i}${c?`.${c.toLowerCase()}`:""}`);return r=Fe(r,{name:a,path:`${i}/${a}`,type:E.FileFolderType.FILE,error:{message:"Failed creating file"},flags:{},config:{editor:l,supportedEditors:f},ext:c,date:new Date().toISOString()}),r}),e.addMatcher(gh(Xa),(r,t)=>{const a=vt(r,t.meta.arg.file.path.split(".")[0]);return a&&(r=Fe(r,{...a,flags:{...a.flags,loading:!0}})),r}),e.addMatcher(yh(Xa),(r,t)=>{const a=vt(r,t.meta.arg.file.path.split(".")[0]);return a&&(r=Fe(r,{...a,flags:{...a.flags,loading:!1}})),r}),e.addMatcher(vh(Xa),(r,t)=>{const a=vt(r,t.meta.arg.file.path.split(".")[0]);return a&&(r=Fe(r,{...a,flags:{...a.flags,loading:!1}})),E.toastSubject.next({message:"Failed to open file, try again",kind:"danger"}),r})}}),{toggleExpandFolder:aD,expandFolder:oD,openAddFileInput:iD,addNewFile:Qg,refreshFile:sD,removeFile:gc,setFolderChildren:uD}=Zg.actions;function ev(e,r){switch(e){case E.FileFolderType.WEBFORMS:const t={metadata:{v:"1.0",datasources:[],styles:[]},components:{ROOT:{parent:"",type:{resolvedName:"Container"},isCanvas:!0,props:{airyMode:!1,className:"bg-white h-full w-full px-6",classNames:[],events:[]},displayName:"App",custom:{},hidden:!1,nodes:[],linkedNodes:{}}}};return r["webforms.display-mode"]===Hc.AIRY&&(t.components.ROOT.props.airyMode=!0),t;case E.FileFolderType.METHODS:return`//%attributes = {}
119
+ `;default:return""}}function tv(e,r,t){switch(r){case E.FileFolderType.MOBILEFORM:return`${e}.MForm`;case E.FileFolderType.WEBFORM:return`${e}.WebForm`;case E.FileFolderType.METHOD:case E.FileFolderType.CLASS:return`${e}.${t?"4qs":"4dm"}`;default:return e}}function cD(e){switch(e){case E.FolderRootPath.WEBFORMS:return E.FileFolderType.WEBFORMS;case E.FolderRootPath.METHODS:return E.FileFolderType.METHODS;case E.FolderRootPath.CLASSES:return E.FileFolderType.CLASSES;case"Mobile":return E.FileFolderType.MOBILE;default:return e}}function rv(e){switch(e){case E.FileFolderType.WEBFORMS:return E.FileFolderType.WEBFORM;case E.FileFolderType.CLASSES:return E.FileFolderType.CLASS;case E.FileFolderType.METHODS:return E.FileFolderType.METHOD;case E.FileFolderType.FOLDER:return E.FileFolderType.FOLDER;case E.FileFolderType.MOBILE:return E.FileFolderType.MOBILEFORM;default:return e}}const lD=re("files/tryEditMethod",async({method:e},{dispatch:r})=>{const t=e.filePath.split("/"),[a]=t[1].split("."),{editor:i}=Sr(e.filePath);return await r(Zc({file:{name:a,path:e.filePath,date:new Date().toISOString(),type:E.FileFolderType.CLASS,editor:i},line:e.startingLine+1})).unwrap()}),vc=re("explorer/createModelFiles",async(e,{dispatch:r,getState:t})=>{var m;const a=t(),i=E.FolderRootPath.CLASSES,s=a.settings.server.qodly,c=vt(a.explorer,i);if(!c)return;await r(Pr(i));const f=((m=t().explorer.find(_=>_.name===i))==null?void 0:m.children)||[];let p=[{content:"",name:""}];const h=_=>{switch(_){case"dataclass":return{name:e.type==="dataclass"?e.className:"DataStore",content:s?`extends DataClass
120
120
  `:`Class extends DataClass
121
121
  `};case"collection":return{name:e.type==="dataclass"?e.collectionName:"DataStore",content:s?`extends EntitySelection
122
122
  `:`Class extends EntitySelection
@@ -124,26 +124,26 @@ Check the top-level render call using <`+I+">.")}return R}}function rn(g,R){{if(
124
124
  `:`Class extends Entity
125
125
  `};case"model":return{name:"DataStore",content:s?`extends DataStoreImplementation
126
126
  `:`Class extends DataStoreImplementation
127
- `}}};e.type==="dataclass"&&!e.toCreate?p=[{...h("dataclass")},{...h("collection")},{...h("entity")}]:e.type==="dataclass"&&e.toCreate?p=[{...h(e.toCreate)}]:p=[{...h("model")}],p=p.filter(_=>!f.find(({name:S,ext:T})=>S===_.name&&T===(s?"4qs":"4dm"))),await Promise.all(p.map(async({name:_,content:S})=>{await r(la({type:E.FileFolderType.CLASS,path:i,fileName:_,parentNode:c,content:S,qodly:a.settings.server.qodly}))})),await r(Pr(i))}),Pr=re("explorer/fetchFolderContent",async(e,{rejectWithValue:r})=>{try{return(await E.getNodeInfo({verb:E.DesignerRequestVerb.GET_INFO,path:e})).map(a=>{const i=`${e}/${a.name}`,{editor:s,supportedEditors:c}=Sr(`${i}${a.ext?`.${a.ext.toLowerCase()}`:""}`);return{name:a.name,size:a.size,type:a.type,date:`${a.date}`,flags:{},error:null,path:i,ext:a.ext,config:a.type==="folder"?{}:{editor:s,supportedEditors:c}}})}catch{return r("Failed loading file content please Reload")}},{getPendingMeta:()=>{}}),Ja=re("explorer/fetchFolderContentWithoutExpanding",async(e,{rejectWithValue:r})=>{try{return(await E.getNodeInfo({verb:E.DesignerRequestVerb.GET_INFO,path:e})).map(a=>{const i=`${e}/${a.name}`,{editor:s,supportedEditors:c}=Sr(`${i}${a.ext?`.${a.ext.toLowerCase()}`:""}`);return{name:a.name,size:a.size,type:a.type,date:`${a.date}`,flags:{},error:null,path:i,ext:a.ext,config:a.type==="folder"?{}:{editor:s,supportedEditors:c}}})}catch{return r("Failed loading file content please Reload")}},{getPendingMeta:()=>{}});function cD(e){const r=e.split(".");return r.pop(),{name:r.join("."),ext:e.split(".")[e.split(".").length-1]}}const lD=re("explorer/uploadFile",async e=>{const r=e.type.includes("image/")?"$rawPict=true":"$binary=true";try{const t=await fetch(`/rest/$upload?${r}`,{method:"POST",headers:{"Content-Type":e.type},body:e});return{status:t.status,data:await t.json()}}catch{return{status:500,data:null}}}),fD=re("explorer/uploadFile",async({file:e,path:r,parentNode:t},{dispatch:a})=>{const{editor:i,supportedEditors:s}=Sr(r),{name:c,ext:l}=cD(e.name);a(Qg({parent:t,child:{name:c,path:`${r}/${e.name}?t=${Date.now()}`,type:e.type,error:null,flags:{loading:!0},config:{editor:i,supportedEditors:s},ext:l}}));try{const f=await fetch(`/rest/$upload?$sharedFolder=true&$filename=${e.name}&$path=${r}`,{method:"POST",headers:{"Content-Type":e.type},body:e});return f.status>=300?(a(gc({parent:t,child:{name:c,path:`${r}/${e.name}`,type:e.type,error:{message:"error uploading file"},flags:{},config:{editor:i,supportedEditors:s},ext:l}})),f.status!==413&&E.toastSubject.next({message:"error uploading file",kind:"danger"})):await a(Pr(t.path)),{status:f.status,fileName:e.name}}catch{return a(gc({parent:t,child:{name:c,path:`${r}/${e.name}`,type:e.type,error:{message:"error uploading file"},flags:{},config:{editor:i,supportedEditors:s},ext:l}})),E.toastSubject.next({message:"error uploading file",kind:"danger"}),{status:500,fileName:e.name}}}),la=re("explorer/createNewFile",async({fileName:e,type:r,path:t,parentNode:a,content:i},{dispatch:s,rejectWithValue:c,getState:l})=>{const{server:{qodly:f},project:p}=l().settings;try{const h=await E.setFileContent({name:tv(e,r,f),content:i||ev(r,p),path:t,asText:[E.FileFolderType.CLASS,E.FileFolderType.METHOD].includes(r)});return a.error&&(a.flags.expanded?await s(Pr(a.path)):await s(Ja(a.path))),{qodly:f,file:h,parentNode:a}}catch{return c("failed to create folder")}});function nv(e,r){const{qodly:t=!0,withExtension:a=!0}=r||{},i=E.getFileExtentionFromType(e.type,t);let s="";switch(e.type){case E.FileFolderType.WEBFORM:s=`${E.FolderRootPath.WEBFORMS}/${e.name}`;break;case E.FileFolderType.METHOD:s=`${E.FolderRootPath.METHODS}/${e.name}`;break;case E.FileFolderType.CLASS:s=`${E.FolderRootPath.CLASSES}/${e.name}`;break;default:return""}return`${s}${a?`.${i}`:""}`}const dD=re("explorer/createNewFileAndOpen",async(e,{dispatch:r,getState:t})=>{const a=await r(la(e)).unwrap(),{qodly:i}=t().settings.server;if(a){const{file:s}=a,c=nv(s,{withExtension:!1,qodly:i}),{editor:l}=Sr(c);await r(Xa({file:{name:e.fileName,type:s.type,path:c,editor:l,date:new Date().toISOString()}}))}}),li=re("explorer/createNewNode",async({fileName:e,path:r,parentNode:t},{rejectWithValue:a})=>{try{return{file:await E.createFolder({verb:E.DesignerRequestVerb.CREATE_FOLDER,path:`${r}/${e}`,recursive:!0}),parentNode:t}}catch{return E.toastSubject.next({message:"failed to create folder",kind:"danger"}),a("failed to create folder")}}),ts=async(e,r={})=>{try{const t=e.path.split(".").at(-1),a=await E.getNodeInfo({verb:E.DesignerRequestVerb.GET_INFO,path:e.path,content:!0,as:Ah(t)?"json":"text"}),i={editor:e.editor},s=E.getTypeFromExtension(e.path);s===E.FileFolderType.METHOD&&(i.attributes=E.parseAttributes(a.content),a.content=E.addAttributesToContent(a.content,{}));const{content:c,date:l,ext:f}=a;return r.confirmed===void 0&&(r.confirmed=!0),{date:l,view:{panel:{isOpen:!1,type:"",current:""}},flags:{enabled:["WebForm","MForm"].includes(f),confirmed:r.confirmed},extra:i,name:e.name,path:e.path,type:s,initialContent:c,content:c}}catch(t){const{data:a}=t;if(a.__ERROR.find(i=>i.errCode===E.ERROR_CODES.FILE_NOT_FOUND))switch(e.path){case E.ROLES_TAB_PATH:{const i={permissions:{allowed:[]},privileges:[],roles:[]};return{date:new Date().toISOString(),flags:{},extra:{editor:{key:"editors:roles"}},name:"Roles & Privileges",path:e.path,type:E.FileFolderType.ROLES,initialContent:i,content:i}}case E.SETTINGS_TAB_PATH:{const i={};return{date:new Date().toISOString(),flags:{},extra:{editor:{key:"editors:settings"}},name:"Settings",path:e.path,type:E.FileFolderType.SETTINGS,initialContent:i,content:i}}}throw t}},Xa=re("explorer/openFile",async({file:e,inactive:r,isNew:t,flags:a={}},{getState:i,dispatch:s})=>{const{root:{tabs:c},roles:l,debugger:{sessions:f}}=i(),p=c.find(({path:_})=>e.path===_);if(p){const _={...p,extra:{...p==null?void 0:p.extra,editor:e.editor},flags:{...p==null?void 0:p.flags,...a}};return s(jt(_)),_}if(e.path.startsWith("Debugger")){const _=f.find(S=>`Debugger/${S.threadId}`===e.path);if(_){const{source:{content:S},source:T}=_.currentStackFrame,C={name:e.name,type:E.FileFolderType.DEBUGGER,date:new Date().toISOString(),path:e.path,content:S,view:{panel:{isOpen:!1,type:"",current:""}},initialContent:S,flags:{confirmed:!0},extra:{source:T,editor:e.editor}};return s(jt(C)),C}}let h=null;try{h=await ts(e,a)}catch(_){const{data:S}=_;if(S.__ERROR.find(T=>[E.ERROR_CODES.JSON_MALFORMED,E.ERROR_CODES.JSON_MALFORMED_AT_LINE].includes(T.errCode))){const{confirmed:T}=await s(dr({title:"Corrupt file",type:qt.CONFIRM,color:Ir.WARNING,message:"Open in code editor ?"})).unwrap();if(T){const C=await E.getNodeInfo({verb:E.DesignerRequestVerb.GET_INFO,path:e.path,content:!0,as:"text"}),{content:F,date:D,ext:W}=C;h={date:D,view:{panel:{isOpen:!1,type:"",current:""}},flags:{enabled:["WebForm","MForm"].includes(W),confirmed:!0},extra:{editor:E.EDITOR.Code},name:e.name,path:e.path,type:E.getTypeFromExtension(e.path),initialContent:F,content:F}}}}return h&&(e.path===E.ROLES_TAB_PATH&&!l.flags.touched?s(Kc({content:h.content,date:h.date})):e.path===E.SETTINGS_TAB_PATH&&s(es({path:"project",value:h.content})),s((r?Lv:jt)({...h,isNew:t})),h)}),Zc=re("explorer/openFileAtLine",async({file:e},{getState:r,dispatch:t})=>{const{tabs:a}=r().root,i=a.find(({path:c})=>e.path===c);if(i){const c={...i,extra:{...i==null?void 0:i.extra,editor:e.editor}};return t(jt(c)),c}const s=await ts(e);return t(jt(s)),s}),av=re("explorer/injectContentAtLine",async(e,{getState:r,dispatch:t,rejectWithValue:a})=>{const i=r();e.path.split("/").pop();const c=vt(i.explorer,e.path);if(!c)return a(`Error while trying to inject content in file ${e.path}`);const l=await ts({name:c.name,date:c.date||new Date().toISOString(),path:`${c.path}.${c.ext}`,type:E.FileFolderType.CLASS,editor:c.config.editor});return await t(jt(l)),{...e,path:`${c.path}.${c.ext}`}}),ov=re("explorer/openFileAtSelection",async({file:e},{getState:r,dispatch:t})=>{const{tabs:a}=r().root,i=a.find(({path:c})=>e.path===c);if(i){const c={...i,extra:{...i==null?void 0:i.extra,editor:e.editor}};return t(jt(c)),c}const s=await ts(e);return t(jt(s)),s}),yc=re("explorer/deleteFile",async e=>{const{name:r,type:t,path:a,flags:i}=e;if(i.error)return{deleted:!0,node:e};const s=a.split("/");return s.pop(),{deleted:await E.dropFile({root:E.FolderRootType.ROOT,type:rv(t),verb:E.DesignerRequestVerb.DROP,name:r,path:s.join("/")}),node:e}}),pD=re("explorer/deleteFolder",async e=>{const{path:r,flags:t}=e;if(t.error)return{deleted:!0,node:e};const{deleted:a}=await E.removeItem({force:!0,path:r,verb:E.DesignerRequestVerb.REMOVE_ITEM});return{deleted:a,node:e}}),hD=re("explorer/removeFileNode",async(e,{getState:r,dispatch:t})=>{const a=`${e.path}.${e.ext}`;if(await E.removeItem({verb:E.DesignerRequestVerb.REMOVE_ITEM,path:a,force:!0}),e.path==="Classes/DataStore"&&setTimeout(()=>{t(Wn())},ji),e.ext){const{tabs:i}=r().root,s=i.findIndex(c=>c.path===a);s>=0&&t(sl(s))}return{deleted:!0,node:e}}),fa=re("explorer/renameFile",async({file:e,newname:r})=>{if(e.type!=="folder"){const a=e.path.split("/");a.pop();const i=`${a.join("/")}/${e.name}.${e.ext}`,s=`${a.join("/")}/${r}.${e.ext}`;return await E.moveItem({verb:E.DesignerRequestVerb.MOVE_ITEM,path:i,newpath:s}),{old:{...e,path:i},new:{...e,name:r,path:s}}}const t=e.path.split("/");return t.pop(),await E.moveItem({verb:E.DesignerRequestVerb.MOVE_ITEM,path:`${t.join("/")}/${e.name}`,newpath:`${t.join("/")}/${r}`}),{old:e,new:{...e,name:r,path:`${t.join("/")}/${r}`}}}),Za=re("explorer/relocateNode",async({draggedNode:e,newLocation:r},{rejectWithValue:t})=>{try{await E.moveItem({verb:E.DesignerRequestVerb.MOVE_ITEM,path:`${e.path}.${e.ext}`,newpath:`${r.path}/${e.name}.${e.ext}`})}catch{return t("can't move item")}}),fi=re("explorer/duplicateNode",async({node:e,duplicateName:r},{rejectWithValue:t,fulfillWithValue:a,getState:i})=>{const s=e.path.split("/");s.pop();try{const{tabs:c}=i().root,l=c.find(({path:m})=>m===`${e.path}${e.ext?`.${e.ext}`:""}`),f=["4dm","4qm","4qs"].includes(e.ext),{content:p}=l||await E.getNodeInfo({verb:E.DesignerRequestVerb.GET_INFO,path:`${e.path}.${e.ext}`,content:!0,as:f?"text":"json"}),h=await E.setFileContent({name:`${r}.${e.ext}`,content:p,path:s.join("/"),asText:f});return a({node:{...h,path:s.join("/")}})}catch{return t("failed to duplicate file")}}),gD=re("explorer/executeMethod",async({methodName:e,params:r=[],resultingDataSource:t={},namespace:a=""},{rejectWithValue:i})=>{var s,c;try{const f=await window.Method4D.buildMethod({methodName:e,parameters:r,resultingDataSource:t},{namespace:a},null).callServerSide({id:"",serverSideRef:""},"onclick",{});return f!=null&&f.__NOTIFICATION?E.toastSubject.next({message:`${((s=f.__NOTIFICATION)==null?void 0:s.message)||""}`,kind:`${((c=f.__NOTIFICATION)==null?void 0:c.type)||"info"}`}):E.toastSubject.next({message:"Method executed Successfully",kind:"message"}),f}catch(l){return E.toastSubject.next({message:l.message||`Error executing the method "**${e}**"`,kind:"danger",markdown:!0}),i("can't execute method")}}),vD=re("files/fetchFiles",async()=>E.getFolders(E.FolderRootType.WEBFORMS,E.FolderRootType.METHODS,E.FolderRootType.CLASSES)),Qc=re("tabs/renameDatasource",async(e,{dispatch:r,getState:t})=>{var S,T;const a=!!e.datasourceNamespace,{confirmed:i}=await r(dr({message:"Are you sure you want to rename the datasource?",title:"Rename Datasource",type:qt.CONFIRM,color:Ir.WARNING,views:{toggles:{},tips:a?[{type:"warning",message:"The datasource property of components bound with this datasource will also be updated on opened web forms only"},{type:"warning",message:"The origin of some other datasources might be also renamed (if this datasource is the origin of other datasources)"}]:[{type:"warning",message:"The datasource property of components bound with this datasource will also be updated"},{type:"warning",message:"The origin of some other datasources might be also renamed (if this datasource is the origin of other datasources)"}]}})).unwrap();if(!i)return null;const{autoUpdateReferences:s,datasourceId:c,datasourceNamespace:l,value:f,path:p}=e,h=t();let m=[];if(a){const C=h.sharedDatasources.sources[l]||[];m.push(...C)}else if(p){const C=h.root.tabs.find(E.by("path",p));if(m=(T=(S=C==null?void 0:C.content)==null?void 0:S.metadata)==null?void 0:T.datasources,!m)return null}const _=new RegExp(`^${c}\\b`,"");if(m=m.map(C=>{const F=(E.isObjectDatasource(C)||!E.isSimpleDatasource(C))&&C.from&&_.test(C.from),D=C.events?C.events.map(W=>{var $,j,A,K;switch(W==null?void 0:W.type){case"method":{const G=W;return G.params?{...G,params:G.params.map(Y=>{var se;return{...Y,datasource:(se=Y.datasource)==null?void 0:se.replace(new RegExp(`^${c}`,""),f)}}),returns:($=G.returns)!=null&&$.datasource?{...G.returns,datasource:(j=G.returns.datasource)==null?void 0:j.replace(new RegExp(`^${c}`,""),f)}:G.returns}:G}case"simple-action":{const G=W;return G.datasource?{...G,datasource:{...G.datasource,name:(A=G.datasource.name)==null?void 0:A.replace(new RegExp(`^${c}`,""),f),from:(K=G.datasource.from)==null?void 0:K.replace(new RegExp(`^${c}`,""),f)}}:G}default:return W}}):C.events;return C.id===c?{...C,id:f,events:D}:F&&C.from?{...C,from:C.from.replace(new RegExp(`^${c}`,""),f),events:D}:{...C,events:D}}),s){const C=a?`${l}:${c}`:`${c}`,F=a?`${l}:${f}`:`${f}`;E.datasourcesSubject.next({path:p??"",action:E.DatasourcesActions.RENAME,old_reference:C,new_reference:F,is_shared:a})}return{path:p,namespace:l,datasources:m}}),el=re("tabs/edit-datasource",(e,{getState:r})=>{var s,c;const t=r();let a=[];if(e.namespace)a=t.sharedDatasources.sources[e.namespace];else{const l=t.root.tabs.find(E.by("path",e.path));l&&(a=((c=(s=l.content)==null?void 0:s.metadata)==null?void 0:c.datasources)||[])}return a.map(l=>l.id===e.datasourceId?Object.assign({},l,{[e.propertyKey]:e.value}):l)}),iv=re("tabs/fetchChanges",async(e,{getState:r})=>{const a=Ea(r()).filter(i=>[E.FileFolderType.METHOD,E.FileFolderType.CLASS].includes(i.type));return E.getFilesInfo(...a.map(i=>{const[s]=i.path.split("/").filter(Boolean);return{name:i.name,type:i.type,root:s,path:"."}}))}),yD=re("files/saveAll",async(e,{getState:r,dispatch:t})=>{const a=jc(r());for(const i of a)t(da({tab:i}))}),tl=re("files/tryCloseTab",async(e,{getState:r,dispatch:t})=>{const{tabs:a}=r().root,i=a.findIndex(c=>c.path===e);if(i===-1)return!1;const s=a[i];if(s!=null&&s.flags.touched){const{confirmed:c}=await t(dr({title:ki(s),message:"Your unsaved changes will be lost. Proceed anyway?",type:qt.CONFIRM,color:Ir.WARNING,icon:"FdWarningDanger"})).unwrap();if(!c)return!1}return t(sl(i)),s.path===E.ROLES_TAB_PATH&&s.flags.touched&&(async()=>{const l=await E.getNodeInfo({verb:E.DesignerRequestVerb.GET_INFO,path:E.ROLES_TAB_PATH,content:!0,as:"json"});t(Kc({content:l.content,date:l.date}))})(),!0}),mD=re("files/tryCloseOtherTabs",async(e,{getState:r,dispatch:t})=>{const{tabs:a}=r().root;if(a.some(s=>s.path!==e&&s.flags.touched===!0)){const{confirmed:s}=await t(dr({title:"Closing other tabs",message:"Your changes will be lost if you do not save them. Close anyway?",type:qt.CONFIRM,color:Ir.WARNING,icon:"FdWarningDanger"})).unwrap();if(!s)return}t($v(e))}),bD=re("files/tryCloseAllTabs",async(e,{getState:r,dispatch:t})=>{const{tabs:a}=r().root;if(a.some(s=>s.flags.touched===!0)){const{confirmed:s}=await t(dr({title:"Closing all tabs",message:"Your changes will be lost if you do not save them. Close anyway?",type:qt.CONFIRM,color:Ir.WARNING,icon:"FdWarningDanger"})).unwrap();if(!s)return}t(Iv())}),_D=re("files/tryCloseRightTabs",async(e,{getState:r,dispatch:t})=>{const{tabs:a}=r().root;let i=!1;for(let s=a.length-1;s>e;s-=1)if(a[s].flags.touched){i=!0;break}if(i){const{confirmed:s}=await t(dr({title:"Closing right tabs",message:"Your changes will be lost if you do not save them. Close anyway?",type:qt.CONFIRM,color:Ir.WARNING,icon:"FdWarningDanger"})).unwrap();if(!s)return}t(Fv(e))}),ED=re("files/tryCloseLeftTabs",async(e,{getState:r,dispatch:t})=>{const{tabs:a}=r().root;let i=!1;for(let s=0;s<e;s+=1)if(a[s].flags.touched){i=!0;break}if(i){const{confirmed:s}=await t(dr({title:"Closing left tabs",message:"Your changes will be lost if you do not save them. Close anyway?",type:qt.CONFIRM,color:Ir.WARNING,icon:"FdWarningDanger"})).unwrap();if(!s)return}t(Mv(e))}),mc=re("files/reloadTab",async(e,{dispatch:r})=>{if(e.flags.touched){const{confirmed:i}=await r(dr({title:ki(e),message:"Changes made to the file will be lost. Continue?",type:qt.CONFIRM,color:Ir.WARNING,icon:"FdWarningDanger"})).unwrap();if(!i)return}const t=Xh(e.path),a=await E.getNodeInfo({verb:E.DesignerRequestVerb.GET_INFO,path:e.path,content:!0,as:t});if(e.path===E.ROLES_TAB_PATH){const{roles:i,privileges:s}=Zi(a.content);r(Jc({roles:i,privileges:s}))}else if(e.path===E.SETTINGS_TAB_PATH){const{content:i}=a;r(es({path:"project",value:i}))}else{const{content:i}=a;e.type===E.FileFolderType.WEBFORM?E.webformSubject.next({path:e.path,action:E.WebformActions.RELOAD,payload:i.components}):e.type===E.FileFolderType.MODEL&&ag.next({action:"reload",payload:i})}return a}),da=re("files/saveTab",async({tab:e},{dispatch:r,getState:t})=>{const{path:a,content:i}=e;if(e.type===E.FileFolderType.DEBUGGER)return{...e,errors:[]};a.split("/").pop();const c=await E.getFilesInfo({path:a});if(c.files[0]){const h=new Date(e.date),m=new Date(c.files[0].date);if(h.getTime()<m.getTime()){const{confirmed:_}=await r(dr({title:ki(e),message:"New content has been found on the server. Are you sure you want to continue?",type:qt.CONFIRM,icon:"FdSave"})).unwrap();if(!_)return r(Dv({path:a,flags:{old:!0}})),null}}const l=await E.saveContent({verb:E.DesignerRequestVerb.SAVE_CONTENT,content:SD(e,t()),path:a});(e.type===E.FileFolderType.CLASS||e.type===E.FileFolderType.MODEL)&&setTimeout(()=>{r(Wn())},ji);const f=(l.modelErrors||[]).map(h=>h.message),p=(l.permissionsErrors||[]).map(h=>h.message);return{...e,content:i,date:l.date,initialContent:i,errors:f.length>0||p.length>0?[{title:"Model errors",messages:f},{title:"Permissions errors",messages:p}]:[]}}),SD=(e,r)=>{switch(!0){case e.path==="settings.json":case e.path===E.SETTINGS_TAB_PATH:return r.settings.project;case e.type===E.FileFolderType.ROLES:return{...e.content,...Qi(r.roles)};case e.type===E.FileFolderType.MODEL:return e.content||{toJSON:!0,dataClasses:[],extraProperties:{}};default:return e.content}},Vp=async e=>{if(e.type===E.FileFolderType.DATA_EXPLORER)return{name:"Data Explorer",path:e.path,flags:{},view:{panel:{isOpen:!1,type:"",current:""}},type:e.type,date:new Date().toISOString()};const r=e.path.split("/").filter(Boolean)[0],t=await E.getFile({root:r,type:e.type,verb:E.DesignerRequestVerb.GET,name:e.name}),a={};t.type===E.FileFolderType.METHOD&&(a.attributes=E.parseAttributes(t.content));const{date:i,name:s,type:c,content:l}=t;return{date:i,flags:{enabled:e.type===E.FileFolderType.WEBFORM},extra:a,view:{panel:{isOpen:!1,type:"",current:""}},name:s,path:e.path,type:c,initialContent:l,content:c===E.FileFolderType.MODEL?Oh(l):l}},sv=re("files/tryInjectMethod",async({type:e,dataclass:r},{getState:t,dispatch:a})=>{const{root:{tabs:i},settings:{server:{qodly:s}}}=t(),c=E.getFileExtentionFromType("class",s);let l="",f="",p=null;if(!r)l="DataStore",f=`Classes/DataStore.${c}`;else switch(e){case"dataclass":l=r,f=`Classes/${r}.${c}`;break;case"collection":l=`${r}Selection`,f=`Classes/${r}Selection.${c}`;break;case"entity":l=`${r}Entity`,f=`Classes/${r}Entity.${c}`;break;default:return p}const h=i.find(E.by("path",f));if(h)return a(jt(h)),h;try{p=await Vp({name:l,date:new Date().toISOString(),path:`class/${l}.${c}`,type:E.FileFolderType.CLASS})}catch{r?await a(vc({type:"dataclass",className:r,collectionName:`${r}Selection`,toCreate:e})):await a(vc({type:"model"}))}return p=await Vp({name:l,date:new Date().toISOString(),path:`class/${l}.${c}`,type:E.FileFolderType.CLASS}),p.path=f,a(jt(p)),p}),wD=re("roles/open",async(e,{dispatch:r,getState:t})=>{const{tabs:a}=t().root,i=a.find(s=>s.path===E.ROLES_TAB_PATH);if(i)return r(jt(i)),i;r(Di())});function Kp(e,r){const{line:t,offset:a,type:i="saved"}=r;e.breakpoints[i].locations.push({line:t}),Ke.isNumber(a)&&(e.breakpoints[i].offset=a)}function Jp(e,r,t,a){e.breakpoints[t].locations=r,Ke.isNumber(a)&&(e.breakpoints[t].offset=a)}function Xp({filePath:e,fileType:r,methodName:t,className:a,ext:i,source:s}){return{filePath:e,fileType:r,methodName:t,className:a,ext:i,source:s,breakpoints:{draft:{locations:[],offset:0},saved:{locations:[],offset:0}}}}function Zp(e,r,t){let a=!1;const i=e.map(s=>s[t]!==r[t]?s:(a=!0,{...s,...r}));return a?i:[...i,r]}function ii(e){return e.map(({label:r})=>({label:r}))}const uv=fr({name:"debugger",initialState:()=>{var r,t;const{debugger:e={meta:{state:qr.DETACHED},list:[],sessions:[],expressions:[]}}=ga();return{meta:{...e.meta,state:((r=e.meta)==null?void 0:r.state)===qr.ATTACHED?(t=e.meta)==null?void 0:t.state:qr.DETACHED},list:e.list||[],sessions:e.sessions||[],expressions:e.expressions||[]}},reducers:{addBreakpointDecoration(e,r){const{filePath:t,fileType:a,methodName:i,className:s,ext:c,source:l,breakpoint:f}=r.payload,p=Bn(e.list,t,i,s);if(p)Kp(p,f);else{if(a===E.FileFolderType.CLASS&&f.offset===void 0)throw new Error(`Cannot add a breakpoint on a function without offset. Try editing the ${s} class.`);const h=Xp({filePath:t,fileType:a,methodName:i,className:s,ext:c,source:l});Kp(h,f),e.list.push(h)}},removeBreakpointDecoration(e,r){const{filePath:t,methodName:a,line:i,offset:s=0,type:c="saved"}=r.payload;if(t.startsWith("Classes/")){const l=e.list.filter(f=>f.filePath===t);if(l.length>0){const f=i+s;l.forEach(p=>{const h=p.breakpoints[c].offset||0;p.breakpoints[c].locations=p.breakpoints[c].locations.filter(m=>m.line+h!==f),c==="saved"&&(p.breakpoints.draft.locations=p.breakpoints.draft.locations.filter(m=>m.line+h!==f))})}}else{const l=Bn(e.list,t,a);l&&(l.breakpoints[c].locations=l.breakpoints[c].locations.filter(f=>f.line!==i),c==="saved"&&(l.breakpoints.draft.locations=l.breakpoints.draft.locations.filter(f=>f.line!==i)))}},setBreakpointsDecoration(e,r){const{filePath:t,fileType:a,methodName:i,className:s,ext:c,source:l,breakpoints:f,offset:p,type:h="saved",clearDraft:m}=r.payload,_=Bn(e.list,t,i);if(_)Jp(_,f,h,p),m&&h!=="draft"&&(_.breakpoints.draft.locations=[]);else{const S=Xp({filePath:t,fileType:a,methodName:i,className:s,ext:c,source:l});Jp(S,f,h,p),e.list.push(S)}},clearBreakpoints(e,r){const{filePath:t,type:a="saved"}=r.payload;e.list=e.list.map(i=>({...i,breakpoints:i.filePath===t?{draft:!a||a==="draft"?{locations:[],offset:0}:i.breakpoints.draft,saved:!a||a==="saved"?{locations:[],offset:0}:i.breakpoints.saved}:i.breakpoints}))},setActiveLine(e,r){const{threadId:t,line:a,highlight:i}=r.payload,s=ft(e.sessions,t);s&&(s.activeLine=a,i&&(s.highlightedLines={start:a,end:a}))},addExpression(e,r){const{threadId:t,label:a,save:i}=r.payload,s=ft(e.sessions,t);s&&s.stopped&&(s.expressions=[...s.expressions||[],{label:a}],i&&(e.expressions=ii(s.expressions)))},removeExpression(e,r){const{threadId:t,index:a,save:i}=r.payload,s=ft(e.sessions,t);s&&(s.expressions=s.expressions.filter((c,l)=>l!==a),i&&(e.expressions=ii(s.expressions)))},removeAllExpressions(e,r){const{threadId:t,save:a}=r.payload,i=ft(e.sessions,t);i&&(i.expressions=[],a&&(e.expressions=[]))},renameExpression(e,r){const{threadId:t,index:a,replacement:i,save:s}=r.payload,c=ft(e.sessions,t);c&&c.expressions[a]&&(c.expressions[a].label=i,s&&(e.expressions=ii(c.expressions)))},setExpression(e,r){const{threadId:t,expression:a}=r.payload,i=ft(e.sessions,t);if(i){const s=a.index>=0?a.index:i.expressions.length>0?i.expressions.length-1:0,c=i.expressions[s];c?(c.result=a.result,c.nakedResult=a.nakedResult,c.variablesReference=a.variablesReference||0,c.presentationHint=a.presentationHint):i.expressions.push(a)}},updateExpressionAt(e,r){const{threadId:t,index:a,value:i}=r.payload,s=ft(e.sessions,t);if(s){const c=s.expressions[a];c&&(c.result=`"${i}"`,c.nakedResult=i)}},saveExpressions(e,r){const{expressions:t}=r.payload;e.expressions=ii(t)},addSession(e,r){const{threadId:t,channelId:a,stackFrames:i,exceptions:s=[]}=r.payload,c=ft(e.sessions,t),l=i[0],{expressions:f=[]}=e;if(c)c.expressions=f;else{const p=Fc(t);e.sessions.push({tabPath:p,threadId:t,channelId:a,stackFrames:i,currentStackFrame:l,exceptions:s,expressions:f,variables:{callchain:[],expressions:[]},highlightedLines:null,activeLine:null,stopped:!0})}},updateSession(e,r){const{threadId:t,changes:a}=r.payload;e.sessions=e.sessions.map(i=>i.threadId===t?{...i,...a}:i)},removeSession(e,r){const{threadId:t}=r.payload;e.sessions=e.sessions.filter(a=>a.threadId!==t)},removeSessionByIndex(e,r){const t=r.payload;e.sessions.splice(t,1)},setSessions(e,r){const t=r.payload;e.sessions=t},setCallChainVariables(e,r){const{threadId:t,frameId:a,variables:i}=r.payload;e.sessions=e.sessions.map(s=>{var c;return s.threadId===t?{...s,variables:{...s.variables,callchain:Zp((c=s.variables)==null?void 0:c.callchain,{frameId:a,items:i},"frameId")}}:s})},setExpressionVariables(e,r){const{threadId:t,variablesReference:a,variables:i}=r.payload;e.sessions=e.sessions.map(s=>{var c;return s.threadId===t?{...s,variables:{...s.variables,expressions:Zp((c=s.variables)==null?void 0:c.expressions,{variablesReference:a,items:i},"variablesReference")}}:s})},setSourceContent(e,r){const{threadId:t,content:a}=r.payload,i=ft(e.sessions,t);i&&(i.currentStackFrame.source={...i.currentStackFrame.source,content:a})},setDebuggerMeta(e,r){if(r.payload.state===qr.ERROR){e.meta.error={...e.meta.error,time:Date.now()};const{override:t,error:a={code:null,reason:"",type:Ei.SOCKET_ERROR}}=r.payload;if((t||e.meta.state!==qr.ERROR)&&(e.meta.error={...e.meta.error,...a}),(a==null?void 0:a.type)===Ei.SOCKET_CLOSURE&&!(a!=null&&a.reason)&&e.meta.state===qr.DETACHED)return}e.meta.state=r.payload.state}},extraReducers:e=>{e.addCase(lv.fulfilled,r=>{r.sessions=[]})}}),{addBreakpointDecoration:TD,removeBreakpointDecoration:xD,setBreakpointsDecoration:CD,clearBreakpoints:RD,setActiveLine:OD,addExpression:AD,renameExpression:PD,removeExpression:DD,removeAllExpressions:ID,setExpression:FD,updateExpressionAt:$D,saveExpressions:MD,addSession:ND,updateSession:LD,removeSession:jD,removeSessionByIndex:kD,setSessions:cv,setCallChainVariables:BD,setExpressionVariables:WD,setSourceContent:UD,setDebuggerMeta:HD}=uv.actions,lv=re("files/wipeDebuggerSessions",async(e,{getState:r,dispatch:t})=>{const{sessions:a}=r().debugger;for(const{threadId:i}of a){const s=Fc(i);t(tl(s))}}),fv=re("files/removeDebuggerSessionsNotIn",async(e,{getState:r,dispatch:t})=>{const{threadIds:a}=e,{sessions:i}=r().debugger,s=[],c=i.filter(l=>{const f=a.includes(l.threadId);return f||s.push(l.threadId),f});return t(cv(c)),{staleThreadIds:s}});var rl=(e=>(e.UUID="uuid",e.STRING="string",e.TEXT="text",e.DATE="date",e.TIME="duration",e.BOOLEAN="bool",e.BYTE="byte",e.INTEGER="word",e.LONG="long",e.LONG64="long64",e.FLOAT="number",e.BLOB="blob",e.IMAGE="image",e.OBJECT="object",e))(rl||{}),zr=(e=>(e.STORAGE="storage",e.RELATEDENTITY="relatedEntity",e.RELATEDENTITIES="relatedEntities",e.CALCULATED="calculated",e.COMPOSITION="composition",e.ALIAS="alias",e))(zr||{});const GD=e=>["string","uuid","number","long"].includes(e.type),qD=[{label:"Storage",value:"storage"},{label:"Calculated",value:"calculated"}],YD=[{title:"UUID",kind:"storage",value:"uuid",calculatedType:"uuid",calculatedKind:"storage"},{title:"Long",kind:"storage",value:"long",calculatedType:"long",calculatedKind:"storage"}],zD=[{title:"String",kind:"storage",value:"string",calculatedType:"string",calculatedKind:"storage"},{title:"Text",kind:"storage",value:"text",calculatedType:"text",calculatedKind:"storage"},{title:"UUID",kind:"storage",value:"uuid",calculatedType:"uuid",calculatedKind:"storage"},{title:"Date",kind:"storage",value:"date",calculatedType:"date",calculatedKind:"storage"},{title:"Duration",kind:"storage",value:"duration",calculatedType:"duration",calculatedKind:"storage"},{title:"Bool",kind:"storage",value:"bool",calculatedType:"bool",calculatedKind:"storage"},{title:"Byte",kind:"storage",value:"byte",calculatedType:"byte",calculatedKind:"storage"},{title:"Word",kind:"storage",value:"word",calculatedType:"word",calculatedKind:"storage"},{title:"Number",kind:"storage",value:"number",calculatedType:"number",calculatedKind:"storage"},{title:"Long",kind:"storage",value:"long",calculatedType:"long",calculatedKind:"storage"},{title:"Object",kind:"storage",value:"object",calculatedType:"object",calculatedKind:"storage"},{title:"Image",kind:"storage",value:"image",calculatedType:"image",calculatedKind:"storage"},{title:"Blob",kind:"storage",value:"blob",calculatedType:"blob",calculatedKind:"storage"}],VD=[{label:"Expose as REST",value:"public"},{label:"Do not expose as REST",value:"publicOnServer"}],KD=[{label:"Expose as REST",value:"public"},{label:"Do not expose as REST",value:"publicOnServer"}],JD=[{label:"None",value:"none"},{label:"B-tree",value:"btree"},{label:"Cluster",value:"cluster"},{label:"Automatic",value:"auto"}],dv=Lt("model/add-dataclass"),pv=Lt("model/rename-dataclass"),hv=Lt("model/remove-dataclass"),gv=Lt("model/add-attribute"),XD=Lt("model/edit-attribute-property"),vv=Lt("model/remove-attribute"),yv=Lt("model/rename-attribute"),mv=Lt("model/edit-primary-key"),ZD=Lt("model/edit-dataclass-property"),bv=Lt("model/rename-collection"),QD=(e,r)=>({toJSON:!0,extraProperties:r,dataClasses:e.map(t=>{var a;return{...t.data,extraProperties:{position:{x:t.position.x,y:t.position.y},panelColor:(a=t.data.extraProperties)==null?void 0:a.panelColor}}})});function di(e,r,t){const a=e;let i=0;for(;t[`${a}${i||""}`];)i++;return`${a}${i||""}`}const Qa=e=>e.kind===zr.RELATEDENTITY,Ii=e=>e.kind===zr.RELATEDENTITIES,eI=e=>Ii(e)||Qa(e),nl=re("models/fetch",async()=>{try{return(await E.http(E.API_PREFIX,{method:"POST",body:JSON.stringify({verb:E.DesignerRequestVerb.GET_INFO,path:E.MODEL_TAB_PATH,as:"json",content:!0}),headers:new Headers({"Content-Type":"application/json"})})).content}catch(e){return e.message}}),Fi=re("models/save",async(e,{getState:r,dispatch:t,rejectWithValue:a})=>{const{tabs:i}=r().root,s=i.find(c=>c.path===E.MODEL_TAB_PATH);if(!s)return a("Error while saving the model");try{const c=await E.http(E.API_PREFIX,{method:"POST",body:JSON.stringify({verb:"save",path:s.path,content:s.content}),headers:new Headers({"Content-Type":"application/json"})});return setTimeout(()=>{t(Wn())},ji),{...c,path:s.path,content:e.content||{toJSON:!0,dataClasses:[],extraProperties:{}}}}catch{return a("Error while saving the model")}}),tI=re("models/open",async(e,{dispatch:r,getState:t})=>{const{tabs:a}=t().root,i=a.find(s=>s.path==="models/main");if(i)return r(jt(i)),i;r(nl())}),rI=re("model/rename-dataclass",async(e,{getState:r,dispatch:t})=>{var m,_;const{dataclassId:a,selectionId:i,name:s}=e;let c=r();const l=c.explorer.find(S=>S.path===E.FolderRootPath.CLASSES);if(!l)throw new Error("Classes folder was not found!");await t(Pr(l.path)),c=r();const f={class:{found:!1,newNameTaken:!1,file:null,filename_update:s},entity:{found:!1,newNameTaken:!1,file:null,filename_update:`${s}Entity`},selection:{found:!1,newNameTaken:!1,file:null,filename_update:`${s}Selection`}};(_=(m=c.explorer.find(S=>S.path===E.FolderRootPath.CLASSES))==null?void 0:m.children)==null||_.forEach(S=>{S.name===f.class.filename_update&&(f.class.newNameTaken=!0),S.name===f.entity.filename_update&&(f.entity.newNameTaken=!0),S.name===f.selection.filename_update&&(f.selection.newNameTaken=!0),S.name===a?(f.class.found=!0,f.class.file=S):S.name===`${a}Entity`?(f.entity.found=!0,f.entity.file=S):S.name===i&&(f.selection.found=!0,f.selection.file=S)});const p=Object.entries(f).reduce((S,T)=>{const[C,F]=T;return F.found?F.newNameTaken?[...S,{type:"error",message:`Cannot rename ${C} file to ${F.filename_update} because it already exists. The existing file will be used instead!`}]:S:[...S,{type:"warning",message:`${a} ${C} file was not found`}]},[]);p.length>0&&t(dr({message:"The following errors were encountered during dataclass rename:",views:{tips:p}}));const h=Object.values(f).filter(S=>S.found&&S.file&&!S.newNameTaken);await Promise.all(h.map(async S=>await t(fa({file:S.file,newname:S.filename_update})))),h.length>0&&t(Pr("Classes"))}),oo={DATACLASS_DELETE:"dataclass.delete",DATACLASS_DRAGGABLE:"dataclass.draggable"},nI={model:{dataClasses:{},collections:{},extraProperties:{}},draft:{dataClasses:{},collections:{},extraProperties:{}},flags:{[oo.DATACLASS_DELETE]:!0,[oo.DATACLASS_DRAGGABLE]:!0}},_v=fr({name:"Models",initialState:nI,reducers:{setModelFlag(e,r){e.flags={...e.flags,...r.payload}}},extraReducers(e){e.addCase(dv,({draft:{dataClasses:r}},t)=>{var c,l;const{dataclassID:a}=t.payload,i=di(a||"DataClass","className",r),s={className:i,collectionName:`${i}Selection`,attributes:[{name:"ID",kind:zr.STORAGE,type:rl.LONG,scope:"public",indexKind:"auto",unique:!0,primKey:!0,autosequence:!0}],name:i,scope:"public",extraProperties:{position:{x:((c=t.payload.position)==null?void 0:c.x)||0,y:((l=t.payload.position)==null?void 0:l.y)||0}}};r[s.name]=s}).addCase(hv,({draft:{dataClasses:r}},t)=>{const{dataclassID:a}=t.payload;r[a]&&(delete r[a],Object.values(r).forEach(s=>{s.attributes=s.attributes.filter(c=>c.type!==a&&c.type!==s.collectionName)}))}).addCase(pv,({draft:{dataClasses:r,collections:t}},a)=>{const{dataclassID:i,newName:s}=a.payload;if(!r[i]||r[s])return;const c=r[i].collectionName,l=di(`${s}Selection`,"collectionName",t);Object.values(r).forEach(f=>{f.className===i&&(f.className=s,f.name=s,f.collectionName=l),f.attributes.forEach(p=>{p.type===i?(p.type=s,p.path=s):p.type===c&&(p.type=l)})})}).addCase(gv,({draft:{dataClasses:r}},t)=>{const{dataclassID:a,attributeName:i,attributeType:s,attributeKind:c,target:l}=t.payload;if(!r[a]||E.exists("name",i,r[a].attributes))return;const p={name:i,kind:c,type:s,exposed:!0,scope:"public"};if(c===zr.RELATEDENTITY){if(!r[s])return;p.path=s;const m={name:di(r[s].collectionName,"name",r[s].attributes),type:r[a].collectionName,kind:zr.RELATEDENTITIES,reversePath:!0,path:i,scope:"public",exposed:!0};r[s].attributes.push(m)}else if(c===zr.RELATEDENTITIES){const h=r[s];if(!h)return;const m=h.attributes.find(E.by("name",l));if(m){if(!Qa(m)||m.type!==r[a].className)return}else{p.path=l,p.reversePath=!0,p.type=s;const _={name:l,kind:zr.RELATEDENTITY,scope:"public",path:h.className,type:h.className,exposed:!0};h.attributes.push(_)}}r[a].attributes.push(p)}).addCase(yv,({draft:{dataClasses:r}},t)=>{const{dataclassID:a,attributeID:i,newName:s}=t.payload,c=r[a].attributes.find(E.by("name",i)),l=r[a].attributes.find(E.by("name",s));!c||l||Object.values(r).forEach(({collectionName:f,attributes:p,className:h})=>{p.forEach(m=>{Qa(c)&&Ii(m)&&m.type===f&&m.path===i&&(m.path=s),h===a&&m.name===i&&(m.name=s)})})}).addCase(vv,({draft:{dataClasses:r}},t)=>{const{dataclassID:a,attributeID:i}=t.payload;if(!r[a])return;const s=r[a].attributes.find(E.by("name",i));s&&(Qa(s)&&Object.values(r).forEach(c=>{c.attributes=c.attributes.filter(l=>!(Ii(l)&&l.type===c.collectionName&&l.path===s.name))}),r[a].attributes=r[a].attributes.filter(E.outBy("name",i)))}).addCase(bv,({draft:{dataClasses:r,collections:t}},a)=>{const{dataclassID:i,collectionName:s}=a.payload;if(!r[i])return;const c=r[i].collectionName;t[s]||(r[i].collectionName=s,t[s]=r[i],delete t[c],Object.values(r).forEach(l=>l.attributes.forEach(f=>{f.type===c&&(f.type=s)})))}).addCase(mv,({draft:{dataClasses:r}},t)=>{const{dataclassID:a,newPrimKey:i}=t.payload;r[a]&&r[a].attributes.forEach(s=>{s.name===i?s.primKey=!0:s.primKey=!1})}),e.addCase(nl.fulfilled,(r,t)=>{var c;const a={},i={},s=t.payload.extraProperties||{};(c=t.payload.dataClasses)==null||c.forEach(l=>{a[l.name]=l,i[l.collectionName]=l}),r.draft.dataClasses=a,r.draft.collections=i,r.draft.extraProperties=s,r.model.dataClasses=a,r.model.collections=i,r.model.extraProperties=s}),e.addCase(Fi.pending,()=>{}).addCase(Fi.fulfilled,(r,t)=>{const a={},i={},s=t.payload.content.extraProperties||{};t.payload.content.dataClasses.forEach(c=>{a[c.name]=c,i[c.collectionName]=c}),r.draft.dataClasses=a,r.draft.collections=i,r.draft.extraProperties=s,r.model.dataClasses=a,r.model.collections=i,r.model.extraProperties=s})}}),{setModelFlag:aI}=_v.actions,oI=()=>Qr(e=>e.model.draft.dataClasses),iI=()=>Qr(e=>e.model.draft.collections),sI=e=>Qr(r=>r.model.draft.dataClasses[e]),uI=(e,r)=>Qr(t=>t.model.draft.dataClasses[e].attributes.find(E.by("name",r))),cI=()=>Qr(e=>e.model.draft.extraProperties),lI=()=>{const e=Qr(i=>i.model.flags),r=i=>i in e?e[i]:void 0,t=r(oo.DATACLASS_DELETE),a=r(oo.DATACLASS_DRAGGABLE);return{deleteDataclass:t,draggableDataclass:a,flags:e}},fI=_v.reducer;function Hu(e,r){const t=e.tabs.find(({path:a})=>a===E.SETTINGS_TAB_PATH);t&&(t.flags.touched=r)}const Ev={SIDEBAR_SECTION_RESIZABLE:"sidebar.section.resizable"},Sv={[Ev.SIDEBAR_SECTION_RESIZABLE]:!0},wv=fr({name:"webforms",initialState:()=>{const{webforms:e}=ga();return{...e,templates:{data:[],selectedGroup:""},datasources:{...Dc.webforms.datasources,...e==null?void 0:e.datasources},flags:Sv}},reducers:{toggleInspector:(e,r)=>{const{type:t}=r.payload;e.inspector[t].active=!e.inspector[t].active,e.inspector[t].active||(e.inspector[t].data=void 0)},inspect:(e,r)=>{const{type:t,data:a}=r.payload;e.inspector[t].active&&(e.inspector[t].data=a)},addComponent:(e,r)=>{e.components.push(r.payload)},editComponent:(e,r)=>{const{id:t,changes:a}=r.payload;e.components=e.components.map(i=>i.id===t?{...i,...a}:i)},removeComponent:(e,r)=>{const{payload:t}=r,a=e.components.findIndex(i=>i.id===t);a!==-1&&e.components.splice(a,1)},setSelectedGroup:(e,r)=>{e.templates.selectedGroup=r.payload.selectedGroup},setTemplatesData:(e,r)=>{e.templates.data=r.payload},setTemplateData:(e,r)=>{const{group:t,components:a}=r.payload,i=e.templates.data.find(s=>s.group===t);i&&(i.components=a)},setDatasourcesTheme:(e,r)=>{e.datasources.theme=r.payload},setWebformsFlag(e,r){e.flags={...e.flags,...r.payload}}},extraReducers(e){e.addCase(Av.fulfilled,(r,t)=>{r.components=t.payload})}}),{toggleInspector:dI,inspect:pI,addComponent:Tv,editComponent:xv,removeComponent:Cv,setSelectedGroup:hI,setTemplatesData:Rv,setTemplateData:Ov,setDatasourcesTheme:gI,setWebformsFlag:vI}=wv.actions,yI=wv.reducer,al=Ke.curry((e,r)=>{var i,s;const t={...r.sharedDatasources.sources},a=(s=((i=r.root.tabs.find(E.by("path",e)))==null?void 0:i.content).metadata)==null?void 0:s.datasources;return a&&(t[e]=a),Ke.cloneDeep(t)}),mI=re("webforms/fetchTemplates",async(e,{dispatch:r,getState:t})=>{const{data:a}=t().webforms.templates,i=t().settings.session["studio.tipsBaseUrl"]||"";if(!Ke.isEmpty(a))return a;try{const c=await(await fetch(`${i}/build/index.json?t=${Date.now()}`)).json();return r(Rv(c)),c}catch{return[]}}),bI=re("webforms/fetchTemplate",async({name:e},{dispatch:r,getState:t})=>{const{data:a}=t().webforms.templates,i=a.find(s=>s.group===e);if(i&&!Ke.isEmpty(i.components))return i.components;try{const c=await(await fetch(`${i==null?void 0:i.link}?t=${Date.now()}`)).json();return r(Ov({group:e,components:c})),c}catch{return[]}}),Av=re("webforms/fetchCraftedComponents",async(e,{rejectWithValue:r})=>{try{return(await E.getNodeInfo({path:"WebForms/crafted_components.json",verb:E.DesignerRequestVerb.GET_INFO,content:!0,as:"json"})).content}catch{return r("Error while loading the crafted components")}}),_I=re("webforms/addCraftedComponent",async(e,{dispatch:r,rejectWithValue:t,getState:a})=>{try{r(Tv(e));const{webforms:{components:i}}=a();E.setCraftedComponents(i)}catch{return t("Error while adding the crafted component")}}),EI=re("webforms/editCraftedComponent",async(e,{dispatch:r,rejectWithValue:t,getState:a})=>{try{r(xv(e));const{webforms:{components:i}}=a();E.setCraftedComponents(i)}catch{return t("Error while editing the crafted component")}}),SI=re("webforms/removeCraftedComponent",async(e,{dispatch:r,rejectWithValue:t,getState:a})=>{try{r(Cv(e));const{webforms:{components:i}}=a();E.setCraftedComponents(i)}catch{return t("Error while removing the crafted component")}}),ol=re("datasources/add-datasource",async(e,{getState:r,rejectWithValue:t})=>{var a,i;try{const s=r(),c=e.datasource,l=!!c.namespace,f=[];if(l){const p={...s.sharedDatasources.sources,[c.namespace]:[...s.sharedDatasources.sources[c.namespace],c]};f.push(...p[c.namespace]),await E.setSharedSources(p)}else(((i=(a=s.root.tabs.find(E.by("path",e.path)).content)==null?void 0:a.metadata)==null?void 0:i.datasources)||[]).push(c);return{list:f,path:e.path,namespace:e.datasource.namespace}}catch{console.error("Error while adding the datasource",e.datasource.id),t("Error while adding the datasource")}}),il=re("datasources/edit-datasource",async(e,{getState:r,rejectWithValue:t})=>{try{const{namespace:a,path:i}=e,s=r(),c=!!e.namespace,l=al(i,s);let f=Ke.defaultTo(l[a||i],[]);return f=f.map(p=>p.id===e.id?{...p,[e.property]:e.value}:p),c&&await E.setSharedSources({...s.sharedDatasources.sources,[e.namespace]:f}),{list:f,path:e.path,namespace:e.namespace}}catch{t(`Error while editing datasource ${e.id}`)}}),wI=e=>e.type===pa.fulfilled.type,pa=re("datasources/rename-datasource",async(e,{getState:r,rejectWithValue:t})=>{try{const a=r(),i=!!e.namespace,s=e.namespace||e.path,c=al(e.path,a),l=Ke.defaultTo(c[s],[]),f=new RegExp(`^${e.id}\\b`,"");if(l.forEach(p=>{var m;const h=(E.isObjectDatasource(p)||!E.isSimpleDatasource(p))&&p.from&&f.test(p.from);e.updateRefs&&((m=p.events)==null||m.forEach(_=>{var S,T,C,F,D;switch(_.type){case"method":{const W=_;W.params.forEach($=>{$.datasource&&Object.assign($,{datasource:$.datasource.replace(new RegExp(`^${e.id}`,""),e.new_name)})}),W.returns&&Object.assign(W.returns,{datasource:(T=(S=W.returns)==null?void 0:S.datasource)==null?void 0:T.replace(new RegExp(`^${e.id}`,""),e.new_name)});return}case"simple-action":{const W=_;W.datasource&&Object.assign(W.datasource,{name:(C=W.datasource.name)==null?void 0:C.replace(new RegExp(`^${e.id}`,""),e.new_name),from:(F=W.datasource.from)==null?void 0:F.replace(new RegExp(`^${e.id}`,""),e.new_name),target:(D=W.datasource.target)==null?void 0:D.replace(new RegExp(`^${e.id}`,""),e.new_name)});return}default:return}})),p.id===e.id?p.id=e.new_name:h&&p.from&&(p.from=p.from.replace(new RegExp(`^${e.id}`,""),e.new_name))}),e.updateRefs){const p=E.getDatasourceId({id:e.id,namespace:e.namespace}),h=E.getDatasourceId({id:e.new_name,namespace:e.namespace});E.datasourcesSubject.next({path:e.path??"",action:E.DatasourcesActions.RENAME,old_reference:p,new_reference:h,is_shared:i})}return i&&await E.setSharedSources({...a.sharedDatasources.sources,[e.namespace]:l}),{list:l,path:e.path,namespace:e.namespace}}catch{return t(`Error while renaming datasource ${e.namespace}:${e.id}`)}}),eo=re("datasources/delete-datasource",async(e,{getState:r,rejectWithValue:t})=>{try{const a=r(),i=!!e.namespace,s=e.namespace||e.path,l=al(e.path,a)[s].filter(E.outById(e.id));return i&&await E.setSharedSources({...a.sharedDatasources.sources,[e.namespace]:l}),{list:l,path:e.path,namespace:e.namespace}}catch{return t(`Error while removing datasource ${e.id}`)}}),io=fr({name:"root",initialState:()=>{const e=ga();return{filesLoading:!1,tabs:e.tabs||[],activeTab:e.activeTab,recent:e.recent||[]}},reducers:{setPanelState(e,r){const{path:t,...a}=r.payload;e.tabs.forEach(i=>{i.path===t&&(i.view||(i.view={panel:{isOpen:!1,type:"",current:""}}),Object.assign(i.view.panel,a))})},addDataSource(e,r){var s;const{payload:{path:t,datasourceDef:a}}=r,i=e.tabs.find(c=>c.path===t);i&&(i.content.metadata.datasources=i.content.metadata.datasources||[],(s=i.content.metadata.datasources)!=null&&s.find(l=>l.id===a.id)||(i.content.metadata.datasources=[...i.content.metadata.datasources,{...a,events:[]}],i.flags={...i.flags,touched:!0,confirmed:!0}))},openSettingsTab(e){const r={date:new Date().toISOString(),flags:{confirmed:!0},view:{panel:{isOpen:!1,type:"",current:""}},extra:{editor:{key:"editors:settings"}},name:"Settings",path:E.SETTINGS_TAB_PATH,type:E.FileFolderType.SETTINGS,initialContent:{},content:{}};let t=e.tabs.find(a=>a.path===r.path);if(t||(e.tabs.push(r),t=e.tabs[e.tabs.length-1]),e.activeTab!==r.path){const a=e.tabs.reduce((i,s)=>(s==null?void 0:s.weight)>((i==null?void 0:i.weight)||0)?s:i,null);e.activeTab=r.path,t.weight=((a==null?void 0:a.weight)||0)+1}},removeDataSource(e,r){const{path:t,datasourceID:a}=r.payload;e.tabs=e.tabs.map(i=>i.path===t?{...i,flags:{...i.flags,touched:!0,confirmed:!0},content:{...i.content,metadata:{...i.content.metadata,datasources:i.content.metadata.datasources.filter(s=>s.id!==a)}}}:i)},setDataSources(e,r){const{payload:{path:t,datasourceArr:a}}=r;e.tabs=e.tabs.map(i=>{var s;return i.path===t?{...i,flags:{...i.flags,touched:!0,confirmed:!0},content:{...i.content,metadata:{...(s=i.content)==null?void 0:s.metadata,datasources:a}}}:i})},setTabs(e,r){e.tabs=r.payload},closeTab(e,r){const t=r.payload;e.tabs.splice(t,1);const a=e.tabs.reduce((i,s)=>(s==null?void 0:s.weight)>((i==null?void 0:i.weight)||0)?s:i,null);e.activeTab=(a==null?void 0:a.path)||""},closeOthers(e,r){e.tabs=e.tabs.filter(t=>t.path===r.payload),e.activeTab=r.payload},closeAllTabs(e){e.tabs=[],e.activeTab=""},closeRightTabs(e,r){e.tabs.splice(r.payload+1),e.activeTab=e.tabs[r.payload].path},closeLeftTabs(e,r){e.tabs.splice(0,r.payload)},closeSavedTabs(e){e.tabs=e.tabs.filter(({flags:{touched:t}})=>t);const r=e.tabs.reduce((t,a)=>(a==null?void 0:a.weight)>((t==null?void 0:t.weight)||0)?a:t,null);e.activeTab=(r==null?void 0:r.path)||""},confirmTab(e,r){const t=e.tabs.find(({path:a})=>a===r.payload);t&&(t.flags.confirmed||io.caseReducers.setTabFlags(e,{type:r.type,payload:{path:r.payload,flags:{confirmed:!0}}}))},selectTab(e,r){const t=e.tabs.find(({path:i})=>i===r.payload);if(!t||e.activeTab===r.payload)return;const a=e.tabs.reduce((i,s)=>(s==null?void 0:s.weight)>((i==null?void 0:i.weight)||0)?s:i,null);t.weight=a?(a.weight||0)+1:1,e.activeTab=r.payload},openTabUnselected(e,r){const t=r.payload;let a=e.tabs.find(({path:s})=>t.path===s);a||(e.tabs.push(t),a=e.tabs[e.tabs.length-1]);const i=e.tabs.reduce((s,c)=>(c==null?void 0:c.weight)>((s==null?void 0:s.weight)||0)?c:s,null);a.weight=i?(i.weight||0)+1:1,a.extra={...a.extra,...t.extra}},selectTabByReference(e,r){const t=[E.FileFolderType.DEBUGGER],{isNew:a,...i}=r.payload;let s=i,c=e.tabs.find(({path:l})=>s.path===l);if((t.includes(s.type)||c!=null&&c.flags.confirmed)&&(s={...s,flags:{...s.flags,confirmed:!0}}),!c){const l=e.tabs.findIndex(({flags:{confirmed:f}})=>f===!1);l!==-1&&!t.includes(s.type)&&!a?e.activeTab===e.tabs[l].path?(e.tabs[l]=s,c=e.tabs[l]):(e.tabs.push(s),c=e.tabs[e.tabs.length-1],e.tabs.splice(l,1)):(e.tabs.push(s),c=e.tabs[e.tabs.length-1])}if(e.activeTab!==s.path){const l=e.tabs.reduce((f,p)=>(p==null?void 0:p.weight)>((f==null?void 0:f.weight)||0)?p:f,null);e.activeTab=s.path,c.weight=((l==null?void 0:l.weight)||0)+1}c.extra={...c.extra,...s.extra},c.flags={...c.flags||{},...s.flags||{}}},setContent(e,r){const{path:t,content:a,contentPath:i}=r.payload;e.tabs=e.tabs.map(s=>{if(s.path!==t)return s;let c=!1,l=s.flags.confirmed;if(typeof a=="string")c=s.initialContent!==a,l=!l&&c?!0:l;else{const f=JSON.stringify(Ke.get(s.initialContent,i||"",s.initialContent)),p=JSON.stringify(Ke.get(a,i||"",a));c=f!==p,l=!l&&c?!0:l}return a&&typeof a=="object"&&(i?Ke.set(s.content,i,a):s.content=a),typeof a=="string"&&(s.content=a),{...s,flags:{...s.flags,touched:c,confirmed:l}}})},setTabFlags(e,r){const{path:t,flags:a}=r.payload;e.tabs=e.tabs.map(i=>i.path===t?{...i,flags:{...i.flags,...a}}:i)},setTabsFlags(e,r){const{tabs:t,flags:a}=r.payload;e.tabs=e.tabs.map(i=>t.includes(i.path)?{...i,flags:{...i.flags,...a}}:i)},setTabExtra(e,r){const{path:t,extra:a,flags:i}=r.payload;e.tabs=e.tabs.map(s=>s.path===t?{...s,extra:{...s.extra,...a},flags:i?{...s.flags,...i}:s.flags}:s)},addWebFormStyles(e,r){const{path:t,styles:a=[]}=r.payload,i=e.tabs.find(s=>s.path===t);if(i){const s=i.content.metadata.styles.map(({name:l})=>l),c=a.filter(({name:l})=>!s.includes(l));i.content.metadata.styles=[...i.content.metadata.styles,...c].map(({scope:l,...f})=>({...f}))}},changeTabEditor(e,r){return e.tabs=e.tabs.map(t=>t.path===r.payload.path?r.payload:t),e}},extraReducers:e=>{e.addCase(pc,(r,t)=>{if(t.payload.settingsKey==="studio.enablePreview"&&t.payload.value===!1){const a=r.tabs.find(({flags:{confirmed:i}})=>i===!1);a&&io.caseReducers.setTabFlags(r,{type:"",payload:{path:a.path,flags:{confirmed:!0}}})}}),e.addCase(av.fulfilled,(r,t)=>{if(!t.payload)return;const{content:a,line:i,path:s}=t.payload,c=r.tabs.find(l=>l.path===s);if(c&&typeof c.content=="string"){const l=c.content.trim().split(`
127
+ `}}};e.type==="dataclass"&&!e.toCreate?p=[{...h("dataclass")},{...h("collection")},{...h("entity")}]:e.type==="dataclass"&&e.toCreate?p=[{...h(e.toCreate)}]:p=[{...h("model")}],p=p.filter(_=>!f.find(({name:S,ext:T})=>S===_.name&&T===(s?"4qs":"4dm"))),await Promise.all(p.map(async({name:_,content:S})=>{await r(la({type:E.FileFolderType.CLASS,path:i,fileName:_,parentNode:c,content:S,qodly:a.settings.server.qodly}))})),await r(Pr(i))}),Pr=re("explorer/fetchFolderContent",async(e,{rejectWithValue:r})=>{try{return(await E.getNodeInfo({verb:E.DesignerRequestVerb.GET_INFO,path:e})).map(a=>{const i=`${e}/${a.name}`,{editor:s,supportedEditors:c}=Sr(`${i}${a.ext?`.${a.ext.toLowerCase()}`:""}`);return{name:a.name,size:a.size,type:a.type,date:`${a.date}`,flags:{},error:null,path:i,ext:a.ext,config:a.type==="folder"?{}:{editor:s,supportedEditors:c}}})}catch{return r("Failed loading file content please Reload")}},{getPendingMeta:()=>{}}),Ja=re("explorer/fetchFolderContentWithoutExpanding",async(e,{rejectWithValue:r})=>{try{return(await E.getNodeInfo({verb:E.DesignerRequestVerb.GET_INFO,path:e})).map(a=>{const i=`${e}/${a.name}`,{editor:s,supportedEditors:c}=Sr(`${i}${a.ext?`.${a.ext.toLowerCase()}`:""}`);return{name:a.name,size:a.size,type:a.type,date:`${a.date}`,flags:{},error:null,path:i,ext:a.ext,config:a.type==="folder"?{}:{editor:s,supportedEditors:c}}})}catch{return r("Failed loading file content please Reload")}},{getPendingMeta:()=>{}});function fD(e){const r=e.split(".");return r.pop(),{name:r.join("."),ext:e.split(".")[e.split(".").length-1]}}const dD=re("explorer/uploadFile",async e=>{const r=e.type.includes("image/")?"$rawPict=true":"$binary=true";try{const t=await fetch(`/rest/$upload?${r}`,{method:"POST",headers:{"Content-Type":e.type},body:e});return{status:t.status,data:await t.json()}}catch{return{status:500,data:null}}}),pD=re("explorer/uploadFile",async({file:e,path:r,parentNode:t},{dispatch:a})=>{const{editor:i,supportedEditors:s}=Sr(r),{name:c,ext:l}=fD(e.name);a(Qg({parent:t,child:{name:c,path:`${r}/${e.name}?t=${Date.now()}`,type:e.type,error:null,flags:{loading:!0},config:{editor:i,supportedEditors:s},ext:l}}));try{const f=await fetch(`/rest/$upload?$sharedFolder=true&$filename=${e.name}&$path=${r}`,{method:"POST",headers:{"Content-Type":e.type},body:e});return f.status>=300?(a(gc({parent:t,child:{name:c,path:`${r}/${e.name}`,type:e.type,error:{message:"error uploading file"},flags:{},config:{editor:i,supportedEditors:s},ext:l}})),f.status!==413&&E.toastSubject.next({message:"error uploading file",kind:"danger"})):await a(Pr(t.path)),{status:f.status,fileName:e.name}}catch{return a(gc({parent:t,child:{name:c,path:`${r}/${e.name}`,type:e.type,error:{message:"error uploading file"},flags:{},config:{editor:i,supportedEditors:s},ext:l}})),E.toastSubject.next({message:"error uploading file",kind:"danger"}),{status:500,fileName:e.name}}}),la=re("explorer/createNewFile",async({fileName:e,type:r,path:t,parentNode:a,content:i},{dispatch:s,rejectWithValue:c,getState:l})=>{const{server:{qodly:f},project:p}=l().settings;try{const h=await E.setFileContent({name:tv(e,r,f),content:i||ev(r,p),path:t,asText:[E.FileFolderType.CLASS,E.FileFolderType.METHOD].includes(r)});return a.error&&(a.flags.expanded?await s(Pr(a.path)):await s(Ja(a.path))),{qodly:f,file:h,parentNode:a}}catch{return c("failed to create folder")}});function nv(e,r){const{qodly:t=!0,withExtension:a=!0}=r||{},i=E.getFileExtentionFromType(e.type,t);let s="";switch(e.type){case E.FileFolderType.WEBFORM:s=`${E.FolderRootPath.WEBFORMS}/${e.name}`;break;case E.FileFolderType.METHOD:s=`${E.FolderRootPath.METHODS}/${e.name}`;break;case E.FileFolderType.CLASS:s=`${E.FolderRootPath.CLASSES}/${e.name}`;break;default:return""}return`${s}${a?`.${i}`:""}`}const hD=re("explorer/createNewFileAndOpen",async(e,{dispatch:r,getState:t})=>{const a=await r(la(e)).unwrap(),{qodly:i}=t().settings.server;if(a){const{file:s}=a,c=nv(s,{withExtension:!1,qodly:i}),{editor:l}=Sr(c);await r(Xa({file:{name:e.fileName,type:s.type,path:c,editor:l,date:new Date().toISOString()}}))}}),li=re("explorer/createNewNode",async({fileName:e,path:r,parentNode:t},{rejectWithValue:a})=>{try{return{file:await E.createFolder({verb:E.DesignerRequestVerb.CREATE_FOLDER,path:`${r}/${e}`,recursive:!0}),parentNode:t}}catch{return E.toastSubject.next({message:"failed to create folder",kind:"danger"}),a("failed to create folder")}}),ts=async(e,r={})=>{try{const t=e.path.split(".").at(-1),a=await E.getNodeInfo({verb:E.DesignerRequestVerb.GET_INFO,path:e.path,content:!0,as:Ah(t)?"json":"text"}),i={editor:e.editor},s=E.getTypeFromExtension(e.path);s===E.FileFolderType.METHOD&&(i.attributes=E.parseAttributes(a.content),a.content=E.addAttributesToContent(a.content,{}));const{content:c,date:l,ext:f}=a;return r.confirmed===void 0&&(r.confirmed=!0),{date:l,view:{panel:{isOpen:!1,type:"",current:""}},flags:{enabled:["WebForm","MForm"].includes(f),confirmed:r.confirmed},extra:i,name:e.name,path:e.path,type:s,initialContent:c,content:c}}catch(t){const{data:a}=t;if(a.__ERROR.find(i=>i.errCode===E.ERROR_CODES.FILE_NOT_FOUND))switch(e.path){case E.ROLES_TAB_PATH:{const i={permissions:{allowed:[]},privileges:[],roles:[]};return{date:new Date().toISOString(),flags:{},extra:{editor:{key:"editors:roles"}},name:"Roles & Privileges",path:e.path,type:E.FileFolderType.ROLES,initialContent:i,content:i}}case E.SETTINGS_TAB_PATH:{const i={};return{date:new Date().toISOString(),flags:{},extra:{editor:{key:"editors:settings"}},name:"Settings",path:e.path,type:E.FileFolderType.SETTINGS,initialContent:i,content:i}}}throw t}},Xa=re("explorer/openFile",async({file:e,inactive:r,isNew:t,flags:a={}},{getState:i,dispatch:s})=>{const{root:{tabs:c},roles:l,debugger:{sessions:f}}=i(),p=c.find(({path:_})=>e.path===_);if(p){const _={...p,extra:{...p==null?void 0:p.extra,editor:e.editor},flags:{...p==null?void 0:p.flags,...a}};return s(jt(_)),_}if(e.path.startsWith("Debugger")){const _=f.find(S=>`Debugger/${S.threadId}`===e.path);if(_){const{source:{content:S},source:T}=_.currentStackFrame,C={name:e.name,type:E.FileFolderType.DEBUGGER,date:new Date().toISOString(),path:e.path,content:S,view:{panel:{isOpen:!1,type:"",current:""}},initialContent:S,flags:{confirmed:!0},extra:{source:T,editor:e.editor}};return s(jt(C)),C}}let h=null;try{h=await ts(e,a)}catch(_){const{data:S}=_;if(S.__ERROR.find(T=>[E.ERROR_CODES.JSON_MALFORMED,E.ERROR_CODES.JSON_MALFORMED_AT_LINE].includes(T.errCode))){const{confirmed:T}=await s(dr({title:"Corrupt file",type:qt.CONFIRM,color:Ir.WARNING,message:"Open in code editor ?"})).unwrap();if(T){const C=await E.getNodeInfo({verb:E.DesignerRequestVerb.GET_INFO,path:e.path,content:!0,as:"text"}),{content:F,date:D,ext:W}=C;h={date:D,view:{panel:{isOpen:!1,type:"",current:""}},flags:{enabled:["WebForm","MForm"].includes(W),confirmed:!0},extra:{editor:E.EDITOR.Code},name:e.name,path:e.path,type:E.getTypeFromExtension(e.path),initialContent:F,content:F}}}}return h&&(e.path===E.ROLES_TAB_PATH&&!l.flags.touched?s(Kc({content:h.content,date:h.date})):e.path===E.SETTINGS_TAB_PATH&&s(es({path:"project",value:h.content})),s((r?Lv:jt)({...h,isNew:t})),h)}),Zc=re("explorer/openFileAtLine",async({file:e},{getState:r,dispatch:t})=>{const{tabs:a}=r().root,i=a.find(({path:c})=>e.path===c);if(i){const c={...i,extra:{...i==null?void 0:i.extra,editor:e.editor}};return t(jt(c)),c}const s=await ts(e);return t(jt(s)),s}),av=re("explorer/injectContentAtLine",async(e,{getState:r,dispatch:t,rejectWithValue:a})=>{const i=r();e.path.split("/").pop();const c=vt(i.explorer,e.path);if(!c)return a(`Error while trying to inject content in file ${e.path}`);const l=await ts({name:c.name,date:c.date||new Date().toISOString(),path:`${c.path}.${c.ext}`,type:E.FileFolderType.CLASS,editor:c.config.editor});return await t(jt(l)),{...e,path:`${c.path}.${c.ext}`}}),ov=re("explorer/openFileAtSelection",async({file:e},{getState:r,dispatch:t})=>{const{tabs:a}=r().root,i=a.find(({path:c})=>e.path===c);if(i){const c={...i,extra:{...i==null?void 0:i.extra,editor:e.editor}};return t(jt(c)),c}const s=await ts(e);return t(jt(s)),s}),yc=re("explorer/deleteFile",async e=>{const{name:r,type:t,path:a,flags:i}=e;if(i.error)return{deleted:!0,node:e};const s=a.split("/");return s.pop(),{deleted:await E.dropFile({root:E.FolderRootType.ROOT,type:rv(t),verb:E.DesignerRequestVerb.DROP,name:r,path:s.join("/")}),node:e}}),gD=re("explorer/deleteFolder",async e=>{const{path:r,flags:t}=e;if(t.error)return{deleted:!0,node:e};const{deleted:a}=await E.removeItem({force:!0,path:r,verb:E.DesignerRequestVerb.REMOVE_ITEM});return{deleted:a,node:e}}),vD=re("explorer/removeFileNode",async(e,{getState:r,dispatch:t})=>{const a=`${e.path}.${e.ext}`;if(await E.removeItem({verb:E.DesignerRequestVerb.REMOVE_ITEM,path:a,force:!0}),e.path==="Classes/DataStore"&&setTimeout(()=>{t(Wn())},ji),e.ext){const{tabs:i}=r().root,s=i.findIndex(c=>c.path===a);s>=0&&t(sl(s))}return{deleted:!0,node:e}}),fa=re("explorer/renameFile",async({file:e,newname:r})=>{if(e.type!=="folder"){const a=e.path.split("/");a.pop();const i=`${a.join("/")}/${e.name}.${e.ext}`,s=`${a.join("/")}/${r}.${e.ext}`;return await E.moveItem({verb:E.DesignerRequestVerb.MOVE_ITEM,path:i,newpath:s}),{old:{...e,path:i},new:{...e,name:r,path:s}}}const t=e.path.split("/");return t.pop(),await E.moveItem({verb:E.DesignerRequestVerb.MOVE_ITEM,path:`${t.join("/")}/${e.name}`,newpath:`${t.join("/")}/${r}`}),{old:e,new:{...e,name:r,path:`${t.join("/")}/${r}`}}}),Za=re("explorer/relocateNode",async({draggedNode:e,newLocation:r},{rejectWithValue:t})=>{try{await E.moveItem({verb:E.DesignerRequestVerb.MOVE_ITEM,path:`${e.path}.${e.ext}`,newpath:`${r.path}/${e.name}.${e.ext}`})}catch{return t("can't move item")}}),fi=re("explorer/duplicateNode",async({node:e,duplicateName:r},{rejectWithValue:t,fulfillWithValue:a,getState:i})=>{const s=e.path.split("/");s.pop();try{const{tabs:c}=i().root,l=c.find(({path:m})=>m===`${e.path}${e.ext?`.${e.ext}`:""}`),f=["4dm","4qm","4qs"].includes(e.ext),{content:p}=l||await E.getNodeInfo({verb:E.DesignerRequestVerb.GET_INFO,path:`${e.path}.${e.ext}`,content:!0,as:f?"text":"json"}),h=await E.setFileContent({name:`${r}.${e.ext}`,content:p,path:s.join("/"),asText:f});return a({node:{...h,path:s.join("/")}})}catch{return t("failed to duplicate file")}}),yD=re("explorer/executeMethod",async({methodName:e,params:r=[],resultingDataSource:t={},namespace:a=""},{rejectWithValue:i})=>{var s,c;try{const f=await window.Method4D.buildMethod({methodName:e,parameters:r,resultingDataSource:t},{namespace:a},null).callServerSide({id:"",serverSideRef:""},"onclick",{});return f!=null&&f.__NOTIFICATION?E.toastSubject.next({message:`${((s=f.__NOTIFICATION)==null?void 0:s.message)||""}`,kind:`${((c=f.__NOTIFICATION)==null?void 0:c.type)||"info"}`}):E.toastSubject.next({message:"Method executed Successfully",kind:"message"}),f}catch(l){return E.toastSubject.next({message:l.message||`Error executing the method "**${e}**"`,kind:"danger",markdown:!0}),i("can't execute method")}}),mD=re("files/fetchFiles",async()=>E.getFolders(E.FolderRootType.WEBFORMS,E.FolderRootType.METHODS,E.FolderRootType.CLASSES)),Qc=re("tabs/renameDatasource",async(e,{dispatch:r,getState:t})=>{var S,T;const a=!!e.datasourceNamespace,{confirmed:i}=await r(dr({message:"Are you sure you want to rename the datasource?",title:"Rename Datasource",type:qt.CONFIRM,color:Ir.WARNING,views:{toggles:{},tips:a?[{type:"warning",message:"The datasource property of components bound with this datasource will also be updated on opened web forms only"},{type:"warning",message:"The origin of some other datasources might be also renamed (if this datasource is the origin of other datasources)"}]:[{type:"warning",message:"The datasource property of components bound with this datasource will also be updated"},{type:"warning",message:"The origin of some other datasources might be also renamed (if this datasource is the origin of other datasources)"}]}})).unwrap();if(!i)return null;const{autoUpdateReferences:s,datasourceId:c,datasourceNamespace:l,value:f,path:p}=e,h=t();let m=[];if(a){const C=h.sharedDatasources.sources[l]||[];m.push(...C)}else if(p){const C=h.root.tabs.find(E.by("path",p));if(m=(T=(S=C==null?void 0:C.content)==null?void 0:S.metadata)==null?void 0:T.datasources,!m)return null}const _=new RegExp(`^${c}\\b`,"");if(m=m.map(C=>{const F=(E.isObjectDatasource(C)||!E.isSimpleDatasource(C))&&C.from&&_.test(C.from),D=C.events?C.events.map(W=>{var $,j,A,K;switch(W==null?void 0:W.type){case"method":{const G=W;return G.params?{...G,params:G.params.map(Y=>{var se;return{...Y,datasource:(se=Y.datasource)==null?void 0:se.replace(new RegExp(`^${c}`,""),f)}}),returns:($=G.returns)!=null&&$.datasource?{...G.returns,datasource:(j=G.returns.datasource)==null?void 0:j.replace(new RegExp(`^${c}`,""),f)}:G.returns}:G}case"simple-action":{const G=W;return G.datasource?{...G,datasource:{...G.datasource,name:(A=G.datasource.name)==null?void 0:A.replace(new RegExp(`^${c}`,""),f),from:(K=G.datasource.from)==null?void 0:K.replace(new RegExp(`^${c}`,""),f)}}:G}default:return W}}):C.events;return C.id===c?{...C,id:f,events:D}:F&&C.from?{...C,from:C.from.replace(new RegExp(`^${c}`,""),f),events:D}:{...C,events:D}}),s){const C=a?`${l}:${c}`:`${c}`,F=a?`${l}:${f}`:`${f}`;E.datasourcesSubject.next({path:p??"",action:E.DatasourcesActions.RENAME,old_reference:C,new_reference:F,is_shared:a})}return{path:p,namespace:l,datasources:m}}),el=re("tabs/edit-datasource",(e,{getState:r})=>{var s,c;const t=r();let a=[];if(e.namespace)a=t.sharedDatasources.sources[e.namespace];else{const l=t.root.tabs.find(E.by("path",e.path));l&&(a=((c=(s=l.content)==null?void 0:s.metadata)==null?void 0:c.datasources)||[])}return a.map(l=>l.id===e.datasourceId?Object.assign({},l,{[e.propertyKey]:e.value}):l)}),iv=re("tabs/fetchChanges",async(e,{getState:r})=>{const a=Ea(r()).filter(i=>[E.FileFolderType.METHOD,E.FileFolderType.CLASS].includes(i.type));return E.getFilesInfo(...a.map(i=>{const[s]=i.path.split("/").filter(Boolean);return{name:i.name,type:i.type,root:s,path:"."}}))}),bD=re("files/saveAll",async(e,{getState:r,dispatch:t})=>{const a=jc(r());for(const i of a)t(da({tab:i}))}),tl=re("files/tryCloseTab",async(e,{getState:r,dispatch:t})=>{const{tabs:a}=r().root,i=a.findIndex(c=>c.path===e);if(i===-1)return!1;const s=a[i];if(s!=null&&s.flags.touched){const{confirmed:c}=await t(dr({title:ki(s),message:"Your unsaved changes will be lost. Proceed anyway?",type:qt.CONFIRM,color:Ir.WARNING,icon:"FdWarningDanger"})).unwrap();if(!c)return!1}return t(sl(i)),s.path===E.ROLES_TAB_PATH&&s.flags.touched&&(async()=>{const l=await E.getNodeInfo({verb:E.DesignerRequestVerb.GET_INFO,path:E.ROLES_TAB_PATH,content:!0,as:"json"});t(Kc({content:l.content,date:l.date}))})(),!0}),_D=re("files/tryCloseOtherTabs",async(e,{getState:r,dispatch:t})=>{const{tabs:a}=r().root;if(a.some(s=>s.path!==e&&s.flags.touched===!0)){const{confirmed:s}=await t(dr({title:"Closing other tabs",message:"Your changes will be lost if you do not save them. Close anyway?",type:qt.CONFIRM,color:Ir.WARNING,icon:"FdWarningDanger"})).unwrap();if(!s)return}t($v(e))}),ED=re("files/tryCloseAllTabs",async(e,{getState:r,dispatch:t})=>{const{tabs:a}=r().root;if(a.some(s=>s.flags.touched===!0)){const{confirmed:s}=await t(dr({title:"Closing all tabs",message:"Your changes will be lost if you do not save them. Close anyway?",type:qt.CONFIRM,color:Ir.WARNING,icon:"FdWarningDanger"})).unwrap();if(!s)return}t(Iv())}),SD=re("files/tryCloseRightTabs",async(e,{getState:r,dispatch:t})=>{const{tabs:a}=r().root;let i=!1;for(let s=a.length-1;s>e;s-=1)if(a[s].flags.touched){i=!0;break}if(i){const{confirmed:s}=await t(dr({title:"Closing right tabs",message:"Your changes will be lost if you do not save them. Close anyway?",type:qt.CONFIRM,color:Ir.WARNING,icon:"FdWarningDanger"})).unwrap();if(!s)return}t(Fv(e))}),wD=re("files/tryCloseLeftTabs",async(e,{getState:r,dispatch:t})=>{const{tabs:a}=r().root;let i=!1;for(let s=0;s<e;s+=1)if(a[s].flags.touched){i=!0;break}if(i){const{confirmed:s}=await t(dr({title:"Closing left tabs",message:"Your changes will be lost if you do not save them. Close anyway?",type:qt.CONFIRM,color:Ir.WARNING,icon:"FdWarningDanger"})).unwrap();if(!s)return}t(Mv(e))}),mc=re("files/reloadTab",async(e,{dispatch:r})=>{if(e.flags.touched){const{confirmed:i}=await r(dr({title:ki(e),message:"Changes made to the file will be lost. Continue?",type:qt.CONFIRM,color:Ir.WARNING,icon:"FdWarningDanger"})).unwrap();if(!i)return}const t=Xh(e.path),a=await E.getNodeInfo({verb:E.DesignerRequestVerb.GET_INFO,path:e.path,content:!0,as:t});if(e.path===E.ROLES_TAB_PATH){const{roles:i,privileges:s}=Zi(a.content);r(Jc({roles:i,privileges:s}))}else if(e.path===E.SETTINGS_TAB_PATH){const{content:i}=a;r(es({path:"project",value:i}))}else{const{content:i}=a;e.type===E.FileFolderType.WEBFORM?E.webformSubject.next({path:e.path,action:E.WebformActions.RELOAD,payload:i.components}):e.type===E.FileFolderType.MODEL&&ag.next({action:"reload",payload:i})}return a}),da=re("files/saveTab",async({tab:e},{dispatch:r,getState:t})=>{const{path:a,content:i}=e;if(e.type===E.FileFolderType.DEBUGGER)return{...e,errors:[]};a.split("/").pop();const c=await E.getFilesInfo({path:a});if(c.files[0]){const h=new Date(e.date),m=new Date(c.files[0].date);if(h.getTime()<m.getTime()){const{confirmed:_}=await r(dr({title:ki(e),message:"New content has been found on the server. Are you sure you want to continue?",type:qt.CONFIRM,icon:"FdSave"})).unwrap();if(!_)return r(Dv({path:a,flags:{old:!0}})),null}}const l=await E.saveContent({verb:E.DesignerRequestVerb.SAVE_CONTENT,content:TD(e,t()),path:a});(e.type===E.FileFolderType.CLASS||e.type===E.FileFolderType.MODEL)&&setTimeout(()=>{r(Wn())},ji);const f=(l.modelErrors||[]).map(h=>h.message),p=(l.permissionsErrors||[]).map(h=>h.message);return{...e,content:i,date:l.date,initialContent:i,errors:f.length>0||p.length>0?[{title:"Model errors",messages:f},{title:"Permissions errors",messages:p}]:[]}}),TD=(e,r)=>{switch(!0){case e.path==="settings.json":case e.path===E.SETTINGS_TAB_PATH:return r.settings.project;case e.type===E.FileFolderType.ROLES:return{...e.content,...Qi(r.roles)};case e.type===E.FileFolderType.MODEL:return e.content||{toJSON:!0,dataClasses:[],extraProperties:{}};default:return e.content}},Vp=async e=>{if(e.type===E.FileFolderType.DATA_EXPLORER)return{name:"Data Explorer",path:e.path,flags:{},view:{panel:{isOpen:!1,type:"",current:""}},type:e.type,date:new Date().toISOString()};const r=e.path.split("/").filter(Boolean)[0],t=await E.getFile({root:r,type:e.type,verb:E.DesignerRequestVerb.GET,name:e.name}),a={};t.type===E.FileFolderType.METHOD&&(a.attributes=E.parseAttributes(t.content));const{date:i,name:s,type:c,content:l}=t;return{date:i,flags:{enabled:e.type===E.FileFolderType.WEBFORM},extra:a,view:{panel:{isOpen:!1,type:"",current:""}},name:s,path:e.path,type:c,initialContent:l,content:c===E.FileFolderType.MODEL?Oh(l):l}},sv=re("files/tryInjectMethod",async({type:e,dataclass:r},{getState:t,dispatch:a})=>{const{root:{tabs:i},settings:{server:{qodly:s}}}=t(),c=E.getFileExtentionFromType("class",s);let l="",f="",p=null;if(!r)l="DataStore",f=`Classes/DataStore.${c}`;else switch(e){case"dataclass":l=r,f=`Classes/${r}.${c}`;break;case"collection":l=`${r}Selection`,f=`Classes/${r}Selection.${c}`;break;case"entity":l=`${r}Entity`,f=`Classes/${r}Entity.${c}`;break;default:return p}const h=i.find(E.by("path",f));if(h)return a(jt(h)),h;try{p=await Vp({name:l,date:new Date().toISOString(),path:`class/${l}.${c}`,type:E.FileFolderType.CLASS})}catch{r?await a(vc({type:"dataclass",className:r,collectionName:`${r}Selection`,toCreate:e})):await a(vc({type:"model"}))}return p=await Vp({name:l,date:new Date().toISOString(),path:`class/${l}.${c}`,type:E.FileFolderType.CLASS}),p.path=f,a(jt(p)),p}),xD=re("roles/open",async(e,{dispatch:r,getState:t})=>{const{tabs:a}=t().root,i=a.find(s=>s.path===E.ROLES_TAB_PATH);if(i)return r(jt(i)),i;r(Di())});function Kp(e,r){const{line:t,offset:a,type:i="saved"}=r;e.breakpoints[i].locations.push({line:t}),Ke.isNumber(a)&&(e.breakpoints[i].offset=a)}function Jp(e,r,t,a){e.breakpoints[t].locations=r,Ke.isNumber(a)&&(e.breakpoints[t].offset=a)}function Xp({filePath:e,fileType:r,methodName:t,className:a,ext:i,source:s}){return{filePath:e,fileType:r,methodName:t,className:a,ext:i,source:s,breakpoints:{draft:{locations:[],offset:0},saved:{locations:[],offset:0}}}}function Zp(e,r,t){let a=!1;const i=e.map(s=>s[t]!==r[t]?s:(a=!0,{...s,...r}));return a?i:[...i,r]}function ii(e){return e.map(({label:r})=>({label:r}))}const uv=fr({name:"debugger",initialState:()=>{var r,t;const{debugger:e={meta:{state:qr.DETACHED},list:[],sessions:[],expressions:[]}}=ga();return{meta:{...e.meta,state:((r=e.meta)==null?void 0:r.state)===qr.ATTACHED?(t=e.meta)==null?void 0:t.state:qr.DETACHED},list:e.list||[],sessions:e.sessions||[],expressions:e.expressions||[]}},reducers:{addBreakpointDecoration(e,r){const{filePath:t,fileType:a,methodName:i,className:s,ext:c,source:l,breakpoint:f}=r.payload,p=Bn(e.list,t,i,s);if(p)Kp(p,f);else{if(a===E.FileFolderType.CLASS&&f.offset===void 0)throw new Error(`Cannot add a breakpoint on a function without offset. Try editing the ${s} class.`);const h=Xp({filePath:t,fileType:a,methodName:i,className:s,ext:c,source:l});Kp(h,f),e.list.push(h)}},removeBreakpointDecoration(e,r){const{filePath:t,methodName:a,line:i,offset:s=0,type:c="saved"}=r.payload;if(t.startsWith("Classes/")){const l=e.list.filter(f=>f.filePath===t);if(l.length>0){const f=i+s;l.forEach(p=>{const h=p.breakpoints[c].offset||0;p.breakpoints[c].locations=p.breakpoints[c].locations.filter(m=>m.line+h!==f),c==="saved"&&(p.breakpoints.draft.locations=p.breakpoints.draft.locations.filter(m=>m.line+h!==f))})}}else{const l=Bn(e.list,t,a);l&&(l.breakpoints[c].locations=l.breakpoints[c].locations.filter(f=>f.line!==i),c==="saved"&&(l.breakpoints.draft.locations=l.breakpoints.draft.locations.filter(f=>f.line!==i)))}},setBreakpointsDecoration(e,r){const{filePath:t,fileType:a,methodName:i,className:s,ext:c,source:l,breakpoints:f,offset:p,type:h="saved",clearDraft:m}=r.payload,_=Bn(e.list,t,i);if(_)Jp(_,f,h,p),m&&h!=="draft"&&(_.breakpoints.draft.locations=[]);else{const S=Xp({filePath:t,fileType:a,methodName:i,className:s,ext:c,source:l});Jp(S,f,h,p),e.list.push(S)}},clearBreakpoints(e,r){const{filePath:t,type:a="saved"}=r.payload;e.list=e.list.map(i=>({...i,breakpoints:i.filePath===t?{draft:!a||a==="draft"?{locations:[],offset:0}:i.breakpoints.draft,saved:!a||a==="saved"?{locations:[],offset:0}:i.breakpoints.saved}:i.breakpoints}))},setActiveLine(e,r){const{threadId:t,line:a,highlight:i}=r.payload,s=ft(e.sessions,t);s&&(s.activeLine=a,i&&(s.highlightedLines={start:a,end:a}))},addExpression(e,r){const{threadId:t,label:a,save:i}=r.payload,s=ft(e.sessions,t);s&&s.stopped&&(s.expressions=[...s.expressions||[],{label:a}],i&&(e.expressions=ii(s.expressions)))},removeExpression(e,r){const{threadId:t,index:a,save:i}=r.payload,s=ft(e.sessions,t);s&&(s.expressions=s.expressions.filter((c,l)=>l!==a),i&&(e.expressions=ii(s.expressions)))},removeAllExpressions(e,r){const{threadId:t,save:a}=r.payload,i=ft(e.sessions,t);i&&(i.expressions=[],a&&(e.expressions=[]))},renameExpression(e,r){const{threadId:t,index:a,replacement:i,save:s}=r.payload,c=ft(e.sessions,t);c&&c.expressions[a]&&(c.expressions[a].label=i,s&&(e.expressions=ii(c.expressions)))},setExpression(e,r){const{threadId:t,expression:a}=r.payload,i=ft(e.sessions,t);if(i){const s=a.index>=0?a.index:i.expressions.length>0?i.expressions.length-1:0,c=i.expressions[s];c?(c.result=a.result,c.nakedResult=a.nakedResult,c.variablesReference=a.variablesReference||0,c.presentationHint=a.presentationHint):i.expressions.push(a)}},updateExpressionAt(e,r){const{threadId:t,index:a,value:i}=r.payload,s=ft(e.sessions,t);if(s){const c=s.expressions[a];c&&(c.result=`"${i}"`,c.nakedResult=i)}},saveExpressions(e,r){const{expressions:t}=r.payload;e.expressions=ii(t)},addSession(e,r){const{threadId:t,channelId:a,stackFrames:i,exceptions:s=[]}=r.payload,c=ft(e.sessions,t),l=i[0],{expressions:f=[]}=e;if(c)c.expressions=f;else{const p=Fc(t);e.sessions.push({tabPath:p,threadId:t,channelId:a,stackFrames:i,currentStackFrame:l,exceptions:s,expressions:f,variables:{callchain:[],expressions:[]},highlightedLines:null,activeLine:null,stopped:!0})}},updateSession(e,r){const{threadId:t,changes:a}=r.payload;e.sessions=e.sessions.map(i=>i.threadId===t?{...i,...a}:i)},removeSession(e,r){const{threadId:t}=r.payload;e.sessions=e.sessions.filter(a=>a.threadId!==t)},removeSessionByIndex(e,r){const t=r.payload;e.sessions.splice(t,1)},setSessions(e,r){const t=r.payload;e.sessions=t},setCallChainVariables(e,r){const{threadId:t,frameId:a,variables:i}=r.payload;e.sessions=e.sessions.map(s=>{var c;return s.threadId===t?{...s,variables:{...s.variables,callchain:Zp((c=s.variables)==null?void 0:c.callchain,{frameId:a,items:i},"frameId")}}:s})},setExpressionVariables(e,r){const{threadId:t,variablesReference:a,variables:i}=r.payload;e.sessions=e.sessions.map(s=>{var c;return s.threadId===t?{...s,variables:{...s.variables,expressions:Zp((c=s.variables)==null?void 0:c.expressions,{variablesReference:a,items:i},"variablesReference")}}:s})},setSourceContent(e,r){const{threadId:t,content:a}=r.payload,i=ft(e.sessions,t);i&&(i.currentStackFrame.source={...i.currentStackFrame.source,content:a})},setDebuggerMeta(e,r){if(r.payload.state===qr.ERROR){e.meta.error={...e.meta.error,time:Date.now()};const{override:t,error:a={code:null,reason:"",type:Ei.SOCKET_ERROR}}=r.payload;if((t||e.meta.state!==qr.ERROR)&&(e.meta.error={...e.meta.error,...a}),(a==null?void 0:a.type)===Ei.SOCKET_CLOSURE&&!(a!=null&&a.reason)&&e.meta.state===qr.DETACHED)return}e.meta.state=r.payload.state}},extraReducers:e=>{e.addCase(lv.fulfilled,r=>{r.sessions=[]})}}),{addBreakpointDecoration:CD,removeBreakpointDecoration:RD,setBreakpointsDecoration:OD,clearBreakpoints:AD,setActiveLine:PD,addExpression:DD,renameExpression:ID,removeExpression:FD,removeAllExpressions:$D,setExpression:MD,updateExpressionAt:ND,saveExpressions:LD,addSession:jD,updateSession:kD,removeSession:BD,removeSessionByIndex:WD,setSessions:cv,setCallChainVariables:UD,setExpressionVariables:HD,setSourceContent:GD,setDebuggerMeta:qD}=uv.actions,lv=re("files/wipeDebuggerSessions",async(e,{getState:r,dispatch:t})=>{const{sessions:a}=r().debugger;for(const{threadId:i}of a){const s=Fc(i);t(tl(s))}}),fv=re("files/removeDebuggerSessionsNotIn",async(e,{getState:r,dispatch:t})=>{const{threadIds:a}=e,{sessions:i}=r().debugger,s=[],c=i.filter(l=>{const f=a.includes(l.threadId);return f||s.push(l.threadId),f});return t(cv(c)),{staleThreadIds:s}});var rl=(e=>(e.UUID="uuid",e.STRING="string",e.TEXT="text",e.DATE="date",e.TIME="duration",e.BOOLEAN="bool",e.BYTE="byte",e.INTEGER="word",e.LONG="long",e.LONG64="long64",e.FLOAT="number",e.BLOB="blob",e.IMAGE="image",e.OBJECT="object",e))(rl||{}),zr=(e=>(e.STORAGE="storage",e.RELATEDENTITY="relatedEntity",e.RELATEDENTITIES="relatedEntities",e.CALCULATED="calculated",e.COMPOSITION="composition",e.ALIAS="alias",e))(zr||{});const YD=e=>["string","uuid","number","long"].includes(e.type),zD=[{label:"Storage",value:"storage"},{label:"Calculated",value:"calculated"}],VD=[{title:"UUID",kind:"storage",value:"uuid",calculatedType:"uuid",calculatedKind:"storage"},{title:"Long",kind:"storage",value:"long",calculatedType:"long",calculatedKind:"storage"}],KD=[{title:"String",kind:"storage",value:"string",calculatedType:"string",calculatedKind:"storage"},{title:"Text",kind:"storage",value:"text",calculatedType:"text",calculatedKind:"storage"},{title:"UUID",kind:"storage",value:"uuid",calculatedType:"uuid",calculatedKind:"storage"},{title:"Date",kind:"storage",value:"date",calculatedType:"date",calculatedKind:"storage"},{title:"Duration",kind:"storage",value:"duration",calculatedType:"duration",calculatedKind:"storage"},{title:"Bool",kind:"storage",value:"bool",calculatedType:"bool",calculatedKind:"storage"},{title:"Byte",kind:"storage",value:"byte",calculatedType:"byte",calculatedKind:"storage"},{title:"Word",kind:"storage",value:"word",calculatedType:"word",calculatedKind:"storage"},{title:"Number",kind:"storage",value:"number",calculatedType:"number",calculatedKind:"storage"},{title:"Long",kind:"storage",value:"long",calculatedType:"long",calculatedKind:"storage"},{title:"Object",kind:"storage",value:"object",calculatedType:"object",calculatedKind:"storage"},{title:"Image",kind:"storage",value:"image",calculatedType:"image",calculatedKind:"storage"},{title:"Blob",kind:"storage",value:"blob",calculatedType:"blob",calculatedKind:"storage"}],JD=[{label:"Expose as REST",value:"public"},{label:"Do not expose as REST",value:"publicOnServer"}],XD=[{label:"Expose as REST",value:"public"},{label:"Do not expose as REST",value:"publicOnServer"}],ZD=[{label:"None",value:"none"},{label:"B-tree",value:"btree"},{label:"Cluster",value:"cluster"},{label:"Automatic",value:"auto"}],dv=Lt("model/add-dataclass"),pv=Lt("model/rename-dataclass"),hv=Lt("model/remove-dataclass"),gv=Lt("model/add-attribute"),QD=Lt("model/edit-attribute-property"),vv=Lt("model/remove-attribute"),yv=Lt("model/rename-attribute"),mv=Lt("model/edit-primary-key"),eI=Lt("model/edit-dataclass-property"),bv=Lt("model/rename-collection"),tI=(e,r)=>({toJSON:!0,extraProperties:r,dataClasses:e.map(t=>{var a;return{...t.data,extraProperties:{position:{x:t.position.x,y:t.position.y},panelColor:(a=t.data.extraProperties)==null?void 0:a.panelColor}}})});function di(e,r,t){const a=e;let i=0;for(;t[`${a}${i||""}`];)i++;return`${a}${i||""}`}const Qa=e=>e.kind===zr.RELATEDENTITY,Ii=e=>e.kind===zr.RELATEDENTITIES,rI=e=>Ii(e)||Qa(e),nl=re("models/fetch",async()=>{try{return(await E.http(E.API_PREFIX,{method:"POST",body:JSON.stringify({verb:E.DesignerRequestVerb.GET_INFO,path:E.MODEL_TAB_PATH,as:"json",content:!0}),headers:new Headers({"Content-Type":"application/json"})})).content}catch(e){return e.message}}),Fi=re("models/save",async(e,{getState:r,dispatch:t,rejectWithValue:a})=>{const{tabs:i}=r().root,s=i.find(c=>c.path===E.MODEL_TAB_PATH);if(!s)return a("Error while saving the model");try{const c=await E.http(E.API_PREFIX,{method:"POST",body:JSON.stringify({verb:"save",path:s.path,content:s.content}),headers:new Headers({"Content-Type":"application/json"})});return setTimeout(()=>{t(Wn())},ji),{...c,path:s.path,content:e.content||{toJSON:!0,dataClasses:[],extraProperties:{}}}}catch{return a("Error while saving the model")}}),nI=re("models/open",async(e,{dispatch:r,getState:t})=>{const{tabs:a}=t().root,i=a.find(s=>s.path==="models/main");if(i)return r(jt(i)),i;r(nl())}),aI=re("model/rename-dataclass",async(e,{getState:r,dispatch:t})=>{var m,_;const{dataclassId:a,selectionId:i,name:s}=e;let c=r();const l=c.explorer.find(S=>S.path===E.FolderRootPath.CLASSES);if(!l)throw new Error("Classes folder was not found!");await t(Pr(l.path)),c=r();const f={class:{found:!1,newNameTaken:!1,file:null,filename_update:s},entity:{found:!1,newNameTaken:!1,file:null,filename_update:`${s}Entity`},selection:{found:!1,newNameTaken:!1,file:null,filename_update:`${s}Selection`}};(_=(m=c.explorer.find(S=>S.path===E.FolderRootPath.CLASSES))==null?void 0:m.children)==null||_.forEach(S=>{S.name===f.class.filename_update&&(f.class.newNameTaken=!0),S.name===f.entity.filename_update&&(f.entity.newNameTaken=!0),S.name===f.selection.filename_update&&(f.selection.newNameTaken=!0),S.name===a?(f.class.found=!0,f.class.file=S):S.name===`${a}Entity`?(f.entity.found=!0,f.entity.file=S):S.name===i&&(f.selection.found=!0,f.selection.file=S)});const p=Object.entries(f).reduce((S,T)=>{const[C,F]=T;return F.found?F.newNameTaken?[...S,{type:"error",message:`Cannot rename ${C} file to ${F.filename_update} because it already exists. The existing file will be used instead!`}]:S:[...S,{type:"warning",message:`${a} ${C} file was not found`}]},[]);p.length>0&&t(dr({message:"The following errors were encountered during dataclass rename:",views:{tips:p}}));const h=Object.values(f).filter(S=>S.found&&S.file&&!S.newNameTaken);await Promise.all(h.map(async S=>await t(fa({file:S.file,newname:S.filename_update})))),h.length>0&&t(Pr("Classes"))}),oo={DATACLASS_DELETE:"dataclass.delete",DATACLASS_DRAGGABLE:"dataclass.draggable"},oI={model:{dataClasses:{},collections:{},extraProperties:{}},draft:{dataClasses:{},collections:{},extraProperties:{}},flags:{[oo.DATACLASS_DELETE]:!0,[oo.DATACLASS_DRAGGABLE]:!0}},_v=fr({name:"Models",initialState:oI,reducers:{setModelFlag(e,r){e.flags={...e.flags,...r.payload}}},extraReducers(e){e.addCase(dv,({draft:{dataClasses:r}},t)=>{var c,l;const{dataclassID:a}=t.payload,i=di(a||"DataClass","className",r),s={className:i,collectionName:`${i}Selection`,attributes:[{name:"ID",kind:zr.STORAGE,type:rl.LONG,scope:"public",indexKind:"auto",unique:!0,primKey:!0,autosequence:!0}],name:i,scope:"public",extraProperties:{position:{x:((c=t.payload.position)==null?void 0:c.x)||0,y:((l=t.payload.position)==null?void 0:l.y)||0}}};r[s.name]=s}).addCase(hv,({draft:{dataClasses:r}},t)=>{const{dataclassID:a}=t.payload;r[a]&&(delete r[a],Object.values(r).forEach(s=>{s.attributes=s.attributes.filter(c=>c.type!==a&&c.type!==s.collectionName)}))}).addCase(pv,({draft:{dataClasses:r,collections:t}},a)=>{const{dataclassID:i,newName:s}=a.payload;if(!r[i]||r[s])return;const c=r[i].collectionName,l=di(`${s}Selection`,"collectionName",t);Object.values(r).forEach(f=>{f.className===i&&(f.className=s,f.name=s,f.collectionName=l),f.attributes.forEach(p=>{p.type===i?(p.type=s,p.path=s):p.type===c&&(p.type=l)})})}).addCase(gv,({draft:{dataClasses:r}},t)=>{const{dataclassID:a,attributeName:i,attributeType:s,attributeKind:c,target:l}=t.payload;if(!r[a]||E.exists("name",i,r[a].attributes))return;const p={name:i,kind:c,type:s,exposed:!0,scope:"public"};if(c===zr.RELATEDENTITY){if(!r[s])return;p.path=s;const m={name:di(r[s].collectionName,"name",r[s].attributes),type:r[a].collectionName,kind:zr.RELATEDENTITIES,reversePath:!0,path:i,scope:"public",exposed:!0};r[s].attributes.push(m)}else if(c===zr.RELATEDENTITIES){const h=r[s];if(!h)return;const m=h.attributes.find(E.by("name",l));if(m){if(!Qa(m)||m.type!==r[a].className)return}else{p.path=l,p.reversePath=!0,p.type=s;const _={name:l,kind:zr.RELATEDENTITY,scope:"public",path:h.className,type:h.className,exposed:!0};h.attributes.push(_)}}r[a].attributes.push(p)}).addCase(yv,({draft:{dataClasses:r}},t)=>{const{dataclassID:a,attributeID:i,newName:s}=t.payload,c=r[a].attributes.find(E.by("name",i)),l=r[a].attributes.find(E.by("name",s));!c||l||Object.values(r).forEach(({collectionName:f,attributes:p,className:h})=>{p.forEach(m=>{Qa(c)&&Ii(m)&&m.type===f&&m.path===i&&(m.path=s),h===a&&m.name===i&&(m.name=s)})})}).addCase(vv,({draft:{dataClasses:r}},t)=>{const{dataclassID:a,attributeID:i}=t.payload;if(!r[a])return;const s=r[a].attributes.find(E.by("name",i));s&&(Qa(s)&&Object.values(r).forEach(c=>{c.attributes=c.attributes.filter(l=>!(Ii(l)&&l.type===c.collectionName&&l.path===s.name))}),r[a].attributes=r[a].attributes.filter(E.outBy("name",i)))}).addCase(bv,({draft:{dataClasses:r,collections:t}},a)=>{const{dataclassID:i,collectionName:s}=a.payload;if(!r[i])return;const c=r[i].collectionName;t[s]||(r[i].collectionName=s,t[s]=r[i],delete t[c],Object.values(r).forEach(l=>l.attributes.forEach(f=>{f.type===c&&(f.type=s)})))}).addCase(mv,({draft:{dataClasses:r}},t)=>{const{dataclassID:a,newPrimKey:i}=t.payload;r[a]&&r[a].attributes.forEach(s=>{s.name===i?s.primKey=!0:s.primKey=!1})}),e.addCase(nl.fulfilled,(r,t)=>{var c;const a={},i={},s=t.payload.extraProperties||{};(c=t.payload.dataClasses)==null||c.forEach(l=>{a[l.name]=l,i[l.collectionName]=l}),r.draft.dataClasses=a,r.draft.collections=i,r.draft.extraProperties=s,r.model.dataClasses=a,r.model.collections=i,r.model.extraProperties=s}),e.addCase(Fi.pending,()=>{}).addCase(Fi.fulfilled,(r,t)=>{const a={},i={},s=t.payload.content.extraProperties||{};t.payload.content.dataClasses.forEach(c=>{a[c.name]=c,i[c.collectionName]=c}),r.draft.dataClasses=a,r.draft.collections=i,r.draft.extraProperties=s,r.model.dataClasses=a,r.model.collections=i,r.model.extraProperties=s})}}),{setModelFlag:iI}=_v.actions,sI=()=>Qr(e=>e.model.draft.dataClasses),uI=()=>Qr(e=>e.model.draft.collections),cI=e=>Qr(r=>r.model.draft.dataClasses[e]),lI=(e,r)=>Qr(t=>t.model.draft.dataClasses[e].attributes.find(E.by("name",r))),fI=()=>Qr(e=>e.model.draft.extraProperties),dI=()=>{const e=Qr(i=>i.model.flags),r=i=>i in e?e[i]:void 0,t=r(oo.DATACLASS_DELETE),a=r(oo.DATACLASS_DRAGGABLE);return{deleteDataclass:t,draggableDataclass:a,flags:e}},pI=_v.reducer;function Hu(e,r){const t=e.tabs.find(({path:a})=>a===E.SETTINGS_TAB_PATH);t&&(t.flags.touched=r)}const Ev={SIDEBAR_SECTION_RESIZABLE:"sidebar.section.resizable"},Sv={[Ev.SIDEBAR_SECTION_RESIZABLE]:!0},wv=fr({name:"webforms",initialState:()=>{const{webforms:e}=ga();return{...e,templates:{data:[],selectedGroup:""},datasources:{...Dc.webforms.datasources,...e==null?void 0:e.datasources},flags:Sv}},reducers:{toggleInspector:(e,r)=>{const{type:t}=r.payload;e.inspector[t].active=!e.inspector[t].active,e.inspector[t].active||(e.inspector[t].data=void 0)},inspect:(e,r)=>{const{type:t,data:a}=r.payload;e.inspector[t].active&&(e.inspector[t].data=a)},addComponent:(e,r)=>{e.components.push(r.payload)},editComponent:(e,r)=>{const{id:t,changes:a}=r.payload;e.components=e.components.map(i=>i.id===t?{...i,...a}:i)},removeComponent:(e,r)=>{const{payload:t}=r,a=e.components.findIndex(i=>i.id===t);a!==-1&&e.components.splice(a,1)},setSelectedGroup:(e,r)=>{e.templates.selectedGroup=r.payload.selectedGroup},setTemplatesData:(e,r)=>{e.templates.data=r.payload},setTemplateData:(e,r)=>{const{group:t,components:a}=r.payload,i=e.templates.data.find(s=>s.group===t);i&&(i.components=a)},setDatasourcesTheme:(e,r)=>{e.datasources.theme=r.payload},setWebformsFlag(e,r){e.flags={...e.flags,...r.payload}}},extraReducers(e){e.addCase(Av.fulfilled,(r,t)=>{r.components=t.payload})}}),{toggleInspector:hI,inspect:gI,addComponent:Tv,editComponent:xv,removeComponent:Cv,setSelectedGroup:vI,setTemplatesData:Rv,setTemplateData:Ov,setDatasourcesTheme:yI,setWebformsFlag:mI}=wv.actions,bI=wv.reducer,al=Ke.curry((e,r)=>{var i,s;const t={...r.sharedDatasources.sources},a=(s=((i=r.root.tabs.find(E.by("path",e)))==null?void 0:i.content).metadata)==null?void 0:s.datasources;return a&&(t[e]=a),Ke.cloneDeep(t)}),_I=re("webforms/fetchTemplates",async(e,{dispatch:r,getState:t})=>{const{data:a}=t().webforms.templates,i=t().settings.session["studio.tipsBaseUrl"]||"";if(!Ke.isEmpty(a))return a;try{const c=await(await fetch(`${i}/build/index.json?t=${Date.now()}`)).json();return r(Rv(c)),c}catch{return[]}}),EI=re("webforms/fetchTemplate",async({name:e},{dispatch:r,getState:t})=>{const{data:a}=t().webforms.templates,i=a.find(s=>s.group===e);if(i&&!Ke.isEmpty(i.components))return i.components;try{const c=await(await fetch(`${i==null?void 0:i.link}?t=${Date.now()}`)).json();return r(Ov({group:e,components:c})),c}catch{return[]}}),Av=re("webforms/fetchCraftedComponents",async(e,{rejectWithValue:r})=>{try{return(await E.getNodeInfo({path:"WebForms/crafted_components.json",verb:E.DesignerRequestVerb.GET_INFO,content:!0,as:"json"})).content}catch{return r("Error while loading the crafted components")}}),SI=re("webforms/addCraftedComponent",async(e,{dispatch:r,rejectWithValue:t,getState:a})=>{try{r(Tv(e));const{webforms:{components:i}}=a();E.setCraftedComponents(i)}catch{return t("Error while adding the crafted component")}}),wI=re("webforms/editCraftedComponent",async(e,{dispatch:r,rejectWithValue:t,getState:a})=>{try{r(xv(e));const{webforms:{components:i}}=a();E.setCraftedComponents(i)}catch{return t("Error while editing the crafted component")}}),TI=re("webforms/removeCraftedComponent",async(e,{dispatch:r,rejectWithValue:t,getState:a})=>{try{r(Cv(e));const{webforms:{components:i}}=a();E.setCraftedComponents(i)}catch{return t("Error while removing the crafted component")}}),ol=re("datasources/add-datasource",async(e,{getState:r,rejectWithValue:t})=>{var a,i;try{const s=r(),c=e.datasource,l=!!c.namespace,f=[];if(l){const p={...s.sharedDatasources.sources,[c.namespace]:[...s.sharedDatasources.sources[c.namespace],c]};f.push(...p[c.namespace]),await E.setSharedSources(p)}else(((i=(a=s.root.tabs.find(E.by("path",e.path)).content)==null?void 0:a.metadata)==null?void 0:i.datasources)||[]).push(c);return{list:f,path:e.path,namespace:e.datasource.namespace}}catch{console.error("Error while adding the datasource",e.datasource.id),t("Error while adding the datasource")}}),il=re("datasources/edit-datasource",async(e,{getState:r,rejectWithValue:t})=>{try{const{namespace:a,path:i}=e,s=r(),c=!!e.namespace,l=al(i,s);let f=Ke.defaultTo(l[a||i],[]);return f=f.map(p=>p.id===e.id?{...p,[e.property]:e.value}:p),c&&await E.setSharedSources({...s.sharedDatasources.sources,[e.namespace]:f}),{list:f,path:e.path,namespace:e.namespace}}catch{t(`Error while editing datasource ${e.id}`)}}),xI=e=>e.type===pa.fulfilled.type,pa=re("datasources/rename-datasource",async(e,{getState:r,rejectWithValue:t})=>{try{const a=r(),i=!!e.namespace,s=e.namespace||e.path,c=al(e.path,a),l=Ke.defaultTo(c[s],[]),f=new RegExp(`^${e.id}\\b`,"");if(l.forEach(p=>{var m;const h=(E.isObjectDatasource(p)||!E.isSimpleDatasource(p))&&p.from&&f.test(p.from);e.updateRefs&&((m=p.events)==null||m.forEach(_=>{var S,T,C,F,D;switch(_.type){case"method":{const W=_;W.params.forEach($=>{$.datasource&&Object.assign($,{datasource:$.datasource.replace(new RegExp(`^${e.id}`,""),e.new_name)})}),W.returns&&Object.assign(W.returns,{datasource:(T=(S=W.returns)==null?void 0:S.datasource)==null?void 0:T.replace(new RegExp(`^${e.id}`,""),e.new_name)});return}case"simple-action":{const W=_;W.datasource&&Object.assign(W.datasource,{name:(C=W.datasource.name)==null?void 0:C.replace(new RegExp(`^${e.id}`,""),e.new_name),from:(F=W.datasource.from)==null?void 0:F.replace(new RegExp(`^${e.id}`,""),e.new_name),target:(D=W.datasource.target)==null?void 0:D.replace(new RegExp(`^${e.id}`,""),e.new_name)});return}default:return}})),p.id===e.id?p.id=e.new_name:h&&p.from&&(p.from=p.from.replace(new RegExp(`^${e.id}`,""),e.new_name))}),e.updateRefs){const p=E.getDatasourceId({id:e.id,namespace:e.namespace}),h=E.getDatasourceId({id:e.new_name,namespace:e.namespace});E.datasourcesSubject.next({path:e.path??"",action:E.DatasourcesActions.RENAME,old_reference:p,new_reference:h,is_shared:i})}return i&&await E.setSharedSources({...a.sharedDatasources.sources,[e.namespace]:l}),{list:l,path:e.path,namespace:e.namespace}}catch{return t(`Error while renaming datasource ${e.namespace}:${e.id}`)}}),eo=re("datasources/delete-datasource",async(e,{getState:r,rejectWithValue:t})=>{try{const a=r(),i=!!e.namespace,s=e.namespace||e.path,l=al(e.path,a)[s].filter(E.outById(e.id));return i&&await E.setSharedSources({...a.sharedDatasources.sources,[e.namespace]:l}),{list:l,path:e.path,namespace:e.namespace}}catch{return t(`Error while removing datasource ${e.id}`)}}),io=fr({name:"root",initialState:()=>{const e=ga();return{filesLoading:!1,tabs:e.tabs||[],activeTab:e.activeTab,recent:e.recent||[]}},reducers:{setPanelState(e,r){const{path:t,...a}=r.payload;e.tabs.forEach(i=>{i.path===t&&(i.view||(i.view={panel:{isOpen:!1,type:"",current:""}}),Object.assign(i.view.panel,a))})},addDataSource(e,r){var s;const{payload:{path:t,datasourceDef:a}}=r,i=e.tabs.find(c=>c.path===t);i&&(i.content.metadata.datasources=i.content.metadata.datasources||[],(s=i.content.metadata.datasources)!=null&&s.find(l=>l.id===a.id)||(i.content.metadata.datasources=[...i.content.metadata.datasources,{...a,events:[]}],i.flags={...i.flags,touched:!0,confirmed:!0}))},openSettingsTab(e){const r={date:new Date().toISOString(),flags:{confirmed:!0},view:{panel:{isOpen:!1,type:"",current:""}},extra:{editor:{key:"editors:settings"}},name:"Settings",path:E.SETTINGS_TAB_PATH,type:E.FileFolderType.SETTINGS,initialContent:{},content:{}};let t=e.tabs.find(a=>a.path===r.path);if(t||(e.tabs.push(r),t=e.tabs[e.tabs.length-1]),e.activeTab!==r.path){const a=e.tabs.reduce((i,s)=>(s==null?void 0:s.weight)>((i==null?void 0:i.weight)||0)?s:i,null);e.activeTab=r.path,t.weight=((a==null?void 0:a.weight)||0)+1}},removeDataSource(e,r){const{path:t,datasourceID:a}=r.payload;e.tabs=e.tabs.map(i=>i.path===t?{...i,flags:{...i.flags,touched:!0,confirmed:!0},content:{...i.content,metadata:{...i.content.metadata,datasources:i.content.metadata.datasources.filter(s=>s.id!==a)}}}:i)},setDataSources(e,r){const{payload:{path:t,datasourceArr:a}}=r;e.tabs=e.tabs.map(i=>{var s;return i.path===t?{...i,flags:{...i.flags,touched:!0,confirmed:!0},content:{...i.content,metadata:{...(s=i.content)==null?void 0:s.metadata,datasources:a}}}:i})},setTabs(e,r){e.tabs=r.payload},closeTab(e,r){const t=r.payload;e.tabs.splice(t,1);const a=e.tabs.reduce((i,s)=>(s==null?void 0:s.weight)>((i==null?void 0:i.weight)||0)?s:i,null);e.activeTab=(a==null?void 0:a.path)||""},closeOthers(e,r){e.tabs=e.tabs.filter(t=>t.path===r.payload),e.activeTab=r.payload},closeAllTabs(e){e.tabs=[],e.activeTab=""},closeRightTabs(e,r){e.tabs.splice(r.payload+1),e.activeTab=e.tabs[r.payload].path},closeLeftTabs(e,r){e.tabs.splice(0,r.payload)},closeSavedTabs(e){e.tabs=e.tabs.filter(({flags:{touched:t}})=>t);const r=e.tabs.reduce((t,a)=>(a==null?void 0:a.weight)>((t==null?void 0:t.weight)||0)?a:t,null);e.activeTab=(r==null?void 0:r.path)||""},confirmTab(e,r){const t=e.tabs.find(({path:a})=>a===r.payload);t&&(t.flags.confirmed||io.caseReducers.setTabFlags(e,{type:r.type,payload:{path:r.payload,flags:{confirmed:!0}}}))},selectTab(e,r){const t=e.tabs.find(({path:i})=>i===r.payload);if(!t||e.activeTab===r.payload)return;const a=e.tabs.reduce((i,s)=>(s==null?void 0:s.weight)>((i==null?void 0:i.weight)||0)?s:i,null);t.weight=a?(a.weight||0)+1:1,e.activeTab=r.payload},openTabUnselected(e,r){const t=r.payload;let a=e.tabs.find(({path:s})=>t.path===s);a||(e.tabs.push(t),a=e.tabs[e.tabs.length-1]);const i=e.tabs.reduce((s,c)=>(c==null?void 0:c.weight)>((s==null?void 0:s.weight)||0)?c:s,null);a.weight=i?(i.weight||0)+1:1,a.extra={...a.extra,...t.extra}},selectTabByReference(e,r){const t=[E.FileFolderType.DEBUGGER],{isNew:a,...i}=r.payload;let s=i,c=e.tabs.find(({path:l})=>s.path===l);if((t.includes(s.type)||c!=null&&c.flags.confirmed)&&(s={...s,flags:{...s.flags,confirmed:!0}}),!c){const l=e.tabs.findIndex(({flags:{confirmed:f}})=>f===!1);l!==-1&&!t.includes(s.type)&&!a?e.activeTab===e.tabs[l].path?(e.tabs[l]=s,c=e.tabs[l]):(e.tabs.push(s),c=e.tabs[e.tabs.length-1],e.tabs.splice(l,1)):(e.tabs.push(s),c=e.tabs[e.tabs.length-1])}if(e.activeTab!==s.path){const l=e.tabs.reduce((f,p)=>(p==null?void 0:p.weight)>((f==null?void 0:f.weight)||0)?p:f,null);e.activeTab=s.path,c.weight=((l==null?void 0:l.weight)||0)+1}c.extra={...c.extra,...s.extra},c.flags={...c.flags||{},...s.flags||{}}},setContent(e,r){const{path:t,content:a,contentPath:i}=r.payload;e.tabs=e.tabs.map(s=>{if(s.path!==t)return s;let c=!1,l=s.flags.confirmed;if(typeof a=="string")c=s.initialContent!==a,l=!l&&c?!0:l;else{const f=JSON.stringify(Ke.get(s.initialContent,i||"",s.initialContent)),p=JSON.stringify(Ke.get(a,i||"",a));c=f!==p,l=!l&&c?!0:l}return a&&typeof a=="object"&&(i?Ke.set(s.content,i,a):s.content=a),typeof a=="string"&&(s.content=a),{...s,flags:{...s.flags,touched:c,confirmed:l}}})},setTabFlags(e,r){const{path:t,flags:a}=r.payload;e.tabs=e.tabs.map(i=>i.path===t?{...i,flags:{...i.flags,...a}}:i)},setTabsFlags(e,r){const{tabs:t,flags:a}=r.payload;e.tabs=e.tabs.map(i=>t.includes(i.path)?{...i,flags:{...i.flags,...a}}:i)},setTabExtra(e,r){const{path:t,extra:a,flags:i}=r.payload;e.tabs=e.tabs.map(s=>s.path===t?{...s,extra:{...s.extra,...a},flags:i?{...s.flags,...i}:s.flags}:s)},addWebFormStyles(e,r){const{path:t,styles:a=[]}=r.payload,i=e.tabs.find(s=>s.path===t);if(i){const s=i.content.metadata.styles.map(({name:l})=>l),c=a.filter(({name:l})=>!s.includes(l));i.content.metadata.styles=[...i.content.metadata.styles,...c].map(({scope:l,...f})=>({...f}))}},changeTabEditor(e,r){return e.tabs=e.tabs.map(t=>t.path===r.payload.path?r.payload:t),e}},extraReducers:e=>{e.addCase(pc,(r,t)=>{if(t.payload.settingsKey==="studio.enablePreview"&&t.payload.value===!1){const a=r.tabs.find(({flags:{confirmed:i}})=>i===!1);a&&io.caseReducers.setTabFlags(r,{type:"",payload:{path:a.path,flags:{confirmed:!0}}})}}),e.addCase(av.fulfilled,(r,t)=>{if(!t.payload)return;const{content:a,line:i,path:s}=t.payload,c=r.tabs.find(l=>l.path===s);if(c&&typeof c.content=="string"){const l=c.content.trim().split(`
128
128
  `);l.splice(i,0,a),c.content=l.join(`
129
129
  `)}}),e.addCase(da.pending,(r,t)=>{const{tab:a}=t.meta.arg;switch(a.type){case E.FileFolderType.CLASS:case E.FileFolderType.METHOD:E.lspSubject.next({action:E.LspActions.WILL_SAVE,payload:{filePath:a.path}});break}}),e.addCase(da.fulfilled,(r,t)=>{if(!t.payload)return;const a=r.tabs.find(({path:i})=>{var s;return i===((s=t.payload)==null?void 0:s.path)});if(a){switch(a.content=t.payload.content,a.date=t.payload.date,a.initialContent=t.payload.initialContent,a.flags.touched=!1,a.flags.confirmed=!0,a.flags.old=!1,a.type){case E.FileFolderType.CLASS:case E.FileFolderType.METHOD:E.lspSubject.next({action:E.LspActions.DID_SAVE,payload:{filePath:a.path,content:a.content}});break}t.payload.errors.length>0&&E.toastSubject.next({kind:"error",message:t.payload.errors})}}),e.addCase(da.rejected,(r,t)=>{E.toastSubject.next({kind:"danger",message:"Cannot save file"})}),e.addCase(iv.fulfilled,(r,t)=>{const a=[...t.payload.files];r.tabs=r.tabs.map(i=>{if([E.FileFolderType.CLASS,E.FileFolderType.METHOD].includes(i.type)){const s=a.find(c=>c.name===i.name&&c.type===i.type);if(s){const c=new Date(i.date),l=new Date(s.date);if(c.getTime()!==l.getTime())return{...i,flags:{...i.flags,old:!0}}}}return i})}),e.addCase(mc.pending,(r,t)=>{r.tabs=r.tabs.map(a=>a.path===t.meta.arg.path?{...a,flags:{...a.flags,loading:!0}}:a)}),e.addCase(mc.fulfilled,(r,t)=>{const a=t.payload;if(a){const i=t.meta.arg;r.tabs=r.tabs.map(s=>{if(s.name===i.name&&s.type===i.type){const c=s.extra||{};return s.type===E.FileFolderType.METHOD?(c.attributes=E.parseAttributes(a.content),a.content=E.addAttributesToContent(a.content,{})):s.type===E.FileFolderType.SETTINGS&&(a.content={}),{...s,initialContent:a.content,content:a.content,date:a.date,flags:{confirmed:s.flags.confirmed},extra:c}}return s})}}),e.addCase(Zc.fulfilled,(r,t)=>{if(!t.payload)return;const{line:a,offset:i}=t.meta.arg,s=r.tabs.find(({path:c})=>{var l;return c===((l=t.payload)==null?void 0:l.path)});s&&(s.extra={...s.extra,initialLineInfo:{line:a,offset:i,lastModification:Date.now()}})}),e.addCase(ov.fulfilled,(r,t)=>{if(!t.payload)return;const{selection:a}=t.meta.arg,i=r.tabs.find(({path:s})=>{var c;return s===((c=t.payload)==null?void 0:c.path)});i&&(i.extra={...i.extra,initialSelectionInfo:{selection:a,lastModification:Date.now()}})}),e.addCase(fa.fulfilled,(r,t)=>{t.payload.new!==t.payload.old&&(r.tabs=[...r.tabs].map(a=>a.path===t.payload.old.path?{...a,path:t.payload.new.path,name:t.payload.new.name}:a),r.activeTab===t.payload.old.path&&(r.activeTab=t.payload.new.path))}),e.addCase(yc.pending,(r,t)=>{const a=t.meta.arg,i=`${a.path}${a.ext?`.${a.ext}`:""}`;switch(a.ext){case"4dm":case"4qs":E.lspSubject.next({action:E.LspActions.WILL_DELETE,payload:{filePath:i}});break}}),e.addCase(yc.fulfilled,(r,t)=>{const{deleted:a,node:i}=t.payload;if(!a)return;const s=`${i.path}${i.ext?`.${i.ext}`:""}`;switch(i.ext){case"4dm":case"4qs":E.lspSubject.next({action:E.LspActions.DID_DELETE,payload:{filePath:s}});break}if(r.tabs=r.tabs.filter(c=>c.path!==s),r.recent=r.recent.filter(({path:c})=>s!==c),r.tabs.length){r.activeTab=r.tabs[r.tabs.length-1].path;return}r.activeTab=""}),e.addCase(Za.fulfilled,(r,t)=>{const{draggedNode:a,newLocation:i}=t.meta.arg;if(r.tabs.find(s=>s.path===`${a.path}${a.ext?`.${a.ext}`:""}`))return r.tabs=r.tabs.map(s=>s.path===`${a.path}${a.ext?`.${a.ext}`:""}`?{...s,path:`${i.path}/${a.name}.${a.ext}`}:s),r.recent=r.recent.map(s=>s.path===`${a.path}${a.ext?`.${a.ext}`:""}`?{...s,path:`${i.path}/${a.name}.${a.ext}`}:s),r.activeTab=`${i.path}/${a.name}.${a.ext}`,r}),e.addCase(Fi.fulfilled,(r,t)=>{const a=r.tabs.find(i=>i.path===t.payload.path);a&&(a.flags.touched=!1,a.flags.confirmed=!0,a.date=t.payload.date,a.content=t.payload.content,a.initialContent=t.payload.content)}),e.addCase(sv.fulfilled,(r,t)=>{var s;if(!((s=t.payload)!=null&&s.path))return;const a=r.tabs.find(E.by("path",t.payload.path));if(!a)return;a.content=a.content+`
130
130
  exposed Function ${t.meta.arg.name}()
131
131
  `,a.flags={...a.flags,touched:!0,confirmed:!0};const i=a.content.split(`
132
- `);a.extra={...a.extra,editor:E.EDITOR.Code,initialLineInfo:{line:i.length-1,lastModification:Date.now()}}}),e.addCase(Qc.fulfilled,(r,t)=>{var s,c;if(!((s=t.payload)!=null&&s.path)||(c=t.payload)!=null&&c.namespace)return;const a=t.payload.path,i=r.tabs.find(E.by("path",a));!i||!i.content||!i.content.metadata||(Object.assign(i.content.metadata,{datasources:t.payload.datasources}),i.flags.touched=!0,i.flags.confirmed=!0)}),e.addCase(el.fulfilled,(r,t)=>{const{payload:a,meta:{arg:i}}=t;i.namespace||r.tabs.forEach(s=>{s.path===i.path&&Object.assign(s.content,{metadata:{...s.content.metadata,datasources:a}})})}),e.addCase(fv.fulfilled,(r,t)=>{const{staleThreadIds:a}=t.payload;if(a.length===0)return;const i=a.map(s=>`Debugger/${s}`);if(r.tabs=r.tabs.filter(s=>!i.includes(s.path)),r.recent=r.recent.filter(({path:s})=>!i.includes(s)),r.tabs.length){r.activeTab=r.tabs[r.tabs.length-1].path;return}r.activeTab=""}),e.addCase(Xc.pending,r=>Hu(r,!1)),e.addMatcher(Er(pc),(r,t)=>{["project"].includes(t.payload.path)&&Hu(r,!0)}),e.addMatcher(Er(es),(r,t)=>{Hu(r,!1)}),e.addMatcher(Er(Nv,jt),(r,t)=>{const{payload:a}=t;let i;typeof a=="string"?i=r.tabs.find(({path:s})=>a===s):i=a,i&&(r.recent=[i,...r.recent.filter(({path:s})=>![i.path,"settings"].includes(s))])}),e.addMatcher(Er(Kg,Vg),(r,t)=>{r.tabs=r.tabs.map(a=>a.path===E.ROLES_TAB_PATH?{...a,flags:{...a.flags,confirmed:!0,touched:!0}}:a)}),e.addMatcher(Er(Jc),(r,t)=>{r.tabs=r.tabs.map(a=>a.path===E.ROLES_TAB_PATH?{...a,flags:{...a.flags,touched:!1}}:a)}),e.addMatcher(Er(ol.fulfilled,il.fulfilled,eo.fulfilled,pa.fulfilled),(r,t)=>{var i,s,c;const a=r.tabs.find(E.by("path",((i=t.payload)==null?void 0:i.path)||t.meta.arg.path));!a||(s=t.payload)!=null&&s.namespace||(a.flags.touched=!0,a.flags.confirmed=!0,Object.assign(a.content,{metadata:{...a.content.metadata,datasources:(c=t.payload)==null?void 0:c.list}}))}),e.addMatcher(Er(eo.fulfilled,pa.fulfilled),(r,t)=>{var l;const a=r.tabs.find(E.by("path",((l=t.payload)==null?void 0:l.path)||t.meta.arg.path));if(!a)return;const{panel:i}=a.view,s=E.getDatasourceId({id:t.meta.arg.id,namespace:t.meta.arg.namespace});if(i.type==="datasource"&&i.current===s)switch(t.type){case eo.fulfilled.type:Object.assign(a.view.panel,{type:"component",current:CR});break;case pa.fulfilled.type:const f=E.getDatasourceId({id:t.meta.arg.new_name,namespace:t.meta.arg.namespace});Object.assign(a.view.panel,{type:"datasource",current:f});break}})}}),{setTabs:TI,closeTab:sl,setContent:Pv,setTabFlags:Dv,setTabsFlags:xI,setTabExtra:CI,closeAllTabs:Iv,addDataSource:RI,closeRightTabs:Fv,closeOthers:$v,closeLeftTabs:Mv,closeSavedTabs:OI,setDataSources:AI,removeDataSource:PI,confirmTab:DI,selectTab:Nv,selectTabByReference:jt,openTabUnselected:Lv,addWebFormStyles:II,changeTabEditor:FI,openSettingsTab:$I,setPanelState:MI}=io.actions,jv=io.reducer,NI=uv.reducer,Wn=re("catalog/fetchCatalog",async(e,{rejectWithValue:r})=>{var t;try{const a=await E.getCatalog(),i=new Map,s=new Map;return(t=a==null?void 0:a.dataClasses)==null||t.forEach(({methods:c=[],...l})=>{const f={...l,methods:c};s.set(l.className,f),i.set(l.collectionName,f)}),{__BASEID:a.__BASEID,__UNIQID:a.__UNIQID,dataClassByCollectionName:Object.fromEntries(i.entries()),methods:a.methods||[],dataClasses:Object.fromEntries(s.entries())}}catch{return r("Error while loading the catalog")}}),LI=fr({name:"catalog",initialState:{state:"loading"},reducers:{},extraReducers(e){e.addCase(Wn.pending,()=>({state:"loading"})).addCase(Wn.fulfilled,(r,{payload:t})=>({state:"loaded",model:t})).addCase(Wn.rejected,(r,t)=>({state:"error",error:t.payload||"Error while loading the catalog"}))}}),jI=LI.reducer,kI=Bg.reducer,pi=re("shared_datasources/fetchSharedSources",async(e,{rejectWithValue:r})=>{try{return await E.getSharedDatasources()}catch{return r("Error while loading the shared datasources")}}),kv=re("shared_datasources/addSharedSource",async(e,{rejectWithValue:r,getState:t})=>{try{const a=JSON.parse(JSON.stringify(t().sharedDatasources));if(e.namespace)a.sources[e.namespace]?a.sources[e.namespace].push(e):a.sources[e.namespace]=[e];else return r("Namespace is required");return await E.setSharedSources(a.sources),a.sources}catch{return r("Error while saving the shared datasources")}}),Bv=re("shared_datasources/editSharedSource",async(e,{rejectWithValue:r,getState:t})=>{try{const a=t().sharedDatasources;if(!e.namespace)return r("Namespace is required");if(a.sources[e.namespace])a.sources[e.namespace]=a.sources[e.namespace].map(i=>i.id===e.id?{...e,id:i.id}:i);else return r("Namespace not found");return await E.setSharedSources(a.sources),a.sources}catch{return r("Error while saving the shared datasources")}}),Wv=re("shared_datasources/deleteSharedSource",async(e,{rejectWithValue:r,getState:t})=>{try{const a={...t().sharedDatasources};if(a.sources[e.namespace]){const i=a.sources[e.namespace].filter(s=>s.id!==e.id);if(i.length===0){const{[e.namespace]:s,...c}=a.sources;a.sources=c}else a.sources={...a.sources,[e.namespace]:i}}return await E.setSharedSources(a.sources),a.sources}catch{return r("Error while saving the shared datasources")}}),ul=re("shared_datasources/updateSharedDatasources",async(e,{rejectWithValue:r,getState:t})=>{try{const a={...t().sharedDatasources};for(const i of e){if(!i.namespace)return r("Namespace is required");if(a.sources[i.namespace])a.sources[i.namespace]=a.sources[i.namespace].map(s=>s.id===i.id?i:s);else return r("Namespace not found")}return await E.setSharedSources(a.sources),a.sources}catch{return r("Error while saving the shared datasources")}}),BI=re("shared_datasources/setDatasourceEvents",async({tabPath:e,name:r,namespace:t,events:a},{getState:i,dispatch:s})=>{var S,T,C;const{root:{tabs:c},sharedDatasources:l}=i(),f=((C=(T=(S=c.find(({path:F})=>F===e))==null?void 0:S.content)==null?void 0:T.metadata)==null?void 0:C.datasources)||[],p={local:!1,shared:!1},h=(F,D)=>F.id===r&&(!t&&!F.namespace||F.namespace===t)?(D==null||D(),{...F,events:a}):F,m=f.map(F=>h(F,()=>{p.local=!0})),_=Ke.flatten(Ke.values(l.sources)).map(F=>h(F,()=>{p.shared=!0}));p.local&&s(Pv({path:e,content:m,contentPath:"metadata.datasources"})),p.shared&&s(ul(_))}),Uv=fr({name:"shared-datasources",initialState:{},reducers:{addEmptyNamespace(e,r){e.sources[r.payload.name]=[]}},extraReducers(e){e.addCase(pi.pending,r=>({state:"loading",sources:{}})).addCase(pi.fulfilled,(r,t)=>({state:"loaded",sources:t.payload})).addCase(pi.rejected,(r,t)=>({state:"error",sources:{},error:t.payload||"Error while loading the shared datasources"})).addCase(ul.fulfilled,(r,t)=>({state:"loaded",sources:t.payload})).addCase(el.fulfilled,(r,t)=>{const{payload:a,meta:{arg:i}}=t;i.namespace&&Object.assign(r.sources,{[i.namespace]:a})}).addCase(kv.fulfilled,(r,t)=>({...r,sources:t.payload})).addCase(Wv.fulfilled,(r,t)=>({...r,sources:t.payload})).addCase(Bv.fulfilled,(r,t)=>({...r,sources:t.payload})).addCase(Qc.fulfilled,(r,t)=>{if(!t.payload)return r;const{datasources:a,namespace:i}=t.payload;i&&r.sources[i]&&Object.assign(r.sources[i],{[i]:a})}).addMatcher(Er(ol.fulfilled,eo.fulfilled,il.fulfilled,pa.fulfilled),(r,t)=>{if(!t.payload)return;const{namespace:a,list:i}=t.payload;a&&Object.assign(r.sources,{[a]:i})})}}),{addEmptyNamespace:WI}=Uv.actions,UI=Uv.reducer,HI=Zg.reducer,hi=re("shared_css/fetchSharedCSS",async(e,{rejectWithValue:r})=>{try{const{classes:t}=await E.getSharedCSS();return t}catch{return r("Error while loading the shared CSS")}}),GI=E.queue();async function qI(e){const r={verb:E.DesignerRequestVerb.SET_FILE_CONTENT,asText:!1,name:"shared_css.json",path:"",root:"shared",content:{classes:e.map(({scope:t,...a})=>({...a}))}};await GI(()=>E.http(E.API_PREFIX,{method:"POST",body:JSON.stringify(r),headers:new Headers({"Content-Type":"application/json"})}))}const Hv=fr({name:"shared-css",initialState:()=>{const{sharedCSS:e}=ga();return e||{state:"loading",styles:[]}},reducers:{updateSharedCss:(e,r)=>(e.styles=r.payload.classes,qI(r.payload.classes),e),initSharedCss:(e,r)=>(e.styles=r.payload.classes,e)},extraReducers(e){e.addCase(hi.pending,r=>({...r,state:"loading"})).addCase(hi.fulfilled,(r,{payload:t})=>({state:"loaded",styles:t})).addCase(hi.rejected,(r,t)=>({...r,state:"error",error:t.payload||"Error while loading the shared css"}))}}),{updateSharedCss:YI,initSharedCss:zI}=Hv.actions,VI=Hv.reducer,KI={},JI=fr({name:"tabs",initialState:KI,reducers:{}}),XI=e=>z(Ea,r=>{var t,a;return(a=(t=r.find(i=>i.path===e))==null?void 0:t.view)==null?void 0:a.panel});JI.reducer;const Gv=ih({root:jv,explorer:HI,debugger:NI,settings:eD,catalog:jI,roles:JP,sharedDatasources:UI,webforms:yI,modals:kI,sharedCSS:VI,model:fI});let Ya;const qv=()=>(Ya||(Ya=XS({reducer:Gv}),Ya.subscribe(lT(()=>{const{root:{activeTab:e,tabs:r,recent:t},roles:a,debugger:i,webforms:s,sharedCSS:c,settings:{session:l}}=Ya.getState();Ch({...l}),xh({tabs:r,activeTab:e,recent:t,roles:a,debugger:i,webforms:s,sharedCSS:c})},1e3))),Ya);var bc={exports:{}},ua={};/** @license React v17.0.2
132
+ `);a.extra={...a.extra,editor:E.EDITOR.Code,initialLineInfo:{line:i.length-1,lastModification:Date.now()}}}),e.addCase(Qc.fulfilled,(r,t)=>{var s,c;if(!((s=t.payload)!=null&&s.path)||(c=t.payload)!=null&&c.namespace)return;const a=t.payload.path,i=r.tabs.find(E.by("path",a));!i||!i.content||!i.content.metadata||(Object.assign(i.content.metadata,{datasources:t.payload.datasources}),i.flags.touched=!0,i.flags.confirmed=!0)}),e.addCase(el.fulfilled,(r,t)=>{const{payload:a,meta:{arg:i}}=t;i.namespace||r.tabs.forEach(s=>{s.path===i.path&&Object.assign(s.content,{metadata:{...s.content.metadata,datasources:a}})})}),e.addCase(fv.fulfilled,(r,t)=>{const{staleThreadIds:a}=t.payload;if(a.length===0)return;const i=a.map(s=>`Debugger/${s}`);if(r.tabs=r.tabs.filter(s=>!i.includes(s.path)),r.recent=r.recent.filter(({path:s})=>!i.includes(s)),r.tabs.length){r.activeTab=r.tabs[r.tabs.length-1].path;return}r.activeTab=""}),e.addCase(Xc.pending,r=>Hu(r,!1)),e.addMatcher(Er(pc),(r,t)=>{["project"].includes(t.payload.path)&&Hu(r,!0)}),e.addMatcher(Er(es),(r,t)=>{Hu(r,!1)}),e.addMatcher(Er(Nv,jt),(r,t)=>{const{payload:a}=t;let i;typeof a=="string"?i=r.tabs.find(({path:s})=>a===s):i=a,i&&(r.recent=[i,...r.recent.filter(({path:s})=>![i.path,"settings"].includes(s))])}),e.addMatcher(Er(Kg,Vg),(r,t)=>{r.tabs=r.tabs.map(a=>a.path===E.ROLES_TAB_PATH?{...a,flags:{...a.flags,confirmed:!0,touched:!0}}:a)}),e.addMatcher(Er(Jc),(r,t)=>{r.tabs=r.tabs.map(a=>a.path===E.ROLES_TAB_PATH?{...a,flags:{...a.flags,touched:!1}}:a)}),e.addMatcher(Er(ol.fulfilled,il.fulfilled,eo.fulfilled,pa.fulfilled),(r,t)=>{var i,s,c;const a=r.tabs.find(E.by("path",((i=t.payload)==null?void 0:i.path)||t.meta.arg.path));!a||(s=t.payload)!=null&&s.namespace||(a.flags.touched=!0,a.flags.confirmed=!0,Object.assign(a.content,{metadata:{...a.content.metadata,datasources:(c=t.payload)==null?void 0:c.list}}))}),e.addMatcher(Er(eo.fulfilled,pa.fulfilled),(r,t)=>{var l;const a=r.tabs.find(E.by("path",((l=t.payload)==null?void 0:l.path)||t.meta.arg.path));if(!a)return;const{panel:i}=a.view,s=E.getDatasourceId({id:t.meta.arg.id,namespace:t.meta.arg.namespace});if(i.type==="datasource"&&i.current===s)switch(t.type){case eo.fulfilled.type:Object.assign(a.view.panel,{type:"component",current:CR});break;case pa.fulfilled.type:const f=E.getDatasourceId({id:t.meta.arg.new_name,namespace:t.meta.arg.namespace});Object.assign(a.view.panel,{type:"datasource",current:f});break}})}}),{setTabs:CI,closeTab:sl,setContent:Pv,setTabFlags:Dv,setTabsFlags:RI,setTabExtra:OI,closeAllTabs:Iv,addDataSource:AI,closeRightTabs:Fv,closeOthers:$v,closeLeftTabs:Mv,closeSavedTabs:PI,setDataSources:DI,removeDataSource:II,confirmTab:FI,selectTab:Nv,selectTabByReference:jt,openTabUnselected:Lv,addWebFormStyles:$I,changeTabEditor:MI,openSettingsTab:NI,setPanelState:LI}=io.actions,jv=io.reducer,jI=uv.reducer,Wn=re("catalog/fetchCatalog",async(e,{rejectWithValue:r})=>{var t;try{const a=await E.getCatalog(),i=new Map,s=new Map;return(t=a==null?void 0:a.dataClasses)==null||t.forEach(({methods:c=[],...l})=>{const f={...l,methods:c};s.set(l.className,f),i.set(l.collectionName,f)}),{__BASEID:a.__BASEID,__UNIQID:a.__UNIQID,dataClassByCollectionName:Object.fromEntries(i.entries()),methods:a.methods||[],dataClasses:Object.fromEntries(s.entries())}}catch{return r("Error while loading the catalog")}}),kI=fr({name:"catalog",initialState:{state:"loading"},reducers:{},extraReducers(e){e.addCase(Wn.pending,()=>({state:"loading"})).addCase(Wn.fulfilled,(r,{payload:t})=>({state:"loaded",model:t})).addCase(Wn.rejected,(r,t)=>({state:"error",error:t.payload||"Error while loading the catalog"}))}}),BI=kI.reducer,WI=Bg.reducer,pi=re("shared_datasources/fetchSharedSources",async(e,{rejectWithValue:r})=>{try{return await E.getSharedDatasources()}catch{return r("Error while loading the shared datasources")}}),kv=re("shared_datasources/addSharedSource",async(e,{rejectWithValue:r,getState:t})=>{try{const a=JSON.parse(JSON.stringify(t().sharedDatasources));if(e.namespace)a.sources[e.namespace]?a.sources[e.namespace].push(e):a.sources[e.namespace]=[e];else return r("Namespace is required");return await E.setSharedSources(a.sources),a.sources}catch{return r("Error while saving the shared datasources")}}),Bv=re("shared_datasources/editSharedSource",async(e,{rejectWithValue:r,getState:t})=>{try{const a=t().sharedDatasources;if(!e.namespace)return r("Namespace is required");if(a.sources[e.namespace])a.sources[e.namespace]=a.sources[e.namespace].map(i=>i.id===e.id?{...e,id:i.id}:i);else return r("Namespace not found");return await E.setSharedSources(a.sources),a.sources}catch{return r("Error while saving the shared datasources")}}),Wv=re("shared_datasources/deleteSharedSource",async(e,{rejectWithValue:r,getState:t})=>{try{const a={...t().sharedDatasources};if(a.sources[e.namespace]){const i=a.sources[e.namespace].filter(s=>s.id!==e.id);if(i.length===0){const{[e.namespace]:s,...c}=a.sources;a.sources=c}else a.sources={...a.sources,[e.namespace]:i}}return await E.setSharedSources(a.sources),a.sources}catch{return r("Error while saving the shared datasources")}}),ul=re("shared_datasources/updateSharedDatasources",async(e,{rejectWithValue:r,getState:t})=>{try{const a={...t().sharedDatasources};for(const i of e){if(!i.namespace)return r("Namespace is required");if(a.sources[i.namespace])a.sources[i.namespace]=a.sources[i.namespace].map(s=>s.id===i.id?i:s);else return r("Namespace not found")}return await E.setSharedSources(a.sources),a.sources}catch{return r("Error while saving the shared datasources")}}),UI=re("shared_datasources/setDatasourceEvents",async({tabPath:e,name:r,namespace:t,events:a},{getState:i,dispatch:s})=>{var S,T,C;const{root:{tabs:c},sharedDatasources:l}=i(),f=((C=(T=(S=c.find(({path:F})=>F===e))==null?void 0:S.content)==null?void 0:T.metadata)==null?void 0:C.datasources)||[],p={local:!1,shared:!1},h=(F,D)=>F.id===r&&(!t&&!F.namespace||F.namespace===t)?(D==null||D(),{...F,events:a}):F,m=f.map(F=>h(F,()=>{p.local=!0})),_=Ke.flatten(Ke.values(l.sources)).map(F=>h(F,()=>{p.shared=!0}));p.local&&s(Pv({path:e,content:m,contentPath:"metadata.datasources"})),p.shared&&s(ul(_))}),Uv=fr({name:"shared-datasources",initialState:{},reducers:{addEmptyNamespace(e,r){e.sources[r.payload.name]=[]}},extraReducers(e){e.addCase(pi.pending,r=>({state:"loading",sources:{}})).addCase(pi.fulfilled,(r,t)=>({state:"loaded",sources:t.payload})).addCase(pi.rejected,(r,t)=>({state:"error",sources:{},error:t.payload||"Error while loading the shared datasources"})).addCase(ul.fulfilled,(r,t)=>({state:"loaded",sources:t.payload})).addCase(el.fulfilled,(r,t)=>{const{payload:a,meta:{arg:i}}=t;i.namespace&&Object.assign(r.sources,{[i.namespace]:a})}).addCase(kv.fulfilled,(r,t)=>({...r,sources:t.payload})).addCase(Wv.fulfilled,(r,t)=>({...r,sources:t.payload})).addCase(Bv.fulfilled,(r,t)=>({...r,sources:t.payload})).addCase(Qc.fulfilled,(r,t)=>{if(!t.payload)return r;const{datasources:a,namespace:i}=t.payload;i&&r.sources[i]&&Object.assign(r.sources[i],{[i]:a})}).addMatcher(Er(ol.fulfilled,eo.fulfilled,il.fulfilled,pa.fulfilled),(r,t)=>{if(!t.payload)return;const{namespace:a,list:i}=t.payload;a&&Object.assign(r.sources,{[a]:i})})}}),{addEmptyNamespace:HI}=Uv.actions,GI=Uv.reducer,qI=Zg.reducer,hi=re("shared_css/fetchSharedCSS",async(e,{rejectWithValue:r})=>{try{const{classes:t}=await E.getSharedCSS();return t}catch{return r("Error while loading the shared CSS")}}),YI=E.queue();async function zI(e){const r={verb:E.DesignerRequestVerb.SET_FILE_CONTENT,asText:!1,name:"shared_css.json",path:"",root:"shared",content:{classes:e.map(({scope:t,...a})=>({...a}))}};await YI(()=>E.http(E.API_PREFIX,{method:"POST",body:JSON.stringify(r),headers:new Headers({"Content-Type":"application/json"})}))}const Hv=fr({name:"shared-css",initialState:()=>{const{sharedCSS:e}=ga();return e||{state:"loading",styles:[]}},reducers:{updateSharedCss:(e,r)=>(e.styles=r.payload.classes,zI(r.payload.classes),e),initSharedCss:(e,r)=>(e.styles=r.payload.classes,e)},extraReducers(e){e.addCase(hi.pending,r=>({...r,state:"loading"})).addCase(hi.fulfilled,(r,{payload:t})=>({state:"loaded",styles:t})).addCase(hi.rejected,(r,t)=>({...r,state:"error",error:t.payload||"Error while loading the shared css"}))}}),{updateSharedCss:VI,initSharedCss:KI}=Hv.actions,JI=Hv.reducer,XI={},ZI=fr({name:"tabs",initialState:XI,reducers:{}}),QI=e=>z(Ea,r=>{var t,a;return(a=(t=r.find(i=>i.path===e))==null?void 0:t.view)==null?void 0:a.panel});ZI.reducer;const Gv=ih({root:jv,explorer:qI,debugger:jI,settings:rD,catalog:BI,roles:ZP,sharedDatasources:GI,webforms:bI,modals:WI,sharedCSS:JI,model:pI});let Ya;const qv=()=>(Ya||(Ya=XS({reducer:Gv}),Ya.subscribe(lT(()=>{const{root:{activeTab:e,tabs:r,recent:t},roles:a,debugger:i,webforms:s,sharedCSS:c,settings:{session:l}}=Ya.getState();Ch({...l}),xh({tabs:r,activeTab:e,recent:t,roles:a,debugger:i,webforms:s,sharedCSS:c})},1e3))),Ya);var bc={exports:{}},ua={};/** @license React v17.0.2
133
133
  * react-jsx-runtime.production.min.js
134
134
  *
135
135
  * Copyright (c) Facebook, Inc. and its affiliates.
136
136
  *
137
137
  * This source code is licensed under the MIT license found in the
138
138
  * LICENSE file in the root directory of this source tree.
139
- */var Qp;function ZI(){if(Qp)return ua;Qp=1,Mc();var e=dt,r=60103;if(ua.Fragment=60107,typeof Symbol=="function"&&Symbol.for){var t=Symbol.for;r=t("react.element"),ua.Fragment=t("react.fragment")}var a=e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,i=Object.prototype.hasOwnProperty,s={key:!0,ref:!0,__self:!0,__source:!0};function c(l,f,p){var h,m={},_=null,S=null;p!==void 0&&(_=""+p),f.key!==void 0&&(_=""+f.key),f.ref!==void 0&&(S=f.ref);for(h in f)i.call(f,h)&&!s.hasOwnProperty(h)&&(m[h]=f[h]);if(l&&l.defaultProps)for(h in f=l.defaultProps,f)m[h]===void 0&&(m[h]=f[h]);return{$$typeof:r,type:l,key:_,ref:S,props:m,_owner:a.current}}return ua.jsx=c,ua.jsxs=c,ua}var Gu={};/** @license React v17.0.2
139
+ */var Qp;function eF(){if(Qp)return ua;Qp=1,Mc();var e=dt,r=60103;if(ua.Fragment=60107,typeof Symbol=="function"&&Symbol.for){var t=Symbol.for;r=t("react.element"),ua.Fragment=t("react.fragment")}var a=e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,i=Object.prototype.hasOwnProperty,s={key:!0,ref:!0,__self:!0,__source:!0};function c(l,f,p){var h,m={},_=null,S=null;p!==void 0&&(_=""+p),f.key!==void 0&&(_=""+f.key),f.ref!==void 0&&(S=f.ref);for(h in f)i.call(f,h)&&!s.hasOwnProperty(h)&&(m[h]=f[h]);if(l&&l.defaultProps)for(h in f=l.defaultProps,f)m[h]===void 0&&(m[h]=f[h]);return{$$typeof:r,type:l,key:_,ref:S,props:m,_owner:a.current}}return ua.jsx=c,ua.jsxs=c,ua}var Gu={};/** @license React v17.0.2
140
140
  * react-jsx-runtime.development.js
141
141
  *
142
142
  * Copyright (c) Facebook, Inc. and its affiliates.
143
143
  *
144
144
  * This source code is licensed under the MIT license found in the
145
145
  * LICENSE file in the root directory of this source tree.
146
- */var eh;function QI(){return eh||(eh=1,function(e){process.env.NODE_ENV!=="production"&&function(){var r=dt,t=Mc(),a=60103,i=60106;e.Fragment=60107;var s=60108,c=60114,l=60109,f=60110,p=60112,h=60113,m=60120,_=60115,S=60116,T=60121,C=60122,F=60117,D=60129,W=60131;if(typeof Symbol=="function"&&Symbol.for){var $=Symbol.for;a=$("react.element"),i=$("react.portal"),e.Fragment=$("react.fragment"),s=$("react.strict_mode"),c=$("react.profiler"),l=$("react.provider"),f=$("react.context"),p=$("react.forward_ref"),h=$("react.suspense"),m=$("react.suspense_list"),_=$("react.memo"),S=$("react.lazy"),T=$("react.block"),C=$("react.server.block"),F=$("react.fundamental"),$("react.scope"),$("react.opaque.id"),D=$("react.debug_trace_mode"),$("react.offscreen"),W=$("react.legacy_hidden")}var j=typeof Symbol=="function"&&Symbol.iterator,A="@@iterator";function K(g){if(g===null||typeof g!="object")return null;var R=j&&g[j]||g[A];return typeof R=="function"?R:null}var G=r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function Y(g){{for(var R=arguments.length,I=new Array(R>1?R-1:0),q=1;q<R;q++)I[q-1]=arguments[q];se("error",g,I)}}function se(g,R,I){{var q=G.ReactDebugCurrentFrame,ae=q.getStackAddendum();ae!==""&&(R+="%s",I=I.concat([ae]));var oe=I.map(function(ee){return""+ee});oe.unshift("Warning: "+R),Function.prototype.apply.call(console[g],console,oe)}}var We=!1;function Oe(g){return!!(typeof g=="string"||typeof g=="function"||g===e.Fragment||g===c||g===D||g===s||g===h||g===m||g===W||We||typeof g=="object"&&g!==null&&(g.$$typeof===S||g.$$typeof===_||g.$$typeof===l||g.$$typeof===f||g.$$typeof===p||g.$$typeof===F||g.$$typeof===T||g[0]===C))}function it(g,R,I){var q=R.displayName||R.name||"";return g.displayName||(q!==""?I+"("+q+")":I)}function Z(g){return g.displayName||"Context"}function we(g){if(g==null)return null;if(typeof g.tag=="number"&&Y("Received an unexpected object in getComponentName(). This is likely a bug in React. Please file an issue."),typeof g=="function")return g.displayName||g.name||null;if(typeof g=="string")return g;switch(g){case e.Fragment:return"Fragment";case i:return"Portal";case c:return"Profiler";case s:return"StrictMode";case h:return"Suspense";case m:return"SuspenseList"}if(typeof g=="object")switch(g.$$typeof){case f:var R=g;return Z(R)+".Consumer";case l:var I=g;return Z(I._context)+".Provider";case p:return it(g,g.render,"ForwardRef");case _:return we(g.type);case T:return we(g._render);case S:{var q=g,ae=q._payload,oe=q._init;try{return we(oe(ae))}catch{return null}}}return null}var Xe=0,Ze,Ue,et,Dt,H,V,ve;function he(){}he.__reactDisabledLog=!0;function le(){{if(Xe===0){Ze=console.log,Ue=console.info,et=console.warn,Dt=console.error,H=console.group,V=console.groupCollapsed,ve=console.groupEnd;var g={configurable:!0,enumerable:!0,value:he,writable:!0};Object.defineProperties(console,{info:g,log:g,warn:g,error:g,group:g,groupCollapsed:g,groupEnd:g})}Xe++}}function ye(){{if(Xe--,Xe===0){var g={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:t({},g,{value:Ze}),info:t({},g,{value:Ue}),warn:t({},g,{value:et}),error:t({},g,{value:Dt}),group:t({},g,{value:H}),groupCollapsed:t({},g,{value:V}),groupEnd:t({},g,{value:ve})})}Xe<0&&Y("disabledDepth fell below zero. This is a bug in React. Please file an issue.")}}var ie=G.ReactCurrentDispatcher,fe;function ue(g,R,I){{if(fe===void 0)try{throw Error()}catch(ae){var q=ae.stack.trim().match(/\n( *(at )?)/);fe=q&&q[1]||""}return`
146
+ */var eh;function tF(){return eh||(eh=1,function(e){process.env.NODE_ENV!=="production"&&function(){var r=dt,t=Mc(),a=60103,i=60106;e.Fragment=60107;var s=60108,c=60114,l=60109,f=60110,p=60112,h=60113,m=60120,_=60115,S=60116,T=60121,C=60122,F=60117,D=60129,W=60131;if(typeof Symbol=="function"&&Symbol.for){var $=Symbol.for;a=$("react.element"),i=$("react.portal"),e.Fragment=$("react.fragment"),s=$("react.strict_mode"),c=$("react.profiler"),l=$("react.provider"),f=$("react.context"),p=$("react.forward_ref"),h=$("react.suspense"),m=$("react.suspense_list"),_=$("react.memo"),S=$("react.lazy"),T=$("react.block"),C=$("react.server.block"),F=$("react.fundamental"),$("react.scope"),$("react.opaque.id"),D=$("react.debug_trace_mode"),$("react.offscreen"),W=$("react.legacy_hidden")}var j=typeof Symbol=="function"&&Symbol.iterator,A="@@iterator";function K(g){if(g===null||typeof g!="object")return null;var R=j&&g[j]||g[A];return typeof R=="function"?R:null}var G=r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function Y(g){{for(var R=arguments.length,I=new Array(R>1?R-1:0),q=1;q<R;q++)I[q-1]=arguments[q];se("error",g,I)}}function se(g,R,I){{var q=G.ReactDebugCurrentFrame,ae=q.getStackAddendum();ae!==""&&(R+="%s",I=I.concat([ae]));var oe=I.map(function(ee){return""+ee});oe.unshift("Warning: "+R),Function.prototype.apply.call(console[g],console,oe)}}var We=!1;function Oe(g){return!!(typeof g=="string"||typeof g=="function"||g===e.Fragment||g===c||g===D||g===s||g===h||g===m||g===W||We||typeof g=="object"&&g!==null&&(g.$$typeof===S||g.$$typeof===_||g.$$typeof===l||g.$$typeof===f||g.$$typeof===p||g.$$typeof===F||g.$$typeof===T||g[0]===C))}function it(g,R,I){var q=R.displayName||R.name||"";return g.displayName||(q!==""?I+"("+q+")":I)}function Z(g){return g.displayName||"Context"}function we(g){if(g==null)return null;if(typeof g.tag=="number"&&Y("Received an unexpected object in getComponentName(). This is likely a bug in React. Please file an issue."),typeof g=="function")return g.displayName||g.name||null;if(typeof g=="string")return g;switch(g){case e.Fragment:return"Fragment";case i:return"Portal";case c:return"Profiler";case s:return"StrictMode";case h:return"Suspense";case m:return"SuspenseList"}if(typeof g=="object")switch(g.$$typeof){case f:var R=g;return Z(R)+".Consumer";case l:var I=g;return Z(I._context)+".Provider";case p:return it(g,g.render,"ForwardRef");case _:return we(g.type);case T:return we(g._render);case S:{var q=g,ae=q._payload,oe=q._init;try{return we(oe(ae))}catch{return null}}}return null}var Xe=0,Ze,Ue,et,Dt,H,V,ve;function he(){}he.__reactDisabledLog=!0;function le(){{if(Xe===0){Ze=console.log,Ue=console.info,et=console.warn,Dt=console.error,H=console.group,V=console.groupCollapsed,ve=console.groupEnd;var g={configurable:!0,enumerable:!0,value:he,writable:!0};Object.defineProperties(console,{info:g,log:g,warn:g,error:g,group:g,groupCollapsed:g,groupEnd:g})}Xe++}}function ye(){{if(Xe--,Xe===0){var g={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:t({},g,{value:Ze}),info:t({},g,{value:Ue}),warn:t({},g,{value:et}),error:t({},g,{value:Dt}),group:t({},g,{value:H}),groupCollapsed:t({},g,{value:V}),groupEnd:t({},g,{value:ve})})}Xe<0&&Y("disabledDepth fell below zero. This is a bug in React. Please file an issue.")}}var ie=G.ReactCurrentDispatcher,fe;function ue(g,R,I){{if(fe===void 0)try{throw Error()}catch(ae){var q=ae.stack.trim().match(/\n( *(at )?)/);fe=q&&q[1]||""}return`
147
147
  `+fe+g}}var me=!1,ge;{var J=typeof WeakMap=="function"?WeakMap:Map;ge=new J}function N(g,R){if(!g||me)return"";{var I=ge.get(g);if(I!==void 0)return I}var q;me=!0;var ae=Error.prepareStackTrace;Error.prepareStackTrace=void 0;var oe;oe=ie.current,ie.current=null,le();try{if(R){var ee=function(){throw Error()};if(Object.defineProperty(ee.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(ee,[])}catch(ut){q=ut}Reflect.construct(g,[],ee)}else{try{ee.call()}catch(ut){q=ut}g.call(ee.prototype)}}else{try{throw Error()}catch(ut){q=ut}g()}}catch(ut){if(ut&&q&&typeof ut.stack=="string"){for(var Q=ut.stack.split(`
148
148
  `),Ie=q.stack.split(`
149
149
  `),be=Q.length-1,Ee=Ie.length-1;be>=1&&Ee>=0&&Q[be]!==Ie[Ee];)Ee--;for(;be>=1&&Ee>=0;be--,Ee--)if(Q[be]!==Ie[Ee]){if(be!==1||Ee!==1)do if(be--,Ee--,Ee<0||Q[be]!==Ie[Ee]){var at=`
@@ -153,5 +153,5 @@ Check the render method of \``+g+"`."}return""}}function Ta(g){{if(g!==void 0){v
153
153
 
154
154
  Check your code at `+R+":"+I+"."}return""}}var xn={};function Hn(g){{var R=Tn();if(!R){var I=typeof g=="string"?g:g.displayName||g.name;I&&(R=`
155
155
 
156
- Check the top-level render call using <`+I+">.")}return R}}function rn(g,R){{if(!g._store||g._store.validated||g.key!=null)return;g._store.validated=!0;var I=Hn(R);if(xn[I])return;xn[I]=!0;var q="";g&&g._owner&&g._owner!==pr.current&&(q=" It was passed a child from "+we(g._owner.type)+"."),_t(g),Y('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',I,q),_t(null)}}function Cn(g,R){{if(typeof g!="object")return;if(Array.isArray(g))for(var I=0;I<g.length;I++){var q=g[I];gr(q)&&rn(q,R)}else if(gr(g))g._store&&(g._store.validated=!0);else if(g){var ae=K(g);if(typeof ae=="function"&&ae!==g.entries)for(var oe=ae.call(g),ee;!(ee=oe.next()).done;)gr(ee.value)&&rn(ee.value,R)}}}function xa(g){{var R=g.type;if(R==null||typeof R=="string")return;var I;if(typeof R=="function")I=R.propTypes;else if(typeof R=="object"&&(R.$$typeof===p||R.$$typeof===_))I=R.propTypes;else return;if(I){var q=we(R);Sa(I,g.props,"prop",q,g)}else if(R.PropTypes!==void 0&&!hr){hr=!0;var ae=we(R);Y("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?",ae||"Unknown")}typeof R.getDefaultProps=="function"&&!R.getDefaultProps.isReactClassApproved&&Y("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.")}}function Ca(g){{for(var R=Object.keys(g.props),I=0;I<R.length;I++){var q=R[I];if(q!=="children"&&q!=="key"){_t(g),Y("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.",q),_t(null);break}}g.ref!==null&&(_t(g),Y("Invalid attribute `ref` supplied to `React.Fragment`."),_t(null))}}function Rn(g,R,I,q,ae,oe){{var ee=Oe(g);if(!ee){var Q="";(g===void 0||typeof g=="object"&&g!==null&&Object.keys(g).length===0)&&(Q+=" You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.");var Ie=Ta(ae);Ie?Q+=Ie:Q+=Tn();var be;g===null?be="null":Array.isArray(g)?be="array":g!==void 0&&g.$$typeof===a?(be="<"+(we(g.type)||"Unknown")+" />",Q=" Did you accidentally export a JSX literal instead of a component?"):be=typeof g,Y("React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",be,Q)}var Ee=wn(g,R,I,ae,oe);if(Ee==null)return Ee;if(ee){var at=R.children;if(at!==void 0)if(q)if(Array.isArray(at)){for(var Ft=0;Ft<at.length;Ft++)Cn(at[Ft],g);Object.freeze&&Object.freeze(at)}else Y("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else Cn(at,g)}return g===e.Fragment?Ca(Ee):xa(Ee),Ee}}function Gn(g,R,I){return Rn(g,R,I,!0)}function Ra(g,R,I){return Rn(g,R,I,!1)}var Oa=Ra,Aa=Gn;e.jsx=Oa,e.jsxs=Aa}()}(Gu)),Gu}process.env.NODE_ENV==="production"?bc.exports=ZI():bc.exports=QI();var eF=bc.exports;const tF=({children:e,store:r})=>eF.jsx(cg,{store:r,children:e});exports.CATALOG_REFRESH_DELAY=ji;exports.DEFAULT_CACHE=Dc;exports.EAttributeKind=zr;exports.EAttributeTypes=rl;exports.EDebuggerErrorReason=Eh;exports.EDebuggerErrorType=Ei;exports.EDebuggerState=qr;exports.EDisplayMode=Hc;exports.EPermissionType=Me;exports.ETooltipBehavior=Uc;exports.ExpressionIndex=_h;exports.FLAGS_INIT_STATE=Sv;exports.FLAGS_KEYS=oo;exports.ModalCloseReason=zc;exports.ModalColor=Ir;exports.ModalIcons=VP;exports.ModalType=qt;exports.ReduxProvider=tF;exports.THEME_CLASSES=Tg;exports.WT_FLAGS_KEYS=Ev;exports.actionsToPrivs=Mg;exports.addAttribute=gv;exports.addBreakpointDecoration=TD;exports.addComponent=Tv;exports.addCraftedComponent=_I;exports.addDataSource=RI;exports.addDataclass=dv;exports.addDatasource=ol;exports.addEmptyNamespace=WI;exports.addExpression=AD;exports.addIn=wP;exports.addNewFile=Qg;exports.addPermission=AP;exports.addSession=ND;exports.addSharedSource=kv;exports.addWebFormStyles=II;exports.allowed=EP;exports.attributeKinds=qD;exports.attributeScopes=KD;exports.attributeTypes=zD;exports.castToFileFolder=sD;exports.changeTabEditor=FI;exports.children=Pi;exports.clearBreakpoints=RD;exports.closeAllTabs=Iv;exports.closeLeftTabs=Mv;exports.closeModal=BP;exports.closeOthers=$v;exports.closeRightTabs=Fv;exports.closeSavedTabs=OI;exports.closeTab=sl;exports.confirmTab=DI;exports.create=$g;exports.createModal=Wg;exports.createModelFiles=vc;exports.createNewFile=la;exports.createNewFileAndOpen=dD;exports.createNewNode=li;exports.createRole=LP;exports.createWithResource=xP;exports.dataclassScopes=VD;exports.deleteDatasource=eo;exports.deleteFile=yc;exports.deleteFolder=pD;exports.deleteSharedSource=Wv;exports.deserializeModel=Oh;exports.duplicateNode=fi;exports.editAttributeProperty=XD;exports.editComponent=xv;exports.editCraftedComponent=EI;exports.editDataSource=el;exports.editDataclassPrimaryKey=mv;exports.editDataclassProperty=ZD;exports.editDatasource=il;exports.editModal=WP;exports.editRole=NP;exports.editSharedSource=Bv;exports.editors=Vh;exports.executeMethod=gD;exports.expandFolder=nD;exports.extensions=Kh;exports.fetchAppSettings=Jg;exports.fetchCatalog=Wn;exports.fetchChanges=iv;exports.fetchCraftedComponents=Av;exports.fetchFiles=vD;exports.fetchFolderContent=Pr;exports.fetchFolderContentWithoutExpanding=Ja;exports.fetchModel=nl;exports.fetchRoles=Di;exports.fetchRolesChanges=Yg;exports.fetchSettings=Xc;exports.fetchSharedCss=hi;exports.fetchSharedDatasources=pi;exports.fetchTemplate=bI;exports.fetchTemplates=mI;exports.findNodeByPath=vt;exports.findOne=Bn;exports.findSession=ft;exports.findSessionByPath=bg;exports.getCachedState=ga;exports.getCashedPrefrences=Rh;exports.getDebuggerTabName=Mh;exports.getDebuggerTabPath=Fc;exports.getDefaultContent=ev;exports.getDefaultName=di;exports.getDictByName=Lg;exports.getEditors=Sr;exports.getExtension=Xh;exports.getFilePath=nv;exports.getFileType=rv;exports.getFilenameFromType=tv;exports.getGraphData=OP;exports.getInheritedResources=kg;exports.getModalTitle=ki;exports.getNodeRelativePath=Jh;exports.getPrivilegeById=tn;exports.getPromotions=FP;exports.getResourceFromType=Yc;exports.getStore=qv;exports.indexTypes=JD;exports.initSharedCss=zI;exports.injectContentAtLine=av;exports.inspect=pI;exports.isJSON=Ah;exports.isRelatedAttr=eI;exports.isRelatedEntitiesAttr=Ii;exports.isRelatedEntityAttr=Qa;exports.isRenameDatasource=wI;exports.isRolesOutdated=Vc;exports.isValidPrimaryKey=GD;exports.modelSubject=ag;exports.openAddFileInput=aD;exports.openFile=Xa;exports.openFileAtLine=Zc;exports.openFileAtSelection=ov;exports.openModal=dr;exports.openModel=tI;exports.openRoles=wD;exports.openSettingsTab=$I;exports.openTabUnselected=Lv;exports.parents=Xi;exports.populateShallow=RP;exports.primaryKeyAttributes=YD;exports.refreshFile=oD;exports.reloadTab=mc;exports.relocateNode=Za;exports.remove=SP;exports.removeAllExpressions=ID;exports.removeAttribute=vv;exports.removeBreakpointDecoration=xD;exports.removeComponent=Cv;exports.removeCraftedComponent=SI;exports.removeDataSource=PI;exports.removeDataclass=hv;exports.removeDebuggerSessionsNotIn=fv;exports.removeExpression=DD;exports.removeFile=gc;exports.removeFileNode=hD;exports.removeFrom=TP;exports.removeModal=Ug;exports.removePermission=PP;exports.removeRole=MP;exports.removeSession=jD;exports.removeSessionByIndex=kD;exports.rename=CP;exports.renameAttribute=yv;exports.renameCollection=bv;exports.renameDataSource=Qc;exports.renameDataclass=pv;exports.renameDatasource=pa;exports.renameExpression=PD;exports.renameFile=fa;exports.resetResources=DP;exports.rootReducer=jv;exports.sanitize=Zi;exports.sanitizePermissions=Ng;exports.sanitizePrivileges=Ig;exports.saveAll=yD;exports.saveExpressions=MD;exports.saveModel=Fi;exports.savePrefrences=Ch;exports.saveRole=jP;exports.saveRoles=dc;exports.saveState=xh;exports.saveTab=da;exports.selectActiveLine=zO;exports.selectActiveTab=iA;exports.selectAllDatasourcesByPath=kO;exports.selectAppState=vg;exports.selectBreakpoints=UO;exports.selectCSSClassesByPath=MA;exports.selectCallChainVariables=rA;exports.selectCatalog=Lc;exports.selectCatalogMethods=FO;exports.selectCatalogState=DO;exports.selectClassBreakpoints=GO;exports.selectClassOffset=aA;exports.selectClasses=bA;exports.selectClassesFolder=wg;exports.selectComponents=Cg;exports.selectComponentsByPath=LO;exports.selectContentByPath=_g;exports.selectCraftedComponent=WA;exports.selectCurrentFrameByThreadId=QO;exports.selectCurrentTab=uA;exports.selectDataclasses=IO;exports.selectDatasource=jO;exports.selectDatasourcesByPath=yg;exports.selectDatasourcesTheme=HA;exports.selectDebuggerChannels=eA;exports.selectDebuggerData=Un;exports.selectDebuggerMeta=BO;exports.selectDebuggerSessions=kt;exports.selectDebuggerSessionsCount=WO;exports.selectDebuggers=gA;exports.selectDraftBreakpoints=HO;exports.selectDraftClassBreakpoints=qO;exports.selectExceptions=oA;exports.selectExplorer=vA;exports.selectExpressions=VO;exports.selectExpressionsVariables=nA;exports.selectFlagsByPath=LA;exports.selectGuestPrivilege=TA;exports.selectHasTabs=fA;exports.selectHighlightedLines=YO;exports.selectInspectedCSSClass=jA;exports.selectInspectedDatasource=kA;exports.selectInspector=zi;exports.selectInspectorStateByType=UA;exports.selectIsLoaded=GA;exports.selectMethods=yA;exports.selectMethodsFolder=Sg;exports.selectModals=_A;exports.selectMonacoZoom=FA;exports.selectPanelByPath=XI;exports.selectPartialSessionSettings=OA;exports.selectPreferences=PA;exports.selectPreviewedWebformsPaths=lA;exports.selectPrivileges=wA;exports.selectProjectSettings=AA;exports.selectQodly=IA;exports.selectRecentFiles=sA;exports.selectRemoteDebuggerMode=DA;exports.selectRoles=SA;exports.selectRolesAndPrivileges=EA;exports.selectRolesDate=RA;exports.selectRolesFlags=xA;exports.selectRoot=en;exports.selectSelectedTab=CA;exports.selectServerSettings=Bc;exports.selectSessionSettings=kc;exports.selectSharedCSS=NA;exports.selectSharedDatasources=mg;exports.selectSourceByPath=JO;exports.selectSourceByThreadId=ZO;exports.selectStackFrames=tA;exports.selectStoppedFromDebugSession=KO;exports.selectStylesByPath=$A;exports.selectTab=Nv;exports.selectTabByPath=co;exports.selectTabByReference=jt;exports.selectTabExtraByPath=dA;exports.selectTabMaxWeight=cA;exports.selectTabs=Ea;exports.selectTemplates=Rg;exports.selectTemplatesData=BA;exports.selectThreadIdByPath=XO;exports.selectTouchedTabs=jc;exports.selectTouchedTabsLength=hA;exports.selectWebForms=mA;exports.selectWebFormsFolder=Eg;exports.selectWebformNodes=pA;exports.selectWebformStylesByPath=Wc;exports.selectWebforms=lo;exports.serializeModel=QD;exports.setActiveLine=OD;exports.setBreakpointsDecoration=CD;exports.setCallChainVariables=BD;exports.setContent=Pv;exports.setDataSources=AI;exports.setDatasourceEvents=BI;exports.setDatasourcesTheme=gI;exports.setDebuggerMeta=HD;exports.setExpression=FD;exports.setExpressionVariables=WD;exports.setFolderChildren=iD;exports.setModelFlag=aI;exports.setPanelState=MI;exports.setRolesContent=Kc;exports.setSelectedGroup=hI;exports.setSessions=cv;exports.setSetting=pc;exports.setSettings=es;exports.setSettingsAsText=QP;exports.setSourceContent=UD;exports.setTabExtra=CI;exports.setTabFlags=Dv;exports.setTabs=TI;exports.setTabsFlags=xI;exports.setTemplateData=Ov;exports.setTemplatesData=Rv;exports.setWebformsFlag=vI;exports.sort=Fg;exports.stateReducer=Gv;exports.stateSlice=io;exports.toAPI=Qi;exports.toState=$P;exports.toggleExpandFolder=rD;exports.toggleInspector=dI;exports.togglePermission=IP;exports.togglePrivilegePermission=jg;exports.toggleTab=KP;exports.tryCloseAllTabs=bD;exports.tryCloseLeftTabs=ED;exports.tryCloseOtherTabs=mD;exports.tryCloseRightTabs=_D;exports.tryCloseTab=tl;exports.tryEditMethod=uD;exports.tryInjectMethod=sv;exports.tryRenameDataclass=rI;exports.uniquePush=lr;exports.updateExpressionAt=$D;exports.updatePrivileges=Vg;exports.updateRoles=Kg;exports.updateRolesAndPrivileges=Jc;exports.updateSession=LD;exports.updateSharedCss=YI;exports.updateSharedDatasources=ul;exports.uploadFile=fD;exports.uploadFileAndGetResponse=lD;exports.useAppDispatch=PO;exports.useAppSelector=Qr;exports.useAttribute=uI;exports.useCollections=iI;exports.useDataclass=sI;exports.useDataclasses=oI;exports.useMethod=NO;exports.useMethods=$O;exports.useModelFlags=lI;exports.useModelProperties=cI;exports.wipeDebuggerSessions=lv;
156
+ Check the top-level render call using <`+I+">.")}return R}}function rn(g,R){{if(!g._store||g._store.validated||g.key!=null)return;g._store.validated=!0;var I=Hn(R);if(xn[I])return;xn[I]=!0;var q="";g&&g._owner&&g._owner!==pr.current&&(q=" It was passed a child from "+we(g._owner.type)+"."),_t(g),Y('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',I,q),_t(null)}}function Cn(g,R){{if(typeof g!="object")return;if(Array.isArray(g))for(var I=0;I<g.length;I++){var q=g[I];gr(q)&&rn(q,R)}else if(gr(g))g._store&&(g._store.validated=!0);else if(g){var ae=K(g);if(typeof ae=="function"&&ae!==g.entries)for(var oe=ae.call(g),ee;!(ee=oe.next()).done;)gr(ee.value)&&rn(ee.value,R)}}}function xa(g){{var R=g.type;if(R==null||typeof R=="string")return;var I;if(typeof R=="function")I=R.propTypes;else if(typeof R=="object"&&(R.$$typeof===p||R.$$typeof===_))I=R.propTypes;else return;if(I){var q=we(R);Sa(I,g.props,"prop",q,g)}else if(R.PropTypes!==void 0&&!hr){hr=!0;var ae=we(R);Y("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?",ae||"Unknown")}typeof R.getDefaultProps=="function"&&!R.getDefaultProps.isReactClassApproved&&Y("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.")}}function Ca(g){{for(var R=Object.keys(g.props),I=0;I<R.length;I++){var q=R[I];if(q!=="children"&&q!=="key"){_t(g),Y("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.",q),_t(null);break}}g.ref!==null&&(_t(g),Y("Invalid attribute `ref` supplied to `React.Fragment`."),_t(null))}}function Rn(g,R,I,q,ae,oe){{var ee=Oe(g);if(!ee){var Q="";(g===void 0||typeof g=="object"&&g!==null&&Object.keys(g).length===0)&&(Q+=" You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.");var Ie=Ta(ae);Ie?Q+=Ie:Q+=Tn();var be;g===null?be="null":Array.isArray(g)?be="array":g!==void 0&&g.$$typeof===a?(be="<"+(we(g.type)||"Unknown")+" />",Q=" Did you accidentally export a JSX literal instead of a component?"):be=typeof g,Y("React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",be,Q)}var Ee=wn(g,R,I,ae,oe);if(Ee==null)return Ee;if(ee){var at=R.children;if(at!==void 0)if(q)if(Array.isArray(at)){for(var Ft=0;Ft<at.length;Ft++)Cn(at[Ft],g);Object.freeze&&Object.freeze(at)}else Y("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else Cn(at,g)}return g===e.Fragment?Ca(Ee):xa(Ee),Ee}}function Gn(g,R,I){return Rn(g,R,I,!0)}function Ra(g,R,I){return Rn(g,R,I,!1)}var Oa=Ra,Aa=Gn;e.jsx=Oa,e.jsxs=Aa}()}(Gu)),Gu}process.env.NODE_ENV==="production"?bc.exports=eF():bc.exports=tF();var rF=bc.exports;const nF=({children:e,store:r})=>rF.jsx(cg,{store:r,children:e});exports.CATALOG_REFRESH_DELAY=ji;exports.DEFAULT_CACHE=Dc;exports.EAttributeKind=zr;exports.EAttributeTypes=rl;exports.EDebuggerErrorReason=Eh;exports.EDebuggerErrorType=Ei;exports.EDebuggerState=qr;exports.EDisplayMode=Hc;exports.EPermissionType=Me;exports.ETooltipBehavior=Uc;exports.ExpressionIndex=_h;exports.FLAGS_INIT_STATE=Sv;exports.FLAGS_KEYS=oo;exports.ModalCloseReason=zc;exports.ModalColor=Ir;exports.ModalIcons=KP;exports.ModalType=qt;exports.ReduxProvider=nF;exports.THEME_CLASSES=Tg;exports.WT_FLAGS_KEYS=Ev;exports.actionsToPrivs=Mg;exports.addAttribute=gv;exports.addBreakpointDecoration=CD;exports.addComponent=Tv;exports.addCraftedComponent=SI;exports.addDataSource=AI;exports.addDataclass=dv;exports.addDatasource=ol;exports.addEmptyNamespace=HI;exports.addExpression=DD;exports.addIn=TP;exports.addNewFile=Qg;exports.addPermission=PP;exports.addSession=jD;exports.addSharedSource=kv;exports.addWebFormStyles=$I;exports.allowed=SP;exports.attributeKinds=zD;exports.attributeScopes=XD;exports.attributeTypes=KD;exports.castToFileFolder=cD;exports.changeTabEditor=MI;exports.children=Pi;exports.clearBreakpoints=AD;exports.closeAllTabs=Iv;exports.closeLeftTabs=Mv;exports.closeModal=WP;exports.closeOthers=$v;exports.closeRightTabs=Fv;exports.closeSavedTabs=PI;exports.closeTab=sl;exports.confirmTab=FI;exports.create=$g;exports.createModal=Wg;exports.createModelFiles=vc;exports.createNewFile=la;exports.createNewFileAndOpen=hD;exports.createNewNode=li;exports.createRole=jP;exports.createWithResource=CP;exports.dataclassScopes=JD;exports.deleteDatasource=eo;exports.deleteFile=yc;exports.deleteFolder=gD;exports.deleteSharedSource=Wv;exports.deserializeModel=Oh;exports.duplicateNode=fi;exports.editAttributeProperty=QD;exports.editComponent=xv;exports.editCraftedComponent=wI;exports.editDataSource=el;exports.editDataclassPrimaryKey=mv;exports.editDataclassProperty=eI;exports.editDatasource=il;exports.editModal=UP;exports.editRole=LP;exports.editSharedSource=Bv;exports.editors=Vh;exports.executeMethod=yD;exports.expandFolder=oD;exports.extensions=Kh;exports.fetchAppSettings=Jg;exports.fetchCatalog=Wn;exports.fetchChanges=iv;exports.fetchCraftedComponents=Av;exports.fetchFiles=mD;exports.fetchFolderContent=Pr;exports.fetchFolderContentWithoutExpanding=Ja;exports.fetchModel=nl;exports.fetchRoles=Di;exports.fetchRolesChanges=Yg;exports.fetchSettings=Xc;exports.fetchSharedCss=hi;exports.fetchSharedDatasources=pi;exports.fetchTemplate=EI;exports.fetchTemplates=_I;exports.findNodeByPath=vt;exports.findOne=Bn;exports.findSession=ft;exports.findSessionByPath=bg;exports.getCachedState=ga;exports.getCashedPrefrences=Rh;exports.getDebuggerTabName=Mh;exports.getDebuggerTabPath=Fc;exports.getDefaultContent=ev;exports.getDefaultName=di;exports.getDictByName=Lg;exports.getEditors=Sr;exports.getExtension=Xh;exports.getFilePath=nv;exports.getFileType=rv;exports.getFilenameFromType=tv;exports.getGraphData=AP;exports.getInheritedResources=kg;exports.getModalTitle=ki;exports.getNodeRelativePath=Jh;exports.getPrivilegeById=tn;exports.getPromotions=$P;exports.getResourceFromType=Yc;exports.getStore=qv;exports.indexTypes=ZD;exports.initSharedCss=KI;exports.injectContentAtLine=av;exports.inspect=gI;exports.isJSON=Ah;exports.isRelatedAttr=rI;exports.isRelatedEntitiesAttr=Ii;exports.isRelatedEntityAttr=Qa;exports.isRenameDatasource=xI;exports.isRolesOutdated=Vc;exports.isValidPrimaryKey=YD;exports.modelSubject=ag;exports.openAddFileInput=iD;exports.openFile=Xa;exports.openFileAtLine=Zc;exports.openFileAtSelection=ov;exports.openModal=dr;exports.openModel=nI;exports.openRoles=xD;exports.openSettingsTab=NI;exports.openTabUnselected=Lv;exports.parents=Xi;exports.populateShallow=OP;exports.primaryKeyAttributes=VD;exports.refreshFile=sD;exports.reloadTab=mc;exports.relocateNode=Za;exports.remove=wP;exports.removeAllExpressions=$D;exports.removeAttribute=vv;exports.removeBreakpointDecoration=RD;exports.removeComponent=Cv;exports.removeCraftedComponent=TI;exports.removeDataSource=II;exports.removeDataclass=hv;exports.removeDebuggerSessionsNotIn=fv;exports.removeExpression=FD;exports.removeFile=gc;exports.removeFileNode=vD;exports.removeFrom=xP;exports.removeModal=Ug;exports.removePermission=DP;exports.removeRole=NP;exports.removeSession=BD;exports.removeSessionByIndex=WD;exports.rename=RP;exports.renameAttribute=yv;exports.renameCollection=bv;exports.renameDataSource=Qc;exports.renameDataclass=pv;exports.renameDatasource=pa;exports.renameExpression=ID;exports.renameFile=fa;exports.resetResources=IP;exports.rootReducer=jv;exports.sanitize=Zi;exports.sanitizePermissions=Ng;exports.sanitizePrivileges=Ig;exports.saveAll=bD;exports.saveExpressions=LD;exports.saveModel=Fi;exports.savePrefrences=Ch;exports.saveRole=kP;exports.saveRoles=dc;exports.saveState=xh;exports.saveTab=da;exports.selectActiveLine=zO;exports.selectActiveTab=iA;exports.selectAllDatasourcesByPath=kO;exports.selectAppState=vg;exports.selectBreakpoints=UO;exports.selectCSSClassesByPath=NA;exports.selectCallChainVariables=rA;exports.selectCatalog=Lc;exports.selectCatalogMethods=FO;exports.selectCatalogState=DO;exports.selectClassBreakpoints=GO;exports.selectClassOffset=aA;exports.selectClasses=bA;exports.selectClassesFolder=wg;exports.selectComponents=Cg;exports.selectComponentsByPath=LO;exports.selectContentByPath=_g;exports.selectCraftedComponent=UA;exports.selectCurrentFrameByThreadId=QO;exports.selectCurrentTab=uA;exports.selectDataclasses=IO;exports.selectDatasource=jO;exports.selectDatasourcesByPath=yg;exports.selectDatasourcesTheme=GA;exports.selectDebuggerChannels=eA;exports.selectDebuggerData=Un;exports.selectDebuggerMeta=BO;exports.selectDebuggerSessions=kt;exports.selectDebuggerSessionsCount=WO;exports.selectDebuggers=gA;exports.selectDraftBreakpoints=HO;exports.selectDraftClassBreakpoints=qO;exports.selectExceptions=oA;exports.selectExplorer=vA;exports.selectExpressions=VO;exports.selectExpressionsVariables=nA;exports.selectFlagsByPath=jA;exports.selectForceLogin=RA;exports.selectGuestPrivilege=TA;exports.selectHasTabs=fA;exports.selectHighlightedLines=YO;exports.selectInspectedCSSClass=kA;exports.selectInspectedDatasource=BA;exports.selectInspector=zi;exports.selectInspectorStateByType=HA;exports.selectIsLoaded=qA;exports.selectMethods=yA;exports.selectMethodsFolder=Sg;exports.selectModals=_A;exports.selectMonacoZoom=$A;exports.selectPanelByPath=QI;exports.selectPartialSessionSettings=AA;exports.selectPreferences=DA;exports.selectPreviewedWebformsPaths=lA;exports.selectPrivileges=wA;exports.selectProjectSettings=PA;exports.selectQodly=FA;exports.selectRecentFiles=sA;exports.selectRemoteDebuggerMode=IA;exports.selectRoles=SA;exports.selectRolesAndPrivileges=EA;exports.selectRolesDate=OA;exports.selectRolesFlags=xA;exports.selectRoot=en;exports.selectSelectedTab=CA;exports.selectServerSettings=Bc;exports.selectSessionSettings=kc;exports.selectSharedCSS=LA;exports.selectSharedDatasources=mg;exports.selectSourceByPath=JO;exports.selectSourceByThreadId=ZO;exports.selectStackFrames=tA;exports.selectStoppedFromDebugSession=KO;exports.selectStylesByPath=MA;exports.selectTab=Nv;exports.selectTabByPath=co;exports.selectTabByReference=jt;exports.selectTabExtraByPath=dA;exports.selectTabMaxWeight=cA;exports.selectTabs=Ea;exports.selectTemplates=Rg;exports.selectTemplatesData=WA;exports.selectThreadIdByPath=XO;exports.selectTouchedTabs=jc;exports.selectTouchedTabsLength=hA;exports.selectWebForms=mA;exports.selectWebFormsFolder=Eg;exports.selectWebformNodes=pA;exports.selectWebformStylesByPath=Wc;exports.selectWebforms=lo;exports.serializeModel=tI;exports.setActiveLine=PD;exports.setBreakpointsDecoration=OD;exports.setCallChainVariables=UD;exports.setContent=Pv;exports.setDataSources=DI;exports.setDatasourceEvents=UI;exports.setDatasourcesTheme=yI;exports.setDebuggerMeta=qD;exports.setExpression=MD;exports.setExpressionVariables=HD;exports.setFolderChildren=uD;exports.setModelFlag=iI;exports.setPanelState=LI;exports.setRolesContent=Kc;exports.setSelectedGroup=vI;exports.setSessions=cv;exports.setSetting=pc;exports.setSettings=es;exports.setSettingsAsText=tD;exports.setSourceContent=GD;exports.setTabExtra=OI;exports.setTabFlags=Dv;exports.setTabs=CI;exports.setTabsFlags=RI;exports.setTemplateData=Ov;exports.setTemplatesData=Rv;exports.setWebformsFlag=mI;exports.sort=Fg;exports.stateReducer=Gv;exports.stateSlice=io;exports.toAPI=Qi;exports.toState=MP;exports.toggleExpandFolder=aD;exports.toggleForceLogin=XP;exports.toggleInspector=hI;exports.togglePermission=FP;exports.togglePrivilegePermission=jg;exports.toggleTab=JP;exports.tryCloseAllTabs=ED;exports.tryCloseLeftTabs=wD;exports.tryCloseOtherTabs=_D;exports.tryCloseRightTabs=SD;exports.tryCloseTab=tl;exports.tryEditMethod=lD;exports.tryInjectMethod=sv;exports.tryRenameDataclass=aI;exports.uniquePush=lr;exports.updateExpressionAt=ND;exports.updatePrivileges=Vg;exports.updateRoles=Kg;exports.updateRolesAndPrivileges=Jc;exports.updateSession=kD;exports.updateSharedCss=VI;exports.updateSharedDatasources=ul;exports.uploadFile=pD;exports.uploadFileAndGetResponse=dD;exports.useAppDispatch=PO;exports.useAppSelector=Qr;exports.useAttribute=lI;exports.useCollections=uI;exports.useDataclass=cI;exports.useDataclasses=sI;exports.useMethod=NO;exports.useMethods=$O;exports.useModelFlags=dI;exports.useModelProperties=fI;exports.wipeDebuggerSessions=lv;
157
157
  //# sourceMappingURL=index.cjs.js.map