@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.
@@ -4,7 +4,6 @@ export declare enum Environment {
4
4
  Sandbox = "sandbox",
5
5
  Production = "production"
6
6
  }
7
- export type Mode = "onboarding" | "offboarding" | "split" | "repay";
8
7
  export interface ModalOptions {
9
8
  height: string;
10
9
  }
@@ -12,10 +11,7 @@ export interface InitOptions {
12
11
  environment: Environment;
13
12
  onEvent: (eventType: string, data: any) => void;
14
13
  modal?: ModalOptions;
15
- }
16
- export interface OpenOptions {
17
- mode?: Mode;
18
- token: string;
14
+ customApiUrl?: string | null;
19
15
  }
20
16
  export interface WidgetOptions {
21
17
  token: string;
@@ -27,35 +23,21 @@ declare class LvbleWidget extends HTMLElement {
27
23
  set environment(val: Environment);
28
24
  get token(): string;
29
25
  set token(val: string);
26
+ get customApiUrlParam(): string;
27
+ set customApiUrlParam(value: string);
30
28
  connectedCallback(): void;
31
29
  disconnectedCallback(): void;
32
30
  }
33
31
  declare const lvble: (initOptions: InitOptions) => {
34
- /**
35
- * This function creates a widget that can be embedded in your website.
36
- *
37
- * @returns A lvble widget. Note that it detects mode automagically.
38
- */
39
- createWidget: (widgetOptions: WidgetOptions) => LvbleWidget;
40
- /**
41
- * This function opens a modal with the relevant mode.
42
- * @param openOptions The options for opening the modal. See `OpenOptions` for more information.
43
- */
44
- open: (openOptions: OpenOptions) => void;
32
+ isModalBuilt: boolean;
33
+ createWidget: ({ token }: WidgetOptions) => LvbleWidget;
34
+ open: (token: string) => void;
45
35
  };
46
36
  export type LvbleType = ReturnType<typeof lvble>;
47
37
  export declare const Lvble: (initOptions: InitOptions) => {
48
- /**
49
- * This function creates a widget that can be embedded in your website.
50
- *
51
- * @returns A lvble widget. Note that it detects mode automagically.
52
- */
53
- createWidget: (widgetOptions: WidgetOptions) => LvbleWidget;
54
- /**
55
- * This function opens a modal with the relevant mode.
56
- * @param openOptions The options for opening the modal. See `OpenOptions` for more information.
57
- */
58
- open: (openOptions: OpenOptions) => void;
38
+ isModalBuilt: boolean;
39
+ createWidget: ({ token }: WidgetOptions) => LvbleWidget;
40
+ open: (token: string) => void;
59
41
  };
60
42
  export {};
61
43
  //# sourceMappingURL=lvble.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"lvble.d.ts","sourceRoot":"","sources":["../../src/lib/lvble.ts"],"names":[],"mappings":"AAEA,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;AAEpE,MAAM,WAAW,YAAY;IAE3B,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,WAAW;IAE1B,WAAW,EAAE,WAAW,CAAC;IAEzB,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IAEhD,KAAK,CAAC,EAAE,YAAY,CAAC;CACtB;AAED,MAAM,WAAW,WAAW;IAE1B,IAAI,CAAC,EAAE,IAAI,CAAC;IAEZ,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,aAAa;IAE5B,KAAK,EAAE,MAAM,CAAC;CACf;AAED,cAAM,WAAY,SAAQ,WAAW;IACnC,OAAO,CAAC,EAAE,iBAAiB,CAAC;;IAQ5B,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;IAkBjB,oBAAoB;CAGrB;AA6CD,QAAA,MAAM,KAAK,gBAAiB,WAAW;IAsBnC;;;;OAIG;kCAC2B,aAAa;IAsC3C;;;OAGG;wBACiB,WAAW;CA6ElC,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC;AAEjD,eAAO,MAAM,KAAK,gBAtJU,WAAW;IAsBnC;;;;OAIG;kCAC2B,aAAa;IAsC3C;;;OAGG;wBACiB,WAAW;CAiFT,CAAC"}
1
+ {"version":3,"file":"lvble.d.ts","sourceRoot":"","sources":["../../src/lib/lvble.ts"],"names":[],"mappings":"AAEA,oBAAY,WAAW;IACrB,KAAK,UAAU;IACf,GAAG,gBAAgB;IACnB,OAAO,YAAY;IACnB,UAAU,eAAe;CAC1B;AAkBD,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,WAAW,CAAC;IACzB,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IAChD,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;CACf;AAID,cAAM,WAAY,SAAQ,WAAW;IACnC,OAAO,CAAC,EAAE,iBAAiB,CAAC;;IAQ5B,IAAI,WAAW,IAAI,WAAW,CAE7B;IAED,IAAI,WAAW,CAAC,GAAG,EAAE,WAAW,EAI/B;IAED,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,IAAI,KAAK,CAAC,GAAG,EAAE,MAAM,EAEpB;IAED,IAAI,iBAAiB,IAAI,MAAM,CAE9B;IAED,IAAI,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAMlC;IAED,iBAAiB;IAgBjB,oBAAoB;CAGrB;AAuHD,QAAA,MAAM,KAAK,gBAAiB,WAAW;;8BAuBT,aAAa;kBASzB,MAAM;CAKvB,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC;AACjD,eAAO,MAAM,KAAK,gBAxCU,WAAW;;8BAuBT,aAAa;kBASzB,MAAM;CAQE,CAAC"}
package/dist/lib/lvble.js CHANGED
@@ -9,18 +9,21 @@ var Environment;
9
9
  Environment["Sandbox"] = "sandbox";
10
10
  Environment["Production"] = "production";
11
11
  })(Environment || (exports.Environment = Environment = {}));
12
- const envToBaseUrlMapWidget = {
13
- [Environment.Local]: "http://localhost:3001",
14
- [Environment.Dev]: "https://v2.widget.pms.development.nowlvble.com",
15
- [Environment.Sandbox]: "https://v2.widget.pms.sandbox.nowlvble.com",
16
- [Environment.Production]: "https://v2.widget.pms.production.nowlvble.com",
17
- };
18
- const envToBaseUrlMapExperience = {
19
- [Environment.Local]: "http://localhost:3001",
20
- [Environment.Dev]: "https://v2.experience.pms.development.nowlvble.com",
21
- [Environment.Sandbox]: "https://v2.experience.pms.sandbox.nowlvble.com",
22
- [Environment.Production]: "https://v2.experience.pms.production.nowlvble.com",
12
+ const envToBaseUrlMap = {
13
+ widget: {
14
+ [Environment.Local]: "http://localhost:3001",
15
+ [Environment.Dev]: "https://v2.widget.pms.development.nowlvble.com",
16
+ [Environment.Sandbox]: "https://v2.widget.pms.sandbox.nowlvble.com",
17
+ [Environment.Production]: "https://v2.widget.pms.production.nowlvble.com",
18
+ },
19
+ experience: {
20
+ [Environment.Local]: "http://localhost:3001",
21
+ [Environment.Dev]: "https://v2.experience.pms.development.nowlvble.com",
22
+ [Environment.Sandbox]: "https://v2.experience.pms.sandbox.nowlvble.com",
23
+ [Environment.Production]: "https://v2.experience.pms.production.nowlvble.com",
24
+ },
23
25
  };
26
+ const MIXPANEL_TOKEN = "9ad1530a57a977ab9d4005e2ba11ab4a";
24
27
  class LvbleWidget extends HTMLElement {
25
28
  constructor() {
26
29
  super();
@@ -37,35 +40,38 @@ class LvbleWidget extends HTMLElement {
37
40
  return this.getAttribute("environment");
38
41
  }
39
42
  set environment(val) {
40
- if (val) {
41
- this.setAttribute("environment", val);
42
- }
43
- else {
44
- this.removeAttribute("environment");
45
- }
43
+ val
44
+ ? this.setAttribute("environment", val)
45
+ : this.removeAttribute("environment");
46
46
  }
47
47
  get token() {
48
- return this.getAttribute("token");
48
+ return this.getAttribute("token") || "";
49
49
  }
50
50
  set token(val) {
51
- if (val) {
52
- this.setAttribute("token", val);
51
+ val ? this.setAttribute("token", val) : this.removeAttribute("token");
52
+ }
53
+ get customApiUrlParam() {
54
+ return this.getAttribute("custom-api-url-param") || "";
55
+ }
56
+ set customApiUrlParam(value) {
57
+ if (value && this.environment === Environment.Dev) {
58
+ this.setAttribute("custom-api-url-param", value);
53
59
  }
54
60
  else {
55
- this.removeAttribute("token");
61
+ this.removeAttribute("custom-api-url-param");
56
62
  }
57
63
  }
58
64
  connectedCallback() {
59
65
  var _a;
60
- const iframeSrc = `${envToBaseUrlMapWidget[this.environment]}?token=${this.token}&environment=${this.environment}`;
61
66
  const iframe = document.createElement("iframe");
62
- iframe.src = iframeSrc;
63
- iframe.width = `100%`;
64
- iframe.height = `100%`;
65
- iframe.style.borderStyle = "solid";
66
- iframe.style.borderRadius = "10px";
67
- iframe.style.borderColor = "transparent";
68
- iframe.style.minHeight = "inherit";
67
+ iframe.src = `${envToBaseUrlMap.widget[this.environment]}?token=${this.token}&environment=${this.environment}${this.customApiUrlParam}`;
68
+ iframe.style.cssText = `
69
+ width: 100%;
70
+ height: 100%;
71
+ border: solid transparent;
72
+ border-radius: 10px;
73
+ min-height: inherit;
74
+ `;
69
75
  this._iframe = iframe;
70
76
  (_a = this.shadowRoot) === null || _a === void 0 ? void 0 : _a.appendChild(iframe);
71
77
  }
@@ -75,143 +81,108 @@ class LvbleWidget extends HTMLElement {
75
81
  }
76
82
  }
77
83
  customElements.define("lvble-widget", LvbleWidget);
78
- let lvbleInitialized = false;
79
- let eventListenerLvbleAdded = false;
80
- let eventListenerOpenAdded = false;
81
- let modalBackground = undefined;
82
- let modalIframe = undefined;
83
- const createModal = ({ modal }) => {
84
- var _a;
85
- const modalIframe = document.createElement("iframe");
86
- const t = `calc(50dvh)`;
87
- const l = `50vw`;
88
- modalIframe.style.position = "absolute";
89
- modalIframe.style.top = t;
90
- modalIframe.style.left = l;
91
- modalIframe.style.transform = `translate(-50%, -50%)`;
92
- modalIframe.style.width = `min(95dvw, 360px)`;
93
- modalIframe.style.height = `clamp(
94
- min(75dvh, 750px),
95
- ${(_a = modal === null || modal === void 0 ? void 0 : modal.height) !== null && _a !== void 0 ? _a : "95dvh"},
96
- min(95dvh, 750px)
97
- )`;
98
- modalIframe.style.backgroundColor = "white";
99
- modalIframe.style.borderRadius = "10px";
100
- modalIframe.style.borderStyle = "solid";
101
- modalIframe.style.borderColor = "transparent";
102
- modalIframe.style.borderWidth = "1px";
103
- const modalBackground = document.createElement("div");
104
- modalBackground.style.position = "fixed";
105
- modalBackground.style.top = "0";
106
- modalBackground.style.left = "0";
107
- modalBackground.style.height = "100%";
108
- modalBackground.style.width = "100%";
109
- modalBackground.style.zIndex = "2147483647";
110
- modalBackground.style.backgroundColor = "rgba(0, 0, 0, 0.5)";
111
- modalBackground.appendChild(modalIframe);
112
- return { modalBackground, modalIframe };
84
+ const createModalElements = ({ modal }) => {
85
+ const iframe = document.createElement("iframe");
86
+ iframe.style.cssText = `
87
+ position: absolute;
88
+ top: calc(50dvh);
89
+ left: 50vw;
90
+ transform: translate(-50%, -50%);
91
+ width: min(95dvw, 360px);
92
+ height: clamp(min(75dvh, 750px), ${(modal === null || modal === void 0 ? void 0 : modal.height) || "95dvh"}, min(95dvh, 750px));
93
+ background-color: white;
94
+ border: solid transparent 1px;
95
+ border-radius: 10px;
96
+ `;
97
+ const background = document.createElement("div");
98
+ background.style.cssText = `
99
+ position: fixed;
100
+ top: 0;
101
+ left: 0;
102
+ width: 100%;
103
+ height: 100%;
104
+ background-color: rgba(0, 0, 0, 0.5);
105
+ z-index: 2147483647;
106
+ `;
107
+ background.hidden = true;
108
+ background.appendChild(iframe);
109
+ return { background, iframe };
110
+ };
111
+ const createWidget = (initOptions, modalElements, eventListenersAdded, customApiUrlParam, token) => {
112
+ const widget = new LvbleWidget();
113
+ widget.environment = initOptions.environment;
114
+ widget.token = token;
115
+ widget.customApiUrlParam = customApiUrlParam;
116
+ modalElements.iframe.src = `${envToBaseUrlMap.experience[initOptions.environment]}?token=${token}${customApiUrlParam}`;
117
+ document.body.appendChild(modalElements.background);
118
+ const handleWidgetMessage = (message) => {
119
+ if (message.origin !== envToBaseUrlMap.widget[initOptions.environment])
120
+ return;
121
+ const { eventType, data } = message.data;
122
+ if (!eventType)
123
+ return;
124
+ if (eventType === "OPEN_EXPERIENCE_REQUEST") {
125
+ openExperience(initOptions, modalElements, customApiUrlParam, token);
126
+ }
127
+ };
128
+ if (!eventListenersAdded.lvble) {
129
+ window.addEventListener("message", handleWidgetMessage);
130
+ eventListenersAdded.lvble = true;
131
+ mixpanel_browser_1.default.init(MIXPANEL_TOKEN, { debug: false });
132
+ }
133
+ return widget;
134
+ };
135
+ const openExperience = (initOptions, modalElements, customApiUrlParam, token) => {
136
+ if (!modalElements.iframe.src) {
137
+ modalElements.iframe.src = `${envToBaseUrlMap.experience[initOptions.environment]}?token=${token}${customApiUrlParam}`;
138
+ document.body.appendChild(modalElements.background);
139
+ }
140
+ modalElements.background.hidden = false;
141
+ const handleModalMessage = (message) => {
142
+ if (message.origin !== envToBaseUrlMap.experience[initOptions.environment])
143
+ return;
144
+ const { eventType, data } = message.data;
145
+ if (!eventType)
146
+ return;
147
+ if (eventType === "CLOSE_EXPERIENCE_REQUEST") {
148
+ modalElements.background.hidden = true;
149
+ initOptions.onEvent("EXPERIENCE_CLOSED", {});
150
+ return;
151
+ }
152
+ document.querySelectorAll("lvble-widget").forEach((widget) => {
153
+ var _a, _b;
154
+ const iframe = (_a = widget.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector("iframe");
155
+ (_b = iframe.contentWindow) === null || _b === void 0 ? void 0 : _b.postMessage(message.data, "*");
156
+ });
157
+ mixpanel_browser_1.default.track("BEFORE_INVOKE_ON_EVENT", message.data);
158
+ initOptions.onEvent(eventType, data);
159
+ mixpanel_browser_1.default.track("AFTER_INVOKE_ON_EVENT", message.data);
160
+ };
161
+ if (!modalElements.background.hidden) {
162
+ window.addEventListener("message", handleModalMessage);
163
+ }
113
164
  };
114
165
  const lvble = (initOptions) => {
115
- /**
116
- * Note: you can only register for onEvent once.
117
- */
118
- if (!initOptions.onEvent) {
166
+ if (!initOptions.onEvent)
119
167
  throw new Error("onEvent callback is required");
120
- }
121
- if (!initOptions.environment) {
168
+ if (!initOptions.environment)
122
169
  throw new Error("environment is required");
123
- }
170
+ let lvbleInitialized = false;
171
+ let eventListenersAdded = { lvble: false, open: false };
172
+ let modalElements = {};
124
173
  if (!lvbleInitialized) {
125
- const result = createModal({
126
- modal: initOptions.modal,
127
- });
128
- modalBackground = result.modalBackground;
129
- modalIframe = result.modalIframe;
174
+ modalElements = createModalElements({ modal: initOptions.modal });
130
175
  lvbleInitialized = true;
131
176
  }
132
- const l = {
133
- /**
134
- * This function creates a widget that can be embedded in your website.
135
- *
136
- * @returns A lvble widget. Note that it detects mode automagically.
137
- */
138
- createWidget: (widgetOptions) => {
139
- const widget = new LvbleWidget();
140
- widget.environment = initOptions.environment;
141
- widget.token = widgetOptions.token;
142
- const messageListener = (message) => {
143
- // Verify we got a valid message from the iframe.
144
- if (message.origin != envToBaseUrlMapWidget[initOptions.environment]) {
145
- console.debug(`Received message from unknown origin: ${message.origin}`);
146
- return;
147
- }
148
- const eventData = message.data;
149
- if (!eventData.eventType) {
150
- console.debug(`Received message without eventType: ${JSON.stringify(eventData)}`);
151
- return;
152
- }
153
- if (eventData.eventType === "OPEN_EXPERIENCE_REQUEST") {
154
- modalIframe.src = `${envToBaseUrlMapExperience[initOptions.environment]}?token=${widgetOptions.token}`;
155
- l.open({ token: widgetOptions.token });
156
- }
157
- };
158
- if (!eventListenerLvbleAdded) {
159
- window.addEventListener("message", messageListener);
160
- eventListenerLvbleAdded = true;
161
- mixpanel_browser_1.default.init("9ad1530a57a977ab9d4005e2ba11ab4a", { debug: true });
162
- }
163
- return widget;
164
- },
165
- /**
166
- * This function opens a modal with the relevant mode.
167
- * @param openOptions The options for opening the modal. See `OpenOptions` for more information.
168
- */
169
- open: (openOptions) => {
170
- const modeUrlMap = {
171
- onboarding: `${envToBaseUrlMapExperience[initOptions.environment]}?token=${openOptions.token}`,
172
- offboarding: `${envToBaseUrlMapExperience[initOptions.environment]}?token=${openOptions.token}`,
173
- split: `${envToBaseUrlMapExperience[initOptions.environment]}?token=${openOptions.token}`,
174
- repay: `${envToBaseUrlMapExperience[initOptions.environment]}?token=${openOptions.token}`,
175
- };
176
- const modeUrl = openOptions.mode
177
- ? modeUrlMap[openOptions.mode]
178
- : `${envToBaseUrlMapExperience[initOptions.environment]}?token=${openOptions.token}`;
179
- modalIframe.src = modeUrl;
180
- document.body.appendChild(modalBackground);
181
- const messageListener = (message) => {
182
- // Verify we got a valid message from the iframe.
183
- if (message.origin != envToBaseUrlMapExperience[initOptions.environment]) {
184
- console.debug(`Received message from unknown origin: ${message.origin} Expecting only ${envToBaseUrlMapExperience[initOptions.environment]}`);
185
- return;
186
- }
187
- const eventData = message.data;
188
- if (!eventData.eventType) {
189
- console.debug(`Received message without eventType: ${JSON.stringify(eventData)}`);
190
- return;
191
- }
192
- if (eventData.eventType === "CLOSE_EXPERIENCE_REQUEST") {
193
- document.body.removeChild(modalBackground);
194
- initOptions.onEvent("EXPERIENCE_CLOSED", {});
195
- return;
196
- }
197
- // TODO: Consider using websocket in iframes instead of posting messages to them.
198
- const iframes = document.querySelectorAll("lvble-widget");
199
- iframes.forEach((w) => {
200
- var _a, _b;
201
- (_b = ((_a = w.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector("iframe")).contentWindow) === null || _b === void 0 ? void 0 : _b.postMessage(eventData, "*");
202
- });
203
- mixpanel_browser_1.default.track("BEFORE_INVOKE_ON_EVENT", eventData);
204
- initOptions.onEvent(eventData.eventType, eventData.data);
205
- mixpanel_browser_1.default.track("AFTER_INVOKE_ON_EVENT", eventData);
206
- };
207
- if (!eventListenerOpenAdded) {
208
- window.addEventListener("message", messageListener);
209
- eventListenerOpenAdded = true;
210
- mixpanel_browser_1.default.init("9ad1530a57a977ab9d4005e2ba11ab4a", { debug: true });
211
- }
212
- },
177
+ const customApiUrlParam = initOptions.customApiUrl
178
+ ? `&customApiUrl=${initOptions.customApiUrl}`
179
+ : "";
180
+ const lvbleInstance = {
181
+ isModalBuilt: false,
182
+ createWidget: ({ token }) => createWidget(initOptions, modalElements, eventListenersAdded, customApiUrlParam, token),
183
+ open: (token) => openExperience(initOptions, modalElements, customApiUrlParam, token),
213
184
  };
214
- return l;
185
+ return lvbleInstance;
215
186
  };
216
187
  exports.Lvble = lvble;
217
188
  //# 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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"}
@@ -4,7 +4,6 @@ export declare enum Environment {
4
4
  Sandbox = "sandbox",
5
5
  Production = "production"
6
6
  }
7
- export type Mode = "onboarding" | "offboarding" | "split" | "repay";
8
7
  export interface ModalOptions {
9
8
  height: string;
10
9
  }
@@ -12,10 +11,7 @@ export interface InitOptions {
12
11
  environment: Environment;
13
12
  onEvent: (eventType: string, data: any) => void;
14
13
  modal?: ModalOptions;
15
- }
16
- export interface OpenOptions {
17
- mode?: Mode;
18
- token: string;
14
+ customApiUrl?: string | null;
19
15
  }
20
16
  export interface WidgetOptions {
21
17
  token: string;
@@ -27,35 +23,21 @@ declare class LvbleWidget extends HTMLElement {
27
23
  set environment(val: Environment);
28
24
  get token(): string;
29
25
  set token(val: string);
26
+ get customApiUrlParam(): string;
27
+ set customApiUrlParam(value: string);
30
28
  connectedCallback(): void;
31
29
  disconnectedCallback(): void;
32
30
  }
33
31
  declare const lvble: (initOptions: InitOptions) => {
34
- /**
35
- * This function creates a widget that can be embedded in your website.
36
- *
37
- * @returns A lvble widget. Note that it detects mode automagically.
38
- */
39
- createWidget: (widgetOptions: WidgetOptions) => LvbleWidget;
40
- /**
41
- * This function opens a modal with the relevant mode.
42
- * @param openOptions The options for opening the modal. See `OpenOptions` for more information.
43
- */
44
- open: (openOptions: OpenOptions) => void;
32
+ isModalBuilt: boolean;
33
+ createWidget: ({ token }: WidgetOptions) => LvbleWidget;
34
+ open: (token: string) => void;
45
35
  };
46
36
  export type LvbleType = ReturnType<typeof lvble>;
47
37
  export declare const Lvble: (initOptions: InitOptions) => {
48
- /**
49
- * This function creates a widget that can be embedded in your website.
50
- *
51
- * @returns A lvble widget. Note that it detects mode automagically.
52
- */
53
- createWidget: (widgetOptions: WidgetOptions) => LvbleWidget;
54
- /**
55
- * This function opens a modal with the relevant mode.
56
- * @param openOptions The options for opening the modal. See `OpenOptions` for more information.
57
- */
58
- open: (openOptions: OpenOptions) => void;
38
+ isModalBuilt: boolean;
39
+ createWidget: ({ token }: WidgetOptions) => LvbleWidget;
40
+ open: (token: string) => void;
59
41
  };
60
42
  export {};
61
43
  //# sourceMappingURL=lvble.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"lvble.d.ts","sourceRoot":"","sources":["../../src/lib/lvble.ts"],"names":[],"mappings":"AAEA,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;AAEpE,MAAM,WAAW,YAAY;IAE3B,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,WAAW;IAE1B,WAAW,EAAE,WAAW,CAAC;IAEzB,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IAEhD,KAAK,CAAC,EAAE,YAAY,CAAC;CACtB;AAED,MAAM,WAAW,WAAW;IAE1B,IAAI,CAAC,EAAE,IAAI,CAAC;IAEZ,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,aAAa;IAE5B,KAAK,EAAE,MAAM,CAAC;CACf;AAED,cAAM,WAAY,SAAQ,WAAW;IACnC,OAAO,CAAC,EAAE,iBAAiB,CAAC;;IAQ5B,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;IAkBjB,oBAAoB;CAGrB;AA6CD,QAAA,MAAM,KAAK,gBAAiB,WAAW;IAsBnC;;;;OAIG;kCAC2B,aAAa;IAsC3C;;;OAGG;wBACiB,WAAW;CA6ElC,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC;AAEjD,eAAO,MAAM,KAAK,gBAtJU,WAAW;IAsBnC;;;;OAIG;kCAC2B,aAAa;IAsC3C;;;OAGG;wBACiB,WAAW;CAiFT,CAAC"}
1
+ {"version":3,"file":"lvble.d.ts","sourceRoot":"","sources":["../../src/lib/lvble.ts"],"names":[],"mappings":"AAEA,oBAAY,WAAW;IACrB,KAAK,UAAU;IACf,GAAG,gBAAgB;IACnB,OAAO,YAAY;IACnB,UAAU,eAAe;CAC1B;AAkBD,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,WAAW,CAAC;IACzB,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IAChD,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;CACf;AAID,cAAM,WAAY,SAAQ,WAAW;IACnC,OAAO,CAAC,EAAE,iBAAiB,CAAC;;IAQ5B,IAAI,WAAW,IAAI,WAAW,CAE7B;IAED,IAAI,WAAW,CAAC,GAAG,EAAE,WAAW,EAI/B;IAED,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,IAAI,KAAK,CAAC,GAAG,EAAE,MAAM,EAEpB;IAED,IAAI,iBAAiB,IAAI,MAAM,CAE9B;IAED,IAAI,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAMlC;IAED,iBAAiB;IAgBjB,oBAAoB;CAGrB;AAuHD,QAAA,MAAM,KAAK,gBAAiB,WAAW;;8BAuBT,aAAa;kBASzB,MAAM;CAKvB,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC;AACjD,eAAO,MAAM,KAAK,gBAxCU,WAAW;;8BAuBT,aAAa;kBASzB,MAAM;CAQE,CAAC"}