@tradeport/sui-trading-sdk 0.1.13 → 0.1.14

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/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@tradeport/sui-trading-sdk",
3
3
  "license": "MIT",
4
- "version": "0.1.13",
4
+ "version": "0.1.14",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",
7
7
  "types": "dist/index.d.ts",
@@ -5,7 +5,6 @@ import {
5
5
  BLUEMOVE_OFFER_DATA_OBJECT,
6
6
  BLUEMOVE_ROYALTY_COLLECTION_OBJECT,
7
7
  TRADEPORT_BIDDING_STORE,
8
- TRADEPORT_KIOSK_BIDDING_ESCROW_KIOSK,
9
8
  TRADEPORT_KIOSK_BIDDING_STORE,
10
9
  } from '../../constants';
11
10
  import { getRoyaltyRuleModule } from '../../helpers/getRoyaltyRuleModule';
@@ -70,15 +69,13 @@ export async function addTradeportKioskAcceptNftBidTx({
70
69
 
71
70
  const [feeCoin, transferRequest] = tx.moveCall({
72
71
  target:
73
- '0x33a9e4a3089d911c2a2bf16157a1d6a4a8cbd9a2106a98ecbaefe6ed370d7a25::kiosk_biddings::accept_bid',
72
+ '0xc94af80a10796ad0732cca33b38a858f712256da0763a65bafb2a63cf3e6a0d0::kiosk_biddings::accept_bid_with_purchase_cap',
74
73
  arguments: [
75
74
  tx.object(TRADEPORT_KIOSK_BIDDING_STORE),
76
75
  tx.pure.address(bidNonce),
77
- tx.object(TRADEPORT_KIOSK_BIDDING_ESCROW_KIOSK),
78
76
  tx.object(kioskTx.kiosk.value ?? kioskTx.kiosk),
79
77
  tx.object(kioskTx.kioskCap.value ?? kioskTx.kioskCap),
80
78
  tx.pure.address(nftTokenId),
81
- tx.object(transferPolicy),
82
79
  ],
83
80
  typeArguments: [nftType],
84
81
  });
@@ -95,7 +92,6 @@ export async function addTradeportKioskAcceptNftBidTx({
95
92
  nftType,
96
93
  price: '0',
97
94
  transferRequest,
98
- kioskToLockRuleProve: TRADEPORT_KIOSK_BIDDING_ESCROW_KIOSK,
99
95
  shouldSkipKioskLocking: true,
100
96
  shouldSkipResolvingRoyaltyRule: true,
101
97
  });
@@ -76,7 +76,7 @@ export const addTradeportKioskBuyTx = async ({
76
76
 
77
77
  const [kioskItem, transferRequest, kioskPrice] = tx.moveCall({
78
78
  target:
79
- '0x33a9e4a3089d911c2a2bf16157a1d6a4a8cbd9a2106a98ecbaefe6ed370d7a25::kiosk_listings::buy',
79
+ '0xc94af80a10796ad0732cca33b38a858f712256da0763a65bafb2a63cf3e6a0d0::kiosk_listings::buy',
80
80
  arguments: [
81
81
  tx.object(TRADEPORT_KIOSK_LISTING_STORE),
82
82
  tx.object(sellerKiosk),
@@ -48,7 +48,7 @@ export const addClaimAcceptedBidNftTx = async ({
48
48
 
49
49
  const [transferRequest] = tx.moveCall({
50
50
  target:
51
- '0x33a9e4a3089d911c2a2bf16157a1d6a4a8cbd9a2106a98ecbaefe6ed370d7a25::kiosk_biddings::claim_bid',
51
+ '0xc94af80a10796ad0732cca33b38a858f712256da0763a65bafb2a63cf3e6a0d0::kiosk_biddings::claim_bid',
52
52
  arguments: [
53
53
  tx.object(TRADEPORT_KIOSK_BIDDING_STORE),
54
54
  tx.object(TRADEPORT_KIOSK_BIDDING_ESCROW_KIOSK),
@@ -70,6 +70,40 @@ export const addClaimAcceptedBidNftTx = async ({
70
70
  });
71
71
  };
72
72
 
73
+ export const addClaimAcceptedBidNftWithPurchaseCapTx = async ({
74
+ tx,
75
+ kioskTx,
76
+ sharedObjects,
77
+ nftTokenId,
78
+ nftType,
79
+ sellerKiosk,
80
+ }: ClaimAcceptedBidNftTx) => {
81
+ const { transferPolicy } = sharedObjects;
82
+
83
+ const [transferRequest] = tx.moveCall({
84
+ target:
85
+ '0xc94af80a10796ad0732cca33b38a858f712256da0763a65bafb2a63cf3e6a0d0::kiosk_biddings::claim_bid_with_purchase_cap',
86
+ arguments: [
87
+ tx.object(TRADEPORT_KIOSK_BIDDING_STORE),
88
+ tx.object(sellerKiosk),
89
+ tx.object(kioskTx.kiosk.value ?? kioskTx.kiosk),
90
+ tx.object(kioskTx.kioskCap.value ?? kioskTx.kioskCap),
91
+ tx.pure.address(nftTokenId),
92
+ tx.object(transferPolicy),
93
+ ],
94
+ typeArguments: [nftType],
95
+ });
96
+
97
+ await resolveTransferPolicies({
98
+ tx,
99
+ kioskTx,
100
+ nftType,
101
+ price: '0',
102
+ transferRequest,
103
+ shouldSkipKioskLocking: true,
104
+ });
105
+ };
106
+
73
107
  export const addClaimTransferredNftTx = async ({
74
108
  tx,
75
109
  sharedObjects,
@@ -81,7 +115,7 @@ export const addClaimTransferredNftTx = async ({
81
115
 
82
116
  const [transferRequest] = tx.moveCall({
83
117
  target:
84
- '0x78eae99d1a7edae714b5de107f4b44ccbdf5f9ca6919498d9b024ef378dc13f7::kiosk_transfers::claim',
118
+ '0x49642273ca7db3d942f9fd810c93467974c40e73ea7f03e8e7a632f1222aca73::kiosk_transfers::claim',
85
119
  arguments: [
86
120
  tx.object(TRADEPORT_KIOSK_TRANSFERS_STORE),
87
121
  tx.object(TRADEPORT_KIOSK_TRANSFERS_ESCROW_KIOSK),
@@ -102,3 +136,37 @@ export const addClaimTransferredNftTx = async ({
102
136
  shouldSkipKioskLocking: true,
103
137
  });
104
138
  };
139
+
140
+ export const addClaimTransferredNftWithPurchaseCapTx = async ({
141
+ tx,
142
+ sharedObjects,
143
+ kioskTx,
144
+ nftTokenId,
145
+ nftType,
146
+ sellerKiosk,
147
+ }: ClaimTransferredNftTx) => {
148
+ const { transferPolicy } = sharedObjects;
149
+
150
+ const [transferRequest] = tx.moveCall({
151
+ target:
152
+ '0x49642273ca7db3d942f9fd810c93467974c40e73ea7f03e8e7a632f1222aca73::kiosk_transfers::claim_with_purchase_cap',
153
+ arguments: [
154
+ tx.object(TRADEPORT_KIOSK_TRANSFERS_STORE),
155
+ tx.object(sellerKiosk),
156
+ tx.object(kioskTx.kiosk.value ?? kioskTx.kiosk),
157
+ tx.object(kioskTx.kioskCap.value ?? kioskTx.kioskCap),
158
+ tx.pure.address(nftTokenId),
159
+ tx.object(transferPolicy),
160
+ ],
161
+ typeArguments: [nftType],
162
+ });
163
+
164
+ await resolveTransferPolicies({
165
+ tx,
166
+ kioskTx,
167
+ nftType,
168
+ price: '0',
169
+ transferRequest,
170
+ shouldSkipKioskLocking: true,
171
+ });
172
+ };
@@ -7,8 +7,10 @@ import { getSharedObjects } from '../../helpers/getSharedObjects';
7
7
  import { kioskTxWrapper } from '../../helpers/kiosk/kioskTxWrapper';
8
8
  import {
9
9
  addClaimAcceptedBidNftTx,
10
+ addClaimAcceptedBidNftWithPurchaseCapTx,
10
11
  addClaimTradeHoldTx,
11
12
  addClaimTransferredNftTx,
13
+ addClaimTransferredNftWithPurchaseCapTx,
12
14
  } from './addClaimNftsTxs';
13
15
 
14
16
  export type ClaimTradeHoldTx = {
@@ -105,14 +107,26 @@ export const claimNfts = async (
105
107
  sellerKiosk: nft?.chain_state?.kiosk_id,
106
108
  };
107
109
 
108
- await kioskTxWrapper({
109
- tx,
110
- kioskOwner: txData?.claimer,
111
- kiosk: txData?.sellerKiosk,
112
- async runCommands(kioskTx) {
113
- await addClaimAcceptedBidNftTx({ ...txData, kioskTx });
114
- },
115
- });
110
+ try {
111
+ await kioskTxWrapper({
112
+ tx,
113
+ kioskOwner: txData?.claimer,
114
+ kiosk: txData?.sellerKiosk,
115
+ async runCommands(kioskTx) {
116
+ await addClaimAcceptedBidNftWithPurchaseCapTx({ ...txData, kioskTx });
117
+ },
118
+ });
119
+ } catch {
120
+ await kioskTxWrapper({
121
+ tx,
122
+ kioskOwner: txData?.claimer,
123
+ kiosk: txData?.sellerKiosk,
124
+ async runCommands(kioskTx) {
125
+ await addClaimAcceptedBidNftTx({ ...txData, kioskTx });
126
+ },
127
+ });
128
+ }
129
+
116
130
  continue;
117
131
  }
118
132
 
@@ -127,14 +141,25 @@ export const claimNfts = async (
127
141
  sellerKiosk: nft?.chain_state?.kiosk_id,
128
142
  };
129
143
 
130
- await kioskTxWrapper({
131
- tx,
132
- kioskOwner: txData?.claimer,
133
- kiosk: txData?.sellerKiosk,
134
- async runCommands(kioskTx) {
135
- await addClaimTransferredNftTx({ ...txData, kioskTx });
136
- },
137
- });
144
+ try {
145
+ await kioskTxWrapper({
146
+ tx,
147
+ kioskOwner: txData?.claimer,
148
+ kiosk: txData?.sellerKiosk,
149
+ async runCommands(kioskTx) {
150
+ await addClaimTransferredNftWithPurchaseCapTx({ ...txData, kioskTx });
151
+ },
152
+ });
153
+ } catch {
154
+ await kioskTxWrapper({
155
+ tx,
156
+ kioskOwner: txData?.claimer,
157
+ kiosk: txData?.sellerKiosk,
158
+ async runCommands(kioskTx) {
159
+ await addClaimTransferredNftTx({ ...txData, kioskTx });
160
+ },
161
+ });
162
+ }
138
163
  }
139
164
 
140
165
  nftsForTracking.push({
@@ -97,7 +97,7 @@ export async function addTradePortKioskListTx({
97
97
 
98
98
  tx.moveCall({
99
99
  target:
100
- '0x33a9e4a3089d911c2a2bf16157a1d6a4a8cbd9a2106a98ecbaefe6ed370d7a25::kiosk_listings::list',
100
+ '0xc94af80a10796ad0732cca33b38a858f712256da0763a65bafb2a63cf3e6a0d0::kiosk_listings::list',
101
101
  arguments: [
102
102
  tx.object(TRADEPORT_KIOSK_LISTING_STORE),
103
103
  tx.object(kioskTx.kiosk.value ?? kioskTx.kiosk),
@@ -82,7 +82,7 @@ export function addTradePortKioskCollectionBidTx({
82
82
 
83
83
  tx.moveCall({
84
84
  target:
85
- '0x33a9e4a3089d911c2a2bf16157a1d6a4a8cbd9a2106a98ecbaefe6ed370d7a25::kiosk_biddings::collection_bid',
85
+ '0xc94af80a10796ad0732cca33b38a858f712256da0763a65bafb2a63cf3e6a0d0::kiosk_biddings::collection_bid',
86
86
  arguments: [
87
87
  tx.object(TRADEPORT_KIOSK_BIDDING_STORE),
88
88
  tx.pure.u64(bidAmount),
@@ -72,7 +72,7 @@ function addTradePortKioskPlaceNftBidTx({
72
72
 
73
73
  tx.moveCall({
74
74
  target:
75
- '0x33a9e4a3089d911c2a2bf16157a1d6a4a8cbd9a2106a98ecbaefe6ed370d7a25::kiosk_biddings::bid',
75
+ '0xc94af80a10796ad0732cca33b38a858f712256da0763a65bafb2a63cf3e6a0d0::kiosk_biddings::bid',
76
76
  arguments: [
77
77
  tx.object(TRADEPORT_KIOSK_BIDDING_STORE),
78
78
  tx.pure.address(nftTokenId),
@@ -21,7 +21,7 @@ export function addTradeportRemoveNftBidTx({ tx, bidNonce, nftType }: RemoveNftB
21
21
  export function addTradeportKioskRemoveNftBidTx({ tx, bidNonce, nftType }: RemoveNftBidTx) {
22
22
  tx.moveCall({
23
23
  target:
24
- '0x33a9e4a3089d911c2a2bf16157a1d6a4a8cbd9a2106a98ecbaefe6ed370d7a25::kiosk_biddings::cancel_bid',
24
+ '0xc94af80a10796ad0732cca33b38a858f712256da0763a65bafb2a63cf3e6a0d0::kiosk_biddings::cancel_bid',
25
25
  arguments: [tx.object(TRADEPORT_KIOSK_BIDDING_STORE), tx.pure.address(bidNonce)],
26
26
  typeArguments: [nftType],
27
27
  });
@@ -1,8 +1,4 @@
1
- import {
2
- TRADEPORT_KIOSK_TRANSFERS_ESCROW_KIOSK,
3
- TRADEPORT_KIOSK_TRANSFERS_STORE,
4
- } from '../../constants';
5
- import { resolveTransferPolicies } from '../../helpers/kiosk/resolveTransferPolicies';
1
+ import { TRADEPORT_KIOSK_TRANSFERS_STORE } from '../../constants';
6
2
  import { getOBKiosk } from '../../helpers/originByte/getOBKiosk';
7
3
  import { addLeadingZerosAfter0x } from '../../utils/addLeadingZerosAfter0x';
8
4
  import { type TransferNftTx } from './transferNfts';
@@ -39,36 +35,21 @@ export async function addOriginByteTransferNftTx({
39
35
 
40
36
  export async function addTradeportKioskTransferTx({
41
37
  tx,
42
- sharedObjects,
43
38
  kioskTx,
44
39
  nftTokenId,
45
40
  nftType,
46
41
  recipientAddress,
47
42
  }: TransferNftTx) {
48
- const { transferPolicy } = sharedObjects;
49
-
50
- const [transferRequest] = tx.moveCall({
43
+ tx.moveCall({
51
44
  target:
52
- '0x78eae99d1a7edae714b5de107f4b44ccbdf5f9ca6919498d9b024ef378dc13f7::kiosk_transfers::transfer',
45
+ '0x49642273ca7db3d942f9fd810c93467974c40e73ea7f03e8e7a632f1222aca73::kiosk_transfers::transfer_with_purchase_capability',
53
46
  arguments: [
54
47
  tx.object(TRADEPORT_KIOSK_TRANSFERS_STORE),
55
- tx.object(TRADEPORT_KIOSK_TRANSFERS_ESCROW_KIOSK),
56
48
  tx.object(kioskTx.kiosk.value ?? kioskTx.kiosk),
57
49
  tx.object(kioskTx.kioskCap.value ?? kioskTx.kioskCap),
58
50
  tx.pure.address(nftTokenId),
59
51
  tx.pure.address(addLeadingZerosAfter0x(recipientAddress)),
60
- tx.object(transferPolicy),
61
52
  ],
62
53
  typeArguments: [nftType],
63
54
  });
64
-
65
- await resolveTransferPolicies({
66
- tx,
67
- kioskTx,
68
- nftType,
69
- price: '0',
70
- transferRequest,
71
- kioskToLockRuleProve: TRADEPORT_KIOSK_TRANSFERS_ESCROW_KIOSK,
72
- shouldSkipKioskLocking: true,
73
- });
74
55
  }
@@ -33,7 +33,7 @@ export async function addTradePortKioskUnlistTx({
33
33
  }: UnlistListingTx) {
34
34
  tx.moveCall({
35
35
  target:
36
- '0x33a9e4a3089d911c2a2bf16157a1d6a4a8cbd9a2106a98ecbaefe6ed370d7a25::kiosk_listings::unlist',
36
+ '0xc94af80a10796ad0732cca33b38a858f712256da0763a65bafb2a63cf3e6a0d0::kiosk_listings::unlist',
37
37
  arguments: [
38
38
  tx.object(TRADEPORT_KIOSK_LISTING_STORE),
39
39
  tx.object(kioskTx.kiosk.value ?? kioskTx.kiosk),