seismic-viem 1.1.0 → 1.1.2

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.
@@ -46,15 +46,9 @@ __export(exports_src, {
46
46
  serializeSeismicTransaction: () => serializeSeismicTransaction,
47
47
  seismicTestnetGcp2: () => seismicTestnetGcp2,
48
48
  seismicTestnetGcp1: () => seismicTestnetGcp1,
49
- seismicTestnet201: () => seismicTestnet201,
50
- seismicTestnet200: () => seismicTestnet200,
51
49
  seismicTestnet2: () => seismicTestnet2,
52
50
  seismicTestnet1: () => seismicTestnet1,
53
51
  seismicTestnet: () => seismicTestnet,
54
- seismicDevnet3: () => seismicDevnet3,
55
- seismicDevnet2: () => seismicDevnet2,
56
- seismicDevnet1: () => seismicDevnet1,
57
- seismicDevnet: () => seismicDevnet,
58
52
  seismicChainFormatters: () => seismicChainFormatters,
59
53
  secp256k1SigPrecompile: () => secp256k1SigPrecompile,
60
54
  secp256k1Sig: () => secp256k1Sig,
@@ -292,7 +286,7 @@ var signSeismicTxTypedData = async (client, tx) => {
292
286
  var fillNonce = async (client, parameters) => {
293
287
  let account = import_accounts.parseAccount(parameters.account || client.account);
294
288
  const { nonce: nonce_ } = parameters;
295
- if (nonce_) {
289
+ if (nonce_ !== undefined) {
296
290
  return nonce_;
297
291
  }
298
292
  const { blockNumber, blockTag = "latest" } = parameters;
@@ -546,16 +540,12 @@ var seismicChainFormatters = {
546
540
  }
547
541
  };
548
542
  var createSeismicDevnet = ({
549
- node,
550
543
  nodeHost,
551
544
  explorerUrl
552
545
  }) => {
553
- if (!node && !nodeHost) {
554
- throw new Error("Must set `nodeHost` argument, e.g. node-1.seismicdev.net");
555
- } else if (!nodeHost) {
556
- nodeHost = `node-${node}.seismicdev.net`;
546
+ if (!nodeHost) {
547
+ throw new Error("Must set `nodeHost` argument, e.g. gcp-1.seismictest.net");
557
548
  }
558
- let blockExplorerUrl = explorerUrl ?? (node ? `https://explorer-${node}.seismicdev.net` : undefined);
559
549
  return import_viem4.defineChain({
560
550
  id: 5124,
561
551
  name: "Seismic",
@@ -566,13 +556,14 @@ var createSeismicDevnet = ({
566
556
  webSocket: [`wss://${nodeHost}/ws`]
567
557
  }
568
558
  },
569
- blockExplorers: blockExplorerUrl ? {
559
+ blockExplorers: explorerUrl ? {
570
560
  default: {
571
561
  name: "SeismicScan",
572
- url: blockExplorerUrl
562
+ url: explorerUrl
573
563
  }
574
564
  } : undefined,
575
- formatters: seismicChainFormatters
565
+ formatters: seismicChainFormatters,
566
+ testnet: true
576
567
  });
577
568
  };
578
569
  var createSeismicAzTestnet = (n) => createSeismicDevnet({
@@ -583,17 +574,11 @@ var createSeismicGcpTestnet = (n) => createSeismicDevnet({
583
574
  nodeHost: `gcp-${n}.seismictest.net`,
584
575
  explorerUrl: "https://seismic-testnet.socialscan.io"
585
576
  });
586
- var seismicDevnet1 = createSeismicDevnet({ node: 1 });
587
- var seismicDevnet2 = createSeismicDevnet({ node: 2 });
588
- var seismicDevnet3 = createSeismicDevnet({ node: 3 });
589
- var seismicTestnet1 = createSeismicAzTestnet(1);
590
- var seismicTestnet2 = createSeismicAzTestnet(2);
591
577
  var seismicTestnetGcp1 = createSeismicGcpTestnet(1);
592
578
  var seismicTestnetGcp2 = createSeismicGcpTestnet(2);
593
- var seismicTestnet200 = createSeismicAzTestnet(200);
594
- var seismicTestnet201 = createSeismicAzTestnet(201);
579
+ var seismicTestnet1 = seismicTestnetGcp1;
580
+ var seismicTestnet2 = seismicTestnetGcp2;
595
581
  var seismicTestnet = seismicTestnet1;
596
- var seismicDevnet = seismicDevnet1;
597
582
  var localSeismicDevnet = /* @__PURE__ */ import_viem4.defineChain({
598
583
  id: 5124,
599
584
  name: "Seismic",
@@ -604,7 +589,8 @@ var localSeismicDevnet = /* @__PURE__ */ import_viem4.defineChain({
604
589
  ws: ["ws://127.0.0.1:8546"]
605
590
  }
606
591
  },
607
- formatters: seismicChainFormatters
592
+ formatters: seismicChainFormatters,
593
+ testnet: true
608
594
  });
609
595
  var sanvil = /* @__PURE__ */ import_viem4.defineChain({
610
596
  id: 31337,
@@ -616,7 +602,8 @@ var sanvil = /* @__PURE__ */ import_viem4.defineChain({
616
602
  webSocket: ["ws://127.0.0.1:8545"]
617
603
  }
618
604
  },
619
- formatters: seismicChainFormatters
605
+ formatters: seismicChainFormatters,
606
+ testnet: true
620
607
  });
621
608
  // src/contract/contract.ts
622
609
  var import_viem12 = require("viem");
@@ -666,6 +653,9 @@ var remapSeismicParam = (param) => {
666
653
  if (ty === "saddress[]") {
667
654
  return { shielded: true, type: "address[]" };
668
655
  }
656
+ if (ty.startsWith("sbytes")) {
657
+ return { shielded: true, type: ty.slice(1) };
658
+ }
669
659
  return { shielded: false, type: ty };
670
660
  };
671
661
  var remapSeismicAbiInputs = (abiFunction) => {
@@ -202,7 +202,7 @@ var signSeismicTxTypedData = async (client, tx) => {
202
202
  var fillNonce = async (client, parameters) => {
203
203
  let account = parseAccount(parameters.account || client.account);
204
204
  const { nonce: nonce_ } = parameters;
205
- if (nonce_) {
205
+ if (nonce_ !== undefined) {
206
206
  return nonce_;
207
207
  }
208
208
  const { blockNumber, blockTag = "latest" } = parameters;
@@ -463,16 +463,12 @@ var seismicChainFormatters = {
463
463
  }
464
464
  };
465
465
  var createSeismicDevnet = ({
466
- node,
467
466
  nodeHost,
468
467
  explorerUrl
469
468
  }) => {
470
- if (!node && !nodeHost) {
471
- throw new Error("Must set `nodeHost` argument, e.g. node-1.seismicdev.net");
472
- } else if (!nodeHost) {
473
- nodeHost = `node-${node}.seismicdev.net`;
469
+ if (!nodeHost) {
470
+ throw new Error("Must set `nodeHost` argument, e.g. gcp-1.seismictest.net");
474
471
  }
475
- let blockExplorerUrl = explorerUrl ?? (node ? `https://explorer-${node}.seismicdev.net` : undefined);
476
472
  return defineChain({
477
473
  id: 5124,
478
474
  name: "Seismic",
@@ -483,13 +479,14 @@ var createSeismicDevnet = ({
483
479
  webSocket: [`wss://${nodeHost}/ws`]
484
480
  }
485
481
  },
486
- blockExplorers: blockExplorerUrl ? {
482
+ blockExplorers: explorerUrl ? {
487
483
  default: {
488
484
  name: "SeismicScan",
489
- url: blockExplorerUrl
485
+ url: explorerUrl
490
486
  }
491
487
  } : undefined,
492
- formatters: seismicChainFormatters
488
+ formatters: seismicChainFormatters,
489
+ testnet: true
493
490
  });
494
491
  };
495
492
  var createSeismicAzTestnet = (n) => createSeismicDevnet({
@@ -500,17 +497,11 @@ var createSeismicGcpTestnet = (n) => createSeismicDevnet({
500
497
  nodeHost: `gcp-${n}.seismictest.net`,
501
498
  explorerUrl: "https://seismic-testnet.socialscan.io"
502
499
  });
503
- var seismicDevnet1 = createSeismicDevnet({ node: 1 });
504
- var seismicDevnet2 = createSeismicDevnet({ node: 2 });
505
- var seismicDevnet3 = createSeismicDevnet({ node: 3 });
506
- var seismicTestnet1 = createSeismicAzTestnet(1);
507
- var seismicTestnet2 = createSeismicAzTestnet(2);
508
500
  var seismicTestnetGcp1 = createSeismicGcpTestnet(1);
509
501
  var seismicTestnetGcp2 = createSeismicGcpTestnet(2);
510
- var seismicTestnet200 = createSeismicAzTestnet(200);
511
- var seismicTestnet201 = createSeismicAzTestnet(201);
502
+ var seismicTestnet1 = seismicTestnetGcp1;
503
+ var seismicTestnet2 = seismicTestnetGcp2;
512
504
  var seismicTestnet = seismicTestnet1;
513
- var seismicDevnet = seismicDevnet1;
514
505
  var localSeismicDevnet = /* @__PURE__ */ defineChain({
515
506
  id: 5124,
516
507
  name: "Seismic",
@@ -521,7 +512,8 @@ var localSeismicDevnet = /* @__PURE__ */ defineChain({
521
512
  ws: ["ws://127.0.0.1:8546"]
522
513
  }
523
514
  },
524
- formatters: seismicChainFormatters
515
+ formatters: seismicChainFormatters,
516
+ testnet: true
525
517
  });
526
518
  var sanvil = /* @__PURE__ */ defineChain({
527
519
  id: 31337,
@@ -533,7 +525,8 @@ var sanvil = /* @__PURE__ */ defineChain({
533
525
  webSocket: ["ws://127.0.0.1:8545"]
534
526
  }
535
527
  },
536
- formatters: seismicChainFormatters
528
+ formatters: seismicChainFormatters,
529
+ testnet: true
537
530
  });
538
531
  // src/contract/contract.ts
539
532
  import { getContract } from "viem";
@@ -592,6 +585,9 @@ var remapSeismicParam = (param) => {
592
585
  if (ty === "saddress[]") {
593
586
  return { shielded: true, type: "address[]" };
594
587
  }
588
+ if (ty.startsWith("sbytes")) {
589
+ return { shielded: true, type: ty.slice(1) };
590
+ }
595
591
  return { shielded: false, type: ty };
596
592
  };
597
593
  var remapSeismicAbiInputs = (abiFunction) => {
@@ -4504,15 +4500,9 @@ export {
4504
4500
  serializeSeismicTransaction,
4505
4501
  seismicTestnetGcp2,
4506
4502
  seismicTestnetGcp1,
4507
- seismicTestnet201,
4508
- seismicTestnet200,
4509
4503
  seismicTestnet2,
4510
4504
  seismicTestnet1,
4511
4505
  seismicTestnet,
4512
- seismicDevnet3,
4513
- seismicDevnet2,
4514
- seismicDevnet1,
4515
- seismicDevnet,
4516
4506
  seismicChainFormatters,
4517
4507
  secp256k1SigPrecompile,
4518
4508
  secp256k1Sig,
@@ -103,29 +103,21 @@ export declare const seismicRpcSchema: RpcSchema;
103
103
  */
104
104
  export declare const seismicChainFormatters: ChainFormatters;
105
105
  export type CreateSeismicDevnetParams = {
106
- explorerUrl?: string;
107
- } & ({
108
- node?: number;
109
106
  nodeHost: string;
110
- } | {
111
- node: number;
112
- nodeHost?: string;
113
- });
107
+ explorerUrl?: string;
108
+ };
114
109
  export type CreateSeismicTestnetParams = {
115
110
  nodeHost: string;
116
111
  explorerUrl?: string;
117
112
  };
118
113
  /**
119
- * Creates a Seismic development network chain configuration.
114
+ * Creates a Seismic chain configuration.
120
115
  *
121
- * @param {CreateSeismicDevnetParams} params - The parameters for creating a Seismic devnet.
122
- * - `node` (number, optional) - The node number for the devnet. If provided without `nodeHost`,
123
- * the hostname will be generated as `node-{node}.seismicdev.net`.
124
- * - `nodeHost` (string, optional) - The direct hostname for the node. Required if `node` is not provided.
125
- * - `explorerUrl` (string, optional) - Custom block explorer URL. If not provided and `node` exists,
126
- * defaults to `https://explorer-{node}.seismicdev.net`.
116
+ * @param {CreateSeismicDevnetParams} params - The parameters for creating a Seismic chain.
117
+ * - `nodeHost` (string) - The hostname for the node (e.g. `gcp-1.seismictest.net`).
118
+ * - `explorerUrl` (string, optional) - Block explorer URL.
127
119
  *
128
- * @throws {Error} Throws if neither node number nor nodeHost is provided.
120
+ * @throws {Error} Throws if `nodeHost` is not provided.
129
121
  *
130
122
  * @returns {Chain} A chain configuration object containing:
131
123
  * - Chain ID: 5124.
@@ -137,53 +129,22 @@ export type CreateSeismicTestnetParams = {
137
129
  *
138
130
  * @example
139
131
  * ```typescript
140
- * // Create using node number
141
- * const devnet1 = createSeismicDevnet({ node: 1 });
142
- *
143
- * // Create using custom host
144
- * const devnet2 = createSeismicDevnet({ nodeHost: 'custom.node.example.com' });
132
+ * const chain = createSeismicDevnet({ nodeHost: 'gcp-1.seismictest.net' });
145
133
  * ```
146
134
  */
147
- export declare const createSeismicDevnet: ({ node, nodeHost, explorerUrl, }: CreateSeismicDevnetParams) => Chain;
135
+ export declare const createSeismicDevnet: ({ nodeHost, explorerUrl, }: CreateSeismicDevnetParams) => Chain;
148
136
  export declare const createSeismicAzTestnet: (n: number) => Chain;
149
137
  export declare const createSeismicGcpTestnet: (n: number) => Chain;
150
- /**
151
- * The seismic devnet running at node-1.seismicdev.net
152
- * Its associated explorer is at explorer-1.seismicdev.net
153
- *
154
- * This is a single-node network running seismic's fork of reth on --dev mode
155
- */
156
- export declare const seismicDevnet1: Chain;
157
- /**
158
- * The seismic devnet running at node-2.seismicdev.net
159
- * Its associated explorer is at explorer-2.seismicdev.net
160
- *
161
- * This is a single-node network running seismic's fork of reth on --dev mode
162
- */
163
- export declare const seismicDevnet2: Chain;
164
- /**
165
- * The seismic devnet running at node-3.seismicdev.net
166
- * Its associated explorer is at explorer-3.seismicdev.net
167
- *
168
- * This is a single-node network running seismic's fork of reth on --dev mode
169
- */
170
- export declare const seismicDevnet3: Chain;
171
138
  /**
172
139
  * The first seismic testnet
173
140
  *
174
141
  * Nodes coordinate using summit, Seismic's consensus client
175
142
  */
176
- export declare const seismicTestnet1: Chain;
177
- export declare const seismicTestnet2: Chain;
178
143
  export declare const seismicTestnetGcp1: Chain;
179
144
  export declare const seismicTestnetGcp2: Chain;
180
- export declare const seismicTestnet200: Chain;
181
- export declare const seismicTestnet201: Chain;
145
+ export declare const seismicTestnet1: Chain;
146
+ export declare const seismicTestnet2: Chain;
182
147
  export declare const seismicTestnet: Chain;
183
- /**
184
- * An alias for {@link seismicDevnet1}
185
- */
186
- export declare const seismicDevnet: Chain;
187
148
  /**
188
149
  * For connecting to a locally-running seismic-reth instance on --dev mode
189
150
  */
@@ -223,7 +184,7 @@ export declare const localSeismicDevnet: {
223
184
  };
224
185
  };
225
186
  sourceId?: number | undefined | undefined;
226
- testnet?: boolean | undefined | undefined;
187
+ testnet: true;
227
188
  custom?: Record<string, unknown> | undefined;
228
189
  fees?: import("viem").ChainFees<undefined> | undefined;
229
190
  formatters: ChainFormatters;
@@ -269,7 +230,7 @@ export declare const sanvil: {
269
230
  };
270
231
  };
271
232
  sourceId?: number | undefined | undefined;
272
- testnet?: boolean | undefined | undefined;
233
+ testnet: true;
273
234
  custom?: Record<string, unknown> | undefined;
274
235
  fees?: import("viem").ChainFees<undefined> | undefined;
275
236
  formatters: ChainFormatters;
@@ -66,7 +66,7 @@ export declare const getEncryption: (networkPk: string, clientSk?: Hex | undefin
66
66
  * Creates a public client for the Seismic network.
67
67
  *
68
68
  * @param parameters {@link https://viem.sh/docs/clients/public.html#parameters PublicClientConfig}: The same parameters passed into viem's {@link https://viem.sh/docs/clients/public.html | createPublicClient}. Two common args are:
69
- * - `chain` ({@link Chain} | undefined) - The chain configuration to target (e.g., `seismicDevnet`).
69
+ * - `chain` ({@link Chain} | undefined) - The chain configuration to target (e.g., `seismicTestnet`).
70
70
  * - `transport` ({@link Transport}) - The transport layer to use (e.g., an HTTP transport).
71
71
  *
72
72
  * @returns {ShieldedPublicClient<transport, chain, undefined, rpcSchema>}
@@ -74,7 +74,7 @@ export declare const getEncryption: (networkPk: string, clientSk?: Hex | undefin
74
74
  * @example
75
75
  * ```typescript
76
76
  * import { http } from 'viem'
77
- * import { seismicDevnet, createShieldedPublicClient } from 'seismic-viem'
77
+ * import { seismicTestnet, createShieldedPublicClient } from 'seismic-viem'
78
78
  *
79
79
  * const client = await createShieldedPublicClient({
80
80
  * transport: http(),
@@ -90,7 +90,7 @@ export declare const getSeismicClients: <TTransport extends Transport, TChain ex
90
90
  * Creates a wallet client to perform reads & writes on the Seismic network
91
91
  *
92
92
  * @param {GetSeismicClientsParameters} parameters - The configuration object.
93
- * - `chain` ({@link Chain} | undefined) - The chain configuration to target (e.g., `seismicDevnet`).
93
+ * - `chain` ({@link Chain} | undefined) - The chain configuration to target (e.g., `seismicTestnet`).
94
94
  * - `transport` ({@link Transport}) - The transport layer to use (e.g., an HTTP transport).
95
95
  * - `account` ({@link Account}) - The account to use for wallet operations.
96
96
  * - `encryptionSk` (string) - The secret key used for shielded encryption.
@@ -102,10 +102,10 @@ export declare const getSeismicClients: <TTransport extends Transport, TChain ex
102
102
  * ```typescript
103
103
  * import { http } from 'viem'
104
104
  * import { privateKeyToAccount } from 'viem/accounts'
105
- * import { seismicDevnet, createShieldedWalletClient } from 'seismic-viem'
105
+ * import { seismicTestnet, createShieldedWalletClient } from 'seismic-viem'
106
106
  *
107
107
  * const walletClient = await createShieldedWalletClient({
108
- * chain: seismicDevnet,
108
+ * chain: seismicTestnet,
109
109
  * transport: http(),
110
110
  * account: privateKeyToAccount('0x0123...')
111
111
  * });
@@ -21,10 +21,10 @@ export declare const getPlaintextCalldata: <TChain extends Chain | undefined, TA
21
21
  *
22
22
  * @example
23
23
  * import { custom, parseAbi } from 'viem'
24
- * import { createShieldedWalletContract, shieldedWriteContract, seismicDevnet } from 'seismic-viem'
24
+ * import { createShieldedWalletContract, shieldedWriteContract, seismicTestnet } from 'seismic-viem'
25
25
  *
26
26
  * const client = createShieldedWalletClient({
27
- * chain: seismicDevnet,
27
+ * chain: seismicTestnet,
28
28
  * transport: custom(window.ethereum),
29
29
  * })
30
30
  * const hash = await shieldedWriteContract(client, {
@@ -1,7 +1,7 @@
1
1
  export type { SeismicTxExtras, SeismicTransactionRequest, TransactionSerializableSeismic, CreateSeismicDevnetParams, } from './chain.ts';
2
2
  export type { TxSeismicMetadata } from './metadata.ts';
3
3
  export { buildTxSeismicMetadata } from './metadata.ts';
4
- export { sanvil, seismicDevnet1, seismicDevnet2, seismicDevnet3, seismicDevnet, seismicTestnet, seismicTestnet1, seismicTestnet2, seismicTestnet200, seismicTestnet201, seismicTestnetGcp1, seismicTestnetGcp2, localSeismicDevnet, createSeismicDevnet, createSeismicAzTestnet, createSeismicGcpTestnet, serializeSeismicTransaction, seismicChainFormatters, SEISMIC_TX_TYPE, } from './chain.ts';
4
+ export { sanvil, seismicTestnet, seismicTestnet1, seismicTestnet2, seismicTestnetGcp1, seismicTestnetGcp2, localSeismicDevnet, createSeismicDevnet, createSeismicAzTestnet, createSeismicGcpTestnet, serializeSeismicTransaction, seismicChainFormatters, SEISMIC_TX_TYPE, } from './chain.ts';
5
5
  export { signSeismicTxTypedData } from './signSeismicTypedData.ts';
6
6
  export { getShieldedContract } from './contract/contract.ts';
7
7
  export { signedReadContract } from './contract/read.ts';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "seismic-viem",
3
- "version": "1.1.0",
3
+ "version": "1.1.2",
4
4
  "description": "Typescript interface for Seismic",
5
5
  "type": "module",
6
6
  "main": "./dist/_cjs/index.js",