@medialane/sdk 0.5.7 → 0.6.1
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/README.md +4 -0
- package/dist/index.cjs +606 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +673 -3
- package/dist/index.d.ts +673 -3
- package/dist/index.js +598 -3
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -415,6 +415,10 @@ Built with:
|
|
|
415
415
|
|
|
416
416
|
## Changelog
|
|
417
417
|
|
|
418
|
+
### v0.5.7
|
|
419
|
+
- **`ApiCollectionProfile.hasGatedContent: boolean`** — whether the collection has token-gated content configured
|
|
420
|
+
- **`ApiCollectionProfile.gatedContentTitle: string | null`** — public title of gated content (shown to all users; URL is accessible to holders only via the backend gated-content endpoint)
|
|
421
|
+
|
|
418
422
|
### v0.5.5
|
|
419
423
|
- **`extendRemixOffer(id, days, clerkToken)`** — requester extends expiry of a PENDING/AUTO_PENDING remix offer by 1–30 days (`POST /v1/remix-offers/:id/extend`)
|
|
420
424
|
- **`ApiRemixOfferPrice`** type — `{ raw, formatted, currency, decimals }` replaces flat `proposedPrice`/`proposedCurrency` fields on `ApiRemixOffer.price` (visible to participants only)
|
package/dist/index.cjs
CHANGED
|
@@ -49,6 +49,10 @@ var DEFAULT_RPC_URLS = {
|
|
|
49
49
|
mainnet: "https://rpc.starknet.lava.build",
|
|
50
50
|
sepolia: "https://rpc.starknet-sepolia.lava.build"
|
|
51
51
|
};
|
|
52
|
+
var POP_FACTORY_CONTRACT_MAINNET = "0x00b32c34b427d8f346b5843ada6a37bd3368d879fc752cd52b68a87287f60111";
|
|
53
|
+
var POP_COLLECTION_CLASS_HASH_MAINNET = "0x077c421686f10851872561953ea16898d933364b7f8937a5d7e2b1ba0a36263f";
|
|
54
|
+
var DROP_FACTORY_CONTRACT_MAINNET = "0x03587f42e29daee1b193f6cf83bf8627908ed6632d0d83fcb26225c50547d800";
|
|
55
|
+
var DROP_COLLECTION_CLASS_HASH_MAINNET = "0x00092e72cdb63067521e803aaf7d4101c3e3ce026ae6bc045ec4228027e58282";
|
|
52
56
|
|
|
53
57
|
// src/abis.ts
|
|
54
58
|
var IPMarketplaceABI = [
|
|
@@ -357,6 +361,404 @@ var IPMarketplaceABI = [
|
|
|
357
361
|
]
|
|
358
362
|
}
|
|
359
363
|
];
|
|
364
|
+
var POPCollectionABI = [
|
|
365
|
+
{
|
|
366
|
+
type: "struct",
|
|
367
|
+
name: "core::byte_array::ByteArray",
|
|
368
|
+
members: [
|
|
369
|
+
{ name: "data", type: "core::array::Array::<core::felt252>" },
|
|
370
|
+
{ name: "pending_word", type: "core::felt252" },
|
|
371
|
+
{ name: "pending_word_len", type: "core::integer::u32" }
|
|
372
|
+
]
|
|
373
|
+
},
|
|
374
|
+
{
|
|
375
|
+
type: "function",
|
|
376
|
+
name: "claim",
|
|
377
|
+
inputs: [],
|
|
378
|
+
outputs: [],
|
|
379
|
+
state_mutability: "external"
|
|
380
|
+
},
|
|
381
|
+
{
|
|
382
|
+
type: "function",
|
|
383
|
+
name: "admin_mint",
|
|
384
|
+
inputs: [
|
|
385
|
+
{ name: "recipient", type: "core::starknet::contract_address::ContractAddress" },
|
|
386
|
+
{ name: "custom_uri", type: "core::byte_array::ByteArray" }
|
|
387
|
+
],
|
|
388
|
+
outputs: [],
|
|
389
|
+
state_mutability: "external"
|
|
390
|
+
},
|
|
391
|
+
{
|
|
392
|
+
type: "function",
|
|
393
|
+
name: "add_to_allowlist",
|
|
394
|
+
inputs: [{ name: "address", type: "core::starknet::contract_address::ContractAddress" }],
|
|
395
|
+
outputs: [],
|
|
396
|
+
state_mutability: "external"
|
|
397
|
+
},
|
|
398
|
+
{
|
|
399
|
+
type: "function",
|
|
400
|
+
name: "batch_add_to_allowlist",
|
|
401
|
+
inputs: [{ name: "addresses", type: "core::array::Array::<core::starknet::contract_address::ContractAddress>" }],
|
|
402
|
+
outputs: [],
|
|
403
|
+
state_mutability: "external"
|
|
404
|
+
},
|
|
405
|
+
{
|
|
406
|
+
type: "function",
|
|
407
|
+
name: "remove_from_allowlist",
|
|
408
|
+
inputs: [{ name: "address", type: "core::starknet::contract_address::ContractAddress" }],
|
|
409
|
+
outputs: [],
|
|
410
|
+
state_mutability: "external"
|
|
411
|
+
},
|
|
412
|
+
{
|
|
413
|
+
type: "function",
|
|
414
|
+
name: "set_token_uri",
|
|
415
|
+
inputs: [
|
|
416
|
+
{ name: "token_id", type: "core::integer::u256" },
|
|
417
|
+
{ name: "uri", type: "core::byte_array::ByteArray" }
|
|
418
|
+
],
|
|
419
|
+
outputs: [],
|
|
420
|
+
state_mutability: "external"
|
|
421
|
+
},
|
|
422
|
+
{
|
|
423
|
+
type: "function",
|
|
424
|
+
name: "set_paused",
|
|
425
|
+
inputs: [{ name: "paused", type: "core::bool" }],
|
|
426
|
+
outputs: [],
|
|
427
|
+
state_mutability: "external"
|
|
428
|
+
},
|
|
429
|
+
{
|
|
430
|
+
type: "function",
|
|
431
|
+
name: "is_eligible",
|
|
432
|
+
inputs: [{ name: "address", type: "core::starknet::contract_address::ContractAddress" }],
|
|
433
|
+
outputs: [{ type: "core::bool" }],
|
|
434
|
+
state_mutability: "view"
|
|
435
|
+
},
|
|
436
|
+
{
|
|
437
|
+
type: "function",
|
|
438
|
+
name: "has_claimed",
|
|
439
|
+
inputs: [{ name: "address", type: "core::starknet::contract_address::ContractAddress" }],
|
|
440
|
+
outputs: [{ type: "core::bool" }],
|
|
441
|
+
state_mutability: "view"
|
|
442
|
+
},
|
|
443
|
+
{
|
|
444
|
+
type: "function",
|
|
445
|
+
name: "total_minted",
|
|
446
|
+
inputs: [],
|
|
447
|
+
outputs: [{ type: "core::integer::u256" }],
|
|
448
|
+
state_mutability: "view"
|
|
449
|
+
}
|
|
450
|
+
];
|
|
451
|
+
var POPFactoryABI = [
|
|
452
|
+
{
|
|
453
|
+
type: "struct",
|
|
454
|
+
name: "core::byte_array::ByteArray",
|
|
455
|
+
members: [
|
|
456
|
+
{ name: "data", type: "core::array::Array::<core::felt252>" },
|
|
457
|
+
{ name: "pending_word", type: "core::felt252" },
|
|
458
|
+
{ name: "pending_word_len", type: "core::integer::u32" }
|
|
459
|
+
]
|
|
460
|
+
},
|
|
461
|
+
{
|
|
462
|
+
type: "enum",
|
|
463
|
+
name: "pop_protocol::types::EventType",
|
|
464
|
+
variants: [
|
|
465
|
+
{ name: "Conference", type: "()" },
|
|
466
|
+
{ name: "Bootcamp", type: "()" },
|
|
467
|
+
{ name: "Workshop", type: "()" },
|
|
468
|
+
{ name: "Hackathon", type: "()" },
|
|
469
|
+
{ name: "Meetup", type: "()" },
|
|
470
|
+
{ name: "Course", type: "()" },
|
|
471
|
+
{ name: "Other", type: "()" }
|
|
472
|
+
]
|
|
473
|
+
},
|
|
474
|
+
{
|
|
475
|
+
type: "function",
|
|
476
|
+
name: "create_collection",
|
|
477
|
+
inputs: [
|
|
478
|
+
{ name: "name", type: "core::byte_array::ByteArray" },
|
|
479
|
+
{ name: "symbol", type: "core::byte_array::ByteArray" },
|
|
480
|
+
{ name: "base_uri", type: "core::byte_array::ByteArray" },
|
|
481
|
+
{ name: "claim_end_time", type: "core::integer::u64" },
|
|
482
|
+
{ name: "event_type", type: "pop_protocol::types::EventType" }
|
|
483
|
+
],
|
|
484
|
+
outputs: [{ type: "core::starknet::contract_address::ContractAddress" }],
|
|
485
|
+
state_mutability: "external"
|
|
486
|
+
},
|
|
487
|
+
{
|
|
488
|
+
type: "function",
|
|
489
|
+
name: "register_provider",
|
|
490
|
+
inputs: [
|
|
491
|
+
{ name: "provider", type: "core::starknet::contract_address::ContractAddress" },
|
|
492
|
+
{ name: "name", type: "core::byte_array::ByteArray" },
|
|
493
|
+
{ name: "website_url", type: "core::byte_array::ByteArray" }
|
|
494
|
+
],
|
|
495
|
+
outputs: [],
|
|
496
|
+
state_mutability: "external"
|
|
497
|
+
},
|
|
498
|
+
{
|
|
499
|
+
type: "function",
|
|
500
|
+
name: "set_pop_collection_class_hash",
|
|
501
|
+
inputs: [{ name: "new_class_hash", type: "core::starknet::class_hash::ClassHash" }],
|
|
502
|
+
outputs: [],
|
|
503
|
+
state_mutability: "external"
|
|
504
|
+
}
|
|
505
|
+
];
|
|
506
|
+
var DropCollectionABI = [
|
|
507
|
+
{
|
|
508
|
+
type: "struct",
|
|
509
|
+
name: "core::byte_array::ByteArray",
|
|
510
|
+
members: [
|
|
511
|
+
{ name: "data", type: "core::array::Array::<core::felt252>" },
|
|
512
|
+
{ name: "pending_word", type: "core::felt252" },
|
|
513
|
+
{ name: "pending_word_len", type: "core::integer::u32" }
|
|
514
|
+
]
|
|
515
|
+
},
|
|
516
|
+
{
|
|
517
|
+
type: "struct",
|
|
518
|
+
name: "collection_drop::types::ClaimConditions",
|
|
519
|
+
members: [
|
|
520
|
+
{ name: "start_time", type: "core::integer::u64" },
|
|
521
|
+
{ name: "end_time", type: "core::integer::u64" },
|
|
522
|
+
{ name: "price", type: "core::integer::u256" },
|
|
523
|
+
{ name: "payment_token", type: "core::starknet::contract_address::ContractAddress" },
|
|
524
|
+
{ name: "max_quantity_per_wallet", type: "core::integer::u256" }
|
|
525
|
+
]
|
|
526
|
+
},
|
|
527
|
+
{
|
|
528
|
+
type: "function",
|
|
529
|
+
name: "claim",
|
|
530
|
+
inputs: [{ name: "quantity", type: "core::integer::u256" }],
|
|
531
|
+
outputs: [],
|
|
532
|
+
state_mutability: "external"
|
|
533
|
+
},
|
|
534
|
+
{
|
|
535
|
+
type: "function",
|
|
536
|
+
name: "admin_mint",
|
|
537
|
+
inputs: [
|
|
538
|
+
{ name: "recipient", type: "core::starknet::contract_address::ContractAddress" },
|
|
539
|
+
{ name: "quantity", type: "core::integer::u256" },
|
|
540
|
+
{ name: "custom_uri", type: "core::byte_array::ByteArray" }
|
|
541
|
+
],
|
|
542
|
+
outputs: [],
|
|
543
|
+
state_mutability: "external"
|
|
544
|
+
},
|
|
545
|
+
{
|
|
546
|
+
type: "function",
|
|
547
|
+
name: "set_claim_conditions",
|
|
548
|
+
inputs: [{ name: "conditions", type: "collection_drop::types::ClaimConditions" }],
|
|
549
|
+
outputs: [],
|
|
550
|
+
state_mutability: "external"
|
|
551
|
+
},
|
|
552
|
+
{
|
|
553
|
+
type: "function",
|
|
554
|
+
name: "get_claim_conditions",
|
|
555
|
+
inputs: [],
|
|
556
|
+
outputs: [{ type: "collection_drop::types::ClaimConditions" }],
|
|
557
|
+
state_mutability: "view"
|
|
558
|
+
},
|
|
559
|
+
{
|
|
560
|
+
type: "function",
|
|
561
|
+
name: "set_allowlist_enabled",
|
|
562
|
+
inputs: [{ name: "enabled", type: "core::bool" }],
|
|
563
|
+
outputs: [],
|
|
564
|
+
state_mutability: "external"
|
|
565
|
+
},
|
|
566
|
+
{
|
|
567
|
+
type: "function",
|
|
568
|
+
name: "is_allowlist_enabled",
|
|
569
|
+
inputs: [],
|
|
570
|
+
outputs: [{ type: "core::bool" }],
|
|
571
|
+
state_mutability: "view"
|
|
572
|
+
},
|
|
573
|
+
{
|
|
574
|
+
type: "function",
|
|
575
|
+
name: "add_to_allowlist",
|
|
576
|
+
inputs: [{ name: "address", type: "core::starknet::contract_address::ContractAddress" }],
|
|
577
|
+
outputs: [],
|
|
578
|
+
state_mutability: "external"
|
|
579
|
+
},
|
|
580
|
+
{
|
|
581
|
+
type: "function",
|
|
582
|
+
name: "batch_add_to_allowlist",
|
|
583
|
+
inputs: [{ name: "addresses", type: "core::array::Array::<core::starknet::contract_address::ContractAddress>" }],
|
|
584
|
+
outputs: [],
|
|
585
|
+
state_mutability: "external"
|
|
586
|
+
},
|
|
587
|
+
{
|
|
588
|
+
type: "function",
|
|
589
|
+
name: "remove_from_allowlist",
|
|
590
|
+
inputs: [{ name: "address", type: "core::starknet::contract_address::ContractAddress" }],
|
|
591
|
+
outputs: [],
|
|
592
|
+
state_mutability: "external"
|
|
593
|
+
},
|
|
594
|
+
{
|
|
595
|
+
type: "function",
|
|
596
|
+
name: "is_allowlisted",
|
|
597
|
+
inputs: [{ name: "address", type: "core::starknet::contract_address::ContractAddress" }],
|
|
598
|
+
outputs: [{ type: "core::bool" }],
|
|
599
|
+
state_mutability: "view"
|
|
600
|
+
},
|
|
601
|
+
{
|
|
602
|
+
type: "function",
|
|
603
|
+
name: "set_base_uri",
|
|
604
|
+
inputs: [{ name: "new_uri", type: "core::byte_array::ByteArray" }],
|
|
605
|
+
outputs: [],
|
|
606
|
+
state_mutability: "external"
|
|
607
|
+
},
|
|
608
|
+
{
|
|
609
|
+
type: "function",
|
|
610
|
+
name: "set_token_uri",
|
|
611
|
+
inputs: [
|
|
612
|
+
{ name: "token_id", type: "core::integer::u256" },
|
|
613
|
+
{ name: "uri", type: "core::byte_array::ByteArray" }
|
|
614
|
+
],
|
|
615
|
+
outputs: [],
|
|
616
|
+
state_mutability: "external"
|
|
617
|
+
},
|
|
618
|
+
{
|
|
619
|
+
type: "function",
|
|
620
|
+
name: "set_paused",
|
|
621
|
+
inputs: [{ name: "paused", type: "core::bool" }],
|
|
622
|
+
outputs: [],
|
|
623
|
+
state_mutability: "external"
|
|
624
|
+
},
|
|
625
|
+
{
|
|
626
|
+
type: "function",
|
|
627
|
+
name: "withdraw_payments",
|
|
628
|
+
inputs: [],
|
|
629
|
+
outputs: [],
|
|
630
|
+
state_mutability: "external"
|
|
631
|
+
},
|
|
632
|
+
{
|
|
633
|
+
type: "function",
|
|
634
|
+
name: "get_drop_id",
|
|
635
|
+
inputs: [],
|
|
636
|
+
outputs: [{ type: "core::integer::u256" }],
|
|
637
|
+
state_mutability: "view"
|
|
638
|
+
},
|
|
639
|
+
{
|
|
640
|
+
type: "function",
|
|
641
|
+
name: "get_max_supply",
|
|
642
|
+
inputs: [],
|
|
643
|
+
outputs: [{ type: "core::integer::u256" }],
|
|
644
|
+
state_mutability: "view"
|
|
645
|
+
},
|
|
646
|
+
{
|
|
647
|
+
type: "function",
|
|
648
|
+
name: "total_minted",
|
|
649
|
+
inputs: [],
|
|
650
|
+
outputs: [{ type: "core::integer::u256" }],
|
|
651
|
+
state_mutability: "view"
|
|
652
|
+
},
|
|
653
|
+
{
|
|
654
|
+
type: "function",
|
|
655
|
+
name: "remaining_supply",
|
|
656
|
+
inputs: [],
|
|
657
|
+
outputs: [{ type: "core::integer::u256" }],
|
|
658
|
+
state_mutability: "view"
|
|
659
|
+
},
|
|
660
|
+
{
|
|
661
|
+
type: "function",
|
|
662
|
+
name: "minted_by_wallet",
|
|
663
|
+
inputs: [{ name: "wallet", type: "core::starknet::contract_address::ContractAddress" }],
|
|
664
|
+
outputs: [{ type: "core::integer::u256" }],
|
|
665
|
+
state_mutability: "view"
|
|
666
|
+
},
|
|
667
|
+
{
|
|
668
|
+
type: "function",
|
|
669
|
+
name: "is_paused",
|
|
670
|
+
inputs: [],
|
|
671
|
+
outputs: [{ type: "core::bool" }],
|
|
672
|
+
state_mutability: "view"
|
|
673
|
+
}
|
|
674
|
+
];
|
|
675
|
+
var DropFactoryABI = [
|
|
676
|
+
{
|
|
677
|
+
type: "struct",
|
|
678
|
+
name: "core::byte_array::ByteArray",
|
|
679
|
+
members: [
|
|
680
|
+
{ name: "data", type: "core::array::Array::<core::felt252>" },
|
|
681
|
+
{ name: "pending_word", type: "core::felt252" },
|
|
682
|
+
{ name: "pending_word_len", type: "core::integer::u32" }
|
|
683
|
+
]
|
|
684
|
+
},
|
|
685
|
+
{
|
|
686
|
+
type: "struct",
|
|
687
|
+
name: "collection_drop::types::ClaimConditions",
|
|
688
|
+
members: [
|
|
689
|
+
{ name: "start_time", type: "core::integer::u64" },
|
|
690
|
+
{ name: "end_time", type: "core::integer::u64" },
|
|
691
|
+
{ name: "price", type: "core::integer::u256" },
|
|
692
|
+
{ name: "payment_token", type: "core::starknet::contract_address::ContractAddress" },
|
|
693
|
+
{ name: "max_quantity_per_wallet", type: "core::integer::u256" }
|
|
694
|
+
]
|
|
695
|
+
},
|
|
696
|
+
{
|
|
697
|
+
type: "function",
|
|
698
|
+
name: "register_organizer",
|
|
699
|
+
inputs: [
|
|
700
|
+
{ name: "organizer", type: "core::starknet::contract_address::ContractAddress" },
|
|
701
|
+
{ name: "name", type: "core::byte_array::ByteArray" }
|
|
702
|
+
],
|
|
703
|
+
outputs: [],
|
|
704
|
+
state_mutability: "external"
|
|
705
|
+
},
|
|
706
|
+
{
|
|
707
|
+
type: "function",
|
|
708
|
+
name: "revoke_organizer",
|
|
709
|
+
inputs: [{ name: "organizer", type: "core::starknet::contract_address::ContractAddress" }],
|
|
710
|
+
outputs: [],
|
|
711
|
+
state_mutability: "external"
|
|
712
|
+
},
|
|
713
|
+
{
|
|
714
|
+
type: "function",
|
|
715
|
+
name: "is_active_organizer",
|
|
716
|
+
inputs: [{ name: "organizer", type: "core::starknet::contract_address::ContractAddress" }],
|
|
717
|
+
outputs: [{ type: "core::bool" }],
|
|
718
|
+
state_mutability: "view"
|
|
719
|
+
},
|
|
720
|
+
{
|
|
721
|
+
type: "function",
|
|
722
|
+
name: "create_drop",
|
|
723
|
+
inputs: [
|
|
724
|
+
{ name: "name", type: "core::byte_array::ByteArray" },
|
|
725
|
+
{ name: "symbol", type: "core::byte_array::ByteArray" },
|
|
726
|
+
{ name: "base_uri", type: "core::byte_array::ByteArray" },
|
|
727
|
+
{ name: "max_supply", type: "core::integer::u256" },
|
|
728
|
+
{ name: "initial_conditions", type: "collection_drop::types::ClaimConditions" }
|
|
729
|
+
],
|
|
730
|
+
outputs: [{ type: "core::starknet::contract_address::ContractAddress" }],
|
|
731
|
+
state_mutability: "external"
|
|
732
|
+
},
|
|
733
|
+
{
|
|
734
|
+
type: "function",
|
|
735
|
+
name: "get_drop_address",
|
|
736
|
+
inputs: [{ name: "drop_id", type: "core::integer::u256" }],
|
|
737
|
+
outputs: [{ type: "core::starknet::contract_address::ContractAddress" }],
|
|
738
|
+
state_mutability: "view"
|
|
739
|
+
},
|
|
740
|
+
{
|
|
741
|
+
type: "function",
|
|
742
|
+
name: "get_last_drop_id",
|
|
743
|
+
inputs: [],
|
|
744
|
+
outputs: [{ type: "core::integer::u256" }],
|
|
745
|
+
state_mutability: "view"
|
|
746
|
+
},
|
|
747
|
+
{
|
|
748
|
+
type: "function",
|
|
749
|
+
name: "get_organizer_drop_count",
|
|
750
|
+
inputs: [{ name: "organizer", type: "core::starknet::contract_address::ContractAddress" }],
|
|
751
|
+
outputs: [{ type: "core::integer::u32" }],
|
|
752
|
+
state_mutability: "view"
|
|
753
|
+
},
|
|
754
|
+
{
|
|
755
|
+
type: "function",
|
|
756
|
+
name: "set_drop_collection_class_hash",
|
|
757
|
+
inputs: [{ name: "new_class_hash", type: "core::starknet::class_hash::ClassHash" }],
|
|
758
|
+
outputs: [],
|
|
759
|
+
state_mutability: "external"
|
|
760
|
+
}
|
|
761
|
+
];
|
|
360
762
|
|
|
361
763
|
// src/utils/bigint.ts
|
|
362
764
|
function stringifyBigInts(obj) {
|
|
@@ -1073,10 +1475,11 @@ var ApiClient = class {
|
|
|
1073
1475
|
);
|
|
1074
1476
|
}
|
|
1075
1477
|
// ─── Collections ───────────────────────────────────────────────────────────
|
|
1076
|
-
getCollections(page = 1, limit = 20, isKnown, sort) {
|
|
1478
|
+
getCollections(page = 1, limit = 20, isKnown, sort, source) {
|
|
1077
1479
|
const params = new URLSearchParams({ page: String(page), limit: String(limit) });
|
|
1078
1480
|
if (isKnown !== void 0) params.set("isKnown", String(isKnown));
|
|
1079
1481
|
if (sort) params.set("sort", sort);
|
|
1482
|
+
if (source) params.set("source", source);
|
|
1080
1483
|
return this.get(`/v1/collections?${params}`);
|
|
1081
1484
|
}
|
|
1082
1485
|
getCollectionsByOwner(owner, page = 1, limit = 50) {
|
|
@@ -1271,6 +1674,14 @@ var ApiClient = class {
|
|
|
1271
1674
|
});
|
|
1272
1675
|
return res.json();
|
|
1273
1676
|
}
|
|
1677
|
+
async getGatedContent(contractAddress, clerkToken) {
|
|
1678
|
+
const url = `${this.baseUrl.replace(/\/$/, "")}/v1/collections/${normalizeAddress(contractAddress)}/gated-content`;
|
|
1679
|
+
const res = await fetch(url, {
|
|
1680
|
+
headers: { ...this.baseHeaders, "Authorization": `Bearer ${clerkToken}` }
|
|
1681
|
+
});
|
|
1682
|
+
if (res.status === 403 || res.status === 404) return null;
|
|
1683
|
+
return res.json();
|
|
1684
|
+
}
|
|
1274
1685
|
// ─── Creator Profiles ───────────────────────────────────────────────────────
|
|
1275
1686
|
/** List all creators with an approved username. */
|
|
1276
1687
|
async getCreators(opts = {}) {
|
|
@@ -1440,6 +1851,186 @@ var ApiClient = class {
|
|
|
1440
1851
|
headers: { "Authorization": `Bearer ${clerkToken}` }
|
|
1441
1852
|
});
|
|
1442
1853
|
}
|
|
1854
|
+
// ─── POP Protocol ──────────────────────────────────────────────────────────
|
|
1855
|
+
getPopCollections(opts = {}) {
|
|
1856
|
+
return this.getCollections(opts.page ?? 1, opts.limit ?? 20, void 0, opts.sort, "POP_PROTOCOL");
|
|
1857
|
+
}
|
|
1858
|
+
async getPopEligibility(collection, wallet) {
|
|
1859
|
+
const res = await this.get(
|
|
1860
|
+
`/v1/pop/eligibility/${normalizeAddress(collection)}/${normalizeAddress(wallet)}`
|
|
1861
|
+
);
|
|
1862
|
+
return res.data;
|
|
1863
|
+
}
|
|
1864
|
+
async getPopEligibilityBatch(collection, wallets) {
|
|
1865
|
+
const params = new URLSearchParams({ wallets: wallets.map(normalizeAddress).join(",") });
|
|
1866
|
+
const res = await this.get(
|
|
1867
|
+
`/v1/pop/eligibility/${normalizeAddress(collection)}?${params}`
|
|
1868
|
+
);
|
|
1869
|
+
return res.data;
|
|
1870
|
+
}
|
|
1871
|
+
// ─── Collection Drop ────────────────────────────────────────────────────────
|
|
1872
|
+
getDropCollections(opts = {}) {
|
|
1873
|
+
return this.getCollections(opts.page ?? 1, opts.limit ?? 20, void 0, opts.sort, "COLLECTION_DROP");
|
|
1874
|
+
}
|
|
1875
|
+
async getDropMintStatus(collection, wallet) {
|
|
1876
|
+
const res = await this.get(
|
|
1877
|
+
`/v1/drop/mint-status/${normalizeAddress(collection)}/${normalizeAddress(wallet)}`
|
|
1878
|
+
);
|
|
1879
|
+
return res.data;
|
|
1880
|
+
}
|
|
1881
|
+
};
|
|
1882
|
+
var POP_FACTORY_MAINNET = "0x00b32c34b427d8f346b5843ada6a37bd3368d879fc752cd52b68a87287f60111";
|
|
1883
|
+
var PopService = class {
|
|
1884
|
+
constructor(_config) {
|
|
1885
|
+
this.factoryAddress = POP_FACTORY_MAINNET;
|
|
1886
|
+
}
|
|
1887
|
+
async claim(account, collectionAddress) {
|
|
1888
|
+
const collection = new starknet.Contract(POPCollectionABI, normalizeAddress(collectionAddress), account);
|
|
1889
|
+
const call = collection.populate("claim", []);
|
|
1890
|
+
const res = await account.execute([call]);
|
|
1891
|
+
return { txHash: res.transaction_hash };
|
|
1892
|
+
}
|
|
1893
|
+
async adminMint(account, params) {
|
|
1894
|
+
const collection = new starknet.Contract(POPCollectionABI, normalizeAddress(params.collection), account);
|
|
1895
|
+
const call = collection.populate("admin_mint", [
|
|
1896
|
+
params.recipient,
|
|
1897
|
+
params.customUri ?? ""
|
|
1898
|
+
]);
|
|
1899
|
+
const res = await account.execute([call]);
|
|
1900
|
+
return { txHash: res.transaction_hash };
|
|
1901
|
+
}
|
|
1902
|
+
async addToAllowlist(account, params) {
|
|
1903
|
+
const collection = new starknet.Contract(POPCollectionABI, normalizeAddress(params.collection), account);
|
|
1904
|
+
const call = collection.populate("add_to_allowlist", [params.address]);
|
|
1905
|
+
const res = await account.execute([call]);
|
|
1906
|
+
return { txHash: res.transaction_hash };
|
|
1907
|
+
}
|
|
1908
|
+
async batchAddToAllowlist(account, params) {
|
|
1909
|
+
const collection = new starknet.Contract(POPCollectionABI, normalizeAddress(params.collection), account);
|
|
1910
|
+
const CHUNK = 200;
|
|
1911
|
+
const calls = [];
|
|
1912
|
+
for (let i = 0; i < params.addresses.length; i += CHUNK) {
|
|
1913
|
+
const chunk = params.addresses.slice(i, i + CHUNK);
|
|
1914
|
+
calls.push(collection.populate("batch_add_to_allowlist", [chunk]));
|
|
1915
|
+
}
|
|
1916
|
+
const res = await account.execute(calls);
|
|
1917
|
+
return { txHash: res.transaction_hash };
|
|
1918
|
+
}
|
|
1919
|
+
async removeFromAllowlist(account, params) {
|
|
1920
|
+
const collection = new starknet.Contract(POPCollectionABI, normalizeAddress(params.collection), account);
|
|
1921
|
+
const call = collection.populate("remove_from_allowlist", [params.address]);
|
|
1922
|
+
const res = await account.execute([call]);
|
|
1923
|
+
return { txHash: res.transaction_hash };
|
|
1924
|
+
}
|
|
1925
|
+
async setTokenUri(account, params) {
|
|
1926
|
+
const collection = new starknet.Contract(POPCollectionABI, normalizeAddress(params.collection), account);
|
|
1927
|
+
const call = collection.populate("set_token_uri", [BigInt(params.tokenId), params.uri]);
|
|
1928
|
+
const res = await account.execute([call]);
|
|
1929
|
+
return { txHash: res.transaction_hash };
|
|
1930
|
+
}
|
|
1931
|
+
async setPaused(account, params) {
|
|
1932
|
+
const collection = new starknet.Contract(POPCollectionABI, normalizeAddress(params.collection), account);
|
|
1933
|
+
const call = collection.populate("set_paused", [params.paused]);
|
|
1934
|
+
const res = await account.execute([call]);
|
|
1935
|
+
return { txHash: res.transaction_hash };
|
|
1936
|
+
}
|
|
1937
|
+
async createCollection(account, params) {
|
|
1938
|
+
const factory = new starknet.Contract(POPFactoryABI, this.factoryAddress, account);
|
|
1939
|
+
const eventTypeVariant = { [params.eventType]: {} };
|
|
1940
|
+
const call = factory.populate("create_collection", [
|
|
1941
|
+
params.name,
|
|
1942
|
+
params.symbol,
|
|
1943
|
+
params.baseUri,
|
|
1944
|
+
params.claimEndTime,
|
|
1945
|
+
eventTypeVariant
|
|
1946
|
+
]);
|
|
1947
|
+
const res = await account.execute([call]);
|
|
1948
|
+
return { txHash: res.transaction_hash };
|
|
1949
|
+
}
|
|
1950
|
+
};
|
|
1951
|
+
var DROP_FACTORY_MAINNET = "0x03587f42e29daee1b193f6cf83bf8627908ed6632d0d83fcb26225c50547d800";
|
|
1952
|
+
function toContractConditions(c) {
|
|
1953
|
+
return {
|
|
1954
|
+
start_time: c.startTime,
|
|
1955
|
+
end_time: c.endTime,
|
|
1956
|
+
price: BigInt(c.price),
|
|
1957
|
+
payment_token: c.paymentToken,
|
|
1958
|
+
max_quantity_per_wallet: BigInt(c.maxQuantityPerWallet)
|
|
1959
|
+
};
|
|
1960
|
+
}
|
|
1961
|
+
var DropService = class {
|
|
1962
|
+
constructor(_config) {
|
|
1963
|
+
this.factoryAddress = DROP_FACTORY_MAINNET;
|
|
1964
|
+
}
|
|
1965
|
+
async claim(account, collectionAddress, quantity = 1) {
|
|
1966
|
+
const collection = new starknet.Contract(DropCollectionABI, normalizeAddress(collectionAddress), account);
|
|
1967
|
+
const call = collection.populate("claim", [BigInt(quantity)]);
|
|
1968
|
+
const res = await account.execute([call]);
|
|
1969
|
+
return { txHash: res.transaction_hash };
|
|
1970
|
+
}
|
|
1971
|
+
async adminMint(account, params) {
|
|
1972
|
+
const collection = new starknet.Contract(DropCollectionABI, normalizeAddress(params.collection), account);
|
|
1973
|
+
const call = collection.populate("admin_mint", [
|
|
1974
|
+
params.recipient,
|
|
1975
|
+
BigInt(params.quantity ?? 1),
|
|
1976
|
+
params.customUri ?? ""
|
|
1977
|
+
]);
|
|
1978
|
+
const res = await account.execute([call]);
|
|
1979
|
+
return { txHash: res.transaction_hash };
|
|
1980
|
+
}
|
|
1981
|
+
async setClaimConditions(account, params) {
|
|
1982
|
+
const collection = new starknet.Contract(DropCollectionABI, normalizeAddress(params.collection), account);
|
|
1983
|
+
const call = collection.populate("set_claim_conditions", [toContractConditions(params.conditions)]);
|
|
1984
|
+
const res = await account.execute([call]);
|
|
1985
|
+
return { txHash: res.transaction_hash };
|
|
1986
|
+
}
|
|
1987
|
+
async setAllowlistEnabled(account, params) {
|
|
1988
|
+
const collection = new starknet.Contract(DropCollectionABI, normalizeAddress(params.collection), account);
|
|
1989
|
+
const call = collection.populate("set_allowlist_enabled", [params.enabled]);
|
|
1990
|
+
const res = await account.execute([call]);
|
|
1991
|
+
return { txHash: res.transaction_hash };
|
|
1992
|
+
}
|
|
1993
|
+
async addToAllowlist(account, params) {
|
|
1994
|
+
const collection = new starknet.Contract(DropCollectionABI, normalizeAddress(params.collection), account);
|
|
1995
|
+
const call = collection.populate("add_to_allowlist", [params.address]);
|
|
1996
|
+
const res = await account.execute([call]);
|
|
1997
|
+
return { txHash: res.transaction_hash };
|
|
1998
|
+
}
|
|
1999
|
+
async batchAddToAllowlist(account, params) {
|
|
2000
|
+
const collection = new starknet.Contract(DropCollectionABI, normalizeAddress(params.collection), account);
|
|
2001
|
+
const CHUNK = 200;
|
|
2002
|
+
const calls = [];
|
|
2003
|
+
for (let i = 0; i < params.addresses.length; i += CHUNK) {
|
|
2004
|
+
const chunk = params.addresses.slice(i, i + CHUNK);
|
|
2005
|
+
calls.push(collection.populate("batch_add_to_allowlist", [chunk]));
|
|
2006
|
+
}
|
|
2007
|
+
const res = await account.execute(calls);
|
|
2008
|
+
return { txHash: res.transaction_hash };
|
|
2009
|
+
}
|
|
2010
|
+
async setPaused(account, params) {
|
|
2011
|
+
const collection = new starknet.Contract(DropCollectionABI, normalizeAddress(params.collection), account);
|
|
2012
|
+
const call = collection.populate("set_paused", [params.paused]);
|
|
2013
|
+
const res = await account.execute([call]);
|
|
2014
|
+
return { txHash: res.transaction_hash };
|
|
2015
|
+
}
|
|
2016
|
+
async withdrawPayments(account, params) {
|
|
2017
|
+
const collection = new starknet.Contract(DropCollectionABI, normalizeAddress(params.collection), account);
|
|
2018
|
+
const call = collection.populate("withdraw_payments", []);
|
|
2019
|
+
const res = await account.execute([call]);
|
|
2020
|
+
return { txHash: res.transaction_hash };
|
|
2021
|
+
}
|
|
2022
|
+
async createDrop(account, params) {
|
|
2023
|
+
const factory = new starknet.Contract(DropFactoryABI, this.factoryAddress, account);
|
|
2024
|
+
const call = factory.populate("create_drop", [
|
|
2025
|
+
params.name,
|
|
2026
|
+
params.symbol,
|
|
2027
|
+
params.baseUri,
|
|
2028
|
+
BigInt(params.maxSupply),
|
|
2029
|
+
toContractConditions(params.initialConditions)
|
|
2030
|
+
]);
|
|
2031
|
+
const res = await account.execute([call]);
|
|
2032
|
+
return { txHash: res.transaction_hash };
|
|
2033
|
+
}
|
|
1443
2034
|
};
|
|
1444
2035
|
|
|
1445
2036
|
// src/client.ts
|
|
@@ -1447,6 +2038,10 @@ var MedialaneClient = class {
|
|
|
1447
2038
|
constructor(rawConfig = {}) {
|
|
1448
2039
|
this.config = resolveConfig(rawConfig);
|
|
1449
2040
|
this.marketplace = new MarketplaceModule(this.config);
|
|
2041
|
+
this.services = {
|
|
2042
|
+
pop: new PopService(this.config),
|
|
2043
|
+
drop: new DropService(this.config)
|
|
2044
|
+
};
|
|
1450
2045
|
if (!this.config.backendUrl) {
|
|
1451
2046
|
this.api = new Proxy({}, {
|
|
1452
2047
|
get(_target, prop) {
|
|
@@ -1478,6 +2073,11 @@ var OPEN_LICENSES = ["CC0", "CC BY", "CC BY-SA", "CC BY-NC"];
|
|
|
1478
2073
|
exports.ApiClient = ApiClient;
|
|
1479
2074
|
exports.COLLECTION_CONTRACT_MAINNET = COLLECTION_CONTRACT_MAINNET;
|
|
1480
2075
|
exports.DEFAULT_RPC_URLS = DEFAULT_RPC_URLS;
|
|
2076
|
+
exports.DROP_COLLECTION_CLASS_HASH_MAINNET = DROP_COLLECTION_CLASS_HASH_MAINNET;
|
|
2077
|
+
exports.DROP_FACTORY_CONTRACT_MAINNET = DROP_FACTORY_CONTRACT_MAINNET;
|
|
2078
|
+
exports.DropCollectionABI = DropCollectionABI;
|
|
2079
|
+
exports.DropFactoryABI = DropFactoryABI;
|
|
2080
|
+
exports.DropService = DropService;
|
|
1481
2081
|
exports.IPMarketplaceABI = IPMarketplaceABI;
|
|
1482
2082
|
exports.MARKETPLACE_CONTRACT_MAINNET = MARKETPLACE_CONTRACT_MAINNET;
|
|
1483
2083
|
exports.MarketplaceModule = MarketplaceModule;
|
|
@@ -1485,6 +2085,11 @@ exports.MedialaneApiError = MedialaneApiError;
|
|
|
1485
2085
|
exports.MedialaneClient = MedialaneClient;
|
|
1486
2086
|
exports.MedialaneError = MedialaneError;
|
|
1487
2087
|
exports.OPEN_LICENSES = OPEN_LICENSES;
|
|
2088
|
+
exports.POPCollectionABI = POPCollectionABI;
|
|
2089
|
+
exports.POPFactoryABI = POPFactoryABI;
|
|
2090
|
+
exports.POP_COLLECTION_CLASS_HASH_MAINNET = POP_COLLECTION_CLASS_HASH_MAINNET;
|
|
2091
|
+
exports.POP_FACTORY_CONTRACT_MAINNET = POP_FACTORY_CONTRACT_MAINNET;
|
|
2092
|
+
exports.PopService = PopService;
|
|
1488
2093
|
exports.SUPPORTED_NETWORKS = SUPPORTED_NETWORKS;
|
|
1489
2094
|
exports.SUPPORTED_TOKENS = SUPPORTED_TOKENS;
|
|
1490
2095
|
exports.buildCancellationTypedData = buildCancellationTypedData;
|