@mysten/sui 1.18.0 → 1.19.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.
Files changed (158) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/dist/cjs/bcs/bcs.d.ts +95 -95
  3. package/dist/cjs/bcs/effects.d.ts +41 -41
  4. package/dist/cjs/bcs/index.d.ts +136 -136
  5. package/dist/cjs/client/client.d.ts +1 -0
  6. package/dist/cjs/cryptography/intent.d.ts +1 -1
  7. package/dist/cjs/cryptography/publickey.d.ts +7 -0
  8. package/dist/cjs/cryptography/publickey.js +24 -1
  9. package/dist/cjs/cryptography/publickey.js.map +2 -2
  10. package/dist/cjs/cryptography/signature.d.ts +13 -15
  11. package/dist/cjs/cryptography/signature.js +4 -11
  12. package/dist/cjs/cryptography/signature.js.map +2 -2
  13. package/dist/cjs/graphql/generated/2024.1/tada-env.d.ts +11380 -0
  14. package/dist/cjs/graphql/generated/2024.1/tada-env.js +13142 -0
  15. package/dist/cjs/graphql/generated/2024.1/tada-env.js.map +7 -0
  16. package/dist/cjs/graphql/generated/2024.1/tsconfig.tada.js +1 -1
  17. package/dist/cjs/graphql/generated/2024.1/tsconfig.tada.js.map +1 -1
  18. package/dist/cjs/graphql/generated/2024.4/tada-env.d.ts +11496 -0
  19. package/dist/cjs/graphql/generated/2024.4/tada-env.js +13288 -0
  20. package/dist/cjs/graphql/generated/2024.4/tada-env.js.map +7 -0
  21. package/dist/cjs/graphql/generated/2024.4/tsconfig.tada.js +1 -1
  22. package/dist/cjs/graphql/generated/2024.4/tsconfig.tada.js.map +1 -1
  23. package/dist/cjs/graphql/generated/latest/tada-env.d.ts +12540 -0
  24. package/dist/cjs/graphql/generated/latest/tada-env.js +14498 -0
  25. package/dist/cjs/graphql/generated/latest/tada-env.js.map +7 -0
  26. package/dist/cjs/graphql/generated/latest/tsconfig.tada.js +1 -1
  27. package/dist/cjs/graphql/generated/latest/tsconfig.tada.js.map +1 -1
  28. package/dist/cjs/graphql/schemas/2024.1/index.d.ts +6 -8999
  29. package/dist/cjs/graphql/schemas/2024.1/index.js.map +1 -1
  30. package/dist/cjs/graphql/schemas/2024.4/index.d.ts +6 -9053
  31. package/dist/cjs/graphql/schemas/2024.4/index.js.map +1 -1
  32. package/dist/cjs/graphql/schemas/latest/index.d.ts +6 -9827
  33. package/dist/cjs/graphql/schemas/latest/index.js.map +1 -1
  34. package/dist/cjs/keypairs/ed25519/keypair.d.ts +1 -1
  35. package/dist/cjs/keypairs/ed25519/publickey.d.ts +1 -1
  36. package/dist/cjs/keypairs/ed25519/publickey.js +1 -2
  37. package/dist/cjs/keypairs/ed25519/publickey.js.map +2 -2
  38. package/dist/cjs/keypairs/passkey/keypair.d.ts +1 -1
  39. package/dist/cjs/keypairs/passkey/publickey.d.ts +4 -4
  40. package/dist/cjs/keypairs/secp256k1/keypair.d.ts +1 -1
  41. package/dist/cjs/keypairs/secp256k1/publickey.js +1 -2
  42. package/dist/cjs/keypairs/secp256k1/publickey.js.map +2 -2
  43. package/dist/cjs/keypairs/secp256r1/keypair.d.ts +1 -1
  44. package/dist/cjs/transactions/Arguments.d.ts +11 -980
  45. package/dist/cjs/transactions/Arguments.js +1 -3
  46. package/dist/cjs/transactions/Arguments.js.map +2 -2
  47. package/dist/cjs/transactions/Transaction.d.ts +8 -32
  48. package/dist/cjs/transactions/Transaction.js.map +2 -2
  49. package/dist/cjs/transactions/TransactionData.d.ts +1 -1
  50. package/dist/cjs/transactions/executor/caching.d.ts +1 -1
  51. package/dist/cjs/transactions/executor/serial.d.ts +1 -1
  52. package/dist/cjs/transactions/index.d.ts +1 -0
  53. package/dist/cjs/transactions/index.js +2 -0
  54. package/dist/cjs/transactions/index.js.map +3 -3
  55. package/dist/cjs/transactions/utils.d.ts +2 -0
  56. package/dist/cjs/transactions/utils.js +7 -1
  57. package/dist/cjs/transactions/utils.js.map +2 -2
  58. package/dist/cjs/version.d.ts +2 -2
  59. package/dist/cjs/version.js +2 -2
  60. package/dist/cjs/version.js.map +1 -1
  61. package/dist/cjs/zklogin/publickey.d.ts +2 -2
  62. package/dist/esm/bcs/bcs.d.ts +95 -95
  63. package/dist/esm/bcs/effects.d.ts +41 -41
  64. package/dist/esm/bcs/index.d.ts +136 -136
  65. package/dist/esm/client/client.d.ts +1 -0
  66. package/dist/esm/cryptography/intent.d.ts +1 -1
  67. package/dist/esm/cryptography/publickey.d.ts +7 -0
  68. package/dist/esm/cryptography/publickey.js +25 -2
  69. package/dist/esm/cryptography/publickey.js.map +2 -2
  70. package/dist/esm/cryptography/signature.d.ts +13 -15
  71. package/dist/esm/cryptography/signature.js +5 -16
  72. package/dist/esm/cryptography/signature.js.map +2 -2
  73. package/dist/esm/graphql/generated/2024.1/tada-env.d.ts +11380 -0
  74. package/dist/esm/graphql/generated/2024.1/tada-env.js +13122 -0
  75. package/dist/esm/graphql/generated/2024.1/tada-env.js.map +7 -0
  76. package/dist/esm/graphql/generated/2024.1/tsconfig.tada.js +1 -1
  77. package/dist/esm/graphql/generated/2024.1/tsconfig.tada.js.map +1 -1
  78. package/dist/esm/graphql/generated/2024.4/tada-env.d.ts +11496 -0
  79. package/dist/esm/graphql/generated/2024.4/tada-env.js +13268 -0
  80. package/dist/esm/graphql/generated/2024.4/tada-env.js.map +7 -0
  81. package/dist/esm/graphql/generated/2024.4/tsconfig.tada.js +1 -1
  82. package/dist/esm/graphql/generated/2024.4/tsconfig.tada.js.map +1 -1
  83. package/dist/esm/graphql/generated/latest/tada-env.d.ts +12540 -0
  84. package/dist/esm/graphql/generated/latest/tada-env.js +14478 -0
  85. package/dist/esm/graphql/generated/latest/tada-env.js.map +7 -0
  86. package/dist/esm/graphql/generated/latest/tsconfig.tada.js +1 -1
  87. package/dist/esm/graphql/generated/latest/tsconfig.tada.js.map +1 -1
  88. package/dist/esm/graphql/schemas/2024.1/index.d.ts +6 -8999
  89. package/dist/esm/graphql/schemas/2024.1/index.js.map +1 -1
  90. package/dist/esm/graphql/schemas/2024.4/index.d.ts +6 -9053
  91. package/dist/esm/graphql/schemas/2024.4/index.js.map +1 -1
  92. package/dist/esm/graphql/schemas/latest/index.d.ts +6 -9827
  93. package/dist/esm/graphql/schemas/latest/index.js.map +1 -1
  94. package/dist/esm/keypairs/ed25519/keypair.d.ts +1 -1
  95. package/dist/esm/keypairs/ed25519/publickey.d.ts +1 -1
  96. package/dist/esm/keypairs/ed25519/publickey.js +6 -3
  97. package/dist/esm/keypairs/ed25519/publickey.js.map +2 -2
  98. package/dist/esm/keypairs/passkey/keypair.d.ts +1 -1
  99. package/dist/esm/keypairs/passkey/publickey.d.ts +4 -4
  100. package/dist/esm/keypairs/secp256k1/keypair.d.ts +1 -1
  101. package/dist/esm/keypairs/secp256k1/publickey.js +6 -3
  102. package/dist/esm/keypairs/secp256k1/publickey.js.map +2 -2
  103. package/dist/esm/keypairs/secp256r1/keypair.d.ts +1 -1
  104. package/dist/esm/transactions/Arguments.d.ts +11 -980
  105. package/dist/esm/transactions/Arguments.js +1 -3
  106. package/dist/esm/transactions/Arguments.js.map +2 -2
  107. package/dist/esm/transactions/Transaction.d.ts +8 -32
  108. package/dist/esm/transactions/Transaction.js.map +2 -2
  109. package/dist/esm/transactions/TransactionData.d.ts +1 -1
  110. package/dist/esm/transactions/executor/caching.d.ts +1 -1
  111. package/dist/esm/transactions/executor/serial.d.ts +1 -1
  112. package/dist/esm/transactions/index.d.ts +1 -0
  113. package/dist/esm/transactions/index.js +2 -0
  114. package/dist/esm/transactions/index.js.map +2 -2
  115. package/dist/esm/transactions/utils.d.ts +2 -0
  116. package/dist/esm/transactions/utils.js +7 -1
  117. package/dist/esm/transactions/utils.js.map +2 -2
  118. package/dist/esm/version.d.ts +2 -2
  119. package/dist/esm/version.js +2 -2
  120. package/dist/esm/version.js.map +1 -1
  121. package/dist/esm/zklogin/publickey.d.ts +2 -2
  122. package/dist/tsconfig.esm.tsbuildinfo +1 -1
  123. package/dist/tsconfig.tsbuildinfo +1 -1
  124. package/package.json +11 -12
  125. package/src/cryptography/publickey.ts +29 -1
  126. package/src/cryptography/signature.ts +4 -17
  127. package/src/graphql/generated/2024.1/tada-env.ts +13144 -0
  128. package/src/graphql/generated/2024.1/tsconfig.tada.json +1 -1
  129. package/src/graphql/generated/2024.4/tada-env.ts +13290 -0
  130. package/src/graphql/generated/2024.4/tsconfig.tada.json +1 -1
  131. package/src/graphql/generated/latest/tada-env.ts +14500 -0
  132. package/src/graphql/generated/latest/tsconfig.tada.json +1 -1
  133. package/src/graphql/schemas/2024.1/index.ts +1 -1
  134. package/src/graphql/schemas/2024.4/index.ts +1 -1
  135. package/src/graphql/schemas/latest/index.ts +1 -1
  136. package/src/keypairs/ed25519/publickey.ts +6 -3
  137. package/src/keypairs/secp256k1/publickey.ts +6 -3
  138. package/src/transactions/Arguments.ts +6 -5
  139. package/src/transactions/Transaction.ts +3 -1
  140. package/src/transactions/__tests__/bcs.test.ts +1 -1
  141. package/src/transactions/index.ts +2 -0
  142. package/src/transactions/utils.ts +7 -0
  143. package/src/version.ts +2 -2
  144. package/dist/cjs/graphql/generated/2024.1/tada-env.d.js +0 -17
  145. package/dist/cjs/graphql/generated/2024.1/tada-env.d.js.map +0 -7
  146. package/dist/cjs/graphql/generated/2024.4/tada-env.d.js +0 -17
  147. package/dist/cjs/graphql/generated/2024.4/tada-env.d.js.map +0 -7
  148. package/dist/cjs/graphql/generated/latest/tada-env.d.js +0 -17
  149. package/dist/cjs/graphql/generated/latest/tada-env.d.js.map +0 -7
  150. package/dist/esm/graphql/generated/2024.1/tada-env.d.js +0 -1
  151. package/dist/esm/graphql/generated/2024.1/tada-env.d.js.map +0 -7
  152. package/dist/esm/graphql/generated/2024.4/tada-env.d.js +0 -1
  153. package/dist/esm/graphql/generated/2024.4/tada-env.d.js.map +0 -7
  154. package/dist/esm/graphql/generated/latest/tada-env.d.js +0 -1
  155. package/dist/esm/graphql/generated/latest/tada-env.d.js.map +0 -7
  156. package/src/graphql/generated/2024.1/tada-env.d.ts +0 -201
  157. package/src/graphql/generated/2024.4/tada-env.d.ts +0 -203
  158. package/src/graphql/generated/latest/tada-env.d.ts +0 -220
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "author": "Mysten Labs <build@mystenlabs.com>",
4
4
  "description": "Sui TypeScript API(Work in Progress)",
5
5
  "homepage": "https://sdk.mystenlabs.com",
6
- "version": "1.18.0",
6
+ "version": "1.19.0",
7
7
  "license": "Apache-2.0",
8
8
  "sideEffects": false,
9
9
  "files": [
@@ -100,7 +100,7 @@
100
100
  }
101
101
  },
102
102
  "bugs": {
103
- "url": "https://github.com/MystenLabs/sui/issues/new"
103
+ "url": "https://github.com/MystenLabs/ts-sdks/issues/new"
104
104
  },
105
105
  "publishConfig": {
106
106
  "access": "public"
@@ -110,10 +110,10 @@
110
110
  "@graphql-codegen/add": "^5.0.3",
111
111
  "@graphql-codegen/cli": "^5.0.2",
112
112
  "@graphql-codegen/typed-document-node": "^5.0.9",
113
- "@graphql-codegen/typescript": "4.0.9",
113
+ "@graphql-codegen/typescript": "4.1.2",
114
114
  "@graphql-codegen/typescript-operations": "^4.2.3",
115
115
  "@iarna/toml": "^2.2.5",
116
- "@types/node": "^20.14.10",
116
+ "@types/node": "^22.10.5",
117
117
  "@types/tmp": "^0.2.6",
118
118
  "@types/ws": "^8.5.10",
119
119
  "cross-env": "^7.0.3",
@@ -121,10 +121,11 @@
121
121
  "msw": "^2.3.1",
122
122
  "tmp": "^0.2.3",
123
123
  "ts-retry-promise": "^0.8.1",
124
- "typescript": "^5.5.3",
125
- "vite": "^5.3.3",
126
- "vitest": "^2.0.1",
127
- "wait-on": "^7.2.0",
124
+ "typescript": "^5.7.2",
125
+ "vite": "^6.0.7",
126
+ "vite-tsconfig-paths": "^5.1.4",
127
+ "vitest": "^2.1.8",
128
+ "wait-on": "^8.0.1",
128
129
  "ws": "^8.18.0",
129
130
  "@mysten/build-scripts": "^0.0.0"
130
131
  },
@@ -142,7 +143,7 @@
142
143
  "jose": "^5.6.3",
143
144
  "poseidon-lite": "^0.2.0",
144
145
  "valibot": "^0.36.0",
145
- "@mysten/bcs": "1.2.0"
146
+ "@mysten/bcs": "1.2.1"
146
147
  },
147
148
  "scripts": {
148
149
  "clean": "rm -rf tsconfig.tsbuildinfo ./dist",
@@ -153,9 +154,7 @@
153
154
  "test": "pnpm test:typecheck && pnpm test:unit",
154
155
  "test:typecheck": "tsc -p ./test",
155
156
  "test:unit": "vitest run unit __tests__",
156
- "test:e2e": "wait-on http://127.0.0.1:9123 -l --timeout 180000 && vitest run e2e",
157
- "test:e2e:nowait": "vitest run e2e",
158
- "prepare:e2e": "docker-compose down && docker-compose up -d && cargo build --bin sui --profile dev && cross-env RUST_LOG=warn,sui=error,anemo_tower=warn,consensus=off ../../target/debug/sui start --with-faucet --force-regenesis --with-indexer --pg-port 5435 --pg-db-name sui_indexer_v2 --with-graphql",
157
+ "test:e2e": "vitest run --config test/e2e/vitest.config.mts",
159
158
  "size": "size-limit",
160
159
  "analyze": "size-limit --why",
161
160
  "prettier:check": "prettier -c --ignore-unknown .",
@@ -1,7 +1,7 @@
1
1
  // Copyright (c) Mysten Labs, Inc.
2
2
  // SPDX-License-Identifier: Apache-2.0
3
3
 
4
- import { toBase64 } from '@mysten/bcs';
4
+ import { fromBase64, toBase64 } from '@mysten/bcs';
5
5
  import { blake2b } from '@noble/hashes/blake2b';
6
6
  import { bytesToHex } from '@noble/hashes/utils';
7
7
 
@@ -9,6 +9,7 @@ import { bcs } from '../bcs/index.js';
9
9
  import { normalizeSuiAddress, SUI_ADDRESS_LENGTH } from '../utils/sui-types.js';
10
10
  import type { IntentScope } from './intent.js';
11
11
  import { messageWithIntent } from './intent.js';
12
+ import { SIGNATURE_FLAG_TO_SCHEME, SIGNATURE_SCHEME_TO_SIZE } from './signature-scheme.js';
12
13
 
13
14
  /**
14
15
  * Value to be converted into public key.
@@ -138,3 +139,30 @@ export abstract class PublicKey {
138
139
  */
139
140
  abstract verify(data: Uint8Array, signature: Uint8Array | string): Promise<boolean>;
140
141
  }
142
+
143
+ export function parseSerializedKeypairSignature(serializedSignature: string) {
144
+ const bytes = fromBase64(serializedSignature);
145
+
146
+ const signatureScheme =
147
+ SIGNATURE_FLAG_TO_SCHEME[bytes[0] as keyof typeof SIGNATURE_FLAG_TO_SCHEME];
148
+
149
+ switch (signatureScheme) {
150
+ case 'ED25519':
151
+ case 'Secp256k1':
152
+ case 'Secp256r1':
153
+ const size =
154
+ SIGNATURE_SCHEME_TO_SIZE[signatureScheme as keyof typeof SIGNATURE_SCHEME_TO_SIZE];
155
+ const signature = bytes.slice(1, bytes.length - size);
156
+ const publicKey = bytes.slice(1 + signature.length);
157
+
158
+ return {
159
+ serializedSignature,
160
+ signatureScheme,
161
+ signature,
162
+ publicKey,
163
+ bytes,
164
+ };
165
+ default:
166
+ throw new Error('Unsupported signature scheme');
167
+ }
168
+ }
@@ -7,13 +7,10 @@ import { bcs } from '../bcs/index.js';
7
7
  import { parseSerializedPasskeySignature } from '../keypairs/passkey/publickey.js';
8
8
  import type { MultiSigStruct } from '../multisig/publickey.js';
9
9
  import { parseSerializedZkLoginSignature } from '../zklogin/publickey.js';
10
+ import { parseSerializedKeypairSignature } from './publickey.js';
10
11
  import type { PublicKey } from './publickey.js';
11
12
  import type { SignatureScheme } from './signature-scheme.js';
12
- import {
13
- SIGNATURE_FLAG_TO_SCHEME,
14
- SIGNATURE_SCHEME_TO_FLAG,
15
- SIGNATURE_SCHEME_TO_SIZE,
16
- } from './signature-scheme.js';
13
+ import { SIGNATURE_FLAG_TO_SCHEME, SIGNATURE_SCHEME_TO_FLAG } from './signature-scheme.js';
17
14
 
18
15
  /**
19
16
  * Pair of signature and corresponding public key
@@ -65,24 +62,14 @@ export function parseSerializedSignature(serializedSignature: string) {
65
62
  signatureScheme,
66
63
  multisig,
67
64
  bytes,
65
+ signature: undefined,
68
66
  };
69
67
  case 'ZkLogin':
70
68
  return parseSerializedZkLoginSignature(serializedSignature);
71
69
  case 'ED25519':
72
70
  case 'Secp256k1':
73
71
  case 'Secp256r1':
74
- const size =
75
- SIGNATURE_SCHEME_TO_SIZE[signatureScheme as keyof typeof SIGNATURE_SCHEME_TO_SIZE];
76
- const signature = bytes.slice(1, bytes.length - size);
77
- const publicKey = bytes.slice(1 + signature.length);
78
-
79
- return {
80
- serializedSignature,
81
- signatureScheme,
82
- signature,
83
- publicKey,
84
- bytes,
85
- };
72
+ return parseSerializedKeypairSignature(serializedSignature);
86
73
  default:
87
74
  throw new Error('Unsupported signature scheme');
88
75
  }