@seedprotocol/publish 0.7.8 → 0.7.9-next.1177.ga3e08ed
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 +11 -0
- package/README.md +9 -24
- package/dist/{chainConfig-D9VBbk0H.js → chainConfig-D801ynuH.js} +1388 -1859
- package/dist/chainConfig-D801ynuH.js.map +1 -0
- package/dist/config.d.ts +9 -53
- package/dist/config.d.ts.map +1 -1
- package/dist/{ensureAutomationSessionKey-CiAto4jZ.js → ensureAutomationSessionKey-DqAS9J9s.js} +19 -19
- package/dist/{ensureAutomationSessionKey-CiAto4jZ.js.map → ensureAutomationSessionKey-DqAS9J9s.js.map} +1 -1
- package/dist/{ensureModularPublishBootstrap-CDBZqcsZ.js → ensureModularPublishBootstrap-DqmBSJ7_.js} +8 -8
- package/dist/{ensureModularPublishBootstrap-CDBZqcsZ.js.map → ensureModularPublishBootstrap-DqmBSJ7_.js.map} +1 -1
- package/dist/{ensureSmartWalletThenPublish-hIBtsKXM.js → ensureSmartWalletThenPublish-DcuHyKXL.js} +4 -4
- package/dist/{ensureSmartWalletThenPublish-hIBtsKXM.js.map → ensureSmartWalletThenPublish-DcuHyKXL.js.map} +1 -1
- package/dist/helpers/constants.d.ts +1 -1
- package/dist/helpers/constants.d.ts.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +35 -35
- package/dist/index.js.map +1 -1
- package/dist/{managedAccountAdmin-Cn1E82-b.js → managedAccountAdmin-IdudyXSZ.js} +6 -6
- package/dist/{managedAccountAdmin-Cn1E82-b.js.map → managedAccountAdmin-IdudyXSZ.js.map} +1 -1
- package/dist/payment.d.ts +7 -10
- package/dist/payment.d.ts.map +1 -1
- package/dist/{publishAuthorization-D0HD1CgM.js → publishAuthorization-D1aMORBP.js} +9 -9
- package/dist/{publishAuthorization-D0HD1CgM.js.map → publishAuthorization-D1aMORBP.js.map} +1 -1
- package/dist/{resolveRevokeAccount-BPZey06q.js → resolveRevokeAccount-zYQmsure.js} +12 -12
- package/dist/{resolveRevokeAccount-BPZey06q.js.map → resolveRevokeAccount-zYQmsure.js.map} +1 -1
- package/dist/services/arweaveL1Finalize/enqueue.d.ts.map +1 -1
- package/dist/services/arweaveL1Finalize/worker.d.ts.map +1 -1
- package/dist/services/publish/actors/checking.d.ts.map +1 -1
- package/dist/services/publish/actors/createArweaveDataItems.d.ts.map +1 -1
- package/dist/services/publish/actors/createArweaveDataItemsPhase2.d.ts.map +1 -1
- package/dist/services/publish/actors/createAttestationsDirectToEas.d.ts +5 -3
- package/dist/services/publish/actors/createAttestationsDirectToEas.d.ts.map +1 -1
- package/dist/services/publish/actors/index.d.ts +0 -5
- package/dist/services/publish/actors/index.d.ts.map +1 -1
- package/dist/services/publish/actors/multiPublishReceipt.d.ts +3 -0
- package/dist/services/publish/actors/multiPublishReceipt.d.ts.map +1 -1
- package/dist/services/publish/actors/preparingHtmlEmbedded.d.ts +1 -1
- package/dist/services/publish/actors/publishRequestNormalize.d.ts.map +1 -1
- package/dist/services/publish/actors/recordMultiPublishReceipt.d.ts.map +1 -1
- package/dist/services/publish/actors/uploadViaBundler.d.ts.map +1 -1
- package/dist/services/publish/actors/utils.d.ts +0 -24
- package/dist/services/publish/actors/utils.d.ts.map +1 -1
- package/dist/services/publish/helpers/getPublishUploadData.d.ts +3 -4
- package/dist/services/publish/helpers/getPublishUploadData.d.ts.map +1 -1
- package/dist/services/publish/helpers/itemNeedsArweave.d.ts +1 -1
- package/dist/services/publish/helpers/itemNeedsArweave.d.ts.map +1 -1
- package/dist/services/publish/index.d.ts +3 -77
- package/dist/services/publish/index.d.ts.map +1 -1
- package/dist/services/publishCost/estimatePublishCost.d.ts +5 -4
- package/dist/services/publishCost/estimatePublishCost.d.ts.map +1 -1
- package/dist/services/publishCost/types.d.ts +5 -5
- package/dist/services/publishCost/types.d.ts.map +1 -1
- package/dist/services/publishManager/actions/createPublish.d.ts.map +1 -1
- package/dist/services/publishManager/actors/restorableSnapshot.d.ts +0 -4
- package/dist/services/publishManager/actors/restorableSnapshot.d.ts.map +1 -1
- package/dist/thirdweb.js +94 -94
- package/dist/thirdweb.js.map +1 -1
- package/dist/types.d.ts +4 -30
- package/dist/types.d.ts.map +1 -1
- package/dist/worker-DaG8XHbB.js +78 -0
- package/dist/worker-DaG8XHbB.js.map +1 -0
- package/package.json +8 -8
- package/dist/chainConfig-D9VBbk0H.js.map +0 -1
- package/dist/helpers/uploadApi.d.ts +0 -37
- package/dist/helpers/uploadApi.d.ts.map +0 -1
- package/dist/services/publish/actors/createArweaveTransactions.d.ts +0 -12
- package/dist/services/publish/actors/createArweaveTransactions.d.ts.map +0 -1
- package/dist/services/publish/actors/createArweaveTransactionsPhase2.d.ts +0 -8
- package/dist/services/publish/actors/createArweaveTransactionsPhase2.d.ts.map +0 -1
- package/dist/services/publish/actors/pollForConfirmation.d.ts +0 -20
- package/dist/services/publish/actors/pollForConfirmation.d.ts.map +0 -1
- package/dist/services/publish/actors/sendReimbursementRequest.d.ts +0 -7
- package/dist/services/publish/actors/sendReimbursementRequest.d.ts.map +0 -1
- package/dist/services/publish/actors/uploadData.d.ts +0 -6
- package/dist/services/publish/actors/uploadData.d.ts.map +0 -1
- package/dist/services/upload/actors.d.ts +0 -11
- package/dist/services/upload/actors.d.ts.map +0 -1
- package/dist/services/upload/index.d.ts +0 -5
- package/dist/services/upload/index.d.ts.map +0 -1
- package/dist/services/upload/uploadMachine.d.ts +0 -48
- package/dist/services/upload/uploadMachine.d.ts.map +0 -1
- package/dist/services/upload/utils.d.ts +0 -21
- package/dist/services/upload/utils.d.ts.map +0 -1
- package/dist/worker-WIMx6RTs.js +0 -87
- package/dist/worker-WIMx6RTs.js.map +0 -1
package/dist/config.d.ts
CHANGED
|
@@ -2,20 +2,6 @@ import { type TransactionTag } from '@seedprotocol/sdk';
|
|
|
2
2
|
import type { Chain } from 'viem';
|
|
3
3
|
import { type EasChainDeployment } from '@seedprotocol/eas';
|
|
4
4
|
import { ethers } from 'ethers';
|
|
5
|
-
/** Serialized upload item for Arweave signing (input to callback or used internally with JWK) */
|
|
6
|
-
export interface SerializedPublishUpload {
|
|
7
|
-
versionLocalId: string;
|
|
8
|
-
itemPropertyName: string;
|
|
9
|
-
transactionJson: Record<string, unknown>;
|
|
10
|
-
}
|
|
11
|
-
/** Result from Arweave signing (signed transaction + metadata) */
|
|
12
|
-
export interface ArweaveTransactionInfoResult {
|
|
13
|
-
transaction: Record<string, unknown> & {
|
|
14
|
-
chunks?: unknown;
|
|
15
|
-
};
|
|
16
|
-
versionId: string;
|
|
17
|
-
modelName: string;
|
|
18
|
-
}
|
|
19
5
|
/** Result from DataItem signing (compatible shape for createAttestations) */
|
|
20
6
|
export interface ArweaveDataItemInfoResult {
|
|
21
7
|
transaction: {
|
|
@@ -114,7 +100,7 @@ export interface PublishConfig {
|
|
|
114
100
|
* How non-Thirdweb wallets submit txs. Defaults to `eip7702` when `bundlerUrl` is set, else `eoa`.
|
|
115
101
|
*/
|
|
116
102
|
accountMode?: PublishAccountMode;
|
|
117
|
-
/** Upload API base URL (e.g. from VITE_UPLOAD_API_BASE_URL or NEXT_PUBLIC_UPLOAD_API_BASE_URL).
|
|
103
|
+
/** Upload API base URL (e.g. from VITE_UPLOAD_API_BASE_URL or NEXT_PUBLIC_UPLOAD_API_BASE_URL). Data items are uploaded to its bundler routes. */
|
|
118
104
|
uploadApiBaseUrl: string;
|
|
119
105
|
/**
|
|
120
106
|
* @deprecated Not read by publish. It uses `uploadApiBaseUrl` and `arweaveGraphqlUrl`: resolve
|
|
@@ -178,9 +164,10 @@ export interface PublishConfig {
|
|
|
178
164
|
*/
|
|
179
165
|
onWalletSetupWarning?: (error: unknown) => void;
|
|
180
166
|
/**
|
|
181
|
-
*
|
|
182
|
-
*
|
|
183
|
-
*
|
|
167
|
+
* @deprecated Publish always uploads signed data items, to the upload API's bundler routes
|
|
168
|
+
* (`uploadApiBaseUrl`) or, with `payment.storage: 'user'`, to Turbo. `true` is accepted and
|
|
169
|
+
* ignored; `false` throws {@link PublishPaymentConfigError} from `initPublish`, since the L1
|
|
170
|
+
* upload path it selected has been removed.
|
|
184
171
|
*/
|
|
185
172
|
useArweaveBundler?: boolean;
|
|
186
173
|
/**
|
|
@@ -195,27 +182,11 @@ export interface PublishConfig {
|
|
|
195
182
|
*/
|
|
196
183
|
htmlEmbeddedDataUriPolicy?: import('./types').HtmlEmbeddedDataUriPolicy;
|
|
197
184
|
/**
|
|
198
|
-
* Optional fallback:
|
|
199
|
-
*/
|
|
200
|
-
signArweaveTransactions?: (uploads: SerializedPublishUpload[]) => Promise<ArweaveTransactionInfoResult[]>;
|
|
201
|
-
/**
|
|
202
|
-
* Optional fallback: Arweave JWK for in-process signing (non-bundler path). Prefer passing at createPublish time.
|
|
203
|
-
* A publish restored after a reload never has the per-publish JWK (it is not saved to the
|
|
204
|
-
* database), so it signs with this one, or fails at creatingArweaveTransactions without it.
|
|
205
|
-
*/
|
|
206
|
-
arweaveJwk?: {
|
|
207
|
-
kty: string;
|
|
208
|
-
n: string;
|
|
209
|
-
e: string;
|
|
210
|
-
d?: string;
|
|
211
|
-
[key: string]: unknown;
|
|
212
|
-
};
|
|
213
|
-
/**
|
|
214
|
-
* Optional fallback: Signer for DataItem creation when useArweaveBundler is true. Prefer passing at createPublish time.
|
|
185
|
+
* Optional fallback: Signer for DataItem creation. Prefer passing at createPublish time.
|
|
215
186
|
*/
|
|
216
187
|
dataItemSigner?: ethers.Wallet | import('./helpers/seedSigner').SeedSigner;
|
|
217
188
|
/**
|
|
218
|
-
* Optional fallback: Sign DataItems
|
|
189
|
+
* Optional fallback: Sign DataItems. Prefer passing at createPublish time.
|
|
219
190
|
* Each upload includes `tags` (content + configured {@link arweaveUploadTags}); forward them into the DataItem.
|
|
220
191
|
*/
|
|
221
192
|
signDataItems?: (uploads: import('./services/publish/helpers/getPublishUploadData').PublishUploadData[]) => Promise<ArweaveDataItemInfoResult[]>;
|
|
@@ -244,26 +215,12 @@ export interface CreatePublishOptions {
|
|
|
244
215
|
/** `patch` (default): pending properties only. `new_version`: new Version attestation + all properties. */
|
|
245
216
|
publishMode?: import('./types').PublishMode;
|
|
246
217
|
/**
|
|
247
|
-
*
|
|
218
|
+
* Sign DataItems (wallet flow). This or `dataItemSigner` is needed unless the config sets one.
|
|
248
219
|
* Use each upload's `tags` when building the signed DataItem.
|
|
249
220
|
*/
|
|
250
221
|
signDataItems?: (uploads: import('./services/publish/helpers/getPublishUploadData').PublishUploadData[]) => Promise<ArweaveDataItemInfoResult[]>;
|
|
251
|
-
/**
|
|
222
|
+
/** Signer for DataItems (backend/script flow). */
|
|
252
223
|
dataItemSigner?: ethers.Wallet | import('./helpers/seedSigner').SeedSigner;
|
|
253
|
-
/** Required when NOT useArweaveBundler: sign Arweave transactions */
|
|
254
|
-
signArweaveTransactions?: (uploads: SerializedPublishUpload[]) => Promise<ArweaveTransactionInfoResult[]>;
|
|
255
|
-
/**
|
|
256
|
-
* Required when NOT useArweaveBundler: JWK for in-process signing. Kept in memory only; it is
|
|
257
|
-
* stripped from the saved publish snapshot, so a publish resumed after a reload falls back to
|
|
258
|
-
* {@link PublishConfig.arweaveJwk}.
|
|
259
|
-
*/
|
|
260
|
-
arweaveJwk?: {
|
|
261
|
-
kty: string;
|
|
262
|
-
n: string;
|
|
263
|
-
e: string;
|
|
264
|
-
d?: string;
|
|
265
|
-
[key: string]: unknown;
|
|
266
|
-
};
|
|
267
224
|
/**
|
|
268
225
|
* Extra tags for this publish only, appended after {@link PublishConfig.arweaveUploadTags}.
|
|
269
226
|
* Resolved order: `[...initPublishTags, ...theseTags]`.
|
|
@@ -324,7 +281,6 @@ export interface ResolvedPublishConfig extends PublishConfig {
|
|
|
324
281
|
easChain: EasChainDeployment;
|
|
325
282
|
useDirectEas: boolean;
|
|
326
283
|
useModularExecutor: boolean;
|
|
327
|
-
useArweaveBundler: boolean;
|
|
328
284
|
/** Resolved: defaults to false. */
|
|
329
285
|
autoDeployManagedAccount: boolean;
|
|
330
286
|
/**
|
package/dist/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AACA,OAAO,EAOL,KAAK,cAAc,EACpB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,MAAM,CAAA;AAGjC,OAAO,EAIL,KAAK,kBAAkB,EACxB,MAAM,mBAAmB,CAAA;AAE1B,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAQ/B,
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AACA,OAAO,EAOL,KAAK,cAAc,EACpB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,MAAM,CAAA;AAGjC,OAAO,EAIL,KAAK,kBAAkB,EACxB,MAAM,mBAAmB,CAAA;AAE1B,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAQ/B,6EAA6E;AAC7E,MAAM,WAAW,yBAAyB;IACxC,WAAW,EAAE;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,CAAA;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,MAAM,kBAAkB,GAAG,KAAK,GAAG,SAAS,CAAA;AAElD,MAAM,WAAW,qBAAqB;IACpC;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB;;;;;;OAMG;IACH,iBAAiB,CAAC,EAAE,SAAS,GAAG,KAAK,CAAA;CACtC;AAED,MAAM,WAAW,aAAa;IAC5B;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B;;;;;OAKG;IACH,KAAK,CAAC,EAAE,KAAK,CAAA;IACb,sFAAsF;IACtF,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,4FAA4F;IAC5F,qBAAqB,CAAC,EAAE,MAAM,CAAA;IAC9B;;;OAGG;IACH,4BAA4B,CAAC,EAAE,MAAM,CAAA;IACrC;;;;;OAKG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;IACf;;;;OAIG;IACH,QAAQ,CAAC,EAAE,qBAAqB,CAAA;IAChC;;;;;OAKG;IACH,OAAO,CAAC,EAAE,OAAO,WAAW,EAAE,oBAAoB,CAAA;IAClD;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB;;OAEG;IACH,WAAW,CAAC,EAAE,kBAAkB,CAAA;IAChC,kJAAkJ;IAClJ,gBAAgB,EAAE,MAAM,CAAA;IACxB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,cAAc,GAAG,OAAO,GAAG,QAAQ,CAAA;IACtD,0FAA0F;IAC1F,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB;;;OAGG;IACH,gCAAgC,CAAC,EAAE,MAAM,CAAA;IACzC;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB;;;;;OAKG;IACH,4BAA4B,CAAC,EAAE,MAAM,CAAA;IACrC,2EAA2E;IAC3E,wBAAwB,CAAC,EAAE,MAAM,CAAA;IACjC;;;OAGG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B;;;;;OAKG;IACH,+BAA+B,CAAC,EAAE,OAAO,CAAA;IACzC;;;OAGG;IACH,wBAAwB,CAAC,EAAE,OAAO,CAAA;IAClC;;;OAGG;IACH,oBAAoB,CAAC,EAAE,CAAC,MAAM,EAAE;QAC9B,cAAc,EAAE,MAAM,CAAA;QACtB,qBAAqB,EAAE,OAAO,sBAAsB,EAAE,aAAa,CAAA;KACpE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACnB;;OAEG;IACH,oBAAoB,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAA;IAC/C;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,cAAc,EAAE,CAAA;IACpC;;;OAGG;IACH,yBAAyB,CAAC,EAAE,OAAO,SAAS,EAAE,yBAAyB,CAAA;IACvE;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,GAAG,OAAO,sBAAsB,EAAE,UAAU,CAAA;IAC1E;;;OAGG;IACH,aAAa,CAAC,EAAE,CACd,OAAO,EAAE,OAAO,iDAAiD,EAAE,iBAAiB,EAAE,KACnF,OAAO,CAAC,yBAAyB,EAAE,CAAC,CAAA;IACzC;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACjE;;;;OAIG;IACH,WAAW,CAAC,EAAE,OAAO,wBAAwB,EAAE,mBAAmB,CAAA;IAClE;;;OAGG;IACH,gBAAgB,CAAC,EAAE,OAAO,iBAAiB,EAAE,gBAAgB,CAAA;CAC9D;AAED,oFAAoF;AACpF,MAAM,WAAW,oBAAoB;IACnC,2GAA2G;IAC3G,WAAW,CAAC,EAAE,OAAO,SAAS,EAAE,WAAW,CAAA;IAC3C;;;OAGG;IACH,aAAa,CAAC,EAAE,CACd,OAAO,EAAE,OAAO,iDAAiD,EAAE,iBAAiB,EAAE,KACnF,OAAO,CAAC,yBAAyB,EAAE,CAAC,CAAA;IACzC,kDAAkD;IAClD,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,GAAG,OAAO,sBAAsB,EAAE,UAAU,CAAA;IAC1E;;;OAGG;IACH,iBAAiB,CAAC,EAAE,cAAc,EAAE,CAAA;IACpC;;;OAGG;IACH,yBAAyB,CAAC,EAAE,OAAO,SAAS,EAAE,yBAAyB,CAAA;IACvE;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,wBAAwB,EAAE,mBAAmB,CAAA;IAClE,yEAAyE;IACzE,gBAAgB,CAAC,EAAE,OAAO,iBAAiB,EAAE,gBAAgB,CAAA;CAC9D;AAKD;;GAEG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,aAAa,GAAG,IAAI,GAAG,IAAI,CAE1D;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,aAAa,GAAG,IAAI,CAEnD;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,IAAI,CAAC,aAAa,EAAE,kBAAkB,GAAG,SAAS,CAAC,GAAG,IAAI,CAsBnG;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,aAAa,GAAG,IAAI,CA8BlD;AAED,kEAAkE;AAClE,eAAO,MAAM,gBAAgB,oBAAc,CAAA;AAE3C,MAAM,WAAW,qBAAsB,SAAQ,aAAa;IAC1D;;;OAGG;IACH,6BAA6B,EAAE,MAAM,GAAG,SAAS,CAAA;IACjD,gBAAgB,EAAE,MAAM,CAAA;IACxB,mEAAmE;IACnE,gCAAgC,EAAE,MAAM,CAAA;IACxC,gGAAgG;IAChG,iBAAiB,EAAE,MAAM,CAAA;IACzB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,qBAAqB,EAAE,MAAM,CAAA;IAC7B,mFAAmF;IACnF,QAAQ,EAAE,kBAAkB,CAAA;IAC5B,YAAY,EAAE,OAAO,CAAA;IACrB,kBAAkB,EAAE,OAAO,CAAA;IAC3B,mCAAmC;IACnC,wBAAwB,EAAE,OAAO,CAAA;IACjC;;OAEG;IACH,+BAA+B,EAAE,OAAO,CAAA;IACxC,uFAAuF;IACvF,KAAK,EAAE,KAAK,CAAA;IACZ,sDAAsD;IACtD,WAAW,EAAE,kBAAkB,CAAA;IAC/B,4DAA4D;IAC5D,QAAQ,EAAE,6BAA6B,CAAA;CACxC;AAED,MAAM,MAAM,6BAA6B,GAAG;IAC1C,UAAU,EAAE,MAAM,GAAG,SAAS,CAAA;IAC9B,UAAU,EAAE,OAAO,CAAA;IACnB,iBAAiB,EAAE,SAAS,GAAG,KAAK,CAAA;CACrC,CAAA;AAED,0DAA0D;AAC1D,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,IAAI,CAAC,aAAa,EAAE,UAAU,GAAG,SAAS,CAAC,GAAG,IAAI,GAAG,SAAS,GACrE,6BAA6B,CAO/B;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,IAAI,qBAAqB,CAgCxD;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,aAAa,GAAG,kBAAkB,CAchF;AAED,oFAAoF;AACpF,wBAAgB,mCAAmC,IAAI,MAAM,CAQ5D;AAED,yCAAyC;AACzC,wBAAgB,sCAAsC,CACpD,MAAM,EAAE,aAAa,EACrB,kBAAkB,EAAE,OAAO,GAC1B,OAAO,CAIT"}
|
package/dist/{ensureAutomationSessionKey-CiAto4jZ.js → ensureAutomationSessionKey-DqAS9J9s.js}
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { t as e } from "./rolldown-runtime-Dy4uBu1J.js";
|
|
2
|
-
import { Rt as t,
|
|
3
|
-
import { d as u, p as d } from "./publishAuthorization-
|
|
2
|
+
import { Rt as t, Ut as n, Vt as r, W as i, Wt as a, _t as o, it as s, qt as c, t as l } from "./chainConfig-D801ynuH.js";
|
|
3
|
+
import { d as u, p as d } from "./publishAuthorization-D1aMORBP.js";
|
|
4
4
|
import { getContract as f, sendTransaction as p } from "thirdweb";
|
|
5
5
|
import { addSessionKey as m, removeSessionKey as h, shouldUpdateSessionKey as g } from "thirdweb/extensions/erc4337";
|
|
6
6
|
//#region src/helpers/ensureAutomationSessionKey.ts
|
|
@@ -10,35 +10,35 @@ var _ = /* @__PURE__ */ e({
|
|
|
10
10
|
removeAutomationSessionKey: () => C
|
|
11
11
|
}), v = () => `Could not connect the managed publishing account to authorize an automation session key on ${l()}. Reconnect and try again.`, y = () => `Could not authorize the automation session key on your publishing account on ${l()}.`, b = () => `Could not remove the automation session key from your publishing account on ${l()}.`;
|
|
12
12
|
async function x(e) {
|
|
13
|
-
let t =
|
|
13
|
+
let t = i();
|
|
14
14
|
await t.autoConnect({
|
|
15
|
-
client:
|
|
15
|
+
client: s(),
|
|
16
16
|
chain: o()
|
|
17
17
|
});
|
|
18
|
-
let
|
|
19
|
-
if (!
|
|
20
|
-
return
|
|
18
|
+
let n = t.getAccount();
|
|
19
|
+
if (!n) throw new c(v(), "MODULAR_SIGNER_ACTIVATION_FAILED", e);
|
|
20
|
+
return n;
|
|
21
21
|
}
|
|
22
22
|
async function S(e) {
|
|
23
|
-
let { managedAddress: t, sessionKeyAddress:
|
|
24
|
-
client:
|
|
23
|
+
let { managedAddress: t, sessionKeyAddress: r, expiresAt: i } = e, l = await x(t), h = f({
|
|
24
|
+
client: s(),
|
|
25
25
|
chain: o(),
|
|
26
26
|
address: t
|
|
27
27
|
}), _ = d(u({ expiresAt: i })), v = !1;
|
|
28
28
|
try {
|
|
29
29
|
v = await g({
|
|
30
30
|
accountContract: h,
|
|
31
|
-
sessionKeyAddress:
|
|
31
|
+
sessionKeyAddress: r,
|
|
32
32
|
newPermissions: _
|
|
33
33
|
});
|
|
34
34
|
} catch (e) {
|
|
35
|
-
throw new
|
|
35
|
+
throw new c(y(), "MODULAR_SIGNER_ACTIVATION_FAILED", t, e);
|
|
36
36
|
}
|
|
37
37
|
if (v) try {
|
|
38
38
|
let e = m({
|
|
39
39
|
contract: h,
|
|
40
40
|
account: l,
|
|
41
|
-
sessionKeyAddress:
|
|
41
|
+
sessionKeyAddress: r,
|
|
42
42
|
permissions: _
|
|
43
43
|
}), t = await p({
|
|
44
44
|
account: l,
|
|
@@ -46,13 +46,13 @@ async function S(e) {
|
|
|
46
46
|
});
|
|
47
47
|
await a(t.transactionHash);
|
|
48
48
|
} catch (e) {
|
|
49
|
-
throw new
|
|
49
|
+
throw new c(y(), "MODULAR_SIGNER_ACTIVATION_FAILED", t, e);
|
|
50
50
|
}
|
|
51
|
-
if (!await
|
|
51
|
+
if (!await n(() => w(t, r), Boolean, { attempts: v ? 5 : 1 })) throw new c(y(), "MODULAR_SIGNER_ACTIVATION_FAILED", t);
|
|
52
52
|
}
|
|
53
53
|
async function C(e) {
|
|
54
54
|
let { managedAddress: t, sessionKeyAddress: n } = e, r = await x(t), i = f({
|
|
55
|
-
client:
|
|
55
|
+
client: s(),
|
|
56
56
|
chain: o(),
|
|
57
57
|
address: t
|
|
58
58
|
});
|
|
@@ -67,17 +67,17 @@ async function C(e) {
|
|
|
67
67
|
});
|
|
68
68
|
await a(t.transactionHash);
|
|
69
69
|
} catch (e) {
|
|
70
|
-
throw new
|
|
70
|
+
throw new c(b(), "MODULAR_SIGNER_ACTIVATION_FAILED", t, e);
|
|
71
71
|
}
|
|
72
72
|
}
|
|
73
73
|
async function w(e, n) {
|
|
74
74
|
try {
|
|
75
|
-
return await
|
|
75
|
+
return await r(e) ? await t(e, n) : !1;
|
|
76
76
|
} catch (t) {
|
|
77
|
-
throw new
|
|
77
|
+
throw new c(y(), "MODULAR_SIGNER_ACTIVATION_FAILED", e, t);
|
|
78
78
|
}
|
|
79
79
|
}
|
|
80
80
|
//#endregion
|
|
81
81
|
export { C as i, _ as n, w as r, S as t };
|
|
82
82
|
|
|
83
|
-
//# sourceMappingURL=ensureAutomationSessionKey-
|
|
83
|
+
//# sourceMappingURL=ensureAutomationSessionKey-DqAS9J9s.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ensureAutomationSessionKey-
|
|
1
|
+
{"version":3,"file":"ensureAutomationSessionKey-DqAS9J9s.js","names":["__exportAll","readIsActiveSigner","readUntil","isContractDeployed","getManagedAccountWallet","waitForPublishReceipt","getPublishThirdwebChain","getClient","ManagedAccountPublishError","getPublishChainName","buildAutomationSessionKeyPermissions","toThirdwebSessionKeyPermissions","ensureAutomationSessionKey_exports","ensureAutomationSessionKey","isAutomationSessionActive","removeAutomationSessionKey","MSG_UNAVAILABLE","MSG_ACTIVATION_FAILED","MSG_REMOVAL_FAILED","getManagedAccountForSessionKeyAdmin","managedWallet","managedAccount","managedAddress","params","accountContract","getContract","permissions","shouldUpdate","shouldUpdateSessionKey","cause","tx","addSessionKey","result","sendTransaction","sessionKeyAddress","removeSessionKey"],"sources":["../src/helpers/ensureAutomationSessionKey.ts"],"sourcesContent":["import { getContract, sendTransaction } from 'thirdweb'\nimport {\n addSessionKey,\n removeSessionKey,\n shouldUpdateSessionKey,\n} from 'thirdweb/extensions/erc4337'\nimport type { Address } from 'viem'\nimport { ManagedAccountPublishError } from '../errors'\nimport { isContractDeployed, readUntil, waitForPublishReceipt } from './chainClient'\nimport { readIsActiveSigner } from './contracts'\nimport {\n buildAutomationSessionKeyPermissions,\n toThirdwebSessionKeyPermissions,\n} from './automationSessionKeyPermissions'\nimport { getClient, getManagedAccountWallet } from './thirdweb'\nimport { getPublishThirdwebChain } from './thirdwebChain'\nimport { getPublishChainName } from './chainConfig'\n\nconst MSG_UNAVAILABLE = () =>\n `Could not connect the managed publishing account to authorize an automation session key on ${getPublishChainName()}. Reconnect and try again.`\nconst MSG_ACTIVATION_FAILED = () =>\n `Could not authorize the automation session key on your publishing account on ${getPublishChainName()}.`\nconst MSG_REMOVAL_FAILED = () =>\n `Could not remove the automation session key from your publishing account on ${getPublishChainName()}.`\n\nasync function getManagedAccountForSessionKeyAdmin(managedAddress: string) {\n const managedWallet = getManagedAccountWallet()\n await managedWallet.autoConnect({ client: getClient(), chain: getPublishThirdwebChain() })\n const managedAccount = managedWallet.getAccount()\n if (!managedAccount) {\n throw new ManagedAccountPublishError(\n MSG_UNAVAILABLE(),\n 'MODULAR_SIGNER_ACTIVATION_FAILED',\n managedAddress,\n )\n }\n return managedAccount\n}\n\n/**\n * Ensures `sessionKeyAddress` is an active automation session signer on the ManagedAccount\n * with **executor-module-only** approved targets. Signed by the managed EIP-4337 wallet (user).\n */\nexport async function ensureAutomationSessionKey(params: {\n managedAddress: string\n sessionKeyAddress: string\n /** Unix seconds end time for the session key (optional). */\n expiresAt?: number\n}): Promise<void> {\n const { managedAddress, sessionKeyAddress, expiresAt } = params\n const managedAccount = await getManagedAccountForSessionKeyAdmin(managedAddress)\n\n const accountContract = getContract({\n client: getClient(),\n chain: getPublishThirdwebChain(),\n address: managedAddress,\n })\n const permissions = toThirdwebSessionKeyPermissions(\n buildAutomationSessionKeyPermissions({ expiresAt }),\n )\n\n let shouldUpdate = false\n try {\n shouldUpdate = await shouldUpdateSessionKey({\n accountContract,\n sessionKeyAddress,\n newPermissions: permissions,\n })\n } catch (cause) {\n throw new ManagedAccountPublishError(\n MSG_ACTIVATION_FAILED(),\n 'MODULAR_SIGNER_ACTIVATION_FAILED',\n managedAddress,\n cause,\n )\n }\n\n if (shouldUpdate) {\n try {\n const tx = addSessionKey({\n contract: accountContract,\n account: managedAccount,\n sessionKeyAddress,\n permissions,\n })\n const result = await sendTransaction({ account: managedAccount, transaction: tx })\n await waitForPublishReceipt(result.transactionHash as `0x${string}`)\n } catch (cause) {\n throw new ManagedAccountPublishError(\n MSG_ACTIVATION_FAILED(),\n 'MODULAR_SIGNER_ACTIVATION_FAILED',\n managedAddress,\n cause,\n )\n }\n }\n\n // Right after addSessionKey, a lagging RPC node can still report the key inactive.\n const active = await readUntil(\n () => isAutomationSessionActive(managedAddress, sessionKeyAddress),\n Boolean,\n { attempts: shouldUpdate ? 5 : 1 },\n )\n if (!active) {\n throw new ManagedAccountPublishError(\n MSG_ACTIVATION_FAILED(),\n 'MODULAR_SIGNER_ACTIVATION_FAILED',\n managedAddress,\n )\n }\n}\n\n/**\n * Removes an automation session key from the ManagedAccount (user-signed via managed wallet).\n */\nexport async function removeAutomationSessionKey(params: {\n managedAddress: string\n sessionKeyAddress: string\n}): Promise<void> {\n const { managedAddress, sessionKeyAddress } = params\n const managedAccount = await getManagedAccountForSessionKeyAdmin(managedAddress)\n\n const accountContract = getContract({\n client: getClient(),\n chain: getPublishThirdwebChain(),\n address: managedAddress,\n })\n\n try {\n const tx = removeSessionKey({\n contract: accountContract,\n account: managedAccount,\n sessionKeyAddress,\n })\n const result = await sendTransaction({ account: managedAccount, transaction: tx })\n await waitForPublishReceipt(result.transactionHash as `0x${string}`)\n } catch (cause) {\n throw new ManagedAccountPublishError(\n MSG_REMOVAL_FAILED(),\n 'MODULAR_SIGNER_ACTIVATION_FAILED',\n managedAddress,\n cause,\n )\n }\n}\n\n/**\n * True when `sessionKeyAddress` is an active signer on the ManagedAccount.\n * Returns `false` when the ManagedAccount has no bytecode (undeployed ≠ unauthorized).\n * Throws when bytecode or `isActiveSigner` cannot be read on a live account (RPC / decode),\n * so unattended automation does not silently fall through to in-app bootstrap.\n */\nexport async function isAutomationSessionActive(\n managedAddress: string,\n sessionKeyAddress: string,\n): Promise<boolean> {\n try {\n if (!(await isContractDeployed(managedAddress))) {\n return false\n }\n return await readIsActiveSigner(\n managedAddress as Address,\n sessionKeyAddress as Address,\n )\n } catch (cause) {\n throw new ManagedAccountPublishError(\n MSG_ACTIVATION_FAILED(),\n 'MODULAR_SIGNER_ACTIVATION_FAILED',\n managedAddress,\n cause,\n )\n }\n}\n"],"mappings":";;;;;;;;;;IAkBMgB,UACJ,8FAA8FP,EAAoB,EAAE,6BAChHQ,UACJ,gFAAgFR,EAAoB,EAAE,IAClGS,UACJ,+EAA+ET,EAAoB,EAAE;AAEvG,eAAeU,EAAoC,GAAwB;CACzE,IAAMC,IAAgBhB,EAAwB;CAC9C,MAAMgB,EAAc,YAAY;EAAE,QAAQb,EAAU;EAAG,OAAOD,EAAwB;CAAE,CAAC;CACzF,IAAMe,IAAiBD,EAAc,WAAW;CAChD,IAAI,CAACC,GACH,MAAM,IAAIb,EACRQ,EAAgB,GAChB,oCACAM,CACF;CAEF,OAAOD;AACT;AAMA,eAAsBR,EAA2B,GAK/B;CAChB,IAAM,EAAE,mBAAgB,sBAAmB,iBAAcU,GACnDF,IAAiB,MAAMF,EAAoCG,CAAc,GAEzEE,IAAkBC,EAAY;EAClC,QAAQlB,EAAU;EAClB,OAAOD,EAAwB;EAC/B,SAASgB;CACX,CAAC,GACKI,IAAcf,EAClBD,EAAqC,EAAE,aAAU,CAAC,CACpD,GAEIiB,IAAe;CACnB,IAAI;EACF,IAAe,MAAMC,EAAuB;GAC1C;GACA;GACA,gBAAgBF;EAClB,CAAC;CACH,SAASG,GAAO;EACd,MAAM,IAAIrB,EACRS,EAAsB,GACtB,oCACAK,GACAO,CACF;CACF;CAEA,IAAIF,GACF,IAAI;EACF,IAAMG,IAAKC,EAAc;GACvB,UAAUP;GACV,SAASH;GACT;GACA;EACF,CAAC,GACKW,IAAS,MAAMC,EAAgB;GAAE,SAASZ;GAAgB,aAAaS;EAAG,CAAC;EACjF,MAAMzB,EAAsB2B,EAAO,eAAgC;CACrE,SAASH,GAAO;EACd,MAAM,IAAIrB,EACRS,EAAsB,GACtB,oCACAK,GACAO,CACF;CACF;CASF,IAAI,CAAC,MALgB3B,QACbY,EAA0BQ,GAAgBY,CAAiB,GACjE,SACA,EAAE,UAAUP,IAAe,IAAI,EAAE,CACnC,GAEE,MAAM,IAAInB,EACRS,EAAsB,GACtB,oCACAK,CACF;AAEJ;AAKA,eAAsBP,EAA2B,GAG/B;CAChB,IAAM,EAAE,mBAAgB,yBAAsBQ,GACxCF,IAAiB,MAAMF,EAAoCG,CAAc,GAEzEE,IAAkBC,EAAY;EAClC,QAAQlB,EAAU;EAClB,OAAOD,EAAwB;EAC/B,SAASgB;CACX,CAAC;CAED,IAAI;EACF,IAAMQ,IAAKK,EAAiB;GAC1B,UAAUX;GACV,SAASH;GACT;EACF,CAAC,GACKW,IAAS,MAAMC,EAAgB;GAAE,SAASZ;GAAgB,aAAaS;EAAG,CAAC;EACjF,MAAMzB,EAAsB2B,EAAO,eAAgC;CACrE,SAASH,GAAO;EACd,MAAM,IAAIrB,EACRU,EAAmB,GACnB,oCACAI,GACAO,CACF;CACF;AACF;AAQA,eAAsBf,EACpB,GACA,GACkB;CAClB,IAAI;EAIF,OAHM,MAAMX,EAAmBmB,CAAc,IAGtC,MAAMrB,EACXqB,GACAY,CACF,IALS;CAMX,SAASL,GAAO;EACd,MAAM,IAAIrB,EACRS,EAAsB,GACtB,oCACAK,GACAO,CACF;CACF;AACF"}
|
package/dist/{ensureModularPublishBootstrap-CDBZqcsZ.js → ensureModularPublishBootstrap-DqmBSJ7_.js}
RENAMED
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
import { t as e } from "./rolldown-runtime-Dy4uBu1J.js";
|
|
2
|
-
import {
|
|
3
|
-
import { t as l } from "./managedAccountAdmin-
|
|
2
|
+
import { E as t, Q as n, W as r, _t as i, gt as a, it as o, qt as s, t as c } from "./chainConfig-D801ynuH.js";
|
|
3
|
+
import { t as l } from "./managedAccountAdmin-IdudyXSZ.js";
|
|
4
4
|
//#region src/helpers/ensureModularPublishBootstrap.ts
|
|
5
5
|
var u = /* @__PURE__ */ e({ ensureModularPublishBootstrap: () => d });
|
|
6
6
|
async function d(e) {
|
|
7
|
-
|
|
8
|
-
let u =
|
|
7
|
+
n();
|
|
8
|
+
let u = r();
|
|
9
9
|
await u.autoConnect({
|
|
10
|
-
client:
|
|
10
|
+
client: o(),
|
|
11
11
|
chain: i()
|
|
12
12
|
});
|
|
13
13
|
let d = u.getAccount();
|
|
14
|
-
if (!d) throw new
|
|
15
|
-
if (d.address.toLowerCase() !== e.toLowerCase()) throw new
|
|
14
|
+
if (!d) throw new s(`Could not connect the managed publishing account on ${c()}. Reconnect with the same sign-in method and try again.`, "MANAGED_ACCOUNT_UNAVAILABLE", e);
|
|
15
|
+
if (d.address.toLowerCase() !== e.toLowerCase()) throw new s(`The connected managed account (${d.address}) is not the publishing account ${e}. Reconnect with the sign-in method that owns it.`, "MANAGED_ACCOUNT_UNAVAILABLE", e);
|
|
16
16
|
return await t(e, async () => a(await l(e))), d;
|
|
17
17
|
}
|
|
18
18
|
//#endregion
|
|
19
19
|
export { u as n, d as t };
|
|
20
20
|
|
|
21
|
-
//# sourceMappingURL=ensureModularPublishBootstrap-
|
|
21
|
+
//# sourceMappingURL=ensureModularPublishBootstrap-DqmBSJ7_.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ensureModularPublishBootstrap-
|
|
1
|
+
{"version":3,"file":"ensureModularPublishBootstrap-DqmBSJ7_.js","names":["__exportAll","ensureManagedAccountEasConfigured","syncPublishInAppAuthToken","getManagedAccountWallet","getPublishThirdwebChain","fromThirdwebAccount","getClient","ManagedAccountPublishError","getPublishChainName","getManagedAccountAdmin","ensureModularPublishBootstrap_exports","ensureModularPublishBootstrap","managedWallet","managedAccount","managedAddress"],"sources":["../src/helpers/ensureModularPublishBootstrap.ts"],"sourcesContent":["import type { Account } from 'thirdweb/wallets'\nimport { ManagedAccountPublishError } from '../errors'\nimport { fromThirdwebAccount } from './adapters/thirdwebAccount'\nimport { getPublishChainName } from './chainConfig'\nimport { ensureManagedAccountEasConfigured } from './ensureManagedAccountEasConfigured'\nimport { getManagedAccountAdmin } from './managedAccountAdmin'\nimport { getClient, getManagedAccountWallet, syncPublishInAppAuthToken } from './thirdweb'\nimport { getPublishThirdwebChain } from './thirdwebChain'\n\n/**\n * Returns the account that sends interactive `multiPublish`: the user's managed (EIP-4337) smart\n * account. Its UserOps execute `multiPublish` on the account itself, a self-call the Seed\n * extension accepts; session keys and other non-admin callers are rejected with `Unauthorized`.\n *\n * Also checks the account's EAS pointer. Only pre-rollout accounts that report no EAS get\n * `setEas`, sent by the admin EOA.\n */\nexport async function ensureModularPublishBootstrap(managedAddress: string): Promise<Account> {\n syncPublishInAppAuthToken()\n const managedWallet = getManagedAccountWallet()\n await managedWallet.autoConnect({ client: getClient(), chain: getPublishThirdwebChain() })\n const managedAccount = managedWallet.getAccount()\n if (!managedAccount) {\n throw new ManagedAccountPublishError(\n `Could not connect the managed publishing account on ${getPublishChainName()}. Reconnect with the same sign-in method and try again.`,\n 'MANAGED_ACCOUNT_UNAVAILABLE',\n managedAddress,\n )\n }\n if (managedAccount.address.toLowerCase() !== managedAddress.toLowerCase()) {\n throw new ManagedAccountPublishError(\n `The connected managed account (${managedAccount.address}) is not the publishing account ${managedAddress}. Reconnect with the sign-in method that owns it.`,\n 'MANAGED_ACCOUNT_UNAVAILABLE',\n managedAddress,\n )\n }\n\n await ensureManagedAccountEasConfigured(managedAddress, async () =>\n fromThirdwebAccount(await getManagedAccountAdmin(managedAddress)),\n )\n return managedAccount\n}\n"],"mappings":";;;;;AAiBA,eAAsBW,EAA8B,GAA0C;CAC5F,EAA0B;CAC1B,IAAMC,IAAgBT,EAAwB;CAC9C,MAAMS,EAAc,YAAY;EAAE,QAAQN,EAAU;EAAG,OAAOF,EAAwB;CAAE,CAAC;CACzF,IAAMS,IAAiBD,EAAc,WAAW;CAChD,IAAI,CAACC,GACH,MAAM,IAAIN,EACR,uDAAuDC,EAAoB,EAAE,0DAC7E,+BACAM,CACF;CAEF,IAAID,EAAe,QAAQ,YAAY,MAAMC,EAAe,YAAY,GACtE,MAAM,IAAIP,EACR,kCAAkCM,EAAe,QAAQ,kCAAkCC,EAAe,oDAC1G,+BACAA,CACF;CAMF,OAHA,MAAMb,EAAkCa,GAAgB,YACtDT,EAAoB,MAAMI,EAAuBK,CAAc,CAAC,CAClE,GACOD;AACT"}
|
package/dist/{ensureSmartWalletThenPublish-hIBtsKXM.js → ensureSmartWalletThenPublish-DcuHyKXL.js}
RENAMED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { t as e } from "./rolldown-runtime-Dy4uBu1J.js";
|
|
2
|
-
import { H as t, Tt as n,
|
|
2
|
+
import { H as t, Tt as n, U as r, Z as i, _t as a, a as o, f as s, gt as c, qt as l, t as u, wt as d } from "./chainConfig-D801ynuH.js";
|
|
3
3
|
import { r as f } from "./publishWalletRegistry-BaQe9rIR.js";
|
|
4
4
|
import { ethers as p } from "ethers";
|
|
5
5
|
//#region src/helpers/ensureSmartWalletThenPublish.ts
|
|
@@ -11,14 +11,14 @@ async function v(e, n, u, d) {
|
|
|
11
11
|
let p = o(), m = await u();
|
|
12
12
|
if (!m || !m.trim()) return { outcome: "no_address" };
|
|
13
13
|
if (p.useModularExecutor) {
|
|
14
|
-
let n = await
|
|
14
|
+
let n = await r();
|
|
15
15
|
if (!n) return {
|
|
16
16
|
outcome: "managed_not_ready",
|
|
17
17
|
error: new l(h, "MANAGED_ACCOUNT_UNAVAILABLE")
|
|
18
18
|
};
|
|
19
19
|
let i;
|
|
20
20
|
try {
|
|
21
|
-
i = await
|
|
21
|
+
i = await t(a());
|
|
22
22
|
} catch (e) {
|
|
23
23
|
return {
|
|
24
24
|
outcome: "managed_not_ready",
|
|
@@ -44,4 +44,4 @@ async function v(e, n, u, d) {
|
|
|
44
44
|
//#endregion
|
|
45
45
|
export { m as n, v as t };
|
|
46
46
|
|
|
47
|
-
//# sourceMappingURL=ensureSmartWalletThenPublish-
|
|
47
|
+
//# sourceMappingURL=ensureSmartWalletThenPublish-DcuHyKXL.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ensureSmartWalletThenPublish-
|
|
1
|
+
{"version":3,"file":"ensureSmartWalletThenPublish-DcuHyKXL.js","names":["__exportAll","getConnectedManagedAccountAddress","isSeedSigner","getConnectedModularAccount","resolveSmartWalletForPublish","getPublishThirdwebChain","getPublishConfig","startPublish","fromThirdwebAccount","ManagedAccountPublishError","getPublishChainName","isPublishWallet","getPublishWallet","ensureSmartWalletThenPublish_exports","ensureSmartWalletThenPublish","MSG_NO_ACCOUNT_MODULAR","MSG_MANAGED_UNAVAILABLE","coerceDataItemSigner","signer","ethers","config","address","getAddress","modularAccount","managedAddress","cause","wallet","item","options","resolved","activeAccount"],"sources":["../src/helpers/ensureSmartWalletThenPublish.ts"],"sourcesContent":["import type { Item } from '@seedprotocol/sdk'\nimport type { Account } from 'thirdweb/wallets'\nimport {\n getConnectedManagedAccountAddress,\n getConnectedModularAccount,\n resolveSmartWalletForPublish,\n} from './thirdweb'\nimport { fromThirdwebAccount } from './adapters/thirdwebAccount'\nimport { isPublishWallet, isSeedSigner, type PublishWallet, type SeedSigner } from './seedSigner'\nimport { ethers } from 'ethers'\nimport { startPublish } from './ensureWalletThenPublish'\nimport { getPublishWallet } from './publishWalletRegistry'\nimport type { CreatePublishOptions } from '../config'\nimport { getPublishConfig } from '../config'\nimport { ManagedAccountPublishError } from '../errors'\nimport { getPublishThirdwebChain } from './thirdwebChain'\nimport { getPublishChainName } from './chainConfig'\n\nexport type EnsureSmartWalletResult =\n | Extract<import('./ensureWalletThenPublish').EnsureWalletThenPublishResult, { outcome: 'started' | 'already_publishing' }>\n | { outcome: 'no_address' }\n | { outcome: 'needs_deploy' }\n | { outcome: 'managed_not_ready'; error: ManagedAccountPublishError }\n\nconst MSG_NO_ACCOUNT_MODULAR =\n 'A connected wallet is required for publishing with the modular executor. Connect your wallet and try again.'\n\nconst MSG_MANAGED_UNAVAILABLE = () =>\n `Could not connect the managed publishing account on ${getPublishChainName()}. Reconnect with the same sign-in method and try again.`\n\nfunction coerceDataItemSigner(\n signer: CreatePublishOptions['dataItemSigner'] | Account | SeedSigner | PublishWallet | undefined,\n): CreatePublishOptions['dataItemSigner'] {\n if (!signer) return undefined\n if (signer instanceof ethers.Wallet) return signer\n if (isPublishWallet(signer)) return signer.signer\n if (isSeedSigner(signer)) return signer\n return fromThirdwebAccount(signer as Account).signer\n}\n\n/**\n * Thirdweb path: resolves the smart wallet for the current account; if deployed, starts publish.\n * Prefer {@link ensureWalletThenPublish} for vendor-neutral entry.\n */\nexport async function ensureSmartWalletThenPublish(\n item: Item<any>,\n activeAccount: Account | null | undefined,\n getAddress: () => Promise<string | null>,\n options?: CreatePublishOptions,\n): Promise<EnsureSmartWalletResult> {\n const config = getPublishConfig()\n const address = await getAddress()\n if (!address || !address.trim()) {\n return { outcome: 'no_address' }\n }\n\n if (config.useModularExecutor) {\n const modularAccount = await getConnectedModularAccount()\n if (!modularAccount) {\n return {\n outcome: 'managed_not_ready',\n error: new ManagedAccountPublishError(MSG_NO_ACCOUNT_MODULAR, 'MANAGED_ACCOUNT_UNAVAILABLE'),\n }\n }\n\n let managedAddress: string\n try {\n managedAddress = await getConnectedManagedAccountAddress(getPublishThirdwebChain())\n } catch (cause) {\n return {\n outcome: 'managed_not_ready',\n error: new ManagedAccountPublishError(\n MSG_MANAGED_UNAVAILABLE(),\n 'MANAGED_ACCOUNT_UNAVAILABLE',\n undefined,\n cause,\n ),\n }\n }\n\n const wallet = fromThirdwebAccount(modularAccount, { kind: 'smart' })\n return startPublish(item, managedAddress, wallet, {\n ...options,\n dataItemSigner: coerceDataItemSigner(options?.dataItemSigner) ?? wallet.signer,\n })\n }\n\n const resolved = await resolveSmartWalletForPublish(activeAccount ?? null)\n if ('address' in resolved) {\n const wallet = fromThirdwebAccount(resolved.account, { kind: 'smart' })\n return startPublish(item, resolved.address, wallet, {\n ...options,\n // The smart account can't sign data items; ConnectButton registers its admin EOA for that.\n dataItemSigner:\n coerceDataItemSigner(options?.dataItemSigner) ?? getPublishWallet()?.dataItemSigner,\n })\n }\n return { outcome: 'needs_deploy' }\n}\n"],"mappings":";;;;;sEAwBMe,IACJ,+GAEIC,UACJ,uDAAuDN,EAAoB,EAAE;AAE/E,SAASO,EACP,GACwC;CACxC,IAAKC,GAIL,OAHIA,aAAkBC,EAAO,SAAeD,IACxCP,EAAgBO,CAAM,IAAUA,EAAO,SACvChB,EAAagB,CAAM,IAAUA,IAC1BV,EAAoBU,CAAiB,CAAC,CAAC;AAChD;AAMA,eAAsBJ,EACpB,GACA,GACA,GACA,GACkC;CAClC,IAAMM,IAASd,EAAiB,GAC1Be,IAAU,MAAMC,EAAW;CACjC,IAAI,CAACD,KAAW,CAACA,EAAQ,KAAK,GAC5B,OAAO,EAAE,SAAS,aAAa;CAGjC,IAAID,EAAO,oBAAoB;EAC7B,IAAMG,IAAiB,MAAMpB,EAA2B;EACxD,IAAI,CAACoB,GACH,OAAO;GACL,SAAS;GACT,OAAO,IAAId,EAA2BM,GAAwB,6BAA6B;EAC7F;EAGF,IAAIS;EACJ,IAAI;GACF,IAAiB,MAAMvB,EAAkCI,EAAwB,CAAC;EACpF,SAASoB,GAAO;GACd,OAAO;IACL,SAAS;IACT,OAAO,IAAIhB,EACTO,EAAwB,GACxB,+BACA,KAAA,GACAS,CACF;GACF;EACF;EAEA,IAAMC,IAASlB,EAAoBe,GAAgB,EAAE,MAAM,QAAQ,CAAC;EACpE,OAAOhB,EAAaoB,GAAMH,GAAgBE,GAAQ;GAChD,GAAGE;GACH,gBAAgBX,EAAqBW,GAAS,cAAc,KAAKF,EAAO;EAC1E,CAAC;CACH;CAEA,IAAMG,IAAW,MAAMzB,EAA6B0B,KAAiB,IAAI;CACzE,IAAI,aAAaD,GAAU;EACzB,IAAMH,IAASlB,EAAoBqB,EAAS,SAAS,EAAE,MAAM,QAAQ,CAAC;EACtE,OAAOtB,EAAaoB,GAAME,EAAS,SAASH,GAAQ;GAClD,GAAGE;GAEH,gBACEX,EAAqBW,GAAS,cAAc,KAAKhB,EAAiB,CAAC,EAAE;EACzE,CAAC;CACH;CACA,OAAO,EAAE,SAAS,eAAe;AACnC"}
|
|
@@ -38,6 +38,6 @@ export declare const PublishMachineStates: {
|
|
|
38
38
|
readonly FAILURE: "failure";
|
|
39
39
|
};
|
|
40
40
|
/** States that run for a long time without snapshot changes; need periodic saves. */
|
|
41
|
-
export declare const LONG_RUNNING_PUBLISH_STATES: readonly ["
|
|
41
|
+
export declare const LONG_RUNNING_PUBLISH_STATES: readonly ["uploadingViaBundler", "uploadingViaBundlerPhase2"];
|
|
42
42
|
export declare const PERIODIC_SAVE_INTERVAL_MS = 30000;
|
|
43
43
|
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/helpers/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;GAEG;AACH,eAAO,MAAM,uBAAuB,EAClC,4CAAqD,CAAA;AAEvD,wEAAwE;AACxE,eAAO,MAAM,+BAA+B,EAC1C,oEAA6E,CAAA;AAE/E;;;GAGG;AACH,eAAO,MAAM,iCAAiC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,MAAM,EAAE,CAAC,CAErF,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,gCAAgC,EAC3C,4CAAqD,CAAA;AAEvD;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAC/B,4CAAqD,CAAA;AAEvD;;;;;;GAMG;AACH,eAAO,MAAM,8CAA8C,EACzD,4CAAqD,CAAA;AAEvD;;;GAGG;AACH,eAAO,MAAM,yCAAyC,8CACN,CAAA;AAEhD,eAAO,MAAM,oBAAoB;;;CAGvB,CAAA;AAEV,qFAAqF;AACrF,eAAO,MAAM,2BAA2B,
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/helpers/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;GAEG;AACH,eAAO,MAAM,uBAAuB,EAClC,4CAAqD,CAAA;AAEvD,wEAAwE;AACxE,eAAO,MAAM,+BAA+B,EAC1C,oEAA6E,CAAA;AAE/E;;;GAGG;AACH,eAAO,MAAM,iCAAiC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,MAAM,EAAE,CAAC,CAErF,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,gCAAgC,EAC3C,4CAAqD,CAAA;AAEvD;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAC/B,4CAAqD,CAAA;AAEvD;;;;;;GAMG;AACH,eAAO,MAAM,8CAA8C,EACzD,4CAAqD,CAAA;AAEvD;;;GAGG;AACH,eAAO,MAAM,yCAAyC,8CACN,CAAA;AAEhD,eAAO,MAAM,oBAAoB;;;CAGvB,CAAA;AAEV,qFAAqF;AACrF,eAAO,MAAM,2BAA2B,+DAG9B,CAAA;AAEV,eAAO,MAAM,yBAAyB,QAAS,CAAA"}
|
package/dist/index.d.ts
CHANGED
|
@@ -4,7 +4,7 @@ export { getPublishChainName } from './helpers/chainConfig';
|
|
|
4
4
|
export { verifyPublishChain, PublishChainConfigError } from './helpers/verifyPublishChain';
|
|
5
5
|
export { seedTwinConfig, type SeedTwinInfo, type SeedTwinPublishConfig } from './helpers/seedTwin';
|
|
6
6
|
export { EAS_CHAIN_DEPLOYMENTS, getEasChainDeployment, type EasChainDeployment, } from '@seedprotocol/eas';
|
|
7
|
-
export { initPublish, configurePublish, getPublishConfig, resolvePublishEasChain, requireManagedAccountFactoryAddress, type PublishConfig, type ResolvedPublishConfig, type CreatePublishOptions, type
|
|
7
|
+
export { initPublish, configurePublish, getPublishConfig, resolvePublishEasChain, requireManagedAccountFactoryAddress, type PublishConfig, type ResolvedPublishConfig, type CreatePublishOptions, type ArweaveDataItemInfoResult, type PublishAccountMode, } from './config';
|
|
8
8
|
export { resolvePublishPayment, resolvePublishSender, PublishPaymentConfigError, type PublishPaymentConfig, type PublishGasPayer, type PublishStoragePayer, type PublishSenderKind, type ResolvedPublishPayment, type PublishUserStorageConfig, DEFAULT_TURBO_UPLOAD_URL, DEFAULT_TURBO_PAYMENT_URL, } from './payment';
|
|
9
9
|
export { InsufficientStorageCreditsError, getTurboBalanceWinc, getTurboPriceWinc } from './helpers/turbo';
|
|
10
10
|
export { PublishNotAuthorizedError, PUBLISH_AUTHORIZATION_HEADER, type AuthorizePublish, type PublishAuthorization, type PublishAuthorizationRequest, } from './authorization';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,8CAA8C,EAC9C,yCAAyC,EACzC,iCAAiC,GAClC,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAA;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAC3D,OAAO,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAA;AAC1F,OAAO,EAAE,cAAc,EAAE,KAAK,YAAY,EAAE,KAAK,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;AAClG,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,KAAK,kBAAkB,GACxB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EACL,WAAW,EACX,gBAAgB,EAChB,gBAAgB,EAChB,sBAAsB,EACtB,mCAAmC,EACnC,KAAK,aAAa,EAClB,KAAK,qBAAqB,EAC1B,KAAK,oBAAoB,EACzB,KAAK,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|