@ledgerhq/context-module 0.0.0-develop-20260804002603 → 0.0.0-develop-20260807010949

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.
Files changed (46) hide show
  1. package/lib/cjs/package.json +1 -1
  2. package/lib/cjs/src/modules/solana/alt-resolution/data/AltResolutionDataSource.js +1 -1
  3. package/lib/cjs/src/modules/solana/alt-resolution/data/AltResolutionDataSource.js.map +1 -1
  4. package/lib/cjs/src/modules/solana/alt-resolution/data/HttpAltResolutionDataSource.js +1 -1
  5. package/lib/cjs/src/modules/solana/alt-resolution/data/HttpAltResolutionDataSource.js.map +2 -2
  6. package/lib/cjs/src/modules/solana/alt-resolution/domain/AltResolutionContextLoader.js +1 -1
  7. package/lib/cjs/src/modules/solana/alt-resolution/domain/AltResolutionContextLoader.js.map +2 -2
  8. package/lib/cjs/src/modules/solana/model/SolanaPayloads.js +1 -1
  9. package/lib/cjs/src/modules/solana/model/SolanaPayloads.js.map +1 -1
  10. package/lib/cjs/src/modules/solana/token-account-state/data/HttpTokenAccountStateDataSource.js +1 -1
  11. package/lib/cjs/src/modules/solana/token-account-state/data/HttpTokenAccountStateDataSource.js.map +2 -2
  12. package/lib/cjs/src/modules/solana/token-account-state/data/TokenAccountStateDataSource.js +1 -1
  13. package/lib/cjs/src/modules/solana/token-account-state/data/TokenAccountStateDataSource.js.map +1 -1
  14. package/lib/cjs/src/modules/solana/token-account-state/domain/TokenAccountStateContextLoader.js +1 -1
  15. package/lib/cjs/src/modules/solana/token-account-state/domain/TokenAccountStateContextLoader.js.map +2 -2
  16. package/lib/cjs/src/modules/solana/token-info/data/HttpTokenInfoDataSource.js +1 -1
  17. package/lib/cjs/src/modules/solana/token-info/data/HttpTokenInfoDataSource.js.map +3 -3
  18. package/lib/cjs/src/modules/solana/token-info/data/HttpTokenInfoDataSource.test.js +1 -1
  19. package/lib/cjs/src/modules/solana/token-info/data/HttpTokenInfoDataSource.test.js.map +2 -2
  20. package/lib/esm/package.json +1 -1
  21. package/lib/esm/src/modules/solana/alt-resolution/data/HttpAltResolutionDataSource.js +1 -1
  22. package/lib/esm/src/modules/solana/alt-resolution/data/HttpAltResolutionDataSource.js.map +2 -2
  23. package/lib/esm/src/modules/solana/alt-resolution/domain/AltResolutionContextLoader.js +1 -1
  24. package/lib/esm/src/modules/solana/alt-resolution/domain/AltResolutionContextLoader.js.map +2 -2
  25. package/lib/esm/src/modules/solana/model/SolanaPayloads.js.map +1 -1
  26. package/lib/esm/src/modules/solana/token-account-state/data/HttpTokenAccountStateDataSource.js +1 -1
  27. package/lib/esm/src/modules/solana/token-account-state/data/HttpTokenAccountStateDataSource.js.map +2 -2
  28. package/lib/esm/src/modules/solana/token-account-state/domain/TokenAccountStateContextLoader.js +1 -1
  29. package/lib/esm/src/modules/solana/token-account-state/domain/TokenAccountStateContextLoader.js.map +3 -3
  30. package/lib/esm/src/modules/solana/token-info/data/HttpTokenInfoDataSource.js +1 -1
  31. package/lib/esm/src/modules/solana/token-info/data/HttpTokenInfoDataSource.js.map +3 -3
  32. package/lib/esm/src/modules/solana/token-info/data/HttpTokenInfoDataSource.test.js +1 -1
  33. package/lib/esm/src/modules/solana/token-info/data/HttpTokenInfoDataSource.test.js.map +2 -2
  34. package/lib/types/src/modules/solana/alt-resolution/data/AltResolutionDataSource.d.ts +1 -0
  35. package/lib/types/src/modules/solana/alt-resolution/data/AltResolutionDataSource.d.ts.map +1 -1
  36. package/lib/types/src/modules/solana/alt-resolution/data/HttpAltResolutionDataSource.d.ts.map +1 -1
  37. package/lib/types/src/modules/solana/alt-resolution/domain/AltResolutionContextLoader.d.ts.map +1 -1
  38. package/lib/types/src/modules/solana/model/SolanaPayloads.d.ts +2 -0
  39. package/lib/types/src/modules/solana/model/SolanaPayloads.d.ts.map +1 -1
  40. package/lib/types/src/modules/solana/token-account-state/data/HttpTokenAccountStateDataSource.d.ts.map +1 -1
  41. package/lib/types/src/modules/solana/token-account-state/data/TokenAccountStateDataSource.d.ts +1 -0
  42. package/lib/types/src/modules/solana/token-account-state/data/TokenAccountStateDataSource.d.ts.map +1 -1
  43. package/lib/types/src/modules/solana/token-account-state/domain/TokenAccountStateContextLoader.d.ts.map +1 -1
  44. package/lib/types/src/modules/solana/token-info/data/HttpTokenInfoDataSource.d.ts.map +1 -1
  45. package/lib/types/tsconfig.prod.tsbuildinfo +1 -1
  46. package/package.json +4 -4
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../src/modules/solana/token-account-state/data/HttpTokenAccountStateDataSource.ts"],
4
- "sourcesContent": ["import { DmkNetworkClient } from \"@ledgerhq/device-management-kit\";\nimport { inject, injectable } from \"inversify\";\nimport { Either, Left, Right } from \"purify-ts\";\n\nimport { configTypes } from \"@/config/di/configTypes\";\nimport { type ContextModuleServiceConfig } from \"@/config/model/ContextModuleConfig\";\nimport { networkTypes } from \"@/shared/network/di/networkTypes\";\nimport { HexStringUtils } from \"@/shared/utils/HexStringUtils\";\nimport { signedDescriptorDtoCodec } from \"@/shared/utils/signedDescriptorDto\";\n\nimport {\n type GetTokenAccountStateParams,\n type TokenAccountStateDataSource,\n type TokenAccountStateResult,\n} from \"./TokenAccountStateDataSource\";\n\ntype TokenAccountStateResponseDto = {\n descriptorType?: string;\n descriptorVersion?: number;\n tokenAccount?: string;\n mint?: string;\n owner?: string;\n preBalance?: number;\n signedDescriptor: string;\n keyId: string;\n keyUsage: string;\n};\n\n@injectable()\nexport class HttpTokenAccountStateDataSource\n implements TokenAccountStateDataSource\n{\n constructor(\n @inject(configTypes.Config)\n private readonly config: ContextModuleServiceConfig,\n @inject(networkTypes.NetworkClient)\n private readonly http: DmkNetworkClient,\n ) {}\n\n public async getTokenAccountState({\n tokenAccount,\n challenge,\n }: GetTokenAccountStateParams): Promise<\n Either<Error, TokenAccountStateResult>\n > {\n let dto: TokenAccountStateResponseDto;\n try {\n dto = (await this.http.get(\n `${this.config.metadataServiceDomain.url}/v2/solana/token-account-state/${tokenAccount}`,\n { params: { challenge } },\n )) as TokenAccountStateResponseDto;\n } catch (error) {\n const reason = error instanceof Error ? error.message : String(error);\n return Left(\n new Error(\n `[ContextModule] HttpTokenAccountStateDataSource: Failed to fetch token account state: ${reason}`,\n ),\n );\n }\n\n return signedDescriptorDtoCodec\n .decode(dto)\n .caseOf<Either<Error, TokenAccountStateResult>>({\n Left: (error) =>\n Left(\n new Error(\n `[ContextModule] HttpTokenAccountStateDataSource: malformed response for ${tokenAccount}: ${error}`,\n ),\n ),\n Right: (validated) => {\n let descriptor: Uint8Array;\n try {\n descriptor = HexStringUtils.hexToBytes(validated.signedDescriptor);\n } catch (error) {\n return Left(\n new Error(\n `[ContextModule] HttpTokenAccountStateDataSource: invalid hex in signedDescriptor for ${tokenAccount}: ${(error as Error).message}`,\n ),\n );\n }\n\n return Right({\n tokenAccount,\n descriptor,\n keyId: validated.keyId,\n keyUsage: validated.keyUsage,\n });\n },\n });\n }\n}\n"],
5
- "mappings": "iOACA,OAAS,UAAAA,EAAQ,cAAAC,MAAkB,YACnC,OAAiB,QAAAC,EAAM,SAAAC,MAAa,YAEpC,OAAS,eAAAC,MAAmB,0BAE5B,OAAS,gBAAAC,MAAoB,mCAC7B,OAAS,kBAAAC,MAAsB,gCAC/B,OAAS,4BAAAC,MAAgC,qCAqBlC,IAAMC,EAAN,KAEP,CACE,YAEmBC,EAEAC,EACjB,CAHiB,YAAAD,EAEA,UAAAC,CAChB,CAEH,MAAa,qBAAqB,CAChC,aAAAC,EACA,UAAAC,CACF,EAEE,CACA,IAAIC,EACJ,GAAI,CACFA,EAAO,MAAM,KAAK,KAAK,IACrB,GAAG,KAAK,OAAO,sBAAsB,GAAG,kCAAkCF,CAAY,GACtF,CAAE,OAAQ,CAAE,UAAAC,CAAU,CAAE,CAC1B,CACF,OAASE,EAAO,CACd,MAAMC,EAASD,aAAiB,MAAQA,EAAM,QAAU,OAAOA,CAAK,EACpE,OAAOE,EACL,IAAI,MACF,yFAAyFD,CAAM,EACjG,CACF,CACF,CAEA,OAAOE,EACJ,OAAOJ,CAAG,EACV,OAA+C,CAC9C,KAAOC,GACLE,EACE,IAAI,MACF,2EAA2EL,CAAY,KAAKG,CAAK,EACnG,CACF,EACF,MAAQI,GAAc,CACpB,IAAIC,EACJ,GAAI,CACFA,EAAaC,EAAe,WAAWF,EAAU,gBAAgB,CACnE,OAASJ,EAAO,CACd,OAAOE,EACL,IAAI,MACF,wFAAwFL,CAAY,KAAMG,EAAgB,OAAO,EACnI,CACF,CACF,CAEA,OAAOO,EAAM,CACX,aAAAV,EACA,WAAAQ,EACA,MAAOD,EAAU,MACjB,SAAUA,EAAU,QACtB,CAAC,CACH,CACF,CAAC,CACL,CACF,EA7DaV,EAANc,EAAA,CADNC,EAAW,EAKPC,EAAA,EAAAC,EAAOC,EAAY,MAAM,GAEzBF,EAAA,EAAAC,EAAOE,EAAa,aAAa,IANzBnB",
4
+ "sourcesContent": ["import { DmkNetworkClient } from \"@ledgerhq/device-management-kit\";\nimport { inject, injectable } from \"inversify\";\nimport { Either, Left, Right } from \"purify-ts\";\n\nimport { configTypes } from \"@/config/di/configTypes\";\nimport { type ContextModuleServiceConfig } from \"@/config/model/ContextModuleConfig\";\nimport { networkTypes } from \"@/shared/network/di/networkTypes\";\nimport { HexStringUtils } from \"@/shared/utils/HexStringUtils\";\nimport { signedDescriptorDtoCodec } from \"@/shared/utils/signedDescriptorDto\";\n\nimport {\n type GetTokenAccountStateParams,\n type TokenAccountStateDataSource,\n type TokenAccountStateResult,\n} from \"./TokenAccountStateDataSource\";\n\ntype TokenAccountStateResponseDto = {\n descriptorType?: string;\n descriptorVersion?: number;\n tokenAccount?: string;\n mint?: string;\n owner?: string;\n preBalance?: number;\n signedDescriptor: string;\n keyId: string;\n keyUsage: string;\n};\n\n@injectable()\nexport class HttpTokenAccountStateDataSource\n implements TokenAccountStateDataSource\n{\n constructor(\n @inject(configTypes.Config)\n private readonly config: ContextModuleServiceConfig,\n @inject(networkTypes.NetworkClient)\n private readonly http: DmkNetworkClient,\n ) {}\n\n public async getTokenAccountState({\n tokenAccount,\n challenge,\n }: GetTokenAccountStateParams): Promise<\n Either<Error, TokenAccountStateResult>\n > {\n let dto: TokenAccountStateResponseDto;\n try {\n dto = (await this.http.get(\n `${this.config.metadataServiceDomain.url}/v2/solana/token-account-state/${tokenAccount}`,\n { params: { challenge } },\n )) as TokenAccountStateResponseDto;\n } catch (error) {\n const reason = error instanceof Error ? error.message : String(error);\n return Left(\n new Error(\n `[ContextModule] HttpTokenAccountStateDataSource: Failed to fetch token account state: ${reason}`,\n ),\n );\n }\n\n return signedDescriptorDtoCodec\n .decode(dto)\n .caseOf<Either<Error, TokenAccountStateResult>>({\n Left: (error) =>\n Left(\n new Error(\n `[ContextModule] HttpTokenAccountStateDataSource: malformed response for ${tokenAccount}: ${error}`,\n ),\n ),\n Right: (validated) => {\n let descriptor: Uint8Array;\n try {\n descriptor = HexStringUtils.hexToBytes(validated.signedDescriptor);\n } catch (error) {\n return Left(\n new Error(\n `[ContextModule] HttpTokenAccountStateDataSource: invalid hex in signedDescriptor for ${tokenAccount}: ${(error as Error).message}`,\n ),\n );\n }\n\n return Right({\n tokenAccount,\n descriptor,\n mint: dto.mint,\n keyId: validated.keyId,\n keyUsage: validated.keyUsage,\n });\n },\n });\n }\n}\n"],
5
+ "mappings": "iOACA,OAAS,UAAAA,EAAQ,cAAAC,MAAkB,YACnC,OAAiB,QAAAC,EAAM,SAAAC,MAAa,YAEpC,OAAS,eAAAC,MAAmB,0BAE5B,OAAS,gBAAAC,MAAoB,mCAC7B,OAAS,kBAAAC,MAAsB,gCAC/B,OAAS,4BAAAC,MAAgC,qCAqBlC,IAAMC,EAAN,KAEP,CACE,YAEmBC,EAEAC,EACjB,CAHiB,YAAAD,EAEA,UAAAC,CAChB,CAEH,MAAa,qBAAqB,CAChC,aAAAC,EACA,UAAAC,CACF,EAEE,CACA,IAAIC,EACJ,GAAI,CACFA,EAAO,MAAM,KAAK,KAAK,IACrB,GAAG,KAAK,OAAO,sBAAsB,GAAG,kCAAkCF,CAAY,GACtF,CAAE,OAAQ,CAAE,UAAAC,CAAU,CAAE,CAC1B,CACF,OAASE,EAAO,CACd,MAAMC,EAASD,aAAiB,MAAQA,EAAM,QAAU,OAAOA,CAAK,EACpE,OAAOE,EACL,IAAI,MACF,yFAAyFD,CAAM,EACjG,CACF,CACF,CAEA,OAAOE,EACJ,OAAOJ,CAAG,EACV,OAA+C,CAC9C,KAAOC,GACLE,EACE,IAAI,MACF,2EAA2EL,CAAY,KAAKG,CAAK,EACnG,CACF,EACF,MAAQI,GAAc,CACpB,IAAIC,EACJ,GAAI,CACFA,EAAaC,EAAe,WAAWF,EAAU,gBAAgB,CACnE,OAASJ,EAAO,CACd,OAAOE,EACL,IAAI,MACF,wFAAwFL,CAAY,KAAMG,EAAgB,OAAO,EACnI,CACF,CACF,CAEA,OAAOO,EAAM,CACX,aAAAV,EACA,WAAAQ,EACA,KAAMN,EAAI,KACV,MAAOK,EAAU,MACjB,SAAUA,EAAU,QACtB,CAAC,CACH,CACF,CAAC,CACL,CACF,EA9DaV,EAANc,EAAA,CADNC,EAAW,EAKPC,EAAA,EAAAC,EAAOC,EAAY,MAAM,GAEzBF,EAAA,EAAAC,EAAOE,EAAa,aAAa,IANzBnB",
6
6
  "names": ["inject", "injectable", "Left", "Right", "configTypes", "networkTypes", "HexStringUtils", "signedDescriptorDtoCodec", "HttpTokenAccountStateDataSource", "config", "http", "tokenAccount", "challenge", "dto", "error", "reason", "Left", "signedDescriptorDtoCodec", "validated", "descriptor", "HexStringUtils", "Right", "__decorateClass", "injectable", "__decorateParam", "inject", "configTypes", "networkTypes"]
7
7
  }
@@ -1,2 +1,2 @@
1
- var g=Object.defineProperty;var C=Object.getOwnPropertyDescriptor;var u=(r,o,t,e)=>{for(var n=e>1?void 0:e?C(o,t):o,i=r.length-1,l;i>=0;i--)(l=r[i])&&(n=(e?l(o,t,n):l(n))||n);return e&&n&&g(o,t,n),n},a=(r,o)=>(t,e)=>o(t,e,r);import{inject as d,injectable as T}from"inversify";import{array as m,Codec as s,string as p}from"purify-ts";import{configTypes as f}from"../../../../config/di/configTypes";import{pkiTypes as A}from"../../../../modules/multichain/pki/di/pkiTypes";import{tokenAccountStateTypes as y}from"../../../../modules/solana/token-account-state/di/tokenAccountStateTypes";import{ClearSignContextType as S}from"../../../../shared/model/ClearSignContext";import{loadChallengeBoundContexts as k}from"../../../../shared/utils/challengeBoundLoader";import{deviceModelIdCodec as h}from"../../../../shared/utils/deviceModelIdCodec";const v=[S.SOLANA_TOKEN_ACCOUNT_STATE],x=s.interface({tokenAccount:p,challenge:p}),L=s.interface({deviceModelId:h,requests:m(x)});let c=class{constructor(o,t,e){this.dataSource=o;this.certificateLoader=t;this.logger=e("TokenAccountStateContextLoader")}logger;canHandle(o,t){return v.every(e=>t.includes(e))?L.decode(o).caseOf({Left:()=>!1,Right:({requests:e})=>e.length>0&&e.every(n=>n.tokenAccount.length>0&&n.challenge.length>0)}):!1}async load(o){return k({requests:o.requests,deviceModelId:o.deviceModelId,certificateLoader:this.certificateLoader,logger:this.logger,label:"TOKEN_ACCOUNT_STATE",fetch:t=>this.dataSource.getTokenAccountState(t),toContext:(t,e)=>{const n={descriptor:t.descriptor};return{type:S.SOLANA_TOKEN_ACCOUNT_STATE,payload:n,certificate:e}},describe:t=>({tokenAccount:t.tokenAccount})})}};c=u([T(),a(0,d(y.TokenAccountStateDataSource)),a(1,d(A.PkiCertificateLoader)),a(2,d(f.ContextModuleLoggerFactory))],c);export{c as TokenAccountStateContextLoader};
1
+ var g=Object.defineProperty;var m=Object.getOwnPropertyDescriptor;var p=(r,o,e,t)=>{for(var n=t>1?void 0:t?m(o,e):o,i=r.length-1,l;i>=0;i--)(l=r[i])&&(n=(t?l(o,e,n):l(n))||n);return t&&n&&g(o,e,n),n},c=(r,o)=>(e,t)=>o(e,t,r);import{inject as d,injectable as C}from"inversify";import{array as T,Codec as s,string as u}from"purify-ts";import{configTypes as f}from"../../../../config/di/configTypes";import{pkiTypes as A}from"../../../../modules/multichain/pki/di/pkiTypes";import{tokenAccountStateTypes as y}from"../../../../modules/solana/token-account-state/di/tokenAccountStateTypes";import{ClearSignContextType as S}from"../../../../shared/model/ClearSignContext";import{loadChallengeBoundContexts as k}from"../../../../shared/utils/challengeBoundLoader";import{deviceModelIdCodec as h}from"../../../../shared/utils/deviceModelIdCodec";const x=[S.SOLANA_TOKEN_ACCOUNT_STATE],v=s.interface({tokenAccount:u,challenge:u}),L=s.interface({deviceModelId:h,requests:T(v)});let a=class{constructor(o,e,t){this.dataSource=o;this.certificateLoader=e;this.logger=t("TokenAccountStateContextLoader")}logger;canHandle(o,e){return x.every(t=>e.includes(t))?L.decode(o).caseOf({Left:()=>!1,Right:({requests:t})=>t.length>0&&t.every(n=>n.tokenAccount.length>0&&n.challenge.length>0)}):!1}async load(o){return k({requests:o.requests,deviceModelId:o.deviceModelId,certificateLoader:this.certificateLoader,logger:this.logger,label:"TOKEN_ACCOUNT_STATE",fetch:e=>this.dataSource.getTokenAccountState(e),toContext:(e,t)=>{const n={descriptor:e.descriptor,mint:e.mint};return{type:S.SOLANA_TOKEN_ACCOUNT_STATE,payload:n,certificate:t}},describe:e=>({tokenAccount:e.tokenAccount})})}};a=p([C(),c(0,d(y.TokenAccountStateDataSource)),c(1,d(A.PkiCertificateLoader)),c(2,d(f.ContextModuleLoggerFactory))],a);export{a as TokenAccountStateContextLoader};
2
2
  //# sourceMappingURL=TokenAccountStateContextLoader.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../src/modules/solana/token-account-state/domain/TokenAccountStateContextLoader.ts"],
4
- "sourcesContent": ["import {\n type DeviceModelId,\n type LoggerPublisherService,\n} from \"@ledgerhq/device-management-kit\";\nimport { inject, injectable } from \"inversify\";\nimport { array, Codec, string } from \"purify-ts\";\n\nimport { configTypes } from \"@/config/di/configTypes\";\nimport { pkiTypes } from \"@/modules/multichain/pki/di/pkiTypes\";\nimport { type PkiCertificateLoader } from \"@/modules/multichain/pki/domain/PkiCertificateLoader\";\nimport { type SolanaTokenAccountStatePayload } from \"@/modules/solana/model/SolanaPayloads\";\nimport { type TokenAccountStateDataSource } from \"@/modules/solana/token-account-state/data/TokenAccountStateDataSource\";\nimport { tokenAccountStateTypes } from \"@/modules/solana/token-account-state/di/tokenAccountStateTypes\";\nimport { type ContextLoader } from \"@/shared/domain/ContextLoader\";\nimport {\n type ClearSignContext,\n ClearSignContextType,\n} from \"@/shared/model/ClearSignContext\";\nimport { loadChallengeBoundContexts } from \"@/shared/utils/challengeBoundLoader\";\nimport { deviceModelIdCodec } from \"@/shared/utils/deviceModelIdCodec\";\n\nconst SUPPORTED_TYPES: ClearSignContextType[] = [\n ClearSignContextType.SOLANA_TOKEN_ACCOUNT_STATE,\n];\n\n/**\n * One token-account-state request. The caller must obtain a fresh challenge\n * immediately before fetching each entry.\n */\nexport type SolanaTokenAccountStateRequest = {\n tokenAccount: string;\n challenge: string;\n};\n\nexport type SolanaTokenAccountStateContextInput = {\n deviceModelId: DeviceModelId;\n requests: SolanaTokenAccountStateRequest[];\n};\n\nconst tokenAccountStateRequestCodec = Codec.interface({\n tokenAccount: string,\n challenge: string,\n});\n\nconst solanaTokenAccountStateInputCodec = Codec.interface({\n deviceModelId: deviceModelIdCodec,\n requests: array(tokenAccountStateRequestCodec),\n});\n\n@injectable()\nexport class TokenAccountStateContextLoader\n implements ContextLoader<SolanaTokenAccountStateContextInput>\n{\n private readonly logger: LoggerPublisherService;\n\n constructor(\n @inject(tokenAccountStateTypes.TokenAccountStateDataSource)\n private readonly dataSource: TokenAccountStateDataSource,\n @inject(pkiTypes.PkiCertificateLoader)\n private readonly certificateLoader: PkiCertificateLoader,\n @inject(configTypes.ContextModuleLoggerFactory)\n loggerFactory: (tag: string) => LoggerPublisherService,\n ) {\n this.logger = loggerFactory(\"TokenAccountStateContextLoader\");\n }\n\n public canHandle(\n input: unknown,\n expectedTypes: ClearSignContextType[],\n ): input is SolanaTokenAccountStateContextInput {\n if (!SUPPORTED_TYPES.every((t) => expectedTypes.includes(t))) return false;\n return solanaTokenAccountStateInputCodec.decode(input).caseOf({\n Left: () => false,\n Right: ({ requests }) =>\n requests.length > 0 &&\n requests.every(\n (r) => r.tokenAccount.length > 0 && r.challenge.length > 0,\n ),\n });\n }\n\n public async load(\n input: SolanaTokenAccountStateContextInput,\n ): Promise<ClearSignContext[]> {\n return loadChallengeBoundContexts({\n requests: input.requests,\n deviceModelId: input.deviceModelId,\n certificateLoader: this.certificateLoader,\n logger: this.logger,\n label: \"TOKEN_ACCOUNT_STATE\",\n fetch: (request) => this.dataSource.getTokenAccountState(request),\n toContext: (value, certificate) => {\n const payload: SolanaTokenAccountStatePayload = {\n descriptor: value.descriptor,\n };\n return {\n type: ClearSignContextType.SOLANA_TOKEN_ACCOUNT_STATE,\n payload,\n certificate,\n };\n },\n describe: (request) => ({ tokenAccount: request.tokenAccount }),\n });\n }\n}\n"],
5
- "mappings": "iOAIA,OAAS,UAAAA,EAAQ,cAAAC,MAAkB,YACnC,OAAS,SAAAC,EAAO,SAAAC,EAAO,UAAAC,MAAc,YAErC,OAAS,eAAAC,MAAmB,0BAC5B,OAAS,YAAAC,MAAgB,uCAIzB,OAAS,0BAAAC,MAA8B,iEAEvC,OAEE,wBAAAC,MACK,kCACP,OAAS,8BAAAC,MAAkC,sCAC3C,OAAS,sBAAAC,MAA0B,oCAEnC,MAAMC,EAA0C,CAC9CC,EAAqB,0BACvB,EAgBMC,EAAgCC,EAAM,UAAU,CACpD,aAAcC,EACd,UAAWA,CACb,CAAC,EAEKC,EAAoCF,EAAM,UAAU,CACxD,cAAeG,EACf,SAAUC,EAAML,CAA6B,CAC/C,CAAC,EAGM,IAAMM,EAAN,KAEP,CAGE,YAEmBC,EAEAC,EAEjBC,EACA,CALiB,gBAAAF,EAEA,uBAAAC,EAIjB,KAAK,OAASC,EAAc,gCAAgC,CAC9D,CAXiB,OAaV,UACLC,EACAC,EAC8C,CAC9C,OAAKb,EAAgB,MAAOc,GAAMD,EAAc,SAASC,CAAC,CAAC,EACpDT,EAAkC,OAAOO,CAAK,EAAE,OAAO,CAC5D,KAAM,IAAM,GACZ,MAAO,CAAC,CAAE,SAAAG,CAAS,IACjBA,EAAS,OAAS,GAClBA,EAAS,MACNC,GAAMA,EAAE,aAAa,OAAS,GAAKA,EAAE,UAAU,OAAS,CAC3D,CACJ,CAAC,EARoE,EASvE,CAEA,MAAa,KACXJ,EAC6B,CAC7B,OAAOK,EAA2B,CAChC,SAAUL,EAAM,SAChB,cAAeA,EAAM,cACrB,kBAAmB,KAAK,kBACxB,OAAQ,KAAK,OACb,MAAO,sBACP,MAAQM,GAAY,KAAK,WAAW,qBAAqBA,CAAO,EAChE,UAAW,CAACC,EAAOC,IAAgB,CACjC,MAAMC,EAA0C,CAC9C,WAAYF,EAAM,UACpB,EACA,MAAO,CACL,KAAMlB,EAAqB,2BAC3B,QAAAoB,EACA,YAAAD,CACF,CACF,EACA,SAAWF,IAAa,CAAE,aAAcA,EAAQ,YAAa,EAC/D,CAAC,CACH,CACF,EAtDaV,EAANc,EAAA,CADNC,EAAW,EAOPC,EAAA,EAAAC,EAAOC,EAAuB,2BAA2B,GAEzDF,EAAA,EAAAC,EAAOE,EAAS,oBAAoB,GAEpCH,EAAA,EAAAC,EAAOG,EAAY,0BAA0B,IAVrCpB",
6
- "names": ["inject", "injectable", "array", "Codec", "string", "configTypes", "pkiTypes", "tokenAccountStateTypes", "ClearSignContextType", "loadChallengeBoundContexts", "deviceModelIdCodec", "SUPPORTED_TYPES", "ClearSignContextType", "tokenAccountStateRequestCodec", "Codec", "string", "solanaTokenAccountStateInputCodec", "deviceModelIdCodec", "array", "TokenAccountStateContextLoader", "dataSource", "certificateLoader", "loggerFactory", "input", "expectedTypes", "t", "requests", "r", "loadChallengeBoundContexts", "request", "value", "certificate", "payload", "__decorateClass", "injectable", "__decorateParam", "inject", "tokenAccountStateTypes", "pkiTypes", "configTypes"]
4
+ "sourcesContent": ["import {\n type DeviceModelId,\n type LoggerPublisherService,\n} from \"@ledgerhq/device-management-kit\";\nimport { inject, injectable } from \"inversify\";\nimport { array, Codec, string } from \"purify-ts\";\n\nimport { configTypes } from \"@/config/di/configTypes\";\nimport { pkiTypes } from \"@/modules/multichain/pki/di/pkiTypes\";\nimport { type PkiCertificateLoader } from \"@/modules/multichain/pki/domain/PkiCertificateLoader\";\nimport { type SolanaTokenAccountStatePayload } from \"@/modules/solana/model/SolanaPayloads\";\nimport { type TokenAccountStateDataSource } from \"@/modules/solana/token-account-state/data/TokenAccountStateDataSource\";\nimport { tokenAccountStateTypes } from \"@/modules/solana/token-account-state/di/tokenAccountStateTypes\";\nimport { type ContextLoader } from \"@/shared/domain/ContextLoader\";\nimport {\n type ClearSignContext,\n ClearSignContextType,\n} from \"@/shared/model/ClearSignContext\";\nimport { loadChallengeBoundContexts } from \"@/shared/utils/challengeBoundLoader\";\nimport { deviceModelIdCodec } from \"@/shared/utils/deviceModelIdCodec\";\n\nconst SUPPORTED_TYPES: ClearSignContextType[] = [\n ClearSignContextType.SOLANA_TOKEN_ACCOUNT_STATE,\n];\n\n/**\n * One token-account-state request. The caller must obtain a fresh challenge\n * immediately before fetching each entry.\n */\nexport type SolanaTokenAccountStateRequest = {\n tokenAccount: string;\n challenge: string;\n};\n\nexport type SolanaTokenAccountStateContextInput = {\n deviceModelId: DeviceModelId;\n requests: SolanaTokenAccountStateRequest[];\n};\n\nconst tokenAccountStateRequestCodec = Codec.interface({\n tokenAccount: string,\n challenge: string,\n});\n\nconst solanaTokenAccountStateInputCodec = Codec.interface({\n deviceModelId: deviceModelIdCodec,\n requests: array(tokenAccountStateRequestCodec),\n});\n\n@injectable()\nexport class TokenAccountStateContextLoader\n implements ContextLoader<SolanaTokenAccountStateContextInput>\n{\n private readonly logger: LoggerPublisherService;\n\n constructor(\n @inject(tokenAccountStateTypes.TokenAccountStateDataSource)\n private readonly dataSource: TokenAccountStateDataSource,\n @inject(pkiTypes.PkiCertificateLoader)\n private readonly certificateLoader: PkiCertificateLoader,\n @inject(configTypes.ContextModuleLoggerFactory)\n loggerFactory: (tag: string) => LoggerPublisherService,\n ) {\n this.logger = loggerFactory(\"TokenAccountStateContextLoader\");\n }\n\n public canHandle(\n input: unknown,\n expectedTypes: ClearSignContextType[],\n ): input is SolanaTokenAccountStateContextInput {\n if (!SUPPORTED_TYPES.every((t) => expectedTypes.includes(t))) return false;\n return solanaTokenAccountStateInputCodec.decode(input).caseOf({\n Left: () => false,\n Right: ({ requests }) =>\n requests.length > 0 &&\n requests.every(\n (r) => r.tokenAccount.length > 0 && r.challenge.length > 0,\n ),\n });\n }\n\n public async load(\n input: SolanaTokenAccountStateContextInput,\n ): Promise<ClearSignContext[]> {\n return loadChallengeBoundContexts({\n requests: input.requests,\n deviceModelId: input.deviceModelId,\n certificateLoader: this.certificateLoader,\n logger: this.logger,\n label: \"TOKEN_ACCOUNT_STATE\",\n fetch: (request) => this.dataSource.getTokenAccountState(request),\n toContext: (value, certificate) => {\n const payload: SolanaTokenAccountStatePayload = {\n descriptor: value.descriptor,\n mint: value.mint,\n };\n return {\n type: ClearSignContextType.SOLANA_TOKEN_ACCOUNT_STATE,\n payload,\n certificate,\n };\n },\n describe: (request) => ({ tokenAccount: request.tokenAccount }),\n });\n }\n}\n"],
5
+ "mappings": "iOAIA,OAAS,UAAAA,EAAQ,cAAAC,MAAkB,YACnC,OAAS,SAAAC,EAAO,SAAAC,EAAO,UAAAC,MAAc,YAErC,OAAS,eAAAC,MAAmB,0BAC5B,OAAS,YAAAC,MAAgB,uCAIzB,OAAS,0BAAAC,MAA8B,iEAEvC,OAEE,wBAAAC,MACK,kCACP,OAAS,8BAAAC,MAAkC,sCAC3C,OAAS,sBAAAC,MAA0B,oCAEnC,MAAMC,EAA0C,CAC9CC,EAAqB,0BACvB,EAgBMC,EAAgCC,EAAM,UAAU,CACpD,aAAcC,EACd,UAAWA,CACb,CAAC,EAEKC,EAAoCF,EAAM,UAAU,CACxD,cAAeG,EACf,SAAUC,EAAML,CAA6B,CAC/C,CAAC,EAGM,IAAMM,EAAN,KAEP,CAGE,YAEmBC,EAEAC,EAEjBC,EACA,CALiB,gBAAAF,EAEA,uBAAAC,EAIjB,KAAK,OAASC,EAAc,gCAAgC,CAC9D,CAXiB,OAaV,UACLC,EACAC,EAC8C,CAC9C,OAAKb,EAAgB,MAAO,GAAMa,EAAc,SAAS,CAAC,CAAC,EACpDR,EAAkC,OAAOO,CAAK,EAAE,OAAO,CAC5D,KAAM,IAAM,GACZ,MAAO,CAAC,CAAE,SAAAE,CAAS,IACjBA,EAAS,OAAS,GAClBA,EAAS,MACNC,GAAMA,EAAE,aAAa,OAAS,GAAKA,EAAE,UAAU,OAAS,CAC3D,CACJ,CAAC,EARoE,EASvE,CAEA,MAAa,KACXH,EAC6B,CAC7B,OAAOI,EAA2B,CAChC,SAAUJ,EAAM,SAChB,cAAeA,EAAM,cACrB,kBAAmB,KAAK,kBACxB,OAAQ,KAAK,OACb,MAAO,sBACP,MAAQK,GAAY,KAAK,WAAW,qBAAqBA,CAAO,EAChE,UAAW,CAACC,EAAOC,IAAgB,CACjC,MAAMC,EAA0C,CAC9C,WAAYF,EAAM,WAClB,KAAMA,EAAM,IACd,EACA,MAAO,CACL,KAAMjB,EAAqB,2BAC3B,QAAAmB,EACA,YAAAD,CACF,CACF,EACA,SAAWF,IAAa,CAAE,aAAcA,EAAQ,YAAa,EAC/D,CAAC,CACH,CACF,EAvDaT,EAANa,EAAA,CADNC,EAAW,EAOPC,EAAA,EAAAC,EAAOC,EAAuB,2BAA2B,GAEzDF,EAAA,EAAAC,EAAOE,EAAS,oBAAoB,GAEpCH,EAAA,EAAAC,EAAOG,EAAY,0BAA0B,IAVrCnB",
6
+ "names": ["inject", "injectable", "array", "Codec", "string", "configTypes", "pkiTypes", "tokenAccountStateTypes", "ClearSignContextType", "loadChallengeBoundContexts", "deviceModelIdCodec", "SUPPORTED_TYPES", "ClearSignContextType", "tokenAccountStateRequestCodec", "Codec", "string", "solanaTokenAccountStateInputCodec", "deviceModelIdCodec", "array", "TokenAccountStateContextLoader", "dataSource", "certificateLoader", "loggerFactory", "input", "expectedTypes", "requests", "r", "loadChallengeBoundContexts", "request", "value", "certificate", "payload", "__decorateClass", "injectable", "__decorateParam", "inject", "tokenAccountStateTypes", "pkiTypes", "configTypes"]
7
7
  }
@@ -1,2 +1,2 @@
1
- var k=Object.defineProperty;var g=Object.getOwnPropertyDescriptor;var l=(n,o,r,t)=>{for(var e=t>1?void 0:t?g(o,r):o,i=n.length-1,c;i>=0;i--)(c=n[i])&&(e=(t?c(o,r,e):c(e))||e);return t&&e&&k(o,r,e),e},s=(n,o)=>(r,t)=>o(r,t,n);import{inject as m,injectable as h}from"inversify";import{Codec as p,Left as f,optional as u,Right as C,string as d}from"purify-ts";import{configTypes as y}from"../../../../config/di/configTypes";import{networkTypes as w}from"../../../../shared/network/di/networkTypes";const E=p.interface({prod:u(d),test:u(d)}),T=p.interface({descriptor:p.interface({data:d,signatures:E})});let a=class{constructor(o,r){this.config=o;this.http=r}async getTokenInfo({mint:o,network:r}){let t;try{t=await this.http.get(`${this.config.cal.url}/tokens`,{params:{contract_address:o,network:r,output:"contract_address,network,descriptor",ref:`branch:${this.config.cal.branch}`}})}catch(e){const i=e instanceof Error?e.message:String(e);return f(new Error(`[ContextModule] HttpTokenInfoDataSource: Failed to fetch token info: ${i}`))}return!Array.isArray(t)||t.length===0?f(new Error(`[ContextModule] HttpTokenInfoDataSource: no token info for mint ${o}`)):T.decode(t[0]).caseOf({Left:e=>f(new Error(`[ContextModule] HttpTokenInfoDataSource: malformed descriptor for mint ${o}: ${e}`)),Right:e=>C({mint:o,descriptor:e.descriptor})})}};a=l([h(),s(0,m(y.Config)),s(1,m(w.NetworkClient))],a);export{a as HttpTokenInfoDataSource};
1
+ var k=Object.defineProperty;var g=Object.getOwnPropertyDescriptor;var p=(n,o,r,t)=>{for(var e=t>1?void 0:t?g(o,r):o,a=n.length-1,s;a>=0;a--)(s=n[a])&&(e=(t?s(o,r,e):s(e))||e);return t&&e&&k(o,r,e),e},c=(n,o)=>(r,t)=>o(r,t,n);import{inject as m,injectable as h}from"inversify";import{Codec as l,Left as f,optional as u,Right as y,string as d}from"purify-ts";import{configTypes as C}from"../../../../config/di/configTypes";import{networkTypes as E}from"../../../../shared/network/di/networkTypes";const T=l.interface({prod:u(d),test:u(d)}),w={"solana-mainnet":"solana","solana-devnet":"solana-devnet"},I=l.interface({descriptor:l.interface({data:d,signatures:T})});let i=class{constructor(o,r){this.config=o;this.http=r}async getTokenInfo({mint:o,network:r}){let t;try{t=await this.http.get(`${this.config.cal.url}/tokens`,{params:{contract_address:o,network:w[r]??r,output:"contract_address,network,descriptor",ref:`branch:${this.config.cal.branch}`}})}catch(e){const a=e instanceof Error?e.message:String(e);return f(new Error(`[ContextModule] HttpTokenInfoDataSource: Failed to fetch token info: ${a}`))}return!Array.isArray(t)||t.length===0?f(new Error(`[ContextModule] HttpTokenInfoDataSource: no token info for mint ${o}`)):I.decode(t[0]).caseOf({Left:e=>f(new Error(`[ContextModule] HttpTokenInfoDataSource: malformed descriptor for mint ${o}: ${e}`)),Right:e=>y({mint:o,descriptor:e.descriptor})})}};i=p([h(),c(0,m(C.Config)),c(1,m(E.NetworkClient))],i);export{i as HttpTokenInfoDataSource};
2
2
  //# sourceMappingURL=HttpTokenInfoDataSource.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../src/modules/solana/token-info/data/HttpTokenInfoDataSource.ts"],
4
- "sourcesContent": ["import { DmkNetworkClient } from \"@ledgerhq/device-management-kit\";\nimport { inject, injectable } from \"inversify\";\nimport { Codec, Either, Left, optional, Right, string } from \"purify-ts\";\n\nimport { configTypes } from \"@/config/di/configTypes\";\nimport { type ContextModuleServiceConfig } from \"@/config/model/ContextModuleConfig\";\nimport { networkTypes } from \"@/shared/network/di/networkTypes\";\n\nimport {\n type GetTokenInfoParams,\n type TokenInfoDataSource,\n type TokenInfoResult,\n} from \"./TokenInfoDataSource\";\n\nconst calSignaturesCodec = Codec.interface({\n prod: optional(string),\n test: optional(string),\n});\n\nconst tokenInfoResponseEntryCodec = Codec.interface({\n descriptor: Codec.interface({\n data: string,\n signatures: calSignaturesCodec,\n }),\n});\n\n@injectable()\nexport class HttpTokenInfoDataSource implements TokenInfoDataSource {\n constructor(\n @inject(configTypes.Config)\n private readonly config: ContextModuleServiceConfig,\n @inject(networkTypes.NetworkClient)\n private readonly http: DmkNetworkClient,\n ) {}\n\n public async getTokenInfo({\n mint,\n network,\n }: GetTokenInfoParams): Promise<Either<Error, TokenInfoResult>> {\n let data: unknown;\n try {\n data = await this.http.get(`${this.config.cal.url}/tokens`, {\n params: {\n contract_address: mint,\n network,\n output: \"contract_address,network,descriptor\",\n ref: `branch:${this.config.cal.branch}`,\n },\n });\n } catch (error) {\n const reason = error instanceof Error ? error.message : String(error);\n return Left(\n new Error(\n `[ContextModule] HttpTokenInfoDataSource: Failed to fetch token info: ${reason}`,\n ),\n );\n }\n\n if (!Array.isArray(data) || data.length === 0) {\n return Left(\n new Error(\n `[ContextModule] HttpTokenInfoDataSource: no token info for mint ${mint}`,\n ),\n );\n }\n\n return tokenInfoResponseEntryCodec\n .decode(data[0])\n .caseOf<Either<Error, TokenInfoResult>>({\n Left: (error) =>\n Left(\n new Error(\n `[ContextModule] HttpTokenInfoDataSource: malformed descriptor for mint ${mint}: ${error}`,\n ),\n ),\n Right: (entry) =>\n Right({\n mint,\n descriptor: entry.descriptor,\n }),\n });\n }\n}\n"],
5
- "mappings": "iOACA,OAAS,UAAAA,EAAQ,cAAAC,MAAkB,YACnC,OAAS,SAAAC,EAAe,QAAAC,EAAM,YAAAC,EAAU,SAAAC,EAAO,UAAAC,MAAc,YAE7D,OAAS,eAAAC,MAAmB,0BAE5B,OAAS,gBAAAC,MAAoB,mCAQ7B,MAAMC,EAAqBC,EAAM,UAAU,CACzC,KAAMC,EAASC,CAAM,EACrB,KAAMD,EAASC,CAAM,CACvB,CAAC,EAEKC,EAA8BH,EAAM,UAAU,CAClD,WAAYA,EAAM,UAAU,CAC1B,KAAME,EACN,WAAYH,CACd,CAAC,CACH,CAAC,EAGM,IAAMK,EAAN,KAA6D,CAClE,YAEmBC,EAEAC,EACjB,CAHiB,YAAAD,EAEA,UAAAC,CAChB,CAEH,MAAa,aAAa,CACxB,KAAAC,EACA,QAAAC,CACF,EAAgE,CAC9D,IAAIC,EACJ,GAAI,CACFA,EAAO,MAAM,KAAK,KAAK,IAAI,GAAG,KAAK,OAAO,IAAI,GAAG,UAAW,CAC1D,OAAQ,CACN,iBAAkBF,EAClB,QAAAC,EACA,OAAQ,sCACR,IAAK,UAAU,KAAK,OAAO,IAAI,MAAM,EACvC,CACF,CAAC,CACH,OAASE,EAAO,CACd,MAAMC,EAASD,aAAiB,MAAQA,EAAM,QAAU,OAAOA,CAAK,EACpE,OAAOE,EACL,IAAI,MACF,wEAAwED,CAAM,EAChF,CACF,CACF,CAEA,MAAI,CAAC,MAAM,QAAQF,CAAI,GAAKA,EAAK,SAAW,EACnCG,EACL,IAAI,MACF,mEAAmEL,CAAI,EACzE,CACF,EAGKJ,EACJ,OAAOM,EAAK,CAAC,CAAC,EACd,OAAuC,CACtC,KAAOC,GACLE,EACE,IAAI,MACF,0EAA0EL,CAAI,KAAKG,CAAK,EAC1F,CACF,EACF,MAAQG,GACNC,EAAM,CACJ,KAAAP,EACA,WAAYM,EAAM,UACpB,CAAC,CACL,CAAC,CACL,CACF,EAvDaT,EAANW,EAAA,CADNC,EAAW,EAGPC,EAAA,EAAAC,EAAOC,EAAY,MAAM,GAEzBF,EAAA,EAAAC,EAAOE,EAAa,aAAa,IAJzBhB",
6
- "names": ["inject", "injectable", "Codec", "Left", "optional", "Right", "string", "configTypes", "networkTypes", "calSignaturesCodec", "Codec", "optional", "string", "tokenInfoResponseEntryCodec", "HttpTokenInfoDataSource", "config", "http", "mint", "network", "data", "error", "reason", "Left", "entry", "Right", "__decorateClass", "injectable", "__decorateParam", "inject", "configTypes", "networkTypes"]
4
+ "sourcesContent": ["import { DmkNetworkClient } from \"@ledgerhq/device-management-kit\";\nimport { inject, injectable } from \"inversify\";\nimport { Codec, Either, Left, optional, Right, string } from \"purify-ts\";\n\nimport { configTypes } from \"@/config/di/configTypes\";\nimport { type ContextModuleServiceConfig } from \"@/config/model/ContextModuleConfig\";\nimport { networkTypes } from \"@/shared/network/di/networkTypes\";\n\nimport {\n type GetTokenInfoParams,\n type TokenInfoDataSource,\n type TokenInfoResult,\n} from \"./TokenInfoDataSource\";\n\nconst calSignaturesCodec = Codec.interface({\n prod: optional(string),\n test: optional(string),\n});\n\n// The CAL /tokens endpoint uses short chain slugs (e.g. \"solana\") while the\n// SDK identifies networks with qualified names (e.g. \"solana-mainnet\").\nconst NETWORK_SLUG: Readonly<Record<string, string>> = {\n \"solana-mainnet\": \"solana\",\n \"solana-devnet\": \"solana-devnet\",\n};\n\nconst tokenInfoResponseEntryCodec = Codec.interface({\n descriptor: Codec.interface({\n data: string,\n signatures: calSignaturesCodec,\n }),\n});\n\n@injectable()\nexport class HttpTokenInfoDataSource implements TokenInfoDataSource {\n constructor(\n @inject(configTypes.Config)\n private readonly config: ContextModuleServiceConfig,\n @inject(networkTypes.NetworkClient)\n private readonly http: DmkNetworkClient,\n ) {}\n\n public async getTokenInfo({\n mint,\n network,\n }: GetTokenInfoParams): Promise<Either<Error, TokenInfoResult>> {\n let data: unknown;\n try {\n data = await this.http.get(`${this.config.cal.url}/tokens`, {\n params: {\n contract_address: mint,\n network: NETWORK_SLUG[network] ?? network,\n output: \"contract_address,network,descriptor\",\n ref: `branch:${this.config.cal.branch}`,\n },\n });\n } catch (error) {\n const reason = error instanceof Error ? error.message : String(error);\n return Left(\n new Error(\n `[ContextModule] HttpTokenInfoDataSource: Failed to fetch token info: ${reason}`,\n ),\n );\n }\n\n if (!Array.isArray(data) || data.length === 0) {\n return Left(\n new Error(\n `[ContextModule] HttpTokenInfoDataSource: no token info for mint ${mint}`,\n ),\n );\n }\n\n return tokenInfoResponseEntryCodec\n .decode(data[0])\n .caseOf<Either<Error, TokenInfoResult>>({\n Left: (error) =>\n Left(\n new Error(\n `[ContextModule] HttpTokenInfoDataSource: malformed descriptor for mint ${mint}: ${error}`,\n ),\n ),\n Right: (entry) =>\n Right({\n mint,\n descriptor: entry.descriptor,\n }),\n });\n }\n}\n"],
5
+ "mappings": "iOACA,OAAS,UAAAA,EAAQ,cAAAC,MAAkB,YACnC,OAAS,SAAAC,EAAe,QAAAC,EAAM,YAAAC,EAAU,SAAAC,EAAO,UAAAC,MAAc,YAE7D,OAAS,eAAAC,MAAmB,0BAE5B,OAAS,gBAAAC,MAAoB,mCAQ7B,MAAMC,EAAqBC,EAAM,UAAU,CACzC,KAAMC,EAASC,CAAM,EACrB,KAAMD,EAASC,CAAM,CACvB,CAAC,EAIKC,EAAiD,CACrD,iBAAkB,SAClB,gBAAiB,eACnB,EAEMC,EAA8BJ,EAAM,UAAU,CAClD,WAAYA,EAAM,UAAU,CAC1B,KAAME,EACN,WAAYH,CACd,CAAC,CACH,CAAC,EAGM,IAAMM,EAAN,KAA6D,CAClE,YAEmBC,EAEAC,EACjB,CAHiB,YAAAD,EAEA,UAAAC,CAChB,CAEH,MAAa,aAAa,CACxB,KAAAC,EACA,QAAAC,CACF,EAAgE,CAC9D,IAAIC,EACJ,GAAI,CACFA,EAAO,MAAM,KAAK,KAAK,IAAI,GAAG,KAAK,OAAO,IAAI,GAAG,UAAW,CAC1D,OAAQ,CACN,iBAAkBF,EAClB,QAASL,EAAaM,CAAO,GAAKA,EAClC,OAAQ,sCACR,IAAK,UAAU,KAAK,OAAO,IAAI,MAAM,EACvC,CACF,CAAC,CACH,OAASE,EAAO,CACd,MAAMC,EAASD,aAAiB,MAAQA,EAAM,QAAU,OAAOA,CAAK,EACpE,OAAOE,EACL,IAAI,MACF,wEAAwED,CAAM,EAChF,CACF,CACF,CAEA,MAAI,CAAC,MAAM,QAAQF,CAAI,GAAKA,EAAK,SAAW,EACnCG,EACL,IAAI,MACF,mEAAmEL,CAAI,EACzE,CACF,EAGKJ,EACJ,OAAOM,EAAK,CAAC,CAAC,EACd,OAAuC,CACtC,KAAOC,GACLE,EACE,IAAI,MACF,0EAA0EL,CAAI,KAAKG,CAAK,EAC1F,CACF,EACF,MAAQG,GACNC,EAAM,CACJ,KAAAP,EACA,WAAYM,EAAM,UACpB,CAAC,CACL,CAAC,CACL,CACF,EAvDaT,EAANW,EAAA,CADNC,EAAW,EAGPC,EAAA,EAAAC,EAAOC,EAAY,MAAM,GAEzBF,EAAA,EAAAC,EAAOE,EAAa,aAAa,IAJzBhB",
6
+ "names": ["inject", "injectable", "Codec", "Left", "optional", "Right", "string", "configTypes", "networkTypes", "calSignaturesCodec", "Codec", "optional", "string", "NETWORK_SLUG", "tokenInfoResponseEntryCodec", "HttpTokenInfoDataSource", "config", "http", "mint", "network", "data", "error", "reason", "Left", "entry", "Right", "__decorateClass", "injectable", "__decorateParam", "inject", "configTypes", "networkTypes"]
7
7
  }
@@ -1,2 +1,2 @@
1
- import{Left as c,Right as l}from"purify-ts";import{beforeEach as p,describe as f,expect as a,it as s,vi as i}from"vitest";import{HttpTokenInfoDataSource as u}from"./HttpTokenInfoDataSource";f("HttpTokenInfoDataSource",()=>{let r,e;const t="EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",n="solana-mainnet",d={cal:{url:"https://global.api.prd.ledger.com/cal/v1",mode:"prod",branch:"main"}};p(()=>{i.clearAllMocks(),e={get:i.fn()},r=new u(d,e)}),s("calls /tokens with contract_address, network and ref params",async()=>{e.get.mockResolvedValue([{contract_address:t,network:"solana-mainnet",descriptor:{data:"01020304",signatures:{prod:"p",test:"t"}}}]),await r.getTokenInfo({mint:t,network:n}),a(e.get).toHaveBeenCalledWith("https://global.api.prd.ledger.com/cal/v1/tokens",{params:{contract_address:t,network:n,output:"contract_address,network,descriptor",ref:"branch:main"}})}),s("returns Right on success",async()=>{e.get.mockResolvedValue([{contract_address:t,descriptor:{data:"01020304",signatures:{prod:"psig",test:"tsig"}}}]);const o=await r.getTokenInfo({mint:t,network:n});a(o).toEqual(l({mint:t,descriptor:{data:"01020304",signatures:{prod:"psig",test:"tsig"}}}))}),s("returns Left when response is empty",async()=>{e.get.mockResolvedValue([]);const o=await r.getTokenInfo({mint:t,network:n});a(o).toEqual(c(new Error(`[ContextModule] HttpTokenInfoDataSource: no token info for mint ${t}`)))}),s("returns Left when descriptor is malformed",async()=>{e.get.mockResolvedValue([{contract_address:t}]);const o=await r.getTokenInfo({mint:t,network:n});a(o.isLeft()).toBe(!0),a(o.extract().message).toMatch(new RegExp(String.raw`\[ContextModule\] HttpTokenInfoDataSource: malformed descriptor for mint ${t}:`))}),s("returns Left when HTTP client throws",async()=>{e.get.mockRejectedValue(new Error("net"));const o=await r.getTokenInfo({mint:t,network:n});a(o).toEqual(c(new Error("[ContextModule] HttpTokenInfoDataSource: Failed to fetch token info: net")))})});
1
+ import{Left as c,Right as l}from"purify-ts";import{beforeEach as p,describe as f,expect as r,it as s,vi as i}from"vitest";import{HttpTokenInfoDataSource as u}from"./HttpTokenInfoDataSource";f("HttpTokenInfoDataSource",()=>{let n,e;const t="EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",a="solana-mainnet",d={cal:{url:"https://global.api.prd.ledger.com/cal/v1",mode:"prod",branch:"main"}};p(()=>{i.clearAllMocks(),e={get:i.fn()},n=new u(d,e)}),s("calls /tokens with contract_address, network and ref params",async()=>{e.get.mockResolvedValue([{contract_address:t,network:"solana-mainnet",descriptor:{data:"01020304",signatures:{prod:"p",test:"t"}}}]),await n.getTokenInfo({mint:t,network:a}),r(e.get).toHaveBeenCalledWith("https://global.api.prd.ledger.com/cal/v1/tokens",{params:{contract_address:t,network:"solana",output:"contract_address,network,descriptor",ref:"branch:main"}})}),s("returns Right on success",async()=>{e.get.mockResolvedValue([{contract_address:t,descriptor:{data:"01020304",signatures:{prod:"psig",test:"tsig"}}}]);const o=await n.getTokenInfo({mint:t,network:a});r(o).toEqual(l({mint:t,descriptor:{data:"01020304",signatures:{prod:"psig",test:"tsig"}}}))}),s("returns Left when response is empty",async()=>{e.get.mockResolvedValue([]);const o=await n.getTokenInfo({mint:t,network:a});r(o).toEqual(c(new Error(`[ContextModule] HttpTokenInfoDataSource: no token info for mint ${t}`)))}),s("returns Left when descriptor is malformed",async()=>{e.get.mockResolvedValue([{contract_address:t}]);const o=await n.getTokenInfo({mint:t,network:a});r(o.isLeft()).toBe(!0),r(o.extract().message).toMatch(new RegExp(String.raw`\[ContextModule\] HttpTokenInfoDataSource: malformed descriptor for mint ${t}:`))}),s("returns Left when HTTP client throws",async()=>{e.get.mockRejectedValue(new Error("net"));const o=await n.getTokenInfo({mint:t,network:a});r(o).toEqual(c(new Error("[ContextModule] HttpTokenInfoDataSource: Failed to fetch token info: net")))})});
2
2
  //# sourceMappingURL=HttpTokenInfoDataSource.test.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../src/modules/solana/token-info/data/HttpTokenInfoDataSource.test.ts"],
4
- "sourcesContent": ["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { type DmkNetworkClient } from \"@ledgerhq/device-management-kit\";\nimport { Left, Right } from \"purify-ts\";\nimport { beforeEach, describe, expect, it, vi } from \"vitest\";\n\nimport { type ContextModuleServiceConfig } from \"@/config/model/ContextModuleConfig\";\n\nimport { HttpTokenInfoDataSource } from \"./HttpTokenInfoDataSource\";\nimport { type TokenInfoDataSource } from \"./TokenInfoDataSource\";\n\ndescribe(\"HttpTokenInfoDataSource\", () => {\n let datasource: TokenInfoDataSource;\n let httpMock: { get: ReturnType<typeof vi.fn> };\n const mint = \"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v\";\n const network = \"solana-mainnet\";\n const config: ContextModuleServiceConfig = {\n cal: {\n url: \"https://global.api.prd.ledger.com/cal/v1\",\n mode: \"prod\",\n branch: \"main\",\n },\n } as ContextModuleServiceConfig;\n\n beforeEach(() => {\n vi.clearAllMocks();\n httpMock = { get: vi.fn() };\n datasource = new HttpTokenInfoDataSource(\n config,\n httpMock as unknown as DmkNetworkClient,\n );\n });\n\n it(\"calls /tokens with contract_address, network and ref params\", async () => {\n httpMock.get.mockResolvedValue([\n {\n contract_address: mint,\n network: \"solana-mainnet\",\n descriptor: { data: \"01020304\", signatures: { prod: \"p\", test: \"t\" } },\n },\n ]);\n\n await datasource.getTokenInfo({ mint, network });\n\n expect(httpMock.get).toHaveBeenCalledWith(\n \"https://global.api.prd.ledger.com/cal/v1/tokens\",\n {\n params: {\n contract_address: mint,\n network,\n output: \"contract_address,network,descriptor\",\n ref: \"branch:main\",\n },\n },\n );\n });\n\n it(\"returns Right on success\", async () => {\n httpMock.get.mockResolvedValue([\n {\n contract_address: mint,\n descriptor: {\n data: \"01020304\",\n signatures: { prod: \"psig\", test: \"tsig\" },\n },\n },\n ]);\n\n const result = await datasource.getTokenInfo({ mint, network });\n\n expect(result).toEqual(\n Right({\n mint,\n descriptor: {\n data: \"01020304\",\n signatures: { prod: \"psig\", test: \"tsig\" },\n },\n }),\n );\n });\n\n it(\"returns Left when response is empty\", async () => {\n httpMock.get.mockResolvedValue([]);\n\n const result = await datasource.getTokenInfo({ mint, network });\n\n expect(result).toEqual(\n Left(\n new Error(\n `[ContextModule] HttpTokenInfoDataSource: no token info for mint ${mint}`,\n ),\n ),\n );\n });\n\n it(\"returns Left when descriptor is malformed\", async () => {\n httpMock.get.mockResolvedValue([{ contract_address: mint } as any]);\n\n const result = await datasource.getTokenInfo({ mint, network });\n\n expect(result.isLeft()).toBe(true);\n expect((result.extract() as Error).message).toMatch(\n new RegExp(\n String.raw`\\[ContextModule\\] HttpTokenInfoDataSource: malformed descriptor for mint ${mint}:`,\n ),\n );\n });\n\n it(\"returns Left when HTTP client throws\", async () => {\n httpMock.get.mockRejectedValue(new Error(\"net\"));\n\n const result = await datasource.getTokenInfo({ mint, network });\n\n expect(result).toEqual(\n Left(\n new Error(\n \"[ContextModule] HttpTokenInfoDataSource: Failed to fetch token info: net\",\n ),\n ),\n );\n });\n});\n"],
5
- "mappings": "AAEA,OAAS,QAAAA,EAAM,SAAAC,MAAa,YAC5B,OAAS,cAAAC,EAAY,YAAAC,EAAU,UAAAC,EAAQ,MAAAC,EAAI,MAAAC,MAAU,SAIrD,OAAS,2BAAAC,MAA+B,4BAGxCJ,EAAS,0BAA2B,IAAM,CACxC,IAAIK,EACAC,EACJ,MAAMC,EAAO,+CACPC,EAAU,iBACVC,EAAqC,CACzC,IAAK,CACH,IAAK,2CACL,KAAM,OACN,OAAQ,MACV,CACF,EAEAV,EAAW,IAAM,CACfI,EAAG,cAAc,EACjBG,EAAW,CAAE,IAAKH,EAAG,GAAG,CAAE,EAC1BE,EAAa,IAAID,EACfK,EACAH,CACF,CACF,CAAC,EAEDJ,EAAG,8DAA+D,SAAY,CAC5EI,EAAS,IAAI,kBAAkB,CAC7B,CACE,iBAAkBC,EAClB,QAAS,iBACT,WAAY,CAAE,KAAM,WAAY,WAAY,CAAE,KAAM,IAAK,KAAM,GAAI,CAAE,CACvE,CACF,CAAC,EAED,MAAMF,EAAW,aAAa,CAAE,KAAAE,EAAM,QAAAC,CAAQ,CAAC,EAE/CP,EAAOK,EAAS,GAAG,EAAE,qBACnB,kDACA,CACE,OAAQ,CACN,iBAAkBC,EAClB,QAAAC,EACA,OAAQ,sCACR,IAAK,aACP,CACF,CACF,CACF,CAAC,EAEDN,EAAG,2BAA4B,SAAY,CACzCI,EAAS,IAAI,kBAAkB,CAC7B,CACE,iBAAkBC,EAClB,WAAY,CACV,KAAM,WACN,WAAY,CAAE,KAAM,OAAQ,KAAM,MAAO,CAC3C,CACF,CACF,CAAC,EAED,MAAMG,EAAS,MAAML,EAAW,aAAa,CAAE,KAAAE,EAAM,QAAAC,CAAQ,CAAC,EAE9DP,EAAOS,CAAM,EAAE,QACbZ,EAAM,CACJ,KAAAS,EACA,WAAY,CACV,KAAM,WACN,WAAY,CAAE,KAAM,OAAQ,KAAM,MAAO,CAC3C,CACF,CAAC,CACH,CACF,CAAC,EAEDL,EAAG,sCAAuC,SAAY,CACpDI,EAAS,IAAI,kBAAkB,CAAC,CAAC,EAEjC,MAAMI,EAAS,MAAML,EAAW,aAAa,CAAE,KAAAE,EAAM,QAAAC,CAAQ,CAAC,EAE9DP,EAAOS,CAAM,EAAE,QACbb,EACE,IAAI,MACF,mEAAmEU,CAAI,EACzE,CACF,CACF,CACF,CAAC,EAEDL,EAAG,4CAA6C,SAAY,CAC1DI,EAAS,IAAI,kBAAkB,CAAC,CAAE,iBAAkBC,CAAK,CAAQ,CAAC,EAElE,MAAMG,EAAS,MAAML,EAAW,aAAa,CAAE,KAAAE,EAAM,QAAAC,CAAQ,CAAC,EAE9DP,EAAOS,EAAO,OAAO,CAAC,EAAE,KAAK,EAAI,EACjCT,EAAQS,EAAO,QAAQ,EAAY,OAAO,EAAE,QAC1C,IAAI,OACF,OAAO,+EAA+EH,CAAI,GAC5F,CACF,CACF,CAAC,EAEDL,EAAG,uCAAwC,SAAY,CACrDI,EAAS,IAAI,kBAAkB,IAAI,MAAM,KAAK,CAAC,EAE/C,MAAMI,EAAS,MAAML,EAAW,aAAa,CAAE,KAAAE,EAAM,QAAAC,CAAQ,CAAC,EAE9DP,EAAOS,CAAM,EAAE,QACbb,EACE,IAAI,MACF,0EACF,CACF,CACF,CACF,CAAC,CACH,CAAC",
4
+ "sourcesContent": ["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { type DmkNetworkClient } from \"@ledgerhq/device-management-kit\";\nimport { Left, Right } from \"purify-ts\";\nimport { beforeEach, describe, expect, it, vi } from \"vitest\";\n\nimport { type ContextModuleServiceConfig } from \"@/config/model/ContextModuleConfig\";\n\nimport { HttpTokenInfoDataSource } from \"./HttpTokenInfoDataSource\";\nimport { type TokenInfoDataSource } from \"./TokenInfoDataSource\";\n\ndescribe(\"HttpTokenInfoDataSource\", () => {\n let datasource: TokenInfoDataSource;\n let httpMock: { get: ReturnType<typeof vi.fn> };\n const mint = \"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v\";\n const network = \"solana-mainnet\";\n const config: ContextModuleServiceConfig = {\n cal: {\n url: \"https://global.api.prd.ledger.com/cal/v1\",\n mode: \"prod\",\n branch: \"main\",\n },\n } as ContextModuleServiceConfig;\n\n beforeEach(() => {\n vi.clearAllMocks();\n httpMock = { get: vi.fn() };\n datasource = new HttpTokenInfoDataSource(\n config,\n httpMock as unknown as DmkNetworkClient,\n );\n });\n\n it(\"calls /tokens with contract_address, network and ref params\", async () => {\n httpMock.get.mockResolvedValue([\n {\n contract_address: mint,\n network: \"solana-mainnet\",\n descriptor: { data: \"01020304\", signatures: { prod: \"p\", test: \"t\" } },\n },\n ]);\n\n await datasource.getTokenInfo({ mint, network });\n\n expect(httpMock.get).toHaveBeenCalledWith(\n \"https://global.api.prd.ledger.com/cal/v1/tokens\",\n {\n params: {\n contract_address: mint,\n network: \"solana\", // \"solana-mainnet\" mapped to the CAL short slug\n output: \"contract_address,network,descriptor\",\n ref: \"branch:main\",\n },\n },\n );\n });\n\n it(\"returns Right on success\", async () => {\n httpMock.get.mockResolvedValue([\n {\n contract_address: mint,\n descriptor: {\n data: \"01020304\",\n signatures: { prod: \"psig\", test: \"tsig\" },\n },\n },\n ]);\n\n const result = await datasource.getTokenInfo({ mint, network });\n\n expect(result).toEqual(\n Right({\n mint,\n descriptor: {\n data: \"01020304\",\n signatures: { prod: \"psig\", test: \"tsig\" },\n },\n }),\n );\n });\n\n it(\"returns Left when response is empty\", async () => {\n httpMock.get.mockResolvedValue([]);\n\n const result = await datasource.getTokenInfo({ mint, network });\n\n expect(result).toEqual(\n Left(\n new Error(\n `[ContextModule] HttpTokenInfoDataSource: no token info for mint ${mint}`,\n ),\n ),\n );\n });\n\n it(\"returns Left when descriptor is malformed\", async () => {\n httpMock.get.mockResolvedValue([{ contract_address: mint } as any]);\n\n const result = await datasource.getTokenInfo({ mint, network });\n\n expect(result.isLeft()).toBe(true);\n expect((result.extract() as Error).message).toMatch(\n new RegExp(\n String.raw`\\[ContextModule\\] HttpTokenInfoDataSource: malformed descriptor for mint ${mint}:`,\n ),\n );\n });\n\n it(\"returns Left when HTTP client throws\", async () => {\n httpMock.get.mockRejectedValue(new Error(\"net\"));\n\n const result = await datasource.getTokenInfo({ mint, network });\n\n expect(result).toEqual(\n Left(\n new Error(\n \"[ContextModule] HttpTokenInfoDataSource: Failed to fetch token info: net\",\n ),\n ),\n );\n });\n});\n"],
5
+ "mappings": "AAEA,OAAS,QAAAA,EAAM,SAAAC,MAAa,YAC5B,OAAS,cAAAC,EAAY,YAAAC,EAAU,UAAAC,EAAQ,MAAAC,EAAI,MAAAC,MAAU,SAIrD,OAAS,2BAAAC,MAA+B,4BAGxCJ,EAAS,0BAA2B,IAAM,CACxC,IAAIK,EACAC,EACJ,MAAMC,EAAO,+CACPC,EAAU,iBACVC,EAAqC,CACzC,IAAK,CACH,IAAK,2CACL,KAAM,OACN,OAAQ,MACV,CACF,EAEAV,EAAW,IAAM,CACfI,EAAG,cAAc,EACjBG,EAAW,CAAE,IAAKH,EAAG,GAAG,CAAE,EAC1BE,EAAa,IAAID,EACfK,EACAH,CACF,CACF,CAAC,EAEDJ,EAAG,8DAA+D,SAAY,CAC5EI,EAAS,IAAI,kBAAkB,CAC7B,CACE,iBAAkBC,EAClB,QAAS,iBACT,WAAY,CAAE,KAAM,WAAY,WAAY,CAAE,KAAM,IAAK,KAAM,GAAI,CAAE,CACvE,CACF,CAAC,EAED,MAAMF,EAAW,aAAa,CAAE,KAAAE,EAAM,QAAAC,CAAQ,CAAC,EAE/CP,EAAOK,EAAS,GAAG,EAAE,qBACnB,kDACA,CACE,OAAQ,CACN,iBAAkBC,EAClB,QAAS,SACT,OAAQ,sCACR,IAAK,aACP,CACF,CACF,CACF,CAAC,EAEDL,EAAG,2BAA4B,SAAY,CACzCI,EAAS,IAAI,kBAAkB,CAC7B,CACE,iBAAkBC,EAClB,WAAY,CACV,KAAM,WACN,WAAY,CAAE,KAAM,OAAQ,KAAM,MAAO,CAC3C,CACF,CACF,CAAC,EAED,MAAMG,EAAS,MAAML,EAAW,aAAa,CAAE,KAAAE,EAAM,QAAAC,CAAQ,CAAC,EAE9DP,EAAOS,CAAM,EAAE,QACbZ,EAAM,CACJ,KAAAS,EACA,WAAY,CACV,KAAM,WACN,WAAY,CAAE,KAAM,OAAQ,KAAM,MAAO,CAC3C,CACF,CAAC,CACH,CACF,CAAC,EAEDL,EAAG,sCAAuC,SAAY,CACpDI,EAAS,IAAI,kBAAkB,CAAC,CAAC,EAEjC,MAAMI,EAAS,MAAML,EAAW,aAAa,CAAE,KAAAE,EAAM,QAAAC,CAAQ,CAAC,EAE9DP,EAAOS,CAAM,EAAE,QACbb,EACE,IAAI,MACF,mEAAmEU,CAAI,EACzE,CACF,CACF,CACF,CAAC,EAEDL,EAAG,4CAA6C,SAAY,CAC1DI,EAAS,IAAI,kBAAkB,CAAC,CAAE,iBAAkBC,CAAK,CAAQ,CAAC,EAElE,MAAMG,EAAS,MAAML,EAAW,aAAa,CAAE,KAAAE,EAAM,QAAAC,CAAQ,CAAC,EAE9DP,EAAOS,EAAO,OAAO,CAAC,EAAE,KAAK,EAAI,EACjCT,EAAQS,EAAO,QAAQ,EAAY,OAAO,EAAE,QAC1C,IAAI,OACF,OAAO,+EAA+EH,CAAI,GAC5F,CACF,CACF,CAAC,EAEDL,EAAG,uCAAwC,SAAY,CACrDI,EAAS,IAAI,kBAAkB,IAAI,MAAM,KAAK,CAAC,EAE/C,MAAMI,EAAS,MAAML,EAAW,aAAa,CAAE,KAAAE,EAAM,QAAAC,CAAQ,CAAC,EAE9DP,EAAOS,CAAM,EAAE,QACbb,EACE,IAAI,MACF,0EACF,CACF,CACF,CACF,CAAC,CACH,CAAC",
6
6
  "names": ["Left", "Right", "beforeEach", "describe", "expect", "it", "vi", "HttpTokenInfoDataSource", "datasource", "httpMock", "mint", "network", "config", "result"]
7
7
  }
@@ -8,6 +8,7 @@ export type AltResolutionResult = {
8
8
  altAddress: string;
9
9
  entryIndex: number;
10
10
  descriptor: Uint8Array;
11
+ resolvedAddress?: string;
11
12
  keyId: string;
12
13
  keyUsage: string;
13
14
  };
@@ -1 +1 @@
1
- {"version":3,"file":"AltResolutionDataSource.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/solana/alt-resolution/data/AltResolutionDataSource.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,WAAW,CAAC;AAExC,MAAM,MAAM,sBAAsB,GAAG;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IAEnB,UAAU,EAAE,UAAU,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,WAAW,uBAAuB;IACtC,gBAAgB,CACd,MAAM,EAAE,sBAAsB,GAC7B,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,mBAAmB,CAAC,CAAC,CAAC;CAChD"}
1
+ {"version":3,"file":"AltResolutionDataSource.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/solana/alt-resolution/data/AltResolutionDataSource.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,WAAW,CAAC;AAExC,MAAM,MAAM,sBAAsB,GAAG;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IAEnB,UAAU,EAAE,UAAU,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,WAAW,uBAAuB;IACtC,gBAAgB,CACd,MAAM,EAAE,sBAAsB,GAC7B,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,mBAAmB,CAAC,CAAC,CAAC;CAChD"}
@@ -1 +1 @@
1
- {"version":3,"file":"HttpAltResolutionDataSource.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/solana/alt-resolution/data/HttpAltResolutionDataSource.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAEnE,OAAO,EAAE,MAAM,EAAe,MAAM,WAAW,CAAC;AAGhD,OAAO,EAAE,KAAK,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAMrF,OAAO,EACL,KAAK,uBAAuB,EAC5B,KAAK,mBAAmB,EACxB,KAAK,sBAAsB,EAC5B,MAAM,2BAA2B,CAAC;AAanC,qBACa,2BAA4B,YAAW,uBAAuB;IAGvE,OAAO,CAAC,QAAQ,CAAC,MAAM;IAEvB,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAFJ,MAAM,EAAE,0BAA0B,EAElC,IAAI,EAAE,gBAAgB;IAG5B,gBAAgB,CAAC,EAC5B,UAAU,EACV,UAAU,EACV,SAAS,GACV,EAAE,sBAAsB,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,mBAAmB,CAAC,CAAC;CAwDxE"}
1
+ {"version":3,"file":"HttpAltResolutionDataSource.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/solana/alt-resolution/data/HttpAltResolutionDataSource.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAEnE,OAAO,EAAE,MAAM,EAAe,MAAM,WAAW,CAAC;AAGhD,OAAO,EAAE,KAAK,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAMrF,OAAO,EACL,KAAK,uBAAuB,EAC5B,KAAK,mBAAmB,EACxB,KAAK,sBAAsB,EAC5B,MAAM,2BAA2B,CAAC;AAanC,qBACa,2BAA4B,YAAW,uBAAuB;IAGvE,OAAO,CAAC,QAAQ,CAAC,MAAM;IAEvB,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAFJ,MAAM,EAAE,0BAA0B,EAElC,IAAI,EAAE,gBAAgB;IAG5B,gBAAgB,CAAC,EAC5B,UAAU,EACV,UAAU,EACV,SAAS,GACV,EAAE,sBAAsB,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,mBAAmB,CAAC,CAAC;CAyDxE"}
@@ -1 +1 @@
1
- {"version":3,"file":"AltResolutionContextLoader.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/solana/alt-resolution/domain/AltResolutionContextLoader.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,sBAAsB,EAC5B,MAAM,iCAAiC,CAAC;AAMzC,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,sDAAsD,CAAC;AACjG,OAAO,EAAE,KAAK,uBAAuB,EAAE,MAAM,8DAA8D,CAAC;AAG5G,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EACL,KAAK,gBAAgB,EACrB,oBAAoB,EACrB,MAAM,iCAAiC,CAAC;AASzC,MAAM,MAAM,0BAA0B,GAAG;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,+BAA+B,GAAG;IAC5C,aAAa,EAAE,aAAa,CAAC;IAC7B,QAAQ,EAAE,0BAA0B,EAAE,CAAC;CACxC,CAAC;AAaF,qBACa,0BACX,YAAW,aAAa,CAAC,+BAA+B,CAAC;IAMvD,OAAO,CAAC,QAAQ,CAAC,UAAU;IAE3B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IANpC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAyB;gBAI7B,UAAU,EAAE,uBAAuB,EAEnC,iBAAiB,EAAE,oBAAoB,EAExD,aAAa,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,sBAAsB;IAKjD,SAAS,CACd,KAAK,EAAE,OAAO,EACd,aAAa,EAAE,oBAAoB,EAAE,GACpC,KAAK,IAAI,+BAA+B;IAY9B,IAAI,CACf,KAAK,EAAE,+BAA+B,GACrC,OAAO,CAAC,gBAAgB,EAAE,CAAC;CAwB/B"}
1
+ {"version":3,"file":"AltResolutionContextLoader.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/solana/alt-resolution/domain/AltResolutionContextLoader.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,sBAAsB,EAC5B,MAAM,iCAAiC,CAAC;AAMzC,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,sDAAsD,CAAC;AACjG,OAAO,EAAE,KAAK,uBAAuB,EAAE,MAAM,8DAA8D,CAAC;AAG5G,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EACL,KAAK,gBAAgB,EACrB,oBAAoB,EACrB,MAAM,iCAAiC,CAAC;AASzC,MAAM,MAAM,0BAA0B,GAAG;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,+BAA+B,GAAG;IAC5C,aAAa,EAAE,aAAa,CAAC;IAC7B,QAAQ,EAAE,0BAA0B,EAAE,CAAC;CACxC,CAAC;AAaF,qBACa,0BACX,YAAW,aAAa,CAAC,+BAA+B,CAAC;IAMvD,OAAO,CAAC,QAAQ,CAAC,UAAU;IAE3B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IANpC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAyB;gBAI7B,UAAU,EAAE,uBAAuB,EAEnC,iBAAiB,EAAE,oBAAoB,EAExD,aAAa,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,sBAAsB;IAKjD,SAAS,CACd,KAAK,EAAE,OAAO,EACd,aAAa,EAAE,oBAAoB,EAAE,GACpC,KAAK,IAAI,+BAA+B;IAY9B,IAAI,CACf,KAAK,EAAE,+BAA+B,GACrC,OAAO,CAAC,gBAAgB,EAAE,CAAC;CAyB/B"}
@@ -143,8 +143,10 @@ export type SolanaTokenInfoPayload = {
143
143
  };
144
144
  export type SolanaTokenAccountStatePayload = {
145
145
  descriptor: Uint8Array;
146
+ mint?: string;
146
147
  };
147
148
  export type SolanaAltResolutionPayload = {
148
149
  descriptor: Uint8Array;
150
+ resolvedAddress?: string;
149
151
  };
150
152
  //# sourceMappingURL=SolanaPayloads.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SolanaPayloads.d.ts","sourceRoot":"","sources":["../../../../../../src/modules/solana/model/SolanaPayloads.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SolanaPayloads.d.ts","sourceRoot":"","sources":["../../../../../../src/modules/solana/model/SolanaPayloads.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"HttpTokenAccountStateDataSource.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/solana/token-account-state/data/HttpTokenAccountStateDataSource.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAEnE,OAAO,EAAE,MAAM,EAAe,MAAM,WAAW,CAAC;AAGhD,OAAO,EAAE,KAAK,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAKrF,OAAO,EACL,KAAK,0BAA0B,EAC/B,KAAK,2BAA2B,EAChC,KAAK,uBAAuB,EAC7B,MAAM,+BAA+B,CAAC;AAcvC,qBACa,+BACX,YAAW,2BAA2B;IAIpC,OAAO,CAAC,QAAQ,CAAC,MAAM;IAEvB,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAFJ,MAAM,EAAE,0BAA0B,EAElC,IAAI,EAAE,gBAAgB;IAG5B,oBAAoB,CAAC,EAChC,YAAY,EACZ,SAAS,GACV,EAAE,0BAA0B,GAAG,OAAO,CACrC,MAAM,CAAC,KAAK,EAAE,uBAAuB,CAAC,CACvC;CA8CF"}
1
+ {"version":3,"file":"HttpTokenAccountStateDataSource.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/solana/token-account-state/data/HttpTokenAccountStateDataSource.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAEnE,OAAO,EAAE,MAAM,EAAe,MAAM,WAAW,CAAC;AAGhD,OAAO,EAAE,KAAK,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAKrF,OAAO,EACL,KAAK,0BAA0B,EAC/B,KAAK,2BAA2B,EAChC,KAAK,uBAAuB,EAC7B,MAAM,+BAA+B,CAAC;AAcvC,qBACa,+BACX,YAAW,2BAA2B;IAIpC,OAAO,CAAC,QAAQ,CAAC,MAAM;IAEvB,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAFJ,MAAM,EAAE,0BAA0B,EAElC,IAAI,EAAE,gBAAgB;IAG5B,oBAAoB,CAAC,EAChC,YAAY,EACZ,SAAS,GACV,EAAE,0BAA0B,GAAG,OAAO,CACrC,MAAM,CAAC,KAAK,EAAE,uBAAuB,CAAC,CACvC;CA+CF"}
@@ -6,6 +6,7 @@ export type GetTokenAccountStateParams = {
6
6
  export type TokenAccountStateResult = {
7
7
  tokenAccount: string;
8
8
  descriptor: Uint8Array;
9
+ mint?: string;
9
10
  keyId: string;
10
11
  keyUsage: string;
11
12
  };
@@ -1 +1 @@
1
- {"version":3,"file":"TokenAccountStateDataSource.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/solana/token-account-state/data/TokenAccountStateDataSource.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,WAAW,CAAC;AAExC,MAAM,MAAM,0BAA0B,GAAG;IACvC,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,YAAY,EAAE,MAAM,CAAC;IAErB,UAAU,EAAE,UAAU,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,WAAW,2BAA2B;IAC1C,oBAAoB,CAClB,MAAM,EAAE,0BAA0B,GACjC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,uBAAuB,CAAC,CAAC,CAAC;CACpD"}
1
+ {"version":3,"file":"TokenAccountStateDataSource.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/solana/token-account-state/data/TokenAccountStateDataSource.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,WAAW,CAAC;AAExC,MAAM,MAAM,0BAA0B,GAAG;IACvC,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,YAAY,EAAE,MAAM,CAAC;IAErB,UAAU,EAAE,UAAU,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,WAAW,2BAA2B;IAC1C,oBAAoB,CAClB,MAAM,EAAE,0BAA0B,GACjC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,uBAAuB,CAAC,CAAC,CAAC;CACpD"}
@@ -1 +1 @@
1
- {"version":3,"file":"TokenAccountStateContextLoader.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/solana/token-account-state/domain/TokenAccountStateContextLoader.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,sBAAsB,EAC5B,MAAM,iCAAiC,CAAC;AAMzC,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,sDAAsD,CAAC;AAEjG,OAAO,EAAE,KAAK,2BAA2B,EAAE,MAAM,uEAAuE,CAAC;AAEzH,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EACL,KAAK,gBAAgB,EACrB,oBAAoB,EACrB,MAAM,iCAAiC,CAAC;AAQzC;;;GAGG;AACH,MAAM,MAAM,8BAA8B,GAAG;IAC3C,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,mCAAmC,GAAG;IAChD,aAAa,EAAE,aAAa,CAAC;IAC7B,QAAQ,EAAE,8BAA8B,EAAE,CAAC;CAC5C,CAAC;AAYF,qBACa,8BACX,YAAW,aAAa,CAAC,mCAAmC,CAAC;IAM3D,OAAO,CAAC,QAAQ,CAAC,UAAU;IAE3B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IANpC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAyB;gBAI7B,UAAU,EAAE,2BAA2B,EAEvC,iBAAiB,EAAE,oBAAoB,EAExD,aAAa,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,sBAAsB;IAKjD,SAAS,CACd,KAAK,EAAE,OAAO,EACd,aAAa,EAAE,oBAAoB,EAAE,GACpC,KAAK,IAAI,mCAAmC;IAYlC,IAAI,CACf,KAAK,EAAE,mCAAmC,GACzC,OAAO,CAAC,gBAAgB,EAAE,CAAC;CAqB/B"}
1
+ {"version":3,"file":"TokenAccountStateContextLoader.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/solana/token-account-state/domain/TokenAccountStateContextLoader.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,sBAAsB,EAC5B,MAAM,iCAAiC,CAAC;AAMzC,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,sDAAsD,CAAC;AAEjG,OAAO,EAAE,KAAK,2BAA2B,EAAE,MAAM,uEAAuE,CAAC;AAEzH,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EACL,KAAK,gBAAgB,EACrB,oBAAoB,EACrB,MAAM,iCAAiC,CAAC;AAQzC;;;GAGG;AACH,MAAM,MAAM,8BAA8B,GAAG;IAC3C,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,mCAAmC,GAAG;IAChD,aAAa,EAAE,aAAa,CAAC;IAC7B,QAAQ,EAAE,8BAA8B,EAAE,CAAC;CAC5C,CAAC;AAYF,qBACa,8BACX,YAAW,aAAa,CAAC,mCAAmC,CAAC;IAM3D,OAAO,CAAC,QAAQ,CAAC,UAAU;IAE3B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IANpC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAyB;gBAI7B,UAAU,EAAE,2BAA2B,EAEvC,iBAAiB,EAAE,oBAAoB,EAExD,aAAa,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,sBAAsB;IAKjD,SAAS,CACd,KAAK,EAAE,OAAO,EACd,aAAa,EAAE,oBAAoB,EAAE,GACpC,KAAK,IAAI,mCAAmC;IAYlC,IAAI,CACf,KAAK,EAAE,mCAAmC,GACzC,OAAO,CAAC,gBAAgB,EAAE,CAAC;CAsB/B"}
@@ -1 +1 @@
1
- {"version":3,"file":"HttpTokenInfoDataSource.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/solana/token-info/data/HttpTokenInfoDataSource.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAEnE,OAAO,EAAS,MAAM,EAAiC,MAAM,WAAW,CAAC;AAGzE,OAAO,EAAE,KAAK,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAGrF,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACrB,MAAM,uBAAuB,CAAC;AAc/B,qBACa,uBAAwB,YAAW,mBAAmB;IAG/D,OAAO,CAAC,QAAQ,CAAC,MAAM;IAEvB,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAFJ,MAAM,EAAE,0BAA0B,EAElC,IAAI,EAAE,gBAAgB;IAG5B,YAAY,CAAC,EACxB,IAAI,EACJ,OAAO,GACR,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;CA4ChE"}
1
+ {"version":3,"file":"HttpTokenInfoDataSource.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/solana/token-info/data/HttpTokenInfoDataSource.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAEnE,OAAO,EAAS,MAAM,EAAiC,MAAM,WAAW,CAAC;AAGzE,OAAO,EAAE,KAAK,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAGrF,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACrB,MAAM,uBAAuB,CAAC;AAqB/B,qBACa,uBAAwB,YAAW,mBAAmB;IAG/D,OAAO,CAAC,QAAQ,CAAC,MAAM;IAEvB,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAFJ,MAAM,EAAE,0BAA0B,EAElC,IAAI,EAAE,gBAAgB;IAG5B,YAAY,CAAC,EACxB,IAAI,EACJ,OAAO,GACR,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;CA4ChE"}