@rango-dev/signer-sui 0.10.1-next.0 → 0.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
- var d=Object.defineProperty;var a=(t,r)=>d(t,"name",{value:r,configurable:!0});import{Transaction as c}from"@mysten/sui/transactions";import{SUI_MAINNET_CHAIN as u}from"@mysten/wallet-standard";import{SignerError as p}from"rango-types";var e=class{static{a(this,"DefaultSuiSigner")}provider;constructor(r){this.provider=r}async signMessage(){throw p.UnimplementedError("signMessage")}async signAndSendTx(r){let n=c.from(r.unsignedPtbBase64),i=n.getData().sender;if(!i)throw new Error("Your transaction should includes a Sender.");let s=this.provider.accounts.find(o=>o.address===i);if(!s)throw new Error("Your current address on wallet is not matched with what has been set in transaction.");return{hash:(await this.provider.features["sui:signAndExecuteTransaction"].signAndExecuteTransaction({account:s,transaction:n,chain:u})).digest}}};export{e as DefaultSuiSigner};
1
+ var c=Object.defineProperty;var o=(n,r)=>c(n,"name",{value:r,configurable:!0});import{Transaction as u}from"@mysten/sui/transactions";import{SUI_MAINNET_CHAIN as p}from"@mysten/wallet-standard";import{SignerError as d,SignerErrorCode as g}from"rango-types";var t=class{static{o(this,"DefaultSuiSigner")}provider;constructor(r){this.provider=r}async signMessage(){throw d.UnimplementedError("signMessage")}async signAndSendTx(r){let i=u.from(r.unsignedPtbBase64),s=i.getData().sender;if(!s)throw new Error("Your transaction should includes a Sender.");let a=this.provider.accounts.find(e=>e.address===s);if(!a)throw new Error("Your current address on wallet is not matched with what has been set in transaction.");try{return{hash:(await this.provider.features["sui:signAndExecuteTransaction"].signAndExecuteTransaction({account:a,transaction:i,chain:p})).digest}}catch(e){throw new d(g.SEND_TX_ERROR,void 0,e)}}};export{t as DefaultSuiSigner};
2
2
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../src/signer.ts"],
4
- "sourcesContent": ["import type { GenericSigner } from 'rango-types';\nimport type { SuiTransaction } from 'rango-types/mainApi';\n\nimport { Transaction } from '@mysten/sui/transactions';\nimport {\n SUI_MAINNET_CHAIN,\n type SuiFeatures,\n type WalletWithFeatures,\n} from '@mysten/wallet-standard';\nimport { SignerError } from 'rango-types';\n\nexport type SuiWalletStandard = WalletWithFeatures<SuiFeatures>;\n\nexport class DefaultSuiSigner implements GenericSigner<SuiTransaction> {\n private provider: SuiWalletStandard;\n\n constructor(provider: SuiWalletStandard) {\n this.provider = provider;\n }\n\n public async signMessage(): Promise<string> {\n /*\n * TODO: Can be implemented by sui:signPersonalMessage feature.\n * @see https://docs.sui.io/standards/wallet-standard#implementing-features\n */\n throw SignerError.UnimplementedError('signMessage');\n }\n\n async signAndSendTx(tx: SuiTransaction): Promise<{ hash: string }> {\n const transaction = Transaction.from(tx.unsignedPtbBase64);\n\n // TODO: Double check with team to ensure this assumption is correct\n const senderAddress = transaction.getData().sender;\n if (!senderAddress) {\n throw new Error('Your transaction should includes a Sender.');\n }\n\n const account = this.provider.accounts.find(\n (account) => account.address === senderAddress\n );\n\n if (!account) {\n throw new Error(\n 'Your current address on wallet is not matched with what has been set in transaction.'\n );\n }\n\n const signed = await this.provider.features[\n 'sui:signAndExecuteTransaction'\n ].signAndExecuteTransaction({\n account,\n transaction,\n chain: SUI_MAINNET_CHAIN,\n });\n\n return {\n hash: signed.digest,\n };\n }\n}\n"],
5
- "mappings": "+EAGA,OAAS,eAAAA,MAAmB,2BAC5B,OACE,qBAAAC,MAGK,0BACP,OAAS,eAAAC,MAAmB,cAIrB,IAAMC,EAAN,KAAgE,CAbvE,MAauE,CAAAC,EAAA,yBAC7D,SAER,YAAYC,EAA6B,CACvC,KAAK,SAAWA,CAClB,CAEA,MAAa,aAA+B,CAK1C,MAAMC,EAAY,mBAAmB,aAAa,CACpD,CAEA,MAAM,cAAcC,EAA+C,CACjE,IAAMC,EAAcC,EAAY,KAAKF,EAAG,iBAAiB,EAGnDG,EAAgBF,EAAY,QAAQ,EAAE,OAC5C,GAAI,CAACE,EACH,MAAM,IAAI,MAAM,4CAA4C,EAG9D,IAAMC,EAAU,KAAK,SAAS,SAAS,KACpCA,GAAYA,EAAQ,UAAYD,CACnC,EAEA,GAAI,CAACC,EACH,MAAM,IAAI,MACR,sFACF,EAWF,MAAO,CACL,MATa,MAAM,KAAK,SAAS,SACjC,+BACF,EAAE,0BAA0B,CAC1B,QAAAA,EACA,YAAAH,EACA,MAAOI,CACT,CAAC,GAGc,MACf,CACF,CACF",
6
- "names": ["Transaction", "SUI_MAINNET_CHAIN", "SignerError", "DefaultSuiSigner", "__name", "provider", "SignerError", "tx", "transaction", "Transaction", "senderAddress", "account", "SUI_MAINNET_CHAIN"]
4
+ "sourcesContent": ["import type { GenericSigner } from 'rango-types';\nimport type { SuiTransaction } from 'rango-types/mainApi';\n\nimport { Transaction } from '@mysten/sui/transactions';\nimport {\n SUI_MAINNET_CHAIN,\n type SuiFeatures,\n type WalletWithFeatures,\n} from '@mysten/wallet-standard';\nimport { SignerError, SignerErrorCode } from 'rango-types';\n\nexport type SuiWalletStandard = WalletWithFeatures<SuiFeatures>;\n\nexport class DefaultSuiSigner implements GenericSigner<SuiTransaction> {\n private provider: SuiWalletStandard;\n\n constructor(provider: SuiWalletStandard) {\n this.provider = provider;\n }\n\n public async signMessage(): Promise<string> {\n /*\n * TODO: Can be implemented by sui:signPersonalMessage feature.\n * @see https://docs.sui.io/standards/wallet-standard#implementing-features\n */\n throw SignerError.UnimplementedError('signMessage');\n }\n\n async signAndSendTx(tx: SuiTransaction): Promise<{ hash: string }> {\n const transaction = Transaction.from(tx.unsignedPtbBase64);\n\n // TODO: Double check with team to ensure this assumption is correct\n const senderAddress = transaction.getData().sender;\n if (!senderAddress) {\n throw new Error('Your transaction should includes a Sender.');\n }\n\n const account = this.provider.accounts.find(\n (account) => account.address === senderAddress\n );\n\n if (!account) {\n throw new Error(\n 'Your current address on wallet is not matched with what has been set in transaction.'\n );\n }\n\n try {\n const signed = await this.provider.features[\n 'sui:signAndExecuteTransaction'\n ].signAndExecuteTransaction({\n account,\n transaction,\n chain: SUI_MAINNET_CHAIN,\n });\n\n return {\n hash: signed.digest,\n };\n } catch (error) {\n throw new SignerError(SignerErrorCode.SEND_TX_ERROR, undefined, error);\n }\n }\n}\n"],
5
+ "mappings": "+EAGA,OAAS,eAAAA,MAAmB,2BAC5B,OACE,qBAAAC,MAGK,0BACP,OAAS,eAAAC,EAAa,mBAAAC,MAAuB,cAItC,IAAMC,EAAN,KAAgE,CAbvE,MAauE,CAAAC,EAAA,yBAC7D,SAER,YAAYC,EAA6B,CACvC,KAAK,SAAWA,CAClB,CAEA,MAAa,aAA+B,CAK1C,MAAMC,EAAY,mBAAmB,aAAa,CACpD,CAEA,MAAM,cAAcC,EAA+C,CACjE,IAAMC,EAAcC,EAAY,KAAKF,EAAG,iBAAiB,EAGnDG,EAAgBF,EAAY,QAAQ,EAAE,OAC5C,GAAI,CAACE,EACH,MAAM,IAAI,MAAM,4CAA4C,EAG9D,IAAMC,EAAU,KAAK,SAAS,SAAS,KACpCA,GAAYA,EAAQ,UAAYD,CACnC,EAEA,GAAI,CAACC,EACH,MAAM,IAAI,MACR,sFACF,EAGF,GAAI,CASF,MAAO,CACL,MATa,MAAM,KAAK,SAAS,SACjC,+BACF,EAAE,0BAA0B,CAC1B,QAAAA,EACA,YAAAH,EACA,MAAOI,CACT,CAAC,GAGc,MACf,CACF,OAASC,EAAO,CACd,MAAM,IAAIP,EAAYQ,EAAgB,cAAe,OAAWD,CAAK,CACvE,CACF,CACF",
6
+ "names": ["Transaction", "SUI_MAINNET_CHAIN", "SignerError", "SignerErrorCode", "DefaultSuiSigner", "__name", "provider", "SignerError", "tx", "transaction", "Transaction", "senderAddress", "account", "SUI_MAINNET_CHAIN", "error", "SignerErrorCode"]
7
7
  }
@@ -1 +1 @@
1
- {"version":3,"file":"signer.d.ts","sourceRoot":"","sources":["../src/signer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAG1D,OAAO,EAEL,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACxB,MAAM,yBAAyB,CAAC;AAGjC,MAAM,MAAM,iBAAiB,GAAG,kBAAkB,CAAC,WAAW,CAAC,CAAC;AAEhE,qBAAa,gBAAiB,YAAW,aAAa,CAAC,cAAc,CAAC;IACpE,OAAO,CAAC,QAAQ,CAAoB;gBAExB,QAAQ,EAAE,iBAAiB;IAI1B,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC;IAQrC,aAAa,CAAC,EAAE,EAAE,cAAc,GAAG,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CA+BnE"}
1
+ {"version":3,"file":"signer.d.ts","sourceRoot":"","sources":["../src/signer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAG1D,OAAO,EAEL,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACxB,MAAM,yBAAyB,CAAC;AAGjC,MAAM,MAAM,iBAAiB,GAAG,kBAAkB,CAAC,WAAW,CAAC,CAAC;AAEhE,qBAAa,gBAAiB,YAAW,aAAa,CAAC,cAAc,CAAC;IACpE,OAAO,CAAC,QAAQ,CAAoB;gBAExB,QAAQ,EAAE,iBAAiB;IAI1B,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC;IAQrC,aAAa,CAAC,EAAE,EAAE,cAAc,GAAG,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CAmCnE"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rango-dev/signer-sui",
3
- "version": "0.10.1-next.0",
3
+ "version": "0.11.0",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "source": "./src/index.ts",
package/src/signer.ts CHANGED
@@ -7,7 +7,7 @@ import {
7
7
  type SuiFeatures,
8
8
  type WalletWithFeatures,
9
9
  } from '@mysten/wallet-standard';
10
- import { SignerError } from 'rango-types';
10
+ import { SignerError, SignerErrorCode } from 'rango-types';
11
11
 
12
12
  export type SuiWalletStandard = WalletWithFeatures<SuiFeatures>;
13
13
 
@@ -45,16 +45,20 @@ export class DefaultSuiSigner implements GenericSigner<SuiTransaction> {
45
45
  );
46
46
  }
47
47
 
48
- const signed = await this.provider.features[
49
- 'sui:signAndExecuteTransaction'
50
- ].signAndExecuteTransaction({
51
- account,
52
- transaction,
53
- chain: SUI_MAINNET_CHAIN,
54
- });
55
-
56
- return {
57
- hash: signed.digest,
58
- };
48
+ try {
49
+ const signed = await this.provider.features[
50
+ 'sui:signAndExecuteTransaction'
51
+ ].signAndExecuteTransaction({
52
+ account,
53
+ transaction,
54
+ chain: SUI_MAINNET_CHAIN,
55
+ });
56
+
57
+ return {
58
+ hash: signed.digest,
59
+ };
60
+ } catch (error) {
61
+ throw new SignerError(SignerErrorCode.SEND_TX_ERROR, undefined, error);
62
+ }
59
63
  }
60
64
  }