@kalamba/sdk 0.27.0 → 0.35.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/encoders-BdN6uQHH.js +282 -0
- package/dist/encoders-C-jSxC0Z.cjs +5 -0
- package/dist/errors-BZBs3Z5K.cjs +5 -0
- package/dist/{errors-NnLrKjTz.js → errors-CyJnvnOm.js} +12 -16
- package/dist/index.cjs +2 -2
- package/dist/index.d.ts +10 -12
- package/dist/index.js +47 -323
- package/dist/plugins.cjs +244 -2
- package/dist/plugins.d.ts +76 -13
- package/dist/plugins.js +4589 -1383
- package/dist/v4-BCq6Wm4W.js +49 -0
- package/dist/v4-BIWLDecr.cjs +5 -0
- package/dist/wrapper.cjs +2 -2
- package/dist/wrapper.d.ts +60 -12
- package/dist/wrapper.js +1910 -1877
- package/package.json +6 -4
- package/dist/encoders-BDr7fjKQ.js +0 -13
- package/dist/encoders-DVHzIpWT.cjs +0 -5
- package/dist/errors-BXO3dlhS.cjs +0 -5
- package/dist/v4-85TkMtXc.js +0 -50
- package/dist/v4-Cj9BnqmU.cjs +0 -5
package/dist/index.js
CHANGED
|
@@ -1,353 +1,77 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* BSD 3-Clause License
|
|
3
|
-
* Copyright (c)
|
|
3
|
+
* Copyright (c) 2026, Kalamba Games Limited
|
|
4
4
|
*/
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
import { T as n, R as a } from "./errors-CyJnvnOm.js";
|
|
6
|
+
import { a as g } from "./errors-CyJnvnOm.js";
|
|
7
|
+
import { I as p } from "./encoders-BdN6uQHH.js";
|
|
8
|
+
import { d as y, e as E } from "./encoders-BdN6uQHH.js";
|
|
9
|
+
const d = () => {
|
|
7
10
|
};
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
}
|
|
16
|
-
function w(t, i, m) {
|
|
17
|
-
if (!["string", "number"].includes(typeof i))
|
|
18
|
-
return "NaN";
|
|
19
|
-
const { locales: n } = t;
|
|
20
|
-
try {
|
|
21
|
-
return new Intl.NumberFormat(n, {
|
|
22
|
-
...m,
|
|
23
|
-
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
24
|
-
// @ts-ignore
|
|
25
|
-
numberingSystem: "latn",
|
|
26
|
-
style: "decimal"
|
|
27
|
-
}).format(+i);
|
|
28
|
-
} catch {
|
|
29
|
-
return `${i}`;
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
const l = "XTS";
|
|
33
|
-
var u = /* @__PURE__ */ ((t) => (t.Currency = "Currency", t.Number = "Number", t))(u || {}), c = /* @__PURE__ */ ((t) => (t.Coins = "Coins", t.Money = "Money", t))(c || {});
|
|
34
|
-
const f = {
|
|
35
|
-
/* eslint-disable sort-keys-fix/sort-keys-fix */
|
|
36
|
-
// ARSB is the internal currency relevant for invoicing purposes, players should see it as ARS
|
|
37
|
-
ARSB: { displayAs: "ARS", maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
38
|
-
// Social Casino chips
|
|
39
|
-
CHIPS: { maximumFractionDigits: 0, minimumFractionDigits: 0 },
|
|
40
|
-
// Binance Coin
|
|
41
|
-
BNB: { maximumFractionDigits: 6, minimumFractionDigits: 6 },
|
|
42
|
-
// Binance USD
|
|
43
|
-
BUSD: { maximumFractionDigits: 4, minimumFractionDigits: 4 },
|
|
44
|
-
// Bitcoin
|
|
45
|
-
BTC: { maximumFractionDigits: 8, minimumFractionDigits: 2 },
|
|
46
|
-
mBTC: { maximumFractionDigits: 5, minimumFractionDigits: 2 },
|
|
47
|
-
uBTC: { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
48
|
-
// Bitcoin Cash
|
|
49
|
-
BCH: { maximumFractionDigits: 8, minimumFractionDigits: 2 },
|
|
50
|
-
mBCH: { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
51
|
-
// Ethereum
|
|
52
|
-
ETH: { maximumFractionDigits: 8, minimumFractionDigits: 2 },
|
|
53
|
-
mETH: { maximumFractionDigits: 5, minimumFractionDigits: 2 },
|
|
54
|
-
uETH: { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
55
|
-
// SocialCoin
|
|
56
|
-
SOC: { maximumFractionDigits: 8, minimumFractionDigits: 2 },
|
|
57
|
-
// Litecoins
|
|
58
|
-
LTC: { maximumFractionDigits: 8, minimumFractionDigits: 2 },
|
|
59
|
-
mLTC: { maximumFractionDigits: 5, minimumFractionDigits: 2 },
|
|
60
|
-
uLTC: { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
61
|
-
// Dogecoin
|
|
62
|
-
DOG: { maximumFractionDigits: 4, minimumFractionDigits: 2 },
|
|
63
|
-
// USD Coin
|
|
64
|
-
USDC: { maximumFractionDigits: 4, minimumFractionDigits: 4 },
|
|
65
|
-
// Tether
|
|
66
|
-
USDT: { maximumFractionDigits: 4, minimumFractionDigits: 2 },
|
|
67
|
-
// Tron
|
|
68
|
-
TRX: { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
69
|
-
// TrueUSD
|
|
70
|
-
TUSD: { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
71
|
-
// Dai
|
|
72
|
-
DAI: { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
73
|
-
// Monero
|
|
74
|
-
XMR: { maximumFractionDigits: 4, minimumFractionDigits: 4 },
|
|
75
|
-
// CBET
|
|
76
|
-
CBET: { maximumFractionDigits: 0, minimumFractionDigits: 0 },
|
|
77
|
-
kCBET: { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
78
|
-
// Shiba Inu
|
|
79
|
-
SHIB: { maximumFractionDigits: 0, minimumFractionDigits: 0 },
|
|
80
|
-
kSHIB: { maximumFractionDigits: 4, minimumFractionDigits: 2 },
|
|
81
|
-
// Neo
|
|
82
|
-
NEO: { maximumFractionDigits: 4, minimumFractionDigits: 4 },
|
|
83
|
-
// Bitcoin SV
|
|
84
|
-
BSV: { maximumFractionDigits: 4, minimumFractionDigits: 4 },
|
|
85
|
-
// EOS
|
|
86
|
-
EOS: { maximumFractionDigits: 4, minimumFractionDigits: 4 },
|
|
87
|
-
// Dash
|
|
88
|
-
DASH: { maximumFractionDigits: 4, minimumFractionDigits: 4 },
|
|
89
|
-
// Stellar
|
|
90
|
-
XLM: { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
91
|
-
// South Korean Won
|
|
92
|
-
// While the jeon (1/100th of Won) is no longer used for everyday transactions,
|
|
93
|
-
// we received complaint from operator that we should show 2 fraction digits though, so we override it here.
|
|
94
|
-
KRW: { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
95
|
-
// Vietnamese dong
|
|
96
|
-
kVND: { maximumFractionDigits: 4, minimumFractionDigits: 2 },
|
|
97
|
-
// Indonesian rupiah
|
|
98
|
-
kIDR: { maximumFractionDigits: 4, minimumFractionDigits: 2 },
|
|
99
|
-
// Serbian dinar
|
|
100
|
-
// There is a difference how browsers handle currency data:
|
|
101
|
-
// - Google Chrome uses CLDR, which defines 0 minor digits for RSD currency.
|
|
102
|
-
// - Firefox, Edge, Safari use ISO 4217, which defines 2 minor digits for RSD currency.
|
|
103
|
-
// We received complaint from operator that we should show 2 fraction digits though, so we override it here.
|
|
104
|
-
RSD: { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
105
|
-
// Social currency on Stake
|
|
106
|
-
STAKEGC: { displayAs: "GC", maximumFractionDigits: 0, minimumFractionDigits: 0 },
|
|
107
|
-
STAKESC: { displayAs: "SC", maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
108
|
-
// Social currency on Relax
|
|
109
|
-
"BK.": { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
110
|
-
"BT.": { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
111
|
-
"FC.": { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
112
|
-
"GC.": { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
113
|
-
"SC.": { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
114
|
-
GC: { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
115
|
-
SC: { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
116
|
-
GLD: { displayAs: "GC.", maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
117
|
-
SS1: { displayAs: "SC.", maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
118
|
-
// Softswiss
|
|
119
|
-
SWEP: { displayAs: "SC.", maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
120
|
-
GCLC: { displayAs: "GC.", maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
121
|
-
SWPC: { displayAs: "SC", maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
122
|
-
LUKC: { displayAs: "LC", maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
123
|
-
TTSC: { displayAs: "SC", maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
124
|
-
TTGC: { displayAs: "GC", maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
125
|
-
// Silvercash
|
|
126
|
-
SVC: { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
127
|
-
// Polkadot
|
|
128
|
-
DOT: { maximumFractionDigits: 4, minimumFractionDigits: 4 },
|
|
129
|
-
// Solana
|
|
130
|
-
SOL: { maximumFractionDigits: 4, minimumFractionDigits: 4 },
|
|
131
|
-
// XRP
|
|
132
|
-
XRP: { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
133
|
-
// Cardano
|
|
134
|
-
ADA: { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
135
|
-
// Toncoin
|
|
136
|
-
TON: { maximumFractionDigits: 4, minimumFractionDigits: 4 },
|
|
137
|
-
// Fasttoken
|
|
138
|
-
FTN: { maximumFractionDigits: 4, minimumFractionDigits: 4 },
|
|
139
|
-
// Omani Rial
|
|
140
|
-
OMR: { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
141
|
-
// Jordanian Dinar
|
|
142
|
-
JOD: { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
143
|
-
// Bahraini Dinar
|
|
144
|
-
BHD: { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
145
|
-
// Kuwaiti Dinar
|
|
146
|
-
KWD: { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
147
|
-
// MicroGame
|
|
148
|
-
BNS: { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
149
|
-
// Quanta
|
|
150
|
-
GRSC: { displayAs: "SC", maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
151
|
-
GRGC: { displayAs: "GC", maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
152
|
-
// Softswiss
|
|
153
|
-
EEGP: { displayAs: "EP", maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
154
|
-
EPGP: { displayAs: "PP", maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
155
|
-
LUCK: { displayAs: "LUCK", maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
156
|
-
CXCO: { displayAs: "CC", maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
157
|
-
GZCO: { displayAs: "GC", maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
158
|
-
// gametech
|
|
159
|
-
FC: { displayAs: "", maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
160
|
-
RC: { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
161
|
-
MWSC: { displayAs: "MC", maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
162
|
-
MWGC: { displayAs: "GC", maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
163
|
-
// https://kalamba.atlassian.net/browse/FRAM-1829
|
|
164
|
-
// Myanmar Kyat
|
|
165
|
-
MMK: { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
166
|
-
// West African CFA franc
|
|
167
|
-
XOF: { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
168
|
-
// Vietnamese dong
|
|
169
|
-
VND: { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
170
|
-
// Burundian franc
|
|
171
|
-
BIF: { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
172
|
-
// Chilean peso
|
|
173
|
-
CLP: { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
174
|
-
// Guinean franc
|
|
175
|
-
GNF: { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
176
|
-
// Iraqi dinar
|
|
177
|
-
IQD: { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
178
|
-
// Icelandic króna
|
|
179
|
-
ISK: { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
180
|
-
// Paraguayan guaraní
|
|
181
|
-
PYG: { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
182
|
-
// Central African CFA franc
|
|
183
|
-
XAF: { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
184
|
-
// Lao kip
|
|
185
|
-
LAK: { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
186
|
-
// Lebanese pound
|
|
187
|
-
LBP: { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
188
|
-
// Malagasy ariary
|
|
189
|
-
MGA: { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
190
|
-
// Somali shilling
|
|
191
|
-
SOS: { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
192
|
-
// Ugandan shilling
|
|
193
|
-
UGX: { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
194
|
-
// Albanian lek
|
|
195
|
-
ALL: { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
196
|
-
// Iranian rial
|
|
197
|
-
IRR: { maximumFractionDigits: 2, minimumFractionDigits: 2 }
|
|
198
|
-
/* eslint-enable sort-keys-fix/sort-keys-fix */
|
|
199
|
-
};
|
|
200
|
-
function G(t) {
|
|
201
|
-
return t in f;
|
|
202
|
-
}
|
|
203
|
-
function M(t) {
|
|
204
|
-
return G(t) ? {
|
|
205
|
-
...f[t],
|
|
206
|
-
currency: l
|
|
207
|
-
} : {
|
|
208
|
-
currency: t
|
|
209
|
-
};
|
|
210
|
-
}
|
|
211
|
-
function R(t, i, m) {
|
|
212
|
-
const n = i.format(+t);
|
|
213
|
-
return G(m) ? n.replace(l, f[m].displayAs ?? m) : n;
|
|
214
|
-
}
|
|
215
|
-
function P(t, i, m) {
|
|
216
|
-
const { maximumFractionDigits: n, minimumFractionDigits: r } = m.resolvedOptions();
|
|
217
|
-
return w(t, i, { maximumFractionDigits: n, minimumFractionDigits: r });
|
|
218
|
-
}
|
|
219
|
-
function B(t, i, { as: m } = {
|
|
220
|
-
as: "Currency"
|
|
221
|
-
/* Currency */
|
|
222
|
-
}) {
|
|
223
|
-
const { canShowCurrency: n, currency: r } = t;
|
|
224
|
-
return m === "Number" || !n ? `${i}` : `${i} ${r}`;
|
|
225
|
-
}
|
|
226
|
-
function L(t, i, { as: m, from: n } = {
|
|
227
|
-
as: "Currency",
|
|
228
|
-
from: "Money"
|
|
229
|
-
/* Money */
|
|
230
|
-
}, r) {
|
|
231
|
-
if (!["string", "number"].includes(typeof i))
|
|
232
|
-
return "NaN";
|
|
233
|
-
const { canShowCurrency: D = !0, coinValueInCents: o, currency: y, locales: p } = t;
|
|
234
|
-
n === "Coins" && (i = N(+i, o));
|
|
235
|
-
try {
|
|
236
|
-
const E = M(y), d = new Intl.NumberFormat(p, {
|
|
237
|
-
...E,
|
|
238
|
-
...r,
|
|
239
|
-
currencyDisplay: "symbol",
|
|
240
|
-
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
241
|
-
// @ts-ignore
|
|
242
|
-
numberingSystem: "latn",
|
|
243
|
-
style: "currency"
|
|
244
|
-
});
|
|
245
|
-
return m === "Number" || !D ? P(t, i, d) : R(i, d, y);
|
|
246
|
-
} catch {
|
|
247
|
-
return B(t, i, { as: m });
|
|
248
|
-
}
|
|
249
|
-
}
|
|
250
|
-
var s;
|
|
251
|
-
class O {
|
|
252
|
-
constructor({ config: i }) {
|
|
253
|
-
F(this, s);
|
|
254
|
-
C(this, s, i);
|
|
255
|
-
}
|
|
256
|
-
formatNumber(i, m) {
|
|
257
|
-
const n = { locales: [a(this, s).ui.language] };
|
|
258
|
-
return w(n, i, m);
|
|
259
|
-
}
|
|
260
|
-
formatCurrency(i, m = { as: u.Currency, from: c.Money }, n) {
|
|
261
|
-
const r = a(this, s).ui.feature.showCurrency, D = a(this, s).api.coinValueInCents, o = a(this, s).api.currency || l, y = [a(this, s).ui.language];
|
|
262
|
-
return L({
|
|
263
|
-
canShowCurrency: r,
|
|
264
|
-
coinValueInCents: D,
|
|
265
|
-
currency: o,
|
|
266
|
-
locales: y
|
|
267
|
-
}, i, m, n);
|
|
268
|
-
}
|
|
269
|
-
formatCoins(i, m) {
|
|
270
|
-
return this.formatCurrency(i, { as: u.Number, from: c.Coins }, m);
|
|
271
|
-
}
|
|
272
|
-
formatCoinsWithCurrency(i, m) {
|
|
273
|
-
return this.formatCurrency(i, { as: u.Currency, from: c.Coins }, m);
|
|
274
|
-
}
|
|
275
|
-
formatMoney(i, m) {
|
|
276
|
-
return this.formatCurrency(i, { as: u.Number, from: c.Money }, m);
|
|
277
|
-
}
|
|
278
|
-
formatMoneyWithCurrency(i, m) {
|
|
279
|
-
return this.formatCurrency(i, { as: u.Currency, from: c.Money }, m);
|
|
280
|
-
}
|
|
281
|
-
}
|
|
282
|
-
s = new WeakMap();
|
|
283
|
-
const I = () => {
|
|
284
|
-
};
|
|
285
|
-
var e, g, x;
|
|
286
|
-
class U {
|
|
287
|
-
constructor({ messagePort: i }) {
|
|
288
|
-
F(this, e);
|
|
289
|
-
F(this, g);
|
|
290
|
-
F(this, x);
|
|
291
|
-
C(this, x, i), this.on("configured", (m) => {
|
|
292
|
-
C(this, e, m), C(this, g, new O({ config: m }));
|
|
11
|
+
class w {
|
|
12
|
+
#e;
|
|
13
|
+
#r;
|
|
14
|
+
#s;
|
|
15
|
+
constructor({ messagePort: e }) {
|
|
16
|
+
this.#s = e, this.on("configured", (r) => {
|
|
17
|
+
this.#e = r, this.#r = new p({ config: r });
|
|
293
18
|
});
|
|
294
19
|
}
|
|
295
20
|
get config() {
|
|
296
|
-
if (!
|
|
21
|
+
if (!this.#e)
|
|
297
22
|
throw new Error("config is not initialized, you must open game first");
|
|
298
|
-
return
|
|
23
|
+
return this.#e;
|
|
299
24
|
}
|
|
300
25
|
get i18n() {
|
|
301
|
-
if (!
|
|
26
|
+
if (!this.#r)
|
|
302
27
|
throw new Error("i18n is not initialized, you must open game first");
|
|
303
|
-
return
|
|
28
|
+
return this.#r;
|
|
304
29
|
}
|
|
305
|
-
request(
|
|
306
|
-
return new Promise((
|
|
307
|
-
this.on(`${
|
|
30
|
+
request(e, ...[r]) {
|
|
31
|
+
return new Promise((o) => {
|
|
32
|
+
this.on(`${e}Response`, (s) => o({ type: "response", response: s }), {
|
|
308
33
|
once: !0
|
|
309
|
-
}), this.on(`${
|
|
34
|
+
}), this.on(`${e}Error`, (s) => o({ type: "error", error: s }), { once: !0 }), this.send(e, r);
|
|
310
35
|
});
|
|
311
36
|
}
|
|
312
|
-
on(
|
|
313
|
-
const
|
|
314
|
-
|
|
37
|
+
on(e, r, o) {
|
|
38
|
+
const s = function i(t) {
|
|
39
|
+
t.data.message === `kalamba:wrapper:${e}` && (d("on", t.data.message.replace(/^kalamba:/, ""), t.data.payload), r(t.data.payload), o?.once && window.removeEventListener("message", i));
|
|
315
40
|
};
|
|
316
|
-
window.addEventListener("message",
|
|
41
|
+
window.addEventListener("message", s);
|
|
317
42
|
}
|
|
318
43
|
// TODO error messages
|
|
319
|
-
send(
|
|
320
|
-
|
|
44
|
+
send(e, ...[r]) {
|
|
45
|
+
this.#s.postMessage(
|
|
321
46
|
{
|
|
322
|
-
message: `kalamba:sdk:${
|
|
323
|
-
payload:
|
|
47
|
+
message: `kalamba:sdk:${e}`,
|
|
48
|
+
payload: r
|
|
324
49
|
},
|
|
325
50
|
"*"
|
|
326
51
|
);
|
|
327
52
|
}
|
|
328
|
-
configure(
|
|
329
|
-
this.send("configure",
|
|
53
|
+
configure(e) {
|
|
54
|
+
this.send("configure", e);
|
|
330
55
|
}
|
|
331
56
|
async openGame() {
|
|
332
|
-
const
|
|
333
|
-
if (m.type === "response")
|
|
334
|
-
return await i, m.response;
|
|
335
|
-
throw m.error.type === "timeout" ? new A() : new T(m.error.data);
|
|
336
|
-
}
|
|
337
|
-
async play(i, m) {
|
|
338
|
-
const n = { contract: i, extra: m }, r = await this.request("play", n);
|
|
57
|
+
const e = new Promise((o) => this.on("configured", o, { once: !0 })), r = await this.request("openGame");
|
|
339
58
|
if (r.type === "response")
|
|
340
|
-
return r.response;
|
|
341
|
-
throw r.error.type === "timeout" ? new
|
|
59
|
+
return await e, r.response;
|
|
60
|
+
throw r.error.type === "timeout" ? new n() : new a(r.error.data);
|
|
61
|
+
}
|
|
62
|
+
async play(e, r) {
|
|
63
|
+
const o = { contract: e, extra: r }, s = await this.request("play", o);
|
|
64
|
+
if (s.type === "response")
|
|
65
|
+
return s.response;
|
|
66
|
+
throw s.error.type === "timeout" ? new n() : new a(s.error.data);
|
|
342
67
|
}
|
|
343
68
|
}
|
|
344
|
-
e = new WeakMap(), g = new WeakMap(), x = new WeakMap();
|
|
345
69
|
export {
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
70
|
+
p as I18n,
|
|
71
|
+
w as KalambaSdk,
|
|
72
|
+
a as RgsError,
|
|
73
|
+
g as RgsErrorCode,
|
|
74
|
+
n as TimeoutError,
|
|
75
|
+
y as decoders,
|
|
76
|
+
E as encoders
|
|
353
77
|
};
|