@aztec/bot 0.76.4-devnet-test-rc3 → 0.77.0-testnet-ignition.17

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.
package/dest/bot.d.ts CHANGED
@@ -1,8 +1,8 @@
1
1
  import { type AztecAddress, type Wallet } from '@aztec/aztec.js';
2
- import { type AztecNode, type PXE } from '@aztec/circuit-types';
3
- import { type EasyPrivateTokenContract } from '@aztec/noir-contracts.js/EasyPrivateToken';
4
- import { type TokenContract } from '@aztec/noir-contracts.js/Token';
5
- import { type BotConfig } from './config.js';
2
+ import type { EasyPrivateTokenContract } from '@aztec/noir-contracts.js/EasyPrivateToken';
3
+ import type { TokenContract } from '@aztec/noir-contracts.js/Token';
4
+ import type { AztecNode, PXE } from '@aztec/stdlib/interfaces/client';
5
+ import type { BotConfig } from './config.js';
6
6
  export declare class Bot {
7
7
  readonly wallet: Wallet;
8
8
  readonly token: TokenContract | EasyPrivateTokenContract;
package/dest/bot.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"bot.d.ts","sourceRoot":"","sources":["../src/bot.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,YAAY,EAKjB,KAAK,MAAM,EAEZ,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,KAAK,SAAS,EAAqB,KAAK,GAAG,EAAE,MAAM,sBAAsB,CAAC;AAGnF,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,2CAA2C,CAAC;AAC1F,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAEpE,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,aAAa,CAAC;AAM7C,qBAAa,GAAG;aAOI,MAAM,EAAE,MAAM;aACd,KAAK,EAAE,aAAa,GAAG,wBAAwB;aAC/C,SAAS,EAAE,YAAY;IAChC,MAAM,EAAE,SAAS;IAT1B,OAAO,CAAC,GAAG,CAAuB;IAElC,OAAO,CAAC,QAAQ,CAAa;IAC7B,OAAO,CAAC,SAAS,CAAa;IAE9B,SAAS,aACS,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,aAAa,GAAG,wBAAwB,EAC/C,SAAS,EAAE,YAAY,EAChC,MAAM,EAAE,SAAS;WAGb,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,GAAE;QAAE,GAAG,CAAC,EAAE,GAAG,CAAC;QAAC,IAAI,CAAC,EAAE,SAAS,CAAA;KAAO,GAAG,OAAO,CAAC,GAAG,CAAC;IAKjG,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,SAAS,CAAC;IAKjC,GAAG;IAoEH,WAAW;;;;;;;;;;IAoBxB,OAAO,CAAC,iBAAiB;CAmB1B"}
1
+ {"version":3,"file":"bot.d.ts","sourceRoot":"","sources":["../src/bot.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,YAAY,EAIjB,KAAK,MAAM,EAEZ,MAAM,iBAAiB,CAAC;AAEzB,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAC;AAC1F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAGpE,OAAO,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,iCAAiC,CAAC;AAEtE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAM7C,qBAAa,GAAG;aAOI,MAAM,EAAE,MAAM;aACd,KAAK,EAAE,aAAa,GAAG,wBAAwB;aAC/C,SAAS,EAAE,YAAY;IAChC,MAAM,EAAE,SAAS;IAT1B,OAAO,CAAC,GAAG,CAAuB;IAElC,OAAO,CAAC,QAAQ,CAAa;IAC7B,OAAO,CAAC,SAAS,CAAa;IAE9B,SAAS,aACS,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,aAAa,GAAG,wBAAwB,EAC/C,SAAS,EAAE,YAAY,EAChC,MAAM,EAAE,SAAS;WAGb,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,GAAE;QAAE,GAAG,CAAC,EAAE,GAAG,CAAC;QAAC,IAAI,CAAC,EAAE,SAAS,CAAA;KAAO,GAAG,OAAO,CAAC,GAAG,CAAC;IAKjG,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,SAAS,CAAC;IAKjC,GAAG;IAoEH,WAAW;;;;;;;;;;IAoBxB,OAAO,CAAC,iBAAiB;CAkB1B"}
package/dest/bot.js CHANGED
@@ -1,11 +1,18 @@
1
- import { BatchCall, FeeJuicePaymentMethod, NoFeePaymentMethod, createLogger, } from '@aztec/aztec.js';
2
- import { Gas } from '@aztec/circuits.js';
1
+ import { BatchCall, FeeJuicePaymentMethod, createLogger } from '@aztec/aztec.js';
3
2
  import { timesParallel } from '@aztec/foundation/collection';
3
+ import { Gas } from '@aztec/stdlib/gas';
4
4
  import { BotFactory } from './factory.js';
5
5
  import { getBalances, getPrivateBalance, isStandardTokenContract } from './utils.js';
6
6
  const TRANSFER_AMOUNT = 1;
7
7
  export class Bot {
8
- constructor(wallet, token, recipient, config) {
8
+ wallet;
9
+ token;
10
+ recipient;
11
+ config;
12
+ log;
13
+ attempts;
14
+ successes;
15
+ constructor(wallet, token, recipient, config){
9
16
  this.wallet = wallet;
10
17
  this.token = token;
11
18
  this.recipient = recipient;
@@ -20,22 +27,26 @@ export class Bot {
20
27
  }
21
28
  updateConfig(config) {
22
29
  this.log.info(`Updating bot config ${Object.keys(config).join(', ')}`);
23
- this.config = { ...this.config, ...config };
30
+ this.config = {
31
+ ...this.config,
32
+ ...config
33
+ };
24
34
  }
25
35
  async run() {
26
36
  this.attempts++;
27
- const logCtx = { runId: Date.now() * 1000 + Math.floor(Math.random() * 1000) };
37
+ const logCtx = {
38
+ runId: Date.now() * 1000 + Math.floor(Math.random() * 1000)
39
+ };
28
40
  const { privateTransfersPerTx, publicTransfersPerTx, feePaymentMethod, followChain, txMinedWaitSeconds } = this.config;
29
41
  const { token, recipient, wallet } = this;
30
42
  const sender = wallet.getAddress();
31
43
  this.log.verbose(`Preparing tx with ${feePaymentMethod} fee with ${privateTransfersPerTx} private and ${publicTransfersPerTx} public transfers`, logCtx);
32
44
  const calls = [];
33
45
  if (isStandardTokenContract(token)) {
34
- calls.push(...(await timesParallel(privateTransfersPerTx, () => token.methods.transfer(recipient, TRANSFER_AMOUNT).request())));
35
- calls.push(...(await timesParallel(publicTransfersPerTx, () => token.methods.transfer_in_public(sender, recipient, TRANSFER_AMOUNT, 0).request())));
36
- }
37
- else {
38
- calls.push(...(await timesParallel(privateTransfersPerTx, () => token.methods.transfer(TRANSFER_AMOUNT, sender, recipient).request())));
46
+ calls.push(...await timesParallel(privateTransfersPerTx, ()=>token.methods.transfer(recipient, TRANSFER_AMOUNT).request()));
47
+ calls.push(...await timesParallel(publicTransfersPerTx, ()=>token.methods.transfer_in_public(sender, recipient, TRANSFER_AMOUNT, 0).request()));
48
+ } else {
49
+ calls.push(...await timesParallel(privateTransfersPerTx, ()=>token.methods.transfer(TRANSFER_AMOUNT, sender, recipient).request()));
39
50
  }
40
51
  const opts = this.getSendMethodOpts();
41
52
  const batch = new BatchCall(wallet, calls);
@@ -54,7 +65,7 @@ export class Bot {
54
65
  const receipt = await tx.wait({
55
66
  timeout: txMinedWaitSeconds,
56
67
  provenTimeout: txMinedWaitSeconds,
57
- proven: followChain === 'PROVEN',
68
+ proven: followChain === 'PROVEN'
58
69
  });
59
70
  this.log.info(`Tx #${this.attempts} ${receipt.txHash} successfully mined in block ${receipt.blockNumber} (stats: ${this.successes}/${this.attempts} success)`, logCtx);
60
71
  this.successes++;
@@ -63,39 +74,49 @@ export class Bot {
63
74
  if (isStandardTokenContract(this.token)) {
64
75
  return {
65
76
  sender: await getBalances(this.token, this.wallet.getAddress()),
66
- recipient: await getBalances(this.token, this.recipient),
77
+ recipient: await getBalances(this.token, this.recipient)
67
78
  };
68
- }
69
- else {
79
+ } else {
70
80
  return {
71
81
  sender: {
72
82
  privateBalance: await getPrivateBalance(this.token, this.wallet.getAddress()),
73
- publicBalance: 0n,
83
+ publicBalance: 0n
74
84
  },
75
85
  recipient: {
76
86
  privateBalance: await getPrivateBalance(this.token, this.recipient),
77
- publicBalance: 0n,
78
- },
87
+ publicBalance: 0n
88
+ }
79
89
  };
80
90
  }
81
91
  }
82
92
  getSendMethodOpts() {
83
93
  const sender = this.wallet.getAddress();
84
- const { feePaymentMethod, l2GasLimit, daGasLimit, skipPublicSimulation } = this.config;
85
- const paymentMethod = feePaymentMethod === 'fee_juice' ? new FeeJuicePaymentMethod(sender) : new NoFeePaymentMethod();
94
+ const { l2GasLimit, daGasLimit, skipPublicSimulation } = this.config;
95
+ const paymentMethod = new FeeJuicePaymentMethod(sender);
86
96
  let gasSettings, estimateGas;
87
97
  if (l2GasLimit !== undefined && l2GasLimit > 0 && daGasLimit !== undefined && daGasLimit > 0) {
88
- gasSettings = { gasLimits: Gas.from({ l2Gas: l2GasLimit, daGas: daGasLimit }) };
98
+ gasSettings = {
99
+ gasLimits: Gas.from({
100
+ l2Gas: l2GasLimit,
101
+ daGas: daGasLimit
102
+ })
103
+ };
89
104
  estimateGas = false;
90
105
  this.log.verbose(`Using gas limits ${l2GasLimit} L2 gas ${daGasLimit} DA gas`);
91
- }
92
- else {
106
+ } else {
93
107
  estimateGas = true;
94
108
  this.log.verbose(`Estimating gas for transaction`);
95
109
  }
96
110
  const baseFeePadding = 2; // Send 3x the current base fee
97
111
  this.log.verbose(skipPublicSimulation ? `Skipping public simulation` : `Simulating public transfers`);
98
- return { fee: { estimateGas, paymentMethod, gasSettings, baseFeePadding }, skipPublicSimulation };
112
+ return {
113
+ fee: {
114
+ estimateGas,
115
+ paymentMethod,
116
+ gasSettings,
117
+ baseFeePadding
118
+ },
119
+ skipPublicSimulation
120
+ };
99
121
  }
100
122
  }
101
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm90LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2JvdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUNULHFCQUFxQixFQUNyQixrQkFBa0IsRUFHbEIsWUFBWSxHQUNiLE1BQU0saUJBQWlCLENBQUM7QUFFekIsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUs3RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzFDLE9BQU8sRUFBRSxXQUFXLEVBQUUsaUJBQWlCLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFFckYsTUFBTSxlQUFlLEdBQUcsQ0FBQyxDQUFDO0FBRTFCLE1BQU0sT0FBTyxHQUFHO0lBTWQsWUFDa0IsTUFBYyxFQUNkLEtBQStDLEVBQy9DLFNBQXVCLEVBQ2hDLE1BQWlCO1FBSFIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLFVBQUssR0FBTCxLQUFLLENBQTBDO1FBQy9DLGNBQVMsR0FBVCxTQUFTLENBQWM7UUFDaEMsV0FBTSxHQUFOLE1BQU0sQ0FBVztRQVRsQixRQUFHLEdBQUcsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRTFCLGFBQVEsR0FBVyxDQUFDLENBQUM7UUFDckIsY0FBUyxHQUFXLENBQUMsQ0FBQztJQU8zQixDQUFDO0lBRUosTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsTUFBaUIsRUFBRSxlQUFnRCxFQUFFO1FBQ3ZGLE1BQU0sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxHQUFHLE1BQU0sSUFBSSxVQUFVLENBQUMsTUFBTSxFQUFFLFlBQVksQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ3hGLE9BQU8sSUFBSSxHQUFHLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUs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
package/dest/config.d.ts CHANGED
@@ -1,6 +1,7 @@
1
- import { type ComponentsVersions } from '@aztec/circuit-types';
2
- import { Fr } from '@aztec/circuits.js';
3
1
  import { type ConfigMappingsType } from '@aztec/foundation/config';
2
+ import { Fr } from '@aztec/foundation/fields';
3
+ import { type ZodFor } from '@aztec/stdlib/schemas';
4
+ import type { ComponentsVersions } from '@aztec/stdlib/versioning';
4
5
  import { z } from 'zod';
5
6
  declare const BotFollowChain: readonly ["NONE", "PENDING", "PROVEN"];
6
7
  type BotFollowChain = (typeof BotFollowChain)[number];
@@ -13,8 +14,14 @@ export type BotConfig = {
13
14
  nodeUrl: string | undefined;
14
15
  /** URL to the PXE for sending txs, or undefined if an in-proc PXE is used. */
15
16
  pxeUrl: string | undefined;
17
+ /** Url of the ethereum host. */
18
+ l1RpcUrls: string[] | undefined;
19
+ /** The mnemonic for the account to bridge fee juice from L1. */
20
+ l1Mnemonic: string | undefined;
21
+ /** The private key for the account to bridge fee juice from L1. */
22
+ l1PrivateKey: string | undefined;
16
23
  /** Signing private key for the sender account. */
17
- senderPrivateKey: Fr;
24
+ senderPrivateKey: Fr | undefined;
18
25
  /** Encryption secret for a recipient account. */
19
26
  recipientEncryptionSecret: Fr;
20
27
  /** Salt for the token contract deployment. */
@@ -26,7 +33,7 @@ export type BotConfig = {
26
33
  /** How many public token transfers are executed per tx. */
27
34
  publicTransfersPerTx: number;
28
35
  /** How to handle fee payments. */
29
- feePaymentMethod: 'fee_juice' | 'none';
36
+ feePaymentMethod: 'fee_juice';
30
37
  /** True to not automatically setup or start the bot on initialization. */
31
38
  noStart: boolean;
32
39
  /** How long to wait for a tx to be mined before reporting an error. */
@@ -53,13 +60,16 @@ export type BotConfig = {
53
60
  export declare const BotConfigSchema: z.ZodEffects<z.ZodObject<{
54
61
  nodeUrl: z.ZodOptional<z.ZodString>;
55
62
  pxeUrl: z.ZodOptional<z.ZodString>;
56
- senderPrivateKey: z.ZodType<Fr, any, string>;
57
- recipientEncryptionSecret: z.ZodType<Fr, any, string>;
58
- tokenSalt: z.ZodType<Fr, any, string>;
63
+ l1RpcUrls: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
64
+ l1Mnemonic: z.ZodOptional<z.ZodString>;
65
+ l1PrivateKey: z.ZodOptional<z.ZodString>;
66
+ senderPrivateKey: z.ZodOptional<ZodFor<Fr>>;
67
+ recipientEncryptionSecret: ZodFor<Fr>;
68
+ tokenSalt: ZodFor<Fr>;
59
69
  txIntervalSeconds: z.ZodNumber;
60
70
  privateTransfersPerTx: z.ZodNumber;
61
71
  publicTransfersPerTx: z.ZodNumber;
62
- feePaymentMethod: z.ZodUnion<[z.ZodLiteral<"fee_juice">, z.ZodLiteral<"none">]>;
72
+ feePaymentMethod: z.ZodLiteral<"fee_juice">;
63
73
  noStart: z.ZodBoolean;
64
74
  txMinedWaitSeconds: z.ZodNumber;
65
75
  followChain: z.ZodEnum<["NONE", "PENDING", "PROVEN"]>;
@@ -72,13 +82,12 @@ export declare const BotConfigSchema: z.ZodEffects<z.ZodObject<{
72
82
  maxConsecutiveErrors: z.ZodNumber;
73
83
  stopWhenUnhealthy: z.ZodBoolean;
74
84
  }, "strip", z.ZodTypeAny, {
75
- senderPrivateKey: Fr;
76
85
  recipientEncryptionSecret: Fr;
77
86
  tokenSalt: Fr;
78
87
  txIntervalSeconds: number;
79
88
  privateTransfersPerTx: number;
80
89
  publicTransfersPerTx: number;
81
- feePaymentMethod: "fee_juice" | "none";
90
+ feePaymentMethod: "fee_juice";
82
91
  noStart: boolean;
83
92
  txMinedWaitSeconds: number;
84
93
  followChain: "NONE" | "PENDING" | "PROVEN";
@@ -90,16 +99,17 @@ export declare const BotConfigSchema: z.ZodEffects<z.ZodObject<{
90
99
  stopWhenUnhealthy: boolean;
91
100
  nodeUrl?: string | undefined;
92
101
  pxeUrl?: string | undefined;
102
+ l1RpcUrls?: string[] | undefined;
103
+ l1Mnemonic?: string | undefined;
104
+ l1PrivateKey?: string | undefined;
105
+ senderPrivateKey?: Fr | undefined;
93
106
  l2GasLimit?: number | undefined;
94
107
  daGasLimit?: number | undefined;
95
108
  }, {
96
- senderPrivateKey: string;
97
- recipientEncryptionSecret: string;
98
- tokenSalt: string;
99
109
  txIntervalSeconds: number;
100
110
  privateTransfersPerTx: number;
101
111
  publicTransfersPerTx: number;
102
- feePaymentMethod: "fee_juice" | "none";
112
+ feePaymentMethod: "fee_juice";
103
113
  noStart: boolean;
104
114
  txMinedWaitSeconds: number;
105
115
  followChain: "NONE" | "PENDING" | "PROVEN";
@@ -111,16 +121,21 @@ export declare const BotConfigSchema: z.ZodEffects<z.ZodObject<{
111
121
  stopWhenUnhealthy: boolean;
112
122
  nodeUrl?: string | undefined;
113
123
  pxeUrl?: string | undefined;
124
+ l1RpcUrls?: string[] | undefined;
125
+ l1Mnemonic?: string | undefined;
126
+ l1PrivateKey?: string | undefined;
127
+ senderPrivateKey?: any;
128
+ recipientEncryptionSecret?: any;
129
+ tokenSalt?: any;
114
130
  l2GasLimit?: number | undefined;
115
131
  daGasLimit?: number | undefined;
116
132
  }>, {
117
- senderPrivateKey: Fr;
118
133
  recipientEncryptionSecret: Fr;
119
134
  tokenSalt: Fr;
120
135
  txIntervalSeconds: number;
121
136
  privateTransfersPerTx: number;
122
137
  publicTransfersPerTx: number;
123
- feePaymentMethod: "fee_juice" | "none";
138
+ feePaymentMethod: "fee_juice";
124
139
  noStart: boolean;
125
140
  txMinedWaitSeconds: number;
126
141
  followChain: "NONE" | "PENDING" | "PROVEN";
@@ -132,16 +147,17 @@ export declare const BotConfigSchema: z.ZodEffects<z.ZodObject<{
132
147
  stopWhenUnhealthy: boolean;
133
148
  nodeUrl: string | undefined;
134
149
  pxeUrl: string | undefined;
150
+ l1RpcUrls: string[] | undefined;
151
+ l1Mnemonic: string | undefined;
152
+ l1PrivateKey: string | undefined;
153
+ senderPrivateKey: Fr | undefined;
135
154
  l2GasLimit: number | undefined;
136
155
  daGasLimit: number | undefined;
137
156
  }, {
138
- senderPrivateKey: string;
139
- recipientEncryptionSecret: string;
140
- tokenSalt: string;
141
157
  txIntervalSeconds: number;
142
158
  privateTransfersPerTx: number;
143
159
  publicTransfersPerTx: number;
144
- feePaymentMethod: "fee_juice" | "none";
160
+ feePaymentMethod: "fee_juice";
145
161
  noStart: boolean;
146
162
  txMinedWaitSeconds: number;
147
163
  followChain: "NONE" | "PENDING" | "PROVEN";
@@ -153,6 +169,12 @@ export declare const BotConfigSchema: z.ZodEffects<z.ZodObject<{
153
169
  stopWhenUnhealthy: boolean;
154
170
  nodeUrl?: string | undefined;
155
171
  pxeUrl?: string | undefined;
172
+ l1RpcUrls?: string[] | undefined;
173
+ l1Mnemonic?: string | undefined;
174
+ l1PrivateKey?: string | undefined;
175
+ senderPrivateKey?: any;
176
+ recipientEncryptionSecret?: any;
177
+ tokenSalt?: any;
156
178
  l2GasLimit?: number | undefined;
157
179
  daGasLimit?: number | undefined;
158
180
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,EAAE,EAAE,EAAE,MAAM,oBAAoB,CAAC;AACxC,OAAO,EACL,KAAK,kBAAkB,EAMxB,MAAM,0BAA0B,CAAC;AAKlC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,QAAA,MAAM,cAAc,wCAAyC,CAAC;AAC9D,KAAK,cAAc,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;AAEtD,oBAAY,uBAAuB;IACjC,aAAa,kBAAkB;IAC/B,wBAAwB,6BAA6B;CACtD;AAED,MAAM,MAAM,SAAS,GAAG;IACtB,6DAA6D;IAC7D,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,8EAA8E;IAC9E,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,kDAAkD;IAClD,gBAAgB,EAAE,EAAE,CAAC;IACrB,iDAAiD;IACjD,yBAAyB,EAAE,EAAE,CAAC;IAC9B,8CAA8C;IAC9C,SAAS,EAAE,EAAE,CAAC;IACd,sDAAsD;IACtD,iBAAiB,EAAE,MAAM,CAAC;IAC1B,4DAA4D;IAC5D,qBAAqB,EAAE,MAAM,CAAC;IAC9B,2DAA2D;IAC3D,oBAAoB,EAAE,MAAM,CAAC;IAC7B,kCAAkC;IAClC,gBAAgB,EAAE,WAAW,GAAG,MAAM,CAAC;IACvC,0EAA0E;IAC1E,OAAO,EAAE,OAAO,CAAC;IACjB,uEAAuE;IACvE,kBAAkB,EAAE,MAAM,CAAC;IAC3B,4EAA4E;IAC5E,WAAW,EAAE,cAAc,CAAC;IAC5B,gFAAgF;IAChF,aAAa,EAAE,MAAM,CAAC;IACtB,8DAA8D;IAC9D,sBAAsB,EAAE,OAAO,CAAC;IAChC,oEAAoE;IACpE,oBAAoB,EAAE,OAAO,CAAC;IAC9B,+EAA+E;IAC/E,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,+EAA+E;IAC/E,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,4BAA4B;IAC5B,QAAQ,EAAE,uBAAuB,CAAC;IAClC,yEAAyE;IACzE,oBAAoB,EAAE,MAAM,CAAC;IAC7B,iDAAiD;IACjD,iBAAiB,EAAE,OAAO,CAAC;CAC5B,CAAC;AAEF,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6BK,CAAC;AAElC,eAAO,MAAM,iBAAiB,EAAE,kBAAkB,CAAC,SAAS,CAuH3D,CAAC;AAEF,wBAAgB,mBAAmB,IAAI,SAAS,CAE/C;AAED,wBAAgB,mBAAmB,IAAI,SAAS,CAE/C;AAED,wBAAgB,WAAW,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAKzD"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,kBAAkB,EAMxB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAG9C,OAAO,EAAE,KAAK,MAAM,EAAW,MAAM,uBAAuB,CAAC;AAC7D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAEnE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,QAAA,MAAM,cAAc,wCAAyC,CAAC;AAC9D,KAAK,cAAc,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;AAEtD,oBAAY,uBAAuB;IACjC,aAAa,kBAAkB;IAC/B,wBAAwB,6BAA6B;CACtD;AAED,MAAM,MAAM,SAAS,GAAG;IACtB,6DAA6D;IAC7D,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,8EAA8E;IAC9E,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,gCAAgC;IAChC,SAAS,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IAChC,gEAAgE;IAChE,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,mEAAmE;IACnE,YAAY,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,kDAAkD;IAClD,gBAAgB,EAAE,EAAE,GAAG,SAAS,CAAC;IACjC,iDAAiD;IACjD,yBAAyB,EAAE,EAAE,CAAC;IAC9B,8CAA8C;IAC9C,SAAS,EAAE,EAAE,CAAC;IACd,sDAAsD;IACtD,iBAAiB,EAAE,MAAM,CAAC;IAC1B,4DAA4D;IAC5D,qBAAqB,EAAE,MAAM,CAAC;IAC9B,2DAA2D;IAC3D,oBAAoB,EAAE,MAAM,CAAC;IAC7B,kCAAkC;IAClC,gBAAgB,EAAE,WAAW,CAAC;IAC9B,0EAA0E;IAC1E,OAAO,EAAE,OAAO,CAAC;IACjB,uEAAuE;IACvE,kBAAkB,EAAE,MAAM,CAAC;IAC3B,4EAA4E;IAC5E,WAAW,EAAE,cAAc,CAAC;IAC5B,gFAAgF;IAChF,aAAa,EAAE,MAAM,CAAC;IACtB,8DAA8D;IAC9D,sBAAsB,EAAE,OAAO,CAAC;IAChC,oEAAoE;IACpE,oBAAoB,EAAE,OAAO,CAAC;IAC9B,+EAA+E;IAC/E,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,+EAA+E;IAC/E,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,4BAA4B;IAC5B,QAAQ,EAAE,uBAAuB,CAAC;IAClC,yEAAyE;IACzE,oBAAoB,EAAE,MAAM,CAAC;IAC7B,iDAAiD;IACjD,iBAAiB,EAAE,OAAO,CAAC;CAC5B,CAAC;AAEF,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoCK,CAAC;AAElC,eAAO,MAAM,iBAAiB,EAAE,kBAAkB,CAAC,SAAS,CAmI3D,CAAC;AAEF,wBAAgB,mBAAmB,IAAI,SAAS,CAE/C;AAED,wBAAgB,mBAAmB,IAAI,SAAS,CAE/C;AAED,wBAAgB,WAAW,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAKzD"}
package/dest/config.js CHANGED
@@ -1,26 +1,32 @@
1
- import { Fr } from '@aztec/circuits.js';
2
- import { booleanConfigHelper, getConfigFromMappings, getDefaultConfig, numberConfigHelper, optionalNumberConfigHelper, } from '@aztec/foundation/config';
3
- import { schemas } from '@aztec/foundation/schemas';
4
- import { getVKTreeRoot } from '@aztec/noir-protocol-circuits-types/vks';
1
+ import { booleanConfigHelper, getConfigFromMappings, getDefaultConfig, numberConfigHelper, optionalNumberConfigHelper } from '@aztec/foundation/config';
2
+ import { Fr } from '@aztec/foundation/fields';
3
+ import { getVKTreeRoot } from '@aztec/noir-protocol-circuits-types/vk-tree';
5
4
  import { protocolContractTreeRoot } from '@aztec/protocol-contracts';
5
+ import { schemas } from '@aztec/stdlib/schemas';
6
6
  import { z } from 'zod';
7
- const BotFollowChain = ['NONE', 'PENDING', 'PROVEN'];
8
- export var SupportedTokenContracts;
9
- (function (SupportedTokenContracts) {
7
+ const BotFollowChain = [
8
+ 'NONE',
9
+ 'PENDING',
10
+ 'PROVEN'
11
+ ];
12
+ export var SupportedTokenContracts = /*#__PURE__*/ function(SupportedTokenContracts) {
10
13
  SupportedTokenContracts["TokenContract"] = "TokenContract";
11
14
  SupportedTokenContracts["EasyPrivateTokenContract"] = "EasyPrivateTokenContract";
12
- })(SupportedTokenContracts || (SupportedTokenContracts = {}));
13
- export const BotConfigSchema = z
14
- .object({
15
+ return SupportedTokenContracts;
16
+ }({});
17
+ export const BotConfigSchema = z.object({
15
18
  nodeUrl: z.string().optional(),
16
19
  pxeUrl: z.string().optional(),
17
- senderPrivateKey: schemas.Fr,
20
+ l1RpcUrls: z.array(z.string()).optional(),
21
+ l1Mnemonic: z.string().optional(),
22
+ l1PrivateKey: z.string().optional(),
23
+ senderPrivateKey: schemas.Fr.optional(),
18
24
  recipientEncryptionSecret: schemas.Fr,
19
25
  tokenSalt: schemas.Fr,
20
26
  txIntervalSeconds: z.number(),
21
27
  privateTransfersPerTx: z.number(),
22
28
  publicTransfersPerTx: z.number(),
23
- feePaymentMethod: z.union([z.literal('fee_juice'), z.literal('none')]),
29
+ feePaymentMethod: z.literal('fee_juice'),
24
30
  noStart: z.boolean(),
25
31
  txMinedWaitSeconds: z.number(),
26
32
  followChain: z.enum(BotFollowChain),
@@ -31,130 +37,145 @@ export const BotConfigSchema = z
31
37
  daGasLimit: z.number().optional(),
32
38
  contract: z.nativeEnum(SupportedTokenContracts),
33
39
  maxConsecutiveErrors: z.number(),
34
- stopWhenUnhealthy: z.boolean(),
35
- })
36
- .transform(config => ({
37
- nodeUrl: undefined,
38
- pxeUrl: undefined,
39
- l2GasLimit: undefined,
40
- daGasLimit: undefined,
41
- ...config,
42
- }));
40
+ stopWhenUnhealthy: z.boolean()
41
+ }).transform((config)=>({
42
+ nodeUrl: undefined,
43
+ pxeUrl: undefined,
44
+ l1RpcUrls: undefined,
45
+ l1Mnemonic: undefined,
46
+ l1PrivateKey: undefined,
47
+ senderPrivateKey: undefined,
48
+ l2GasLimit: undefined,
49
+ daGasLimit: undefined,
50
+ ...config
51
+ }));
43
52
  export const botConfigMappings = {
44
53
  nodeUrl: {
45
54
  env: 'AZTEC_NODE_URL',
46
- description: 'The URL to the Aztec node to check for tx pool status.',
55
+ description: 'The URL to the Aztec node to check for tx pool status.'
47
56
  },
48
57
  pxeUrl: {
49
58
  env: 'BOT_PXE_URL',
50
- description: 'URL to the PXE for sending txs, or undefined if an in-proc PXE is used.',
59
+ description: 'URL to the PXE for sending txs, or undefined if an in-proc PXE is used.'
60
+ },
61
+ l1RpcUrls: {
62
+ env: 'ETHEREUM_HOSTS',
63
+ description: 'URL of the ethereum host.',
64
+ parseEnv: (val)=>val.split(',').map((url)=>url.trim())
65
+ },
66
+ l1Mnemonic: {
67
+ env: 'BOT_L1_MNEMONIC',
68
+ description: 'The mnemonic for the account to bridge fee juice from L1.'
69
+ },
70
+ l1PrivateKey: {
71
+ env: 'BOT_L1_PRIVATE_KEY',
72
+ description: 'The private key for the account to bridge fee juice from L1.'
51
73
  },
52
74
  senderPrivateKey: {
53
75
  env: 'BOT_PRIVATE_KEY',
54
76
  description: 'Signing private key for the sender account.',
55
- parseEnv: (val) => Fr.fromHexString(val),
56
- defaultValue: Fr.random(),
77
+ parseEnv: (val)=>val ? Fr.fromHexString(val) : undefined
57
78
  },
58
79
  recipientEncryptionSecret: {
59
80
  env: 'BOT_RECIPIENT_ENCRYPTION_SECRET',
60
81
  description: 'Encryption secret for a recipient account.',
61
- parseEnv: (val) => Fr.fromHexString(val),
62
- defaultValue: Fr.fromHexString('0xcafecafe'),
82
+ parseEnv: (val)=>Fr.fromHexString(val),
83
+ defaultValue: Fr.fromHexString('0xcafecafe')
63
84
  },
64
85
  tokenSalt: {
65
86
  env: 'BOT_TOKEN_SALT',
66
87
  description: 'Salt for the token contract deployment.',
67
- parseEnv: (val) => Fr.fromHexString(val),
68
- defaultValue: Fr.fromHexString('1'),
88
+ parseEnv: (val)=>Fr.fromHexString(val),
89
+ defaultValue: Fr.fromHexString('1')
69
90
  },
70
91
  txIntervalSeconds: {
71
92
  env: 'BOT_TX_INTERVAL_SECONDS',
72
93
  description: 'Every how many seconds should a new tx be sent.',
73
- ...numberConfigHelper(60),
94
+ ...numberConfigHelper(60)
74
95
  },
75
96
  privateTransfersPerTx: {
76
97
  env: 'BOT_PRIVATE_TRANSFERS_PER_TX',
77
98
  description: 'How many private token transfers are executed per tx.',
78
- ...numberConfigHelper(1),
99
+ ...numberConfigHelper(1)
79
100
  },
80
101
  publicTransfersPerTx: {
81
102
  env: 'BOT_PUBLIC_TRANSFERS_PER_TX',
82
103
  description: 'How many public token transfers are executed per tx.',
83
- ...numberConfigHelper(1),
104
+ ...numberConfigHelper(1)
84
105
  },
85
106
  feePaymentMethod: {
86
107
  env: 'BOT_FEE_PAYMENT_METHOD',
87
- description: 'How to handle fee payments. (Options: fee_juice, none)',
88
- parseEnv: val => val || undefined,
89
- defaultValue: 'none',
108
+ description: 'How to handle fee payments. (Options: fee_juice)',
109
+ parseEnv: (val)=>val || undefined,
110
+ defaultValue: 'fee_juice'
90
111
  },
91
112
  noStart: {
92
113
  env: 'BOT_NO_START',
93
114
  description: 'True to not automatically setup or start the bot on initialization.',
94
- ...booleanConfigHelper(),
115
+ ...booleanConfigHelper()
95
116
  },
96
117
  txMinedWaitSeconds: {
97
118
  env: 'BOT_TX_MINED_WAIT_SECONDS',
98
119
  description: 'How long to wait for a tx to be mined before reporting an error.',
99
- ...numberConfigHelper(180),
120
+ ...numberConfigHelper(180)
100
121
  },
101
122
  followChain: {
102
123
  env: 'BOT_FOLLOW_CHAIN',
103
124
  description: 'Which chain the bot follows',
104
125
  defaultValue: 'NONE',
105
- parseEnv(val) {
126
+ parseEnv (val) {
106
127
  if (!BotFollowChain.includes(val.toUpperCase())) {
107
128
  throw new Error(`Invalid value for BOT_FOLLOW_CHAIN: ${val}`);
108
129
  }
109
130
  return val;
110
- },
131
+ }
111
132
  },
112
133
  maxPendingTxs: {
113
134
  env: 'BOT_MAX_PENDING_TXS',
114
135
  description: "Do not send a tx if the node's tx pool already has this many pending txs.",
115
- ...numberConfigHelper(128),
136
+ ...numberConfigHelper(128)
116
137
  },
117
138
  flushSetupTransactions: {
118
139
  env: 'BOT_FLUSH_SETUP_TRANSACTIONS',
119
140
  description: 'Make a request for the sequencer to build a block after each setup transaction.',
120
- ...booleanConfigHelper(false),
141
+ ...booleanConfigHelper(false)
121
142
  },
122
143
  skipPublicSimulation: {
123
144
  env: 'BOT_SKIP_PUBLIC_SIMULATION',
124
145
  description: 'Whether to skip public simulation of txs before sending them.',
125
- ...booleanConfigHelper(false),
146
+ ...booleanConfigHelper(false)
126
147
  },
127
148
  l2GasLimit: {
128
149
  env: 'BOT_L2_GAS_LIMIT',
129
150
  description: 'L2 gas limit for the tx (empty to have the bot trigger an estimate gas).',
130
- ...optionalNumberConfigHelper(),
151
+ ...optionalNumberConfigHelper()
131
152
  },
132
153
  daGasLimit: {
133
154
  env: 'BOT_DA_GAS_LIMIT',
134
155
  description: 'DA gas limit for the tx (empty to have the bot trigger an estimate gas).',
135
- ...optionalNumberConfigHelper(),
156
+ ...optionalNumberConfigHelper()
136
157
  },
137
158
  contract: {
138
159
  env: 'BOT_TOKEN_CONTRACT',
139
160
  description: 'Token contract to use',
140
- defaultValue: SupportedTokenContracts.TokenContract,
141
- parseEnv(val) {
161
+ defaultValue: "TokenContract",
162
+ parseEnv (val) {
142
163
  if (!Object.values(SupportedTokenContracts).includes(val)) {
143
164
  throw new Error(`Invalid value for BOT_TOKEN_CONTRACT: ${val}. Valid values: ${Object.values(SupportedTokenContracts).join(', ')}`);
144
165
  }
145
166
  return val;
146
- },
167
+ }
147
168
  },
148
169
  maxConsecutiveErrors: {
149
170
  env: 'BOT_MAX_CONSECUTIVE_ERRORS',
150
171
  description: 'The maximum number of consecutive errors before the bot shuts down',
151
- ...numberConfigHelper(0),
172
+ ...numberConfigHelper(0)
152
173
  },
153
174
  stopWhenUnhealthy: {
154
175
  env: 'BOT_STOP_WHEN_UNHEALTHY',
155
176
  description: 'Stops the bot if service becomes unhealthy',
156
- ...booleanConfigHelper(false),
157
- },
177
+ ...booleanConfigHelper(false)
178
+ }
158
179
  };
159
180
  export function getBotConfigFromEnv() {
160
181
  return getConfigFromMappings(botConfigMappings);
@@ -165,7 +186,6 @@ export function getBotDefaultConfig() {
165
186
  export function getVersions() {
166
187
  return {
167
188
  l2ProtocolContractsTreeRoot: protocolContractTreeRoot.toString(),
168
- l2CircuitsVkTreeRoot: getVKTreeRoot().toString(),
189
+ l2CircuitsVkTreeRoot: getVKTreeRoot().toString()
169
190
  };
170
191
  }
171
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2NvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDeEMsT0FBTyxFQUVMLG1CQUFtQixFQUNuQixxQkFBcUIsRUFDckIsZ0JBQWdCLEVBQ2hCLGtCQUFrQixFQUNsQiwwQkFBMEIsR0FDM0IsTUFBTSwwQkFBMEIsQ0FBQztBQUNsQyxPQUFPLEVBQWUsT0FBTyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDakUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRXJFLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIsTUFBTSxjQUFjLEdBQUcsQ0FBQyxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVEsQ0FBVSxDQUFDO0FBRzlELE1BQU0sQ0FBTixJQUFZLHVCQUdYO0FBSEQsV0FBWSx1QkFBdUI7SUFDakMsMERBQStCLENBQUE7SUFDL0IsZ0ZBQXFELENBQUE7QUFDdkQsQ0FBQyxFQUhXLHVCQUF1QixLQUF2Qix1QkFBdUIsUUFHbEM7QUE2Q0QsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLENBQUM7S0FDN0IsTUFBTSxDQUFDO0lBQ04sT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDOUIsTUFBTSxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDN0IsZ0JBQWdCLEVBQUUsT0FBTyxDQUFDLEVBQUU7SUFDNUIseUJBQXlCLEVBQUUsT0FBTyxDQUFDLEVBQUU7SUFDckMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxFQUFFO0lBQ3JCLGlCQUFpQixFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUU7SUFDN0IscUJBQXFCLEVB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
package/dest/factory.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { type AztecNode, type PXE } from '@aztec/circuit-types';
1
+ import { AztecAddress, type AztecNode, type PXE } from '@aztec/aztec.js';
2
2
  import { EasyPrivateTokenContract } from '@aztec/noir-contracts.js/EasyPrivateToken';
3
3
  import { TokenContract } from '@aztec/noir-contracts.js/Token';
4
4
  import { type BotConfig } from './config.js';
@@ -19,13 +19,15 @@ export declare class BotFactory {
19
19
  wallet: import("@aztec/aztec.js").AccountWalletWithSecretKey;
20
20
  token: TokenContract | EasyPrivateTokenContract;
21
21
  pxe: PXE;
22
- recipient: import("@aztec/aztec.js").AztecAddress;
22
+ recipient: AztecAddress;
23
23
  }>;
24
24
  /**
25
25
  * Checks if the sender account contract is initialized, and initializes it if necessary.
26
26
  * @returns The sender wallet.
27
27
  */
28
28
  private setupAccount;
29
+ private setupAccountWithPrivateKey;
30
+ private setupTestAccount;
29
31
  /**
30
32
  * Registers the recipient for txs in the pxe.
31
33
  */
@@ -41,5 +43,8 @@ export declare class BotFactory {
41
43
  * @param token - Token contract.
42
44
  */
43
45
  private mintTokens;
46
+ private bridgeL1FeeJuice;
47
+ private advanceL2Block;
48
+ private tryFlushTxs;
44
49
  }
45
50
  //# sourceMappingURL=factory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,SAAS,EAAqB,KAAK,GAAG,EAAE,MAAM,sBAAsB,CAAC;AAEnF,OAAO,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAC;AACrF,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAG/D,OAAO,EAAE,KAAK,SAAS,EAAwC,MAAM,aAAa,CAAC;AAMnF,qBAAa,UAAU;IAKT,OAAO,CAAC,QAAQ,CAAC,MAAM;IAJnC,OAAO,CAAC,GAAG,CAAM;IACjB,OAAO,CAAC,IAAI,CAAC,CAAY;IACzB,OAAO,CAAC,GAAG,CAAuB;gBAEL,MAAM,EAAE,SAAS,EAAE,YAAY,GAAE;QAAE,GAAG,CAAC,EAAE,GAAG,CAAC;QAAC,IAAI,CAAC,EAAE,SAAS,CAAA;KAAO;IAmBlG;;;OAGG;IACU,KAAK;;;;;;IAQlB;;;OAGG;YACW,YAAY;IAwB1B;;OAEG;YACW,iBAAiB;IAK/B;;;;OAIG;YACW,UAAU;IAiCxB;;;OAGG;YACW,UAAU;CAyCzB"}
1
+ {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,YAAY,EACZ,KAAK,SAAS,EAMd,KAAK,GAAG,EAIT,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAC;AACrF,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAK/D,OAAO,EAAE,KAAK,SAAS,EAAwC,MAAM,aAAa,CAAC;AAMnF,qBAAa,UAAU;IAKT,OAAO,CAAC,QAAQ,CAAC,MAAM;IAJnC,OAAO,CAAC,GAAG,CAAM;IACjB,OAAO,CAAC,IAAI,CAAC,CAAY;IACzB,OAAO,CAAC,GAAG,CAAuB;gBAEL,MAAM,EAAE,SAAS,EAAE,YAAY,GAAE;QAAE,GAAG,CAAC,EAAE,GAAG,CAAC;QAAC,IAAI,CAAC,EAAE,SAAS,CAAA;KAAO;IAwBlG;;;OAGG;IACU,KAAK;;;;;;IAQlB;;;OAGG;YACW,YAAY;YAQZ,0BAA0B;YA4B1B,gBAAgB;IAc9B;;OAEG;YACW,iBAAiB;IAK/B;;;;OAIG;YACW,UAAU;IA8BxB;;;OAGG;YACW,UAAU;YAuCV,gBAAgB;YA+BhB,cAAc;YAMd,WAAW;CAU1B"}