@xyo-network/xl1-protocol-sdk 2.0.6 → 2.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (25) hide show
  1. package/dist/neutral/block/hydrate/createBoundWitnessHydrator.d.ts +14 -38
  2. package/dist/neutral/block/hydrate/createBoundWitnessHydrator.d.ts.map +1 -1
  3. package/dist/neutral/index.mjs +134 -129
  4. package/dist/neutral/index.mjs.map +3 -3
  5. package/dist/neutral/primitives/uncle/findUncles.d.ts +2 -6
  6. package/dist/neutral/primitives/uncle/findUncles.d.ts.map +1 -1
  7. package/dist/neutral/simple/accountBalance/SimpleAccountBalanceViewer.d.ts +4 -12
  8. package/dist/neutral/simple/accountBalance/SimpleAccountBalanceViewer.d.ts.map +1 -1
  9. package/dist/neutral/simple/block/SimpleBlockViewer.d.ts +2 -6
  10. package/dist/neutral/simple/block/SimpleBlockViewer.d.ts.map +1 -1
  11. package/dist/neutral/simple/finalization/SimpleFinalizationViewer.d.ts +2 -6
  12. package/dist/neutral/simple/finalization/SimpleFinalizationViewer.d.ts.map +1 -1
  13. package/dist/neutral/simple/signer/SimpleXyoSigner.d.ts.map +1 -1
  14. package/dist/neutral/simple/windowedBlock/SimpleWindowedBlockViewer.d.ts +10 -30
  15. package/dist/neutral/simple/windowedBlock/SimpleWindowedBlockViewer.d.ts.map +1 -1
  16. package/dist/neutral/test/buildRandomTransaction.d.ts.map +1 -1
  17. package/dist/neutral/test/createGenesisBlock.d.ts.map +1 -1
  18. package/dist/neutral/test/createProducerChainStakeIntentTransaction.d.ts.map +1 -1
  19. package/dist/neutral/test/index.mjs +73 -70
  20. package/dist/neutral/test/index.mjs.map +3 -3
  21. package/dist/neutral/transaction/TransactionBuilder.d.ts +4 -12
  22. package/dist/neutral/transaction/TransactionBuilder.d.ts.map +1 -1
  23. package/dist/neutral/transaction/signTransaction.d.ts +2 -6
  24. package/dist/neutral/transaction/signTransaction.d.ts.map +1 -1
  25. package/package.json +16 -22
@@ -2621,7 +2621,7 @@ import { PayloadBundleSchema as PayloadBundleSchema2 } from "@xyo-network/sdk-js
2621
2621
  import { PayloadBuilder as PayloadBuilder12 } from "@xyo-network/sdk-js";
2622
2622
 
2623
2623
  // src/transaction/buildTransaction.ts
2624
- import { assertEx as assertEx19, toHex } from "@xylabs/sdk-js";
2624
+ import { asAddress, toHex } from "@xylabs/sdk-js";
2625
2625
  import {
2626
2626
  asAnyPayload as asAnyPayload2,
2627
2627
  BoundWitnessBuilder,
@@ -2650,7 +2650,7 @@ async function buildTransaction(chain, onChainPayloads, offChainPayloads, signer
2650
2650
  }
2651
2651
  const fields = {
2652
2652
  ...txBoundWitnessFields,
2653
- from: from ?? (Array.isArray(signer) ? assertEx19(signer.at(0)?.address) : signer.address)
2653
+ from: from ?? asAddress(Array.isArray(signer) ? signer.at(0)?.address : signer.address, true)
2654
2654
  };
2655
2655
  if (script.length > 0) {
2656
2656
  fields.script = script;
@@ -2736,7 +2736,7 @@ var confirmSubmittedTransaction = async (viewer, txHash, options) => {
2736
2736
  };
2737
2737
 
2738
2738
  // src/transaction/hydrateTransaction.ts
2739
- import { assertEx as assertEx20 } from "@xylabs/sdk-js";
2739
+ import { assertEx as assertEx19 } from "@xylabs/sdk-js";
2740
2740
  import {
2741
2741
  asAnyPayload as asAnyPayload3,
2742
2742
  hydrateTypedBoundWitness,
@@ -2811,7 +2811,7 @@ var tryHydrateElevatedTransaction = async ({ chainMap }, hash) => {
2811
2811
  return void 0;
2812
2812
  };
2813
2813
  var hydrateElevatedTransaction = async (context, hash) => {
2814
- return assertEx20(await tryHydrateElevatedTransaction(context, hash), () => "Hydration failed");
2814
+ return assertEx19(await tryHydrateElevatedTransaction(context, hash), () => "Hydration failed");
2815
2815
  };
2816
2816
 
2817
2817
  // src/transaction/primitives/transactionBlockByteCount.ts
@@ -2864,13 +2864,13 @@ function transactionRequiredGas(hydratedTransaction) {
2864
2864
 
2865
2865
  // src/transaction/signTransaction.ts
2866
2866
  import {
2867
- assertEx as assertEx21,
2867
+ assertEx as assertEx20,
2868
2868
  hexFromArrayBuffer,
2869
2869
  toArrayBuffer
2870
2870
  } from "@xylabs/sdk-js";
2871
2871
  import { PayloadBuilder as PayloadBuilder10 } from "@xyo-network/sdk-js";
2872
2872
  async function signTransaction(tx, account) {
2873
- assertEx21(tx.from === account.address, () => "Signer address does not match transaction from address");
2873
+ assertEx20(tx.from === account.address, () => "Signer address does not match transaction from address");
2874
2874
  const unsignedTx = structuredClone(tx);
2875
2875
  unsignedTx.addresses = [account.address];
2876
2876
  unsignedTx.previous_hashes = [account.previousHash ?? null];
@@ -2885,7 +2885,11 @@ async function signTransaction(tx, account) {
2885
2885
  }
2886
2886
 
2887
2887
  // src/transaction/TransactionBuilder.ts
2888
- import { assertEx as assertEx22, Base } from "@xylabs/sdk-js";
2888
+ import {
2889
+ asAddress as asAddress2,
2890
+ assertEx as assertEx21,
2891
+ Base
2892
+ } from "@xylabs/sdk-js";
2889
2893
  import { PayloadBuilder as PayloadBuilder11 } from "@xyo-network/sdk-js";
2890
2894
  import {
2891
2895
  asXL1BlockNumber as asXL1BlockNumber4,
@@ -2905,9 +2909,9 @@ var TransactionBuilder = class extends Base {
2905
2909
  super(options);
2906
2910
  }
2907
2911
  async build() {
2908
- const chain = assertEx22(this._chain, () => "Chain must be set before building the transaction");
2909
- const fees = assertEx22(this._fees, () => "Fees must be set before building the transaction");
2910
- const blockRange = assertEx22(this._blockRange, () => "Block range must be set before building the transaction");
2912
+ const chain = assertEx21(this._chain, () => "Chain must be set before building the transaction");
2913
+ const fees = assertEx21(this._fees, () => "Fees must be set before building the transaction");
2914
+ const blockRange = assertEx21(this._blockRange, () => "Block range must be set before building the transaction");
2911
2915
  return await buildTransaction(
2912
2916
  chain,
2913
2917
  this._elevatedPayloads,
@@ -2915,7 +2919,7 @@ var TransactionBuilder = class extends Base {
2915
2919
  this._signers,
2916
2920
  asXL1BlockNumber4(blockRange[0], true),
2917
2921
  asXL1BlockNumber4(blockRange[1], true),
2918
- this._signers[0]?.address,
2922
+ asAddress2(this._signers[0]?.address),
2919
2923
  fees
2920
2924
  );
2921
2925
  }
@@ -2931,13 +2935,13 @@ var TransactionBuilder = class extends Base {
2931
2935
  this._signers,
2932
2936
  asXL1BlockNumber4(0, true),
2933
2937
  asXL1BlockNumber4(1e3, true),
2934
- this._signers[0]?.address,
2938
+ asAddress2(this._signers[0]?.address),
2935
2939
  defaultTransactionFees3
2936
2940
  );
2937
2941
  }
2938
2942
  elevatedPayload(payload) {
2939
2943
  const allowedPayload = isAllowedBlockPayload2(payload) ? payload : void 0;
2940
- const allowPayloadExists = assertEx22(allowedPayload, () => "Payload must be an AllowedBlockPayload");
2944
+ const allowPayloadExists = assertEx21(allowedPayload, () => "Payload must be an AllowedBlockPayload");
2941
2945
  this._elevatedPayloads.push(allowPayloadExists);
2942
2946
  return this;
2943
2947
  }
@@ -3039,12 +3043,12 @@ var toActorConfigContext = zodToFactory5(ActorConfigContext, "toActorConfigConte
3039
3043
  // src/CreatableProvider/AbstractCreatableProvider.ts
3040
3044
  import {
3041
3045
  AbstractCreatable,
3042
- assertEx as assertEx24,
3046
+ assertEx as assertEx23,
3043
3047
  IdLogger
3044
3048
  } from "@xylabs/sdk-js";
3045
3049
 
3046
3050
  // src/CreatableProvider/ProviderFactory.ts
3047
- import { assertEx as assertEx23 } from "@xylabs/sdk-js";
3051
+ import { assertEx as assertEx22 } from "@xylabs/sdk-js";
3048
3052
  function providerFactoryDescription(factory, labels) {
3049
3053
  return `${factory.providerName}:${factory.defaultMoniker}:${JSON.stringify(labels ?? factory.labels ?? {})}`;
3050
3054
  }
@@ -3065,7 +3069,7 @@ var ProviderFactory = class _ProviderFactory {
3065
3069
  this.dependencies = dependencies;
3066
3070
  this.monikers = creatableProvider2.monikers;
3067
3071
  this.scope = scope;
3068
- assertEx23(this.monikers.includes(this.defaultMoniker), () => "defaultMoniker must be in monikers");
3072
+ assertEx22(this.monikers.includes(this.defaultMoniker), () => "defaultMoniker must be in monikers");
3069
3073
  this.labels = Object.assign({}, creatableProvider2.labels ?? {}, labels ?? {});
3070
3074
  this.providerName = creatableProvider2.name;
3071
3075
  this._uniqueId = Symbol(providerFactoryDescription(this));
@@ -3093,7 +3097,7 @@ var ProviderFactory = class _ProviderFactory {
3093
3097
  break;
3094
3098
  }
3095
3099
  case "context": {
3096
- const context = assertEx23(
3100
+ const context = assertEx22(
3097
3101
  params?.context,
3098
3102
  () => "Context is required for context-scoped providers"
3099
3103
  );
@@ -3114,7 +3118,7 @@ var ProviderFactory = class _ProviderFactory {
3114
3118
  scopeObject[this.resolvedMoniker] = resultPromise;
3115
3119
  const result = await resultPromise;
3116
3120
  if (start) {
3117
- assertEx23(await result.start(), () => `Failed to start provider instance [${this.resolvedMoniker}]`);
3121
+ assertEx22(await result.start(), () => `Failed to start provider instance [${this.resolvedMoniker}]`);
3118
3122
  }
3119
3123
  return result;
3120
3124
  }
@@ -3159,9 +3163,9 @@ var AbstractCreatableProvider = class extends AbstractCreatable {
3159
3163
  return factory;
3160
3164
  }
3161
3165
  static async paramsHandler(params = {}) {
3162
- const context = assertEx24(params.context, () => new Error("Context is required"));
3163
- const config = assertEx24(context.config, () => new Error("Context config is required"));
3164
- const locator = assertEx24(context.locator, () => new Error("Context locator is required"));
3166
+ const context = assertEx23(params.context, () => new Error("Context is required"));
3167
+ const config = assertEx23(context.config, () => new Error("Context config is required"));
3168
+ const locator = assertEx23(context.locator, () => new Error("Context locator is required"));
3165
3169
  return await super.paramsHandler({
3166
3170
  ...params,
3167
3171
  statusReporter: params.statusReporter ?? context.statusReporter,
@@ -3273,7 +3277,7 @@ function labeledCreatableProviderFactory() {
3273
3277
 
3274
3278
  // src/CreatableProvider/ProviderFactoryLocator.ts
3275
3279
  import { hasAllLabels } from "@xylabs/sdk-js";
3276
- import { assertEx as assertEx25 } from "@xylabs/sdk-js";
3280
+ import { assertEx as assertEx24 } from "@xylabs/sdk-js";
3277
3281
  var ProviderFactoryLocator = class _ProviderFactoryLocator {
3278
3282
  _context;
3279
3283
  _registry;
@@ -3305,7 +3309,7 @@ var ProviderFactoryLocator = class _ProviderFactoryLocator {
3305
3309
  this._frozen = true;
3306
3310
  }
3307
3311
  async getInstance(moniker, { start = true, labels } = {}) {
3308
- return assertEx25(
3312
+ return assertEx24(
3309
3313
  await this.tryGetInstance(moniker, { start, labels }),
3310
3314
  () => `No provider instance for the supplied config moniker [${moniker}]${labels ? ` & labels [${JSON.stringify(labels)}]` : ""} could be created`
3311
3315
  );
@@ -3320,7 +3324,7 @@ var ProviderFactoryLocator = class _ProviderFactoryLocator {
3320
3324
  * @returns A provider factory that matches the supplied moniker and labels or throws if one is not found
3321
3325
  */
3322
3326
  locate(moniker, labels) {
3323
- return assertEx25(
3327
+ return assertEx24(
3324
3328
  this.tryLocate(moniker, labels),
3325
3329
  () => `No module factory for the supplied config moniker [${moniker}]${labels ? ` & labels [${JSON.stringify(labels)}]` : ""} registered`
3326
3330
  );
@@ -3342,10 +3346,10 @@ var ProviderFactoryLocator = class _ProviderFactoryLocator {
3342
3346
  * @param labels The labels for the module factory
3343
3347
  */
3344
3348
  register(factory, labels, primary = false) {
3345
- assertEx25(!this._frozen, () => "Cannot register a module factory after the locator has been frozen");
3349
+ assertEx24(!this._frozen, () => "Cannot register a module factory after the locator has been frozen");
3346
3350
  if (this.validateDepsOnRegister) {
3347
3351
  const missingDeps = factory.dependencies.filter((dep) => !this.registered(dep));
3348
- assertEx25(missingDeps.length === 0, () => `Cannot register module factory [${factory.uniqueId.description}] due to missing dependencies: ${missingDeps.join(", ")}`);
3352
+ assertEx24(missingDeps.length === 0, () => `Cannot register module factory [${factory.uniqueId.description}] due to missing dependencies: ${missingDeps.join(", ")}`);
3349
3353
  }
3350
3354
  registerCreatableProviderFactory(this._registry, factory, labels, primary);
3351
3355
  return this;
@@ -3393,7 +3397,7 @@ var ProviderFactoryLocator = class _ProviderFactoryLocator {
3393
3397
  for (const moniker in this.registry) {
3394
3398
  for (const factory of this.registry[moniker] ?? []) {
3395
3399
  const missingDeps = factory.dependencies.filter((dep) => !this.registered(dep));
3396
- assertEx25(missingDeps.length === 0, () => `Module factory [${factory.uniqueId.description}] is missing dependencies: ${missingDeps.join(", ")}`);
3400
+ assertEx24(missingDeps.length === 0, () => `Module factory [${factory.uniqueId.description}] is missing dependencies: ${missingDeps.join(", ")}`);
3397
3401
  }
3398
3402
  }
3399
3403
  }
@@ -3613,7 +3617,7 @@ var toPositiveBigInt = (value) => {
3613
3617
  // src/simple/accountBalance/SimpleAccountBalanceViewer.ts
3614
3618
  import {
3615
3619
  asHash as asHash4,
3616
- assertEx as assertEx32,
3620
+ assertEx as assertEx31,
3617
3621
  exists as exists3,
3618
3622
  isDefined as isDefined17,
3619
3623
  ZERO_ADDRESS
@@ -3685,18 +3689,18 @@ var asTransfersStepSummaryWithStorageMeta = AsObjectFactory7.create(isTransfersS
3685
3689
 
3686
3690
  // src/summary/primitives/balances/balancesStepSummaryFromRange.ts
3687
3691
  import { spanRootAsync as spanRootAsync2 } from "@xylabs/sdk-js";
3688
- import { assertEx as assertEx26 } from "@xylabs/sdk-js";
3692
+ import { assertEx as assertEx25 } from "@xylabs/sdk-js";
3689
3693
  import { isAnyPayload as isAnyPayload3 } from "@xyo-network/sdk-js";
3690
3694
  import { asXL1BlockNumber as asXL1BlockNumber5, StepSizes as StepSizes7 } from "@xyo-network/xl1-protocol-lib";
3691
3695
  async function balancesStepSummaryFromRange(context, semaphores, blockViewer, summaryMap, range) {
3692
3696
  const cacheKey = `${range[0]}|${range[1]}`;
3693
3697
  return await withContextCacheResponse(context, "balancesStepSummaryFromRange", cacheKey, async () => {
3694
3698
  return await spanRootAsync2("balancesStepSummaryFromRange", async () => {
3695
- const [frameHead] = assertEx26(await blockViewer.blockByNumber(range[1]), () => `Block not found for number: ${range[1]}`);
3699
+ const [frameHead] = assertEx25(await blockViewer.blockByNumber(range[1]), () => `Block not found for number: ${range[1]}`);
3696
3700
  const frameSize = range[1] - range[0] + 1;
3697
3701
  const key = `${frameHead._hash}|${frameSize}`;
3698
3702
  return frameSize === 1 ? await spanRootAsync2(`balancesStepSummaryFromRange.frameSize=1[${key}]`, async () => {
3699
- const [, payloads] = assertEx26(await blockViewer.blockByNumber(range[0]), () => `Block not found for number: ${range[0]}`);
3703
+ const [, payloads] = assertEx25(await blockViewer.blockByNumber(range[0]), () => `Block not found for number: ${range[0]}`);
3700
3704
  const balances = {};
3701
3705
  for (const [address, balance] of Object.entries(netBalancesForPayloads(context, payloads))) {
3702
3706
  balances[address] = toSignedBigInt(balance);
@@ -3709,7 +3713,7 @@ async function balancesStepSummaryFromRange(context, semaphores, blockViewer, su
3709
3713
  };
3710
3714
  }, { ...context, timeBudgetLimit: 500 }) : await spanRootAsync2(`balancesStepSummaryFromRange.frameSize>1[${key}]`, async () => {
3711
3715
  const step = StepSizes7.indexOf(asXL1BlockNumber5(frameSize, true));
3712
- assertEx26(step !== -1, () => `Invalid step size: ${frameSize}. Must be one of ${StepSizes7.join(", ")}`);
3716
+ assertEx25(step !== -1, () => `Invalid step size: ${frameSize}. Must be one of ${StepSizes7.join(", ")}`);
3713
3717
  const summaryResult = await summaryMap.get(`${frameHead._hash}|${frameSize}`);
3714
3718
  if (isAnyPayload3(summaryResult)) {
3715
3719
  return summaryResult;
@@ -3754,8 +3758,8 @@ async function balancesStepSummaryFromRange(context, semaphores, blockViewer, su
3754
3758
 
3755
3759
  // src/summary/primitives/balances/balancesSummary.ts
3756
3760
  import {
3757
- asAddress,
3758
- assertEx as assertEx27,
3761
+ asAddress as asAddress3,
3762
+ assertEx as assertEx26,
3759
3763
  spanRootAsync as spanRootAsync3
3760
3764
  } from "@xylabs/sdk-js";
3761
3765
  import {
@@ -3767,7 +3771,7 @@ import {
3767
3771
  async function balancesSummary(context, semaphores, blockViewer, summaryMap, config) {
3768
3772
  return await spanRootAsync3("balancesSummary", async () => {
3769
3773
  const headHash = isChainQualifiedHeadConfig(config) ? config.head : await blockViewer.currentBlockHash();
3770
- const [head] = assertEx27(await blockViewer.blockByHash(headHash), () => `Block not found for hash: ${headHash}`);
3774
+ const [head] = assertEx26(await blockViewer.blockByHash(headHash), () => `Block not found for hash: ${headHash}`);
3771
3775
  const headBoundWitness = asBlockBoundWitnessWithStorageMeta3(head, () => `Found Block not a BlockWithHashMeta: ${headHash}`);
3772
3776
  const range = isChainQualifiedRangeConfig(config) ? config.range : asXL1BlockRange7([0, headBoundWitness.block], true);
3773
3777
  const ranges = deepCalculateFramesFromRange(asXL1BlockRange7(
@@ -3778,7 +3782,7 @@ async function balancesSummary(context, semaphores, blockViewer, summaryMap, con
3778
3782
  const balances = {};
3779
3783
  for (const summary of summaries) {
3780
3784
  for (const [address, balance] of Object.entries(summary.balances)) {
3781
- const validAddress = asAddress(address, () => `Invalid address: ${address}`);
3785
+ const validAddress = asAddress3(address, () => `Invalid address: ${address}`);
3782
3786
  balances[validAddress] = (balances[validAddress] ?? 0n) + parseSignedBigInt(balance);
3783
3787
  }
3784
3788
  }
@@ -3787,7 +3791,7 @@ async function balancesSummary(context, semaphores, blockViewer, summaryMap, con
3787
3791
  }
3788
3792
 
3789
3793
  // src/summary/primitives/schemas/schemasStepSummaryFromRange.ts
3790
- import { assertEx as assertEx28 } from "@xylabs/sdk-js";
3794
+ import { assertEx as assertEx27 } from "@xylabs/sdk-js";
3791
3795
  import {
3792
3796
  isAnyPayload as isAnyPayload4,
3793
3797
  isBoundWitness as isBoundWitness2,
@@ -3796,11 +3800,11 @@ import {
3796
3800
  } from "@xyo-network/sdk-js";
3797
3801
  import { StepSizes as StepSizes8 } from "@xyo-network/xl1-protocol-lib";
3798
3802
  async function schemasStepSummaryFromRange(context, semaphores, blockViewer, summaryMap, range) {
3799
- const [frameHead] = assertEx28(await blockViewer.blockByNumber(range[1]), () => `Block not found for number: ${range[1]}`);
3803
+ const [frameHead] = assertEx27(await blockViewer.blockByNumber(range[1]), () => `Block not found for number: ${range[1]}`);
3800
3804
  const frameSize = range[1] - range[0] + 1;
3801
3805
  let result;
3802
3806
  if (frameSize === 1) {
3803
- const [block, payloads] = assertEx28(await blockViewer.blockByNumber(range[0]), () => `Block not found for number: ${range[0]}`);
3807
+ const [block, payloads] = assertEx27(await blockViewer.blockByNumber(range[0]), () => `Block not found for number: ${range[0]}`);
3804
3808
  const boundWitnesses = [block, ...payloads.filter((x) => isBoundWitness2(x) && isHashMeta(x))];
3805
3809
  const schemas = {};
3806
3810
  for (const bw of boundWitnesses) {
@@ -3817,7 +3821,7 @@ async function schemasStepSummaryFromRange(context, semaphores, blockViewer, sum
3817
3821
  });
3818
3822
  } else {
3819
3823
  const step = StepSizes8.indexOf(frameSize);
3820
- assertEx28(step !== -1, () => `Invalid step size: ${frameSize}. Must be one of ${StepSizes8.join(", ")}`);
3824
+ assertEx27(step !== -1, () => `Invalid step size: ${frameSize}. Must be one of ${StepSizes8.join(", ")}`);
3821
3825
  const summaryResult = await summaryMap.get(`${frameHead._hash}|${frameSize}`);
3822
3826
  if (isAnyPayload4(summaryResult)) {
3823
3827
  result = summaryResult;
@@ -3856,7 +3860,7 @@ async function schemasStepSummaryFromRange(context, semaphores, blockViewer, sum
3856
3860
  }
3857
3861
 
3858
3862
  // src/summary/primitives/schemas/schemasSummary.ts
3859
- import { assertEx as assertEx29, spanRootAsync as spanRootAsync4 } from "@xylabs/sdk-js";
3863
+ import { assertEx as assertEx28, spanRootAsync as spanRootAsync4 } from "@xylabs/sdk-js";
3860
3864
  import {
3861
3865
  asBlockBoundWitnessWithStorageMeta as asBlockBoundWitnessWithStorageMeta4,
3862
3866
  asXL1BlockRange as asXL1BlockRange8,
@@ -3866,7 +3870,7 @@ import {
3866
3870
  async function schemasSummary(context, semaphores, blockViewer, summaryMap, config) {
3867
3871
  return await spanRootAsync4("schemasSummary", async () => {
3868
3872
  const headHash = isChainQualifiedHeadConfig2(config) ? config.head : await blockViewer.currentBlockHash();
3869
- const [head] = assertEx29(await blockViewer.blockByHash(headHash), () => `Block not found for hash: ${headHash}`);
3873
+ const [head] = assertEx28(await blockViewer.blockByHash(headHash), () => `Block not found for hash: ${headHash}`);
3870
3874
  const headBoundWitness = asBlockBoundWitnessWithStorageMeta4(head, () => `Found Block not a BlockWithHashMeta: ${headHash}`);
3871
3875
  const range = isChainQualifiedRangeConfig2(config) ? config.range : asXL1BlockRange8([0, headBoundWitness.block], true);
3872
3876
  const ranges = deepCalculateFramesFromRange(asXL1BlockRange8(
@@ -3886,7 +3890,7 @@ async function schemasSummary(context, semaphores, blockViewer, summaryMap, conf
3886
3890
  }
3887
3891
 
3888
3892
  // src/summary/primitives/transfers/transfersStepSummaryFromRange.ts
3889
- import { assertEx as assertEx30, spanRootAsync as spanRootAsync5 } from "@xylabs/sdk-js";
3893
+ import { assertEx as assertEx29, spanRootAsync as spanRootAsync5 } from "@xylabs/sdk-js";
3890
3894
  import { isAnyPayload as isAnyPayload5 } from "@xyo-network/sdk-js";
3891
3895
  import { asXL1BlockNumber as asXL1BlockNumber6, StepSizes as StepSizes9 } from "@xyo-network/xl1-protocol-lib";
3892
3896
  function transfersSummaryKey(frameHeadHash, frameSize) {
@@ -3896,11 +3900,11 @@ async function transfersStepSummaryFromRange(context, semaphores, blockViewer, s
3896
3900
  const cacheKey = `${range[0]}|${range[1]}`;
3897
3901
  return await withContextCacheResponse(context, "transfersStepSummaryFromRange", cacheKey, async () => {
3898
3902
  return await spanRootAsync5("transfersStepSummaryFromRange", async () => {
3899
- const [frameHead] = assertEx30(await blockViewer.blockByNumber(range[1]), () => `Block not found for number: ${range[1]}`);
3903
+ const [frameHead] = assertEx29(await blockViewer.blockByNumber(range[1]), () => `Block not found for number: ${range[1]}`);
3900
3904
  const frameSize = range[1] - range[0] + 1;
3901
3905
  let result;
3902
3906
  if (frameSize === 1) {
3903
- const [, payloads] = assertEx30(await blockViewer.blockByNumber(range[0]), () => `Block not found for number: ${range[0]}`);
3907
+ const [, payloads] = assertEx29(await blockViewer.blockByNumber(range[0]), () => `Block not found for number: ${range[0]}`);
3904
3908
  const transfers = {};
3905
3909
  for (const [from, toMap] of Object.entries(netTransfersForPayloads(context, payloads))) {
3906
3910
  transfers[from] = transfers[from] ?? {};
@@ -3916,7 +3920,7 @@ async function transfersStepSummaryFromRange(context, semaphores, blockViewer, s
3916
3920
  };
3917
3921
  } else {
3918
3922
  const step = StepSizes9.indexOf(asXL1BlockNumber6(frameSize, true));
3919
- assertEx30(step !== -1, () => `Invalid step size: ${frameSize}. Must be one of ${StepSizes9.join(", ")}`);
3923
+ assertEx29(step !== -1, () => `Invalid step size: ${frameSize}. Must be one of ${StepSizes9.join(", ")}`);
3920
3924
  const key = transfersSummaryKey(frameHead._hash, frameSize);
3921
3925
  const summaryResult = await summaryMap.get(key);
3922
3926
  if (isAnyPayload5(summaryResult)) {
@@ -3968,8 +3972,8 @@ async function transfersStepSummaryFromRange(context, semaphores, blockViewer, s
3968
3972
 
3969
3973
  // src/summary/primitives/transfers/transfersSummary.ts
3970
3974
  import {
3971
- asAddress as asAddress2,
3972
- assertEx as assertEx31,
3975
+ asAddress as asAddress4,
3976
+ assertEx as assertEx30,
3973
3977
  spanRootAsync as spanRootAsync6
3974
3978
  } from "@xylabs/sdk-js";
3975
3979
  import {
@@ -3981,7 +3985,7 @@ import {
3981
3985
  async function transfersSummary(context, semaphores, blockViewer, summaryMap, config) {
3982
3986
  return await spanRootAsync6("transferSummary", async () => {
3983
3987
  const headHash = isChainQualifiedHeadConfig3(config) ? config.head : await blockViewer.currentBlockHash();
3984
- const [head] = assertEx31(await blockViewer.blockByHash(headHash), () => `Block not found for hash: ${headHash}`);
3988
+ const [head] = assertEx30(await blockViewer.blockByHash(headHash), () => `Block not found for hash: ${headHash}`);
3985
3989
  const headBoundWitness = asBlockBoundWitnessWithStorageMeta5(head, () => `Found Block not a BlockWithHashMeta: ${headHash}`);
3986
3990
  const range = isChainQualifiedRangeConfig3(config) ? config.range : asXL1BlockRange9([0, headBoundWitness.block], true);
3987
3991
  const ranges = deepCalculateFramesFromRange(asXL1BlockRange9(
@@ -3992,10 +3996,10 @@ async function transfersSummary(context, semaphores, blockViewer, summaryMap, co
3992
3996
  const transfers = {};
3993
3997
  for (const summary of summaries) {
3994
3998
  for (const [from, toMap] of Object.entries(summary.transfers)) {
3995
- const validFrom = asAddress2(from, () => `Invalid address: ${from}`);
3999
+ const validFrom = asAddress4(from, () => `Invalid address: ${from}`);
3996
4000
  transfers[validFrom] = transfers[validFrom] ?? {};
3997
4001
  for (const [to, transfer] of Object.entries(toMap)) {
3998
- const validTo = asAddress2(to, () => `Invalid address: ${to}`);
4002
+ const validTo = asAddress4(to, () => `Invalid address: ${to}`);
3999
4003
  transfers[validFrom][validTo] = (transfers[validFrom][validTo] ?? 0n) + parseSignedBigInt(transfer);
4000
4004
  }
4001
4005
  }
@@ -4022,8 +4026,8 @@ var SimpleAccountBalanceViewer = class extends AbstractCreatableProvider {
4022
4026
  static async paramsHandler(params = {}) {
4023
4027
  return {
4024
4028
  ...await super.paramsHandler(params),
4025
- balancesSummaryMap: assertEx32(params.balancesSummaryMap, () => "balancesSummaryMap is required"),
4026
- transfersSummaryMap: assertEx32(params.transfersSummaryMap, () => "transfersSummaryMap is required")
4029
+ balancesSummaryMap: assertEx31(params.balancesSummaryMap, () => "balancesSummaryMap is required"),
4030
+ transfersSummaryMap: assertEx31(params.transfersSummaryMap, () => "transfersSummaryMap is required")
4027
4031
  };
4028
4032
  }
4029
4033
  async accountBalance(address, config) {
@@ -4044,7 +4048,7 @@ var SimpleAccountBalanceViewer = class extends AbstractCreatableProvider {
4044
4048
  const transferIndexes = block[0].payload_schemas.map((schema, index) => schema === TransferSchema2 ? index : void 0).filter(exists3);
4045
4049
  const transfers = transferIndexes.map((index) => {
4046
4050
  const hash = block[0].payload_hashes[index];
4047
- return assertEx32(
4051
+ return assertEx31(
4048
4052
  block[1].find((p) => p._hash === hash),
4049
4053
  () => `Error: Could not find Transfer with hash ${hash} in block ${block[0]._hash}`
4050
4054
  );
@@ -4077,7 +4081,7 @@ var SimpleAccountBalanceViewer = class extends AbstractCreatableProvider {
4077
4081
  const head = isChainQualifiedHeadConfig4(config) ? config.head : await this.blockViewer.currentBlockHash();
4078
4082
  const range = isChainQualifiedRangeConfig4(config) ? config.range : asXL1BlockRange10([
4079
4083
  0,
4080
- assertEx32(
4084
+ assertEx31(
4081
4085
  await this.blockViewer.blockByHash(head),
4082
4086
  () => `Error: Could not find block with hash ${head}`
4083
4087
  )[0].block
@@ -4092,11 +4096,11 @@ var SimpleAccountBalanceViewer = class extends AbstractCreatableProvider {
4092
4096
  const qualifiedRange = qualifiedEntries[0][1][1].range;
4093
4097
  const qualifiedHeadHash = qualifiedEntries[0][1][1].head;
4094
4098
  for (const [_, [__, { range: range2, head: head2 }]] of qualifiedEntries) {
4095
- assertEx32(
4099
+ assertEx31(
4096
4100
  range2[0] === qualifiedRange[0] && range2[1] === qualifiedRange[1],
4097
4101
  () => "Inconsistent ranges in qualifiedAccountBalanceHistories"
4098
4102
  );
4099
- assertEx32(
4103
+ assertEx31(
4100
4104
  head2 === qualifiedHeadHash,
4101
4105
  () => "Inconsistent head hashes in qualifiedAccountBalanceHistories"
4102
4106
  );
@@ -4167,7 +4171,7 @@ var SimpleAccountBalanceViewer = class extends AbstractCreatableProvider {
4167
4171
  return await this.spanAsync("qualifiedAccountBalanceHistory", async () => {
4168
4172
  const range = asRange(headOrRange);
4169
4173
  const headHash = asHash4(headOrRange);
4170
- const [head] = assertEx32(isDefined17(headHash) ? await this.blockViewer.blockByHash(headHash) : await this.blockViewer.currentBlock(), () => "Could not resolve head block");
4174
+ const [head] = assertEx31(isDefined17(headHash) ? await this.blockViewer.blockByHash(headHash) : await this.blockViewer.currentBlock(), () => "Could not resolve head block");
4171
4175
  const startingRange = asXL1BlockRange10(range ?? [0, head.block], true);
4172
4176
  const blockNumbers = await this.distillTransferHistory(address, startingRange);
4173
4177
  const blocks = (await Promise.all(blockNumbers.map(async (bn) => await this.blockViewer.blockByNumber(bn)))).filter(exists3);
@@ -4176,7 +4180,7 @@ var SimpleAccountBalanceViewer = class extends AbstractCreatableProvider {
4176
4180
  const transferIndexes = block[0].payload_schemas.map((schema, index) => schema === TransferSchema2 ? index : void 0).filter(exists3);
4177
4181
  const transfers = transferIndexes.map((index) => {
4178
4182
  const hash = block[0].payload_hashes[index];
4179
- return assertEx32(
4183
+ return assertEx31(
4180
4184
  block[1].find((p) => p._hash === hash),
4181
4185
  () => `Error: Could not find Transfer with hash ${hash} in block ${block[0]._hash}`
4182
4186
  );
@@ -4206,7 +4210,7 @@ SimpleAccountBalanceViewer = __decorateClass([
4206
4210
 
4207
4211
  // src/simple/block/SimpleBlockViewer.ts
4208
4212
  import {
4209
- assertEx as assertEx33,
4213
+ assertEx as assertEx32,
4210
4214
  exists as exists4,
4211
4215
  isUndefined as isUndefined8
4212
4216
  } from "@xylabs/sdk-js";
@@ -4283,11 +4287,11 @@ var SimpleBlockViewer = class extends AbstractCreatableProvider {
4283
4287
  static async paramsHandler(params) {
4284
4288
  const headPollIntervalMs = params.headPollIntervalMs;
4285
4289
  if (headPollIntervalMs !== void 0) {
4286
- assertEx33(headPollIntervalMs >= MIN_HEAD_POLL_INTERVAL_MS, () => `headPollIntervalMs must be at least ${MIN_HEAD_POLL_INTERVAL_MS}ms`);
4290
+ assertEx32(headPollIntervalMs >= MIN_HEAD_POLL_INTERVAL_MS, () => `headPollIntervalMs must be at least ${MIN_HEAD_POLL_INTERVAL_MS}ms`);
4287
4291
  }
4288
4292
  return {
4289
4293
  ...await super.paramsHandler(params),
4290
- finalizedArchivist: assertEx33(params.finalizedArchivist, () => "finalizedArchivist is required"),
4294
+ finalizedArchivist: assertEx32(params.finalizedArchivist, () => "finalizedArchivist is required"),
4291
4295
  headPollIntervalMs
4292
4296
  };
4293
4297
  }
@@ -4316,8 +4320,8 @@ var SimpleBlockViewer = class extends AbstractCreatableProvider {
4316
4320
  }
4317
4321
  async blocksByHash(hash, limit = 50) {
4318
4322
  return await this.spanAsync("blocksByHash", async () => {
4319
- assertEx33(limit > 0, () => "limit must be greater than 0");
4320
- assertEx33(limit <= 100, () => "limit must be less than 100");
4323
+ assertEx32(limit > 0, () => "limit must be greater than 0");
4324
+ assertEx32(limit <= 100, () => "limit must be less than 100");
4321
4325
  const blocks = [];
4322
4326
  let current = await this.blockByHash(hash);
4323
4327
  while (current && blocks.length < limit) {
@@ -4331,8 +4335,8 @@ var SimpleBlockViewer = class extends AbstractCreatableProvider {
4331
4335
  }
4332
4336
  async blocksByNumber(blockNumber, limit = 50) {
4333
4337
  return await this.spanAsync("blocksByNumber", async () => {
4334
- assertEx33(limit > 0, () => "limit must be greater than 0");
4335
- assertEx33(limit <= 100, () => "limit must be less than 100");
4338
+ assertEx32(limit > 0, () => "limit must be greater than 0");
4339
+ assertEx32(limit <= 100, () => "limit must be less than 100");
4336
4340
  const chainContext = await this.getChainContextRead();
4337
4341
  if (isUndefined8(chainContext.head)) {
4338
4342
  return [];
@@ -4350,7 +4354,7 @@ var SimpleBlockViewer = class extends AbstractCreatableProvider {
4350
4354
  }
4351
4355
  async chainId(blockNumber = "latest") {
4352
4356
  return await this.spanAsync("chainId", async () => {
4353
- return blockNumber === "latest" ? (await this.finalizationViewer.headBlock()).chain : assertEx33(await this.blockByNumber(blockNumber), () => `Block not found [${blockNumber}]`)[0].chain;
4357
+ return blockNumber === "latest" ? (await this.finalizationViewer.headBlock()).chain : assertEx32(await this.blockByNumber(blockNumber), () => `Block not found [${blockNumber}]`)[0].chain;
4354
4358
  }, this.context);
4355
4359
  }
4356
4360
  async createHandler() {
@@ -4479,7 +4483,7 @@ SimpleBlockRewardViewer = __decorateClass([
4479
4483
  ], SimpleBlockRewardViewer);
4480
4484
 
4481
4485
  // src/simple/blockValidation/SimpleBlockValidationViewer.ts
4482
- import { assertEx as assertEx34 } from "@xylabs/sdk-js";
4486
+ import { assertEx as assertEx33 } from "@xylabs/sdk-js";
4483
4487
  import { PayloadBuilder as PayloadBuilder18 } from "@xyo-network/sdk-js";
4484
4488
  import {
4485
4489
  AccountBalanceViewerMoniker as AccountBalanceViewerMoniker2,
@@ -4532,7 +4536,7 @@ var SimpleBlockValidationViewer = class extends AbstractCreatableProvider {
4532
4536
  head: void 0
4533
4537
  };
4534
4538
  const blocksWithMeta = await Promise.all(blocks.map((b) => Promise.all([PayloadBuilder18.addHashMeta(b[0]), PayloadBuilder18.addHashMeta(b[1])])));
4535
- const head = isChainQualifiedHeadConfig5(config) ? assertEx34(
4539
+ const head = isChainQualifiedHeadConfig5(config) ? assertEx33(
4536
4540
  (await this.blockViewer.blockByHash(config.head))?.[0],
4537
4541
  () => `Specified a head that is not in the chain [${config.head}]`
4538
4542
  ) : void 0;
@@ -4614,7 +4618,7 @@ SimpleBlockValidationViewer = __decorateClass([
4614
4618
 
4615
4619
  // src/simple/chainContractViewer/SimpleChainContractViewer.ts
4616
4620
  import {
4617
- assertEx as assertEx35
4621
+ assertEx as assertEx34
4618
4622
  } from "@xylabs/sdk-js";
4619
4623
  import { ChainContractViewerMoniker as ChainContractViewerMoniker2, FinalizationViewerMoniker as FinalizationViewerMoniker2 } from "@xyo-network/xl1-protocol-lib";
4620
4624
  var SimpleChainContractViewer = class extends AbstractCreatableProvider {
@@ -4632,7 +4636,7 @@ var SimpleChainContractViewer = class extends AbstractCreatableProvider {
4632
4636
  let contractViewer = this;
4633
4637
  let forkedAtBlockNumber = await contractViewer.forkedAtBlockNumber();
4634
4638
  while (forkedAtBlockNumber !== null && blockNumber <= forkedAtBlockNumber) {
4635
- contractViewer = assertEx35(await contractViewer.forkedChainContractViewer());
4639
+ contractViewer = assertEx34(await contractViewer.forkedChainContractViewer());
4636
4640
  forkedAtBlockNumber = await contractViewer.forkedAtBlockNumber();
4637
4641
  chainId = await contractViewer.chainId();
4638
4642
  }
@@ -4685,7 +4689,7 @@ var SimpleXyoClient = class {
4685
4689
  };
4686
4690
 
4687
4691
  // src/simple/datalake/RestDataLakeRunner.ts
4688
- import { assertEx as assertEx36, exists as exists6 } from "@xylabs/sdk-js";
4692
+ import { assertEx as assertEx35, exists as exists6 } from "@xylabs/sdk-js";
4689
4693
  import { isAnyPayload as isAnyPayload7, PayloadZodLoose } from "@xyo-network/sdk-js";
4690
4694
  import { DataLakeRunnerMoniker } from "@xyo-network/xl1-protocol-lib";
4691
4695
  import { z as z29 } from "zod/mini";
@@ -4754,7 +4758,7 @@ var RestDataLakeRunner = class extends AbstractRestDataLake {
4754
4758
  async insert(items) {
4755
4759
  const allowedItems = items.map((item) => {
4756
4760
  if (isAnyPayload7(item) && this.isAllowed(item)) {
4757
- assertEx36(typeof item === "object" && item !== null, () => "Data must be an object");
4761
+ assertEx35(typeof item === "object" && item !== null, () => "Data must be an object");
4758
4762
  return item;
4759
4763
  }
4760
4764
  return null;
@@ -4897,7 +4901,7 @@ SimpleFinalizationRunner = __decorateClass([
4897
4901
  ], SimpleFinalizationRunner);
4898
4902
 
4899
4903
  // src/simple/finalization/SimpleFinalizationViewer.ts
4900
- import { assertEx as assertEx37 } from "@xylabs/sdk-js";
4904
+ import { assertEx as assertEx36 } from "@xylabs/sdk-js";
4901
4905
  import {
4902
4906
  asSignedHydratedBlockWithStorageMeta as asSignedHydratedBlockWithStorageMeta2,
4903
4907
  ChainContractViewerMoniker as ChainContractViewerMoniker3,
@@ -4926,7 +4930,7 @@ var SimpleFinalizationViewer = class extends AbstractCreatableProvider {
4926
4930
  static async paramsHandler(params) {
4927
4931
  return {
4928
4932
  ...await super.paramsHandler(params),
4929
- finalizedArchivist: assertEx37(params.finalizedArchivist, () => "finalizedArchivist is required")
4933
+ finalizedArchivist: assertEx36(params.finalizedArchivist, () => "finalizedArchivist is required")
4930
4934
  };
4931
4935
  }
4932
4936
  chainId() {
@@ -4934,18 +4938,18 @@ var SimpleFinalizationViewer = class extends AbstractCreatableProvider {
4934
4938
  }
4935
4939
  async createHandler() {
4936
4940
  await super.createHandler();
4937
- this._chainId = assertEx37(this.config.chain.id ?? (await findMostRecentBlock(this.params.finalizedArchivist))?.chain, () => "chain.id is required if empty archivist");
4941
+ this._chainId = assertEx36(this.config.chain.id ?? (await findMostRecentBlock(this.params.finalizedArchivist))?.chain, () => "chain.id is required if empty archivist");
4938
4942
  this._store = { chainMap: this.params.finalizedArchivist };
4939
4943
  }
4940
4944
  async head() {
4941
4945
  return await this.spanAsync("head", async () => {
4942
- const currentHead = assertEx37(await this.getCurrentHead(), () => "Could not find most recent block [currentBlock]");
4946
+ const currentHead = assertEx36(await this.getCurrentHead(), () => "Could not find most recent block [currentBlock]");
4943
4947
  const cache = this.hydratedBlockCache;
4944
4948
  const block = await cache.get(currentHead._hash);
4945
4949
  if (!block) {
4946
4950
  this.logger?.error(`Could not find current block with hash ${currentHead._hash}`);
4947
4951
  }
4948
- return assertEx37(block, () => "Could not find current block");
4952
+ return assertEx36(block, () => "Could not find current block");
4949
4953
  }, this.context);
4950
4954
  }
4951
4955
  async headBlock() {
@@ -4971,8 +4975,8 @@ var SimpleFinalizationViewer = class extends AbstractCreatableProvider {
4971
4975
  }
4972
4976
  async getCurrentHead() {
4973
4977
  const chainArchivist = this.finalizedArchivist;
4974
- const result = assertEx37(await findMostRecentBlock(chainArchivist), () => "Could not find most recent block [getCurrentHead]");
4975
- assertEx37(result?.chain === this._chainId, () => "Chain ID does not match head block chain ID");
4978
+ const result = assertEx36(await findMostRecentBlock(chainArchivist), () => "Could not find most recent block [getCurrentHead]");
4979
+ assertEx36(result?.chain === this._chainId, () => "Chain ID does not match head block chain ID");
4976
4980
  return result;
4977
4981
  }
4978
4982
  };
@@ -5002,7 +5006,7 @@ var SimpleXyoGateway = class _SimpleXyoGateway extends AbstractCreatableProvider
5002
5006
 
5003
5007
  // src/simple/gateway/SimpleXyoGatewayRunner.ts
5004
5008
  import {
5005
- assertEx as assertEx38,
5009
+ assertEx as assertEx37,
5006
5010
  BigIntToJsonZod,
5007
5011
  isDefined as isDefined18
5008
5012
  } from "@xylabs/sdk-js";
@@ -5035,7 +5039,7 @@ var SimpleXyoGatewayRunner = class _SimpleXyoGatewayRunner extends AbstractCreat
5035
5039
  return this._signer;
5036
5040
  }
5037
5041
  async addPayloadsToChain(onChain, offChain, options) {
5038
- const viewer = assertEx38(this.connection.viewer, () => "No viewer available on connection");
5042
+ const viewer = assertEx37(this.connection.viewer, () => "No viewer available on connection");
5039
5043
  const {
5040
5044
  nbf,
5041
5045
  exp,
@@ -5051,7 +5055,7 @@ var SimpleXyoGatewayRunner = class _SimpleXyoGatewayRunner extends AbstractCreat
5051
5055
  async addTransactionToChain(tx, offChain = []) {
5052
5056
  const connection = this.connection;
5053
5057
  const signer = this.signer;
5054
- const runner = assertEx38(connection.runner, () => "No runner available on connection");
5058
+ const runner = assertEx37(connection.runner, () => "No runner available on connection");
5055
5059
  let signedTx;
5056
5060
  if (isSignedHydratedTransaction(tx)) {
5057
5061
  const [bw, payloads] = tx;
@@ -5066,7 +5070,7 @@ var SimpleXyoGatewayRunner = class _SimpleXyoGatewayRunner extends AbstractCreat
5066
5070
  }
5067
5071
  async confirmSubmittedTransaction(txHash, options) {
5068
5072
  return await confirmSubmittedTransaction(
5069
- assertEx38(this.connection.viewer, () => "Connection viewer is undefined"),
5073
+ assertEx37(this.connection.viewer, () => "Connection viewer is undefined"),
5070
5074
  txHash,
5071
5075
  options
5072
5076
  );
@@ -5103,7 +5107,7 @@ var SimpleXyoGatewayRunner = class _SimpleXyoGatewayRunner extends AbstractCreat
5103
5107
 
5104
5108
  // src/simple/mempool/SimpleMempoolRunner.ts
5105
5109
  import {
5106
- assertEx as assertEx39,
5110
+ assertEx as assertEx38,
5107
5111
  exists as exists8
5108
5112
  } from "@xylabs/sdk-js";
5109
5113
  import { isPayloadBundle, PayloadBuilder as PayloadBuilder21 } from "@xyo-network/sdk-js";
@@ -5178,8 +5182,8 @@ var SimpleMempoolRunner = class extends AbstractCreatableProvider {
5178
5182
  static async paramsHandler(params) {
5179
5183
  return {
5180
5184
  ...await super.paramsHandler(params),
5181
- pendingBlocksArchivist: assertEx39(params?.pendingBlocksArchivist, () => "pendingBlocksArchivist is required"),
5182
- pendingTransactionsArchivist: assertEx39(params?.pendingTransactionsArchivist, () => "pendingTransactionsArchivist is required")
5185
+ pendingBlocksArchivist: assertEx38(params?.pendingBlocksArchivist, () => "pendingBlocksArchivist is required"),
5186
+ pendingTransactionsArchivist: assertEx38(params?.pendingTransactionsArchivist, () => "pendingTransactionsArchivist is required")
5183
5187
  };
5184
5188
  }
5185
5189
  async createHandler() {
@@ -5217,7 +5221,7 @@ var SimpleMempoolRunner = class extends AbstractCreatableProvider {
5217
5221
  return b;
5218
5222
  }
5219
5223
  }).filter(exists8);
5220
- assertEx39(
5224
+ assertEx38(
5221
5225
  remainingBlockMap.length === remainingBlocks.length,
5222
5226
  () => `remainingBlockMap length should match remainingBlocks length [${remainingBlockMap.length}/${remainingBlocks.length}]`
5223
5227
  );
@@ -5279,7 +5283,7 @@ var SimpleMempoolRunner = class extends AbstractCreatableProvider {
5279
5283
  return t;
5280
5284
  }
5281
5285
  }).filter(exists8);
5282
- assertEx39(
5286
+ assertEx38(
5283
5287
  remainingTransactionMap.length === remainingTransactions.length,
5284
5288
  () => `remainingTransactionMap length should match remainingTransactions length [${remainingTransactionMap.length}/${remainingTransactions.length}]`
5285
5289
  );
@@ -5818,7 +5822,7 @@ var SimpleXyoNetwork = class {
5818
5822
  };
5819
5823
 
5820
5824
  // src/simple/permissions/SimpleXyoPermissions.ts
5821
- import { assertEx as assertEx40 } from "@xylabs/sdk-js";
5825
+ import { assertEx as assertEx39 } from "@xylabs/sdk-js";
5822
5826
  var SimpleXyoPermissions = class {
5823
5827
  invoker;
5824
5828
  _store;
@@ -5827,7 +5831,7 @@ var SimpleXyoPermissions = class {
5827
5831
  this.invoker = store.invoker;
5828
5832
  }
5829
5833
  get store() {
5830
- return assertEx40(this._store, () => "Store must be defined to get permissions");
5834
+ return assertEx39(this._store, () => "Store must be defined to get permissions");
5831
5835
  }
5832
5836
  async getPermissions() {
5833
5837
  return await this.store.getPermissions();
@@ -5880,7 +5884,7 @@ var SimpleXyoPermissions = class {
5880
5884
  };
5881
5885
 
5882
5886
  // src/simple/permissions/store/MemoryPermissions.ts
5883
- import { assertEx as assertEx41 } from "@xylabs/sdk-js";
5887
+ import { assertEx as assertEx40 } from "@xylabs/sdk-js";
5884
5888
  var MemoryPermissionsStore = class {
5885
5889
  _invoker;
5886
5890
  permissions = [];
@@ -5888,7 +5892,7 @@ var MemoryPermissionsStore = class {
5888
5892
  this._invoker = invoker;
5889
5893
  }
5890
5894
  get invoker() {
5891
- return assertEx41(this._invoker, () => "Invoker must be defined to get permissions");
5895
+ return assertEx40(this._invoker, () => "Invoker must be defined to get permissions");
5892
5896
  }
5893
5897
  async getPermissions() {
5894
5898
  await Promise.resolve();
@@ -5928,6 +5932,7 @@ SimpleXyoRunner = __decorateClass([
5928
5932
  ], SimpleXyoRunner);
5929
5933
 
5930
5934
  // src/simple/signer/SimpleXyoSigner.ts
5935
+ import { asAddress as asAddress5 } from "@xylabs/sdk-js";
5931
5936
  import { Account, PayloadBuilder as PayloadBuilder23 } from "@xyo-network/sdk-js";
5932
5937
  import {
5933
5938
  SignedHydratedTransactionWithHashMetaZod,
@@ -5952,7 +5957,7 @@ var SimpleXyoSigner = class _SimpleXyoSigner extends AbstractCreatableProvider {
5952
5957
  return { ...await super.paramsHandler(params), account };
5953
5958
  }
5954
5959
  address() {
5955
- return this.params.account.address;
5960
+ return asAddress5(this.params.account.address, true);
5956
5961
  }
5957
5962
  /** @deprecated - use signTransaction instead */
5958
5963
  async createSignedTransaction(chain, elevatedPayloads, additionalPayloads, nbf, exp, fees, from) {
@@ -6054,8 +6059,8 @@ SimpleStakeEventsViewer = __decorateClass([
6054
6059
  ], SimpleStakeEventsViewer);
6055
6060
 
6056
6061
  // src/simple/StakeTotalsViewer/SimpleStakeTotalsViewer.ts
6057
- import { asAddress as asAddress3 } from "@xylabs/sdk-js";
6058
- import { assertEx as assertEx42 } from "@xylabs/sdk-js";
6062
+ import { asAddress as asAddress6 } from "@xylabs/sdk-js";
6063
+ import { assertEx as assertEx41 } from "@xylabs/sdk-js";
6059
6064
  import {
6060
6065
  StakeTotalsViewerMoniker,
6061
6066
  StakeViewerMoniker
@@ -6080,7 +6085,7 @@ var SimpleStakeTotalsViewer = class extends AbstractCreatableProvider {
6080
6085
  let active = 0n;
6081
6086
  const positions = await this.stakeViewer.activeStakes();
6082
6087
  for (const position of positions) {
6083
- if ((position.removeBlock === 0 || position.removeBlock > time) && asAddress3(position.staked) === asAddress3(staked)) {
6088
+ if ((position.removeBlock === 0 || position.removeBlock > time) && asAddress6(position.staked) === asAddress6(staked)) {
6084
6089
  active += position.amount;
6085
6090
  }
6086
6091
  }
@@ -6090,7 +6095,7 @@ var SimpleStakeTotalsViewer = class extends AbstractCreatableProvider {
6090
6095
  let active = 0n;
6091
6096
  const positions = await this.stakeViewer.activeStakes();
6092
6097
  for (const position of positions) {
6093
- if ((position.removeBlock === 0 || position.removeBlock > time) && asAddress3(position.staker) === asAddress3(staker)) {
6098
+ if ((position.removeBlock === 0 || position.removeBlock > time) && asAddress6(position.staker) === asAddress6(staker)) {
6094
6099
  active += position.amount;
6095
6100
  }
6096
6101
  }
@@ -6098,7 +6103,7 @@ var SimpleStakeTotalsViewer = class extends AbstractCreatableProvider {
6098
6103
  }
6099
6104
  async createHandler() {
6100
6105
  await super.createHandler();
6101
- this._stakeViewer = assertEx42(
6106
+ this._stakeViewer = assertEx41(
6102
6107
  await this.locateAndCreate(StakeViewerMoniker),
6103
6108
  () => "Failed to create StakeViewer"
6104
6109
  );
@@ -6117,7 +6122,7 @@ var SimpleStakeTotalsViewer = class extends AbstractCreatableProvider {
6117
6122
  let pending = 0n;
6118
6123
  const positions = await this.stakeViewer.removedStakes();
6119
6124
  for (const position of positions) {
6120
- if (position.removeBlock !== 0 && position.removeBlock <= time && (position.withdrawBlock === 0 || position.withdrawBlock > time) && asAddress3(position.staker) === asAddress3(staker)) {
6125
+ if (position.removeBlock !== 0 && position.removeBlock <= time && (position.withdrawBlock === 0 || position.withdrawBlock > time) && asAddress6(position.staker) === asAddress6(staker)) {
6121
6126
  pending += position.amount;
6122
6127
  }
6123
6128
  }
@@ -6137,7 +6142,7 @@ var SimpleStakeTotalsViewer = class extends AbstractCreatableProvider {
6137
6142
  let withdrawn = 0n;
6138
6143
  const positions = await this.stakeViewer.withdrawnStakes();
6139
6144
  for (const position of positions) {
6140
- if (position.withdrawBlock !== 0 && position.withdrawBlock <= time && asAddress3(position.staker) === asAddress3(staker)) {
6145
+ if (position.withdrawBlock !== 0 && position.withdrawBlock <= time && asAddress6(position.staker) === asAddress6(staker)) {
6141
6146
  withdrawn += position.amount;
6142
6147
  }
6143
6148
  }
@@ -6153,8 +6158,8 @@ SimpleStakeTotalsViewer = __decorateClass([
6153
6158
 
6154
6159
  // src/simple/StakeViewer/SimpleStakeViewer.ts
6155
6160
  import {
6156
- asAddress as asAddress4,
6157
- assertEx as assertEx43,
6161
+ asAddress as asAddress7,
6162
+ assertEx as assertEx42,
6158
6163
  toAddress as toAddress6
6159
6164
  } from "@xylabs/sdk-js";
6160
6165
  import { StakeEventsViewerMoniker as StakeEventsViewerMoniker2, StakeViewerMoniker as StakeViewerMoniker2 } from "@xyo-network/xl1-protocol-lib";
@@ -6162,7 +6167,7 @@ var SimpleStakeViewer = class extends AbstractCreatableProvider {
6162
6167
  moniker = SimpleStakeViewer.defaultMoniker;
6163
6168
  _chainStakeEventsViewer;
6164
6169
  get stakeEvents() {
6165
- return assertEx43(this._chainStakeEventsViewer, () => "Stake events viewer not set");
6170
+ return assertEx42(this._chainStakeEventsViewer, () => "Stake events viewer not set");
6166
6171
  }
6167
6172
  get positions() {
6168
6173
  return this.params.positions;
@@ -6181,7 +6186,7 @@ var SimpleStakeViewer = class extends AbstractCreatableProvider {
6181
6186
  let active = 0n;
6182
6187
  const positions = await this.activeStakes();
6183
6188
  for (const position of positions) {
6184
- if (position.removeBlock === 0 && asAddress4(position.staked) === asAddress4(staked)) {
6189
+ if (position.removeBlock === 0 && asAddress7(position.staked) === asAddress7(staked)) {
6185
6190
  active += position.amount;
6186
6191
  }
6187
6192
  }
@@ -6191,7 +6196,7 @@ var SimpleStakeViewer = class extends AbstractCreatableProvider {
6191
6196
  let active = 0n;
6192
6197
  const positions = await this.activeStakes();
6193
6198
  for (const position of positions) {
6194
- if (position.removeBlock === 0 && asAddress4(position.staker) === asAddress4(staker)) {
6199
+ if (position.removeBlock === 0 && asAddress7(position.staker) === asAddress7(staker)) {
6195
6200
  active += position.amount;
6196
6201
  }
6197
6202
  }
@@ -6202,7 +6207,7 @@ var SimpleStakeViewer = class extends AbstractCreatableProvider {
6202
6207
  }
6203
6208
  async createHandler() {
6204
6209
  await super.createHandler();
6205
- this._chainStakeEventsViewer = assertEx43(
6210
+ this._chainStakeEventsViewer = assertEx42(
6206
6211
  await this.locateAndCreate(StakeEventsViewerMoniker2),
6207
6212
  () => "Failed to create StakeEventsViewer"
6208
6213
  );
@@ -6224,7 +6229,7 @@ var SimpleStakeViewer = class extends AbstractCreatableProvider {
6224
6229
  let pending = 0n;
6225
6230
  const positions = await this.removedStakes();
6226
6231
  for (const position of positions) {
6227
- if (position.removeBlock !== 0 && position.withdrawBlock === 0 && asAddress4(position.staker) === asAddress4(staker)) {
6232
+ if (position.removeBlock !== 0 && position.withdrawBlock === 0 && asAddress7(position.staker) === asAddress7(staker)) {
6228
6233
  pending += position.amount;
6229
6234
  }
6230
6235
  }
@@ -6237,18 +6242,18 @@ var SimpleStakeViewer = class extends AbstractCreatableProvider {
6237
6242
  return toAddress6(toAddress6(1n));
6238
6243
  }
6239
6244
  stakeById(id) {
6240
- return assertEx43(this.positions[id], () => new Error(`Stake with id ${id} not found`));
6245
+ return assertEx42(this.positions[id], () => new Error(`Stake with id ${id} not found`));
6241
6246
  }
6242
6247
  stakeByStaker(staker, slot) {
6243
- return this.positions.filter((s) => asAddress4(s.staker) === asAddress4(staker))[slot];
6248
+ return this.positions.filter((s) => asAddress7(s.staker) === asAddress7(staker))[slot];
6244
6249
  }
6245
6250
  stakesByStaked(staked, range = [0, void 0]) {
6246
6251
  const endBlock = range[1] ?? Number.MAX_SAFE_INTEGER;
6247
- return this.positions.filter((s) => asAddress4(s.staked) === asAddress4(staked) && s.addBlock <= endBlock && s.removeBlock <= endBlock);
6252
+ return this.positions.filter((s) => asAddress7(s.staked) === asAddress7(staked) && s.addBlock <= endBlock && s.removeBlock <= endBlock);
6248
6253
  }
6249
6254
  stakesByStaker(staker, range = [0, void 0]) {
6250
6255
  const endBlock = range[1] ?? Number.MAX_SAFE_INTEGER;
6251
- return this.positions.filter((s) => asAddress4(s.staker) === asAddress4(staker) && s.addBlock <= endBlock && s.removeBlock <= endBlock);
6256
+ return this.positions.filter((s) => asAddress7(s.staker) === asAddress7(staker) && s.addBlock <= endBlock && s.removeBlock <= endBlock);
6252
6257
  }
6253
6258
  stakingTokenAddress() {
6254
6259
  return toAddress6("0x000000000000000000000000000011");
@@ -6267,7 +6272,7 @@ var SimpleStakeViewer = class extends AbstractCreatableProvider {
6267
6272
  let withdrawn = 0n;
6268
6273
  const positions = await this.withdrawnStakes();
6269
6274
  for (const position of positions) {
6270
- if (position.withdrawBlock !== 0 && asAddress4(position.staker) === asAddress4(staker)) {
6275
+ if (position.withdrawBlock !== 0 && asAddress7(position.staker) === asAddress7(staker)) {
6271
6276
  withdrawn += position.amount;
6272
6277
  }
6273
6278
  }
@@ -6339,7 +6344,7 @@ RestSyncViewer = __decorateClass([
6339
6344
  // src/simple/timeSync2/SimpleTimeSyncViewer.ts
6340
6345
  import {
6341
6346
  asHash as asHash5,
6342
- assertEx as assertEx44,
6347
+ assertEx as assertEx43,
6343
6348
  isDefined as isDefined21
6344
6349
  } from "@xylabs/sdk-js";
6345
6350
  import {
@@ -6361,7 +6366,7 @@ var SimpleTimeSyncViewer = class extends AbstractCreatableProvider {
6361
6366
  async convertTime(fromDomain, toDomain, from) {
6362
6367
  switch (fromDomain) {
6363
6368
  case "xl1": {
6364
- const [block, payloads] = assertEx44(await this.blockViewer.blockByNumber(asXL1BlockNumber10(from, true)), () => "Block not found");
6369
+ const [block, payloads] = assertEx43(await this.blockViewer.blockByNumber(asXL1BlockNumber10(from, true)), () => "Block not found");
6365
6370
  const timeSchemaIndex = block.payload_schemas.indexOf(TimeSchema);
6366
6371
  const hash = timeSchemaIndex === -1 ? void 0 : block.payload_hashes[timeSchemaIndex];
6367
6372
  const timePayload = asTimePayload2(isDefined21(hash) ? payloads.find((p) => p._hash === hash) : void 0);
@@ -6416,10 +6421,10 @@ var SimpleTimeSyncViewer = class extends AbstractCreatableProvider {
6416
6421
  return [Date.now(), null];
6417
6422
  }
6418
6423
  case "ethereum": {
6419
- const provider = assertEx44(this.ethProvider, () => "Ethereum provider not configured");
6424
+ const provider = assertEx43(this.ethProvider, () => "Ethereum provider not configured");
6420
6425
  const blockNumber = await provider.getBlockNumber() ?? 0;
6421
6426
  const block = await provider.getBlock(blockNumber);
6422
- const blockHash = asHash5(assertEx44(block?.hash, () => "Block hash not found"), true);
6427
+ const blockHash = asHash5(assertEx43(block?.hash, () => "Block hash not found"), true);
6423
6428
  return [blockNumber, blockHash];
6424
6429
  }
6425
6430
  default: {
@@ -6434,7 +6439,7 @@ var SimpleTimeSyncViewer = class extends AbstractCreatableProvider {
6434
6439
  // this is for the previous block
6435
6440
  xl1,
6436
6441
  // this is for the previous block
6437
- xl1Hash: assertEx44(xl1Hash, () => "No xl1 hash available from time sync service"),
6442
+ xl1Hash: assertEx43(xl1Hash, () => "No xl1 hash available from time sync service"),
6438
6443
  epoch: Date.now()
6439
6444
  };
6440
6445
  if (isDefined21(this.ethProvider)) {
@@ -6454,7 +6459,7 @@ SimpleTimeSyncViewer = __decorateClass([
6454
6459
  ], SimpleTimeSyncViewer);
6455
6460
 
6456
6461
  // src/simple/transactionValidation/SimpleTransactionValidationViewer.ts
6457
- import { assertEx as assertEx45 } from "@xylabs/sdk-js";
6462
+ import { assertEx as assertEx44 } from "@xylabs/sdk-js";
6458
6463
  import { PayloadBuilder as PayloadBuilder24 } from "@xyo-network/sdk-js";
6459
6464
  import {
6460
6465
  AccountBalanceViewerMoniker as AccountBalanceViewerMoniker3,
@@ -6505,7 +6510,7 @@ var SimpleTransactionValidationViewer = class extends AbstractCreatableProvider
6505
6510
  head: void 0
6506
6511
  };
6507
6512
  const transactionsWithMeta = await Promise.all(transactions.map((b) => Promise.all([PayloadBuilder24.addHashMeta(b[0]), PayloadBuilder24.addHashMeta(b[1])])));
6508
- const head = isChainQualifiedHeadConfig6(config) ? assertEx45(
6513
+ const head = isChainQualifiedHeadConfig6(config) ? assertEx44(
6509
6514
  (await this.blockViewer.blockByHash(config.head))?.[0],
6510
6515
  () => `Specified a head that is not in the chain [${config.head}]`
6511
6516
  ) : void 0;
@@ -6571,7 +6576,7 @@ SimpleTransactionValidationViewer = __decorateClass([
6571
6576
  ], SimpleTransactionValidationViewer);
6572
6577
 
6573
6578
  // src/simple/TransactionViewer/SimpleTransactionViewer.ts
6574
- import { assertEx as assertEx46, exists as exists10 } from "@xylabs/sdk-js";
6579
+ import { assertEx as assertEx45, exists as exists10 } from "@xylabs/sdk-js";
6575
6580
  import { BoundWitnessSchema } from "@xyo-network/sdk-js";
6576
6581
  import {
6577
6582
  asSignedHydratedTransactionWithHashMeta,
@@ -6588,7 +6593,7 @@ var SimpleTransactionViewer = class extends AbstractCreatableProvider {
6588
6593
  }
6589
6594
  async byBlockHashAndIndex(blockHash, transactionIndex) {
6590
6595
  return await this.spanAsync("byBlockHashAndIndex", async () => {
6591
- assertEx46(transactionIndex >= 0, () => "transactionIndex must be greater than or equal to 0");
6596
+ assertEx45(transactionIndex >= 0, () => "transactionIndex must be greater than or equal to 0");
6592
6597
  try {
6593
6598
  const block = await this.blockViewer.blockByHash(blockHash);
6594
6599
  if (!block) return null;
@@ -6652,7 +6657,7 @@ SimpleTransactionViewer = __decorateClass([
6652
6657
 
6653
6658
  // src/simple/windowedBlock/SimpleWindowedBlockViewer.ts
6654
6659
  import {
6655
- assertEx as assertEx47,
6660
+ assertEx as assertEx46,
6656
6661
  exists as exists11,
6657
6662
  isNull as isNull2
6658
6663
  } from "@xylabs/sdk-js";
@@ -6723,7 +6728,7 @@ var SimpleWindowedBlockViewer = class extends AbstractCreatableProvider {
6723
6728
  }
6724
6729
  async createHandler() {
6725
6730
  await super.createHandler();
6726
- this._blockViewer = assertEx47(
6731
+ this._blockViewer = assertEx46(
6727
6732
  this.params.blockViewer ?? await this.locator.getInstance(BlockViewerMoniker7),
6728
6733
  () => "BlockViewer instance is required"
6729
6734
  );
@@ -6732,13 +6737,13 @@ var SimpleWindowedBlockViewer = class extends AbstractCreatableProvider {
6732
6737
  this._transactionHashMap = new MemoryMap();
6733
6738
  }
6734
6739
  currentBlock() {
6735
- return assertEx47(this._chain.at(-1));
6740
+ return assertEx46(this._chain.at(-1));
6736
6741
  }
6737
6742
  currentBlockHash() {
6738
- return assertEx47(this._chain.at(-1)?.[0]._hash);
6743
+ return assertEx46(this._chain.at(-1)?.[0]._hash);
6739
6744
  }
6740
6745
  currentBlockNumber() {
6741
- return assertEx47(this._chain.at(-1)?.[0].block);
6746
+ return assertEx46(this._chain.at(-1)?.[0].block);
6742
6747
  }
6743
6748
  async payloadByHash(hash) {
6744
6749
  const payloads = await this.payloadsByHash([hash]);
@@ -6897,13 +6902,13 @@ var RuntimeStatusMonitor = class extends LoggerStatusReporter {
6897
6902
  };
6898
6903
 
6899
6904
  // src/time/primitives/xl1BlockNumberToEthBlockNumber.ts
6900
- import { assertEx as assertEx48 } from "@xylabs/sdk-js";
6905
+ import { assertEx as assertEx47 } from "@xylabs/sdk-js";
6901
6906
  import { asTimePayload as asTimePayload3, TimeSchema as TimeSchema2 } from "@xyo-network/xl1-protocol-lib";
6902
6907
  async function xl1BlockNumberToEthBlockNumber(context, xl1BlockNumber) {
6903
6908
  const blockHash = await hashFromBlockNumber(context, xl1BlockNumber);
6904
6909
  const hydratedBlock = await hydrateBlock(context, blockHash);
6905
6910
  const timePayload = asTimePayload3(hydratedBlock[1].find((p) => p.schema === TimeSchema2), { required: true });
6906
- return assertEx48(timePayload.ethereum, () => "No ethereum timestamp found on block");
6911
+ return assertEx47(timePayload.ethereum, () => "No ethereum timestamp found on block");
6907
6912
  }
6908
6913
 
6909
6914
  // src/validation/lib/isLocalhost.ts