@zoralabs/protocol-sdk 0.9.0 → 0.9.1

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,5 +1,5 @@
1
1
  import { IPremintGetter } from "src/premint/premint-api-client";
2
- import { ContractInfo, GetMintCostsParameters, GetMintParameters, GetMintsOfContractParameters, IOnchainMintGetter, MintableReturn } from "./types";
2
+ import { ContractInfo, Erc20Approval, GetMintCostsParameters, GetMintParameters, GetMintsOfContractParameters, IOnchainMintGetter, MintParametersBase, MintableReturn, OnchainSalesConfigAndTokenInfo, PrepareMint } from "./types";
3
3
  import { Address } from "viem";
4
4
  import { IPublicClient } from "src/types";
5
5
  import { AllowListEntry } from "src/allow-list/types";
@@ -37,4 +37,6 @@ export declare function getMintCosts({ params, allowListEntry, mintGetter, premi
37
37
  premintGetter: IPremintGetter;
38
38
  publicClient: IPublicClient;
39
39
  }): Promise<import("./types").MintCosts>;
40
+ export declare const makeOnchainPrepareMint: (result: OnchainSalesConfigAndTokenInfo) => PrepareMint;
41
+ export declare function getRequiredErc20Approvals(params: MintParametersBase, salesConfig: OnchainSalesConfigAndTokenInfo["salesConfig"]): Erc20Approval | undefined;
40
42
  //# 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,EAEZ,sBAAsB,EACtB,iBAAiB,EACjB,4BAA4B,EAC5B,kBAAkB,EAElB,cAAc,EAMf,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"}
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"}
@@ -186,6 +186,7 @@ export type PrepareMintReturn = {
186
186
  costs: MintCosts;
187
187
  };
188
188
  export type PrepareMint = (params: MintParametersBase) => PrepareMintReturn;
189
+ export type AsyncPrepareMint = (params: MintParametersBase) => Promise<PrepareMintReturn>;
189
190
  export type MintableReturn = {
190
191
  /** Token information */
191
192
  token: SalesConfigAndTokenInfo;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/mint/types.ts"],"names":[],"mappings":"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"}
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.9.0",
3
+ "version": "0.9.1",
4
4
  "repository": "https://github.com/ourzora/zora-protocol",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -9,13 +9,7 @@ import {
9
9
  zoraTimedSaleStrategyAddress,
10
10
  } from "@zoralabs/protocol-deployments";
11
11
  import { waitForSuccess } from "src/test-utils";
12
- import {
13
- Address,
14
- parseEther,
15
- PublicClient,
16
- TransactionReceipt,
17
- zeroAddress,
18
- } from "viem";
12
+ import { Address, parseEther, PublicClient, TransactionReceipt } from "viem";
19
13
  import { makePrepareMint1155TokenParams } from "src/mint/mint-transactions";
20
14
  import { forkUrls, makeAnvilTest } from "src/anvil";
21
15
  import { zora } from "viem/chains";
@@ -81,15 +75,18 @@ describe("create-helper", () => {
81
75
  chainId: chain.id,
82
76
  publicClient: publicClient,
83
77
  });
84
- const { parameters, contractAddress, newTokenId } =
85
- await creatorClient.create1155({
86
- contract: randomNewContract(),
87
- token: {
88
- tokenMetadataURI: demoTokenMetadataURI,
89
- mintToCreatorCount: 1,
90
- },
91
- account: creatorAddress,
92
- });
78
+ const {
79
+ parameters: parameters,
80
+ contractAddress,
81
+ newTokenId,
82
+ } = await creatorClient.create1155({
83
+ contract: randomNewContract(),
84
+ token: {
85
+ tokenMetadataURI: demoTokenMetadataURI,
86
+ mintToCreatorCount: 1,
87
+ },
88
+ account: creatorAddress,
89
+ });
93
90
 
94
91
  const { request } = await publicClient.simulateContract(parameters);
95
92
  const hash = await walletClient.writeContract(request);
@@ -127,17 +124,20 @@ describe("create-helper", () => {
127
124
  chainId: chain.id,
128
125
  publicClient: publicClient,
129
126
  });
130
- const { parameters, contractAddress, newTokenId } =
131
- await creatorClient.create1155({
132
- contract: randomNewContract(),
133
- token: {
134
- tokenMetadataURI: demoTokenMetadataURI,
135
- salesConfig: {
136
- pricePerToken: 0n,
137
- },
127
+ const {
128
+ parameters: parameters,
129
+ contractAddress,
130
+ newTokenId,
131
+ } = await creatorClient.create1155({
132
+ contract: randomNewContract(),
133
+ token: {
134
+ tokenMetadataURI: demoTokenMetadataURI,
135
+ salesConfig: {
136
+ pricePerToken: 0n,
138
137
  },
139
- account: creatorAddress,
140
- });
138
+ },
139
+ account: creatorAddress,
140
+ });
141
141
 
142
142
  const { request } = await publicClient.simulateContract(parameters);
143
143
  const hash = await walletClient.writeContract(request);
@@ -282,19 +282,14 @@ describe("create-helper", () => {
282
282
  chainId: chain.id,
283
283
  publicClient: publicClient,
284
284
  });
285
- const {
286
- parameters: request,
287
- newTokenId,
288
- minter,
289
- contractAddress: collectionAddress,
290
- contractVersion,
291
- } = await creatorClient.create1155({
292
- contract: randomNewContract(),
293
- token: {
294
- tokenMetadataURI: demoTokenMetadataURI,
295
- },
296
- account: creatorAddress,
297
- });
285
+ const { parameters: request, prepareMint } =
286
+ await creatorClient.create1155({
287
+ contract: randomNewContract(),
288
+ token: {
289
+ tokenMetadataURI: demoTokenMetadataURI,
290
+ },
291
+ account: creatorAddress,
292
+ });
298
293
  const { request: createSimulation } =
299
294
  await publicClient.simulateContract(request);
300
295
  await waitForSuccess(
@@ -312,25 +307,8 @@ describe("create-helper", () => {
312
307
  value: parseEther("10"),
313
308
  });
314
309
 
315
- const mintParams = makePrepareMint1155TokenParams({
316
- tokenContract: collectionAddress,
310
+ const { parameters: mintParams } = await prepareMint({
317
311
  minterAccount: minterAddress,
318
- tokenId: newTokenId,
319
- salesConfigAndTokenInfo: {
320
- contractVersion,
321
- salesConfig: {
322
- saleType: "timed",
323
- address: minter,
324
- // below fields arent used when determining mint price for minting
325
- saleEnd: "",
326
- saleStart: "",
327
- erc20Z: zeroAddress,
328
- pool: zeroAddress,
329
- secondaryActivated: false,
330
- mintFeePerQuantity: parseEther("0.000111"),
331
- mintFee: 0n,
332
- },
333
- },
334
312
  quantityToMint,
335
313
  });
336
314
 
@@ -454,7 +432,7 @@ describe("create-helper", () => {
454
432
  publicClient: publicClient,
455
433
  });
456
434
 
457
- const { parameters } = await creatorClient.create1155({
435
+ const { parameters: parameters } = await creatorClient.create1155({
458
436
  contract: {
459
437
  name: "test allowlists",
460
438
  uri: "ipfs://bafkreiainxen4b4wz4ubylvbhons6rembxdet4a262nf2lziclqvv7au3e",
@@ -26,6 +26,7 @@ import {
26
26
  NewContractParams,
27
27
  } from "./types";
28
28
  import { constructCreate1155TokenCalls } from "./token-setup";
29
+ import { makeOnchainPrepareMintFromCreate } from "./mint-from-create";
29
30
 
30
31
  // Default royalty bps
31
32
  const ROYALTY_BPS_DEFAULT = 1000;
@@ -218,6 +219,15 @@ async function createNew1155ContractAndToken({
218
219
  contract,
219
220
  });
220
221
 
222
+ const prepareMint = makeOnchainPrepareMintFromCreate({
223
+ contractAddress: contractAddress,
224
+ contractVersion,
225
+ minter,
226
+ publicClient,
227
+ result: newToken.salesConfig,
228
+ tokenId: nextTokenId,
229
+ });
230
+
221
231
  return {
222
232
  parameters: request,
223
233
  tokenSetupActions,
@@ -226,6 +236,7 @@ async function createNew1155ContractAndToken({
226
236
  contractAddress: contractAddress,
227
237
  contractVersion,
228
238
  minter,
239
+ prepareMint,
229
240
  };
230
241
  }
231
242
 
@@ -265,6 +276,15 @@ async function createNew1155Token({
265
276
  tokenSetupActions,
266
277
  });
267
278
 
279
+ const prepareMint = makeOnchainPrepareMintFromCreate({
280
+ contractAddress: contractAddress,
281
+ contractVersion,
282
+ minter,
283
+ publicClient,
284
+ result: newToken.salesConfig,
285
+ tokenId: nextTokenId,
286
+ });
287
+
268
288
  return {
269
289
  parameters: request,
270
290
  tokenSetupActions,
@@ -272,6 +292,7 @@ async function createNew1155Token({
272
292
  newToken,
273
293
  contractVersion,
274
294
  minter,
295
+ prepareMint,
275
296
  };
276
297
  }
277
298
 
@@ -0,0 +1,119 @@
1
+ import { Address, parseEther, PublicClient, zeroAddress } from "viem";
2
+ import { ConcreteSalesConfig } from "./types";
3
+ import {
4
+ AsyncPrepareMint,
5
+ MintParametersBase,
6
+ OnchainSalesStrategies,
7
+ PrepareMintReturn,
8
+ } from "src/mint/types";
9
+ import { zoraCreator1155ImplABI } from "@zoralabs/protocol-deployments";
10
+ import {
11
+ makePrepareMint1155TokenParams,
12
+ parseMintCosts,
13
+ } from "src/mint/mint-transactions";
14
+ import { getRequiredErc20Approvals } from "src/mint/mint-queries";
15
+
16
+ async function toSalesStrategyFromSubgraph({
17
+ minter,
18
+ salesConfig,
19
+ publicClient,
20
+ contractAddress,
21
+ }: {
22
+ minter: Address;
23
+ salesConfig: ConcreteSalesConfig;
24
+ publicClient: Pick<PublicClient, "readContract">;
25
+ contractAddress: Address;
26
+ }): Promise<OnchainSalesStrategies> {
27
+ if (salesConfig.type === "timed") {
28
+ return {
29
+ saleType: "timed",
30
+ address: minter,
31
+ // for now we hardcode this
32
+ mintFeePerQuantity: parseEther("0.000111"),
33
+ saleStart: salesConfig.saleStart.toString(),
34
+ saleEnd: salesConfig.saleEnd.toString(),
35
+ // the following are not needed for now but we wanna satisfy concrete
36
+ erc20Z: zeroAddress,
37
+ mintFee: 0n,
38
+ pool: zeroAddress,
39
+ secondaryActivated: false,
40
+ };
41
+ }
42
+ if (salesConfig.type === "erc20Mint") {
43
+ return {
44
+ saleType: "erc20",
45
+ address: minter,
46
+ mintFeePerQuantity: 0n,
47
+ saleStart: salesConfig.saleStart.toString(),
48
+ saleEnd: salesConfig.saleEnd.toString(),
49
+ currency: salesConfig.currency,
50
+ pricePerToken: salesConfig.pricePerToken,
51
+ maxTokensPerAddress: salesConfig.maxTokensPerAddress,
52
+ };
53
+ }
54
+ const contractMintFee = await publicClient.readContract({
55
+ abi: zoraCreator1155ImplABI,
56
+ address: contractAddress,
57
+ functionName: "mintFee",
58
+ });
59
+ if (salesConfig.type === "fixedPrice") {
60
+ return {
61
+ saleType: "fixedPrice",
62
+ address: minter,
63
+ maxTokensPerAddress: salesConfig.maxTokensPerAddress,
64
+ mintFeePerQuantity: contractMintFee,
65
+ pricePerToken: salesConfig.pricePerToken,
66
+ saleStart: salesConfig.saleStart.toString(),
67
+ saleEnd: salesConfig.saleEnd.toString(),
68
+ };
69
+ }
70
+ return {
71
+ saleType: "allowlist",
72
+ address: minter,
73
+ saleStart: salesConfig.saleStart.toString(),
74
+ saleEnd: salesConfig.saleEnd.toString(),
75
+ merkleRoot: salesConfig.presaleMerkleRoot,
76
+ mintFeePerQuantity: contractMintFee,
77
+ };
78
+ }
79
+ export function makeOnchainPrepareMintFromCreate({
80
+ contractAddress,
81
+ tokenId,
82
+ result,
83
+ minter,
84
+ publicClient,
85
+ contractVersion,
86
+ }: {
87
+ contractAddress: Address;
88
+ tokenId: bigint;
89
+ result: ConcreteSalesConfig;
90
+ minter: Address;
91
+ publicClient: Pick<PublicClient, "readContract">;
92
+ contractVersion: string;
93
+ }): AsyncPrepareMint {
94
+ return async (params: MintParametersBase): Promise<PrepareMintReturn> => {
95
+ const subgraphSalesConfig = await toSalesStrategyFromSubgraph({
96
+ minter,
97
+ contractAddress,
98
+ publicClient,
99
+ salesConfig: result,
100
+ });
101
+ return {
102
+ parameters: makePrepareMint1155TokenParams({
103
+ salesConfigAndTokenInfo: {
104
+ salesConfig: subgraphSalesConfig,
105
+ contractVersion,
106
+ },
107
+ ...params,
108
+ tokenContract: contractAddress,
109
+ tokenId,
110
+ }),
111
+ costs: parseMintCosts({
112
+ allowListEntry: params.allowListEntry,
113
+ quantityToMint: BigInt(params.quantityToMint),
114
+ salesConfig: subgraphSalesConfig,
115
+ }),
116
+ erc20Approval: getRequiredErc20Approvals(params, subgraphSalesConfig),
117
+ };
118
+ };
119
+ }
@@ -1,3 +1,4 @@
1
+ import { AsyncPrepareMint } from "src/mint/types";
1
2
  import { Concrete } from "src/utils";
2
3
  import { Account, Address, Hex, SimulateContractParameters } from "viem";
3
4
 
@@ -119,6 +120,7 @@ export type CreateNew1155TokenReturn = {
119
120
  newToken: New1155Token;
120
121
  minter: Address;
121
122
  contractVersion: string;
123
+ prepareMint: AsyncPrepareMint;
122
124
  };
123
125
 
124
126
  export type CreateNew1155ContractAndTokenReturn = {
@@ -261,7 +261,7 @@ function parsePremint({
261
261
  throw new Error("Invalid premint config version");
262
262
  }
263
263
 
264
- const makeOnchainPrepareMint =
264
+ export const makeOnchainPrepareMint =
265
265
  (result: OnchainSalesConfigAndTokenInfo): PrepareMint =>
266
266
  (params: MintParametersBase) => {
267
267
  if (!result.salesConfig) {
@@ -273,7 +273,7 @@ const makeOnchainPrepareMint =
273
273
  token: result as Concrete<OnchainSalesConfigAndTokenInfo>,
274
274
  mintParams: params,
275
275
  }),
276
- erc20Approval: getRequiredErc20Approvals(params, result),
276
+ erc20Approval: getRequiredErc20Approvals(params, result.salesConfig),
277
277
  costs: parseMintCosts({
278
278
  salesConfig: result.salesConfig,
279
279
  quantityToMint: BigInt(params.quantityToMint),
@@ -327,15 +327,15 @@ function toPremintMintReturn({
327
327
  prepareMint: makePremintPrepareMint(mintable, mintFee, premint),
328
328
  };
329
329
  }
330
- function getRequiredErc20Approvals(
330
+ export function getRequiredErc20Approvals(
331
331
  params: MintParametersBase,
332
- result: OnchainSalesConfigAndTokenInfo,
332
+ salesConfig: OnchainSalesConfigAndTokenInfo["salesConfig"],
333
333
  ): Erc20Approval | undefined {
334
- if (result.salesConfig?.saleType !== "erc20") return undefined;
334
+ if (salesConfig?.saleType !== "erc20") return undefined;
335
335
 
336
336
  return {
337
- quantity: result.salesConfig.pricePerToken * BigInt(params.quantityToMint),
338
- approveTo: result.salesConfig.address,
339
- erc20: result.salesConfig.currency,
337
+ quantity: salesConfig.pricePerToken * BigInt(params.quantityToMint),
338
+ approveTo: salesConfig.address,
339
+ erc20: salesConfig.currency,
340
340
  };
341
341
  }
package/src/mint/types.ts CHANGED
@@ -269,6 +269,9 @@ export type PrepareMintReturn = {
269
269
  };
270
270
 
271
271
  export type PrepareMint = (params: MintParametersBase) => PrepareMintReturn;
272
+ export type AsyncPrepareMint = (
273
+ params: MintParametersBase,
274
+ ) => Promise<PrepareMintReturn>;
272
275
 
273
276
  export type MintableReturn = {
274
277
  /** Token information */