@xyo-network/xl1-rpc 3.0.14 → 3.0.15

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 (27) hide show
  1. package/dist/neutral/client/index.mjs +58 -58
  2. package/dist/neutral/client/index.mjs.map +4 -4
  3. package/dist/neutral/engine-node/rpcEngineFromConnection.d.ts +10 -0
  4. package/dist/neutral/engine-node/rpcEngineFromConnection.d.ts.map +1 -1
  5. package/dist/neutral/index.mjs +58 -58
  6. package/dist/neutral/index.mjs.map +4 -4
  7. package/dist/neutral/provider/JsonRpcProvider.d.ts +41 -0
  8. package/dist/neutral/provider/JsonRpcProvider.d.ts.map +1 -0
  9. package/dist/neutral/provider/index.d.ts +1 -0
  10. package/dist/neutral/provider/index.d.ts.map +1 -1
  11. package/dist/neutral/provider/runner/JsonRpcRunner.d.ts +5 -10
  12. package/dist/neutral/provider/runner/JsonRpcRunner.d.ts.map +1 -1
  13. package/dist/neutral/provider/signer/JsonRpcXyoSigner.d.ts +2 -1
  14. package/dist/neutral/provider/signer/JsonRpcXyoSigner.d.ts.map +1 -1
  15. package/dist/neutral/provider/signer/JsonRpcXyoSignerMethods.d.ts +10 -70
  16. package/dist/neutral/provider/signer/JsonRpcXyoSignerMethods.d.ts.map +1 -1
  17. package/dist/neutral/provider/viewer/JsonRpcViewer.d.ts +4 -11
  18. package/dist/neutral/provider/viewer/JsonRpcViewer.d.ts.map +1 -1
  19. package/dist/neutral/server/index.mjs +29 -13
  20. package/dist/neutral/server/index.mjs.map +3 -3
  21. package/dist/neutral/transport/MemoryRpcTransport.d.ts +14 -3
  22. package/dist/neutral/transport/MemoryRpcTransport.d.ts.map +1 -1
  23. package/dist/neutral/types/schema/AllRpcSchemas.d.ts +7 -67
  24. package/dist/neutral/types/schema/AllRpcSchemas.d.ts.map +1 -1
  25. package/dist/neutral/types/schema/XyoSignerRpcSchemas.d.ts +70 -130
  26. package/dist/neutral/types/schema/XyoSignerRpcSchemas.d.ts.map +1 -1
  27. package/package.json +5 -5
@@ -1,10 +1,20 @@
1
1
  import { JsonRpcEngineV2, JsonRpcServer } from '@metamask/json-rpc-engine/v2';
2
2
  import type { Logger } from '@xylabs/sdk-js';
3
3
  import type { XyoConnection } from '@xyo-network/xl1-protocol-lib';
4
+ /**
5
+ * @deprecated Use {@link composedRpcEngineFromConnection} instead. This original engine dispatches
6
+ * the entire `AllRpcSchemas` surface through a single generic middleware; the composed engine wires
7
+ * per-namespace typed sub-engines (validation + `TypedRpcHandlerRecord`) and is the migration target.
8
+ * Kept until consumers have moved over — see the parity spec.
9
+ */
4
10
  export declare const rpcEngineFromConnection: (connection: XyoConnection, logger?: Logger) => JsonRpcEngineV2<import("@metamask/json-rpc-engine/v2").JsonRpcCall, import("@metamask/json-rpc-engine/v2").MiddlewareContext<{
5
11
  [x: string]: unknown;
6
12
  [x: number]: unknown;
7
13
  [x: symbol]: unknown;
8
14
  }>>;
15
+ /**
16
+ * @deprecated Use {@link composedRpcServerFromConnection} instead. Wraps the deprecated
17
+ * {@link rpcEngineFromConnection}; superseded by the composed engine. Kept until consumers migrate.
18
+ */
9
19
  export declare function rpcServerFromConnection(connection: XyoConnection, logger?: Logger): JsonRpcServer<import("@metamask/json-rpc-engine/v2").JsonRpcMiddleware>;
10
20
  //# sourceMappingURL=rpcEngineFromConnection.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"rpcEngineFromConnection.d.ts","sourceRoot":"","sources":["../../../src/engine-node/rpcEngineFromConnection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAC7E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAA;AAOlE,eAAO,MAAM,uBAAuB,GAClC,YAAY,aAAa,EACzB,SAAS,MAAM;;;;GAMhB,CAAA;AAED,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,aAAa,EAAE,MAAM,CAAC,EAAE,MAAM,2EAGjF"}
1
+ {"version":3,"file":"rpcEngineFromConnection.d.ts","sourceRoot":"","sources":["../../../src/engine-node/rpcEngineFromConnection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAC7E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAA;AAMlE;;;;;GAKG;AAEH,eAAO,MAAM,uBAAuB,GAClC,YAAY,aAAa,EACzB,SAAS,MAAM;;;;GAMhB,CAAA;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,aAAa,EAAE,MAAM,CAAC,EAAE,MAAM,2EAIjF"}
@@ -218,7 +218,7 @@ var rpcMethodHandlersFromPermissions = (permissions) => {
218
218
  var rpcMethodHandlersFromSigner = (signer) => {
219
219
  return {
220
220
  xyoSigner_address: (params) => signer.address(...params ?? []),
221
- xyoSigner_signTransaction: (params) => signer.signTransaction(...params ?? [])
221
+ xyoSigner_sign: (params) => signer.sign(...params ?? [])
222
222
  };
223
223
  };
224
224
 
@@ -1069,28 +1069,44 @@ var XyoRunnerRpcSchemas = {
1069
1069
  };
1070
1070
 
1071
1071
  // src/types/schema/XyoSignerRpcSchemas.ts
1072
- import { XyoAddressZod as XyoAddressZod6 } from "@xyo-network/sdk-js";
1073
- import { SignedHydratedTransactionWithHashMetaZod as SignedHydratedTransactionWithHashMetaZod3, UnsignedHydratedTransactionZod } from "@xyo-network/xl1-protocol-lib";
1074
- import { z as z20 } from "zod";
1072
+ import {
1073
+ AnyUnsignedBoundWitnessZod,
1074
+ PayloadZodLoose as PayloadZodLoose2,
1075
+ SignedBoundWitnessZod,
1076
+ WithHashMetaPayloadZodLoose as WithHashMetaPayloadZodLoose2,
1077
+ WithHashMetaZod,
1078
+ XyoAddressZod as XyoAddressZod6
1079
+ } from "@xyo-network/sdk-js";
1080
+ import { z as z20 } from "zod/mini";
1081
+ var UnsignedHydratedBoundWitnessLooseZod = z20.tuple([
1082
+ AnyUnsignedBoundWitnessZod,
1083
+ z20.array(PayloadZodLoose2)
1084
+ ]);
1085
+ var WithHashMetaSignedBoundWitnessZod = WithHashMetaZod(SignedBoundWitnessZod);
1086
+ var WithHashMetaSignedBoundWitnessZodLoose = z20.looseObject(WithHashMetaSignedBoundWitnessZod.shape);
1087
+ var SignedHydratedBoundWitnessWithHashMetaLooseZod = z20.tuple([
1088
+ WithHashMetaSignedBoundWitnessZodLoose,
1089
+ z20.array(WithHashMetaPayloadZodLoose2)
1090
+ ]);
1075
1091
  var XyoSignerRpcSchemas = {
1076
1092
  xyoSigner_address: {
1077
1093
  params: {
1078
- to: z20.tuple([]).default([]),
1079
- from: z20.tuple([]).default([])
1094
+ to: NoArgsZod,
1095
+ from: NoArgsZod
1080
1096
  },
1081
1097
  result: {
1082
1098
  to: XyoAddressZod6,
1083
1099
  from: XyoAddressZod6
1084
1100
  }
1085
1101
  },
1086
- xyoSigner_signTransaction: {
1102
+ xyoSigner_sign: {
1087
1103
  params: {
1088
- to: z20.tuple([UnsignedHydratedTransactionZod]),
1089
- from: z20.tuple([UnsignedHydratedTransactionZod])
1104
+ to: z20.tuple([UnsignedHydratedBoundWitnessLooseZod]),
1105
+ from: z20.tuple([UnsignedHydratedBoundWitnessLooseZod])
1090
1106
  },
1091
1107
  result: {
1092
- to: SignedHydratedTransactionWithHashMetaZod3,
1093
- from: SignedHydratedTransactionWithHashMetaZod3
1108
+ to: SignedHydratedBoundWitnessWithHashMetaLooseZod,
1109
+ from: SignedHydratedBoundWitnessWithHashMetaLooseZod
1094
1110
  }
1095
1111
  }
1096
1112
  };
@@ -1102,7 +1118,7 @@ import {
1102
1118
  HexZod,
1103
1119
  JsonToBigIntZod as JsonToBigIntZod9
1104
1120
  } from "@xylabs/sdk-js";
1105
- import { PayloadZodLoose as PayloadZodLoose2, XyoAddressZod as XyoAddressZod7 } from "@xyo-network/sdk-js";
1121
+ import { PayloadZodLoose as PayloadZodLoose3, XyoAddressZod as XyoAddressZod7 } from "@xyo-network/sdk-js";
1106
1122
  import {
1107
1123
  AccountBalanceHistoryItemZod as AccountBalanceHistoryItemZod2,
1108
1124
  asAttoXL1 as asAttoXL16,
@@ -1477,8 +1493,8 @@ var XyoViewerRpcSchemas = {
1477
1493
  from: z21.tuple([z21.array(HashZod5)])
1478
1494
  },
1479
1495
  result: {
1480
- to: z21.array(PayloadZodLoose2),
1481
- from: z21.array(PayloadZodLoose2)
1496
+ to: z21.array(PayloadZodLoose3),
1497
+ from: z21.array(PayloadZodLoose3)
1482
1498
  }
1483
1499
  }
1484
1500
  };
@@ -1527,7 +1543,7 @@ var createResponseSchema = (resultSchema = z23.undefined()) => z23.object({
1527
1543
 
1528
1544
  // src/types/schema/DataLakePageRpcSchemas.ts
1529
1545
  import { HashZod as HashZod6 } from "@xylabs/sdk-js";
1530
- import { PayloadZodLoose as PayloadZodLoose3 } from "@xyo-network/sdk-js";
1546
+ import { PayloadZodLoose as PayloadZodLoose4 } from "@xyo-network/sdk-js";
1531
1547
  import { ArrayBufferToJsonZod as ArrayBufferToJsonZod2, JsonToArrayBufferZod as JsonToArrayBufferWideZod } from "@xyo-network/xl1-protocol-model";
1532
1548
  import { z as z24 } from "zod";
1533
1549
  var JsonToArrayBufferZod2 = JsonToArrayBufferWideZod.pipe(z24.instanceof(ArrayBuffer));
@@ -1538,8 +1554,8 @@ var DataLakePageRpcSchemas = {
1538
1554
  from: z24.tuple([z24.object({ id: z24.string(), hashes: z24.array(HashZod6) })])
1539
1555
  },
1540
1556
  result: {
1541
- to: z24.array(z24.union([PayloadZodLoose3, ArrayBufferToJsonZod2])),
1542
- from: z24.array(z24.union([PayloadZodLoose3, JsonToArrayBufferZod2]))
1557
+ to: z24.array(z24.union([PayloadZodLoose4, ArrayBufferToJsonZod2])),
1558
+ from: z24.array(z24.union([PayloadZodLoose4, JsonToArrayBufferZod2]))
1543
1559
  }
1544
1560
  },
1545
1561
  xyoDataLakes_insert: {
@@ -1547,19 +1563,19 @@ var DataLakePageRpcSchemas = {
1547
1563
  to: z24.tuple([
1548
1564
  z24.object({
1549
1565
  id: z24.string(),
1550
- payloads: z24.array(z24.union([PayloadZodLoose3, ArrayBufferToJsonZod2]))
1566
+ payloads: z24.array(z24.union([PayloadZodLoose4, ArrayBufferToJsonZod2]))
1551
1567
  })
1552
1568
  ]),
1553
1569
  from: z24.tuple([
1554
1570
  z24.object({
1555
1571
  id: z24.string(),
1556
- payloads: z24.array(z24.union([PayloadZodLoose3, JsonToArrayBufferZod2]))
1572
+ payloads: z24.array(z24.union([PayloadZodLoose4, JsonToArrayBufferZod2]))
1557
1573
  })
1558
1574
  ])
1559
1575
  },
1560
1576
  result: {
1561
- to: z24.array(z24.union([PayloadZodLoose3, ArrayBufferToJsonZod2])),
1562
- from: z24.array(z24.union([PayloadZodLoose3, JsonToArrayBufferZod2]))
1577
+ to: z24.array(z24.union([PayloadZodLoose4, ArrayBufferToJsonZod2])),
1578
+ from: z24.array(z24.union([PayloadZodLoose4, JsonToArrayBufferZod2]))
1563
1579
  }
1564
1580
  }
1565
1581
  };
@@ -1571,7 +1587,7 @@ import { creatableProvider } from "@xyo-network/xl1-protocol-sdk";
1571
1587
  // src/provider/viewer/JsonRpcAccountBalanceViewer/JsonRpcAccountBalanceViewerMethods.ts
1572
1588
  import { AccountBalanceViewerMoniker } from "@xyo-network/xl1-protocol-lib";
1573
1589
 
1574
- // src/provider/viewer/JsonRpcViewer.ts
1590
+ // src/provider/JsonRpcProvider.ts
1575
1591
  import { isDefined as isDefined5 } from "@xylabs/sdk-js";
1576
1592
  import { AbstractCreatableProvider } from "@xyo-network/xl1-protocol-sdk";
1577
1593
 
@@ -1837,7 +1853,7 @@ var PostMessageRpcTransport = class {
1837
1853
  }
1838
1854
  };
1839
1855
 
1840
- // src/provider/viewer/JsonRpcViewer.ts
1856
+ // src/provider/JsonRpcProvider.ts
1841
1857
  function resolveRpcConnection(connections) {
1842
1858
  const named = connections["default-rpc"];
1843
1859
  if (isDefined5(named) && named.type === "rpc") {
@@ -1846,8 +1862,7 @@ function resolveRpcConnection(connections) {
1846
1862
  const first = Object.values(connections).find((connection) => connection?.type === "rpc");
1847
1863
  return first;
1848
1864
  }
1849
- var AbstractJsonRpcViewer = class extends AbstractCreatableProvider {
1850
- _transport;
1865
+ var AbstractJsonRpcProvider = class extends AbstractCreatableProvider {
1851
1866
  get transport() {
1852
1867
  return this.params.transport;
1853
1868
  }
@@ -1856,6 +1871,12 @@ var AbstractJsonRpcViewer = class extends AbstractCreatableProvider {
1856
1871
  await super.createHandler();
1857
1872
  }
1858
1873
  createTransport() {
1874
+ if (isDefined5(this.params.transport)) {
1875
+ return this.params.transport;
1876
+ }
1877
+ if (isDefined5(this.params.rpcUrl)) {
1878
+ return new HttpRpcTransport(this.params.rpcUrl, this.schemas());
1879
+ }
1859
1880
  const connection = resolveRpcConnection(this.config.connections);
1860
1881
  if (isDefined5(connection)) {
1861
1882
  if (connection.protocol === "postMessage" || isDefined5(connection.networkId)) {
@@ -1869,6 +1890,10 @@ var AbstractJsonRpcViewer = class extends AbstractCreatableProvider {
1869
1890
  }
1870
1891
  };
1871
1892
 
1893
+ // src/provider/viewer/JsonRpcViewer.ts
1894
+ var AbstractJsonRpcViewer = class extends AbstractJsonRpcProvider {
1895
+ };
1896
+
1872
1897
  // src/provider/viewer/JsonRpcAccountBalanceViewer/JsonRpcAccountBalanceViewerMethods.ts
1873
1898
  var JsonRpcAccountBalanceViewerMethods = class extends AbstractJsonRpcViewer {
1874
1899
  moniker = AccountBalanceViewerMoniker;
@@ -2786,36 +2811,7 @@ import { PayloadBuilder as PayloadBuilder2 } from "@xyo-network/sdk-js";
2786
2811
  import { elevatedTransaction, MempoolRunnerMoniker } from "@xyo-network/xl1-protocol-lib";
2787
2812
 
2788
2813
  // src/provider/runner/JsonRpcRunner.ts
2789
- import { isDefined as isDefined7 } from "@xylabs/sdk-js";
2790
- import { AbstractCreatableProvider as AbstractCreatableProvider2 } from "@xyo-network/xl1-protocol-sdk";
2791
- function resolveRpcConnection2(connections) {
2792
- const named = connections["default-rpc"];
2793
- if (isDefined7(named) && named.type === "rpc") {
2794
- return named;
2795
- }
2796
- const first = Object.values(connections).find((connection) => connection?.type === "rpc");
2797
- return first;
2798
- }
2799
- var AbstractJsonRpcRunner = class extends AbstractCreatableProvider2 {
2800
- get transport() {
2801
- return this.params.transport;
2802
- }
2803
- async createHandler() {
2804
- this.params.transport ??= this.createTransport();
2805
- await super.createHandler();
2806
- }
2807
- createTransport() {
2808
- const connection = resolveRpcConnection2(this.config.connections);
2809
- if (isDefined7(connection)) {
2810
- if (connection.protocol === "postMessage" || isDefined7(connection.networkId)) {
2811
- return new PostMessageRpcTransport(connection.networkId ?? "", this.schemas(), connection.sessionId ?? "", this.logger);
2812
- }
2813
- if (isDefined7(connection.url)) {
2814
- return new HttpRpcTransport(connection.url, this.schemas());
2815
- }
2816
- }
2817
- throw new Error("Unable to create transport");
2818
- }
2814
+ var AbstractJsonRpcRunner = class extends AbstractJsonRpcProvider {
2819
2815
  };
2820
2816
 
2821
2817
  // src/provider/runner/JsonRpcMempoolRunner/JsonRpcMempoolRunnerMethods.ts
@@ -2894,7 +2890,7 @@ JsonRpcXyoRunner = __decorateClass([
2894
2890
  ], JsonRpcXyoRunner);
2895
2891
 
2896
2892
  // src/provider/signer/JsonRpcXyoSigner.ts
2897
- import { XyoSignerMoniker as XyoSignerMoniker2 } from "@xyo-network/xl1-protocol-lib";
2893
+ import { asSignedHydratedTransactionWithHashMeta, XyoSignerMoniker as XyoSignerMoniker2 } from "@xyo-network/xl1-protocol-lib";
2898
2894
 
2899
2895
  // src/provider/signer/JsonRpcXyoSignerMethods.ts
2900
2896
  import { XyoSignerMoniker } from "@xyo-network/xl1-protocol-lib";
@@ -2903,8 +2899,8 @@ var JsonRpcXyoSignerMethods = class extends AbstractJsonRpcRunner {
2903
2899
  async address() {
2904
2900
  return await this.transport.sendRequest("xyoSigner_address");
2905
2901
  }
2906
- async signTransaction(tx) {
2907
- return await this.transport.sendRequest("xyoSigner_signTransaction", [tx]);
2902
+ async sign(bw) {
2903
+ return await this.transport.sendRequest("xyoSigner_sign", [bw]);
2908
2904
  }
2909
2905
  schemas() {
2910
2906
  return XyoSignerRpcSchemas;
@@ -2918,6 +2914,9 @@ var JsonRpcXyoSigner = class extends JsonRpcXyoSignerMethods {
2918
2914
  static dependencies = [];
2919
2915
  static monikers = [XyoSignerMoniker2];
2920
2916
  static surface = "node";
2917
+ async signTransaction(tx) {
2918
+ return asSignedHydratedTransactionWithHashMeta(await this.sign(tx), true);
2919
+ }
2921
2920
  };
2922
2921
 
2923
2922
  // src/engine-node/composedRpcEngineFromConnection.ts
@@ -3105,6 +3104,7 @@ function rpcServerFromConnection(connection, logger) {
3105
3104
  return new JsonRpcServer3({ engine });
3106
3105
  }
3107
3106
  export {
3107
+ AbstractJsonRpcProvider,
3108
3108
  AbstractJsonRpcRunner,
3109
3109
  AbstractJsonRpcViewer,
3110
3110
  AbstractMessageBus,