@xyo-network/xl1-rpc 1.7.17 → 1.7.18
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/neutral/index.mjs +45 -15
- package/dist/neutral/index.mjs.map +1 -1
- package/dist/neutral/provider/provider/confirmSubmittedTransaction.d.ts +21 -0
- package/dist/neutral/provider/provider/confirmSubmittedTransaction.d.ts.map +1 -0
- package/dist/neutral/provider/provider/index.d.ts +1 -0
- package/dist/neutral/provider/provider/index.d.ts.map +1 -1
- package/dist/neutral/types/schema/common/JsonSchema.d.ts +7 -0
- package/dist/neutral/types/schema/common/JsonSchema.d.ts.map +1 -0
- package/dist/neutral/types/schema/common/index.d.ts +1 -0
- package/dist/neutral/types/schema/common/index.d.ts.map +1 -1
- package/dist/node/index-node.mjs +45 -15
- package/dist/node/index-node.mjs.map +1 -1
- package/dist/node/provider/provider/confirmSubmittedTransaction.d.ts +21 -0
- package/dist/node/provider/provider/confirmSubmittedTransaction.d.ts.map +1 -0
- package/dist/node/provider/provider/index.d.ts +1 -0
- package/dist/node/provider/provider/index.d.ts.map +1 -1
- package/dist/node/types/schema/common/JsonSchema.d.ts +7 -0
- package/dist/node/types/schema/common/JsonSchema.d.ts.map +1 -0
- package/dist/node/types/schema/common/index.d.ts +1 -0
- package/dist/node/types/schema/common/index.d.ts.map +1 -1
- package/package.json +36 -35
- package/src/provider/provider/confirmSubmittedTransaction.ts +55 -0
- package/src/provider/provider/index.ts +1 -0
- package/src/types/schema/common/JsonSchema.ts +19 -0
- package/src/types/schema/common/index.ts +1 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"JsonSchema.d.ts","sourceRoot":"","sources":["../../../../../src/types/schema/common/JsonSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAGvB,QAAA,MAAM,eAAe,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAQnC,CAAA;AAGL,eAAO,MAAM,gBAAgB,qEAA4B,CAAA;AAGzD,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAA;AACvD,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAA"}
|
|
@@ -6,6 +6,7 @@ export * from './HashSchema.ts';
|
|
|
6
6
|
export * from './HexSchema.ts';
|
|
7
7
|
export * from './HydratedBlockSchema.ts';
|
|
8
8
|
export * from './HydratedTransactionSchema.ts';
|
|
9
|
+
export * from './JsonSchema.ts';
|
|
9
10
|
export * from './PayloadSchema.ts';
|
|
10
11
|
export * from './SequenceSchema.ts';
|
|
11
12
|
export * from './StorageMetaSchema.ts';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/types/schema/common/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAA;AAClC,cAAc,mBAAmB,CAAA;AACjC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,yBAAyB,CAAA;AACvC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,0BAA0B,CAAA;AACxC,cAAc,gCAAgC,CAAA;AAC9C,cAAc,oBAAoB,CAAA;AAClC,cAAc,qBAAqB,CAAA;AACnC,cAAc,wBAAwB,CAAA;AACtC,cAAc,oCAAoC,CAAA;AAClD,cAAc,sBAAsB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/types/schema/common/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAA;AAClC,cAAc,mBAAmB,CAAA;AACjC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,yBAAyB,CAAA;AACvC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,0BAA0B,CAAA;AACxC,cAAc,gCAAgC,CAAA;AAC9C,cAAc,iBAAiB,CAAA;AAC/B,cAAc,oBAAoB,CAAA;AAClC,cAAc,qBAAqB,CAAA;AACnC,cAAc,wBAAwB,CAAA;AACtC,cAAc,oCAAoC,CAAA;AAClD,cAAc,sBAAsB,CAAA"}
|
package/dist/node/index-node.mjs
CHANGED
|
@@ -803,15 +803,44 @@ var JsonRpcXyoGateway = class extends AbstractXyoGateway {
|
|
|
803
803
|
};
|
|
804
804
|
|
|
805
805
|
// src/provider/host/MemoryXyoGateway.ts
|
|
806
|
-
import { isDefined } from "@xylabs/typeof";
|
|
806
|
+
import { isDefined as isDefined2 } from "@xylabs/typeof";
|
|
807
807
|
|
|
808
|
-
// src/provider/provider/
|
|
808
|
+
// src/provider/provider/confirmSubmittedTransaction.ts
|
|
809
809
|
import { delay } from "@xylabs/delay";
|
|
810
|
+
import { isDefined } from "@xylabs/typeof";
|
|
810
811
|
import { PayloadBuilder } from "@xyo-network/payload-builder";
|
|
812
|
+
var DEFAULT_CONFIRMATION_ATTEMPTS = 20;
|
|
813
|
+
var DEFAULT_DELAY_BETWEEN_ATTEMPTS = 1e3;
|
|
814
|
+
var confirmSubmittedTransaction = /* @__PURE__ */ __name(async (provider, txBW, options) => {
|
|
815
|
+
const { attempts: maxAttempts = DEFAULT_CONFIRMATION_ATTEMPTS, delay: attemptDelay = DEFAULT_DELAY_BETWEEN_ATTEMPTS } = options || {};
|
|
816
|
+
const txBWHash = await PayloadBuilder.hash(txBW);
|
|
817
|
+
options?.logger?.log("\u2705 confirming transaction:", txBWHash, "\n");
|
|
818
|
+
let attempts = 0;
|
|
819
|
+
while (true) {
|
|
820
|
+
const tx = await provider.viewer?.transactionByHash(txBWHash) ?? void 0;
|
|
821
|
+
if (isDefined(tx)) {
|
|
822
|
+
options?.logger?.log("\u{1F37B} Transaction confirmed:", txBWHash, "\n");
|
|
823
|
+
return tx;
|
|
824
|
+
} else {
|
|
825
|
+
attempts++;
|
|
826
|
+
if (attempts > maxAttempts) {
|
|
827
|
+
options?.logger?.error(`\u26A0\uFE0F Transaction not confirmed after ${maxAttempts} attempts`);
|
|
828
|
+
throw new Error(`Transaction ${txBWHash} not confirmed after ${maxAttempts} attempts`);
|
|
829
|
+
} else {
|
|
830
|
+
options?.logger?.log(`\u{1F504} Transaction not confirmed yet, attempt ${attempts}. Retrying...`, "\n");
|
|
831
|
+
await delay(attemptDelay);
|
|
832
|
+
}
|
|
833
|
+
}
|
|
834
|
+
}
|
|
835
|
+
}, "confirmSubmittedTransaction");
|
|
836
|
+
|
|
837
|
+
// src/provider/provider/confirmTransaction.ts
|
|
838
|
+
import { delay as delay2 } from "@xylabs/delay";
|
|
839
|
+
import { PayloadBuilder as PayloadBuilder2 } from "@xyo-network/payload-builder";
|
|
811
840
|
var CONFIRMATION_ATTEMPTS = 20;
|
|
812
841
|
var DELAY_BETWEEN_ATTEMPTS = 1e3;
|
|
813
842
|
var confirmTransaction = /* @__PURE__ */ __name(async (provider, txBW, onConfirm, onTimeout) => {
|
|
814
|
-
const txBWHash = await
|
|
843
|
+
const txBWHash = await PayloadBuilder2.hash(txBW);
|
|
815
844
|
console.log("\u2705 confirming transaction:", txBWHash, "\n");
|
|
816
845
|
let confirmed = false;
|
|
817
846
|
let attempts = 0;
|
|
@@ -829,7 +858,7 @@ var confirmTransaction = /* @__PURE__ */ __name(async (provider, txBW, onConfirm
|
|
|
829
858
|
return;
|
|
830
859
|
} else {
|
|
831
860
|
console.log(`\u{1F504} Transaction not confirmed yet, attempt ${attempts}. Retrying...`, "\n");
|
|
832
|
-
await
|
|
861
|
+
await delay2(DELAY_BETWEEN_ATTEMPTS);
|
|
833
862
|
}
|
|
834
863
|
}
|
|
835
864
|
}
|
|
@@ -853,7 +882,7 @@ var JsonRpcXyoRunner = class {
|
|
|
853
882
|
|
|
854
883
|
// src/provider/runner/MemoryXyoRunner.ts
|
|
855
884
|
import { MemoryArchivist } from "@xyo-network/archivist-memory";
|
|
856
|
-
import { PayloadBuilder as
|
|
885
|
+
import { PayloadBuilder as PayloadBuilder3 } from "@xyo-network/payload-builder";
|
|
857
886
|
import { flattenHydratedTransaction } from "@xyo-network/xl1-protocol-sdk";
|
|
858
887
|
var MemoryXyoRunner = class {
|
|
859
888
|
static {
|
|
@@ -863,7 +892,7 @@ var MemoryXyoRunner = class {
|
|
|
863
892
|
async broadcastTransaction(transaction) {
|
|
864
893
|
const archivist = await this.getArchivist();
|
|
865
894
|
await archivist.insert(flattenHydratedTransaction(transaction));
|
|
866
|
-
return await
|
|
895
|
+
return await PayloadBuilder3.hash(transaction[0]);
|
|
867
896
|
}
|
|
868
897
|
async getArchivist() {
|
|
869
898
|
if (!this._archivist) {
|
|
@@ -878,7 +907,7 @@ var MemoryXyoRunner = class {
|
|
|
878
907
|
// src/provider/runner/NodeXyoRunner.ts
|
|
879
908
|
import { assertEx as assertEx2 } from "@xylabs/assert";
|
|
880
909
|
import { asArchivistInstance } from "@xyo-network/archivist-model";
|
|
881
|
-
import { PayloadBuilder as
|
|
910
|
+
import { PayloadBuilder as PayloadBuilder4 } from "@xyo-network/payload-builder";
|
|
882
911
|
import { PayloadBundleSchema } from "@xyo-network/payload-model";
|
|
883
912
|
import { flattenHydratedTransaction as flattenHydratedTransaction2 } from "@xyo-network/xl1-protocol-sdk";
|
|
884
913
|
var NodeXyoRunner = class {
|
|
@@ -895,7 +924,7 @@ var NodeXyoRunner = class {
|
|
|
895
924
|
async broadcastTransaction(transaction) {
|
|
896
925
|
const flattened = flattenHydratedTransaction2(transaction);
|
|
897
926
|
const pendingArchivist = await this.getPendingArchivist();
|
|
898
|
-
const txHash = await
|
|
927
|
+
const txHash = await PayloadBuilder4.hash(transaction[0]);
|
|
899
928
|
const payloadBundle = {
|
|
900
929
|
schema: PayloadBundleSchema,
|
|
901
930
|
payloads: flattened,
|
|
@@ -1041,7 +1070,7 @@ var JsonRpcXyoViewer = class {
|
|
|
1041
1070
|
|
|
1042
1071
|
// src/provider/provider/XyoConnection.ts
|
|
1043
1072
|
import { assertEx as assertEx3 } from "@xylabs/assert";
|
|
1044
|
-
import { PayloadBuilder as
|
|
1073
|
+
import { PayloadBuilder as PayloadBuilder5 } from "@xyo-network/payload-builder";
|
|
1045
1074
|
import { isAnyPayload } from "@xyo-network/payload-model";
|
|
1046
1075
|
import { defaultTransactionFees, isDataLakeProvider } from "@xyo-network/xl1-protocol";
|
|
1047
1076
|
import { HydratedTransactionWrapper } from "@xyo-network/xl1-wrappers";
|
|
@@ -1100,8 +1129,8 @@ var XyoConnection = class {
|
|
|
1100
1129
|
if (fromResolved === void 0) throw new Error("Failed to determine from address");
|
|
1101
1130
|
const signedTransaction = assertEx3(await signer.createSignedTransaction(chainResolved, elevatedPayloads, additionalPayloads, nbfResolved, expResolved, feesResolved, fromResolved), () => "Failed to create transaction");
|
|
1102
1131
|
const hydratedTransaction = [
|
|
1103
|
-
await
|
|
1104
|
-
await
|
|
1132
|
+
await PayloadBuilder5.addStorageMeta(signedTransaction),
|
|
1133
|
+
await PayloadBuilder5.addStorageMeta(elevatedPayloads)
|
|
1105
1134
|
];
|
|
1106
1135
|
if (isDataLakeProvider(storage)) {
|
|
1107
1136
|
const wrapper = await HydratedTransactionWrapper.parse(hydratedTransaction);
|
|
@@ -1154,7 +1183,7 @@ var MemoryXyoGateway = class extends AbstractXyoGateway {
|
|
|
1154
1183
|
return this._signer;
|
|
1155
1184
|
}
|
|
1156
1185
|
activeConnection() {
|
|
1157
|
-
return
|
|
1186
|
+
return isDefined2(this._activeConnectionId) ? this._connections.get(this._activeConnectionId) : void 0;
|
|
1158
1187
|
}
|
|
1159
1188
|
addConnection(configOrName, connection) {
|
|
1160
1189
|
if (typeof configOrName === "string" && connection !== void 0) {
|
|
@@ -1191,7 +1220,7 @@ var MemoryXyoGateway = class extends AbstractXyoGateway {
|
|
|
1191
1220
|
return this._permissionsStore.revokePermissions(permissions);
|
|
1192
1221
|
}
|
|
1193
1222
|
setActiveConnectionIdIfUndefined(id) {
|
|
1194
|
-
if (!
|
|
1223
|
+
if (!isDefined2(this._activeConnectionId)) {
|
|
1195
1224
|
this._activeConnectionId = id;
|
|
1196
1225
|
}
|
|
1197
1226
|
}
|
|
@@ -1397,7 +1426,7 @@ var MemoryRpcTransport = class {
|
|
|
1397
1426
|
};
|
|
1398
1427
|
|
|
1399
1428
|
// src/transport/post-message/PostMessageRpcTransport.ts
|
|
1400
|
-
import { isDefined as
|
|
1429
|
+
import { isDefined as isDefined3 } from "@xylabs/typeof";
|
|
1401
1430
|
import { v4 as v43 } from "uuid";
|
|
1402
1431
|
|
|
1403
1432
|
// src/transport/post-message/helpers.ts
|
|
@@ -1436,7 +1465,7 @@ var PostMessageRpcTransport = class {
|
|
|
1436
1465
|
id,
|
|
1437
1466
|
method
|
|
1438
1467
|
};
|
|
1439
|
-
body.params =
|
|
1468
|
+
body.params = isDefined3(params) && isDefined3(schemas[method]) ? schemas[method].params.to.parse(params) : params;
|
|
1440
1469
|
return await new Promise((resolve, reject) => {
|
|
1441
1470
|
const id2 = body.id;
|
|
1442
1471
|
const handler = /* @__PURE__ */ __name((event) => {
|
|
@@ -1485,6 +1514,7 @@ export {
|
|
|
1485
1514
|
XyoSignerRpcSchemas,
|
|
1486
1515
|
XyoViewerRpcSchemas,
|
|
1487
1516
|
buildSessionMessageRequest,
|
|
1517
|
+
confirmSubmittedTransaction,
|
|
1488
1518
|
confirmTransaction,
|
|
1489
1519
|
createRequestSchema,
|
|
1490
1520
|
createResponseSchema,
|