UNPKG

@zkp2p/reclaim-witness-sdk

Version:

<div> <div> <img src="https://raw.githubusercontent.com/reclaimprotocol/.github/main/assets/banners/Attestor-Core.png" /> </div> </div>

102 lines 6.83 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getCurrentMemoryUsage = getCurrentMemoryUsage; exports.generateRpcRequestId = generateRpcRequestId; exports.getWsApiUrlFromLocation = getWsApiUrlFromLocation; exports.mapToCreateClaimResponse = mapToCreateClaimResponse; exports.waitForResponse = waitForResponse; const ethers_1 = require("ethers"); const config_1 = require("../config"); const utils_1 = require("../utils"); // track memory usage async function getCurrentMemoryUsage() { if (!window.crossOriginIsolated) { return { available: false, content: 'N/A (page not cross-origin-isolated)' }; } else if (!performance.measureUserAgentSpecificMemory) { return { available: false, content: 'N/A (performance.measureUserAgentSpecificMemory() is not available)', }; } else { try { const result = performance.measureUserAgentSpecificMemory(); const totalmb = Math.round(result.bytes / 1024 / 1024); return { available: true, content: `${totalmb}mb`, }; } catch (error) { if (error instanceof DOMException && error.name === 'SecurityError') { return { available: false, content: `N/A (${error.message})`, }; } throw error; } } } function generateRpcRequestId() { return Math.random().toString(36).slice(2); } /** * The window RPC will be served from the same origin as the API server. * so we can get the API server's origin from the location. */ function getWsApiUrlFromLocation() { const { host, protocol } = location; const wsProtocol = protocol === 'https:' ? 'wss:' : 'ws:'; return `${wsProtocol}//${host}${config_1.WS_PATHNAME}`; } function mapToCreateClaimResponse(res) { if (!res.claim) { throw utils_1.AttestorError.fromProto(res.error); } return { identifier: (0, utils_1.getIdentifierFromClaimInfo)(res.claim), claimData: res.claim, witnesses: [ { id: res.signatures.attestorAddress, url: getWsApiUrlFromLocation() } ], signatures: [ ethers_1.ethers.utils .hexlify(res.signatures.claimSignature) .toLowerCase() ] }; } function waitForResponse(type, requestId, bridge, timeoutMs = 60000) { const returnType = `${type}Done`; return new Promise((resolve, reject) => { const timeout = setTimeout(() => { reject(new utils_1.AttestorError('ERROR_INTERNAL', `Timeout waiting for response: ${type}`, { requestId })); cancel(); }, timeoutMs); const cancel = bridge.onMessage(msg => { if (msg.id !== requestId) { return; } if (msg.type === 'error') { reject(new Error(msg.data.message)); } else if (msg.type === returnType) { resolve(msg.response); } else { return; } clearTimeout(timeout); cancel(); }); }); } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvd2luZG93LXJwYy91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQU9BLHNEQStCQztBQUVELG9EQUVDO0FBTUQsMERBSUM7QUFFRCw0REFzQkM7QUFFRCwwQ0FxQ0M7QUFuSEQsbUNBQStCO0FBQy9CLHVDQUF3QztBQUV4QyxxQ0FBcUU7QUFHckUscUJBQXFCO0FBQ2QsS0FBSyxVQUFVLHFCQUFxQjtJQUMxQyxJQUFHLENBQUMsTUFBTSxDQUFDLG1CQUFtQixFQUFFLENBQUM7UUFDaEMsT0FBTztZQUNOLFNBQVMsRUFBRSxLQUFLO1lBQ2hCLE9BQU8sRUFBRSxzQ0FBc0M7U0FDL0MsQ0FBQTtJQUNGLENBQUM7U0FBTSxJQUFHLENBQUMsV0FBVyxDQUFDLDhCQUE4QixFQUFFLENBQUM7UUFDdkQsT0FBTztZQUNOLFNBQVMsRUFBRSxLQUFLO1lBQ2hCLE9BQU8sRUFBRSxxRUFBcUU7U0FDOUUsQ0FBQTtJQUNGLENBQUM7U0FBTSxDQUFDO1FBQ1AsSUFBSSxDQUFDO1lBQ0osTUFBTSxNQUFNLEdBQUcsV0FBVyxDQUFDLDhCQUE4QixFQUFFLENBQUE7WUFDM0QsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxHQUFHLElBQUksR0FBRyxJQUFJLENBQUMsQ0FBQTtZQUV0RCxPQUFPO2dCQUNOLFNBQVMsRUFBRSxJQUFJO2dCQUNmLE9BQU8sRUFBRSxHQUFHLE9BQU8sSUFBSTthQUN2QixDQUFBO1FBQ0YsQ0FBQztRQUFDLE9BQU0sS0FBSyxFQUFFLENBQUM7WUFDZixJQUFHLEtBQUssWUFBWSxZQUFZLElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxlQUFlLEVBQUUsQ0FBQztnQkFDcEUsT0FBTztvQkFDTixTQUFTLEVBQUUsS0FBSztvQkFDaEIsT0FBTyxFQUFFLFFBQVEsS0FBSyxDQUFDLE9BQU8sR0FBRztpQkFDakMsQ0FB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