Skip to content

Commit ff2b4b7

Browse files
committed
refactor(app): add crypto domain
1 parent f2cb601 commit ff2b4b7

File tree

3 files changed

+7
-5
lines changed

3 files changed

+7
-5
lines changed

src/shared/constants/abis/erc20ABI.ts renamed to src/domain/crypto/repository.ts

+4-2
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@
1616

1717
import { erc20ABI } from '@wagmi/core';
1818

19-
import { abiContractFactory } from '../../utils/abiContractFactory';
19+
import { createContractActions } from '@/utils/contract';
2020

21-
export const { readActions: readErc20AbiActions, writeActions: writeErc20AbiActions } = abiContractFactory(erc20ABI);
21+
const { writeActions: { transfer: transferToken } } = createContractActions(erc20ABI);
22+
23+
export { transferToken };

src/entry/pages/course-detail/RightCard.tsx

+2-2
Original file line numberDiff line numberDiff line change
@@ -30,13 +30,13 @@ import { Button } from '@/components/Button';
3030
// import { prepareWriteContract, writeContract } from '@wagmi/core'
3131
import { CheckIcon } from '@/components/icon/solid';
3232
import { USDTIcon } from '@/components/Icons';
33-
import { writeErc20AbiActions } from '@/constants/abis/erc20ABI';
3433
import useMounted from '@/hooks/useMounted';
3534
import { resolvePathWithSearch } from '@/utils/url';
3635
import { parseTokenUnits } from '@/utils/web3';
3736

3837
import { enrollOne, updateTransaction } from '#/domain/challenge/repository';
3938
import DatePlaceWidget from '#/domain/challenge/widgets/date-place';
39+
import { transferToken } from '#/domain/crypto/repository';
4040
// import { currentTime } from '@/utils/date'
4141
import { useMediaUrl } from '#/state/application/hooks';
4242

@@ -308,7 +308,7 @@ export default function LearnRightCard({
308308
// args: [toAddress, _amount],
309309
// })
310310

311-
const { hash } = await writeErc20AbiActions.transfer(
311+
const { hash } = await transferToken(
312312
data.challenges_extra?.course_challenges_extra_feeds_contract,
313313
[toAddress, _amount.toBigInt()],
314314
);

src/shared/utils/abiContractFactory.ts renamed to src/shared/utils/contract.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ import { readContract, writeContract } from '@wagmi/core';
1919
import type { Address, ReadContractConfig, ReadContractResult, WriteContractPreparedArgs, WriteContractResult } from '@wagmi/core';
2020
import type { Abi, ExtractAbiFunctionNames } from 'abitype';
2121

22-
export function abiContractFactory<
22+
export function createContractActions<
2323
TAbi extends Abi,
2424
ViewFunctionNames extends ExtractAbiFunctionNames<TAbi, 'view' | 'pure'>,
2525
WriteFunctionNames extends ExtractAbiFunctionNames<TAbi, 'payable' | 'nonpayable'>,

0 commit comments

Comments
 (0)