@kalamba/sdk 0.23.0 → 0.26.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 +16 -3
- package/dist/index.js +40 -35
- package/dist/plugins.cjs +1 -1
- package/dist/plugins.d.ts +26 -8
- package/dist/plugins.js +307 -275
- package/dist/wrapper.cjs +1 -1
- package/dist/wrapper.d.ts +22 -3
- package/dist/wrapper.js +933 -927
- package/package.json +1 -1
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 N=(m,i,t)=>i.has(m)||E("Cannot "+t);var r=(m,i,t)=>(N(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)=>(N(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 I=Symbol.for("constructDateFrom");function K(m,i){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)}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 G={limit:100,page:0};var a,x;class P{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=G}={}){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=G}={}){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 V(m,i){return m*i/100}function L(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},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 M(m){return m in w}function W(m){return M(m)?{...w[m],currency:T}:{currency:m}}function z(m,i,t){const n=i.format(+m);return M(t)?n.replace(T,w[t].displayAs??t):n}function j(m,i,t){const{maximumFractionDigits:n,minimumFractionDigits:s}=t.resolvedOptions();return L(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=V(+i,g));try{const U=W(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 L(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 f,l,d,p;class Q{constructor({messagePort:i}){u(this,f);u(this,l);u(this,d);u(this,p);e(this,p,i),this.on("configured",t=>{e(this,f,t),e(this,d,new B({config:t})),e(this,l,new P({config:t}))}),this.on("playResponse",t=>{this.config.api.lastRoundId=t.contract.roundId})}get config(){if(!r(this,f))throw new Error("config is not initialized, you must open game first");return r(this,f)}get history(){if(!r(this,l))throw new Error("config is not initialized, you must open game first");return r(this,l)}get i18n(){if(!r(this,d))throw new Error("i18n is not initialized, you must open game first");return r(this,d)}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)}}f=new WeakMap,l=new WeakMap,d=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=P;exports.I18n=B;exports.KalambaSdk=Q;
|
|
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;
|
package/dist/index.d.ts
CHANGED
|
@@ -144,11 +144,20 @@ export declare type FreeRoundsAction = {
|
|
|
144
144
|
id: string;
|
|
145
145
|
};
|
|
146
146
|
|
|
147
|
+
export declare type FreeRoundsRequest = {
|
|
148
|
+
id: string;
|
|
149
|
+
action: 'ACCEPT' | 'DECLINE' | 'SKIP';
|
|
150
|
+
};
|
|
151
|
+
|
|
147
152
|
export declare type FreeRoundsResponse = {
|
|
148
153
|
action: 'ACCEPT' | 'DECLINE' | 'SKIP';
|
|
149
154
|
id: string;
|
|
150
155
|
};
|
|
151
156
|
|
|
157
|
+
export declare type GetBalanceResponse = {
|
|
158
|
+
balance: number;
|
|
159
|
+
};
|
|
160
|
+
|
|
152
161
|
export declare interface GetRoundOptions {
|
|
153
162
|
pagination?: Pagination;
|
|
154
163
|
}
|
|
@@ -272,6 +281,10 @@ export declare type PlayRequest = {
|
|
|
272
281
|
actionType: string;
|
|
273
282
|
};
|
|
274
283
|
|
|
284
|
+
export declare type PlayRequestEnhanced = PlayRequest & {
|
|
285
|
+
payloadToInject?: Record<string, unknown>;
|
|
286
|
+
};
|
|
287
|
+
|
|
275
288
|
export declare type PlayResponse = {
|
|
276
289
|
contract: {
|
|
277
290
|
bet: {
|
|
@@ -475,6 +488,7 @@ export declare interface SdkConfig {
|
|
|
475
488
|
realityCheck: RealityCheckConfig;
|
|
476
489
|
skipInsufficientFundsCheck: boolean;
|
|
477
490
|
skipSplash: boolean;
|
|
491
|
+
cheatPanel: boolean;
|
|
478
492
|
};
|
|
479
493
|
}
|
|
480
494
|
|
|
@@ -596,6 +610,7 @@ export declare type WrapperConfig = {
|
|
|
596
610
|
gameVersion: string;
|
|
597
611
|
gameHistoryUrl?: string;
|
|
598
612
|
showFreeRounds: boolean;
|
|
613
|
+
showPromoPanel: boolean;
|
|
599
614
|
showRealityCheck: boolean;
|
|
600
615
|
showErrors: boolean;
|
|
601
616
|
showBars: boolean;
|
|
@@ -614,9 +629,7 @@ export declare type WrapperOnlyMessagePayloadMap = {
|
|
|
614
629
|
suspend: never;
|
|
615
630
|
unfreeze: never;
|
|
616
631
|
legalBets: Record<number, number[]>;
|
|
617
|
-
play:
|
|
618
|
-
payloadToInject?: Record<string, unknown>;
|
|
619
|
-
};
|
|
632
|
+
play: PlayRequestEnhanced;
|
|
620
633
|
freeRounds: FreeRoundsAction;
|
|
621
634
|
freeRoundsOffer: FreeRound;
|
|
622
635
|
freeRoundsInfo: FreeRound;
|
package/dist/index.js
CHANGED
|
@@ -6,17 +6,17 @@ var R = (m) => {
|
|
|
6
6
|
throw TypeError(m);
|
|
7
7
|
};
|
|
8
8
|
var E = (m, i, t) => i.has(m) || R("Cannot " + t);
|
|
9
|
-
var r = (m, i, t) => (E(m, i, "read from private field"), t ? t.call(m) : i.get(m)), u = (m, i, t) => i.has(m) ? R("Cannot add the same private member more than once") : i instanceof WeakSet ? i.add(m) : i.set(m, t),
|
|
10
|
-
import { T as
|
|
9
|
+
var r = (m, i, t) => (E(m, i, "read from private field"), t ? t.call(m) : i.get(m)), u = (m, i, t) => i.has(m) ? R("Cannot add the same private member more than once") : i instanceof WeakSet ? i.add(m) : i.set(m, t), c = (m, i, t, n) => (E(m, i, "write to private field"), n ? n.call(m, t) : i.set(m, t), t);
|
|
10
|
+
import { T as G, R as N } from "./errors-NnLrKjTz.js";
|
|
11
11
|
import { a as ni } from "./errors-NnLrKjTz.js";
|
|
12
12
|
import { d as ai, e as si } from "./encoders-BDr7fjKQ.js";
|
|
13
|
-
const
|
|
13
|
+
const B = 3e4;
|
|
14
14
|
var D, h;
|
|
15
15
|
class U {
|
|
16
16
|
constructor(i) {
|
|
17
17
|
u(this, D);
|
|
18
|
-
u(this, h,
|
|
19
|
-
|
|
18
|
+
u(this, h, B);
|
|
19
|
+
c(this, D, i);
|
|
20
20
|
}
|
|
21
21
|
buildHeaders() {
|
|
22
22
|
const i = {};
|
|
@@ -43,15 +43,15 @@ const I = Symbol.for("constructDateFrom");
|
|
|
43
43
|
function H(m, i) {
|
|
44
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
45
|
}
|
|
46
|
-
function
|
|
46
|
+
function M(m, i) {
|
|
47
47
|
return H(m, m);
|
|
48
48
|
}
|
|
49
49
|
function k(m, i) {
|
|
50
|
-
const t =
|
|
50
|
+
const t = M(m);
|
|
51
51
|
return t.setHours(0, 0, 0, 0), t;
|
|
52
52
|
}
|
|
53
53
|
function K(m, i) {
|
|
54
|
-
const t =
|
|
54
|
+
const t = M(m);
|
|
55
55
|
return t.setHours(23, 59, 59, 999), t;
|
|
56
56
|
}
|
|
57
57
|
function $(m) {
|
|
@@ -66,7 +66,7 @@ class _ {
|
|
|
66
66
|
constructor({ config: i }) {
|
|
67
67
|
u(this, s);
|
|
68
68
|
u(this, C);
|
|
69
|
-
|
|
69
|
+
c(this, s, i), c(this, C, new U({ apiUrl: i.api.gameHistoryUrl }));
|
|
70
70
|
}
|
|
71
71
|
async getRound(i, { pagination: t = O } = {}) {
|
|
72
72
|
return r(this, C).getRound(i, {
|
|
@@ -95,10 +95,10 @@ class _ {
|
|
|
95
95
|
}
|
|
96
96
|
}
|
|
97
97
|
s = new WeakMap(), C = new WeakMap();
|
|
98
|
-
function
|
|
98
|
+
function W(m, i) {
|
|
99
99
|
return m * i / 100;
|
|
100
100
|
}
|
|
101
|
-
function
|
|
101
|
+
function b(m, i, t) {
|
|
102
102
|
if (!["string", "number"].includes(typeof i))
|
|
103
103
|
return "NaN";
|
|
104
104
|
const { locales: n } = m;
|
|
@@ -240,6 +240,11 @@ const w = {
|
|
|
240
240
|
LUCK: { displayAs: "LUCK", maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
241
241
|
CXCO: { displayAs: "CC", maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
242
242
|
GZCO: { displayAs: "GC", maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
243
|
+
// gametech
|
|
244
|
+
FC: { displayAs: "", maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
245
|
+
RC: { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
246
|
+
MWSC: { displayAs: "MC", maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
247
|
+
MWGC: { displayAs: "GC", maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
243
248
|
// https://kalamba.atlassian.net/browse/FRAM-1829
|
|
244
249
|
// Myanmar Kyat
|
|
245
250
|
MMK: { maximumFractionDigits: 2, minimumFractionDigits: 2 },
|
|
@@ -277,24 +282,24 @@ const w = {
|
|
|
277
282
|
IRR: { maximumFractionDigits: 2, minimumFractionDigits: 2 }
|
|
278
283
|
/* eslint-enable sort-keys-fix/sort-keys-fix */
|
|
279
284
|
};
|
|
280
|
-
function
|
|
285
|
+
function L(m) {
|
|
281
286
|
return m in w;
|
|
282
287
|
}
|
|
283
|
-
function
|
|
284
|
-
return
|
|
288
|
+
function V(m) {
|
|
289
|
+
return L(m) ? {
|
|
285
290
|
...w[m],
|
|
286
291
|
currency: S
|
|
287
292
|
} : {
|
|
288
293
|
currency: m
|
|
289
294
|
};
|
|
290
295
|
}
|
|
291
|
-
function
|
|
296
|
+
function q(m, i, t) {
|
|
292
297
|
const n = i.format(+m);
|
|
293
|
-
return
|
|
298
|
+
return L(t) ? n.replace(S, w[t].displayAs ?? t) : n;
|
|
294
299
|
}
|
|
295
300
|
function z(m, i, t) {
|
|
296
301
|
const { maximumFractionDigits: n, minimumFractionDigits: a } = t.resolvedOptions();
|
|
297
|
-
return
|
|
302
|
+
return b(m, i, { maximumFractionDigits: n, minimumFractionDigits: a });
|
|
298
303
|
}
|
|
299
304
|
function J(m, i, { as: t } = {
|
|
300
305
|
as: "Currency"
|
|
@@ -310,11 +315,11 @@ function j(m, i, { as: t, from: n } = {
|
|
|
310
315
|
}, a) {
|
|
311
316
|
if (!["string", "number"].includes(typeof i))
|
|
312
317
|
return "NaN";
|
|
313
|
-
const { canShowCurrency: o = !0, coinValueInCents: g, currency: d, locales:
|
|
314
|
-
n === "Coins" && (i =
|
|
318
|
+
const { canShowCurrency: o = !0, coinValueInCents: g, currency: d, locales: A } = m;
|
|
319
|
+
n === "Coins" && (i = W(+i, g));
|
|
315
320
|
try {
|
|
316
|
-
const
|
|
317
|
-
...
|
|
321
|
+
const P = V(d), T = new Intl.NumberFormat(A, {
|
|
322
|
+
...P,
|
|
318
323
|
...a,
|
|
319
324
|
currencyDisplay: "symbol",
|
|
320
325
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
@@ -322,23 +327,23 @@ function j(m, i, { as: t, from: n } = {
|
|
|
322
327
|
numberingSystem: "latn",
|
|
323
328
|
style: "currency"
|
|
324
329
|
});
|
|
325
|
-
return t === "Number" || !o ? z(m, i,
|
|
330
|
+
return t === "Number" || !o ? z(m, i, T) : q(i, T, d);
|
|
326
331
|
} catch {
|
|
327
332
|
return J(m, i, { as: t });
|
|
328
333
|
}
|
|
329
334
|
}
|
|
330
|
-
var
|
|
335
|
+
var e;
|
|
331
336
|
class Y {
|
|
332
337
|
constructor({ config: i }) {
|
|
333
|
-
u(this,
|
|
334
|
-
|
|
338
|
+
u(this, e);
|
|
339
|
+
c(this, e, i);
|
|
335
340
|
}
|
|
336
341
|
formatNumber(i, t) {
|
|
337
|
-
const n = { locales: [r(this,
|
|
338
|
-
return
|
|
342
|
+
const n = { locales: [r(this, e).ui.language] };
|
|
343
|
+
return b(n, i, t);
|
|
339
344
|
}
|
|
340
345
|
formatCurrency(i, t = { as: F.Currency, from: y.Money }, n) {
|
|
341
|
-
const a = r(this,
|
|
346
|
+
const a = r(this, e).ui.feature.showCurrency, o = r(this, e).api.coinValueInCents, g = r(this, e).api.currency || S, d = [r(this, e).ui.language];
|
|
342
347
|
return j({
|
|
343
348
|
canShowCurrency: a,
|
|
344
349
|
coinValueInCents: o,
|
|
@@ -359,7 +364,7 @@ class Y {
|
|
|
359
364
|
return this.formatCurrency(i, { as: F.Currency, from: y.Money }, t);
|
|
360
365
|
}
|
|
361
366
|
}
|
|
362
|
-
|
|
367
|
+
e = new WeakMap();
|
|
363
368
|
const v = () => {
|
|
364
369
|
};
|
|
365
370
|
var x, f, p, l;
|
|
@@ -369,8 +374,8 @@ class ii {
|
|
|
369
374
|
u(this, f);
|
|
370
375
|
u(this, p);
|
|
371
376
|
u(this, l);
|
|
372
|
-
|
|
373
|
-
|
|
377
|
+
c(this, l, i), this.on("configured", (t) => {
|
|
378
|
+
c(this, x, t), c(this, p, new Y({ config: t })), c(this, f, new _({ config: t }));
|
|
374
379
|
}), this.on("playResponse", (t) => {
|
|
375
380
|
this.config.api.lastRoundId = t.contract.roundId;
|
|
376
381
|
});
|
|
@@ -420,13 +425,13 @@ class ii {
|
|
|
420
425
|
const i = new Promise((n) => this.on("configured", n, { once: !0 })), t = await this.request("openGame");
|
|
421
426
|
if (t.type === "response")
|
|
422
427
|
return await i, t.response;
|
|
423
|
-
throw t.error.type === "timeout" ? new
|
|
428
|
+
throw t.error.type === "timeout" ? new G() : new N(t.error.data);
|
|
424
429
|
}
|
|
425
430
|
async play(i, t, n = "SPIN") {
|
|
426
431
|
const a = { contract: i, extra: t, actionType: n }, o = await this.request("play", a);
|
|
427
432
|
if (o.type === "response")
|
|
428
433
|
return o.response;
|
|
429
|
-
throw o.error.type === "timeout" ? new
|
|
434
|
+
throw o.error.type === "timeout" ? new G() : new N(o.error.data);
|
|
430
435
|
}
|
|
431
436
|
}
|
|
432
437
|
x = new WeakMap(), f = new WeakMap(), p = new WeakMap(), l = new WeakMap();
|
|
@@ -434,9 +439,9 @@ export {
|
|
|
434
439
|
_ as History,
|
|
435
440
|
Y as I18n,
|
|
436
441
|
ii as KalambaSdk,
|
|
437
|
-
|
|
442
|
+
N as RgsError,
|
|
438
443
|
ni as RgsErrorCode,
|
|
439
|
-
|
|
444
|
+
G as TimeoutError,
|
|
440
445
|
ai as decoders,
|
|
441
446
|
si as encoders
|
|
442
447
|
};
|