@artblocks/abx-sdk 0.1.0-alpha.11 → 0.1.0-alpha.13
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/abi/generated.d.ts +6491 -0
- package/dist/abi/generated.d.ts.map +1 -1
- package/dist/abi/generated.js +19 -3
- package/dist/abi/generated.js.map +1 -1
- package/dist/abi/index.d.ts +1650 -15
- package/dist/abi/index.d.ts.map +1 -1
- package/dist/abi/index.js +25 -7
- package/dist/abi/index.js.map +1 -1
- package/dist/anchors.d.ts +63 -7
- package/dist/anchors.d.ts.map +1 -1
- package/dist/anchors.js +186 -7
- package/dist/anchors.js.map +1 -1
- package/dist/create2.d.ts +13 -0
- package/dist/create2.d.ts.map +1 -1
- package/dist/create2.js +29 -1
- package/dist/create2.js.map +1 -1
- package/dist/deploy.d.ts +147 -0
- package/dist/deploy.d.ts.map +1 -1
- package/dist/deploy.js +119 -3
- package/dist/deploy.js.map +1 -1
- package/dist/deployments.d.ts +8 -0
- package/dist/deployments.d.ts.map +1 -1
- package/dist/deployments.js +24 -0
- package/dist/deployments.js.map +1 -1
- package/dist/errors.d.ts +4 -3
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/onchain-uri.d.ts +4 -1
- package/dist/onchain-uri.d.ts.map +1 -1
- package/dist/onchain-uri.js +25 -3
- package/dist/onchain-uri.js.map +1 -1
- package/dist/ops.d.ts +159 -2
- package/dist/ops.d.ts.map +1 -1
- package/dist/ops.js +347 -7
- package/dist/ops.js.map +1 -1
- package/dist/reconstruct.d.ts +9 -0
- package/dist/reconstruct.d.ts.map +1 -1
- package/dist/reconstruct.js +120 -21
- package/dist/reconstruct.js.map +1 -1
- package/dist/service.d.ts +6 -0
- package/dist/service.d.ts.map +1 -1
- package/dist/service.js.map +1 -1
- package/dist/spine.d.ts +1 -0
- package/dist/spine.d.ts.map +1 -1
- package/dist/spine.js +0 -0
- package/dist/spine.js.map +1 -1
- package/dist/tokens.d.ts +14 -3
- package/dist/tokens.d.ts.map +1 -1
- package/dist/tokens.js +125 -1
- package/dist/tokens.js.map +1 -1
- package/dist/types.d.ts +30 -2
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/abi/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/abi/index.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,uBAAuB,EACvB,4BAA4B,EAC5B,gBAAgB,EAChB,qBAAqB,EACrB,qBAAqB,EACrB,0BAA0B,EAC1B,cAAc,EACd,mBAAmB,EACnB,oBAAoB,EACpB,yBAAyB,EACzB,aAAa,EACb,kBAAkB,EAClB,gBAAgB,EAChB,qBAAqB,EACrB,eAAe,EACf,oBAAoB,EACpB,aAAa,EACb,kBAAkB,EAClB,sBAAsB,EACtB,2BAA2B,EAC3B,gBAAgB,EAChB,qBAAqB,EACrB,sBAAsB,EACtB,2BAA2B,GAC5B,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/abi/index.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,uBAAuB,EACvB,4BAA4B,EAC5B,gBAAgB,EAChB,qBAAqB,EACrB,qBAAqB,EACrB,0BAA0B,EAC1B,cAAc,EACd,mBAAmB,EACnB,oBAAoB,EACpB,yBAAyB,EACzB,aAAa,EACb,kBAAkB,EAElB,yBAAyB,EACzB,8BAA8B,EAC9B,kBAAkB,EAClB,uBAAuB,EACvB,sBAAsB,EACtB,2BAA2B,EAC3B,eAAe,EACf,oBAAoB,EACpB,qBAAqB,EACrB,0BAA0B,EAC1B,cAAc,EACd,mBAAmB,EACnB,gBAAgB,EAChB,qBAAqB,EACrB,0BAA0B,EAC1B,+BAA+B,EAC/B,gBAAgB,EAChB,qBAAqB,EACrB,eAAe,EACf,oBAAoB,EACpB,aAAa,EACb,kBAAkB,EAClB,sBAAsB,EACtB,2BAA2B,EAC3B,gBAAgB,EAChB,qBAAqB,EACrB,sBAAsB,EACtB,2BAA2B,GAC5B,MAAM,gBAAgB,CAAC;AAwBxB;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA0BtB,CAAC"}
|
package/dist/abi/index.js
CHANGED
|
@@ -1,18 +1,29 @@
|
|
|
1
1
|
// The ABI surface the SDK speaks. Generated artifacts come from the contracts
|
|
2
2
|
// package (Layer 1) via `pnpm sync-abis`; never hand-edit `generated.ts`.
|
|
3
|
-
export { oneOfOneImageFactoryAbi, oneOfOneImageFactoryBytecode, oneOfOneImageAbi, oneOfOneImageBytecode, seriesImageFactoryAbi, seriesImageFactoryBytecode, seriesImageAbi, seriesImageBytecode, seriesCodeFactoryAbi, seriesCodeFactoryBytecode, seriesCodeAbi, seriesCodeBytecode,
|
|
4
|
-
|
|
3
|
+
export { oneOfOneImageFactoryAbi, oneOfOneImageFactoryBytecode, oneOfOneImageAbi, oneOfOneImageBytecode, seriesImageFactoryAbi, seriesImageFactoryBytecode, seriesImageAbi, seriesImageBytecode, seriesCodeFactoryAbi, seriesCodeFactoryBytecode, seriesCodeAbi, seriesCodeBytecode,
|
|
4
|
+
// ERC-1155 editions — the twin token+factory set (see contracts/src/tokens/Edition*.sol).
|
|
5
|
+
oneOfOneEditionFactoryAbi, oneOfOneEditionFactoryBytecode, oneOfOneEditionAbi, oneOfOneEditionBytecode, editionImageFactoryAbi, editionImageFactoryBytecode, editionImageAbi, editionImageBytecode, editionCodeFactoryAbi, editionCodeFactoryBytecode, editionCodeAbi, editionCodeBytecode, abxEditionLibAbi, abxEditionLibBytecode, abxFixedPriceMinter1155Abi, abxFixedPriceMinter1155Bytecode, abxSeedSourceAbi, abxSeedSourceBytecode, abxParamsLibAbi, abxParamsLibBytecode, abxCodeLibAbi, abxCodeLibBytecode, abxMetadataRendererAbi, abxMetadataRendererBytecode, abxChunkStoreAbi, abxChunkStoreBytecode, abxFixedPriceMinterAbi, abxFixedPriceMinterBytecode, } from './generated.js';
|
|
6
|
+
import { oneOfOneImageAbi, oneOfOneImageFactoryAbi, seriesImageAbi, seriesImageFactoryAbi, seriesCodeAbi, seriesCodeFactoryAbi, oneOfOneEditionAbi, oneOfOneEditionFactoryAbi, editionImageAbi, editionImageFactoryAbi, editionCodeAbi, editionCodeFactoryAbi, abxFixedPriceMinterAbi, abxFixedPriceMinter1155Abi, } from './generated.js';
|
|
5
7
|
/** A stable signature key for an ABI event fragment (name + input types), for de-duping. */
|
|
6
8
|
function eventKey(f) {
|
|
7
9
|
return `${f.name ?? ''}(${(f.inputs ?? []).map((i) => i.type).join(',')})`;
|
|
8
10
|
}
|
|
9
11
|
/**
|
|
10
12
|
* The event-spine ABI: every event any ABX token type + its factory can emit — the set
|
|
11
|
-
* the reference indexer decodes.
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
13
|
+
* the reference indexer decodes. Every concrete token (721: 1/1, Series, SeriesCode; 1155:
|
|
14
|
+
* OneOfOneEdition, EditionImage, EditionCode) declares the full spine it participates in
|
|
15
|
+
* (Register 1 standards + Register 2 native events); we union them plus the factories'
|
|
16
|
+
* `Deployed` and both fixed-price minters' sibling Minter-spine events (`SaleConfigured`/
|
|
17
|
+
* `Purchase`), de-duping shared fragments (e.g. `Transfer`, `ApprovalForAll`) so a single ABI
|
|
18
|
+
* decodes any ABX contract's logs unambiguously. `eventKey` dedups by name **and** input
|
|
19
|
+
* types, so same-named-but-different-shaped events (the 721 vs. 1155 minters' `SaleConfigured`/
|
|
20
|
+
* `Purchase`, which differ by an `id`/`amount`) survive as distinct fragments — `parseEventLogs`
|
|
21
|
+
* disambiguates them by topic0 (the full canonical signature hash) at decode time, same as it
|
|
22
|
+
* already does for every other event here. `AbxEditionLib` (EditionCode's EIP-170 relief-valve
|
|
23
|
+
* library) is deliberately excluded — its event mirrors are byte-identical to the ones
|
|
24
|
+
* `editionCodeAbi` already carries via inheritance (Uri1155/CreatorToken1155/EditionSupply), so
|
|
25
|
+
* including it would only add pure duplicates (mirrors `abxParamsLibAbi`/`abxCodeLibAbi` being
|
|
26
|
+
* excluded here too).
|
|
16
27
|
*/
|
|
17
28
|
export const spineEventAbi = (() => {
|
|
18
29
|
const all = [
|
|
@@ -23,6 +34,13 @@ export const spineEventAbi = (() => {
|
|
|
23
34
|
...seriesImageFactoryAbi,
|
|
24
35
|
...seriesCodeFactoryAbi,
|
|
25
36
|
...abxFixedPriceMinterAbi,
|
|
37
|
+
...oneOfOneEditionAbi,
|
|
38
|
+
...editionImageAbi,
|
|
39
|
+
...editionCodeAbi,
|
|
40
|
+
...oneOfOneEditionFactoryAbi,
|
|
41
|
+
...editionImageFactoryAbi,
|
|
42
|
+
...editionCodeFactoryAbi,
|
|
43
|
+
...abxFixedPriceMinter1155Abi,
|
|
26
44
|
].filter((f) => f.type === 'event');
|
|
27
45
|
const seen = new Set();
|
|
28
46
|
const out = [];
|
package/dist/abi/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/abi/index.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,0EAA0E;AAC1E,OAAO,EACL,uBAAuB,EACvB,4BAA4B,EAC5B,gBAAgB,EAChB,qBAAqB,EACrB,qBAAqB,EACrB,0BAA0B,EAC1B,cAAc,EACd,mBAAmB,EACnB,oBAAoB,EACpB,yBAAyB,EACzB,aAAa,EACb,kBAAkB,EAClB,gBAAgB,EAChB,qBAAqB,EACrB,eAAe,EACf,oBAAoB,EACpB,aAAa,EACb,kBAAkB,EAClB,sBAAsB,EACtB,2BAA2B,EAC3B,gBAAgB,EAChB,qBAAqB,EACrB,sBAAsB,EACtB,2BAA2B,GAC5B,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,gBAAgB,EAChB,uBAAuB,EACvB,cAAc,EACd,qBAAqB,EACrB,aAAa,EACb,oBAAoB,EACpB,sBAAsB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/abi/index.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,0EAA0E;AAC1E,OAAO,EACL,uBAAuB,EACvB,4BAA4B,EAC5B,gBAAgB,EAChB,qBAAqB,EACrB,qBAAqB,EACrB,0BAA0B,EAC1B,cAAc,EACd,mBAAmB,EACnB,oBAAoB,EACpB,yBAAyB,EACzB,aAAa,EACb,kBAAkB;AAClB,0FAA0F;AAC1F,yBAAyB,EACzB,8BAA8B,EAC9B,kBAAkB,EAClB,uBAAuB,EACvB,sBAAsB,EACtB,2BAA2B,EAC3B,eAAe,EACf,oBAAoB,EACpB,qBAAqB,EACrB,0BAA0B,EAC1B,cAAc,EACd,mBAAmB,EACnB,gBAAgB,EAChB,qBAAqB,EACrB,0BAA0B,EAC1B,+BAA+B,EAC/B,gBAAgB,EAChB,qBAAqB,EACrB,eAAe,EACf,oBAAoB,EACpB,aAAa,EACb,kBAAkB,EAClB,sBAAsB,EACtB,2BAA2B,EAC3B,gBAAgB,EAChB,qBAAqB,EACrB,sBAAsB,EACtB,2BAA2B,GAC5B,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,gBAAgB,EAChB,uBAAuB,EACvB,cAAc,EACd,qBAAqB,EACrB,aAAa,EACb,oBAAoB,EACpB,kBAAkB,EAClB,yBAAyB,EACzB,eAAe,EACf,sBAAsB,EACtB,cAAc,EACd,qBAAqB,EACrB,sBAAsB,EACtB,0BAA0B,GAC3B,MAAM,gBAAgB,CAAC;AAExB,4FAA4F;AAC5F,SAAS,QAAQ,CAAC,CAAwE;IACxF,OAAO,GAAG,CAAC,CAAC,IAAI,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;AAC7E,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,GAAG,EAAE;IACjC,MAAM,GAAG,GAAG;QACV,GAAG,gBAAgB;QACnB,GAAG,cAAc;QACjB,GAAG,aAAa;QAChB,GAAG,uBAAuB;QAC1B,GAAG,qBAAqB;QACxB,GAAG,oBAAoB;QACvB,GAAG,sBAAsB;QACzB,GAAG,kBAAkB;QACrB,GAAG,eAAe;QAClB,GAAG,cAAc;QACjB,GAAG,yBAAyB;QAC5B,GAAG,sBAAsB;QACzB,GAAG,qBAAqB;QACxB,GAAG,0BAA0B;KAC9B,CAAC,MAAM,CAAC,CAAC,CAAiB,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;IACpD,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,MAAM,GAAG,GAAe,EAAE,CAAC;IAC3B,KAAK,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC;QACpB,MAAM,GAAG,GAAG,QAAQ,CAAC,CAAU,CAAC,CAAC;QACjC,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,SAAS;QAC5B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACd,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACd,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC,CAAC,EAAE,CAAC"}
|
package/dist/anchors.d.ts
CHANGED
|
@@ -17,11 +17,16 @@ import type { SendTx } from './execute.js';
|
|
|
17
17
|
*/
|
|
18
18
|
/** Progress from an `ensure*` trust-anchor resolution, so a caller can narrate without the SDK
|
|
19
19
|
* printing anything itself (mirrors {@link ChunkStoreEvent}'s vocabulary). Not every anchor emits
|
|
20
|
-
* every kind: `canonical` (found at the CREATE2-deterministic address)
|
|
21
|
-
*
|
|
22
|
-
*
|
|
23
|
-
*
|
|
24
|
-
*
|
|
20
|
+
* every kind: `canonical` (found at the CREATE2-deterministic address) applies to the renderer,
|
|
21
|
+
* the seed source, and — unlike the 721 1/1/Series factories — the two CREATE2-deterministic
|
|
22
|
+
* edition factories (`one-of-one-edition-factory`/`edition-factory`); the 721 1/1/Series
|
|
23
|
+
* factories and the two lib-linked code factories (`series-code-factory`/`edition-code-factory`)
|
|
24
|
+
* have no deterministic address to self-heal to (their bytecode is either constructor-baked, for
|
|
25
|
+
* the former, or link-time-linked, for the latter — nothing to predict either way). The optional
|
|
26
|
+
* `deployed` fields are anchor-specific: `implementation` for every factory, `specVersion` for
|
|
27
|
+
* the renderer, `paramsLib`/`codeLib`/`editionLib` for the SeriesCode/EditionCode factories'
|
|
28
|
+
* linked write-path libraries (`editionLib` only for the latter — see {@link
|
|
29
|
+
* deployEditionCodeFactory}). */
|
|
25
30
|
export type AnchorEvent = {
|
|
26
31
|
anchor: AnchorKind;
|
|
27
32
|
} & ({
|
|
@@ -45,6 +50,7 @@ export type AnchorEvent = {
|
|
|
45
50
|
specVersion?: bigint;
|
|
46
51
|
paramsLib?: Address;
|
|
47
52
|
codeLib?: Address;
|
|
53
|
+
editionLib?: Address;
|
|
48
54
|
});
|
|
49
55
|
/** Is the deployed factory this build's version? Reads its implementation and probes the
|
|
50
56
|
* NEWEST capability the current implementation exposes — `totalSupply()` (the live-count
|
|
@@ -104,6 +110,50 @@ export declare function ensureSeriesCodeFactory(publicClient: PublicClient, send
|
|
|
104
110
|
allowBootstrap?: boolean;
|
|
105
111
|
onEvent?: (e: AnchorEvent) => void;
|
|
106
112
|
}): Promise<Address>;
|
|
113
|
+
/** Is the deployed 1/1-edition factory this build's version? Reads its implementation and probes
|
|
114
|
+
* the newest capabilities the current implementation exposes: ERC-165 support for ERC-1155
|
|
115
|
+
* itself AND the edition mint primitive (`IAbxEditionMint`). A stale/incompatible impl fails
|
|
116
|
+
* either probe. (Bump these to the newest capability with each impl change — mirrors {@link
|
|
117
|
+
* isCurrentFactory}'s style.) */
|
|
118
|
+
export declare function isCurrentOneOfOneEditionFactory(publicClient: PublicClient, factory: Address): Promise<boolean>;
|
|
119
|
+
/**
|
|
120
|
+
* Get (or deploy) the chain's canonical 1/1-edition clone factory — the trust anchor for a
|
|
121
|
+
* priced open/limited edition of a single artwork. The edition twin of {@link ensureFactory},
|
|
122
|
+
* but — because `OneOfOneEditionFactory` is CREATE2-deterministic (see `create2.ts`'s
|
|
123
|
+
* class-level dev note), unlike the 721 1/1 factory's own bootstrap path — this one ALSO
|
|
124
|
+
* self-heals to the predicted address, mirroring {@link ensureRenderer}'s style.
|
|
125
|
+
*/
|
|
126
|
+
export declare function ensureOneOfOneEditionFactory(publicClient: PublicClient, send: SendTx, opts: {
|
|
127
|
+
chainId: number;
|
|
128
|
+
override?: string;
|
|
129
|
+
allowBootstrap?: boolean;
|
|
130
|
+
onEvent?: (e: AnchorEvent) => void;
|
|
131
|
+
}): Promise<Address>;
|
|
132
|
+
/** Is the deployed edition-image factory this build's version? Same two-probe shape as {@link
|
|
133
|
+
* isCurrentOneOfOneEditionFactory} (ERC-1155 + `IAbxEditionMint`) — `MaxInvocations`'s id-space
|
|
134
|
+
* cap isn't a distinguishing probe here since it's shared, unchanged, with the 721 Series
|
|
135
|
+
* factory (see `reconstruct.ts`'s `contractType` fold for that same reasoning). */
|
|
136
|
+
export declare function isCurrentEditionFactory(publicClient: PublicClient, factory: Address): Promise<boolean>;
|
|
137
|
+
/** Get (or deploy) the chain's `EditionImageFactory` — the multi-artwork edition trust anchor,
|
|
138
|
+
* the sibling of {@link ensureSeriesFactory}. CREATE2-deterministic, so it self-heals to its
|
|
139
|
+
* predicted address exactly like {@link ensureOneOfOneEditionFactory}. */
|
|
140
|
+
export declare function ensureEditionFactory(publicClient: PublicClient, send: SendTx, opts: {
|
|
141
|
+
chainId: number;
|
|
142
|
+
override?: string;
|
|
143
|
+
allowBootstrap?: boolean;
|
|
144
|
+
onEvent?: (e: AnchorEvent) => void;
|
|
145
|
+
}): Promise<Address>;
|
|
146
|
+
/** The code-project EDITION trust anchor: use the canonical factory, else deploy one (a sandbox /
|
|
147
|
+
* fresh chain — three libraries linked in-flight; see {@link deployEditionCodeFactory}). Exactly
|
|
148
|
+
* {@link ensureSeriesCodeFactory}'s stance, extended to a third library: no version probe (a
|
|
149
|
+
* configured factory with code is always accepted) and no CREATE2 self-heal (its bytecode is
|
|
150
|
+
* link-time-linked, so nothing about its address is predictable). */
|
|
151
|
+
export declare function ensureEditionCodeFactory(publicClient: PublicClient, send: SendTx, opts: {
|
|
152
|
+
chainId: number;
|
|
153
|
+
override?: string;
|
|
154
|
+
allowBootstrap?: boolean;
|
|
155
|
+
onEvent?: (e: AnchorEvent) => void;
|
|
156
|
+
}): Promise<Address>;
|
|
107
157
|
/** The canonical seed source — a clean keyless singleton (like the renderer / chunk store / minter):
|
|
108
158
|
* single-profile, so CREATE2 lands at THE canonical address on any chain. Resolves from the manifest,
|
|
109
159
|
* self-heals to the predicted address (deployed but not yet repointed), else auto-deploys via CREATE2. */
|
|
@@ -113,12 +163,18 @@ export declare function ensureSeedSource(publicClient: PublicClient, send: SendT
|
|
|
113
163
|
}): Promise<Address>;
|
|
114
164
|
/**
|
|
115
165
|
* Pick the canonical factory for a clone being added. An explicit override or a stored value
|
|
116
|
-
* wins; otherwise probe the chain's known factories
|
|
117
|
-
*
|
|
166
|
+
* wins; otherwise probe ALL SIX of the chain's known factories — the three 721 anchors (SeriesCode,
|
|
167
|
+
* Series, 1/1) and the three ERC-1155 edition anchors (EditionCode, EditionImage, OneOfOneEdition) —
|
|
168
|
+
* for the ONE whose `isAbxClone` confirms this address, so `abx add` of any project records the RIGHT
|
|
118
169
|
* factory and canonicity actually verifies. Without this, `add` defaulted to the 1/1 factory, so a
|
|
119
170
|
* code/Series clone read `canonical: unverified` (the check ran against the wrong factory). One
|
|
120
171
|
* multicall, only when the factory isn't already known; falls back to the 1/1 default on any miss/RPC
|
|
121
172
|
* error (`isAbxClone` shares a selector across all factory ABIs, so one ABI probes them all).
|
|
173
|
+
*
|
|
174
|
+
* The edition anchors were missing here when the 1155 lane shipped, and the failure was worse than
|
|
175
|
+
* "unverified": the 1/1 fallback answers `isAbxClone` = **false**, so every genuinely-canonical
|
|
176
|
+
* edition read `canonical: NO` — a confident wrong answer about the trust anchor, on the one signal
|
|
177
|
+
* platforms allowlist against. Any new token family MUST be added to this list in the same change.
|
|
122
178
|
*/
|
|
123
179
|
export declare function detectCanonicalFactory(publicClient: PublicClient, address: Address, opts: {
|
|
124
180
|
chainId: number;
|
package/dist/anchors.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"anchors.d.ts","sourceRoot":"","sources":["../src/anchors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,OAAO,EAAE,GAAG,EAAE,YAAY,EAAC,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"anchors.d.ts","sourceRoot":"","sources":["../src/anchors.ts"],"names":[],"mappings":"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"}
|
package/dist/anchors.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { oneOfOneImageAbi, oneOfOneImageFactoryAbi, seriesImageAbi, seriesImageFactoryAbi, abxMetadataRendererAbi } from './abi/index.js';
|
|
2
|
-
import { resolveFactory, resolveSeriesFactory, resolveRenderer, resolveSeriesCodeFactory, resolveSeedSource } from './deployments.js';
|
|
3
|
-
import { predictRenderer, predictSeedSource } from './create2.js';
|
|
4
|
-
import { deployFactory, deploySeriesFactory, deployRenderer, deploySeriesCodeFactory, deploySeedSource } from './deploy.js';
|
|
1
|
+
import { oneOfOneImageAbi, oneOfOneImageFactoryAbi, seriesImageAbi, seriesImageFactoryAbi, abxMetadataRendererAbi, oneOfOneEditionAbi, oneOfOneEditionFactoryAbi, editionImageAbi, editionImageFactoryAbi, } from './abi/index.js';
|
|
2
|
+
import { resolveFactory, resolveSeriesFactory, resolveRenderer, resolveSeriesCodeFactory, resolveSeedSource, resolveOneOfOneEditionFactory, resolveEditionFactory, resolveEditionCodeFactory, } from './deployments.js';
|
|
3
|
+
import { predictRenderer, predictSeedSource, predictOneOfOneEditionFactory, predictEditionFactory } from './create2.js';
|
|
4
|
+
import { deployFactory, deploySeriesFactory, deployRenderer, deploySeriesCodeFactory, deploySeedSource, deployOneOfOneEditionFactory, deployEditionFactory, deployEditionCodeFactory, } from './deploy.js';
|
|
5
5
|
import { discoverDeployBlock } from './reconstruct.js';
|
|
6
6
|
import { AnchorUnavailableError } from './errors.js';
|
|
7
7
|
// ── the canonical 1/1 clone factory ───────────────────────────────────────────
|
|
@@ -196,6 +196,172 @@ export async function ensureSeriesCodeFactory(publicClient, send, opts) {
|
|
|
196
196
|
});
|
|
197
197
|
return r.factory;
|
|
198
198
|
}
|
|
199
|
+
// ── ERC-1155 editions: the three edition trust anchors ────────────────────────
|
|
200
|
+
//
|
|
201
|
+
// `IAbxEditionMint`'s selector-as-interfaceId (`mint(address,uint256,uint256)`, a
|
|
202
|
+
// single-function interface, per ERC-165 convention) — verified via `cast sig
|
|
203
|
+
// "mint(address,uint256,uint256)"` → `0x156e29f6`. Every current-build edition implementation
|
|
204
|
+
// advertises both this AND ERC-1155 itself (`0xd9b67a26`) via `supportsInterface`.
|
|
205
|
+
const EDITION_MINT_INTERFACE_ID = '0x156e29f6';
|
|
206
|
+
const ERC1155_INTERFACE_ID = '0xd9b67a26';
|
|
207
|
+
/** Is the deployed 1/1-edition factory this build's version? Reads its implementation and probes
|
|
208
|
+
* the newest capabilities the current implementation exposes: ERC-165 support for ERC-1155
|
|
209
|
+
* itself AND the edition mint primitive (`IAbxEditionMint`). A stale/incompatible impl fails
|
|
210
|
+
* either probe. (Bump these to the newest capability with each impl change — mirrors {@link
|
|
211
|
+
* isCurrentFactory}'s style.) */
|
|
212
|
+
export async function isCurrentOneOfOneEditionFactory(publicClient, factory) {
|
|
213
|
+
try {
|
|
214
|
+
const impl = (await publicClient.readContract({
|
|
215
|
+
address: factory,
|
|
216
|
+
abi: oneOfOneEditionFactoryAbi,
|
|
217
|
+
functionName: 'implementation',
|
|
218
|
+
}));
|
|
219
|
+
const [isErc1155, isEditionMint] = await Promise.all([
|
|
220
|
+
publicClient.readContract({ address: impl, abi: oneOfOneEditionAbi, functionName: 'supportsInterface', args: [ERC1155_INTERFACE_ID] }),
|
|
221
|
+
publicClient.readContract({ address: impl, abi: oneOfOneEditionAbi, functionName: 'supportsInterface', args: [EDITION_MINT_INTERFACE_ID] }),
|
|
222
|
+
]);
|
|
223
|
+
return Boolean(isErc1155) && Boolean(isEditionMint);
|
|
224
|
+
}
|
|
225
|
+
catch {
|
|
226
|
+
return false;
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
/**
|
|
230
|
+
* Get (or deploy) the chain's canonical 1/1-edition clone factory — the trust anchor for a
|
|
231
|
+
* priced open/limited edition of a single artwork. The edition twin of {@link ensureFactory},
|
|
232
|
+
* but — because `OneOfOneEditionFactory` is CREATE2-deterministic (see `create2.ts`'s
|
|
233
|
+
* class-level dev note), unlike the 721 1/1 factory's own bootstrap path — this one ALSO
|
|
234
|
+
* self-heals to the predicted address, mirroring {@link ensureRenderer}'s style.
|
|
235
|
+
*/
|
|
236
|
+
export async function ensureOneOfOneEditionFactory(publicClient, send, opts) {
|
|
237
|
+
const notify = opts.onEvent ?? (() => { });
|
|
238
|
+
const known = resolveOneOfOneEditionFactory(opts.chainId, opts.override);
|
|
239
|
+
if (known) {
|
|
240
|
+
const code = await publicClient.getCode({ address: known });
|
|
241
|
+
if (code && code !== '0x') {
|
|
242
|
+
if (await isCurrentOneOfOneEditionFactory(publicClient, known)) {
|
|
243
|
+
notify({ anchor: 'one-of-one-edition-factory', kind: 'resolved', address: known });
|
|
244
|
+
return known;
|
|
245
|
+
}
|
|
246
|
+
if (!opts.allowBootstrap)
|
|
247
|
+
throw new AnchorUnavailableError('one-of-one-edition-factory', 'stale-version', known);
|
|
248
|
+
notify({ anchor: 'one-of-one-edition-factory', kind: 'stale', address: known, reason: 'stale-version' });
|
|
249
|
+
}
|
|
250
|
+
else {
|
|
251
|
+
if (!opts.allowBootstrap)
|
|
252
|
+
throw new AnchorUnavailableError('one-of-one-edition-factory', 'no-code', known);
|
|
253
|
+
notify({ anchor: 'one-of-one-edition-factory', kind: 'stale', address: known, reason: 'no-code' });
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
const predicted = predictOneOfOneEditionFactory();
|
|
257
|
+
if (!known || known.toLowerCase() !== predicted.toLowerCase()) {
|
|
258
|
+
const pcode = await publicClient.getCode({ address: predicted });
|
|
259
|
+
if (pcode && pcode !== '0x' && (await isCurrentOneOfOneEditionFactory(publicClient, predicted))) {
|
|
260
|
+
notify({ anchor: 'one-of-one-edition-factory', kind: 'canonical', address: predicted });
|
|
261
|
+
return predicted;
|
|
262
|
+
}
|
|
263
|
+
}
|
|
264
|
+
if (!known && !opts.allowBootstrap)
|
|
265
|
+
throw new AnchorUnavailableError('one-of-one-edition-factory', 'not-configured');
|
|
266
|
+
notify({ anchor: 'one-of-one-edition-factory', kind: 'deploying' });
|
|
267
|
+
const { factory, implementation, txHash } = await deployOneOfOneEditionFactory(send, publicClient);
|
|
268
|
+
notify({ anchor: 'one-of-one-edition-factory', kind: 'deployed', address: factory, implementation, txHash, inManifest: false });
|
|
269
|
+
return factory;
|
|
270
|
+
}
|
|
271
|
+
/** Is the deployed edition-image factory this build's version? Same two-probe shape as {@link
|
|
272
|
+
* isCurrentOneOfOneEditionFactory} (ERC-1155 + `IAbxEditionMint`) — `MaxInvocations`'s id-space
|
|
273
|
+
* cap isn't a distinguishing probe here since it's shared, unchanged, with the 721 Series
|
|
274
|
+
* factory (see `reconstruct.ts`'s `contractType` fold for that same reasoning). */
|
|
275
|
+
export async function isCurrentEditionFactory(publicClient, factory) {
|
|
276
|
+
try {
|
|
277
|
+
const impl = (await publicClient.readContract({
|
|
278
|
+
address: factory,
|
|
279
|
+
abi: editionImageFactoryAbi,
|
|
280
|
+
functionName: 'implementation',
|
|
281
|
+
}));
|
|
282
|
+
const [isErc1155, isEditionMint] = await Promise.all([
|
|
283
|
+
publicClient.readContract({ address: impl, abi: editionImageAbi, functionName: 'supportsInterface', args: [ERC1155_INTERFACE_ID] }),
|
|
284
|
+
publicClient.readContract({ address: impl, abi: editionImageAbi, functionName: 'supportsInterface', args: [EDITION_MINT_INTERFACE_ID] }),
|
|
285
|
+
]);
|
|
286
|
+
return Boolean(isErc1155) && Boolean(isEditionMint);
|
|
287
|
+
}
|
|
288
|
+
catch {
|
|
289
|
+
return false;
|
|
290
|
+
}
|
|
291
|
+
}
|
|
292
|
+
/** Get (or deploy) the chain's `EditionImageFactory` — the multi-artwork edition trust anchor,
|
|
293
|
+
* the sibling of {@link ensureSeriesFactory}. CREATE2-deterministic, so it self-heals to its
|
|
294
|
+
* predicted address exactly like {@link ensureOneOfOneEditionFactory}. */
|
|
295
|
+
export async function ensureEditionFactory(publicClient, send, opts) {
|
|
296
|
+
const notify = opts.onEvent ?? (() => { });
|
|
297
|
+
const known = resolveEditionFactory(opts.chainId, opts.override);
|
|
298
|
+
if (known) {
|
|
299
|
+
const code = await publicClient.getCode({ address: known });
|
|
300
|
+
if (code && code !== '0x') {
|
|
301
|
+
if (await isCurrentEditionFactory(publicClient, known)) {
|
|
302
|
+
notify({ anchor: 'edition-factory', kind: 'resolved', address: known });
|
|
303
|
+
return known;
|
|
304
|
+
}
|
|
305
|
+
if (!opts.allowBootstrap)
|
|
306
|
+
throw new AnchorUnavailableError('edition-factory', 'stale-version', known);
|
|
307
|
+
notify({ anchor: 'edition-factory', kind: 'stale', address: known, reason: 'stale-version' });
|
|
308
|
+
}
|
|
309
|
+
else {
|
|
310
|
+
if (!opts.allowBootstrap)
|
|
311
|
+
throw new AnchorUnavailableError('edition-factory', 'no-code', known);
|
|
312
|
+
notify({ anchor: 'edition-factory', kind: 'stale', address: known, reason: 'no-code' });
|
|
313
|
+
}
|
|
314
|
+
}
|
|
315
|
+
const predicted = predictEditionFactory();
|
|
316
|
+
if (!known || known.toLowerCase() !== predicted.toLowerCase()) {
|
|
317
|
+
const pcode = await publicClient.getCode({ address: predicted });
|
|
318
|
+
if (pcode && pcode !== '0x' && (await isCurrentEditionFactory(publicClient, predicted))) {
|
|
319
|
+
notify({ anchor: 'edition-factory', kind: 'canonical', address: predicted });
|
|
320
|
+
return predicted;
|
|
321
|
+
}
|
|
322
|
+
}
|
|
323
|
+
if (!known && !opts.allowBootstrap)
|
|
324
|
+
throw new AnchorUnavailableError('edition-factory', 'not-configured');
|
|
325
|
+
notify({ anchor: 'edition-factory', kind: 'deploying' });
|
|
326
|
+
const { factory, implementation, txHash } = await deployEditionFactory(send, publicClient);
|
|
327
|
+
notify({ anchor: 'edition-factory', kind: 'deployed', address: factory, implementation, txHash, inManifest: false });
|
|
328
|
+
return factory;
|
|
329
|
+
}
|
|
330
|
+
/** The code-project EDITION trust anchor: use the canonical factory, else deploy one (a sandbox /
|
|
331
|
+
* fresh chain — three libraries linked in-flight; see {@link deployEditionCodeFactory}). Exactly
|
|
332
|
+
* {@link ensureSeriesCodeFactory}'s stance, extended to a third library: no version probe (a
|
|
333
|
+
* configured factory with code is always accepted) and no CREATE2 self-heal (its bytecode is
|
|
334
|
+
* link-time-linked, so nothing about its address is predictable). */
|
|
335
|
+
export async function ensureEditionCodeFactory(publicClient, send, opts) {
|
|
336
|
+
const notify = opts.onEvent ?? (() => { });
|
|
337
|
+
const known = resolveEditionCodeFactory(opts.chainId, opts.override);
|
|
338
|
+
if (known) {
|
|
339
|
+
const code = await publicClient.getCode({ address: known });
|
|
340
|
+
if (code && code !== '0x') {
|
|
341
|
+
notify({ anchor: 'edition-code-factory', kind: 'resolved', address: known });
|
|
342
|
+
return known;
|
|
343
|
+
}
|
|
344
|
+
if (!opts.allowBootstrap)
|
|
345
|
+
throw new AnchorUnavailableError('edition-code-factory', 'no-code', known);
|
|
346
|
+
notify({ anchor: 'edition-code-factory', kind: 'stale', address: known, reason: 'no-code' });
|
|
347
|
+
}
|
|
348
|
+
if (!known && !opts.allowBootstrap)
|
|
349
|
+
throw new AnchorUnavailableError('edition-code-factory', 'not-configured');
|
|
350
|
+
notify({ anchor: 'edition-code-factory', kind: 'deploying' });
|
|
351
|
+
const r = await deployEditionCodeFactory(send, publicClient);
|
|
352
|
+
notify({
|
|
353
|
+
anchor: 'edition-code-factory',
|
|
354
|
+
kind: 'deployed',
|
|
355
|
+
address: r.factory,
|
|
356
|
+
implementation: r.implementation,
|
|
357
|
+
paramsLib: r.paramsLib,
|
|
358
|
+
codeLib: r.codeLib,
|
|
359
|
+
editionLib: r.editionLib,
|
|
360
|
+
txHash: r.txHash,
|
|
361
|
+
inManifest: false,
|
|
362
|
+
});
|
|
363
|
+
return r.factory;
|
|
364
|
+
}
|
|
199
365
|
// ── the canonical seed source ─────────────────────────────────────────────────
|
|
200
366
|
/** The canonical seed source — a clean keyless singleton (like the renderer / chunk store / minter):
|
|
201
367
|
* single-profile, so CREATE2 lands at THE canonical address on any chain. Resolves from the manifest,
|
|
@@ -225,19 +391,32 @@ export async function ensureSeedSource(publicClient, send, opts) {
|
|
|
225
391
|
// ── protocol reads: which factory, and from when ──────────────────────────────
|
|
226
392
|
/**
|
|
227
393
|
* Pick the canonical factory for a clone being added. An explicit override or a stored value
|
|
228
|
-
* wins; otherwise probe the chain's known factories
|
|
229
|
-
*
|
|
394
|
+
* wins; otherwise probe ALL SIX of the chain's known factories — the three 721 anchors (SeriesCode,
|
|
395
|
+
* Series, 1/1) and the three ERC-1155 edition anchors (EditionCode, EditionImage, OneOfOneEdition) —
|
|
396
|
+
* for the ONE whose `isAbxClone` confirms this address, so `abx add` of any project records the RIGHT
|
|
230
397
|
* factory and canonicity actually verifies. Without this, `add` defaulted to the 1/1 factory, so a
|
|
231
398
|
* code/Series clone read `canonical: unverified` (the check ran against the wrong factory). One
|
|
232
399
|
* multicall, only when the factory isn't already known; falls back to the 1/1 default on any miss/RPC
|
|
233
400
|
* error (`isAbxClone` shares a selector across all factory ABIs, so one ABI probes them all).
|
|
401
|
+
*
|
|
402
|
+
* The edition anchors were missing here when the 1155 lane shipped, and the failure was worse than
|
|
403
|
+
* "unverified": the 1/1 fallback answers `isAbxClone` = **false**, so every genuinely-canonical
|
|
404
|
+
* edition read `canonical: NO` — a confident wrong answer about the trust anchor, on the one signal
|
|
405
|
+
* platforms allowlist against. Any new token family MUST be added to this list in the same change.
|
|
234
406
|
*/
|
|
235
407
|
export async function detectCanonicalFactory(publicClient, address, opts) {
|
|
236
408
|
if (opts.override)
|
|
237
409
|
return opts.override;
|
|
238
410
|
if (opts.stored)
|
|
239
411
|
return opts.stored;
|
|
240
|
-
const known = [
|
|
412
|
+
const known = [
|
|
413
|
+
resolveSeriesCodeFactory(opts.chainId),
|
|
414
|
+
resolveSeriesFactory(opts.chainId),
|
|
415
|
+
resolveFactory(opts.chainId),
|
|
416
|
+
resolveEditionCodeFactory(opts.chainId),
|
|
417
|
+
resolveEditionFactory(opts.chainId),
|
|
418
|
+
resolveOneOfOneEditionFactory(opts.chainId),
|
|
419
|
+
].filter((f) => !!f);
|
|
241
420
|
const candidates = [...new Set(known)];
|
|
242
421
|
if (candidates.length <= 1)
|
|
243
422
|
return candidates[0]; // nothing to disambiguate
|
package/dist/anchors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"anchors.js","sourceRoot":"","sources":["../src/anchors.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"anchors.js","sourceRoot":"","sources":["../src/anchors.ts"],"names":[],"mappings":"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"}
|
package/dist/create2.d.ts
CHANGED
|
@@ -21,6 +21,10 @@ export declare const ABX_SALT: {
|
|
|
21
21
|
readonly fixedPriceMinter: "abx.minter.fixed-price.v1";
|
|
22
22
|
readonly seedSource: "abx.seed-source.v1";
|
|
23
23
|
readonly generator: "abx.generator.v1";
|
|
24
|
+
readonly oneOfOneEditionFactory: "abx.one-of-one-edition-factory.v1";
|
|
25
|
+
readonly editionFactory: "abx.edition-factory.v1";
|
|
26
|
+
readonly editionCodeFactory: "abx.edition-code-factory.v1";
|
|
27
|
+
readonly fixedPriceMinter1155: "abx.fixed-price-minter-1155.v1";
|
|
24
28
|
};
|
|
25
29
|
/** The 32-byte salt a CREATE2 deploy uses (`keccak256` of the canonical string). */
|
|
26
30
|
export declare const saltHash: (salt: string) => Hex;
|
|
@@ -39,4 +43,13 @@ export declare const predictFixedPriceMinter: () => Address;
|
|
|
39
43
|
* (`DeploySeedSource.s.sol`) so it compiles at the default profile — bundling it with the
|
|
40
44
|
* SeriesCode factory's `clone-impl` unit yields a different, non-canonical bytecode + address. */
|
|
41
45
|
export declare const predictSeedSource: () => Address;
|
|
46
|
+
/** The canonical (cross-chain-identical) `OneOfOneEditionFactory` address for the current
|
|
47
|
+
* bytecode — the 1/1-edition trust anchor. */
|
|
48
|
+
export declare const predictOneOfOneEditionFactory: () => Address;
|
|
49
|
+
/** The canonical (cross-chain-identical) `EditionImageFactory` address for the current
|
|
50
|
+
* bytecode — the multi-artwork edition trust anchor. */
|
|
51
|
+
export declare const predictEditionFactory: () => Address;
|
|
52
|
+
/** The canonical (cross-chain-identical) `AbxFixedPriceMinter1155` address for the current
|
|
53
|
+
* bytecode — the shared, ownerless edition sale singleton. */
|
|
54
|
+
export declare const predictFixedPriceMinter1155: () => Address;
|
|
42
55
|
//# sourceMappingURL=create2.d.ts.map
|
package/dist/create2.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create2.d.ts","sourceRoot":"","sources":["../src/create2.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiD,KAAK,OAAO,EAAE,KAAK,GAAG,EAAC,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"create2.d.ts","sourceRoot":"","sources":["../src/create2.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiD,KAAK,OAAO,EAAE,KAAK,GAAG,EAAC,MAAM,MAAM,CAAC;AAW5F;;;;;;;;GAQG;AAEH,wGAAwG;AACxG,eAAO,MAAM,aAAa,EAAE,OAAsD,CAAC;AAEnF;qGACqG;AACrG,eAAO,MAAM,QAAQ;;;;;;;;;;;;;CAiBX,CAAC;AAEX,oFAAoF;AACpF,eAAO,MAAM,QAAQ,GAAI,MAAM,MAAM,KAAG,GAA+B,CAAC;AAExE;6CAC6C;AAC7C,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,OAAO,CAE1E;AAED,0GAA0G;AAC1G,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,GAAG,CAEhE;AAED,4FAA4F;AAC5F,eAAO,MAAM,iBAAiB,QAAO,OAA4E,CAAC;AAElH,kGAAkG;AAClG,eAAO,MAAM,eAAe,QAAO,OAAgF,CAAC;AAEpH,kGAAkG;AAClG,eAAO,MAAM,uBAAuB,QAAO,OACoC,CAAC;AAEhF;;mGAEmG;AACnG,eAAO,MAAM,iBAAiB,QAAO,OAA4E,CAAC;AAclH;+CAC+C;AAC/C,eAAO,MAAM,6BAA6B,QAAO,OACuC,CAAC;AAEzF;yDACyD;AACzD,eAAO,MAAM,qBAAqB,QAAO,OACoC,CAAC;AAE9E;+DAC+D;AAC/D,eAAO,MAAM,2BAA2B,QAAO,OACwC,CAAC"}
|
package/dist/create2.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { concat, getContractAddress, keccak256, toBytes } from 'viem';
|
|
2
|
-
import { abxChunkStoreBytecode, abxFixedPriceMinterBytecode, abxMetadataRendererBytecode, abxSeedSourceBytecode, } from './abi/index.js';
|
|
2
|
+
import { abxChunkStoreBytecode, abxFixedPriceMinterBytecode, abxFixedPriceMinter1155Bytecode, abxMetadataRendererBytecode, abxSeedSourceBytecode, editionImageFactoryBytecode, oneOfOneEditionFactoryBytecode, } from './abi/index.js';
|
|
3
3
|
/**
|
|
4
4
|
* Keyless CREATE2 deployment — the TS twin of `contracts/script/AbxSalts.sol`.
|
|
5
5
|
*
|
|
@@ -22,6 +22,14 @@ export const ABX_SALT = {
|
|
|
22
22
|
fixedPriceMinter: 'abx.minter.fixed-price.v1',
|
|
23
23
|
seedSource: 'abx.seed-source.v1',
|
|
24
24
|
generator: 'abx.generator.v1',
|
|
25
|
+
// ERC-1155 editions (twins of the above; naming follows the parity plan verbatim). Listed here
|
|
26
|
+
// for parity with `AbxSalts.sol` even though `editionCodeFactory`'s salt (like
|
|
27
|
+
// `seriesCodeFactory`'s above) is never fed to `predictCreate2Address` — see the class-level
|
|
28
|
+
// dev note below on why the lib-linked factory has no SDK-side prediction.
|
|
29
|
+
oneOfOneEditionFactory: 'abx.one-of-one-edition-factory.v1',
|
|
30
|
+
editionFactory: 'abx.edition-factory.v1',
|
|
31
|
+
editionCodeFactory: 'abx.edition-code-factory.v1',
|
|
32
|
+
fixedPriceMinter1155: 'abx.fixed-price-minter-1155.v1',
|
|
25
33
|
};
|
|
26
34
|
/** The 32-byte salt a CREATE2 deploy uses (`keccak256` of the canonical string). */
|
|
27
35
|
export const saltHash = (salt) => keccak256(toBytes(salt));
|
|
@@ -44,4 +52,24 @@ export const predictFixedPriceMinter = () => predictCreate2Address(ABX_SALT.fixe
|
|
|
44
52
|
* (`DeploySeedSource.s.sol`) so it compiles at the default profile — bundling it with the
|
|
45
53
|
* SeriesCode factory's `clone-impl` unit yields a different, non-canonical bytecode + address. */
|
|
46
54
|
export const predictSeedSource = () => predictCreate2Address(ABX_SALT.seedSource, abxSeedSourceBytecode);
|
|
55
|
+
// ── ERC-1155 editions ──────────────────────────────────────────────────────────
|
|
56
|
+
//
|
|
57
|
+
// `DeployOneOfOneEdition.s.sol` / `DeployEdition.s.sol` / `DeployMinter1155.s.sol` each deploy
|
|
58
|
+
// their contract with a fixed `AbxSalts` salt and NO constructor args, so — exactly like the
|
|
59
|
+
// renderer/chunk-store/1155-minter-free singletons above — the SDK's own bytecode (from
|
|
60
|
+
// `generated.ts`) is sufficient to predict the address before any deploy. `EditionCodeFactory` is
|
|
61
|
+
// the one exception: its implementation `delegatecall`s three externally-linked libraries
|
|
62
|
+
// (`AbxParamsLib`/`AbxCodeLib`/`AbxEditionLib`), so its FINAL initcode embeds those libraries'
|
|
63
|
+
// deployed addresses — which are nonce-dependent, not fixed by source alone — and is therefore
|
|
64
|
+
// not something the SDK can predict ahead of a deploy. Mirrors exactly why `SeriesCodeFactory` has
|
|
65
|
+
// no `predict*` here either (see `deploySeriesCodeFactory`'s own doc comment in `deploy.ts`).
|
|
66
|
+
/** The canonical (cross-chain-identical) `OneOfOneEditionFactory` address for the current
|
|
67
|
+
* bytecode — the 1/1-edition trust anchor. */
|
|
68
|
+
export const predictOneOfOneEditionFactory = () => predictCreate2Address(ABX_SALT.oneOfOneEditionFactory, oneOfOneEditionFactoryBytecode);
|
|
69
|
+
/** The canonical (cross-chain-identical) `EditionImageFactory` address for the current
|
|
70
|
+
* bytecode — the multi-artwork edition trust anchor. */
|
|
71
|
+
export const predictEditionFactory = () => predictCreate2Address(ABX_SALT.editionFactory, editionImageFactoryBytecode);
|
|
72
|
+
/** The canonical (cross-chain-identical) `AbxFixedPriceMinter1155` address for the current
|
|
73
|
+
* bytecode — the shared, ownerless edition sale singleton. */
|
|
74
|
+
export const predictFixedPriceMinter1155 = () => predictCreate2Address(ABX_SALT.fixedPriceMinter1155, abxFixedPriceMinter1155Bytecode);
|
|
47
75
|
//# sourceMappingURL=create2.js.map
|
package/dist/create2.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create2.js","sourceRoot":"","sources":["../src/create2.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAE,kBAAkB,EAAE,SAAS,EAAE,OAAO,EAAyB,MAAM,MAAM,CAAC;AAC5F,OAAO,EACL,qBAAqB,EACrB,2BAA2B,EAC3B,2BAA2B,EAC3B,qBAAqB,
|
|
1
|
+
{"version":3,"file":"create2.js","sourceRoot":"","sources":["../src/create2.ts"],"names":[],"mappings":"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"}
|