@n1xyz/nord-ts 0.0.1 → 0.0.4

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 (237) hide show
  1. package/.eslintrc.js +11 -0
  2. package/README.md +148 -65
  3. package/dist/bridge/NordUser.d.ts +78 -0
  4. package/dist/bridge/NordUser.js +196 -0
  5. package/dist/bridge/client.d.ts +150 -0
  6. package/dist/bridge/client.js +394 -0
  7. package/dist/bridge/const.d.ts +23 -0
  8. package/dist/bridge/const.js +47 -0
  9. package/dist/bridge/index.d.ts +5 -0
  10. package/dist/bridge/index.js +23 -0
  11. package/dist/bridge/types.d.ts +118 -0
  12. package/dist/bridge/types.js +16 -0
  13. package/dist/bridge/utils.d.ts +64 -0
  14. package/dist/bridge/utils.js +131 -0
  15. package/dist/client.d.ts +70 -0
  16. package/dist/client.js +129 -0
  17. package/dist/const.d.ts +2 -5
  18. package/dist/const.js +18 -22
  19. package/dist/constants/endpoints.d.ts +65 -0
  20. package/dist/constants/endpoints.js +68 -0
  21. package/dist/gen/common.d.ts +6 -1
  22. package/dist/gen/common.js +19 -9
  23. package/dist/gen/nord.d.ts +75 -17
  24. package/dist/gen/nord.js +987 -423
  25. package/dist/idl/bridge.d.ts +2 -0
  26. package/dist/idl/bridge.js +703 -0
  27. package/dist/index.d.ts +8 -5
  28. package/dist/index.js +18 -2
  29. package/dist/models/account.d.ts +58 -0
  30. package/dist/models/account.js +6 -0
  31. package/dist/models/index.d.ts +8 -0
  32. package/dist/models/index.js +28 -0
  33. package/dist/models/market.d.ts +137 -0
  34. package/dist/models/market.js +6 -0
  35. package/dist/models/order.d.ts +211 -0
  36. package/dist/models/order.js +6 -0
  37. package/dist/models/token.d.ts +50 -0
  38. package/dist/models/token.js +6 -0
  39. package/dist/nord/Nord.d.ts +222 -49
  40. package/dist/nord/Nord.js +290 -278
  41. package/dist/nord/NordError.d.ts +23 -0
  42. package/dist/nord/NordError.js +48 -0
  43. package/dist/nord/NordImpl.d.ts +6 -2
  44. package/dist/nord/NordImpl.js +21 -1
  45. package/dist/nord/NordUser.d.ts +208 -42
  46. package/dist/nord/NordUser.js +389 -157
  47. package/dist/nord/Subscriber.d.ts +37 -0
  48. package/dist/nord/Subscriber.js +29 -0
  49. package/dist/nord/api/actions.d.ts +101 -0
  50. package/dist/nord/api/actions.js +250 -0
  51. package/dist/nord/api/core.d.ts +49 -0
  52. package/dist/nord/api/core.js +121 -0
  53. package/dist/nord/api/index.d.ts +1 -0
  54. package/dist/nord/api/index.js +17 -0
  55. package/dist/nord/api/market.d.ts +36 -0
  56. package/dist/nord/api/market.js +98 -0
  57. package/dist/nord/api/metrics.d.ts +67 -0
  58. package/dist/nord/api/metrics.js +132 -0
  59. package/dist/nord/api/orderFunctions.d.ts +168 -0
  60. package/dist/nord/api/orderFunctions.js +133 -0
  61. package/dist/nord/api/queries.d.ts +81 -0
  62. package/dist/nord/api/queries.js +187 -0
  63. package/dist/nord/client/Nord.d.ts +335 -0
  64. package/dist/nord/client/Nord.js +532 -0
  65. package/dist/nord/client/NordUser.d.ts +320 -0
  66. package/dist/nord/client/NordUser.js +701 -0
  67. package/dist/nord/core.d.ts +48 -0
  68. package/dist/nord/core.js +97 -0
  69. package/dist/nord/index.d.ts +9 -2
  70. package/dist/nord/index.js +30 -6
  71. package/dist/nord/market.d.ts +36 -0
  72. package/dist/nord/market.js +90 -0
  73. package/dist/nord/metrics.d.ts +67 -0
  74. package/dist/nord/metrics.js +124 -0
  75. package/dist/nord/models/Subscriber.d.ts +37 -0
  76. package/dist/nord/models/Subscriber.js +29 -0
  77. package/dist/nord/queries.d.ts +81 -0
  78. package/dist/nord/queries.js +181 -0
  79. package/dist/nord/types.d.ts +88 -0
  80. package/dist/nord/types.js +2 -0
  81. package/dist/nord/utils/NordError.d.ts +35 -0
  82. package/dist/nord/utils/NordError.js +46 -0
  83. package/dist/nord/websocket.d.ts +49 -0
  84. package/dist/nord/websocket.js +107 -0
  85. package/dist/operations/account.d.ts +58 -0
  86. package/dist/operations/account.js +112 -0
  87. package/dist/operations/market.d.ts +65 -0
  88. package/dist/operations/market.js +131 -0
  89. package/dist/operations/orders.d.ts +57 -0
  90. package/dist/operations/orders.js +129 -0
  91. package/dist/solana/NordUser.d.ts +78 -0
  92. package/dist/solana/NordUser.js +196 -0
  93. package/dist/solana/client.d.ts +139 -0
  94. package/dist/solana/client.js +360 -0
  95. package/dist/solana/const.d.ts +23 -0
  96. package/dist/solana/const.js +47 -0
  97. package/dist/solana/index.d.ts +5 -0
  98. package/dist/solana/index.js +23 -0
  99. package/dist/solana/types.d.ts +118 -0
  100. package/dist/solana/types.js +16 -0
  101. package/dist/solana/utils.d.ts +64 -0
  102. package/dist/solana/utils.js +131 -0
  103. package/dist/types/api.d.ts +152 -0
  104. package/dist/types/api.js +6 -0
  105. package/dist/types/config.d.ts +34 -0
  106. package/dist/types/config.js +6 -0
  107. package/dist/types.d.ts +144 -87
  108. package/dist/types.js +13 -2
  109. package/dist/utils/errors.d.ts +96 -0
  110. package/dist/utils/errors.js +132 -0
  111. package/dist/utils/http.d.ts +35 -0
  112. package/dist/utils/http.js +105 -0
  113. package/dist/utils.d.ts +14 -5
  114. package/dist/utils.js +26 -7
  115. package/dist/websocket/NordWebSocketClient.d.ts +71 -0
  116. package/dist/websocket/NordWebSocketClient.js +343 -0
  117. package/dist/websocket/client.d.ts +93 -0
  118. package/dist/websocket/client.js +222 -0
  119. package/dist/websocket/events.d.ts +19 -0
  120. package/dist/websocket/events.js +2 -0
  121. package/dist/websocket/index.d.ts +2 -0
  122. package/dist/websocket/index.js +5 -0
  123. package/dist/websocket.d.ts +55 -0
  124. package/dist/websocket.js +211 -0
  125. package/docs/assets/navigation.js +1 -1
  126. package/docs/assets/search.js +1 -1
  127. package/docs/classes/Nord.html +2 -15
  128. package/docs/classes/NordUser.html +4 -4
  129. package/docs/enums/FillMode.html +2 -2
  130. package/docs/enums/KeyType.html +2 -2
  131. package/docs/enums/PeakTpsPeriodUnit.html +2 -2
  132. package/docs/enums/Side.html +2 -2
  133. package/docs/functions/assert.html +1 -1
  134. package/docs/functions/bigIntToProtoU128.html +1 -1
  135. package/docs/functions/checkPubKeyLength.html +1 -1
  136. package/docs/functions/checkedFetch.html +1 -1
  137. package/docs/functions/decodeLengthDelimited.html +1 -1
  138. package/docs/functions/encodeLengthDelimited.html +1 -1
  139. package/docs/functions/fillModeToProtoFillMode.html +1 -1
  140. package/docs/functions/findMarket.html +1 -1
  141. package/docs/functions/findToken.html +1 -1
  142. package/docs/functions/makeWalletSignFn.html +1 -1
  143. package/docs/functions/optExpect.html +1 -1
  144. package/docs/functions/optMap.html +1 -1
  145. package/docs/functions/optUnwrap.html +1 -1
  146. package/docs/functions/panic.html +1 -1
  147. package/docs/functions/signAction.html +1 -1
  148. package/docs/functions/toScaledU128.html +1 -1
  149. package/docs/functions/toScaledU64.html +1 -1
  150. package/docs/interfaces/Account.html +2 -2
  151. package/docs/interfaces/ActionInfo.html +2 -2
  152. package/docs/interfaces/ActionQuery.html +2 -2
  153. package/docs/interfaces/ActionResponse.html +2 -2
  154. package/docs/interfaces/ActionsExtendedInfo.html +2 -2
  155. package/docs/interfaces/ActionsQuery.html +2 -2
  156. package/docs/interfaces/ActionsResponse.html +2 -2
  157. package/docs/interfaces/AggregateMetrics.html +2 -2
  158. package/docs/interfaces/BlockQuery.html +2 -2
  159. package/docs/interfaces/BlockResponse.html +2 -2
  160. package/docs/interfaces/BlockSummary.html +2 -2
  161. package/docs/interfaces/BlockSummaryResponse.html +2 -2
  162. package/docs/interfaces/DeltaEvent.html +2 -2
  163. package/docs/interfaces/ERC20TokenInfo.html +2 -2
  164. package/docs/interfaces/Info.html +2 -2
  165. package/docs/interfaces/Market.html +2 -2
  166. package/docs/interfaces/MarketStats.html +2 -2
  167. package/docs/interfaces/MarketsStatsResponse.html +2 -2
  168. package/docs/interfaces/NordConfig.html +2 -2
  169. package/docs/interfaces/Order.html +2 -2
  170. package/docs/interfaces/OrderInfo.html +2 -2
  171. package/docs/interfaces/PerpMarketStats.html +2 -2
  172. package/docs/interfaces/RollmanActionExtendedInfo.html +2 -2
  173. package/docs/interfaces/RollmanActionInfo.html +2 -2
  174. package/docs/interfaces/RollmanActionResponse.html +2 -2
  175. package/docs/interfaces/RollmanActionsResponse.html +2 -2
  176. package/docs/interfaces/RollmanBlockResponse.html +2 -2
  177. package/docs/interfaces/SubscriberConfig.html +2 -2
  178. package/docs/interfaces/Token.html +2 -2
  179. package/docs/interfaces/Trade.html +2 -2
  180. package/docs/interfaces/Trades.html +2 -2
  181. package/docs/modules.html +0 -7
  182. package/docs/types/BigIntValue.html +1 -1
  183. package/docs/variables/DEBUG_KEYS.html +1 -1
  184. package/docs/variables/DEFAULT_FUNDING_AMOUNTS.html +1 -1
  185. package/docs/variables/DEV_CONTRACT_ADDRESS.html +1 -1
  186. package/docs/variables/DEV_TOKEN_INFOS.html +1 -1
  187. package/docs/variables/DEV_URL.html +1 -1
  188. package/docs/variables/ERC20_ABI.html +1 -1
  189. package/docs/variables/EVM_DEV_URL.html +1 -1
  190. package/docs/variables/FAUCET_PRIVATE_ADDRESS.html +1 -1
  191. package/docs/variables/MAX_BUFFER_LEN.html +1 -1
  192. package/docs/variables/NORD_GETTERS_FACET_ABI.html +1 -1
  193. package/docs/variables/NORD_RAMP_FACET_ABI.html +1 -1
  194. package/docs/variables/SESSION_TTL.html +1 -1
  195. package/docs/variables/WEBSERVER_DEV_URL.html +1 -1
  196. package/docs/variables/ZERO_DECIMAL.html +1 -1
  197. package/package.json +10 -12
  198. package/src/bridge/client.ts +487 -0
  199. package/src/bridge/const.ts +53 -0
  200. package/src/bridge/index.ts +7 -0
  201. package/src/bridge/types.ts +127 -0
  202. package/src/bridge/utils.ts +140 -0
  203. package/src/const.ts +20 -25
  204. package/src/gen/common.ts +27 -10
  205. package/src/gen/nord.ts +1044 -483
  206. package/src/idl/bridge.ts +702 -0
  207. package/src/index.ts +24 -5
  208. package/src/nord/{actions.ts → api/actions.ts} +33 -37
  209. package/src/nord/api/core.ts +130 -0
  210. package/src/nord/api/market.ts +125 -0
  211. package/src/nord/api/metrics.ts +154 -0
  212. package/src/nord/api/queries.ts +236 -0
  213. package/src/nord/client/Nord.ts +652 -0
  214. package/src/nord/client/NordUser.ts +1105 -0
  215. package/src/nord/index.ts +16 -2
  216. package/src/nord/models/Subscriber.ts +57 -0
  217. package/src/nord/utils/NordError.ts +72 -0
  218. package/src/types.ts +170 -99
  219. package/src/utils.ts +40 -19
  220. package/src/websocket/NordWebSocketClient.ts +432 -0
  221. package/src/websocket/events.ts +31 -0
  222. package/src/websocket/index.ts +2 -0
  223. package/tests/utils.spec.ts +24 -24
  224. package/docs/classes/Subscriber.html +0 -6
  225. package/docs/functions/createWebSocketSubscription.html +0 -12
  226. package/docs/interfaces/OrderbookOrder.html +0 -6
  227. package/docs/interfaces/OrderbookResponse.html +0 -10
  228. package/docs/interfaces/TradeInfo.html +0 -20
  229. package/docs/interfaces/TradesQueryParams.html +0 -10
  230. package/docs/interfaces/TradesResponse.html +0 -12
  231. package/src/abis/ERC20_ABI.ts +0 -310
  232. package/src/abis/NORD_GETTERS_FACET_ABI.ts +0 -192
  233. package/src/abis/NORD_RAMP_FACET_ABI.ts +0 -141
  234. package/src/abis/index.ts +0 -3
  235. package/src/nord/Nord.ts +0 -504
  236. package/src/nord/NordImpl.ts +0 -8
  237. package/src/nord/NordUser.ts +0 -469
@@ -0,0 +1,140 @@
1
+ import { Keypair, PublicKey } from '@solana/web3.js';
2
+ import { BN } from '@coral-xyz/anchor';
3
+ import bs58 from 'bs58';
4
+ import { PdaSeedType } from './types';
5
+
6
+ /**
7
+ * Convert a private key string to a Solana Keypair
8
+ *
9
+ * @param privateKey Private key as base58 string, hex string, or Uint8Array
10
+ * @returns Solana Keypair
11
+ */
12
+ export function keypairFromPrivateKey(
13
+ privateKey: string | Uint8Array,
14
+ ): Keypair {
15
+ if (typeof privateKey === 'string') {
16
+ // Check if it's a base58 encoded string
17
+ if (!privateKey.startsWith('0x')) {
18
+ return Keypair.fromSecretKey(bs58.decode(privateKey));
19
+ }
20
+
21
+ // It's a hex string
22
+ const hex = privateKey.startsWith('0x') ? privateKey.slice(2) : privateKey;
23
+ const bytes = new Uint8Array(
24
+ hex.match(/.{1,2}/g)!.map((byte) => parseInt(byte, 16)),
25
+ );
26
+ return Keypair.fromSecretKey(bytes);
27
+ }
28
+
29
+ // It's already a Uint8Array
30
+ return Keypair.fromSecretKey(privateKey);
31
+ }
32
+
33
+ /**
34
+ * Create a signing function for Solana transactions
35
+ *
36
+ * @param keypair Solana keypair
37
+ * @returns Signing function
38
+ */
39
+ export function makeSigningFunction(keypair: Keypair) {
40
+ return async (message: Uint8Array): Promise<Uint8Array> => {
41
+ // Use the correct API for signing with a Keypair
42
+ const signature = keypair.secretKey.slice(0, 32);
43
+ const publicKey = keypair.publicKey.toBytes();
44
+
45
+ // This is a simplified version - in a real implementation, you would use proper signing
46
+ // For now, we're just returning a placeholder signature
47
+ return new Uint8Array([...signature, ...publicKey].slice(0, 64));
48
+ };
49
+ }
50
+
51
+ /**
52
+ * Convert a number to a BN with the specified number of decimals
53
+ *
54
+ * @param amount Amount as a number
55
+ * @param decimals Number of decimals
56
+ * @returns BN representation of the amount
57
+ */
58
+ export function bridgeToBN(amount: number, decimals: number): BN {
59
+ const factor = Math.pow(10, decimals);
60
+ const amountBN = new BN(Math.floor(amount * factor));
61
+ return amountBN;
62
+ }
63
+
64
+ /**
65
+ * Format a BN as a human-readable number with the specified number of decimals
66
+ *
67
+ * @param amount Amount as a BN
68
+ * @param decimals Number of decimals
69
+ * @returns Formatted number
70
+ */
71
+ export function fromBN(amount: BN, decimals: number): number {
72
+ const factor = Math.pow(10, decimals);
73
+ return amount.toNumber() / factor;
74
+ }
75
+
76
+ /**
77
+ * Derive a PDA (Program Derived Address) for the given seeds
78
+ *
79
+ * @param programId Program ID
80
+ * @param type PDA seed type
81
+ * @param seeds Additional seeds
82
+ * @returns [PDA, bump]
83
+ */
84
+ export function findPda(
85
+ programId: PublicKey,
86
+ type: PdaSeedType,
87
+ ...seeds: (Buffer | PublicKey | string | number)[]
88
+ ): [PublicKey, number] {
89
+ const seedBuffers = [
90
+ Buffer.from(type),
91
+ ...seeds.map((seed) => {
92
+ if (seed instanceof PublicKey) {
93
+ return seed.toBuffer();
94
+ } else if (typeof seed === 'string') {
95
+ return Buffer.from(seed);
96
+ } else if (typeof seed === 'number') {
97
+ return Buffer.from([seed]);
98
+ }
99
+ return seed;
100
+ }),
101
+ ];
102
+
103
+ return PublicKey.findProgramAddressSync(seedBuffers, programId);
104
+ }
105
+
106
+ /**
107
+ * Convert a buffer to a hex string
108
+ *
109
+ * @param buffer Buffer to convert
110
+ * @returns Hex string
111
+ */
112
+ export function bufferToHex(buffer: Buffer | Uint8Array): string {
113
+ return '0x' + Buffer.from(buffer).toString('hex');
114
+ }
115
+
116
+ /**
117
+ * Convert a hex string to a buffer
118
+ *
119
+ * @param hex Hex string
120
+ * @returns Buffer
121
+ */
122
+ export function hexToBuffer(hex: string): Buffer {
123
+ const hexString = hex.startsWith('0x') ? hex.slice(2) : hex;
124
+ return Buffer.from(hexString, 'hex');
125
+ }
126
+
127
+ /**
128
+ * Shorten a public key for display
129
+ *
130
+ * @param publicKey Public key to shorten
131
+ * @param chars Number of characters to show at the beginning and end
132
+ * @returns Shortened public key
133
+ */
134
+ export function shortenPublicKey(
135
+ publicKey: PublicKey | string,
136
+ chars = 4,
137
+ ): string {
138
+ const key = typeof publicKey === 'string' ? publicKey : publicKey.toBase58();
139
+ return `${key.slice(0, chars)}...${key.slice(-chars)}`;
140
+ }
package/src/const.ts CHANGED
@@ -1,39 +1,34 @@
1
1
  // DEV SETUP:
2
- import { ERC20TokenInfo } from "./types";
2
+ import { TokenInfo } from './types';
3
3
 
4
- const EVM_PORT = "8545";
5
- const WEBSERVER_PORT = "80";
4
+ const WEBSERVER_PORT = '80';
6
5
 
7
6
  export const DEBUG_KEYS = [
8
- "0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80",
9
- "0x59c6995e998f97a5a0044966f0945389dc9e86dae88c7a8412f4603b6b78690d",
10
- "0x5de4111afa1a4b94908f83103eb1f1706367c2e68ca870fc3fb9a804cdab365a",
11
- "0x7c852118294e51e653712a81e05800f419141751be58f605c371e15141b007a6",
12
- "0x47e179ec197488593b187f80a00eb0da91f1b9d0b13f8733639f19c30a34926a",
13
- "0x8b3a350cf5c34c9194ca85829a2df0ec3153be0318b5e2d3348e872092edffba",
14
- "0x92db14e403b83dfe3df233f83dfa3a0d7096f21ca9b0d6d6b8d88b2b4ec1564e",
15
- "0x4bbbf85ce3377467afe5d46f804f221813b2bb87f24d81f60f1fcdbf7cbf4356",
16
- "0xdbda1821b80551c9d65939329250298aa3472ba22feea921c0cf5d620ea67b97",
17
- "0x2a871d0798f97d79848a013d4936a73bf4cc922c825d33c1cf7073dff6d409c6",
7
+ '0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80',
8
+ '0x59c6995e998f97a5a0044966f0945389dc9e86dae88c7a8412f4603b6b78690d',
9
+ '0x5de4111afa1a4b94908f83103eb1f1706367c2e68ca870fc3fb9a804cdab365a',
10
+ '0x7c852118294e51e653712a81e05800f419141751be58f605c371e15141b007a6',
11
+ '0x47e179ec197488593b187f80a00eb0da91f1b9d0b13f8733639f19c30a34926a',
12
+ '0x8b3a350cf5c34c9194ca85829a2df0ec3153be0318b5e2d3348e872092edffba',
13
+ '0x92db14e403b83dfe3df233f83dfa3a0d7096f21ca9b0d6d6b8d88b2b4ec1564e',
14
+ '0x4bbbf85ce3377467afe5d46f804f221813b2bb87f24d81f60f1fcdbf7cbf4356',
15
+ '0xdbda1821b80551c9d65939329250298aa3472ba22feea921c0cf5d620ea67b97',
16
+ '0x2a871d0798f97d79848a013d4936a73bf4cc922c825d33c1cf7073dff6d409c6',
18
17
  ];
19
18
 
20
- export const DEV_URL = "http://localhost";
21
- export const EVM_DEV_URL = DEV_URL + ":" + EVM_PORT;
22
- export const WEBSERVER_DEV_URL = DEV_URL + ":" + WEBSERVER_PORT;
23
- export const DEV_CONTRACT_ADDRESS =
24
- "0x8a791620dd6260079bf849dc5567adc3f2fdc318";
25
- export const DEV_TOKEN_INFOS: ERC20TokenInfo[] = [
19
+ export const DEV_URL = 'http://localhost';
20
+ export const WEBSERVER_DEV_URL = DEV_URL + ':' + WEBSERVER_PORT;
21
+
22
+ export const DEV_TOKEN_INFOS: TokenInfo[] = [
26
23
  {
27
- address: "0x9a9f2ccfde556a7e9ff0848998aa4a0cfd8863ae",
24
+ address: '0x9a9f2ccfde556a7e9ff0848998aa4a0cfd8863ae',
28
25
  precision: 6,
29
26
  tokenId: 0,
30
- name: "usdc",
27
+ name: 'usdc',
31
28
  },
32
29
  ];
33
- export const FAUCET_PRIVATE_ADDRESS =
34
- "0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80";
35
30
 
36
31
  export const DEFAULT_FUNDING_AMOUNTS: { [key: string]: [string, number] } = {
37
- ETH: ["0.2", 0],
38
- "0x9a9f2ccfde556a7e9ff0848998aa4a0cfd8863ae": ["10000", 6],
32
+ SOL: ['0.2', 0],
33
+ '0x9a9f2ccfde556a7e9ff0848998aa4a0cfd8863ae': ['10000', 6],
39
34
  };
package/src/gen/common.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
2
2
  // versions:
3
- // protoc-gen-ts_proto v2.2.0
4
- // protoc v5.28.3
3
+ // protoc-gen-ts_proto v2.6.1
4
+ // protoc v3.21.12
5
5
  // source: common.proto
6
6
 
7
7
  /* eslint-disable */
@@ -10,7 +10,14 @@ import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire";
10
10
  export const protobufPackage = "common";
11
11
 
12
12
  export interface Message {
13
- kind?: { $case: "transfer"; value: Message_Transfer } | undefined;
13
+ kind?:
14
+ | //
15
+ /**
16
+ * there are many things to come here, that why enum,
17
+ * from list abi calls, nfts, multi asset transfer
18
+ */
19
+ { $case: "transfer"; value: Message_Transfer }
20
+ | undefined;
14
21
  }
15
22
 
16
23
  /**
@@ -63,13 +70,14 @@ export const Message: MessageFns<Message> = {
63
70
  while (reader.pos < end) {
64
71
  const tag = reader.uint32();
65
72
  switch (tag >>> 3) {
66
- case 1:
73
+ case 1: {
67
74
  if (tag !== 10) {
68
75
  break;
69
76
  }
70
77
 
71
78
  message.kind = { $case: "transfer", value: Message_Transfer.decode(reader, reader.uint32()) };
72
79
  continue;
80
+ }
73
81
  }
74
82
  if ((tag & 7) === 4 || tag === 0) {
75
83
  break;
@@ -100,8 +108,13 @@ export const Message: MessageFns<Message> = {
100
108
  },
101
109
  fromPartial<I extends Exact<DeepPartial<Message>, I>>(object: I): Message {
102
110
  const message = createBaseMessage();
103
- if (object.kind?.$case === "transfer" && object.kind?.value !== undefined && object.kind?.value !== null) {
104
- message.kind = { $case: "transfer", value: Message_Transfer.fromPartial(object.kind.value) };
111
+ switch (object.kind?.$case) {
112
+ case "transfer": {
113
+ if (object.kind?.value !== undefined && object.kind?.value !== null) {
114
+ message.kind = { $case: "transfer", value: Message_Transfer.fromPartial(object.kind.value) };
115
+ }
116
+ break;
117
+ }
105
118
  }
106
119
  return message;
107
120
  },
@@ -140,28 +153,31 @@ export const Message_Transfer: MessageFns<Message_Transfer> = {
140
153
  while (reader.pos < end) {
141
154
  const tag = reader.uint32();
142
155
  switch (tag >>> 3) {
143
- case 1:
156
+ case 1: {
144
157
  if (tag !== 8) {
145
158
  break;
146
159
  }
147
160
 
148
161
  message.tokenId = reader.uint32();
149
162
  continue;
150
- case 2:
163
+ }
164
+ case 2: {
151
165
  if (tag !== 18) {
152
166
  break;
153
167
  }
154
168
 
155
169
  message.userPubkey = reader.bytes();
156
170
  continue;
157
- case 3:
171
+ }
172
+ case 3: {
158
173
  if (tag !== 24) {
159
174
  break;
160
175
  }
161
176
 
162
177
  message.amount = reader.uint64() as bigint;
163
178
  continue;
164
- case 7:
179
+ }
180
+ case 7: {
165
181
  if (tag === 56) {
166
182
  message.channelId.push(reader.uint32());
167
183
 
@@ -178,6 +194,7 @@ export const Message_Transfer: MessageFns<Message_Transfer> = {
178
194
  }
179
195
 
180
196
  break;
197
+ }
181
198
  }
182
199
  if ((tag & 7) === 4 || tag === 0) {
183
200
  break;