@monerium/sdk 2.8.3 → 2.10.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/CHANGELOG.md CHANGED
@@ -1,5 +1,19 @@
1
1
  # Changelog
2
2
 
3
+ ## [2.10.0](https://github.com/monerium/js-sdk/compare/sdk-v2.9.0...sdk-v2.10.0) (2023-12-20)
4
+
5
+
6
+ ### Features
7
+
8
+ * use localStorage instead of sessionStorage to persists session between tabs ([8b5bc8b](https://github.com/monerium/js-sdk/commit/8b5bc8bfe0d773d14e13c020b75744b751375cb9))
9
+
10
+ ## [2.9.0](https://github.com/monerium/js-sdk/compare/sdk-v2.8.3...sdk-v2.9.0) (2023-12-15)
11
+
12
+
13
+ ### Features
14
+
15
+ * use chainId instead of network and chain ([9d4f0dd](https://github.com/monerium/js-sdk/commit/9d4f0ddec29d68fe56a0c65074310d842168932e))
16
+
3
17
  ## [2.8.3](https://github.com/monerium/js-sdk/compare/sdk-v2.8.2...sdk-v2.8.3) (2023-12-11)
4
18
 
5
19
 
package/dist/client.d.ts CHANGED
@@ -2,7 +2,7 @@ import type { AuthArgs, AuthorizationCodeCredentials, AuthContext, Balances, Bea
2
2
  export declare class MoneriumClient {
3
3
  #private;
4
4
  /**
5
- * @deprecated, use sessionStorage
5
+ * @deprecated, use localStorage, will be removed in v3
6
6
  * The PKCE code verifier
7
7
  * */
8
8
  codeVerifier?: string;
@@ -17,7 +17,7 @@ export declare class MoneriumClient {
17
17
  constructor(options: ClassOptions);
18
18
  /**
19
19
  * Construct the url to the authorization code flow,
20
- * Code Verifier needed for the code challenge is stored in session storage
20
+ * Code Verifier needed for the code challenge is stored in local storage
21
21
  * For automatic wallet link, add the following properties: `address`, `signature` & `chainId`
22
22
  * @returns string
23
23
  * {@link https://monerium.dev/api-docs#operation/auth}
@@ -11,7 +11,7 @@ export declare const generateRandomString: () => string;
11
11
  /** Generate the PKCE code challenge */
12
12
  export declare const generateCodeChallenge: (codeVerifier: string) => string;
13
13
  /**
14
- * Constructs the Auth Flow URL and stores the code verifier in the session storage
14
+ * Constructs the Auth Flow URL and stores the code verifier in the local storage
15
15
  */
16
16
  export declare const getAuthFlowUrlAndStoreCodeVerifier: (baseUrl: string, args: PKCERequestArgs) => string;
17
17
  /**
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- "use strict";var Z=(e,t,r)=>{if(!t.has(e))throw TypeError("Cannot "+r)};var w=(e,t,r)=>(Z(e,t,"read from private field"),r?r.call(e):t.get(e)),R=(e,t,r)=>{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,r)},I=(e,t,r,n)=>(Z(e,t,"write to private field"),n?n.call(e,r):t.set(e,r),r);var B=(e,t,r)=>(Z(e,t,"access private method"),r);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});var ie=(e=>(e.eur="eur",e))(ie||{}),ae=(e=>(e.corporate="corporate",e.personal="personal",e))(ae||{}),ce=(e=>(e.read="read",e.write="write",e))(ce||{}),ue=(e=>(e.absent="absent",e.submitted="submitted",e.pending="pending",e.confirmed="confirmed",e))(ue||{}),he=(e=>(e.approved="approved",e.rejected="rejected",e.unknown="unknown",e))(he||{}),de=(e=>(e.requested="requested",e.approved="approved",e.pending="pending",e))(de||{}),fe=(e=>(e.iban="iban",e.scan="scan",e.chain="chain",e))(fe||{}),le=(e=>(e.redeem="redeem",e.issue="issue",e))(le||{}),pe=(e=>(e.placed="placed",e.pending="pending",e.processed="processed",e.rejected="rejected",e))(pe||{});const Y=e=>{if(e.toString()==="Invalid Date")throw e;const t=n=>n<10?"0"+n:n,r=n=>{if(n===0)return"Z";const u=n>0?"-":"+";return n=Math.abs(n),u+t(Math.floor(n/60))+":"+t(n%60)};return e.getFullYear()+"-"+t(e.getMonth()+1)+"-"+t(e.getDate())+"T"+t(e.getHours())+":"+t(e.getMinutes())+":"+t(e.getSeconds())+r(e.getTimezoneOffset())},ke=(e,t,r,n)=>{const u=`${(n==null?void 0:n.toUpperCase())||"EUR"}`;return r?`Send ${u} ${e} to ${t} on ${ee(r)} at ${Y(new Date)}`:`Send ${u} ${e} to ${t} at ${Y(new Date)}`},Q=e=>{var t;return e&&((t=Object.entries(e))==null?void 0:t.length)>0?Object.entries(e).map(([r,n])=>`${encodeURIComponent(r)}=${encodeURIComponent(n)}`).join("&"):""},ee=e=>{switch(e){case 1:case 5:return"ethereum";case 100:case 10200:return"gnosis";case 137:case 80001:return"polygon";default:throw new Error(`Chain not supported: ${e}`)}},ve=e=>{switch(e){case 1:case 100:case 137:return"mainnet";case 5:return"goerli";case 10200:return"chiado";case 80001:return"mumbai";default:throw new Error(`Network not supported: ${e}`)}},K={environments:{production:{api:"https://api.monerium.app",web:"https://monerium.app",wss:"wss://api.monerium.app"},sandbox:{api:"https://api.monerium.dev",web:"https://sandbox.monerium.dev",wss:"wss://api.monerium.dev"}}},xe="I hereby declare that I am the address owner.",M="monerium.sdk.code_verifier",D="monerium.sdk.refresh_token",Ae={LINK_MESSAGE:xe,STORAGE_CODE_VERIFIER:M,STORAGE_REFRESH_TOKEN:D};var N=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function ge(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function Ee(e){if(e.__esModule)return e;var t=e.default;if(typeof t=="function"){var r=function n(){return this instanceof n?Reflect.construct(t,arguments,this.constructor):t.apply(this,arguments)};r.prototype=t.prototype}else r={};return Object.defineProperty(r,"__esModule",{value:!0}),Object.keys(e).forEach(function(n){var u=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(r,n,u.get?u:{enumerable:!0,get:function(){return e[n]}})}),r}var we={exports:{}};function Ie(e){throw new Error('Could not dynamically require "'+e+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var X={exports:{}};const $e={},Re=Object.freeze(Object.defineProperty({__proto__:null,default:$e},Symbol.toStringTag,{value:"Module"})),Oe=Ee(Re);var re;function ye(){return re||(re=1,function(e,t){(function(r,n){e.exports=n()})(N,function(){var r=r||function(n,u){var c;if(typeof window<"u"&&window.crypto&&(c=window.crypto),typeof self<"u"&&self.crypto&&(c=self.crypto),typeof globalThis<"u"&&globalThis.crypto&&(c=globalThis.crypto),!c&&typeof window<"u"&&window.msCrypto&&(c=window.msCrypto),!c&&typeof N<"u"&&N.crypto&&(c=N.crypto),!c&&typeof Ie=="function")try{c=Oe}catch{}var v=function(){if(c){if(typeof c.getRandomValues=="function")try{return c.getRandomValues(new Uint32Array(1))[0]}catch{}if(typeof c.randomBytes=="function")try{return c.randomBytes(4).readInt32LE()}catch{}}throw new Error("Native crypto module could not be used to get secure random number.")},C=Object.create||function(){function s(){}return function(o){var a;return s.prototype=o,a=new s,s.prototype=null,a}}(),p={},y=p.lib={},m=y.Base=function(){return{extend:function(s){var o=C(this);return s&&o.mixIn(s),(!o.hasOwnProperty("init")||this.init===o.init)&&(o.init=function(){o.$super.init.apply(this,arguments)}),o.init.prototype=o,o.$super=this,o},create:function(){var s=this.extend();return s.init.apply(s,arguments),s},init:function(){},mixIn:function(s){for(var o in s)s.hasOwnProperty(o)&&(this[o]=s[o]);s.hasOwnProperty("toString")&&(this.toString=s.toString)},clone:function(){return this.init.prototype.extend(this)}}}(),g=y.WordArray=m.extend({init:function(s,o){s=this.words=s||[],o!=u?this.sigBytes=o:this.sigBytes=s.length*4},toString:function(s){return(s||d).stringify(this)},concat:function(s){var o=this.words,a=s.words,h=this.sigBytes,_=s.sigBytes;if(this.clamp(),h%4)for(var S=0;S<_;S++){var k=a[S>>>2]>>>24-S%4*8&255;o[h+S>>>2]|=k<<24-(h+S)%4*8}else for(var x=0;x<_;x+=4)o[h+x>>>2]=a[x>>>2];return this.sigBytes+=_,this},clamp:function(){var s=this.words,o=this.sigBytes;s[o>>>2]&=4294967295<<32-o%4*8,s.length=n.ceil(o/4)},clone:function(){var s=m.clone.call(this);return s.words=this.words.slice(0),s},random:function(s){for(var o=[],a=0;a<s;a+=4)o.push(v());return new g.init(o,s)}}),b=p.enc={},d=b.Hex={stringify:function(s){for(var o=s.words,a=s.sigBytes,h=[],_=0;_<a;_++){var S=o[_>>>2]>>>24-_%4*8&255;h.push((S>>>4).toString(16)),h.push((S&15).toString(16))}return h.join("")},parse:function(s){for(var o=s.length,a=[],h=0;h<o;h+=2)a[h>>>3]|=parseInt(s.substr(h,2),16)<<24-h%8*4;return new g.init(a,o/2)}},l=b.Latin1={stringify:function(s){for(var o=s.words,a=s.sigBytes,h=[],_=0;_<a;_++){var S=o[_>>>2]>>>24-_%4*8&255;h.push(String.fromCharCode(S))}return h.join("")},parse:function(s){for(var o=s.length,a=[],h=0;h<o;h++)a[h>>>2]|=(s.charCodeAt(h)&255)<<24-h%4*8;return new g.init(a,o)}},i=b.Utf8={stringify:function(s){try{return decodeURIComponent(escape(l.stringify(s)))}catch{throw new Error("Malformed UTF-8 data")}},parse:function(s){return l.parse(unescape(encodeURIComponent(s)))}},f=y.BufferedBlockAlgorithm=m.extend({reset:function(){this._data=new g.init,this._nDataBytes=0},_append:function(s){typeof s=="string"&&(s=i.parse(s)),this._data.concat(s),this._nDataBytes+=s.sigBytes},_process:function(s){var o,a=this._data,h=a.words,_=a.sigBytes,S=this.blockSize,k=S*4,x=_/k;s?x=n.ceil(x):x=n.max((x|0)-this._minBufferSize,0);var j=x*S,U=n.min(j*4,_);if(j){for(var W=0;W<j;W+=S)this._doProcessBlock(h,W);o=h.splice(0,j),a.sigBytes-=U}return new g.init(o,U)},clone:function(){var s=m.clone.call(this);return s._data=this._data.clone(),s},_minBufferSize:0});y.Hasher=f.extend({cfg:m.extend(),init:function(s){this.cfg=this.cfg.extend(s),this.reset()},reset:function(){f.reset.call(this),this._doReset()},update:function(s){return this._append(s),this._process(),this},finalize:function(s){s&&this._append(s);var o=this._doFinalize();return o},blockSize:16,_createHelper:function(s){return function(o,a){return new s.init(a).finalize(o)}},_createHmacHelper:function(s){return function(o,a){return new A.HMAC.init(s,a).finalize(o)}}});var A=p.algo={};return p}(Math);return r})}(X)),X.exports}(function(e,t){(function(r,n){e.exports=n(ye())})(N,function(r){return function(){var n=r,u=n.lib,c=u.WordArray,v=n.enc;v.Base64url={stringify:function(p,y){y===void 0&&(y=!0);var m=p.words,g=p.sigBytes,b=y?this._safe_map:this._map;p.clamp();for(var d=[],l=0;l<g;l+=3)for(var i=m[l>>>2]>>>24-l%4*8&255,f=m[l+1>>>2]>>>24-(l+1)%4*8&255,A=m[l+2>>>2]>>>24-(l+2)%4*8&255,s=i<<16|f<<8|A,o=0;o<4&&l+o*.75<g;o++)d.push(b.charAt(s>>>6*(3-o)&63));var a=b.charAt(64);if(a)for(;d.length%4;)d.push(a);return d.join("")},parse:function(p,y){y===void 0&&(y=!0);var m=p.length,g=y?this._safe_map:this._map,b=this._reverseMap;if(!b){b=this._reverseMap=[];for(var d=0;d<g.length;d++)b[g.charCodeAt(d)]=d}var l=g.charAt(64);if(l){var i=p.indexOf(l);i!==-1&&(m=i)}return C(p,m,b)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",_safe_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"};function C(p,y,m){for(var g=[],b=0,d=0;d<y;d++)if(d%4){var l=m[p.charCodeAt(d-1)]<<d%4*2,i=m[p.charCodeAt(d)]>>>6-d%4*2,f=l|i;g[b>>>2]|=f<<24-b%4*8,b++}return c.create(g,b)}}(),r.enc.Base64url})})(we);var Pe=we.exports;const ze=ge(Pe);var me={exports:{}};(function(e,t){(function(r,n){e.exports=n(ye())})(N,function(r){return function(n){var u=r,c=u.lib,v=c.WordArray,C=c.Hasher,p=u.algo,y=[],m=[];(function(){function d(A){for(var s=n.sqrt(A),o=2;o<=s;o++)if(!(A%o))return!1;return!0}function l(A){return(A-(A|0))*4294967296|0}for(var i=2,f=0;f<64;)d(i)&&(f<8&&(y[f]=l(n.pow(i,1/2))),m[f]=l(n.pow(i,1/3)),f++),i++})();var g=[],b=p.SHA256=C.extend({_doReset:function(){this._hash=new v.init(y.slice(0))},_doProcessBlock:function(d,l){for(var i=this._hash.words,f=i[0],A=i[1],s=i[2],o=i[3],a=i[4],h=i[5],_=i[6],S=i[7],k=0;k<64;k++){if(k<16)g[k]=d[l+k]|0;else{var x=g[k-15],j=(x<<25|x>>>7)^(x<<14|x>>>18)^x>>>3,U=g[k-2],W=(U<<15|U>>>17)^(U<<13|U>>>19)^U>>>10;g[k]=j+g[k-7]+W+g[k-16]}var _e=a&h^~a&_,be=f&A^f&s^A&s,Se=(f<<30|f>>>2)^(f<<19|f>>>13)^(f<<10|f>>>22),Ce=(a<<26|a>>>6)^(a<<21|a>>>11)^(a<<7|a>>>25),te=S+Ce+_e+m[k]+g[k],Be=Se+be;S=_,_=h,h=a,a=o+te|0,o=s,s=A,A=f,f=te+Be|0}i[0]=i[0]+f|0,i[1]=i[1]+A|0,i[2]=i[2]+s|0,i[3]=i[3]+o|0,i[4]=i[4]+a|0,i[5]=i[5]+h|0,i[6]=i[6]+_|0,i[7]=i[7]+S|0},_doFinalize:function(){var d=this._data,l=d.words,i=this._nDataBytes*8,f=d.sigBytes*8;return l[f>>>5]|=128<<24-f%32,l[(f+64>>>9<<4)+14]=n.floor(i/4294967296),l[(f+64>>>9<<4)+15]=i,d.sigBytes=l.length*4,this._process(),this._hash},clone:function(){var d=C.clone.call(this);return d._hash=this._hash.clone(),d}});u.SHA256=C._createHelper(b),u.HmacSHA256=C._createHmacHelper(b)}(Math),r.SHA256})})(me);var Ue=me.exports;const He=ge(Ue),Te=(e,t)=>{const{client_id:r,redirect_uri:n,scope:u,state:c,chainId:v,chain:C,network:p,address:y,signature:m}=e,g=y?{address:y,...m!==void 0?{signature:m}:{},...v!==void 0||C!==void 0?{chain:v?ee(v):C}:{},...v!==void 0||p!==void 0?{network:v?ve(v):p}:{}}:{};return Q({client_id:r,redirect_uri:n,...u!==void 0?{scope:u}:{},...c!==void 0?{state:c}:{},code_challenge:t,code_challenge_method:"S256",response_type:"code",...g})},Me=()=>{let e="";const t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",r=t.length;let n=0;for(;n<128;)e+=t.charAt(Math.floor(Math.random()*r)),n+=1;return e},Le=e=>ze.stringify(He(e)),ne=(e,t)=>{const r=Me(),n=Le(r);return sessionStorage.setItem(M,r||""),`${e}/auth?${Te(t,n)}`},se=()=>{const e=window.location.href;if(!e||!(e!=null&&e.includes("?")))return;const[t,r]=e.split("?");r&&window.history.replaceState(null,"",t)},oe=e=>e.code!=null,je=e=>e.refresh_token!=null,qe=e=>e.client_secret!=null,Ne=async(e,t,r,n)=>{const u=await fetch(`${e}`,{method:t,headers:n,body:r});let c;const v=await u.text();try{c=JSON.parse(v)}catch{throw v}if(!u.ok)throw c;return c},T=typeof window>"u";var O,F,L,z,P,H,q,E,$,V,G,J;class Fe{constructor(t){R(this,H);R(this,E);R(this,O,void 0);R(this,F,void 0);R(this,L,void 0);R(this,z,void 0);R(this,P,void 0);R(this,V,void 0);R(this,G,void 0);R(this,J,void 0);if(I(this,z,new Map),this.isAuthorized=!!this.bearerProfile,I(this,V,async(r,n,u)=>{const c=sessionStorage.getItem(M)||"";if(!c)throw new Error("Code verifier not found");return this.codeVerifier=c,sessionStorage.removeItem(M),await B(this,H,q).call(this,{code:u,redirect_uri:n,client_id:r,code_verifier:c})}),I(this,G,async({clientId:r,clientSecret:n})=>await B(this,H,q).call(this,{client_id:r,client_secret:n})),I(this,J,async(r,n)=>await B(this,H,q).call(this,{refresh_token:n,client_id:r})),this.subscribeToOrderNotifications=()=>{var u,c;const r=`${w(this,O).wss}/profiles/${(u=this.bearerProfile)==null?void 0:u.profile}/orders?access_token=${(c=this.bearerProfile)==null?void 0:c.access_token}`,n=new WebSocket(r);return n.addEventListener("open",()=>{console.info(`Socket connected: ${r}`)}),n.addEventListener("error",v=>{throw console.error(v),new Error(`Socket error: ${r}`)}),n.addEventListener("message",v=>{var p;const C=JSON.parse(v.data);(p=w(this,z).get(C.meta.state))==null||p(C)}),n.addEventListener("close",()=>{console.info(`Socket connection closed: ${r}`)}),n},this.auth=async r=>await B(this,H,q).call(this,r),this.connect=async r=>await B(this,H,q).call(this,r),this.getAuthFlowURI=r=>{const n=ne(w(this,O).api,r);return this.codeVerifier=sessionStorage.getItem(M),n},this.pkceRequest=r=>this.getAuthFlowURI(r),this.getEnvironment=()=>w(this,O),!t){I(this,O,K.environments.sandbox);return}if(typeof t=="string")I(this,O,K.environments[t]);else if(I(this,O,K.environments[t.environment||"sandbox"]),T){const{clientId:r,clientSecret:n}=t;I(this,P,{clientId:r,clientSecret:n})}else{const{clientId:r,redirectUrl:n}=t;I(this,P,{clientId:r,redirectUrl:n})}}async authorize(t){var c,v;const r=(t==null?void 0:t.clientId)||((c=w(this,P))==null?void 0:c.clientId),n=(t==null?void 0:t.redirectUrl)||((v=w(this,P))==null?void 0:v.redirectUrl);if(!r)throw new Error("Missing ClientId");if(!n)throw new Error("Missing RedirectUrl");const u=ne(w(this,O).api,{client_id:r,redirect_uri:n,address:t==null?void 0:t.address,signature:t==null?void 0:t.signature,chainId:t==null?void 0:t.chainId});window.location.replace(u)}async getAccess(t){var C,p,y;const r=(t==null?void 0:t.clientId)||((C=w(this,P))==null?void 0:C.clientId);if((t==null?void 0:t.clientSecret)||((p=w(this,P))==null?void 0:p.clientSecret)){if(!T)throw new Error("Only use client credentials on server side");return await w(this,G).call(this,w(this,P)),!!this.bearerProfile}const u=(t==null?void 0:t.redirectUrl)||((y=w(this,P))==null?void 0:y.redirectUrl);if(!r)throw new Error("Missing ClientId");if(T)throw new Error("This only works client side");const c=new URLSearchParams(window.location.search).get("code")||void 0,v=sessionStorage.getItem(D)||void 0;return v?await w(this,J).call(this,r,v):c&&await w(this,V).call(this,r,u,c),!!this.bearerProfile}getAuthContext(){return B(this,E,$).call(this,"get","auth/context")}getProfile(t){return B(this,E,$).call(this,"get",`profiles/${t}`)}getBalances(t){return t?B(this,E,$).call(this,"get",`profiles/${t}/balances`):B(this,E,$).call(this,"get","balances")}getOrders(t){const r=Q(t);return B(this,E,$).call(this,"get",`orders?${r}`)}getOrder(t){return B(this,E,$).call(this,"get",`orders/${t}`)}getTokens(){return B(this,E,$).call(this,"get","tokens")}linkAddress(t,r){return B(this,E,$).call(this,"post",`profiles/${t}/addresses`,JSON.stringify(r))}placeOrder(t,r){const n={...t,kind:"redeem",currency:"eur"};return r?B(this,E,$).call(this,"post",`profiles/${r}/orders`,JSON.stringify(n)):B(this,E,$).call(this,"post","orders",JSON.stringify(n))}uploadSupportingDocument(t){const r=Q(t);return B(this,E,$).call(this,"post","files/supporting-document",r,!0)}async connectOrderSocket(){var t;(t=this.bearerProfile)!=null&&t.access_token&&w(this,z).size>0&&I(this,L,this.subscribeToOrderNotifications())}async disconnect(){var t;T||sessionStorage.removeItem(M),w(this,z).clear(),(t=w(this,L))==null||t.close(),I(this,F,void 0),this.bearerProfile=void 0}async revokeAccess(){T||sessionStorage.removeItem(D),this.disconnect()}subscribeOrders(t,r){w(this,z).set(t,r)}unsubscribeOrders(t){var r;w(this,z).delete(t),w(this,z).size===0&&((r=w(this,L))==null||r.close(),I(this,L,void 0))}}O=new WeakMap,F=new WeakMap,L=new WeakMap,z=new WeakMap,P=new WeakMap,H=new WeakSet,q=async function(t){let r;if(oe(t))r={...t,grant_type:"authorization_code"};else if(je(t))r={...t,grant_type:"refresh_token"};else if(qe(t))r={...t,grant_type:"client_credentials"};else throw new Error("Authorization grant type could not be detected.");return await B(this,E,$).call(this,"post","auth/token",r,!0).then(n=>{var u;this.bearerProfile=n,this.isAuthorized=!!n,I(this,F,`Bearer ${n==null?void 0:n.access_token}`),T||window.sessionStorage.setItem(D,((u=this.bearerProfile)==null?void 0:u.refresh_token)||"")}).catch(n=>{throw T||(sessionStorage.removeItem(M),sessionStorage.removeItem(D),se()),new Error(n==null?void 0:n.message)}),oe(t)&&se(),this.bearerProfile},E=new WeakSet,$=async function(t,r,n,u){return Ne(`${w(this,O).api}/${r}`,t,u?Q(n):n,{Authorization:w(this,F)||"","Content-Type":`application/${u?"x-www-form-urlencoded":"json"}`})},V=new WeakMap,G=new WeakMap,J=new WeakMap;exports.AccountState=de;exports.Currency=ie;exports.KYCOutcome=he;exports.KYCState=ue;exports.MoneriumClient=Fe;exports.OrderKind=le;exports.OrderState=pe;exports.PaymentStandard=fe;exports.Permission=ce;exports.ProfileType=ae;exports.constants=Ae;exports.getChain=ee;exports.getNetwork=ve;exports.placeOrderMessage=ke;exports.rfc3339=Y;
1
+ "use strict";var X=(e,t,r)=>{if(!t.has(e))throw TypeError("Cannot "+r)};var w=(e,t,r)=>(X(e,t,"read from private field"),r?r.call(e):t.get(e)),R=(e,t,r)=>{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,r)},I=(e,t,r,n)=>(X(e,t,"write to private field"),n?n.call(e,r):t.set(e,r),r);var k=(e,t,r)=>(X(e,t,"access private method"),r);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});var ce=(e=>(e.eur="eur",e))(ce||{}),ue=(e=>(e.corporate="corporate",e.personal="personal",e))(ue||{}),he=(e=>(e.read="read",e.write="write",e))(he||{}),fe=(e=>(e.absent="absent",e.submitted="submitted",e.pending="pending",e.confirmed="confirmed",e))(fe||{}),de=(e=>(e.approved="approved",e.rejected="rejected",e.unknown="unknown",e))(de||{}),le=(e=>(e.requested="requested",e.approved="approved",e.pending="pending",e))(le||{}),pe=(e=>(e.iban="iban",e.scan="scan",e.chain="chain",e))(pe||{}),ve=(e=>(e.redeem="redeem",e.issue="issue",e))(ve||{}),ge=(e=>(e.placed="placed",e.pending="pending",e.processed="processed",e.rejected="rejected",e))(ge||{});const te=e=>{if(e.toString()==="Invalid Date")throw e;const t=n=>n<10?"0"+n:n,r=n=>{if(n===0)return"Z";const u=n>0?"-":"+";return n=Math.abs(n),u+t(Math.floor(n/60))+":"+t(n%60)};return e.getFullYear()+"-"+t(e.getMonth()+1)+"-"+t(e.getDate())+"T"+t(e.getHours())+":"+t(e.getMinutes())+":"+t(e.getSeconds())+r(e.getTimezoneOffset())},xe=(e,t,r,n)=>{const u=`${(n==null?void 0:n.toUpperCase())||"EUR"}`;return r?`Send ${u} ${e} to ${t} on ${K(r)} at ${te(new Date)}`:`Send ${u} ${e} to ${t} at ${te(new Date)}`},Z=e=>{var t;return e&&((t=Object.entries(e))==null?void 0:t.length)>0?Object.entries(e).map(([r,n])=>`${encodeURIComponent(r)}=${encodeURIComponent(n)}`).join("&"):""},K=e=>{switch(e){case 1:case 5:return"ethereum";case 100:case 10200:return"gnosis";case 137:case 80001:return"polygon";default:throw new Error(`Chain not supported: ${e}`)}},re=e=>{switch(e){case 1:case 100:case 137:return"mainnet";case 5:return"goerli";case 10200:return"chiado";case 80001:return"mumbai";default:throw new Error(`Network not supported: ${e}`)}},Q=e=>{if(e!=null&&e.chainId){const{chainId:t,...r}=e;return{...r,chain:K(t),network:re(t)}}return e},Y={environments:{production:{api:"https://api.monerium.app",web:"https://monerium.app",wss:"wss://api.monerium.app"},sandbox:{api:"https://api.monerium.dev",web:"https://sandbox.monerium.dev",wss:"wss://api.monerium.dev"}}},Ae="I hereby declare that I am the address owner.",M="monerium.sdk.code_verifier",D="monerium.sdk.refresh_token",Ee={LINK_MESSAGE:Ae,STORAGE_CODE_VERIFIER:M,STORAGE_REFRESH_TOKEN:D};var q=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function we(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function Ie(e){if(e.__esModule)return e;var t=e.default;if(typeof t=="function"){var r=function n(){return this instanceof n?Reflect.construct(t,arguments,this.constructor):t.apply(this,arguments)};r.prototype=t.prototype}else r={};return Object.defineProperty(r,"__esModule",{value:!0}),Object.keys(e).forEach(function(n){var u=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(r,n,u.get?u:{enumerable:!0,get:function(){return e[n]}})}),r}var ye={exports:{}};function $e(e){throw new Error('Could not dynamically require "'+e+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var ee={exports:{}};const Re={},Oe=Object.freeze(Object.defineProperty({__proto__:null,default:Re},Symbol.toStringTag,{value:"Module"})),Pe=Ie(Oe);var oe;function me(){return oe||(oe=1,function(e,t){(function(r,n){e.exports=n()})(q,function(){var r=r||function(n,u){var c;if(typeof window<"u"&&window.crypto&&(c=window.crypto),typeof self<"u"&&self.crypto&&(c=self.crypto),typeof globalThis<"u"&&globalThis.crypto&&(c=globalThis.crypto),!c&&typeof window<"u"&&window.msCrypto&&(c=window.msCrypto),!c&&typeof q<"u"&&q.crypto&&(c=q.crypto),!c&&typeof $e=="function")try{c=Pe}catch{}var v=function(){if(c){if(typeof c.getRandomValues=="function")try{return c.getRandomValues(new Uint32Array(1))[0]}catch{}if(typeof c.randomBytes=="function")try{return c.randomBytes(4).readInt32LE()}catch{}}throw new Error("Native crypto module could not be used to get secure random number.")},C=Object.create||function(){function o(){}return function(s){var a;return o.prototype=s,a=new o,o.prototype=null,a}}(),p={},y=p.lib={},m=y.Base=function(){return{extend:function(o){var s=C(this);return o&&s.mixIn(o),(!s.hasOwnProperty("init")||this.init===s.init)&&(s.init=function(){s.$super.init.apply(this,arguments)}),s.init.prototype=s,s.$super=this,s},create:function(){var o=this.extend();return o.init.apply(o,arguments),o},init:function(){},mixIn:function(o){for(var s in o)o.hasOwnProperty(s)&&(this[s]=o[s]);o.hasOwnProperty("toString")&&(this.toString=o.toString)},clone:function(){return this.init.prototype.extend(this)}}}(),g=y.WordArray=m.extend({init:function(o,s){o=this.words=o||[],s!=u?this.sigBytes=s:this.sigBytes=o.length*4},toString:function(o){return(o||f).stringify(this)},concat:function(o){var s=this.words,a=o.words,h=this.sigBytes,_=o.sigBytes;if(this.clamp(),h%4)for(var S=0;S<_;S++){var B=a[S>>>2]>>>24-S%4*8&255;s[h+S>>>2]|=B<<24-(h+S)%4*8}else for(var x=0;x<_;x+=4)s[h+x>>>2]=a[x>>>2];return this.sigBytes+=_,this},clamp:function(){var o=this.words,s=this.sigBytes;o[s>>>2]&=4294967295<<32-s%4*8,o.length=n.ceil(s/4)},clone:function(){var o=m.clone.call(this);return o.words=this.words.slice(0),o},random:function(o){for(var s=[],a=0;a<o;a+=4)s.push(v());return new g.init(s,o)}}),b=p.enc={},f=b.Hex={stringify:function(o){for(var s=o.words,a=o.sigBytes,h=[],_=0;_<a;_++){var S=s[_>>>2]>>>24-_%4*8&255;h.push((S>>>4).toString(16)),h.push((S&15).toString(16))}return h.join("")},parse:function(o){for(var s=o.length,a=[],h=0;h<s;h+=2)a[h>>>3]|=parseInt(o.substr(h,2),16)<<24-h%8*4;return new g.init(a,s/2)}},l=b.Latin1={stringify:function(o){for(var s=o.words,a=o.sigBytes,h=[],_=0;_<a;_++){var S=s[_>>>2]>>>24-_%4*8&255;h.push(String.fromCharCode(S))}return h.join("")},parse:function(o){for(var s=o.length,a=[],h=0;h<s;h++)a[h>>>2]|=(o.charCodeAt(h)&255)<<24-h%4*8;return new g.init(a,s)}},i=b.Utf8={stringify:function(o){try{return decodeURIComponent(escape(l.stringify(o)))}catch{throw new Error("Malformed UTF-8 data")}},parse:function(o){return l.parse(unescape(encodeURIComponent(o)))}},d=y.BufferedBlockAlgorithm=m.extend({reset:function(){this._data=new g.init,this._nDataBytes=0},_append:function(o){typeof o=="string"&&(o=i.parse(o)),this._data.concat(o),this._nDataBytes+=o.sigBytes},_process:function(o){var s,a=this._data,h=a.words,_=a.sigBytes,S=this.blockSize,B=S*4,x=_/B;o?x=n.ceil(x):x=n.max((x|0)-this._minBufferSize,0);var N=x*S,U=n.min(N*4,_);if(N){for(var W=0;W<N;W+=S)this._doProcessBlock(h,W);s=h.splice(0,N),a.sigBytes-=U}return new g.init(s,U)},clone:function(){var o=m.clone.call(this);return o._data=this._data.clone(),o},_minBufferSize:0});y.Hasher=d.extend({cfg:m.extend(),init:function(o){this.cfg=this.cfg.extend(o),this.reset()},reset:function(){d.reset.call(this),this._doReset()},update:function(o){return this._append(o),this._process(),this},finalize:function(o){o&&this._append(o);var s=this._doFinalize();return s},blockSize:16,_createHelper:function(o){return function(s,a){return new o.init(a).finalize(s)}},_createHmacHelper:function(o){return function(s,a){return new A.HMAC.init(o,a).finalize(s)}}});var A=p.algo={};return p}(Math);return r})}(ee)),ee.exports}(function(e,t){(function(r,n){e.exports=n(me())})(q,function(r){return function(){var n=r,u=n.lib,c=u.WordArray,v=n.enc;v.Base64url={stringify:function(p,y){y===void 0&&(y=!0);var m=p.words,g=p.sigBytes,b=y?this._safe_map:this._map;p.clamp();for(var f=[],l=0;l<g;l+=3)for(var i=m[l>>>2]>>>24-l%4*8&255,d=m[l+1>>>2]>>>24-(l+1)%4*8&255,A=m[l+2>>>2]>>>24-(l+2)%4*8&255,o=i<<16|d<<8|A,s=0;s<4&&l+s*.75<g;s++)f.push(b.charAt(o>>>6*(3-s)&63));var a=b.charAt(64);if(a)for(;f.length%4;)f.push(a);return f.join("")},parse:function(p,y){y===void 0&&(y=!0);var m=p.length,g=y?this._safe_map:this._map,b=this._reverseMap;if(!b){b=this._reverseMap=[];for(var f=0;f<g.length;f++)b[g.charCodeAt(f)]=f}var l=g.charAt(64);if(l){var i=p.indexOf(l);i!==-1&&(m=i)}return C(p,m,b)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",_safe_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"};function C(p,y,m){for(var g=[],b=0,f=0;f<y;f++)if(f%4){var l=m[p.charCodeAt(f-1)]<<f%4*2,i=m[p.charCodeAt(f)]>>>6-f%4*2,d=l|i;g[b>>>2]|=d<<24-b%4*8,b++}return c.create(g,b)}}(),r.enc.Base64url})})(ye);var ze=ye.exports;const Ue=we(ze);var _e={exports:{}};(function(e,t){(function(r,n){e.exports=n(me())})(q,function(r){return function(n){var u=r,c=u.lib,v=c.WordArray,C=c.Hasher,p=u.algo,y=[],m=[];(function(){function f(A){for(var o=n.sqrt(A),s=2;s<=o;s++)if(!(A%s))return!1;return!0}function l(A){return(A-(A|0))*4294967296|0}for(var i=2,d=0;d<64;)f(i)&&(d<8&&(y[d]=l(n.pow(i,1/2))),m[d]=l(n.pow(i,1/3)),d++),i++})();var g=[],b=p.SHA256=C.extend({_doReset:function(){this._hash=new v.init(y.slice(0))},_doProcessBlock:function(f,l){for(var i=this._hash.words,d=i[0],A=i[1],o=i[2],s=i[3],a=i[4],h=i[5],_=i[6],S=i[7],B=0;B<64;B++){if(B<16)g[B]=f[l+B]|0;else{var x=g[B-15],N=(x<<25|x>>>7)^(x<<14|x>>>18)^x>>>3,U=g[B-2],W=(U<<15|U>>>17)^(U<<13|U>>>19)^U>>>10;g[B]=N+g[B-7]+W+g[B-16]}var be=a&h^~a&_,Se=d&A^d&o^A&o,Ce=(d<<30|d>>>2)^(d<<19|d>>>13)^(d<<10|d>>>22),ke=(a<<26|a>>>6)^(a<<21|a>>>11)^(a<<7|a>>>25),ne=S+ke+be+m[B]+g[B],Be=Ce+Se;S=_,_=h,h=a,a=s+ne|0,s=o,o=A,A=d,d=ne+Be|0}i[0]=i[0]+d|0,i[1]=i[1]+A|0,i[2]=i[2]+o|0,i[3]=i[3]+s|0,i[4]=i[4]+a|0,i[5]=i[5]+h|0,i[6]=i[6]+_|0,i[7]=i[7]+S|0},_doFinalize:function(){var f=this._data,l=f.words,i=this._nDataBytes*8,d=f.sigBytes*8;return l[d>>>5]|=128<<24-d%32,l[(d+64>>>9<<4)+14]=n.floor(i/4294967296),l[(d+64>>>9<<4)+15]=i,f.sigBytes=l.length*4,this._process(),this._hash},clone:function(){var f=C.clone.call(this);return f._hash=this._hash.clone(),f}});u.SHA256=C._createHelper(b),u.HmacSHA256=C._createHmacHelper(b)}(Math),r.SHA256})})(_e);var He=_e.exports;const Te=we(He),Me=(e,t)=>{const{client_id:r,redirect_uri:n,scope:u,state:c,chainId:v,chain:C,network:p,address:y,signature:m}=e,g=y?{address:y,...m!==void 0?{signature:m}:{},...v!==void 0||C!==void 0?{chain:v?K(v):C}:{},...v!==void 0||p!==void 0?{network:v?re(v):p}:{}}:{};return Z({client_id:r,redirect_uri:n,...u!==void 0?{scope:u}:{},...c!==void 0?{state:c}:{},code_challenge:t,code_challenge_method:"S256",response_type:"code",...g})},Le=()=>{let e="";const t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",r=t.length;let n=0;for(;n<128;)e+=t.charAt(Math.floor(Math.random()*r)),n+=1;return e},Ne=e=>Ue.stringify(Te(e)),se=(e,t)=>{const r=Le(),n=Ne(r);return localStorage.setItem(M,r||""),`${e}/auth?${Me(t,n)}`},ie=()=>{const e=window.location.href;if(!e||!(e!=null&&e.includes("?")))return;const[t,r]=e.split("?");r&&window.history.replaceState(null,"",t)},ae=e=>e.code!=null,je=e=>e.refresh_token!=null,qe=e=>e.client_secret!=null,Fe=async(e,t,r,n)=>{const u=await fetch(`${e}`,{method:t,headers:n,body:r});let c;const v=await u.text();try{c=JSON.parse(v)}catch{throw v}if(!u.ok)throw c;return c},T=typeof window>"u";var O,F,L,z,P,H,j,E,$,V,G,J;class We{constructor(t){R(this,H);R(this,E);R(this,O,void 0);R(this,F,void 0);R(this,L,void 0);R(this,z,void 0);R(this,P,void 0);R(this,V,void 0);R(this,G,void 0);R(this,J,void 0);if(I(this,z,new Map),this.isAuthorized=!!this.bearerProfile,I(this,V,async(r,n,u)=>{const c=localStorage.getItem(M)||"";if(!c)throw new Error("Code verifier not found");return this.codeVerifier=c,localStorage.removeItem(M),await k(this,H,j).call(this,{code:u,redirect_uri:n,client_id:r,code_verifier:c})}),I(this,G,async({clientId:r,clientSecret:n})=>await k(this,H,j).call(this,{client_id:r,client_secret:n})),I(this,J,async(r,n)=>await k(this,H,j).call(this,{refresh_token:n,client_id:r})),this.subscribeToOrderNotifications=()=>{var u,c;const r=`${w(this,O).wss}/profiles/${(u=this.bearerProfile)==null?void 0:u.profile}/orders?access_token=${(c=this.bearerProfile)==null?void 0:c.access_token}`,n=new WebSocket(r);return n.addEventListener("open",()=>{console.info(`Socket connected: ${r}`)}),n.addEventListener("error",v=>{throw console.error(v),new Error(`Socket error: ${r}`)}),n.addEventListener("message",v=>{var p;const C=JSON.parse(v.data);(p=w(this,z).get(C.meta.state))==null||p(C)}),n.addEventListener("close",()=>{console.info(`Socket connection closed: ${r}`)}),n},this.auth=async r=>await k(this,H,j).call(this,r),this.connect=async r=>await k(this,H,j).call(this,r),this.getAuthFlowURI=r=>{const n=se(w(this,O).api,r);return this.codeVerifier=localStorage.getItem(M),n},this.pkceRequest=r=>this.getAuthFlowURI(r),this.getEnvironment=()=>w(this,O),!t){I(this,O,Y.environments.sandbox);return}if(typeof t=="string")I(this,O,Y.environments[t]);else if(I(this,O,Y.environments[t.environment||"sandbox"]),T){const{clientId:r,clientSecret:n}=t;I(this,P,{clientId:r,clientSecret:n})}else{const{clientId:r,redirectUrl:n}=t;I(this,P,{clientId:r,redirectUrl:n})}}async authorize(t){var c,v;const r=(t==null?void 0:t.clientId)||((c=w(this,P))==null?void 0:c.clientId),n=(t==null?void 0:t.redirectUrl)||((v=w(this,P))==null?void 0:v.redirectUrl);if(!r)throw new Error("Missing ClientId");if(!n)throw new Error("Missing RedirectUrl");const u=se(w(this,O).api,{client_id:r,redirect_uri:n,address:t==null?void 0:t.address,signature:t==null?void 0:t.signature,chainId:t==null?void 0:t.chainId});window.location.replace(u)}async getAccess(t){var C,p,y;const r=(t==null?void 0:t.clientId)||((C=w(this,P))==null?void 0:C.clientId);if((t==null?void 0:t.clientSecret)||((p=w(this,P))==null?void 0:p.clientSecret)){if(!T)throw new Error("Only use client credentials on server side");return await w(this,G).call(this,w(this,P)),!!this.bearerProfile}const u=(t==null?void 0:t.redirectUrl)||((y=w(this,P))==null?void 0:y.redirectUrl);if(!r)throw new Error("Missing ClientId");if(T)throw new Error("This only works client side");const c=new URLSearchParams(window.location.search).get("code")||void 0,v=localStorage.getItem(D)||void 0;return v?await w(this,J).call(this,r,v):c&&await w(this,V).call(this,r,u,c),!!this.bearerProfile}getAuthContext(){return k(this,E,$).call(this,"get","auth/context")}getProfile(t){return k(this,E,$).call(this,"get",`profiles/${t}`)}getBalances(t){return t?k(this,E,$).call(this,"get",`profiles/${t}/balances`):k(this,E,$).call(this,"get","balances")}getOrders(t){const r=Z(t);return k(this,E,$).call(this,"get",`orders?${r}`)}getOrder(t){return k(this,E,$).call(this,"get",`orders/${t}`)}getTokens(){return k(this,E,$).call(this,"get","tokens")}linkAddress(t,r){return r=Q(r),r.accounts=r.accounts.map(n=>Q(n)),k(this,E,$).call(this,"post",`profiles/${t}/addresses`,JSON.stringify(r))}placeOrder(t,r){const n={kind:"redeem",currency:"eur",...Q(t),counterpart:{...t.counterpart,identifier:Q(t.counterpart.identifier)}};return r?k(this,E,$).call(this,"post",`profiles/${r}/orders`,JSON.stringify(n)):k(this,E,$).call(this,"post","orders",JSON.stringify(n))}uploadSupportingDocument(t){const r=Z(t);return k(this,E,$).call(this,"post","files/supporting-document",r,!0)}async connectOrderSocket(){var t;(t=this.bearerProfile)!=null&&t.access_token&&w(this,z).size>0&&I(this,L,this.subscribeToOrderNotifications())}async disconnect(){var t;T||localStorage.removeItem(M),w(this,z).clear(),(t=w(this,L))==null||t.close(),I(this,F,void 0),this.bearerProfile=void 0}async revokeAccess(){T||localStorage.removeItem(D),this.disconnect()}subscribeOrders(t,r){w(this,z).set(t,r)}unsubscribeOrders(t){var r;w(this,z).delete(t),w(this,z).size===0&&((r=w(this,L))==null||r.close(),I(this,L,void 0))}}O=new WeakMap,F=new WeakMap,L=new WeakMap,z=new WeakMap,P=new WeakMap,H=new WeakSet,j=async function(t){let r;if(ae(t))r={...t,grant_type:"authorization_code"};else if(je(t))r={...t,grant_type:"refresh_token"};else if(qe(t))r={...t,grant_type:"client_credentials"};else throw new Error("Authorization grant type could not be detected.");return await k(this,E,$).call(this,"post","auth/token",r,!0).then(n=>{var u;this.bearerProfile=n,this.isAuthorized=!!n,I(this,F,`Bearer ${n==null?void 0:n.access_token}`),T||window.localStorage.setItem(D,((u=this.bearerProfile)==null?void 0:u.refresh_token)||"")}).catch(n=>{throw T||(localStorage.removeItem(M),localStorage.removeItem(D),ie()),new Error(n==null?void 0:n.message)}),ae(t)&&ie(),this.bearerProfile},E=new WeakSet,$=async function(t,r,n,u){return Fe(`${w(this,O).api}/${r}`,t,u?Z(n):n,{Authorization:w(this,F)||"","Content-Type":`application/${u?"x-www-form-urlencoded":"json"}`})},V=new WeakMap,G=new WeakMap,J=new WeakMap;exports.AccountState=le;exports.Currency=ce;exports.KYCOutcome=de;exports.KYCState=fe;exports.MoneriumClient=We;exports.OrderKind=ve;exports.OrderState=ge;exports.PaymentStandard=pe;exports.Permission=he;exports.ProfileType=ue;exports.constants=Ee;exports.getChain=K;exports.getNetwork=re;exports.placeOrderMessage=xe;exports.rfc3339=te;
package/dist/index.mjs CHANGED
@@ -1,15 +1,15 @@
1
- var Z = (e, t, r) => {
1
+ var X = (e, t, r) => {
2
2
  if (!t.has(e))
3
3
  throw TypeError("Cannot " + r);
4
4
  };
5
- var w = (e, t, r) => (Z(e, t, "read from private field"), r ? r.call(e) : t.get(e)), R = (e, t, r) => {
5
+ var w = (e, t, r) => (X(e, t, "read from private field"), r ? r.call(e) : t.get(e)), R = (e, t, r) => {
6
6
  if (t.has(e))
7
7
  throw TypeError("Cannot add the same private member more than once");
8
8
  t instanceof WeakSet ? t.add(e) : t.set(e, r);
9
- }, I = (e, t, r, n) => (Z(e, t, "write to private field"), n ? n.call(e, r) : t.set(e, r), r);
10
- var k = (e, t, r) => (Z(e, t, "access private method"), r);
11
- var ve = /* @__PURE__ */ ((e) => (e.eur = "eur", e))(ve || {}), ge = /* @__PURE__ */ ((e) => (e.corporate = "corporate", e.personal = "personal", e))(ge || {}), we = /* @__PURE__ */ ((e) => (e.read = "read", e.write = "write", e))(we || {}), ye = /* @__PURE__ */ ((e) => (e.absent = "absent", e.submitted = "submitted", e.pending = "pending", e.confirmed = "confirmed", e))(ye || {}), me = /* @__PURE__ */ ((e) => (e.approved = "approved", e.rejected = "rejected", e.unknown = "unknown", e))(me || {}), _e = /* @__PURE__ */ ((e) => (e.requested = "requested", e.approved = "approved", e.pending = "pending", e))(_e || {}), be = /* @__PURE__ */ ((e) => (e.iban = "iban", e.scan = "scan", e.chain = "chain", e))(be || {}), Se = /* @__PURE__ */ ((e) => (e.redeem = "redeem", e.issue = "issue", e))(Se || {}), Be = /* @__PURE__ */ ((e) => (e.placed = "placed", e.pending = "pending", e.processed = "processed", e.rejected = "rejected", e))(Be || {});
12
- const ee = (e) => {
9
+ }, I = (e, t, r, n) => (X(e, t, "write to private field"), n ? n.call(e, r) : t.set(e, r), r);
10
+ var k = (e, t, r) => (X(e, t, "access private method"), r);
11
+ var we = /* @__PURE__ */ ((e) => (e.eur = "eur", e))(we || {}), ye = /* @__PURE__ */ ((e) => (e.corporate = "corporate", e.personal = "personal", e))(ye || {}), me = /* @__PURE__ */ ((e) => (e.read = "read", e.write = "write", e))(me || {}), _e = /* @__PURE__ */ ((e) => (e.absent = "absent", e.submitted = "submitted", e.pending = "pending", e.confirmed = "confirmed", e))(_e || {}), be = /* @__PURE__ */ ((e) => (e.approved = "approved", e.rejected = "rejected", e.unknown = "unknown", e))(be || {}), Se = /* @__PURE__ */ ((e) => (e.requested = "requested", e.approved = "approved", e.pending = "pending", e))(Se || {}), Be = /* @__PURE__ */ ((e) => (e.iban = "iban", e.scan = "scan", e.chain = "chain", e))(Be || {}), ke = /* @__PURE__ */ ((e) => (e.redeem = "redeem", e.issue = "issue", e))(ke || {}), Ce = /* @__PURE__ */ ((e) => (e.placed = "placed", e.pending = "pending", e.processed = "processed", e.rejected = "rejected", e))(Ce || {});
12
+ const re = (e) => {
13
13
  if (e.toString() === "Invalid Date")
14
14
  throw e;
15
15
  const t = (n) => n < 10 ? "0" + n : n, r = (n) => {
@@ -21,15 +21,15 @@ const ee = (e) => {
21
21
  return e.getFullYear() + "-" + t(e.getMonth() + 1) + "-" + t(e.getDate()) + "T" + t(e.getHours()) + ":" + t(e.getMinutes()) + ":" + t(e.getSeconds()) + r(e.getTimezoneOffset());
22
22
  }, Fe = (e, t, r, n) => {
23
23
  const u = `${(n == null ? void 0 : n.toUpperCase()) || "EUR"}`;
24
- return r ? `Send ${u} ${e} to ${t} on ${oe(
24
+ return r ? `Send ${u} ${e} to ${t} on ${ee(
25
25
  r
26
- )} at ${ee(/* @__PURE__ */ new Date())}` : `Send ${u} ${e} to ${t} at ${ee(/* @__PURE__ */ new Date())}`;
27
- }, Q = (e) => {
26
+ )} at ${re(/* @__PURE__ */ new Date())}` : `Send ${u} ${e} to ${t} at ${re(/* @__PURE__ */ new Date())}`;
27
+ }, Z = (e) => {
28
28
  var t;
29
29
  return e && ((t = Object.entries(e)) == null ? void 0 : t.length) > 0 ? Object.entries(e).map(
30
30
  ([r, n]) => `${encodeURIComponent(r)}=${encodeURIComponent(n)}`
31
31
  ).join("&") : "";
32
- }, oe = (e) => {
32
+ }, ee = (e) => {
33
33
  switch (e) {
34
34
  case 1:
35
35
  case 5:
@@ -43,7 +43,7 @@ const ee = (e) => {
43
43
  default:
44
44
  throw new Error(`Chain not supported: ${e}`);
45
45
  }
46
- }, ke = (e) => {
46
+ }, ae = (e) => {
47
47
  switch (e) {
48
48
  case 1:
49
49
  case 100:
@@ -58,7 +58,17 @@ const ee = (e) => {
58
58
  default:
59
59
  throw new Error(`Network not supported: ${e}`);
60
60
  }
61
- }, X = {
61
+ }, Q = (e) => {
62
+ if (e != null && e.chainId) {
63
+ const { chainId: t, ...r } = e;
64
+ return {
65
+ ...r,
66
+ chain: ee(t),
67
+ network: ae(t)
68
+ };
69
+ }
70
+ return e;
71
+ }, K = {
62
72
  environments: {
63
73
  production: {
64
74
  api: "https://api.monerium.app",
@@ -71,16 +81,16 @@ const ee = (e) => {
71
81
  wss: "wss://api.monerium.dev"
72
82
  }
73
83
  }
74
- }, Ce = "I hereby declare that I am the address owner.", M = "monerium.sdk.code_verifier", D = "monerium.sdk.refresh_token", Ne = {
75
- LINK_MESSAGE: Ce,
84
+ }, xe = "I hereby declare that I am the address owner.", M = "monerium.sdk.code_verifier", D = "monerium.sdk.refresh_token", We = {
85
+ LINK_MESSAGE: xe,
76
86
  STORAGE_CODE_VERIFIER: M,
77
87
  STORAGE_REFRESH_TOKEN: D
78
88
  };
79
- var F = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {};
80
- function ie(e) {
89
+ var q = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {};
90
+ function ce(e) {
81
91
  return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
82
92
  }
83
- function xe(e) {
93
+ function Ae(e) {
84
94
  if (e.__esModule)
85
95
  return e;
86
96
  var t = e.default;
@@ -101,26 +111,26 @@ function xe(e) {
101
111
  });
102
112
  }), r;
103
113
  }
104
- var ae = { exports: {} };
105
- function Ae(e) {
114
+ var ue = { exports: {} };
115
+ function Ee(e) {
106
116
  throw new Error('Could not dynamically require "' + e + '". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.');
107
117
  }
108
- var K = { exports: {} };
109
- const Ee = {}, Ie = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
118
+ var Y = { exports: {} };
119
+ const Ie = {}, $e = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
110
120
  __proto__: null,
111
- default: Ee
112
- }, Symbol.toStringTag, { value: "Module" })), $e = /* @__PURE__ */ xe(Ie);
113
- var te;
114
- function ce() {
115
- return te || (te = 1, function(e, t) {
121
+ default: Ie
122
+ }, Symbol.toStringTag, { value: "Module" })), Re = /* @__PURE__ */ Ae($e);
123
+ var ne;
124
+ function he() {
125
+ return ne || (ne = 1, function(e, t) {
116
126
  (function(r, n) {
117
127
  e.exports = n();
118
- })(F, function() {
128
+ })(q, function() {
119
129
  var r = r || function(n, u) {
120
130
  var c;
121
- if (typeof window < "u" && window.crypto && (c = window.crypto), typeof self < "u" && self.crypto && (c = self.crypto), typeof globalThis < "u" && globalThis.crypto && (c = globalThis.crypto), !c && typeof window < "u" && window.msCrypto && (c = window.msCrypto), !c && typeof F < "u" && F.crypto && (c = F.crypto), !c && typeof Ae == "function")
131
+ if (typeof window < "u" && window.crypto && (c = window.crypto), typeof self < "u" && self.crypto && (c = self.crypto), typeof globalThis < "u" && globalThis.crypto && (c = globalThis.crypto), !c && typeof window < "u" && window.msCrypto && (c = window.msCrypto), !c && typeof q < "u" && q.crypto && (c = q.crypto), !c && typeof Ee == "function")
122
132
  try {
123
- c = $e;
133
+ c = Re;
124
134
  } catch {
125
135
  }
126
136
  var v = function() {
@@ -138,11 +148,11 @@ function ce() {
138
148
  }
139
149
  throw new Error("Native crypto module could not be used to get secure random number.");
140
150
  }, B = Object.create || function() {
141
- function s() {
151
+ function o() {
142
152
  }
143
- return function(o) {
153
+ return function(s) {
144
154
  var a;
145
- return s.prototype = o, a = new s(), s.prototype = null, a;
155
+ return o.prototype = s, a = new o(), o.prototype = null, a;
146
156
  };
147
157
  }(), p = {}, y = p.lib = {}, m = y.Base = function() {
148
158
  return {
@@ -164,11 +174,11 @@ function ce() {
164
174
  * }
165
175
  * });
166
176
  */
167
- extend: function(s) {
168
- var o = B(this);
169
- return s && o.mixIn(s), (!o.hasOwnProperty("init") || this.init === o.init) && (o.init = function() {
170
- o.$super.init.apply(this, arguments);
171
- }), o.init.prototype = o, o.$super = this, o;
177
+ extend: function(o) {
178
+ var s = B(this);
179
+ return o && s.mixIn(o), (!s.hasOwnProperty("init") || this.init === s.init) && (s.init = function() {
180
+ s.$super.init.apply(this, arguments);
181
+ }), s.init.prototype = s, s.$super = this, s;
172
182
  },
173
183
  /**
174
184
  * Extends this object and runs the init method.
@@ -183,8 +193,8 @@ function ce() {
183
193
  * var instance = MyType.create();
184
194
  */
185
195
  create: function() {
186
- var s = this.extend();
187
- return s.init.apply(s, arguments), s;
196
+ var o = this.extend();
197
+ return o.init.apply(o, arguments), o;
188
198
  },
189
199
  /**
190
200
  * Initializes a newly created object.
@@ -211,10 +221,10 @@ function ce() {
211
221
  * field: 'value'
212
222
  * });
213
223
  */
214
- mixIn: function(s) {
215
- for (var o in s)
216
- s.hasOwnProperty(o) && (this[o] = s[o]);
217
- s.hasOwnProperty("toString") && (this.toString = s.toString);
224
+ mixIn: function(o) {
225
+ for (var s in o)
226
+ o.hasOwnProperty(s) && (this[s] = o[s]);
227
+ o.hasOwnProperty("toString") && (this.toString = o.toString);
218
228
  },
219
229
  /**
220
230
  * Creates a copy of this object.
@@ -242,8 +252,8 @@ function ce() {
242
252
  * var wordArray = CryptoJS.lib.WordArray.create([0x00010203, 0x04050607]);
243
253
  * var wordArray = CryptoJS.lib.WordArray.create([0x00010203, 0x04050607], 6);
244
254
  */
245
- init: function(s, o) {
246
- s = this.words = s || [], o != u ? this.sigBytes = o : this.sigBytes = s.length * 4;
255
+ init: function(o, s) {
256
+ o = this.words = o || [], s != u ? this.sigBytes = s : this.sigBytes = o.length * 4;
247
257
  },
248
258
  /**
249
259
  * Converts this word array to a string.
@@ -258,8 +268,8 @@ function ce() {
258
268
  * var string = wordArray.toString();
259
269
  * var string = wordArray.toString(CryptoJS.enc.Utf8);
260
270
  */
261
- toString: function(s) {
262
- return (s || d).stringify(this);
271
+ toString: function(o) {
272
+ return (o || f).stringify(this);
263
273
  },
264
274
  /**
265
275
  * Concatenates a word array to this word array.
@@ -272,16 +282,16 @@ function ce() {
272
282
  *
273
283
  * wordArray1.concat(wordArray2);
274
284
  */
275
- concat: function(s) {
276
- var o = this.words, a = s.words, h = this.sigBytes, _ = s.sigBytes;
285
+ concat: function(o) {
286
+ var s = this.words, a = o.words, h = this.sigBytes, _ = o.sigBytes;
277
287
  if (this.clamp(), h % 4)
278
288
  for (var S = 0; S < _; S++) {
279
289
  var C = a[S >>> 2] >>> 24 - S % 4 * 8 & 255;
280
- o[h + S >>> 2] |= C << 24 - (h + S) % 4 * 8;
290
+ s[h + S >>> 2] |= C << 24 - (h + S) % 4 * 8;
281
291
  }
282
292
  else
283
293
  for (var x = 0; x < _; x += 4)
284
- o[h + x >>> 2] = a[x >>> 2];
294
+ s[h + x >>> 2] = a[x >>> 2];
285
295
  return this.sigBytes += _, this;
286
296
  },
287
297
  /**
@@ -292,8 +302,8 @@ function ce() {
292
302
  * wordArray.clamp();
293
303
  */
294
304
  clamp: function() {
295
- var s = this.words, o = this.sigBytes;
296
- s[o >>> 2] &= 4294967295 << 32 - o % 4 * 8, s.length = n.ceil(o / 4);
305
+ var o = this.words, s = this.sigBytes;
306
+ o[s >>> 2] &= 4294967295 << 32 - s % 4 * 8, o.length = n.ceil(s / 4);
297
307
  },
298
308
  /**
299
309
  * Creates a copy of this word array.
@@ -305,8 +315,8 @@ function ce() {
305
315
  * var clone = wordArray.clone();
306
316
  */
307
317
  clone: function() {
308
- var s = m.clone.call(this);
309
- return s.words = this.words.slice(0), s;
318
+ var o = m.clone.call(this);
319
+ return o.words = this.words.slice(0), o;
310
320
  },
311
321
  /**
312
322
  * Creates a word array filled with random bytes.
@@ -321,12 +331,12 @@ function ce() {
321
331
  *
322
332
  * var wordArray = CryptoJS.lib.WordArray.random(16);
323
333
  */
324
- random: function(s) {
325
- for (var o = [], a = 0; a < s; a += 4)
326
- o.push(v());
327
- return new g.init(o, s);
334
+ random: function(o) {
335
+ for (var s = [], a = 0; a < o; a += 4)
336
+ s.push(v());
337
+ return new g.init(s, o);
328
338
  }
329
- }), b = p.enc = {}, d = b.Hex = {
339
+ }), b = p.enc = {}, f = b.Hex = {
330
340
  /**
331
341
  * Converts a word array to a hex string.
332
342
  *
@@ -340,9 +350,9 @@ function ce() {
340
350
  *
341
351
  * var hexString = CryptoJS.enc.Hex.stringify(wordArray);
342
352
  */
343
- stringify: function(s) {
344
- for (var o = s.words, a = s.sigBytes, h = [], _ = 0; _ < a; _++) {
345
- var S = o[_ >>> 2] >>> 24 - _ % 4 * 8 & 255;
353
+ stringify: function(o) {
354
+ for (var s = o.words, a = o.sigBytes, h = [], _ = 0; _ < a; _++) {
355
+ var S = s[_ >>> 2] >>> 24 - _ % 4 * 8 & 255;
346
356
  h.push((S >>> 4).toString(16)), h.push((S & 15).toString(16));
347
357
  }
348
358
  return h.join("");
@@ -360,10 +370,10 @@ function ce() {
360
370
  *
361
371
  * var wordArray = CryptoJS.enc.Hex.parse(hexString);
362
372
  */
363
- parse: function(s) {
364
- for (var o = s.length, a = [], h = 0; h < o; h += 2)
365
- a[h >>> 3] |= parseInt(s.substr(h, 2), 16) << 24 - h % 8 * 4;
366
- return new g.init(a, o / 2);
373
+ parse: function(o) {
374
+ for (var s = o.length, a = [], h = 0; h < s; h += 2)
375
+ a[h >>> 3] |= parseInt(o.substr(h, 2), 16) << 24 - h % 8 * 4;
376
+ return new g.init(a, s / 2);
367
377
  }
368
378
  }, l = b.Latin1 = {
369
379
  /**
@@ -379,9 +389,9 @@ function ce() {
379
389
  *
380
390
  * var latin1String = CryptoJS.enc.Latin1.stringify(wordArray);
381
391
  */
382
- stringify: function(s) {
383
- for (var o = s.words, a = s.sigBytes, h = [], _ = 0; _ < a; _++) {
384
- var S = o[_ >>> 2] >>> 24 - _ % 4 * 8 & 255;
392
+ stringify: function(o) {
393
+ for (var s = o.words, a = o.sigBytes, h = [], _ = 0; _ < a; _++) {
394
+ var S = s[_ >>> 2] >>> 24 - _ % 4 * 8 & 255;
385
395
  h.push(String.fromCharCode(S));
386
396
  }
387
397
  return h.join("");
@@ -399,10 +409,10 @@ function ce() {
399
409
  *
400
410
  * var wordArray = CryptoJS.enc.Latin1.parse(latin1String);
401
411
  */
402
- parse: function(s) {
403
- for (var o = s.length, a = [], h = 0; h < o; h++)
404
- a[h >>> 2] |= (s.charCodeAt(h) & 255) << 24 - h % 4 * 8;
405
- return new g.init(a, o);
412
+ parse: function(o) {
413
+ for (var s = o.length, a = [], h = 0; h < s; h++)
414
+ a[h >>> 2] |= (o.charCodeAt(h) & 255) << 24 - h % 4 * 8;
415
+ return new g.init(a, s);
406
416
  }
407
417
  }, i = b.Utf8 = {
408
418
  /**
@@ -418,9 +428,9 @@ function ce() {
418
428
  *
419
429
  * var utf8String = CryptoJS.enc.Utf8.stringify(wordArray);
420
430
  */
421
- stringify: function(s) {
431
+ stringify: function(o) {
422
432
  try {
423
- return decodeURIComponent(escape(l.stringify(s)));
433
+ return decodeURIComponent(escape(l.stringify(o)));
424
434
  } catch {
425
435
  throw new Error("Malformed UTF-8 data");
426
436
  }
@@ -438,10 +448,10 @@ function ce() {
438
448
  *
439
449
  * var wordArray = CryptoJS.enc.Utf8.parse(utf8String);
440
450
  */
441
- parse: function(s) {
442
- return l.parse(unescape(encodeURIComponent(s)));
451
+ parse: function(o) {
452
+ return l.parse(unescape(encodeURIComponent(o)));
443
453
  }
444
- }, f = y.BufferedBlockAlgorithm = m.extend({
454
+ }, d = y.BufferedBlockAlgorithm = m.extend({
445
455
  /**
446
456
  * Resets this block algorithm's data buffer to its initial state.
447
457
  *
@@ -462,8 +472,8 @@ function ce() {
462
472
  * bufferedBlockAlgorithm._append('data');
463
473
  * bufferedBlockAlgorithm._append(wordArray);
464
474
  */
465
- _append: function(s) {
466
- typeof s == "string" && (s = i.parse(s)), this._data.concat(s), this._nDataBytes += s.sigBytes;
475
+ _append: function(o) {
476
+ typeof o == "string" && (o = i.parse(o)), this._data.concat(o), this._nDataBytes += o.sigBytes;
467
477
  },
468
478
  /**
469
479
  * Processes available data blocks.
@@ -479,16 +489,16 @@ function ce() {
479
489
  * var processedData = bufferedBlockAlgorithm._process();
480
490
  * var processedData = bufferedBlockAlgorithm._process(!!'flush');
481
491
  */
482
- _process: function(s) {
483
- var o, a = this._data, h = a.words, _ = a.sigBytes, S = this.blockSize, C = S * 4, x = _ / C;
484
- s ? x = n.ceil(x) : x = n.max((x | 0) - this._minBufferSize, 0);
485
- var q = x * S, P = n.min(q * 4, _);
486
- if (q) {
487
- for (var W = 0; W < q; W += S)
492
+ _process: function(o) {
493
+ var s, a = this._data, h = a.words, _ = a.sigBytes, S = this.blockSize, C = S * 4, x = _ / C;
494
+ o ? x = n.ceil(x) : x = n.max((x | 0) - this._minBufferSize, 0);
495
+ var N = x * S, P = n.min(N * 4, _);
496
+ if (N) {
497
+ for (var W = 0; W < N; W += S)
488
498
  this._doProcessBlock(h, W);
489
- o = h.splice(0, q), a.sigBytes -= P;
499
+ s = h.splice(0, N), a.sigBytes -= P;
490
500
  }
491
- return new g.init(o, P);
501
+ return new g.init(s, P);
492
502
  },
493
503
  /**
494
504
  * Creates a copy of this object.
@@ -500,12 +510,12 @@ function ce() {
500
510
  * var clone = bufferedBlockAlgorithm.clone();
501
511
  */
502
512
  clone: function() {
503
- var s = m.clone.call(this);
504
- return s._data = this._data.clone(), s;
513
+ var o = m.clone.call(this);
514
+ return o._data = this._data.clone(), o;
505
515
  },
506
516
  _minBufferSize: 0
507
517
  });
508
- y.Hasher = f.extend({
518
+ y.Hasher = d.extend({
509
519
  /**
510
520
  * Configuration options.
511
521
  */
@@ -519,8 +529,8 @@ function ce() {
519
529
  *
520
530
  * var hasher = CryptoJS.algo.SHA256.create();
521
531
  */
522
- init: function(s) {
523
- this.cfg = this.cfg.extend(s), this.reset();
532
+ init: function(o) {
533
+ this.cfg = this.cfg.extend(o), this.reset();
524
534
  },
525
535
  /**
526
536
  * Resets this hasher to its initial state.
@@ -530,7 +540,7 @@ function ce() {
530
540
  * hasher.reset();
531
541
  */
532
542
  reset: function() {
533
- f.reset.call(this), this._doReset();
543
+ d.reset.call(this), this._doReset();
534
544
  },
535
545
  /**
536
546
  * Updates this hasher with a message.
@@ -544,8 +554,8 @@ function ce() {
544
554
  * hasher.update('message');
545
555
  * hasher.update(wordArray);
546
556
  */
547
- update: function(s) {
548
- return this._append(s), this._process(), this;
557
+ update: function(o) {
558
+ return this._append(o), this._process(), this;
549
559
  },
550
560
  /**
551
561
  * Finalizes the hash computation.
@@ -561,10 +571,10 @@ function ce() {
561
571
  * var hash = hasher.finalize('message');
562
572
  * var hash = hasher.finalize(wordArray);
563
573
  */
564
- finalize: function(s) {
565
- s && this._append(s);
566
- var o = this._doFinalize();
567
- return o;
574
+ finalize: function(o) {
575
+ o && this._append(o);
576
+ var s = this._doFinalize();
577
+ return s;
568
578
  },
569
579
  blockSize: 16,
570
580
  /**
@@ -580,9 +590,9 @@ function ce() {
580
590
  *
581
591
  * var SHA256 = CryptoJS.lib.Hasher._createHelper(CryptoJS.algo.SHA256);
582
592
  */
583
- _createHelper: function(s) {
584
- return function(o, a) {
585
- return new s.init(a).finalize(o);
593
+ _createHelper: function(o) {
594
+ return function(s, a) {
595
+ return new o.init(a).finalize(s);
586
596
  };
587
597
  },
588
598
  /**
@@ -598,9 +608,9 @@ function ce() {
598
608
  *
599
609
  * var HmacSHA256 = CryptoJS.lib.Hasher._createHmacHelper(CryptoJS.algo.SHA256);
600
610
  */
601
- _createHmacHelper: function(s) {
602
- return function(o, a) {
603
- return new A.HMAC.init(s, a).finalize(o);
611
+ _createHmacHelper: function(o) {
612
+ return function(s, a) {
613
+ return new A.HMAC.init(o, a).finalize(s);
604
614
  };
605
615
  }
606
616
  });
@@ -609,12 +619,12 @@ function ce() {
609
619
  }(Math);
610
620
  return r;
611
621
  });
612
- }(K)), K.exports;
622
+ }(Y)), Y.exports;
613
623
  }
614
624
  (function(e, t) {
615
625
  (function(r, n) {
616
- e.exports = n(ce());
617
- })(F, function(r) {
626
+ e.exports = n(he());
627
+ })(q, function(r) {
618
628
  return function() {
619
629
  var n = r, u = n.lib, c = u.WordArray, v = n.enc;
620
630
  v.Base64url = {
@@ -637,14 +647,14 @@ function ce() {
637
647
  y === void 0 && (y = !0);
638
648
  var m = p.words, g = p.sigBytes, b = y ? this._safe_map : this._map;
639
649
  p.clamp();
640
- for (var d = [], l = 0; l < g; l += 3)
641
- for (var i = m[l >>> 2] >>> 24 - l % 4 * 8 & 255, f = m[l + 1 >>> 2] >>> 24 - (l + 1) % 4 * 8 & 255, A = m[l + 2 >>> 2] >>> 24 - (l + 2) % 4 * 8 & 255, s = i << 16 | f << 8 | A, o = 0; o < 4 && l + o * 0.75 < g; o++)
642
- d.push(b.charAt(s >>> 6 * (3 - o) & 63));
650
+ for (var f = [], l = 0; l < g; l += 3)
651
+ for (var i = m[l >>> 2] >>> 24 - l % 4 * 8 & 255, d = m[l + 1 >>> 2] >>> 24 - (l + 1) % 4 * 8 & 255, A = m[l + 2 >>> 2] >>> 24 - (l + 2) % 4 * 8 & 255, o = i << 16 | d << 8 | A, s = 0; s < 4 && l + s * 0.75 < g; s++)
652
+ f.push(b.charAt(o >>> 6 * (3 - s) & 63));
643
653
  var a = b.charAt(64);
644
654
  if (a)
645
- for (; d.length % 4; )
646
- d.push(a);
647
- return d.join("");
655
+ for (; f.length % 4; )
656
+ f.push(a);
657
+ return f.join("");
648
658
  },
649
659
  /**
650
660
  * Converts a Base64url string to a word array.
@@ -666,8 +676,8 @@ function ce() {
666
676
  var m = p.length, g = y ? this._safe_map : this._map, b = this._reverseMap;
667
677
  if (!b) {
668
678
  b = this._reverseMap = [];
669
- for (var d = 0; d < g.length; d++)
670
- b[g.charCodeAt(d)] = d;
679
+ for (var f = 0; f < g.length; f++)
680
+ b[g.charCodeAt(f)] = f;
671
681
  }
672
682
  var l = g.charAt(64);
673
683
  if (l) {
@@ -680,70 +690,70 @@ function ce() {
680
690
  _safe_map: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"
681
691
  };
682
692
  function B(p, y, m) {
683
- for (var g = [], b = 0, d = 0; d < y; d++)
684
- if (d % 4) {
685
- var l = m[p.charCodeAt(d - 1)] << d % 4 * 2, i = m[p.charCodeAt(d)] >>> 6 - d % 4 * 2, f = l | i;
686
- g[b >>> 2] |= f << 24 - b % 4 * 8, b++;
693
+ for (var g = [], b = 0, f = 0; f < y; f++)
694
+ if (f % 4) {
695
+ var l = m[p.charCodeAt(f - 1)] << f % 4 * 2, i = m[p.charCodeAt(f)] >>> 6 - f % 4 * 2, d = l | i;
696
+ g[b >>> 2] |= d << 24 - b % 4 * 8, b++;
687
697
  }
688
698
  return c.create(g, b);
689
699
  }
690
700
  }(), r.enc.Base64url;
691
701
  });
692
- })(ae);
693
- var Re = ae.exports;
694
- const ze = /* @__PURE__ */ ie(Re);
695
- var ue = { exports: {} };
702
+ })(ue);
703
+ var ze = ue.exports;
704
+ const Ue = /* @__PURE__ */ ce(ze);
705
+ var fe = { exports: {} };
696
706
  (function(e, t) {
697
707
  (function(r, n) {
698
- e.exports = n(ce());
699
- })(F, function(r) {
708
+ e.exports = n(he());
709
+ })(q, function(r) {
700
710
  return function(n) {
701
711
  var u = r, c = u.lib, v = c.WordArray, B = c.Hasher, p = u.algo, y = [], m = [];
702
712
  (function() {
703
- function d(A) {
704
- for (var s = n.sqrt(A), o = 2; o <= s; o++)
705
- if (!(A % o))
713
+ function f(A) {
714
+ for (var o = n.sqrt(A), s = 2; s <= o; s++)
715
+ if (!(A % s))
706
716
  return !1;
707
717
  return !0;
708
718
  }
709
719
  function l(A) {
710
720
  return (A - (A | 0)) * 4294967296 | 0;
711
721
  }
712
- for (var i = 2, f = 0; f < 64; )
713
- d(i) && (f < 8 && (y[f] = l(n.pow(i, 1 / 2))), m[f] = l(n.pow(i, 1 / 3)), f++), i++;
722
+ for (var i = 2, d = 0; d < 64; )
723
+ f(i) && (d < 8 && (y[d] = l(n.pow(i, 1 / 2))), m[d] = l(n.pow(i, 1 / 3)), d++), i++;
714
724
  })();
715
725
  var g = [], b = p.SHA256 = B.extend({
716
726
  _doReset: function() {
717
727
  this._hash = new v.init(y.slice(0));
718
728
  },
719
- _doProcessBlock: function(d, l) {
720
- for (var i = this._hash.words, f = i[0], A = i[1], s = i[2], o = i[3], a = i[4], h = i[5], _ = i[6], S = i[7], C = 0; C < 64; C++) {
729
+ _doProcessBlock: function(f, l) {
730
+ for (var i = this._hash.words, d = i[0], A = i[1], o = i[2], s = i[3], a = i[4], h = i[5], _ = i[6], S = i[7], C = 0; C < 64; C++) {
721
731
  if (C < 16)
722
- g[C] = d[l + C] | 0;
732
+ g[C] = f[l + C] | 0;
723
733
  else {
724
- var x = g[C - 15], q = (x << 25 | x >>> 7) ^ (x << 14 | x >>> 18) ^ x >>> 3, P = g[C - 2], W = (P << 15 | P >>> 17) ^ (P << 13 | P >>> 19) ^ P >>> 10;
725
- g[C] = q + g[C - 7] + W + g[C - 16];
734
+ var x = g[C - 15], N = (x << 25 | x >>> 7) ^ (x << 14 | x >>> 18) ^ x >>> 3, P = g[C - 2], W = (P << 15 | P >>> 17) ^ (P << 13 | P >>> 19) ^ P >>> 10;
735
+ g[C] = N + g[C - 7] + W + g[C - 16];
726
736
  }
727
- var he = a & h ^ ~a & _, de = f & A ^ f & s ^ A & s, fe = (f << 30 | f >>> 2) ^ (f << 19 | f >>> 13) ^ (f << 10 | f >>> 22), le = (a << 26 | a >>> 6) ^ (a << 21 | a >>> 11) ^ (a << 7 | a >>> 25), Y = S + le + he + m[C] + g[C], pe = fe + de;
728
- S = _, _ = h, h = a, a = o + Y | 0, o = s, s = A, A = f, f = Y + pe | 0;
737
+ var de = a & h ^ ~a & _, le = d & A ^ d & o ^ A & o, pe = (d << 30 | d >>> 2) ^ (d << 19 | d >>> 13) ^ (d << 10 | d >>> 22), ve = (a << 26 | a >>> 6) ^ (a << 21 | a >>> 11) ^ (a << 7 | a >>> 25), te = S + ve + de + m[C] + g[C], ge = pe + le;
738
+ S = _, _ = h, h = a, a = s + te | 0, s = o, o = A, A = d, d = te + ge | 0;
729
739
  }
730
- i[0] = i[0] + f | 0, i[1] = i[1] + A | 0, i[2] = i[2] + s | 0, i[3] = i[3] + o | 0, i[4] = i[4] + a | 0, i[5] = i[5] + h | 0, i[6] = i[6] + _ | 0, i[7] = i[7] + S | 0;
740
+ i[0] = i[0] + d | 0, i[1] = i[1] + A | 0, i[2] = i[2] + o | 0, i[3] = i[3] + s | 0, i[4] = i[4] + a | 0, i[5] = i[5] + h | 0, i[6] = i[6] + _ | 0, i[7] = i[7] + S | 0;
731
741
  },
732
742
  _doFinalize: function() {
733
- var d = this._data, l = d.words, i = this._nDataBytes * 8, f = d.sigBytes * 8;
734
- return l[f >>> 5] |= 128 << 24 - f % 32, l[(f + 64 >>> 9 << 4) + 14] = n.floor(i / 4294967296), l[(f + 64 >>> 9 << 4) + 15] = i, d.sigBytes = l.length * 4, this._process(), this._hash;
743
+ var f = this._data, l = f.words, i = this._nDataBytes * 8, d = f.sigBytes * 8;
744
+ return l[d >>> 5] |= 128 << 24 - d % 32, l[(d + 64 >>> 9 << 4) + 14] = n.floor(i / 4294967296), l[(d + 64 >>> 9 << 4) + 15] = i, f.sigBytes = l.length * 4, this._process(), this._hash;
735
745
  },
736
746
  clone: function() {
737
- var d = B.clone.call(this);
738
- return d._hash = this._hash.clone(), d;
747
+ var f = B.clone.call(this);
748
+ return f._hash = this._hash.clone(), f;
739
749
  }
740
750
  });
741
751
  u.SHA256 = B._createHelper(b), u.HmacSHA256 = B._createHmacHelper(b);
742
752
  }(Math), r.SHA256;
743
753
  });
744
- })(ue);
745
- var Ue = ue.exports;
746
- const He = /* @__PURE__ */ ie(Ue), Pe = (e, t) => {
754
+ })(fe);
755
+ var He = fe.exports;
756
+ const Pe = /* @__PURE__ */ ce(He), Oe = (e, t) => {
747
757
  const {
748
758
  client_id: r,
749
759
  redirect_uri: n,
@@ -757,10 +767,10 @@ const He = /* @__PURE__ */ ie(Ue), Pe = (e, t) => {
757
767
  } = e, g = y ? {
758
768
  address: y,
759
769
  ...m !== void 0 ? { signature: m } : {},
760
- ...v !== void 0 || B !== void 0 ? { chain: v ? oe(v) : B } : {},
761
- ...v !== void 0 || p !== void 0 ? { network: v ? ke(v) : p } : {}
770
+ ...v !== void 0 || B !== void 0 ? { chain: v ? ee(v) : B } : {},
771
+ ...v !== void 0 || p !== void 0 ? { network: v ? ae(v) : p } : {}
762
772
  } : {};
763
- return Q({
773
+ return Z({
764
774
  client_id: r,
765
775
  redirect_uri: n,
766
776
  ...u !== void 0 ? { scope: u } : {},
@@ -770,23 +780,23 @@ const He = /* @__PURE__ */ ie(Ue), Pe = (e, t) => {
770
780
  response_type: "code",
771
781
  ...g
772
782
  });
773
- }, Oe = () => {
783
+ }, Te = () => {
774
784
  let e = "";
775
785
  const t = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789", r = t.length;
776
786
  let n = 0;
777
787
  for (; n < 128; )
778
788
  e += t.charAt(Math.floor(Math.random() * r)), n += 1;
779
789
  return e;
780
- }, Te = (e) => ze.stringify(He(e)), re = (e, t) => {
781
- const r = Oe(), n = Te(r);
782
- return sessionStorage.setItem(M, r || ""), `${e}/auth?${Pe(t, n)}`;
783
- }, ne = () => {
790
+ }, Me = (e) => Ue.stringify(Pe(e)), oe = (e, t) => {
791
+ const r = Te(), n = Me(r);
792
+ return localStorage.setItem(M, r || ""), `${e}/auth?${Oe(t, n)}`;
793
+ }, se = () => {
784
794
  const e = window.location.href;
785
795
  if (!e || !(e != null && e.includes("?")))
786
796
  return;
787
797
  const [t, r] = e.split("?");
788
798
  r && window.history.replaceState(null, "", t);
789
- }, se = (e) => e.code != null, Me = (e) => e.refresh_token != null, Le = (e) => e.client_secret != null, qe = async (e, t, r, n) => {
799
+ }, ie = (e) => e.code != null, Le = (e) => e.refresh_token != null, Ne = (e) => e.client_secret != null, je = async (e, t, r, n) => {
790
800
  const u = await fetch(`${e}`, {
791
801
  method: t,
792
802
  headers: n,
@@ -803,8 +813,8 @@ const He = /* @__PURE__ */ ie(Ue), Pe = (e, t) => {
803
813
  throw c;
804
814
  return c;
805
815
  }, T = typeof window > "u";
806
- var z, N, L, H, U, O, j, E, $, V, G, J;
807
- class We {
816
+ var z, F, L, H, U, O, j, E, $, V, G, J;
817
+ class De {
808
818
  constructor(t) {
809
819
  /**
810
820
  * {@link https://monerium.dev/api-docs#operation/auth-token}
@@ -813,7 +823,7 @@ class We {
813
823
  // -- Helper Methods
814
824
  R(this, E);
815
825
  R(this, z, void 0);
816
- R(this, N, void 0);
826
+ R(this, F, void 0);
817
827
  /** The socket will be available after subscribing to an event */
818
828
  R(this, L, void 0);
819
829
  R(this, H, void 0);
@@ -822,10 +832,10 @@ class We {
822
832
  R(this, G, void 0);
823
833
  R(this, J, void 0);
824
834
  if (I(this, H, /* @__PURE__ */ new Map()), this.isAuthorized = !!this.bearerProfile, I(this, V, async (r, n, u) => {
825
- const c = sessionStorage.getItem(M) || "";
835
+ const c = localStorage.getItem(M) || "";
826
836
  if (!c)
827
837
  throw new Error("Code verifier not found");
828
- return this.codeVerifier = c, sessionStorage.removeItem(M), await k(this, O, j).call(this, {
838
+ return this.codeVerifier = c, localStorage.removeItem(M), await k(this, O, j).call(this, {
829
839
  code: u,
830
840
  redirect_uri: n,
831
841
  client_id: r,
@@ -857,15 +867,15 @@ class We {
857
867
  console.info(`Socket connection closed: ${r}`);
858
868
  }), n;
859
869
  }, this.auth = async (r) => await k(this, O, j).call(this, r), this.connect = async (r) => await k(this, O, j).call(this, r), this.getAuthFlowURI = (r) => {
860
- const n = re(w(this, z).api, r);
861
- return this.codeVerifier = sessionStorage.getItem(M), n;
870
+ const n = oe(w(this, z).api, r);
871
+ return this.codeVerifier = localStorage.getItem(M), n;
862
872
  }, this.pkceRequest = (r) => this.getAuthFlowURI(r), this.getEnvironment = () => w(this, z), !t) {
863
- I(this, z, X.environments.sandbox);
873
+ I(this, z, K.environments.sandbox);
864
874
  return;
865
875
  }
866
876
  if (typeof t == "string")
867
- I(this, z, X.environments[t]);
868
- else if (I(this, z, X.environments[t.environment || "sandbox"]), T) {
877
+ I(this, z, K.environments[t]);
878
+ else if (I(this, z, K.environments[t.environment || "sandbox"]), T) {
869
879
  const { clientId: r, clientSecret: n } = t;
870
880
  I(this, U, {
871
881
  clientId: r,
@@ -881,7 +891,7 @@ class We {
881
891
  }
882
892
  /**
883
893
  * Construct the url to the authorization code flow,
884
- * Code Verifier needed for the code challenge is stored in session storage
894
+ * Code Verifier needed for the code challenge is stored in local storage
885
895
  * For automatic wallet link, add the following properties: `address`, `signature` & `chainId`
886
896
  * @returns string
887
897
  * {@link https://monerium.dev/api-docs#operation/auth}
@@ -893,7 +903,7 @@ class We {
893
903
  throw new Error("Missing ClientId");
894
904
  if (!n)
895
905
  throw new Error("Missing RedirectUrl");
896
- const u = re(w(this, z).api, {
906
+ const u = oe(w(this, z).api, {
897
907
  client_id: r,
898
908
  redirect_uri: n,
899
909
  address: t == null ? void 0 : t.address,
@@ -920,7 +930,7 @@ class We {
920
930
  throw new Error("Missing ClientId");
921
931
  if (T)
922
932
  throw new Error("This only works client side");
923
- const c = new URLSearchParams(window.location.search).get("code") || void 0, v = sessionStorage.getItem(D) || void 0;
933
+ const c = new URLSearchParams(window.location.search).get("code") || void 0, v = localStorage.getItem(D) || void 0;
924
934
  return v ? await w(this, J).call(this, r, v) : c && await w(this, V).call(this, r, u, c), !!this.bearerProfile;
925
935
  }
926
936
  // -- Read Methods
@@ -949,7 +959,7 @@ class We {
949
959
  * {@link https://monerium.dev/api-docs#operation/orders}
950
960
  */
951
961
  getOrders(t) {
952
- const r = Q(t);
962
+ const r = Z(t);
953
963
  return k(this, E, $).call(this, "get", `orders?${r}`);
954
964
  }
955
965
  /**
@@ -969,20 +979,28 @@ class We {
969
979
  * {@link https://monerium.dev/api-docs#operation/profile-addresses}
970
980
  */
971
981
  linkAddress(t, r) {
972
- return k(this, E, $).call(this, "post", `profiles/${t}/addresses`, JSON.stringify(r));
982
+ return r = Q(r), r.accounts = r.accounts.map((n) => Q(n)), k(this, E, $).call(this, "post", `profiles/${t}/addresses`, JSON.stringify(r));
973
983
  }
974
984
  /**
975
985
  * {@link https://monerium.dev/api-docs#operation/post-orders}
976
986
  */
977
987
  placeOrder(t, r) {
978
- const n = { ...t, kind: "redeem", currency: "eur" };
988
+ const n = {
989
+ kind: "redeem",
990
+ currency: "eur",
991
+ ...Q(t),
992
+ counterpart: {
993
+ ...t.counterpart,
994
+ identifier: Q(t.counterpart.identifier)
995
+ }
996
+ };
979
997
  return r ? k(this, E, $).call(this, "post", `profiles/${r}/orders`, JSON.stringify(n)) : k(this, E, $).call(this, "post", "orders", JSON.stringify(n));
980
998
  }
981
999
  /**
982
1000
  * {@link https://monerium.dev/api-docs#operation/supporting-document}
983
1001
  */
984
1002
  uploadSupportingDocument(t) {
985
- const r = Q(
1003
+ const r = Z(
986
1004
  t
987
1005
  );
988
1006
  return k(this, E, $).call(this, "post", "files/supporting-document", r, !0);
@@ -997,13 +1015,13 @@ class We {
997
1015
  */
998
1016
  async disconnect() {
999
1017
  var t;
1000
- T || sessionStorage.removeItem(M), w(this, H).clear(), (t = w(this, L)) == null || t.close(), I(this, N, void 0), this.bearerProfile = void 0;
1018
+ T || localStorage.removeItem(M), w(this, H).clear(), (t = w(this, L)) == null || t.close(), I(this, F, void 0), this.bearerProfile = void 0;
1001
1019
  }
1002
1020
  /**
1003
1021
  * Revokes access
1004
1022
  */
1005
1023
  async revokeAccess() {
1006
- T || sessionStorage.removeItem(D), this.disconnect();
1024
+ T || localStorage.removeItem(D), this.disconnect();
1007
1025
  }
1008
1026
  /**
1009
1027
  * Subscribe to MoneriumEvent to receive notifications using the Monerium API (WebSocket)
@@ -1024,50 +1042,50 @@ class We {
1024
1042
  w(this, H).delete(t), w(this, H).size === 0 && ((r = w(this, L)) == null || r.close(), I(this, L, void 0));
1025
1043
  }
1026
1044
  }
1027
- z = new WeakMap(), N = new WeakMap(), L = new WeakMap(), H = new WeakMap(), U = new WeakMap(), O = new WeakSet(), j = async function(t) {
1045
+ z = new WeakMap(), F = new WeakMap(), L = new WeakMap(), H = new WeakMap(), U = new WeakMap(), O = new WeakSet(), j = async function(t) {
1028
1046
  let r;
1029
- if (se(t))
1047
+ if (ie(t))
1030
1048
  r = { ...t, grant_type: "authorization_code" };
1031
- else if (Me(t))
1032
- r = { ...t, grant_type: "refresh_token" };
1033
1049
  else if (Le(t))
1050
+ r = { ...t, grant_type: "refresh_token" };
1051
+ else if (Ne(t))
1034
1052
  r = { ...t, grant_type: "client_credentials" };
1035
1053
  else
1036
1054
  throw new Error("Authorization grant type could not be detected.");
1037
1055
  return await k(this, E, $).call(this, "post", "auth/token", r, !0).then((n) => {
1038
1056
  var u;
1039
- this.bearerProfile = n, this.isAuthorized = !!n, I(this, N, `Bearer ${n == null ? void 0 : n.access_token}`), T || window.sessionStorage.setItem(
1057
+ this.bearerProfile = n, this.isAuthorized = !!n, I(this, F, `Bearer ${n == null ? void 0 : n.access_token}`), T || window.localStorage.setItem(
1040
1058
  D,
1041
1059
  ((u = this.bearerProfile) == null ? void 0 : u.refresh_token) || ""
1042
1060
  );
1043
1061
  }).catch((n) => {
1044
- throw T || (sessionStorage.removeItem(M), sessionStorage.removeItem(D), ne()), new Error(n == null ? void 0 : n.message);
1045
- }), se(t) && ne(), this.bearerProfile;
1062
+ throw T || (localStorage.removeItem(M), localStorage.removeItem(D), se()), new Error(n == null ? void 0 : n.message);
1063
+ }), ie(t) && se(), this.bearerProfile;
1046
1064
  }, E = new WeakSet(), $ = async function(t, r, n, u) {
1047
- return qe(
1065
+ return je(
1048
1066
  `${w(this, z).api}/${r}`,
1049
1067
  t,
1050
- u ? Q(n) : n,
1068
+ u ? Z(n) : n,
1051
1069
  {
1052
- Authorization: w(this, N) || "",
1070
+ Authorization: w(this, F) || "",
1053
1071
  "Content-Type": `application/${u ? "x-www-form-urlencoded" : "json"}`
1054
1072
  }
1055
1073
  );
1056
1074
  }, V = new WeakMap(), G = new WeakMap(), J = new WeakMap();
1057
1075
  export {
1058
- _e as AccountState,
1059
- ve as Currency,
1060
- me as KYCOutcome,
1061
- ye as KYCState,
1062
- We as MoneriumClient,
1063
- Se as OrderKind,
1064
- Be as OrderState,
1065
- be as PaymentStandard,
1066
- we as Permission,
1067
- ge as ProfileType,
1068
- Ne as constants,
1069
- oe as getChain,
1070
- ke as getNetwork,
1076
+ Se as AccountState,
1077
+ we as Currency,
1078
+ be as KYCOutcome,
1079
+ _e as KYCState,
1080
+ De as MoneriumClient,
1081
+ ke as OrderKind,
1082
+ Ce as OrderState,
1083
+ Be as PaymentStandard,
1084
+ me as Permission,
1085
+ ye as ProfileType,
1086
+ We as constants,
1087
+ ee as getChain,
1088
+ ae as getNetwork,
1071
1089
  Fe as placeOrderMessage,
1072
- ee as rfc3339
1090
+ re as rfc3339
1073
1091
  };
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@monerium/sdk",
3
- "version": "2.8.3",
3
+ "version": "2.10.0",
4
4
  "description": "Everything you need to interact with the Monerium API - an electronic money issuer.",
5
5
  "license": "MIT",
6
6
  "repository": {
package/dist/types.d.ts CHANGED
@@ -18,7 +18,7 @@ export type Networks = EthereumTestnet | GnosisTestnet | PolygonTestnet | 'mainn
18
18
  export type NetworkSemiStrict<C extends Chain> = C extends 'ethereum' ? EthereumTestnet | 'mainnet' : C extends 'gnosis' ? GnosisTestnet | 'mainnet' : C extends 'polygon' ? PolygonTestnet | 'mainnet' : never;
19
19
  export type NetworkStrict<C extends Chain, E extends ENV> = E extends 'production' ? 'mainnet' : E extends 'sandbox' ? C extends 'ethereum' ? EthereumTestnet : C extends 'gnosis' ? GnosisTestnet : C extends 'polygon' ? PolygonTestnet : never : never;
20
20
  export type Network<C extends Chain = Chain, E extends ENV = ENV> = C extends Chain ? E extends ENV ? NetworkStrict<C, E> & NetworkSemiStrict<C> : never : never;
21
- export type ChainId = 1 | 5 | 100 | 137 | 10200 | 80001;
21
+ export type ChainId = number | 1 | 5 | 100 | 137 | 10200 | 80001;
22
22
  export declare enum Currency {
23
23
  eur = "eur"
24
24
  }
@@ -89,12 +89,12 @@ export type PKCERequest = {
89
89
  address?: string;
90
90
  /** the signature of the wallet to automatically link */
91
91
  signature?: string;
92
- /** @deprecated - Use chainId - the network of the wallet to automatically link */
92
+ /** @deprecated - Use chainId */
93
93
  network?: Network;
94
- /** @deprecated - Use chainId - the chain of the wallet to automatically link */
94
+ /** @deprecated - Use chainId */
95
95
  chain?: Chain;
96
96
  /** The network of the wallet to automatically link */
97
- chainId?: ChainId | number;
97
+ chainId?: ChainId;
98
98
  };
99
99
  declare enum Method {
100
100
  password = "password",
@@ -207,8 +207,11 @@ export interface IBAN extends Identifier {
207
207
  export interface CrossChain extends Identifier {
208
208
  standard: PaymentStandard.chain;
209
209
  address: string;
210
- chain: string;
211
- network: string;
210
+ chainId: ChainId;
211
+ /** @deprecated - Use chainId */
212
+ chain?: Chain;
213
+ /** @deprecated - Use chainId */
214
+ network?: Network;
212
215
  }
213
216
  export interface SCAN extends Identifier {
214
217
  standard: PaymentStandard.scan;
@@ -288,8 +291,11 @@ export interface NewOrderCommon {
288
291
  }
289
292
  export interface NewOrderByAddress extends NewOrderCommon {
290
293
  address: string;
291
- chain: Chain;
292
- network: Network;
294
+ /** @deprecated - Use 'chainId' */
295
+ chain?: Chain;
296
+ /** @deprecated - Use 'chainId' */
297
+ network?: Network;
298
+ chainId: ChainId;
293
299
  }
294
300
  export interface NewOrderByAccountId extends NewOrderCommon {
295
301
  accountId: string;
@@ -308,8 +314,11 @@ export interface SupportingDoc {
308
314
  meta: SupportingDocMetadata;
309
315
  }
310
316
  export interface CurrencyAccounts {
311
- network: Network;
312
- chain: Chain;
317
+ /** @deprecated - Use 'chainId' */
318
+ network?: Network;
319
+ /** @deprecated - Use 'chainId' */
320
+ chain?: Chain;
321
+ chainId: ChainId;
313
322
  currency: Currency;
314
323
  }
315
324
  export interface LinkAddress {
@@ -317,8 +326,11 @@ export interface LinkAddress {
317
326
  message: string;
318
327
  signature: string;
319
328
  accounts: CurrencyAccounts[];
329
+ /** @deprecated - Use 'chainId' */
320
330
  network?: Network;
331
+ /** @deprecated - Use 'chainId' */
321
332
  chain?: Chain;
333
+ chainId?: ChainId;
322
334
  }
323
335
  export type OrderNotification = {
324
336
  id: string;
@@ -346,7 +358,7 @@ export type AuthFlowOptions = {
346
358
  redirectUrl?: string;
347
359
  address?: string;
348
360
  signature?: string;
349
- chainId?: number;
361
+ chainId?: ChainId;
350
362
  };
351
363
  export type ClientCredentials = {
352
364
  clientId: string;
package/dist/utils.d.ts CHANGED
@@ -25,3 +25,4 @@ export declare const getChain: (chainId: number) => Chain;
25
25
  export declare const getNetwork: (chainId: number) => Networks;
26
26
  export declare const getIban: (profile: Profile, address: string, chainId: number) => string;
27
27
  export declare const getAmount: (balances?: Balances[], address?: string, chainId?: ChainId) => string;
28
+ export declare const mapChainAndNetwork: (body: any) => any;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@monerium/sdk",
3
- "version": "2.8.3",
3
+ "version": "2.10.0",
4
4
  "description": "Everything you need to interact with the Monerium API - an electronic money issuer.",
5
5
  "license": "MIT",
6
6
  "repository": {