@ledgerhq/context-module 2.5.0 → 2.6.0

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 (143) hide show
  1. package/lib/cjs/package.json +2 -2
  2. package/lib/cjs/src/DefaultContextModule.js +1 -1
  3. package/lib/cjs/src/DefaultContextModule.js.map +3 -3
  4. package/lib/cjs/src/di.js +1 -1
  5. package/lib/cjs/src/di.js.map +3 -3
  6. package/lib/cjs/src/index.js +1 -1
  7. package/lib/cjs/src/index.js.map +2 -2
  8. package/lib/cjs/src/modules/multichain/reporter/model/BlindSigningEvent.js +1 -1
  9. package/lib/cjs/src/modules/multichain/reporter/model/BlindSigningEvent.js.map +2 -2
  10. package/lib/cjs/src/modules/solana/instruction-info/data/HttpInstructionInfoDataSource.test.js +1 -1
  11. package/lib/cjs/src/modules/solana/instruction-info/data/HttpInstructionInfoDataSource.test.js.map +2 -2
  12. package/lib/cjs/src/modules/solana/instruction-info/data/InstructionInfoDto.js +1 -1
  13. package/lib/cjs/src/modules/solana/instruction-info/data/InstructionInfoDto.js.map +3 -3
  14. package/lib/cjs/src/modules/solana/instruction-info/data/InstructionInfoMapper.js +1 -1
  15. package/lib/cjs/src/modules/solana/instruction-info/data/InstructionInfoMapper.js.map +3 -3
  16. package/lib/cjs/src/modules/solana/instruction-info/data/InstructionInfoMapper.test.js +1 -1
  17. package/lib/cjs/src/modules/solana/instruction-info/data/InstructionInfoMapper.test.js.map +2 -2
  18. package/lib/cjs/src/modules/solana/instruction-info/domain/InstructionInfoContextLoader.test.js +1 -1
  19. package/lib/cjs/src/modules/solana/instruction-info/domain/InstructionInfoContextLoader.test.js.map +2 -2
  20. package/lib/cjs/src/modules/solana/model/SolanaClearSignContext.js +1 -1
  21. package/lib/cjs/src/modules/solana/model/SolanaClearSignContext.js.map +2 -2
  22. package/lib/cjs/src/modules/solana/model/SolanaPayloads.js +1 -1
  23. package/lib/cjs/src/modules/solana/model/SolanaPayloads.js.map +2 -2
  24. package/lib/cjs/src/modules/solana/token-account-state/data/HttpTokenAccountStateDataSource.js +1 -1
  25. package/lib/cjs/src/modules/solana/token-account-state/data/HttpTokenAccountStateDataSource.js.map +3 -3
  26. package/lib/cjs/src/modules/solana/token-account-state/data/HttpTokenAccountStateDataSource.test.js +1 -1
  27. package/lib/cjs/src/modules/solana/token-account-state/data/HttpTokenAccountStateDataSource.test.js.map +3 -3
  28. package/lib/cjs/src/modules/tron/model/TronTransactionContext.js +2 -0
  29. package/lib/cjs/src/modules/tron/model/TronTransactionContext.js.map +7 -0
  30. package/lib/cjs/src/modules/tron/token/data/HttpTokenDataSource.js +2 -0
  31. package/lib/cjs/src/modules/tron/token/data/HttpTokenDataSource.js.map +7 -0
  32. package/lib/cjs/src/modules/tron/token/data/HttpTokenDataSource.test.js +2 -0
  33. package/lib/cjs/src/modules/tron/token/data/HttpTokenDataSource.test.js.map +7 -0
  34. package/lib/cjs/src/modules/tron/token/data/TokenDataSource.js +2 -0
  35. package/lib/cjs/src/modules/tron/token/data/TokenDataSource.js.map +7 -0
  36. package/lib/cjs/src/modules/tron/token/di/tokenModuleFactory.js +2 -0
  37. package/lib/cjs/src/modules/tron/token/di/tokenModuleFactory.js.map +7 -0
  38. package/lib/cjs/src/modules/tron/token/di/tokenTypes.js +2 -0
  39. package/lib/cjs/src/modules/tron/token/di/tokenTypes.js.map +7 -0
  40. package/lib/cjs/src/modules/tron/token/domain/TokenContextLoader.js +2 -0
  41. package/lib/cjs/src/modules/tron/token/domain/TokenContextLoader.js.map +7 -0
  42. package/lib/cjs/src/modules/tron/token/domain/TokenContextLoader.test.js +2 -0
  43. package/lib/cjs/src/modules/tron/token/domain/TokenContextLoader.test.js.map +7 -0
  44. package/lib/cjs/src/modules/tron/token/domain/parseTrc10AssetId.js +2 -0
  45. package/lib/cjs/src/modules/tron/token/domain/parseTrc10AssetId.js.map +7 -0
  46. package/lib/cjs/src/modules/tron/token/domain/parseTrc10AssetId.test.js +2 -0
  47. package/lib/cjs/src/modules/tron/token/domain/parseTrc10AssetId.test.js.map +7 -0
  48. package/lib/cjs/src/shared/domain/ContextModuleChainID.js +1 -1
  49. package/lib/cjs/src/shared/domain/ContextModuleChainID.js.map +2 -2
  50. package/lib/cjs/src/shared/model/ClearSignContext.js +1 -1
  51. package/lib/cjs/src/shared/model/ClearSignContext.js.map +2 -2
  52. package/lib/esm/package.json +2 -2
  53. package/lib/esm/src/DefaultContextModule.js +1 -1
  54. package/lib/esm/src/DefaultContextModule.js.map +3 -3
  55. package/lib/esm/src/di.js +1 -1
  56. package/lib/esm/src/di.js.map +3 -3
  57. package/lib/esm/src/index.js +1 -1
  58. package/lib/esm/src/index.js.map +2 -2
  59. package/lib/esm/src/modules/multichain/reporter/model/BlindSigningEvent.js +1 -1
  60. package/lib/esm/src/modules/multichain/reporter/model/BlindSigningEvent.js.map +2 -2
  61. package/lib/esm/src/modules/solana/instruction-info/data/HttpInstructionInfoDataSource.test.js +1 -1
  62. package/lib/esm/src/modules/solana/instruction-info/data/HttpInstructionInfoDataSource.test.js.map +2 -2
  63. package/lib/esm/src/modules/solana/instruction-info/data/InstructionInfoDto.js +1 -1
  64. package/lib/esm/src/modules/solana/instruction-info/data/InstructionInfoDto.js.map +3 -3
  65. package/lib/esm/src/modules/solana/instruction-info/data/InstructionInfoMapper.js +1 -1
  66. package/lib/esm/src/modules/solana/instruction-info/data/InstructionInfoMapper.js.map +3 -3
  67. package/lib/esm/src/modules/solana/instruction-info/data/InstructionInfoMapper.test.js +1 -1
  68. package/lib/esm/src/modules/solana/instruction-info/data/InstructionInfoMapper.test.js.map +3 -3
  69. package/lib/esm/src/modules/solana/instruction-info/domain/InstructionInfoContextLoader.test.js +1 -1
  70. package/lib/esm/src/modules/solana/instruction-info/domain/InstructionInfoContextLoader.test.js.map +2 -2
  71. package/lib/esm/src/modules/solana/model/SolanaClearSignContext.js +1 -1
  72. package/lib/esm/src/modules/solana/model/SolanaClearSignContext.js.map +2 -2
  73. package/lib/esm/src/modules/solana/model/SolanaPayloads.js.map +2 -2
  74. package/lib/esm/src/modules/solana/token-account-state/data/HttpTokenAccountStateDataSource.js +1 -1
  75. package/lib/esm/src/modules/solana/token-account-state/data/HttpTokenAccountStateDataSource.js.map +3 -3
  76. package/lib/esm/src/modules/solana/token-account-state/data/HttpTokenAccountStateDataSource.test.js +1 -1
  77. package/lib/esm/src/modules/solana/token-account-state/data/HttpTokenAccountStateDataSource.test.js.map +3 -3
  78. package/lib/esm/src/modules/tron/model/TronTransactionContext.js +1 -0
  79. package/lib/esm/src/modules/tron/model/TronTransactionContext.js.map +7 -0
  80. package/lib/esm/src/modules/tron/token/data/HttpTokenDataSource.js +2 -0
  81. package/lib/esm/src/modules/tron/token/data/HttpTokenDataSource.js.map +7 -0
  82. package/lib/esm/src/modules/tron/token/data/HttpTokenDataSource.test.js +2 -0
  83. package/lib/esm/src/modules/tron/token/data/HttpTokenDataSource.test.js.map +7 -0
  84. package/lib/esm/src/modules/tron/token/data/TokenDataSource.js +2 -0
  85. package/lib/esm/src/modules/tron/token/data/TokenDataSource.js.map +7 -0
  86. package/lib/esm/src/modules/tron/token/di/tokenModuleFactory.js +2 -0
  87. package/lib/esm/src/modules/tron/token/di/tokenModuleFactory.js.map +7 -0
  88. package/lib/esm/src/modules/tron/token/di/tokenTypes.js +2 -0
  89. package/lib/esm/src/modules/tron/token/di/tokenTypes.js.map +7 -0
  90. package/lib/esm/src/modules/tron/token/domain/TokenContextLoader.js +2 -0
  91. package/lib/esm/src/modules/tron/token/domain/TokenContextLoader.js.map +7 -0
  92. package/lib/esm/src/modules/tron/token/domain/TokenContextLoader.test.js +2 -0
  93. package/lib/esm/src/modules/tron/token/domain/TokenContextLoader.test.js.map +7 -0
  94. package/lib/esm/src/modules/tron/token/domain/parseTrc10AssetId.js +2 -0
  95. package/lib/esm/src/modules/tron/token/domain/parseTrc10AssetId.js.map +7 -0
  96. package/lib/esm/src/modules/tron/token/domain/parseTrc10AssetId.test.js +2 -0
  97. package/lib/esm/src/modules/tron/token/domain/parseTrc10AssetId.test.js.map +7 -0
  98. package/lib/esm/src/shared/domain/ContextModuleChainID.js +1 -1
  99. package/lib/esm/src/shared/domain/ContextModuleChainID.js.map +2 -2
  100. package/lib/esm/src/shared/model/ClearSignContext.js +1 -1
  101. package/lib/esm/src/shared/model/ClearSignContext.js.map +2 -2
  102. package/lib/types/src/DefaultContextModule.d.ts.map +1 -1
  103. package/lib/types/src/di.d.ts.map +1 -1
  104. package/lib/types/src/index.d.ts +1 -0
  105. package/lib/types/src/index.d.ts.map +1 -1
  106. package/lib/types/src/modules/multichain/reporter/model/BlindSigningEvent.d.ts +1 -0
  107. package/lib/types/src/modules/multichain/reporter/model/BlindSigningEvent.d.ts.map +1 -1
  108. package/lib/types/src/modules/solana/instruction-info/data/InstructionInfoDto.d.ts +46 -2
  109. package/lib/types/src/modules/solana/instruction-info/data/InstructionInfoDto.d.ts.map +1 -1
  110. package/lib/types/src/modules/solana/instruction-info/data/InstructionInfoMapper.d.ts +19 -2
  111. package/lib/types/src/modules/solana/instruction-info/data/InstructionInfoMapper.d.ts.map +1 -1
  112. package/lib/types/src/modules/solana/model/SolanaClearSignContext.d.ts +1 -1
  113. package/lib/types/src/modules/solana/model/SolanaClearSignContext.d.ts.map +1 -1
  114. package/lib/types/src/modules/solana/model/SolanaPayloads.d.ts +54 -0
  115. package/lib/types/src/modules/solana/model/SolanaPayloads.d.ts.map +1 -1
  116. package/lib/types/src/modules/solana/token-account-state/data/HttpTokenAccountStateDataSource.d.ts +3 -2
  117. package/lib/types/src/modules/solana/token-account-state/data/HttpTokenAccountStateDataSource.d.ts.map +1 -1
  118. package/lib/types/src/modules/tron/model/TronTransactionContext.d.ts +5 -0
  119. package/lib/types/src/modules/tron/model/TronTransactionContext.d.ts.map +1 -0
  120. package/lib/types/src/modules/tron/token/data/HttpTokenDataSource.d.ts +17 -0
  121. package/lib/types/src/modules/tron/token/data/HttpTokenDataSource.d.ts.map +1 -0
  122. package/lib/types/src/modules/tron/token/data/HttpTokenDataSource.test.d.ts +2 -0
  123. package/lib/types/src/modules/tron/token/data/HttpTokenDataSource.test.d.ts.map +1 -0
  124. package/lib/types/src/modules/tron/token/data/TokenDataSource.d.ts +20 -0
  125. package/lib/types/src/modules/tron/token/data/TokenDataSource.d.ts.map +1 -0
  126. package/lib/types/src/modules/tron/token/di/tokenModuleFactory.d.ts +3 -0
  127. package/lib/types/src/modules/tron/token/di/tokenModuleFactory.d.ts.map +1 -0
  128. package/lib/types/src/modules/tron/token/di/tokenTypes.d.ts +5 -0
  129. package/lib/types/src/modules/tron/token/di/tokenTypes.d.ts.map +1 -0
  130. package/lib/types/src/modules/tron/token/domain/TokenContextLoader.d.ts +16 -0
  131. package/lib/types/src/modules/tron/token/domain/TokenContextLoader.d.ts.map +1 -0
  132. package/lib/types/src/modules/tron/token/domain/TokenContextLoader.test.d.ts +2 -0
  133. package/lib/types/src/modules/tron/token/domain/TokenContextLoader.test.d.ts.map +1 -0
  134. package/lib/types/src/modules/tron/token/domain/parseTrc10AssetId.d.ts +16 -0
  135. package/lib/types/src/modules/tron/token/domain/parseTrc10AssetId.d.ts.map +1 -0
  136. package/lib/types/src/modules/tron/token/domain/parseTrc10AssetId.test.d.ts +2 -0
  137. package/lib/types/src/modules/tron/token/domain/parseTrc10AssetId.test.d.ts.map +1 -0
  138. package/lib/types/src/shared/domain/ContextModuleChainID.d.ts +2 -1
  139. package/lib/types/src/shared/domain/ContextModuleChainID.d.ts.map +1 -1
  140. package/lib/types/src/shared/model/ClearSignContext.d.ts +2 -1
  141. package/lib/types/src/shared/model/ClearSignContext.d.ts.map +1 -1
  142. package/lib/types/tsconfig.prod.tsbuildinfo +1 -1
  143. package/package.json +5 -5
@@ -35,7 +35,7 @@
35
35
  "license": "Apache-2.0",
36
36
  "name": "@ledgerhq/context-module",
37
37
  "peerDependencies": {
38
- "@ledgerhq/device-management-kit": "^1.8.0"
38
+ "@ledgerhq/device-management-kit": "workspace:^"
39
39
  },
40
40
  "private": false,
41
41
  "repository": {
@@ -58,5 +58,5 @@
58
58
  "watch:builds": "pnpm ldmk-tool watch --entryPoints index.ts,src/**/*.ts --tsconfig tsconfig.prod.json",
59
59
  "watch:types": "concurrently \"tsc --watch -p tsconfig.prod.json\" \"tsc-alias --watch -p tsconfig.prod.json\""
60
60
  },
61
- "version": "2.5.0"
61
+ "version": "2.6.0"
62
62
  }
@@ -1,2 +1,2 @@
1
- "use strict";var l=Object.defineProperty;var M=Object.getOwnPropertyDescriptor;var I=Object.getOwnPropertyNames;var b=Object.prototype.hasOwnProperty;var N=(r,e)=>{for(var t in e)l(r,t,{get:e[t],enumerable:!0})},O=(r,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of I(e))!b.call(r,o)&&o!==t&&l(r,o,{get:()=>e[o],enumerable:!(n=M(e,o))||n.enumerable});return r};var A=r=>O(l({},"__esModule",{value:!0}),r);var j={};N(j,{DefaultContextModule:()=>$});module.exports=A(j);var u=require("./di"),f=require("./modules/concordium/account-ownership/di/accountOwnershipTypes"),L=require("./modules/ethereum/calldata/di/calldataTypes"),y=require("./modules/ethereum/dynamic-network/di/dynamicNetworkTypes"),h=require("./modules/ethereum/external-plugin/di/externalPluginTypes"),m=require("./modules/ethereum/gated-signing/di/gatedSigningTypes"),C=require("./modules/ethereum/nft/di/nftTypes"),_=require("./modules/ethereum/proxy/di/proxyTypes"),T=require("./modules/ethereum/safe/di/safeTypes"),c=require("./modules/ethereum/token/di/tokenTypes"),g=require("./modules/ethereum/trusted-name/di/trustedNameTypes"),S=require("./modules/ethereum/typed-data/di/typedDataTypes"),x=require("./modules/multichain/reporter/di/reporterTypes"),s=require("./modules/multichain/transaction-check/di/transactionCheckTypes"),R=require("./modules/solana/alt-resolution/di/altResolutionTypes"),D=require("./modules/solana/enum-variant/di/enumVariantTypes"),k=require("./modules/solana/instruction-info/di/instructionInfoTypes"),v=require("./modules/solana/lifi/di/lifiTypes"),F=require("./modules/solana/owner-info/di/ownerInfoTypes"),w=require("./modules/solana/token/di/tokenTypes"),P=require("./modules/solana/token-account-state/di/tokenAccountStateTypes"),B=require("./modules/solana/token-info/di/tokenInfoTypes"),E=require("./modules/solana/trusted-name/di/trustedNameTypes"),i=require("./shared/domain/ContextModuleChainID"),a=require("./shared/model/ClearSignContext");class ${_container;_config;_loaders;_typedDataLoader;_fieldLoaders;_blindSigningReporter;_signReporter;constructor(e){this._config=e,this._container=(0,u.makeContainer)({config:e}),this._loaders=e.defaultLoaders?this._getDefaultLoaders():[],this._loaders.push(...e.customLoaders),this._fieldLoaders=e.defaultFieldLoaders?this._getDefaultFieldLoaders():[],this._fieldLoaders.push(...e.customFieldLoaders),this._typedDataLoader=e.customTypedDataLoader??this._getDefaultTypedDataLoader(),this._blindSigningReporter=e.customBlindSigningReporter??this._getBlindSigningReporter(),this._signReporter=null}_getDefaultFieldLoaders(){return this._config.chain!==i.ContextModuleChainID.Ethereum?[]:[this._container.get(C.nftTypes.NftContextFieldLoader),this._container.get(c.tokenTypes.TokenContextFieldLoader),this._container.get(g.trustedNameTypes.TrustedNameContextFieldLoader),this._container.get(_.proxyTypes.ProxyContextFieldLoader)]}_getDefaultLoaders(){const{chain:e}=this._config;switch(e){case i.ContextModuleChainID.Ethereum:return[this._container.get(h.externalPluginTypes.ExternalPluginContextLoader),this._container.get(g.trustedNameTypes.TrustedNameContextLoader),this._container.get(C.nftTypes.NftContextLoader),this._container.get(c.tokenTypes.TokenContextLoader),this._container.get(L.calldataTypes.CalldataContextLoader),this._container.get(y.dynamicNetworkTypes.DynamicNetworkContextLoader),this._container.get(T.safeTypes.SafeAddressLoader),this._container.get(m.gatedSigningTypes.GatedSigningContextLoader),this._container.get(m.gatedSigningTypes.GatedSigningTypedDataContextLoader),this._container.get(s.transactionCheckTypes.TransactionCheckLoader),this._container.get(s.transactionCheckTypes.TypedDataCheckLoader)];case i.ContextModuleChainID.Solana:return[this._container.get(w.tokenTypes.TokenContextLoader),this._container.get(v.lifiTypes.LifiContextLoader),this._container.get(F.ownerInfoTypes.OwnerInfoContextLoader),this._container.get(s.transactionCheckTypes.TransactionCheckLoader),this._container.get(k.instructionInfoTypes.InstructionInfoContextLoader),this._container.get(D.enumVariantTypes.EnumVariantContextLoader),this._container.get(B.tokenInfoTypes.TokenInfoContextLoader),this._container.get(P.tokenAccountStateTypes.TokenAccountStateContextLoader),this._container.get(R.altResolutionTypes.AltResolutionContextLoader),this._container.get(E.solanaTrustedNameTypes.SolanaTrustedNameContextLoader)];case i.ContextModuleChainID.Concordium:return[this._container.get(f.accountOwnershipTypes.AccountOwnershipContextLoader)];default:{const t=e;return[]}}}_getDefaultTypedDataLoader(){return this._config.chain!==i.ContextModuleChainID.Ethereum?{load:()=>Promise.reject(new Error("[ContextModule] getTypedDataFilters is not supported for this chain"))}:this._container.get(S.typedDataTypes.TypedDataContextLoader)}_getBlindSigningReporter(){return this._container.isBound(x.reporterTypes.BlindSigningReporter)?this._container.get(x.reporterTypes.BlindSigningReporter):null}async getContexts(e,t){const n=Object.values(a.ClearSignContextType),d=this._loaders.filter(p=>p.canHandle(e,t??n)).map(p=>p.load(e));return(await Promise.all(d)).flat()}async getFieldContext(e,t){const n=this._fieldLoaders.filter(o=>o.canHandle(e,t));if(n.length===0)return Promise.resolve({type:a.ClearSignContextType.ERROR,error:new Error(`Loader not found for field: ${e} and expected type: ${t}`)});for(const o of n){const d=await o.loadField(e);if(d.type!==a.ClearSignContextType.ERROR)return d}return{type:a.ClearSignContextType.ERROR,error:new Error(`Loader not found for field: ${e} and expected type: ${t}`)}}async getTypedDataFilters(e){return this._typedDataLoader.load(e)}async report(e){await this._blindSigningReporter?.report(e)}async signReport(e){await this._signReporter?.report(e)}}0&&(module.exports={DefaultContextModule});
1
+ "use strict";var l=Object.defineProperty;var I=Object.getOwnPropertyDescriptor;var b=Object.getOwnPropertyNames;var N=Object.prototype.hasOwnProperty;var O=(r,e)=>{for(var t in e)l(r,t,{get:e[t],enumerable:!0})},A=(r,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of b(e))!N.call(r,o)&&o!==t&&l(r,o,{get:()=>e[o],enumerable:!(n=I(e,o))||n.enumerable});return r};var $=r=>A(l({},"__esModule",{value:!0}),r);var G={};O(G,{DefaultContextModule:()=>j});module.exports=$(G);var u=require("./di"),f=require("./modules/concordium/account-ownership/di/accountOwnershipTypes"),L=require("./modules/ethereum/calldata/di/calldataTypes"),y=require("./modules/ethereum/dynamic-network/di/dynamicNetworkTypes"),h=require("./modules/ethereum/external-plugin/di/externalPluginTypes"),m=require("./modules/ethereum/gated-signing/di/gatedSigningTypes"),C=require("./modules/ethereum/nft/di/nftTypes"),T=require("./modules/ethereum/proxy/di/proxyTypes"),_=require("./modules/ethereum/safe/di/safeTypes"),c=require("./modules/ethereum/token/di/tokenTypes"),g=require("./modules/ethereum/trusted-name/di/trustedNameTypes"),S=require("./modules/ethereum/typed-data/di/typedDataTypes"),x=require("./modules/multichain/reporter/di/reporterTypes"),s=require("./modules/multichain/transaction-check/di/transactionCheckTypes"),R=require("./modules/solana/alt-resolution/di/altResolutionTypes"),D=require("./modules/solana/enum-variant/di/enumVariantTypes"),k=require("./modules/solana/instruction-info/di/instructionInfoTypes"),v=require("./modules/solana/lifi/di/lifiTypes"),F=require("./modules/solana/owner-info/di/ownerInfoTypes"),w=require("./modules/solana/token/di/tokenTypes"),P=require("./modules/solana/token-account-state/di/tokenAccountStateTypes"),B=require("./modules/solana/token-info/di/tokenInfoTypes"),E=require("./modules/solana/trusted-name/di/trustedNameTypes"),M=require("./modules/tron/token/di/tokenTypes"),a=require("./shared/domain/ContextModuleChainID"),i=require("./shared/model/ClearSignContext");class j{_container;_config;_loaders;_typedDataLoader;_fieldLoaders;_blindSigningReporter;_signReporter;constructor(e){this._config=e,this._container=(0,u.makeContainer)({config:e}),this._loaders=e.defaultLoaders?this._getDefaultLoaders():[],this._loaders.push(...e.customLoaders),this._fieldLoaders=e.defaultFieldLoaders?this._getDefaultFieldLoaders():[],this._fieldLoaders.push(...e.customFieldLoaders),this._typedDataLoader=e.customTypedDataLoader??this._getDefaultTypedDataLoader(),this._blindSigningReporter=e.customBlindSigningReporter??this._getBlindSigningReporter(),this._signReporter=null}_getDefaultFieldLoaders(){return this._config.chain!==a.ContextModuleChainID.Ethereum?[]:[this._container.get(C.nftTypes.NftContextFieldLoader),this._container.get(c.tokenTypes.TokenContextFieldLoader),this._container.get(g.trustedNameTypes.TrustedNameContextFieldLoader),this._container.get(T.proxyTypes.ProxyContextFieldLoader)]}_getDefaultLoaders(){const{chain:e}=this._config;switch(e){case a.ContextModuleChainID.Ethereum:return[this._container.get(h.externalPluginTypes.ExternalPluginContextLoader),this._container.get(g.trustedNameTypes.TrustedNameContextLoader),this._container.get(C.nftTypes.NftContextLoader),this._container.get(c.tokenTypes.TokenContextLoader),this._container.get(L.calldataTypes.CalldataContextLoader),this._container.get(y.dynamicNetworkTypes.DynamicNetworkContextLoader),this._container.get(_.safeTypes.SafeAddressLoader),this._container.get(m.gatedSigningTypes.GatedSigningContextLoader),this._container.get(m.gatedSigningTypes.GatedSigningTypedDataContextLoader),this._container.get(s.transactionCheckTypes.TransactionCheckLoader),this._container.get(s.transactionCheckTypes.TypedDataCheckLoader)];case a.ContextModuleChainID.Solana:return[this._container.get(w.tokenTypes.TokenContextLoader),this._container.get(v.lifiTypes.LifiContextLoader),this._container.get(F.ownerInfoTypes.OwnerInfoContextLoader),this._container.get(s.transactionCheckTypes.TransactionCheckLoader),this._container.get(k.instructionInfoTypes.InstructionInfoContextLoader),this._container.get(D.enumVariantTypes.EnumVariantContextLoader),this._container.get(B.tokenInfoTypes.TokenInfoContextLoader),this._container.get(P.tokenAccountStateTypes.TokenAccountStateContextLoader),this._container.get(R.altResolutionTypes.AltResolutionContextLoader),this._container.get(E.solanaTrustedNameTypes.SolanaTrustedNameContextLoader)];case a.ContextModuleChainID.Concordium:return[this._container.get(f.accountOwnershipTypes.AccountOwnershipContextLoader)];case a.ContextModuleChainID.Tron:return[this._container.get(M.tokenTypes.TokenContextLoader)];default:{const t=e;return[]}}}_getDefaultTypedDataLoader(){return this._config.chain!==a.ContextModuleChainID.Ethereum?{load:()=>Promise.reject(new Error("[ContextModule] getTypedDataFilters is not supported for this chain"))}:this._container.get(S.typedDataTypes.TypedDataContextLoader)}_getBlindSigningReporter(){return this._container.isBound(x.reporterTypes.BlindSigningReporter)?this._container.get(x.reporterTypes.BlindSigningReporter):null}async getContexts(e,t){const n=Object.values(i.ClearSignContextType),d=this._loaders.filter(p=>p.canHandle(e,t??n)).map(p=>p.load(e));return(await Promise.all(d)).flat()}async getFieldContext(e,t){const n=this._fieldLoaders.filter(o=>o.canHandle(e,t));if(n.length===0)return Promise.resolve({type:i.ClearSignContextType.ERROR,error:new Error(`Loader not found for field: ${e} and expected type: ${t}`)});for(const o of n){const d=await o.loadField(e);if(d.type!==i.ClearSignContextType.ERROR)return d}return{type:i.ClearSignContextType.ERROR,error:new Error(`Loader not found for field: ${e} and expected type: ${t}`)}}async getTypedDataFilters(e){return this._typedDataLoader.load(e)}async report(e){await this._blindSigningReporter?.report(e)}async signReport(e){await this._signReporter?.report(e)}}0&&(module.exports={DefaultContextModule});
2
2
  //# sourceMappingURL=DefaultContextModule.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/DefaultContextModule.ts"],
4
- "sourcesContent": ["import { type Container } from \"inversify\";\n\nimport {\n type ContextModuleLoaderConfig,\n type ContextModuleServiceConfig,\n} from \"@/config/model/ContextModuleConfig\";\nimport { type ContextModule } from \"@/ContextModule\";\nimport { makeContainer } from \"@/di\";\nimport { accountOwnershipTypes } from \"@/modules/concordium/account-ownership/di/accountOwnershipTypes\";\nimport { calldataTypes } from \"@/modules/ethereum/calldata/di/calldataTypes\";\nimport { dynamicNetworkTypes } from \"@/modules/ethereum/dynamic-network/di/dynamicNetworkTypes\";\nimport { externalPluginTypes } from \"@/modules/ethereum/external-plugin/di/externalPluginTypes\";\nimport { gatedSigningTypes } from \"@/modules/ethereum/gated-signing/di/gatedSigningTypes\";\nimport type { TypedDataClearSignContext } from \"@/modules/ethereum/model/TypedDataClearSignContext\";\nimport type { TypedDataContext } from \"@/modules/ethereum/model/TypedDataContext\";\nimport { nftTypes } from \"@/modules/ethereum/nft/di/nftTypes\";\nimport { proxyTypes } from \"@/modules/ethereum/proxy/di/proxyTypes\";\nimport { safeTypes } from \"@/modules/ethereum/safe/di/safeTypes\";\nimport { tokenTypes as ethereumTokenTypes } from \"@/modules/ethereum/token/di/tokenTypes\";\nimport { trustedNameTypes } from \"@/modules/ethereum/trusted-name/di/trustedNameTypes\";\nimport { typedDataTypes } from \"@/modules/ethereum/typed-data/di/typedDataTypes\";\nimport type { TypedDataContextLoader } from \"@/modules/ethereum/typed-data/domain/TypedDataContextLoader\";\nimport { type BlindSigningReportParams } from \"@/modules/multichain/reporter/data/BlindSigningReporterDatasource\";\nimport { reporterTypes } from \"@/modules/multichain/reporter/di/reporterTypes\";\nimport { type BlindSigningReporter } from \"@/modules/multichain/reporter/domain/BlindSigningReporter\";\nimport { type SignReporter } from \"@/modules/multichain/sign-reporter/domain/SignReporter\";\nimport { type SignReportParams } from \"@/modules/multichain/sign-reporter/model/SignReportParams\";\nimport { transactionCheckTypes } from \"@/modules/multichain/transaction-check/di/transactionCheckTypes\";\nimport { altResolutionTypes } from \"@/modules/solana/alt-resolution/di/altResolutionTypes\";\nimport { enumVariantTypes } from \"@/modules/solana/enum-variant/di/enumVariantTypes\";\nimport { instructionInfoTypes } from \"@/modules/solana/instruction-info/di/instructionInfoTypes\";\nimport { lifiTypes } from \"@/modules/solana/lifi/di/lifiTypes\";\nimport { ownerInfoTypes } from \"@/modules/solana/owner-info/di/ownerInfoTypes\";\nimport { tokenTypes as solanaTokenTypes } from \"@/modules/solana/token/di/tokenTypes\";\nimport { tokenAccountStateTypes } from \"@/modules/solana/token-account-state/di/tokenAccountStateTypes\";\nimport { tokenInfoTypes } from \"@/modules/solana/token-info/di/tokenInfoTypes\";\nimport { solanaTrustedNameTypes } from \"@/modules/solana/trusted-name/di/trustedNameTypes\";\nimport { type ContextFieldLoader } from \"@/shared/domain/ContextFieldLoader\";\nimport { type ContextLoader } from \"@/shared/domain/ContextLoader\";\nimport { ContextModuleChainID } from \"@/shared/domain/ContextModuleChainID\";\nimport {\n type ClearSignContext,\n ClearSignContextType,\n} from \"@/shared/model/ClearSignContext\";\n\nexport class DefaultContextModule implements ContextModule {\n private _container: Container;\n private _config: ContextModuleServiceConfig & ContextModuleLoaderConfig;\n private _loaders: ContextLoader<unknown>[];\n private _typedDataLoader: TypedDataContextLoader;\n private _fieldLoaders: ContextFieldLoader<unknown>[];\n private _blindSigningReporter: BlindSigningReporter | null;\n private _signReporter: SignReporter | null;\n\n constructor(args: ContextModuleServiceConfig & ContextModuleLoaderConfig) {\n this._config = args;\n this._container = makeContainer({ config: args });\n\n this._loaders = args.defaultLoaders ? this._getDefaultLoaders() : [];\n this._loaders.push(...args.customLoaders);\n\n this._fieldLoaders = args.defaultFieldLoaders\n ? this._getDefaultFieldLoaders()\n : [];\n this._fieldLoaders.push(...args.customFieldLoaders);\n\n this._typedDataLoader =\n args.customTypedDataLoader ?? this._getDefaultTypedDataLoader();\n this._blindSigningReporter =\n args.customBlindSigningReporter ?? this._getBlindSigningReporter();\n this._signReporter = null;\n }\n\n private _getDefaultFieldLoaders(): ContextFieldLoader[] {\n if (this._config.chain !== ContextModuleChainID.Ethereum) return [];\n return [\n this._container.get<ContextFieldLoader>(nftTypes.NftContextFieldLoader),\n this._container.get<ContextFieldLoader>(\n ethereumTokenTypes.TokenContextFieldLoader,\n ),\n this._container.get<ContextFieldLoader>(\n trustedNameTypes.TrustedNameContextFieldLoader,\n ),\n this._container.get<ContextFieldLoader>(\n proxyTypes.ProxyContextFieldLoader,\n ),\n ];\n }\n\n private _getDefaultLoaders(): ContextLoader<unknown>[] {\n const { chain } = this._config;\n switch (chain) {\n case ContextModuleChainID.Ethereum:\n return [\n this._container.get<ContextLoader>(\n externalPluginTypes.ExternalPluginContextLoader,\n ),\n this._container.get<ContextLoader>(\n trustedNameTypes.TrustedNameContextLoader,\n ),\n this._container.get<ContextLoader>(nftTypes.NftContextLoader),\n this._container.get<ContextLoader>(\n ethereumTokenTypes.TokenContextLoader,\n ),\n this._container.get<ContextLoader>(\n calldataTypes.CalldataContextLoader,\n ),\n this._container.get<ContextLoader>(\n dynamicNetworkTypes.DynamicNetworkContextLoader,\n ),\n this._container.get<ContextLoader>(safeTypes.SafeAddressLoader),\n this._container.get<ContextLoader>(\n gatedSigningTypes.GatedSigningContextLoader,\n ),\n this._container.get<ContextLoader>(\n gatedSigningTypes.GatedSigningTypedDataContextLoader,\n ),\n this._container.get<ContextLoader>(\n transactionCheckTypes.TransactionCheckLoader,\n ),\n this._container.get<ContextLoader>(\n transactionCheckTypes.TypedDataCheckLoader,\n ),\n ];\n case ContextModuleChainID.Solana:\n return [\n this._container.get<ContextLoader>(\n solanaTokenTypes.TokenContextLoader,\n ),\n this._container.get<ContextLoader>(lifiTypes.LifiContextLoader),\n this._container.get<ContextLoader>(\n ownerInfoTypes.OwnerInfoContextLoader,\n ),\n this._container.get<ContextLoader>(\n transactionCheckTypes.TransactionCheckLoader,\n ),\n this._container.get<ContextLoader>(\n instructionInfoTypes.InstructionInfoContextLoader,\n ),\n this._container.get<ContextLoader>(\n enumVariantTypes.EnumVariantContextLoader,\n ),\n this._container.get<ContextLoader>(\n tokenInfoTypes.TokenInfoContextLoader,\n ),\n this._container.get<ContextLoader>(\n tokenAccountStateTypes.TokenAccountStateContextLoader,\n ),\n this._container.get<ContextLoader>(\n altResolutionTypes.AltResolutionContextLoader,\n ),\n this._container.get<ContextLoader>(\n solanaTrustedNameTypes.SolanaTrustedNameContextLoader,\n ),\n ];\n case ContextModuleChainID.Concordium:\n return [\n this._container.get<ContextLoader>(\n accountOwnershipTypes.AccountOwnershipContextLoader,\n ),\n ];\n default: {\n const exhaustiveCheck: never = chain;\n void exhaustiveCheck;\n return [];\n }\n }\n }\n\n private _getDefaultTypedDataLoader(): TypedDataContextLoader {\n if (this._config.chain !== ContextModuleChainID.Ethereum) {\n return {\n load: () =>\n Promise.reject(\n new Error(\n \"[ContextModule] getTypedDataFilters is not supported for this chain\",\n ),\n ),\n };\n }\n return this._container.get<TypedDataContextLoader>(\n typedDataTypes.TypedDataContextLoader,\n );\n }\n\n private _getBlindSigningReporter(): BlindSigningReporter | null {\n if (this._container.isBound(reporterTypes.BlindSigningReporter)) {\n return this._container.get<BlindSigningReporter>(\n reporterTypes.BlindSigningReporter,\n );\n }\n return null;\n }\n\n public async getContexts(\n input: unknown,\n expectedTypes?: ClearSignContextType[],\n ): Promise<ClearSignContext[]> {\n const allContextTypes = Object.values(ClearSignContextType);\n const loaders = this._loaders.filter((l) =>\n l.canHandle(input, expectedTypes ?? allContextTypes),\n );\n const promises = loaders.map((fetcher) => fetcher.load(input));\n const responses = await Promise.all(promises);\n return responses.flat();\n }\n\n public async getFieldContext<TInput>(\n field: TInput,\n expectedType: ClearSignContextType,\n ): Promise<ClearSignContext> {\n const loaders = this._fieldLoaders.filter((l) =>\n l.canHandle(field, expectedType),\n );\n if (loaders.length === 0) {\n return Promise.resolve({\n type: ClearSignContextType.ERROR,\n error: new Error(\n `Loader not found for field: ${field} and expected type: ${expectedType}`,\n ),\n });\n }\n\n for (const loader of loaders) {\n const context = await loader.loadField(field);\n if (context.type !== ClearSignContextType.ERROR) {\n return context;\n }\n }\n\n return {\n type: ClearSignContextType.ERROR,\n error: new Error(\n `Loader not found for field: ${field} and expected type: ${expectedType}`,\n ),\n };\n }\n\n public async getTypedDataFilters(\n typedData: TypedDataContext,\n ): Promise<TypedDataClearSignContext> {\n return this._typedDataLoader.load(typedData);\n }\n\n public async report(params: BlindSigningReportParams): Promise<void> {\n await this._blindSigningReporter?.report(params);\n }\n\n public async signReport(params: SignReportParams): Promise<void> {\n await this._signReporter?.report(params);\n }\n}\n"],
5
- "mappings": "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",
6
- "names": ["DefaultContextModule_exports", "__export", "DefaultContextModule", "__toCommonJS", "import_di", "import_accountOwnershipTypes", "import_calldataTypes", "import_dynamicNetworkTypes", "import_externalPluginTypes", "import_gatedSigningTypes", "import_nftTypes", "import_proxyTypes", "import_safeTypes", "import_tokenTypes", "import_trustedNameTypes", "import_typedDataTypes", "import_reporterTypes", "import_transactionCheckTypes", "import_altResolutionTypes", "import_enumVariantTypes", "import_instructionInfoTypes", "import_lifiTypes", "import_ownerInfoTypes", "import_tokenAccountStateTypes", "import_tokenInfoTypes", "import_ContextModuleChainID", "import_ClearSignContext", "args", "ethereumTokenTypes", "chain", "solanaTokenTypes", "exhaustiveCheck", "input", "expectedTypes", "allContextTypes", "promises", "l", "fetcher", "field", "expectedType", "loaders", "loader", "context", "typedData", "params"]
4
+ "sourcesContent": ["import { type Container } from \"inversify\";\n\nimport {\n type ContextModuleLoaderConfig,\n type ContextModuleServiceConfig,\n} from \"@/config/model/ContextModuleConfig\";\nimport { type ContextModule } from \"@/ContextModule\";\nimport { makeContainer } from \"@/di\";\nimport { accountOwnershipTypes } from \"@/modules/concordium/account-ownership/di/accountOwnershipTypes\";\nimport { calldataTypes } from \"@/modules/ethereum/calldata/di/calldataTypes\";\nimport { dynamicNetworkTypes } from \"@/modules/ethereum/dynamic-network/di/dynamicNetworkTypes\";\nimport { externalPluginTypes } from \"@/modules/ethereum/external-plugin/di/externalPluginTypes\";\nimport { gatedSigningTypes } from \"@/modules/ethereum/gated-signing/di/gatedSigningTypes\";\nimport type { TypedDataClearSignContext } from \"@/modules/ethereum/model/TypedDataClearSignContext\";\nimport type { TypedDataContext } from \"@/modules/ethereum/model/TypedDataContext\";\nimport { nftTypes } from \"@/modules/ethereum/nft/di/nftTypes\";\nimport { proxyTypes } from \"@/modules/ethereum/proxy/di/proxyTypes\";\nimport { safeTypes } from \"@/modules/ethereum/safe/di/safeTypes\";\nimport { tokenTypes as ethereumTokenTypes } from \"@/modules/ethereum/token/di/tokenTypes\";\nimport { trustedNameTypes } from \"@/modules/ethereum/trusted-name/di/trustedNameTypes\";\nimport { typedDataTypes } from \"@/modules/ethereum/typed-data/di/typedDataTypes\";\nimport type { TypedDataContextLoader } from \"@/modules/ethereum/typed-data/domain/TypedDataContextLoader\";\nimport { type BlindSigningReportParams } from \"@/modules/multichain/reporter/data/BlindSigningReporterDatasource\";\nimport { reporterTypes } from \"@/modules/multichain/reporter/di/reporterTypes\";\nimport { type BlindSigningReporter } from \"@/modules/multichain/reporter/domain/BlindSigningReporter\";\nimport { type SignReporter } from \"@/modules/multichain/sign-reporter/domain/SignReporter\";\nimport { type SignReportParams } from \"@/modules/multichain/sign-reporter/model/SignReportParams\";\nimport { transactionCheckTypes } from \"@/modules/multichain/transaction-check/di/transactionCheckTypes\";\nimport { altResolutionTypes } from \"@/modules/solana/alt-resolution/di/altResolutionTypes\";\nimport { enumVariantTypes } from \"@/modules/solana/enum-variant/di/enumVariantTypes\";\nimport { instructionInfoTypes } from \"@/modules/solana/instruction-info/di/instructionInfoTypes\";\nimport { lifiTypes } from \"@/modules/solana/lifi/di/lifiTypes\";\nimport { ownerInfoTypes } from \"@/modules/solana/owner-info/di/ownerInfoTypes\";\nimport { tokenTypes as solanaTokenTypes } from \"@/modules/solana/token/di/tokenTypes\";\nimport { tokenAccountStateTypes } from \"@/modules/solana/token-account-state/di/tokenAccountStateTypes\";\nimport { tokenInfoTypes } from \"@/modules/solana/token-info/di/tokenInfoTypes\";\nimport { solanaTrustedNameTypes } from \"@/modules/solana/trusted-name/di/trustedNameTypes\";\nimport { tokenTypes as tronTokenTypes } from \"@/modules/tron/token/di/tokenTypes\";\nimport { type ContextFieldLoader } from \"@/shared/domain/ContextFieldLoader\";\nimport { type ContextLoader } from \"@/shared/domain/ContextLoader\";\nimport { ContextModuleChainID } from \"@/shared/domain/ContextModuleChainID\";\nimport {\n type ClearSignContext,\n ClearSignContextType,\n} from \"@/shared/model/ClearSignContext\";\n\nexport class DefaultContextModule implements ContextModule {\n private _container: Container;\n private _config: ContextModuleServiceConfig & ContextModuleLoaderConfig;\n private _loaders: ContextLoader<unknown>[];\n private _typedDataLoader: TypedDataContextLoader;\n private _fieldLoaders: ContextFieldLoader<unknown>[];\n private _blindSigningReporter: BlindSigningReporter | null;\n private _signReporter: SignReporter | null;\n\n constructor(args: ContextModuleServiceConfig & ContextModuleLoaderConfig) {\n this._config = args;\n this._container = makeContainer({ config: args });\n\n this._loaders = args.defaultLoaders ? this._getDefaultLoaders() : [];\n this._loaders.push(...args.customLoaders);\n\n this._fieldLoaders = args.defaultFieldLoaders\n ? this._getDefaultFieldLoaders()\n : [];\n this._fieldLoaders.push(...args.customFieldLoaders);\n\n this._typedDataLoader =\n args.customTypedDataLoader ?? this._getDefaultTypedDataLoader();\n this._blindSigningReporter =\n args.customBlindSigningReporter ?? this._getBlindSigningReporter();\n this._signReporter = null;\n }\n\n private _getDefaultFieldLoaders(): ContextFieldLoader[] {\n if (this._config.chain !== ContextModuleChainID.Ethereum) return [];\n return [\n this._container.get<ContextFieldLoader>(nftTypes.NftContextFieldLoader),\n this._container.get<ContextFieldLoader>(\n ethereumTokenTypes.TokenContextFieldLoader,\n ),\n this._container.get<ContextFieldLoader>(\n trustedNameTypes.TrustedNameContextFieldLoader,\n ),\n this._container.get<ContextFieldLoader>(\n proxyTypes.ProxyContextFieldLoader,\n ),\n ];\n }\n\n private _getDefaultLoaders(): ContextLoader<unknown>[] {\n const { chain } = this._config;\n switch (chain) {\n case ContextModuleChainID.Ethereum:\n return [\n this._container.get<ContextLoader>(\n externalPluginTypes.ExternalPluginContextLoader,\n ),\n this._container.get<ContextLoader>(\n trustedNameTypes.TrustedNameContextLoader,\n ),\n this._container.get<ContextLoader>(nftTypes.NftContextLoader),\n this._container.get<ContextLoader>(\n ethereumTokenTypes.TokenContextLoader,\n ),\n this._container.get<ContextLoader>(\n calldataTypes.CalldataContextLoader,\n ),\n this._container.get<ContextLoader>(\n dynamicNetworkTypes.DynamicNetworkContextLoader,\n ),\n this._container.get<ContextLoader>(safeTypes.SafeAddressLoader),\n this._container.get<ContextLoader>(\n gatedSigningTypes.GatedSigningContextLoader,\n ),\n this._container.get<ContextLoader>(\n gatedSigningTypes.GatedSigningTypedDataContextLoader,\n ),\n this._container.get<ContextLoader>(\n transactionCheckTypes.TransactionCheckLoader,\n ),\n this._container.get<ContextLoader>(\n transactionCheckTypes.TypedDataCheckLoader,\n ),\n ];\n case ContextModuleChainID.Solana:\n return [\n this._container.get<ContextLoader>(\n solanaTokenTypes.TokenContextLoader,\n ),\n this._container.get<ContextLoader>(lifiTypes.LifiContextLoader),\n this._container.get<ContextLoader>(\n ownerInfoTypes.OwnerInfoContextLoader,\n ),\n this._container.get<ContextLoader>(\n transactionCheckTypes.TransactionCheckLoader,\n ),\n this._container.get<ContextLoader>(\n instructionInfoTypes.InstructionInfoContextLoader,\n ),\n this._container.get<ContextLoader>(\n enumVariantTypes.EnumVariantContextLoader,\n ),\n this._container.get<ContextLoader>(\n tokenInfoTypes.TokenInfoContextLoader,\n ),\n this._container.get<ContextLoader>(\n tokenAccountStateTypes.TokenAccountStateContextLoader,\n ),\n this._container.get<ContextLoader>(\n altResolutionTypes.AltResolutionContextLoader,\n ),\n this._container.get<ContextLoader>(\n solanaTrustedNameTypes.SolanaTrustedNameContextLoader,\n ),\n ];\n case ContextModuleChainID.Concordium:\n return [\n this._container.get<ContextLoader>(\n accountOwnershipTypes.AccountOwnershipContextLoader,\n ),\n ];\n case ContextModuleChainID.Tron:\n return [\n this._container.get<ContextLoader>(tronTokenTypes.TokenContextLoader),\n ];\n default: {\n const exhaustiveCheck: never = chain;\n void exhaustiveCheck;\n return [];\n }\n }\n }\n\n private _getDefaultTypedDataLoader(): TypedDataContextLoader {\n if (this._config.chain !== ContextModuleChainID.Ethereum) {\n return {\n load: () =>\n Promise.reject(\n new Error(\n \"[ContextModule] getTypedDataFilters is not supported for this chain\",\n ),\n ),\n };\n }\n return this._container.get<TypedDataContextLoader>(\n typedDataTypes.TypedDataContextLoader,\n );\n }\n\n private _getBlindSigningReporter(): BlindSigningReporter | null {\n if (this._container.isBound(reporterTypes.BlindSigningReporter)) {\n return this._container.get<BlindSigningReporter>(\n reporterTypes.BlindSigningReporter,\n );\n }\n return null;\n }\n\n public async getContexts(\n input: unknown,\n expectedTypes?: ClearSignContextType[],\n ): Promise<ClearSignContext[]> {\n const allContextTypes = Object.values(ClearSignContextType);\n const loaders = this._loaders.filter((l) =>\n l.canHandle(input, expectedTypes ?? allContextTypes),\n );\n const promises = loaders.map((fetcher) => fetcher.load(input));\n const responses = await Promise.all(promises);\n return responses.flat();\n }\n\n public async getFieldContext<TInput>(\n field: TInput,\n expectedType: ClearSignContextType,\n ): Promise<ClearSignContext> {\n const loaders = this._fieldLoaders.filter((l) =>\n l.canHandle(field, expectedType),\n );\n if (loaders.length === 0) {\n return Promise.resolve({\n type: ClearSignContextType.ERROR,\n error: new Error(\n `Loader not found for field: ${field} and expected type: ${expectedType}`,\n ),\n });\n }\n\n for (const loader of loaders) {\n const context = await loader.loadField(field);\n if (context.type !== ClearSignContextType.ERROR) {\n return context;\n }\n }\n\n return {\n type: ClearSignContextType.ERROR,\n error: new Error(\n `Loader not found for field: ${field} and expected type: ${expectedType}`,\n ),\n };\n }\n\n public async getTypedDataFilters(\n typedData: TypedDataContext,\n ): Promise<TypedDataClearSignContext> {\n return this._typedDataLoader.load(typedData);\n }\n\n public async report(params: BlindSigningReportParams): Promise<void> {\n await this._blindSigningReporter?.report(params);\n }\n\n public async signReport(params: SignReportParams): Promise<void> {\n await this._signReporter?.report(params);\n }\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["DefaultContextModule_exports", "__export", "DefaultContextModule", "__toCommonJS", "import_di", "import_accountOwnershipTypes", "import_calldataTypes", "import_dynamicNetworkTypes", "import_externalPluginTypes", "import_gatedSigningTypes", "import_nftTypes", "import_proxyTypes", "import_safeTypes", "import_tokenTypes", "import_trustedNameTypes", "import_typedDataTypes", "import_reporterTypes", "import_transactionCheckTypes", "import_altResolutionTypes", "import_enumVariantTypes", "import_instructionInfoTypes", "import_lifiTypes", "import_ownerInfoTypes", "import_tokenAccountStateTypes", "import_tokenInfoTypes", "import_ContextModuleChainID", "import_ClearSignContext", "args", "ethereumTokenTypes", "chain", "solanaTokenTypes", "tronTokenTypes", "exhaustiveCheck", "input", "expectedTypes", "allContextTypes", "promises", "l", "fetcher", "field", "expectedType", "loaders", "loader", "context", "typedData", "params"]
7
7
  }
package/lib/cjs/src/di.js CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";var i=Object.defineProperty;var O=Object.getOwnPropertyDescriptor;var j=Object.getOwnPropertyNames;var q=Object.prototype.hasOwnProperty;var z=(r,o)=>{for(var t in o)i(r,t,{get:o[t],enumerable:!0})},B=(r,o,t,a)=>{if(o&&typeof o=="object"||typeof o=="function")for(let e of j(o))!q.call(r,e)&&e!==t&&i(r,e,{get:()=>o[e],enumerable:!(a=O(o,e))||a.enumerable});return r};var G=r=>B(i({},"__esModule",{value:!0}),r);var J={};z(J,{makeContainer:()=>H});module.exports=G(J);var u=require("inversify"),l=require("./config/di/configModuleFactory"),d=require("./config/di/configTypes"),p=require("./modules/concordium/account-ownership/di/accountOwnershipModuleFactory"),y=require("./modules/ethereum/calldata/di/calldataModuleFactory"),f=require("./modules/ethereum/dynamic-network/di/dynamicNetworkModuleFactory"),M=require("./modules/ethereum/external-plugin/di/externalPluginModuleFactory"),s=require("./modules/ethereum/gated-signing/di/gatedSigningModuleFactory"),F=require("./modules/ethereum/nft/di/nftModuleFactory"),C=require("./modules/ethereum/proxy/di/proxyModuleFactory"),g=require("./modules/ethereum/safe/di/safeModuleFactory"),k=require("./modules/ethereum/token/di/tokenModuleFactory"),h=require("./modules/ethereum/trusted-name/di/trustedNameModuleFactory"),S=require("./modules/ethereum/typed-data/di/typedDataModuleFactory"),x=require("./modules/ethereum/uniswap/di/uniswapModuleFactory"),m=require("./modules/multichain/pki/di/pkiModuleFactory"),v=require("./modules/multichain/reporter/di/reporterModuleFactory"),c=require("./modules/multichain/sign-reporter/di/signReporterModuleFactory"),w=require("./modules/multichain/transaction-check/di/ethereumTransactionCheckModuleFactory"),T=require("./modules/multichain/transaction-check/di/solanaTransactionCheckModuleFactory"),b=require("./modules/solana/alt-resolution/di/altResolutionModuleFactory"),L=require("./modules/solana/enum-variant/di/enumVariantModuleFactory"),I=require("./modules/solana/instruction-info/di/instructionInfoModuleFactory"),N=require("./modules/solana/lifi/di/lifiModuleFactory"),P=require("./modules/solana/owner-info/di/ownerInfoModuleFactory"),A=require("./modules/solana/token/di/tokenModuleFactory"),D=require("./modules/solana/token-account-state/di/tokenAccountStateModuleFactory"),R=require("./modules/solana/token-info/di/tokenInfoModuleFactory"),V=require("./modules/solana/trusted-name/di/trustedNameModuleFactory"),n=require("./shared/domain/ContextModuleChainID"),E=require("./shared/network/di/networkModuleFactory");const H=({config:r})=>{const o=new u.Container;o.bind(d.configTypes.ContextModuleLoggerFactory).toConstantValue(r.loggerFactory);const{chain:t}=r;switch(o.loadSync((0,l.configModuleFactory)(r),(0,E.networkModuleFactory)(r)),t){case n.ContextModuleChainID.Ethereum:o.loadSync((0,m.nanoPkiModuleFactory)(),(0,v.reporterModuleFactory)(),(0,c.signReporterModuleFactory)(),(0,h.trustedNameModuleFactory)(r.customTrustedNameDataSource),(0,M.externalPluginModuleFactory)(),(0,f.dynamicNetworkModuleFactory)(),(0,F.nftModuleFactory)(),(0,C.proxyModuleFactory)(r.datasource),(0,g.safeModuleFactory)(),(0,s.gatedSigningModuleFactory)(),(0,k.tokenModuleFactory)(),(0,y.calldataModuleFactory)(),(0,S.typedDataModuleFactory)(),(0,x.uniswapModuleFactory)(),(0,w.ethereumTransactionCheckModuleFactory)());break;case n.ContextModuleChainID.Solana:o.loadSync((0,m.nanoPkiModuleFactory)(),(0,c.signReporterModuleFactory)(),(0,P.ownerInfoModuleFactory)(),(0,A.tokenModuleFactory)(),(0,N.lifiModuleFactory)(),(0,T.solanaTransactionCheckModuleFactory)(),(0,I.instructionInfoModuleFactory)(),(0,L.enumVariantModuleFactory)(),(0,R.tokenInfoModuleFactory)(),(0,D.tokenAccountStateModuleFactory)(),(0,b.altResolutionModuleFactory)(),(0,V.solanaTrustedNameModuleFactory)());break;case n.ContextModuleChainID.Concordium:o.loadSync((0,m.nanoPkiModuleFactory)(),(0,p.accountOwnershipModuleFactory)());break;default:{const a=t}}return o};0&&(module.exports={makeContainer});
1
+ "use strict";var i=Object.defineProperty;var j=Object.getOwnPropertyDescriptor;var q=Object.getOwnPropertyNames;var z=Object.prototype.hasOwnProperty;var B=(r,o)=>{for(var t in o)i(r,t,{get:o[t],enumerable:!0})},G=(r,o,t,m)=>{if(o&&typeof o=="object"||typeof o=="function")for(let e of q(o))!z.call(r,e)&&e!==t&&i(r,e,{get:()=>o[e],enumerable:!(m=j(o,e))||m.enumerable});return r};var H=r=>G(i({},"__esModule",{value:!0}),r);var K={};B(K,{makeContainer:()=>J});module.exports=H(K);var u=require("inversify"),l=require("./config/di/configModuleFactory"),d=require("./config/di/configTypes"),y=require("./modules/concordium/account-ownership/di/accountOwnershipModuleFactory"),p=require("./modules/ethereum/calldata/di/calldataModuleFactory"),f=require("./modules/ethereum/dynamic-network/di/dynamicNetworkModuleFactory"),M=require("./modules/ethereum/external-plugin/di/externalPluginModuleFactory"),s=require("./modules/ethereum/gated-signing/di/gatedSigningModuleFactory"),F=require("./modules/ethereum/nft/di/nftModuleFactory"),k=require("./modules/ethereum/proxy/di/proxyModuleFactory"),C=require("./modules/ethereum/safe/di/safeModuleFactory"),g=require("./modules/ethereum/token/di/tokenModuleFactory"),h=require("./modules/ethereum/trusted-name/di/trustedNameModuleFactory"),S=require("./modules/ethereum/typed-data/di/typedDataModuleFactory"),x=require("./modules/ethereum/uniswap/di/uniswapModuleFactory"),n=require("./modules/multichain/pki/di/pkiModuleFactory"),T=require("./modules/multichain/reporter/di/reporterModuleFactory"),c=require("./modules/multichain/sign-reporter/di/signReporterModuleFactory"),b=require("./modules/multichain/transaction-check/di/ethereumTransactionCheckModuleFactory"),v=require("./modules/multichain/transaction-check/di/solanaTransactionCheckModuleFactory"),w=require("./modules/solana/alt-resolution/di/altResolutionModuleFactory"),L=require("./modules/solana/enum-variant/di/enumVariantModuleFactory"),I=require("./modules/solana/instruction-info/di/instructionInfoModuleFactory"),N=require("./modules/solana/lifi/di/lifiModuleFactory"),P=require("./modules/solana/owner-info/di/ownerInfoModuleFactory"),A=require("./modules/solana/token/di/tokenModuleFactory"),D=require("./modules/solana/token-account-state/di/tokenAccountStateModuleFactory"),R=require("./modules/solana/token-info/di/tokenInfoModuleFactory"),V=require("./modules/solana/trusted-name/di/trustedNameModuleFactory"),E=require("./modules/tron/token/di/tokenModuleFactory"),a=require("./shared/domain/ContextModuleChainID"),O=require("./shared/network/di/networkModuleFactory");const J=({config:r})=>{const o=new u.Container;o.bind(d.configTypes.ContextModuleLoggerFactory).toConstantValue(r.loggerFactory);const{chain:t}=r;switch(o.loadSync((0,l.configModuleFactory)(r),(0,O.networkModuleFactory)(r)),t){case a.ContextModuleChainID.Ethereum:o.loadSync((0,n.nanoPkiModuleFactory)(),(0,T.reporterModuleFactory)(),(0,c.signReporterModuleFactory)(),(0,h.trustedNameModuleFactory)(r.customTrustedNameDataSource),(0,M.externalPluginModuleFactory)(),(0,f.dynamicNetworkModuleFactory)(),(0,F.nftModuleFactory)(),(0,k.proxyModuleFactory)(r.datasource),(0,C.safeModuleFactory)(),(0,s.gatedSigningModuleFactory)(),(0,g.tokenModuleFactory)(),(0,p.calldataModuleFactory)(),(0,S.typedDataModuleFactory)(),(0,x.uniswapModuleFactory)(),(0,b.ethereumTransactionCheckModuleFactory)());break;case a.ContextModuleChainID.Solana:o.loadSync((0,n.nanoPkiModuleFactory)(),(0,c.signReporterModuleFactory)(),(0,P.ownerInfoModuleFactory)(),(0,A.tokenModuleFactory)(),(0,N.lifiModuleFactory)(),(0,v.solanaTransactionCheckModuleFactory)(),(0,I.instructionInfoModuleFactory)(),(0,L.enumVariantModuleFactory)(),(0,R.tokenInfoModuleFactory)(),(0,D.tokenAccountStateModuleFactory)(),(0,w.altResolutionModuleFactory)(),(0,V.solanaTrustedNameModuleFactory)());break;case a.ContextModuleChainID.Concordium:o.loadSync((0,n.nanoPkiModuleFactory)(),(0,y.accountOwnershipModuleFactory)());break;case a.ContextModuleChainID.Tron:o.loadSync((0,E.tokenModuleFactory)());break;default:{const m=t}}return o};0&&(module.exports={makeContainer});
2
2
  //# sourceMappingURL=di.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/di.ts"],
4
- "sourcesContent": ["import { type LoggerPublisherService } from \"@ledgerhq/device-management-kit\";\nimport { Container } from \"inversify\";\n\nimport { configModuleFactory } from \"@/config/di/configModuleFactory\";\nimport { configTypes } from \"@/config/di/configTypes\";\nimport {\n type ContextModuleLoaderConfig,\n type ContextModuleServiceConfig,\n} from \"@/config/model/ContextModuleConfig\";\nimport { accountOwnershipModuleFactory } from \"@/modules/concordium/account-ownership/di/accountOwnershipModuleFactory\";\nimport { calldataModuleFactory } from \"@/modules/ethereum/calldata/di/calldataModuleFactory\";\nimport { dynamicNetworkModuleFactory } from \"@/modules/ethereum/dynamic-network/di/dynamicNetworkModuleFactory\";\nimport { externalPluginModuleFactory } from \"@/modules/ethereum/external-plugin/di/externalPluginModuleFactory\";\nimport { gatedSigningModuleFactory } from \"@/modules/ethereum/gated-signing/di/gatedSigningModuleFactory\";\nimport { nftModuleFactory } from \"@/modules/ethereum/nft/di/nftModuleFactory\";\nimport { proxyModuleFactory } from \"@/modules/ethereum/proxy/di/proxyModuleFactory\";\nimport { safeModuleFactory } from \"@/modules/ethereum/safe/di/safeModuleFactory\";\nimport { tokenModuleFactory as ethereumTokenModuleFactory } from \"@/modules/ethereum/token/di/tokenModuleFactory\";\nimport { trustedNameModuleFactory } from \"@/modules/ethereum/trusted-name/di/trustedNameModuleFactory\";\nimport { typedDataModuleFactory } from \"@/modules/ethereum/typed-data/di/typedDataModuleFactory\";\nimport { uniswapModuleFactory } from \"@/modules/ethereum/uniswap/di/uniswapModuleFactory\";\nimport { nanoPkiModuleFactory } from \"@/modules/multichain/pki/di/pkiModuleFactory\";\nimport { reporterModuleFactory } from \"@/modules/multichain/reporter/di/reporterModuleFactory\";\nimport { signReporterModuleFactory } from \"@/modules/multichain/sign-reporter/di/signReporterModuleFactory\";\nimport { ethereumTransactionCheckModuleFactory } from \"@/modules/multichain/transaction-check/di/ethereumTransactionCheckModuleFactory\";\nimport { solanaTransactionCheckModuleFactory } from \"@/modules/multichain/transaction-check/di/solanaTransactionCheckModuleFactory\";\nimport { altResolutionModuleFactory } from \"@/modules/solana/alt-resolution/di/altResolutionModuleFactory\";\nimport { enumVariantModuleFactory } from \"@/modules/solana/enum-variant/di/enumVariantModuleFactory\";\nimport { instructionInfoModuleFactory } from \"@/modules/solana/instruction-info/di/instructionInfoModuleFactory\";\nimport { lifiModuleFactory } from \"@/modules/solana/lifi/di/lifiModuleFactory\";\nimport { ownerInfoModuleFactory } from \"@/modules/solana/owner-info/di/ownerInfoModuleFactory\";\nimport { tokenModuleFactory as solanaTokenModuleFactory } from \"@/modules/solana/token/di/tokenModuleFactory\";\nimport { tokenAccountStateModuleFactory } from \"@/modules/solana/token-account-state/di/tokenAccountStateModuleFactory\";\nimport { tokenInfoModuleFactory } from \"@/modules/solana/token-info/di/tokenInfoModuleFactory\";\nimport { solanaTrustedNameModuleFactory } from \"@/modules/solana/trusted-name/di/trustedNameModuleFactory\";\nimport { ContextModuleChainID } from \"@/shared/domain/ContextModuleChainID\";\nimport { networkModuleFactory } from \"@/shared/network/di/networkModuleFactory\";\n\ntype MakeContainerArgs = {\n config: ContextModuleServiceConfig & ContextModuleLoaderConfig;\n};\n\nexport const makeContainer = ({ config }: MakeContainerArgs) => {\n const container = new Container();\n\n container\n .bind<\n (tag: string) => LoggerPublisherService\n >(configTypes.ContextModuleLoggerFactory)\n .toConstantValue(config.loggerFactory);\n\n const { chain } = config;\n\n // infrastructure modules needed by all chains\n container.loadSync(configModuleFactory(config), networkModuleFactory(config));\n\n switch (chain) {\n case ContextModuleChainID.Ethereum:\n container.loadSync(\n nanoPkiModuleFactory(),\n reporterModuleFactory(),\n signReporterModuleFactory(),\n trustedNameModuleFactory(config.customTrustedNameDataSource),\n externalPluginModuleFactory(),\n dynamicNetworkModuleFactory(),\n nftModuleFactory(),\n proxyModuleFactory(config.datasource),\n safeModuleFactory(),\n gatedSigningModuleFactory(),\n ethereumTokenModuleFactory(),\n calldataModuleFactory(),\n typedDataModuleFactory(),\n uniswapModuleFactory(),\n ethereumTransactionCheckModuleFactory(),\n );\n break;\n case ContextModuleChainID.Solana:\n container.loadSync(\n nanoPkiModuleFactory(),\n signReporterModuleFactory(),\n ownerInfoModuleFactory(),\n solanaTokenModuleFactory(),\n lifiModuleFactory(),\n solanaTransactionCheckModuleFactory(),\n instructionInfoModuleFactory(),\n enumVariantModuleFactory(),\n tokenInfoModuleFactory(),\n tokenAccountStateModuleFactory(),\n altResolutionModuleFactory(),\n solanaTrustedNameModuleFactory(),\n );\n break;\n case ContextModuleChainID.Concordium:\n container.loadSync(\n nanoPkiModuleFactory(),\n accountOwnershipModuleFactory(),\n );\n break;\n default: {\n // ensure exhaustive check at compile time when new chains are added\n const exhaustiveCheck: never = chain;\n void exhaustiveCheck;\n }\n }\n\n return container;\n};\n"],
5
- "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,mBAAAE,IAAA,eAAAC,EAAAH,GACA,IAAAI,EAA0B,qBAE1BC,EAAoC,2CACpCC,EAA4B,mCAK5BC,EAA8C,mFAC9CC,EAAsC,gEACtCC,EAA4C,6EAC5CC,EAA4C,6EAC5CC,EAA0C,yEAC1CC,EAAiC,sDACjCC,EAAmC,0DACnCC,EAAkC,wDAClCC,EAAiE,0DACjEC,EAAyC,uEACzCC,EAAuC,mEACvCC,EAAqC,8DACrCC,EAAqC,wDACrCC,EAAsC,kEACtCC,EAA0C,2EAC1CC,EAAsD,2FACtDC,EAAoD,yFACpDC,EAA2C,yEAC3CC,EAAyC,qEACzCC,EAA6C,6EAC7CC,EAAkC,sDAClCC,EAAuC,iEACvCb,EAA+D,wDAC/Dc,EAA+C,kFAC/CC,EAAuC,iEACvCd,EAA+C,qEAC/Ce,EAAqC,gDACrCC,EAAqC,oDAM9B,MAAM9B,EAAgB,CAAC,CAAE,OAAA+B,CAAO,IAAyB,CAC9D,MAAMC,EAAY,IAAI,YAEtBA,EACG,KAEC,cAAY,0BAA0B,EACvC,gBAAgBD,EAAO,aAAa,EAEvC,KAAM,CAAE,MAAAE,CAAM,EAAIF,EAKlB,OAFAC,EAAU,YAAS,uBAAoBD,CAAM,KAAG,wBAAqBA,CAAM,CAAC,EAEpEE,EAAO,CACb,KAAK,uBAAqB,SACxBD,EAAU,YACR,wBAAqB,KACrB,yBAAsB,KACtB,6BAA0B,KAC1B,4BAAyBD,EAAO,2BAA2B,KAC3D,+BAA4B,KAC5B,+BAA4B,KAC5B,oBAAiB,KACjB,sBAAmBA,EAAO,UAAU,KACpC,qBAAkB,KAClB,6BAA0B,KAC1B,EAAAG,oBAA2B,KAC3B,yBAAsB,KACtB,0BAAuB,KACvB,wBAAqB,KACrB,yCAAsC,CACxC,EACA,MACF,KAAK,uBAAqB,OACxBF,EAAU,YACR,wBAAqB,KACrB,6BAA0B,KAC1B,0BAAuB,KACvB,EAAAG,oBAAyB,KACzB,qBAAkB,KAClB,uCAAoC,KACpC,gCAA6B,KAC7B,4BAAyB,KACzB,0BAAuB,KACvB,kCAA+B,KAC/B,8BAA2B,KAC3B,kCAA+B,CACjC,EACA,MACF,KAAK,uBAAqB,WACxBH,EAAU,YACR,wBAAqB,KACrB,iCAA8B,CAChC,EACA,MACF,QAAS,CAEP,MAAMI,EAAyBH,CAEjC,CACF,CAEA,OAAOD,CACT",
6
- "names": ["di_exports", "__export", "makeContainer", "__toCommonJS", "import_inversify", "import_configModuleFactory", "import_configTypes", "import_accountOwnershipModuleFactory", "import_calldataModuleFactory", "import_dynamicNetworkModuleFactory", "import_externalPluginModuleFactory", "import_gatedSigningModuleFactory", "import_nftModuleFactory", "import_proxyModuleFactory", "import_safeModuleFactory", "import_tokenModuleFactory", "import_trustedNameModuleFactory", "import_typedDataModuleFactory", "import_uniswapModuleFactory", "import_pkiModuleFactory", "import_reporterModuleFactory", "import_signReporterModuleFactory", "import_ethereumTransactionCheckModuleFactory", "import_solanaTransactionCheckModuleFactory", "import_altResolutionModuleFactory", "import_enumVariantModuleFactory", "import_instructionInfoModuleFactory", "import_lifiModuleFactory", "import_ownerInfoModuleFactory", "import_tokenAccountStateModuleFactory", "import_tokenInfoModuleFactory", "import_ContextModuleChainID", "import_networkModuleFactory", "config", "container", "chain", "ethereumTokenModuleFactory", "solanaTokenModuleFactory", "exhaustiveCheck"]
4
+ "sourcesContent": ["import { type LoggerPublisherService } from \"@ledgerhq/device-management-kit\";\nimport { Container } from \"inversify\";\n\nimport { configModuleFactory } from \"@/config/di/configModuleFactory\";\nimport { configTypes } from \"@/config/di/configTypes\";\nimport {\n type ContextModuleLoaderConfig,\n type ContextModuleServiceConfig,\n} from \"@/config/model/ContextModuleConfig\";\nimport { accountOwnershipModuleFactory } from \"@/modules/concordium/account-ownership/di/accountOwnershipModuleFactory\";\nimport { calldataModuleFactory } from \"@/modules/ethereum/calldata/di/calldataModuleFactory\";\nimport { dynamicNetworkModuleFactory } from \"@/modules/ethereum/dynamic-network/di/dynamicNetworkModuleFactory\";\nimport { externalPluginModuleFactory } from \"@/modules/ethereum/external-plugin/di/externalPluginModuleFactory\";\nimport { gatedSigningModuleFactory } from \"@/modules/ethereum/gated-signing/di/gatedSigningModuleFactory\";\nimport { nftModuleFactory } from \"@/modules/ethereum/nft/di/nftModuleFactory\";\nimport { proxyModuleFactory } from \"@/modules/ethereum/proxy/di/proxyModuleFactory\";\nimport { safeModuleFactory } from \"@/modules/ethereum/safe/di/safeModuleFactory\";\nimport { tokenModuleFactory as ethereumTokenModuleFactory } from \"@/modules/ethereum/token/di/tokenModuleFactory\";\nimport { trustedNameModuleFactory } from \"@/modules/ethereum/trusted-name/di/trustedNameModuleFactory\";\nimport { typedDataModuleFactory } from \"@/modules/ethereum/typed-data/di/typedDataModuleFactory\";\nimport { uniswapModuleFactory } from \"@/modules/ethereum/uniswap/di/uniswapModuleFactory\";\nimport { nanoPkiModuleFactory } from \"@/modules/multichain/pki/di/pkiModuleFactory\";\nimport { reporterModuleFactory } from \"@/modules/multichain/reporter/di/reporterModuleFactory\";\nimport { signReporterModuleFactory } from \"@/modules/multichain/sign-reporter/di/signReporterModuleFactory\";\nimport { ethereumTransactionCheckModuleFactory } from \"@/modules/multichain/transaction-check/di/ethereumTransactionCheckModuleFactory\";\nimport { solanaTransactionCheckModuleFactory } from \"@/modules/multichain/transaction-check/di/solanaTransactionCheckModuleFactory\";\nimport { altResolutionModuleFactory } from \"@/modules/solana/alt-resolution/di/altResolutionModuleFactory\";\nimport { enumVariantModuleFactory } from \"@/modules/solana/enum-variant/di/enumVariantModuleFactory\";\nimport { instructionInfoModuleFactory } from \"@/modules/solana/instruction-info/di/instructionInfoModuleFactory\";\nimport { lifiModuleFactory } from \"@/modules/solana/lifi/di/lifiModuleFactory\";\nimport { ownerInfoModuleFactory } from \"@/modules/solana/owner-info/di/ownerInfoModuleFactory\";\nimport { tokenModuleFactory as solanaTokenModuleFactory } from \"@/modules/solana/token/di/tokenModuleFactory\";\nimport { tokenAccountStateModuleFactory } from \"@/modules/solana/token-account-state/di/tokenAccountStateModuleFactory\";\nimport { tokenInfoModuleFactory } from \"@/modules/solana/token-info/di/tokenInfoModuleFactory\";\nimport { solanaTrustedNameModuleFactory } from \"@/modules/solana/trusted-name/di/trustedNameModuleFactory\";\nimport { tokenModuleFactory as tronTokenModuleFactory } from \"@/modules/tron/token/di/tokenModuleFactory\";\nimport { ContextModuleChainID } from \"@/shared/domain/ContextModuleChainID\";\nimport { networkModuleFactory } from \"@/shared/network/di/networkModuleFactory\";\n\ntype MakeContainerArgs = {\n config: ContextModuleServiceConfig & ContextModuleLoaderConfig;\n};\n\nexport const makeContainer = ({ config }: MakeContainerArgs) => {\n const container = new Container();\n\n container\n .bind<\n (tag: string) => LoggerPublisherService\n >(configTypes.ContextModuleLoggerFactory)\n .toConstantValue(config.loggerFactory);\n\n const { chain } = config;\n\n // infrastructure modules needed by all chains\n container.loadSync(configModuleFactory(config), networkModuleFactory(config));\n\n switch (chain) {\n case ContextModuleChainID.Ethereum:\n container.loadSync(\n nanoPkiModuleFactory(),\n reporterModuleFactory(),\n signReporterModuleFactory(),\n trustedNameModuleFactory(config.customTrustedNameDataSource),\n externalPluginModuleFactory(),\n dynamicNetworkModuleFactory(),\n nftModuleFactory(),\n proxyModuleFactory(config.datasource),\n safeModuleFactory(),\n gatedSigningModuleFactory(),\n ethereumTokenModuleFactory(),\n calldataModuleFactory(),\n typedDataModuleFactory(),\n uniswapModuleFactory(),\n ethereumTransactionCheckModuleFactory(),\n );\n break;\n case ContextModuleChainID.Solana:\n container.loadSync(\n nanoPkiModuleFactory(),\n signReporterModuleFactory(),\n ownerInfoModuleFactory(),\n solanaTokenModuleFactory(),\n lifiModuleFactory(),\n solanaTransactionCheckModuleFactory(),\n instructionInfoModuleFactory(),\n enumVariantModuleFactory(),\n tokenInfoModuleFactory(),\n tokenAccountStateModuleFactory(),\n altResolutionModuleFactory(),\n solanaTrustedNameModuleFactory(),\n );\n break;\n case ContextModuleChainID.Concordium:\n container.loadSync(\n nanoPkiModuleFactory(),\n accountOwnershipModuleFactory(),\n );\n break;\n case ContextModuleChainID.Tron:\n // No PKI module: the TRC10 descriptor is checked against a key built into\n // the Tron app, so it carries no certificate.\n container.loadSync(tronTokenModuleFactory());\n break;\n default: {\n // ensure exhaustive check at compile time when new chains are added\n const exhaustiveCheck: never = chain;\n void exhaustiveCheck;\n }\n }\n\n return container;\n};\n"],
5
+ "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,mBAAAE,IAAA,eAAAC,EAAAH,GACA,IAAAI,EAA0B,qBAE1BC,EAAoC,2CACpCC,EAA4B,mCAK5BC,EAA8C,mFAC9CC,EAAsC,gEACtCC,EAA4C,6EAC5CC,EAA4C,6EAC5CC,EAA0C,yEAC1CC,EAAiC,sDACjCC,EAAmC,0DACnCC,EAAkC,wDAClCC,EAAiE,0DACjEC,EAAyC,uEACzCC,EAAuC,mEACvCC,EAAqC,8DACrCC,EAAqC,wDACrCC,EAAsC,kEACtCC,EAA0C,2EAC1CC,EAAsD,2FACtDC,EAAoD,yFACpDC,EAA2C,yEAC3CC,EAAyC,qEACzCC,EAA6C,6EAC7CC,EAAkC,sDAClCC,EAAuC,iEACvCb,EAA+D,wDAC/Dc,EAA+C,kFAC/CC,EAAuC,iEACvCd,EAA+C,qEAC/CD,EAA6D,sDAC7DgB,EAAqC,gDACrCC,EAAqC,oDAM9B,MAAM9B,EAAgB,CAAC,CAAE,OAAA+B,CAAO,IAAyB,CAC9D,MAAMC,EAAY,IAAI,YAEtBA,EACG,KAEC,cAAY,0BAA0B,EACvC,gBAAgBD,EAAO,aAAa,EAEvC,KAAM,CAAE,MAAAE,CAAM,EAAIF,EAKlB,OAFAC,EAAU,YAAS,uBAAoBD,CAAM,KAAG,wBAAqBA,CAAM,CAAC,EAEpEE,EAAO,CACb,KAAK,uBAAqB,SACxBD,EAAU,YACR,wBAAqB,KACrB,yBAAsB,KACtB,6BAA0B,KAC1B,4BAAyBD,EAAO,2BAA2B,KAC3D,+BAA4B,KAC5B,+BAA4B,KAC5B,oBAAiB,KACjB,sBAAmBA,EAAO,UAAU,KACpC,qBAAkB,KAClB,6BAA0B,KAC1B,EAAAG,oBAA2B,KAC3B,yBAAsB,KACtB,0BAAuB,KACvB,wBAAqB,KACrB,yCAAsC,CACxC,EACA,MACF,KAAK,uBAAqB,OACxBF,EAAU,YACR,wBAAqB,KACrB,6BAA0B,KAC1B,0BAAuB,KACvB,EAAAG,oBAAyB,KACzB,qBAAkB,KAClB,uCAAoC,KACpC,gCAA6B,KAC7B,4BAAyB,KACzB,0BAAuB,KACvB,kCAA+B,KAC/B,8BAA2B,KAC3B,kCAA+B,CACjC,EACA,MACF,KAAK,uBAAqB,WACxBH,EAAU,YACR,wBAAqB,KACrB,iCAA8B,CAChC,EACA,MACF,KAAK,uBAAqB,KAGxBA,EAAU,YAAS,EAAAI,oBAAuB,CAAC,EAC3C,MACF,QAAS,CAEP,MAAMC,EAAyBJ,CAEjC,CACF,CAEA,OAAOD,CACT",
6
+ "names": ["di_exports", "__export", "makeContainer", "__toCommonJS", "import_inversify", "import_configModuleFactory", "import_configTypes", "import_accountOwnershipModuleFactory", "import_calldataModuleFactory", "import_dynamicNetworkModuleFactory", "import_externalPluginModuleFactory", "import_gatedSigningModuleFactory", "import_nftModuleFactory", "import_proxyModuleFactory", "import_safeModuleFactory", "import_tokenModuleFactory", "import_trustedNameModuleFactory", "import_typedDataModuleFactory", "import_uniswapModuleFactory", "import_pkiModuleFactory", "import_reporterModuleFactory", "import_signReporterModuleFactory", "import_ethereumTransactionCheckModuleFactory", "import_solanaTransactionCheckModuleFactory", "import_altResolutionModuleFactory", "import_enumVariantModuleFactory", "import_instructionInfoModuleFactory", "import_lifiModuleFactory", "import_ownerInfoModuleFactory", "import_tokenAccountStateModuleFactory", "import_tokenInfoModuleFactory", "import_ContextModuleChainID", "import_networkModuleFactory", "config", "container", "chain", "ethereumTokenModuleFactory", "solanaTokenModuleFactory", "tronTokenModuleFactory", "exhaustiveCheck"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";var C=Object.defineProperty;var n=Object.getOwnPropertyDescriptor;var l=Object.getOwnPropertyNames;var d=Object.prototype.hasOwnProperty;var p=(t,e,f,m)=>{if(e&&typeof e=="object"||typeof e=="function")for(let x of l(e))!d.call(t,x)&&x!==f&&C(t,x,{get:()=>e[x],enumerable:!(m=n(e,x))||m.enumerable});return t},r=(t,e,f)=>(p(t,e,"default"),f&&p(f,e,"default"));var M=t=>p(C({},"__esModule",{value:!0}),t);var o={};module.exports=M(o);r(o,require("./ContextModule"),module.exports);r(o,require("./ContextModuleBuilder"),module.exports);r(o,require("./DefaultContextModule"),module.exports);r(o,require("./modules/concordium/account-ownership/data/AccountOwnershipDataSource"),module.exports);r(o,require("./modules/concordium/account-ownership/data/AccountOwnershipError"),module.exports);r(o,require("./modules/concordium/account-ownership/data/HttpAccountOwnershipDataSource"),module.exports);r(o,require("./modules/concordium/account-ownership/domain/AccountOwnershipContextLoader"),module.exports);r(o,require("./modules/ethereum/calldata/data/CalldataDescriptorDataSource"),module.exports);r(o,require("./modules/ethereum/calldata/data/HttpCalldataDescriptorDataSource"),module.exports);r(o,require("./modules/ethereum/calldata/domain/CalldataContextLoader"),module.exports);r(o,require("./modules/ethereum/dynamic-network/data/DynamicNetworkDataSource"),module.exports);r(o,require("./modules/ethereum/dynamic-network/data/HttpDynamicNetworkDataSource"),module.exports);r(o,require("./modules/ethereum/dynamic-network/domain/DynamicNetworkContextLoader"),module.exports);r(o,require("./modules/ethereum/dynamic-network/model/DynamicNetworkConfiguration"),module.exports);r(o,require("./modules/ethereum/external-plugin/data/ExternalPluginDataSource"),module.exports);r(o,require("./modules/ethereum/external-plugin/data/HttpExternalPluginDataSource"),module.exports);r(o,require("./modules/ethereum/external-plugin/domain/ExternalPluginContextLoader"),module.exports);r(o,require("./modules/ethereum/gated-signing/data/GatedDescriptorDataSource"),module.exports);r(o,require("./modules/ethereum/gated-signing/data/HttpGatedDescriptorDataSource"),module.exports);r(o,require("./modules/ethereum/gated-signing/domain/GatedSigningContextLoader"),module.exports);r(o,require("./modules/ethereum/gated-signing/domain/GatedSigningTypedDataContextLoader"),module.exports);r(o,require("./modules/ethereum/model/EthereumClearSignContext"),module.exports);r(o,require("./modules/ethereum/model/TypedDataClearSignContext"),module.exports);r(o,require("./modules/ethereum/model/TypedDataContext"),module.exports);r(o,require("./modules/ethereum/nft/data/HttpNftDataSource"),module.exports);r(o,require("./modules/ethereum/nft/data/NftDataSource"),module.exports);r(o,require("./modules/ethereum/nft/domain/NftContextFieldLoader"),module.exports);r(o,require("./modules/ethereum/nft/domain/NftContextLoader"),module.exports);r(o,require("./modules/ethereum/proxy/data/HttpProxyDataSource"),module.exports);r(o,require("./modules/ethereum/proxy/data/HttpSafeProxyDataSource"),module.exports);r(o,require("./modules/ethereum/proxy/data/ProxyDataSource"),module.exports);r(o,require("./modules/ethereum/proxy/domain/ProxyContextFieldLoader"),module.exports);r(o,require("./modules/ethereum/token/data/HttpTokenDataSource"),module.exports);r(o,require("./modules/ethereum/token/data/TokenDataSource"),module.exports);r(o,require("./modules/ethereum/token/domain/TokenContextFieldLoader"),module.exports);r(o,require("./modules/ethereum/token/domain/TokenContextLoader"),module.exports);r(o,require("./modules/ethereum/trusted-name/data/HttpTrustedNameDataSource"),module.exports);r(o,require("./modules/ethereum/trusted-name/data/TrustedNameDataSource"),module.exports);r(o,require("./modules/ethereum/trusted-name/domain/TrustedNameContextFieldLoader"),module.exports);r(o,require("./modules/ethereum/trusted-name/domain/TrustedNameContextLoader"),module.exports);r(o,require("./modules/ethereum/typed-data/data/HttpTypedDataDataSource"),module.exports);r(o,require("./modules/ethereum/typed-data/data/TypedDataDataSource"),module.exports);r(o,require("./modules/ethereum/typed-data/domain/DefaultTypedDataContextLoader"),module.exports);r(o,require("./modules/ethereum/typed-data/domain/TypedDataContextLoader"),module.exports);r(o,require("./modules/ethereum/typed-data/utils/getSchemaHash"),module.exports);r(o,require("./modules/ethereum/uniswap/data/AbiDecoderDataSource"),module.exports);r(o,require("./modules/ethereum/uniswap/data/CommandDecoderDataSource"),module.exports);r(o,require("./modules/ethereum/uniswap/data/DefaultCommandDecoderDataSource"),module.exports);r(o,require("./modules/ethereum/uniswap/data/EthersAbiDecoderDataSource"),module.exports);r(o,require("./modules/ethereum/uniswap/domain/UniswapContextLoader"),module.exports);r(o,require("./modules/multichain/pki/data/HttpPkiCertificateDataSource"),module.exports);r(o,require("./modules/multichain/pki/data/PkiCertificateDataSource"),module.exports);r(o,require("./modules/multichain/pki/domain/DefaultPkiCertificateLoader"),module.exports);r(o,require("./modules/multichain/pki/domain/PkiCertificateLoader"),module.exports);r(o,require("./modules/multichain/pki/model/KeyId"),module.exports);r(o,require("./modules/multichain/pki/model/KeyUsage"),module.exports);r(o,require("./modules/multichain/pki/model/PkiCertificate"),module.exports);r(o,require("./modules/multichain/pki/model/PkiCertificateInfo"),module.exports);r(o,require("./modules/multichain/reporter/data/BlindSigningReporterDatasource"),module.exports);r(o,require("./modules/multichain/reporter/data/HttpBlindSigningReporterDatasource"),module.exports);r(o,require("./modules/multichain/reporter/domain/BlindSigningReporter"),module.exports);r(o,require("./modules/multichain/reporter/domain/DefaultBlindSigningReporter"),module.exports);r(o,require("./modules/multichain/reporter/model/BlindSigningEvent"),module.exports);r(o,require("./modules/multichain/sign-reporter/model/SignReportParams"),module.exports);r(o,require("./modules/multichain/transaction-check/utils/constants"),module.exports);r(o,require("./modules/solana/alt-resolution/data/AltResolutionDataSource"),module.exports);r(o,require("./modules/solana/alt-resolution/data/HttpAltResolutionDataSource"),module.exports);r(o,require("./modules/solana/alt-resolution/domain/AltResolutionContextLoader"),module.exports);r(o,require("./modules/solana/enum-variant/domain/EnumVariantContextLoader"),module.exports);r(o,require("./modules/solana/instruction-info/data/HttpInstructionInfoDataSource"),module.exports);r(o,require("./modules/solana/instruction-info/data/InstructionInfoDataSource"),module.exports);r(o,require("./modules/solana/instruction-info/domain/InstructionInfoContextLoader"),module.exports);r(o,require("./modules/solana/model/SolanaClearSignContext"),module.exports);r(o,require("./modules/solana/model/SolanaContextTypes"),module.exports);r(o,require("./modules/solana/model/SolanaTransactionScanChainId"),module.exports);r(o,require("./modules/solana/owner-info/data/HttpOwnerInfoDataSource"),module.exports);r(o,require("./modules/solana/owner-info/data/OwnerInfoDataSource"),module.exports);r(o,require("./modules/solana/owner-info/domain/OwnerInfoContextLoader"),module.exports);r(o,require("./modules/solana/owner-info/domain/solanaContextTypes"),module.exports);r(o,require("./modules/solana/token-account-state/data/HttpTokenAccountStateDataSource"),module.exports);r(o,require("./modules/solana/token-account-state/data/TokenAccountStateDataSource"),module.exports);r(o,require("./modules/solana/token-account-state/domain/TokenAccountStateContextLoader"),module.exports);r(o,require("./modules/solana/token-info/data/HttpTokenInfoDataSource"),module.exports);r(o,require("./modules/solana/token-info/data/TokenInfoDataSource"),module.exports);r(o,require("./modules/solana/token-info/domain/TokenInfoContextLoader"),module.exports);r(o,require("./modules/solana/trusted-name/data/HttpTrustedNameDataSource"),module.exports);r(o,require("./modules/solana/trusted-name/data/TrustedNameDataSource"),module.exports);r(o,require("./modules/solana/trusted-name/domain/TrustedNameContextLoader"),module.exports);r(o,require("./shared/domain/ContextFieldLoader"),module.exports);r(o,require("./shared/domain/ContextLoader"),module.exports);r(o,require("./shared/domain/ContextModuleChainID"),module.exports);r(o,require("./shared/model/BlindSigningModelId"),module.exports);r(o,require("./shared/model/ClearSignContext"),module.exports);r(o,require("./shared/model/GenericPath"),module.exports);r(o,require("./shared/model/TransactionSubset"),module.exports);0&&(module.exports={...require("./ContextModule"),...require("./ContextModuleBuilder"),...require("./DefaultContextModule"),...require("./modules/concordium/account-ownership/data/AccountOwnershipDataSource"),...require("./modules/concordium/account-ownership/data/AccountOwnershipError"),...require("./modules/concordium/account-ownership/data/HttpAccountOwnershipDataSource"),...require("./modules/concordium/account-ownership/domain/AccountOwnershipContextLoader"),...require("./modules/ethereum/calldata/data/CalldataDescriptorDataSource"),...require("./modules/ethereum/calldata/data/HttpCalldataDescriptorDataSource"),...require("./modules/ethereum/calldata/domain/CalldataContextLoader"),...require("./modules/ethereum/dynamic-network/data/DynamicNetworkDataSource"),...require("./modules/ethereum/dynamic-network/data/HttpDynamicNetworkDataSource"),...require("./modules/ethereum/dynamic-network/domain/DynamicNetworkContextLoader"),...require("./modules/ethereum/dynamic-network/model/DynamicNetworkConfiguration"),...require("./modules/ethereum/external-plugin/data/ExternalPluginDataSource"),...require("./modules/ethereum/external-plugin/data/HttpExternalPluginDataSource"),...require("./modules/ethereum/external-plugin/domain/ExternalPluginContextLoader"),...require("./modules/ethereum/gated-signing/data/GatedDescriptorDataSource"),...require("./modules/ethereum/gated-signing/data/HttpGatedDescriptorDataSource"),...require("./modules/ethereum/gated-signing/domain/GatedSigningContextLoader"),...require("./modules/ethereum/gated-signing/domain/GatedSigningTypedDataContextLoader"),...require("./modules/ethereum/model/EthereumClearSignContext"),...require("./modules/ethereum/model/TypedDataClearSignContext"),...require("./modules/ethereum/model/TypedDataContext"),...require("./modules/ethereum/nft/data/HttpNftDataSource"),...require("./modules/ethereum/nft/data/NftDataSource"),...require("./modules/ethereum/nft/domain/NftContextFieldLoader"),...require("./modules/ethereum/nft/domain/NftContextLoader"),...require("./modules/ethereum/proxy/data/HttpProxyDataSource"),...require("./modules/ethereum/proxy/data/HttpSafeProxyDataSource"),...require("./modules/ethereum/proxy/data/ProxyDataSource"),...require("./modules/ethereum/proxy/domain/ProxyContextFieldLoader"),...require("./modules/ethereum/token/data/HttpTokenDataSource"),...require("./modules/ethereum/token/data/TokenDataSource"),...require("./modules/ethereum/token/domain/TokenContextFieldLoader"),...require("./modules/ethereum/token/domain/TokenContextLoader"),...require("./modules/ethereum/trusted-name/data/HttpTrustedNameDataSource"),...require("./modules/ethereum/trusted-name/data/TrustedNameDataSource"),...require("./modules/ethereum/trusted-name/domain/TrustedNameContextFieldLoader"),...require("./modules/ethereum/trusted-name/domain/TrustedNameContextLoader"),...require("./modules/ethereum/typed-data/data/HttpTypedDataDataSource"),...require("./modules/ethereum/typed-data/data/TypedDataDataSource"),...require("./modules/ethereum/typed-data/domain/DefaultTypedDataContextLoader"),...require("./modules/ethereum/typed-data/domain/TypedDataContextLoader"),...require("./modules/ethereum/typed-data/utils/getSchemaHash"),...require("./modules/ethereum/uniswap/data/AbiDecoderDataSource"),...require("./modules/ethereum/uniswap/data/CommandDecoderDataSource"),...require("./modules/ethereum/uniswap/data/DefaultCommandDecoderDataSource"),...require("./modules/ethereum/uniswap/data/EthersAbiDecoderDataSource"),...require("./modules/ethereum/uniswap/domain/UniswapContextLoader"),...require("./modules/multichain/pki/data/HttpPkiCertificateDataSource"),...require("./modules/multichain/pki/data/PkiCertificateDataSource"),...require("./modules/multichain/pki/domain/DefaultPkiCertificateLoader"),...require("./modules/multichain/pki/domain/PkiCertificateLoader"),...require("./modules/multichain/pki/model/KeyId"),...require("./modules/multichain/pki/model/KeyUsage"),...require("./modules/multichain/pki/model/PkiCertificate"),...require("./modules/multichain/pki/model/PkiCertificateInfo"),...require("./modules/multichain/reporter/data/BlindSigningReporterDatasource"),...require("./modules/multichain/reporter/data/HttpBlindSigningReporterDatasource"),...require("./modules/multichain/reporter/domain/BlindSigningReporter"),...require("./modules/multichain/reporter/domain/DefaultBlindSigningReporter"),...require("./modules/multichain/reporter/model/BlindSigningEvent"),...require("./modules/multichain/sign-reporter/model/SignReportParams"),...require("./modules/multichain/transaction-check/utils/constants"),...require("./modules/solana/alt-resolution/data/AltResolutionDataSource"),...require("./modules/solana/alt-resolution/data/HttpAltResolutionDataSource"),...require("./modules/solana/alt-resolution/domain/AltResolutionContextLoader"),...require("./modules/solana/enum-variant/domain/EnumVariantContextLoader"),...require("./modules/solana/instruction-info/data/HttpInstructionInfoDataSource"),...require("./modules/solana/instruction-info/data/InstructionInfoDataSource"),...require("./modules/solana/instruction-info/domain/InstructionInfoContextLoader"),...require("./modules/solana/model/SolanaClearSignContext"),...require("./modules/solana/model/SolanaContextTypes"),...require("./modules/solana/model/SolanaTransactionScanChainId"),...require("./modules/solana/owner-info/data/HttpOwnerInfoDataSource"),...require("./modules/solana/owner-info/data/OwnerInfoDataSource"),...require("./modules/solana/owner-info/domain/OwnerInfoContextLoader"),...require("./modules/solana/owner-info/domain/solanaContextTypes"),...require("./modules/solana/token-account-state/data/HttpTokenAccountStateDataSource"),...require("./modules/solana/token-account-state/data/TokenAccountStateDataSource"),...require("./modules/solana/token-account-state/domain/TokenAccountStateContextLoader"),...require("./modules/solana/token-info/data/HttpTokenInfoDataSource"),...require("./modules/solana/token-info/data/TokenInfoDataSource"),...require("./modules/solana/token-info/domain/TokenInfoContextLoader"),...require("./modules/solana/trusted-name/data/HttpTrustedNameDataSource"),...require("./modules/solana/trusted-name/data/TrustedNameDataSource"),...require("./modules/solana/trusted-name/domain/TrustedNameContextLoader"),...require("./shared/domain/ContextFieldLoader"),...require("./shared/domain/ContextLoader"),...require("./shared/domain/ContextModuleChainID"),...require("./shared/model/BlindSigningModelId"),...require("./shared/model/ClearSignContext"),...require("./shared/model/GenericPath"),...require("./shared/model/TransactionSubset")});
1
+ "use strict";var C=Object.defineProperty;var n=Object.getOwnPropertyDescriptor;var l=Object.getOwnPropertyNames;var d=Object.prototype.hasOwnProperty;var p=(t,e,f,m)=>{if(e&&typeof e=="object"||typeof e=="function")for(let x of l(e))!d.call(t,x)&&x!==f&&C(t,x,{get:()=>e[x],enumerable:!(m=n(e,x))||m.enumerable});return t},r=(t,e,f)=>(p(t,e,"default"),f&&p(f,e,"default"));var M=t=>p(C({},"__esModule",{value:!0}),t);var o={};module.exports=M(o);r(o,require("./ContextModule"),module.exports);r(o,require("./ContextModuleBuilder"),module.exports);r(o,require("./DefaultContextModule"),module.exports);r(o,require("./modules/concordium/account-ownership/data/AccountOwnershipDataSource"),module.exports);r(o,require("./modules/concordium/account-ownership/data/AccountOwnershipError"),module.exports);r(o,require("./modules/concordium/account-ownership/data/HttpAccountOwnershipDataSource"),module.exports);r(o,require("./modules/concordium/account-ownership/domain/AccountOwnershipContextLoader"),module.exports);r(o,require("./modules/ethereum/calldata/data/CalldataDescriptorDataSource"),module.exports);r(o,require("./modules/ethereum/calldata/data/HttpCalldataDescriptorDataSource"),module.exports);r(o,require("./modules/ethereum/calldata/domain/CalldataContextLoader"),module.exports);r(o,require("./modules/ethereum/dynamic-network/data/DynamicNetworkDataSource"),module.exports);r(o,require("./modules/ethereum/dynamic-network/data/HttpDynamicNetworkDataSource"),module.exports);r(o,require("./modules/ethereum/dynamic-network/domain/DynamicNetworkContextLoader"),module.exports);r(o,require("./modules/ethereum/dynamic-network/model/DynamicNetworkConfiguration"),module.exports);r(o,require("./modules/ethereum/external-plugin/data/ExternalPluginDataSource"),module.exports);r(o,require("./modules/ethereum/external-plugin/data/HttpExternalPluginDataSource"),module.exports);r(o,require("./modules/ethereum/external-plugin/domain/ExternalPluginContextLoader"),module.exports);r(o,require("./modules/ethereum/gated-signing/data/GatedDescriptorDataSource"),module.exports);r(o,require("./modules/ethereum/gated-signing/data/HttpGatedDescriptorDataSource"),module.exports);r(o,require("./modules/ethereum/gated-signing/domain/GatedSigningContextLoader"),module.exports);r(o,require("./modules/ethereum/gated-signing/domain/GatedSigningTypedDataContextLoader"),module.exports);r(o,require("./modules/ethereum/model/EthereumClearSignContext"),module.exports);r(o,require("./modules/ethereum/model/TypedDataClearSignContext"),module.exports);r(o,require("./modules/ethereum/model/TypedDataContext"),module.exports);r(o,require("./modules/ethereum/nft/data/HttpNftDataSource"),module.exports);r(o,require("./modules/ethereum/nft/data/NftDataSource"),module.exports);r(o,require("./modules/ethereum/nft/domain/NftContextFieldLoader"),module.exports);r(o,require("./modules/ethereum/nft/domain/NftContextLoader"),module.exports);r(o,require("./modules/ethereum/proxy/data/HttpProxyDataSource"),module.exports);r(o,require("./modules/ethereum/proxy/data/HttpSafeProxyDataSource"),module.exports);r(o,require("./modules/ethereum/proxy/data/ProxyDataSource"),module.exports);r(o,require("./modules/ethereum/proxy/domain/ProxyContextFieldLoader"),module.exports);r(o,require("./modules/ethereum/token/data/HttpTokenDataSource"),module.exports);r(o,require("./modules/ethereum/token/data/TokenDataSource"),module.exports);r(o,require("./modules/ethereum/token/domain/TokenContextFieldLoader"),module.exports);r(o,require("./modules/ethereum/token/domain/TokenContextLoader"),module.exports);r(o,require("./modules/ethereum/trusted-name/data/HttpTrustedNameDataSource"),module.exports);r(o,require("./modules/ethereum/trusted-name/data/TrustedNameDataSource"),module.exports);r(o,require("./modules/ethereum/trusted-name/domain/TrustedNameContextFieldLoader"),module.exports);r(o,require("./modules/ethereum/trusted-name/domain/TrustedNameContextLoader"),module.exports);r(o,require("./modules/ethereum/typed-data/data/HttpTypedDataDataSource"),module.exports);r(o,require("./modules/ethereum/typed-data/data/TypedDataDataSource"),module.exports);r(o,require("./modules/ethereum/typed-data/domain/DefaultTypedDataContextLoader"),module.exports);r(o,require("./modules/ethereum/typed-data/domain/TypedDataContextLoader"),module.exports);r(o,require("./modules/ethereum/typed-data/utils/getSchemaHash"),module.exports);r(o,require("./modules/ethereum/uniswap/data/AbiDecoderDataSource"),module.exports);r(o,require("./modules/ethereum/uniswap/data/CommandDecoderDataSource"),module.exports);r(o,require("./modules/ethereum/uniswap/data/DefaultCommandDecoderDataSource"),module.exports);r(o,require("./modules/ethereum/uniswap/data/EthersAbiDecoderDataSource"),module.exports);r(o,require("./modules/ethereum/uniswap/domain/UniswapContextLoader"),module.exports);r(o,require("./modules/multichain/pki/data/HttpPkiCertificateDataSource"),module.exports);r(o,require("./modules/multichain/pki/data/PkiCertificateDataSource"),module.exports);r(o,require("./modules/multichain/pki/domain/DefaultPkiCertificateLoader"),module.exports);r(o,require("./modules/multichain/pki/domain/PkiCertificateLoader"),module.exports);r(o,require("./modules/multichain/pki/model/KeyId"),module.exports);r(o,require("./modules/multichain/pki/model/KeyUsage"),module.exports);r(o,require("./modules/multichain/pki/model/PkiCertificate"),module.exports);r(o,require("./modules/multichain/pki/model/PkiCertificateInfo"),module.exports);r(o,require("./modules/multichain/reporter/data/BlindSigningReporterDatasource"),module.exports);r(o,require("./modules/multichain/reporter/data/HttpBlindSigningReporterDatasource"),module.exports);r(o,require("./modules/multichain/reporter/domain/BlindSigningReporter"),module.exports);r(o,require("./modules/multichain/reporter/domain/DefaultBlindSigningReporter"),module.exports);r(o,require("./modules/multichain/reporter/model/BlindSigningEvent"),module.exports);r(o,require("./modules/multichain/sign-reporter/model/SignReportParams"),module.exports);r(o,require("./modules/multichain/transaction-check/utils/constants"),module.exports);r(o,require("./modules/solana/alt-resolution/data/AltResolutionDataSource"),module.exports);r(o,require("./modules/solana/alt-resolution/data/HttpAltResolutionDataSource"),module.exports);r(o,require("./modules/solana/alt-resolution/domain/AltResolutionContextLoader"),module.exports);r(o,require("./modules/solana/enum-variant/domain/EnumVariantContextLoader"),module.exports);r(o,require("./modules/solana/instruction-info/data/HttpInstructionInfoDataSource"),module.exports);r(o,require("./modules/solana/instruction-info/data/InstructionInfoDataSource"),module.exports);r(o,require("./modules/solana/instruction-info/domain/InstructionInfoContextLoader"),module.exports);r(o,require("./modules/solana/model/SolanaClearSignContext"),module.exports);r(o,require("./modules/solana/model/SolanaContextTypes"),module.exports);r(o,require("./modules/solana/model/SolanaTransactionScanChainId"),module.exports);r(o,require("./modules/solana/owner-info/data/HttpOwnerInfoDataSource"),module.exports);r(o,require("./modules/solana/owner-info/data/OwnerInfoDataSource"),module.exports);r(o,require("./modules/solana/owner-info/domain/OwnerInfoContextLoader"),module.exports);r(o,require("./modules/solana/owner-info/domain/solanaContextTypes"),module.exports);r(o,require("./modules/solana/token-account-state/data/HttpTokenAccountStateDataSource"),module.exports);r(o,require("./modules/solana/token-account-state/data/TokenAccountStateDataSource"),module.exports);r(o,require("./modules/solana/token-account-state/domain/TokenAccountStateContextLoader"),module.exports);r(o,require("./modules/solana/token-info/data/HttpTokenInfoDataSource"),module.exports);r(o,require("./modules/solana/token-info/data/TokenInfoDataSource"),module.exports);r(o,require("./modules/solana/token-info/domain/TokenInfoContextLoader"),module.exports);r(o,require("./modules/solana/trusted-name/data/HttpTrustedNameDataSource"),module.exports);r(o,require("./modules/solana/trusted-name/data/TrustedNameDataSource"),module.exports);r(o,require("./modules/solana/trusted-name/domain/TrustedNameContextLoader"),module.exports);r(o,require("./modules/tron/model/TronTransactionContext"),module.exports);r(o,require("./shared/domain/ContextFieldLoader"),module.exports);r(o,require("./shared/domain/ContextLoader"),module.exports);r(o,require("./shared/domain/ContextModuleChainID"),module.exports);r(o,require("./shared/model/BlindSigningModelId"),module.exports);r(o,require("./shared/model/ClearSignContext"),module.exports);r(o,require("./shared/model/GenericPath"),module.exports);r(o,require("./shared/model/TransactionSubset"),module.exports);0&&(module.exports={...require("./ContextModule"),...require("./ContextModuleBuilder"),...require("./DefaultContextModule"),...require("./modules/concordium/account-ownership/data/AccountOwnershipDataSource"),...require("./modules/concordium/account-ownership/data/AccountOwnershipError"),...require("./modules/concordium/account-ownership/data/HttpAccountOwnershipDataSource"),...require("./modules/concordium/account-ownership/domain/AccountOwnershipContextLoader"),...require("./modules/ethereum/calldata/data/CalldataDescriptorDataSource"),...require("./modules/ethereum/calldata/data/HttpCalldataDescriptorDataSource"),...require("./modules/ethereum/calldata/domain/CalldataContextLoader"),...require("./modules/ethereum/dynamic-network/data/DynamicNetworkDataSource"),...require("./modules/ethereum/dynamic-network/data/HttpDynamicNetworkDataSource"),...require("./modules/ethereum/dynamic-network/domain/DynamicNetworkContextLoader"),...require("./modules/ethereum/dynamic-network/model/DynamicNetworkConfiguration"),...require("./modules/ethereum/external-plugin/data/ExternalPluginDataSource"),...require("./modules/ethereum/external-plugin/data/HttpExternalPluginDataSource"),...require("./modules/ethereum/external-plugin/domain/ExternalPluginContextLoader"),...require("./modules/ethereum/gated-signing/data/GatedDescriptorDataSource"),...require("./modules/ethereum/gated-signing/data/HttpGatedDescriptorDataSource"),...require("./modules/ethereum/gated-signing/domain/GatedSigningContextLoader"),...require("./modules/ethereum/gated-signing/domain/GatedSigningTypedDataContextLoader"),...require("./modules/ethereum/model/EthereumClearSignContext"),...require("./modules/ethereum/model/TypedDataClearSignContext"),...require("./modules/ethereum/model/TypedDataContext"),...require("./modules/ethereum/nft/data/HttpNftDataSource"),...require("./modules/ethereum/nft/data/NftDataSource"),...require("./modules/ethereum/nft/domain/NftContextFieldLoader"),...require("./modules/ethereum/nft/domain/NftContextLoader"),...require("./modules/ethereum/proxy/data/HttpProxyDataSource"),...require("./modules/ethereum/proxy/data/HttpSafeProxyDataSource"),...require("./modules/ethereum/proxy/data/ProxyDataSource"),...require("./modules/ethereum/proxy/domain/ProxyContextFieldLoader"),...require("./modules/ethereum/token/data/HttpTokenDataSource"),...require("./modules/ethereum/token/data/TokenDataSource"),...require("./modules/ethereum/token/domain/TokenContextFieldLoader"),...require("./modules/ethereum/token/domain/TokenContextLoader"),...require("./modules/ethereum/trusted-name/data/HttpTrustedNameDataSource"),...require("./modules/ethereum/trusted-name/data/TrustedNameDataSource"),...require("./modules/ethereum/trusted-name/domain/TrustedNameContextFieldLoader"),...require("./modules/ethereum/trusted-name/domain/TrustedNameContextLoader"),...require("./modules/ethereum/typed-data/data/HttpTypedDataDataSource"),...require("./modules/ethereum/typed-data/data/TypedDataDataSource"),...require("./modules/ethereum/typed-data/domain/DefaultTypedDataContextLoader"),...require("./modules/ethereum/typed-data/domain/TypedDataContextLoader"),...require("./modules/ethereum/typed-data/utils/getSchemaHash"),...require("./modules/ethereum/uniswap/data/AbiDecoderDataSource"),...require("./modules/ethereum/uniswap/data/CommandDecoderDataSource"),...require("./modules/ethereum/uniswap/data/DefaultCommandDecoderDataSource"),...require("./modules/ethereum/uniswap/data/EthersAbiDecoderDataSource"),...require("./modules/ethereum/uniswap/domain/UniswapContextLoader"),...require("./modules/multichain/pki/data/HttpPkiCertificateDataSource"),...require("./modules/multichain/pki/data/PkiCertificateDataSource"),...require("./modules/multichain/pki/domain/DefaultPkiCertificateLoader"),...require("./modules/multichain/pki/domain/PkiCertificateLoader"),...require("./modules/multichain/pki/model/KeyId"),...require("./modules/multichain/pki/model/KeyUsage"),...require("./modules/multichain/pki/model/PkiCertificate"),...require("./modules/multichain/pki/model/PkiCertificateInfo"),...require("./modules/multichain/reporter/data/BlindSigningReporterDatasource"),...require("./modules/multichain/reporter/data/HttpBlindSigningReporterDatasource"),...require("./modules/multichain/reporter/domain/BlindSigningReporter"),...require("./modules/multichain/reporter/domain/DefaultBlindSigningReporter"),...require("./modules/multichain/reporter/model/BlindSigningEvent"),...require("./modules/multichain/sign-reporter/model/SignReportParams"),...require("./modules/multichain/transaction-check/utils/constants"),...require("./modules/solana/alt-resolution/data/AltResolutionDataSource"),...require("./modules/solana/alt-resolution/data/HttpAltResolutionDataSource"),...require("./modules/solana/alt-resolution/domain/AltResolutionContextLoader"),...require("./modules/solana/enum-variant/domain/EnumVariantContextLoader"),...require("./modules/solana/instruction-info/data/HttpInstructionInfoDataSource"),...require("./modules/solana/instruction-info/data/InstructionInfoDataSource"),...require("./modules/solana/instruction-info/domain/InstructionInfoContextLoader"),...require("./modules/solana/model/SolanaClearSignContext"),...require("./modules/solana/model/SolanaContextTypes"),...require("./modules/solana/model/SolanaTransactionScanChainId"),...require("./modules/solana/owner-info/data/HttpOwnerInfoDataSource"),...require("./modules/solana/owner-info/data/OwnerInfoDataSource"),...require("./modules/solana/owner-info/domain/OwnerInfoContextLoader"),...require("./modules/solana/owner-info/domain/solanaContextTypes"),...require("./modules/solana/token-account-state/data/HttpTokenAccountStateDataSource"),...require("./modules/solana/token-account-state/data/TokenAccountStateDataSource"),...require("./modules/solana/token-account-state/domain/TokenAccountStateContextLoader"),...require("./modules/solana/token-info/data/HttpTokenInfoDataSource"),...require("./modules/solana/token-info/data/TokenInfoDataSource"),...require("./modules/solana/token-info/domain/TokenInfoContextLoader"),...require("./modules/solana/trusted-name/data/HttpTrustedNameDataSource"),...require("./modules/solana/trusted-name/data/TrustedNameDataSource"),...require("./modules/solana/trusted-name/domain/TrustedNameContextLoader"),...require("./modules/tron/model/TronTransactionContext"),...require("./shared/domain/ContextFieldLoader"),...require("./shared/domain/ContextLoader"),...require("./shared/domain/ContextModuleChainID"),...require("./shared/model/BlindSigningModelId"),...require("./shared/model/ClearSignContext"),...require("./shared/model/GenericPath"),...require("./shared/model/TransactionSubset")});
2
2
  //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/index.ts"],
4
- "sourcesContent": ["export type {\n ContextModuleCalBranch,\n ContextModuleCalConfig,\n ContextModuleCalMode,\n ContextModuleConfig,\n ContextModuleDatasourceConfig,\n ContextModuleMetadataServiceConfig,\n ContextModuleReporterConfig,\n ContextModuleWeb3ChecksConfig,\n} from \"./config/model/ContextModuleConfig\";\nexport * from \"./ContextModule\";\nexport * from \"./ContextModuleBuilder\";\nexport * from \"./DefaultContextModule\";\nexport * from \"./modules/concordium/account-ownership/data/AccountOwnershipDataSource\";\nexport * from \"./modules/concordium/account-ownership/data/AccountOwnershipError\";\nexport * from \"./modules/concordium/account-ownership/data/HttpAccountOwnershipDataSource\";\nexport * from \"./modules/concordium/account-ownership/domain/AccountOwnershipContextLoader\";\nexport * from \"./modules/ethereum/calldata/data/CalldataDescriptorDataSource\";\nexport * from \"./modules/ethereum/calldata/data/HttpCalldataDescriptorDataSource\";\nexport * from \"./modules/ethereum/calldata/domain/CalldataContextLoader\";\nexport * from \"./modules/ethereum/dynamic-network/data/DynamicNetworkDataSource\";\nexport * from \"./modules/ethereum/dynamic-network/data/HttpDynamicNetworkDataSource\";\nexport * from \"./modules/ethereum/dynamic-network/domain/DynamicNetworkContextLoader\";\nexport * from \"./modules/ethereum/dynamic-network/model/DynamicNetworkConfiguration\";\nexport * from \"./modules/ethereum/external-plugin/data/ExternalPluginDataSource\";\nexport * from \"./modules/ethereum/external-plugin/data/HttpExternalPluginDataSource\";\nexport * from \"./modules/ethereum/external-plugin/domain/ExternalPluginContextLoader\";\nexport * from \"./modules/ethereum/gated-signing/data/GatedDescriptorDataSource\";\nexport * from \"./modules/ethereum/gated-signing/data/HttpGatedDescriptorDataSource\";\nexport * from \"./modules/ethereum/gated-signing/domain/GatedSigningContextLoader\";\nexport * from \"./modules/ethereum/gated-signing/domain/GatedSigningTypedDataContextLoader\";\nexport * from \"./modules/ethereum/model/EthereumClearSignContext\";\nexport * from \"./modules/ethereum/model/TypedDataClearSignContext\";\nexport * from \"./modules/ethereum/model/TypedDataContext\";\nexport * from \"./modules/ethereum/nft/data/HttpNftDataSource\";\nexport * from \"./modules/ethereum/nft/data/NftDataSource\";\nexport * from \"./modules/ethereum/nft/domain/NftContextFieldLoader\";\nexport * from \"./modules/ethereum/nft/domain/NftContextLoader\";\nexport * from \"./modules/ethereum/proxy/data/HttpProxyDataSource\";\nexport * from \"./modules/ethereum/proxy/data/HttpSafeProxyDataSource\";\nexport * from \"./modules/ethereum/proxy/data/ProxyDataSource\";\nexport * from \"./modules/ethereum/proxy/domain/ProxyContextFieldLoader\";\nexport * from \"./modules/ethereum/token/data/HttpTokenDataSource\";\nexport * from \"./modules/ethereum/token/data/TokenDataSource\";\nexport * from \"./modules/ethereum/token/domain/TokenContextFieldLoader\";\nexport * from \"./modules/ethereum/token/domain/TokenContextLoader\";\nexport * from \"./modules/ethereum/trusted-name/data/HttpTrustedNameDataSource\";\nexport * from \"./modules/ethereum/trusted-name/data/TrustedNameDataSource\";\nexport * from \"./modules/ethereum/trusted-name/domain/TrustedNameContextFieldLoader\";\nexport * from \"./modules/ethereum/trusted-name/domain/TrustedNameContextLoader\";\nexport * from \"./modules/ethereum/typed-data/data/HttpTypedDataDataSource\";\nexport * from \"./modules/ethereum/typed-data/data/TypedDataDataSource\";\nexport * from \"./modules/ethereum/typed-data/domain/DefaultTypedDataContextLoader\";\nexport * from \"./modules/ethereum/typed-data/domain/TypedDataContextLoader\";\nexport * from \"./modules/ethereum/typed-data/utils/getSchemaHash\";\nexport * from \"./modules/ethereum/uniswap/data/AbiDecoderDataSource\";\nexport * from \"./modules/ethereum/uniswap/data/CommandDecoderDataSource\";\nexport * from \"./modules/ethereum/uniswap/data/DefaultCommandDecoderDataSource\";\nexport * from \"./modules/ethereum/uniswap/data/EthersAbiDecoderDataSource\";\nexport * from \"./modules/ethereum/uniswap/domain/UniswapContextLoader\";\nexport * from \"./modules/multichain/pki/data/HttpPkiCertificateDataSource\";\nexport * from \"./modules/multichain/pki/data/PkiCertificateDataSource\";\nexport * from \"./modules/multichain/pki/domain/DefaultPkiCertificateLoader\";\nexport * from \"./modules/multichain/pki/domain/PkiCertificateLoader\";\nexport * from \"./modules/multichain/pki/model/KeyId\";\nexport * from \"./modules/multichain/pki/model/KeyUsage\";\nexport * from \"./modules/multichain/pki/model/PkiCertificate\";\nexport * from \"./modules/multichain/pki/model/PkiCertificateInfo\";\nexport * from \"./modules/multichain/reporter/data/BlindSigningReporterDatasource\";\nexport * from \"./modules/multichain/reporter/data/HttpBlindSigningReporterDatasource\";\nexport * from \"./modules/multichain/reporter/domain/BlindSigningReporter\";\nexport * from \"./modules/multichain/reporter/domain/DefaultBlindSigningReporter\";\nexport * from \"./modules/multichain/reporter/model/BlindSigningEvent\";\nexport * from \"./modules/multichain/sign-reporter/model/SignReportParams\";\nexport * from \"./modules/multichain/transaction-check/utils/constants\";\nexport * from \"./modules/solana/alt-resolution/data/AltResolutionDataSource\";\nexport * from \"./modules/solana/alt-resolution/data/HttpAltResolutionDataSource\";\nexport * from \"./modules/solana/alt-resolution/domain/AltResolutionContextLoader\";\nexport * from \"./modules/solana/enum-variant/domain/EnumVariantContextLoader\";\nexport * from \"./modules/solana/instruction-info/data/HttpInstructionInfoDataSource\";\nexport * from \"./modules/solana/instruction-info/data/InstructionInfoDataSource\";\nexport * from \"./modules/solana/instruction-info/domain/InstructionInfoContextLoader\";\nexport * from \"./modules/solana/model/SolanaClearSignContext\";\nexport * from \"./modules/solana/model/SolanaContextTypes\";\nexport * from \"./modules/solana/model/SolanaTransactionScanChainId\";\nexport * from \"./modules/solana/owner-info/data/HttpOwnerInfoDataSource\";\nexport * from \"./modules/solana/owner-info/data/OwnerInfoDataSource\";\nexport * from \"./modules/solana/owner-info/domain/OwnerInfoContextLoader\";\nexport * from \"./modules/solana/owner-info/domain/solanaContextTypes\";\nexport * from \"./modules/solana/token-account-state/data/HttpTokenAccountStateDataSource\";\nexport * from \"./modules/solana/token-account-state/data/TokenAccountStateDataSource\";\nexport * from \"./modules/solana/token-account-state/domain/TokenAccountStateContextLoader\";\nexport * from \"./modules/solana/token-info/data/HttpTokenInfoDataSource\";\nexport * from \"./modules/solana/token-info/data/TokenInfoDataSource\";\nexport * from \"./modules/solana/token-info/domain/TokenInfoContextLoader\";\nexport * from \"./modules/solana/trusted-name/data/HttpTrustedNameDataSource\";\nexport * from \"./modules/solana/trusted-name/data/TrustedNameDataSource\";\nexport * from \"./modules/solana/trusted-name/domain/TrustedNameContextLoader\";\nexport * from \"./shared/domain/ContextFieldLoader\";\nexport * from \"./shared/domain/ContextLoader\";\nexport * from \"./shared/domain/ContextModuleChainID\";\nexport * from \"./shared/model/BlindSigningModelId\";\nexport * from \"./shared/model/ClearSignContext\";\nexport * from \"./shared/model/GenericPath\";\nexport * from \"./shared/model/TransactionSubset\";\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["export type {\n ContextModuleCalBranch,\n ContextModuleCalConfig,\n ContextModuleCalMode,\n ContextModuleConfig,\n ContextModuleDatasourceConfig,\n ContextModuleMetadataServiceConfig,\n ContextModuleReporterConfig,\n ContextModuleWeb3ChecksConfig,\n} from \"./config/model/ContextModuleConfig\";\nexport * from \"./ContextModule\";\nexport * from \"./ContextModuleBuilder\";\nexport * from \"./DefaultContextModule\";\nexport * from \"./modules/concordium/account-ownership/data/AccountOwnershipDataSource\";\nexport * from \"./modules/concordium/account-ownership/data/AccountOwnershipError\";\nexport * from \"./modules/concordium/account-ownership/data/HttpAccountOwnershipDataSource\";\nexport * from \"./modules/concordium/account-ownership/domain/AccountOwnershipContextLoader\";\nexport * from \"./modules/ethereum/calldata/data/CalldataDescriptorDataSource\";\nexport * from \"./modules/ethereum/calldata/data/HttpCalldataDescriptorDataSource\";\nexport * from \"./modules/ethereum/calldata/domain/CalldataContextLoader\";\nexport * from \"./modules/ethereum/dynamic-network/data/DynamicNetworkDataSource\";\nexport * from \"./modules/ethereum/dynamic-network/data/HttpDynamicNetworkDataSource\";\nexport * from \"./modules/ethereum/dynamic-network/domain/DynamicNetworkContextLoader\";\nexport * from \"./modules/ethereum/dynamic-network/model/DynamicNetworkConfiguration\";\nexport * from \"./modules/ethereum/external-plugin/data/ExternalPluginDataSource\";\nexport * from \"./modules/ethereum/external-plugin/data/HttpExternalPluginDataSource\";\nexport * from \"./modules/ethereum/external-plugin/domain/ExternalPluginContextLoader\";\nexport * from \"./modules/ethereum/gated-signing/data/GatedDescriptorDataSource\";\nexport * from \"./modules/ethereum/gated-signing/data/HttpGatedDescriptorDataSource\";\nexport * from \"./modules/ethereum/gated-signing/domain/GatedSigningContextLoader\";\nexport * from \"./modules/ethereum/gated-signing/domain/GatedSigningTypedDataContextLoader\";\nexport * from \"./modules/ethereum/model/EthereumClearSignContext\";\nexport * from \"./modules/ethereum/model/TypedDataClearSignContext\";\nexport * from \"./modules/ethereum/model/TypedDataContext\";\nexport * from \"./modules/ethereum/nft/data/HttpNftDataSource\";\nexport * from \"./modules/ethereum/nft/data/NftDataSource\";\nexport * from \"./modules/ethereum/nft/domain/NftContextFieldLoader\";\nexport * from \"./modules/ethereum/nft/domain/NftContextLoader\";\nexport * from \"./modules/ethereum/proxy/data/HttpProxyDataSource\";\nexport * from \"./modules/ethereum/proxy/data/HttpSafeProxyDataSource\";\nexport * from \"./modules/ethereum/proxy/data/ProxyDataSource\";\nexport * from \"./modules/ethereum/proxy/domain/ProxyContextFieldLoader\";\nexport * from \"./modules/ethereum/token/data/HttpTokenDataSource\";\nexport * from \"./modules/ethereum/token/data/TokenDataSource\";\nexport * from \"./modules/ethereum/token/domain/TokenContextFieldLoader\";\nexport * from \"./modules/ethereum/token/domain/TokenContextLoader\";\nexport * from \"./modules/ethereum/trusted-name/data/HttpTrustedNameDataSource\";\nexport * from \"./modules/ethereum/trusted-name/data/TrustedNameDataSource\";\nexport * from \"./modules/ethereum/trusted-name/domain/TrustedNameContextFieldLoader\";\nexport * from \"./modules/ethereum/trusted-name/domain/TrustedNameContextLoader\";\nexport * from \"./modules/ethereum/typed-data/data/HttpTypedDataDataSource\";\nexport * from \"./modules/ethereum/typed-data/data/TypedDataDataSource\";\nexport * from \"./modules/ethereum/typed-data/domain/DefaultTypedDataContextLoader\";\nexport * from \"./modules/ethereum/typed-data/domain/TypedDataContextLoader\";\nexport * from \"./modules/ethereum/typed-data/utils/getSchemaHash\";\nexport * from \"./modules/ethereum/uniswap/data/AbiDecoderDataSource\";\nexport * from \"./modules/ethereum/uniswap/data/CommandDecoderDataSource\";\nexport * from \"./modules/ethereum/uniswap/data/DefaultCommandDecoderDataSource\";\nexport * from \"./modules/ethereum/uniswap/data/EthersAbiDecoderDataSource\";\nexport * from \"./modules/ethereum/uniswap/domain/UniswapContextLoader\";\nexport * from \"./modules/multichain/pki/data/HttpPkiCertificateDataSource\";\nexport * from \"./modules/multichain/pki/data/PkiCertificateDataSource\";\nexport * from \"./modules/multichain/pki/domain/DefaultPkiCertificateLoader\";\nexport * from \"./modules/multichain/pki/domain/PkiCertificateLoader\";\nexport * from \"./modules/multichain/pki/model/KeyId\";\nexport * from \"./modules/multichain/pki/model/KeyUsage\";\nexport * from \"./modules/multichain/pki/model/PkiCertificate\";\nexport * from \"./modules/multichain/pki/model/PkiCertificateInfo\";\nexport * from \"./modules/multichain/reporter/data/BlindSigningReporterDatasource\";\nexport * from \"./modules/multichain/reporter/data/HttpBlindSigningReporterDatasource\";\nexport * from \"./modules/multichain/reporter/domain/BlindSigningReporter\";\nexport * from \"./modules/multichain/reporter/domain/DefaultBlindSigningReporter\";\nexport * from \"./modules/multichain/reporter/model/BlindSigningEvent\";\nexport * from \"./modules/multichain/sign-reporter/model/SignReportParams\";\nexport * from \"./modules/multichain/transaction-check/utils/constants\";\nexport * from \"./modules/solana/alt-resolution/data/AltResolutionDataSource\";\nexport * from \"./modules/solana/alt-resolution/data/HttpAltResolutionDataSource\";\nexport * from \"./modules/solana/alt-resolution/domain/AltResolutionContextLoader\";\nexport * from \"./modules/solana/enum-variant/domain/EnumVariantContextLoader\";\nexport * from \"./modules/solana/instruction-info/data/HttpInstructionInfoDataSource\";\nexport * from \"./modules/solana/instruction-info/data/InstructionInfoDataSource\";\nexport * from \"./modules/solana/instruction-info/domain/InstructionInfoContextLoader\";\nexport * from \"./modules/solana/model/SolanaClearSignContext\";\nexport * from \"./modules/solana/model/SolanaContextTypes\";\nexport * from \"./modules/solana/model/SolanaTransactionScanChainId\";\nexport * from \"./modules/solana/owner-info/data/HttpOwnerInfoDataSource\";\nexport * from \"./modules/solana/owner-info/data/OwnerInfoDataSource\";\nexport * from \"./modules/solana/owner-info/domain/OwnerInfoContextLoader\";\nexport * from \"./modules/solana/owner-info/domain/solanaContextTypes\";\nexport * from \"./modules/solana/token-account-state/data/HttpTokenAccountStateDataSource\";\nexport * from \"./modules/solana/token-account-state/data/TokenAccountStateDataSource\";\nexport * from \"./modules/solana/token-account-state/domain/TokenAccountStateContextLoader\";\nexport * from \"./modules/solana/token-info/data/HttpTokenInfoDataSource\";\nexport * from \"./modules/solana/token-info/data/TokenInfoDataSource\";\nexport * from \"./modules/solana/token-info/domain/TokenInfoContextLoader\";\nexport * from \"./modules/solana/trusted-name/data/HttpTrustedNameDataSource\";\nexport * from \"./modules/solana/trusted-name/data/TrustedNameDataSource\";\nexport * from \"./modules/solana/trusted-name/domain/TrustedNameContextLoader\";\nexport * from \"./modules/tron/model/TronTransactionContext\";\nexport * from \"./shared/domain/ContextFieldLoader\";\nexport * from \"./shared/domain/ContextLoader\";\nexport * from \"./shared/domain/ContextModuleChainID\";\nexport * from \"./shared/model/BlindSigningModelId\";\nexport * from \"./shared/model/ClearSignContext\";\nexport * from \"./shared/model/GenericPath\";\nexport * from \"./shared/model/TransactionSubset\";\n"],
5
+ "mappings": "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",
6
6
  "names": ["src_exports", "__toCommonJS", "__reExport"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";var o=Object.defineProperty;var p=Object.getOwnPropertyDescriptor;var r=Object.getOwnPropertyNames;var a=Object.prototype.hasOwnProperty;var l=(n,e)=>{for(var t in e)o(n,t,{get:e[t],enumerable:!0})},s=(n,e,t,g)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of r(e))!a.call(n,i)&&i!==t&&o(n,i,{get:()=>e[i],enumerable:!(g=p(e,i))||g.enumerable});return n};var S=n=>s(o({},"__esModule",{value:!0}),n);var _={};l(_,{BlindSignReason:()=>y,BlindSigningMethod:()=>d,BlindSigningPlatform:()=>f,ClearSigningType:()=>c});module.exports=S(_);const d=Object.freeze({ETH_SIGN_TRANSACTION:"eth_signTransaction",ETH_SIGN_TYPED_DATA:"eth_signTypedData"}),y=Object.freeze({NO_CLEAR_SIGNING_CONTEXT:"no_clear_signing_context",DEVICE_REJECTED_CONTEXT:"device_rejected_context",UNRECOGNIZED_PROGRAM:"unrecognized_program"}),c=Object.freeze({BASIC:"basic",EIP7730:"eip7730"}),f=Object.freeze({DESKTOP:"desktop",MOBILE:"mobile"});0&&(module.exports={BlindSignReason,BlindSigningMethod,BlindSigningPlatform,ClearSigningType});
1
+ "use strict";var o=Object.defineProperty;var p=Object.getOwnPropertyDescriptor;var r=Object.getOwnPropertyNames;var a=Object.prototype.hasOwnProperty;var s=(n,e)=>{for(var i in e)o(n,i,{get:e[i],enumerable:!0})},S=(n,e,i,g)=>{if(e&&typeof e=="object"||typeof e=="function")for(let t of r(e))!a.call(n,t)&&t!==i&&o(n,t,{get:()=>e[t],enumerable:!(g=p(e,t))||g.enumerable});return n};var l=n=>S(o({},"__esModule",{value:!0}),n);var f={};s(f,{BlindSignReason:()=>c,BlindSigningMethod:()=>d,BlindSigningPlatform:()=>_,ClearSigningType:()=>y});module.exports=l(f);const d=Object.freeze({ETH_SIGN_TRANSACTION:"eth_signTransaction",ETH_SIGN_TYPED_DATA:"eth_signTypedData"}),c=Object.freeze({NO_CLEAR_SIGNING_CONTEXT:"no_clear_signing_context",DEVICE_REJECTED_CONTEXT:"device_rejected_context",UNRECOGNIZED_PROGRAM:"unrecognized_program",STALE_DESCRIPTOR:"stale_descriptor"}),y=Object.freeze({BASIC:"basic",EIP7730:"eip7730"}),_=Object.freeze({DESKTOP:"desktop",MOBILE:"mobile"});0&&(module.exports={BlindSignReason,BlindSigningMethod,BlindSigningPlatform,ClearSigningType});
2
2
  //# sourceMappingURL=BlindSigningEvent.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../src/modules/multichain/reporter/model/BlindSigningEvent.ts"],
4
- "sourcesContent": ["export const BlindSigningMethod = Object.freeze({\n ETH_SIGN_TRANSACTION: \"eth_signTransaction\",\n ETH_SIGN_TYPED_DATA: \"eth_signTypedData\",\n} as const);\nexport type BlindSigningMethod =\n (typeof BlindSigningMethod)[keyof typeof BlindSigningMethod];\n\nexport const BlindSignReason = Object.freeze({\n NO_CLEAR_SIGNING_CONTEXT: \"no_clear_signing_context\",\n DEVICE_REJECTED_CONTEXT: \"device_rejected_context\",\n UNRECOGNIZED_PROGRAM: \"unrecognized_program\",\n} as const);\nexport type BlindSignReason =\n (typeof BlindSignReason)[keyof typeof BlindSignReason];\n\nexport const ClearSigningType = Object.freeze({\n BASIC: \"basic\",\n EIP7730: \"eip7730\",\n} as const);\nexport type ClearSigningType =\n (typeof ClearSigningType)[keyof typeof ClearSigningType];\n\nexport const BlindSigningPlatform = Object.freeze({\n DESKTOP: \"desktop\",\n MOBILE: \"mobile\",\n} as const);\nexport type BlindSigningPlatform =\n (typeof BlindSigningPlatform)[keyof typeof BlindSigningPlatform];\n"],
5
- "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,qBAAAE,EAAA,uBAAAC,EAAA,yBAAAC,EAAA,qBAAAC,IAAA,eAAAC,EAAAN,GAAO,MAAMG,EAAqB,OAAO,OAAO,CAC9C,qBAAsB,sBACtB,oBAAqB,mBACvB,CAAU,EAIGD,EAAkB,OAAO,OAAO,CAC3C,yBAA0B,2BAC1B,wBAAyB,0BACzB,qBAAsB,sBACxB,CAAU,EAIGG,EAAmB,OAAO,OAAO,CAC5C,MAAO,QACP,QAAS,SACX,CAAU,EAIGD,EAAuB,OAAO,OAAO,CAChD,QAAS,UACT,OAAQ,QACV,CAAU",
4
+ "sourcesContent": ["export const BlindSigningMethod = Object.freeze({\n ETH_SIGN_TRANSACTION: \"eth_signTransaction\",\n ETH_SIGN_TYPED_DATA: \"eth_signTypedData\",\n} as const);\nexport type BlindSigningMethod =\n (typeof BlindSigningMethod)[keyof typeof BlindSigningMethod];\n\nexport const BlindSignReason = Object.freeze({\n NO_CLEAR_SIGNING_CONTEXT: \"no_clear_signing_context\",\n DEVICE_REJECTED_CONTEXT: \"device_rejected_context\",\n UNRECOGNIZED_PROGRAM: \"unrecognized_program\",\n STALE_DESCRIPTOR: \"stale_descriptor\",\n} as const);\nexport type BlindSignReason =\n (typeof BlindSignReason)[keyof typeof BlindSignReason];\n\nexport const ClearSigningType = Object.freeze({\n BASIC: \"basic\",\n EIP7730: \"eip7730\",\n} as const);\nexport type ClearSigningType =\n (typeof ClearSigningType)[keyof typeof ClearSigningType];\n\nexport const BlindSigningPlatform = Object.freeze({\n DESKTOP: \"desktop\",\n MOBILE: \"mobile\",\n} as const);\nexport type BlindSigningPlatform =\n (typeof BlindSigningPlatform)[keyof typeof BlindSigningPlatform];\n"],
5
+ "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,qBAAAE,EAAA,uBAAAC,EAAA,yBAAAC,EAAA,qBAAAC,IAAA,eAAAC,EAAAN,GAAO,MAAMG,EAAqB,OAAO,OAAO,CAC9C,qBAAsB,sBACtB,oBAAqB,mBACvB,CAAU,EAIGD,EAAkB,OAAO,OAAO,CAC3C,yBAA0B,2BAC1B,wBAAyB,0BACzB,qBAAsB,uBACtB,iBAAkB,kBACpB,CAAU,EAIGG,EAAmB,OAAO,OAAO,CAC5C,MAAO,QACP,QAAS,SACX,CAAU,EAIGD,EAAuB,OAAO,OAAO,CAChD,QAAS,UACT,OAAQ,QACV,CAAU",
6
6
  "names": ["BlindSigningEvent_exports", "__export", "BlindSignReason", "BlindSigningMethod", "BlindSigningPlatform", "ClearSigningType", "__toCommonJS"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";var a=require("purify-ts"),t=require("vitest"),i=require("../../../../modules/solana/model/SolanaTransactionScanChainId"),d=require("./HttpInstructionInfoDataSource");(0,t.describe)("HttpInstructionInfoDataSource",()=>{let r,o;const e="11111111111111111111111111111111",s="solana-mainnet",l={cal:{url:"https://global.api.prd.ledger.com/cal/v1",mode:"prod",branch:"main"}},c=[{id:e,chain_id:i.SolanaTransactionScanChainId.MAINNET,instructions:[{discriminator_hex:"00000000",instruction_name:"createAccount",descriptor:{data:"00010101",signatures:{prod:"prodsig",test:"testsig"}},display_fields:[],value_flow_ports:[],hide_rules:[],account_resets:[]}]}];(0,t.beforeEach)(()=>{t.vi.clearAllMocks(),o={get:t.vi.fn()},r=new d.HttpInstructionInfoDataSource(l,o)}),(0,t.it)("calls CAL /solana_programs with id, chain_id and output params",async()=>{o.get.mockResolvedValue(c),await r.getInstructionInfo({programId:e,network:s}),(0,t.expect)(o.get).toHaveBeenCalledTimes(1),(0,t.expect)(o.get).toHaveBeenCalledWith("https://global.api.prd.ledger.com/cal/v1/solana_programs",{params:{id:e,chain_id:i.SolanaTransactionScanChainId.MAINNET,output:"id,chain_id,instructions",ref:"branch:main"}})}),(0,t.it)("maps devnet/testnet networks to their numeric chain ids",async()=>{o.get.mockResolvedValue(c),await r.getInstructionInfo({programId:e,network:"solana-devnet"}),(0,t.expect)(o.get).toHaveBeenCalledWith("https://global.api.prd.ledger.com/cal/v1/solana_programs",t.expect.objectContaining({params:t.expect.objectContaining({chain_id:901})}))}),(0,t.it)("returns Right with each descriptor transformed into the core payload on success",async()=>{o.get.mockResolvedValue(c);const n=await r.getInstructionInfo({programId:e,network:s});(0,t.expect)(n).toEqual((0,a.Right)({programId:e,descriptors:{"00000000":(0,a.Right)({programId:e,discriminator:"00000000",instructionName:"createAccount",instructionInfo:{data:"00010101",signature:"prodsig"},substructures:[],enumVariants:[],idlDescriptor:{typePool:[],rootType:0},mintAssociations:[],valueFlowPorts:[],accountResets:[],displayFields:[]})},enumVariants:[]}))}),(0,t.it)("keys a descriptor without `discriminator_hex` under the empty string",async()=>{o.get.mockResolvedValue([{id:e,chain_id:i.SolanaTransactionScanChainId.MAINNET,instructions:[{instruction_name:"addMemo",descriptor:{data:"00010101",signatures:{prod:"prodsig",test:"testsig"}}}]}]);const n=await r.getInstructionInfo({programId:e,network:s});(0,t.expect)(n.isRight()).toBe(!0);const{descriptors:u}=n.unsafeCoerce();(0,t.expect)(Object.keys(u)).toEqual([""]),(0,t.expect)(u[""].unsafeCoerce()).toEqual(t.expect.objectContaining({programId:e,discriminator:"",instructionInfo:{data:"00010101",signature:"prodsig"}}))}),(0,t.it)("returns Left when the response array is empty",async()=>{o.get.mockResolvedValue([]);const n=await r.getInstructionInfo({programId:e,network:s});(0,t.expect)(n).toEqual((0,a.Left)(new Error(`[ContextModule] HttpInstructionInfoDataSource: empty response for program ${e}`)))}),(0,t.it)("returns Left when no program object matches the requested programId",async()=>{o.get.mockResolvedValue([{id:"OtherProgram",chain_id:i.SolanaTransactionScanChainId.MAINNET,instructions:[]}]);const n=await r.getInstructionInfo({programId:e,network:s});(0,t.expect)(n).toEqual((0,a.Left)(new Error(`[ContextModule] HttpInstructionInfoDataSource: no descriptors for program ${e}`)))}),(0,t.it)("returns Left (not a throw) when an instruction descriptor is malformed",async()=>{o.get.mockResolvedValue([{id:e,chain_id:i.SolanaTransactionScanChainId.MAINNET,instructions:[{discriminator_hex:"00000000"}]}]);const n=await r.getInstructionInfo({programId:e,network:s});(0,t.expect)(n.isLeft()).toBe(!0),(0,t.expect)(n.extract().message).toMatch(new RegExp(String.raw`\[ContextModule\] HttpInstructionInfoDataSource: malformed descriptors for program ${e}:`))}),(0,t.it)("returns Left when the HTTP client throws",async()=>{o.get.mockRejectedValue(new Error("network"));const n=await r.getInstructionInfo({programId:e,network:s});(0,t.expect)(n).toEqual((0,a.Left)(new Error("[ContextModule] HttpInstructionInfoDataSource: Failed to fetch instruction descriptors: network")))})});
1
+ "use strict";var i=require("purify-ts"),t=require("vitest"),a=require("../../../../modules/solana/model/SolanaTransactionScanChainId"),d=require("./HttpInstructionInfoDataSource");(0,t.describe)("HttpInstructionInfoDataSource",()=>{let r,n;const e="11111111111111111111111111111111",s="solana-mainnet",l={cal:{url:"https://global.api.prd.ledger.com/cal/v1",mode:"prod",branch:"main"}},u=[{id:e,chain_id:a.SolanaTransactionScanChainId.MAINNET,instructions:[{discriminator_hex:"00000000",instruction_name:"createAccount",descriptor:{data:"00010101",signatures:{prod:"prodsig",test:"testsig"}},display_fields:[],value_flow_ports:[],hide_rules:[],account_resets:[]}]}];(0,t.beforeEach)(()=>{t.vi.clearAllMocks(),n={get:t.vi.fn()},r=new d.HttpInstructionInfoDataSource(l,n)}),(0,t.it)("calls CAL /solana_programs with id, chain_id and output params",async()=>{n.get.mockResolvedValue(u),await r.getInstructionInfo({programId:e,network:s}),(0,t.expect)(n.get).toHaveBeenCalledTimes(1),(0,t.expect)(n.get).toHaveBeenCalledWith("https://global.api.prd.ledger.com/cal/v1/solana_programs",{params:{id:e,chain_id:a.SolanaTransactionScanChainId.MAINNET,output:"id,chain_id,instructions",ref:"branch:main"}})}),(0,t.it)("maps devnet/testnet networks to their numeric chain ids",async()=>{n.get.mockResolvedValue(u),await r.getInstructionInfo({programId:e,network:"solana-devnet"}),(0,t.expect)(n.get).toHaveBeenCalledWith("https://global.api.prd.ledger.com/cal/v1/solana_programs",t.expect.objectContaining({params:t.expect.objectContaining({chain_id:901})}))}),(0,t.it)("returns Right with each descriptor transformed into the core payload on success",async()=>{n.get.mockResolvedValue(u);const o=await r.getInstructionInfo({programId:e,network:s});(0,t.expect)(o).toEqual((0,i.Right)({programId:e,descriptors:{"00000000":(0,i.Right)({programId:e,discriminator:"00000000",instructionName:"createAccount",instructionInfo:{data:"00010101",signature:"prodsig"},substructures:[],enumVariants:[],idlDescriptor:{typePool:[],rootType:0},mintAssociations:[],ownerAssociations:[],valueFlowPorts:[],accountResets:[],displayFields:[],hideRules:[]})},enumVariants:[]}))}),(0,t.it)("keys a descriptor without `discriminator_hex` under the empty string",async()=>{n.get.mockResolvedValue([{id:e,chain_id:a.SolanaTransactionScanChainId.MAINNET,instructions:[{instruction_name:"addMemo",descriptor:{data:"00010101",signatures:{prod:"prodsig",test:"testsig"}}}]}]);const o=await r.getInstructionInfo({programId:e,network:s});(0,t.expect)(o.isRight()).toBe(!0);const{descriptors:c}=o.unsafeCoerce();(0,t.expect)(Object.keys(c)).toEqual([""]),(0,t.expect)(c[""].unsafeCoerce()).toEqual(t.expect.objectContaining({programId:e,discriminator:"",instructionInfo:{data:"00010101",signature:"prodsig"}}))}),(0,t.it)("returns Left when the response array is empty",async()=>{n.get.mockResolvedValue([]);const o=await r.getInstructionInfo({programId:e,network:s});(0,t.expect)(o).toEqual((0,i.Left)(new Error(`[ContextModule] HttpInstructionInfoDataSource: empty response for program ${e}`)))}),(0,t.it)("returns Left when no program object matches the requested programId",async()=>{n.get.mockResolvedValue([{id:"OtherProgram",chain_id:a.SolanaTransactionScanChainId.MAINNET,instructions:[]}]);const o=await r.getInstructionInfo({programId:e,network:s});(0,t.expect)(o).toEqual((0,i.Left)(new Error(`[ContextModule] HttpInstructionInfoDataSource: no descriptors for program ${e}`)))}),(0,t.it)("returns Left (not a throw) when an instruction descriptor is malformed",async()=>{n.get.mockResolvedValue([{id:e,chain_id:a.SolanaTransactionScanChainId.MAINNET,instructions:[{discriminator_hex:"00000000"}]}]);const o=await r.getInstructionInfo({programId:e,network:s});(0,t.expect)(o.isLeft()).toBe(!0),(0,t.expect)(o.extract().message).toMatch(new RegExp(String.raw`\[ContextModule\] HttpInstructionInfoDataSource: malformed descriptors for program ${e}:`))}),(0,t.it)("returns Left (not a throw) when account_schema.slots is not an array",async()=>{n.get.mockResolvedValue([{id:e,chain_id:a.SolanaTransactionScanChainId.MAINNET,instructions:[{discriminator_hex:"00000000",descriptor:{data:"00010101",signatures:{prod:"prodsig",test:"testsig"}},account_schema:{slots:{}}}]}]);const o=await r.getInstructionInfo({programId:e,network:s});(0,t.expect)(o.isLeft()).toBe(!0),(0,t.expect)(o.extract().message).toMatch(new RegExp(String.raw`\[ContextModule\] HttpInstructionInfoDataSource: malformed descriptors for program ${e}:`))}),(0,t.it)("returns Right with accountSchema mapped through when it is well-formed",async()=>{n.get.mockResolvedValue([{id:e,chain_id:a.SolanaTransactionScanChainId.MAINNET,instructions:[{discriminator_hex:"00000000",descriptor:{data:"00010101",signatures:{prod:"prodsig",test:"testsig"}},account_schema:{count_min:2,count_max:2,slots:[{signer:"REQUIRED",writable:"EITHER"}]}}]}]);const o=await r.getInstructionInfo({programId:e,network:s});(0,t.expect)(o.isRight()).toBe(!0);const{descriptors:c}=o.unsafeCoerce();(0,t.expect)(c["00000000"].unsafeCoerce()).toEqual(t.expect.objectContaining({accountSchema:{count_min:2,count_max:2,remaining_policy:{signer:"EITHER",writable:"EITHER"},slots:[{signer:"REQUIRED",writable:"EITHER"}]}}))}),(0,t.it)("returns Left when the HTTP client throws",async()=>{n.get.mockRejectedValue(new Error("network"));const o=await r.getInstructionInfo({programId:e,network:s});(0,t.expect)(o).toEqual((0,i.Left)(new Error("[ContextModule] HttpInstructionInfoDataSource: Failed to fetch instruction descriptors: network")))})});
2
2
  //# sourceMappingURL=HttpInstructionInfoDataSource.test.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../src/modules/solana/instruction-info/data/HttpInstructionInfoDataSource.test.ts"],
4
- "sourcesContent": ["import { 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\";\nimport { SolanaTransactionScanChainId } from \"@/modules/solana/model/SolanaTransactionScanChainId\";\n\nimport { HttpInstructionInfoDataSource } from \"./HttpInstructionInfoDataSource\";\nimport { type InstructionInfoDataSource } from \"./InstructionInfoDataSource\";\nimport { type CalInstructionInfoResponseDto } from \"./InstructionInfoDto\";\n\ndescribe(\"HttpInstructionInfoDataSource\", () => {\n let datasource: InstructionInfoDataSource;\n let httpMock: { get: ReturnType<typeof vi.fn> };\n const programId = \"11111111111111111111111111111111\";\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 const successResponse: CalInstructionInfoResponseDto = [\n {\n id: programId,\n chain_id: SolanaTransactionScanChainId.MAINNET,\n instructions: [\n {\n discriminator_hex: \"00000000\",\n instruction_name: \"createAccount\",\n descriptor: {\n data: \"00010101\",\n signatures: { prod: \"prodsig\", test: \"testsig\" },\n },\n display_fields: [],\n value_flow_ports: [],\n hide_rules: [],\n account_resets: [],\n },\n ],\n },\n ];\n\n beforeEach(() => {\n vi.clearAllMocks();\n httpMock = { get: vi.fn() };\n datasource = new HttpInstructionInfoDataSource(\n config,\n httpMock as unknown as DmkNetworkClient,\n );\n });\n\n it(\"calls CAL /solana_programs with id, chain_id and output params\", async () => {\n httpMock.get.mockResolvedValue(successResponse);\n\n await datasource.getInstructionInfo({ programId, network });\n\n expect(httpMock.get).toHaveBeenCalledTimes(1);\n expect(httpMock.get).toHaveBeenCalledWith(\n \"https://global.api.prd.ledger.com/cal/v1/solana_programs\",\n {\n params: {\n id: programId,\n chain_id: SolanaTransactionScanChainId.MAINNET,\n output: \"id,chain_id,instructions\",\n ref: \"branch:main\",\n },\n },\n );\n });\n\n it(\"maps devnet/testnet networks to their numeric chain ids\", async () => {\n httpMock.get.mockResolvedValue(successResponse);\n\n await datasource.getInstructionInfo({\n programId,\n network: \"solana-devnet\",\n });\n\n expect(httpMock.get).toHaveBeenCalledWith(\n \"https://global.api.prd.ledger.com/cal/v1/solana_programs\",\n expect.objectContaining({\n params: expect.objectContaining({ chain_id: 901 }),\n }),\n );\n });\n\n it(\"returns Right with each descriptor transformed into the core payload on success\", async () => {\n httpMock.get.mockResolvedValue(successResponse);\n\n const result = await datasource.getInstructionInfo({ programId, network });\n\n expect(result).toEqual(\n Right({\n programId,\n descriptors: {\n \"00000000\": Right({\n programId,\n discriminator: \"00000000\",\n instructionName: \"createAccount\",\n instructionInfo: { data: \"00010101\", signature: \"prodsig\" },\n substructures: [],\n enumVariants: [],\n idlDescriptor: { typePool: [], rootType: 0 },\n mintAssociations: [],\n valueFlowPorts: [],\n accountResets: [],\n displayFields: [],\n }),\n },\n enumVariants: [],\n }),\n );\n });\n\n it(\"keys a descriptor without `discriminator_hex` under the empty string\", async () => {\n // Single-instruction programs (e.g. SPL Memo `addMemo`) genuinely have no\n // discriminator, so CAL omits the field.\n httpMock.get.mockResolvedValue([\n {\n id: programId,\n chain_id: SolanaTransactionScanChainId.MAINNET,\n instructions: [\n {\n instruction_name: \"addMemo\",\n descriptor: {\n data: \"00010101\",\n signatures: { prod: \"prodsig\", test: \"testsig\" },\n },\n },\n ],\n },\n ]);\n\n const result = await datasource.getInstructionInfo({ programId, network });\n\n expect(result.isRight()).toBe(true);\n const { descriptors } = result.unsafeCoerce();\n expect(Object.keys(descriptors)).toEqual([\"\"]);\n expect(descriptors[\"\"]!.unsafeCoerce()).toEqual(\n expect.objectContaining({\n programId,\n discriminator: \"\",\n instructionInfo: { data: \"00010101\", signature: \"prodsig\" },\n }),\n );\n });\n\n it(\"returns Left when the response array is empty\", async () => {\n httpMock.get.mockResolvedValue([]);\n\n const result = await datasource.getInstructionInfo({ programId, network });\n\n expect(result).toEqual(\n Left(\n new Error(\n `[ContextModule] HttpInstructionInfoDataSource: empty response for program ${programId}`,\n ),\n ),\n );\n });\n\n it(\"returns Left when no program object matches the requested programId\", async () => {\n httpMock.get.mockResolvedValue([\n {\n id: \"OtherProgram\",\n chain_id: SolanaTransactionScanChainId.MAINNET,\n instructions: [],\n },\n ]);\n\n const result = await datasource.getInstructionInfo({ programId, network });\n\n expect(result).toEqual(\n Left(\n new Error(\n `[ContextModule] HttpInstructionInfoDataSource: no descriptors for program ${programId}`,\n ),\n ),\n );\n });\n\n it(\"returns Left (not a throw) when an instruction descriptor is malformed\", async () => {\n // `descriptor` missing on the instruction \u2014 would crash the loader if the\n // datasource handed it through unvalidated.\n httpMock.get.mockResolvedValue([\n {\n id: programId,\n chain_id: SolanaTransactionScanChainId.MAINNET,\n instructions: [{ discriminator_hex: \"00000000\" }],\n },\n ]);\n\n const result = await datasource.getInstructionInfo({ programId, network });\n\n expect(result.isLeft()).toBe(true);\n expect((result.extract() as Error).message).toMatch(\n new RegExp(\n String.raw`\\[ContextModule\\] HttpInstructionInfoDataSource: malformed descriptors for program ${programId}:`,\n ),\n );\n });\n\n it(\"returns Left when the HTTP client throws\", async () => {\n httpMock.get.mockRejectedValue(new Error(\"network\"));\n\n const result = await datasource.getInstructionInfo({ programId, network });\n\n expect(result).toEqual(\n Left(\n new Error(\n \"[ContextModule] HttpInstructionInfoDataSource: Failed to fetch instruction descriptors: network\",\n ),\n ),\n );\n });\n});\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import { 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\";\nimport { SolanaTransactionScanChainId } from \"@/modules/solana/model/SolanaTransactionScanChainId\";\n\nimport { HttpInstructionInfoDataSource } from \"./HttpInstructionInfoDataSource\";\nimport { type InstructionInfoDataSource } from \"./InstructionInfoDataSource\";\nimport { type CalInstructionInfoResponseDto } from \"./InstructionInfoDto\";\n\ndescribe(\"HttpInstructionInfoDataSource\", () => {\n let datasource: InstructionInfoDataSource;\n let httpMock: { get: ReturnType<typeof vi.fn> };\n const programId = \"11111111111111111111111111111111\";\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 const successResponse: CalInstructionInfoResponseDto = [\n {\n id: programId,\n chain_id: SolanaTransactionScanChainId.MAINNET,\n instructions: [\n {\n discriminator_hex: \"00000000\",\n instruction_name: \"createAccount\",\n descriptor: {\n data: \"00010101\",\n signatures: { prod: \"prodsig\", test: \"testsig\" },\n },\n display_fields: [],\n value_flow_ports: [],\n hide_rules: [],\n account_resets: [],\n },\n ],\n },\n ];\n\n beforeEach(() => {\n vi.clearAllMocks();\n httpMock = { get: vi.fn() };\n datasource = new HttpInstructionInfoDataSource(\n config,\n httpMock as unknown as DmkNetworkClient,\n );\n });\n\n it(\"calls CAL /solana_programs with id, chain_id and output params\", async () => {\n httpMock.get.mockResolvedValue(successResponse);\n\n await datasource.getInstructionInfo({ programId, network });\n\n expect(httpMock.get).toHaveBeenCalledTimes(1);\n expect(httpMock.get).toHaveBeenCalledWith(\n \"https://global.api.prd.ledger.com/cal/v1/solana_programs\",\n {\n params: {\n id: programId,\n chain_id: SolanaTransactionScanChainId.MAINNET,\n output: \"id,chain_id,instructions\",\n ref: \"branch:main\",\n },\n },\n );\n });\n\n it(\"maps devnet/testnet networks to their numeric chain ids\", async () => {\n httpMock.get.mockResolvedValue(successResponse);\n\n await datasource.getInstructionInfo({\n programId,\n network: \"solana-devnet\",\n });\n\n expect(httpMock.get).toHaveBeenCalledWith(\n \"https://global.api.prd.ledger.com/cal/v1/solana_programs\",\n expect.objectContaining({\n params: expect.objectContaining({ chain_id: 901 }),\n }),\n );\n });\n\n it(\"returns Right with each descriptor transformed into the core payload on success\", async () => {\n httpMock.get.mockResolvedValue(successResponse);\n\n const result = await datasource.getInstructionInfo({ programId, network });\n\n expect(result).toEqual(\n Right({\n programId,\n descriptors: {\n \"00000000\": Right({\n programId,\n discriminator: \"00000000\",\n instructionName: \"createAccount\",\n instructionInfo: { data: \"00010101\", signature: \"prodsig\" },\n substructures: [],\n enumVariants: [],\n idlDescriptor: { typePool: [], rootType: 0 },\n mintAssociations: [],\n ownerAssociations: [],\n valueFlowPorts: [],\n accountResets: [],\n displayFields: [],\n hideRules: [],\n }),\n },\n enumVariants: [],\n }),\n );\n });\n\n it(\"keys a descriptor without `discriminator_hex` under the empty string\", async () => {\n // Single-instruction programs (e.g. SPL Memo `addMemo`) genuinely have no\n // discriminator, so CAL omits the field.\n httpMock.get.mockResolvedValue([\n {\n id: programId,\n chain_id: SolanaTransactionScanChainId.MAINNET,\n instructions: [\n {\n instruction_name: \"addMemo\",\n descriptor: {\n data: \"00010101\",\n signatures: { prod: \"prodsig\", test: \"testsig\" },\n },\n },\n ],\n },\n ]);\n\n const result = await datasource.getInstructionInfo({ programId, network });\n\n expect(result.isRight()).toBe(true);\n const { descriptors } = result.unsafeCoerce();\n expect(Object.keys(descriptors)).toEqual([\"\"]);\n expect(descriptors[\"\"]!.unsafeCoerce()).toEqual(\n expect.objectContaining({\n programId,\n discriminator: \"\",\n instructionInfo: { data: \"00010101\", signature: \"prodsig\" },\n }),\n );\n });\n\n it(\"returns Left when the response array is empty\", async () => {\n httpMock.get.mockResolvedValue([]);\n\n const result = await datasource.getInstructionInfo({ programId, network });\n\n expect(result).toEqual(\n Left(\n new Error(\n `[ContextModule] HttpInstructionInfoDataSource: empty response for program ${programId}`,\n ),\n ),\n );\n });\n\n it(\"returns Left when no program object matches the requested programId\", async () => {\n httpMock.get.mockResolvedValue([\n {\n id: \"OtherProgram\",\n chain_id: SolanaTransactionScanChainId.MAINNET,\n instructions: [],\n },\n ]);\n\n const result = await datasource.getInstructionInfo({ programId, network });\n\n expect(result).toEqual(\n Left(\n new Error(\n `[ContextModule] HttpInstructionInfoDataSource: no descriptors for program ${programId}`,\n ),\n ),\n );\n });\n\n it(\"returns Left (not a throw) when an instruction descriptor is malformed\", async () => {\n // `descriptor` missing on the instruction \u2014 would crash the loader if the\n // datasource handed it through unvalidated.\n httpMock.get.mockResolvedValue([\n {\n id: programId,\n chain_id: SolanaTransactionScanChainId.MAINNET,\n instructions: [{ discriminator_hex: \"00000000\" }],\n },\n ]);\n\n const result = await datasource.getInstructionInfo({ programId, network });\n\n expect(result.isLeft()).toBe(true);\n expect((result.extract() as Error).message).toMatch(\n new RegExp(\n String.raw`\\[ContextModule\\] HttpInstructionInfoDataSource: malformed descriptors for program ${programId}:`,\n ),\n );\n });\n\n it(\"returns Left (not a throw) when account_schema.slots is not an array\", async () => {\n // Regression: account_schema was not codec-validated, so a malformed\n // shape (e.g. `slots` as an object instead of an array) bypassed\n // validation here and crashed later in the mapper's `.map()` call instead\n // of degrading gracefully to a per-program error.\n httpMock.get.mockResolvedValue([\n {\n id: programId,\n chain_id: SolanaTransactionScanChainId.MAINNET,\n instructions: [\n {\n discriminator_hex: \"00000000\",\n descriptor: {\n data: \"00010101\",\n signatures: { prod: \"prodsig\", test: \"testsig\" },\n },\n account_schema: { slots: {} },\n },\n ],\n },\n ]);\n\n const result = await datasource.getInstructionInfo({ programId, network });\n\n expect(result.isLeft()).toBe(true);\n expect((result.extract() as Error).message).toMatch(\n new RegExp(\n String.raw`\\[ContextModule\\] HttpInstructionInfoDataSource: malformed descriptors for program ${programId}:`,\n ),\n );\n });\n\n it(\"returns Right with accountSchema mapped through when it is well-formed\", async () => {\n httpMock.get.mockResolvedValue([\n {\n id: programId,\n chain_id: SolanaTransactionScanChainId.MAINNET,\n instructions: [\n {\n discriminator_hex: \"00000000\",\n descriptor: {\n data: \"00010101\",\n signatures: { prod: \"prodsig\", test: \"testsig\" },\n },\n account_schema: {\n count_min: 2,\n count_max: 2,\n slots: [{ signer: \"REQUIRED\", writable: \"EITHER\" }],\n },\n },\n ],\n },\n ]);\n\n const result = await datasource.getInstructionInfo({ programId, network });\n\n expect(result.isRight()).toBe(true);\n const { descriptors } = result.unsafeCoerce();\n expect(descriptors[\"00000000\"]!.unsafeCoerce()).toEqual(\n expect.objectContaining({\n accountSchema: {\n count_min: 2,\n count_max: 2,\n remaining_policy: { signer: \"EITHER\", writable: \"EITHER\" },\n slots: [{ signer: \"REQUIRED\", writable: \"EITHER\" }],\n },\n }),\n );\n });\n\n it(\"returns Left when the HTTP client throws\", async () => {\n httpMock.get.mockRejectedValue(new Error(\"network\"));\n\n const result = await datasource.getInstructionInfo({ programId, network });\n\n expect(result).toEqual(\n Left(\n new Error(\n \"[ContextModule] HttpInstructionInfoDataSource: Failed to fetch instruction descriptors: network\",\n ),\n ),\n );\n });\n});\n"],
5
+ "mappings": "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",
6
6
  "names": ["import_purify_ts", "import_vitest", "import_SolanaTransactionScanChainId", "import_HttpInstructionInfoDataSource", "datasource", "httpMock", "programId", "network", "config", "successResponse", "result", "descriptors"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";var a=Object.defineProperty;var u=Object.getOwnPropertyDescriptor;var l=Object.getOwnPropertyNames;var p=Object.prototype.hasOwnProperty;var d=(r,e)=>{for(var o in e)a(r,o,{get:e[o],enumerable:!0})},_=(r,e,o,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of l(e))!p.call(r,n)&&n!==o&&a(r,n,{get:()=>e[n],enumerable:!(s=u(e,n))||s.enumerable});return r};var C=r=>_(a({},"__esModule",{value:!0}),r);var b={};d(b,{calInstructionProgramCodec:()=>y});module.exports=C(b);var t=require("purify-ts");const D=t.Codec.interface({prod:(0,t.optional)(t.string),test:(0,t.optional)(t.string)}),c=t.Codec.interface({data:t.string,signatures:D}),g=t.Codec.interface({descriptor:c}),i=t.Codec.interface({descriptor:t.string}),m=t.Codec.interface({discriminator_hex:(0,t.optional)(t.string),descriptor:c,enum_variants:(0,t.optional)((0,t.record)(t.string,(0,t.record)(t.string,g))),display_fields:(0,t.optional)((0,t.array)(i)),value_flow_ports:(0,t.optional)((0,t.array)(i)),hide_rules:(0,t.optional)((0,t.array)(i)),account_resets:(0,t.optional)((0,t.array)(i))}),y=t.Codec.interface({id:t.string,chain_id:t.number,instructions:(0,t.array)(m)});0&&(module.exports={calInstructionProgramCodec});
1
+ "use strict";var i=Object.defineProperty;var u=Object.getOwnPropertyDescriptor;var p=Object.getOwnPropertyNames;var d=Object.prototype.hasOwnProperty;var C=(n,e)=>{for(var r in e)i(n,r,{get:e[r],enumerable:!0})},_=(n,e,r,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of p(e))!d.call(n,o)&&o!==r&&i(n,o,{get:()=>e[o],enumerable:!(s=u(e,o))||s.enumerable});return n};var D=n=>_(i({},"__esModule",{value:!0}),n);var S={};C(S,{calInstructionProgramCodec:()=>x});module.exports=D(S);var t=require("purify-ts");const g=t.Codec.interface({prod:(0,t.optional)(t.string),test:(0,t.optional)(t.string)}),l=t.Codec.interface({data:t.string,signatures:g}),m=t.Codec.interface({descriptor:l}),a=t.Codec.interface({descriptor:t.string}),c=t.Codec.interface({signer:t.string,writable:t.string}),y=t.Codec.interface({count_min:(0,t.optional)(t.number),count_max:(0,t.optional)(t.number),remaining_policy:(0,t.optional)(c),slots:(0,t.optional)((0,t.array)(c))}),b=t.Codec.interface({discriminator_hex:(0,t.optional)(t.string),descriptor:l,enum_variants:(0,t.optional)((0,t.record)(t.string,(0,t.record)(t.string,m))),display_fields:(0,t.optional)((0,t.array)(a)),value_flow_ports:(0,t.optional)((0,t.array)(a)),hide_rules:(0,t.optional)((0,t.array)(a)),account_resets:(0,t.optional)((0,t.array)(a)),account_schema:(0,t.optional)(y)}),x=t.Codec.interface({id:t.string,chain_id:t.number,instructions:(0,t.array)(b)});0&&(module.exports={calInstructionProgramCodec});
2
2
  //# sourceMappingURL=InstructionInfoDto.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../src/modules/solana/instruction-info/data/InstructionInfoDto.ts"],
4
- "sourcesContent": ["// DTO + codecs for the CAL instruction-descriptors response (one object per\n// `programId`, wrapped in a JSON array).\n//\n// The hand-written types describe the consumed shape (with genuinely optional\n// `?:` fields); the codecs below validate that shape at runtime so\n// `HttpInstructionInfoDataSource` can hand the loaders a payload they can\n// dereference without runtime-throwing on a malformed descriptor.\n\nimport { array, Codec, number, optional, record, string } from \"purify-ts\";\n\nexport type CalSignatures = {\n prod?: string;\n test?: string;\n};\n\nexport type CalSignedDescriptorDto = {\n data: string;\n signatures: CalSignatures;\n};\n\n// Decoded CAL JSON shapes (snake_case mirrors the CAL response) that drive\n// host-side requirement building.\n\nexport type CalValueDto = {\n source: string;\n account_index?: number;\n data?: string;\n path?: { steps: number[] };\n};\n\nexport type CalTokenValueDto = {\n kind: string;\n value?: CalValueDto;\n account_index?: number;\n};\n\nexport type CalMintAssociationDto = {\n account_index: number;\n mint_index: number;\n};\n\nexport type CalTypePoolEntryDto = {\n index: number;\n kind: string;\n refs?: number[];\n size?: number;\n encoding?: number;\n len_kind?: string;\n flag_kind?: string;\n sentinel?: string;\n disc_kind?: string;\n total_variants?: number;\n enum_id?: string;\n};\n\nexport type CalEnumVariantDto = {\n variant_name: string;\n payload_kind?: string;\n descriptor: CalSignedDescriptorDto;\n};\n\n/** A substructure CAL serves only as opaque TLV (e.g. HIDE_RULE). */\nexport type CalSubstructureDto = {\n descriptor: string;\n};\n\nexport type CalValueFlowPortDto = CalSubstructureDto & {\n account_indices: number[];\n optional_account_strategy?: string;\n token_value: CalTokenValueDto;\n};\n\nexport type CalAccountResetDto = CalSubstructureDto & {\n account_index?: number;\n require_pre_balance_zero?: boolean;\n};\n\nexport type CalDisplayFieldDto = CalSubstructureDto & {\n name?: string;\n param?: { type: string; value?: CalValueDto; token?: CalValueDto };\n};\n\nexport type CalInstructionDescriptorDto = {\n discriminator_hex?: string;\n instruction_name?: string;\n descriptor: CalSignedDescriptorDto;\n idl_descriptor?: {\n type_pool?: CalTypePoolEntryDto[];\n root_type?: number;\n };\n mint_association?: CalMintAssociationDto;\n owner_association?: unknown;\n enum_variants?: Record<string, Record<string, CalEnumVariantDto>>;\n display_fields?: CalDisplayFieldDto[];\n value_flow_ports?: CalValueFlowPortDto[];\n hide_rules?: CalSubstructureDto[];\n account_resets?: CalAccountResetDto[];\n};\n\n// One program object of the `solana_programs` response: the program `id`, its\n// `chain_id`, and the flat `instructions` array (keyed downstream by\n// `discriminator_hex`).\nexport type CalInstructionProgramDto = {\n id: string;\n chain_id: number;\n instructions: CalInstructionDescriptorDto[];\n};\n\n// Outer shape: array of program objects (one per requested `id`).\nexport type CalInstructionInfoResponseDto = CalInstructionProgramDto[];\n\n// --- Validation codecs (runtime). Validate only the fields the loaders read;\n// `Codec.interface` ignores unknown extras so CAL can add fields freely. ---\n\nconst calSignaturesCodec = Codec.interface({\n prod: optional(string),\n test: optional(string),\n});\n\nconst calSignedDescriptorCodec = Codec.interface({\n data: string,\n signatures: calSignaturesCodec,\n});\n\nconst calEnumVariantCodec = Codec.interface({\n descriptor: calSignedDescriptorCodec,\n});\n\nconst calSubstructureCodec = Codec.interface({\n descriptor: string,\n});\n\nconst calInstructionDescriptorCodec = Codec.interface({\n discriminator_hex: optional(string),\n descriptor: calSignedDescriptorCodec,\n enum_variants: optional(record(string, record(string, calEnumVariantCodec))),\n display_fields: optional(array(calSubstructureCodec)),\n value_flow_ports: optional(array(calSubstructureCodec)),\n hide_rules: optional(array(calSubstructureCodec)),\n account_resets: optional(array(calSubstructureCodec)),\n});\n\n/**\n * Codec for one program object of the `solana_programs` response. Used by the\n * datasource to validate the CAL payload before handing it to the loaders.\n * Only loader-consumed fields are validated; unrelated CAL fields\n * (`idl_descriptor`, `mint_association`, \u2026) are ignored.\n */\nexport const calInstructionProgramCodec = Codec.interface({\n id: string,\n chain_id: number,\n instructions: array(calInstructionDescriptorCodec),\n});\n"],
5
- "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,gCAAAE,IAAA,eAAAC,EAAAH,GAQA,IAAAI,EAA+D,qBA0G/D,MAAMC,EAAqB,QAAM,UAAU,CACzC,QAAM,YAAS,QAAM,EACrB,QAAM,YAAS,QAAM,CACvB,CAAC,EAEKC,EAA2B,QAAM,UAAU,CAC/C,KAAM,SACN,WAAYD,CACd,CAAC,EAEKE,EAAsB,QAAM,UAAU,CAC1C,WAAYD,CACd,CAAC,EAEKE,EAAuB,QAAM,UAAU,CAC3C,WAAY,QACd,CAAC,EAEKC,EAAgC,QAAM,UAAU,CACpD,qBAAmB,YAAS,QAAM,EAClC,WAAYH,EACZ,iBAAe,eAAS,UAAO,YAAQ,UAAO,SAAQC,CAAmB,CAAC,CAAC,EAC3E,kBAAgB,eAAS,SAAMC,CAAoB,CAAC,EACpD,oBAAkB,eAAS,SAAMA,CAAoB,CAAC,EACtD,cAAY,eAAS,SAAMA,CAAoB,CAAC,EAChD,kBAAgB,eAAS,SAAMA,CAAoB,CAAC,CACtD,CAAC,EAQYN,EAA6B,QAAM,UAAU,CACxD,GAAI,SACJ,SAAU,SACV,gBAAc,SAAMO,CAA6B,CACnD,CAAC",
6
- "names": ["InstructionInfoDto_exports", "__export", "calInstructionProgramCodec", "__toCommonJS", "import_purify_ts", "calSignaturesCodec", "calSignedDescriptorCodec", "calEnumVariantCodec", "calSubstructureCodec", "calInstructionDescriptorCodec"]
4
+ "sourcesContent": ["// DTO + codecs for the CAL instruction-descriptors response (one object per\n// `programId`, wrapped in a JSON array).\n//\n// The hand-written types describe the consumed shape (with genuinely optional\n// `?:` fields); the codecs below validate that shape at runtime so\n// `HttpInstructionInfoDataSource` can hand the loaders a payload they can\n// dereference without runtime-throwing on a malformed descriptor.\n\nimport { array, Codec, number, optional, record, string } from \"purify-ts\";\n\nexport type CalSignatures = {\n prod?: string;\n test?: string;\n};\n\nexport type CalSignedDescriptorDto = {\n data: string;\n signatures: CalSignatures;\n};\n\n// Decoded CAL JSON shapes (snake_case mirrors the CAL response) that drive\n// host-side requirement building.\n\nexport type CalValueDto = {\n source: string;\n account_index?: number;\n data?: string;\n path?: { steps: number[] };\n};\n\nexport type CalTokenValueDto = {\n kind: string;\n value?: CalValueDto;\n account_index?: number;\n /** `RESOLVE` only: account index whose address is the mint of last resort. */\n fallback_account?: number;\n};\n\nexport type CalMintAssociationDto = {\n account_index: number;\n mint_index: number;\n};\n\n// Neither half is codec-validated, and the spec requires both or neither, so\n// both are optional here and the mapper drops a half-declared pair.\nexport type CalOwnerAssociationDto = {\n account_index?: number;\n owner?: CalValueDto;\n};\n\n/** One `ACTIVE_WHEN` predicate: a bare name, or `MINT_PREDICATE` + its mint. */\nexport type CalActiveWhenPredicateDto =\n | string\n | { kind: string; mint?: string };\n\nexport type CalTypePoolEntryDto = {\n index: number;\n kind: string;\n refs?: number[];\n size?: number;\n encoding?: number;\n len_kind?: string;\n flag_kind?: string;\n sentinel?: string;\n disc_kind?: string;\n total_variants?: number;\n enum_id?: string;\n};\n\nexport type CalEnumVariantDto = {\n variant_name: string;\n payload_kind?: string;\n descriptor: CalSignedDescriptorDto;\n};\n\n/** A substructure CAL serves only as opaque TLV (e.g. HIDE_RULE). */\nexport type CalSubstructureDto = {\n descriptor: string;\n};\n\nexport type CalValueFlowPortDto = CalSubstructureDto & {\n account_indices: number[];\n optional_account_strategy?: string;\n token_value: CalTokenValueDto;\n active_when?: CalActiveWhenPredicateDto[];\n};\n\nexport type CalHideRuleDto = CalSubstructureDto & {\n rule_set_index?: number;\n target?: CalValueDto;\n condition?: string;\n};\n\nexport type CalAccountResetDto = CalSubstructureDto & {\n account_index?: number;\n require_pre_balance_zero?: boolean;\n value_kind?: string;\n token?: CalTokenValueDto;\n require_native_pre_balance_zero?: boolean;\n};\n\nexport type CalSlotConstraintDto = {\n signer: string;\n writable: string;\n};\n\nexport type CalAccountSchemaDto = {\n count_min?: number;\n count_max?: number;\n remaining_policy?: CalSlotConstraintDto;\n slots?: CalSlotConstraintDto[];\n};\n\nexport type CalDisplayFieldDto = CalSubstructureDto & {\n name?: string;\n param?: { type: string; value?: CalValueDto; token?: CalValueDto };\n};\n\nexport type CalInstructionDescriptorDto = {\n discriminator_hex?: string;\n instruction_name?: string;\n descriptor: CalSignedDescriptorDto;\n idl_descriptor?: {\n type_pool?: CalTypePoolEntryDto[];\n root_type?: number;\n };\n mint_association?: CalMintAssociationDto;\n owner_association?: CalOwnerAssociationDto;\n enum_variants?: Record<string, Record<string, CalEnumVariantDto>>;\n display_fields?: CalDisplayFieldDto[];\n value_flow_ports?: CalValueFlowPortDto[];\n hide_rules?: CalHideRuleDto[];\n account_resets?: CalAccountResetDto[];\n /** Absent means \"no ACCOUNT_SCHEMA check\". */\n account_schema?: CalAccountSchemaDto;\n};\n\n// One program object of the `solana_programs` response: the program `id`, its\n// `chain_id`, and the flat `instructions` array (keyed downstream by\n// `discriminator_hex`).\nexport type CalInstructionProgramDto = {\n id: string;\n chain_id: number;\n instructions: CalInstructionDescriptorDto[];\n};\n\n// Outer shape: array of program objects (one per requested `id`).\nexport type CalInstructionInfoResponseDto = CalInstructionProgramDto[];\n\n// --- Validation codecs (runtime). Validate only the fields the loaders read;\n// `Codec.interface` ignores unknown extras so CAL can add fields freely. ---\n\nconst calSignaturesCodec = Codec.interface({\n prod: optional(string),\n test: optional(string),\n});\n\nconst calSignedDescriptorCodec = Codec.interface({\n data: string,\n signatures: calSignaturesCodec,\n});\n\nconst calEnumVariantCodec = Codec.interface({\n descriptor: calSignedDescriptorCodec,\n});\n\nconst calSubstructureCodec = Codec.interface({\n descriptor: string,\n});\n\nconst calSlotConstraintCodec = Codec.interface({\n signer: string,\n writable: string,\n});\n\nconst calAccountSchemaCodec = Codec.interface({\n count_min: optional(number),\n count_max: optional(number),\n remaining_policy: optional(calSlotConstraintCodec),\n slots: optional(array(calSlotConstraintCodec)),\n});\n\nconst calInstructionDescriptorCodec = Codec.interface({\n discriminator_hex: optional(string),\n descriptor: calSignedDescriptorCodec,\n enum_variants: optional(record(string, record(string, calEnumVariantCodec))),\n display_fields: optional(array(calSubstructureCodec)),\n value_flow_ports: optional(array(calSubstructureCodec)),\n hide_rules: optional(array(calSubstructureCodec)),\n account_resets: optional(array(calSubstructureCodec)),\n account_schema: optional(calAccountSchemaCodec),\n});\n\n/**\n * Codec for one program object of the `solana_programs` response. Used by the\n * datasource to validate the CAL payload before handing it to the loaders.\n * Only loader-consumed fields are validated; unrelated CAL fields\n * (`idl_descriptor`, `mint_association`, \u2026) are ignored.\n */\nexport const calInstructionProgramCodec = Codec.interface({\n id: string,\n chain_id: number,\n instructions: array(calInstructionDescriptorCodec),\n});\n"],
5
+ "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,gCAAAE,IAAA,eAAAC,EAAAH,GAQA,IAAAI,EAA+D,qBAgJ/D,MAAMC,EAAqB,QAAM,UAAU,CACzC,QAAM,YAAS,QAAM,EACrB,QAAM,YAAS,QAAM,CACvB,CAAC,EAEKC,EAA2B,QAAM,UAAU,CAC/C,KAAM,SACN,WAAYD,CACd,CAAC,EAEKE,EAAsB,QAAM,UAAU,CAC1C,WAAYD,CACd,CAAC,EAEKE,EAAuB,QAAM,UAAU,CAC3C,WAAY,QACd,CAAC,EAEKC,EAAyB,QAAM,UAAU,CAC7C,OAAQ,SACR,SAAU,QACZ,CAAC,EAEKC,EAAwB,QAAM,UAAU,CAC5C,aAAW,YAAS,QAAM,EAC1B,aAAW,YAAS,QAAM,EAC1B,oBAAkB,YAASD,CAAsB,EACjD,SAAO,eAAS,SAAMA,CAAsB,CAAC,CAC/C,CAAC,EAEKE,EAAgC,QAAM,UAAU,CACpD,qBAAmB,YAAS,QAAM,EAClC,WAAYL,EACZ,iBAAe,eAAS,UAAO,YAAQ,UAAO,SAAQC,CAAmB,CAAC,CAAC,EAC3E,kBAAgB,eAAS,SAAMC,CAAoB,CAAC,EACpD,oBAAkB,eAAS,SAAMA,CAAoB,CAAC,EACtD,cAAY,eAAS,SAAMA,CAAoB,CAAC,EAChD,kBAAgB,eAAS,SAAMA,CAAoB,CAAC,EACpD,kBAAgB,YAASE,CAAqB,CAChD,CAAC,EAQYR,EAA6B,QAAM,UAAU,CACxD,GAAI,SACJ,SAAU,SACV,gBAAc,SAAMS,CAA6B,CACnD,CAAC",
6
+ "names": ["InstructionInfoDto_exports", "__export", "calInstructionProgramCodec", "__toCommonJS", "import_purify_ts", "calSignaturesCodec", "calSignedDescriptorCodec", "calEnumVariantCodec", "calSubstructureCodec", "calSlotConstraintCodec", "calAccountSchemaCodec", "calInstructionDescriptorCodec"]
7
7
  }