@medialane/sdk 0.86.0 → 0.88.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 +49 -11
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +36 -3
- package/dist/index.d.ts +36 -3
- package/dist/index.js +46 -12
- package/dist/index.js.map +1 -1
- package/dist/{services-BMVi2U8T.d.ts → services-CELm1bdL.d.ts} +1 -1
- package/dist/{services-yppVbYf6.d.cts → services-vwXIiRBm.d.cts} +1 -1
- package/dist/starknet/index.d.cts +1 -1
- package/dist/starknet/index.d.ts +1 -1
- package/package.json +1 -1
package/dist/index.d.cts
CHANGED
|
@@ -1,9 +1,17 @@
|
|
|
1
|
-
import { S as ServiceDefinition, a as ServiceCapability } from './services-
|
|
2
|
-
export { A as AcceptSponsorshipBidIntentParams, b as AcceptSponsorshipProposalIntentParams, c as ActivityType, d as ApiActivitiesQuery, e as ApiActivity, f as ApiActivityPrice, g as ApiAdminCollectionClaim, h as ApiAppSource, i as ApiBusinessProvisioning, j as ApiChain, k as ApiCheckoutIntentResult, l as ApiClient, m as ApiCoin, n as ApiCoinsQuery, o as ApiCollection, p as ApiCollectionClaim, q as ApiCollectionProfile, r as ApiCollectionSlugClaim, s as ApiCollectionsQuery, t as ApiComment, u as ApiCounterOffersQuery, v as ApiCreatorListResult, w as ApiCreatorProfile, x as ApiIntent, y as ApiIntentCreated, z as ApiKeyStatus, B as ApiMeta, C as ApiMetadataSignedUrl, D as ApiMetadataUpload, E as ApiOrder, F as ApiOrderConsideration, G as ApiOrderOffer, H as ApiOrderPrice, I as ApiOrderTokenMeta, J as ApiOrderTxHash, K as ApiOrdersQuery, L as ApiPointEvent, M as ApiPortalKey, N as ApiPortalKeyCreated, O as ApiPortalMe, P as ApiPublicRemix, Q as ApiRemixOffer,
|
|
1
|
+
import { R as ResolvedFeeConfig, S as ServiceDefinition, a as ServiceCapability } from './services-vwXIiRBm.cjs';
|
|
2
|
+
export { A as AcceptSponsorshipBidIntentParams, b as AcceptSponsorshipProposalIntentParams, c as ActivityType, d as ApiActivitiesQuery, e as ApiActivity, f as ApiActivityPrice, g as ApiAdminCollectionClaim, h as ApiAppSource, i as ApiBusinessProvisioning, j as ApiChain, k as ApiCheckoutIntentResult, l as ApiClient, m as ApiCoin, n as ApiCoinsQuery, o as ApiCollection, p as ApiCollectionClaim, q as ApiCollectionProfile, r as ApiCollectionSlugClaim, s as ApiCollectionsQuery, t as ApiComment, u as ApiCounterOffersQuery, v as ApiCreatorListResult, w as ApiCreatorProfile, x as ApiIntent, y as ApiIntentCreated, z as ApiKeyStatus, B as ApiMeta, C as ApiMetadataSignedUrl, D as ApiMetadataUpload, E as ApiOrder, F as ApiOrderConsideration, G as ApiOrderOffer, H as ApiOrderPrice, I as ApiOrderTokenMeta, J as ApiOrderTxHash, K as ApiOrdersQuery, L as ApiPointEvent, M as ApiPortalKey, N as ApiPortalKeyCreated, O as ApiPortalMe, P as ApiPublicRemix, Q as ApiRemixOffer, T as ApiRemixOfferPrice, U as ApiRemixOffersQuery, V as ApiResponse, W as ApiRewardsBadge, X as ApiRewardsBatchEntry, Y as ApiRewardsConfig, Z as ApiRewardsLeaderboardEntry, _ as ApiRewardsLevel, $ as ApiSearchCollectionResult, a0 as ApiSearchCreatorResult, a1 as ApiSearchResult, a2 as ApiSearchTokenResult, a3 as ApiToken, a4 as ApiTokenBalance, a5 as ApiTokenMetadata, a6 as ApiUsageDay, a7 as ApiUserRewards, a8 as ApiUserWallet, a9 as ApiWalletActivity, aa as ApiWebhookCreated, ab as ApiWebhookEndpoint, ac as AutoRemixOfferParams, ad as CancelOrderIntentParams, ae as ChainFilter, af as ClaimConditions, ag as CollectionServiceId, ah as CollectionSort, ai as CollectionTokensSort, aj as ConfirmRemixOfferParams, ak as ConfirmSelfRemixParams, al as ConsiderationItem, am as CreateCheckoutIntentParams, an as CreateCoinIntentParams, ao as CreateCollectionIntentParams, ap as CreateCounterOfferIntentParams, aq as CreateDropParams, ar as CreateListingIntentParams, as as CreateMembershipParams, at as CreateMintIntentParams, au as CreatePopCollectionParams, av as CreateRemixOfferParams, aw as CreateSponsorshipOfferIntentParams, ax as CreateSponsorshipOfferParams, ay as CreateSponsorshipProposalIntentParams, az as CreateTicketParams, aA as CreateTierIntentParams, aB as CreateWebhookParams, aC as DropMintStatus, aD as EnforcementDeclaration, aE as FactoryFamilyServiceId, aF as FeeConfig, aG as FeeConfigSchema, aH as FulfillOrderIntentParams, aI as IPType, aJ as IntentCall, aK as IntentStatus, aL as IntentType, aM as IpAttribute, aN as IpNftMetadata, aO as LaunchCoinIntentParams, aP as MakeOfferIntentParams, aQ as MedialaneApiError, aR as MedialaneConfig, aS as MedialaneErrorCode, aT as MintMembershipsParams, aU as MintTicketsParams, aV as OPEN_LICENSES, aW as OfferItem, aX as OpenLicense, aY as Order, aZ as OrderDetails, a_ as OrderParameters, a$ as OrderStatus, b0 as PlaceSponsorshipBidIntentParams, b1 as PopBatchEligibilityItem, b2 as PopClaimStatus, b3 as PopEventType, b4 as ProposeSponsorshipParams, b5 as RejectSponsorshipProposalIntentParams, b6 as RemixOfferStatus, b7 as ResolvedConfig, b8 as RetractSponsorshipBidIntentParams, b9 as RetryOptions, ba as ServiceEventDeclaration, bb as SetSponsorshipOfferOpenIntentParams, bc as SortOrder, bd as TenantPlan, be as TierServiceId, bf as TxResult, bg as WebhookEventType, bh as WebhookStatus, bi as WithdrawSponsorshipProposalIntentParams, bj as resolveConfig, bk as resolveFeeConfig } from './services-vwXIiRBm.cjs';
|
|
3
3
|
import { C as Chain } from './types-nPIXtCF5.cjs';
|
|
4
4
|
export { A as AdapterTxResult, a as AssetRef, b as CHAINS, c as ChainCoordinates, d as CoordinatesByChain, e as CreateCollectionInput, D as DEFAULT_CHAIN, E as EvmCoordinates, I as IssuanceAdapter, M as MintInput, O as OrderRef, R as RegisterOrderParams, S as SolanaCoordinates, f as StarknetCoordinates, g as StellarCoordinates, V as VenueAdapter, h as getCoordinates, i as getStarknetCoordinates } from './types-nPIXtCF5.cjs';
|
|
5
5
|
import 'zod';
|
|
6
6
|
|
|
7
|
+
interface FeeEnv {
|
|
8
|
+
NEXT_PUBLIC_FEE_ENABLED?: string;
|
|
9
|
+
NEXT_PUBLIC_FEE_FUND_ADDRESS?: string;
|
|
10
|
+
NEXT_PUBLIC_FEE_MARKETPLACE_BPS?: string;
|
|
11
|
+
NEXT_PUBLIC_FEE_LAUNCHPAD_BPS?: string;
|
|
12
|
+
}
|
|
13
|
+
declare function resolveAppFeeConfig(env?: FeeEnv): ResolvedFeeConfig;
|
|
14
|
+
|
|
7
15
|
declare const STARKNET_MARKETPLACE_721_CONTRACT: `0x${string}`;
|
|
8
16
|
declare const STARKNET_MARKETPLACE_721_CLASS_HASH: `0x${string}`;
|
|
9
17
|
declare const STARKNET_MARKETPLACE_721_START_BLOCK: number;
|
|
@@ -409,6 +417,15 @@ interface RpcProxyConfig {
|
|
|
409
417
|
}
|
|
410
418
|
declare function createRpcProxyHandler(config: RpcProxyConfig): (req: Request) => Promise<Response>;
|
|
411
419
|
|
|
420
|
+
interface BackendProxyConfig {
|
|
421
|
+
path: string;
|
|
422
|
+
backendUrl: string;
|
|
423
|
+
apiKey: string | undefined;
|
|
424
|
+
checkRateLimit: (ip: string) => boolean;
|
|
425
|
+
fetchImpl?: typeof fetch;
|
|
426
|
+
}
|
|
427
|
+
declare function createBackendProxyHandler(config: BackendProxyConfig): (req: Request) => Promise<Response>;
|
|
428
|
+
|
|
412
429
|
declare function createRateLimiter(windowMs: number, max: number): (key: string) => boolean;
|
|
413
430
|
declare function requestIp(req: Request): string;
|
|
414
431
|
|
|
@@ -449,9 +466,25 @@ interface BuildAssetMetadataInput {
|
|
|
449
466
|
declare const RESERVED_TRAITS: Set<string>;
|
|
450
467
|
declare function buildAssetMetadata(input: BuildAssetMetadataInput): AssetMetadata;
|
|
451
468
|
|
|
469
|
+
type Attribute = {
|
|
470
|
+
trait_type?: string;
|
|
471
|
+
value?: string;
|
|
472
|
+
};
|
|
473
|
+
declare function getDerivativesTerm(attributes: Attribute[] | null | undefined): "Allowed" | "Not Allowed" | null;
|
|
474
|
+
interface RemixPolicyInput {
|
|
475
|
+
parentNoDerivatives: boolean;
|
|
476
|
+
viewerIsParentOwner: boolean;
|
|
477
|
+
dealAvailable: boolean;
|
|
478
|
+
}
|
|
479
|
+
interface RemixPolicy extends RemixPolicyInput {
|
|
480
|
+
canRemixDirect: boolean;
|
|
481
|
+
showDealOption: boolean;
|
|
482
|
+
}
|
|
483
|
+
declare function resolveRemixPolicy(input: RemixPolicyInput): RemixPolicy;
|
|
484
|
+
|
|
452
485
|
declare function isValidIpfsCidPath(cidPath: string): boolean;
|
|
453
486
|
declare const IPFS_SAFE_CONTENT_TYPE_PREFIXES: readonly ["image/jpeg", "image/png", "image/gif", "image/webp", "image/avif", "image/svg+xml", "video/", "audio/", "model/", "font/", "application/json", "application/octet-stream"];
|
|
454
487
|
declare function resolveSafeImageContentType(contentType: string): string;
|
|
455
488
|
declare const MAX_IPFS_GATEWAY_RESPONSE_BYTES: number;
|
|
456
489
|
|
|
457
|
-
export { type AssetAttribute, type AssetMetadata, type BuildAssetMetadataInput, Chain, DEFAULT_CURRENCY, type FailoverFetchOptions, IPFS_SAFE_CONTENT_TYPE_PREFIXES, MAX_IPFS_GATEWAY_RESPONSE_BYTES, PUBLIC_RPC_FALLBACKS, RESERVED_TRAITS, type RpcProxyConfig, STARKNET_COLLECTION_1155_CLASS_HASH, STARKNET_COLLECTION_1155_CONTRACT, STARKNET_COLLECTION_1155_FACTORY_CLASS_HASH, STARKNET_COLLECTION_1155_START_BLOCK, STARKNET_COLLECTION_721_CONTRACT, STARKNET_COLLECTION_721_START_BLOCK, STARKNET_CREATOR_COIN_CLASS_HASH, STARKNET_CREATOR_COIN_EKUBO_LAUNCHER, STARKNET_CREATOR_COIN_FACTORY_CLASS_HASH, STARKNET_CREATOR_COIN_FACTORY_CONTRACT, STARKNET_CREATOR_COIN_START_BLOCK, STARKNET_DROP_COLLECTION_CLASS_HASH, STARKNET_DROP_FACTORY_CONTRACT, STARKNET_EKUBO_CORE, STARKNET_IPCOLLECTION_CLASS_HASH, STARKNET_IPNFT_CLASS_HASH, STARKNET_IP_CLUB_COLLECTION_CLASS_HASH, STARKNET_IP_CLUB_FACTORY_CONTRACT, STARKNET_IP_SPONSORSHIP_CLASS_HASH, STARKNET_IP_SPONSORSHIP_CONTRACT, STARKNET_IP_TICKETS_FACTORY_CONTRACT, STARKNET_IP_TICKET_COLLECTION_CLASS_HASH, STARKNET_MARKETPLACE_1155_CLASS_HASH, STARKNET_MARKETPLACE_1155_CONTRACT, STARKNET_MARKETPLACE_1155_START_BLOCK, STARKNET_MARKETPLACE_721_CLASS_HASH, STARKNET_MARKETPLACE_721_CONTRACT, STARKNET_MARKETPLACE_721_START_BLOCK, STARKNET_NFTCOMMENTS_CONTRACT, STARKNET_POP_COLLECTION_CLASS_HASH, STARKNET_POP_FACTORY_CONTRACT, SUPPORTED_TOKENS, SUPPORTED_URL_CHAINS, ServiceCapability, ServiceDefinition, type ServiceId, type SupportedToken, type SupportedTokenSymbol, assetHref, buildAssetMetadata, chainFromSlug, chainSlug, coinHref, collectionHref, createFailoverFetch, createRateLimiter, createRpcProxyHandler, encodeU256, formatAmount, getListableTokens, getService, getServicesByCapability, getTokenByAddress, getTokenBySymbol, hasCapability, isSameOrigin, isServiceId, isTransientRpcError, isValidIpfsCidPath, listServices, normalizeAddress, normalizeHash, parseAmount, requestIp, resolveSafeImageContentType, shortenAddress, stringifyBigInts, u256ToBigInt };
|
|
490
|
+
export { type AssetAttribute, type AssetMetadata, type BackendProxyConfig, type BuildAssetMetadataInput, Chain, DEFAULT_CURRENCY, type FailoverFetchOptions, type FeeEnv, IPFS_SAFE_CONTENT_TYPE_PREFIXES, MAX_IPFS_GATEWAY_RESPONSE_BYTES, PUBLIC_RPC_FALLBACKS, RESERVED_TRAITS, type RemixPolicy, type RemixPolicyInput, ResolvedFeeConfig, type RpcProxyConfig, STARKNET_COLLECTION_1155_CLASS_HASH, STARKNET_COLLECTION_1155_CONTRACT, STARKNET_COLLECTION_1155_FACTORY_CLASS_HASH, STARKNET_COLLECTION_1155_START_BLOCK, STARKNET_COLLECTION_721_CONTRACT, STARKNET_COLLECTION_721_START_BLOCK, STARKNET_CREATOR_COIN_CLASS_HASH, STARKNET_CREATOR_COIN_EKUBO_LAUNCHER, STARKNET_CREATOR_COIN_FACTORY_CLASS_HASH, STARKNET_CREATOR_COIN_FACTORY_CONTRACT, STARKNET_CREATOR_COIN_START_BLOCK, STARKNET_DROP_COLLECTION_CLASS_HASH, STARKNET_DROP_FACTORY_CONTRACT, STARKNET_EKUBO_CORE, STARKNET_IPCOLLECTION_CLASS_HASH, STARKNET_IPNFT_CLASS_HASH, STARKNET_IP_CLUB_COLLECTION_CLASS_HASH, STARKNET_IP_CLUB_FACTORY_CONTRACT, STARKNET_IP_SPONSORSHIP_CLASS_HASH, STARKNET_IP_SPONSORSHIP_CONTRACT, STARKNET_IP_TICKETS_FACTORY_CONTRACT, STARKNET_IP_TICKET_COLLECTION_CLASS_HASH, STARKNET_MARKETPLACE_1155_CLASS_HASH, STARKNET_MARKETPLACE_1155_CONTRACT, STARKNET_MARKETPLACE_1155_START_BLOCK, STARKNET_MARKETPLACE_721_CLASS_HASH, STARKNET_MARKETPLACE_721_CONTRACT, STARKNET_MARKETPLACE_721_START_BLOCK, STARKNET_NFTCOMMENTS_CONTRACT, STARKNET_POP_COLLECTION_CLASS_HASH, STARKNET_POP_FACTORY_CONTRACT, SUPPORTED_TOKENS, SUPPORTED_URL_CHAINS, ServiceCapability, ServiceDefinition, type ServiceId, type SupportedToken, type SupportedTokenSymbol, assetHref, buildAssetMetadata, chainFromSlug, chainSlug, coinHref, collectionHref, createBackendProxyHandler, createFailoverFetch, createRateLimiter, createRpcProxyHandler, encodeU256, formatAmount, getDerivativesTerm, getListableTokens, getService, getServicesByCapability, getTokenByAddress, getTokenBySymbol, hasCapability, isSameOrigin, isServiceId, isTransientRpcError, isValidIpfsCidPath, listServices, normalizeAddress, normalizeHash, parseAmount, requestIp, resolveAppFeeConfig, resolveRemixPolicy, resolveSafeImageContentType, shortenAddress, stringifyBigInts, u256ToBigInt };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,9 +1,17 @@
|
|
|
1
|
-
import { S as ServiceDefinition, a as ServiceCapability } from './services-
|
|
2
|
-
export { A as AcceptSponsorshipBidIntentParams, b as AcceptSponsorshipProposalIntentParams, c as ActivityType, d as ApiActivitiesQuery, e as ApiActivity, f as ApiActivityPrice, g as ApiAdminCollectionClaim, h as ApiAppSource, i as ApiBusinessProvisioning, j as ApiChain, k as ApiCheckoutIntentResult, l as ApiClient, m as ApiCoin, n as ApiCoinsQuery, o as ApiCollection, p as ApiCollectionClaim, q as ApiCollectionProfile, r as ApiCollectionSlugClaim, s as ApiCollectionsQuery, t as ApiComment, u as ApiCounterOffersQuery, v as ApiCreatorListResult, w as ApiCreatorProfile, x as ApiIntent, y as ApiIntentCreated, z as ApiKeyStatus, B as ApiMeta, C as ApiMetadataSignedUrl, D as ApiMetadataUpload, E as ApiOrder, F as ApiOrderConsideration, G as ApiOrderOffer, H as ApiOrderPrice, I as ApiOrderTokenMeta, J as ApiOrderTxHash, K as ApiOrdersQuery, L as ApiPointEvent, M as ApiPortalKey, N as ApiPortalKeyCreated, O as ApiPortalMe, P as ApiPublicRemix, Q as ApiRemixOffer,
|
|
1
|
+
import { R as ResolvedFeeConfig, S as ServiceDefinition, a as ServiceCapability } from './services-CELm1bdL.js';
|
|
2
|
+
export { A as AcceptSponsorshipBidIntentParams, b as AcceptSponsorshipProposalIntentParams, c as ActivityType, d as ApiActivitiesQuery, e as ApiActivity, f as ApiActivityPrice, g as ApiAdminCollectionClaim, h as ApiAppSource, i as ApiBusinessProvisioning, j as ApiChain, k as ApiCheckoutIntentResult, l as ApiClient, m as ApiCoin, n as ApiCoinsQuery, o as ApiCollection, p as ApiCollectionClaim, q as ApiCollectionProfile, r as ApiCollectionSlugClaim, s as ApiCollectionsQuery, t as ApiComment, u as ApiCounterOffersQuery, v as ApiCreatorListResult, w as ApiCreatorProfile, x as ApiIntent, y as ApiIntentCreated, z as ApiKeyStatus, B as ApiMeta, C as ApiMetadataSignedUrl, D as ApiMetadataUpload, E as ApiOrder, F as ApiOrderConsideration, G as ApiOrderOffer, H as ApiOrderPrice, I as ApiOrderTokenMeta, J as ApiOrderTxHash, K as ApiOrdersQuery, L as ApiPointEvent, M as ApiPortalKey, N as ApiPortalKeyCreated, O as ApiPortalMe, P as ApiPublicRemix, Q as ApiRemixOffer, T as ApiRemixOfferPrice, U as ApiRemixOffersQuery, V as ApiResponse, W as ApiRewardsBadge, X as ApiRewardsBatchEntry, Y as ApiRewardsConfig, Z as ApiRewardsLeaderboardEntry, _ as ApiRewardsLevel, $ as ApiSearchCollectionResult, a0 as ApiSearchCreatorResult, a1 as ApiSearchResult, a2 as ApiSearchTokenResult, a3 as ApiToken, a4 as ApiTokenBalance, a5 as ApiTokenMetadata, a6 as ApiUsageDay, a7 as ApiUserRewards, a8 as ApiUserWallet, a9 as ApiWalletActivity, aa as ApiWebhookCreated, ab as ApiWebhookEndpoint, ac as AutoRemixOfferParams, ad as CancelOrderIntentParams, ae as ChainFilter, af as ClaimConditions, ag as CollectionServiceId, ah as CollectionSort, ai as CollectionTokensSort, aj as ConfirmRemixOfferParams, ak as ConfirmSelfRemixParams, al as ConsiderationItem, am as CreateCheckoutIntentParams, an as CreateCoinIntentParams, ao as CreateCollectionIntentParams, ap as CreateCounterOfferIntentParams, aq as CreateDropParams, ar as CreateListingIntentParams, as as CreateMembershipParams, at as CreateMintIntentParams, au as CreatePopCollectionParams, av as CreateRemixOfferParams, aw as CreateSponsorshipOfferIntentParams, ax as CreateSponsorshipOfferParams, ay as CreateSponsorshipProposalIntentParams, az as CreateTicketParams, aA as CreateTierIntentParams, aB as CreateWebhookParams, aC as DropMintStatus, aD as EnforcementDeclaration, aE as FactoryFamilyServiceId, aF as FeeConfig, aG as FeeConfigSchema, aH as FulfillOrderIntentParams, aI as IPType, aJ as IntentCall, aK as IntentStatus, aL as IntentType, aM as IpAttribute, aN as IpNftMetadata, aO as LaunchCoinIntentParams, aP as MakeOfferIntentParams, aQ as MedialaneApiError, aR as MedialaneConfig, aS as MedialaneErrorCode, aT as MintMembershipsParams, aU as MintTicketsParams, aV as OPEN_LICENSES, aW as OfferItem, aX as OpenLicense, aY as Order, aZ as OrderDetails, a_ as OrderParameters, a$ as OrderStatus, b0 as PlaceSponsorshipBidIntentParams, b1 as PopBatchEligibilityItem, b2 as PopClaimStatus, b3 as PopEventType, b4 as ProposeSponsorshipParams, b5 as RejectSponsorshipProposalIntentParams, b6 as RemixOfferStatus, b7 as ResolvedConfig, b8 as RetractSponsorshipBidIntentParams, b9 as RetryOptions, ba as ServiceEventDeclaration, bb as SetSponsorshipOfferOpenIntentParams, bc as SortOrder, bd as TenantPlan, be as TierServiceId, bf as TxResult, bg as WebhookEventType, bh as WebhookStatus, bi as WithdrawSponsorshipProposalIntentParams, bj as resolveConfig, bk as resolveFeeConfig } from './services-CELm1bdL.js';
|
|
3
3
|
import { C as Chain } from './types-nPIXtCF5.js';
|
|
4
4
|
export { A as AdapterTxResult, a as AssetRef, b as CHAINS, c as ChainCoordinates, d as CoordinatesByChain, e as CreateCollectionInput, D as DEFAULT_CHAIN, E as EvmCoordinates, I as IssuanceAdapter, M as MintInput, O as OrderRef, R as RegisterOrderParams, S as SolanaCoordinates, f as StarknetCoordinates, g as StellarCoordinates, V as VenueAdapter, h as getCoordinates, i as getStarknetCoordinates } from './types-nPIXtCF5.js';
|
|
5
5
|
import 'zod';
|
|
6
6
|
|
|
7
|
+
interface FeeEnv {
|
|
8
|
+
NEXT_PUBLIC_FEE_ENABLED?: string;
|
|
9
|
+
NEXT_PUBLIC_FEE_FUND_ADDRESS?: string;
|
|
10
|
+
NEXT_PUBLIC_FEE_MARKETPLACE_BPS?: string;
|
|
11
|
+
NEXT_PUBLIC_FEE_LAUNCHPAD_BPS?: string;
|
|
12
|
+
}
|
|
13
|
+
declare function resolveAppFeeConfig(env?: FeeEnv): ResolvedFeeConfig;
|
|
14
|
+
|
|
7
15
|
declare const STARKNET_MARKETPLACE_721_CONTRACT: `0x${string}`;
|
|
8
16
|
declare const STARKNET_MARKETPLACE_721_CLASS_HASH: `0x${string}`;
|
|
9
17
|
declare const STARKNET_MARKETPLACE_721_START_BLOCK: number;
|
|
@@ -409,6 +417,15 @@ interface RpcProxyConfig {
|
|
|
409
417
|
}
|
|
410
418
|
declare function createRpcProxyHandler(config: RpcProxyConfig): (req: Request) => Promise<Response>;
|
|
411
419
|
|
|
420
|
+
interface BackendProxyConfig {
|
|
421
|
+
path: string;
|
|
422
|
+
backendUrl: string;
|
|
423
|
+
apiKey: string | undefined;
|
|
424
|
+
checkRateLimit: (ip: string) => boolean;
|
|
425
|
+
fetchImpl?: typeof fetch;
|
|
426
|
+
}
|
|
427
|
+
declare function createBackendProxyHandler(config: BackendProxyConfig): (req: Request) => Promise<Response>;
|
|
428
|
+
|
|
412
429
|
declare function createRateLimiter(windowMs: number, max: number): (key: string) => boolean;
|
|
413
430
|
declare function requestIp(req: Request): string;
|
|
414
431
|
|
|
@@ -449,9 +466,25 @@ interface BuildAssetMetadataInput {
|
|
|
449
466
|
declare const RESERVED_TRAITS: Set<string>;
|
|
450
467
|
declare function buildAssetMetadata(input: BuildAssetMetadataInput): AssetMetadata;
|
|
451
468
|
|
|
469
|
+
type Attribute = {
|
|
470
|
+
trait_type?: string;
|
|
471
|
+
value?: string;
|
|
472
|
+
};
|
|
473
|
+
declare function getDerivativesTerm(attributes: Attribute[] | null | undefined): "Allowed" | "Not Allowed" | null;
|
|
474
|
+
interface RemixPolicyInput {
|
|
475
|
+
parentNoDerivatives: boolean;
|
|
476
|
+
viewerIsParentOwner: boolean;
|
|
477
|
+
dealAvailable: boolean;
|
|
478
|
+
}
|
|
479
|
+
interface RemixPolicy extends RemixPolicyInput {
|
|
480
|
+
canRemixDirect: boolean;
|
|
481
|
+
showDealOption: boolean;
|
|
482
|
+
}
|
|
483
|
+
declare function resolveRemixPolicy(input: RemixPolicyInput): RemixPolicy;
|
|
484
|
+
|
|
452
485
|
declare function isValidIpfsCidPath(cidPath: string): boolean;
|
|
453
486
|
declare const IPFS_SAFE_CONTENT_TYPE_PREFIXES: readonly ["image/jpeg", "image/png", "image/gif", "image/webp", "image/avif", "image/svg+xml", "video/", "audio/", "model/", "font/", "application/json", "application/octet-stream"];
|
|
454
487
|
declare function resolveSafeImageContentType(contentType: string): string;
|
|
455
488
|
declare const MAX_IPFS_GATEWAY_RESPONSE_BYTES: number;
|
|
456
489
|
|
|
457
|
-
export { type AssetAttribute, type AssetMetadata, type BuildAssetMetadataInput, Chain, DEFAULT_CURRENCY, type FailoverFetchOptions, IPFS_SAFE_CONTENT_TYPE_PREFIXES, MAX_IPFS_GATEWAY_RESPONSE_BYTES, PUBLIC_RPC_FALLBACKS, RESERVED_TRAITS, type RpcProxyConfig, STARKNET_COLLECTION_1155_CLASS_HASH, STARKNET_COLLECTION_1155_CONTRACT, STARKNET_COLLECTION_1155_FACTORY_CLASS_HASH, STARKNET_COLLECTION_1155_START_BLOCK, STARKNET_COLLECTION_721_CONTRACT, STARKNET_COLLECTION_721_START_BLOCK, STARKNET_CREATOR_COIN_CLASS_HASH, STARKNET_CREATOR_COIN_EKUBO_LAUNCHER, STARKNET_CREATOR_COIN_FACTORY_CLASS_HASH, STARKNET_CREATOR_COIN_FACTORY_CONTRACT, STARKNET_CREATOR_COIN_START_BLOCK, STARKNET_DROP_COLLECTION_CLASS_HASH, STARKNET_DROP_FACTORY_CONTRACT, STARKNET_EKUBO_CORE, STARKNET_IPCOLLECTION_CLASS_HASH, STARKNET_IPNFT_CLASS_HASH, STARKNET_IP_CLUB_COLLECTION_CLASS_HASH, STARKNET_IP_CLUB_FACTORY_CONTRACT, STARKNET_IP_SPONSORSHIP_CLASS_HASH, STARKNET_IP_SPONSORSHIP_CONTRACT, STARKNET_IP_TICKETS_FACTORY_CONTRACT, STARKNET_IP_TICKET_COLLECTION_CLASS_HASH, STARKNET_MARKETPLACE_1155_CLASS_HASH, STARKNET_MARKETPLACE_1155_CONTRACT, STARKNET_MARKETPLACE_1155_START_BLOCK, STARKNET_MARKETPLACE_721_CLASS_HASH, STARKNET_MARKETPLACE_721_CONTRACT, STARKNET_MARKETPLACE_721_START_BLOCK, STARKNET_NFTCOMMENTS_CONTRACT, STARKNET_POP_COLLECTION_CLASS_HASH, STARKNET_POP_FACTORY_CONTRACT, SUPPORTED_TOKENS, SUPPORTED_URL_CHAINS, ServiceCapability, ServiceDefinition, type ServiceId, type SupportedToken, type SupportedTokenSymbol, assetHref, buildAssetMetadata, chainFromSlug, chainSlug, coinHref, collectionHref, createFailoverFetch, createRateLimiter, createRpcProxyHandler, encodeU256, formatAmount, getListableTokens, getService, getServicesByCapability, getTokenByAddress, getTokenBySymbol, hasCapability, isSameOrigin, isServiceId, isTransientRpcError, isValidIpfsCidPath, listServices, normalizeAddress, normalizeHash, parseAmount, requestIp, resolveSafeImageContentType, shortenAddress, stringifyBigInts, u256ToBigInt };
|
|
490
|
+
export { type AssetAttribute, type AssetMetadata, type BackendProxyConfig, type BuildAssetMetadataInput, Chain, DEFAULT_CURRENCY, type FailoverFetchOptions, type FeeEnv, IPFS_SAFE_CONTENT_TYPE_PREFIXES, MAX_IPFS_GATEWAY_RESPONSE_BYTES, PUBLIC_RPC_FALLBACKS, RESERVED_TRAITS, type RemixPolicy, type RemixPolicyInput, ResolvedFeeConfig, type RpcProxyConfig, STARKNET_COLLECTION_1155_CLASS_HASH, STARKNET_COLLECTION_1155_CONTRACT, STARKNET_COLLECTION_1155_FACTORY_CLASS_HASH, STARKNET_COLLECTION_1155_START_BLOCK, STARKNET_COLLECTION_721_CONTRACT, STARKNET_COLLECTION_721_START_BLOCK, STARKNET_CREATOR_COIN_CLASS_HASH, STARKNET_CREATOR_COIN_EKUBO_LAUNCHER, STARKNET_CREATOR_COIN_FACTORY_CLASS_HASH, STARKNET_CREATOR_COIN_FACTORY_CONTRACT, STARKNET_CREATOR_COIN_START_BLOCK, STARKNET_DROP_COLLECTION_CLASS_HASH, STARKNET_DROP_FACTORY_CONTRACT, STARKNET_EKUBO_CORE, STARKNET_IPCOLLECTION_CLASS_HASH, STARKNET_IPNFT_CLASS_HASH, STARKNET_IP_CLUB_COLLECTION_CLASS_HASH, STARKNET_IP_CLUB_FACTORY_CONTRACT, STARKNET_IP_SPONSORSHIP_CLASS_HASH, STARKNET_IP_SPONSORSHIP_CONTRACT, STARKNET_IP_TICKETS_FACTORY_CONTRACT, STARKNET_IP_TICKET_COLLECTION_CLASS_HASH, STARKNET_MARKETPLACE_1155_CLASS_HASH, STARKNET_MARKETPLACE_1155_CONTRACT, STARKNET_MARKETPLACE_1155_START_BLOCK, STARKNET_MARKETPLACE_721_CLASS_HASH, STARKNET_MARKETPLACE_721_CONTRACT, STARKNET_MARKETPLACE_721_START_BLOCK, STARKNET_NFTCOMMENTS_CONTRACT, STARKNET_POP_COLLECTION_CLASS_HASH, STARKNET_POP_FACTORY_CONTRACT, SUPPORTED_TOKENS, SUPPORTED_URL_CHAINS, ServiceCapability, ServiceDefinition, type ServiceId, type SupportedToken, type SupportedTokenSymbol, assetHref, buildAssetMetadata, chainFromSlug, chainSlug, coinHref, collectionHref, createBackendProxyHandler, createFailoverFetch, createRateLimiter, createRpcProxyHandler, encodeU256, formatAmount, getDerivativesTerm, getListableTokens, getService, getServicesByCapability, getTokenByAddress, getTokenBySymbol, hasCapability, isSameOrigin, isServiceId, isTransientRpcError, isValidIpfsCidPath, listServices, normalizeAddress, normalizeHash, parseAmount, requestIp, resolveAppFeeConfig, resolveRemixPolicy, resolveSafeImageContentType, shortenAddress, stringifyBigInts, u256ToBigInt };
|
package/dist/index.js
CHANGED
|
@@ -78,6 +78,22 @@ function resolveFeeConfig(raw) {
|
|
|
78
78
|
};
|
|
79
79
|
}
|
|
80
80
|
|
|
81
|
+
// src/fee/app-config.ts
|
|
82
|
+
var DEFAULT_BPS = 100;
|
|
83
|
+
function bps(raw) {
|
|
84
|
+
if (!raw) return DEFAULT_BPS;
|
|
85
|
+
const n = Number(raw);
|
|
86
|
+
return Number.isFinite(n) ? n : DEFAULT_BPS;
|
|
87
|
+
}
|
|
88
|
+
function resolveAppFeeConfig(env = {}) {
|
|
89
|
+
return resolveFeeConfig({
|
|
90
|
+
enabled: env.NEXT_PUBLIC_FEE_ENABLED !== "false",
|
|
91
|
+
fundAddress: env.NEXT_PUBLIC_FEE_FUND_ADDRESS || void 0,
|
|
92
|
+
marketplaceBps: bps(env.NEXT_PUBLIC_FEE_MARKETPLACE_BPS),
|
|
93
|
+
launchpadBps: bps(env.NEXT_PUBLIC_FEE_LAUNCHPAD_BPS)
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
|
|
81
97
|
// src/config.ts
|
|
82
98
|
var MedialaneConfigSchema = z.object({
|
|
83
99
|
chain: z.enum(CHAINS).default(DEFAULT_CHAIN),
|
|
@@ -1318,28 +1334,28 @@ function isSameOrigin(req) {
|
|
|
1318
1334
|
}
|
|
1319
1335
|
}
|
|
1320
1336
|
|
|
1321
|
-
// src/server/
|
|
1322
|
-
function
|
|
1323
|
-
return Response.json({ jsonrpc: "2.0", error: { code, message }, id }, { status });
|
|
1337
|
+
// src/server/backend-proxy.ts
|
|
1338
|
+
function proxyError(code, message, status) {
|
|
1339
|
+
return Response.json({ jsonrpc: "2.0", error: { code, message }, id: null }, { status });
|
|
1324
1340
|
}
|
|
1325
|
-
function
|
|
1341
|
+
function createBackendProxyHandler(config) {
|
|
1326
1342
|
const doFetch = config.fetchImpl ?? fetch;
|
|
1327
|
-
const endpoint = `${config.backendUrl.replace(/\/$/, "")}
|
|
1328
|
-
return async function
|
|
1343
|
+
const endpoint = `${config.backendUrl.replace(/\/$/, "")}/${config.path.replace(/^\//, "")}`;
|
|
1344
|
+
return async function handleBackendProxy(req) {
|
|
1329
1345
|
if (!isSameOrigin(req)) {
|
|
1330
|
-
return
|
|
1346
|
+
return proxyError(-32600, "Cross-origin requests are not allowed", 403);
|
|
1331
1347
|
}
|
|
1332
1348
|
if (!config.checkRateLimit(requestIp(req))) {
|
|
1333
|
-
return
|
|
1349
|
+
return proxyError(-32005, "Too many requests", 429);
|
|
1334
1350
|
}
|
|
1335
1351
|
if (!config.apiKey) {
|
|
1336
|
-
return
|
|
1352
|
+
return proxyError(-32003, "No API key configured \u2014 request not forwarded", 402);
|
|
1337
1353
|
}
|
|
1338
1354
|
let body;
|
|
1339
1355
|
try {
|
|
1340
1356
|
body = await req.json();
|
|
1341
1357
|
} catch {
|
|
1342
|
-
return
|
|
1358
|
+
return proxyError(-32700, "Parse error", 400);
|
|
1343
1359
|
}
|
|
1344
1360
|
try {
|
|
1345
1361
|
const upstream = await doFetch(endpoint, {
|
|
@@ -1353,11 +1369,16 @@ function createRpcProxyHandler(config) {
|
|
|
1353
1369
|
headers: { "Content-Type": "application/json" }
|
|
1354
1370
|
});
|
|
1355
1371
|
} catch {
|
|
1356
|
-
return
|
|
1372
|
+
return proxyError(-32603, "Backend unreachable", 502);
|
|
1357
1373
|
}
|
|
1358
1374
|
};
|
|
1359
1375
|
}
|
|
1360
1376
|
|
|
1377
|
+
// src/server/rpc-proxy.ts
|
|
1378
|
+
function createRpcProxyHandler(config) {
|
|
1379
|
+
return createBackendProxyHandler({ ...config, path: "/v1/rpc" });
|
|
1380
|
+
}
|
|
1381
|
+
|
|
1361
1382
|
// src/metadata.ts
|
|
1362
1383
|
var RESERVED_TRAITS = /* @__PURE__ */ new Set([
|
|
1363
1384
|
"Creator",
|
|
@@ -1412,6 +1433,19 @@ function buildAssetMetadata(input) {
|
|
|
1412
1433
|
};
|
|
1413
1434
|
}
|
|
1414
1435
|
|
|
1436
|
+
// src/remix-policy.ts
|
|
1437
|
+
function getDerivativesTerm(attributes) {
|
|
1438
|
+
const v = (Array.isArray(attributes) ? attributes : []).find(
|
|
1439
|
+
(a) => a.trait_type === "Derivatives"
|
|
1440
|
+
)?.value;
|
|
1441
|
+
return v === "Allowed" || v === "Not Allowed" ? v : null;
|
|
1442
|
+
}
|
|
1443
|
+
function resolveRemixPolicy(input) {
|
|
1444
|
+
const canRemixDirect = input.viewerIsParentOwner || !input.parentNoDerivatives;
|
|
1445
|
+
const showDealOption = input.dealAvailable && !input.viewerIsParentOwner;
|
|
1446
|
+
return { ...input, canRemixDirect, showDealOption };
|
|
1447
|
+
}
|
|
1448
|
+
|
|
1415
1449
|
// src/utils/ipfs-gateway.ts
|
|
1416
1450
|
var CID_PATH_PATTERN = /^(Qm[1-9A-HJ-NP-Za-km-z]{44,}|b[a-z2-7]{58,})(\/[\w.\-/]*)?$/;
|
|
1417
1451
|
function isValidIpfsCidPath(cidPath) {
|
|
@@ -1438,6 +1472,6 @@ function resolveSafeImageContentType(contentType) {
|
|
|
1438
1472
|
}
|
|
1439
1473
|
var MAX_IPFS_GATEWAY_RESPONSE_BYTES = 25 * 1024 * 1024;
|
|
1440
1474
|
|
|
1441
|
-
export { ApiClient, CHAINS, DEFAULT_CHAIN, DEFAULT_CURRENCY, FeeConfigSchema, IPFS_SAFE_CONTENT_TYPE_PREFIXES, MAX_IPFS_GATEWAY_RESPONSE_BYTES, MedialaneApiError, OPEN_LICENSES, PUBLIC_RPC_FALLBACKS, RESERVED_TRAITS, STARKNET_COLLECTION_1155_CLASS_HASH, STARKNET_COLLECTION_1155_CONTRACT, STARKNET_COLLECTION_1155_FACTORY_CLASS_HASH, STARKNET_COLLECTION_1155_START_BLOCK, STARKNET_COLLECTION_721_CONTRACT, STARKNET_COLLECTION_721_START_BLOCK, STARKNET_CREATOR_COIN_CLASS_HASH, STARKNET_CREATOR_COIN_EKUBO_LAUNCHER, STARKNET_CREATOR_COIN_FACTORY_CLASS_HASH, STARKNET_CREATOR_COIN_FACTORY_CONTRACT, STARKNET_CREATOR_COIN_START_BLOCK, STARKNET_DROP_COLLECTION_CLASS_HASH, STARKNET_DROP_FACTORY_CONTRACT, STARKNET_EKUBO_CORE, STARKNET_IPCOLLECTION_CLASS_HASH, STARKNET_IPNFT_CLASS_HASH, STARKNET_IP_CLUB_COLLECTION_CLASS_HASH, STARKNET_IP_CLUB_FACTORY_CONTRACT, STARKNET_IP_SPONSORSHIP_CLASS_HASH, STARKNET_IP_SPONSORSHIP_CONTRACT, STARKNET_IP_TICKETS_FACTORY_CONTRACT, STARKNET_IP_TICKET_COLLECTION_CLASS_HASH, STARKNET_MARKETPLACE_1155_CLASS_HASH, STARKNET_MARKETPLACE_1155_CONTRACT, STARKNET_MARKETPLACE_1155_START_BLOCK, STARKNET_MARKETPLACE_721_CLASS_HASH, STARKNET_MARKETPLACE_721_CONTRACT, STARKNET_MARKETPLACE_721_START_BLOCK, STARKNET_NFTCOMMENTS_CONTRACT, STARKNET_POP_COLLECTION_CLASS_HASH, STARKNET_POP_FACTORY_CONTRACT, SUPPORTED_TOKENS, SUPPORTED_URL_CHAINS, assetHref, buildAssetMetadata, chainFromSlug, chainSlug, coinHref, collectionHref, createFailoverFetch, createRateLimiter, createRpcProxyHandler, encodeU256, formatAmount, getCoordinates, getListableTokens, getService, getServicesByCapability, getStarknetCoordinates, getTokenByAddress, getTokenBySymbol, hasCapability, isSameOrigin, isServiceId, isTransientRpcError, isValidIpfsCidPath, listServices, normalizeAddress, normalizeHash, parseAmount, requestIp, resolveConfig, resolveFeeConfig, resolveSafeImageContentType, shortenAddress, stringifyBigInts, u256ToBigInt };
|
|
1475
|
+
export { ApiClient, CHAINS, DEFAULT_CHAIN, DEFAULT_CURRENCY, FeeConfigSchema, IPFS_SAFE_CONTENT_TYPE_PREFIXES, MAX_IPFS_GATEWAY_RESPONSE_BYTES, MedialaneApiError, OPEN_LICENSES, PUBLIC_RPC_FALLBACKS, RESERVED_TRAITS, STARKNET_COLLECTION_1155_CLASS_HASH, STARKNET_COLLECTION_1155_CONTRACT, STARKNET_COLLECTION_1155_FACTORY_CLASS_HASH, STARKNET_COLLECTION_1155_START_BLOCK, STARKNET_COLLECTION_721_CONTRACT, STARKNET_COLLECTION_721_START_BLOCK, STARKNET_CREATOR_COIN_CLASS_HASH, STARKNET_CREATOR_COIN_EKUBO_LAUNCHER, STARKNET_CREATOR_COIN_FACTORY_CLASS_HASH, STARKNET_CREATOR_COIN_FACTORY_CONTRACT, STARKNET_CREATOR_COIN_START_BLOCK, STARKNET_DROP_COLLECTION_CLASS_HASH, STARKNET_DROP_FACTORY_CONTRACT, STARKNET_EKUBO_CORE, STARKNET_IPCOLLECTION_CLASS_HASH, STARKNET_IPNFT_CLASS_HASH, STARKNET_IP_CLUB_COLLECTION_CLASS_HASH, STARKNET_IP_CLUB_FACTORY_CONTRACT, STARKNET_IP_SPONSORSHIP_CLASS_HASH, STARKNET_IP_SPONSORSHIP_CONTRACT, STARKNET_IP_TICKETS_FACTORY_CONTRACT, STARKNET_IP_TICKET_COLLECTION_CLASS_HASH, STARKNET_MARKETPLACE_1155_CLASS_HASH, STARKNET_MARKETPLACE_1155_CONTRACT, STARKNET_MARKETPLACE_1155_START_BLOCK, STARKNET_MARKETPLACE_721_CLASS_HASH, STARKNET_MARKETPLACE_721_CONTRACT, STARKNET_MARKETPLACE_721_START_BLOCK, STARKNET_NFTCOMMENTS_CONTRACT, STARKNET_POP_COLLECTION_CLASS_HASH, STARKNET_POP_FACTORY_CONTRACT, SUPPORTED_TOKENS, SUPPORTED_URL_CHAINS, assetHref, buildAssetMetadata, chainFromSlug, chainSlug, coinHref, collectionHref, createBackendProxyHandler, createFailoverFetch, createRateLimiter, createRpcProxyHandler, encodeU256, formatAmount, getCoordinates, getDerivativesTerm, getListableTokens, getService, getServicesByCapability, getStarknetCoordinates, getTokenByAddress, getTokenBySymbol, hasCapability, isSameOrigin, isServiceId, isTransientRpcError, isValidIpfsCidPath, listServices, normalizeAddress, normalizeHash, parseAmount, requestIp, resolveAppFeeConfig, resolveConfig, resolveFeeConfig, resolveRemixPolicy, resolveSafeImageContentType, shortenAddress, stringifyBigInts, u256ToBigInt };
|
|
1442
1476
|
//# sourceMappingURL=index.js.map
|
|
1443
1477
|
//# sourceMappingURL=index.js.map
|