@aztec/foundation 0.73.0 → 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.
- package/dest/abi/abi.js +157 -93
- package/dest/abi/buffer.js +9 -9
- package/dest/abi/decoder.js +89 -86
- package/dest/abi/encoder.js +92 -88
- package/dest/abi/event_selector.js +25 -33
- package/dest/abi/function_selector.js +28 -33
- package/dest/abi/index.js +0 -1
- package/dest/abi/note_selector.js +15 -21
- package/dest/abi/selector.js +22 -29
- package/dest/abi/u128.js +12 -6
- package/dest/abi/utils.js +9 -20
- package/dest/array/array.js +19 -26
- package/dest/array/index.js +0 -1
- package/dest/async-map/index.js +2 -4
- package/dest/async-pool/index.js +6 -9
- package/dest/aztec-address/index.js +14 -19
- package/dest/bigint-buffer/index.js +6 -13
- package/dest/buffer/buffer32.js +53 -66
- package/dest/buffer/index.js +0 -1
- package/dest/collection/array.js +47 -59
- package/dest/collection/index.js +0 -1
- package/dest/collection/object.js +9 -9
- package/dest/committable/committable.js +15 -20
- package/dest/committable/index.js +0 -1
- package/dest/config/env_var.js +1 -2
- package/dest/config/index.js +31 -36
- package/dest/crypto/index.js +0 -1
- package/dest/crypto/keccak/index.js +60 -69
- package/dest/crypto/keys/index.js +1 -2
- package/dest/crypto/pedersen/index.js +0 -1
- package/dest/crypto/pedersen/pedersen.elliptic.js +153 -146
- package/dest/crypto/pedersen/pedersen.noble.js +140 -142
- package/dest/crypto/pedersen/pedersen.wasm.js +14 -13
- package/dest/crypto/poseidon/index.js +10 -14
- package/dest/crypto/random/index.js +7 -12
- package/dest/crypto/random/randomness_singleton.js +12 -12
- package/dest/crypto/secp256k1-signer/index.js +0 -1
- package/dest/crypto/secp256k1-signer/secp256k1_signer.js +8 -9
- package/dest/crypto/secp256k1-signer/utils.js +11 -16
- package/dest/crypto/sha256/index.js +80 -30
- package/dest/crypto/sha512/index.js +2 -4
- package/dest/crypto/sync/index.js +0 -1
- package/dest/crypto/sync/pedersen/index.js +14 -13
- package/dest/crypto/sync/poseidon/index.js +10 -14
- package/dest/decorators/index.js +0 -1
- package/dest/decorators/memoize.js +1 -2
- package/dest/error/index.js +6 -19
- package/dest/eth-address/index.js +92 -113
- package/dest/eth-signature/eth_signature.js +21 -27
- package/dest/eth-signature/index.js +0 -1
- package/dest/fields/coordinate.js +47 -46
- package/dest/fields/fields.js +112 -127
- package/dest/fields/index.js +0 -1
- package/dest/fields/point.js +119 -129
- package/dest/fs/index.js +0 -1
- package/dest/fs/run_in_dir.js +6 -6
- package/dest/index.js +0 -2
- package/dest/iterable/all.js +3 -4
- package/dest/iterable/filter.js +10 -11
- package/dest/iterable/index.js +0 -1
- package/dest/iterable/isAsyncIt.js +1 -3
- package/dest/iterable/map.js +10 -11
- package/dest/iterable/peek.js +14 -14
- package/dest/iterable/sort.js +4 -5
- package/dest/iterable/take.js +6 -7
- package/dest/iterable/toArray.js +1 -2
- package/dest/jest/setup.js +7 -0
- package/dest/json-rpc/client/fetch.js +21 -19
- package/dest/json-rpc/client/index.js +0 -1
- package/dest/json-rpc/client/safe_json_rpc_client.js +16 -8
- package/dest/json-rpc/convert.js +10 -20
- package/dest/json-rpc/fixtures/class_a.js +8 -5
- package/dest/json-rpc/fixtures/class_b.js +8 -5
- package/dest/json-rpc/fixtures/test_state.js +53 -40
- package/dest/json-rpc/index.js +0 -1
- package/dest/json-rpc/js_utils.js +2 -5
- package/dest/json-rpc/server/index.js +0 -1
- package/dest/json-rpc/server/safe_json_rpc_server.js +145 -101
- package/dest/json-rpc/server/telemetry.js +0 -2
- package/dest/json-rpc/test/index.js +0 -1
- package/dest/json-rpc/test/integration.js +8 -3
- package/dest/log/console.js +14 -16
- package/dest/log/debug.js +9 -18
- package/dest/log/gcloud-logger-config.js +17 -15
- package/dest/log/index.js +0 -1
- package/dest/log/log-filters.js +13 -11
- package/dest/log/log-levels.js +10 -2
- package/dest/log/log_fn.js +1 -2
- package/dest/log/log_history.js +21 -25
- package/dest/log/pino-logger.js +82 -64
- package/dest/message/index.js +7 -3
- package/dest/mutex/index.js +34 -32
- package/dest/mutex/mutex_database.js +4 -2
- package/dest/noir/index.js +0 -1
- package/dest/noir/noir_package_config.js +13 -8
- package/dest/promise/index.js +0 -1
- package/dest/promise/running-promise.js +28 -28
- package/dest/promise/utils.js +3 -5
- package/dest/queue/base_memory_queue.js +51 -59
- package/dest/queue/bounded_serial_queue.js +41 -51
- package/dest/queue/fifo_memory_queue.js +4 -8
- package/dest/queue/index.js +0 -1
- package/dest/queue/priority_memory_queue.js +3 -4
- package/dest/queue/priority_queue.js +5 -5
- package/dest/queue/semaphore.js +15 -19
- package/dest/queue/serial_queue.js +37 -47
- package/dest/retry/index.js +21 -18
- package/dest/running-promise/index.js +0 -1
- package/dest/schemas/api.js +2 -7
- package/dest/schemas/index.js +0 -1
- package/dest/schemas/parse.js +4 -8
- package/dest/schemas/schemas.js +33 -48
- package/dest/schemas/types.js +1 -2
- package/dest/schemas/utils.js +18 -31
- package/dest/serialize/buffer_reader.js +164 -188
- package/dest/serialize/field_reader.js +70 -79
- package/dest/serialize/free_funcs.js +40 -37
- package/dest/serialize/index.js +0 -1
- package/dest/serialize/serialize.js +72 -83
- package/dest/serialize/type_registry.js +10 -14
- package/dest/serialize/types.js +4 -5
- package/dest/sleep/index.js +25 -29
- package/dest/string/index.js +0 -1
- package/dest/testing/files/index.js +5 -8
- package/dest/testing/index.js +0 -1
- package/dest/testing/port_allocator.js +7 -10
- package/dest/testing/snapshot_serializer.js +14 -9
- package/dest/testing/test_data.js +7 -8
- package/dest/timer/date.js +9 -7
- package/dest/timer/elapsed.js +10 -7
- package/dest/timer/index.js +0 -1
- package/dest/timer/timeout.js +34 -34
- package/dest/timer/timer.js +17 -21
- package/dest/transport/browser/index.js +0 -1
- package/dest/transport/browser/message_port_socket.js +26 -30
- package/dest/transport/browser/shared_worker_connector.js +8 -10
- package/dest/transport/browser/shared_worker_listener.js +13 -17
- package/dest/transport/browser/worker_connector.js +12 -12
- package/dest/transport/browser/worker_listener.js +13 -17
- package/dest/transport/dispatch/create_dispatch_fn.js +2 -4
- package/dest/transport/dispatch/create_dispatch_proxy.js +16 -13
- package/dest/transport/dispatch/messages.js +4 -3
- package/dest/transport/index.js +0 -1
- package/dest/transport/interface/connector.js +3 -2
- package/dest/transport/interface/listener.js +4 -2
- package/dest/transport/interface/socket.js +7 -2
- package/dest/transport/interface/transferable.js +7 -9
- package/dest/transport/node/index.js +0 -1
- package/dest/transport/node/node_connector.js +9 -11
- package/dest/transport/node/node_connector_socket.js +21 -25
- package/dest/transport/node/node_listener.js +11 -15
- package/dest/transport/node/node_listener_socket.js +23 -27
- package/dest/transport/transport_client.js +47 -46
- package/dest/transport/transport_server.js +68 -55
- package/dest/trees/index.js +0 -1
- package/dest/trees/unbalanced_merkle_tree.js +26 -16
- package/dest/trees/unbalanced_tree_store.js +43 -29
- package/dest/types/index.js +1 -3
- package/dest/url/index.js +4 -8
- package/dest/validation/index.js +2 -5
- package/dest/wasm/empty_wasi_sdk.js +142 -160
- package/dest/wasm/index.js +0 -1
- package/dest/wasm/wasm_module.js +80 -90
- package/dest/worker/browser/index.js +0 -1
- package/dest/worker/browser/start_web_module.js +9 -5
- package/dest/worker/browser/web_data_store.js +12 -15
- package/dest/worker/browser/web_worker.js +6 -5
- package/dest/worker/data_store.js +3 -2
- package/dest/worker/index.js +0 -1
- package/dest/worker/node/index.js +0 -1
- package/dest/worker/node/node_data_store.js +4 -5
- package/dest/worker/node/node_worker.js +6 -5
- package/dest/worker/node/start_node_module.js +9 -5
- package/dest/worker/wasm_worker.js +3 -2
- package/dest/worker/worker_pool.js +32 -43
- package/package.json +3 -4
- package/src/abi/encoder.ts +1 -1
- package/src/abi/u128.ts +1 -1
- package/src/fields/fields.ts +2 -2
- package/src/index.ts +0 -1
- package/src/queue/serial_queue.ts +1 -1
- package/src/testing/files/index.ts +2 -1
- package/src/wasm/index.ts +1 -1
- package/src/worker/index.ts +1 -1
- package/dest/abi/abi.d.ts +0 -853
- package/dest/abi/abi.d.ts.map +0 -1
- package/dest/abi/buffer.d.ts +0 -18
- package/dest/abi/buffer.d.ts.map +0 -1
- package/dest/abi/decoder.d.ts +0 -58
- package/dest/abi/decoder.d.ts.map +0 -1
- package/dest/abi/encoder.d.ts +0 -16
- package/dest/abi/encoder.d.ts.map +0 -1
- package/dest/abi/event_selector.d.ts +0 -52
- package/dest/abi/event_selector.d.ts.map +0 -1
- package/dest/abi/function_selector.d.ts +0 -65
- package/dest/abi/function_selector.d.ts.map +0 -1
- package/dest/abi/index.d.ts +0 -10
- package/dest/abi/index.d.ts.map +0 -1
- package/dest/abi/note_selector.d.ts +0 -42
- package/dest/abi/note_selector.d.ts.map +0 -1
- package/dest/abi/selector.d.ts +0 -42
- package/dest/abi/selector.d.ts.map +0 -1
- package/dest/abi/u128.d.ts +0 -13
- package/dest/abi/u128.d.ts.map +0 -1
- package/dest/abi/utils.d.ts +0 -44
- package/dest/abi/utils.d.ts.map +0 -1
- package/dest/array/array.d.ts +0 -71
- package/dest/array/array.d.ts.map +0 -1
- package/dest/array/index.d.ts +0 -2
- package/dest/array/index.d.ts.map +0 -1
- package/dest/async-map/index.d.ts +0 -13
- package/dest/async-map/index.d.ts.map +0 -1
- package/dest/async-pool/index.d.ts +0 -3
- package/dest/async-pool/index.d.ts.map +0 -1
- package/dest/aztec-address/index.d.ts +0 -57
- package/dest/aztec-address/index.d.ts.map +0 -1
- package/dest/bigint-buffer/index.d.ts +0 -42
- package/dest/bigint-buffer/index.d.ts.map +0 -1
- package/dest/blob/blob.d.ts +0 -150
- package/dest/blob/blob.d.ts.map +0 -1
- package/dest/blob/blob.js +0 -249
- package/dest/blob/encoding.d.ts +0 -53
- package/dest/blob/encoding.d.ts.map +0 -1
- package/dest/blob/encoding.js +0 -87
- package/dest/blob/index.d.ts +0 -5
- package/dest/blob/index.d.ts.map +0 -1
- package/dest/blob/index.js +0 -21
- package/dest/blob/interface.d.ts +0 -10
- package/dest/blob/interface.d.ts.map +0 -1
- package/dest/blob/interface.js +0 -2
- package/dest/blob/mocks.d.ts +0 -5
- package/dest/blob/mocks.d.ts.map +0 -1
- package/dest/blob/mocks.js +0 -25
- package/dest/buffer/buffer32.d.ts +0 -91
- package/dest/buffer/buffer32.d.ts.map +0 -1
- package/dest/buffer/index.d.ts +0 -2
- package/dest/buffer/index.d.ts.map +0 -1
- package/dest/collection/array.d.ts +0 -101
- package/dest/collection/array.d.ts.map +0 -1
- package/dest/collection/index.d.ts +0 -3
- package/dest/collection/index.d.ts.map +0 -1
- package/dest/collection/object.d.ts +0 -14
- package/dest/collection/object.d.ts.map +0 -1
- package/dest/committable/committable.d.ts +0 -28
- package/dest/committable/committable.d.ts.map +0 -1
- package/dest/committable/index.d.ts +0 -2
- package/dest/committable/index.d.ts.map +0 -1
- package/dest/config/env_var.d.ts +0 -2
- package/dest/config/env_var.d.ts.map +0 -1
- package/dest/config/index.d.ts +0 -66
- package/dest/config/index.d.ts.map +0 -1
- package/dest/crypto/index.d.ts +0 -9
- package/dest/crypto/index.d.ts.map +0 -1
- package/dest/crypto/keccak/index.d.ts +0 -28
- package/dest/crypto/keccak/index.d.ts.map +0 -1
- package/dest/crypto/keys/index.d.ts +0 -5
- package/dest/crypto/keys/index.d.ts.map +0 -1
- package/dest/crypto/pedersen/index.d.ts +0 -2
- package/dest/crypto/pedersen/index.d.ts.map +0 -1
- package/dest/crypto/pedersen/pedersen.elliptic.d.ts +0 -13
- package/dest/crypto/pedersen/pedersen.elliptic.d.ts.map +0 -1
- package/dest/crypto/pedersen/pedersen.noble.d.ts +0 -11
- package/dest/crypto/pedersen/pedersen.noble.d.ts.map +0 -1
- package/dest/crypto/pedersen/pedersen.wasm.d.ts +0 -21
- package/dest/crypto/pedersen/pedersen.wasm.d.ts.map +0 -1
- package/dest/crypto/poseidon/index.d.ts +0 -26
- package/dest/crypto/poseidon/index.d.ts.map +0 -1
- package/dest/crypto/random/index.d.ts +0 -25
- package/dest/crypto/random/index.d.ts.map +0 -1
- package/dest/crypto/random/randomness_singleton.d.ts +0 -25
- package/dest/crypto/random/randomness_singleton.d.ts.map +0 -1
- package/dest/crypto/secp256k1-signer/index.d.ts +0 -3
- package/dest/crypto/secp256k1-signer/index.d.ts.map +0 -1
- package/dest/crypto/secp256k1-signer/secp256k1_signer.d.ts +0 -24
- package/dest/crypto/secp256k1-signer/secp256k1_signer.d.ts.map +0 -1
- package/dest/crypto/secp256k1-signer/utils.d.ts +0 -40
- package/dest/crypto/secp256k1-signer/utils.d.ts.map +0 -1
- package/dest/crypto/sha256/index.d.ts +0 -20
- package/dest/crypto/sha256/index.d.ts.map +0 -1
- package/dest/crypto/sha512/index.d.ts +0 -11
- package/dest/crypto/sha512/index.d.ts.map +0 -1
- package/dest/crypto/sync/index.d.ts +0 -3
- package/dest/crypto/sync/index.d.ts.map +0 -1
- package/dest/crypto/sync/pedersen/index.d.ts +0 -21
- package/dest/crypto/sync/pedersen/index.d.ts.map +0 -1
- package/dest/crypto/sync/poseidon/index.d.ts +0 -26
- package/dest/crypto/sync/poseidon/index.d.ts.map +0 -1
- package/dest/decorators/index.d.ts +0 -2
- package/dest/decorators/index.d.ts.map +0 -1
- package/dest/decorators/memoize.d.ts +0 -2
- package/dest/decorators/memoize.d.ts.map +0 -1
- package/dest/error/index.d.ts +0 -21
- package/dest/error/index.d.ts.map +0 -1
- package/dest/eth-address/index.d.ts +0 -134
- package/dest/eth-address/index.d.ts.map +0 -1
- package/dest/eth-signature/eth_signature.d.ts +0 -62
- package/dest/eth-signature/eth_signature.d.ts.map +0 -1
- package/dest/eth-signature/index.d.ts +0 -2
- package/dest/eth-signature/index.d.ts.map +0 -1
- package/dest/fields/coordinate.d.ts +0 -68
- package/dest/fields/coordinate.d.ts.map +0 -1
- package/dest/fields/fields.d.ts +0 -176
- package/dest/fields/fields.d.ts.map +0 -1
- package/dest/fields/index.d.ts +0 -4
- package/dest/fields/index.d.ts.map +0 -1
- package/dest/fields/point.d.ts +0 -175
- package/dest/fields/point.d.ts.map +0 -1
- package/dest/fs/index.d.ts +0 -2
- package/dest/fs/index.d.ts.map +0 -1
- package/dest/fs/run_in_dir.d.ts +0 -2
- package/dest/fs/run_in_dir.d.ts.map +0 -1
- package/dest/index.d.ts +0 -34
- package/dest/index.d.ts.map +0 -1
- package/dest/iterable/all.d.ts +0 -9
- package/dest/iterable/all.d.ts.map +0 -1
- package/dest/iterable/filter.d.ts +0 -10
- package/dest/iterable/filter.d.ts.map +0 -1
- package/dest/iterable/index.d.ts +0 -8
- package/dest/iterable/index.d.ts.map +0 -1
- package/dest/iterable/isAsyncIt.d.ts +0 -7
- package/dest/iterable/isAsyncIt.d.ts.map +0 -1
- package/dest/iterable/map.d.ts +0 -12
- package/dest/iterable/map.d.ts.map +0 -1
- package/dest/iterable/peek.d.ts +0 -19
- package/dest/iterable/peek.d.ts.map +0 -1
- package/dest/iterable/sort.d.ts +0 -14
- package/dest/iterable/sort.d.ts.map +0 -1
- package/dest/iterable/take.d.ts +0 -10
- package/dest/iterable/take.d.ts.map +0 -1
- package/dest/iterable/toArray.d.ts +0 -2
- package/dest/iterable/toArray.d.ts.map +0 -1
- package/dest/json-rpc/client/fetch.d.ts +0 -21
- package/dest/json-rpc/client/fetch.d.ts.map +0 -1
- package/dest/json-rpc/client/index.d.ts +0 -3
- package/dest/json-rpc/client/index.d.ts.map +0 -1
- package/dest/json-rpc/client/safe_json_rpc_client.d.ts +0 -13
- package/dest/json-rpc/client/safe_json_rpc_client.d.ts.map +0 -1
- package/dest/json-rpc/convert.d.ts +0 -20
- package/dest/json-rpc/convert.d.ts.map +0 -1
- package/dest/json-rpc/fixtures/class_a.d.ts +0 -11
- package/dest/json-rpc/fixtures/class_a.d.ts.map +0 -1
- package/dest/json-rpc/fixtures/class_b.d.ts +0 -11
- package/dest/json-rpc/fixtures/class_b.d.ts.map +0 -1
- package/dest/json-rpc/fixtures/test_state.d.ts +0 -89
- package/dest/json-rpc/fixtures/test_state.d.ts.map +0 -1
- package/dest/json-rpc/index.d.ts +0 -2
- package/dest/json-rpc/index.d.ts.map +0 -1
- package/dest/json-rpc/js_utils.d.ts +0 -13
- package/dest/json-rpc/js_utils.d.ts.map +0 -1
- package/dest/json-rpc/server/index.d.ts +0 -2
- package/dest/json-rpc/server/index.d.ts.map +0 -1
- package/dest/json-rpc/server/safe_json_rpc_server.d.ts +0 -140
- package/dest/json-rpc/server/safe_json_rpc_server.d.ts.map +0 -1
- package/dest/json-rpc/server/telemetry.d.ts +0 -2
- package/dest/json-rpc/server/telemetry.d.ts.map +0 -1
- package/dest/json-rpc/test/index.d.ts +0 -2
- package/dest/json-rpc/test/index.d.ts.map +0 -1
- package/dest/json-rpc/test/integration.d.ts +0 -13
- package/dest/json-rpc/test/integration.d.ts.map +0 -1
- package/dest/log/console.d.ts +0 -11
- package/dest/log/console.d.ts.map +0 -1
- package/dest/log/debug.d.ts +0 -56
- package/dest/log/debug.d.ts.map +0 -1
- package/dest/log/gcloud-logger-config.d.ts +0 -14
- package/dest/log/gcloud-logger-config.d.ts.map +0 -1
- package/dest/log/index.d.ts +0 -6
- package/dest/log/index.d.ts.map +0 -1
- package/dest/log/log-filters.d.ts +0 -7
- package/dest/log/log-filters.d.ts.map +0 -1
- package/dest/log/log-levels.d.ts +0 -3
- package/dest/log/log-levels.d.ts.map +0 -1
- package/dest/log/log_fn.d.ts +0 -7
- package/dest/log/log_fn.d.ts.map +0 -1
- package/dest/log/log_history.d.ts +0 -31
- package/dest/log/log_history.d.ts.map +0 -1
- package/dest/log/pino-logger.d.ts +0 -53
- package/dest/log/pino-logger.d.ts.map +0 -1
- package/dest/message/index.d.ts +0 -32
- package/dest/message/index.d.ts.map +0 -1
- package/dest/mutex/index.d.ts +0 -53
- package/dest/mutex/index.d.ts.map +0 -1
- package/dest/mutex/mutex_database.d.ts +0 -10
- package/dest/mutex/mutex_database.d.ts.map +0 -1
- package/dest/noir/index.d.ts +0 -2
- package/dest/noir/index.d.ts.map +0 -1
- package/dest/noir/noir_package_config.d.ts +0 -129
- package/dest/noir/noir_package_config.d.ts.map +0 -1
- package/dest/promise/index.d.ts +0 -3
- package/dest/promise/index.d.ts.map +0 -1
- package/dest/promise/running-promise.d.ts +0 -41
- package/dest/promise/running-promise.d.ts.map +0 -1
- package/dest/promise/utils.d.ts +0 -12
- package/dest/promise/utils.d.ts.map +0 -1
- package/dest/queue/base_memory_queue.d.ts +0 -65
- package/dest/queue/base_memory_queue.d.ts.map +0 -1
- package/dest/queue/bounded_serial_queue.d.ts +0 -56
- package/dest/queue/bounded_serial_queue.d.ts.map +0 -1
- package/dest/queue/fifo_memory_queue.d.ts +0 -21
- package/dest/queue/fifo_memory_queue.d.ts.map +0 -1
- package/dest/queue/index.d.ts +0 -6
- package/dest/queue/index.d.ts.map +0 -1
- package/dest/queue/priority_memory_queue.d.ts +0 -13
- package/dest/queue/priority_memory_queue.d.ts.map +0 -1
- package/dest/queue/priority_queue.d.ts +0 -14
- package/dest/queue/priority_queue.d.ts.map +0 -1
- package/dest/queue/semaphore.d.ts +0 -23
- package/dest/queue/semaphore.d.ts.map +0 -1
- package/dest/queue/serial_queue.d.ts +0 -49
- package/dest/queue/serial_queue.d.ts.map +0 -1
- package/dest/retry/index.d.ts +0 -44
- package/dest/retry/index.d.ts.map +0 -1
- package/dest/running-promise/index.d.ts +0 -2
- package/dest/running-promise/index.d.ts.map +0 -1
- package/dest/schemas/api.d.ts +0 -21
- package/dest/schemas/api.d.ts.map +0 -1
- package/dest/schemas/index.d.ts +0 -6
- package/dest/schemas/index.d.ts.map +0 -1
- package/dest/schemas/parse.d.ts +0 -9
- package/dest/schemas/parse.d.ts.map +0 -1
- package/dest/schemas/schemas.d.ts +0 -60
- package/dest/schemas/schemas.d.ts.map +0 -1
- package/dest/schemas/types.d.ts +0 -3
- package/dest/schemas/types.d.ts.map +0 -1
- package/dest/schemas/utils.d.ts +0 -53
- package/dest/schemas/utils.d.ts.map +0 -1
- package/dest/serialize/buffer_reader.d.ts +0 -239
- package/dest/serialize/buffer_reader.d.ts.map +0 -1
- package/dest/serialize/field_reader.d.ts +0 -112
- package/dest/serialize/field_reader.d.ts.map +0 -1
- package/dest/serialize/free_funcs.d.ts +0 -105
- package/dest/serialize/free_funcs.d.ts.map +0 -1
- package/dest/serialize/index.d.ts +0 -7
- package/dest/serialize/index.d.ts.map +0 -1
- package/dest/serialize/serialize.d.ts +0 -182
- package/dest/serialize/serialize.d.ts.map +0 -1
- package/dest/serialize/type_registry.d.ts +0 -23
- package/dest/serialize/type_registry.d.ts.map +0 -1
- package/dest/serialize/types.d.ts +0 -33
- package/dest/serialize/types.d.ts.map +0 -1
- package/dest/sleep/index.d.ts +0 -51
- package/dest/sleep/index.d.ts.map +0 -1
- package/dest/string/index.d.ts +0 -11
- package/dest/string/index.d.ts.map +0 -1
- package/dest/testing/files/index.d.ts +0 -19
- package/dest/testing/files/index.d.ts.map +0 -1
- package/dest/testing/index.d.ts +0 -4
- package/dest/testing/index.d.ts.map +0 -1
- package/dest/testing/port_allocator.d.ts +0 -10
- package/dest/testing/port_allocator.d.ts.map +0 -1
- package/dest/testing/snapshot_serializer.d.ts +0 -5
- package/dest/testing/snapshot_serializer.d.ts.map +0 -1
- package/dest/testing/test_data.d.ts +0 -7
- package/dest/testing/test_data.d.ts.map +0 -1
- package/dest/timer/date.d.ts +0 -13
- package/dest/timer/date.d.ts.map +0 -1
- package/dest/timer/elapsed.d.ts +0 -13
- package/dest/timer/elapsed.d.ts.map +0 -1
- package/dest/timer/index.d.ts +0 -5
- package/dest/timer/index.d.ts.map +0 -1
- package/dest/timer/timeout.d.ts +0 -41
- package/dest/timer/timeout.d.ts.map +0 -1
- package/dest/timer/timer.d.ts +0 -37
- package/dest/timer/timer.d.ts.map +0 -1
- package/dest/transport/browser/index.d.ts +0 -5
- package/dest/transport/browser/index.d.ts.map +0 -1
- package/dest/transport/browser/message_port_socket.d.ts +0 -37
- package/dest/transport/browser/message_port_socket.d.ts.map +0 -1
- package/dest/transport/browser/shared_worker_connector.d.ts +0 -19
- package/dest/transport/browser/shared_worker_connector.d.ts.map +0 -1
- package/dest/transport/browser/shared_worker_listener.d.ts +0 -38
- package/dest/transport/browser/shared_worker_listener.d.ts.map +0 -1
- package/dest/transport/browser/worker_connector.d.ts +0 -26
- package/dest/transport/browser/worker_connector.d.ts.map +0 -1
- package/dest/transport/browser/worker_listener.d.ts +0 -39
- package/dest/transport/browser/worker_listener.d.ts.map +0 -1
- package/dest/transport/dispatch/create_dispatch_fn.d.ts +0 -25
- package/dest/transport/dispatch/create_dispatch_fn.d.ts.map +0 -1
- package/dest/transport/dispatch/create_dispatch_proxy.d.ts +0 -102
- package/dest/transport/dispatch/create_dispatch_proxy.d.ts.map +0 -1
- package/dest/transport/dispatch/messages.d.ts +0 -52
- package/dest/transport/dispatch/messages.d.ts.map +0 -1
- package/dest/transport/index.d.ts +0 -12
- package/dest/transport/index.d.ts.map +0 -1
- package/dest/transport/interface/connector.d.ts +0 -8
- package/dest/transport/interface/connector.d.ts.map +0 -1
- package/dest/transport/interface/listener.d.ts +0 -13
- package/dest/transport/interface/listener.d.ts.map +0 -1
- package/dest/transport/interface/socket.d.ts +0 -13
- package/dest/transport/interface/socket.d.ts.map +0 -1
- package/dest/transport/interface/transferable.d.ts +0 -68
- package/dest/transport/interface/transferable.d.ts.map +0 -1
- package/dest/transport/node/index.d.ts +0 -3
- package/dest/transport/node/index.d.ts.map +0 -1
- package/dest/transport/node/node_connector.d.ts +0 -28
- package/dest/transport/node/node_connector.d.ts.map +0 -1
- package/dest/transport/node/node_connector_socket.d.ts +0 -42
- package/dest/transport/node/node_connector_socket.d.ts.map +0 -1
- package/dest/transport/node/node_listener.d.ts +0 -26
- package/dest/transport/node/node_listener.d.ts.map +0 -1
- package/dest/transport/node/node_listener_socket.d.ts +0 -37
- package/dest/transport/node/node_listener_socket.d.ts.map +0 -1
- package/dest/transport/transport_client.d.ts +0 -61
- package/dest/transport/transport_client.d.ts.map +0 -1
- package/dest/transport/transport_server.d.ts +0 -56
- package/dest/transport/transport_server.d.ts.map +0 -1
- package/dest/trees/index.d.ts +0 -59
- package/dest/trees/index.d.ts.map +0 -1
- package/dest/trees/unbalanced_merkle_tree.d.ts +0 -17
- package/dest/trees/unbalanced_merkle_tree.d.ts.map +0 -1
- package/dest/trees/unbalanced_tree_store.d.ts +0 -19
- package/dest/trees/unbalanced_tree_store.d.ts.map +0 -1
- package/dest/types/index.d.ts +0 -19
- package/dest/types/index.d.ts.map +0 -1
- package/dest/url/index.d.ts +0 -9
- package/dest/url/index.d.ts.map +0 -1
- package/dest/validation/index.d.ts +0 -9
- package/dest/validation/index.d.ts.map +0 -1
- package/dest/wasm/empty_wasi_sdk.d.ts +0 -130
- package/dest/wasm/empty_wasi_sdk.d.ts.map +0 -1
- package/dest/wasm/index.d.ts +0 -2
- package/dest/wasm/index.d.ts.map +0 -1
- package/dest/wasm/wasm_module.d.ts +0 -136
- package/dest/wasm/wasm_module.d.ts.map +0 -1
- package/dest/worker/browser/index.d.ts +0 -3
- package/dest/worker/browser/index.d.ts.map +0 -1
- package/dest/worker/browser/start_web_module.d.ts +0 -7
- package/dest/worker/browser/start_web_module.d.ts.map +0 -1
- package/dest/worker/browser/web_data_store.d.ts +0 -24
- package/dest/worker/browser/web_data_store.d.ts.map +0 -1
- package/dest/worker/browser/web_worker.d.ts +0 -10
- package/dest/worker/browser/web_worker.d.ts.map +0 -1
- package/dest/worker/data_store.d.ts +0 -21
- package/dest/worker/data_store.d.ts.map +0 -1
- package/dest/worker/index.d.ts +0 -3
- package/dest/worker/index.d.ts.map +0 -1
- package/dest/worker/node/index.d.ts +0 -3
- package/dest/worker/node/index.d.ts.map +0 -1
- package/dest/worker/node/node_data_store.d.ts +0 -13
- package/dest/worker/node/node_data_store.d.ts.map +0 -1
- package/dest/worker/node/node_worker.d.ts +0 -6
- package/dest/worker/node/node_worker.d.ts.map +0 -1
- package/dest/worker/node/start_node_module.d.ts +0 -7
- package/dest/worker/node/start_node_module.d.ts.map +0 -1
- package/dest/worker/wasm_worker.d.ts +0 -9
- package/dest/worker/wasm_worker.d.ts.map +0 -1
- package/dest/worker/worker_pool.d.ts +0 -40
- package/dest/worker/worker_pool.d.ts.map +0 -1
- package/src/blob/blob.ts +0 -294
- package/src/blob/encoding.ts +0 -98
- package/src/blob/index.ts +0 -21
- package/src/blob/interface.ts +0 -11
- package/src/blob/mocks.ts +0 -30
package/dest/abi/abi.js
CHANGED
|
@@ -1,167 +1,243 @@
|
|
|
1
|
-
/* eslint-disable camelcase */
|
|
2
|
-
import { inflate } from 'pako';
|
|
1
|
+
/* eslint-disable camelcase */ import { inflate } from 'pako';
|
|
3
2
|
import { z } from 'zod';
|
|
4
3
|
import { createLogger } from '../log/index.js';
|
|
5
4
|
import { schemas } from '../schemas/schemas.js';
|
|
6
5
|
import { FunctionSelector } from './function_selector.js';
|
|
7
6
|
const logger = createLogger('aztec:foundation:abi');
|
|
8
7
|
export const AbiValueSchema = z.discriminatedUnion('kind', [
|
|
9
|
-
z.object({ kind: z.literal('boolean'), value: z.boolean() }),
|
|
10
|
-
z.object({ kind: z.literal('string'), value: z.string() }),
|
|
11
|
-
z.object({ kind: z.literal('array'), value: z.array(z.lazy(() => AbiValueSchema)) }),
|
|
12
|
-
z.object({ kind: z.literal('tuple'), fields: z.array(z.lazy(() => AbiValueSchema)) }),
|
|
13
|
-
z.object({ kind: z.literal('integer'), value: z.string(), sign: z.boolean() }),
|
|
14
8
|
z.object({
|
|
15
|
-
kind: z.literal('
|
|
16
|
-
|
|
9
|
+
kind: z.literal('boolean'),
|
|
10
|
+
value: z.boolean()
|
|
11
|
+
}),
|
|
12
|
+
z.object({
|
|
13
|
+
kind: z.literal('string'),
|
|
14
|
+
value: z.string()
|
|
15
|
+
}),
|
|
16
|
+
z.object({
|
|
17
|
+
kind: z.literal('array'),
|
|
18
|
+
value: z.array(z.lazy(()=>AbiValueSchema))
|
|
17
19
|
}),
|
|
20
|
+
z.object({
|
|
21
|
+
kind: z.literal('tuple'),
|
|
22
|
+
fields: z.array(z.lazy(()=>AbiValueSchema))
|
|
23
|
+
}),
|
|
24
|
+
z.object({
|
|
25
|
+
kind: z.literal('integer'),
|
|
26
|
+
value: z.string(),
|
|
27
|
+
sign: z.boolean()
|
|
28
|
+
}),
|
|
29
|
+
z.object({
|
|
30
|
+
kind: z.literal('struct'),
|
|
31
|
+
fields: z.array(z.object({
|
|
32
|
+
name: z.string(),
|
|
33
|
+
value: z.lazy(()=>AbiValueSchema)
|
|
34
|
+
}))
|
|
35
|
+
})
|
|
18
36
|
]);
|
|
19
|
-
/** Indicates whether a parameter is public or secret/private. */
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
37
|
+
/** Indicates whether a parameter is public or secret/private. */ export const ABIParameterVisibility = [
|
|
38
|
+
'public',
|
|
39
|
+
'private',
|
|
40
|
+
'databus'
|
|
41
|
+
];
|
|
42
|
+
/** Sign for numeric types. */ const Sign = [
|
|
43
|
+
'unsigned',
|
|
44
|
+
'signed'
|
|
45
|
+
];
|
|
23
46
|
export const AbiTypeSchema = z.discriminatedUnion('kind', [
|
|
24
|
-
z.object({
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
z.object({
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
z.object({
|
|
47
|
+
z.object({
|
|
48
|
+
kind: z.literal('field')
|
|
49
|
+
}),
|
|
50
|
+
z.object({
|
|
51
|
+
kind: z.literal('boolean')
|
|
52
|
+
}),
|
|
53
|
+
z.object({
|
|
54
|
+
kind: z.literal('integer'),
|
|
55
|
+
sign: z.enum(Sign),
|
|
56
|
+
width: z.number()
|
|
57
|
+
}),
|
|
58
|
+
z.object({
|
|
59
|
+
kind: z.literal('array'),
|
|
60
|
+
length: z.number(),
|
|
61
|
+
type: z.lazy(()=>AbiTypeSchema)
|
|
62
|
+
}),
|
|
63
|
+
z.object({
|
|
64
|
+
kind: z.literal('string'),
|
|
65
|
+
length: z.number()
|
|
66
|
+
}),
|
|
67
|
+
z.object({
|
|
68
|
+
kind: z.literal('struct'),
|
|
69
|
+
fields: z.array(z.lazy(()=>ABIVariableSchema)),
|
|
70
|
+
path: z.string()
|
|
71
|
+
}),
|
|
72
|
+
z.object({
|
|
73
|
+
kind: z.literal('tuple'),
|
|
74
|
+
fields: z.array(z.lazy(()=>AbiTypeSchema))
|
|
75
|
+
})
|
|
31
76
|
]);
|
|
32
|
-
/** A named type. */
|
|
33
|
-
|
|
34
|
-
/** The
|
|
35
|
-
name: z.string(),
|
|
36
|
-
/** The type of the variable. */
|
|
37
|
-
type: AbiTypeSchema,
|
|
77
|
+
/** A named type. */ export const ABIVariableSchema = z.object({
|
|
78
|
+
/** The name of the variable. */ name: z.string(),
|
|
79
|
+
/** The type of the variable. */ type: AbiTypeSchema
|
|
38
80
|
});
|
|
39
|
-
/** A function parameter. */
|
|
40
|
-
|
|
41
|
-
/** Visibility of the parameter in the function. */
|
|
42
|
-
visibility: z.enum(ABIParameterVisibility),
|
|
81
|
+
/** A function parameter. */ export const ABIParameterSchema = ABIVariableSchema.and(z.object({
|
|
82
|
+
/** Visibility of the parameter in the function. */ visibility: z.enum(ABIParameterVisibility)
|
|
43
83
|
}));
|
|
44
84
|
const AbiErrorTypeSchema = z.union([
|
|
45
|
-
z.object({
|
|
46
|
-
|
|
47
|
-
|
|
85
|
+
z.object({
|
|
86
|
+
error_kind: z.literal('string'),
|
|
87
|
+
string: z.string()
|
|
88
|
+
}),
|
|
89
|
+
z.object({
|
|
90
|
+
error_kind: z.literal('fmtstring'),
|
|
91
|
+
length: z.number(),
|
|
92
|
+
item_types: z.array(AbiTypeSchema)
|
|
93
|
+
}),
|
|
94
|
+
z.object({
|
|
95
|
+
error_kind: z.literal('custom')
|
|
96
|
+
}).and(AbiTypeSchema)
|
|
48
97
|
]);
|
|
49
|
-
/** Aztec.nr function types. */
|
|
50
|
-
export var FunctionType;
|
|
51
|
-
(function (FunctionType) {
|
|
98
|
+
/** Aztec.nr function types. */ export var FunctionType = /*#__PURE__*/ function(FunctionType) {
|
|
52
99
|
FunctionType["PRIVATE"] = "private";
|
|
53
100
|
FunctionType["PUBLIC"] = "public";
|
|
54
101
|
FunctionType["UNCONSTRAINED"] = "unconstrained";
|
|
55
|
-
|
|
102
|
+
return FunctionType;
|
|
103
|
+
}({});
|
|
56
104
|
export const FunctionAbiSchema = z.object({
|
|
57
105
|
name: z.string(),
|
|
58
106
|
functionType: z.nativeEnum(FunctionType),
|
|
59
107
|
isInternal: z.boolean(),
|
|
60
108
|
isStatic: z.boolean(),
|
|
61
109
|
isInitializer: z.boolean(),
|
|
62
|
-
parameters: z.array(z.object({
|
|
110
|
+
parameters: z.array(z.object({
|
|
111
|
+
name: z.string(),
|
|
112
|
+
type: AbiTypeSchema,
|
|
113
|
+
visibility: z.enum(ABIParameterVisibility)
|
|
114
|
+
})),
|
|
63
115
|
returnTypes: z.array(AbiTypeSchema),
|
|
64
|
-
errorTypes: z.record(AbiErrorTypeSchema)
|
|
116
|
+
errorTypes: z.record(AbiErrorTypeSchema)
|
|
65
117
|
});
|
|
66
118
|
export const FunctionDebugMetadataSchema = z.object({
|
|
67
119
|
debugSymbols: z.object({
|
|
68
|
-
locations: z.record(z.array(z.object({
|
|
69
|
-
|
|
120
|
+
locations: z.record(z.array(z.object({
|
|
121
|
+
span: z.object({
|
|
122
|
+
start: z.number(),
|
|
123
|
+
end: z.number()
|
|
124
|
+
}),
|
|
125
|
+
file: z.number()
|
|
126
|
+
}))),
|
|
127
|
+
brillig_locations: z.record(z.record(z.array(z.object({
|
|
128
|
+
span: z.object({
|
|
129
|
+
start: z.number(),
|
|
130
|
+
end: z.number()
|
|
131
|
+
}),
|
|
132
|
+
file: z.number()
|
|
133
|
+
}))))
|
|
70
134
|
}),
|
|
71
|
-
files: z.record(z.object({
|
|
135
|
+
files: z.record(z.object({
|
|
136
|
+
source: z.string(),
|
|
137
|
+
path: z.string()
|
|
138
|
+
}))
|
|
72
139
|
});
|
|
73
140
|
export const FunctionArtifactSchema = FunctionAbiSchema.and(z.object({
|
|
74
141
|
bytecode: schemas.Buffer,
|
|
75
142
|
verificationKey: z.string().optional(),
|
|
76
143
|
debugSymbols: z.string(),
|
|
77
|
-
debug: FunctionDebugMetadataSchema.optional()
|
|
144
|
+
debug: FunctionDebugMetadataSchema.optional()
|
|
78
145
|
}));
|
|
79
146
|
export const NoteFieldSchema = z.object({
|
|
80
147
|
name: z.string(),
|
|
81
148
|
index: z.number(),
|
|
82
|
-
nullable: z.boolean()
|
|
149
|
+
nullable: z.boolean()
|
|
83
150
|
});
|
|
84
151
|
export const ContractNoteSchema = z.object({
|
|
85
152
|
id: schemas.NoteSelector,
|
|
86
153
|
typ: z.string(),
|
|
87
|
-
fields: z.array(NoteFieldSchema)
|
|
154
|
+
fields: z.array(NoteFieldSchema)
|
|
88
155
|
});
|
|
89
156
|
export const ContractArtifactSchema = z.object({
|
|
90
157
|
name: z.string(),
|
|
91
158
|
aztecNrVersion: z.string().optional(),
|
|
92
159
|
functions: z.array(FunctionArtifactSchema),
|
|
93
160
|
outputs: z.object({
|
|
94
|
-
structs: z.record(z.array(AbiTypeSchema)).transform(structs
|
|
95
|
-
for (const [key, value] of Object.entries(structs))
|
|
161
|
+
structs: z.record(z.array(AbiTypeSchema)).transform((structs)=>{
|
|
162
|
+
for (const [key, value] of Object.entries(structs)){
|
|
96
163
|
// We are manually ordering events and functions in the abi by path.
|
|
97
164
|
// The path ordering is arbitrary, and only needed to ensure deterministic order.
|
|
98
165
|
// These are the only arrays in the artifact with arbitrary order, and hence the only ones
|
|
99
166
|
// we need to sort.
|
|
100
167
|
if (key === 'events' || key === 'functions') {
|
|
101
|
-
structs[key] = value.sort((a, b)
|
|
168
|
+
structs[key] = value.sort((a, b)=>a.path > b.path ? -1 : 1);
|
|
102
169
|
}
|
|
103
170
|
}
|
|
104
171
|
return structs;
|
|
105
172
|
}),
|
|
106
|
-
globals: z.record(z.array(AbiValueSchema))
|
|
173
|
+
globals: z.record(z.array(AbiValueSchema))
|
|
107
174
|
}),
|
|
108
|
-
storageLayout: z.record(z.object({
|
|
175
|
+
storageLayout: z.record(z.object({
|
|
176
|
+
slot: schemas.Fr
|
|
177
|
+
})),
|
|
109
178
|
notes: z.record(ContractNoteSchema),
|
|
110
|
-
fileMap: z.record(z.coerce.number(), z.object({
|
|
179
|
+
fileMap: z.record(z.coerce.number(), z.object({
|
|
180
|
+
source: z.string(),
|
|
181
|
+
path: z.string()
|
|
182
|
+
}))
|
|
111
183
|
});
|
|
112
184
|
export function getFunctionArtifactByName(artifact, functionName) {
|
|
113
|
-
const functionArtifact = artifact.functions.find(f
|
|
185
|
+
const functionArtifact = artifact.functions.find((f)=>f.name === functionName);
|
|
114
186
|
if (!functionArtifact) {
|
|
115
187
|
throw new Error(`Unknown function ${functionName}`);
|
|
116
188
|
}
|
|
117
189
|
const debugMetadata = getFunctionDebugMetadata(artifact, functionArtifact);
|
|
118
|
-
return {
|
|
190
|
+
return {
|
|
191
|
+
...functionArtifact,
|
|
192
|
+
debug: debugMetadata
|
|
193
|
+
};
|
|
119
194
|
}
|
|
120
|
-
/** Gets a function artifact including debug metadata given its name or selector. */
|
|
121
|
-
export async function getFunctionArtifact(artifact, functionNameOrSelector) {
|
|
195
|
+
/** Gets a function artifact including debug metadata given its name or selector. */ export async function getFunctionArtifact(artifact, functionNameOrSelector) {
|
|
122
196
|
let functionArtifact;
|
|
123
197
|
if (typeof functionNameOrSelector === 'string') {
|
|
124
|
-
functionArtifact = artifact.functions.find(f
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
functionArtifact = functionsAndSelectors.find(fnAndSelector => functionNameOrSelector.equals(fnAndSelector.selector))?.fn;
|
|
198
|
+
functionArtifact = artifact.functions.find((f)=>f.name === functionNameOrSelector);
|
|
199
|
+
} else {
|
|
200
|
+
const functionsAndSelectors = await Promise.all(artifact.functions.map(async (fn)=>({
|
|
201
|
+
fn,
|
|
202
|
+
selector: await FunctionSelector.fromNameAndParameters(fn.name, fn.parameters)
|
|
203
|
+
})));
|
|
204
|
+
functionArtifact = functionsAndSelectors.find((fnAndSelector)=>functionNameOrSelector.equals(fnAndSelector.selector))?.fn;
|
|
132
205
|
}
|
|
133
206
|
if (!functionArtifact) {
|
|
134
207
|
throw new Error(`Unknown function ${functionNameOrSelector}`);
|
|
135
208
|
}
|
|
136
209
|
const debugMetadata = getFunctionDebugMetadata(artifact, functionArtifact);
|
|
137
|
-
return {
|
|
210
|
+
return {
|
|
211
|
+
...functionArtifact,
|
|
212
|
+
debug: debugMetadata
|
|
213
|
+
};
|
|
138
214
|
}
|
|
139
215
|
/**
|
|
140
216
|
* Gets the debug metadata of a given function from the contract artifact
|
|
141
217
|
* @param artifact - The contract build artifact
|
|
142
218
|
* @param functionName - The name of the function
|
|
143
219
|
* @returns The debug metadata of the function
|
|
144
|
-
*/
|
|
145
|
-
export function getFunctionDebugMetadata(contractArtifact, functionArtifact) {
|
|
220
|
+
*/ export function getFunctionDebugMetadata(contractArtifact, functionArtifact) {
|
|
146
221
|
try {
|
|
147
222
|
if (functionArtifact.debugSymbols && contractArtifact.fileMap) {
|
|
148
223
|
// TODO(https://github.com/AztecProtocol/aztec-packages/issues/10546) investigate why debugMetadata is so big for some tests.
|
|
149
|
-
const programDebugSymbols = JSON.parse(inflate(Buffer.from(functionArtifact.debugSymbols, 'base64'), {
|
|
224
|
+
const programDebugSymbols = JSON.parse(inflate(Buffer.from(functionArtifact.debugSymbols, 'base64'), {
|
|
225
|
+
to: 'string',
|
|
226
|
+
raw: true
|
|
227
|
+
}));
|
|
150
228
|
// TODO(https://github.com/AztecProtocol/aztec-packages/issues/5813)
|
|
151
229
|
// We only support handling debug info for the contract function entry point.
|
|
152
230
|
// So for now we simply index into the first debug info.
|
|
153
231
|
return {
|
|
154
232
|
debugSymbols: programDebugSymbols.debug_infos[0],
|
|
155
|
-
files: contractArtifact.fileMap
|
|
233
|
+
files: contractArtifact.fileMap
|
|
156
234
|
};
|
|
157
235
|
}
|
|
158
|
-
}
|
|
159
|
-
catch (err) {
|
|
236
|
+
} catch (err) {
|
|
160
237
|
if (err instanceof RangeError && err.message.includes('Invalid string length')) {
|
|
161
238
|
logger.warn(`Caught RangeError: Invalid string length. This suggests the debug_symbols field of the contract ${contractArtifact.name} and function ${functionArtifact.name} is huge; too big to parse. We'll skip returning this info until this issue is resolved. Here's the error:\n${err.message}`);
|
|
162
|
-
|
|
163
|
-
}
|
|
164
|
-
else {
|
|
239
|
+
// We'll return undefined.
|
|
240
|
+
} else {
|
|
165
241
|
// Rethrow unexpected errors
|
|
166
242
|
throw err;
|
|
167
243
|
}
|
|
@@ -174,41 +250,29 @@ export function getFunctionDebugMetadata(contractArtifact, functionArtifact) {
|
|
|
174
250
|
* initializer it finds, prioritizing initializers with no arguments and then private ones.
|
|
175
251
|
* @param contractArtifact - The contract artifact.
|
|
176
252
|
* @returns An initializer function, or none if there are no functions flagged as initializers in the contract.
|
|
177
|
-
*/
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
return initializers.length > 1
|
|
181
|
-
? initializers.find(f => f.name === 'constructor') ??
|
|
182
|
-
initializers.find(f => f.name === 'initializer') ??
|
|
183
|
-
initializers.find(f => f.parameters?.length === 0) ??
|
|
184
|
-
initializers.find(f => f.functionType === FunctionType.PRIVATE) ??
|
|
185
|
-
initializers[0]
|
|
186
|
-
: initializers[0];
|
|
253
|
+
*/ export function getDefaultInitializer(contractArtifact) {
|
|
254
|
+
const initializers = contractArtifact.functions.filter((f)=>f.isInitializer);
|
|
255
|
+
return initializers.length > 1 ? initializers.find((f)=>f.name === 'constructor') ?? initializers.find((f)=>f.name === 'initializer') ?? initializers.find((f)=>f.parameters?.length === 0) ?? initializers.find((f)=>f.functionType === "private") ?? initializers[0] : initializers[0];
|
|
187
256
|
}
|
|
188
257
|
/**
|
|
189
258
|
* Returns an initializer from the contract.
|
|
190
259
|
* @param initializerNameOrArtifact - The name of the constructor, or the artifact of the constructor, or undefined
|
|
191
260
|
* to pick the default initializer.
|
|
192
|
-
*/
|
|
193
|
-
export function getInitializer(contract, initializerNameOrArtifact) {
|
|
261
|
+
*/ export function getInitializer(contract, initializerNameOrArtifact) {
|
|
194
262
|
if (typeof initializerNameOrArtifact === 'string') {
|
|
195
|
-
const found = contract.functions.find(f
|
|
263
|
+
const found = contract.functions.find((f)=>f.name === initializerNameOrArtifact);
|
|
196
264
|
if (!found) {
|
|
197
265
|
throw new Error(`Constructor method ${initializerNameOrArtifact} not found in contract artifact`);
|
|
198
|
-
}
|
|
199
|
-
else if (!found.isInitializer) {
|
|
266
|
+
} else if (!found.isInitializer) {
|
|
200
267
|
throw new Error(`Method ${initializerNameOrArtifact} is not an initializer`);
|
|
201
268
|
}
|
|
202
269
|
return found;
|
|
203
|
-
}
|
|
204
|
-
else if (initializerNameOrArtifact === undefined) {
|
|
270
|
+
} else if (initializerNameOrArtifact === undefined) {
|
|
205
271
|
return getDefaultInitializer(contract);
|
|
206
|
-
}
|
|
207
|
-
else {
|
|
272
|
+
} else {
|
|
208
273
|
if (!initializerNameOrArtifact.isInitializer) {
|
|
209
274
|
throw new Error(`Method ${initializerNameOrArtifact.name} is not an initializer`);
|
|
210
275
|
}
|
|
211
276
|
return initializerNameOrArtifact;
|
|
212
277
|
}
|
|
213
278
|
}
|
|
214
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FiaS9hYmkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsOEJBQThCO0FBQzlCLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUd4QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRWhELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBVTFELE1BQU0sTUFBTSxHQUFHLFlBQVksQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO0FBV3BELE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBd0IsQ0FBQyxDQUFDLGtCQUFrQixDQUFDLE1BQU0sRUFBRTtJQUM5RSxDQUFDLENBQUMsTUFBTSxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDO0lBQzVELENBQUMsQ0FBQyxNQUFNLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUM7SUFDMUQsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsY0FBYyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQ3BGLENBQUMsQ0FBQyxNQUFNLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxP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
|
package/dest/abi/buffer.js
CHANGED
|
@@ -6,29 +6,29 @@ import { Fr } from '../fields/fields.js';
|
|
|
6
6
|
* @param input - Input to format.
|
|
7
7
|
* @param targetLength - Length of the target array in number of fields.
|
|
8
8
|
* @returns A field with the total length in bytes, followed by an array of fields such that their concatenation is equal to the input buffer, followed by enough zeroes to reach targetLength.
|
|
9
|
-
*/
|
|
10
|
-
export function bufferAsFields(input, targetLength) {
|
|
9
|
+
*/ export function bufferAsFields(input, targetLength) {
|
|
11
10
|
const encoded = [
|
|
12
11
|
new Fr(input.length),
|
|
13
|
-
...chunk(input, Fr.SIZE_IN_BYTES - 1).map(c
|
|
12
|
+
...chunk(input, Fr.SIZE_IN_BYTES - 1).map((c)=>{
|
|
14
13
|
const fieldBytes = Buffer.alloc(Fr.SIZE_IN_BYTES);
|
|
15
14
|
Buffer.from(c).copy(fieldBytes, 1);
|
|
16
15
|
return Fr.fromBuffer(fieldBytes);
|
|
17
|
-
})
|
|
16
|
+
})
|
|
18
17
|
];
|
|
19
18
|
if (encoded.length > targetLength) {
|
|
20
19
|
throw new Error(`Input buffer exceeds maximum size: got ${encoded.length} but max is ${targetLength}`);
|
|
21
20
|
}
|
|
22
21
|
// Fun fact: we cannot use padArrayEnd here since typescript cannot deal with a Tuple this big
|
|
23
|
-
return [
|
|
22
|
+
return [
|
|
23
|
+
...encoded,
|
|
24
|
+
...Array(targetLength - encoded.length).fill(Fr.ZERO)
|
|
25
|
+
];
|
|
24
26
|
}
|
|
25
27
|
/**
|
|
26
28
|
* Recovers a buffer from an array of fields.
|
|
27
29
|
* @param fields - An output from bufferAsFields.
|
|
28
30
|
* @returns The recovered buffer.
|
|
29
|
-
*/
|
|
30
|
-
export function bufferFromFields(fields) {
|
|
31
|
+
*/ export function bufferFromFields(fields) {
|
|
31
32
|
const [length, ...payload] = fields;
|
|
32
|
-
return Buffer.concat(payload.map(f
|
|
33
|
+
return Buffer.concat(payload.map((f)=>f.toBuffer().subarray(1))).subarray(0, length.toNumber());
|
|
33
34
|
}
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVmZmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FiaS9idWZmZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLE1BQU0sY0FBYyxDQUFDO0FBRWpDLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUV6Qzs7Ozs7O0dBTUc7QUFDSCxNQUFNLFVBQVUsY0FBYyxDQUFDLEtBQWEsRUFBRSxZQUFvQjtJQUNoRSxNQUFNLE9BQU8sR0FBRztRQUNkLElBQUksRUFBRSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUM7UUFDcEIsR0FBRyxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxhQUFhLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQzVDLE1BQU0sVUFBVSxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQ2xELE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUNuQyxPQUFPLEVBQUUsQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDbkMsQ0FBQyxDQUFDO0tBQ0gsQ0FBQztJQUNGLElBQUksT0FBTyxDQUFDLE1BQU0sR0FBRyxZQUFZLEVBQUUsQ0FBQztRQUNsQyxNQUFNLElBQUksS0FBSyxDQUFDLDBDQUEwQyxPQUFPLENBQUMsTUFBTSxlQUFlLFlBQVksRUFBRSxDQUFDLENBQUM7SUFDekcsQ0FBQztJQUNELDhGQUE4RjtJQUM5RixPQUFPLENBQUMsR0FBRyxPQUFPLEVBQUUsR0FBRyxLQUFLLENBQUMsWUFBWSxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7QUFDN0UsQ0FBQztBQUVEOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsZ0JBQWdCLENBQUMsTUFBWTtJQUMzQyxNQUFNLENBQUMsTUFBTSxFQUFFLEdBQUcsT0FBTyxDQUFDLEdBQUcsTUFBTSxDQUFDO0lBQ3BDLE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxNQUFNLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztBQUNsRyxDQUFDIn0=
|