@obolnetwork/obol-sdk 2.12.2 → 2.12.4
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/browser/src/index.js +70 -11
- package/dist/browser/src/index.js.map +1 -1
- package/dist/cjs/src/index.js +71 -11
- package/dist/cjs/src/index.js.map +1 -1
- package/dist/cjs/src/verification/clusterLockValidationWorker.js +38 -7
- package/dist/cjs/src/verification/clusterLockValidationWorker.js.map +1 -1
- package/dist/cjs/src/verification/parallelPool.js +25 -5
- package/dist/cjs/src/verification/parallelPool.js.map +1 -1
- package/dist/esm/src/{chunk-YSXFCSVK.js → chunk-FGMJVLIN.js} +37 -6
- package/dist/esm/src/chunk-FGMJVLIN.js.map +1 -0
- package/dist/esm/src/{chunk-T74RX3N2.js → chunk-YZWJJHPO.js} +8 -4
- package/dist/esm/src/chunk-YZWJJHPO.js.map +1 -0
- package/dist/esm/src/index.js +33 -6
- package/dist/esm/src/index.js.map +1 -1
- package/dist/esm/src/verification/clusterLockValidationWorker.js +9 -3
- package/dist/esm/src/verification/clusterLockValidationWorker.js.map +1 -1
- package/dist/esm/src/verification/parallelPool.js +1 -1
- package/dist/types/src/errors.d.ts +17 -7
- package/dist/types/src/index.d.ts +1 -1
- package/dist/types/src/services.d.ts +6 -3
- package/dist/types/src/verification/parallelPool.d.ts +4 -0
- package/dist/types/src/verification/validationConcurrency.d.ts +11 -0
- package/dist/types/tsconfig.types.tsbuildinfo +1 -1
- package/package.json +2 -2
- package/dist/esm/src/chunk-T74RX3N2.js.map +0 -1
- package/dist/esm/src/chunk-YSXFCSVK.js.map +0 -1
- package/dist/types/test/client/ajv.spec.d.ts +0 -1
- package/dist/types/test/client/baseUrl.spec.d.ts +0 -1
- package/dist/types/test/client/methods.spec.d.ts +0 -18
- package/dist/types/test/eoa/eoa.spec.d.ts +0 -1
- package/dist/types/test/exit/ethUtils.spec.d.ts +0 -1
- package/dist/types/test/exit/exit.spec.d.ts +0 -1
- package/dist/types/test/exit/verificationHelpers.spec.d.ts +0 -1
- package/dist/types/test/fixtures.d.ts +0 -359
- package/dist/types/test/incentives/incentives.spec.d.ts +0 -1
- package/dist/types/test/splits/splits.spec.d.ts +0 -1
- package/dist/types/test/verification/parallelPool.spec.d.ts +0 -1
package/dist/esm/src/index.js
CHANGED
|
@@ -57,15 +57,16 @@ import {
|
|
|
57
57
|
verifyBuilderRegistration,
|
|
58
58
|
verifyDepositData,
|
|
59
59
|
verifyNodeSignatures
|
|
60
|
-
} from "./chunk-
|
|
60
|
+
} from "./chunk-YZWJJHPO.js";
|
|
61
61
|
import {
|
|
62
|
+
ClusterLockValidationBusyError,
|
|
62
63
|
ClusterLockValidationTimeoutError,
|
|
63
64
|
ConflictError,
|
|
64
65
|
InvalidBaseUrlError,
|
|
65
66
|
SignerRequiredError,
|
|
66
67
|
UnsupportedChainError,
|
|
67
68
|
validateClusterLockInWorker
|
|
68
|
-
} from "./chunk-
|
|
69
|
+
} from "./chunk-FGMJVLIN.js";
|
|
69
70
|
import {
|
|
70
71
|
__async,
|
|
71
72
|
__spreadProps,
|
|
@@ -5065,15 +5066,40 @@ var EOA = class {
|
|
|
5065
5066
|
}
|
|
5066
5067
|
};
|
|
5067
5068
|
|
|
5069
|
+
// src/verification/validationConcurrency.ts
|
|
5070
|
+
function getMaxConcurrentLockValidations() {
|
|
5071
|
+
const raw = process.env.OBOL_SDK_MAX_CONCURRENT_LOCK_VALIDATIONS;
|
|
5072
|
+
if (raw === "0") return 0;
|
|
5073
|
+
if (raw !== void 0 && raw !== "") {
|
|
5074
|
+
const n = Number.parseInt(raw, 10);
|
|
5075
|
+
if (Number.isFinite(n) && n > 0) return n;
|
|
5076
|
+
}
|
|
5077
|
+
return 2;
|
|
5078
|
+
}
|
|
5079
|
+
var activeValidations = 0;
|
|
5080
|
+
function withLockValidationConcurrency(fn) {
|
|
5081
|
+
return __async(this, null, function* () {
|
|
5082
|
+
const max = getMaxConcurrentLockValidations();
|
|
5083
|
+
if (max === 0) return yield fn();
|
|
5084
|
+
if (activeValidations >= max) {
|
|
5085
|
+
throw new ClusterLockValidationBusyError(max);
|
|
5086
|
+
}
|
|
5087
|
+
activeValidations++;
|
|
5088
|
+
try {
|
|
5089
|
+
return yield fn();
|
|
5090
|
+
} finally {
|
|
5091
|
+
activeValidations--;
|
|
5092
|
+
}
|
|
5093
|
+
});
|
|
5094
|
+
}
|
|
5095
|
+
|
|
5068
5096
|
// src/services.ts
|
|
5069
5097
|
var validateClusterLock = (lock, safeRpcUrl) => __async(null, null, function* () {
|
|
5070
|
-
|
|
5098
|
+
return yield withLockValidationConcurrency(() => __async(null, null, function* () {
|
|
5071
5099
|
const inWorker = yield validateClusterLockInWorker(lock, safeRpcUrl);
|
|
5072
5100
|
if (inWorker !== null) return inWorker;
|
|
5073
5101
|
return yield isValidClusterLock(lock, safeRpcUrl);
|
|
5074
|
-
}
|
|
5075
|
-
throw err;
|
|
5076
|
-
}
|
|
5102
|
+
}));
|
|
5077
5103
|
});
|
|
5078
5104
|
|
|
5079
5105
|
// src/index.ts
|
|
@@ -5671,6 +5697,7 @@ export {
|
|
|
5671
5697
|
CONFIG_VERSION,
|
|
5672
5698
|
CONFLICT_ERROR_MSG,
|
|
5673
5699
|
Client,
|
|
5700
|
+
ClusterLockValidationBusyError,
|
|
5674
5701
|
ClusterLockValidationTimeoutError,
|
|
5675
5702
|
ConflictError,
|
|
5676
5703
|
CreatorConfigHashSigningTypes,
|