@xyo-network/chain-bridge 1.15.2 → 1.15.4
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.
- package/README.md +1 -1
- package/dist/node/driver/indexer/ChainHydratedBlocksObservable.d.ts +4 -4
- package/dist/node/driver/indexer/ChainHydratedBlocksObservable.d.ts.map +1 -1
- package/dist/node/driver/mongo/MongoMap.d.ts +3 -2
- package/dist/node/driver/mongo/MongoMap.d.ts.map +1 -1
- package/dist/node/index.mjs +300 -683
- package/dist/node/index.mjs.map +1 -1
- package/dist/node/interface/interface/IntentIndexerInterface.d.ts +5 -3
- package/dist/node/interface/interface/IntentIndexerInterface.d.ts.map +1 -1
- package/dist/node/interface/service/Observer/ERC20TransferObserver/ERC20TransferObserver.d.ts +28 -0
- package/dist/node/interface/service/Observer/ERC20TransferObserver/ERC20TransferObserver.d.ts.map +1 -0
- package/dist/node/interface/service/Observer/ERC20TransferObserver/index.d.ts +2 -0
- package/dist/node/interface/service/Observer/ERC20TransferObserver/index.d.ts.map +1 -0
- package/dist/node/interface/service/Observer/ERC20TransferObserver/spec/ERC20TransferObserver.spec.d.ts +2 -0
- package/dist/node/interface/service/Observer/ERC20TransferObserver/spec/ERC20TransferObserver.spec.d.ts.map +1 -0
- package/dist/node/interface/service/Observer/LiquidityPoolBridgeObserver/LiquidityPoolBridgeObserver.d.ts +36 -0
- package/dist/node/interface/service/Observer/LiquidityPoolBridgeObserver/LiquidityPoolBridgeObserver.d.ts.map +1 -0
- package/dist/node/interface/service/Observer/LiquidityPoolBridgeObserver/index.d.ts +2 -0
- package/dist/node/interface/service/Observer/LiquidityPoolBridgeObserver/index.d.ts.map +1 -0
- package/dist/node/interface/service/Observer/LiquidityPoolBridgeObserver/spec/LiquidityPoolBridgeObserver.spec.d.ts +2 -0
- package/dist/node/interface/service/Observer/LiquidityPoolBridgeObserver/spec/LiquidityPoolBridgeObserver.spec.d.ts.map +1 -0
- package/dist/node/interface/service/Observer/Observer.d.ts +1 -1
- package/dist/node/interface/service/Observer/Observer.d.ts.map +1 -1
- package/dist/node/interface/service/{ChainBridgeRelay → Relay/ChainBridgeRelay}/ChainBridgeRelayInterface.d.ts +1 -1
- package/dist/node/interface/service/Relay/ChainBridgeRelay/ChainBridgeRelayInterface.d.ts.map +1 -0
- package/dist/node/interface/service/{ChainBridgeRelay → Relay/ChainBridgeRelay}/ChainBridgeRelayService.d.ts +1 -1
- package/dist/node/interface/service/Relay/ChainBridgeRelay/ChainBridgeRelayService.d.ts.map +1 -0
- package/dist/node/interface/service/Relay/ChainBridgeRelay/index.d.ts.map +1 -0
- package/dist/node/interface/service/Relay/ChainBridgeRelay/spec/ChainBridgeRelayService.spec.d.ts.map +1 -0
- package/dist/node/interface/service/Relay/LiquidityPoolBridgeRelay/LiquidityPoolBridgeRelay.d.ts +57 -0
- package/dist/node/interface/service/Relay/LiquidityPoolBridgeRelay/LiquidityPoolBridgeRelay.d.ts.map +1 -0
- package/dist/node/interface/service/Relay/LiquidityPoolBridgeRelay/index.d.ts +2 -0
- package/dist/node/interface/service/Relay/LiquidityPoolBridgeRelay/index.d.ts.map +1 -0
- package/dist/node/interface/service/Relay/LiquidityPoolBridgeRelay/spec/LiquidityPoolBridgeRelay.spec.d.ts +2 -0
- package/dist/node/interface/service/Relay/LiquidityPoolBridgeRelay/spec/LiquidityPoolBridgeRelay.spec.d.ts.map +1 -0
- package/dist/node/interface/service/Relay/index.d.ts +2 -0
- package/dist/node/interface/service/Relay/index.d.ts.map +1 -0
- package/dist/node/interface/service/index.d.ts +1 -1
- package/dist/node/interface/service/index.d.ts.map +1 -1
- package/dist/node/manifest/getLocator.d.ts.map +1 -1
- package/dist/node/manifest/public/index.d.ts +6 -2
- package/dist/node/manifest/public/index.d.ts.map +1 -1
- package/dist/node/server/app.d.ts +1 -2
- package/dist/node/server/app.d.ts.map +1 -1
- package/dist/node/server/routes/addRoutes.d.ts.map +1 -1
- package/dist/node/server/routes/bridge/addBridgeRoutes.d.ts +3 -0
- package/dist/node/server/routes/bridge/addBridgeRoutes.d.ts.map +1 -0
- package/dist/node/server/routes/bridge/index.d.ts +2 -0
- package/dist/node/server/routes/bridge/index.d.ts.map +1 -0
- package/dist/node/server/routes/bridge/middleware/index.d.ts +2 -0
- package/dist/node/server/routes/bridge/middleware/index.d.ts.map +1 -0
- package/dist/node/server/routes/bridge/middleware/requestHandlerValidator.d.ts +32 -0
- package/dist/node/server/routes/bridge/middleware/requestHandlerValidator.d.ts.map +1 -0
- package/dist/node/server/routes/bridge/routeDefinitions/getRouteDefinitions.d.ts +3 -0
- package/dist/node/server/routes/bridge/routeDefinitions/getRouteDefinitions.d.ts.map +1 -0
- package/dist/node/server/routes/bridge/routeDefinitions/index.d.ts +2 -0
- package/dist/node/server/routes/bridge/routeDefinitions/index.d.ts.map +1 -0
- package/dist/node/server/routes/bridge/routeDefinitions/pathParams/ChainIdPathParam.d.ts +6 -0
- package/dist/node/server/routes/bridge/routeDefinitions/pathParams/ChainIdPathParam.d.ts.map +1 -0
- package/dist/node/server/routes/bridge/routeDefinitions/pathParams/index.d.ts +2 -0
- package/dist/node/server/routes/bridge/routeDefinitions/pathParams/index.d.ts.map +1 -0
- package/dist/node/server/routes/bridge/routeDefinitions/routeDefinition.d.ts +8 -0
- package/dist/node/server/routes/bridge/routeDefinitions/routeDefinition.d.ts.map +1 -0
- package/dist/node/server/routes/bridge/routeDefinitions/routes/bridgeFromRemoteStatus.d.ts +3 -0
- package/dist/node/server/routes/bridge/routeDefinitions/routes/bridgeFromRemoteStatus.d.ts.map +1 -0
- package/dist/node/server/routes/bridge/routeDefinitions/routes/bridgeToRemote.d.ts +3 -0
- package/dist/node/server/routes/bridge/routeDefinitions/routes/bridgeToRemote.d.ts.map +1 -0
- package/dist/node/server/routes/bridge/routeDefinitions/routes/bridgeToRemoteEstimate.d.ts +3 -0
- package/dist/node/server/routes/bridge/routeDefinitions/routes/bridgeToRemoteEstimate.d.ts.map +1 -0
- package/dist/node/server/routes/bridge/routeDefinitions/routes/bridgeToRemoteStatus.d.ts +3 -0
- package/dist/node/server/routes/bridge/routeDefinitions/routes/bridgeToRemoteStatus.d.ts.map +1 -0
- package/dist/node/server/routes/bridge/routeDefinitions/routes/index.d.ts +5 -0
- package/dist/node/server/routes/bridge/routeDefinitions/routes/index.d.ts.map +1 -0
- package/dist/node/server/routes/healthz/get.d.ts +2 -1
- package/dist/node/server/routes/healthz/get.d.ts.map +1 -1
- package/dist/node/server/routes/index.d.ts +0 -1
- package/dist/node/server/routes/index.d.ts.map +1 -1
- package/dist/node/server/server.d.ts.map +1 -1
- package/package.json +62 -55
- package/src/driver/indexer/ChainHydratedBlocksObservable.ts +5 -5
- package/src/driver/indexer/spec/ChainBlocksObservable.spec.ts +6 -3
- package/src/driver/indexer/spec/ChainHydratedBlocksObservable.spec.ts +10 -4
- package/src/driver/mongo/MongoMap.ts +13 -3
- package/src/interface/interface/IntentIndexerInterface.ts +5 -4
- package/src/interface/service/Observer/ERC20TransferObserver/ERC20TransferObserver.ts +181 -0
- package/src/interface/service/Observer/ERC20TransferObserver/index.ts +1 -0
- package/src/interface/service/Observer/ERC20TransferObserver/spec/ERC20TransferObserver.spec.ts +271 -0
- package/src/interface/service/Observer/LiquidityPoolBridgeObserver/LiquidityPoolBridgeObserver.ts +212 -0
- package/src/interface/service/Observer/LiquidityPoolBridgeObserver/index.ts +1 -0
- package/src/interface/service/Observer/LiquidityPoolBridgeObserver/spec/LiquidityPoolBridgeObserver.spec.ts +313 -0
- package/src/interface/service/Observer/Observer.ts +1 -1
- package/src/interface/service/{ChainBridgeRelay → Relay/ChainBridgeRelay}/ChainBridgeRelayInterface.ts +1 -1
- package/src/interface/service/{ChainBridgeRelay → Relay/ChainBridgeRelay}/ChainBridgeRelayService.ts +1 -1
- package/src/interface/service/{ChainBridgeRelay → Relay/ChainBridgeRelay}/spec/ChainBridgeRelayService.spec.ts +7 -5
- package/src/interface/service/Relay/LiquidityPoolBridgeRelay/LiquidityPoolBridgeRelay.ts +227 -0
- package/src/interface/service/Relay/LiquidityPoolBridgeRelay/index.ts +1 -0
- package/src/interface/service/Relay/LiquidityPoolBridgeRelay/spec/LiquidityPoolBridgeRelay.spec.ts +237 -0
- package/src/interface/service/Relay/index.ts +1 -0
- package/src/interface/service/index.ts +1 -1
- package/src/manifest/getLocator.ts +7 -6
- package/src/manifest/node.json +1 -1
- package/src/manifest/public/Chain.json +3 -109
- package/src/manifest/public/Ethereum.json +88 -0
- package/src/manifest/public/XL1.json +88 -0
- package/src/manifest/public/index.ts +15 -6
- package/src/server/app.ts +5 -12
- package/src/server/routes/addRoutes.ts +2 -6
- package/src/server/routes/bridge/addBridgeRoutes.ts +10 -0
- package/src/server/routes/bridge/index.ts +1 -0
- package/src/server/routes/bridge/middleware/index.ts +1 -0
- package/src/server/routes/bridge/middleware/requestHandlerValidator.ts +120 -0
- package/src/server/routes/bridge/routeDefinitions/getRouteDefinitions.ts +13 -0
- package/src/server/routes/bridge/routeDefinitions/index.ts +1 -0
- package/src/server/routes/bridge/routeDefinitions/pathParams/ChainIdPathParam.ts +18 -0
- package/src/server/routes/bridge/routeDefinitions/pathParams/index.ts +1 -0
- package/src/server/routes/bridge/routeDefinitions/routeDefinition.ts +18 -0
- package/src/server/routes/bridge/routeDefinitions/routes/bridgeFromRemoteStatus.ts +55 -0
- package/src/server/routes/bridge/routeDefinitions/routes/bridgeToRemote.ts +58 -0
- package/src/server/routes/bridge/routeDefinitions/routes/bridgeToRemoteEstimate.ts +83 -0
- package/src/server/routes/bridge/routeDefinitions/routes/bridgeToRemoteStatus.ts +55 -0
- package/src/server/routes/bridge/routeDefinitions/routes/index.ts +4 -0
- package/src/server/routes/healthz/get.ts +1 -1
- package/src/server/routes/index.ts +0 -2
- package/src/server/server.ts +11 -14
- package/dist/node/interface/service/ChainBridgeRelay/ChainBridgeRelayInterface.d.ts.map +0 -1
- package/dist/node/interface/service/ChainBridgeRelay/ChainBridgeRelayService.d.ts.map +0 -1
- package/dist/node/interface/service/ChainBridgeRelay/index.d.ts.map +0 -1
- package/dist/node/interface/service/ChainBridgeRelay/spec/ChainBridgeRelayService.spec.d.ts.map +0 -1
- package/dist/node/server/routes/rpc/index.d.ts +0 -2
- package/dist/node/server/routes/rpc/index.d.ts.map +0 -1
- package/dist/node/server/routes/rpc/routes/addRpcRoutes.d.ts +0 -3
- package/dist/node/server/routes/rpc/routes/addRpcRoutes.d.ts.map +0 -1
- package/dist/node/server/routes/rpc/routes/index.d.ts +0 -2
- package/dist/node/server/routes/rpc/routes/index.d.ts.map +0 -1
- package/src/manifest/public/Pending.json +0 -35
- package/src/server/routes/rpc/index.ts +0 -1
- package/src/server/routes/rpc/routes/addRpcRoutes.ts +0 -22
- package/src/server/routes/rpc/routes/index.ts +0 -1
- /package/dist/node/interface/service/{ChainBridgeRelay → Relay/ChainBridgeRelay}/index.d.ts +0 -0
- /package/dist/node/interface/service/{ChainBridgeRelay → Relay/ChainBridgeRelay}/spec/ChainBridgeRelayService.spec.d.ts +0 -0
- /package/src/interface/service/{ChainBridgeRelay → Relay/ChainBridgeRelay}/index.ts +0 -0
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { NextFunction, Request, RequestHandler, Response } from 'express';
|
|
2
|
+
import type { ZodType } from 'zod';
|
|
3
|
+
import { z } from 'zod';
|
|
4
|
+
/**
|
|
5
|
+
* Empty Zod schema for requests with no parameters.
|
|
6
|
+
*/
|
|
7
|
+
export declare const EmptyParamsZod: z.ZodObject<{}, z.core.$catchall<z.ZodString>>;
|
|
8
|
+
/**
|
|
9
|
+
* Empty Zod schema for requests with no query parameters.
|
|
10
|
+
*/
|
|
11
|
+
export declare const EmptyQueryParamsZod: z.ZodObject<{}, z.core.$catchall<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>>;
|
|
12
|
+
/**
|
|
13
|
+
* Default validation schemas for request handler validator.
|
|
14
|
+
*/
|
|
15
|
+
export declare const ValidateRequestDefaults: {
|
|
16
|
+
params: z.ZodObject<{}, z.core.$catchall<z.ZodString>>;
|
|
17
|
+
query: z.ZodObject<{}, z.core.$catchall<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>>;
|
|
18
|
+
body: z.ZodJSONSchema;
|
|
19
|
+
response: z.ZodJSONSchema;
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* Factory for Express middleware that validates request and response objects using Zod schemas.
|
|
23
|
+
* @param schemas The Zod schemas to use for validation.
|
|
24
|
+
* @returns A middleware function for validating requests and responses.
|
|
25
|
+
*/
|
|
26
|
+
export declare function requestHandlerValidator<TParams extends typeof EmptyQueryParamsZod | ZodType<Record<string, string>> = typeof EmptyQueryParamsZod, TQuery extends typeof EmptyQueryParamsZod | ZodType<Record<string, string | string[]>> = typeof EmptyQueryParamsZod, TBody extends ZodType<unknown> = ZodType<unknown>, TResponse extends ZodType<unknown> = ZodType<unknown>>(schemas?: Partial<{
|
|
27
|
+
body: TBody;
|
|
28
|
+
params: TParams;
|
|
29
|
+
query: TQuery;
|
|
30
|
+
response: TResponse;
|
|
31
|
+
}>): (handler: (req: Request<z.core.output<TParams>, z.core.output<TResponse>, z.core.output<TBody>, z.core.output<TQuery>>, res: Response<z.core.output<TResponse>>, next: NextFunction) => unknown) => RequestHandler;
|
|
32
|
+
//# sourceMappingURL=requestHandlerValidator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"requestHandlerValidator.d.ts","sourceRoot":"","sources":["../../../../../../src/server/routes/bridge/middleware/requestHandlerValidator.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EAAE,OAAO,EAAE,cAAc,EAAE,QAAQ,EAChD,MAAM,SAAS,CAAA;AAEhB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,KAAK,CAAA;AAClC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB;;GAEG;AACH,eAAO,MAAM,cAAc,gDAAoC,CAAA;AAE/D;;GAEG;AACH,eAAO,MAAM,mBAAmB,gGAAoE,CAAA;AAEpG;;GAEG;AACH,eAAO,MAAM,uBAAuB;;;;;CAKnC,CAAA;AAID;;;;GAIG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,SAAS,OAAO,mBAAmB,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,OAAO,mBAAmB,EACzG,MAAM,SAAS,OAAO,mBAAmB,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC,GAAG,OAAO,mBAAmB,EACnH,KAAK,SAAS,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,EACjD,SAAS,SAAS,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,EACrD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,KAAK,CAAA;IACX,MAAM,EAAE,OAAO,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,SAAS,CAAA;CACpB,CAAC,IAOQ,SAAS,CAAC,GAAG,EAAE,OAAO,+FAA0B,EAAE,GAAG,EAAE,QAAQ,0BAAK,EAAE,IAAI,EAAE,YAAY,KAAK,OAAO,KAAG,cAAc,CAiE9H"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getRouteDefinitions.d.ts","sourceRoot":"","sources":["../../../../../../src/server/routes/bridge/routeDefinitions/getRouteDefinitions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAK3D,eAAO,MAAM,mBAAmB,QAAO,eAAe,EAOrD,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/server/routes/bridge/routeDefinitions/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAA"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export declare const ChainIdPathParam: import("zod").ZodType<import("@xylabs/typeof").Brand<Lowercase<string>, {
|
|
2
|
+
readonly __hex: true;
|
|
3
|
+
}>, unknown, import("zod/v4/core").$ZodTypeInternals<import("@xylabs/typeof").Brand<Lowercase<string>, {
|
|
4
|
+
readonly __hex: true;
|
|
5
|
+
}>, unknown>>;
|
|
6
|
+
//# sourceMappingURL=ChainIdPathParam.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ChainIdPathParam.d.ts","sourceRoot":"","sources":["../../../../../../../src/server/routes/bridge/routeDefinitions/pathParams/ChainIdPathParam.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,gBAAgB;;;;aAS5B,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../src/server/routes/bridge/routeDefinitions/pathParams/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAA"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { RequestHandler } from 'express';
|
|
2
|
+
export type HttpMethod = 'get' | 'post' | 'put' | 'patch' | 'delete' | 'options' | 'head';
|
|
3
|
+
export interface RouteDefinition<H extends RequestHandler = RequestHandler> {
|
|
4
|
+
handlers: H[] | H;
|
|
5
|
+
method: HttpMethod;
|
|
6
|
+
path: string | RegExp;
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=routeDefinition.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"routeDefinition.d.ts","sourceRoot":"","sources":["../../../../../../src/server/routes/bridge/routeDefinitions/routeDefinition.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAE7C,MAAM,MAAM,UAAU,GAChB,KAAK,GACL,MAAM,GACN,KAAK,GACL,OAAO,GACP,QAAQ,GACR,SAAS,GACT,MAAM,CAAA;AAEZ,MAAM,WAAW,eAAe,CAC9B,CAAC,SAAS,cAAc,GAAG,cAAc;IAEzC,QAAQ,EAAE,CAAC,EAAE,GAAG,CAAC,CAAA;IACjB,MAAM,EAAE,UAAU,CAAA;IAClB,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;CACtB"}
|
package/dist/node/server/routes/bridge/routeDefinitions/routes/bridgeFromRemoteStatus.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bridgeFromRemoteStatus.d.ts","sourceRoot":"","sources":["../../../../../../../src/server/routes/bridge/routeDefinitions/routes/bridgeFromRemoteStatus.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAe5D,eAAO,MAAM,sBAAsB,EAAE,eA4BpC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bridgeToRemote.d.ts","sourceRoot":"","sources":["../../../../../../../src/server/routes/bridge/routeDefinitions/routes/bridgeToRemote.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAmB5D,eAAO,MAAM,cAAc,EAAE,eAqB5B,CAAA"}
|
package/dist/node/server/routes/bridge/routeDefinitions/routes/bridgeToRemoteEstimate.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bridgeToRemoteEstimate.d.ts","sourceRoot":"","sources":["../../../../../../../src/server/routes/bridge/routeDefinitions/routes/bridgeToRemoteEstimate.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AA0B5D,eAAO,MAAM,sBAAsB,EAAE,eAuCpC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bridgeToRemoteStatus.d.ts","sourceRoot":"","sources":["../../../../../../../src/server/routes/bridge/routeDefinitions/routes/bridgeToRemoteStatus.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAe5D,eAAO,MAAM,oBAAoB,EAAE,eA4BlC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../src/server/routes/bridge/routeDefinitions/routes/index.ts"],"names":[],"mappings":"AAAA,cAAc,6BAA6B,CAAA;AAC3C,cAAc,qBAAqB,CAAA;AACnC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,2BAA2B,CAAA"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { NoReqParams } from '@xylabs/express';
|
|
1
2
|
import type { RequestHandler } from 'express';
|
|
2
|
-
export declare const getHealthz: RequestHandler<
|
|
3
|
+
export declare const getHealthz: RequestHandler<NoReqParams>;
|
|
3
4
|
//# sourceMappingURL=get.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get.d.ts","sourceRoot":"","sources":["../../../../../src/server/routes/healthz/get.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"get.d.ts","sourceRoot":"","sources":["../../../../../src/server/routes/healthz/get.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAElD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAiB7C,eAAO,MAAM,UAAU,EAAE,cAAc,CAAC,WAAW,CAAW,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/server/routes/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/server/routes/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAA;AAClC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,oBAAoB,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../src/server/server.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../src/server/server.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAG5C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAE3D,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,+BAA+B,CAAA;AA6B3D,UAAU,gBAAgB;IACxB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,YAAY,CAAA;CACpB;AAED,eAAO,MAAM,SAAS,GAAU,SAAS,gBAAgB,gHAcxD,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xyo-network/chain-bridge",
|
|
3
|
-
"version": "1.15.
|
|
3
|
+
"version": "1.15.4",
|
|
4
4
|
"description": "XYO Layer One Bridge",
|
|
5
5
|
"homepage": "https://xylabs.com",
|
|
6
6
|
"bugs": {
|
|
@@ -46,72 +46,79 @@
|
|
|
46
46
|
"types": "tsc --noEmit -p tsconfig.test.json"
|
|
47
47
|
},
|
|
48
48
|
"dependencies": {
|
|
49
|
-
"@opentelemetry/instrumentation": "~0.
|
|
50
|
-
"@opentelemetry/instrumentation-express": "~0.
|
|
51
|
-
"@opentelemetry/instrumentation-http": "~0.
|
|
52
|
-
"@xylabs/assert": "~5.0.
|
|
53
|
-
"@xylabs/creatable": "~5.0.
|
|
54
|
-
"@xylabs/express": "~5.0.
|
|
55
|
-
"@xylabs/hex": "~5.0.
|
|
56
|
-
"@xylabs/logger": "~5.0.
|
|
57
|
-
"@xylabs/mongo": "~5.0.
|
|
58
|
-
"@xylabs/typeof": "~5.0.
|
|
59
|
-
"@xyo-network/archivist-
|
|
60
|
-
"@xyo-network/
|
|
61
|
-
"@xyo-network/
|
|
62
|
-
"@xyo-network/
|
|
63
|
-
"@xyo-network/
|
|
64
|
-
"@xyo-network/
|
|
65
|
-
"@xyo-network/
|
|
66
|
-
"@xyo-network/
|
|
67
|
-
"@xyo-network/
|
|
68
|
-
"@xyo-network/
|
|
69
|
-
"@xyo-network/
|
|
70
|
-
"@xyo-network/
|
|
71
|
-
"@xyo-network/
|
|
72
|
-
"@xyo-network/
|
|
73
|
-
"@xyo-network/module-model": "~5.1.3",
|
|
74
|
-
"@xyo-network/node-model": "~5.1.3",
|
|
75
|
-
"@xyo-network/payload-builder": "~5.1.3",
|
|
76
|
-
"@xyo-network/payload-model": "~5.1.3",
|
|
77
|
-
"@xyo-network/sentinel-memory": "~5.1.3",
|
|
78
|
-
"@xyo-network/wallet": "~5.1.3",
|
|
79
|
-
"@xyo-network/wallet-model": "~5.1.3",
|
|
80
|
-
"@xyo-network/xl1-protocol-sdk": "~1.15.2",
|
|
81
|
-
"@xyo-network/xl1-rpc": "~1.15.2",
|
|
49
|
+
"@opentelemetry/instrumentation": "~0.206.0",
|
|
50
|
+
"@opentelemetry/instrumentation-express": "~0.55.0",
|
|
51
|
+
"@opentelemetry/instrumentation-http": "~0.206.0",
|
|
52
|
+
"@xylabs/assert": "~5.0.12",
|
|
53
|
+
"@xylabs/creatable": "~5.0.12",
|
|
54
|
+
"@xylabs/express": "~5.0.12",
|
|
55
|
+
"@xylabs/hex": "~5.0.12",
|
|
56
|
+
"@xylabs/logger": "~5.0.12",
|
|
57
|
+
"@xylabs/mongo": "~5.0.12",
|
|
58
|
+
"@xylabs/typeof": "~5.0.12",
|
|
59
|
+
"@xyo-network/archivist-model": "~5.1.6",
|
|
60
|
+
"@xyo-network/boundwitness-model": "~5.1.6",
|
|
61
|
+
"@xyo-network/chain-protocol": "~1.15.4",
|
|
62
|
+
"@xyo-network/manifest-model": "~5.1.6",
|
|
63
|
+
"@xyo-network/module-factory-locator": "~5.1.6",
|
|
64
|
+
"@xyo-network/module-model": "~5.1.6",
|
|
65
|
+
"@xyo-network/node-model": "~5.1.6",
|
|
66
|
+
"@xyo-network/payload-builder": "~5.1.6",
|
|
67
|
+
"@xyo-network/payload-model": "~5.1.6",
|
|
68
|
+
"@xyo-network/typechain": "~4.0.10",
|
|
69
|
+
"@xyo-network/wallet": "~5.1.6",
|
|
70
|
+
"@xyo-network/wallet-model": "~5.1.6",
|
|
71
|
+
"@xyo-network/xl1-protocol": "~1.12.69",
|
|
72
|
+
"@xyo-network/xl1-protocol-sdk": "~1.15.4",
|
|
82
73
|
"compression": "~1.8.1",
|
|
83
74
|
"cors": "~2.8.5",
|
|
84
75
|
"express": "~5.1.0",
|
|
85
76
|
"http-status-codes": "~2.3.0",
|
|
86
77
|
"mongodb": "~6.20.0",
|
|
87
|
-
"rxjs": "~7.8.2"
|
|
78
|
+
"rxjs": "~7.8.2",
|
|
79
|
+
"uuid": "~13.0.0",
|
|
80
|
+
"zod": "~4.1.12"
|
|
88
81
|
},
|
|
89
82
|
"devDependencies": {
|
|
90
83
|
"@types/compression": "~1.8.1",
|
|
91
84
|
"@types/cors": "~2.8.19",
|
|
92
85
|
"@types/express": "5.0.3",
|
|
93
|
-
"@types/express-serve-static-core": "~5.0
|
|
94
|
-
"@types/node": "~24.
|
|
95
|
-
"@xylabs/base": "~5.0.
|
|
96
|
-
"@xylabs/
|
|
97
|
-
"@xylabs/
|
|
98
|
-
"@xylabs/
|
|
99
|
-
"@xylabs/
|
|
100
|
-
"@
|
|
101
|
-
"@xyo-network/account
|
|
102
|
-
"@xyo-network/
|
|
103
|
-
"@xyo-network/
|
|
104
|
-
"@xyo-network/
|
|
105
|
-
"@xyo-network/
|
|
106
|
-
"@xyo-network/
|
|
107
|
-
"@xyo-network/
|
|
108
|
-
"@xyo-network/
|
|
109
|
-
"@xyo-network/
|
|
110
|
-
"
|
|
111
|
-
"
|
|
86
|
+
"@types/express-serve-static-core": "~5.1.0",
|
|
87
|
+
"@types/node": "~24.7.2",
|
|
88
|
+
"@xylabs/base": "~5.0.12",
|
|
89
|
+
"@xylabs/delay": "~5.0.12",
|
|
90
|
+
"@xylabs/object": "~5.0.12",
|
|
91
|
+
"@xylabs/promise": "~5.0.12",
|
|
92
|
+
"@xylabs/ts-scripts-yarn3": "~7.1.8",
|
|
93
|
+
"@xylabs/tsconfig": "~7.1.8",
|
|
94
|
+
"@xyo-network/account": "~5.1.6",
|
|
95
|
+
"@xyo-network/account-model": "~5.1.6",
|
|
96
|
+
"@xyo-network/archivist-abstract": "~5.1.6",
|
|
97
|
+
"@xyo-network/archivist-memory": "~5.1.6",
|
|
98
|
+
"@xyo-network/archivist-mongodb": "~5.1.6",
|
|
99
|
+
"@xyo-network/archivist-view": "~5.1.6",
|
|
100
|
+
"@xyo-network/bios": "~7.1.1",
|
|
101
|
+
"@xyo-network/bios-model": "~7.1.1",
|
|
102
|
+
"@xyo-network/boundwitness-builder": "~5.1.6",
|
|
103
|
+
"@xyo-network/chain-modules": "~1.15.4",
|
|
104
|
+
"@xyo-network/chain-protocol": "~1.15.4",
|
|
105
|
+
"@xyo-network/chain-services": "~1.15.4",
|
|
106
|
+
"@xyo-network/chain-telemetry": "~1.15.4",
|
|
107
|
+
"@xyo-network/manifest-wrapper": "~5.1.6",
|
|
108
|
+
"@xyo-network/module-abstract": "~5.1.6",
|
|
109
|
+
"@xyo-network/module-abstract-mongodb": "~5.1.6",
|
|
110
|
+
"@xyo-network/module-model-mongodb": "~5.1.6",
|
|
111
|
+
"@xyo-network/node-memory": "~5.1.6",
|
|
112
|
+
"@xyo-network/payload-builder": "~5.1.6",
|
|
113
|
+
"@xyo-network/sentinel-memory": "~5.1.6",
|
|
114
|
+
"@xyo-network/xl1-protocol": "~1.12.69",
|
|
115
|
+
"dotenv": "~17.2.3",
|
|
116
|
+
"eslint": "^9.37.0",
|
|
117
|
+
"ethers": "~6.15.0",
|
|
118
|
+
"http-status-codes": "~2.3.0",
|
|
112
119
|
"nodemon": "~3.1.10",
|
|
113
120
|
"tslib": "~2.8.1",
|
|
114
|
-
"typescript": "~5.9.
|
|
121
|
+
"typescript": "~5.9.3",
|
|
115
122
|
"vitest": "~3.2.4",
|
|
116
123
|
"vitest-mock-extended": "~3.1.0"
|
|
117
124
|
},
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { ReadArchivist } from '@xyo-network/archivist-model'
|
|
2
1
|
import type { WithStorageMeta } from '@xyo-network/payload-model'
|
|
3
2
|
import type { BlockBoundWitness, HydratedBlock } from '@xyo-network/xl1-protocol'
|
|
3
|
+
import type { ChainStoreRead } from '@xyo-network/xl1-protocol-sdk'
|
|
4
4
|
import { hydrateBlock } from '@xyo-network/xl1-protocol-sdk'
|
|
5
5
|
import type { Observable } from 'rxjs'
|
|
6
6
|
import { concatMap } from 'rxjs'
|
|
@@ -8,16 +8,16 @@ import { concatMap } from 'rxjs'
|
|
|
8
8
|
import { chainBlocks$ } from './ChainBlocksObservable.ts'
|
|
9
9
|
|
|
10
10
|
/**
|
|
11
|
-
* Creates an observable of HydratedBlocks from a chain iterator +
|
|
11
|
+
* Creates an observable of HydratedBlocks from a chain iterator + context.
|
|
12
12
|
* @param chainIterator - EventingChainBlockNumberIteratorService that emits heads
|
|
13
|
-
* @param
|
|
13
|
+
* @param context - ChainStoreContextRead used to fetch payloads and hydrate blocks
|
|
14
14
|
*/
|
|
15
15
|
export const hydratedChainBlocks$ = (
|
|
16
16
|
chainIterator: Parameters<typeof chainBlocks$>[0],
|
|
17
|
-
|
|
17
|
+
context: ChainStoreRead,
|
|
18
18
|
): Observable<HydratedBlock> => {
|
|
19
19
|
return chainBlocks$(chainIterator).pipe(
|
|
20
20
|
concatMap((block: WithStorageMeta<BlockBoundWitness>) =>
|
|
21
|
-
hydrateBlock(
|
|
21
|
+
hydrateBlock(context, block._hash)),
|
|
22
22
|
)
|
|
23
23
|
}
|
|
@@ -5,7 +5,9 @@ import type { ArchivistInstance } from '@xyo-network/archivist-model'
|
|
|
5
5
|
import { buildRandomChain } from '@xyo-network/chain-protocol'
|
|
6
6
|
import { ChainBlockNumberIterationService } from '@xyo-network/chain-services'
|
|
7
7
|
import type { EventingChainBlockNumberIteratorService, HydratedBlock } from '@xyo-network/xl1-protocol'
|
|
8
|
-
import {
|
|
8
|
+
import {
|
|
9
|
+
flattenHydratedBlocks, getDefaultConfig, readPayloadMapFromStore,
|
|
10
|
+
} from '@xyo-network/xl1-protocol-sdk'
|
|
9
11
|
import {
|
|
10
12
|
firstValueFrom, take, toArray,
|
|
11
13
|
} from 'rxjs'
|
|
@@ -28,9 +30,10 @@ describe('chainBlocks$', () => {
|
|
|
28
30
|
|
|
29
31
|
beforeEach(async () => {
|
|
30
32
|
chain = await buildRandomChain(producer, 10)
|
|
31
|
-
chainArchivist = await MemoryArchivist.create({ config: { schema: MemoryArchivistConfigSchema } })
|
|
33
|
+
chainArchivist = await MemoryArchivist.create({ config: { schema: MemoryArchivistConfigSchema }, account: 'random' })
|
|
32
34
|
await chainArchivist.insert(flattenHydratedBlocks(chain))
|
|
33
|
-
|
|
35
|
+
const chainMap = readPayloadMapFromStore(chainArchivist)
|
|
36
|
+
chainIterator = await ChainBlockNumberIterationService.create({ chainMap, config })
|
|
34
37
|
})
|
|
35
38
|
it('emits blocks in order when head updates', async () => {
|
|
36
39
|
// Arrange
|
|
@@ -4,8 +4,12 @@ import { MemoryArchivist, MemoryArchivistConfigSchema } from '@xyo-network/archi
|
|
|
4
4
|
import type { ArchivistInstance } from '@xyo-network/archivist-model'
|
|
5
5
|
import { buildRandomChain } from '@xyo-network/chain-protocol'
|
|
6
6
|
import { ChainBlockNumberIterationService } from '@xyo-network/chain-services'
|
|
7
|
+
import type { Payload, WithStorageMeta } from '@xyo-network/payload-model'
|
|
7
8
|
import type { EventingChainBlockNumberIteratorService, HydratedBlock } from '@xyo-network/xl1-protocol'
|
|
8
|
-
import {
|
|
9
|
+
import type { PayloadMapRead } from '@xyo-network/xl1-protocol-sdk'
|
|
10
|
+
import {
|
|
11
|
+
flattenHydratedBlocks, getDefaultConfig, readPayloadMapFromStore,
|
|
12
|
+
} from '@xyo-network/xl1-protocol-sdk'
|
|
9
13
|
import {
|
|
10
14
|
firstValueFrom, take, toArray,
|
|
11
15
|
} from 'rxjs'
|
|
@@ -20,6 +24,7 @@ describe('hydratedChainBlocks$', () => {
|
|
|
20
24
|
let producer: AccountInstance
|
|
21
25
|
let chain: HydratedBlock[]
|
|
22
26
|
let chainIterator: EventingChainBlockNumberIteratorService
|
|
27
|
+
let chainMap: PayloadMapRead<WithStorageMeta<Payload>>
|
|
23
28
|
const config = getDefaultConfig()
|
|
24
29
|
|
|
25
30
|
beforeAll(async () => {
|
|
@@ -28,9 +33,10 @@ describe('hydratedChainBlocks$', () => {
|
|
|
28
33
|
|
|
29
34
|
beforeEach(async () => {
|
|
30
35
|
chain = await buildRandomChain(producer, 10)
|
|
31
|
-
chainArchivist = await MemoryArchivist.create({ config: { schema: MemoryArchivistConfigSchema } })
|
|
36
|
+
chainArchivist = await MemoryArchivist.create({ config: { schema: MemoryArchivistConfigSchema }, account: 'random' })
|
|
32
37
|
await chainArchivist.insert(flattenHydratedBlocks(chain))
|
|
33
|
-
|
|
38
|
+
chainMap = readPayloadMapFromStore(chainArchivist)
|
|
39
|
+
chainIterator = await ChainBlockNumberIterationService.create({ chainMap, config })
|
|
34
40
|
})
|
|
35
41
|
it('emits blocks in order when head updates', async () => {
|
|
36
42
|
// Arrange
|
|
@@ -39,7 +45,7 @@ describe('hydratedChainBlocks$', () => {
|
|
|
39
45
|
|
|
40
46
|
// Setup observable to collect 3 blocks
|
|
41
47
|
const resultPromise = firstValueFrom(
|
|
42
|
-
hydratedChainBlocks$(chainIterator,
|
|
48
|
+
hydratedChainBlocks$(chainIterator, { chainMap }).pipe(
|
|
43
49
|
take(3), // wait for 3 blocks
|
|
44
50
|
toArray(), // collect into array
|
|
45
51
|
),
|
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
} from '@xylabs/creatable'
|
|
5
5
|
import { BaseMongoSdk } from '@xylabs/mongo'
|
|
6
6
|
import { isNull } from '@xylabs/typeof'
|
|
7
|
-
import { AsynchronousMap } from '@xyo-network/
|
|
7
|
+
import { AsynchronousMap } from '@xyo-network/xl1-protocol-sdk'
|
|
8
8
|
import {
|
|
9
9
|
Document, Filter, OptionalUnlessRequiredId, WithId,
|
|
10
10
|
} from 'mongodb'
|
|
@@ -42,17 +42,27 @@ export class MongoMap<K = string, V extends Document = Document>
|
|
|
42
42
|
return isNull(doc) ? undefined : stripMongoId(doc)
|
|
43
43
|
}
|
|
44
44
|
|
|
45
|
+
async getMany(ids: K[]): Promise<V[]> {
|
|
46
|
+
const results: V[] = []
|
|
47
|
+
for (const id of ids) {
|
|
48
|
+
const value = await this.get(id)
|
|
49
|
+
if (value) {
|
|
50
|
+
results.push(value)
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
return results
|
|
54
|
+
}
|
|
55
|
+
|
|
45
56
|
async has(id: K): Promise<boolean> {
|
|
46
57
|
const filter = { _id: id } as Filter<V>
|
|
47
58
|
const exists = await this.sdk.findOne(filter)
|
|
48
59
|
return isNull(exists) ? false : true
|
|
49
60
|
}
|
|
50
61
|
|
|
51
|
-
async set(id: K, data: V): Promise<
|
|
62
|
+
async set(id: K, data: V): Promise<void> {
|
|
52
63
|
const filter = { _id: id } as Filter<V>
|
|
53
64
|
const value = { ...data, _id: id } as OptionalUnlessRequiredId<V>
|
|
54
65
|
await this.sdk.replaceOne(filter, value, { upsert: true })
|
|
55
|
-
return this
|
|
56
66
|
}
|
|
57
67
|
|
|
58
68
|
override async startHandler(): Promise<void> {
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import type { Address } from '@xylabs/hex'
|
|
1
|
+
import type { Address, Hex } from '@xylabs/hex'
|
|
2
2
|
|
|
3
3
|
export interface IntentIndexerInterface<T> {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
addIntent(intent: T): Promise<boolean>
|
|
5
|
+
getIntentByNonce(nonce: Hex): Promise<T | undefined>
|
|
6
|
+
getIntentsForDestination(dest: Address): Promise<T[]>
|
|
7
|
+
getIntentsForSource(src: Address): Promise<T[]>
|
|
7
8
|
}
|