@ton/appkit 0.0.1-alpha.2 → 0.0.1
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/.turbo/turbo-build.log +430 -0
- package/CHANGELOG.md +7 -0
- package/README.md +95 -1
- package/dist/actions/balances/get-balance-by-address.cjs +33 -0
- package/dist/actions/balances/get-balance-by-address.cjs.map +1 -0
- package/dist/actions/balances/get-balance-by-address.d.ts +18 -0
- package/dist/actions/balances/get-balance-by-address.d.ts.map +1 -0
- package/dist/actions/balances/get-balance-by-address.js +13 -0
- package/dist/actions/balances/get-balance-by-address.js.map +1 -0
- package/dist/actions/balances/get-balance.cjs +36 -0
- package/dist/actions/balances/get-balance.cjs.map +1 -0
- package/dist/actions/balances/get-balance.d.ts +15 -0
- package/dist/actions/balances/get-balance.d.ts.map +1 -0
- package/dist/actions/balances/get-balance.js +16 -0
- package/dist/actions/balances/get-balance.js.map +1 -0
- package/dist/actions/connectors/add-connector.cjs +27 -0
- package/dist/actions/connectors/add-connector.cjs.map +1 -0
- package/dist/actions/connectors/add-connector.d.ts +16 -0
- package/dist/actions/connectors/add-connector.d.ts.map +1 -0
- package/dist/actions/connectors/add-connector.js +7 -0
- package/dist/actions/connectors/add-connector.js.map +1 -0
- package/dist/actions/connectors/connect.cjs +32 -0
- package/dist/actions/connectors/connect.cjs.map +1 -0
- package/dist/actions/connectors/connect.d.ts +17 -0
- package/dist/actions/connectors/connect.d.ts.map +1 -0
- package/dist/actions/connectors/connect.js +12 -0
- package/dist/actions/connectors/connect.js.map +1 -0
- package/dist/actions/connectors/disconnect.cjs +32 -0
- package/dist/actions/connectors/disconnect.cjs.map +1 -0
- package/dist/actions/connectors/disconnect.d.ts +17 -0
- package/dist/actions/connectors/disconnect.d.ts.map +1 -0
- package/dist/actions/connectors/disconnect.js +12 -0
- package/dist/actions/connectors/disconnect.js.map +1 -0
- package/dist/actions/connectors/get-connector-by-id.cjs +27 -0
- package/dist/actions/connectors/get-connector-by-id.cjs.map +1 -0
- package/dist/actions/connectors/get-connector-by-id.d.ts +18 -0
- package/dist/actions/connectors/get-connector-by-id.d.ts.map +1 -0
- package/dist/actions/connectors/get-connector-by-id.js +7 -0
- package/dist/actions/connectors/get-connector-by-id.js.map +1 -0
- package/dist/actions/connectors/get-connectors.cjs +27 -0
- package/dist/actions/connectors/get-connectors.cjs.map +1 -0
- package/dist/actions/connectors/get-connectors.d.ts +15 -0
- package/dist/actions/connectors/get-connectors.d.ts.map +1 -0
- package/dist/actions/connectors/get-connectors.js +7 -0
- package/dist/actions/connectors/get-connectors.js.map +1 -0
- package/dist/actions/connectors/watch-connector-by-id.cjs +33 -0
- package/dist/actions/connectors/watch-connector-by-id.cjs.map +1 -0
- package/dist/actions/connectors/watch-connector-by-id.d.ts +19 -0
- package/dist/actions/connectors/watch-connector-by-id.d.ts.map +1 -0
- package/dist/actions/connectors/watch-connector-by-id.js +13 -0
- package/dist/actions/connectors/watch-connector-by-id.js.map +1 -0
- package/dist/actions/connectors/watch-connectors.cjs +33 -0
- package/dist/actions/connectors/watch-connectors.cjs.map +1 -0
- package/dist/actions/connectors/watch-connectors.d.ts +18 -0
- package/dist/actions/connectors/watch-connectors.d.ts.map +1 -0
- package/dist/actions/connectors/watch-connectors.js +13 -0
- package/dist/actions/connectors/watch-connectors.js.map +1 -0
- package/dist/actions/index.cjs +101 -0
- package/dist/actions/index.cjs.map +1 -0
- package/dist/actions/index.d.ts +47 -0
- package/dist/actions/index.d.ts.map +1 -0
- package/dist/actions/index.js +115 -0
- package/dist/actions/index.js.map +1 -0
- package/dist/actions/jettons/create-transfer-jetton-transaction.cjs +47 -0
- package/dist/actions/jettons/create-transfer-jetton-transaction.cjs.map +1 -0
- package/dist/actions/jettons/create-transfer-jetton-transaction.d.ts +22 -0
- package/dist/actions/jettons/create-transfer-jetton-transaction.d.ts.map +1 -0
- package/dist/actions/jettons/create-transfer-jetton-transaction.js +33 -0
- package/dist/actions/jettons/create-transfer-jetton-transaction.js.map +1 -0
- package/dist/actions/jettons/get-jetton-balance.cjs +37 -0
- package/dist/actions/jettons/get-jetton-balance.cjs.map +1 -0
- package/dist/actions/jettons/get-jetton-balance.d.ts +19 -0
- package/dist/actions/jettons/get-jetton-balance.d.ts.map +1 -0
- package/dist/actions/jettons/get-jetton-balance.js +17 -0
- package/dist/actions/jettons/get-jetton-balance.js.map +1 -0
- package/dist/actions/jettons/get-jetton-info.cjs +56 -0
- package/dist/actions/jettons/get-jetton-info.cjs.map +1 -0
- package/dist/actions/jettons/get-jetton-info.d.ts +17 -0
- package/dist/actions/jettons/get-jetton-info.d.ts.map +1 -0
- package/dist/actions/jettons/get-jetton-info.js +36 -0
- package/dist/actions/jettons/get-jetton-info.js.map +1 -0
- package/dist/actions/jettons/get-jetton-wallet-address.cjs +30 -0
- package/dist/actions/jettons/get-jetton-wallet-address.cjs.map +1 -0
- package/dist/actions/jettons/get-jetton-wallet-address.d.ts +18 -0
- package/dist/actions/jettons/get-jetton-wallet-address.d.ts.map +1 -0
- package/dist/actions/jettons/get-jetton-wallet-address.js +10 -0
- package/dist/actions/jettons/get-jetton-wallet-address.js.map +1 -0
- package/dist/actions/jettons/get-jettons-by-address.cjs +51 -0
- package/dist/actions/jettons/get-jettons-by-address.cjs.map +1 -0
- package/dist/actions/jettons/get-jettons-by-address.d.ts +20 -0
- package/dist/actions/jettons/get-jettons-by-address.d.ts.map +1 -0
- package/dist/actions/jettons/get-jettons-by-address.js +31 -0
- package/dist/actions/jettons/get-jettons-by-address.js.map +1 -0
- package/dist/actions/jettons/get-jettons.cjs +38 -0
- package/dist/actions/jettons/get-jettons.cjs.map +1 -0
- package/dist/actions/jettons/get-jettons.d.ts +17 -0
- package/dist/actions/jettons/get-jettons.d.ts.map +1 -0
- package/dist/actions/jettons/get-jettons.js +18 -0
- package/dist/actions/jettons/get-jettons.js.map +1 -0
- package/dist/actions/jettons/transfer-jetton.cjs +30 -0
- package/dist/actions/jettons/transfer-jetton.cjs.map +1 -0
- package/dist/actions/jettons/transfer-jetton.d.ts +18 -0
- package/dist/actions/jettons/transfer-jetton.d.ts.map +1 -0
- package/dist/actions/jettons/transfer-jetton.js +10 -0
- package/dist/actions/jettons/transfer-jetton.js.map +1 -0
- package/dist/actions/network/get-network.cjs +29 -0
- package/dist/actions/network/get-network.cjs.map +1 -0
- package/dist/actions/network/get-network.d.ts +15 -0
- package/dist/actions/network/get-network.d.ts.map +1 -0
- package/dist/actions/network/get-network.js +9 -0
- package/dist/actions/network/get-network.js.map +1 -0
- package/dist/actions/network/get-networks.cjs +27 -0
- package/dist/actions/network/get-networks.cjs.map +1 -0
- package/dist/actions/network/get-networks.d.ts +15 -0
- package/dist/actions/network/get-networks.d.ts.map +1 -0
- package/dist/actions/network/get-networks.js +7 -0
- package/dist/actions/network/get-networks.js.map +1 -0
- package/dist/actions/network/watch-networks.cjs +33 -0
- package/dist/actions/network/watch-networks.cjs.map +1 -0
- package/dist/actions/network/watch-networks.d.ts +18 -0
- package/dist/actions/network/watch-networks.d.ts.map +1 -0
- package/dist/actions/network/watch-networks.js +13 -0
- package/dist/actions/network/watch-networks.js.map +1 -0
- package/dist/actions/nft/create-transfer-nft-transaction.cjs +44 -0
- package/dist/actions/nft/create-transfer-nft-transaction.cjs.map +1 -0
- package/dist/actions/nft/create-transfer-nft-transaction.d.ts +21 -0
- package/dist/actions/nft/create-transfer-nft-transaction.d.ts.map +1 -0
- package/dist/actions/nft/create-transfer-nft-transaction.js +24 -0
- package/dist/actions/nft/create-transfer-nft-transaction.js.map +1 -0
- package/dist/actions/nft/get-nft.cjs +32 -0
- package/dist/actions/nft/get-nft.cjs.map +1 -0
- package/dist/actions/nft/get-nft.d.ts +18 -0
- package/dist/actions/nft/get-nft.d.ts.map +1 -0
- package/dist/actions/nft/get-nft.js +12 -0
- package/dist/actions/nft/get-nft.js.map +1 -0
- package/dist/actions/nft/get-nfts-by-address.cjs +37 -0
- package/dist/actions/nft/get-nfts-by-address.cjs.map +1 -0
- package/dist/actions/nft/get-nfts-by-address.d.ts +20 -0
- package/dist/actions/nft/get-nfts-by-address.d.ts.map +1 -0
- package/dist/actions/nft/get-nfts-by-address.js +17 -0
- package/dist/actions/nft/get-nfts-by-address.js.map +1 -0
- package/dist/actions/nft/get-nfts.cjs +38 -0
- package/dist/actions/nft/get-nfts.cjs.map +1 -0
- package/dist/actions/nft/get-nfts.d.ts +17 -0
- package/dist/actions/nft/get-nfts.d.ts.map +1 -0
- package/dist/actions/nft/get-nfts.js +18 -0
- package/dist/actions/nft/get-nfts.js.map +1 -0
- package/dist/actions/nft/transfer-nft.cjs +30 -0
- package/dist/actions/nft/transfer-nft.cjs.map +1 -0
- package/dist/actions/nft/transfer-nft.d.ts +17 -0
- package/dist/actions/nft/transfer-nft.d.ts.map +1 -0
- package/dist/actions/nft/transfer-nft.js +10 -0
- package/dist/actions/nft/transfer-nft.js.map +1 -0
- package/dist/actions/providers/register-provider.cjs +27 -0
- package/dist/actions/providers/register-provider.cjs.map +1 -0
- package/dist/actions/providers/register-provider.d.ts +15 -0
- package/dist/actions/providers/register-provider.d.ts.map +1 -0
- package/dist/actions/providers/register-provider.js +7 -0
- package/dist/actions/providers/register-provider.js.map +1 -0
- package/dist/actions/signing/sign-binary.cjs +38 -0
- package/dist/actions/signing/sign-binary.cjs.map +1 -0
- package/dist/actions/signing/sign-binary.d.ts +29 -0
- package/dist/actions/signing/sign-binary.d.ts.map +1 -0
- package/dist/actions/signing/sign-binary.js +18 -0
- package/dist/actions/signing/sign-binary.js.map +1 -0
- package/dist/actions/signing/sign-cell.cjs +41 -0
- package/dist/actions/signing/sign-cell.cjs.map +1 -0
- package/dist/actions/signing/sign-cell.d.ts +35 -0
- package/dist/actions/signing/sign-cell.d.ts.map +1 -0
- package/dist/actions/signing/sign-cell.js +21 -0
- package/dist/actions/signing/sign-cell.js.map +1 -0
- package/dist/actions/signing/sign-text.cjs +38 -0
- package/dist/actions/signing/sign-text.cjs.map +1 -0
- package/dist/actions/signing/sign-text.d.ts +28 -0
- package/dist/actions/signing/sign-text.d.ts.map +1 -0
- package/dist/actions/signing/sign-text.js +18 -0
- package/dist/actions/signing/sign-text.js.map +1 -0
- package/dist/actions/swap/build-swap-transaction.cjs +27 -0
- package/dist/actions/swap/build-swap-transaction.cjs.map +1 -0
- package/dist/actions/swap/build-swap-transaction.d.ts +17 -0
- package/dist/actions/swap/build-swap-transaction.d.ts.map +1 -0
- package/dist/actions/swap/build-swap-transaction.js +7 -0
- package/dist/actions/swap/build-swap-transaction.js.map +1 -0
- package/dist/actions/swap/get-swap-manager.cjs +27 -0
- package/dist/actions/swap/get-swap-manager.cjs.map +1 -0
- package/dist/actions/swap/get-swap-manager.d.ts +15 -0
- package/dist/actions/swap/get-swap-manager.d.ts.map +1 -0
- package/dist/actions/swap/get-swap-manager.js +7 -0
- package/dist/actions/swap/get-swap-manager.js.map +1 -0
- package/dist/actions/swap/get-swap-quote.cjs +27 -0
- package/dist/actions/swap/get-swap-quote.cjs.map +1 -0
- package/dist/actions/swap/get-swap-quote.d.ts +18 -0
- package/dist/actions/swap/get-swap-quote.d.ts.map +1 -0
- package/dist/actions/swap/get-swap-quote.js +7 -0
- package/dist/actions/swap/get-swap-quote.js.map +1 -0
- package/dist/actions/transaction/create-transfer-ton-transaction.cjs +48 -0
- package/dist/actions/transaction/create-transfer-ton-transaction.cjs.map +1 -0
- package/dist/actions/transaction/create-transfer-ton-transaction.d.ts +27 -0
- package/dist/actions/transaction/create-transfer-ton-transaction.d.ts.map +1 -0
- package/dist/actions/transaction/create-transfer-ton-transaction.js +28 -0
- package/dist/actions/transaction/create-transfer-ton-transaction.js.map +1 -0
- package/dist/actions/transaction/send-transaction.cjs +32 -0
- package/dist/actions/transaction/send-transaction.cjs.map +1 -0
- package/dist/actions/transaction/send-transaction.d.ts +18 -0
- package/dist/actions/transaction/send-transaction.d.ts.map +1 -0
- package/dist/actions/transaction/send-transaction.js +12 -0
- package/dist/actions/transaction/send-transaction.js.map +1 -0
- package/dist/actions/transaction/transfer-ton.cjs +30 -0
- package/dist/actions/transaction/transfer-ton.cjs.map +1 -0
- package/dist/actions/transaction/transfer-ton.d.ts +18 -0
- package/dist/actions/transaction/transfer-ton.d.ts.map +1 -0
- package/dist/actions/transaction/transfer-ton.js +10 -0
- package/dist/actions/transaction/transfer-ton.js.map +1 -0
- package/dist/actions/wallets/get-connected-wallets.cjs +27 -0
- package/dist/actions/wallets/get-connected-wallets.cjs.map +1 -0
- package/dist/actions/wallets/get-connected-wallets.d.ts +15 -0
- package/dist/actions/wallets/get-connected-wallets.d.ts.map +1 -0
- package/dist/actions/wallets/get-connected-wallets.js +7 -0
- package/dist/actions/wallets/get-connected-wallets.js.map +1 -0
- package/dist/actions/wallets/get-selected-wallet.cjs +27 -0
- package/dist/actions/wallets/get-selected-wallet.cjs.map +1 -0
- package/dist/actions/wallets/get-selected-wallet.d.ts +15 -0
- package/dist/actions/wallets/get-selected-wallet.d.ts.map +1 -0
- package/dist/actions/wallets/get-selected-wallet.js +7 -0
- package/dist/actions/wallets/get-selected-wallet.js.map +1 -0
- package/dist/actions/wallets/set-selected-wallet-id.cjs +27 -0
- package/dist/actions/wallets/set-selected-wallet-id.cjs.map +1 -0
- package/dist/actions/wallets/set-selected-wallet-id.d.ts +17 -0
- package/dist/actions/wallets/set-selected-wallet-id.d.ts.map +1 -0
- package/dist/actions/wallets/set-selected-wallet-id.js +7 -0
- package/dist/actions/wallets/set-selected-wallet-id.js.map +1 -0
- package/dist/actions/wallets/watch-connected-wallets.cjs +32 -0
- package/dist/actions/wallets/watch-connected-wallets.cjs.map +1 -0
- package/dist/actions/wallets/watch-connected-wallets.d.ts +18 -0
- package/dist/actions/wallets/watch-connected-wallets.d.ts.map +1 -0
- package/dist/actions/wallets/watch-connected-wallets.js +12 -0
- package/dist/actions/wallets/watch-connected-wallets.js.map +1 -0
- package/dist/actions/wallets/watch-selected-wallet.cjs +34 -0
- package/dist/actions/wallets/watch-selected-wallet.cjs.map +1 -0
- package/dist/actions/wallets/watch-selected-wallet.d.ts +18 -0
- package/dist/actions/wallets/watch-selected-wallet.d.ts.map +1 -0
- package/dist/actions/wallets/watch-selected-wallet.js +14 -0
- package/dist/actions/wallets/watch-selected-wallet.js.map +1 -0
- package/dist/connectors/tonconnect/adapters/ton-connect-wallet-adapter.cjs +129 -0
- package/dist/connectors/tonconnect/adapters/ton-connect-wallet-adapter.cjs.map +1 -0
- package/dist/connectors/tonconnect/adapters/ton-connect-wallet-adapter.d.ts +41 -0
- package/dist/connectors/tonconnect/adapters/ton-connect-wallet-adapter.d.ts.map +1 -0
- package/dist/connectors/tonconnect/adapters/ton-connect-wallet-adapter.js +109 -0
- package/dist/connectors/tonconnect/adapters/ton-connect-wallet-adapter.js.map +1 -0
- package/dist/connectors/tonconnect/connectors/ton-connect-connector.cjs +82 -0
- package/dist/connectors/tonconnect/connectors/ton-connect-connector.cjs.map +1 -0
- package/dist/connectors/tonconnect/connectors/ton-connect-connector.d.ts +33 -0
- package/dist/connectors/tonconnect/connectors/ton-connect-connector.d.ts.map +1 -0
- package/dist/connectors/tonconnect/connectors/ton-connect-connector.js +62 -0
- package/dist/connectors/tonconnect/connectors/ton-connect-connector.js.map +1 -0
- package/dist/connectors/tonconnect/constants/id.cjs +25 -0
- package/dist/connectors/tonconnect/constants/id.cjs.map +1 -0
- package/dist/connectors/tonconnect/constants/id.d.ts +9 -0
- package/dist/connectors/tonconnect/constants/id.d.ts.map +1 -0
- package/dist/connectors/tonconnect/constants/id.js +5 -0
- package/dist/connectors/tonconnect/constants/id.js.map +1 -0
- package/dist/connectors/tonconnect/index.cjs +29 -0
- package/dist/connectors/tonconnect/index.cjs.map +1 -0
- package/dist/connectors/tonconnect/index.d.ts +27 -0
- package/dist/connectors/tonconnect/index.d.ts.map +1 -0
- package/dist/connectors/tonconnect/index.js +9 -0
- package/dist/connectors/tonconnect/index.js.map +1 -0
- package/dist/connectors/tonconnect/utils/transaction.cjs +45 -0
- package/dist/connectors/tonconnect/utils/transaction.cjs.map +1 -0
- package/dist/connectors/tonconnect/utils/transaction.d.ts +31 -0
- package/dist/connectors/tonconnect/utils/transaction.d.ts.map +1 -0
- package/dist/connectors/tonconnect/utils/transaction.js +25 -0
- package/dist/connectors/tonconnect/utils/transaction.js.map +1 -0
- package/dist/core/app-kit/constants/events.cjs +41 -0
- package/dist/core/app-kit/constants/events.cjs.map +1 -0
- package/dist/core/app-kit/constants/events.d.ts +34 -0
- package/dist/core/app-kit/constants/events.d.ts.map +1 -0
- package/dist/core/app-kit/constants/events.js +21 -0
- package/dist/core/app-kit/constants/events.js.map +1 -0
- package/dist/core/app-kit/index.cjs +30 -0
- package/dist/core/app-kit/index.cjs.map +1 -0
- package/dist/core/app-kit/index.d.ts +12 -0
- package/dist/core/app-kit/index.d.ts.map +1 -0
- package/dist/core/app-kit/index.js +10 -0
- package/dist/core/app-kit/index.js.map +1 -0
- package/dist/core/app-kit/services/app-kit-network-manager.cjs +36 -0
- package/dist/core/app-kit/services/app-kit-network-manager.cjs.map +1 -0
- package/dist/core/app-kit/services/app-kit-network-manager.d.ts +16 -0
- package/dist/core/app-kit/services/app-kit-network-manager.d.ts.map +1 -0
- package/dist/core/app-kit/services/app-kit-network-manager.js +16 -0
- package/dist/core/app-kit/services/app-kit-network-manager.js.map +1 -0
- package/dist/core/app-kit/services/app-kit.cjs +104 -0
- package/dist/core/app-kit/services/app-kit.cjs.map +1 -0
- package/dist/core/app-kit/services/app-kit.d.ts +44 -0
- package/dist/core/app-kit/services/app-kit.d.ts.map +1 -0
- package/dist/core/app-kit/services/app-kit.js +84 -0
- package/dist/core/app-kit/services/app-kit.js.map +1 -0
- package/dist/core/app-kit/types/config.cjs +17 -0
- package/dist/core/app-kit/types/config.cjs.map +1 -0
- package/dist/core/app-kit/types/config.d.ts +26 -0
- package/dist/core/app-kit/types/config.d.ts.map +1 -0
- package/dist/core/app-kit/types/config.js +1 -0
- package/dist/core/app-kit/types/config.js.map +1 -0
- package/dist/core/app-kit/types/events.cjs +17 -0
- package/dist/core/app-kit/types/events.cjs.map +1 -0
- package/dist/core/app-kit/types/events.d.ts +35 -0
- package/dist/core/app-kit/types/events.d.ts.map +1 -0
- package/dist/core/app-kit/types/events.js +1 -0
- package/dist/core/app-kit/types/events.js.map +1 -0
- package/dist/core/emitter/index.cjs +25 -0
- package/dist/core/emitter/index.cjs.map +1 -0
- package/dist/core/emitter/index.d.ts +14 -0
- package/dist/core/emitter/index.d.ts.map +1 -0
- package/dist/core/emitter/index.js +5 -0
- package/dist/core/emitter/index.js.map +1 -0
- package/dist/core/emitter/services/emitter.cjs +60 -0
- package/dist/core/emitter/services/emitter.cjs.map +1 -0
- package/dist/core/emitter/services/emitter.d.ts +18 -0
- package/dist/core/emitter/services/emitter.d.ts.map +1 -0
- package/dist/core/emitter/services/emitter.js +40 -0
- package/dist/core/emitter/services/emitter.js.map +1 -0
- package/dist/core/emitter/types/events.cjs +17 -0
- package/dist/core/emitter/types/events.cjs.map +1 -0
- package/dist/core/emitter/types/events.d.ts +16 -0
- package/dist/core/emitter/types/events.d.ts.map +1 -0
- package/dist/core/emitter/types/events.js +1 -0
- package/dist/core/emitter/types/events.js.map +1 -0
- package/dist/core/wallets-manager/index.cjs +25 -0
- package/dist/core/wallets-manager/index.cjs.map +1 -0
- package/dist/core/wallets-manager/index.d.ts +9 -0
- package/dist/core/wallets-manager/index.d.ts.map +1 -0
- package/dist/core/wallets-manager/index.js +5 -0
- package/dist/core/wallets-manager/index.js.map +1 -0
- package/dist/core/wallets-manager/services/wallets-manager.cjs +80 -0
- package/dist/core/wallets-manager/services/wallets-manager.cjs.map +1 -0
- package/dist/core/wallets-manager/services/wallets-manager.d.ts +40 -0
- package/dist/core/wallets-manager/services/wallets-manager.d.ts.map +1 -0
- package/dist/core/wallets-manager/services/wallets-manager.js +60 -0
- package/dist/core/wallets-manager/services/wallets-manager.js.map +1 -0
- package/dist/index.cjs +35 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +43 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +18 -0
- package/dist/index.js.map +1 -0
- package/dist/queries/balances/get-balance-by-address.cjs +43 -0
- package/dist/queries/balances/get-balance-by-address.cjs.map +1 -0
- package/dist/queries/balances/get-balance-by-address.d.ts +21 -0
- package/dist/queries/balances/get-balance-by-address.d.ts.map +1 -0
- package/dist/queries/balances/get-balance-by-address.js +23 -0
- package/dist/queries/balances/get-balance-by-address.js.map +1 -0
- package/dist/queries/connectors/connect.cjs +34 -0
- package/dist/queries/connectors/connect.cjs.map +1 -0
- package/dist/queries/connectors/connect.d.ts +22 -0
- package/dist/queries/connectors/connect.d.ts.map +1 -0
- package/dist/queries/connectors/connect.js +14 -0
- package/dist/queries/connectors/connect.js.map +1 -0
- package/dist/queries/connectors/disconnect.cjs +34 -0
- package/dist/queries/connectors/disconnect.cjs.map +1 -0
- package/dist/queries/connectors/disconnect.d.ts +22 -0
- package/dist/queries/connectors/disconnect.d.ts.map +1 -0
- package/dist/queries/connectors/disconnect.js +14 -0
- package/dist/queries/connectors/disconnect.js.map +1 -0
- package/dist/queries/index.cjs +59 -0
- package/dist/queries/index.cjs.map +1 -0
- package/dist/queries/index.d.ts +26 -0
- package/dist/queries/index.d.ts.map +1 -0
- package/dist/queries/index.js +75 -0
- package/dist/queries/index.js.map +1 -0
- package/dist/queries/jettons/get-jetton-balance-by-address.cjs +44 -0
- package/dist/queries/jettons/get-jetton-balance-by-address.cjs.map +1 -0
- package/dist/queries/jettons/get-jetton-balance-by-address.d.ts +24 -0
- package/dist/queries/jettons/get-jetton-balance-by-address.d.ts.map +1 -0
- package/dist/queries/jettons/get-jetton-balance-by-address.js +24 -0
- package/dist/queries/jettons/get-jetton-balance-by-address.js.map +1 -0
- package/dist/queries/jettons/get-jetton-info.cjs +43 -0
- package/dist/queries/jettons/get-jetton-info.cjs.map +1 -0
- package/dist/queries/jettons/get-jetton-info.d.ts +21 -0
- package/dist/queries/jettons/get-jetton-info.d.ts.map +1 -0
- package/dist/queries/jettons/get-jetton-info.js +23 -0
- package/dist/queries/jettons/get-jetton-info.js.map +1 -0
- package/dist/queries/jettons/get-jetton-wallet-address.cjs +44 -0
- package/dist/queries/jettons/get-jetton-wallet-address.cjs.map +1 -0
- package/dist/queries/jettons/get-jetton-wallet-address.d.ts +24 -0
- package/dist/queries/jettons/get-jetton-wallet-address.d.ts.map +1 -0
- package/dist/queries/jettons/get-jetton-wallet-address.js +24 -0
- package/dist/queries/jettons/get-jetton-wallet-address.js.map +1 -0
- package/dist/queries/jettons/get-jettons-by-address.cjs +43 -0
- package/dist/queries/jettons/get-jettons-by-address.cjs.map +1 -0
- package/dist/queries/jettons/get-jettons-by-address.d.ts +21 -0
- package/dist/queries/jettons/get-jettons-by-address.d.ts.map +1 -0
- package/dist/queries/jettons/get-jettons-by-address.js +23 -0
- package/dist/queries/jettons/get-jettons-by-address.js.map +1 -0
- package/dist/queries/jettons/transfer-jetton.cjs +34 -0
- package/dist/queries/jettons/transfer-jetton.cjs.map +1 -0
- package/dist/queries/jettons/transfer-jetton.d.ts +22 -0
- package/dist/queries/jettons/transfer-jetton.d.ts.map +1 -0
- package/dist/queries/jettons/transfer-jetton.js +14 -0
- package/dist/queries/jettons/transfer-jetton.js.map +1 -0
- package/dist/queries/nft/get-nft.cjs +43 -0
- package/dist/queries/nft/get-nft.cjs.map +1 -0
- package/dist/queries/nft/get-nft.d.ts +21 -0
- package/dist/queries/nft/get-nft.d.ts.map +1 -0
- package/dist/queries/nft/get-nft.js +23 -0
- package/dist/queries/nft/get-nft.js.map +1 -0
- package/dist/queries/nft/get-nfts-by-address.cjs +43 -0
- package/dist/queries/nft/get-nfts-by-address.cjs.map +1 -0
- package/dist/queries/nft/get-nfts-by-address.d.ts +21 -0
- package/dist/queries/nft/get-nfts-by-address.d.ts.map +1 -0
- package/dist/queries/nft/get-nfts-by-address.js +23 -0
- package/dist/queries/nft/get-nfts-by-address.js.map +1 -0
- package/dist/queries/nft/transfer-nft.cjs +34 -0
- package/dist/queries/nft/transfer-nft.cjs.map +1 -0
- package/dist/queries/nft/transfer-nft.d.ts +22 -0
- package/dist/queries/nft/transfer-nft.d.ts.map +1 -0
- package/dist/queries/nft/transfer-nft.js +14 -0
- package/dist/queries/nft/transfer-nft.js.map +1 -0
- package/dist/queries/signing/sign-binary.cjs +34 -0
- package/dist/queries/signing/sign-binary.cjs.map +1 -0
- package/dist/queries/signing/sign-binary.d.ts +21 -0
- package/dist/queries/signing/sign-binary.d.ts.map +1 -0
- package/dist/queries/signing/sign-binary.js +14 -0
- package/dist/queries/signing/sign-binary.js.map +1 -0
- package/dist/queries/signing/sign-cell.cjs +34 -0
- package/dist/queries/signing/sign-cell.cjs.map +1 -0
- package/dist/queries/signing/sign-cell.d.ts +21 -0
- package/dist/queries/signing/sign-cell.d.ts.map +1 -0
- package/dist/queries/signing/sign-cell.js +14 -0
- package/dist/queries/signing/sign-cell.js.map +1 -0
- package/dist/queries/signing/sign-text.cjs +34 -0
- package/dist/queries/signing/sign-text.cjs.map +1 -0
- package/dist/queries/signing/sign-text.d.ts +21 -0
- package/dist/queries/signing/sign-text.d.ts.map +1 -0
- package/dist/queries/signing/sign-text.js +14 -0
- package/dist/queries/signing/sign-text.js.map +1 -0
- package/dist/queries/swap/build-swap-transaction.cjs +38 -0
- package/dist/queries/swap/build-swap-transaction.cjs.map +1 -0
- package/dist/queries/swap/build-swap-transaction.d.ts +21 -0
- package/dist/queries/swap/build-swap-transaction.d.ts.map +1 -0
- package/dist/queries/swap/build-swap-transaction.js +18 -0
- package/dist/queries/swap/build-swap-transaction.js.map +1 -0
- package/dist/queries/swap/get-swap-quote.cjs +54 -0
- package/dist/queries/swap/get-swap-quote.cjs.map +1 -0
- package/dist/queries/swap/get-swap-quote.d.ts +21 -0
- package/dist/queries/swap/get-swap-quote.d.ts.map +1 -0
- package/dist/queries/swap/get-swap-quote.js +34 -0
- package/dist/queries/swap/get-swap-quote.js.map +1 -0
- package/dist/queries/transaction/send-transaction.cjs +34 -0
- package/dist/queries/transaction/send-transaction.cjs.map +1 -0
- package/dist/queries/transaction/send-transaction.d.ts +21 -0
- package/dist/queries/transaction/send-transaction.d.ts.map +1 -0
- package/dist/queries/transaction/send-transaction.js +14 -0
- package/dist/queries/transaction/send-transaction.js.map +1 -0
- package/dist/queries/transaction/transfer-ton.cjs +34 -0
- package/dist/queries/transaction/transfer-ton.cjs.map +1 -0
- package/dist/queries/transaction/transfer-ton.d.ts +21 -0
- package/dist/queries/transaction/transfer-ton.d.ts.map +1 -0
- package/dist/queries/transaction/transfer-ton.js +14 -0
- package/dist/queries/transaction/transfer-ton.js.map +1 -0
- package/dist/swap/index.cjs +17 -0
- package/dist/swap/index.cjs.map +1 -0
- package/dist/swap/index.d.ts +9 -0
- package/dist/swap/index.d.ts.map +1 -0
- package/dist/swap/index.js +1 -0
- package/dist/swap/index.js.map +1 -0
- package/dist/swap/omniston/index.cjs +19 -0
- package/dist/swap/omniston/index.cjs.map +1 -0
- package/dist/swap/omniston/index.d.ts +9 -0
- package/dist/swap/omniston/index.d.ts.map +1 -0
- package/dist/swap/omniston/index.js +2 -0
- package/dist/swap/omniston/index.js.map +1 -0
- package/dist/types/balance.cjs +17 -0
- package/dist/types/balance.cjs.map +1 -0
- package/dist/types/balance.d.ts +10 -0
- package/dist/types/balance.d.ts.map +1 -0
- package/dist/types/balance.js +1 -0
- package/dist/types/balance.js.map +1 -0
- package/dist/types/connector.cjs +17 -0
- package/dist/types/connector.cjs.map +1 -0
- package/dist/types/connector.d.ts +35 -0
- package/dist/types/connector.d.ts.map +1 -0
- package/dist/types/connector.js +1 -0
- package/dist/types/connector.js.map +1 -0
- package/dist/types/jetton.cjs +17 -0
- package/dist/types/jetton.cjs.map +1 -0
- package/dist/types/jetton.d.ts +9 -0
- package/dist/types/jetton.d.ts.map +1 -0
- package/dist/types/jetton.js +1 -0
- package/dist/types/jetton.js.map +1 -0
- package/dist/types/network.cjs +25 -0
- package/dist/types/network.cjs.map +1 -0
- package/dist/types/network.d.ts +9 -0
- package/dist/types/network.d.ts.map +1 -0
- package/dist/types/network.js +5 -0
- package/dist/types/network.js.map +1 -0
- package/dist/types/nft.cjs +17 -0
- package/dist/types/nft.cjs.map +1 -0
- package/dist/types/nft.d.ts +9 -0
- package/dist/types/nft.d.ts.map +1 -0
- package/dist/types/nft.js +1 -0
- package/dist/types/nft.js.map +1 -0
- package/dist/types/primitives.cjs +17 -0
- package/dist/types/primitives.cjs.map +1 -0
- package/dist/types/primitives.d.ts +9 -0
- package/dist/types/primitives.d.ts.map +1 -0
- package/dist/types/primitives.js +1 -0
- package/dist/types/primitives.js.map +1 -0
- package/dist/types/provider.cjs +17 -0
- package/dist/types/provider.cjs.map +1 -0
- package/dist/types/provider.d.ts +13 -0
- package/dist/types/provider.d.ts.map +1 -0
- package/dist/types/provider.js +1 -0
- package/dist/types/provider.js.map +1 -0
- package/dist/types/query.cjs +17 -0
- package/dist/types/query.cjs.map +1 -0
- package/dist/types/query.d.ts +19 -0
- package/dist/types/query.d.ts.map +1 -0
- package/dist/types/query.js +1 -0
- package/dist/types/query.js.map +1 -0
- package/dist/types/signing.cjs +17 -0
- package/dist/types/signing.cjs.map +1 -0
- package/dist/types/signing.d.ts +76 -0
- package/dist/types/signing.d.ts.map +1 -0
- package/dist/types/signing.js +1 -0
- package/dist/types/signing.js.map +1 -0
- package/dist/types/transaction.cjs +17 -0
- package/dist/types/transaction.cjs.map +1 -0
- package/dist/types/transaction.d.ts +53 -0
- package/dist/types/transaction.d.ts.map +1 -0
- package/dist/types/transaction.js +1 -0
- package/dist/types/transaction.js.map +1 -0
- package/dist/types/utils.cjs +17 -0
- package/dist/types/utils.cjs.map +1 -0
- package/dist/types/utils.d.ts +83 -0
- package/dist/types/utils.d.ts.map +1 -0
- package/dist/types/utils.js +1 -0
- package/dist/types/utils.js.map +1 -0
- package/dist/types/wallet.cjs +17 -0
- package/dist/types/wallet.cjs.map +1 -0
- package/dist/types/wallet.d.ts +32 -0
- package/dist/types/wallet.d.ts.map +1 -0
- package/dist/types/wallet.js +1 -0
- package/dist/types/wallet.js.map +1 -0
- package/dist/utils/amount/validate-numeric-string.cjs +37 -0
- package/dist/utils/amount/validate-numeric-string.cjs.map +1 -0
- package/dist/utils/amount/validate-numeric-string.d.ts +11 -0
- package/dist/utils/amount/validate-numeric-string.d.ts.map +1 -0
- package/dist/utils/amount/validate-numeric-string.js +17 -0
- package/dist/utils/amount/validate-numeric-string.js.map +1 -0
- package/dist/utils/amount/validate-numeric-string.test.d.ts +9 -0
- package/dist/utils/amount/validate-numeric-string.test.d.ts.map +1 -0
- package/dist/utils/arrays/key-by.cjs +32 -0
- package/dist/utils/arrays/key-by.cjs.map +1 -0
- package/dist/utils/arrays/key-by.d.ts +9 -0
- package/dist/utils/arrays/key-by.d.ts.map +1 -0
- package/dist/utils/arrays/key-by.js +12 -0
- package/dist/utils/arrays/key-by.js.map +1 -0
- package/dist/utils/arrays/key-by.test.d.ts +9 -0
- package/dist/utils/arrays/key-by.test.d.ts.map +1 -0
- package/dist/utils/arrays/random-from-array.cjs +25 -0
- package/dist/utils/arrays/random-from-array.cjs.map +1 -0
- package/dist/utils/arrays/random-from-array.d.ts +9 -0
- package/dist/utils/arrays/random-from-array.d.ts.map +1 -0
- package/dist/utils/arrays/random-from-array.js +5 -0
- package/dist/utils/arrays/random-from-array.js.map +1 -0
- package/dist/utils/arrays/random-from-array.test.d.ts +9 -0
- package/dist/utils/arrays/random-from-array.test.d.ts.map +1 -0
- package/dist/utils/errors/get-error-message.cjs +34 -0
- package/dist/utils/errors/get-error-message.cjs.map +1 -0
- package/dist/utils/errors/get-error-message.d.ts +9 -0
- package/dist/utils/errors/get-error-message.d.ts.map +1 -0
- package/dist/utils/errors/get-error-message.js +14 -0
- package/dist/utils/errors/get-error-message.js.map +1 -0
- package/dist/utils/errors/get-error-message.test.d.ts +9 -0
- package/dist/utils/errors/get-error-message.test.d.ts.map +1 -0
- package/dist/utils/functions/noop.cjs +26 -0
- package/dist/utils/functions/noop.cjs.map +1 -0
- package/dist/utils/functions/noop.d.ts +9 -0
- package/dist/utils/functions/noop.d.ts.map +1 -0
- package/dist/utils/functions/noop.js +6 -0
- package/dist/utils/functions/noop.js.map +1 -0
- package/dist/utils/index.cjs +40 -0
- package/dist/utils/index.cjs.map +1 -0
- package/dist/utils/index.d.ts +22 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +19 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/jetton/jetton-info.cjs +65 -0
- package/dist/utils/jetton/jetton-info.cjs.map +1 -0
- package/dist/utils/jetton/jetton-info.d.ts +23 -0
- package/dist/utils/jetton/jetton-info.d.ts.map +1 -0
- package/dist/utils/jetton/jetton-info.js +45 -0
- package/dist/utils/jetton/jetton-info.js.map +1 -0
- package/dist/utils/nft/nft-info.cjs +70 -0
- package/dist/utils/nft/nft-info.cjs.map +1 -0
- package/dist/utils/nft/nft-info.d.ts +21 -0
- package/dist/utils/nft/nft-info.d.ts.map +1 -0
- package/dist/utils/nft/nft-info.js +50 -0
- package/dist/utils/nft/nft-info.js.map +1 -0
- package/dist/utils/object/map-values.cjs +33 -0
- package/dist/utils/object/map-values.cjs.map +1 -0
- package/dist/utils/object/map-values.d.ts +9 -0
- package/dist/utils/object/map-values.d.ts.map +1 -0
- package/dist/utils/object/map-values.js +13 -0
- package/dist/utils/object/map-values.js.map +1 -0
- package/dist/utils/object/map-values.test.d.ts +9 -0
- package/dist/utils/object/map-values.test.d.ts.map +1 -0
- package/dist/utils/predicate/is-string.cjs +27 -0
- package/dist/utils/predicate/is-string.cjs.map +1 -0
- package/dist/utils/predicate/is-string.d.ts +9 -0
- package/dist/utils/predicate/is-string.d.ts.map +1 -0
- package/dist/utils/predicate/is-string.js +7 -0
- package/dist/utils/predicate/is-string.js.map +1 -0
- package/dist/utils/predicate/is-string.test.d.ts +9 -0
- package/dist/utils/predicate/is-string.test.d.ts.map +1 -0
- package/dist/utils/promise/cancel-promise.cjs +32 -0
- package/dist/utils/promise/cancel-promise.cjs.map +1 -0
- package/dist/utils/promise/cancel-promise.d.ts +9 -0
- package/dist/utils/promise/cancel-promise.d.ts.map +1 -0
- package/dist/utils/promise/cancel-promise.js +12 -0
- package/dist/utils/promise/cancel-promise.js.map +1 -0
- package/dist/utils/promise/cancel-promise.test.d.ts +9 -0
- package/dist/utils/promise/cancel-promise.test.d.ts.map +1 -0
- package/dist/utils/promise/sleep.cjs +29 -0
- package/dist/utils/promise/sleep.cjs.map +1 -0
- package/dist/utils/promise/sleep.d.ts +9 -0
- package/dist/utils/promise/sleep.d.ts.map +1 -0
- package/dist/utils/promise/sleep.js +9 -0
- package/dist/utils/promise/sleep.js.map +1 -0
- package/dist/utils/query/filter-query-options.cjs +28 -0
- package/dist/utils/query/filter-query-options.cjs.map +1 -0
- package/dist/utils/query/filter-query-options.d.ts +10 -0
- package/dist/utils/query/filter-query-options.d.ts.map +1 -0
- package/dist/utils/query/filter-query-options.js +8 -0
- package/dist/utils/query/filter-query-options.js.map +1 -0
- package/dist/utils/string/middle-ellipsis.cjs +30 -0
- package/dist/utils/string/middle-ellipsis.cjs.map +1 -0
- package/dist/utils/string/middle-ellipsis.d.ts +9 -0
- package/dist/utils/string/middle-ellipsis.d.ts.map +1 -0
- package/dist/utils/string/middle-ellipsis.js +10 -0
- package/dist/utils/string/middle-ellipsis.js.map +1 -0
- package/dist/utils/string/middle-ellipsis.test.d.ts +9 -0
- package/dist/utils/string/middle-ellipsis.test.d.ts.map +1 -0
- package/docs/actions.md +547 -0
- package/docs/connectors.md +135 -0
- package/docs/query.md +30 -0
- package/docs/swap.md +66 -0
- package/package.json +84 -3
- package/src/actions/balances/get-balance-by-address.ts +33 -0
- package/src/actions/balances/get-balance.ts +32 -0
- package/src/actions/connectors/add-connector.ts +21 -0
- package/src/actions/connectors/connect.ts +29 -0
- package/src/actions/connectors/disconnect.ts +29 -0
- package/src/actions/connectors/get-connector-by-id.ts +23 -0
- package/src/actions/connectors/get-connectors.ts +19 -0
- package/src/actions/connectors/watch-connector-by-id.ts +35 -0
- package/src/actions/connectors/watch-connectors.ts +31 -0
- package/src/actions/index.ts +134 -0
- package/src/actions/jettons/create-transfer-jetton-transaction.ts +67 -0
- package/src/actions/jettons/get-jetton-balance.ts +40 -0
- package/src/actions/jettons/get-jetton-info.ts +72 -0
- package/src/actions/jettons/get-jetton-wallet-address.ts +31 -0
- package/src/actions/jettons/get-jettons-by-address.ts +55 -0
- package/src/actions/jettons/get-jettons.ts +36 -0
- package/src/actions/jettons/transfer-jetton.ts +32 -0
- package/src/actions/network/get-network.ts +23 -0
- package/src/actions/network/get-networks.ts +20 -0
- package/src/actions/network/watch-networks.ts +32 -0
- package/src/actions/nft/create-transfer-nft-transaction.ts +51 -0
- package/src/actions/nft/get-nft.ts +29 -0
- package/src/actions/nft/get-nfts-by-address.ts +39 -0
- package/src/actions/nft/get-nfts.ts +36 -0
- package/src/actions/nft/transfer-nft.ts +30 -0
- package/src/actions/providers/register-provider.ts +19 -0
- package/src/actions/signing/sign-binary.ts +48 -0
- package/src/actions/signing/sign-cell.ts +57 -0
- package/src/actions/signing/sign-text.ts +47 -0
- package/src/actions/swap/build-swap-transaction.ts +25 -0
- package/src/actions/swap/get-swap-manager.ts +20 -0
- package/src/actions/swap/get-swap-quote.ts +27 -0
- package/src/actions/transaction/create-transfer-ton-transaction.ts +63 -0
- package/src/actions/transaction/send-transaction.ts +35 -0
- package/src/actions/transaction/transfer-ton.ts +32 -0
- package/src/actions/wallets/get-connected-wallets.ts +19 -0
- package/src/actions/wallets/get-selected-wallet.ts +19 -0
- package/src/actions/wallets/set-selected-wallet-id.ts +25 -0
- package/src/actions/wallets/watch-connected-wallets.ts +33 -0
- package/src/actions/wallets/watch-selected-wallet.ts +35 -0
- package/src/connectors/tonconnect/adapters/ton-connect-wallet-adapter.ts +161 -0
- package/src/connectors/tonconnect/connectors/ton-connect-connector.ts +99 -0
- package/src/connectors/tonconnect/constants/id.ts +9 -0
- package/src/connectors/tonconnect/index.ts +31 -0
- package/src/connectors/tonconnect/utils/transaction.ts +50 -0
- package/src/core/app-kit/constants/events.ts +37 -0
- package/src/core/app-kit/index.ts +19 -0
- package/src/core/app-kit/services/app-kit-network-manager.ts +27 -0
- package/src/core/app-kit/services/app-kit.ts +123 -0
- package/src/core/app-kit/types/config.ts +28 -0
- package/src/core/app-kit/types/events.ts +43 -0
- package/src/core/emitter/index.ts +15 -0
- package/src/core/emitter/services/emitter.ts +53 -0
- package/src/core/emitter/types/events.ts +18 -0
- package/src/core/wallets-manager/index.ts +9 -0
- package/src/core/wallets-manager/services/wallets-manager.ts +87 -0
- package/src/index.ts +52 -0
- package/src/queries/balances/get-balance-by-address.ts +58 -0
- package/src/queries/connectors/connect.ts +60 -0
- package/src/queries/connectors/disconnect.ts +64 -0
- package/src/queries/index.ts +181 -0
- package/src/queries/jettons/get-jetton-balance-by-address.ts +69 -0
- package/src/queries/jettons/get-jetton-info.ts +57 -0
- package/src/queries/jettons/get-jetton-wallet-address.ts +69 -0
- package/src/queries/jettons/get-jettons-by-address.ts +59 -0
- package/src/queries/jettons/transfer-jetton.ts +64 -0
- package/src/queries/nft/get-nft.ts +56 -0
- package/src/queries/nft/get-nfts-by-address.ts +59 -0
- package/src/queries/nft/transfer-nft.ts +64 -0
- package/src/queries/signing/sign-binary.ts +62 -0
- package/src/queries/signing/sign-cell.ts +58 -0
- package/src/queries/signing/sign-text.ts +58 -0
- package/src/queries/swap/build-swap-transaction.ts +84 -0
- package/src/queries/swap/get-swap-quote.ts +70 -0
- package/src/queries/transaction/send-transaction.ts +70 -0
- package/src/queries/transaction/transfer-ton.ts +66 -0
- package/src/swap/index.ts +9 -0
- package/src/swap/omniston/index.ts +9 -0
- package/src/types/balance.ts +11 -0
- package/src/types/connector.ts +45 -0
- package/src/types/jetton.ts +9 -0
- package/src/types/network.ts +9 -0
- package/src/types/nft.ts +9 -0
- package/src/types/primitives.ts +9 -0
- package/src/types/provider.ts +14 -0
- package/src/types/query.ts +44 -0
- package/src/types/signing.ts +78 -0
- package/src/types/transaction.ts +63 -0
- package/src/types/utils.ts +120 -0
- package/src/types/wallet.ts +48 -0
- package/src/utils/amount/validate-numeric-string.test.ts +53 -0
- package/src/utils/amount/validate-numeric-string.ts +25 -0
- package/src/utils/arrays/key-by.test.ts +55 -0
- package/src/utils/arrays/key-by.ts +18 -0
- package/src/utils/arrays/random-from-array.test.ts +37 -0
- package/src/utils/arrays/random-from-array.ts +9 -0
- package/src/utils/errors/get-error-message.test.ts +39 -0
- package/src/utils/errors/get-error-message.ts +24 -0
- package/src/utils/functions/noop.ts +11 -0
- package/src/utils/index.ts +23 -0
- package/src/utils/jetton/jetton-info.ts +62 -0
- package/src/utils/nft/nft-info.ts +62 -0
- package/src/utils/object/map-values.test.ts +37 -0
- package/src/utils/object/map-values.ts +23 -0
- package/src/utils/predicate/is-string.test.ts +29 -0
- package/src/utils/predicate/is-string.ts +11 -0
- package/src/utils/promise/cancel-promise.test.ts +28 -0
- package/src/utils/promise/cancel-promise.ts +16 -0
- package/src/utils/promise/sleep.ts +13 -0
- package/src/utils/query/filter-query-options.ts +15 -0
- package/src/utils/string/middle-ellipsis.test.ts +33 -0
- package/src/utils/string/middle-ellipsis.ts +15 -0
- package/tsconfig.json +29 -0
- package/tsup.config.ts +28 -0
- package/vitest.config.ts +21 -0
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) TonTech.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
import type * as Query from '@tanstack/query-core';
|
|
10
|
+
|
|
11
|
+
import type { Compute, LooseOmit, RequiredBy, UnionLooseOmit } from './utils.js';
|
|
12
|
+
|
|
13
|
+
export type MutationParameter<data = unknown, error = Error, variables = void, context = unknown> = {
|
|
14
|
+
mutation?:
|
|
15
|
+
| LooseOmit<
|
|
16
|
+
Query.MutationOptions<data, error, Compute<variables>, context>,
|
|
17
|
+
'mutationFn' | 'mutationKey' | 'throwOnError'
|
|
18
|
+
>
|
|
19
|
+
| undefined;
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
export type QueryParameter<
|
|
23
|
+
queryFnData = unknown,
|
|
24
|
+
error = Query.DefaultError,
|
|
25
|
+
data = queryFnData,
|
|
26
|
+
queryKey extends Query.QueryKey = Query.QueryKey,
|
|
27
|
+
> = {
|
|
28
|
+
query?: UnionLooseOmit<QueryOptions<queryFnData, error, data, queryKey>, 'queryKey' | 'queryFn'> | undefined;
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
export type QueryOptions<
|
|
32
|
+
queryFnData = unknown,
|
|
33
|
+
error = Query.DefaultError,
|
|
34
|
+
data = queryFnData,
|
|
35
|
+
queryKey extends Query.QueryKey = Query.QueryKey,
|
|
36
|
+
> = Omit<
|
|
37
|
+
RequiredBy<Query.QueryObserverOptions<queryFnData, error, data, queryFnData, queryKey>, 'queryKey'>,
|
|
38
|
+
'queryFn' | 'queryHash' | 'queryKeyHashFn' | 'throwOnError'
|
|
39
|
+
> & {
|
|
40
|
+
queryFn: Exclude<
|
|
41
|
+
Query.QueryObserverOptions<queryFnData, error, data, queryFnData, queryKey>['queryFn'],
|
|
42
|
+
typeof Query.skipToken | undefined
|
|
43
|
+
>;
|
|
44
|
+
};
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) TonTech.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
import type { Network } from './network';
|
|
10
|
+
import type { Base64String } from './primitives';
|
|
11
|
+
|
|
12
|
+
// SignData types for wallet adapter
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Data to be signed by the wallet, discriminated by type.
|
|
16
|
+
*/
|
|
17
|
+
export type SignData =
|
|
18
|
+
| { type: 'text'; value: SignDataText }
|
|
19
|
+
| { type: 'binary'; value: SignDataBinary }
|
|
20
|
+
| { type: 'cell'; value: SignDataCell };
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Binary data to be signed.
|
|
24
|
+
*/
|
|
25
|
+
export interface SignDataBinary {
|
|
26
|
+
/**
|
|
27
|
+
* Raw binary content encoded as bytes in Base64
|
|
28
|
+
*/
|
|
29
|
+
content: Base64String;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* TON Cell data to be signed with a schema definition.
|
|
34
|
+
*/
|
|
35
|
+
export interface SignDataCell {
|
|
36
|
+
/**
|
|
37
|
+
* Schema describing the cell structure for parsing
|
|
38
|
+
*/
|
|
39
|
+
schema: string;
|
|
40
|
+
/**
|
|
41
|
+
* Cell content encoded in Base64
|
|
42
|
+
*/
|
|
43
|
+
content: Base64String;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
/**
|
|
47
|
+
* Plain text data to be signed.
|
|
48
|
+
*/
|
|
49
|
+
export interface SignDataText {
|
|
50
|
+
/**
|
|
51
|
+
* Text content to be signed
|
|
52
|
+
*/
|
|
53
|
+
content: string;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
/** SignData Request Payload - sent to wallet */
|
|
57
|
+
export interface SignDataRequest {
|
|
58
|
+
/** Network */
|
|
59
|
+
network?: Network;
|
|
60
|
+
/** Sender address in raw format */
|
|
61
|
+
from?: string;
|
|
62
|
+
/** Data to sign */
|
|
63
|
+
data: SignData;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
/** SignData Response - returned from wallet */
|
|
67
|
+
export interface SignDataResponse {
|
|
68
|
+
/** Base64 encoded signature */
|
|
69
|
+
signature: string;
|
|
70
|
+
/** Wallet address that signed */
|
|
71
|
+
address: string;
|
|
72
|
+
/** Unix timestamp when signed */
|
|
73
|
+
timestamp: number;
|
|
74
|
+
/** Domain of the dApp */
|
|
75
|
+
domain: string;
|
|
76
|
+
/** Original payload that was signed */
|
|
77
|
+
payload: SignDataRequest;
|
|
78
|
+
}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) TonTech.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
import type { ExtraCurrencies, TokenAmount } from '@ton/walletkit';
|
|
10
|
+
|
|
11
|
+
import type { Network } from './network';
|
|
12
|
+
|
|
13
|
+
export interface TransactionRequest {
|
|
14
|
+
/**
|
|
15
|
+
* List of messages to include in the transaction
|
|
16
|
+
*/
|
|
17
|
+
messages: TransactionRequestMessage[];
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* Network to execute the transaction on
|
|
21
|
+
*/
|
|
22
|
+
network?: Network;
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* Unix timestamp after which the transaction becomes invalid
|
|
26
|
+
*/
|
|
27
|
+
validUntil?: number;
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* Sender wallet address in received format(raw, user friendly)
|
|
31
|
+
*/
|
|
32
|
+
fromAddress?: string;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* Individual message within a transaction request.
|
|
37
|
+
*/
|
|
38
|
+
export interface TransactionRequestMessage {
|
|
39
|
+
/**
|
|
40
|
+
* Recipient wallet address in format received from caller (raw, user friendly)
|
|
41
|
+
*/
|
|
42
|
+
address: string;
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* Amount to transfer in nanos
|
|
46
|
+
*/
|
|
47
|
+
amount: TokenAmount;
|
|
48
|
+
|
|
49
|
+
/**
|
|
50
|
+
* Additional currencies to include in the transfer
|
|
51
|
+
*/
|
|
52
|
+
extraCurrency?: ExtraCurrencies;
|
|
53
|
+
|
|
54
|
+
/**
|
|
55
|
+
* Initial state for deploying a new contract, encoded in Base64
|
|
56
|
+
*/
|
|
57
|
+
stateInit?: string;
|
|
58
|
+
|
|
59
|
+
/**
|
|
60
|
+
* Message payload data encoded in Base64
|
|
61
|
+
*/
|
|
62
|
+
payload?: string;
|
|
63
|
+
}
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) TonTech.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
/** Combines members of an intersection into a readable type. */
|
|
10
|
+
// https://twitter.com/mattpocockuk/status/1622730173446557697?s=20&t=NdpAcmEFXY01xkqU3KO0Mg
|
|
11
|
+
export type Compute<type> = { [key in keyof type]: type[key] } & unknown;
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Makes all properties of an object optional.
|
|
15
|
+
*
|
|
16
|
+
* Compatible with [`exactOptionalPropertyTypes`](https://www.typescriptlang.org/tsconfig#exactOptionalPropertyTypes).
|
|
17
|
+
*/
|
|
18
|
+
export type ExactPartial<type> = {
|
|
19
|
+
[key in keyof type]?: type[key] | undefined;
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Creates a fixed array of `count` elements of type `type`.
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* ```ts
|
|
27
|
+
* type Result = FixedArray<string, 3>
|
|
28
|
+
* // ^? type Result = readonly [string, string, string]
|
|
29
|
+
* ```
|
|
30
|
+
*/
|
|
31
|
+
export type FixedArray<type, count extends number, result extends readonly type[] = []> = result['length'] extends count
|
|
32
|
+
? result
|
|
33
|
+
: FixedArray<type, count, readonly [...result, type]>;
|
|
34
|
+
|
|
35
|
+
/** Checks if {@link type} can be narrowed further than {@link type2} */
|
|
36
|
+
export type IsNarrowable<type, type2> =
|
|
37
|
+
IsUnknown<type> extends true
|
|
38
|
+
? false
|
|
39
|
+
: undefined extends type
|
|
40
|
+
? false
|
|
41
|
+
: IsNever<(type extends type2 ? true : false) & (type2 extends type ? false : true)> extends true
|
|
42
|
+
? false
|
|
43
|
+
: true;
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* @internal
|
|
47
|
+
* Checks if {@link type} is `never`
|
|
48
|
+
*/
|
|
49
|
+
export type IsNever<type> = [type] extends [never] ? true : false;
|
|
50
|
+
|
|
51
|
+
/**
|
|
52
|
+
* @internal
|
|
53
|
+
* Checks if {@link type} is `unknown`
|
|
54
|
+
*/
|
|
55
|
+
export type IsUnknown<type> = unknown extends type ? true : false;
|
|
56
|
+
|
|
57
|
+
/** Merges two object types into new type */
|
|
58
|
+
export type Merge<obj1, obj2> = Compute<
|
|
59
|
+
LooseOmit<obj1, keyof obj2 extends infer key extends string ? key : never> & obj2
|
|
60
|
+
>;
|
|
61
|
+
|
|
62
|
+
/** Removes `readonly` from all properties of an object. */
|
|
63
|
+
export type Mutable<type extends object> = {
|
|
64
|
+
-readonly [key in keyof type]: type[key];
|
|
65
|
+
};
|
|
66
|
+
|
|
67
|
+
/** Strict version of built-in Omit type */
|
|
68
|
+
export type StrictOmit<type, keys extends keyof type> = Pick<type, Exclude<keyof type, keys>>;
|
|
69
|
+
|
|
70
|
+
/** Makes objects destructurable. */
|
|
71
|
+
export type OneOf<
|
|
72
|
+
union extends object,
|
|
73
|
+
///
|
|
74
|
+
keys extends KeyofUnion<union> = KeyofUnion<union>,
|
|
75
|
+
> = union extends infer Item ? Compute<Item & { [K in Exclude<keys, keyof Item>]?: undefined }> : never;
|
|
76
|
+
type KeyofUnion<type> = type extends type ? keyof type : never;
|
|
77
|
+
|
|
78
|
+
/** Makes {@link key} optional in {@link type} while preserving type inference. */
|
|
79
|
+
// s/o trpc (https://github.com/trpc/trpc/blob/main/packages/server/src/types.ts#L6)
|
|
80
|
+
export type PartialBy<type, key extends keyof type> = ExactPartial<Pick<type, key>> & StrictOmit<type, key>;
|
|
81
|
+
|
|
82
|
+
/* Removes `undefined` from object property */
|
|
83
|
+
export type RemoveUndefined<type> = {
|
|
84
|
+
[key in keyof type]: NonNullable<type[key]>;
|
|
85
|
+
};
|
|
86
|
+
|
|
87
|
+
/**
|
|
88
|
+
* Creates a type that is {@link type} with the required keys {@link key}.
|
|
89
|
+
*
|
|
90
|
+
* @example
|
|
91
|
+
* ```ts
|
|
92
|
+
* RequiredBy<{ a?: string, b: number }, 'a'>
|
|
93
|
+
* // { a: string, b: number }
|
|
94
|
+
* ```
|
|
95
|
+
*
|
|
96
|
+
* @internal
|
|
97
|
+
*/
|
|
98
|
+
export type RequiredBy<type, key extends keyof type> = Omit<type, key> & ExactRequired<Pick<type, key>>;
|
|
99
|
+
|
|
100
|
+
/** @internal */
|
|
101
|
+
export type ExactRequired<type> = {
|
|
102
|
+
[key in keyof type]-?: Exclude<type[key], undefined>;
|
|
103
|
+
};
|
|
104
|
+
|
|
105
|
+
///////////////////////////////////////////////////////////////////////////
|
|
106
|
+
// Loose types
|
|
107
|
+
|
|
108
|
+
/** Loose version of {@link StrictOmit} */
|
|
109
|
+
export type LooseOmit<type, keys extends string> = Pick<type, Exclude<keyof type, keys>>;
|
|
110
|
+
|
|
111
|
+
///////////////////////////////////////////////////////////////////////////
|
|
112
|
+
// Union types
|
|
113
|
+
|
|
114
|
+
export type UnionCompute<type> = type extends object ? Compute<type> : type;
|
|
115
|
+
|
|
116
|
+
export type UnionLooseOmit<type, keys extends string> = type extends unknown ? LooseOmit<type, keys> : never;
|
|
117
|
+
|
|
118
|
+
export type UnionStrictOmit<type, keys extends keyof type> = type extends unknown ? StrictOmit<type, keys> : never;
|
|
119
|
+
|
|
120
|
+
export type UnionExactPartial<type> = type extends object ? ExactPartial<type> : type;
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) TonTech.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
import type { Network, SendTransactionResponse, Hex, UserFriendlyAddress } from '@ton/walletkit';
|
|
10
|
+
|
|
11
|
+
import type { TransactionRequest } from './transaction';
|
|
12
|
+
import type { SignDataRequest, SignDataResponse } from './signing';
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Minimal wallet interface for appkit.
|
|
16
|
+
* Only includes methods that require wallet-specific logic (signing, identity).
|
|
17
|
+
* Data fetching (balance, jettons, nfts) is done via actions using networkManager.
|
|
18
|
+
*/
|
|
19
|
+
export interface WalletInterface {
|
|
20
|
+
/** Connector that created this wallet */
|
|
21
|
+
readonly connectorId: string;
|
|
22
|
+
|
|
23
|
+
// ==========================================
|
|
24
|
+
// Identity
|
|
25
|
+
// ==========================================
|
|
26
|
+
|
|
27
|
+
/** Get the wallet address */
|
|
28
|
+
getAddress(): UserFriendlyAddress;
|
|
29
|
+
|
|
30
|
+
/** Get the wallet public key */
|
|
31
|
+
getPublicKey(): Hex;
|
|
32
|
+
|
|
33
|
+
/** Get the network the wallet is connected to */
|
|
34
|
+
getNetwork(): Network;
|
|
35
|
+
|
|
36
|
+
/** Get unique wallet identifier */
|
|
37
|
+
getWalletId(): string;
|
|
38
|
+
|
|
39
|
+
// ==========================================
|
|
40
|
+
// Actions requiring wallet signature
|
|
41
|
+
// ==========================================
|
|
42
|
+
|
|
43
|
+
/** Send a transaction (wallet signs and submits) */
|
|
44
|
+
sendTransaction(request: TransactionRequest): Promise<SendTransactionResponse>;
|
|
45
|
+
|
|
46
|
+
/** Sign arbitrary data using TonConnect signData */
|
|
47
|
+
signData(payload: SignDataRequest): Promise<SignDataResponse>;
|
|
48
|
+
}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) TonTech.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
import { describe, expect, it } from 'vitest';
|
|
10
|
+
|
|
11
|
+
import { validateNumericString } from './validate-numeric-string';
|
|
12
|
+
|
|
13
|
+
describe('validateNumericString', () => {
|
|
14
|
+
it('should validate integers', () => {
|
|
15
|
+
expect(validateNumericString('123')).toBe(true);
|
|
16
|
+
expect(validateNumericString('0')).toBe(true);
|
|
17
|
+
});
|
|
18
|
+
|
|
19
|
+
it('should validate floats with dot', () => {
|
|
20
|
+
expect(validateNumericString('1.23')).toBe(true);
|
|
21
|
+
expect(validateNumericString('0.1')).toBe(true);
|
|
22
|
+
expect(validateNumericString('1.')).toBe(true);
|
|
23
|
+
expect(validateNumericString('.1')).toBe(true);
|
|
24
|
+
});
|
|
25
|
+
|
|
26
|
+
it('should validate floats with comma', () => {
|
|
27
|
+
expect(validateNumericString('1,23')).toBe(true);
|
|
28
|
+
expect(validateNumericString('0,1')).toBe(true);
|
|
29
|
+
});
|
|
30
|
+
|
|
31
|
+
it('should reject invalid characters', () => {
|
|
32
|
+
expect(validateNumericString('1a')).toBe(false);
|
|
33
|
+
expect(validateNumericString('abc')).toBe(false);
|
|
34
|
+
expect(validateNumericString('1.2.3')).toBe(false);
|
|
35
|
+
expect(validateNumericString(' ')).toBe(false);
|
|
36
|
+
});
|
|
37
|
+
|
|
38
|
+
it('should validate max decimals', () => {
|
|
39
|
+
expect(validateNumericString('1.23', 2)).toBe(true);
|
|
40
|
+
expect(validateNumericString('1.234', 2)).toBe(false);
|
|
41
|
+
expect(validateNumericString('1.23', 1)).toBe(false);
|
|
42
|
+
});
|
|
43
|
+
|
|
44
|
+
it('should handle 0 max decimals', () => {
|
|
45
|
+
expect(validateNumericString('123', 0)).toBe(true);
|
|
46
|
+
expect(validateNumericString('1.2', 0)).toBe(false);
|
|
47
|
+
});
|
|
48
|
+
|
|
49
|
+
it('should reject pure dot regardless', () => {
|
|
50
|
+
expect(validateNumericString('.')).toBe(false);
|
|
51
|
+
expect(validateNumericString(',')).toBe(false);
|
|
52
|
+
});
|
|
53
|
+
});
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) TonTech.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
export const DOT_NUM_REGEXP = /^\d*[.]?(\d*)$/;
|
|
10
|
+
export const COMMA_NUM_REGEXP = /^\d*,?(\d*)$/;
|
|
11
|
+
|
|
12
|
+
export const validateNumericString = (num: string, maxDecimals?: number): boolean => {
|
|
13
|
+
const isDotNum = num.includes('.');
|
|
14
|
+
const isValid = isDotNum ? DOT_NUM_REGEXP.test(num) : COMMA_NUM_REGEXP.test(num);
|
|
15
|
+
const match = isDotNum ? DOT_NUM_REGEXP.exec(num) : COMMA_NUM_REGEXP.exec(num);
|
|
16
|
+
|
|
17
|
+
// if the decimals is zero the dot is not needed
|
|
18
|
+
if (maxDecimals === 0 && num.includes('.')) return false;
|
|
19
|
+
|
|
20
|
+
if (num === '.' || num === ',') return false;
|
|
21
|
+
|
|
22
|
+
if (maxDecimals !== undefined && match?.[1]) return isValid && match?.[1].length <= maxDecimals;
|
|
23
|
+
|
|
24
|
+
return isValid;
|
|
25
|
+
};
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) TonTech.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
import { describe, expect, it } from 'vitest';
|
|
10
|
+
|
|
11
|
+
import { keyBy } from './key-by';
|
|
12
|
+
|
|
13
|
+
describe('keyBy', () => {
|
|
14
|
+
it('should key array by property', () => {
|
|
15
|
+
const array = [
|
|
16
|
+
{ id: 1, name: 'a' },
|
|
17
|
+
{ id: 2, name: 'b' },
|
|
18
|
+
];
|
|
19
|
+
const result = keyBy(array, (item) => item.id);
|
|
20
|
+
expect(result).toEqual({
|
|
21
|
+
1: { id: 1, name: 'a' },
|
|
22
|
+
2: { id: 2, name: 'b' },
|
|
23
|
+
});
|
|
24
|
+
});
|
|
25
|
+
|
|
26
|
+
it('should handle property collision (last wins)', () => {
|
|
27
|
+
const array = [
|
|
28
|
+
{ id: 1, name: 'a' },
|
|
29
|
+
{ id: 1, name: 'b' },
|
|
30
|
+
];
|
|
31
|
+
// Based on implementation: arr.forEach(...) which iterates in order
|
|
32
|
+
const result = keyBy(array, (item) => item.id);
|
|
33
|
+
expect(result).toEqual({
|
|
34
|
+
1: { id: 1, name: 'b' },
|
|
35
|
+
});
|
|
36
|
+
});
|
|
37
|
+
|
|
38
|
+
it('should handle empty array', () => {
|
|
39
|
+
const array: { id: number }[] = [];
|
|
40
|
+
const result = keyBy(array, (item) => item.id);
|
|
41
|
+
expect(result).toEqual({});
|
|
42
|
+
});
|
|
43
|
+
|
|
44
|
+
it('should work with string keys', () => {
|
|
45
|
+
const array = [
|
|
46
|
+
{ id: 'a', val: 1 },
|
|
47
|
+
{ id: 'b', val: 2 },
|
|
48
|
+
];
|
|
49
|
+
const result = keyBy(array, (item) => item.id);
|
|
50
|
+
expect(result).toEqual({
|
|
51
|
+
a: { id: 'a', val: 1 },
|
|
52
|
+
b: { id: 'b', val: 2 },
|
|
53
|
+
});
|
|
54
|
+
});
|
|
55
|
+
});
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) TonTech.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
export function keyBy<T, K extends PropertyKey>(arr: readonly T[], getKeyFromItem: (item: T) => K): Record<K, T> {
|
|
10
|
+
const result = {} as Record<K, T>;
|
|
11
|
+
|
|
12
|
+
arr.forEach((item) => {
|
|
13
|
+
const key = getKeyFromItem(item);
|
|
14
|
+
result[key] = item;
|
|
15
|
+
});
|
|
16
|
+
|
|
17
|
+
return result;
|
|
18
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) TonTech.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
import { describe, expect, it, vi } from 'vitest';
|
|
10
|
+
|
|
11
|
+
import { randomFromArray } from './random-from-array';
|
|
12
|
+
|
|
13
|
+
describe('randomFromArray', () => {
|
|
14
|
+
it('should return an item from the array', () => {
|
|
15
|
+
const array = [1, 2, 3];
|
|
16
|
+
const item = randomFromArray(array);
|
|
17
|
+
expect(array).toContain(item);
|
|
18
|
+
});
|
|
19
|
+
|
|
20
|
+
it('should return undefined for empty array', () => {
|
|
21
|
+
const array: number[] = [];
|
|
22
|
+
const item = randomFromArray(array);
|
|
23
|
+
expect(item).toBeUndefined();
|
|
24
|
+
});
|
|
25
|
+
|
|
26
|
+
it('should work with single item', () => {
|
|
27
|
+
const array = [42];
|
|
28
|
+
expect(randomFromArray(array)).toBe(42);
|
|
29
|
+
});
|
|
30
|
+
|
|
31
|
+
it('should use Math.random', () => {
|
|
32
|
+
const randomSpy = vi.spyOn(Math, 'random');
|
|
33
|
+
randomFromArray([1, 2]);
|
|
34
|
+
expect(randomSpy).toHaveBeenCalled();
|
|
35
|
+
randomSpy.mockRestore();
|
|
36
|
+
});
|
|
37
|
+
});
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) TonTech.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
export const randomFromArray = <T>(items: T[]): T => items[Math.floor(Math.random() * items.length)]!;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) TonTech.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
import { describe, expect, it } from 'vitest';
|
|
10
|
+
|
|
11
|
+
import { getErrorMessage } from './get-error-message';
|
|
12
|
+
|
|
13
|
+
describe('getErrorMessage', () => {
|
|
14
|
+
it('should return error message from Error object', () => {
|
|
15
|
+
const error = new Error('Something went wrong');
|
|
16
|
+
expect(getErrorMessage(error)).toBe('Something went wrong');
|
|
17
|
+
});
|
|
18
|
+
|
|
19
|
+
it('should return string error directly', () => {
|
|
20
|
+
const error = 'Something went wrong';
|
|
21
|
+
expect(getErrorMessage(error)).toBe('Something went wrong');
|
|
22
|
+
});
|
|
23
|
+
|
|
24
|
+
it('should return message from object with message property', () => {
|
|
25
|
+
const error = { message: 'Something went wrong' };
|
|
26
|
+
expect(getErrorMessage(error)).toBe('Something went wrong');
|
|
27
|
+
});
|
|
28
|
+
|
|
29
|
+
it('should return default message if error is unknown object', () => {
|
|
30
|
+
const error = { foo: 'bar' };
|
|
31
|
+
expect(getErrorMessage(error, 'Default Message')).toBe('Default Message');
|
|
32
|
+
expect(getErrorMessage(error)).toBe('Error occurred');
|
|
33
|
+
});
|
|
34
|
+
|
|
35
|
+
it('should return default message if error is null/undefined', () => {
|
|
36
|
+
expect(getErrorMessage(null)).toBe('Error occurred');
|
|
37
|
+
expect(getErrorMessage(undefined)).toBe('Error occurred');
|
|
38
|
+
});
|
|
39
|
+
});
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) TonTech.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
type ObjectWithMessage = { message: string } & { [key: string]: unknown };
|
|
10
|
+
|
|
11
|
+
const isObjectWithMessage = (toBeDetermined: unknown): toBeDetermined is ObjectWithMessage =>
|
|
12
|
+
!!toBeDetermined && !!(toBeDetermined as ObjectWithMessage).message;
|
|
13
|
+
|
|
14
|
+
export const getErrorMessage = (error: unknown, defaultMessage?: string): string => {
|
|
15
|
+
if (typeof error === 'string') {
|
|
16
|
+
return error;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
if (error instanceof Error || isObjectWithMessage(error)) {
|
|
20
|
+
return error.message;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
return defaultMessage || 'Error occurred';
|
|
24
|
+
};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) TonTech.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
export { formatUnits, parseUnits } from '@ton/walletkit';
|
|
10
|
+
|
|
11
|
+
export * from './amount/validate-numeric-string';
|
|
12
|
+
export * from './arrays/key-by';
|
|
13
|
+
export * from './arrays/random-from-array';
|
|
14
|
+
export * from './errors/get-error-message';
|
|
15
|
+
export * from './functions/noop';
|
|
16
|
+
export * from './jetton/jetton-info';
|
|
17
|
+
export * from './nft/nft-info';
|
|
18
|
+
export * from './object/map-values';
|
|
19
|
+
export * from './predicate/is-string';
|
|
20
|
+
export * from './promise/cancel-promise';
|
|
21
|
+
export * from './promise/sleep';
|
|
22
|
+
export * from './query/filter-query-options';
|
|
23
|
+
export * from './string/middle-ellipsis';
|