@medialane/sdk 0.115.0 → 0.117.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 +20 -0
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +25 -0
- package/dist/index.d.ts +25 -0
- package/dist/index.js +20 -0
- package/dist/index.js.map +1 -1
- package/dist/starknet/index.cjs +0 -90
- package/dist/starknet/index.cjs.map +1 -1
- package/dist/starknet/index.d.cts +1 -19
- package/dist/starknet/index.d.ts +1 -19
- package/dist/starknet/index.js +1 -84
- package/dist/starknet/index.js.map +1 -1
- package/package.json +1 -1
package/dist/starknet/index.cjs
CHANGED
|
@@ -11912,25 +11912,6 @@ async function deriveAesKey(prfSecret, hkdfInfo) {
|
|
|
11912
11912
|
["encrypt", "decrypt"]
|
|
11913
11913
|
);
|
|
11914
11914
|
}
|
|
11915
|
-
var STARK_KEY_INFO = new TextEncoder().encode("medialane/passkey/stark-key/v1");
|
|
11916
|
-
var DERIVE_BITS = 384;
|
|
11917
|
-
function bytesToBigInt(bytes) {
|
|
11918
|
-
let value = 0n;
|
|
11919
|
-
for (const byte of bytes) value = value << 8n | BigInt(byte);
|
|
11920
|
-
return value;
|
|
11921
|
-
}
|
|
11922
|
-
async function deriveStarkKeyPair(prfSecret) {
|
|
11923
|
-
const hkdf = await crypto.subtle.importKey("raw", prfSecret, "HKDF", false, ["deriveBits"]);
|
|
11924
|
-
const bits = await crypto.subtle.deriveBits(
|
|
11925
|
-
{ name: "HKDF", hash: "SHA-256", salt: new Uint8Array(0), info: STARK_KEY_INFO },
|
|
11926
|
-
hkdf,
|
|
11927
|
-
DERIVE_BITS
|
|
11928
|
-
);
|
|
11929
|
-
const order = starknet.ec.starkCurve.CURVE.n;
|
|
11930
|
-
const value = bytesToBigInt(new Uint8Array(bits)) % (order - 1n) + 1n;
|
|
11931
|
-
const privateKeyHex = "0x" + value.toString(16).padStart(64, "0");
|
|
11932
|
-
return { privateKeyHex, publicKeyHex: starknet.ec.starkCurve.getStarkKey(privateKeyHex) };
|
|
11933
|
-
}
|
|
11934
11915
|
function generateStarkKeyPair() {
|
|
11935
11916
|
const privateKeyHex = "0x" + Array.from(starknet.ec.starkCurve.utils.randomPrivateKey()).map((b) => b.toString(16).padStart(2, "0")).join("");
|
|
11936
11917
|
return { privateKeyHex, publicKeyHex: starknet.ec.starkCurve.getStarkKey(privateKeyHex) };
|
|
@@ -11969,73 +11950,8 @@ function signWithPrivateKey(privateKeyHex, msgHash) {
|
|
|
11969
11950
|
return [starknet.num.toHex(sig.r), starknet.num.toHex(sig.s)];
|
|
11970
11951
|
}
|
|
11971
11952
|
|
|
11972
|
-
// src/starknet/app-approval/approval.ts
|
|
11973
|
-
var MEDIALANE_SUFFIX = ".medialane.io";
|
|
11974
|
-
var STARK_ORDER2 = (1n << 251n) + 17n * (1n << 192n) + 1n;
|
|
11975
|
-
var APPROVAL_PATH = "/approve-app";
|
|
11976
|
-
var InvalidApprovalRequestError = class extends Error {
|
|
11977
|
-
constructor(message) {
|
|
11978
|
-
super(message);
|
|
11979
|
-
this.name = "InvalidApprovalRequestError";
|
|
11980
|
-
}
|
|
11981
|
-
};
|
|
11982
|
-
function isMedialaneOrigin(url) {
|
|
11983
|
-
let parsed;
|
|
11984
|
-
try {
|
|
11985
|
-
parsed = new URL(url);
|
|
11986
|
-
} catch {
|
|
11987
|
-
return false;
|
|
11988
|
-
}
|
|
11989
|
-
if (parsed.protocol !== "https:") return parsed.hostname === "localhost";
|
|
11990
|
-
return parsed.hostname === "medialane.io" || parsed.hostname.endsWith(MEDIALANE_SUFFIX);
|
|
11991
|
-
}
|
|
11992
|
-
function assertPublicKey(value) {
|
|
11993
|
-
if (!/^0x[0-9a-fA-F]{1,64}$/.test(value)) {
|
|
11994
|
-
throw new InvalidApprovalRequestError("That is not a wallet key.");
|
|
11995
|
-
}
|
|
11996
|
-
const scalar = BigInt(value);
|
|
11997
|
-
if (scalar === 0n || scalar >= STARK_ORDER2) {
|
|
11998
|
-
throw new InvalidApprovalRequestError("That is not a wallet key.");
|
|
11999
|
-
}
|
|
12000
|
-
return `0x${scalar.toString(16)}`;
|
|
12001
|
-
}
|
|
12002
|
-
function assertAppName(value) {
|
|
12003
|
-
const name = value.replace(/\s+/g, " ").trim().slice(0, 40);
|
|
12004
|
-
if (!name) throw new InvalidApprovalRequestError("The app asking has no name.");
|
|
12005
|
-
return name;
|
|
12006
|
-
}
|
|
12007
|
-
function assertReturnUrl(value) {
|
|
12008
|
-
if (!isMedialaneOrigin(value)) {
|
|
12009
|
-
throw new InvalidApprovalRequestError("That app is not part of Medialane.");
|
|
12010
|
-
}
|
|
12011
|
-
return value;
|
|
12012
|
-
}
|
|
12013
|
-
function buildApprovalUrl(approverOrigin, request) {
|
|
12014
|
-
if (!isMedialaneOrigin(approverOrigin)) {
|
|
12015
|
-
throw new InvalidApprovalRequestError("That app is not part of Medialane.");
|
|
12016
|
-
}
|
|
12017
|
-
const url = new URL(APPROVAL_PATH, approverOrigin);
|
|
12018
|
-
url.searchParams.set("key", assertPublicKey(request.publicKey));
|
|
12019
|
-
url.searchParams.set("app", assertAppName(request.appName));
|
|
12020
|
-
url.searchParams.set("return", assertReturnUrl(request.returnUrl));
|
|
12021
|
-
return url.toString();
|
|
12022
|
-
}
|
|
12023
|
-
function parseApprovalRequest(params) {
|
|
12024
|
-
return {
|
|
12025
|
-
publicKey: assertPublicKey(params.get("key") ?? ""),
|
|
12026
|
-
appName: assertAppName(params.get("app") ?? ""),
|
|
12027
|
-
returnUrl: assertReturnUrl(params.get("return") ?? "")
|
|
12028
|
-
};
|
|
12029
|
-
}
|
|
12030
|
-
function buildReturnUrl(returnUrl, outcome) {
|
|
12031
|
-
const url = new URL(assertReturnUrl(returnUrl));
|
|
12032
|
-
url.searchParams.set("approval", outcome);
|
|
12033
|
-
return url.toString();
|
|
12034
|
-
}
|
|
12035
|
-
|
|
12036
11953
|
exports.ADMIN_HEADERS = ADMIN_HEADERS;
|
|
12037
11954
|
exports.ADMIN_SCOPE = ADMIN_SCOPE;
|
|
12038
|
-
exports.APPROVAL_PATH = APPROVAL_PATH;
|
|
12039
11955
|
exports.COIN_MAX_SUPPLY = MAX_SUPPLY;
|
|
12040
11956
|
exports.COIN_MIN_SUPPLY = MIN_SUPPLY;
|
|
12041
11957
|
exports.ClubService = ClubService;
|
|
@@ -12056,7 +11972,6 @@ exports.IPNftABI = IPNftABI;
|
|
|
12056
11972
|
exports.IPSponsorshipABI = IPSponsorshipABI;
|
|
12057
11973
|
exports.IPTicketCollectionABI = IPTicketCollectionABI;
|
|
12058
11974
|
exports.IPTicketCollectionFactoryABI = IPTicketCollectionFactoryABI;
|
|
12059
|
-
exports.InvalidApprovalRequestError = InvalidApprovalRequestError;
|
|
12060
11975
|
exports.InvalidStarkPrivateKeyError = InvalidStarkPrivateKeyError;
|
|
12061
11976
|
exports.MAX_HOLDERS_AT_LAUNCH = MAX_HOLDERS_AT_LAUNCH;
|
|
12062
11977
|
exports.MAX_TEAM_ALLOCATION_PERCENT = MAX_TEAM_ALLOCATION_PERCENT;
|
|
@@ -12078,7 +11993,6 @@ exports.build1155CancellationTypedData = build1155CancellationTypedData;
|
|
|
12078
11993
|
exports.build1155OrderTypedData = build1155OrderTypedData;
|
|
12079
11994
|
exports.buildAddOwnerCall = buildAddOwnerCall;
|
|
12080
11995
|
exports.buildAdminSessionTypedData = buildAdminSessionTypedData;
|
|
12081
|
-
exports.buildApprovalUrl = buildApprovalUrl;
|
|
12082
11996
|
exports.buildCancelEscapeCall = buildCancelEscapeCall;
|
|
12083
11997
|
exports.buildCancellationTypedData = buildCancellationTypedData;
|
|
12084
11998
|
exports.buildChangeOwnersCall = buildChangeOwnersCall;
|
|
@@ -12090,7 +12004,6 @@ exports.buildLaunchOnEkuboCalls = buildLaunchOnEkuboCalls;
|
|
|
12090
12004
|
exports.buildOrderTypedData = buildOrderTypedData;
|
|
12091
12005
|
exports.buildRemoveOwnerByGuidCall = buildRemoveOwnerByGuidCall;
|
|
12092
12006
|
exports.buildRemoveOwnerCall = buildRemoveOwnerCall;
|
|
12093
|
-
exports.buildReturnUrl = buildReturnUrl;
|
|
12094
12007
|
exports.buildSetFirstGuardianCall = buildSetFirstGuardianCall;
|
|
12095
12008
|
exports.buildTriggerEscapeOwnerCall = buildTriggerEscapeOwnerCall;
|
|
12096
12009
|
exports.buybackQuoteRaw = buybackQuoteRaw;
|
|
@@ -12103,7 +12016,6 @@ exports.decodeEscapeAndStatus = decodeEscapeAndStatus;
|
|
|
12103
12016
|
exports.decodeGuardiansInfo = decodeGuardiansInfo;
|
|
12104
12017
|
exports.deriveAesKey = deriveAesKey;
|
|
12105
12018
|
exports.deriveOwnerKeyPair = deriveOwnerKeyPair;
|
|
12106
|
-
exports.deriveStarkKeyPair = deriveStarkKeyPair;
|
|
12107
12019
|
exports.encodeAdminHeaders = encodeAdminHeaders;
|
|
12108
12020
|
exports.encodeByteArray = encodeByteArray;
|
|
12109
12021
|
exports.executeIntent = executeIntent;
|
|
@@ -12122,13 +12034,11 @@ exports.getOrderDetails1155 = getOrderDetails1155;
|
|
|
12122
12034
|
exports.getOwners = getOwners;
|
|
12123
12035
|
exports.getSiwsStorageKey = getSiwsStorageKey;
|
|
12124
12036
|
exports.getStoredSiwsToken = getStoredSiwsToken;
|
|
12125
|
-
exports.isMedialaneOrigin = isMedialaneOrigin;
|
|
12126
12037
|
exports.isSiwsTokenValid = isSiwsTokenValid;
|
|
12127
12038
|
exports.normalizeSiwsSignature = normalizeSiwsSignature;
|
|
12128
12039
|
exports.ownerAliveTypedData = ownerAliveTypedData;
|
|
12129
12040
|
exports.ownerConstructorCalldata = ownerConstructorCalldata;
|
|
12130
12041
|
exports.parseAdminHeaders = parseAdminHeaders;
|
|
12131
|
-
exports.parseApprovalRequest = parseApprovalRequest;
|
|
12132
12042
|
exports.parseCreatorCoinCreated = parseCreatorCoinCreated;
|
|
12133
12043
|
exports.priceToEkuboParams = priceToEkuboParams;
|
|
12134
12044
|
exports.randomNonce = randomNonce;
|