@aztec/cli 0.16.9 → 0.75.0-commit.c03ba01a2a4122e43e90d5133ba017e54b90e9d2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (219) hide show
  1. package/README.md +9 -15
  2. package/dest/cmds/contracts/index.js +12 -0
  3. package/dest/cmds/contracts/inspect_contract.js +37 -0
  4. package/dest/cmds/contracts/parse_parameter_struct.js +13 -0
  5. package/dest/cmds/devnet/bootstrap_network.js +193 -0
  6. package/dest/cmds/devnet/faucet.js +26 -0
  7. package/dest/cmds/devnet/index.js +12 -0
  8. package/dest/cmds/infrastructure/index.js +22 -0
  9. package/dest/cmds/infrastructure/sequencers.js +93 -0
  10. package/dest/cmds/infrastructure/setup_protocol_contract.js +31 -0
  11. package/dest/cmds/l1/advance_epoch.js +10 -0
  12. package/dest/cmds/l1/assume_proven_through.js +12 -0
  13. package/dest/cmds/l1/bridge_erc20.js +31 -0
  14. package/dest/cmds/l1/create_l1_account.js +15 -0
  15. package/dest/cmds/l1/deploy_l1_contracts.js +25 -0
  16. package/dest/cmds/l1/deploy_l1_verifier.js +54 -0
  17. package/dest/cmds/l1/get_l1_balance.js +33 -0
  18. package/dest/cmds/l1/index.js +127 -0
  19. package/dest/cmds/l1/prover_stats.js +145 -0
  20. package/dest/cmds/l1/update_l1_validators.js +186 -0
  21. package/dest/cmds/misc/compute_selector.js +5 -0
  22. package/dest/cmds/misc/example_contracts.js +6 -0
  23. package/dest/cmds/misc/generate_p2p_private_key.js +7 -0
  24. package/dest/cmds/misc/generate_secret_and_hash.js +11 -0
  25. package/dest/cmds/misc/generate_secret_key.js +6 -0
  26. package/dest/cmds/misc/index.js +36 -0
  27. package/dest/cmds/misc/setup_contracts.js +25 -0
  28. package/dest/cmds/misc/update/common.js +3 -0
  29. package/dest/cmds/misc/update/github.js +3 -0
  30. package/dest/cmds/misc/update/noir.js +45 -0
  31. package/dest/cmds/misc/update/npm.js +127 -0
  32. package/dest/cmds/misc/update/utils.js +38 -0
  33. package/dest/cmds/misc/update.js +52 -0
  34. package/dest/cmds/pxe/add_contract.js +27 -0
  35. package/dest/cmds/pxe/block_number.js +10 -0
  36. package/dest/cmds/pxe/get_account.js +10 -0
  37. package/dest/cmds/pxe/get_accounts.js +25 -0
  38. package/dest/cmds/pxe/get_block.js +9 -0
  39. package/dest/cmds/pxe/get_contract_data.js +31 -0
  40. package/dest/cmds/pxe/get_current_base_fee.js +7 -0
  41. package/dest/cmds/pxe/get_l1_to_l2_message_witness.js +11 -0
  42. package/dest/cmds/pxe/get_logs.js +51 -0
  43. package/dest/cmds/pxe/get_node_info.js +61 -0
  44. package/dest/cmds/pxe/get_pxe_info.js +11 -0
  45. package/dest/cmds/pxe/index.js +55 -0
  46. package/dest/utils/aztec.js +162 -0
  47. package/dest/utils/commands.js +303 -0
  48. package/dest/utils/encoding.js +110 -0
  49. package/dest/utils/github.js +3 -0
  50. package/dest/utils/index.js +4 -0
  51. package/dest/utils/inspect.js +177 -0
  52. package/package.json +70 -21
  53. package/src/cmds/contracts/index.ts +34 -0
  54. package/src/cmds/contracts/inspect_contract.ts +51 -0
  55. package/src/cmds/contracts/parse_parameter_struct.ts +27 -0
  56. package/src/cmds/devnet/bootstrap_network.ts +306 -0
  57. package/src/cmds/devnet/faucet.ts +33 -0
  58. package/src/cmds/devnet/index.ts +52 -0
  59. package/src/cmds/infrastructure/index.ts +54 -0
  60. package/src/cmds/infrastructure/sequencers.ts +100 -0
  61. package/src/cmds/infrastructure/setup_protocol_contract.ts +36 -0
  62. package/src/cmds/l1/advance_epoch.ts +12 -0
  63. package/src/cmds/l1/assume_proven_through.ts +25 -0
  64. package/src/cmds/l1/bridge_erc20.ts +53 -0
  65. package/src/cmds/l1/create_l1_account.ts +17 -0
  66. package/src/cmds/l1/deploy_l1_contracts.ts +55 -0
  67. package/src/cmds/l1/deploy_l1_verifier.ts +105 -0
  68. package/src/cmds/l1/get_l1_balance.ts +41 -0
  69. package/src/cmds/l1/index.ts +415 -0
  70. package/src/cmds/l1/prover_stats.ts +192 -0
  71. package/src/cmds/l1/update_l1_validators.ts +238 -0
  72. package/src/cmds/misc/compute_selector.ts +7 -0
  73. package/src/cmds/misc/example_contracts.ts +12 -0
  74. package/src/cmds/misc/generate_p2p_private_key.ts +10 -0
  75. package/src/cmds/misc/generate_secret_and_hash.ts +15 -0
  76. package/src/cmds/misc/generate_secret_key.ts +5 -0
  77. package/src/cmds/misc/index.ts +70 -0
  78. package/src/cmds/misc/setup_contracts.ts +38 -0
  79. package/src/cmds/misc/update/common.ts +16 -0
  80. package/src/cmds/misc/update/github.ts +3 -0
  81. package/src/cmds/misc/update/noir.ts +57 -0
  82. package/src/cmds/misc/update/npm.ts +154 -0
  83. package/src/cmds/misc/update/utils.ts +50 -0
  84. package/src/cmds/misc/update.ts +78 -0
  85. package/src/cmds/pxe/add_contract.ts +39 -0
  86. package/src/cmds/pxe/block_number.ts +9 -0
  87. package/src/cmds/pxe/get_account.ts +16 -0
  88. package/src/cmds/pxe/get_accounts.ts +35 -0
  89. package/src/cmds/pxe/get_block.ts +10 -0
  90. package/src/cmds/pxe/get_contract_data.ts +49 -0
  91. package/src/cmds/pxe/get_current_base_fee.ts +9 -0
  92. package/src/cmds/pxe/get_l1_to_l2_message_witness.ts +25 -0
  93. package/src/cmds/pxe/get_logs.ts +66 -0
  94. package/src/cmds/pxe/get_node_info.ts +71 -0
  95. package/src/cmds/pxe/get_pxe_info.ts +13 -0
  96. package/src/cmds/pxe/index.ts +170 -0
  97. package/src/utils/aztec.ts +218 -0
  98. package/src/utils/commands.ts +384 -0
  99. package/src/utils/encoding.ts +123 -0
  100. package/src/utils/github.ts +3 -0
  101. package/src/utils/index.ts +4 -0
  102. package/src/utils/inspect.ts +207 -0
  103. package/dest/bin/index.d.ts +0 -3
  104. package/dest/bin/index.d.ts.map +0 -1
  105. package/dest/bin/index.js +0 -18
  106. package/dest/client.d.ts +0 -17
  107. package/dest/client.d.ts.map +0 -1
  108. package/dest/client.js +0 -60
  109. package/dest/cmds/add_contract.d.ts +0 -7
  110. package/dest/cmds/add_contract.d.ts.map +0 -1
  111. package/dest/cmds/add_contract.js +0 -15
  112. package/dest/cmds/add_note.d.ts +0 -8
  113. package/dest/cmds/add_note.d.ts.map +0 -1
  114. package/dest/cmds/add_note.js +0 -13
  115. package/dest/cmds/block_number.d.ts +0 -6
  116. package/dest/cmds/block_number.d.ts.map +0 -1
  117. package/dest/cmds/block_number.js +0 -10
  118. package/dest/cmds/call.d.ts +0 -7
  119. package/dest/cmds/call.d.ts.map +0 -1
  120. package/dest/cmds/call.js +0 -18
  121. package/dest/cmds/check_deploy.d.ts +0 -7
  122. package/dest/cmds/check_deploy.d.ts.map +0 -1
  123. package/dest/cmds/check_deploy.js +0 -16
  124. package/dest/cmds/compute_selector.d.ts +0 -6
  125. package/dest/cmds/compute_selector.d.ts.map +0 -1
  126. package/dest/cmds/compute_selector.js +0 -9
  127. package/dest/cmds/create_account.d.ts +0 -7
  128. package/dest/cmds/create_account.d.ts.map +0 -1
  129. package/dest/cmds/create_account.js +0 -30
  130. package/dest/cmds/deploy.d.ts +0 -7
  131. package/dest/cmds/deploy.d.ts.map +0 -1
  132. package/dest/cmds/deploy.js +0 -58
  133. package/dest/cmds/deploy_l1_contracts.d.ts +0 -6
  134. package/dest/cmds/deploy_l1_contracts.d.ts.map +0 -1
  135. package/dest/cmds/deploy_l1_contracts.js +0 -15
  136. package/dest/cmds/example_contracts.d.ts +0 -6
  137. package/dest/cmds/example_contracts.d.ts.map +0 -1
  138. package/dest/cmds/example_contracts.js +0 -10
  139. package/dest/cmds/generate_p2p_private_key.d.ts +0 -6
  140. package/dest/cmds/generate_p2p_private_key.d.ts.map +0 -1
  141. package/dest/cmds/generate_p2p_private_key.js +0 -11
  142. package/dest/cmds/generate_private_key.d.ts +0 -6
  143. package/dest/cmds/generate_private_key.d.ts.map +0 -1
  144. package/dest/cmds/generate_private_key.js +0 -22
  145. package/dest/cmds/get_account.d.ts +0 -7
  146. package/dest/cmds/get_account.d.ts.map +0 -1
  147. package/dest/cmds/get_account.js +0 -15
  148. package/dest/cmds/get_accounts.d.ts +0 -6
  149. package/dest/cmds/get_accounts.d.ts.map +0 -1
  150. package/dest/cmds/get_accounts.js +0 -18
  151. package/dest/cmds/get_contract_data.d.ts +0 -7
  152. package/dest/cmds/get_contract_data.d.ts.map +0 -1
  153. package/dest/cmds/get_contract_data.js +0 -28
  154. package/dest/cmds/get_logs.d.ts +0 -7
  155. package/dest/cmds/get_logs.d.ts.map +0 -1
  156. package/dest/cmds/get_logs.js +0 -54
  157. package/dest/cmds/get_node_info.d.ts +0 -6
  158. package/dest/cmds/get_node_info.d.ts.map +0 -1
  159. package/dest/cmds/get_node_info.js +0 -15
  160. package/dest/cmds/get_recipient.d.ts +0 -7
  161. package/dest/cmds/get_recipient.d.ts.map +0 -1
  162. package/dest/cmds/get_recipient.js +0 -15
  163. package/dest/cmds/get_recipients.d.ts +0 -6
  164. package/dest/cmds/get_recipients.d.ts.map +0 -1
  165. package/dest/cmds/get_recipients.js +0 -18
  166. package/dest/cmds/get_tx_receipt.d.ts +0 -7
  167. package/dest/cmds/get_tx_receipt.d.ts.map +0 -1
  168. package/dest/cmds/get_tx_receipt.js +0 -16
  169. package/dest/cmds/inspect_contract.d.ts +0 -6
  170. package/dest/cmds/inspect_contract.d.ts.map +0 -1
  171. package/dest/cmds/inspect_contract.js +0 -19
  172. package/dest/cmds/parse_parameter_struct.d.ts +0 -6
  173. package/dest/cmds/parse_parameter_struct.d.ts.map +0 -1
  174. package/dest/cmds/parse_parameter_struct.js +0 -20
  175. package/dest/cmds/register_account.d.ts +0 -7
  176. package/dest/cmds/register_account.d.ts.map +0 -1
  177. package/dest/cmds/register_account.js +0 -13
  178. package/dest/cmds/register_recipient.d.ts +0 -7
  179. package/dest/cmds/register_recipient.d.ts.map +0 -1
  180. package/dest/cmds/register_recipient.js +0 -11
  181. package/dest/cmds/send.d.ts +0 -7
  182. package/dest/cmds/send.d.ts.map +0 -1
  183. package/dest/cmds/send.js +0 -26
  184. package/dest/cmds/unbox.d.ts +0 -6
  185. package/dest/cmds/unbox.d.ts.map +0 -1
  186. package/dest/cmds/unbox.js +0 -9
  187. package/dest/encoding.d.ts +0 -15
  188. package/dest/encoding.d.ts.map +0 -1
  189. package/dest/encoding.js +0 -114
  190. package/dest/github.d.ts +0 -4
  191. package/dest/github.d.ts.map +0 -1
  192. package/dest/github.js +0 -4
  193. package/dest/index.d.ts +0 -10
  194. package/dest/index.d.ts.map +0 -1
  195. package/dest/index.js +0 -321
  196. package/dest/parse_args.d.ts +0 -105
  197. package/dest/parse_args.d.ts.map +0 -1
  198. package/dest/parse_args.js +0 -233
  199. package/dest/test/mocks.d.ts +0 -3
  200. package/dest/test/mocks.d.ts.map +0 -1
  201. package/dest/test/mocks.js +0 -65
  202. package/dest/unbox.d.ts +0 -14
  203. package/dest/unbox.d.ts.map +0 -1
  204. package/dest/unbox.js +0 -276
  205. package/dest/update/common.d.ts +0 -17
  206. package/dest/update/common.d.ts.map +0 -1
  207. package/dest/update/common.js +0 -2
  208. package/dest/update/noir.d.ts +0 -10
  209. package/dest/update/noir.d.ts.map +0 -1
  210. package/dest/update/noir.js +0 -63
  211. package/dest/update/npm.d.ts +0 -34
  212. package/dest/update/npm.d.ts.map +0 -1
  213. package/dest/update/npm.js +0 -125
  214. package/dest/update/update.d.ts +0 -3
  215. package/dest/update/update.d.ts.map +0 -1
  216. package/dest/update/update.js +0 -58
  217. package/dest/utils.d.ts +0 -70
  218. package/dest/utils.d.ts.map +0 -1
  219. package/dest/utils.js +0 -168
@@ -1,233 +0,0 @@
1
- import { FunctionSelector } from '@aztec/aztec.js/abi';
2
- import { AztecAddress } from '@aztec/aztec.js/aztec_address';
3
- import { EthAddress } from '@aztec/aztec.js/eth_address';
4
- import { Fr, GrumpkinScalar, Point } from '@aztec/aztec.js/fields';
5
- import { LogId } from '@aztec/aztec.js/log_id';
6
- import { TxHash } from '@aztec/aztec.js/tx_hash';
7
- import { InvalidArgumentError } from 'commander';
8
- /**
9
- * Removes the leading 0x from a hex string. If no leading 0x is found the string is returned unchanged.
10
- * @param hex - A hex string
11
- * @returns A new string with leading 0x removed
12
- */
13
- const stripLeadingHex = (hex) => {
14
- if (hex.length > 2 && hex.startsWith('0x')) {
15
- return hex.substring(2);
16
- }
17
- return hex;
18
- };
19
- /**
20
- * Parses a hex encoded string to an Fr integer to be used as salt
21
- * @param str - Hex encoded string
22
- * @returns A integer to be used as salt
23
- */
24
- export function parseSaltFromHexString(str) {
25
- const hex = stripLeadingHex(str);
26
- // ensure it's a hex string
27
- if (!hex.match(/^[0-9a-f]+$/i)) {
28
- throw new InvalidArgumentError('Invalid hex string');
29
- }
30
- // pad it so that we may read it as a buffer.
31
- // Buffer needs _exactly_ two hex characters per byte
32
- const padded = hex.length % 2 === 1 ? '0' + hex : hex;
33
- // finally, turn it into an integer
34
- return Fr.fromBuffer(Buffer.from(padded, 'hex'));
35
- }
36
- /**
37
- * Parses an AztecAddress from a string.
38
- * @param address - A serialized Aztec address
39
- * @returns An Aztec address
40
- * @throws InvalidArgumentError if the input string is not valid.
41
- */
42
- export function parseAztecAddress(address) {
43
- try {
44
- return AztecAddress.fromString(address);
45
- }
46
- catch {
47
- throw new InvalidArgumentError(`Invalid address: ${address}`);
48
- }
49
- }
50
- /**
51
- * Parses an Ethereum address from a string.
52
- * @param address - A serialized Ethereum address
53
- * @returns An Ethereum address
54
- * @throws InvalidArgumentError if the input string is not valid.
55
- */
56
- export function parseEthereumAddress(address) {
57
- try {
58
- return EthAddress.fromString(address);
59
- }
60
- catch {
61
- throw new InvalidArgumentError(`Invalid address: ${address}`);
62
- }
63
- }
64
- /**
65
- * Parses an AztecAddress from a string.
66
- * @param address - A serialized Aztec address
67
- * @returns An Aztec address
68
- * @throws InvalidArgumentError if the input string is not valid.
69
- */
70
- export function parseOptionalAztecAddress(address) {
71
- if (!address) {
72
- return undefined;
73
- }
74
- return parseAztecAddress(address);
75
- }
76
- /**
77
- * Parses an optional log ID string into a LogId object.
78
- *
79
- * @param logId - The log ID string to parse.
80
- * @returns The parsed LogId object, or undefined if the log ID is missing or empty.
81
- */
82
- export function parseOptionalLogId(logId) {
83
- if (!logId) {
84
- return undefined;
85
- }
86
- return LogId.fromString(logId);
87
- }
88
- /**
89
- * Parses a selector from a string.
90
- * @param selector - A serialized selector.
91
- * @returns A selector.
92
- * @throws InvalidArgumentError if the input string is not valid.
93
- */
94
- export function parseOptionalSelector(selector) {
95
- if (!selector) {
96
- return undefined;
97
- }
98
- try {
99
- return FunctionSelector.fromString(selector);
100
- }
101
- catch {
102
- throw new InvalidArgumentError(`Invalid selector: ${selector}`);
103
- }
104
- }
105
- /**
106
- * Parses a string into an integer or returns undefined if the input is falsy.
107
- *
108
- * @param value - The string to parse into an integer.
109
- * @returns The parsed integer, or undefined if the input string is falsy.
110
- * @throws If the input is not a valid integer.
111
- */
112
- export function parseOptionalInteger(value) {
113
- if (!value) {
114
- return undefined;
115
- }
116
- const parsed = Number(value);
117
- if (!Number.isInteger(parsed)) {
118
- throw new InvalidArgumentError('Invalid integer.');
119
- }
120
- return parsed;
121
- }
122
- /**
123
- * Parses a TxHash from a string.
124
- * @param txHash - A transaction hash
125
- * @returns A TxHash instance
126
- * @throws InvalidArgumentError if the input string is not valid.
127
- */
128
- export function parseTxHash(txHash) {
129
- try {
130
- return TxHash.fromString(txHash);
131
- }
132
- catch {
133
- throw new InvalidArgumentError(`Invalid transaction hash: ${txHash}`);
134
- }
135
- }
136
- /**
137
- * Parses an optional TxHash from a string.
138
- * Calls parseTxHash internally.
139
- * @param txHash - A transaction hash
140
- * @returns A TxHash instance, or undefined if the input string is falsy.
141
- * @throws InvalidArgumentError if the input string is not valid.
142
- */
143
- export function parseOptionalTxHash(txHash) {
144
- if (!txHash) {
145
- return undefined;
146
- }
147
- return parseTxHash(txHash);
148
- }
149
- /**
150
- * Parses a public key from a string.
151
- * @param publicKey - A public key
152
- * @returns A Point instance
153
- * @throws InvalidArgumentError if the input string is not valid.
154
- */
155
- export function parsePublicKey(publicKey) {
156
- try {
157
- return Point.fromString(publicKey);
158
- }
159
- catch (err) {
160
- throw new InvalidArgumentError(`Invalid public key: ${publicKey}`);
161
- }
162
- }
163
- /**
164
- * Parses a partial address from a string.
165
- * @param address - A partial address
166
- * @returns A Fr instance
167
- * @throws InvalidArgumentError if the input string is not valid.
168
- */
169
- export function parsePartialAddress(address) {
170
- try {
171
- return Fr.fromString(address);
172
- }
173
- catch (err) {
174
- throw new InvalidArgumentError(`Invalid partial address: ${address}`);
175
- }
176
- }
177
- /**
178
- * Parses a private key from a string.
179
- * @param privateKey - A string
180
- * @returns A private key
181
- * @throws InvalidArgumentError if the input string is not valid.
182
- */
183
- export function parsePrivateKey(privateKey) {
184
- try {
185
- const value = GrumpkinScalar.fromString(privateKey);
186
- // most likely a badly formatted key was passed
187
- if (value.isZero()) {
188
- throw new Error('Private key must not be zero');
189
- }
190
- return value;
191
- }
192
- catch (err) {
193
- throw new InvalidArgumentError(`Invalid private key: ${privateKey}`);
194
- }
195
- }
196
- /**
197
- * Parses a field from a string.
198
- * @param field - A string representing the field.
199
- * @returns A field.
200
- * @throws InvalidArgumentError if the input string is not valid.
201
- */
202
- export function parseField(field) {
203
- try {
204
- const isHex = field.startsWith('0x') || field.match(new RegExp(`^[0-9a-f]{${Fr.SIZE_IN_BYTES * 2}}$`, 'i'));
205
- if (isHex) {
206
- return Fr.fromString(field);
207
- }
208
- if (['true', 'false'].includes(field)) {
209
- return new Fr(field === 'true');
210
- }
211
- const isNumber = +field || field === '0';
212
- if (isNumber) {
213
- return new Fr(BigInt(field));
214
- }
215
- const isBigInt = field.endsWith('n');
216
- if (isBigInt) {
217
- return new Fr(BigInt(field.replace(/n$/, '')));
218
- }
219
- return new Fr(BigInt(field));
220
- }
221
- catch (err) {
222
- throw new InvalidArgumentError(`Invalid field: ${field}`);
223
- }
224
- }
225
- /**
226
- * Parses an array of strings to Frs.
227
- * @param fields - An array of strings representing the fields.
228
- * @returns An array of Frs.
229
- */
230
- export function parseFields(fields) {
231
- return fields.map(parseField);
232
- }
233
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2VfYXJncy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9wYXJzZV9hcmdzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUM3RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDekQsT0FBTyxFQUFFLEVBQUUsRUFBRSxjQUFjLEVBQUUsS0FBSyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDbkUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQy9DLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUVqRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFakQ7Ozs7R0FJRztBQUNILE1BQU0sZUFBZSxHQUFHLENBQUMsR0FBVyxFQUFFLEVBQUU7SUFDdEMsSUFBSSxHQUFHLENBQUMsTUFBTSxHQUFHLENBQUMsSUFBSSxHQUFHLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFO1FBQzFDLE9BQU8sR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUN6QjtJQUNELE9BQU8sR0FBRyxDQUFDO0FBQ2IsQ0FBQyxDQUFDO0FBRUY7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxzQkFBc0IsQ0FBQyxHQUFXO0lBQ2hELE1BQU0sR0FBRyxHQUFHLGVBQWUsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUVqQywyQkFBMkI7SUFDM0IsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLEVBQUU7UUFDOUIsTUFBTSxJQUFJLG9CQUFvQixDQUFDLG9CQUFvQixDQUFDLENBQUM7S0FDdEQ7SUFFRCw2Q0FBNkM7SUFDN0MscURBQXFEO0lBQ3JELE1BQU0sTUFBTSxHQUFH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
@@ -1,3 +0,0 @@
1
- import { ContractArtifact } from '@aztec/foundation/abi';
2
- export declare const mockContractArtifact: ContractArtifact;
3
- //# sourceMappingURL=mocks.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mocks.d.ts","sourceRoot":"","sources":["../../src/test/mocks.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0B,gBAAgB,EAAgB,MAAM,uBAAuB,CAAC;AAE/F,eAAO,MAAM,oBAAoB,EAAE,gBA8DlC,CAAC"}
@@ -1,65 +0,0 @@
1
- import { ABIParameterVisibility, FunctionType } from '@aztec/foundation/abi';
2
- export const mockContractArtifact = {
3
- name: 'MockContract',
4
- functions: [
5
- {
6
- name: 'constructor',
7
- functionType: FunctionType.SECRET,
8
- isInternal: false,
9
- parameters: [
10
- {
11
- name: 'constructorParam1',
12
- type: {
13
- kind: 'field',
14
- },
15
- visibility: ABIParameterVisibility.SECRET,
16
- },
17
- ],
18
- returnTypes: [],
19
- bytecode: 'constructorBytecode',
20
- },
21
- {
22
- name: 'mockFunction',
23
- functionType: FunctionType.SECRET,
24
- isInternal: false,
25
- parameters: [
26
- {
27
- name: 'fieldParam',
28
- type: { kind: 'field' },
29
- visibility: ABIParameterVisibility.SECRET,
30
- },
31
- {
32
- name: 'boolParam',
33
- type: { kind: 'boolean' },
34
- visibility: ABIParameterVisibility.SECRET,
35
- },
36
- {
37
- name: 'integerParam',
38
- type: { kind: 'integer', sign: 'signed', width: 32 },
39
- visibility: ABIParameterVisibility.SECRET,
40
- },
41
- {
42
- name: 'arrayParam',
43
- type: { kind: 'array', length: 3, type: { kind: 'field' } },
44
- visibility: ABIParameterVisibility.SECRET,
45
- },
46
- {
47
- name: 'structParam',
48
- type: {
49
- kind: 'struct',
50
- path: 'mystruct',
51
- fields: [
52
- { name: 'subField1', type: { kind: 'field' } },
53
- { name: 'subField2', type: { kind: 'boolean' } },
54
- ],
55
- },
56
- visibility: ABIParameterVisibility.SECRET,
57
- },
58
- ],
59
- returnTypes: [{ kind: 'boolean' }],
60
- bytecode: 'mockBytecode',
61
- },
62
- ],
63
- events: [],
64
- };
65
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ja3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdGVzdC9tb2Nrcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsc0JBQXNCLEVBQW9CLFlBQVksRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRS9GLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFxQjtJQUNwRCxJQUFJLEVBQUUsY0FBYztJQUNwQixTQUFTLEVBQUU7UUFDVDtZQUNFLElBQUksRUFBRSxhQUFhO1lBQ25CLFlBQVksRUFBRSxZQUFZLENBQUMsTUFBTTtZQUNqQyxVQUFVLEVBQUUsS0FBSztZQUNqQixVQUFVLEVBQUU7Z0JBQ1Y7b0JBQ0UsSUFBSSxFQUFFLG1CQUFtQjtvQkFDekIsSUFBSSxFQUFFO3dCQUNKLElBQUksRUFBRSxPQUFPO3FCQUNkO29CQUNELFVBQVUsRUFBRSxzQkFBc0IsQ0FBQyxNQUFNO2lCQUMxQzthQUNGO1lBQ0QsV0FBVyxFQUFFLEVBQUU7WUFDZixRQUFRLEVBQUUscUJBQXFCO1NBQ2hDO1FBQ0Q7WUFDRSxJQUFJLEVBQUUsY0FBYztZQUNwQixZQUFZLEVBQUUsWUFBWSxDQUFDLE1BQU07WUFDakMsVUFBVSxFQUFFLEtBQUs7WUFDakIsVUFBVSxFQUFFO2dCQUNWO29CQUNFLElBQUksRUFBRSxZQUFZO29CQUNsQixJQUFJLEVBQUUsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFO29CQUN2QixVQUFVLEVBQUUsc0JBQXNCLENBQUMsTUFBTTtpQkFDMUM7Z0JBQ0Q7b0JBQ0UsSUFBSSxFQUFFLFdBQVc7b0JBQ2pCLElBQUksRUFBRSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUU7b0JBQ3pCLFVBQVUsRUFBRSxzQkFBc0IsQ0FBQyxNQUFNO2lCQUMxQztnQkFDRDtvQkFDRSxJQUFJLEVBQUUsY0FBYztvQkFDcEIsSUFBSSxFQUFFLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUU7b0JBQ3BELFVBQVUsRUFBRSxzQkFBc0IsQ0FBQyxNQUFNO2lCQUMxQztnQkFDRDtvQkFDRSxJQUFJLEVBQUUsWUFBWTtvQkFDbEIsSUFBSSxFQUFFLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsRUFBRTtvQkFDM0QsVUFBVSxFQUFFLHNCQUFzQixDQUFDLE1BQU07aUJBQzFDO2dCQUNEO29CQUNFLElBQUksRUFBRSxhQUFhO29CQUNuQixJQUFJLEVBQUU7d0JBQ0osSUFBSSxFQUFFLFFBQVE7d0JBQ2QsSUFBSSxFQUFFLFVBQVU7d0JBQ2hCLE1BQU0sRUFBRTs0QkFDTixFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxFQUFFOzRCQUM5QyxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxFQUFFO3lCQUNqRDtxQkFDRjtvQkFDRCxVQUFVLEVBQUUsc0JBQXNCLENBQUMsTUFBTTtpQkFDMUM7YUFDRjtZQUNELFdBQVcsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxDQUFDO1lBQ2xDLFFBQVEsRUFBRSxjQUFjO1NBQ3pCO0tBQ0Y7SUFDRCxNQUFNLEVBQUUsRUFBRTtDQUNYLENBQUMifQ==
package/dest/unbox.d.ts DELETED
@@ -1,14 +0,0 @@
1
- import { LogFn } from '@aztec/foundation/log';
2
- /**
3
- * Unboxes a contract from `@aztec/boxes` by performing the following operations:
4
- * 1. Copies the frontend template from `@aztec/boxes/{contract_name}` to the outputDirectory
5
- * 2. Checks if the contract source was copied over from `@aztec/boxes/{contract_name}/src/contracts`
6
- * 3. If not, copies the contract from the appropriate `@aztec/noir-contracts/src/contracts/...` folder.
7
- *
8
- * The box provides a simple React app which parses the contract ABI
9
- * and generates a UI to deploy + interact with the contract on a local aztec testnet.
10
- * @param contractName - name of contract from `@aztec/noir-contracts`, in a format like "PrivateToken" (rather than "private_token", as it appears in the noir-contracts repo)
11
- * @param log - Logger instance that will output to the CLI
12
- */
13
- export declare function unboxContract(contractName: string, outputDirectoryName: string, packageVersion: string, log: LogFn): Promise<void>;
14
- //# sourceMappingURL=unbox.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"unbox.d.ts","sourceRoot":"","sources":["../src/unbox.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAmS9C;;;;;;;;;;GAUG;AACH,wBAAsB,aAAa,CACjC,YAAY,EAAE,MAAM,EACpB,mBAAmB,EAAE,MAAM,EAC3B,cAAc,EAAE,MAAM,EACtB,GAAG,EAAE,KAAK,iBA6BX"}
package/dest/unbox.js DELETED
@@ -1,276 +0,0 @@
1
- import { promises as fs } from 'fs';
2
- import JSZip from 'jszip';
3
- import fetch from 'node-fetch';
4
- import * as path from 'path';
5
- import { GITHUB_OWNER, GITHUB_REPO, GITHUB_TAG_PREFIX } from './github.js';
6
- const BOXES_PATH = 'yarn-project/boxes';
7
- /**
8
- * If the box contains the noir contract source code, we don't need to download it from github.
9
- * Otherwise, we download the contract source code from the `noir-contracts` and `noir-libs` subpackages.
10
- */
11
- async function isDirectoryNonEmpty(directoryPath) {
12
- try {
13
- const files = await fs.readdir(directoryPath);
14
- return files.length > 0;
15
- }
16
- catch (e) {
17
- // Directory does not exist.
18
- return false;
19
- }
20
- }
21
- /**
22
- *
23
- * @param data - in memory unzipped clone of a github repo
24
- * @param repositoryFolderPath - folder to copy from github repo
25
- * @param localOutputPath - local path to copy to
26
- */
27
- async function copyFolderFromGithub(data, repositoryFolderPath, localOutputPath, log) {
28
- log(`Downloading folder from github: ${repositoryFolderPath}`);
29
- const repositoryDirectories = Object.values(data.files).filter(file => {
30
- return file.dir && file.name.startsWith(repositoryFolderPath);
31
- });
32
- for (const directory of repositoryDirectories) {
33
- const relativePath = directory.name.replace(repositoryFolderPath, '');
34
- const targetPath = `${localOutputPath}/${relativePath}`;
35
- await fs.mkdir(targetPath, { recursive: true });
36
- }
37
- const folderFiles = Object.values(data.files).filter(file => {
38
- return !file.dir && file.name.startsWith(repositoryFolderPath);
39
- });
40
- for (const file of folderFiles) {
41
- const relativePath = file.name.replace(repositoryFolderPath, '');
42
- const targetPath = `${localOutputPath}/${relativePath}`;
43
- const content = await file.async('nodebuffer');
44
- await fs.writeFile(targetPath, content);
45
- }
46
- }
47
- /**
48
- * @param data - in memory unzipped clone of a github repo
49
- * @param repositoryFile - path of the file to copy from github repo
50
- * @param localOutputPath - local path to copy the file to
51
- */
52
- async function copyFileFromGithub(data, repositoryFile, localOutputPath, log) {
53
- log(`Downloading file from github: ${repositoryFile}`);
54
- const file = data.files[repositoryFile];
55
- if (!file || file.dir) {
56
- throw new Error(`File not found or it's a directory: ${repositoryFile}`);
57
- }
58
- const filename = path.basename(repositoryFile);
59
- const targetPath = `${localOutputPath}/${filename}`;
60
- const content = await file.async('nodebuffer');
61
- await fs.writeFile(targetPath, content);
62
- }
63
- /**
64
- * Not flexible at at all, but quick fix to download a noir smart contract from our
65
- * monorepo on github. this will copy over the `yarn-projects/boxes/{contract_name}` folder
66
- * as well as the specified `directoryPath` if the box doesn't include source code
67
- * `directoryPath` should point to a single noir contract in `yarn-projects/noir-contracts/src/contracts/...`
68
- * @param tag - The git tag to pull.
69
- * @param directoryPath - path to a noir contract's source code (folder) in the github repo
70
- * @param outputPath - local path that we will copy the noir contracts and web3 starter kit to
71
- * @returns
72
- */
73
- async function downloadContractAndBoxFromGithub(tag, contractName, outputPath, log) {
74
- // small string conversion, in the ABI the contract name looks like PrivateToken
75
- // but in the repository it looks like private_token
76
- log(`Downloading @aztec/boxes/${contractName}/ to ${outputPath}...`);
77
- // Step 1: Fetch the monorepo ZIP from GitHub, matching the CLI version
78
- const url = `https://github.com/${GITHUB_OWNER}/${GITHUB_REPO}/archive/refs/tags/${tag}.zip`;
79
- const response = await fetch(url);
80
- const buffer = await response.arrayBuffer();
81
- const zip = new JSZip();
82
- const data = await zip.loadAsync(buffer);
83
- // Step 2: copy the '@aztec/boxes/{contract-name}' subpackage to the output directory
84
- // this is currently only implemented for `blank`, `blank-react` and `token` under 'boxes/{box-name}/'
85
- const repoDirectoryPrefix = `${GITHUB_REPO}-${tag}`;
86
- const boxPath = `${repoDirectoryPrefix}/${BOXES_PATH}/${contractName}/`;
87
- await copyFolderFromGithub(data, boxPath, outputPath, log);
88
- // the expected noir version is contained in
89
- // aztec-packages/yarn-project/noir-compiler/src/noir-version.json
90
- // copy it in and use to update the package.json script to install that version of noir
91
- const noirVersionPath = `${repoDirectoryPrefix}/yarn-project/noir-compiler/src/noir-version.json`;
92
- await copyFileFromGithub(data, noirVersionPath, outputPath, log);
93
- const contractTargetDirectory = path.join(outputPath, 'src', 'contracts');
94
- const boxContainsNoirSource = await isDirectoryNonEmpty(contractTargetDirectory);
95
- if (boxContainsNoirSource) {
96
- return;
97
- }
98
- else {
99
- // we used to support downloading from the noir contracts monorepo but now force box to contain source code
100
- // This should never happen, because of the check we do initially on the box name.
101
- throw Error(`Box ${contractName} does not contain noir source code.`);
102
- }
103
- }
104
- /**
105
- * Does some conversion from the package/build configurations in the monorepo to the
106
- * something usable by the copied standalone unboxed folder. Adjusts relative paths
107
- * and package versions.
108
- * @param packageVersion - CLI npm version, which determines what npm version to grab
109
- * @param tag - The git tag.
110
- * @param outputPath - relative path where we are copying everything
111
- * @param log - logger
112
- */
113
- async function updatePackagingConfigurations(packageVersion, tag, outputPath, log) {
114
- await updatePackageJsonVersions(packageVersion, outputPath, log);
115
- await updateTsConfig('tsconfig.json', outputPath, log);
116
- await updateTsConfig('tsconfig.dest.json', outputPath, log);
117
- await updateNargoToml(tag, outputPath, log);
118
- }
119
- /**
120
- * Adjust the contract Nargo.toml file for copied box:
121
- * change the dependency paths from pointing within the monorepo
122
- * to the github tagged version matching the installed `aztec-cli --version`
123
- * @param packageVersion - CLI npm version, which determines what npm version to grab
124
- * @param outputPath - relative path where we are copying everything
125
- * @param log - logger
126
- */
127
- async function updateNargoToml(tag, outputPath, log) {
128
- const SUPPORTED_DEPS = ['aztec', 'value_note', 'safe_math', 'authwit'];
129
- const nargoTomlPath = path.join(outputPath, 'src', 'contracts', 'Nargo.toml');
130
- const fileContent = await fs.readFile(nargoTomlPath, 'utf-8');
131
- const lines = fileContent.split('\n');
132
- const updatedLines = lines.map(line => {
133
- // Check if the line starts with one of the deps
134
- const key = SUPPORTED_DEPS.find(dependencyName => line.trim().startsWith(`${dependencyName} =`));
135
- if (key) {
136
- // Replace the line, which was configured for compiling within the `aztec-packages` monorepo. We replace
137
- // the local path with `git` and `directory` fields with a `tag` field, which points to the tagged release
138
- // note that the key has a "_" in the name, but we use "-" in the github repo folder
139
- return `${key} = { git="https://github.com/AztecProtocol/aztec-packages/", tag="${tag}", directory="yarn-project/aztec-nr/${key.replace('_', '-')}" }`;
140
- }
141
- return line;
142
- });
143
- const updatedContent = updatedLines.join('\n');
144
- await fs.writeFile(nargoTomlPath, updatedContent);
145
- log(`Updated Nargo.toml to point to version ${tag} of aztec-noir libs in github.`);
146
- }
147
- /**
148
- * The `tsconfig.json` also needs to be updated to remove the "references" section, which
149
- * points to the monorepo's subpackages. Those are unavailable in the cloned subpackage,
150
- * so we remove the entries to install the the workspace packages from npm.
151
- * @param outputPath - directory we are unboxing to
152
- */
153
- async function updateTsConfig(filename, outputPath, log) {
154
- try {
155
- const tsconfigJsonPath = path.join(outputPath, filename);
156
- const data = await fs.readFile(tsconfigJsonPath, 'utf8');
157
- const config = JSON.parse(data);
158
- delete config.references;
159
- const updatedData = JSON.stringify(config, null, 2);
160
- await fs.writeFile(tsconfigJsonPath, updatedData, 'utf8');
161
- log(`Updated ${filename}.`);
162
- }
163
- catch (error) {
164
- log(`Error updating ${filename}.`);
165
- throw error;
166
- }
167
- }
168
- /**
169
- * We pin to "workspace:^" in the package.json for subpackages, but we need to replace it with
170
- * an the actual version number in the cloned starter kit
171
- * We modify the copied package.json and pin to the version of the package that was downloaded
172
- * @param packageVersion - CLI npm version, which determines what npm version to grab
173
- * @param outputPath - directory we are unboxing to
174
- * @param log - logger
175
- */
176
- async function updatePackageJsonVersions(packageVersion, outputPath, log) {
177
- const packageJsonPath = path.join(outputPath, 'package.json');
178
- const fileContent = await fs.readFile(packageJsonPath, 'utf-8');
179
- const packageData = JSON.parse(fileContent);
180
- // Check and replace "workspace^" pins in dependencies, which are monorepo yarn workspace references
181
- if (packageData.dependencies) {
182
- for (const [key, value] of Object.entries(packageData.dependencies)) {
183
- if (value === 'workspace:^') {
184
- packageData.dependencies[key] = `^${packageVersion}`;
185
- }
186
- }
187
- }
188
- // Check and replace in devDependencies
189
- if (packageData.devDependencies) {
190
- for (const [key, value] of Object.entries(packageData.devDependencies)) {
191
- if (value === 'workspace:^') {
192
- // TODO: check if this right post landing. the package.json version looks like 0.1.0
193
- // but the npm versions look like v0.1.0-alpha63 so we are not fully pinned
194
- packageData.devDependencies[key] = `^${packageVersion}`;
195
- }
196
- }
197
- }
198
- // read the `noir-version.json`, grab the expected noir version, and patch the noir install script
199
- const noirVersionPath = path.join(outputPath, 'noir-version.json');
200
- const noirVersionContent = await fs.readFile(noirVersionPath, 'utf-8');
201
- const noirVersionJSON = JSON.parse(noirVersionContent);
202
- const noirTag = noirVersionJSON.tag;
203
- packageData.scripts['install:noir'] = packageData.scripts['install:noir'].replace('NOIR_VERSION', `${noirTag}`);
204
- log(`Updated Noir version to: ${noirTag}`);
205
- // modify the version of the sandbox to pull - it's set to "latest" version in the monorepo,
206
- // but we need to replace with the same tagVersion as the cli and the other aztec npm packages
207
- // similarly, make sure we spin up the sandbox with the same version.
208
- packageData.scripts['install:sandbox'] = packageData.scripts['install:sandbox'].replace('latest', `${packageVersion}`);
209
- packageData.scripts['start:sandbox'] = packageData.scripts['start:sandbox'].replace('latest', `${packageVersion}`);
210
- // Convert back to a string and write back to the package.json file
211
- const updatedContent = JSON.stringify(packageData, null, 2);
212
- await fs.writeFile(packageJsonPath, updatedContent);
213
- log(`Updated package.json versions to: ${packageVersion}`);
214
- }
215
- /**
216
- *
217
- * @param outputDirectoryName - user specified directory we are "unboxing" files into
218
- * @param log - logger
219
- * @returns
220
- */
221
- async function createDirectory(outputDirectoryName, log) {
222
- const absolutePath = path.resolve(outputDirectoryName);
223
- try {
224
- // Checking if the path exists and if it is a directory
225
- const stats = await fs.stat(absolutePath);
226
- if (!stats.isDirectory()) {
227
- throw new Error(`The specified path ${outputDirectoryName} is not a directory/folder.`);
228
- }
229
- }
230
- catch (error) {
231
- if (error.code === 'ENOENT') {
232
- await fs.mkdir(absolutePath, { recursive: true });
233
- log(`The directory did not exist and has been created: ${absolutePath}`);
234
- }
235
- else {
236
- throw error;
237
- }
238
- }
239
- return absolutePath;
240
- }
241
- /**
242
- * Unboxes a contract from `@aztec/boxes` by performing the following operations:
243
- * 1. Copies the frontend template from `@aztec/boxes/{contract_name}` to the outputDirectory
244
- * 2. Checks if the contract source was copied over from `@aztec/boxes/{contract_name}/src/contracts`
245
- * 3. If not, copies the contract from the appropriate `@aztec/noir-contracts/src/contracts/...` folder.
246
- *
247
- * The box provides a simple React app which parses the contract ABI
248
- * and generates a UI to deploy + interact with the contract on a local aztec testnet.
249
- * @param contractName - name of contract from `@aztec/noir-contracts`, in a format like "PrivateToken" (rather than "private_token", as it appears in the noir-contracts repo)
250
- * @param log - Logger instance that will output to the CLI
251
- */
252
- export async function unboxContract(contractName, outputDirectoryName, packageVersion, log) {
253
- const contractNames = ['token', 'blank', 'blank-react'];
254
- if (!contractNames.includes(contractName)) {
255
- log(`The noir contract named "${contractName}" was not found in "@aztec/boxes" package. Valid options are:
256
- ${contractNames.join('\n\t')}
257
- We recommend "token" as a default.`);
258
- return;
259
- }
260
- const outputPath = await createDirectory(outputDirectoryName, log);
261
- const tag = `${GITHUB_TAG_PREFIX}-v${packageVersion}`;
262
- // downloads the selected contract's relevant folder in @aztec/boxes/{contract_name}
263
- await downloadContractAndBoxFromGithub(tag, contractName, outputPath, log);
264
- // make adjustments for packaging to work as a standalone, as opposed to part of yarn workspace
265
- // as in the monorepo source files. replace things like "workspace^" with the actual version number
266
- await updatePackagingConfigurations(packageVersion, tag, outputPath, log);
267
- log('');
268
- log(`${contractName} has been successfully initialized!`);
269
- log('To get started, simply run the following commands:');
270
- log(` cd ${outputDirectoryName}`);
271
- log(' yarn');
272
- log(' yarn start:sandbox');
273
- log('And in another terminal in the same directory,');
274
- log(' yarn start:dev');
275
- }
276
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5ib3guanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvdW5ib3gudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBV0EsT0FBTyxFQUFFLFFBQVEsSUFBSSxFQUFFLEVBQUUsTUFBTSxJQUFJLENBQUM7QUFDcEMsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQzFCLE9BQU8sS0FBSyxNQUFNLFlBQVksQ0FBQztBQUMvQixPQUFPLEtBQUssSUFBSSxNQUFNLE1BQU0sQ0FBQztBQUU3QixPQUFPLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUUzRSxNQUFNLFVBQVUsR0FBRyxvQkFBb0IsQ0FBQztBQUV4Qzs7O0dBR0c7QUFDSCxLQUFLLFVBQVUsbUJBQW1CLENBQUMsYUFBcUI7SUFDdEQsSUFBSTtRQUNGLE1BQU0sS0FBSyxHQUFHLE1BQU0sRUFBRSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUM5QyxPQUFPLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO0tBQ3pCO0lBQUMsT0FBTyxDQUFDLEVBQUU7UUFDViw0QkFBNEI7UUFDNUIsT0FBTyxLQUFLLENBQUM7S0FDZDtBQUNILENBQUM7QUFFRDs7Ozs7R0FLRztBQUNILEtBQUssVUFBVSxvQkFBb0IsQ0FBQyxJQUFXLEVBQUUsb0JBQTRCLEVBQUUsZUFBdUIsRUFBRSxHQUFVO0lBQ2hILEdBQUcsQ0FBQyxtQ0FBbUMsb0JBQW9CLEVBQUUsQ0FBQyxDQUFDO0lBQy9ELE1BQU0scUJBQXFCLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFO1FBQ3BFLE9BQU8sSUFBSSxDQUFDLEdBQUcsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0lBQ2hFLENBQUMsQ0FBQyxDQUFDO0lBRUgsS0FB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
@@ -1,17 +0,0 @@
1
- /**
2
- * Tracks changes to dependencies
3
- */
4
- export type DependencyChanges = {
5
- /** Which file was changed */
6
- file: string;
7
- /** changes done to the file */
8
- dependencies: Array<{
9
- /** Name of the dependency being changed */
10
- name: string;
11
- /** Previous version of the dependency */
12
- from: string;
13
- /** New version of the dependency (after the update) */
14
- to: string;
15
- }>;
16
- };
17
- //# sourceMappingURL=common.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../src/update/common.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,6BAA6B;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,+BAA+B;IAC/B,YAAY,EAAE,KAAK,CAAC;QAClB,2CAA2C;QAC3C,IAAI,EAAE,MAAM,CAAC;QACb,yCAAyC;QACzC,IAAI,EAAE,MAAM,CAAC;QACb,uDAAuD;QACvD,EAAE,EAAE,MAAM,CAAC;KACZ,CAAC,CAAC;CACJ,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3VwZGF0ZS9jb21tb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiJ9