@xyo-network/chain-orchestration 1.20.5 → 1.20.9

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 (247) hide show
  1. package/dist/browser/index.mjs +193 -336
  2. package/dist/browser/index.mjs.map +1 -1
  3. package/dist/browser/neutral/config/locators/basicRemoteRunnerLocator.d.ts +1 -2
  4. package/dist/browser/neutral/config/locators/basicRemoteRunnerLocator.d.ts.map +1 -1
  5. package/dist/browser/neutral/config/locators/basicRemoteViewerLocator.d.ts +1 -2
  6. package/dist/browser/neutral/config/locators/basicRemoteViewerLocator.d.ts.map +1 -1
  7. package/dist/browser/neutral/config/locators/rootLocatorFromConfig.d.ts.map +1 -1
  8. package/dist/browser/node/config/locators/actors/bridgeLocatorFromConfig.d.ts.map +1 -1
  9. package/dist/browser/node/config/locators/basicRemoteRunnerLocator.d.ts +1 -2
  10. package/dist/browser/node/config/locators/basicRemoteRunnerLocator.d.ts.map +1 -1
  11. package/dist/browser/node/config/locators/basicRemoteViewerLocator.d.ts +1 -2
  12. package/dist/browser/node/config/locators/basicRemoteViewerLocator.d.ts.map +1 -1
  13. package/dist/browser/node/config/locators/contextFromConfigWithoutLocator.d.ts.map +1 -0
  14. package/dist/browser/node/config/locators/index.d.ts +2 -0
  15. package/dist/browser/node/config/locators/index.d.ts.map +1 -1
  16. package/dist/browser/node/config/locators/locatorsFromConfig.d.ts.map +1 -1
  17. package/dist/browser/node/config/locators/telemetryContextFromConfig.d.ts.map +1 -0
  18. package/dist/browser/node/config/tryParseConfig.d.ts +12 -12
  19. package/dist/browser/node/evm/index.d.ts.map +1 -0
  20. package/dist/browser/node/evm/initChainId.d.ts.map +1 -0
  21. package/dist/browser/node/evm/initEvmProvider.d.ts.map +1 -0
  22. package/dist/browser/node/evm/initInfuraProvider.d.ts.map +1 -0
  23. package/dist/browser/node/evm/initJsonRpcProvider.d.ts.map +1 -0
  24. package/dist/browser/node/index.d.ts +2 -0
  25. package/dist/browser/node/index.d.ts.map +1 -1
  26. package/dist/browser/node/init/index.d.ts +1 -0
  27. package/dist/browser/node/init/index.d.ts.map +1 -1
  28. package/dist/browser/node/init/initEvmProvidersIfAvailable.d.ts.map +1 -0
  29. package/dist/browser/node/sharedMiddleware.d.ts +3 -0
  30. package/dist/browser/node/sharedMiddleware.d.ts.map +1 -0
  31. package/dist/browser/shared/actor/ValidatorActor.d.ts +3 -1
  32. package/dist/browser/shared/actor/ValidatorActor.d.ts.map +1 -1
  33. package/dist/browser/shared/config/actors/Api.d.ts +70 -72
  34. package/dist/browser/shared/config/actors/Api.d.ts.map +1 -1
  35. package/dist/browser/shared/config/actors/Bridge.d.ts +70 -72
  36. package/dist/browser/shared/config/actors/Bridge.d.ts.map +1 -1
  37. package/dist/browser/shared/config/actors/Mempool.d.ts +70 -72
  38. package/dist/browser/shared/config/actors/Mempool.d.ts.map +1 -1
  39. package/dist/browser/shared/config/actors/Producer.d.ts +70 -72
  40. package/dist/browser/shared/config/actors/Producer.d.ts.map +1 -1
  41. package/dist/browser/shared/config/actors/RewardRedemption.d.ts +70 -72
  42. package/dist/browser/shared/config/actors/RewardRedemption.d.ts.map +1 -1
  43. package/dist/browser/shared/config/actors/Validator.d.ts +70 -72
  44. package/dist/browser/shared/config/actors/Validator.d.ts.map +1 -1
  45. package/dist/browser/shared/config/locators/basicRemoteRunnerLocator.d.ts +9 -0
  46. package/dist/browser/shared/config/locators/basicRemoteRunnerLocator.d.ts.map +1 -0
  47. package/dist/browser/shared/config/locators/basicRemoteViewerLocator.d.ts +7 -0
  48. package/dist/browser/shared/config/locators/basicRemoteViewerLocator.d.ts.map +1 -0
  49. package/dist/browser/shared/config/locators/commonLocatorFromConfig.d.ts.map +1 -1
  50. package/dist/browser/shared/config/locators/index.d.ts +2 -2
  51. package/dist/browser/shared/config/locators/index.d.ts.map +1 -1
  52. package/dist/browser/shared/config/mergeConfig.d.ts +6 -6
  53. package/dist/browser/shared/index.d.ts +0 -1
  54. package/dist/browser/shared/index.d.ts.map +1 -1
  55. package/dist/browser/shared/init/index.d.ts +0 -1
  56. package/dist/browser/shared/init/index.d.ts.map +1 -1
  57. package/dist/neutral/index.mjs +193 -336
  58. package/dist/neutral/index.mjs.map +1 -1
  59. package/dist/neutral/neutral/config/locators/basicRemoteRunnerLocator.d.ts +1 -2
  60. package/dist/neutral/neutral/config/locators/basicRemoteRunnerLocator.d.ts.map +1 -1
  61. package/dist/neutral/neutral/config/locators/basicRemoteViewerLocator.d.ts +1 -2
  62. package/dist/neutral/neutral/config/locators/basicRemoteViewerLocator.d.ts.map +1 -1
  63. package/dist/neutral/neutral/config/locators/rootLocatorFromConfig.d.ts.map +1 -1
  64. package/dist/neutral/node/config/locators/actors/bridgeLocatorFromConfig.d.ts.map +1 -1
  65. package/dist/neutral/node/config/locators/basicRemoteRunnerLocator.d.ts +1 -2
  66. package/dist/neutral/node/config/locators/basicRemoteRunnerLocator.d.ts.map +1 -1
  67. package/dist/neutral/node/config/locators/basicRemoteViewerLocator.d.ts +1 -2
  68. package/dist/neutral/node/config/locators/basicRemoteViewerLocator.d.ts.map +1 -1
  69. package/dist/neutral/node/config/locators/contextFromConfigWithoutLocator.d.ts.map +1 -0
  70. package/dist/neutral/node/config/locators/index.d.ts +2 -0
  71. package/dist/neutral/node/config/locators/index.d.ts.map +1 -1
  72. package/dist/neutral/node/config/locators/locatorsFromConfig.d.ts.map +1 -1
  73. package/dist/neutral/node/config/locators/telemetryContextFromConfig.d.ts.map +1 -0
  74. package/dist/neutral/node/config/tryParseConfig.d.ts +12 -12
  75. package/dist/neutral/node/evm/index.d.ts.map +1 -0
  76. package/dist/neutral/node/evm/initChainId.d.ts.map +1 -0
  77. package/dist/neutral/node/evm/initEvmProvider.d.ts.map +1 -0
  78. package/dist/neutral/node/evm/initInfuraProvider.d.ts.map +1 -0
  79. package/dist/neutral/node/evm/initJsonRpcProvider.d.ts.map +1 -0
  80. package/dist/neutral/node/index.d.ts +2 -0
  81. package/dist/neutral/node/index.d.ts.map +1 -1
  82. package/dist/neutral/node/init/index.d.ts +1 -0
  83. package/dist/neutral/node/init/index.d.ts.map +1 -1
  84. package/dist/neutral/node/init/initEvmProvidersIfAvailable.d.ts.map +1 -0
  85. package/dist/neutral/node/sharedMiddleware.d.ts +3 -0
  86. package/dist/neutral/node/sharedMiddleware.d.ts.map +1 -0
  87. package/dist/neutral/shared/actor/ValidatorActor.d.ts +3 -1
  88. package/dist/neutral/shared/actor/ValidatorActor.d.ts.map +1 -1
  89. package/dist/neutral/shared/config/actors/Api.d.ts +70 -72
  90. package/dist/neutral/shared/config/actors/Api.d.ts.map +1 -1
  91. package/dist/neutral/shared/config/actors/Bridge.d.ts +70 -72
  92. package/dist/neutral/shared/config/actors/Bridge.d.ts.map +1 -1
  93. package/dist/neutral/shared/config/actors/Mempool.d.ts +70 -72
  94. package/dist/neutral/shared/config/actors/Mempool.d.ts.map +1 -1
  95. package/dist/neutral/shared/config/actors/Producer.d.ts +70 -72
  96. package/dist/neutral/shared/config/actors/Producer.d.ts.map +1 -1
  97. package/dist/neutral/shared/config/actors/RewardRedemption.d.ts +70 -72
  98. package/dist/neutral/shared/config/actors/RewardRedemption.d.ts.map +1 -1
  99. package/dist/neutral/shared/config/actors/Validator.d.ts +70 -72
  100. package/dist/neutral/shared/config/actors/Validator.d.ts.map +1 -1
  101. package/dist/neutral/shared/config/locators/basicRemoteRunnerLocator.d.ts +9 -0
  102. package/dist/neutral/shared/config/locators/basicRemoteRunnerLocator.d.ts.map +1 -0
  103. package/dist/neutral/shared/config/locators/basicRemoteViewerLocator.d.ts +7 -0
  104. package/dist/neutral/shared/config/locators/basicRemoteViewerLocator.d.ts.map +1 -0
  105. package/dist/neutral/shared/config/locators/commonLocatorFromConfig.d.ts.map +1 -1
  106. package/dist/neutral/shared/config/locators/index.d.ts +2 -2
  107. package/dist/neutral/shared/config/locators/index.d.ts.map +1 -1
  108. package/dist/neutral/shared/config/mergeConfig.d.ts +6 -6
  109. package/dist/neutral/shared/index.d.ts +0 -1
  110. package/dist/neutral/shared/index.d.ts.map +1 -1
  111. package/dist/neutral/shared/init/index.d.ts +0 -1
  112. package/dist/neutral/shared/init/index.d.ts.map +1 -1
  113. package/dist/node/index.mjs +483 -402
  114. package/dist/node/index.mjs.map +1 -1
  115. package/dist/node/neutral/config/locators/basicRemoteRunnerLocator.d.ts +1 -2
  116. package/dist/node/neutral/config/locators/basicRemoteRunnerLocator.d.ts.map +1 -1
  117. package/dist/node/neutral/config/locators/basicRemoteViewerLocator.d.ts +1 -2
  118. package/dist/node/neutral/config/locators/basicRemoteViewerLocator.d.ts.map +1 -1
  119. package/dist/node/neutral/config/locators/rootLocatorFromConfig.d.ts.map +1 -1
  120. package/dist/node/node/config/locators/actors/bridgeLocatorFromConfig.d.ts.map +1 -1
  121. package/dist/node/node/config/locators/basicRemoteRunnerLocator.d.ts +1 -2
  122. package/dist/node/node/config/locators/basicRemoteRunnerLocator.d.ts.map +1 -1
  123. package/dist/node/node/config/locators/basicRemoteViewerLocator.d.ts +1 -2
  124. package/dist/node/node/config/locators/basicRemoteViewerLocator.d.ts.map +1 -1
  125. package/dist/node/node/config/locators/contextFromConfigWithoutLocator.d.ts.map +1 -0
  126. package/dist/node/node/config/locators/index.d.ts +2 -0
  127. package/dist/node/node/config/locators/index.d.ts.map +1 -1
  128. package/dist/node/node/config/locators/locatorsFromConfig.d.ts.map +1 -1
  129. package/dist/node/node/config/locators/telemetryContextFromConfig.d.ts.map +1 -0
  130. package/dist/node/node/config/tryParseConfig.d.ts +12 -12
  131. package/dist/node/node/evm/index.d.ts.map +1 -0
  132. package/dist/node/node/evm/initChainId.d.ts.map +1 -0
  133. package/dist/node/node/evm/initEvmProvider.d.ts.map +1 -0
  134. package/dist/node/node/evm/initInfuraProvider.d.ts.map +1 -0
  135. package/dist/node/node/evm/initJsonRpcProvider.d.ts.map +1 -0
  136. package/dist/node/node/index.d.ts +2 -0
  137. package/dist/node/node/index.d.ts.map +1 -1
  138. package/dist/node/node/init/index.d.ts +1 -0
  139. package/dist/node/node/init/index.d.ts.map +1 -1
  140. package/dist/node/node/init/initEvmProvidersIfAvailable.d.ts.map +1 -0
  141. package/dist/node/node/sharedMiddleware.d.ts +3 -0
  142. package/dist/node/node/sharedMiddleware.d.ts.map +1 -0
  143. package/dist/node/shared/actor/ValidatorActor.d.ts +3 -1
  144. package/dist/node/shared/actor/ValidatorActor.d.ts.map +1 -1
  145. package/dist/node/shared/config/actors/Api.d.ts +70 -72
  146. package/dist/node/shared/config/actors/Api.d.ts.map +1 -1
  147. package/dist/node/shared/config/actors/Bridge.d.ts +70 -72
  148. package/dist/node/shared/config/actors/Bridge.d.ts.map +1 -1
  149. package/dist/node/shared/config/actors/Mempool.d.ts +70 -72
  150. package/dist/node/shared/config/actors/Mempool.d.ts.map +1 -1
  151. package/dist/node/shared/config/actors/Producer.d.ts +70 -72
  152. package/dist/node/shared/config/actors/Producer.d.ts.map +1 -1
  153. package/dist/node/shared/config/actors/RewardRedemption.d.ts +70 -72
  154. package/dist/node/shared/config/actors/RewardRedemption.d.ts.map +1 -1
  155. package/dist/node/shared/config/actors/Validator.d.ts +70 -72
  156. package/dist/node/shared/config/actors/Validator.d.ts.map +1 -1
  157. package/dist/node/shared/config/locators/basicRemoteRunnerLocator.d.ts +9 -0
  158. package/dist/node/shared/config/locators/basicRemoteRunnerLocator.d.ts.map +1 -0
  159. package/dist/node/shared/config/locators/basicRemoteViewerLocator.d.ts +7 -0
  160. package/dist/node/shared/config/locators/basicRemoteViewerLocator.d.ts.map +1 -0
  161. package/dist/node/shared/config/locators/commonLocatorFromConfig.d.ts.map +1 -1
  162. package/dist/node/shared/config/locators/index.d.ts +2 -2
  163. package/dist/node/shared/config/locators/index.d.ts.map +1 -1
  164. package/dist/node/shared/config/mergeConfig.d.ts +6 -6
  165. package/dist/node/shared/index.d.ts +0 -1
  166. package/dist/node/shared/index.d.ts.map +1 -1
  167. package/dist/node/shared/init/index.d.ts +0 -1
  168. package/dist/node/shared/init/index.d.ts.map +1 -1
  169. package/package.json +37 -32
  170. package/src/neutral/config/locators/basicRemoteRunnerLocator.ts +3 -26
  171. package/src/neutral/config/locators/basicRemoteViewerLocator.ts +3 -29
  172. package/src/neutral/config/locators/rootLocatorFromConfig.ts +2 -4
  173. package/src/node/config/locators/actors/bridgeLocatorFromConfig.ts +14 -14
  174. package/src/node/config/locators/basicRemoteRunnerLocator.ts +22 -31
  175. package/src/node/config/locators/basicRemoteViewerLocator.ts +10 -34
  176. package/src/{shared → node}/config/locators/contextFromConfigWithoutLocator.ts +1 -1
  177. package/src/node/config/locators/index.ts +2 -0
  178. package/src/node/config/locators/localLocatorFromConfig.ts +1 -1
  179. package/src/node/config/locators/locatorsFromConfig.ts +2 -3
  180. package/src/node/config/locators/rootLocatorFromConfig.ts +1 -1
  181. package/src/node/config/tryParseConfig.ts +1 -1
  182. package/src/node/index.ts +2 -0
  183. package/src/node/init/index.ts +1 -0
  184. package/src/node/sharedMiddleware.ts +24 -0
  185. package/src/shared/actor/ValidatorActor.ts +9 -2
  186. package/src/shared/config/actors/Bridge.ts +2 -3
  187. package/src/shared/config/locators/basicRemoteRunnerLocator.ts +63 -0
  188. package/src/shared/config/locators/basicRemoteViewerLocator.ts +44 -0
  189. package/src/shared/config/locators/commonLocatorFromConfig.ts +16 -3
  190. package/src/shared/config/locators/index.ts +2 -2
  191. package/src/shared/index.ts +0 -1
  192. package/src/shared/init/index.ts +0 -1
  193. package/dist/browser/shared/config/locators/contextFromConfigWithoutLocator.d.ts.map +0 -1
  194. package/dist/browser/shared/config/locators/telemetryContextFromConfig.d.ts.map +0 -1
  195. package/dist/browser/shared/evm/index.d.ts.map +0 -1
  196. package/dist/browser/shared/evm/initChainId.d.ts.map +0 -1
  197. package/dist/browser/shared/evm/initEvmProvider.d.ts.map +0 -1
  198. package/dist/browser/shared/evm/initInfuraProvider.d.ts.map +0 -1
  199. package/dist/browser/shared/evm/initJsonRpcProvider.d.ts.map +0 -1
  200. package/dist/browser/shared/init/initEvmProvidersIfAvailable.d.ts.map +0 -1
  201. package/dist/neutral/shared/config/locators/contextFromConfigWithoutLocator.d.ts.map +0 -1
  202. package/dist/neutral/shared/config/locators/telemetryContextFromConfig.d.ts.map +0 -1
  203. package/dist/neutral/shared/evm/index.d.ts.map +0 -1
  204. package/dist/neutral/shared/evm/initChainId.d.ts.map +0 -1
  205. package/dist/neutral/shared/evm/initEvmProvider.d.ts.map +0 -1
  206. package/dist/neutral/shared/evm/initInfuraProvider.d.ts.map +0 -1
  207. package/dist/neutral/shared/evm/initJsonRpcProvider.d.ts.map +0 -1
  208. package/dist/neutral/shared/init/initEvmProvidersIfAvailable.d.ts.map +0 -1
  209. package/dist/node/shared/config/locators/contextFromConfigWithoutLocator.d.ts.map +0 -1
  210. package/dist/node/shared/config/locators/telemetryContextFromConfig.d.ts.map +0 -1
  211. package/dist/node/shared/evm/index.d.ts.map +0 -1
  212. package/dist/node/shared/evm/initChainId.d.ts.map +0 -1
  213. package/dist/node/shared/evm/initEvmProvider.d.ts.map +0 -1
  214. package/dist/node/shared/evm/initInfuraProvider.d.ts.map +0 -1
  215. package/dist/node/shared/evm/initJsonRpcProvider.d.ts.map +0 -1
  216. package/dist/node/shared/init/initEvmProvidersIfAvailable.d.ts.map +0 -1
  217. /package/dist/browser/{shared → node}/config/locators/contextFromConfigWithoutLocator.d.ts +0 -0
  218. /package/dist/browser/{shared → node}/config/locators/telemetryContextFromConfig.d.ts +0 -0
  219. /package/dist/browser/{shared → node}/evm/index.d.ts +0 -0
  220. /package/dist/browser/{shared → node}/evm/initChainId.d.ts +0 -0
  221. /package/dist/browser/{shared → node}/evm/initEvmProvider.d.ts +0 -0
  222. /package/dist/browser/{shared → node}/evm/initInfuraProvider.d.ts +0 -0
  223. /package/dist/browser/{shared → node}/evm/initJsonRpcProvider.d.ts +0 -0
  224. /package/dist/browser/{shared → node}/init/initEvmProvidersIfAvailable.d.ts +0 -0
  225. /package/dist/neutral/{shared → node}/config/locators/contextFromConfigWithoutLocator.d.ts +0 -0
  226. /package/dist/neutral/{shared → node}/config/locators/telemetryContextFromConfig.d.ts +0 -0
  227. /package/dist/neutral/{shared → node}/evm/index.d.ts +0 -0
  228. /package/dist/neutral/{shared → node}/evm/initChainId.d.ts +0 -0
  229. /package/dist/neutral/{shared → node}/evm/initEvmProvider.d.ts +0 -0
  230. /package/dist/neutral/{shared → node}/evm/initInfuraProvider.d.ts +0 -0
  231. /package/dist/neutral/{shared → node}/evm/initJsonRpcProvider.d.ts +0 -0
  232. /package/dist/neutral/{shared → node}/init/initEvmProvidersIfAvailable.d.ts +0 -0
  233. /package/dist/node/{shared → node}/config/locators/contextFromConfigWithoutLocator.d.ts +0 -0
  234. /package/dist/node/{shared → node}/config/locators/telemetryContextFromConfig.d.ts +0 -0
  235. /package/dist/node/{shared → node}/evm/index.d.ts +0 -0
  236. /package/dist/node/{shared → node}/evm/initChainId.d.ts +0 -0
  237. /package/dist/node/{shared → node}/evm/initEvmProvider.d.ts +0 -0
  238. /package/dist/node/{shared → node}/evm/initInfuraProvider.d.ts +0 -0
  239. /package/dist/node/{shared → node}/evm/initJsonRpcProvider.d.ts +0 -0
  240. /package/dist/node/{shared → node}/init/initEvmProvidersIfAvailable.d.ts +0 -0
  241. /package/src/{shared → node}/config/locators/telemetryContextFromConfig.ts +0 -0
  242. /package/src/{shared → node}/evm/index.ts +0 -0
  243. /package/src/{shared → node}/evm/initChainId.ts +0 -0
  244. /package/src/{shared → node}/evm/initEvmProvider.ts +0 -0
  245. /package/src/{shared → node}/evm/initInfuraProvider.ts +0 -0
  246. /package/src/{shared → node}/evm/initJsonRpcProvider.ts +0 -0
  247. /package/src/{shared → node}/init/initEvmProvidersIfAvailable.ts +0 -0
@@ -1,37 +1,11 @@
1
- import { isDefined } from '@xylabs/sdk-js'
2
1
  import type { RemoteConfig } from '@xyo-network/xl1-sdk'
3
- import {
4
- ActorConfigZod,
5
- ProviderFactoryLocator, RestDataLakeViewer,
6
- SimpleTransactionViewer,
7
- SimpleXyoConnectionViewer, SimpleXyoGateway,
8
- } from '@xyo-network/xl1-sdk'
9
2
 
10
- import { commonLocatorFromConfig, remoteLocatorFromConfig } from '../../../shared/index.ts'
3
+ import { baseBasicRemoteViewerLocator } from '../../../shared/index.ts'
11
4
 
12
- export async function basicRemoteViewerLocator(
5
+ export function basicRemoteViewerLocator(
13
6
  name: string,
14
7
  remoteConfig: RemoteConfig,
15
8
  dataLakeEndpoint?: string,
16
9
  ) {
17
- const config = ActorConfigZod.parse({ name, remote: remoteConfig })
18
- const rootLocator = await commonLocatorFromConfig({
19
- config, singletons: {}, caches: {},
20
- })
21
- const remoteLocator = await remoteLocatorFromConfig(rootLocator.context)
22
- const locator = new ProviderFactoryLocator(remoteLocator.context, {})
23
- locator.registerMany([
24
- SimpleXyoGateway.factory<SimpleXyoGateway>(SimpleXyoGateway.dependencies, {}),
25
- SimpleXyoConnectionViewer.factory<SimpleXyoConnectionViewer>(SimpleXyoConnectionViewer.dependencies, {}),
26
- SimpleTransactionViewer.factory<SimpleTransactionViewer>(SimpleTransactionViewer.dependencies, {}),
27
- ])
28
-
29
- if (isDefined(dataLakeEndpoint)) {
30
- const dataLakeViewerParams = { endpoint: dataLakeEndpoint }
31
- locator.register(RestDataLakeViewer.factory<RestDataLakeViewer>(RestDataLakeViewer.dependencies, dataLakeViewerParams))
32
- }
33
-
34
- locator.freeze()
35
-
36
- return locator
10
+ return baseBasicRemoteViewerLocator(name, remoteConfig, dataLakeEndpoint)
37
11
  }
@@ -1,9 +1,7 @@
1
1
  import { assertEx } from '@xylabs/sdk-js'
2
2
  import type { ActorConfigContext, ProviderFactoryLocatorInstance } from '@xyo-network/xl1-sdk'
3
3
 
4
- import {
5
- commonLocatorFromConfig, initEvmProvidersIfAvailable, remoteLocatorFromConfig,
6
- } from '../../../shared/index.ts'
4
+ import { commonLocatorFromConfig, remoteLocatorFromConfig } from '../../../shared/index.ts'
7
5
 
8
6
  export async function rootLocatorFromConfig(
9
7
  context: ActorConfigContext,
@@ -15,7 +13,7 @@ export async function rootLocatorFromConfig(
15
13
  ? remoteLocatorFromConfig(context, validateDepsOnRegister)
16
14
  : undefined)
17
15
  locator = assertEx(newLocator, () => 'Root locator could not be created from config. No supported configuration found.')
18
- locator = await initEvmProvidersIfAvailable(locator)
16
+ // locator = await initEvmProvidersIfAvailable(locator)
19
17
  locator.freeze()
20
18
  return locator
21
19
  }
@@ -15,6 +15,7 @@ import {
15
15
  ProviderFactoryLocator,
16
16
  RestDataLakeRunner,
17
17
  RestDataLakeViewer,
18
+ SimpleStakeEventsViewer,
18
19
  SimpleXyoConnectionRunner,
19
20
  SimpleXyoGatewayRunner,
20
21
  SimpleXyoRunner,
@@ -54,25 +55,24 @@ export async function bridgeLocatorFromConfig(
54
55
  ])
55
56
  }
56
57
  if (isDefined(dataLake)) {
57
- const { drivers = [] } = dataLake
58
- for (const dataLakeDriver of drivers) {
59
- const { protocol, url: endpoint } = dataLakeDriver
60
- switch (protocol) {
61
- case 'rest': {
62
- locator.registerMany([
63
- RestDataLakeRunner.factory<RestDataLakeRunner<RestDataLakeRunnerParams>>(RestDataLakeRunner.dependencies, { endpoint }),
64
- RestDataLakeViewer.factory<RestDataLakeViewer>(RestDataLakeViewer.dependencies, { endpoint }),
65
- ])
66
- break
67
- }
68
- default: {
69
- throw new Error(`Unsupported data lake protocol: ${protocol}`)
70
- }
58
+ const { driver } = dataLake
59
+ switch (driver) {
60
+ case 'rest': {
61
+ const { url: endpoint } = dataLake
62
+ locator.registerMany([
63
+ RestDataLakeRunner.factory<RestDataLakeRunner<RestDataLakeRunnerParams>>(RestDataLakeRunner.dependencies, { endpoint }),
64
+ RestDataLakeViewer.factory<RestDataLakeViewer>(RestDataLakeViewer.dependencies, { endpoint }),
65
+ ])
66
+ break
67
+ }
68
+ default: {
69
+ throw new Error(`Unsupported data lake protocol: ${driver}`)
71
70
  }
72
71
  }
73
72
  }
74
73
 
75
74
  locator.registerMany([
75
+ SimpleStakeEventsViewer.factory<SimpleStakeEventsViewer>(SimpleStakeEventsViewer.dependencies, { positions: [] }),
76
76
  SimpleXyoSigner.factory<SimpleXyoSigner>(SimpleXyoSigner.dependencies, { account: signerAccount }),
77
77
  SimpleXyoRunner.factory<SimpleXyoRunner>(SimpleXyoRunner.dependencies, {}),
78
78
  SimpleXyoConnectionRunner.factory<SimpleXyoConnectionRunner>(SimpleXyoConnectionRunner.dependencies, {}),
@@ -1,47 +1,38 @@
1
- import { isDefined } from '@xylabs/sdk-js'
2
1
  import type { AccountInstance } from '@xyo-network/sdk-js'
3
2
  import { isAccountInstance } from '@xyo-network/sdk-js'
4
3
  import type {
5
4
  RemoteConfig, RpcTransport, XyoSignerRpcSchemas,
6
5
  } from '@xyo-network/xl1-sdk'
7
6
  import {
8
- JsonRpcXyoRunner, JsonRpcXyoSigner,
9
- ProviderFactoryLocator, RestDataLakeViewer,
10
- SimpleXyoConnectionRunner,
7
+ JsonRpcAccountBalanceViewer,
8
+ JsonRpcXyoSigner,
11
9
  SimpleXyoSigner,
12
10
  } from '@xyo-network/xl1-sdk'
13
11
 
14
- import { basicRemoteViewerLocator } from './basicRemoteViewerLocator.ts'
12
+ import { baseBasicRemoteRunnerLocator } from '../../../shared/index.ts'
15
13
 
16
- export async function basicRemoteRunnerLocator(
14
+ function signerFactoryFromParam(signer: RpcTransport<XyoSignerRpcSchemas> | AccountInstance) {
15
+ if (isAccountInstance(signer)) {
16
+ return SimpleXyoSigner.factory<SimpleXyoSigner>(SimpleXyoSigner.dependencies, { account: signer })
17
+ }
18
+ return JsonRpcXyoSigner.factory<JsonRpcXyoSigner>(JsonRpcXyoSigner.dependencies, { transport: signer })
19
+ }
20
+
21
+ export function basicRemoteRunnerLocator(
17
22
  name: string,
18
23
  remoteConfig: RemoteConfig,
19
24
  signer: RpcTransport<XyoSignerRpcSchemas> | AccountInstance,
20
25
  dataLakeEndpoint?: string,
21
26
  ) {
22
- const remoteViewerLocator = await basicRemoteViewerLocator(name, remoteConfig, dataLakeEndpoint)
23
- const locator = new ProviderFactoryLocator(remoteViewerLocator.context, {})
24
- locator.registerMany([
25
- SimpleXyoConnectionRunner.factory<SimpleXyoConnectionRunner>(SimpleXyoConnectionRunner.dependencies, {}),
26
- JsonRpcXyoRunner.factory<JsonRpcXyoRunner>(JsonRpcXyoRunner.dependencies, {}),
27
- ])
28
-
29
- if (isAccountInstance(signer)) {
30
- locator.register(
31
- SimpleXyoSigner.factory<SimpleXyoSigner>(SimpleXyoSigner.dependencies, { account: signer }),
32
- )
33
- } else {
34
- locator.register(
35
- JsonRpcXyoSigner.factory<JsonRpcXyoSigner>(JsonRpcXyoSigner.dependencies, { transport: signer }),
36
- )
37
- }
38
-
39
- if (isDefined(dataLakeEndpoint)) {
40
- const dataLakeViewerParams = { endpoint: dataLakeEndpoint }
41
- locator.register(RestDataLakeViewer.factory<RestDataLakeViewer>(RestDataLakeViewer.dependencies, dataLakeViewerParams))
42
- }
43
-
44
- locator.freeze()
45
-
46
- return locator
27
+ const transport = isAccountInstance(signer) ? undefined as never : signer
28
+ return baseBasicRemoteRunnerLocator(name, remoteConfig, transport, dataLakeEndpoint, {
29
+ additionalProviders: [
30
+ JsonRpcAccountBalanceViewer.factory<JsonRpcAccountBalanceViewer>(
31
+ JsonRpcAccountBalanceViewer.dependencies,
32
+ {},
33
+ ),
34
+ ],
35
+ signerFactory: signerFactoryFromParam(signer),
36
+ skipGatewayRunner: true,
37
+ })
47
38
  }
@@ -1,43 +1,19 @@
1
- import { isDefined } from '@xylabs/sdk-js'
2
1
  import type { RemoteConfig } from '@xyo-network/xl1-sdk'
3
- import {
4
- ActorConfigZod,
5
- JsonRpcAccountBalanceViewer,
6
- ProviderFactoryLocator, RestDataLakeViewer,
7
- SimpleTransactionViewer,
8
- SimpleXyoConnectionViewer, SimpleXyoGateway,
9
- } from '@xyo-network/xl1-sdk'
2
+ import { JsonRpcAccountBalanceViewer } from '@xyo-network/xl1-sdk'
10
3
 
11
- import { remoteLocatorFromConfig } from '../../../shared/index.ts'
12
- import { rootLocatorFromConfig } from './rootLocatorFromConfig.ts'
4
+ import { baseBasicRemoteViewerLocator } from '../../../shared/index.ts'
13
5
 
14
- export async function basicRemoteViewerLocator(
6
+ export function basicRemoteViewerLocator(
15
7
  name: string,
16
8
  remoteConfig: RemoteConfig,
17
9
  dataLakeEndpoint?: string,
18
10
  ) {
19
- const config = ActorConfigZod.parse({ name, remote: remoteConfig })
20
- const rootLocator = await rootLocatorFromConfig({
21
- config, singletons: {}, caches: {},
11
+ return baseBasicRemoteViewerLocator(name, remoteConfig, dataLakeEndpoint, {
12
+ additionalProviders: [
13
+ JsonRpcAccountBalanceViewer.factory<JsonRpcAccountBalanceViewer>(
14
+ JsonRpcAccountBalanceViewer.dependencies,
15
+ {},
16
+ ),
17
+ ],
22
18
  })
23
- const remoteLocator = await remoteLocatorFromConfig(rootLocator.context)
24
- const locator = new ProviderFactoryLocator(remoteLocator.context, {})
25
- locator.registerMany([
26
- SimpleTransactionViewer.factory<SimpleTransactionViewer>(SimpleTransactionViewer.dependencies, {}),
27
- JsonRpcAccountBalanceViewer.factory<JsonRpcAccountBalanceViewer>(
28
- JsonRpcAccountBalanceViewer.dependencies,
29
- {},
30
- ),
31
- SimpleXyoConnectionViewer.factory<SimpleXyoConnectionViewer>(SimpleXyoConnectionViewer.dependencies, {}),
32
- SimpleXyoGateway.factory<SimpleXyoGateway>(SimpleXyoGateway.dependencies, {}),
33
- ])
34
-
35
- if (isDefined(dataLakeEndpoint)) {
36
- const dataLakeViewerParams = { endpoint: dataLakeEndpoint }
37
- locator.register(RestDataLakeViewer.factory<RestDataLakeViewer>(RestDataLakeViewer.dependencies, dataLakeViewerParams))
38
- }
39
-
40
- locator.freeze()
41
-
42
- return locator
43
19
  }
@@ -1,7 +1,7 @@
1
1
  import type { Logger } from '@xylabs/sdk-js'
2
2
  import type { Config, CreatableProviderContext } from '@xyo-network/xl1-sdk'
3
3
 
4
- import { initStatusReporter } from '../../init/index.ts'
4
+ import { initStatusReporter } from '../../../shared/index.ts'
5
5
  import { telemetryContextFromConfig } from './telemetryContextFromConfig.ts'
6
6
 
7
7
  export async function contextFromConfigWithoutLocator(
@@ -1,5 +1,7 @@
1
1
  export * from './basicRemoteRunnerLocator.ts'
2
2
  export * from './basicRemoteViewerLocator.ts'
3
+ export * from './contextFromConfigWithoutLocator.ts'
3
4
  export * from './localLocatorFromConfig.ts'
4
5
  export * from './locatorsFromConfig.ts'
5
6
  export * from './rootLocatorFromConfig.ts'
7
+ export * from './telemetryContextFromConfig.ts'
@@ -14,7 +14,7 @@ import {
14
14
  SimpleXyoViewer,
15
15
  } from '@xyo-network/xl1-sdk'
16
16
 
17
- import { initActorWallet } from '../../../neutral/index.ts'
17
+ import { initActorWallet } from '../../../shared/index.ts'
18
18
  import {
19
19
  initBalanceSummaryMap, initFinalizationArchivistIfNeeded,
20
20
  initServerNode, initTransferSummaryMap,
@@ -6,9 +6,8 @@ import {
6
6
  } from '@xyo-network/xl1-sdk'
7
7
 
8
8
  import {
9
- ApiConfigZod, BridgeConfigZod,
10
- MempoolConfigZod, ProducerConfigZod, RewardRedemptionConfigZod,
11
- } from '../../../neutral/index.ts'
9
+ ApiConfigZod, BridgeConfigZod, MempoolConfigZod, ProducerConfigZod, RewardRedemptionConfigZod,
10
+ } from '../../../shared/index.ts'
12
11
  import {
13
12
  apiLocatorFromConfig, bridgeLocatorFromConfig, mempoolLocatorFromConfig,
14
13
  producerLocatorFromConfig, rewardRedemptionLocatorFromConfig, validatorLocatorFromConfig,
@@ -2,7 +2,7 @@ import type { ActorConfigContext, ProviderFactoryLocatorInstance } from '@xyo-ne
2
2
 
3
3
  import {
4
4
  commonLocatorFromConfig, initEvmProvidersIfAvailable, remoteLocatorFromConfig,
5
- } from '../../../neutral/index.ts'
5
+ } from '../../index.ts'
6
6
  import { localLocatorFromConfig } from './localLocatorFromConfig.ts'
7
7
 
8
8
  export async function rootLocatorFromConfig(
@@ -29,7 +29,7 @@ export async function tryParseConfig(options?: { configPath?: string; searchPlac
29
29
  searchPlaces,
30
30
  },
31
31
  )
32
- const result = configPath
32
+ const result = isDefined(configPath)
33
33
  ? (await explorer.load(configPath))?.config
34
34
  : (await explorer.search())?.config
35
35
  if (isDefined(result) && !isNull(result)) {
package/src/node/index.ts CHANGED
@@ -1,6 +1,8 @@
1
1
  export * from '../shared/index.ts'
2
2
  export * from './archivists/index.ts'
3
3
  export * from './config/index.ts'
4
+ export * from './evm/index.ts'
4
5
  export * from './health/index.ts'
5
6
  export * from './init/index.ts'
6
7
  export * from './manifest/index.ts'
8
+ export * from './sharedMiddleware.ts'
@@ -1,4 +1,5 @@
1
1
  export * from './initBalanceSummaryMap.ts'
2
+ export * from './initEvmProvidersIfAvailable.ts'
2
3
  export * from './initFinalizationArchivistIfNeeded.ts'
3
4
  export * from './initFinalizedArchivist.ts'
4
5
  export * from './initServerNode.ts'
@@ -0,0 +1,24 @@
1
+ import {
2
+ customPoweredByHeader,
3
+ disableCaseSensitiveRouting,
4
+ disableExpressDefaultPoweredByHeader,
5
+ getJsonBodyParser,
6
+ getJsonBodyParserOptions,
7
+ responseProfiler,
8
+ standardResponses,
9
+ } from '@xylabs/express'
10
+ import compression from 'compression'
11
+ import cors from 'cors'
12
+ import type { Express } from 'express'
13
+
14
+ export function sharedMiddleware(app: Express): void {
15
+ app.set('etag', false)
16
+ app.use(cors())
17
+ app.use(compression())
18
+ app.use(responseProfiler)
19
+ app.use(getJsonBodyParser(getJsonBodyParserOptions({ limit: '1mb' })))
20
+ app.use(standardResponses)
21
+ disableExpressDefaultPoweredByHeader(app)
22
+ app.use(customPoweredByHeader)
23
+ disableCaseSensitiveRouting(app)
24
+ }
@@ -2,12 +2,12 @@ import type { Hash } from '@xylabs/sdk-js'
2
2
  import { creatable } from '@xylabs/sdk-js'
3
3
  import { processPendingBlocks } from '@xyo-network/chain-sdk'
4
4
  import type {
5
- ActorParamsV3, BlockBoundWitness, BlockViewer,
5
+ ActorParamsV3, BlockBoundWitness, BlockValidationViewer, BlockViewer,
6
6
  FinalizationRunner,
7
7
  MempoolViewer,
8
8
  } from '@xyo-network/xl1-sdk'
9
9
  import {
10
- ActorV3, BlockViewerMoniker, FinalizationRunnerMoniker,
10
+ ActorV3, BlockValidationViewerMoniker, BlockViewerMoniker, FinalizationRunnerMoniker,
11
11
  MempoolViewerMoniker,
12
12
  } from '@xyo-network/xl1-sdk'
13
13
 
@@ -20,6 +20,7 @@ export type ValidatorActorParams = ActorParamsV3<
20
20
 
21
21
  @creatable()
22
22
  export class ValidatorActor extends ActorV3<ValidatorActorParams> {
23
+ protected _blockValidationViewer!: BlockValidationViewer
23
24
  protected _blockViewer!: BlockViewer
24
25
  protected _finalizationRunner!: FinalizationRunner
25
26
  protected _lastValidatedBlock: BlockBoundWitness | undefined
@@ -30,6 +31,10 @@ export class ValidatorActor extends ActorV3<ValidatorActorParams> {
30
31
  return this.params.config.allowedProducers ?? []
31
32
  }
32
33
 
34
+ protected get blockValidationViewer() {
35
+ return this._blockValidationViewer
36
+ }
37
+
33
38
  protected get blockViewer() {
34
39
  return this._blockViewer
35
40
  }
@@ -44,6 +49,7 @@ export class ValidatorActor extends ActorV3<ValidatorActorParams> {
44
49
 
45
50
  override async createHandler() {
46
51
  await super.startHandler()
52
+ this._blockValidationViewer = await this.locator.getInstance(BlockValidationViewerMoniker)
47
53
  this._blockViewer = await this.locator.getInstance(BlockViewerMoniker)
48
54
  this._finalizationRunner = await this.locator.getInstance(FinalizationRunnerMoniker)
49
55
  this._mempoolViewer = await this.locator.getInstance(MempoolViewerMoniker)
@@ -55,6 +61,7 @@ export class ValidatorActor extends ActorV3<ValidatorActorParams> {
55
61
  await this.spanAsync('processPendingBlocks', async () => {
56
62
  console.log('ValidatorActor: Processing pending blocks...')
57
63
  await processPendingBlocks({
64
+ blockValidationViewer: this.blockValidationViewer,
58
65
  context: this.context,
59
66
  logger: this.logger,
60
67
  mempoolViewer: this.mempoolViewer,
@@ -1,6 +1,5 @@
1
1
  import {
2
- AddressZod, HexZod, toAddress, toHex,
3
- zodAsFactory, zodIsFactory, zodToFactory,
2
+ AddressZod, HexZod, toAddress, toHex, zodAsFactory, zodIsFactory, zodToFactory,
4
3
  } from '@xylabs/sdk-js'
5
4
  import type { ChainId } from '@xyo-network/xl1-sdk'
6
5
  import {
@@ -14,7 +13,7 @@ const DEFAULT_HARDHAT_BRIDGE_CONTRACT = toAddress('2279B7A0a67DB372996a5FaB50D91
14
13
  const DEFAULT_HARDHAT_CHAIN_ID: ChainId = toHex('7A69')
15
14
  const DEFAULT_HARDHAT_REMOTE_CHAIN_WALLET_PRIVATE_KEY = toHex('0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80')
16
15
  const DEFAULT_HARDHAT_TOKEN_CONTRACT = toAddress('5FbDB2315678afecb367f032d93F642f64180aa3')
17
- const DEFAULT_MAX_BRIDGE_AMOUNT = toHex(XL1(100_000_000n) * AttoXL1ConvertFactor.xl1)
16
+ const DEFAULT_MAX_BRIDGE_AMOUNT = toHex(XL1(1_000_000n) * AttoXL1ConvertFactor.xl1)
18
17
  const DEFAULT_MIN_BRIDGE_AMOUNT = toHex(XL1(1500n) * AttoXL1ConvertFactor.xl1)
19
18
 
20
19
  export const BasisPointsZod = z.coerce.number().int().nonnegative().max(10_000)
@@ -0,0 +1,63 @@
1
+ import { isDefined } from '@xylabs/sdk-js'
2
+ import type {
3
+ CreatableProviderFactory, ProviderFactoryLocatorInstance, RemoteConfig, RpcTransport, XyoSignerRpcSchemas,
4
+ } from '@xyo-network/xl1-sdk'
5
+ import {
6
+ JsonRpcXyoRunner, JsonRpcXyoSigner,
7
+ ProviderFactoryLocator, RestDataLakeViewer,
8
+ SimpleXyoConnectionRunner,
9
+ SimpleXyoGatewayRunner,
10
+ } from '@xyo-network/xl1-sdk'
11
+
12
+ import type { BasicRemoteViewerLocatorOptions } from './basicRemoteViewerLocator.ts'
13
+ import { baseBasicRemoteViewerLocator } from './basicRemoteViewerLocator.ts'
14
+
15
+ export interface BasicRemoteRunnerLocatorOptions extends BasicRemoteViewerLocatorOptions {
16
+ additionalRunnerProviders?: CreatableProviderFactory[]
17
+ signerFactory?: CreatableProviderFactory
18
+ skipGatewayRunner?: boolean
19
+ }
20
+
21
+ export async function baseBasicRemoteRunnerLocator(
22
+ name: string,
23
+ remoteConfig: RemoteConfig,
24
+ signerTransport: RpcTransport<XyoSignerRpcSchemas>,
25
+ dataLakeEndpoint?: string,
26
+ options?: BasicRemoteRunnerLocatorOptions,
27
+ ): Promise<ProviderFactoryLocatorInstance> {
28
+ const remoteViewerLocator = await baseBasicRemoteViewerLocator(name, remoteConfig, dataLakeEndpoint, options)
29
+ const locator = new ProviderFactoryLocator(remoteViewerLocator.context, {})
30
+
31
+ const providers: CreatableProviderFactory[] = [
32
+ SimpleXyoConnectionRunner.factory<SimpleXyoConnectionRunner>(SimpleXyoConnectionRunner.dependencies, {}),
33
+ JsonRpcXyoRunner.factory<JsonRpcXyoRunner>(JsonRpcXyoRunner.dependencies, {}),
34
+ ]
35
+
36
+ if (!options?.skipGatewayRunner) {
37
+ providers.push(
38
+ SimpleXyoGatewayRunner.factory<SimpleXyoGatewayRunner>(SimpleXyoGatewayRunner.dependencies, {}),
39
+ )
40
+ }
41
+
42
+ locator.registerMany([
43
+ ...providers,
44
+ ...options?.additionalRunnerProviders ?? [],
45
+ ])
46
+
47
+ if (options?.signerFactory) {
48
+ locator.register(options.signerFactory)
49
+ } else {
50
+ locator.register(
51
+ JsonRpcXyoSigner.factory<JsonRpcXyoSigner>(JsonRpcXyoSigner.dependencies, { transport: signerTransport }),
52
+ )
53
+ }
54
+
55
+ if (isDefined(dataLakeEndpoint)) {
56
+ const dataLakeViewerParams = { endpoint: dataLakeEndpoint }
57
+ locator.register(RestDataLakeViewer.factory<RestDataLakeViewer>(RestDataLakeViewer.dependencies, dataLakeViewerParams))
58
+ }
59
+
60
+ locator.freeze()
61
+
62
+ return locator
63
+ }
@@ -0,0 +1,44 @@
1
+ import { isDefined } from '@xylabs/sdk-js'
2
+ import type { CreatableProviderFactory, RemoteConfig } from '@xyo-network/xl1-sdk'
3
+ import {
4
+ ActorConfigZod,
5
+ ProviderFactoryLocator, RestDataLakeViewer,
6
+ SimpleTransactionViewer,
7
+ SimpleXyoConnectionViewer, SimpleXyoGateway,
8
+ } from '@xyo-network/xl1-sdk'
9
+
10
+ import { commonLocatorFromConfig } from './commonLocatorFromConfig.ts'
11
+ import { remoteLocatorFromConfig } from './remoteLocatorFromConfig.ts'
12
+
13
+ export interface BasicRemoteViewerLocatorOptions {
14
+ additionalProviders?: CreatableProviderFactory[]
15
+ }
16
+
17
+ export async function baseBasicRemoteViewerLocator(
18
+ name: string,
19
+ remoteConfig: RemoteConfig,
20
+ dataLakeEndpoint?: string,
21
+ options?: BasicRemoteViewerLocatorOptions,
22
+ ) {
23
+ const config = ActorConfigZod.parse({ name, remote: remoteConfig })
24
+ const rootLocator = await commonLocatorFromConfig({
25
+ config, singletons: {}, caches: {},
26
+ })
27
+ const remoteLocator = await remoteLocatorFromConfig(rootLocator.context)
28
+ const locator = new ProviderFactoryLocator(remoteLocator.context, {})
29
+ locator.registerMany([
30
+ SimpleXyoGateway.factory<SimpleXyoGateway>(SimpleXyoGateway.dependencies, {}),
31
+ SimpleXyoConnectionViewer.factory<SimpleXyoConnectionViewer>(SimpleXyoConnectionViewer.dependencies, {}),
32
+ SimpleTransactionViewer.factory<SimpleTransactionViewer>(SimpleTransactionViewer.dependencies, {}),
33
+ ...options?.additionalProviders ?? [],
34
+ ])
35
+
36
+ if (isDefined(dataLakeEndpoint)) {
37
+ const dataLakeViewerParams = { endpoint: dataLakeEndpoint }
38
+ locator.register(RestDataLakeViewer.factory<RestDataLakeViewer>(RestDataLakeViewer.dependencies, dataLakeViewerParams))
39
+ }
40
+
41
+ locator.freeze()
42
+
43
+ return locator
44
+ }
@@ -1,7 +1,10 @@
1
1
  import type { Promisable } from '@xylabs/sdk-js'
2
2
  import { validateHydratedBlock, validateHydratedBlockState } from '@xyo-network/chain-validation'
3
- import type { BaseConfigContext, ProviderFactoryLocatorInstance } from '@xyo-network/xl1-sdk'
3
+ import type {
4
+ BaseConfigContext, HydratedBlockStateValidationFunction, ProviderFactoryLocatorInstance,
5
+ } from '@xyo-network/xl1-sdk'
4
6
  import {
7
+ BlockCumulativeBalanceValidatorFactory,
5
8
  ProviderFactoryLocator,
6
9
  SimpleBlockRewardViewer,
7
10
  SimpleBlockValidationViewer,
@@ -17,11 +20,21 @@ import {
17
20
  SimpleWindowedBlockViewer,
18
21
  } from '@xyo-network/xl1-sdk'
19
22
 
23
+ const cumulativeBalanceValidator = BlockCumulativeBalanceValidatorFactory()
24
+
25
+ const validateHydratedBlockStateWithCumulativeBalance: HydratedBlockStateValidationFunction = async (context, block) => {
26
+ const [stateErrors, cumulativeErrors] = await Promise.all([
27
+ validateHydratedBlockState(context, block),
28
+ cumulativeBalanceValidator(context, block),
29
+ ])
30
+ return [...stateErrors, ...cumulativeErrors]
31
+ }
32
+
20
33
  export function commonLocatorFromConfig(
21
34
  context: BaseConfigContext,
22
35
  validateDepsOnRegister = false,
23
36
  ): Promisable<ProviderFactoryLocatorInstance> {
24
- let locator: ProviderFactoryLocatorInstance = new ProviderFactoryLocator(context, {}, validateDepsOnRegister)
37
+ const locator: ProviderFactoryLocatorInstance = new ProviderFactoryLocator(context, {}, validateDepsOnRegister)
25
38
 
26
39
  locator.registerMany([
27
40
  SimpleNetworkStakeViewer.factory<SimpleNetworkStakeViewer>(SimpleNetworkStakeViewer.dependencies, {}),
@@ -36,7 +49,7 @@ export function commonLocatorFromConfig(
36
49
  SimpleBlockRewardViewer.factory<SimpleBlockRewardViewer>(SimpleBlockRewardViewer.dependencies, {}),
37
50
  SimpleBlockValidationViewer.factory<SimpleBlockValidationViewer>(
38
51
  SimpleBlockValidationViewer.dependencies,
39
- { state: validateHydratedBlockState, protocol: validateHydratedBlock },
52
+ { state: validateHydratedBlockStateWithCumulativeBalance, protocol: validateHydratedBlock },
40
53
  ),
41
54
  SimpleTransactionViewer.factory<SimpleTransactionViewer>(SimpleTransactionViewer.dependencies, {}),
42
55
  ])
@@ -1,4 +1,4 @@
1
+ export * from './basicRemoteRunnerLocator.ts'
2
+ export * from './basicRemoteViewerLocator.ts'
1
3
  export * from './commonLocatorFromConfig.ts'
2
- export * from './contextFromConfigWithoutLocator.ts'
3
4
  export * from './remoteLocatorFromConfig.ts'
4
- export * from './telemetryContextFromConfig.ts'
@@ -3,7 +3,6 @@ export * from './buildTelemetryConfig.ts'
3
3
  export * from './ChainInitializableParams.ts'
4
4
  export * from './config/index.ts'
5
5
  export * from './createDeclarationIntentBlock.ts'
6
- export * from './evm/index.ts'
7
6
  export * from './host/index.ts'
8
7
  export * from './init/index.ts'
9
8
  export * from './orchestrator/index.ts'
@@ -1,6 +1,5 @@
1
1
  export * from './initActorAccount.ts'
2
2
  export * from './initActorSeedPhrase.ts'
3
3
  export * from './initBridgedModule.ts'
4
- export * from './initEvmProvidersIfAvailable.ts'
5
4
  export * from './initStatusReporter.ts'
6
5
  export * from './initWallet.ts'
@@ -1 +0,0 @@
1
- {"version":3,"file":"contextFromConfigWithoutLocator.d.ts","sourceRoot":"","sources":["../../../../../src/shared/config/locators/contextFromConfigWithoutLocator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,KAAK,EAAE,MAAM,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAA;AAK5E,wBAAsB,+BAA+B,CACnD,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,IAAI,CAAC,wBAAwB,EAAE,SAAS,CAAC,CAAC,CAapD"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"telemetryContextFromConfig.d.ts","sourceRoot":"","sources":["../../../../../src/shared/config/locators/telemetryContextFromConfig.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAElD,wBAAsB,0BAA0B,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,sEAW3G"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/shared/evm/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAA;AAChC,cAAc,sBAAsB,CAAA;AACpC,cAAc,yBAAyB,CAAA;AACvC,cAAc,0BAA0B,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"initChainId.d.ts","sourceRoot":"","sources":["../../../../src/shared/evm/initChainId.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAE7D,eAAO,MAAM,aAAa,GAAI,YAAY,iBAAiB,KAAG,OAE7D,CAAA;AAED,eAAO,MAAM,UAAU,GAAI,YAAY,iBAAiB,WAUvD,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"initEvmProvider.d.ts","sourceRoot":"","sources":["../../../../src/shared/evm/initEvmProvider.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAC7D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAOtC,eAAO,MAAM,eAAe,GAAU,SAAS,iBAAiB,KAAG,OAAO,CAAC,QAAQ,CAQlF,CAAA;AAED,eAAO,MAAM,iBAAiB,GAAI,SAAS,iBAAiB,YAE3D,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"initInfuraProvider.d.ts","sourceRoot":"","sources":["../../../../src/shared/evm/initInfuraProvider.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAC7D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAOtC,eAAO,MAAM,kBAAkB,GAAI,SAAS,iBAAiB,KAAG,OAAO,CAAC,QAAQ,CAK/E,CAAA;AAED,eAAO,MAAM,oBAAoB,GAAI,SAAS,iBAAiB,KAAG,OAKjE,CAAA;AAED,eAAO,MAAM,uBAAuB,GAAI,SAAS,iBAAiB,sCAKjE,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"initJsonRpcProvider.d.ts","sourceRoot":"","sources":["../../../../src/shared/evm/initJsonRpcProvider.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAIlD,eAAO,MAAM,mBAAmB,GAAI,SAAS,iBAAiB,6BAG7D,CAAA;AAED,eAAO,MAAM,qBAAqB,GAAI,SAAS,iBAAiB,YAI/D,CAAA;AAED,eAAO,MAAM,wBAAwB,GAAI,SAAS,iBAAiB,8BAIlE,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"initEvmProvidersIfAvailable.d.ts","sourceRoot":"","sources":["../../../../src/shared/init/initEvmProvidersIfAvailable.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAGV,8BAA8B,EAC/B,MAAM,sBAAsB,CAAA;AAU7B,wBAAsB,2BAA2B,CAC/C,OAAO,EAAE,8BAA8B,GACtC,OAAO,CAAC,8BAA8B,CAAC,CAwEzC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"contextFromConfigWithoutLocator.d.ts","sourceRoot":"","sources":["../../../../../src/shared/config/locators/contextFromConfigWithoutLocator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,KAAK,EAAE,MAAM,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAA;AAK5E,wBAAsB,+BAA+B,CACnD,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,IAAI,CAAC,wBAAwB,EAAE,SAAS,CAAC,CAAC,CAapD"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"telemetryContextFromConfig.d.ts","sourceRoot":"","sources":["../../../../../src/shared/config/locators/telemetryContextFromConfig.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAElD,wBAAsB,0BAA0B,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,sEAW3G"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/shared/evm/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAA;AAChC,cAAc,sBAAsB,CAAA;AACpC,cAAc,yBAAyB,CAAA;AACvC,cAAc,0BAA0B,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"initChainId.d.ts","sourceRoot":"","sources":["../../../../src/shared/evm/initChainId.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAE7D,eAAO,MAAM,aAAa,GAAI,YAAY,iBAAiB,KAAG,OAE7D,CAAA;AAED,eAAO,MAAM,UAAU,GAAI,YAAY,iBAAiB,WAUvD,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"initEvmProvider.d.ts","sourceRoot":"","sources":["../../../../src/shared/evm/initEvmProvider.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAC7D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAOtC,eAAO,MAAM,eAAe,GAAU,SAAS,iBAAiB,KAAG,OAAO,CAAC,QAAQ,CAQlF,CAAA;AAED,eAAO,MAAM,iBAAiB,GAAI,SAAS,iBAAiB,YAE3D,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"initInfuraProvider.d.ts","sourceRoot":"","sources":["../../../../src/shared/evm/initInfuraProvider.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAC7D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAOtC,eAAO,MAAM,kBAAkB,GAAI,SAAS,iBAAiB,KAAG,OAAO,CAAC,QAAQ,CAK/E,CAAA;AAED,eAAO,MAAM,oBAAoB,GAAI,SAAS,iBAAiB,KAAG,OAKjE,CAAA;AAED,eAAO,MAAM,uBAAuB,GAAI,SAAS,iBAAiB,sCAKjE,CAAA"}