@paimaexample/wallets 0.3.117
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/esm/chain-types/src/hash.d.ts +28 -0
- package/esm/chain-types/src/hash.d.ts.map +1 -0
- package/esm/chain-types/src/hash.js +29 -0
- package/esm/chain-types/src/mod.d.ts +3 -0
- package/esm/chain-types/src/mod.d.ts.map +1 -0
- package/esm/chain-types/src/mod.js +2 -0
- package/esm/chain-types/src/types.d.ts +70 -0
- package/esm/chain-types/src/types.d.ts.map +1 -0
- package/esm/chain-types/src/types.js +1 -0
- package/esm/concise/src/batcher.d.ts +40 -0
- package/esm/concise/src/batcher.d.ts.map +1 -0
- package/esm/concise/src/batcher.js +117 -0
- package/esm/concise/src/delegate.d.ts +18 -0
- package/esm/concise/src/delegate.d.ts.map +1 -0
- package/esm/concise/src/delegate.js +118 -0
- package/esm/concise/src/mod.d.ts +5 -0
- package/esm/concise/src/mod.d.ts.map +1 -0
- package/esm/concise/src/mod.js +3 -0
- package/esm/concise/src/v2/builtins/batcher.d.ts +27 -0
- package/esm/concise/src/v2/builtins/batcher.d.ts.map +1 -0
- package/esm/concise/src/v2/builtins/batcher.js +51 -0
- package/esm/concise/src/v2/builtins/grammar.d.ts +25 -0
- package/esm/concise/src/v2/builtins/grammar.d.ts.map +1 -0
- package/esm/concise/src/v2/builtins/grammar.js +40 -0
- package/esm/concise/src/v2/builtins/index.d.ts +3 -0
- package/esm/concise/src/v2/builtins/index.d.ts.map +1 -0
- package/esm/concise/src/v2/builtins/index.js +3 -0
- package/esm/concise/src/v2/grammar.d.ts +8 -0
- package/esm/concise/src/v2/grammar.d.ts.map +1 -0
- package/esm/concise/src/v2/grammar.js +19 -0
- package/esm/concise/src/v2/inputs.d.ts +7 -0
- package/esm/concise/src/v2/inputs.d.ts.map +1 -0
- package/esm/concise/src/v2/inputs.js +37 -0
- package/esm/concise/src/v2/mod.d.ts +5 -0
- package/esm/concise/src/v2/mod.d.ts.map +1 -0
- package/esm/concise/src/v2/mod.js +4 -0
- package/esm/concise/src/v2/types.d.ts +23 -0
- package/esm/concise/src/v2/types.d.ts.map +1 -0
- package/esm/concise/src/v2/types.js +1 -0
- package/esm/config/src/config/builder.d.ts +33 -0
- package/esm/config/src/config/builder.d.ts.map +1 -0
- package/esm/config/src/config/builder.js +82 -0
- package/esm/config/src/config/configCheck.d.ts +32 -0
- package/esm/config/src/config/configCheck.d.ts.map +1 -0
- package/esm/config/src/config/configCheck.js +67 -0
- package/esm/config/src/config/context.d.ts +23 -0
- package/esm/config/src/config/context.d.ts.map +1 -0
- package/esm/config/src/config/context.js +25 -0
- package/esm/config/src/config/mod.d.ts +7 -0
- package/esm/config/src/config/mod.d.ts.map +1 -0
- package/esm/config/src/config/mod.js +4 -0
- package/esm/config/src/config/parts/deployedAddresses.d.ts +17 -0
- package/esm/config/src/config/parts/deployedAddresses.d.ts.map +1 -0
- package/esm/config/src/config/parts/deployedAddresses.js +24 -0
- package/esm/config/src/config/parts/network.d.ts +19 -0
- package/esm/config/src/config/parts/network.d.ts.map +1 -0
- package/esm/config/src/config/parts/network.js +29 -0
- package/esm/config/src/config/parts/primitive.d.ts +31 -0
- package/esm/config/src/config/parts/primitive.d.ts.map +1 -0
- package/esm/config/src/config/parts/primitive.js +28 -0
- package/esm/config/src/config/parts/securityNamespace.d.ts +14 -0
- package/esm/config/src/config/parts/securityNamespace.d.ts.map +1 -0
- package/esm/config/src/config/parts/securityNamespace.js +26 -0
- package/esm/config/src/config/parts/syncProtocols.d.ts +43 -0
- package/esm/config/src/config/parts/syncProtocols.d.ts.map +1 -0
- package/esm/config/src/config/parts/syncProtocols.js +66 -0
- package/esm/config/src/config/utils.d.ts +40 -0
- package/esm/config/src/config/utils.d.ts.map +1 -0
- package/esm/config/src/config/utils.js +55 -0
- package/esm/config/src/mod.d.ts +3 -0
- package/esm/config/src/mod.d.ts.map +1 -0
- package/esm/config/src/mod.js +2 -0
- package/esm/config/src/schema/common.d.ts +26 -0
- package/esm/config/src/schema/common.d.ts.map +1 -0
- package/esm/config/src/schema/common.js +51 -0
- package/esm/config/src/schema/mod.d.ts +7 -0
- package/esm/config/src/schema/mod.d.ts.map +1 -0
- package/esm/config/src/schema/mod.js +6 -0
- package/esm/config/src/schema/namespace.d.ts +39 -0
- package/esm/config/src/schema/namespace.d.ts.map +1 -0
- package/esm/config/src/schema/namespace.js +34 -0
- package/esm/config/src/schema/network/algorand.d.ts +12 -0
- package/esm/config/src/schema/network/algorand.d.ts.map +1 -0
- package/esm/config/src/schema/network/algorand.js +23 -0
- package/esm/config/src/schema/network/all.d.ts +175 -0
- package/esm/config/src/schema/network/all.d.ts.map +1 -0
- package/esm/config/src/schema/network/all.js +24 -0
- package/esm/config/src/schema/network/bitcoin.d.ts +19 -0
- package/esm/config/src/schema/network/bitcoin.d.ts.map +1 -0
- package/esm/config/src/schema/network/bitcoin.js +21 -0
- package/esm/config/src/schema/network/cardano.d.ts +12 -0
- package/esm/config/src/schema/network/cardano.d.ts.map +1 -0
- package/esm/config/src/schema/network/cardano.js +27 -0
- package/esm/config/src/schema/network/evm.d.ts +68 -0
- package/esm/config/src/schema/network/evm.d.ts.map +1 -0
- package/esm/config/src/schema/network/evm.js +70 -0
- package/esm/config/src/schema/network/mina.d.ts +14 -0
- package/esm/config/src/schema/network/mina.d.ts.map +1 -0
- package/esm/config/src/schema/network/mina.js +25 -0
- package/esm/config/src/schema/network/mod.d.ts +9 -0
- package/esm/config/src/schema/network/mod.d.ts.map +1 -0
- package/esm/config/src/schema/network/mod.js +8 -0
- package/esm/config/src/schema/network/ntp.d.ts +32 -0
- package/esm/config/src/schema/network/ntp.d.ts.map +1 -0
- package/esm/config/src/schema/network/ntp.js +39 -0
- package/esm/config/src/schema/network/substrate/avail.d.ts +14 -0
- package/esm/config/src/schema/network/substrate/avail.d.ts.map +1 -0
- package/esm/config/src/schema/network/substrate/avail.js +26 -0
- package/esm/config/src/schema/network/substrate/common.d.ts +18 -0
- package/esm/config/src/schema/network/substrate/common.d.ts.map +1 -0
- package/esm/config/src/schema/network/substrate/common.js +32 -0
- package/esm/config/src/schema/network/substrate/midnight.d.ts +20 -0
- package/esm/config/src/schema/network/substrate/midnight.d.ts.map +1 -0
- package/esm/config/src/schema/network/substrate/midnight.js +32 -0
- package/esm/config/src/schema/network/substrate/mod.d.ts +4 -0
- package/esm/config/src/schema/network/substrate/mod.d.ts.map +1 -0
- package/esm/config/src/schema/network/substrate/mod.js +3 -0
- package/esm/config/src/schema/network/types.d.ts +13 -0
- package/esm/config/src/schema/network/types.d.ts.map +1 -0
- package/esm/config/src/schema/network/types.js +13 -0
- package/esm/config/src/schema/network/utils.d.ts +5 -0
- package/esm/config/src/schema/network/utils.d.ts.map +1 -0
- package/esm/config/src/schema/network/utils.js +73 -0
- package/esm/config/src/schema/primitive/mod.d.ts +2 -0
- package/esm/config/src/schema/primitive/mod.d.ts.map +1 -0
- package/esm/config/src/schema/primitive/mod.js +1 -0
- package/esm/config/src/schema/primitive/types.d.ts +58 -0
- package/esm/config/src/schema/primitive/types.d.ts.map +1 -0
- package/esm/config/src/schema/primitive/types.js +1 -0
- package/esm/config/src/schema/sync-protocols/all.d.ts +583 -0
- package/esm/config/src/schema/sync-protocols/all.d.ts.map +1 -0
- package/esm/config/src/schema/sync-protocols/all.js +55 -0
- package/esm/config/src/schema/sync-protocols/avail/rpc.d.ts +76 -0
- package/esm/config/src/schema/sync-protocols/avail/rpc.d.ts.map +1 -0
- package/esm/config/src/schema/sync-protocols/avail/rpc.js +56 -0
- package/esm/config/src/schema/sync-protocols/bitcoin/rpc.d.ts +76 -0
- package/esm/config/src/schema/sync-protocols/bitcoin/rpc.d.ts.map +1 -0
- package/esm/config/src/schema/sync-protocols/bitcoin/rpc.js +47 -0
- package/esm/config/src/schema/sync-protocols/cardano/carp.d.ts +80 -0
- package/esm/config/src/schema/sync-protocols/cardano/carp.d.ts.map +1 -0
- package/esm/config/src/schema/sync-protocols/cardano/carp.js +62 -0
- package/esm/config/src/schema/sync-protocols/cardano/mod.d.ts +2 -0
- package/esm/config/src/schema/sync-protocols/cardano/mod.d.ts.map +1 -0
- package/esm/config/src/schema/sync-protocols/cardano/mod.js +1 -0
- package/esm/config/src/schema/sync-protocols/cardano/utxorpc.d.ts +56 -0
- package/esm/config/src/schema/sync-protocols/cardano/utxorpc.d.ts.map +1 -0
- package/esm/config/src/schema/sync-protocols/cardano/utxorpc.js +56 -0
- package/esm/config/src/schema/sync-protocols/common.d.ts +60 -0
- package/esm/config/src/schema/sync-protocols/common.d.ts.map +1 -0
- package/esm/config/src/schema/sync-protocols/common.js +54 -0
- package/esm/config/src/schema/sync-protocols/decorators/all.d.ts +17 -0
- package/esm/config/src/schema/sync-protocols/decorators/all.d.ts.map +1 -0
- package/esm/config/src/schema/sync-protocols/decorators/all.js +8 -0
- package/esm/config/src/schema/sync-protocols/decorators/emulated.d.ts +8 -0
- package/esm/config/src/schema/sync-protocols/decorators/emulated.d.ts.map +1 -0
- package/esm/config/src/schema/sync-protocols/decorators/emulated.js +12 -0
- package/esm/config/src/schema/sync-protocols/decorators/mod.d.ts +4 -0
- package/esm/config/src/schema/sync-protocols/decorators/mod.d.ts.map +1 -0
- package/esm/config/src/schema/sync-protocols/decorators/mod.js +3 -0
- package/esm/config/src/schema/sync-protocols/decorators/types.d.ts +4 -0
- package/esm/config/src/schema/sync-protocols/decorators/types.d.ts.map +1 -0
- package/esm/config/src/schema/sync-protocols/decorators/types.js +4 -0
- package/esm/config/src/schema/sync-protocols/evm/rpc.d.ts +68 -0
- package/esm/config/src/schema/sync-protocols/evm/rpc.d.ts.map +1 -0
- package/esm/config/src/schema/sync-protocols/evm/rpc.js +44 -0
- package/esm/config/src/schema/sync-protocols/midnight/graphql.d.ts +66 -0
- package/esm/config/src/schema/sync-protocols/midnight/graphql.d.ts.map +1 -0
- package/esm/config/src/schema/sync-protocols/midnight/graphql.js +50 -0
- package/esm/config/src/schema/sync-protocols/mina/graphql.d.ts +73 -0
- package/esm/config/src/schema/sync-protocols/mina/graphql.d.ts.map +1 -0
- package/esm/config/src/schema/sync-protocols/mina/graphql.js +59 -0
- package/esm/config/src/schema/sync-protocols/mod.d.ts +10 -0
- package/esm/config/src/schema/sync-protocols/mod.d.ts.map +1 -0
- package/esm/config/src/schema/sync-protocols/mod.js +9 -0
- package/esm/config/src/schema/sync-protocols/ntp/rpc.d.ts +45 -0
- package/esm/config/src/schema/sync-protocols/ntp/rpc.d.ts.map +1 -0
- package/esm/config/src/schema/sync-protocols/ntp/rpc.js +33 -0
- package/esm/config/src/schema/sync-protocols/types.d.ts +125 -0
- package/esm/config/src/schema/sync-protocols/types.d.ts.map +1 -0
- package/esm/config/src/schema/sync-protocols/types.js +22 -0
- package/esm/config/src/schema/utils.d.ts +53 -0
- package/esm/config/src/schema/utils.d.ts.map +1 -0
- package/esm/config/src/schema/utils.js +58 -0
- package/esm/events/src/app-events.d.ts +65 -0
- package/esm/events/src/app-events.d.ts.map +1 -0
- package/esm/events/src/app-events.js +51 -0
- package/esm/events/src/asyncapi.d.ts +1173 -0
- package/esm/events/src/asyncapi.d.ts.map +1 -0
- package/esm/events/src/asyncapi.js +7 -0
- package/esm/events/src/builtin-event-utils.d.ts +5 -0
- package/esm/events/src/builtin-event-utils.d.ts.map +1 -0
- package/esm/events/src/builtin-event-utils.js +58 -0
- package/esm/events/src/builtin-events.d.ts +106 -0
- package/esm/events/src/builtin-events.d.ts.map +1 -0
- package/esm/events/src/builtin-events.js +198 -0
- package/esm/events/src/event-connect.d.ts +15 -0
- package/esm/events/src/event-connect.d.ts.map +1 -0
- package/esm/events/src/event-connect.js +75 -0
- package/esm/events/src/event-manager.d.ts +54 -0
- package/esm/events/src/event-manager.d.ts.map +1 -0
- package/esm/events/src/event-manager.js +129 -0
- package/esm/events/src/evm.d.ts +6 -0
- package/esm/events/src/evm.d.ts.map +1 -0
- package/esm/events/src/evm.js +55 -0
- package/esm/events/src/mod.d.ts +10 -0
- package/esm/events/src/mod.d.ts.map +1 -0
- package/esm/events/src/mod.js +9 -0
- package/esm/events/src/types.d.ts +255 -0
- package/esm/events/src/types.d.ts.map +1 -0
- package/esm/events/src/types.js +103 -0
- package/esm/events/src/utils.d.ts +16 -0
- package/esm/events/src/utils.d.ts.map +1 -0
- package/esm/events/src/utils.js +93 -0
- package/esm/package.json +3 -0
- package/esm/utils/src/binary-search.d.ts +7 -0
- package/esm/utils/src/binary-search.d.ts.map +1 -0
- package/esm/utils/src/binary-search.js +38 -0
- package/esm/utils/src/captcha.d.ts +9 -0
- package/esm/utils/src/captcha.d.ts.map +1 -0
- package/esm/utils/src/captcha.js +19 -0
- package/esm/utils/src/concurrency/condVar.d.ts +25 -0
- package/esm/utils/src/concurrency/condVar.d.ts.map +1 -0
- package/esm/utils/src/concurrency/condVar.js +39 -0
- package/esm/utils/src/concurrency/latch.d.ts +25 -0
- package/esm/utils/src/concurrency/latch.d.ts.map +1 -0
- package/esm/utils/src/concurrency/latch.js +51 -0
- package/esm/utils/src/concurrency/mod.d.ts +5 -0
- package/esm/utils/src/concurrency/mod.d.ts.map +1 -0
- package/esm/utils/src/concurrency/mod.js +4 -0
- package/esm/utils/src/concurrency/retry.d.ts +14 -0
- package/esm/utils/src/concurrency/retry.d.ts.map +1 -0
- package/esm/utils/src/concurrency/retry.js +26 -0
- package/esm/utils/src/concurrency/utils.d.ts +27 -0
- package/esm/utils/src/concurrency/utils.d.ts.map +1 -0
- package/esm/utils/src/concurrency/utils.js +27 -0
- package/esm/utils/src/constants.d.ts +4 -0
- package/esm/utils/src/constants.d.ts.map +1 -0
- package/esm/utils/src/constants.js +7 -0
- package/esm/utils/src/decorators/bound.d.ts +10 -0
- package/esm/utils/src/decorators/bound.d.ts.map +1 -0
- package/esm/utils/src/decorators/bound.js +17 -0
- package/esm/utils/src/decorators/mod.d.ts +2 -0
- package/esm/utils/src/decorators/mod.d.ts.map +1 -0
- package/esm/utils/src/decorators/mod.js +1 -0
- package/esm/utils/src/mod.d.ts +8 -0
- package/esm/utils/src/mod.d.ts.map +1 -0
- package/esm/utils/src/mod.js +7 -0
- package/esm/utils/src/types/json-query.d.ts +30 -0
- package/esm/utils/src/types/json-query.d.ts.map +1 -0
- package/esm/utils/src/types/json-query.js +1 -0
- package/esm/utils/src/types/misc.d.ts +109 -0
- package/esm/utils/src/types/misc.d.ts.map +1 -0
- package/esm/utils/src/types/misc.js +2 -0
- package/esm/utils/src/types/mod.d.ts +7 -0
- package/esm/utils/src/types/mod.d.ts.map +1 -0
- package/esm/utils/src/types/mod.js +3 -0
- package/esm/utils/src/types/nominal.d.ts +87 -0
- package/esm/utils/src/types/nominal.d.ts.map +1 -0
- package/esm/utils/src/types/nominal.js +1 -0
- package/esm/utils/src/types/typebox-helpers.d.ts +183 -0
- package/esm/utils/src/types/typebox-helpers.d.ts.map +1 -0
- package/esm/utils/src/types/typebox-helpers.js +235 -0
- package/esm/utils/src/types/utils.d.ts +37 -0
- package/esm/utils/src/types/utils.d.ts.map +1 -0
- package/esm/utils/src/types/utils.js +46 -0
- package/esm/utils/src/types/validators/algorand.d.ts +31 -0
- package/esm/utils/src/types/validators/algorand.d.ts.map +1 -0
- package/esm/utils/src/types/validators/algorand.js +90 -0
- package/esm/utils/src/types/validators/cardano.d.ts +26 -0
- package/esm/utils/src/types/validators/cardano.d.ts.map +1 -0
- package/esm/utils/src/types/validators/cardano.js +113 -0
- package/esm/utils/src/types/validators/mina.d.ts +15 -0
- package/esm/utils/src/types/validators/mina.d.ts.map +1 -0
- package/esm/utils/src/types/validators/mina.js +43 -0
- package/esm/utils/src/types/validators/minicbor.d.ts +98 -0
- package/esm/utils/src/types/validators/minicbor.d.ts.map +1 -0
- package/esm/utils/src/types/validators/minicbor.js +332 -0
- package/esm/utils/src/types/validators/mod.d.ts +3 -0
- package/esm/utils/src/types/validators/mod.d.ts.map +1 -0
- package/esm/utils/src/types/validators/mod.js +2 -0
- package/esm/utils/src/types/validators/utils.d.ts +6 -0
- package/esm/utils/src/types/validators/utils.d.ts.map +1 -0
- package/esm/utils/src/types/validators/utils.js +24 -0
- package/esm/utils/src/viem.d.ts +6 -0
- package/esm/utils/src/viem.d.ts.map +1 -0
- package/esm/utils/src/viem.js +15 -0
- package/esm/wallets/src/IProvider.d.ts +48 -0
- package/esm/wallets/src/IProvider.d.ts.map +1 -0
- package/esm/wallets/src/IProvider.js +7 -0
- package/esm/wallets/src/avail/avail.d.ts +28 -0
- package/esm/wallets/src/avail/avail.d.ts.map +1 -0
- package/esm/wallets/src/avail/avail.js +65 -0
- package/esm/wallets/src/avail/wrapper.d.ts +6 -0
- package/esm/wallets/src/avail/wrapper.d.ts.map +1 -0
- package/esm/wallets/src/avail/wrapper.js +31 -0
- package/esm/wallets/src/cardano/cardano.d.ts +30 -0
- package/esm/wallets/src/cardano/cardano.d.ts.map +1 -0
- package/esm/wallets/src/cardano/cardano.js +158 -0
- package/esm/wallets/src/cardano/wrapper.d.ts +7 -0
- package/esm/wallets/src/cardano/wrapper.d.ts.map +1 -0
- package/esm/wallets/src/cardano/wrapper.js +22 -0
- package/esm/wallets/src/evm/ethers.d.ts +28 -0
- package/esm/wallets/src/evm/ethers.d.ts.map +1 -0
- package/esm/wallets/src/evm/ethers.js +79 -0
- package/esm/wallets/src/evm/injected.d.ts +74 -0
- package/esm/wallets/src/evm/injected.d.ts.map +1 -0
- package/esm/wallets/src/evm/injected.js +322 -0
- package/esm/wallets/src/evm/types.d.ts +3 -0
- package/esm/wallets/src/evm/types.d.ts.map +1 -0
- package/esm/wallets/src/evm/types.js +1 -0
- package/esm/wallets/src/evm/wrapper-ethers.d.ts +6 -0
- package/esm/wallets/src/evm/wrapper-ethers.d.ts.map +1 -0
- package/esm/wallets/src/evm/wrapper-ethers.js +38 -0
- package/esm/wallets/src/evm/wrapper-injected.d.ts +7 -0
- package/esm/wallets/src/evm/wrapper-injected.d.ts.map +1 -0
- package/esm/wallets/src/evm/wrapper-injected.js +80 -0
- package/esm/wallets/src/midnight/midnight.d.ts +26 -0
- package/esm/wallets/src/midnight/midnight.d.ts.map +1 -0
- package/esm/wallets/src/midnight/midnight.js +112 -0
- package/esm/wallets/src/midnight/wrapper.d.ts +7 -0
- package/esm/wallets/src/midnight/wrapper.d.ts.map +1 -0
- package/esm/wallets/src/midnight/wrapper.js +22 -0
- package/esm/wallets/src/mina/mina.d.ts +28 -0
- package/esm/wallets/src/mina/mina.d.ts.map +1 -0
- package/esm/wallets/src/mina/mina.js +133 -0
- package/esm/wallets/src/mina/wrapper.d.ts +6 -0
- package/esm/wallets/src/mina/wrapper.d.ts.map +1 -0
- package/esm/wallets/src/mina/wrapper.js +12 -0
- package/esm/wallets/src/mod.d.ts +8 -0
- package/esm/wallets/src/mod.d.ts.map +1 -0
- package/esm/wallets/src/mod.js +5 -0
- package/esm/wallets/src/paima.d.ts +104 -0
- package/esm/wallets/src/paima.d.ts.map +1 -0
- package/esm/wallets/src/paima.js +244 -0
- package/esm/wallets/src/types.d.ts +49 -0
- package/esm/wallets/src/types.d.ts.map +1 -0
- package/esm/wallets/src/types.js +1 -0
- package/esm/wallets/src/utils.d.ts +41 -0
- package/esm/wallets/src/utils.d.ts.map +1 -0
- package/esm/wallets/src/utils.js +75 -0
- package/esm/wallets/src/wallet-modes.d.ts +49 -0
- package/esm/wallets/src/wallet-modes.d.ts.map +1 -0
- package/esm/wallets/src/wallet-modes.js +26 -0
- package/esm/wallets/src/wallets.d.ts +5 -0
- package/esm/wallets/src/wallets.d.ts.map +1 -0
- package/esm/wallets/src/wallets.js +55 -0
- package/esm/wallets/src/windows.d.ts +5 -0
- package/esm/wallets/src/windows.d.ts.map +1 -0
- package/esm/wallets/src/windows.js +9 -0
- package/package.json +51 -0
- package/script/chain-types/src/hash.d.ts +28 -0
- package/script/chain-types/src/hash.d.ts.map +1 -0
- package/script/chain-types/src/hash.js +36 -0
- package/script/chain-types/src/mod.d.ts +3 -0
- package/script/chain-types/src/mod.d.ts.map +1 -0
- package/script/chain-types/src/mod.js +18 -0
- package/script/chain-types/src/types.d.ts +70 -0
- package/script/chain-types/src/types.d.ts.map +1 -0
- package/script/chain-types/src/types.js +2 -0
- package/script/concise/src/batcher.d.ts +40 -0
- package/script/concise/src/batcher.d.ts.map +1 -0
- package/script/concise/src/batcher.js +122 -0
- package/script/concise/src/delegate.d.ts +18 -0
- package/script/concise/src/delegate.d.ts.map +1 -0
- package/script/concise/src/delegate.js +123 -0
- package/script/concise/src/mod.d.ts +5 -0
- package/script/concise/src/mod.d.ts.map +1 -0
- package/script/concise/src/mod.js +19 -0
- package/script/concise/src/v2/builtins/batcher.d.ts +27 -0
- package/script/concise/src/v2/builtins/batcher.d.ts.map +1 -0
- package/script/concise/src/v2/builtins/batcher.js +54 -0
- package/script/concise/src/v2/builtins/grammar.d.ts +25 -0
- package/script/concise/src/v2/builtins/grammar.d.ts.map +1 -0
- package/script/concise/src/v2/builtins/grammar.js +43 -0
- package/script/concise/src/v2/builtins/index.d.ts +3 -0
- package/script/concise/src/v2/builtins/index.d.ts.map +1 -0
- package/script/concise/src/v2/builtins/index.js +19 -0
- package/script/concise/src/v2/grammar.d.ts +8 -0
- package/script/concise/src/v2/grammar.d.ts.map +1 -0
- package/script/concise/src/v2/grammar.js +24 -0
- package/script/concise/src/v2/inputs.d.ts +7 -0
- package/script/concise/src/v2/inputs.d.ts.map +1 -0
- package/script/concise/src/v2/inputs.js +43 -0
- package/script/concise/src/v2/mod.d.ts +5 -0
- package/script/concise/src/v2/mod.d.ts.map +1 -0
- package/script/concise/src/v2/mod.js +20 -0
- package/script/concise/src/v2/types.d.ts +23 -0
- package/script/concise/src/v2/types.d.ts.map +1 -0
- package/script/concise/src/v2/types.js +2 -0
- package/script/config/src/config/builder.d.ts +33 -0
- package/script/config/src/config/builder.d.ts.map +1 -0
- package/script/config/src/config/builder.js +86 -0
- package/script/config/src/config/configCheck.d.ts +32 -0
- package/script/config/src/config/configCheck.d.ts.map +1 -0
- package/script/config/src/config/configCheck.js +70 -0
- package/script/config/src/config/context.d.ts +23 -0
- package/script/config/src/config/context.d.ts.map +1 -0
- package/script/config/src/config/context.js +31 -0
- package/script/config/src/config/mod.d.ts +7 -0
- package/script/config/src/config/mod.d.ts.map +1 -0
- package/script/config/src/config/mod.js +22 -0
- package/script/config/src/config/parts/deployedAddresses.d.ts +17 -0
- package/script/config/src/config/parts/deployedAddresses.d.ts.map +1 -0
- package/script/config/src/config/parts/deployedAddresses.js +28 -0
- package/script/config/src/config/parts/network.d.ts +19 -0
- package/script/config/src/config/parts/network.d.ts.map +1 -0
- package/script/config/src/config/parts/network.js +33 -0
- package/script/config/src/config/parts/primitive.d.ts +31 -0
- package/script/config/src/config/parts/primitive.d.ts.map +1 -0
- package/script/config/src/config/parts/primitive.js +32 -0
- package/script/config/src/config/parts/securityNamespace.d.ts +14 -0
- package/script/config/src/config/parts/securityNamespace.d.ts.map +1 -0
- package/script/config/src/config/parts/securityNamespace.js +30 -0
- package/script/config/src/config/parts/syncProtocols.d.ts +43 -0
- package/script/config/src/config/parts/syncProtocols.d.ts.map +1 -0
- package/script/config/src/config/parts/syncProtocols.js +70 -0
- package/script/config/src/config/utils.d.ts +40 -0
- package/script/config/src/config/utils.d.ts.map +1 -0
- package/script/config/src/config/utils.js +62 -0
- package/script/config/src/mod.d.ts +3 -0
- package/script/config/src/mod.d.ts.map +1 -0
- package/script/config/src/mod.js +18 -0
- package/script/config/src/schema/common.d.ts +26 -0
- package/script/config/src/schema/common.d.ts.map +1 -0
- package/script/config/src/schema/common.js +54 -0
- package/script/config/src/schema/mod.d.ts +7 -0
- package/script/config/src/schema/mod.d.ts.map +1 -0
- package/script/config/src/schema/mod.js +22 -0
- package/script/config/src/schema/namespace.d.ts +39 -0
- package/script/config/src/schema/namespace.d.ts.map +1 -0
- package/script/config/src/schema/namespace.js +38 -0
- package/script/config/src/schema/network/algorand.d.ts +12 -0
- package/script/config/src/schema/network/algorand.d.ts.map +1 -0
- package/script/config/src/schema/network/algorand.js +26 -0
- package/script/config/src/schema/network/all.d.ts +175 -0
- package/script/config/src/schema/network/all.d.ts.map +1 -0
- package/script/config/src/schema/network/all.js +28 -0
- package/script/config/src/schema/network/bitcoin.d.ts +19 -0
- package/script/config/src/schema/network/bitcoin.d.ts.map +1 -0
- package/script/config/src/schema/network/bitcoin.js +24 -0
- package/script/config/src/schema/network/cardano.d.ts +12 -0
- package/script/config/src/schema/network/cardano.d.ts.map +1 -0
- package/script/config/src/schema/network/cardano.js +30 -0
- package/script/config/src/schema/network/evm.d.ts +68 -0
- package/script/config/src/schema/network/evm.d.ts.map +1 -0
- package/script/config/src/schema/network/evm.js +75 -0
- package/script/config/src/schema/network/mina.d.ts +14 -0
- package/script/config/src/schema/network/mina.d.ts.map +1 -0
- package/script/config/src/schema/network/mina.js +28 -0
- package/script/config/src/schema/network/mod.d.ts +9 -0
- package/script/config/src/schema/network/mod.d.ts.map +1 -0
- package/script/config/src/schema/network/mod.js +24 -0
- package/script/config/src/schema/network/ntp.d.ts +32 -0
- package/script/config/src/schema/network/ntp.d.ts.map +1 -0
- package/script/config/src/schema/network/ntp.js +42 -0
- package/script/config/src/schema/network/substrate/avail.d.ts +14 -0
- package/script/config/src/schema/network/substrate/avail.d.ts.map +1 -0
- package/script/config/src/schema/network/substrate/avail.js +29 -0
- package/script/config/src/schema/network/substrate/common.d.ts +18 -0
- package/script/config/src/schema/network/substrate/common.d.ts.map +1 -0
- package/script/config/src/schema/network/substrate/common.js +35 -0
- package/script/config/src/schema/network/substrate/midnight.d.ts +20 -0
- package/script/config/src/schema/network/substrate/midnight.d.ts.map +1 -0
- package/script/config/src/schema/network/substrate/midnight.js +35 -0
- package/script/config/src/schema/network/substrate/mod.d.ts +4 -0
- package/script/config/src/schema/network/substrate/mod.d.ts.map +1 -0
- package/script/config/src/schema/network/substrate/mod.js +19 -0
- package/script/config/src/schema/network/types.d.ts +13 -0
- package/script/config/src/schema/network/types.d.ts.map +1 -0
- package/script/config/src/schema/network/types.js +16 -0
- package/script/config/src/schema/network/utils.d.ts +5 -0
- package/script/config/src/schema/network/utils.d.ts.map +1 -0
- package/script/config/src/schema/network/utils.js +76 -0
- package/script/config/src/schema/primitive/mod.d.ts +2 -0
- package/script/config/src/schema/primitive/mod.d.ts.map +1 -0
- package/script/config/src/schema/primitive/mod.js +17 -0
- package/script/config/src/schema/primitive/types.d.ts +58 -0
- package/script/config/src/schema/primitive/types.d.ts.map +1 -0
- package/script/config/src/schema/primitive/types.js +2 -0
- package/script/config/src/schema/sync-protocols/all.d.ts +583 -0
- package/script/config/src/schema/sync-protocols/all.d.ts.map +1 -0
- package/script/config/src/schema/sync-protocols/all.js +62 -0
- package/script/config/src/schema/sync-protocols/avail/rpc.d.ts +76 -0
- package/script/config/src/schema/sync-protocols/avail/rpc.d.ts.map +1 -0
- package/script/config/src/schema/sync-protocols/avail/rpc.js +59 -0
- package/script/config/src/schema/sync-protocols/bitcoin/rpc.d.ts +76 -0
- package/script/config/src/schema/sync-protocols/bitcoin/rpc.d.ts.map +1 -0
- package/script/config/src/schema/sync-protocols/bitcoin/rpc.js +50 -0
- package/script/config/src/schema/sync-protocols/cardano/carp.d.ts +80 -0
- package/script/config/src/schema/sync-protocols/cardano/carp.d.ts.map +1 -0
- package/script/config/src/schema/sync-protocols/cardano/carp.js +65 -0
- package/script/config/src/schema/sync-protocols/cardano/mod.d.ts +2 -0
- package/script/config/src/schema/sync-protocols/cardano/mod.d.ts.map +1 -0
- package/script/config/src/schema/sync-protocols/cardano/mod.js +17 -0
- package/script/config/src/schema/sync-protocols/cardano/utxorpc.d.ts +56 -0
- package/script/config/src/schema/sync-protocols/cardano/utxorpc.d.ts.map +1 -0
- package/script/config/src/schema/sync-protocols/cardano/utxorpc.js +59 -0
- package/script/config/src/schema/sync-protocols/common.d.ts +60 -0
- package/script/config/src/schema/sync-protocols/common.d.ts.map +1 -0
- package/script/config/src/schema/sync-protocols/common.js +61 -0
- package/script/config/src/schema/sync-protocols/decorators/all.d.ts +17 -0
- package/script/config/src/schema/sync-protocols/decorators/all.d.ts.map +1 -0
- package/script/config/src/schema/sync-protocols/decorators/all.js +12 -0
- package/script/config/src/schema/sync-protocols/decorators/emulated.d.ts +8 -0
- package/script/config/src/schema/sync-protocols/decorators/emulated.d.ts.map +1 -0
- package/script/config/src/schema/sync-protocols/decorators/emulated.js +15 -0
- package/script/config/src/schema/sync-protocols/decorators/mod.d.ts +4 -0
- package/script/config/src/schema/sync-protocols/decorators/mod.d.ts.map +1 -0
- package/script/config/src/schema/sync-protocols/decorators/mod.js +19 -0
- package/script/config/src/schema/sync-protocols/decorators/types.d.ts +4 -0
- package/script/config/src/schema/sync-protocols/decorators/types.d.ts.map +1 -0
- package/script/config/src/schema/sync-protocols/decorators/types.js +7 -0
- package/script/config/src/schema/sync-protocols/evm/rpc.d.ts +68 -0
- package/script/config/src/schema/sync-protocols/evm/rpc.d.ts.map +1 -0
- package/script/config/src/schema/sync-protocols/evm/rpc.js +47 -0
- package/script/config/src/schema/sync-protocols/midnight/graphql.d.ts +66 -0
- package/script/config/src/schema/sync-protocols/midnight/graphql.d.ts.map +1 -0
- package/script/config/src/schema/sync-protocols/midnight/graphql.js +53 -0
- package/script/config/src/schema/sync-protocols/mina/graphql.d.ts +73 -0
- package/script/config/src/schema/sync-protocols/mina/graphql.d.ts.map +1 -0
- package/script/config/src/schema/sync-protocols/mina/graphql.js +62 -0
- package/script/config/src/schema/sync-protocols/mod.d.ts +10 -0
- package/script/config/src/schema/sync-protocols/mod.d.ts.map +1 -0
- package/script/config/src/schema/sync-protocols/mod.js +25 -0
- package/script/config/src/schema/sync-protocols/ntp/rpc.d.ts +45 -0
- package/script/config/src/schema/sync-protocols/ntp/rpc.d.ts.map +1 -0
- package/script/config/src/schema/sync-protocols/ntp/rpc.js +36 -0
- package/script/config/src/schema/sync-protocols/types.d.ts +125 -0
- package/script/config/src/schema/sync-protocols/types.d.ts.map +1 -0
- package/script/config/src/schema/sync-protocols/types.js +25 -0
- package/script/config/src/schema/utils.d.ts +53 -0
- package/script/config/src/schema/utils.d.ts.map +1 -0
- package/script/config/src/schema/utils.js +62 -0
- package/script/events/src/app-events.d.ts +65 -0
- package/script/events/src/app-events.d.ts.map +1 -0
- package/script/events/src/app-events.js +62 -0
- package/script/events/src/asyncapi.d.ts +1173 -0
- package/script/events/src/asyncapi.d.ts.map +1 -0
- package/script/events/src/asyncapi.js +8 -0
- package/script/events/src/builtin-event-utils.d.ts +5 -0
- package/script/events/src/builtin-event-utils.d.ts.map +1 -0
- package/script/events/src/builtin-event-utils.js +63 -0
- package/script/events/src/builtin-events.d.ts +106 -0
- package/script/events/src/builtin-events.d.ts.map +1 -0
- package/script/events/src/builtin-events.js +204 -0
- package/script/events/src/event-connect.d.ts +15 -0
- package/script/events/src/event-connect.d.ts.map +1 -0
- package/script/events/src/event-connect.js +82 -0
- package/script/events/src/event-manager.d.ts +54 -0
- package/script/events/src/event-manager.d.ts.map +1 -0
- package/script/events/src/event-manager.js +133 -0
- package/script/events/src/evm.d.ts +6 -0
- package/script/events/src/evm.d.ts.map +1 -0
- package/script/events/src/evm.js +59 -0
- package/script/events/src/mod.d.ts +10 -0
- package/script/events/src/mod.d.ts.map +1 -0
- package/script/events/src/mod.js +25 -0
- package/script/events/src/types.d.ts +255 -0
- package/script/events/src/types.d.ts.map +1 -0
- package/script/events/src/types.js +111 -0
- package/script/events/src/utils.d.ts +16 -0
- package/script/events/src/utils.d.ts.map +1 -0
- package/script/events/src/utils.js +98 -0
- package/script/package.json +3 -0
- package/script/utils/src/binary-search.d.ts +7 -0
- package/script/utils/src/binary-search.d.ts.map +1 -0
- package/script/utils/src/binary-search.js +41 -0
- package/script/utils/src/captcha.d.ts +9 -0
- package/script/utils/src/captcha.d.ts.map +1 -0
- package/script/utils/src/captcha.js +22 -0
- package/script/utils/src/concurrency/condVar.d.ts +25 -0
- package/script/utils/src/concurrency/condVar.d.ts.map +1 -0
- package/script/utils/src/concurrency/condVar.js +42 -0
- package/script/utils/src/concurrency/latch.d.ts +25 -0
- package/script/utils/src/concurrency/latch.d.ts.map +1 -0
- package/script/utils/src/concurrency/latch.js +54 -0
- package/script/utils/src/concurrency/mod.d.ts +5 -0
- package/script/utils/src/concurrency/mod.d.ts.map +1 -0
- package/script/utils/src/concurrency/mod.js +20 -0
- package/script/utils/src/concurrency/retry.d.ts +14 -0
- package/script/utils/src/concurrency/retry.d.ts.map +1 -0
- package/script/utils/src/concurrency/retry.js +30 -0
- package/script/utils/src/concurrency/utils.d.ts +27 -0
- package/script/utils/src/concurrency/utils.d.ts.map +1 -0
- package/script/utils/src/concurrency/utils.js +30 -0
- package/script/utils/src/constants.d.ts +4 -0
- package/script/utils/src/constants.d.ts.map +1 -0
- package/script/utils/src/constants.js +12 -0
- package/script/utils/src/decorators/bound.d.ts +10 -0
- package/script/utils/src/decorators/bound.d.ts.map +1 -0
- package/script/utils/src/decorators/bound.js +20 -0
- package/script/utils/src/decorators/mod.d.ts +2 -0
- package/script/utils/src/decorators/mod.d.ts.map +1 -0
- package/script/utils/src/decorators/mod.js +17 -0
- package/script/utils/src/mod.d.ts +8 -0
- package/script/utils/src/mod.d.ts.map +1 -0
- package/script/utils/src/mod.js +23 -0
- package/script/utils/src/types/json-query.d.ts +30 -0
- package/script/utils/src/types/json-query.d.ts.map +1 -0
- package/script/utils/src/types/json-query.js +2 -0
- package/script/utils/src/types/misc.d.ts +109 -0
- package/script/utils/src/types/misc.d.ts.map +1 -0
- package/script/utils/src/types/misc.js +3 -0
- package/script/utils/src/types/mod.d.ts +7 -0
- package/script/utils/src/types/mod.d.ts.map +1 -0
- package/script/utils/src/types/mod.js +19 -0
- package/script/utils/src/types/nominal.d.ts +87 -0
- package/script/utils/src/types/nominal.d.ts.map +1 -0
- package/script/utils/src/types/nominal.js +2 -0
- package/script/utils/src/types/typebox-helpers.d.ts +183 -0
- package/script/utils/src/types/typebox-helpers.d.ts.map +1 -0
- package/script/utils/src/types/typebox-helpers.js +277 -0
- package/script/utils/src/types/utils.d.ts +37 -0
- package/script/utils/src/types/utils.d.ts.map +1 -0
- package/script/utils/src/types/utils.js +52 -0
- package/script/utils/src/types/validators/algorand.d.ts +31 -0
- package/script/utils/src/types/validators/algorand.d.ts.map +1 -0
- package/script/utils/src/types/validators/algorand.js +98 -0
- package/script/utils/src/types/validators/cardano.d.ts +26 -0
- package/script/utils/src/types/validators/cardano.d.ts.map +1 -0
- package/script/utils/src/types/validators/cardano.js +121 -0
- package/script/utils/src/types/validators/mina.d.ts +15 -0
- package/script/utils/src/types/validators/mina.d.ts.map +1 -0
- package/script/utils/src/types/validators/mina.js +51 -0
- package/script/utils/src/types/validators/minicbor.d.ts +98 -0
- package/script/utils/src/types/validators/minicbor.d.ts.map +1 -0
- package/script/utils/src/types/validators/minicbor.js +337 -0
- package/script/utils/src/types/validators/mod.d.ts +3 -0
- package/script/utils/src/types/validators/mod.d.ts.map +1 -0
- package/script/utils/src/types/validators/mod.js +18 -0
- package/script/utils/src/types/validators/utils.d.ts +6 -0
- package/script/utils/src/types/validators/utils.d.ts.map +1 -0
- package/script/utils/src/types/validators/utils.js +31 -0
- package/script/utils/src/viem.d.ts +6 -0
- package/script/utils/src/viem.d.ts.map +1 -0
- package/script/utils/src/viem.js +19 -0
- package/script/wallets/src/IProvider.d.ts +48 -0
- package/script/wallets/src/IProvider.d.ts.map +1 -0
- package/script/wallets/src/IProvider.js +10 -0
- package/script/wallets/src/avail/avail.d.ts +28 -0
- package/script/wallets/src/avail/avail.d.ts.map +1 -0
- package/script/wallets/src/avail/avail.js +70 -0
- package/script/wallets/src/avail/wrapper.d.ts +6 -0
- package/script/wallets/src/avail/wrapper.d.ts.map +1 -0
- package/script/wallets/src/avail/wrapper.js +34 -0
- package/script/wallets/src/cardano/cardano.d.ts +30 -0
- package/script/wallets/src/cardano/cardano.d.ts.map +1 -0
- package/script/wallets/src/cardano/cardano.js +163 -0
- package/script/wallets/src/cardano/wrapper.d.ts +7 -0
- package/script/wallets/src/cardano/wrapper.d.ts.map +1 -0
- package/script/wallets/src/cardano/wrapper.js +26 -0
- package/script/wallets/src/evm/ethers.d.ts +28 -0
- package/script/wallets/src/evm/ethers.d.ts.map +1 -0
- package/script/wallets/src/evm/ethers.js +84 -0
- package/script/wallets/src/evm/injected.d.ts +74 -0
- package/script/wallets/src/evm/injected.d.ts.map +1 -0
- package/script/wallets/src/evm/injected.js +360 -0
- package/script/wallets/src/evm/types.d.ts +3 -0
- package/script/wallets/src/evm/types.d.ts.map +1 -0
- package/script/wallets/src/evm/types.js +4 -0
- package/script/wallets/src/evm/wrapper-ethers.d.ts +6 -0
- package/script/wallets/src/evm/wrapper-ethers.d.ts.map +1 -0
- package/script/wallets/src/evm/wrapper-ethers.js +41 -0
- package/script/wallets/src/evm/wrapper-injected.d.ts +7 -0
- package/script/wallets/src/evm/wrapper-injected.d.ts.map +1 -0
- package/script/wallets/src/evm/wrapper-injected.js +84 -0
- package/script/wallets/src/midnight/midnight.d.ts +26 -0
- package/script/wallets/src/midnight/midnight.d.ts.map +1 -0
- package/script/wallets/src/midnight/midnight.js +117 -0
- package/script/wallets/src/midnight/wrapper.d.ts +7 -0
- package/script/wallets/src/midnight/wrapper.d.ts.map +1 -0
- package/script/wallets/src/midnight/wrapper.js +26 -0
- package/script/wallets/src/mina/mina.d.ts +28 -0
- package/script/wallets/src/mina/mina.d.ts.map +1 -0
- package/script/wallets/src/mina/mina.js +138 -0
- package/script/wallets/src/mina/wrapper.d.ts +6 -0
- package/script/wallets/src/mina/wrapper.d.ts.map +1 -0
- package/script/wallets/src/mina/wrapper.js +15 -0
- package/script/wallets/src/mod.d.ts +8 -0
- package/script/wallets/src/mod.d.ts.map +1 -0
- package/script/wallets/src/mod.js +26 -0
- package/script/wallets/src/paima.d.ts +104 -0
- package/script/wallets/src/paima.d.ts.map +1 -0
- package/script/wallets/src/paima.js +253 -0
- package/script/wallets/src/types.d.ts +49 -0
- package/script/wallets/src/types.d.ts.map +1 -0
- package/script/wallets/src/types.js +2 -0
- package/script/wallets/src/utils.d.ts +41 -0
- package/script/wallets/src/utils.d.ts.map +1 -0
- package/script/wallets/src/utils.js +81 -0
- package/script/wallets/src/wallet-modes.d.ts +49 -0
- package/script/wallets/src/wallet-modes.d.ts.map +1 -0
- package/script/wallets/src/wallet-modes.js +29 -0
- package/script/wallets/src/wallets.d.ts +5 -0
- package/script/wallets/src/wallets.d.ts.map +1 -0
- package/script/wallets/src/wallets.js +58 -0
- package/script/wallets/src/windows.d.ts +5 -0
- package/script/wallets/src/windows.d.ts.map +1 -0
- package/script/wallets/src/windows.js +12 -0
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { Type } from "@sinclair/typebox";
|
|
2
|
+
import { toKeyedJsonGrammar } from "../grammar.js";
|
|
3
|
+
export const BatcherGrammarPrefix = {
|
|
4
|
+
batcherInput: "&B",
|
|
5
|
+
};
|
|
6
|
+
export const BatcherGrammar = {
|
|
7
|
+
[BatcherGrammarPrefix.batcherInput]: [
|
|
8
|
+
// NOTE: we represent inputs in a batcher as string to avoid the entire batch failing if just one input is malformed
|
|
9
|
+
["input", Type.Array(Type.String())],
|
|
10
|
+
],
|
|
11
|
+
};
|
|
12
|
+
export const KeyedBatcherGrammar = toKeyedJsonGrammar(BatcherGrammar);
|
|
13
|
+
export const BuiltinGrammarPrefix = {
|
|
14
|
+
createAccount: "&createAccount",
|
|
15
|
+
linkAddress: "&linkAddress",
|
|
16
|
+
unlinkAddress: "&unlinkAddress",
|
|
17
|
+
};
|
|
18
|
+
export const BuiltinGrammar = {
|
|
19
|
+
[BuiltinGrammarPrefix.createAccount]: [],
|
|
20
|
+
[BuiltinGrammarPrefix.linkAddress]: [
|
|
21
|
+
["account_id", Type.Number()],
|
|
22
|
+
["signature_from_primary", Type.String()],
|
|
23
|
+
["primary_address_type", Type.Number()],
|
|
24
|
+
["new_address", Type.String()],
|
|
25
|
+
["signature_from_new_address", Type.String()],
|
|
26
|
+
["new_address_type", Type.Number()],
|
|
27
|
+
["is_new_primary", Type.Boolean()],
|
|
28
|
+
],
|
|
29
|
+
[BuiltinGrammarPrefix.unlinkAddress]: [
|
|
30
|
+
["account_id", Type.Number()],
|
|
31
|
+
// if empty, unlink self.
|
|
32
|
+
["signature_from_primary", Type.String()],
|
|
33
|
+
["primary_address_type", Type.Number()],
|
|
34
|
+
["target_address", Type.String()],
|
|
35
|
+
["target_address_type", Type.Number()],
|
|
36
|
+
["new_primary_address", Type.String()],
|
|
37
|
+
["new_primary_address_type", Type.Number()],
|
|
38
|
+
],
|
|
39
|
+
};
|
|
40
|
+
export const KeyedBuiltinGrammar = toKeyedJsonGrammar(BuiltinGrammar);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/concise/src/v2/builtins/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { CommandTuples, FullJsonGrammar, GrammarDefinition } from "./types.js";
|
|
2
|
+
export declare function toFullJsonGrammar<Grammar extends GrammarDefinition>(grammar: CommandTuples<Grammar>): FullJsonGrammar<Grammar>;
|
|
3
|
+
export declare function toKeyedJsonGrammar<Grammar extends GrammarDefinition>(grammar: Grammar): CommandTuples<Grammar>;
|
|
4
|
+
/**
|
|
5
|
+
* Useful for quickly checking if an input data is of a specific type without parsing the full object
|
|
6
|
+
*/
|
|
7
|
+
export declare function usesPrefix(inputData: string, prefix: string): boolean;
|
|
8
|
+
//# sourceMappingURL=grammar.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"grammar.d.ts","sourceRoot":"","sources":["../../../../src/concise/src/v2/grammar.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,aAAa,EACb,eAAe,EACf,iBAAiB,EAClB,MAAM,YAAY,CAAC;AAEpB,wBAAgB,iBAAiB,CAAC,OAAO,SAAS,iBAAiB,EACjE,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,GAC9B,eAAe,CAAC,OAAO,CAAC,CAG1B;AACD,wBAAgB,kBAAkB,CAAC,OAAO,SAAS,iBAAiB,EAClE,OAAO,EAAE,OAAO,GACf,aAAa,CAAC,OAAO,CAAC,CASxB;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAErE"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Type } from "@sinclair/typebox";
|
|
2
|
+
export function toFullJsonGrammar(grammar) {
|
|
3
|
+
const tuples = Object.values(grammar);
|
|
4
|
+
return Type.Intersect(tuples);
|
|
5
|
+
}
|
|
6
|
+
export function toKeyedJsonGrammar(grammar) {
|
|
7
|
+
const keyedTypes = Object.fromEntries(Object.entries(grammar).map(([command, params]) => {
|
|
8
|
+
const paramTypes = params.map(([_, paramType]) => paramType);
|
|
9
|
+
const tupleType = Type.Tuple([Type.Literal(command), ...paramTypes]);
|
|
10
|
+
return [command, tupleType];
|
|
11
|
+
}));
|
|
12
|
+
return keyedTypes;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Useful for quickly checking if an input data is of a specific type without parsing the full object
|
|
16
|
+
*/
|
|
17
|
+
export function usesPrefix(inputData, prefix) {
|
|
18
|
+
return inputData.startsWith(`["${prefix}`);
|
|
19
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { StaticDecode, TSchema } from "@sinclair/typebox";
|
|
2
|
+
import type { CommandTuple, CommandTuples, GrammarDefinition, ParamToData, ParseInputResult } from "./types.js";
|
|
3
|
+
export declare function parseStmInput<Grammar extends GrammarDefinition, Prefix extends keyof Grammar & string>(inputData: string, grammarDefinition: Grammar, keyedJsonGrammar: CommandTuples<Grammar>): ParseInputResult<Grammar, Prefix>;
|
|
4
|
+
export declare function parseRawStmInput<Grammar extends GrammarDefinition, Prefix extends keyof Grammar & string>(parsedData: any[], grammarDefinition: Grammar, keyedJsonGrammar: CommandTuples<Grammar>): ParseInputResult<Grammar, Prefix>;
|
|
5
|
+
export declare function generateStmInput<Grammar extends GrammarDefinition, Prefix extends keyof Grammar & string>(grammar: Grammar, prefix: Prefix, data: ParamToData<Grammar[Prefix]>): StaticDecode<CommandTuples<Grammar>[Prefix]>;
|
|
6
|
+
export declare function generateRawStmInput<GrammarEntry extends readonly Readonly<[string, TSchema]>[], Prefix extends string>(grammar: GrammarEntry, prefix: Prefix, data: ParamToData<GrammarEntry>): StaticDecode<CommandTuple<Prefix, GrammarEntry>>;
|
|
7
|
+
//# sourceMappingURL=inputs.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inputs.d.ts","sourceRoot":"","sources":["../../../../src/concise/src/v2/inputs.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,KAAK,EACV,YAAY,EACZ,aAAa,EACb,iBAAiB,EACjB,WAAW,EACX,gBAAgB,EACjB,MAAM,YAAY,CAAC;AAEpB,wBAAgB,aAAa,CAC3B,OAAO,SAAS,iBAAiB,EACjC,MAAM,SAAS,MAAM,OAAO,GAAG,MAAM,EAErC,SAAS,EAAE,MAAM,EACjB,iBAAiB,EAAE,OAAO,EAC1B,gBAAgB,EAAE,aAAa,CAAC,OAAO,CAAC,GACvC,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,CAMnC;AACD,wBAAgB,gBAAgB,CAC9B,OAAO,SAAS,iBAAiB,EACjC,MAAM,SAAS,MAAM,OAAO,GAAG,MAAM,EAErC,UAAU,EAAE,GAAG,EAAE,EACjB,iBAAiB,EAAE,OAAO,EAC1B,gBAAgB,EAAE,aAAa,CAAC,OAAO,CAAC,GACvC,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,CA6BnC;AAED,wBAAgB,gBAAgB,CAC9B,OAAO,SAAS,iBAAiB,EACjC,MAAM,SAAS,MAAM,OAAO,GAAG,MAAM,EAErC,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GACjC,YAAY,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAG9C;AAED,wBAAgB,mBAAmB,CACjC,YAAY,SAAS,SAAS,QAAQ,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAAE,EAC3D,MAAM,SAAS,MAAM,EAErB,OAAO,EAAE,YAAY,EACrB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,WAAW,CAAC,YAAY,CAAC,GAC9B,YAAY,CAAC,YAAY,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAGlD"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { Value } from "@sinclair/typebox/value";
|
|
2
|
+
export function parseStmInput(inputData, grammarDefinition, keyedJsonGrammar) {
|
|
3
|
+
return parseRawStmInput(JSON.parse(inputData), grammarDefinition, keyedJsonGrammar);
|
|
4
|
+
}
|
|
5
|
+
export function parseRawStmInput(parsedData, grammarDefinition, keyedJsonGrammar) {
|
|
6
|
+
if (typeof parsedData !== "object") {
|
|
7
|
+
throw new Error(`Input is not valid JSON`);
|
|
8
|
+
}
|
|
9
|
+
if (!Array.isArray(parsedData)) {
|
|
10
|
+
throw new Error(`Input is not a valid JSON array`);
|
|
11
|
+
}
|
|
12
|
+
const prefix = parsedData[0];
|
|
13
|
+
if (typeof prefix !== "string") {
|
|
14
|
+
throw new Error(`Input does not have a valid prefix`);
|
|
15
|
+
}
|
|
16
|
+
if (!(prefix in keyedJsonGrammar)) {
|
|
17
|
+
throw new Error(`Input has unknown prefix ${prefix}`);
|
|
18
|
+
}
|
|
19
|
+
const parsedInput = Value.Parse(keyedJsonGrammar[prefix], parsedData);
|
|
20
|
+
const parsedInputObj = grammarDefinition[prefix].reduce((acc, [key], idx) => {
|
|
21
|
+
acc[key] = parsedInput[idx + 1];
|
|
22
|
+
return acc;
|
|
23
|
+
}, {});
|
|
24
|
+
return {
|
|
25
|
+
prefix: prefix,
|
|
26
|
+
grammar: keyedJsonGrammar[prefix],
|
|
27
|
+
data: parsedInputObj,
|
|
28
|
+
}; // typescript can't infer this
|
|
29
|
+
}
|
|
30
|
+
export function generateStmInput(grammar, prefix, data) {
|
|
31
|
+
const tuple = [prefix, ...grammar[prefix].map((x) => data[x[0]])];
|
|
32
|
+
return tuple;
|
|
33
|
+
}
|
|
34
|
+
export function generateRawStmInput(grammar, prefix, data) {
|
|
35
|
+
const tuple = [prefix, ...grammar.map((x) => data[x[0]])];
|
|
36
|
+
return tuple;
|
|
37
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../../../src/concise/src/v2/mod.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { TTuple, TIntersect, TLiteral, StaticDecode, TSchema } from '@sinclair/typebox';
|
|
2
|
+
export type ExtractParameterTypes<T extends readonly Readonly<[string, TSchema]>[]> = {
|
|
3
|
+
[P in keyof T]: T[P] extends Readonly<[string, infer S extends TSchema]> ? S : never;
|
|
4
|
+
};
|
|
5
|
+
export type CommandTuple<Prefix extends string, T extends readonly Readonly<[string, TSchema]>[]> = TTuple<[TLiteral<Prefix>, ...ExtractParameterTypes<T>]>;
|
|
6
|
+
export type CommandTuples<T extends Record<string, readonly Readonly<[string, TSchema]>[]>> = {
|
|
7
|
+
[K in keyof T]: CommandTuple<K & string, T[K]>;
|
|
8
|
+
};
|
|
9
|
+
export type GrammarDefinition = Record<string, readonly Readonly<[string, TSchema]>[]>;
|
|
10
|
+
export type FullJsonGrammar<Grammar extends GrammarDefinition> = TIntersect<[
|
|
11
|
+
CommandTuples<Grammar>[keyof Grammar]
|
|
12
|
+
]>;
|
|
13
|
+
export type ParamToData<T extends readonly Readonly<[string, TSchema]>[]> = {
|
|
14
|
+
[K in T[number] as K[0]]: StaticDecode<K[1]>;
|
|
15
|
+
};
|
|
16
|
+
export type ParseInputResult<Grammar extends GrammarDefinition, Prefix extends keyof Grammar> = {
|
|
17
|
+
[P in Prefix]: {
|
|
18
|
+
prefix: P;
|
|
19
|
+
grammar: CommandTuples<Grammar>[P];
|
|
20
|
+
data: ParamToData<Grammar[P]>;
|
|
21
|
+
};
|
|
22
|
+
}[Prefix];
|
|
23
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/concise/src/v2/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE7F,MAAM,MAAM,qBAAqB,CAAC,CAAC,SAAS,SAAS,QAAQ,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAAE,IAAI;KACnF,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,QAAQ,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,SAAS,OAAO,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK;CACrF,CAAC;AACF,MAAM,MAAM,YAAY,CACtB,MAAM,SAAS,MAAM,EACrB,CAAC,SAAS,SAAS,QAAQ,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAAE,IAC9C,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,GAAG,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5D,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,SAAS,QAAQ,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC,IAAI;KAC3F,CAAC,IAAI,MAAM,CAAC,GAAG,YAAY,CAAC,CAAC,GAAG,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;CAC/C,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,SAAS,QAAQ,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;AACvF,MAAM,MAAM,eAAe,CAAC,OAAO,SAAS,iBAAiB,IAAI,UAAU,CACzE;IAAC,aAAa,CAAC,OAAO,CAAC,CAAC,MAAM,OAAO,CAAC;CAAC,CACxC,CAAC;AAEF,MAAM,MAAM,WAAW,CAAC,CAAC,SAAS,SAAS,QAAQ,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAAE,IAAI;KACzE,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAC7C,CAAC;AAEF,MAAM,MAAM,gBAAgB,CAAC,OAAO,SAAS,iBAAiB,EAAE,MAAM,SAAS,MAAM,OAAO,IAAI;KAC7F,CAAC,IAAI,MAAM,GAAG;QACb,MAAM,EAAE,CAAC,CAAC;QACV,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;QACnC,IAAI,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;KAC/B;CACF,CAAC,MAAM,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { NetworkBuilder, type NetworkBuilderData } from "./parts/network.js";
|
|
2
|
+
import { DeployedAddressBuilder, type DeployedAddressesBuilderData, type DeployedAddressesList } from "./parts/deployedAddresses.js";
|
|
3
|
+
import { type NetworkSyncProtocols, type PostBuildSyncProtocolBuilderData, SyncProtocolBuilder } from "./parts/syncProtocols.js";
|
|
4
|
+
import { PrimitiveBuilder, type PrimitiveBuilderData } from "./parts/primitive.js";
|
|
5
|
+
import { type PostBuildSecurityNamespaceData, SecurityNamespaceBuilder } from "./parts/securityNamespace.js";
|
|
6
|
+
export type ConfigBuilderData<Namespace extends undefined | Readonly<PostBuildSecurityNamespaceData>["securityNamespace"], Networks extends undefined | NetworkBuilderData, DeployedAddresses extends undefined | DeployedAddressesBuilderData["deployedAddresses"], SyncProtocols extends undefined | PostBuildSyncProtocolBuilderData, Primitives extends undefined | PrimitiveBuilderData["primitives"]> = Readonly<{
|
|
7
|
+
securityNamespace: Namespace;
|
|
8
|
+
allNetworks: Networks;
|
|
9
|
+
deployedAddresses: DeployedAddresses;
|
|
10
|
+
syncProtocols: SyncProtocols;
|
|
11
|
+
primitives: Primitives;
|
|
12
|
+
}>;
|
|
13
|
+
export declare class ConfigBuilder<const Namespace extends undefined | Readonly<PostBuildSecurityNamespaceData>["securityNamespace"] = undefined, const Networks extends undefined | NetworkBuilderData = undefined, const Deployments extends undefined | DeployedAddressesBuilderData["deployedAddresses"] = undefined, const SyncProtocols extends undefined | PostBuildSyncProtocolBuilderData = undefined, const Primitives extends undefined | PrimitiveBuilderData["primitives"] = undefined> {
|
|
14
|
+
data: ConfigBuilderData<Namespace, Networks, Deployments, SyncProtocols, Primitives>;
|
|
15
|
+
constructor();
|
|
16
|
+
setNamespace: import("./utils.js").ErrorIfDefined<Namespace, <const NewNamespace extends PostBuildSecurityNamespaceData>(namespace: (builder: SecurityNamespaceBuilder) => {
|
|
17
|
+
build: () => NewNamespace;
|
|
18
|
+
}) => ConfigBuilder<Readonly<NewNamespace>["securityNamespace"], Networks, Deployments, SyncProtocols, Primitives>, "setNamespace">;
|
|
19
|
+
buildNetworks: import("./utils.js").ErrorIfFalse<import("../../../utils/src/mod.js").Satisfies<readonly [NonNullable<Namespace>, undefined], [Namespace, Networks]>, <const NewNetworks extends NetworkBuilderData>(networks: (builder: NetworkBuilder) => {
|
|
20
|
+
build: () => NewNetworks;
|
|
21
|
+
}) => ConfigBuilder<Namespace, Readonly<NewNetworks>, Deployments, SyncProtocols, Primitives>, [Namespace, Networks], readonly [NonNullable<Namespace>, undefined], "buildNetworks and/or setNamespace">;
|
|
22
|
+
buildDeployments: import("./utils.js").ErrorIfFalse<import("../../../utils/src/mod.js").Satisfies<readonly [NonNullable<Networks>, undefined], [Networks, Deployments]>, <NewDeployments extends DeployedAddressesBuilderData<NonNullable<Networks>["networks"], DeployedAddressesList<NonNullable<Networks>["networks"]>>>(deployments: (builder: DeployedAddressBuilder<NonNullable<Networks>["networks"], DeployedAddressesList<NonNullable<Networks>["networks"]>>) => {
|
|
23
|
+
build: () => NewDeployments;
|
|
24
|
+
}) => ConfigBuilder<Namespace, Networks, NewDeployments["deployedAddresses"], SyncProtocols, Primitives>, [Networks, Deployments], readonly [NonNullable<Networks>, undefined], "buildDeployments and/or buildNetworks">;
|
|
25
|
+
buildSyncProtocols: import("./utils.js").ErrorIfFalse<import("../../../utils/src/mod.js").Satisfies<readonly [NonNullable<Deployments>, undefined], [Deployments, SyncProtocols]>, <NewSyncProtocols extends PostBuildSyncProtocolBuilderData<NonNullable<Networks>["networks"]>>(syncProtocols: (builder: SyncProtocolBuilder<NonNullable<Networks>["networks"], NonNullable<Deployments>>) => {
|
|
26
|
+
build: () => NewSyncProtocols;
|
|
27
|
+
}) => ConfigBuilder<Namespace, Networks, Deployments, NewSyncProtocols, Primitives>, [Deployments, SyncProtocols], readonly [NonNullable<Deployments>, undefined], "buildSyncProtocols and/or buildDeployments">;
|
|
28
|
+
buildPrimitives: import("./utils.js").ErrorIfFalse<import("../../../utils/src/mod.js").Satisfies<readonly [NonNullable<SyncProtocols>, undefined], [SyncProtocols, Primitives]>, <NewPrimitives extends PrimitiveBuilderData<NonNullable<Networks>["networks"], NetworkSyncProtocols<NonNullable<SyncProtocols>>>>(primitives: (builder: PrimitiveBuilder<NonNullable<Networks>["networks"], NonNullable<Deployments>, NetworkSyncProtocols<NonNullable<SyncProtocols>>>) => {
|
|
29
|
+
build: () => NewPrimitives;
|
|
30
|
+
}) => ConfigBuilder<Namespace, Networks, Deployments, SyncProtocols, NewPrimitives["primitives"]>, [SyncProtocols, Primitives], readonly [NonNullable<SyncProtocols>, undefined], "buildPrimitives and/or buildSyncProtocols">;
|
|
31
|
+
build: import("./utils.js").ErrorIfFalse<import("../../../utils/src/mod.js").Satisfies<NonNullable<Primitives>, Primitives>, () => typeof this.data, Primitives, NonNullable<Primitives>, "builder">;
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=builder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../../../src/config/src/config/builder.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { NetworkBuilder } from "./parts/network.js";
|
|
2
|
+
import { DeployedAddressBuilder, } from "./parts/deployedAddresses.js";
|
|
3
|
+
import { SyncProtocolBuilder, } from "./parts/syncProtocols.js";
|
|
4
|
+
import { PrimitiveBuilder, } from "./parts/primitive.js";
|
|
5
|
+
import { SecurityNamespaceBuilder, } from "./parts/securityNamespace.js";
|
|
6
|
+
import { onlyOnce, onlyValue } from "./utils.js";
|
|
7
|
+
export class ConfigBuilder {
|
|
8
|
+
data;
|
|
9
|
+
constructor() {
|
|
10
|
+
this.data = {
|
|
11
|
+
securityNamespace: undefined,
|
|
12
|
+
allNetworks: undefined,
|
|
13
|
+
deployedAddresses: undefined,
|
|
14
|
+
syncProtocols: undefined,
|
|
15
|
+
primitives: undefined,
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
setNamespace = onlyOnce({
|
|
19
|
+
key: () => this.data.securityNamespace,
|
|
20
|
+
name: "setNamespace",
|
|
21
|
+
build: (namespace) => {
|
|
22
|
+
const builder = new SecurityNamespaceBuilder();
|
|
23
|
+
this.data.securityNamespace =
|
|
24
|
+
namespace(builder).build().securityNamespace;
|
|
25
|
+
return this;
|
|
26
|
+
},
|
|
27
|
+
});
|
|
28
|
+
buildNetworks = onlyValue({
|
|
29
|
+
value: () => ({}),
|
|
30
|
+
target: () => ({}),
|
|
31
|
+
name: "buildNetworks and/or setNamespace",
|
|
32
|
+
build: (networks) => {
|
|
33
|
+
const builder = new NetworkBuilder();
|
|
34
|
+
this.data.allNetworks = networks(builder).build();
|
|
35
|
+
return this;
|
|
36
|
+
},
|
|
37
|
+
});
|
|
38
|
+
buildDeployments = onlyValue({
|
|
39
|
+
value: () => ({}),
|
|
40
|
+
target: () => ({}),
|
|
41
|
+
name: "buildDeployments and/or buildNetworks",
|
|
42
|
+
build: (deployments) => {
|
|
43
|
+
const builder = new DeployedAddressBuilder(this.data.allNetworks);
|
|
44
|
+
this.data.deployedAddresses =
|
|
45
|
+
deployments(builder).build().deployedAddresses;
|
|
46
|
+
return this;
|
|
47
|
+
},
|
|
48
|
+
});
|
|
49
|
+
buildSyncProtocols = onlyValue({
|
|
50
|
+
value: () => ({}),
|
|
51
|
+
target: () => ({}),
|
|
52
|
+
name: "buildSyncProtocols and/or buildDeployments",
|
|
53
|
+
build: (syncProtocols) => {
|
|
54
|
+
const builder = new SyncProtocolBuilder(this.data.allNetworks, { deployedAddresses: this.data.deployedAddresses });
|
|
55
|
+
this.data.syncProtocols = syncProtocols(builder).build();
|
|
56
|
+
return this;
|
|
57
|
+
},
|
|
58
|
+
});
|
|
59
|
+
buildPrimitives = onlyValue({
|
|
60
|
+
value: () => ({}),
|
|
61
|
+
target: () => ({}),
|
|
62
|
+
name: "buildPrimitives and/or buildSyncProtocols",
|
|
63
|
+
build: (primitives) => {
|
|
64
|
+
const syncProtocols = this.data.syncProtocols;
|
|
65
|
+
const builder = new PrimitiveBuilder(this.data.allNetworks, { deployedAddresses: this.data.deployedAddresses }, {
|
|
66
|
+
...({
|
|
67
|
+
[syncProtocols.main.syncProtocol.name]: syncProtocols.main,
|
|
68
|
+
}),
|
|
69
|
+
...syncProtocols.parallel,
|
|
70
|
+
});
|
|
71
|
+
this.data.primitives =
|
|
72
|
+
primitives(builder).build().primitives;
|
|
73
|
+
return this;
|
|
74
|
+
},
|
|
75
|
+
});
|
|
76
|
+
build = onlyValue({
|
|
77
|
+
value: () => ({}),
|
|
78
|
+
target: () => ({}),
|
|
79
|
+
name: "builder",
|
|
80
|
+
build: () => this.data,
|
|
81
|
+
});
|
|
82
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { TypeErrorMessage } from "../../../utils/src/mod.js";
|
|
2
|
+
import type { Abi, AbiEvent, AbiEventParameter, AbiFunction, AbiParameter, ExtractAbiEvents } from "abitype";
|
|
3
|
+
type SignaturesFor<Event extends AbiEvent, Signature> = Event extends any ? SignatureAbiItem<Event> extends Signature ? Event : never : never;
|
|
4
|
+
export declare function getEvmEvent<const abi extends Abi, const Signature extends SignatureAbiItem<ExtractAbiEvents<abi>>>(abi: abi, signature: Signature): SignaturesFor<ExtractAbiEvents<abi>, Signature>;
|
|
5
|
+
type ValidateName<name extends string, checkCharacters extends boolean = false> = name extends `${string}${" "}${string}` ? TypeErrorMessage<`Identifier "${name}" cannot contain whitespace.`> : IsSolidityKeyword<name> extends true ? TypeErrorMessage<`"${name}" is a protected Solidity keyword.`> : name extends `${number}` ? TypeErrorMessage<`Identifier "${name}" cannot be a number string.`> : name extends `${number}${string}` ? TypeErrorMessage<`Identifier "${name}" cannot start with a number.`> : checkCharacters extends true ? IsValidCharacter<name> extends true ? name : TypeErrorMessage<`"${name}" contains invalid character.`> : name;
|
|
6
|
+
type IsValidCharacter<character extends string> = character extends `${ValidCharacters}${infer tail}` ? tail extends "" ? true : IsValidCharacter<tail> : false;
|
|
7
|
+
type ValidCharacters = "A" | "B" | "C" | "D" | "E" | "F" | "G" | "H" | "I" | "J" | "K" | "L" | "M" | "N" | "O" | "P" | "Q" | "R" | "S" | "T" | "U" | "V" | "W" | "X" | "Y" | "Z" | "a" | "b" | "c" | "d" | "e" | "f" | "g" | "h" | "i" | "j" | "k" | "l" | "m" | "n" | "o" | "p" | "q" | "r" | "s" | "t" | "u" | "v" | "w" | "x" | "y" | "z" | "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9" | "_" | "$";
|
|
8
|
+
type IsSolidityKeyword<type extends string> = type extends SolidityKeywords ? true : false;
|
|
9
|
+
type SolidityKeywords = "after" | "alias" | "anonymous" | "apply" | "auto" | "byte" | "calldata" | "case" | "catch" | "constant" | "copyof" | "default" | "defined" | "error" | "event" | "external" | "false" | "final" | "function" | "immutable" | "implements" | "in" | "indexed" | "inline" | "internal" | "let" | "mapping" | "match" | "memory" | "mutable" | "null" | "of" | "override" | "partial" | "private" | "promise" | "public" | "pure" | "reference" | "relocatable" | "return" | "returns" | "sizeof" | "static" | "storage" | "struct" | "super" | "supports" | "switch" | "this" | "true" | "try" | "typedef" | "typeof" | "var" | "view" | "virtual" | `address${`[${string}]` | ""}` | `bool${`[${string}]` | ""}` | `string${`[${string}]` | ""}` | `tuple${`[${string}]` | ""}` | `bytes${number | ""}${`[${string}]` | ""}` | `${"u" | ""}int${number | ""}${`[${string}]` | ""}`;
|
|
10
|
+
type AssertName<name extends string> = ValidateName<name> extends infer invalidName extends string[] ? `[${invalidName[number]}]` : name;
|
|
11
|
+
type ExtractArray<abiParameter extends AbiParameter | AbiEventParameter> = abiParameter extends {
|
|
12
|
+
type: `tuple${infer array}`;
|
|
13
|
+
} ? array : "";
|
|
14
|
+
type TypesToCSV<T extends readonly (AbiParameter | AbiEventParameter)[]> = T extends readonly [
|
|
15
|
+
infer First extends AbiParameter | AbiEventParameter,
|
|
16
|
+
...infer Rest extends readonly (AbiParameter | AbiEventParameter)[]
|
|
17
|
+
] ? `${First extends {
|
|
18
|
+
components: infer Component extends readonly (AbiParameter | AbiEventParameter)[];
|
|
19
|
+
} ? `(${TypesToCSV<Component>})${ExtractArray<First>}` : First["type"]}${Rest["length"] extends 0 ? "" : `,${TypesToCSV<Rest>}`}` : "";
|
|
20
|
+
/**
|
|
21
|
+
* Formats an ABI item into a signature
|
|
22
|
+
*
|
|
23
|
+
* @param abiItem - ABI item
|
|
24
|
+
* @returns A signature
|
|
25
|
+
*
|
|
26
|
+
* @example
|
|
27
|
+
* type Result = SignatureAbiParameter({ name: 'foo', type: 'event', inputs: [{ type: 'uint256' }, { type: 'uint256' }] })
|
|
28
|
+
* // ^? type Result: foo(uint256,uint256)
|
|
29
|
+
*/
|
|
30
|
+
type SignatureAbiItem<abiItem extends AbiFunction | AbiEvent> = AbiFunction | AbiEvent extends abiItem ? string : `${AssertName<abiItem["name"]>}(${TypesToCSV<abiItem["inputs"]>})`;
|
|
31
|
+
export {};
|
|
32
|
+
//# sourceMappingURL=configCheck.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"configCheck.d.ts","sourceRoot":"","sources":["../../../../src/config/src/config/configCheck.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { toEventSignature } from "viem";
|
|
2
|
+
export function getEvmEvent(abi, signature) {
|
|
3
|
+
const events = abi.filter((item) => item.type === "event");
|
|
4
|
+
for (const event of events) {
|
|
5
|
+
const eventSig = toSignature(event);
|
|
6
|
+
if (eventSig === signature) {
|
|
7
|
+
return event;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
throw new Error(`Event signature ${signature} not found in ABI`);
|
|
11
|
+
}
|
|
12
|
+
const toSignature = (def) => {
|
|
13
|
+
return toEventSignature(def);
|
|
14
|
+
};
|
|
15
|
+
// TODO: This looks cool. Need to check the performance of `new RegExp` versus defined inline though.
|
|
16
|
+
// https://twitter.com/GabrielVergnaud/status/1622906834343366657
|
|
17
|
+
function execTyped(regex, string) {
|
|
18
|
+
const match = regex.exec(string);
|
|
19
|
+
return match?.groups;
|
|
20
|
+
}
|
|
21
|
+
// https://regexr.com/7f7rv
|
|
22
|
+
const tupleRegex = /^tuple(?<array>(\[(\d*)\])*)$/;
|
|
23
|
+
/**
|
|
24
|
+
* Formats an ABI function into a signature
|
|
25
|
+
* Function: https://docs.soliditylang.org/en/develop/abi-spec.html#function-selector
|
|
26
|
+
* Event: https://docs.soliditylang.org/en/develop/abi-spec.html#events
|
|
27
|
+
*
|
|
28
|
+
* @param abiItem - ABI item
|
|
29
|
+
* @returns A signature
|
|
30
|
+
*
|
|
31
|
+
* @example
|
|
32
|
+
* const signatureAbi = signatureAbiItem({ name: 'foo', type: 'event', inputs: [{ type: 'uint256' }, { type: 'uint256' }] })
|
|
33
|
+
* // ^? const signatureAbiItem: foo(uint256,uint256)
|
|
34
|
+
*/
|
|
35
|
+
function signatureAbiItem(abiItem) {
|
|
36
|
+
return `${abiItem.name}(${abiItem.inputs.map((param) => signatureAbiParameter(param)).join(",")})`;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Formats an ABI parameter into a piece of a signature
|
|
40
|
+
*
|
|
41
|
+
* @param abiParameter - ABI parameter
|
|
42
|
+
* @returns A piece of a signature
|
|
43
|
+
*
|
|
44
|
+
* @example
|
|
45
|
+
* const signatureAbi = signatureAbiParameter({ type: 'uint256' })
|
|
46
|
+
* // ^? const signatureAbiItem: uint256
|
|
47
|
+
*/
|
|
48
|
+
function signatureAbiParameter(abiParameter) {
|
|
49
|
+
let type = abiParameter.type;
|
|
50
|
+
if (tupleRegex.test(abiParameter.type) && "components" in abiParameter) {
|
|
51
|
+
type = "(";
|
|
52
|
+
const length = abiParameter.components.length;
|
|
53
|
+
for (let i = 0; i < length; i++) {
|
|
54
|
+
const component = abiParameter.components[i];
|
|
55
|
+
type += signatureAbiParameter(component);
|
|
56
|
+
if (i < length - 1)
|
|
57
|
+
type += ",";
|
|
58
|
+
}
|
|
59
|
+
const result = execTyped(tupleRegex, abiParameter.type);
|
|
60
|
+
type += `)${result?.array ?? ""}`;
|
|
61
|
+
return signatureAbiParameter({
|
|
62
|
+
...abiParameter,
|
|
63
|
+
type,
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
return abiParameter.type;
|
|
67
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { type Operation } from "effection";
|
|
2
|
+
import type { ViemNetworkList } from "./parts/network.js";
|
|
3
|
+
import type { ConfigNetworkEvm } from "../schema/network/evm.js";
|
|
4
|
+
import type { SecurityNamespace } from "../schema/namespace.js";
|
|
5
|
+
import type { Chain, ChainFormatters } from "viem";
|
|
6
|
+
export declare const PaimaStaticConfigContext: import("effection").Context<GlobalContext>;
|
|
7
|
+
/**
|
|
8
|
+
* Careful: only include fields that don't change at runtime
|
|
9
|
+
*/
|
|
10
|
+
type GlobalContext = {
|
|
11
|
+
viemNetworks: ViemNetworkList;
|
|
12
|
+
securityNamespace: SecurityNamespace;
|
|
13
|
+
};
|
|
14
|
+
export declare function withEffectstreamStaticConfig(config: {
|
|
15
|
+
securityNamespace: SecurityNamespace;
|
|
16
|
+
allNetworks: {
|
|
17
|
+
viemNetworks: ViemNetworkList;
|
|
18
|
+
};
|
|
19
|
+
}, continuation: () => Operation<void>): Generator<import("effection").Instruction, void, any>;
|
|
20
|
+
export declare function usePaimaStaticConfig(): Operation<GlobalContext>;
|
|
21
|
+
export declare function getViemNetwork(network: ConfigNetworkEvm): Operation<Chain<ChainFormatters>>;
|
|
22
|
+
export {};
|
|
23
|
+
//# sourceMappingURL=context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../../src/config/src/config/context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,SAAS,EAAE,MAAM,WAAW,CAAC;AAC1D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAE1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AAEnD,eAAO,MAAM,wBAAwB,4CAEpC,CAAC;AAEF;;GAEG;AACH,KAAK,aAAa,GAAG;IACnB,YAAY,EAAE,eAAe,CAAC;IAC9B,iBAAiB,EAAE,iBAAiB,CAAC;CACtC,CAAC;AAEF,wBAAiB,4BAA4B,CAC3C,MAAM,EAAE;IACN,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,WAAW,EAAE;QACX,YAAY,EAAE,eAAe,CAAC;KAC/B,CAAC;CACH,EACD,YAAY,EAAE,MAAM,SAAS,CAAC,IAAI,CAAC,yDASpC;AAED,wBAAiB,oBAAoB,IAAI,SAAS,CAAC,aAAa,CAAC,CAMhE;AAED,wBAAiB,cAAc,CAC7B,OAAO,EAAE,gBAAgB,GACxB,SAAS,CACV,KAAK,CAAC,eAAe,CAAC,CACvB,CAQA"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { createContext } from "effection";
|
|
2
|
+
import { ConfigNetworkToViem } from "../schema/network/evm.js";
|
|
3
|
+
export const PaimaStaticConfigContext = createContext("paima:static-config");
|
|
4
|
+
export function* withEffectstreamStaticConfig(config, continuation) {
|
|
5
|
+
yield* PaimaStaticConfigContext.set({
|
|
6
|
+
securityNamespace: config.securityNamespace,
|
|
7
|
+
viemNetworks: config.allNetworks.viemNetworks,
|
|
8
|
+
});
|
|
9
|
+
yield* continuation();
|
|
10
|
+
}
|
|
11
|
+
export function* usePaimaStaticConfig() {
|
|
12
|
+
const config = yield* PaimaStaticConfigContext.get();
|
|
13
|
+
if (!config) {
|
|
14
|
+
throw new Error("Static config not set");
|
|
15
|
+
}
|
|
16
|
+
return config;
|
|
17
|
+
}
|
|
18
|
+
export function* getViemNetwork(network) {
|
|
19
|
+
const staticConfig = yield* usePaimaStaticConfig();
|
|
20
|
+
const viemNetwork = staticConfig.viemNetworks[network.name];
|
|
21
|
+
if (viemNetwork == null) {
|
|
22
|
+
return ConfigNetworkToViem(network);
|
|
23
|
+
}
|
|
24
|
+
return viemNetwork;
|
|
25
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export * from "./configCheck.js";
|
|
2
|
+
export * from "./builder.js";
|
|
3
|
+
export * from "./context.js";
|
|
4
|
+
export { toSyncProtocolWithNetwork } from "./utils.js";
|
|
5
|
+
export type { NetworkConfig } from "./parts/network.js";
|
|
6
|
+
export type { DecoratorSyncProtocolConfig, MainSyncProtocolConfig, ParallelSyncProtocolConfig, } from "./parts/syncProtocols.js";
|
|
7
|
+
//# sourceMappingURL=mod.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../../../src/config/src/config/mod.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,OAAO,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAC;AACvD,YAAY,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,YAAY,EACV,2BAA2B,EAC3B,sBAAsB,EACtB,0BAA0B,GAC3B,MAAM,0BAA0B,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { NetworkBuilderData, NetworkList } from "./network.js";
|
|
2
|
+
type ContractName = string;
|
|
3
|
+
type Address = string;
|
|
4
|
+
export type DeployedAddressConfig = Record<ContractName, Address>;
|
|
5
|
+
export type DeployedAddressesList<Networks extends NetworkList> = Partial<Record<Networks[string]["name"], DeployedAddressConfig>>;
|
|
6
|
+
export type DeployedAddressesBuilderData<Networks extends NetworkList = {}, DeployedAddresses extends DeployedAddressesList<Networks> = {}> = {
|
|
7
|
+
deployedAddresses: DeployedAddresses;
|
|
8
|
+
};
|
|
9
|
+
export declare class DeployedAddressBuilder<const Networks extends NetworkList = {}, const DeployedAddresses extends DeployedAddressesList<Networks> = {}> {
|
|
10
|
+
readonly networks: NetworkBuilderData<Networks, any>;
|
|
11
|
+
data: DeployedAddressesBuilderData<Networks, DeployedAddresses>;
|
|
12
|
+
constructor(networks: NetworkBuilderData<Networks, any>);
|
|
13
|
+
addDeployment<const Network extends Networks[keyof Networks], const Deployments extends DeployedAddressConfig>(genNetwork: (networks: Networks) => Network, genDeployments: (network: Network) => Deployments): DeployedAddressBuilder<Networks, DeployedAddresses & Record<Network["name"], Deployments>>;
|
|
14
|
+
build(): typeof this.data;
|
|
15
|
+
}
|
|
16
|
+
export {};
|
|
17
|
+
//# sourceMappingURL=deployedAddresses.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deployedAddresses.d.ts","sourceRoot":"","sources":["../../../../../src/config/src/config/parts/deployedAddresses.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAIpE,KAAK,YAAY,GAAG,MAAM,CAAC;AAC3B,KAAK,OAAO,GAAG,MAAM,CAAC;AACtB,MAAM,MAAM,qBAAqB,GAAG,MAAM,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;AAElE,MAAM,MAAM,qBAAqB,CAAC,QAAQ,SAAS,WAAW,IAAI,OAAO,CACvE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,EAAE,qBAAqB,CAAC,CACxD,CAAC;AACF,MAAM,MAAM,4BAA4B,CACtC,QAAQ,SAAS,WAAW,GAAG,EAAE,EACjC,iBAAiB,SAAS,qBAAqB,CAAC,QAAQ,CAAC,GAAG,EAAE,IAC5D;IACF,iBAAiB,EAAE,iBAAiB,CAAC;CACtC,CAAC;AAEF,qBAAa,sBAAsB,CACjC,KAAK,CAAC,QAAQ,SAAS,WAAW,GAAG,EAAE,EACvC,KAAK,CAAC,iBAAiB,SAAS,qBAAqB,CAAC,QAAQ,CAAC,GAAG,EAAE;IAKlE,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC,QAAQ,EAAE,GAAG,CAAC;IAHtD,IAAI,EAAE,4BAA4B,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC;gBAGrD,QAAQ,EAAE,kBAAkB,CAAC,QAAQ,EAAE,GAAG,CAAC;IAQtD,aAAa,CACX,KAAK,CAAC,OAAO,SAAS,QAAQ,CAAC,MAAM,QAAQ,CAAC,EAC9C,KAAK,CAAC,WAAW,SAAS,qBAAqB,EAE/C,UAAU,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,OAAO,EAC3C,cAAc,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,WAAW,GAChD,sBAAsB,CACvB,QAAQ,EACR,iBAAiB,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC,CACzD;IAWD,KAAK,IAAI,OAAO,IAAI,CAAC,IAAI;CAG1B"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export class DeployedAddressBuilder {
|
|
2
|
+
networks;
|
|
3
|
+
data;
|
|
4
|
+
constructor(networks) {
|
|
5
|
+
this.networks = networks;
|
|
6
|
+
this.data = {
|
|
7
|
+
deployedAddresses: {},
|
|
8
|
+
};
|
|
9
|
+
}
|
|
10
|
+
// @bound
|
|
11
|
+
addDeployment(genNetwork, genDeployments) {
|
|
12
|
+
const network = genNetwork(this.networks.networks);
|
|
13
|
+
const deployments = genDeployments(network);
|
|
14
|
+
this.data.deployedAddresses[network.name] = {
|
|
15
|
+
...(this.data.deployedAddresses[network.name] ?? {}),
|
|
16
|
+
...deployments,
|
|
17
|
+
};
|
|
18
|
+
return this;
|
|
19
|
+
}
|
|
20
|
+
// @bound
|
|
21
|
+
build() {
|
|
22
|
+
return this.data;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { MergeIntersects } from "../../../../utils/src/mod.js";
|
|
2
|
+
import type { Static } from "@sinclair/typebox";
|
|
3
|
+
import { ConfigNetworkAll, type MapNetworkTypes } from "../../schema/mod.js";
|
|
4
|
+
import type { Chain, ChainFormatters } from "viem";
|
|
5
|
+
export type NetworkBuilderData<Networks extends NetworkList = {}, ViemNetworks extends ViemNetworkList = {}> = {
|
|
6
|
+
networks: Networks;
|
|
7
|
+
viemNetworks: ViemNetworks;
|
|
8
|
+
};
|
|
9
|
+
export type NetworkConfig<RequireDefaults extends boolean = true> = MergeIntersects<Static<ReturnType<typeof ConfigNetworkAll<RequireDefaults>>>>;
|
|
10
|
+
export type NetworkList = Record<string, NetworkConfig>;
|
|
11
|
+
export type ViemNetworkList = Record<string, Chain>;
|
|
12
|
+
export declare class NetworkBuilder<const Networks extends NetworkList = {}, const ViemNetworks extends ViemNetworkList = {}> {
|
|
13
|
+
data: NetworkBuilderData<Networks, ViemNetworks>;
|
|
14
|
+
constructor();
|
|
15
|
+
addNetwork<const Network extends NetworkConfig<false>>(network: Network): NetworkBuilder<Networks & Record<Network["name"], Network & NetworkConfig<true>>, ViemNetworks>;
|
|
16
|
+
addViemNetwork<formatters extends ChainFormatters, const chain extends Chain<formatters>>(chain: chain): NetworkBuilder<Networks & Record<chain["name"], MapNetworkTypes<chain>>, ViemNetworks & Record<chain["name"], chain>>;
|
|
17
|
+
build(): typeof this.data;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=network.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"network.d.ts","sourceRoot":"","sources":["../../../../../src/config/src/config/parts/network.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EACL,gBAAgB,EAChB,KAAK,eAAe,EAErB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AAInD,MAAM,MAAM,kBAAkB,CAC5B,QAAQ,SAAS,WAAW,GAAG,EAAE,EACjC,YAAY,SAAS,eAAe,GAAG,EAAE,IACvC;IACF,QAAQ,EAAE,QAAQ,CAAC;IACnB,YAAY,EAAE,YAAY,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,aAAa,CAAC,eAAe,SAAS,OAAO,GAAG,IAAI,IAC9D,eAAe,CACb,MAAM,CAAC,UAAU,CAAC,OAAO,gBAAgB,CAAC,eAAe,CAAC,CAAC,CAAC,CAC7D,CAAC;AAEJ,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;AACxD,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AAEpD,qBAAa,cAAc,CACzB,KAAK,CAAC,QAAQ,SAAS,WAAW,GAAG,EAAE,EACvC,KAAK,CAAC,YAAY,SAAS,eAAe,GAAG,EAAE;IAE/C,IAAI,EAAE,kBAAkB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;;IAUjD,UAAU,CAAC,KAAK,CAAC,OAAO,SAAS,aAAa,CAAC,KAAK,CAAC,EACnD,OAAO,EAAE,OAAO,GACf,cAAc,CACf,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,EACjE,YAAY,CACb;IAcD,cAAc,CACZ,UAAU,SAAS,eAAe,EAClC,KAAK,CAAC,KAAK,SAAS,KAAK,CAAC,UAAU,CAAC,EAErC,KAAK,EAAE,KAAK,GACX,cAAc,CACf,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC,EACxD,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,CAC5C;IAMD,KAAK,IAAI,OAAO,IAAI,CAAC,IAAI;CAG1B"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { ConfigNetworkAll, viemToConfigNetwork, } from "../../schema/mod.js";
|
|
2
|
+
import { Value } from "@sinclair/typebox/value";
|
|
3
|
+
export class NetworkBuilder {
|
|
4
|
+
data;
|
|
5
|
+
constructor() {
|
|
6
|
+
this.data = {
|
|
7
|
+
networks: {},
|
|
8
|
+
viemNetworks: {},
|
|
9
|
+
};
|
|
10
|
+
}
|
|
11
|
+
// @bound
|
|
12
|
+
addNetwork(network) {
|
|
13
|
+
if (network.name in this.data.networks) {
|
|
14
|
+
throw new Error(`Network ${network.name} is already included in your config`);
|
|
15
|
+
}
|
|
16
|
+
const withDefaults = Value.Default(ConfigNetworkAll(true), network);
|
|
17
|
+
this.data.networks[network.name] = withDefaults;
|
|
18
|
+
return this;
|
|
19
|
+
}
|
|
20
|
+
// @bound
|
|
21
|
+
addViemNetwork(chain) {
|
|
22
|
+
const config = viemToConfigNetwork(chain);
|
|
23
|
+
this.data.viemNetworks[config.name] = chain;
|
|
24
|
+
return this.addNetwork(config);
|
|
25
|
+
}
|
|
26
|
+
build() {
|
|
27
|
+
return this.data;
|
|
28
|
+
}
|
|
29
|
+
}
|