veilix-sdk 0.0.5 → 0.0.6
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/circuits/paths.cjs.map +1 -1
- package/dist/circuits/paths.js.map +1 -1
- package/dist/index.cjs +48 -2
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +48 -2
- package/dist/index.js.map +1 -1
- package/dist/react/index.cjs +48 -2
- package/dist/react/index.cjs.map +1 -1
- package/dist/react/index.js +48 -2
- package/dist/react/index.js.map +1 -1
- package/package.json +1 -1
package/dist/react/index.cjs
CHANGED
|
@@ -12601,6 +12601,52 @@ function formatNoteForDisplay(note, segmentLen = 8) {
|
|
|
12601
12601
|
(p) => p.length > segmentLen * 2 ? p.slice(0, segmentLen) + "\u2026" + p.slice(-segmentLen) : p
|
|
12602
12602
|
).join("-");
|
|
12603
12603
|
}
|
|
12604
|
+
async function readOracleGatewayUrls(queue) {
|
|
12605
|
+
const oracleKeys = await queue.fetchOracleKeys();
|
|
12606
|
+
if (oracleKeys.length === 0) return [];
|
|
12607
|
+
const rows = await sb__namespace.Oracle.loadMany(queue.program, oracleKeys);
|
|
12608
|
+
return rows.map(
|
|
12609
|
+
(row) => row ? buffer.Buffer.from(row.gatewayUri).toString("utf8").replace(/\0+$/, "").trim() : ""
|
|
12610
|
+
).filter((url) => url.length > 0);
|
|
12611
|
+
}
|
|
12612
|
+
async function firstHealthyGatewayUrl(urls) {
|
|
12613
|
+
try {
|
|
12614
|
+
return await Promise.any(
|
|
12615
|
+
urls.map(async (url) => {
|
|
12616
|
+
const response = await fetch(`${url.replace(/\/$/, "")}/gateway/api/v1/test`, {
|
|
12617
|
+
signal: AbortSignal.timeout(8e3)
|
|
12618
|
+
});
|
|
12619
|
+
if (!response.ok) {
|
|
12620
|
+
throw new Error(`gateway ${url} returned ${response.status}`);
|
|
12621
|
+
}
|
|
12622
|
+
return url;
|
|
12623
|
+
})
|
|
12624
|
+
);
|
|
12625
|
+
} catch (error) {
|
|
12626
|
+
const reason = error instanceof Error ? error.message : "unknown error";
|
|
12627
|
+
throw new Error(`veilix-sdk: no healthy Switchboard gateway (${reason})`);
|
|
12628
|
+
}
|
|
12629
|
+
}
|
|
12630
|
+
function crossbarForQueue(queue) {
|
|
12631
|
+
const client = new common.CrossbarClient("https://crossbar.switchboard.xyz");
|
|
12632
|
+
const fetchGateway = client.fetchGateway.bind(client);
|
|
12633
|
+
client.fetchGateway = async (network) => {
|
|
12634
|
+
try {
|
|
12635
|
+
return await fetchGateway(network);
|
|
12636
|
+
} catch (error) {
|
|
12637
|
+
const message = error instanceof Error ? error.message : "";
|
|
12638
|
+
if (!message.includes("No gateways available")) {
|
|
12639
|
+
throw error;
|
|
12640
|
+
}
|
|
12641
|
+
const urls = await readOracleGatewayUrls(queue);
|
|
12642
|
+
if (urls.length === 0) {
|
|
12643
|
+
throw error;
|
|
12644
|
+
}
|
|
12645
|
+
return new sb__namespace.Gateway(await firstHealthyGatewayUrl(urls));
|
|
12646
|
+
}
|
|
12647
|
+
};
|
|
12648
|
+
return client;
|
|
12649
|
+
}
|
|
12604
12650
|
function getRangeRiskScoreJob(address) {
|
|
12605
12651
|
return common.OracleJob.fromObject({
|
|
12606
12652
|
tasks: [
|
|
@@ -12629,7 +12675,7 @@ async function getOracleQuote(payer, addressToCheck) {
|
|
|
12629
12675
|
solanaRPCUrl: rpcUrl,
|
|
12630
12676
|
queueAddress: getDepositQueueAddress()
|
|
12631
12677
|
});
|
|
12632
|
-
const crossbarClient =
|
|
12678
|
+
const crossbarClient = crossbarForQueue(queue);
|
|
12633
12679
|
const feed = {
|
|
12634
12680
|
name: "Risk Score",
|
|
12635
12681
|
jobs: [getRangeRiskScoreJob(addressToCheck)],
|
|
@@ -12653,7 +12699,7 @@ function getProgramId() {
|
|
|
12653
12699
|
}
|
|
12654
12700
|
return _programId;
|
|
12655
12701
|
}
|
|
12656
|
-
var CONFIG_SEED = buffer.Buffer.from("
|
|
12702
|
+
var CONFIG_SEED = buffer.Buffer.from("config");
|
|
12657
12703
|
function getPoolPDA(denominationLamports) {
|
|
12658
12704
|
const buf = buffer.Buffer.alloc(8);
|
|
12659
12705
|
buf.writeBigUInt64BE(BigInt(denominationLamports));
|