@kalamba/sdk 0.26.0 → 0.27.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/index.cjs +1 -1
- package/dist/index.d.ts +6 -38
- package/dist/index.js +103 -197
- package/dist/plugins.cjs +1 -1
- package/dist/plugins.d.ts +0 -2
- package/dist/plugins.js +792 -733
- package/dist/{v4-BfzDHJEo.js → v4-85TkMtXc.js} +19 -18
- package/dist/v4-Cj9BnqmU.cjs +5 -0
- package/dist/wrapper.cjs +1 -1
- package/dist/wrapper.d.ts +0 -2
- package/dist/wrapper.js +2 -3
- package/package.json +3 -4
- package/dist/v4-CoqWKwnX.cjs +0 -5
package/dist/index.cjs
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
* BSD 3-Clause License
|
|
3
3
|
* Copyright (c) 2025, Kalamba Games Limited
|
|
4
4
|
*/
|
|
5
|
-
"use strict";var E=m=>{throw TypeError(m)};var G=(m,i,t)=>i.has(m)||E("Cannot "+t);var r=(m,i,t)=>(G(m,i,"read from private field"),t?t.call(m):i.get(m)),u=(m,i,t)=>i.has(m)?E("Cannot add the same private member more than once"):i instanceof WeakSet?i.add(m):i.set(m,t),e=(m,i,t,n)=>(G(m,i,"write to private field"),n?n.call(m,t):i.set(m,t),t);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const D=require("./errors-BXO3dlhS.cjs"),O=require("./encoders-DVHzIpWT.cjs"),H=3e4;var F,S;class k{constructor(i){u(this,F);u(this,S,H);e(this,F,i)}buildHeaders(){const i={};return r(this,F).token&&(i.Authorization=`Bearer ${r(this,F).token}`),i}async request(i,t){const n=new URL(i,r(this,F).apiUrl??window.location.origin);return n.search=new URLSearchParams({...t}).toString(),await(await fetch(n,{signal:AbortSignal.timeout(r(this,S)),headers:this.buildHeaders()})).json()}async getRounds(i){return this.request("/rounds",i)}async getRound(i,t){return this.request(`/rounds/${i}`,t)}}F=new WeakMap,S=new WeakMap;const N=Symbol.for("constructDateFrom");function K(m,i){return typeof m=="function"?m(i):m&&typeof m=="object"&&N in m?m[N](i):m instanceof Date?new m.constructor(i):new Date(i)}function b(m,i){return K(m,m)}function $(m,i){const t=b(m);return t.setHours(0,0,0,0),t}function X(m,i){const t=b(m);return t.setHours(23,59,59,999),t}function _(m){return X(Date.now())}function q(m){return $(Date.now())}const I={limit:100,page:0};var a,x;class M{constructor({config:i}){u(this,a);u(this,x);e(this,a,i),e(this,x,new k({apiUrl:i.api.gameHistoryUrl}))}async getRound(i,{pagination:t=I}={}){return r(this,x).getRound(i,{gameCode:r(this,a).api.game,operatorCode:r(this,a).api.brand,username:r(this,a).api.user,...t})}async getLastRound(){return r(this,a).api.lastRoundId?this.getRound(r(this,a).api.lastRoundId):null}async getRounds({searchPeriod:i={fromDateTime:q(),toDateTime:_()},pagination:t=I}={}){const n=r(this,a).api.user.replace(/^user_/,"").replace(new RegExp(`_${r(this,a).api.integration}$`),"");return r(this,x).getRounds({gameCode:r(this,a).api.game,operatorCode:r(this,a).api.integration,username:n,fromDataTime:i.fromDateTime.toISOString(),toDateTime:i.toDateTime.toISOString(),...t})}}a=new WeakMap,x=new WeakMap;function W(m,i){return m*i/100}function P(m,i,t){if(!["string","number"].includes(typeof i))return"NaN";const{locales:n}=m;try{return new Intl.NumberFormat(n,{...t,numberingSystem:"latn",style:"decimal"}).format(+i)}catch{return`${i}`}}const T="XTS";var y=(m=>(m.Currency="Currency",m.Number="Number",m))(y||{}),C=(m=>(m.Coins="Coins",m.Money="Money",m))(C||{});const w={ARSB:{displayAs:"ARS",maximumFractionDigits:2,minimumFractionDigits:2},CHIPS:{maximumFractionDigits:0,minimumFractionDigits:0},BNB:{maximumFractionDigits:6,minimumFractionDigits:6},BUSD:{maximumFractionDigits:4,minimumFractionDigits:4},BTC:{maximumFractionDigits:8,minimumFractionDigits:2},mBTC:{maximumFractionDigits:5,minimumFractionDigits:2},uBTC:{maximumFractionDigits:2,minimumFractionDigits:2},BCH:{maximumFractionDigits:8,minimumFractionDigits:2},mBCH:{maximumFractionDigits:2,minimumFractionDigits:2},ETH:{maximumFractionDigits:8,minimumFractionDigits:2},mETH:{maximumFractionDigits:5,minimumFractionDigits:2},uETH:{maximumFractionDigits:2,minimumFractionDigits:2},SOC:{maximumFractionDigits:8,minimumFractionDigits:2},LTC:{maximumFractionDigits:8,minimumFractionDigits:2},mLTC:{maximumFractionDigits:5,minimumFractionDigits:2},uLTC:{maximumFractionDigits:2,minimumFractionDigits:2},DOG:{maximumFractionDigits:4,minimumFractionDigits:2},USDC:{maximumFractionDigits:4,minimumFractionDigits:4},USDT:{maximumFractionDigits:4,minimumFractionDigits:2},TRX:{maximumFractionDigits:2,minimumFractionDigits:2},TUSD:{maximumFractionDigits:2,minimumFractionDigits:2},DAI:{maximumFractionDigits:2,minimumFractionDigits:2},XMR:{maximumFractionDigits:4,minimumFractionDigits:4},CBET:{maximumFractionDigits:0,minimumFractionDigits:0},kCBET:{maximumFractionDigits:2,minimumFractionDigits:2},SHIB:{maximumFractionDigits:0,minimumFractionDigits:0},kSHIB:{maximumFractionDigits:4,minimumFractionDigits:2},NEO:{maximumFractionDigits:4,minimumFractionDigits:4},BSV:{maximumFractionDigits:4,minimumFractionDigits:4},EOS:{maximumFractionDigits:4,minimumFractionDigits:4},DASH:{maximumFractionDigits:4,minimumFractionDigits:4},XLM:{maximumFractionDigits:2,minimumFractionDigits:2},KRW:{maximumFractionDigits:2,minimumFractionDigits:2},kVND:{maximumFractionDigits:4,minimumFractionDigits:2},kIDR:{maximumFractionDigits:4,minimumFractionDigits:2},RSD:{maximumFractionDigits:2,minimumFractionDigits:2},STAKEGC:{displayAs:"GC",maximumFractionDigits:0,minimumFractionDigits:0},STAKESC:{displayAs:"SC",maximumFractionDigits:2,minimumFractionDigits:2},"BK.":{maximumFractionDigits:2,minimumFractionDigits:2},"BT.":{maximumFractionDigits:2,minimumFractionDigits:2},"FC.":{maximumFractionDigits:2,minimumFractionDigits:2},"GC.":{maximumFractionDigits:2,minimumFractionDigits:2},"SC.":{maximumFractionDigits:2,minimumFractionDigits:2},GC:{maximumFractionDigits:2,minimumFractionDigits:2},SC:{maximumFractionDigits:2,minimumFractionDigits:2},GLD:{displayAs:"GC.",maximumFractionDigits:2,minimumFractionDigits:2},SS1:{displayAs:"SC.",maximumFractionDigits:2,minimumFractionDigits:2},SWEP:{displayAs:"SC.",maximumFractionDigits:2,minimumFractionDigits:2},GCLC:{displayAs:"GC.",maximumFractionDigits:2,minimumFractionDigits:2},SWPC:{displayAs:"SC",maximumFractionDigits:2,minimumFractionDigits:2},LUKC:{displayAs:"LC",maximumFractionDigits:2,minimumFractionDigits:2},TTSC:{displayAs:"SC",maximumFractionDigits:2,minimumFractionDigits:2},TTGC:{displayAs:"GC",maximumFractionDigits:2,minimumFractionDigits:2},SVC:{maximumFractionDigits:2,minimumFractionDigits:2},DOT:{maximumFractionDigits:4,minimumFractionDigits:4},SOL:{maximumFractionDigits:4,minimumFractionDigits:4},XRP:{maximumFractionDigits:2,minimumFractionDigits:2},ADA:{maximumFractionDigits:2,minimumFractionDigits:2},TON:{maximumFractionDigits:4,minimumFractionDigits:4},FTN:{maximumFractionDigits:4,minimumFractionDigits:4},OMR:{maximumFractionDigits:2,minimumFractionDigits:2},JOD:{maximumFractionDigits:2,minimumFractionDigits:2},BHD:{maximumFractionDigits:2,minimumFractionDigits:2},KWD:{maximumFractionDigits:2,minimumFractionDigits:2},BNS:{maximumFractionDigits:2,minimumFractionDigits:2},GRSC:{displayAs:"SC",maximumFractionDigits:2,minimumFractionDigits:2},GRGC:{displayAs:"GC",maximumFractionDigits:2,minimumFractionDigits:2},EEGP:{displayAs:"EP",maximumFractionDigits:2,minimumFractionDigits:2},EPGP:{displayAs:"PP",maximumFractionDigits:2,minimumFractionDigits:2},LUCK:{displayAs:"LUCK",maximumFractionDigits:2,minimumFractionDigits:2},CXCO:{displayAs:"CC",maximumFractionDigits:2,minimumFractionDigits:2},GZCO:{displayAs:"GC",maximumFractionDigits:2,minimumFractionDigits:2},FC:{displayAs:"",maximumFractionDigits:2,minimumFractionDigits:2},RC:{maximumFractionDigits:2,minimumFractionDigits:2},MWSC:{displayAs:"MC",maximumFractionDigits:2,minimumFractionDigits:2},MWGC:{displayAs:"GC",maximumFractionDigits:2,minimumFractionDigits:2},MMK:{maximumFractionDigits:2,minimumFractionDigits:2},XOF:{maximumFractionDigits:2,minimumFractionDigits:2},VND:{maximumFractionDigits:2,minimumFractionDigits:2},BIF:{maximumFractionDigits:2,minimumFractionDigits:2},CLP:{maximumFractionDigits:2,minimumFractionDigits:2},GNF:{maximumFractionDigits:2,minimumFractionDigits:2},IQD:{maximumFractionDigits:2,minimumFractionDigits:2},ISK:{maximumFractionDigits:2,minimumFractionDigits:2},PYG:{maximumFractionDigits:2,minimumFractionDigits:2},XAF:{maximumFractionDigits:2,minimumFractionDigits:2},LAK:{maximumFractionDigits:2,minimumFractionDigits:2},LBP:{maximumFractionDigits:2,minimumFractionDigits:2},MGA:{maximumFractionDigits:2,minimumFractionDigits:2},SOS:{maximumFractionDigits:2,minimumFractionDigits:2},UGX:{maximumFractionDigits:2,minimumFractionDigits:2},ALL:{maximumFractionDigits:2,minimumFractionDigits:2},IRR:{maximumFractionDigits:2,minimumFractionDigits:2}};function L(m){return m in w}function V(m){return L(m)?{...w[m],currency:T}:{currency:m}}function z(m,i,t){const n=i.format(+m);return L(t)?n.replace(T,w[t].displayAs??t):n}function j(m,i,t){const{maximumFractionDigits:n,minimumFractionDigits:s}=t.resolvedOptions();return P(m,i,{maximumFractionDigits:n,minimumFractionDigits:s})}function J(m,i,{as:t}={as:"Currency"}){const{canShowCurrency:n,currency:s}=m;return t==="Number"||!n?`${i}`:`${i} ${s}`}function v(m,i,{as:t,from:n}={as:"Currency",from:"Money"},s){if(!["string","number"].includes(typeof i))return"NaN";const{canShowCurrency:o=!0,coinValueInCents:g,currency:h,locales:A}=m;n==="Coins"&&(i=W(+i,g));try{const U=V(h),R=new Intl.NumberFormat(A,{...U,...s,currencyDisplay:"symbol",numberingSystem:"latn",style:"currency"});return t==="Number"||!o?j(m,i,R):z(i,R,h)}catch{return J(m,i,{as:t})}}var c;class B{constructor({config:i}){u(this,c);e(this,c,i)}formatNumber(i,t){const n={locales:[r(this,c).ui.language]};return P(n,i,t)}formatCurrency(i,t={as:y.Currency,from:C.Money},n){const s=r(this,c).ui.feature.showCurrency,o=r(this,c).api.coinValueInCents,g=r(this,c).api.currency||T,h=[r(this,c).ui.language];return v({canShowCurrency:s,coinValueInCents:o,currency:g,locales:h},i,t,n)}formatCoins(i,t){return this.formatCurrency(i,{as:y.Number,from:C.Coins},t)}formatCoinsWithCurrency(i,t){return this.formatCurrency(i,{as:y.Currency,from:C.Coins},t)}formatMoney(i,t){return this.formatCurrency(i,{as:y.Number,from:C.Money},t)}formatMoneyWithCurrency(i,t){return this.formatCurrency(i,{as:y.Currency,from:C.Money},t)}}c=new WeakMap;const Y=()=>{};var l,d,f,p;class Q{constructor({messagePort:i}){u(this,l);u(this,d);u(this,f);u(this,p);e(this,p,i),this.on("configured",t=>{e(this,l,t),e(this,f,new B({config:t})),e(this,d,new M({config:t}))}),this.on("playResponse",t=>{this.config.api.lastRoundId=t.contract.roundId})}get config(){if(!r(this,l))throw new Error("config is not initialized, you must open game first");return r(this,l)}get history(){if(!r(this,d))throw new Error("config is not initialized, you must open game first");return r(this,d)}get i18n(){if(!r(this,f))throw new Error("i18n is not initialized, you must open game first");return r(this,f)}request(i,...[t]){return new Promise(n=>{this.on(`${i}Response`,s=>n({type:"response",response:s}),{once:!0}),this.on(`${i}Error`,s=>n({type:"error",error:s}),{once:!0}),this.send(i,t)})}on(i,t,n){const s=function o(g){g.data.message===`kalamba:wrapper:${i}`&&(Y("on",g.data.message.replace(/^kalamba:/,""),g.data.payload),t(g.data.payload),n!=null&&n.once&&window.removeEventListener("message",o))};window.addEventListener("message",s)}send(i,...[t]){r(this,p).postMessage({message:`kalamba:sdk:${i}`,payload:t},"*")}configure(i){this.send("configure",i)}async openGame(){const i=new Promise(n=>this.on("configured",n,{once:!0})),t=await this.request("openGame");if(t.type==="response")return await i,t.response;throw t.error.type==="timeout"?new D.TimeoutError:new D.RgsError(t.error.data)}async play(i,t,n="SPIN"){const s={contract:i,extra:t,actionType:n},o=await this.request("play",s);if(o.type==="response")return o.response;throw o.error.type==="timeout"?new D.TimeoutError:new D.RgsError(o.error.data)}}l=new WeakMap,d=new WeakMap,f=new WeakMap,p=new WeakMap;exports.RgsError=D.RgsError;exports.RgsErrorCode=D.RgsErrorCode;exports.TimeoutError=D.TimeoutError;exports.decoders=O.decoders;exports.encoders=O.encoders;exports.History=M;exports.I18n=B;exports.KalambaSdk=Q;
|
|
5
|
+
"use strict";var h=t=>{throw TypeError(t)};var A=(t,i,m)=>i.has(t)||h("Cannot "+m);var a=(t,i,m)=>(A(t,i,"read from private field"),m?m.call(t):i.get(t)),C=(t,i,m)=>i.has(t)?h("Cannot add the same private member more than once"):i instanceof WeakSet?i.add(t):i.set(t,m),x=(t,i,m,n)=>(A(t,i,"write to private field"),n?n.call(t,m):i.set(t,m),m);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("./errors-BXO3dlhS.cjs"),E=require("./encoders-DVHzIpWT.cjs");function R(t,i){return t*i/100}function T(t,i,m){if(!["string","number"].includes(typeof i))return"NaN";const{locales:n}=t;try{return new Intl.NumberFormat(n,{...m,numberingSystem:"latn",style:"decimal"}).format(+i)}catch{return`${i}`}}const f="XTS";var c=(t=>(t.Currency="Currency",t.Number="Number",t))(c||{}),e=(t=>(t.Coins="Coins",t.Money="Money",t))(e||{});const d={ARSB:{displayAs:"ARS",maximumFractionDigits:2,minimumFractionDigits:2},CHIPS:{maximumFractionDigits:0,minimumFractionDigits:0},BNB:{maximumFractionDigits:6,minimumFractionDigits:6},BUSD:{maximumFractionDigits:4,minimumFractionDigits:4},BTC:{maximumFractionDigits:8,minimumFractionDigits:2},mBTC:{maximumFractionDigits:5,minimumFractionDigits:2},uBTC:{maximumFractionDigits:2,minimumFractionDigits:2},BCH:{maximumFractionDigits:8,minimumFractionDigits:2},mBCH:{maximumFractionDigits:2,minimumFractionDigits:2},ETH:{maximumFractionDigits:8,minimumFractionDigits:2},mETH:{maximumFractionDigits:5,minimumFractionDigits:2},uETH:{maximumFractionDigits:2,minimumFractionDigits:2},SOC:{maximumFractionDigits:8,minimumFractionDigits:2},LTC:{maximumFractionDigits:8,minimumFractionDigits:2},mLTC:{maximumFractionDigits:5,minimumFractionDigits:2},uLTC:{maximumFractionDigits:2,minimumFractionDigits:2},DOG:{maximumFractionDigits:4,minimumFractionDigits:2},USDC:{maximumFractionDigits:4,minimumFractionDigits:4},USDT:{maximumFractionDigits:4,minimumFractionDigits:2},TRX:{maximumFractionDigits:2,minimumFractionDigits:2},TUSD:{maximumFractionDigits:2,minimumFractionDigits:2},DAI:{maximumFractionDigits:2,minimumFractionDigits:2},XMR:{maximumFractionDigits:4,minimumFractionDigits:4},CBET:{maximumFractionDigits:0,minimumFractionDigits:0},kCBET:{maximumFractionDigits:2,minimumFractionDigits:2},SHIB:{maximumFractionDigits:0,minimumFractionDigits:0},kSHIB:{maximumFractionDigits:4,minimumFractionDigits:2},NEO:{maximumFractionDigits:4,minimumFractionDigits:4},BSV:{maximumFractionDigits:4,minimumFractionDigits:4},EOS:{maximumFractionDigits:4,minimumFractionDigits:4},DASH:{maximumFractionDigits:4,minimumFractionDigits:4},XLM:{maximumFractionDigits:2,minimumFractionDigits:2},KRW:{maximumFractionDigits:2,minimumFractionDigits:2},kVND:{maximumFractionDigits:4,minimumFractionDigits:2},kIDR:{maximumFractionDigits:4,minimumFractionDigits:2},RSD:{maximumFractionDigits:2,minimumFractionDigits:2},STAKEGC:{displayAs:"GC",maximumFractionDigits:0,minimumFractionDigits:0},STAKESC:{displayAs:"SC",maximumFractionDigits:2,minimumFractionDigits:2},"BK.":{maximumFractionDigits:2,minimumFractionDigits:2},"BT.":{maximumFractionDigits:2,minimumFractionDigits:2},"FC.":{maximumFractionDigits:2,minimumFractionDigits:2},"GC.":{maximumFractionDigits:2,minimumFractionDigits:2},"SC.":{maximumFractionDigits:2,minimumFractionDigits:2},GC:{maximumFractionDigits:2,minimumFractionDigits:2},SC:{maximumFractionDigits:2,minimumFractionDigits:2},GLD:{displayAs:"GC.",maximumFractionDigits:2,minimumFractionDigits:2},SS1:{displayAs:"SC.",maximumFractionDigits:2,minimumFractionDigits:2},SWEP:{displayAs:"SC.",maximumFractionDigits:2,minimumFractionDigits:2},GCLC:{displayAs:"GC.",maximumFractionDigits:2,minimumFractionDigits:2},SWPC:{displayAs:"SC",maximumFractionDigits:2,minimumFractionDigits:2},LUKC:{displayAs:"LC",maximumFractionDigits:2,minimumFractionDigits:2},TTSC:{displayAs:"SC",maximumFractionDigits:2,minimumFractionDigits:2},TTGC:{displayAs:"GC",maximumFractionDigits:2,minimumFractionDigits:2},SVC:{maximumFractionDigits:2,minimumFractionDigits:2},DOT:{maximumFractionDigits:4,minimumFractionDigits:4},SOL:{maximumFractionDigits:4,minimumFractionDigits:4},XRP:{maximumFractionDigits:2,minimumFractionDigits:2},ADA:{maximumFractionDigits:2,minimumFractionDigits:2},TON:{maximumFractionDigits:4,minimumFractionDigits:4},FTN:{maximumFractionDigits:4,minimumFractionDigits:4},OMR:{maximumFractionDigits:2,minimumFractionDigits:2},JOD:{maximumFractionDigits:2,minimumFractionDigits:2},BHD:{maximumFractionDigits:2,minimumFractionDigits:2},KWD:{maximumFractionDigits:2,minimumFractionDigits:2},BNS:{maximumFractionDigits:2,minimumFractionDigits:2},GRSC:{displayAs:"SC",maximumFractionDigits:2,minimumFractionDigits:2},GRGC:{displayAs:"GC",maximumFractionDigits:2,minimumFractionDigits:2},EEGP:{displayAs:"EP",maximumFractionDigits:2,minimumFractionDigits:2},EPGP:{displayAs:"PP",maximumFractionDigits:2,minimumFractionDigits:2},LUCK:{displayAs:"LUCK",maximumFractionDigits:2,minimumFractionDigits:2},CXCO:{displayAs:"CC",maximumFractionDigits:2,minimumFractionDigits:2},GZCO:{displayAs:"GC",maximumFractionDigits:2,minimumFractionDigits:2},FC:{displayAs:"",maximumFractionDigits:2,minimumFractionDigits:2},RC:{maximumFractionDigits:2,minimumFractionDigits:2},MWSC:{displayAs:"MC",maximumFractionDigits:2,minimumFractionDigits:2},MWGC:{displayAs:"GC",maximumFractionDigits:2,minimumFractionDigits:2},MMK:{maximumFractionDigits:2,minimumFractionDigits:2},XOF:{maximumFractionDigits:2,minimumFractionDigits:2},VND:{maximumFractionDigits:2,minimumFractionDigits:2},BIF:{maximumFractionDigits:2,minimumFractionDigits:2},CLP:{maximumFractionDigits:2,minimumFractionDigits:2},GNF:{maximumFractionDigits:2,minimumFractionDigits:2},IQD:{maximumFractionDigits:2,minimumFractionDigits:2},ISK:{maximumFractionDigits:2,minimumFractionDigits:2},PYG:{maximumFractionDigits:2,minimumFractionDigits:2},XAF:{maximumFractionDigits:2,minimumFractionDigits:2},LAK:{maximumFractionDigits:2,minimumFractionDigits:2},LBP:{maximumFractionDigits:2,minimumFractionDigits:2},MGA:{maximumFractionDigits:2,minimumFractionDigits:2},SOS:{maximumFractionDigits:2,minimumFractionDigits:2},UGX:{maximumFractionDigits:2,minimumFractionDigits:2},ALL:{maximumFractionDigits:2,minimumFractionDigits:2},IRR:{maximumFractionDigits:2,minimumFractionDigits:2}};function w(t){return t in d}function M(t){return w(t)?{...d[t],currency:f}:{currency:t}}function P(t,i,m){const n=i.format(+t);return w(m)?n.replace(f,d[m].displayAs??m):n}function B(t,i,m){const{maximumFractionDigits:n,minimumFractionDigits:r}=m.resolvedOptions();return T(t,i,{maximumFractionDigits:n,minimumFractionDigits:r})}function b(t,i,{as:m}={as:"Currency"}){const{canShowCurrency:n,currency:r}=t;return m==="Number"||!n?`${i}`:`${i} ${r}`}function O(t,i,{as:m,from:n}={as:"Currency",from:"Money"},r){if(!["string","number"].includes(typeof i))return"NaN";const{canShowCurrency:F=!0,coinValueInCents:o,currency:l,locales:p}=t;n==="Coins"&&(i=R(+i,o));try{const N=M(l),S=new Intl.NumberFormat(p,{...N,...r,currencyDisplay:"symbol",numberingSystem:"latn",style:"currency"});return m==="Number"||!F?B(t,i,S):P(i,S,l)}catch{return b(t,i,{as:m})}}var s;class G{constructor({config:i}){C(this,s);x(this,s,i)}formatNumber(i,m){const n={locales:[a(this,s).ui.language]};return T(n,i,m)}formatCurrency(i,m={as:c.Currency,from:e.Money},n){const r=a(this,s).ui.feature.showCurrency,F=a(this,s).api.coinValueInCents,o=a(this,s).api.currency||f,l=[a(this,s).ui.language];return O({canShowCurrency:r,coinValueInCents:F,currency:o,locales:l},i,m,n)}formatCoins(i,m){return this.formatCurrency(i,{as:c.Number,from:e.Coins},m)}formatCoinsWithCurrency(i,m){return this.formatCurrency(i,{as:c.Currency,from:e.Coins},m)}formatMoney(i,m){return this.formatCurrency(i,{as:c.Number,from:e.Money},m)}formatMoneyWithCurrency(i,m){return this.formatCurrency(i,{as:c.Currency,from:e.Money},m)}}s=new WeakMap;const I=()=>{};var g,D,y;class L{constructor({messagePort:i}){C(this,g);C(this,D);C(this,y);x(this,y,i),this.on("configured",m=>{x(this,g,m),x(this,D,new G({config:m}))})}get config(){if(!a(this,g))throw new Error("config is not initialized, you must open game first");return a(this,g)}get i18n(){if(!a(this,D))throw new Error("i18n is not initialized, you must open game first");return a(this,D)}request(i,...[m]){return new Promise(n=>{this.on(`${i}Response`,r=>n({type:"response",response:r}),{once:!0}),this.on(`${i}Error`,r=>n({type:"error",error:r}),{once:!0}),this.send(i,m)})}on(i,m,n){const r=function F(o){o.data.message===`kalamba:wrapper:${i}`&&(I("on",o.data.message.replace(/^kalamba:/,""),o.data.payload),m(o.data.payload),n!=null&&n.once&&window.removeEventListener("message",F))};window.addEventListener("message",r)}send(i,...[m]){a(this,y).postMessage({message:`kalamba:sdk:${i}`,payload:m},"*")}configure(i){this.send("configure",i)}async openGame(){const i=new Promise(n=>this.on("configured",n,{once:!0})),m=await this.request("openGame");if(m.type==="response")return await i,m.response;throw m.error.type==="timeout"?new u.TimeoutError:new u.RgsError(m.error.data)}async play(i,m){const n={contract:i,extra:m},r=await this.request("play",n);if(r.type==="response")return r.response;throw r.error.type==="timeout"?new u.TimeoutError:new u.RgsError(r.error.data)}}g=new WeakMap,D=new WeakMap,y=new WeakMap;exports.RgsError=u.RgsError;exports.RgsErrorCode=u.RgsErrorCode;exports.TimeoutError=u.TimeoutError;exports.decoders=E.decoders;exports.encoders=E.encoders;exports.I18n=G;exports.KalambaSdk=L;
|
package/dist/index.d.ts
CHANGED
|
@@ -44,7 +44,7 @@ export declare type CasinoOnlyMessagePayloadMap = {
|
|
|
44
44
|
help?: {
|
|
45
45
|
show: boolean;
|
|
46
46
|
};
|
|
47
|
-
history:
|
|
47
|
+
history: History_2;
|
|
48
48
|
paytable?: {
|
|
49
49
|
show: boolean;
|
|
50
50
|
};
|
|
@@ -158,29 +158,10 @@ export declare type GetBalanceResponse = {
|
|
|
158
158
|
balance: number;
|
|
159
159
|
};
|
|
160
160
|
|
|
161
|
-
|
|
162
|
-
pagination?: Pagination;
|
|
163
|
-
}
|
|
164
|
-
|
|
165
|
-
export declare interface GetRoundsOptions {
|
|
166
|
-
searchPeriod?: SearchPeriod;
|
|
167
|
-
pagination?: Pagination;
|
|
168
|
-
}
|
|
169
|
-
|
|
170
|
-
declare class History_2 {
|
|
171
|
-
#private;
|
|
172
|
-
constructor({ config }: {
|
|
173
|
-
config: SdkConfig;
|
|
174
|
-
});
|
|
175
|
-
getRound(roundId: string, { pagination }?: GetRoundOptions): Promise<unknown>;
|
|
176
|
-
getLastRound(): Promise<unknown>;
|
|
177
|
-
getRounds({ searchPeriod, pagination, }?: GetRoundsOptions): Promise<unknown>;
|
|
178
|
-
}
|
|
179
|
-
export { History_2 as History }
|
|
180
|
-
|
|
181
|
-
declare type History_3 = {
|
|
161
|
+
declare type History_2 = {
|
|
182
162
|
source: 'realityCheck' | 'settings' | 'casino';
|
|
183
163
|
};
|
|
164
|
+
export { History_2 as History }
|
|
184
165
|
|
|
185
166
|
export declare class I18n {
|
|
186
167
|
#private;
|
|
@@ -201,14 +182,13 @@ export declare class KalambaSdk {
|
|
|
201
182
|
messagePort: Window;
|
|
202
183
|
});
|
|
203
184
|
get config(): SdkConfig;
|
|
204
|
-
get history(): History_2;
|
|
205
185
|
get i18n(): I18n;
|
|
206
186
|
protected request<M extends DomainMessage<'sdk'>>(message: M, ...[payload]: DomainMessagePayload<'sdk', M> extends never ? [] : [payload: DomainMessagePayload<'sdk', M>]): Promise<RgsResponse<M>>;
|
|
207
187
|
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_2): void;
|
|
208
188
|
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;
|
|
209
189
|
configure(payload: DomainMessagePayload<'sdk', 'configure'>): void;
|
|
210
190
|
openGame(): Promise<OpenGameResponse_2>;
|
|
211
|
-
play(contract: ContractPlayPayload, extra?: unknown
|
|
191
|
+
play(contract: ContractPlayPayload, extra?: unknown): Promise<PlayResponse_2>;
|
|
212
192
|
}
|
|
213
193
|
|
|
214
194
|
export declare type Message = keyof MessageMap;
|
|
@@ -270,15 +250,9 @@ export declare type OpenGameResponse = {
|
|
|
270
250
|
data: unknown;
|
|
271
251
|
};
|
|
272
252
|
|
|
273
|
-
export declare interface Pagination {
|
|
274
|
-
limit: number;
|
|
275
|
-
page: number;
|
|
276
|
-
}
|
|
277
|
-
|
|
278
253
|
export declare type PlayRequest = {
|
|
279
254
|
contract: ContractPlayPayload;
|
|
280
255
|
extra?: unknown;
|
|
281
|
-
actionType: string;
|
|
282
256
|
};
|
|
283
257
|
|
|
284
258
|
export declare type PlayRequestEnhanced = PlayRequest & {
|
|
@@ -438,7 +412,6 @@ export declare interface SdkConfig {
|
|
|
438
412
|
user: string;
|
|
439
413
|
sessionId: string;
|
|
440
414
|
backendSessionId?: string;
|
|
441
|
-
lastRoundId?: string;
|
|
442
415
|
};
|
|
443
416
|
ui: {
|
|
444
417
|
autoplay: {
|
|
@@ -523,7 +496,7 @@ export declare type SdkOnlyMessagePayloadMap = {
|
|
|
523
496
|
fullscreen: {
|
|
524
497
|
lock?: OrientationLockType;
|
|
525
498
|
};
|
|
526
|
-
history:
|
|
499
|
+
history: History_2;
|
|
527
500
|
loadEnd: never;
|
|
528
501
|
loadProgress: {
|
|
529
502
|
progress: number;
|
|
@@ -557,11 +530,6 @@ export declare type SdkOnlyMessagePayloadMap = {
|
|
|
557
530
|
freeRoundsPopup: never;
|
|
558
531
|
};
|
|
559
532
|
|
|
560
|
-
export declare interface SearchPeriod {
|
|
561
|
-
fromDateTime: Date;
|
|
562
|
-
toDateTime: Date;
|
|
563
|
-
}
|
|
564
|
-
|
|
565
533
|
export declare type Settings = {
|
|
566
534
|
fastPlay?: boolean;
|
|
567
535
|
fastPlaySpeed?: number;
|
|
@@ -623,7 +591,7 @@ export declare type WrapperOnlyMessagePayloadMap = {
|
|
|
623
591
|
configured: SdkConfig;
|
|
624
592
|
error: SdkError;
|
|
625
593
|
freeze: never;
|
|
626
|
-
history:
|
|
594
|
+
history: History_2;
|
|
627
595
|
resume: never;
|
|
628
596
|
state: WrapperState;
|
|
629
597
|
suspend: never;
|
package/dist/index.js
CHANGED
|
@@ -2,109 +2,24 @@
|
|
|
2
2
|
* BSD 3-Clause License
|
|
3
3
|
* Copyright (c) 2025, Kalamba Games Limited
|
|
4
4
|
*/
|
|
5
|
-
var
|
|
6
|
-
throw TypeError(
|
|
5
|
+
var S = (t) => {
|
|
6
|
+
throw TypeError(t);
|
|
7
7
|
};
|
|
8
|
-
var
|
|
9
|
-
var
|
|
10
|
-
import { T as
|
|
11
|
-
import { a as
|
|
12
|
-
import { d as
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
class U {
|
|
16
|
-
constructor(i) {
|
|
17
|
-
u(this, D);
|
|
18
|
-
u(this, h, B);
|
|
19
|
-
c(this, D, i);
|
|
20
|
-
}
|
|
21
|
-
buildHeaders() {
|
|
22
|
-
const i = {};
|
|
23
|
-
return r(this, D).token && (i.Authorization = `Bearer ${r(this, D).token}`), i;
|
|
24
|
-
}
|
|
25
|
-
async request(i, t) {
|
|
26
|
-
const n = new URL(i, r(this, D).apiUrl ?? window.location.origin);
|
|
27
|
-
return n.search = new URLSearchParams({
|
|
28
|
-
...t
|
|
29
|
-
}).toString(), await (await fetch(n, {
|
|
30
|
-
signal: AbortSignal.timeout(r(this, h)),
|
|
31
|
-
headers: this.buildHeaders()
|
|
32
|
-
})).json();
|
|
33
|
-
}
|
|
34
|
-
async getRounds(i) {
|
|
35
|
-
return this.request("/rounds", i);
|
|
36
|
-
}
|
|
37
|
-
async getRound(i, t) {
|
|
38
|
-
return this.request(`/rounds/${i}`, t);
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
D = new WeakMap(), h = new WeakMap();
|
|
42
|
-
const I = Symbol.for("constructDateFrom");
|
|
43
|
-
function H(m, i) {
|
|
44
|
-
return typeof m == "function" ? m(i) : m && typeof m == "object" && I in m ? m[I](i) : m instanceof Date ? new m.constructor(i) : new Date(i);
|
|
45
|
-
}
|
|
46
|
-
function M(m, i) {
|
|
47
|
-
return H(m, m);
|
|
48
|
-
}
|
|
49
|
-
function k(m, i) {
|
|
50
|
-
const t = M(m);
|
|
51
|
-
return t.setHours(0, 0, 0, 0), t;
|
|
52
|
-
}
|
|
53
|
-
function K(m, i) {
|
|
54
|
-
const t = M(m);
|
|
55
|
-
return t.setHours(23, 59, 59, 999), t;
|
|
56
|
-
}
|
|
57
|
-
function $(m) {
|
|
58
|
-
return K(Date.now());
|
|
59
|
-
}
|
|
60
|
-
function X(m) {
|
|
61
|
-
return k(Date.now());
|
|
8
|
+
var h = (t, i, m) => i.has(t) || S("Cannot " + m);
|
|
9
|
+
var a = (t, i, m) => (h(t, i, "read from private field"), m ? m.call(t) : i.get(t)), F = (t, i, m) => i.has(t) ? S("Cannot add the same private member more than once") : i instanceof WeakSet ? i.add(t) : i.set(t, m), C = (t, i, m, n) => (h(t, i, "write to private field"), n ? n.call(t, m) : i.set(t, m), m);
|
|
10
|
+
import { T as A, R as T } from "./errors-NnLrKjTz.js";
|
|
11
|
+
import { a as X } from "./errors-NnLrKjTz.js";
|
|
12
|
+
import { d as $, e as V } from "./encoders-BDr7fjKQ.js";
|
|
13
|
+
function N(t, i) {
|
|
14
|
+
return t * i / 100;
|
|
62
15
|
}
|
|
63
|
-
|
|
64
|
-
var s, C;
|
|
65
|
-
class _ {
|
|
66
|
-
constructor({ config: i }) {
|
|
67
|
-
u(this, s);
|
|
68
|
-
u(this, C);
|
|
69
|
-
c(this, s, i), c(this, C, new U({ apiUrl: i.api.gameHistoryUrl }));
|
|
70
|
-
}
|
|
71
|
-
async getRound(i, { pagination: t = O } = {}) {
|
|
72
|
-
return r(this, C).getRound(i, {
|
|
73
|
-
gameCode: r(this, s).api.game,
|
|
74
|
-
operatorCode: r(this, s).api.brand,
|
|
75
|
-
username: r(this, s).api.user,
|
|
76
|
-
...t
|
|
77
|
-
});
|
|
78
|
-
}
|
|
79
|
-
async getLastRound() {
|
|
80
|
-
return r(this, s).api.lastRoundId ? this.getRound(r(this, s).api.lastRoundId) : null;
|
|
81
|
-
}
|
|
82
|
-
async getRounds({
|
|
83
|
-
searchPeriod: i = { fromDateTime: X(), toDateTime: $() },
|
|
84
|
-
pagination: t = O
|
|
85
|
-
} = {}) {
|
|
86
|
-
const n = r(this, s).api.user.replace(/^user_/, "").replace(new RegExp(`_${r(this, s).api.integration}$`), "");
|
|
87
|
-
return r(this, C).getRounds({
|
|
88
|
-
gameCode: r(this, s).api.game,
|
|
89
|
-
operatorCode: r(this, s).api.integration,
|
|
90
|
-
username: n,
|
|
91
|
-
fromDataTime: i.fromDateTime.toISOString(),
|
|
92
|
-
toDateTime: i.toDateTime.toISOString(),
|
|
93
|
-
...t
|
|
94
|
-
});
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
s = new WeakMap(), C = new WeakMap();
|
|
98
|
-
function W(m, i) {
|
|
99
|
-
return m * i / 100;
|
|
100
|
-
}
|
|
101
|
-
function b(m, i, t) {
|
|
16
|
+
function w(t, i, m) {
|
|
102
17
|
if (!["string", "number"].includes(typeof i))
|
|
103
18
|
return "NaN";
|
|
104
|
-
const { locales: n } =
|
|
19
|
+
const { locales: n } = t;
|
|
105
20
|
try {
|
|
106
21
|
return new Intl.NumberFormat(n, {
|
|
107
|
-
...
|
|
22
|
+
...m,
|
|
108
23
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
109
24
|
// @ts-ignore
|
|
110
25
|
numberingSystem: "latn",
|
|
@@ -114,9 +29,9 @@ function b(m, i, t) {
|
|
|
114
29
|
return `${i}`;
|
|
115
30
|
}
|
|
116
31
|
}
|
|
117
|
-
const
|
|
118
|
-
var
|
|
119
|
-
const
|
|
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 = {
|
|
120
35
|
/* eslint-disable sort-keys-fix/sort-keys-fix */
|
|
121
36
|
// ARSB is the internal currency relevant for invoicing purposes, players should see it as ARS
|
|
122
37
|
ARSB: { displayAs: "ARS", maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
@@ -282,138 +197,130 @@ const w = {
|
|
|
282
197
|
IRR: { maximumFractionDigits: 2, minimumFractionDigits: 2 }
|
|
283
198
|
/* eslint-enable sort-keys-fix/sort-keys-fix */
|
|
284
199
|
};
|
|
285
|
-
function
|
|
286
|
-
return
|
|
200
|
+
function G(t) {
|
|
201
|
+
return t in f;
|
|
287
202
|
}
|
|
288
|
-
function
|
|
289
|
-
return
|
|
290
|
-
...
|
|
291
|
-
currency:
|
|
203
|
+
function M(t) {
|
|
204
|
+
return G(t) ? {
|
|
205
|
+
...f[t],
|
|
206
|
+
currency: l
|
|
292
207
|
} : {
|
|
293
|
-
currency:
|
|
208
|
+
currency: t
|
|
294
209
|
};
|
|
295
210
|
}
|
|
296
|
-
function
|
|
297
|
-
const n = i.format(+
|
|
298
|
-
return
|
|
211
|
+
function R(t, i, m) {
|
|
212
|
+
const n = i.format(+t);
|
|
213
|
+
return G(m) ? n.replace(l, f[m].displayAs ?? m) : n;
|
|
299
214
|
}
|
|
300
|
-
function
|
|
301
|
-
const { maximumFractionDigits: n, minimumFractionDigits:
|
|
302
|
-
return
|
|
215
|
+
function P(t, i, m) {
|
|
216
|
+
const { maximumFractionDigits: n, minimumFractionDigits: r } = m.resolvedOptions();
|
|
217
|
+
return w(t, i, { maximumFractionDigits: n, minimumFractionDigits: r });
|
|
303
218
|
}
|
|
304
|
-
function
|
|
219
|
+
function B(t, i, { as: m } = {
|
|
305
220
|
as: "Currency"
|
|
306
221
|
/* Currency */
|
|
307
222
|
}) {
|
|
308
|
-
const { canShowCurrency: n, currency:
|
|
309
|
-
return
|
|
223
|
+
const { canShowCurrency: n, currency: r } = t;
|
|
224
|
+
return m === "Number" || !n ? `${i}` : `${i} ${r}`;
|
|
310
225
|
}
|
|
311
|
-
function
|
|
226
|
+
function L(t, i, { as: m, from: n } = {
|
|
312
227
|
as: "Currency",
|
|
313
228
|
from: "Money"
|
|
314
229
|
/* Money */
|
|
315
|
-
},
|
|
230
|
+
}, r) {
|
|
316
231
|
if (!["string", "number"].includes(typeof i))
|
|
317
232
|
return "NaN";
|
|
318
|
-
const { canShowCurrency:
|
|
319
|
-
n === "Coins" && (i =
|
|
233
|
+
const { canShowCurrency: D = !0, coinValueInCents: o, currency: y, locales: p } = t;
|
|
234
|
+
n === "Coins" && (i = N(+i, o));
|
|
320
235
|
try {
|
|
321
|
-
const
|
|
322
|
-
...
|
|
323
|
-
...
|
|
236
|
+
const E = M(y), d = new Intl.NumberFormat(p, {
|
|
237
|
+
...E,
|
|
238
|
+
...r,
|
|
324
239
|
currencyDisplay: "symbol",
|
|
325
240
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
326
241
|
// @ts-ignore
|
|
327
242
|
numberingSystem: "latn",
|
|
328
243
|
style: "currency"
|
|
329
244
|
});
|
|
330
|
-
return
|
|
245
|
+
return m === "Number" || !D ? P(t, i, d) : R(i, d, y);
|
|
331
246
|
} catch {
|
|
332
|
-
return
|
|
247
|
+
return B(t, i, { as: m });
|
|
333
248
|
}
|
|
334
249
|
}
|
|
335
|
-
var
|
|
336
|
-
class
|
|
250
|
+
var s;
|
|
251
|
+
class O {
|
|
337
252
|
constructor({ config: i }) {
|
|
338
|
-
|
|
339
|
-
|
|
253
|
+
F(this, s);
|
|
254
|
+
C(this, s, i);
|
|
340
255
|
}
|
|
341
|
-
formatNumber(i,
|
|
342
|
-
const n = { locales: [
|
|
343
|
-
return
|
|
256
|
+
formatNumber(i, m) {
|
|
257
|
+
const n = { locales: [a(this, s).ui.language] };
|
|
258
|
+
return w(n, i, m);
|
|
344
259
|
}
|
|
345
|
-
formatCurrency(i,
|
|
346
|
-
const
|
|
347
|
-
return
|
|
348
|
-
canShowCurrency:
|
|
349
|
-
coinValueInCents:
|
|
350
|
-
currency:
|
|
351
|
-
locales:
|
|
352
|
-
}, i,
|
|
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);
|
|
353
268
|
}
|
|
354
|
-
formatCoins(i,
|
|
355
|
-
return this.formatCurrency(i, { as:
|
|
269
|
+
formatCoins(i, m) {
|
|
270
|
+
return this.formatCurrency(i, { as: u.Number, from: c.Coins }, m);
|
|
356
271
|
}
|
|
357
|
-
formatCoinsWithCurrency(i,
|
|
358
|
-
return this.formatCurrency(i, { as:
|
|
272
|
+
formatCoinsWithCurrency(i, m) {
|
|
273
|
+
return this.formatCurrency(i, { as: u.Currency, from: c.Coins }, m);
|
|
359
274
|
}
|
|
360
|
-
formatMoney(i,
|
|
361
|
-
return this.formatCurrency(i, { as:
|
|
275
|
+
formatMoney(i, m) {
|
|
276
|
+
return this.formatCurrency(i, { as: u.Number, from: c.Money }, m);
|
|
362
277
|
}
|
|
363
|
-
formatMoneyWithCurrency(i,
|
|
364
|
-
return this.formatCurrency(i, { as:
|
|
278
|
+
formatMoneyWithCurrency(i, m) {
|
|
279
|
+
return this.formatCurrency(i, { as: u.Currency, from: c.Money }, m);
|
|
365
280
|
}
|
|
366
281
|
}
|
|
367
|
-
|
|
368
|
-
const
|
|
282
|
+
s = new WeakMap();
|
|
283
|
+
const I = () => {
|
|
369
284
|
};
|
|
370
|
-
var
|
|
371
|
-
class
|
|
285
|
+
var e, g, x;
|
|
286
|
+
class U {
|
|
372
287
|
constructor({ messagePort: i }) {
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
c(this, x, t), c(this, p, new Y({ config: t })), c(this, f, new _({ config: t }));
|
|
379
|
-
}), this.on("playResponse", (t) => {
|
|
380
|
-
this.config.api.lastRoundId = t.contract.roundId;
|
|
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 }));
|
|
381
293
|
});
|
|
382
294
|
}
|
|
383
295
|
get config() {
|
|
384
|
-
if (!
|
|
385
|
-
throw new Error("config is not initialized, you must open game first");
|
|
386
|
-
return r(this, x);
|
|
387
|
-
}
|
|
388
|
-
get history() {
|
|
389
|
-
if (!r(this, f))
|
|
296
|
+
if (!a(this, e))
|
|
390
297
|
throw new Error("config is not initialized, you must open game first");
|
|
391
|
-
return
|
|
298
|
+
return a(this, e);
|
|
392
299
|
}
|
|
393
300
|
get i18n() {
|
|
394
|
-
if (!
|
|
301
|
+
if (!a(this, g))
|
|
395
302
|
throw new Error("i18n is not initialized, you must open game first");
|
|
396
|
-
return
|
|
303
|
+
return a(this, g);
|
|
397
304
|
}
|
|
398
|
-
request(i, ...[
|
|
305
|
+
request(i, ...[m]) {
|
|
399
306
|
return new Promise((n) => {
|
|
400
|
-
this.on(`${i}Response`, (
|
|
307
|
+
this.on(`${i}Response`, (r) => n({ type: "response", response: r }), {
|
|
401
308
|
once: !0
|
|
402
|
-
}), this.on(`${i}Error`, (
|
|
309
|
+
}), this.on(`${i}Error`, (r) => n({ type: "error", error: r }), { once: !0 }), this.send(i, m);
|
|
403
310
|
});
|
|
404
311
|
}
|
|
405
|
-
on(i,
|
|
406
|
-
const
|
|
407
|
-
|
|
312
|
+
on(i, m, n) {
|
|
313
|
+
const r = function D(o) {
|
|
314
|
+
o.data.message === `kalamba:wrapper:${i}` && (I("on", o.data.message.replace(/^kalamba:/, ""), o.data.payload), m(o.data.payload), n != null && n.once && window.removeEventListener("message", D));
|
|
408
315
|
};
|
|
409
|
-
window.addEventListener("message",
|
|
316
|
+
window.addEventListener("message", r);
|
|
410
317
|
}
|
|
411
318
|
// TODO error messages
|
|
412
|
-
send(i, ...[
|
|
413
|
-
|
|
319
|
+
send(i, ...[m]) {
|
|
320
|
+
a(this, x).postMessage(
|
|
414
321
|
{
|
|
415
322
|
message: `kalamba:sdk:${i}`,
|
|
416
|
-
payload:
|
|
323
|
+
payload: m
|
|
417
324
|
},
|
|
418
325
|
"*"
|
|
419
326
|
);
|
|
@@ -422,26 +329,25 @@ class ii {
|
|
|
422
329
|
this.send("configure", i);
|
|
423
330
|
}
|
|
424
331
|
async openGame() {
|
|
425
|
-
const i = new Promise((n) => this.on("configured", n, { once: !0 })),
|
|
426
|
-
if (
|
|
427
|
-
return await i,
|
|
428
|
-
throw
|
|
332
|
+
const i = new Promise((n) => this.on("configured", n, { once: !0 })), m = await this.request("openGame");
|
|
333
|
+
if (m.type === "response")
|
|
334
|
+
return await i, m.response;
|
|
335
|
+
throw m.error.type === "timeout" ? new A() : new T(m.error.data);
|
|
429
336
|
}
|
|
430
|
-
async play(i,
|
|
431
|
-
const
|
|
432
|
-
if (
|
|
433
|
-
return
|
|
434
|
-
throw
|
|
337
|
+
async play(i, m) {
|
|
338
|
+
const n = { contract: i, extra: m }, r = await this.request("play", n);
|
|
339
|
+
if (r.type === "response")
|
|
340
|
+
return r.response;
|
|
341
|
+
throw r.error.type === "timeout" ? new A() : new T(r.error.data);
|
|
435
342
|
}
|
|
436
343
|
}
|
|
437
|
-
|
|
344
|
+
e = new WeakMap(), g = new WeakMap(), x = new WeakMap();
|
|
438
345
|
export {
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
si as encoders
|
|
346
|
+
O as I18n,
|
|
347
|
+
U as KalambaSdk,
|
|
348
|
+
T as RgsError,
|
|
349
|
+
X as RgsErrorCode,
|
|
350
|
+
A as TimeoutError,
|
|
351
|
+
$ as decoders,
|
|
352
|
+
V as encoders
|
|
447
353
|
};
|