@kalamba/sdk 0.43.0 → 0.48.1

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.
@@ -22,6 +22,7 @@ const RgsErrorCode = {
22
22
  FREE_ROUNDS_PROCESSING_ERROR: "FREE_ROUNDS_PROCESSING_ERROR",
23
23
  WEB_SESSION_NOT_OPEN: "WEB_SESSION_NOT_OPEN",
24
24
  GAMING_LIMITS_REACHED: "GAMING_LIMITS_REACHED",
25
+ GAMING_LIMITS_REACHED_BET: "GAMING_LIMITS_REACHED_BET",
25
26
  OUT_OF_MONEY: "OUT_OF_MONEY",
26
27
  UNFINISHED_ROUND_IN_PROGRESS: "UNFINISHED_ROUND_IN_PROGRESS",
27
28
  ACCESS_DENIED: "ACCESS_DENIED",
@@ -55,6 +56,7 @@ const RgsErrorAction = {
55
56
  FREE_ROUNDS_PROCESSING_ERROR: "RELOAD",
56
57
  WEB_SESSION_NOT_OPEN: "RELOAD",
57
58
  GAMING_LIMITS_REACHED: "CLOSE",
59
+ GAMING_LIMITS_REACHED_BET: "CONTINUE",
58
60
  OUT_OF_MONEY: "CONTINUE",
59
61
  UNFINISHED_ROUND_IN_PROGRESS: "CLOSE",
60
62
  ACCESS_DENIED: "CLOSE",
@@ -21,6 +21,7 @@ const RgsErrorCode = {
21
21
  FREE_ROUNDS_PROCESSING_ERROR: "FREE_ROUNDS_PROCESSING_ERROR",
22
22
  WEB_SESSION_NOT_OPEN: "WEB_SESSION_NOT_OPEN",
23
23
  GAMING_LIMITS_REACHED: "GAMING_LIMITS_REACHED",
24
+ GAMING_LIMITS_REACHED_BET: "GAMING_LIMITS_REACHED_BET",
24
25
  OUT_OF_MONEY: "OUT_OF_MONEY",
25
26
  UNFINISHED_ROUND_IN_PROGRESS: "UNFINISHED_ROUND_IN_PROGRESS",
26
27
  ACCESS_DENIED: "ACCESS_DENIED",
@@ -54,6 +55,7 @@ const RgsErrorAction = {
54
55
  FREE_ROUNDS_PROCESSING_ERROR: "RELOAD",
55
56
  WEB_SESSION_NOT_OPEN: "RELOAD",
56
57
  GAMING_LIMITS_REACHED: "CLOSE",
58
+ GAMING_LIMITS_REACHED_BET: "CONTINUE",
57
59
  OUT_OF_MONEY: "CONTINUE",
58
60
  UNFINISHED_ROUND_IN_PROGRESS: "CLOSE",
59
61
  ACCESS_DENIED: "CLOSE",
@@ -35,6 +35,7 @@ declare const RgsErrorCode: {
35
35
  readonly FREE_ROUNDS_PROCESSING_ERROR: "FREE_ROUNDS_PROCESSING_ERROR";
36
36
  readonly WEB_SESSION_NOT_OPEN: "WEB_SESSION_NOT_OPEN";
37
37
  readonly GAMING_LIMITS_REACHED: "GAMING_LIMITS_REACHED";
38
+ readonly GAMING_LIMITS_REACHED_BET: "GAMING_LIMITS_REACHED_BET";
38
39
  readonly OUT_OF_MONEY: "OUT_OF_MONEY";
39
40
  readonly UNFINISHED_ROUND_IN_PROGRESS: "UNFINISHED_ROUND_IN_PROGRESS";
40
41
  readonly ACCESS_DENIED: "ACCESS_DENIED";
@@ -68,6 +69,7 @@ type NestedRecord<K extends string | number | symbol, V> = { [k in K]: V | Neste
68
69
  type WrapperConfig = {
69
70
  gameName: string;
70
71
  gameVersion: string;
72
+ sdkVersion?: string;
71
73
  showFreeRounds: boolean;
72
74
  showPromoPanel: boolean;
73
75
  showRealityCheck: boolean;
@@ -119,6 +121,7 @@ interface SdkConfig {
119
121
  jurisdiction: string | null;
120
122
  playMode: 'FUN' | 'REAL';
121
123
  user: string;
124
+ username: string;
122
125
  sessionId: string;
123
126
  backendSessionId?: string;
124
127
  };
@@ -153,6 +156,7 @@ interface SdkConfig {
153
156
  showNetPosition: boolean;
154
157
  showPaylineLines: boolean;
155
158
  showPaytable: boolean;
159
+ showPromoPanel: boolean;
156
160
  showRoundId: boolean;
157
161
  showRtp: boolean;
158
162
  showRules: boolean;
@@ -384,6 +388,7 @@ type WrapperOnlyMessagePayloadMap = {
384
388
  cashier: Cashier;
385
389
  close: never;
386
390
  configured: SdkConfig;
391
+ wrapperConfigured: never;
387
392
  error: SdkError;
388
393
  freeze: never;
389
394
  history: History;
@@ -269,6 +269,14 @@ const CUSTOM_CURRENCIES = {
269
269
  maximumFractionDigits: 4,
270
270
  minimumFractionDigits: 4
271
271
  },
272
+ VNDC: {
273
+ maximumFractionDigits: 2,
274
+ minimumFractionDigits: 2
275
+ },
276
+ VSYS: {
277
+ maximumFractionDigits: 2,
278
+ minimumFractionDigits: 2
279
+ },
272
280
  SOL: {
273
281
  maximumFractionDigits: 4,
274
282
  minimumFractionDigits: 4
@@ -449,7 +457,7 @@ function getCurrencyNumberFormatOptions(currency) {
449
457
  }
450
458
  function formatCurrencyAsCurrency(number, currencyFormatter, currency) {
451
459
  const formattedNumber = currencyFormatter.format(+number);
452
- if (isCustomCurrency(currency)) return formattedNumber.replace(CUSTOM_CURRENCY_CODE, CUSTOM_CURRENCIES[currency].displayAs ?? currency);
460
+ if (isCustomCurrency(currency)) return formattedNumber.replace(CUSTOM_CURRENCY_CODE, CUSTOM_CURRENCIES[currency]?.displayAs ?? currency);
453
461
  return formattedNumber;
454
462
  }
455
463
  function formatCurrencyAsNumberPure(config, number, currencyFormatter) {
@@ -268,6 +268,14 @@ const CUSTOM_CURRENCIES = {
268
268
  maximumFractionDigits: 4,
269
269
  minimumFractionDigits: 4
270
270
  },
271
+ VNDC: {
272
+ maximumFractionDigits: 2,
273
+ minimumFractionDigits: 2
274
+ },
275
+ VSYS: {
276
+ maximumFractionDigits: 2,
277
+ minimumFractionDigits: 2
278
+ },
271
279
  SOL: {
272
280
  maximumFractionDigits: 4,
273
281
  minimumFractionDigits: 4
@@ -448,7 +456,7 @@ function getCurrencyNumberFormatOptions(currency) {
448
456
  }
449
457
  function formatCurrencyAsCurrency(number, currencyFormatter, currency) {
450
458
  const formattedNumber = currencyFormatter.format(+number);
451
- if (isCustomCurrency(currency)) return formattedNumber.replace(CUSTOM_CURRENCY_CODE, CUSTOM_CURRENCIES[currency].displayAs ?? currency);
459
+ if (isCustomCurrency(currency)) return formattedNumber.replace(CUSTOM_CURRENCY_CODE, CUSTOM_CURRENCIES[currency]?.displayAs ?? currency);
452
460
  return formattedNumber;
453
461
  }
454
462
  function formatCurrencyAsNumberPure(config, number, currencyFormatter) {
@@ -35,6 +35,7 @@ declare const RgsErrorCode: {
35
35
  readonly FREE_ROUNDS_PROCESSING_ERROR: "FREE_ROUNDS_PROCESSING_ERROR";
36
36
  readonly WEB_SESSION_NOT_OPEN: "WEB_SESSION_NOT_OPEN";
37
37
  readonly GAMING_LIMITS_REACHED: "GAMING_LIMITS_REACHED";
38
+ readonly GAMING_LIMITS_REACHED_BET: "GAMING_LIMITS_REACHED_BET";
38
39
  readonly OUT_OF_MONEY: "OUT_OF_MONEY";
39
40
  readonly UNFINISHED_ROUND_IN_PROGRESS: "UNFINISHED_ROUND_IN_PROGRESS";
40
41
  readonly ACCESS_DENIED: "ACCESS_DENIED";
@@ -68,6 +69,7 @@ type NestedRecord<K extends string | number | symbol, V> = { [k in K]: V | Neste
68
69
  type WrapperConfig = {
69
70
  gameName: string;
70
71
  gameVersion: string;
72
+ sdkVersion?: string;
71
73
  showFreeRounds: boolean;
72
74
  showPromoPanel: boolean;
73
75
  showRealityCheck: boolean;
@@ -119,6 +121,7 @@ interface SdkConfig {
119
121
  jurisdiction: string | null;
120
122
  playMode: 'FUN' | 'REAL';
121
123
  user: string;
124
+ username: string;
122
125
  sessionId: string;
123
126
  backendSessionId?: string;
124
127
  };
@@ -153,6 +156,7 @@ interface SdkConfig {
153
156
  showNetPosition: boolean;
154
157
  showPaylineLines: boolean;
155
158
  showPaytable: boolean;
159
+ showPromoPanel: boolean;
156
160
  showRoundId: boolean;
157
161
  showRtp: boolean;
158
162
  showRules: boolean;
@@ -384,6 +388,7 @@ type WrapperOnlyMessagePayloadMap = {
384
388
  cashier: Cashier;
385
389
  close: never;
386
390
  configured: SdkConfig;
391
+ wrapperConfigured: never;
387
392
  error: SdkError;
388
393
  freeze: never;
389
394
  history: History;
@@ -2,7 +2,7 @@
2
2
  * BSD 3-Clause License
3
3
  * Copyright (c) 2026, Kalamba Games Limited
4
4
  */
5
- import { A as OpenGameRequest, C as FreeRoundsResponse, N as PlayRequestEnhanced, P as PlayResponse, S as FreeRoundsRequest, W as RgsErrorWithType, _ as ForwardToPluginsMessagePayload, c as ContractPlayPayload, f as DomainMessagePayload, h as ForwardToPluginsMessage, it as WrapperState, j as OpenGameResponse, nt as WrapperConfig, q as SdkConfig, t as I18n, u as DomainMessage, w as GetBalanceResponse } from "./i18n-BtKlSq1-.js";
5
+ import { A as OpenGameRequest, C as FreeRoundsResponse, N as PlayRequestEnhanced, P as PlayResponse, S as FreeRoundsRequest, W as RgsErrorWithType, _ as ForwardToPluginsMessagePayload, c as ContractPlayPayload, f as DomainMessagePayload, h as ForwardToPluginsMessage, it as WrapperState, j as OpenGameResponse, nt as WrapperConfig, q as SdkConfig, t as I18n, u as DomainMessage, w as GetBalanceResponse } from "./i18n-BSkfwQSR.js";
6
6
 
7
7
  //#region src/common/logger.d.ts
8
8
  declare function createLogger(prefix: string, style: string): (message: string, ...args: any[]) => void;
@@ -2,7 +2,7 @@
2
2
  * BSD 3-Clause License
3
3
  * Copyright (c) 2026, Kalamba Games Limited
4
4
  */
5
- import { A as OpenGameRequest, C as FreeRoundsResponse, N as PlayRequestEnhanced, P as PlayResponse, S as FreeRoundsRequest, W as RgsErrorWithType, _ as ForwardToPluginsMessagePayload, c as ContractPlayPayload, f as DomainMessagePayload, h as ForwardToPluginsMessage, it as WrapperState, j as OpenGameResponse, nt as WrapperConfig, q as SdkConfig, t as I18n, u as DomainMessage, w as GetBalanceResponse } from "./i18n-DK-Smr79.cjs";
5
+ import { A as OpenGameRequest, C as FreeRoundsResponse, N as PlayRequestEnhanced, P as PlayResponse, S as FreeRoundsRequest, W as RgsErrorWithType, _ as ForwardToPluginsMessagePayload, c as ContractPlayPayload, f as DomainMessagePayload, h as ForwardToPluginsMessage, it as WrapperState, j as OpenGameResponse, nt as WrapperConfig, q as SdkConfig, t as I18n, u as DomainMessage, w as GetBalanceResponse } from "./i18n-Dmb3OPNy.cjs";
6
6
 
7
7
  //#region src/common/logger.d.ts
8
8
  declare function createLogger(prefix: string, style: string): (message: string, ...args: any[]) => void;
package/dist/index.cjs CHANGED
@@ -3,8 +3,8 @@
3
3
  * Copyright (c) 2026, Kalamba Games Limited
4
4
  */
5
5
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
6
- const require_errors = require('./errors-BUjKnbx5.cjs');
7
- const require_i18n = require('./i18n-By5KuEqp.cjs');
6
+ const require_errors = require('./errors-DXZbBm5R.cjs');
7
+ const require_i18n = require('./i18n-C_kZhl3l.cjs');
8
8
  let lodash_es = require("lodash-es");
9
9
 
10
10
  //#region src/sdk/KalambaSdk.ts
@@ -76,7 +76,13 @@ var KalambaSdk = class {
76
76
  }, "*");
77
77
  }
78
78
  configure(payload) {
79
- this.send("configure", payload);
79
+ return new Promise((resolve) => {
80
+ this.on("wrapperConfigured", () => resolve(), { once: true });
81
+ this.send("configure", {
82
+ ...payload,
83
+ sdkVersion: "0.48.1"
84
+ });
85
+ });
80
86
  }
81
87
  async openGame(contract, extra) {
82
88
  const configuredPromise = new Promise((resolve) => this.on("configured", resolve, { once: true }));
package/dist/index.d.cts CHANGED
@@ -2,7 +2,7 @@
2
2
  * BSD 3-Clause License
3
3
  * Copyright (c) 2026, Kalamba Games Limited
4
4
  */
5
- import { $ as ToRgsPluginsForwardedMessageMap, A as OpenGameRequest, B as PrefixedMessagePayload, C as FreeRoundsResponse, D as MessageMap, E as Message, F as PluginDomain, G as RgsOnlyMessagePayloadMap, H as RealityCheckConfig, I as PrefixedForwardToPluginsMessage, J as SdkError, K as RgsResponse, L as PrefixedMessage, M as PlayRequest, N as PlayRequestEnhanced, O as MessageMessageEvent, P as PlayResponse, Q as ToCasinoPluginsForwardedMessageMap, R as PrefixedMessageMap, S as FreeRoundsRequest, T as History, U as RgsErrorData, V as PrefixedMessagePayloadMap, W as RgsErrorWithType, X as Settings, Y as SdkOnlyMessagePayloadMap, Z as TelemetryOnlyMessagePayloadMap, _ as ForwardToPluginsMessagePayload, a as CashierConfig, b as FreeRound, c as ContractPlayPayload, ct as TimeoutError, d as DomainMessageMessageEvent, dt as FormatCurrencyOptions, et as ToSdkForwardedMessageMap, f as DomainMessagePayload, g as ForwardToPluginsMessageMap, h as ForwardToPluginsMessage, i as Cashier, it as WrapperState, j as OpenGameResponse, k as MessagePayload, l as DomainAllowedPayloadMap, lt as CurrencyFormat, m as DomainToMessagePayloadMap, n as AutoplayLimit, nt as WrapperConfig, o as CasinoOnlyMessagePayloadMap, ot as RgsError, p as DomainPrefix, q as SdkConfig, r as Bet, rt as WrapperOnlyMessagePayloadMap, s as ContractOpenGamePayload, st as RgsErrorCode, t as I18n, tt as ToTelemetryPluginsForwardedMessageMap, u as DomainMessage, ut as CurrencyNumber, v as ForwardToSdkMessage, w as GetBalanceResponse, x as FreeRoundsAction, y as ForwardToSdkMessagePayload, z as PrefixedMessageMessageEvent } from "./i18n-DK-Smr79.cjs";
5
+ import { $ as ToRgsPluginsForwardedMessageMap, A as OpenGameRequest, B as PrefixedMessagePayload, C as FreeRoundsResponse, D as MessageMap, E as Message, F as PluginDomain, G as RgsOnlyMessagePayloadMap, H as RealityCheckConfig, I as PrefixedForwardToPluginsMessage, J as SdkError, K as RgsResponse, L as PrefixedMessage, M as PlayRequest, N as PlayRequestEnhanced, O as MessageMessageEvent, P as PlayResponse, Q as ToCasinoPluginsForwardedMessageMap, R as PrefixedMessageMap, S as FreeRoundsRequest, T as History, U as RgsErrorData, V as PrefixedMessagePayloadMap, W as RgsErrorWithType, X as Settings, Y as SdkOnlyMessagePayloadMap, Z as TelemetryOnlyMessagePayloadMap, _ as ForwardToPluginsMessagePayload, a as CashierConfig, b as FreeRound, c as ContractPlayPayload, ct as TimeoutError, d as DomainMessageMessageEvent, dt as FormatCurrencyOptions, et as ToSdkForwardedMessageMap, f as DomainMessagePayload, g as ForwardToPluginsMessageMap, h as ForwardToPluginsMessage, i as Cashier, it as WrapperState, j as OpenGameResponse, k as MessagePayload, l as DomainAllowedPayloadMap, lt as CurrencyFormat, m as DomainToMessagePayloadMap, n as AutoplayLimit, nt as WrapperConfig, o as CasinoOnlyMessagePayloadMap, ot as RgsError, p as DomainPrefix, q as SdkConfig, r as Bet, rt as WrapperOnlyMessagePayloadMap, s as ContractOpenGamePayload, st as RgsErrorCode, t as I18n, tt as ToTelemetryPluginsForwardedMessageMap, u as DomainMessage, ut as CurrencyNumber, v as ForwardToSdkMessage, w as GetBalanceResponse, x as FreeRoundsAction, y as ForwardToSdkMessagePayload, z as PrefixedMessageMessageEvent } from "./i18n-Dmb3OPNy.cjs";
6
6
 
7
7
  //#region src/sdk/KalambaSdk.d.ts
8
8
  type MessageType = 'openGame' | 'play';
@@ -39,7 +39,7 @@ declare class KalambaSdk<TCodecs extends Codecs = typeof defaultCodecs> {
39
39
  protected request<M extends DomainMessage<'sdk'>>(message: M, ...[payload]: DomainMessagePayload<'sdk', M> extends never ? [] : [payload: DomainMessagePayload<'sdk', M>]): Promise<RgsResponse<M>>;
40
40
  on<M extends DomainMessage<'wrapper'> | ForwardToSdkMessage>(message: M, listener: (payload: M extends DomainMessage<'wrapper'> ? DomainMessagePayload<'wrapper', M> : M extends ForwardToSdkMessage ? ForwardToSdkMessagePayload<M> : never) => void, options?: AddEventListenerOptions): () => void;
41
41
  send<M extends DomainMessage<'sdk'>>(message: M, ...[payload]: DomainMessagePayload<'sdk', M> extends never ? [] : undefined extends DomainMessagePayload<'sdk', M> ? [] | [DomainMessagePayload<'sdk', M>] : [DomainMessagePayload<'sdk', M>]): void;
42
- configure(payload: DomainMessagePayload<'sdk', 'configure'>): void;
42
+ configure(payload: DomainMessagePayload<'sdk', 'configure'>): Promise<void>;
43
43
  openGame(contract?: ContractOpenGamePayload, extra?: Parameters<TCodecs['openGame']['request']['encode']>[0]): Promise<OpenGameResponse<ReturnType<TCodecs['openGame']['response']['decode']>>>;
44
44
  play(contract: ContractPlayPayload, extra?: Parameters<TCodecs['play']['request']['encode']>[0]): Promise<PlayResponse<ReturnType<TCodecs['play']['response']['decode']>>>;
45
45
  }
package/dist/index.d.ts CHANGED
@@ -2,7 +2,7 @@
2
2
  * BSD 3-Clause License
3
3
  * Copyright (c) 2026, Kalamba Games Limited
4
4
  */
5
- import { $ as ToRgsPluginsForwardedMessageMap, A as OpenGameRequest, B as PrefixedMessagePayload, C as FreeRoundsResponse, D as MessageMap, E as Message, F as PluginDomain, G as RgsOnlyMessagePayloadMap, H as RealityCheckConfig, I as PrefixedForwardToPluginsMessage, J as SdkError, K as RgsResponse, L as PrefixedMessage, M as PlayRequest, N as PlayRequestEnhanced, O as MessageMessageEvent, P as PlayResponse, Q as ToCasinoPluginsForwardedMessageMap, R as PrefixedMessageMap, S as FreeRoundsRequest, T as History, U as RgsErrorData, V as PrefixedMessagePayloadMap, W as RgsErrorWithType, X as Settings, Y as SdkOnlyMessagePayloadMap, Z as TelemetryOnlyMessagePayloadMap, _ as ForwardToPluginsMessagePayload, a as CashierConfig, b as FreeRound, c as ContractPlayPayload, ct as TimeoutError, d as DomainMessageMessageEvent, dt as FormatCurrencyOptions, et as ToSdkForwardedMessageMap, f as DomainMessagePayload, g as ForwardToPluginsMessageMap, h as ForwardToPluginsMessage, i as Cashier, it as WrapperState, j as OpenGameResponse, k as MessagePayload, l as DomainAllowedPayloadMap, lt as CurrencyFormat, m as DomainToMessagePayloadMap, n as AutoplayLimit, nt as WrapperConfig, o as CasinoOnlyMessagePayloadMap, ot as RgsError, p as DomainPrefix, q as SdkConfig, r as Bet, rt as WrapperOnlyMessagePayloadMap, s as ContractOpenGamePayload, st as RgsErrorCode, t as I18n, tt as ToTelemetryPluginsForwardedMessageMap, u as DomainMessage, ut as CurrencyNumber, v as ForwardToSdkMessage, w as GetBalanceResponse, x as FreeRoundsAction, y as ForwardToSdkMessagePayload, z as PrefixedMessageMessageEvent } from "./i18n-BtKlSq1-.js";
5
+ import { $ as ToRgsPluginsForwardedMessageMap, A as OpenGameRequest, B as PrefixedMessagePayload, C as FreeRoundsResponse, D as MessageMap, E as Message, F as PluginDomain, G as RgsOnlyMessagePayloadMap, H as RealityCheckConfig, I as PrefixedForwardToPluginsMessage, J as SdkError, K as RgsResponse, L as PrefixedMessage, M as PlayRequest, N as PlayRequestEnhanced, O as MessageMessageEvent, P as PlayResponse, Q as ToCasinoPluginsForwardedMessageMap, R as PrefixedMessageMap, S as FreeRoundsRequest, T as History, U as RgsErrorData, V as PrefixedMessagePayloadMap, W as RgsErrorWithType, X as Settings, Y as SdkOnlyMessagePayloadMap, Z as TelemetryOnlyMessagePayloadMap, _ as ForwardToPluginsMessagePayload, a as CashierConfig, b as FreeRound, c as ContractPlayPayload, ct as TimeoutError, d as DomainMessageMessageEvent, dt as FormatCurrencyOptions, et as ToSdkForwardedMessageMap, f as DomainMessagePayload, g as ForwardToPluginsMessageMap, h as ForwardToPluginsMessage, i as Cashier, it as WrapperState, j as OpenGameResponse, k as MessagePayload, l as DomainAllowedPayloadMap, lt as CurrencyFormat, m as DomainToMessagePayloadMap, n as AutoplayLimit, nt as WrapperConfig, o as CasinoOnlyMessagePayloadMap, ot as RgsError, p as DomainPrefix, q as SdkConfig, r as Bet, rt as WrapperOnlyMessagePayloadMap, s as ContractOpenGamePayload, st as RgsErrorCode, t as I18n, tt as ToTelemetryPluginsForwardedMessageMap, u as DomainMessage, ut as CurrencyNumber, v as ForwardToSdkMessage, w as GetBalanceResponse, x as FreeRoundsAction, y as ForwardToSdkMessagePayload, z as PrefixedMessageMessageEvent } from "./i18n-BSkfwQSR.js";
6
6
 
7
7
  //#region src/sdk/KalambaSdk.d.ts
8
8
  type MessageType = 'openGame' | 'play';
@@ -39,7 +39,7 @@ declare class KalambaSdk<TCodecs extends Codecs = typeof defaultCodecs> {
39
39
  protected request<M extends DomainMessage<'sdk'>>(message: M, ...[payload]: DomainMessagePayload<'sdk', M> extends never ? [] : [payload: DomainMessagePayload<'sdk', M>]): Promise<RgsResponse<M>>;
40
40
  on<M extends DomainMessage<'wrapper'> | ForwardToSdkMessage>(message: M, listener: (payload: M extends DomainMessage<'wrapper'> ? DomainMessagePayload<'wrapper', M> : M extends ForwardToSdkMessage ? ForwardToSdkMessagePayload<M> : never) => void, options?: AddEventListenerOptions): () => void;
41
41
  send<M extends DomainMessage<'sdk'>>(message: M, ...[payload]: DomainMessagePayload<'sdk', M> extends never ? [] : undefined extends DomainMessagePayload<'sdk', M> ? [] | [DomainMessagePayload<'sdk', M>] : [DomainMessagePayload<'sdk', M>]): void;
42
- configure(payload: DomainMessagePayload<'sdk', 'configure'>): void;
42
+ configure(payload: DomainMessagePayload<'sdk', 'configure'>): Promise<void>;
43
43
  openGame(contract?: ContractOpenGamePayload, extra?: Parameters<TCodecs['openGame']['request']['encode']>[0]): Promise<OpenGameResponse<ReturnType<TCodecs['openGame']['response']['decode']>>>;
44
44
  play(contract: ContractPlayPayload, extra?: Parameters<TCodecs['play']['request']['encode']>[0]): Promise<PlayResponse<ReturnType<TCodecs['play']['response']['decode']>>>;
45
45
  }
package/dist/index.js CHANGED
@@ -2,8 +2,8 @@
2
2
  * BSD 3-Clause License
3
3
  * Copyright (c) 2026, Kalamba Games Limited
4
4
  */
5
- import { i as TimeoutError, r as RgsErrorCode, t as RgsError } from "./errors-CakYyMwc.js";
6
- import { t as I18n } from "./i18n-x1i0_DY3.js";
5
+ import { i as TimeoutError, r as RgsErrorCode, t as RgsError } from "./errors-DpQKmNNj.js";
6
+ import { t as I18n } from "./i18n-DBjvMtNi.js";
7
7
  import { merge } from "lodash-es";
8
8
 
9
9
  //#region src/sdk/KalambaSdk.ts
@@ -75,7 +75,13 @@ var KalambaSdk = class {
75
75
  }, "*");
76
76
  }
77
77
  configure(payload) {
78
- this.send("configure", payload);
78
+ return new Promise((resolve) => {
79
+ this.on("wrapperConfigured", () => resolve(), { once: true });
80
+ this.send("configure", {
81
+ ...payload,
82
+ sdkVersion: "0.48.1"
83
+ });
84
+ });
79
85
  }
80
86
  async openGame(contract, extra) {
81
87
  const configuredPromise = new Promise((resolve) => this.on("configured", resolve, { once: true }));
package/dist/plugins.cjs CHANGED
@@ -3,7 +3,7 @@
3
3
  * Copyright (c) 2026, Kalamba Games Limited
4
4
  */
5
5
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
6
- const require_i18n = require('./i18n-By5KuEqp.cjs');
6
+ const require_i18n = require('./i18n-C_kZhl3l.cjs');
7
7
  const require_logger = require('./logger-BR4jdx4T.cjs');
8
8
 
9
9
  //#region src/plugins/CasinoPlugin.ts
@@ -2,5 +2,5 @@
2
2
  * BSD 3-Clause License
3
3
  * Copyright (c) 2026, Kalamba Games Limited
4
4
  */
5
- import { i as CasinoPlugin, n as Tracker, r as RgsPlugin, t as TelemetryPlugin } from "./index-COZddK-N.cjs";
5
+ import { i as CasinoPlugin, n as Tracker, r as RgsPlugin, t as TelemetryPlugin } from "./index-BJYAaOQJ.cjs";
6
6
  export { CasinoPlugin, RgsPlugin, TelemetryPlugin, Tracker };
package/dist/plugins.d.ts CHANGED
@@ -2,5 +2,5 @@
2
2
  * BSD 3-Clause License
3
3
  * Copyright (c) 2026, Kalamba Games Limited
4
4
  */
5
- import { i as CasinoPlugin, n as Tracker, r as RgsPlugin, t as TelemetryPlugin } from "./index-Ddzn0JlB.js";
5
+ import { i as CasinoPlugin, n as Tracker, r as RgsPlugin, t as TelemetryPlugin } from "./index-B4TGbH4C.js";
6
6
  export { CasinoPlugin, RgsPlugin, TelemetryPlugin, Tracker };
package/dist/plugins.js CHANGED
@@ -2,7 +2,7 @@
2
2
  * BSD 3-Clause License
3
3
  * Copyright (c) 2026, Kalamba Games Limited
4
4
  */
5
- import { t as I18n } from "./i18n-x1i0_DY3.js";
5
+ import { t as I18n } from "./i18n-DBjvMtNi.js";
6
6
  import { t as WithLogger } from "./logger-f0OQvO5X.js";
7
7
 
8
8
  //#region src/plugins/CasinoPlugin.ts