unwallet-client-sdk 0.9.0 → 0.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.
@@ -3,7 +3,7 @@ on:
3
3
  release:
4
4
  types: [published]
5
5
  jobs:
6
- build:
6
+ publish:
7
7
  runs-on: ubuntu-latest
8
8
  steps:
9
9
  - name: Checkout
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # unWallet client-side SDK
2
2
 
3
- :warning: This SDK works fine only on browsers.
3
+ :warning: This SDK works correctly only on web browsers.
4
4
 
5
5
  ## Installation
6
6
 
@@ -18,7 +18,6 @@ const unWallet = await UnWallet.init({
18
18
  });
19
19
  ```
20
20
 
21
- ## Functions
21
+ ## Usage
22
22
 
23
- - [For all developers](docs/functions-1.md)
24
- - [For web3 developers](docs/functions-2.md)
23
+ See [Functions](docs/functions.md).
@@ -1 +1 @@
1
- {"version":3,"file":"configs.d.ts","sourceRoot":"","sources":["../src/configs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAEzC,eAAO,MAAM,eAAe,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,CAAA;CAa5D,CAAC"}
1
+ {"version":3,"file":"configs.d.ts","sourceRoot":"","sources":["../src/configs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAEzC,eAAO,MAAM,eAAe,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,CAAA;CAS5D,CAAC"}
package/dist/configs.js CHANGED
@@ -7,10 +7,6 @@ exports.unWalletConfigs = {
7
7
  wsAPIURL: "wss://in-ws-api.id.unwallet.world",
8
8
  },
9
9
  dev: {
10
- baseURL: "https://id.unwallet.dev",
11
- wsAPIURL: "wss://in-ws-api.id.unwallet.dev",
12
- },
13
- local: {
14
10
  baseURL: "http://localhost:4200",
15
11
  wsAPIURL: "wss://in-ws-api.id.test.unwallet.dev",
16
12
  },
package/dist/types.d.ts CHANGED
@@ -6,13 +6,11 @@ export interface UnWalletConfig {
6
6
  baseURL: string;
7
7
  wsAPIURL: string;
8
8
  }
9
- export interface DigestAndSignature {
9
+ export interface SignResult {
10
10
  digest: string;
11
11
  signature: string;
12
12
  }
13
- export interface MetaTransaction {
14
- executor: string;
15
- data: string;
16
- signature: string;
13
+ export interface SendTransactionResult {
14
+ TransactionID: string;
17
15
  }
18
16
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,MAAM;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CACnB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,MAAM;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,qBAAqB;IACpC,aAAa,EAAE,MAAM,CAAC;CACvB"}
@@ -1,4 +1,4 @@
1
- import { Config, UnWalletConfig, DigestAndSignature, MetaTransaction } from "./types";
1
+ import { Config, UnWalletConfig, SignResult, SendTransactionResult } from "./types";
2
2
  export declare class UnWallet {
3
3
  private config;
4
4
  private unWalletConfig;
@@ -18,17 +18,14 @@ export declare class UnWallet {
18
18
  }): void;
19
19
  sign(args: {
20
20
  message: string;
21
- }): Promise<DigestAndSignature>;
22
- signTransaction(args: {
23
- to: string;
21
+ }): Promise<SignResult>;
22
+ sendTransaction(args: {
23
+ chainID: number;
24
+ toAddress: string;
24
25
  value?: string;
25
26
  data?: string;
26
- }): Promise<MetaTransaction>;
27
- signTokenTransfer(args: {
28
- id: number;
29
- to: string;
30
- amount: number;
31
- }): Promise<MetaTransaction>;
27
+ ticket: string;
28
+ }): Promise<SendTransactionResult>;
32
29
  private getConnectionID;
33
30
  private sendWSMessage;
34
31
  private handleWSMessage;
@@ -1 +1 @@
1
- {"version":3,"file":"unwallet.d.ts","sourceRoot":"","sources":["../src/unwallet.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,MAAM,EACN,cAAc,EACd,kBAAkB,EAClB,eAAe,EAChB,MAAM,SAAS,CAAC;AAEjB,qBAAa,QAAQ;IACnB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,cAAc,CAAiB;IAEvC,OAAO,CAAC,EAAE,CAAY;IACtB,OAAO,CAAC,YAAY,CAAS;IAE7B,OAAO,CAAC,OAAO,CAAwC;IACvD,OAAO,CAAC,MAAM,CAAwC;gBAE1C,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,cAAc,EAAE,EAAE,EAAE,SAAS;IAUzE,OAAO,CAAC,eAAe;WAKT,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAsC9C,SAAS,CAAC,IAAI,EAAE;QACrB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,WAAW,EAAE,MAAM,CAAC;QACpB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,GAAG,IAAI;IAyBD,IAAI,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAsB5D,eAAe,CAAC,IAAI,EAAE;QAC3B,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,GAAG,OAAO,CAAC,eAAe,CAAC;IAiBrB,iBAAiB,CAAC,IAAI,EAAE;QAC7B,EAAE,EAAE,MAAM,CAAC;QACX,EAAE,EAAE,MAAM,CAAC;QACX,MAAM,EAAE,MAAM,CAAC;KAChB,GAAG,OAAO,CAAC,eAAe,CAAC;IAkB5B,OAAO,CAAC,eAAe;IAMvB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,eAAe;IA4BvB,OAAO,CAAC,UAAU;CAYnB"}
1
+ {"version":3,"file":"unwallet.d.ts","sourceRoot":"","sources":["../src/unwallet.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,MAAM,EACN,cAAc,EACd,UAAU,EACV,qBAAqB,EACtB,MAAM,SAAS,CAAC;AAEjB,qBAAa,QAAQ;IACnB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,cAAc,CAAiB;IAEvC,OAAO,CAAC,EAAE,CAAY;IACtB,OAAO,CAAC,YAAY,CAAS;IAE7B,OAAO,CAAC,OAAO,CAAwC;IACvD,OAAO,CAAC,MAAM,CAAwC;gBAE1C,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,cAAc,EAAE,EAAE,EAAE,SAAS;IAUzE,OAAO,CAAC,eAAe;WAKT,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAsC9C,SAAS,CAAC,IAAI,EAAE;QACrB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,WAAW,EAAE,MAAM,CAAC;QACpB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,GAAG,IAAI;IA2BD,IAAI,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,UAAU,CAAC;IAqBpD,eAAe,CAAC,IAAI,EAAE;QAC3B,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;KAChB,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAgClC,OAAO,CAAC,eAAe;IAMvB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,eAAe;IA4BvB,OAAO,CAAC,UAAU;CAYnB"}
package/dist/unwallet.js CHANGED
@@ -52,7 +52,7 @@ class UnWallet {
52
52
  if (!args.responseMode) {
53
53
  args.responseMode = "fragment";
54
54
  }
55
- let url = new URL(`${this.unWalletConfig.baseURL}/${args.isVirtual ? "v" : ""}authorize`);
55
+ let url = new URL(`${this.unWalletConfig.baseURL}/${args.isVirtual === false ? "" : "v"}authorize`);
56
56
  {
57
57
  url.searchParams.set("response_type", "id_token");
58
58
  url.searchParams.set("response_mode", args.responseMode);
@@ -86,32 +86,24 @@ class UnWallet {
86
86
  this.openWindow(url);
87
87
  });
88
88
  }
89
- // DEPRECATED
90
- signTransaction(args) {
89
+ sendTransaction(args) {
91
90
  return new Promise((resolve, reject) => {
92
- this.resolve = resolve;
93
- this.reject = reject;
94
- const url = new URL(`${this.unWalletConfig.baseURL}/x/signTransaction`);
95
- {
96
- url.searchParams.set("connectionID", this.connectionID);
97
- url.searchParams.set("clientID", this.config.clientID);
98
- url.searchParams.set("transaction", JSON.stringify(args));
91
+ if (args.value === undefined && args.data === undefined) {
92
+ throw new Error("either value or data required");
99
93
  }
100
- this.openWindow(url);
101
- });
102
- }
103
- // DEPRECATED
104
- signTokenTransfer(args) {
105
- return new Promise((resolve, reject) => {
106
- this.resolve = resolve;
94
+ this.resolve = (txID) => {
95
+ resolve({ TransactionID: txID });
96
+ };
107
97
  this.reject = reject;
108
- const url = new URL(`${this.unWalletConfig.baseURL}/x/signTokenTransfer`);
98
+ const url = new URL(`${this.unWalletConfig.baseURL}/x/sendTransaction`);
109
99
  {
110
100
  url.searchParams.set("connectionID", this.connectionID);
111
101
  url.searchParams.set("clientID", this.config.clientID);
112
- url.searchParams.set("id", args.id.toString());
113
- url.searchParams.set("to", args.to);
114
- url.searchParams.set("amount", args.amount.toString());
102
+ url.searchParams.set("chainID", args.chainID.toString());
103
+ url.searchParams.set("toAddress", args.toAddress);
104
+ url.searchParams.set("value", args.value !== undefined ? args.value : "0x0");
105
+ url.searchParams.set("data", args.data !== undefined ? args.data : "0x");
106
+ url.searchParams.set("ticket", args.ticket);
115
107
  }
116
108
  this.openWindow(url);
117
109
  });
@@ -1,16 +1,18 @@
1
- # Functions (for all developers)
1
+ # Functions
2
2
 
3
3
  > **Note**\
4
- > To execute the sample codes below, you need to create an application with unWallet Enterprise in advance.
4
+ > You need to register your application to unWallet Enterprise in advance.
5
5
 
6
6
  ## authorize
7
7
 
8
8
  `authorize` requests a user's ID token in accordance with OpenID Connect (response_type: id_token).
9
9
 
10
+ ### Example call
11
+
10
12
  ```js
11
13
  unWallet.authorize({
12
14
  redirectURL: "http://your.app.com/callback",
13
- nonce: "pdITKAtep0pfPOrUXdzjqW6gKvXezurJ", // arbitrary string to prevent replay attacks
15
+ nonce: "ARBITRARY_STRING_TO_PREVENT_REPLAY_ATTACKS",
14
16
  });
15
17
  ```
16
18
 
@@ -18,13 +20,15 @@ unWallet.authorize({
18
20
 
19
21
  `sign` requests a signature for a message.
20
22
 
23
+ ### Example call
24
+
21
25
  ```js
22
- const sig = await unWallet.sign({
26
+ const result = await unWallet.sign({
23
27
  message: "ARBITRARY_MESSAGE",
24
28
  });
25
29
  ```
26
30
 
27
- ### Example return value
31
+ ### Example result
28
32
 
29
33
  ```json
30
34
  {
@@ -83,26 +87,32 @@ const ethers = require("ethers");
83
87
  })();
84
88
  ```
85
89
 
86
- ## signTokenTransfer
90
+ ## sendTransaction
91
+
92
+ `sendTransaction` requests to send a transaction.
87
93
 
88
- `signTokenTransfer` requests a signature for a token transfer transaction.
94
+ ### Example call
95
+
96
+ > **Note**\
97
+ > You need to issue a transaction ticket via unWallet Enterprise API in advance.
89
98
 
90
99
  ```js
91
- const metaTx = await unWallet.signTokenTransfer({
92
- id: 101, // token ID
93
- to: "0xB481148EB6A5f6b5b9Cc10cb0C8304B9B179A8e6", // destination address
94
- amount: 1, // token amount
100
+ const result = await unWallet.sendTransaction({
101
+ chainID: 80002,
102
+ toAddress: "0xC2C747E0F7004F9E8817Db2ca4997657a7746928",
103
+ value: "0xde0b6b3a7640000", // the amount of native token to be transferred
104
+ ticket:
105
+ "eyJhbGciOiJFUzI1NiIsImtpZCI6IjEiLCJ0eXAiOiJKV1QifQ.eyJhcGlDbGllbnRJRCI6IlFWQkpRMnhwWlc1ME9qRT0iLCJjaGFpbklEIjo4MDAwMiwiY2xpZW50SUQiOiJDWHFsSnBLWWlYTHpWdXEzbVU0OVVZNVVGbjJOM1VSVnQiLCJleHAiOjE3MTk0OTM3NzEsImlhdCI6MTcxOTQ5MzcxMSwiaWQiOiJkYjA1OTQ1MDI4MDQ4MWQ1ZjMxOWNlZWIwZTJkMjQ4MTNkNjc4OTdlODA1MGU1YTVmNWIyZWJkNzUxYmMwM2Y5IiwicGF5bWVudFR5cGUiOiJ1c2VyIiwidHJhbnNhY3Rpb25EYXRhIjoiMHgiLCJ0cmFuc2FjdGlvbkZyb21BZGRyZXNzIjoiMHgxMDVmNDMxMGIzRDE4RTNEN0YxOWZEN0RGNDg4NzM1YTE1MGVlZDJhIiwidHJhbnNhY3Rpb25Ub0FkZHJlc3MiOiIweEMyQzc0N0UwRjcwMDRGOUU4ODE3RGIyY2E0OTk3NjU3YTc3NDY5MjgiLCJ0cmFuc2FjdGlvblZhbHVlIjoiMHhkZTBiNmIzYTc2NDAwMDAifQ.LIzAe8Ar3c0KNWf0bczVUDodMj6pwwWngESC7AaWI9PHbmeQ6q3zsXgFJm__pi1mLJ79fHZfI0DF4fjreUDZtQ",
95
106
  });
96
107
  ```
97
108
 
98
- ### Example return value
109
+ ### Example result
99
110
 
100
111
  ```json
101
112
  {
102
- "executor": "0x3ADBDCBa56d70Fc15Dcbe98901432cC07B2aAaeF",
103
- "data": "0x...",
104
- "signature": "0x19eb83842bc2d2c55567d4da63981ae9d4ce76ec567b591f18e18f4e030c4389331ba3ce0f1549331cb51710881320982b7b7a3632a7d81ca214690ecf3267c51c"
113
+ "transactionID": "UXVldWVkVHJhbnNhY3Rpb246MQ=="
105
114
  }
106
115
  ```
107
116
 
108
- To execute the transaction, call [POST /metaTransactions of unWallet Enterprise API](https://developers.ent.unwallet.world/ja/latest/unwallet-ent-api.html#post-metatransactions).
117
+ > **Note**\
118
+ > You can get the transaction detail via unWallet Enterprise API.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "unwallet-client-sdk",
3
- "version": "0.9.0",
3
+ "version": "0.10.0",
4
4
  "description": "unWallet client-side SDK",
5
5
  "license": "MIT",
6
6
  "author": "SIVIRA",
@@ -15,7 +15,7 @@
15
15
  }
16
16
  },
17
17
  "dependencies": {
18
- "ethers": "6.12.0"
18
+ "ethers": "6.13.1"
19
19
  },
20
20
  "devDependencies": {
21
21
  "@commitlint/cli": "19.3.0",
@@ -23,7 +23,7 @@
23
23
  "commitizen": "4.3.0",
24
24
  "cz-conventional-changelog": "3.3.0",
25
25
  "husky": "9.0.11",
26
- "typescript": "5.4.5"
26
+ "typescript": "5.5.2"
27
27
  },
28
28
  "scripts": {
29
29
  "build": "tsc",
package/src/configs.ts CHANGED
@@ -6,10 +6,6 @@ export const unWalletConfigs: { [env: string]: UnWalletConfig } = {
6
6
  wsAPIURL: "wss://in-ws-api.id.unwallet.world",
7
7
  },
8
8
  dev: {
9
- baseURL: "https://id.unwallet.dev",
10
- wsAPIURL: "wss://in-ws-api.id.unwallet.dev",
11
- },
12
- local: {
13
9
  baseURL: "http://localhost:4200",
14
10
  wsAPIURL: "wss://in-ws-api.id.test.unwallet.dev",
15
11
  },
package/src/types.ts CHANGED
@@ -8,13 +8,11 @@ export interface UnWalletConfig {
8
8
  wsAPIURL: string;
9
9
  }
10
10
 
11
- export interface DigestAndSignature {
11
+ export interface SignResult {
12
12
  digest: string;
13
13
  signature: string;
14
14
  }
15
15
 
16
- export interface MetaTransaction {
17
- executor: string;
18
- data: string;
19
- signature: string;
16
+ export interface SendTransactionResult {
17
+ TransactionID: string;
20
18
  }
package/src/unwallet.ts CHANGED
@@ -4,8 +4,8 @@ import { unWalletConfigs } from "./configs";
4
4
  import {
5
5
  Config,
6
6
  UnWalletConfig,
7
- DigestAndSignature,
8
- MetaTransaction,
7
+ SignResult,
8
+ SendTransactionResult,
9
9
  } from "./types";
10
10
 
11
11
  export class UnWallet {
@@ -83,7 +83,9 @@ export class UnWallet {
83
83
  }
84
84
 
85
85
  let url = new URL(
86
- `${this.unWalletConfig.baseURL}/${args.isVirtual ? "v" : ""}authorize`
86
+ `${this.unWalletConfig.baseURL}/${
87
+ args.isVirtual === false ? "" : "v"
88
+ }authorize`
87
89
  );
88
90
  {
89
91
  url.searchParams.set("response_type", "id_token");
@@ -102,7 +104,7 @@ export class UnWallet {
102
104
  location.assign(url.toString());
103
105
  }
104
106
 
105
- public sign(args: { message: string }): Promise<DigestAndSignature> {
107
+ public sign(args: { message: string }): Promise<SignResult> {
106
108
  return new Promise((resolve, reject) => {
107
109
  this.resolve = (sig: string) => {
108
110
  resolve({
@@ -123,44 +125,38 @@ export class UnWallet {
123
125
  });
124
126
  }
125
127
 
126
- // DEPRECATED
127
- public signTransaction(args: {
128
- to: string;
128
+ public sendTransaction(args: {
129
+ chainID: number;
130
+ toAddress: string;
129
131
  value?: string;
130
132
  data?: string;
131
- }): Promise<MetaTransaction> {
133
+ ticket: string;
134
+ }): Promise<SendTransactionResult> {
132
135
  return new Promise((resolve, reject) => {
133
- this.resolve = resolve;
134
- this.reject = reject;
135
-
136
- const url = new URL(`${this.unWalletConfig.baseURL}/x/signTransaction`);
137
- {
138
- url.searchParams.set("connectionID", this.connectionID);
139
- url.searchParams.set("clientID", this.config.clientID);
140
- url.searchParams.set("transaction", JSON.stringify(args));
136
+ if (args.value === undefined && args.data === undefined) {
137
+ throw new Error("either value or data required");
141
138
  }
142
139
 
143
- this.openWindow(url);
144
- });
145
- }
146
-
147
- // DEPRECATED
148
- public signTokenTransfer(args: {
149
- id: number;
150
- to: string;
151
- amount: number;
152
- }): Promise<MetaTransaction> {
153
- return new Promise((resolve, reject) => {
154
- this.resolve = resolve;
140
+ this.resolve = (txID: string) => {
141
+ resolve({ TransactionID: txID });
142
+ };
155
143
  this.reject = reject;
156
144
 
157
- const url = new URL(`${this.unWalletConfig.baseURL}/x/signTokenTransfer`);
145
+ const url = new URL(`${this.unWalletConfig.baseURL}/x/sendTransaction`);
158
146
  {
159
147
  url.searchParams.set("connectionID", this.connectionID);
160
148
  url.searchParams.set("clientID", this.config.clientID);
161
- url.searchParams.set("id", args.id.toString());
162
- url.searchParams.set("to", args.to);
163
- url.searchParams.set("amount", args.amount.toString());
149
+ url.searchParams.set("chainID", args.chainID.toString());
150
+ url.searchParams.set("toAddress", args.toAddress);
151
+ url.searchParams.set(
152
+ "value",
153
+ args.value !== undefined ? args.value : "0x0"
154
+ );
155
+ url.searchParams.set(
156
+ "data",
157
+ args.data !== undefined ? args.data : "0x"
158
+ );
159
+ url.searchParams.set("ticket", args.ticket);
164
160
  }
165
161
 
166
162
  this.openWindow(url);
@@ -1,32 +0,0 @@
1
- # Functions (for web3 developers)
2
-
3
- Use the following functions only if you want to work with your own contracts.
4
-
5
- > **Note**\
6
- > To execute the sample codes below, you need to create an application with unWallet Enterprise in advance.
7
-
8
- ## signTransaction
9
-
10
- `signTransaction` requests a signature for a transaction.
11
-
12
- ```js
13
- const metaTx = await unWallet.signTransaction({
14
- to: "0xB481148EB6A5f6b5b9Cc10cb0C8304B9B179A8e6", // the address the transaction is directed to
15
- value: "0x0", // the MATIC value sent with this transaction (optional)
16
- data: "0x...", // the hash of the invoked method signature and encoded parameters (optional)
17
- });
18
- ```
19
-
20
- :warning: You cannot specify parameters related to gas here because the gas consumed by the meta transaction is paid by the provider wallet.
21
-
22
- ### Example return value
23
-
24
- ```json
25
- {
26
- "executor": "0x3ADBDCBa56d70Fc15Dcbe98901432cC07B2aAaeF",
27
- "data": "0x...",
28
- "signature": "0x19eb83842bc2d2c55567d4da63981ae9d4ce76ec567b591f18e18f4e030c4389331ba3ce0f1549331cb51710881320982b7b7a3632a7d81ca214690ecf3267c51c"
29
- }
30
- ```
31
-
32
- To execute the transaction, call [POST /metaTransactions of unWallet Enterprise API](https://developers.ent.unwallet.world/ja/latest/unwallet-ent-api.html#post-metatransactions).