@seedprotocol/sdk 0.6.10 → 0.7.1

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 (399) hide show
  1. package/dist/{BasePathResolver-B6CKqoKw.js → BasePathResolver-DRT09oVv.js} +36 -2
  2. package/dist/BasePathResolver-DRT09oVv.js.map +1 -0
  3. package/dist/ClientManager-DngaZdw6.js +4763 -0
  4. package/dist/ClientManager-DngaZdw6.js.map +1 -0
  5. package/dist/{ClientManager-ChcmUL47.js → Item-ZUAmf943.js} +1175 -5903
  6. package/dist/Item-ZUAmf943.js.map +1 -0
  7. package/dist/{ModelProperty-D79uV42p.js → ModelProperty-6llK4MTH.js} +326 -109
  8. package/dist/ModelProperty-6llK4MTH.js.map +1 -0
  9. package/dist/{Schema-a8uO-hIZ.js → Schema-D-Ud-XYw.js} +164 -885
  10. package/dist/Schema-D-Ud-XYw.js.map +1 -0
  11. package/dist/{SchemaValidationService-Y49vqast.js → SchemaValidationService-IoS7JquP.js} +26 -18
  12. package/dist/SchemaValidationService-IoS7JquP.js.map +1 -0
  13. package/dist/{backfillMetadataPropertyIds-CBsf7LnU.js → backfillMetadataPropertyIds-BlVeE7w7.js} +11 -6
  14. package/dist/backfillMetadataPropertyIds-BlVeE7w7.js.map +1 -0
  15. package/dist/cjs/{ModelProperty-D9FGaGuE.js → ModelProperty-Dv7AQfmQ.js} +297 -89
  16. package/dist/cjs/ModelProperty-Dv7AQfmQ.js.map +1 -0
  17. package/dist/cjs/{Schema-BiJIPLEL.js → Schema-BHVp1g-M.js} +136 -868
  18. package/dist/cjs/Schema-BHVp1g-M.js.map +1 -0
  19. package/dist/cjs/{SchemaValidationService-DtYs_CNY.js → SchemaValidationService-BSU9knjf.js} +18 -11
  20. package/dist/cjs/SchemaValidationService-BSU9knjf.js.map +1 -0
  21. package/dist/cjs/{backfillMetadataPropertyIds-2XaN3b9S.js → backfillMetadataPropertyIds-WIovQ_d8.js} +8 -3
  22. package/dist/cjs/backfillMetadataPropertyIds-WIovQ_d8.js.map +1 -0
  23. package/dist/cjs/{eas-CMNppmGE.js → eas-CUYXdr2t.js} +4 -4
  24. package/dist/cjs/{eas-CMNppmGE.js.map → eas-CUYXdr2t.js.map} +1 -1
  25. package/dist/cjs/{getItem-B6jEINjW.js → getItem-z1tHu0hu.js} +2 -2
  26. package/dist/cjs/{getItem-B6jEINjW.js.map → getItem-z1tHu0hu.js.map} +1 -1
  27. package/dist/cjs/getLatestVersionRow-CcaabxIW.js +59 -0
  28. package/dist/cjs/getLatestVersionRow-CcaabxIW.js.map +1 -0
  29. package/dist/cjs/{getPublishPayload-D5DhLGvN.js → getPublishPayload-CEP_e-Kv.js} +283 -138
  30. package/dist/cjs/getPublishPayload-CEP_e-Kv.js.map +1 -0
  31. package/dist/cjs/{getPublishUploads-DMhCCKYF.js → getPublishUploads-Ctn5k1k6.js} +65 -19
  32. package/dist/cjs/getPublishUploads-Ctn5k1k6.js.map +1 -0
  33. package/dist/cjs/{index-CSNtEnbF.js → index-Cvvt0-5B.js} +2698 -1725
  34. package/dist/cjs/index-Cvvt0-5B.js.map +1 -0
  35. package/dist/cjs/{index-DPp9rdRL.js → index-DfGhF1dc.js} +3 -3
  36. package/dist/cjs/index-DfGhF1dc.js.map +1 -0
  37. package/dist/cjs/{property-DlKiAWt4.js → property-DbEPQ1m9.js} +40 -35
  38. package/dist/cjs/property-DbEPQ1m9.js.map +1 -0
  39. package/dist/cjs/publishDraftGraph-C38gf302.js +403 -0
  40. package/dist/cjs/publishDraftGraph-C38gf302.js.map +1 -0
  41. package/dist/cjs/resetAmbiguousLegacyItemData-CfMhRHwK.js +116 -0
  42. package/dist/cjs/resetAmbiguousLegacyItemData-CfMhRHwK.js.map +1 -0
  43. package/dist/cjs/resolveModelForSyncedSeed-CNYaLOir.js +49 -0
  44. package/dist/cjs/resolveModelForSyncedSeed-CNYaLOir.js.map +1 -0
  45. package/dist/cjs/syncDbWithEas-d1iOdTTI.js +886 -0
  46. package/dist/cjs/syncDbWithEas-d1iOdTTI.js.map +1 -0
  47. package/dist/{configurePlatform-CE0Vew17.js → configurePlatform-CZpjyuCo.js} +4 -4
  48. package/dist/{configurePlatform-CE0Vew17.js.map → configurePlatform-CZpjyuCo.js.map} +1 -1
  49. package/dist/db/drizzle/0015_add_model_file_id_to_seeds.sql +11 -0
  50. package/dist/db/drizzle/0016_add_revoked_at_to_metadata.sql +1 -0
  51. package/dist/db/drizzle/0017_add_revoked_at_to_versions.sql +1 -0
  52. package/dist/db/drizzle/0018_add_storage_settings_to_properties.sql +53 -0
  53. package/dist/db/drizzle/0019_add_derived_from_uid_to_metadata.sql +35 -0
  54. package/dist/db/drizzle/meta/0011_snapshot.json +1182 -0
  55. package/dist/db/drizzle/meta/0012_snapshot.json +1244 -0
  56. package/dist/db/drizzle/meta/0013_snapshot.json +63 -1
  57. package/dist/db/drizzle/meta/0014_snapshot.json +62 -0
  58. package/dist/db/drizzle/meta/0015_snapshot.json +1338 -0
  59. package/dist/db/drizzle/meta/0016_snapshot.json +1345 -0
  60. package/dist/db/drizzle/meta/0017_snapshot.json +1352 -0
  61. package/dist/db/drizzle/meta/0018_snapshot.json +1373 -0
  62. package/dist/db/drizzle/meta/0019_snapshot.json +1380 -0
  63. package/dist/db/drizzle/meta/_journal.json +35 -0
  64. package/dist/{db-WbrzEf7c.js → db-Lw0KVZmc.js} +546 -106
  65. package/dist/db-Lw0KVZmc.js.map +1 -0
  66. package/dist/{eas-CfYCu4IX.js → eas-CQ-Smzk2.js} +7 -7
  67. package/dist/eas-CQ-Smzk2.js.map +1 -0
  68. package/dist/errors-CrBxGWah.js +17 -0
  69. package/dist/errors-CrBxGWah.js.map +1 -0
  70. package/dist/{getItem-Br-bGNFO.js → getItem-CSfSok9f.js} +8 -10
  71. package/dist/{getItem-Br-bGNFO.js.map → getItem-CSfSok9f.js.map} +1 -1
  72. package/dist/getLatestVersionRow-72Atl9vB.js +46 -0
  73. package/dist/getLatestVersionRow-72Atl9vB.js.map +1 -0
  74. package/dist/{getPublishPayload-BIrTVUxb.js → getPublishPayload-76_KfB5Y.js} +297 -154
  75. package/dist/getPublishPayload-76_KfB5Y.js.map +1 -0
  76. package/dist/{getPublishUploads-C6cDeZdz.js → getPublishUploads-CqgMBD8f.js} +68 -21
  77. package/dist/getPublishUploads-CqgMBD8f.js.map +1 -0
  78. package/dist/{index-Djd3667v.js → index-5b3JsS55.js} +2 -2
  79. package/dist/index-5b3JsS55.js.map +1 -0
  80. package/dist/{index-ClSv5pTA.js → index-BpgD305l.js} +12 -11
  81. package/dist/index-BpgD305l.js.map +1 -0
  82. package/dist/{index-HRHkbVQd.js → index-Y-yYyRBf.js} +530 -196
  83. package/dist/index-Y-yYyRBf.js.map +1 -0
  84. package/dist/index.browser-DaTzn79x.js +4139 -0
  85. package/dist/index.browser-DaTzn79x.js.map +1 -0
  86. package/dist/{index.node-DBtQkEfz.js → index.node-NYKqFOoe.js} +9 -4
  87. package/dist/index.node-NYKqFOoe.js.map +1 -0
  88. package/dist/main.cjs +1 -1
  89. package/dist/main.js +886 -560
  90. package/dist/main.js.map +1 -1
  91. package/dist/node.js +19 -15
  92. package/dist/node.js.map +1 -1
  93. package/dist/platform.browser.js +18 -3719
  94. package/dist/platform.browser.js.map +1 -1
  95. package/dist/platform.node.js +3 -3
  96. package/dist/{property-CQjuZ4JW.js → property-ByaiSyUK.js} +53 -48
  97. package/dist/property-ByaiSyUK.js.map +1 -0
  98. package/dist/publishDraftGraph-BRm6Pq3Q.js +405 -0
  99. package/dist/publishDraftGraph-BRm6Pq3Q.js.map +1 -0
  100. package/dist/resetAmbiguousLegacyItemData-B4dX6ZA1.js +88 -0
  101. package/dist/resetAmbiguousLegacyItemData-B4dX6ZA1.js.map +1 -0
  102. package/dist/resolveModelForSyncedSeed-B0tco3zG.js +46 -0
  103. package/dist/resolveModelForSyncedSeed-B0tco3zG.js.map +1 -0
  104. package/dist/seedSchema/MetadataSchema.ts +9 -0
  105. package/dist/seedSchema/ModelSchema.ts +5 -0
  106. package/dist/seedSchema/SeedSchema.ts +3 -0
  107. package/dist/seedSchema/VersionSchema.ts +5 -0
  108. package/dist/src/Item/Item.d.ts +21 -0
  109. package/dist/src/Item/Item.d.ts.map +1 -1
  110. package/dist/src/Item/service/actors/loadOrCreateItem.d.ts.map +1 -1
  111. package/dist/src/Item/service/actors/waitForDb.d.ts.map +1 -1
  112. package/dist/src/Item/service/itemMachineSingle.d.ts +3 -29
  113. package/dist/src/Item/service/itemMachineSingle.d.ts.map +1 -1
  114. package/dist/src/ItemProperty/ItemProperty.d.ts +13 -4
  115. package/dist/src/ItemProperty/ItemProperty.d.ts.map +1 -1
  116. package/dist/src/ItemProperty/service/actors/hydrateFromDb.d.ts.map +1 -1
  117. package/dist/src/ItemProperty/service/actors/loadOrCreateProperty.d.ts.map +1 -1
  118. package/dist/src/ItemProperty/service/actors/saveValueToDb/saveFile.d.ts.map +1 -1
  119. package/dist/src/ItemProperty/service/actors/saveValueToDb/saveHtml.d.ts.map +1 -1
  120. package/dist/src/ItemProperty/service/actors/saveValueToDb/saveImage.d.ts.map +1 -1
  121. package/dist/src/ItemProperty/service/actors/saveValueToDb/saveItemStorage.d.ts.map +1 -1
  122. package/dist/src/ItemProperty/service/propertyMachine.d.ts +4 -9
  123. package/dist/src/ItemProperty/service/propertyMachine.d.ts.map +1 -1
  124. package/dist/src/Model/Model.d.ts +52 -2
  125. package/dist/src/Model/Model.d.ts.map +1 -1
  126. package/dist/src/Model/errors.d.ts +10 -0
  127. package/dist/src/Model/errors.d.ts.map +1 -0
  128. package/dist/src/Model/service/actors/createModelProperties.d.ts.map +1 -1
  129. package/dist/src/Model/service/actors/loadOrCreateModel.d.ts.map +1 -1
  130. package/dist/src/Model/service/actors/validateModel.d.ts.map +1 -1
  131. package/dist/src/Model/service/modelMachine.d.ts +0 -8
  132. package/dist/src/Model/service/modelMachine.d.ts.map +1 -1
  133. package/dist/src/ModelProperty/ModelProperty.d.ts +42 -2
  134. package/dist/src/ModelProperty/ModelProperty.d.ts.map +1 -1
  135. package/dist/src/ModelProperty/service/actors/compareAndMarkDraft.d.ts.map +1 -1
  136. package/dist/src/ModelProperty/service/actors/saveToSchema.d.ts.map +1 -1
  137. package/dist/src/ModelProperty/service/actors/validateProperty.d.ts.map +1 -1
  138. package/dist/src/ModelProperty/service/modelPropertyMachine.d.ts +2 -9
  139. package/dist/src/ModelProperty/service/modelPropertyMachine.d.ts.map +1 -1
  140. package/dist/src/Schema/Schema.d.ts +8 -2
  141. package/dist/src/Schema/Schema.d.ts.map +1 -1
  142. package/dist/src/Schema/service/actors/checkExistingSchema.d.ts.map +1 -1
  143. package/dist/src/Schema/service/actors/createModelInstances.d.ts.map +1 -1
  144. package/dist/src/Schema/service/actors/loadOrCreateSchema.d.ts.map +1 -1
  145. package/dist/src/Schema/service/schemaMachine.d.ts +1 -217
  146. package/dist/src/Schema/service/schemaMachine.d.ts.map +1 -1
  147. package/dist/src/Schema/service/validation/SchemaValidationService.d.ts.map +1 -1
  148. package/dist/src/browser/db/Db.d.ts +3 -0
  149. package/dist/src/browser/db/Db.d.ts.map +1 -1
  150. package/dist/src/browser/db/drizzleFiles.d.ts +7 -2
  151. package/dist/src/browser/db/drizzleFiles.d.ts.map +1 -1
  152. package/dist/src/browser/db/embeddedMigrations.d.ts +11 -2
  153. package/dist/src/browser/db/embeddedMigrations.d.ts.map +1 -1
  154. package/dist/src/browser/db/sqliteBusyRetry.d.ts +14 -0
  155. package/dist/src/browser/db/sqliteBusyRetry.d.ts.map +1 -0
  156. package/dist/src/browser/helpers/FileManager.d.ts +1 -0
  157. package/dist/src/browser/helpers/FileManager.d.ts.map +1 -1
  158. package/dist/src/browser/helpers/QueryClient.d.ts +1 -0
  159. package/dist/src/browser/helpers/QueryClient.d.ts.map +1 -1
  160. package/dist/src/browser/helpers/opfsErrors.d.ts +2 -0
  161. package/dist/src/browser/helpers/opfsErrors.d.ts.map +1 -0
  162. package/dist/src/browser/helpers/tolerantWebAccess.d.ts +47 -0
  163. package/dist/src/browser/helpers/tolerantWebAccess.d.ts.map +1 -0
  164. package/dist/src/browser/workers/FileDownloader.d.ts.map +1 -1
  165. package/dist/src/browser/workers/ImageResizer.d.ts.map +1 -1
  166. package/dist/src/browser/workers/filesDownload.d.ts.map +1 -1
  167. package/dist/src/browser/workers/imageResize.d.ts.map +1 -1
  168. package/dist/src/client/ClientManager.d.ts.map +1 -1
  169. package/dist/src/client/actors/addModelsToDb.d.ts +14 -0
  170. package/dist/src/client/actors/addModelsToDb.d.ts.map +1 -1
  171. package/dist/src/client/actors/platformClassesInit.d.ts.map +1 -1
  172. package/dist/src/client/actors/processSchemaFiles.d.ts.map +1 -1
  173. package/dist/src/client/actors/saveConfig.d.ts +11 -0
  174. package/dist/src/client/actors/saveConfig.d.ts.map +1 -1
  175. package/dist/src/client/constants.d.ts +0 -8
  176. package/dist/src/client/constants.d.ts.map +1 -1
  177. package/dist/src/db/backfillMetadataPropertyIds.d.ts.map +1 -1
  178. package/dist/src/db/configs/{dev.schema.config.d.ts → migrations.config.d.ts} +1 -1
  179. package/dist/src/db/configs/migrations.config.d.ts.map +1 -0
  180. package/dist/src/db/read/batchLatestPublishedVersionBySeedLocalIds.d.ts +1 -1
  181. package/dist/src/db/read/batchLatestPublishedVersionBySeedLocalIds.d.ts.map +1 -1
  182. package/dist/src/db/read/getItemData.d.ts.map +1 -1
  183. package/dist/src/db/read/getItemProperties.d.ts.map +1 -1
  184. package/dist/src/db/read/getItems.d.ts +7 -2
  185. package/dist/src/db/read/getItems.d.ts.map +1 -1
  186. package/dist/src/db/read/getLatestPublishedVersionRow.d.ts +2 -1
  187. package/dist/src/db/read/getLatestPublishedVersionRow.d.ts.map +1 -1
  188. package/dist/src/db/read/getLatestVersionRow.d.ts +13 -0
  189. package/dist/src/db/read/getLatestVersionRow.d.ts.map +1 -0
  190. package/dist/src/db/read/getModelSchemas.d.ts.map +1 -1
  191. package/dist/src/db/read/getPropertyData.d.ts.map +1 -1
  192. package/dist/src/db/read/getPublishPayload.d.ts +18 -11
  193. package/dist/src/db/read/getPublishPayload.d.ts.map +1 -1
  194. package/dist/src/db/read/getPublishPendingDiff.d.ts +2 -1
  195. package/dist/src/db/read/getPublishPendingDiff.d.ts.map +1 -1
  196. package/dist/src/db/read/getPublishUploads.d.ts +5 -0
  197. package/dist/src/db/read/getPublishUploads.d.ts.map +1 -1
  198. package/dist/src/db/read/getSchemaUidForModel.d.ts.map +1 -1
  199. package/dist/src/db/read/getSeedPublishState.d.ts +8 -2
  200. package/dist/src/db/read/getSeedPublishState.d.ts.map +1 -1
  201. package/dist/src/db/read/isSeedRevoked.d.ts +7 -0
  202. package/dist/src/db/read/isSeedRevoked.d.ts.map +1 -0
  203. package/dist/src/db/read/publishDraftGraph.d.ts +57 -0
  204. package/dist/src/db/read/publishDraftGraph.d.ts.map +1 -0
  205. package/dist/src/db/read/publishErrors.d.ts +37 -0
  206. package/dist/src/db/read/publishErrors.d.ts.map +1 -0
  207. package/dist/src/db/read/resolveModelForSyncedSeed.d.ts +39 -0
  208. package/dist/src/db/read/resolveModelForSyncedSeed.d.ts.map +1 -0
  209. package/dist/src/db/read/resolveModelRecord.d.ts +69 -0
  210. package/dist/src/db/read/resolveModelRecord.d.ts.map +1 -0
  211. package/dist/src/db/read/resolveRelatedSeedRef.d.ts +34 -0
  212. package/dist/src/db/read/resolveRelatedSeedRef.d.ts.map +1 -0
  213. package/dist/src/db/read/subqueries/liveVersion.d.ts +12 -0
  214. package/dist/src/db/read/subqueries/liveVersion.d.ts.map +1 -0
  215. package/dist/src/db/read/subqueries/metadataLatest.d.ts +4 -0
  216. package/dist/src/db/read/subqueries/metadataLatest.d.ts.map +1 -1
  217. package/dist/src/db/read/subqueries/versionData.d.ts +7 -2
  218. package/dist/src/db/read/subqueries/versionData.d.ts.map +1 -1
  219. package/dist/src/db/read/summarizePublishWork.d.ts +10 -2
  220. package/dist/src/db/read/summarizePublishWork.d.ts.map +1 -1
  221. package/dist/src/db/resetAmbiguousLegacyItemData.d.ts +17 -0
  222. package/dist/src/db/resetAmbiguousLegacyItemData.d.ts.map +1 -0
  223. package/dist/src/db/sqlParamBatches.d.ts +27 -0
  224. package/dist/src/db/sqlParamBatches.d.ts.map +1 -0
  225. package/dist/src/db/write/addExcludedTransactions.d.ts +7 -0
  226. package/dist/src/db/write/addExcludedTransactions.d.ts.map +1 -0
  227. package/dist/src/db/write/applyPropertyAttestationUidsFromPublish.d.ts +6 -0
  228. package/dist/src/db/write/applyPropertyAttestationUidsFromPublish.d.ts.map +1 -1
  229. package/dist/src/db/write/createMetadata.d.ts +2 -0
  230. package/dist/src/db/write/createMetadata.d.ts.map +1 -1
  231. package/dist/src/db/write/createNewItem.d.ts +3 -1
  232. package/dist/src/db/write/createNewItem.d.ts.map +1 -1
  233. package/dist/src/db/write/createSeed.d.ts +2 -1
  234. package/dist/src/db/write/createSeed.d.ts.map +1 -1
  235. package/dist/src/db/write/createSeeds.d.ts +1 -1
  236. package/dist/src/db/write/createSeeds.d.ts.map +1 -1
  237. package/dist/src/db/write/linkModelToSchema.d.ts +12 -0
  238. package/dist/src/db/write/linkModelToSchema.d.ts.map +1 -0
  239. package/dist/src/db/write/updateItemPropertyValue.d.ts.map +1 -1
  240. package/dist/src/db/write/updateMetadata.d.ts.map +1 -1
  241. package/dist/src/db/write/updateSeedRevokedAt.d.ts +11 -1
  242. package/dist/src/db/write/updateSeedRevokedAt.d.ts.map +1 -1
  243. package/dist/src/db/write/updateSeedUid.d.ts.map +1 -1
  244. package/dist/src/db/write/updateVersionUid.d.ts +2 -1
  245. package/dist/src/db/write/updateVersionUid.d.ts.map +1 -1
  246. package/dist/src/events/files/download.d.ts.map +1 -1
  247. package/dist/src/events/item/easSyncManager.d.ts +2 -0
  248. package/dist/src/events/item/easSyncManager.d.ts.map +1 -1
  249. package/dist/src/events/item/index.d.ts.map +1 -1
  250. package/dist/src/events/item/syncDbWithEas.d.ts +16 -0
  251. package/dist/src/events/item/syncDbWithEas.d.ts.map +1 -1
  252. package/dist/src/helpers/FileManager/BaseFileManager.d.ts +1 -0
  253. package/dist/src/helpers/FileManager/BaseFileManager.d.ts.map +1 -1
  254. package/dist/src/helpers/FileManager/IFileManager.d.ts +5 -0
  255. package/dist/src/helpers/FileManager/IFileManager.d.ts.map +1 -1
  256. package/dist/src/helpers/FileManager/errors.d.ts +10 -0
  257. package/dist/src/helpers/FileManager/errors.d.ts.map +1 -0
  258. package/dist/src/helpers/compareMetadataRowsLatestFirst.d.ts +21 -3
  259. package/dist/src/helpers/compareMetadataRowsLatestFirst.d.ts.map +1 -1
  260. package/dist/src/helpers/constants.d.ts +9 -0
  261. package/dist/src/helpers/constants.d.ts.map +1 -1
  262. package/dist/src/helpers/crypto.d.ts +5 -0
  263. package/dist/src/helpers/crypto.d.ts.map +1 -1
  264. package/dist/src/helpers/db.d.ts +25 -5
  265. package/dist/src/helpers/db.d.ts.map +1 -1
  266. package/dist/src/helpers/easPropertyCanonical.d.ts +1 -1
  267. package/dist/src/helpers/easPropertyCanonical.d.ts.map +1 -1
  268. package/dist/src/helpers/entity/entityCommon.d.ts +10 -0
  269. package/dist/src/helpers/entity/entityCommon.d.ts.map +1 -1
  270. package/dist/src/helpers/entity/entityDestroy.d.ts +1 -1
  271. package/dist/src/helpers/entity/entityDestroy.d.ts.map +1 -1
  272. package/dist/src/helpers/entity/entityLiveQuery.d.ts +5 -0
  273. package/dist/src/helpers/entity/entityLiveQuery.d.ts.map +1 -1
  274. package/dist/src/helpers/entity/evictionEpoch.d.ts +18 -0
  275. package/dist/src/helpers/entity/evictionEpoch.d.ts.map +1 -0
  276. package/dist/src/helpers/file/fetchAll/actors.d.ts.map +1 -1
  277. package/dist/src/helpers/getSegmentedItemProperties.d.ts.map +1 -1
  278. package/dist/src/helpers/htmlEmbeddedDataUriPublish.d.ts +31 -3
  279. package/dist/src/helpers/htmlEmbeddedDataUriPublish.d.ts.map +1 -1
  280. package/dist/src/helpers/isPublishedMetadataRow.d.ts +10 -0
  281. package/dist/src/helpers/isPublishedMetadataRow.d.ts.map +1 -0
  282. package/dist/src/helpers/ownership.d.ts.map +1 -1
  283. package/dist/src/helpers/property.d.ts +6 -1
  284. package/dist/src/helpers/property.d.ts.map +1 -1
  285. package/dist/src/helpers/schema.d.ts +14 -4
  286. package/dist/src/helpers/schema.d.ts.map +1 -1
  287. package/dist/src/helpers/tabCoordinator.d.ts +45 -0
  288. package/dist/src/helpers/tabCoordinator.d.ts.map +1 -0
  289. package/dist/src/helpers/tabEvents.d.ts +27 -0
  290. package/dist/src/helpers/tabEvents.d.ts.map +1 -0
  291. package/dist/src/helpers/tabLocks.d.ts +28 -0
  292. package/dist/src/helpers/tabLocks.d.ts.map +1 -0
  293. package/dist/src/helpers/updateSchema.d.ts.map +1 -1
  294. package/dist/src/imports/json.d.ts.map +1 -1
  295. package/dist/src/imports/markdown.d.ts.map +1 -1
  296. package/dist/src/index.d.ts +13 -3
  297. package/dist/src/index.d.ts.map +1 -1
  298. package/dist/src/node/db/Db.d.ts.map +1 -1
  299. package/dist/src/node/helpers/FileManager.d.ts +2 -0
  300. package/dist/src/node/helpers/FileManager.d.ts.map +1 -1
  301. package/dist/src/query/createLocalQueryDataSource.d.ts +4 -0
  302. package/dist/src/query/createLocalQueryDataSource.d.ts.map +1 -1
  303. package/dist/src/seedSchema/MetadataSchema.d.ts +36 -0
  304. package/dist/src/seedSchema/MetadataSchema.d.ts.map +1 -1
  305. package/dist/src/seedSchema/ModelSchema.d.ts +57 -0
  306. package/dist/src/seedSchema/ModelSchema.d.ts.map +1 -1
  307. package/dist/src/seedSchema/SeedSchema.d.ts +19 -0
  308. package/dist/src/seedSchema/SeedSchema.d.ts.map +1 -1
  309. package/dist/src/seedSchema/VersionSchema.d.ts +17 -0
  310. package/dist/src/seedSchema/VersionSchema.d.ts.map +1 -1
  311. package/dist/src/services/write/actors/validateEntity.d.ts.map +1 -1
  312. package/dist/src/services/write/actors/writeToDatabase.d.ts +5 -0
  313. package/dist/src/services/write/actors/writeToDatabase.d.ts.map +1 -1
  314. package/dist/src/services/write/writeProcessMachine.d.ts.map +1 -1
  315. package/dist/src/stores/eas.d.ts +1 -1
  316. package/dist/src/stores/eas.d.ts.map +1 -1
  317. package/dist/src/types/index.d.ts +7 -0
  318. package/dist/src/types/index.d.ts.map +1 -1
  319. package/dist/src/types/item.d.ts +19 -11
  320. package/dist/src/types/item.d.ts.map +1 -1
  321. package/dist/src/types/property.d.ts +3 -2
  322. package/dist/src/types/property.d.ts.map +1 -1
  323. package/dist/syncDbWithEas-BPap9Sru.js +855 -0
  324. package/dist/syncDbWithEas-BPap9Sru.js.map +1 -0
  325. package/dist/{index-280bL-n4.js → tabEvents-C6NXS6Jl.js} +231 -68
  326. package/dist/tabEvents-C6NXS6Jl.js.map +1 -0
  327. package/dist/tolerantWebAccess-NBQ1NB4i.js +160 -0
  328. package/dist/tolerantWebAccess-NBQ1NB4i.js.map +1 -0
  329. package/dist/updateSeedRevokedAt-CYwgVNlM.js +32 -0
  330. package/dist/updateSeedRevokedAt-CYwgVNlM.js.map +1 -0
  331. package/package.json +8 -10
  332. package/dist/BasePathResolver-B6CKqoKw.js.map +0 -1
  333. package/dist/ClientManager-ChcmUL47.js.map +0 -1
  334. package/dist/ModelProperty-D79uV42p.js.map +0 -1
  335. package/dist/Schema-a8uO-hIZ.js.map +0 -1
  336. package/dist/SchemaValidationService-Y49vqast.js.map +0 -1
  337. package/dist/backfillMetadataPropertyIds-CBsf7LnU.js.map +0 -1
  338. package/dist/cjs/ModelProperty-D9FGaGuE.js.map +0 -1
  339. package/dist/cjs/Schema-BiJIPLEL.js.map +0 -1
  340. package/dist/cjs/SchemaValidationService-DtYs_CNY.js.map +0 -1
  341. package/dist/cjs/backfillMetadataPropertyIds-2XaN3b9S.js.map +0 -1
  342. package/dist/cjs/getPublishPayload-D5DhLGvN.js.map +0 -1
  343. package/dist/cjs/getPublishUploads-DMhCCKYF.js.map +0 -1
  344. package/dist/cjs/getSegmentedItemProperties-CU8rtBAo.js +0 -148
  345. package/dist/cjs/getSegmentedItemProperties-CU8rtBAo.js.map +0 -1
  346. package/dist/cjs/index-CSNtEnbF.js.map +0 -1
  347. package/dist/cjs/index-DPp9rdRL.js.map +0 -1
  348. package/dist/cjs/property-DlKiAWt4.js.map +0 -1
  349. package/dist/cjs/syncDbWithEas-C6n34o_Q.js +0 -606
  350. package/dist/cjs/syncDbWithEas-C6n34o_Q.js.map +0 -1
  351. package/dist/db-WbrzEf7c.js.map +0 -1
  352. package/dist/eas-CfYCu4IX.js.map +0 -1
  353. package/dist/getPublishPayload-BIrTVUxb.js.map +0 -1
  354. package/dist/getPublishUploads-C6cDeZdz.js.map +0 -1
  355. package/dist/getSegmentedItemProperties-BmKE71vU.js +0 -148
  356. package/dist/getSegmentedItemProperties-BmKE71vU.js.map +0 -1
  357. package/dist/index-280bL-n4.js.map +0 -1
  358. package/dist/index-ClSv5pTA.js.map +0 -1
  359. package/dist/index-Djd3667v.js.map +0 -1
  360. package/dist/index-HRHkbVQd.js.map +0 -1
  361. package/dist/index.node-DBtQkEfz.js.map +0 -1
  362. package/dist/property-CQjuZ4JW.js.map +0 -1
  363. package/dist/src/Item/service/actors/fetchDataFromEas.d.ts +0 -4
  364. package/dist/src/Item/service/actors/fetchDataFromEas.d.ts.map +0 -1
  365. package/dist/src/Item/service/actors/hydrateExistingItem.d.ts +0 -4
  366. package/dist/src/Item/service/actors/hydrateExistingItem.d.ts.map +0 -1
  367. package/dist/src/Item/service/actors/hydrateNewItem.d.ts +0 -4
  368. package/dist/src/Item/service/actors/hydrateNewItem.d.ts.map +0 -1
  369. package/dist/src/Item/service/actors/initialize.d.ts +0 -4
  370. package/dist/src/Item/service/actors/initialize.d.ts.map +0 -1
  371. package/dist/src/Item/service/actors/reload.d.ts +0 -5
  372. package/dist/src/Item/service/actors/reload.d.ts.map +0 -1
  373. package/dist/src/Item/service/actors/saveDataToDb.d.ts +0 -4
  374. package/dist/src/Item/service/actors/saveDataToDb.d.ts.map +0 -1
  375. package/dist/src/ItemProperty/service/actors/resolveRemoteStorage.d.ts +0 -5
  376. package/dist/src/ItemProperty/service/actors/resolveRemoteStorage.d.ts.map +0 -1
  377. package/dist/src/Schema/service/addModelsMachine.d.ts +0 -123
  378. package/dist/src/Schema/service/addModelsMachine.d.ts.map +0 -1
  379. package/dist/src/browser/helpers/index.d.ts +0 -4
  380. package/dist/src/browser/helpers/index.d.ts.map +0 -1
  381. package/dist/src/db/configs/dev.schema.config.d.ts.map +0 -1
  382. package/dist/src/helpers/file/download/actors.d.ts +0 -17
  383. package/dist/src/helpers/file/download/actors.d.ts.map +0 -1
  384. package/dist/src/helpers/file/download/index.d.ts +0 -70
  385. package/dist/src/helpers/file/download/index.d.ts.map +0 -1
  386. package/dist/src/services/publish/actors/createPublishAttempt.d.ts +0 -4
  387. package/dist/src/services/publish/actors/createPublishAttempt.d.ts.map +0 -1
  388. package/dist/src/services/publish/actors/preparePublishRequestData.d.ts +0 -4
  389. package/dist/src/services/publish/actors/preparePublishRequestData.d.ts.map +0 -1
  390. package/dist/src/services/publish/actors/upload.d.ts +0 -4
  391. package/dist/src/services/publish/actors/upload.d.ts.map +0 -1
  392. package/dist/src/services/publish/actors/validateItemData.d.ts +0 -4
  393. package/dist/src/services/publish/actors/validateItemData.d.ts.map +0 -1
  394. package/dist/src/services/publish/publishMachine.d.ts +0 -32
  395. package/dist/src/services/publish/publishMachine.d.ts.map +0 -1
  396. package/dist/syncDbWithEas-CuARXfyN.js +0 -598
  397. package/dist/syncDbWithEas-CuARXfyN.js.map +0 -1
  398. package/dist/updateSeedRevokedAt-CBcLfHWs.js +0 -22
  399. package/dist/updateSeedRevokedAt-CBcLfHWs.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"batchLatestPublishedVersionBySeedLocalIds.d.ts","sourceRoot":"","sources":["../../../../src/db/read/batchLatestPublishedVersionBySeedLocalIds.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,uBAAuB,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAA;AAE7E;;;GAGG;AACH,wBAAsB,yCAAyC,CAC7D,YAAY,EAAE,MAAM,EAAE,GACrB,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAC,CAuC/C"}
1
+ {"version":3,"file":"batchLatestPublishedVersionBySeedLocalIds.d.ts","sourceRoot":"","sources":["../../../../src/db/read/batchLatestPublishedVersionBySeedLocalIds.ts"],"names":[],"mappings":"AAOA,MAAM,MAAM,uBAAuB,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAA;AAE7E;;;GAGG;AACH,wBAAsB,yCAAyC,CAC7D,YAAY,EAAE,MAAM,EAAE,GACrB,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAC,CAmD/C"}
@@ -1 +1 @@
1
- {"version":3,"file":"getItemData.d.ts","sourceRoot":"","sources":["../../../../src/db/read/getItemData.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAY,MAAM,SAAS,CAAA;AAiB/C;;;;;;;GAOG;AACH,eAAO,MAAM,WAAW,EAAE,WA0KzB,CAAA"}
1
+ {"version":3,"file":"getItemData.d.ts","sourceRoot":"","sources":["../../../../src/db/read/getItemData.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAY,MAAM,SAAS,CAAA;AAkB/C;;;;;;;GAOG;AACH,eAAO,MAAM,WAAW,EAAE,WAsLzB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"getItemProperties.d.ts","sourceRoot":"","sources":["../../../../src/db/read/getItemProperties.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAgB,MAAM,SAAS,CAAA;AAOzD,eAAO,MAAM,iBAAiB,EAAE,iBAgD/B,CAAA"}
1
+ {"version":3,"file":"getItemProperties.d.ts","sourceRoot":"","sources":["../../../../src/db/read/getItemProperties.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAgB,MAAM,SAAS,CAAA;AAOzD,eAAO,MAAM,iBAAiB,EAAE,iBAkC/B,CAAA"}
@@ -1,6 +1,10 @@
1
1
  import { ItemData } from '../../types';
2
2
  type GetItemsDataProps = {
3
3
  modelName?: string;
4
+ /** Restrict to items of one model (seeds.model_file_id), by its Model.id ... */
5
+ modelFileId?: string;
6
+ /** ... or by the schema that defines `modelName`. */
7
+ schemaName?: string;
4
8
  deleted?: boolean;
5
9
  includeEas?: boolean;
6
10
  addressFilter?: 'owned' | 'watched' | 'all';
@@ -11,9 +15,10 @@ type GetItemsData = (props: GetItemsDataProps) => Promise<ItemData[]>;
11
15
  *
12
16
  * - `includeEas: false` (default): drafts only — `seeds.uid` is null, empty, legacy `'NULL'`, or zero-bytes32.
13
17
  * On-chain seeds (real EAS seed UID) require `includeEas: true`.
14
- * - `latestVersionUid` / `latestVersionLocalId`: head version **row** by `created_at` (may be unattested).
18
+ * - `latestVersionUid` / `latestVersionLocalId`: head version **row** by `created_at` (may be unattested),
19
+ * skipping revoked versions; null when every version is revoked.
15
20
  * - `publishedVersionUid` / `publishedVersionLocalId`: filled in a second batched read (same rules as
16
- * `getLatestPublishedVersionRow`).
21
+ * `getLatestPublishedVersionRow`: attested and not revoked).
17
22
  */
18
23
  export declare const getItemsData: GetItemsData;
19
24
  export {};
@@ -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,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;;;;;;;;GAQG;AACH,eAAO,MAAM,YAAY,EAAE,YAgG1B,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;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"}
@@ -5,7 +5,8 @@ export type PublishedVersionRow = {
5
5
  };
6
6
  /**
7
7
  * Latest version row for the seed (by createdAt) whose uid is a real EAS attestation id.
8
- * Skips legacy 'NULL' / ZERO_BYTES32 placeholders and non-bytes32 strings.
8
+ * Skips legacy 'NULL' / ZERO_BYTES32 placeholders, non-bytes32 strings, and revoked versions
9
+ * (`revoked_at` set): after a full unpublish the seed has no published version.
9
10
  */
10
11
  export declare function getLatestPublishedVersionRow(seedLocalId: string): Promise<PublishedVersionRow | null>;
11
12
  //# sourceMappingURL=getLatestPublishedVersionRow.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"getLatestPublishedVersionRow.d.ts","sourceRoot":"","sources":["../../../../src/db/read/getLatestPublishedVersionRow.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,mBAAmB,GAAG;IAChC,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;IACtB,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAA;CACpC,CAAA;AAED;;;GAGG;AACH,wBAAsB,4BAA4B,CAChD,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC,CAwBrC"}
1
+ {"version":3,"file":"getLatestPublishedVersionRow.d.ts","sourceRoot":"","sources":["../../../../src/db/read/getLatestPublishedVersionRow.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,mBAAmB,GAAG;IAChC,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;IACtB,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAA;CACpC,CAAA;AAED;;;;GAIG;AACH,wBAAsB,4BAA4B,CAChD,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC,CAwBrC"}
@@ -0,0 +1,13 @@
1
+ export type LatestVersionRow = {
2
+ localId: string | null;
3
+ uid: string | null;
4
+ createdAt: number | null;
5
+ attestationCreatedAt: number | null;
6
+ };
7
+ /**
8
+ * The seed's head version row: newest by (created_at DESC, local_id DESC), attested or not, skipping
9
+ * revoked versions. Null when the seed has no version or every version is revoked (a fully
10
+ * unpublished item). Same choice as `latestVersionLocalId` in the `getVersionData` subquery.
11
+ */
12
+ export declare function getLatestVersionRow(seedLocalId: string): Promise<LatestVersionRow | null>;
13
+ //# sourceMappingURL=getLatestVersionRow.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getLatestVersionRow.d.ts","sourceRoot":"","sources":["../../../../src/db/read/getLatestVersionRow.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,gBAAgB,GAAG;IAC7B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;IACtB,GAAG,EAAE,MAAM,GAAG,IAAI,CAAA;IAClB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAA;CACpC,CAAA;AAED;;;;GAIG;AACH,wBAAsB,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAiB/F"}
@@ -1 +1 @@
1
- {"version":3,"file":"getModelSchemas.d.ts","sourceRoot":"","sources":["../../../../src/db/read/getModelSchemas.ts"],"names":[],"mappings":"AAQA,KAAK,WAAW,GAAG;IACjB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,MAAM,GAAG,IAAI,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAID,KAAK,qBAAqB,GAAG;IAC3B,yBAAyB,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;IACnD,YAAY,EAAE,WAAW,EAAE,CAAA;CAC5B,CAAA;AAED,KAAK,eAAe,GAAG,MAAM,OAAO,CAAC,qBAAqB,CAAC,CAAA;AAE3D,eAAO,MAAM,eAAe,EAAE,eAoD7B,CAAA"}
1
+ {"version":3,"file":"getModelSchemas.d.ts","sourceRoot":"","sources":["../../../../src/db/read/getModelSchemas.ts"],"names":[],"mappings":"AAQA,KAAK,WAAW,GAAG;IACjB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,MAAM,GAAG,IAAI,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAID,KAAK,qBAAqB,GAAG;IAC3B,yBAAyB,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;IACnD,YAAY,EAAE,WAAW,EAAE,CAAA;CAC5B,CAAA;AAED,KAAK,eAAe,GAAG,MAAM,OAAO,CAAC,qBAAqB,CAAC,CAAA;AAE3D,eAAO,MAAM,eAAe,EAAE,eAqD7B,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"getPropertyData.d.ts","sourceRoot":"","sources":["../../../../src/db/read/getPropertyData.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAItC,OAAO,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAA;AAQnD,eAAO,MAAM,eAAe,GAAU,oDAKnC,sBAAsB,KAAG,OAAO,CAAC,YAAY,GAAG,SAAS,CA4D3D,CAAA"}
1
+ {"version":3,"file":"getPropertyData.d.ts","sourceRoot":"","sources":["../../../../src/db/read/getPropertyData.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAItC,OAAO,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAA;AASnD,eAAO,MAAM,eAAe,GAAU,oDAKnC,sBAAsB,KAAG,OAAO,CAAC,YAAY,GAAG,SAAS,CAyD3D,CAAA"}
@@ -1,13 +1,26 @@
1
1
  import { AttestationRequest, AttestationRequestData } from '@ethereum-attestation-service/eas-sdk';
2
+ import { IItemProperty } from '../../interfaces';
2
3
  import { IItem } from '../../interfaces';
3
- import type { ValidationError } from '../../Schema/validation';
4
- /** Validation error collected during publish payload building. */
5
- export type PublishValidationError = Pick<ValidationError, 'field' | 'message'> & {
6
- code?: string;
7
- };
4
+ import { PublishValidationFailedError, type PublishValidationError, type UnpublishedRelatedItem } from './publishErrors';
5
+ export { PublishValidationFailedError, type PublishValidationError };
8
6
  /** Context for collecting validation errors instead of throwing on first error. */
9
7
  export type PublishValidationContext = {
10
8
  errors: PublishValidationError[];
9
+ /** Refs to seeds whose attestation was revoked; publish stops with RelatedItemUnpublishedError. */
10
+ unpublishedRelatedItems?: UnpublishedRelatedItem[];
11
+ /**
12
+ * Relation/list/image refs (local id, or a republished seed's old uid) to seeds that are
13
+ * published and live, mapped to their current uid: the parent attests that uid.
14
+ */
15
+ relatedRefUids?: Map<string, string>;
16
+ /**
17
+ * Items getting a new seed in this publish whose payload is still being built (the root when it
18
+ * gets a new seed, and the related drafts being walked). A ref to one of them is a cycle back
19
+ * edge: see publishDraftGraph.ts.
20
+ */
21
+ newSeedsInProgress?: Set<string>;
22
+ /** Properties left out of this publish because they point back at an item in progress. */
23
+ deferredProperties?: Set<IItemProperty<any>>;
11
24
  };
12
25
  /** `patch` (default): new property attestations on the current Version. `new_version`: new Version attestation + attest all properties. */
13
26
  export type PublishMode = 'patch' | 'new_version';
@@ -42,11 +55,6 @@ type UploadedTransaction = {
42
55
  versionLocalId?: string;
43
56
  itemPropertyName?: string;
44
57
  };
45
- /** Error thrown when publish validation fails. Includes all validation errors for user to fix. */
46
- export declare class PublishValidationFailedError extends Error {
47
- readonly validationErrors: PublishValidationError[];
48
- constructor(message: string, validationErrors: PublishValidationError[]);
49
- }
50
58
  export declare const getPublishPayload: (item: IItem<any>, uploadedTransactions: UploadedTransaction[], options?: GetPublishPayloadOptions) => Promise<MultiPublishPayload>;
51
59
  export type ValidateItemForPublishResult = {
52
60
  isValid: boolean;
@@ -64,5 +72,4 @@ export declare const validateItemForPublish: (item: IItem<any>, uploadedTransact
64
72
  * Returns an updated multiPayload with re-encoded attestations where resolution was applied.
65
73
  */
66
74
  export declare const resolvePublishPayloadValues: (multiPayload: MultiPublishPayload, resolvedUids: ResolvedSeedUids) => Promise<MultiPublishPayload>;
67
- export {};
68
75
  //# sourceMappingURL=getPublishPayload.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"getPublishPayload.d.ts","sourceRoot":"","sources":["../../../../src/db/read/getPublishPayload.ts"],"names":[],"mappings":"AASA,OAAO,EACL,kBAAkB,EAClB,sBAAsB,EAEvB,MAAM,uCAAuC,CAAA;AA0B9C,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAA;AAIpC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAS1D,kEAAkE;AAClE,MAAM,MAAM,sBAAsB,GAAG,IAAI,CAAC,eAAe,EAAE,OAAO,GAAG,SAAS,CAAC,GAAG;IAAE,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA;AAEnG,mFAAmF;AACnF,MAAM,MAAM,wBAAwB,GAAG;IAAE,MAAM,EAAE,sBAAsB,EAAE,CAAA;CAAE,CAAA;AAE3E,2IAA2I;AAC3I,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,aAAa,CAAA;AAEjD,MAAM,MAAM,wBAAwB,GAAG;IACrC,WAAW,CAAC,EAAE,WAAW,CAAA;CAC1B,CAAA;AAgpCD,KAAK,cAAc,GAAG;IACpB,OAAO,EAAE,MAAM,CAAA;IACf,eAAe,EAAE,OAAO,CAAA;IACxB,aAAa,EAAE,MAAM,CAAA;IACrB,OAAO,EAAE,MAAM,CAAA;IACf,gBAAgB,EAAE,MAAM,CAAA;IACxB,UAAU,EAAE,MAAM,CAAA;IAClB,kBAAkB,EAAE,CAAC,IAAI,CAAC,kBAAkB,EAAE,MAAM,CAAC,GAAG;QACtD,IAAI,EAAE,sBAAsB,EAAE,CAAA;QAC9B,aAAa,CAAC,EAAE,MAAM,CAAA;QACtB,sBAAsB,CAAC,EAAE,MAAM,CAAA;QAC/B,UAAU,CAAC,EAAE,MAAM,CAAA;QACnB,gBAAgB,CAAC,EAAE,MAAM,CAAA;QACzB,YAAY,CAAC,EAAE,MAAM,CAAA;QACrB,qBAAqB,CAAC,EAAE,MAAM,EAAE,CAAA;KACjC,CAAC,EAAE,CAAA;IACJ,kBAAkB,EAAE,GAAG,EAAE,CAAA;CAC1B,CAAA;AAED,KAAK,mBAAmB,GAAG,cAAc,EAAE,CAAA;AAiF3C,8HAA8H;AAC9H,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;AAErD,KAAK,mBAAmB,GAAG;IACzB,IAAI,EAAE,MAAM,CAAA;IACZ,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B,CAAA;AAoFD,kGAAkG;AAClG,qBAAa,4BAA6B,SAAQ,KAAK;aAGnC,gBAAgB,EAAE,sBAAsB,EAAE;gBAD1D,OAAO,EAAE,MAAM,EACC,gBAAgB,EAAE,sBAAsB,EAAE;CAK7D;AAED,eAAO,MAAM,iBAAiB,GAC5B,MAAM,KAAK,CAAC,GAAG,CAAC,EAChB,sBAAsB,mBAAmB,EAAE,EAC3C,UAAU,wBAAwB,KACjC,OAAO,CAAC,mBAAmB,CA+M7B,CAAA;AAED,MAAM,MAAM,4BAA4B,GAAG;IACzC,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,EAAE,sBAAsB,EAAE,CAAA;CACjC,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,GACjC,MAAM,KAAK,CAAC,GAAG,CAAC,EAChB,uBAAsB,mBAAmB,EAAO,EAChD,UAAU,wBAAwB,KACjC,OAAO,CAAC,4BAA4B,CAUtC,CAAA;AAsKD;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,GACtC,cAAc,mBAAmB,EACjC,cAAc,gBAAgB,KAC7B,OAAO,CAAC,mBAAmB,CAqH7B,CAAA"}
1
+ {"version":3,"file":"getPublishPayload.d.ts","sourceRoot":"","sources":["../../../../src/db/read/getPublishPayload.ts"],"names":[],"mappings":"AAUA,OAAO,EACL,kBAAkB,EAClB,sBAAsB,EAEvB,MAAM,uCAAuC,CAAA;AAsB9C,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAM5C,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAA;AAYpC,OAAO,EACL,4BAA4B,EAE5B,KAAK,sBAAsB,EAC3B,KAAK,sBAAsB,EAC5B,MAAM,yBAAyB,CAAA;AAUhC,OAAO,EAAE,4BAA4B,EAAE,KAAK,sBAAsB,EAAE,CAAA;AAEpE,mFAAmF;AACnF,MAAM,MAAM,wBAAwB,GAAG;IACrC,MAAM,EAAE,sBAAsB,EAAE,CAAA;IAChC,mGAAmG;IACnG,uBAAuB,CAAC,EAAE,sBAAsB,EAAE,CAAA;IAClD;;;OAGG;IACH,cAAc,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACpC;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAChC,0FAA0F;IAC1F,kBAAkB,CAAC,EAAE,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAA;CAC7C,CAAA;AAyDD,2IAA2I;AAC3I,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,aAAa,CAAA;AAEjD,MAAM,MAAM,wBAAwB,GAAG;IACrC,WAAW,CAAC,EAAE,WAAW,CAAA;CAC1B,CAAA;AA6xCD,KAAK,cAAc,GAAG;IACpB,OAAO,EAAE,MAAM,CAAA;IACf,eAAe,EAAE,OAAO,CAAA;IACxB,aAAa,EAAE,MAAM,CAAA;IACrB,OAAO,EAAE,MAAM,CAAA;IACf,gBAAgB,EAAE,MAAM,CAAA;IACxB,UAAU,EAAE,MAAM,CAAA;IAClB,kBAAkB,EAAE,CAAC,IAAI,CAAC,kBAAkB,EAAE,MAAM,CAAC,GAAG;QACtD,IAAI,EAAE,sBAAsB,EAAE,CAAA;QAC9B,aAAa,CAAC,EAAE,MAAM,CAAA;QACtB,sBAAsB,CAAC,EAAE,MAAM,CAAA;QAC/B,UAAU,CAAC,EAAE,MAAM,CAAA;QACnB,gBAAgB,CAAC,EAAE,MAAM,CAAA;QACzB,YAAY,CAAC,EAAE,MAAM,CAAA;QACrB,qBAAqB,CAAC,EAAE,MAAM,EAAE,CAAA;KACjC,CAAC,EAAE,CAAA;IACJ,kBAAkB,EAAE,GAAG,EAAE,CAAA;CAC1B,CAAA;AAED,KAAK,mBAAmB,GAAG,cAAc,EAAE,CAAA;AAiF3C,8HAA8H;AAC9H,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;AAErD,KAAK,mBAAmB,GAAG;IACzB,IAAI,EAAE,MAAM,CAAA;IACZ,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B,CAAA;AAoFD,eAAO,MAAM,iBAAiB,GAC5B,MAAM,KAAK,CAAC,GAAG,CAAC,EAChB,sBAAsB,mBAAmB,EAAE,EAC3C,UAAU,wBAAwB,KACjC,OAAO,CAAC,mBAAmB,CA4N7B,CAAA;AAED,MAAM,MAAM,4BAA4B,GAAG;IACzC,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,EAAE,sBAAsB,EAAE,CAAA;CACjC,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,GACjC,MAAM,KAAK,CAAC,GAAG,CAAC,EAChB,uBAAsB,mBAAmB,EAAO,EAChD,UAAU,wBAAwB,KACjC,OAAO,CAAC,4BAA4B,CAUtC,CAAA;AAsKD;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,GACtC,cAAc,mBAAmB,EACjC,cAAc,gBAAgB,KAC7B,OAAO,CAAC,mBAAmB,CAqH7B,CAAA"}
@@ -15,7 +15,8 @@ export type GetPublishPendingDiffResult = {
15
15
  };
16
16
  /**
17
17
  * Per property: the **latest** metadata row (by `attestationCreatedAt` / `createdAt`) lacks a valid
18
- * EAS attestation `uid` — local edit or missing post-publish UID backfill. **Not** equivalent to
18
+ * EAS attestation `uid` — local edit or missing post-publish UID backfill. Rows sync derived for
19
+ * ItemStorage properties (`derivedFromUid` set) count as published. **Not** equivalent to
19
20
  * draft vs onchain for the whole seed; use `getSeedPublishState` for that.
20
21
  */
21
22
  export declare function getPublishPendingDiff(arg: {
@@ -1 +1 @@
1
- {"version":3,"file":"getPublishPendingDiff.d.ts","sourceRoot":"","sources":["../../../../src/db/read/getPublishPendingDiff.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAA;AAKzC,MAAM,MAAM,0BAA0B,GAAG;IACvC,YAAY,EAAE,MAAM,CAAA;IACpB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,kFAAkF;IAClF,sBAAsB,EAAE,MAAM,GAAG,IAAI,CAAA;IACrC,iFAAiF;IACjF,OAAO,EAAE,OAAO,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,2BAA2B,GAAG;IACxC,qEAAqE;IACrE,iBAAiB,EAAE,0BAA0B,EAAE,CAAA;IAC/C,uBAAuB,EAAE,MAAM,GAAG,IAAI,CAAA;IACtC,sBAAsB,EAAE,MAAM,GAAG,IAAI,CAAA;CACtC,CAAA;AAeD;;;;GAIG;AACH,wBAAsB,qBAAqB,CACzC,GAAG,EAAE;IAAE,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,KAAK,CAAC,GAAG,CAAC,GAC3D,OAAO,CAAC,2BAA2B,CAAC,CAsEtC"}
1
+ {"version":3,"file":"getPublishPendingDiff.d.ts","sourceRoot":"","sources":["../../../../src/db/read/getPublishPendingDiff.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAA;AAKzC,MAAM,MAAM,0BAA0B,GAAG;IACvC,YAAY,EAAE,MAAM,CAAA;IACpB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,kFAAkF;IAClF,sBAAsB,EAAE,MAAM,GAAG,IAAI,CAAA;IACrC,iFAAiF;IACjF,OAAO,EAAE,OAAO,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,2BAA2B,GAAG;IACxC,qEAAqE;IACrE,iBAAiB,EAAE,0BAA0B,EAAE,CAAA;IAC/C,uBAAuB,EAAE,MAAM,GAAG,IAAI,CAAA;IACtC,sBAAsB,EAAE,MAAM,GAAG,IAAI,CAAA;CACtC,CAAA;AAeD;;;;;GAKG;AACH,wBAAsB,qBAAqB,CACzC,GAAG,EAAE;IAAE,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,KAAK,CAAC,GAAG,CAAC,GAC3D,OAAO,CAAC,2BAA2B,CAAC,CAqEtC"}
@@ -20,6 +20,11 @@ export type UploadProperty = {
20
20
  itemProperty: IItemProperty<any>;
21
21
  childProperties: IItemProperty<any>[];
22
22
  };
23
+ /** Same walk as getPublishUploads: the item and the draft items its publish carries along. */
23
24
  export declare function itemHasPublishUploadCandidates(item: IItem<any>, relatedItemProperty?: IItemProperty<any>): Promise<boolean>;
25
+ /**
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).
28
+ */
24
29
  export declare const getPublishUploads: (item: IItem<any>, uploads?: PublishUpload[], relatedItemProperty?: IItemProperty<any>, options?: GetPublishUploadsOptions) => Promise<PublishUpload[]>;
25
30
  //# 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;AAQ/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;AAyFD,wBAAsB,8BAA8B,CAClD,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,EAChB,mBAAmB,CAAC,EAAE,aAAa,CAAC,GAAG,CAAC,GACvC,OAAO,CAAC,OAAO,CAAC,CAsDlB;AAgID,eAAO,MAAM,iBAAiB,GAC5B,MAAM,KAAK,CAAC,GAAG,CAAC,EAChB,UAAS,aAAa,EAAO,EAC7B,sBAAsB,aAAa,CAAC,GAAG,CAAC,EACxC,UAAU,wBAAwB,6BAqEnC,CAAA"}
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 +1 @@
1
- {"version":3,"file":"getSchemaUidForModel.d.ts","sourceRoot":"","sources":["../../../../src/db/read/getSchemaUidForModel.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,uBAAuB,GAClC,WAAW,MAAM,KAChB,OAAO,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAgDnC,CAAA"}
1
+ {"version":3,"file":"getSchemaUidForModel.d.ts","sourceRoot":"","sources":["../../../../src/db/read/getSchemaUidForModel.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,uBAAuB,GAClC,WAAW,MAAM,KAChB,OAAO,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAmDnC,CAAA"}
@@ -1,6 +1,9 @@
1
1
  import type { IItem } from '../../interfaces';
2
2
  export type SeedPublishState = {
3
- /** `onchain` when any local row carries a valid EAS attestation UID for this seed. */
3
+ /**
4
+ * `onchain` when any local row carries a valid EAS attestation UID for this seed, revoked ones
5
+ * included (they stay on-chain). Check `revokedAt` to tell an unpublished seed apart.
6
+ */
4
7
  status: 'draft' | 'onchain';
5
8
  seedAttestationUid: string | null;
6
9
  versionAttestationUid: string | null;
@@ -8,10 +11,13 @@ export type SeedPublishState = {
8
11
  explorerUid: string | null;
9
12
  /** Best-effort max attestation time (ms) from seed, version, or metadata rows. */
10
13
  lastAttestedAtMs: number | null;
14
+ /** Unix seconds when the seed attestation was revoked (`item.unpublish()` or EAS sync), else null. */
15
+ revokedAt: number | null;
11
16
  };
12
17
  /**
13
18
  * Whether the seed has **any** on-chain anchor in local SQLite: valid EAS UID on the seed row,
14
- * on the newest **published** version row (`getLatestPublishedVersionRow`), or on **any** metadata row.
19
+ * on the newest **published** version row (`getLatestPublishedVersionRow`, which skips revoked
20
+ * versions), or on **any** metadata row.
15
21
  * Not the same as “no unpublished edits”; see `getPublishPendingDiff` for per-property head rows.
16
22
  */
17
23
  export declare function getSeedPublishState(arg: {
@@ -1 +1 @@
1
- {"version":3,"file":"getSeedPublishState.d.ts","sourceRoot":"","sources":["../../../../src/db/read/getSeedPublishState.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAA;AAIzC,MAAM,MAAM,gBAAgB,GAAG;IAC7B,sFAAsF;IACtF,MAAM,EAAE,OAAO,GAAG,SAAS,CAAA;IAC3B,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAA;IACjC,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAA;IACpC,yFAAyF;IACzF,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,kFAAkF;IAClF,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAA;CAChC,CAAA;AAuBD;;;;GAIG;AACH,wBAAsB,mBAAmB,CACvC,GAAG,EAAE;IAAE,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,KAAK,CAAC,GAAG,CAAC,GAC3D,OAAO,CAAC,gBAAgB,CAAC,CAkE3B"}
1
+ {"version":3,"file":"getSeedPublishState.d.ts","sourceRoot":"","sources":["../../../../src/db/read/getSeedPublishState.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAA;AAIzC,MAAM,MAAM,gBAAgB,GAAG;IAC7B;;;OAGG;IACH,MAAM,EAAE,OAAO,GAAG,SAAS,CAAA;IAC3B,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAA;IACjC,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAA;IACpC,yFAAyF;IACzF,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,kFAAkF;IAClF,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAA;IAC/B,sGAAsG;IACtG,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;CACzB,CAAA;AAuBD;;;;;GAKG;AACH,wBAAsB,mBAAmB,CACvC,GAAG,EAAE;IAAE,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,KAAK,CAAC,GAAG,CAAC,GAC3D,OAAO,CAAC,gBAAgB,CAAC,CAoE3B"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * True when the item's seed attestation was revoked (`seeds.revoked_at` set, by unpublish or EAS
3
+ * sync). Such a seed can't take new versions: publishing again creates a new seed attestation
4
+ * (see "Republishing" in docs/ATTESTATION_REVOCATION.md).
5
+ */
6
+ export declare const isSeedRevoked: (seedLocalId: string | undefined) => Promise<boolean>;
7
+ //# sourceMappingURL=isSeedRevoked.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isSeedRevoked.d.ts","sourceRoot":"","sources":["../../../../src/db/read/isSeedRevoked.ts"],"names":[],"mappings":"AAKA;;;;GAIG;AACH,eAAO,MAAM,aAAa,GAAU,aAAa,MAAM,GAAG,SAAS,KAAG,OAAO,CAAC,OAAO,CAUpF,CAAA"}
@@ -0,0 +1,57 @@
1
+ import type { IItem, IItemProperty } from '../../interfaces';
2
+ /**
3
+ * The draft items a publish of an item carries along, and how it walks to them.
4
+ *
5
+ * A publish attests the item and every draft item (no seed uid yet) reachable from it through
6
+ * relation and list-of-relation properties, each with its full property set. Already-published
7
+ * targets are referenced by their current uid and not walked into; revoked ones stop the publish
8
+ * (RelatedItemUnpublishedError). getPublishPayload, getPublishUploads, getPublishUploadData (publish
9
+ * package), summarizePublishWork and the Html-embedded image co-publish all walk this graph in the
10
+ * same order: depth first, properties in item order (relations, then lists), list members in order.
11
+ *
12
+ * Cycles: an item can only attest the uid of a seed published before it in the same publish, so a
13
+ * ref back to an item still being walked (an ancestor that gets a new seed in this publish) can't be
14
+ * attested. Such a property is deferred: left out of this publish (it keeps no uid, so the next
15
+ * publish of its item attests it, with the target's uid). For A ↔ B reached from A, A attests B's
16
+ * uid and B's relation to A is deferred.
17
+ */
18
+ /** Relation properties that point at model items (not Image/File/Html/Json storage seeds). */
19
+ export declare function draftWalkProperties(segmented: {
20
+ itemRelationProperties: IItemProperty<any>[];
21
+ itemImageProperties: IItemProperty<any>[];
22
+ itemListProperties: IItemProperty<any>[];
23
+ }): {
24
+ relationProperties: IItemProperty<any>[];
25
+ listProperties: IItemProperty<any>[];
26
+ };
27
+ /** Seed refs held by a relation property (one) or a list property (each member). */
28
+ export declare function propertySeedRefs(prop: IItemProperty<any>, isList: boolean): string[];
29
+ /** The item gets a new seed attestation in this publish: a draft, or a revoked seed published again. */
30
+ export declare function getsNewSeed(item: IItem<any>): Promise<boolean>;
31
+ /** Local seed id a ref points at (also for a republished seed's old uid), or undefined. */
32
+ export declare function resolveRefSeedLocalId(ref: string): Promise<string | undefined>;
33
+ export type PublishDraftGraphNode = {
34
+ item: IItem<any>;
35
+ /** The relation or list property the walk first reached the item through. */
36
+ via: IItemProperty<any>;
37
+ viaList: boolean;
38
+ };
39
+ export type PublishDraftGraph = {
40
+ /** Draft items reachable from the root (root excluded), in the order the walk finishes them. */
41
+ drafts: PublishDraftGraphNode[];
42
+ /** Properties pointing back at an item still being walked; left out of this publish. */
43
+ deferredProperties: Set<IItemProperty<any>>;
44
+ /** For each deferred property, the seeds (local ids) of its back references. */
45
+ backReferences: Map<IItemProperty<any>, Set<string>>;
46
+ };
47
+ export type GetPublishDraftGraphOptions = {
48
+ /** `new_version` / republish: properties that already have a uid are attested (and walked) again. */
49
+ forceFullSnapshot?: boolean;
50
+ /**
51
+ * Throw like getPublishUploads always did when a relation holds an invalid value or a local id
52
+ * with no local item. Otherwise such refs are skipped (getPublishPayload reports them).
53
+ */
54
+ strict?: boolean;
55
+ };
56
+ export declare function getPublishDraftGraph(root: IItem<any>, options?: GetPublishDraftGraphOptions): Promise<PublishDraftGraph>;
57
+ //# sourceMappingURL=publishDraftGraph.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"publishDraftGraph.d.ts","sourceRoot":"","sources":["../../../../src/db/read/publishDraftGraph.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAIxD;;;;;;;;;;;;;;;GAeG;AAEH,8FAA8F;AAC9F,wBAAgB,mBAAmB,CAAC,SAAS,EAAE;IAC7C,sBAAsB,EAAE,aAAa,CAAC,GAAG,CAAC,EAAE,CAAA;IAC5C,mBAAmB,EAAE,aAAa,CAAC,GAAG,CAAC,EAAE,CAAA;IACzC,kBAAkB,EAAE,aAAa,CAAC,GAAG,CAAC,EAAE,CAAA;CACzC,GAAG;IAAE,kBAAkB,EAAE,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC;IAAC,cAAc,EAAE,aAAa,CAAC,GAAG,CAAC,EAAE,CAAA;CAAE,CAMrF;AASD,oFAAoF;AACpF,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,OAAO,GAAG,MAAM,EAAE,CAsBpF;AAID,wGAAwG;AACxG,wBAAsB,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAEpE;AAED,2FAA2F;AAC3F,wBAAsB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAKpF;AAED,MAAM,MAAM,qBAAqB,GAAG;IAClC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAA;IAChB,6EAA6E;IAC7E,GAAG,EAAE,aAAa,CAAC,GAAG,CAAC,CAAA;IACvB,OAAO,EAAE,OAAO,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC9B,gGAAgG;IAChG,MAAM,EAAE,qBAAqB,EAAE,CAAA;IAC/B,wFAAwF;IACxF,kBAAkB,EAAE,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAA;IAC3C,gFAAgF;IAChF,cAAc,EAAE,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAA;CACrD,CAAA;AAED,MAAM,MAAM,2BAA2B,GAAG;IACxC,qGAAqG;IACrG,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB,CAAA;AAmBD,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,EAChB,OAAO,CAAC,EAAE,2BAA2B,GACpC,OAAO,CAAC,iBAAiB,CAAC,CAyE5B"}
@@ -0,0 +1,37 @@
1
+ import type { ValidationError } from '../../Schema/validation';
2
+ /** Validation error collected during publish payload building. */
3
+ export type PublishValidationError = Pick<ValidationError, 'field' | 'message'> & {
4
+ code?: string;
5
+ };
6
+ /** Error thrown when publish validation fails. Includes all validation errors for user to fix. */
7
+ export declare class PublishValidationFailedError extends Error {
8
+ readonly validationErrors: PublishValidationError[];
9
+ constructor(message: string, validationErrors: PublishValidationError[]);
10
+ }
11
+ /** Validation error code for a relation, list member or image/file ref to an unpublished seed. */
12
+ export declare const RELATED_ITEM_UNPUBLISHED_CODE = "related_item_unpublished";
13
+ /** A seed a publish would reference although its seed attestation was revoked (unpublished). */
14
+ export type UnpublishedRelatedItem = {
15
+ /** The referring property on the item being published (or on an item published with it). */
16
+ propertyName: string;
17
+ /** Model of the referenced item (e.g. `Author`, `Image`). */
18
+ modelName: string;
19
+ seedLocalId: string;
20
+ /** The revoked seed uid the reference would attest. */
21
+ seedUid: string;
22
+ };
23
+ export declare const describeUnpublishedRelatedItem: (r: UnpublishedRelatedItem) => string;
24
+ /**
25
+ * Thrown before anything is uploaded or attested when the item references items whose seed was
26
+ * unpublished: the parent would attest a revoked seed uid. Republish those items (which gives
27
+ * them a new seed uid) or remove the references, then publish again.
28
+ * See docs/ATTESTATION_REVOCATION.md ("Republishing").
29
+ *
30
+ * A PublishValidationFailedError, so validateItemForPublish and the publish package's checking
31
+ * step report it as validation errors (code `related_item_unpublished`, one per reference).
32
+ */
33
+ export declare class RelatedItemUnpublishedError extends PublishValidationFailedError {
34
+ readonly unpublishedRelatedItems: UnpublishedRelatedItem[];
35
+ constructor(unpublishedRelatedItems: UnpublishedRelatedItem[], otherValidationErrors?: PublishValidationError[]);
36
+ }
37
+ //# sourceMappingURL=publishErrors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"publishErrors.d.ts","sourceRoot":"","sources":["../../../../src/db/read/publishErrors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAE1D,kEAAkE;AAClE,MAAM,MAAM,sBAAsB,GAAG,IAAI,CAAC,eAAe,EAAE,OAAO,GAAG,SAAS,CAAC,GAAG;IAAE,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA;AAEnG,kGAAkG;AAClG,qBAAa,4BAA6B,SAAQ,KAAK;aAGnC,gBAAgB,EAAE,sBAAsB,EAAE;gBAD1D,OAAO,EAAE,MAAM,EACC,gBAAgB,EAAE,sBAAsB,EAAE;CAK7D;AAED,kGAAkG;AAClG,eAAO,MAAM,6BAA6B,6BAA6B,CAAA;AAEvE,gGAAgG;AAChG,MAAM,MAAM,sBAAsB,GAAG;IACnC,4FAA4F;IAC5F,YAAY,EAAE,MAAM,CAAA;IACpB,6DAA6D;IAC7D,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;IACnB,uDAAuD;IACvD,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,eAAO,MAAM,8BAA8B,GAAI,GAAG,sBAAsB,KAAG,MACC,CAAA;AAE5E;;;;;;;;GAQG;AACH,qBAAa,2BAA4B,SAAQ,4BAA4B;IAC3E,QAAQ,CAAC,uBAAuB,EAAE,sBAAsB,EAAE,CAAA;gBAGxD,uBAAuB,EAAE,sBAAsB,EAAE,EACjD,qBAAqB,GAAE,sBAAsB,EAAO;CAoBvD"}
@@ -0,0 +1,39 @@
1
+ /** Emitted when background work skips a seed whose model name exists in several schemas. */
2
+ export declare const MODEL_AMBIGUOUS_EVENT: "model:ambiguous";
3
+ export type ModelAmbiguousEventPayload = {
4
+ modelName: string;
5
+ schemaNames: string[];
6
+ seedLocalId?: string;
7
+ seedUid?: string;
8
+ /** What was being done when the seed was skipped (e.g. 'easSync.metadata'). */
9
+ context: string;
10
+ };
11
+ export type SyncedSeedInfo = {
12
+ seedUid?: string | null;
13
+ seedLocalId?: string | null;
14
+ /** seeds.type as synced from EAS (the EAS schema name, i.e. snake_case model name). */
15
+ modelType?: string | null;
16
+ /** EAS schema UID of the seed attestation. */
17
+ schemaUid?: string | null;
18
+ };
19
+ /**
20
+ * Seam for matching an EAS-synced seed to a local model (its schemaFileId).
21
+ *
22
+ * EAS identifies a seed's model only by name (`bytes32 <model_name>`), so when several local schemas
23
+ * define a model with that name the seed alone can't say which one it is. The plan is to match by
24
+ * the seed's properties and metadata (see docs/EAS_SYNCED_SEED_MODEL_RESOLUTION.md).
25
+ *
26
+ * TODO(eas-synced-seed-model-resolution): not implemented yet. Returns undefined, so callers fall
27
+ * back to the name, which throws AmbiguousModelError when the name is ambiguous.
28
+ */
29
+ export declare const resolveModelForSyncedSeed: (_seed: SyncedSeedInfo) => Promise<string | undefined>;
30
+ /**
31
+ * Run background work for one seed; if it hits an ambiguous model name, log, emit
32
+ * MODEL_AMBIGUOUS_EVENT and return undefined (skip) instead of failing the whole job. Loading the
33
+ * item directly still throws, so the problem surfaces where the app touches it.
34
+ */
35
+ export declare const skipSeedOnAmbiguousModel: <T>(seed: {
36
+ seedLocalId?: string | null;
37
+ seedUid?: string | null;
38
+ }, context: string, work: () => Promise<T>) => Promise<T | undefined>;
39
+ //# sourceMappingURL=resolveModelForSyncedSeed.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolveModelForSyncedSeed.d.ts","sourceRoot":"","sources":["../../../../src/db/read/resolveModelForSyncedSeed.ts"],"names":[],"mappings":"AAMA,4FAA4F;AAC5F,eAAO,MAAM,qBAAqB,EAAG,iBAA0B,CAAA;AAE/D,MAAM,MAAM,0BAA0B,GAAG;IACvC,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,EAAE,CAAA;IACrB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,+EAA+E;IAC/E,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,uFAAuF;IACvF,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACzB,8CAA8C;IAC9C,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAC1B,CAAA;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,yBAAyB,GAAU,OAAO,cAAc,KAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAEjG,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,GAAU,CAAC,EAC9C,MAAM;IAAE,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,EAC9D,SAAS,MAAM,EACf,MAAM,MAAM,OAAO,CAAC,CAAC,CAAC,KACrB,OAAO,CAAC,CAAC,GAAG,SAAS,CAgBvB,CAAA"}
@@ -0,0 +1,69 @@
1
+ import { BaseDb } from '../Db/BaseDb';
2
+ /**
3
+ * What is known about which model an item, property or lookup belongs to. Model names are only
4
+ * unique within a schema, so a bare name is ambiguous once two schemas define the same model.
5
+ */
6
+ export type ModelScope = {
7
+ /** The model's schemaFileId (= Model.id, seeds.model_file_id). Most specific. */
8
+ modelFileId?: string | null;
9
+ /** The models row id (e.g. properties.model_id). */
10
+ modelId?: number | null;
11
+ schemaName?: string | null;
12
+ schemaId?: number | null;
13
+ };
14
+ export type ResolvedModelRecord = {
15
+ id: number;
16
+ name: string;
17
+ schemaFileId: string | null;
18
+ };
19
+ type Db = ReturnType<typeof BaseDb.getAppDb>;
20
+ /**
21
+ * Resolve a models row from a model name plus whatever scope is known, most specific first:
22
+ * modelFileId, modelId, then schemaId/schemaName + name, then the name alone. The name alone is
23
+ * only accepted when it is unambiguous; otherwise this throws AmbiguousModelError.
24
+ */
25
+ export declare const resolveModelRecord: (modelName: string | undefined | null, scope?: ModelScope, db?: Db | undefined) => Promise<ResolvedModelRecord | undefined>;
26
+ /**
27
+ * resolveModelRecord for a model name **or** an EAS model type (snake_case model name, what sync
28
+ * stores in seeds.type): "New model" resolves from `new_model`. Scope and ambiguity behave as in
29
+ * resolveModelRecord: modelFileId/modelId first, then the schema, then the name(s) alone, which throws
30
+ * AmbiguousModelError when models in several schemas match.
31
+ */
32
+ export declare const resolveModelRecordByNameOrType: (nameOrType: string | undefined | null, scope?: ModelScope, db?: Db | undefined) => Promise<ResolvedModelRecord | undefined>;
33
+ /**
34
+ * Work out which model (schemaFileId) an item belongs to from whatever is at hand: an explicit
35
+ * modelFileId, the seed's model_file_id, or a metadata row's property_id → properties.model_id.
36
+ */
37
+ export declare const resolveItemModelFileId: (hints: {
38
+ modelFileId?: string | null;
39
+ seedLocalId?: string | null;
40
+ seedUid?: string | null;
41
+ propertyId?: number | null;
42
+ }, db?: Db | undefined) => Promise<string | undefined>;
43
+ type ItemScopeContext = {
44
+ modelFileId?: string;
45
+ schemaName?: string;
46
+ seedLocalId?: string;
47
+ seedUid?: string;
48
+ propertyId?: number;
49
+ };
50
+ /** ModelScope for an Item (or ItemProperty) instance: its recorded modelFileId (context or seed row) and schemaName. */
51
+ export declare const getItemModelScope: (item: {
52
+ seedLocalId?: string;
53
+ seedUid?: string;
54
+ getService?: () => {
55
+ getSnapshot: () => {
56
+ context?: ItemScopeContext;
57
+ };
58
+ };
59
+ }) => Promise<{
60
+ modelFileId?: string;
61
+ schemaName?: string;
62
+ }>;
63
+ /**
64
+ * Resolve a ref (e.g. a Relation's target model) by name from the schema(s) its owning model belongs
65
+ * to, so "Tag" means the owner schema's Tag rather than any Tag. Falls back to resolveModelRecord.
66
+ */
67
+ export declare const resolveRefModelRecord: (refModelName: string | undefined | null, owner: ModelScope, db?: Db | undefined) => Promise<ResolvedModelRecord | undefined>;
68
+ export {};
69
+ //# sourceMappingURL=resolveModelRecord.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolveModelRecord.d.ts","sourceRoot":"","sources":["../../../../src/db/read/resolveModelRecord.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AASvC;;;GAGG;AACH,MAAM,MAAM,UAAU,GAAG;IACvB,iFAAiF;IACjF,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,oDAAoD;IACpD,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACzB,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG;IAChC,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;CAC5B,CAAA;AAGD,KAAK,EAAE,GAAG,UAAU,CAAC,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAA;AAQ5C;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,GAC7B,WAAW,MAAM,GAAG,SAAS,GAAG,IAAI,EACpC,QAAO,UAAe,EACtB,KAAI,EAAE,GAAG,SAA6B,KACrC,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAoCzC,CAAA;AA8CD;;;;;GAKG;AACH,eAAO,MAAM,8BAA8B,GACzC,YAAY,MAAM,GAAG,SAAS,GAAG,IAAI,EACrC,QAAO,UAAe,EACtB,KAAI,EAAE,GAAG,SAA6B,KACrC,OAAO,CAAC,mBAAmB,GAAG,SAAS,CA4BzC,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,sBAAsB,GACjC,OAAO;IACL,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAC3B,EACD,KAAI,EAAE,GAAG,SAA6B,KACrC,OAAO,CAAC,MAAM,GAAG,SAAS,CAqB5B,CAAA;AAED,KAAK,gBAAgB,GAAG;IACtB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB,CAAA;AAED,wHAAwH;AACxH,eAAO,MAAM,iBAAiB,GAAU,MAAM;IAC5C,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,UAAU,CAAC,EAAE,MAAM;QAAE,WAAW,EAAE,MAAM;YAAE,OAAO,CAAC,EAAE,gBAAgB,CAAA;SAAE,CAAA;KAAE,CAAA;CACzE,KAAG,OAAO,CAAC;IAAE,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,CAcxD,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,qBAAqB,GAChC,cAAc,MAAM,GAAG,SAAS,GAAG,IAAI,EACvC,OAAO,UAAU,EACjB,KAAI,EAAE,GAAG,SAA6B,KACrC,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAyBzC,CAAA"}
@@ -0,0 +1,34 @@
1
+ import type { IItem } from '../../interfaces';
2
+ export type RelatedSeedRow = {
3
+ seedLocalId: string;
4
+ /** The seed's current uid (null while it was never published). */
5
+ seedUid: string | null;
6
+ revokedAt: number | null;
7
+ type: string | null;
8
+ };
9
+ /**
10
+ * The local seed row a relation/list/image ref points at, by local id or uid. A uid that is no
11
+ * seed's current uid can be the old uid of a seed that was unpublished and published again (a new
12
+ * seed attestation, same local seed): its old version rows still record it, so it resolves to that
13
+ * seed. Null when nothing local matches (e.g. a published uid with no local copy).
14
+ */
15
+ export declare const findRelatedSeedRow: ({ seedLocalId, seedUid, }: {
16
+ seedLocalId?: string;
17
+ seedUid?: string;
18
+ }) => Promise<RelatedSeedRow | null>;
19
+ /** The seed is attested and its attestation is live. */
20
+ export declare const isLivePublishedSeed: (row: RelatedSeedRow | null) => row is RelatedSeedRow & {
21
+ seedUid: string;
22
+ };
23
+ /** The seed was attested and that attestation was revoked (unpublished). */
24
+ export declare const isUnpublishedSeed: (row: RelatedSeedRow | null) => row is RelatedSeedRow & {
25
+ seedUid: string;
26
+ };
27
+ /** Model a relation/list/image property points at, from its definition. */
28
+ export declare function relatedModelNameFromDef(propertyDef: unknown): string | undefined;
29
+ /**
30
+ * Name of the item's Html property whose value is the Html seed `htmlSeedLocalId`: the property
31
+ * that refers to the images embedded in that Html (htmlEmbeddedImageCoPublish rows).
32
+ */
33
+ export declare function htmlPropertyNameForHtmlSeed(item: IItem<any>, htmlSeedLocalId: string): string;
34
+ //# sourceMappingURL=resolveRelatedSeedRef.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolveRelatedSeedRef.d.ts","sourceRoot":"","sources":["../../../../src/db/read/resolveRelatedSeedRef.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAA;AAEzC,MAAM,MAAM,cAAc,GAAG;IAC3B,WAAW,EAAE,MAAM,CAAA;IACnB,kEAAkE;IAClE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;IACtB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;CACpB,CAAA;AASD;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,GAAU,2BAGtC;IACD,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB,KAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAsBhC,CAAA;AAED,wDAAwD;AACxD,eAAO,MAAM,mBAAmB,GAAI,KAAK,cAAc,GAAG,IAAI,KAAG,GAAG,IAAI,cAAc,GAAG;IAAE,OAAO,EAAE,MAAM,CAAA;CACtB,CAAA;AAEpF,4EAA4E;AAC5E,eAAO,MAAM,iBAAiB,GAAI,KAAK,cAAc,GAAG,IAAI,KAAG,GAAG,IAAI,cAAc,GAAG;IAAE,OAAO,EAAE,MAAM,CAAA;CACrB,CAAA;AAEnF,2EAA2E;AAC3E,wBAAgB,uBAAuB,CAAC,WAAW,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAQhF;AAED;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,eAAe,EAAE,MAAM,GAAG,MAAM,CAS7F"}
@@ -0,0 +1,12 @@
1
+ import { type SQL } from 'drizzle-orm';
2
+ /**
3
+ * True when a version row's attestation was revoked (`versions.revoked_at` set). 0 counts as
4
+ * "not revoked", like `seeds.revoked_at`.
5
+ */
6
+ export declare const isVersionRevoked: (revokedAt: number | null | undefined) => boolean;
7
+ /**
8
+ * SQL filter for version rows that are not revoked. "Latest version" and "latest published
9
+ * version" reads only consider these rows (see docs/ATTESTATION_REVOCATION.md).
10
+ */
11
+ export declare const versionNotRevoked: () => SQL;
12
+ //# sourceMappingURL=liveVersion.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"liveVersion.d.ts","sourceRoot":"","sources":["../../../../../src/db/read/subqueries/liveVersion.ts"],"names":[],"mappings":"AACA,OAAO,EAAkB,KAAK,GAAG,EAAE,MAAM,aAAa,CAAA;AAEtD;;;GAGG;AACH,eAAO,MAAM,gBAAgB,GAAI,WAAW,MAAM,GAAG,IAAI,GAAG,SAAS,KAAG,OAClC,CAAA;AAEtC;;;GAGG;AACH,eAAO,MAAM,iBAAiB,QAAO,GAC6B,CAAA"}
@@ -1,3 +1,7 @@
1
+ /**
2
+ * Metadata rows of a seed numbered per property_name in reader order (`rowNum = 1` is the value to
3
+ * show): live rows before revoked ones, then newest first. See `compareMetadataRowsLatestFirst`.
4
+ */
1
5
  export declare const getMetadataLatest: ({ seedLocalId, seedUid }: {
2
6
  seedLocalId?: string;
3
7
  seedUid?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"metadataLatest.d.ts","sourceRoot":"","sources":["../../../../../src/db/read/subqueries/metadataLatest.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,iBAAiB,GAAI,0BAAwB;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAC,QAiCjG,CAAA"}
1
+ {"version":3,"file":"metadataLatest.d.ts","sourceRoot":"","sources":["../../../../../src/db/read/subqueries/metadataLatest.ts"],"names":[],"mappings":"AAKA;;;GAGG;AACH,eAAO,MAAM,iBAAiB,GAAI,0BAAwB;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAC,QAiCjG,CAAA"}
@@ -1,6 +1,11 @@
1
1
  /**
2
- * Per-seed aggregates (all versions) plus the latest version row by
3
- * (created_at DESC, local_id DESC) via max(created_at) then max(local_id) tie-break.
2
+ * Per-seed version aggregates plus the latest version row by (created_at DESC, local_id DESC) via
3
+ * max(created_at) then max(local_id) tie-break.
4
+ *
5
+ * Revoked versions (`revoked_at` set) are never the latest version and don't count toward
6
+ * `lastVersionPublishedAt`. `versionsCount` and `lastLocalUpdateAt` still cover every version row,
7
+ * so a fully unpublished seed (every version revoked) keeps its row here, with null
8
+ * `latestVersionUid` / `latestVersionLocalId` / `lastVersionPublishedAt`.
4
9
  *
5
10
  * For `publishedVersionUid` / `publishedVersionLocalId` on list rows, see `getItemsData`
6
11
  * (batched resolution aligned with `getLatestPublishedVersionRow`).
@@ -1 +1 @@
1
- {"version":3,"file":"versionData.d.ts","sourceRoot":"","sources":["../../../../../src/db/read/subqueries/versionData.ts"],"names":[],"mappings":"AAIA;;;;;;GAMG;AACH,eAAO,MAAM,cAAc,WA6D1B,CAAA"}
1
+ {"version":3,"file":"versionData.d.ts","sourceRoot":"","sources":["../../../../../src/db/read/subqueries/versionData.ts"],"names":[],"mappings":"AAKA;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,cAAc,WAsE1B,CAAA"}
@@ -1,5 +1,6 @@
1
1
  import { IItem, IItemProperty } from '../../interfaces';
2
2
  import type { PublishMode } from './getPublishPayload';
3
+ import type { UnpublishedRelatedItem } from './publishErrors';
3
4
  export type { PublishMode };
4
5
  export type SummarizePublishWorkOptions = {
5
6
  publishMode?: PublishMode;
@@ -12,13 +13,20 @@ export type PublishWorkSummary = {
12
13
  attestationCount: number;
13
14
  uploadCount: number;
14
15
  uploadBytes: number;
16
+ /**
17
+ * References the publish would attest to items whose seed was unpublished. When non-empty,
18
+ * publishing fails with RelatedItemUnpublishedError before anything is sent.
19
+ */
20
+ unpublishedRelatedItems: UnpublishedRelatedItem[];
15
21
  };
16
22
  /** Decoded byte length of a data-URI, or null if the string is not a base64 data URI. */
17
23
  export declare function estimateDataUriByteLength(dataUri: string): number | null;
18
24
  export declare function shouldAttestProperty(prop: IItemProperty<any>, forceFullSnapshot: boolean): boolean;
19
25
  /**
20
- * Local measurement of what a publish would do: seed/version/attestation counts
21
- * and Arweave upload byte totals. Does not hit the network or create transactions.
26
+ * References a publish of `item` would attest to items whose seed was unpublished (revoked), the
27
+ * same ones getPublishPayload rejects with RelatedItemUnpublishedError. Local reads only: the
28
+ * publish package checks this before registering schemas or uploading anything.
22
29
  */
30
+ export declare const getUnpublishedRelatedItems: (item: IItem<any>, options?: SummarizePublishWorkOptions) => Promise<UnpublishedRelatedItem[]>;
23
31
  export declare const summarizePublishWork: (item: IItem<any>, options?: SummarizePublishWorkOptions) => Promise<PublishWorkSummary>;
24
32
  //# sourceMappingURL=summarizePublishWork.d.ts.map