@plitzi/plitzi-sdk 0.32.7 → 0.32.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,25 @@
1
1
  # @plitzi/plitzi-sdk
2
2
 
3
+ ## 0.32.8
4
+
5
+ ### Patch Changes
6
+
7
+ - v0.32.8
8
+ - Updated dependencies
9
+ - @plitzi/nexus@0.32.8
10
+ - @plitzi/sdk-auth@0.32.8
11
+ - @plitzi/sdk-collections@0.32.8
12
+ - @plitzi/sdk-dev-tools@0.32.8
13
+ - @plitzi/sdk-elements@0.32.8
14
+ - @plitzi/sdk-event-bridge@0.32.8
15
+ - @plitzi/sdk-interactions@0.32.8
16
+ - @plitzi/sdk-navigation@0.32.8
17
+ - @plitzi/sdk-plugins@0.32.8
18
+ - @plitzi/sdk-schema@0.32.8
19
+ - @plitzi/sdk-shared@0.32.8
20
+ - @plitzi/sdk-style@0.32.8
21
+ - @plitzi/sdk-variables@0.32.8
22
+
3
23
  ## 0.32.7
4
24
 
5
25
  ### Patch Changes
@@ -650,7 +650,7 @@ return A(Zy,{className:ce("component__container-resizable-sidebar relative z-[10
650
650
  /* @__PURE__ */A(dL,{orientation:t,onChangeOrientation:n,onTabSelect:p,tabSelected:r}),["store","elements"].includes(r)&&/* @__PURE__ */A(fL,{elementSelected:l,onSelectElement:f,currentPageId:s}),
651
651
  /* @__PURE__ */A(cL,{orientation:t,tabSelected:r,elementSelected:l,onSelectElement:f})]})})},mL=({children:e})=>{let[t,n]=N([]),[r,i]=N({}),a=S(!1),o=m((e,t,r,i,a)=>{n(n=>[...n,{logType:e,category:t,message:r,time:a,params:i}])},[n]),s=m((e,t)=>i(n=>({...n,[e]:t})),[]),l=m(e=>i(t=>ie(t,[e])),[]),c=m((e,...t)=>{if(e&&"function"==typeof r[e])return r[e](...t)},[r]),u=m(()=>n([]),[]);return a.current||=(qa.setCallback(o),qa.setCallbackAddProvider(s),qa.setCallbackRemoveProvider(l),!0),y(()=>(qa.setCallback(o),qa.setCallbackAddProvider(s),qa.setCallbackRemoveProvider(l),qa.processPendingLogs(),()=>{qa.setCallback(void 0),qa.setCallbackAddProvider(void 0),qa.setCallbackRemoveProvider(void 0),qa.flush()}),[o,s,l]),/* @__PURE__ */A(IE,{value:w(()=>({providers:r,logs:t,setLogs:n,clearLogs:u,getData:c}),[r,t,n,u,c]),children:e})},gL=0,yL=({children:e,className:t,innerClassName:n,enabled:r=!1,instanceId:i,renderMode:a="default",devToolsStyle:o="",devToolsStyleLink:s=""})=>{let{theme:l}=h(FE),[c,u]=OE("plitzi-sdk.dev-tools.orientation","horizontal"),d=S(void 0);d.current||="sdk-instance-"+ ++gL;let p=i||d.current,f=((e,t)=>{y(()=>{if(t)return(e=>(OD.push(e),void 0===xD&&(xD=e),ID(),()=>{let t=OD.indexOf(e);-1!==t&&OD.splice(t,1),xD===e&&(xD=OD[0]),ID()}))(e)},[t,e]);let n=C(zD,MD,MD);return t&&n===e})(p,r),g=m(e=>u(e),[u]);return r?/* @__PURE__ */I("div",{className:ce("flex grow overflow-auto",{"flex-col":"horizontal"===c,"h-screen":"vertical"===c},t),children:[/* @__PURE__ */A(jr,{value:p,children:/* @__PURE__ */A("div",{className:ce("grow basis-0 flex-col overflow-auto",n),children:e})}),f&&/* @__PURE__ */I(mL,{children:["default"===a&&/* @__PURE__ */A(hL,{orientation:c,onChangeOrientation:g}),"shadow"===a&&/* @__PURE__ */I(lb,{children:[s&&/* @__PURE__ */A(lb.Link,{href:s}),/* @__PURE__ */I(lb.Content,{children:[/* @__PURE__ */A("style",{dangerouslySetInnerHTML:{__html:o}}),/* @__PURE__ */A(hL,{className:ce({dark:"dark"===l}),orientation:c,onChangeOrientation:g})]})]})]})]}):e},bL=({children:e,environment:t="main"})=>{let{routeParams:n,queryParams:r,hostname:i,currentPageId:a}=h(rz),[o]=Vi("schema.variables"),s=w(()=>o?o.reduce((e,a)=>{let{name:o,value:s,subValues:l}=a;if(!Array.isArray(l)||0===l.length)return{...e,[o]:s};let c={routeParams:n,queryParams:r,hostname:i,environment:t},u=l.find(e=>jT(e.when,c));return{...e,[o]:u?u.value:s}},{}):{},[t,i,r,n,o]);Xm({id:"global",source:"variables",name:"Variables",fields:m(()=>ta(s).map(e=>({path:e,name:`variables.${e}`})),[s])}),Bi("runtime.sources.variables",s);let[l={}]=Vi("pageDefinitions"),c=w(()=>Object.values(l).map(e=>({value:e.id,label:K(e,"attributes.name",e.id)})),[l]),u=w(()=>({routeParams:n,queryParams:r,currentPageId:a}),[n,r,a]);Xm({id:"global",source:"navigation",name:"Navigation",fields:m(()=>[...ta({routeParams:n,queryParams:r}).map(e=>({path:e,name:`navigation.${e}`})),c.length>0?{path:"currentPageId",name:"Current Page",inputType:"select",values:c}:{path:"currentPageId",name:"Current Page"}],[n,r,c])}),Bi("runtime.sources.navigation",u);let{user:d,authenticated:p}=h(Kz),[f="basic"]=Vi("schema.settings.userProvider"),g=w(()=>{switch(f){case"auth0":return{isAuthenticated:p,user:{given_name:"",family_name:"",nickname:"",name:"",picture:"",locale:"",updated_at:"",email:"",email_verified:!1,sub:"",...d}};case"basic":return{isAuthenticated:p,accessToken:d?.accessToken??"",details:{username:"",email:"",roles:"",permissions:"",verified:"",...d?.details??{}}};default:return{}}},[f,d,p]);Xm({id:"global",source:"auth",name:"Auth State",fields:m(()=>ta(g).map(e=>({path:e,name:`user.${e}`})),[g])}),Bi("runtime.sources.auth",g);let[y]=Vi("runtime.state");return Xm({id:"global",source:"state",name:"State",fields:m(()=>ta(y).map(e=>({path:e,name:`state.${e}`})),[y])}),Bi("runtime.sources.state",y),e},vL=class{debugMode=!1;events;listeners=/* @__PURE__ */new Map;constructor({events:e,debugMode:t=!1}={}){this.events=e??{},this.debugMode=t}has(e,t){if(!e)throw Error("Module name is required");return this.events[e]&&this.events[e][t]}on(e,t,n,r={}){let{filter:i,override:a=!1}=r;if(!e)throw Error("Module name is required");if(!n||"function"!=typeof n)throw Error("Callback must be a function");this.events[e]||(this.events[e]={}),(!this.events[e][t]||a&&this.events[e][t].length>0)&&(this.events[e][t]=[]),this.events[e][t].push({callback:n,filter:i})}get(e,t){return this.has(e,t)?this.events[e]?.[t]:[]}off(e,t,n){!this.has(e,t)||!this.events[e]||(this.events[e][t]=n?this.events[e][t]?.filter(e=>e.callback!==n):[],0===this.events[e][t]?.length&&delete this.events[e][t],0===Object.keys(this.events[e]).length&&delete this.events[e])}async emit(e,t=[],...n){let r;this.debugMode&&qa.info("eventBridge","Event Triggered",{module:e,events:t,data:n}),r=Array.isArray(t)?t:[t];let i=[];r.forEach(t=>{if(!this.has(e,t))return;let r=this.get(e,t);r&&r.forEach(e=>{let{callback:t,filter:r}=e;(!r||"function"!=typeof r||r(...n))&&i.push(t(...n))})});let a=await Promise.all(i);return this.touch(r.reduce((e,t)=>({...e,[t]:n}),{})),a}async emitWithResponse(e,t,...n){if(!this.has(e,t))return;let r=this.get(e,t);if(!r)return;let i=await Promise.all(r.filter(e=>!e.filter||e.filter(...n)).map(e=>e.callback(...n)));return 1===i.length?i[0]:i}once(e,t,n,r){if(!e)throw Error("Module name is required");let i=async r=>{await n(r),this.off(e,t,i)};this.on(e,t,i,{filter:r})}clear(e){e?this.events[e]&&delete this.events[e]:this.events={}}getEvents(e){return e?this.events[e]?this.events[e]:{}:this.events}getModuleEventsNames(e){return e&&this.events[e]?Object.keys(this.events[e]):[]}getModuleEventsCount(e){return this.getModuleEventsNames(e).length}listen(e,t){let n=Array.isArray(e)?e:[e];return n.forEach(e=>{this.listeners.has(e)||this.listeners.set(e,/* @__PURE__ */new Set),this.listeners.get(e)?.add(t)}),()=>{n.forEach(e=>{let n=this.listeners.get(e);n&&(n.delete(t),0===n.size&&this.listeners.delete(e))})}}touch(e){for(let t in e){let n=this.listeners.get(t);if(n)for(let t of n)t(e)}}},xL=({children:e,debugMode:t,onInit:n})=>{let r=w(()=>new vL({debugMode:t}),[t]);y(()=>()=>{r.clear()},[r]);let i=w(()=>({eventBridge:r}),[r]);return y(()=>{n?.(i)},[n,i]),/* @__PURE__ */A(tO,{value:i,children:e})},wL=({id:e,interactions:t,triggers:n,callbacks:r,getAdditionalParams:i})=>{let{interactionsManager:a}=h(sD);y(()=>{if(e)return a.subscribe(e,t,n,r,i),()=>{a.unsubscribe(e)}},[e,t,n,r,i,a])},kL={action:"delayTime",title:"Delay Time",type:"utility",params:{time:{label:"Time (Milliseconds)",type:"text"}},preview:{},callback:({time:e})=>new Promise(t=>{setTimeout(t,e)})},SL={action:"twigTemplate",title:"Twig Template",type:"utility",params:{returnMode:{label:"Mode",canBind:!1,type:"select",defaultValue:"text",options:[{label:"Text",value:"text"},{label:"Json Text",value:"json"},{label:"Json Object",value:"jsonObject"}]},template:{label:"Template",canBind:!1,defaultValue:"",type:e=>{let{returnMode:t}=e;return"text"===t?"codemirror-text":"codemirror-json"}}},preview:e=>{let{template:t,returnMode:n}=e;if("jsonObject"===n)try{let n=JSON.parse(Qo(t,e));if(n&&"object"==typeof n)return{template:"",content:ta(n).reduce((e,t)=>({...e,[t]:""}),{})}}catch{}return{template:"",content:""}},callback:e=>{let{template:t,returnMode:n}=e,r="";try{r=Qo(t,e)}catch(NL){}if("jsonObject"===n)try{return{content:JSON.parse(r)}}catch(NL){}else if("json"===n)try{return JSON.parse(r),{content:r}}catch{return{content:""}}return{content:r}}},NL={action:"webHook",title:"Webhook",type:"utility",params:{url:{canBind:!0,defaultValue:"",type:"text",label:"Url"},method:{label:"Method",type:"select",defaultValue:"get",options:[{label:"Get",value:"get"},{label:"Post",value:"post"},{label:"Put",value:"put"},{label:"Delete",value:"delete"},{label:"Patch",value:"patch"},{label:"Head",value:"head"}]},body:{canBind:!0,defaultValue:"",type:"textarea",label:"Body"},authorizationToken:{canBind:!0,defaultValue:"",type:"text",label:"Authorization Token"},credentials:{canBind:!0,defaultValue:"same-origin",type:"select",options:[{label:"Include",value:"include"},{label:"Omit",value:"omit"},{label:"Same Origin",value:"same-origin"}],label:"Credentials"}},preview:{response:{status:"",data:""}},callback:async e=>{let{url:t,authorizationToken:n,body:r,credentials:i}=e,{method:a}=e,o={};try{a=a.toUpperCase();let e={};n&&(e.Authorization=`Bearer ${n}`),Object.values(r).forEach(t=>{t instanceof Blob&&"multipart/form-data"!==e["Content-Type"]&&(e["Content-Type"]="multipart/form-data")});let s=new FormData;Object.entries(r).forEach(([e,t])=>{s?.append(e,t)});let l={method:a,headers:e,credentials:i};(!a||"get"!==a.toLowerCase())&&(l.body=s);let c=await fetch(t,l),u="";try{u=await c.json()}catch{}o={status:c.status,data:u}}catch(e){}return{response:o}}},CL={delayTime:kL,twigTemplate:SL,webHook:NL},TL=(e,t,n,r,i)=>"utility"===e&&"twigTemplate"===i?t:Object.keys(t).reduce((i,a)=>{let o=t[a];if("trigger"!==e){let e=5;for(;"string"==typeof o&&ts(o)&&e>0;)o=Qo(o,{...n,...r},!1,!0),e--;"string"==typeof o&&ts(o)&&qa.warning("interactions",/* @__PURE__ */I("span",{children:["Twig token resolution exceeded ",5," passes for ",
652
652
  /* @__PURE__ */A("b",{children:a}),", leaving unresolved tokens"]}),{param:a,value:o})}return{...i,[a]:o}},{}),EL=async(e,t={},n={},r={})=>{let i={},a=[],{id:o,action:s,enabled:l,params:c,elementId:u,type:d,when:p}=e;if(!s||!l)return{status:"disabled",result:i,postCallbacks:a};let f={...r,...n,[o]:c};if(p&&!jT(p,f))return{status:"skipped",result:i,postCallbacks:a,whenParams:f};let h={...n,...r,...TL(d,c,n,r,s)};try{switch(d){case"callback":case"globalCallback":{if(!u)return{status:"failed",result:i,postCallbacks:a,whenParams:f};let e=K(t,`${u}.${s}`);if(!e)return{status:"failed",result:i,postCallbacks:a,whenParams:f};let{callback:n,postCallback:r}=e;n&&(i=await n(h)),r&&a.push({id:o,callback:r,params:{...h,[o]:i}});break}case"utility":{let{callback:e,postCallback:t}=K(CL,s,{});e&&(i=await e(h)),t&&a.push({id:o,callback:t,params:{...h,[o]:i}});break}}}catch(NL){return qa.danger("interactions",/* @__PURE__ */I("span",{children:["Interaction node failed ",/* @__PURE__ */A("b",{children:s})]}),{error:NL instanceof Error?NL.message:String(NL),node:e}),{status:"failed",result:i,postCallbacks:a,whenParams:f}}return{status:"success",result:i,postCallbacks:a,whenParams:f}},OL=async(e,t={},n={},r={},i={},a=[],o={})=>{if(!e)return o;let s=K(t,e.afterNode);if(!s&&a.length>0&&await(async(e=[])=>{let t={};return await Promise.all(e.reverse().map(async({id:e,callback:n,params:r})=>{t[e]=await(n?.(ie(r,[e]),r[e]))})),t})(a),!s)return o;let l=qa.getTime().valueOf(),{status:c,result:u,postCallbacks:d,whenParams:p}=await EL(s,n,r,i);return o[s.id]={node:s,status:c,result:u,postCallbacks:d,whenParams:p,startTime:l,endTime:qa.getTime().valueOf()},a.push(...d),OL(s,t,n,{...r,[s.id]:u},i,a,o)},_L=(e,t,n={},r)=>{let i=qa.getTime().valueOf(),a="skipped";"completed"===r&&(a="success"),qa.info("interactions",/* @__PURE__ */I("span",{children:["Interaction triggered ",/* @__PURE__ */A("b",{children:`${e.title} [${e.action}]`})]}),{status:r,node:e,elementId:e.elementId,nodes:{...n,[e.id]:{node:e,status:a,result:void 0,postCallbacks:[],startTime:t,endTime:i}},startTime:t,endTime:i})},AL=vL,IL=class e{eventBridge;parentManager;childManagers;interactionsData;subscriptors;callbacksAvailables;interactionsRunning;lastUpdate;listeners=/* @__PURE__ */new Set;constructor(e="",t={},n={}){this.eventBridge=new AL,this.parentManager=void 0,this.childManagers=[],this.subscriptors={},this.callbacksAvailables={},this.interactionsRunning={},this.interactionsData={currentPageId:e,...t,...n},this.lastUpdate=Date.now()}eventBridgeCallback=e=>async(t,n,r)=>{if(e&&n&&t&&!K(this.interactionsRunning,`${t}.${n}`)){X(this.interactionsRunning,`${t}.${n}`,!0);try{let i,a=K(this.subscriptors,`${t}.getAdditionalParams`,void 0);"function"==typeof a&&({dataSource:i}=a());let o=Object.values(e).filter(e=>"trigger"===e.type&&e.action===n&&e.enabled);await Promise.all(o.map(t=>(async(e,t={},n={},r={},i={},a=[])=>{let o=qa.getTime().valueOf(),{action:s,enabled:l,when:c}=e;s&&l&&(!c||jT(c,{...i,...r}))?_L(e,o,await OL(e,t,n,r,i,a),"completed"):_L(e,o,{},"skipped")})(t,e,this.getCallbacksAvailables(),{[t.id]:r},{...this.interactionsData,...i})))}finally{X(this.interactionsRunning,`${t}.${n}`,!1)}}};subscribe(e,t={},n={},r={},i){if(!e||this.subscriptors[e])return!1;X(this.subscriptors,e,{id:e,triggers:n,getAdditionalParams:i});let a=Object.keys(r);return a.length>0&&(this.callbacksAvailables[e]=a.reduce((t,n)=>{let{title:i,callback:a,postCallback:o,params:s,preview:l,type:c}=r[n];return"function"==typeof a?{...t,[n]:{elementId:e,title:i,action:n,type:c,callback:a,postCallback:o,params:s,preview:l}}:t},{})),Object.keys(n).length>0&&this.eventBridge.on("interaction",e,this.eventBridgeCallback(t),{override:!0}),this.touch(),!0}unsubscribe(e){return!!this.subscriptors[e]&&(this.eventBridge.off("interaction",e),delete this.subscriptors[e],this.callbacksAvailables[e]&&delete this.callbacksAvailables[e],this.touch(),!0)}getRootManager(){return this.parentManager?this.parentManager.getRootManager():this}getSubscriptorInternal(e){let t=K(this.subscriptors,e);if(!t&&this.childManagers.length>0)for(let n of this.childManagers)if(t=n.getSubscriptorInternal(e),t)break;return t}getSubscriptor(e){return this.parentManager?this.getRootManager()?.getSubscriptorInternal(e):this.getSubscriptorInternal(e)}getCallbacksAvailablesInternal(){let e={};if(this.childManagers.length>0)for(let t of this.childManagers)e={...e,...t.getCallbacksAvailablesInternal()};return{...e,...this.callbacksAvailables}}getCallbacksAvailables(){return this.parentManager?this.getRootManager()?.getCallbacksAvailablesInternal()??{}:this.getCallbacksAvailablesInternal()}interactionTrigger(e,t,n={}){if(e)return this.eventBridge.emit("interaction",e,e,t,n)}createChildManager=(t={},n={})=>{let r=new e(this.interactionsData.currentPageId,t,n);return r.parentManager=this,this.childManagers.push(r),r};removeChildManager=e=>{this.childManagers=this.childManagers.filter(t=>t!==e)};onUpdate(e){return this.listeners.add(e),()=>{this.listeners.delete(e)}}touch(){let e=Date.now();this.lastUpdate=e;for(let t of this.listeners)t(e)}},zL=({children:e,currentPageId:t,routeParams:n,queryParams:r})=>{let i=w(()=>new IL(t,n,r),[]);return i.interactionsData=w(()=>({currentPageId:t,...n,...r}),[t,n,r]),/* @__PURE__ */A(sD,{value:w(()=>({interactionsManager:i,useInteractions:wL}),[i]),children:e})},DL=({children:e,authProvider:t="basic"})=>{let{login:n,refresh:r,logout:i}=h(Kz),{useInteractions:a}=h(sD),o=m(e=>n(e),[n]),s=m(e=>r(e),[r]),l=m(()=>i(),[i]);return a({id:"auth",callbacks:w(()=>{let e={};return"auth0"===t?e={login:{action:"authLogin",title:"Auth Login",type:"globalCallback",callback:o,params:{}},logout:{action:"authLogout",title:"Auth Logout",type:"globalCallback",callback:l,params:{}}}:"basic"===t&&(e={login:{action:"authLogin",title:"Auth Login",type:"globalCallback",callback:o,params:{mode:{label:"Mode",canBind:!1,type:"select",defaultValue:"normal",options:[{label:"Token",value:"token"},{label:"User and Password",value:"normal"}]},username:{type:"text",defaultValue:"",when:e=>"normal"===e.mode},password:{type:"text",defaultValue:"",when:e=>"normal"===e.mode},token:{type:"text",defaultValue:"",when:e=>"token"===e.mode}},preview:{errors:{username:"",password:"",token:""},success:"",access_token:"",expires_at:"",details:{id:"",username:"",email:"",verified:"",permissions:""}}},refreshDetails:{action:"authRefreshDetails",title:"Auth Refresh Details",type:"globalCallback",callback:s,params:{},preview:{errors:"",success:"",access_token:"",expires_at:"",details:{id:"",username:"",email:"",roles:"",permissions:"",verified:""}}},logout:{action:"authLogout",title:"Auth Logout",type:"globalCallback",callback:l,preview:{},params:{}}}),e},[o,l,s,t])}),e},ML={text:{icon:"fas fa-font",label:"Plain Text"},richText:{icon:"fas fa-align-justify",label:"Rich Text"},image:{icon:"far fa-image",label:"Image"},multiImage:{icon:"far fa-images",label:"Multi Image"},video:{icon:"fab fa-youtube",label:"Video Link"},link:{icon:"fas fa-link",label:"Link"},email:{icon:"far fa-envelope",label:"Email"},phone:{icon:"fas fa-phone",label:"Phone"},number:{icon:"fas fa-hashtag",label:"Number"},date:{icon:"fas fa-calendar-day",label:"Date / Time"},switch:{icon:"fas fa-toggle-off",label:"Switch"},color:{icon:"fas fa-tint",label:"Color"},option:{icon:"",label:"Option"},file:{icon:"far fa-file",label:"File"}},PL=e=>{let t;switch(e){case"switch":case"boolean":t="boolean";break;case"option":t="select";break;default:t="text"}return t},jL=(Object.keys(ML).map(e=>({label:e,value:e,icon:/* @__PURE__ */A(Py,{icon:ML[e].icon,size:"xs"})})),({children:e})=>{let{useInteractions:t}=h(sD),{collections:n,addRecord:r,updateRecord:i,removeRecord:a}=h(lo),o=m((e,t)=>{if(!e)return!1;let{fields:n}=e;if("object"!=typeof n)return!0;let r=Object.values(n).filter(e=>e.params.required);if(0===r.length)return!0;let i=!0;return r.forEach(e=>{t[e.machineName]||!i||(i=!1)}),i},[]),s=m(async e=>{let{collectionId:t,recordStatus:i="draft"}=e,a=K(n,t,void 0);if(!a||!o(a,e))return{success:!1,record:void 0};let{fields:s}=a,l=Z(e,Object.keys(s));return{success:!0,collectionId:t,record:await r(t,i,l)}},[r,n,o]),l=m(async e=>{let{collectionId:t,recordStatus:r="draft",recordId:a}=e,s=K(n,t,void 0);if(!s||!a||!o(s,e))return{success:!1,record:void 0};let{fields:l}=s,c=Z(e,Object.keys(l));return{success:!0,collectionId:t,record:await i(t,a,r,c)}},[n,i,o]),c=m(async e=>{let{collectionId:t,recordId:r}=e;return K(n,t,void 0)&&r?(await a(t,r),{success:!0,collectionId:t,recordId:r}):{success:!1,record:void 0}},[n,a]),u=w(()=>n&&"object"==typeof n?Object.keys(n).reduce((e,t)=>[...e,{value:t,label:K(n[t],"name",t)}],[]):[],[n]);return t({id:"collection",callbacks:w(()=>({addCollectionRecord:{action:"addCollectionRecord",title:"Add Collection Record",type:"globalCallback",callback:s,preview:{success:"",collectionId:"",record:{id:"",status:"",values:{}}},params:e=>{let t=K(n,`${e.collectionId}.fields`,{});return{collectionId:{label:"Collection",defaultValue:void 0,type:"select",options:u},recordStatus:{label:"Record Status",defaultValue:"draft",type:"select",options:[{value:"published",label:"Published"},{value:"draft",label:"Draft"},{value:"archived",label:"Archived"},{value:"deleted",label:"Deleted"},{value:"created",label:"Created"}]},...Object.values(t).reduce((e,t)=>{let{machineName:n,name:r,type:i}=t;return{...e,[n]:{label:r,defaultValue:void 0,when:e=>!!e.collectionId,type:PL(i)}}},{})}}},updateCollectionRecord:{action:"updateCollectionRecord",title:"Update Collection Record",type:"globalCallback",callback:l,preview:{success:"",collectionId:"",record:{id:"",status:"",values:{}}},params:e=>{let t=K(n,`${e.collectionId}.fields`,{});return{collectionId:{label:"Collection",defaultValue:void 0,type:"select",options:u},recordStatus:{label:"Record Status",defaultValue:"draft",type:"select",options:[{value:"published",label:"Published"},{value:"draft",label:"Draft"},{value:"archived",label:"Archived"},{value:"deleted",label:"Deleted"},{value:"created",label:"Created"}]},recordId:{label:"Record",defaultValue:void 0,type:"select",when:e=>!!e.collectionId,options:e=>{let{collectionId:t}=e,r=n[t];if(!t||!r)return[];let i=Object.values(r.fields).find(e=>e.params.primary);return r.records.map(e=>{let t="";return t=i?e.values[i.machineName]:JSON.stringify(e.values),{value:e.id,label:t}})}},...Object.values(t).reduce((e,t)=>{let{machineName:n,name:r,type:i}=t;return{...e,[n]:{label:r,defaultValue:void 0,when:e=>!!e.collectionId,type:PL(i)}}},{})}}},removeCollectionRecord:{action:"removeCollectionRecord",title:"Remove Collection Record",type:"globalCallback",callback:c,preview:{success:"",collectionId:"",recordId:""},params:{collectionId:{label:"Collection",defaultValue:void 0,type:"select",options:u},recordId:{label:"Record",defaultValue:void 0,type:"select",when:e=>!!e.collectionId,options:e=>{let{collectionId:t}=e,r=n[t];if(!t||!r)return[];let i=Object.values(r.fields).find(e=>e.params.primary);return r.records.map(e=>{let t="";return t=i?e.values[i.machineName]:JSON.stringify(e.values),{value:e.id,label:t}})}}}}}),[n,u,s,c,l])}),e}),RL=({children:e,previewMode:t=!1})=>{let{useInteractions:n}=h(sD),{navigate:r}=h(rz),[[i,a]]=Vi(["schema.pages","pageDefinitions"]),o=w(()=>{let e=Z(a,i);return Object.keys(e).reduce((t,n)=>{let r=e[n];return[...t,{key:n,label:K(r,"attributes.name",n),defaultPage:K(r,"attributes.default",!1)}]},[])},[a,i]),s=m(e=>{if(!t)return;let{url:n,urlType:i}=e;"page"===i||"internal"===i?r(n):r(n,!0)},[r,t]);return n({id:"navigation",callbacks:w(()=>({navigate:{action:"navigate",title:"Navigate",type:"globalCallback",callback:s,preview:{},params:{urlType:{label:"Url Type",defaultValue:void 0,type:"select",options:[{value:"page",label:"Space Page"},{value:"internal",label:"Inside Space"},{value:"external",label:"Outside Space"}]},url:{defaultValue:o.find(e=>e.defaultPage)?.key??"",type:e=>"page"===e.urlType?"select":"text",when:e=>!!e.urlType,options:o.map(e=>({value:e.key,label:e.label}))}}}}),[s,o])}),e},LL=({children:e})=>{let{useInteractions:t}=h(sD),n=Hi(),r=m(e=>{let{key:t,type:r}=e,{value:i}=e;"boolean"===r?i="true"===i:"number"===r&&(i=parseInt(i,10)),n(`runtime.state.${t}`,i)},[n]),i=m(()=>{n("runtime.state",{})},[n]);return t({id:"state",callbacks:w(()=>({setState:{action:"setState",title:"Set State",type:"globalCallback",callback:r,preview:{},params:{key:{defaultValue:"",type:"text"},type:{defaultValue:void 0,type:"select",options:[{value:"boolean",label:"True / False"},{value:"number",label:"Numeric"},{value:"text",label:"Text"}]},value:{defaultValue:void 0,type:e=>"boolean"===e.type?"select":"text",when:e=>!!e.type,options:[{value:"true",label:"True"},{value:"false",label:"False"}]}}},clearState:{action:"clearState",title:"Clear State",type:"globalCallback",callback:i,preview:{},params:{}}}),[r,i])}),e},FL=({children:e,previewMode:t=!1})=>{let{currentPageId:n,routeParams:r,queryParams:i}=h(rz),[a="basic"]=Vi("schema.settings.userProvider");/* @__PURE__ */
653
- return A(zL,{currentPageId:n,routeParams:r,queryParams:i,children:/* @__PURE__ */A(DL,{authProvider:a,children:/* @__PURE__ */A(jL,{children:/* @__PURE__ */A(LL,{children:/* @__PURE__ */A(RL,{previewMode:t,children:e})})})})})},$L=l({});$L.displayName="StyleContext";var qL,VL,BL=({children:e,style:t})=>{let{style:n}=h(PE),r=w(()=>({}),[]);return Ki("style",t??(n||zE)),/* @__PURE__ */A($L,{value:r,children:e})},UL="/plitzi-sdk.css",HL=({revision:e,webKey:t="",webId:n,environment:r="main",currentPageId:i,server:a,isHydrating:o=!1,offlineMode:s=!1,offlineData:l,offlineDataType:c="json",instanceId:u,renderMode:d="iframe",sdkStylePath:p="./plitzi-sdk.css",sdkDevToolsStylePath:f,previewMode:m=!0,debugMode:g=!1,onInitEventBridge:b,onInitStateManager:v,ssrResult:x,...k})=>{const S=h(Rr),N=w(()=>S?.withBase("runtime.state"),[S]),C=w(()=>({get state(){return N?.getState()??{}},setState:e=>N?.setState(void 0,e),setStateByKey:(e,t)=>N?.setState(e,t),clearState:()=>N?.setState(void 0,{})}),[N]);return y(()=>{v?.(C)},[v,C]),/* @__PURE__ */A(rD,{webKey:t,webId:n,instanceId:u,server:a,offlineMode:s,offlineData:l,offlineDataType:c,environment:r,revision:e,debugMode:g,children:/* @__PURE__ */A(oD,{children:/* @__PURE__ */A(Jz,{children:/* @__PURE__ */A(aD,{renderMode:d,sdkStylePath:UL,children:/* @__PURE__ */A(BL,{children:/* @__PURE__ */A(xL,{onInit:b,debugMode:g,children:/* @__PURE__ */A(SD,{children:/* @__PURE__ */A(ED,{previewMode:m,environment:r,server:a,isHydrating:o,children:/* @__PURE__ */A(Zz,{renderMode:d,currentPageId:i,previewMode:m,ssrResult:x,children:/* @__PURE__ */A(bL,{environment:r,children:/* @__PURE__ */A(FL,{previewMode:m,children:/* @__PURE__ */A(yL,{enabled:g,instanceId:u,devToolsStyleLink:f||"/plitzi-sdk-devtools.css",renderMode:"shadow",innerClassName:ce({flex:"iframe"===d}),children:/* @__PURE__ */A(kD,{renderMode:d,previewMode:m,debugMode:g,environment:r,isHydrating:o,sdkStylePath:UL,server:a,...k})})})})})})})})})})})})})},WL={Button:jy,ContentEditable:mb,Input:bb,Heading:wb,ContainerResizable:Ky,ContainerCollapsable:By,Text:FT,Markdown:kb,ContainerTabs:pb},YL=({className:e="min-h-screen",children:t,webKey:r="",server:a,renderMode:o="iframe",debugMode:s=!1,state:l,...c})=>{const u=w(()=>function(e){if(!e)return 0;let t={};try{let n=e.split(".")[1],r=typeof window<"u"?window.atob(n):Buffer.from(n,"base64").toString();t=JSON.parse(r)}catch{return 0}return K(t,"data.spaceId",0)}(r),[r]),p=S(l).current,f=w(()=>({segments:{},runtime:{sources:{},state:p??{}}}),[p]),[h,g]=OE("plitzi_debug",s,"cookie"),b=w(()=>(e=>({apiServer:"https://api.plitzi.com",ssrServer:"https://ssr.plitzi.com",serverUrl:"https://server.plitzi.com",websocketServer:"wss://server.plitzi.com",subscriptionServer:"wss://server.plitzi.com/subscriptions",...e}))(a),[a]),v=w(()=>((e,t)=>{const n=new Vm({uri:e.serverUrl}),r=new em;return new Am({link:new Hz(e=>({headers:{...e.headers,"sdk-version":"0.32.7",authorization:t?`Bearer ${t}`:""}})).concat(new Df((e,t)=>new cu(n=>{let r=t(e).subscribe({next:e=>{n.next(e.data?{...e,data:Km(e.data)}:e)},error:e=>n.error(e),complete:()=>n.complete()});return()=>{r.unsubscribe()}})),n),cache:r})})(b,r),[b,r]);y(()=>{},[]);const x=m(e=>{e.shiftKey&&"F12"===e.key&&g(e=>!e)},[g]);y(()=>{if("production"!==c.environment)return window.addEventListener("keydown",x),()=>window.removeEventListener("keydown",x)},[x,c.environment]),y(()=>{c.isHydrating&&SO.setHydrated()},[c.isHydrating]);const k=w(()=>{const e={};return n.forEach(t,t=>{if(!d(t))return;if(t.type!==bD)return;const{renderType:n,component:r,assets:i=[],...a}=t.props;if(!n||!r)return;const o=r;o.type=n,o.assets=i,o.extraProps=a,e[n]=o}),e},[t]);"undefined"==typeof window&&b.requestUrl;const N="widget"===o?i:"undefined"==typeof window?qA:MA,C="widget"===o?{}:{basename:K(b,"basePath","/"),location:"undefined"==typeof window?b.requestUrl??"":void 0};/* @__PURE__ */
653
+ return A(zL,{currentPageId:n,routeParams:r,queryParams:i,children:/* @__PURE__ */A(DL,{authProvider:a,children:/* @__PURE__ */A(jL,{children:/* @__PURE__ */A(LL,{children:/* @__PURE__ */A(RL,{previewMode:t,children:e})})})})})},$L=l({});$L.displayName="StyleContext";var qL,VL,BL=({children:e,style:t})=>{let{style:n}=h(PE),r=w(()=>({}),[]);return Ki("style",t??(n||zE)),/* @__PURE__ */A($L,{value:r,children:e})},UL="/plitzi-sdk.css",HL=({revision:e,webKey:t="",webId:n,environment:r="main",currentPageId:i,server:a,isHydrating:o=!1,offlineMode:s=!1,offlineData:l,offlineDataType:c="json",instanceId:u,renderMode:d="iframe",sdkStylePath:p="./plitzi-sdk.css",sdkDevToolsStylePath:f,previewMode:m=!0,debugMode:g=!1,onInitEventBridge:b,onInitStateManager:v,ssrResult:x,...k})=>{const S=h(Rr),N=w(()=>S?.withBase("runtime.state"),[S]),C=w(()=>({get state(){return N?.getState()??{}},setState:e=>N?.setState(void 0,e),setStateByKey:(e,t)=>N?.setState(e,t),clearState:()=>N?.setState(void 0,{})}),[N]);return y(()=>{v?.(C)},[v,C]),/* @__PURE__ */A(rD,{webKey:t,webId:n,instanceId:u,server:a,offlineMode:s,offlineData:l,offlineDataType:c,environment:r,revision:e,debugMode:g,children:/* @__PURE__ */A(oD,{children:/* @__PURE__ */A(Jz,{children:/* @__PURE__ */A(aD,{renderMode:d,sdkStylePath:UL,children:/* @__PURE__ */A(BL,{children:/* @__PURE__ */A(xL,{onInit:b,debugMode:g,children:/* @__PURE__ */A(SD,{children:/* @__PURE__ */A(ED,{previewMode:m,environment:r,server:a,isHydrating:o,children:/* @__PURE__ */A(Zz,{renderMode:d,currentPageId:i,previewMode:m,ssrResult:x,children:/* @__PURE__ */A(bL,{environment:r,children:/* @__PURE__ */A(FL,{previewMode:m,children:/* @__PURE__ */A(yL,{enabled:g,instanceId:u,devToolsStyleLink:f||"/plitzi-sdk-devtools.css",renderMode:"shadow",innerClassName:ce({flex:"iframe"===d}),children:/* @__PURE__ */A(kD,{renderMode:d,previewMode:m,debugMode:g,environment:r,isHydrating:o,sdkStylePath:UL,server:a,...k})})})})})})})})})})})})})},WL={Button:jy,ContentEditable:mb,Input:bb,Heading:wb,ContainerResizable:Ky,ContainerCollapsable:By,Text:FT,Markdown:kb,ContainerTabs:pb},YL=({className:e="min-h-screen",children:t,webKey:r="",server:a,renderMode:o="iframe",debugMode:s=!1,state:l,...c})=>{const u=w(()=>function(e){if(!e)return 0;let t={};try{let n=e.split(".")[1],r=typeof window<"u"?window.atob(n):Buffer.from(n,"base64").toString();t=JSON.parse(r)}catch{return 0}return K(t,"data.spaceId",0)}(r),[r]),p=S(l).current,f=w(()=>({segments:{},runtime:{sources:{},state:p??{}}}),[p]),[h,g]=OE("plitzi_debug",s,"cookie"),b=w(()=>(e=>({apiServer:"https://api.plitzi.com",ssrServer:"https://ssr.plitzi.com",serverUrl:"https://server.plitzi.com",websocketServer:"wss://server.plitzi.com",subscriptionServer:"wss://server.plitzi.com/subscriptions",...e}))(a),[a]),v=w(()=>((e,t)=>{const n=new Vm({uri:e.serverUrl}),r=new em;return new Am({link:new Hz(e=>({headers:{...e.headers,"sdk-version":"0.32.8",authorization:t?`Bearer ${t}`:""}})).concat(new Df((e,t)=>new cu(n=>{let r=t(e).subscribe({next:e=>{n.next(e.data?{...e,data:Km(e.data)}:e)},error:e=>n.error(e),complete:()=>n.complete()});return()=>{r.unsubscribe()}})),n),cache:r})})(b,r),[b,r]);y(()=>{},[]);const x=m(e=>{e.shiftKey&&"F12"===e.key&&g(e=>!e)},[g]);y(()=>{if("production"!==c.environment)return window.addEventListener("keydown",x),()=>window.removeEventListener("keydown",x)},[x,c.environment]),y(()=>{c.isHydrating&&SO.setHydrated()},[c.isHydrating]);const k=w(()=>{const e={};return n.forEach(t,t=>{if(!d(t))return;if(t.type!==bD)return;const{renderType:n,component:r,assets:i=[],...a}=t.props;if(!n||!r)return;const o=r;o.type=n,o.assets=i,o.extraProps=a,e[n]=o}),e},[t]);"undefined"==typeof window&&b.requestUrl;const N="widget"===o?i:"undefined"==typeof window?qA:MA,C="widget"===o?{}:{basename:K(b,"basePath","/"),location:"undefined"==typeof window?b.requestUrl??"":void 0};/* @__PURE__ */
654
654
  return A(Ai,{value:f,middlewares:[UE(Va("sdk")),WE(u),...h?[()=>({onChange:e=>SO.recordStoreChange(e)}),Ri({shouldRecord:e=>!e?.startsWith("runtime.elements")})]:[]],children:/* @__PURE__ */A($E,{children:/* @__PURE__ */A(sT,{components:WL,children:/* @__PURE__ */A(nb,{className:ce("plitzi-sdk flex",e,{"sdk-debug-mode":h}),children:/* @__PURE__ */A(qz,{children:/* @__PURE__ */A(N,{...C,children:/* @__PURE__ */A(lz,{client:v,children:/* @__PURE__ */A(az,{localCustomComponents:k,localComponents:QL,children:/* @__PURE__ */A(HL,{server:b,webKey:r,renderMode:o,debugMode:h,webId:u,...c})})})})})})})})})},GL=CO(({ref:e,className:t,spaceKey:n,environment:r="main"})=>{const{settings:{previewMode:i},contexts:{NetworkContext:a}}=Ua(),{server:o}=h(a);/* @__PURE__ */
655
655
  return A(Wa,{ref:e,className:ce("plitzi-component__plitzi-sdk",t,{"with__plitzi-sdk":!i}),children:n&&/* @__PURE__ */A(YL,{webKey:n,environment:r,renderMode:"widget",server:o,className:"h-full w-full"})})}),QL={plitziSdk:Object.assign(GL,{type:"plitziSdk",content:{attributes:{spaceId:"",spaceKey:"",environment:"main"},definition:{label:"Plitzi Sdk",type:"plitziSdk",bindings:{},styleSelectors:{base:""},initialState:{visibility:!0}},builder:{canDelete:!0,canSelect:!0,canDragDrop:!0,canMove:!0,canTemplate:!0,itemsAllowed:[],itemsNotAllowed:[]},market:{category:"advanced",owner:"Plitzi",verified:!0,license:"MIT",website:"https://plitzi.com",backgroundColor:"#4422ee",icon:/* @__PURE__ */A(AE,{})},defaultStyle:{name:"Plitzi Sdk",displayMode:"desktop",style:{base:{default:{"min-width":"50px","min-height":"50px"}}}},settings:{}}})};function JL(e,t={},n={},r=!1,i=!1){const a=({isHydrating:e=!1})=>{const i=Object.keys(n);r||(()=>{if(typeof window>"u")return;let e=()=>{},t=window.__REACT_DEVTOOLS_GLOBAL_HOOK__;"object"==typeof t&&Object.keys(t).forEach(n=>{let r=t[n];t[n]="function"==typeof r?e:null})})();const a=m(e=>{qL=e},[]),o=m(e=>{VL=e},[]);/* @__PURE__ */
656
- return A(YL,{...t,debugMode:r,isHydrating:e,onInitStateManager:a,onInitEventBridge:o,children:i.filter(e=>!!n[e].component).map(e=>/* @__PURE__ */A(kD.Plugin,{renderType:e,component:n[e].component,...n[e].props},e))})},o="undefined"!=typeof document?document.getElementById(e):void 0;o&&(i?E(o,/* @__PURE__ */A(a,{isHydrating:!0})):T(o).render(/* @__PURE__ */A(a,{})))}Promise.resolve({ });var KL=({debugMode:e=!1,isHydrating:t=!1,children:n,webKey:r="",environment:i="main",renderMode:a="iframe",...o})=>/* @__PURE__ */A(YL,{...o,isHydrating:t,renderMode:a,debugMode:e,webKey:r,environment:i,children:n});KL.Plugin=kD.Plugin;var XL=Ua,ZL="0.32.7",eF=()=>qL,tF=()=>VL;export{Qa as ComponentContext,az as ComponentProvider,EO as JsxManager,Ha as PlitziServiceProvider,jO as PluginManager,ro as PluginRemote,FI as ReplicaProvider,Wa as RootElement,KL as default,tF as getEventBridge,eF as getStateManager,JL as render,QL as sdkComponents,H as useElement,XL as usePlitziServiceContext,Y as useRscData,ZL as version,CO as withElement};
656
+ return A(YL,{...t,debugMode:r,isHydrating:e,onInitStateManager:a,onInitEventBridge:o,children:i.filter(e=>!!n[e].component).map(e=>/* @__PURE__ */A(kD.Plugin,{renderType:e,component:n[e].component,...n[e].props},e))})},o="undefined"!=typeof document?document.getElementById(e):void 0;o&&(i?E(o,/* @__PURE__ */A(a,{isHydrating:!0})):T(o).render(/* @__PURE__ */A(a,{})))}Promise.resolve({ });var KL=({debugMode:e=!1,isHydrating:t=!1,children:n,webKey:r="",environment:i="main",renderMode:a="iframe",...o})=>/* @__PURE__ */A(YL,{...o,isHydrating:t,renderMode:a,debugMode:e,webKey:r,environment:i,children:n});KL.Plugin=kD.Plugin;var XL=Ua,ZL="0.32.8",eF=()=>qL,tF=()=>VL;export{Qa as ComponentContext,az as ComponentProvider,EO as JsxManager,Ha as PlitziServiceProvider,jO as PluginManager,ro as PluginRemote,FI as ReplicaProvider,Wa as RootElement,KL as default,tF as getEventBridge,eF as getStateManager,JL as render,QL as sdkComponents,H as useElement,XL as usePlitziServiceContext,Y as useRscData,ZL as version,CO as withElement};
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@plitzi/plitzi-sdk",
3
- "version": "0.32.7",
3
+ "version": "0.32.8",
4
4
  "homepage": "./",
5
5
  "license": "AGPL-3.0",
6
6
  "files": [
@@ -32,20 +32,20 @@
32
32
  "@auth0/auth0-react": "^2.22.0",
33
33
  "@dr.pogodin/react-helmet": "^3.2.2",
34
34
  "@fortawesome/fontawesome-free": "^7.3.1",
35
- "@plitzi/nexus": "0.32.7",
35
+ "@plitzi/nexus": "0.32.8",
36
36
  "@plitzi/plitzi-ui": "^1.6.17",
37
- "@plitzi/sdk-auth": "0.32.7",
38
- "@plitzi/sdk-collections": "0.32.7",
39
- "@plitzi/sdk-dev-tools": "0.32.7",
40
- "@plitzi/sdk-elements": "0.32.7",
41
- "@plitzi/sdk-event-bridge": "0.32.7",
42
- "@plitzi/sdk-interactions": "0.32.7",
43
- "@plitzi/sdk-navigation": "0.32.7",
44
- "@plitzi/sdk-plugins": "0.32.7",
45
- "@plitzi/sdk-schema": "0.32.7",
46
- "@plitzi/sdk-shared": "0.32.7",
47
- "@plitzi/sdk-style": "0.32.7",
48
- "@plitzi/sdk-variables": "0.32.7",
37
+ "@plitzi/sdk-auth": "0.32.8",
38
+ "@plitzi/sdk-collections": "0.32.8",
39
+ "@plitzi/sdk-dev-tools": "0.32.8",
40
+ "@plitzi/sdk-elements": "0.32.8",
41
+ "@plitzi/sdk-event-bridge": "0.32.8",
42
+ "@plitzi/sdk-interactions": "0.32.8",
43
+ "@plitzi/sdk-navigation": "0.32.8",
44
+ "@plitzi/sdk-plugins": "0.32.8",
45
+ "@plitzi/sdk-schema": "0.32.8",
46
+ "@plitzi/sdk-shared": "0.32.8",
47
+ "@plitzi/sdk-style": "0.32.8",
48
+ "@plitzi/sdk-variables": "0.32.8",
49
49
  "clsx": "^2.1.1",
50
50
  "graphql": "^17.0.2",
51
51
  "immer": "^11.1.15",