@medialane/sdk 0.35.1 → 0.36.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/dist/index.cjs CHANGED
@@ -6469,6 +6469,46 @@ var MedialaneClient = class {
6469
6469
  // src/types/api.ts
6470
6470
  var OPEN_LICENSES = ["CC0", "CC BY", "CC BY-SA", "CC BY-NC"];
6471
6471
 
6472
+ // src/services/coinLaunchMath.ts
6473
+ var COIN_DECIMALS2 = 18;
6474
+ var LAUNCH_PRICE_QUOTE_PER_COIN = 0.01;
6475
+ var MIN_SUPPLY = 1000n;
6476
+ var MAX_SUPPLY = 1000000000000n;
6477
+ var MAX_FELT_BYTES = 31;
6478
+ function byteLen(s) {
6479
+ return new TextEncoder().encode(s).length;
6480
+ }
6481
+ function validateName(s) {
6482
+ if (!s.trim()) return "Name is required";
6483
+ if (byteLen(s) > MAX_FELT_BYTES) return `Name must be at most ${MAX_FELT_BYTES} bytes`;
6484
+ return null;
6485
+ }
6486
+ function validateSymbol(s) {
6487
+ if (!s.trim()) return "Symbol is required";
6488
+ if (byteLen(s) > MAX_FELT_BYTES) return `Symbol must be at most ${MAX_FELT_BYTES} bytes`;
6489
+ return null;
6490
+ }
6491
+ function validateSupply(human) {
6492
+ if (!/^\d+$/.test(human.trim())) return "Supply must be a whole number";
6493
+ const v = BigInt(human.trim());
6494
+ if (v < MIN_SUPPLY) return `Supply must be at least ${MIN_SUPPLY.toString()}`;
6495
+ if (v > MAX_SUPPLY) return `Supply must be at most ${MAX_SUPPLY.toString()}`;
6496
+ return null;
6497
+ }
6498
+ function toRaw(human, decimals = COIN_DECIMALS2) {
6499
+ return human * 10n ** BigInt(decimals);
6500
+ }
6501
+ function teamCoinsRaw(supplyRaw, pct) {
6502
+ const bps = BigInt(Math.round(pct * 100));
6503
+ return supplyRaw * bps / 10000n;
6504
+ }
6505
+ function buybackQuoteRaw(teamCoinsRawValue, quoteDecimals) {
6506
+ return teamCoinsRawValue * 10n ** BigInt(quoteDecimals) / (100n * 10n ** BigInt(COIN_DECIMALS2));
6507
+ }
6508
+ function fdvHuman(supplyHuman) {
6509
+ return supplyHuman * LAUNCH_PRICE_QUOTE_PER_COIN;
6510
+ }
6511
+
6472
6512
  // src/services/registry.ts
6473
6513
  var SERVICES = {
6474
6514
  "mip-erc721": {
@@ -6662,6 +6702,8 @@ function getServicesByCapability(cap) {
6662
6702
  }
6663
6703
 
6664
6704
  exports.ApiClient = ApiClient;
6705
+ exports.COIN_MAX_SUPPLY = MAX_SUPPLY;
6706
+ exports.COIN_MIN_SUPPLY = MIN_SUPPLY;
6665
6707
  exports.COLLECTION_1155_CLASS_HASH_MAINNET = COLLECTION_1155_CLASS_HASH_MAINNET;
6666
6708
  exports.COLLECTION_1155_CONTRACT_MAINNET = COLLECTION_1155_CONTRACT_MAINNET;
6667
6709
  exports.COLLECTION_1155_FACTORY_CLASS_HASH_MAINNET = COLLECTION_1155_FACTORY_CLASS_HASH_MAINNET;
@@ -6692,6 +6734,7 @@ exports.IPCollectionABI = IPCollectionABI;
6692
6734
  exports.IPMarketplaceABI = IPMarketplaceABI;
6693
6735
  exports.IPNFT_CLASS_HASH_MAINNET = IPNFT_CLASS_HASH_MAINNET;
6694
6736
  exports.IPNftABI = IPNftABI;
6737
+ exports.LAUNCH_PRICE_QUOTE_PER_COIN = LAUNCH_PRICE_QUOTE_PER_COIN;
6695
6738
  exports.MARKETPLACE_1155_CLASS_HASH_MAINNET = MARKETPLACE_1155_CLASS_HASH_MAINNET;
6696
6739
  exports.MARKETPLACE_1155_CONTRACT_MAINNET = MARKETPLACE_1155_CONTRACT_MAINNET;
6697
6740
  exports.MARKETPLACE_1155_START_BLOCK_MAINNET = MARKETPLACE_1155_START_BLOCK_MAINNET;
@@ -6722,8 +6765,11 @@ exports.buildCreateCreatorCoinCall = buildCreateCreatorCoinCall;
6722
6765
  exports.buildFeeCall = buildFeeCall;
6723
6766
  exports.buildLaunchOnEkuboCalls = buildLaunchOnEkuboCalls;
6724
6767
  exports.buildOrderTypedData = buildOrderTypedData;
6768
+ exports.buybackQuoteRaw = buybackQuoteRaw;
6769
+ exports.coinToRaw = toRaw;
6725
6770
  exports.createFailoverFetch = createFailoverFetch;
6726
6771
  exports.encodeByteArray = encodeByteArray;
6772
+ exports.fdvHuman = fdvHuman;
6727
6773
  exports.formatAmount = formatAmount;
6728
6774
  exports.getCreatorCoinPrice = getCreatorCoinPrice;
6729
6775
  exports.getListableTokens = getListableTokens;
@@ -6742,6 +6788,10 @@ exports.resolveConfig = resolveConfig;
6742
6788
  exports.resolveFeeConfig = resolveFeeConfig;
6743
6789
  exports.shortenAddress = shortenAddress;
6744
6790
  exports.stringifyBigInts = stringifyBigInts;
6791
+ exports.teamCoinsRaw = teamCoinsRaw;
6745
6792
  exports.u256ToBigInt = u256ToBigInt;
6793
+ exports.validateCoinName = validateName;
6794
+ exports.validateCoinSupply = validateSupply;
6795
+ exports.validateCoinSymbol = validateSymbol;
6746
6796
  //# sourceMappingURL=index.cjs.map
6747
6797
  //# sourceMappingURL=index.cjs.map