@xyo-network/xl1-rpc 1.7.18 → 1.7.20

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 (133) hide show
  1. package/dist/neutral/index.mjs +195 -251
  2. package/dist/neutral/index.mjs.map +1 -1
  3. package/dist/neutral/provider/client/MemoryXyoClient.d.ts +4 -5
  4. package/dist/neutral/provider/client/MemoryXyoClient.d.ts.map +1 -1
  5. package/dist/neutral/provider/client/PermissionsStore/MemoryPermissionsStore.d.ts.map +1 -0
  6. package/dist/neutral/provider/client/PermissionsStore/PermissionsStore.d.ts.map +1 -0
  7. package/dist/neutral/provider/client/PermissionsStore/getPermissionsStoreFromTransport.d.ts.map +1 -0
  8. package/dist/neutral/provider/client/PermissionsStore/index.d.ts.map +1 -0
  9. package/dist/neutral/provider/client/PermissionsStore/spec/MemoryPermissionsStore.spec.d.ts.map +1 -0
  10. package/dist/neutral/provider/client/index.d.ts +1 -1
  11. package/dist/neutral/provider/client/index.d.ts.map +1 -1
  12. package/dist/neutral/provider/host/Abstract.d.ts +9 -7
  13. package/dist/neutral/provider/host/Abstract.d.ts.map +1 -1
  14. package/dist/neutral/provider/host/MemoryXyoGateway.d.ts +5 -17
  15. package/dist/neutral/provider/host/MemoryXyoGateway.d.ts.map +1 -1
  16. package/dist/neutral/provider/host/index.d.ts +0 -2
  17. package/dist/neutral/provider/host/index.d.ts.map +1 -1
  18. package/dist/neutral/provider/index.d.ts +1 -0
  19. package/dist/neutral/provider/index.d.ts.map +1 -1
  20. package/dist/neutral/provider/provider/RpcXyoConnection.d.ts +0 -3
  21. package/dist/neutral/provider/provider/RpcXyoConnection.d.ts.map +1 -1
  22. package/dist/neutral/provider/provider/XyoConnection.d.ts +2 -2
  23. package/dist/neutral/provider/provider/XyoConnection.d.ts.map +1 -1
  24. package/dist/neutral/provider/signer/JsonRpcXyoSigner.d.ts +1 -1
  25. package/dist/neutral/provider/signer/JsonRpcXyoSigner.d.ts.map +1 -1
  26. package/dist/neutral/types/XyoGatewayRpc.d.ts +1 -1
  27. package/dist/neutral/types/XyoGatewayRpc.d.ts.map +1 -1
  28. package/dist/neutral/types/schema/XyoGatewayRpcSchemas.d.ts +4 -3
  29. package/dist/neutral/types/schema/XyoGatewayRpcSchemas.d.ts.map +1 -1
  30. package/dist/neutral/types/schema/common/AddressSchema.d.ts +2 -1
  31. package/dist/neutral/types/schema/common/AddressSchema.d.ts.map +1 -1
  32. package/dist/neutral/types/schema/common/BigIntSchema.d.ts +1 -1
  33. package/dist/neutral/types/schema/common/BigIntSchema.d.ts.map +1 -1
  34. package/dist/neutral/types/schema/common/HashSchema.d.ts +2 -1
  35. package/dist/neutral/types/schema/common/HashSchema.d.ts.map +1 -1
  36. package/dist/neutral/types/schema/common/HexSchema.d.ts +2 -1
  37. package/dist/neutral/types/schema/common/HexSchema.d.ts.map +1 -1
  38. package/dist/neutral/types/schema/common/SequenceSchema.d.ts +4 -3
  39. package/dist/neutral/types/schema/common/SequenceSchema.d.ts.map +1 -1
  40. package/dist/neutral/types/schema/common/TransactionFees.d.ts +8 -8
  41. package/dist/node/index-node.mjs +197 -253
  42. package/dist/node/index-node.mjs.map +1 -1
  43. package/dist/node/provider/client/MemoryXyoClient.d.ts +4 -5
  44. package/dist/node/provider/client/MemoryXyoClient.d.ts.map +1 -1
  45. package/dist/node/provider/client/PermissionsStore/MemoryPermissionsStore.d.ts.map +1 -0
  46. package/dist/node/provider/client/PermissionsStore/PermissionsStore.d.ts.map +1 -0
  47. package/dist/node/provider/client/PermissionsStore/getPermissionsStoreFromTransport.d.ts.map +1 -0
  48. package/dist/node/provider/client/PermissionsStore/index.d.ts.map +1 -0
  49. package/dist/node/provider/client/PermissionsStore/spec/MemoryPermissionsStore.spec.d.ts.map +1 -0
  50. package/dist/node/provider/client/index.d.ts +1 -1
  51. package/dist/node/provider/client/index.d.ts.map +1 -1
  52. package/dist/node/provider/host/Abstract.d.ts +9 -7
  53. package/dist/node/provider/host/Abstract.d.ts.map +1 -1
  54. package/dist/node/provider/host/MemoryXyoGateway.d.ts +5 -17
  55. package/dist/node/provider/host/MemoryXyoGateway.d.ts.map +1 -1
  56. package/dist/node/provider/host/index.d.ts +0 -2
  57. package/dist/node/provider/host/index.d.ts.map +1 -1
  58. package/dist/node/provider/index.d.ts +1 -0
  59. package/dist/node/provider/index.d.ts.map +1 -1
  60. package/dist/node/provider/provider/RpcXyoConnection.d.ts +0 -3
  61. package/dist/node/provider/provider/RpcXyoConnection.d.ts.map +1 -1
  62. package/dist/node/provider/provider/XyoConnection.d.ts +2 -2
  63. package/dist/node/provider/provider/XyoConnection.d.ts.map +1 -1
  64. package/dist/node/provider/signer/JsonRpcXyoSigner.d.ts +1 -1
  65. package/dist/node/provider/signer/JsonRpcXyoSigner.d.ts.map +1 -1
  66. package/dist/node/types/XyoGatewayRpc.d.ts +1 -1
  67. package/dist/node/types/XyoGatewayRpc.d.ts.map +1 -1
  68. package/dist/node/types/schema/XyoGatewayRpcSchemas.d.ts +4 -3
  69. package/dist/node/types/schema/XyoGatewayRpcSchemas.d.ts.map +1 -1
  70. package/dist/node/types/schema/common/AddressSchema.d.ts +2 -1
  71. package/dist/node/types/schema/common/AddressSchema.d.ts.map +1 -1
  72. package/dist/node/types/schema/common/BigIntSchema.d.ts +1 -1
  73. package/dist/node/types/schema/common/BigIntSchema.d.ts.map +1 -1
  74. package/dist/node/types/schema/common/HashSchema.d.ts +2 -1
  75. package/dist/node/types/schema/common/HashSchema.d.ts.map +1 -1
  76. package/dist/node/types/schema/common/HexSchema.d.ts +2 -1
  77. package/dist/node/types/schema/common/HexSchema.d.ts.map +1 -1
  78. package/dist/node/types/schema/common/SequenceSchema.d.ts +4 -3
  79. package/dist/node/types/schema/common/SequenceSchema.d.ts.map +1 -1
  80. package/dist/node/types/schema/common/TransactionFees.d.ts +8 -8
  81. package/package.json +37 -36
  82. package/src/provider/client/MemoryXyoClient.ts +7 -6
  83. package/src/provider/client/PermissionsStore/getPermissionsStoreFromTransport.ts +12 -0
  84. package/src/provider/client/index.ts +1 -1
  85. package/src/provider/client/spec/MemoryXyoClient.spec.ts +13 -10
  86. package/src/provider/host/Abstract.ts +28 -7
  87. package/src/provider/host/MemoryXyoGateway.ts +8 -70
  88. package/src/provider/host/index.ts +0 -2
  89. package/src/provider/host/spec/MemoryXyoGateway.spec.ts +9 -50
  90. package/src/provider/index.ts +1 -0
  91. package/src/provider/provider/RpcXyoConnection.ts +0 -11
  92. package/src/provider/provider/XyoConnection.ts +2 -2
  93. package/src/provider/signer/JsonRpcXyoSigner.ts +1 -1
  94. package/src/provider/viewer/spec/JsonRpcXyoViewer.spec.ts +1 -1
  95. package/src/types/XyoGatewayRpc.ts +1 -1
  96. package/src/types/schema/XyoGatewayRpcSchemas.ts +2 -0
  97. package/src/types/schema/common/BigIntSchema.ts +5 -3
  98. package/src/types/schema/common/HashSchema.ts +2 -2
  99. package/dist/neutral/provider/client/XyoClient.d.ts +0 -6
  100. package/dist/neutral/provider/client/XyoClient.d.ts.map +0 -1
  101. package/dist/neutral/provider/host/JsonRpcXyoGateway.d.ts +0 -16
  102. package/dist/neutral/provider/host/JsonRpcXyoGateway.d.ts.map +0 -1
  103. package/dist/neutral/provider/host/PermissionsStore/MemoryPermissionsStore.d.ts.map +0 -1
  104. package/dist/neutral/provider/host/PermissionsStore/PermissionsStore.d.ts.map +0 -1
  105. package/dist/neutral/provider/host/PermissionsStore/getPermissionsStoreFromTransport.d.ts.map +0 -1
  106. package/dist/neutral/provider/host/PermissionsStore/index.d.ts.map +0 -1
  107. package/dist/neutral/provider/host/PermissionsStore/spec/MemoryPermissionsStore.spec.d.ts.map +0 -1
  108. package/dist/node/provider/client/XyoClient.d.ts +0 -6
  109. package/dist/node/provider/client/XyoClient.d.ts.map +0 -1
  110. package/dist/node/provider/host/JsonRpcXyoGateway.d.ts +0 -16
  111. package/dist/node/provider/host/JsonRpcXyoGateway.d.ts.map +0 -1
  112. package/dist/node/provider/host/PermissionsStore/MemoryPermissionsStore.d.ts.map +0 -1
  113. package/dist/node/provider/host/PermissionsStore/PermissionsStore.d.ts.map +0 -1
  114. package/dist/node/provider/host/PermissionsStore/getPermissionsStoreFromTransport.d.ts.map +0 -1
  115. package/dist/node/provider/host/PermissionsStore/index.d.ts.map +0 -1
  116. package/dist/node/provider/host/PermissionsStore/spec/MemoryPermissionsStore.spec.d.ts.map +0 -1
  117. package/src/provider/client/XyoClient.ts +0 -6
  118. package/src/provider/host/JsonRpcXyoGateway.ts +0 -41
  119. package/src/provider/host/PermissionsStore/getPermissionsStoreFromTransport.ts +0 -13
  120. /package/dist/neutral/provider/{host → client}/PermissionsStore/MemoryPermissionsStore.d.ts +0 -0
  121. /package/dist/neutral/provider/{host → client}/PermissionsStore/PermissionsStore.d.ts +0 -0
  122. /package/dist/neutral/provider/{host → client}/PermissionsStore/getPermissionsStoreFromTransport.d.ts +0 -0
  123. /package/dist/neutral/provider/{host → client}/PermissionsStore/index.d.ts +0 -0
  124. /package/dist/neutral/provider/{host → client}/PermissionsStore/spec/MemoryPermissionsStore.spec.d.ts +0 -0
  125. /package/dist/node/provider/{host → client}/PermissionsStore/MemoryPermissionsStore.d.ts +0 -0
  126. /package/dist/node/provider/{host → client}/PermissionsStore/PermissionsStore.d.ts +0 -0
  127. /package/dist/node/provider/{host → client}/PermissionsStore/getPermissionsStoreFromTransport.d.ts +0 -0
  128. /package/dist/node/provider/{host → client}/PermissionsStore/index.d.ts +0 -0
  129. /package/dist/node/provider/{host → client}/PermissionsStore/spec/MemoryPermissionsStore.spec.d.ts +0 -0
  130. /package/src/provider/{host → client}/PermissionsStore/MemoryPermissionsStore.ts +0 -0
  131. /package/src/provider/{host → client}/PermissionsStore/PermissionsStore.ts +0 -0
  132. /package/src/provider/{host → client}/PermissionsStore/index.ts +0 -0
  133. /package/src/provider/{host → client}/PermissionsStore/spec/MemoryPermissionsStore.spec.ts +0 -0
@@ -97,12 +97,12 @@ var AddressToStringSchema = z.string().toLowerCase().regex(CompiledAddressRegEx)
97
97
  var AddressFromStringSchema = z.string().toLowerCase().regex(CompiledAddressRegEx).transform((v) => toAddress(v));
98
98
 
99
99
  // src/types/schema/common/BigIntSchema.ts
100
- import { hexToBigInt, toHex } from "@xylabs/hex";
100
+ import { asHex, hexToBigInt, toHex } from "@xylabs/hex";
101
101
  import { HexRegEx } from "@xyo-network/payload-wrapper";
102
102
  import { z as z2 } from "zod";
103
103
  var CompiledHexRegEx = new RegExp(HexRegEx);
104
- var BigIntToStringSchema = z2.bigint().nonnegative().transform((x) => toHex(x));
105
- var BigIntFromStringSchema = z2.string().regex(CompiledHexRegEx).transform((x) => hexToBigInt(toHex(x)));
104
+ var BigIntToStringSchema = z2.bigint().nonnegative().transform((x) => asHex(toHex(x)));
105
+ var BigIntFromStringSchema = z2.string().regex(CompiledHexRegEx).transform((x) => hexToBigInt(asHex(toHex(x), true)));
106
106
 
107
107
  // src/types/schema/common/BlockBoundWitnessSchema.ts
108
108
  import { z as z9 } from "zod";
@@ -112,18 +112,18 @@ import { BoundWitnessSchema } from "@xyo-network/boundwitness-model";
112
112
  import { z as z8 } from "zod";
113
113
 
114
114
  // src/types/schema/common/HashSchema.ts
115
- import { toHex as toHex2 } from "@xylabs/hex";
115
+ import { asHash } from "@xylabs/hex";
116
116
  import { HashRegEx } from "@xyo-network/payload-wrapper";
117
117
  import { z as z3 } from "zod";
118
118
  var HashToStringSchema = z3.string().toLowerCase().regex(new RegExp(HashRegEx));
119
- var HashFromStringSchema = z3.string().toLowerCase().regex(new RegExp(HashRegEx)).transform((v) => toHex2(v));
119
+ var HashFromStringSchema = z3.string().toLowerCase().regex(new RegExp(HashRegEx)).transform((v) => asHash(v, true));
120
120
 
121
121
  // src/types/schema/common/HexSchema.ts
122
- import { toHex as toHex3 } from "@xylabs/hex";
122
+ import { toHex as toHex2 } from "@xylabs/hex";
123
123
  import { HexRegEx as HexRegEx2 } from "@xyo-network/payload-wrapper";
124
124
  import { z as z4 } from "zod";
125
125
  var HexToStringSchema = z4.string().toLowerCase().regex(new RegExp(HexRegEx2));
126
- var HexFromStringSchema = z4.string().toLowerCase().regex(new RegExp(HexRegEx2)).transform((v) => toHex3(v));
126
+ var HexFromStringSchema = z4.string().toLowerCase().regex(new RegExp(HexRegEx2)).transform((v) => toHex2(v));
127
127
 
128
128
  // src/types/schema/common/PayloadSchema.ts
129
129
  import { z as z7 } from "zod";
@@ -132,16 +132,16 @@ import { z as z7 } from "zod";
132
132
  import { z as z6 } from "zod";
133
133
 
134
134
  // src/types/schema/common/SequenceSchema.ts
135
- import { toHex as toHex4 } from "@xylabs/hex";
135
+ import { toHex as toHex3 } from "@xylabs/hex";
136
136
  import { SequenceConstants } from "@xyo-network/payload-model";
137
137
  import { HexRegExMinMax } from "@xyo-network/payload-wrapper";
138
138
  import { z as z5 } from "zod";
139
139
  var LocalSequenceRegex = new RegExp(HexRegExMinMax(SequenceConstants.localSequenceBytes, SequenceConstants.localSequenceBytes));
140
140
  var LocalSequenceToStringSchema = z5.string().regex(LocalSequenceRegex);
141
- var LocalSequenceFromStringSchema = z5.string().regex(LocalSequenceRegex).transform((v) => toHex4(v));
141
+ var LocalSequenceFromStringSchema = z5.string().regex(LocalSequenceRegex).transform((v) => toHex3(v));
142
142
  var QualifiedSequenceRegex = new RegExp(HexRegExMinMax(SequenceConstants.qualifiedSequenceBytes, SequenceConstants.qualifiedSequenceBytes));
143
143
  var QualifiedSequenceToStringSchema = z5.string().regex(QualifiedSequenceRegex);
144
- var QualifiedSequenceFromStringSchema = z5.string().regex(QualifiedSequenceRegex).transform((v) => toHex4(v));
144
+ var QualifiedSequenceFromStringSchema = z5.string().regex(QualifiedSequenceRegex).transform((v) => toHex3(v));
145
145
  var SequenceToStringSchema = z5.union([
146
146
  LocalSequenceToStringSchema,
147
147
  QualifiedSequenceToStringSchema
@@ -647,74 +647,68 @@ var InvokerPermissionSchema = PermissionSchema.extend({
647
647
  date: z20.number().optional()
648
648
  });
649
649
  var XyoGatewayRpcSchemas = {
650
+ /*
650
651
  xyoGateway_addConnection: {
651
652
  params: {
652
- to: z20.tuple([
653
- ChainConnectionSchema
654
- ]),
655
- from: z20.tuple([
656
- ChainConnectionSchema
657
- ])
653
+ to: z.tuple([ChainConnectionSchema]),
654
+ from: z.tuple([ChainConnectionSchema]),
658
655
  },
659
656
  result: {
660
- to: z20.tuple([
661
- z20.boolean()
662
- ]),
663
- from: z20.tuple([
664
- z20.boolean()
665
- ])
666
- }
657
+ to: z.tuple([z.boolean()]),
658
+ from: z.tuple([z.boolean()]),
659
+ },
667
660
  },
668
661
  xyoGateway_connections: {
669
662
  params: {
670
- to: z20.array(z20.any()).length(0).optional(),
671
- from: z20.array(z20.any()).length(0).optional()
663
+ to: z.array(z.any()).length(0).optional(),
664
+ from: z.array(z.any()).length(0).optional(),
672
665
  },
673
666
  result: {
674
- to: z20.array(ChainConnectionSchema),
675
- from: z20.array(ChainConnectionSchema)
676
- }
667
+ to: z.array(ChainConnectionSchema),
668
+ from: z.array(ChainConnectionSchema),
669
+ },
677
670
  },
678
671
  xyoGateway_getPermissions: {
679
672
  params: {
680
- to: z20.array(z20.any()).length(0).optional(),
681
- from: z20.array(z20.any()).length(0).optional()
673
+ to: z.array(z.any()).length(0).optional(),
674
+ from: z.array(z.any()).length(0).optional(),
682
675
  },
683
676
  result: {
684
- to: z20.array(InvokerPermissionSchema),
685
- from: z20.array(InvokerPermissionSchema)
686
- }
677
+ to: z.array(InvokerPermissionSchema),
678
+ from: z.array(InvokerPermissionSchema),
679
+ },
687
680
  },
688
681
  xyoGateway_requestPermissions: {
689
682
  params: {
690
- to: z20.array(PermissionSchema),
691
- from: z20.array(PermissionSchema)
683
+ to: z.array(PermissionSchema),
684
+ from: z.array(PermissionSchema),
692
685
  },
693
686
  result: {
694
- to: z20.boolean(),
695
- from: z20.boolean()
696
- }
687
+ to: z.boolean(),
688
+ from: z.boolean(),
689
+ },
697
690
  },
698
691
  xyoGateway_revokePermissions: {
699
692
  params: {
700
- to: z20.array(PermissionSchema),
701
- from: z20.array(PermissionSchema)
693
+ to: z.array(PermissionSchema),
694
+ from: z.array(PermissionSchema),
702
695
  },
703
696
  result: {
704
- to: z20.boolean(),
705
- from: z20.boolean()
706
- }
697
+ to: z.boolean(),
698
+ from: z.boolean(),
699
+ },
707
700
  },
708
701
  xyoGateway_activeConnection: {
709
702
  params: {
710
- from: z20.never(),
711
- to: z20.never()
703
+ from: z.never(),
704
+ to: z.never(),
712
705
  },
713
706
  result: {
714
- from: z20.string().optional(),
715
- to: z20.string().optional()
716
- }
707
+ from: z.string().optional(),
708
+ to: z.string().optional(),
709
+ },
717
710
  },
711
+ */
718
712
  xyoGateway_submitTransaction: {
719
713
  params: {
720
714
  from: z20.array(HydratedTransactionSchema),
@@ -761,49 +755,178 @@ var rpcEngineFromProvider = /* @__PURE__ */ __name((provider) => {
761
755
  return engine;
762
756
  }, "rpcEngineFromProvider");
763
757
 
764
- // src/provider/host/Abstract.ts
765
- import { assertEx } from "@xylabs/assert";
766
- var AbstractXyoGateway = class {
758
+ // src/provider/client/MemoryXyoClient.ts
759
+ var MemoryXyoClient = class {
767
760
  static {
768
- __name(this, "AbstractXyoGateway");
761
+ __name(this, "MemoryXyoClient");
769
762
  }
770
- async submitTransaction(elevatedPayloads, additionalPayloads) {
771
- return assertEx(assertEx(await this.activeConnection(), () => "No active connection available for transaction submission").submitTransaction, () => "Active connection does not support transaction submission")(elevatedPayloads, additionalPayloads);
763
+ gateways;
764
+ permissionsProvider;
765
+ constructor(gateways, permissionsProvider) {
766
+ this.gateways = gateways;
767
+ this.permissionsProvider = permissionsProvider;
772
768
  }
773
769
  };
774
770
 
775
- // src/provider/host/JsonRpcXyoGateway.ts
776
- var JsonRpcXyoGateway = class extends AbstractXyoGateway {
771
+ // src/provider/client/PermissionsStore/getPermissionsStoreFromTransport.ts
772
+ var getPermissionsStoreFromTransport = /* @__PURE__ */ __name((transport) => {
773
+ throw new Error("Not implemented");
774
+ }, "getPermissionsStoreFromTransport");
775
+
776
+ // src/provider/client/PermissionsStore/MemoryPermissionsStore.ts
777
+ var MemoryPermissionsStore = class {
777
778
  static {
778
- __name(this, "JsonRpcXyoGateway");
779
+ __name(this, "MemoryPermissionsStore");
779
780
  }
780
- _transport;
781
- constructor(transport) {
782
- super();
783
- this._transport = transport;
781
+ _store = /* @__PURE__ */ new Map();
782
+ getPermissions() {
783
+ return [
784
+ ...this._store.values()
785
+ ];
786
+ }
787
+ requestPermissions(permissions) {
788
+ const now = Date.now();
789
+ for (const perm of permissions) {
790
+ const key = this.getKey(perm);
791
+ this._store.set(key, {
792
+ ...perm,
793
+ date: now
794
+ });
795
+ }
796
+ return true;
797
+ }
798
+ revokePermissions(permissions) {
799
+ for (const perm of permissions) {
800
+ const key = this.getKey(perm);
801
+ this._store.delete(key);
802
+ }
803
+ return true;
804
+ }
805
+ getKey(permission) {
806
+ return `${permission.invoker}::${permission.capability}`;
807
+ }
808
+ };
809
+
810
+ // src/provider/host/Abstract.ts
811
+ import { assertEx } from "@xylabs/assert";
812
+ var AbstractXyoGateway = class {
813
+ static {
814
+ __name(this, "AbstractXyoGateway");
784
815
  }
785
816
  activeConnection() {
786
- throw new Error("Method not implemented.");
817
+ throw new Error("Deprecated method not implemented.");
787
818
  }
788
819
  addConnection(_config) {
789
- throw new Error("Method not implemented.");
820
+ throw new Error("Deprecated method not implemented.");
790
821
  }
791
822
  connections() {
792
- throw new Error("Method not implemented.");
823
+ throw new Error("Deprecated method not implemented.");
793
824
  }
794
825
  getPermissions() {
795
- return this._transport.sendRequest("xyoGateway_getPermissions");
826
+ throw new Error("Deprecated method not implemented.");
796
827
  }
797
- requestPermissions(permissions) {
798
- return this._transport.sendRequest("xyoGateway_requestPermissions", permissions);
828
+ requestPermissions(_permissions) {
829
+ throw new Error("Deprecated method not implemented.");
799
830
  }
800
- revokePermissions(permissions) {
801
- return this._transport.sendRequest("xyoGateway_revokePermissions", permissions);
831
+ revokePermissions(_permissions) {
832
+ throw new Error("Deprecated method not implemented.");
833
+ }
834
+ async submitTransaction(elevatedPayloads, additionalPayloads) {
835
+ return assertEx(assertEx(await this.connection(), () => "No active connection available for transaction submission").submitTransaction, () => "Active connection does not support transaction submission")(elevatedPayloads, additionalPayloads);
802
836
  }
803
837
  };
804
838
 
805
839
  // src/provider/host/MemoryXyoGateway.ts
806
- import { isDefined as isDefined2 } from "@xylabs/typeof";
840
+ var MemoryXyoGateway = class extends AbstractXyoGateway {
841
+ static {
842
+ __name(this, "MemoryXyoGateway");
843
+ }
844
+ _connection;
845
+ _signer;
846
+ constructor(signer, connection) {
847
+ super();
848
+ this._signer = signer;
849
+ this._connection = connection;
850
+ }
851
+ connection() {
852
+ return this._connection;
853
+ }
854
+ signer() {
855
+ return this._signer;
856
+ }
857
+ };
858
+
859
+ // src/provider/network/MemoryXyoNetwork.ts
860
+ import { isUndefined } from "@xylabs/typeof";
861
+ import { isNetworkStatus } from "@xyo-network/xl1-protocol";
862
+ import axios from "axios";
863
+
864
+ // src/provider/network/lib/FailedNetworkStatusPayloads.ts
865
+ import { NetworkStatusSchema } from "@xyo-network/xl1-protocol";
866
+ var unknownStatus = {
867
+ description: "Unknown Network Status",
868
+ schema: NetworkStatusSchema,
869
+ state: "unknown"
870
+ };
871
+ var errorStatus = {
872
+ description: "Error Fetching Network Status",
873
+ schema: NetworkStatusSchema,
874
+ state: "unknown"
875
+ };
876
+
877
+ // src/provider/network/lib/StatusNetworks.ts
878
+ var MainNetworkStats = {
879
+ id: "mainnet",
880
+ statusUrl: "https://xyo.network/chain-network-status-mainnet.json"
881
+ };
882
+ var SequenceNetworkStats = {
883
+ id: "sequence",
884
+ statusUrl: "https://beta.xyo.network/chain-network-status-sequence.json"
885
+ };
886
+ var LocalNetworkStats = {
887
+ id: "local",
888
+ statusUrl: "http://localhost:3002/chain-network-status-local.json"
889
+ };
890
+ var StatusNetworks = {
891
+ mainnet: MainNetworkStats,
892
+ sequence: SequenceNetworkStats,
893
+ local: LocalNetworkStats
894
+ };
895
+
896
+ // src/provider/network/MemoryXyoNetwork.ts
897
+ var MemoryXyoNetwork = class {
898
+ static {
899
+ __name(this, "MemoryXyoNetwork");
900
+ }
901
+ _networkId;
902
+ constructor(networkId) {
903
+ this._networkId = networkId;
904
+ }
905
+ async status() {
906
+ const statusNetwork = StatusNetworks[this._networkId];
907
+ if (isUndefined(statusNetwork)) {
908
+ throw new Error(`Unknown status network ID: ${this._networkId}`);
909
+ }
910
+ return await this.makeRequest(statusNetwork.statusUrl);
911
+ }
912
+ async makeRequest(url) {
913
+ try {
914
+ const response = await axios.get(url);
915
+ if (isNetworkStatus(response.data)) {
916
+ return response.data;
917
+ } else {
918
+ if (response.status === 200) {
919
+ console.error("Unknown network status response:", response.data);
920
+ return unknownStatus;
921
+ }
922
+ return errorStatus;
923
+ }
924
+ } catch (error) {
925
+ console.error("Error fetching network status:", error);
926
+ return errorStatus;
927
+ }
928
+ }
929
+ };
807
930
 
808
931
  // src/provider/provider/confirmSubmittedTransaction.ts
809
932
  import { delay } from "@xylabs/delay";
@@ -969,7 +1092,7 @@ var RpcXyoSigner = class {
969
1092
  from
970
1093
  ]);
971
1094
  }
972
- signTransaction(tx) {
1095
+ signTransaction(_tx) {
973
1096
  throw new Error("Method not implemented.");
974
1097
  }
975
1098
  };
@@ -1160,185 +1283,6 @@ var RpcXyoConnection = class extends XyoConnection {
1160
1283
  viewer
1161
1284
  });
1162
1285
  }
1163
- async confirm(tx, onConfirm, onTimeout) {
1164
- return await confirmTransaction(this, tx, onConfirm, onTimeout);
1165
- }
1166
- };
1167
-
1168
- // src/provider/host/MemoryXyoGateway.ts
1169
- var MemoryXyoGateway = class extends AbstractXyoGateway {
1170
- static {
1171
- __name(this, "MemoryXyoGateway");
1172
- }
1173
- _activeConnectionId;
1174
- _connections = /* @__PURE__ */ new Map();
1175
- _permissionsStore;
1176
- _signer;
1177
- constructor(signer, permissionsStore) {
1178
- super();
1179
- this._signer = signer;
1180
- this._permissionsStore = permissionsStore;
1181
- }
1182
- get signer() {
1183
- return this._signer;
1184
- }
1185
- activeConnection() {
1186
- return isDefined2(this._activeConnectionId) ? this._connections.get(this._activeConnectionId) : void 0;
1187
- }
1188
- addConnection(configOrName, connection) {
1189
- if (typeof configOrName === "string" && connection !== void 0) {
1190
- const name = configOrName;
1191
- this._connections.set(name, connection);
1192
- this.setActiveConnectionIdIfUndefined(name);
1193
- return connection;
1194
- } else if (typeof configOrName === "object") {
1195
- const config = configOrName;
1196
- const { name, dataLakeEndpoint, networkEndpoint } = config;
1197
- const rpcConnection = new RpcXyoConnection({
1198
- endpoint: networkEndpoint
1199
- });
1200
- this._connections.set(name, rpcConnection);
1201
- this.setActiveConnectionIdIfUndefined(name);
1202
- return rpcConnection;
1203
- }
1204
- throw new Error("Invalid arguments passed to addConnection");
1205
- }
1206
- connections() {
1207
- const record = {};
1208
- for (const [id, conn] of this._connections.entries()) {
1209
- record[id] = conn;
1210
- }
1211
- return record;
1212
- }
1213
- getPermissions() {
1214
- return this._permissionsStore.getPermissions();
1215
- }
1216
- requestPermissions(permissions) {
1217
- return this._permissionsStore.requestPermissions(permissions);
1218
- }
1219
- revokePermissions(permissions) {
1220
- return this._permissionsStore.revokePermissions(permissions);
1221
- }
1222
- setActiveConnectionIdIfUndefined(id) {
1223
- if (!isDefined2(this._activeConnectionId)) {
1224
- this._activeConnectionId = id;
1225
- }
1226
- }
1227
- };
1228
-
1229
- // src/provider/host/PermissionsStore/getPermissionsStoreFromTransport.ts
1230
- var getPermissionsStoreFromTransport = /* @__PURE__ */ __name((transport) => {
1231
- return {
1232
- getPermissions: /* @__PURE__ */ __name(() => transport.sendRequest("xyoGateway_getPermissions"), "getPermissions"),
1233
- requestPermissions: /* @__PURE__ */ __name((permissions) => transport.sendRequest("xyoGateway_requestPermissions", permissions), "requestPermissions"),
1234
- revokePermissions: /* @__PURE__ */ __name((permissions) => transport.sendRequest("xyoGateway_revokePermissions", permissions), "revokePermissions")
1235
- };
1236
- }, "getPermissionsStoreFromTransport");
1237
-
1238
- // src/provider/host/PermissionsStore/MemoryPermissionsStore.ts
1239
- var MemoryPermissionsStore = class {
1240
- static {
1241
- __name(this, "MemoryPermissionsStore");
1242
- }
1243
- _store = /* @__PURE__ */ new Map();
1244
- getPermissions() {
1245
- return [
1246
- ...this._store.values()
1247
- ];
1248
- }
1249
- requestPermissions(permissions) {
1250
- const now = Date.now();
1251
- for (const perm of permissions) {
1252
- const key = this.getKey(perm);
1253
- this._store.set(key, {
1254
- ...perm,
1255
- date: now
1256
- });
1257
- }
1258
- return true;
1259
- }
1260
- revokePermissions(permissions) {
1261
- for (const perm of permissions) {
1262
- const key = this.getKey(perm);
1263
- this._store.delete(key);
1264
- }
1265
- return true;
1266
- }
1267
- getKey(permission) {
1268
- return `${permission.invoker}::${permission.capability}`;
1269
- }
1270
- };
1271
-
1272
- // src/provider/network/MemoryXyoNetwork.ts
1273
- import { isUndefined } from "@xylabs/typeof";
1274
- import { isNetworkStatus } from "@xyo-network/xl1-protocol";
1275
- import axios from "axios";
1276
-
1277
- // src/provider/network/lib/FailedNetworkStatusPayloads.ts
1278
- import { NetworkStatusSchema } from "@xyo-network/xl1-protocol";
1279
- var unknownStatus = {
1280
- description: "Unknown Network Status",
1281
- schema: NetworkStatusSchema,
1282
- state: "unknown"
1283
- };
1284
- var errorStatus = {
1285
- description: "Error Fetching Network Status",
1286
- schema: NetworkStatusSchema,
1287
- state: "unknown"
1288
- };
1289
-
1290
- // src/provider/network/lib/StatusNetworks.ts
1291
- var MainNetworkStats = {
1292
- id: "mainnet",
1293
- statusUrl: "https://xyo.network/chain-network-status-mainnet.json"
1294
- };
1295
- var SequenceNetworkStats = {
1296
- id: "sequence",
1297
- statusUrl: "https://beta.xyo.network/chain-network-status-sequence.json"
1298
- };
1299
- var LocalNetworkStats = {
1300
- id: "local",
1301
- statusUrl: "http://localhost:3002/chain-network-status-local.json"
1302
- };
1303
- var StatusNetworks = {
1304
- mainnet: MainNetworkStats,
1305
- sequence: SequenceNetworkStats,
1306
- local: LocalNetworkStats
1307
- };
1308
-
1309
- // src/provider/network/MemoryXyoNetwork.ts
1310
- var MemoryXyoNetwork = class {
1311
- static {
1312
- __name(this, "MemoryXyoNetwork");
1313
- }
1314
- _networkId;
1315
- constructor(networkId) {
1316
- this._networkId = networkId;
1317
- }
1318
- async status() {
1319
- const statusNetwork = StatusNetworks[this._networkId];
1320
- if (isUndefined(statusNetwork)) {
1321
- throw new Error(`Unknown status network ID: ${this._networkId}`);
1322
- }
1323
- return await this.makeRequest(statusNetwork.statusUrl);
1324
- }
1325
- async makeRequest(url) {
1326
- try {
1327
- const response = await axios.get(url);
1328
- if (isNetworkStatus(response.data)) {
1329
- return response.data;
1330
- } else {
1331
- if (response.status === 200) {
1332
- console.error("Unknown network status response:", response.data);
1333
- return unknownStatus;
1334
- }
1335
- return errorStatus;
1336
- }
1337
- } catch (error) {
1338
- console.error("Error fetching network status:", error);
1339
- return errorStatus;
1340
- }
1341
- }
1342
1286
  };
1343
1287
 
1344
1288
  // src/transport/HttpRpcTransport.ts
@@ -1426,7 +1370,7 @@ var MemoryRpcTransport = class {
1426
1370
  };
1427
1371
 
1428
1372
  // src/transport/post-message/PostMessageRpcTransport.ts
1429
- import { isDefined as isDefined3 } from "@xylabs/typeof";
1373
+ import { isDefined as isDefined2 } from "@xylabs/typeof";
1430
1374
  import { v4 as v43 } from "uuid";
1431
1375
 
1432
1376
  // src/transport/post-message/helpers.ts
@@ -1465,7 +1409,7 @@ var PostMessageRpcTransport = class {
1465
1409
  id,
1466
1410
  method
1467
1411
  };
1468
- body.params = isDefined3(params) && isDefined3(schemas[method]) ? schemas[method].params.to.parse(params) : params;
1412
+ body.params = isDefined2(params) && isDefined2(schemas[method]) ? schemas[method].params.to.parse(params) : params;
1469
1413
  return await new Promise((resolve, reject) => {
1470
1414
  const id2 = body.id;
1471
1415
  const handler = /* @__PURE__ */ __name((event) => {
@@ -1492,12 +1436,12 @@ export {
1492
1436
  HttpRpcTransport,
1493
1437
  InvokerPermissionSchema,
1494
1438
  JsonRpcErrorCodes,
1495
- JsonRpcXyoGateway,
1496
1439
  JsonRpcXyoRunner,
1497
1440
  JsonRpcXyoSigner,
1498
1441
  JsonRpcXyoViewer,
1499
1442
  MemoryPermissionsStore,
1500
1443
  MemoryRpcTransport,
1444
+ MemoryXyoClient,
1501
1445
  MemoryXyoGateway,
1502
1446
  MemoryXyoNetwork,
1503
1447
  MemoryXyoRunner,