@etherkit/viem-tx-tracker 0.0.4 → 0.0.5

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.
@@ -1,5 +1,5 @@
1
1
  import { type Account, type Chain, type PublicClient, type Transport, type WalletClient } from 'viem';
2
- import type { TrackedWalletClient } from './types.js';
2
+ import type { PopulatedMetadata, TrackedWalletClient, TrackedWalletClientAutoPopulate } from './types.js';
3
3
  /**
4
4
  * Infer transport type from WalletClient
5
5
  */
@@ -25,6 +25,22 @@ export interface TrackedWalletClientBuilder<TMetadata> {
25
25
  */
26
26
  using<TClient extends WalletClient>(walletClient: TClient, publicClient: PublicClient): TrackedWalletClient<TMetadata, InferTransport<TClient>, InferChain<TClient>, InferAccount<TClient>>;
27
27
  }
28
+ /**
29
+ * Builder interface returned by createTrackedWalletClient with populateMetadata: true.
30
+ * This builder returns a TrackedWalletClientAutoPopulate that auto-populates operation, functionName and args.
31
+ * TMetadata must be a type where FunctionCallMetadata is assignable to it.
32
+ */
33
+ export interface TrackedWalletClientAutoPopulateBuilder<TMetadata> {
34
+ /**
35
+ * Create the tracked wallet client using the provided wallet and public clients.
36
+ * writeContract and writeContractSync will automatically populate operation, functionName and args.
37
+ *
38
+ * @param walletClient - The underlying viem WalletClient
39
+ * @param publicClient - A PublicClient for nonce fetching and tx verification
40
+ * @returns A TrackedWalletClientAutoPopulate instance
41
+ */
42
+ using<TClient extends WalletClient>(walletClient: TClient, publicClient: PublicClient): TrackedWalletClientAutoPopulate<TMetadata, InferTransport<TClient>, InferChain<TClient>, InferAccount<TClient>>;
43
+ }
28
44
  /**
29
45
  * Create a tracked wallet client that wraps a viem WalletClient.
30
46
  *
@@ -39,15 +55,30 @@ export interface TrackedWalletClientBuilder<TMetadata> {
39
55
  *
40
56
  * @example
41
57
  * ```typescript
42
- * // With required metadata
58
+ * // Standard mode with required metadata
43
59
  * const tracked = createTrackedWalletClient<{purpose: string}>()
44
60
  * .using(walletClient, publicClient);
45
61
  *
46
- * // With optional metadata
62
+ * // Standard mode with optional metadata
47
63
  * const tracked = createTrackedWalletClient<{purpose: string} | undefined>()
48
64
  * .using(walletClient, publicClient);
65
+ *
66
+ * // Auto-populate mode - functionName and args are auto-populated
67
+ * const tracked = createTrackedWalletClient({ populateMetadata: true })
68
+ * .using(walletClient, publicClient);
69
+ *
70
+ * // Auto-populate mode with extended metadata
71
+ * type MyMetadata = OperationMetadata & { purpose: string };
72
+ * const tracked = createTrackedWalletClient<MyMetadata>({ populateMetadata: true })
73
+ * .using(walletClient, publicClient);
49
74
  * ```
50
75
  */
51
76
  export declare function createTrackedWalletClient<TMetadata>(): TrackedWalletClientBuilder<TMetadata>;
77
+ export declare function createTrackedWalletClient(options: {
78
+ populateMetadata: true;
79
+ }): TrackedWalletClientAutoPopulateBuilder<PopulatedMetadata>;
80
+ export declare function createTrackedWalletClient<TMetadata>(options: {
81
+ populateMetadata: true;
82
+ }): TrackedWalletClientAutoPopulateBuilder<TMetadata>;
52
83
  export {};
53
84
  //# sourceMappingURL=TrackedWalletClient.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TrackedWalletClient.d.ts","sourceRoot":"","sources":["../src/TrackedWalletClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAIN,KAAK,OAAO,EAEZ,KAAK,KAAK,EAIV,KAAK,YAAY,EAGjB,KAAK,SAAS,EACd,KAAK,YAAY,EACjB,MAAM,MAAM,CAAC;AAEd,OAAO,KAAK,EAOX,mBAAmB,EAEnB,MAAM,YAAY,CAAC;AA+CpB;;GAEG;AACH,KAAK,cAAc,CAAC,CAAC,IACpB,CAAC,SAAS,YAAY,CAAC,MAAM,UAAU,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,UAAU,GAAG,SAAS,CAAC;AAE7E;;GAEG;AACH,KAAK,UAAU,CAAC,CAAC,IAChB,CAAC,SAAS,YAAY,CAAC,GAAG,EAAE,MAAM,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,GAAG,KAAK,GAAG,SAAS,CAAC;AAE7E;;GAEG;AACH,KAAK,YAAY,CAAC,CAAC,IAClB,CAAC,SAAS,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC,GAC7C,QAAQ,GACR,OAAO,GAAG,SAAS,CAAC;AAExB;;GAEG;AACH,MAAM,WAAW,0BAA0B,CAAC,SAAS;IACpD;;;;;;OAMG;IACH,KAAK,CAAC,OAAO,SAAS,YAAY,EACjC,YAAY,EAAE,OAAO,EACrB,YAAY,EAAE,YAAY,GACxB,mBAAmB,CACrB,SAAS,EACT,cAAc,CAAC,OAAO,CAAC,EACvB,UAAU,CAAC,OAAO,CAAC,EACnB,YAAY,CAAC,OAAO,CAAC,CACrB,CAAC;CACF;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,yBAAyB,CACxC,SAAS,KACL,0BAA0B,CAAC,SAAS,CAAC,CA6ZzC"}
1
+ {"version":3,"file":"TrackedWalletClient.d.ts","sourceRoot":"","sources":["../src/TrackedWalletClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAIN,KAAK,OAAO,EAEZ,KAAK,KAAK,EAIV,KAAK,YAAY,EAGjB,KAAK,SAAS,EACd,KAAK,YAAY,EACjB,MAAM,MAAM,CAAC;AAEd,OAAO,KAAK,EAIX,iBAAiB,EAIjB,mBAAmB,EACnB,+BAA+B,EAG/B,MAAM,YAAY,CAAC;AA+CpB;;GAEG;AACH,KAAK,cAAc,CAAC,CAAC,IACpB,CAAC,SAAS,YAAY,CAAC,MAAM,UAAU,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,UAAU,GAAG,SAAS,CAAC;AAE7E;;GAEG;AACH,KAAK,UAAU,CAAC,CAAC,IAChB,CAAC,SAAS,YAAY,CAAC,GAAG,EAAE,MAAM,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,GAAG,KAAK,GAAG,SAAS,CAAC;AAE7E;;GAEG;AACH,KAAK,YAAY,CAAC,CAAC,IAClB,CAAC,SAAS,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC,GAC7C,QAAQ,GACR,OAAO,GAAG,SAAS,CAAC;AAExB;;GAEG;AACH,MAAM,WAAW,0BAA0B,CAAC,SAAS;IACpD;;;;;;OAMG;IACH,KAAK,CAAC,OAAO,SAAS,YAAY,EACjC,YAAY,EAAE,OAAO,EACrB,YAAY,EAAE,YAAY,GACxB,mBAAmB,CACrB,SAAS,EACT,cAAc,CAAC,OAAO,CAAC,EACvB,UAAU,CAAC,OAAO,CAAC,EACnB,YAAY,CAAC,OAAO,CAAC,CACrB,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,WAAW,sCAAsC,CAAC,SAAS;IAChE;;;;;;;OAOG;IACH,KAAK,CAAC,OAAO,SAAS,YAAY,EACjC,YAAY,EAAE,OAAO,EACrB,YAAY,EAAE,YAAY,GACxB,+BAA+B,CACjC,SAAS,EACT,cAAc,CAAC,OAAO,CAAC,EACvB,UAAU,CAAC,OAAO,CAAC,EACnB,YAAY,CAAC,OAAO,CAAC,CACrB,CAAC;CACF;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAEH,wBAAgB,yBAAyB,CACxC,SAAS,KACL,0BAA0B,CAAC,SAAS,CAAC,CAAC;AAG3C,wBAAgB,yBAAyB,CAAC,OAAO,EAAE;IAClD,gBAAgB,EAAE,IAAI,CAAC;CACvB,GAAG,sCAAsC,CAAC,iBAAiB,CAAC,CAAC;AAG9D,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,OAAO,EAAE;IAC7D,gBAAgB,EAAE,IAAI,CAAC;CACvB,GAAG,sCAAsC,CAAC,SAAS,CAAC,CAAC"}
@@ -29,30 +29,12 @@ function normalizeAccount(account) {
29
29
  function generateTrackingId() {
30
30
  return crypto.randomUUID();
31
31
  }
32
- /**
33
- * Create a tracked wallet client that wraps a viem WalletClient.
34
- *
35
- * The tracked client provides the same API as WalletClient but with:
36
- * - Metadata field for transaction tracking (required unless TMetadata includes undefined)
37
- * - Automatic nonce fetching (with 'pending' by default)
38
- * - Post-broadcast transaction verification
39
- * - Event emission for tracking
40
- *
41
- * @typeParam TMetadata - The metadata type. Use `MyMeta | undefined` to make metadata optional.
42
- * @returns A builder with a `.using()` method to provide the wallet and public clients
43
- *
44
- * @example
45
- * ```typescript
46
- * // With required metadata
47
- * const tracked = createTrackedWalletClient<{purpose: string}>()
48
- * .using(walletClient, publicClient);
49
- *
50
- * // With optional metadata
51
- * const tracked = createTrackedWalletClient<{purpose: string} | undefined>()
52
- * .using(walletClient, publicClient);
53
- * ```
54
- */
55
- export function createTrackedWalletClient() {
32
+ // Implementation
33
+ export function createTrackedWalletClient(options) {
34
+ const populateMetadata = options?.populateMetadata ?? false;
35
+ if (populateMetadata) {
36
+ return createAutoPopulateBuilder();
37
+ }
56
38
  return {
57
39
  using(walletClient, publicClient) {
58
40
  // Create emitter for transaction broadcast events
@@ -276,4 +258,233 @@ export function createTrackedWalletClient() {
276
258
  },
277
259
  };
278
260
  }
261
+ /**
262
+ * Create an auto-populate builder for TrackedWalletClient.
263
+ * This builder auto-populates operation, functionName and args in writeContract metadata.
264
+ */
265
+ function createAutoPopulateBuilder() {
266
+ return {
267
+ using(walletClient, publicClient) {
268
+ // Create emitter for transaction broadcast events
269
+ const emitter = new Emitter();
270
+ /**
271
+ * Resolve the nonce to use for a transaction.
272
+ */
273
+ async function resolveNonce(nonceOption, from) {
274
+ if (typeof nonceOption === 'number') {
275
+ return nonceOption;
276
+ }
277
+ const blockTag = isBlockTag(nonceOption) ? nonceOption : 'pending';
278
+ return await publicClient.getTransactionCount({
279
+ address: from,
280
+ blockTag,
281
+ });
282
+ }
283
+ /**
284
+ * Extract common transaction context (account, nonce) from request args.
285
+ */
286
+ async function extractTransactionContext(args) {
287
+ const account = args.account ?? walletClient.account;
288
+ const from = resolveAccountAddress(account);
289
+ if (!from) {
290
+ throw new Error('[TrackedWalletClient] No account available. ' +
291
+ 'Provide an account in the request or configure the wallet client with an account.');
292
+ }
293
+ const intendedNonce = await resolveNonce(args.nonce, from);
294
+ return { from, intendedNonce };
295
+ }
296
+ /**
297
+ * Extract transaction context from a serialized (signed) transaction.
298
+ */
299
+ async function extractRawTransactionContext(serializedTransaction) {
300
+ const parsedTx = parseTransaction(serializedTransaction);
301
+ if (parsedTx.nonce === undefined) {
302
+ throw new Error('[TrackedWalletClient] Could not extract nonce from serialized transaction.');
303
+ }
304
+ const from = await recoverTransactionAddress({
305
+ serializedTransaction,
306
+ });
307
+ return {
308
+ from,
309
+ intendedNonce: parsedTx.nonce,
310
+ };
311
+ }
312
+ /**
313
+ * Fetch the transaction after broadcast to verify nonce.
314
+ */
315
+ async function verifyTransactionNonce(hash, intendedNonce) {
316
+ try {
317
+ const tx = await publicClient.getTransaction({ hash });
318
+ const actualNonce = tx.nonce;
319
+ if (actualNonce !== intendedNonce) {
320
+ console.warn(`[TrackedWalletClient] Nonce mismatch: intended ${intendedNonce}, actual ${actualNonce}. ` +
321
+ `Wallet may have overridden the nonce.`);
322
+ }
323
+ return actualNonce;
324
+ }
325
+ catch (fetchError) {
326
+ console.warn(`[TrackedWalletClient] Could not fetch tx ${hash} after broadcast. ` +
327
+ `It may not be in the mempool yet.`);
328
+ return intendedNonce;
329
+ }
330
+ }
331
+ /**
332
+ * Create a tracked transaction record.
333
+ */
334
+ function createTrackedTransactionRecord(txHash, from, nonce, metadata) {
335
+ return {
336
+ hash: txHash,
337
+ from,
338
+ nonce,
339
+ chainId: walletClient.chain?.id,
340
+ metadata,
341
+ broadcastTimestampMs: Date.now(),
342
+ };
343
+ }
344
+ /**
345
+ * Validate that user didn't provide operation, functionName or args in metadata
346
+ * when populateMetadata is enabled.
347
+ */
348
+ function validateNoAutoPopulatedFieldsInMetadata(userMetadata) {
349
+ if (userMetadata && typeof userMetadata === 'object') {
350
+ if ('type' in userMetadata) {
351
+ throw new Error('[TrackedWalletClient] Cannot specify type in metadata when populateMetadata is enabled. ' +
352
+ 'The type is automatically populated from the contract call.');
353
+ }
354
+ if ('functionName' in userMetadata) {
355
+ throw new Error('[TrackedWalletClient] Cannot specify functionName in metadata when populateMetadata is enabled. ' +
356
+ 'The functionName is automatically populated from the contract call.');
357
+ }
358
+ if ('args' in userMetadata) {
359
+ throw new Error('[TrackedWalletClient] Cannot specify args in metadata when populateMetadata is enabled. ' +
360
+ 'The args are automatically populated from the contract call.');
361
+ }
362
+ }
363
+ }
364
+ /**
365
+ * Common wrapper for transaction methods that broadcast.
366
+ */
367
+ async function executeTrackedTransaction(args) {
368
+ const { metadata, restArgs, execute, extractHash } = args;
369
+ const { from, intendedNonce } = await extractTransactionContext(args);
370
+ const result = await execute({
371
+ ...restArgs,
372
+ nonce: intendedNonce,
373
+ });
374
+ const hash = extractHash(result);
375
+ const actualNonce = await verifyTransactionNonce(hash, intendedNonce);
376
+ const trackedTx = createTrackedTransactionRecord(hash, from, actualNonce, metadata);
377
+ emitter.emit('transaction:broadcasted', trackedTx);
378
+ return result;
379
+ }
380
+ /**
381
+ * Common wrapper for raw transaction broadcasts.
382
+ */
383
+ async function executeTrackedRawTransaction(args) {
384
+ const { serializedTransaction, metadata, execute, extractHash } = args;
385
+ const { from, intendedNonce } = await extractRawTransactionContext(serializedTransaction);
386
+ const result = await execute();
387
+ const hash = extractHash(result);
388
+ const trackedTx = createTrackedTransactionRecord(hash, from, intendedNonce, metadata);
389
+ emitter.emit('transaction:broadcasted', trackedTx);
390
+ return result;
391
+ }
392
+ return {
393
+ walletClient: walletClient,
394
+ publicClient,
395
+ // ============================================
396
+ // Async methods (return hash)
397
+ // ============================================
398
+ async writeContract(args) {
399
+ const { metadata: userMetadata, nonce, ...writeArgs } = args;
400
+ // Validate that user didn't provide operation, functionName or args
401
+ validateNoAutoPopulatedFieldsInMetadata(userMetadata);
402
+ // Auto-populate type, functionName and args
403
+ const finalMetadata = {
404
+ ...(userMetadata ?? {}),
405
+ type: 'functionCall',
406
+ functionName: args.functionName,
407
+ args: args.args,
408
+ };
409
+ return executeTrackedTransaction({
410
+ account: normalizeAccount(args.account),
411
+ nonce,
412
+ metadata: finalMetadata,
413
+ restArgs: writeArgs,
414
+ execute: (argsWithNonce) => walletClient.writeContract(argsWithNonce),
415
+ extractHash: (hash) => hash,
416
+ });
417
+ },
418
+ async sendTransaction(args) {
419
+ const { metadata, nonce, ...sendArgs } = args;
420
+ return executeTrackedTransaction({
421
+ account: normalizeAccount(args.account),
422
+ nonce,
423
+ metadata: metadata,
424
+ restArgs: sendArgs,
425
+ execute: (argsWithNonce) => walletClient.sendTransaction(argsWithNonce),
426
+ extractHash: (hash) => hash,
427
+ });
428
+ },
429
+ async sendRawTransaction(args) {
430
+ const { metadata, serializedTransaction } = args;
431
+ return executeTrackedRawTransaction({
432
+ serializedTransaction,
433
+ metadata: metadata,
434
+ execute: () => walletClient.sendRawTransaction({ serializedTransaction }),
435
+ extractHash: (hash) => hash,
436
+ });
437
+ },
438
+ // ============================================
439
+ // Sync methods (return receipt, wait for confirmation)
440
+ // ============================================
441
+ async writeContractSync(args) {
442
+ const { metadata: userMetadata, nonce, ...writeArgs } = args;
443
+ // Validate that user didn't provide operation, functionName or args
444
+ validateNoAutoPopulatedFieldsInMetadata(userMetadata);
445
+ // Auto-populate type, functionName and args
446
+ const finalMetadata = {
447
+ ...(userMetadata ?? {}),
448
+ type: 'functionCall',
449
+ functionName: args.functionName,
450
+ args: args.args,
451
+ };
452
+ return executeTrackedTransaction({
453
+ account: normalizeAccount(args.account),
454
+ nonce,
455
+ metadata: finalMetadata,
456
+ restArgs: writeArgs,
457
+ execute: (argsWithNonce) => walletClient.writeContractSync(argsWithNonce),
458
+ extractHash: (receipt) => receipt.transactionHash,
459
+ });
460
+ },
461
+ async sendTransactionSync(args) {
462
+ const { metadata, nonce, ...sendArgs } = args;
463
+ return executeTrackedTransaction({
464
+ account: normalizeAccount(args.account),
465
+ nonce,
466
+ metadata: metadata,
467
+ restArgs: sendArgs,
468
+ execute: (argsWithNonce) => walletClient.sendTransactionSync(argsWithNonce),
469
+ extractHash: (receipt) => receipt.transactionHash,
470
+ });
471
+ },
472
+ async sendRawTransactionSync(args) {
473
+ const { metadata, serializedTransaction } = args;
474
+ return executeTrackedRawTransaction({
475
+ serializedTransaction,
476
+ metadata: metadata,
477
+ execute: () => walletClient.sendRawTransactionSync({ serializedTransaction }),
478
+ extractHash: (receipt) => receipt.transactionHash,
479
+ });
480
+ },
481
+ // ============================================
482
+ // Event subscription methods
483
+ // ============================================
484
+ onTransactionBroadcasted: (listener) => emitter.on('transaction:broadcasted', listener),
485
+ offTransactionBroadcasted: (listener) => emitter.off('transaction:broadcasted', listener),
486
+ };
487
+ },
488
+ };
489
+ }
279
490
  //# sourceMappingURL=TrackedWalletClient.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TrackedWalletClient.js","sourceRoot":"","sources":["../src/TrackedWalletClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TrackedWalletClient.js","sourceRoot":"","sources":["../src/TrackedWalletClient.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,gBAAgB,EAChB,yBAAyB,GAazB,MAAM,MAAM,CAAC;AACd,OAAO,EAAC,OAAO,EAAC,MAAM,SAAS,CAAC;AAehC;;GAEG;AACH,SAAS,UAAU,CAAC,KAAc;IACjC,OAAO,CACN,OAAO,KAAK,KAAK,QAAQ;QACzB,CAAC,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CACtE,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,qBAAqB,CAC7B,OAA6C;IAE7C,IAAI,CAAC,OAAO;QAAE,OAAO,SAAS,CAAC;IAC/B,IAAI,OAAO,OAAO,KAAK,QAAQ;QAAE,OAAO,OAAO,CAAC;IAChD,OAAO,OAAO,CAAC,OAAO,CAAC;AACxB,CAAC;AAED;;GAEG;AACH,SAAS,gBAAgB,CACxB,OAA6C;IAE7C,OAAO,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC;AAC/C,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB;IAC1B,OAAO,MAAM,CAAC,UAAU,EAAE,CAAC;AAC5B,CAAC;AA4HD,iBAAiB;AACjB,MAAM,UAAU,yBAAyB,CACxC,OAAmD;IAInD,MAAM,gBAAgB,GAAG,OAAO,EAAE,gBAAgB,IAAI,KAAK,CAAC;IAE5D,IAAI,gBAAgB,EAAE,CAAC;QACtB,OAAO,yBAAyB,EAAkE,CAAC;IACpG,CAAC;IAED,OAAO;QACN,KAAK,CACJ,YAAqB,EACrB,YAA0B;YAY1B,kDAAkD;YAClD,MAAM,OAAO,GAAG,IAAI,OAAO,EAEvB,CAAC;YAEL;;;;;;eAMG;YACH,KAAK,UAAU,YAAY,CAC1B,WAAoC,EACpC,IAAa;gBAEb,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;oBACrC,8BAA8B;oBAC9B,OAAO,WAAW,CAAC;gBACpB,CAAC;gBAED,qDAAqD;gBACrD,MAAM,QAAQ,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;gBACnE,OAAO,MAAM,YAAY,CAAC,mBAAmB,CAAC;oBAC7C,OAAO,EAAE,IAAI;oBACb,QAAQ;iBACR,CAAC,CAAC;YACJ,CAAC;YAED;;;;;;eAMG;YACH,KAAK,UAAU,yBAAyB,CAAC,IAGxC;gBACA,2BAA2B;gBAC3B,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,YAAY,CAAC,OAAO,CAAC;gBACrD,MAAM,IAAI,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAC;gBAE5C,IAAI,CAAC,IAAI,EAAE,CAAC;oBACX,MAAM,IAAI,KAAK,CACd,8CAA8C;wBAC7C,mFAAmF,CACpF,CAAC;gBACH,CAAC;gBAED,gBAAgB;gBAChB,MAAM,aAAa,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;gBAE3D,OAAO,EAAC,IAAI,EAAE,aAAa,EAAC,CAAC;YAC9B,CAAC;YAED;;;;;;eAMG;YACH,KAAK,UAAU,4BAA4B,CAC1C,qBAA4C;gBAE5C,oDAAoD;gBACpD,MAAM,QAAQ,GAAG,gBAAgB,CAAC,qBAAqB,CAAC,CAAC;gBAEzD,IAAI,QAAQ,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;oBAClC,MAAM,IAAI,KAAK,CACd,4EAA4E,CAC5E,CAAC;gBACH,CAAC;gBAED,gDAAgD;gBAChD,MAAM,IAAI,GAAG,MAAM,yBAAyB,CAAC;oBAC5C,qBAAqB;iBACrB,CAAC,CAAC;gBAEH,OAAO;oBACN,IAAI;oBACJ,aAAa,EAAE,QAAQ,CAAC,KAAK;iBAC7B,CAAC;YACH,CAAC;YAED;;;;;;;eAOG;YACH,KAAK,UAAU,sBAAsB,CACpC,IAAU,EACV,aAAqB;gBAErB,IAAI,CAAC;oBACJ,MAAM,EAAE,GAAG,MAAM,YAAY,CAAC,cAAc,CAAC,EAAC,IAAI,EAAC,CAAC,CAAC;oBACrD,MAAM,WAAW,GAAG,EAAE,CAAC,KAAK,CAAC;oBAE7B,IAAI,WAAW,KAAK,aAAa,EAAE,CAAC;wBACnC,OAAO,CAAC,IAAI,CACX,kDAAkD,aAAa,YAAY,WAAW,IAAI;4BACzF,uCAAuC,CACxC,CAAC;oBACH,CAAC;oBAED,OAAO,WAAW,CAAC;gBACpB,CAAC;gBAAC,OAAO,UAAU,EAAE,CAAC;oBACrB,6CAA6C;oBAC7C,OAAO,CAAC,IAAI,CACX,4CAA4C,IAAI,oBAAoB;wBACnE,mCAAmC,CACpC,CAAC;oBACF,OAAO,aAAa,CAAC;gBACtB,CAAC;YACF,CAAC;YAED;;eAEG;YACH,SAAS,8BAA8B,CACtC,MAAY,EACZ,IAAa,EACb,KAAa,EACb,QAAmB;gBAEnB,OAAO;oBACN,IAAI,EAAE,MAAM;oBACZ,IAAI;oBACJ,KAAK;oBACL,OAAO,EAAE,YAAY,CAAC,KAAK,EAAE,EAAE;oBAC/B,QAAQ;oBACR,oBAAoB,EAAE,IAAI,CAAC,GAAG,EAAE;iBAChC,CAAC;YACH,CAAC;YAED;;;eAGG;YACH,KAAK,UAAU,yBAAyB,CAAO,IAO9C;gBACA,MAAM,EAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAC,GAAG,IAAI,CAAC;gBAExD,yBAAyB;gBACzB,MAAM,EAAC,IAAI,EAAE,aAAa,EAAC,GAAG,MAAM,yBAAyB,CAAC,IAAI,CAAC,CAAC;gBAEpE,yDAAyD;gBACzD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC;oBAC5B,GAAG,QAAQ;oBACX,KAAK,EAAE,aAAa;iBAGpB,CAAC,CAAC;gBACH,MAAM,IAAI,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;gBAEjC,0CAA0C;gBAC1C,MAAM,WAAW,GAAG,MAAM,sBAAsB,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;gBAEtE,oCAAoC;gBACpC,MAAM,SAAS,GAAG,8BAA8B,CAC/C,IAAI,EACJ,IAAI,EACJ,WAAW,EACX,QAAQ,CACR,CAAC;gBAEF,qCAAqC;gBACrC,OAAO,CAAC,IAAI,CAAC,yBAAyB,EAAE,SAAS,CAAC,CAAC;gBAEnD,OAAO,MAAM,CAAC;YACf,CAAC;YAED;;;eAGG;YACH,KAAK,UAAU,4BAA4B,CAAI,IAK9C;gBACA,MAAM,EAAC,qBAAqB,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAC,GAAG,IAAI,CAAC;gBAErE,kDAAkD;gBAClD,MAAM,EAAC,IAAI,EAAE,aAAa,EAAC,GAAG,MAAM,4BAA4B,CAC/D,qBAAqB,CACrB,CAAC;gBAEF,wBAAwB;gBACxB,MAAM,MAAM,GAAG,MAAM,OAAO,EAAE,CAAC;gBAC/B,MAAM,IAAI,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;gBAEjC,iFAAiF;gBACjF,kEAAkE;gBAElE,oCAAoC;gBACpC,MAAM,SAAS,GAAG,8BAA8B,CAC/C,IAAI,EACJ,IAAI,EACJ,aAAa,EACb,QAAQ,CACR,CAAC;gBAEF,qCAAqC;gBACrC,OAAO,CAAC,IAAI,CAAC,yBAAyB,EAAE,SAAS,CAAC,CAAC;gBAEnD,OAAO,MAAM,CAAC;YACf,CAAC;YAED,OAAO;gBACN,YAAY,EAAE,YAIb;gBACD,YAAY;gBAEZ,+CAA+C;gBAC/C,8BAA8B;gBAC9B,+CAA+C;gBAE/C,KAAK,CAAC,aAAa,CAalB,IAQC;oBAED,MAAM,EAAC,QAAQ,EAAE,KAAK,EAAE,GAAG,SAAS,EAAC,GAAG,IAAI,CAAC;oBAE7C,OAAO,yBAAyB,CAAC;wBAChC,OAAO,EAAE,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC;wBACvC,KAAK;wBACL,QAAQ,EAAE,QAAqB;wBAC/B,QAAQ,EAAE,SAAS;wBACnB,OAAO,EAAE,CAAC,aAAa,EAAE,EAAE,CAC1B,YAAY,CAAC,aAAa,CAAC,aAAoB,CAAC;wBACjD,WAAW,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI;qBAC3B,CAAC,CAAC;gBACJ,CAAC;gBAED,KAAK,CAAC,eAAe,CAGpB,IAKC;oBAED,MAAM,EAAC,QAAQ,EAAE,KAAK,EAAE,GAAG,QAAQ,EAAC,GAAG,IAAI,CAAC;oBAE5C,OAAO,yBAAyB,CAAC;wBAChC,OAAO,EAAE,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC;wBACvC,KAAK;wBACL,QAAQ,EAAE,QAAqB;wBAC/B,QAAQ,EAAE,QAAQ;wBAClB,OAAO,EAAE,CAAC,aAAa,EAAE,EAAE,CAC1B,YAAY,CAAC,eAAe,CAAC,aAAoB,CAAC;wBACnD,WAAW,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI;qBAC3B,CAAC,CAAC;gBACJ,CAAC;gBAED,KAAK,CAAC,kBAAkB,CACvB,IAAgD;oBAEhD,MAAM,EAAC,QAAQ,EAAE,qBAAqB,EAAC,GAAG,IAAI,CAAC;oBAE/C,OAAO,4BAA4B,CAAC;wBACnC,qBAAqB;wBACrB,QAAQ,EAAE,QAAqB;wBAC/B,OAAO,EAAE,GAAG,EAAE,CACb,YAAY,CAAC,kBAAkB,CAAC,EAAC,qBAAqB,EAAC,CAAC;wBACzD,WAAW,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI;qBAC3B,CAAC,CAAC;gBACJ,CAAC;gBAED,+CAA+C;gBAC/C,uDAAuD;gBACvD,+CAA+C;gBAE/C,KAAK,CAAC,iBAAiB,CAatB,IAQC;oBAED,MAAM,EAAC,QAAQ,EAAE,KAAK,EAAE,GAAG,SAAS,EAAC,GAAG,IAAI,CAAC;oBAE7C,OAAO,yBAAyB,CAAC;wBAChC,OAAO,EAAE,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC;wBACvC,KAAK;wBACL,QAAQ,EAAE,QAAqB;wBAC/B,QAAQ,EAAE,SAAS;wBACnB,OAAO,EAAE,CAAC,aAAa,EAAE,EAAE,CAC1B,YAAY,CAAC,iBAAiB,CAAC,aAAoB,CAAC;wBACrD,WAAW,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,eAAe;qBACjD,CAAC,CAAC;gBACJ,CAAC;gBAED,KAAK,CAAC,mBAAmB,CAGxB,IAKC;oBAED,MAAM,EAAC,QAAQ,EAAE,KAAK,EAAE,GAAG,QAAQ,EAAC,GAAG,IAAI,CAAC;oBAE5C,OAAO,yBAAyB,CAAC;wBAChC,OAAO,EAAE,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC;wBACvC,KAAK;wBACL,QAAQ,EAAE,QAAqB;wBAC/B,QAAQ,EAAE,QAAQ;wBAClB,OAAO,EAAE,CAAC,aAAa,EAAE,EAAE,CAC1B,YAAY,CAAC,mBAAmB,CAAC,aAAoB,CAAC;wBACvD,WAAW,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,eAAe;qBACjD,CAAC,CAAC;gBACJ,CAAC;gBAED,KAAK,CAAC,sBAAsB,CAC3B,IAAgD;oBAEhD,MAAM,EAAC,QAAQ,EAAE,qBAAqB,EAAC,GAAG,IAAI,CAAC;oBAE/C,OAAO,4BAA4B,CAAC;wBACnC,qBAAqB;wBACrB,QAAQ,EAAE,QAAqB;wBAC/B,OAAO,EAAE,GAAG,EAAE,CACb,YAAY,CAAC,sBAAsB,CAAC,EAAC,qBAAqB,EAAC,CAAC;wBAC7D,WAAW,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,eAAe;qBACjD,CAAC,CAAC;gBACJ,CAAC;gBAED,+CAA+C;gBAC/C,6BAA6B;gBAC7B,+CAA+C;gBAE/C,wBAAwB,EAAE,CACzB,QAAwD,EACvD,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,yBAAyB,EAAE,QAAQ,CAAC;gBAEpD,yBAAyB,EAAE,CAC1B,QAAwD,EACvD,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,yBAAyB,EAAE,QAAQ,CAAC;aACrD,CAAC;QACH,CAAC;KACD,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAS,yBAAyB;IAGjC,OAAO;QACN,KAAK,CACJ,YAAqB,EACrB,YAA0B;YAY1B,kDAAkD;YAClD,MAAM,OAAO,GAAG,IAAI,OAAO,EAEvB,CAAC;YAEL;;eAEG;YACH,KAAK,UAAU,YAAY,CAC1B,WAAoC,EACpC,IAAa;gBAEb,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;oBACrC,OAAO,WAAW,CAAC;gBACpB,CAAC;gBACD,MAAM,QAAQ,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;gBACnE,OAAO,MAAM,YAAY,CAAC,mBAAmB,CAAC;oBAC7C,OAAO,EAAE,IAAI;oBACb,QAAQ;iBACR,CAAC,CAAC;YACJ,CAAC;YAED;;eAEG;YACH,KAAK,UAAU,yBAAyB,CAAC,IAGxC;gBACA,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,YAAY,CAAC,OAAO,CAAC;gBACrD,MAAM,IAAI,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAC;gBAE5C,IAAI,CAAC,IAAI,EAAE,CAAC;oBACX,MAAM,IAAI,KAAK,CACd,8CAA8C;wBAC7C,mFAAmF,CACpF,CAAC;gBACH,CAAC;gBAED,MAAM,aAAa,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;gBAC3D,OAAO,EAAC,IAAI,EAAE,aAAa,EAAC,CAAC;YAC9B,CAAC;YAED;;eAEG;YACH,KAAK,UAAU,4BAA4B,CAC1C,qBAA4C;gBAE5C,MAAM,QAAQ,GAAG,gBAAgB,CAAC,qBAAqB,CAAC,CAAC;gBAEzD,IAAI,QAAQ,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;oBAClC,MAAM,IAAI,KAAK,CACd,4EAA4E,CAC5E,CAAC;gBACH,CAAC;gBAED,MAAM,IAAI,GAAG,MAAM,yBAAyB,CAAC;oBAC5C,qBAAqB;iBACrB,CAAC,CAAC;gBAEH,OAAO;oBACN,IAAI;oBACJ,aAAa,EAAE,QAAQ,CAAC,KAAK;iBAC7B,CAAC;YACH,CAAC;YAED;;eAEG;YACH,KAAK,UAAU,sBAAsB,CACpC,IAAU,EACV,aAAqB;gBAErB,IAAI,CAAC;oBACJ,MAAM,EAAE,GAAG,MAAM,YAAY,CAAC,cAAc,CAAC,EAAC,IAAI,EAAC,CAAC,CAAC;oBACrD,MAAM,WAAW,GAAG,EAAE,CAAC,KAAK,CAAC;oBAE7B,IAAI,WAAW,KAAK,aAAa,EAAE,CAAC;wBACnC,OAAO,CAAC,IAAI,CACX,kDAAkD,aAAa,YAAY,WAAW,IAAI;4BACzF,uCAAuC,CACxC,CAAC;oBACH,CAAC;oBAED,OAAO,WAAW,CAAC;gBACpB,CAAC;gBAAC,OAAO,UAAU,EAAE,CAAC;oBACrB,OAAO,CAAC,IAAI,CACX,4CAA4C,IAAI,oBAAoB;wBACnE,mCAAmC,CACpC,CAAC;oBACF,OAAO,aAAa,CAAC;gBACtB,CAAC;YACF,CAAC;YAED;;eAEG;YACH,SAAS,8BAA8B,CACtC,MAAY,EACZ,IAAa,EACb,KAAa,EACb,QAAmB;gBAEnB,OAAO;oBACN,IAAI,EAAE,MAAM;oBACZ,IAAI;oBACJ,KAAK;oBACL,OAAO,EAAE,YAAY,CAAC,KAAK,EAAE,EAAE;oBAC/B,QAAQ;oBACR,oBAAoB,EAAE,IAAI,CAAC,GAAG,EAAE;iBAChC,CAAC;YACH,CAAC;YAED;;;eAGG;YACH,SAAS,uCAAuC,CAC/C,YAAqB;gBAErB,IAAI,YAAY,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE,CAAC;oBACtD,IAAI,MAAM,IAAI,YAAY,EAAE,CAAC;wBAC5B,MAAM,IAAI,KAAK,CACd,0FAA0F;4BACzF,6DAA6D,CAC9D,CAAC;oBACH,CAAC;oBACD,IAAI,cAAc,IAAI,YAAY,EAAE,CAAC;wBACpC,MAAM,IAAI,KAAK,CACd,kGAAkG;4BACjG,qEAAqE,CACtE,CAAC;oBACH,CAAC;oBACD,IAAI,MAAM,IAAI,YAAY,EAAE,CAAC;wBAC5B,MAAM,IAAI,KAAK,CACd,0FAA0F;4BACzF,8DAA8D,CAC/D,CAAC;oBACH,CAAC;gBACF,CAAC;YACF,CAAC;YAED;;eAEG;YACH,KAAK,UAAU,yBAAyB,CAAO,IAO9C;gBACA,MAAM,EAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAC,GAAG,IAAI,CAAC;gBAExD,MAAM,EAAC,IAAI,EAAE,aAAa,EAAC,GAAG,MAAM,yBAAyB,CAAC,IAAI,CAAC,CAAC;gBAEpE,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC;oBAC5B,GAAG,QAAQ;oBACX,KAAK,EAAE,aAAa;iBAGpB,CAAC,CAAC;gBACH,MAAM,IAAI,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;gBAEjC,MAAM,WAAW,GAAG,MAAM,sBAAsB,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;gBAEtE,MAAM,SAAS,GAAG,8BAA8B,CAC/C,IAAI,EACJ,IAAI,EACJ,WAAW,EACX,QAAQ,CACR,CAAC;gBAEF,OAAO,CAAC,IAAI,CAAC,yBAAyB,EAAE,SAAS,CAAC,CAAC;gBAEnD,OAAO,MAAM,CAAC;YACf,CAAC;YAED;;eAEG;YACH,KAAK,UAAU,4BAA4B,CAAI,IAK9C;gBACA,MAAM,EAAC,qBAAqB,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAC,GAAG,IAAI,CAAC;gBAErE,MAAM,EAAC,IAAI,EAAE,aAAa,EAAC,GAAG,MAAM,4BAA4B,CAC/D,qBAAqB,CACrB,CAAC;gBAEF,MAAM,MAAM,GAAG,MAAM,OAAO,EAAE,CAAC;gBAC/B,MAAM,IAAI,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;gBAEjC,MAAM,SAAS,GAAG,8BAA8B,CAC/C,IAAI,EACJ,IAAI,EACJ,aAAa,EACb,QAAQ,CACR,CAAC;gBAEF,OAAO,CAAC,IAAI,CAAC,yBAAyB,EAAE,SAAS,CAAC,CAAC;gBAEnD,OAAO,MAAM,CAAC;YACf,CAAC;YAED,OAAO;gBACN,YAAY,EAAE,YAIb;gBACD,YAAY;gBAEZ,+CAA+C;gBAC/C,8BAA8B;gBAC9B,+CAA+C;gBAE/C,KAAK,CAAC,aAAa,CAalB,IAQC;oBAED,MAAM,EAAC,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,SAAS,EAAC,GAAG,IAAI,CAAC;oBAE3D,oEAAoE;oBACpE,uCAAuC,CAAC,YAAY,CAAC,CAAC;oBAEtD,4CAA4C;oBAC5C,MAAM,aAAa,GAAG;wBACrB,GAAG,CAAC,YAAY,IAAI,EAAE,CAAC;wBACvB,IAAI,EAAE,cAAuB;wBAC7B,YAAY,EAAE,IAAI,CAAC,YAAsB;wBACzC,IAAI,EAAE,IAAI,CAAC,IAA0B;qBACxB,CAAC;oBAEf,OAAO,yBAAyB,CAAC;wBAChC,OAAO,EAAE,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC;wBACvC,KAAK;wBACL,QAAQ,EAAE,aAAa;wBACvB,QAAQ,EAAE,SAAS;wBACnB,OAAO,EAAE,CAAC,aAAa,EAAE,EAAE,CAC1B,YAAY,CAAC,aAAa,CAAC,aAAoB,CAAC;wBACjD,WAAW,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI;qBAC3B,CAAC,CAAC;gBACJ,CAAC;gBAED,KAAK,CAAC,eAAe,CAGpB,IAKC;oBAED,MAAM,EAAC,QAAQ,EAAE,KAAK,EAAE,GAAG,QAAQ,EAAC,GAAG,IAAI,CAAC;oBAE5C,OAAO,yBAAyB,CAAC;wBAChC,OAAO,EAAE,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC;wBACvC,KAAK;wBACL,QAAQ,EAAE,QAAqB;wBAC/B,QAAQ,EAAE,QAAQ;wBAClB,OAAO,EAAE,CAAC,aAAa,EAAE,EAAE,CAC1B,YAAY,CAAC,eAAe,CAAC,aAAoB,CAAC;wBACnD,WAAW,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI;qBAC3B,CAAC,CAAC;gBACJ,CAAC;gBAED,KAAK,CAAC,kBAAkB,CACvB,IAAgD;oBAEhD,MAAM,EAAC,QAAQ,EAAE,qBAAqB,EAAC,GAAG,IAAI,CAAC;oBAE/C,OAAO,4BAA4B,CAAC;wBACnC,qBAAqB;wBACrB,QAAQ,EAAE,QAAqB;wBAC/B,OAAO,EAAE,GAAG,EAAE,CACb,YAAY,CAAC,kBAAkB,CAAC,EAAC,qBAAqB,EAAC,CAAC;wBACzD,WAAW,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI;qBAC3B,CAAC,CAAC;gBACJ,CAAC;gBAED,+CAA+C;gBAC/C,uDAAuD;gBACvD,+CAA+C;gBAE/C,KAAK,CAAC,iBAAiB,CAatB,IAQC;oBAED,MAAM,EAAC,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,SAAS,EAAC,GAAG,IAAI,CAAC;oBAE3D,oEAAoE;oBACpE,uCAAuC,CAAC,YAAY,CAAC,CAAC;oBAEtD,4CAA4C;oBAC5C,MAAM,aAAa,GAAG;wBACrB,GAAG,CAAC,YAAY,IAAI,EAAE,CAAC;wBACvB,IAAI,EAAE,cAAuB;wBAC7B,YAAY,EAAE,IAAI,CAAC,YAAsB;wBACzC,IAAI,EAAE,IAAI,CAAC,IAA0B;qBACxB,CAAC;oBAEf,OAAO,yBAAyB,CAAC;wBAChC,OAAO,EAAE,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC;wBACvC,KAAK;wBACL,QAAQ,EAAE,aAAa;wBACvB,QAAQ,EAAE,SAAS;wBACnB,OAAO,EAAE,CAAC,aAAa,EAAE,EAAE,CAC1B,YAAY,CAAC,iBAAiB,CAAC,aAAoB,CAAC;wBACrD,WAAW,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,eAAe;qBACjD,CAAC,CAAC;gBACJ,CAAC;gBAED,KAAK,CAAC,mBAAmB,CAGxB,IAKC;oBAED,MAAM,EAAC,QAAQ,EAAE,KAAK,EAAE,GAAG,QAAQ,EAAC,GAAG,IAAI,CAAC;oBAE5C,OAAO,yBAAyB,CAAC;wBAChC,OAAO,EAAE,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC;wBACvC,KAAK;wBACL,QAAQ,EAAE,QAAqB;wBAC/B,QAAQ,EAAE,QAAQ;wBAClB,OAAO,EAAE,CAAC,aAAa,EAAE,EAAE,CAC1B,YAAY,CAAC,mBAAmB,CAAC,aAAoB,CAAC;wBACvD,WAAW,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,eAAe;qBACjD,CAAC,CAAC;gBACJ,CAAC;gBAED,KAAK,CAAC,sBAAsB,CAC3B,IAAgD;oBAEhD,MAAM,EAAC,QAAQ,EAAE,qBAAqB,EAAC,GAAG,IAAI,CAAC;oBAE/C,OAAO,4BAA4B,CAAC;wBACnC,qBAAqB;wBACrB,QAAQ,EAAE,QAAqB;wBAC/B,OAAO,EAAE,GAAG,EAAE,CACb,YAAY,CAAC,sBAAsB,CAAC,EAAC,qBAAqB,EAAC,CAAC;wBAC7D,WAAW,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,eAAe;qBACjD,CAAC,CAAC;gBACJ,CAAC;gBAED,+CAA+C;gBAC/C,6BAA6B;gBAC7B,+CAA+C;gBAE/C,wBAAwB,EAAE,CACzB,QAAwD,EACvD,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,yBAAyB,EAAE,QAAQ,CAAC;gBAEpD,yBAAyB,EAAE,CAC1B,QAAwD,EACvD,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,yBAAyB,EAAE,QAAQ,CAAC;aACrD,CAAC;QACH,CAAC;KACD,CAAC;AACH,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,3 +1,3 @@
1
1
  export type * from './types.js';
2
- export { createTrackedWalletClient, type TrackedWalletClientBuilder, } from './TrackedWalletClient.js';
2
+ export { createTrackedWalletClient, type TrackedWalletClientBuilder, type TrackedWalletClientAutoPopulateBuilder, } from './TrackedWalletClient.js';
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,mBAAmB,YAAY,CAAC;AAGhC,OAAO,EACN,yBAAyB,EACzB,KAAK,0BAA0B,GAC/B,MAAM,0BAA0B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,mBAAmB,YAAY,CAAC;AAGhC,OAAO,EACN,yBAAyB,EACzB,KAAK,0BAA0B,EAC/B,KAAK,sCAAsC,GAC3C,MAAM,0BAA0B,CAAC"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,UAAU;AACV,OAAO,EACN,yBAAyB,GAEzB,MAAM,0BAA0B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,UAAU;AACV,OAAO,EACN,yBAAyB,GAGzB,MAAM,0BAA0B,CAAC"}
package/dist/types.d.ts CHANGED
@@ -1,4 +1,45 @@
1
1
  import type { Abi, Account, Chain, ContractFunctionArgs, ContractFunctionName, Hash, PublicClient, SendTransactionParameters, TransactionReceipt, TransactionSerialized, Transport, WalletClient, WriteContractParameters } from 'viem';
2
+ /**
3
+ * Metadata for contract function calls.
4
+ * Auto-populated by writeContract when populateMetadata: true.
5
+ */
6
+ export type FunctionCallMetadata = {
7
+ type: 'functionCall';
8
+ functionName: string;
9
+ args?: readonly unknown[];
10
+ };
11
+ /**
12
+ * Metadata for unknown/untyped operations.
13
+ * Used as a fallback for sendTransaction/sendRawTransaction
14
+ * when using the default PopulatedMetadata type.
15
+ */
16
+ export type UnknownTypeMetadata = {
17
+ type: 'unknown';
18
+ name: string;
19
+ data: any[];
20
+ };
21
+ /**
22
+ * Default metadata type when using populateMetadata: true.
23
+ * A discriminated union that allows either:
24
+ * - FunctionCallMetadata (auto-populated by writeContract)
25
+ * - UnknownTypeMetadata (for sendTransaction/sendRawTransaction)
26
+ *
27
+ * Users can provide their own TMetadata type that excludes 'unknown'
28
+ * if they want to enforce specific operation types.
29
+ */
30
+ export type PopulatedMetadata = FunctionCallMetadata | UnknownTypeMetadata;
31
+ /**
32
+ * Options for creating a tracked wallet client.
33
+ */
34
+ export interface CreateTrackedWalletClientOptions<TPopulate extends boolean = false> {
35
+ /**
36
+ * When true, writeContract and writeContractSync automatically populate
37
+ * operation, functionName and args in the metadata from the contract call parameters.
38
+ * TMetadata must be a type where FunctionCallMetadata is assignable to it
39
+ * (e.g., PopulatedMetadata, FunctionCallMetadata, or a union including FunctionCallMetadata).
40
+ */
41
+ populateMetadata?: TPopulate;
42
+ }
2
43
  /**
3
44
  * Block tags that can be used to specify nonce fetching strategy
4
45
  */
@@ -10,30 +51,6 @@ export type BlockTag = 'latest' | 'pending' | 'earliest' | 'safe' | 'finalized';
10
51
  * - undefined: fetch nonce using 'pending' (default)
11
52
  */
12
53
  export type NonceOption = number | BlockTag;
13
- export type ExpectedUpdate = {
14
- address: `0x${string}`;
15
- event: {
16
- topics: `0x${string}`[];
17
- };
18
- } | {
19
- address: `0x${string}`;
20
- call: {
21
- data: `0x${string}`;
22
- result: `0x${string}`;
23
- };
24
- };
25
- /**
26
- * Metadata that can be attached to a transaction for tracking purposes.
27
- * All fields are optional and extensible.
28
- */
29
- export interface TransactionMetadata {
30
- id?: string;
31
- name?: string;
32
- args?: any[];
33
- description?: string;
34
- expectedUpdate?: ExpectedUpdate;
35
- [key: string]: unknown;
36
- }
37
54
  /**
38
55
  * Conditional type that makes metadata required or optional based on TMetadata.
39
56
  * If TMetadata includes undefined (e.g., `MyMeta | undefined`), metadata is optional.
@@ -69,6 +86,59 @@ export type TrackedWriteContractParameters<TMetadata, TAbi extends Abi | readonl
69
86
  */
70
87
  nonce?: NonceOption;
71
88
  } & MetadataField<TMetadata>;
89
+ /**
90
+ * The fields that are auto-populated by writeContract.
91
+ * These are excluded from user-provided metadata for writeContract.
92
+ */
93
+ export type AutoPopulatedFields = 'type' | 'functionName' | 'args';
94
+ /**
95
+ * Type that explicitly forbids auto-populated fields.
96
+ * Uses never to make TypeScript error when these properties are provided.
97
+ */
98
+ export type ForbiddenAutoPopulateFields = {
99
+ type?: never;
100
+ functionName?: never;
101
+ args?: never;
102
+ };
103
+ /**
104
+ * Metadata type for writeContract when auto-population is enabled.
105
+ * Excludes operation, functionName and args since they will be auto-populated,
106
+ * and explicitly forbids them to cause TypeScript errors if provided.
107
+ *
108
+ * User provides the remaining fields (e.g., purpose, priority), and the
109
+ * auto-populated fields (operation, functionName, args) are added at runtime.
110
+ */
111
+ export type WriteContractAutoPopulateMetadata<TMetadata> = Omit<TMetadata, AutoPopulatedFields> & ForbiddenAutoPopulateFields;
112
+ /**
113
+ * Metadata field for writeContract when auto-population is enabled.
114
+ * Excludes operation, functionName and args since they will be auto-populated.
115
+ *
116
+ * If the remaining fields (after removing auto-populated fields) are all optional,
117
+ * the metadata field itself becomes optional.
118
+ */
119
+ export type WriteContractAutoPopulateMetadataField<TMetadata> = keyof Omit<TMetadata, AutoPopulatedFields> extends never ? {
120
+ metadata?: WriteContractAutoPopulateMetadata<TMetadata>;
121
+ } : Partial<Omit<TMetadata, AutoPopulatedFields>> extends Omit<TMetadata, AutoPopulatedFields> ? {
122
+ metadata?: WriteContractAutoPopulateMetadata<TMetadata>;
123
+ } : {
124
+ metadata: WriteContractAutoPopulateMetadata<TMetadata>;
125
+ };
126
+ /**
127
+ * Extended WriteContractParameters with auto-populated metadata.
128
+ * operation, functionName and args are excluded from the metadata since they're auto-populated.
129
+ *
130
+ * User provides any additional fields required by their TMetadata (e.g., purpose, priority),
131
+ * and the auto-populated fields are merged at runtime.
132
+ */
133
+ export type TrackedWriteContractAutoPopulateParameters<TMetadata, TAbi extends Abi | readonly unknown[] = Abi, TFunctionName extends ContractFunctionName<TAbi, 'nonpayable' | 'payable'> = ContractFunctionName<TAbi, 'nonpayable' | 'payable'>, TArgs extends ContractFunctionArgs<TAbi, 'nonpayable' | 'payable', TFunctionName> = ContractFunctionArgs<TAbi, 'nonpayable' | 'payable', TFunctionName>, TChain extends Chain | undefined = Chain | undefined, TAccount extends Account | undefined = Account | undefined, TChainOverride extends Chain | undefined = Chain | undefined> = Omit<WriteContractParameters<TAbi, TFunctionName, TArgs, TChain, TAccount, TChainOverride>, 'nonce'> & {
134
+ /**
135
+ * Nonce option:
136
+ * - number: exact nonce to use
137
+ * - BlockTag ('latest', 'pending', etc.): fetch nonce using this block tag
138
+ * - undefined: fetch nonce using 'pending' (default)
139
+ */
140
+ nonce?: NonceOption;
141
+ } & WriteContractAutoPopulateMetadataField<TMetadata>;
72
142
  /**
73
143
  * Extended SendTransactionParameters with metadata and flexible nonce.
74
144
  * Metadata is required unless TMetadata includes undefined.
@@ -151,4 +221,64 @@ export interface TrackedWalletClient<TMetadata, TTransport extends Transport = T
151
221
  */
152
222
  offTransactionBroadcasted(listener: (event: TrackedTransaction<TMetadata>) => void): void;
153
223
  }
224
+ /**
225
+ * A wallet client wrapper that tracks transactions with auto-populated metadata.
226
+ * TMetadata must be a type where FunctionCallMetadata is assignable to it.
227
+ * writeContract and writeContractSync automatically populate operation, functionName and args.
228
+ */
229
+ export interface TrackedWalletClientAutoPopulate<TMetadata, TTransport extends Transport = Transport, TChain extends Chain | undefined = Chain | undefined, TAccount extends Account | undefined = Account | undefined> {
230
+ /**
231
+ * The underlying wallet client.
232
+ */
233
+ readonly walletClient: WalletClient<TTransport, TChain, TAccount>;
234
+ /**
235
+ * The public client used for nonce fetching and tx verification.
236
+ */
237
+ readonly publicClient: PublicClient;
238
+ /**
239
+ * Write to a contract with metadata tracking.
240
+ * functionName and args are automatically populated from the contract call.
241
+ * Returns immediately after broadcast with the transaction hash.
242
+ */
243
+ writeContract<const TAbi extends Abi | readonly unknown[], TFunctionName extends ContractFunctionName<TAbi, 'nonpayable' | 'payable'>, TArgs extends ContractFunctionArgs<TAbi, 'nonpayable' | 'payable', TFunctionName>, TChainOverride extends Chain | undefined = undefined>(args: TrackedWriteContractAutoPopulateParameters<TMetadata, TAbi, TFunctionName, TArgs, TChain, TAccount, TChainOverride>): Promise<Hash>;
244
+ /**
245
+ * Send a transaction with metadata tracking.
246
+ * Returns immediately after broadcast with the transaction hash.
247
+ */
248
+ sendTransaction<TChainOverride extends Chain | undefined = undefined>(args: TrackedSendTransactionParameters<TMetadata, TChain, TAccount, TChainOverride>): Promise<Hash>;
249
+ /**
250
+ * Send a signed raw transaction with metadata tracking.
251
+ * The nonce and from address are decoded from the serialized transaction.
252
+ * Returns immediately after broadcast with the transaction hash.
253
+ */
254
+ sendRawTransaction(args: TrackedRawTransactionParameters<TMetadata>): Promise<Hash>;
255
+ /**
256
+ * Write to a contract and wait for confirmation.
257
+ * functionName and args are automatically populated from the contract call.
258
+ * Returns the transaction receipt after the transaction is confirmed.
259
+ */
260
+ writeContractSync<const TAbi extends Abi | readonly unknown[], TFunctionName extends ContractFunctionName<TAbi, 'nonpayable' | 'payable'>, TArgs extends ContractFunctionArgs<TAbi, 'nonpayable' | 'payable', TFunctionName>, TChainOverride extends Chain | undefined = undefined>(args: TrackedWriteContractAutoPopulateParameters<TMetadata, TAbi, TFunctionName, TArgs, TChain, TAccount, TChainOverride>): Promise<TransactionReceipt>;
261
+ /**
262
+ * Send a transaction and wait for confirmation.
263
+ * Returns the transaction receipt after the transaction is confirmed.
264
+ */
265
+ sendTransactionSync<TChainOverride extends Chain | undefined = undefined>(args: TrackedSendTransactionParameters<TMetadata, TChain, TAccount, TChainOverride>): Promise<TransactionReceipt>;
266
+ /**
267
+ * Send a signed raw transaction and wait for confirmation.
268
+ * Returns the transaction receipt after the transaction is confirmed.
269
+ */
270
+ sendRawTransactionSync(args: TrackedRawTransactionParameters<TMetadata>): Promise<TransactionReceipt>;
271
+ /**
272
+ * Subscribe to transaction broadcast events.
273
+ * Called immediately after a transaction is successfully broadcast.
274
+ * @param listener - Callback function receiving TrackedTransaction with TMetadata
275
+ * @returns Unsubscribe function
276
+ */
277
+ onTransactionBroadcasted(listener: (event: TrackedTransaction<TMetadata>) => void): () => void;
278
+ /**
279
+ * Unsubscribe from transaction broadcast events.
280
+ * @param listener - The same listener function passed to onTransactionBroadcasted
281
+ */
282
+ offTransactionBroadcasted(listener: (event: TrackedTransaction<TMetadata>) => void): void;
283
+ }
154
284
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@etherkit/viem-tx-tracker",
3
- "version": "0.0.4",
3
+ "version": "0.0.5",
4
4
  "description": "",
5
5
  "license": "MIT",
6
6
  "author": "Ronan Sandford",