@tradeport/sui-trading-sdk 0.1.45 → 0.1.47
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 +6 -0
- package/dist/index.js +36 -48
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +37 -49
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
- package/src/apiClients/suiClient.ts +1 -1
- package/src/helpers/kiosk/getKioskTransferPolicies.ts +11 -1
- package/src/methods/acceptNftBids/addAcceptNftBidTxs.ts +3 -3
- package/src/methods/buyListings/addBuyListingTxs.ts +14 -23
- package/src/methods/claimNfts/addClaimNftsTxs.ts +9 -12
- package/src/methods/placeCollectionBids/addPlaceCollectionBidTxs.ts +5 -5
- package/src/methods/placeNftBids/addPlaceNftBidTxs.ts +5 -4
package/CHANGELOG.md
CHANGED
package/dist/index.js
CHANGED
|
@@ -31,7 +31,7 @@ var graphqlClient_default = graphqlClient;
|
|
|
31
31
|
|
|
32
32
|
// src/apiClients/suiClient.ts
|
|
33
33
|
var import_client = require("@mysten/sui/client");
|
|
34
|
-
var rpcUrl =
|
|
34
|
+
var rpcUrl = "https://rpc-mainnet.suiscan.xyz";
|
|
35
35
|
var suiClient = new import_client.SuiClient({ url: rpcUrl });
|
|
36
36
|
var suiClient_default = suiClient;
|
|
37
37
|
|
|
@@ -356,7 +356,11 @@ var getKioskTransferPolicies = async (nftType) => {
|
|
|
356
356
|
query: fetchTransferPoliciesByType,
|
|
357
357
|
variables: { type: normalizedNftType(nftType) }
|
|
358
358
|
});
|
|
359
|
-
return res?.transfer_policies_by_type?.filter(
|
|
359
|
+
return res?.transfer_policies_by_type?.filter(
|
|
360
|
+
(policy) => !policy?.is_origin_byte && policy?.rules?.filter(
|
|
361
|
+
(rule) => rule?.type?.includes("royalty_rule") || rule?.type?.includes("kiosk_lock_rule") || rule?.type?.includes("personal_kiosk_rule") || rule?.type?.includes("floor_price_rule")
|
|
362
|
+
)?.length > 0
|
|
363
|
+
);
|
|
360
364
|
};
|
|
361
365
|
|
|
362
366
|
// src/helpers/hasTransferPolicyRules.ts
|
|
@@ -907,7 +911,6 @@ function addTradeportAcceptNftBidTx({
|
|
|
907
911
|
async function addTradeportKioskAcceptNftBidTx({
|
|
908
912
|
tx,
|
|
909
913
|
seller,
|
|
910
|
-
sharedObjects,
|
|
911
914
|
kioskTx,
|
|
912
915
|
bidNonce,
|
|
913
916
|
nftTokenId,
|
|
@@ -918,7 +921,7 @@ async function addTradeportKioskAcceptNftBidTx({
|
|
|
918
921
|
shouldSplitRoyaltyFromUserGasCoins,
|
|
919
922
|
beforeResolveKioskTransferRequest
|
|
920
923
|
}) {
|
|
921
|
-
const
|
|
924
|
+
const transferPolicyId = (await getKioskTransferPolicies(nftType))?.at(0)?.id;
|
|
922
925
|
if (beforeResolveKioskTransferRequest) {
|
|
923
926
|
const [feeCoin, transferRequest] = tx.moveCall({
|
|
924
927
|
target: "0x6468e232af988cd8be608b1901863f0d7dbaa16764c1834daa39b023cb3b2fc8::kiosk_biddings::accept_bid_with_price_lock",
|
|
@@ -958,7 +961,7 @@ async function addTradeportKioskAcceptNftBidTx({
|
|
|
958
961
|
tx.moveCall({
|
|
959
962
|
target: `${royaltyRulePackageId}::${royaltyRuleModule}::pay`,
|
|
960
963
|
typeArguments: [nftType],
|
|
961
|
-
arguments: [tx.object(
|
|
964
|
+
arguments: [tx.object(transferPolicyId), transferRequest, feeCoin]
|
|
962
965
|
});
|
|
963
966
|
}
|
|
964
967
|
await resolveTransferPolicies({
|
|
@@ -2188,8 +2191,6 @@ var addTradeportKioskBuyTx = async ({
|
|
|
2188
2191
|
price,
|
|
2189
2192
|
sellerKiosk,
|
|
2190
2193
|
coinToSplit,
|
|
2191
|
-
collectionId,
|
|
2192
|
-
marketFeeDecimalPercent,
|
|
2193
2194
|
beforeResolveKioskTransferRequest
|
|
2194
2195
|
}) => {
|
|
2195
2196
|
const response = await suiClient_default.getDynamicFieldObject({
|
|
@@ -2320,14 +2321,13 @@ function addBluemoveBuyTx({ tx, nftTokenId, nftType, price }) {
|
|
|
2320
2321
|
async function addBluemoveKioskBuyTx({
|
|
2321
2322
|
tx,
|
|
2322
2323
|
kioskTx,
|
|
2323
|
-
sharedObjects,
|
|
2324
2324
|
nftTokenId,
|
|
2325
2325
|
nftType,
|
|
2326
2326
|
price,
|
|
2327
2327
|
sellerKiosk,
|
|
2328
2328
|
beforeResolveKioskTransferRequest
|
|
2329
2329
|
}) {
|
|
2330
|
-
const
|
|
2330
|
+
const transferPolicyId = (await getKioskTransferPolicies(nftType))?.at(0)?.id;
|
|
2331
2331
|
const [coin1, coin2] = splitCoins({
|
|
2332
2332
|
tx,
|
|
2333
2333
|
amounts: [tx.pure.u64(price), tx.pure.u64(price * 0.025)]
|
|
@@ -2340,7 +2340,7 @@ async function addBluemoveKioskBuyTx({
|
|
|
2340
2340
|
arguments: [
|
|
2341
2341
|
tx.object(BLUEMOVE_KIOSK_MARKETPLACE_KIOSK_OBJECT),
|
|
2342
2342
|
tx.object(sellerKiosk),
|
|
2343
|
-
tx.object(
|
|
2343
|
+
tx.object(transferPolicyId),
|
|
2344
2344
|
tx.object(kioskTx.kiosk.value ?? kioskTx.kiosk),
|
|
2345
2345
|
tx.pure.address(nftTokenId),
|
|
2346
2346
|
tx.pure.u64(price),
|
|
@@ -2358,24 +2358,16 @@ async function addBluemoveKioskBuyTx({
|
|
|
2358
2358
|
transferRequest
|
|
2359
2359
|
});
|
|
2360
2360
|
}
|
|
2361
|
-
function addSouffl3BuyTx({
|
|
2362
|
-
tx,
|
|
2363
|
-
sharedObjects,
|
|
2364
|
-
nftType,
|
|
2365
|
-
price,
|
|
2366
|
-
listingNonce,
|
|
2367
|
-
collectionId,
|
|
2368
|
-
buyer
|
|
2369
|
-
}) {
|
|
2361
|
+
async function addSouffl3BuyTx({ tx, nftType, price, listingNonce, collectionId }) {
|
|
2370
2362
|
const [coin] = splitCoins({ tx, amounts: [tx.pure.u64(price)] });
|
|
2371
|
-
const
|
|
2372
|
-
if (
|
|
2363
|
+
const transferPolicyId = (await getKioskTransferPolicies(nftType))?.at(0)?.id;
|
|
2364
|
+
if (transferPolicyId && !SOUFFL3_GENERIC_BUY_METHOD_COLLECTIONS?.includes(collectionId)) {
|
|
2373
2365
|
const [coinToDestroy] = tx.moveCall({
|
|
2374
2366
|
target: "0x30d90b5b67be77e6e06f02dae9f0f2fcdad16e38854316ae8a7b4f5b4971f5e0::Market::buy_with_sui_with_ext",
|
|
2375
2367
|
arguments: [
|
|
2376
2368
|
tx.object(SOUFFL3_VERSION_OBJECT),
|
|
2377
2369
|
tx.object(SOUFFL3_EXTENSION_OBJECT),
|
|
2378
|
-
tx.object(
|
|
2370
|
+
tx.object(transferPolicyId),
|
|
2379
2371
|
tx.object(listingNonce),
|
|
2380
2372
|
tx.pure.u64(price),
|
|
2381
2373
|
tx.object(SOUFFL3_MARKETPLACE_OBJECT),
|
|
@@ -2414,7 +2406,7 @@ function addSomisBuyTx({ tx, sharedObjects, nftTokenId, nftType, price }) {
|
|
|
2414
2406
|
typeArguments: [nftType, "0x2::sui::SUI"]
|
|
2415
2407
|
});
|
|
2416
2408
|
}
|
|
2417
|
-
function addKeepsakeBuyTx({
|
|
2409
|
+
async function addKeepsakeBuyTx({
|
|
2418
2410
|
tx,
|
|
2419
2411
|
sharedObjects,
|
|
2420
2412
|
buyer,
|
|
@@ -2423,7 +2415,8 @@ function addKeepsakeBuyTx({
|
|
|
2423
2415
|
price,
|
|
2424
2416
|
royalty
|
|
2425
2417
|
}) {
|
|
2426
|
-
const { keepsakeRoyaltyStrategy
|
|
2418
|
+
const { keepsakeRoyaltyStrategy } = sharedObjects;
|
|
2419
|
+
const transferPolicyId = (await getKioskTransferPolicies(nftType))?.at(0)?.id;
|
|
2427
2420
|
const [coin1, coin2] = splitCoins({
|
|
2428
2421
|
tx,
|
|
2429
2422
|
amounts: [
|
|
@@ -2459,7 +2452,7 @@ function addKeepsakeBuyTx({
|
|
|
2459
2452
|
});
|
|
2460
2453
|
tx.moveCall({
|
|
2461
2454
|
target: "0x02be8c4a1a3cea4d3255d870d367c87838a8cc2bfe4f216a6b67b153027087a7::transfer_policy::confirm_request",
|
|
2462
|
-
arguments: [tx.object(
|
|
2455
|
+
arguments: [tx.object(transferPolicyId), tx.object(transferRequest)],
|
|
2463
2456
|
typeArguments: [nftType]
|
|
2464
2457
|
});
|
|
2465
2458
|
const [balanceToTransfer] = tx.moveCall({
|
|
@@ -2568,7 +2561,7 @@ async function addClutchyBuyTxHandler(txData) {
|
|
|
2568
2561
|
await addOriginByteBuyTx(txData);
|
|
2569
2562
|
}
|
|
2570
2563
|
async function addSouffl3BuyTxHandler(txData) {
|
|
2571
|
-
addSouffl3BuyTx(txData);
|
|
2564
|
+
await addSouffl3BuyTx(txData);
|
|
2572
2565
|
}
|
|
2573
2566
|
async function addSomisBuyTxHandler(txData) {
|
|
2574
2567
|
if (txData?.sharedObjects?.marketplace) {
|
|
@@ -2579,7 +2572,7 @@ async function addSomisBuyTxHandler(txData) {
|
|
|
2579
2572
|
}
|
|
2580
2573
|
async function addKeepsakeBuyTxHandler(txData) {
|
|
2581
2574
|
const commission = await getCommissionByNftContractId(txData?.nftContractId);
|
|
2582
|
-
addKeepsakeBuyTx({
|
|
2575
|
+
await addKeepsakeBuyTx({
|
|
2583
2576
|
...txData,
|
|
2584
2577
|
royalty: commission?.royalty
|
|
2585
2578
|
});
|
|
@@ -2894,11 +2887,10 @@ var addClaimTradeHoldTx = ({
|
|
|
2894
2887
|
var addClaimAcceptedBidNftTx = async ({
|
|
2895
2888
|
tx,
|
|
2896
2889
|
kioskTx,
|
|
2897
|
-
sharedObjects,
|
|
2898
2890
|
nftTokenId,
|
|
2899
2891
|
nftType
|
|
2900
2892
|
}) => {
|
|
2901
|
-
const
|
|
2893
|
+
const transferPolicyId = (await getKioskTransferPolicies(nftType))?.at(0)?.id;
|
|
2902
2894
|
const [transferRequest] = tx.moveCall({
|
|
2903
2895
|
target: "0xf527efa4c02d079f15389fb596b04688cd5767948d953942e494ff455f11aa7b::kiosk_biddings::claim_bid",
|
|
2904
2896
|
arguments: [
|
|
@@ -2907,7 +2899,7 @@ var addClaimAcceptedBidNftTx = async ({
|
|
|
2907
2899
|
tx.object(kioskTx.kiosk.value ?? kioskTx.kiosk),
|
|
2908
2900
|
tx.object(kioskTx.kioskCap.value ?? kioskTx.kioskCap),
|
|
2909
2901
|
tx.pure.address(nftTokenId),
|
|
2910
|
-
tx.object(
|
|
2902
|
+
tx.object(transferPolicyId)
|
|
2911
2903
|
],
|
|
2912
2904
|
typeArguments: [nftType]
|
|
2913
2905
|
});
|
|
@@ -2923,12 +2915,11 @@ var addClaimAcceptedBidNftTx = async ({
|
|
|
2923
2915
|
var addClaimAcceptedBidNftWithPurchaseCapTx = async ({
|
|
2924
2916
|
tx,
|
|
2925
2917
|
kioskTx,
|
|
2926
|
-
sharedObjects,
|
|
2927
2918
|
nftTokenId,
|
|
2928
2919
|
nftType,
|
|
2929
2920
|
sellerKiosk
|
|
2930
2921
|
}) => {
|
|
2931
|
-
const
|
|
2922
|
+
const transferPolicyId = (await getKioskTransferPolicies(nftType))?.at(0)?.id;
|
|
2932
2923
|
const [transferRequest] = tx.moveCall({
|
|
2933
2924
|
target: "0xf527efa4c02d079f15389fb596b04688cd5767948d953942e494ff455f11aa7b::kiosk_biddings::claim_bid_with_purchase_cap",
|
|
2934
2925
|
arguments: [
|
|
@@ -2937,7 +2928,7 @@ var addClaimAcceptedBidNftWithPurchaseCapTx = async ({
|
|
|
2937
2928
|
tx.object(kioskTx.kiosk.value ?? kioskTx.kiosk),
|
|
2938
2929
|
tx.object(kioskTx.kioskCap.value ?? kioskTx.kioskCap),
|
|
2939
2930
|
tx.pure.address(nftTokenId),
|
|
2940
|
-
tx.object(
|
|
2931
|
+
tx.object(transferPolicyId)
|
|
2941
2932
|
],
|
|
2942
2933
|
typeArguments: [nftType]
|
|
2943
2934
|
});
|
|
@@ -2952,12 +2943,11 @@ var addClaimAcceptedBidNftWithPurchaseCapTx = async ({
|
|
|
2952
2943
|
};
|
|
2953
2944
|
var addClaimTransferredNftTx = async ({
|
|
2954
2945
|
tx,
|
|
2955
|
-
sharedObjects,
|
|
2956
2946
|
kioskTx,
|
|
2957
2947
|
nftTokenId,
|
|
2958
2948
|
nftType
|
|
2959
2949
|
}) => {
|
|
2960
|
-
const
|
|
2950
|
+
const transferPolicyId = (await getKioskTransferPolicies(nftType))?.at(0)?.id;
|
|
2961
2951
|
const [transferRequest] = tx.moveCall({
|
|
2962
2952
|
target: "0x49642273ca7db3d942f9fd810c93467974c40e73ea7f03e8e7a632f1222aca73::kiosk_transfers::claim",
|
|
2963
2953
|
arguments: [
|
|
@@ -2966,7 +2956,7 @@ var addClaimTransferredNftTx = async ({
|
|
|
2966
2956
|
tx.object(kioskTx.kiosk.value ?? kioskTx.kiosk),
|
|
2967
2957
|
tx.object(kioskTx.kioskCap.value ?? kioskTx.kioskCap),
|
|
2968
2958
|
tx.pure.address(nftTokenId),
|
|
2969
|
-
tx.object(
|
|
2959
|
+
tx.object(transferPolicyId)
|
|
2970
2960
|
],
|
|
2971
2961
|
typeArguments: [nftType]
|
|
2972
2962
|
});
|
|
@@ -2981,13 +2971,12 @@ var addClaimTransferredNftTx = async ({
|
|
|
2981
2971
|
};
|
|
2982
2972
|
var addClaimTransferredNftWithPurchaseCapTx = async ({
|
|
2983
2973
|
tx,
|
|
2984
|
-
sharedObjects,
|
|
2985
2974
|
kioskTx,
|
|
2986
2975
|
nftTokenId,
|
|
2987
2976
|
nftType,
|
|
2988
2977
|
sellerKiosk
|
|
2989
2978
|
}) => {
|
|
2990
|
-
const
|
|
2979
|
+
const transferPolicyId = (await getKioskTransferPolicies(nftType))?.at(0)?.id;
|
|
2991
2980
|
const [transferRequest] = tx.moveCall({
|
|
2992
2981
|
target: "0x49642273ca7db3d942f9fd810c93467974c40e73ea7f03e8e7a632f1222aca73::kiosk_transfers::claim_with_purchase_cap",
|
|
2993
2982
|
arguments: [
|
|
@@ -2996,7 +2985,7 @@ var addClaimTransferredNftWithPurchaseCapTx = async ({
|
|
|
2996
2985
|
tx.object(kioskTx.kiosk.value ?? kioskTx.kiosk),
|
|
2997
2986
|
tx.object(kioskTx.kioskCap.value ?? kioskTx.kioskCap),
|
|
2998
2987
|
tx.pure.address(nftTokenId),
|
|
2999
|
-
tx.object(
|
|
2988
|
+
tx.object(transferPolicyId)
|
|
3000
2989
|
],
|
|
3001
2990
|
typeArguments: [nftType]
|
|
3002
2991
|
});
|
|
@@ -3640,16 +3629,15 @@ function addTradePortCollectionBidTx({
|
|
|
3640
3629
|
});
|
|
3641
3630
|
destroyZeroCoin({ tx, coin });
|
|
3642
3631
|
}
|
|
3643
|
-
function addTradePortKioskCollectionBidTx({
|
|
3632
|
+
async function addTradePortKioskCollectionBidTx({
|
|
3644
3633
|
tx,
|
|
3645
3634
|
collectionId,
|
|
3646
3635
|
nftType,
|
|
3647
3636
|
bidAmount,
|
|
3648
|
-
sharedObjects,
|
|
3649
3637
|
royaltyRulePackageId,
|
|
3650
3638
|
royaltyRuleModule
|
|
3651
3639
|
}) {
|
|
3652
|
-
const
|
|
3640
|
+
const transferPolicyId = (await getKioskTransferPolicies(nftType))?.at(0)?.id;
|
|
3653
3641
|
const marketFeePrice = getMarketFeePrice({
|
|
3654
3642
|
price: bidAmount,
|
|
3655
3643
|
collectionId
|
|
@@ -3658,7 +3646,7 @@ function addTradePortKioskCollectionBidTx({
|
|
|
3658
3646
|
if (royaltyRulePackageId && royaltyRuleModule) {
|
|
3659
3647
|
const fee = tx.moveCall({
|
|
3660
3648
|
target: `${royaltyRulePackageId}::${royaltyRuleModule}::fee_amount`,
|
|
3661
|
-
arguments: [tx.object(
|
|
3649
|
+
arguments: [tx.object(transferPolicyId), tx.pure.u64(bidAmount)],
|
|
3662
3650
|
typeArguments: [nftType]
|
|
3663
3651
|
});
|
|
3664
3652
|
const [coin1, coin2] = splitCoins({
|
|
@@ -3721,7 +3709,7 @@ async function addTradePortPlaceCollectionBidTxHandler(txData) {
|
|
|
3721
3709
|
txData.nftType,
|
|
3722
3710
|
getRoyaltyRuleModule(txData?.collectionId)
|
|
3723
3711
|
);
|
|
3724
|
-
addTradePortKioskCollectionBidTx({ ...txData, royaltyRulePackageId, royaltyRuleModule });
|
|
3712
|
+
await addTradePortKioskCollectionBidTx({ ...txData, royaltyRulePackageId, royaltyRuleModule });
|
|
3725
3713
|
return;
|
|
3726
3714
|
}
|
|
3727
3715
|
addTradePortCollectionBidTx(txData);
|
|
@@ -3808,7 +3796,7 @@ function addTradePortPlaceNftBidTx({
|
|
|
3808
3796
|
});
|
|
3809
3797
|
destroyZeroCoin({ tx, coin });
|
|
3810
3798
|
}
|
|
3811
|
-
function addTradePortKioskPlaceNftBidTx({
|
|
3799
|
+
async function addTradePortKioskPlaceNftBidTx({
|
|
3812
3800
|
tx,
|
|
3813
3801
|
sharedObjects,
|
|
3814
3802
|
collectionId,
|
|
@@ -3818,11 +3806,11 @@ function addTradePortKioskPlaceNftBidTx({
|
|
|
3818
3806
|
royaltyRulePackageId,
|
|
3819
3807
|
royaltyRuleModule
|
|
3820
3808
|
}) {
|
|
3821
|
-
const
|
|
3809
|
+
const transferPolicyId = (await getKioskTransferPolicies(nftType))?.at(0)?.id;
|
|
3822
3810
|
const marketFeePrice = getMarketFeePrice({ price: bidAmount, collectionId });
|
|
3823
3811
|
const royaltyCoin = tx.moveCall({
|
|
3824
3812
|
target: `${royaltyRulePackageId}::${royaltyRuleModule}::fee_amount`,
|
|
3825
|
-
arguments: [tx.object(
|
|
3813
|
+
arguments: [tx.object(transferPolicyId), tx.pure.u64(bidAmount?.toString())],
|
|
3826
3814
|
typeArguments: [nftType]
|
|
3827
3815
|
});
|
|
3828
3816
|
const [coin1, coin2] = splitCoins({
|
|
@@ -3880,7 +3868,7 @@ async function addTradePortPlaceNftBidTxHandler(txData) {
|
|
|
3880
3868
|
if (await hasTransferPolicyRules(txData?.nftType) && txData?.sellerKiosk) {
|
|
3881
3869
|
const royaltyRuleModule = getRoyaltyRuleModule(txData?.nftType);
|
|
3882
3870
|
const royaltyRulePackageId = await getRulePackageId(txData.nftType, royaltyRuleModule);
|
|
3883
|
-
addTradePortKioskPlaceNftBidTx({ ...txData, royaltyRulePackageId, royaltyRuleModule });
|
|
3871
|
+
await addTradePortKioskPlaceNftBidTx({ ...txData, royaltyRulePackageId, royaltyRuleModule });
|
|
3884
3872
|
return;
|
|
3885
3873
|
}
|
|
3886
3874
|
addTradePortPlaceNftBidTx(txData);
|