@txnlab/use-wallet 0.1.20 → 0.1.21
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/cjs/index.js +18 -73
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/utils.js +74 -0
- package/dist/cjs/utils.js.map +1 -0
- package/dist/esm/index.js +8 -63
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/utils.js +70 -0
- package/dist/esm/utils.js.map +1 -0
- package/package.json +1 -1
package/dist/cjs/index.js
CHANGED
|
@@ -5,14 +5,15 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
5
5
|
var constants = require('./constants-e76d1f05.js');
|
|
6
6
|
var react = require('react');
|
|
7
7
|
var base = require('./base-9794b627.js');
|
|
8
|
-
var
|
|
9
|
-
var clients_myalgowallet = require('./clients/myalgowallet.js');
|
|
10
|
-
var clients_algosigner = require('./clients/algosigner.js');
|
|
11
|
-
var clients_defly = require('./clients/defly.js');
|
|
12
|
-
var clients_exodus = require('./clients/exodus.js');
|
|
13
|
-
var clients_kmd = require('./clients/kmd.js');
|
|
14
|
-
var clients_walletconnect = require('./clients/walletconnect.js');
|
|
8
|
+
var utils = require('./utils.js');
|
|
15
9
|
var providers = require('./providers.js');
|
|
10
|
+
require('./clients/perawallet.js');
|
|
11
|
+
require('./clients/myalgowallet.js');
|
|
12
|
+
require('./clients/algosigner.js');
|
|
13
|
+
require('./clients/defly.js');
|
|
14
|
+
require('./clients/exodus.js');
|
|
15
|
+
require('./clients/kmd.js');
|
|
16
|
+
require('./clients/walletconnect.js');
|
|
16
17
|
require('@json-rpc-tools/utils');
|
|
17
18
|
|
|
18
19
|
function n(n){for(var r=arguments.length,t=Array(r>1?r-1:0),e=1;e<r;e++)t[e-1]=arguments[e];if("production"!==process.env.NODE_ENV){var i=Y[n],o=i?"function"==typeof i?i.apply(null,t):i:"unknown error nr: "+n;throw Error("[Immer] "+o)}throw Error("[Immer] minified error nr: "+n+(t.length?" "+t.map((function(n){return "'"+n+"'"})).join(","):"")+". Find the full error at: https://bit.ly/3cXEKWf")}function r(n){return !!n&&!!n[Q]}function t(n){return !!n&&(function(n){if(!n||"object"!=typeof n)return !1;var r=Object.getPrototypeOf(n);if(null===r)return !0;var t=Object.hasOwnProperty.call(r,"constructor")&&r.constructor;return t===Object||"function"==typeof t&&Function.toString.call(t)===Z}(n)||Array.isArray(n)||!!n[L]||!!n.constructor[L]||s(n)||v(n))}function i(n,r,t){void 0===t&&(t=!1),0===o(n)?(t?Object.keys:nn)(n).forEach((function(e){t&&"symbol"==typeof e||r(e,n[e],n);})):n.forEach((function(t,e){return r(e,t,n)}));}function o(n){var r=n[Q];return r?r.i>3?r.i-4:r.i:Array.isArray(n)?1:s(n)?2:v(n)?3:0}function u(n,r){return 2===o(n)?n.has(r):Object.prototype.hasOwnProperty.call(n,r)}function a(n,r){return 2===o(n)?n.get(r):n[r]}function f(n,r,t){var e=o(n);2===e?n.set(r,t):3===e?(n.delete(r),n.add(t)):n[r]=t;}function c(n,r){return n===r?0!==n||1/n==1/r:n!=n&&r!=r}function s(n){return X&&n instanceof Map}function v(n){return q&&n instanceof Set}function p(n){return n.o||n.t}function l(n){if(Array.isArray(n))return Array.prototype.slice.call(n);var r=rn(n);delete r[Q];for(var t=nn(r),e=0;e<t.length;e++){var i=t[e],o=r[i];!1===o.writable&&(o.writable=!0,o.configurable=!0),(o.get||o.set)&&(r[i]={configurable:!0,writable:!0,enumerable:o.enumerable,value:n[i]});}return Object.create(Object.getPrototypeOf(n),r)}function d(n,e){return void 0===e&&(e=!1),y(n)||r(n)||!t(n)?n:(o(n)>1&&(n.set=n.add=n.clear=n.delete=h),Object.freeze(n),e&&i(n,(function(n,r){return d(r,!0)}),!0),n)}function h(){n(2);}function y(n){return null==n||"object"!=typeof n||Object.isFrozen(n)}function b(r){var t=tn[r];return t||n(18,r),t}function _(){return "production"===process.env.NODE_ENV||U||n(0),U}function j(n,r){r&&(b("Patches"),n.u=[],n.s=[],n.v=r);}function O(n){g(n),n.p.forEach(S),n.p=null;}function g(n){n===U&&(U=n.l);}function w(n){return U={p:[],l:U,h:n,m:!0,_:0}}function S(n){var r=n[Q];0===r.i||1===r.i?r.j():r.O=!0;}function P(r,e){e._=e.p.length;var i=e.p[0],o=void 0!==r&&r!==i;return e.h.g||b("ES5").S(e,r,o),o?(i[Q].P&&(O(e),n(4)),t(r)&&(r=M(e,r),e.l||x(e,r)),e.u&&b("Patches").M(i[Q].t,r,e.u,e.s)):r=M(e,i,[]),O(e),e.u&&e.v(e.u,e.s),r!==H?r:void 0}function M(n,r,t){if(y(r))return r;var e=r[Q];if(!e)return i(r,(function(i,o){return A(n,e,r,i,o,t)}),!0),r;if(e.A!==n)return r;if(!e.P)return x(n,e.t,!0),e.t;if(!e.I){e.I=!0,e.A._--;var o=4===e.i||5===e.i?e.o=l(e.k):e.o;i(3===e.i?new Set(o):o,(function(r,i){return A(n,e,o,r,i,t)})),x(n,o,!1),t&&n.u&&b("Patches").R(e,t,n.u,n.s);}return e.o}function A(e,i,o,a,c,s){if("production"!==process.env.NODE_ENV&&c===o&&n(5),r(c)){var v=M(e,c,s&&i&&3!==i.i&&!u(i.D,a)?s.concat(a):void 0);if(f(o,a,v),!r(v))return;e.m=!1;}if(t(c)&&!y(c)){if(!e.h.F&&e._<1)return;M(e,c),i&&i.A.l||x(e,c);}}function x(n,r,t){void 0===t&&(t=!1),n.h.F&&n.m&&d(r,t);}function z(n,r){var t=n[Q];return (t?p(t):n)[r]}function I(n,r){if(r in n)for(var t=Object.getPrototypeOf(n);t;){var e=Object.getOwnPropertyDescriptor(t,r);if(e)return e;t=Object.getPrototypeOf(t);}}function k(n){n.P||(n.P=!0,n.l&&k(n.l));}function E(n){n.o||(n.o=l(n.t));}function R(n,r,t){var e=s(r)?b("MapSet").N(r,t):v(r)?b("MapSet").T(r,t):n.g?function(n,r){var t=Array.isArray(n),e={i:t?1:0,A:r?r.A:_(),P:!1,I:!1,D:{},l:r,t:n,k:null,o:null,j:null,C:!1},i=e,o=en;t&&(i=[e],o=on);var u=Proxy.revocable(i,o),a=u.revoke,f=u.proxy;return e.k=f,e.j=a,f}(r,t):b("ES5").J(r,t);return (t?t.A:_()).p.push(e),e}function D(e){return r(e)||n(22,e),function n(r){if(!t(r))return r;var e,u=r[Q],c=o(r);if(u){if(!u.P&&(u.i<4||!b("ES5").K(u)))return u.t;u.I=!0,e=F(r,c),u.I=!1;}else e=F(r,c);return i(e,(function(r,t){u&&a(u.t,r)===t||f(e,r,n(t));})),3===c?new Set(e):e}(e)}function F(n,r){switch(r){case 2:return new Map(n);case 3:return Array.from(n)}return l(n)}var G,U,W="undefined"!=typeof Symbol&&"symbol"==typeof Symbol("x"),X="undefined"!=typeof Map,q="undefined"!=typeof Set,B="undefined"!=typeof Proxy&&void 0!==Proxy.revocable&&"undefined"!=typeof Reflect,H=W?Symbol.for("immer-nothing"):((G={})["immer-nothing"]=!0,G),L=W?Symbol.for("immer-draftable"):"__$immer_draftable",Q=W?Symbol.for("immer-state"):"__$immer_state",Y={0:"Illegal state",1:"Immer drafts cannot have computed properties",2:"This object has been frozen and should not be mutated",3:function(n){return "Cannot use a proxy that has been revoked. Did you pass an object from inside an immer function to an async process? "+n},4:"An immer producer returned a new value *and* modified its draft. Either return a new value *or* modify the draft.",5:"Immer forbids circular references",6:"The first or second argument to `produce` must be a function",7:"The third argument to `produce` must be a function or undefined",8:"First argument to `createDraft` must be a plain object, an array, or an immerable object",9:"First argument to `finishDraft` must be a draft returned by `createDraft`",10:"The given draft is already finalized",11:"Object.defineProperty() cannot be used on an Immer draft",12:"Object.setPrototypeOf() cannot be used on an Immer draft",13:"Immer only supports deleting array indices",14:"Immer only supports setting array indices and the 'length' property",15:function(n){return "Cannot apply patch, path doesn't resolve: "+n},16:'Sets cannot have "replace" patches.',17:function(n){return "Unsupported patch operation: "+n},18:function(n){return "The plugin for '"+n+"' has not been loaded into Immer. To enable the plugin, import and call `enable"+n+"()` when initializing your application."},20:"Cannot use proxies if Proxy, Proxy.revocable or Reflect are not available",21:function(n){return "produce can only be called on things that are draftable: plain objects, arrays, Map, Set or classes that are marked with '[immerable]: true'. Got '"+n+"'"},22:function(n){return "'current' expects a draft, got: "+n},23:function(n){return "'original' expects a draft, got: "+n},24:"Patching reserved attributes like __proto__, prototype and constructor is not allowed"},Z=""+Object.prototype.constructor,nn="undefined"!=typeof Reflect&&Reflect.ownKeys?Reflect.ownKeys:void 0!==Object.getOwnPropertySymbols?function(n){return Object.getOwnPropertyNames(n).concat(Object.getOwnPropertySymbols(n))}:Object.getOwnPropertyNames,rn=Object.getOwnPropertyDescriptors||function(n){var r={};return nn(n).forEach((function(t){r[t]=Object.getOwnPropertyDescriptor(n,t);})),r},tn={},en={get:function(n,r){if(r===Q)return n;var e=p(n);if(!u(e,r))return function(n,r,t){var e,i=I(r,t);return i?"value"in i?i.value:null===(e=i.get)||void 0===e?void 0:e.call(n.k):void 0}(n,e,r);var i=e[r];return n.I||!t(i)?i:i===z(n.t,r)?(E(n),n.o[r]=R(n.A.h,i,n)):i},has:function(n,r){return r in p(n)},ownKeys:function(n){return Reflect.ownKeys(p(n))},set:function(n,r,t){var e=I(p(n),r);if(null==e?void 0:e.set)return e.set.call(n.k,t),!0;if(!n.P){var i=z(p(n),r),o=null==i?void 0:i[Q];if(o&&o.t===t)return n.o[r]=t,n.D[r]=!1,!0;if(c(t,i)&&(void 0!==t||u(n.t,r)))return !0;E(n),k(n);}return n.o[r]===t&&"number"!=typeof t&&(void 0!==t||r in n.o)||(n.o[r]=t,n.D[r]=!0,!0)},deleteProperty:function(n,r){return void 0!==z(n.t,r)||r in n.t?(n.D[r]=!1,E(n),k(n)):delete n.D[r],n.o&&delete n.o[r],!0},getOwnPropertyDescriptor:function(n,r){var t=p(n),e=Reflect.getOwnPropertyDescriptor(t,r);return e?{writable:!0,configurable:1!==n.i||"length"!==r,enumerable:e.enumerable,value:t[r]}:e},defineProperty:function(){n(11);},getPrototypeOf:function(n){return Object.getPrototypeOf(n.t)},setPrototypeOf:function(){n(12);}},on={};i(en,(function(n,r){on[n]=function(){return arguments[0]=arguments[0][0],r.apply(this,arguments)};})),on.deleteProperty=function(r,t){return "production"!==process.env.NODE_ENV&&isNaN(parseInt(t))&&n(13),on.set.call(this,r,t,void 0)},on.set=function(r,t,e){return "production"!==process.env.NODE_ENV&&"length"!==t&&isNaN(parseInt(t))&&n(14),en.set.call(this,r[0],t,e,r[0])};var un=function(){function e(r){var e=this;this.g=B,this.F=!0,this.produce=function(r,i,o){if("function"==typeof r&&"function"!=typeof i){var u=i;i=r;var a=e;return function(n){var r=this;void 0===n&&(n=u);for(var t=arguments.length,e=Array(t>1?t-1:0),o=1;o<t;o++)e[o-1]=arguments[o];return a.produce(n,(function(n){var t;return (t=i).call.apply(t,[r,n].concat(e))}))}}var f;if("function"!=typeof i&&n(6),void 0!==o&&"function"!=typeof o&&n(7),t(r)){var c=w(e),s=R(e,r,void 0),v=!0;try{f=i(s),v=!1;}finally{v?O(c):g(c);}return "undefined"!=typeof Promise&&f instanceof Promise?f.then((function(n){return j(c,o),P(n,c)}),(function(n){throw O(c),n})):(j(c,o),P(f,c))}if(!r||"object"!=typeof r){if(void 0===(f=i(r))&&(f=r),f===H&&(f=void 0),e.F&&d(f,!0),o){var p=[],l=[];b("Patches").M(r,f,p,l),o(p,l);}return f}n(21,r);},this.produceWithPatches=function(n,r){if("function"==typeof n)return function(r){for(var t=arguments.length,i=Array(t>1?t-1:0),o=1;o<t;o++)i[o-1]=arguments[o];return e.produceWithPatches(r,(function(r){return n.apply(void 0,[r].concat(i))}))};var t,i,o=e.produce(n,r,(function(n,r){t=n,i=r;}));return "undefined"!=typeof Promise&&o instanceof Promise?o.then((function(n){return [n,t,i]})):[o,t,i]},"boolean"==typeof(null==r?void 0:r.useProxies)&&this.setUseProxies(r.useProxies),"boolean"==typeof(null==r?void 0:r.autoFreeze)&&this.setAutoFreeze(r.autoFreeze);}var i=e.prototype;return i.createDraft=function(e){t(e)||n(8),r(e)&&(e=D(e));var i=w(this),o=R(this,e,void 0);return o[Q].C=!0,g(i),o},i.finishDraft=function(r,t){var e=r&&r[Q];"production"!==process.env.NODE_ENV&&(e&&e.C||n(9),e.I&&n(10));var i=e.A;return j(i,t),P(void 0,i)},i.setAutoFreeze=function(n){this.F=n;},i.setUseProxies=function(r){r&&!B&&n(20),this.g=r;},i.applyPatches=function(n,t){var e;for(e=t.length-1;e>=0;e--){var i=t[e];if(0===i.path.length&&"replace"===i.op){n=i.value;break}}e>-1&&(t=t.slice(e+1));var o=b("Patches").$;return r(n)?o(n,t):this.produce(n,(function(n){return o(n,t)}))},e}(),an=new un,fn=an.produce;an.produceWithPatches.bind(an);an.setAutoFreeze.bind(an);an.setUseProxies.bind(an);an.applyPatches.bind(an);an.createDraft.bind(an);an.finishDraft.bind(an);
|
|
@@ -501,68 +502,12 @@ const useWalletStore = create(devtools(persist(immer((set, _get) => ({
|
|
|
501
502
|
}), { name: "local-storage" } // prefix in Redux DevTools
|
|
502
503
|
));
|
|
503
504
|
|
|
504
|
-
const clients = {
|
|
505
|
-
[constants.PROVIDER_ID.KMD_WALLET]: clients_kmd.init().catch((e) => {
|
|
506
|
-
if (typeof window !== "undefined") {
|
|
507
|
-
console.info("error initializing client", e);
|
|
508
|
-
return;
|
|
509
|
-
}
|
|
510
|
-
}),
|
|
511
|
-
[constants.PROVIDER_ID.PERA_WALLET]: clients_perawallet.init().catch((e) => {
|
|
512
|
-
if (typeof window !== "undefined") {
|
|
513
|
-
console.info("error initializing client", e);
|
|
514
|
-
return;
|
|
515
|
-
}
|
|
516
|
-
}),
|
|
517
|
-
[constants.PROVIDER_ID.MYALGO_WALLET]: clients_myalgowallet.init().catch((e) => {
|
|
518
|
-
if (typeof window !== "undefined") {
|
|
519
|
-
console.info("error initializing client", e);
|
|
520
|
-
return;
|
|
521
|
-
}
|
|
522
|
-
}),
|
|
523
|
-
[constants.PROVIDER_ID.ALGO_SIGNER]: clients_algosigner.init().catch((e) => {
|
|
524
|
-
if (typeof window !== "undefined") {
|
|
525
|
-
console.info("error initializing client", e);
|
|
526
|
-
return;
|
|
527
|
-
}
|
|
528
|
-
}),
|
|
529
|
-
[constants.PROVIDER_ID.DEFLY]: clients_defly.init().catch((e) => {
|
|
530
|
-
if (typeof window !== "undefined") {
|
|
531
|
-
console.info("error initializing client", e);
|
|
532
|
-
return;
|
|
533
|
-
}
|
|
534
|
-
}),
|
|
535
|
-
[constants.PROVIDER_ID.EXODUS]: clients_exodus.init().catch((e) => {
|
|
536
|
-
if (typeof window !== "undefined") {
|
|
537
|
-
console.info("error initializing client", e);
|
|
538
|
-
return;
|
|
539
|
-
}
|
|
540
|
-
}),
|
|
541
|
-
[constants.PROVIDER_ID.WALLET_CONNECT]: clients_walletconnect.init().catch((e) => {
|
|
542
|
-
if (typeof window !== "undefined") {
|
|
543
|
-
console.info("error initializing client", e);
|
|
544
|
-
return;
|
|
545
|
-
}
|
|
546
|
-
}),
|
|
547
|
-
};
|
|
548
|
-
|
|
549
|
-
const getWalletClient = async (id) => {
|
|
550
|
-
if (!id) {
|
|
551
|
-
throw new Error("No wallet provider id provided");
|
|
552
|
-
}
|
|
553
|
-
const client = await clients[id];
|
|
554
|
-
if (!client) {
|
|
555
|
-
throw new Error(`No wallet client found for provider id: ${id}`);
|
|
556
|
-
}
|
|
557
|
-
return client;
|
|
558
|
-
};
|
|
559
|
-
|
|
560
505
|
function useWallet() {
|
|
561
506
|
const allAccounts = useWalletStore((state) => state.accounts);
|
|
562
507
|
const activeAccount = useWalletStore((state) => state.activeAccount);
|
|
563
508
|
const accounts = react.useMemo(() => allAccounts.filter((account) => account.providerId === activeAccount?.providerId), [allAccounts, activeAccount]);
|
|
564
509
|
const signTransactions = async (transactions) => {
|
|
565
|
-
const walletClient = await getWalletClient(activeAccount?.providerId);
|
|
510
|
+
const walletClient = await utils.getWalletClient(activeAccount?.providerId);
|
|
566
511
|
if (!walletClient || !activeAccount?.address) {
|
|
567
512
|
throw new Error("No wallet found.");
|
|
568
513
|
}
|
|
@@ -570,7 +515,7 @@ function useWallet() {
|
|
|
570
515
|
return signedTransactions;
|
|
571
516
|
};
|
|
572
517
|
const sendTransactions = async (transactions) => {
|
|
573
|
-
const walletClient = await getWalletClient(activeAccount?.providerId);
|
|
518
|
+
const walletClient = await utils.getWalletClient(activeAccount?.providerId);
|
|
574
519
|
const result = await walletClient?.sendRawTransactions(transactions);
|
|
575
520
|
return result;
|
|
576
521
|
};
|
|
@@ -583,7 +528,7 @@ function useWallet() {
|
|
|
583
528
|
const getAccountInfo = async () => {
|
|
584
529
|
if (!activeAccount)
|
|
585
530
|
throw new Error("No selected account.");
|
|
586
|
-
const walletClient = await getWalletClient(activeAccount.providerId);
|
|
531
|
+
const walletClient = await utils.getWalletClient(activeAccount.providerId);
|
|
587
532
|
const accountInfo = await walletClient?.getAccountInfo(activeAccount.address);
|
|
588
533
|
return accountInfo;
|
|
589
534
|
};
|
|
@@ -593,19 +538,19 @@ function useWallet() {
|
|
|
593
538
|
const getAssets = async () => {
|
|
594
539
|
if (!activeAccount)
|
|
595
540
|
throw new Error("No selected account.");
|
|
596
|
-
const walletClient = await getWalletClient(activeAccount.providerId);
|
|
541
|
+
const walletClient = await utils.getWalletClient(activeAccount.providerId);
|
|
597
542
|
return await walletClient?.getAssets(activeAccount.address);
|
|
598
543
|
};
|
|
599
544
|
const groupTransactionsBySender = async (transactions) => {
|
|
600
|
-
const walletClient = await getWalletClient(activeAccount?.providerId);
|
|
545
|
+
const walletClient = await utils.getWalletClient(activeAccount?.providerId);
|
|
601
546
|
return walletClient?.groupTransactionsBySender(transactions);
|
|
602
547
|
};
|
|
603
548
|
const signEncodedTransactions = async (transactions) => {
|
|
604
|
-
const walletClient = await getWalletClient(activeAccount?.providerId);
|
|
549
|
+
const walletClient = await utils.getWalletClient(activeAccount?.providerId);
|
|
605
550
|
return await walletClient?.signEncodedTransactions(transactions);
|
|
606
551
|
};
|
|
607
552
|
const sendRawTransactions = async (transactions) => {
|
|
608
|
-
const walletClient = await getWalletClient(activeAccount?.providerId);
|
|
553
|
+
const walletClient = await utils.getWalletClient(activeAccount?.providerId);
|
|
609
554
|
return await walletClient?.sendRawTransactions(transactions);
|
|
610
555
|
};
|
|
611
556
|
return {
|
|
@@ -687,7 +632,7 @@ function useConnectWallet(options) {
|
|
|
687
632
|
const connect = async (id) => {
|
|
688
633
|
try {
|
|
689
634
|
await disconnectWCSessions(id);
|
|
690
|
-
const walletClient = await getWalletClient(id);
|
|
635
|
+
const walletClient = await utils.getWalletClient(id);
|
|
691
636
|
const walletInfo = await walletClient.connect(() => disconnect(id));
|
|
692
637
|
if (!walletInfo || !walletInfo.accounts.length) {
|
|
693
638
|
throw new Error("Failed to connect " + id);
|
|
@@ -724,7 +669,7 @@ function useConnectWallet(options) {
|
|
|
724
669
|
};
|
|
725
670
|
const reconnect = async (id) => {
|
|
726
671
|
try {
|
|
727
|
-
const walletClient = await getWalletClient(id);
|
|
672
|
+
const walletClient = await utils.getWalletClient(id);
|
|
728
673
|
const walletInfo = await walletClient?.reconnect(() => disconnect(id));
|
|
729
674
|
if (walletInfo && walletInfo.accounts.length) {
|
|
730
675
|
addAccounts(walletInfo.accounts);
|
|
@@ -737,7 +682,7 @@ function useConnectWallet(options) {
|
|
|
737
682
|
};
|
|
738
683
|
const disconnect = async (id) => {
|
|
739
684
|
try {
|
|
740
|
-
const walletClient = await getWalletClient(id);
|
|
685
|
+
const walletClient = await utils.getWalletClient(id);
|
|
741
686
|
walletClient?.disconnect();
|
|
742
687
|
}
|
|
743
688
|
catch (e) {
|