@rango-dev/provider-safepal 0.1.11-next.74 → 0.1.11-next.76
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +3 -2
- package/dist/provider-safepal.cjs.development.js +11 -8
- package/dist/provider-safepal.cjs.development.js.map +1 -1
- package/dist/provider-safepal.cjs.production.min.js +1 -1
- package/dist/provider-safepal.cjs.production.min.js.map +1 -1
- package/dist/provider-safepal.esm.js +10 -7
- package/dist/provider-safepal.esm.js.map +1 -1
- package/dist/signer.d.ts +2 -2
- package/package.json +6 -9
- package/src/index.ts +7 -5
- package/src/signer.ts +11 -12
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import { Network, WalletType, CanSwitchNetwork, Connect, Subscribe, SwitchNetwork,
|
|
1
|
+
import { Network, WalletType, CanSwitchNetwork, Connect, Subscribe, SwitchNetwork, WalletInfo } from '@rango-dev/wallets-shared';
|
|
2
2
|
import { safepal as safepal_instance } from './helpers';
|
|
3
|
+
import { SignerFactory, BlockchainMeta } from 'rango-types';
|
|
3
4
|
export declare const config: {
|
|
4
5
|
type: WalletType;
|
|
5
6
|
defaultNetwork: Network;
|
|
@@ -9,5 +10,5 @@ export declare const connect: Connect;
|
|
|
9
10
|
export declare const subscribe: Subscribe;
|
|
10
11
|
export declare const switchNetwork: SwitchNetwork;
|
|
11
12
|
export declare const canSwitchNetworkTo: CanSwitchNetwork;
|
|
12
|
-
export declare const getSigners: (provider: any) =>
|
|
13
|
+
export declare const getSigners: (provider: any) => SignerFactory;
|
|
13
14
|
export declare const getWalletInfo: (allBlockChains: BlockchainMeta[]) => WalletInfo;
|
|
@@ -3,6 +3,9 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
var walletsShared = require('@rango-dev/wallets-shared');
|
|
6
|
+
var signerEvm = require('@rango-dev/signer-evm');
|
|
7
|
+
var signerSolana = require('@rango-dev/signer-solana');
|
|
8
|
+
var rangoTypes = require('rango-types');
|
|
6
9
|
|
|
7
10
|
function _regeneratorRuntime() {
|
|
8
11
|
_regeneratorRuntime = function () {
|
|
@@ -398,12 +401,12 @@ function _getNonEvmAccounts() {
|
|
|
398
401
|
}
|
|
399
402
|
|
|
400
403
|
function getSigners(provider) {
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
404
|
+
var ethProvider = walletsShared.getNetworkInstance(provider, walletsShared.Network.ETHEREUM);
|
|
405
|
+
var solProvider = walletsShared.getNetworkInstance(provider, walletsShared.Network.SOLANA);
|
|
406
|
+
var signers = new rangoTypes.SignerFactory();
|
|
407
|
+
signers.registerSigner(rangoTypes.TransactionType.EVM, new signerEvm.DefaultEvmSigner(ethProvider));
|
|
408
|
+
signers.registerSigner(rangoTypes.TransactionType.SOLANA, new signerSolana.DefaultSolanaSigner(solProvider));
|
|
409
|
+
return signers;
|
|
407
410
|
}
|
|
408
411
|
|
|
409
412
|
var WALLET = walletsShared.WalletType.SAFEPAL;
|
|
@@ -459,8 +462,8 @@ var switchNetwork = walletsShared.switchNetworkForEvm;
|
|
|
459
462
|
var canSwitchNetworkTo = walletsShared.canSwitchNetworkToEvm;
|
|
460
463
|
var getSigners$1 = getSigners;
|
|
461
464
|
var getWalletInfo = function getWalletInfo(allBlockChains) {
|
|
462
|
-
var evms =
|
|
463
|
-
var solana =
|
|
465
|
+
var evms = rangoTypes.evmBlockchains(allBlockChains);
|
|
466
|
+
var solana = rangoTypes.solanaBlockchain(allBlockChains);
|
|
464
467
|
return {
|
|
465
468
|
name: 'SafePal',
|
|
466
469
|
img: 'https://raw.githubusercontent.com/rango-exchange/rango-types/main/assets/icons/wallets/safepal.png',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider-safepal.cjs.development.js","sources":["../src/helpers.ts","../src/signer.ts","../src/index.ts"],"sourcesContent":["import { Network, ProviderConnectResult } from '@rango-dev/wallets-shared';\n\ntype Provider = Map<Network, any>;\n\nexport function safepal() {\n const instances = new Map();\n const { isSafePal, safepal, safepalProvider } = window;\n\n if (!isSafePal) return null;\n\n if (!!safepal && safepal.isSafePalWallet)\n instances.set(Network.SOLANA, safepal);\n\n if (safepalProvider && safepalProvider)\n instances.set(Network.ETHEREUM, safepalProvider);\n\n if (instances.size === 0) return null;\n\n return instances;\n}\n\nexport async function getNonEvmAccounts(\n instances: Provider\n): Promise<ProviderConnectResult[]> {\n const solanaInstance = instances.get(Network.SOLANA);\n const results: ProviderConnectResult[] = [];\n\n if (!!solanaInstance) {\n const solanaResponse = await solanaInstance.connect();\n\n const solanaAccounts: string = solanaResponse.publicKey.toString();\n\n results.push({\n accounts: [solanaAccounts],\n chainId: Network.SOLANA,\n });\n }\n\n return results;\n}\n","import {
|
|
1
|
+
{"version":3,"file":"provider-safepal.cjs.development.js","sources":["../src/helpers.ts","../src/signer.ts","../src/index.ts"],"sourcesContent":["import { Network, ProviderConnectResult } from '@rango-dev/wallets-shared';\n\ntype Provider = Map<Network, any>;\n\nexport function safepal() {\n const instances = new Map();\n const { isSafePal, safepal, safepalProvider } = window;\n\n if (!isSafePal) return null;\n\n if (!!safepal && safepal.isSafePalWallet)\n instances.set(Network.SOLANA, safepal);\n\n if (safepalProvider && safepalProvider)\n instances.set(Network.ETHEREUM, safepalProvider);\n\n if (instances.size === 0) return null;\n\n return instances;\n}\n\nexport async function getNonEvmAccounts(\n instances: Provider\n): Promise<ProviderConnectResult[]> {\n const solanaInstance = instances.get(Network.SOLANA);\n const results: ProviderConnectResult[] = [];\n\n if (!!solanaInstance) {\n const solanaResponse = await solanaInstance.connect();\n\n const solanaAccounts: string = solanaResponse.publicKey.toString();\n\n results.push({\n accounts: [solanaAccounts],\n chainId: Network.SOLANA,\n });\n }\n\n return results;\n}\n","import { DefaultEvmSigner } from '@rango-dev/signer-evm';\nimport { DefaultSolanaSigner } from '@rango-dev/signer-solana';\nimport { Network, getNetworkInstance } from '@rango-dev/wallets-shared';\nimport { SignerFactory, TransactionType as TxType } from 'rango-types';\n\nexport default function getSigners(provider: any): SignerFactory {\n const ethProvider = getNetworkInstance(provider, Network.ETHEREUM);\n const solProvider = getNetworkInstance(provider, Network.SOLANA);\n const signers = new SignerFactory();\n signers.registerSigner(TxType.EVM, new DefaultEvmSigner(ethProvider));\n signers.registerSigner(TxType.SOLANA, new DefaultSolanaSigner(solProvider));\n return signers;\n}\n","import {\n Network,\n WalletType,\n CanSwitchNetwork,\n Connect,\n ProviderConnectResult,\n Subscribe,\n SwitchNetwork,\n canSwitchNetworkToEvm,\n chooseInstance,\n getEvmAccounts,\n subscribeToEvm,\n switchNetworkForEvm,\n WalletInfo,\n} from '@rango-dev/wallets-shared';\nimport { getNonEvmAccounts, safepal as safepal_instance } from './helpers';\nimport signer from './signer';\nimport {\n SignerFactory,\n BlockchainMeta,\n evmBlockchains,\n solanaBlockchain,\n} from 'rango-types';\n\nconst WALLET = WalletType.SAFEPAL;\n\nexport const config = {\n type: WALLET,\n defaultNetwork: Network.ETHEREUM,\n};\n\nexport const getInstance = safepal_instance;\nexport const connect: Connect = async ({ instance, meta }) => {\n const ethInstance = chooseInstance(instance, meta, Network.ETHEREUM);\n\n let results: ProviderConnectResult[] = [];\n\n if (ethInstance) {\n const evmResult = await getEvmAccounts(ethInstance);\n results.push(evmResult);\n }\n\n const nonEvmResults = await getNonEvmAccounts(instance);\n results = [...results, ...nonEvmResults];\n\n return results;\n};\n\nexport const subscribe: Subscribe = (options) => {\n const ethInstance = chooseInstance(\n options.instance,\n options.meta,\n Network.ETHEREUM\n );\n\n if (ethInstance) {\n subscribeToEvm({ ...options, instance: ethInstance });\n }\n};\n\nexport const switchNetwork: SwitchNetwork = switchNetworkForEvm;\n\nexport const canSwitchNetworkTo: CanSwitchNetwork = canSwitchNetworkToEvm;\n\nexport const getSigners: (provider: any) => SignerFactory = signer;\n\nexport const getWalletInfo: (allBlockChains: BlockchainMeta[]) => WalletInfo = (\n allBlockChains\n) => {\n const evms = evmBlockchains(allBlockChains);\n const solana = solanaBlockchain(allBlockChains);\n return {\n name: 'SafePal',\n img: 'https://raw.githubusercontent.com/rango-exchange/rango-types/main/assets/icons/wallets/safepal.png',\n installLink: {\n CHROME:\n 'https://chrome.google.com/webstore/detail/safepal-extension-wallet/lgmpcpglpngdoalbgeoldeajfclnhafa',\n BRAVE:\n 'https://chrome.google.com/webstore/detail/safepal-extension-wallet/lgmpcpglpngdoalbgeoldeajfclnhafa',\n FIREFOX:\n 'https://addons.mozilla.org/en-US/firefox/addon/safepal-extension-wallet',\n DEFAULT: 'https://www.safepal.com/download',\n },\n color: '#4A21EF',\n supportedChains: [...evms, ...solana],\n };\n};\n"],"names":["safepal","instances","Map","_window","window","isSafePal","safepalProvider","isSafePalWallet","set","Network","SOLANA","ETHEREUM","size","getNonEvmAccounts","_x","_getNonEvmAccounts","apply","arguments","_asyncToGenerator","_regeneratorRuntime","mark","_callee","solanaInstance","results","solanaResponse","solanaAccounts","wrap","_callee$","_context","prev","next","get","connect","sent","publicKey","toString","push","accounts","chainId","abrupt","stop","getSigners","provider","ethProvider","getNetworkInstance","solProvider","signers","SignerFactory","registerSigner","TxType","EVM","DefaultEvmSigner","DefaultSolanaSigner","WALLET","WalletType","SAFEPAL","config","type","defaultNetwork","getInstance","safepal_instance","_ref2","_ref","instance","meta","ethInstance","evmResult","nonEvmResults","chooseInstance","getEvmAccounts","concat","subscribe","options","subscribeToEvm","_extends","switchNetwork","switchNetworkForEvm","canSwitchNetworkTo","canSwitchNetworkToEvm","signer","getWalletInfo","allBlockChains","evms","evmBlockchains","solana","solanaBlockchain","name","img","installLink","CHROME","BRAVE","FIREFOX","DEFAULT","color","supportedChains"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var t=require("@rango-dev/wallets-shared");function
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var t=require("@rango-dev/wallets-shared"),e=require("@rango-dev/signer-evm"),r=require("@rango-dev/signer-solana"),n=require("rango-types");function o(){o=function(){return t};var t={},e=Object.prototype,r=e.hasOwnProperty,n=Object.defineProperty||function(t,e,r){t[e]=r.value},a="function"==typeof Symbol?Symbol:{},i=a.iterator||"@@iterator",c=a.asyncIterator||"@@asyncIterator",u=a.toStringTag||"@@toStringTag";function s(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{s({},"")}catch(t){s=function(t,e,r){return t[e]=r}}function l(t,e,r,o){var a=Object.create((e&&e.prototype instanceof p?e:p).prototype),i=new S(o||[]);return n(a,"_invoke",{value:b(t,r,i)}),a}function f(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}t.wrap=l;var h={};function p(){}function v(){}function d(){}var g={};s(g,i,(function(){return this}));var y=Object.getPrototypeOf,w=y&&y(y(O([])));w&&w!==e&&r.call(w,i)&&(g=w);var m=d.prototype=p.prototype=Object.create(g);function E(t){["next","throw","return"].forEach((function(e){s(t,e,(function(t){return this._invoke(e,t)}))}))}function x(t,e){var o;n(this,"_invoke",{value:function(n,a){function i(){return new e((function(o,i){!function n(o,a,i,c){var u=f(t[o],t,a);if("throw"!==u.type){var s=u.arg,l=s.value;return l&&"object"==typeof l&&r.call(l,"__await")?e.resolve(l.__await).then((function(t){n("next",t,i,c)}),(function(t){n("throw",t,i,c)})):e.resolve(l).then((function(t){s.value=t,i(s)}),(function(t){return n("throw",t,i,c)}))}c(u.arg)}(n,a,o,i)}))}return o=o?o.then(i,i):i()}})}function b(t,e,r){var n="suspendedStart";return function(o,a){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw a;return{value:void 0,done:!0}}for(r.method=o,r.arg=a;;){var i=r.delegate;if(i){var c=L(i,r);if(c){if(c===h)continue;return c}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var u=f(t,e,r);if("normal"===u.type){if(n=r.done?"completed":"suspendedYield",u.arg===h)continue;return{value:u.arg,done:r.done}}"throw"===u.type&&(n="completed",r.method="throw",r.arg=u.arg)}}}function L(t,e){var r=e.method,n=t.iterator[r];if(void 0===n)return e.delegate=null,"throw"===r&&t.iterator.return&&(e.method="return",e.arg=void 0,L(t,e),"throw"===e.method)||"return"!==r&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+r+"' method")),h;var o=f(n,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,h;var a=o.arg;return a?a.done?(e[t.resultName]=a.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,h):a:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,h)}function k(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function N(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function S(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(k,this),this.reset(!0)}function O(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,o=function e(){for(;++n<t.length;)if(r.call(t,n))return e.value=t[n],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:j}}function j(){return{value:void 0,done:!0}}return v.prototype=d,n(m,"constructor",{value:d,configurable:!0}),n(d,"constructor",{value:v,configurable:!0}),v.displayName=s(d,u,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===v||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,d):(t.__proto__=d,s(t,u,"GeneratorFunction")),t.prototype=Object.create(m),t},t.awrap=function(t){return{__await:t}},E(x.prototype),s(x.prototype,c,(function(){return this})),t.AsyncIterator=x,t.async=function(e,r,n,o,a){void 0===a&&(a=Promise);var i=new x(l(e,r,n,o),a);return t.isGeneratorFunction(r)?i:i.next().then((function(t){return t.done?t.value:i.next()}))},E(m),s(m,u,"Generator"),s(m,i,(function(){return this})),s(m,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),r=[];for(var n in e)r.push(n);return r.reverse(),function t(){for(;r.length;){var n=r.pop();if(n in e)return t.value=n,t.done=!1,t}return t.done=!0,t}},t.values=O,S.prototype={constructor:S,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(N),!t)for(var e in this)"t"===e.charAt(0)&&r.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function n(r,n){return i.type="throw",i.arg=t,e.next=r,n&&(e.method="next",e.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var a=this.tryEntries[o],i=a.completion;if("root"===a.tryLoc)return n("end");if(a.tryLoc<=this.prev){var c=r.call(a,"catchLoc"),u=r.call(a,"finallyLoc");if(c&&u){if(this.prev<a.catchLoc)return n(a.catchLoc,!0);if(this.prev<a.finallyLoc)return n(a.finallyLoc)}else if(c){if(this.prev<a.catchLoc)return n(a.catchLoc,!0)}else{if(!u)throw new Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return n(a.finallyLoc)}}}},abrupt:function(t,e){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var a=o;break}}a&&("break"===t||"continue"===t)&&a.tryLoc<=e&&e<=a.finallyLoc&&(a=null);var i=a?a.completion:{};return i.type=t,i.arg=e,a?(this.method="next",this.next=a.finallyLoc,h):this.complete(i)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),h},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),N(r),h}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;N(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:O(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),h}},t}function a(t,e,r,n,o,a,i){try{var c=t[a](i),u=c.value}catch(t){return void r(t)}c.done?e(u):Promise.resolve(u).then(n,o)}function i(t){return function(){var e=this,r=arguments;return new Promise((function(n,o){var i=t.apply(e,r);function c(t){a(i,n,o,c,u,"next",t)}function u(t){a(i,n,o,c,u,"throw",t)}c(void 0)}))}}function c(){return(c=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(t[n]=r[n])}return t}).apply(this,arguments)}function u(t){return s.apply(this,arguments)}function s(){return(s=i(o().mark((function e(r){var n,a,i;return o().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=r.get(t.Network.SOLANA),a=[],!n){e.next=8;break}return e.next=5,n.connect();case 5:i=e.sent.publicKey.toString(),a.push({accounts:[i],chainId:t.Network.SOLANA});case 8:return e.abrupt("return",a);case 9:case"end":return e.stop()}}),e)})))).apply(this,arguments)}var l={type:t.WalletType.SAFEPAL,defaultNetwork:t.Network.ETHEREUM},f=function(){var e=i(o().mark((function e(r){var n,a,i;return o().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(a=t.chooseInstance(n=r.instance,r.meta,t.Network.ETHEREUM),i=[],!a){e.next=8;break}return e.next=6,t.getEvmAccounts(a);case 6:i.push(e.sent);case 8:return e.next=10,u(n);case 10:return i=[].concat(i,e.sent),e.abrupt("return",i);case 13:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),h=t.switchNetworkForEvm;exports.canSwitchNetworkTo=t.canSwitchNetworkToEvm,exports.config=l,exports.connect=f,exports.getInstance=function(){var e=new Map,r=window,n=r.safepal,o=r.safepalProvider;return r.isSafePal?(n&&n.isSafePalWallet&&e.set(t.Network.SOLANA,n),o&&o&&e.set(t.Network.ETHEREUM,o),0===e.size?null:e):null},exports.getSigners=function(o){var a=t.getNetworkInstance(o,t.Network.ETHEREUM),i=t.getNetworkInstance(o,t.Network.SOLANA),c=new n.SignerFactory;return c.registerSigner(n.TransactionType.EVM,new e.DefaultEvmSigner(a)),c.registerSigner(n.TransactionType.SOLANA,new r.DefaultSolanaSigner(i)),c},exports.getWalletInfo=function(t){var e=n.evmBlockchains(t),r=n.solanaBlockchain(t);return{name:"SafePal",img:"https://raw.githubusercontent.com/rango-exchange/rango-types/main/assets/icons/wallets/safepal.png",installLink:{CHROME:"https://chrome.google.com/webstore/detail/safepal-extension-wallet/lgmpcpglpngdoalbgeoldeajfclnhafa",BRAVE:"https://chrome.google.com/webstore/detail/safepal-extension-wallet/lgmpcpglpngdoalbgeoldeajfclnhafa",FIREFOX:"https://addons.mozilla.org/en-US/firefox/addon/safepal-extension-wallet",DEFAULT:"https://www.safepal.com/download"},color:"#4A21EF",supportedChains:[].concat(e,r)}},exports.subscribe=function(e){var r=t.chooseInstance(e.instance,e.meta,t.Network.ETHEREUM);r&&t.subscribeToEvm(c({},e,{instance:r}))},exports.switchNetwork=h;
|
|
2
2
|
//# sourceMappingURL=provider-safepal.cjs.production.min.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider-safepal.cjs.production.min.js","sources":["../src/helpers.ts","../src/index.ts","../src/signer.ts"],"sourcesContent":["import { Network, ProviderConnectResult } from '@rango-dev/wallets-shared';\n\ntype Provider = Map<Network, any>;\n\nexport function safepal() {\n const instances = new Map();\n const { isSafePal, safepal, safepalProvider } = window;\n\n if (!isSafePal) return null;\n\n if (!!safepal && safepal.isSafePalWallet)\n instances.set(Network.SOLANA, safepal);\n\n if (safepalProvider && safepalProvider)\n instances.set(Network.ETHEREUM, safepalProvider);\n\n if (instances.size === 0) return null;\n\n return instances;\n}\n\nexport async function getNonEvmAccounts(\n instances: Provider\n): Promise<ProviderConnectResult[]> {\n const solanaInstance = instances.get(Network.SOLANA);\n const results: ProviderConnectResult[] = [];\n\n if (!!solanaInstance) {\n const solanaResponse = await solanaInstance.connect();\n\n const solanaAccounts: string = solanaResponse.publicKey.toString();\n\n results.push({\n accounts: [solanaAccounts],\n chainId: Network.SOLANA,\n });\n }\n\n return results;\n}\n","import {\n Network,\n WalletType,\n CanSwitchNetwork,\n Connect,\n ProviderConnectResult,\n Subscribe,\n SwitchNetwork,\n
|
|
1
|
+
{"version":3,"file":"provider-safepal.cjs.production.min.js","sources":["../src/helpers.ts","../src/index.ts","../src/signer.ts"],"sourcesContent":["import { Network, ProviderConnectResult } from '@rango-dev/wallets-shared';\n\ntype Provider = Map<Network, any>;\n\nexport function safepal() {\n const instances = new Map();\n const { isSafePal, safepal, safepalProvider } = window;\n\n if (!isSafePal) return null;\n\n if (!!safepal && safepal.isSafePalWallet)\n instances.set(Network.SOLANA, safepal);\n\n if (safepalProvider && safepalProvider)\n instances.set(Network.ETHEREUM, safepalProvider);\n\n if (instances.size === 0) return null;\n\n return instances;\n}\n\nexport async function getNonEvmAccounts(\n instances: Provider\n): Promise<ProviderConnectResult[]> {\n const solanaInstance = instances.get(Network.SOLANA);\n const results: ProviderConnectResult[] = [];\n\n if (!!solanaInstance) {\n const solanaResponse = await solanaInstance.connect();\n\n const solanaAccounts: string = solanaResponse.publicKey.toString();\n\n results.push({\n accounts: [solanaAccounts],\n chainId: Network.SOLANA,\n });\n }\n\n return results;\n}\n","import {\n Network,\n WalletType,\n CanSwitchNetwork,\n Connect,\n ProviderConnectResult,\n Subscribe,\n SwitchNetwork,\n canSwitchNetworkToEvm,\n chooseInstance,\n getEvmAccounts,\n subscribeToEvm,\n switchNetworkForEvm,\n WalletInfo,\n} from '@rango-dev/wallets-shared';\nimport { getNonEvmAccounts, safepal as safepal_instance } from './helpers';\nimport signer from './signer';\nimport {\n SignerFactory,\n BlockchainMeta,\n evmBlockchains,\n solanaBlockchain,\n} from 'rango-types';\n\nconst WALLET = WalletType.SAFEPAL;\n\nexport const config = {\n type: WALLET,\n defaultNetwork: Network.ETHEREUM,\n};\n\nexport const getInstance = safepal_instance;\nexport const connect: Connect = async ({ instance, meta }) => {\n const ethInstance = chooseInstance(instance, meta, Network.ETHEREUM);\n\n let results: ProviderConnectResult[] = [];\n\n if (ethInstance) {\n const evmResult = await getEvmAccounts(ethInstance);\n results.push(evmResult);\n }\n\n const nonEvmResults = await getNonEvmAccounts(instance);\n results = [...results, ...nonEvmResults];\n\n return results;\n};\n\nexport const subscribe: Subscribe = (options) => {\n const ethInstance = chooseInstance(\n options.instance,\n options.meta,\n Network.ETHEREUM\n );\n\n if (ethInstance) {\n subscribeToEvm({ ...options, instance: ethInstance });\n }\n};\n\nexport const switchNetwork: SwitchNetwork = switchNetworkForEvm;\n\nexport const canSwitchNetworkTo: CanSwitchNetwork = canSwitchNetworkToEvm;\n\nexport const getSigners: (provider: any) => SignerFactory = signer;\n\nexport const getWalletInfo: (allBlockChains: BlockchainMeta[]) => WalletInfo = (\n allBlockChains\n) => {\n const evms = evmBlockchains(allBlockChains);\n const solana = solanaBlockchain(allBlockChains);\n return {\n name: 'SafePal',\n img: 'https://raw.githubusercontent.com/rango-exchange/rango-types/main/assets/icons/wallets/safepal.png',\n installLink: {\n CHROME:\n 'https://chrome.google.com/webstore/detail/safepal-extension-wallet/lgmpcpglpngdoalbgeoldeajfclnhafa',\n BRAVE:\n 'https://chrome.google.com/webstore/detail/safepal-extension-wallet/lgmpcpglpngdoalbgeoldeajfclnhafa',\n FIREFOX:\n 'https://addons.mozilla.org/en-US/firefox/addon/safepal-extension-wallet',\n DEFAULT: 'https://www.safepal.com/download',\n },\n color: '#4A21EF',\n supportedChains: [...evms, ...solana],\n };\n};\n","import { DefaultEvmSigner } from '@rango-dev/signer-evm';\nimport { DefaultSolanaSigner } from '@rango-dev/signer-solana';\nimport { Network, getNetworkInstance } from '@rango-dev/wallets-shared';\nimport { SignerFactory, TransactionType as TxType } from 'rango-types';\n\nexport default function getSigners(provider: any): SignerFactory {\n const ethProvider = getNetworkInstance(provider, Network.ETHEREUM);\n const solProvider = getNetworkInstance(provider, Network.SOLANA);\n const signers = new SignerFactory();\n signers.registerSigner(TxType.EVM, new DefaultEvmSigner(ethProvider));\n signers.registerSigner(TxType.SOLANA, new DefaultSolanaSigner(solProvider));\n return signers;\n}\n"],"names":["getNonEvmAccounts","_x","_getNonEvmAccounts","apply","arguments","_asyncToGenerator","_regeneratorRuntime","mark","_callee","instances","solanaInstance","results","solanaAccounts","wrap","_context","prev","next","get","Network","SOLANA","connect","sent","publicKey","toString","push","accounts","chainId","abrupt","stop","config","type","WalletType","SAFEPAL","defaultNetwork","ETHEREUM","_ref2","_ref","instance","ethInstance","chooseInstance","meta","getEvmAccounts","concat","switchNetwork","switchNetworkForEvm","canSwitchNetworkToEvm","Map","_window","window","safepal","safepalProvider","isSafePal","isSafePalWallet","set","size","provider","ethProvider","getNetworkInstance","solProvider","signers","SignerFactory","registerSigner","TxType","EVM","DefaultEvmSigner","DefaultSolanaSigner","allBlockChains","evms","evmBlockchains","solana","solanaBlockchain","name","img","installLink","CHROME","BRAVE","FIREFOX","DEFAULT","color","supportedChains","options","subscribeToEvm","_extends"],"mappings":"gsOAqBsBA,EAAiBC,GAAA,OAAAC,EAAAC,WAAAC,WAkBtC,SAAAF,IAAA,OAAAA,EAAAG,EAAAC,IAAAC,MAlBM,SAAAC,EACLC,GAAmB,IAAAC,EAAAC,EAAAC,EAAA,OAAAN,IAAAO,eAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,OAGwB,GADrCN,EAAiBD,EAAUQ,IAAIC,UAAQC,QACvCR,EAAmC,IAEnCD,GAAcI,EAAAE,OAAA,MAAA,OAAAF,EAAAE,OACWN,EAAeU,UAAS,OAE/CR,EAFcE,EAAAO,KAE0BC,UAAUC,WAExDZ,EAAQa,KAAK,CACXC,SAAU,CAACb,GACXc,QAASR,UAAQC,SAChB,OAAA,OAAAL,EAAAa,gBAGEhB,GAAO,OAAA,UAAA,OAAAG,EAAAc,UAAApB,QACfL,WAAAC,WCfD,IAEayB,EAAS,CACpBC,KAHaC,aAAWC,QAIxBC,eAAgBf,UAAQgB,UAIbd,aAAO,IAAAe,EAAA9B,EAAAC,IAAAC,MAAY,SAAAC,EAAA4B,GAAA,IAAAC,EAAAC,EAAA3B,EAAA,OAAAL,IAAAO,eAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,OAGW,GAFnCsB,EAAcC,iBADmBF,EAAQD,EAARC,SAAcD,EAAJI,KACEtB,UAAQgB,UAEvDvB,EAAmC,IAEnC2B,GAAWxB,EAAAE,OAAA,MAAA,OAAAF,EAAAE,OACWyB,iBAAeH,GAAY,OACnD3B,EAAQa,KADOV,EAAAO,MACS,OAAA,OAAAP,EAAAE,QAGEhB,EAAkBqC,GAAS,QACd,OAAzC1B,KAAO+B,OAAO/B,EADKG,EAAAO,MACsBP,EAAAa,gBAElChB,GAAO,QAAA,UAAA,OAAAG,EAAAc,UAAApB,OACf,gBAdmBP,GAAA,OAAAkC,EAAAhC,WAAAC,eA4BPuC,EAA+BC,iDAEQC,0FDzDlD,IAAMpC,EAAY,IAAIqC,IACtBC,EAAgDC,OAA7BC,EAAOF,EAAPE,QAASC,EAAeH,EAAfG,gBAE5B,OAFiBH,EAATI,WAIFF,GAAWA,EAAQG,iBACvB3C,EAAU4C,IAAInC,UAAQC,OAAQ8B,GAE5BC,GAAmBA,GACrBzC,EAAU4C,IAAInC,UAAQgB,SAAUgB,GAEX,IAAnBzC,EAAU6C,KAAmB,KAE1B7C,GAVgB,kCEHU8C,GACjC,IAAMC,EAAcC,qBAAmBF,EAAUrC,UAAQgB,UACnDwB,EAAcD,qBAAmBF,EAAUrC,UAAQC,QACnDwC,EAAU,IAAIC,gBAGpB,OAFAD,EAAQE,eAAeC,kBAAOC,IAAK,IAAIC,mBAAiBR,IACxDG,EAAQE,eAAeC,kBAAO3C,OAAQ,IAAI8C,sBAAoBP,IACvDC,yBDuDsE,SAC7EO,GAEA,IAAMC,EAAOC,iBAAeF,GACtBG,EAASC,mBAAiBJ,GAChC,MAAO,CACLK,KAAM,UACNC,IAAK,qGACLC,YAAa,CACXC,OACE,sGACFC,MACE,sGACFC,QACE,0EACFC,QAAS,oCAEXC,MAAO,UACPC,mBAAerC,OAAMyB,EAASE,uBApCE,SAACW,GACnC,IAAM1C,EAAcC,iBAClByC,EAAQ3C,SACR2C,EAAQxC,KACRtB,UAAQgB,UAGNI,GACF2C,iBAAcC,KAAMF,GAAS3C,SAAUC"}
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
import { Network,
|
|
1
|
+
import { Network, getNetworkInstance, chooseInstance, subscribeToEvm, switchNetworkForEvm, canSwitchNetworkToEvm, WalletType, getEvmAccounts } from '@rango-dev/wallets-shared';
|
|
2
|
+
import { DefaultEvmSigner } from '@rango-dev/signer-evm';
|
|
3
|
+
import { DefaultSolanaSigner } from '@rango-dev/signer-solana';
|
|
4
|
+
import { SignerFactory, TransactionType, evmBlockchains, solanaBlockchain } from 'rango-types';
|
|
2
5
|
|
|
3
6
|
function _regeneratorRuntime() {
|
|
4
7
|
_regeneratorRuntime = function () {
|
|
@@ -394,12 +397,12 @@ function _getNonEvmAccounts() {
|
|
|
394
397
|
}
|
|
395
398
|
|
|
396
399
|
function getSigners(provider) {
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
400
|
+
var ethProvider = getNetworkInstance(provider, Network.ETHEREUM);
|
|
401
|
+
var solProvider = getNetworkInstance(provider, Network.SOLANA);
|
|
402
|
+
var signers = new SignerFactory();
|
|
403
|
+
signers.registerSigner(TransactionType.EVM, new DefaultEvmSigner(ethProvider));
|
|
404
|
+
signers.registerSigner(TransactionType.SOLANA, new DefaultSolanaSigner(solProvider));
|
|
405
|
+
return signers;
|
|
403
406
|
}
|
|
404
407
|
|
|
405
408
|
var WALLET = WalletType.SAFEPAL;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider-safepal.esm.js","sources":["../src/helpers.ts","../src/signer.ts","../src/index.ts"],"sourcesContent":["import { Network, ProviderConnectResult } from '@rango-dev/wallets-shared';\n\ntype Provider = Map<Network, any>;\n\nexport function safepal() {\n const instances = new Map();\n const { isSafePal, safepal, safepalProvider } = window;\n\n if (!isSafePal) return null;\n\n if (!!safepal && safepal.isSafePalWallet)\n instances.set(Network.SOLANA, safepal);\n\n if (safepalProvider && safepalProvider)\n instances.set(Network.ETHEREUM, safepalProvider);\n\n if (instances.size === 0) return null;\n\n return instances;\n}\n\nexport async function getNonEvmAccounts(\n instances: Provider\n): Promise<ProviderConnectResult[]> {\n const solanaInstance = instances.get(Network.SOLANA);\n const results: ProviderConnectResult[] = [];\n\n if (!!solanaInstance) {\n const solanaResponse = await solanaInstance.connect();\n\n const solanaAccounts: string = solanaResponse.publicKey.toString();\n\n results.push({\n accounts: [solanaAccounts],\n chainId: Network.SOLANA,\n });\n }\n\n return results;\n}\n","import {
|
|
1
|
+
{"version":3,"file":"provider-safepal.esm.js","sources":["../src/helpers.ts","../src/signer.ts","../src/index.ts"],"sourcesContent":["import { Network, ProviderConnectResult } from '@rango-dev/wallets-shared';\n\ntype Provider = Map<Network, any>;\n\nexport function safepal() {\n const instances = new Map();\n const { isSafePal, safepal, safepalProvider } = window;\n\n if (!isSafePal) return null;\n\n if (!!safepal && safepal.isSafePalWallet)\n instances.set(Network.SOLANA, safepal);\n\n if (safepalProvider && safepalProvider)\n instances.set(Network.ETHEREUM, safepalProvider);\n\n if (instances.size === 0) return null;\n\n return instances;\n}\n\nexport async function getNonEvmAccounts(\n instances: Provider\n): Promise<ProviderConnectResult[]> {\n const solanaInstance = instances.get(Network.SOLANA);\n const results: ProviderConnectResult[] = [];\n\n if (!!solanaInstance) {\n const solanaResponse = await solanaInstance.connect();\n\n const solanaAccounts: string = solanaResponse.publicKey.toString();\n\n results.push({\n accounts: [solanaAccounts],\n chainId: Network.SOLANA,\n });\n }\n\n return results;\n}\n","import { DefaultEvmSigner } from '@rango-dev/signer-evm';\nimport { DefaultSolanaSigner } from '@rango-dev/signer-solana';\nimport { Network, getNetworkInstance } from '@rango-dev/wallets-shared';\nimport { SignerFactory, TransactionType as TxType } from 'rango-types';\n\nexport default function getSigners(provider: any): SignerFactory {\n const ethProvider = getNetworkInstance(provider, Network.ETHEREUM);\n const solProvider = getNetworkInstance(provider, Network.SOLANA);\n const signers = new SignerFactory();\n signers.registerSigner(TxType.EVM, new DefaultEvmSigner(ethProvider));\n signers.registerSigner(TxType.SOLANA, new DefaultSolanaSigner(solProvider));\n return signers;\n}\n","import {\n Network,\n WalletType,\n CanSwitchNetwork,\n Connect,\n ProviderConnectResult,\n Subscribe,\n SwitchNetwork,\n canSwitchNetworkToEvm,\n chooseInstance,\n getEvmAccounts,\n subscribeToEvm,\n switchNetworkForEvm,\n WalletInfo,\n} from '@rango-dev/wallets-shared';\nimport { getNonEvmAccounts, safepal as safepal_instance } from './helpers';\nimport signer from './signer';\nimport {\n SignerFactory,\n BlockchainMeta,\n evmBlockchains,\n solanaBlockchain,\n} from 'rango-types';\n\nconst WALLET = WalletType.SAFEPAL;\n\nexport const config = {\n type: WALLET,\n defaultNetwork: Network.ETHEREUM,\n};\n\nexport const getInstance = safepal_instance;\nexport const connect: Connect = async ({ instance, meta }) => {\n const ethInstance = chooseInstance(instance, meta, Network.ETHEREUM);\n\n let results: ProviderConnectResult[] = [];\n\n if (ethInstance) {\n const evmResult = await getEvmAccounts(ethInstance);\n results.push(evmResult);\n }\n\n const nonEvmResults = await getNonEvmAccounts(instance);\n results = [...results, ...nonEvmResults];\n\n return results;\n};\n\nexport const subscribe: Subscribe = (options) => {\n const ethInstance = chooseInstance(\n options.instance,\n options.meta,\n Network.ETHEREUM\n );\n\n if (ethInstance) {\n subscribeToEvm({ ...options, instance: ethInstance });\n }\n};\n\nexport const switchNetwork: SwitchNetwork = switchNetworkForEvm;\n\nexport const canSwitchNetworkTo: CanSwitchNetwork = canSwitchNetworkToEvm;\n\nexport const getSigners: (provider: any) => SignerFactory = signer;\n\nexport const getWalletInfo: (allBlockChains: BlockchainMeta[]) => WalletInfo = (\n allBlockChains\n) => {\n const evms = evmBlockchains(allBlockChains);\n const solana = solanaBlockchain(allBlockChains);\n return {\n name: 'SafePal',\n img: 'https://raw.githubusercontent.com/rango-exchange/rango-types/main/assets/icons/wallets/safepal.png',\n installLink: {\n CHROME:\n 'https://chrome.google.com/webstore/detail/safepal-extension-wallet/lgmpcpglpngdoalbgeoldeajfclnhafa',\n BRAVE:\n 'https://chrome.google.com/webstore/detail/safepal-extension-wallet/lgmpcpglpngdoalbgeoldeajfclnhafa',\n FIREFOX:\n 'https://addons.mozilla.org/en-US/firefox/addon/safepal-extension-wallet',\n DEFAULT: 'https://www.safepal.com/download',\n },\n color: '#4A21EF',\n supportedChains: [...evms, ...solana],\n };\n};\n"],"names":["safepal","instances","Map","_window","window","isSafePal","safepalProvider","isSafePalWallet","set","Network","SOLANA","ETHEREUM","size","getNonEvmAccounts","_x","_getNonEvmAccounts","apply","arguments","_asyncToGenerator","_regeneratorRuntime","mark","_callee","solanaInstance","results","solanaResponse","solanaAccounts","wrap","_callee$","_context","prev","next","get","connect","sent","publicKey","toString","push","accounts","chainId","abrupt","stop","getSigners","provider","ethProvider","getNetworkInstance","solProvider","signers","SignerFactory","registerSigner","TxType","EVM","DefaultEvmSigner","DefaultSolanaSigner","WALLET","WalletType","SAFEPAL","config","type","defaultNetwork","getInstance","safepal_instance","_ref2","_ref","instance","meta","ethInstance","evmResult","nonEvmResults","chooseInstance","getEvmAccounts","concat","subscribe","options","subscribeToEvm","_extends","switchNetwork","switchNetworkForEvm","canSwitchNetworkTo","canSwitchNetworkToEvm","signer","getWalletInfo","allBlockChains","evms","evmBlockchains","solana","solanaBlockchain","name","img","installLink","CHROME","BRAVE","FIREFOX","DEFAULT","color","supportedChains"],"mappings":"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"}
|
package/dist/signer.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export default function getSigners(provider: any):
|
|
1
|
+
import { SignerFactory } from 'rango-types';
|
|
2
|
+
export default function getSigners(provider: any): SignerFactory;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rango-dev/provider-safepal",
|
|
3
|
-
"version": "0.1.11-next.
|
|
3
|
+
"version": "0.1.11-next.76",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"module": "dist/provider-safepal.esm.js",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -9,20 +9,14 @@
|
|
|
9
9
|
"dist",
|
|
10
10
|
"src"
|
|
11
11
|
],
|
|
12
|
-
"engines": {
|
|
13
|
-
"node": ">=10"
|
|
14
|
-
},
|
|
15
12
|
"scripts": {
|
|
16
13
|
"start": "tsdx watch",
|
|
17
|
-
"build": "tsdx build",
|
|
14
|
+
"build": "tsdx build --tsconfig ./tsconfig.json",
|
|
18
15
|
"test": "tsdx test --passWithNoTests",
|
|
19
16
|
"lint": "tsdx lint",
|
|
20
17
|
"size": "size-limit",
|
|
21
18
|
"analyze": "size-limit --why"
|
|
22
19
|
},
|
|
23
|
-
"peerDependencies": {
|
|
24
|
-
"react": ">=16"
|
|
25
|
-
},
|
|
26
20
|
"husky": {
|
|
27
21
|
"hooks": {
|
|
28
22
|
"pre-commit": "tsdx lint"
|
|
@@ -45,7 +39,10 @@
|
|
|
45
39
|
}
|
|
46
40
|
],
|
|
47
41
|
"dependencies": {
|
|
48
|
-
"@rango-dev/
|
|
42
|
+
"@rango-dev/signer-evm": "^0.1.11-next.76",
|
|
43
|
+
"@rango-dev/signer-solana": "^0.1.11-next.76",
|
|
44
|
+
"@rango-dev/wallets-shared": "^0.1.11-next.73",
|
|
45
|
+
"rango-types": "^0.1.21"
|
|
49
46
|
},
|
|
50
47
|
"publishConfig": {
|
|
51
48
|
"access": "public"
|
package/src/index.ts
CHANGED
|
@@ -6,19 +6,21 @@ import {
|
|
|
6
6
|
ProviderConnectResult,
|
|
7
7
|
Subscribe,
|
|
8
8
|
SwitchNetwork,
|
|
9
|
-
WalletSigners,
|
|
10
9
|
canSwitchNetworkToEvm,
|
|
11
10
|
chooseInstance,
|
|
12
11
|
getEvmAccounts,
|
|
13
12
|
subscribeToEvm,
|
|
14
13
|
switchNetworkForEvm,
|
|
15
|
-
BlockchainMeta,
|
|
16
14
|
WalletInfo,
|
|
17
|
-
evmBlockchains,
|
|
18
|
-
solanaBlockchain,
|
|
19
15
|
} from '@rango-dev/wallets-shared';
|
|
20
16
|
import { getNonEvmAccounts, safepal as safepal_instance } from './helpers';
|
|
21
17
|
import signer from './signer';
|
|
18
|
+
import {
|
|
19
|
+
SignerFactory,
|
|
20
|
+
BlockchainMeta,
|
|
21
|
+
evmBlockchains,
|
|
22
|
+
solanaBlockchain,
|
|
23
|
+
} from 'rango-types';
|
|
22
24
|
|
|
23
25
|
const WALLET = WalletType.SAFEPAL;
|
|
24
26
|
|
|
@@ -60,7 +62,7 @@ export const switchNetwork: SwitchNetwork = switchNetworkForEvm;
|
|
|
60
62
|
|
|
61
63
|
export const canSwitchNetworkTo: CanSwitchNetwork = canSwitchNetworkToEvm;
|
|
62
64
|
|
|
63
|
-
export const getSigners: (provider: any) =>
|
|
65
|
+
export const getSigners: (provider: any) => SignerFactory = signer;
|
|
64
66
|
|
|
65
67
|
export const getWalletInfo: (allBlockChains: BlockchainMeta[]) => WalletInfo = (
|
|
66
68
|
allBlockChains
|
package/src/signer.ts
CHANGED
|
@@ -1,14 +1,13 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
} from '@rango-dev/wallets-shared';
|
|
1
|
+
import { DefaultEvmSigner } from '@rango-dev/signer-evm';
|
|
2
|
+
import { DefaultSolanaSigner } from '@rango-dev/signer-solana';
|
|
3
|
+
import { Network, getNetworkInstance } from '@rango-dev/wallets-shared';
|
|
4
|
+
import { SignerFactory, TransactionType as TxType } from 'rango-types';
|
|
6
5
|
|
|
7
|
-
export default function getSigners(provider: any):
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
6
|
+
export default function getSigners(provider: any): SignerFactory {
|
|
7
|
+
const ethProvider = getNetworkInstance(provider, Network.ETHEREUM);
|
|
8
|
+
const solProvider = getNetworkInstance(provider, Network.SOLANA);
|
|
9
|
+
const signers = new SignerFactory();
|
|
10
|
+
signers.registerSigner(TxType.EVM, new DefaultEvmSigner(ethProvider));
|
|
11
|
+
signers.registerSigner(TxType.SOLANA, new DefaultSolanaSigner(solProvider));
|
|
12
|
+
return signers;
|
|
14
13
|
}
|