@artblocks/abx-cli 0.1.0-alpha.4 → 0.1.0-alpha.41
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/CHANGELOG.md +161 -0
- package/assets/renderer-scaffold/README.md +41 -11
- package/assets/renderer-scaffold/foundry.toml +5 -0
- package/assets/renderer-scaffold/remappings.txt +1 -1
- package/assets/renderer-scaffold/script/DeployHooks.s.sol +24 -0
- package/assets/renderer-scaffold/script/Preview.s.sol +99 -0
- package/assets/renderer-scaffold/src/MyHooks.sol +20 -0
- package/assets/renderer-scaffold/src/MyRenderer.sol +4 -4
- package/assets/renderer-scaffold/src/MyTraits.sol +2 -2
- package/assets/renderer-scaffold/test/MyRenderer.t.sol +60 -3
- package/dist/bin.d.ts +26 -0
- package/dist/bin.d.ts.map +1 -0
- package/dist/bin.js +63 -0
- package/dist/bin.js.map +1 -0
- package/dist/capabilities.d.ts +99 -0
- package/dist/capabilities.d.ts.map +1 -0
- package/dist/capabilities.js +144 -0
- package/dist/capabilities.js.map +1 -0
- package/dist/commands/auth.d.ts +54 -0
- package/dist/commands/auth.d.ts.map +1 -0
- package/dist/commands/auth.js +447 -0
- package/dist/commands/auth.js.map +1 -0
- package/dist/commands/deploy.d.ts +242 -0
- package/dist/commands/deploy.d.ts.map +1 -0
- package/dist/commands/deploy.js +5429 -0
- package/dist/commands/deploy.js.map +1 -0
- package/dist/commands/feedback.d.ts +7 -0
- package/dist/commands/feedback.d.ts.map +1 -0
- package/dist/commands/feedback.js +147 -0
- package/dist/commands/feedback.js.map +1 -0
- package/dist/commands/maintenance.d.ts +4 -0
- package/dist/commands/maintenance.d.ts.map +1 -0
- package/dist/commands/maintenance.js +114 -0
- package/dist/commands/maintenance.js.map +1 -0
- package/dist/commands/project.d.ts +429 -0
- package/dist/commands/project.d.ts.map +1 -0
- package/dist/commands/project.js +1720 -0
- package/dist/commands/project.js.map +1 -0
- package/dist/commands/reads.d.ts +85 -0
- package/dist/commands/reads.d.ts.map +1 -0
- package/dist/commands/reads.js +868 -0
- package/dist/commands/reads.js.map +1 -0
- package/dist/commands/scaffold.d.ts +89 -0
- package/dist/commands/scaffold.d.ts.map +1 -0
- package/dist/commands/scaffold.js +738 -0
- package/dist/commands/scaffold.js.map +1 -0
- package/dist/commands/service.d.ts +67 -0
- package/dist/commands/service.d.ts.map +1 -0
- package/dist/commands/service.js +748 -0
- package/dist/commands/service.js.map +1 -0
- package/dist/commands/storage.d.ts +51 -0
- package/dist/commands/storage.d.ts.map +1 -0
- package/dist/commands/storage.js +399 -0
- package/dist/commands/storage.js.map +1 -0
- package/dist/commands/submit-app.d.ts +102 -0
- package/dist/commands/submit-app.d.ts.map +1 -0
- package/dist/commands/submit-app.js +622 -0
- package/dist/commands/submit-app.js.map +1 -0
- package/dist/config.d.ts +105 -2
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +351 -12
- package/dist/config.js.map +1 -1
- package/dist/conformance.d.ts +31 -0
- package/dist/conformance.d.ts.map +1 -0
- package/dist/conformance.js +390 -0
- package/dist/conformance.js.map +1 -0
- package/dist/contract-read-error.d.ts +5 -0
- package/dist/contract-read-error.d.ts.map +1 -0
- package/dist/contract-read-error.js +37 -0
- package/dist/contract-read-error.js.map +1 -0
- package/dist/deploy-plan.d.ts +150 -0
- package/dist/deploy-plan.d.ts.map +1 -0
- package/dist/deploy-plan.js +31 -0
- package/dist/deploy-plan.js.map +1 -0
- package/dist/deps.d.ts +6 -39
- package/dist/deps.d.ts.map +1 -1
- package/dist/deps.js +4 -68
- package/dist/deps.js.map +1 -1
- package/dist/errors.d.ts +20 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +25 -0
- package/dist/errors.js.map +1 -0
- package/dist/flag-allowlists.d.ts +53 -0
- package/dist/flag-allowlists.d.ts.map +1 -0
- package/dist/flag-allowlists.js +184 -0
- package/dist/flag-allowlists.js.map +1 -0
- package/dist/flags.d.ts +47 -0
- package/dist/flags.d.ts.map +1 -1
- package/dist/flags.js +125 -1
- package/dist/flags.js.map +1 -1
- package/dist/jsonout.d.ts +37 -0
- package/dist/jsonout.d.ts.map +1 -0
- package/dist/jsonout.js +79 -0
- package/dist/jsonout.js.map +1 -0
- package/dist/kind.d.ts +57 -0
- package/dist/kind.d.ts.map +1 -0
- package/dist/kind.js +122 -0
- package/dist/kind.js.map +1 -0
- package/dist/main.js +786 -4838
- package/dist/main.js.map +1 -1
- package/dist/mintpage.d.ts +17 -2
- package/dist/mintpage.d.ts.map +1 -1
- package/dist/mintpage.js +241 -54
- package/dist/mintpage.js.map +1 -1
- package/dist/output.d.ts +179 -0
- package/dist/output.d.ts.map +1 -0
- package/dist/output.js +780 -0
- package/dist/output.js.map +1 -0
- package/dist/ownerops.d.ts +381 -57
- package/dist/ownerops.d.ts.map +1 -1
- package/dist/ownerops.js +2014 -359
- package/dist/ownerops.js.map +1 -1
- package/dist/preview.d.ts +23 -5
- package/dist/preview.d.ts.map +1 -1
- package/dist/preview.js +95 -43
- package/dist/preview.js.map +1 -1
- package/dist/prompt.d.ts +17 -0
- package/dist/prompt.d.ts.map +1 -0
- package/dist/prompt.js +19 -0
- package/dist/prompt.js.map +1 -0
- package/dist/provision.d.ts +3 -13
- package/dist/provision.d.ts.map +1 -1
- package/dist/provision.js +19 -21
- package/dist/provision.js.map +1 -1
- package/dist/remote.d.ts +157 -52
- package/dist/remote.d.ts.map +1 -1
- package/dist/remote.js +435 -46
- package/dist/remote.js.map +1 -1
- package/dist/riskgate.d.ts +62 -0
- package/dist/riskgate.d.ts.map +1 -0
- package/dist/riskgate.js +234 -0
- package/dist/riskgate.js.map +1 -0
- package/dist/scaffold.d.ts +12 -0
- package/dist/scaffold.d.ts.map +1 -0
- package/dist/scaffold.js +56 -0
- package/dist/scaffold.js.map +1 -0
- package/dist/schema.d.ts +36 -1
- package/dist/schema.d.ts.map +1 -1
- package/dist/schema.js +121 -26
- package/dist/schema.js.map +1 -1
- package/dist/script-chunks.d.ts +8 -0
- package/dist/script-chunks.d.ts.map +1 -0
- package/dist/script-chunks.js +35 -0
- package/dist/script-chunks.js.map +1 -0
- package/dist/served.d.ts +30 -0
- package/dist/served.d.ts.map +1 -0
- package/dist/served.js +112 -0
- package/dist/served.js.map +1 -0
- package/dist/signer.d.ts +13 -0
- package/dist/signer.d.ts.map +1 -1
- package/dist/signer.js +84 -15
- package/dist/signer.js.map +1 -1
- package/dist/update-check.d.ts +86 -5
- package/dist/update-check.d.ts.map +1 -1
- package/dist/update-check.js +161 -20
- package/dist/update-check.js.map +1 -1
- package/package.json +13 -12
- package/skill/SKILL.md +181 -347
- package/skill/agents/openai.yaml +4 -0
- package/skill/reference/capabilities.md +188 -0
- package/skill/reference/code.md +220 -0
- package/skill/reference/creator-token.md +94 -0
- package/skill/reference/deploy.md +174 -0
- package/skill/reference/diagnose.md +178 -0
- package/skill/reference/hosting.md +186 -93
- package/skill/reference/operate.md +220 -0
- package/skill/reference/services.md +121 -0
- package/skill/reference/setup.md +154 -36
- package/assets/renderer-scaffold/src/interfaces/IAbxFieldRenderer.sol +0 -32
- package/assets/renderer-scaffold/src/interfaces/IAbxParams.sol +0 -26
- package/dist/inspect.d.ts +0 -48
- package/dist/inspect.d.ts.map +0 -1
- package/dist/inspect.js +0 -184
- package/dist/inspect.js.map +0 -1
- package/dist/migrate.d.ts +0 -65
- package/dist/migrate.d.ts.map +0 -1
- package/dist/migrate.js +0 -180
- package/dist/migrate.js.map +0 -1
- package/dist/onchain-uri.d.ts +0 -97
- package/dist/onchain-uri.d.ts.map +0 -1
- package/dist/onchain-uri.js +0 -243
- package/dist/onchain-uri.js.map +0 -1
- package/dist/upload.d.ts +0 -28
- package/dist/upload.d.ts.map +0 -1
- package/dist/upload.js +0 -41
- package/dist/upload.js.map +0 -1
- package/skill/reference/code-projects.md +0 -246
- package/skill/reference/operating.md +0 -116
- package/skill/reference/troubleshooting.md +0 -28
|
@@ -0,0 +1,429 @@
|
|
|
1
|
+
import { type Address, type PublicClient, type MetadataField } from '@artblocks/abx-sdk';
|
|
2
|
+
import { type Flags } from '../flags.js';
|
|
3
|
+
import { type RemoteTarget } from '../remote.js';
|
|
4
|
+
export declare function cmdPredict(flags: Flags): Promise<void>;
|
|
5
|
+
export declare function cmdAdd(address: Address | undefined, flags: Flags): Promise<void>;
|
|
6
|
+
export declare function cmdIndex(address: Address | undefined, flags: Flags): Promise<void>;
|
|
7
|
+
export declare function cmdVerify(address: Address | undefined, flags: Flags): Promise<void>;
|
|
8
|
+
export type AvailabilityStatus = 'available' | 'partial' | 'unavailable' | 'unknown';
|
|
9
|
+
export interface AvailabilityVerdict {
|
|
10
|
+
status: AvailabilityStatus;
|
|
11
|
+
note: string;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Pure by design — every caller (`cmdVerifyBody`'s local lane and `cmdVerifyRemote`'s hosted lane)
|
|
15
|
+
* feeds it facts it already gathered rather than each re-deriving its own verdict, so the two
|
|
16
|
+
* lanes' JSON payloads read the same word for the same situation.
|
|
17
|
+
*
|
|
18
|
+
* `isCode` selects which signal decides the verdict: a code project's render presence
|
|
19
|
+
* (`minted`/`present`), or — for everything else — whether a byte-check actually ran
|
|
20
|
+
* (`anyCheck`) versus a locator this run could not independently re-hash (`unrecomputablePointers`).
|
|
21
|
+
* The two signals are never combined into one number on purpose: "3 of 5 renders present" and "2
|
|
22
|
+
* locator commitments unconfirmed" are different facts about different projects, and mixing them
|
|
23
|
+
* would produce a verdict that answers neither question honestly.
|
|
24
|
+
*/
|
|
25
|
+
export declare function computeAvailability(opts: {
|
|
26
|
+
isCode: boolean;
|
|
27
|
+
minted: number;
|
|
28
|
+
present: number;
|
|
29
|
+
anyCheck: boolean;
|
|
30
|
+
unrecomputablePointers: number;
|
|
31
|
+
}): AvailabilityVerdict;
|
|
32
|
+
/**
|
|
33
|
+
* Does this token's `image` field carry a locator commitment `verifyProject` never produced a
|
|
34
|
+
* check for? Exported and pure (a plain `fields` array in, a verdict out — no chain, no indexer)
|
|
35
|
+
* so #112's three-way distinction is unit-testable directly, rather than only reachable through a
|
|
36
|
+
* full `cmdVerifyBody` run against real chain state.
|
|
37
|
+
*
|
|
38
|
+
* Returns the representation name to report (`ipfs`/`arweave`/`url`/`url-template`) when the image
|
|
39
|
+
* field is a bare locator, else `null` — including when there's no `image` field at all, which is
|
|
40
|
+
* "no commitment", a different fact from "an unrecomputable one".
|
|
41
|
+
*/
|
|
42
|
+
export declare function pointerOnlyImageCheck(fields: MetadataField[]): string | null;
|
|
43
|
+
export declare function cmdVerifyBody(address: Address, flags: Flags, emit: (p: Record<string, unknown>) => void): Promise<void>;
|
|
44
|
+
export declare function cmdVerifyRemote(address: Address, remote: RemoteTarget, emit: (p: Record<string, unknown>) => void): Promise<void>;
|
|
45
|
+
/** What {@link reportRemoteByteIntegrity} found, structured for the JSON payload as well as its own
|
|
46
|
+
* prose. `status` deliberately has a 4th value the local lane's `contentIntegrity` doesn't need:
|
|
47
|
+
* `'not-checked'` — no credential, a rejected token, an older node with no `/verify` route, or an
|
|
48
|
+
* unreachable endpoint. That is a DIFFERENT fact from `'no-commitments'` (the route answered and
|
|
49
|
+
* said there's nothing to check) and must never collapse into it — "we didn't ask" and "we asked
|
|
50
|
+
* and there was nothing" are different reasons for the same empty result. */
|
|
51
|
+
export interface RemoteByteIntegrity {
|
|
52
|
+
status: 'ok' | 'mismatch' | 'no-commitments' | 'not-checked';
|
|
53
|
+
checks: Array<{
|
|
54
|
+
tokenId: string;
|
|
55
|
+
kind: string;
|
|
56
|
+
verified: boolean;
|
|
57
|
+
}>;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* The half `abx verify --remote` was missing: do the served BYTES still hash to the on-chain
|
|
61
|
+
* commitment? Everything above it checks renders (is a thumbnail current, is it a placeholder) — a
|
|
62
|
+
* different question, and a green ✓ there was reading as "the image is correct" when the bytes could
|
|
63
|
+
* genuinely mismatch.
|
|
64
|
+
*
|
|
65
|
+
* The service is the right place to answer it: it holds both the bytes and the chain, and it already
|
|
66
|
+
* exposes exactly this check (`GET /api/project/:addr/verify`, bearer-gated because it triggers
|
|
67
|
+
* outbound fetches). When we can't reach that — no credential, or an older node — say plainly that
|
|
68
|
+
* byte integrity was NOT checked rather than leaving the ✓ above to imply it was.
|
|
69
|
+
*/
|
|
70
|
+
export declare function reportRemoteByteIntegrity(address: Address, remote: RemoteTarget, base: string): Promise<RemoteByteIntegrity>;
|
|
71
|
+
export declare const STATE_ABI: readonly [{
|
|
72
|
+
readonly type: "function";
|
|
73
|
+
readonly name: "owner";
|
|
74
|
+
readonly stateMutability: "view";
|
|
75
|
+
readonly inputs: readonly [];
|
|
76
|
+
readonly outputs: readonly [{
|
|
77
|
+
readonly type: "address";
|
|
78
|
+
}];
|
|
79
|
+
}, {
|
|
80
|
+
readonly type: "function";
|
|
81
|
+
readonly name: "totalSupply";
|
|
82
|
+
readonly stateMutability: "view";
|
|
83
|
+
readonly inputs: readonly [];
|
|
84
|
+
readonly outputs: readonly [{
|
|
85
|
+
readonly type: "uint256";
|
|
86
|
+
}];
|
|
87
|
+
}, {
|
|
88
|
+
readonly type: "function";
|
|
89
|
+
readonly name: "nextTokenId";
|
|
90
|
+
readonly stateMutability: "view";
|
|
91
|
+
readonly inputs: readonly [];
|
|
92
|
+
readonly outputs: readonly [{
|
|
93
|
+
readonly type: "uint256";
|
|
94
|
+
}];
|
|
95
|
+
}, {
|
|
96
|
+
readonly type: "function";
|
|
97
|
+
readonly name: "maxInvocations";
|
|
98
|
+
readonly stateMutability: "view";
|
|
99
|
+
readonly inputs: readonly [];
|
|
100
|
+
readonly outputs: readonly [{
|
|
101
|
+
readonly type: "uint256";
|
|
102
|
+
}];
|
|
103
|
+
}, {
|
|
104
|
+
readonly type: "function";
|
|
105
|
+
readonly name: "paused";
|
|
106
|
+
readonly stateMutability: "view";
|
|
107
|
+
readonly inputs: readonly [];
|
|
108
|
+
readonly outputs: readonly [{
|
|
109
|
+
readonly type: "bool";
|
|
110
|
+
}];
|
|
111
|
+
}, {
|
|
112
|
+
readonly type: "function";
|
|
113
|
+
readonly name: "minter";
|
|
114
|
+
readonly stateMutability: "view";
|
|
115
|
+
readonly inputs: readonly [];
|
|
116
|
+
readonly outputs: readonly [{
|
|
117
|
+
readonly type: "address";
|
|
118
|
+
}];
|
|
119
|
+
}, {
|
|
120
|
+
readonly type: "function";
|
|
121
|
+
readonly name: "primaryPayee";
|
|
122
|
+
readonly stateMutability: "view";
|
|
123
|
+
readonly inputs: readonly [];
|
|
124
|
+
readonly outputs: readonly [{
|
|
125
|
+
readonly type: "address";
|
|
126
|
+
}];
|
|
127
|
+
}, {
|
|
128
|
+
readonly type: "function";
|
|
129
|
+
readonly name: "tokenURIRenderer";
|
|
130
|
+
readonly stateMutability: "view";
|
|
131
|
+
readonly inputs: readonly [];
|
|
132
|
+
readonly outputs: readonly [{
|
|
133
|
+
readonly type: "address";
|
|
134
|
+
}];
|
|
135
|
+
}, {
|
|
136
|
+
readonly type: "function";
|
|
137
|
+
readonly name: "royaltyInfo";
|
|
138
|
+
readonly stateMutability: "view";
|
|
139
|
+
readonly inputs: readonly [{
|
|
140
|
+
readonly type: "uint256";
|
|
141
|
+
}, {
|
|
142
|
+
readonly type: "uint256";
|
|
143
|
+
}];
|
|
144
|
+
readonly outputs: readonly [{
|
|
145
|
+
readonly type: "address";
|
|
146
|
+
}, {
|
|
147
|
+
readonly type: "uint256";
|
|
148
|
+
}];
|
|
149
|
+
}, {
|
|
150
|
+
readonly type: "function";
|
|
151
|
+
readonly name: "supportsInterface";
|
|
152
|
+
readonly stateMutability: "view";
|
|
153
|
+
readonly inputs: readonly [{
|
|
154
|
+
readonly type: "bytes4";
|
|
155
|
+
}];
|
|
156
|
+
readonly outputs: readonly [{
|
|
157
|
+
readonly type: "bool";
|
|
158
|
+
}];
|
|
159
|
+
}, {
|
|
160
|
+
readonly type: "function";
|
|
161
|
+
readonly name: "getTransferValidator";
|
|
162
|
+
readonly stateMutability: "view";
|
|
163
|
+
readonly inputs: readonly [];
|
|
164
|
+
readonly outputs: readonly [{
|
|
165
|
+
readonly type: "address";
|
|
166
|
+
}];
|
|
167
|
+
}, {
|
|
168
|
+
readonly type: "function";
|
|
169
|
+
readonly name: "seedSource";
|
|
170
|
+
readonly stateMutability: "view";
|
|
171
|
+
readonly inputs: readonly [];
|
|
172
|
+
readonly outputs: readonly [{
|
|
173
|
+
readonly type: "address";
|
|
174
|
+
}];
|
|
175
|
+
}, {
|
|
176
|
+
readonly type: "function";
|
|
177
|
+
readonly name: "tokenURILocked";
|
|
178
|
+
readonly stateMutability: "view";
|
|
179
|
+
readonly inputs: readonly [];
|
|
180
|
+
readonly outputs: readonly [{
|
|
181
|
+
readonly type: "bool";
|
|
182
|
+
}];
|
|
183
|
+
}, {
|
|
184
|
+
readonly type: "function";
|
|
185
|
+
readonly name: "contractURILocked";
|
|
186
|
+
readonly stateMutability: "view";
|
|
187
|
+
readonly inputs: readonly [];
|
|
188
|
+
readonly outputs: readonly [{
|
|
189
|
+
readonly type: "bool";
|
|
190
|
+
}];
|
|
191
|
+
}, {
|
|
192
|
+
readonly type: "function";
|
|
193
|
+
readonly name: "scriptLocked";
|
|
194
|
+
readonly stateMutability: "view";
|
|
195
|
+
readonly inputs: readonly [];
|
|
196
|
+
readonly outputs: readonly [{
|
|
197
|
+
readonly type: "bool";
|
|
198
|
+
}];
|
|
199
|
+
}, {
|
|
200
|
+
readonly type: "function";
|
|
201
|
+
readonly name: "dependenciesLocked";
|
|
202
|
+
readonly stateMutability: "view";
|
|
203
|
+
readonly inputs: readonly [];
|
|
204
|
+
readonly outputs: readonly [{
|
|
205
|
+
readonly type: "bool";
|
|
206
|
+
}];
|
|
207
|
+
}, {
|
|
208
|
+
readonly type: "function";
|
|
209
|
+
readonly name: "contractFieldLocked";
|
|
210
|
+
readonly stateMutability: "view";
|
|
211
|
+
readonly inputs: readonly [{
|
|
212
|
+
readonly type: "bytes32";
|
|
213
|
+
}];
|
|
214
|
+
readonly outputs: readonly [{
|
|
215
|
+
readonly type: "bool";
|
|
216
|
+
}];
|
|
217
|
+
}];
|
|
218
|
+
/** The edition twin of {@link STATE_ABI} — `owner`/`maxInvocations`/`paused`/`minter`/
|
|
219
|
+
* `primaryPayee`/`tokenURIRenderer`/`royaltyInfo` are shared, unchanged, function names (see
|
|
220
|
+
* `kind.ts`'s own note on why); `totalSupply`/`maxSupply` take an id. The creator-token probe is
|
|
221
|
+
* ALSO shared, unchanged: Limit Break uses the identical `ICreatorToken` ERC-165 id (0xad0d7f6c)
|
|
222
|
+
* and `getTransferValidator()` surface for 721C and 1155C, and `CreatorToken1155` advertises them
|
|
223
|
+
* the same way when enrolled — so an enrolled edition reports its validator exactly like a 721. */
|
|
224
|
+
export declare const EDITION_STATE_ABI: readonly [{
|
|
225
|
+
readonly type: "function";
|
|
226
|
+
readonly name: "owner";
|
|
227
|
+
readonly stateMutability: "view";
|
|
228
|
+
readonly inputs: readonly [];
|
|
229
|
+
readonly outputs: readonly [{
|
|
230
|
+
readonly type: "address";
|
|
231
|
+
}];
|
|
232
|
+
}, {
|
|
233
|
+
readonly type: "function";
|
|
234
|
+
readonly name: "maxInvocations";
|
|
235
|
+
readonly stateMutability: "view";
|
|
236
|
+
readonly inputs: readonly [];
|
|
237
|
+
readonly outputs: readonly [{
|
|
238
|
+
readonly type: "uint256";
|
|
239
|
+
}];
|
|
240
|
+
}, {
|
|
241
|
+
readonly type: "function";
|
|
242
|
+
readonly name: "totalSupply";
|
|
243
|
+
readonly stateMutability: "view";
|
|
244
|
+
readonly inputs: readonly [{
|
|
245
|
+
readonly type: "uint256";
|
|
246
|
+
}];
|
|
247
|
+
readonly outputs: readonly [{
|
|
248
|
+
readonly type: "uint256";
|
|
249
|
+
}];
|
|
250
|
+
}, {
|
|
251
|
+
readonly type: "function";
|
|
252
|
+
readonly name: "maxSupply";
|
|
253
|
+
readonly stateMutability: "view";
|
|
254
|
+
readonly inputs: readonly [{
|
|
255
|
+
readonly type: "uint256";
|
|
256
|
+
}];
|
|
257
|
+
readonly outputs: readonly [{
|
|
258
|
+
readonly type: "uint256";
|
|
259
|
+
}];
|
|
260
|
+
}, {
|
|
261
|
+
readonly type: "function";
|
|
262
|
+
readonly name: "paused";
|
|
263
|
+
readonly stateMutability: "view";
|
|
264
|
+
readonly inputs: readonly [];
|
|
265
|
+
readonly outputs: readonly [{
|
|
266
|
+
readonly type: "bool";
|
|
267
|
+
}];
|
|
268
|
+
}, {
|
|
269
|
+
readonly type: "function";
|
|
270
|
+
readonly name: "minter";
|
|
271
|
+
readonly stateMutability: "view";
|
|
272
|
+
readonly inputs: readonly [];
|
|
273
|
+
readonly outputs: readonly [{
|
|
274
|
+
readonly type: "address";
|
|
275
|
+
}];
|
|
276
|
+
}, {
|
|
277
|
+
readonly type: "function";
|
|
278
|
+
readonly name: "primaryPayee";
|
|
279
|
+
readonly stateMutability: "view";
|
|
280
|
+
readonly inputs: readonly [];
|
|
281
|
+
readonly outputs: readonly [{
|
|
282
|
+
readonly type: "address";
|
|
283
|
+
}];
|
|
284
|
+
}, {
|
|
285
|
+
readonly type: "function";
|
|
286
|
+
readonly name: "tokenURIRenderer";
|
|
287
|
+
readonly stateMutability: "view";
|
|
288
|
+
readonly inputs: readonly [];
|
|
289
|
+
readonly outputs: readonly [{
|
|
290
|
+
readonly type: "address";
|
|
291
|
+
}];
|
|
292
|
+
}, {
|
|
293
|
+
readonly type: "function";
|
|
294
|
+
readonly name: "royaltyInfo";
|
|
295
|
+
readonly stateMutability: "view";
|
|
296
|
+
readonly inputs: readonly [{
|
|
297
|
+
readonly type: "uint256";
|
|
298
|
+
}, {
|
|
299
|
+
readonly type: "uint256";
|
|
300
|
+
}];
|
|
301
|
+
readonly outputs: readonly [{
|
|
302
|
+
readonly type: "address";
|
|
303
|
+
}, {
|
|
304
|
+
readonly type: "uint256";
|
|
305
|
+
}];
|
|
306
|
+
}, {
|
|
307
|
+
readonly type: "function";
|
|
308
|
+
readonly name: "supportsInterface";
|
|
309
|
+
readonly stateMutability: "view";
|
|
310
|
+
readonly inputs: readonly [{
|
|
311
|
+
readonly type: "bytes4";
|
|
312
|
+
}];
|
|
313
|
+
readonly outputs: readonly [{
|
|
314
|
+
readonly type: "bool";
|
|
315
|
+
}];
|
|
316
|
+
}, {
|
|
317
|
+
readonly type: "function";
|
|
318
|
+
readonly name: "getTransferValidator";
|
|
319
|
+
readonly stateMutability: "view";
|
|
320
|
+
readonly inputs: readonly [];
|
|
321
|
+
readonly outputs: readonly [{
|
|
322
|
+
readonly type: "address";
|
|
323
|
+
}];
|
|
324
|
+
}, {
|
|
325
|
+
readonly type: "function";
|
|
326
|
+
readonly name: "seedSource";
|
|
327
|
+
readonly stateMutability: "view";
|
|
328
|
+
readonly inputs: readonly [];
|
|
329
|
+
readonly outputs: readonly [{
|
|
330
|
+
readonly type: "address";
|
|
331
|
+
}];
|
|
332
|
+
}, {
|
|
333
|
+
readonly type: "function";
|
|
334
|
+
readonly name: "tokenURILocked";
|
|
335
|
+
readonly stateMutability: "view";
|
|
336
|
+
readonly inputs: readonly [];
|
|
337
|
+
readonly outputs: readonly [{
|
|
338
|
+
readonly type: "bool";
|
|
339
|
+
}];
|
|
340
|
+
}, {
|
|
341
|
+
readonly type: "function";
|
|
342
|
+
readonly name: "contractURILocked";
|
|
343
|
+
readonly stateMutability: "view";
|
|
344
|
+
readonly inputs: readonly [];
|
|
345
|
+
readonly outputs: readonly [{
|
|
346
|
+
readonly type: "bool";
|
|
347
|
+
}];
|
|
348
|
+
}, {
|
|
349
|
+
readonly type: "function";
|
|
350
|
+
readonly name: "scriptLocked";
|
|
351
|
+
readonly stateMutability: "view";
|
|
352
|
+
readonly inputs: readonly [];
|
|
353
|
+
readonly outputs: readonly [{
|
|
354
|
+
readonly type: "bool";
|
|
355
|
+
}];
|
|
356
|
+
}, {
|
|
357
|
+
readonly type: "function";
|
|
358
|
+
readonly name: "dependenciesLocked";
|
|
359
|
+
readonly stateMutability: "view";
|
|
360
|
+
readonly inputs: readonly [];
|
|
361
|
+
readonly outputs: readonly [{
|
|
362
|
+
readonly type: "bool";
|
|
363
|
+
}];
|
|
364
|
+
}, {
|
|
365
|
+
readonly type: "function";
|
|
366
|
+
readonly name: "contractFieldLocked";
|
|
367
|
+
readonly stateMutability: "view";
|
|
368
|
+
readonly inputs: readonly [{
|
|
369
|
+
readonly type: "bytes32";
|
|
370
|
+
}];
|
|
371
|
+
readonly outputs: readonly [{
|
|
372
|
+
readonly type: "bool";
|
|
373
|
+
}];
|
|
374
|
+
}];
|
|
375
|
+
/** One boolean lock, tri-state: `true` (frozen forever) · `false` (open — the owner can still
|
|
376
|
+
* change it) · `null` (the read failed — an RPC refusal, or a wrong dialect). Never collapse
|
|
377
|
+
* `null` into `false`: an unread lock is not proof it's off, and `state`'s whole job here is to
|
|
378
|
+
* keep that distinction visible all the way to the JSON payload. */
|
|
379
|
+
type LockRead = boolean | null;
|
|
380
|
+
/** Every irreversible lock a collection can carry, as read straight from chain. */
|
|
381
|
+
export interface CollectionLocks {
|
|
382
|
+
tokenURI: LockRead;
|
|
383
|
+
contractURI: LockRead;
|
|
384
|
+
/** The bounded METADATA_FIELD scan — see {@link readFieldLocks}'s doc for the caveat this carries. */
|
|
385
|
+
fields: {
|
|
386
|
+
field: string;
|
|
387
|
+
locked: LockRead;
|
|
388
|
+
}[];
|
|
389
|
+
/** `null` (the OBJECT, not the inner `locked`) ⇒ not applicable: this contract has no on-chain
|
|
390
|
+
* script surface at all (not a code project), a different fact from "unknown" ({@link LockRead}'s
|
|
391
|
+
* `null`), which is reserved for "the surface exists but the read failed". */
|
|
392
|
+
script: {
|
|
393
|
+
locked: LockRead;
|
|
394
|
+
} | null;
|
|
395
|
+
dependencies: {
|
|
396
|
+
locked: LockRead;
|
|
397
|
+
} | null;
|
|
398
|
+
}
|
|
399
|
+
/**
|
|
400
|
+
* Read every applicable irreversible lock for one collection: token/contract URI config, the
|
|
401
|
+
* bounded standard field set, and — for a code project — the script and dependency freezes.
|
|
402
|
+
* `paramHooks.locked` is deliberately NOT read here: `cmdStateBody`/`cmdStateEditionBody` already
|
|
403
|
+
* read it (`readParamHooksLocked`) as part of the existing param-hooks readout, and re-reading it
|
|
404
|
+
* would cost a second `eth_call` for a fact already on hand — see the callers, which pass it into
|
|
405
|
+
* {@link printLocks} instead.
|
|
406
|
+
*
|
|
407
|
+
* `isCode` gates `scriptLocked`/`dependenciesLocked`: those getters exist ONLY on the two code
|
|
408
|
+
* twins (SeriesCode/EditionCode), so asking a plain image/Series contract for them isn't a failed
|
|
409
|
+
* read to report as "unknown" — it's a surface that was never there, reported as `null` (not
|
|
410
|
+
* applicable) via the OUTER object rather than the boolean inside it.
|
|
411
|
+
*/
|
|
412
|
+
export declare function readCollectionLocks(publicClient: PublicClient, address: Address, abi: readonly unknown[], isCode: boolean): Promise<CollectionLocks>;
|
|
413
|
+
export declare function cmdState(address: Address | undefined, flags: Flags): Promise<void>;
|
|
414
|
+
export declare function cmdStateBody(address: Address, flags: Flags, emit: (p: Record<string, unknown>) => void): Promise<void>;
|
|
415
|
+
/**
|
|
416
|
+
* `abx status [address] [--remote [name|url]] [--watch]` — INDEXING status: where a project sits in
|
|
417
|
+
* the lifecycle (`queued | backfilling | live | stale | failed`) and how far behind head it is.
|
|
418
|
+
*
|
|
419
|
+
* One vocabulary for both sides of the membrane, which is the point: bare = this node, `--remote` =
|
|
420
|
+
* ask the service, and the same five words either way. Distinct from `abx state <address>`, which
|
|
421
|
+
* reads the CHAIN (owner, royalty, locks) and knows nothing about who is serving it.
|
|
422
|
+
*/
|
|
423
|
+
export declare function cmdStatus(address: Address | undefined, flags: Flags): Promise<void>;
|
|
424
|
+
/** The `--remote` half of {@link cmdStatus}: one project, or the roll-up for every project the token
|
|
425
|
+
* can see. `--watch` tails until everything reaches a terminal state. */
|
|
426
|
+
export declare function cmdStatusRemote(address: Address | undefined, remote: RemoteTarget, flags: Flags): Promise<void>;
|
|
427
|
+
export declare function cmdForget(address: Address | undefined, flags: Flags): Promise<void>;
|
|
428
|
+
export {};
|
|
429
|
+
//# sourceMappingURL=project.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../src/commands/project.ts"],"names":[],"mappings":"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"}
|