@combeenation/custom-code-sdk 0.0.1-rc1 → 0.0.1-rc2

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.
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=Object.defineProperty,t=(t,n)=>{let r={};for(var i in t)e(r,i,{get:t[i],enumerable:!0});return n||e(r,Symbol.toStringTag,{value:`Module`}),r};let n=require("zod");var r=`0.0.1-rc1`,i=class{id;#e=`v1`;#t=void 0;constructor(e){this.id=e;let t=window.Cbn?.getCustomCodeSdkBridge?.(this.#e);if(this.#t=t?.getButtonSdkBridge(this.id),!this.#t)throw Error(`Cannot access API for Button "${this.id}".`)}onRendered(e){return this.#t?.addOnRenderedCallback(e)??{unsubscribe:()=>{}}}onClick(e){return this.#t?.addOnClickCallback(e)??{unsubscribe:()=>{}}}async setVisible(e){await this.#t?.setVisible(e)}setText(e){this.#t?.setText(e)}setProperty(e,t){this.#t?.setProperty(e,t)}},a=class{id;#e=`v1`;#t=void 0;constructor(e){this.id=e;let t=window.Cbn?.getCustomCodeSdkBridge?.(this.#e);if(this.#t=t?.getCheckboxSdkBridge(this.id),!this.#t)throw Error(`Cannot access API for Checkbox "${this.id}".`)}onRendered(e){return this.#t?.addOnRenderedCallback(e)??{unsubscribe:()=>{}}}async setVisible(e){await this.#t?.setVisible(e)}setChecked(e){this.#t?.setChecked(e)}onCheckedChange(e){return this.#t?.onCheckedChange(e)??{unsubscribe:()=>{}}}setProperty(e,t){this.#t?.setProperty(e,t)}},o=class{id;#e=`v1`;#t=void 0;constructor(e){this.id=e;let t=window.Cbn?.getCustomCodeSdkBridge?.(this.#e);if(this.#t=t?.getCollapsibleSdkBridge(this.id),!this.#t)throw Error(`Cannot access API for Collapsible "${this.id}".`)}onRendered(e){return this.#t?.addOnRenderedCallback(e)??{unsubscribe:()=>{}}}async setVisible(e){await this.#t?.setVisible(e)}setProperty(e,t){this.#t?.setProperty(e,t)}},s=class{id;#e=`v1`;#t=void 0;constructor(e){this.id=e;let t=window.Cbn?.getCustomCodeSdkBridge?.(this.#e);if(this.#t=t?.getComboboxSdkBridge(this.id),!this.#t)throw Error(`Cannot access API for Combobox "${this.id}".`)}onRendered(e){return this.#t?.addOnRenderedCallback(e)??{unsubscribe:()=>{}}}onItemRendered(e){return this.#t?.addOnItemRenderedCallback(e)??{unsubscribe:()=>{}}}onValueItemRendered(e){return this.#t?.addOnValueItemRenderedCallback(e)??{unsubscribe:()=>{}}}onGroupHeaderRendered(e){return this.#t?.addOnGroupHeaderRenderedCallback(e)??{unsubscribe:()=>{}}}onValueChange(e){return this.#t?.addOnValueChangeCallback(e)??{unsubscribe:()=>{}}}onItemClicked(e){return this.#t?.addOnItemClickedCallback(e)??{unsubscribe:()=>{}}}async setVisible(e){await this.#t?.setVisible(e)}setEntries(e){this.#t?.setEntries(e)}setGroupData(e){this.#t?.setGroupData(e)}setProperty(e,t){this.#t?.setProperty(e,t)}},c=class{id;#e=`v1`;#t=void 0;constructor(e){this.id=e;let t=window.Cbn?.getCustomCodeSdkBridge?.(this.#e);if(this.#t=t?.getCustomCtrlSdkBridge(this.id),!this.#t)throw Error(`Cannot access API for Custom Control "${this.id}".`)}set renderFn(e){this.#t?.setRenderFn(e)}async render(e){typeof e==`function`&&(this.renderFn=e),await this.#t?.render()}onRendered(e){return this.#t?.addOnRenderedCallback(e)??{unsubscribe:()=>{}}}getElement(){return this.#t?.getElement()}async setVisible(e){await this.#t?.setVisible(e)}setProperty(e,t){this.#t?.setProperty(e,t)}},l=class{id;#e=`v1`;#t=void 0;constructor(e){this.id=e;let t=window.Cbn?.getCustomCodeSdkBridge?.(this.#e);if(this.#t=t?.getDataviewSdkBridge(this.id),!this.#t)throw Error(`Cannot access API for Dataview "${this.id}".`)}onRendered(e){return this.#t?.addOnRenderedCallback(e)??{unsubscribe:()=>{}}}onItemRendered(e){return this.#t?.addOnItemRenderedCallback(e)??{unsubscribe:()=>{}}}onGroupHeaderRendered(e){return this.#t?.addOnGroupHeaderRenderedCallback(e)??{unsubscribe:()=>{}}}onValueChange(e){return this.#t?.addOnValueChangeCallback(e)??{unsubscribe:()=>{}}}onItemClicked(e){return this.#t?.addOnItemClickedCallback(e)??{unsubscribe:()=>{}}}async setVisible(e){await this.#t?.setVisible(e)}setEntries(e){this.#t?.setEntries(e)}setGroupData(e){this.#t?.setGroupData(e)}setProperty(e,t){this.#t?.setProperty(e,t)}},u=class{id;#e=`v1`;#t=void 0;constructor(e){this.id=e;let t=window.Cbn?.getCustomCodeSdkBridge?.(this.#e);if(this.#t=t?.getInputSdkBridge(this.id),!this.#t)throw Error(`Cannot access API for Input "${this.id}".`)}onRendered(e){return this.#t?.addOnRenderedCallback(e)??{unsubscribe:()=>{}}}async setVisible(e){await this.#t?.setVisible(e)}setValue(e){this.#t?.setValue(e)}onValueChange(e){return this.#t?.onValueChange(e)??{unsubscribe:()=>{}}}setProperty(e,t){this.#t?.setProperty(e,t)}},d=class{id;#e=`v1`;#t=void 0;constructor(e){this.id=e;let t=window.Cbn?.getCustomCodeSdkBridge?.(this.#e);if(this.#t=t?.getPanelSdkBridge(this.id),!this.#t)throw Error(`Cannot access API for Panel "${this.id}".`)}onRendered(e){return this.#t?.addOnRenderedCallback(e)??{unsubscribe:()=>{}}}async setVisible(e){await this.#t?.setVisible(e)}setProperty(e,t){this.#t?.setProperty(e,t)}},f=class{id;#e=`v1`;#t=void 0;constructor(e){this.id=e;let t=window.Cbn?.getCustomCodeSdkBridge?.(this.#e);if(this.#t=t?.getTextSdkBridge(this.id),!this.#t)throw Error(`Cannot access API for Text "${this.id}".`)}onRendered(e){return this.#t?.addOnRenderedCallback(e)??{unsubscribe:()=>{}}}async setVisible(e){await this.#t?.setVisible(e)}setText(e){this.#t?.setText(e)}setProperty(e,t){this.#t?.setProperty(e,t)}},p=1,m=[];function ee(e,t){if(m.length>=p)throw Error(`Only ${p} \`ConfiguratorClient\` can be created at a time.`);m.push({client:e,internals:t})}function h(){let e=m[0];if(!e)throw Error("Operation not possible as no `ConfiguratorClient` has been registered yet.");return e.client}function te(){let e=m[0];if(!e)throw Error("Operation not possible as no `ConfiguratorClient` has been registered yet.");return e.internals}var g=window.Cbn?.getCustomCodeSdkBridge?.(`v1`);if(!g)throw Error("Cannot access Configurator SDK bridge. Make sure to only use the `custom-code-sdk` inside a Combeenation Configurator.");var _=g.createCfgrClient(`v1`,ee);if(!_)throw Error("Cannot create Configurator Client. Make sure to only use the `custom-code-sdk` inside a Combeenation Configurator.");var v=g.getParentPageUtilsSdkBridge(),y=g.getCtrlsSdkBridge(),b=g.getCfgrUtilsSdkBridge(),ne=g.getViewer3dSdkBridge(),re=g.getLifecycleSdkBridge(),x=_,S=function(e){return e[e.Any=1]=`Any`,e[e.Image=2]=`Image`,e}({}),C=function(e){return e[e.PdfAsset=0]=`PdfAsset`,e[e.Asset=1]=`Asset`,e[e.Merge=2]=`Merge`,e[e.OutputToCfgnFile=4]=`OutputToCfgnFile`,e}({}),w=function(e){return e[e.PdfAsset=C.PdfAsset]=`PdfAsset`,e[e.Asset=C.Asset]=`Asset`,e}({}),T=e=>b.uploadCfgnFiles(e,S.Image),E=e=>b.uploadCfgnFiles(e,S.Any),D=e=>b.uploadTempCfgnFiles(e,S.Image),O=e=>b.uploadTempCfgnFiles(e,S.Any),k=e=>b.convertDocument(e);async function A(e,t,n,r){let i=t.length>1,a=`MergeTask`,o=`Task_`,s=t.map((t,n)=>t.type===w.PdfAsset?{type:C.PdfAsset,name:`${o}${n}`,bundleAliasName:e,assetPath:t.assetPath,context:t.context}:{type:C.Asset,name:`${o}${n}`,bundleAliasName:e,assetPath:t.assetPath});return i&&s.push({type:C.Merge,name:a,inputTaskNames:s.map(e=>e.name)}),s.push({type:C.OutputToCfgnFile,inputTaskName:i?a:s[0].name,name:`OutputPdfTask`,cfgnFileExtension:`pdf`,cfgnFileName:n,cfgnFileDisplayName:r}),b.convertDocument(s)}var j={Text:`Text`,Number:`Number`,Logic:`Logic`,Image:`Image`,FileUrl:`FileUrl`,TextAsset:`TextAsset`,Table:`Table`};`${j.Text}`,`${j.Number}`;var M={ValueComponent:`ValueComponent`,TableComponent:`TableComponent`,RecordComponent:`RecordComponent`,ResourceComponent:`ResourceComponent`,GraphicComponent:`GraphicComponent`,CheckoutComponent:`CheckoutComponent`};M.GraphicComponent,M.CheckoutComponent,M.ResourceComponent,M.RecordComponent;var N={ValueEditor:`ValueEditor`,TableEditor:`TableEditor`,Fiber:`Fiber`,FiberEditor:`FiberEditor`,CfgrField:`CfgrField`};n.z.enum([N.ValueEditor,N.TableEditor,N.Fiber,N.FiberEditor,N.CfgrField]),n.z.union([n.z.string(),n.z.number(),n.z.boolean()]);var P=e=>typeof e==`string`;n.z.string(),n.z.enum([j.Text,j.Number,j.Logic]),n.z.string(),n.z.custom(e=>P(e)&&e.toLowerCase()===e);var F=e=>e?.toLowerCase()??``;n.z.string();var ie=n.z.custom(e=>P(e)?RegExp(`^${M.ValueComponent}<.*>$`).test(e):!1),ae=n.z.custom(e=>P(e)?RegExp(`^${M.RecordComponent}<.*>$`).test(e):!1),oe=n.z.custom(e=>P(e)?RegExp(`^${M.ResourceComponent}<.*>$`).test(e):!1),se=n.z.custom(e=>P(e)?RegExp(`^${M.TableComponent}<.*>$`).test(e):!1);n.z.union([ie,se,ae,oe,n.z.literal(M.GraphicComponent),n.z.literal(M.CheckoutComponent)]);var I=n.z.union([n.z.string(),n.z.number(),n.z.boolean()]),ce=n.z.union([I,n.z.array(I),n.z.object({}),n.z.unknown()]);n.z.object({$typ:n.z.literal(`Error`),Id:n.z.string(),Message:n.z.string(),route:n.z.unknown().optional()}).or(ce);var L=new Map;function le(e){let t=F(e.name);L.has(t)||L.set(t,e)}var ue=class{name;zodType;constructor(e,t){this.name=e,this.zodType=t,le(this)}async getValue(){return await h().getCmpValue(this.name)}async setInput(e){let t=F(this.name);await te().setCmpInput(t,e,this.zodType)}onValueChanged(e,t=!1,n){h().onCmpValueChanged(this.name,e,n,t)}},de=()=>b.getAssetPaths(),fe=function(e){return e[e.Facebook=0]=`Facebook`,e[e.Pinterest=1]=`Pinterest`,e[e.Twitter=2]=`Twitter`,e[e.LinkedIn=3]=`LinkedIn`,e[e.WhatsApp=4]=`WhatsApp`,e[e.Custom=5]=`Custom`,e[e.NativeShare=6]=`NativeShare`,e}({}),R=x.onAnyCmpValueChanged.bind(x),z=async e=>{if(await x.finishConfiguration(e?.input),e.sendDataToParentPage){let t=e.transformParentPageData();await v.sendConfigurationFinished(t)}},B=async e=>{let t=fe[e.platform],n=e.imageUrl??`data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mP8/x8AAwMCAO+X2ZkAAAAASUVORK5CYII=`,r={...e,platform:t,imageUrl:n},i=await x.shareConfiguration(r);await b.openShareWindow(e.platform,i);let{shareUrl:a,shareConfigurationId:o}=i;return{shareUrl:a,shareConfigurationId:o}},V=()=>v.isInIFrame(),H=e=>v.setIFrameSize(e),U=e=>b.navigateToLogin(e),W=async e=>{let{promise:t,resolve:n}=Promise.withResolvers(),r={};for(let[t,i]of Object.entries(e))i.onValueChanged(i=>{r[t]=i,Object.keys(e).every(e=>e in r)&&n(r)},!0);return t};function G(e,t){return new i(y.createCtrl(`button`,e.id,t))}function K(e,t){return new a(y.createCtrl(`checkbox`,e.id,t))}function q(e,t){return new l(y.createCtrl(`dataview`,e.id,{position:t.position,properties:{...t.properties,listMode:t.mode,valueType:t.mode===`no-selection`?void 0:t.valueType}}))}function J(e,t){return new s(y.createCtrl(`combobox`,e.id,{position:t.position,properties:{...t.properties,listMode:t.mode,valueType:t.mode===`no-selection`?void 0:t.valueType}}))}function Y(e,t){return new f(y.createCtrl(`text`,e.id,t))}function X(e,t){return new d(y.createCtrl(`panel`,e.id,t))}function Z(e,t){return new u(y.createCtrl(`textbox`,e.id,t))}function Q(e,t){return new c(y.createCtrl(`customctrl`,e.id,t))}function $(e,t){return new o(y.createCtrl(`collapsible`,e.id,t))}var pe="`beforeConfiguratorIsRendered` has no effect because it was called after the configurator was already rendered.\nMake sure to call it synchronously in the top-level code of your entry file before any top-level `await`.",me="`beforeConfiguratorIsRendered` is ignored because it was called more than once.\nIt must only be called once.",he=e=>{let t=re.registerBeforeConfiguratorIsRendered(e);t===`called-after-cfgr-render`?console.error(pe):t===`already-registered`&&console.error(me)},ge=(e,t)=>v.sendCustomMsg(e,t),_e=e=>v.redirectParentPage(e),ve=()=>v.getParentPageUrl(),ye=(e,t)=>v.fireAnalyticsEvent(e,t),be=e=>v.onParentPageEvent(e),xe=async(e,t)=>ne.createArPage(e,t),Se=t({addButtonControl:()=>G,addCheckboxControl:()=>K,addCollapsibleControl:()=>$,addComboboxControl:()=>J,addCustomControl:()=>Q,addDataviewControl:()=>q,addInputControl:()=>Z,addPanelControl:()=>X,addTextControl:()=>Y,beforeConfiguratorIsRendered:()=>he,configuratorIsInIFrame:()=>V,convertDocument:()=>k,createArPage:()=>xe,createPdfFromAssets:()=>A,createSyncCmpValuesStore:()=>W,finishConfiguration:()=>z,fireAnalyticsEvent:()=>ye,getAssetPaths:()=>de,getParentPageUrl:()=>ve,navigateToLogin:()=>U,onAnyCmpValueChanged:()=>R,onParentPageEvent:()=>be,redirectParentPage:()=>_e,sendCustomMsgToParentPage:()=>ge,setConfiguratorIFrameSize:()=>H,shareConfiguration:()=>B,uploadFiles:()=>E,uploadImages:()=>T,uploadTempFiles:()=>O,uploadTempImages:()=>D,version:()=>r});console.log(`Loading custom code SDK v${r}`),exports.Button=i,Object.defineProperty(exports,"CbnSdk",{enumerable:!0,get:function(){return Se}}),exports.Checkbox=a,exports.Collapsible=o,exports.Combobox=s,exports.CreatePdfTaskTypes=w,exports.CustomControl=c,exports.Dataview=l,exports.DocumentConvertTaskTypes=C,exports.Input=u,exports.Panel=d,exports.Text=f,exports.ValueComponent=ue,exports.addButtonControl=G,exports.addCheckboxControl=K,exports.addCollapsibleControl=$,exports.addComboboxControl=J,exports.addCustomControl=Q,exports.addDataviewControl=q,exports.addInputControl=Z,exports.addPanelControl=X,exports.addTextControl=Y,exports.beforeConfiguratorIsRendered=he,exports.configuratorIsInIFrame=V,exports.convertDocument=k,exports.createArPage=xe,exports.createPdfFromAssets=A,exports.createSyncCmpValuesStore=W,exports.finishConfiguration=z,exports.fireAnalyticsEvent=ye,exports.getAssetPaths=de,exports.getParentPageUrl=ve,exports.navigateToLogin=U,exports.onAnyCmpValueChanged=R,exports.onParentPageEvent=be,exports.redirectParentPage=_e,exports.sendCustomMsgToParentPage=ge,exports.setConfiguratorIFrameSize=H,exports.shareConfiguration=B,exports.uploadFiles=E,exports.uploadImages=T,exports.uploadTempFiles=O,exports.uploadTempImages=D,exports.version=r;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=Object.defineProperty,t=(t,n)=>{let r={};for(var i in t)e(r,i,{get:t[i],enumerable:!0});return n||e(r,Symbol.toStringTag,{value:`Module`}),r};let n=require("zod");var r=`0.0.1-rc2`,i=class{id;#e=`v1`;#t=void 0;constructor(e){this.id=e;let t=window.Cbn?.getCustomCodeSdkBridge?.(this.#e);if(this.#t=t?.getButtonSdkBridge(this.id),!this.#t)throw Error(`Cannot access API for Button "${this.id}".`)}onRendered(e){return this.#t?.addOnRenderedCallback(e)??{unsubscribe:()=>{}}}onClick(e){return this.#t?.addOnClickCallback(e)??{unsubscribe:()=>{}}}async setVisible(e){await this.#t?.setVisible(e)}setText(e){this.#t?.setText(e)}setProperty(e,t){this.#t?.setProperty(e,t)}},a=class{id;#e=`v1`;#t=void 0;constructor(e){this.id=e;let t=window.Cbn?.getCustomCodeSdkBridge?.(this.#e);if(this.#t=t?.getCheckboxSdkBridge(this.id),!this.#t)throw Error(`Cannot access API for Checkbox "${this.id}".`)}onRendered(e){return this.#t?.addOnRenderedCallback(e)??{unsubscribe:()=>{}}}async setVisible(e){await this.#t?.setVisible(e)}setChecked(e){this.#t?.setChecked(e)}onCheckedChange(e){return this.#t?.onCheckedChange(e)??{unsubscribe:()=>{}}}setProperty(e,t){this.#t?.setProperty(e,t)}},o=class{id;#e=`v1`;#t=void 0;constructor(e){this.id=e;let t=window.Cbn?.getCustomCodeSdkBridge?.(this.#e);if(this.#t=t?.getCollapsibleSdkBridge(this.id),!this.#t)throw Error(`Cannot access API for Collapsible "${this.id}".`)}onRendered(e){return this.#t?.addOnRenderedCallback(e)??{unsubscribe:()=>{}}}async setVisible(e){await this.#t?.setVisible(e)}setProperty(e,t){this.#t?.setProperty(e,t)}},s=class{id;#e=`v1`;#t=void 0;constructor(e){this.id=e;let t=window.Cbn?.getCustomCodeSdkBridge?.(this.#e);if(this.#t=t?.getComboboxSdkBridge(this.id),!this.#t)throw Error(`Cannot access API for Combobox "${this.id}".`)}onRendered(e){return this.#t?.addOnRenderedCallback(e)??{unsubscribe:()=>{}}}onItemRendered(e){return this.#t?.addOnItemRenderedCallback(e)??{unsubscribe:()=>{}}}onValueItemRendered(e){return this.#t?.addOnValueItemRenderedCallback(e)??{unsubscribe:()=>{}}}onGroupHeaderRendered(e){return this.#t?.addOnGroupHeaderRenderedCallback(e)??{unsubscribe:()=>{}}}onValueChange(e){return this.#t?.addOnValueChangeCallback(e)??{unsubscribe:()=>{}}}onItemClicked(e){return this.#t?.addOnItemClickedCallback(e)??{unsubscribe:()=>{}}}async setVisible(e){await this.#t?.setVisible(e)}setEntries(e){this.#t?.setEntries(e)}setGroupData(e){this.#t?.setGroupData(e)}setProperty(e,t){this.#t?.setProperty(e,t)}},c=class{id;#e=`v1`;#t=void 0;constructor(e){this.id=e;let t=window.Cbn?.getCustomCodeSdkBridge?.(this.#e);if(this.#t=t?.getCustomCtrlSdkBridge(this.id),!this.#t)throw Error(`Cannot access API for Custom Control "${this.id}".`)}set renderFn(e){this.#t?.setRenderFn(e)}async render(e){typeof e==`function`&&(this.renderFn=e),await this.#t?.render()}onRendered(e){return this.#t?.addOnRenderedCallback(e)??{unsubscribe:()=>{}}}getElement(){return this.#t?.getElement()}async setVisible(e){await this.#t?.setVisible(e)}setProperty(e,t){this.#t?.setProperty(e,t)}},l=class{id;#e=`v1`;#t=void 0;constructor(e){this.id=e;let t=window.Cbn?.getCustomCodeSdkBridge?.(this.#e);if(this.#t=t?.getDataviewSdkBridge(this.id),!this.#t)throw Error(`Cannot access API for Dataview "${this.id}".`)}onRendered(e){return this.#t?.addOnRenderedCallback(e)??{unsubscribe:()=>{}}}onItemRendered(e){return this.#t?.addOnItemRenderedCallback(e)??{unsubscribe:()=>{}}}onGroupHeaderRendered(e){return this.#t?.addOnGroupHeaderRenderedCallback(e)??{unsubscribe:()=>{}}}onValueChange(e){return this.#t?.addOnValueChangeCallback(e)??{unsubscribe:()=>{}}}onItemClicked(e){return this.#t?.addOnItemClickedCallback(e)??{unsubscribe:()=>{}}}async setVisible(e){await this.#t?.setVisible(e)}setEntries(e){this.#t?.setEntries(e)}setGroupData(e){this.#t?.setGroupData(e)}setProperty(e,t){this.#t?.setProperty(e,t)}},ee=class{id;#e=`v1`;#t=void 0;constructor(e){this.id=e;let t=window.Cbn?.getCustomCodeSdkBridge?.(this.#e);if(this.#t=t?.getInputSdkBridge(this.id),!this.#t)throw Error(`Cannot access API for Input "${this.id}".`)}onRendered(e){return this.#t?.addOnRenderedCallback(e)??{unsubscribe:()=>{}}}async setVisible(e){await this.#t?.setVisible(e)}setValue(e){this.#t?.setValue(e)}onValueChange(e){return this.#t?.onValueChange(e)??{unsubscribe:()=>{}}}setProperty(e,t){this.#t?.setProperty(e,t)}},u=class{id;#e=`v1`;#t=void 0;constructor(e){this.id=e;let t=window.Cbn?.getCustomCodeSdkBridge?.(this.#e);if(this.#t=t?.getPanelSdkBridge(this.id),!this.#t)throw Error(`Cannot access API for Panel "${this.id}".`)}onRendered(e){return this.#t?.addOnRenderedCallback(e)??{unsubscribe:()=>{}}}async setVisible(e){await this.#t?.setVisible(e)}setProperty(e,t){this.#t?.setProperty(e,t)}},d=class{id;#e=`v1`;#t=void 0;constructor(e){this.id=e;let t=window.Cbn?.getCustomCodeSdkBridge?.(this.#e);if(this.#t=t?.getTextSdkBridge(this.id),!this.#t)throw Error(`Cannot access API for Text "${this.id}".`)}onRendered(e){return this.#t?.addOnRenderedCallback(e)??{unsubscribe:()=>{}}}async setVisible(e){await this.#t?.setVisible(e)}setText(e){this.#t?.setText(e)}setProperty(e,t){this.#t?.setProperty(e,t)}},f=1,p=[];function te(e,t){if(p.length>=f)throw Error(`Only ${f} \`ConfiguratorClient\` can be created at a time.`);p.push({client:e,internals:t})}function m(){let e=p[0];if(!e)throw Error("Operation not possible as no `ConfiguratorClient` has been registered yet.");return e.client}function ne(){let e=p[0];if(!e)throw Error("Operation not possible as no `ConfiguratorClient` has been registered yet.");return e.internals}var h=window.Cbn?.getCustomCodeSdkBridge?.(`v1`);if(!h)throw Error("Cannot access Configurator SDK bridge. Make sure to only use the `custom-code-sdk` inside a Combeenation Configurator.");var g=h.createCfgrClient(`v1`,te);if(!g)throw Error("Cannot create Configurator Client. Make sure to only use the `custom-code-sdk` inside a Combeenation Configurator.");var _=h.getParentPageUtilsSdkBridge(),v=h.getCtrlsSdkBridge(),y=h.getCfgrUtilsSdkBridge(),re=h.getViewer3dSdkBridge(),ie=h.getLifecycleSdkBridge(),b=g,x=function(e){return e[e.Any=1]=`Any`,e[e.Image=2]=`Image`,e}({}),S=function(e){return e[e.PdfAsset=0]=`PdfAsset`,e[e.Asset=1]=`Asset`,e[e.Merge=2]=`Merge`,e[e.OutputToCfgnFile=4]=`OutputToCfgnFile`,e}({}),C=function(e){return e[e.PdfAsset=S.PdfAsset]=`PdfAsset`,e[e.Asset=S.Asset]=`Asset`,e}({}),w=e=>y.uploadCfgnFiles(e,x.Image),T=e=>y.uploadCfgnFiles(e,x.Any),E=e=>y.uploadTempCfgnFiles(e,x.Image),D=e=>y.uploadTempCfgnFiles(e,x.Any),O=e=>y.convertDocument(e);async function k(e,t,n,r){let i=t.length>1,a=`MergeTask`,o=`Task_`,s=t.map((t,n)=>t.type===C.PdfAsset?{type:S.PdfAsset,name:`${o}${n}`,bundleAliasName:e,assetPath:t.assetPath,context:t.context}:{type:S.Asset,name:`${o}${n}`,bundleAliasName:e,assetPath:t.assetPath});return i&&s.push({type:S.Merge,name:a,inputTaskNames:s.map(e=>e.name)}),s.push({type:S.OutputToCfgnFile,inputTaskName:i?a:s[0].name,name:`OutputPdfTask`,cfgnFileExtension:`pdf`,cfgnFileName:n,cfgnFileDisplayName:r}),y.convertDocument(s)}var A={Text:`Text`,Number:`Number`,Logic:`Logic`,Image:`Image`,FileUrl:`FileUrl`,TextAsset:`TextAsset`,Table:`Table`};`${A.Text}`,`${A.Number}`;var j={ValueComponent:`ValueComponent`,TableComponent:`TableComponent`,RecordComponent:`RecordComponent`,ResourceComponent:`ResourceComponent`,GraphicComponent:`GraphicComponent`,CheckoutComponent:`CheckoutComponent`};j.GraphicComponent,j.CheckoutComponent,j.ResourceComponent,j.RecordComponent;var M={ValueEditor:`ValueEditor`,TableEditor:`TableEditor`,Fiber:`Fiber`,FiberEditor:`FiberEditor`,CfgrField:`CfgrField`};n.z.enum([M.ValueEditor,M.TableEditor,M.Fiber,M.FiberEditor,M.CfgrField]),n.z.union([n.z.string(),n.z.number(),n.z.boolean()]);var N=e=>typeof e==`string`;n.z.string(),n.z.enum([A.Text,A.Number,A.Logic]),n.z.string(),n.z.custom(e=>N(e)&&e.toLowerCase()===e);var P=e=>e?.toLowerCase()??``;n.z.string();var ae=n.z.custom(e=>N(e)?RegExp(`^${j.ValueComponent}<.*>$`).test(e):!1),oe=n.z.custom(e=>N(e)?RegExp(`^${j.RecordComponent}<.*>$`).test(e):!1),se=n.z.custom(e=>N(e)?RegExp(`^${j.ResourceComponent}<.*>$`).test(e):!1),ce=n.z.custom(e=>N(e)?RegExp(`^${j.TableComponent}<.*>$`).test(e):!1);n.z.union([ae,ce,oe,se,n.z.literal(j.GraphicComponent),n.z.literal(j.CheckoutComponent)]);var F=n.z.union([n.z.string(),n.z.number(),n.z.boolean()]),le=n.z.union([F,n.z.array(F),n.z.object({}),n.z.unknown()]);n.z.object({$typ:n.z.literal(`Error`),Id:n.z.string(),Message:n.z.string(),route:n.z.unknown().optional()}).or(le);var I=new Map;function ue(e){let t=P(e.name);I.has(t)||I.set(t,e)}var de=class{name;zodType;constructor(e,t){this.name=e,this.zodType=t,ue(this)}async getValue(){return await m().getCmpValue(this.name)}async setInput(e){let t=P(this.name);await ne().setCmpInput(t,e,this.zodType)}onValueChanged(e,t=!1,n){m().onCmpValueChanged(this.name,e,n,t)}},fe=()=>y.getAssetPaths(),pe=function(e){return e[e.Facebook=0]=`Facebook`,e[e.Pinterest=1]=`Pinterest`,e[e.Twitter=2]=`Twitter`,e[e.LinkedIn=3]=`LinkedIn`,e[e.WhatsApp=4]=`WhatsApp`,e[e.Custom=5]=`Custom`,e[e.NativeShare=6]=`NativeShare`,e}({}),L=b.onAnyCmpValueChanged.bind(b),R=async e=>{if(await b.finishConfiguration(e?.input),e.sendDataToParentPage){let t=e.transformParentPageData();await _.sendConfigurationFinished(t)}},z=async e=>{let t=pe[e.platform],n=e.imageUrl??`data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mP8/x8AAwMCAO+X2ZkAAAAASUVORK5CYII=`,r={...e,platform:t,imageUrl:n},i=await b.shareConfiguration(r);await y.openShareWindow(e.platform,i);let{shareUrl:a,shareConfigurationId:o}=i;return{shareUrl:a,shareConfigurationId:o}};async function B(e){return await y.executeIntegration(e)}var V=()=>_.isInIFrame(),H=e=>_.setIFrameSize(e),U=e=>y.navigateToLogin(e),W=async e=>{let{promise:t,resolve:n}=Promise.withResolvers(),r={};for(let[t,i]of Object.entries(e))i.onValueChanged(i=>{r[t]=i,Object.keys(e).every(e=>e in r)&&n(r)},!0);return t};function G(e,t){return new i(v.createCtrl(`button`,e.id,t))}function K(e,t){return new a(v.createCtrl(`checkbox`,e.id,t))}function q(e,t){return new l(v.createCtrl(`dataview`,e.id,{position:t.position,properties:{...t.properties,listMode:t.mode,valueType:t.mode===`no-selection`?void 0:t.valueType}}))}function J(e,t){return new s(v.createCtrl(`combobox`,e.id,{position:t.position,properties:{...t.properties,listMode:t.mode,valueType:t.mode===`no-selection`?void 0:t.valueType}}))}function Y(e,t){return new d(v.createCtrl(`text`,e.id,t))}function X(e,t){return new u(v.createCtrl(`panel`,e.id,t))}function Z(e,t){return new ee(v.createCtrl(`textbox`,e.id,t))}function Q(e,t){return new c(v.createCtrl(`customctrl`,e.id,t))}function $(e,t){return new o(v.createCtrl(`collapsible`,e.id,t))}var me="`beforeConfiguratorIsRendered` has no effect because it was called after the configurator was already rendered.\nMake sure to call it synchronously in the top-level code of your entry file before any top-level `await`.",he="`beforeConfiguratorIsRendered` is ignored because it was called more than once.\nIt must only be called once.",ge=e=>{let t=ie.registerBeforeConfiguratorIsRendered(e);t===`called-after-cfgr-render`?console.error(me):t===`already-registered`&&console.error(he)},_e=(e,t)=>_.sendCustomMsg(e,t),ve=e=>_.redirectParentPage(e),ye=()=>_.getParentPageUrl(),be=(e,t)=>_.fireAnalyticsEvent(e,t),xe=e=>_.onParentPageEvent(e),Se=async(e,t)=>re.createArPage(e,t),Ce=t({addButtonControl:()=>G,addCheckboxControl:()=>K,addCollapsibleControl:()=>$,addComboboxControl:()=>J,addCustomControl:()=>Q,addDataviewControl:()=>q,addInputControl:()=>Z,addPanelControl:()=>X,addTextControl:()=>Y,beforeConfiguratorIsRendered:()=>ge,configuratorIsInIFrame:()=>V,convertDocument:()=>O,createArPage:()=>Se,createPdfFromAssets:()=>k,createSyncCmpValuesStore:()=>W,executeIntegration:()=>B,finishConfiguration:()=>R,fireAnalyticsEvent:()=>be,getAssetPaths:()=>fe,getParentPageUrl:()=>ye,navigateToLogin:()=>U,onAnyCmpValueChanged:()=>L,onParentPageEvent:()=>xe,redirectParentPage:()=>ve,sendCustomMsgToParentPage:()=>_e,setConfiguratorIFrameSize:()=>H,shareConfiguration:()=>z,uploadFiles:()=>T,uploadImages:()=>w,uploadTempFiles:()=>D,uploadTempImages:()=>E,version:()=>r});console.log(`Loading custom code SDK v${r}`),exports.Button=i,Object.defineProperty(exports,"CbnSdk",{enumerable:!0,get:function(){return Ce}}),exports.Checkbox=a,exports.Collapsible=o,exports.Combobox=s,exports.CreatePdfTaskTypes=C,exports.CustomControl=c,exports.Dataview=l,exports.DocumentConvertTaskTypes=S,exports.Input=ee,exports.Panel=u,exports.Text=d,exports.ValueComponent=de,exports.addButtonControl=G,exports.addCheckboxControl=K,exports.addCollapsibleControl=$,exports.addComboboxControl=J,exports.addCustomControl=Q,exports.addDataviewControl=q,exports.addInputControl=Z,exports.addPanelControl=X,exports.addTextControl=Y,exports.beforeConfiguratorIsRendered=ge,exports.configuratorIsInIFrame=V,exports.convertDocument=O,exports.createArPage=Se,exports.createPdfFromAssets=k,exports.createSyncCmpValuesStore=W,exports.executeIntegration=B,exports.finishConfiguration=R,exports.fireAnalyticsEvent=be,exports.getAssetPaths=fe,exports.getParentPageUrl=ye,exports.navigateToLogin=U,exports.onAnyCmpValueChanged=L,exports.onParentPageEvent=xe,exports.redirectParentPage=ve,exports.sendCustomMsgToParentPage=_e,exports.setConfiguratorIFrameSize=H,exports.shareConfiguration=z,exports.uploadFiles=T,exports.uploadImages=w,exports.uploadTempFiles=D,exports.uploadTempImages=E,exports.version=r;
package/dist/bundle.es.js CHANGED
@@ -7,7 +7,7 @@ var t = Object.defineProperty, n = (e, n) => {
7
7
  enumerable: !0
8
8
  });
9
9
  return n || t(r, Symbol.toStringTag, { value: "Module" }), r;
10
- }, r = "0.0.1-rc1", i = class {
10
+ }, r = "0.0.1-rc2", i = class {
11
11
  id;
12
12
  #e = "v1";
13
13
  #t = void 0;
@@ -175,7 +175,7 @@ var t = Object.defineProperty, n = (e, n) => {
175
175
  setProperty(e, t) {
176
176
  this.#t?.setProperty(e, t);
177
177
  }
178
- }, u = class {
178
+ }, ee = class {
179
179
  id;
180
180
  #e = "v1";
181
181
  #t = void 0;
@@ -199,7 +199,7 @@ var t = Object.defineProperty, n = (e, n) => {
199
199
  setProperty(e, t) {
200
200
  this.#t?.setProperty(e, t);
201
201
  }
202
- }, d = class {
202
+ }, u = class {
203
203
  id;
204
204
  #e = "v1";
205
205
  #t = void 0;
@@ -217,7 +217,7 @@ var t = Object.defineProperty, n = (e, n) => {
217
217
  setProperty(e, t) {
218
218
  this.#t?.setProperty(e, t);
219
219
  }
220
- }, f = class {
220
+ }, d = class {
221
221
  id;
222
222
  #e = "v1";
223
223
  #t = void 0;
@@ -238,66 +238,66 @@ var t = Object.defineProperty, n = (e, n) => {
238
238
  setProperty(e, t) {
239
239
  this.#t?.setProperty(e, t);
240
240
  }
241
- }, p = 1, m = [];
242
- function ee(e, t) {
243
- if (m.length >= p) throw Error(`Only ${p} \`ConfiguratorClient\` can be created at a time.`);
244
- m.push({
241
+ }, f = 1, p = [];
242
+ function te(e, t) {
243
+ if (p.length >= f) throw Error(`Only ${f} \`ConfiguratorClient\` can be created at a time.`);
244
+ p.push({
245
245
  client: e,
246
246
  internals: t
247
247
  });
248
248
  }
249
- function h() {
250
- let e = m[0];
249
+ function m() {
250
+ let e = p[0];
251
251
  if (!e) throw Error("Operation not possible as no `ConfiguratorClient` has been registered yet.");
252
252
  return e.client;
253
253
  }
254
- function te() {
255
- let e = m[0];
254
+ function ne() {
255
+ let e = p[0];
256
256
  if (!e) throw Error("Operation not possible as no `ConfiguratorClient` has been registered yet.");
257
257
  return e.internals;
258
258
  }
259
259
  //#endregion
260
260
  //#region src/utils/sdk-bridge.provider.ts
261
- var g = window.Cbn?.getCustomCodeSdkBridge?.("v1");
262
- if (!g) throw Error("Cannot access Configurator SDK bridge. Make sure to only use the `custom-code-sdk` inside a Combeenation Configurator.");
263
- var _ = g.createCfgrClient("v1", ee);
264
- if (!_) throw Error("Cannot create Configurator Client. Make sure to only use the `custom-code-sdk` inside a Combeenation Configurator.");
265
- var v = g.getParentPageUtilsSdkBridge(), y = g.getCtrlsSdkBridge(), b = g.getCfgrUtilsSdkBridge(), ne = g.getViewer3dSdkBridge(), re = g.getLifecycleSdkBridge(), x = _, S = /* @__PURE__ */ function(e) {
261
+ var h = window.Cbn?.getCustomCodeSdkBridge?.("v1");
262
+ if (!h) throw Error("Cannot access Configurator SDK bridge. Make sure to only use the `custom-code-sdk` inside a Combeenation Configurator.");
263
+ var g = h.createCfgrClient("v1", te);
264
+ if (!g) throw Error("Cannot create Configurator Client. Make sure to only use the `custom-code-sdk` inside a Combeenation Configurator.");
265
+ var _ = h.getParentPageUtilsSdkBridge(), v = h.getCtrlsSdkBridge(), y = h.getCfgrUtilsSdkBridge(), re = h.getViewer3dSdkBridge(), ie = h.getLifecycleSdkBridge(), b = g, x = /* @__PURE__ */ function(e) {
266
266
  return e[e.Any = 1] = "Any", e[e.Image = 2] = "Image", e;
267
- }({}), C = /* @__PURE__ */ function(e) {
267
+ }({}), S = /* @__PURE__ */ function(e) {
268
268
  return e[e.PdfAsset = 0] = "PdfAsset", e[e.Asset = 1] = "Asset", e[e.Merge = 2] = "Merge", e[e.OutputToCfgnFile = 4] = "OutputToCfgnFile", e;
269
- }({}), w = /* @__PURE__ */ function(e) {
270
- return e[e.PdfAsset = C.PdfAsset] = "PdfAsset", e[e.Asset = C.Asset] = "Asset", e;
271
- }({}), T = (e) => b.uploadCfgnFiles(e, S.Image), E = (e) => b.uploadCfgnFiles(e, S.Any), D = (e) => b.uploadTempCfgnFiles(e, S.Image), O = (e) => b.uploadTempCfgnFiles(e, S.Any), k = (e) => b.convertDocument(e);
272
- async function A(e, t, n, r) {
273
- let i = t.length > 1, a = "MergeTask", o = "Task_", s = t.map((t, n) => t.type === w.PdfAsset ? {
274
- type: C.PdfAsset,
269
+ }({}), C = /* @__PURE__ */ function(e) {
270
+ return e[e.PdfAsset = S.PdfAsset] = "PdfAsset", e[e.Asset = S.Asset] = "Asset", e;
271
+ }({}), w = (e) => y.uploadCfgnFiles(e, x.Image), T = (e) => y.uploadCfgnFiles(e, x.Any), E = (e) => y.uploadTempCfgnFiles(e, x.Image), D = (e) => y.uploadTempCfgnFiles(e, x.Any), O = (e) => y.convertDocument(e);
272
+ async function k(e, t, n, r) {
273
+ let i = t.length > 1, a = "MergeTask", o = "Task_", s = t.map((t, n) => t.type === C.PdfAsset ? {
274
+ type: S.PdfAsset,
275
275
  name: `${o}${n}`,
276
276
  bundleAliasName: e,
277
277
  assetPath: t.assetPath,
278
278
  context: t.context
279
279
  } : {
280
- type: C.Asset,
280
+ type: S.Asset,
281
281
  name: `${o}${n}`,
282
282
  bundleAliasName: e,
283
283
  assetPath: t.assetPath
284
284
  });
285
285
  return i && s.push({
286
- type: C.Merge,
286
+ type: S.Merge,
287
287
  name: a,
288
288
  inputTaskNames: s.map((e) => e.name)
289
289
  }), s.push({
290
- type: C.OutputToCfgnFile,
290
+ type: S.OutputToCfgnFile,
291
291
  inputTaskName: i ? a : s[0].name,
292
292
  name: "OutputPdfTask",
293
293
  cfgnFileExtension: "pdf",
294
294
  cfgnFileName: n,
295
295
  cfgnFileDisplayName: r
296
- }), b.convertDocument(s);
296
+ }), y.convertDocument(s);
297
297
  }
298
298
  //#endregion
299
299
  //#region ../../packages/be-lib/src/lib/hive-enums.ts
300
- var j = {
300
+ var A = {
301
301
  Text: "Text",
302
302
  Number: "Number",
303
303
  Logic: "Logic",
@@ -306,8 +306,8 @@ var j = {
306
306
  TextAsset: "TextAsset",
307
307
  Table: "Table"
308
308
  };
309
- `${j.Text}`, `${j.Number}`;
310
- var M = {
309
+ `${A.Text}`, `${A.Number}`;
310
+ var j = {
311
311
  ValueComponent: "ValueComponent",
312
312
  TableComponent: "TableComponent",
313
313
  RecordComponent: "RecordComponent",
@@ -315,8 +315,8 @@ var M = {
315
315
  GraphicComponent: "GraphicComponent",
316
316
  CheckoutComponent: "CheckoutComponent"
317
317
  };
318
- M.GraphicComponent, M.CheckoutComponent, M.ResourceComponent, M.RecordComponent;
319
- var N = {
318
+ j.GraphicComponent, j.CheckoutComponent, j.ResourceComponent, j.RecordComponent;
319
+ var M = {
320
320
  ValueEditor: "ValueEditor",
321
321
  TableEditor: "TableEditor",
322
322
  Fiber: "Fiber",
@@ -324,40 +324,40 @@ var N = {
324
324
  CfgrField: "CfgrField"
325
325
  };
326
326
  e.enum([
327
- N.ValueEditor,
328
- N.TableEditor,
329
- N.Fiber,
330
- N.FiberEditor,
331
- N.CfgrField
327
+ M.ValueEditor,
328
+ M.TableEditor,
329
+ M.Fiber,
330
+ M.FiberEditor,
331
+ M.CfgrField
332
332
  ]), e.union([
333
333
  e.string(),
334
334
  e.number(),
335
335
  e.boolean()
336
336
  ]);
337
- var P = (e) => typeof e == "string";
337
+ var N = (e) => typeof e == "string";
338
338
  e.string(), e.enum([
339
- j.Text,
340
- j.Number,
341
- j.Logic
342
- ]), e.string(), e.custom((e) => P(e) && e.toLowerCase() === e);
343
- var F = (e) => e?.toLowerCase() ?? "";
339
+ A.Text,
340
+ A.Number,
341
+ A.Logic
342
+ ]), e.string(), e.custom((e) => N(e) && e.toLowerCase() === e);
343
+ var P = (e) => e?.toLowerCase() ?? "";
344
344
  e.string();
345
- var ie = e.custom((e) => P(e) ? RegExp(`^${M.ValueComponent}<.*>$`).test(e) : !1), ae = e.custom((e) => P(e) ? RegExp(`^${M.RecordComponent}<.*>$`).test(e) : !1), oe = e.custom((e) => P(e) ? RegExp(`^${M.ResourceComponent}<.*>$`).test(e) : !1), se = e.custom((e) => P(e) ? RegExp(`^${M.TableComponent}<.*>$`).test(e) : !1);
345
+ var ae = e.custom((e) => N(e) ? RegExp(`^${j.ValueComponent}<.*>$`).test(e) : !1), oe = e.custom((e) => N(e) ? RegExp(`^${j.RecordComponent}<.*>$`).test(e) : !1), se = e.custom((e) => N(e) ? RegExp(`^${j.ResourceComponent}<.*>$`).test(e) : !1), ce = e.custom((e) => N(e) ? RegExp(`^${j.TableComponent}<.*>$`).test(e) : !1);
346
346
  e.union([
347
- ie,
348
- se,
349
347
  ae,
348
+ ce,
350
349
  oe,
351
- e.literal(M.GraphicComponent),
352
- e.literal(M.CheckoutComponent)
350
+ se,
351
+ e.literal(j.GraphicComponent),
352
+ e.literal(j.CheckoutComponent)
353
353
  ]);
354
- var I = e.union([
354
+ var F = e.union([
355
355
  e.string(),
356
356
  e.number(),
357
357
  e.boolean()
358
- ]), ce = e.union([
359
- I,
360
- e.array(I),
358
+ ]), le = e.union([
359
+ F,
360
+ e.array(F),
361
361
  e.object({}),
362
362
  e.unknown()
363
363
  ]);
@@ -366,52 +366,58 @@ e.object({
366
366
  Id: e.string(),
367
367
  Message: e.string(),
368
368
  route: e.unknown().optional()
369
- }).or(ce);
369
+ }).or(le);
370
370
  //#endregion
371
371
  //#region ../configurator-client/src/cmps-registry.ts
372
- var L = /* @__PURE__ */ new Map();
373
- function le(e) {
374
- let t = F(e.name);
375
- L.has(t) || L.set(t, e);
372
+ var I = /* @__PURE__ */ new Map();
373
+ function ue(e) {
374
+ let t = P(e.name);
375
+ I.has(t) || I.set(t, e);
376
376
  }
377
377
  //#endregion
378
378
  //#region ../configurator-client/src/cmps/value-component.ts
379
- var ue = class {
379
+ var de = class {
380
380
  name;
381
381
  zodType;
382
382
  constructor(e, t) {
383
- this.name = e, this.zodType = t, le(this);
383
+ this.name = e, this.zodType = t, ue(this);
384
384
  }
385
385
  async getValue() {
386
- return await h().getCmpValue(this.name);
386
+ return await m().getCmpValue(this.name);
387
387
  }
388
388
  async setInput(e) {
389
- let t = F(this.name);
390
- await te().setCmpInput(t, e, this.zodType);
389
+ let t = P(this.name);
390
+ await ne().setCmpInput(t, e, this.zodType);
391
391
  }
392
392
  onValueChanged(e, t = !1, n) {
393
- h().onCmpValueChanged(this.name, e, n, t);
393
+ m().onCmpValueChanged(this.name, e, n, t);
394
394
  }
395
- }, de = () => b.getAssetPaths(), fe = /* @__PURE__ */ function(e) {
395
+ }, fe = () => y.getAssetPaths(), pe = /* @__PURE__ */ function(e) {
396
396
  return e[e.Facebook = 0] = "Facebook", e[e.Pinterest = 1] = "Pinterest", e[e.Twitter = 2] = "Twitter", e[e.LinkedIn = 3] = "LinkedIn", e[e.WhatsApp = 4] = "WhatsApp", e[e.Custom = 5] = "Custom", e[e.NativeShare = 6] = "NativeShare", e;
397
- }({}), R = x.onAnyCmpValueChanged.bind(x), z = async (e) => {
398
- if (await x.finishConfiguration(e?.input), e.sendDataToParentPage) {
397
+ }({}), L = b.onAnyCmpValueChanged.bind(b), R = async (e) => {
398
+ if (await b.finishConfiguration(e?.input), e.sendDataToParentPage) {
399
399
  let t = e.transformParentPageData();
400
- await v.sendConfigurationFinished(t);
400
+ await _.sendConfigurationFinished(t);
401
401
  }
402
- }, B = async (e) => {
403
- let t = fe[e.platform], n = e.imageUrl ?? "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mP8/x8AAwMCAO+X2ZkAAAAASUVORK5CYII=", r = {
402
+ }, z = async (e) => {
403
+ let t = pe[e.platform], n = e.imageUrl ?? "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mP8/x8AAwMCAO+X2ZkAAAAASUVORK5CYII=", r = {
404
404
  ...e,
405
405
  platform: t,
406
406
  imageUrl: n
407
- }, i = await x.shareConfiguration(r);
408
- await b.openShareWindow(e.platform, i);
407
+ }, i = await b.shareConfiguration(r);
408
+ await y.openShareWindow(e.platform, i);
409
409
  let { shareUrl: a, shareConfigurationId: o } = i;
410
410
  return {
411
411
  shareUrl: a,
412
412
  shareConfigurationId: o
413
413
  };
414
- }, V = () => v.isInIFrame(), H = (e) => v.setIFrameSize(e), U = (e) => b.navigateToLogin(e), W = async (e) => {
414
+ };
415
+ async function B(e) {
416
+ return await y.executeIntegration(e);
417
+ }
418
+ //#endregion
419
+ //#region src/utils/cfgr.utils.ts
420
+ var V = () => _.isInIFrame(), H = (e) => _.setIFrameSize(e), U = (e) => y.navigateToLogin(e), W = async (e) => {
415
421
  let { promise: t, resolve: n } = Promise.withResolvers(), r = {};
416
422
  for (let [t, i] of Object.entries(e)) i.onValueChanged((i) => {
417
423
  r[t] = i, Object.keys(e).every((e) => e in r) && n(r);
@@ -421,13 +427,13 @@ var ue = class {
421
427
  //#endregion
422
428
  //#region src/utils/ctrl.utils.ts
423
429
  function G(e, t) {
424
- return new i(y.createCtrl("button", e.id, t));
430
+ return new i(v.createCtrl("button", e.id, t));
425
431
  }
426
432
  function K(e, t) {
427
- return new a(y.createCtrl("checkbox", e.id, t));
433
+ return new a(v.createCtrl("checkbox", e.id, t));
428
434
  }
429
435
  function q(e, t) {
430
- return new l(y.createCtrl("dataview", e.id, {
436
+ return new l(v.createCtrl("dataview", e.id, {
431
437
  position: t.position,
432
438
  properties: {
433
439
  ...t.properties,
@@ -437,7 +443,7 @@ function q(e, t) {
437
443
  }));
438
444
  }
439
445
  function J(e, t) {
440
- return new s(y.createCtrl("combobox", e.id, {
446
+ return new s(v.createCtrl("combobox", e.id, {
441
447
  position: t.position,
442
448
  properties: {
443
449
  ...t.properties,
@@ -447,26 +453,26 @@ function J(e, t) {
447
453
  }));
448
454
  }
449
455
  function Y(e, t) {
450
- return new f(y.createCtrl("text", e.id, t));
456
+ return new d(v.createCtrl("text", e.id, t));
451
457
  }
452
458
  function X(e, t) {
453
- return new d(y.createCtrl("panel", e.id, t));
459
+ return new u(v.createCtrl("panel", e.id, t));
454
460
  }
455
461
  function Z(e, t) {
456
- return new u(y.createCtrl("textbox", e.id, t));
462
+ return new ee(v.createCtrl("textbox", e.id, t));
457
463
  }
458
464
  function Q(e, t) {
459
- return new c(y.createCtrl("customctrl", e.id, t));
465
+ return new c(v.createCtrl("customctrl", e.id, t));
460
466
  }
461
467
  function $(e, t) {
462
- return new o(y.createCtrl("collapsible", e.id, t));
468
+ return new o(v.createCtrl("collapsible", e.id, t));
463
469
  }
464
470
  //#endregion
465
471
  //#region src/utils/lifecycle.utils.ts
466
- var pe = "`beforeConfiguratorIsRendered` has no effect because it was called after the configurator was already rendered.\nMake sure to call it synchronously in the top-level code of your entry file before any top-level `await`.", me = "`beforeConfiguratorIsRendered` is ignored because it was called more than once.\nIt must only be called once.", he = (e) => {
467
- let t = re.registerBeforeConfiguratorIsRendered(e);
468
- t === "called-after-cfgr-render" ? console.error(pe) : t === "already-registered" && console.error(me);
469
- }, ge = (e, t) => v.sendCustomMsg(e, t), _e = (e) => v.redirectParentPage(e), ve = () => v.getParentPageUrl(), ye = (e, t) => v.fireAnalyticsEvent(e, t), be = (e) => v.onParentPageEvent(e), xe = async (e, t) => ne.createArPage(e, t), Se = /* @__PURE__ */ n({
472
+ var me = "`beforeConfiguratorIsRendered` has no effect because it was called after the configurator was already rendered.\nMake sure to call it synchronously in the top-level code of your entry file before any top-level `await`.", he = "`beforeConfiguratorIsRendered` is ignored because it was called more than once.\nIt must only be called once.", ge = (e) => {
473
+ let t = ie.registerBeforeConfiguratorIsRendered(e);
474
+ t === "called-after-cfgr-render" ? console.error(me) : t === "already-registered" && console.error(he);
475
+ }, _e = (e, t) => _.sendCustomMsg(e, t), ve = (e) => _.redirectParentPage(e), ye = () => _.getParentPageUrl(), be = (e, t) => _.fireAnalyticsEvent(e, t), xe = (e) => _.onParentPageEvent(e), Se = async (e, t) => re.createArPage(e, t), Ce = /* @__PURE__ */ n({
470
476
  addButtonControl: () => G,
471
477
  addCheckboxControl: () => K,
472
478
  addCollapsibleControl: () => $,
@@ -476,31 +482,32 @@ var pe = "`beforeConfiguratorIsRendered` has no effect because it was called aft
476
482
  addInputControl: () => Z,
477
483
  addPanelControl: () => X,
478
484
  addTextControl: () => Y,
479
- beforeConfiguratorIsRendered: () => he,
485
+ beforeConfiguratorIsRendered: () => ge,
480
486
  configuratorIsInIFrame: () => V,
481
- convertDocument: () => k,
482
- createArPage: () => xe,
483
- createPdfFromAssets: () => A,
487
+ convertDocument: () => O,
488
+ createArPage: () => Se,
489
+ createPdfFromAssets: () => k,
484
490
  createSyncCmpValuesStore: () => W,
485
- finishConfiguration: () => z,
486
- fireAnalyticsEvent: () => ye,
487
- getAssetPaths: () => de,
488
- getParentPageUrl: () => ve,
491
+ executeIntegration: () => B,
492
+ finishConfiguration: () => R,
493
+ fireAnalyticsEvent: () => be,
494
+ getAssetPaths: () => fe,
495
+ getParentPageUrl: () => ye,
489
496
  navigateToLogin: () => U,
490
- onAnyCmpValueChanged: () => R,
491
- onParentPageEvent: () => be,
492
- redirectParentPage: () => _e,
493
- sendCustomMsgToParentPage: () => ge,
497
+ onAnyCmpValueChanged: () => L,
498
+ onParentPageEvent: () => xe,
499
+ redirectParentPage: () => ve,
500
+ sendCustomMsgToParentPage: () => _e,
494
501
  setConfiguratorIFrameSize: () => H,
495
- shareConfiguration: () => B,
496
- uploadFiles: () => E,
497
- uploadImages: () => T,
498
- uploadTempFiles: () => O,
499
- uploadTempImages: () => D,
502
+ shareConfiguration: () => z,
503
+ uploadFiles: () => T,
504
+ uploadImages: () => w,
505
+ uploadTempFiles: () => D,
506
+ uploadTempImages: () => E,
500
507
  version: () => r
501
508
  });
502
509
  //#endregion
503
510
  //#region src/index.ts
504
511
  console.log(`Loading custom code SDK v${r}`);
505
512
  //#endregion
506
- export { i as Button, Se as CbnSdk, a as Checkbox, o as Collapsible, s as Combobox, w as CreatePdfTaskTypes, c as CustomControl, l as Dataview, C as DocumentConvertTaskTypes, u as Input, d as Panel, f as Text, ue as ValueComponent, G as addButtonControl, K as addCheckboxControl, $ as addCollapsibleControl, J as addComboboxControl, Q as addCustomControl, q as addDataviewControl, Z as addInputControl, X as addPanelControl, Y as addTextControl, he as beforeConfiguratorIsRendered, V as configuratorIsInIFrame, k as convertDocument, xe as createArPage, A as createPdfFromAssets, W as createSyncCmpValuesStore, z as finishConfiguration, ye as fireAnalyticsEvent, de as getAssetPaths, ve as getParentPageUrl, U as navigateToLogin, R as onAnyCmpValueChanged, be as onParentPageEvent, _e as redirectParentPage, ge as sendCustomMsgToParentPage, H as setConfiguratorIFrameSize, B as shareConfiguration, E as uploadFiles, T as uploadImages, O as uploadTempFiles, D as uploadTempImages, r as version };
513
+ export { i as Button, Ce as CbnSdk, a as Checkbox, o as Collapsible, s as Combobox, C as CreatePdfTaskTypes, c as CustomControl, l as Dataview, S as DocumentConvertTaskTypes, ee as Input, u as Panel, d as Text, de as ValueComponent, G as addButtonControl, K as addCheckboxControl, $ as addCollapsibleControl, J as addComboboxControl, Q as addCustomControl, q as addDataviewControl, Z as addInputControl, X as addPanelControl, Y as addTextControl, ge as beforeConfiguratorIsRendered, V as configuratorIsInIFrame, O as convertDocument, Se as createArPage, k as createPdfFromAssets, W as createSyncCmpValuesStore, B as executeIntegration, R as finishConfiguration, be as fireAnalyticsEvent, fe as getAssetPaths, ye as getParentPageUrl, U as navigateToLogin, L as onAnyCmpValueChanged, xe as onParentPageEvent, ve as redirectParentPage, _e as sendCustomMsgToParentPage, H as setConfiguratorIFrameSize, z as shareConfiguration, T as uploadFiles, w as uploadImages, D as uploadTempFiles, E as uploadTempImages, r as version };
package/dist/index.d.ts CHANGED
@@ -170,6 +170,7 @@ export declare namespace CbnSdk {
170
170
  sendCustomMsgToParentPage,
171
171
  setConfiguratorIFrameSize,
172
172
  shareConfiguration,
173
+ executeIntegration,
173
174
  createSyncCmpValuesStore,
174
175
  uploadFiles,
175
176
  uploadImages,
@@ -1008,6 +1009,20 @@ export declare enum DocumentConvertTaskTypes {
1008
1009
 
1009
1010
  declare type ElementPosOption = z.infer<typeof ZElementPosOption>;
1010
1011
 
1012
+ /**
1013
+ * Runs the given integration and returns the response.
1014
+ *
1015
+ * Integrations have to be set up in the company settings on the Combeenation platform.
1016
+ */
1017
+ export declare function executeIntegration(data: {
1018
+ integrationName: string;
1019
+ httpMethod: 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH';
1020
+ url: string;
1021
+ body?: string | null;
1022
+ headers?: Record<string, string> | null;
1023
+ timeoutSeconds?: number | null;
1024
+ }): Promise<Response>;
1025
+
1011
1026
  declare type FileOrDataUri = File | {
1012
1027
  dataUri: string;
1013
1028
  extension: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@combeenation/custom-code-sdk",
3
- "version": "0.0.1-rc1",
3
+ "version": "0.0.1-rc2",
4
4
  "description": "Combeenation custom code SDK package",
5
5
  "keywords": [],
6
6
  "homepage": "",