@aztec-labs/foundation 6.0.0-nightly.20260829
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/README.md +1 -0
- package/dest/array/array.d.ts +68 -0
- package/dest/array/array.d.ts.map +1 -0
- package/dest/array/array.js +100 -0
- package/dest/array/index.d.ts +3 -0
- package/dest/array/index.d.ts.map +1 -0
- package/dest/array/index.js +2 -0
- package/dest/array/sorted_array.d.ts +15 -0
- package/dest/array/sorted_array.d.ts.map +1 -0
- package/dest/array/sorted_array.js +109 -0
- package/dest/async-map/index.d.ts +13 -0
- package/dest/async-map/index.d.ts.map +1 -0
- package/dest/async-map/index.js +17 -0
- package/dest/async-pool/index.d.ts +3 -0
- package/dest/async-pool/index.d.ts.map +1 -0
- package/dest/async-pool/index.js +48 -0
- package/dest/bigint/index.d.ts +7 -0
- package/dest/bigint/index.d.ts.map +1 -0
- package/dest/bigint/index.js +15 -0
- package/dest/bigint-buffer/index.d.ts +40 -0
- package/dest/bigint-buffer/index.d.ts.map +1 -0
- package/dest/bigint-buffer/index.js +81 -0
- package/dest/branded-types/block_number.d.ts +56 -0
- package/dest/branded-types/block_number.d.ts.map +1 -0
- package/dest/branded-types/block_number.js +89 -0
- package/dest/branded-types/buffer32_hash.d.ts +27 -0
- package/dest/branded-types/buffer32_hash.d.ts.map +1 -0
- package/dest/branded-types/buffer32_hash.js +12 -0
- package/dest/branded-types/checkpoint_number.d.ts +60 -0
- package/dest/branded-types/checkpoint_number.d.ts.map +1 -0
- package/dest/branded-types/checkpoint_number.js +88 -0
- package/dest/branded-types/epoch.d.ts +42 -0
- package/dest/branded-types/epoch.d.ts.map +1 -0
- package/dest/branded-types/epoch.js +59 -0
- package/dest/branded-types/index.d.ts +8 -0
- package/dest/branded-types/index.d.ts.map +1 -0
- package/dest/branded-types/index.js +6 -0
- package/dest/branded-types/index_within_checkpoint.d.ts +42 -0
- package/dest/branded-types/index_within_checkpoint.d.ts.map +1 -0
- package/dest/branded-types/index_within_checkpoint.js +59 -0
- package/dest/branded-types/slot.d.ts +45 -0
- package/dest/branded-types/slot.d.ts.map +1 -0
- package/dest/branded-types/slot.js +62 -0
- package/dest/branded-types/types.d.ts +5 -0
- package/dest/branded-types/types.d.ts.map +1 -0
- package/dest/branded-types/types.js +1 -0
- package/dest/buffer/buffer16.d.ts +82 -0
- package/dest/buffer/buffer16.d.ts.map +1 -0
- package/dest/buffer/buffer16.js +102 -0
- package/dest/buffer/buffer32.d.ts +54 -0
- package/dest/buffer/buffer32.d.ts.map +1 -0
- package/dest/buffer/buffer32.js +83 -0
- package/dest/buffer/index.d.ts +4 -0
- package/dest/buffer/index.d.ts.map +1 -0
- package/dest/buffer/index.js +3 -0
- package/dest/buffer/utils.d.ts +3 -0
- package/dest/buffer/utils.d.ts.map +1 -0
- package/dest/buffer/utils.js +7 -0
- package/dest/collection/array.d.ts +135 -0
- package/dest/collection/array.d.ts.map +1 -0
- package/dest/collection/array.js +302 -0
- package/dest/collection/index.d.ts +5 -0
- package/dest/collection/index.d.ts.map +1 -0
- package/dest/collection/index.js +4 -0
- package/dest/collection/lru_map.d.ts +41 -0
- package/dest/collection/lru_map.d.ts.map +1 -0
- package/dest/collection/lru_map.js +119 -0
- package/dest/collection/lru_set.d.ts +35 -0
- package/dest/collection/lru_set.d.ts.map +1 -0
- package/dest/collection/lru_set.js +95 -0
- package/dest/collection/object.d.ts +30 -0
- package/dest/collection/object.d.ts.map +1 -0
- package/dest/collection/object.js +57 -0
- package/dest/committable/committable.d.ts +28 -0
- package/dest/committable/committable.d.ts.map +1 -0
- package/dest/committable/committable.js +36 -0
- package/dest/committable/index.d.ts +2 -0
- package/dest/committable/index.d.ts.map +1 -0
- package/dest/committable/index.js +1 -0
- package/dest/config/env_var.d.ts +2 -0
- package/dest/config/env_var.d.ts.map +1 -0
- package/dest/config/env_var.js +1 -0
- package/dest/config/index.d.ts +154 -0
- package/dest/config/index.d.ts.map +1 -0
- package/dest/config/index.js +272 -0
- package/dest/config/network_config.d.ts +28 -0
- package/dest/config/network_config.d.ts.map +1 -0
- package/dest/config/network_config.js +14 -0
- package/dest/config/network_name.d.ts +3 -0
- package/dest/config/network_name.d.ts.map +1 -0
- package/dest/config/network_name.js +19 -0
- package/dest/config/parse-env.d.ts +3 -0
- package/dest/config/parse-env.d.ts.map +1 -0
- package/dest/config/parse-env.js +7 -0
- package/dest/config/secret_value.d.ts +28 -0
- package/dest/config/secret_value.d.ts.map +1 -0
- package/dest/config/secret_value.js +36 -0
- package/dest/crypto/aes128/index.d.ts +33 -0
- package/dest/crypto/aes128/index.d.ts.map +1 -0
- package/dest/crypto/aes128/index.js +71 -0
- package/dest/crypto/bls/bn254_keystore.d.ts +129 -0
- package/dest/crypto/bls/bn254_keystore.d.ts.map +1 -0
- package/dest/crypto/bls/bn254_keystore.js +206 -0
- package/dest/crypto/bls/index.d.ts +13 -0
- package/dest/crypto/bls/index.d.ts.map +1 -0
- package/dest/crypto/bls/index.js +87 -0
- package/dest/crypto/bn254/index.d.ts +39 -0
- package/dest/crypto/bn254/index.d.ts.map +1 -0
- package/dest/crypto/bn254/index.js +56 -0
- package/dest/crypto/ecdsa/index.d.ts +39 -0
- package/dest/crypto/ecdsa/index.d.ts.map +1 -0
- package/dest/crypto/ecdsa/index.js +102 -0
- package/dest/crypto/ecdsa/signature.d.ts +69 -0
- package/dest/crypto/ecdsa/signature.d.ts.map +1 -0
- package/dest/crypto/ecdsa/signature.js +92 -0
- package/dest/crypto/grumpkin/index.d.ts +42 -0
- package/dest/crypto/grumpkin/index.d.ts.map +1 -0
- package/dest/crypto/grumpkin/index.js +160 -0
- package/dest/crypto/keccak/index.d.ts +26 -0
- package/dest/crypto/keccak/index.d.ts.map +1 -0
- package/dest/crypto/keccak/index.js +248 -0
- package/dest/crypto/keys/index.d.ts +4 -0
- package/dest/crypto/keys/index.d.ts.map +1 -0
- package/dest/crypto/keys/index.js +34 -0
- package/dest/crypto/pedersen/index.d.ts +2 -0
- package/dest/crypto/pedersen/index.d.ts.map +1 -0
- package/dest/crypto/pedersen/index.js +1 -0
- package/dest/crypto/pedersen/pedersen.noble.d.ts +9 -0
- package/dest/crypto/pedersen/pedersen.noble.d.ts.map +1 -0
- package/dest/crypto/pedersen/pedersen.noble.js +558 -0
- package/dest/crypto/pedersen/pedersen.wasm.d.ts +19 -0
- package/dest/crypto/pedersen/pedersen.wasm.d.ts.map +1 -0
- package/dest/crypto/pedersen/pedersen.wasm.js +51 -0
- package/dest/crypto/poseidon/index.d.ts +23 -0
- package/dest/crypto/poseidon/index.d.ts.map +1 -0
- package/dest/crypto/poseidon/index.js +71 -0
- package/dest/crypto/random/index.d.ts +23 -0
- package/dest/crypto/random/index.d.ts.map +1 -0
- package/dest/crypto/random/index.js +38 -0
- package/dest/crypto/random/randomness_singleton.d.ts +24 -0
- package/dest/crypto/random/randomness_singleton.d.ts.map +1 -0
- package/dest/crypto/random/randomness_singleton.js +55 -0
- package/dest/crypto/schnorr/index.d.ts +32 -0
- package/dest/crypto/schnorr/index.d.ts.map +1 -0
- package/dest/crypto/schnorr/index.js +60 -0
- package/dest/crypto/schnorr/signature.d.ts +48 -0
- package/dest/crypto/schnorr/signature.d.ts.map +1 -0
- package/dest/crypto/schnorr/signature.js +77 -0
- package/dest/crypto/secp256k1/index.d.ts +30 -0
- package/dest/crypto/secp256k1/index.d.ts.map +1 -0
- package/dest/crypto/secp256k1/index.js +121 -0
- package/dest/crypto/secp256k1-signer/index.d.ts +3 -0
- package/dest/crypto/secp256k1-signer/index.d.ts.map +1 -0
- package/dest/crypto/secp256k1-signer/index.js +2 -0
- package/dest/crypto/secp256k1-signer/secp256k1_signer.d.ts +24 -0
- package/dest/crypto/secp256k1-signer/secp256k1_signer.d.ts.map +1 -0
- package/dest/crypto/secp256k1-signer/secp256k1_signer.js +30 -0
- package/dest/crypto/secp256k1-signer/utils.d.ts +102 -0
- package/dest/crypto/secp256k1-signer/utils.d.ts.map +1 -0
- package/dest/crypto/secp256k1-signer/utils.js +196 -0
- package/dest/crypto/sha256/index.d.ts +37 -0
- package/dest/crypto/sha256/index.d.ts.map +1 -0
- package/dest/crypto/sha256/index.js +208 -0
- package/dest/crypto/sha512/index.d.ts +9 -0
- package/dest/crypto/sha512/index.d.ts.map +1 -0
- package/dest/crypto/sha512/index.js +12 -0
- package/dest/crypto/signature/index.d.ts +17 -0
- package/dest/crypto/signature/index.d.ts.map +1 -0
- package/dest/crypto/signature/index.js +3 -0
- package/dest/crypto/sync/index.d.ts +3 -0
- package/dest/crypto/sync/index.d.ts.map +1 -0
- package/dest/crypto/sync/index.js +4 -0
- package/dest/crypto/sync/pedersen/index.d.ts +19 -0
- package/dest/crypto/sync/pedersen/index.d.ts.map +1 -0
- package/dest/crypto/sync/pedersen/index.js +45 -0
- package/dest/crypto/sync/poseidon/index.d.ts +23 -0
- package/dest/crypto/sync/poseidon/index.d.ts.map +1 -0
- package/dest/crypto/sync/poseidon/index.js +60 -0
- package/dest/curves/bls12/field.d.ts +148 -0
- package/dest/curves/bls12/field.d.ts.map +1 -0
- package/dest/curves/bls12/field.js +357 -0
- package/dest/curves/bls12/index.d.ts +3 -0
- package/dest/curves/bls12/index.d.ts.map +1 -0
- package/dest/curves/bls12/index.js +2 -0
- package/dest/curves/bls12/point.d.ts +229 -0
- package/dest/curves/bls12/point.d.ts.map +1 -0
- package/dest/curves/bls12/point.js +400 -0
- package/dest/curves/bn254/field.d.ts +185 -0
- package/dest/curves/bn254/field.d.ts.map +1 -0
- package/dest/curves/bn254/field.js +420 -0
- package/dest/curves/bn254/index.d.ts +3 -0
- package/dest/curves/bn254/index.d.ts.map +1 -0
- package/dest/curves/bn254/index.js +2 -0
- package/dest/curves/bn254/point.d.ts +54 -0
- package/dest/curves/bn254/point.d.ts.map +1 -0
- package/dest/curves/bn254/point.js +143 -0
- package/dest/curves/grumpkin/index.d.ts +10 -0
- package/dest/curves/grumpkin/index.d.ts.map +1 -0
- package/dest/curves/grumpkin/index.js +3 -0
- package/dest/curves/grumpkin/point.d.ts +168 -0
- package/dest/curves/grumpkin/point.d.ts.map +1 -0
- package/dest/curves/grumpkin/point.js +263 -0
- package/dest/decorators/index.d.ts +2 -0
- package/dest/decorators/index.d.ts.map +1 -0
- package/dest/decorators/index.js +1 -0
- package/dest/decorators/memoize.d.ts +2 -0
- package/dest/decorators/memoize.d.ts.map +1 -0
- package/dest/decorators/memoize.js +11 -0
- package/dest/error/index.d.ts +21 -0
- package/dest/error/index.d.ts.map +1 -0
- package/dest/error/index.js +17 -0
- package/dest/eth-address/index.d.ts +143 -0
- package/dest/eth-address/index.d.ts.map +1 -0
- package/dest/eth-address/index.js +224 -0
- package/dest/eth-signature/eth_signature.d.ts +65 -0
- package/dest/eth-signature/eth_signature.d.ts.map +1 -0
- package/dest/eth-signature/eth_signature.js +110 -0
- package/dest/eth-signature/index.d.ts +2 -0
- package/dest/eth-signature/index.d.ts.map +1 -0
- package/dest/eth-signature/index.js +1 -0
- package/dest/fifo/fifo_frame_reader.d.ts +41 -0
- package/dest/fifo/fifo_frame_reader.d.ts.map +1 -0
- package/dest/fifo/fifo_frame_reader.js +91 -0
- package/dest/fifo/index.d.ts +2 -0
- package/dest/fifo/index.d.ts.map +1 -0
- package/dest/fifo/index.js +1 -0
- package/dest/fifo_set/fifo_set.d.ts +15 -0
- package/dest/fifo_set/fifo_set.d.ts.map +1 -0
- package/dest/fifo_set/fifo_set.js +39 -0
- package/dest/fifo_set/index.d.ts +2 -0
- package/dest/fifo_set/index.d.ts.map +1 -0
- package/dest/fifo_set/index.js +1 -0
- package/dest/fs/index.d.ts +3 -0
- package/dest/fs/index.d.ts.map +1 -0
- package/dest/fs/index.js +2 -0
- package/dest/fs/run_in_dir.d.ts +2 -0
- package/dest/fs/run_in_dir.d.ts.map +1 -0
- package/dest/fs/run_in_dir.js +31 -0
- package/dest/fs/try_rm_dir.d.ts +3 -0
- package/dest/fs/try_rm_dir.d.ts.map +1 -0
- package/dest/fs/try_rm_dir.js +16 -0
- package/dest/iterable/all.d.ts +9 -0
- package/dest/iterable/all.d.ts.map +1 -0
- package/dest/iterable/all.js +18 -0
- package/dest/iterable/filter.d.ts +10 -0
- package/dest/iterable/filter.d.ts.map +1 -0
- package/dest/iterable/filter.js +48 -0
- package/dest/iterable/first.d.ts +8 -0
- package/dest/iterable/first.d.ts.map +1 -0
- package/dest/iterable/first.js +11 -0
- package/dest/iterable/index.d.ts +9 -0
- package/dest/iterable/index.d.ts.map +1 -0
- package/dest/iterable/index.js +8 -0
- package/dest/iterable/isAsyncIt.d.ts +7 -0
- package/dest/iterable/isAsyncIt.d.ts.map +1 -0
- package/dest/iterable/isAsyncIt.js +7 -0
- package/dest/iterable/map.d.ts +12 -0
- package/dest/iterable/map.d.ts.map +1 -0
- package/dest/iterable/map.js +36 -0
- package/dest/iterable/peek.d.ts +19 -0
- package/dest/iterable/peek.d.ts.map +1 -0
- package/dest/iterable/peek.js +33 -0
- package/dest/iterable/sort.d.ts +14 -0
- package/dest/iterable/sort.d.ts.map +1 -0
- package/dest/iterable/sort.js +15 -0
- package/dest/iterable/take.d.ts +10 -0
- package/dest/iterable/take.d.ts.map +1 -0
- package/dest/iterable/take.js +32 -0
- package/dest/iterable/toArray.d.ts +2 -0
- package/dest/iterable/toArray.d.ts.map +1 -0
- package/dest/iterable/toArray.js +7 -0
- package/dest/iterator/filter.d.ts +3 -0
- package/dest/iterator/filter.d.ts.map +1 -0
- package/dest/iterator/filter.js +7 -0
- package/dest/iterator/index.d.ts +2 -0
- package/dest/iterator/index.d.ts.map +1 -0
- package/dest/iterator/index.js +1 -0
- package/dest/jest/env.js +48 -0
- package/dest/jest/setup.js +34 -0
- package/dest/jest/setupAfterEnv.js +3 -0
- package/dest/json-rpc/client/fetch.d.ts +37 -0
- package/dest/json-rpc/client/fetch.d.ts.map +1 -0
- package/dest/json-rpc/client/fetch.js +67 -0
- package/dest/json-rpc/client/index.d.ts +3 -0
- package/dest/json-rpc/client/index.d.ts.map +1 -0
- package/dest/json-rpc/client/index.js +2 -0
- package/dest/json-rpc/client/safe_json_rpc_client.d.ts +33 -0
- package/dest/json-rpc/client/safe_json_rpc_client.d.ts.map +1 -0
- package/dest/json-rpc/client/safe_json_rpc_client.js +218 -0
- package/dest/json-rpc/client/undici.d.ts +16 -0
- package/dest/json-rpc/client/undici.d.ts.map +1 -0
- package/dest/json-rpc/client/undici.js +112 -0
- package/dest/json-rpc/convert.d.ts +20 -0
- package/dest/json-rpc/convert.d.ts.map +1 -0
- package/dest/json-rpc/convert.js +40 -0
- package/dest/json-rpc/errors.d.ts +4 -0
- package/dest/json-rpc/errors.d.ts.map +1 -0
- package/dest/json-rpc/errors.js +6 -0
- package/dest/json-rpc/fixtures/class_a.d.ts +13 -0
- package/dest/json-rpc/fixtures/class_a.d.ts.map +1 -0
- package/dest/json-rpc/fixtures/class_a.js +20 -0
- package/dest/json-rpc/fixtures/class_b.d.ts +13 -0
- package/dest/json-rpc/fixtures/class_b.d.ts.map +1 -0
- package/dest/json-rpc/fixtures/class_b.js +20 -0
- package/dest/json-rpc/fixtures/test_state.d.ts +85 -0
- package/dest/json-rpc/fixtures/test_state.d.ts.map +1 -0
- package/dest/json-rpc/fixtures/test_state.js +171 -0
- package/dest/json-rpc/index.d.ts +3 -0
- package/dest/json-rpc/index.d.ts.map +1 -0
- package/dest/json-rpc/index.js +2 -0
- package/dest/json-rpc/js_utils.d.ts +13 -0
- package/dest/json-rpc/js_utils.d.ts.map +1 -0
- package/dest/json-rpc/js_utils.js +16 -0
- package/dest/json-rpc/server/api_key_auth.d.ts +19 -0
- package/dest/json-rpc/server/api_key_auth.d.ts.map +1 -0
- package/dest/json-rpc/server/api_key_auth.js +57 -0
- package/dest/json-rpc/server/index.d.ts +3 -0
- package/dest/json-rpc/server/index.d.ts.map +1 -0
- package/dest/json-rpc/server/index.js +2 -0
- package/dest/json-rpc/server/safe_json_rpc_server.d.ts +177 -0
- package/dest/json-rpc/server/safe_json_rpc_server.d.ts.map +1 -0
- package/dest/json-rpc/server/safe_json_rpc_server.js +570 -0
- package/dest/json-rpc/test/index.d.ts +2 -0
- package/dest/json-rpc/test/index.d.ts.map +1 -0
- package/dest/json-rpc/test/index.js +1 -0
- package/dest/json-rpc/test/integration.d.ts +14 -0
- package/dest/json-rpc/test/integration.d.ts.map +1 -0
- package/dest/json-rpc/test/integration.js +21 -0
- package/dest/log/aws-logger-config.d.ts +8 -0
- package/dest/log/aws-logger-config.d.ts.map +1 -0
- package/dest/log/aws-logger-config.js +55 -0
- package/dest/log/bigint-utils.d.ts +5 -0
- package/dest/log/bigint-utils.d.ts.map +1 -0
- package/dest/log/bigint-utils.js +21 -0
- package/dest/log/console.d.ts +11 -0
- package/dest/log/console.d.ts.map +1 -0
- package/dest/log/console.js +36 -0
- package/dest/log/gcloud-logger-config.d.ts +13 -0
- package/dest/log/gcloud-logger-config.d.ts.map +1 -0
- package/dest/log/gcloud-logger-config.js +61 -0
- package/dest/log/index.d.ts +7 -0
- package/dest/log/index.d.ts.map +1 -0
- package/dest/log/index.js +6 -0
- package/dest/log/libp2p_logger.d.ts +10 -0
- package/dest/log/libp2p_logger.d.ts.map +1 -0
- package/dest/log/libp2p_logger.js +76 -0
- package/dest/log/log-filters.d.ts +20 -0
- package/dest/log/log-filters.d.ts.map +1 -0
- package/dest/log/log-filters.js +73 -0
- package/dest/log/log-levels.d.ts +3 -0
- package/dest/log/log-levels.d.ts.map +1 -0
- package/dest/log/log-levels.js +10 -0
- package/dest/log/log_fn.d.ts +7 -0
- package/dest/log/log_fn.d.ts.map +1 -0
- package/dest/log/log_fn.js +1 -0
- package/dest/log/noir_debug_log_util.d.ts +14 -0
- package/dest/log/noir_debug_log_util.d.ts.map +1 -0
- package/dest/log/noir_debug_log_util.js +14 -0
- package/dest/log/pino-logger-server.d.ts +9 -0
- package/dest/log/pino-logger-server.d.ts.map +1 -0
- package/dest/log/pino-logger-server.js +18 -0
- package/dest/log/pino-logger.d.ts +86 -0
- package/dest/log/pino-logger.d.ts.map +1 -0
- package/dest/log/pino-logger.js +347 -0
- package/dest/message/index.d.ts +32 -0
- package/dest/message/index.d.ts.map +1 -0
- package/dest/message/index.js +27 -0
- package/dest/mutex/index.d.ts +53 -0
- package/dest/mutex/index.d.ts.map +1 -0
- package/dest/mutex/index.js +78 -0
- package/dest/mutex/mutex_database.d.ts +10 -0
- package/dest/mutex/mutex_database.d.ts.map +1 -0
- package/dest/mutex/mutex_database.js +4 -0
- package/dest/noir/index.d.ts +2 -0
- package/dest/noir/index.d.ts.map +1 -0
- package/dest/noir/index.js +1 -0
- package/dest/noir/noir_package_config.d.ts +44 -0
- package/dest/noir/noir_package_config.d.ts.map +1 -0
- package/dest/noir/noir_package_config.js +36 -0
- package/dest/number/index.d.ts +3 -0
- package/dest/number/index.d.ts.map +1 -0
- package/dest/number/index.js +12 -0
- package/dest/profiler/index.d.ts +2 -0
- package/dest/profiler/index.d.ts.map +1 -0
- package/dest/profiler/index.js +1 -0
- package/dest/profiler/profiler.d.ts +8 -0
- package/dest/profiler/profiler.d.ts.map +1 -0
- package/dest/profiler/profiler.js +97 -0
- package/dest/promise/index.d.ts +3 -0
- package/dest/promise/index.d.ts.map +1 -0
- package/dest/promise/index.js +2 -0
- package/dest/promise/running-promise.d.ts +53 -0
- package/dest/promise/running-promise.d.ts.map +1 -0
- package/dest/promise/running-promise.js +122 -0
- package/dest/promise/utils.d.ts +25 -0
- package/dest/promise/utils.d.ts.map +1 -0
- package/dest/promise/utils.js +40 -0
- package/dest/queue/base_memory_queue.d.ts +65 -0
- package/dest/queue/base_memory_queue.d.ts.map +1 -0
- package/dest/queue/base_memory_queue.js +116 -0
- package/dest/queue/batch_queue.d.ts +47 -0
- package/dest/queue/batch_queue.d.ts.map +1 -0
- package/dest/queue/batch_queue.js +106 -0
- package/dest/queue/bounded_serial_queue.d.ts +56 -0
- package/dest/queue/bounded_serial_queue.d.ts.map +1 -0
- package/dest/queue/bounded_serial_queue.js +84 -0
- package/dest/queue/fifo_memory_queue.d.ts +21 -0
- package/dest/queue/fifo_memory_queue.d.ts.map +1 -0
- package/dest/queue/fifo_memory_queue.js +29 -0
- package/dest/queue/index.d.ts +7 -0
- package/dest/queue/index.d.ts.map +1 -0
- package/dest/queue/index.js +6 -0
- package/dest/queue/priority_memory_queue.d.ts +13 -0
- package/dest/queue/priority_memory_queue.d.ts.map +1 -0
- package/dest/queue/priority_memory_queue.js +16 -0
- package/dest/queue/priority_queue.d.ts +14 -0
- package/dest/queue/priority_queue.d.ts.map +1 -0
- package/dest/queue/priority_queue.js +29 -0
- package/dest/queue/semaphore.d.ts +27 -0
- package/dest/queue/semaphore.d.ts.map +1 -0
- package/dest/queue/semaphore.js +26 -0
- package/dest/queue/serial_queue.d.ts +49 -0
- package/dest/queue/serial_queue.d.ts.map +1 -0
- package/dest/queue/serial_queue.js +74 -0
- package/dest/retry/index.d.ts +83 -0
- package/dest/retry/index.d.ts.map +1 -0
- package/dest/retry/index.js +146 -0
- package/dest/running-promise/index.d.ts +2 -0
- package/dest/running-promise/index.d.ts.map +1 -0
- package/dest/running-promise/index.js +1 -0
- package/dest/schemas/api.d.ts +23 -0
- package/dest/schemas/api.d.ts.map +1 -0
- package/dest/schemas/api.js +9 -0
- package/dest/schemas/index.d.ts +6 -0
- package/dest/schemas/index.d.ts.map +1 -0
- package/dest/schemas/index.js +5 -0
- package/dest/schemas/parse.d.ts +9 -0
- package/dest/schemas/parse.d.ts.map +1 -0
- package/dest/schemas/parse.js +23 -0
- package/dest/schemas/schemas.d.ts +46 -0
- package/dest/schemas/schemas.d.ts.map +1 -0
- package/dest/schemas/schemas.js +56 -0
- package/dest/schemas/types.d.ts +33 -0
- package/dest/schemas/types.d.ts.map +1 -0
- package/dest/schemas/types.js +25 -0
- package/dest/schemas/utils.d.ts +47 -0
- package/dest/schemas/utils.d.ts.map +1 -0
- package/dest/schemas/utils.js +54 -0
- package/dest/serialize/buffer_reader.d.ts +274 -0
- package/dest/serialize/buffer_reader.d.ts.map +1 -0
- package/dest/serialize/buffer_reader.js +359 -0
- package/dest/serialize/buffer_sink.d.ts +134 -0
- package/dest/serialize/buffer_sink.d.ts.map +1 -0
- package/dest/serialize/buffer_sink.js +297 -0
- package/dest/serialize/field_reader.d.ts +121 -0
- package/dest/serialize/field_reader.d.ts.map +1 -0
- package/dest/serialize/field_reader.js +164 -0
- package/dest/serialize/free_funcs.d.ts +107 -0
- package/dest/serialize/free_funcs.d.ts.map +1 -0
- package/dest/serialize/free_funcs.js +183 -0
- package/dest/serialize/index.d.ts +8 -0
- package/dest/serialize/index.d.ts.map +1 -0
- package/dest/serialize/index.js +7 -0
- package/dest/serialize/serialize.d.ts +168 -0
- package/dest/serialize/serialize.d.ts.map +1 -0
- package/dest/serialize/serialize.js +258 -0
- package/dest/serialize/type_registry.d.ts +23 -0
- package/dest/serialize/type_registry.d.ts.map +1 -0
- package/dest/serialize/type_registry.js +61 -0
- package/dest/serialize/types.d.ts +33 -0
- package/dest/serialize/types.d.ts.map +1 -0
- package/dest/serialize/types.js +21 -0
- package/dest/sleep/index.d.ts +54 -0
- package/dest/sleep/index.d.ts.map +1 -0
- package/dest/sleep/index.js +80 -0
- package/dest/string/index.d.ts +18 -0
- package/dest/string/index.d.ts.map +1 -0
- package/dest/string/index.js +62 -0
- package/dest/testing/files/index.d.ts +20 -0
- package/dest/testing/files/index.d.ts.map +1 -0
- package/dest/testing/files/index.js +59 -0
- package/dest/testing/formatting.d.ts +4 -0
- package/dest/testing/formatting.d.ts.map +1 -0
- package/dest/testing/formatting.js +3 -0
- package/dest/testing/index.d.ts +5 -0
- package/dest/testing/index.d.ts.map +1 -0
- package/dest/testing/index.js +4 -0
- package/dest/testing/port_allocator.d.ts +10 -0
- package/dest/testing/port_allocator.d.ts.map +1 -0
- package/dest/testing/port_allocator.js +29 -0
- package/dest/testing/snapshot_serializer.d.ts +5 -0
- package/dest/testing/snapshot_serializer.d.ts.map +1 -0
- package/dest/testing/snapshot_serializer.js +32 -0
- package/dest/testing/test_data.d.ts +7 -0
- package/dest/testing/test_data.d.ts.map +1 -0
- package/dest/testing/test_data.js +29 -0
- package/dest/timer/date.d.ts +39 -0
- package/dest/timer/date.d.ts.map +1 -0
- package/dest/timer/date.js +62 -0
- package/dest/timer/elapsed.d.ts +13 -0
- package/dest/timer/elapsed.d.ts.map +1 -0
- package/dest/timer/elapsed.js +25 -0
- package/dest/timer/index.d.ts +5 -0
- package/dest/timer/index.d.ts.map +1 -0
- package/dest/timer/index.js +4 -0
- package/dest/timer/timeout.d.ts +56 -0
- package/dest/timer/timeout.d.ts.map +1 -0
- package/dest/timer/timeout.js +113 -0
- package/dest/timer/timer.d.ts +37 -0
- package/dest/timer/timer.d.ts.map +1 -0
- package/dest/timer/timer.js +40 -0
- package/dest/transport/dispatch/create_dispatch_proxy.d.ts +111 -0
- package/dest/transport/dispatch/create_dispatch_proxy.d.ts.map +1 -0
- package/dest/transport/dispatch/create_dispatch_proxy.js +59 -0
- package/dest/transport/dispatch/messages.d.ts +52 -0
- package/dest/transport/dispatch/messages.d.ts.map +1 -0
- package/dest/transport/dispatch/messages.js +13 -0
- package/dest/transport/index.d.ts +10 -0
- package/dest/transport/index.d.ts.map +1 -0
- package/dest/transport/index.js +9 -0
- package/dest/transport/interface/connector.d.ts +8 -0
- package/dest/transport/interface/connector.d.ts.map +1 -0
- package/dest/transport/interface/connector.js +3 -0
- package/dest/transport/interface/listener.d.ts +12 -0
- package/dest/transport/interface/listener.d.ts.map +1 -0
- package/dest/transport/interface/listener.js +4 -0
- package/dest/transport/interface/socket.d.ts +13 -0
- package/dest/transport/interface/socket.d.ts.map +1 -0
- package/dest/transport/interface/socket.js +7 -0
- package/dest/transport/interface/transferable.d.ts +68 -0
- package/dest/transport/interface/transferable.d.ts.map +1 -0
- package/dest/transport/interface/transferable.js +63 -0
- package/dest/transport/node/index.d.ts +3 -0
- package/dest/transport/node/index.d.ts.map +1 -0
- package/dest/transport/node/index.js +2 -0
- package/dest/transport/node/node_connector.d.ts +27 -0
- package/dest/transport/node/node_connector.d.ts.map +1 -0
- package/dest/transport/node/node_connector.js +26 -0
- package/dest/transport/node/node_connector_socket.d.ts +41 -0
- package/dest/transport/node/node_connector_socket.d.ts.map +1 -0
- package/dest/transport/node/node_connector_socket.js +44 -0
- package/dest/transport/node/node_listener.d.ts +25 -0
- package/dest/transport/node/node_listener.d.ts.map +1 -0
- package/dest/transport/node/node_listener.js +26 -0
- package/dest/transport/node/node_listener_socket.d.ts +36 -0
- package/dest/transport/node/node_listener_socket.d.ts.map +1 -0
- package/dest/transport/node/node_listener_socket.js +40 -0
- package/dest/transport/transport_client.d.ts +60 -0
- package/dest/transport/transport_client.d.ts.map +1 -0
- package/dest/transport/transport_client.js +96 -0
- package/dest/transport/transport_server.d.ts +47 -0
- package/dest/transport/transport_server.d.ts.map +1 -0
- package/dest/transport/transport_server.js +114 -0
- package/dest/trees/balanced_merkle_tree_root.d.ts +16 -0
- package/dest/trees/balanced_merkle_tree_root.d.ts.map +1 -0
- package/dest/trees/balanced_merkle_tree_root.js +50 -0
- package/dest/trees/hasher.d.ts +40 -0
- package/dest/trees/hasher.d.ts.map +1 -0
- package/dest/trees/hasher.js +10 -0
- package/dest/trees/index.d.ts +13 -0
- package/dest/trees/index.d.ts.map +1 -0
- package/dest/trees/index.js +12 -0
- package/dest/trees/indexed_merkle_tree.d.ts +11 -0
- package/dest/trees/indexed_merkle_tree.d.ts.map +1 -0
- package/dest/trees/indexed_merkle_tree.js +27 -0
- package/dest/trees/indexed_merkle_tree_calculator.d.ts +21 -0
- package/dest/trees/indexed_merkle_tree_calculator.d.ts.map +1 -0
- package/dest/trees/indexed_merkle_tree_calculator.js +87 -0
- package/dest/trees/indexed_tree_leaf.d.ts +55 -0
- package/dest/trees/indexed_tree_leaf.d.ts.map +1 -0
- package/dest/trees/indexed_tree_leaf.js +5 -0
- package/dest/trees/membership_witness.d.ts +63 -0
- package/dest/trees/membership_witness.d.ts.map +1 -0
- package/dest/trees/membership_witness.js +83 -0
- package/dest/trees/merkle_tree.d.ts +16 -0
- package/dest/trees/merkle_tree.d.ts.map +1 -0
- package/dest/trees/merkle_tree.js +58 -0
- package/dest/trees/merkle_tree_calculator.d.ts +16 -0
- package/dest/trees/merkle_tree_calculator.d.ts.map +1 -0
- package/dest/trees/merkle_tree_calculator.js +57 -0
- package/dest/trees/sibling_path.d.ts +96 -0
- package/dest/trees/sibling_path.d.ts.map +1 -0
- package/dest/trees/sibling_path.js +139 -0
- package/dest/trees/unbalanced_merkle_tree_calculator.d.ts +48 -0
- package/dest/trees/unbalanced_merkle_tree_calculator.d.ts.map +1 -0
- package/dest/trees/unbalanced_merkle_tree_calculator.js +154 -0
- package/dest/trees/unbalanced_merkle_tree_root.d.ts +27 -0
- package/dest/trees/unbalanced_merkle_tree_root.d.ts.map +1 -0
- package/dest/trees/unbalanced_merkle_tree_root.js +83 -0
- package/dest/trees/unbalanced_tree_store.d.ts +24 -0
- package/dest/trees/unbalanced_tree_store.d.ts.map +1 -0
- package/dest/trees/unbalanced_tree_store.js +148 -0
- package/dest/types/index.d.ts +68 -0
- package/dest/types/index.d.ts.map +1 -0
- package/dest/types/index.js +24 -0
- package/dest/url/index.d.ts +9 -0
- package/dest/url/index.d.ts.map +1 -0
- package/dest/url/index.js +62 -0
- package/dest/validation/index.d.ts +9 -0
- package/dest/validation/index.d.ts.map +1 -0
- package/dest/validation/index.js +15 -0
- package/package.json +213 -0
- package/src/array/array.ts +147 -0
- package/src/array/index.ts +2 -0
- package/src/array/sorted_array.ts +138 -0
- package/src/async-map/index.ts +18 -0
- package/src/async-pool/index.ts +51 -0
- package/src/bigint/index.ts +20 -0
- package/src/bigint-buffer/index.ts +92 -0
- package/src/branded-types/block_number.ts +135 -0
- package/src/branded-types/buffer32_hash.ts +38 -0
- package/src/branded-types/checkpoint_number.ts +130 -0
- package/src/branded-types/epoch.ts +88 -0
- package/src/branded-types/index.ts +8 -0
- package/src/branded-types/index_within_checkpoint.ts +88 -0
- package/src/branded-types/slot.ts +93 -0
- package/src/branded-types/types.ts +2 -0
- package/src/buffer/buffer16.ts +135 -0
- package/src/buffer/buffer32.ts +116 -0
- package/src/buffer/index.ts +3 -0
- package/src/buffer/utils.ts +8 -0
- package/src/collection/array.ts +351 -0
- package/src/collection/index.ts +4 -0
- package/src/collection/lru_map.ts +143 -0
- package/src/collection/lru_set.ts +115 -0
- package/src/collection/object.ts +89 -0
- package/src/committable/committable.ts +46 -0
- package/src/committable/index.ts +1 -0
- package/src/config/env_var.ts +412 -0
- package/src/config/index.ts +419 -0
- package/src/config/network_config.ts +21 -0
- package/src/config/network_name.ts +28 -0
- package/src/config/parse-env.ts +4 -0
- package/src/config/secret_value.ts +49 -0
- package/src/crypto/aes128/index.ts +77 -0
- package/src/crypto/bls/bn254_keystore.ts +276 -0
- package/src/crypto/bls/index.ts +76 -0
- package/src/crypto/bn254/index.ts +64 -0
- package/src/crypto/ecdsa/index.ts +88 -0
- package/src/crypto/ecdsa/signature.ts +100 -0
- package/src/crypto/grumpkin/index.ts +90 -0
- package/src/crypto/keccak/index.ts +283 -0
- package/src/crypto/keys/index.ts +26 -0
- package/src/crypto/pedersen/index.ts +1 -0
- package/src/crypto/pedersen/pedersen.noble.ts +573 -0
- package/src/crypto/pedersen/pedersen.wasm.ts +52 -0
- package/src/crypto/poseidon/index.ts +83 -0
- package/src/crypto/random/index.ts +47 -0
- package/src/crypto/random/randomness_singleton.ts +64 -0
- package/src/crypto/schnorr/index.ts +61 -0
- package/src/crypto/schnorr/signature.ts +87 -0
- package/src/crypto/secp256k1/index.ts +61 -0
- package/src/crypto/secp256k1-signer/index.ts +2 -0
- package/src/crypto/secp256k1-signer/secp256k1_signer.ts +38 -0
- package/src/crypto/secp256k1-signer/utils.ts +244 -0
- package/src/crypto/sha256/index.ts +194 -0
- package/src/crypto/sha512/index.ts +16 -0
- package/src/crypto/signature/index.ts +17 -0
- package/src/crypto/sync/index.ts +6 -0
- package/src/crypto/sync/pedersen/index.ts +46 -0
- package/src/crypto/sync/poseidon/index.ts +72 -0
- package/src/curves/bls12/field.ts +456 -0
- package/src/curves/bls12/index.ts +2 -0
- package/src/curves/bls12/point.ts +450 -0
- package/src/curves/bn254/field.ts +531 -0
- package/src/curves/bn254/index.ts +2 -0
- package/src/curves/bn254/point.ts +170 -0
- package/src/curves/grumpkin/index.ts +11 -0
- package/src/curves/grumpkin/point.ts +300 -0
- package/src/decorators/index.ts +1 -0
- package/src/decorators/memoize.ts +11 -0
- package/src/error/index.ts +22 -0
- package/src/eth-address/index.ts +269 -0
- package/src/eth-signature/eth_signature.ts +155 -0
- package/src/eth-signature/index.ts +1 -0
- package/src/fifo/fifo_frame_reader.ts +113 -0
- package/src/fifo/index.ts +1 -0
- package/src/fifo_set/fifo_set.ts +52 -0
- package/src/fifo_set/index.ts +1 -0
- package/src/fs/index.ts +2 -0
- package/src/fs/run_in_dir.ts +33 -0
- package/src/fs/try_rm_dir.ts +15 -0
- package/src/iterable/all.ts +32 -0
- package/src/iterable/filter.ts +77 -0
- package/src/iterable/first.ts +14 -0
- package/src/iterable/index.ts +8 -0
- package/src/iterable/isAsyncIt.ts +8 -0
- package/src/iterable/map.ts +66 -0
- package/src/iterable/peek.ts +58 -0
- package/src/iterable/sort.ts +39 -0
- package/src/iterable/take.ts +54 -0
- package/src/iterable/toArray.ts +9 -0
- package/src/iterator/filter.ts +11 -0
- package/src/iterator/index.ts +1 -0
- package/src/jest/env.mjs +52 -0
- package/src/jest/setup.mjs +38 -0
- package/src/jest/setupAfterEnv.mjs +3 -0
- package/src/json-rpc/README.md +55 -0
- package/src/json-rpc/client/fetch.ts +98 -0
- package/src/json-rpc/client/index.ts +2 -0
- package/src/json-rpc/client/safe_json_rpc_client.ts +283 -0
- package/src/json-rpc/client/undici.ts +128 -0
- package/src/json-rpc/convert.ts +52 -0
- package/src/json-rpc/errors.ts +6 -0
- package/src/json-rpc/fixtures/class_a.ts +18 -0
- package/src/json-rpc/fixtures/class_b.ts +18 -0
- package/src/json-rpc/fixtures/test_state.ts +143 -0
- package/src/json-rpc/index.ts +2 -0
- package/src/json-rpc/js_utils.ts +21 -0
- package/src/json-rpc/server/api_key_auth.ts +63 -0
- package/src/json-rpc/server/index.ts +2 -0
- package/src/json-rpc/server/safe_json_rpc_server.ts +626 -0
- package/src/json-rpc/test/index.ts +1 -0
- package/src/json-rpc/test/integration.ts +35 -0
- package/src/log/aws-logger-config.ts +32 -0
- package/src/log/bigint-utils.ts +25 -0
- package/src/log/console.ts +42 -0
- package/src/log/gcloud-logger-config.ts +72 -0
- package/src/log/index.ts +6 -0
- package/src/log/libp2p_logger.ts +93 -0
- package/src/log/log-filters.ts +81 -0
- package/src/log/log-levels.ts +3 -0
- package/src/log/log_fn.ts +5 -0
- package/src/log/noir_debug_log_util.ts +21 -0
- package/src/log/pino-logger-server.ts +25 -0
- package/src/log/pino-logger.ts +406 -0
- package/src/message/index.ts +47 -0
- package/src/mutex/index.ts +84 -0
- package/src/mutex/mutex_database.ts +11 -0
- package/src/noir/index.ts +1 -0
- package/src/noir/noir_package_config.ts +66 -0
- package/src/number/index.ts +14 -0
- package/src/profiler/index.ts +1 -0
- package/src/profiler/profiler.ts +125 -0
- package/src/promise/index.ts +2 -0
- package/src/promise/running-promise.ts +138 -0
- package/src/promise/utils.ts +60 -0
- package/src/queue/base_memory_queue.ts +138 -0
- package/src/queue/batch_queue.ts +121 -0
- package/src/queue/bounded_serial_queue.ts +103 -0
- package/src/queue/fifo_memory_queue.ts +39 -0
- package/src/queue/index.ts +6 -0
- package/src/queue/priority_memory_queue.ts +20 -0
- package/src/queue/priority_queue.ts +34 -0
- package/src/queue/semaphore.ts +38 -0
- package/src/queue/serial_queue.ts +86 -0
- package/src/retry/index.ts +185 -0
- package/src/running-promise/index.ts +1 -0
- package/src/schemas/api.ts +47 -0
- package/src/schemas/index.ts +5 -0
- package/src/schemas/parse.ts +32 -0
- package/src/schemas/schemas.ts +93 -0
- package/src/schemas/types.ts +36 -0
- package/src/schemas/utils.ts +91 -0
- package/src/serialize/buffer_reader.ts +472 -0
- package/src/serialize/buffer_sink.ts +350 -0
- package/src/serialize/field_reader.ts +208 -0
- package/src/serialize/free_funcs.ts +198 -0
- package/src/serialize/index.ts +7 -0
- package/src/serialize/serialize.ts +320 -0
- package/src/serialize/type_registry.ts +75 -0
- package/src/serialize/types.ts +40 -0
- package/src/sleep/index.ts +90 -0
- package/src/string/index.ts +80 -0
- package/src/testing/files/index.ts +74 -0
- package/src/testing/formatting.ts +3 -0
- package/src/testing/index.ts +4 -0
- package/src/testing/port_allocator.ts +31 -0
- package/src/testing/snapshot_serializer.ts +33 -0
- package/src/testing/test_data.ts +36 -0
- package/src/timer/date.ts +82 -0
- package/src/timer/elapsed.ts +23 -0
- package/src/timer/index.ts +4 -0
- package/src/timer/timeout.ts +136 -0
- package/src/timer/timer.ts +48 -0
- package/src/transport/dispatch/create_dispatch_proxy.ts +151 -0
- package/src/transport/dispatch/messages.ts +58 -0
- package/src/transport/index.ts +9 -0
- package/src/transport/interface/connector.ts +8 -0
- package/src/transport/interface/listener.ts +15 -0
- package/src/transport/interface/socket.ts +14 -0
- package/src/transport/interface/transferable.ts +125 -0
- package/src/transport/node/index.ts +2 -0
- package/src/transport/node/node_connector.ts +30 -0
- package/src/transport/node/node_connector_socket.ts +52 -0
- package/src/transport/node/node_listener.ts +34 -0
- package/src/transport/node/node_listener_socket.ts +48 -0
- package/src/transport/transport_client.ts +130 -0
- package/src/transport/transport_server.ts +111 -0
- package/src/trees/balanced_merkle_tree_root.ts +65 -0
- package/src/trees/hasher.ts +51 -0
- package/src/trees/index.ts +12 -0
- package/src/trees/indexed_merkle_tree.ts +40 -0
- package/src/trees/indexed_merkle_tree_calculator.ts +98 -0
- package/src/trees/indexed_tree_leaf.ts +56 -0
- package/src/trees/membership_witness.ts +112 -0
- package/src/trees/merkle_tree.ts +75 -0
- package/src/trees/merkle_tree_calculator.ts +66 -0
- package/src/trees/sibling_path.ts +177 -0
- package/src/trees/unbalanced_merkle_tree_calculator.ts +176 -0
- package/src/trees/unbalanced_merkle_tree_root.ts +112 -0
- package/src/trees/unbalanced_tree_store.ts +161 -0
- package/src/types/index.ts +103 -0
- package/src/url/index.ts +72 -0
- package/src/validation/index.ts +18 -0
|
@@ -0,0 +1,272 @@
|
|
|
1
|
+
import { Fq, Fr } from '../curves/bn254/field.js';
|
|
2
|
+
import { createConsoleLogger } from '../log/console.js';
|
|
3
|
+
import { getActiveNetworkName } from './network_name.js';
|
|
4
|
+
import { parseBooleanEnv } from './parse-env.js';
|
|
5
|
+
import { SecretValue } from './secret_value.js';
|
|
6
|
+
export { SecretValue, getActiveNetworkName };
|
|
7
|
+
export { NetworkConfigMapSchema, NetworkConfigSchema } from './network_config.js';
|
|
8
|
+
export function isBooleanConfigValue(obj, key) {
|
|
9
|
+
return typeof obj[key] === 'boolean';
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Shared utility function to get a value from environment variables with fallback support.
|
|
13
|
+
* This can be used by both getConfigFromMappings and CLI utilities.
|
|
14
|
+
*
|
|
15
|
+
* @param env - The primary environment variable name
|
|
16
|
+
* @param fallback - Optional array of fallback environment variable names
|
|
17
|
+
* @param parseFunc - Optional function to parse the environment variable value
|
|
18
|
+
* @param defaultValue - Optional default value to use if no environment variable is set
|
|
19
|
+
* @returns The parsed value from environment variables or the default value
|
|
20
|
+
*/ export function getValueFromEnvWithFallback(env, parseFunc, defaultValue, fallback) {
|
|
21
|
+
let value;
|
|
22
|
+
// Try primary env var
|
|
23
|
+
if (env) {
|
|
24
|
+
value = process.env[env];
|
|
25
|
+
}
|
|
26
|
+
// If primary not found, try fallbacks
|
|
27
|
+
if (value === undefined && fallback && fallback.length > 0) {
|
|
28
|
+
for (const fallbackEnv of fallback){
|
|
29
|
+
const fallbackVal = process.env[fallbackEnv];
|
|
30
|
+
if (fallbackVal !== undefined) {
|
|
31
|
+
value = fallbackVal;
|
|
32
|
+
break;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
// Parse the value if needed. Empty strings are treated as "not set".
|
|
37
|
+
if (value !== undefined && value !== '') {
|
|
38
|
+
return parseFunc ? parseFunc(value) : value;
|
|
39
|
+
}
|
|
40
|
+
// Return default if no env var found
|
|
41
|
+
return defaultValue;
|
|
42
|
+
}
|
|
43
|
+
export function getConfigFromMappings(configMappings) {
|
|
44
|
+
const config = {};
|
|
45
|
+
for(const key in configMappings){
|
|
46
|
+
const { env, parseEnv, defaultValue, fallback, deprecatedFallback } = configMappings[key];
|
|
47
|
+
try {
|
|
48
|
+
config[key] = getValueFromEnvWithFallback(env, parseEnv, defaultValue, fallback);
|
|
49
|
+
} catch (e) {
|
|
50
|
+
throw new Error(`Failed to parse config '${key}' (env: ${env ?? 'none'}): ${e.message}`);
|
|
51
|
+
}
|
|
52
|
+
if (deprecatedFallback?.length) {
|
|
53
|
+
const userLog = createConsoleLogger('[DEPRECATED]');
|
|
54
|
+
for (const { env: deprecatedEnv, message } of deprecatedFallback){
|
|
55
|
+
if (process.env[deprecatedEnv]) {
|
|
56
|
+
const warningMessage = message ?? `Environment variable ${deprecatedEnv} is deprecated. Please use ${env} instead.`;
|
|
57
|
+
userLog(warningMessage, {
|
|
58
|
+
deprecatedEnvVar: deprecatedEnv,
|
|
59
|
+
newEnvVar: env
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
return config;
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Filters out a service's config mappings to exclude certain keys.
|
|
69
|
+
* @param configMappings - The service's config mappings
|
|
70
|
+
* @param keysToFilter - The keys to filter out
|
|
71
|
+
* @returns The filtered config mappings
|
|
72
|
+
*/ export function omitConfigMappings(configMappings, keysToFilter) {
|
|
73
|
+
return Object.fromEntries(Object.entries(configMappings).filter(([key])=>!keysToFilter.includes(key)));
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Generates parseEnv and default values for an integer config value.
|
|
77
|
+
*
|
|
78
|
+
* The default is used only when the environment variable is unset or empty. A set-but-invalid
|
|
79
|
+
* value (non-numeric, fractional, or outside the safe-integer range) throws rather than silently
|
|
80
|
+
* falling back to the default.
|
|
81
|
+
* @param defaultVal - The default value to use when the environment variable is unset
|
|
82
|
+
* @returns Object with parseEnv and default values for an integer config value
|
|
83
|
+
*/ export function numberConfigHelper(defaultVal) {
|
|
84
|
+
return {
|
|
85
|
+
parseEnv: (val)=>parseSafeInteger(val),
|
|
86
|
+
defaultValue: defaultVal
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Generates parseEnv and default values for a floating-point config value.
|
|
91
|
+
*
|
|
92
|
+
* The default is used only when the environment variable is unset or empty. A set-but-invalid
|
|
93
|
+
* value (not a finite number) throws rather than silently falling back to the default.
|
|
94
|
+
* @param defaultVal - The default value to use when the environment variable is unset
|
|
95
|
+
* @param validationFn - Optional extra validation applied to the parsed value; should throw on invalid input
|
|
96
|
+
* @returns Object with parseEnv and default values for a floating-point config value
|
|
97
|
+
*/ export function floatConfigHelper(defaultVal, validationFn) {
|
|
98
|
+
return {
|
|
99
|
+
parseEnv: (val)=>{
|
|
100
|
+
const parsed = parseFiniteNumber(val);
|
|
101
|
+
validationFn?.(parsed);
|
|
102
|
+
return parsed;
|
|
103
|
+
},
|
|
104
|
+
defaultValue: defaultVal
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Generates parseEnv and default values for a 0-1 percentage config value.
|
|
109
|
+
*
|
|
110
|
+
* The default is used only when the environment variable is unset or empty. A set-but-invalid
|
|
111
|
+
* value (not a finite number, or outside the 0-1 range) throws rather than silently falling back
|
|
112
|
+
* to the default.
|
|
113
|
+
* @param defaultVal - The default value to use when the environment variable is unset
|
|
114
|
+
*/ export function percentageConfigHelper(defaultVal) {
|
|
115
|
+
return {
|
|
116
|
+
parseEnv: (val)=>{
|
|
117
|
+
const parsed = parseFiniteNumber(val);
|
|
118
|
+
if (parsed < 0 || parsed > 1) {
|
|
119
|
+
throw new TypeError(`Invalid percentage value: ${parsed} should be between 0 and 1`);
|
|
120
|
+
}
|
|
121
|
+
return parsed;
|
|
122
|
+
},
|
|
123
|
+
defaultValue: defaultVal
|
|
124
|
+
};
|
|
125
|
+
}
|
|
126
|
+
export function bigintConfigHelper(defaultVal) {
|
|
127
|
+
return {
|
|
128
|
+
parseEnv: (val)=>{
|
|
129
|
+
// Handle scientific notation (e.g. "1e+23", "2E23") which BigInt() doesn't accept directly.
|
|
130
|
+
// We parse it losslessly using bigint arithmetic instead of going through float64.
|
|
131
|
+
if (/[eE]/.test(val)) {
|
|
132
|
+
const match = val.match(/^(-?\d+(?:\.(\d+))?)[eE]([+-]?\d+)$/);
|
|
133
|
+
if (!match) {
|
|
134
|
+
throw new Error(`Cannot convert '${val}' to a BigInt`);
|
|
135
|
+
}
|
|
136
|
+
const digits = match[1].replace('.', '');
|
|
137
|
+
const decimalPlaces = match[2]?.length ?? 0;
|
|
138
|
+
const exponent = parseInt(match[3], 10) - decimalPlaces;
|
|
139
|
+
if (exponent < 0) {
|
|
140
|
+
throw new Error(`Cannot convert '${val}' to a BigInt: result is not an integer`);
|
|
141
|
+
}
|
|
142
|
+
return BigInt(digits) * 10n ** BigInt(exponent);
|
|
143
|
+
}
|
|
144
|
+
return BigInt(val);
|
|
145
|
+
},
|
|
146
|
+
defaultValue: defaultVal
|
|
147
|
+
};
|
|
148
|
+
}
|
|
149
|
+
/**
|
|
150
|
+
* Generates parseEnv for an optional numerical config value.
|
|
151
|
+
* Empty strings are already handled by getValueFromEnvWithFallback.
|
|
152
|
+
*/ export function optionalNumberConfigHelper() {
|
|
153
|
+
return {
|
|
154
|
+
parseEnv: (val)=>parseSafeInteger(val)
|
|
155
|
+
};
|
|
156
|
+
}
|
|
157
|
+
export function enumConfigHelper(values, defaultValue) {
|
|
158
|
+
return {
|
|
159
|
+
parseEnv: (val)=>{
|
|
160
|
+
const sanitizedVal = val.trim().toLowerCase();
|
|
161
|
+
if (values.some((v)=>v.toLowerCase() === sanitizedVal)) {
|
|
162
|
+
return values.find((v)=>v.toLowerCase() === sanitizedVal);
|
|
163
|
+
}
|
|
164
|
+
throw new Error(`Invalid config value '${val}' (must be one of ${values.join(', ')})`);
|
|
165
|
+
},
|
|
166
|
+
defaultValue
|
|
167
|
+
};
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* Generates parseEnv and default values for a boolean config value.
|
|
171
|
+
* @param defaultVal - The default value to use if the environment variable is not set or is invalid
|
|
172
|
+
* @returns Object with parseEnv and default values for a boolean config value
|
|
173
|
+
*/ export function booleanConfigHelper(defaultVal = false) {
|
|
174
|
+
const parse = (val)=>typeof val === 'boolean' ? val : parseBooleanEnv(val);
|
|
175
|
+
return {
|
|
176
|
+
parseEnv: parse,
|
|
177
|
+
parseVal: parse,
|
|
178
|
+
defaultValue: defaultVal,
|
|
179
|
+
isBoolean: true
|
|
180
|
+
};
|
|
181
|
+
}
|
|
182
|
+
export function secretValueConfigHelper(parse) {
|
|
183
|
+
const wrap = (val)=>new SecretValue(parse(val));
|
|
184
|
+
return {
|
|
185
|
+
parseEnv: wrap,
|
|
186
|
+
parseVal: wrap,
|
|
187
|
+
defaultValue: new SecretValue(parse(undefined))
|
|
188
|
+
};
|
|
189
|
+
}
|
|
190
|
+
export { parseBooleanEnv } from './parse-env.js';
|
|
191
|
+
export function secretStringConfigHelper(defaultValue) {
|
|
192
|
+
const parse = (val)=>new SecretValue(val);
|
|
193
|
+
return {
|
|
194
|
+
parseEnv: parse,
|
|
195
|
+
parseVal: parse,
|
|
196
|
+
defaultValue: defaultValue !== undefined ? new SecretValue(defaultValue) : undefined
|
|
197
|
+
};
|
|
198
|
+
}
|
|
199
|
+
export function secretFrConfigHelper(defaultValue) {
|
|
200
|
+
const parse = (val)=>new SecretValue(Fr.fromHexString(val));
|
|
201
|
+
return {
|
|
202
|
+
parseEnv: parse,
|
|
203
|
+
parseVal: parse,
|
|
204
|
+
defaultValue: defaultValue !== undefined ? new SecretValue(defaultValue) : undefined
|
|
205
|
+
};
|
|
206
|
+
}
|
|
207
|
+
export function secretFqConfigHelper(defaultValue) {
|
|
208
|
+
const parse = (val)=>new SecretValue(Fq.fromHexString(val));
|
|
209
|
+
return {
|
|
210
|
+
parseEnv: parse,
|
|
211
|
+
parseVal: parse,
|
|
212
|
+
defaultValue: defaultValue !== undefined ? new SecretValue(defaultValue) : undefined
|
|
213
|
+
};
|
|
214
|
+
}
|
|
215
|
+
/**
|
|
216
|
+
* Parses a string into a safe integer, throwing if the value is numeric but not an integer.
|
|
217
|
+
*
|
|
218
|
+
* Unlike `parseInt`, this does not silently truncate decimals: `'0.8'` throws rather than
|
|
219
|
+
* becoming `0`. A fractional value indicates the caller intended a non-integer where only
|
|
220
|
+
* integers are supported (use `floatConfigHelper`/`percentageConfigHelper` for those).
|
|
221
|
+
* @param value - The string value to parse
|
|
222
|
+
* @returns The parsed integer value
|
|
223
|
+
*/ function parseSafeInteger(value) {
|
|
224
|
+
const parsedValue = parseFloat(value);
|
|
225
|
+
if (!Number.isSafeInteger(parsedValue)) {
|
|
226
|
+
throw new Error(`Invalid integer config value '${value}'; expected a whole number`);
|
|
227
|
+
}
|
|
228
|
+
return parsedValue;
|
|
229
|
+
}
|
|
230
|
+
/**
|
|
231
|
+
* Parses a string into a finite floating-point number, throwing if the value is not a finite number.
|
|
232
|
+
*
|
|
233
|
+
* Invalid input (e.g. `'abc'`, or an overflow to `Infinity`) throws rather than being silently
|
|
234
|
+
* swallowed, so a misconfigured value fails loudly instead of falling back to the config default.
|
|
235
|
+
* @param value - The string value to parse
|
|
236
|
+
* @returns The parsed number
|
|
237
|
+
*/ function parseFiniteNumber(value) {
|
|
238
|
+
const parsedValue = parseFloat(value);
|
|
239
|
+
if (!Number.isFinite(parsedValue)) {
|
|
240
|
+
throw new Error(`Invalid number config value '${value}'`);
|
|
241
|
+
}
|
|
242
|
+
return parsedValue;
|
|
243
|
+
}
|
|
244
|
+
/**
|
|
245
|
+
* Picks specific keys from the given configuration mappings.
|
|
246
|
+
*
|
|
247
|
+
* @template T - The type of the full configuration object.
|
|
248
|
+
* @template K - The keys to pick from the configuration object.
|
|
249
|
+
* @param {ConfigMappingsType<T>} configMappings - The full configuration mappings object.
|
|
250
|
+
* @param {K[]} keys - The keys to pick from the configuration mappings.
|
|
251
|
+
* @returns {ConfigMappingsType<Pick<T, K>>} - A new configuration mappings object containing only the specified keys.
|
|
252
|
+
*/ export function pickConfigMappings(configMappings, keys) {
|
|
253
|
+
return Object.fromEntries(keys.map((key)=>[
|
|
254
|
+
key,
|
|
255
|
+
configMappings[key]
|
|
256
|
+
]));
|
|
257
|
+
}
|
|
258
|
+
/**
|
|
259
|
+
* Extracts the default configuration values from the given configuration mappings.
|
|
260
|
+
*
|
|
261
|
+
* @template T - The type of the configuration object.
|
|
262
|
+
* @param {ConfigMappingsType<T>} configMappings - The configuration mappings object.
|
|
263
|
+
* @returns {T} - The configuration object with default values.
|
|
264
|
+
*/ export function getDefaultConfig(configMappings) {
|
|
265
|
+
const defaultConfig = {};
|
|
266
|
+
for(const key in configMappings){
|
|
267
|
+
if (configMappings[key] && configMappings[key].defaultValue !== undefined) {
|
|
268
|
+
defaultConfig[key] = configMappings[key].defaultValue;
|
|
269
|
+
}
|
|
270
|
+
}
|
|
271
|
+
return defaultConfig;
|
|
272
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export declare const NetworkConfigSchema: z.ZodObject<{
|
|
3
|
+
bootnodes: z.ZodArray<z.ZodString>;
|
|
4
|
+
snapshots: z.ZodArray<z.ZodString>;
|
|
5
|
+
blobFileStoreUrls: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
6
|
+
txCollectionFileStoreUrls: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
7
|
+
registryAddress: z.ZodString;
|
|
8
|
+
feeAssetHandlerAddress: z.ZodOptional<z.ZodString>;
|
|
9
|
+
l1ChainId: z.ZodNumber;
|
|
10
|
+
blockDurationMs: z.ZodOptional<z.ZodNumber>;
|
|
11
|
+
txPublicSetupAllowListExtend: z.ZodOptional<z.ZodString>;
|
|
12
|
+
nodeVersion: z.ZodOptional<z.ZodString>;
|
|
13
|
+
}, z.core.$loose>;
|
|
14
|
+
export declare const NetworkConfigMapSchema: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
15
|
+
bootnodes: z.ZodArray<z.ZodString>;
|
|
16
|
+
snapshots: z.ZodArray<z.ZodString>;
|
|
17
|
+
blobFileStoreUrls: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
18
|
+
txCollectionFileStoreUrls: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
19
|
+
registryAddress: z.ZodString;
|
|
20
|
+
feeAssetHandlerAddress: z.ZodOptional<z.ZodString>;
|
|
21
|
+
l1ChainId: z.ZodNumber;
|
|
22
|
+
blockDurationMs: z.ZodOptional<z.ZodNumber>;
|
|
23
|
+
txPublicSetupAllowListExtend: z.ZodOptional<z.ZodString>;
|
|
24
|
+
nodeVersion: z.ZodOptional<z.ZodString>;
|
|
25
|
+
}, z.core.$loose>>;
|
|
26
|
+
export type NetworkConfig = z.infer<typeof NetworkConfigSchema>;
|
|
27
|
+
export type NetworkConfigMap = z.infer<typeof NetworkConfigMapSchema>;
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV0d29ya19jb25maWcuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb25maWcvbmV0d29ya19jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUV4QixlQUFPLE1BQU0sbUJBQW1COzs7Ozs7Ozs7OztpQkFhaEIsQ0FBQztBQUVqQixlQUFPLE1BQU0sc0JBQXNCOzs7Ozs7Ozs7OztrQkFBNEMsQ0FBQztBQUVoRixNQUFNLE1BQU0sYUFBYSxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxtQkFBbUIsQ0FBQyxDQUFDO0FBQ2hFLE1BQU0sTUFBTSxnQkFBZ0IsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sc0JBQXNCLENBQUMsQ0FBQyJ9
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"network_config.d.ts","sourceRoot":"","sources":["../../src/config/network_config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,mBAAmB;;;;;;;;;;;iBAahB,CAAC;AAEjB,eAAO,MAAM,sBAAsB;;;;;;;;;;;kBAA4C,CAAC;AAEhF,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAChE,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export const NetworkConfigSchema = z.object({
|
|
3
|
+
bootnodes: z.array(z.string()),
|
|
4
|
+
snapshots: z.array(z.string()),
|
|
5
|
+
blobFileStoreUrls: z.array(z.string()).optional(),
|
|
6
|
+
txCollectionFileStoreUrls: z.array(z.string()).optional(),
|
|
7
|
+
registryAddress: z.string(),
|
|
8
|
+
feeAssetHandlerAddress: z.string().optional(),
|
|
9
|
+
l1ChainId: z.number(),
|
|
10
|
+
blockDurationMs: z.number().positive().optional(),
|
|
11
|
+
txPublicSetupAllowListExtend: z.string().optional(),
|
|
12
|
+
nodeVersion: z.string().optional()
|
|
13
|
+
}).passthrough(); // Allow additional unknown fields to pass through
|
|
14
|
+
export const NetworkConfigMapSchema = z.record(z.string(), NetworkConfigSchema);
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export type NetworkNames = 'local' | 'staging' | 'testnet' | 'mainnet' | 'next-net' | 'devnet' | `v${number}-devnet-${number}`;
|
|
2
|
+
export declare function getActiveNetworkName(name?: string): NetworkNames;
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV0d29ya19uYW1lLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29uZmlnL25ldHdvcmtfbmFtZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE1BQU0sWUFBWSxHQUNwQixPQUFPLEdBQ1AsU0FBUyxHQUNULFNBQVMsR0FDVCxTQUFTLEdBQ1QsVUFBVSxHQUNWLFFBQVEsR0FDUixJQUFJLE1BQU0sV0FBVyxNQUFNLEVBQUUsQ0FBQztBQUVsQyx3QkFBZ0Isb0JBQW9CLENBQUMsSUFBSSxDQUFDLEVBQUUsTUFBTSxHQUFHLFlBQVksQ0FrQmhFIn0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"network_name.d.ts","sourceRoot":"","sources":["../../src/config/network_name.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GACpB,OAAO,GACP,SAAS,GACT,SAAS,GACT,SAAS,GACT,UAAU,GACV,QAAQ,GACR,IAAI,MAAM,WAAW,MAAM,EAAE,CAAC;AAElC,wBAAgB,oBAAoB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,YAAY,CAkBhE"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export function getActiveNetworkName(name) {
|
|
2
|
+
const network = name || process.env.NETWORK;
|
|
3
|
+
if (!network || network === '' || network === 'local') {
|
|
4
|
+
return 'local';
|
|
5
|
+
} else if (network === 'staging') {
|
|
6
|
+
return network;
|
|
7
|
+
} else if (network === 'testnet' || network === 'alpha-testnet') {
|
|
8
|
+
return 'testnet';
|
|
9
|
+
} else if (network === 'mainnet') {
|
|
10
|
+
return 'mainnet';
|
|
11
|
+
} else if (network === 'next-net') {
|
|
12
|
+
return 'next-net';
|
|
13
|
+
} else if (network === 'devnet') {
|
|
14
|
+
return 'devnet';
|
|
15
|
+
} else if (/^v\d+-devnet-\d+$/.test(network)) {
|
|
16
|
+
return network;
|
|
17
|
+
}
|
|
18
|
+
throw new Error(`Unknown network: ${network}`);
|
|
19
|
+
}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/** Parses an env var as boolean. Returns true only if value is 1, true, or TRUE. */
|
|
2
|
+
export declare function parseBooleanEnv(val: string | undefined): boolean;
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2UtZW52LmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29uZmlnL3BhcnNlLWVudi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxvRkFBb0Y7QUFDcEYsd0JBQWdCLGVBQWUsQ0FBQyxHQUFHLEVBQUUsTUFBTSxHQUFHLFNBQVMsR0FBRyxPQUFPLENBRWhFIn0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parse-env.d.ts","sourceRoot":"","sources":["../../src/config/parse-env.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAEhE"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { inspect } from 'util';
|
|
2
|
+
import type { ZodType } from 'zod';
|
|
3
|
+
/**
|
|
4
|
+
* A class wrapping a secret value to protect it from accidently being leaked in logs
|
|
5
|
+
*/
|
|
6
|
+
export declare class SecretValue<T> {
|
|
7
|
+
#private;
|
|
8
|
+
private readonly redactedValue;
|
|
9
|
+
constructor(value: T, redactedValue?: string);
|
|
10
|
+
/**
|
|
11
|
+
* Returns the wrapped value
|
|
12
|
+
*/
|
|
13
|
+
getValue(): T;
|
|
14
|
+
/**
|
|
15
|
+
* Returns a redacted string representation of the value
|
|
16
|
+
*/
|
|
17
|
+
toString(): string;
|
|
18
|
+
/**
|
|
19
|
+
* Returns a redacted string representation of the value
|
|
20
|
+
*/
|
|
21
|
+
toJSON(): string;
|
|
22
|
+
[inspect.custom](): string;
|
|
23
|
+
/**
|
|
24
|
+
* Returns a Zod schema
|
|
25
|
+
*/
|
|
26
|
+
static schema<O>(valueSchema: ZodType<O, any>): ZodType<SecretValue<O>, any>;
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjcmV0X3ZhbHVlLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29uZmlnL3NlY3JldF92YWx1ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLEtBQUssQ0FBQztBQUVuQzs7R0FFRztBQUNILHFCQUFhLFdBQVcsQ0FBQyxDQUFDOztJQU10QixPQUFPLENBQUMsUUFBUSxDQUFDLGFBQWE7SUFGaEMsWUFDRSxLQUFLLEVBQUUsQ0FBQyxFQUNTLGFBQWEsU0FBZSxFQUc5QztJQUVEOztPQUVHO0lBQ0ksUUFBUSxJQUFJLENBQUMsQ0FFbkI7SUFFRDs7T0FFRztJQUNJLFFBQVEsSUFBSSxNQUFNLENBRXhCO0lBRUQ7O09BRUc7SUFDSSxNQUFNLElBQUksTUFBTSxDQUV0QjtJQUVNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxXQUV0QjtJQUVEOztPQUVHO0lBQ0gsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsV0FBVyxFQUFFLE9BQU8sQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FFM0U7Q0FDRiJ9
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"secret_value.d.ts","sourceRoot":"","sources":["../../src/config/secret_value.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AAEnC;;GAEG;AACH,qBAAa,WAAW,CAAC,CAAC;;IAMtB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAFhC,YACE,KAAK,EAAE,CAAC,EACS,aAAa,SAAe,EAG9C;IAED;;OAEG;IACI,QAAQ,IAAI,CAAC,CAEnB;IAED;;OAEG;IACI,QAAQ,IAAI,MAAM,CAExB;IAED;;OAEG;IACI,MAAM,IAAI,MAAM,CAEtB;IAEM,CAAC,OAAO,CAAC,MAAM,CAAC,WAEtB;IAED;;OAEG;IACH,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAE3E;CACF"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
var _computedKey;
|
|
2
|
+
import { inspect } from 'util';
|
|
3
|
+
_computedKey = inspect.custom;
|
|
4
|
+
/**
|
|
5
|
+
* A class wrapping a secret value to protect it from accidently being leaked in logs
|
|
6
|
+
*/ export class SecretValue {
|
|
7
|
+
redactedValue;
|
|
8
|
+
/** The secret value. Use a private member field so that it's not visible to the outside */ #value;
|
|
9
|
+
constructor(value, redactedValue = '[Redacted]'){
|
|
10
|
+
this.redactedValue = redactedValue;
|
|
11
|
+
this.#value = value;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Returns the wrapped value
|
|
15
|
+
*/ getValue() {
|
|
16
|
+
return this.#value;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Returns a redacted string representation of the value
|
|
20
|
+
*/ toString() {
|
|
21
|
+
return this.redactedValue;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Returns a redacted string representation of the value
|
|
25
|
+
*/ toJSON() {
|
|
26
|
+
return this.redactedValue;
|
|
27
|
+
}
|
|
28
|
+
[_computedKey]() {
|
|
29
|
+
return this.toString();
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Returns a Zod schema
|
|
33
|
+
*/ static schema(valueSchema) {
|
|
34
|
+
return valueSchema.transform((value)=>new SecretValue(value));
|
|
35
|
+
}
|
|
36
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { Buffer } from 'buffer';
|
|
2
|
+
/**
|
|
3
|
+
* AES-128-CBC encryption/decryption.
|
|
4
|
+
*/
|
|
5
|
+
export declare class Aes128 {
|
|
6
|
+
/**
|
|
7
|
+
* Encrypt a buffer using AES-128-CBC.
|
|
8
|
+
* @param data - Data to encrypt.
|
|
9
|
+
* @param iv - AES initialization vector.
|
|
10
|
+
* @param key - Key to encrypt with.
|
|
11
|
+
* @returns Encrypted data.
|
|
12
|
+
*/
|
|
13
|
+
encryptBufferCBC(data: Uint8Array, iv: Uint8Array, key: Uint8Array): Promise<Buffer<ArrayBuffer>>;
|
|
14
|
+
/**
|
|
15
|
+
* Decrypt a buffer using AES-128-CBC.
|
|
16
|
+
* We keep the padding in the returned buffer.
|
|
17
|
+
* @param data - Data to decrypt.
|
|
18
|
+
* @param iv - AES initialization vector.
|
|
19
|
+
* @param key - Key to decrypt with.
|
|
20
|
+
* @returns Decrypted data.
|
|
21
|
+
*/
|
|
22
|
+
decryptBufferCBCKeepPadding(data: Uint8Array, iv: Uint8Array, key: Uint8Array): Promise<Buffer>;
|
|
23
|
+
/**
|
|
24
|
+
* Decrypt a buffer using AES-128-CBC.
|
|
25
|
+
* @param data - Data to decrypt.
|
|
26
|
+
* @param iv - AES initialization vector.
|
|
27
|
+
* @param key - Key to decrypt with.
|
|
28
|
+
* @returns Decrypted data.
|
|
29
|
+
* @throws If the decrypted buffer has invalid PKCS#7 padding.
|
|
30
|
+
*/
|
|
31
|
+
decryptBufferCBC(data: Uint8Array, iv: Uint8Array, key: Uint8Array): Promise<Buffer<ArrayBufferLike>>;
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jcnlwdG8vYWVzMTI4L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFFaEM7O0dBRUc7QUFDSCxxQkFBYSxNQUFNO0lBQ2pCOzs7Ozs7T0FNRztJQUNVLGdCQUFnQixDQUFDLElBQUksRUFBRSxVQUFVLEVBQUUsRUFBRSxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsVUFBVSxnQ0FrQjlFO0lBRUQ7Ozs7Ozs7T0FPRztJQUNVLDJCQUEyQixDQUFDLElBQUksRUFBRSxVQUFVLEVBQUUsRUFBRSxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsVUFBVSxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FVM0c7SUFFRDs7Ozs7OztPQU9HO0lBQ1UsZ0JBQWdCLENBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRSxFQUFFLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxVQUFVLG9DQVk5RTtDQUNGIn0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/crypto/aes128/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC;;GAEG;AACH,qBAAa,MAAM;IACjB;;;;;;OAMG;IACU,gBAAgB,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,UAAU,gCAkB9E;IAED;;;;;;;OAOG;IACU,2BAA2B,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAU3G;IAED;;;;;;;OAOG;IACU,gBAAgB,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,UAAU,oCAY9E;CACF"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { BarretenbergSync } from '@aztec/bb.js';
|
|
2
|
+
import { Buffer } from 'buffer';
|
|
3
|
+
/**
|
|
4
|
+
* AES-128-CBC encryption/decryption.
|
|
5
|
+
*/ export class Aes128 {
|
|
6
|
+
/**
|
|
7
|
+
* Encrypt a buffer using AES-128-CBC.
|
|
8
|
+
* @param data - Data to encrypt.
|
|
9
|
+
* @param iv - AES initialization vector.
|
|
10
|
+
* @param key - Key to encrypt with.
|
|
11
|
+
* @returns Encrypted data.
|
|
12
|
+
*/ async encryptBufferCBC(data, iv, key) {
|
|
13
|
+
const rawLength = data.length;
|
|
14
|
+
const numPaddingBytes = 16 - rawLength % 16;
|
|
15
|
+
const paddingBuffer = Buffer.alloc(numPaddingBytes);
|
|
16
|
+
// input num bytes needs to be a multiple of 16 and at least 1 byte
|
|
17
|
+
// node uses PKCS#7-Padding scheme, where padding byte value = the number of padding bytes
|
|
18
|
+
paddingBuffer.fill(numPaddingBytes);
|
|
19
|
+
const input = Buffer.concat([
|
|
20
|
+
data,
|
|
21
|
+
paddingBuffer
|
|
22
|
+
]);
|
|
23
|
+
await BarretenbergSync.initSingleton();
|
|
24
|
+
const api = BarretenbergSync.getSingleton();
|
|
25
|
+
const response = api.aesEncrypt({
|
|
26
|
+
plaintext: input,
|
|
27
|
+
iv,
|
|
28
|
+
key,
|
|
29
|
+
length: input.length
|
|
30
|
+
});
|
|
31
|
+
return Buffer.from(response.ciphertext);
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Decrypt a buffer using AES-128-CBC.
|
|
35
|
+
* We keep the padding in the returned buffer.
|
|
36
|
+
* @param data - Data to decrypt.
|
|
37
|
+
* @param iv - AES initialization vector.
|
|
38
|
+
* @param key - Key to decrypt with.
|
|
39
|
+
* @returns Decrypted data.
|
|
40
|
+
*/ async decryptBufferCBCKeepPadding(data, iv, key) {
|
|
41
|
+
await BarretenbergSync.initSingleton();
|
|
42
|
+
const api = BarretenbergSync.getSingleton();
|
|
43
|
+
const response = api.aesDecrypt({
|
|
44
|
+
ciphertext: data,
|
|
45
|
+
iv,
|
|
46
|
+
key,
|
|
47
|
+
length: data.length
|
|
48
|
+
});
|
|
49
|
+
return Buffer.from(response.plaintext);
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Decrypt a buffer using AES-128-CBC.
|
|
53
|
+
* @param data - Data to decrypt.
|
|
54
|
+
* @param iv - AES initialization vector.
|
|
55
|
+
* @param key - Key to decrypt with.
|
|
56
|
+
* @returns Decrypted data.
|
|
57
|
+
* @throws If the decrypted buffer has invalid PKCS#7 padding.
|
|
58
|
+
*/ async decryptBufferCBC(data, iv, key) {
|
|
59
|
+
const paddedBuffer = await this.decryptBufferCBCKeepPadding(data, iv, key);
|
|
60
|
+
const paddingLen = paddedBuffer[paddedBuffer.length - 1];
|
|
61
|
+
if (paddingLen === 0 || paddingLen > 16) {
|
|
62
|
+
throw new Error(`Invalid PKCS#7 padding length: ${paddingLen}`);
|
|
63
|
+
}
|
|
64
|
+
for(let i = paddedBuffer.length - paddingLen; i < paddedBuffer.length; i++){
|
|
65
|
+
if (paddedBuffer[i] !== paddingLen) {
|
|
66
|
+
throw new Error('Invalid PKCS#7 padding');
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
return paddedBuffer.subarray(0, paddedBuffer.length - paddingLen);
|
|
70
|
+
}
|
|
71
|
+
}
|