@lvble/core 2.0.59 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -6,18 +6,21 @@ export var Environment;
6
6
  Environment["Sandbox"] = "sandbox";
7
7
  Environment["Production"] = "production";
8
8
  })(Environment || (Environment = {}));
9
- const envToBaseUrlMapWidget = {
10
- [Environment.Local]: "http://localhost:3001",
11
- [Environment.Dev]: "https://v2.widget.pms.development.nowlvble.com",
12
- [Environment.Sandbox]: "https://v2.widget.pms.sandbox.nowlvble.com",
13
- [Environment.Production]: "https://v2.widget.pms.production.nowlvble.com",
14
- };
15
- const envToBaseUrlMapExperience = {
16
- [Environment.Local]: "http://localhost:3001",
17
- [Environment.Dev]: "https://v2.experience.pms.development.nowlvble.com",
18
- [Environment.Sandbox]: "https://v2.experience.pms.sandbox.nowlvble.com",
19
- [Environment.Production]: "https://v2.experience.pms.production.nowlvble.com",
9
+ const envToBaseUrlMap = {
10
+ widget: {
11
+ [Environment.Local]: "http://localhost:3001",
12
+ [Environment.Dev]: "https://v2.widget.pms.development.nowlvble.com",
13
+ [Environment.Sandbox]: "https://v2.widget.pms.sandbox.nowlvble.com",
14
+ [Environment.Production]: "https://v2.widget.pms.production.nowlvble.com",
15
+ },
16
+ experience: {
17
+ [Environment.Local]: "http://localhost:3001",
18
+ [Environment.Dev]: "https://v2.experience.pms.development.nowlvble.com",
19
+ [Environment.Sandbox]: "https://v2.experience.pms.sandbox.nowlvble.com",
20
+ [Environment.Production]: "https://v2.experience.pms.production.nowlvble.com",
21
+ },
20
22
  };
23
+ const MIXPANEL_TOKEN = "9ad1530a57a977ab9d4005e2ba11ab4a";
21
24
  class LvbleWidget extends HTMLElement {
22
25
  constructor() {
23
26
  super();
@@ -34,35 +37,38 @@ class LvbleWidget extends HTMLElement {
34
37
  return this.getAttribute("environment");
35
38
  }
36
39
  set environment(val) {
37
- if (val) {
38
- this.setAttribute("environment", val);
39
- }
40
- else {
41
- this.removeAttribute("environment");
42
- }
40
+ val
41
+ ? this.setAttribute("environment", val)
42
+ : this.removeAttribute("environment");
43
43
  }
44
44
  get token() {
45
- return this.getAttribute("token");
45
+ return this.getAttribute("token") || "";
46
46
  }
47
47
  set token(val) {
48
- if (val) {
49
- this.setAttribute("token", val);
48
+ val ? this.setAttribute("token", val) : this.removeAttribute("token");
49
+ }
50
+ get customApiUrlParam() {
51
+ return this.getAttribute("custom-api-url-param") || "";
52
+ }
53
+ set customApiUrlParam(value) {
54
+ if (value && this.environment === Environment.Dev) {
55
+ this.setAttribute("custom-api-url-param", value);
50
56
  }
51
57
  else {
52
- this.removeAttribute("token");
58
+ this.removeAttribute("custom-api-url-param");
53
59
  }
54
60
  }
55
61
  connectedCallback() {
56
62
  var _a;
57
- const iframeSrc = `${envToBaseUrlMapWidget[this.environment]}?token=${this.token}&environment=${this.environment}`;
58
63
  const iframe = document.createElement("iframe");
59
- iframe.src = iframeSrc;
60
- iframe.width = `100%`;
61
- iframe.height = `100%`;
62
- iframe.style.borderStyle = "solid";
63
- iframe.style.borderRadius = "10px";
64
- iframe.style.borderColor = "transparent";
65
- iframe.style.minHeight = "inherit";
64
+ iframe.src = `${envToBaseUrlMap.widget[this.environment]}?token=${this.token}&environment=${this.environment}${this.customApiUrlParam}`;
65
+ iframe.style.cssText = `
66
+ width: 100%;
67
+ height: 100%;
68
+ border: solid transparent;
69
+ border-radius: 10px;
70
+ min-height: inherit;
71
+ `;
66
72
  this._iframe = iframe;
67
73
  (_a = this.shadowRoot) === null || _a === void 0 ? void 0 : _a.appendChild(iframe);
68
74
  }
@@ -72,143 +78,108 @@ class LvbleWidget extends HTMLElement {
72
78
  }
73
79
  }
74
80
  customElements.define("lvble-widget", LvbleWidget);
75
- let lvbleInitialized = false;
76
- let eventListenerLvbleAdded = false;
77
- let eventListenerOpenAdded = false;
78
- let modalBackground = undefined;
79
- let modalIframe = undefined;
80
- const createModal = ({ modal }) => {
81
- var _a;
82
- const modalIframe = document.createElement("iframe");
83
- const t = `calc(50dvh)`;
84
- const l = `50vw`;
85
- modalIframe.style.position = "absolute";
86
- modalIframe.style.top = t;
87
- modalIframe.style.left = l;
88
- modalIframe.style.transform = `translate(-50%, -50%)`;
89
- modalIframe.style.width = `min(95dvw, 360px)`;
90
- modalIframe.style.height = `clamp(
91
- min(75dvh, 750px),
92
- ${(_a = modal === null || modal === void 0 ? void 0 : modal.height) !== null && _a !== void 0 ? _a : "95dvh"},
93
- min(95dvh, 750px)
94
- )`;
95
- modalIframe.style.backgroundColor = "white";
96
- modalIframe.style.borderRadius = "10px";
97
- modalIframe.style.borderStyle = "solid";
98
- modalIframe.style.borderColor = "transparent";
99
- modalIframe.style.borderWidth = "1px";
100
- const modalBackground = document.createElement("div");
101
- modalBackground.style.position = "fixed";
102
- modalBackground.style.top = "0";
103
- modalBackground.style.left = "0";
104
- modalBackground.style.height = "100%";
105
- modalBackground.style.width = "100%";
106
- modalBackground.style.zIndex = "2147483647";
107
- modalBackground.style.backgroundColor = "rgba(0, 0, 0, 0.5)";
108
- modalBackground.appendChild(modalIframe);
109
- return { modalBackground, modalIframe };
81
+ const createModalElements = ({ modal }) => {
82
+ const iframe = document.createElement("iframe");
83
+ iframe.style.cssText = `
84
+ position: absolute;
85
+ top: calc(50dvh);
86
+ left: 50vw;
87
+ transform: translate(-50%, -50%);
88
+ width: min(95dvw, 360px);
89
+ height: clamp(min(75dvh, 750px), ${(modal === null || modal === void 0 ? void 0 : modal.height) || "95dvh"}, min(95dvh, 750px));
90
+ background-color: white;
91
+ border: solid transparent 1px;
92
+ border-radius: 10px;
93
+ `;
94
+ const background = document.createElement("div");
95
+ background.style.cssText = `
96
+ position: fixed;
97
+ top: 0;
98
+ left: 0;
99
+ width: 100%;
100
+ height: 100%;
101
+ background-color: rgba(0, 0, 0, 0.5);
102
+ z-index: 2147483647;
103
+ `;
104
+ background.hidden = true;
105
+ background.appendChild(iframe);
106
+ return { background, iframe };
107
+ };
108
+ const createWidget = (initOptions, modalElements, eventListenersAdded, customApiUrlParam, token) => {
109
+ const widget = new LvbleWidget();
110
+ widget.environment = initOptions.environment;
111
+ widget.token = token;
112
+ widget.customApiUrlParam = customApiUrlParam;
113
+ modalElements.iframe.src = `${envToBaseUrlMap.experience[initOptions.environment]}?token=${token}${customApiUrlParam}`;
114
+ document.body.appendChild(modalElements.background);
115
+ const handleWidgetMessage = (message) => {
116
+ if (message.origin !== envToBaseUrlMap.widget[initOptions.environment])
117
+ return;
118
+ const { eventType, data } = message.data;
119
+ if (!eventType)
120
+ return;
121
+ if (eventType === "OPEN_EXPERIENCE_REQUEST") {
122
+ openExperience(initOptions, modalElements, customApiUrlParam, token);
123
+ }
124
+ };
125
+ if (!eventListenersAdded.lvble) {
126
+ window.addEventListener("message", handleWidgetMessage);
127
+ eventListenersAdded.lvble = true;
128
+ mixpanel.init(MIXPANEL_TOKEN, { debug: false });
129
+ }
130
+ return widget;
131
+ };
132
+ const openExperience = (initOptions, modalElements, customApiUrlParam, token) => {
133
+ if (!modalElements.iframe.src) {
134
+ modalElements.iframe.src = `${envToBaseUrlMap.experience[initOptions.environment]}?token=${token}${customApiUrlParam}`;
135
+ document.body.appendChild(modalElements.background);
136
+ }
137
+ modalElements.background.hidden = false;
138
+ const handleModalMessage = (message) => {
139
+ if (message.origin !== envToBaseUrlMap.experience[initOptions.environment])
140
+ return;
141
+ const { eventType, data } = message.data;
142
+ if (!eventType)
143
+ return;
144
+ if (eventType === "CLOSE_EXPERIENCE_REQUEST") {
145
+ modalElements.background.hidden = true;
146
+ initOptions.onEvent("EXPERIENCE_CLOSED", {});
147
+ return;
148
+ }
149
+ document.querySelectorAll("lvble-widget").forEach((widget) => {
150
+ var _a, _b;
151
+ const iframe = (_a = widget.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector("iframe");
152
+ (_b = iframe.contentWindow) === null || _b === void 0 ? void 0 : _b.postMessage(message.data, "*");
153
+ });
154
+ mixpanel.track("BEFORE_INVOKE_ON_EVENT", message.data);
155
+ initOptions.onEvent(eventType, data);
156
+ mixpanel.track("AFTER_INVOKE_ON_EVENT", message.data);
157
+ };
158
+ if (!modalElements.background.hidden) {
159
+ window.addEventListener("message", handleModalMessage);
160
+ }
110
161
  };
111
162
  const lvble = (initOptions) => {
112
- /**
113
- * Note: you can only register for onEvent once.
114
- */
115
- if (!initOptions.onEvent) {
163
+ if (!initOptions.onEvent)
116
164
  throw new Error("onEvent callback is required");
117
- }
118
- if (!initOptions.environment) {
165
+ if (!initOptions.environment)
119
166
  throw new Error("environment is required");
120
- }
167
+ let lvbleInitialized = false;
168
+ let eventListenersAdded = { lvble: false, open: false };
169
+ let modalElements = {};
121
170
  if (!lvbleInitialized) {
122
- const result = createModal({
123
- modal: initOptions.modal,
124
- });
125
- modalBackground = result.modalBackground;
126
- modalIframe = result.modalIframe;
171
+ modalElements = createModalElements({ modal: initOptions.modal });
127
172
  lvbleInitialized = true;
128
173
  }
129
- const l = {
130
- /**
131
- * This function creates a widget that can be embedded in your website.
132
- *
133
- * @returns A lvble widget. Note that it detects mode automagically.
134
- */
135
- createWidget: (widgetOptions) => {
136
- const widget = new LvbleWidget();
137
- widget.environment = initOptions.environment;
138
- widget.token = widgetOptions.token;
139
- const messageListener = (message) => {
140
- // Verify we got a valid message from the iframe.
141
- if (message.origin != envToBaseUrlMapWidget[initOptions.environment]) {
142
- console.debug(`Received message from unknown origin: ${message.origin}`);
143
- return;
144
- }
145
- const eventData = message.data;
146
- if (!eventData.eventType) {
147
- console.debug(`Received message without eventType: ${JSON.stringify(eventData)}`);
148
- return;
149
- }
150
- if (eventData.eventType === "OPEN_EXPERIENCE_REQUEST") {
151
- modalIframe.src = `${envToBaseUrlMapExperience[initOptions.environment]}?token=${widgetOptions.token}`;
152
- l.open({ token: widgetOptions.token });
153
- }
154
- };
155
- if (!eventListenerLvbleAdded) {
156
- window.addEventListener("message", messageListener);
157
- eventListenerLvbleAdded = true;
158
- mixpanel.init("9ad1530a57a977ab9d4005e2ba11ab4a", { debug: true });
159
- }
160
- return widget;
161
- },
162
- /**
163
- * This function opens a modal with the relevant mode.
164
- * @param openOptions The options for opening the modal. See `OpenOptions` for more information.
165
- */
166
- open: (openOptions) => {
167
- const modeUrlMap = {
168
- onboarding: `${envToBaseUrlMapExperience[initOptions.environment]}?token=${openOptions.token}`,
169
- offboarding: `${envToBaseUrlMapExperience[initOptions.environment]}?token=${openOptions.token}`,
170
- split: `${envToBaseUrlMapExperience[initOptions.environment]}?token=${openOptions.token}`,
171
- repay: `${envToBaseUrlMapExperience[initOptions.environment]}?token=${openOptions.token}`,
172
- };
173
- const modeUrl = openOptions.mode
174
- ? modeUrlMap[openOptions.mode]
175
- : `${envToBaseUrlMapExperience[initOptions.environment]}?token=${openOptions.token}`;
176
- modalIframe.src = modeUrl;
177
- document.body.appendChild(modalBackground);
178
- const messageListener = (message) => {
179
- // Verify we got a valid message from the iframe.
180
- if (message.origin != envToBaseUrlMapExperience[initOptions.environment]) {
181
- console.debug(`Received message from unknown origin: ${message.origin} Expecting only ${envToBaseUrlMapExperience[initOptions.environment]}`);
182
- return;
183
- }
184
- const eventData = message.data;
185
- if (!eventData.eventType) {
186
- console.debug(`Received message without eventType: ${JSON.stringify(eventData)}`);
187
- return;
188
- }
189
- if (eventData.eventType === "CLOSE_EXPERIENCE_REQUEST") {
190
- document.body.removeChild(modalBackground);
191
- initOptions.onEvent("EXPERIENCE_CLOSED", {});
192
- return;
193
- }
194
- // TODO: Consider using websocket in iframes instead of posting messages to them.
195
- const iframes = document.querySelectorAll("lvble-widget");
196
- iframes.forEach((w) => {
197
- var _a, _b;
198
- (_b = ((_a = w.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector("iframe")).contentWindow) === null || _b === void 0 ? void 0 : _b.postMessage(eventData, "*");
199
- });
200
- mixpanel.track("BEFORE_INVOKE_ON_EVENT", eventData);
201
- initOptions.onEvent(eventData.eventType, eventData.data);
202
- mixpanel.track("AFTER_INVOKE_ON_EVENT", eventData);
203
- };
204
- if (!eventListenerOpenAdded) {
205
- window.addEventListener("message", messageListener);
206
- eventListenerOpenAdded = true;
207
- mixpanel.init("9ad1530a57a977ab9d4005e2ba11ab4a", { debug: true });
208
- }
209
- },
174
+ const customApiUrlParam = initOptions.customApiUrl
175
+ ? `&customApiUrl=${initOptions.customApiUrl}`
176
+ : "";
177
+ const lvbleInstance = {
178
+ isModalBuilt: false,
179
+ createWidget: ({ token }) => createWidget(initOptions, modalElements, eventListenersAdded, customApiUrlParam, token),
180
+ open: (token) => openExperience(initOptions, modalElements, customApiUrlParam, token),
210
181
  };
211
- return l;
182
+ return lvbleInstance;
212
183
  };
213
184
  export const Lvble = lvble;
214
185
  //# sourceMappingURL=lvble.js.map
@@ -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,8 @@
1
1
  {
2
2
  "name": "@lvble/core",
3
3
  "private": false,
4
- "version": "2.0.59",
4
+ "license": "MIT",
5
+ "version": "3.0.0",
5
6
  "main": "./dist/_bundles/index.js",
6
7
  "module": "./dist/lib-esm/index.js",
7
8
  "types": "./dist/lib/index.d.ts",