From 1291b2a636d31f645d40f5ad114aeeeb83d86da6 Mon Sep 17 00:00:00 2001 From: Tom Wang Date: Tue, 30 Apr 2024 14:28:14 +0800 Subject: [PATCH] refactor: replace toUint64Le, parseEpoch from ckbCore.utils with lumos methods --- .../neuron-ui/src/components/SpecialAssetList/hooks.ts | 4 ++-- packages/neuron-ui/src/services/chain.ts | 3 --- packages/neuron-ui/src/utils/parsers.ts | 9 +++++---- 3 files changed, 7 insertions(+), 9 deletions(-) diff --git a/packages/neuron-ui/src/components/SpecialAssetList/hooks.ts b/packages/neuron-ui/src/components/SpecialAssetList/hooks.ts index 238a83770f..eaec15cdaa 100644 --- a/packages/neuron-ui/src/components/SpecialAssetList/hooks.ts +++ b/packages/neuron-ui/src/components/SpecialAssetList/hooks.ts @@ -1,5 +1,5 @@ import React, { useCallback, useEffect } from 'react' -import { ckbCore } from 'services/chain' +import { number, bytes } from '@ckb-lumos/codec' import { getSUDTAccountList } from 'services/remote' import { NeuronWalletActions, useDispatch } from 'states' import { @@ -144,7 +144,7 @@ export const useSpecialAssetColumnInfo = ({ switch (assetInfo.lock) { case PresetScript.Locktime: { - const targetEpochInfo = epochParser(ckbCore.utils.toUint64Le(`0x${lock.args.slice(-16)}`)) + const targetEpochInfo = epochParser(bytes.hexify(number.Uint64LE.pack(`0x${lock.args.slice(-16)}`))) const currentEpochInfo = epochParser(epoch) const targetEpochFraction = Number(targetEpochInfo.length) > 0 ? Number(targetEpochInfo.index) / Number(targetEpochInfo.length) : 1 diff --git a/packages/neuron-ui/src/services/chain.ts b/packages/neuron-ui/src/services/chain.ts index 0ca47c4951..b7ab5c18bc 100644 --- a/packages/neuron-ui/src/services/chain.ts +++ b/packages/neuron-ui/src/services/chain.ts @@ -4,13 +4,10 @@ export const ckbCore = new CKBCore('') export const { getHeader, getBlockchainInfo, getTipHeader, getHeaderByNumber, getFeeRateStats, getTransaction } = ckbCore.rpc -export const { toUint64Le, parseEpoch } = ckbCore.utils - export default { ckbCore, getHeader, getTipHeader, getTransaction, - toUint64Le, getFeeRateStats, } diff --git a/packages/neuron-ui/src/utils/parsers.ts b/packages/neuron-ui/src/utils/parsers.ts index 28663dd69c..10dfafaba8 100644 --- a/packages/neuron-ui/src/utils/parsers.ts +++ b/packages/neuron-ui/src/utils/parsers.ts @@ -1,4 +1,5 @@ -import { toUint64Le, parseEpoch } from 'services/chain' +import { since } from '@ckb-lumos/base' +import { number, bytes } from '@ckb-lumos/codec' import { MILLISECONDS, PAGE_SIZE } from './const' export const listParams = (search: string) => { @@ -17,7 +18,7 @@ export const listParams = (search: string) => { export const epochParser = (epoch: string) => { const e = epoch.startsWith('0x') ? epoch : `0x${BigInt(epoch).toString(16)}` - const parsed = parseEpoch(e) + const parsed = since.parseEpoch(e) const res = { length: BigInt(parsed.length), @@ -44,7 +45,7 @@ export const toUint128Le = (hexString: string) => { s = s.slice(0, 34) } - return `${toUint64Le(`0x${s.substr(18, 16)}`)}${toUint64Le(s.substr(0, 18)).slice(2)}` + return bytes.hexify(number.Uint128LE.pack(s)) } export const getLockTimestamp = ({ @@ -56,7 +57,7 @@ export const getLockTimestamp = ({ epoch: string bestKnownBlockTimestamp: number }) => { - const targetEpochInfo = epochParser(toUint64Le(`0x${lockArgs.slice(-16)}`)) + const targetEpochInfo = epochParser(bytes.hexify(number.Uint64LE.pack(`0x${lockArgs.slice(-16)}`))) const currentEpochInfo = epochParser(epoch) const targetEpochFraction = Number(targetEpochInfo.length) > 0 ? Number(targetEpochInfo.index) / Number(targetEpochInfo.length) : 1