Skip to content

Release v1.4.0

Compare
Choose a tag to compare
@sirano11 sirano11 released this 05 Jul 02:03
· 97 commits to dev since this release
14e4e04

v1.4.0 Release Notes

Breaking Change

  • The caver.kas.wallet.signMessage does not support krn parameter. This function has been changed to work using the KAS user's default krn.

New Features

  • Adds support for KAS KIP-7 API.
    • Functions to use the KIP-7 API service newly provided by KAS.
      • caver.kas.kip7.deploy POST /v1/contract
      • caver.kas.kip7.getContract GET /v1/contract/{contract-address-or-alias}
      • caver.kas.kip7.getContractList GET /v1/contract
      • caver.kas.kip7.allowance GET /v1/contract/{contract-address-or-alias}/account/{owner}/allowance/{spender}
      • caver.kas.kip7.balance GET /v1/contract/{contract-address-or-alias}/account/{owner}/balance
      • caver.kas.kip7.approve POST /v1/contract/{contract-address-or-alias}/approve
      • caver.kas.kip7.transfer POST /v1/contract/{contract-address-or-alias}/transfer
      • caver.kas.kip7.transferFrom POST /v1/contract/{contract-address-or-alias}/transfer-from
      • caver.kas.kip7.mint POST /v1/contract/{contract-address-or-alias}/mint
      • caver.kas.kip7.burn POST /v1/contract/{contract-address-or-alias}/burn
      • caver.kas.kip7.burnFrom POST /v1/contract/{contract-address-or-alias}/burn-from
      • caver.kas.kip7.pause POST /v1/contract/{contract-address-or-alias}/pause
      • caver.kas.kip7.unpause POST /v1/contract/{contract-address-or-alias}/unpause
      • caver.kas.kip7.getDeployer GET /v1/deployer/default
    • KAS KIP-7 API is available with caver.kas.kip7 by implementing caver.initKASAPI(chainId, accessKeyId, secretAccessKey) or caver.initKIP7API(chainId, accessKeyId, secretAccessKey, url). If query parameters are required when using the KIP-7 API, they can be used through the KIP7QueryOptions class. For more scenarios in detail, refer to KAS Docs.
  • Now supports new functions with KAS Wallet API.
    • caver.kas.wallet provides a function that migrates the existing Klaytn accounts to the KAS Wallet API service.
      • caver.kas.wallet.migrateAccounts migrates specific Klaytn accounts to KAS Wallet API service.
    • Adds support for newly added API functions in KAS Wallet API.
      • Functions to use fee payer via KAS Wallet API.
        • caver.kas.wallet.createFeePayer POST /v2/feepayer
        • caver.kas.wallet.deleteFeePayer DELETE /v2/feepayer/{address}
        • caver.kas.wallet.getFeePayer GET /v2/feepayer/{address}
        • caver.kas.wallet.getFeePayerList GET /v2/feepayer
      • For more scenarios in detail, refer to KAS Docs.
    • Supports for a new Key API function in KAS Wallet API.
      • Function to delete a key in KAS Wallet API.
        • caver.kas.wallet.deleteKey DELETE /v2/key/{key-id}
      • For more scenarios in detail, refer to KAS Docs.
  • Adds new functions and query parameters to Token History API.
    • Functions for integrated inquiry of tokens and contracts newly provided by KAS.
      • caver.kas.wallet.getContractListByOwner GET /v2/account/{address}/contract
      • caver.kas.wallet.getTokenListByOwner GET /v2/account/{address}/token
    • KAS provides new query parameters.
      • You can use excludeZeroKlay query parameter withcaver.kas.tokenHistory.getTransferHistory.
      • You can use fromOnly, toOnly and excludeZeroKlay query parameters withcaver.kas.tokenHistory.getTransferHistoryByAccount.
    • For more scenarios in detail, refer to KAS Docs.
  • Adds support for WebSocket provider with KAS Node API.
    • KAS Node API service is now usable via WebSocket provider.
      • Added a ConfigOptions class to provide various options for initializing CaverExtKAS class.
        • Added a useNodeAPIWithHttp field to choose provider either Http or Websocket.
      • Added a new CaverExtKAS contstructor that requires a ConfigOptions instance as the last parameter to support websocket.
      • Added initKASAPI's overloading function that requires a ConfigOptions instance as the last parameter to support websocket.
      • Added initNodeAPI's overloading function that requires false as the last parameter to support websocket.
    • For more scenarios in detail, refer to KAS Docs.

Improvements

  • Deleted the krn parameter to allow users to implement the function using the default krn in the caver.kas.wallet.signMessage.
  • Since KAS does not support querying the number of accounts by specifying the krn, the krn parameter is disabled in the caver.kas.wallet.getAccountCountByKRN function.