@xyo-network/chain-services 1.16.24 → 1.16.25
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/dist/neutral/AccountBalance/BaseAccountBalanceService.d.ts +4 -2
- package/dist/neutral/AccountBalance/BaseAccountBalanceService.d.ts.map +1 -1
- package/dist/neutral/BlockProducer/BaseBlockProducerService.d.ts +6 -6
- package/dist/neutral/BlockProducer/BaseBlockProducerService.d.ts.map +1 -1
- package/dist/neutral/ChainBlockNumberIteration/ChainBlockNumberIterationService.d.ts +16 -1
- package/dist/neutral/ChainBlockNumberIteration/ChainBlockNumberIterationService.d.ts.map +1 -1
- package/dist/neutral/ChainValidator/XyoValidator.d.ts +1 -1
- package/dist/neutral/ChainValidator/XyoValidator.d.ts.map +1 -1
- package/dist/neutral/PendingTransactions/BasePendingTransactions.d.ts.map +1 -1
- package/dist/neutral/PendingTransactions/bundledPayloadToHydratedTransaction.d.ts +2 -2
- package/dist/neutral/PendingTransactions/bundledPayloadToHydratedTransaction.d.ts.map +1 -1
- package/dist/neutral/PendingTransactions/hydratedTransactionToPayloadBundle.d.ts +2 -2
- package/dist/neutral/PendingTransactions/hydratedTransactionToPayloadBundle.d.ts.map +1 -1
- package/dist/neutral/index.d.ts +1 -0
- package/dist/neutral/index.d.ts.map +1 -1
- package/dist/neutral/index.mjs +96 -89
- package/dist/neutral/index.mjs.map +1 -1
- package/package.json +26 -26
- package/src/AccountBalance/BaseAccountBalanceService.ts +12 -9
- package/src/BlockProducer/BaseBlockProducerService.ts +10 -16
- package/src/PendingTransactions/BasePendingTransactions.ts +11 -9
- package/src/PendingTransactions/bundledPayloadToHydratedTransaction.ts +6 -6
- package/src/PendingTransactions/hydratedTransactionToPayloadBundle.ts +3 -3
- package/src/StakeIntent/lib/getBlockSignedStakeDeclarations.ts +2 -2
- package/src/blockViewerFromChainIteratorAndArchivist.ts +11 -11
- package/src/index.ts +1 -0
|
@@ -6,12 +6,14 @@ import z from 'zod';
|
|
|
6
6
|
import { BaseService } from '../BaseService.ts';
|
|
7
7
|
import { BaseServiceParams } from '../model/index.ts';
|
|
8
8
|
export declare const BaseAccountBalanceServiceParamsZod: z.ZodObject<{
|
|
9
|
+
blockViewer: z.ZodObject<{}, z.z.core.$loose>;
|
|
9
10
|
chainArchivist: z.ZodObject<{}, z.z.core.$loose>;
|
|
10
11
|
chainIterator: z.ZodObject<{}, z.z.core.$loose>;
|
|
11
12
|
context: z.ZodObject<{}, z.z.core.$loose>;
|
|
12
13
|
transferContext: z.ZodObject<{}, z.z.core.$loose>;
|
|
13
14
|
}, z.z.core.$strip>;
|
|
14
15
|
export interface BaseAccountBalanceServiceParams extends BaseServiceParams {
|
|
16
|
+
blockViewer: BlockViewer;
|
|
15
17
|
chainArchivist: ReadArchivist;
|
|
16
18
|
chainIterator: EventingChainBlockNumberIteratorService;
|
|
17
19
|
context: BalanceStepSummaryContext;
|
|
@@ -19,7 +21,7 @@ export interface BaseAccountBalanceServiceParams extends BaseServiceParams {
|
|
|
19
21
|
}
|
|
20
22
|
export declare class BaseAccountBalanceService extends BaseService<BaseAccountBalanceServiceParams> implements AccountBalanceViewer {
|
|
21
23
|
protected accountBalanceViewer: AccountBalanceViewer;
|
|
22
|
-
protected blockViewer: BlockViewer;
|
|
24
|
+
protected get blockViewer(): BlockViewer;
|
|
23
25
|
static paramsHandler(params?: Partial<BaseAccountBalanceServiceParams> | undefined): Promise<BaseAccountBalanceServiceParams>;
|
|
24
26
|
accountBalance(address: Address, headOrRange?: XL1BlockRange | Hash): Promise<AttoXL1>;
|
|
25
27
|
accountBalanceHistory(address: Address): Promise<AccountBalanceHistoryItem[]>;
|
|
@@ -29,6 +31,6 @@ export declare class BaseAccountBalanceService extends BaseService<BaseAccountBa
|
|
|
29
31
|
accountsBalancesHistory(addresses: Address[]): Promise<Partial<Record<Address, AccountBalanceHistoryItem[]>>>;
|
|
30
32
|
accountsBalancesHistory(addresses: Address[], head: Hash): Promise<Partial<Record<Address, AccountBalanceHistoryItem[]>>>;
|
|
31
33
|
accountsBalancesHistory(addresses: Address[], range: XL1BlockRange): Promise<Partial<Record<Address, AccountBalanceHistoryItem[]>>>;
|
|
32
|
-
createHandler(): void
|
|
34
|
+
createHandler(): Promise<void>;
|
|
33
35
|
}
|
|
34
36
|
//# sourceMappingURL=BaseAccountBalanceService.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseAccountBalanceService.d.ts","sourceRoot":"","sources":["../../../src/AccountBalance/BaseAccountBalanceService.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EAAuB,IAAI,EACnC,MAAM,gBAAgB,CAAA;AAEvB,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAC5D,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAClE,OAAO,EACL,yBAAyB,EACzB,oBAAoB,EAEpB,yBAAyB,EACzB,WAAW,EACX,uCAAuC,EAEvC,2BAA2B,EAC5B,MAAM,+BAA+B,CAAA;AACtC,OAAO,CAAC,MAAM,KAAK,CAAA;AAEnB,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"BaseAccountBalanceService.d.ts","sourceRoot":"","sources":["../../../src/AccountBalance/BaseAccountBalanceService.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EAAuB,IAAI,EACnC,MAAM,gBAAgB,CAAA;AAEvB,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAC5D,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAClE,OAAO,EACL,yBAAyB,EACzB,oBAAoB,EAEpB,yBAAyB,EACzB,WAAW,EACX,uCAAuC,EAEvC,2BAA2B,EAC5B,MAAM,+BAA+B,CAAA;AACtC,OAAO,CAAC,MAAM,KAAK,CAAA;AAEnB,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAErD,eAAO,MAAM,kCAAkC;;;;;;mBAM7C,CAAA;AAEF,MAAM,WAAW,+BAAgC,SAAQ,iBAAiB;IACxE,WAAW,EAAE,WAAW,CAAA;IACxB,cAAc,EAAE,aAAa,CAAA;IAC7B,aAAa,EAAE,uCAAuC,CAAA;IACtD,OAAO,EAAE,yBAAyB,CAAA;IAClC,eAAe,EAAE,2BAA2B,CAAA;CAC7C;AAED,qBACa,yBAA0B,SAAQ,WAAW,CAAC,+BAA+B,CAAE,YAAW,oBAAoB;IACzH,SAAS,CAAC,oBAAoB,EAAG,oBAAoB,CAAA;IAErD,SAAS,KAAK,WAAW,gBAExB;WAEqB,aAAa,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,+BAA+B,CAAC,GAAG,SAAS,GAAG,OAAO,CAAC,+BAA+B,CAAC;IAOtI,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,aAAa,GAAG,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC;IAKtF,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,yBAAyB,EAAE,CAAC;IAC7E,qBAAqB,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,yBAAyB,EAAE,CAAC;IACzF,qBAAqB,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,yBAAyB,EAAE,CAAC;IAKnG,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,YAAY,CAAC,EAAE,IAAI,GAAG,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;IAqBrH,uBAAuB,CAAC,SAAS,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,yBAAyB,EAAE,CAAC,CAAC,CAAC;IAC7G,uBAAuB,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,yBAAyB,EAAE,CAAC,CAAC,CAAC;IACzH,uBAAuB,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,yBAAyB,EAAE,CAAC,CAAC,CAAC;IAK1H,aAAa;CAO7B"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { Address, Hex } from '@xylabs/sdk-js';
|
|
2
2
|
import { ArchivistInstance } from '@xyo-network/archivist-model';
|
|
3
3
|
import { BlockRewardDiviner } from '@xyo-network/chain-modules';
|
|
4
|
-
import {
|
|
5
|
-
import { BlockBoundWitness, ChainStakeIntent,
|
|
4
|
+
import { WithHashMeta } from '@xyo-network/payload-model';
|
|
5
|
+
import { BlockBoundWitness, ChainStakeIntent, HydratedBlockWithHashMeta, Transfer } from '@xyo-network/xl1-protocol';
|
|
6
6
|
import { AccountBalanceViewer, BlockProducerService, Config, PendingTransactionsService, StakeIntentService, TimeSyncViewer } from '@xyo-network/xl1-protocol-sdk';
|
|
7
7
|
import z from 'zod';
|
|
8
8
|
import { BaseService } from '../BaseService.ts';
|
|
@@ -54,7 +54,7 @@ export declare class BaseBlockProducerService extends BaseService<BaseBlockProdu
|
|
|
54
54
|
protected get account(): import("@xyo-network/account-model").AccountInstance;
|
|
55
55
|
protected get balanceService(): AccountBalanceViewer;
|
|
56
56
|
protected get chainArchivist(): import("@xyo-network/archivist-model").ReadArchivist<import("@xyo-network/payload-model").Payload, import("@xylabs/sdk-js").Hash, import("@xyo-network/payload-model").Sequence>;
|
|
57
|
-
protected get chainId(): Hex
|
|
57
|
+
protected get chainId(): Hex;
|
|
58
58
|
protected get electionService(): import("@xyo-network/xl1-protocol-sdk").ElectionService;
|
|
59
59
|
protected get pendingTransactionsService(): PendingTransactionsService;
|
|
60
60
|
protected get rejectedTransactionsArchivist(): ArchivistInstance<import("@xyo-network/archivist-model").ArchivistParams<import("@xyo-network/module-model").AnyConfigSchema<import("@xyo-network/archivist-model").ArchivistConfig>>, import("@xyo-network/archivist-model").ArchivistModuleEventData, import("@xyo-network/payload-model").Payload>;
|
|
@@ -64,15 +64,15 @@ export declare class BaseBlockProducerService extends BaseService<BaseBlockProdu
|
|
|
64
64
|
protected get time(): TimeSyncViewer;
|
|
65
65
|
protected get validateHydratedBlockState(): import("@xyo-network/xl1-protocol-sdk").HydratedBlockStateValidationFunction;
|
|
66
66
|
static paramsHandler(params?: Partial<BaseBlockProducerServiceParams> | undefined): Promise<BaseBlockProducerServiceParams>;
|
|
67
|
-
next(head:
|
|
67
|
+
next(head: WithHashMeta<BlockBoundWitness>): Promise<HydratedBlockWithHashMeta | undefined>;
|
|
68
68
|
protected getBlockRewardTransfers(block: number): Promise<Transfer[]>;
|
|
69
69
|
/**
|
|
70
70
|
* Handles the producer redeclaration logic
|
|
71
71
|
* @param head The current head block
|
|
72
72
|
* @returns chain stake intent for the producer redeclaration, or undefined if no redeclaration is needed
|
|
73
73
|
*/
|
|
74
|
-
protected getProducerRedeclaration(head:
|
|
75
|
-
protected proposeNextValidBlock(head:
|
|
74
|
+
protected getProducerRedeclaration(head: WithHashMeta<BlockBoundWitness>): Promise<ChainStakeIntent | undefined>;
|
|
75
|
+
protected proposeNextValidBlock(head: WithHashMeta<BlockBoundWitness>, validateBalances?: boolean): Promise<HydratedBlockWithHashMeta | undefined>;
|
|
76
76
|
private filterByFunded;
|
|
77
77
|
private generateTimePayload;
|
|
78
78
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseBlockProducerService.d.ts","sourceRoot":"","sources":["../../../src/BlockProducer/BaseBlockProducerService.ts"],"names":[],"mappings":"AACA,OAAO,EACL,OAAO,
|
|
1
|
+
{"version":3,"file":"BaseBlockProducerService.d.ts","sourceRoot":"","sources":["../../../src/BlockProducer/BaseBlockProducerService.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,22 @@ import { LRUCache } from 'lru-cache';
|
|
|
6
6
|
import { BaseService } from '../BaseService.ts';
|
|
7
7
|
import type { XyoChainIteratorParams } from './model/index.ts';
|
|
8
8
|
export declare class ChainBlockNumberIterationService extends BaseService<XyoChainIteratorParams, ChainIteratorServiceEventData> implements EventingChainBlockNumberIteratorService {
|
|
9
|
-
protected _blocksByBlockNumber: LRUCache<number, WithStorageMeta<
|
|
9
|
+
protected _blocksByBlockNumber: LRUCache<number, WithStorageMeta<{
|
|
10
|
+
schema: "network.xyo.boundwitness";
|
|
11
|
+
addresses: import("@xylabs/sdk-js").Address[];
|
|
12
|
+
payload_hashes: import("@xylabs/sdk-js").Hash[];
|
|
13
|
+
payload_schemas: string[];
|
|
14
|
+
previous_hashes: (import("@xylabs/sdk-js").Hash | null)[];
|
|
15
|
+
$signatures: (Hex | null)[];
|
|
16
|
+
block: import("@xyo-network/xl1-protocol").XL1BlockNumber;
|
|
17
|
+
chain: Hex;
|
|
18
|
+
previous: import("@xylabs/sdk-js").Hash | null;
|
|
19
|
+
$epoch: number;
|
|
20
|
+
$destination?: import("@xylabs/sdk-js").Address | undefined;
|
|
21
|
+
$sourceQuery?: import("@xylabs/sdk-js").Hash | undefined;
|
|
22
|
+
protocol?: number | undefined;
|
|
23
|
+
step_hashes?: import("@xylabs/sdk-js").Hash[] | undefined;
|
|
24
|
+
}>, unknown>;
|
|
10
25
|
protected _currentHead: WithStorageMeta<BlockBoundWitness> | undefined;
|
|
11
26
|
get chainId(): Hex;
|
|
12
27
|
get chainMap(): PayloadMapRead<WithStorageMeta<Payload>>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChainBlockNumberIterationService.d.ts","sourceRoot":"","sources":["../../../src/ChainBlockNumberIteration/ChainBlockNumberIterationService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAA;AAMzC,OAAO,KAAK,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAC1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAIlE,OAAO,KAAK,EACV,6BAA6B,EAAE,uCAAuC,EAAE,cAAc,EACvF,MAAM,+BAA+B,CAAA;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAEpC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAA;AAE9D,qBAAa,gCAAiC,SAAQ,WAAW,CAAC,sBAAsB,EAAE,6BAA6B,CACrH,YAAW,uCAAuC;IAClD,SAAS,CAAC,oBAAoB
|
|
1
|
+
{"version":3,"file":"ChainBlockNumberIterationService.d.ts","sourceRoot":"","sources":["../../../src/ChainBlockNumberIteration/ChainBlockNumberIterationService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAA;AAMzC,OAAO,KAAK,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAC1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAIlE,OAAO,KAAK,EACV,6BAA6B,EAAE,uCAAuC,EAAE,cAAc,EACvF,MAAM,+BAA+B,CAAA;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAEpC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAA;AAE9D,qBAAa,gCAAiC,SAAQ,WAAW,CAAC,sBAAsB,EAAE,6BAA6B,CACrH,YAAW,uCAAuC;IAClD,SAAS,CAAC,oBAAoB;;;;;;;;;;;;;;;iBAA4E;IAC1G,SAAS,CAAC,YAAY,EAAE,eAAe,CAAC,iBAAiB,CAAC,GAAG,SAAS,CAAA;IAEtE,IAAI,OAAO,IAAI,GAAG,CAA2G;IAE7H,IAAI,QAAQ,IAAI,cAAc,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAA0C;IAE5F,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,iBAAiB,CAAC,CAAC;IA0B/D,IAAI,IAAI,OAAO,CAAC,eAAe,CAAC,iBAAiB,CAAC,CAAC;IAUnD,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,iBAAiB,CAAC,GAAG,SAAS,CAAC;IAQ5E,QAAQ,CAAC,KAAK,GAAE,MAAM,GAAG,SAAqB,EAAE,KAAK,GAAE,MAAU,GAAG,OAAO,CAAC,eAAe,CAAC,iBAAiB,CAAC,EAAE,CAAC;IAkBjH,UAAU,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;YAM1C,iDAAiD;CAOhE"}
|
|
@@ -20,7 +20,7 @@ export declare class XyoValidator<TParams extends XyoValidatorParams = XyoValida
|
|
|
20
20
|
get address(): import("@xylabs/sdk-js").Address;
|
|
21
21
|
protected get account(): AccountInstance;
|
|
22
22
|
protected get chainArchivist(): ReadArchivist<import("@xyo-network/payload-model").Payload, import("@xylabs/sdk-js").Hash, import("@xyo-network/payload-model").Sequence>;
|
|
23
|
-
protected get chainInfo(): import("@xylabs/sdk-js").Hex
|
|
23
|
+
protected get chainInfo(): import("@xylabs/sdk-js").Hex;
|
|
24
24
|
protected get electionService(): ElectionService;
|
|
25
25
|
protected get pendingBundledTransactionsArchivist(): ArchivistInstance<import("@xyo-network/archivist-model").ArchivistParams<import("@xyo-network/module-model").AnyConfigSchema<import("@xyo-network/archivist-model").ArchivistConfig>>, import("@xyo-network/archivist-model").ArchivistModuleEventData, import("@xyo-network/payload-model").Payload>;
|
|
26
26
|
protected get rewardService(): BlockRewardService;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"XyoValidator.d.ts","sourceRoot":"","sources":["../../../src/ChainValidator/XyoValidator.ts"],"names":[],"mappings":"AAAA,OAAO,EACgB,WAAW,EAChC,UAAU,EACX,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAC5D,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAC/E,OAAO,EACL,iBAAiB,EACjB,OAAO,EACP,wCAAwC,EACzC,MAAM,2BAA2B,CAAA;AAClC,OAAO,EACL,kBAAkB,EAAE,eAAe,EAAE,oCAAoC,EAAE,kBAAkB,EAC9F,MAAM,+BAA+B,CAAA;AAEtC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAE5C,MAAM,WAAW,kBAAkB,CAAC,OAAO,SAAS,WAAW,GAAG,WAAW,CAAE,SAAQ,iBAAiB,CAAC,OAAO,CAAC;IAC/G,OAAO,EAAE,eAAe,CAAA;IACxB,cAAc,EAAE,aAAa,CAAA;IAC7B,OAAO,EAAE,OAAO,CAAA;IAChB,eAAe,EAAE,eAAe,CAAA;IAChC,mCAAmC,EAAE,iBAAiB,CAAA;IACtD,aAAa,EAAE,kBAAkB,CAAA;IACjC,kBAAkB,EAAE,kBAAkB,CAAA;IACtC,0BAA0B,EAAE,oCAAoC,CAAA;CACjE;AAED,qBACa,YAAY,CAAC,OAAO,SAAS,kBAAkB,GAAG,kBAAkB,CAAE,SAAQ,WAAW,CAAC,OAAO,CAAE,YAAW,SAAS;IAClI,IAAI,OAAO,qCAEV;IAED,SAAS,KAAK,OAAO,oBAEpB;IAED,SAAS,KAAK,cAAc,8IAE3B;IAED,SAAS,KAAK,SAAS,
|
|
1
|
+
{"version":3,"file":"XyoValidator.d.ts","sourceRoot":"","sources":["../../../src/ChainValidator/XyoValidator.ts"],"names":[],"mappings":"AAAA,OAAO,EACgB,WAAW,EAChC,UAAU,EACX,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAC5D,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAC/E,OAAO,EACL,iBAAiB,EACjB,OAAO,EACP,wCAAwC,EACzC,MAAM,2BAA2B,CAAA;AAClC,OAAO,EACL,kBAAkB,EAAE,eAAe,EAAE,oCAAoC,EAAE,kBAAkB,EAC9F,MAAM,+BAA+B,CAAA;AAEtC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAE5C,MAAM,WAAW,kBAAkB,CAAC,OAAO,SAAS,WAAW,GAAG,WAAW,CAAE,SAAQ,iBAAiB,CAAC,OAAO,CAAC;IAC/G,OAAO,EAAE,eAAe,CAAA;IACxB,cAAc,EAAE,aAAa,CAAA;IAC7B,OAAO,EAAE,OAAO,CAAA;IAChB,eAAe,EAAE,eAAe,CAAA;IAChC,mCAAmC,EAAE,iBAAiB,CAAA;IACtD,aAAa,EAAE,kBAAkB,CAAA;IACjC,kBAAkB,EAAE,kBAAkB,CAAA;IACtC,0BAA0B,EAAE,oCAAoC,CAAA;CACjE;AAED,qBACa,YAAY,CAAC,OAAO,SAAS,kBAAkB,GAAG,kBAAkB,CAAE,SAAQ,WAAW,CAAC,OAAO,CAAE,YAAW,SAAS;IAClI,IAAI,OAAO,qCAEV;IAED,SAAS,KAAK,OAAO,oBAEpB;IAED,SAAS,KAAK,cAAc,8IAE3B;IAED,SAAS,KAAK,SAAS,iCAEtB;IAED,SAAS,KAAK,eAAe,oBAE5B;IAED,SAAS,KAAK,mCAAmC,0SAEhD;IAED,SAAS,KAAK,aAAa,uBAE1B;IAED,oBAAoB,CAAC,MAAM,EAAE,iBAAiB,GAAG,UAAU,CAAC,KAAK,EAAE,CAAC;IAK9D,0BAA0B,CAAC,mBAAmB,EAAE,wCAAwC,GAAG,OAAO,CAAC,OAAO,CAAC;CAQlH"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BasePendingTransactions.d.ts","sourceRoot":"","sources":["../../../src/PendingTransactions/BasePendingTransactions.ts"],"names":[],"mappings":"AACA,OAAO,EAG0B,IAAI,EAEpC,MAAM,gBAAgB,CAAA;AAEvB,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAA;AAKhE,OAAO,
|
|
1
|
+
{"version":3,"file":"BasePendingTransactions.d.ts","sourceRoot":"","sources":["../../../src/PendingTransactions/BasePendingTransactions.ts"],"names":[],"mappings":"AACA,OAAO,EAG0B,IAAI,EAEpC,MAAM,gBAAgB,CAAA;AAEvB,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAA;AAKhE,OAAO,EAC8C,OAAO,EAAE,qCAAqC,EAEjG,wCAAwC,EAEzC,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAA;AAI1E,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAIrD,MAAM,WAAW,oCAAqC,SAAQ,iBAAiB;IAC7E,sCAAsC,CAAC,EAAE,qCAAqC,EAAE,CAAA;IAChF,cAAc,CAAC,EAAE,iBAAiB,CAAA;IAClC,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,mCAAmC,CAAC,EAAE,iBAAiB,CAAA;IACvD,6BAA6B,CAAC,EAAE,iBAAiB,CAAA;CAClD;AAED,qBACa,8BAA+B,SAAQ,WAAW,CAAC,oCAAoC,CAAE,YAAW,0BAA0B;IACzI,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAa3B;IAEV;;;OAGG;IACH,OAAO,CAAC,8BAA8B,CAAc;IAEpD;;;OAGG;IACH,OAAO,CAAC,2CAA2C,CAA6B;IAEhF;;OAEG;IACH,OAAO,CAAC,yBAAyB,CAAY;IAE7C;;;;OAIG;IACH,OAAO,CAAC,kCAAkC,CAAuB;IAEjE;;;OAGG;IACH,OAAO,CAAC,+CAA+C,CAAc;IAErE,OAAO,KAAK,sCAAsC,GAEjD;IAED,OAAO,KAAK,cAAc,GAEzB;IAED,OAAO,KAAK,OAAO,GAElB;IAED,OAAO,KAAK,mCAAmC,GAE9C;IAED,OAAO,KAAK,wCAAwC,GAEnD;IAED,OAAO,KAAK,wBAAwB,GAGnC;IAED,OAAO,KAAK,6BAA6B,GAExC;IAEc,aAAa;IAgCtB,sBAAsB,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,wCAAwC,EAAE,CAAC;YA8E9F,aAAa;YAOb,wBAAwB;YAQxB,kCAAkC;YAUlC,qBAAqB;IA0BnC;;;;;OAKG;IACH,OAAO,CAAC,qCAAqC;YAO/B,wCAAwC;CAsEvD"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import type { PayloadBundle, WithStorageMeta } from '@xyo-network/payload-model';
|
|
2
|
-
import type {
|
|
3
|
-
export declare const bundledPayloadToHydratedTransaction: (payload: WithStorageMeta<PayloadBundle>) => Promise<
|
|
2
|
+
import type { SignedHydratedTransactionWithHashMeta } from '@xyo-network/xl1-protocol';
|
|
3
|
+
export declare const bundledPayloadToHydratedTransaction: (payload: WithStorageMeta<PayloadBundle>) => Promise<SignedHydratedTransactionWithHashMeta | undefined>;
|
|
4
4
|
//# sourceMappingURL=bundledPayloadToHydratedTransaction.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bundledPayloadToHydratedTransaction.d.ts","sourceRoot":"","sources":["../../../src/PendingTransactions/bundledPayloadToHydratedTransaction.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAChF,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"bundledPayloadToHydratedTransaction.d.ts","sourceRoot":"","sources":["../../../src/PendingTransactions/bundledPayloadToHydratedTransaction.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAChF,OAAO,KAAK,EAAE,qCAAqC,EAAE,MAAM,2BAA2B,CAAA;AAGtF,eAAO,MAAM,mCAAmC,GAC9C,SAAS,eAAe,CAAC,aAAa,CAAC,KACtC,OAAO,CAAC,qCAAqC,GAAG,SAAS,CAM3D,CAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import type { PayloadBundle } from '@xyo-network/payload-model';
|
|
2
|
-
import type {
|
|
3
|
-
export declare const hydratedTransactionToPayloadBundle: (transaction:
|
|
2
|
+
import type { SignedHydratedTransactionWithHashMeta } from '@xyo-network/xl1-protocol';
|
|
3
|
+
export declare const hydratedTransactionToPayloadBundle: (transaction: SignedHydratedTransactionWithHashMeta) => PayloadBundle;
|
|
4
4
|
//# sourceMappingURL=hydratedTransactionToPayloadBundle.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hydratedTransactionToPayloadBundle.d.ts","sourceRoot":"","sources":["../../../src/PendingTransactions/hydratedTransactionToPayloadBundle.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAE/D,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"hydratedTransactionToPayloadBundle.d.ts","sourceRoot":"","sources":["../../../src/PendingTransactions/hydratedTransactionToPayloadBundle.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAE/D,OAAO,KAAK,EAAE,qCAAqC,EAAE,MAAM,2BAA2B,CAAA;AAGtF,eAAO,MAAM,kCAAkC,GAAI,aAAa,qCAAqC,KAAG,aAGvG,CAAA"}
|
package/dist/neutral/index.d.ts
CHANGED
|
@@ -3,6 +3,7 @@ export * from './AccountTransfers/index.ts';
|
|
|
3
3
|
export * from './BaseService.ts';
|
|
4
4
|
export * from './BlockProducer/index.ts';
|
|
5
5
|
export * from './BlockReward/index.ts';
|
|
6
|
+
export * from './blockViewerFromChainIteratorAndArchivist.ts';
|
|
6
7
|
export * from './ChainBlockNumberIteration/index.ts';
|
|
7
8
|
export * from './ChainService/index.ts';
|
|
8
9
|
export * from './ChainValidator/index.ts';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAA;AACzC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,kBAAkB,CAAA;AAChC,cAAc,0BAA0B,CAAA;AACxC,cAAc,wBAAwB,CAAA;AACtC,cAAc,sCAAsC,CAAA;AACpD,cAAc,yBAAyB,CAAA;AACvC,cAAc,2BAA2B,CAAA;AACzC,cAAc,qBAAqB,CAAA;AACnC,cAAc,kBAAkB,CAAA;AAChC,cAAc,mCAAmC,CAAA;AACjD,cAAc,gCAAgC,CAAA;AAC9C,cAAc,oBAAoB,CAAA;AAClC,cAAc,wBAAwB,CAAA;AACtC,cAAc,sBAAsB,CAAA;AACpC,cAAc,iBAAiB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAA;AACzC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,kBAAkB,CAAA;AAChC,cAAc,0BAA0B,CAAA;AACxC,cAAc,wBAAwB,CAAA;AACtC,cAAc,+CAA+C,CAAA;AAC7D,cAAc,sCAAsC,CAAA;AACpD,cAAc,yBAAyB,CAAA;AACvC,cAAc,2BAA2B,CAAA;AACzC,cAAc,qBAAqB,CAAA;AACnC,cAAc,kBAAkB,CAAA;AAChC,cAAc,mCAAmC,CAAA;AACjD,cAAc,gCAAgC,CAAA;AAC9C,cAAc,oBAAoB,CAAA;AAClC,cAAc,wBAAwB,CAAA;AACtC,cAAc,sBAAsB,CAAA;AACpC,cAAc,iBAAiB,CAAA"}
|
package/dist/neutral/index.mjs
CHANGED
|
@@ -65,67 +65,6 @@ function creatableService() {
|
|
|
65
65
|
}
|
|
66
66
|
__name(creatableService, "creatableService");
|
|
67
67
|
|
|
68
|
-
// src/blockViewerFromChainIteratorAndArchivist.ts
|
|
69
|
-
import { isDefined } from "@xylabs/sdk-js";
|
|
70
|
-
import { PayloadBuilder } from "@xyo-network/payload-builder";
|
|
71
|
-
import { asBlockBoundWitnessWithStorageMeta } from "@xyo-network/xl1-protocol";
|
|
72
|
-
function blockViewerFromChainIteratorAndArchivist(chainIterator, chainArchivist) {
|
|
73
|
-
const result = {
|
|
74
|
-
blockByHash: /* @__PURE__ */ __name(async function(hash) {
|
|
75
|
-
const [payload] = await chainArchivist.get([
|
|
76
|
-
hash
|
|
77
|
-
]);
|
|
78
|
-
const block = asBlockBoundWitnessWithStorageMeta(payload);
|
|
79
|
-
if (isDefined(block)) {
|
|
80
|
-
const payloads = await chainArchivist.get(block.payload_hashes);
|
|
81
|
-
return [
|
|
82
|
-
block,
|
|
83
|
-
payloads
|
|
84
|
-
];
|
|
85
|
-
}
|
|
86
|
-
return null;
|
|
87
|
-
}, "blockByHash"),
|
|
88
|
-
blockByNumber: /* @__PURE__ */ __name(async function(blockNumber) {
|
|
89
|
-
const payload = await chainIterator.get(blockNumber);
|
|
90
|
-
const block = payload ? await PayloadBuilder.addStorageMeta(payload) : void 0;
|
|
91
|
-
if (isDefined(block)) {
|
|
92
|
-
const payloads = await chainArchivist.get(block.payload_hashes);
|
|
93
|
-
return [
|
|
94
|
-
block,
|
|
95
|
-
payloads
|
|
96
|
-
];
|
|
97
|
-
}
|
|
98
|
-
return null;
|
|
99
|
-
}, "blockByNumber"),
|
|
100
|
-
blocksByHash: /* @__PURE__ */ __name(async function(hash, limit = 10) {
|
|
101
|
-
const results = [];
|
|
102
|
-
for (let i = 0; i < limit; i++) {
|
|
103
|
-
const block = await this.blockByHash(hash);
|
|
104
|
-
if (block) {
|
|
105
|
-
results.push(block);
|
|
106
|
-
} else {
|
|
107
|
-
break;
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
return results;
|
|
111
|
-
}, "blocksByHash"),
|
|
112
|
-
currentBlock: /* @__PURE__ */ __name(async function() {
|
|
113
|
-
const head = await chainIterator.head();
|
|
114
|
-
return this.blockByHash(head._hash);
|
|
115
|
-
}, "currentBlock"),
|
|
116
|
-
currentBlockHash: /* @__PURE__ */ __name(async function() {
|
|
117
|
-
const head = await chainIterator.head();
|
|
118
|
-
return head._hash;
|
|
119
|
-
}, "currentBlockHash"),
|
|
120
|
-
currentBlockNumber: /* @__PURE__ */ __name(async function() {
|
|
121
|
-
const head = await chainIterator.head();
|
|
122
|
-
return head.block;
|
|
123
|
-
}, "currentBlockNumber")
|
|
124
|
-
};
|
|
125
|
-
return result;
|
|
126
|
-
}
|
|
127
|
-
__name(blockViewerFromChainIteratorAndArchivist, "blockViewerFromChainIteratorAndArchivist");
|
|
128
|
-
|
|
129
68
|
// src/AccountBalance/BaseAccountBalanceService.ts
|
|
130
69
|
function _ts_decorate2(decorators, target, key, desc) {
|
|
131
70
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
@@ -135,6 +74,7 @@ function _ts_decorate2(decorators, target, key, desc) {
|
|
|
135
74
|
}
|
|
136
75
|
__name(_ts_decorate2, "_ts_decorate");
|
|
137
76
|
var BaseAccountBalanceServiceParamsZod = z.object({
|
|
77
|
+
blockViewer: z.object().loose(),
|
|
138
78
|
chainArchivist: z.object().loose(),
|
|
139
79
|
chainIterator: z.object().loose(),
|
|
140
80
|
context: z.object().loose(),
|
|
@@ -145,7 +85,9 @@ var BaseAccountBalanceService = class extends BaseService {
|
|
|
145
85
|
__name(this, "BaseAccountBalanceService");
|
|
146
86
|
}
|
|
147
87
|
accountBalanceViewer;
|
|
148
|
-
blockViewer
|
|
88
|
+
get blockViewer() {
|
|
89
|
+
return assertEx(this.params.blockViewer, () => "BlockViewer has not been initialized yet");
|
|
90
|
+
}
|
|
149
91
|
static async paramsHandler(params) {
|
|
150
92
|
BaseAccountBalanceServiceParamsZod.parse(params);
|
|
151
93
|
assertEx(params?.context?.head, () => "BalanceStepSummaryContext is required in BaseAccountBalanceServiceParams");
|
|
@@ -184,9 +126,12 @@ var BaseAccountBalanceService = class extends BaseService {
|
|
|
184
126
|
accountsBalancesHistory(_addresses, _headOrRange) {
|
|
185
127
|
throw new Error("Method not implemented.");
|
|
186
128
|
}
|
|
187
|
-
createHandler() {
|
|
188
|
-
this.
|
|
189
|
-
|
|
129
|
+
async createHandler() {
|
|
130
|
+
this.accountBalanceViewer = await SimpleAccountBalanceViewer.create({
|
|
131
|
+
context: this.params.context,
|
|
132
|
+
transferContext: this.params.transferContext,
|
|
133
|
+
blockViewer: this.blockViewer
|
|
134
|
+
});
|
|
190
135
|
}
|
|
191
136
|
};
|
|
192
137
|
BaseAccountBalanceService = _ts_decorate2([
|
|
@@ -261,25 +206,25 @@ BaseAccountTransfersService = _ts_decorate3([
|
|
|
261
206
|
], BaseAccountTransfersService);
|
|
262
207
|
|
|
263
208
|
// src/BlockProducer/BaseBlockProducerService.ts
|
|
264
|
-
import { AddressZod, asHash, assertEx as assertEx4, creatable as creatable4, exists, hexToBigInt, isDefined
|
|
209
|
+
import { AddressZod, asHash, assertEx as assertEx4, creatable as creatable4, exists, hexToBigInt, isDefined, toHex } from "@xylabs/sdk-js";
|
|
265
210
|
import { FixedPercentageBlockRewardDiviner, FixedPercentageBlockRewardDivinerConfigSchema } from "@xyo-network/chain-modules";
|
|
266
211
|
import { buildNextBlock, createDeclarationIntent } from "@xyo-network/chain-protocol";
|
|
267
|
-
import { PayloadBuilder as
|
|
212
|
+
import { PayloadBuilder as PayloadBuilder2 } from "@xyo-network/payload-builder";
|
|
268
213
|
import { asBlockBoundWitness, AttoXL1 as AttoXL13, BlockNumberSchema, defaultRewardRatio, TimeSchema, XYO_STEP_REWARD_ADDRESS } from "@xyo-network/xl1-protocol";
|
|
269
214
|
import z2 from "zod";
|
|
270
215
|
|
|
271
216
|
// src/BlockProducer/generateTransactionFeeTransfers.ts
|
|
272
217
|
import { hexFromBigInt } from "@xylabs/sdk-js";
|
|
273
218
|
import { assertEx as assertEx3 } from "@xylabs/sdk-js";
|
|
274
|
-
import { PayloadBuilder
|
|
219
|
+
import { PayloadBuilder } from "@xyo-network/payload-builder";
|
|
275
220
|
import { TransferSchema, XYO_ZERO_ADDRESS } from "@xyo-network/xl1-protocol";
|
|
276
221
|
import { transactionRequiredGas } from "@xyo-network/xl1-protocol-sdk";
|
|
277
222
|
import { HydratedTransactionWrapper } from "@xyo-network/xl1-wrappers";
|
|
278
223
|
async function generateTransactionFeeTransfers(address, transactions) {
|
|
279
224
|
const txs = await Promise.all(transactions.map(async (tx) => {
|
|
280
225
|
return HydratedTransactionWrapper.parse([
|
|
281
|
-
await
|
|
282
|
-
await
|
|
226
|
+
await PayloadBuilder.addStorageMeta(tx[0]),
|
|
227
|
+
await PayloadBuilder.addStorageMeta(tx[1])
|
|
283
228
|
]);
|
|
284
229
|
}));
|
|
285
230
|
const txBaseFeeCosts = {};
|
|
@@ -425,7 +370,7 @@ var BaseBlockProducerService = class _BaseBlockProducerService extends BaseServi
|
|
|
425
370
|
});
|
|
426
371
|
}
|
|
427
372
|
const blockHex = assertEx4(toHex(block), () => "Failed to convert block to hex");
|
|
428
|
-
const blockId = new
|
|
373
|
+
const blockId = new PayloadBuilder2({
|
|
429
374
|
schema: BlockNumberSchema
|
|
430
375
|
}).fields({
|
|
431
376
|
block: blockHex
|
|
@@ -547,7 +492,7 @@ var BaseBlockProducerService = class _BaseBlockProducerService extends BaseServi
|
|
|
547
492
|
*/
|
|
548
493
|
heartbeatRequired(head) {
|
|
549
494
|
const epoch = head.$epoch;
|
|
550
|
-
if (
|
|
495
|
+
if (isDefined(epoch)) {
|
|
551
496
|
const { heartbeatInterval } = this.params.config.producer;
|
|
552
497
|
if (Date.now() - epoch > heartbeatInterval) {
|
|
553
498
|
return true;
|
|
@@ -675,10 +620,71 @@ MemoryBlockRewardService = _ts_decorate7([
|
|
|
675
620
|
creatable7()
|
|
676
621
|
], MemoryBlockRewardService);
|
|
677
622
|
|
|
623
|
+
// src/blockViewerFromChainIteratorAndArchivist.ts
|
|
624
|
+
import { isDefined as isDefined2 } from "@xylabs/sdk-js";
|
|
625
|
+
import { PayloadBuilder as PayloadBuilder3 } from "@xyo-network/payload-builder";
|
|
626
|
+
import { asSignedBlockBoundWitness, asSignedBlockBoundWitnessWithStorageMeta } from "@xyo-network/xl1-protocol";
|
|
627
|
+
function blockViewerFromChainIteratorAndArchivist(chainIterator, chainArchivist) {
|
|
628
|
+
const result = {
|
|
629
|
+
blockByHash: /* @__PURE__ */ __name(async function(hash) {
|
|
630
|
+
const [payload] = await chainArchivist.get([
|
|
631
|
+
hash
|
|
632
|
+
]);
|
|
633
|
+
const block = asSignedBlockBoundWitnessWithStorageMeta(payload);
|
|
634
|
+
if (isDefined2(block)) {
|
|
635
|
+
const payloads = await chainArchivist.get(block.payload_hashes);
|
|
636
|
+
return [
|
|
637
|
+
block,
|
|
638
|
+
payloads
|
|
639
|
+
];
|
|
640
|
+
}
|
|
641
|
+
return null;
|
|
642
|
+
}, "blockByHash"),
|
|
643
|
+
blockByNumber: /* @__PURE__ */ __name(async function(blockNumber) {
|
|
644
|
+
const payload = asSignedBlockBoundWitness(await chainIterator.get(blockNumber));
|
|
645
|
+
const block = payload ? await PayloadBuilder3.addHashMeta(payload) : void 0;
|
|
646
|
+
if (isDefined2(block)) {
|
|
647
|
+
const payloads = await chainArchivist.get(block.payload_hashes);
|
|
648
|
+
return [
|
|
649
|
+
block,
|
|
650
|
+
payloads
|
|
651
|
+
];
|
|
652
|
+
}
|
|
653
|
+
return null;
|
|
654
|
+
}, "blockByNumber"),
|
|
655
|
+
blocksByHash: /* @__PURE__ */ __name(async function(hash, limit = 10) {
|
|
656
|
+
const results = [];
|
|
657
|
+
for (let i = 0; i < limit; i++) {
|
|
658
|
+
const block = await this.blockByHash(hash);
|
|
659
|
+
if (block) {
|
|
660
|
+
results.push(block);
|
|
661
|
+
} else {
|
|
662
|
+
break;
|
|
663
|
+
}
|
|
664
|
+
}
|
|
665
|
+
return results;
|
|
666
|
+
}, "blocksByHash"),
|
|
667
|
+
currentBlock: /* @__PURE__ */ __name(async function() {
|
|
668
|
+
const head = await chainIterator.head();
|
|
669
|
+
return this.blockByHash(head._hash);
|
|
670
|
+
}, "currentBlock"),
|
|
671
|
+
currentBlockHash: /* @__PURE__ */ __name(async function() {
|
|
672
|
+
const head = await chainIterator.head();
|
|
673
|
+
return head._hash;
|
|
674
|
+
}, "currentBlockHash"),
|
|
675
|
+
currentBlockNumber: /* @__PURE__ */ __name(async function() {
|
|
676
|
+
const head = await chainIterator.head();
|
|
677
|
+
return head.block;
|
|
678
|
+
}, "currentBlockNumber")
|
|
679
|
+
};
|
|
680
|
+
return result;
|
|
681
|
+
}
|
|
682
|
+
__name(blockViewerFromChainIteratorAndArchivist, "blockViewerFromChainIteratorAndArchivist");
|
|
683
|
+
|
|
678
684
|
// src/ChainBlockNumberIteration/ChainBlockNumberIterationService.ts
|
|
679
685
|
import { assertEx as assertEx7, isDefined as isDefined3, isNull, isUndefined } from "@xylabs/sdk-js";
|
|
680
686
|
import { PayloadBuilder as PayloadBuilder4 } from "@xyo-network/payload-builder";
|
|
681
|
-
import { asBlockBoundWitness as asBlockBoundWitness2, asBlockBoundWitnessWithStorageMeta
|
|
687
|
+
import { asBlockBoundWitness as asBlockBoundWitness2, asBlockBoundWitnessWithStorageMeta, isBlockBoundWitnessWithHashMeta } from "@xyo-network/xl1-protocol";
|
|
682
688
|
import { LRUCache } from "lru-cache";
|
|
683
689
|
var ChainBlockNumberIterationService = class extends BaseService {
|
|
684
690
|
static {
|
|
@@ -741,10 +747,10 @@ var ChainBlockNumberIterationService = class extends BaseService {
|
|
|
741
747
|
const { previous } = currentBlock;
|
|
742
748
|
if (isNull(previous)) break;
|
|
743
749
|
const nextBlock = await this.chainMap.get(previous);
|
|
744
|
-
currentBlock =
|
|
750
|
+
currentBlock = asBlockBoundWitnessWithStorageMeta(nextBlock);
|
|
745
751
|
} else {
|
|
746
752
|
const hash = PayloadBuilder4.hash(currentBlock);
|
|
747
|
-
assertEx7(
|
|
753
|
+
assertEx7(asBlockBoundWitnessWithStorageMeta(currentBlock), () => `Expected hash to be a block bound witness [${hash}]`);
|
|
748
754
|
}
|
|
749
755
|
}
|
|
750
756
|
return results;
|
|
@@ -761,7 +767,7 @@ var ChainBlockNumberIterationService = class extends BaseService {
|
|
|
761
767
|
async getBoundWitnessAsBlockBoundWitnessWithStorageMeta(head) {
|
|
762
768
|
const hash = await PayloadBuilder4.hash(head);
|
|
763
769
|
const stored = await this.chainMap.get(hash);
|
|
764
|
-
const newHead =
|
|
770
|
+
const newHead = asBlockBoundWitnessWithStorageMeta(stored);
|
|
765
771
|
if (isUndefined(newHead)) throw new Error(`Head block not found in archivist [${hash}]`);
|
|
766
772
|
return newHead;
|
|
767
773
|
}
|
|
@@ -1081,20 +1087,20 @@ import { ValueType } from "@opentelemetry/api";
|
|
|
1081
1087
|
import { assertEx as assertEx12, creatable as creatable11, exists as exists2, filterAs, filterAsync, forget, isDefined as isDefined4, isUndefined as isUndefined2 } from "@xylabs/sdk-js";
|
|
1082
1088
|
import { MemoryArchivist } from "@xyo-network/archivist-memory";
|
|
1083
1089
|
import { findMostRecentBlock as findMostRecentBlock2 } from "@xyo-network/chain-protocol";
|
|
1084
|
-
import { asBlockBoundWitnessWithHashMeta, isTransactionBoundWitnessWithStorageMeta } from "@xyo-network/xl1-protocol";
|
|
1090
|
+
import { asBlockBoundWitnessWithHashMeta, asXL1BlockNumber, isTransactionBoundWitnessWithStorageMeta } from "@xyo-network/xl1-protocol";
|
|
1085
1091
|
import { TransactionJsonSchemaValidator, validateTransaction } from "@xyo-network/xl1-validation";
|
|
1086
1092
|
import { Mutex as Mutex2 } from "async-mutex";
|
|
1087
1093
|
|
|
1088
1094
|
// src/PendingTransactions/bundledPayloadToHydratedTransaction.ts
|
|
1089
1095
|
import { PayloadBuilder as PayloadBuilder5 } from "@xyo-network/payload-builder";
|
|
1090
|
-
import {
|
|
1096
|
+
import { asSignedTransactionBoundWitnessWithHashMeta } from "@xyo-network/xl1-protocol";
|
|
1091
1097
|
var bundledPayloadToHydratedTransaction = /* @__PURE__ */ __name(async (payload) => {
|
|
1092
|
-
const
|
|
1093
|
-
const tx =
|
|
1098
|
+
const withHashMeta = await PayloadBuilder5.addHashMeta(payload.payloads);
|
|
1099
|
+
const tx = asSignedTransactionBoundWitnessWithHashMeta(withHashMeta.find((p) => p._hash === payload.root));
|
|
1094
1100
|
if (tx) {
|
|
1095
1101
|
return [
|
|
1096
1102
|
tx,
|
|
1097
|
-
|
|
1103
|
+
withHashMeta.filter((p) => p._hash !== payload.root)
|
|
1098
1104
|
];
|
|
1099
1105
|
}
|
|
1100
1106
|
}, "bundledPayloadToHydratedTransaction");
|
|
@@ -1220,7 +1226,7 @@ var BasePendingTransactionsService = class _BasePendingTransactionsService exten
|
|
|
1220
1226
|
return await this._updateCuratedPendingTransactionsArchivistMutex.runExclusive(async () => {
|
|
1221
1227
|
let [lastHead] = filterAs(await this.chainArchivist.get([
|
|
1222
1228
|
head
|
|
1223
|
-
]), asBlockBoundWitnessWithHashMeta);
|
|
1229
|
+
]), (x) => asBlockBoundWitnessWithHashMeta(x));
|
|
1224
1230
|
if (isUndefined2(lastHead)) return [];
|
|
1225
1231
|
await this.pruneCuratedPendingTransactionsArchivist(lastHead._hash);
|
|
1226
1232
|
const foundPendingTransactions = [];
|
|
@@ -1235,7 +1241,7 @@ var BasePendingTransactionsService = class _BasePendingTransactionsService exten
|
|
|
1235
1241
|
cursor = pendingBundledTransactions.at(-1)?._sequence;
|
|
1236
1242
|
const undeletedTransactionBundles = pendingBundledTransactions.filter((tx) => !this._removablePendingTransactionHashes.has(tx.root));
|
|
1237
1243
|
const transactions = (await Promise.all(undeletedTransactionBundles.map((p) => bundledPayloadToHydratedTransaction(p)))).filter(exists2);
|
|
1238
|
-
const activeTransactions = transactions.filter(isTransactionActive(lastHead.block + 1));
|
|
1244
|
+
const activeTransactions = transactions.filter(isTransactionActive(asXL1BlockNumber(lastHead.block + 1, true)));
|
|
1239
1245
|
const txValidationResults = await Promise.all(activeTransactions.map(async (tx) => [
|
|
1240
1246
|
tx,
|
|
1241
1247
|
await validateTransaction(tx, {
|
|
@@ -1326,7 +1332,7 @@ var BasePendingTransactionsService = class _BasePendingTransactionsService exten
|
|
|
1326
1332
|
let cursor;
|
|
1327
1333
|
let [lastHead] = filterAs(await this.chainArchivist.get([
|
|
1328
1334
|
head
|
|
1329
|
-
]), asBlockBoundWitnessWithHashMeta);
|
|
1335
|
+
]), (x) => asBlockBoundWitnessWithHashMeta(x));
|
|
1330
1336
|
while (isDefined4(lastHead)) {
|
|
1331
1337
|
const pendingBundledTransactions = await this.pendingBundledTransactionsLocalArchivist.next({
|
|
1332
1338
|
limit: 100,
|
|
@@ -1341,7 +1347,7 @@ var BasePendingTransactionsService = class _BasePendingTransactionsService exten
|
|
|
1341
1347
|
foundPendingTransactionsToDeleteHashes.push(...deletedTransactionBundles.map((tx) => tx._hash).filter(exists2));
|
|
1342
1348
|
const undeletedTransactionBundles = pendingBundledTransactions.filter((tx) => !this._removablePendingTransactionHashes.has(tx.root));
|
|
1343
1349
|
const transactions = (await Promise.all(undeletedTransactionBundles.map((p) => bundledPayloadToHydratedTransaction(p)))).filter(exists2);
|
|
1344
|
-
const expiredTransactions = transactions.filter(isTransactionExpired(lastHead.block + 1));
|
|
1350
|
+
const expiredTransactions = transactions.filter(isTransactionExpired(asXL1BlockNumber(lastHead.block + 1, true)));
|
|
1345
1351
|
const expiredBundleHashes = expiredTransactions.map((expiredHydratedTx) => (
|
|
1346
1352
|
// Find the corresponding payload bundle hash for the expired transaction
|
|
1347
1353
|
pendingBundledTransactions.find((bundledTx) => bundledTx.root === expiredHydratedTx[0]._hash)?._hash
|
|
@@ -1405,13 +1411,13 @@ BaseSchemasService = _ts_decorate12([
|
|
|
1405
1411
|
|
|
1406
1412
|
// src/StakeIntent/lib/getBlockSignedStakeDeclarations.ts
|
|
1407
1413
|
import { exists as exists3, filterAs as filterAs2 } from "@xylabs/sdk-js";
|
|
1408
|
-
import {
|
|
1414
|
+
import { isBoundWitness } from "@xyo-network/boundwitness-model";
|
|
1409
1415
|
import { payloadSchemasContains } from "@xyo-network/boundwitness-validator";
|
|
1410
1416
|
import { BoundWitnessWrapper } from "@xyo-network/boundwitness-wrapper";
|
|
1411
1417
|
import { asChainStakeIntent, ChainStakeIntentSchema } from "@xyo-network/xl1-protocol";
|
|
1412
1418
|
var getBlockSignedStakeDeclarations = /* @__PURE__ */ __name(async (block, archivist, intent) => {
|
|
1413
1419
|
const blockData = await archivist.get(block.payload_hashes);
|
|
1414
|
-
const bwsFromBlock =
|
|
1420
|
+
const bwsFromBlock = blockData.filter((x) => isBoundWitness(x));
|
|
1415
1421
|
const bwsFromBlockWithDeclarations = bwsFromBlock.filter((bw) => payloadSchemasContains(bw, ChainStakeIntentSchema));
|
|
1416
1422
|
const validBlockBwsWithDeclarations = await filterToValidSignedBoundWitnesses(bwsFromBlockWithDeclarations);
|
|
1417
1423
|
return (await Promise.all(validBlockBwsWithDeclarations.map(async (bw) => {
|
|
@@ -1434,7 +1440,7 @@ import { asAddress, assertEx as assertEx13, creatable as creatable13, filterAs a
|
|
|
1434
1440
|
import { analyzeChain, ChainStakeIntentAnalyzer, isChainSummaryStakeIntent } from "@xyo-network/chain-analyze";
|
|
1435
1441
|
import { DEFAULT_FIND_FIRST_MATCHING_NEXT_OPTIONS, findFirstMatching, IntervalMap } from "@xyo-network/chain-utils";
|
|
1436
1442
|
import { PayloadBuilder as PayloadBuilder7 } from "@xyo-network/payload-builder";
|
|
1437
|
-
import { asBlockBoundWitness as asBlockBoundWitness3, asBlockBoundWitnessWithStorageMeta as
|
|
1443
|
+
import { asBlockBoundWitness as asBlockBoundWitness3, asBlockBoundWitnessWithStorageMeta as asBlockBoundWitnessWithStorageMeta2, asChainStakeIntent as asChainStakeIntent2 } from "@xyo-network/xl1-protocol";
|
|
1438
1444
|
import { asChainIndexingServiceStateWithStorageMeta, ChainIndexingServiceStateSchema, isChainIndexingServiceState, readPayloadMapFromStore as readPayloadMapFromStore2, timeBudget } from "@xyo-network/xl1-protocol-sdk";
|
|
1439
1445
|
import { Mutex as Mutex3 } from "async-mutex";
|
|
1440
1446
|
import { LRUCache as LRUCache2 } from "lru-cache";
|
|
@@ -1578,7 +1584,7 @@ var XyoStakeIntentService = class extends BaseService {
|
|
|
1578
1584
|
const indexed = (await this.chainArchivist.get([
|
|
1579
1585
|
state.endBlockHash
|
|
1580
1586
|
]))?.[0];
|
|
1581
|
-
const indexedBlock =
|
|
1587
|
+
const indexedBlock = asBlockBoundWitnessWithStorageMeta2(indexed);
|
|
1582
1588
|
if (indexedBlock) {
|
|
1583
1589
|
const indexedBlockNum = indexedBlock.block;
|
|
1584
1590
|
if (indexedBlockNum <= currentBlockNum) {
|
|
@@ -1729,6 +1735,7 @@ export {
|
|
|
1729
1735
|
XyoStakeIntentService,
|
|
1730
1736
|
XyoValidator,
|
|
1731
1737
|
accountBalancesServiceFromArchivist,
|
|
1738
|
+
blockViewerFromChainIteratorAndArchivist,
|
|
1732
1739
|
creatableService,
|
|
1733
1740
|
getBlockSignedStakeDeclarations
|
|
1734
1741
|
};
|