@kalamba/sdk 0.30.0 → 0.37.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.
package/dist/wrapper.js CHANGED
@@ -1,2906 +1,742 @@
1
1
  /**
2
2
  * BSD 3-Clause License
3
- * Copyright (c) 2025, Kalamba Games Limited
3
+ * Copyright (c) 2026, Kalamba Games Limited
4
4
  */
5
- var Ou = Object.defineProperty;
6
- var Dt = (a) => {
7
- throw TypeError(a);
5
+ import { n as RgsErrorAction } from "./errors-CakYyMwc.js";
6
+ import { flow, merge, sortBy, sortedUniq } from "lodash-es";
7
+ import { v4 } from "uuid";
8
+
9
+ //#region src/common/PayloadInjectionManager.ts
10
+ /**
11
+ * PayloadInjectionManager manages payload injection from multiple sources.
12
+ * Each source can register either static payload data or async functions that will be merged together when creating the final payload for injection.
13
+ */
14
+ var PayloadInjectionManager = class {
15
+ #injectors = /* @__PURE__ */ new Map();
16
+ /**
17
+ * Register or update payload injector from a specific source
18
+ * @param source - Unique identifier for the payload source (e.g., 'bspot', 'freeRounds')
19
+ * @param payload - Payload data or async function that receives playPayload and returns payload data
20
+ */
21
+ register(source, payloadProvider) {
22
+ this.#injectors.set(source, payloadProvider);
23
+ }
24
+ /**
25
+ * Remove payload injector from a specific source
26
+ * @param source - Source identifier to remove
27
+ */
28
+ unregister(source) {
29
+ this.#injectors.delete(source);
30
+ }
31
+ /**
32
+ * Get merged payload from all registered injectors
33
+ * @param playPayload - The play payload that will be passed to registered functions
34
+ * @returns Promise resolving to merged payload object or undefined if no injectors registered
35
+ */
36
+ async getPayload(playPayload) {
37
+ if (this.#injectors.size === 0) return;
38
+ const merged = {};
39
+ for (const payloadProvider of this.#injectors.values()) merge(merged, typeof payloadProvider === "function" ? await payloadProvider(playPayload) : payloadProvider);
40
+ return merged;
41
+ }
8
42
  };
9
- var Lu = (a, e, r) => e in a ? Ou(a, e, { enumerable: !0, configurable: !0, writable: !0, value: r }) : a[e] = r;
10
- var xt = (a, e, r) => Lu(a, typeof e != "symbol" ? e + "" : e, r), jt = (a, e, r) => e.has(a) || Dt("Cannot " + r);
11
- var O = (a, e, r) => (jt(a, e, "read from private field"), r ? r.call(a) : e.get(a)), G = (a, e, r) => e.has(a) ? Dt("Cannot add the same private member more than once") : e instanceof WeakSet ? e.add(a) : e.set(a, r), D = (a, e, r, n) => (jt(a, e, "write to private field"), n ? n.call(a, r) : e.set(a, r), r);
12
- import { b as fe } from "./errors-NnLrKjTz.js";
13
- import { c as Y, r as Iu, g as ee, v as Mu } from "./v4-85TkMtXc.js";
14
- const Bt = () => {
15
- }, Eu = () => {
43
+
44
+ //#endregion
45
+ //#region src/wrapper/KalambaSdkWrapper.ts
46
+ const logIn = () => {};
47
+ const logOut = () => {};
48
+ var KalambaSdkWrapper = class {
49
+ #messagePort;
50
+ #plugins;
51
+ #config = {
52
+ gameName: "UNKNOWN",
53
+ gameVersion: "unknown",
54
+ showErrors: true,
55
+ showFreeRounds: true,
56
+ showPromoPanel: false,
57
+ showRealityCheck: true,
58
+ showBars: true,
59
+ skipErrors: []
60
+ };
61
+ #state = {
62
+ isSdkConfigured: false,
63
+ balance: 0,
64
+ bet: {
65
+ base: 0,
66
+ multiplier: 0
67
+ },
68
+ openGameResponse: void 0,
69
+ lastPlayResponse: void 0,
70
+ freeRoundId: void 0
71
+ };
72
+ #sdkConfigManager;
73
+ #payloadInjectionManager;
74
+ #wakeLock;
75
+ constructor({ messagePort, plugins, sdkConfigManager }) {
76
+ this.#messagePort = messagePort;
77
+ this.#sdkConfigManager = new sdkConfigManager();
78
+ this.#payloadInjectionManager = new PayloadInjectionManager();
79
+ this.injectPayload = this.injectPayload.bind(this);
80
+ this.#plugins = {
81
+ rgs: new plugins.rgs(this.config, this.sdkConfig),
82
+ casino: plugins.casino.map((casinoPlugin) => new casinoPlugin(this.config, this.sdkConfig, this.state, this.injectPayload)),
83
+ telemetry: plugins.telemetry.map(({ plugin, trackers }) => new plugin(trackers.map((tracker) => new tracker(this.config, this.sdkConfig)), this.config, this.sdkConfig))
84
+ };
85
+ this.on("balance", ({ balance }) => {
86
+ this.setState((state) => ({
87
+ ...state,
88
+ balance
89
+ }));
90
+ });
91
+ this.on("bet", (bet) => {
92
+ this.setState((state) => ({
93
+ ...state,
94
+ bet
95
+ }));
96
+ });
97
+ this.on("sdk:playCycleStart", async () => {
98
+ await this.requestWakeLock();
99
+ if (this.state.freeRoundId) return;
100
+ this.setState((state) => ({
101
+ ...state,
102
+ balance: state.balance - state.bet.base * state.bet.multiplier
103
+ }));
104
+ });
105
+ this.on("sdk:play", async (payload) => {
106
+ const payloadToInject = await this.#payloadInjectionManager.getPayload(payload.contract);
107
+ this.send("play", {
108
+ ...payload,
109
+ payloadToInject
110
+ });
111
+ });
112
+ this.on("sdk:configure", (payload) => {
113
+ Object.assign(this.#config, payload);
114
+ });
115
+ this.on("freeRoundsPopup", () => {
116
+ const freeRound = (this.state.lastPlayResponse ?? this.state.openGameResponse)?.freeRounds[0];
117
+ if (freeRound && this.state.freeRoundId) this.send("freeRoundsInfo", freeRound);
118
+ });
119
+ this.on("rgs:openGameResponse", async (response) => {
120
+ this.setState((state) => ({
121
+ ...state,
122
+ openGameResponse: response.contract
123
+ }));
124
+ if (this.sdkConfig.api.integration !== "bspot") this.setState((state) => ({
125
+ ...state,
126
+ balance: response.contract.balance.coins
127
+ }));
128
+ this.on("playReady", () => {
129
+ this.handleFreeRounds(response.contract.freeRounds[0]);
130
+ });
131
+ this.sdkConfig.ui = await this.#sdkConfigManager.getConfig();
132
+ this.setState((state) => ({
133
+ ...state,
134
+ isSdkConfigured: true
135
+ }));
136
+ this.send("configured", this.sdkConfig);
137
+ });
138
+ this.on("rgs:openGameError", async (error) => {
139
+ if (error.type === "timeout" && !this.config.skipErrors.includes("TIMEOUT")) this.send("error", {
140
+ messageKey: `Error.TIMEOUT`,
141
+ messageCode: "TIMEOUT",
142
+ type: "RELOAD"
143
+ });
144
+ if (error.type === "error" && !this.config.skipErrors.includes(error.data.code)) this.send("error", {
145
+ messageKey: `RgsError.${error.data.code}`,
146
+ messageCode: error.data.code,
147
+ type: RgsErrorAction[error.data.code]
148
+ });
149
+ });
150
+ this.on("rgs:playResponse", async (response) => {
151
+ this.setState((state) => ({
152
+ ...state,
153
+ lastPlayResponse: response.contract
154
+ }));
155
+ });
156
+ this.on("playCycleEnd", () => {
157
+ this.releaseWakeLock();
158
+ if (this.sdkConfig.api.integration !== "bspot") this.setState((state) => ({
159
+ ...state,
160
+ balance: this.state.lastPlayResponse.balance.coins
161
+ }));
162
+ this.handleFreeRounds(this.state.lastPlayResponse.freeRounds[0]);
163
+ });
164
+ this.on("rgs:playError", async (error) => {
165
+ if (error.type === "timeout" && !this.config.skipErrors.includes("TIMEOUT")) this.send("error", {
166
+ messageKey: `Error.TIMEOUT`,
167
+ messageCode: "TIMEOUT",
168
+ type: "RELOAD"
169
+ });
170
+ if (error.type === "error" && !this.config.skipErrors.includes(error.data.code)) this.send("error", {
171
+ messageKey: `RgsError.${error.data.code}`,
172
+ messageCode: error.data.code,
173
+ type: RgsErrorAction[error.data.code]
174
+ });
175
+ });
176
+ this.on("rgs:freeRoundsResponse", async (response) => {
177
+ if (response.action === "ACCEPT") {
178
+ const freeRound = (this.state.lastPlayResponse ?? this.state.openGameResponse)?.freeRounds[0];
179
+ this.activateFreeRounds(freeRound);
180
+ }
181
+ });
182
+ this.on("rgs:freeRoundsError", async (error) => {
183
+ if (error.type === "timeout" && !this.config.skipErrors.includes("TIMEOUT")) this.send("error", {
184
+ messageKey: `Error.TIMEOUT`,
185
+ messageCode: "TIMEOUT",
186
+ type: "RELOAD"
187
+ });
188
+ if (error.type === "error" && !this.config.skipErrors.includes(error.data.code)) this.send("error", {
189
+ messageKey: `RgsError.${error.data.code}`,
190
+ messageCode: error.data.code,
191
+ type: RgsErrorAction[error.data.code]
192
+ });
193
+ });
194
+ this.forwardMessages();
195
+ document.addEventListener("visibilitychange", async () => {
196
+ if (this.#wakeLock && document.visibilityState === "visible") await this.requestWakeLock();
197
+ });
198
+ }
199
+ get state() {
200
+ const that = this;
201
+ return new Proxy({}, { get(_target, prop) {
202
+ return Reflect.get(that.#state, prop);
203
+ } });
204
+ }
205
+ setState(setter) {
206
+ this.#state = setter(this.#state);
207
+ this.send("state", this.#state);
208
+ }
209
+ forwardMessages() {
210
+ this.forwardToPlugins("casino", [
211
+ "sdk:autoplay",
212
+ "sdk:bet",
213
+ "sdk:cashier",
214
+ "sdk:choice",
215
+ "sdk:close",
216
+ "sdk:error",
217
+ "sdk:history",
218
+ "sdk:loadEnd",
219
+ "sdk:loadProgress",
220
+ "sdk:loadStart",
221
+ "sdk:playReady",
222
+ "sdk:playCycleEnd",
223
+ "sdk:playCycleStart",
224
+ "sdk:playEnd",
225
+ "sdk:playStart",
226
+ "sdk:settings",
227
+ "sdk:openGame",
228
+ "sdk:configure",
229
+ "sdk:fullscreen"
230
+ ]);
231
+ this.forwardToPlugins("casino", ["rgs:playResponse", "rgs:openGameResponse"]);
232
+ this.forwardToPlugins("rgs", ["sdk:openGame", "sdk:history"]);
233
+ this.forwardToPlugins("rgs", [
234
+ "casino:play",
235
+ "casino:cashier",
236
+ "casino:close",
237
+ "casino:history",
238
+ "casino:getBalance"
239
+ ]);
240
+ this.forwardToPlugins("telemetry", [
241
+ "sdk:autoplay",
242
+ "sdk:error",
243
+ "sdk:playCycleStart",
244
+ "sdk:playCycleEnd",
245
+ "sdk:loadStart",
246
+ "sdk:loadProgress",
247
+ "sdk:loadEnd",
248
+ "sdk:telemetry.click",
249
+ "sdk:telemetry.orientationChange"
250
+ ]);
251
+ this.forwardToPlugins("telemetry", ["rgs:openGameResponse", "rgs:playResponse"]);
252
+ this.forwardToSdk([
253
+ "casino:balance",
254
+ "casino:bet",
255
+ "casino:choice",
256
+ "casino:freeze",
257
+ "casino:help",
258
+ "casino:paytable",
259
+ "casino:resume",
260
+ "casino:settings",
261
+ "casino:suspend",
262
+ "casino:unfreeze"
263
+ ]);
264
+ this.forwardToSdk([
265
+ "rgs:balance",
266
+ "rgs:openGameError",
267
+ "rgs:openGameResponse",
268
+ "rgs:playError",
269
+ "rgs:playResponse",
270
+ "rgs:realityCheck"
271
+ ]);
272
+ }
273
+ get config() {
274
+ const that = this;
275
+ return new Proxy({}, {
276
+ get(_target, prop) {
277
+ return Reflect.get(that.#config, prop);
278
+ },
279
+ set(_target, prop, value) {
280
+ return Reflect.set(that.#config, prop, value);
281
+ }
282
+ });
283
+ }
284
+ get sdkConfig() {
285
+ return this.#sdkConfigManager.config;
286
+ }
287
+ forwardToPlugins(targetDomain, messages) {
288
+ messages.forEach((message) => {
289
+ const onMessage = (event) => {
290
+ if (event.data.message !== `kalamba:${message}`) return;
291
+ logIn("wrapper:forwardToPlugins", targetDomain, event.data.message.replace(/^kalamba:/, ""), event.data.payload);
292
+ window.postMessage({
293
+ message: `kalamba:wrapper-${targetDomain}:${message.replace(/^(.+):/, "")}`,
294
+ payload: event.data.payload
295
+ });
296
+ };
297
+ window.addEventListener("message", onMessage);
298
+ });
299
+ }
300
+ forwardToSdk(messages) {
301
+ messages.forEach((message) => {
302
+ const onMessage = (event) => {
303
+ if (event.data.message !== `kalamba:${message}`) return;
304
+ logOut("wrapper:forwardToSdk", event.data.message.replace(/^kalamba:/, ""), event.data.payload);
305
+ this.#messagePort.postMessage({
306
+ message: `kalamba:wrapper:${message.replace(/^(.+):/, "")}`,
307
+ payload: event.data.payload
308
+ }, "*");
309
+ };
310
+ window.addEventListener("message", onMessage);
311
+ });
312
+ }
313
+ on(message, listener, options) {
314
+ const onMessage = function onMessage(event) {
315
+ if (!new RegExp(`^kalamba:${message.includes(":") ? "" : "(.+):"}${message}$`).test(event.data.message) || new RegExp(`^kalamba:wrapper-(.+):${message}`).test(event.data.message) || new RegExp(`^kalamba:(.+)-wrapper:${message}`).test(event.data.message)) return;
316
+ logIn("on", event.data.message.replace(/^kalamba:/, ""), event.data.payload);
317
+ listener(event.data.payload);
318
+ if (options?.once) window.removeEventListener("message", onMessage);
319
+ };
320
+ window.addEventListener("message", onMessage);
321
+ return () => window.removeEventListener("message", onMessage);
322
+ }
323
+ send(message, ...[payload]) {
324
+ logOut("wrapper:send", message, payload);
325
+ window.postMessage({
326
+ message: `kalamba:wrapper:${message}`,
327
+ payload
328
+ });
329
+ this.#messagePort.postMessage({
330
+ message: `kalamba:wrapper:${message}`,
331
+ payload
332
+ }, "*");
333
+ }
334
+ injectPayload(...[source, payload]) {
335
+ this.#payloadInjectionManager.register(source, payload);
336
+ return () => this.#payloadInjectionManager.unregister(source);
337
+ }
338
+ activateFreeRounds(freeRound) {
339
+ if (!freeRound) return;
340
+ this.setState((state) => ({
341
+ ...state,
342
+ freeRoundId: freeRound.id
343
+ }));
344
+ this.#payloadInjectionManager.register("freeRounds", { freeRoundId: freeRound.id });
345
+ this.send("legalBets", { [freeRound.conf.base]: [freeRound.conf.multiplier] });
346
+ this.send("bet", {
347
+ base: freeRound.conf.base,
348
+ multiplier: freeRound.conf.multiplier
349
+ });
350
+ }
351
+ handleFreeRounds(freeRound) {
352
+ if (!freeRound) return;
353
+ switch (freeRound.status) {
354
+ case "ACTIVE":
355
+ this.activateFreeRounds(freeRound);
356
+ break;
357
+ case "PENDING":
358
+ this.send("freeRoundsOffer", freeRound);
359
+ break;
360
+ case "FINISHED":
361
+ this.send("freeRoundsComplete", freeRound);
362
+ this.setState((state) => ({
363
+ ...state,
364
+ freeRoundId: void 0
365
+ }));
366
+ this.#payloadInjectionManager.unregister("freeRounds");
367
+ this.send("legalBets", this.state.openGameResponse.bet.available);
368
+ this.send("bet", this.state.openGameResponse.bet.default);
369
+ break;
370
+ default: break;
371
+ }
372
+ }
373
+ async requestWakeLock() {
374
+ try {
375
+ this.#wakeLock = await navigator.wakeLock.request("screen");
376
+ } catch {}
377
+ }
378
+ async releaseWakeLock() {
379
+ if (!this.#wakeLock) return;
380
+ await this.#wakeLock.release();
381
+ this.#wakeLock = void 0;
382
+ }
16
383
  };
17
- var N, Z, U, x, K, E;
18
- class Yf {
19
- constructor({
20
- messagePort: e,
21
- plugins: r,
22
- sdkConfigManager: n
23
- }) {
24
- G(this, N);
25
- G(this, Z);
26
- G(this, U, {
27
- dataDecoder: void 0,
28
- dataEncoder: void 0,
29
- gameName: "UNKNOWN",
30
- gameVersion: "unknown",
31
- showErrors: !0,
32
- showFreeRounds: !0,
33
- showPromoPanel: !1,
34
- showRealityCheck: !0,
35
- showBars: !0,
36
- skipErrors: []
37
- });
38
- G(this, x, {
39
- isSdkConfigured: !1,
40
- balance: 0,
41
- bet: {
42
- base: 0,
43
- multiplier: 0
44
- },
45
- openGameResponse: void 0,
46
- lastPlayResponse: void 0,
47
- freeRoundId: void 0
48
- });
49
- G(this, K);
50
- G(this, E);
51
- D(this, N, e), D(this, K, new n()), D(this, Z, {
52
- rgs: new r.rgs(this.config, this.sdkConfig),
53
- casino: r.casino.map((t) => new t(this.config, this.sdkConfig)),
54
- telemetry: r.telemetry.map(
55
- ({ plugin: t, trackers: i }) => new t(
56
- i.map((s) => new s(this.config, this.sdkConfig)),
57
- this.config,
58
- this.sdkConfig
59
- )
60
- )
61
- }), this.on("balance", ({ balance: t }) => {
62
- this.setState((i) => ({ ...i, balance: t }));
63
- }), this.on("bet", (t) => {
64
- this.setState((i) => ({ ...i, bet: t }));
65
- }), this.on("sdk:playCycleStart", async () => {
66
- await this.requestWakeLock(), !this.state.freeRoundId && this.setState((t) => ({ ...t, balance: t.balance - t.bet.base * t.bet.multiplier }));
67
- }), this.on("sdk:play", (t) => {
68
- this.send("play", { ...t, payloadToInject: { freeRoundId: this.state.freeRoundId } });
69
- }), this.on("sdk:configure", (t) => {
70
- Object.assign(O(this, U), t);
71
- }), this.on("freeRoundsPopup", () => {
72
- var i;
73
- const t = (i = this.state.lastPlayResponse ?? this.state.openGameResponse) == null ? void 0 : i.contract.freeRounds[0];
74
- t && this.state.freeRoundId && this.send("freeRoundsInfo", t);
75
- }), this.on("rgs:openGameResponse", async (t) => {
76
- this.setState((i) => ({
77
- ...i,
78
- openGameResponse: t,
79
- balance: t.contract.balance.coins
80
- })), this.on("playReady", () => {
81
- this.handleFreeRounds(t);
82
- }), this.sdkConfig.ui = await O(this, K).getConfig(), this.setState((i) => ({ ...i, isSdkConfigured: !0 })), this.send("configured", this.sdkConfig);
83
- }), this.on("rgs:openGameError", async (t) => {
84
- t.type === "timeout" && !this.config.skipErrors.includes("TIMEOUT") && this.send("error", {
85
- messageKey: "Error.TIMEOUT",
86
- messageCode: "TIMEOUT",
87
- type: "RELOAD"
88
- }), t.type === "error" && !this.config.skipErrors.includes(t.data.code) && this.send("error", {
89
- messageKey: `RgsError.${t.data.code}`,
90
- messageCode: t.data.code,
91
- type: fe[t.data.code]
92
- });
93
- }), this.on("rgs:playResponse", async (t) => {
94
- this.setState((i) => ({
95
- ...i,
96
- lastPlayResponse: t
97
- }));
98
- }), this.on("playCycleEnd", () => {
99
- this.releaseWakeLock(), this.setState((t) => ({ ...t, balance: this.state.lastPlayResponse.contract.balance.coins })), this.handleFreeRounds(this.state.lastPlayResponse);
100
- }), this.on("rgs:playError", async (t) => {
101
- t.type === "timeout" && !this.config.skipErrors.includes("TIMEOUT") && this.send("error", {
102
- messageKey: "Error.TIMEOUT",
103
- messageCode: "TIMEOUT",
104
- type: "RELOAD"
105
- }), t.type === "error" && !this.config.skipErrors.includes(t.data.code) && this.send("error", {
106
- messageKey: `RgsError.${t.data.code}`,
107
- messageCode: t.data.code,
108
- type: fe[t.data.code]
109
- });
110
- }), this.on("rgs:freeRoundsResponse", async (t) => {
111
- var i;
112
- if (t.action === "ACCEPT") {
113
- const s = (i = this.state.lastPlayResponse ?? this.state.openGameResponse) == null ? void 0 : i.contract.freeRounds.find(
114
- (u) => u.id === t.id
115
- );
116
- if (!s)
117
- return;
118
- this.setState((u) => ({
119
- ...u,
120
- freeRoundId: s.id
121
- })), this.send("legalBets", { [s.conf.base]: [s.conf.multiplier] }), this.send("bet", { base: s.conf.base, multiplier: s.conf.multiplier });
122
- }
123
- }), this.on("rgs:freeRoundsError", async (t) => {
124
- t.type === "timeout" && !this.config.skipErrors.includes("TIMEOUT") && this.send("error", {
125
- messageKey: "Error.TIMEOUT",
126
- messageCode: "TIMEOUT",
127
- type: "RELOAD"
128
- }), t.type === "error" && !this.config.skipErrors.includes(t.data.code) && this.send("error", {
129
- messageKey: `RgsError.${t.data.code}`,
130
- messageCode: t.data.code,
131
- type: fe[t.data.code]
132
- });
133
- }), this.forwardMessages(), document.addEventListener("visibilitychange", async () => {
134
- O(this, E) && document.visibilityState === "visible" && await this.requestWakeLock();
135
- });
136
- }
137
- get state() {
138
- const e = this;
139
- return new Proxy({}, {
140
- get(r, n) {
141
- return Reflect.get(O(e, x), n);
142
- }
143
- });
144
- }
145
- setState(e) {
146
- D(this, x, e(O(this, x))), this.send("state", O(this, x));
147
- }
148
- forwardMessages() {
149
- this.forwardToPlugins("casino", [
150
- "sdk:autoplay",
151
- "sdk:balance",
152
- "sdk:bet",
153
- "sdk:cashier",
154
- "sdk:choice",
155
- "sdk:close",
156
- "sdk:error",
157
- "sdk:history",
158
- "sdk:loadEnd",
159
- "sdk:loadProgress",
160
- "sdk:loadStart",
161
- "sdk:playReady",
162
- "sdk:playCycleEnd",
163
- "sdk:playCycleStart",
164
- "sdk:playEnd",
165
- "sdk:playStart",
166
- "sdk:settings",
167
- "sdk:openGame",
168
- "sdk:configure",
169
- "sdk:fullscreen"
170
- ]), this.forwardToPlugins("casino", ["rgs:playResponse", "rgs:openGameResponse"]), this.forwardToPlugins("rgs", ["sdk:openGame", "sdk:history"]), this.forwardToPlugins("rgs", [
171
- "casino:play",
172
- "casino:cashier",
173
- "casino:close",
174
- "casino:history",
175
- "casino:getBalance"
176
- ]), this.forwardToPlugins("telemetry", [
177
- "sdk:autoplay",
178
- "sdk:error",
179
- "sdk:playCycleStart",
180
- "sdk:playCycleEnd",
181
- "sdk:loadStart",
182
- "sdk:loadProgress",
183
- "sdk:loadEnd",
184
- "sdk:telemetry.click",
185
- "sdk:telemetry.orientationChange"
186
- ]), this.forwardToPlugins("telemetry", ["rgs:openGameResponse", "rgs:playResponse"]), this.forwardToSdk([
187
- "casino:balance",
188
- "casino:bet",
189
- "casino:choice",
190
- "casino:freeze",
191
- "casino:help",
192
- "casino:paytable",
193
- "casino:resume",
194
- "casino:settings",
195
- "casino:suspend",
196
- "casino:unfreeze"
197
- ]), this.forwardToSdk([
198
- "rgs:openGameError",
199
- "rgs:openGameResponse",
200
- "rgs:playError",
201
- "rgs:playResponse",
202
- "rgs:realityCheck"
203
- ]);
204
- }
205
- get config() {
206
- const e = this;
207
- return new Proxy({}, {
208
- get(r, n) {
209
- return Reflect.get(O(e, U), n);
210
- },
211
- set(r, n, t) {
212
- return Reflect.set(O(e, U), n, t);
213
- }
214
- });
215
- }
216
- get sdkConfig() {
217
- return O(this, K).config;
218
- }
219
- forwardToPlugins(e, r) {
220
- r.forEach((n) => {
221
- const t = (i) => {
222
- i.data.message === `kalamba:${n}` && (Bt("wrapper:forwardToPlugins", e, i.data.message.replace(/^kalamba:/, ""), i.data.payload), window.postMessage({
223
- message: `kalamba:wrapper-${e}:${n.replace(/^(.+):/, "")}`,
224
- payload: i.data.payload
225
- }));
226
- };
227
- window.addEventListener("message", t);
228
- });
229
- }
230
- forwardToSdk(e) {
231
- e.forEach((r) => {
232
- const n = (t) => {
233
- t.data.message === `kalamba:${r}` && (Eu("wrapper:forwardToSdk", t.data.message.replace(/^kalamba:/, ""), t.data.payload), O(this, N).postMessage(
234
- {
235
- message: `kalamba:wrapper:${r.replace(/^(.+):/, "")}`,
236
- payload: t.data.payload
237
- },
238
- "*"
239
- ));
240
- };
241
- window.addEventListener("message", n);
242
- });
243
- }
244
- // TODO error messages
245
- on(e, r, n) {
246
- const t = function i(s) {
247
- !new RegExp(`^kalamba:${e.includes(":") ? "" : "(.+):"}${e}$`).test(
248
- s.data.message
249
- ) || // Do not listen to messages forwarded by wrapper
250
- new RegExp(`^kalamba:wrapper-(.+):${e}`).test(s.data.message) || new RegExp(`^kalamba:(.+)-wrapper:${e}`).test(s.data.message) || (Bt("on", s.data.message.replace(/^kalamba:/, ""), s.data.payload), r(s.data.payload), n != null && n.once && window.removeEventListener("message", i));
251
- };
252
- window.addEventListener("message", t);
253
- }
254
- send(e, ...[r]) {
255
- window.postMessage({
256
- message: `kalamba:wrapper:${e}`,
257
- payload: r
258
- }), O(this, N).postMessage(
259
- {
260
- message: `kalamba:wrapper:${e}`,
261
- payload: r
262
- },
263
- "*"
264
- );
265
- }
266
- handleFreeRounds(e) {
267
- const r = e.contract.freeRounds[0];
268
- if (r)
269
- switch (r.status) {
270
- case "ACTIVE":
271
- this.setState((n) => ({
272
- ...n,
273
- freeRoundId: r.id
274
- })), this.send("legalBets", { [r.conf.base]: [r.conf.multiplier] }), this.send("bet", { base: r.conf.base, multiplier: r.conf.multiplier });
275
- break;
276
- case "PENDING":
277
- this.send("freeRoundsOffer", r);
278
- break;
279
- case "FINISHED":
280
- this.send("freeRoundsComplete", r), this.setState((n) => ({
281
- ...n,
282
- freeRoundId: void 0
283
- })), this.send("legalBets", this.state.openGameResponse.contract.bet.available), this.send("bet", this.state.openGameResponse.contract.bet.default);
284
- break;
285
- }
286
- }
287
- async requestWakeLock() {
288
- try {
289
- const e = await navigator.wakeLock.request("screen");
290
- D(this, E, e);
291
- } catch {
292
- }
293
- }
294
- async releaseWakeLock() {
295
- O(this, E) && (await O(this, E).release(), D(this, E, void 0));
296
- }
297
- }
298
- N = new WeakMap(), Z = new WeakMap(), U = new WeakMap(), x = new WeakMap(), K = new WeakMap(), E = new WeakMap();
299
- var ce, Nt;
300
- function k() {
301
- if (Nt) return ce;
302
- Nt = 1;
303
- function a(e) {
304
- var r = typeof e;
305
- return e != null && (r == "object" || r == "function");
306
- }
307
- return ce = a, ce;
308
- }
309
- var le, Ut;
310
- function mt() {
311
- if (Ut) return le;
312
- Ut = 1;
313
- var a = k(), e = Object.create, r = /* @__PURE__ */ function() {
314
- function n() {
315
- }
316
- return function(t) {
317
- if (!a(t))
318
- return {};
319
- if (e)
320
- return e(t);
321
- n.prototype = t;
322
- var i = new n();
323
- return n.prototype = void 0, i;
324
- };
325
- }();
326
- return le = r, le;
327
- }
328
- var he, Kt;
329
- function qt() {
330
- if (Kt) return he;
331
- Kt = 1;
332
- function a() {
333
- }
334
- return he = a, he;
335
- }
336
- var de, Ht;
337
- function wt() {
338
- if (Ht) return de;
339
- Ht = 1;
340
- var a = mt(), e = qt();
341
- function r(n, t) {
342
- this.__wrapped__ = n, this.__actions__ = [], this.__chain__ = !!t, this.__index__ = 0, this.__values__ = void 0;
343
- }
344
- return r.prototype = a(e.prototype), r.prototype.constructor = r, de = r, de;
345
- }
346
- var pe, Wt;
347
- function eu() {
348
- if (Wt) return pe;
349
- Wt = 1;
350
- function a(e, r) {
351
- for (var n = -1, t = r.length, i = e.length; ++n < t; )
352
- e[i + n] = r[n];
353
- return e;
354
- }
355
- return pe = a, pe;
356
- }
357
- var _e, zt;
358
- function ru() {
359
- if (zt) return _e;
360
- zt = 1;
361
- var a = typeof Y == "object" && Y && Y.Object === Object && Y;
362
- return _e = a, _e;
363
- }
364
- var ve, $t;
365
- function M() {
366
- if ($t) return ve;
367
- $t = 1;
368
- var a = ru(), e = typeof self == "object" && self && self.Object === Object && self, r = a || e || Function("return this")();
369
- return ve = r, ve;
370
- }
371
- var ye, Vt;
372
- function J() {
373
- if (Vt) return ye;
374
- Vt = 1;
375
- var a = M(), e = a.Symbol;
376
- return ye = e, ye;
377
- }
378
- var ge, Qt;
379
- function ku() {
380
- if (Qt) return ge;
381
- Qt = 1;
382
- var a = J(), e = Object.prototype, r = e.hasOwnProperty, n = e.toString, t = a ? a.toStringTag : void 0;
383
- function i(s) {
384
- var u = r.call(s, t), o = s[t];
385
- try {
386
- s[t] = void 0;
387
- var f = !0;
388
- } catch {
389
- }
390
- var l = n.call(s);
391
- return f && (u ? s[t] = o : delete s[t]), l;
392
- }
393
- return ge = i, ge;
394
- }
395
- var be, Jt;
396
- function Fu() {
397
- if (Jt) return be;
398
- Jt = 1;
399
- var a = Object.prototype, e = a.toString;
400
- function r(n) {
401
- return e.call(n);
402
- }
403
- return be = r, be;
404
- }
405
- var me, Xt;
406
- function H() {
407
- if (Xt) return me;
408
- Xt = 1;
409
- var a = J(), e = ku(), r = Fu(), n = "[object Null]", t = "[object Undefined]", i = a ? a.toStringTag : void 0;
410
- function s(u) {
411
- return u == null ? u === void 0 ? t : n : i && i in Object(u) ? e(u) : r(u);
412
- }
413
- return me = s, me;
414
- }
415
- var qe, Yt;
416
- function F() {
417
- if (Yt) return qe;
418
- Yt = 1;
419
- function a(e) {
420
- return e != null && typeof e == "object";
421
- }
422
- return qe = a, qe;
423
- }
424
- var we, Zt;
425
- function Gu() {
426
- if (Zt) return we;
427
- Zt = 1;
428
- var a = H(), e = F(), r = "[object Arguments]";
429
- function n(t) {
430
- return e(t) && a(t) == r;
431
- }
432
- return we = n, we;
433
- }
434
- var Re, en;
435
- function re() {
436
- if (en) return Re;
437
- en = 1;
438
- var a = Gu(), e = F(), r = Object.prototype, n = r.hasOwnProperty, t = r.propertyIsEnumerable, i = a(/* @__PURE__ */ function() {
439
- return arguments;
440
- }()) ? a : function(s) {
441
- return e(s) && n.call(s, "callee") && !t.call(s, "callee");
442
- };
443
- return Re = i, Re;
444
- }
445
- var Ce, rn;
446
- function I() {
447
- if (rn) return Ce;
448
- rn = 1;
449
- var a = Array.isArray;
450
- return Ce = a, Ce;
451
- }
452
- var Se, an;
453
- function Du() {
454
- if (an) return Se;
455
- an = 1;
456
- var a = J(), e = re(), r = I(), n = a ? a.isConcatSpreadable : void 0;
457
- function t(i) {
458
- return r(i) || e(i) || !!(n && i && i[n]);
459
- }
460
- return Se = t, Se;
461
- }
462
- var Te, tn;
463
- function au() {
464
- if (tn) return Te;
465
- tn = 1;
466
- var a = eu(), e = Du();
467
- function r(n, t, i, s, u) {
468
- var o = -1, f = n.length;
469
- for (i || (i = e), u || (u = []); ++o < f; ) {
470
- var l = n[o];
471
- t > 0 && i(l) ? t > 1 ? r(l, t - 1, i, s, u) : a(u, l) : s || (u[u.length] = l);
472
- }
473
- return u;
474
- }
475
- return Te = r, Te;
476
- }
477
- var Ae, nn;
478
- function xu() {
479
- if (nn) return Ae;
480
- nn = 1;
481
- var a = au();
482
- function e(r) {
483
- var n = r == null ? 0 : r.length;
484
- return n ? a(r, 1) : [];
485
- }
486
- return Ae = e, Ae;
487
- }
488
- var Pe, sn;
489
- function ju() {
490
- if (sn) return Pe;
491
- sn = 1;
492
- function a(e, r, n) {
493
- switch (n.length) {
494
- case 0:
495
- return e.call(r);
496
- case 1:
497
- return e.call(r, n[0]);
498
- case 2:
499
- return e.call(r, n[0], n[1]);
500
- case 3:
501
- return e.call(r, n[0], n[1], n[2]);
502
- }
503
- return e.apply(r, n);
504
- }
505
- return Pe = a, Pe;
506
- }
507
- var Oe, un;
508
- function tu() {
509
- if (un) return Oe;
510
- un = 1;
511
- var a = ju(), e = Math.max;
512
- function r(n, t, i) {
513
- return t = e(t === void 0 ? n.length - 1 : t, 0), function() {
514
- for (var s = arguments, u = -1, o = e(s.length - t, 0), f = Array(o); ++u < o; )
515
- f[u] = s[t + u];
516
- u = -1;
517
- for (var l = Array(t + 1); ++u < t; )
518
- l[u] = s[u];
519
- return l[t] = i(f), a(n, this, l);
520
- };
521
- }
522
- return Oe = r, Oe;
523
- }
524
- var Le, on;
525
- function Bu() {
526
- if (on) return Le;
527
- on = 1;
528
- function a(e) {
529
- return function() {
530
- return e;
531
- };
532
- }
533
- return Le = a, Le;
534
- }
535
- var Ie, fn;
536
- function Rt() {
537
- if (fn) return Ie;
538
- fn = 1;
539
- var a = H(), e = k(), r = "[object AsyncFunction]", n = "[object Function]", t = "[object GeneratorFunction]", i = "[object Proxy]";
540
- function s(u) {
541
- if (!e(u))
542
- return !1;
543
- var o = a(u);
544
- return o == n || o == t || o == r || o == i;
545
- }
546
- return Ie = s, Ie;
547
- }
548
- var Me, cn;
549
- function Nu() {
550
- if (cn) return Me;
551
- cn = 1;
552
- var a = M(), e = a["__core-js_shared__"];
553
- return Me = e, Me;
554
- }
555
- var Ee, ln;
556
- function Uu() {
557
- if (ln) return Ee;
558
- ln = 1;
559
- var a = Nu(), e = function() {
560
- var n = /[^.]+$/.exec(a && a.keys && a.keys.IE_PROTO || "");
561
- return n ? "Symbol(src)_1." + n : "";
562
- }();
563
- function r(n) {
564
- return !!e && e in n;
565
- }
566
- return Ee = r, Ee;
567
- }
568
- var ke, hn;
569
- function nu() {
570
- if (hn) return ke;
571
- hn = 1;
572
- var a = Function.prototype, e = a.toString;
573
- function r(n) {
574
- if (n != null) {
575
- try {
576
- return e.call(n);
577
- } catch {
578
- }
579
- try {
580
- return n + "";
581
- } catch {
582
- }
583
- }
584
- return "";
585
- }
586
- return ke = r, ke;
587
- }
588
- var Fe, dn;
589
- function Ku() {
590
- if (dn) return Fe;
591
- dn = 1;
592
- var a = Rt(), e = Uu(), r = k(), n = nu(), t = /[\\^$.*+?()[\]{}|]/g, i = /^\[object .+?Constructor\]$/, s = Function.prototype, u = Object.prototype, o = s.toString, f = u.hasOwnProperty, l = RegExp(
593
- "^" + o.call(f).replace(t, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$"
594
- );
595
- function c(h) {
596
- if (!r(h) || e(h))
597
- return !1;
598
- var _ = a(h) ? l : i;
599
- return _.test(n(h));
600
- }
601
- return Fe = c, Fe;
602
- }
603
- var Ge, pn;
604
- function Hu() {
605
- if (pn) return Ge;
606
- pn = 1;
607
- function a(e, r) {
608
- return e == null ? void 0 : e[r];
609
- }
610
- return Ge = a, Ge;
611
- }
612
- var De, _n;
613
- function j() {
614
- if (_n) return De;
615
- _n = 1;
616
- var a = Ku(), e = Hu();
617
- function r(n, t) {
618
- var i = e(n, t);
619
- return a(i) ? i : void 0;
620
- }
621
- return De = r, De;
622
- }
623
- var xe, vn;
624
- function iu() {
625
- if (vn) return xe;
626
- vn = 1;
627
- var a = j(), e = function() {
628
- try {
629
- var r = a(Object, "defineProperty");
630
- return r({}, "", {}), r;
631
- } catch {
632
- }
633
- }();
634
- return xe = e, xe;
635
- }
636
- var je, yn;
637
- function ae() {
638
- if (yn) return je;
639
- yn = 1;
640
- function a(e) {
641
- return e;
642
- }
643
- return je = a, je;
644
- }
645
- var Be, gn;
646
- function Wu() {
647
- if (gn) return Be;
648
- gn = 1;
649
- var a = Bu(), e = iu(), r = ae(), n = e ? function(t, i) {
650
- return e(t, "toString", {
651
- configurable: !0,
652
- enumerable: !1,
653
- value: a(i),
654
- writable: !0
655
- });
656
- } : r;
657
- return Be = n, Be;
658
- }
659
- var Ne, bn;
660
- function zu() {
661
- if (bn) return Ne;
662
- bn = 1;
663
- var a = 800, e = 16, r = Date.now;
664
- function n(t) {
665
- var i = 0, s = 0;
666
- return function() {
667
- var u = r(), o = e - (u - s);
668
- if (s = u, o > 0) {
669
- if (++i >= a)
670
- return arguments[0];
671
- } else
672
- i = 0;
673
- return t.apply(void 0, arguments);
674
- };
675
- }
676
- return Ne = n, Ne;
677
- }
678
- var Ue, mn;
679
- function su() {
680
- if (mn) return Ue;
681
- mn = 1;
682
- var a = Wu(), e = zu(), r = e(a);
683
- return Ue = r, Ue;
684
- }
685
- var Ke, qn;
686
- function $u() {
687
- if (qn) return Ke;
688
- qn = 1;
689
- var a = xu(), e = tu(), r = su();
690
- function n(t) {
691
- return r(e(t, void 0, a), t + "");
692
- }
693
- return Ke = n, Ke;
694
- }
695
- var He, wn;
696
- function uu() {
697
- if (wn) return He;
698
- wn = 1;
699
- var a = j(), e = M(), r = a(e, "WeakMap");
700
- return He = r, He;
701
- }
702
- var We, Rn;
703
- function Vu() {
704
- if (Rn) return We;
705
- Rn = 1;
706
- var a = uu(), e = a && new a();
707
- return We = e, We;
708
- }
709
- var ze, Cn;
710
- function ou() {
711
- if (Cn) return ze;
712
- Cn = 1;
713
- var a = Vu(), e = Iu(), r = a ? function(n) {
714
- return a.get(n);
715
- } : e;
716
- return ze = r, ze;
717
- }
718
- var $e, Sn;
719
- function Qu() {
720
- if (Sn) return $e;
721
- Sn = 1;
722
- var a = {};
723
- return $e = a, $e;
724
- }
725
- var Ve, Tn;
726
- function fu() {
727
- if (Tn) return Ve;
728
- Tn = 1;
729
- var a = Qu(), e = Object.prototype, r = e.hasOwnProperty;
730
- function n(t) {
731
- for (var i = t.name + "", s = a[i], u = r.call(a, i) ? s.length : 0; u--; ) {
732
- var o = s[u], f = o.func;
733
- if (f == null || f == t)
734
- return o.name;
735
- }
736
- return i;
737
- }
738
- return Ve = n, Ve;
739
- }
740
- var Qe, An;
741
- function Ct() {
742
- if (An) return Qe;
743
- An = 1;
744
- var a = mt(), e = qt(), r = 4294967295;
745
- function n(t) {
746
- this.__wrapped__ = t, this.__actions__ = [], this.__dir__ = 1, this.__filtered__ = !1, this.__iteratees__ = [], this.__takeCount__ = r, this.__views__ = [];
747
- }
748
- return n.prototype = a(e.prototype), n.prototype.constructor = n, Qe = n, Qe;
749
- }
750
- var Je, Pn;
751
- function cu() {
752
- if (Pn) return Je;
753
- Pn = 1;
754
- function a(e, r) {
755
- var n = -1, t = e.length;
756
- for (r || (r = Array(t)); ++n < t; )
757
- r[n] = e[n];
758
- return r;
759
- }
760
- return Je = a, Je;
761
- }
762
- var Xe, On;
763
- function Ju() {
764
- if (On) return Xe;
765
- On = 1;
766
- var a = Ct(), e = wt(), r = cu();
767
- function n(t) {
768
- if (t instanceof a)
769
- return t.clone();
770
- var i = new e(t.__wrapped__, t.__chain__);
771
- return i.__actions__ = r(t.__actions__), i.__index__ = t.__index__, i.__values__ = t.__values__, i;
772
- }
773
- return Xe = n, Xe;
774
- }
775
- var Ye, Ln;
776
- function Xu() {
777
- if (Ln) return Ye;
778
- Ln = 1;
779
- var a = Ct(), e = wt(), r = qt(), n = I(), t = F(), i = Ju(), s = Object.prototype, u = s.hasOwnProperty;
780
- function o(f) {
781
- if (t(f) && !n(f) && !(f instanceof a)) {
782
- if (f instanceof e)
783
- return f;
784
- if (u.call(f, "__wrapped__"))
785
- return i(f);
786
- }
787
- return new e(f);
788
- }
789
- return o.prototype = r.prototype, o.prototype.constructor = o, Ye = o, Ye;
790
- }
791
- var Ze, In;
792
- function Yu() {
793
- if (In) return Ze;
794
- In = 1;
795
- var a = Ct(), e = ou(), r = fu(), n = Xu();
796
- function t(i) {
797
- var s = r(i), u = n[s];
798
- if (typeof u != "function" || !(s in a.prototype))
799
- return !1;
800
- if (i === u)
801
- return !0;
802
- var o = e(u);
803
- return !!o && i === o[0];
804
- }
805
- return Ze = t, Ze;
806
- }
807
- var er, Mn;
808
- function Zu() {
809
- if (Mn) return er;
810
- Mn = 1;
811
- var a = wt(), e = $u(), r = ou(), n = fu(), t = I(), i = Yu(), s = "Expected a function", u = 8, o = 32, f = 128, l = 256;
812
- function c(h) {
813
- return e(function(_) {
814
- var w = _.length, p = w, g = a.prototype.thru;
815
- for (h && _.reverse(); p--; ) {
816
- var y = _[p];
817
- if (typeof y != "function")
818
- throw new TypeError(s);
819
- if (g && !d && n(y) == "wrapper")
820
- var d = new a([], !0);
821
- }
822
- for (p = d ? p : w; ++p < w; ) {
823
- y = _[p];
824
- var S = n(y), b = S == "wrapper" ? r(y) : void 0;
825
- b && i(b[0]) && b[1] == (f | u | o | l) && !b[4].length && b[9] == 1 ? d = d[n(b[0])].apply(d, b[3]) : d = y.length == 1 && i(y) ? d[S]() : d.thru(y);
826
- }
827
- return function() {
828
- var C = arguments, m = C[0];
829
- if (d && C.length == 1 && t(m))
830
- return d.plant(m).value();
831
- for (var v = 0, R = w ? _[v].apply(this, C) : m; ++v < w; )
832
- R = _[v].call(this, R);
833
- return R;
834
- };
835
- });
836
- }
837
- return er = c, er;
838
- }
839
- var rr, En;
840
- function eo() {
841
- if (En) return rr;
842
- En = 1;
843
- var a = Zu(), e = a();
844
- return rr = e, rr;
845
- }
846
- var ro = eo();
847
- const ao = /* @__PURE__ */ ee(ro);
848
- var ar, kn;
849
- function to() {
850
- if (kn) return ar;
851
- kn = 1;
852
- function a() {
853
- this.__data__ = [], this.size = 0;
854
- }
855
- return ar = a, ar;
856
- }
857
- var tr, Fn;
858
- function W() {
859
- if (Fn) return tr;
860
- Fn = 1;
861
- function a(e, r) {
862
- return e === r || e !== e && r !== r;
863
- }
864
- return tr = a, tr;
865
- }
866
- var nr, Gn;
867
- function te() {
868
- if (Gn) return nr;
869
- Gn = 1;
870
- var a = W();
871
- function e(r, n) {
872
- for (var t = r.length; t--; )
873
- if (a(r[t][0], n))
874
- return t;
875
- return -1;
876
- }
877
- return nr = e, nr;
878
- }
879
- var ir, Dn;
880
- function no() {
881
- if (Dn) return ir;
882
- Dn = 1;
883
- var a = te(), e = Array.prototype, r = e.splice;
884
- function n(t) {
885
- var i = this.__data__, s = a(i, t);
886
- if (s < 0)
887
- return !1;
888
- var u = i.length - 1;
889
- return s == u ? i.pop() : r.call(i, s, 1), --this.size, !0;
890
- }
891
- return ir = n, ir;
892
- }
893
- var sr, xn;
894
- function io() {
895
- if (xn) return sr;
896
- xn = 1;
897
- var a = te();
898
- function e(r) {
899
- var n = this.__data__, t = a(n, r);
900
- return t < 0 ? void 0 : n[t][1];
901
- }
902
- return sr = e, sr;
903
- }
904
- var ur, jn;
905
- function so() {
906
- if (jn) return ur;
907
- jn = 1;
908
- var a = te();
909
- function e(r) {
910
- return a(this.__data__, r) > -1;
911
- }
912
- return ur = e, ur;
913
- }
914
- var or, Bn;
915
- function uo() {
916
- if (Bn) return or;
917
- Bn = 1;
918
- var a = te();
919
- function e(r, n) {
920
- var t = this.__data__, i = a(t, r);
921
- return i < 0 ? (++this.size, t.push([r, n])) : t[i][1] = n, this;
922
- }
923
- return or = e, or;
924
- }
925
- var fr, Nn;
926
- function ne() {
927
- if (Nn) return fr;
928
- Nn = 1;
929
- var a = to(), e = no(), r = io(), n = so(), t = uo();
930
- function i(s) {
931
- var u = -1, o = s == null ? 0 : s.length;
932
- for (this.clear(); ++u < o; ) {
933
- var f = s[u];
934
- this.set(f[0], f[1]);
935
- }
936
- }
937
- return i.prototype.clear = a, i.prototype.delete = e, i.prototype.get = r, i.prototype.has = n, i.prototype.set = t, fr = i, fr;
938
- }
939
- var cr, Un;
940
- function oo() {
941
- if (Un) return cr;
942
- Un = 1;
943
- var a = ne();
944
- function e() {
945
- this.__data__ = new a(), this.size = 0;
946
- }
947
- return cr = e, cr;
948
- }
949
- var lr, Kn;
950
- function fo() {
951
- if (Kn) return lr;
952
- Kn = 1;
953
- function a(e) {
954
- var r = this.__data__, n = r.delete(e);
955
- return this.size = r.size, n;
956
- }
957
- return lr = a, lr;
958
- }
959
- var hr, Hn;
960
- function co() {
961
- if (Hn) return hr;
962
- Hn = 1;
963
- function a(e) {
964
- return this.__data__.get(e);
965
- }
966
- return hr = a, hr;
967
- }
968
- var dr, Wn;
969
- function lo() {
970
- if (Wn) return dr;
971
- Wn = 1;
972
- function a(e) {
973
- return this.__data__.has(e);
974
- }
975
- return dr = a, dr;
976
- }
977
- var pr, zn;
978
- function St() {
979
- if (zn) return pr;
980
- zn = 1;
981
- var a = j(), e = M(), r = a(e, "Map");
982
- return pr = r, pr;
983
- }
984
- var _r, $n;
985
- function ie() {
986
- if ($n) return _r;
987
- $n = 1;
988
- var a = j(), e = a(Object, "create");
989
- return _r = e, _r;
990
- }
991
- var vr, Vn;
992
- function ho() {
993
- if (Vn) return vr;
994
- Vn = 1;
995
- var a = ie();
996
- function e() {
997
- this.__data__ = a ? a(null) : {}, this.size = 0;
998
- }
999
- return vr = e, vr;
1000
- }
1001
- var yr, Qn;
1002
- function po() {
1003
- if (Qn) return yr;
1004
- Qn = 1;
1005
- function a(e) {
1006
- var r = this.has(e) && delete this.__data__[e];
1007
- return this.size -= r ? 1 : 0, r;
1008
- }
1009
- return yr = a, yr;
1010
- }
1011
- var gr, Jn;
1012
- function _o() {
1013
- if (Jn) return gr;
1014
- Jn = 1;
1015
- var a = ie(), e = "__lodash_hash_undefined__", r = Object.prototype, n = r.hasOwnProperty;
1016
- function t(i) {
1017
- var s = this.__data__;
1018
- if (a) {
1019
- var u = s[i];
1020
- return u === e ? void 0 : u;
1021
- }
1022
- return n.call(s, i) ? s[i] : void 0;
1023
- }
1024
- return gr = t, gr;
1025
- }
1026
- var br, Xn;
1027
- function vo() {
1028
- if (Xn) return br;
1029
- Xn = 1;
1030
- var a = ie(), e = Object.prototype, r = e.hasOwnProperty;
1031
- function n(t) {
1032
- var i = this.__data__;
1033
- return a ? i[t] !== void 0 : r.call(i, t);
1034
- }
1035
- return br = n, br;
1036
- }
1037
- var mr, Yn;
1038
- function yo() {
1039
- if (Yn) return mr;
1040
- Yn = 1;
1041
- var a = ie(), e = "__lodash_hash_undefined__";
1042
- function r(n, t) {
1043
- var i = this.__data__;
1044
- return this.size += this.has(n) ? 0 : 1, i[n] = a && t === void 0 ? e : t, this;
1045
- }
1046
- return mr = r, mr;
1047
- }
1048
- var qr, Zn;
1049
- function go() {
1050
- if (Zn) return qr;
1051
- Zn = 1;
1052
- var a = ho(), e = po(), r = _o(), n = vo(), t = yo();
1053
- function i(s) {
1054
- var u = -1, o = s == null ? 0 : s.length;
1055
- for (this.clear(); ++u < o; ) {
1056
- var f = s[u];
1057
- this.set(f[0], f[1]);
1058
- }
1059
- }
1060
- return i.prototype.clear = a, i.prototype.delete = e, i.prototype.get = r, i.prototype.has = n, i.prototype.set = t, qr = i, qr;
1061
- }
1062
- var wr, ei;
1063
- function bo() {
1064
- if (ei) return wr;
1065
- ei = 1;
1066
- var a = go(), e = ne(), r = St();
1067
- function n() {
1068
- this.size = 0, this.__data__ = {
1069
- hash: new a(),
1070
- map: new (r || e)(),
1071
- string: new a()
1072
- };
1073
- }
1074
- return wr = n, wr;
1075
- }
1076
- var Rr, ri;
1077
- function mo() {
1078
- if (ri) return Rr;
1079
- ri = 1;
1080
- function a(e) {
1081
- var r = typeof e;
1082
- return r == "string" || r == "number" || r == "symbol" || r == "boolean" ? e !== "__proto__" : e === null;
1083
- }
1084
- return Rr = a, Rr;
1085
- }
1086
- var Cr, ai;
1087
- function se() {
1088
- if (ai) return Cr;
1089
- ai = 1;
1090
- var a = mo();
1091
- function e(r, n) {
1092
- var t = r.__data__;
1093
- return a(n) ? t[typeof n == "string" ? "string" : "hash"] : t.map;
1094
- }
1095
- return Cr = e, Cr;
1096
- }
1097
- var Sr, ti;
1098
- function qo() {
1099
- if (ti) return Sr;
1100
- ti = 1;
1101
- var a = se();
1102
- function e(r) {
1103
- var n = a(this, r).delete(r);
1104
- return this.size -= n ? 1 : 0, n;
1105
- }
1106
- return Sr = e, Sr;
1107
- }
1108
- var Tr, ni;
1109
- function wo() {
1110
- if (ni) return Tr;
1111
- ni = 1;
1112
- var a = se();
1113
- function e(r) {
1114
- return a(this, r).get(r);
1115
- }
1116
- return Tr = e, Tr;
1117
- }
1118
- var Ar, ii;
1119
- function Ro() {
1120
- if (ii) return Ar;
1121
- ii = 1;
1122
- var a = se();
1123
- function e(r) {
1124
- return a(this, r).has(r);
1125
- }
1126
- return Ar = e, Ar;
1127
- }
1128
- var Pr, si;
1129
- function Co() {
1130
- if (si) return Pr;
1131
- si = 1;
1132
- var a = se();
1133
- function e(r, n) {
1134
- var t = a(this, r), i = t.size;
1135
- return t.set(r, n), this.size += t.size == i ? 0 : 1, this;
1136
- }
1137
- return Pr = e, Pr;
1138
- }
1139
- var Or, ui;
1140
- function Tt() {
1141
- if (ui) return Or;
1142
- ui = 1;
1143
- var a = bo(), e = qo(), r = wo(), n = Ro(), t = Co();
1144
- function i(s) {
1145
- var u = -1, o = s == null ? 0 : s.length;
1146
- for (this.clear(); ++u < o; ) {
1147
- var f = s[u];
1148
- this.set(f[0], f[1]);
1149
- }
1150
- }
1151
- return i.prototype.clear = a, i.prototype.delete = e, i.prototype.get = r, i.prototype.has = n, i.prototype.set = t, Or = i, Or;
1152
- }
1153
- var Lr, oi;
1154
- function So() {
1155
- if (oi) return Lr;
1156
- oi = 1;
1157
- var a = ne(), e = St(), r = Tt(), n = 200;
1158
- function t(i, s) {
1159
- var u = this.__data__;
1160
- if (u instanceof a) {
1161
- var o = u.__data__;
1162
- if (!e || o.length < n - 1)
1163
- return o.push([i, s]), this.size = ++u.size, this;
1164
- u = this.__data__ = new r(o);
1165
- }
1166
- return u.set(i, s), this.size = u.size, this;
1167
- }
1168
- return Lr = t, Lr;
1169
- }
1170
- var Ir, fi;
1171
- function At() {
1172
- if (fi) return Ir;
1173
- fi = 1;
1174
- var a = ne(), e = oo(), r = fo(), n = co(), t = lo(), i = So();
1175
- function s(u) {
1176
- var o = this.__data__ = new a(u);
1177
- this.size = o.size;
1178
- }
1179
- return s.prototype.clear = e, s.prototype.delete = r, s.prototype.get = n, s.prototype.has = t, s.prototype.set = i, Ir = s, Ir;
1180
- }
1181
- var Mr, ci;
1182
- function Pt() {
1183
- if (ci) return Mr;
1184
- ci = 1;
1185
- var a = iu();
1186
- function e(r, n, t) {
1187
- n == "__proto__" && a ? a(r, n, {
1188
- configurable: !0,
1189
- enumerable: !0,
1190
- value: t,
1191
- writable: !0
1192
- }) : r[n] = t;
1193
- }
1194
- return Mr = e, Mr;
1195
- }
1196
- var Er, li;
1197
- function lu() {
1198
- if (li) return Er;
1199
- li = 1;
1200
- var a = Pt(), e = W();
1201
- function r(n, t, i) {
1202
- (i !== void 0 && !e(n[t], i) || i === void 0 && !(t in n)) && a(n, t, i);
1203
- }
1204
- return Er = r, Er;
1205
- }
1206
- var kr, hi;
1207
- function To() {
1208
- if (hi) return kr;
1209
- hi = 1;
1210
- function a(e) {
1211
- return function(r, n, t) {
1212
- for (var i = -1, s = Object(r), u = t(r), o = u.length; o--; ) {
1213
- var f = u[e ? o : ++i];
1214
- if (n(s[f], f, s) === !1)
1215
- break;
1216
- }
1217
- return r;
1218
- };
1219
- }
1220
- return kr = a, kr;
1221
- }
1222
- var Fr, di;
1223
- function hu() {
1224
- if (di) return Fr;
1225
- di = 1;
1226
- var a = To(), e = a();
1227
- return Fr = e, Fr;
1228
- }
1229
- var $ = { exports: {} };
1230
- $.exports;
1231
- var pi;
1232
- function Ao() {
1233
- return pi || (pi = 1, function(a, e) {
1234
- var r = M(), n = e && !e.nodeType && e, t = n && !0 && a && !a.nodeType && a, i = t && t.exports === n, s = i ? r.Buffer : void 0, u = s ? s.allocUnsafe : void 0;
1235
- function o(f, l) {
1236
- if (l)
1237
- return f.slice();
1238
- var c = f.length, h = u ? u(c) : new f.constructor(c);
1239
- return f.copy(h), h;
1240
- }
1241
- a.exports = o;
1242
- }($, $.exports)), $.exports;
1243
- }
1244
- var Gr, _i;
1245
- function du() {
1246
- if (_i) return Gr;
1247
- _i = 1;
1248
- var a = M(), e = a.Uint8Array;
1249
- return Gr = e, Gr;
1250
- }
1251
- var Dr, vi;
1252
- function Po() {
1253
- if (vi) return Dr;
1254
- vi = 1;
1255
- var a = du();
1256
- function e(r) {
1257
- var n = new r.constructor(r.byteLength);
1258
- return new a(n).set(new a(r)), n;
1259
- }
1260
- return Dr = e, Dr;
1261
- }
1262
- var xr, yi;
1263
- function Oo() {
1264
- if (yi) return xr;
1265
- yi = 1;
1266
- var a = Po();
1267
- function e(r, n) {
1268
- var t = n ? a(r.buffer) : r.buffer;
1269
- return new r.constructor(t, r.byteOffset, r.length);
1270
- }
1271
- return xr = e, xr;
1272
- }
1273
- var jr, gi;
1274
- function pu() {
1275
- if (gi) return jr;
1276
- gi = 1;
1277
- function a(e, r) {
1278
- return function(n) {
1279
- return e(r(n));
1280
- };
1281
- }
1282
- return jr = a, jr;
1283
- }
1284
- var Br, bi;
1285
- function _u() {
1286
- if (bi) return Br;
1287
- bi = 1;
1288
- var a = pu(), e = a(Object.getPrototypeOf, Object);
1289
- return Br = e, Br;
1290
- }
1291
- var Nr, mi;
1292
- function Ot() {
1293
- if (mi) return Nr;
1294
- mi = 1;
1295
- var a = Object.prototype;
1296
- function e(r) {
1297
- var n = r && r.constructor, t = typeof n == "function" && n.prototype || a;
1298
- return r === t;
1299
- }
1300
- return Nr = e, Nr;
1301
- }
1302
- var Ur, qi;
1303
- function Lo() {
1304
- if (qi) return Ur;
1305
- qi = 1;
1306
- var a = mt(), e = _u(), r = Ot();
1307
- function n(t) {
1308
- return typeof t.constructor == "function" && !r(t) ? a(e(t)) : {};
1309
- }
1310
- return Ur = n, Ur;
1311
- }
1312
- var Kr, wi;
1313
- function Lt() {
1314
- if (wi) return Kr;
1315
- wi = 1;
1316
- var a = 9007199254740991;
1317
- function e(r) {
1318
- return typeof r == "number" && r > -1 && r % 1 == 0 && r <= a;
1319
- }
1320
- return Kr = e, Kr;
1321
- }
1322
- var Hr, Ri;
1323
- function z() {
1324
- if (Ri) return Hr;
1325
- Ri = 1;
1326
- var a = Rt(), e = Lt();
1327
- function r(n) {
1328
- return n != null && e(n.length) && !a(n);
1329
- }
1330
- return Hr = r, Hr;
1331
- }
1332
- var Wr, Ci;
1333
- function Io() {
1334
- if (Ci) return Wr;
1335
- Ci = 1;
1336
- var a = z(), e = F();
1337
- function r(n) {
1338
- return e(n) && a(n);
1339
- }
1340
- return Wr = r, Wr;
1341
- }
1342
- var V = { exports: {} }, zr, Si;
1343
- function Mo() {
1344
- if (Si) return zr;
1345
- Si = 1;
1346
- function a() {
1347
- return !1;
1348
- }
1349
- return zr = a, zr;
1350
- }
1351
- V.exports;
1352
- var Ti;
1353
- function It() {
1354
- return Ti || (Ti = 1, function(a, e) {
1355
- var r = M(), n = Mo(), t = e && !e.nodeType && e, i = t && !0 && a && !a.nodeType && a, s = i && i.exports === t, u = s ? r.Buffer : void 0, o = u ? u.isBuffer : void 0, f = o || n;
1356
- a.exports = f;
1357
- }(V, V.exports)), V.exports;
1358
- }
1359
- var $r, Ai;
1360
- function Eo() {
1361
- if (Ai) return $r;
1362
- Ai = 1;
1363
- var a = H(), e = _u(), r = F(), n = "[object Object]", t = Function.prototype, i = Object.prototype, s = t.toString, u = i.hasOwnProperty, o = s.call(Object);
1364
- function f(l) {
1365
- if (!r(l) || a(l) != n)
1366
- return !1;
1367
- var c = e(l);
1368
- if (c === null)
1369
- return !0;
1370
- var h = u.call(c, "constructor") && c.constructor;
1371
- return typeof h == "function" && h instanceof h && s.call(h) == o;
1372
- }
1373
- return $r = f, $r;
1374
- }
1375
- var Vr, Pi;
1376
- function ko() {
1377
- if (Pi) return Vr;
1378
- Pi = 1;
1379
- var a = H(), e = Lt(), r = F(), n = "[object Arguments]", t = "[object Array]", i = "[object Boolean]", s = "[object Date]", u = "[object Error]", o = "[object Function]", f = "[object Map]", l = "[object Number]", c = "[object Object]", h = "[object RegExp]", _ = "[object Set]", w = "[object String]", p = "[object WeakMap]", g = "[object ArrayBuffer]", y = "[object DataView]", d = "[object Float32Array]", S = "[object Float64Array]", b = "[object Int8Array]", C = "[object Int16Array]", m = "[object Int32Array]", v = "[object Uint8Array]", R = "[object Uint8ClampedArray]", A = "[object Uint16Array]", T = "[object Uint32Array]", q = {};
1380
- q[d] = q[S] = q[b] = q[C] = q[m] = q[v] = q[R] = q[A] = q[T] = !0, q[n] = q[t] = q[g] = q[i] = q[y] = q[s] = q[u] = q[o] = q[f] = q[l] = q[c] = q[h] = q[_] = q[w] = q[p] = !1;
1381
- function L(P) {
1382
- return r(P) && e(P.length) && !!q[a(P)];
1383
- }
1384
- return Vr = L, Vr;
1385
- }
1386
- var Qr, Oi;
1387
- function vu() {
1388
- if (Oi) return Qr;
1389
- Oi = 1;
1390
- function a(e) {
1391
- return function(r) {
1392
- return e(r);
1393
- };
1394
- }
1395
- return Qr = a, Qr;
1396
- }
1397
- var Q = { exports: {} };
1398
- Q.exports;
1399
- var Li;
1400
- function Fo() {
1401
- return Li || (Li = 1, function(a, e) {
1402
- var r = ru(), n = e && !e.nodeType && e, t = n && !0 && a && !a.nodeType && a, i = t && t.exports === n, s = i && r.process, u = function() {
1403
- try {
1404
- var o = t && t.require && t.require("util").types;
1405
- return o || s && s.binding && s.binding("util");
1406
- } catch {
1407
- }
1408
- }();
1409
- a.exports = u;
1410
- }(Q, Q.exports)), Q.exports;
1411
- }
1412
- var Jr, Ii;
1413
- function Mt() {
1414
- if (Ii) return Jr;
1415
- Ii = 1;
1416
- var a = ko(), e = vu(), r = Fo(), n = r && r.isTypedArray, t = n ? e(n) : a;
1417
- return Jr = t, Jr;
1418
- }
1419
- var Xr, Mi;
1420
- function yu() {
1421
- if (Mi) return Xr;
1422
- Mi = 1;
1423
- function a(e, r) {
1424
- if (!(r === "constructor" && typeof e[r] == "function") && r != "__proto__")
1425
- return e[r];
1426
- }
1427
- return Xr = a, Xr;
1428
- }
1429
- var Yr, Ei;
1430
- function Go() {
1431
- if (Ei) return Yr;
1432
- Ei = 1;
1433
- var a = Pt(), e = W(), r = Object.prototype, n = r.hasOwnProperty;
1434
- function t(i, s, u) {
1435
- var o = i[s];
1436
- (!(n.call(i, s) && e(o, u)) || u === void 0 && !(s in i)) && a(i, s, u);
1437
- }
1438
- return Yr = t, Yr;
1439
- }
1440
- var Zr, ki;
1441
- function Do() {
1442
- if (ki) return Zr;
1443
- ki = 1;
1444
- var a = Go(), e = Pt();
1445
- function r(n, t, i, s) {
1446
- var u = !i;
1447
- i || (i = {});
1448
- for (var o = -1, f = t.length; ++o < f; ) {
1449
- var l = t[o], c = s ? s(i[l], n[l], l, i, n) : void 0;
1450
- c === void 0 && (c = n[l]), u ? e(i, l, c) : a(i, l, c);
1451
- }
1452
- return i;
1453
- }
1454
- return Zr = r, Zr;
1455
- }
1456
- var ea, Fi;
1457
- function xo() {
1458
- if (Fi) return ea;
1459
- Fi = 1;
1460
- function a(e, r) {
1461
- for (var n = -1, t = Array(e); ++n < e; )
1462
- t[n] = r(n);
1463
- return t;
1464
- }
1465
- return ea = a, ea;
1466
- }
1467
- var ra, Gi;
1468
- function Et() {
1469
- if (Gi) return ra;
1470
- Gi = 1;
1471
- var a = 9007199254740991, e = /^(?:0|[1-9]\d*)$/;
1472
- function r(n, t) {
1473
- var i = typeof n;
1474
- return t = t ?? a, !!t && (i == "number" || i != "symbol" && e.test(n)) && n > -1 && n % 1 == 0 && n < t;
1475
- }
1476
- return ra = r, ra;
1477
- }
1478
- var aa, Di;
1479
- function gu() {
1480
- if (Di) return aa;
1481
- Di = 1;
1482
- var a = xo(), e = re(), r = I(), n = It(), t = Et(), i = Mt(), s = Object.prototype, u = s.hasOwnProperty;
1483
- function o(f, l) {
1484
- var c = r(f), h = !c && e(f), _ = !c && !h && n(f), w = !c && !h && !_ && i(f), p = c || h || _ || w, g = p ? a(f.length, String) : [], y = g.length;
1485
- for (var d in f)
1486
- (l || u.call(f, d)) && !(p && // Safari 9 has enumerable `arguments.length` in strict mode.
1487
- (d == "length" || // Node.js 0.10 has enumerable non-index properties on buffers.
1488
- _ && (d == "offset" || d == "parent") || // PhantomJS 2 has enumerable non-index properties on typed arrays.
1489
- w && (d == "buffer" || d == "byteLength" || d == "byteOffset") || // Skip index properties.
1490
- t(d, y))) && g.push(d);
1491
- return g;
1492
- }
1493
- return aa = o, aa;
1494
- }
1495
- var ta, xi;
1496
- function jo() {
1497
- if (xi) return ta;
1498
- xi = 1;
1499
- function a(e) {
1500
- var r = [];
1501
- if (e != null)
1502
- for (var n in Object(e))
1503
- r.push(n);
1504
- return r;
1505
- }
1506
- return ta = a, ta;
1507
- }
1508
- var na, ji;
1509
- function Bo() {
1510
- if (ji) return na;
1511
- ji = 1;
1512
- var a = k(), e = Ot(), r = jo(), n = Object.prototype, t = n.hasOwnProperty;
1513
- function i(s) {
1514
- if (!a(s))
1515
- return r(s);
1516
- var u = e(s), o = [];
1517
- for (var f in s)
1518
- f == "constructor" && (u || !t.call(s, f)) || o.push(f);
1519
- return o;
1520
- }
1521
- return na = i, na;
1522
- }
1523
- var ia, Bi;
1524
- function bu() {
1525
- if (Bi) return ia;
1526
- Bi = 1;
1527
- var a = gu(), e = Bo(), r = z();
1528
- function n(t) {
1529
- return r(t) ? a(t, !0) : e(t);
1530
- }
1531
- return ia = n, ia;
1532
- }
1533
- var sa, Ni;
1534
- function No() {
1535
- if (Ni) return sa;
1536
- Ni = 1;
1537
- var a = Do(), e = bu();
1538
- function r(n) {
1539
- return a(n, e(n));
1540
- }
1541
- return sa = r, sa;
1542
- }
1543
- var ua, Ui;
1544
- function Uo() {
1545
- if (Ui) return ua;
1546
- Ui = 1;
1547
- var a = lu(), e = Ao(), r = Oo(), n = cu(), t = Lo(), i = re(), s = I(), u = Io(), o = It(), f = Rt(), l = k(), c = Eo(), h = Mt(), _ = yu(), w = No();
1548
- function p(g, y, d, S, b, C, m) {
1549
- var v = _(g, d), R = _(y, d), A = m.get(R);
1550
- if (A) {
1551
- a(g, d, A);
1552
- return;
1553
- }
1554
- var T = C ? C(v, R, d + "", g, y, m) : void 0, q = T === void 0;
1555
- if (q) {
1556
- var L = s(R), P = !L && o(R), B = !L && !P && h(R);
1557
- T = R, L || P || B ? s(v) ? T = v : u(v) ? T = n(v) : P ? (q = !1, T = e(R, !0)) : B ? (q = !1, T = r(R, !0)) : T = [] : c(R) || i(R) ? (T = v, i(v) ? T = w(v) : (!l(v) || f(v)) && (T = t(R))) : q = !1;
1558
- }
1559
- q && (m.set(R, T), b(T, R, S, C, m), m.delete(R)), a(g, d, T);
1560
- }
1561
- return ua = p, ua;
1562
- }
1563
- var oa, Ki;
1564
- function Ko() {
1565
- if (Ki) return oa;
1566
- Ki = 1;
1567
- var a = At(), e = lu(), r = hu(), n = Uo(), t = k(), i = bu(), s = yu();
1568
- function u(o, f, l, c, h) {
1569
- o !== f && r(f, function(_, w) {
1570
- if (h || (h = new a()), t(_))
1571
- n(o, f, w, l, u, c, h);
1572
- else {
1573
- var p = c ? c(s(o, w), _, w + "", o, f, h) : void 0;
1574
- p === void 0 && (p = _), e(o, w, p);
1575
- }
1576
- }, i);
1577
- }
1578
- return oa = u, oa;
1579
- }
1580
- var fa, Hi;
1581
- function mu() {
1582
- if (Hi) return fa;
1583
- Hi = 1;
1584
- var a = ae(), e = tu(), r = su();
1585
- function n(t, i) {
1586
- return r(e(t, i, a), t + "");
1587
- }
1588
- return fa = n, fa;
1589
- }
1590
- var ca, Wi;
1591
- function qu() {
1592
- if (Wi) return ca;
1593
- Wi = 1;
1594
- var a = W(), e = z(), r = Et(), n = k();
1595
- function t(i, s, u) {
1596
- if (!n(u))
1597
- return !1;
1598
- var o = typeof s;
1599
- return (o == "number" ? e(u) && r(s, u.length) : o == "string" && s in u) ? a(u[s], i) : !1;
1600
- }
1601
- return ca = t, ca;
1602
- }
1603
- var la, zi;
1604
- function Ho() {
1605
- if (zi) return la;
1606
- zi = 1;
1607
- var a = mu(), e = qu();
1608
- function r(n) {
1609
- return a(function(t, i) {
1610
- var s = -1, u = i.length, o = u > 1 ? i[u - 1] : void 0, f = u > 2 ? i[2] : void 0;
1611
- for (o = n.length > 3 && typeof o == "function" ? (u--, o) : void 0, f && e(i[0], i[1], f) && (o = u < 3 ? void 0 : o, u = 1), t = Object(t); ++s < u; ) {
1612
- var l = i[s];
1613
- l && n(t, l, s, o);
1614
- }
1615
- return t;
1616
- });
1617
- }
1618
- return la = r, la;
1619
- }
1620
- var ha, $i;
1621
- function Wo() {
1622
- if ($i) return ha;
1623
- $i = 1;
1624
- var a = Ko(), e = Ho(), r = e(function(n, t, i) {
1625
- a(n, t, i);
1626
- });
1627
- return ha = r, ha;
1628
- }
1629
- var zo = Wo();
1630
- const da = /* @__PURE__ */ ee(zo);
1631
- var pa, Vi;
1632
- function wu() {
1633
- if (Vi) return pa;
1634
- Vi = 1;
1635
- function a(e, r) {
1636
- for (var n = -1, t = e == null ? 0 : e.length, i = Array(t); ++n < t; )
1637
- i[n] = r(e[n], n, e);
1638
- return i;
1639
- }
1640
- return pa = a, pa;
1641
- }
1642
- var _a, Qi;
1643
- function ue() {
1644
- if (Qi) return _a;
1645
- Qi = 1;
1646
- var a = H(), e = F(), r = "[object Symbol]";
1647
- function n(t) {
1648
- return typeof t == "symbol" || e(t) && a(t) == r;
1649
- }
1650
- return _a = n, _a;
1651
- }
1652
- var va, Ji;
1653
- function kt() {
1654
- if (Ji) return va;
1655
- Ji = 1;
1656
- var a = I(), e = ue(), r = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/, n = /^\w*$/;
1657
- function t(i, s) {
1658
- if (a(i))
1659
- return !1;
1660
- var u = typeof i;
1661
- return u == "number" || u == "symbol" || u == "boolean" || i == null || e(i) ? !0 : n.test(i) || !r.test(i) || s != null && i in Object(s);
1662
- }
1663
- return va = t, va;
1664
- }
1665
- var ya, Xi;
1666
- function $o() {
1667
- if (Xi) return ya;
1668
- Xi = 1;
1669
- var a = Tt(), e = "Expected a function";
1670
- function r(n, t) {
1671
- if (typeof n != "function" || t != null && typeof t != "function")
1672
- throw new TypeError(e);
1673
- var i = function() {
1674
- var s = arguments, u = t ? t.apply(this, s) : s[0], o = i.cache;
1675
- if (o.has(u))
1676
- return o.get(u);
1677
- var f = n.apply(this, s);
1678
- return i.cache = o.set(u, f) || o, f;
1679
- };
1680
- return i.cache = new (r.Cache || a)(), i;
1681
- }
1682
- return r.Cache = a, ya = r, ya;
1683
- }
1684
- var ga, Yi;
1685
- function Vo() {
1686
- if (Yi) return ga;
1687
- Yi = 1;
1688
- var a = $o(), e = 500;
1689
- function r(n) {
1690
- var t = a(n, function(s) {
1691
- return i.size === e && i.clear(), s;
1692
- }), i = t.cache;
1693
- return t;
1694
- }
1695
- return ga = r, ga;
1696
- }
1697
- var ba, Zi;
1698
- function Qo() {
1699
- if (Zi) return ba;
1700
- Zi = 1;
1701
- var a = Vo(), e = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g, r = /\\(\\)?/g, n = a(function(t) {
1702
- var i = [];
1703
- return t.charCodeAt(0) === 46 && i.push(""), t.replace(e, function(s, u, o, f) {
1704
- i.push(o ? f.replace(r, "$1") : u || s);
1705
- }), i;
1706
- });
1707
- return ba = n, ba;
1708
- }
1709
- var ma, es;
1710
- function Jo() {
1711
- if (es) return ma;
1712
- es = 1;
1713
- var a = J(), e = wu(), r = I(), n = ue(), t = a ? a.prototype : void 0, i = t ? t.toString : void 0;
1714
- function s(u) {
1715
- if (typeof u == "string")
1716
- return u;
1717
- if (r(u))
1718
- return e(u, s) + "";
1719
- if (n(u))
1720
- return i ? i.call(u) : "";
1721
- var o = u + "";
1722
- return o == "0" && 1 / u == -1 / 0 ? "-0" : o;
1723
- }
1724
- return ma = s, ma;
1725
- }
1726
- var qa, rs;
1727
- function Xo() {
1728
- if (rs) return qa;
1729
- rs = 1;
1730
- var a = Jo();
1731
- function e(r) {
1732
- return r == null ? "" : a(r);
1733
- }
1734
- return qa = e, qa;
1735
- }
1736
- var wa, as;
1737
- function Ru() {
1738
- if (as) return wa;
1739
- as = 1;
1740
- var a = I(), e = kt(), r = Qo(), n = Xo();
1741
- function t(i, s) {
1742
- return a(i) ? i : e(i, s) ? [i] : r(n(i));
1743
- }
1744
- return wa = t, wa;
1745
- }
1746
- var Ra, ts;
1747
- function oe() {
1748
- if (ts) return Ra;
1749
- ts = 1;
1750
- var a = ue();
1751
- function e(r) {
1752
- if (typeof r == "string" || a(r))
1753
- return r;
1754
- var n = r + "";
1755
- return n == "0" && 1 / r == -1 / 0 ? "-0" : n;
1756
- }
1757
- return Ra = e, Ra;
1758
- }
1759
- var Ca, ns;
1760
- function Ft() {
1761
- if (ns) return Ca;
1762
- ns = 1;
1763
- var a = Ru(), e = oe();
1764
- function r(n, t) {
1765
- t = a(t, n);
1766
- for (var i = 0, s = t.length; n != null && i < s; )
1767
- n = n[e(t[i++])];
1768
- return i && i == s ? n : void 0;
1769
- }
1770
- return Ca = r, Ca;
1771
- }
1772
- var Sa, is;
1773
- function Yo() {
1774
- if (is) return Sa;
1775
- is = 1;
1776
- var a = "__lodash_hash_undefined__";
1777
- function e(r) {
1778
- return this.__data__.set(r, a), this;
1779
- }
1780
- return Sa = e, Sa;
1781
- }
1782
- var Ta, ss;
1783
- function Zo() {
1784
- if (ss) return Ta;
1785
- ss = 1;
1786
- function a(e) {
1787
- return this.__data__.has(e);
1788
- }
1789
- return Ta = a, Ta;
1790
- }
1791
- var Aa, us;
1792
- function ef() {
1793
- if (us) return Aa;
1794
- us = 1;
1795
- var a = Tt(), e = Yo(), r = Zo();
1796
- function n(t) {
1797
- var i = -1, s = t == null ? 0 : t.length;
1798
- for (this.__data__ = new a(); ++i < s; )
1799
- this.add(t[i]);
1800
- }
1801
- return n.prototype.add = n.prototype.push = e, n.prototype.has = r, Aa = n, Aa;
1802
- }
1803
- var Pa, os;
1804
- function rf() {
1805
- if (os) return Pa;
1806
- os = 1;
1807
- function a(e, r) {
1808
- for (var n = -1, t = e == null ? 0 : e.length; ++n < t; )
1809
- if (r(e[n], n, e))
1810
- return !0;
1811
- return !1;
1812
- }
1813
- return Pa = a, Pa;
1814
- }
1815
- var Oa, fs;
1816
- function af() {
1817
- if (fs) return Oa;
1818
- fs = 1;
1819
- function a(e, r) {
1820
- return e.has(r);
1821
- }
1822
- return Oa = a, Oa;
1823
- }
1824
- var La, cs;
1825
- function Cu() {
1826
- if (cs) return La;
1827
- cs = 1;
1828
- var a = ef(), e = rf(), r = af(), n = 1, t = 2;
1829
- function i(s, u, o, f, l, c) {
1830
- var h = o & n, _ = s.length, w = u.length;
1831
- if (_ != w && !(h && w > _))
1832
- return !1;
1833
- var p = c.get(s), g = c.get(u);
1834
- if (p && g)
1835
- return p == u && g == s;
1836
- var y = -1, d = !0, S = o & t ? new a() : void 0;
1837
- for (c.set(s, u), c.set(u, s); ++y < _; ) {
1838
- var b = s[y], C = u[y];
1839
- if (f)
1840
- var m = h ? f(C, b, y, u, s, c) : f(b, C, y, s, u, c);
1841
- if (m !== void 0) {
1842
- if (m)
1843
- continue;
1844
- d = !1;
1845
- break;
1846
- }
1847
- if (S) {
1848
- if (!e(u, function(v, R) {
1849
- if (!r(S, R) && (b === v || l(b, v, o, f, c)))
1850
- return S.push(R);
1851
- })) {
1852
- d = !1;
1853
- break;
1854
- }
1855
- } else if (!(b === C || l(b, C, o, f, c))) {
1856
- d = !1;
1857
- break;
1858
- }
1859
- }
1860
- return c.delete(s), c.delete(u), d;
1861
- }
1862
- return La = i, La;
1863
- }
1864
- var Ia, ls;
1865
- function tf() {
1866
- if (ls) return Ia;
1867
- ls = 1;
1868
- function a(e) {
1869
- var r = -1, n = Array(e.size);
1870
- return e.forEach(function(t, i) {
1871
- n[++r] = [i, t];
1872
- }), n;
1873
- }
1874
- return Ia = a, Ia;
1875
- }
1876
- var Ma, hs;
1877
- function nf() {
1878
- if (hs) return Ma;
1879
- hs = 1;
1880
- function a(e) {
1881
- var r = -1, n = Array(e.size);
1882
- return e.forEach(function(t) {
1883
- n[++r] = t;
1884
- }), n;
1885
- }
1886
- return Ma = a, Ma;
1887
- }
1888
- var Ea, ds;
1889
- function sf() {
1890
- if (ds) return Ea;
1891
- ds = 1;
1892
- var a = J(), e = du(), r = W(), n = Cu(), t = tf(), i = nf(), s = 1, u = 2, o = "[object Boolean]", f = "[object Date]", l = "[object Error]", c = "[object Map]", h = "[object Number]", _ = "[object RegExp]", w = "[object Set]", p = "[object String]", g = "[object Symbol]", y = "[object ArrayBuffer]", d = "[object DataView]", S = a ? a.prototype : void 0, b = S ? S.valueOf : void 0;
1893
- function C(m, v, R, A, T, q, L) {
1894
- switch (R) {
1895
- case d:
1896
- if (m.byteLength != v.byteLength || m.byteOffset != v.byteOffset)
1897
- return !1;
1898
- m = m.buffer, v = v.buffer;
1899
- case y:
1900
- return !(m.byteLength != v.byteLength || !q(new e(m), new e(v)));
1901
- case o:
1902
- case f:
1903
- case h:
1904
- return r(+m, +v);
1905
- case l:
1906
- return m.name == v.name && m.message == v.message;
1907
- case _:
1908
- case p:
1909
- return m == v + "";
1910
- case c:
1911
- var P = t;
1912
- case w:
1913
- var B = A & s;
1914
- if (P || (P = i), m.size != v.size && !B)
1915
- return !1;
1916
- var X = L.get(m);
1917
- if (X)
1918
- return X == v;
1919
- A |= u, L.set(m, v);
1920
- var Pu = n(P(m), P(v), A, T, q, L);
1921
- return L.delete(m), Pu;
1922
- case g:
1923
- if (b)
1924
- return b.call(m) == b.call(v);
1925
- }
1926
- return !1;
1927
- }
1928
- return Ea = C, Ea;
1929
- }
1930
- var ka, ps;
1931
- function uf() {
1932
- if (ps) return ka;
1933
- ps = 1;
1934
- var a = eu(), e = I();
1935
- function r(n, t, i) {
1936
- var s = t(n);
1937
- return e(n) ? s : a(s, i(n));
1938
- }
1939
- return ka = r, ka;
1940
- }
1941
- var Fa, _s;
1942
- function of() {
1943
- if (_s) return Fa;
1944
- _s = 1;
1945
- function a(e, r) {
1946
- for (var n = -1, t = e == null ? 0 : e.length, i = 0, s = []; ++n < t; ) {
1947
- var u = e[n];
1948
- r(u, n, e) && (s[i++] = u);
1949
- }
1950
- return s;
1951
- }
1952
- return Fa = a, Fa;
1953
- }
1954
- var Ga, vs;
1955
- function ff() {
1956
- if (vs) return Ga;
1957
- vs = 1;
1958
- function a() {
1959
- return [];
1960
- }
1961
- return Ga = a, Ga;
1962
- }
1963
- var Da, ys;
1964
- function cf() {
1965
- if (ys) return Da;
1966
- ys = 1;
1967
- var a = of(), e = ff(), r = Object.prototype, n = r.propertyIsEnumerable, t = Object.getOwnPropertySymbols, i = t ? function(s) {
1968
- return s == null ? [] : (s = Object(s), a(t(s), function(u) {
1969
- return n.call(s, u);
1970
- }));
1971
- } : e;
1972
- return Da = i, Da;
1973
- }
1974
- var xa, gs;
1975
- function lf() {
1976
- if (gs) return xa;
1977
- gs = 1;
1978
- var a = pu(), e = a(Object.keys, Object);
1979
- return xa = e, xa;
1980
- }
1981
- var ja, bs;
1982
- function hf() {
1983
- if (bs) return ja;
1984
- bs = 1;
1985
- var a = Ot(), e = lf(), r = Object.prototype, n = r.hasOwnProperty;
1986
- function t(i) {
1987
- if (!a(i))
1988
- return e(i);
1989
- var s = [];
1990
- for (var u in Object(i))
1991
- n.call(i, u) && u != "constructor" && s.push(u);
1992
- return s;
1993
- }
1994
- return ja = t, ja;
1995
- }
1996
- var Ba, ms;
1997
- function Gt() {
1998
- if (ms) return Ba;
1999
- ms = 1;
2000
- var a = gu(), e = hf(), r = z();
2001
- function n(t) {
2002
- return r(t) ? a(t) : e(t);
2003
- }
2004
- return Ba = n, Ba;
2005
- }
2006
- var Na, qs;
2007
- function df() {
2008
- if (qs) return Na;
2009
- qs = 1;
2010
- var a = uf(), e = cf(), r = Gt();
2011
- function n(t) {
2012
- return a(t, r, e);
2013
- }
2014
- return Na = n, Na;
2015
- }
2016
- var Ua, ws;
2017
- function pf() {
2018
- if (ws) return Ua;
2019
- ws = 1;
2020
- var a = df(), e = 1, r = Object.prototype, n = r.hasOwnProperty;
2021
- function t(i, s, u, o, f, l) {
2022
- var c = u & e, h = a(i), _ = h.length, w = a(s), p = w.length;
2023
- if (_ != p && !c)
2024
- return !1;
2025
- for (var g = _; g--; ) {
2026
- var y = h[g];
2027
- if (!(c ? y in s : n.call(s, y)))
2028
- return !1;
2029
- }
2030
- var d = l.get(i), S = l.get(s);
2031
- if (d && S)
2032
- return d == s && S == i;
2033
- var b = !0;
2034
- l.set(i, s), l.set(s, i);
2035
- for (var C = c; ++g < _; ) {
2036
- y = h[g];
2037
- var m = i[y], v = s[y];
2038
- if (o)
2039
- var R = c ? o(v, m, y, s, i, l) : o(m, v, y, i, s, l);
2040
- if (!(R === void 0 ? m === v || f(m, v, u, o, l) : R)) {
2041
- b = !1;
2042
- break;
2043
- }
2044
- C || (C = y == "constructor");
2045
- }
2046
- if (b && !C) {
2047
- var A = i.constructor, T = s.constructor;
2048
- A != T && "constructor" in i && "constructor" in s && !(typeof A == "function" && A instanceof A && typeof T == "function" && T instanceof T) && (b = !1);
2049
- }
2050
- return l.delete(i), l.delete(s), b;
2051
- }
2052
- return Ua = t, Ua;
2053
- }
2054
- var Ka, Rs;
2055
- function _f() {
2056
- if (Rs) return Ka;
2057
- Rs = 1;
2058
- var a = j(), e = M(), r = a(e, "DataView");
2059
- return Ka = r, Ka;
2060
- }
2061
- var Ha, Cs;
2062
- function vf() {
2063
- if (Cs) return Ha;
2064
- Cs = 1;
2065
- var a = j(), e = M(), r = a(e, "Promise");
2066
- return Ha = r, Ha;
2067
- }
2068
- var Wa, Ss;
2069
- function yf() {
2070
- if (Ss) return Wa;
2071
- Ss = 1;
2072
- var a = j(), e = M(), r = a(e, "Set");
2073
- return Wa = r, Wa;
2074
- }
2075
- var za, Ts;
2076
- function gf() {
2077
- if (Ts) return za;
2078
- Ts = 1;
2079
- var a = _f(), e = St(), r = vf(), n = yf(), t = uu(), i = H(), s = nu(), u = "[object Map]", o = "[object Object]", f = "[object Promise]", l = "[object Set]", c = "[object WeakMap]", h = "[object DataView]", _ = s(a), w = s(e), p = s(r), g = s(n), y = s(t), d = i;
2080
- return (a && d(new a(new ArrayBuffer(1))) != h || e && d(new e()) != u || r && d(r.resolve()) != f || n && d(new n()) != l || t && d(new t()) != c) && (d = function(S) {
2081
- var b = i(S), C = b == o ? S.constructor : void 0, m = C ? s(C) : "";
2082
- if (m)
2083
- switch (m) {
2084
- case _:
2085
- return h;
2086
- case w:
2087
- return u;
2088
- case p:
2089
- return f;
2090
- case g:
2091
- return l;
2092
- case y:
2093
- return c;
2094
- }
2095
- return b;
2096
- }), za = d, za;
2097
- }
2098
- var $a, As;
2099
- function bf() {
2100
- if (As) return $a;
2101
- As = 1;
2102
- var a = At(), e = Cu(), r = sf(), n = pf(), t = gf(), i = I(), s = It(), u = Mt(), o = 1, f = "[object Arguments]", l = "[object Array]", c = "[object Object]", h = Object.prototype, _ = h.hasOwnProperty;
2103
- function w(p, g, y, d, S, b) {
2104
- var C = i(p), m = i(g), v = C ? l : t(p), R = m ? l : t(g);
2105
- v = v == f ? c : v, R = R == f ? c : R;
2106
- var A = v == c, T = R == c, q = v == R;
2107
- if (q && s(p)) {
2108
- if (!s(g))
2109
- return !1;
2110
- C = !0, A = !1;
2111
- }
2112
- if (q && !A)
2113
- return b || (b = new a()), C || u(p) ? e(p, g, y, d, S, b) : r(p, g, v, y, d, S, b);
2114
- if (!(y & o)) {
2115
- var L = A && _.call(p, "__wrapped__"), P = T && _.call(g, "__wrapped__");
2116
- if (L || P) {
2117
- var B = L ? p.value() : p, X = P ? g.value() : g;
2118
- return b || (b = new a()), S(B, X, y, d, b);
2119
- }
2120
- }
2121
- return q ? (b || (b = new a()), n(p, g, y, d, S, b)) : !1;
2122
- }
2123
- return $a = w, $a;
2124
- }
2125
- var Va, Ps;
2126
- function Su() {
2127
- if (Ps) return Va;
2128
- Ps = 1;
2129
- var a = bf(), e = F();
2130
- function r(n, t, i, s, u) {
2131
- return n === t ? !0 : n == null || t == null || !e(n) && !e(t) ? n !== n && t !== t : a(n, t, i, s, r, u);
2132
- }
2133
- return Va = r, Va;
2134
- }
2135
- var Qa, Os;
2136
- function mf() {
2137
- if (Os) return Qa;
2138
- Os = 1;
2139
- var a = At(), e = Su(), r = 1, n = 2;
2140
- function t(i, s, u, o) {
2141
- var f = u.length, l = f, c = !o;
2142
- if (i == null)
2143
- return !l;
2144
- for (i = Object(i); f--; ) {
2145
- var h = u[f];
2146
- if (c && h[2] ? h[1] !== i[h[0]] : !(h[0] in i))
2147
- return !1;
2148
- }
2149
- for (; ++f < l; ) {
2150
- h = u[f];
2151
- var _ = h[0], w = i[_], p = h[1];
2152
- if (c && h[2]) {
2153
- if (w === void 0 && !(_ in i))
2154
- return !1;
2155
- } else {
2156
- var g = new a();
2157
- if (o)
2158
- var y = o(w, p, _, i, s, g);
2159
- if (!(y === void 0 ? e(p, w, r | n, o, g) : y))
2160
- return !1;
2161
- }
2162
- }
2163
- return !0;
2164
- }
2165
- return Qa = t, Qa;
2166
- }
2167
- var Ja, Ls;
2168
- function Tu() {
2169
- if (Ls) return Ja;
2170
- Ls = 1;
2171
- var a = k();
2172
- function e(r) {
2173
- return r === r && !a(r);
2174
- }
2175
- return Ja = e, Ja;
2176
- }
2177
- var Xa, Is;
2178
- function qf() {
2179
- if (Is) return Xa;
2180
- Is = 1;
2181
- var a = Tu(), e = Gt();
2182
- function r(n) {
2183
- for (var t = e(n), i = t.length; i--; ) {
2184
- var s = t[i], u = n[s];
2185
- t[i] = [s, u, a(u)];
2186
- }
2187
- return t;
2188
- }
2189
- return Xa = r, Xa;
2190
- }
2191
- var Ya, Ms;
2192
- function Au() {
2193
- if (Ms) return Ya;
2194
- Ms = 1;
2195
- function a(e, r) {
2196
- return function(n) {
2197
- return n == null ? !1 : n[e] === r && (r !== void 0 || e in Object(n));
2198
- };
2199
- }
2200
- return Ya = a, Ya;
2201
- }
2202
- var Za, Es;
2203
- function wf() {
2204
- if (Es) return Za;
2205
- Es = 1;
2206
- var a = mf(), e = qf(), r = Au();
2207
- function n(t) {
2208
- var i = e(t);
2209
- return i.length == 1 && i[0][2] ? r(i[0][0], i[0][1]) : function(s) {
2210
- return s === t || a(s, t, i);
2211
- };
2212
- }
2213
- return Za = n, Za;
2214
- }
2215
- var et, ks;
2216
- function Rf() {
2217
- if (ks) return et;
2218
- ks = 1;
2219
- var a = Ft();
2220
- function e(r, n, t) {
2221
- var i = r == null ? void 0 : a(r, n);
2222
- return i === void 0 ? t : i;
2223
- }
2224
- return et = e, et;
2225
- }
2226
- var rt, Fs;
2227
- function Cf() {
2228
- if (Fs) return rt;
2229
- Fs = 1;
2230
- function a(e, r) {
2231
- return e != null && r in Object(e);
2232
- }
2233
- return rt = a, rt;
2234
- }
2235
- var at, Gs;
2236
- function Sf() {
2237
- if (Gs) return at;
2238
- Gs = 1;
2239
- var a = Ru(), e = re(), r = I(), n = Et(), t = Lt(), i = oe();
2240
- function s(u, o, f) {
2241
- o = a(o, u);
2242
- for (var l = -1, c = o.length, h = !1; ++l < c; ) {
2243
- var _ = i(o[l]);
2244
- if (!(h = u != null && f(u, _)))
2245
- break;
2246
- u = u[_];
2247
- }
2248
- return h || ++l != c ? h : (c = u == null ? 0 : u.length, !!c && t(c) && n(_, c) && (r(u) || e(u)));
2249
- }
2250
- return at = s, at;
2251
- }
2252
- var tt, Ds;
2253
- function Tf() {
2254
- if (Ds) return tt;
2255
- Ds = 1;
2256
- var a = Cf(), e = Sf();
2257
- function r(n, t) {
2258
- return n != null && e(n, t, a);
2259
- }
2260
- return tt = r, tt;
2261
- }
2262
- var nt, xs;
2263
- function Af() {
2264
- if (xs) return nt;
2265
- xs = 1;
2266
- var a = Su(), e = Rf(), r = Tf(), n = kt(), t = Tu(), i = Au(), s = oe(), u = 1, o = 2;
2267
- function f(l, c) {
2268
- return n(l) && t(c) ? i(s(l), c) : function(h) {
2269
- var _ = e(h, l);
2270
- return _ === void 0 && _ === c ? r(h, l) : a(c, _, u | o);
2271
- };
2272
- }
2273
- return nt = f, nt;
2274
- }
2275
- var it, js;
2276
- function Pf() {
2277
- if (js) return it;
2278
- js = 1;
2279
- function a(e) {
2280
- return function(r) {
2281
- return r == null ? void 0 : r[e];
2282
- };
2283
- }
2284
- return it = a, it;
2285
- }
2286
- var st, Bs;
2287
- function Of() {
2288
- if (Bs) return st;
2289
- Bs = 1;
2290
- var a = Ft();
2291
- function e(r) {
2292
- return function(n) {
2293
- return a(n, r);
2294
- };
2295
- }
2296
- return st = e, st;
2297
- }
2298
- var ut, Ns;
2299
- function Lf() {
2300
- if (Ns) return ut;
2301
- Ns = 1;
2302
- var a = Pf(), e = Of(), r = kt(), n = oe();
2303
- function t(i) {
2304
- return r(i) ? a(n(i)) : e(i);
2305
- }
2306
- return ut = t, ut;
2307
- }
2308
- var ot, Us;
2309
- function If() {
2310
- if (Us) return ot;
2311
- Us = 1;
2312
- var a = wf(), e = Af(), r = ae(), n = I(), t = Lf();
2313
- function i(s) {
2314
- return typeof s == "function" ? s : s == null ? r : typeof s == "object" ? n(s) ? e(s[0], s[1]) : a(s) : t(s);
2315
- }
2316
- return ot = i, ot;
2317
- }
2318
- var ft, Ks;
2319
- function Mf() {
2320
- if (Ks) return ft;
2321
- Ks = 1;
2322
- var a = hu(), e = Gt();
2323
- function r(n, t) {
2324
- return n && a(n, t, e);
2325
- }
2326
- return ft = r, ft;
2327
- }
2328
- var ct, Hs;
2329
- function Ef() {
2330
- if (Hs) return ct;
2331
- Hs = 1;
2332
- var a = z();
2333
- function e(r, n) {
2334
- return function(t, i) {
2335
- if (t == null)
2336
- return t;
2337
- if (!a(t))
2338
- return r(t, i);
2339
- for (var s = t.length, u = n ? s : -1, o = Object(t); (n ? u-- : ++u < s) && i(o[u], u, o) !== !1; )
2340
- ;
2341
- return t;
2342
- };
2343
- }
2344
- return ct = e, ct;
2345
- }
2346
- var lt, Ws;
2347
- function kf() {
2348
- if (Ws) return lt;
2349
- Ws = 1;
2350
- var a = Mf(), e = Ef(), r = e(a);
2351
- return lt = r, lt;
2352
- }
2353
- var ht, zs;
2354
- function Ff() {
2355
- if (zs) return ht;
2356
- zs = 1;
2357
- var a = kf(), e = z();
2358
- function r(n, t) {
2359
- var i = -1, s = e(n) ? Array(n.length) : [];
2360
- return a(n, function(u, o, f) {
2361
- s[++i] = t(u, o, f);
2362
- }), s;
2363
- }
2364
- return ht = r, ht;
2365
- }
2366
- var dt, $s;
2367
- function Gf() {
2368
- if ($s) return dt;
2369
- $s = 1;
2370
- function a(e, r) {
2371
- var n = e.length;
2372
- for (e.sort(r); n--; )
2373
- e[n] = e[n].value;
2374
- return e;
2375
- }
2376
- return dt = a, dt;
2377
- }
2378
- var pt, Vs;
2379
- function Df() {
2380
- if (Vs) return pt;
2381
- Vs = 1;
2382
- var a = ue();
2383
- function e(r, n) {
2384
- if (r !== n) {
2385
- var t = r !== void 0, i = r === null, s = r === r, u = a(r), o = n !== void 0, f = n === null, l = n === n, c = a(n);
2386
- if (!f && !c && !u && r > n || u && o && l && !f && !c || i && o && l || !t && l || !s)
2387
- return 1;
2388
- if (!i && !u && !c && r < n || c && t && s && !i && !u || f && t && s || !o && s || !l)
2389
- return -1;
2390
- }
2391
- return 0;
2392
- }
2393
- return pt = e, pt;
2394
- }
2395
- var _t, Qs;
2396
- function xf() {
2397
- if (Qs) return _t;
2398
- Qs = 1;
2399
- var a = Df();
2400
- function e(r, n, t) {
2401
- for (var i = -1, s = r.criteria, u = n.criteria, o = s.length, f = t.length; ++i < o; ) {
2402
- var l = a(s[i], u[i]);
2403
- if (l) {
2404
- if (i >= f)
2405
- return l;
2406
- var c = t[i];
2407
- return l * (c == "desc" ? -1 : 1);
2408
- }
2409
- }
2410
- return r.index - n.index;
2411
- }
2412
- return _t = e, _t;
2413
- }
2414
- var vt, Js;
2415
- function jf() {
2416
- if (Js) return vt;
2417
- Js = 1;
2418
- var a = wu(), e = Ft(), r = If(), n = Ff(), t = Gf(), i = vu(), s = xf(), u = ae(), o = I();
2419
- function f(l, c, h) {
2420
- c.length ? c = a(c, function(p) {
2421
- return o(p) ? function(g) {
2422
- return e(g, p.length === 1 ? p[0] : p);
2423
- } : p;
2424
- }) : c = [u];
2425
- var _ = -1;
2426
- c = a(c, i(r));
2427
- var w = n(l, function(p, g, y) {
2428
- var d = a(c, function(S) {
2429
- return S(p);
2430
- });
2431
- return { criteria: d, index: ++_, value: p };
2432
- });
2433
- return t(w, function(p, g) {
2434
- return s(p, g, h);
2435
- });
2436
- }
2437
- return vt = f, vt;
2438
- }
2439
- var yt, Xs;
2440
- function Bf() {
2441
- if (Xs) return yt;
2442
- Xs = 1;
2443
- var a = au(), e = jf(), r = mu(), n = qu(), t = r(function(i, s) {
2444
- if (i == null)
2445
- return [];
2446
- var u = s.length;
2447
- return u > 1 && n(i, s[0], s[1]) ? s = [] : u > 2 && n(s[0], s[1], s[2]) && (s = [s[0]]), e(i, a(s, 1), []);
2448
- });
2449
- return yt = t, yt;
2450
- }
2451
- var Nf = Bf();
2452
- const Uf = /* @__PURE__ */ ee(Nf);
2453
- var gt, Ys;
2454
- function Kf() {
2455
- if (Ys) return gt;
2456
- Ys = 1;
2457
- var a = W();
2458
- function e(r, n) {
2459
- for (var t = -1, i = r.length, s = 0, u = []; ++t < i; ) {
2460
- var o = r[t], f = n ? n(o) : o;
2461
- if (!t || !a(f, l)) {
2462
- var l = f;
2463
- u[s++] = o === 0 ? 0 : o;
2464
- }
2465
- }
2466
- return u;
2467
- }
2468
- return gt = e, gt;
2469
- }
2470
- var bt, Zs;
2471
- function Hf() {
2472
- if (Zs) return bt;
2473
- Zs = 1;
2474
- var a = Kf();
2475
- function e(r) {
2476
- return r && r.length ? a(r) : [];
2477
- }
2478
- return bt = e, bt;
2479
- }
2480
- var Wf = Hf();
2481
- const zf = /* @__PURE__ */ ee(Wf);
2482
- class $f {
2483
- constructor() {
2484
- xt(this, "config");
2485
- this.config = {
2486
- api: {
2487
- brand: "",
2488
- cashierUrl: void 0,
2489
- coinValueInCents: 1,
2490
- country: "",
2491
- currency: "",
2492
- game: "",
2493
- gameHistoryUrl: "",
2494
- homeUrl: void 0,
2495
- integration: "",
2496
- jurisdiction: null,
2497
- playMode: "FUN",
2498
- user: "",
2499
- sessionId: Mu(),
2500
- backendSessionId: void 0
2501
- },
2502
- ui: {
2503
- autoplay: {
2504
- enabled: !1,
2505
- rounds: {
2506
- enabled: !1,
2507
- showNoLimit: !1,
2508
- showCustomLimit: !1,
2509
- options: []
2510
- },
2511
- lossLimit: {
2512
- enabled: !1,
2513
- showNoLimit: !1,
2514
- showCustomLimit: !1,
2515
- options: []
2516
- },
2517
- winLimit: {
2518
- enabled: !1,
2519
- showNoLimit: !1,
2520
- showCustomLimit: !1,
2521
- options: []
2522
- },
2523
- simple: !1,
2524
- stopOnFeature: !1
2525
- },
2526
- cashier: {
2527
- enabled: !1,
2528
- balanceThreshold: [0]
2529
- },
2530
- feature: {
2531
- allowTelemetry: !1,
2532
- allowFullscreen: !1,
2533
- allowGamble: !1,
2534
- allowQuickStop: !1,
2535
- showCashier: !1,
2536
- showClock: !1,
2537
- showCloseGame: !1,
2538
- showCurrency: !0,
2539
- showFastPlay: !1,
2540
- showFeatureBuy: !1,
2541
- showFeatureIntro: !1,
2542
- showFeatureOutro: !1,
2543
- showFunModeBanner: !1,
2544
- showHistory: !1,
2545
- showLowWinCelebration: !1,
2546
- showMaximumWin: !1,
2547
- showNetPosition: !1,
2548
- showPaylineLines: !1,
2549
- showPaytable: !1,
2550
- showRoundId: !1,
2551
- showRtp: !1,
2552
- showRules: !1,
2553
- showSessionDuration: !1,
2554
- showUi: !0
2555
- },
2556
- language: "en",
2557
- minimumSpinDuration: 0,
2558
- requestTimeoutMs: 1e4,
2559
- incompleteGameResolution: {
2560
- type: "NONE"
2561
- },
2562
- realityCheck: {
2563
- sessionDurationPeriodFormat: "minutes",
2564
- showCloseGame: !1,
2565
- showHistory: !1,
2566
- showNetPosition: !1,
2567
- showSessionDuration: !1,
2568
- showSumBets: !1,
2569
- showSumWins: !1
2570
- },
2571
- skipInsufficientFundsCheck: !1,
2572
- skipSplash: !1,
2573
- cheatPanel: !1
2574
- }
2575
- };
2576
- }
2577
- }
2578
- function Vf(a, e) {
2579
- function r(n, {
2580
- maxCount: t
2581
- }) {
2582
- const i = (o) => (o == null ? void 0 : o.filter((f) => f <= t)) ?? [], s = (o) => (o == null ? void 0 : o.map((f) => Number(f))) ?? [], u = [...n, t];
2583
- return ao([s, i, Uf, zf])(u);
2584
- }
2585
- switch (e) {
2586
- case "BG":
2587
- return {
2588
- autoplay: {
2589
- lossLimit: {
2590
- enabled: !0,
2591
- showNoLimit: !1
2592
- },
2593
- winLimit: {
2594
- enabled: !0
2595
- }
2596
- }
2597
- };
2598
- case "BR":
2599
- return {
2600
- feature: {
2601
- showPaylineLines: !0
2602
- }
2603
- };
2604
- case "CA":
2605
- return {
2606
- autoplay: {
2607
- enabled: !1
2608
- },
2609
- feature: {
2610
- showFastPlay: !1,
2611
- allowQuickStop: !1,
2612
- showFeatureBuy: !1
2613
- },
2614
- minimumSpinDuration: 2.5
2615
- };
2616
- case "CO":
2617
- return {
2618
- autoplay: {
2619
- rounds: {
2620
- showNoLimit: !1,
2621
- showCustomLimit: !1,
2622
- options: r(a.autoplay.rounds.options, {
2623
- maxCount: 100
2624
- })
2625
- }
2626
- },
2627
- feature: {
2628
- showFastPlay: !1,
2629
- allowQuickStop: !1
2630
- },
2631
- minimumSpinDuration: 3
2632
- };
2633
- case "CZ":
2634
- return {
2635
- feature: {
2636
- showFastPlay: !1,
2637
- showFeatureBuy: !1,
2638
- allowGamble: !1
2639
- },
2640
- minimumSpinDuration: 2
2641
- };
2642
- // TODO: disable promo panel if available
2643
- case "DE":
2644
- return {
2645
- autoplay: {
2646
- enabled: !1
2647
- },
2648
- feature: {
2649
- showFastPlay: !1,
2650
- allowQuickStop: !1,
2651
- showFeatureBuy: !1
2652
- },
2653
- minimumSpinDuration: 5
2654
- };
2655
- // TODO: server time clock
2656
- // case 'DK':
2657
- // return {
2658
- // feature: {
2659
- // useServerTimeClock: true,
2660
- // },
2661
- // }
2662
- case "ES":
2663
- return {
2664
- autoplay: {
2665
- rounds: {
2666
- showNoLimit: !1,
2667
- showCustomLimit: !1,
2668
- options: r(a.autoplay.rounds.options, {
2669
- maxCount: 100
2670
- })
2671
- }
2672
- },
2673
- feature: {
2674
- showFastPlay: !1,
2675
- allowQuickStop: !1
2676
- },
2677
- minimumSpinDuration: 3
2678
- };
2679
- case "GR":
2680
- return {
2681
- feature: {
2682
- showFastPlay: !1,
2683
- allowQuickStop: !1,
2684
- showFeatureBuy: !1
2685
- },
2686
- minimumSpinDuration: 3
2687
- };
2688
- case "IT":
2689
- return {
2690
- feature: {
2691
- showPaylineLines: !0
2692
- }
2693
- };
2694
- case "NL":
2695
- return {
2696
- autoplay: {
2697
- enabled: !1
2698
- },
2699
- feature: {
2700
- showFeatureBuy: !1
2701
- }
2702
- };
2703
- case "PT":
2704
- return {
2705
- autoplay: {
2706
- rounds: {
2707
- showNoLimit: !1,
2708
- showCustomLimit: !1,
2709
- options: r(a.autoplay.rounds.options, {
2710
- maxCount: 100
2711
- })
2712
- }
2713
- },
2714
- feature: {
2715
- showFeatureBuy: !1,
2716
- showFastPlay: !1,
2717
- allowQuickStop: !1
2718
- },
2719
- minimumSpinDuration: 3
2720
- };
2721
- case "SE":
2722
- return {
2723
- autoplay: {
2724
- rounds: {
2725
- showNoLimit: !1,
2726
- showCustomLimit: !1,
2727
- options: r(a.autoplay.rounds.options, {
2728
- maxCount: 100
2729
- })
2730
- }
2731
- },
2732
- feature: {
2733
- showFastPlay: !1,
2734
- allowQuickStop: !1
2735
- },
2736
- minimumSpinDuration: 3
2737
- };
2738
- case "UK":
2739
- return {
2740
- autoplay: {
2741
- enabled: !1
2742
- },
2743
- feature: {
2744
- showFastPlay: !1,
2745
- allowQuickStop: !1,
2746
- showFeatureBuy: !1
2747
- },
2748
- minimumSpinDuration: 2.5
2749
- };
2750
- case "US":
2751
- return {
2752
- feature: {
2753
- showPaylineLines: !0
2754
- }
2755
- };
2756
- case "MT":
2757
- return {
2758
- feature: {
2759
- showClock: !0
2760
- }
2761
- };
2762
- case "SOCIAL":
2763
- return {
2764
- feature: {
2765
- showHistory: !1
2766
- }
2767
- };
2768
- // TODO: disable promo panel if available
2769
- case "CLASS2":
2770
- return {
2771
- autoplay: {
2772
- enabled: !1
2773
- },
2774
- feature: {
2775
- showFeatureBuy: !1
2776
- }
2777
- };
2778
- }
2779
- return {};
2780
- }
2781
- class Zf extends $f {
2782
- async getConfig() {
2783
- let e = this.config.ui;
2784
- const r = await this.fetchOperatorConfig();
2785
- e = da({}, e, r);
2786
- const n = new URLSearchParams(window.location.search), t = JSON.parse(n.get("badgeParameters") ?? "{}");
2787
- e = da({}, e, t);
2788
- const i = Vf(e, this.config.api.jurisdiction);
2789
- return e = da({}, e, i), e;
2790
- }
2791
- get mappedIntegration() {
2792
- const e = this.config.api.integration.toLowerCase(), r = this.config.api.brand.toLowerCase();
2793
- if (e === "spinomenal") {
2794
- if (r.startsWith("gg-"))
2795
- return "groove";
2796
- } else if (e === "pariplay") {
2797
- if (r.startsWith("8x1"))
2798
- return "pariplay-8x1";
2799
- } else {
2800
- if (/openbox-.*/.test(e))
2801
- return "openbox";
2802
- if (/oryx-.*/.test(e))
2803
- return "oryx";
2804
- if (/relax-.*/.test(e))
2805
- return "relax";
2806
- }
2807
- return e;
2808
- }
2809
- get mappedBrand() {
2810
- const e = this.config.api.integration.toLowerCase(), r = this.config.api.brand.toLowerCase();
2811
- return e === "bspot" && this.config.api.playMode.toLowerCase() === "fun" ? "demo" : r;
2812
- }
2813
- mapUiConfig(e) {
2814
- return e ? {
2815
- autoplay: {
2816
- enabled: e.badge.autoplayType !== 5,
2817
- rounds: {
2818
- enabled: e.badge.autoplayType !== 5,
2819
- showNoLimit: !1,
2820
- showCustomLimit: !1,
2821
- options: e.badge.autoplayRounds ?? [5, 10, 25, 75, 100]
2822
- },
2823
- lossLimit: {
2824
- enabled: e.badge.autoplayType === 1 || e.badge.autoplayType === 4,
2825
- showNoLimit: e.badge.autoplayType === 1,
2826
- showCustomLimit: e.badge.autoplayType !== 6,
2827
- options: [5, 25, 50]
2828
- },
2829
- winLimit: {
2830
- enabled: e.badge.autoplayType === 1 || e.badge.autoplayType === 4,
2831
- showNoLimit: !0,
2832
- showCustomLimit: e.badge.autoplayType !== 6,
2833
- options: [10, 20, 75]
2834
- },
2835
- simple: e.badge.autoplayType === 3
2836
- // stopOnFeature: false,
2837
- },
2838
- cashier: {
2839
- enabled: e.badge.showQuickDeposit,
2840
- balanceThreshold: e.badge.quickDepositBalanceThresholds
2841
- },
2842
- feature: {
2843
- allowTelemetry: !0,
2844
- allowFullscreen: e.defaults.fullscreen === "true",
2845
- allowGamble: e.badge.gambleHideWithAutoCollect === void 0 ? !0 : !e.badge.gambleHideWithAutoCollect,
2846
- allowQuickStop: e.badge.minimumSpinDuration === 0,
2847
- showCashier: e.badge.showQuickDeposit,
2848
- showClock: e.badge.showClock,
2849
- showCloseGame: e.badge.showCloseGameButton && (!e.badge.showCloseGameButtonOptional || !!this.config.api.homeUrl),
2850
- showCurrency: e.badge.showCurrency,
2851
- showFastPlay: e.badge.showTurboButton,
2852
- showFeatureBuy: e.badge.showHyperBonus,
2853
- // showFeatureIntro: false,
2854
- // showFeatureOutro: false,
2855
- showFunModeBanner: e.badge.showFunBanner,
2856
- showHistory: e.badge.showGameHistory,
2857
- // showLowWinCelebration: false,
2858
- // showMaximumWin: false,
2859
- // showNetPosition: false,
2860
- showPaylineLines: e.badge.showPaylineLines,
2861
- // showPaytable: false,
2862
- showRoundId: e.badge.showRoundId,
2863
- // showRtp: false,
2864
- showRules: e.badge.showGameRules,
2865
- showSessionDuration: e.badge.realityCheckShowSessionDuration,
2866
- showUi: e.badge.showGameUi
2867
- },
2868
- minimumSpinDuration: e.badge.minimumSpinDuration,
2869
- requestTimeoutMs: e.badge.requestTimeoutMs,
2870
- incompleteGameResolution: {
2871
- daysToAutoResolution: e.badge.incompleteGamesResolutionType === 3 ? e.badge.daysToAutoResolution ?? 90 : void 0,
2872
- type: e.badge.incompleteGamesResolutionType === 2 ? "MANUAL" : e.badge.incompleteGamesResolutionType === 3 ? "AUTOMATIC" : void 0
2873
- },
2874
- realityCheck: {
2875
- sessionDurationPeriodFormat: e.badge.realityCheckPeriodFormat,
2876
- showCloseGame: e.badge.realityCheckShowCloseGame,
2877
- showHistory: e.badge.realityCheckShowHistoryLink,
2878
- showNetPosition: e.badge.realityCheckShowNetGamingActivity,
2879
- showSessionDuration: e.badge.realityCheckShowSessionDuration,
2880
- showSumBets: e.badge.realityCheckShowSumBets,
2881
- showSumWins: e.badge.realityCheckShowSumWins
2882
- },
2883
- skipInsufficientFundsCheck: e.badge.skipInsufficientFundsCheck,
2884
- skipSplash: e.badge.loaderAutoContinue
2885
- } : {};
2886
- }
2887
- async fetchOperatorConfig() {
2888
- const e = "https://awscdn.kalamba.net/games/games/build/", r = this.mappedIntegration, n = this.mappedBrand;
2889
- let t = {};
2890
- try {
2891
- t = await fetch(`${e}config/${r}/cage/${n}.json`).then((i) => i.json());
2892
- } catch {
2893
- try {
2894
- t = await fetch(`${e}config/${r}/operator.json`).then((s) => s.json());
2895
- } catch {
2896
- t = await fetch(`${e}config/fun/operator.json`).then((u) => u.json());
2897
- }
2898
- }
2899
- return this.mapUiConfig(t);
2900
- }
2901
- }
2902
- export {
2903
- Zf as KalambaSdkConfigManager,
2904
- Yf as KalambaSdkWrapper,
2905
- $f as SdkConfigManager
384
+
385
+ //#endregion
386
+ //#region src/common/config/SdkConfigManager.ts
387
+ var SdkConfigManager = class {
388
+ config;
389
+ constructor() {
390
+ this.config = {
391
+ api: {
392
+ brand: "",
393
+ cashierUrl: void 0,
394
+ coinValueInCents: 1,
395
+ country: "",
396
+ currency: "",
397
+ game: "",
398
+ gameHistoryUrl: "",
399
+ homeUrl: void 0,
400
+ integration: "",
401
+ jurisdiction: null,
402
+ playMode: "FUN",
403
+ user: "",
404
+ sessionId: v4(),
405
+ backendSessionId: void 0
406
+ },
407
+ ui: {
408
+ autoplay: {
409
+ enabled: false,
410
+ rounds: {
411
+ enabled: false,
412
+ showNoLimit: false,
413
+ showCustomLimit: false,
414
+ options: []
415
+ },
416
+ lossLimit: {
417
+ enabled: false,
418
+ showNoLimit: false,
419
+ showCustomLimit: false,
420
+ options: []
421
+ },
422
+ winLimit: {
423
+ enabled: false,
424
+ showNoLimit: false,
425
+ showCustomLimit: false,
426
+ options: []
427
+ },
428
+ simple: false,
429
+ stopOnFeature: false
430
+ },
431
+ cashier: {
432
+ enabled: false,
433
+ balanceThreshold: [0]
434
+ },
435
+ feature: {
436
+ allowTelemetry: false,
437
+ allowFullscreen: false,
438
+ allowGamble: false,
439
+ allowQuickStop: false,
440
+ showCashier: false,
441
+ showClock: false,
442
+ showCloseGame: false,
443
+ showCurrency: true,
444
+ showFastPlay: false,
445
+ showFeatureBuy: false,
446
+ showFeatureIntro: false,
447
+ showFeatureOutro: false,
448
+ showFunModeBanner: false,
449
+ showHistory: false,
450
+ showLowWinCelebration: false,
451
+ showMaximumWin: false,
452
+ showNetPosition: false,
453
+ showPaylineLines: false,
454
+ showPaytable: false,
455
+ showRoundId: false,
456
+ showRtp: false,
457
+ showRules: false,
458
+ showSessionDuration: false,
459
+ showUi: true
460
+ },
461
+ language: "en",
462
+ minimumSpinDuration: 0,
463
+ requestTimeoutMs: 1e4,
464
+ incompleteGameResolution: { type: "NONE" },
465
+ realityCheck: {
466
+ sessionDurationPeriodFormat: "minutes",
467
+ showCloseGame: false,
468
+ showHistory: false,
469
+ showNetPosition: false,
470
+ showSessionDuration: false,
471
+ showSumBets: false,
472
+ showSumWins: false
473
+ },
474
+ skipInsufficientFundsCheck: false,
475
+ skipSplash: false,
476
+ cheatPanel: false
477
+ }
478
+ };
479
+ }
480
+ };
481
+
482
+ //#endregion
483
+ //#region src/common/config/KalambaSdkConfigManager.ts
484
+ function jurisdictionConfigOverrides(config, jurisdiction) {
485
+ function limitRounds(autoPlayRounds, { maxCount }) {
486
+ const limitCount = (rounds) => rounds?.filter((count) => count <= maxCount) ?? [];
487
+ const castToNumber = (rounds) => rounds?.map((count) => Number(count)) ?? [];
488
+ const rounds = [...autoPlayRounds, maxCount];
489
+ return flow([
490
+ castToNumber,
491
+ limitCount,
492
+ sortBy,
493
+ sortedUniq
494
+ ])(rounds);
495
+ }
496
+ switch (jurisdiction) {
497
+ case "BG": return { autoplay: {
498
+ lossLimit: {
499
+ enabled: true,
500
+ showNoLimit: false
501
+ },
502
+ winLimit: { enabled: true }
503
+ } };
504
+ case "BR": return { feature: { showPaylineLines: true } };
505
+ case "CA": return {
506
+ autoplay: { enabled: false },
507
+ feature: {
508
+ showFastPlay: false,
509
+ allowQuickStop: false,
510
+ showFeatureBuy: false
511
+ },
512
+ minimumSpinDuration: 2.5
513
+ };
514
+ case "CO": return {
515
+ autoplay: { rounds: {
516
+ showNoLimit: false,
517
+ showCustomLimit: false,
518
+ options: limitRounds(config.autoplay.rounds.options, { maxCount: 100 })
519
+ } },
520
+ feature: {
521
+ showFastPlay: false,
522
+ allowQuickStop: false
523
+ },
524
+ minimumSpinDuration: 3
525
+ };
526
+ case "CZ": return {
527
+ feature: {
528
+ showFastPlay: false,
529
+ showFeatureBuy: false,
530
+ allowGamble: false
531
+ },
532
+ minimumSpinDuration: 2
533
+ };
534
+ case "DE": return {
535
+ autoplay: { enabled: false },
536
+ feature: {
537
+ showFastPlay: false,
538
+ allowQuickStop: false,
539
+ showFeatureBuy: false
540
+ },
541
+ minimumSpinDuration: 5
542
+ };
543
+ case "ES": return {
544
+ autoplay: { rounds: {
545
+ showNoLimit: false,
546
+ showCustomLimit: false,
547
+ options: limitRounds(config.autoplay.rounds.options, { maxCount: 100 })
548
+ } },
549
+ feature: {
550
+ showFastPlay: false,
551
+ allowQuickStop: false
552
+ },
553
+ minimumSpinDuration: 3
554
+ };
555
+ case "GR": return {
556
+ feature: {
557
+ showFastPlay: false,
558
+ allowQuickStop: false,
559
+ showFeatureBuy: false
560
+ },
561
+ minimumSpinDuration: 3
562
+ };
563
+ case "IT": return { feature: { showPaylineLines: true } };
564
+ case "NL": return {
565
+ autoplay: { enabled: false },
566
+ feature: { showFeatureBuy: false }
567
+ };
568
+ case "PT": return {
569
+ autoplay: { rounds: {
570
+ showNoLimit: false,
571
+ showCustomLimit: false,
572
+ options: limitRounds(config.autoplay.rounds.options, { maxCount: 100 })
573
+ } },
574
+ feature: {
575
+ showFeatureBuy: false,
576
+ showFastPlay: false,
577
+ allowQuickStop: false
578
+ },
579
+ minimumSpinDuration: 3
580
+ };
581
+ case "SE": return {
582
+ autoplay: { rounds: {
583
+ showNoLimit: false,
584
+ showCustomLimit: false,
585
+ options: limitRounds(config.autoplay.rounds.options, { maxCount: 100 })
586
+ } },
587
+ feature: {
588
+ showFastPlay: false,
589
+ allowQuickStop: false
590
+ },
591
+ minimumSpinDuration: 3
592
+ };
593
+ case "UK": return {
594
+ autoplay: { enabled: false },
595
+ feature: {
596
+ showFastPlay: false,
597
+ allowQuickStop: false,
598
+ showFeatureBuy: false
599
+ },
600
+ minimumSpinDuration: 2.5
601
+ };
602
+ case "US": return { feature: { showPaylineLines: true } };
603
+ case "MT": return { feature: { showClock: true } };
604
+ case "SOCIAL": return { feature: { showHistory: false } };
605
+ case "CLASS2": return {
606
+ autoplay: { enabled: false },
607
+ feature: { showFeatureBuy: false }
608
+ };
609
+ }
610
+ return {};
611
+ }
612
+ var KalambaSdkConfigManager = class extends SdkConfigManager {
613
+ async getConfig() {
614
+ let uiConfig = this.config.ui;
615
+ const operatorConfig = await this.fetchOperatorConfig();
616
+ uiConfig = merge({}, uiConfig, operatorConfig);
617
+ const searchParams = new URLSearchParams(window.location.search);
618
+ const badgeOverrides = JSON.parse(searchParams.get("badgeParameters") ?? "{}");
619
+ uiConfig = merge({}, uiConfig, badgeOverrides);
620
+ const jurisdictionOverrides = jurisdictionConfigOverrides(uiConfig, this.config.api.jurisdiction);
621
+ uiConfig = merge({}, uiConfig, jurisdictionOverrides);
622
+ return uiConfig;
623
+ }
624
+ get mappedIntegration() {
625
+ const integration = this.config.api.integration.toLowerCase();
626
+ const brand = this.config.api.brand.toLowerCase();
627
+ if (integration === "spinomenal") {
628
+ if (brand.startsWith("gg-")) return "groove";
629
+ } else if (integration === "pariplay") {
630
+ if (brand.startsWith("8x1")) return "pariplay-8x1";
631
+ } else if (/openbox-.*/.test(integration)) return "openbox";
632
+ else if (/oryx-.*/.test(integration)) return "oryx";
633
+ else if (/relax-.*/.test(integration)) return "relax";
634
+ return integration;
635
+ }
636
+ get mappedBrand() {
637
+ const integration = this.config.api.integration.toLowerCase();
638
+ const brand = this.config.api.brand.toLowerCase();
639
+ if (integration === "bspot" && this.config.api.playMode.toLowerCase() === "fun") return "demo";
640
+ return brand;
641
+ }
642
+ mapUiConfig(config) {
643
+ if (!config) return {};
644
+ return {
645
+ autoplay: {
646
+ enabled: config.badge.autoplayType !== 5,
647
+ rounds: {
648
+ enabled: config.badge.autoplayType !== 5,
649
+ showNoLimit: false,
650
+ showCustomLimit: false,
651
+ options: config.badge.autoplayRounds ?? [
652
+ 5,
653
+ 10,
654
+ 25,
655
+ 75,
656
+ 100
657
+ ]
658
+ },
659
+ lossLimit: {
660
+ enabled: config.badge.autoplayType === 1 || config.badge.autoplayType === 4,
661
+ showNoLimit: config.badge.autoplayType === 1,
662
+ showCustomLimit: config.badge.autoplayType !== 6,
663
+ options: [
664
+ 5,
665
+ 25,
666
+ 50
667
+ ]
668
+ },
669
+ winLimit: {
670
+ enabled: config.badge.autoplayType === 1 || config.badge.autoplayType === 4,
671
+ showNoLimit: true,
672
+ showCustomLimit: config.badge.autoplayType !== 6,
673
+ options: [
674
+ 10,
675
+ 20,
676
+ 75
677
+ ]
678
+ },
679
+ simple: config.badge.autoplayType === 3
680
+ },
681
+ cashier: {
682
+ enabled: config.badge.showQuickDeposit,
683
+ balanceThreshold: config.badge.quickDepositBalanceThresholds
684
+ },
685
+ feature: {
686
+ allowTelemetry: true,
687
+ allowFullscreen: config.defaults.fullscreen === "true",
688
+ allowGamble: config.badge.gambleHideWithAutoCollect === void 0 ? true : !config.badge.gambleHideWithAutoCollect,
689
+ allowQuickStop: config.badge.minimumSpinDuration === 0,
690
+ showCashier: config.badge.showQuickDeposit,
691
+ showClock: config.badge.showClock,
692
+ showCloseGame: config.badge.showCloseGameButton && (!config.badge.showCloseGameButtonOptional || !!this.config.api.homeUrl),
693
+ showCurrency: config.badge.showCurrency,
694
+ showFastPlay: config.badge.showTurboButton,
695
+ showFeatureBuy: config.badge.showHyperBonus,
696
+ showFunModeBanner: config.badge.showFunBanner,
697
+ showHistory: config.badge.showGameHistory,
698
+ showPaylineLines: config.badge.showPaylineLines,
699
+ showRoundId: config.badge.showRoundId,
700
+ showRules: config.badge.showGameRules,
701
+ showSessionDuration: config.badge.realityCheckShowSessionDuration,
702
+ showUi: config.badge.showGameUi
703
+ },
704
+ minimumSpinDuration: config.badge.minimumSpinDuration,
705
+ requestTimeoutMs: config.badge.requestTimeoutMs,
706
+ incompleteGameResolution: {
707
+ daysToAutoResolution: config.badge.incompleteGamesResolutionType === 3 ? config.badge.daysToAutoResolution ?? 90 : void 0,
708
+ type: config.badge.incompleteGamesResolutionType === 2 ? "MANUAL" : config.badge.incompleteGamesResolutionType === 3 ? "AUTOMATIC" : void 0
709
+ },
710
+ realityCheck: {
711
+ sessionDurationPeriodFormat: config.badge.realityCheckPeriodFormat,
712
+ showCloseGame: config.badge.realityCheckShowCloseGame,
713
+ showHistory: config.badge.realityCheckShowHistoryLink,
714
+ showNetPosition: config.badge.realityCheckShowNetGamingActivity,
715
+ showSessionDuration: config.badge.realityCheckShowSessionDuration,
716
+ showSumBets: config.badge.realityCheckShowSumBets,
717
+ showSumWins: config.badge.realityCheckShowSumWins
718
+ },
719
+ skipInsufficientFundsCheck: config.badge.skipInsufficientFundsCheck,
720
+ skipSplash: config.badge.loaderAutoContinue
721
+ };
722
+ }
723
+ async fetchOperatorConfig() {
724
+ const rootUrl = "https://awscdn.kalamba.net/games/games/build/";
725
+ const integration = this.mappedIntegration;
726
+ const brand = this.mappedBrand;
727
+ let config = {};
728
+ try {
729
+ config = await fetch(`${rootUrl}config/${integration}/cage/${brand}.json`).then((r) => r.json());
730
+ } catch (e) {
731
+ try {
732
+ config = await fetch(`${rootUrl}config/${integration}/operator.json`).then((r) => r.json());
733
+ } catch (e) {
734
+ config = await fetch(`${rootUrl}config/fun/operator.json`).then((r) => r.json());
735
+ }
736
+ }
737
+ return this.mapUiConfig(config);
738
+ }
2906
739
  };
740
+
741
+ //#endregion
742
+ export { KalambaSdkConfigManager, KalambaSdkWrapper, SdkConfigManager };