veilioexchange 0.1.0 → 0.3.0
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/CHANGELOG.md +37 -0
- package/LICENSE +21 -21
- package/README.md +225 -113
- package/dist/cjs/auth.d.ts +15 -0
- package/dist/cjs/auth.d.ts.map +1 -1
- package/dist/cjs/auth.js +32 -0
- package/dist/cjs/auth.js.map +1 -1
- package/dist/cjs/deployments.js +2 -2
- package/dist/cjs/index.d.ts +260 -6
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +221 -62
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/servicesApi.d.ts +86 -0
- package/dist/cjs/servicesApi.d.ts.map +1 -0
- package/dist/cjs/servicesApi.js +177 -0
- package/dist/cjs/servicesApi.js.map +1 -0
- package/dist/cjs/solana/auction.d.ts +230 -0
- package/dist/cjs/solana/auction.d.ts.map +1 -0
- package/dist/cjs/solana/auction.js +546 -0
- package/dist/cjs/solana/auction.js.map +1 -0
- package/dist/cjs/solana/client.d.ts +100 -0
- package/dist/cjs/solana/client.d.ts.map +1 -0
- package/dist/cjs/solana/client.js +368 -0
- package/dist/cjs/solana/client.js.map +1 -0
- package/dist/cjs/solana/escrow.d.ts +193 -0
- package/dist/cjs/solana/escrow.d.ts.map +1 -0
- package/dist/cjs/solana/escrow.js +463 -0
- package/dist/cjs/solana/escrow.js.map +1 -0
- package/dist/cjs/solana/index.d.ts +9 -0
- package/dist/cjs/solana/index.d.ts.map +1 -0
- package/dist/cjs/solana/index.js +35 -0
- package/dist/cjs/solana/index.js.map +1 -0
- package/dist/cjs/solana/registry.d.ts +112 -0
- package/dist/cjs/solana/registry.d.ts.map +1 -0
- package/dist/cjs/solana/registry.js +305 -0
- package/dist/cjs/solana/registry.js.map +1 -0
- package/dist/esm/auth.d.ts +15 -0
- package/dist/esm/auth.d.ts.map +1 -1
- package/dist/esm/auth.js +28 -0
- package/dist/esm/auth.js.map +1 -1
- package/dist/esm/deployments.js +2 -2
- package/dist/esm/index.d.ts +260 -6
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +218 -61
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/servicesApi.d.ts +86 -0
- package/dist/esm/servicesApi.d.ts.map +1 -0
- package/dist/esm/servicesApi.js +174 -0
- package/dist/esm/servicesApi.js.map +1 -0
- package/dist/esm/solana/auction.d.ts +230 -0
- package/dist/esm/solana/auction.d.ts.map +1 -0
- package/dist/esm/solana/auction.js +523 -0
- package/dist/esm/solana/auction.js.map +1 -0
- package/dist/esm/solana/client.d.ts +100 -0
- package/dist/esm/solana/client.d.ts.map +1 -0
- package/dist/esm/solana/client.js +361 -0
- package/dist/esm/solana/client.js.map +1 -0
- package/dist/esm/solana/escrow.d.ts +193 -0
- package/dist/esm/solana/escrow.d.ts.map +1 -0
- package/dist/esm/solana/escrow.js +444 -0
- package/dist/esm/solana/escrow.js.map +1 -0
- package/dist/esm/solana/index.d.ts +9 -0
- package/dist/esm/solana/index.d.ts.map +1 -0
- package/dist/esm/solana/index.js +9 -0
- package/dist/esm/solana/index.js.map +1 -0
- package/dist/esm/solana/registry.d.ts +112 -0
- package/dist/esm/solana/registry.d.ts.map +1 -0
- package/dist/esm/solana/registry.js +289 -0
- package/dist/esm/solana/registry.js.map +1 -0
- package/package.json +82 -55
package/dist/cjs/index.js
CHANGED
|
@@ -14,8 +14,10 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.SERVICE_ESCROW_STATES = exports.serviceEscrowAbi = exports.AUCTION_STATES = exports.VEILIO_SERVICES_CONTRACT_ADDRESS = exports.VEILIO_CONTRACT_ADDRESS = exports.VEILIO_CHAIN_ID = exports.VEILIO_DEPLOYMENTS = void 0;
|
|
17
|
+
exports.SERVICE_ESCROW_STATES = exports.serviceEscrowAbi = exports.AUCTION_STATES = exports.veilAuctionAbi = exports.VEILIO_SUPPORTED_CHAIN_IDS = exports.VEILIO_SERVICES_CONTRACT_ADDRESS = exports.VEILIO_CONTRACT_ADDRESS = exports.VEILIO_CHAIN_ID = exports.VEILIO_DEPLOYMENTS = void 0;
|
|
18
18
|
exports.withSafeReadRetry = withSafeReadRetry;
|
|
19
|
+
exports.assertVeilioChainId = assertVeilioChainId;
|
|
20
|
+
exports.getVeilioDeployment = getVeilioDeployment;
|
|
19
21
|
exports.formatServiceOrderId = formatServiceOrderId;
|
|
20
22
|
exports.createVeilioServicesClient = createVeilioServicesClient;
|
|
21
23
|
exports.createVeilioAgent = createVeilioAgent;
|
|
@@ -26,6 +28,7 @@ __exportStar(require("./errors.js"), exports);
|
|
|
26
28
|
var deployments_js_2 = require("./deployments.js");
|
|
27
29
|
Object.defineProperty(exports, "VEILIO_DEPLOYMENTS", { enumerable: true, get: function () { return deployments_js_2.VEILIO_DEPLOYMENTS; } });
|
|
28
30
|
__exportStar(require("./auth.js"), exports);
|
|
31
|
+
__exportStar(require("./servicesApi.js"), exports);
|
|
29
32
|
/**
|
|
30
33
|
* Safely executes an idempotent read operation with bounded exponential backoff.
|
|
31
34
|
* NOTE: Never used on state-changing transactions to prevent duplicate submissions.
|
|
@@ -53,22 +56,64 @@ async function withSafeReadRetry(fn, options = {}) {
|
|
|
53
56
|
// ============================================================================
|
|
54
57
|
// Core Constants & Network Configuration
|
|
55
58
|
// ============================================================================
|
|
59
|
+
/** Default EVM chain (BNB Smart Chain Testnet). Pass `chainId: 84532` for Base Sepolia. */
|
|
56
60
|
exports.VEILIO_CHAIN_ID = deployments_js_1.VEILIO_DEPLOYMENTS.bnbTestnet.chainId;
|
|
57
61
|
exports.VEILIO_CONTRACT_ADDRESS = deployments_js_1.VEILIO_DEPLOYMENTS.bnbTestnet.auction;
|
|
58
62
|
/** Default VeilServiceEscrow on BNB Smart Chain Testnet. Override with `contractAddress`. */
|
|
59
63
|
exports.VEILIO_SERVICES_CONTRACT_ADDRESS = deployments_js_1.VEILIO_DEPLOYMENTS.bnbTestnet.serviceEscrow;
|
|
64
|
+
/** EVM chains VEILIO is deployed on: BNB Smart Chain Testnet (97) and Base Sepolia (84532). */
|
|
65
|
+
exports.VEILIO_SUPPORTED_CHAIN_IDS = [
|
|
66
|
+
deployments_js_1.VEILIO_DEPLOYMENTS.bnbTestnet.chainId,
|
|
67
|
+
deployments_js_1.VEILIO_DEPLOYMENTS.baseSepolia.chainId,
|
|
68
|
+
];
|
|
69
|
+
function chainLabel(chainId) {
|
|
70
|
+
return chainId === deployments_js_1.VEILIO_DEPLOYMENTS.baseSepolia.chainId ? 'Base Sepolia' : 'BNB Chain testnet';
|
|
71
|
+
}
|
|
72
|
+
/** Validates a chain ID and returns it typed as a supported VEILIO EVM chain. */
|
|
73
|
+
function assertVeilioChainId(chainId, product = 'VEILIO') {
|
|
74
|
+
if (chainId !== deployments_js_1.VEILIO_DEPLOYMENTS.bnbTestnet.chainId && chainId !== deployments_js_1.VEILIO_DEPLOYMENTS.baseSepolia.chainId) {
|
|
75
|
+
throw new errors_js_1.VeilioSdkError({
|
|
76
|
+
code: 'CHAIN_MISMATCH',
|
|
77
|
+
message: `Invalid chain ID ${chainId}. ${product} operates on BNB Chain (chain ID ${exports.VEILIO_CHAIN_ID}) or Base Sepolia (chain ID 84532).`,
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
return chainId;
|
|
81
|
+
}
|
|
82
|
+
/** Default deployed addresses for a supported EVM chain. */
|
|
83
|
+
function getVeilioDeployment(chainId) {
|
|
84
|
+
const id = assertVeilioChainId(chainId);
|
|
85
|
+
return id === deployments_js_1.VEILIO_DEPLOYMENTS.baseSepolia.chainId ? deployments_js_1.VEILIO_DEPLOYMENTS.baseSepolia : deployments_js_1.VEILIO_DEPLOYMENTS.bnbTestnet;
|
|
86
|
+
}
|
|
87
|
+
/** Throws CHAIN_MISMATCH when the wallet is connected to a different chain than the client targets. */
|
|
88
|
+
function assertWalletOnChain(walletClient, targetChainId) {
|
|
89
|
+
if (walletClient?.chain && walletClient.chain.id !== targetChainId) {
|
|
90
|
+
throw new errors_js_1.VeilioSdkError({
|
|
91
|
+
code: 'CHAIN_MISMATCH',
|
|
92
|
+
message: `Connected wallet chain ID (${walletClient.chain.id}) does not match required ${chainLabel(targetChainId)} (${targetChainId}).`,
|
|
93
|
+
context: { walletChainId: walletClient.chain.id, targetChainId },
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
}
|
|
60
97
|
// ============================================================================
|
|
61
98
|
// Auction & Asset Marketplace ABI & Types (Preserved for 100% Backward Compatibility)
|
|
62
99
|
// ============================================================================
|
|
63
|
-
|
|
100
|
+
/** Subset of the deployed VeilNFTV4 auction ABI (BNB testnet + Base Sepolia) used by the agent. */
|
|
101
|
+
exports.veilAuctionAbi = (0, viem_1.parseAbi)([
|
|
64
102
|
'function auctionCount() view returns (uint256)',
|
|
65
103
|
'function auctions(uint256 auctionId) view returns (uint256 id, address seller, string itemName, string description, string imageURI, uint256 startingPrice, uint256 commitEndTime, uint256 revealEndTime, uint256 inspectionDuration, uint256 inspectionEndTime, uint8 state, address highestBidder, uint256 highestBid, uint256 bidderCount, uint256 revealedCount, bytes32 finalTxHash, string evidenceHash, string reviewReason)',
|
|
66
104
|
'function getAuctionState(uint256 auctionId) view returns (uint8)',
|
|
67
105
|
'function commitments(uint256 auctionId, address bidder) view returns (bytes32 commitment, uint256 deposit, bool revealed, uint256 maxBid)',
|
|
106
|
+
'function nftAssets(uint256 auctionId) view returns (uint8 standard, address tokenContract, uint256 tokenId, uint256 amount, bool escrowed, bool delivered)',
|
|
107
|
+
'function pendingRefunds(address account) view returns (uint256)',
|
|
68
108
|
'function commitBid(uint256 auctionId, bytes32 commitment) payable',
|
|
69
109
|
'function revealBid(uint256 auctionId, uint256 maxBid, bytes32 secret)',
|
|
110
|
+
'function settleAuction(uint256 auctionId)',
|
|
70
111
|
'function acceptDataset(uint256 auctionId)',
|
|
112
|
+
'function finalizeSettlement(uint256 auctionId)',
|
|
113
|
+
'function requestRefund(uint256 auctionId, string evidenceHash)',
|
|
114
|
+
'function withdrawRefund()',
|
|
71
115
|
]);
|
|
116
|
+
const abi = exports.veilAuctionAbi;
|
|
72
117
|
exports.AUCTION_STATES = [
|
|
73
118
|
'Created',
|
|
74
119
|
'Bidding',
|
|
@@ -131,13 +176,7 @@ function serviceStateName(value) {
|
|
|
131
176
|
// Dedicated Services Escrow Client Factory
|
|
132
177
|
// ============================================================================
|
|
133
178
|
function createVeilioServicesClient(options) {
|
|
134
|
-
const targetChainId = options.chainId ?? exports.VEILIO_CHAIN_ID;
|
|
135
|
-
if (targetChainId !== exports.VEILIO_CHAIN_ID && targetChainId !== 84532) {
|
|
136
|
-
throw new errors_js_1.VeilioSdkError({
|
|
137
|
-
code: 'CHAIN_MISMATCH',
|
|
138
|
-
message: `Invalid chain ID ${targetChainId}. VEILIO Services operates on BNB Chain (chain ID ${exports.VEILIO_CHAIN_ID}) or Base Sepolia (chain ID 84532).`,
|
|
139
|
-
});
|
|
140
|
-
}
|
|
179
|
+
const targetChainId = assertVeilioChainId(options.chainId ?? exports.VEILIO_CHAIN_ID, 'VEILIO Services');
|
|
141
180
|
const defaultContractAddress = targetChainId === deployments_js_1.VEILIO_DEPLOYMENTS.baseSepolia.chainId
|
|
142
181
|
? deployments_js_1.VEILIO_DEPLOYMENTS.baseSepolia.serviceEscrow
|
|
143
182
|
: exports.VEILIO_SERVICES_CONTRACT_ADDRESS;
|
|
@@ -174,13 +213,7 @@ function createVeilioServicesClient(options) {
|
|
|
174
213
|
return acc;
|
|
175
214
|
}
|
|
176
215
|
function assertWalletChain(walletClient) {
|
|
177
|
-
|
|
178
|
-
const requiredName = targetChainId === 84532 ? 'Base Sepolia' : 'BNB Chain testnet';
|
|
179
|
-
throw new errors_js_1.VeilioSdkError({
|
|
180
|
-
code: 'CHAIN_MISMATCH',
|
|
181
|
-
message: `Connected wallet chain ID (${walletClient.chain.id}) does not match required ${requiredName} (${targetChainId}).`,
|
|
182
|
-
});
|
|
183
|
-
}
|
|
216
|
+
assertWalletOnChain(walletClient, targetChainId);
|
|
184
217
|
}
|
|
185
218
|
function makeTxResult(txHash) {
|
|
186
219
|
return {
|
|
@@ -462,9 +495,13 @@ function stateName(value) {
|
|
|
462
495
|
return state;
|
|
463
496
|
}
|
|
464
497
|
function createVeilioAgent(options) {
|
|
465
|
-
const
|
|
498
|
+
const targetChainId = assertVeilioChainId(options.chainId ?? exports.VEILIO_CHAIN_ID, 'VEILIO auctions');
|
|
499
|
+
const address = options.contractAddress ?? getVeilioDeployment(targetChainId).auction;
|
|
500
|
+
if (!(0, viem_1.isAddress)(address)) {
|
|
501
|
+
throw new errors_js_1.VeilioSdkError({ code: 'INVALID_CONFIG', message: 'Auction contractAddress is not a valid EVM address.' });
|
|
502
|
+
}
|
|
466
503
|
const apiBase = (options.apiBaseUrl || '').replace(/\/$/, '');
|
|
467
|
-
// Dedicated Services escrow client instance attached to the agent (
|
|
504
|
+
// Dedicated Services escrow client instance attached to the agent (same chain as the auction agent)
|
|
468
505
|
let servicesClientInstance;
|
|
469
506
|
try {
|
|
470
507
|
servicesClientInstance = createVeilioServicesClient({
|
|
@@ -472,7 +509,7 @@ function createVeilioAgent(options) {
|
|
|
472
509
|
walletClient: options.walletClient,
|
|
473
510
|
account: options.account,
|
|
474
511
|
contractAddress: options.servicesContractAddress,
|
|
475
|
-
chainId:
|
|
512
|
+
chainId: targetChainId,
|
|
476
513
|
});
|
|
477
514
|
}
|
|
478
515
|
catch {
|
|
@@ -628,22 +665,46 @@ function createVeilioAgent(options) {
|
|
|
628
665
|
maxBidWei: maxBidWei.toString(),
|
|
629
666
|
secret,
|
|
630
667
|
commitment,
|
|
631
|
-
chainId:
|
|
668
|
+
chainId: targetChainId,
|
|
632
669
|
contractAddress: address,
|
|
633
670
|
};
|
|
634
671
|
}
|
|
635
|
-
|
|
672
|
+
function requireWallet() {
|
|
636
673
|
const walletClient = options.walletClient;
|
|
637
674
|
if (!walletClient) {
|
|
638
675
|
throw new errors_js_1.VeilioSdkError({ code: 'WALLET_REQUIRED', message: 'A walletClient is required to submit transactions.' });
|
|
639
676
|
}
|
|
640
|
-
|
|
677
|
+
assertWalletOnChain(walletClient, targetChainId);
|
|
678
|
+
return walletClient;
|
|
679
|
+
}
|
|
680
|
+
function assertPreparedBidTarget(prepared) {
|
|
681
|
+
if (prepared.chainId !== targetChainId ||
|
|
641
682
|
prepared.contractAddress.toLowerCase() !== address.toLowerCase()) {
|
|
642
|
-
throw new errors_js_1.VeilioSdkError({
|
|
683
|
+
throw new errors_js_1.VeilioSdkError({
|
|
684
|
+
code: 'CHAIN_MISMATCH',
|
|
685
|
+
message: 'Prepared bid belongs to a different chain or contract.',
|
|
686
|
+
context: { preparedChainId: prepared.chainId, targetChainId },
|
|
687
|
+
});
|
|
643
688
|
}
|
|
644
689
|
if (prepared.bidder.toLowerCase() !== getAccount(options).toLowerCase()) {
|
|
645
690
|
throw new errors_js_1.VeilioSdkError({ code: 'UNAUTHORIZED', message: 'Prepared bid wallet does not match the connected agent wallet.' });
|
|
646
691
|
}
|
|
692
|
+
}
|
|
693
|
+
async function write(walletClient, functionName, args, value) {
|
|
694
|
+
return walletClient.writeContract({
|
|
695
|
+
address,
|
|
696
|
+
abi,
|
|
697
|
+
functionName,
|
|
698
|
+
args,
|
|
699
|
+
value,
|
|
700
|
+
account: walletClient.account ?? getAccount(options),
|
|
701
|
+
chain: walletClient.chain ?? undefined,
|
|
702
|
+
});
|
|
703
|
+
}
|
|
704
|
+
const nowSeconds = () => BigInt(Math.floor(Date.now() / 1000));
|
|
705
|
+
async function commitBid(prepared, depositAmount) {
|
|
706
|
+
const walletClient = requireWallet();
|
|
707
|
+
assertPreparedBidTarget(prepared);
|
|
647
708
|
const depositWei = (0, viem_1.parseEther)(String(depositAmount));
|
|
648
709
|
const auction = await getAuction(prepared.auctionId);
|
|
649
710
|
if (auction.state !== 'Bidding') {
|
|
@@ -664,31 +725,19 @@ function createVeilioAgent(options) {
|
|
|
664
725
|
if (commitment[0] !== `0x${'0'.repeat(64)}`) {
|
|
665
726
|
throw new errors_js_1.VeilioSdkError({ code: 'INVALID_INPUT', message: 'This wallet already committed to this auction.' });
|
|
666
727
|
}
|
|
667
|
-
return walletClient.
|
|
668
|
-
address,
|
|
669
|
-
abi,
|
|
670
|
-
functionName: 'commitBid',
|
|
671
|
-
args: [BigInt(prepared.auctionId), prepared.commitment],
|
|
672
|
-
value: depositWei,
|
|
673
|
-
account: walletClient.account ?? getAccount(options),
|
|
674
|
-
chain: walletClient.chain ?? undefined,
|
|
675
|
-
});
|
|
728
|
+
return write(walletClient, 'commitBid', [BigInt(prepared.auctionId), prepared.commitment], depositWei);
|
|
676
729
|
}
|
|
677
730
|
async function revealBid(prepared) {
|
|
678
|
-
const walletClient =
|
|
679
|
-
|
|
680
|
-
throw new errors_js_1.VeilioSdkError({ code: 'WALLET_REQUIRED', message: 'A walletClient is required to submit transactions.' });
|
|
681
|
-
}
|
|
682
|
-
if (prepared.chainId !== exports.VEILIO_CHAIN_ID ||
|
|
683
|
-
prepared.contractAddress.toLowerCase() !== address.toLowerCase()) {
|
|
684
|
-
throw new errors_js_1.VeilioSdkError({ code: 'CHAIN_MISMATCH', message: 'Prepared bid belongs to a different chain or contract.' });
|
|
685
|
-
}
|
|
686
|
-
if (prepared.bidder.toLowerCase() !== getAccount(options).toLowerCase()) {
|
|
687
|
-
throw new errors_js_1.VeilioSdkError({ code: 'UNAUTHORIZED', message: 'Prepared bid wallet does not match the connected agent wallet.' });
|
|
688
|
-
}
|
|
731
|
+
const walletClient = requireWallet();
|
|
732
|
+
assertPreparedBidTarget(prepared);
|
|
689
733
|
const auction = await getAuction(prepared.auctionId);
|
|
690
|
-
if (auction.state !== 'Revealing') {
|
|
691
|
-
throw new errors_js_1.VeilioSdkError({
|
|
734
|
+
if (auction.state !== 'Revealing' || nowSeconds() >= auction.revealEndTime) {
|
|
735
|
+
throw new errors_js_1.VeilioSdkError({
|
|
736
|
+
code: 'INVALID_INPUT',
|
|
737
|
+
message: auction.state === 'Revealing'
|
|
738
|
+
? 'Reveal phase has ended; the auction is waiting for settleAuction().'
|
|
739
|
+
: `Auction is ${auction.state}; it is not accepting reveals.`,
|
|
740
|
+
});
|
|
692
741
|
}
|
|
693
742
|
const commitment = await options.publicClient.readContract({
|
|
694
743
|
address,
|
|
@@ -706,14 +755,7 @@ function createVeilioAgent(options) {
|
|
|
706
755
|
if (expected !== prepared.commitment) {
|
|
707
756
|
throw new errors_js_1.VeilioSdkError({ code: 'INVALID_INPUT', message: 'Prepared bid secret does not match its commitment.' });
|
|
708
757
|
}
|
|
709
|
-
return walletClient.
|
|
710
|
-
address,
|
|
711
|
-
abi,
|
|
712
|
-
functionName: 'revealBid',
|
|
713
|
-
args: [BigInt(prepared.auctionId), BigInt(prepared.maxBidWei), prepared.secret],
|
|
714
|
-
account: walletClient.account ?? getAccount(options),
|
|
715
|
-
chain: walletClient.chain ?? undefined,
|
|
716
|
-
});
|
|
758
|
+
return write(walletClient, 'revealBid', [BigInt(prepared.auctionId), BigInt(prepared.maxBidWei), prepared.secret]);
|
|
717
759
|
}
|
|
718
760
|
async function getAuctionResult(auctionId) {
|
|
719
761
|
const auction = await getAuction(auctionId);
|
|
@@ -721,26 +763,136 @@ function createVeilioAgent(options) {
|
|
|
721
763
|
const isWinner = auction.highestBidder.toLowerCase() === agentAddress;
|
|
722
764
|
return {
|
|
723
765
|
auctionId: String(auctionId),
|
|
766
|
+
chainId: targetChainId,
|
|
724
767
|
state: auction.state,
|
|
725
768
|
isWinner,
|
|
726
769
|
highestBidder: auction.highestBidder,
|
|
770
|
+
/** Native-token amount (BNB on chain 97, ETH on Base Sepolia). */
|
|
771
|
+
winningBid: (0, viem_1.formatEther)(auction.highestBidWei),
|
|
772
|
+
/** @deprecated Use `winningBid`; kept for 0.2.x compatibility (also set on Base Sepolia). */
|
|
727
773
|
winningBidBnb: (0, viem_1.formatEther)(auction.highestBidWei),
|
|
728
774
|
};
|
|
729
775
|
}
|
|
776
|
+
/** True when the auction escrows an ERC-721/ERC-1155 token (VeilNFTV4 `nftAssets.standard != None`). */
|
|
777
|
+
async function isNftAuction(auctionId) {
|
|
778
|
+
const asset = await options.publicClient.readContract({
|
|
779
|
+
address,
|
|
780
|
+
abi,
|
|
781
|
+
functionName: 'nftAssets',
|
|
782
|
+
args: [BigInt(auctionId)],
|
|
783
|
+
});
|
|
784
|
+
return Number(asset[0]) !== 0;
|
|
785
|
+
}
|
|
786
|
+
/**
|
|
787
|
+
* Moves an auction out of the reveal phase once `revealEndTime` has passed. Anyone can call it.
|
|
788
|
+
* With a winner the auction enters Inspection; without one, deposits become withdrawable
|
|
789
|
+
* (`withdrawRefund`) and an escrowed NFT returns to the seller.
|
|
790
|
+
*/
|
|
791
|
+
async function settleAuction(auctionId) {
|
|
792
|
+
const walletClient = requireWallet();
|
|
793
|
+
const auction = await getAuction(auctionId);
|
|
794
|
+
if (auction.state !== 'Revealing') {
|
|
795
|
+
throw new errors_js_1.VeilioSdkError({ code: 'INVALID_INPUT', message: `Auction is ${auction.state}; only an auction past its reveal phase can be settled.` });
|
|
796
|
+
}
|
|
797
|
+
if (nowSeconds() < auction.revealEndTime) {
|
|
798
|
+
throw new errors_js_1.VeilioSdkError({ code: 'INVALID_INPUT', message: 'Reveal phase has not finished yet.', context: { revealEndTime: auction.revealEndTime.toString() } });
|
|
799
|
+
}
|
|
800
|
+
return write(walletClient, 'settleAuction', [BigInt(auctionId)]);
|
|
801
|
+
}
|
|
802
|
+
/**
|
|
803
|
+
* Winner accepts a dataset auction during inspection (`acceptDataset`), paying the seller.
|
|
804
|
+
* NFT auctions cannot be accepted: VeilNFTV4 delivers the token automatically through
|
|
805
|
+
* `finalizeSettlement` after inspection ends, so this throws for NFT auctions.
|
|
806
|
+
*/
|
|
730
807
|
async function claimAsset(auctionId) {
|
|
731
|
-
const walletClient =
|
|
732
|
-
if (
|
|
733
|
-
throw new errors_js_1.VeilioSdkError({
|
|
808
|
+
const walletClient = requireWallet();
|
|
809
|
+
if (await isNftAuction(auctionId)) {
|
|
810
|
+
throw new errors_js_1.VeilioSdkError({
|
|
811
|
+
code: 'INVALID_INPUT',
|
|
812
|
+
message: 'NFT auctions are completed with finalizeSettlement() after the inspection period ends; acceptDataset is blocked for NFTs.',
|
|
813
|
+
});
|
|
734
814
|
}
|
|
735
|
-
|
|
815
|
+
const auction = await getAuction(auctionId);
|
|
816
|
+
if (auction.state !== 'Inspection') {
|
|
817
|
+
throw new errors_js_1.VeilioSdkError({ code: 'INVALID_INPUT', message: `Auction is ${auction.state}; acceptDataset requires Inspection.` });
|
|
818
|
+
}
|
|
819
|
+
if (auction.highestBidder.toLowerCase() !== getAccount(options).toLowerCase()) {
|
|
820
|
+
throw new errors_js_1.VeilioSdkError({ code: 'UNAUTHORIZED', message: 'Only the winning bidder can accept the asset.' });
|
|
821
|
+
}
|
|
822
|
+
return write(walletClient, 'acceptDataset', [BigInt(auctionId)]);
|
|
823
|
+
}
|
|
824
|
+
/**
|
|
825
|
+
* Completes an auction once the inspection period has ended without a refund request:
|
|
826
|
+
* pays the seller (minus the 10% platform fee, credited as pull payments) and, for NFT
|
|
827
|
+
* auctions, delivers the escrowed token to the winner. Anyone can call it.
|
|
828
|
+
* This is the required completion path for NFT auctions.
|
|
829
|
+
*/
|
|
830
|
+
async function finalizeSettlement(auctionId) {
|
|
831
|
+
const walletClient = requireWallet();
|
|
832
|
+
const auction = await getAuction(auctionId);
|
|
833
|
+
if (auction.state !== 'Inspection') {
|
|
834
|
+
throw new errors_js_1.VeilioSdkError({ code: 'INVALID_INPUT', message: `Auction is ${auction.state}; finalizeSettlement requires Inspection.` });
|
|
835
|
+
}
|
|
836
|
+
if (nowSeconds() <= auction.inspectionEndTime) {
|
|
837
|
+
throw new errors_js_1.VeilioSdkError({
|
|
838
|
+
code: 'INVALID_INPUT',
|
|
839
|
+
message: 'Inspection period has not ended yet.',
|
|
840
|
+
context: { inspectionEndTime: auction.inspectionEndTime.toString() },
|
|
841
|
+
});
|
|
842
|
+
}
|
|
843
|
+
return write(walletClient, 'finalizeSettlement', [BigInt(auctionId)]);
|
|
844
|
+
}
|
|
845
|
+
/**
|
|
846
|
+
* Winner disputes the asset during inspection. `evidenceHash` is stored on-chain (e.g. an IPFS CID
|
|
847
|
+
* or sha256 of your evidence bundle); the platform reviewer then resolves the request.
|
|
848
|
+
* Note: on the deployed EVM contracts a refund request has no timeout, so funds stay locked until
|
|
849
|
+
* the reviewer acts.
|
|
850
|
+
*/
|
|
851
|
+
async function requestRefund(auctionId, evidenceHash) {
|
|
852
|
+
const walletClient = requireWallet();
|
|
853
|
+
const evidence = String(evidenceHash ?? '').trim();
|
|
854
|
+
if (!evidence) {
|
|
855
|
+
throw new errors_js_1.VeilioSdkError({ code: 'INVALID_INPUT', message: 'evidenceHash is required to request a refund.' });
|
|
856
|
+
}
|
|
857
|
+
const auction = await getAuction(auctionId);
|
|
858
|
+
if (auction.state !== 'Inspection' || nowSeconds() > auction.inspectionEndTime) {
|
|
859
|
+
throw new errors_js_1.VeilioSdkError({ code: 'INVALID_INPUT', message: 'Refunds can only be requested during the inspection period.' });
|
|
860
|
+
}
|
|
861
|
+
if (auction.highestBidder.toLowerCase() !== getAccount(options).toLowerCase()) {
|
|
862
|
+
throw new errors_js_1.VeilioSdkError({ code: 'UNAUTHORIZED', message: 'Only the winning bidder can request a refund.' });
|
|
863
|
+
}
|
|
864
|
+
return write(walletClient, 'requestRefund', [BigInt(auctionId), evidence]);
|
|
865
|
+
}
|
|
866
|
+
/** Pull-payment balance credited to `account` (losing deposits, over-deposits, seller proceeds, approved refunds). */
|
|
867
|
+
async function getPendingRefund(account) {
|
|
868
|
+
return options.publicClient.readContract({
|
|
736
869
|
address,
|
|
737
870
|
abi,
|
|
738
|
-
functionName: '
|
|
739
|
-
args: [
|
|
740
|
-
account: walletClient.account ?? getAccount(options),
|
|
741
|
-
chain: walletClient.chain ?? undefined,
|
|
871
|
+
functionName: 'pendingRefunds',
|
|
872
|
+
args: [account ?? getAccount(options)],
|
|
742
873
|
});
|
|
743
874
|
}
|
|
875
|
+
/** Withdraws the caller's whole `pendingRefunds` balance (all auctions at once). */
|
|
876
|
+
async function withdrawRefund() {
|
|
877
|
+
const walletClient = requireWallet();
|
|
878
|
+
const pending = await getPendingRefund();
|
|
879
|
+
if (pending <= 0n) {
|
|
880
|
+
throw new errors_js_1.VeilioSdkError({ code: 'INVALID_INPUT', message: 'No pending refund to withdraw for this wallet.' });
|
|
881
|
+
}
|
|
882
|
+
return write(walletClient, 'withdrawRefund', []);
|
|
883
|
+
}
|
|
884
|
+
/** Waits for a transaction returned by this agent and throws TRANSACTION_REVERTED on failure. */
|
|
885
|
+
async function waitForTransaction(hash) {
|
|
886
|
+
const receipt = await options.publicClient.waitForTransactionReceipt({ hash });
|
|
887
|
+
if (receipt.status === 'reverted') {
|
|
888
|
+
throw new errors_js_1.VeilioSdkError({
|
|
889
|
+
code: 'TRANSACTION_REVERTED',
|
|
890
|
+
message: `Transaction ${hash} reverted on-chain.`,
|
|
891
|
+
context: { txHash: hash, status: receipt.status },
|
|
892
|
+
});
|
|
893
|
+
}
|
|
894
|
+
return receipt;
|
|
895
|
+
}
|
|
744
896
|
async function getLicense(auctionId) {
|
|
745
897
|
const details = await getAssetDetails(auctionId);
|
|
746
898
|
return {
|
|
@@ -752,7 +904,7 @@ function createVeilioAgent(options) {
|
|
|
752
904
|
}
|
|
753
905
|
return {
|
|
754
906
|
address,
|
|
755
|
-
chainId:
|
|
907
|
+
chainId: targetChainId,
|
|
756
908
|
getAuction,
|
|
757
909
|
listAuctions,
|
|
758
910
|
searchAssets,
|
|
@@ -762,7 +914,14 @@ function createVeilioAgent(options) {
|
|
|
762
914
|
commitBid,
|
|
763
915
|
revealBid,
|
|
764
916
|
getAuctionResult,
|
|
917
|
+
isNftAuction,
|
|
918
|
+
settleAuction,
|
|
765
919
|
claimAsset,
|
|
920
|
+
finalizeSettlement,
|
|
921
|
+
requestRefund,
|
|
922
|
+
getPendingRefund,
|
|
923
|
+
withdrawRefund,
|
|
924
|
+
waitForTransaction,
|
|
766
925
|
getLicense,
|
|
767
926
|
services: servicesClientInstance,
|
|
768
927
|
};
|
package/dist/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { type MessageSigner, type ServiceAuthPayload } from './auth.js';
|
|
2
|
+
/**
|
|
3
|
+
* Off-chain VEILIO Services API helper.
|
|
4
|
+
*
|
|
5
|
+
* The on-chain escrow (`createVeilioServicesClient`, or the Solana client) moves funds, but the
|
|
6
|
+
* order status shown in the VEILIO app (`InProgress`, `InReview`, `Completed`, ...) only changes
|
|
7
|
+
* when the API is told about it. Call the matching method here after each on-chain step.
|
|
8
|
+
*
|
|
9
|
+
* State-changing calls are signed per request with `signServiceAuth` (EIP-191 personal_sign,
|
|
10
|
+
* nonce consumed by the server). Reads use a reusable 30-minute session (`signServiceSession`)
|
|
11
|
+
* sent in the `x-veilio-auth` header; it is signed once and cached. The server derives the
|
|
12
|
+
* network from the order itself, so no `network` field is ever sent.
|
|
13
|
+
*/
|
|
14
|
+
export interface VeilioServicesApiOptions {
|
|
15
|
+
/** e.g. "https://veilio.example". Trailing slashes are ignored. */
|
|
16
|
+
apiBaseUrl: string;
|
|
17
|
+
/** Wallet that signs the auth message (a viem LocalAccount works). Must be the order's buyer/seller. */
|
|
18
|
+
signer: MessageSigner;
|
|
19
|
+
/** Custom fetch (defaults to globalThis.fetch). */
|
|
20
|
+
fetch?: typeof globalThis.fetch;
|
|
21
|
+
}
|
|
22
|
+
export interface NotifyDepositInput {
|
|
23
|
+
/** VEILIO order ID (the `id` in /api/orders/{id}). */
|
|
24
|
+
orderId: string;
|
|
25
|
+
/** Deposit transaction hash (EVM) or signature (Solana). */
|
|
26
|
+
txHash: string;
|
|
27
|
+
/** bytes32 order ID used on-chain, if it differs from the default derived from the order. */
|
|
28
|
+
onChainOrderId?: string;
|
|
29
|
+
}
|
|
30
|
+
export interface SubmitDeliveryApiInput {
|
|
31
|
+
orderId: string;
|
|
32
|
+
/**
|
|
33
|
+
* Required: the on-chain `submitDelivery` transaction hash (EVM, must emit DeliverySubmitted by
|
|
34
|
+
* the seller) or `submit_delivery` signature (Solana). Send the on-chain tx first.
|
|
35
|
+
*/
|
|
36
|
+
deliveryTxHash: string;
|
|
37
|
+
/** At least 5 characters. */
|
|
38
|
+
description: string;
|
|
39
|
+
/** Up to 500 characters each. */
|
|
40
|
+
deliverableReferences?: string[];
|
|
41
|
+
}
|
|
42
|
+
export interface ApproveOrderApiInput {
|
|
43
|
+
orderId: string;
|
|
44
|
+
/** `releaseFunds` transaction hash (EVM) or signature (Solana). */
|
|
45
|
+
releaseTxHash: string;
|
|
46
|
+
}
|
|
47
|
+
export interface CancelOrderApiInput {
|
|
48
|
+
orderId: string;
|
|
49
|
+
reason?: string;
|
|
50
|
+
/** Required once the order is funded: the on-chain cancel/refund transaction. */
|
|
51
|
+
txHash?: string;
|
|
52
|
+
}
|
|
53
|
+
export interface RequestRevisionApiInput {
|
|
54
|
+
orderId: string;
|
|
55
|
+
/** At least 5 characters. */
|
|
56
|
+
feedback: string;
|
|
57
|
+
}
|
|
58
|
+
export declare function createVeilioServicesApi(options: VeilioServicesApiOptions): {
|
|
59
|
+
apiBaseUrl: string;
|
|
60
|
+
address: `0x${string}`;
|
|
61
|
+
notifyDeposit: (input: NotifyDepositInput) => Promise<unknown>;
|
|
62
|
+
submit: (input: SubmitDeliveryApiInput) => Promise<unknown>;
|
|
63
|
+
requestRevision: (input: RequestRevisionApiInput) => Promise<unknown>;
|
|
64
|
+
approve: (input: ApproveOrderApiInput) => Promise<unknown>;
|
|
65
|
+
cancel: (input: CancelOrderApiInput) => Promise<unknown>;
|
|
66
|
+
getSession: () => Promise<ServiceAuthPayload>;
|
|
67
|
+
getSessionHeaders: () => Promise<Record<string, string>>;
|
|
68
|
+
getOrder: (orderId: string) => Promise<{
|
|
69
|
+
success: boolean;
|
|
70
|
+
order: Record<string, unknown>;
|
|
71
|
+
}>;
|
|
72
|
+
getPaymentRequest: (paymentRequestId: string) => Promise<{
|
|
73
|
+
success: boolean;
|
|
74
|
+
paymentRequest: Record<string, unknown>;
|
|
75
|
+
}>;
|
|
76
|
+
listConversations: () => Promise<{
|
|
77
|
+
success: boolean;
|
|
78
|
+
conversations: unknown[];
|
|
79
|
+
}>;
|
|
80
|
+
getConversationMessages: (conversationId: string) => Promise<{
|
|
81
|
+
success: boolean;
|
|
82
|
+
conversation: unknown;
|
|
83
|
+
messages: unknown[];
|
|
84
|
+
}>;
|
|
85
|
+
};
|
|
86
|
+
//# sourceMappingURL=servicesApi.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"servicesApi.d.ts","sourceRoot":"","sources":["../../src/servicesApi.ts"],"names":[],"mappings":"AACA,OAAO,EAKL,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACxB,MAAM,WAAW,CAAC;AAEnB;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,wBAAwB;IACvC,mEAAmE;IACnE,UAAU,EAAE,MAAM,CAAC;IACnB,wGAAwG;IACxG,MAAM,EAAE,aAAa,CAAC;IACtB,mDAAmD;IACnD,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;CACjC;AAED,MAAM,WAAW,kBAAkB;IACjC,sDAAsD;IACtD,OAAO,EAAE,MAAM,CAAC;IAChB,4DAA4D;IAC5D,MAAM,EAAE,MAAM,CAAC;IACf,6FAA6F;IAC7F,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,cAAc,EAAE,MAAM,CAAC;IACvB,6BAA6B;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,iCAAiC;IACjC,qBAAqB,CAAC,EAAE,MAAM,EAAE,CAAC;CAClC;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,mEAAmE;IACnE,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iFAAiF;IACjF,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,6BAA6B;IAC7B,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,wBAAwB;;;2BA6HnC,kBAAkB;oBAUzB,sBAAsB;6BAmBb,uBAAuB;qBAW/B,oBAAoB;oBASrB,mBAAmB;sBA3HnB,OAAO,CAAC,kBAAkB,CAAC;6BAYpB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;wBAUlC,MAAM;iBAEf,OAAO;eAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;0CAIZ,MAAM;iBAEjC,OAAO;wBAAkB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;iBAShD,OAAO;uBAAiB,OAAO,EAAE;;8CAQF,MAAM;iBAErC,OAAO;sBAAgB,OAAO;kBAAY,OAAO,EAAE;;EAmG5E"}
|