@xyo-network/chain-reward-redemption 1.15.10
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/LICENSE +165 -0
- package/README.md +96 -0
- package/dist/node/index.d.ts +2 -0
- package/dist/node/index.d.ts.map +1 -0
- package/dist/node/index.mjs +461 -0
- package/dist/node/index.mjs.map +1 -0
- package/dist/node/manifest/getLocator.d.ts +14 -0
- package/dist/node/manifest/getLocator.d.ts.map +1 -0
- package/dist/node/manifest/getNode.d.ts +15 -0
- package/dist/node/manifest/getNode.d.ts.map +1 -0
- package/dist/node/manifest/index.d.ts +6 -0
- package/dist/node/manifest/index.d.ts.map +1 -0
- package/dist/node/manifest/nodeManifest.d.ts +6 -0
- package/dist/node/manifest/nodeManifest.d.ts.map +1 -0
- package/dist/node/manifest/private/index.d.ts +5 -0
- package/dist/node/manifest/private/index.d.ts.map +1 -0
- package/dist/node/manifest/public/index.d.ts +6 -0
- package/dist/node/manifest/public/index.d.ts.map +1 -0
- package/dist/node/server/app.d.ts +4 -0
- package/dist/node/server/app.d.ts.map +1 -0
- package/dist/node/server/index.d.ts +11 -0
- package/dist/node/server/index.d.ts.map +1 -0
- package/dist/node/server/instrumentation.d.ts +9 -0
- package/dist/node/server/instrumentation.d.ts.map +1 -0
- package/dist/node/server/routes/addRoutes.d.ts +3 -0
- package/dist/node/server/routes/addRoutes.d.ts.map +1 -0
- package/dist/node/server/routes/address/AddressPathParams.d.ts +4 -0
- package/dist/node/server/routes/address/AddressPathParams.d.ts.map +1 -0
- package/dist/node/server/routes/address/addNodeRoutes.d.ts +3 -0
- package/dist/node/server/routes/address/addNodeRoutes.d.ts.map +1 -0
- package/dist/node/server/routes/address/get/get.d.ts +4 -0
- package/dist/node/server/routes/address/get/get.d.ts.map +1 -0
- package/dist/node/server/routes/address/get/index.d.ts +2 -0
- package/dist/node/server/routes/address/get/index.d.ts.map +1 -0
- package/dist/node/server/routes/address/index.d.ts +2 -0
- package/dist/node/server/routes/address/index.d.ts.map +1 -0
- package/dist/node/server/routes/address/post/getQueryConfig.d.ts +6 -0
- package/dist/node/server/routes/address/post/getQueryConfig.d.ts.map +1 -0
- package/dist/node/server/routes/address/post/index.d.ts +2 -0
- package/dist/node/server/routes/address/post/index.d.ts.map +1 -0
- package/dist/node/server/routes/address/post/post.d.ts +8 -0
- package/dist/node/server/routes/address/post/post.d.ts.map +1 -0
- package/dist/node/server/routes/dataLake/addDataLakeRoutes.d.ts +3 -0
- package/dist/node/server/routes/dataLake/addDataLakeRoutes.d.ts.map +1 -0
- package/dist/node/server/routes/dataLake/archivistMiddleware.d.ts +10 -0
- package/dist/node/server/routes/dataLake/archivistMiddleware.d.ts.map +1 -0
- package/dist/node/server/routes/dataLake/index.d.ts +2 -0
- package/dist/node/server/routes/dataLake/index.d.ts.map +1 -0
- package/dist/node/server/routes/healthz/get.d.ts +4 -0
- package/dist/node/server/routes/healthz/get.d.ts.map +1 -0
- package/dist/node/server/routes/healthz/index.d.ts +2 -0
- package/dist/node/server/routes/healthz/index.d.ts.map +1 -0
- package/dist/node/server/routes/index.d.ts +4 -0
- package/dist/node/server/routes/index.d.ts.map +1 -0
- package/dist/node/server/routes/rewardRedemption/addRewardRoutes.d.ts +3 -0
- package/dist/node/server/routes/rewardRedemption/addRewardRoutes.d.ts.map +1 -0
- package/dist/node/server/routes/rewardRedemption/index.d.ts +2 -0
- package/dist/node/server/routes/rewardRedemption/index.d.ts.map +1 -0
- package/dist/node/server/routes/rewardRedemption/middleware/index.d.ts +2 -0
- package/dist/node/server/routes/rewardRedemption/middleware/index.d.ts.map +1 -0
- package/dist/node/server/routes/rewardRedemption/middleware/requestHandlerValidator.d.ts +32 -0
- package/dist/node/server/routes/rewardRedemption/middleware/requestHandlerValidator.d.ts.map +1 -0
- package/dist/node/server/routes/rewardRedemption/routeDefinitions/getRouteDefinitions.d.ts +3 -0
- package/dist/node/server/routes/rewardRedemption/routeDefinitions/getRouteDefinitions.d.ts.map +1 -0
- package/dist/node/server/routes/rewardRedemption/routeDefinitions/index.d.ts +2 -0
- package/dist/node/server/routes/rewardRedemption/routeDefinitions/index.d.ts.map +1 -0
- package/dist/node/server/routes/rewardRedemption/routeDefinitions/pathParams/AddressPathParam.d.ts +2 -0
- package/dist/node/server/routes/rewardRedemption/routeDefinitions/pathParams/AddressPathParam.d.ts.map +1 -0
- package/dist/node/server/routes/rewardRedemption/routeDefinitions/pathParams/index.d.ts +2 -0
- package/dist/node/server/routes/rewardRedemption/routeDefinitions/pathParams/index.d.ts.map +1 -0
- package/dist/node/server/routes/rewardRedemption/routeDefinitions/routeDefinition.d.ts +8 -0
- package/dist/node/server/routes/rewardRedemption/routeDefinitions/routeDefinition.d.ts.map +1 -0
- package/dist/node/server/routes/rewardRedemption/routeDefinitions/routes/claim.d.ts +3 -0
- package/dist/node/server/routes/rewardRedemption/routeDefinitions/routes/claim.d.ts.map +1 -0
- package/dist/node/server/routes/rewardRedemption/routeDefinitions/routes/index.d.ts +3 -0
- package/dist/node/server/routes/rewardRedemption/routeDefinitions/routes/index.d.ts.map +1 -0
- package/dist/node/server/routes/rewardRedemption/routeDefinitions/routes/redeem.d.ts +3 -0
- package/dist/node/server/routes/rewardRedemption/routeDefinitions/routes/redeem.d.ts.map +1 -0
- package/dist/node/server/server.d.ts +11 -0
- package/dist/node/server/server.d.ts.map +1 -0
- package/package.json +137 -0
- package/src/index.ts +1 -0
- package/src/manifest/getLocator.ts +75 -0
- package/src/manifest/getNode.ts +32 -0
- package/src/manifest/index.ts +5 -0
- package/src/manifest/node.json +32 -0
- package/src/manifest/nodeManifest.ts +8 -0
- package/src/manifest/private/index.ts +4 -0
- package/src/manifest/public/index.ts +6 -0
- package/src/server/app.ts +30 -0
- package/src/server/index.ts +13 -0
- package/src/server/instrumentation.ts +15 -0
- package/src/server/routes/addRoutes.ts +9 -0
- package/src/server/routes/address/AddressPathParams.ts +3 -0
- package/src/server/routes/address/addNodeRoutes.ts +21 -0
- package/src/server/routes/address/get/get.ts +33 -0
- package/src/server/routes/address/get/index.ts +1 -0
- package/src/server/routes/address/index.ts +1 -0
- package/src/server/routes/address/post/getQueryConfig.ts +23 -0
- package/src/server/routes/address/post/index.ts +1 -0
- package/src/server/routes/address/post/post.ts +77 -0
- package/src/server/routes/dataLake/addDataLakeRoutes.ts +9 -0
- package/src/server/routes/dataLake/archivistMiddleware.ts +86 -0
- package/src/server/routes/dataLake/index.ts +1 -0
- package/src/server/routes/healthz/get.ts +20 -0
- package/src/server/routes/healthz/index.ts +1 -0
- package/src/server/routes/index.ts +3 -0
- package/src/server/routes/rewardRedemption/addRewardRoutes.ts +10 -0
- package/src/server/routes/rewardRedemption/index.ts +1 -0
- package/src/server/routes/rewardRedemption/middleware/index.ts +1 -0
- package/src/server/routes/rewardRedemption/middleware/requestHandlerValidator.ts +120 -0
- package/src/server/routes/rewardRedemption/routeDefinitions/getRouteDefinitions.ts +9 -0
- package/src/server/routes/rewardRedemption/routeDefinitions/index.ts +1 -0
- package/src/server/routes/rewardRedemption/routeDefinitions/pathParams/AddressPathParam.ts +1 -0
- package/src/server/routes/rewardRedemption/routeDefinitions/pathParams/index.ts +1 -0
- package/src/server/routes/rewardRedemption/routeDefinitions/routeDefinition.ts +18 -0
- package/src/server/routes/rewardRedemption/routeDefinitions/routes/claim.ts +31 -0
- package/src/server/routes/rewardRedemption/routeDefinitions/routes/index.ts +2 -0
- package/src/server/routes/rewardRedemption/routeDefinitions/routes/redeem.ts +26 -0
- package/src/server/server.ts +58 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/server/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,aAAa,CAAA;AAE3B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAE3D,OAAO,CAAC,MAAM,CAAC;IAEb,UAAU,OAAO,CAAC;QAChB,UAAU,WAAW;YACnB,IAAI,EAAE,YAAY,CAAA;SACnB;KACF;CACF"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Registers OpenTelemetry instrumentations for HTTP and Express.
|
|
3
|
+
* This function is used to set up the necessary instrumentations for monitoring
|
|
4
|
+
* HTTP requests and Express applications. Since it monkey patches the Express
|
|
5
|
+
* router & middleware system, it should be called before any Express applications
|
|
6
|
+
* are defined.
|
|
7
|
+
*/
|
|
8
|
+
export declare const addInstrumentation: () => void;
|
|
9
|
+
//# sourceMappingURL=instrumentation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"instrumentation.d.ts","sourceRoot":"","sources":["../../../src/server/instrumentation.ts"],"names":[],"mappings":"AAIA;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,YAG9B,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"addRoutes.d.ts","sourceRoot":"","sources":["../../../../src/server/routes/addRoutes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAKtC,eAAO,MAAM,SAAS,GAAI,KAAK,OAAO,SAGrC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AddressPathParams.d.ts","sourceRoot":"","sources":["../../../../../src/server/routes/address/AddressPathParams.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,iBAAiB,GAAG;IAC9B,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"addNodeRoutes.d.ts","sourceRoot":"","sources":["../../../../../src/server/routes/address/addNodeRoutes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAMtC,eAAO,MAAM,aAAa,GAAI,KAAK,OAAO,SAczC,CAAA"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { Payload } from '@xyo-network/payload-model';
|
|
2
|
+
import type { AddressPathParams } from '../AddressPathParams.ts';
|
|
3
|
+
export declare const getAddress: (req: import("express").Request<AddressPathParams, Payload[], any, import("qs").ParsedQs, Record<string, any>>, res: import("express").Response<Payload[], Record<string, any>>, next: import("express").NextFunction) => Promise<unknown>;
|
|
4
|
+
//# sourceMappingURL=get.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get.d.ts","sourceRoot":"","sources":["../../../../../../src/server/routes/address/get/get.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAIzD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAwBhE,eAAO,MAAM,UAAU,4OAAwB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/server/routes/address/get/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/server/routes/address/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAA"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { QueryBoundWitness } from '@xyo-network/boundwitness-model';
|
|
2
|
+
import type { ModuleConfig, ModuleInstance } from '@xyo-network/module-model';
|
|
3
|
+
import type { Payload } from '@xyo-network/payload-model';
|
|
4
|
+
import type { Request } from 'express';
|
|
5
|
+
export declare const getQueryConfig: (mod: ModuleInstance, req: Request, bw: QueryBoundWitness, payloads?: Payload[]) => ModuleConfig | undefined;
|
|
6
|
+
//# sourceMappingURL=getQueryConfig.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getQueryConfig.d.ts","sourceRoot":"","sources":["../../../../../../src/server/routes/address/post/getQueryConfig.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAgB,iBAAiB,EAAE,MAAM,iCAAiC,CAAA;AAEtF,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAE7E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AACzD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAItC,eAAO,MAAM,cAAc,GAAI,KAAK,cAAc,EAAE,KAAK,OAAO,EAAE,IAAI,iBAAiB,EAAE,WAAW,OAAO,EAAE,KAAG,YAAY,GAAG,SAa9H,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/server/routes/address/post/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { type QueryBoundWitness } from '@xyo-network/boundwitness-model';
|
|
2
|
+
import type { ModuleQueryResult } from '@xyo-network/module-model';
|
|
3
|
+
import type { ModuleError, Payload } from '@xyo-network/payload-model';
|
|
4
|
+
import type { AddressPathParams } from '../AddressPathParams.ts';
|
|
5
|
+
type PostAddressRequestBody = [QueryBoundWitness, undefined | Payload[]];
|
|
6
|
+
export declare const postAddress: (req: import("express").Request<AddressPathParams, ModuleError | ModuleQueryResult, PostAddressRequestBody, import("qs").ParsedQs, Record<string, any>>, res: import("express").Response<ModuleError | ModuleQueryResult, Record<string, any>>, next: import("express").NextFunction) => Promise<unknown>;
|
|
7
|
+
export {};
|
|
8
|
+
//# sourceMappingURL=post.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"post.d.ts","sourceRoot":"","sources":["../../../../../../src/server/routes/address/post/post.ts"],"names":[],"mappings":"AAOA,OAAO,EAAuB,KAAK,iBAAiB,EAAE,MAAM,iCAAiC,CAAA;AAE7F,OAAO,KAAK,EAAkB,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAClF,OAAO,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAItE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAGhE,KAAK,sBAAsB,GAAG,CAAC,iBAAiB,EAAE,SAAS,GAAG,OAAO,EAAE,CAAC,CAAA;AA2DxE,eAAO,MAAM,WAAW,2SAAwB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"addDataLakeRoutes.d.ts","sourceRoot":"","sources":["../../../../../src/server/routes/dataLake/addDataLakeRoutes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAItC,eAAO,MAAM,iBAAiB,GAAI,KAAK,OAAO,SAI7C,CAAA"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { ModuleIdentifier } from '@xyo-network/module-model';
|
|
2
|
+
import type { NodeInstance } from '@xyo-network/node-model';
|
|
3
|
+
import type { Router } from 'express';
|
|
4
|
+
type ArchivistMiddlewareOptions = {
|
|
5
|
+
archivistModuleIdentifier: ModuleIdentifier;
|
|
6
|
+
node: NodeInstance;
|
|
7
|
+
};
|
|
8
|
+
export declare const archivistMiddleware: (options: ArchivistMiddlewareOptions) => Router;
|
|
9
|
+
export {};
|
|
10
|
+
//# sourceMappingURL=archivistMiddleware.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"archivistMiddleware.d.ts","sourceRoot":"","sources":["../../../../../src/server/routes/dataLake/archivistMiddleware.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAI3D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAiBrC,KAAK,0BAA0B,GAAG;IAChC,yBAAyB,EAAE,gBAAgB,CAAA;IAC3C,IAAI,EAAE,YAAY,CAAA;CACnB,CAAA;AAED,eAAO,MAAM,mBAAmB,GAAI,SAAS,0BAA0B,KAAG,MAkDzE,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/server/routes/dataLake/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/server/routes/healthz/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"addRewardRoutes.d.ts","sourceRoot":"","sources":["../../../../../src/server/routes/rewardRedemption/addRewardRoutes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAItC,eAAO,MAAM,yBAAyB,GAAI,KAAK,OAAO,SAKrD,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/server/routes/rewardRedemption/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/server/routes/rewardRedemption/middleware/index.ts"],"names":[],"mappings":"AAAA,cAAc,8BAA8B,CAAA"}
|
|
@@ -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/rewardRedemption/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"}
|
package/dist/node/server/routes/rewardRedemption/routeDefinitions/getRouteDefinitions.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getRouteDefinitions.d.ts","sourceRoot":"","sources":["../../../../../../src/server/routes/rewardRedemption/routeDefinitions/getRouteDefinitions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAG3D,eAAO,MAAM,mBAAmB,QAAO,eAAe,EAKrD,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/server/routes/rewardRedemption/routeDefinitions/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AddressPathParam.d.ts","sourceRoot":"","sources":["../../../../../../../src/server/routes/rewardRedemption/routeDefinitions/pathParams/AddressPathParam.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,IAAI,gBAAgB,EAAE,MAAM,aAAa,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../src/server/routes/rewardRedemption/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/rewardRedemption/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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"claim.d.ts","sourceRoot":"","sources":["../../../../../../../src/server/routes/rewardRedemption/routeDefinitions/routes/claim.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAa5D,eAAO,MAAM,SAAS,EAAE,eAYvB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../src/server/routes/rewardRedemption/routeDefinitions/routes/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,aAAa,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"redeem.d.ts","sourceRoot":"","sources":["../../../../../../../src/server/routes/rewardRedemption/routeDefinitions/routes/redeem.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAW5D,eAAO,MAAM,UAAU,EAAE,eASxB,CAAA"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Logger } from '@xylabs/logger';
|
|
2
|
+
import type { NodeInstance } from '@xyo-network/node-model';
|
|
3
|
+
import { type Config } from '@xyo-network/xl1-protocol-sdk';
|
|
4
|
+
interface GetServerContext {
|
|
5
|
+
config: Config;
|
|
6
|
+
logger?: Logger;
|
|
7
|
+
node?: NodeInstance;
|
|
8
|
+
}
|
|
9
|
+
export declare const getServer: (context: GetServerContext) => Promise<import("http").Server<typeof import("http").IncomingMessage, typeof import("http").ServerResponse>>;
|
|
10
|
+
export {};
|
|
11
|
+
//# sourceMappingURL=server.d.ts.map
|
|
@@ -0,0 +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;AAI5C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAE3D,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,+BAA+B,CAAA;AA8B3D,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
ADDED
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@xyo-network/chain-reward-redemption",
|
|
3
|
+
"version": "1.15.10",
|
|
4
|
+
"description": "XYO Layer One Rewards",
|
|
5
|
+
"homepage": "https://xylabs.com",
|
|
6
|
+
"bugs": {
|
|
7
|
+
"url": "git+https://github.com/xylabs/xyo-chain/issues",
|
|
8
|
+
"email": "support@xylabs.com"
|
|
9
|
+
},
|
|
10
|
+
"repository": {
|
|
11
|
+
"type": "git",
|
|
12
|
+
"url": "git+https://github.com/xylabs/xyo-chain.git"
|
|
13
|
+
},
|
|
14
|
+
"license": "LGPL-3.0-only",
|
|
15
|
+
"author": {
|
|
16
|
+
"name": "XY Labs Development Team",
|
|
17
|
+
"email": "support@xylabs.com",
|
|
18
|
+
"url": "https://xylabs.com"
|
|
19
|
+
},
|
|
20
|
+
"sideEffects": false,
|
|
21
|
+
"type": "module",
|
|
22
|
+
"exports": {
|
|
23
|
+
".": {
|
|
24
|
+
"types": "./dist/node/index.d.ts",
|
|
25
|
+
"source": "./src/index.ts",
|
|
26
|
+
"default": "./dist/node/index.mjs"
|
|
27
|
+
},
|
|
28
|
+
"./package.json": "./package.json",
|
|
29
|
+
"./README.md": "./README.md"
|
|
30
|
+
},
|
|
31
|
+
"module": "./dist/node/index.mjs",
|
|
32
|
+
"source": "./src/index.ts",
|
|
33
|
+
"types": "./dist/node/index.d.ts",
|
|
34
|
+
"files": [
|
|
35
|
+
"dist",
|
|
36
|
+
"src"
|
|
37
|
+
],
|
|
38
|
+
"scripts": {
|
|
39
|
+
"build-tests": "tsc --noEmit --lib dom,esnext",
|
|
40
|
+
"deploy": "echo Deploy not allowed!",
|
|
41
|
+
"deploy3": "echo Deploy3 not allowed!",
|
|
42
|
+
"start": "nodemon",
|
|
43
|
+
"start-esm": "node ./dist/node/index.mjs",
|
|
44
|
+
"test": "vitest run",
|
|
45
|
+
"test:ci": "vitest run",
|
|
46
|
+
"types": "tsc --noEmit -p tsconfig.test.json"
|
|
47
|
+
},
|
|
48
|
+
"dependencies": {
|
|
49
|
+
"@opentelemetry/instrumentation": "~0.207.0",
|
|
50
|
+
"@opentelemetry/instrumentation-express": "~0.56.0",
|
|
51
|
+
"@opentelemetry/instrumentation-http": "~0.207.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-memory": "~5.1.6",
|
|
60
|
+
"@xyo-network/archivist-model": "~5.1.6",
|
|
61
|
+
"@xyo-network/archivist-mongodb": "~5.1.6",
|
|
62
|
+
"@xyo-network/archivist-view": "~5.1.6",
|
|
63
|
+
"@xyo-network/bios": "~7.1.1",
|
|
64
|
+
"@xyo-network/boundwitness-model": "~5.1.6",
|
|
65
|
+
"@xyo-network/chain-modules": "~1.15.10",
|
|
66
|
+
"@xyo-network/chain-protocol": "~1.15.10",
|
|
67
|
+
"@xyo-network/chain-telemetry": "~1.15.10",
|
|
68
|
+
"@xyo-network/manifest-model": "~5.1.6",
|
|
69
|
+
"@xyo-network/manifest-wrapper": "~5.1.6",
|
|
70
|
+
"@xyo-network/module-abstract": "~5.1.6",
|
|
71
|
+
"@xyo-network/module-factory-locator": "~5.1.6",
|
|
72
|
+
"@xyo-network/module-model": "~5.1.6",
|
|
73
|
+
"@xyo-network/node-model": "~5.1.6",
|
|
74
|
+
"@xyo-network/payload-builder": "~5.1.6",
|
|
75
|
+
"@xyo-network/payload-model": "~5.1.6",
|
|
76
|
+
"@xyo-network/sentinel-memory": "~5.1.6",
|
|
77
|
+
"@xyo-network/typechain": "~4.0.10",
|
|
78
|
+
"@xyo-network/wallet": "~5.1.6",
|
|
79
|
+
"@xyo-network/wallet-model": "~5.1.6",
|
|
80
|
+
"@xyo-network/xl1-protocol": "~1.12.81",
|
|
81
|
+
"@xyo-network/xl1-protocol-sdk": "~1.15.10",
|
|
82
|
+
"compression": "~1.8.1",
|
|
83
|
+
"cors": "~2.8.5",
|
|
84
|
+
"express": "~5.1.0",
|
|
85
|
+
"http-status-codes": "~2.3.0",
|
|
86
|
+
"mongodb": "~6.20.0",
|
|
87
|
+
"rxjs": "~7.8.2",
|
|
88
|
+
"uuid": "~13.0.0",
|
|
89
|
+
"zod": "~4.1.12"
|
|
90
|
+
},
|
|
91
|
+
"devDependencies": {
|
|
92
|
+
"@types/compression": "~1.8.1",
|
|
93
|
+
"@types/cors": "~2.8.19",
|
|
94
|
+
"@types/express": "5.0.3",
|
|
95
|
+
"@types/express-serve-static-core": "~5.1.0",
|
|
96
|
+
"@types/node": "~24.9.1",
|
|
97
|
+
"@xylabs/base": "~5.0.12",
|
|
98
|
+
"@xylabs/delay": "~5.0.12",
|
|
99
|
+
"@xylabs/object": "~5.0.12",
|
|
100
|
+
"@xylabs/promise": "~5.0.12",
|
|
101
|
+
"@xylabs/ts-scripts-yarn3": "~7.1.8",
|
|
102
|
+
"@xylabs/tsconfig": "~7.1.8",
|
|
103
|
+
"@xyo-network/account": "~5.1.6",
|
|
104
|
+
"@xyo-network/account-model": "~5.1.6",
|
|
105
|
+
"@xyo-network/archivist-abstract": "~5.1.6",
|
|
106
|
+
"@xyo-network/archivist-memory": "~5.1.6",
|
|
107
|
+
"@xyo-network/archivist-mongodb": "~5.1.6",
|
|
108
|
+
"@xyo-network/bios-model": "~7.1.1",
|
|
109
|
+
"@xyo-network/boundwitness-builder": "~5.1.6",
|
|
110
|
+
"@xyo-network/chain-protocol": "~1.15.10",
|
|
111
|
+
"@xyo-network/chain-services": "~1.15.10",
|
|
112
|
+
"@xyo-network/manifest-wrapper": "~5.1.6",
|
|
113
|
+
"@xyo-network/module-abstract": "~5.1.6",
|
|
114
|
+
"@xyo-network/module-abstract-mongodb": "~5.1.6",
|
|
115
|
+
"@xyo-network/module-model-mongodb": "~5.1.6",
|
|
116
|
+
"@xyo-network/node-memory": "~5.1.6",
|
|
117
|
+
"@xyo-network/payload-builder": "~5.1.6",
|
|
118
|
+
"@xyo-network/sentinel-memory": "~5.1.6",
|
|
119
|
+
"@xyo-network/xl1-protocol": "~1.12.81",
|
|
120
|
+
"dotenv": "~17.2.3",
|
|
121
|
+
"eslint": "^9.38.0",
|
|
122
|
+
"ethers": "~6.15.0",
|
|
123
|
+
"http-status-codes": "~2.3.0",
|
|
124
|
+
"nodemon": "~3.1.10",
|
|
125
|
+
"tslib": "~2.8.1",
|
|
126
|
+
"typescript": "~5.9.3",
|
|
127
|
+
"vitest": "~3.2.4",
|
|
128
|
+
"vitest-mock-extended": "~3.1.0"
|
|
129
|
+
},
|
|
130
|
+
"engines": {
|
|
131
|
+
"node": ">=22.3 <23"
|
|
132
|
+
},
|
|
133
|
+
"engineStrict": true,
|
|
134
|
+
"publishConfig": {
|
|
135
|
+
"access": "restricted"
|
|
136
|
+
}
|
|
137
|
+
}
|
package/src/index.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './server/index.ts'
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import type { Logger } from '@xylabs/logger'
|
|
2
|
+
import { type BaseMongoSdkPrivateConfig } from '@xylabs/mongo'
|
|
3
|
+
import { isDefined } from '@xylabs/typeof'
|
|
4
|
+
import { MemoryArchivist } from '@xyo-network/archivist-memory'
|
|
5
|
+
import { MongoDBArchivistV2 } from '@xyo-network/archivist-mongodb'
|
|
6
|
+
import { ViewArchivist } from '@xyo-network/archivist-view'
|
|
7
|
+
import { ArchivistSyncDiviner } from '@xyo-network/chain-modules'
|
|
8
|
+
import { initTelemetry } from '@xyo-network/chain-telemetry'
|
|
9
|
+
import { AbstractModule, LoggerModuleStatusReporter } from '@xyo-network/module-abstract'
|
|
10
|
+
import { ModuleFactoryLocator } from '@xyo-network/module-factory-locator'
|
|
11
|
+
import type { MongoDBModuleParamsV2 } from '@xyo-network/module-model-mongodb'
|
|
12
|
+
import { MemorySentinel } from '@xyo-network/sentinel-memory'
|
|
13
|
+
import type { Config } from '@xyo-network/xl1-protocol-sdk'
|
|
14
|
+
import { hasMongoConfig } from '@xyo-network/xl1-protocol-sdk'
|
|
15
|
+
|
|
16
|
+
export interface GetLocatorContext {
|
|
17
|
+
config: Config
|
|
18
|
+
logger?: Logger
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* Used for retrieving a locator with the necessary modules registered for testing
|
|
23
|
+
* operation of the node (entirely in memory)
|
|
24
|
+
* @returns A locator with the necessary modules registered
|
|
25
|
+
*/
|
|
26
|
+
export const getLocator = async (context: GetLocatorContext) => {
|
|
27
|
+
const { config, logger } = context
|
|
28
|
+
const { otlpEndpoint } = config.telemetry?.otel ?? {}
|
|
29
|
+
const { traceProvider, meterProvider } = await initTelemetry({
|
|
30
|
+
attributes: {
|
|
31
|
+
serviceName: 'xl1-rewards',
|
|
32
|
+
serviceVersion: '1.0.0',
|
|
33
|
+
},
|
|
34
|
+
otlpEndpoint,
|
|
35
|
+
metricsConfig: {
|
|
36
|
+
endpoint: '/metrics',
|
|
37
|
+
port: 9465,
|
|
38
|
+
},
|
|
39
|
+
})
|
|
40
|
+
|
|
41
|
+
if (isDefined(logger)) AbstractModule.defaultLogger = logger
|
|
42
|
+
const statusReporter = logger ? new LoggerModuleStatusReporter(logger) : undefined
|
|
43
|
+
|
|
44
|
+
const locator = new ModuleFactoryLocator()
|
|
45
|
+
// If there's a MongoDB configuration
|
|
46
|
+
const mongoConfig = config.storage?.mongo
|
|
47
|
+
if (hasMongoConfig(mongoConfig)) {
|
|
48
|
+
// Create the MongoDB SDK from the configuration
|
|
49
|
+
const {
|
|
50
|
+
connectionString: dbConnectionString, database: dbName, domain: dbDomain, password: dbPassword, username: dbUserName,
|
|
51
|
+
} = mongoConfig
|
|
52
|
+
const payloadSdkConfig: BaseMongoSdkPrivateConfig = {
|
|
53
|
+
dbConnectionString, dbDomain, dbName, dbPassword, dbUserName,
|
|
54
|
+
}
|
|
55
|
+
const params: Partial<MongoDBModuleParamsV2> = {
|
|
56
|
+
meterProvider, payloadSdkConfig, statusReporter, traceProvider,
|
|
57
|
+
}
|
|
58
|
+
// Register the MongoDB Archivist as the default
|
|
59
|
+
locator.register(MongoDBArchivistV2.factory(params), undefined, true)
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
locator.register(MemoryArchivist.factory({
|
|
63
|
+
traceProvider, meterProvider, statusReporter,
|
|
64
|
+
}))
|
|
65
|
+
locator.register(MemorySentinel.factory({
|
|
66
|
+
traceProvider, meterProvider, statusReporter,
|
|
67
|
+
}))
|
|
68
|
+
locator.register(ViewArchivist.factory({
|
|
69
|
+
traceProvider, meterProvider, statusReporter,
|
|
70
|
+
}))
|
|
71
|
+
locator.register(ArchivistSyncDiviner.factory({
|
|
72
|
+
traceProvider, meterProvider, statusReporter,
|
|
73
|
+
}))
|
|
74
|
+
return locator
|
|
75
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { Logger } from '@xylabs/logger'
|
|
2
|
+
import { ManifestWrapper } from '@xyo-network/manifest-wrapper'
|
|
3
|
+
import type { WalletInstance } from '@xyo-network/wallet-model'
|
|
4
|
+
import type { Config } from '@xyo-network/xl1-protocol-sdk'
|
|
5
|
+
|
|
6
|
+
import { getLocator } from './getLocator.ts'
|
|
7
|
+
import { NodeManifest } from './nodeManifest.ts'
|
|
8
|
+
import { PrivateChildManifests } from './private/index.ts'
|
|
9
|
+
import { PublicChildManifests } from './public/index.ts'
|
|
10
|
+
|
|
11
|
+
export interface GetNodeContext {
|
|
12
|
+
config: Config
|
|
13
|
+
logger?: Logger
|
|
14
|
+
wallet: WalletInstance
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* Creates a node with the xyo-chain modules registered
|
|
19
|
+
* @param context The context to use for the node
|
|
20
|
+
* @returns A node with the xyo-chain modules registered
|
|
21
|
+
*/
|
|
22
|
+
export const getNode = async (context: GetNodeContext) => {
|
|
23
|
+
const { wallet } = context
|
|
24
|
+
const locator = await getLocator(context)
|
|
25
|
+
const wrapper = new ManifestWrapper(NodeManifest, wallet, locator, PublicChildManifests, PrivateChildManifests)
|
|
26
|
+
const [node, ...childNodes] = await wrapper.loadNodes()
|
|
27
|
+
if (childNodes?.length > 0) {
|
|
28
|
+
await Promise.all(childNodes.map(childNode => node.register(childNode)))
|
|
29
|
+
await Promise.all(childNodes.map(childNode => node.attach(childNode.address, true)))
|
|
30
|
+
}
|
|
31
|
+
return node
|
|
32
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://raw.githubusercontent.com/XYOracleNetwork/sdk-xyo-client-js/main/packages/manifest/src/schema.json",
|
|
3
|
+
"nodes": [
|
|
4
|
+
{
|
|
5
|
+
"config": {
|
|
6
|
+
"accountPath": "44'/60'/1",
|
|
7
|
+
"name": "XYORewardRedemptionNode",
|
|
8
|
+
"schema": "network.xyo.node.config"
|
|
9
|
+
},
|
|
10
|
+
"modules": {
|
|
11
|
+
"private": [],
|
|
12
|
+
"public": [
|
|
13
|
+
{
|
|
14
|
+
"config": {
|
|
15
|
+
"accountPath": "1/1/1",
|
|
16
|
+
"name": "Data",
|
|
17
|
+
"getCache": {
|
|
18
|
+
"enabled": true,
|
|
19
|
+
"maxEntries": 5000
|
|
20
|
+
},
|
|
21
|
+
"payloadSdkConfig": {
|
|
22
|
+
"collection": "reward_redemption_api_datalake"
|
|
23
|
+
},
|
|
24
|
+
"schema": "network.xyo.archivist.config"
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
]
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
],
|
|
31
|
+
"schema": "network.xyo.manifest"
|
|
32
|
+
}
|