11import type { CommandHandlerArgs , CommandResult } from '@/core' ;
22import type { Command } from '@/core/commands/command.interface' ;
3- import type { CoreApi } from '@/core/core-api/core-api.interface' ;
43import type { AccountReference } from '@/core/schemas/common-schemas' ;
54import type { IdentityResolutionService } from '@/core/services/identity-resolution/identity-resolution-service.interface' ;
65import type { HederaMirrornodeService } from '@/core/services/mirrornode/hedera-mirrornode-service.interface' ;
@@ -9,13 +8,14 @@ import type {
98 TokenInfo ,
109} from '@/core/services/mirrornode/types' ;
1110import type { SupportedNetwork } from '@/core/types/shared.types' ;
11+ import type { TokenReferenceService } from '@/plugins/token/services/token-reference.service.interface' ;
1212import type { FtTokenMetadata } from '@/plugins/token/types' ;
1313import type { TokenAllowanceFtListOutput } from './output' ;
1414
1515import BigNumber from 'bignumber.js' ;
1616
1717import { normalizeBalance } from '@/core/utils/normalize-balance' ;
18- import { resolveTokenParameter } from '@/plugins/token/resolver-helper ' ;
18+ import { TokenReferenceServiceImpl } from '@/plugins/token/services/token-reference.service ' ;
1919
2020import { TokenAllowanceFtListInputSchema } from './input' ;
2121
@@ -27,6 +27,8 @@ type TokenAllowanceFtFetchResult = {
2727} ;
2828
2929export class TokenAllowanceFtListCommand implements Command {
30+ constructor ( private readonly tokenReferenceService : TokenReferenceService ) { }
31+
3032 async execute ( args : CommandHandlerArgs ) : Promise < CommandResult > {
3133 const { api } = args ;
3234 const validArgs = TokenAllowanceFtListInputSchema . parse ( args . args ) ;
@@ -41,7 +43,7 @@ export class TokenAllowanceFtListCommand implements Command {
4143 network ,
4244 validArgs . spender ,
4345 ) ;
44- const tokenId = this . resolveOptionalToken ( validArgs . token , api , network ) ;
46+ const tokenId = this . resolveOptionalToken ( validArgs . token , network ) ;
4547
4648 const response = await this . fetchAllowances (
4749 api . mirror ,
@@ -97,11 +99,10 @@ export class TokenAllowanceFtListCommand implements Command {
9799
98100 private resolveOptionalToken (
99101 token : string | undefined ,
100- api : CoreApi ,
101102 network : SupportedNetwork ,
102103 ) : string | undefined {
103104 if ( token === undefined ) return undefined ;
104- const resolved = resolveTokenParameter ( token , api , network ) ;
105+ const resolved = this . tokenReferenceService . resolveToken ( token , network ) ;
105106 if ( ! resolved ) return undefined ;
106107 return resolved . tokenId ;
107108 }
@@ -188,5 +189,8 @@ export class TokenAllowanceFtListCommand implements Command {
188189export async function tokenAllowanceFtList (
189190 args : CommandHandlerArgs ,
190191) : Promise < CommandResult > {
191- return new TokenAllowanceFtListCommand ( ) . execute ( args ) ;
192+ const { api } = args ;
193+ return new TokenAllowanceFtListCommand (
194+ new TokenReferenceServiceImpl ( api . identityResolution ) ,
195+ ) . execute ( args ) ;
192196}
0 commit comments