@lvble/core 2.0.23 → 2.0.25

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,2 +1,2 @@
1
- !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("MyLib",[],t):"object"==typeof exports?exports.MyLib=t():e.MyLib=t()}(self,(()=>(()=>{"use strict";var e={915:function(e,t,n){var o=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var i=Object.getOwnPropertyDescriptor(t,n);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,i)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),i=this&&this.__exportStar||function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||o(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),i(n(755),t)},755:(e,t)=>{var n;Object.defineProperty(t,"__esModule",{value:!0}),t.Lvble=t.Environment=void 0,function(e){e.Local="local",e.Dev="development",e.Sandbox="sandbox",e.Production="production"}(n||(t.Environment=n={}));const o={[n.Local]:"http://localhost:3001",[n.Dev]:"https://widget.pms.development.nowlvble.com",[n.Sandbox]:"https://widget.pms.sandbox.nowlvble.com",[n.Production]:"https://widget.pms.production.nowlvble.com"},i={[n.Local]:"http://localhost:3000",[n.Dev]:"https://experience.pms.development.nowlvble.com",[n.Sandbox]:"https://experience.pms.sandbox.nowlvble.com",[n.Production]:"https://experience.pms.production.nowlvble.com"};var r;!function(e){e.FinishOnboarding="finishOnboarding",e.FinishOffboarding="finishOffboarding",e.FinishSplit="finishSplit",e.FinishRepay="finishRepay"}(r||(r={})),r.FinishOnboarding,r.FinishOffboarding,r.FinishSplit,r.FinishRepay;class s extends HTMLElement{constructor(){super(),Object.defineProperty(this,"_typeToEvent",{enumerable:!0,configurable:!0,writable:!0,value:{onboarding:r.FinishOnboarding,offboarding:r.FinishOffboarding,split:r.FinishSplit,repay:r.FinishRepay}}),Object.defineProperty(this,"_iframe",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.attachShadow({mode:"open"})}get mode(){return this.getAttribute("mode")}set mode(e){e?this.setAttribute("mode",e):this.removeAttribute("mode")}get environment(){return this.getAttribute("environment")}set environment(e){e?this.setAttribute("environment",e):this.removeAttribute("environment")}get token(){return this.getAttribute("token")}set token(e){e?this.setAttribute("token",e):this.removeAttribute("token")}connectedCallback(){var e;const t=`${o[this.environment]}?token=${this.token}&environment=${this.environment}`,n=document.createElement("iframe");n.src=t,n.width="100%",n.height="100%",n.style.borderStyle="solid",n.style.borderRadius="10px",n.style.borderColor="transparent",this._iframe=n,null===(e=this.shadowRoot)||void 0===e||e.appendChild(n)}disconnectedCallback(){this.shadowRoot&&(this.shadowRoot.innerHTML="")}}let d;customElements.define("lvble-widget",s),customElements.get("lvble-widget"),customElements.get("lvble-widget"),t.Lvble=e=>({createWidget:t=>{const n=new s;function i(n){if(n.origin!=o[e.environment])return void console.debug(`Received message from unknown origin: ${n.origin}`);const i=n.data;t.onEvent(i.eventType,i.data)}return n.environment=e.environment,n.token=e.token,n.mode=t.mode,window.removeEventListener("message",i),window.addEventListener("message",i),n},open:t=>{const n={onboarding:`${i[e.environment]}?token=${e.token}`,offboarding:`${i[e.environment]}?token=${e.token}`,split:`${i[e.environment]}?token=${e.token}`,repay:`${i[e.environment]}?token=${e.token}`},o=t.mode?n[t.mode]:`${i[e.environment]}?token=${e.token}`,r=screen.width/2-225,s=screen.height/2-400;function a(n){if(n.origin!=i[e.environment])return void console.debug(`Received message from unknown origin: ${n.origin}`);const o=n.data,r=document.querySelectorAll("lvble-widget");n=JSON.parse(JSON.stringify(n)),r.forEach((e=>{var t,n;null===(n=(null===(t=e.shadowRoot)||void 0===t?void 0:t.querySelector("iframe")).contentWindow)||void 0===n||n.postMessage(o,"*")})),t.onEvent(o.eventType,o.data)}d=window.open(o,"LvblePopup","width=450,height=800,location=no,left="+r+",top="+s),window.removeEventListener("message",a),window.addEventListener("message",a)}})}},t={};return function n(o){var i=t[o];if(void 0!==i)return i.exports;var r=t[o]={exports:{}};return e[o].call(r.exports,r,r.exports,n),r.exports}(915)})()));
1
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("MyLib",[],t):"object"==typeof exports?exports.MyLib=t():e.MyLib=t()}(self,(()=>(()=>{"use strict";var e={915:function(e,t,n){var o=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var i=Object.getOwnPropertyDescriptor(t,n);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,i)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),i=this&&this.__exportStar||function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||o(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),i(n(755),t)},755:(e,t)=>{var n;Object.defineProperty(t,"__esModule",{value:!0}),t.Lvble=t.Environment=void 0,function(e){e.Local="local",e.Dev="development",e.Sandbox="sandbox",e.Production="production"}(n||(t.Environment=n={}));const o={[n.Local]:"http://localhost:3001",[n.Dev]:"https://widget.pms.development.nowlvble.com",[n.Sandbox]:"https://widget.pms.sandbox.nowlvble.com",[n.Production]:"https://widget.pms.production.nowlvble.com"},i={[n.Local]:"http://localhost:3000",[n.Dev]:"https://experience.pms.development.nowlvble.com",[n.Sandbox]:"https://experience.pms.sandbox.nowlvble.com",[n.Production]:"https://experience.pms.production.nowlvble.com"};var r;!function(e){e.FinishOnboarding="finishOnboarding",e.FinishOffboarding="finishOffboarding",e.FinishSplit="finishSplit",e.FinishRepay="finishRepay"}(r||(r={})),r.FinishOnboarding,r.FinishOffboarding,r.FinishSplit,r.FinishRepay;class s extends HTMLElement{constructor(){super(),Object.defineProperty(this,"_typeToEvent",{enumerable:!0,configurable:!0,writable:!0,value:{onboarding:r.FinishOnboarding,offboarding:r.FinishOffboarding,split:r.FinishSplit,repay:r.FinishRepay}}),Object.defineProperty(this,"_iframe",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.attachShadow({mode:"open"})}get mode(){return this.getAttribute("mode")}set mode(e){e?this.setAttribute("mode",e):this.removeAttribute("mode")}get environment(){return this.getAttribute("environment")}set environment(e){e?this.setAttribute("environment",e):this.removeAttribute("environment")}get token(){return this.getAttribute("token")}set token(e){e?this.setAttribute("token",e):this.removeAttribute("token")}connectedCallback(){var e;const t=`${o[this.environment]}?token=${this.token}&environment=${this.environment}`,n=document.createElement("iframe");n.src=t,n.width="100%",n.height="100%",n.style.borderStyle="solid",n.style.borderRadius="10px",n.style.borderColor="transparent",this._iframe=n,null===(e=this.shadowRoot)||void 0===e||e.appendChild(n)}disconnectedCallback(){this.shadowRoot&&(this.shadowRoot.innerHTML="")}}let d;customElements.define("lvble-widget",s),customElements.get("lvble-widget"),customElements.get("lvble-widget"),t.Lvble=e=>{let t=!1;return{createWidget:n=>{const i=new s;i.environment=e.environment,i.token=e.token,i.mode=n.mode;return t||(window.addEventListener("message",(t=>{if(t.origin!=o[e.environment])return void console.debug(`Received message from unknown origin: ${t.origin}`);const i=t.data;n.onEvent(i.eventType,i.data)})),t=!0),i},open:n=>{const o={onboarding:`${i[e.environment]}?token=${e.token}`,offboarding:`${i[e.environment]}?token=${e.token}`,split:`${i[e.environment]}?token=${e.token}`,repay:`${i[e.environment]}?token=${e.token}`},r=n.mode?o[n.mode]:`${i[e.environment]}?token=${e.token}`,s=screen.width/2-225,a=screen.height/2-400;d=window.open(r,"LvblePopup","width=450,height=800,location=no,left="+s+",top="+a);t||(window.addEventListener("message",(t=>{if(t.origin!=i[e.environment])return void console.debug(`Received message from unknown origin: ${t.origin}`);const o=t.data,r=document.querySelectorAll("lvble-widget");t=JSON.parse(JSON.stringify(t)),r.forEach((e=>{var t,n;null===(n=(null===(t=e.shadowRoot)||void 0===t?void 0:t.querySelector("iframe")).contentWindow)||void 0===n||n.postMessage(o,"*")})),n.onEvent(o.eventType,o.data)})),t=!0)}}}}},t={};return function n(o){var i=t[o];if(void 0!==i)return i.exports;var r=t[o]={exports:{}};return e[o].call(r.exports,r,r.exports,n),r.exports}(915)})()));
2
2
  //# sourceMappingURL=core.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"core.js","mappings":"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","sources":["webpack://MyLib/webpack/universalModuleDefinition","webpack://MyLib/./src/lib/index.ts","webpack://MyLib/./src/lib/lvble.ts","webpack://MyLib/webpack/bootstrap","webpack://MyLib/webpack/startup"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"MyLib\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"MyLib\"] = factory();\n\telse\n\t\troot[\"MyLib\"] = factory();\n})(self, () => {\nreturn ","export * from './lvble'\n","export enum Environment {\n Local = \"local\",\n Dev = \"development\",\n Sandbox = \"sandbox\",\n Production = \"production\",\n}\nconst envToBaseUrlMapWidget: Record<Environment, string> = {\n [Environment.Local]: \"http://localhost:3001\",\n [Environment.Dev]: \"https://widget.pms.development.nowlvble.com\",\n [Environment.Sandbox]: \"https://widget.pms.sandbox.nowlvble.com\",\n [Environment.Production]: \"https://widget.pms.production.nowlvble.com\",\n};\n\nconst envToBaseUrlMapExperience: Record<Environment, string> = {\n [Environment.Local]: \"http://localhost:3000\",\n [Environment.Dev]: \"https://experience.pms.development.nowlvble.com\",\n [Environment.Sandbox]: \"https://experience.pms.sandbox.nowlvble.com\",\n [Environment.Production]: \"https://experience.pms.production.nowlvble.com\",\n};\n\nexport type Mode = \"onboarding\" | \"offboarding\" | \"split\" | \"repay\";\nexport type ErrorData = {\n type: \"error\";\n reason: string;\n};\nexport type OnboardingData =\n | ErrorData\n | {\n type: \"success\";\n status: string;\n };\nexport type SplitData =\n | ErrorData\n | {\n type: \"success\";\n external_id: string;\n settlement_id: string;\n amount: number;\n };\nexport type CloseData =\n | ErrorData\n | {\n type: \"close\";\n };\n// TODO: Make this the event type in the onEvent callback signature\nexport type EventData = OnboardingData | SplitData | CloseData;\n\nenum EventType {\n FinishOnboarding = \"finishOnboarding\",\n FinishOffboarding = \"finishOffboarding\",\n FinishSplit = \"finishSplit\",\n FinishRepay = \"finishRepay\",\n}\n\nconst modeToEventType = {\n onboarding: EventType.FinishOnboarding,\n offboarding: EventType.FinishOffboarding,\n split: EventType.FinishSplit,\n repay: EventType.FinishRepay,\n};\n\nexport interface InitOptions {\n // The environment to use.\n environment: Environment;\n // The widget token to use.\n token: string;\n}\n\nexport interface OpenOptions {\n // The mode to open the popup in. See Mode for more information.\n mode?: Mode;\n // The callback to invoke when the popup has sent an event (e.g. user clicked a button).\n onEvent: (eventType: string, data: any) => void;\n}\n\nexport interface CreateWidgetOptions extends OpenOptions {\n mode?: Extract<Mode, \"onboarding\" | \"repay\">;\n // The callback to invoke when the popup has sent an event (e.g. user clicked a button).\n onEvent: (eventType: string, data: any) => void;\n}\n\nclass LvbleWidget extends HTMLElement {\n _typeToEvent = {\n onboarding: EventType.FinishOnboarding,\n offboarding: EventType.FinishOffboarding,\n split: EventType.FinishSplit,\n repay: EventType.FinishRepay,\n };\n _iframe?: HTMLIFrameElement;\n\n constructor() {\n super();\n this.attachShadow({ mode: \"open\" });\n }\n\n get mode(): Mode {\n return this.getAttribute(\"mode\") as Mode;\n }\n\n set mode(val: Mode | undefined) {\n if (val) {\n this.setAttribute(\"mode\", val);\n } else {\n this.removeAttribute(\"mode\");\n }\n }\n\n get environment(): Environment {\n return this.getAttribute(\"environment\") as Environment;\n }\n\n set environment(val) {\n if (val) {\n this.setAttribute(\"environment\", val);\n } else {\n this.removeAttribute(\"environment\");\n }\n }\n\n get token() {\n return this.getAttribute(\"token\") as string;\n }\n\n set token(val: string) {\n if (val) {\n this.setAttribute(\"token\", val);\n } else {\n this.removeAttribute(\"token\");\n }\n }\n\n connectedCallback() {\n const iframeSrc = `${envToBaseUrlMapWidget[this.environment]}?token=${\n this.token\n }&environment=${this.environment}`;\n\n const iframe = document.createElement(\"iframe\");\n iframe.src = iframeSrc;\n iframe.width = `100%`;\n iframe.height = `100%`;\n iframe.style.borderStyle = \"solid\";\n iframe.style.borderRadius = \"10px\";\n iframe.style.borderColor = \"transparent\";\n this._iframe = iframe;\n\n this.shadowRoot?.appendChild(iframe);\n }\n\n disconnectedCallback() {\n if (this.shadowRoot) this.shadowRoot.innerHTML = \"\";\n }\n}\n\ncustomElements.define(\"lvble-widget\", LvbleWidget);\n\nconst modeWidgetMap: Record<\n Extract<Mode, \"onboarding\" | \"repay\">,\n CustomElementConstructor | undefined\n> = {\n onboarding: customElements.get(\"lvble-widget\"),\n repay: customElements.get(\"lvble-widget\"),\n};\n\nlet _popup: Window;\n\nconst lvble = (initOptions: InitOptions) => {\n return {\n /**\n * This function creates a widget that can be embedded in your website.\n *\n * @param createOptions The options for creating the widget. See CreateWidgetOptions for more information.\n * @returns The widget.\n */\n // TODO: Add support for no mode\n createWidget: (createOptions: CreateWidgetOptions) => {\n const widget = new LvbleWidget()\n \n // (\n // createOptions.mode\n // ? new modeWidgetMap[createOptions.mode]!()\n // : new (customElements.get(\n // \"lvble-widget\"\n // ) as CustomElementConstructor)()\n // ) as LvbleWidget;\n widget.environment = initOptions.environment;\n widget.token = initOptions.token;\n widget.mode = createOptions.mode;\n\n function messageListener(message: MessageEvent) {\n if (message.origin != envToBaseUrlMapWidget[initOptions.environment]) {\n console.debug(\n `Received message from unknown origin: ${message.origin}`\n );\n return;\n }\n\n const data = message.data;\n createOptions.onEvent(data.eventType, data.data);\n };\n\n window.removeEventListener(\"message\", messageListener);\n window.addEventListener(\"message\", messageListener);\n return widget;\n },\n /**\n * This function opens a popup with the relevant mode.\n * @param openOptions The options for opening the widget. See OpenOptions for more information.\n * @returns undefined.\n */\n open: (openOptions: OpenOptions) => {\n const modeUrlMap: Record<Mode, string> = {\n onboarding: `${\n envToBaseUrlMapExperience[initOptions.environment]\n }?token=${initOptions.token}`,\n offboarding: `${\n envToBaseUrlMapExperience[initOptions.environment]\n }?token=${initOptions.token}`,\n split: `${envToBaseUrlMapExperience[initOptions.environment]}?token=${\n initOptions.token\n }`,\n repay: `${envToBaseUrlMapExperience[initOptions.environment]}?token=${\n initOptions.token\n }`,\n };\n\n const modeUrl = openOptions.mode ? \n modeUrlMap[openOptions.mode] : \n `${envToBaseUrlMapExperience[initOptions.environment]}?token=${initOptions.token}`;\n\n const w = 450;\n const h = 800;\n const l = screen.width / 2 - w / 2;\n const t = screen.height / 2 - h / 2;\n _popup = window.open(\n modeUrl,\n \"LvblePopup\",\n \"width=\" + w + \",height=\" + h + \",location=no,left=\" + l + \",top=\" + t\n ) as Window;\n\n function messageListener(message: MessageEvent) {\n if (\n message.origin != envToBaseUrlMapExperience[initOptions.environment]\n ) {\n console.debug(\n `Received message from unknown origin: ${message.origin}`\n );\n return;\n }\n const eventData = message.data;\n const iframes = document.querySelectorAll(\"lvble-widget\");\n\n message = JSON.parse(JSON.stringify(message));\n\n iframes.forEach((w) => {\n (\n w.shadowRoot?.querySelector(\"iframe\") as HTMLIFrameElement\n ).contentWindow?.postMessage(eventData, \"*\");\n });\n\n openOptions.onEvent(eventData.eventType, eventData.data);\n };\n \n window.removeEventListener(\"message\", messageListener);\n window.addEventListener(\"message\", messageListener);\n },\n };\n};\n\nexport type LvbleType = ReturnType<typeof lvble>;\n\nexport const Lvble = lvble;\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// startup\n// Load entry module and return exports\n// This entry module is referenced by other modules so it can't be inlined\nvar __webpack_exports__ = __webpack_require__(915);\n"],"names":["root","factory","exports","module","define","amd","self","Environment","envToBaseUrlMapWidget","Local","Dev","Sandbox","Production","envToBaseUrlMapExperience","EventType","FinishOnboarding","FinishOffboarding","FinishSplit","FinishRepay","LvbleWidget","HTMLElement","constructor","super","onboarding","offboarding","split","repay","this","attachShadow","mode","getAttribute","val","setAttribute","removeAttribute","environment","token","connectedCallback","iframeSrc","iframe","document","createElement","src","width","height","style","borderStyle","borderRadius","borderColor","_iframe","shadowRoot","appendChild","disconnectedCallback","innerHTML","_popup","customElements","get","Lvble","initOptions","createWidget","createOptions","widget","messageListener","message","origin","console","debug","data","onEvent","eventType","window","removeEventListener","addEventListener","open","openOptions","modeUrlMap","modeUrl","l","screen","w","t","h","eventData","iframes","querySelectorAll","JSON","parse","stringify","forEach","querySelector","contentWindow","postMessage","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","__webpack_modules__","call"],"sourceRoot":""}
1
+ {"version":3,"file":"core.js","mappings":"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","sources":["webpack://MyLib/webpack/universalModuleDefinition","webpack://MyLib/./src/lib/index.ts","webpack://MyLib/./src/lib/lvble.ts","webpack://MyLib/webpack/bootstrap","webpack://MyLib/webpack/startup"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"MyLib\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"MyLib\"] = factory();\n\telse\n\t\troot[\"MyLib\"] = factory();\n})(self, () => {\nreturn ","export * from './lvble'\n","export enum Environment {\n Local = \"local\",\n Dev = \"development\",\n Sandbox = \"sandbox\",\n Production = \"production\",\n}\nconst envToBaseUrlMapWidget: Record<Environment, string> = {\n [Environment.Local]: \"http://localhost:3001\",\n [Environment.Dev]: \"https://widget.pms.development.nowlvble.com\",\n [Environment.Sandbox]: \"https://widget.pms.sandbox.nowlvble.com\",\n [Environment.Production]: \"https://widget.pms.production.nowlvble.com\",\n};\n\nconst envToBaseUrlMapExperience: Record<Environment, string> = {\n [Environment.Local]: \"http://localhost:3000\",\n [Environment.Dev]: \"https://experience.pms.development.nowlvble.com\",\n [Environment.Sandbox]: \"https://experience.pms.sandbox.nowlvble.com\",\n [Environment.Production]: \"https://experience.pms.production.nowlvble.com\",\n};\n\nexport type Mode = \"onboarding\" | \"offboarding\" | \"split\" | \"repay\";\nexport type ErrorData = {\n type: \"error\";\n reason: string;\n};\nexport type OnboardingData =\n | ErrorData\n | {\n type: \"success\";\n status: string;\n };\nexport type SplitData =\n | ErrorData\n | {\n type: \"success\";\n external_id: string;\n settlement_id: string;\n amount: number;\n };\nexport type CloseData =\n | ErrorData\n | {\n type: \"close\";\n };\n// TODO: Make this the event type in the onEvent callback signature\nexport type EventData = OnboardingData | SplitData | CloseData;\n\nenum EventType {\n FinishOnboarding = \"finishOnboarding\",\n FinishOffboarding = \"finishOffboarding\",\n FinishSplit = \"finishSplit\",\n FinishRepay = \"finishRepay\",\n}\n\nconst modeToEventType = {\n onboarding: EventType.FinishOnboarding,\n offboarding: EventType.FinishOffboarding,\n split: EventType.FinishSplit,\n repay: EventType.FinishRepay,\n};\n\nexport interface InitOptions {\n // The environment to use.\n environment: Environment;\n // The widget token to use.\n token: string;\n}\n\nexport interface OpenOptions {\n // The mode to open the popup in. See Mode for more information.\n mode?: Mode;\n // The callback to invoke when the popup has sent an event (e.g. user clicked a button).\n onEvent: (eventType: string, data: any) => void;\n}\n\nexport interface CreateWidgetOptions extends OpenOptions {\n mode?: Extract<Mode, \"onboarding\" | \"repay\">;\n // The callback to invoke when the popup has sent an event (e.g. user clicked a button).\n onEvent: (eventType: string, data: any) => void;\n}\n\nclass LvbleWidget extends HTMLElement {\n _typeToEvent = {\n onboarding: EventType.FinishOnboarding,\n offboarding: EventType.FinishOffboarding,\n split: EventType.FinishSplit,\n repay: EventType.FinishRepay,\n };\n _iframe?: HTMLIFrameElement;\n\n constructor() {\n super();\n this.attachShadow({ mode: \"open\" });\n }\n\n get mode(): Mode {\n return this.getAttribute(\"mode\") as Mode;\n }\n\n set mode(val: Mode | undefined) {\n if (val) {\n this.setAttribute(\"mode\", val);\n } else {\n this.removeAttribute(\"mode\");\n }\n }\n\n get environment(): Environment {\n return this.getAttribute(\"environment\") as Environment;\n }\n\n set environment(val) {\n if (val) {\n this.setAttribute(\"environment\", val);\n } else {\n this.removeAttribute(\"environment\");\n }\n }\n\n get token() {\n return this.getAttribute(\"token\") as string;\n }\n\n set token(val: string) {\n if (val) {\n this.setAttribute(\"token\", val);\n } else {\n this.removeAttribute(\"token\");\n }\n }\n\n connectedCallback() {\n const iframeSrc = `${envToBaseUrlMapWidget[this.environment]}?token=${\n this.token\n }&environment=${this.environment}`;\n\n const iframe = document.createElement(\"iframe\");\n iframe.src = iframeSrc;\n iframe.width = `100%`;\n iframe.height = `100%`;\n iframe.style.borderStyle = \"solid\";\n iframe.style.borderRadius = \"10px\";\n iframe.style.borderColor = \"transparent\";\n this._iframe = iframe;\n\n this.shadowRoot?.appendChild(iframe);\n }\n\n disconnectedCallback() {\n if (this.shadowRoot) this.shadowRoot.innerHTML = \"\";\n }\n}\n\ncustomElements.define(\"lvble-widget\", LvbleWidget);\n\nconst modeWidgetMap: Record<\n Extract<Mode, \"onboarding\" | \"repay\">,\n CustomElementConstructor | undefined\n> = {\n onboarding: customElements.get(\"lvble-widget\"),\n repay: customElements.get(\"lvble-widget\"),\n};\n\nlet _popup: Window;\n\nconst lvble = (initOptions: InitOptions) => {\n\n let listenerAdded = false;\n\n return {\n /**\n * This function creates a widget that can be embedded in your website.\n *\n * @param createOptions The options for creating the widget. See CreateWidgetOptions for more information.\n * @returns The widget.\n */\n // TODO: Add support for no mode\n createWidget: (createOptions: CreateWidgetOptions) => {\n const widget = new LvbleWidget()\n \n // (\n // createOptions.mode\n // ? new modeWidgetMap[createOptions.mode]!()\n // : new (customElements.get(\n // \"lvble-widget\"\n // ) as CustomElementConstructor)()\n // ) as LvbleWidget;\n widget.environment = initOptions.environment;\n widget.token = initOptions.token;\n widget.mode = createOptions.mode;\n\n const messageListener = (message: MessageEvent) => {\n if (message.origin != envToBaseUrlMapWidget[initOptions.environment]) {\n console.debug(\n `Received message from unknown origin: ${message.origin}`\n );\n return;\n }\n\n const data = message.data;\n createOptions.onEvent(data.eventType, data.data);\n };\n\n if (!listenerAdded) {\n window.addEventListener(\"message\", messageListener);\n listenerAdded = true;\n }\n\n return widget;\n },\n /**\n * This function opens a popup with the relevant mode.\n * @param openOptions The options for opening the widget. See OpenOptions for more information.\n * @returns undefined.\n */\n open: (openOptions: OpenOptions) => {\n const modeUrlMap: Record<Mode, string> = {\n onboarding: `${\n envToBaseUrlMapExperience[initOptions.environment]\n }?token=${initOptions.token}`,\n offboarding: `${\n envToBaseUrlMapExperience[initOptions.environment]\n }?token=${initOptions.token}`,\n split: `${envToBaseUrlMapExperience[initOptions.environment]}?token=${\n initOptions.token\n }`,\n repay: `${envToBaseUrlMapExperience[initOptions.environment]}?token=${\n initOptions.token\n }`,\n };\n\n const modeUrl = openOptions.mode ? \n modeUrlMap[openOptions.mode] : \n `${envToBaseUrlMapExperience[initOptions.environment]}?token=${initOptions.token}`;\n\n const w = 450;\n const h = 800;\n const l = screen.width / 2 - w / 2;\n const t = screen.height / 2 - h / 2;\n _popup = window.open(\n modeUrl,\n \"LvblePopup\",\n \"width=\" + w + \",height=\" + h + \",location=no,left=\" + l + \",top=\" + t\n ) as Window;\n\n const messageListener = (message: MessageEvent) => {\n if (\n message.origin != envToBaseUrlMapExperience[initOptions.environment]\n ) {\n console.debug(\n `Received message from unknown origin: ${message.origin}`\n );\n return;\n }\n const eventData = message.data;\n const iframes = document.querySelectorAll(\"lvble-widget\");\n\n message = JSON.parse(JSON.stringify(message));\n\n iframes.forEach((w) => {\n (\n w.shadowRoot?.querySelector(\"iframe\") as HTMLIFrameElement\n ).contentWindow?.postMessage(eventData, \"*\");\n });\n\n openOptions.onEvent(eventData.eventType, eventData.data);\n };\n \n if (!listenerAdded) {\n window.addEventListener(\"message\", messageListener);\n listenerAdded = true;\n }\n },\n };\n};\n\nexport type LvbleType = ReturnType<typeof lvble>;\n\nexport const Lvble = lvble;\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// startup\n// Load entry module and return exports\n// This entry module is referenced by other modules so it can't be inlined\nvar __webpack_exports__ = __webpack_require__(915);\n"],"names":["root","factory","exports","module","define","amd","self","Environment","envToBaseUrlMapWidget","Local","Dev","Sandbox","Production","envToBaseUrlMapExperience","EventType","FinishOnboarding","FinishOffboarding","FinishSplit","FinishRepay","LvbleWidget","HTMLElement","constructor","super","onboarding","offboarding","split","repay","this","attachShadow","mode","getAttribute","val","setAttribute","removeAttribute","environment","token","connectedCallback","iframeSrc","iframe","document","createElement","src","width","height","style","borderStyle","borderRadius","borderColor","_iframe","shadowRoot","appendChild","disconnectedCallback","innerHTML","_popup","customElements","get","Lvble","initOptions","listenerAdded","createWidget","createOptions","widget","window","addEventListener","message","origin","console","debug","data","onEvent","eventType","open","openOptions","modeUrlMap","modeUrl","l","screen","w","t","h","eventData","iframes","querySelectorAll","JSON","parse","stringify","forEach","querySelector","contentWindow","postMessage","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","__webpack_modules__","call"],"sourceRoot":""}
@@ -1,2 +1,2 @@
1
- !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("MyLib",[],t):"object"==typeof exports?exports.MyLib=t():e.MyLib=t()}(self,(()=>(()=>{"use strict";var e={915:function(e,t,n){var o=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var i=Object.getOwnPropertyDescriptor(t,n);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,i)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),i=this&&this.__exportStar||function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||o(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),i(n(755),t)},755:(e,t)=>{var n;Object.defineProperty(t,"__esModule",{value:!0}),t.Lvble=t.Environment=void 0,function(e){e.Local="local",e.Dev="development",e.Sandbox="sandbox",e.Production="production"}(n||(t.Environment=n={}));const o={[n.Local]:"http://localhost:3001",[n.Dev]:"https://widget.pms.development.nowlvble.com",[n.Sandbox]:"https://widget.pms.sandbox.nowlvble.com",[n.Production]:"https://widget.pms.production.nowlvble.com"},i={[n.Local]:"http://localhost:3000",[n.Dev]:"https://experience.pms.development.nowlvble.com",[n.Sandbox]:"https://experience.pms.sandbox.nowlvble.com",[n.Production]:"https://experience.pms.production.nowlvble.com"};var r;!function(e){e.FinishOnboarding="finishOnboarding",e.FinishOffboarding="finishOffboarding",e.FinishSplit="finishSplit",e.FinishRepay="finishRepay"}(r||(r={})),r.FinishOnboarding,r.FinishOffboarding,r.FinishSplit,r.FinishRepay;class s extends HTMLElement{constructor(){super(),Object.defineProperty(this,"_typeToEvent",{enumerable:!0,configurable:!0,writable:!0,value:{onboarding:r.FinishOnboarding,offboarding:r.FinishOffboarding,split:r.FinishSplit,repay:r.FinishRepay}}),Object.defineProperty(this,"_iframe",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.attachShadow({mode:"open"})}get mode(){return this.getAttribute("mode")}set mode(e){e?this.setAttribute("mode",e):this.removeAttribute("mode")}get environment(){return this.getAttribute("environment")}set environment(e){e?this.setAttribute("environment",e):this.removeAttribute("environment")}get token(){return this.getAttribute("token")}set token(e){e?this.setAttribute("token",e):this.removeAttribute("token")}connectedCallback(){var e;const t=`${o[this.environment]}?token=${this.token}&environment=${this.environment}`,n=document.createElement("iframe");n.src=t,n.width="100%",n.height="100%",n.style.borderStyle="solid",n.style.borderRadius="10px",n.style.borderColor="transparent",this._iframe=n,null===(e=this.shadowRoot)||void 0===e||e.appendChild(n)}disconnectedCallback(){this.shadowRoot&&(this.shadowRoot.innerHTML="")}}let d;customElements.define("lvble-widget",s),customElements.get("lvble-widget"),customElements.get("lvble-widget"),t.Lvble=e=>({createWidget:t=>{const n=new s;function i(n){if(n.origin!=o[e.environment])return void console.debug(`Received message from unknown origin: ${n.origin}`);const i=n.data;t.onEvent(i.eventType,i.data)}return n.environment=e.environment,n.token=e.token,n.mode=t.mode,window.removeEventListener("message",i),window.addEventListener("message",i),n},open:t=>{const n={onboarding:`${i[e.environment]}?token=${e.token}`,offboarding:`${i[e.environment]}?token=${e.token}`,split:`${i[e.environment]}?token=${e.token}`,repay:`${i[e.environment]}?token=${e.token}`},o=t.mode?n[t.mode]:`${i[e.environment]}?token=${e.token}`,r=screen.width/2-225,s=screen.height/2-400;function a(n){if(n.origin!=i[e.environment])return void console.debug(`Received message from unknown origin: ${n.origin}`);const o=n.data,r=document.querySelectorAll("lvble-widget");n=JSON.parse(JSON.stringify(n)),r.forEach((e=>{var t,n;null===(n=(null===(t=e.shadowRoot)||void 0===t?void 0:t.querySelector("iframe")).contentWindow)||void 0===n||n.postMessage(o,"*")})),t.onEvent(o.eventType,o.data)}d=window.open(o,"LvblePopup","width=450,height=800,location=no,left="+r+",top="+s),window.removeEventListener("message",a),window.addEventListener("message",a)}})}},t={};return function n(o){var i=t[o];if(void 0!==i)return i.exports;var r=t[o]={exports:{}};return e[o].call(r.exports,r,r.exports,n),r.exports}(915)})()));
1
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("MyLib",[],t):"object"==typeof exports?exports.MyLib=t():e.MyLib=t()}(self,(()=>(()=>{"use strict";var e={915:function(e,t,n){var o=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var i=Object.getOwnPropertyDescriptor(t,n);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,i)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),i=this&&this.__exportStar||function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||o(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),i(n(755),t)},755:(e,t)=>{var n;Object.defineProperty(t,"__esModule",{value:!0}),t.Lvble=t.Environment=void 0,function(e){e.Local="local",e.Dev="development",e.Sandbox="sandbox",e.Production="production"}(n||(t.Environment=n={}));const o={[n.Local]:"http://localhost:3001",[n.Dev]:"https://widget.pms.development.nowlvble.com",[n.Sandbox]:"https://widget.pms.sandbox.nowlvble.com",[n.Production]:"https://widget.pms.production.nowlvble.com"},i={[n.Local]:"http://localhost:3000",[n.Dev]:"https://experience.pms.development.nowlvble.com",[n.Sandbox]:"https://experience.pms.sandbox.nowlvble.com",[n.Production]:"https://experience.pms.production.nowlvble.com"};var r;!function(e){e.FinishOnboarding="finishOnboarding",e.FinishOffboarding="finishOffboarding",e.FinishSplit="finishSplit",e.FinishRepay="finishRepay"}(r||(r={})),r.FinishOnboarding,r.FinishOffboarding,r.FinishSplit,r.FinishRepay;class s extends HTMLElement{constructor(){super(),Object.defineProperty(this,"_typeToEvent",{enumerable:!0,configurable:!0,writable:!0,value:{onboarding:r.FinishOnboarding,offboarding:r.FinishOffboarding,split:r.FinishSplit,repay:r.FinishRepay}}),Object.defineProperty(this,"_iframe",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.attachShadow({mode:"open"})}get mode(){return this.getAttribute("mode")}set mode(e){e?this.setAttribute("mode",e):this.removeAttribute("mode")}get environment(){return this.getAttribute("environment")}set environment(e){e?this.setAttribute("environment",e):this.removeAttribute("environment")}get token(){return this.getAttribute("token")}set token(e){e?this.setAttribute("token",e):this.removeAttribute("token")}connectedCallback(){var e;const t=`${o[this.environment]}?token=${this.token}&environment=${this.environment}`,n=document.createElement("iframe");n.src=t,n.width="100%",n.height="100%",n.style.borderStyle="solid",n.style.borderRadius="10px",n.style.borderColor="transparent",this._iframe=n,null===(e=this.shadowRoot)||void 0===e||e.appendChild(n)}disconnectedCallback(){this.shadowRoot&&(this.shadowRoot.innerHTML="")}}let d;customElements.define("lvble-widget",s),customElements.get("lvble-widget"),customElements.get("lvble-widget"),t.Lvble=e=>{let t=!1;return{createWidget:n=>{const i=new s;i.environment=e.environment,i.token=e.token,i.mode=n.mode;return t||(window.addEventListener("message",(t=>{if(t.origin!=o[e.environment])return void console.debug(`Received message from unknown origin: ${t.origin}`);const i=t.data;n.onEvent(i.eventType,i.data)})),t=!0),i},open:n=>{const o={onboarding:`${i[e.environment]}?token=${e.token}`,offboarding:`${i[e.environment]}?token=${e.token}`,split:`${i[e.environment]}?token=${e.token}`,repay:`${i[e.environment]}?token=${e.token}`},r=n.mode?o[n.mode]:`${i[e.environment]}?token=${e.token}`,s=screen.width/2-225,a=screen.height/2-400;d=window.open(r,"LvblePopup","width=450,height=800,location=no,left="+s+",top="+a);t||(window.addEventListener("message",(t=>{if(t.origin!=i[e.environment])return void console.debug(`Received message from unknown origin: ${t.origin}`);const o=t.data,r=document.querySelectorAll("lvble-widget");t=JSON.parse(JSON.stringify(t)),r.forEach((e=>{var t,n;null===(n=(null===(t=e.shadowRoot)||void 0===t?void 0:t.querySelector("iframe")).contentWindow)||void 0===n||n.postMessage(o,"*")})),n.onEvent(o.eventType,o.data)})),t=!0)}}}}},t={};return function n(o){var i=t[o];if(void 0!==i)return i.exports;var r=t[o]={exports:{}};return e[o].call(r.exports,r,r.exports,n),r.exports}(915)})()));
2
2
  //# sourceMappingURL=core.min.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"core.min.js","mappings":"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","sources":["webpack://MyLib/webpack/universalModuleDefinition","webpack://MyLib/./src/lib/index.ts","webpack://MyLib/./src/lib/lvble.ts","webpack://MyLib/webpack/bootstrap","webpack://MyLib/webpack/startup"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"MyLib\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"MyLib\"] = factory();\n\telse\n\t\troot[\"MyLib\"] = factory();\n})(self, () => {\nreturn ","export * from './lvble'\n","export enum Environment {\n Local = \"local\",\n Dev = \"development\",\n Sandbox = \"sandbox\",\n Production = \"production\",\n}\nconst envToBaseUrlMapWidget: Record<Environment, string> = {\n [Environment.Local]: \"http://localhost:3001\",\n [Environment.Dev]: \"https://widget.pms.development.nowlvble.com\",\n [Environment.Sandbox]: \"https://widget.pms.sandbox.nowlvble.com\",\n [Environment.Production]: \"https://widget.pms.production.nowlvble.com\",\n};\n\nconst envToBaseUrlMapExperience: Record<Environment, string> = {\n [Environment.Local]: \"http://localhost:3000\",\n [Environment.Dev]: \"https://experience.pms.development.nowlvble.com\",\n [Environment.Sandbox]: \"https://experience.pms.sandbox.nowlvble.com\",\n [Environment.Production]: \"https://experience.pms.production.nowlvble.com\",\n};\n\nexport type Mode = \"onboarding\" | \"offboarding\" | \"split\" | \"repay\";\nexport type ErrorData = {\n type: \"error\";\n reason: string;\n};\nexport type OnboardingData =\n | ErrorData\n | {\n type: \"success\";\n status: string;\n };\nexport type SplitData =\n | ErrorData\n | {\n type: \"success\";\n external_id: string;\n settlement_id: string;\n amount: number;\n };\nexport type CloseData =\n | ErrorData\n | {\n type: \"close\";\n };\n// TODO: Make this the event type in the onEvent callback signature\nexport type EventData = OnboardingData | SplitData | CloseData;\n\nenum EventType {\n FinishOnboarding = \"finishOnboarding\",\n FinishOffboarding = \"finishOffboarding\",\n FinishSplit = \"finishSplit\",\n FinishRepay = \"finishRepay\",\n}\n\nconst modeToEventType = {\n onboarding: EventType.FinishOnboarding,\n offboarding: EventType.FinishOffboarding,\n split: EventType.FinishSplit,\n repay: EventType.FinishRepay,\n};\n\nexport interface InitOptions {\n // The environment to use.\n environment: Environment;\n // The widget token to use.\n token: string;\n}\n\nexport interface OpenOptions {\n // The mode to open the popup in. See Mode for more information.\n mode?: Mode;\n // The callback to invoke when the popup has sent an event (e.g. user clicked a button).\n onEvent: (eventType: string, data: any) => void;\n}\n\nexport interface CreateWidgetOptions extends OpenOptions {\n mode?: Extract<Mode, \"onboarding\" | \"repay\">;\n // The callback to invoke when the popup has sent an event (e.g. user clicked a button).\n onEvent: (eventType: string, data: any) => void;\n}\n\nclass LvbleWidget extends HTMLElement {\n _typeToEvent = {\n onboarding: EventType.FinishOnboarding,\n offboarding: EventType.FinishOffboarding,\n split: EventType.FinishSplit,\n repay: EventType.FinishRepay,\n };\n _iframe?: HTMLIFrameElement;\n\n constructor() {\n super();\n this.attachShadow({ mode: \"open\" });\n }\n\n get mode(): Mode {\n return this.getAttribute(\"mode\") as Mode;\n }\n\n set mode(val: Mode | undefined) {\n if (val) {\n this.setAttribute(\"mode\", val);\n } else {\n this.removeAttribute(\"mode\");\n }\n }\n\n get environment(): Environment {\n return this.getAttribute(\"environment\") as Environment;\n }\n\n set environment(val) {\n if (val) {\n this.setAttribute(\"environment\", val);\n } else {\n this.removeAttribute(\"environment\");\n }\n }\n\n get token() {\n return this.getAttribute(\"token\") as string;\n }\n\n set token(val: string) {\n if (val) {\n this.setAttribute(\"token\", val);\n } else {\n this.removeAttribute(\"token\");\n }\n }\n\n connectedCallback() {\n const iframeSrc = `${envToBaseUrlMapWidget[this.environment]}?token=${\n this.token\n }&environment=${this.environment}`;\n\n const iframe = document.createElement(\"iframe\");\n iframe.src = iframeSrc;\n iframe.width = `100%`;\n iframe.height = `100%`;\n iframe.style.borderStyle = \"solid\";\n iframe.style.borderRadius = \"10px\";\n iframe.style.borderColor = \"transparent\";\n this._iframe = iframe;\n\n this.shadowRoot?.appendChild(iframe);\n }\n\n disconnectedCallback() {\n if (this.shadowRoot) this.shadowRoot.innerHTML = \"\";\n }\n}\n\ncustomElements.define(\"lvble-widget\", LvbleWidget);\n\nconst modeWidgetMap: Record<\n Extract<Mode, \"onboarding\" | \"repay\">,\n CustomElementConstructor | undefined\n> = {\n onboarding: customElements.get(\"lvble-widget\"),\n repay: customElements.get(\"lvble-widget\"),\n};\n\nlet _popup: Window;\n\nconst lvble = (initOptions: InitOptions) => {\n return {\n /**\n * This function creates a widget that can be embedded in your website.\n *\n * @param createOptions The options for creating the widget. See CreateWidgetOptions for more information.\n * @returns The widget.\n */\n // TODO: Add support for no mode\n createWidget: (createOptions: CreateWidgetOptions) => {\n const widget = new LvbleWidget()\n \n // (\n // createOptions.mode\n // ? new modeWidgetMap[createOptions.mode]!()\n // : new (customElements.get(\n // \"lvble-widget\"\n // ) as CustomElementConstructor)()\n // ) as LvbleWidget;\n widget.environment = initOptions.environment;\n widget.token = initOptions.token;\n widget.mode = createOptions.mode;\n\n function messageListener(message: MessageEvent) {\n if (message.origin != envToBaseUrlMapWidget[initOptions.environment]) {\n console.debug(\n `Received message from unknown origin: ${message.origin}`\n );\n return;\n }\n\n const data = message.data;\n createOptions.onEvent(data.eventType, data.data);\n };\n\n window.removeEventListener(\"message\", messageListener);\n window.addEventListener(\"message\", messageListener);\n return widget;\n },\n /**\n * This function opens a popup with the relevant mode.\n * @param openOptions The options for opening the widget. See OpenOptions for more information.\n * @returns undefined.\n */\n open: (openOptions: OpenOptions) => {\n const modeUrlMap: Record<Mode, string> = {\n onboarding: `${\n envToBaseUrlMapExperience[initOptions.environment]\n }?token=${initOptions.token}`,\n offboarding: `${\n envToBaseUrlMapExperience[initOptions.environment]\n }?token=${initOptions.token}`,\n split: `${envToBaseUrlMapExperience[initOptions.environment]}?token=${\n initOptions.token\n }`,\n repay: `${envToBaseUrlMapExperience[initOptions.environment]}?token=${\n initOptions.token\n }`,\n };\n\n const modeUrl = openOptions.mode ? \n modeUrlMap[openOptions.mode] : \n `${envToBaseUrlMapExperience[initOptions.environment]}?token=${initOptions.token}`;\n\n const w = 450;\n const h = 800;\n const l = screen.width / 2 - w / 2;\n const t = screen.height / 2 - h / 2;\n _popup = window.open(\n modeUrl,\n \"LvblePopup\",\n \"width=\" + w + \",height=\" + h + \",location=no,left=\" + l + \",top=\" + t\n ) as Window;\n\n function messageListener(message: MessageEvent) {\n if (\n message.origin != envToBaseUrlMapExperience[initOptions.environment]\n ) {\n console.debug(\n `Received message from unknown origin: ${message.origin}`\n );\n return;\n }\n const eventData = message.data;\n const iframes = document.querySelectorAll(\"lvble-widget\");\n\n message = JSON.parse(JSON.stringify(message));\n\n iframes.forEach((w) => {\n (\n w.shadowRoot?.querySelector(\"iframe\") as HTMLIFrameElement\n ).contentWindow?.postMessage(eventData, \"*\");\n });\n\n openOptions.onEvent(eventData.eventType, eventData.data);\n };\n \n window.removeEventListener(\"message\", messageListener);\n window.addEventListener(\"message\", messageListener);\n },\n };\n};\n\nexport type LvbleType = ReturnType<typeof lvble>;\n\nexport const Lvble = lvble;\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// startup\n// Load entry module and return exports\n// This entry module is referenced by other modules so it can't be inlined\nvar __webpack_exports__ = __webpack_require__(915);\n"],"names":["root","factory","exports","module","define","amd","self","Environment","envToBaseUrlMapWidget","Local","Dev","Sandbox","Production","envToBaseUrlMapExperience","EventType","FinishOnboarding","FinishOffboarding","FinishSplit","FinishRepay","LvbleWidget","HTMLElement","constructor","super","onboarding","offboarding","split","repay","this","attachShadow","mode","getAttribute","val","setAttribute","removeAttribute","environment","token","connectedCallback","iframeSrc","iframe","document","createElement","src","width","height","style","borderStyle","borderRadius","borderColor","_iframe","shadowRoot","appendChild","disconnectedCallback","innerHTML","_popup","customElements","get","Lvble","initOptions","createWidget","createOptions","widget","messageListener","message","origin","console","debug","data","onEvent","eventType","window","removeEventListener","addEventListener","open","openOptions","modeUrlMap","modeUrl","l","screen","w","t","h","eventData","iframes","querySelectorAll","JSON","parse","stringify","forEach","querySelector","contentWindow","postMessage","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","__webpack_modules__","call"],"sourceRoot":""}
1
+ {"version":3,"file":"core.min.js","mappings":"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","sources":["webpack://MyLib/webpack/universalModuleDefinition","webpack://MyLib/./src/lib/index.ts","webpack://MyLib/./src/lib/lvble.ts","webpack://MyLib/webpack/bootstrap","webpack://MyLib/webpack/startup"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"MyLib\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"MyLib\"] = factory();\n\telse\n\t\troot[\"MyLib\"] = factory();\n})(self, () => {\nreturn ","export * from './lvble'\n","export enum Environment {\n Local = \"local\",\n Dev = \"development\",\n Sandbox = \"sandbox\",\n Production = \"production\",\n}\nconst envToBaseUrlMapWidget: Record<Environment, string> = {\n [Environment.Local]: \"http://localhost:3001\",\n [Environment.Dev]: \"https://widget.pms.development.nowlvble.com\",\n [Environment.Sandbox]: \"https://widget.pms.sandbox.nowlvble.com\",\n [Environment.Production]: \"https://widget.pms.production.nowlvble.com\",\n};\n\nconst envToBaseUrlMapExperience: Record<Environment, string> = {\n [Environment.Local]: \"http://localhost:3000\",\n [Environment.Dev]: \"https://experience.pms.development.nowlvble.com\",\n [Environment.Sandbox]: \"https://experience.pms.sandbox.nowlvble.com\",\n [Environment.Production]: \"https://experience.pms.production.nowlvble.com\",\n};\n\nexport type Mode = \"onboarding\" | \"offboarding\" | \"split\" | \"repay\";\nexport type ErrorData = {\n type: \"error\";\n reason: string;\n};\nexport type OnboardingData =\n | ErrorData\n | {\n type: \"success\";\n status: string;\n };\nexport type SplitData =\n | ErrorData\n | {\n type: \"success\";\n external_id: string;\n settlement_id: string;\n amount: number;\n };\nexport type CloseData =\n | ErrorData\n | {\n type: \"close\";\n };\n// TODO: Make this the event type in the onEvent callback signature\nexport type EventData = OnboardingData | SplitData | CloseData;\n\nenum EventType {\n FinishOnboarding = \"finishOnboarding\",\n FinishOffboarding = \"finishOffboarding\",\n FinishSplit = \"finishSplit\",\n FinishRepay = \"finishRepay\",\n}\n\nconst modeToEventType = {\n onboarding: EventType.FinishOnboarding,\n offboarding: EventType.FinishOffboarding,\n split: EventType.FinishSplit,\n repay: EventType.FinishRepay,\n};\n\nexport interface InitOptions {\n // The environment to use.\n environment: Environment;\n // The widget token to use.\n token: string;\n}\n\nexport interface OpenOptions {\n // The mode to open the popup in. See Mode for more information.\n mode?: Mode;\n // The callback to invoke when the popup has sent an event (e.g. user clicked a button).\n onEvent: (eventType: string, data: any) => void;\n}\n\nexport interface CreateWidgetOptions extends OpenOptions {\n mode?: Extract<Mode, \"onboarding\" | \"repay\">;\n // The callback to invoke when the popup has sent an event (e.g. user clicked a button).\n onEvent: (eventType: string, data: any) => void;\n}\n\nclass LvbleWidget extends HTMLElement {\n _typeToEvent = {\n onboarding: EventType.FinishOnboarding,\n offboarding: EventType.FinishOffboarding,\n split: EventType.FinishSplit,\n repay: EventType.FinishRepay,\n };\n _iframe?: HTMLIFrameElement;\n\n constructor() {\n super();\n this.attachShadow({ mode: \"open\" });\n }\n\n get mode(): Mode {\n return this.getAttribute(\"mode\") as Mode;\n }\n\n set mode(val: Mode | undefined) {\n if (val) {\n this.setAttribute(\"mode\", val);\n } else {\n this.removeAttribute(\"mode\");\n }\n }\n\n get environment(): Environment {\n return this.getAttribute(\"environment\") as Environment;\n }\n\n set environment(val) {\n if (val) {\n this.setAttribute(\"environment\", val);\n } else {\n this.removeAttribute(\"environment\");\n }\n }\n\n get token() {\n return this.getAttribute(\"token\") as string;\n }\n\n set token(val: string) {\n if (val) {\n this.setAttribute(\"token\", val);\n } else {\n this.removeAttribute(\"token\");\n }\n }\n\n connectedCallback() {\n const iframeSrc = `${envToBaseUrlMapWidget[this.environment]}?token=${\n this.token\n }&environment=${this.environment}`;\n\n const iframe = document.createElement(\"iframe\");\n iframe.src = iframeSrc;\n iframe.width = `100%`;\n iframe.height = `100%`;\n iframe.style.borderStyle = \"solid\";\n iframe.style.borderRadius = \"10px\";\n iframe.style.borderColor = \"transparent\";\n this._iframe = iframe;\n\n this.shadowRoot?.appendChild(iframe);\n }\n\n disconnectedCallback() {\n if (this.shadowRoot) this.shadowRoot.innerHTML = \"\";\n }\n}\n\ncustomElements.define(\"lvble-widget\", LvbleWidget);\n\nconst modeWidgetMap: Record<\n Extract<Mode, \"onboarding\" | \"repay\">,\n CustomElementConstructor | undefined\n> = {\n onboarding: customElements.get(\"lvble-widget\"),\n repay: customElements.get(\"lvble-widget\"),\n};\n\nlet _popup: Window;\n\nconst lvble = (initOptions: InitOptions) => {\n\n let listenerAdded = false;\n\n return {\n /**\n * This function creates a widget that can be embedded in your website.\n *\n * @param createOptions The options for creating the widget. See CreateWidgetOptions for more information.\n * @returns The widget.\n */\n // TODO: Add support for no mode\n createWidget: (createOptions: CreateWidgetOptions) => {\n const widget = new LvbleWidget()\n \n // (\n // createOptions.mode\n // ? new modeWidgetMap[createOptions.mode]!()\n // : new (customElements.get(\n // \"lvble-widget\"\n // ) as CustomElementConstructor)()\n // ) as LvbleWidget;\n widget.environment = initOptions.environment;\n widget.token = initOptions.token;\n widget.mode = createOptions.mode;\n\n const messageListener = (message: MessageEvent) => {\n if (message.origin != envToBaseUrlMapWidget[initOptions.environment]) {\n console.debug(\n `Received message from unknown origin: ${message.origin}`\n );\n return;\n }\n\n const data = message.data;\n createOptions.onEvent(data.eventType, data.data);\n };\n\n if (!listenerAdded) {\n window.addEventListener(\"message\", messageListener);\n listenerAdded = true;\n }\n\n return widget;\n },\n /**\n * This function opens a popup with the relevant mode.\n * @param openOptions The options for opening the widget. See OpenOptions for more information.\n * @returns undefined.\n */\n open: (openOptions: OpenOptions) => {\n const modeUrlMap: Record<Mode, string> = {\n onboarding: `${\n envToBaseUrlMapExperience[initOptions.environment]\n }?token=${initOptions.token}`,\n offboarding: `${\n envToBaseUrlMapExperience[initOptions.environment]\n }?token=${initOptions.token}`,\n split: `${envToBaseUrlMapExperience[initOptions.environment]}?token=${\n initOptions.token\n }`,\n repay: `${envToBaseUrlMapExperience[initOptions.environment]}?token=${\n initOptions.token\n }`,\n };\n\n const modeUrl = openOptions.mode ? \n modeUrlMap[openOptions.mode] : \n `${envToBaseUrlMapExperience[initOptions.environment]}?token=${initOptions.token}`;\n\n const w = 450;\n const h = 800;\n const l = screen.width / 2 - w / 2;\n const t = screen.height / 2 - h / 2;\n _popup = window.open(\n modeUrl,\n \"LvblePopup\",\n \"width=\" + w + \",height=\" + h + \",location=no,left=\" + l + \",top=\" + t\n ) as Window;\n\n const messageListener = (message: MessageEvent) => {\n if (\n message.origin != envToBaseUrlMapExperience[initOptions.environment]\n ) {\n console.debug(\n `Received message from unknown origin: ${message.origin}`\n );\n return;\n }\n const eventData = message.data;\n const iframes = document.querySelectorAll(\"lvble-widget\");\n\n message = JSON.parse(JSON.stringify(message));\n\n iframes.forEach((w) => {\n (\n w.shadowRoot?.querySelector(\"iframe\") as HTMLIFrameElement\n ).contentWindow?.postMessage(eventData, \"*\");\n });\n\n openOptions.onEvent(eventData.eventType, eventData.data);\n };\n \n if (!listenerAdded) {\n window.addEventListener(\"message\", messageListener);\n listenerAdded = true;\n }\n },\n };\n};\n\nexport type LvbleType = ReturnType<typeof lvble>;\n\nexport const Lvble = lvble;\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// startup\n// Load entry module and return exports\n// This entry module is referenced by other modules so it can't be inlined\nvar __webpack_exports__ = __webpack_require__(915);\n"],"names":["root","factory","exports","module","define","amd","self","Environment","envToBaseUrlMapWidget","Local","Dev","Sandbox","Production","envToBaseUrlMapExperience","EventType","FinishOnboarding","FinishOffboarding","FinishSplit","FinishRepay","LvbleWidget","HTMLElement","constructor","super","onboarding","offboarding","split","repay","this","attachShadow","mode","getAttribute","val","setAttribute","removeAttribute","environment","token","connectedCallback","iframeSrc","iframe","document","createElement","src","width","height","style","borderStyle","borderRadius","borderColor","_iframe","shadowRoot","appendChild","disconnectedCallback","innerHTML","_popup","customElements","get","Lvble","initOptions","listenerAdded","createWidget","createOptions","widget","window","addEventListener","message","origin","console","debug","data","onEvent","eventType","open","openOptions","modeUrlMap","modeUrl","l","screen","w","t","h","eventData","iframes","querySelectorAll","JSON","parse","stringify","forEach","querySelector","contentWindow","postMessage","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","__webpack_modules__","call"],"sourceRoot":""}
@@ -1 +1 @@
1
- {"version":3,"file":"lvble.d.ts","sourceRoot":"","sources":["../../src/lib/lvble.ts"],"names":[],"mappings":"AAAA,oBAAY,WAAW;IACrB,KAAK,UAAU;IACf,GAAG,gBAAgB;IACnB,OAAO,YAAY;IACnB,UAAU,eAAe;CAC1B;AAeD,MAAM,MAAM,IAAI,GAAG,YAAY,GAAG,aAAa,GAAG,OAAO,GAAG,OAAO,CAAC;AACpE,MAAM,MAAM,SAAS,GAAG;IACtB,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AACF,MAAM,MAAM,cAAc,GACtB,SAAS,GACT;IACE,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AACN,MAAM,MAAM,SAAS,GACjB,SAAS,GACT;IACE,IAAI,EAAE,SAAS,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AACN,MAAM,MAAM,SAAS,GACjB,SAAS,GACT;IACE,IAAI,EAAE,OAAO,CAAC;CACf,CAAC;AAEN,MAAM,MAAM,SAAS,GAAG,cAAc,GAAG,SAAS,GAAG,SAAS,CAAC;AAE/D,aAAK,SAAS;IACZ,gBAAgB,qBAAqB;IACrC,iBAAiB,sBAAsB;IACvC,WAAW,gBAAgB;IAC3B,WAAW,gBAAgB;CAC5B;AASD,MAAM,WAAW,WAAW;IAE1B,WAAW,EAAE,WAAW,CAAC;IAEzB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,WAAW;IAE1B,IAAI,CAAC,EAAE,IAAI,CAAC;IAEZ,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;CACjD;AAED,MAAM,WAAW,mBAAoB,SAAQ,WAAW;IACtD,IAAI,CAAC,EAAE,OAAO,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,CAAC;IAE7C,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;CACjD;AAED,cAAM,WAAY,SAAQ,WAAW;IACnC,YAAY;;;;;MAKV;IACF,OAAO,CAAC,EAAE,iBAAiB,CAAC;;IAO5B,IAAI,IAAI,IAAI,IAAI,CAEf;IAED,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,GAAG,SAAS,EAM7B;IAED,IAAI,WAAW,IAAI,WAAW,CAE7B;IAED,IAAI,WAAW,CAAC,GAAG,EAJA,WAIA,EAMlB;IAED,IAAI,KAAK,IAIM,MAAM,CAFpB;IAED,IAAI,KAAK,CAAC,GAAG,EAAE,MAAM,EAMpB;IAED,iBAAiB;IAiBjB,oBAAoB;CAGrB;AAcD,QAAA,MAAM,KAAK,gBAAiB,WAAW;IAEnC;;;;;OAKG;kCAE2B,mBAAmB;IA8BjD;;;;OAIG;wBACiB,WAAW;CAyDlC,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC;AAEjD,eAAO,MAAM,KAAK,gBAzGU,WAAW;IAEnC;;;;;OAKG;kCAE2B,mBAAmB;IA8BjD;;;;OAIG;wBACiB,WAAW;CA6DT,CAAC"}
1
+ {"version":3,"file":"lvble.d.ts","sourceRoot":"","sources":["../../src/lib/lvble.ts"],"names":[],"mappings":"AAAA,oBAAY,WAAW;IACrB,KAAK,UAAU;IACf,GAAG,gBAAgB;IACnB,OAAO,YAAY;IACnB,UAAU,eAAe;CAC1B;AAeD,MAAM,MAAM,IAAI,GAAG,YAAY,GAAG,aAAa,GAAG,OAAO,GAAG,OAAO,CAAC;AACpE,MAAM,MAAM,SAAS,GAAG;IACtB,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AACF,MAAM,MAAM,cAAc,GACtB,SAAS,GACT;IACE,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AACN,MAAM,MAAM,SAAS,GACjB,SAAS,GACT;IACE,IAAI,EAAE,SAAS,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AACN,MAAM,MAAM,SAAS,GACjB,SAAS,GACT;IACE,IAAI,EAAE,OAAO,CAAC;CACf,CAAC;AAEN,MAAM,MAAM,SAAS,GAAG,cAAc,GAAG,SAAS,GAAG,SAAS,CAAC;AAE/D,aAAK,SAAS;IACZ,gBAAgB,qBAAqB;IACrC,iBAAiB,sBAAsB;IACvC,WAAW,gBAAgB;IAC3B,WAAW,gBAAgB;CAC5B;AASD,MAAM,WAAW,WAAW;IAE1B,WAAW,EAAE,WAAW,CAAC;IAEzB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,WAAW;IAE1B,IAAI,CAAC,EAAE,IAAI,CAAC;IAEZ,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;CACjD;AAED,MAAM,WAAW,mBAAoB,SAAQ,WAAW;IACtD,IAAI,CAAC,EAAE,OAAO,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,CAAC;IAE7C,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;CACjD;AAED,cAAM,WAAY,SAAQ,WAAW;IACnC,YAAY;;;;;MAKV;IACF,OAAO,CAAC,EAAE,iBAAiB,CAAC;;IAO5B,IAAI,IAAI,IAAI,IAAI,CAEf;IAED,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,GAAG,SAAS,EAM7B;IAED,IAAI,WAAW,IAAI,WAAW,CAE7B;IAED,IAAI,WAAW,CAAC,GAAG,EAJA,WAIA,EAMlB;IAED,IAAI,KAAK,IAIM,MAAM,CAFpB;IAED,IAAI,KAAK,CAAC,GAAG,EAAE,MAAM,EAMpB;IAED,iBAAiB;IAiBjB,oBAAoB;CAGrB;AAcD,QAAA,MAAM,KAAK,gBAAiB,WAAW;IAKnC;;;;;OAKG;kCAE2B,mBAAmB;IAiCjD;;;;OAIG;wBACiB,WAAW;CA2DlC,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC;AAEjD,eAAO,MAAM,KAAK,gBAjHU,WAAW;IAKnC;;;;;OAKG;kCAE2B,mBAAmB;IAiCjD;;;;OAIG;wBACiB,WAAW;CA+DT,CAAC"}
package/dist/lib/lvble.js CHANGED
@@ -113,6 +113,7 @@ const modeWidgetMap = {
113
113
  };
114
114
  let _popup;
115
115
  const lvble = (initOptions) => {
116
+ let listenerAdded = false;
116
117
  return {
117
118
  /**
118
119
  * This function creates a widget that can be embedded in your website.
@@ -133,17 +134,18 @@ const lvble = (initOptions) => {
133
134
  widget.environment = initOptions.environment;
134
135
  widget.token = initOptions.token;
135
136
  widget.mode = createOptions.mode;
136
- function messageListener(message) {
137
+ const messageListener = (message) => {
137
138
  if (message.origin != envToBaseUrlMapWidget[initOptions.environment]) {
138
139
  console.debug(`Received message from unknown origin: ${message.origin}`);
139
140
  return;
140
141
  }
141
142
  const data = message.data;
142
143
  createOptions.onEvent(data.eventType, data.data);
144
+ };
145
+ if (!listenerAdded) {
146
+ window.addEventListener("message", messageListener);
147
+ listenerAdded = true;
143
148
  }
144
- ;
145
- window.removeEventListener("message", messageListener);
146
- window.addEventListener("message", messageListener);
147
149
  return widget;
148
150
  },
149
151
  /**
@@ -166,7 +168,7 @@ const lvble = (initOptions) => {
166
168
  const l = screen.width / 2 - w / 2;
167
169
  const t = screen.height / 2 - h / 2;
168
170
  _popup = window.open(modeUrl, "LvblePopup", "width=" + w + ",height=" + h + ",location=no,left=" + l + ",top=" + t);
169
- function messageListener(message) {
171
+ const messageListener = (message) => {
170
172
  if (message.origin != envToBaseUrlMapExperience[initOptions.environment]) {
171
173
  console.debug(`Received message from unknown origin: ${message.origin}`);
172
174
  return;
@@ -179,10 +181,11 @@ const lvble = (initOptions) => {
179
181
  (_b = ((_a = w.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector("iframe")).contentWindow) === null || _b === void 0 ? void 0 : _b.postMessage(eventData, "*");
180
182
  });
181
183
  openOptions.onEvent(eventData.eventType, eventData.data);
184
+ };
185
+ if (!listenerAdded) {
186
+ window.addEventListener("message", messageListener);
187
+ listenerAdded = true;
182
188
  }
183
- ;
184
- window.removeEventListener("message", messageListener);
185
- window.addEventListener("message", messageListener);
186
189
  },
187
190
  };
188
191
  };
@@ -1 +1 @@
1
- {"version":3,"file":"lvble.js","sourceRoot":"","sources":["../../src/lib/lvble.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lvble.js","sourceRoot":"","sources":["../../src/lib/lvble.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"lvble.d.ts","sourceRoot":"","sources":["../../src/lib/lvble.ts"],"names":[],"mappings":"AAAA,oBAAY,WAAW;IACrB,KAAK,UAAU;IACf,GAAG,gBAAgB;IACnB,OAAO,YAAY;IACnB,UAAU,eAAe;CAC1B;AAeD,MAAM,MAAM,IAAI,GAAG,YAAY,GAAG,aAAa,GAAG,OAAO,GAAG,OAAO,CAAC;AACpE,MAAM,MAAM,SAAS,GAAG;IACtB,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AACF,MAAM,MAAM,cAAc,GACtB,SAAS,GACT;IACE,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AACN,MAAM,MAAM,SAAS,GACjB,SAAS,GACT;IACE,IAAI,EAAE,SAAS,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AACN,MAAM,MAAM,SAAS,GACjB,SAAS,GACT;IACE,IAAI,EAAE,OAAO,CAAC;CACf,CAAC;AAEN,MAAM,MAAM,SAAS,GAAG,cAAc,GAAG,SAAS,GAAG,SAAS,CAAC;AAE/D,aAAK,SAAS;IACZ,gBAAgB,qBAAqB;IACrC,iBAAiB,sBAAsB;IACvC,WAAW,gBAAgB;IAC3B,WAAW,gBAAgB;CAC5B;AASD,MAAM,WAAW,WAAW;IAE1B,WAAW,EAAE,WAAW,CAAC;IAEzB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,WAAW;IAE1B,IAAI,CAAC,EAAE,IAAI,CAAC;IAEZ,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;CACjD;AAED,MAAM,WAAW,mBAAoB,SAAQ,WAAW;IACtD,IAAI,CAAC,EAAE,OAAO,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,CAAC;IAE7C,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;CACjD;AAED,cAAM,WAAY,SAAQ,WAAW;IACnC,YAAY;;;;;MAKV;IACF,OAAO,CAAC,EAAE,iBAAiB,CAAC;;IAO5B,IAAI,IAAI,IAAI,IAAI,CAEf;IAED,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,GAAG,SAAS,EAM7B;IAED,IAAI,WAAW,IAAI,WAAW,CAE7B;IAED,IAAI,WAAW,CAAC,GAAG,EAJA,WAIA,EAMlB;IAED,IAAI,KAAK,IAIM,MAAM,CAFpB;IAED,IAAI,KAAK,CAAC,GAAG,EAAE,MAAM,EAMpB;IAED,iBAAiB;IAiBjB,oBAAoB;CAGrB;AAcD,QAAA,MAAM,KAAK,gBAAiB,WAAW;IAEnC;;;;;OAKG;kCAE2B,mBAAmB;IA8BjD;;;;OAIG;wBACiB,WAAW;CAyDlC,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC;AAEjD,eAAO,MAAM,KAAK,gBAzGU,WAAW;IAEnC;;;;;OAKG;kCAE2B,mBAAmB;IA8BjD;;;;OAIG;wBACiB,WAAW;CA6DT,CAAC"}
1
+ {"version":3,"file":"lvble.d.ts","sourceRoot":"","sources":["../../src/lib/lvble.ts"],"names":[],"mappings":"AAAA,oBAAY,WAAW;IACrB,KAAK,UAAU;IACf,GAAG,gBAAgB;IACnB,OAAO,YAAY;IACnB,UAAU,eAAe;CAC1B;AAeD,MAAM,MAAM,IAAI,GAAG,YAAY,GAAG,aAAa,GAAG,OAAO,GAAG,OAAO,CAAC;AACpE,MAAM,MAAM,SAAS,GAAG;IACtB,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AACF,MAAM,MAAM,cAAc,GACtB,SAAS,GACT;IACE,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AACN,MAAM,MAAM,SAAS,GACjB,SAAS,GACT;IACE,IAAI,EAAE,SAAS,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AACN,MAAM,MAAM,SAAS,GACjB,SAAS,GACT;IACE,IAAI,EAAE,OAAO,CAAC;CACf,CAAC;AAEN,MAAM,MAAM,SAAS,GAAG,cAAc,GAAG,SAAS,GAAG,SAAS,CAAC;AAE/D,aAAK,SAAS;IACZ,gBAAgB,qBAAqB;IACrC,iBAAiB,sBAAsB;IACvC,WAAW,gBAAgB;IAC3B,WAAW,gBAAgB;CAC5B;AASD,MAAM,WAAW,WAAW;IAE1B,WAAW,EAAE,WAAW,CAAC;IAEzB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,WAAW;IAE1B,IAAI,CAAC,EAAE,IAAI,CAAC;IAEZ,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;CACjD;AAED,MAAM,WAAW,mBAAoB,SAAQ,WAAW;IACtD,IAAI,CAAC,EAAE,OAAO,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,CAAC;IAE7C,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;CACjD;AAED,cAAM,WAAY,SAAQ,WAAW;IACnC,YAAY;;;;;MAKV;IACF,OAAO,CAAC,EAAE,iBAAiB,CAAC;;IAO5B,IAAI,IAAI,IAAI,IAAI,CAEf;IAED,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,GAAG,SAAS,EAM7B;IAED,IAAI,WAAW,IAAI,WAAW,CAE7B;IAED,IAAI,WAAW,CAAC,GAAG,EAJA,WAIA,EAMlB;IAED,IAAI,KAAK,IAIM,MAAM,CAFpB;IAED,IAAI,KAAK,CAAC,GAAG,EAAE,MAAM,EAMpB;IAED,iBAAiB;IAiBjB,oBAAoB;CAGrB;AAcD,QAAA,MAAM,KAAK,gBAAiB,WAAW;IAKnC;;;;;OAKG;kCAE2B,mBAAmB;IAiCjD;;;;OAIG;wBACiB,WAAW;CA2DlC,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC;AAEjD,eAAO,MAAM,KAAK,gBAjHU,WAAW;IAKnC;;;;;OAKG;kCAE2B,mBAAmB;IAiCjD;;;;OAIG;wBACiB,WAAW;CA+DT,CAAC"}
@@ -110,6 +110,7 @@ const modeWidgetMap = {
110
110
  };
111
111
  let _popup;
112
112
  const lvble = (initOptions) => {
113
+ let listenerAdded = false;
113
114
  return {
114
115
  /**
115
116
  * This function creates a widget that can be embedded in your website.
@@ -130,17 +131,18 @@ const lvble = (initOptions) => {
130
131
  widget.environment = initOptions.environment;
131
132
  widget.token = initOptions.token;
132
133
  widget.mode = createOptions.mode;
133
- function messageListener(message) {
134
+ const messageListener = (message) => {
134
135
  if (message.origin != envToBaseUrlMapWidget[initOptions.environment]) {
135
136
  console.debug(`Received message from unknown origin: ${message.origin}`);
136
137
  return;
137
138
  }
138
139
  const data = message.data;
139
140
  createOptions.onEvent(data.eventType, data.data);
141
+ };
142
+ if (!listenerAdded) {
143
+ window.addEventListener("message", messageListener);
144
+ listenerAdded = true;
140
145
  }
141
- ;
142
- window.removeEventListener("message", messageListener);
143
- window.addEventListener("message", messageListener);
144
146
  return widget;
145
147
  },
146
148
  /**
@@ -163,7 +165,7 @@ const lvble = (initOptions) => {
163
165
  const l = screen.width / 2 - w / 2;
164
166
  const t = screen.height / 2 - h / 2;
165
167
  _popup = window.open(modeUrl, "LvblePopup", "width=" + w + ",height=" + h + ",location=no,left=" + l + ",top=" + t);
166
- function messageListener(message) {
168
+ const messageListener = (message) => {
167
169
  if (message.origin != envToBaseUrlMapExperience[initOptions.environment]) {
168
170
  console.debug(`Received message from unknown origin: ${message.origin}`);
169
171
  return;
@@ -176,10 +178,11 @@ const lvble = (initOptions) => {
176
178
  (_b = ((_a = w.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector("iframe")).contentWindow) === null || _b === void 0 ? void 0 : _b.postMessage(eventData, "*");
177
179
  });
178
180
  openOptions.onEvent(eventData.eventType, eventData.data);
181
+ };
182
+ if (!listenerAdded) {
183
+ window.addEventListener("message", messageListener);
184
+ listenerAdded = true;
179
185
  }
180
- ;
181
- window.removeEventListener("message", messageListener);
182
- window.addEventListener("message", messageListener);
183
186
  },
184
187
  };
185
188
  };
@@ -1 +1 @@
1
- {"version":3,"file":"lvble.js","sourceRoot":"","sources":["../../src/lib/lvble.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lvble.js","sourceRoot":"","sources":["../../src/lib/lvble.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@lvble/core",
3
3
  "private": false,
4
- "version": "2.0.23",
4
+ "version": "2.0.25",
5
5
  "main": "./dist/_bundles/index.js",
6
6
  "module": "./dist/lib-esm/index.js",
7
7
  "types": "./dist/lib/index.d.ts",