@seedprotocol/sdk 0.7.3-next.613.g79a8dfd → 0.7.3

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.
Files changed (239) hide show
  1. package/dist/{db-CQt-gcAl.js → BasePathResolver-Cm4apKRb.js} +2041 -127
  2. package/dist/BasePathResolver-Cm4apKRb.js.map +1 -0
  3. package/dist/{ClientManager-DDA9956Y.js → ClientManager-i3nJASkg.js} +664 -277
  4. package/dist/ClientManager-i3nJASkg.js.map +1 -0
  5. package/dist/{Item-D4FigtYS.js → Item-DBFchXpC.js} +495 -219
  6. package/dist/Item-DBFchXpC.js.map +1 -0
  7. package/dist/{ModelProperty-BDt6AU2h.js → ModelProperty-BS49g01Y.js} +167 -47
  8. package/dist/ModelProperty-BS49g01Y.js.map +1 -0
  9. package/dist/{Schema-B8xqLWkL.js → Schema-CpMNEnUO.js} +53 -42
  10. package/dist/Schema-CpMNEnUO.js.map +1 -0
  11. package/dist/{SchemaValidationService-BPxkfDLU.js → SchemaValidationService-DieV4KL-.js} +13 -14
  12. package/dist/{SchemaValidationService-BPxkfDLU.js.map → SchemaValidationService-DieV4KL-.js.map} +1 -1
  13. package/dist/{backfillMetadataPropertyIds-DuTPcv8t.js → backfillMetadataPropertyIds-DSoOoTnX.js} +14 -7
  14. package/dist/{backfillMetadataPropertyIds-DuTPcv8t.js.map → backfillMetadataPropertyIds-DSoOoTnX.js.map} +1 -1
  15. package/dist/{configurePlatform-YcOiDQBZ.js → configurePlatform-D0lQGAMQ.js} +8 -7
  16. package/dist/{configurePlatform-YcOiDQBZ.js.map → configurePlatform-D0lQGAMQ.js.map} +1 -1
  17. package/dist/detachRowsBeforeDelete-S0q-DJPT.js +50 -0
  18. package/dist/detachRowsBeforeDelete-S0q-DJPT.js.map +1 -0
  19. package/dist/{eas-CpOD74Ke.js → eas-6pjU-OuX.js} +9 -8
  20. package/dist/eas-6pjU-OuX.js.map +1 -0
  21. package/dist/{getItem-B_OoFkd7.js → getItem-CxBNZ-WL.js} +13 -11
  22. package/dist/{getItem-B_OoFkd7.js.map → getItem-CxBNZ-WL.js.map} +1 -1
  23. package/dist/{getPublishPayload-Xl3sRkR-.js → getPublishPayload-CTCvRUoU.js} +50 -18
  24. package/dist/getPublishPayload-CTCvRUoU.js.map +1 -0
  25. package/dist/getPublishUploads-SFHCbf_y.js +648 -0
  26. package/dist/getPublishUploads-SFHCbf_y.js.map +1 -0
  27. package/dist/{index-Xl1_4Lmb.js → index-8O3Uow-Y.js} +125 -57
  28. package/dist/index-8O3Uow-Y.js.map +1 -0
  29. package/dist/{index-CSOQFAOn.js → index-AVFTVp1m.js} +2 -2
  30. package/dist/index-AVFTVp1m.js.map +1 -0
  31. package/dist/index-Cvt5UBz4.js +30 -0
  32. package/dist/index-Cvt5UBz4.js.map +1 -0
  33. package/dist/{index.browser-CjTe0vt1.js → index.browser-DBhxRoe8.js} +554 -165
  34. package/dist/index.browser-DBhxRoe8.js.map +1 -0
  35. package/dist/{index.node-Cfa7npS6.js → index.node-CJhlcNHM.js} +25 -13
  36. package/dist/index.node-CJhlcNHM.js.map +1 -0
  37. package/dist/main.js +30 -47
  38. package/dist/main.js.map +1 -1
  39. package/dist/mimeTypes-DHAHC4eZ.js +204 -0
  40. package/dist/mimeTypes-DHAHC4eZ.js.map +1 -0
  41. package/dist/node.js +19 -21
  42. package/dist/node.js.map +1 -1
  43. package/dist/platform.browser.js +13 -11
  44. package/dist/platform.browser.js.map +1 -1
  45. package/dist/platform.node.js +18 -5
  46. package/dist/platform.node.js.map +1 -1
  47. package/dist/{property-BrXkY1Rg.js → property-DwPD283A.js} +14 -12
  48. package/dist/property-DwPD283A.js.map +1 -0
  49. package/dist/{publishDraftGraph-X0Wr9txE.js → publishDraftGraph-BOn3_Occ.js} +6 -9
  50. package/dist/{publishDraftGraph-X0Wr9txE.js.map → publishDraftGraph-BOn3_Occ.js.map} +1 -1
  51. package/dist/{resetAmbiguousLegacyItemData-Ci6PM_vC.js → resetAmbiguousLegacyItemData-BkYmBeJc.js} +14 -3
  52. package/dist/{resetAmbiguousLegacyItemData-Ci6PM_vC.js.map → resetAmbiguousLegacyItemData-BkYmBeJc.js.map} +1 -1
  53. package/dist/{resolveModelForSyncedSeed-DFVdnYq8.js → resolveModelForSyncedSeed-BL24nLa7.js} +2 -2
  54. package/dist/{resolveModelForSyncedSeed-DFVdnYq8.js.map → resolveModelForSyncedSeed-BL24nLa7.js.map} +1 -1
  55. package/dist/src/Item/Item.d.ts +21 -3
  56. package/dist/src/Item/Item.d.ts.map +1 -1
  57. package/dist/src/Item/service/actors/runPublish.d.ts +11 -2
  58. package/dist/src/Item/service/actors/runPublish.d.ts.map +1 -1
  59. package/dist/src/Item/service/itemMachineSingle.d.ts +12 -2
  60. package/dist/src/Item/service/itemMachineSingle.d.ts.map +1 -1
  61. package/dist/src/ItemProperty/ItemProperty.d.ts +5 -3
  62. package/dist/src/ItemProperty/ItemProperty.d.ts.map +1 -1
  63. package/dist/src/ItemProperty/service/actors/saveValueToDb/analyzeInput.d.ts.map +1 -1
  64. package/dist/src/ItemProperty/service/actors/saveValueToDb/saveItemStorage.d.ts.map +1 -1
  65. package/dist/src/ItemProperty/service/propertyMachine.d.ts.map +1 -1
  66. package/dist/src/Model/Model.d.ts +10 -4
  67. package/dist/src/Model/Model.d.ts.map +1 -1
  68. package/dist/src/Model/index.d.ts +2 -2
  69. package/dist/src/ModelProperty/ModelProperty.d.ts +10 -2
  70. package/dist/src/ModelProperty/ModelProperty.d.ts.map +1 -1
  71. package/dist/src/ModelProperty/service/modelPropertyMachine.d.ts +3 -0
  72. package/dist/src/ModelProperty/service/modelPropertyMachine.d.ts.map +1 -1
  73. package/dist/src/Schema/Schema.d.ts +2 -2
  74. package/dist/src/Schema/Schema.d.ts.map +1 -1
  75. package/dist/src/Schema/index.d.ts +0 -1
  76. package/dist/src/Schema/index.d.ts.map +1 -1
  77. package/dist/src/browser/helpers/FileManager.d.ts +4 -1
  78. package/dist/src/browser/helpers/FileManager.d.ts.map +1 -1
  79. package/dist/src/browser/helpers/tolerantWebAccess.d.ts +79 -4
  80. package/dist/src/browser/helpers/tolerantWebAccess.d.ts.map +1 -1
  81. package/dist/src/browser/workers/FileDownloader.d.ts +19 -4
  82. package/dist/src/browser/workers/FileDownloader.d.ts.map +1 -1
  83. package/dist/src/browser/workers/filesDownload.d.ts.map +1 -1
  84. package/dist/src/client/ClientManager.d.ts +30 -11
  85. package/dist/src/client/ClientManager.d.ts.map +1 -1
  86. package/dist/src/client/actors/platformClassesInit.d.ts +6 -0
  87. package/dist/src/client/actors/platformClassesInit.d.ts.map +1 -1
  88. package/dist/src/client/actors/processSchemaFiles.d.ts.map +1 -1
  89. package/dist/src/client/actors/saveConfig.d.ts +13 -6
  90. package/dist/src/client/actors/saveConfig.d.ts.map +1 -1
  91. package/dist/src/client/clientManagerMachine.d.ts.map +1 -1
  92. package/dist/src/db/migrateLegacyItemStorageRows.d.ts +57 -0
  93. package/dist/src/db/migrateLegacyItemStorageRows.d.ts.map +1 -0
  94. package/dist/src/db/read/getCompositeChildPaths.d.ts +13 -0
  95. package/dist/src/db/read/getCompositeChildPaths.d.ts.map +1 -0
  96. package/dist/src/db/read/getItems.d.ts.map +1 -1
  97. package/dist/src/db/read/getPublishPayload.d.ts +1 -1
  98. package/dist/src/db/read/getPublishPayload.d.ts.map +1 -1
  99. package/dist/src/db/read/getPublishUploads.d.ts +32 -3
  100. package/dist/src/db/read/getPublishUploads.d.ts.map +1 -1
  101. package/dist/src/db/read/summarizePublishWork.d.ts.map +1 -1
  102. package/dist/src/db/write/claimUnpublishedDrafts.d.ts +2 -0
  103. package/dist/src/db/write/claimUnpublishedDrafts.d.ts.map +1 -1
  104. package/dist/src/db/write/convertVerbatimItemStorageRow.d.ts +44 -0
  105. package/dist/src/db/write/convertVerbatimItemStorageRow.d.ts.map +1 -0
  106. package/dist/src/db/write/createNewItem.d.ts.map +1 -1
  107. package/dist/src/eventBus.d.ts +5 -0
  108. package/dist/src/eventBus.d.ts.map +1 -1
  109. package/dist/src/events/files/download.d.ts.map +1 -1
  110. package/dist/src/helpers/FileManager/BaseFileManager.d.ts +3 -3
  111. package/dist/src/helpers/FileManager/BaseFileManager.d.ts.map +1 -1
  112. package/dist/src/helpers/FileManager/IFileManager.d.ts +25 -1
  113. package/dist/src/helpers/FileManager/IFileManager.d.ts.map +1 -1
  114. package/dist/src/helpers/arweaveContentTags.d.ts +33 -0
  115. package/dist/src/helpers/arweaveContentTags.d.ts.map +1 -0
  116. package/dist/src/helpers/cachedPropertyRefresh.d.ts +12 -0
  117. package/dist/src/helpers/cachedPropertyRefresh.d.ts.map +1 -0
  118. package/dist/src/helpers/compositeUpload.d.ts +28 -0
  119. package/dist/src/helpers/compositeUpload.d.ts.map +1 -0
  120. package/dist/src/helpers/db.d.ts +3 -0
  121. package/dist/src/helpers/db.d.ts.map +1 -1
  122. package/dist/src/helpers/easSdk.d.ts +16 -0
  123. package/dist/src/helpers/easSdk.d.ts.map +1 -0
  124. package/dist/src/helpers/entity/detachRowsBeforeDelete.d.ts +16 -0
  125. package/dist/src/helpers/entity/detachRowsBeforeDelete.d.ts.map +1 -0
  126. package/dist/src/helpers/entity/entityDestroy.d.ts +2 -0
  127. package/dist/src/helpers/entity/entityDestroy.d.ts.map +1 -1
  128. package/dist/src/helpers/itemStorageFile.d.ts +57 -0
  129. package/dist/src/helpers/itemStorageFile.d.ts.map +1 -0
  130. package/dist/src/helpers/mapWithConcurrency.d.ts +7 -0
  131. package/dist/src/helpers/mapWithConcurrency.d.ts.map +1 -0
  132. package/dist/src/helpers/mimeTypes.d.ts +43 -0
  133. package/dist/src/helpers/mimeTypes.d.ts.map +1 -0
  134. package/dist/src/helpers/ownership.d.ts +28 -4
  135. package/dist/src/helpers/ownership.d.ts.map +1 -1
  136. package/dist/src/helpers/property/index.d.ts +37 -51
  137. package/dist/src/helpers/property/index.d.ts.map +1 -1
  138. package/dist/src/helpers/publishConfig.d.ts +27 -8
  139. package/dist/src/helpers/publishConfig.d.ts.map +1 -1
  140. package/dist/src/helpers/storageDir.d.ts +16 -0
  141. package/dist/src/helpers/storageDir.d.ts.map +1 -0
  142. package/dist/src/helpers/tabCoordinator.d.ts +5 -1
  143. package/dist/src/helpers/tabCoordinator.d.ts.map +1 -1
  144. package/dist/src/helpers/tabEvents.d.ts +23 -2
  145. package/dist/src/helpers/tabEvents.d.ts.map +1 -1
  146. package/dist/src/helpers/updateSchema.d.ts +5 -0
  147. package/dist/src/helpers/updateSchema.d.ts.map +1 -1
  148. package/dist/src/helpers/waitForEntityIdle.d.ts +5 -0
  149. package/dist/src/helpers/waitForEntityIdle.d.ts.map +1 -1
  150. package/dist/src/imports/json.d.ts +9 -0
  151. package/dist/src/imports/json.d.ts.map +1 -1
  152. package/dist/src/index.d.ts +11 -7
  153. package/dist/src/index.d.ts.map +1 -1
  154. package/dist/src/interfaces/IItem.d.ts +7 -1
  155. package/dist/src/interfaces/IItem.d.ts.map +1 -1
  156. package/dist/src/node/db/Db.d.ts.map +1 -1
  157. package/dist/src/node/helpers/PathResolver.d.ts.map +1 -1
  158. package/dist/src/node/index.d.ts +8 -1
  159. package/dist/src/node/index.d.ts.map +1 -1
  160. package/dist/src/platform/index.browser.d.ts +2 -0
  161. package/dist/src/platform/index.browser.d.ts.map +1 -1
  162. package/dist/src/platform/index.node.d.ts +2 -0
  163. package/dist/src/platform/index.node.d.ts.map +1 -1
  164. package/dist/src/types/fileManager.d.ts +3 -14
  165. package/dist/src/types/fileManager.d.ts.map +1 -1
  166. package/dist/src/types/index.d.ts +12 -1
  167. package/dist/src/types/index.d.ts.map +1 -1
  168. package/dist/src/types/machines.d.ts +2 -0
  169. package/dist/src/types/machines.d.ts.map +1 -1
  170. package/dist/src/types/property.d.ts +8 -0
  171. package/dist/src/types/property.d.ts.map +1 -1
  172. package/dist/src/types/publish.d.ts +14 -0
  173. package/dist/src/types/publish.d.ts.map +1 -1
  174. package/dist/{syncDbWithEas-BU-jZ5bJ.js → syncDbWithEas-Bv2Fe38J.js} +17 -17
  175. package/dist/{syncDbWithEas-BU-jZ5bJ.js.map → syncDbWithEas-Bv2Fe38J.js.map} +1 -1
  176. package/dist/tabEvents-9s2WCYw-.js +335 -0
  177. package/dist/tabEvents-9s2WCYw-.js.map +1 -0
  178. package/dist/tolerantWebAccess-iUu80pAP.js +551 -0
  179. package/dist/tolerantWebAccess-iUu80pAP.js.map +1 -0
  180. package/dist/{updateSeedRevokedAt-iLpzae1i.js → updateSeedRevokedAt-zBfi931j.js} +3 -3
  181. package/dist/{updateSeedRevokedAt-iLpzae1i.js.map → updateSeedRevokedAt-zBfi931j.js.map} +1 -1
  182. package/package.json +11 -12
  183. package/src/node/easLodashRegister.js +4 -0
  184. package/dist/BasePathResolver-BdxCSIzn.js +0 -679
  185. package/dist/BasePathResolver-BdxCSIzn.js.map +0 -1
  186. package/dist/ClientManager-DDA9956Y.js.map +0 -1
  187. package/dist/Item-D4FigtYS.js.map +0 -1
  188. package/dist/ModelProperty-BDt6AU2h.js.map +0 -1
  189. package/dist/Schema-B8xqLWkL.js.map +0 -1
  190. package/dist/cjs/ModelProperty-B-cZm1yU.js +0 -1977
  191. package/dist/cjs/ModelProperty-B-cZm1yU.js.map +0 -1
  192. package/dist/cjs/Schema-STP972Xw.js +0 -5256
  193. package/dist/cjs/Schema-STP972Xw.js.map +0 -1
  194. package/dist/cjs/SchemaValidationService-CKNW1bKg.js +0 -778
  195. package/dist/cjs/SchemaValidationService-CKNW1bKg.js.map +0 -1
  196. package/dist/cjs/backfillMetadataPropertyIds-CP3y1skt.js +0 -89
  197. package/dist/cjs/backfillMetadataPropertyIds-CP3y1skt.js.map +0 -1
  198. package/dist/cjs/eas-CAnUC4wd.js +0 -138
  199. package/dist/cjs/eas-CAnUC4wd.js.map +0 -1
  200. package/dist/cjs/getItem-CWgb3e9G.js +0 -58
  201. package/dist/cjs/getItem-CWgb3e9G.js.map +0 -1
  202. package/dist/cjs/getPublishPayload-BsZWiJ03.js +0 -1603
  203. package/dist/cjs/getPublishPayload-BsZWiJ03.js.map +0 -1
  204. package/dist/cjs/getPublishUploads-BQr8aMVP.js +0 -495
  205. package/dist/cjs/getPublishUploads-BQr8aMVP.js.map +0 -1
  206. package/dist/cjs/index-nA5PxBSs.js +0 -70
  207. package/dist/cjs/index-nA5PxBSs.js.map +0 -1
  208. package/dist/cjs/index-usKaANAq.js +0 -22171
  209. package/dist/cjs/index-usKaANAq.js.map +0 -1
  210. package/dist/cjs/index.browser-BSf8HpnU.js +0 -22
  211. package/dist/cjs/index.browser-BSf8HpnU.js.map +0 -1
  212. package/dist/cjs/property-xMwPhQ5N.js +0 -327
  213. package/dist/cjs/property-xMwPhQ5N.js.map +0 -1
  214. package/dist/cjs/publishDraftGraph-BRWlR1KO.js +0 -403
  215. package/dist/cjs/publishDraftGraph-BRWlR1KO.js.map +0 -1
  216. package/dist/cjs/resetAmbiguousLegacyItemData-8nfkj9rz.js +0 -116
  217. package/dist/cjs/resetAmbiguousLegacyItemData-8nfkj9rz.js.map +0 -1
  218. package/dist/cjs/resolveModelForSyncedSeed-kYRuDWYw.js +0 -49
  219. package/dist/cjs/resolveModelForSyncedSeed-kYRuDWYw.js.map +0 -1
  220. package/dist/cjs/syncDbWithEas-DqRhV8o2.js +0 -886
  221. package/dist/cjs/syncDbWithEas-DqRhV8o2.js.map +0 -1
  222. package/dist/db-CQt-gcAl.js.map +0 -1
  223. package/dist/eas-CpOD74Ke.js.map +0 -1
  224. package/dist/getPublishPayload-Xl3sRkR-.js.map +0 -1
  225. package/dist/getPublishUploads-DHP01KgU.js +0 -484
  226. package/dist/getPublishUploads-DHP01KgU.js.map +0 -1
  227. package/dist/index-BGt4_oPO.js +0 -31
  228. package/dist/index-BGt4_oPO.js.map +0 -1
  229. package/dist/index-CSOQFAOn.js.map +0 -1
  230. package/dist/index-Xl1_4Lmb.js.map +0 -1
  231. package/dist/index.browser-CjTe0vt1.js.map +0 -1
  232. package/dist/index.node-Cfa7npS6.js.map +0 -1
  233. package/dist/main.cjs +0 -84
  234. package/dist/main.cjs.map +0 -1
  235. package/dist/property-BrXkY1Rg.js.map +0 -1
  236. package/dist/tabEvents-BZJMY5uK.js +0 -1344
  237. package/dist/tabEvents-BZJMY5uK.js.map +0 -1
  238. package/dist/tolerantWebAccess-BZ2RA_mb.js +0 -160
  239. package/dist/tolerantWebAccess-BZ2RA_mb.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"clientManagerMachine.d.ts","sourceRoot":"","sources":["../../../src/client/clientManagerMachine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAA;AAStE,OAAO,EAAuB,kBAAkB,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AA+GxF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBAgBkC,MAAM;;;;;;;;;;;;;;;;+BA8MvE,CAAA"}
1
+ {"version":3,"file":"clientManagerMachine.d.ts","sourceRoot":"","sources":["../../../src/client/clientManagerMachine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAA;AAStE,OAAO,EAAuB,kBAAkB,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAgHxF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBAgBkC,MAAM;;;;;;;;;;;;;;;;+BAoNvE,CAAA"}
@@ -0,0 +1,57 @@
1
+ /** appState key recording that legacy ItemStorage rows have been written to their files. */
2
+ export declare const LEGACY_ITEM_STORAGE_MIGRATION_KEY = "legacyItemStorageFiles:v1";
3
+ /** Runs in a row that left rows unconverted because a file write failed, before giving up. */
4
+ export declare const LEGACY_ITEM_STORAGE_MIGRATION_MAX_ATTEMPTS = 3;
5
+ export type LegacyItemStorageMigrationMarker = {
6
+ status: 'done' | 'retry';
7
+ attempts: number;
8
+ converted: number;
9
+ failed: number;
10
+ at: number;
11
+ };
12
+ export type LegacyItemStorageMigrationResult = {
13
+ /** True when the marker said the migration had already run (nothing was checked). */
14
+ alreadyDone: boolean;
15
+ /** Legacy rows found (local drafts of ItemStorage properties holding their content verbatim). */
16
+ candidates: number;
17
+ converted: number;
18
+ /** Rows left as they were because writing the file or updating the row failed. */
19
+ failed: number;
20
+ /** Rows not converted on purpose: an older row of their property, or one that changed meanwhile. */
21
+ skipped: number;
22
+ };
23
+ /**
24
+ * One-time data migration: writes the content of legacy ItemStorage draft rows to their files.
25
+ *
26
+ * Before Item.create / createNewItem saved ItemStorage values through the save pipeline, a value
27
+ * given at creation was stored verbatim in metadata.property_value with no file. Publish converts
28
+ * such a row lazily (resolveItemStorageChildFile); this converts them all up front, with the same
29
+ * code ({@link convertVerbatimItemStorageRow}), so every ItemStorage draft has the shape a save
30
+ * gives it: the content in `<seedUid or seedLocalId><extension>`, the row holding
31
+ * refResolvedValue / localStorageDir / refValueType 'file' and no property_value.
32
+ *
33
+ * Only local drafts (no uid, not derived from an attestation) of properties whose properties row
34
+ * says `storage_type = 'ItemStorage'` are touched, and of those only the newest row of each
35
+ * seed's property: that is the row reads show and saves write to, and older rows sharing the one
36
+ * file name would overwrite it with older content. Published and synced rows are never changed.
37
+ *
38
+ * A row that fails is logged and left as it was (publish still converts it). The run is recorded
39
+ * in appState under {@link LEGACY_ITEM_STORAGE_MIGRATION_KEY}; a run with failed rows is retried
40
+ * on the next start, up to {@link LEGACY_ITEM_STORAGE_MIGRATION_MAX_ATTEMPTS} runs. Safe to run
41
+ * again regardless: a converted row no longer matches.
42
+ *
43
+ * @param options.force run even when the marker says it is done
44
+ */
45
+ export declare function migrateLegacyItemStorageRows(options?: {
46
+ force?: boolean;
47
+ }): Promise<LegacyItemStorageMigrationResult>;
48
+ /**
49
+ * Starts {@link migrateLegacyItemStorageRows} in the background once client init has finished
50
+ * (the properties table then holds the current storage settings). It runs in the leader tab only
51
+ * (docs/MULTI_TAB.md), under a `seed:item-storage-migration:<db>` lock in case several tabs lead
52
+ * (`multiTab: 'off'`); a tab that isn't leader runs it if it takes over. Never throws.
53
+ */
54
+ export declare function startLegacyItemStorageMigration(): void;
55
+ /** Resolves when a background run started by {@link startLegacyItemStorageMigration} has finished (at once if none is running). */
56
+ export declare function whenLegacyItemStorageMigrationSettled(): Promise<void>;
57
+ //# sourceMappingURL=migrateLegacyItemStorageRows.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migrateLegacyItemStorageRows.d.ts","sourceRoot":"","sources":["../../../src/db/migrateLegacyItemStorageRows.ts"],"names":[],"mappings":"AAcA,4FAA4F;AAC5F,eAAO,MAAM,iCAAiC,8BAA8B,CAAA;AAE5E,8FAA8F;AAC9F,eAAO,MAAM,0CAA0C,IAAI,CAAA;AAE3D,MAAM,MAAM,gCAAgC,GAAG;IAC7C,MAAM,EAAE,MAAM,GAAG,OAAO,CAAA;IACxB,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,MAAM,CAAA;IACd,EAAE,EAAE,MAAM,CAAA;CACX,CAAA;AAED,MAAM,MAAM,gCAAgC,GAAG;IAC7C,qFAAqF;IACrF,WAAW,EAAE,OAAO,CAAA;IACpB,iGAAiG;IACjG,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,kFAAkF;IAClF,MAAM,EAAE,MAAM,CAAA;IACd,oGAAoG;IACpG,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA;AAuFD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAsB,4BAA4B,CAChD,OAAO,GAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAO,GAChC,OAAO,CAAC,gCAAgC,CAAC,CAoF3C;AAkBD;;;;;GAKG;AACH,wBAAgB,+BAA+B,IAAI,IAAI,CAWtD;AAED,mIAAmI;AACnI,wBAAgB,qCAAqC,IAAI,OAAO,CAAC,IAAI,CAAC,CAErE"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Where the download worker saves each child of a composite upload, by transaction id then child
3
+ * (property) name: a path relative to the files root.
4
+ *
5
+ * The paths come from the ItemStorage rows sync derives from a `storage_transaction_id`
6
+ * attestation (see `createMetadataRecordsForStorageTransactionId`): property value = the
7
+ * transaction id, `refResolvedValue` = `<txId><extension>`, `localStorageDir` = the model's storage
8
+ * directory. Those rows are what hydration reads, so a child saved here is found as that property's
9
+ * file. Transactions with no such rows are left out; the worker then falls back to the legacy
10
+ * html / json layout.
11
+ */
12
+ export declare const getCompositeChildPaths: (transactionIds: string[]) => Promise<Record<string, Record<string, string>>>;
13
+ //# sourceMappingURL=getCompositeChildPaths.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getCompositeChildPaths.d.ts","sourceRoot":"","sources":["../../../../src/db/read/getCompositeChildPaths.ts"],"names":[],"mappings":"AAQA;;;;;;;;;;GAUG;AACH,eAAO,MAAM,sBAAsB,GACjC,gBAAgB,MAAM,EAAE,KACvB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAkChD,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"getItems.d.ts","sourceRoot":"","sources":["../../../../src/db/read/getItems.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAWlC,KAAK,iBAAiB,GAAG;IACvB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,gFAAgF;IAChF,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,qDAAqD;IACrD,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,aAAa,CAAC,EAAE,OAAO,GAAG,SAAS,GAAG,KAAK,CAAA;CAC5C,CAAA;AAED,KAAK,YAAY,GAAG,CAAC,KAAK,EAAE,iBAAiB,KAAK,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAA;AAErE;;;;;;;;;GASG;AACH,eAAO,MAAM,YAAY,EAAE,YA4G1B,CAAA"}
1
+ {"version":3,"file":"getItems.d.ts","sourceRoot":"","sources":["../../../../src/db/read/getItems.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAclC,KAAK,iBAAiB,GAAG;IACvB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,gFAAgF;IAChF,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,qDAAqD;IACrD,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,aAAa,CAAC,EAAE,OAAO,GAAG,SAAS,GAAG,KAAK,CAAA;CAC5C,CAAA;AAED,KAAK,YAAY,GAAG,CAAC,KAAK,EAAE,iBAAiB,KAAK,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAA;AAErE;;;;;;;;;GASG;AACH,eAAO,MAAM,YAAY,EAAE,YAqG1B,CAAA"}
@@ -1,4 +1,4 @@
1
- import { AttestationRequest, AttestationRequestData } from '@ethereum-attestation-service/eas-sdk';
1
+ import type { AttestationRequest, AttestationRequestData } from '@ethereum-attestation-service/eas-sdk';
2
2
  import { IItemProperty } from '../../interfaces';
3
3
  import { IItem } from '../../interfaces';
4
4
  import { PublishValidationFailedError, type PublishValidationError, type UnpublishedRelatedItem } from './publishErrors';
@@ -1 +1 @@
1
- {"version":3,"file":"getPublishPayload.d.ts","sourceRoot":"","sources":["../../../../src/db/read/getPublishPayload.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getPublishPayload.d.ts","sourceRoot":"","sources":["../../../../src/db/read/getPublishPayload.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,8 @@
1
1
  import { IItem, IItemProperty } from '../../interfaces';
2
2
  import type { ArweaveTransaction, TransactionTag } from '../../types/arweave';
3
- import { PublishUpload } from '../../types/publish';
3
+ import type { PublishUpload, PublishUploadData } from '../../types/publish';
4
+ /** L1 transactions {@link getPublishUploads} creates at once (each asks the gateway for price and anchor). */
5
+ export declare const CREATE_TRANSACTION_CONCURRENCY = 4;
4
6
  /** Optional tags merged into each Arweave tx after Content-SHA-256 / Content-Type. */
5
7
  export type GetPublishUploadsOptions = {
6
8
  arweaveUploadTags?: TransactionTag[];
@@ -20,11 +22,38 @@ export type UploadProperty = {
20
22
  itemProperty: IItemProperty<any>;
21
23
  childProperties: IItemProperty<any>[];
22
24
  };
25
+ /**
26
+ * Local file of one ItemStorage child of a composite upload. Tries, in order: the property's
27
+ * localStoragePath (context set by save / hydration / the live query), its newest metadata row's
28
+ * refResolvedValue + localStorageDir, then (for a local draft whose propertyValue is the content
29
+ * itself, as rows made before Item.create saved ItemStorage values) that content written to its
30
+ * file, then (for a local draft, or no row) the name
31
+ * saveItemStorage gives a new file (`<seedUid or seedLocalId><extension>` in the model's storage
32
+ * directory). A published or derived row is never swapped for a local file of another name: that
33
+ * file would be older content.
34
+ *
35
+ * `missingLocalEdit` lists the paths tried when nothing exists although the newest row is a saved
36
+ * local edit (no attestation uid, not derived from one, refResolvedValue set by saveItemStorage):
37
+ * that edit's file should be there. A published or derived row without a file (e.g. content not
38
+ * downloaded, or a property the composite never had) is skipped as before.
39
+ */
40
+ export declare const resolveItemStorageChildFile: (childProperty: IItemProperty<any>) => Promise<{
41
+ filePath?: string;
42
+ missingLocalEdit?: string[];
43
+ }>;
23
44
  /** Same walk as getPublishUploads: the item and the draft items its publish carries along. */
24
45
  export declare function itemHasPublishUploadCandidates(item: IItem<any>, relatedItemProperty?: IItemProperty<any>): Promise<boolean>;
25
46
  /**
26
- * Arweave uploads for a publish of `item`: its own, and those of every draft item the publish
27
- * carries along (reachable through relation and list properties, see publishDraftGraph.ts).
47
+ * Upload data for a publish of `item`: its own, and that of every draft item the publish carries
48
+ * along (reachable through relation and list properties, see publishDraftGraph.ts). Raw bytes plus
49
+ * Content-SHA-256 / Content-Type / configured tags; no Arweave transaction is created, so this
50
+ * does not touch the network. The bundler path in `@seedprotocol/publish` signs these as
51
+ * DataItems; {@link getPublishUploads} turns them into L1 transactions.
52
+ */
53
+ export declare const getPublishUploadData: (item: IItem<any>, uploads?: PublishUploadData[], relatedItemProperty?: IItemProperty<any>, options?: GetPublishUploadsOptions) => Promise<PublishUploadData[]>;
54
+ /**
55
+ * Arweave L1 transactions for a publish of `item`: {@link getPublishUploadData}, each made into an
56
+ * unsigned transaction carrying the same tags.
28
57
  */
29
58
  export declare const getPublishUploads: (item: IItem<any>, uploads?: PublishUpload[], relatedItemProperty?: IItemProperty<any>, options?: GetPublishUploadsOptions) => Promise<PublishUpload[]>;
30
59
  //# sourceMappingURL=getPublishUploads.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"getPublishUploads.d.ts","sourceRoot":"","sources":["../../../../src/db/read/getPublishUploads.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAGnD,OAAO,KAAK,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AACzE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAS/C,sFAAsF;AACtF,MAAM,MAAM,wBAAwB,GAAG;IACrC,iBAAiB,CAAC,EAAE,cAAc,EAAE,CAAA;IACpC;;OAEG;IACH,4BAA4B,CAAC,EAAE,MAAM,EAAE,CAAA;IACvC;;OAEG;IACH,2BAA2B,CAAC,EAAE,MAAM,EAAE,CAAA;IACtC,qGAAqG;IACrG,qBAAqB,CAAC,EAAE,OAAO,CAAA;CAChC,CAAA;AA2BD,eAAO,MAAM,yBAAyB,GACpC,MAAM,MAAM,GAAG,UAAU,EACzB,aAAa,MAAM,GAAG,SAAS,EAC/B,cAAc,MAAM,EACpB,iBAAiB,cAAc,EAAE,KAChC,OAAO,CAAC,kBAAkB,CAmB5B,CAAA;AAwKD,MAAM,MAAM,cAAc,GAAG;IAC3B,YAAY,EAAE,aAAa,CAAC,GAAG,CAAC,CAAA;IAChC,eAAe,EAAE,aAAa,CAAC,GAAG,CAAC,EAAE,CAAA;CACtC,CAAA;AAwJD,8FAA8F;AAC9F,wBAAsB,8BAA8B,CAClD,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,EAChB,mBAAmB,CAAC,EAAE,aAAa,CAAC,GAAG,CAAC,GACvC,OAAO,CAAC,OAAO,CAAC,CAOlB;AAyND;;;GAGG;AACH,eAAO,MAAM,iBAAiB,GAC5B,MAAM,KAAK,CAAC,GAAG,CAAC,EAChB,UAAS,aAAa,EAAO,EAC7B,sBAAsB,aAAa,CAAC,GAAG,CAAC,EACxC,UAAU,wBAAwB,6BAcnC,CAAA"}
1
+ {"version":3,"file":"getPublishUploads.d.ts","sourceRoot":"","sources":["../../../../src/db/read/getPublishUploads.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAGnD,OAAO,KAAK,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AACzE,OAAO,KAAK,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AAkBvE,8GAA8G;AAC9G,eAAO,MAAM,8BAA8B,IAAI,CAAA;AAE/C,sFAAsF;AACtF,MAAM,MAAM,wBAAwB,GAAG;IACrC,iBAAiB,CAAC,EAAE,cAAc,EAAE,CAAA;IACpC;;OAEG;IACH,4BAA4B,CAAC,EAAE,MAAM,EAAE,CAAA;IACvC;;OAEG;IACH,2BAA2B,CAAC,EAAE,MAAM,EAAE,CAAA;IACtC,qGAAqG;IACrG,qBAAqB,CAAC,EAAE,OAAO,CAAA;CAChC,CAAA;AAoBD,eAAO,MAAM,yBAAyB,GACpC,MAAM,MAAM,GAAG,UAAU,EACzB,aAAa,MAAM,GAAG,SAAS,EAC/B,cAAc,MAAM,EACpB,iBAAiB,cAAc,EAAE,KAChC,OAAO,CAAC,kBAAkB,CAQ5B,CAAA;AA8KD,MAAM,MAAM,cAAc,GAAG;IAC3B,YAAY,EAAE,aAAa,CAAC,GAAG,CAAC,CAAA;IAChC,eAAe,EAAE,aAAa,CAAC,GAAG,CAAC,EAAE,CAAA;CACtC,CAAA;AAsDD;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,2BAA2B,GACtC,eAAe,aAAa,CAAC,GAAG,CAAC,KAChC,OAAO,CAAC;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,CAmD5D,CAAA;AAsID,8FAA8F;AAC9F,wBAAsB,8BAA8B,CAClD,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,EAChB,mBAAmB,CAAC,EAAE,aAAa,CAAC,GAAG,CAAC,GACvC,OAAO,CAAC,OAAO,CAAC,CAOlB;AAoND;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB,GAC/B,MAAM,KAAK,CAAC,GAAG,CAAC,EAChB,UAAS,iBAAiB,EAAO,EACjC,sBAAsB,aAAa,CAAC,GAAG,CAAC,EACxC,UAAU,wBAAwB,KACjC,OAAO,CAAC,iBAAiB,EAAE,CAa7B,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,iBAAiB,GAC5B,MAAM,KAAK,CAAC,GAAG,CAAC,EAChB,UAAS,aAAa,EAAO,EAC7B,sBAAsB,aAAa,CAAC,GAAG,CAAC,EACxC,UAAU,wBAAwB,KACjC,OAAO,CAAC,aAAa,EAAE,CAczB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"summarizePublishWork.d.ts","sourceRoot":"","sources":["../../../../src/db/read/summarizePublishWork.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAKnD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AAE9D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;AAQrE,YAAY,EAAE,WAAW,EAAE,CAAA;AAE3B,MAAM,MAAM,2BAA2B,GAAG;IACxC,WAAW,CAAC,EAAE,WAAW,CAAA;CAC1B,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG;IAC/B,WAAW,EAAE,WAAW,CAAA;IACxB,SAAS,EAAE,MAAM,CAAA;IACjB,YAAY,EAAE,MAAM,CAAA;IACpB,eAAe,EAAE,MAAM,CAAA;IACvB,gBAAgB,EAAE,MAAM,CAAA;IACxB,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB;;;OAGG;IACH,uBAAuB,EAAE,sBAAsB,EAAE,CAAA;CAClD,CAAA;AAiBD,yFAAyF;AACzF,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAOxE;AAuCD,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC,EACxB,iBAAiB,EAAE,OAAO,GACzB,OAAO,CAcT;AAuWD;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,GACrC,MAAM,KAAK,CAAC,GAAG,CAAC,EAChB,UAAU,2BAA2B,KACpC,OAAO,CAAC,sBAAsB,EAAE,CAUlC,CAAA;AAED,eAAO,MAAM,oBAAoB,GAC/B,MAAM,KAAK,CAAC,GAAG,CAAC,EAChB,UAAU,2BAA2B,KACpC,OAAO,CAAC,kBAAkB,CAwB5B,CAAA"}
1
+ {"version":3,"file":"summarizePublishWork.d.ts","sourceRoot":"","sources":["../../../../src/db/read/summarizePublishWork.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAKnD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AAE9D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;AAQrE,YAAY,EAAE,WAAW,EAAE,CAAA;AAE3B,MAAM,MAAM,2BAA2B,GAAG;IACxC,WAAW,CAAC,EAAE,WAAW,CAAA;CAC1B,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG;IAC/B,WAAW,EAAE,WAAW,CAAA;IACxB,SAAS,EAAE,MAAM,CAAA;IACjB,YAAY,EAAE,MAAM,CAAA;IACpB,eAAe,EAAE,MAAM,CAAA;IACvB,gBAAgB,EAAE,MAAM,CAAA;IACxB,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB;;;OAGG;IACH,uBAAuB,EAAE,sBAAsB,EAAE,CAAA;CAClD,CAAA;AAiBD,yFAAyF;AACzF,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAOxE;AAuCD,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC,EACxB,iBAAiB,EAAE,OAAO,GACzB,OAAO,CAcT;AAyVD;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,GACrC,MAAM,KAAK,CAAC,GAAG,CAAC,EAChB,UAAU,2BAA2B,KACpC,OAAO,CAAC,sBAAsB,EAAE,CAUlC,CAAA;AAED,eAAO,MAAM,oBAAoB,GAC/B,MAAM,KAAK,CAAC,GAAG,CAAC,EAChB,UAAU,2BAA2B,KACpC,OAAO,CAAC,kBAAkB,CAwB5B,CAAA"}
@@ -2,6 +2,8 @@ export type ClaimUnpublishedDraftsResult = {
2
2
  seeds: number;
3
3
  versions: number;
4
4
  metadata: number;
5
+ /** Local ids of the claimed seeds, so loaded Items can take the new publisher. */
6
+ seedLocalIds: string[];
5
7
  };
6
8
  /**
7
9
  * Stamp local seeds/versions/metadata that have no publisher and no real uid.
@@ -1 +1 @@
1
- {"version":3,"file":"claimUnpublishedDrafts.d.ts","sourceRoot":"","sources":["../../../../src/db/write/claimUnpublishedDrafts.ts"],"names":[],"mappings":"AAQA,MAAM,MAAM,4BAA4B,GAAG;IACzC,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;CACjB,CAAA;AAQD;;;GAGG;AACH,wBAAsB,sBAAsB,CAC1C,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,4BAA4B,CAAC,CAmDvC"}
1
+ {"version":3,"file":"claimUnpublishedDrafts.d.ts","sourceRoot":"","sources":["../../../../src/db/write/claimUnpublishedDrafts.ts"],"names":[],"mappings":"AAQA,MAAM,MAAM,4BAA4B,GAAG;IACzC,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,kFAAkF;IAClF,YAAY,EAAE,MAAM,EAAE,CAAA;CACvB,CAAA;AASD;;;GAGG;AACH,wBAAsB,sBAAsB,CAC1C,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,4BAA4B,CAAC,CAoDvC"}
@@ -0,0 +1,44 @@
1
+ import { type MetadataType } from '../../seedSchema';
2
+ type VerbatimRowFields = Pick<MetadataType, 'uid' | 'derivedFromUid' | 'refResolvedValue' | 'propertyValue'>;
3
+ /**
4
+ * A legacy ItemStorage draft row: a local edit (no attestation uid, not derived from one) that holds
5
+ * the content itself in property_value, with no file reference. Item.create / createNewItem stored
6
+ * ItemStorage values like this before they went through the save pipeline.
7
+ */
8
+ export declare const isVerbatimItemStorageDraftRow: (row: VerbatimRowFields) => boolean;
9
+ export type ItemStorageRowStorage = {
10
+ /** The property's `storage.path` (e.g. `/html`); the row's own localStorageDir, else `files`, when unset. */
11
+ localStorageDir?: string | null;
12
+ /** The property's `storage.extension` (e.g. `.html`). */
13
+ filenameSuffix?: string | null;
14
+ /** Seed id to name the file after; the row's seedUid, else its seedLocalId, when unset. */
15
+ seedId?: string | null;
16
+ };
17
+ export type ConvertedItemStorageRow = {
18
+ fileName: string;
19
+ filePath: string;
20
+ localStorageDir: string;
21
+ /** The content now in the file (the row's former property_value). */
22
+ content: string;
23
+ };
24
+ /**
25
+ * Convert one legacy ItemStorage draft row (see {@link isVerbatimItemStorageDraftRow}) into the
26
+ * shape saveItemStorage gives a row: the content goes to the file a save would write
27
+ * (`<seedUid or seedLocalId><extension>` in the property's storage directory), and the row records
28
+ * `refResolvedValue`, `localStorageDir` and `refValueType: 'file'` with property_value cleared.
29
+ * Used by publish (resolveItemStorageChildFile) and the one-time migration (migrateLegacyItemStorageRows).
30
+ *
31
+ * Reading the row, writing the file and updating the row happen under the file's lock
32
+ * ({@link withItemStorageFileLock}), which saveItemStorage holds too: a save in this or another tab
33
+ * either finishes before (the row, read again once the lock is held, is no longer legacy and is
34
+ * left alone) or starts after (and overwrites the file and row with its content). Without the lock
35
+ * a save landing between the read and the file write would have its file overwritten with the old
36
+ * content. The row update also stays conditional on the row being unchanged, for writers that
37
+ * don't take the lock (a tab still running an older SDK).
38
+ *
39
+ * Returns undefined when there was nothing to convert. Throws when the file can't be written; the
40
+ * row is then unchanged.
41
+ */
42
+ export declare const convertVerbatimItemStorageRow: (localId: string, storage?: ItemStorageRowStorage) => Promise<ConvertedItemStorageRow | undefined>;
43
+ export {};
44
+ //# sourceMappingURL=convertVerbatimItemStorageRow.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"convertVerbatimItemStorageRow.d.ts","sourceRoot":"","sources":["../../../../src/db/write/convertVerbatimItemStorageRow.ts"],"names":[],"mappings":"AAEA,OAAO,EAAY,KAAK,YAAY,EAAE,MAAM,cAAc,CAAA;AAO1D,KAAK,iBAAiB,GAAG,IAAI,CAC3B,YAAY,EACZ,KAAK,GAAG,gBAAgB,GAAG,kBAAkB,GAAG,eAAe,CAChE,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,6BAA6B,GAAI,KAAK,iBAAiB,KAAG,OAK7C,CAAA;AAE1B,MAAM,MAAM,qBAAqB,GAAG;IAClC,6GAA6G;IAC7G,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC/B,yDAAyD;IACzD,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B,2FAA2F;IAC3F,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACvB,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG;IACpC,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,eAAe,EAAE,MAAM,CAAA;IACvB,qEAAqE;IACrE,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,6BAA6B,GACxC,SAAS,MAAM,EACf,UAAS,qBAA0B,KAClC,OAAO,CAAC,uBAAuB,GAAG,SAAS,CA+C7C,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"createNewItem.d.ts","sourceRoot":"","sources":["../../../../src/db/write/createNewItem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AASrC,KAAK,kBAAkB,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,GAAG;IACpD,SAAS,EAAE,MAAM,CAAA;IACjB,sGAAsG;IACtG,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,CAAA;AAED,KAAK,uBAAuB,GAAG;IAC7B,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;IACnB,cAAc,EAAE,MAAM,CAAA;CACvB,CAAA;AAED,eAAO,MAAM,aAAa,GAAU,6CAIjC,kBAAkB,KAAG,OAAO,CAAC,uBAAuB,CAkDtD,CAAA"}
1
+ {"version":3,"file":"createNewItem.d.ts","sourceRoot":"","sources":["../../../../src/db/write/createNewItem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAcrC,KAAK,kBAAkB,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,GAAG;IACpD,SAAS,EAAE,MAAM,CAAA;IACjB,sGAAsG;IACtG,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,CAAA;AAED,KAAK,uBAAuB,GAAG;IAC7B,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;IACnB,cAAc,EAAE,MAAM,CAAA;CACvB,CAAA;AAED,eAAO,MAAM,aAAa,GAAU,6CAIjC,kBAAkB,KAAG,OAAO,CAAC,uBAAuB,CAiFtD,CAAA"}
@@ -8,6 +8,11 @@ declare class SeedEventEmitter {
8
8
  off(event: EventKey, listener: Listener): this;
9
9
  removeListener(event: EventKey, listener: Listener): this;
10
10
  removeAllListeners(event?: EventKey): this;
11
+ /**
12
+ * Calls every listener. A listener that throws is logged and skipped: the others still
13
+ * run, and the error never reaches the SDK code that emitted the event (which may be
14
+ * midway through a save).
15
+ */
11
16
  emit(event: EventKey, ...args: any[]): boolean;
12
17
  }
13
18
  declare const eventEmitter: SeedEventEmitter;
@@ -1 +1 @@
1
- {"version":3,"file":"eventBus.d.ts","sourceRoot":"","sources":["../../src/eventBus.ts"],"names":[],"mappings":"AAAA,KAAK,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAA;AAC/B,KAAK,QAAQ,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,CAAA;AAExC,cAAM,gBAAgB;IACpB,OAAO,CAAC,SAAS,CAAqC;IAEtD,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAO7C,WAAW,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAItD,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAQ/C,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAQ9C,cAAc,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAIzD,kBAAkB,CAAC,KAAK,CAAC,EAAE,QAAQ,GAAG,IAAI;IAS1C,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO;CAQ/C;AAED,QAAA,MAAM,YAAY,kBAAyB,CAAA;AAE3C,OAAO,EAAE,YAAY,EAAE,CAAA"}
1
+ {"version":3,"file":"eventBus.d.ts","sourceRoot":"","sources":["../../src/eventBus.ts"],"names":[],"mappings":"AAAA,KAAK,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAA;AAC/B,KAAK,QAAQ,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,CAAA;AAExC,cAAM,gBAAgB;IACpB,OAAO,CAAC,SAAS,CAAqC;IAEtD,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAO7C,WAAW,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAItD,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAQ/C,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAQ9C,cAAc,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAIzD,kBAAkB,CAAC,KAAK,CAAC,EAAE,QAAQ,GAAG,IAAI;IAS1C;;;;OAIG;IACH,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO;CAY/C;AAED,QAAA,MAAM,YAAY,kBAAyB,CAAA;AAE3C,OAAO,EAAE,YAAY,EAAE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"download.d.ts","sourceRoot":"","sources":["../../../../src/events/files/download.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAkSnC,KAAK,mCAAmC,GAAG;IACzC,SAAS,EAAE,SAAS,CAAA;IACpB,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,eAAO,MAAM,8BAA8B,GAAU,yBAGlD,mCAAmC,kBAUrC,CAAA;AAED,eAAO,MAAM,oCAAoC,GAC/C,yBAAyB,MAAM,EAAE,GAAG;IAAE,SAAS,CAAC,EAAE,SAAS,CAAA;CAAE,kBAyE9D,CAAA;AAED,eAAO,MAAM,+BAA+B,GAAU,eAAe,MAAM,KAAG,OAAO,CAAC,OAAO,CAuB5F,CAAA;AAQD,eAAO,MAAM,oCAAoC,GAAI,gBAAgB,MAAM,EAAE,KAAG,IAK/E,CAAA"}
1
+ {"version":3,"file":"download.d.ts","sourceRoot":"","sources":["../../../../src/events/files/download.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAgVnC,KAAK,mCAAmC,GAAG;IACzC,SAAS,EAAE,SAAS,CAAA;IACpB,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,eAAO,MAAM,8BAA8B,GAAU,yBAGlD,mCAAmC,kBAUrC,CAAA;AAED,eAAO,MAAM,oCAAoC,GAC/C,yBAAyB,MAAM,EAAE,GAAG;IAAE,SAAS,CAAC,EAAE,SAAS,CAAA;CAAE,kBA0E9D,CAAA;AAED,eAAO,MAAM,+BAA+B,GAAU,eAAe,MAAM,KAAG,OAAO,CAAC,OAAO,CAuB5F,CAAA;AAQD,eAAO,MAAM,oCAAoC,GAAI,gBAAgB,MAAM,EAAE,KAAG,IAK/E,CAAA"}
@@ -1,4 +1,4 @@
1
- import type { DownloadAllFilesParams, DownloadSingleFileParams, IFileManager, ResizeAllImagesParams, ResizeImageParams } from './IFileManager';
1
+ import type { DownloadAllFilesParams, DownloadAllFilesResult, DownloadSingleFileParams, IFileManager, ResizeAllImagesParams, ResizeImageParams } from './IFileManager';
2
2
  export declare abstract class BaseFileManager {
3
3
  private static fileSystemInitialized;
4
4
  private static initializing;
@@ -23,8 +23,8 @@ export declare abstract class BaseFileManager {
23
23
  */
24
24
  static getFilesPath(...subpaths: string[]): string;
25
25
  static getContentUrlFromPath(path: string): Promise<string | undefined>;
26
- static downloadAllFiles({ transactionIds, arweaveHost, arweaveBaseUrls, excludedTransactions, }: DownloadAllFilesParams): Promise<void>;
27
- static downloadFileByTransactionId({ transactionId, arweaveHost, arweaveBaseUrls, excludedTransactions, }: DownloadSingleFileParams): Promise<void>;
26
+ static downloadAllFiles(params: DownloadAllFilesParams): Promise<DownloadAllFilesResult | void>;
27
+ static downloadFileByTransactionId({ transactionId, arweaveHost, arweaveBaseUrls, excludedTransactions, expectedContentHash, compositeChildPaths, }: DownloadSingleFileParams): Promise<DownloadAllFilesResult | void>;
28
28
  static resizeImage({ filePath, width, height }: ResizeImageParams): Promise<void>;
29
29
  static resizeAllImages({ width, height }: ResizeAllImagesParams): Promise<void>;
30
30
  static pathExists(filePath: string): Promise<boolean>;
@@ -1 +1 @@
1
- {"version":3,"file":"BaseFileManager.d.ts","sourceRoot":"","sources":["../../../../src/helpers/FileManager/BaseFileManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BaseFileManager.d.ts","sourceRoot":"","sources":["../../../../src/helpers/FileManager/BaseFileManager.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,26 @@ export type DownloadAllFilesParams = {
4
4
  /** Ordered read gateways (scheme + host + path) tried before `arweaveHost`; see `getArweaveReadBaseUrls`. */
5
5
  arweaveBaseUrls?: string[];
6
6
  excludedTransactions: Set<string>;
7
+ /**
8
+ * Content-SHA-256 tag values by transaction id. A download with one is saved only when its bytes
9
+ * match (SHA-256, or SHA3-256 for uploads from SDK 0.7.2 and earlier); see `contentSha256TagMatches`.
10
+ */
11
+ expectedContentHashes?: Record<string, string>;
12
+ /**
13
+ * Where each child of a composite upload is saved, by transaction id then child (property) name:
14
+ * a path relative to the files root, the one the SDK reads that ItemStorage property from. See
15
+ * `getCompositeChildPaths`. Children without one use the legacy html / json layout.
16
+ */
17
+ compositeChildPaths?: Record<string, Record<string, string>>;
18
+ };
19
+ /** What a browser download run did, by transaction id. */
20
+ export type DownloadAllFilesResult = {
21
+ /** Bytes matched the expected Content-SHA-256 and were saved. */
22
+ verifiedTransactionIds: string[];
23
+ /** No gateway served bytes matching the expected Content-SHA-256; nothing was saved. */
24
+ hashMismatchTransactionIds: string[];
25
+ /** Saving failed (e.g. an OPFS write error). */
26
+ failedTransactionIds: string[];
7
27
  };
8
28
  export type DownloadSingleFileParams = {
9
29
  transactionId: string;
@@ -11,6 +31,10 @@ export type DownloadSingleFileParams = {
11
31
  /** Ordered read gateways (scheme + host + path) tried before `arweaveHost`; see `getArweaveReadBaseUrls`. */
12
32
  arweaveBaseUrls?: string[];
13
33
  excludedTransactions: Set<string>;
34
+ /** Content-SHA-256 tag value to verify the download against; see {@link DownloadAllFilesParams}. */
35
+ expectedContentHash?: string;
36
+ /** Where this transaction's composite children go, by child name; see {@link DownloadAllFilesParams}. */
37
+ compositeChildPaths?: Record<string, string>;
14
38
  };
15
39
  export type ResizeAllImagesParams = {
16
40
  width: number;
@@ -24,7 +48,7 @@ export type ResizeImageParams = {
24
48
  export interface IFileManager {
25
49
  initializeFileSystem(workingDir?: string): Promise<void>;
26
50
  getContentUrlFromPath(path: string): Promise<string | undefined>;
27
- downloadAllFiles(params: DownloadAllFilesParams): Promise<void>;
51
+ downloadAllFiles(params: DownloadAllFilesParams): Promise<DownloadAllFilesResult | void>;
28
52
  resizeImage(params: ResizeImageParams): Promise<void>;
29
53
  resizeAllImages(params: ResizeAllImagesParams): Promise<void>;
30
54
  pathExists(filePath: string): Promise<boolean>;
@@ -1 +1 @@
1
- {"version":3,"file":"IFileManager.d.ts","sourceRoot":"","sources":["../../../../src/helpers/FileManager/IFileManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"IFileManager.d.ts","sourceRoot":"","sources":["../../../../src/helpers/FileManager/IFileManager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ import type { TransactionTag } from '../types/arweave';
2
+ /**
3
+ * Tag every Seed upload carries with the hex digest of its data. Producers: the SDK's
4
+ * `getPublishUploadData` / `getPublishUploads` (and through them both the L1 transaction path and
5
+ * the bundler / DataItem path in `@seedprotocol/publish`). Consumer: the files download
6
+ * (`events/files/download.ts` and the download worker), which verifies downloaded bytes against it
7
+ * and copies a verified value into `metadata.content_hash`.
8
+ */
9
+ export declare const CONTENT_SHA256_TAG = "Content-SHA-256";
10
+ export declare const CONTENT_TYPE_TAG = "Content-Type";
11
+ /**
12
+ * Lowercase hex SHA-256 of `data`: the value of the {@link CONTENT_SHA256_TAG} tag.
13
+ *
14
+ * Uses @noble/hashes rather than WebCrypto so it also works outside secure contexts (WebCrypto's
15
+ * `crypto.subtle` is missing on plain-http origins); the digest is the same.
16
+ *
17
+ * In SDK 0.7.2 and earlier the L1 transaction path (`getPublishUploads`) wrote SHA3-256 under this tag name
18
+ * while the bundler path wrote SHA-256. Uploads from that path still carry SHA3-256 digests; use
19
+ * {@link contentSha256TagMatches} to check a tag value against bytes.
20
+ */
21
+ export declare const getContentSha256: (data: Uint8Array) => string;
22
+ /**
23
+ * True when `tagValue` (a {@link CONTENT_SHA256_TAG} value read from Arweave) is the digest of
24
+ * `data`. Accepts SHA-256 and, for uploads made by SDK 0.7.2 and earlier through the L1 transaction path,
25
+ * SHA3-256.
26
+ */
27
+ export declare const contentSha256TagMatches: (data: Uint8Array, tagValue: string) => boolean;
28
+ /**
29
+ * Tags for one upload, in the order every upload uses: content hash, content type, then any
30
+ * configured extra tags (e.g. App-Name from `arweaveUploadTags`).
31
+ */
32
+ export declare const buildArweaveContentTags: (contentHash: string | undefined, contentType: string | undefined, extra?: TransactionTag[]) => TransactionTag[];
33
+ //# sourceMappingURL=arweaveContentTags.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"arweaveContentTags.d.ts","sourceRoot":"","sources":["../../../src/helpers/arweaveContentTags.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAErD;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,oBAAoB,CAAA;AACnD,eAAO,MAAM,gBAAgB,iBAAiB,CAAA;AAE9C;;;;;;;;;GASG;AACH,eAAO,MAAM,gBAAgB,GAAI,MAAM,UAAU,KAAG,MAAkC,CAAA;AAEtF;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,GAAI,MAAM,UAAU,EAAE,UAAU,MAAM,KAAG,OAI5E,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,uBAAuB,GAClC,aAAa,MAAM,GAAG,SAAS,EAC/B,aAAa,MAAM,GAAG,SAAS,EAC/B,QAAQ,cAAc,EAAE,KACvB,cAAc,EAMhB,CAAA"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Lets helpers/db tell cached ModelProperty instances that their rows changed, without importing
3
+ * ModelProperty (helpers/db -> ModelProperty is a circular import, and a dynamic import of it can hang
4
+ * during init). ModelProperty registers its refresher when it loads; until then nothing is cached,
5
+ * so there is nothing to refresh.
6
+ */
7
+ type CachedPropertyRefresher = (propertyFileIds: string[]) => Promise<void>;
8
+ export declare function setCachedPropertyRefresher(fn: CachedPropertyRefresher): void;
9
+ /** Give cached ModelProperty instances of these properties their rows' current values. */
10
+ export declare function refreshCachedProperties(propertyFileIds: string[]): Promise<void>;
11
+ export {};
12
+ //# sourceMappingURL=cachedPropertyRefresh.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cachedPropertyRefresh.d.ts","sourceRoot":"","sources":["../../../src/helpers/cachedPropertyRefresh.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,KAAK,uBAAuB,GAAG,CAAC,eAAe,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;AAI3E,wBAAgB,0BAA0B,CAAC,EAAE,EAAE,uBAAuB,GAAG,IAAI,CAE5E;AAED,0FAA0F;AAC1F,wBAAsB,uBAAuB,CAAC,eAAe,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAGtF"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Composite uploads: several ItemStorage files of one item in a single Arweave transaction.
3
+ *
4
+ * Producer: `getPublishUploads.ts` (`processUploadPropertyData`), for an item with a
5
+ * `storageTransactionId` property and ItemStorage properties (e.g. a Post's `html` and `json`).
6
+ * Consumer: the download worker (`browser/workers/filesDownload.ts`), which keeps its own copy of
7
+ * {@link decodeCompositeUpload} because it runs from a string; a test keeps the two in step.
8
+ *
9
+ * Format (unchanged for text children, so composites already on Arweave still read):
10
+ *
11
+ * ===FILE_SEPARATOR===<name>===FILE_SEPARATOR===<utf-8 text> (repeated per child)
12
+ *
13
+ * A child that is not valid UTF-8 text (or whose text contains the separator) is written as
14
+ * base64 under the name `<name>;base64`. Composites written before this suffix existed converted
15
+ * every child to text, which corrupted binary children; those bytes cannot be recovered.
16
+ */
17
+ export declare const COMPOSITE_SEPARATOR = "===FILE_SEPARATOR===";
18
+ export declare const COMPOSITE_BASE64_SUFFIX = ";base64";
19
+ export type CompositeChild = {
20
+ name: string;
21
+ bytes: Uint8Array;
22
+ };
23
+ export declare const encodeCompositeUpload: (children: CompositeChild[]) => Uint8Array;
24
+ /** True when `bytes` start with the composite separator (checked on bytes, before any text heuristics). */
25
+ export declare const isCompositeUpload: (bytes: Uint8Array) => boolean;
26
+ /** Children of a composite, or `undefined` when `bytes` are not a well-formed composite. */
27
+ export declare const decodeCompositeUpload: (bytes: Uint8Array) => CompositeChild[] | undefined;
28
+ //# sourceMappingURL=compositeUpload.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compositeUpload.d.ts","sourceRoot":"","sources":["../../../src/helpers/compositeUpload.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,mBAAmB,yBAAyB,CAAA;AACzD,eAAO,MAAM,uBAAuB,YAAY,CAAA;AAEhD,MAAM,MAAM,cAAc,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,UAAU,CAAA;CAAE,CAAA;AAkChE,eAAO,MAAM,qBAAqB,GAAI,UAAU,cAAc,EAAE,KAAG,UAUlE,CAAA;AAID,2GAA2G;AAC3G,eAAO,MAAM,iBAAiB,GAAI,OAAO,UAAU,KAAG,OACqC,CAAA;AAE3F,4FAA4F;AAC5F,eAAO,MAAM,qBAAqB,GAAI,OAAO,UAAU,KAAG,cAAc,EAAE,GAAG,SAkB5E,CAAA"}
@@ -84,6 +84,9 @@ export declare const addModelsToDb: (models: ModelDefinitions, schema?: SchemaTy
84
84
  schemaFileId?: string;
85
85
  modelFileIds?: Map<string, string>;
86
86
  propertyFileIds?: Map<string, Map<string, string>>;
87
+ propertyDefinitions?: Map<string, {
88
+ [propertyName: string]: any;
89
+ }>;
87
90
  }) => Promise<void>;
88
91
  /**
89
92
  * Loads models from the database for a given schema by querying the model_schemas join table.
@@ -1 +1 @@
1
- {"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../../../src/helpers/db.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../../../src/helpers/db.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ type EasSdk = typeof import('@ethereum-attestation-service/eas-sdk');
2
+ /**
3
+ * Load eas-sdk on first use instead of at SDK import time.
4
+ *
5
+ * On Node this loads eas-sdk's CommonJS build. Its ESM build (2.9.1+) does
6
+ * `import { isEqual } from 'lodash'`, which Node rejects because lodash is
7
+ * CommonJS, so a static import made `import '@seedprotocol/sdk'` fail unless the
8
+ * app ran with `--import @seedprotocol/sdk/node-eas-lodash`.
9
+ *
10
+ * `process.getBuiltinModule` (Node 20.16+, 22.3+) keeps `node:module` out of the
11
+ * import graph, so browser bundlers never see it. Bundlers resolve the
12
+ * `import()` branch, and handle lodash there themselves.
13
+ */
14
+ export declare function loadEasSdk(): Promise<EasSdk>;
15
+ export {};
16
+ //# sourceMappingURL=easSdk.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"easSdk.d.ts","sourceRoot":"","sources":["../../../src/helpers/easSdk.ts"],"names":[],"mappings":"AAEA,KAAK,MAAM,GAAG,cAAc,uCAAuC,CAAC,CAAA;AAIpE;;;;;;;;;;;GAWG;AACH,wBAAgB,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,CAkB5C"}
@@ -0,0 +1,16 @@
1
+ import type { BaseDb } from '../../db/Db/BaseDb';
2
+ type AppDb = NonNullable<ReturnType<typeof BaseDb.getAppDb>>;
3
+ /**
4
+ * Before deleting property rows: unlink stored item values (metadata.property_id → NULL; the
5
+ * values stay, keyed by property name) and drop the properties' EAS uid mappings. Without this,
6
+ * Node (libsql enforces foreign keys) fails the delete as soon as an item has a value, and the
7
+ * browser leaves rows pointing at deleted ids.
8
+ */
9
+ export declare function detachPropertyRows(db: AppDb, propertyIds: readonly number[]): Promise<void>;
10
+ /**
11
+ * Before deleting model rows: detach their properties' rows (as above), drop the models' EAS
12
+ * uid mappings, and clear relation properties elsewhere that point at them (ref_model_id).
13
+ */
14
+ export declare function detachModelRows(db: AppDb, modelIds: readonly number[]): Promise<void>;
15
+ export {};
16
+ //# sourceMappingURL=detachRowsBeforeDelete.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"detachRowsBeforeDelete.d.ts","sourceRoot":"","sources":["../../../../src/helpers/entity/detachRowsBeforeDelete.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAG5C,KAAK,KAAK,GAAG,WAAW,CAAC,UAAU,CAAC,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAA;AAE5D;;;;;GAKG;AACH,wBAAsB,kBAAkB,CAAC,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAKjG;AAED;;;GAGG;AACH,wBAAsB,eAAe,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAa3F"}
@@ -35,6 +35,8 @@ export interface RunDestroyLifecycleConfig<T extends object> {
35
35
  /**
36
36
  * Run the service event sequence and stop the service:
37
37
  * destroyStarted -> doDestroy -> (destroyError on failure) -> stop.
38
+ * A doDestroy failure is recorded on the service (destroyError) and rethrown, so destroy()
39
+ * rejects instead of resolving with the rows still in the DB.
38
40
  * Event names must match what the entity machines expect.
39
41
  */
40
42
  export declare function runDestroyLifecycle<T extends object>(instance: T, config: RunDestroyLifecycleConfig<T>): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"entityDestroy.d.ts","sourceRoot":"","sources":["../../../../src/helpers/entity/entityDestroy.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,+BAA+B,CAAC,CAAC,SAAS,MAAM;IAC/D,aAAa,EAAE,OAAO,CAAC,CAAC,EAAE;QAAE,qBAAqB,CAAC,EAAE;YAAE,WAAW,EAAE,MAAM,IAAI,CAAA;SAAE,GAAG,IAAI,CAAA;KAAE,CAAC,CAAA;IACzF,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK,IAAI,CAAA;CACjC;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,CAAC,SAAS,MAAM,EACxD,QAAQ,EAAE,CAAC,EACX,MAAM,EAAE,+BAA+B,CAAC,CAAC,CAAC,GACzC,IAAI,CAiBN;AAED,MAAM,WAAW,2BAA2B,CAAC,CAAC,SAAS,MAAM;IAC3D,YAAY,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK,MAAM,EAAE,CAAA;IACvC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAA;IAC9B,eAAe,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAA;CACzC;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,SAAS,MAAM,EACpD,QAAQ,EAAE,CAAC,EACX,MAAM,EAAE,2BAA2B,CAAC,CAAC,CAAC,GACrC,IAAI,CAcN;AAED,MAAM,WAAW,yBAAyB,CAAC,CAAC,SAAS,MAAM;IACzD,UAAU,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK;QAAE,IAAI,EAAE,CAAC,EAAE,EAAE,OAAO,KAAK,IAAI,CAAC;QAAC,IAAI,EAAE,MAAM,IAAI,CAAA;KAAE,CAAA;IAC9E,SAAS,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAC/B;AAED;;;;GAIG;AACH,wBAAsB,mBAAmB,CAAC,CAAC,SAAS,MAAM,EACxD,QAAQ,EAAE,CAAC,EACX,MAAM,EAAE,yBAAyB,CAAC,CAAC,CAAC,GACnC,OAAO,CAAC,IAAI,CAAC,CAcf"}
1
+ {"version":3,"file":"entityDestroy.d.ts","sourceRoot":"","sources":["../../../../src/helpers/entity/entityDestroy.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,+BAA+B,CAAC,CAAC,SAAS,MAAM;IAC/D,aAAa,EAAE,OAAO,CAAC,CAAC,EAAE;QAAE,qBAAqB,CAAC,EAAE;YAAE,WAAW,EAAE,MAAM,IAAI,CAAA;SAAE,GAAG,IAAI,CAAA;KAAE,CAAC,CAAA;IACzF,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK,IAAI,CAAA;CACjC;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,CAAC,SAAS,MAAM,EACxD,QAAQ,EAAE,CAAC,EACX,MAAM,EAAE,+BAA+B,CAAC,CAAC,CAAC,GACzC,IAAI,CAiBN;AAED,MAAM,WAAW,2BAA2B,CAAC,CAAC,SAAS,MAAM;IAC3D,YAAY,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK,MAAM,EAAE,CAAA;IACvC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAA;IAC9B,eAAe,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAA;CACzC;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,SAAS,MAAM,EACpD,QAAQ,EAAE,CAAC,EACX,MAAM,EAAE,2BAA2B,CAAC,CAAC,CAAC,GACrC,IAAI,CAcN;AAED,MAAM,WAAW,yBAAyB,CAAC,CAAC,SAAS,MAAM;IACzD,UAAU,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK;QAAE,IAAI,EAAE,CAAC,EAAE,EAAE,OAAO,KAAK,IAAI,CAAC;QAAC,IAAI,EAAE,MAAM,IAAI,CAAA;KAAE,CAAA;IAC9E,SAAS,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAC/B;AAED;;;;;;GAMG;AACH,wBAAsB,mBAAmB,CAAC,CAAC,SAAS,MAAM,EACxD,QAAQ,EAAE,CAAC,EACX,MAAM,EAAE,yBAAyB,CAAC,CAAC,CAAC,GACnC,OAAO,CAAC,IAAI,CAAC,CAef"}