@medialane/sdk 0.99.0 → 0.100.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 +2 -2
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/{services-6lZz3hUV.d.ts → services-BcckoQHb.d.ts} +1 -0
- package/dist/{services-CRckcKEc.d.cts → services-DkdQoHIr.d.cts} +1 -0
- package/dist/starknet/index.cjs +62 -10
- package/dist/starknet/index.cjs.map +1 -1
- package/dist/starknet/index.d.cts +26 -6
- package/dist/starknet/index.d.ts +26 -6
- package/dist/starknet/index.js +59 -10
- package/dist/starknet/index.js.map +1 -1
- package/package.json +1 -1
package/dist/starknet/index.cjs
CHANGED
|
@@ -10269,7 +10269,7 @@ var ERC1155CollectionService = class {
|
|
|
10269
10269
|
|
|
10270
10270
|
// src/starknet/services/coinLaunchMath.ts
|
|
10271
10271
|
var COIN_DECIMALS = 18;
|
|
10272
|
-
var
|
|
10272
|
+
var SUGGESTED_DEFAULT_PRICE = 0.01;
|
|
10273
10273
|
var MIN_SUPPLY = 1000n;
|
|
10274
10274
|
var MAX_SUPPLY = 1000000000000n;
|
|
10275
10275
|
var MAX_FELT_BYTES = 31;
|
|
@@ -10300,11 +10300,13 @@ function teamCoinsRaw(supplyRaw, pct) {
|
|
|
10300
10300
|
const bps = BigInt(Math.round(pct * 100));
|
|
10301
10301
|
return supplyRaw * bps / 10000n;
|
|
10302
10302
|
}
|
|
10303
|
-
|
|
10304
|
-
|
|
10303
|
+
var PRICE_SCALE = 1000000000000n;
|
|
10304
|
+
function buybackQuoteRaw(teamCoinsRawValue, price, quoteDecimals) {
|
|
10305
|
+
const priceScaled = BigInt(Math.round(price * Number(PRICE_SCALE)));
|
|
10306
|
+
return teamCoinsRawValue * priceScaled * 10n ** BigInt(quoteDecimals) / (PRICE_SCALE * 10n ** BigInt(COIN_DECIMALS));
|
|
10305
10307
|
}
|
|
10306
|
-
function fdvHuman(supplyHuman) {
|
|
10307
|
-
return supplyHuman *
|
|
10308
|
+
function fdvHuman(supplyHuman, price) {
|
|
10309
|
+
return supplyHuman * price;
|
|
10308
10310
|
}
|
|
10309
10311
|
|
|
10310
10312
|
// src/starknet/services/creatorCoin.ts
|
|
@@ -10315,8 +10317,8 @@ var VALIDATED_EKUBO_PARAMS = {
|
|
|
10315
10317
|
bound: 88719042n
|
|
10316
10318
|
};
|
|
10317
10319
|
var TICK_BASE = 1.000001;
|
|
10318
|
-
function priceToEkuboParams(quoteDecimals, price =
|
|
10319
|
-
const decAdj = 10 ** (
|
|
10320
|
+
function priceToEkuboParams(quoteDecimals, price = SUGGESTED_DEFAULT_PRICE) {
|
|
10321
|
+
const decAdj = 10 ** (COIN_DECIMALS - quoteDecimals);
|
|
10320
10322
|
const rawRatio = price / decAdj;
|
|
10321
10323
|
const tickSpacing = Number(VALIDATED_EKUBO_PARAMS.tickSpacing);
|
|
10322
10324
|
const rawTick = Math.log(rawRatio) / Math.log(TICK_BASE);
|
|
@@ -10328,6 +10330,17 @@ function priceToEkuboParams(quoteDecimals, price = LAUNCH_PRICE_QUOTE_PER_COIN)
|
|
|
10328
10330
|
bound: VALIDATED_EKUBO_PARAMS.bound
|
|
10329
10331
|
};
|
|
10330
10332
|
}
|
|
10333
|
+
function validatePrice(quoteDecimals, price) {
|
|
10334
|
+
if (!isFinite(price) || price <= 0) return "Price must be a positive number";
|
|
10335
|
+
const decAdj = 10 ** (COIN_DECIMALS - quoteDecimals);
|
|
10336
|
+
const rawRatio = price / decAdj;
|
|
10337
|
+
if (!isFinite(rawRatio) || rawRatio <= 0) return "Price must be a positive number";
|
|
10338
|
+
const rawTick = Math.log(rawRatio) / Math.log(TICK_BASE);
|
|
10339
|
+
if (!isFinite(rawTick)) return "Price is outside the supported range";
|
|
10340
|
+
const bound = Number(VALIDATED_EKUBO_PARAMS.bound);
|
|
10341
|
+
if (Math.abs(rawTick) >= bound) return "Price is outside the supported range";
|
|
10342
|
+
return null;
|
|
10343
|
+
}
|
|
10331
10344
|
var MAX_TEAM_ALLOCATION_PERCENT = 10;
|
|
10332
10345
|
var MAX_HOLDERS_AT_LAUNCH = 10;
|
|
10333
10346
|
function u256(parts, offset = 0) {
|
|
@@ -10360,7 +10373,6 @@ async function getCreatorCoinGuarantees(coinAddress, provider) {
|
|
|
10360
10373
|
liquidityPositionId
|
|
10361
10374
|
};
|
|
10362
10375
|
}
|
|
10363
|
-
var COIN_DECIMALS2 = 18;
|
|
10364
10376
|
var _factoryContract = null;
|
|
10365
10377
|
function factoryContract() {
|
|
10366
10378
|
if (!_factoryContract) {
|
|
@@ -10382,7 +10394,7 @@ function buildCreateCreatorCoinCall(params) {
|
|
|
10382
10394
|
]);
|
|
10383
10395
|
}
|
|
10384
10396
|
function buildLaunchOnEkuboCalls(params) {
|
|
10385
|
-
const ek = params.ekubo
|
|
10397
|
+
const ek = params.ekubo;
|
|
10386
10398
|
const launchParameters = {
|
|
10387
10399
|
creator_coin_address: params.creatorCoin,
|
|
10388
10400
|
transfer_restriction_delay: params.transferRestrictionDelay ?? 0,
|
|
@@ -11532,6 +11544,43 @@ async function requestSiwsToken({
|
|
|
11532
11544
|
storeSiwsToken(walletAddress, token);
|
|
11533
11545
|
return token;
|
|
11534
11546
|
}
|
|
11547
|
+
|
|
11548
|
+
// src/starknet/services/sponsoredExecutor.ts
|
|
11549
|
+
var SponsoredCallRejectedError = class extends Error {
|
|
11550
|
+
};
|
|
11551
|
+
var PRE_BROADCAST_EXECUTE_STATUSES = /* @__PURE__ */ new Set([400, 429, 503]);
|
|
11552
|
+
async function errorReason(res, fallback) {
|
|
11553
|
+
const body = await res.json().catch(() => null);
|
|
11554
|
+
return body?.error || fallback;
|
|
11555
|
+
}
|
|
11556
|
+
async function executeSponsored(config, signer, calls) {
|
|
11557
|
+
const doFetch = config.fetchImpl ?? fetch;
|
|
11558
|
+
const base = config.proxyUrl.replace(/\/$/, "");
|
|
11559
|
+
const buildRes = await doFetch(`${base}/build`, {
|
|
11560
|
+
method: "POST",
|
|
11561
|
+
headers: { "Content-Type": "application/json" },
|
|
11562
|
+
body: JSON.stringify({ userAddress: signer.address, calls })
|
|
11563
|
+
});
|
|
11564
|
+
if (!buildRes.ok) {
|
|
11565
|
+
return { status: "unavailable", reason: await errorReason(buildRes, "We couldn't prepare this transaction.") };
|
|
11566
|
+
}
|
|
11567
|
+
const { typedData } = await buildRes.json();
|
|
11568
|
+
const signature = await signer.signTypedData(typedData);
|
|
11569
|
+
const executeRes = await doFetch(`${base}/execute`, {
|
|
11570
|
+
method: "POST",
|
|
11571
|
+
headers: { "Content-Type": "application/json" },
|
|
11572
|
+
body: JSON.stringify({ userAddress: signer.address, typedData, signature, calls })
|
|
11573
|
+
});
|
|
11574
|
+
if (!executeRes.ok) {
|
|
11575
|
+
const reason = await errorReason(executeRes, "We couldn't submit this transaction.");
|
|
11576
|
+
if (PRE_BROADCAST_EXECUTE_STATUSES.has(executeRes.status)) {
|
|
11577
|
+
return { status: "unavailable", reason };
|
|
11578
|
+
}
|
|
11579
|
+
throw new SponsoredCallRejectedError(reason);
|
|
11580
|
+
}
|
|
11581
|
+
const { transactionHash } = await executeRes.json();
|
|
11582
|
+
return { status: "sponsored", transactionHash };
|
|
11583
|
+
}
|
|
11535
11584
|
function encodeByteArray(str) {
|
|
11536
11585
|
const bytes = new TextEncoder().encode(str);
|
|
11537
11586
|
const fullChunks = [];
|
|
@@ -11727,7 +11776,6 @@ exports.IPNftABI = IPNftABI;
|
|
|
11727
11776
|
exports.IPSponsorshipABI = IPSponsorshipABI;
|
|
11728
11777
|
exports.IPTicketCollectionABI = IPTicketCollectionABI;
|
|
11729
11778
|
exports.IPTicketCollectionFactoryABI = IPTicketCollectionFactoryABI;
|
|
11730
|
-
exports.LAUNCH_PRICE_QUOTE_PER_COIN = LAUNCH_PRICE_QUOTE_PER_COIN;
|
|
11731
11779
|
exports.MAX_HOLDERS_AT_LAUNCH = MAX_HOLDERS_AT_LAUNCH;
|
|
11732
11780
|
exports.MAX_TEAM_ALLOCATION_PERCENT = MAX_TEAM_ALLOCATION_PERCENT;
|
|
11733
11781
|
exports.Medialane1155ABI = Medialane1155ABI;
|
|
@@ -11736,6 +11784,8 @@ exports.MedialaneError = MedialaneError;
|
|
|
11736
11784
|
exports.POPCollectionABI = POPCollectionABI;
|
|
11737
11785
|
exports.POPFactoryABI = POPFactoryABI;
|
|
11738
11786
|
exports.PopService = PopService;
|
|
11787
|
+
exports.SUGGESTED_DEFAULT_PRICE = SUGGESTED_DEFAULT_PRICE;
|
|
11788
|
+
exports.SponsoredCallRejectedError = SponsoredCallRejectedError;
|
|
11739
11789
|
exports.SponsorshipService = SponsorshipService;
|
|
11740
11790
|
exports.StarknetVenue = StarknetVenue;
|
|
11741
11791
|
exports.TicketService = TicketService;
|
|
@@ -11766,6 +11816,7 @@ exports.deriveAesKey = deriveAesKey;
|
|
|
11766
11816
|
exports.deriveOwnerKeyPair = deriveOwnerKeyPair;
|
|
11767
11817
|
exports.encodeAdminHeaders = encodeAdminHeaders;
|
|
11768
11818
|
exports.encodeByteArray = encodeByteArray;
|
|
11819
|
+
exports.executeSponsored = executeSponsored;
|
|
11769
11820
|
exports.fdvHuman = fdvHuman;
|
|
11770
11821
|
exports.generateStarkKeyPair = generateStarkKeyPair;
|
|
11771
11822
|
exports.getCounter = getCounter;
|
|
@@ -11797,6 +11848,7 @@ exports.unsealPrivateKey = unsealPrivateKey;
|
|
|
11797
11848
|
exports.validateCoinName = validateName;
|
|
11798
11849
|
exports.validateCoinSupply = validateSupply;
|
|
11799
11850
|
exports.validateCoinSymbol = validateSymbol;
|
|
11851
|
+
exports.validatePrice = validatePrice;
|
|
11800
11852
|
exports.verifyAdminRequestSig = verifyAdminRequestSig;
|
|
11801
11853
|
//# sourceMappingURL=index.cjs.map
|
|
11802
11854
|
//# sourceMappingURL=index.cjs.map
|