@tradeport/sui-trading-sdk 0.4.48 → 0.4.49

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/index.mjs CHANGED
@@ -109,14 +109,15 @@ var fetchCollectionBidsAtSamePrice = gql3`
109
109
  import { Transaction as Transaction2 } from "@mysten/sui/transactions";
110
110
 
111
111
  // src/constants.ts
112
- var MYSTEN_TRANFER_POLICY_RULES_PACKAGE_ID = "0x434b5bd8f6a7b05fede0ff46c6e511d71ea326ed38056e3bcd681d2d7c2a7879";
112
+ var MYSTEN_TRANSFER_POLICY_RULES_PACKAGE_ID = "0x434b5bd8f6a7b05fede0ff46c6e511d71ea326ed38056e3bcd681d2d7c2a7879";
113
+ var MYSTEN_TRANSFER_POLICY_RULES_PACKAGE_ID_V2 = "0x0cb4bcc0560340eb1a1b929cabe56b33fc6449820ec8c1980d69bb98b649b802";
113
114
  var TRADEPORT_BENEFICIARY_ADDRESS = "0xbca3b5c01c8d1a93aed3a036feff45145518292dd3c1db1d67cc99a699a7b517";
114
115
  var TRADEPORT_DEFAULT_FEE_DECIMAL_PERCENT = 0.03;
115
116
  var TRADEPORT_THIRD_PARTY_FEE_DECIMAL_PERCENT = 5e-3;
116
117
  var TRADEPORT_LISTINGS_DEFAULT_COMMISSION_BPS = 300;
117
118
  var TRADEPORT_LISTING_STORE = "0x47cba0b6309a12ce39f9306e28b899ed4b3698bce4f4911fd0c58ff2329a2ff6";
118
119
  var TRADEPORT_BIDDING_STORE = "0x3d3b0c6e616fdc1a45b2b73d022bc085448e78bd729d28081c7a340abb33cba1";
119
- var TRADEPORT_LISTINGS_PACKAGE = "0x046de0d9c1d7aea8b27744308a0607515677cf9035e1c98d88cb27bbc84a77ae";
120
+ var TRADEPORT_LISTINGS_PACKAGE = "0x6cfe7388ccf732432906d7faebcc33fd91e11d4c2f8cb3ae0082b8d3269e3d5b";
120
121
  var TRADEPORT_LISTINGS_STORE = "0xf96f9363ac5a64c058bf7140723226804d74c0dab2dd27516fb441a180cd763b";
121
122
  var TRADEPORT_KIOSK_LISTING_STORE = "0xbff3161b047fb8b727883838c09b08afa9e0dd0f5488bde9e99e80643da9b9e0";
122
123
  var TRADEPORT_KIOSK_TRANSFERS_STORE = "0xe0f61b6915d3fd4ec8bbe4618514e2152a82841605bfa00cde22ace434153a1b";
@@ -126,7 +127,7 @@ var TRADEPORT_KIOSK_BIDDING_ESCROW_KIOSK = "0x151fbe627d3f8de855f424c879ea2176d8
126
127
  var TRADEPORT_KIOSK_BID_NONCE_TYPE = "0xec175e537be9e48f75fa6929291de6454d2502f1091feb22c0d26a22821bbf28::kiosk_biddings::Bid";
127
128
  var TRADEPORT_PRICE_LOCK_PACKAGE = "0x3cb532a2548290780a3d70ad6f4f06abc5bebb75ec6f8dd0197d4d2b2860c5d8";
128
129
  var TRADEPORT_PRICE_LOCK_STORE = "0x4b705de46a79b29276baf45009bc7d6f70cc0f1407f0c9e03cac5729c0c47946";
129
- var TRADEPORT_MULTI_BID_PACKAGE = "0xd1dedf8379f1781469e95cb92eed7e155c8ad141c8528c3855f59ce2a5d9d659";
130
+ var TRADEPORT_MULTI_BID_PACKAGE = "0x63ce6caee2ba264e92bca2d160036eb297d99b2d91d4db89d48a9bffca66e55b";
130
131
  var TRADEPORT_MULTI_BID_PACKAGE_ORIGINAL = "0x53134eb544c5a0b5085e99efaf7eab13b28ad123de35d61f941f8c8c40b72033";
131
132
  var TRADEPORT_MULTI_BID_STORE = "0x8aaed7e884343fb8b222c721d02eaac2c6ae2abbb4ddcdf16cb55cf8754ee860";
132
133
  var DexConstants = {
@@ -1107,6 +1108,7 @@ var DYNAMIC_COLLECTION_IDS = [
1107
1108
  "75381a59-abde-4e4b-aac9-b1c5ba10b4da"
1108
1109
  // Claynosaurz: Phantom Purr-ize Patch
1109
1110
  ];
1111
+ var XOCIETY_FRONTIER_COLLECTION_ID = "9a0fcf4f-c77c-42d8-acad-5054e025eb53";
1110
1112
 
1111
1113
  // src/graphql/queries/fetchNftsById.ts
1112
1114
  import { gql as gql4 } from "graphql-request";
@@ -2763,6 +2765,22 @@ async function addTradePortUnlistTxHandler(txData) {
2763
2765
  ...txData,
2764
2766
  kioskTx
2765
2767
  });
2768
+ if (txData?.collectionId === XOCIETY_FRONTIER_COLLECTION_ID) {
2769
+ const borrowedItem = await takeAndBorrowNftFromKiosk({
2770
+ tx: txData?.tx,
2771
+ transferPolicies: txData?.transferPolicies,
2772
+ kioskTx,
2773
+ kioskClient: txData?.kioskClient,
2774
+ nftTokenId: txData?.nftTokenId,
2775
+ nftType: txData?.nftType,
2776
+ suiClient: txData?.suiClient,
2777
+ kioskOwner: txData?.seller
2778
+ });
2779
+ txData?.tx.transferObjects(
2780
+ [txData?.tx.object(borrowedItem)],
2781
+ txData?.tx.pure.address(addLeadingZerosAfter0x(txData?.seller))
2782
+ );
2783
+ }
2766
2784
  }
2767
2785
  });
2768
2786
  }
@@ -4449,6 +4467,22 @@ async function addTradePortBuyTxHandler(txData) {
4449
4467
  ...txData,
4450
4468
  kioskTx
4451
4469
  });
4470
+ if (txData?.collectionId === XOCIETY_FRONTIER_COLLECTION_ID) {
4471
+ const borrowedItem = await takeAndBorrowNftFromKiosk({
4472
+ tx: txData?.tx,
4473
+ transferPolicies: txData?.transferPolicies,
4474
+ kioskTx,
4475
+ kioskClient: txData?.kioskClient,
4476
+ nftTokenId: txData?.nftTokenId,
4477
+ nftType: txData?.nftType,
4478
+ suiClient: txData?.suiClient,
4479
+ kioskOwner: txData?.buyer
4480
+ });
4481
+ txData?.tx.transferObjects(
4482
+ [txData?.tx.object(borrowedItem)],
4483
+ txData?.tx.pure.address(addLeadingZerosAfter0x(txData?.buyer))
4484
+ );
4485
+ }
4452
4486
  }
4453
4487
  });
4454
4488
  }
@@ -6359,19 +6393,6 @@ async function addTradeportKioskDirectTransferTx(txData, nfts, suiClient) {
6359
6393
  if (nfts.length === 0) {
6360
6394
  return;
6361
6395
  }
6362
- const [receiverKiosk, receiverKioskCap] = tx.moveCall({
6363
- target: "0x2::kiosk::new",
6364
- arguments: []
6365
- });
6366
- const recipientAddressWithPrefix = addLeadingZerosAfter0x(recipientAddress);
6367
- tx.moveCall({
6368
- target: "0x2::kiosk::set_owner_custom",
6369
- arguments: [
6370
- tx.object(receiverKiosk),
6371
- tx.object(receiverKioskCap),
6372
- tx.pure.address(recipientAddressWithPrefix)
6373
- ]
6374
- });
6375
6396
  const transferPolicies = new Map(
6376
6397
  await Promise.all(
6377
6398
  nfts.map(
@@ -6402,12 +6423,11 @@ async function addTradeportKioskDirectTransferTx(txData, nfts, suiClient) {
6402
6423
  shouldUseSharedKioskTx: false,
6403
6424
  async runCommands(kioskTx) {
6404
6425
  tx.moveCall({
6405
- target: "0xd0ad5bf7ac7d372cdcfee5273d5e487dabad724040e089c626cba2a01127ccd6::kiosk_transfers::direct_transfer",
6426
+ target: "0x4acc0efedd243eb61ab8f8a3e9c24b09a1838c43d16029e8c8985004dfd67239::kiosk_transfers::direct_transfer_to_receiver",
6406
6427
  arguments: [
6407
6428
  tx.object(kioskTx.getKiosk()),
6408
6429
  tx.object(kioskTx.getKioskCap()),
6409
- tx.object(receiverKiosk),
6410
- tx.object(receiverKioskCap),
6430
+ tx.pure.address(recipientAddress),
6411
6431
  tx.pure.id(nft.token_id),
6412
6432
  tx.object(transferPolicies.get(nft.id).id),
6413
6433
  royaltyCoin
@@ -6417,12 +6437,6 @@ async function addTradeportKioskDirectTransferTx(txData, nfts, suiClient) {
6417
6437
  }
6418
6438
  });
6419
6439
  }
6420
- tx.transferObjects([receiverKioskCap], tx.pure.address(recipientAddressWithPrefix));
6421
- tx.moveCall({
6422
- target: "0x2::transfer::public_share_object",
6423
- arguments: [receiverKiosk],
6424
- typeArguments: ["0x2::kiosk::Kiosk"]
6425
- });
6426
6440
  destroyZeroCoin({ tx, coin: royaltyCoin });
6427
6441
  }
6428
6442
  async function canBeTransferedDirectly(suiClient, collectionChainState) {
@@ -6431,7 +6445,7 @@ async function canBeTransferedDirectly(suiClient, collectionChainState) {
6431
6445
  async function getTransferPolicyForDirectTransfer(suiClient, collectionChainState, validateRules = false) {
6432
6446
  const candidatePolicy = collectionChainState?.transfer_policies?.find(
6433
6447
  (policy) => !policy.is_origin_byte && !policy.is_disabled && policy.rules.length > 0 && policy.rules?.filter(
6434
- (rule) => rule.type !== "kiosk_lock_rule" && rule.type !== "royalty_rule"
6448
+ (rule) => rule.type !== "kiosk_lock_rule" && rule.type !== "royalty_rule" && rule.type !== "personal_kiosk_rule"
6435
6449
  ).length === 0
6436
6450
  );
6437
6451
  if (validateRules && candidatePolicy) {
@@ -6439,7 +6453,9 @@ async function getTransferPolicyForDirectTransfer(suiClient, collectionChainStat
6439
6453
  suiClient,
6440
6454
  transferPolicyId: candidatePolicy.id
6441
6455
  });
6442
- if (!ruleNames.every((name) => name.startsWith(MYSTEN_TRANFER_POLICY_RULES_PACKAGE_ID))) {
6456
+ if (!ruleNames.every(
6457
+ (name) => name.startsWith(MYSTEN_TRANSFER_POLICY_RULES_PACKAGE_ID) || name.startsWith(MYSTEN_TRANSFER_POLICY_RULES_PACKAGE_ID_V2)
6458
+ )) {
6443
6459
  return void 0;
6444
6460
  }
6445
6461
  }
@@ -7230,7 +7246,7 @@ var transferNfts = async ({ nftIds, recipientAddress, walletAddress }, context)
7230
7246
  await addOriginByteTransferNftTx(txData);
7231
7247
  continue;
7232
7248
  }
7233
- if (txData?.senderKiosk && !hasNativeKioskTransferPolicyRules(txData?.transferPolicies)) {
7249
+ if (txData?.senderKiosk && (!hasNativeKioskTransferPolicyRules(txData?.transferPolicies) || nft?.collection?.id === XOCIETY_FRONTIER_COLLECTION_ID)) {
7234
7250
  await kioskTxWrapper({
7235
7251
  tx: txData?.tx,
7236
7252
  kioskClient: txData?.kioskClient,