@ledgerhq/live-common 21.30.1 → 21.32.2
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/lib/__tests__/families/bitcoin/wallet-btc/xpub.getAddress.d.ts +2 -0
- package/lib/__tests__/families/bitcoin/wallet-btc/xpub.getAddress.d.ts.map +1 -0
- package/lib/__tests__/families/bitcoin/wallet-btc/xpub.getAddress.js +100 -0
- package/lib/__tests__/families/bitcoin/wallet-btc/xpub.getAddress.js.map +1 -0
- package/lib/__tests__/families/bitcoin/wallet-btc/xpub.pickingStrategies.integration.test.js +0 -10
- package/lib/__tests__/families/bitcoin/wallet-btc/xpub.pickingStrategies.integration.test.js.map +1 -1
- package/lib/__tests__/test-helpers/setup.js +1 -0
- package/lib/__tests__/test-helpers/setup.js.map +1 -1
- package/lib/account/support.d.ts.map +1 -1
- package/lib/account/support.js.map +1 -1
- package/lib/api/Ethereum.d.ts.map +1 -1
- package/lib/api/Ethereum.js +1 -0
- package/lib/api/Ethereum.js.map +1 -1
- package/lib/apps/polyfill.d.ts.map +1 -1
- package/lib/apps/polyfill.js +1 -0
- package/lib/apps/polyfill.js.map +1 -1
- package/lib/bot/engine.d.ts.map +1 -1
- package/lib/bot/engine.js +4 -1
- package/lib/bot/engine.js.map +1 -1
- package/lib/bridge/jsHelpers.js +1 -1
- package/lib/data/icons/react/celo.d.ts +8 -0
- package/lib/data/icons/react/celo.d.ts.map +1 -0
- package/lib/data/icons/react/celo.js +32 -0
- package/lib/data/icons/react/celo.js.map +1 -0
- package/lib/data/icons/react/index.d.ts +1 -0
- package/lib/data/icons/react/index.d.ts.map +1 -1
- package/lib/data/icons/react/index.js +11 -8
- package/lib/data/icons/react/index.js.map +1 -1
- package/lib/data/icons/reactNative/celo.d.ts +8 -0
- package/lib/data/icons/reactNative/celo.d.ts.map +1 -0
- package/lib/data/icons/reactNative/celo.js +33 -0
- package/lib/data/icons/reactNative/celo.js.map +1 -0
- package/lib/data/icons/reactNative/index.d.ts +1 -0
- package/lib/data/icons/reactNative/index.d.ts.map +1 -1
- package/lib/data/icons/reactNative/index.js +11 -8
- package/lib/data/icons/reactNative/index.js.map +1 -1
- package/lib/env.d.ts +15 -5
- package/lib/env.d.ts.map +1 -1
- package/lib/env.js +10 -0
- package/lib/env.js.map +1 -1
- package/lib/env.react.d.ts +1 -1
- package/lib/env.react.d.ts.map +1 -1
- package/lib/exchange/platform/transfer/index.d.ts.map +1 -1
- package/lib/exchange/platform/transfer/index.js +15 -1
- package/lib/exchange/platform/transfer/index.js.map +1 -1
- package/lib/families/algorand/buildTransaction.d.ts +2 -2
- package/lib/families/algorand/buildTransaction.d.ts.map +1 -1
- package/lib/families/algorand/buildTransaction.js +13 -19
- package/lib/families/algorand/buildTransaction.js.map +1 -1
- package/lib/families/algorand/js-getFeesForTransaction.js +4 -6
- package/lib/families/algorand/js-getFeesForTransaction.js.map +1 -1
- package/lib/families/algorand/js-signOperation.js +3 -7
- package/lib/families/algorand/js-signOperation.js.map +1 -1
- package/lib/families/algorand/js-synchronization.d.ts.map +1 -1
- package/lib/families/algorand/js-synchronization.js +1 -0
- package/lib/families/algorand/js-synchronization.js.map +1 -1
- package/lib/families/bitcoin/js-signOperation.d.ts.map +1 -1
- package/lib/families/bitcoin/js-signOperation.js +3 -5
- package/lib/families/bitcoin/js-signOperation.js.map +1 -1
- package/lib/families/bitcoin/js-synchronisation.js +4 -4
- package/lib/families/bitcoin/js-synchronisation.js.map +1 -1
- package/lib/families/bitcoin/wallet-btc/crypto/base.d.ts +4 -3
- package/lib/families/bitcoin/wallet-btc/crypto/base.d.ts.map +1 -1
- package/lib/families/bitcoin/wallet-btc/crypto/base.js +8 -7
- package/lib/families/bitcoin/wallet-btc/crypto/base.js.map +1 -1
- package/lib/families/bitcoin/wallet-btc/crypto/bitcoin.d.ts +1 -1
- package/lib/families/bitcoin/wallet-btc/crypto/bitcoin.d.ts.map +1 -1
- package/lib/families/bitcoin/wallet-btc/crypto/bitcoin.js +3 -7
- package/lib/families/bitcoin/wallet-btc/crypto/bitcoin.js.map +1 -1
- package/lib/families/bitcoin/wallet-btc/crypto/bitcoincash.d.ts +3 -4
- package/lib/families/bitcoin/wallet-btc/crypto/bitcoincash.d.ts.map +1 -1
- package/lib/families/bitcoin/wallet-btc/crypto/bitcoincash.js +27 -53
- package/lib/families/bitcoin/wallet-btc/crypto/bitcoincash.js.map +1 -1
- package/lib/families/bitcoin/wallet-btc/crypto/decred.d.ts +1 -1
- package/lib/families/bitcoin/wallet-btc/crypto/decred.d.ts.map +1 -1
- package/lib/families/bitcoin/wallet-btc/crypto/decred.js +2 -7
- package/lib/families/bitcoin/wallet-btc/crypto/decred.js.map +1 -1
- package/lib/families/bitcoin/wallet-btc/crypto/litecoin.d.ts +1 -6
- package/lib/families/bitcoin/wallet-btc/crypto/litecoin.d.ts.map +1 -1
- package/lib/families/bitcoin/wallet-btc/crypto/litecoin.js +0 -51
- package/lib/families/bitcoin/wallet-btc/crypto/litecoin.js.map +1 -1
- package/lib/families/bitcoin/wallet-btc/crypto/types.d.ts +1 -0
- package/lib/families/bitcoin/wallet-btc/crypto/types.d.ts.map +1 -1
- package/lib/families/bitcoin/wallet-btc/crypto/zec.d.ts +3 -4
- package/lib/families/bitcoin/wallet-btc/crypto/zec.d.ts.map +1 -1
- package/lib/families/bitcoin/wallet-btc/crypto/zec.js +26 -17
- package/lib/families/bitcoin/wallet-btc/crypto/zec.js.map +1 -1
- package/lib/families/bitcoin/wallet-btc/crypto/zen.d.ts +3 -4
- package/lib/families/bitcoin/wallet-btc/crypto/zen.d.ts.map +1 -1
- package/lib/families/bitcoin/wallet-btc/crypto/zen.js +33 -24
- package/lib/families/bitcoin/wallet-btc/crypto/zen.js.map +1 -1
- package/lib/families/bitcoin/wallet-btc/explorer/index.d.ts.map +1 -1
- package/lib/families/bitcoin/wallet-btc/explorer/index.js +20 -0
- package/lib/families/bitcoin/wallet-btc/explorer/index.js.map +1 -1
- package/lib/families/bitcoin/wallet-btc/storage/types.d.ts +0 -1
- package/lib/families/bitcoin/wallet-btc/storage/types.d.ts.map +1 -1
- package/lib/families/celo/api/hubble.d.ts +8 -0
- package/lib/families/celo/api/hubble.d.ts.map +1 -0
- package/lib/families/celo/api/hubble.js +144 -0
- package/lib/families/celo/api/hubble.js.map +1 -0
- package/lib/families/celo/api/index.d.ts +2 -0
- package/lib/families/celo/api/index.d.ts.map +1 -0
- package/lib/families/celo/api/index.js +13 -0
- package/lib/families/celo/api/index.js.map +1 -0
- package/lib/families/celo/api/sdk.d.ts +3 -0
- package/lib/families/celo/api/sdk.d.ts.map +1 -0
- package/lib/families/celo/api/sdk.js +13 -0
- package/lib/families/celo/api/sdk.js.map +1 -0
- package/lib/families/celo/bridge/js.d.ts +8 -0
- package/lib/families/celo/bridge/js.d.ts.map +1 -0
- package/lib/families/celo/bridge/js.js +87 -0
- package/lib/families/celo/bridge/js.js.map +1 -0
- package/lib/families/celo/cli-transaction.d.ts +14 -0
- package/lib/families/celo/cli-transaction.d.ts.map +1 -0
- package/lib/families/celo/cli-transaction.js +37 -0
- package/lib/families/celo/cli-transaction.js.map +1 -0
- package/lib/families/celo/datasets/celo.scanAccounts.1.d.ts +5 -0
- package/lib/families/celo/datasets/celo.scanAccounts.1.d.ts.map +1 -0
- package/lib/families/celo/datasets/celo.scanAccounts.1.js +12 -0
- package/lib/families/celo/datasets/celo.scanAccounts.1.js.map +1 -0
- package/lib/families/celo/deviceTransactionConfig.d.ts +4 -0
- package/lib/families/celo/deviceTransactionConfig.d.ts.map +1 -0
- package/lib/families/celo/deviceTransactionConfig.js +16 -0
- package/lib/families/celo/deviceTransactionConfig.js.map +1 -0
- package/lib/families/celo/hw-app-celo.d.ts +19 -0
- package/lib/families/celo/hw-app-celo.d.ts.map +1 -0
- package/lib/families/celo/hw-app-celo.js +147 -0
- package/lib/families/celo/hw-app-celo.js.map +1 -0
- package/lib/families/celo/hw-getAddress.d.ts +2 -0
- package/lib/families/celo/hw-getAddress.d.ts.map +1 -0
- package/lib/families/celo/hw-getAddress.js +13 -0
- package/lib/families/celo/hw-getAddress.js.map +1 -0
- package/lib/families/celo/js-broadcast.d.ts +8 -0
- package/lib/families/celo/js-broadcast.d.ts.map +1 -0
- package/lib/families/celo/js-broadcast.js +58 -0
- package/lib/families/celo/js-broadcast.js.map +1 -0
- package/lib/families/celo/js-buildTransaction.d.ts +6 -0
- package/lib/families/celo/js-buildTransaction.d.ts.map +1 -0
- package/lib/families/celo/js-buildTransaction.js +89 -0
- package/lib/families/celo/js-buildTransaction.js.map +1 -0
- package/lib/families/celo/js-createTransaction.d.ts +4 -0
- package/lib/families/celo/js-createTransaction.d.ts.map +1 -0
- package/lib/families/celo/js-createTransaction.js +12 -0
- package/lib/families/celo/js-createTransaction.js.map +1 -0
- package/lib/families/celo/js-estimateMaxSpendable.d.ts +10 -0
- package/lib/families/celo/js-estimateMaxSpendable.d.ts.map +1 -0
- package/lib/families/celo/js-estimateMaxSpendable.js +77 -0
- package/lib/families/celo/js-estimateMaxSpendable.js.map +1 -0
- package/lib/families/celo/js-getFeesForTransaction.d.ts +8 -0
- package/lib/families/celo/js-getFeesForTransaction.d.ts.map +1 -0
- package/lib/families/celo/js-getFeesForTransaction.js +76 -0
- package/lib/families/celo/js-getFeesForTransaction.js.map +1 -0
- package/lib/families/celo/js-getTransactionStatus.d.ts +5 -0
- package/lib/families/celo/js-getTransactionStatus.d.ts.map +1 -0
- package/lib/families/celo/js-getTransactionStatus.js +86 -0
- package/lib/families/celo/js-getTransactionStatus.js.map +1 -0
- package/lib/families/celo/js-prepareTransaction.d.ts +5 -0
- package/lib/families/celo/js-prepareTransaction.d.ts.map +1 -0
- package/lib/families/celo/js-prepareTransaction.js +76 -0
- package/lib/families/celo/js-prepareTransaction.js.map +1 -0
- package/lib/families/celo/js-signOperation.d.ts +13 -0
- package/lib/families/celo/js-signOperation.d.ts.map +1 -0
- package/lib/families/celo/js-signOperation.js +150 -0
- package/lib/families/celo/js-signOperation.js.map +1 -0
- package/lib/families/celo/js-synchronisation.d.ts +10 -0
- package/lib/families/celo/js-synchronisation.d.ts.map +1 -0
- package/lib/families/celo/js-synchronisation.js +88 -0
- package/lib/families/celo/js-synchronisation.js.map +1 -0
- package/lib/families/celo/specs.d.ts +7 -0
- package/lib/families/celo/specs.d.ts.map +1 -0
- package/lib/families/celo/specs.js +56 -0
- package/lib/families/celo/specs.js.map +1 -0
- package/lib/families/celo/speculos-deviceActions.d.ts +7 -0
- package/lib/families/celo/speculos-deviceActions.d.ts.map +1 -0
- package/lib/families/celo/speculos-deviceActions.js +52 -0
- package/lib/families/celo/speculos-deviceActions.js.map +1 -0
- package/lib/families/celo/transaction.d.ts +11 -0
- package/lib/families/celo/transaction.d.ts.map +1 -0
- package/lib/families/celo/transaction.js +39 -0
- package/lib/families/celo/transaction.js.map +1 -0
- package/lib/families/celo/types.d.ts +16 -0
- package/lib/families/celo/types.d.ts.map +1 -0
- package/lib/families/celo/types.js +6 -0
- package/lib/families/celo/types.js.map +1 -0
- package/lib/families/ethereum/datasets/ethereum.scanAccounts.1.d.ts +1 -0
- package/lib/families/ethereum/datasets/ethereum.scanAccounts.1.d.ts.map +1 -1
- package/lib/families/ethereum/datasets/ethereum.scanAccounts.1.js +1 -0
- package/lib/families/ethereum/datasets/ethereum.scanAccounts.1.js.map +1 -1
- package/lib/families/ethereum/modules/erc1155.d.ts.map +1 -1
- package/lib/families/ethereum/modules/erc1155.js +8 -2
- package/lib/families/ethereum/modules/erc1155.js.map +1 -1
- package/lib/families/ethereum/signOperation.d.ts.map +1 -1
- package/lib/families/ethereum/signOperation.js +26 -15
- package/lib/families/ethereum/signOperation.js.map +1 -1
- package/lib/families/ethereum/specs.d.ts.map +1 -1
- package/lib/families/ethereum/specs.js +2 -4
- package/lib/families/ethereum/specs.js.map +1 -1
- package/lib/families/ethereum/transaction.d.ts +4 -1
- package/lib/families/ethereum/transaction.d.ts.map +1 -1
- package/lib/families/ethereum/transaction.js +15 -27
- package/lib/families/ethereum/transaction.js.map +1 -1
- package/lib/families/polkadot/cache.d.ts +1 -1
- package/lib/families/polkadot/cache.js +1 -1
- package/lib/families/solana/api/chain/instruction/token/types.d.ts +1 -1
- package/lib/families/solana/specs.js +1 -1
- package/lib/families/solana/specs.js.map +1 -1
- package/lib/families/tezos/bakers.whitelist-default.d.ts.map +1 -1
- package/lib/families/tezos/bakers.whitelist-default.js +1 -1
- package/lib/families/tezos/bakers.whitelist-default.js.map +1 -1
- package/lib/families/tezos/bridge/js.d.ts.map +1 -1
- package/lib/families/tezos/bridge/js.js +2 -1
- package/lib/families/tezos/bridge/js.js.map +1 -1
- package/lib/families/tezos/test-specifics.d.ts.map +1 -1
- package/lib/families/tezos/test-specifics.js +1 -0
- package/lib/families/tezos/test-specifics.js.map +1 -1
- package/lib/featureFlags/FeatureToggle.d.ts +10 -0
- package/lib/featureFlags/FeatureToggle.d.ts.map +1 -0
- package/lib/featureFlags/FeatureToggle.js +17 -0
- package/lib/featureFlags/FeatureToggle.js.map +1 -0
- package/lib/featureFlags/defaultFeatures.d.ts +3 -0
- package/lib/featureFlags/defaultFeatures.d.ts.map +1 -0
- package/lib/featureFlags/defaultFeatures.js +9 -0
- package/lib/featureFlags/defaultFeatures.js.map +1 -0
- package/lib/featureFlags/index.d.ts +5 -0
- package/lib/featureFlags/index.d.ts.map +1 -0
- package/lib/featureFlags/index.js +17 -0
- package/lib/featureFlags/index.js.map +1 -0
- package/lib/featureFlags/provider.d.ts +13 -0
- package/lib/featureFlags/provider.d.ts.map +1 -0
- package/lib/featureFlags/provider.js +68 -0
- package/lib/featureFlags/provider.js.map +1 -0
- package/lib/featureFlags/types.d.ts +8 -0
- package/lib/featureFlags/types.d.ts.map +1 -0
- package/lib/featureFlags/types.js +3 -0
- package/lib/featureFlags/types.js.map +1 -0
- package/lib/featureFlags/useFeature.d.ts +3 -0
- package/lib/featureFlags/useFeature.d.ts.map +1 -0
- package/lib/featureFlags/useFeature.js +9 -0
- package/lib/featureFlags/useFeature.js.map +1 -0
- package/lib/generated/bridge/js.d.ts +4 -0
- package/lib/generated/bridge/js.d.ts.map +1 -1
- package/lib/generated/bridge/js.js +24 -22
- package/lib/generated/bridge/js.js.map +1 -1
- package/lib/generated/cli-transaction.d.ts +9 -0
- package/lib/generated/cli-transaction.d.ts.map +1 -1
- package/lib/generated/cli-transaction.js +24 -22
- package/lib/generated/cli-transaction.js.map +1 -1
- package/lib/generated/deviceTransactionConfig.d.ts +2 -0
- package/lib/generated/deviceTransactionConfig.d.ts.map +1 -1
- package/lib/generated/deviceTransactionConfig.js +22 -20
- package/lib/generated/deviceTransactionConfig.js.map +1 -1
- package/lib/generated/hw-getAddress.d.ts +1 -0
- package/lib/generated/hw-getAddress.d.ts.map +1 -1
- package/lib/generated/hw-getAddress.js +26 -24
- package/lib/generated/hw-getAddress.js.map +1 -1
- package/lib/generated/specs.d.ts +3 -0
- package/lib/generated/specs.d.ts.map +1 -1
- package/lib/generated/specs.js +24 -22
- package/lib/generated/specs.js.map +1 -1
- package/lib/generated/speculos-deviceActions.d.ts +3 -0
- package/lib/generated/speculos-deviceActions.d.ts.map +1 -1
- package/lib/generated/speculos-deviceActions.js +24 -22
- package/lib/generated/speculos-deviceActions.js.map +1 -1
- package/lib/generated/transaction.d.ts +5 -0
- package/lib/generated/transaction.d.ts.map +1 -1
- package/lib/generated/transaction.js +26 -24
- package/lib/generated/transaction.js.map +1 -1
- package/lib/generated/types.d.ts +12 -6
- package/lib/generated/types.d.ts.map +1 -1
- package/lib/generated/types.js +14 -12
- package/lib/generated/types.js.map +1 -1
- package/lib/load/speculos.d.ts +7 -0
- package/lib/load/speculos.d.ts.map +1 -1
- package/lib/load/speculos.js +27 -11
- package/lib/load/speculos.js.map +1 -1
- package/lib/types/index.d.ts +1 -0
- package/lib/types/index.d.ts.map +1 -1
- package/lib/types/index.js +1 -0
- package/lib/types/index.js.map +1 -1
- package/package.json +23 -21
- package/src/.DS_Store +0 -0
- package/src/{data/flags → __tests__}/.DS_Store +0 -0
- package/src/__tests__/__snapshots__/all.libcore.ts.snap +457 -33509
- package/src/__tests__/families/bitcoin/wallet-btc/xpub.getAddress.ts +47 -0
- package/src/__tests__/families/bitcoin/wallet-btc/xpub.pickingStrategies.integration.test.ts +0 -11
- package/src/__tests__/test-helpers/setup.ts +1 -0
- package/src/account/support.ts +1 -0
- package/src/api/Ethereum.ts +1 -0
- package/src/apps/polyfill.ts +1 -0
- package/src/bot/engine.ts +4 -1
- package/src/bridge/jsHelpers.ts +1 -1
- package/src/data/icons/react/celo.tsx +12 -0
- package/src/data/icons/react/index.tsx +1 -0
- package/src/data/icons/reactNative/celo.tsx +13 -0
- package/src/data/icons/reactNative/index.tsx +1 -0
- package/src/data/icons/svg/CELO.svg +5 -0
- package/src/env.ts +10 -0
- package/src/exchange/platform/transfer/index.ts +21 -1
- package/src/families/algorand/buildTransaction.ts +4 -8
- package/src/families/algorand/js-getFeesForTransaction.ts +1 -1
- package/src/families/algorand/js-signOperation.ts +2 -2
- package/src/families/algorand/js-synchronization.ts +1 -0
- package/src/families/bitcoin/js-signOperation.ts +3 -5
- package/src/families/bitcoin/js-synchronisation.ts +4 -4
- package/src/families/bitcoin/wallet-btc/crypto/base.ts +31 -18
- package/src/families/bitcoin/wallet-btc/crypto/bitcoin.ts +3 -17
- package/src/families/bitcoin/wallet-btc/crypto/bitcoincash.ts +5 -39
- package/src/families/bitcoin/wallet-btc/crypto/decred.ts +2 -15
- package/src/families/bitcoin/wallet-btc/crypto/litecoin.ts +1 -71
- package/src/families/bitcoin/wallet-btc/crypto/types.ts +7 -0
- package/src/families/bitcoin/wallet-btc/crypto/zec.ts +4 -22
- package/src/families/bitcoin/wallet-btc/crypto/zen.ts +4 -22
- package/src/families/bitcoin/wallet-btc/explorer/index.ts +20 -0
- package/src/families/bitcoin/wallet-btc/storage/types.ts +0 -1
- package/src/families/celo/api/hubble.ts +93 -0
- package/src/families/celo/api/index.ts +1 -0
- package/src/families/celo/api/sdk.ts +8 -0
- package/src/families/celo/bridge/js.ts +38 -0
- package/src/families/celo/cli-transaction.ts +41 -0
- package/src/families/celo/datasets/celo.scanAccounts.1.ts +20 -0
- package/src/families/celo/deviceTransactionConfig.ts +19 -0
- package/src/families/celo/hw-app-celo.ts +108 -0
- package/src/families/celo/hw-getAddress.ts +1 -0
- package/src/families/celo/js-broadcast.ts +12 -0
- package/src/families/celo/js-buildTransaction.ts +32 -0
- package/src/families/celo/js-createTransaction.ts +12 -0
- package/src/families/celo/js-estimateMaxSpendable.ts +28 -0
- package/src/families/celo/js-getFeesForTransaction.ts +38 -0
- package/src/families/celo/js-getTransactionStatus.ts +67 -0
- package/src/families/celo/js-prepareTransaction.ts +28 -0
- package/src/families/celo/js-signOperation.ts +149 -0
- package/src/families/celo/js-synchronisation.ts +40 -0
- package/src/families/celo/specs.ts +53 -0
- package/src/families/celo/speculos-deviceActions.ts +50 -0
- package/src/families/celo/transaction.ts +39 -0
- package/src/families/celo/types.ts +20 -0
- package/src/families/ethereum/datasets/ethereum.scanAccounts.1.ts +1 -0
- package/src/families/ethereum/modules/erc1155.ts +9 -0
- package/src/families/ethereum/signOperation.ts +21 -20
- package/src/families/ethereum/specs.ts +0 -2
- package/src/families/ethereum/transaction.ts +10 -24
- package/src/families/polkadot/cache.ts +1 -1
- package/src/families/solana/specs.ts +1 -1
- package/src/families/tezos/bakers.whitelist-default.ts +0 -2
- package/src/families/tezos/bridge/js.ts +6 -1
- package/src/families/tezos/test-specifics.ts +1 -0
- package/src/featureFlags/FeatureToggle.tsx +24 -0
- package/src/featureFlags/defaultFeatures.ts +7 -0
- package/src/featureFlags/index.ts +4 -0
- package/src/featureFlags/provider.tsx +48 -0
- package/src/featureFlags/types.ts +9 -0
- package/src/featureFlags/useFeature.ts +8 -0
- package/src/generated/bridge/js.ts +3 -0
- package/src/generated/cli-transaction.ts +3 -0
- package/src/generated/deviceTransactionConfig.ts +3 -0
- package/src/generated/hw-getAddress.ts +3 -0
- package/src/generated/specs.ts +3 -0
- package/src/generated/speculos-deviceActions.ts +3 -0
- package/src/generated/transaction.ts +3 -0
- package/src/generated/types.ts +14 -0
- package/src/load/speculos.ts +23 -10
- package/src/types/index.ts +1 -0
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
14
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
15
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
16
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
17
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
18
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
19
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
20
|
+
});
|
|
21
|
+
};
|
|
22
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
23
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
24
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
25
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
26
|
+
function step(op) {
|
|
27
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
28
|
+
while (_) try {
|
|
29
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
30
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
31
|
+
switch (op[0]) {
|
|
32
|
+
case 0: case 1: t = op; break;
|
|
33
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
34
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
35
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
36
|
+
default:
|
|
37
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
38
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
39
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
40
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
41
|
+
if (t[2]) _.ops.pop();
|
|
42
|
+
_.trys.pop(); continue;
|
|
43
|
+
}
|
|
44
|
+
op = body.call(thisArg, _);
|
|
45
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
46
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
50
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
51
|
+
};
|
|
52
|
+
exports.__esModule = true;
|
|
53
|
+
var jsHelpers_1 = require("../../../bridge/jsHelpers");
|
|
54
|
+
var js_synchronisation_1 = require("../js-synchronisation");
|
|
55
|
+
var js_signOperation_1 = __importDefault(require("../js-signOperation"));
|
|
56
|
+
var js_getTransactionStatus_1 = __importDefault(require("../js-getTransactionStatus"));
|
|
57
|
+
var js_broadcast_1 = __importDefault(require("../js-broadcast"));
|
|
58
|
+
var js_estimateMaxSpendable_1 = __importDefault(require("../js-estimateMaxSpendable"));
|
|
59
|
+
var js_prepareTransaction_1 = __importDefault(require("../js-prepareTransaction"));
|
|
60
|
+
var js_createTransaction_1 = __importDefault(require("../js-createTransaction"));
|
|
61
|
+
var updateTransaction = function (t, patch) { return (__assign(__assign({}, t), patch)); };
|
|
62
|
+
var receive = (0, jsHelpers_1.makeAccountBridgeReceive)();
|
|
63
|
+
var preload = function () { return __awaiter(void 0, void 0, void 0, function () { return __generator(this, function (_a) {
|
|
64
|
+
return [2 /*return*/, Promise.resolve({})];
|
|
65
|
+
}); }); };
|
|
66
|
+
var hydrate = function () { };
|
|
67
|
+
var currencyBridge = {
|
|
68
|
+
preload: preload,
|
|
69
|
+
hydrate: hydrate,
|
|
70
|
+
scanAccounts: js_synchronisation_1.scanAccounts
|
|
71
|
+
};
|
|
72
|
+
var accountBridge = {
|
|
73
|
+
estimateMaxSpendable: js_estimateMaxSpendable_1["default"],
|
|
74
|
+
createTransaction: js_createTransaction_1["default"],
|
|
75
|
+
updateTransaction: updateTransaction,
|
|
76
|
+
getTransactionStatus: js_getTransactionStatus_1["default"],
|
|
77
|
+
prepareTransaction: js_prepareTransaction_1["default"],
|
|
78
|
+
sync: js_synchronisation_1.sync,
|
|
79
|
+
receive: receive,
|
|
80
|
+
signOperation: js_signOperation_1["default"],
|
|
81
|
+
broadcast: js_broadcast_1["default"]
|
|
82
|
+
};
|
|
83
|
+
exports["default"] = {
|
|
84
|
+
currencyBridge: currencyBridge,
|
|
85
|
+
accountBridge: accountBridge
|
|
86
|
+
};
|
|
87
|
+
//# sourceMappingURL=js.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"js.js","sourceRoot":"","sources":["../../../../src/families/celo/bridge/js.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,uDAAqE;AACrE,4DAA2D;AAC3D,yEAAgD;AAChD,uFAA8D;AAC9D,iEAAwC;AACxC,uFAA8D;AAC9D,mFAA0D;AAC1D,iFAAwD;AAExD,IAAM,iBAAiB,GAAG,UAAC,CAAC,EAAE,KAAK,IAAK,OAAA,uBAAM,CAAC,GAAK,KAAK,EAAG,EAApB,CAAoB,CAAC;AAE7D,IAAM,OAAO,GAAG,IAAA,oCAAwB,GAAE,CAAC;AAE3C,IAAM,OAAO,GAAG;IAAY,sBAAA,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,EAAA;SAAA,CAAC;AAChD,IAAM,OAAO,GAAG,cAAa,CAAC,CAAC;AAE/B,IAAM,cAAc,GAAmB;IACrC,OAAO,SAAA;IACP,OAAO,SAAA;IACP,YAAY,mCAAA;CACb,CAAC;AACF,IAAM,aAAa,GAA+B;IAChD,oBAAoB,sCAAA;IACpB,iBAAiB,mCAAA;IACjB,iBAAiB,mBAAA;IACjB,oBAAoB,sCAAA;IACpB,kBAAkB,oCAAA;IAClB,IAAI,2BAAA;IACJ,OAAO,SAAA;IACP,aAAa,+BAAA;IACb,SAAS,2BAAA;CACV,CAAC;AACF,qBAAe;IACb,cAAc,gBAAA;IACd,aAAa,eAAA;CACd,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { Transaction, Account, AccountLike, AccountLikeArray } from "../../types";
|
|
2
|
+
declare function inferAccounts(account: Account): AccountLikeArray;
|
|
3
|
+
declare function inferTransactions(transactions: Array<{
|
|
4
|
+
account: AccountLike;
|
|
5
|
+
transaction: Transaction;
|
|
6
|
+
mainAccount: Account;
|
|
7
|
+
}>): Transaction[];
|
|
8
|
+
declare const _default: {
|
|
9
|
+
options: never[];
|
|
10
|
+
inferAccounts: typeof inferAccounts;
|
|
11
|
+
inferTransactions: typeof inferTransactions;
|
|
12
|
+
};
|
|
13
|
+
export default _default;
|
|
14
|
+
//# sourceMappingURL=cli-transaction.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-transaction.d.ts","sourceRoot":"","sources":["../../../src/families/celo/cli-transaction.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,WAAW,EACX,OAAO,EACP,WAAW,EACX,gBAAgB,EACjB,MAAM,aAAa,CAAC;AAIrB,iBAAS,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,gBAAgB,CAKzD;AAED,iBAAS,iBAAiB,CACxB,YAAY,EAAE,KAAK,CAAC;IAClB,OAAO,EAAE,WAAW,CAAC;IACrB,WAAW,EAAE,WAAW,CAAC;IACzB,WAAW,EAAE,OAAO,CAAC;CACtB,CAAC,GACD,WAAW,EAAE,CASf;;;;;;AAED,wBAIE"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
|
+
};
|
|
16
|
+
exports.__esModule = true;
|
|
17
|
+
var invariant_1 = __importDefault(require("invariant"));
|
|
18
|
+
var flatMap_1 = __importDefault(require("lodash/flatMap"));
|
|
19
|
+
var options = [];
|
|
20
|
+
function inferAccounts(account) {
|
|
21
|
+
(0, invariant_1["default"])(account.currency.family === "celo", "celo family");
|
|
22
|
+
var accounts = [account];
|
|
23
|
+
return accounts;
|
|
24
|
+
}
|
|
25
|
+
function inferTransactions(transactions) {
|
|
26
|
+
return (0, flatMap_1["default"])(transactions, function (_a) {
|
|
27
|
+
var transaction = _a.transaction;
|
|
28
|
+
(0, invariant_1["default"])(transaction.family === "celo", "celo family");
|
|
29
|
+
return __assign(__assign({}, transaction), { family: "celo" });
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
exports["default"] = {
|
|
33
|
+
options: options,
|
|
34
|
+
inferAccounts: inferAccounts,
|
|
35
|
+
inferTransactions: inferTransactions
|
|
36
|
+
};
|
|
37
|
+
//# sourceMappingURL=cli-transaction.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-transaction.js","sourceRoot":"","sources":["../../../src/families/celo/cli-transaction.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wDAAkC;AAClC,2DAAqC;AASrC,IAAM,OAAO,GAAG,EAAE,CAAC;AAEnB,SAAS,aAAa,CAAC,OAAgB;IACrC,IAAA,sBAAS,EAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,KAAK,MAAM,EAAE,aAAa,CAAC,CAAC;IAE7D,IAAM,QAAQ,GAAc,CAAC,OAAO,CAAC,CAAC;IACtC,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,iBAAiB,CACxB,YAIE;IAEF,OAAO,IAAA,oBAAO,EAAC,YAAY,EAAE,UAAC,EAAe;YAAb,WAAW,iBAAA;QACzC,IAAA,sBAAS,EAAC,WAAW,CAAC,MAAM,KAAK,MAAM,EAAE,aAAa,CAAC,CAAC;QAExD,OAAO,sBACF,WAAW,KACd,MAAM,EAAE,MAAM,GACA,CAAC;IACnB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,qBAAe;IACb,OAAO,SAAA;IACP,aAAa,eAAA;IACb,iBAAiB,mBAAA;CAClB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"celo.scanAccounts.1.d.ts","sourceRoot":"","sources":["../../../../src/families/celo/datasets/celo.scanAccounts.1.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAE5C,QAAA,MAAM,OAAO,EAAE,cAAc,CAAC,WAAW,CAcxC,CAAC;AAEF,eAAe,OAAO,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
exports.__esModule = true;
|
|
3
|
+
var dataset = {
|
|
4
|
+
scanAccounts: [
|
|
5
|
+
{
|
|
6
|
+
name: "celo seed 1",
|
|
7
|
+
apdus: "\n => e002000009028000002c8000ce10\n <= 41040106794f46b69e1ae56dff904510959e59074a37341f8cc740e9ce7a0b24421c42e7023481f5ef03926739baa6bb26cac7bf48f249a24793264711d48499499528433235323935323541463035434134313939633236413838623438393463383342303330433733399000\n => e002000015058000002c8000ce10800000000000000000000000\n <= 41044f4998c3f81966645f25e95082f9fe7d104b1ba4286486a8ecd8fd11f79ef02bd8110f086b390a418ab619a650f3df59a3c84912ce1ea125386d7aa7732fcd0b28393634313334336638346535304143304334434133626644313244433063346231653732363544359000\n => e002000015058000002c8000ce10800000010000000000000000\n <= 4104630b6447b0f690520a5612f1dc57da90b84f6b59dfeb375bed1113fb34a8d0f9181ec63e40f9fde05761084dbd022ba76711eb2b36442cf4b5d2bc19def9156428343435306565646238623532333931354534393639633239646241653944354563303646453837349000\n "
|
|
8
|
+
},
|
|
9
|
+
]
|
|
10
|
+
};
|
|
11
|
+
exports["default"] = dataset;
|
|
12
|
+
//# sourceMappingURL=celo.scanAccounts.1.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"celo.scanAccounts.1.js","sourceRoot":"","sources":["../../../../src/families/celo/datasets/celo.scanAccounts.1.ts"],"names":[],"mappings":";;AAGA,IAAM,OAAO,GAAgC;IAC3C,YAAY,EAAE;QACZ;YACE,IAAI,EAAE,aAAa;YACnB,KAAK,EAAE,81BAON;SACF;KACF;CACF,CAAC;AAEF,qBAAe,OAAO,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deviceTransactionConfig.d.ts","sourceRoot":"","sources":["../../../src/families/celo/deviceTransactionConfig.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAEhE,iBAAS,0BAA0B,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAcnE;AAED,eAAe,0BAA0B,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
exports.__esModule = true;
|
|
3
|
+
function getDeviceTransactionConfig() {
|
|
4
|
+
var fields = [];
|
|
5
|
+
fields.push({
|
|
6
|
+
type: "amount",
|
|
7
|
+
label: "Amount"
|
|
8
|
+
});
|
|
9
|
+
fields.push({
|
|
10
|
+
type: "fees",
|
|
11
|
+
label: "Fees"
|
|
12
|
+
});
|
|
13
|
+
return fields;
|
|
14
|
+
}
|
|
15
|
+
exports["default"] = getDeviceTransactionConfig;
|
|
16
|
+
//# sourceMappingURL=deviceTransactionConfig.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deviceTransactionConfig.js","sourceRoot":"","sources":["../../../src/families/celo/deviceTransactionConfig.ts"],"names":[],"mappings":";;AAEA,SAAS,0BAA0B;IACjC,IAAM,MAAM,GAAkC,EAAE,CAAC;IAEjD,MAAM,CAAC,IAAI,CAAC;QACV,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,QAAQ;KAChB,CAAC,CAAC;IAEH,MAAM,CAAC,IAAI,CAAC;QACV,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,MAAM;KACd,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,qBAAe,0BAA0B,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import type Transport from "@ledgerhq/hw-transport";
|
|
3
|
+
/**
|
|
4
|
+
* Heavily inspiried by celo-web-wallet
|
|
5
|
+
* https://github.com/celo-tools/celo-web-wallet/blob/master/src/features/ledger/CeloLedgerApp.ts
|
|
6
|
+
*/
|
|
7
|
+
export declare class CeloApp {
|
|
8
|
+
transport: Transport;
|
|
9
|
+
constructor(transport: any);
|
|
10
|
+
signTransaction(path: string, rawTxHex: string): Promise<{
|
|
11
|
+
s: string;
|
|
12
|
+
v: string;
|
|
13
|
+
r: string;
|
|
14
|
+
}>;
|
|
15
|
+
provideERC20TokenInformation({ data }: {
|
|
16
|
+
data: Buffer;
|
|
17
|
+
}): Promise<boolean>;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=hw-app-celo.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hw-app-celo.d.ts","sourceRoot":"","sources":["../../../src/families/celo/hw-app-celo.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,SAAS,MAAM,wBAAwB,CAAC;AAGpD;;;GAGG;AACH,qBAAa,OAAO;IAClB,SAAS,EAAE,SAAS,CAAC;gBAET,SAAS,EAAE,GAAG;IAIpB,eAAe,CACnB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC;QACT,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;KACX,CAAC;IAoDF,4BAA4B,CAAC,EAAE,IAAI,EAAE,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC;CAG3E"}
|
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (_) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
exports.__esModule = true;
|
|
39
|
+
exports.CeloApp = void 0;
|
|
40
|
+
var rlp_1 = require("rlp");
|
|
41
|
+
/**
|
|
42
|
+
* Heavily inspiried by celo-web-wallet
|
|
43
|
+
* https://github.com/celo-tools/celo-web-wallet/blob/master/src/features/ledger/CeloLedgerApp.ts
|
|
44
|
+
*/
|
|
45
|
+
var CeloApp = /** @class */ (function () {
|
|
46
|
+
function CeloApp(transport) {
|
|
47
|
+
this.transport = transport;
|
|
48
|
+
}
|
|
49
|
+
CeloApp.prototype.signTransaction = function (path, rawTxHex) {
|
|
50
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
51
|
+
var paths, rawTx, offset, response, rlpTx, rlpOffset, rlpVrs, _loop_1, this_1, v, r, s;
|
|
52
|
+
return __generator(this, function (_a) {
|
|
53
|
+
switch (_a.label) {
|
|
54
|
+
case 0:
|
|
55
|
+
paths = splitPath(path);
|
|
56
|
+
rawTx = Buffer.from(rawTxHex, "hex");
|
|
57
|
+
offset = 0;
|
|
58
|
+
rlpTx = (0, rlp_1.decode)(rawTx);
|
|
59
|
+
rlpOffset = 0;
|
|
60
|
+
if (rlpTx.length > 6) {
|
|
61
|
+
rlpVrs = (0, rlp_1.encode)(rlpTx.slice(-3));
|
|
62
|
+
rlpOffset = rawTx.length - (rlpVrs.length - 1);
|
|
63
|
+
}
|
|
64
|
+
_loop_1 = function () {
|
|
65
|
+
var first, maxChunkSize, chunkSize, buffer;
|
|
66
|
+
return __generator(this, function (_b) {
|
|
67
|
+
switch (_b.label) {
|
|
68
|
+
case 0:
|
|
69
|
+
first = offset === 0;
|
|
70
|
+
maxChunkSize = first ? 150 - 1 - paths.length * 4 : 150;
|
|
71
|
+
chunkSize = offset + maxChunkSize > rawTx.length
|
|
72
|
+
? rawTx.length - offset
|
|
73
|
+
: maxChunkSize;
|
|
74
|
+
if (rlpOffset != 0 && offset + chunkSize == rlpOffset) {
|
|
75
|
+
// Make sure that the chunk doesn't end right on the EIP 155 marker if set
|
|
76
|
+
chunkSize--;
|
|
77
|
+
}
|
|
78
|
+
buffer = Buffer.alloc(first ? 1 + paths.length * 4 + chunkSize : chunkSize);
|
|
79
|
+
if (first) {
|
|
80
|
+
buffer[0] = paths.length;
|
|
81
|
+
paths.forEach(function (element, index) {
|
|
82
|
+
buffer.writeUInt32BE(element, 1 + 4 * index);
|
|
83
|
+
});
|
|
84
|
+
rawTx.copy(buffer, 1 + 4 * paths.length, offset, offset + chunkSize);
|
|
85
|
+
}
|
|
86
|
+
else {
|
|
87
|
+
rawTx.copy(buffer, 0, offset, offset + chunkSize);
|
|
88
|
+
}
|
|
89
|
+
return [4 /*yield*/, this_1.transport
|
|
90
|
+
.send(0xe0, 0x04, first ? 0x00 : 0x80, 0x00, buffer)["catch"](function (e) {
|
|
91
|
+
throw e;
|
|
92
|
+
})];
|
|
93
|
+
case 1:
|
|
94
|
+
response = _b.sent();
|
|
95
|
+
offset += chunkSize;
|
|
96
|
+
return [2 /*return*/];
|
|
97
|
+
}
|
|
98
|
+
});
|
|
99
|
+
};
|
|
100
|
+
this_1 = this;
|
|
101
|
+
_a.label = 1;
|
|
102
|
+
case 1:
|
|
103
|
+
if (!(offset !== rawTx.length)) return [3 /*break*/, 3];
|
|
104
|
+
return [5 /*yield**/, _loop_1()];
|
|
105
|
+
case 2:
|
|
106
|
+
_a.sent();
|
|
107
|
+
return [3 /*break*/, 1];
|
|
108
|
+
case 3:
|
|
109
|
+
v = response.slice(0, 1).toString("hex");
|
|
110
|
+
r = response.slice(1, 1 + 32).toString("hex");
|
|
111
|
+
s = response.slice(1 + 32, 1 + 32 + 32).toString("hex");
|
|
112
|
+
return [2 /*return*/, { v: v, r: r, s: s }];
|
|
113
|
+
}
|
|
114
|
+
});
|
|
115
|
+
});
|
|
116
|
+
};
|
|
117
|
+
CeloApp.prototype.provideERC20TokenInformation = function (_a) {
|
|
118
|
+
var data = _a.data;
|
|
119
|
+
return provideERC20TokenInformation(this.transport, data);
|
|
120
|
+
};
|
|
121
|
+
return CeloApp;
|
|
122
|
+
}());
|
|
123
|
+
exports.CeloApp = CeloApp;
|
|
124
|
+
function splitPath(path) {
|
|
125
|
+
var result = [];
|
|
126
|
+
var components = path.split("/");
|
|
127
|
+
components.forEach(function (element) {
|
|
128
|
+
var number = parseInt(element, 10);
|
|
129
|
+
if (isNaN(number)) {
|
|
130
|
+
return; // FIXME shouldn't it throws instead?
|
|
131
|
+
}
|
|
132
|
+
if (element.length > 1 && element[element.length - 1] === "'") {
|
|
133
|
+
number += 0x80000000;
|
|
134
|
+
}
|
|
135
|
+
result.push(number);
|
|
136
|
+
});
|
|
137
|
+
return result;
|
|
138
|
+
}
|
|
139
|
+
function provideERC20TokenInformation(transport, data) {
|
|
140
|
+
return transport.send(0xe0, 0x0a, 0x00, 0x00, data).then(function () { return true; }, function (e) {
|
|
141
|
+
if (e && e.statusCode === 0x6d00) {
|
|
142
|
+
return false;
|
|
143
|
+
}
|
|
144
|
+
throw e;
|
|
145
|
+
});
|
|
146
|
+
}
|
|
147
|
+
//# sourceMappingURL=hw-app-celo.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hw-app-celo.js","sourceRoot":"","sources":["../../../src/families/celo/hw-app-celo.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hw-getAddress.d.ts","sourceRoot":"","sources":["../../../src/families/celo/hw-getAddress.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
+
}) : (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
o[k2] = m[k];
|
|
8
|
+
}));
|
|
9
|
+
exports.__esModule = true;
|
|
10
|
+
exports["default"] = void 0;
|
|
11
|
+
var hw_getAddress_1 = require("../ethereum/hw-getAddress");
|
|
12
|
+
__createBinding(exports, hw_getAddress_1, "default");
|
|
13
|
+
//# sourceMappingURL=hw-getAddress.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hw-getAddress.js","sourceRoot":"","sources":["../../../src/families/celo/hw-getAddress.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2DAAoD;AAA3C,qDAAO"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"js-broadcast.d.ts","sourceRoot":"","sources":["../../../src/families/celo/js-broadcast.ts"],"names":[],"mappings":"AAGA,QAAA,MAAM,SAAS;;;;;8CAMd,CAAC;AAEF,eAAe,SAAS,CAAC"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (_) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
exports.__esModule = true;
|
|
39
|
+
var operation_1 = require("../../operation");
|
|
40
|
+
var sdk_1 = require("./api/sdk");
|
|
41
|
+
var broadcast = function (_a) {
|
|
42
|
+
var _b = _a.signedOperation, operation = _b.operation, signature = _b.signature;
|
|
43
|
+
return __awaiter(void 0, void 0, void 0, function () {
|
|
44
|
+
var kit, transactionHash;
|
|
45
|
+
return __generator(this, function (_c) {
|
|
46
|
+
switch (_c.label) {
|
|
47
|
+
case 0:
|
|
48
|
+
kit = (0, sdk_1.celoKit)();
|
|
49
|
+
return [4 /*yield*/, kit.web3.eth.sendSignedTransaction(signature)];
|
|
50
|
+
case 1:
|
|
51
|
+
transactionHash = (_c.sent()).transactionHash;
|
|
52
|
+
return [2 /*return*/, (0, operation_1.patchOperationWithHash)(operation, transactionHash)];
|
|
53
|
+
}
|
|
54
|
+
});
|
|
55
|
+
});
|
|
56
|
+
};
|
|
57
|
+
exports["default"] = broadcast;
|
|
58
|
+
//# sourceMappingURL=js-broadcast.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"js-broadcast.js","sourceRoot":"","sources":["../../../src/families/celo/js-broadcast.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAAyD;AACzD,iCAAoC;AAEpC,IAAM,SAAS,GAAG,UAAO,EAA6C;QAA3C,uBAAyC,EAAtB,SAAS,eAAA,EAAE,SAAS,eAAA;;;;;;oBAC1D,GAAG,GAAG,IAAA,aAAO,GAAE,CAAC;oBACM,qBAAM,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,qBAAqB,CAClE,SAAS,CACV,EAAA;;oBAFO,eAAe,GAAK,CAAA,SAE3B,CAAA,gBAFsB;oBAGvB,sBAAO,IAAA,kCAAsB,EAAC,SAAS,EAAE,eAAe,CAAC,EAAC;;;;CAC3D,CAAC;AAEF,qBAAe,SAAS,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { Transaction } from "./types";
|
|
2
|
+
import type { Account } from "../../types";
|
|
3
|
+
import { CeloTx } from "@celo/connect";
|
|
4
|
+
declare const buildTransaction: (account: Account, transaction: Transaction) => Promise<CeloTx>;
|
|
5
|
+
export default buildTransaction;
|
|
6
|
+
//# sourceMappingURL=js-buildTransaction.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"js-buildTransaction.d.ts","sourceRoot":"","sources":["../../../src/families/celo/js-buildTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAGvC,QAAA,MAAM,gBAAgB,YAAmB,OAAO,eAAe,WAAW,oBAwBzE,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
14
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
15
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
16
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
17
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
18
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
19
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
20
|
+
});
|
|
21
|
+
};
|
|
22
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
23
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
24
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
25
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
26
|
+
function step(op) {
|
|
27
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
28
|
+
while (_) try {
|
|
29
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
30
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
31
|
+
switch (op[0]) {
|
|
32
|
+
case 0: case 1: t = op; break;
|
|
33
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
34
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
35
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
36
|
+
default:
|
|
37
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
38
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
39
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
40
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
41
|
+
if (t[2]) _.ops.pop();
|
|
42
|
+
_.trys.pop(); continue;
|
|
43
|
+
}
|
|
44
|
+
op = body.call(thisArg, _);
|
|
45
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
46
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
exports.__esModule = true;
|
|
50
|
+
var sdk_1 = require("./api/sdk");
|
|
51
|
+
var buildTransaction = function (account, transaction) { return __awaiter(void 0, void 0, void 0, function () {
|
|
52
|
+
var kit, amount, value, celoToken, celoTransaction, _a;
|
|
53
|
+
var _b;
|
|
54
|
+
return __generator(this, function (_c) {
|
|
55
|
+
switch (_c.label) {
|
|
56
|
+
case 0:
|
|
57
|
+
kit = (0, sdk_1.celoKit)();
|
|
58
|
+
amount = transaction.amount;
|
|
59
|
+
value = transaction.useAllAmount
|
|
60
|
+
? account.spendableBalance.minus(transaction.fees || 0)
|
|
61
|
+
: amount;
|
|
62
|
+
return [4 /*yield*/, kit.contracts.getGoldToken()];
|
|
63
|
+
case 1:
|
|
64
|
+
celoToken = _c.sent();
|
|
65
|
+
celoTransaction = {
|
|
66
|
+
from: account.freshAddress,
|
|
67
|
+
to: celoToken.address,
|
|
68
|
+
data: celoToken
|
|
69
|
+
.transfer(transaction.recipient, value.toFixed())
|
|
70
|
+
.txo.encodeABI()
|
|
71
|
+
};
|
|
72
|
+
_a = [__assign({}, celoTransaction)];
|
|
73
|
+
_b = {};
|
|
74
|
+
return [4 /*yield*/, kit.connection.chainId()];
|
|
75
|
+
case 2:
|
|
76
|
+
_b.chainId = _c.sent();
|
|
77
|
+
return [4 /*yield*/, kit.connection.nonce(account.freshAddress)];
|
|
78
|
+
case 3:
|
|
79
|
+
_b.nonce = _c.sent();
|
|
80
|
+
return [4 /*yield*/, kit.connection.estimateGasWithInflationFactor(celoTransaction)];
|
|
81
|
+
case 4:
|
|
82
|
+
_b.gas = _c.sent();
|
|
83
|
+
return [4 /*yield*/, kit.connection.gasPrice()];
|
|
84
|
+
case 5: return [2 /*return*/, __assign.apply(void 0, _a.concat([(_b.gasPrice = _c.sent(), _b)]))];
|
|
85
|
+
}
|
|
86
|
+
});
|
|
87
|
+
}); };
|
|
88
|
+
exports["default"] = buildTransaction;
|
|
89
|
+
//# sourceMappingURL=js-buildTransaction.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"js-buildTransaction.js","sourceRoot":"","sources":["../../../src/families/celo/js-buildTransaction.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,iCAAoC;AAEpC,IAAM,gBAAgB,GAAG,UAAO,OAAgB,EAAE,WAAwB;;;;;;gBAClE,GAAG,GAAG,IAAA,aAAO,GAAE,CAAC;gBACd,MAAM,GAAK,WAAW,OAAhB,CAAiB;gBACzB,KAAK,GAAG,WAAW,CAAC,YAAY;oBACpC,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,CAAC;oBACvD,CAAC,CAAC,MAAM,CAAC;gBAEO,qBAAM,GAAG,CAAC,SAAS,CAAC,YAAY,EAAE,EAAA;;gBAA9C,SAAS,GAAG,SAAkC;gBAE9C,eAAe,GAAG;oBACtB,IAAI,EAAE,OAAO,CAAC,YAAY;oBAC1B,EAAE,EAAE,SAAS,CAAC,OAAO;oBACrB,IAAI,EAAE,SAAS;yBACZ,QAAQ,CAAC,WAAW,CAAC,SAAS,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;yBAChD,GAAG,CAAC,SAAS,EAAE;iBACnB,CAAC;mCAGG,eAAe;;gBACT,qBAAM,GAAG,CAAC,UAAU,CAAC,OAAO,EAAE,EAAA;;gBAAvC,UAAO,GAAE,SAA8B;gBAChC,qBAAM,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAA;;gBAAvD,QAAK,GAAE,SAAgD;gBAClD,qBAAM,GAAG,CAAC,UAAU,CAAC,8BAA8B,CAAC,eAAe,CAAC,EAAA;;gBAAzE,MAAG,GAAE,SAAoE;gBAC/D,qBAAM,GAAG,CAAC,UAAU,CAAC,QAAQ,EAAE,EAAA;oBAL3C,sBAAO,mCAKL,WAAQ,GAAE,SAA+B,QAChC,EAAC;;;KACb,CAAC;AAEF,qBAAe,gBAAgB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"js-createTransaction.d.ts","sourceRoot":"","sources":["../../../src/families/celo/js-createTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAGtC,QAAA,MAAM,iBAAiB,QAAO,WAM5B,CAAC;AAEH,eAAe,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
exports.__esModule = true;
|
|
3
|
+
var bignumber_js_1 = require("bignumber.js");
|
|
4
|
+
var createTransaction = function () { return ({
|
|
5
|
+
family: "celo",
|
|
6
|
+
amount: new bignumber_js_1.BigNumber(0),
|
|
7
|
+
recipient: "",
|
|
8
|
+
useAllAmount: false,
|
|
9
|
+
fees: null
|
|
10
|
+
}); };
|
|
11
|
+
exports["default"] = createTransaction;
|
|
12
|
+
//# sourceMappingURL=js-createTransaction.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"js-createTransaction.js","sourceRoot":"","sources":["../../../src/families/celo/js-createTransaction.ts"],"names":[],"mappings":";;AACA,6CAAyC;AAEzC,IAAM,iBAAiB,GAAG,cAAmB,OAAA,CAAC;IAC5C,MAAM,EAAE,MAAM;IACd,MAAM,EAAE,IAAI,wBAAS,CAAC,CAAC,CAAC;IACxB,SAAS,EAAE,EAAE;IACb,YAAY,EAAE,KAAK;IACnB,IAAI,EAAE,IAAI;CACX,CAAC,EAN2C,CAM3C,CAAC;AAEH,qBAAe,iBAAiB,CAAC"}
|