@lucid-evolution/provider 0.3.0 → 0.4.1

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 (3) hide show
  1. package/dist/index.cjs +610 -554
  2. package/dist/index.js +106 -63
  3. package/package.json +6 -10
package/dist/index.cjs CHANGED
@@ -134,7 +134,7 @@ var OgmiosJsonRpcError = class extends KupmiosError {
134
134
  var toKupmiosError = (cause, protocol, operation) => cause instanceof KupmiosError ? cause : new KupmiosError({ cause, protocol, operation });
135
135
 
136
136
  // src/core.ts
137
- var CML = __toESM(require("@anastasia-labs/cardano-multiplatform-lib-nodejs"), 1);
137
+ var CML = __toESM(require("@lucid-evolution/cml"), 1);
138
138
 
139
139
  // src/blockfrost.ts
140
140
  var import_core_utils = require("@lucid-evolution/core-utils");
@@ -143,7 +143,7 @@ var import_utils2 = require("@lucid-evolution/utils");
143
143
  // package.json
144
144
  var package_default = {
145
145
  name: "@lucid-evolution/provider",
146
- version: "0.3.0",
146
+ version: "0.4.1",
147
147
  description: "",
148
148
  main: "./dist/index.js",
149
149
  types: "./dist/index.d.ts",
@@ -169,14 +169,10 @@ var package_default = {
169
169
  keywords: [],
170
170
  author: "",
171
171
  license: "MIT",
172
- browser: {
173
- "@anastasia-labs/cardano-multiplatform-lib-nodejs": "@anastasia-labs/cardano-multiplatform-lib-browser"
174
- },
175
172
  dependencies: {
176
- "@anastasia-labs/cardano-multiplatform-lib-browser": "6.2.0-1",
177
- "@anastasia-labs/cardano-multiplatform-lib-nodejs": "6.2.0-1",
178
173
  "@effect/platform": "^0.71.3",
179
174
  "@effect/schema": "^0.68.26",
175
+ "@lucid-evolution/cml": "workspace:*",
180
176
  "@lucid-evolution/core-types": "workspace:*",
181
177
  "@lucid-evolution/core-utils": "workspace:*",
182
178
  "@lucid-evolution/utils": "workspace:*",
@@ -192,7 +188,8 @@ var package_default = {
192
188
  };
193
189
 
194
190
  // src/internal/blockfrost.ts
195
- var import_effect = require("effect");
191
+ var Record = __toESM(require("effect/Record"), 1);
192
+ var import_Function = require("effect/Function");
196
193
  var import_utils = require("@lucid-evolution/utils");
197
194
  var toAditionalUTXOs = (utxos) => (utxos || []).map((utxo) => [
198
195
  {
@@ -224,7 +221,7 @@ var toTxOutScript = (scriptRef) => {
224
221
  }
225
222
  }
226
223
  };
227
- var fromAssets = (assets) => (0, import_effect.pipe)(import_effect.Record.remove(assets, "lovelace"), (nativeAssets) => {
224
+ var fromAssets = (assets) => (0, import_Function.pipe)(Record.remove(assets, "lovelace"), (nativeAssets) => {
228
225
  const result = {};
229
226
  for (const [unit, amount] of Object.entries(nativeAssets)) {
230
227
  const policyId = unit.slice(0, 56);
@@ -263,16 +260,16 @@ var Blockfrost = class {
263
260
  constructor(url, projectId, options = {}) {
264
261
  this.url = url;
265
262
  this.projectId = projectId || "";
266
- const timeout = options.requestTimeoutMs ?? DEFAULT_REQUEST_TIMEOUT_MS;
267
- if (!Number.isFinite(timeout) || timeout <= 0) {
263
+ const timeout3 = options.requestTimeoutMs ?? DEFAULT_REQUEST_TIMEOUT_MS;
264
+ if (!Number.isFinite(timeout3) || timeout3 <= 0) {
268
265
  throw new TypeError("requestTimeoutMs must be a positive finite number.");
269
266
  }
270
- this.requestTimeoutMs = timeout;
267
+ this.requestTimeoutMs = timeout3;
271
268
  }
272
269
  /** `fetch` bounded by the provider's request timeout, combined with any caller-supplied signal. */
273
270
  fetch(input, init = {}) {
274
- const timeout = AbortSignal.timeout(this.requestTimeoutMs);
275
- const signal = init.signal == null ? timeout : typeof AbortSignal.any === "function" ? AbortSignal.any([init.signal, timeout]) : init.signal;
271
+ const timeout3 = AbortSignal.timeout(this.requestTimeoutMs);
272
+ const signal = init.signal == null ? timeout3 : typeof AbortSignal.any === "function" ? AbortSignal.any([init.signal, timeout3]) : init.signal;
276
273
  return fetch(input, { ...init, signal });
277
274
  }
278
275
  async getProtocolParameters() {
@@ -603,30 +600,36 @@ var lucid = package_default.version;
603
600
 
604
601
  // src/kupmios.ts
605
602
  var import_utils4 = require("@lucid-evolution/utils");
606
- var import_effect5 = require("effect");
607
- var import_effect6 = require("effect");
603
+ var S3 = __toESM(require("effect/Schema"), 1);
604
+ var Cause = __toESM(require("effect/Cause"), 1);
605
+ var Effect2 = __toESM(require("effect/Effect"), 1);
606
+ var Exit = __toESM(require("effect/Exit"), 1);
607
+ var Layer = __toESM(require("effect/Layer"), 1);
608
+ var _Array = __toESM(require("effect/Array"), 1);
609
+ var Schedule = __toESM(require("effect/Schedule"), 1);
610
+ var import_Function3 = require("effect/Function");
608
611
 
609
612
  // src/internal/ogmios.ts
610
- var import_effect2 = require("effect");
613
+ var S = __toESM(require("effect/Schema"), 1);
611
614
  var import_utils3 = require("@lucid-evolution/utils");
612
- var JSONRPCSchema = (schema) => import_effect2.Schema.Struct({
613
- jsonrpc: import_effect2.Schema.String,
614
- method: import_effect2.Schema.optional(import_effect2.Schema.String),
615
- id: import_effect2.Schema.NullOr(import_effect2.Schema.Number),
615
+ var JSONRPCSchema = (schema) => S.Struct({
616
+ jsonrpc: S.String,
617
+ method: S.optional(S.String),
618
+ id: S.NullOr(S.Number),
616
619
  result: schema
617
620
  }).annotations({ identifier: "JSONRPCSchema" });
618
- var JSONRPCErrorSchema = import_effect2.Schema.Struct({
619
- code: import_effect2.Schema.Number,
620
- message: import_effect2.Schema.String,
621
- data: import_effect2.Schema.optional(import_effect2.Schema.Unknown)
621
+ var JSONRPCErrorSchema = S.Struct({
622
+ code: S.Number,
623
+ message: S.String,
624
+ data: S.optional(S.Unknown)
622
625
  });
623
- var JSONRPCErrorResponseSchema = import_effect2.Schema.Struct({
624
- jsonrpc: import_effect2.Schema.String,
625
- method: import_effect2.Schema.optional(import_effect2.Schema.String),
626
- id: import_effect2.Schema.NullOr(import_effect2.Schema.Number),
626
+ var JSONRPCErrorResponseSchema = S.Struct({
627
+ jsonrpc: S.String,
628
+ method: S.optional(S.String),
629
+ id: S.NullOr(S.Number),
627
630
  error: JSONRPCErrorSchema
628
631
  });
629
- var JSONRPCResponseSchema = (schema) => import_effect2.Schema.Union(JSONRPCSchema(schema), JSONRPCErrorResponseSchema).annotations({
632
+ var JSONRPCResponseSchema = (schema) => S.Union(JSONRPCSchema(schema), JSONRPCErrorResponseSchema).annotations({
630
633
  identifier: "JSONRPCResponseSchema"
631
634
  });
632
635
  var getJSONRPCResult = (response, operation, transport) => {
@@ -654,18 +657,18 @@ var getJSONRPCResult = (response, operation, transport) => {
654
657
  }
655
658
  return response.result;
656
659
  };
657
- var LovelaceAsset = import_effect2.Schema.Struct({
658
- lovelace: import_effect2.Schema.Number
660
+ var LovelaceAsset = S.Struct({
661
+ lovelace: S.Number
659
662
  });
660
- var LovelaceAmount = import_effect2.Schema.Union(import_effect2.Schema.Number, import_effect2.Schema.String, import_effect2.Schema.BigInt);
661
- var TreasuryAndReservesSchema = import_effect2.Schema.Struct({
662
- treasury: import_effect2.Schema.Struct({
663
- ada: import_effect2.Schema.Struct({
663
+ var LovelaceAmount = S.Union(S.Number, S.String, S.BigInt);
664
+ var TreasuryAndReservesSchema = S.Struct({
665
+ treasury: S.Struct({
666
+ ada: S.Struct({
664
667
  lovelace: LovelaceAmount
665
668
  })
666
669
  }),
667
- reserves: import_effect2.Schema.Struct({
668
- ada: import_effect2.Schema.Struct({
670
+ reserves: S.Struct({
671
+ ada: S.Struct({
669
672
  lovelace: LovelaceAmount
670
673
  })
671
674
  })
@@ -680,12 +683,12 @@ var lovelaceAmountToBigInt = (lovelace) => {
680
683
  }
681
684
  return BigInt(lovelace);
682
685
  };
683
- var TupleNumberFromString = import_effect2.Schema.compose(
684
- import_effect2.Schema.split("/"),
685
- import_effect2.Schema.Array(import_effect2.Schema.NumberFromString)
686
+ var TupleNumberFromString = S.compose(
687
+ S.split("/"),
688
+ S.Array(S.NumberFromString)
686
689
  );
687
- var MaxReferenceScriptsSizeSchema = import_effect2.Schema.Struct({
688
- bytes: import_effect2.Schema.Number
690
+ var MaxReferenceScriptsSizeSchema = S.Struct({
691
+ bytes: S.Number
689
692
  });
690
693
  function normalizeProtocolParameters(value) {
691
694
  const legacy = value.maxReferenceScriptsSize;
@@ -693,7 +696,7 @@ function normalizeProtocolParameters(value) {
693
696
  if (legacy === void 0 && current === void 0) {
694
697
  return value;
695
698
  }
696
- const decode = import_effect2.Schema.decodeUnknownSync(MaxReferenceScriptsSizeSchema);
699
+ const decode = S.decodeUnknownSync(MaxReferenceScriptsSizeSchema);
697
700
  const legacyValue = legacy === void 0 ? void 0 : decode(legacy);
698
701
  const currentValue = current === void 0 ? void 0 : decode(current);
699
702
  if (legacyValue !== void 0 && currentValue !== void 0 && legacyValue.bytes !== currentValue.bytes) {
@@ -706,34 +709,34 @@ function normalizeProtocolParameters(value) {
706
709
  maxReferenceScriptsSize: legacyValue ?? currentValue
707
710
  };
708
711
  }
709
- var ProtocolParametersSchema = import_effect2.Schema.Struct({
710
- minFeeCoefficient: import_effect2.Schema.Number,
711
- minFeeReferenceScripts: import_effect2.Schema.Struct({
712
- base: import_effect2.Schema.Number,
713
- range: import_effect2.Schema.Number,
714
- multiplier: import_effect2.Schema.Number
712
+ var ProtocolParametersSchema = S.Struct({
713
+ minFeeCoefficient: S.Number,
714
+ minFeeReferenceScripts: S.Struct({
715
+ base: S.Number,
716
+ range: S.Number,
717
+ multiplier: S.Number
715
718
  }),
716
719
  maxReferenceScriptsSize: MaxReferenceScriptsSizeSchema,
717
- stakePoolVotingThresholds: import_effect2.Schema.Struct({
720
+ stakePoolVotingThresholds: S.Struct({
718
721
  noConfidence: TupleNumberFromString,
719
- constitutionalCommittee: import_effect2.Schema.Struct({
722
+ constitutionalCommittee: S.Struct({
720
723
  default: TupleNumberFromString,
721
724
  stateOfNoConfidence: TupleNumberFromString
722
725
  }),
723
726
  hardForkInitiation: TupleNumberFromString,
724
- protocolParametersUpdate: import_effect2.Schema.Struct({
727
+ protocolParametersUpdate: S.Struct({
725
728
  security: TupleNumberFromString
726
729
  })
727
730
  }),
728
- delegateRepresentativeVotingThresholds: import_effect2.Schema.Struct({
731
+ delegateRepresentativeVotingThresholds: S.Struct({
729
732
  noConfidence: TupleNumberFromString,
730
- constitutionalCommittee: import_effect2.Schema.Struct({
733
+ constitutionalCommittee: S.Struct({
731
734
  default: TupleNumberFromString,
732
735
  stateOfNoConfidence: TupleNumberFromString
733
736
  }),
734
737
  constitution: TupleNumberFromString,
735
738
  hardForkInitiation: TupleNumberFromString,
736
- protocolParametersUpdate: import_effect2.Schema.Struct({
739
+ protocolParametersUpdate: S.Struct({
737
740
  network: TupleNumberFromString,
738
741
  economic: TupleNumberFromString,
739
742
  technical: TupleNumberFromString,
@@ -741,71 +744,71 @@ var ProtocolParametersSchema = import_effect2.Schema.Struct({
741
744
  }),
742
745
  treasuryWithdrawals: TupleNumberFromString
743
746
  }),
744
- constitutionalCommitteeMinSize: import_effect2.Schema.optional(import_effect2.Schema.Number),
745
- constitutionalCommitteeMaxTermLength: import_effect2.Schema.Number,
746
- governanceActionLifetime: import_effect2.Schema.Number,
747
- governanceActionDeposit: import_effect2.Schema.Struct({
747
+ constitutionalCommitteeMinSize: S.optional(S.Number),
748
+ constitutionalCommitteeMaxTermLength: S.Number,
749
+ governanceActionLifetime: S.Number,
750
+ governanceActionDeposit: S.Struct({
748
751
  ada: LovelaceAsset
749
752
  }),
750
- delegateRepresentativeDeposit: import_effect2.Schema.Struct({
753
+ delegateRepresentativeDeposit: S.Struct({
751
754
  ada: LovelaceAsset
752
755
  }),
753
- delegateRepresentativeMaxIdleTime: import_effect2.Schema.Number,
754
- minFeeConstant: import_effect2.Schema.Struct({ ada: LovelaceAsset }),
755
- maxBlockBodySize: import_effect2.Schema.Struct({ bytes: import_effect2.Schema.Number }),
756
- maxBlockHeaderSize: import_effect2.Schema.Struct({ bytes: import_effect2.Schema.Number }),
757
- maxTransactionSize: import_effect2.Schema.Struct({ bytes: import_effect2.Schema.Number }),
758
- stakeCredentialDeposit: import_effect2.Schema.Struct({ ada: LovelaceAsset }),
759
- stakePoolDeposit: import_effect2.Schema.Struct({ ada: LovelaceAsset }),
760
- stakePoolRetirementEpochBound: import_effect2.Schema.Number,
761
- desiredNumberOfStakePools: import_effect2.Schema.Number,
756
+ delegateRepresentativeMaxIdleTime: S.Number,
757
+ minFeeConstant: S.Struct({ ada: LovelaceAsset }),
758
+ maxBlockBodySize: S.Struct({ bytes: S.Number }),
759
+ maxBlockHeaderSize: S.Struct({ bytes: S.Number }),
760
+ maxTransactionSize: S.Struct({ bytes: S.Number }),
761
+ stakeCredentialDeposit: S.Struct({ ada: LovelaceAsset }),
762
+ stakePoolDeposit: S.Struct({ ada: LovelaceAsset }),
763
+ stakePoolRetirementEpochBound: S.Number,
764
+ desiredNumberOfStakePools: S.Number,
762
765
  stakePoolPledgeInfluence: TupleNumberFromString,
763
766
  monetaryExpansion: TupleNumberFromString,
764
767
  treasuryExpansion: TupleNumberFromString,
765
- minStakePoolCost: import_effect2.Schema.Struct({ ada: LovelaceAsset }),
766
- minUtxoDepositConstant: import_effect2.Schema.Struct({ ada: LovelaceAsset }),
767
- minUtxoDepositCoefficient: import_effect2.Schema.Number,
768
- plutusCostModels: import_effect2.Schema.Struct({
769
- "plutus:v1": import_effect2.Schema.Array(import_effect2.Schema.Number),
770
- "plutus:v2": import_effect2.Schema.Array(import_effect2.Schema.Number),
771
- "plutus:v3": import_effect2.Schema.Array(import_effect2.Schema.Number)
768
+ minStakePoolCost: S.Struct({ ada: LovelaceAsset }),
769
+ minUtxoDepositConstant: S.Struct({ ada: LovelaceAsset }),
770
+ minUtxoDepositCoefficient: S.Number,
771
+ plutusCostModels: S.Struct({
772
+ "plutus:v1": S.Array(S.Number),
773
+ "plutus:v2": S.Array(S.Number),
774
+ "plutus:v3": S.Array(S.Number)
772
775
  }),
773
- scriptExecutionPrices: import_effect2.Schema.Struct({
776
+ scriptExecutionPrices: S.Struct({
774
777
  memory: TupleNumberFromString,
775
778
  cpu: TupleNumberFromString
776
779
  }),
777
- maxExecutionUnitsPerTransaction: import_effect2.Schema.Struct({
778
- memory: import_effect2.Schema.Number,
779
- cpu: import_effect2.Schema.Number
780
+ maxExecutionUnitsPerTransaction: S.Struct({
781
+ memory: S.Number,
782
+ cpu: S.Number
780
783
  }),
781
- maxExecutionUnitsPerBlock: import_effect2.Schema.Struct({ memory: import_effect2.Schema.Number, cpu: import_effect2.Schema.Number }),
782
- maxValueSize: import_effect2.Schema.Struct({ bytes: import_effect2.Schema.Number }),
783
- collateralPercentage: import_effect2.Schema.Number,
784
- maxCollateralInputs: import_effect2.Schema.Number,
785
- version: import_effect2.Schema.Struct({ major: import_effect2.Schema.Number, minor: import_effect2.Schema.Number })
784
+ maxExecutionUnitsPerBlock: S.Struct({ memory: S.Number, cpu: S.Number }),
785
+ maxValueSize: S.Struct({ bytes: S.Number }),
786
+ collateralPercentage: S.Number,
787
+ maxCollateralInputs: S.Number,
788
+ version: S.Struct({ major: S.Number, minor: S.Number })
786
789
  }).annotations({ identifier: "ProtocolParametersSchema" });
787
- var RewardAccountAdaSchema = import_effect2.Schema.Struct({
790
+ var RewardAccountAdaSchema = S.Struct({
788
791
  ada: LovelaceAsset
789
792
  });
790
- var LegacyDelegationSummarySchema = import_effect2.Schema.Struct({
791
- delegate: import_effect2.Schema.optional(import_effect2.Schema.NullOr(import_effect2.Schema.Struct({ id: import_effect2.Schema.String }))),
793
+ var LegacyDelegationSummarySchema = S.Struct({
794
+ delegate: S.optional(S.NullOr(S.Struct({ id: S.String }))),
792
795
  rewards: RewardAccountAdaSchema,
793
796
  deposit: RewardAccountAdaSchema
794
797
  });
795
- var RewardAccountSummarySchema = import_effect2.Schema.Struct({
796
- from: import_effect2.Schema.optional(import_effect2.Schema.Literal("key", "verificationKey", "script")),
797
- credential: import_effect2.Schema.optional(import_effect2.Schema.String),
798
- stakePool: import_effect2.Schema.optional(import_effect2.Schema.NullOr(import_effect2.Schema.Struct({ id: import_effect2.Schema.String }))),
798
+ var RewardAccountSummarySchema = S.Struct({
799
+ from: S.optional(S.Literal("key", "verificationKey", "script")),
800
+ credential: S.optional(S.String),
801
+ stakePool: S.optional(S.NullOr(S.Struct({ id: S.String }))),
799
802
  rewards: RewardAccountAdaSchema,
800
803
  deposit: RewardAccountAdaSchema
801
804
  });
802
- var Delegation = import_effect2.Schema.Union(
803
- import_effect2.Schema.Null,
804
- import_effect2.Schema.Record({
805
- key: import_effect2.Schema.String,
805
+ var Delegation = S.Union(
806
+ S.Null,
807
+ S.Record({
808
+ key: S.String,
806
809
  value: LegacyDelegationSummarySchema
807
810
  }),
808
- import_effect2.Schema.Array(RewardAccountSummarySchema)
811
+ S.Array(RewardAccountSummarySchema)
809
812
  );
810
813
  var toOgmiosQuantity = (amount) => {
811
814
  const quantity = Number(amount);
@@ -816,9 +819,9 @@ var toOgmiosQuantity = (amount) => {
816
819
  }
817
820
  return quantity;
818
821
  };
819
- var RedeemerSchema = import_effect2.Schema.Struct({
820
- validator: import_effect2.Schema.Struct({
821
- purpose: import_effect2.Schema.Literal(
822
+ var RedeemerSchema = S.Struct({
823
+ validator: S.Struct({
824
+ purpose: S.Literal(
822
825
  "spend",
823
826
  "mint",
824
827
  "publish",
@@ -826,11 +829,11 @@ var RedeemerSchema = import_effect2.Schema.Struct({
826
829
  "vote",
827
830
  "propose"
828
831
  ),
829
- index: import_effect2.Schema.Int
832
+ index: S.Int
830
833
  }),
831
- budget: import_effect2.Schema.Struct({
832
- memory: import_effect2.Schema.Int,
833
- cpu: import_effect2.Schema.Int
834
+ budget: S.Struct({
835
+ memory: S.Int,
836
+ cpu: S.Int
834
837
  })
835
838
  }).annotations({ identifier: "RedeemerSchema" });
836
839
  var toOgmiosUTxOs = (utxos) => {
@@ -888,62 +891,66 @@ var toOgmiosUTxOs = (utxos) => {
888
891
  };
889
892
 
890
893
  // src/internal/kupo.ts
891
- var import_effect3 = require("effect");
892
- var QuantitySchema = import_effect3.Schema.Union(
893
- import_effect3.Schema.Number.pipe(import_effect3.Schema.filter(Number.isSafeInteger)),
894
- import_effect3.Schema.String.pipe(import_effect3.Schema.pattern(/^\d+$/))
894
+ var S2 = __toESM(require("effect/Schema"), 1);
895
+ var QuantitySchema = S2.Union(
896
+ S2.Number.pipe(S2.filter(Number.isSafeInteger)),
897
+ S2.String.pipe(S2.pattern(/^\d+$/))
895
898
  );
896
- var ValueSchema = import_effect3.Schema.Struct({
899
+ var ValueSchema = S2.Struct({
897
900
  coins: QuantitySchema,
898
- assets: import_effect3.Schema.Record({ key: import_effect3.Schema.String, value: QuantitySchema })
901
+ assets: S2.Record({ key: S2.String, value: QuantitySchema })
899
902
  });
900
- var PointSchema = import_effect3.Schema.Struct({
901
- slot_no: import_effect3.Schema.Number,
902
- header_hash: import_effect3.Schema.String
903
+ var PointSchema = S2.Struct({
904
+ slot_no: S2.Number,
905
+ header_hash: S2.String
903
906
  });
904
- var ScriptSchema = import_effect3.Schema.NullOr(
905
- import_effect3.Schema.Struct({
906
- language: import_effect3.Schema.Literal("native", "plutus:v1", "plutus:v2", "plutus:v3"),
907
- script: import_effect3.Schema.String
907
+ var ScriptSchema = S2.NullOr(
908
+ S2.Struct({
909
+ language: S2.Literal("native", "plutus:v1", "plutus:v2", "plutus:v3"),
910
+ script: S2.String
908
911
  })
909
912
  );
910
913
  var UTxOFields = {
911
- transaction_index: import_effect3.Schema.Number,
912
- transaction_id: import_effect3.Schema.String,
913
- output_index: import_effect3.Schema.Number,
914
- address: import_effect3.Schema.String,
914
+ transaction_index: S2.Number,
915
+ transaction_id: S2.String,
916
+ output_index: S2.Number,
917
+ address: S2.String,
915
918
  value: ValueSchema,
916
- datum_hash: import_effect3.Schema.NullOr(import_effect3.Schema.String),
917
- datum_type: import_effect3.Schema.optional(import_effect3.Schema.Literal("hash", "inline")),
918
- script_hash: import_effect3.Schema.NullOr(import_effect3.Schema.String),
919
+ datum_hash: S2.NullOr(S2.String),
920
+ datum_type: S2.optional(S2.Literal("hash", "inline")),
921
+ script_hash: S2.NullOr(S2.String),
919
922
  created_at: PointSchema,
920
- spent_at: import_effect3.Schema.NullOr(PointSchema)
923
+ spent_at: S2.NullOr(PointSchema)
921
924
  };
922
- var UTxOSchema = import_effect3.Schema.Struct(UTxOFields);
923
- var ResolvedUTxOSchema = import_effect3.Schema.Struct({
925
+ var UTxOSchema = S2.Struct(UTxOFields);
926
+ var ResolvedUTxOSchema = S2.Struct({
924
927
  ...UTxOFields,
925
- datum: import_effect3.Schema.NullOr(import_effect3.Schema.String),
928
+ datum: S2.NullOr(S2.String),
926
929
  script: ScriptSchema
927
930
  });
928
- var DatumSchema = import_effect3.Schema.NullOr(import_effect3.Schema.Struct({ datum: import_effect3.Schema.String }));
929
- var DelegationSchema = import_effect3.Schema.NullOr(
930
- import_effect3.Schema.Record({
931
- key: import_effect3.Schema.String,
932
- value: import_effect3.Schema.Struct({
933
- delegate: import_effect3.Schema.Struct({ id: import_effect3.Schema.String }),
934
- rewards: import_effect3.Schema.Struct({ ada: import_effect3.Schema.Struct({ lovelace: import_effect3.Schema.Number }) }),
935
- deposit: import_effect3.Schema.Struct({ ada: import_effect3.Schema.Struct({ lovelace: import_effect3.Schema.Number }) })
931
+ var DatumSchema = S2.NullOr(S2.Struct({ datum: S2.String }));
932
+ var DelegationSchema = S2.NullOr(
933
+ S2.Record({
934
+ key: S2.String,
935
+ value: S2.Struct({
936
+ delegate: S2.Struct({ id: S2.String }),
937
+ rewards: S2.Struct({ ada: S2.Struct({ lovelace: S2.Number }) }),
938
+ deposit: S2.Struct({ ada: S2.Struct({ lovelace: S2.Number }) })
936
939
  })
937
940
  })
938
941
  );
939
942
 
940
943
  // src/internal/HttpUtils.ts
941
- var import_platform = require("@effect/platform");
942
- var import_effect4 = require("effect");
943
- var filterStatusOk = (self) => self.status >= 200 && self.status < 300 ? import_effect4.Effect.succeed(self) : self.text.pipe(
944
- import_effect4.Effect.flatMap(
945
- (text) => import_effect4.Effect.fail(
946
- new import_platform.HttpClientError.ResponseError({
944
+ var HttpClient = __toESM(require("@effect/platform/HttpClient"), 1);
945
+ var HttpClientError = __toESM(require("@effect/platform/HttpClientError"), 1);
946
+ var HttpClientRequest = __toESM(require("@effect/platform/HttpClientRequest"), 1);
947
+ var HttpClientResponse = __toESM(require("@effect/platform/HttpClientResponse"), 1);
948
+ var Effect = __toESM(require("effect/Effect"), 1);
949
+ var import_Function2 = require("effect/Function");
950
+ var filterStatusOk = (self) => self.status >= 200 && self.status < 300 ? Effect.succeed(self) : self.text.pipe(
951
+ Effect.flatMap(
952
+ (text) => Effect.fail(
953
+ new HttpClientError.ResponseError({
947
954
  response: self,
948
955
  request: self.request,
949
956
  reason: "StatusCode",
@@ -952,56 +959,51 @@ var filterStatusOk = (self) => self.status >= 200 && self.status < 300 ? import_
952
959
  )
953
960
  )
954
961
  );
955
- var makeGet = (url, schema, headers) => (0, import_effect4.pipe)(
962
+ var makeGet = (url, schema, headers) => (0, import_Function2.pipe)(
956
963
  // Initiate a GET request to the specified URL
957
- import_platform.HttpClientRequest.get(url),
964
+ HttpClientRequest.get(url),
958
965
  // Conditional bearer token authentication
959
- headers ? import_platform.HttpClientRequest.setHeaders(headers) : import_effect4.identity,
960
- // Execute the HTTP request and retrieve the response
961
- import_platform.HttpClient.execute,
966
+ headers ? HttpClientRequest.setHeaders(headers) : import_Function2.identity,
967
+ HttpClient.execute,
962
968
  // Ensure only 2xx responses are treated as successes.
963
- import_effect4.Effect.flatMap(filterStatusOk),
969
+ Effect.flatMap(filterStatusOk),
964
970
  // Parse the response body using the provided JSON schema
965
971
  // This validates and transforms the response to the expected type
966
- import_effect4.Effect.flatMap(import_platform.HttpClientResponse.schemaBodyJson(schema)),
967
- // Ensure request is aborted if the program is interrupted
968
- // Prevents resource leaks and ensures clean request termination
969
- import_effect4.Effect.scoped
972
+ Effect.flatMap(HttpClientResponse.schemaBodyJson(schema)),
973
+ Effect.scoped
970
974
  );
971
- var makePostAsJson = (url, data, schema, headers) => (0, import_effect4.pipe)(
975
+ var makePostAsJson = (url, data, schema, headers) => (0, import_Function2.pipe)(
972
976
  // Initiate a POST request to the specified URL
973
- import_platform.HttpClientRequest.post(url),
977
+ HttpClientRequest.post(url),
974
978
  // Conditional headers
975
- headers ? import_platform.HttpClientRequest.setHeaders(headers) : import_effect4.identity,
979
+ headers ? HttpClientRequest.setHeaders(headers) : import_Function2.identity,
976
980
  // Set the request body as Json
977
- import_platform.HttpClientRequest.bodyJson(data),
981
+ HttpClientRequest.bodyJson(data),
978
982
  // Execute the HTTP request and retrieve the response
979
- import_effect4.Effect.flatMap(import_platform.HttpClient.execute),
983
+ Effect.flatMap(HttpClient.execute),
980
984
  // Ensure only 2xx responses are treated as successes.
981
- import_effect4.Effect.flatMap(filterStatusOk),
985
+ Effect.flatMap(filterStatusOk),
982
986
  // Parse the response body using the provided JSON schema
983
987
  // This validates and transforms the response to the expected type
984
- import_effect4.Effect.flatMap(import_platform.HttpClientResponse.schemaBodyJson(schema)),
985
- // Ensure request is aborted if the program is interrupted
986
- // Prevents resource leaks and ensures clean request termination
987
- import_effect4.Effect.scoped
988
+ Effect.flatMap(HttpClientResponse.schemaBodyJson(schema)),
989
+ Effect.scoped
988
990
  );
989
- var makePostAsJsonResponse = (url, data, schema, headers) => (0, import_effect4.pipe)(
990
- import_platform.HttpClientRequest.post(url),
991
- headers ? import_platform.HttpClientRequest.setHeaders(headers) : import_effect4.identity,
992
- import_platform.HttpClientRequest.bodyJson(data),
993
- import_effect4.Effect.flatMap(import_platform.HttpClient.execute),
994
- import_effect4.Effect.flatMap(
995
- (response) => (0, import_effect4.pipe)(
996
- import_platform.HttpClientResponse.schemaBodyJson(schema)(response),
997
- import_effect4.Effect.map((body) => ({
991
+ var makePostAsJsonResponse = (url, data, schema, headers) => (0, import_Function2.pipe)(
992
+ HttpClientRequest.post(url),
993
+ headers ? HttpClientRequest.setHeaders(headers) : import_Function2.identity,
994
+ HttpClientRequest.bodyJson(data),
995
+ Effect.flatMap(HttpClient.execute),
996
+ Effect.flatMap(
997
+ (response) => (0, import_Function2.pipe)(
998
+ HttpClientResponse.schemaBodyJson(schema)(response),
999
+ Effect.map((body) => ({
998
1000
  body,
999
1001
  status: response.status,
1000
1002
  headers: response.headers
1001
1003
  })),
1002
- import_effect4.Effect.catchAll(
1003
- (cause) => response.status >= 200 && response.status < 300 ? import_effect4.Effect.fail(cause) : import_effect4.Effect.fail(
1004
- new import_platform.HttpClientError.ResponseError({
1004
+ Effect.catchAll(
1005
+ (cause) => response.status >= 200 && response.status < 300 ? Effect.fail(cause) : Effect.fail(
1006
+ new HttpClientError.ResponseError({
1005
1007
  response,
1006
1008
  request: response.request,
1007
1009
  reason: "StatusCode",
@@ -1011,54 +1013,51 @@ var makePostAsJsonResponse = (url, data, schema, headers) => (0, import_effect4.
1011
1013
  )
1012
1014
  )
1013
1015
  ),
1014
- import_effect4.Effect.scoped
1016
+ Effect.scoped
1015
1017
  );
1016
- var makePostAsUint8Array = (url, data, schema, headers) => (0, import_effect4.pipe)(
1018
+ var makePostAsUint8Array = (url, data, schema, headers) => (0, import_Function2.pipe)(
1017
1019
  // Initiate a POST request to the specified URL
1018
- import_platform.HttpClientRequest.post(url),
1020
+ HttpClientRequest.post(url),
1019
1021
  // Conditional bearer token authentication
1020
- headers ? import_platform.HttpClientRequest.setHeaders(headers) : import_effect4.identity,
1022
+ headers ? HttpClientRequest.setHeaders(headers) : import_Function2.identity,
1021
1023
  // Set the request body as a Uint8Array with CBOR content type
1022
- import_platform.HttpClientRequest.bodyUint8Array(data, "application/cbor"),
1023
- // Execute the HTTP request and retrieve the response
1024
- import_platform.HttpClient.execute,
1024
+ HttpClientRequest.bodyUint8Array(data, "application/cbor"),
1025
+ HttpClient.execute,
1025
1026
  // Ensure only 2xx responses are treated as successes.
1026
- import_effect4.Effect.flatMap(filterStatusOk),
1027
+ Effect.flatMap(filterStatusOk),
1027
1028
  // Parse the response body using the provided JSON schema
1028
1029
  // This validates and transforms the response to the expected type
1029
- import_effect4.Effect.flatMap(import_platform.HttpClientResponse.schemaBodyJson(schema)),
1030
- // Ensure request is aborted if the program is interrupted
1031
- // Prevents resource leaks and ensures clean request termination
1032
- import_effect4.Effect.scoped
1030
+ Effect.flatMap(HttpClientResponse.schemaBodyJson(schema)),
1031
+ Effect.scoped
1033
1032
  );
1034
1033
 
1035
1034
  // src/kupmios.ts
1036
- var import_platform2 = require("@effect/platform");
1035
+ var FetchHttpClient = __toESM(require("@effect/platform/FetchHttpClient"), 1);
1037
1036
  var DEFAULT_REQUEST_TIMEOUT_MS2 = 3e4;
1038
1037
  var DEFAULT_AWAIT_TX_TIMEOUT_MS = 16e4;
1039
- var validateTimeout = (name, timeout) => {
1040
- if (!Number.isFinite(timeout) || timeout <= 0) {
1038
+ var validateTimeout = (name, timeout3) => {
1039
+ if (!Number.isFinite(timeout3) || timeout3 <= 0) {
1041
1040
  throw new TypeError(`${name} must be a positive finite number.`);
1042
1041
  }
1043
- return timeout;
1042
+ return timeout3;
1044
1043
  };
1045
- var catchProviderError = (protocol, operation) => (effect) => import_effect6.Effect.catchAll(
1044
+ var catchProviderError = (protocol, operation) => (effect) => Effect2.catchAll(
1046
1045
  effect,
1047
- (cause) => import_effect6.Effect.fail(toKupmiosError(cause, protocol, operation))
1046
+ (cause) => Effect2.fail(toKupmiosError(cause, protocol, operation))
1048
1047
  );
1049
1048
  var runProviderEffect = async (effect, protocol, operation, signal) => {
1050
- const exit = await import_effect6.Effect.runPromiseExit(effect, { signal });
1051
- if (import_effect6.Exit.isSuccess(exit)) return exit.value;
1049
+ const exit = await Effect2.runPromiseExit(effect, { signal });
1050
+ if (Exit.isSuccess(exit)) return exit.value;
1052
1051
  if (signal?.aborted) {
1053
1052
  throw new KupmiosError({
1054
1053
  protocol,
1055
1054
  operation,
1056
1055
  kind: "aborted",
1057
1056
  retryable: false,
1058
- cause: signal.reason ?? import_effect6.Cause.squash(exit.cause)
1057
+ cause: signal.reason ?? Cause.squash(exit.cause)
1059
1058
  });
1060
1059
  }
1061
- throw toKupmiosError(import_effect6.Cause.squash(exit.cause), protocol, operation);
1060
+ throw toKupmiosError(Cause.squash(exit.cause), protocol, operation);
1062
1061
  };
1063
1062
  var Kupmios = class {
1064
1063
  kupoUrl;
@@ -1079,9 +1078,9 @@ var Kupmios = class {
1079
1078
  "awaitTxTimeoutMs",
1080
1079
  options.awaitTxTimeoutMs ?? DEFAULT_AWAIT_TX_TIMEOUT_MS
1081
1080
  );
1082
- this.httpLayer = options.fetchImpl === void 0 ? import_platform2.FetchHttpClient.layer : import_effect6.Layer.provide(
1083
- import_platform2.FetchHttpClient.layer,
1084
- import_effect6.Layer.succeed(import_platform2.FetchHttpClient.Fetch, options.fetchImpl)
1081
+ this.httpLayer = options.fetchImpl === void 0 ? FetchHttpClient.layer : Layer.provide(
1082
+ FetchHttpClient.layer,
1083
+ Layer.succeed(FetchHttpClient.Fetch, options.fetchImpl)
1085
1084
  );
1086
1085
  }
1087
1086
  async getProtocolParameters() {
@@ -1092,19 +1091,19 @@ var Kupmios = class {
1092
1091
  id: null
1093
1092
  };
1094
1093
  const schema = JSONRPCResponseSchema(
1095
- import_effect5.Schema.Record({ key: import_effect5.Schema.String, value: import_effect5.Schema.Unknown })
1094
+ S3.Record({ key: S3.String, value: S3.Unknown })
1096
1095
  );
1097
1096
  const response = await runProviderEffect(
1098
- (0, import_effect6.pipe)(
1097
+ (0, import_Function3.pipe)(
1099
1098
  makePostAsJsonResponse(
1100
1099
  this.ogmiosUrl,
1101
1100
  data,
1102
1101
  schema,
1103
1102
  this.options.ogmiosHeader
1104
1103
  ),
1105
- import_effect6.Effect.timeout(this.requestTimeoutMs),
1104
+ Effect2.timeout(this.requestTimeoutMs),
1106
1105
  catchProviderError("ogmios", "queryLedgerState/protocolParameters"),
1107
- import_effect6.Effect.provide(this.httpLayer)
1106
+ Effect2.provide(this.httpLayer)
1108
1107
  ),
1109
1108
  "ogmios",
1110
1109
  "queryLedgerState/protocolParameters"
@@ -1114,7 +1113,7 @@ var Kupmios = class {
1114
1113
  data.method,
1115
1114
  response
1116
1115
  );
1117
- const protocolParameters = import_effect5.Schema.decodeUnknownSync(
1116
+ const protocolParameters = S3.decodeUnknownSync(
1118
1117
  ProtocolParametersSchema
1119
1118
  )(normalizeProtocolParameters(result));
1120
1119
  return toProtocolParameters(protocolParameters);
@@ -1130,16 +1129,16 @@ var Kupmios = class {
1130
1129
  TreasuryAndReservesSchema
1131
1130
  );
1132
1131
  const response = await runProviderEffect(
1133
- (0, import_effect6.pipe)(
1132
+ (0, import_Function3.pipe)(
1134
1133
  makePostAsJsonResponse(
1135
1134
  this.ogmiosUrl,
1136
1135
  data,
1137
1136
  schema,
1138
1137
  this.options.ogmiosHeader
1139
1138
  ),
1140
- import_effect6.Effect.timeout(this.requestTimeoutMs),
1139
+ Effect2.timeout(this.requestTimeoutMs),
1141
1140
  catchProviderError("ogmios", "queryLedgerState/treasuryAndReserves"),
1142
- import_effect6.Effect.provide(this.httpLayer)
1141
+ Effect2.provide(this.httpLayer)
1143
1142
  ),
1144
1143
  "ogmios",
1145
1144
  "queryLedgerState/treasuryAndReserves"
@@ -1154,15 +1153,15 @@ var Kupmios = class {
1154
1153
  async getUtxos(addressOrCredential) {
1155
1154
  const isAddress = typeof addressOrCredential === "string";
1156
1155
  const queryPredicate = isAddress ? addressOrCredential : addressOrCredential.hash;
1157
- const pattern = `${this.kupoUrl}/matches/${queryPredicate}${isAddress ? "" : "/*"}?unspent&resolve_hashes`;
1158
- const schema = import_effect5.Schema.Array(ResolvedUTxOSchema);
1156
+ const pattern2 = `${this.kupoUrl}/matches/${queryPredicate}${isAddress ? "" : "/*"}?unspent&resolve_hashes`;
1157
+ const schema = S3.Array(ResolvedUTxOSchema);
1159
1158
  const utxos = await runProviderEffect(
1160
- (0, import_effect6.pipe)(
1161
- makeGet(pattern, schema, this.options.kupoHeader),
1162
- import_effect6.Effect.map(kupmiosUtxosToUtxos),
1163
- import_effect6.Effect.timeout(this.requestTimeoutMs),
1159
+ (0, import_Function3.pipe)(
1160
+ makeGet(pattern2, schema, this.options.kupoHeader),
1161
+ Effect2.map(kupmiosUtxosToUtxos),
1162
+ Effect2.timeout(this.requestTimeoutMs),
1164
1163
  catchProviderError("kupo", "getUtxos"),
1165
- import_effect6.Effect.provide(this.httpLayer)
1164
+ Effect2.provide(this.httpLayer)
1166
1165
  ),
1167
1166
  "kupo",
1168
1167
  "getUtxos"
@@ -1173,15 +1172,15 @@ var Kupmios = class {
1173
1172
  const isAddress = typeof addressOrCredential === "string";
1174
1173
  const queryPredicate = isAddress ? addressOrCredential : addressOrCredential.hash;
1175
1174
  const { policyId, assetName } = (0, import_utils4.fromUnit)(unit);
1176
- const pattern = `${this.kupoUrl}/matches/${queryPredicate}${isAddress ? "" : "/*"}?unspent&resolve_hashes&policy_id=${policyId}${assetName ? `&asset_name=${assetName}` : ""}`;
1177
- const schema = import_effect5.Schema.Array(ResolvedUTxOSchema);
1175
+ const pattern2 = `${this.kupoUrl}/matches/${queryPredicate}${isAddress ? "" : "/*"}?unspent&resolve_hashes&policy_id=${policyId}${assetName ? `&asset_name=${assetName}` : ""}`;
1176
+ const schema = S3.Array(ResolvedUTxOSchema);
1178
1177
  const utxos = await runProviderEffect(
1179
- (0, import_effect6.pipe)(
1180
- makeGet(pattern, schema, this.options.kupoHeader),
1181
- import_effect6.Effect.map(kupmiosUtxosToUtxos),
1182
- import_effect6.Effect.timeout(this.requestTimeoutMs),
1178
+ (0, import_Function3.pipe)(
1179
+ makeGet(pattern2, schema, this.options.kupoHeader),
1180
+ Effect2.map(kupmiosUtxosToUtxos),
1181
+ Effect2.timeout(this.requestTimeoutMs),
1183
1182
  catchProviderError("kupo", "getUtxosWithUnit"),
1184
- import_effect6.Effect.provide(this.httpLayer)
1183
+ Effect2.provide(this.httpLayer)
1185
1184
  ),
1186
1185
  "kupo",
1187
1186
  "getUtxosWithUnit"
@@ -1197,15 +1196,15 @@ var Kupmios = class {
1197
1196
  const normalizedPolicyId = policyId.toLowerCase();
1198
1197
  const isAddress = typeof addressOrCredential === "string";
1199
1198
  const queryPredicate = isAddress ? addressOrCredential : addressOrCredential.hash;
1200
- const pattern = `${this.kupoUrl}/matches/${queryPredicate}${isAddress ? "" : "/*"}?unspent&resolve_hashes&policy_id=${normalizedPolicyId}`;
1201
- const schema = import_effect5.Schema.Array(ResolvedUTxOSchema);
1199
+ const pattern2 = `${this.kupoUrl}/matches/${queryPredicate}${isAddress ? "" : "/*"}?unspent&resolve_hashes&policy_id=${normalizedPolicyId}`;
1200
+ const schema = S3.Array(ResolvedUTxOSchema);
1202
1201
  return runProviderEffect(
1203
- (0, import_effect6.pipe)(
1204
- makeGet(pattern, schema, this.options.kupoHeader),
1205
- import_effect6.Effect.map(kupmiosUtxosToUtxos),
1206
- import_effect6.Effect.timeout(this.requestTimeoutMs),
1202
+ (0, import_Function3.pipe)(
1203
+ makeGet(pattern2, schema, this.options.kupoHeader),
1204
+ Effect2.map(kupmiosUtxosToUtxos),
1205
+ Effect2.timeout(this.requestTimeoutMs),
1207
1206
  catchProviderError("kupo", "getUtxosWithPolicy"),
1208
- import_effect6.Effect.provide(this.httpLayer)
1207
+ Effect2.provide(this.httpLayer)
1209
1208
  ),
1210
1209
  "kupo",
1211
1210
  "getUtxosWithPolicy"
@@ -1213,15 +1212,15 @@ var Kupmios = class {
1213
1212
  }
1214
1213
  async getUtxoByUnit(unit) {
1215
1214
  const { policyId, assetName } = (0, import_utils4.fromUnit)(unit);
1216
- const pattern = `${this.kupoUrl}/matches/${policyId}.${assetName ?? ""}?unspent&resolve_hashes`;
1217
- const schema = import_effect5.Schema.Array(ResolvedUTxOSchema);
1215
+ const pattern2 = `${this.kupoUrl}/matches/${policyId}.${assetName ?? ""}?unspent&resolve_hashes`;
1216
+ const schema = S3.Array(ResolvedUTxOSchema);
1218
1217
  const utxos = await runProviderEffect(
1219
- (0, import_effect6.pipe)(
1220
- makeGet(pattern, schema, this.options.kupoHeader),
1221
- import_effect6.Effect.map(kupmiosUtxosToUtxos),
1222
- import_effect6.Effect.timeout(this.requestTimeoutMs),
1218
+ (0, import_Function3.pipe)(
1219
+ makeGet(pattern2, schema, this.options.kupoHeader),
1220
+ Effect2.map(kupmiosUtxosToUtxos),
1221
+ Effect2.timeout(this.requestTimeoutMs),
1223
1222
  catchProviderError("kupo", "getUtxoByUnit"),
1224
- import_effect6.Effect.provide(this.httpLayer)
1223
+ Effect2.provide(this.httpLayer)
1225
1224
  ),
1226
1225
  "kupo",
1227
1226
  "getUtxoByUnit"
@@ -1239,22 +1238,22 @@ var Kupmios = class {
1239
1238
  ...new Set(outRefs.map((outRef) => outRef.txHash))
1240
1239
  ];
1241
1240
  const mkPattern = (txHash) => `${this.kupoUrl}/matches/*@${txHash}?unspent&resolve_hashes`;
1242
- const schema = import_effect5.Schema.Array(ResolvedUTxOSchema);
1243
- const program = import_effect6.Effect.forEach(
1241
+ const schema = S3.Array(ResolvedUTxOSchema);
1242
+ const program = Effect2.forEach(
1244
1243
  queryHashes,
1245
- (txHash) => (0, import_effect6.pipe)(
1244
+ (txHash) => (0, import_Function3.pipe)(
1246
1245
  makeGet(mkPattern(txHash), schema, this.options.kupoHeader),
1247
- import_effect6.Effect.map(kupmiosUtxosToUtxos),
1248
- import_effect6.Effect.timeout(this.requestTimeoutMs),
1246
+ Effect2.map(kupmiosUtxosToUtxos),
1247
+ Effect2.timeout(this.requestTimeoutMs),
1249
1248
  catchProviderError("kupo", "getUtxosByOutRef")
1250
1249
  )
1251
1250
  );
1252
1251
  const utxos = await runProviderEffect(
1253
- (0, import_effect6.pipe)(program, import_effect6.Effect.provide(this.httpLayer)),
1252
+ (0, import_Function3.pipe)(program, Effect2.provide(this.httpLayer)),
1254
1253
  "kupo",
1255
1254
  "getUtxosByOutRef"
1256
1255
  );
1257
- return import_effect6.Array.flatten(utxos).filter(
1256
+ return _Array.flatten(utxos).filter(
1258
1257
  (utxo) => outRefs.some(
1259
1258
  (outRef) => utxo.txHash === outRef.txHash && utxo.outputIndex === outRef.outputIndex
1260
1259
  )
@@ -1269,15 +1268,15 @@ var Kupmios = class {
1269
1268
  };
1270
1269
  const schema = JSONRPCResponseSchema(Delegation);
1271
1270
  const response = await runProviderEffect(
1272
- (0, import_effect6.pipe)(
1271
+ (0, import_Function3.pipe)(
1273
1272
  makePostAsJsonResponse(
1274
1273
  this.ogmiosUrl,
1275
1274
  data,
1276
1275
  schema,
1277
1276
  this.options.ogmiosHeader
1278
1277
  ),
1279
- import_effect6.Effect.provide(this.httpLayer),
1280
- import_effect6.Effect.timeout(this.requestTimeoutMs),
1278
+ Effect2.provide(this.httpLayer),
1279
+ Effect2.timeout(this.requestTimeoutMs),
1281
1280
  catchProviderError("ogmios", "queryLedgerState/rewardAccountSummaries")
1282
1281
  ),
1283
1282
  "ogmios",
@@ -1295,14 +1294,14 @@ var Kupmios = class {
1295
1294
  return { poolId, rewards };
1296
1295
  }
1297
1296
  async getDatum(datumHash) {
1298
- const pattern = `${this.kupoUrl}/datums/${datumHash}`;
1297
+ const pattern2 = `${this.kupoUrl}/datums/${datumHash}`;
1299
1298
  const schema = DatumSchema;
1300
1299
  const result = await runProviderEffect(
1301
- (0, import_effect6.pipe)(
1302
- makeGet(pattern, schema, this.options.kupoHeader),
1303
- import_effect6.Effect.provide(this.httpLayer),
1304
- import_effect6.Effect.timeout(this.requestTimeoutMs),
1305
- import_effect6.Effect.flatMap(import_effect6.Effect.fromNullable),
1300
+ (0, import_Function3.pipe)(
1301
+ makeGet(pattern2, schema, this.options.kupoHeader),
1302
+ Effect2.provide(this.httpLayer),
1303
+ Effect2.timeout(this.requestTimeoutMs),
1304
+ Effect2.flatMap(Effect2.fromNullable),
1306
1305
  catchProviderError("kupo", "getDatum")
1307
1306
  ),
1308
1307
  "kupo",
@@ -1311,16 +1310,16 @@ var Kupmios = class {
1311
1310
  return result.datum;
1312
1311
  }
1313
1312
  async getTransactionStatus(txHash, options = {}) {
1314
- const pattern = `${this.kupoUrl}/matches/*@${txHash}`;
1315
- const schema = import_effect5.Schema.Array(UTxOSchema).annotations({
1313
+ const pattern2 = `${this.kupoUrl}/matches/*@${txHash}`;
1314
+ const schema = S3.Array(UTxOSchema).annotations({
1316
1315
  identifier: "Array<KupmiosSchema.KupoUTxO>"
1317
1316
  });
1318
1317
  const matches = await runProviderEffect(
1319
- (0, import_effect6.pipe)(
1320
- makeGet(pattern, schema, this.options.kupoHeader),
1321
- import_effect6.Effect.timeout(this.requestTimeoutMs),
1318
+ (0, import_Function3.pipe)(
1319
+ makeGet(pattern2, schema, this.options.kupoHeader),
1320
+ Effect2.timeout(this.requestTimeoutMs),
1322
1321
  catchProviderError("kupo", "getTransactionStatus"),
1323
- import_effect6.Effect.provide(this.httpLayer)
1322
+ Effect2.provide(this.httpLayer)
1324
1323
  ),
1325
1324
  "kupo",
1326
1325
  "getTransactionStatus",
@@ -1339,21 +1338,21 @@ var Kupmios = class {
1339
1338
  };
1340
1339
  }
1341
1340
  async awaitTx(txHash, checkInterval = 2e4) {
1342
- const pattern = `${this.kupoUrl}/matches/*@${txHash}`;
1343
- const schema = import_effect5.Schema.Array(UTxOSchema).annotations({
1341
+ const pattern2 = `${this.kupoUrl}/matches/*@${txHash}`;
1342
+ const schema = S3.Array(UTxOSchema).annotations({
1344
1343
  identifier: "Array<KupmiosSchema.KupoUTxO>"
1345
1344
  });
1346
1345
  const result = await runProviderEffect(
1347
- (0, import_effect6.pipe)(
1348
- makeGet(pattern, schema, this.options.kupoHeader),
1349
- import_effect6.Effect.provide(this.httpLayer),
1350
- import_effect6.Effect.repeat({
1351
- schedule: import_effect6.Schedule.exponential(checkInterval),
1346
+ (0, import_Function3.pipe)(
1347
+ makeGet(pattern2, schema, this.options.kupoHeader),
1348
+ Effect2.provide(this.httpLayer),
1349
+ Effect2.repeat({
1350
+ schedule: Schedule.exponential(checkInterval),
1352
1351
  until: (result2) => result2.length > 0
1353
1352
  }),
1354
- import_effect6.Effect.timeout(this.awaitTxTimeoutMs),
1353
+ Effect2.timeout(this.awaitTxTimeoutMs),
1355
1354
  catchProviderError("kupo", "awaitTx"),
1356
- import_effect6.Effect.as(true)
1355
+ Effect2.as(true)
1357
1356
  ),
1358
1357
  "kupo",
1359
1358
  "awaitTx"
@@ -1370,22 +1369,22 @@ var Kupmios = class {
1370
1369
  id: null
1371
1370
  };
1372
1371
  const schema = JSONRPCResponseSchema(
1373
- import_effect5.Schema.Struct({
1374
- transaction: import_effect5.Schema.Struct({
1375
- id: import_effect5.Schema.String
1372
+ S3.Struct({
1373
+ transaction: S3.Struct({
1374
+ id: S3.String
1376
1375
  })
1377
1376
  })
1378
1377
  );
1379
1378
  const response = await runProviderEffect(
1380
- (0, import_effect6.pipe)(
1379
+ (0, import_Function3.pipe)(
1381
1380
  makePostAsJsonResponse(
1382
1381
  this.ogmiosUrl,
1383
1382
  data,
1384
1383
  schema,
1385
1384
  this.options.ogmiosHeader
1386
1385
  ),
1387
- import_effect6.Effect.provide(this.httpLayer),
1388
- import_effect6.Effect.timeout(this.requestTimeoutMs),
1386
+ Effect2.provide(this.httpLayer),
1387
+ Effect2.timeout(this.requestTimeoutMs),
1389
1388
  catchProviderError("ogmios", "submitTransaction")
1390
1389
  ),
1391
1390
  "ogmios",
@@ -1408,17 +1407,17 @@ var Kupmios = class {
1408
1407
  },
1409
1408
  id: null
1410
1409
  };
1411
- const schema = JSONRPCResponseSchema(import_effect5.Schema.Array(RedeemerSchema));
1410
+ const schema = JSONRPCResponseSchema(S3.Array(RedeemerSchema));
1412
1411
  const response = await runProviderEffect(
1413
- (0, import_effect6.pipe)(
1412
+ (0, import_Function3.pipe)(
1414
1413
  makePostAsJsonResponse(
1415
1414
  this.ogmiosUrl,
1416
1415
  data,
1417
1416
  schema,
1418
1417
  this.options.ogmiosHeader
1419
1418
  ),
1420
- import_effect6.Effect.provide(this.httpLayer),
1421
- import_effect6.Effect.timeout(this.requestTimeoutMs),
1419
+ Effect2.provide(this.httpLayer),
1420
+ Effect2.timeout(this.requestTimeoutMs),
1422
1421
  catchProviderError("ogmios", "evaluateTransaction")
1423
1422
  ),
1424
1423
  "ogmios",
@@ -1528,6 +1527,53 @@ var import_utils7 = require("@lucid-evolution/utils");
1528
1527
  var import_core_utils2 = require("@lucid-evolution/core-utils");
1529
1528
  var import_wallet = require("@lucid-evolution/wallet");
1530
1529
 
1530
+ // src/internal/ed25519.ts
1531
+ var nodeCrypto = (() => {
1532
+ try {
1533
+ return globalThis.process?.getBuiltinModule?.("node:crypto");
1534
+ } catch {
1535
+ return void 0;
1536
+ }
1537
+ })();
1538
+ var SPKI_PREFIX = [
1539
+ 48,
1540
+ 42,
1541
+ 48,
1542
+ 5,
1543
+ 6,
1544
+ 3,
1545
+ 43,
1546
+ 101,
1547
+ 112,
1548
+ 3,
1549
+ 33,
1550
+ 0
1551
+ ];
1552
+ var nativeVerifyEd25519 = (publicKey, message, signature) => {
1553
+ if (!nodeCrypto || publicKey.length !== 32 || signature.length !== 64) {
1554
+ return false;
1555
+ }
1556
+ if (publicKey.every((byte) => byte === 0)) return false;
1557
+ try {
1558
+ const spki = Buffer.alloc(SPKI_PREFIX.length + 32);
1559
+ spki.set(SPKI_PREFIX);
1560
+ spki.set(publicKey, SPKI_PREFIX.length);
1561
+ const key = nodeCrypto.createPublicKey({
1562
+ key: spki,
1563
+ format: "der",
1564
+ type: "spki"
1565
+ });
1566
+ return nodeCrypto.verify(null, message, key, signature);
1567
+ } catch {
1568
+ return false;
1569
+ }
1570
+ };
1571
+ var verifyEd25519 = (publicKey, message, signature) => nativeVerifyEd25519(
1572
+ publicKey.to_raw_bytes(),
1573
+ message,
1574
+ signature.to_raw_bytes()
1575
+ ) || publicKey.verify(message, signature);
1576
+
1531
1577
  // src/internal/emulator-ledger.ts
1532
1578
  var import_utils5 = require("@lucid-evolution/utils");
1533
1579
  var isUnorderedKey = (key) => {
@@ -2039,7 +2085,11 @@ var Emulator = class {
2039
2085
  const witness = own3(vkeyWitnesses.get(i));
2040
2086
  const publicKey = own3(witness.vkey());
2041
2087
  const keyHash = own3(publicKey.hash()).to_hex();
2042
- if (!publicKey.verify((0, import_core_utils2.fromHex)(txHash), own3(witness.ed25519_signature()))) {
2088
+ if (!verifyEd25519(
2089
+ publicKey,
2090
+ (0, import_core_utils2.fromHex)(txHash),
2091
+ own3(witness.ed25519_signature())
2092
+ )) {
2043
2093
  throw new Error(`Invalid vkey witness. Key hash: ${keyHash}`);
2044
2094
  }
2045
2095
  keyHashes2.push(keyHash);
@@ -2880,210 +2930,212 @@ var import_core_utils3 = require("@lucid-evolution/core-utils");
2880
2930
  var import_utils9 = require("@lucid-evolution/utils");
2881
2931
 
2882
2932
  // src/internal/koios.ts
2883
- var import_platform3 = require("@effect/platform");
2884
- var import_effect7 = require("effect");
2933
+ var FetchHttpClient2 = __toESM(require("@effect/platform/FetchHttpClient"), 1);
2934
+ var Effect3 = __toESM(require("effect/Effect"), 1);
2935
+ var S4 = __toESM(require("effect/Schema"), 1);
2936
+ var import_Function4 = require("effect/Function");
2885
2937
  var import_utils8 = require("@lucid-evolution/utils");
2886
- var ProtocolParametersSchema2 = import_effect7.Schema.Struct({
2887
- pvt_motion_no_confidence: import_effect7.Schema.Number,
2888
- pvt_committee_normal: import_effect7.Schema.Number,
2889
- pvt_committee_no_confidence: import_effect7.Schema.Number,
2890
- pvt_hard_fork_initiation: import_effect7.Schema.Number,
2891
- pvtpp_security_group: import_effect7.Schema.Number,
2892
- dvt_motion_no_confidence: import_effect7.Schema.Number,
2893
- dvt_committee_normal: import_effect7.Schema.Number,
2894
- dvt_committee_no_confidence: import_effect7.Schema.Number,
2895
- dvt_update_to_constitution: import_effect7.Schema.Number,
2896
- dvt_hard_fork_initiation: import_effect7.Schema.Number,
2897
- dvt_p_p_network_group: import_effect7.Schema.Number,
2898
- dvt_p_p_economic_group: import_effect7.Schema.Number,
2899
- dvt_p_p_technical_group: import_effect7.Schema.Number,
2900
- dvt_p_p_gov_group: import_effect7.Schema.Number,
2901
- dvt_treasury_withdrawal: import_effect7.Schema.Number,
2902
- committee_min_size: import_effect7.Schema.Number,
2903
- committee_max_term_length: import_effect7.Schema.Number,
2904
- gov_action_lifetime: import_effect7.Schema.Number,
2905
- gov_action_deposit: import_effect7.Schema.NumberFromString,
2906
- drep_deposit: import_effect7.Schema.NumberFromString,
2907
- drep_activity: import_effect7.Schema.Number,
2908
- min_fee_ref_script_cost_per_byte: import_effect7.Schema.Number,
2909
- epoch_no: import_effect7.Schema.Number,
2910
- min_fee_a: import_effect7.Schema.Number,
2911
- min_fee_b: import_effect7.Schema.Number,
2912
- max_block_size: import_effect7.Schema.Number,
2913
- max_tx_size: import_effect7.Schema.Number,
2914
- max_bh_size: import_effect7.Schema.Number,
2915
- key_deposit: import_effect7.Schema.BigInt,
2916
- pool_deposit: import_effect7.Schema.BigInt,
2917
- max_epoch: import_effect7.Schema.Number,
2918
- optimal_pool_count: import_effect7.Schema.Number,
2919
- influence: import_effect7.Schema.Number,
2920
- monetary_expand_rate: import_effect7.Schema.Number,
2921
- treasury_growth_rate: import_effect7.Schema.Number,
2922
- decentralisation: import_effect7.Schema.Number,
2923
- extra_entropy: import_effect7.Schema.NullOr(import_effect7.Schema.String),
2924
- protocol_major: import_effect7.Schema.Number,
2925
- protocol_minor: import_effect7.Schema.Number,
2926
- min_utxo_value: import_effect7.Schema.String,
2927
- min_pool_cost: import_effect7.Schema.String,
2928
- nonce: import_effect7.Schema.String,
2929
- block_hash: import_effect7.Schema.NullOr(import_effect7.Schema.String),
2930
- cost_models: import_effect7.Schema.Struct({
2931
- PlutusV1: import_effect7.Schema.Array(import_effect7.Schema.Number),
2932
- PlutusV2: import_effect7.Schema.Array(import_effect7.Schema.Number),
2933
- PlutusV3: import_effect7.Schema.Array(import_effect7.Schema.Number)
2938
+ var ProtocolParametersSchema2 = S4.Struct({
2939
+ pvt_motion_no_confidence: S4.Number,
2940
+ pvt_committee_normal: S4.Number,
2941
+ pvt_committee_no_confidence: S4.Number,
2942
+ pvt_hard_fork_initiation: S4.Number,
2943
+ pvtpp_security_group: S4.Number,
2944
+ dvt_motion_no_confidence: S4.Number,
2945
+ dvt_committee_normal: S4.Number,
2946
+ dvt_committee_no_confidence: S4.Number,
2947
+ dvt_update_to_constitution: S4.Number,
2948
+ dvt_hard_fork_initiation: S4.Number,
2949
+ dvt_p_p_network_group: S4.Number,
2950
+ dvt_p_p_economic_group: S4.Number,
2951
+ dvt_p_p_technical_group: S4.Number,
2952
+ dvt_p_p_gov_group: S4.Number,
2953
+ dvt_treasury_withdrawal: S4.Number,
2954
+ committee_min_size: S4.Number,
2955
+ committee_max_term_length: S4.Number,
2956
+ gov_action_lifetime: S4.Number,
2957
+ gov_action_deposit: S4.NumberFromString,
2958
+ drep_deposit: S4.NumberFromString,
2959
+ drep_activity: S4.Number,
2960
+ min_fee_ref_script_cost_per_byte: S4.Number,
2961
+ epoch_no: S4.Number,
2962
+ min_fee_a: S4.Number,
2963
+ min_fee_b: S4.Number,
2964
+ max_block_size: S4.Number,
2965
+ max_tx_size: S4.Number,
2966
+ max_bh_size: S4.Number,
2967
+ key_deposit: S4.BigInt,
2968
+ pool_deposit: S4.BigInt,
2969
+ max_epoch: S4.Number,
2970
+ optimal_pool_count: S4.Number,
2971
+ influence: S4.Number,
2972
+ monetary_expand_rate: S4.Number,
2973
+ treasury_growth_rate: S4.Number,
2974
+ decentralisation: S4.Number,
2975
+ extra_entropy: S4.NullOr(S4.String),
2976
+ protocol_major: S4.Number,
2977
+ protocol_minor: S4.Number,
2978
+ min_utxo_value: S4.String,
2979
+ min_pool_cost: S4.String,
2980
+ nonce: S4.String,
2981
+ block_hash: S4.NullOr(S4.String),
2982
+ cost_models: S4.Struct({
2983
+ PlutusV1: S4.Array(S4.Number),
2984
+ PlutusV2: S4.Array(S4.Number),
2985
+ PlutusV3: S4.Array(S4.Number)
2934
2986
  }),
2935
- price_mem: import_effect7.Schema.Number,
2936
- price_step: import_effect7.Schema.Number,
2937
- max_tx_ex_mem: import_effect7.Schema.BigIntFromNumber,
2938
- max_tx_ex_steps: import_effect7.Schema.BigIntFromNumber,
2939
- max_block_ex_mem: import_effect7.Schema.Number,
2940
- max_block_ex_steps: import_effect7.Schema.Number,
2941
- max_val_size: import_effect7.Schema.Number,
2942
- collateral_percent: import_effect7.Schema.Number,
2943
- max_collateral_inputs: import_effect7.Schema.Number,
2944
- coins_per_utxo_size: import_effect7.Schema.BigInt
2987
+ price_mem: S4.Number,
2988
+ price_step: S4.Number,
2989
+ max_tx_ex_mem: S4.BigIntFromNumber,
2990
+ max_tx_ex_steps: S4.BigIntFromNumber,
2991
+ max_block_ex_mem: S4.Number,
2992
+ max_block_ex_steps: S4.Number,
2993
+ max_val_size: S4.Number,
2994
+ collateral_percent: S4.Number,
2995
+ max_collateral_inputs: S4.Number,
2996
+ coins_per_utxo_size: S4.BigInt
2945
2997
  });
2946
- var TotalsSchema = import_effect7.Schema.Struct({
2947
- treasury: import_effect7.Schema.String
2998
+ var TotalsSchema = S4.Struct({
2999
+ treasury: S4.String
2948
3000
  });
2949
- var AssetSchema = import_effect7.Schema.Struct({
2950
- policy_id: import_effect7.Schema.String,
2951
- asset_name: import_effect7.Schema.NullOr(import_effect7.Schema.String),
2952
- fingerprint: import_effect7.Schema.String,
2953
- decimals: import_effect7.Schema.Number,
2954
- quantity: import_effect7.Schema.String
3001
+ var AssetSchema = S4.Struct({
3002
+ policy_id: S4.String,
3003
+ asset_name: S4.NullOr(S4.String),
3004
+ fingerprint: S4.String,
3005
+ decimals: S4.Number,
3006
+ quantity: S4.String
2955
3007
  });
2956
- var ReferenceScriptSchema = import_effect7.Schema.Struct({
2957
- hash: import_effect7.Schema.NullOr(import_effect7.Schema.String),
2958
- size: import_effect7.Schema.NullOr(import_effect7.Schema.Number),
2959
- type: import_effect7.Schema.NullOr(import_effect7.Schema.String),
2960
- bytes: import_effect7.Schema.NullOr(import_effect7.Schema.String),
2961
- value: import_effect7.Schema.NullOr(import_effect7.Schema.Object)
3008
+ var ReferenceScriptSchema = S4.Struct({
3009
+ hash: S4.NullOr(S4.String),
3010
+ size: S4.NullOr(S4.Number),
3011
+ type: S4.NullOr(S4.String),
3012
+ bytes: S4.NullOr(S4.String),
3013
+ value: S4.NullOr(S4.Object)
2962
3014
  });
2963
- var UTxOSchema2 = import_effect7.Schema.Struct({
2964
- tx_hash: import_effect7.Schema.String,
2965
- tx_index: import_effect7.Schema.Number,
2966
- block_time: import_effect7.Schema.Number,
2967
- block_height: import_effect7.Schema.NullOr(import_effect7.Schema.Number),
2968
- value: import_effect7.Schema.String,
2969
- datum_hash: import_effect7.Schema.NullOr(import_effect7.Schema.String),
2970
- inline_datum: import_effect7.Schema.NullOr(
2971
- import_effect7.Schema.Struct({
2972
- bytes: import_effect7.Schema.String,
2973
- value: import_effect7.Schema.Object
3015
+ var UTxOSchema2 = S4.Struct({
3016
+ tx_hash: S4.String,
3017
+ tx_index: S4.Number,
3018
+ block_time: S4.Number,
3019
+ block_height: S4.NullOr(S4.Number),
3020
+ value: S4.String,
3021
+ datum_hash: S4.NullOr(S4.String),
3022
+ inline_datum: S4.NullOr(
3023
+ S4.Struct({
3024
+ bytes: S4.String,
3025
+ value: S4.Object
2974
3026
  })
2975
3027
  ),
2976
- reference_script: import_effect7.Schema.NullOr(ReferenceScriptSchema),
2977
- asset_list: import_effect7.Schema.NullOr(import_effect7.Schema.Array(AssetSchema))
3028
+ reference_script: S4.NullOr(ReferenceScriptSchema),
3029
+ asset_list: S4.NullOr(S4.Array(AssetSchema))
2978
3030
  });
2979
- var AddressInfoSchema = import_effect7.Schema.Array(
2980
- import_effect7.Schema.NullishOr(
2981
- import_effect7.Schema.Struct({
2982
- address: import_effect7.Schema.String,
2983
- balance: import_effect7.Schema.String,
2984
- stake_address: import_effect7.Schema.NullOr(import_effect7.Schema.String),
2985
- script_address: import_effect7.Schema.Boolean,
2986
- utxo_set: import_effect7.Schema.Array(UTxOSchema2)
3031
+ var AddressInfoSchema = S4.Array(
3032
+ S4.NullishOr(
3033
+ S4.Struct({
3034
+ address: S4.String,
3035
+ balance: S4.String,
3036
+ stake_address: S4.NullOr(S4.String),
3037
+ script_address: S4.Boolean,
3038
+ utxo_set: S4.Array(UTxOSchema2)
2987
3039
  })
2988
3040
  )
2989
3041
  );
2990
- var InputOutputSchema = import_effect7.Schema.Struct({
2991
- payment_addr: import_effect7.Schema.Struct({
2992
- bech32: import_effect7.Schema.String,
2993
- cred: import_effect7.Schema.String
3042
+ var InputOutputSchema = S4.Struct({
3043
+ payment_addr: S4.Struct({
3044
+ bech32: S4.String,
3045
+ cred: S4.String
2994
3046
  }),
2995
- stake_addr: import_effect7.Schema.NullOr(import_effect7.Schema.String),
2996
- tx_hash: import_effect7.Schema.String,
2997
- tx_index: import_effect7.Schema.Number,
2998
- value: import_effect7.Schema.String,
2999
- datum_hash: import_effect7.Schema.NullOr(import_effect7.Schema.String),
3000
- inline_datum: import_effect7.Schema.NullOr(
3001
- import_effect7.Schema.Struct({
3002
- bytes: import_effect7.Schema.String,
3003
- value: import_effect7.Schema.Object
3047
+ stake_addr: S4.NullOr(S4.String),
3048
+ tx_hash: S4.String,
3049
+ tx_index: S4.Number,
3050
+ value: S4.String,
3051
+ datum_hash: S4.NullOr(S4.String),
3052
+ inline_datum: S4.NullOr(
3053
+ S4.Struct({
3054
+ bytes: S4.String,
3055
+ value: S4.Object
3004
3056
  })
3005
3057
  ),
3006
- reference_script: import_effect7.Schema.NullOr(ReferenceScriptSchema),
3007
- asset_list: import_effect7.Schema.Array(AssetSchema)
3058
+ reference_script: S4.NullOr(ReferenceScriptSchema),
3059
+ asset_list: S4.Array(AssetSchema)
3008
3060
  });
3009
- var TxInfoSchema = import_effect7.Schema.Struct({
3010
- tx_hash: import_effect7.Schema.String,
3011
- block_hash: import_effect7.Schema.String,
3012
- block_height: import_effect7.Schema.Number,
3013
- epoch_no: import_effect7.Schema.Number,
3014
- epoch_slot: import_effect7.Schema.Number,
3015
- absolute_slot: import_effect7.Schema.Number,
3016
- tx_timestamp: import_effect7.Schema.Number,
3017
- tx_block_index: import_effect7.Schema.Number,
3018
- tx_size: import_effect7.Schema.Number,
3019
- total_output: import_effect7.Schema.String,
3020
- fee: import_effect7.Schema.String,
3021
- treasury_donation: import_effect7.Schema.String,
3022
- deposit: import_effect7.Schema.String,
3023
- invalid_before: import_effect7.Schema.NullOr(import_effect7.Schema.String),
3024
- invalid_after: import_effect7.Schema.NullOr(import_effect7.Schema.String),
3025
- collateral_inputs: import_effect7.Schema.NullOr(import_effect7.Schema.Array(InputOutputSchema)),
3026
- collateral_output: import_effect7.Schema.NullOr(InputOutputSchema),
3027
- reference_inputs: import_effect7.Schema.NullOr(import_effect7.Schema.Array(InputOutputSchema)),
3028
- inputs: import_effect7.Schema.Array(InputOutputSchema),
3029
- outputs: import_effect7.Schema.Array(InputOutputSchema),
3030
- withdrawals: import_effect7.Schema.NullOr(
3031
- import_effect7.Schema.Array(
3032
- import_effect7.Schema.Struct({
3033
- amount: import_effect7.Schema.String,
3034
- stake_addr: import_effect7.Schema.String
3061
+ var TxInfoSchema = S4.Struct({
3062
+ tx_hash: S4.String,
3063
+ block_hash: S4.String,
3064
+ block_height: S4.Number,
3065
+ epoch_no: S4.Number,
3066
+ epoch_slot: S4.Number,
3067
+ absolute_slot: S4.Number,
3068
+ tx_timestamp: S4.Number,
3069
+ tx_block_index: S4.Number,
3070
+ tx_size: S4.Number,
3071
+ total_output: S4.String,
3072
+ fee: S4.String,
3073
+ treasury_donation: S4.String,
3074
+ deposit: S4.String,
3075
+ invalid_before: S4.NullOr(S4.String),
3076
+ invalid_after: S4.NullOr(S4.String),
3077
+ collateral_inputs: S4.NullOr(S4.Array(InputOutputSchema)),
3078
+ collateral_output: S4.NullOr(InputOutputSchema),
3079
+ reference_inputs: S4.NullOr(S4.Array(InputOutputSchema)),
3080
+ inputs: S4.Array(InputOutputSchema),
3081
+ outputs: S4.Array(InputOutputSchema),
3082
+ withdrawals: S4.NullOr(
3083
+ S4.Array(
3084
+ S4.Struct({
3085
+ amount: S4.String,
3086
+ stake_addr: S4.String
3035
3087
  })
3036
3088
  )
3037
3089
  ),
3038
- assets_minted: import_effect7.Schema.NullOr(import_effect7.Schema.Array(AssetSchema)),
3039
- metadata: import_effect7.Schema.NullOr(import_effect7.Schema.Object),
3040
- certificates: import_effect7.Schema.NullOr(
3041
- import_effect7.Schema.Array(
3042
- import_effect7.Schema.Struct({
3043
- index: import_effect7.Schema.Number,
3044
- type: import_effect7.Schema.String,
3045
- info: import_effect7.Schema.NullOr(import_effect7.Schema.Object)
3090
+ assets_minted: S4.NullOr(S4.Array(AssetSchema)),
3091
+ metadata: S4.NullOr(S4.Object),
3092
+ certificates: S4.NullOr(
3093
+ S4.Array(
3094
+ S4.Struct({
3095
+ index: S4.Number,
3096
+ type: S4.String,
3097
+ info: S4.NullOr(S4.Object)
3046
3098
  })
3047
3099
  )
3048
3100
  ),
3049
- native_scripts: import_effect7.Schema.NullOr(
3050
- import_effect7.Schema.Array(
3051
- import_effect7.Schema.Struct({
3052
- script_hash: import_effect7.Schema.String,
3053
- script_json: import_effect7.Schema.Object
3101
+ native_scripts: S4.NullOr(
3102
+ S4.Array(
3103
+ S4.Struct({
3104
+ script_hash: S4.String,
3105
+ script_json: S4.Object
3054
3106
  })
3055
3107
  )
3056
3108
  ),
3057
- plutus_contracts: import_effect7.Schema.NullOr(
3058
- import_effect7.Schema.Array(
3059
- import_effect7.Schema.Struct({
3060
- address: import_effect7.Schema.String,
3061
- spends_input: import_effect7.Schema.NullOr(
3062
- import_effect7.Schema.Struct({
3063
- tx_hash: import_effect7.Schema.String,
3064
- tx_index: import_effect7.Schema.Number
3109
+ plutus_contracts: S4.NullOr(
3110
+ S4.Array(
3111
+ S4.Struct({
3112
+ address: S4.String,
3113
+ spends_input: S4.NullOr(
3114
+ S4.Struct({
3115
+ tx_hash: S4.String,
3116
+ tx_index: S4.Number
3065
3117
  })
3066
3118
  ),
3067
- script_hash: import_effect7.Schema.String,
3068
- bytecode: import_effect7.Schema.String,
3069
- size: import_effect7.Schema.Number,
3070
- valid_contract: import_effect7.Schema.Boolean,
3071
- input: import_effect7.Schema.Struct({
3072
- redeemer: import_effect7.Schema.Struct({
3073
- purpose: import_effect7.Schema.Literal("spend", "mint", "cert", "reward"),
3074
- fee: import_effect7.Schema.String,
3075
- unit: import_effect7.Schema.Struct({
3076
- steps: import_effect7.Schema.String,
3077
- mem: import_effect7.Schema.String
3119
+ script_hash: S4.String,
3120
+ bytecode: S4.String,
3121
+ size: S4.Number,
3122
+ valid_contract: S4.Boolean,
3123
+ input: S4.Struct({
3124
+ redeemer: S4.Struct({
3125
+ purpose: S4.Literal("spend", "mint", "cert", "reward"),
3126
+ fee: S4.String,
3127
+ unit: S4.Struct({
3128
+ steps: S4.String,
3129
+ mem: S4.String
3078
3130
  }),
3079
- datum: import_effect7.Schema.Struct({
3080
- hash: import_effect7.Schema.NullOr(import_effect7.Schema.String),
3081
- value: import_effect7.Schema.NullOr(import_effect7.Schema.Object)
3131
+ datum: S4.Struct({
3132
+ hash: S4.NullOr(S4.String),
3133
+ value: S4.NullOr(S4.Object)
3082
3134
  })
3083
3135
  }),
3084
- datum: import_effect7.Schema.Struct({
3085
- hash: import_effect7.Schema.NullOr(import_effect7.Schema.String),
3086
- value: import_effect7.Schema.NullOr(import_effect7.Schema.Object)
3136
+ datum: S4.Struct({
3137
+ hash: S4.NullOr(S4.String),
3138
+ value: S4.NullOr(S4.Object)
3087
3139
  })
3088
3140
  })
3089
3141
  })
@@ -3091,28 +3143,28 @@ var TxInfoSchema = import_effect7.Schema.Struct({
3091
3143
  ),
3092
3144
  //TODO: add S.Struct
3093
3145
  // https://preprod.koios.rest/#post-/tx_info
3094
- voting_procedures: import_effect7.Schema.Array(import_effect7.Schema.Object),
3146
+ voting_procedures: S4.Array(S4.Object),
3095
3147
  //TODO: add S.Struct
3096
3148
  // https://preprod.koios.rest/#post-/tx_info
3097
- proposal_procedures: import_effect7.Schema.Object
3149
+ proposal_procedures: S4.Object
3098
3150
  });
3099
- var TxHashSchema = import_effect7.Schema.String;
3100
- var AssetAddressSchema = import_effect7.Schema.Struct({
3101
- payment_address: import_effect7.Schema.String,
3102
- stake_address: import_effect7.Schema.NullOr(import_effect7.Schema.String),
3103
- quantity: import_effect7.Schema.String
3151
+ var TxHashSchema = S4.String;
3152
+ var AssetAddressSchema = S4.Struct({
3153
+ payment_address: S4.String,
3154
+ stake_address: S4.NullOr(S4.String),
3155
+ quantity: S4.String
3104
3156
  });
3105
- var AccountInfoSchema = import_effect7.Schema.Struct({
3106
- status: import_effect7.Schema.Literal("registered", "not registered"),
3107
- delegated_pool: import_effect7.Schema.NullOr(import_effect7.Schema.String),
3108
- rewards_available: import_effect7.Schema.String
3157
+ var AccountInfoSchema = S4.Struct({
3158
+ status: S4.Literal("registered", "not registered"),
3159
+ delegated_pool: S4.NullOr(S4.String),
3160
+ rewards_available: S4.String
3109
3161
  });
3110
- var TxStatusSchema = import_effect7.Schema.Struct({
3111
- tx_hash: import_effect7.Schema.String,
3112
- num_confirmations: import_effect7.Schema.NullOr(import_effect7.Schema.Number)
3162
+ var TxStatusSchema = S4.Struct({
3163
+ tx_hash: S4.String,
3164
+ num_confirmations: S4.NullOr(S4.Number)
3113
3165
  });
3114
- var DatumInfo = import_effect7.Schema.Struct({
3115
- bytes: import_effect7.Schema.String
3166
+ var DatumInfo = S4.Struct({
3167
+ bytes: S4.String
3116
3168
  });
3117
3169
  var toUTxO = (koiosUTxO, address) => ({
3118
3170
  txHash: koiosUTxO.tx_hash,
@@ -3161,23 +3213,27 @@ var getUtxosEffect = (baseUrl, addressOrCredential, headers) => {
3161
3213
  _addresses: [addressOrCredential]
3162
3214
  };
3163
3215
  const schema = AddressInfoSchema;
3164
- const result = (0, import_effect7.pipe)(
3165
- import_effect7.Effect.if(typeof addressOrCredential === "string", {
3166
- onFalse: () => import_effect7.Effect.fail("Credential Type is not supported in Koios yet."),
3216
+ const result = (0, import_Function4.pipe)(
3217
+ Effect3.if(typeof addressOrCredential === "string", {
3218
+ onFalse: () => Effect3.fail("Credential Type is not supported in Koios yet."),
3167
3219
  onTrue: () => makePostAsJson(url, body, schema, headers)
3168
3220
  }),
3169
- import_effect7.Effect.map(
3221
+ Effect3.map(
3170
3222
  ([result2]) => result2 ? result2.utxo_set.map((koiosUtxo) => toUTxO(koiosUtxo, result2.address)) : []
3171
3223
  ),
3172
- import_effect7.Effect.provide(import_platform3.FetchHttpClient.layer)
3224
+ Effect3.provide(FetchHttpClient2.layer)
3173
3225
  );
3174
3226
  return result;
3175
3227
  };
3176
3228
 
3177
3229
  // src/koios.ts
3178
- var import_effect8 = require("effect");
3179
- var import_platform4 = require("@effect/platform");
3180
- var KoiosError = class extends import_effect8.Data.TaggedError("KoiosError") {
3230
+ var Data = __toESM(require("effect/Data"), 1);
3231
+ var Effect4 = __toESM(require("effect/Effect"), 1);
3232
+ var Schedule2 = __toESM(require("effect/Schedule"), 1);
3233
+ var S5 = __toESM(require("effect/Schema"), 1);
3234
+ var import_Function5 = require("effect/Function");
3235
+ var FetchHttpClient3 = __toESM(require("@effect/platform/FetchHttpClient"), 1);
3236
+ var KoiosError = class extends Data.TaggedError("KoiosError") {
3181
3237
  get message() {
3182
3238
  return `${this.cause}`;
3183
3239
  }
@@ -3191,15 +3247,15 @@ var Koios = class {
3191
3247
  }
3192
3248
  async getProtocolParameters() {
3193
3249
  const url = `${this.baseUrl}/epoch_params?limit=1`;
3194
- const schema = import_effect8.Schema.Array(ProtocolParametersSchema2);
3250
+ const schema = S5.Array(ProtocolParametersSchema2);
3195
3251
  const bearerToken = this.token ? { Authorization: `Bearer ${this.token}` } : void 0;
3196
- const [result] = await (0, import_effect8.pipe)(
3252
+ const [result] = await (0, import_Function5.pipe)(
3197
3253
  makeGet(url, schema, bearerToken),
3198
3254
  // Allows for dependency injection and easier testing
3199
- import_effect8.Effect.provide(import_platform4.FetchHttpClient.layer),
3200
- import_effect8.Effect.timeout(1e4),
3201
- import_effect8.Effect.catchAllCause((cause) => new KoiosError({ cause })),
3202
- import_effect8.Effect.runPromise
3255
+ Effect4.provide(FetchHttpClient3.layer),
3256
+ Effect4.timeout(1e4),
3257
+ Effect4.catchAllCause((cause) => new KoiosError({ cause })),
3258
+ Effect4.runPromise
3203
3259
  );
3204
3260
  return {
3205
3261
  protocolMajorVersion: result.protocol_major,
@@ -3229,43 +3285,43 @@ var Koios = class {
3229
3285
  }
3230
3286
  async getTreasury() {
3231
3287
  const url = `${this.baseUrl}/totals?order=epoch_no.desc&limit=1`;
3232
- const schema = import_effect8.Schema.Array(TotalsSchema);
3288
+ const schema = S5.Array(TotalsSchema);
3233
3289
  const bearerToken = this.token ? { Authorization: `Bearer ${this.token}` } : void 0;
3234
- const [result] = await (0, import_effect8.pipe)(
3290
+ const [result] = await (0, import_Function5.pipe)(
3235
3291
  makeGet(url, schema, bearerToken),
3236
- import_effect8.Effect.provide(import_platform4.FetchHttpClient.layer),
3237
- import_effect8.Effect.flatMap(
3238
- (result2) => result2.length === 0 ? import_effect8.Effect.fail("No totals found") : import_effect8.Effect.succeed(result2)
3292
+ Effect4.provide(FetchHttpClient3.layer),
3293
+ Effect4.flatMap(
3294
+ (result2) => result2.length === 0 ? Effect4.fail("No totals found") : Effect4.succeed(result2)
3239
3295
  ),
3240
- import_effect8.Effect.timeout(1e4),
3241
- import_effect8.Effect.catchAllCause((cause) => new KoiosError({ cause })),
3242
- import_effect8.Effect.runPromise
3296
+ Effect4.timeout(1e4),
3297
+ Effect4.catchAllCause((cause) => new KoiosError({ cause })),
3298
+ Effect4.runPromise
3243
3299
  );
3244
3300
  return BigInt(result.treasury);
3245
3301
  }
3246
3302
  async getUtxos(addressOrCredential) {
3247
3303
  const bearerToken = this.token ? { Authorization: `Bearer ${this.token}` } : void 0;
3248
- const result = await (0, import_effect8.pipe)(
3304
+ const result = await (0, import_Function5.pipe)(
3249
3305
  getUtxosEffect(this.baseUrl, addressOrCredential, bearerToken),
3250
- import_effect8.Effect.timeout(1e4),
3251
- import_effect8.Effect.catchAllCause((cause) => new KoiosError({ cause })),
3252
- import_effect8.Effect.runPromise
3306
+ Effect4.timeout(1e4),
3307
+ Effect4.catchAllCause((cause) => new KoiosError({ cause })),
3308
+ Effect4.runPromise
3253
3309
  );
3254
3310
  return result;
3255
3311
  }
3256
3312
  async getUtxosWithUnit(addressOrCredential, unit) {
3257
3313
  const bearerToken = this.token ? { Authorization: `Bearer ${this.token}` } : void 0;
3258
- const result = await (0, import_effect8.pipe)(
3314
+ const result = await (0, import_Function5.pipe)(
3259
3315
  getUtxosEffect(this.baseUrl, addressOrCredential, bearerToken),
3260
- import_effect8.Effect.map(
3316
+ Effect4.map(
3261
3317
  (utxos) => utxos.filter((utxo) => {
3262
3318
  const keys = Object.keys(utxo.assets);
3263
3319
  return keys.length > 0 && keys.includes(unit);
3264
3320
  })
3265
3321
  ),
3266
- import_effect8.Effect.timeout(1e4),
3267
- import_effect8.Effect.catchAllCause((cause) => new KoiosError({ cause })),
3268
- import_effect8.Effect.runPromise
3322
+ Effect4.timeout(1e4),
3323
+ Effect4.catchAllCause((cause) => new KoiosError({ cause })),
3324
+ Effect4.runPromise
3269
3325
  );
3270
3326
  return result;
3271
3327
  }
@@ -3273,35 +3329,35 @@ var Koios = class {
3273
3329
  let { policyId, assetName } = (0, import_utils9.fromUnit)(unit);
3274
3330
  const url = `${this.baseUrl}/asset_addresses?_asset_policy=${policyId}&_asset_name=${assetName}`;
3275
3331
  const bearerToken = this.token ? { Authorization: `Bearer ${this.token}` } : void 0;
3276
- const result = await (0, import_effect8.pipe)(
3277
- makeGet(url, import_effect8.Schema.Array(AssetAddressSchema), bearerToken),
3332
+ const result = await (0, import_Function5.pipe)(
3333
+ makeGet(url, S5.Array(AssetAddressSchema), bearerToken),
3278
3334
  // Allows for dependency injection and easier testing
3279
- import_effect8.Effect.provide(import_platform4.FetchHttpClient.layer),
3280
- import_effect8.Effect.flatMap(
3281
- (adresses) => adresses.length === 0 ? import_effect8.Effect.fail("Unit not found") : import_effect8.Effect.succeed(adresses)
3335
+ Effect4.provide(FetchHttpClient3.layer),
3336
+ Effect4.flatMap(
3337
+ (adresses) => adresses.length === 0 ? Effect4.fail("Unit not found") : Effect4.succeed(adresses)
3282
3338
  ),
3283
- import_effect8.Effect.flatMap(
3284
- (adresses) => adresses.length > 1 ? import_effect8.Effect.fail("Unit needs to be an NFT or only held by one address.") : import_effect8.Effect.succeed(adresses[0])
3339
+ Effect4.flatMap(
3340
+ (adresses) => adresses.length > 1 ? Effect4.fail("Unit needs to be an NFT or only held by one address.") : Effect4.succeed(adresses[0])
3285
3341
  ),
3286
- import_effect8.Effect.flatMap(
3342
+ Effect4.flatMap(
3287
3343
  (address) => getUtxosEffect(
3288
3344
  this.baseUrl,
3289
3345
  address.payment_address,
3290
3346
  bearerToken
3291
3347
  )
3292
3348
  ),
3293
- import_effect8.Effect.map(
3349
+ Effect4.map(
3294
3350
  (utxos) => utxos.filter((utxo) => {
3295
3351
  const keys = Object.keys(utxo.assets);
3296
3352
  return keys.length > 0 && keys.includes(unit);
3297
3353
  })
3298
3354
  ),
3299
- import_effect8.Effect.flatMap(
3300
- (utxos) => utxos.length > 1 ? import_effect8.Effect.fail("Unit needs to be an NFT or only held by one address.") : import_effect8.Effect.succeed(utxos[0])
3355
+ Effect4.flatMap(
3356
+ (utxos) => utxos.length > 1 ? Effect4.fail("Unit needs to be an NFT or only held by one address.") : Effect4.succeed(utxos[0])
3301
3357
  ),
3302
- import_effect8.Effect.timeout(1e4),
3303
- import_effect8.Effect.catchAllCause((cause) => new KoiosError({ cause })),
3304
- import_effect8.Effect.runPromise
3358
+ Effect4.timeout(1e4),
3359
+ Effect4.catchAllCause((cause) => new KoiosError({ cause })),
3360
+ Effect4.runPromise
3305
3361
  );
3306
3362
  return result;
3307
3363
  }
@@ -3312,15 +3368,15 @@ var Koios = class {
3312
3368
  _assets: true,
3313
3369
  _scripts: true
3314
3370
  };
3315
- const schema = import_effect8.Schema.Array(TxInfoSchema);
3371
+ const schema = S5.Array(TxInfoSchema);
3316
3372
  const bearerToken = this.token ? { Authorization: `Bearer ${this.token}` } : void 0;
3317
- const [result] = await (0, import_effect8.pipe)(
3373
+ const [result] = await (0, import_Function5.pipe)(
3318
3374
  makePostAsJson(url, body, schema, bearerToken),
3319
3375
  // Allows for dependency injection and easier testing
3320
- import_effect8.Effect.provide(import_platform4.FetchHttpClient.layer),
3321
- import_effect8.Effect.timeout(1e4),
3322
- import_effect8.Effect.catchAllCause((cause) => new KoiosError({ cause })),
3323
- import_effect8.Effect.runPromise
3376
+ Effect4.provide(FetchHttpClient3.layer),
3377
+ Effect4.timeout(1e4),
3378
+ Effect4.catchAllCause((cause) => new KoiosError({ cause })),
3379
+ Effect4.runPromise
3324
3380
  );
3325
3381
  if (result) {
3326
3382
  const utxos = result.outputs.map(
@@ -3354,18 +3410,18 @@ var Koios = class {
3354
3410
  };
3355
3411
  const url = `${this.baseUrl}/account_info`;
3356
3412
  const bearerToken = this.token ? { Authorization: `Bearer ${this.token}` } : void 0;
3357
- const result = await (0, import_effect8.pipe)(
3413
+ const result = await (0, import_Function5.pipe)(
3358
3414
  makePostAsJson(
3359
3415
  url,
3360
3416
  body,
3361
- import_effect8.Schema.Array(AccountInfoSchema),
3417
+ S5.Array(AccountInfoSchema),
3362
3418
  bearerToken
3363
3419
  ),
3364
3420
  // Allows for dependency injection and easier testing
3365
- import_effect8.Effect.provide(import_platform4.FetchHttpClient.layer),
3366
- import_effect8.Effect.timeout(1e4),
3367
- import_effect8.Effect.catchAllCause((cause) => new KoiosError({ cause })),
3368
- import_effect8.Effect.runPromise
3421
+ Effect4.provide(FetchHttpClient3.layer),
3422
+ Effect4.timeout(1e4),
3423
+ Effect4.catchAllCause((cause) => new KoiosError({ cause })),
3424
+ Effect4.runPromise
3369
3425
  );
3370
3426
  const account = result[0];
3371
3427
  if (!account) {
@@ -3387,21 +3443,21 @@ var Koios = class {
3387
3443
  _datum_hashes: [datumHash]
3388
3444
  };
3389
3445
  const bearerToken = this.token ? { Authorization: `Bearer ${this.token}` } : void 0;
3390
- const result = await (0, import_effect8.pipe)(
3446
+ const result = await (0, import_Function5.pipe)(
3391
3447
  makePostAsJson(
3392
3448
  url,
3393
3449
  body,
3394
- import_effect8.Schema.Array(DatumInfo),
3450
+ S5.Array(DatumInfo),
3395
3451
  bearerToken
3396
3452
  ),
3397
3453
  // Allows for dependency injection and easier testing
3398
- import_effect8.Effect.provide(import_platform4.FetchHttpClient.layer),
3399
- import_effect8.Effect.flatMap(
3400
- (result2) => result2.length === 0 ? import_effect8.Effect.fail("No Datum Found by Datum Hash") : import_effect8.Effect.succeed(result2[0])
3454
+ Effect4.provide(FetchHttpClient3.layer),
3455
+ Effect4.flatMap(
3456
+ (result2) => result2.length === 0 ? Effect4.fail("No Datum Found by Datum Hash") : Effect4.succeed(result2[0])
3401
3457
  ),
3402
- import_effect8.Effect.timeout(1e4),
3403
- import_effect8.Effect.catchAllCause((cause) => new KoiosError({ cause })),
3404
- import_effect8.Effect.runPromise
3458
+ Effect4.timeout(1e4),
3459
+ Effect4.catchAllCause((cause) => new KoiosError({ cause })),
3460
+ Effect4.runPromise
3405
3461
  );
3406
3462
  return result.bytes;
3407
3463
  }
@@ -3410,20 +3466,20 @@ var Koios = class {
3410
3466
  const body = {
3411
3467
  _tx_hashes: [txHash]
3412
3468
  };
3413
- const schema = import_effect8.Schema.Array(TxInfoSchema);
3469
+ const schema = S5.Array(TxInfoSchema);
3414
3470
  const bearerToken = this.token ? { Authorization: `Bearer ${this.token}` } : void 0;
3415
- const result = await (0, import_effect8.pipe)(
3471
+ const result = await (0, import_Function5.pipe)(
3416
3472
  makePostAsJson(url, body, schema, bearerToken),
3417
- import_effect8.Effect.repeat({
3418
- schedule: import_effect8.Schedule.exponential(checkInterval),
3473
+ Effect4.repeat({
3474
+ schedule: Schedule2.exponential(checkInterval),
3419
3475
  until: (result2) => result2.length > 0
3420
3476
  }),
3421
3477
  // Allows for dependency injection and easier testing
3422
- import_effect8.Effect.provide(import_platform4.FetchHttpClient.layer),
3423
- import_effect8.Effect.timeout(16e4),
3424
- import_effect8.Effect.orDie,
3425
- import_effect8.Effect.as(true),
3426
- import_effect8.Effect.runPromise
3478
+ Effect4.provide(FetchHttpClient3.layer),
3479
+ Effect4.timeout(16e4),
3480
+ Effect4.orDie,
3481
+ Effect4.as(true),
3482
+ Effect4.runPromise
3427
3483
  );
3428
3484
  return result;
3429
3485
  }
@@ -3443,7 +3499,7 @@ var Koios = class {
3443
3499
  `Could not fetch transaction status from Koios. Received status code: ${response.status}`
3444
3500
  );
3445
3501
  }
3446
- const result = import_effect8.Schema.decodeUnknownSync(import_effect8.Schema.Array(TxStatusSchema))(
3502
+ const result = S5.decodeUnknownSync(S5.Array(TxStatusSchema))(
3447
3503
  await response.json()
3448
3504
  );
3449
3505
  const status = result[0];
@@ -3464,13 +3520,13 @@ var Koios = class {
3464
3520
  const body = (0, import_core_utils3.fromHex)(tx);
3465
3521
  const schema = TxHashSchema;
3466
3522
  const bearerToken = this.token ? { Authorization: `Bearer ${this.token}` } : void 0;
3467
- const result = await (0, import_effect8.pipe)(
3523
+ const result = await (0, import_Function5.pipe)(
3468
3524
  makePostAsUint8Array(url, body, schema, bearerToken),
3469
3525
  // Allows for dependency injection and easier testing
3470
- import_effect8.Effect.provide(import_platform4.FetchHttpClient.layer),
3471
- import_effect8.Effect.timeout(1e4),
3472
- import_effect8.Effect.catchAllCause((cause) => new KoiosError({ cause })),
3473
- import_effect8.Effect.runPromise
3526
+ Effect4.provide(FetchHttpClient3.layer),
3527
+ Effect4.timeout(1e4),
3528
+ Effect4.catchAllCause((cause) => new KoiosError({ cause })),
3529
+ Effect4.runPromise
3474
3530
  );
3475
3531
  return result;
3476
3532
  }
@@ -3485,15 +3541,15 @@ var Koios = class {
3485
3541
  },
3486
3542
  id: null
3487
3543
  };
3488
- const schema = JSONRPCSchema(import_effect8.Schema.Array(RedeemerSchema));
3544
+ const schema = JSONRPCSchema(S5.Array(RedeemerSchema));
3489
3545
  const bearerToken = this.token ? { Authorization: `Bearer ${this.token}` } : void 0;
3490
- const { result } = await (0, import_effect8.pipe)(
3546
+ const { result } = await (0, import_Function5.pipe)(
3491
3547
  makePostAsJson(url, body, schema, bearerToken),
3492
3548
  // Allows for dependency injection and easier testing
3493
- import_effect8.Effect.provide(import_platform4.FetchHttpClient.layer),
3494
- import_effect8.Effect.timeout(1e4),
3495
- import_effect8.Effect.catchAllCause((cause) => new KoiosError({ cause })),
3496
- import_effect8.Effect.runPromise
3549
+ Effect4.provide(FetchHttpClient3.layer),
3550
+ Effect4.timeout(1e4),
3551
+ Effect4.catchAllCause((cause) => new KoiosError({ cause })),
3552
+ Effect4.runPromise
3497
3553
  );
3498
3554
  const evalRedeemers = result.map((item) => ({
3499
3555
  ex_units: {