@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 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/wallets/src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,UAAU,EACV,kBAAkB,EAClB,SAAS,EACV,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAExD,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE3D,0BAAkB,UAAU;IAC1B,WAAW,IAAA;IACX,SAAS,IAAA;IACT,QAAQ,IAAA;IACR,OAAO,IAAA;IAGP,IAAI,IAAA;IACJ,OAAO,IAAA;CACR;AAED,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CASpD,CAAC;AAEF,eAAO,MAAM,aAAa;;;;;;;CASzB,CAAC;AAEF,KAAK,cAAc,CAAC,CAAC,IAAI,CAAC,SAAS,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AACnE,MAAM,MAAM,UAAU,CAAC,IAAI,SAAS,UAAU,IAAI,cAAc,CAC9D,CAAC,OAAO,aAAa,CAAC,CAAC,IAAI,CAAC,CAC7B,CAAC;AAEF,MAAM,MAAM,mBAAmB,CAAC,CAAC,IAC7B;IACA,IAAI,EAAE,MAAM,CAAC;CACd,GACC;IACA,UAAU,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC;CACjC,CAAC;AAEJ,wBAAsB,kBAAkB,IAAI,OAAO,CAAC;IAClD,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,UAAU,CAClC,OAAO,oBAAoB,CAAC,gBAAgB,CAC7C,CAAC;IACF,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,UAAU,CAAC,OAAO,gBAAgB,CAAC,gBAAgB,CAAC,CAAC;IAK3E,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,UAAU,CAAC,OAAO,aAAa,CAAC,gBAAgB,CAAC,CAAC;IACrE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,UAAU,CAAC,OAAO,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;CAC9E,CAAC,CASD;AACD,wBAAsB,qBAAqB,CAAC,GAAG,EAC7C,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,SAAS,GAAG,mBAAmB,CAAC,GAAG,CAAC,EAChD,SAAS,EAAE,kBAAkB,CAAC,GAAG,CAAC,GACjC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAiBzB;AAED,wBAAgB,YAAY,CAC1B,IAAI,SAAS,UAAU,EACvB,GAAG,SAAS,UAAU,CAAC,IAAI,CAAC,EAC5B,IAAI,SAAS,MAAM,SAAS,CAAC,GAAG,CAAC,EAEjC,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,IAAI,EACd,GAAG,IAAI,EAAE,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,GACxC,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAKlC"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
// import { AlgorandConnector } from "./algorand/algorand.ts";
|
|
2
|
+
import { EthersConnector } from "./evm/ethers.js";
|
|
3
|
+
import { EvmInjectedConnector } from "./evm/injected.js";
|
|
4
|
+
import { CardanoConnector } from "./cardano/cardano.js";
|
|
5
|
+
// import { PolkadotConnector } from "./polkadot/polkadot.ts";
|
|
6
|
+
import { MinaConnector } from "./mina/mina.js";
|
|
7
|
+
import { AvailConnector } from "./avail/avail.js";
|
|
8
|
+
import { MidnightConnector } from "./midnight/midnight.js";
|
|
9
|
+
export var WalletMode;
|
|
10
|
+
(function (WalletMode) {
|
|
11
|
+
WalletMode[WalletMode["EvmInjected"] = 0] = "EvmInjected";
|
|
12
|
+
WalletMode[WalletMode["EvmEthers"] = 1] = "EvmEthers";
|
|
13
|
+
WalletMode[WalletMode["Midnight"] = 2] = "Midnight";
|
|
14
|
+
WalletMode[WalletMode["Cardano"] = 3] = "Cardano";
|
|
15
|
+
// Polkadot,
|
|
16
|
+
// Algorand,
|
|
17
|
+
WalletMode[WalletMode["Mina"] = 4] = "Mina";
|
|
18
|
+
WalletMode[WalletMode["AvailJs"] = 5] = "AvailJs";
|
|
19
|
+
})(WalletMode || (WalletMode = {}));
|
|
20
|
+
export const WalletNameMap = {
|
|
21
|
+
[WalletMode.EvmInjected]: "EVM",
|
|
22
|
+
[WalletMode.EvmEthers]: "EVM",
|
|
23
|
+
[WalletMode.Midnight]: "Midnight",
|
|
24
|
+
[WalletMode.Cardano]: "Cardano",
|
|
25
|
+
// [WalletMode.Polkadot]: 'Polkadot',
|
|
26
|
+
// [WalletMode.Algorand]: 'Algorand',
|
|
27
|
+
[WalletMode.Mina]: "Mina",
|
|
28
|
+
[WalletMode.AvailJs]: "Avail",
|
|
29
|
+
};
|
|
30
|
+
export const WalletModeMap = {
|
|
31
|
+
[WalletMode.EvmInjected]: EvmInjectedConnector.instance(),
|
|
32
|
+
[WalletMode.EvmEthers]: EthersConnector.instance(),
|
|
33
|
+
[WalletMode.Midnight]: MidnightConnector.instance(),
|
|
34
|
+
[WalletMode.Cardano]: CardanoConnector.instance(),
|
|
35
|
+
// [WalletMode.Polkadot]: PolkadotConnector.instance(),
|
|
36
|
+
// [WalletMode.Algorand]: AlgorandConnector.instance(),
|
|
37
|
+
[WalletMode.Mina]: MinaConnector.instance(),
|
|
38
|
+
[WalletMode.AvailJs]: AvailConnector.instance(),
|
|
39
|
+
};
|
|
40
|
+
export async function allInjectedWallets() {
|
|
41
|
+
return {
|
|
42
|
+
[WalletMode.EvmInjected]: EvmInjectedConnector.getWalletOptions(),
|
|
43
|
+
[WalletMode.Cardano]: CardanoConnector.getWalletOptions(),
|
|
44
|
+
// [WalletMode.Polkadot]: await PolkadotConnector.getWalletOptions(),
|
|
45
|
+
// [WalletMode.Algorand]: AlgorandConnector.getWalletOptions(),
|
|
46
|
+
[WalletMode.Mina]: MinaConnector.getWalletOptions(),
|
|
47
|
+
[WalletMode.Midnight]: MidnightConnector.getWalletOptions(),
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
export async function connectInjectedWallet(typeName, preference, connector) {
|
|
51
|
+
if (preference == null) {
|
|
52
|
+
console.log(`${typeName} Attempting simple login`);
|
|
53
|
+
const provider = await connector.connectSimple();
|
|
54
|
+
return provider;
|
|
55
|
+
}
|
|
56
|
+
else if ("name" in preference) {
|
|
57
|
+
const walletName = preference.name;
|
|
58
|
+
console.log(`${typeName} Attempting to log into ${walletName}`);
|
|
59
|
+
const provider = await connector.connectNamed(walletName);
|
|
60
|
+
return provider;
|
|
61
|
+
}
|
|
62
|
+
else if ("connection" in preference) {
|
|
63
|
+
const walletName = preference.connection.metadata.name;
|
|
64
|
+
console.log(`${typeName} Attempting to log into ${walletName}`);
|
|
65
|
+
const provider = await connector.connectExternal(preference.connection);
|
|
66
|
+
return provider;
|
|
67
|
+
}
|
|
68
|
+
throw new Error("Invalid preference");
|
|
69
|
+
}
|
|
70
|
+
export function callProvider(mode, funcName, ...args) {
|
|
71
|
+
const provider = WalletModeMap[mode].getOrThrowProvider();
|
|
72
|
+
const func = provider[funcName];
|
|
73
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
74
|
+
return func(...args);
|
|
75
|
+
}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import type { ApiPromise } from "avail-js-sdk";
|
|
2
|
+
import type { Result } from "../../utils/src/mod.js";
|
|
3
|
+
import type { CardanoApi } from "./cardano/cardano.js";
|
|
4
|
+
import type { EthersApi } from "./evm/ethers.js";
|
|
5
|
+
import type { EvmApi } from "./evm/injected.js";
|
|
6
|
+
import type { ActiveConnection, IInjectedConnector, IProvider } from "./IProvider.js";
|
|
7
|
+
import type { MinaApi } from "./mina/mina.js";
|
|
8
|
+
import { type InjectionPreference, type WalletMode } from "./utils.js";
|
|
9
|
+
import type { MidnightApi } from "./midnight/midnight.js";
|
|
10
|
+
import type { Chain } from "viem/chains";
|
|
11
|
+
export type BaseLoginInfo<Api> = {
|
|
12
|
+
preference?: InjectionPreference<Api>;
|
|
13
|
+
};
|
|
14
|
+
export type LoginInfoMap = {
|
|
15
|
+
[WalletMode.EvmInjected]: BaseLoginInfo<EvmApi> & {
|
|
16
|
+
/** If true even EVM wallet inputs will be batched (sign data and send to the batcher) */
|
|
17
|
+
preferBatchedMode: boolean;
|
|
18
|
+
/**
|
|
19
|
+
* By default, Paima will try and switch the wallet's network to the one used for the game
|
|
20
|
+
* This uses EIP3326 (https://eips.ethereum.org/EIPS/eip-3326)
|
|
21
|
+
* This may not be desired, since not all wallets support switching to an arbitrary network
|
|
22
|
+
* Set to false if you only need to sign data. Otherwise, keep as true
|
|
23
|
+
* @default true
|
|
24
|
+
*/
|
|
25
|
+
checkChainId?: boolean;
|
|
26
|
+
chain?: Chain;
|
|
27
|
+
};
|
|
28
|
+
[WalletMode.EvmEthers]: {
|
|
29
|
+
connection: ActiveConnection<EthersApi>;
|
|
30
|
+
preferBatchedMode: boolean;
|
|
31
|
+
};
|
|
32
|
+
[WalletMode.Cardano]: BaseLoginInfo<CardanoApi>;
|
|
33
|
+
[WalletMode.Mina]: BaseLoginInfo<MinaApi>;
|
|
34
|
+
[WalletMode.AvailJs]: {
|
|
35
|
+
connection: ActiveConnection<ApiPromise>;
|
|
36
|
+
preferBatchedMode: boolean;
|
|
37
|
+
seed: string;
|
|
38
|
+
};
|
|
39
|
+
[WalletMode.Midnight]: BaseLoginInfo<MidnightApi>;
|
|
40
|
+
};
|
|
41
|
+
type ToUnion<T> = {
|
|
42
|
+
[K in keyof T]: {
|
|
43
|
+
mode: K;
|
|
44
|
+
} & T[K];
|
|
45
|
+
}[keyof T];
|
|
46
|
+
export type LoginInfo = ToUnion<LoginInfoMap>;
|
|
47
|
+
export declare function connectInjected<Api>(typeName: string, loginInfo: BaseLoginInfo<Api>, connector: IInjectedConnector<Api>): Promise<Result<IProvider<Api>>>;
|
|
48
|
+
export {};
|
|
49
|
+
//# sourceMappingURL=wallet-modes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wallet-modes.d.ts","sourceRoot":"","sources":["../../../src/wallets/src/wallet-modes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAErD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,EACV,gBAAgB,EAChB,kBAAkB,EAClB,SAAS,EACV,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAE9C,OAAO,EAEL,KAAK,mBAAmB,EACxB,KAAK,UAAU,EAChB,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEzC,MAAM,MAAM,aAAa,CAAC,GAAG,IAAI;IAC/B,UAAU,CAAC,EAAE,mBAAmB,CAAC,GAAG,CAAC,CAAC;CACvC,CAAC;AACF,MAAM,MAAM,YAAY,GAAG;IACzB,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG;QAChD,yFAAyF;QACzF,iBAAiB,EAAE,OAAO,CAAC;QAC3B;;;;;;WAMG;QACH,YAAY,CAAC,EAAE,OAAO,CAAC;QACvB,KAAK,CAAC,EAAE,KAAK,CAAC;KACf,CAAC;IACF,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE;QACtB,UAAU,EAAE,gBAAgB,CAAC,SAAS,CAAC,CAAC;QACxC,iBAAiB,EAAE,OAAO,CAAC;KAC5B,CAAC;IACF,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC;IAGhD,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;IAC1C,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;QACpB,UAAU,EAAE,gBAAgB,CAAC,UAAU,CAAC,CAAC;QACzC,iBAAiB,EAAE,OAAO,CAAC;QAC3B,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;IACF,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC;CACnD,CAAC;AAEF,KAAK,OAAO,CAAC,CAAC,IAAI;KACf,CAAC,IAAI,MAAM,CAAC,GAAG;QAAE,IAAI,EAAE,CAAC,CAAA;KAAE,GAAG,CAAC,CAAC,CAAC,CAAC;CACnC,CAAC,MAAM,CAAC,CAAC,CAAC;AAEX,MAAM,MAAM,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;AAS9C,wBAAsB,eAAe,CAAC,GAAG,EACvC,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,aAAa,CAAC,GAAG,CAAC,EAC7B,SAAS,EAAE,kBAAkB,CAAC,GAAG,CAAC,GACjC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAuBjC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
// import type { PolkadotApi } from "./polkadot/polkadot.ts";
|
|
2
|
+
import { connectInjectedWallet, } from "./utils.js";
|
|
3
|
+
function getWalletName(info) {
|
|
4
|
+
if (info.preference == null)
|
|
5
|
+
return undefined;
|
|
6
|
+
if ("name" in info.preference) {
|
|
7
|
+
return info.preference.name;
|
|
8
|
+
}
|
|
9
|
+
return info.preference.connection.metadata.name;
|
|
10
|
+
}
|
|
11
|
+
export async function connectInjected(typeName, loginInfo, connector) {
|
|
12
|
+
try {
|
|
13
|
+
const provider = await connectInjectedWallet(typeName, loginInfo.preference, connector);
|
|
14
|
+
return {
|
|
15
|
+
success: true,
|
|
16
|
+
result: provider,
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
catch (err) {
|
|
20
|
+
console.log(`${typeName} Error while logging into wallet ${getWalletName(loginInfo) ?? "simple"}`);
|
|
21
|
+
return {
|
|
22
|
+
success: false,
|
|
23
|
+
errorMessage: err instanceof Error ? err.message : String(err),
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { Result } from "../../utils/src/mod.js";
|
|
2
|
+
import type { Wallet } from "./types.js";
|
|
3
|
+
import type { LoginInfo } from "./wallet-modes.js";
|
|
4
|
+
export declare function walletLogin(loginInfo: LoginInfo): Promise<Result<Wallet>>;
|
|
5
|
+
//# sourceMappingURL=wallets.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wallets.d.ts","sourceRoot":"","sources":["../../../src/wallets/src/wallets.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAInD,wBAAsB,WAAW,CAC/B,SAAS,EAAE,SAAS,GACnB,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAYzB"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
// import { algorandLoginWrapper } from "./algorand/wrapper.ts";
|
|
2
|
+
import { cardanoLoginWrapper } from "./cardano/wrapper.js";
|
|
3
|
+
import { evmLoginWrapper } from "./evm/wrapper-injected.js";
|
|
4
|
+
// import { polkadotLoginWrapper } from "./polkadot/wrapper.ts";
|
|
5
|
+
import { ethersLoginWrapper } from "./evm/wrapper-ethers.js";
|
|
6
|
+
import { minaLoginWrapper } from "./mina/wrapper.js";
|
|
7
|
+
import { availJsLoginWrapper } from "./avail/wrapper.js";
|
|
8
|
+
import { WalletMode } from "./utils.js";
|
|
9
|
+
// import { assertNever } from "assert-never";
|
|
10
|
+
import { midnightLoginWrapper } from "./midnight/wrapper.js";
|
|
11
|
+
export async function walletLogin(loginInfo) {
|
|
12
|
+
const provider = await login(loginInfo);
|
|
13
|
+
if (provider.success === false)
|
|
14
|
+
return provider;
|
|
15
|
+
return {
|
|
16
|
+
success: true,
|
|
17
|
+
result: {
|
|
18
|
+
provider: provider.result,
|
|
19
|
+
walletAddress: provider.result.getAddress().address,
|
|
20
|
+
metadata: provider.result.getConnection().metadata,
|
|
21
|
+
},
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
async function login(loginInfo) {
|
|
25
|
+
switch (loginInfo.mode) {
|
|
26
|
+
case WalletMode.EvmInjected: {
|
|
27
|
+
return await evmLoginWrapper(loginInfo);
|
|
28
|
+
}
|
|
29
|
+
case WalletMode.EvmEthers: {
|
|
30
|
+
return await ethersLoginWrapper(loginInfo);
|
|
31
|
+
}
|
|
32
|
+
case WalletMode.Cardano: {
|
|
33
|
+
return await cardanoLoginWrapper(loginInfo);
|
|
34
|
+
}
|
|
35
|
+
// TODO: Disabled as these did not compile with deno-vite or deno-fresh
|
|
36
|
+
// case WalletMode.Polkadot: {
|
|
37
|
+
// return await polkadotLoginWrapper(loginInfo);
|
|
38
|
+
// }
|
|
39
|
+
// case WalletMode.Algorand: {
|
|
40
|
+
// return await algorandLoginWrapper(loginInfo);
|
|
41
|
+
// }
|
|
42
|
+
case WalletMode.Mina: {
|
|
43
|
+
return await minaLoginWrapper(loginInfo);
|
|
44
|
+
}
|
|
45
|
+
case WalletMode.AvailJs: {
|
|
46
|
+
return await availJsLoginWrapper(loginInfo);
|
|
47
|
+
}
|
|
48
|
+
case WalletMode.Midnight: {
|
|
49
|
+
return await midnightLoginWrapper(loginInfo);
|
|
50
|
+
}
|
|
51
|
+
default:
|
|
52
|
+
throw new Error(`Unsupported wallet mode: ${loginInfo.mode}`);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"windows.d.ts","sourceRoot":"","sources":["../../../src/wallets/src/windows.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,SAAS,6CAKxB"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Paima might be used in non-browser environments where window isn't defined
|
|
3
|
+
*/
|
|
4
|
+
export function getWindow() {
|
|
5
|
+
// recall: this is different semantically to window?.foo
|
|
6
|
+
// since window?.foo can still give ReferenceError: window is not defined
|
|
7
|
+
// dnt-shim-ignore
|
|
8
|
+
return typeof window === 'undefined' ? undefined : window;
|
|
9
|
+
}
|
package/package.json
ADDED
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@paimaexample/wallets",
|
|
3
|
+
"version": "0.3.117",
|
|
4
|
+
"description": "Your package.",
|
|
5
|
+
"repository": {
|
|
6
|
+
"type": "git",
|
|
7
|
+
"url": "git+https://github.com/username/repo.git"
|
|
8
|
+
},
|
|
9
|
+
"license": "MIT",
|
|
10
|
+
"bugs": {
|
|
11
|
+
"url": "https://github.com/username/repo/issues"
|
|
12
|
+
},
|
|
13
|
+
"main": "./script/wallets/src/mod.js",
|
|
14
|
+
"module": "./esm/wallets/src/mod.js",
|
|
15
|
+
"exports": {
|
|
16
|
+
".": {
|
|
17
|
+
"import": "./esm/wallets/src/mod.js",
|
|
18
|
+
"require": "./script/wallets/src/mod.js"
|
|
19
|
+
}
|
|
20
|
+
},
|
|
21
|
+
"scripts": {},
|
|
22
|
+
"dependencies": {
|
|
23
|
+
"@aurowallet/mina-provider": "^1.0.12",
|
|
24
|
+
"@coderspirit/nominal": "^4.1.1",
|
|
25
|
+
"@dcspark/cip34-js": "3.0.1",
|
|
26
|
+
"@foxglove/crc": "^1.0.1",
|
|
27
|
+
"@metamask/providers": "^22.1.0",
|
|
28
|
+
"@midnight-ntwrk/onchain-runtime": "^0.3.0",
|
|
29
|
+
"@polkadot/util": "^13.4.3",
|
|
30
|
+
"@sinclair/typebox": "0.34.41",
|
|
31
|
+
"@subsquid/ss58-codec": "^1.2.3",
|
|
32
|
+
"abitype": "1.1.0",
|
|
33
|
+
"assert-never": "^1.4.0",
|
|
34
|
+
"avail-js-sdk": "^0.4.2",
|
|
35
|
+
"bech32": "^2.0.0",
|
|
36
|
+
"bs58": "^6.0.0",
|
|
37
|
+
"bs58check": "^4.0.0",
|
|
38
|
+
"effection": "^3.5.0",
|
|
39
|
+
"ethers": "^6.15.0",
|
|
40
|
+
"hi-base32": "^0.5.1",
|
|
41
|
+
"js-base64": "^3.7.7",
|
|
42
|
+
"js-sha3": "^0.9.3",
|
|
43
|
+
"js-sha512": "^0.9.0",
|
|
44
|
+
"mqtt": "^5.14.0",
|
|
45
|
+
"mqtt-pattern": "^2.1.0",
|
|
46
|
+
"viem": "2.37.3",
|
|
47
|
+
"web3": "^4.16.0",
|
|
48
|
+
"web3-utils": "^4.3.3"
|
|
49
|
+
},
|
|
50
|
+
"_generatedBy": "dnt@dev"
|
|
51
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { BlockNumber, Caip2, HexStringNo0x, TimestampMs } from "../../utils/src/mod.js";
|
|
2
|
+
import type { PostExecutionBlockHeader } from "./types.js";
|
|
3
|
+
export declare function genV1BlockHeader(mainChainInfo: {
|
|
4
|
+
blockHash: HexStringNo0x;
|
|
5
|
+
blockHeight: BlockNumber;
|
|
6
|
+
msTimestamp: TimestampMs;
|
|
7
|
+
}, prevBlockHash: null | HexStringNo0x, successfulTxs: string[], failedTxs: string[]): PostExecutionBlockHeader<1>;
|
|
8
|
+
interface HashInfo<T> {
|
|
9
|
+
preHash: (info: T) => string;
|
|
10
|
+
hash: (info: T) => HexStringNo0x;
|
|
11
|
+
}
|
|
12
|
+
export declare const hashTransactions: HashInfo<string[]>;
|
|
13
|
+
export declare const hashBlockV1: HashInfo<PostExecutionBlockHeader<1>>;
|
|
14
|
+
export type RollupInputHashInfo = {
|
|
15
|
+
caip2Prefix: Caip2;
|
|
16
|
+
txHash: HexStringNo0x;
|
|
17
|
+
indexInBlock: number;
|
|
18
|
+
};
|
|
19
|
+
export declare const hashRollupInput: HashInfo<RollupInputHashInfo>;
|
|
20
|
+
export type TimerHashInfo = {
|
|
21
|
+
address: string;
|
|
22
|
+
dataHash: HexStringNo0x;
|
|
23
|
+
blockHeight: BlockNumber;
|
|
24
|
+
indexInBlock: number;
|
|
25
|
+
};
|
|
26
|
+
export declare const hashTimerData: HashInfo<TimerHashInfo>;
|
|
27
|
+
export {};
|
|
28
|
+
//# sourceMappingURL=hash.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hash.d.ts","sourceRoot":"","sources":["../../../src/chain-types/src/hash.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,KAAK,EACL,aAAa,EACb,WAAW,EACZ,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAI3D,wBAAgB,gBAAgB,CAC9B,aAAa,EAAE;IACb,SAAS,EAAE,aAAa,CAAC;IACzB,WAAW,EAAE,WAAW,CAAC;IACzB,WAAW,EAAE,WAAW,CAAC;CAC1B,EACD,aAAa,EAAE,IAAI,GAAG,aAAa,EACnC,aAAa,EAAE,MAAM,EAAE,EACvB,SAAS,EAAE,MAAM,EAAE,GAClB,wBAAwB,CAAC,CAAC,CAAC,CAU7B;AAED,UAAU,QAAQ,CAAC,CAAC;IAClB,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,MAAM,CAAC;IAC7B,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,aAAa,CAAC;CAClC;AACD,eAAO,MAAM,gBAAgB,EAAE,QAAQ,CAAC,MAAM,EAAE,CAG/C,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,QAAQ,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAI7D,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,WAAW,EAAE,KAAK,CAAC;IACnB,MAAM,EAAE,aAAa,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AACF,eAAO,MAAM,eAAe,EAAE,QAAQ,CAAC,mBAAmB,CAGzD,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,aAAa,CAAC;IACxB,WAAW,EAAE,WAAW,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AACF,eAAO,MAAM,aAAa,EAAE,QAAQ,CAAC,aAAa,CAIjD,CAAC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.hashTimerData = exports.hashRollupInput = exports.hashBlockV1 = exports.hashTransactions = void 0;
|
|
7
|
+
exports.genV1BlockHeader = genV1BlockHeader;
|
|
8
|
+
const js_sha3_1 = __importDefault(require("js-sha3"));
|
|
9
|
+
const { keccak_256 } = js_sha3_1.default;
|
|
10
|
+
function genV1BlockHeader(mainChainInfo, prevBlockHash, successfulTxs, failedTxs) {
|
|
11
|
+
return {
|
|
12
|
+
version: 1,
|
|
13
|
+
prevBlockHash,
|
|
14
|
+
mainChainBlochHash: mainChainInfo.blockHash,
|
|
15
|
+
blockHeight: mainChainInfo.blockHeight,
|
|
16
|
+
msTimestamp: mainChainInfo.msTimestamp,
|
|
17
|
+
successTxsHash: exports.hashTransactions.hash(successfulTxs),
|
|
18
|
+
failedTxsHash: exports.hashTransactions.hash(failedTxs),
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
exports.hashTransactions = {
|
|
22
|
+
preHash: (txs) => txs.join("|"),
|
|
23
|
+
hash: (txs) => keccak_256(exports.hashTransactions.preHash(txs)),
|
|
24
|
+
};
|
|
25
|
+
exports.hashBlockV1 = {
|
|
26
|
+
preHash: (header) => `${header.version}|${header.prevBlockHash}|${header.mainChainBlochHash}|${header.blockHeight}|${header.msTimestamp}|${header.successTxsHash}|${header.failedTxsHash}`,
|
|
27
|
+
hash: (header) => keccak_256(exports.hashBlockV1.preHash(header)),
|
|
28
|
+
};
|
|
29
|
+
exports.hashRollupInput = {
|
|
30
|
+
preHash: (info) => `${info.caip2Prefix}}|${info.txHash}|${info.indexInBlock}`,
|
|
31
|
+
hash: (info) => keccak_256(exports.hashRollupInput.preHash(info)),
|
|
32
|
+
};
|
|
33
|
+
exports.hashTimerData = {
|
|
34
|
+
preHash: (info) => `${info.address}|${info.dataHash}|${info.blockHeight}|${info.indexInBlock}`,
|
|
35
|
+
hash: (info) => keccak_256(exports.hashTimerData.preHash(info)),
|
|
36
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../../src/chain-types/src/mod.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./hash.js"), exports);
|
|
18
|
+
__exportStar(require("./types.js"), exports);
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import type { BlockNumber, EvmAddress, HexString0x, TimestampMs, UnknownFormat } from "../../utils/src/mod.js";
|
|
2
|
+
import type { ConfigSyncProtocolType, FlattenSyncProtocolIOFor } from "../../config/src/mod.js";
|
|
3
|
+
export type InputDataString = string;
|
|
4
|
+
export type NonceString = HexString0x;
|
|
5
|
+
export type ScheduleTrigger = {
|
|
6
|
+
blockHeight: BlockNumber;
|
|
7
|
+
} | {
|
|
8
|
+
timestamp: TimestampMs;
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* Primitive triggered by Paima itself (ex: timer)
|
|
12
|
+
*/
|
|
13
|
+
export type IntrinsicPrimitive = {
|
|
14
|
+
extrinsic: false;
|
|
15
|
+
trigger: ScheduleTrigger;
|
|
16
|
+
/** STF input */
|
|
17
|
+
inputData: InputDataString;
|
|
18
|
+
/** precompile that triggered the primitive */
|
|
19
|
+
precompile: EvmAddress;
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* Primitive triggered by a chain Paima is monitoring
|
|
23
|
+
*/
|
|
24
|
+
export type ExtrinsicPrimitive = {
|
|
25
|
+
extrinsic: true;
|
|
26
|
+
/** primitive that triggered this event */
|
|
27
|
+
info: FlattenSyncProtocolIOFor<ConfigSyncProtocolType>;
|
|
28
|
+
};
|
|
29
|
+
export type PrimitiveCommon = {
|
|
30
|
+
/** STF input */
|
|
31
|
+
inputData: InputDataString;
|
|
32
|
+
};
|
|
33
|
+
export type BasePrimitive = IntrinsicPrimitive | ExtrinsicPrimitive;
|
|
34
|
+
export type PreExecutionBlockHeaderV1 = {
|
|
35
|
+
mainChainBlochHash: UnknownFormat;
|
|
36
|
+
blockHeight: BlockNumber;
|
|
37
|
+
/**
|
|
38
|
+
* If there is no previous block, this is null
|
|
39
|
+
*/
|
|
40
|
+
prevBlockHash: UnknownFormat | null;
|
|
41
|
+
/** in milliseconds */
|
|
42
|
+
msTimestamp: TimestampMs;
|
|
43
|
+
};
|
|
44
|
+
type BlockVersions = 1;
|
|
45
|
+
type Max<N extends number, A extends any[] = []> = [N] extends [
|
|
46
|
+
Partial<A>["length"]
|
|
47
|
+
] ? A["length"] : Max<N, [0, ...A]>;
|
|
48
|
+
/**
|
|
49
|
+
* Block header (see: ChainData for the full block)
|
|
50
|
+
*/
|
|
51
|
+
export type PerVersionPreExecutionBlockHeader<Version extends BlockVersions> = {
|
|
52
|
+
version: Version;
|
|
53
|
+
} & (Version extends 1 ? PreExecutionBlockHeaderV1 : never);
|
|
54
|
+
/**
|
|
55
|
+
* Modify the version number here when needed
|
|
56
|
+
*/
|
|
57
|
+
export type PreExecutionBlockHeader = PerVersionPreExecutionBlockHeader<Max<BlockVersions>>;
|
|
58
|
+
/**
|
|
59
|
+
* Careful: update version number if this struct changes
|
|
60
|
+
*/
|
|
61
|
+
export type PostExecutionBlockHeader<Version extends BlockVersions> = PerVersionPreExecutionBlockHeader<Version> & {
|
|
62
|
+
successTxsHash: UnknownFormat;
|
|
63
|
+
/**
|
|
64
|
+
* note: this may not contain all failed txs
|
|
65
|
+
* notably, it excludes any tx that failed before it got to the STF call
|
|
66
|
+
*/
|
|
67
|
+
failedTxsHash: UnknownFormat;
|
|
68
|
+
};
|
|
69
|
+
export {};
|
|
70
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/chain-types/src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,UAAU,EACV,WAAW,EACX,WAAW,EACX,aAAa,EACd,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EACV,sBAAsB,EACtB,wBAAwB,EACzB,MAAM,yBAAyB,CAAC;AAEjC,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC;AACrC,MAAM,MAAM,WAAW,GAAG,WAAW,CAAC;AAEtC,MAAM,MAAM,eAAe,GAAG;IAAE,WAAW,EAAE,WAAW,CAAA;CAAE,GAAG;IAI3D,SAAS,EAAE,WAAW,CAAC;CACxB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,SAAS,EAAE,KAAK,CAAC;IACjB,OAAO,EAAE,eAAe,CAAC;IACzB,gBAAgB;IAChB,SAAS,EAAE,eAAe,CAAC;IAC3B,8CAA8C;IAC9C,UAAU,EAAE,UAAU,CAAC;CACxB,CAAC;AACF;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,SAAS,EAAE,IAAI,CAAC;IAChB,0CAA0C;IAC1C,IAAI,EAAE,wBAAwB,CAC5B,sBAAsB,CACvB,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,gBAAgB;IAChB,SAAS,EAAE,eAAe,CAAC;CAC5B,CAAC;AACF,MAAM,MAAM,aAAa,GAAG,kBAAkB,GAAG,kBAAkB,CAAC;AAEpE,MAAM,MAAM,yBAAyB,GAAG;IACtC,kBAAkB,EAAE,aAAa,CAAC;IAClC,WAAW,EAAE,WAAW,CAAC;IACzB;;OAEG;IACH,aAAa,EAAE,aAAa,GAAG,IAAI,CAAC;IACpC,sBAAsB;IACtB,WAAW,EAAE,WAAW,CAAC;CAC1B,CAAC;AAEF,KAAK,aAAa,GAAG,CAAC,CAAC;AAEvB,KAAK,GAAG,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,SACpD;IAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,GAClC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;AAEtB;;GAEG;AACH,MAAM,MAAM,iCAAiC,CAAC,OAAO,SAAS,aAAa,IAAI;IAC7E,OAAO,EAAE,OAAO,CAAC;CAClB,GAAG,CAAC,OAAO,SAAS,CAAC,GAAG,yBAAyB,GAAG,KAAK,CAAC,CAAC;AAE5D;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG,iCAAiC,CACrE,GAAG,CAAC,aAAa,CAAC,CACnB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,wBAAwB,CAAC,OAAO,SAAS,aAAa,IAC9D,iCAAiC,CAAC,OAAO,CAAC,GAC1C;IACA,cAAc,EAAE,aAAa,CAAC;IAC9B;;;OAGG;IACH,aAAa,EAAE,aAAa,CAAC;CAC9B,CAAC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { AddressType, type Signature, type TimestampMsStr, type WalletAddress } from "../../utils/src/mod.js";
|
|
2
|
+
export interface DefaultBatcherInput {
|
|
3
|
+
addressType: AddressType;
|
|
4
|
+
input: string;
|
|
5
|
+
signature: string;
|
|
6
|
+
address: string;
|
|
7
|
+
timestamp: string;
|
|
8
|
+
target?: string;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* @deprecated Use DefaultBatcherInput instead. This type will be removed in a future version.
|
|
12
|
+
*/
|
|
13
|
+
export type BatchedSubunit = DefaultBatcherInput;
|
|
14
|
+
export type BatcherMessage = string;
|
|
15
|
+
export declare function createBatcherSubunit(millisecondTimestamp: TimestampMsStr, _walletAddress: WalletAddress, walletAddressType: AddressType, signature: Signature, inputData: string): DefaultBatcherInput;
|
|
16
|
+
/** This is what wallets sign when submitting a batch */
|
|
17
|
+
export declare function createMessageForBatcher(namespace: string | null, millisecondTimestamp: TimestampMsStr, _walletAddress: WalletAddress, walletAddressType: AddressType, inputData: string, target?: string | undefined): BatcherMessage;
|
|
18
|
+
/**
|
|
19
|
+
* Hash for the user's message to the batcher
|
|
20
|
+
* Note: no need for namespace, as namespace is already checked before the hash is relevant
|
|
21
|
+
* Note: need user address.
|
|
22
|
+
* It wasn't needed for the message since that gets signed by the public key
|
|
23
|
+
* So it contains the address indirectly
|
|
24
|
+
*/
|
|
25
|
+
export declare function hashBatchSubunit(input: DefaultBatcherInput): string;
|
|
26
|
+
/**
|
|
27
|
+
* Adds batches until maxSize is reached, or not batches are left
|
|
28
|
+
* If a batch is empty, empty string is returned (not `B`)
|
|
29
|
+
* The inputs that got selected (taking into account the size limit) are returned
|
|
30
|
+
*/
|
|
31
|
+
export declare function buildBatchData(maxSize: number, inputs: DefaultBatcherInput[]): {
|
|
32
|
+
selectedInputs: DefaultBatcherInput[];
|
|
33
|
+
data: string;
|
|
34
|
+
};
|
|
35
|
+
export type ExtractedBatchSubunit = {
|
|
36
|
+
parsed: DefaultBatcherInput;
|
|
37
|
+
raw: string;
|
|
38
|
+
};
|
|
39
|
+
export declare function extractBatches(inputData: string): ExtractedBatchSubunit[];
|
|
40
|
+
//# sourceMappingURL=batcher.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"batcher.d.ts","sourceRoot":"","sources":["../../../src/concise/src/batcher.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,KAAK,SAAS,EACd,KAAK,cAAc,EAEnB,KAAK,aAAa,EACnB,MAAM,wBAAwB,CAAC;AAmBhC,MAAM,WAAW,mBAAmB;IAClC,WAAW,EAAE,WAAW,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,mBAAmB,CAAC;AAEjD,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC;AAEpC,wBAAgB,oBAAoB,CAClC,oBAAoB,EAAE,cAAc,EACpC,cAAc,EAAE,aAAa,EAC7B,iBAAiB,EAAE,WAAW,EAC9B,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,MAAM,GAChB,mBAAmB,CAkBrB;AAED,wDAAwD;AACxD,wBAAgB,uBAAuB,CACrC,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,oBAAoB,EAAE,cAAc,EACpC,cAAc,EAAE,aAAa,EAC7B,iBAAiB,EAAE,WAAW,EAC9B,SAAS,EAAE,MAAM,EACjB,MAAM,GAAE,MAAM,GAAG,SAAqB,GACrC,cAAc,CAgBhB;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,mBAAmB,GAAG,MAAM,CAmBnE;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAC5B,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,mBAAmB,EAAE,GAC5B;IACD,cAAc,EAAE,mBAAmB,EAAE,CAAC;IACtC,IAAI,EAAE,MAAM,CAAC;CACd,CAyCA;AAED,MAAM,MAAM,qBAAqB,GAAG;IAClC,MAAM,EAAE,mBAAmB,CAAC;IAC5B,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AACF,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,qBAAqB,EAAE,CA8BzE"}
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.createBatcherSubunit = createBatcherSubunit;
|
|
7
|
+
exports.createMessageForBatcher = createMessageForBatcher;
|
|
8
|
+
exports.hashBatchSubunit = hashBatchSubunit;
|
|
9
|
+
exports.buildBatchData = buildBatchData;
|
|
10
|
+
exports.extractBatches = extractBatches;
|
|
11
|
+
const mod_js_1 = require("../../utils/src/mod.js");
|
|
12
|
+
const mod_js_2 = require("./v2/mod.js");
|
|
13
|
+
const js_sha3_1 = __importDefault(require("js-sha3"));
|
|
14
|
+
const value_1 = require("@sinclair/typebox/value");
|
|
15
|
+
const { keccak_256 } = js_sha3_1.default;
|
|
16
|
+
function createBatcherSubunit(millisecondTimestamp, _walletAddress, walletAddressType, signature, inputData) {
|
|
17
|
+
let walletAddress;
|
|
18
|
+
switch (walletAddressType) {
|
|
19
|
+
case mod_js_1.AddressType.EVM:
|
|
20
|
+
walletAddress = value_1.Value.Decode(mod_js_1.TypeboxHelpers.Evm.Address, _walletAddress);
|
|
21
|
+
break;
|
|
22
|
+
default:
|
|
23
|
+
throw new Error("NYI: Unsupported wallet address type: " + walletAddressType);
|
|
24
|
+
}
|
|
25
|
+
return {
|
|
26
|
+
addressType: walletAddressType,
|
|
27
|
+
address: walletAddress,
|
|
28
|
+
signature: signature,
|
|
29
|
+
input: inputData,
|
|
30
|
+
timestamp: millisecondTimestamp,
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
/** This is what wallets sign when submitting a batch */
|
|
34
|
+
function createMessageForBatcher(namespace, millisecondTimestamp, _walletAddress, walletAddressType, inputData, target = undefined) {
|
|
35
|
+
let walletAddress;
|
|
36
|
+
switch (walletAddressType) {
|
|
37
|
+
case mod_js_1.AddressType.EVM:
|
|
38
|
+
walletAddress = value_1.Value.Decode(mod_js_1.TypeboxHelpers.Evm.Address, _walletAddress);
|
|
39
|
+
break;
|
|
40
|
+
default:
|
|
41
|
+
throw new Error("NYI: Unsupported wallet address type: " + walletAddressType);
|
|
42
|
+
}
|
|
43
|
+
return ((namespace ?? "") + (target ?? "") + millisecondTimestamp +
|
|
44
|
+
walletAddress + inputData)
|
|
45
|
+
.replace(/[^a-zA-Z0-9]/g, "-")
|
|
46
|
+
.toLocaleLowerCase();
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Hash for the user's message to the batcher
|
|
50
|
+
* Note: no need for namespace, as namespace is already checked before the hash is relevant
|
|
51
|
+
* Note: need user address.
|
|
52
|
+
* It wasn't needed for the message since that gets signed by the public key
|
|
53
|
+
* So it contains the address indirectly
|
|
54
|
+
*/
|
|
55
|
+
function hashBatchSubunit(input) {
|
|
56
|
+
let walletAddress;
|
|
57
|
+
switch (input.addressType) {
|
|
58
|
+
case mod_js_1.AddressType.EVM:
|
|
59
|
+
walletAddress = value_1.Value.Decode(mod_js_1.TypeboxHelpers.Evm.Address, input.address);
|
|
60
|
+
break;
|
|
61
|
+
default:
|
|
62
|
+
throw new Error("NYI: Unsupported wallet address type: " + input.addressType);
|
|
63
|
+
}
|
|
64
|
+
return "0x" +
|
|
65
|
+
keccak_256(walletAddress + input.input + input.timestamp);
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Adds batches until maxSize is reached, or not batches are left
|
|
69
|
+
* If a batch is empty, empty string is returned (not `B`)
|
|
70
|
+
* The inputs that got selected (taking into account the size limit) are returned
|
|
71
|
+
*/
|
|
72
|
+
function buildBatchData(maxSize, inputs) {
|
|
73
|
+
const selectedInputs = [];
|
|
74
|
+
const batchedTransaction = [];
|
|
75
|
+
let remainingSpace = maxSize -
|
|
76
|
+
`["${mod_js_2.BatcherGrammarPrefix.batcherInput}", []`.length;
|
|
77
|
+
for (const input of inputs) {
|
|
78
|
+
const packed = (0, mod_js_2.generateStmInput)(mod_js_2.BatcherInnerGrammar, `${input.addressType}`, {
|
|
79
|
+
userAddress: input.address,
|
|
80
|
+
userSignature: input.signature,
|
|
81
|
+
conciseInput: input.input,
|
|
82
|
+
millisecondTimestamp: input.timestamp,
|
|
83
|
+
});
|
|
84
|
+
if (packed.length + 1 > remainingSpace) {
|
|
85
|
+
break;
|
|
86
|
+
}
|
|
87
|
+
const packedString = JSON.stringify(packed);
|
|
88
|
+
batchedTransaction.push(packedString);
|
|
89
|
+
remainingSpace -= JSON.stringify(packed).length - '[""]'.length -
|
|
90
|
+
",".length;
|
|
91
|
+
selectedInputs.push(input);
|
|
92
|
+
}
|
|
93
|
+
// just skip if there is nothing in the batch
|
|
94
|
+
if (batchedTransaction.length === 0) {
|
|
95
|
+
return { selectedInputs, data: "" };
|
|
96
|
+
}
|
|
97
|
+
const batchedData = (0, mod_js_2.generateStmInput)(mod_js_2.BatcherGrammar, mod_js_2.BatcherGrammarPrefix.batcherInput, {
|
|
98
|
+
input: batchedTransaction,
|
|
99
|
+
});
|
|
100
|
+
return { selectedInputs, data: JSON.stringify(batchedData) };
|
|
101
|
+
}
|
|
102
|
+
function extractBatches(inputData) {
|
|
103
|
+
const parsed = (0, mod_js_2.parseStmInput)(inputData, mod_js_2.BatcherGrammar, mod_js_2.KeyedBatcherGrammar);
|
|
104
|
+
const result = [];
|
|
105
|
+
for (const input of parsed.data.input) {
|
|
106
|
+
try {
|
|
107
|
+
const subunit = (0, mod_js_2.parseRawStmInput)(JSON.parse(input), mod_js_2.BatcherInnerGrammar, mod_js_2.KeyedBuiltinBatcherInnerGrammar);
|
|
108
|
+
const parsed = {
|
|
109
|
+
addressType: Number.parseInt(subunit.prefix),
|
|
110
|
+
address: subunit.data.userAddress,
|
|
111
|
+
signature: subunit.data.userSignature,
|
|
112
|
+
input: subunit.data.conciseInput,
|
|
113
|
+
timestamp: subunit.data.millisecondTimestamp,
|
|
114
|
+
};
|
|
115
|
+
result.push({ raw: input, parsed });
|
|
116
|
+
}
|
|
117
|
+
catch (_e) {
|
|
118
|
+
// ignore malformed inputs
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
return result;
|
|
122
|
+
}
|