@zoralabs/protocol-sdk 0.11.11 → 0.12.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/.turbo/turbo-build.log +7 -7
- package/CHANGELOG.md +17 -0
- package/dist/apis/network-config.d.ts +3 -0
- package/dist/apis/network-config.d.ts.map +1 -0
- package/dist/create/contract-setup.d.ts +3 -4
- package/dist/create/contract-setup.d.ts.map +1 -1
- package/dist/create/create-client.d.ts +53 -0
- package/dist/create/create-client.d.ts.map +1 -0
- package/dist/create/types.d.ts +11 -3
- package/dist/create/types.d.ts.map +1 -1
- package/dist/fixtures/contract-setup.d.ts +2 -2
- package/dist/fixtures/contract-setup.d.ts.map +1 -1
- package/dist/fixtures/rewards-query-results.d.ts +0 -1
- package/dist/fixtures/rewards-query-results.d.ts.map +1 -1
- package/dist/fixtures/secondary.d.ts +3 -6
- package/dist/fixtures/secondary.d.ts.map +1 -1
- package/dist/index.cjs +1509 -1396
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +12 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1559 -1465
- package/dist/index.js.map +1 -1
- package/dist/mint/mint-client.d.ts +21 -9
- package/dist/mint/mint-client.d.ts.map +1 -1
- package/dist/mint/mint-queries.d.ts +24 -22
- package/dist/mint/mint-queries.d.ts.map +1 -1
- package/dist/mint/strategies-parsing.d.ts +28 -0
- package/dist/mint/strategies-parsing.d.ts.map +1 -0
- package/dist/mint/subgraph-mint-getter.d.ts +2 -6
- package/dist/mint/subgraph-mint-getter.d.ts.map +1 -1
- package/dist/mint/types.d.ts +25 -8
- package/dist/mint/types.d.ts.map +1 -1
- package/dist/premint/premint-api-client.d.ts.map +1 -1
- package/dist/premint/premint-client.d.ts.map +1 -1
- package/dist/rewards/rewards-client.d.ts +7 -3
- package/dist/rewards/rewards-client.d.ts.map +1 -1
- package/dist/rewards/rewards-queries.d.ts +14 -11
- package/dist/rewards/rewards-queries.d.ts.map +1 -1
- package/dist/rewards/subgraph-queries.d.ts +0 -1
- package/dist/rewards/subgraph-queries.d.ts.map +1 -1
- package/dist/rewards/subgraph-rewards-getter.d.ts +2 -8
- package/dist/rewards/subgraph-rewards-getter.d.ts.map +1 -1
- package/dist/sdk.d.ts +9 -3
- package/dist/sdk.d.ts.map +1 -1
- package/dist/secondary/secondary-client.d.ts +7 -8
- package/dist/secondary/secondary-client.d.ts.map +1 -1
- package/dist/secondary/uniswap/uniswapQuote.d.ts +0 -1
- package/dist/secondary/uniswap/uniswapQuote.d.ts.map +1 -1
- package/dist/secondary/utils.d.ts +1 -2
- package/dist/secondary/utils.d.ts.map +1 -1
- package/dist/types.d.ts +6 -3
- package/dist/types.d.ts.map +1 -1
- package/dist/utils.d.ts +2 -2
- package/dist/utils.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/apis/network-config.ts +8 -0
- package/src/apis/subgraph-getter.ts +1 -1
- package/src/comments/comments.test.ts +11 -22
- package/src/create/contract-setup.ts +3 -4
- package/src/create/{1155-create-helper.test.ts → create-client.test.ts} +52 -88
- package/src/create/{1155-create-helper.ts → create-client.ts} +129 -63
- package/src/create/types.ts +13 -3
- package/src/fixtures/contract-setup.ts +3 -3
- package/src/fixtures/rewards-query-results.ts +2 -9
- package/src/fixtures/secondary.ts +16 -10
- package/src/index.ts +34 -4
- package/src/mint/mint-client.test.ts +37 -64
- package/src/mint/mint-client.ts +36 -32
- package/src/mint/mint-queries.ts +73 -54
- package/src/mint/strategies-parsing.ts +311 -0
- package/src/mint/subgraph-mint-getter.ts +4 -304
- package/src/mint/types.ts +36 -7
- package/src/premint/premint-api-client.ts +1 -1
- package/src/premint/premint-client.ts +1 -1
- package/src/rewards/rewards-client.test.ts +318 -21
- package/src/rewards/rewards-client.ts +15 -16
- package/src/rewards/rewards-queries.ts +116 -36
- package/src/rewards/subgraph-queries.ts +0 -2
- package/src/rewards/subgraph-rewards-getter.ts +3 -13
- package/src/sdk.ts +9 -7
- package/src/secondary/secondary-client.test.ts +39 -40
- package/src/secondary/secondary-client.ts +14 -33
- package/src/secondary/uniswap/uniswapQuote.ts +3 -2
- package/src/secondary/utils.ts +2 -2
- package/src/types.ts +15 -4
- package/src/utils.ts +9 -3
- package/dist/create/1155-create-helper.d.ts +0 -29
- package/dist/create/1155-create-helper.d.ts.map +0 -1
|
@@ -6,8 +6,10 @@ import {
|
|
|
6
6
|
import type {
|
|
7
7
|
Account,
|
|
8
8
|
Address,
|
|
9
|
+
Chain,
|
|
9
10
|
Hex,
|
|
10
11
|
PublicClient,
|
|
12
|
+
Transport,
|
|
11
13
|
TransactionReceipt,
|
|
12
14
|
} from "viem";
|
|
13
15
|
import { decodeEventLog } from "viem";
|
|
@@ -23,11 +25,12 @@ import {
|
|
|
23
25
|
CreateNew1155ParamsBase,
|
|
24
26
|
CreateNew1155TokenParams,
|
|
25
27
|
CreateNew1155TokenReturn,
|
|
28
|
+
PrepareCreateReturn,
|
|
26
29
|
NewContractParams,
|
|
27
30
|
} from "./types";
|
|
28
31
|
import { constructCreate1155TokenCalls } from "./token-setup";
|
|
29
32
|
import { makeOnchainPrepareMintFromCreate } from "./mint-from-create";
|
|
30
|
-
import { IContractGetter } from "./contract-getter";
|
|
33
|
+
import { IContractGetter, SubgraphContractGetter } from "./contract-getter";
|
|
31
34
|
|
|
32
35
|
// Default royalty bps
|
|
33
36
|
const ROYALTY_BPS_DEFAULT = 1000;
|
|
@@ -118,7 +121,7 @@ export function makeCreateContractAndTokenCall({
|
|
|
118
121
|
});
|
|
119
122
|
}
|
|
120
123
|
|
|
121
|
-
function makeCreateTokenCall({
|
|
124
|
+
export function makeCreateTokenCall({
|
|
122
125
|
contractAddress,
|
|
123
126
|
account,
|
|
124
127
|
tokenSetupActions,
|
|
@@ -134,21 +137,29 @@ function makeCreateTokenCall({
|
|
|
134
137
|
});
|
|
135
138
|
}
|
|
136
139
|
|
|
140
|
+
/**
|
|
141
|
+
* @deprecated Please use functions directly without creating a client.
|
|
142
|
+
* Example: Instead of `new Create1155Client().createNew1155()`, use `createNew1155()`
|
|
143
|
+
* Import the functions you need directly from their respective modules:
|
|
144
|
+
* import { createNew1155, createNew1155OnExistingContract } from '@zoralabs/protocol-sdk'
|
|
145
|
+
*/
|
|
137
146
|
export class Create1155Client {
|
|
138
|
-
private readonly
|
|
139
|
-
|
|
147
|
+
private readonly publicClient: Pick<
|
|
148
|
+
PublicClient<Transport, Chain>,
|
|
149
|
+
"readContract" | "chain"
|
|
150
|
+
>;
|
|
140
151
|
public readonly contractGetter: IContractGetter;
|
|
141
152
|
|
|
142
153
|
constructor({
|
|
143
|
-
chainId,
|
|
144
154
|
publicClient,
|
|
145
155
|
contractGetter,
|
|
146
156
|
}: {
|
|
147
|
-
|
|
148
|
-
|
|
157
|
+
publicClient: Pick<
|
|
158
|
+
PublicClient<Transport, Chain>,
|
|
159
|
+
"readContract" | "chain"
|
|
160
|
+
>;
|
|
149
161
|
contractGetter: IContractGetter;
|
|
150
162
|
}) {
|
|
151
|
-
this.chainId = chainId;
|
|
152
163
|
this.publicClient = publicClient;
|
|
153
164
|
this.contractGetter = contractGetter;
|
|
154
165
|
}
|
|
@@ -156,10 +167,9 @@ export class Create1155Client {
|
|
|
156
167
|
async createNew1155(
|
|
157
168
|
props: CreateNew1155ContractParams,
|
|
158
169
|
): Promise<CreateNew1155ContractAndTokenReturn> {
|
|
159
|
-
return
|
|
170
|
+
return create1155({
|
|
160
171
|
...props,
|
|
161
172
|
publicClient: this.publicClient,
|
|
162
|
-
chainId: this.chainId,
|
|
163
173
|
});
|
|
164
174
|
}
|
|
165
175
|
|
|
@@ -174,100 +184,121 @@ export class Create1155Client {
|
|
|
174
184
|
account,
|
|
175
185
|
token,
|
|
176
186
|
getAdditionalSetupActions,
|
|
177
|
-
publicClient: this.publicClient,
|
|
178
|
-
chainId: this.chainId,
|
|
179
187
|
contractGetter: this.contractGetter,
|
|
188
|
+
chainId: this.publicClient.chain.id,
|
|
180
189
|
});
|
|
181
190
|
}
|
|
182
191
|
}
|
|
183
192
|
|
|
184
|
-
async function
|
|
193
|
+
export async function create1155({
|
|
185
194
|
contract,
|
|
186
195
|
account,
|
|
187
|
-
chainId,
|
|
188
196
|
token,
|
|
189
197
|
publicClient,
|
|
190
198
|
getAdditionalSetupActions,
|
|
191
199
|
}: CreateNew1155ContractParams & {
|
|
192
|
-
publicClient: Pick<PublicClient, "readContract">;
|
|
193
|
-
chainId: number;
|
|
200
|
+
publicClient: Pick<PublicClient<Transport, Chain>, "readContract" | "chain">;
|
|
194
201
|
}): Promise<CreateNew1155ContractAndTokenReturn> {
|
|
195
202
|
const nextTokenId = 1n;
|
|
203
|
+
const chainId = publicClient.chain.id;
|
|
196
204
|
const contractVersion = new1155ContractVersion(chainId);
|
|
197
205
|
|
|
198
|
-
const {
|
|
199
|
-
minter,
|
|
200
|
-
newToken,
|
|
201
|
-
setupActions: tokenSetupActions,
|
|
202
|
-
} = prepareSetupActions({
|
|
203
|
-
chainId,
|
|
204
|
-
account,
|
|
205
|
-
contractVersion,
|
|
206
|
-
nextTokenId,
|
|
207
|
-
token,
|
|
208
|
-
getAdditionalSetupActions,
|
|
209
|
-
contractName: contract.name,
|
|
210
|
-
});
|
|
211
|
-
|
|
212
|
-
const request = makeCreateContractAndTokenCall({
|
|
206
|
+
const result = prepareNew1155ContractAndToken({
|
|
213
207
|
contract,
|
|
214
208
|
account,
|
|
215
209
|
chainId,
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
210
|
+
token,
|
|
211
|
+
getAdditionalSetupActions,
|
|
212
|
+
nextTokenId,
|
|
213
|
+
contractVersion,
|
|
219
214
|
});
|
|
220
215
|
|
|
221
216
|
const contractAddress = await getDeterministicContractAddress({
|
|
222
217
|
account: typeof account === "string" ? account : account.address,
|
|
223
218
|
publicClient,
|
|
224
|
-
setupActions:
|
|
225
|
-
chainId,
|
|
219
|
+
setupActions: result.setupActions,
|
|
226
220
|
contract,
|
|
227
221
|
});
|
|
228
222
|
|
|
229
223
|
const prepareMint = makeOnchainPrepareMintFromCreate({
|
|
230
|
-
contractAddress
|
|
224
|
+
contractAddress,
|
|
231
225
|
contractVersion,
|
|
232
|
-
minter,
|
|
233
|
-
result: newToken.salesConfig,
|
|
226
|
+
minter: result.minter,
|
|
227
|
+
result: result.newToken.salesConfig,
|
|
234
228
|
tokenId: nextTokenId,
|
|
229
|
+
chainId,
|
|
235
230
|
// to get the contract wide mint fee, we get what it would be for a new contract
|
|
236
231
|
getContractMintFee: async () =>
|
|
237
232
|
getNewContractMintFee({
|
|
238
233
|
publicClient,
|
|
239
234
|
chainId,
|
|
240
235
|
}),
|
|
236
|
+
});
|
|
237
|
+
|
|
238
|
+
return {
|
|
239
|
+
...result,
|
|
240
|
+
prepareMint,
|
|
241
|
+
contractAddress,
|
|
242
|
+
contractVersion,
|
|
243
|
+
newTokenId: nextTokenId,
|
|
244
|
+
};
|
|
245
|
+
}
|
|
246
|
+
|
|
247
|
+
function prepareNew1155ContractAndToken({
|
|
248
|
+
account,
|
|
249
|
+
chainId,
|
|
250
|
+
token,
|
|
251
|
+
getAdditionalSetupActions,
|
|
252
|
+
nextTokenId,
|
|
253
|
+
contractVersion,
|
|
254
|
+
contract,
|
|
255
|
+
}: CreateNew1155ContractParams & {
|
|
256
|
+
chainId: number;
|
|
257
|
+
nextTokenId: bigint;
|
|
258
|
+
contractVersion: string;
|
|
259
|
+
}): PrepareCreateReturn {
|
|
260
|
+
const { minter, newToken, setupActions } = prepareSetupActions({
|
|
241
261
|
chainId,
|
|
262
|
+
account,
|
|
263
|
+
contractVersion: contractVersion,
|
|
264
|
+
nextTokenId: nextTokenId,
|
|
265
|
+
token,
|
|
266
|
+
getAdditionalSetupActions,
|
|
267
|
+
contractName: contract.name,
|
|
268
|
+
});
|
|
269
|
+
|
|
270
|
+
const request = makeCreateContractAndTokenCall({
|
|
271
|
+
contract,
|
|
272
|
+
account,
|
|
273
|
+
chainId,
|
|
274
|
+
tokenSetupActions: setupActions,
|
|
275
|
+
fundsRecipient: token.payoutRecipient,
|
|
276
|
+
royaltyBPS: token.royaltyBPS,
|
|
242
277
|
});
|
|
243
278
|
|
|
244
279
|
return {
|
|
245
280
|
parameters: request,
|
|
246
|
-
|
|
247
|
-
newTokenId: nextTokenId,
|
|
281
|
+
setupActions,
|
|
248
282
|
newToken,
|
|
249
|
-
contractAddress: contractAddress,
|
|
250
|
-
contractVersion,
|
|
251
283
|
minter,
|
|
252
|
-
prepareMint,
|
|
253
284
|
};
|
|
254
285
|
}
|
|
255
286
|
|
|
256
|
-
|
|
257
|
-
contractAddress
|
|
287
|
+
function prepareNew1155Token({
|
|
288
|
+
contractAddress,
|
|
258
289
|
account,
|
|
259
290
|
getAdditionalSetupActions,
|
|
260
291
|
token,
|
|
261
292
|
chainId,
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
293
|
+
nextTokenId,
|
|
294
|
+
contractVersion,
|
|
295
|
+
contractName,
|
|
296
|
+
}: Omit<CreateNew1155TokenParams, "contractGetter"> & {
|
|
265
297
|
chainId: number;
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
298
|
+
nextTokenId: bigint;
|
|
299
|
+
contractVersion: string;
|
|
300
|
+
contractName: string;
|
|
301
|
+
}): PrepareCreateReturn {
|
|
271
302
|
const {
|
|
272
303
|
minter,
|
|
273
304
|
newToken,
|
|
@@ -279,7 +310,7 @@ async function createNew1155Token({
|
|
|
279
310
|
nextTokenId,
|
|
280
311
|
token,
|
|
281
312
|
getAdditionalSetupActions,
|
|
282
|
-
contractName
|
|
313
|
+
contractName,
|
|
283
314
|
});
|
|
284
315
|
|
|
285
316
|
const request = makeCreateTokenCall({
|
|
@@ -288,28 +319,63 @@ async function createNew1155Token({
|
|
|
288
319
|
tokenSetupActions,
|
|
289
320
|
});
|
|
290
321
|
|
|
322
|
+
return {
|
|
323
|
+
parameters: request,
|
|
324
|
+
setupActions: tokenSetupActions,
|
|
325
|
+
newToken,
|
|
326
|
+
minter,
|
|
327
|
+
};
|
|
328
|
+
}
|
|
329
|
+
|
|
330
|
+
export async function createNew1155Token({
|
|
331
|
+
contractAddress,
|
|
332
|
+
account,
|
|
333
|
+
getAdditionalSetupActions,
|
|
334
|
+
token,
|
|
335
|
+
chainId,
|
|
336
|
+
contractGetter,
|
|
337
|
+
}: CreateNew1155TokenParams & {
|
|
338
|
+
chainId: number;
|
|
339
|
+
contractGetter?: IContractGetter;
|
|
340
|
+
}): Promise<CreateNew1155TokenReturn> {
|
|
341
|
+
const contractGetterOrDefault =
|
|
342
|
+
contractGetter ?? new SubgraphContractGetter(chainId);
|
|
343
|
+
const { nextTokenId, contractVersion, mintFee, name } =
|
|
344
|
+
await contractGetterOrDefault.getContractInfo({
|
|
345
|
+
contractAddress,
|
|
346
|
+
retries: 5,
|
|
347
|
+
});
|
|
348
|
+
|
|
349
|
+
const preparedToken = prepareNew1155Token({
|
|
350
|
+
contractAddress,
|
|
351
|
+
account,
|
|
352
|
+
getAdditionalSetupActions,
|
|
353
|
+
token,
|
|
354
|
+
chainId,
|
|
355
|
+
nextTokenId,
|
|
356
|
+
contractVersion,
|
|
357
|
+
contractName: name,
|
|
358
|
+
});
|
|
359
|
+
|
|
291
360
|
const prepareMint = makeOnchainPrepareMintFromCreate({
|
|
292
361
|
contractAddress: contractAddress,
|
|
293
362
|
contractVersion,
|
|
294
|
-
minter,
|
|
295
|
-
result: newToken.salesConfig,
|
|
363
|
+
minter: preparedToken.minter,
|
|
364
|
+
result: preparedToken.newToken.salesConfig,
|
|
296
365
|
tokenId: nextTokenId,
|
|
297
366
|
getContractMintFee: async () => mintFee,
|
|
298
367
|
chainId,
|
|
299
368
|
});
|
|
300
369
|
|
|
301
370
|
return {
|
|
302
|
-
|
|
303
|
-
|
|
371
|
+
...preparedToken,
|
|
372
|
+
prepareMint,
|
|
304
373
|
newTokenId: nextTokenId,
|
|
305
|
-
newToken,
|
|
306
374
|
contractVersion,
|
|
307
|
-
minter,
|
|
308
|
-
prepareMint,
|
|
309
375
|
};
|
|
310
376
|
}
|
|
311
377
|
|
|
312
|
-
function prepareSetupActions({
|
|
378
|
+
export function prepareSetupActions({
|
|
313
379
|
chainId,
|
|
314
380
|
account,
|
|
315
381
|
contractVersion,
|
package/src/create/types.ts
CHANGED
|
@@ -114,7 +114,7 @@ export type New1155Token = {
|
|
|
114
114
|
salesConfig: ConcreteSalesConfig;
|
|
115
115
|
};
|
|
116
116
|
|
|
117
|
-
export type
|
|
117
|
+
export type PrepareCreateReturn = {
|
|
118
118
|
parameters: SimulateContractParameters<
|
|
119
119
|
any,
|
|
120
120
|
any,
|
|
@@ -123,10 +123,13 @@ export type CreateNew1155TokenReturn = {
|
|
|
123
123
|
any,
|
|
124
124
|
Account | Address
|
|
125
125
|
>;
|
|
126
|
-
|
|
127
|
-
newTokenId: bigint;
|
|
126
|
+
setupActions: Hex[];
|
|
128
127
|
newToken: New1155Token;
|
|
129
128
|
minter: Address;
|
|
129
|
+
};
|
|
130
|
+
|
|
131
|
+
export type CreateNew1155TokenReturn = PrepareCreateReturn & {
|
|
132
|
+
newTokenId: bigint;
|
|
130
133
|
contractVersion: string;
|
|
131
134
|
prepareMint: AsyncPrepareMint;
|
|
132
135
|
};
|
|
@@ -134,3 +137,10 @@ export type CreateNew1155TokenReturn = {
|
|
|
134
137
|
export type CreateNew1155ContractAndTokenReturn = {
|
|
135
138
|
contractAddress: Address;
|
|
136
139
|
} & CreateNew1155TokenReturn;
|
|
140
|
+
|
|
141
|
+
export type ContractInfo = {
|
|
142
|
+
nextTokenId: bigint;
|
|
143
|
+
contractVersion: string;
|
|
144
|
+
mintFee: bigint;
|
|
145
|
+
name: string;
|
|
146
|
+
};
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { Address, Chain, PublicClient, WalletClient } from "viem";
|
|
2
|
-
import { simulateAndWriteContractWithRetries } from "src/test-utils";
|
|
1
|
+
import { Address, Chain, PublicClient, WalletClient, Transport } from "viem";
|
|
3
2
|
import { createCreatorClient } from "src/sdk";
|
|
4
3
|
import { SubgraphMintGetter } from "src/mint/subgraph-mint-getter";
|
|
5
4
|
import { SubgraphRewardsGetter } from "../rewards/subgraph-rewards-getter";
|
|
5
|
+
import { simulateAndWriteContractWithRetries } from "src/test-utils";
|
|
6
6
|
|
|
7
7
|
export const demoTokenMetadataURI =
|
|
8
8
|
"ipfs://bafkreice23maski3x52tsfqgxstx3kbiifnt5jotg3a5ynvve53c4soi2u";
|
|
@@ -15,7 +15,7 @@ export async function setupContractAndToken({
|
|
|
15
15
|
walletClient,
|
|
16
16
|
}: {
|
|
17
17
|
chain: Chain;
|
|
18
|
-
publicClient: PublicClient
|
|
18
|
+
publicClient: PublicClient<Transport, Chain>;
|
|
19
19
|
creatorAccount: Address;
|
|
20
20
|
walletClient: WalletClient;
|
|
21
21
|
}) {
|
|
@@ -4,17 +4,10 @@ import {
|
|
|
4
4
|
CreatorERC20zQueryResult,
|
|
5
5
|
} from "../rewards/subgraph-queries";
|
|
6
6
|
|
|
7
|
-
const mockResult = ({
|
|
8
|
-
erz20z,
|
|
9
|
-
secondaryActivated,
|
|
10
|
-
}: {
|
|
11
|
-
erz20z: Address;
|
|
12
|
-
secondaryActivated: boolean;
|
|
13
|
-
}): RewardsToken => ({
|
|
7
|
+
const mockResult = ({ erz20z }: { erz20z: Address }): RewardsToken => ({
|
|
14
8
|
salesStrategies: [
|
|
15
9
|
{
|
|
16
10
|
zoraTimedMinter: {
|
|
17
|
-
secondaryActivated,
|
|
18
11
|
erc20Z: {
|
|
19
12
|
id: erz20z,
|
|
20
13
|
},
|
|
@@ -26,7 +19,7 @@ const mockResult = ({
|
|
|
26
19
|
export const mockRewardsQueryResults = ({
|
|
27
20
|
erc20z,
|
|
28
21
|
}: {
|
|
29
|
-
erc20z: {
|
|
22
|
+
erc20z: { erz20z: Address }[];
|
|
30
23
|
}): CreatorERC20zQueryResult => ({
|
|
31
24
|
zoraCreateTokens: erc20z.map(mockResult),
|
|
32
25
|
});
|
|
@@ -1,34 +1,38 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import {
|
|
2
|
+
Address,
|
|
3
|
+
Account,
|
|
4
|
+
PublicClient,
|
|
5
|
+
TestClient,
|
|
6
|
+
WalletClient,
|
|
7
|
+
Transport,
|
|
8
|
+
Chain,
|
|
9
|
+
} from "viem";
|
|
10
|
+
import { simulateAndWriteContractWithRetries } from "../test-utils";
|
|
4
11
|
import { makeContractParameters } from "../utils";
|
|
5
12
|
import {
|
|
6
13
|
zoraTimedSaleStrategyABI,
|
|
7
14
|
zoraTimedSaleStrategyAddress,
|
|
8
15
|
} from "@zoralabs/protocol-deployments";
|
|
9
|
-
|
|
16
|
+
import { getSecondaryInfo } from "src/secondary/utils";
|
|
10
17
|
export async function advanceToSaleAndAndLaunchMarket({
|
|
11
18
|
contractAddress,
|
|
12
19
|
tokenId,
|
|
13
20
|
testClient,
|
|
14
21
|
publicClient,
|
|
15
22
|
walletClient,
|
|
16
|
-
collectorClient,
|
|
17
|
-
chainId,
|
|
18
23
|
account,
|
|
19
24
|
}: {
|
|
20
25
|
contractAddress: Address;
|
|
21
26
|
tokenId: bigint;
|
|
22
27
|
testClient: TestClient;
|
|
23
|
-
publicClient: PublicClient
|
|
28
|
+
publicClient: PublicClient<Transport, Chain>;
|
|
24
29
|
walletClient: WalletClient;
|
|
25
|
-
collectorClient: CollectorClient;
|
|
26
|
-
chainId: number;
|
|
27
30
|
account: Address | Account;
|
|
28
31
|
}) {
|
|
29
|
-
const saleInfo = await
|
|
32
|
+
const saleInfo = await getSecondaryInfo({
|
|
30
33
|
contract: contractAddress,
|
|
31
34
|
tokenId,
|
|
35
|
+
publicClient,
|
|
32
36
|
});
|
|
33
37
|
|
|
34
38
|
if (!saleInfo) {
|
|
@@ -50,6 +54,8 @@ export async function advanceToSaleAndAndLaunchMarket({
|
|
|
50
54
|
blocks: 1,
|
|
51
55
|
});
|
|
52
56
|
|
|
57
|
+
const chainId = publicClient.chain.id;
|
|
58
|
+
|
|
53
59
|
// advance to end of sale
|
|
54
60
|
// launch the market
|
|
55
61
|
await simulateAndWriteContractWithRetries({
|
package/src/index.ts
CHANGED
|
@@ -13,11 +13,11 @@ export * from "./mint/subgraph-mint-getter";
|
|
|
13
13
|
export * from "./mint/mint-client";
|
|
14
14
|
export {
|
|
15
15
|
type MintParameters,
|
|
16
|
-
type GetMintParameters,
|
|
17
|
-
type GetMintsOfContractParameters,
|
|
16
|
+
type GetMintParametersArguments as GetMintParameters,
|
|
17
|
+
type GetMintsOfContractParametersArguments as GetMintsOfContractParameters,
|
|
18
18
|
type MintTypes,
|
|
19
19
|
type SaleType,
|
|
20
|
-
type GetMintCostsParameters,
|
|
20
|
+
type GetMintCostsParameterArguments as GetMintCostsParameters,
|
|
21
21
|
type MakeMintParametersArguments,
|
|
22
22
|
type SaleStrategies,
|
|
23
23
|
type ContractInfo,
|
|
@@ -30,9 +30,25 @@ export {
|
|
|
30
30
|
type MintableReturn,
|
|
31
31
|
type PrepareMint,
|
|
32
32
|
type MintParametersBase,
|
|
33
|
+
type OnChainMintParameters,
|
|
34
|
+
type Erc1155MintParameters,
|
|
35
|
+
type Erc721MintParameters,
|
|
36
|
+
isOnChainMint,
|
|
37
|
+
is1155Mint,
|
|
33
38
|
} from "./mint/types";
|
|
34
39
|
|
|
35
|
-
export
|
|
40
|
+
export { getToken, getTokensOfContract } from "./mint/mint-queries";
|
|
41
|
+
|
|
42
|
+
export { type TokenQueryResult } from "./mint/subgraph-queries";
|
|
43
|
+
|
|
44
|
+
export * from "./create/create-client";
|
|
45
|
+
|
|
46
|
+
export * from "./mint/strategies-parsing";
|
|
47
|
+
|
|
48
|
+
export { toMintableReturn } from "./mint/mint-queries";
|
|
49
|
+
|
|
50
|
+
export { new1155ContractVersion } from "./create/contract-setup";
|
|
51
|
+
export { makeOnchainPrepareMintFromCreate } from "./create/mint-from-create";
|
|
36
52
|
|
|
37
53
|
export * from "./sparks/mints-queries";
|
|
38
54
|
|
|
@@ -46,10 +62,24 @@ export {
|
|
|
46
62
|
|
|
47
63
|
export * from "./create/types";
|
|
48
64
|
|
|
65
|
+
export {
|
|
66
|
+
SubgraphContractGetter,
|
|
67
|
+
type IContractGetter,
|
|
68
|
+
} from "./create/contract-getter";
|
|
69
|
+
|
|
49
70
|
export * from "./sdk";
|
|
50
71
|
|
|
51
72
|
export * from "./ipfs";
|
|
52
73
|
|
|
53
74
|
export { createAllowList } from "./allow-list/allow-list-client";
|
|
54
75
|
|
|
76
|
+
export { getRewardsBalances, withdrawRewards } from "./rewards/rewards-queries";
|
|
77
|
+
|
|
55
78
|
export * from "./allow-list/types";
|
|
79
|
+
|
|
80
|
+
export {
|
|
81
|
+
buy1155OnSecondary,
|
|
82
|
+
sell1155OnSecondary,
|
|
83
|
+
} from "./secondary/secondary-client";
|
|
84
|
+
|
|
85
|
+
export { getSecondaryInfo } from "./secondary/utils";
|