@zoralabs/protocol-sdk 0.11.1 → 0.11.2

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.
@@ -1,6 +1,7 @@
1
1
  import { IPremintGetter } from "src/premint/premint-api-client";
2
2
  import { ContractInfo, Erc20Approval, GetMintCostsParameters, GetMintParameters, GetMintsOfContractParameters, IOnchainMintGetter, MintParametersBase, MintableReturn, OnchainSalesConfigAndTokenInfo, PrepareMint } from "./types";
3
3
  import { Address } from "viem";
4
+ import { PremintFromApi } from "src/premint/conversions";
4
5
  import { IPublicClient } from "src/types";
5
6
  import { AllowListEntry } from "src/allow-list/types";
6
7
  export declare function getMint({ params, mintGetter, premintGetter, publicClient, }: {
@@ -37,6 +38,7 @@ export declare function getMintCosts({ params, allowListEntry, mintGetter, premi
37
38
  premintGetter: IPremintGetter;
38
39
  publicClient: IPublicClient;
39
40
  }): Promise<import("./types").MintCosts>;
41
+ export declare function isPrimaryMintActive(premint: Pick<PremintFromApi, "premint">["premint"]): boolean;
40
42
  export declare const makeOnchainPrepareMint: (result: OnchainSalesConfigAndTokenInfo) => PrepareMint;
41
43
  export declare function getRequiredErc20Approvals(params: MintParametersBase, salesConfig: OnchainSalesConfigAndTokenInfo["salesConfig"]): Erc20Approval | undefined;
42
44
  //# sourceMappingURL=mint-queries.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mint-queries.d.ts","sourceRoot":"","sources":["../../src/mint/mint-queries.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EACL,YAAY,EACZ,aAAa,EACb,sBAAsB,EACtB,iBAAiB,EACjB,4BAA4B,EAC5B,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACd,8BAA8B,EAE9B,WAAW,EAGZ,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,OAAO,EAAe,MAAM,MAAM,CAAC;AAY5C,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAGtD,wBAAsB,OAAO,CAAC,EAC5B,MAAM,EACN,UAAU,EACV,aAAa,EACb,YAAY,GACb,EAAE;IACD,MAAM,EAAE,iBAAiB,CAAC;IAC1B,UAAU,EAAE,kBAAkB,CAAC;IAC/B,aAAa,EAAE,cAAc,CAAC;IAC9B,YAAY,EAAE,aAAa,CAAC;CAC7B,GAAG,OAAO,CAAC,cAAc,CAAC,CA0B1B;AACD,wBAAsB,mCAAmC,CAAC,EACxD,aAAa,EACb,UAAU,EACV,aAAa,GACd,EAAE;IACD,aAAa,EAAE,cAAc,CAAC;IAC9B,UAAU,EAAE,kBAAkB,CAAC;IAC/B,aAAa,EAAE,OAAO,CAAC;CACxB;;;;;;;GAoBA;AAED,wBAAsB,kBAAkB,CAAC,EACvC,MAAM,EACN,UAAU,EACV,aAAa,EACb,YAAY,GACb,EAAE;IACD,MAAM,EAAE,4BAA4B,CAAC;IACrC,UAAU,EAAE,kBAAkB,CAAC;IAC/B,aAAa,EAAE,cAAc,CAAC;IAC9B,YAAY,EAAE,aAAa,CAAC;CAC7B,GAAG,OAAO,CAAC;IAAE,QAAQ,CAAC,EAAE,YAAY,CAAC;IAAC,MAAM,EAAE,cAAc,EAAE,CAAA;CAAE,CAAC,CAsBjE;AAED,wBAAsB,YAAY,CAAC,EACjC,MAAM,EACN,cAAc,EACd,UAAU,EACV,aAAa,EACb,YAAY,GACb,EAAE;IACD,MAAM,EAAE,sBAAsB,CAAC;IAC/B,cAAc,CAAC,EAAE,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;IAC/C,UAAU,EAAE,kBAAkB,CAAC;IAC/B,aAAa,EAAE,cAAc,CAAC;IAC9B,YAAY,EAAE,aAAa,CAAC;CAC7B,wCA6BA;AAyFD,eAAO,MAAM,sBAAsB,WACxB,8BAA8B,KAAG,WAkBzC,CAAC;AA+CJ,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,kBAAkB,EAC1B,WAAW,EAAE,8BAA8B,CAAC,aAAa,CAAC,GACzD,aAAa,GAAG,SAAS,CAQ3B"}
1
+ {"version":3,"file":"mint-queries.d.ts","sourceRoot":"","sources":["../../src/mint/mint-queries.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EACL,YAAY,EACZ,aAAa,EACb,sBAAsB,EACtB,iBAAiB,EACjB,4BAA4B,EAC5B,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACd,8BAA8B,EAE9B,WAAW,EAIZ,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,OAAO,EAAe,MAAM,MAAM,CAAC;AAK5C,OAAO,EACL,cAAc,EAGf,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAGtD,wBAAsB,OAAO,CAAC,EAC5B,MAAM,EACN,UAAU,EACV,aAAa,EACb,YAAY,GACb,EAAE;IACD,MAAM,EAAE,iBAAiB,CAAC;IAC1B,UAAU,EAAE,kBAAkB,CAAC;IAC/B,aAAa,EAAE,cAAc,CAAC;IAC9B,YAAY,EAAE,aAAa,CAAC;CAC7B,GAAG,OAAO,CAAC,cAAc,CAAC,CA0B1B;AACD,wBAAsB,mCAAmC,CAAC,EACxD,aAAa,EACb,UAAU,EACV,aAAa,GACd,EAAE;IACD,aAAa,EAAE,cAAc,CAAC;IAC9B,UAAU,EAAE,kBAAkB,CAAC;IAC/B,aAAa,EAAE,OAAO,CAAC;CACxB;;;;;;;GAoBA;AAED,wBAAsB,kBAAkB,CAAC,EACvC,MAAM,EACN,UAAU,EACV,aAAa,EACb,YAAY,GACb,EAAE;IACD,MAAM,EAAE,4BAA4B,CAAC;IACrC,UAAU,EAAE,kBAAkB,CAAC;IAC/B,aAAa,EAAE,cAAc,CAAC;IAC9B,YAAY,EAAE,aAAa,CAAC;CAC7B,GAAG,OAAO,CAAC;IAAE,QAAQ,CAAC,EAAE,YAAY,CAAC;IAAC,MAAM,EAAE,cAAc,EAAE,CAAA;CAAE,CAAC,CAsBjE;AAED,wBAAsB,YAAY,CAAC,EACjC,MAAM,EACN,cAAc,EACd,UAAU,EACV,aAAa,EACb,YAAY,GACb,EAAE;IACD,MAAM,EAAE,sBAAsB,CAAC;IAC/B,cAAc,CAAC,EAAE,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;IAC/C,UAAU,EAAE,kBAAkB,CAAC;IAC/B,aAAa,EAAE,cAAc,CAAC;IAC9B,YAAY,EAAE,aAAa,CAAC;CAC7B,wCA6BA;AA+CD,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,IAAI,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC,SAAS,CAAC,WAKpD;AA2CD,eAAO,MAAM,sBAAsB,WACxB,8BAA8B,KAAG,WAkBzC,CAAC;AA4EJ,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,kBAAkB,EAC1B,WAAW,EAAE,8BAA8B,CAAC,aAAa,CAAC,GACzD,aAAa,GAAG,SAAS,CAQ3B"}
@@ -1,7 +1,7 @@
1
1
  import { Address } from "viem";
2
2
  import { ISubgraphQuerier } from "../apis/subgraph-querier";
3
3
  import { NetworkConfig } from "src/apis/chain-constants";
4
- import { IOnchainMintGetter, SaleType, OnchainSalesConfigAndTokenInfo } from "./types";
4
+ import { IOnchainMintGetter, SaleType, GetMintableReturn } from "./types";
5
5
  import { TokenQueryResult } from "./subgraph-queries";
6
6
  import { SubgraphGetter } from "src/apis/subgraph-getter";
7
7
  export declare const getApiNetworkConfigForChain: (chainId: number) => NetworkConfig;
@@ -13,7 +13,7 @@ export declare class SubgraphMintGetter extends SubgraphGetter implements IOncha
13
13
  tokenAddress: Address;
14
14
  preferredSaleType?: SaleType;
15
15
  blockTime: bigint;
16
- }): Promise<OnchainSalesConfigAndTokenInfo[]>;
16
+ }): Promise<GetMintableReturn[]>;
17
17
  getContractPremintTokenIds({ tokenAddress, }: {
18
18
  tokenAddress: Address;
19
19
  }): Promise<{
@@ -1 +1 @@
1
- {"version":3,"file":"subgraph-mint-getter.d.ts","sourceRoot":"","sources":["../../src/mint/subgraph-mint-getter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAwB,MAAM,0BAA0B,CAAC;AAE/E,OAAO,EACL,kBAAkB,EAClB,QAAQ,EAER,8BAA8B,EAE/B,MAAM,SAAS,CAAC;AACjB,OAAO,EAKL,gBAAgB,EACjB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,eAAO,MAAM,2BAA2B,YAAa,MAAM,KAAG,aAK7D,CAAC;AAsIF,qBAAa,kBACX,SAAQ,cACR,YAAW,kBAAkB;gBAEjB,OAAO,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,gBAAgB;IAIzD,kBAAkB,CAAC,QAAQ,EAAE,gBAAgB,CAAC,UAAU,CAAC;IAI/D,WAAW,EAAE,kBAAkB,CAAC,aAAa,CAAC,CA0B5C;IAEI,mBAAmB,CAAC,EACxB,YAAY,EACZ,iBAAiB,EACjB,SAAS,GACV,EAAE;QACD,YAAY,EAAE,OAAO,CAAC;QACtB,iBAAiB,CAAC,EAAE,QAAQ,CAAC;QAC7B,SAAS,EAAE,MAAM,CAAC;KACnB;IAwBK,0BAA0B,CAAC,EAC/B,YAAY,GACb,EAAE;QACD,YAAY,EAAE,OAAO,CAAC;KACvB;;;;CAcF"}
1
+ {"version":3,"file":"subgraph-mint-getter.d.ts","sourceRoot":"","sources":["../../src/mint/subgraph-mint-getter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAwB,MAAM,0BAA0B,CAAC;AAE/E,OAAO,EACL,kBAAkB,EAClB,QAAQ,EAGR,iBAAiB,EAClB,MAAM,SAAS,CAAC;AACjB,OAAO,EAQL,gBAAgB,EAEjB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,eAAO,MAAM,2BAA2B,YAAa,MAAM,KAAG,aAK7D,CAAC;AAuLF,qBAAa,kBACX,SAAQ,cACR,YAAW,kBAAkB;gBAEjB,OAAO,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,gBAAgB;IAIzD,kBAAkB,CAAC,QAAQ,EAAE,gBAAgB,CAAC,UAAU,CAAC;IAI/D,WAAW,EAAE,kBAAkB,CAAC,aAAa,CAAC,CA0B5C;IAEI,mBAAmB,CAAC,EACxB,YAAY,EACZ,iBAAiB,EACjB,SAAS,GACV,EAAE;QACD,YAAY,EAAE,OAAO,CAAC;QACtB,iBAAiB,CAAC,EAAE,QAAQ,CAAC;QAC7B,SAAS,EAAE,MAAM,CAAC;KACnB;IAwBK,0BAA0B,CAAC,EAC/B,YAAY,GACb,EAAE;QACD,YAAY,EAAE,OAAO,CAAC;KACvB;;;;CAcF"}
@@ -146,16 +146,22 @@ export type PremintSalesConfigAndTokenInfo = {
146
146
  salesConfig: PremintSaleStrategy;
147
147
  } & PremintMintable;
148
148
  export type SalesConfigAndTokenInfo = OnchainSalesConfigAndTokenInfo | PremintMintable;
149
+ export type GetMintableReturn = {
150
+ salesConfigAndTokenInfo: OnchainSalesConfigAndTokenInfo;
151
+ secondaryMarketActive: boolean;
152
+ primaryMintActive: boolean;
153
+ primaryMintEnd?: bigint;
154
+ };
149
155
  export interface IOnchainMintGetter {
150
156
  getMintable(params: {
151
157
  tokenAddress: Address;
152
158
  tokenId?: GenericTokenIdTypes;
153
159
  preferredSaleType?: SaleType;
154
160
  blockTime: bigint;
155
- }): Promise<OnchainSalesConfigAndTokenInfo>;
161
+ }): Promise<GetMintableReturn>;
156
162
  getContractMintable(params: {
157
163
  tokenAddress: Address;
158
- }): Promise<OnchainSalesConfigAndTokenInfo[]>;
164
+ }): Promise<GetMintableReturn[]>;
159
165
  getContractPremintTokenIds(params: {
160
166
  tokenAddress: Address;
161
167
  }): Promise<{
@@ -194,8 +200,16 @@ export type AsyncPrepareMint = (params: MintParametersBase) => Promise<PrepareMi
194
200
  export type MintableReturn = {
195
201
  /** Token information */
196
202
  token: SalesConfigAndTokenInfo;
197
- /** Function that takes a quantity of items to mint and returns a prepared transaction and the costs to mint that quantity */
203
+ /** If the primary mint is active, the end time of the primary mint, if there is an end time */
204
+ primaryMintEnd?: bigint;
205
+ secondaryMarketActive: boolean;
206
+ } & ({
207
+ primaryMintActive: true;
208
+ /** Function that takes a quantity of items to mint and returns a prepared transaction and the costs to mint that quantity. If the primary mint is not active, it will be undefined. */
198
209
  prepareMint: PrepareMint;
199
- };
210
+ } | {
211
+ primaryMintActive: false;
212
+ prepareMint?: undefined;
213
+ });
200
214
  export {};
201
215
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/mint/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACxC,OAAO,EACL,mBAAmB,EACnB,qCAAqC,EACtC,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,MAAM,MAAM,cAAc,CAAC,QAAQ,IAAI;IACrC,2CAA2C;IAC3C,QAAQ,EAAE,QAAQ,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG,cAAc,CAAC,MAAM,CAAC,GAAG;IAC3D,uBAAuB;IACvB,OAAO,EAAE,mBAAmB,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;AAEzD,MAAM,MAAM,qBAAqB,GAC7B,qBAAqB,GACrB,oBAAoB,CAAC;AAEzB,MAAM,MAAM,qBAAqB,GAAG,cAAc,CAAC,SAAS,CAAC,GAAG;IAC9D,iCAAiC;IACjC,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,KAAK,GAAG,WAAW,GAAG,SAAS,CAAC;AAEhE,MAAM,MAAM,SAAS,GACjB,qBAAqB,GACrB,oBAAoB,GACpB,qBAAqB,CAAC;AAE1B,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG;IAC1C,uDAAuD;IACvD,aAAa,EAAE,OAAO,CAAC;IACvB,iBAAiB,CAAC,EAAE,QAAQ,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG;IACzC,mDAAmD;IACnD,aAAa,EAAE,OAAO,CAAC;IACvB,iBAAiB,CAAC,EAAE,QAAQ,CAAC;CAC9B,CAAC;AAEF,eAAO,MAAM,aAAa,SAAU,SAAS,KAAG,IAAI,IAAI,qBAC3B,CAAC;AAE9B,eAAO,MAAM,UAAU,SAAU,SAAS,KAAG,IAAI,IAAI,qBAC3B,CAAC;AAE3B,MAAM,MAAM,kBAAkB,GAAG;IAC/B,kCAAkC;IAClC,aAAa,EAAE,OAAO,GAAG,OAAO,CAAC;IACjC,gDAAgD;IAChD,cAAc,EAAE,MAAM,GAAG,MAAM,CAAC;IAChC,iCAAiC;IACjC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kDAAkD;IAClD,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,4EAA4E;IAC5E,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,uEAAuE;IACvE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,uEAAuE;IACvE,cAAc,CAAC,EAAE,cAAc,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,+BAA+B,GAAG,kBAAkB,GAAG;IACjE,+BAA+B;IAC/B,aAAa,EAAE,OAAO,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG,+BAA+B,GACjE,qBAAqB,GAAG;IACtB,iBAAiB,CAAC,EAAE,QAAQ,CAAC;CAC9B,CAAC;AAEJ,MAAM,MAAM,oBAAoB,GAAG,+BAA+B,GAChE,oBAAoB,GAAG;IACrB,iBAAiB,CAAC,EAAE,QAAQ,CAAC;CAC9B,CAAC;AAEJ,MAAM,MAAM,kCAAkC,GAC5C,+BAA+B,GAC7B,qBAAqB,GAAG;IACtB,sFAAsF;IACtF,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC;AAEN,MAAM,MAAM,2BAA2B,GACnC,qBAAqB,GACrB,oBAAoB,GACpB,kCAAkC,CAAC;AAEvC,MAAM,MAAM,sBAAsB,GAAG;IACnC,qEAAqE;IACrE,UAAU,EAAE,OAAO,CAAC;IACpB,6CAA6C;IAC7C,cAAc,EAAE,MAAM,GAAG,MAAM,CAAC;CACjC,GAAG,SAAS,CAAC;AAEd,MAAM,MAAM,QAAQ,GAChB,YAAY,GACZ,OAAO,GACP,WAAW,GACX,SAAS,GACT,OAAO,CAAC;AAEZ,KAAK,YAAY,CAAC,CAAC,SAAS,QAAQ,IAAI;IACtC,QAAQ,EAAE,CAAC,CAAC;IACZ,kBAAkB,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEF,KAAK,kBAAkB,GAAG;IACxB,aAAa,EAAE,MAAM,CAAC;IACtB,mBAAmB,EAAE,MAAM,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,KAAK,sBAAsB,GAAG,YAAY,CAAC,YAAY,CAAC,GACtD,kBAAkB,GAClB,WAAW,GAAG;IACZ,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAEJ,KAAK,iBAAiB,GAAG,YAAY,CAAC,OAAO,CAAC,GAC5C,kBAAkB,GAClB,WAAW,GAAG;IACZ,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;CACnB,CAAC;AAEJ,KAAK,qBAAqB,GAAG,YAAY,CAAC,WAAW,CAAC,GAAG;IACvD,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,KAAK,qBAAqB,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG;IACnD,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,IAAI,EAAE,OAAO,CAAC;IACd,kBAAkB,EAAE,OAAO,CAAC;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,KAAK,mBAAmB,GAAG,YAAY,CAAC,SAAS,CAAC,GAChD,kBAAkB,GAAG;IACnB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEJ,MAAM,MAAM,sBAAsB,GAC9B,sBAAsB,GACtB,iBAAiB,GACjB,qBAAqB,GACrB,qBAAqB,CAAC;AAE1B,MAAM,MAAM,cAAc,GAAG,sBAAsB,GAAG,mBAAmB,CAAC;AAE1E,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,cAAc,GAC1B,WAAW,IAAI,iBAAiB,CAElC;AAED,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,cAAc,GAC1B,WAAW,IAAI,qBAAqB,CAEtC;AAED,MAAM,MAAM,YAAY,GAAG;IACzB,8BAA8B;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,4BAA4B;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,oBAAoB;IACpB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,2CAA2C;IAC3C,QAAQ,EAAE,YAAY,CAAC;IACvB,yBAAyB;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,mCAAmC;IACnC,OAAO,EAAE,OAAO,CAAC;IACjB,uDAAuD;IACvD,SAAS,EAAE,MAAM,CAAC;IAClB,0CAA0C;IAC1C,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG,YAAY,GAAG;IAC3C,QAAQ,EAAE,KAAK,GAAG,MAAM,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG,YAAY,GAAG;IAC3C,QAAQ,EAAE,SAAS,CAAC;IACpB,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,MAAM,MAAM,8BAA8B,GAAG;IAC3C,WAAW,CAAC,EAAE,sBAAsB,CAAC;CACtC,GAAG,eAAe,CAAC;AAEpB,MAAM,MAAM,8BAA8B,GAAG;IAC3C,WAAW,EAAE,mBAAmB,CAAC;CAClC,GAAG,eAAe,CAAC;AAEpB,MAAM,MAAM,uBAAuB,GAC/B,8BAA8B,GAC9B,eAAe,CAAC;AAEpB,MAAM,WAAW,kBAAkB;IACjC,WAAW,CAAC,MAAM,EAAE;QAClB,YAAY,EAAE,OAAO,CAAC;QACtB,OAAO,CAAC,EAAE,mBAAmB,CAAC;QAC9B,iBAAiB,CAAC,EAAE,QAAQ,CAAC;QAC7B,SAAS,EAAE,MAAM,CAAC;KACnB,GAAG,OAAO,CAAC,8BAA8B,CAAC,CAAC;IAE5C,mBAAmB,CAAC,MAAM,EAAE;QAC1B,YAAY,EAAE,OAAO,CAAC;KACvB,GAAG,OAAO,CAAC,8BAA8B,EAAE,CAAC,CAAC;IAE9C,0BAA0B,CAAC,MAAM,EAAE;QACjC,YAAY,EAAE,OAAO,CAAC;KACvB,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC,CAAC;CACjD;AAED,MAAM,MAAM,SAAS,GAAG;IACtB,wCAAwC;IACxC,OAAO,EAAE,MAAM,CAAC;IAChB,sHAAsH;IACtH,iBAAiB,EAAE,MAAM,CAAC;IAC1B,gDAAgD;IAChD,yBAAyB,CAAC,EAAE,OAAO,CAAC;IACpC,+DAA+D;IAC/D,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,gDAAgD;IAChD,KAAK,EAAE,OAAO,CAAC;IACf,8CAA8C;IAC9C,QAAQ,EAAE,MAAM,CAAC;IACjB,mDAAmD;IACnD,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,0DAA0D;IAC1D,UAAU,EAAE,qCAAqC,CAAC;IAClD,4EAA4E;IAC5E,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,oDAAoD;IACpD,KAAK,EAAE,SAAS,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,CAAC,MAAM,EAAE,kBAAkB,KAAK,iBAAiB,CAAC;AAC5E,MAAM,MAAM,gBAAgB,GAAG,CAC7B,MAAM,EAAE,kBAAkB,KACvB,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAEhC,MAAM,MAAM,cAAc,GAAG;IAC3B,wBAAwB;IACxB,KAAK,EAAE,uBAAuB,CAAC;IAC/B,6HAA6H;IAC7H,WAAW,EAAE,WAAW,CAAC;CAC1B,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/mint/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zoralabs/protocol-sdk",
3
- "version": "0.11.1",
3
+ "version": "0.11.2",
4
4
  "repository": "https://github.com/ourzora/zora-protocol",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -17,7 +17,7 @@
17
17
  },
18
18
  "dependencies": {
19
19
  "abitype": "^1.0.2",
20
- "@zoralabs/protocol-deployments": "^0.3.3"
20
+ "@zoralabs/protocol-deployments": "^0.3.4"
21
21
  },
22
22
  "peerDependencies": {
23
23
  "viem": "^2.13.2"
@@ -37,7 +37,7 @@
37
37
  "typescript": "^5.2.2",
38
38
  "vite": "^4.5.0",
39
39
  "vitest": "^2.0.5",
40
- "@zoralabs/tsconfig": "^0.0.0"
40
+ "@zoralabs/tsconfig": "^0.0.1"
41
41
  },
42
42
  "scripts": {
43
43
  "build": "pnpm tsup",
@@ -41,7 +41,7 @@ export const mockTimedSaleStrategyTokenQueryResult = ({
41
41
  ],
42
42
  mintFee: parseEther("0.000111").toString(),
43
43
  saleEnd: saleEnd.toString(),
44
- saleStart: SALE_END_FOREVER.toString(),
44
+ saleStart: "0",
45
45
  erc20Z: {
46
46
  // not needed
47
47
  id: zeroAddress,
package/src/index.ts CHANGED
@@ -11,6 +11,26 @@ export * from "./premint/conversions";
11
11
  export * from "./mint/subgraph-mint-getter";
12
12
 
13
13
  export * from "./mint/mint-client";
14
+ export {
15
+ type MintParameters,
16
+ type GetMintParameters,
17
+ type GetMintsOfContractParameters,
18
+ type MintTypes,
19
+ type SaleType,
20
+ type GetMintCostsParameters,
21
+ type MakeMintParametersArguments,
22
+ type SaleStrategies,
23
+ type ContractInfo,
24
+ type SalesConfigAndTokenInfo,
25
+ type GetMintableReturn,
26
+ type IOnchainMintGetter,
27
+ type MintCosts,
28
+ type Erc20Approval,
29
+ type PrepareMintReturn,
30
+ type MintableReturn,
31
+ type PrepareMint,
32
+ type MintParametersBase,
33
+ } from "./mint/types";
14
34
 
15
35
  export * from "./create/1155-create-helper";
16
36
 
@@ -40,7 +40,11 @@ describe("mint-helper", () => {
40
40
  publicClient,
41
41
  });
42
42
 
43
- const { token: mintable, prepareMint } = await collectorClient.getToken({
43
+ const {
44
+ token: mintable,
45
+ prepareMint,
46
+ primaryMintActive,
47
+ } = await collectorClient.getToken({
44
48
  tokenContract: targetContract,
45
49
  mintType: "1155",
46
50
  tokenId: targetTokenId,
@@ -51,7 +55,10 @@ describe("mint-helper", () => {
51
55
  mintable.tokenURI;
52
56
  mintable;
53
57
 
54
- const { parameters, costs } = prepareMint({
58
+ expect(primaryMintActive).toBe(true);
59
+ expect(prepareMint).toBeDefined();
60
+
61
+ const { parameters, costs } = prepareMint!({
55
62
  minterAccount: creatorAccount,
56
63
  quantityToMint: 1,
57
64
  });
@@ -103,14 +110,18 @@ describe("mint-helper", () => {
103
110
  publicClient,
104
111
  });
105
112
 
106
- const { prepareMint } = await collectorClient.getToken({
107
- tokenContract: targetContract,
108
- mintType: "721",
109
- });
113
+ const { prepareMint, primaryMintActive } = await collectorClient.getToken(
114
+ {
115
+ tokenContract: targetContract,
116
+ mintType: "721",
117
+ },
118
+ );
110
119
 
111
120
  const quantityToMint = 3n;
112
121
 
113
- const { parameters, costs } = prepareMint({
122
+ expect(primaryMintActive).toBe(true);
123
+
124
+ const { parameters, costs } = prepareMint!({
114
125
  minterAccount: creatorAccount,
115
126
  mintRecipient: creatorAccount,
116
127
  quantityToMint,
@@ -168,7 +179,7 @@ describe("mint-helper", () => {
168
179
  address: mockCollector,
169
180
  });
170
181
 
171
- const { prepareMint } = await minter.getToken({
182
+ const { prepareMint, primaryMintActive } = await minter.getToken({
172
183
  mintType: "1155",
173
184
  tokenContract: targetContract,
174
185
  tokenId: targetTokenId,
@@ -176,7 +187,10 @@ describe("mint-helper", () => {
176
187
 
177
188
  const quantityToMint = 1n;
178
189
 
179
- const { parameters, erc20Approval, costs } = prepareMint({
190
+ expect(primaryMintActive).toBe(true);
191
+ expect(prepareMint).toBeDefined();
192
+
193
+ const { parameters, erc20Approval, costs } = prepareMint!({
180
194
  minterAccount: mockCollector,
181
195
  quantityToMint,
182
196
  });
@@ -271,7 +285,7 @@ describe("mint-helper", () => {
271
285
  merkleRoot,
272
286
  });
273
287
 
274
- const { prepareMint } = await collectorClient.getToken({
288
+ const { prepareMint, primaryMintActive } = await collectorClient.getToken({
275
289
  mintType: "1155",
276
290
  tokenContract: targetContract,
277
291
  tokenId,
@@ -279,6 +293,8 @@ describe("mint-helper", () => {
279
293
 
280
294
  const minter = (await walletClient.getAddresses())[0]!;
281
295
 
296
+ expect(primaryMintActive).toBe(true);
297
+
282
298
  await testClient.setBalance({
283
299
  address: minter,
284
300
  value: parseEther("10"),
@@ -286,7 +302,7 @@ describe("mint-helper", () => {
286
302
 
287
303
  const quantityToMint = allowListEntryResult.allowListEntry!.maxCanMint;
288
304
 
289
- const { parameters } = prepareMint({
305
+ const { parameters } = prepareMint!({
290
306
  minterAccount: minter,
291
307
  quantityToMint,
292
308
  mintRecipient: allowListUser,
@@ -372,6 +388,8 @@ describe("mint-helper", () => {
372
388
  publicClient,
373
389
  });
374
390
 
391
+ const saleEnd =
392
+ BigInt(Math.round(new Date().getTime() / 1000)) + 1000000n;
375
393
  const zoraCreateToken = mockTimedSaleStrategyTokenQueryResult({
376
394
  chainId: chain.id,
377
395
  contractAddress,
@@ -380,6 +398,7 @@ describe("mint-helper", () => {
380
398
  chain.id as keyof typeof new1155ContractVersion
381
399
  ],
382
400
  tokenId: newTokenId,
401
+ saleEnd,
383
402
  });
384
403
 
385
404
  const mockQuery = vi.fn<ISubgraphQuerier["query"]>().mockResolvedValue({
@@ -397,15 +416,24 @@ describe("mint-helper", () => {
397
416
 
398
417
  const collector = (await walletClient.getAddresses())[1]!;
399
418
 
400
- const { prepareMint } = await collectorClient.getToken({
419
+ const {
420
+ prepareMint,
421
+ primaryMintActive,
422
+ primaryMintEnd,
423
+ secondaryMarketActive,
424
+ } = await collectorClient.getToken({
401
425
  mintType: "1155",
402
426
  tokenContract: contractAddress,
403
427
  tokenId: newTokenId,
404
428
  });
405
429
 
430
+ expect(primaryMintActive).toBe(true);
431
+ expect(secondaryMarketActive).toBe(false);
432
+ expect(primaryMintEnd).toBe(saleEnd);
433
+
406
434
  const quantityToMint = 10n;
407
435
 
408
- const { parameters: mintParameters, costs } = prepareMint({
436
+ const { parameters: mintParameters, costs } = prepareMint!({
409
437
  minterAccount: collector,
410
438
  quantityToMint,
411
439
  });
@@ -116,14 +116,18 @@ async function mint({
116
116
  mintGetter: IOnchainMintGetter;
117
117
  premintGetter: IPremintGetter;
118
118
  }): Promise<PrepareMintReturn> {
119
- const { prepareMint } = await getMint({
119
+ const { prepareMint, primaryMintActive } = await getMint({
120
120
  params: parameters,
121
121
  mintGetter,
122
122
  premintGetter,
123
123
  publicClient,
124
124
  });
125
125
 
126
- return prepareMint({
126
+ if (!primaryMintActive) {
127
+ throw new Error("Primary mint is not active");
128
+ }
129
+
130
+ return prepareMint!({
127
131
  minterAccount: parameters.minterAccount,
128
132
  quantityToMint: parameters.quantityToMint,
129
133
  firstMinter: parameters.firstMinter,
@@ -13,6 +13,7 @@ import {
13
13
  PrepareMint,
14
14
  is1155Mint,
15
15
  isOnChainMint,
16
+ GetMintableReturn,
16
17
  } from "./types";
17
18
  import { Address, zeroAddress } from "viem";
18
19
  import {
@@ -148,7 +149,7 @@ export async function getMintCosts({
148
149
  if (isOnChainMint(params)) {
149
150
  const tokenId = is1155Mint(params) ? params.tokenId : undefined;
150
151
  const blockTime = (await publicClient.getBlock()).timestamp;
151
- const salesConfigAndTokenInfo = await mintGetter.getMintable({
152
+ const { salesConfigAndTokenInfo } = await mintGetter.getMintable({
152
153
  tokenId,
153
154
  tokenAddress: collection,
154
155
  blockTime,
@@ -219,6 +220,13 @@ async function getPremintsOfContractMintable({
219
220
  });
220
221
  }
221
222
 
223
+ export function isPrimaryMintActive(
224
+ premint: Pick<PremintFromApi, "premint">["premint"],
225
+ ) {
226
+ const currentTime = new Date().getTime() / 1000;
227
+
228
+ return premint.premintConfig.tokenConfig.mintStart < currentTime;
229
+ }
222
230
  /** Parsing */
223
231
 
224
232
  function parsePremint({
@@ -282,33 +290,49 @@ export const makeOnchainPrepareMint =
282
290
  };
283
291
  };
284
292
 
285
- function toMintableReturn(
286
- result: OnchainSalesConfigAndTokenInfo,
287
- ): MintableReturn {
288
- return { token: result, prepareMint: makeOnchainPrepareMint(result) };
293
+ function toMintableReturn(result: GetMintableReturn): MintableReturn {
294
+ const primaryMintActive = result.primaryMintActive;
295
+ if (!primaryMintActive) {
296
+ return {
297
+ token: result.salesConfigAndTokenInfo,
298
+ primaryMintActive,
299
+ primaryMintEnd: result.primaryMintEnd,
300
+ secondaryMarketActive: result.secondaryMarketActive,
301
+ prepareMint: undefined,
302
+ };
303
+ }
304
+ return {
305
+ token: result.salesConfigAndTokenInfo,
306
+ primaryMintActive,
307
+ primaryMintEnd: result.primaryMintEnd,
308
+ secondaryMarketActive: result.secondaryMarketActive,
309
+ prepareMint: makeOnchainPrepareMint(result.salesConfigAndTokenInfo),
310
+ };
289
311
  }
290
312
 
291
- const makePremintPrepareMint =
292
- (
293
- mintable: PremintSalesConfigAndTokenInfo,
294
- mintFee: bigint,
295
- premint: Pick<
296
- PremintFromApi,
297
- "premint" | "signer" | "collectionAddress" | "collection" | "signature"
298
- >,
299
- ): PrepareMint =>
300
- (params: MintParametersBase) => ({
301
- parameters: buildPremintMintCall({
302
- mintArguments: params,
303
- mintFee,
304
- premint,
305
- }),
306
- costs: parseMintCosts({
307
- quantityToMint: BigInt(params.quantityToMint),
308
- salesConfig: mintable.salesConfig,
309
- allowListEntry: params.allowListEntry,
310
- }),
311
- });
313
+ const makePremintPrepareMint = (
314
+ mintable: PremintSalesConfigAndTokenInfo,
315
+ mintFee: bigint,
316
+ premint: Pick<
317
+ PremintFromApi,
318
+ "premint" | "signer" | "collectionAddress" | "collection" | "signature"
319
+ >,
320
+ ): PrepareMint => {
321
+ return (params: MintParametersBase) => {
322
+ return {
323
+ parameters: buildPremintMintCall({
324
+ mintArguments: params,
325
+ mintFee,
326
+ premint,
327
+ }),
328
+ costs: parseMintCosts({
329
+ quantityToMint: BigInt(params.quantityToMint),
330
+ salesConfig: mintable.salesConfig,
331
+ allowListEntry: params.allowListEntry,
332
+ }),
333
+ };
334
+ };
335
+ };
312
336
 
313
337
  function toPremintMintReturn({
314
338
  premint,
@@ -322,11 +346,24 @@ function toPremintMintReturn({
322
346
  }): MintableReturn {
323
347
  const mintable = parsePremint({ premint, mintFee });
324
348
 
349
+ const primaryMintActive = isPrimaryMintActive(premint.premint);
350
+
351
+ if (!primaryMintActive) {
352
+ return {
353
+ token: mintable,
354
+ primaryMintActive,
355
+ prepareMint: undefined,
356
+ secondaryMarketActive: false,
357
+ };
358
+ }
325
359
  return {
326
360
  token: mintable,
361
+ primaryMintActive,
362
+ secondaryMarketActive: false,
327
363
  prepareMint: makePremintPrepareMint(mintable, mintFee, premint),
328
364
  };
329
365
  }
366
+
330
367
  export function getRequiredErc20Approvals(
331
368
  params: MintParametersBase,
332
369
  salesConfig: OnchainSalesConfigAndTokenInfo["salesConfig"],