UNPKG

@zkp2p/reclaim-witness-sdk

Version:

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

45 lines 4.25 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.createNewClaimRequestOnChain = createNewClaimRequestOnChain; exports.signClaimRequest = signClaimRequest; const ethers_1 = require("ethers"); const contracts_1 = require("../../avs/utils/contracts"); async function createNewClaimRequestOnChain({ request, payer, chainId, ...rest }) { const contracts = (0, contracts_1.getContracts)(chainId); const contract = contracts.contract.connect(payer); const ownerAddress = typeof rest.owner === 'string' ? rest.owner : rest.owner.address; const fullRequest = { ...request, owner: ownerAddress }; const signature = await getSignature(); const task = await contract.createNewTask(fullRequest, signature || '0x00'); const rslt = await task.wait(); const events = rslt.events; // check task created event was emitted const ev = events === null || events === void 0 ? void 0 : events[0]; const arg = ev === null || ev === void 0 ? void 0 : ev.args; return { task: arg, tx: rslt }; function getSignature() { if (ownerAddress.toLowerCase() === payer.address.toLowerCase()) { return; } if ('requestSignature' in rest) { return rest.requestSignature; } if (typeof rest.owner !== 'object') { throw new Error('Owner wallet must be provided or' + ' requestSignature must be provided'); } return signClaimRequest(fullRequest, rest.owner, chainId); } } async function signClaimRequest(request, owner, chainId) { const contract = (0, contracts_1.getContracts)(chainId).contract; const encoded = await contract.encodeClaimRequest(request); const strSig = await owner.signMessage(ethers_1.ethers.utils.arrayify(encoded)); return ethers_1.ethers.utils.arrayify(strSig); } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFza3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXZzL3V0aWxzL3Rhc2tzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBb0JBLG9FQTJDQztBQUVELDRDQVNDO0FBMUVELG1DQUE0QztBQUU1Qyx1REFBc0Q7QUFrQi9DLEtBQUssVUFBVSw0QkFBNEIsQ0FBQyxFQUNsRCxPQUFPLEVBQ1AsS0FBSyxFQUNMLE9BQU8sRUFDUCxHQUFHLElBQUksRUFDMkI7SUFDbEMsTUFBTSxTQUFTLEdBQUcsSUFBQSx3QkFBWSxFQUFDLE9BQU8sQ0FBQyxDQUFBO0lBQ3ZDLE1BQU0sUUFBUSxHQUFHLFNBQVMsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFBO0lBQ2xELE1BQU0sWUFBWSxHQUFHLE9BQU8sSUFBSSxDQUFDLEtBQUssS0FBSyxRQUFRO1FBQ2xELENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSztRQUNaLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQTtJQUNyQixNQUFNLFdBQVcsR0FBOEM7UUFDOUQsR0FBRyxPQUFPO1FBQ1YsS0FBSyxFQUFFLFlBQVk7S0FDbkIsQ0FBQTtJQUNELE1BQU0sU0FBUyxHQUFHLE1BQU0sWUFBWSxFQUFFLENBQUE7SUFDdEMsTUFBTSxJQUFJLEdBQUcsTUFBTSxRQUFRLENBQUMsYUFBYSxDQUFDLFdBQVcsRUFBRSxTQUFTLElBQUksTUFBTSxDQUFDLENBQUE7SUFDM0UsTUFBTSxJQUFJLEdBQUcsTUFBTSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUE7SUFDOUIsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQTtJQUMxQix1Q0FBdUM7SUFDdkMsTUFBTSxFQUFFLEdBQUcsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFHLENBQUMsQ0FBQyxDQUFBO0lBQ3RCLE1BQU0sR0FBRyxHQUFHLEVBQUUsYUFBRixFQUFFLHVCQUFGLEVBQUUsQ0FBRSxJQUE0QyxDQUFBO0lBRTVELE9BQU8sRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsQ0FBQTtJQUU5QixTQUFTLFlBQVk7UUFDcEIsSUFBRyxZQUFZLENBQUMsV0FBVyxFQUFFLEtBQUssS0FBSyxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUFDO1lBQy9ELE9BQU07UUFDUCxDQUFDO1FBRUQsSUFBRyxrQkFBa0IsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUMvQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQTtRQUM3QixDQUFDO1FBRUQsSUFBRyxPQUFPLElBQUksQ0FBQyxLQUFLLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDbkMsTUFBTSxJQUFJLEtBQUssQ0FDZCxrQ0FBa0M7a0JBQ2hDLG9DQUFvQyxDQUN0QyxDQUFBO1FBQ0YsQ0FBQztRQUVELE9BQU8sZ0JBQWdCLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUE7SUFDMUQsQ0FBQztBQUNGLENBQUM7QUFFTSxLQUFLLFVBQVUsZ0JBQWdCLENBQ3JDLE9BQWtELEVBQ2xELEtBQWEsRUFDYixPQUFnQjtJQUVoQixNQUFNLFFBQVEsR0FBRyxJQUFBLHdCQUFZLEVBQUMsT0FBTyxDQUFDLENBQUMsUUFBUSxDQUFBO0lBQy9DLE1BQU0sT0FBTyxHQUFHLE1BQU0sUUFBUSxDQUFDLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxDQUFBO0lBQzFELE1BQU0sTUFBTSxHQUFHLE1BQU0sS0FBSyxDQUFDLFdBQVcsQ0FBQyxlQUFNLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFBO0lBQ3RFLE9BQU8sZUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUE7QUFDckMsQ0FBQyJ9