evm-contracts-tools 0.0.49 → 0.0.51

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 (65) hide show
  1. package/dist/evm-contract-call/evm-contract-call.js +1 -1
  2. package/dist/evm-contract-call/fs-worker.js +1 -1
  3. package/dist/evm-contract-deployment-abi/evm-contract-deployment-abi.js +1 -1
  4. package/dist/evm-contract-deployment-abi/fs-worker.js +1 -1
  5. package/dist/evm-contract-deployment-address/evm-contract-deployment-address.js +1 -1
  6. package/dist/evm-contract-deployment-address/fs-worker.js +1 -1
  7. package/dist/evm-contract-deployment-bytecode/evm-contract-deployment-bytecode.js +1 -1
  8. package/dist/evm-contract-deployment-bytecode/fs-worker.js +1 -1
  9. package/dist/evm-contract-deployment-compiler-output/evm-contract-deployment-compiler-output.js +1 -1
  10. package/dist/evm-contract-deployment-compiler-output/fs-worker.js +1 -1
  11. package/dist/evm-contract-deployment-deployment-networks +1 -1
  12. package/dist/evm-contract-deployment-networks/evm-contract-deployment-networks.js +1 -1
  13. package/dist/evm-contract-deployment-versions/evm-contract-deployment-versions.js +1 -1
  14. package/dist/evm-contract-deployment-versions/fs-worker.js +1 -1
  15. package/dist/evm-contract-deployments-dir/evm-contract-deployments-dir.js +1 -1
  16. package/dist/evm-contract-deployments-dir/fs-worker.js +1 -1
  17. package/dist/evm-contracts-tools/evm-contracts-tools.js +1 -1
  18. package/dist/evm-contracts-tools/fs-worker.js +1 -1
  19. package/dist/libevm-contract-call/fs-worker.js +1 -1
  20. package/dist/libevm-contract-call/libevm-contract-call.js +1 -1
  21. package/dist/libevm-contract-deployment-abi/fs-worker.js +1 -1
  22. package/dist/libevm-contract-deployment-abi/libevm-contract-deployment-abi.js +1 -1
  23. package/dist/libevm-contract-deployment-address/fs-worker.js +1 -1
  24. package/dist/libevm-contract-deployment-address/libevm-contract-deployment-address.js +1 -1
  25. package/dist/libevm-contract-deployment-bytecode/fs-worker.js +1 -1
  26. package/dist/libevm-contract-deployment-bytecode/libevm-contract-deployment-bytecode.js +1 -1
  27. package/dist/libevm-contract-deployment-compiler-output/fs-worker.js +1 -1
  28. package/dist/libevm-contract-deployment-compiler-output/libevm-contract-deployment-compiler-output.js +2 -0
  29. package/dist/libevm-contract-deployment-deployment-networks +1 -1
  30. package/dist/libevm-contract-deployment-networks/libevm-contract-deployment-networks.js +1 -1
  31. package/dist/libevm-contract-deployment-versions/fs-worker.js +1 -1
  32. package/dist/libevm-contract-deployment-versions/libevm-contract-deployment-versions.js +1 -1
  33. package/dist/libevm-contract-deployments-dir/fs-worker.js +1 -1
  34. package/dist/libevm-contract-deployments-dir/libevm-contract-deployments-dir.js +1 -1
  35. package/dist/libevm-contracts-tools +1 -1
  36. package/eslint.config.mjs +150 -0
  37. package/evm-contract-call +18 -11
  38. package/evm-contract-call.webpack.config.cjs +159 -0
  39. package/evm-contract-deployment-abi.webpack.config.cjs +159 -0
  40. package/evm-contract-deployment-address.webpack.config.cjs +159 -0
  41. package/evm-contract-deployment-bytecode.webpack.config.cjs +159 -0
  42. package/evm-contract-deployment-compiler-output.webpack.config.cjs +159 -0
  43. package/evm-contract-deployment-networks.webpack.config.cjs +159 -0
  44. package/evm-contract-deployment-versions.webpack.config.cjs +159 -0
  45. package/evm-contract-deployments-dir.webpack.config.cjs +159 -0
  46. package/fs-worker.webpack.config.cjs +82 -0
  47. package/lib/address-check +16 -11
  48. package/lib/bytecode-creation-get +24 -14
  49. package/lib/bytecode-runtime-get +20 -15
  50. package/lib/contract-get +35 -17
  51. package/lib/deployer-get +47 -10
  52. package/lib/deployer-verify +19 -16
  53. package/lib/evm-contract-call-dynamic +40 -23
  54. package/lib/evm-contract-call-static +222 -153
  55. package/libevm-contract-call +10 -5
  56. package/libevm-contract-call.webpack.config.cjs +159 -0
  57. package/libevm-contract-deployment-abi.webpack.config.cjs +155 -0
  58. package/libevm-contract-deployment-address.webpack.config.cjs +155 -0
  59. package/libevm-contract-deployment-bytecode.webpack.config.cjs +155 -0
  60. package/libevm-contract-deployment-compiler-output.webpack.config.cjs +155 -0
  61. package/libevm-contract-deployment-networks.webpack.config.cjs +159 -0
  62. package/libevm-contract-deployment-versions.webpack.config.cjs +159 -0
  63. package/libevm-contract-deployments-dir.webpack.config.cjs +159 -0
  64. package/package.json +47 -46
  65. package/webpack.config.cjs +155 -0
@@ -24,72 +24,143 @@
24
24
  * along with this program. If not, see <https://www.gnu.org/licenses/>.
25
25
  */
26
26
 
27
+ /* Crash Javascript global variables */
28
+
29
+ /* global
30
+ app_name:
31
+ writable */
32
+ /* global
33
+ app_opts:
34
+ writable */
35
+ /* global
36
+ quiet:
37
+ writable */
38
+
27
39
  const
28
40
  _libcrash =
29
41
  require(
30
42
  "crash-js");
31
- _cmdline_check =
32
- _libcrash._cmdline_check;
33
- _error_display =
34
- _libcrash._error_display;
35
- _msg_info =
36
- _libcrash._msg_info;
37
- _msg_error =
38
- _libcrash._msg_error;
39
- _printf =
40
- _libcrash._printf;
41
- _sleep =
42
- _libcrash._sleep;
43
+ /* global
44
+ _cmdline_check */
45
+ const
46
+ _cmdline_check =
47
+ _libcrash._cmdline_check;
48
+ /* global
49
+ _error_display */
50
+ const
51
+ _error_display =
52
+ _libcrash._error_display;
53
+ /* global
54
+ _exit */
55
+ const
56
+ _exit =
57
+ _libcrash._exit;
58
+ /* global
59
+ _msg_info */
60
+ const
61
+ _msg_info =
62
+ _libcrash._msg_info;
63
+ /* global
64
+ _msg_error */
65
+ const
66
+ _msg_error =
67
+ _libcrash._msg_error;
68
+ /* global
69
+ _override_set */
70
+ const
71
+ _override_set =
72
+ _libcrash._override_set;
73
+ /* global
74
+ _printf */
75
+ const
76
+ _printf =
77
+ _libcrash._printf;
78
+ /* global
79
+ _sleep */
80
+ const
81
+ _sleep =
82
+ _libcrash._sleep;
43
83
  const
44
84
  _contract_get_module =
45
85
  require(
46
86
  './contract-get');
47
- _contract_get =
48
- _contract_get_module._contract_get
49
-
87
+ /* global
88
+ _contract_get */
89
+ const
90
+ _contract_get =
91
+ _contract_get_module._contract_get
50
92
 
51
93
  function
52
94
  _global_variables() {
53
95
  app_name =
54
96
  "evm-contract-call-static";
97
+ app_opts =
98
+ [];
99
+ /* global
100
+ wallet_seed:
101
+ writable */
55
102
  wallet_seed =
56
- '';
103
+ "";
104
+ /* global
105
+ retries_max:
106
+ writable */
57
107
  retries_max =
58
- '';
108
+ "";
109
+ /* global
110
+ api_key_path:
111
+ writable */
59
112
  api_key_path =
60
- '';
113
+ "";
114
+ /* global
115
+ target_network:
116
+ writable */
61
117
  target_network =
62
- '';
118
+ "";
119
+ /* global
120
+ contract_address:
121
+ writable */
63
122
  contract_address =
64
- '';
123
+ "";
124
+ /* global
125
+ contract_abi_path:
126
+ writable */
65
127
  contract_abi_path =
66
- '';
128
+ "";
129
+ /* global
130
+ contract_bytecode_path:
131
+ writable */
67
132
  contract_bytecode_path =
68
- '';
133
+ "";
134
+ /* global
135
+ contract_compiler_output_path:
136
+ writable */
69
137
  contract_compiler_output_path =
70
- '';
138
+ "";
139
+ /* global
140
+ method_object:
141
+ writable */
71
142
  method_object =
72
- '';
143
+ "";
144
+ /* global
145
+ contract_method:
146
+ writable */
73
147
  contract_method =
74
- '';
148
+ "";
149
+ /* global
150
+ method_args:
151
+ writable */
75
152
  method_args =
76
153
  [];
77
154
  quiet =
78
- '';
155
+ "";
79
156
  }
80
157
 
81
158
  function
82
159
  _msg_info_contract_obtained(
83
160
  _contract) {
84
- let
85
- _msg,
86
- _template;
87
- _template =
88
- "Contract '{_contract}' obtained.";
89
- _msg =
90
- _template.replaceAll(
91
- "{_contract}",
92
- _contract);
161
+ const
162
+ _msg =
163
+ `Contract '${_contract}' obtained.`;
93
164
  _msg_info(
94
165
  _msg);
95
166
  }
@@ -97,10 +168,9 @@ function
97
168
  function
98
169
  _msg_info_method_obtained(
99
170
  _method) {
100
- let
101
- _msg;
102
- _msg =
103
- "Method obtained.";
171
+ const
172
+ _msg =
173
+ "Method obtained.";
104
174
  _msg_info(
105
175
  _msg);
106
176
  }
@@ -122,17 +192,18 @@ async function
122
192
  _contract,
123
193
  _contract_get_opts,
124
194
  _method,
195
+ _msg,
125
196
  _passed,
126
- _value,
127
- _wallet_password;
197
+ _value;
128
198
  if ( _method_object == undefined ) {
129
199
  _method_object =
130
200
  "";
131
201
  }
132
202
  _retry =
133
203
  1;
134
- _wallet_password =
135
- "";
204
+ const
205
+ _wallet_password =
206
+ "";
136
207
  _contract_get_opts = [
137
208
  _wallet_seed,
138
209
  _wallet_password,
@@ -148,24 +219,50 @@ async function
148
219
  while ( _retry <= _retries_max &&
149
220
  _passed == false ) {
150
221
  try {
151
- if ( _method_object == "" ||
152
- _method_object == undefined ) {
222
+ if ( _method_object === "" ||
223
+ typeof(
224
+ _method_object) === "undefined" ) {
153
225
  _contract =
154
226
  await _contract_get.apply(
155
227
  null,
156
228
  _contract_get_opts);
157
229
  _msg_info_contract_obtained(
158
230
  _contract);
159
- _method =
160
- await _contract.getFunction(
161
- _contract_method);
162
- _msg_info_method_obtained(
163
- _method);
231
+ try {
232
+ _method =
233
+ await _contract.getFunction(
234
+ _contract_method);
235
+ _msg_info_method_obtained(
236
+ _method);
237
+ }
238
+ catch(
239
+ _error) {
240
+ const
241
+ _msg_no_fragment =
242
+ "no matching fragment";
243
+ const
244
+ _msg_short =
245
+ _error[
246
+ "shortMessage"];
247
+ if ( _msg_no_fragment == _msg_short ) {
248
+ _msg =
249
+ `Found no '${_contract_method}' method ` +
250
+ `nor contract ABI '${_contract_abi_path}' ` +
251
+ `nor in compiler output ` +
252
+ `'${_contract_compiler_output_path}'.`;
253
+ _msg_error(
254
+ _msg,
255
+ 0);
256
+ }
257
+ throw _error;
258
+ }
164
259
  }
165
260
  else if ( _method_object != "" ||
166
261
  _method_object != undefined ) {
262
+ _msg =
263
+ "Re-using contract method.";
167
264
  _msg_info(
168
- "Re-using contract method.");
265
+ _msg);
169
266
  _method =
170
267
  _method_object;
171
268
  }
@@ -209,58 +306,25 @@ async function
209
306
  function
210
307
  _config_show() {
211
308
  let
212
- _line,
213
- _method_args,
214
- _text;
215
- _text =
216
- [];
217
- _text.push(
218
- "Static call configuration:");
219
- _text.push(
220
- " evm-contract-call-static configuration:");
221
- _text.push(
222
- " Wallet seed: {wallet_seed}".replace(
223
- "{wallet_seed}",
224
- wallet_seed));
225
- _text.push(
226
- " Max retries: {retries_max}".replace(
227
- "{retries_max}",
228
- retries_max));
229
- _text.push(
230
- " API Key path: {api_key_path}".replace(
231
- "{api_key_path}",
232
- api_key_path));
233
- _text.push(
234
- " Target network: {target_network}".replace(
235
- "{target_network}",
236
- target_network));
237
- _text.push(
238
- " Contract ABI: {contract_abi_path}".replace(
239
- "{contract_abi_path}",
240
- contract_abi_path));
241
- _text.push(
242
- " Contract bytecode: {contract_bytecode_path}".replace(
243
- "{contract_bytecode_path}",
244
- contract_bytecode_path));
245
- _text.push(
246
- "Contract compiler output: {contract_compiler_output_path}".replace(
247
- "{contract_compiler_output_path}",
248
- contract_compiler_output_path));
249
- _text.push(
250
- " Contract address: {contract_address}".replace(
251
- "{contract_address}",
252
- contract_address));
253
- _text.push(
254
- " Contract method: {contract_method}".replace(
255
- "{contract_method}",
256
- contract_method));
257
- _method_args =
258
- method_args.join(
259
- " ");
260
- _text.push(
261
- " Method args: {method_args}".replace(
262
- "{method_args}",
263
- _method_args));
309
+ _line;
310
+ const
311
+ _method_args =
312
+ method_args.join(
313
+ " ");
314
+ const
315
+ _text = [
316
+ ` ${app_name} configuration:`,
317
+ ` Wallet seed: ${wallet_seed}`,
318
+ ` Max retries: ${retries_max}`,
319
+ ` API Key path: ${api_key_path}`,
320
+ ` Target network: ${target_network}`,
321
+ ` Contract ABI: ${contract_abi_path}`,
322
+ ` Contract bytecode: ${contract_bytecode_path}`,
323
+ `Contract compiler output: ${contract_compiler_output_path}`,
324
+ ` Contract address: ${contract_address}`,
325
+ ` Contract method: ${contract_method}`,
326
+ ` Method args: ${_method_args}`
327
+ ];
264
328
  for (_line of _text) {
265
329
  _msg_info(
266
330
  _line);
@@ -269,63 +333,63 @@ function
269
333
 
270
334
  function
271
335
  _usage(
272
- _exit) {
336
+ _exit_code) {
273
337
  let
274
- _line,
275
- _text;
276
- _text = [
277
- "Execute a static call to an EVM network's contract method",
278
- "",
279
- "Usage:",
280
- " evm-contract-call-static",
281
- " <quiet>",
282
- " <wallet_seed>",
283
- " <retries_max>",
284
- " <api_key_path>",
285
- " <target_network>",
286
- " <contract_abi_path>",
287
- " <contract_bytecode_path>",
288
- " <contract_compiler_output_path>",
289
- " <contract_address>",
290
- " <contract_method>",
291
- " <method_args>",
292
- "",
293
- "Args:",
294
- " <quiet> Can be 'y' or 'n'",
295
- " Default: y",
296
- " <wallet_seed> Path of the file containing",
297
- " the seed phrase.",
298
- " <retries_max> Maximum number of retries before",
299
- " failing.",
300
- " <api_key_path> Path of the API key for the",
301
- " contract ABI provider service",
302
- " <target_network> Network on which the contract",
303
- " resides.",
304
- " <contract_abi_path> Path of the contract ABI",
305
- " <contract_bytecode_path> Path for the contract bytecode",
306
- " <contract_compiler_output_path> Path for the contract compiler",
307
- " output path (the hardhat artifact).",
308
- " <contract_address> Address of the contract",
309
- " <contract_method> Contract method to execute",
310
- " [method_args] Arguments to pass to the method",
311
- "",
312
- " Options:",
313
- " -h This help."
314
- ];
338
+ _line;
339
+ const
340
+ _text = [
341
+ "Execute a static call to an EVM network's contract method",
342
+ "",
343
+ "Usage:",
344
+ " evm-contract-call-static",
345
+ " <quiet>",
346
+ " <wallet-seed>",
347
+ " <retries-max>",
348
+ " <api-key-path>",
349
+ " <target-network>",
350
+ " <contract-abi-path>",
351
+ " <contract-bytecode-path>",
352
+ " <contract-compiler-output-path>",
353
+ " <contract-address>",
354
+ " <contract-method>",
355
+ " <method-args>",
356
+ "",
357
+ "Args:",
358
+ " <quiet> Can be 'y' or 'n'",
359
+ " Default: y",
360
+ " <wallet-seed> Path of the file containing",
361
+ " the seed phrase.",
362
+ " <retries-max> Maximum number of retries before",
363
+ " failing.",
364
+ " <api-key-path> Path of the API key for the",
365
+ " contract ABI provider service",
366
+ " <target-network> Network on which the contract",
367
+ " resides.",
368
+ " <contract-abi-path> Path of the contract ABI",
369
+ " <contract-bytecode-path> Path for the contract bytecode",
370
+ " <contract-compiler-output-path> Path for the contract compiler",
371
+ " output path (the hardhat artifact).",
372
+ " <contract-address> Address of the contract",
373
+ " <contract-method> Contract method to execute",
374
+ " [method-args] Arguments to pass to the method",
375
+ "",
376
+ " Options:",
377
+ " -h This help."
378
+ ];
315
379
  for (_line of _text) {
316
380
  _msg_info(
317
381
  _line);
318
382
  }
319
- process.exit(
320
- _exit);
383
+ _exit(
384
+ _exit_code);
321
385
  }
322
386
 
323
387
  function
324
388
  _overrides_set() {
325
- if ( retries_max == "" ) {
326
- retries_max =
327
- 100;
328
- }
389
+ _override_set(
390
+ "retries",
391
+ "max",
392
+ 100);
329
393
  }
330
394
 
331
395
  function
@@ -399,6 +463,7 @@ async function
399
463
  _app_opts) {
400
464
  let
401
465
  _method_object,
466
+ _msg,
402
467
  _value;
403
468
  try {
404
469
  [_value,
@@ -411,16 +476,20 @@ async function
411
476
  _value.toString());
412
477
  }
413
478
  else {
479
+ _msg =
480
+ "Static contract call returned undefined value.";
414
481
  throw { "error": {
415
482
  "message":
416
- "Static contract call returned undefined value." } };
483
+ _msg } };
417
484
  }
418
485
  } catch (
419
486
  _error) {
420
487
  _error_display(
421
488
  _error);
489
+ _msg =
490
+ "Error while running static call.";
422
491
  _msg_error(
423
- "Error while running static call.",
492
+ _msg,
424
493
  1);
425
494
  }
426
495
  }
@@ -100,6 +100,11 @@ const
100
100
  const
101
101
  _msg_error =
102
102
  _libcrash_module._msg_error;
103
+ /* global
104
+ _override_set */
105
+ const
106
+ _override_set =
107
+ _libcrash_module._override_set;
103
108
  /* global
104
109
  _path_join */
105
110
  const
@@ -140,11 +145,11 @@ function
140
145
  "1"
141
146
  ];
142
147
  }
143
- if ( target_network == "" ) {
144
- // to be auto-detected
145
- target_network =
146
- "1";
147
- }
148
+ // to be auto-detected
149
+ _override_set(
150
+ "target",
151
+ "network",
152
+ "1");
148
153
  }
149
154
 
150
155
  function
@@ -0,0 +1,159 @@
1
+ /** ---------------------------------------------------------
2
+ * libevm-contract-call.webpack.config.cjs
3
+ * ---------------------------------------------------------
4
+ * Copyright ©
5
+ * Pellegrino Prevete
6
+ * 2024, 2025, 2026
7
+ *
8
+ * All rights reserved
9
+ * ---------------------------------------------------------
10
+ *
11
+ * This program is free software: you can redistribute it and/or
12
+ * modify it under the terms of the GNU General Public License
13
+ * as published by the Free Software Foundation, either
14
+ * version 3 of the License, or (at your option) any later
15
+ * version.
16
+ *
17
+ * This program is distributed in the hope that it will be
18
+ * useful, but WITHOUT ANY WARRANTY; without even the implied
19
+ * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
20
+ * PURPOSE.
21
+ * See the GNU General Public License for more details.
22
+ *
23
+ * You should have received a copy of the
24
+ * GNU General Public License along with this program.
25
+ * If not, see <https://www.gnu.org/licenses/>.
26
+ */
27
+
28
+ const
29
+ _path =
30
+ require(
31
+ 'path');
32
+ const
33
+ _output_dir =
34
+ _path.resolve(
35
+ __dirname);
36
+ const
37
+ _input_file_name =
38
+ `libevm-contract-call`;
39
+ const
40
+ _input_file_path =
41
+ `./${_input_file_name}`;
42
+ const
43
+ _output_file_name =
44
+ `${_input_file_name}.js`;
45
+ const
46
+ _output = {
47
+ path:
48
+ _output_dir,
49
+ filename:
50
+ _output_file_name
51
+ };
52
+ const
53
+ _node_fs_ignore = {
54
+ resourceRegExp:
55
+ /^node:fs$/
56
+ };
57
+ const
58
+ _yargs_ignore =
59
+ { resourceRegExp:
60
+ /^yargs$/ };
61
+ const
62
+ _yargs_helpers_ignore = {
63
+ resourceRegExp:
64
+ /^yargs\/helpers$/
65
+ };
66
+ const
67
+ _webpack =
68
+ require(
69
+ "webpack");
70
+ const
71
+ _ignore_plugin =
72
+ _webpack.IgnorePlugin;
73
+ const
74
+ _node_fs_ignore_plugin =
75
+ new _ignore_plugin(
76
+ _node_fs_ignore);
77
+ const
78
+ _yargs_ignore_plugin =
79
+ new _ignore_plugin(
80
+ _yargs_ignore);
81
+ const
82
+ _yargs_helpers_ignore_plugin =
83
+ new _ignore_plugin(
84
+ _yargs_helpers_ignore);
85
+ module.exports = {
86
+ entry:
87
+ _input_file_path,
88
+ output:
89
+ _output,
90
+ optimization: {
91
+ moduleIds: 'deterministic',
92
+ },
93
+ resolve: {
94
+ alias: {
95
+ "node:fs":
96
+ _path.resolve(
97
+ __dirname,
98
+ 'node_modules/opfs/opfs'),
99
+ "fs":
100
+ _path.resolve(
101
+ __dirname,
102
+ "node_modules/fs/fs"),
103
+ "evm-contracts-tools":
104
+ _path.resolve(
105
+ __dirname,
106
+ "evm-contracts-tools"),
107
+ "evm-transactions-tools":
108
+ _path.resolve(
109
+ __dirname,
110
+ "node_modules/evm-transactions-tools/evm-transactions-tools"),
111
+ "evm-wallet":
112
+ _path.resolve(
113
+ __dirname,
114
+ 'node_modules/evm-wallet/libevm-wallet'),
115
+ "libevm":
116
+ _path.resolve(
117
+ __dirname,
118
+ 'node_modules/libevm/libevm'),
119
+ "path":
120
+ _path.resolve(
121
+ __dirname,
122
+ 'node_modules/path/mod.js'),
123
+ "web-worker":
124
+ _path.resolve(
125
+ __dirname,
126
+ 'node_modules/web-worker/mod.js'),
127
+ "yargs":
128
+ _path.resolve(
129
+ __dirname,
130
+ 'node_modules/yargs/browser.mjs'),
131
+ "yargs/helpers":
132
+ _path.resolve(
133
+ __dirname,
134
+ 'node_modules/yargs/helpers/helpers.mjs'),
135
+ "yargs-parser":
136
+ _path.resolve(
137
+ __dirname,
138
+ 'node_modules/yargs-parser/browser.mjs'),
139
+ },
140
+ fallback: {
141
+ "utils":
142
+ false,
143
+ "web-worker":
144
+ false,
145
+ "yargs":
146
+ false,
147
+ "yargs/helpers":
148
+ false,
149
+ }
150
+ },
151
+ externals:
152
+ { yargs:
153
+ 'yargs' },
154
+ plugins: [
155
+ _node_fs_ignore_plugin,
156
+ _yargs_ignore_plugin,
157
+ _yargs_helpers_ignore_plugin
158
+ ]
159
+ };