@seedprotocol/sdk 0.7.7 → 0.7.8-next.1066.gac32194

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 (302) hide show
  1. package/dist/{ClientManager-2GtDWHq6.js → ClientManager-Dcju5x4k.js} +835 -80
  2. package/dist/ClientManager-Dcju5x4k.js.map +1 -0
  3. package/dist/{Item-D6j0IvBP.js → Item-DZfNz7xl.js} +2145 -1354
  4. package/dist/Item-DZfNz7xl.js.map +1 -0
  5. package/dist/{ModelProperty-B52C3CQ2.js → ModelProperty-sMGL-_LK.js} +51 -52
  6. package/dist/ModelProperty-sMGL-_LK.js.map +1 -0
  7. package/dist/{Schema-O1QLoXv6.js → Schema-D-TczaIj.js} +106 -91
  8. package/dist/Schema-D-TczaIj.js.map +1 -0
  9. package/dist/{SchemaValidationService-BxCbfDaI.js → SchemaValidationService-NYTtSCxd.js} +6 -6
  10. package/dist/{SchemaValidationService-BxCbfDaI.js.map → SchemaValidationService-NYTtSCxd.js.map} +1 -1
  11. package/dist/{backfillMetadataPropertyIds-CzSbuucw.js → backfillMetadataPropertyIds-DEvD0OAT.js} +3 -3
  12. package/dist/{backfillMetadataPropertyIds-CzSbuucw.js.map → backfillMetadataPropertyIds-DEvD0OAT.js.map} +1 -1
  13. package/dist/{configurePlatform-Bbpw_R4y.js → configurePlatform-CtA7fydC.js} +2 -2
  14. package/dist/{configurePlatform-Bbpw_R4y.js.map → configurePlatform-CtA7fydC.js.map} +1 -1
  15. package/dist/db/drizzle/0020_add_pending_writes.sql +24 -0
  16. package/dist/db/drizzle/0021_add_pending_write_error_name.sql +1 -0
  17. package/dist/db/drizzle/meta/0020_snapshot.json +1542 -0
  18. package/dist/db/drizzle/meta/0021_snapshot.json +1549 -0
  19. package/dist/db/drizzle/meta/_journal.json +14 -0
  20. package/dist/{detachRowsBeforeDelete-D1TyEMco.js → detachRowsBeforeDelete-CLbBbpX4.js} +2 -2
  21. package/dist/{detachRowsBeforeDelete-D1TyEMco.js.map → detachRowsBeforeDelete-CLbBbpX4.js.map} +1 -1
  22. package/dist/dist/{ClientManager-2GtDWHq6.d.ts → ClientManager-Dcju5x4k.d.ts} +393 -292
  23. package/dist/dist/ClientManager-Dcju5x4k.d.ts.map +1 -0
  24. package/dist/dist/{Item-D6j0IvBP.d.ts → Item-DZfNz7xl.d.ts} +456 -266
  25. package/dist/dist/Item-DZfNz7xl.d.ts.map +1 -0
  26. package/dist/dist/{ModelProperty-B52C3CQ2.d.ts → ModelProperty-sMGL-_LK.d.ts} +1 -1
  27. package/dist/dist/{ModelProperty-B52C3CQ2.d.ts.map → ModelProperty-sMGL-_LK.d.ts.map} +1 -1
  28. package/dist/dist/{Schema-O1QLoXv6.d.ts → Schema-D-TczaIj.d.ts} +11 -4
  29. package/dist/dist/Schema-D-TczaIj.d.ts.map +1 -0
  30. package/dist/dist/{SchemaValidationService-BxCbfDaI.d.ts → SchemaValidationService-NYTtSCxd.d.ts} +1 -1
  31. package/dist/dist/{SchemaValidationService-BxCbfDaI.d.ts.map → SchemaValidationService-NYTtSCxd.d.ts.map} +1 -1
  32. package/dist/dist/{backfillMetadataPropertyIds-CzSbuucw.d.ts → backfillMetadataPropertyIds-DEvD0OAT.d.ts} +1 -1
  33. package/dist/dist/backfillMetadataPropertyIds-DEvD0OAT.d.ts.map +1 -0
  34. package/dist/dist/{configurePlatform-Bbpw_R4y.d.ts → configurePlatform-CtA7fydC.d.ts} +1 -1
  35. package/dist/dist/configurePlatform-CtA7fydC.d.ts.map +1 -0
  36. package/dist/dist/{detachRowsBeforeDelete-D1TyEMco.d.ts → detachRowsBeforeDelete-CLbBbpX4.d.ts} +1 -1
  37. package/dist/dist/detachRowsBeforeDelete-CLbBbpX4.d.ts.map +1 -0
  38. package/dist/dist/{eas-DOdj-EMK.d.ts → eas-CcpQiXum.d.ts} +1 -1
  39. package/dist/dist/eas-CcpQiXum.d.ts.map +1 -0
  40. package/dist/dist/{errors-KM-yq2MD.d.ts → errors-BGk_IJO5.d.ts} +39 -24
  41. package/dist/dist/errors-BGk_IJO5.d.ts.map +1 -0
  42. package/dist/dist/{getItem-Bh0zv-o1.d.ts → getItem-CHSX3aMm.d.ts} +1 -1
  43. package/dist/dist/getItem-CHSX3aMm.d.ts.map +1 -0
  44. package/dist/dist/{getPublishPayload-oH8wJhnH.d.ts → getPublishPayload-DMd4oLir.d.ts} +1 -1
  45. package/dist/dist/getPublishPayload-DMd4oLir.d.ts.map +1 -0
  46. package/dist/dist/{getPublishUploads-Cex-NBe6.d.ts → getPublishUploads-C9FnRG9c.d.ts} +1 -1
  47. package/dist/dist/{getPublishUploads-Cex-NBe6.d.ts.map → getPublishUploads-C9FnRG9c.d.ts.map} +1 -1
  48. package/dist/dist/{index-BbFwftAv.d.ts → index-C--KAWoe.d.ts} +378 -1
  49. package/dist/dist/{index-BbFwftAv.d.ts.map → index-C--KAWoe.d.ts.map} +1 -1
  50. package/dist/dist/{index-DpgQMIRq.d.ts → index-CI0NFf4B.d.ts} +836 -426
  51. package/dist/dist/index-CI0NFf4B.d.ts.map +1 -0
  52. package/dist/dist/{index-BAao3_Po.d.ts → index-Ccmd9_KY.d.ts} +5 -5
  53. package/dist/dist/index-Ccmd9_KY.d.ts.map +1 -0
  54. package/dist/dist/index-l3b6p1Ih.d.ts +14 -0
  55. package/dist/dist/index-l3b6p1Ih.d.ts.map +1 -0
  56. package/dist/dist/{index.browser-nndbVM7z.d.ts → index.browser-kY8M-xUA.d.ts} +2892 -1754
  57. package/dist/dist/{index.browser-nndbVM7z.d.ts.map → index.browser-kY8M-xUA.d.ts.map} +1 -1
  58. package/dist/dist/{index.node-BUfx-JaP.d.ts → index.node-Ba2KbmOq.d.ts} +4125 -2613
  59. package/dist/dist/{index.node-BUfx-JaP.d.ts.map → index.node-Ba2KbmOq.d.ts.map} +1 -1
  60. package/dist/dist/platform.browser.d.ts +2 -2
  61. package/dist/dist/platform.node.d.ts +2 -2
  62. package/dist/dist/{property-BDBvImLs.d.ts → property-CO7pKTWK.d.ts} +3 -3
  63. package/dist/dist/property-CO7pKTWK.d.ts.map +1 -0
  64. package/dist/dist/{propertyValidationRules-BlfLn4rP.d.ts → propertyValidationRules-D5HZy0Bq.d.ts} +1 -1
  65. package/dist/dist/propertyValidationRules-D5HZy0Bq.d.ts.map +1 -0
  66. package/dist/dist/{publishDraftGraph-CLO85LLz.d.ts → publishDraftGraph-B5KPqtbg.d.ts} +1 -1
  67. package/dist/dist/{publishDraftGraph-CLO85LLz.d.ts.map → publishDraftGraph-B5KPqtbg.d.ts.map} +1 -1
  68. package/dist/dist/{resetAmbiguousLegacyItemData-Cy8ik7xk.d.ts → resetAmbiguousLegacyItemData-77CZ8HT7.d.ts} +1 -1
  69. package/dist/dist/resetAmbiguousLegacyItemData-77CZ8HT7.d.ts.map +1 -0
  70. package/dist/dist/{resolveModelForSyncedSeed-DFr4COc4.d.ts → resolveModelForSyncedSeed-DHOq_FGs.d.ts} +1 -1
  71. package/dist/dist/resolveModelForSyncedSeed-DHOq_FGs.d.ts.map +1 -0
  72. package/dist/dist/{syncDbWithEas-CAOlw3i-.d.ts → syncDbWithEas-BZ6AI-IC.d.ts} +1 -1
  73. package/dist/dist/syncDbWithEas-BZ6AI-IC.d.ts.map +1 -0
  74. package/dist/dist/{tabEvents-DksXwk3X.d.ts → tabEvents-CIlzHSKZ.d.ts} +35 -18
  75. package/dist/dist/tabEvents-CIlzHSKZ.d.ts.map +1 -0
  76. package/dist/dist/{tolerantWebAccess-CEIjFGf0.d.ts → tolerantWebAccess-BwJ8bElF.d.ts} +1 -1
  77. package/dist/dist/{tolerantWebAccess-CEIjFGf0.d.ts.map → tolerantWebAccess-BwJ8bElF.d.ts.map} +1 -1
  78. package/dist/dist/{updateSeedRevokedAt-Cjr35YjE.d.ts → updateSeedRevokedAt-ClxMSXcB.d.ts} +1 -1
  79. package/dist/dist/updateSeedRevokedAt-ClxMSXcB.d.ts.map +1 -0
  80. package/dist/{eas-DOdj-EMK.js → eas-CcpQiXum.js} +4 -4
  81. package/dist/{eas-DOdj-EMK.js.map → eas-CcpQiXum.js.map} +1 -1
  82. package/dist/{errors-KM-yq2MD.js → errors-BGk_IJO5.js} +222 -275
  83. package/dist/errors-BGk_IJO5.js.map +1 -0
  84. package/dist/{getItem-Bh0zv-o1.js → getItem-CHSX3aMm.js} +5 -5
  85. package/dist/{getItem-Bh0zv-o1.js.map → getItem-CHSX3aMm.js.map} +1 -1
  86. package/dist/{getPublishPayload-oH8wJhnH.js → getPublishPayload-DMd4oLir.js} +18 -15
  87. package/dist/getPublishPayload-DMd4oLir.js.map +1 -0
  88. package/dist/{getPublishUploads-Cex-NBe6.js → getPublishUploads-C9FnRG9c.js} +9 -6
  89. package/dist/getPublishUploads-C9FnRG9c.js.map +1 -0
  90. package/dist/{index-BbFwftAv.js → index-C--KAWoe.js} +3 -2
  91. package/dist/index-C--KAWoe.js.map +1 -0
  92. package/dist/{index-DpgQMIRq.js → index-CI0NFf4B.js} +132 -9
  93. package/dist/index-CI0NFf4B.js.map +1 -0
  94. package/dist/{index-BAao3_Po.js → index-Ccmd9_KY.js} +8 -8
  95. package/dist/index-Ccmd9_KY.js.map +1 -0
  96. package/dist/index-l3b6p1Ih.js +28 -0
  97. package/dist/index-l3b6p1Ih.js.map +1 -0
  98. package/dist/{index.browser-nndbVM7z.js → index.browser-kY8M-xUA.js} +284 -73
  99. package/dist/index.browser-kY8M-xUA.js.map +1 -0
  100. package/dist/{index.node-BUfx-JaP.js → index.node-Ba2KbmOq.js} +93 -6
  101. package/dist/index.node-Ba2KbmOq.js.map +1 -0
  102. package/dist/main.js +84 -26
  103. package/dist/main.js.map +1 -1
  104. package/dist/node.js +11 -11
  105. package/dist/platform.browser.js +5 -5
  106. package/dist/platform.node.js +4 -4
  107. package/dist/{property-BDBvImLs.js → property-CO7pKTWK.js} +9 -11
  108. package/dist/property-CO7pKTWK.js.map +1 -0
  109. package/dist/{propertyValidationRules-BlfLn4rP.js → propertyValidationRules-D5HZy0Bq.js} +10 -10
  110. package/dist/{propertyValidationRules-BlfLn4rP.js.map → propertyValidationRules-D5HZy0Bq.js.map} +1 -1
  111. package/dist/{publishDraftGraph-CLO85LLz.js → publishDraftGraph-B5KPqtbg.js} +6 -6
  112. package/dist/{publishDraftGraph-CLO85LLz.js.map → publishDraftGraph-B5KPqtbg.js.map} +1 -1
  113. package/dist/{resetAmbiguousLegacyItemData-Cy8ik7xk.js → resetAmbiguousLegacyItemData-77CZ8HT7.js} +2 -2
  114. package/dist/{resetAmbiguousLegacyItemData-Cy8ik7xk.js.map → resetAmbiguousLegacyItemData-77CZ8HT7.js.map} +1 -1
  115. package/dist/{resolveModelForSyncedSeed-DFr4COc4.js → resolveModelForSyncedSeed-DHOq_FGs.js} +2 -2
  116. package/dist/{resolveModelForSyncedSeed-DFr4COc4.js.map → resolveModelForSyncedSeed-DHOq_FGs.js.map} +1 -1
  117. package/dist/seedSchema/PendingWriteSchema.ts +57 -0
  118. package/dist/seedSchema/index.ts +1 -0
  119. package/dist/src/Item/Item.d.ts +38 -7
  120. package/dist/src/Item/Item.d.ts.map +1 -1
  121. package/dist/src/Item/service/itemMachineSingle.d.ts.map +1 -1
  122. package/dist/src/ItemProperty/ItemProperty.d.ts +66 -9
  123. package/dist/src/ItemProperty/ItemProperty.d.ts.map +1 -1
  124. package/dist/src/ItemProperty/service/actors/hydrateFromDb.d.ts.map +1 -1
  125. package/dist/src/ItemProperty/service/actors/loadOrCreateProperty.d.ts.map +1 -1
  126. package/dist/src/ItemProperty/service/actors/saveValueToDb/analyzeInput.d.ts.map +1 -1
  127. package/dist/src/ItemProperty/service/actors/saveValueToDb/saveFile.d.ts.map +1 -1
  128. package/dist/src/ItemProperty/service/actors/saveValueToDb/saveHtml.d.ts.map +1 -1
  129. package/dist/src/ItemProperty/service/actors/saveValueToDb/saveImage.d.ts.map +1 -1
  130. package/dist/src/ItemProperty/service/actors/saveValueToDb/saveItemStorage.d.ts +5 -0
  131. package/dist/src/ItemProperty/service/actors/saveValueToDb/saveItemStorage.d.ts.map +1 -1
  132. package/dist/src/ItemProperty/service/actors/saveValueToDb/storageValue.d.ts +22 -0
  133. package/dist/src/ItemProperty/service/actors/saveValueToDb/storageValue.d.ts.map +1 -0
  134. package/dist/src/ItemProperty/service/propertyMachine.d.ts.map +1 -1
  135. package/dist/src/Model/Model.d.ts +50 -9
  136. package/dist/src/Model/Model.d.ts.map +1 -1
  137. package/dist/src/Model/service/actors/validateModel.d.ts.map +1 -1
  138. package/dist/src/ModelProperty/ModelProperty.d.ts.map +1 -1
  139. package/dist/src/ModelProperty/service/actors/compareAndMarkDraft.d.ts.map +1 -1
  140. package/dist/src/ModelProperty/service/actors/validateProperty.d.ts.map +1 -1
  141. package/dist/src/Schema/Schema.d.ts +22 -3
  142. package/dist/src/Schema/Schema.d.ts.map +1 -1
  143. package/dist/src/Schema/service/actors/checkExistingSchema.d.ts.map +1 -1
  144. package/dist/src/Schema/service/actors/createModelInstances.d.ts.map +1 -1
  145. package/dist/src/Schema/service/actors/loadOrCreateSchema.d.ts.map +1 -1
  146. package/dist/src/browser/db/Db.d.ts +7 -0
  147. package/dist/src/browser/db/Db.d.ts.map +1 -1
  148. package/dist/src/browser/db/drizzleFiles.d.ts +4 -2
  149. package/dist/src/browser/db/drizzleFiles.d.ts.map +1 -1
  150. package/dist/src/browser/db/sqliteBusyRetry.d.ts.map +1 -1
  151. package/dist/src/browser/helpers/EasClient.d.ts +1 -1
  152. package/dist/src/browser/helpers/EasClient.d.ts.map +1 -1
  153. package/dist/src/browser/helpers/FileManager.d.ts.map +1 -1
  154. package/dist/src/client/ClientManager.d.ts +13 -0
  155. package/dist/src/client/ClientManager.d.ts.map +1 -1
  156. package/dist/src/client/actors/saveConfig.d.ts.map +1 -1
  157. package/dist/src/client/addressesPersisted.d.ts +10 -0
  158. package/dist/src/client/addressesPersisted.d.ts.map +1 -0
  159. package/dist/src/client/clientManagerMachine.d.ts.map +1 -1
  160. package/dist/src/db/Db/BaseDb.d.ts +10 -0
  161. package/dist/src/db/Db/BaseDb.d.ts.map +1 -1
  162. package/dist/src/db/read/getItemProperties.d.ts.map +1 -1
  163. package/dist/src/db/read/getPublishPayload.d.ts.map +1 -1
  164. package/dist/src/db/read/getPublishUploads.d.ts.map +1 -1
  165. package/dist/src/db/read/getSeedData.d.ts +4 -1
  166. package/dist/src/db/read/getSeedData.d.ts.map +1 -1
  167. package/dist/src/db/read/getSeedPublisher.d.ts +4 -1
  168. package/dist/src/db/read/getSeedPublisher.d.ts.map +1 -1
  169. package/dist/src/db/read/getVersionData.d.ts +4 -1
  170. package/dist/src/db/read/getVersionData.d.ts.map +1 -1
  171. package/dist/src/db/write/claimUnpublishedDrafts.d.ts +6 -0
  172. package/dist/src/db/write/claimUnpublishedDrafts.d.ts.map +1 -1
  173. package/dist/src/db/write/createMetadata.d.ts +13 -0
  174. package/dist/src/db/write/createMetadata.d.ts.map +1 -1
  175. package/dist/src/db/write/createNewItem.d.ts +5 -0
  176. package/dist/src/db/write/createNewItem.d.ts.map +1 -1
  177. package/dist/src/db/write/createSeed.d.ts +20 -1
  178. package/dist/src/db/write/createSeed.d.ts.map +1 -1
  179. package/dist/src/db/write/createVersion.d.ts +5 -1
  180. package/dist/src/db/write/createVersion.d.ts.map +1 -1
  181. package/dist/src/db/write/removeLocalCopiesForAddresses.d.ts +9 -2
  182. package/dist/src/db/write/removeLocalCopiesForAddresses.d.ts.map +1 -1
  183. package/dist/src/db/write/updateItemPropertyValue.d.ts +9 -1
  184. package/dist/src/db/write/updateItemPropertyValue.d.ts.map +1 -1
  185. package/dist/src/db/write/updateMetadata.d.ts +8 -1
  186. package/dist/src/db/write/updateMetadata.d.ts.map +1 -1
  187. package/dist/src/events/item/syncDbWithEas.d.ts.map +1 -1
  188. package/dist/src/helpers/db.d.ts +4 -2
  189. package/dist/src/helpers/db.d.ts.map +1 -1
  190. package/dist/src/helpers/entity/entityCache.d.ts +2 -42
  191. package/dist/src/helpers/entity/entityCache.d.ts.map +1 -1
  192. package/dist/src/helpers/entity/entityCommon.d.ts +9 -0
  193. package/dist/src/helpers/entity/entityCommon.d.ts.map +1 -1
  194. package/dist/src/helpers/entity/entityDestroy.d.ts +13 -7
  195. package/dist/src/helpers/entity/entityDestroy.d.ts.map +1 -1
  196. package/dist/src/helpers/entity/entityLiveQuery.d.ts +3 -2
  197. package/dist/src/helpers/entity/entityLiveQuery.d.ts.map +1 -1
  198. package/dist/src/helpers/entity/entityState.d.ts +28 -0
  199. package/dist/src/helpers/entity/entityState.d.ts.map +1 -0
  200. package/dist/src/helpers/entity/entityUnload.d.ts +3 -2
  201. package/dist/src/helpers/entity/entityUnload.d.ts.map +1 -1
  202. package/dist/src/helpers/entity/index.d.ts +1 -0
  203. package/dist/src/helpers/entity/index.d.ts.map +1 -1
  204. package/dist/src/helpers/itemStorageFile.d.ts +7 -0
  205. package/dist/src/helpers/itemStorageFile.d.ts.map +1 -1
  206. package/dist/src/helpers/metadataPropertyNames.d.ts +6 -0
  207. package/dist/src/helpers/metadataPropertyNames.d.ts.map +1 -1
  208. package/dist/src/helpers/property.d.ts.map +1 -1
  209. package/dist/src/helpers/propertySchemaUid.d.ts +13 -0
  210. package/dist/src/helpers/propertySchemaUid.d.ts.map +1 -0
  211. package/dist/src/helpers/propertyWriteTickets.d.ts +11 -0
  212. package/dist/src/helpers/propertyWriteTickets.d.ts.map +1 -0
  213. package/dist/src/helpers/reactiveProxy.d.ts +18 -0
  214. package/dist/src/helpers/reactiveProxy.d.ts.map +1 -1
  215. package/dist/src/helpers/sessionObjectUrls.d.ts +4 -0
  216. package/dist/src/helpers/sessionObjectUrls.d.ts.map +1 -0
  217. package/dist/src/helpers/tabCoordinator.d.ts +9 -0
  218. package/dist/src/helpers/tabCoordinator.d.ts.map +1 -1
  219. package/dist/src/helpers/tabLocks.d.ts +11 -0
  220. package/dist/src/helpers/tabLocks.d.ts.map +1 -1
  221. package/dist/src/helpers/timing.d.ts +10 -0
  222. package/dist/src/helpers/timing.d.ts.map +1 -0
  223. package/dist/src/imports/json.d.ts.map +1 -1
  224. package/dist/src/index.d.ts +1 -0
  225. package/dist/src/index.d.ts.map +1 -1
  226. package/dist/src/interfaces/IDb.d.ts +2 -0
  227. package/dist/src/interfaces/IDb.d.ts.map +1 -1
  228. package/dist/src/interfaces/IItem.d.ts +1 -0
  229. package/dist/src/interfaces/IItem.d.ts.map +1 -1
  230. package/dist/src/interfaces/IItemProperty.d.ts +5 -0
  231. package/dist/src/interfaces/IItemProperty.d.ts.map +1 -1
  232. package/dist/src/node/db/Db.d.ts +3 -0
  233. package/dist/src/node/db/Db.d.ts.map +1 -1
  234. package/dist/src/node/db/singleConnectionTransactions.d.ts +22 -0
  235. package/dist/src/node/db/singleConnectionTransactions.d.ts.map +1 -0
  236. package/dist/src/outbox/conflicts.d.ts +60 -0
  237. package/dist/src/outbox/conflicts.d.ts.map +1 -0
  238. package/dist/src/outbox/index.d.ts +9 -0
  239. package/dist/src/outbox/index.d.ts.map +1 -0
  240. package/dist/src/outbox/itemAppliers.d.ts +153 -0
  241. package/dist/src/outbox/itemAppliers.d.ts.map +1 -0
  242. package/dist/src/outbox/outbox.d.ts +143 -0
  243. package/dist/src/outbox/outbox.d.ts.map +1 -0
  244. package/dist/src/outbox/pendingValues.d.ts +27 -0
  245. package/dist/src/outbox/pendingValues.d.ts.map +1 -0
  246. package/dist/src/seedSchema/PendingWriteSchema.d.ts +385 -0
  247. package/dist/src/seedSchema/PendingWriteSchema.d.ts.map +1 -0
  248. package/dist/src/seedSchema/index.d.ts +1 -0
  249. package/dist/src/seedSchema/index.d.ts.map +1 -1
  250. package/dist/src/types/property.d.ts +5 -0
  251. package/dist/src/types/property.d.ts.map +1 -1
  252. package/dist/{syncDbWithEas-CAOlw3i-.js → syncDbWithEas-BZ6AI-IC.js} +25 -20
  253. package/dist/syncDbWithEas-BZ6AI-IC.js.map +1 -0
  254. package/dist/{tabEvents-DksXwk3X.js → tabEvents-CIlzHSKZ.js} +56 -25
  255. package/dist/tabEvents-CIlzHSKZ.js.map +1 -0
  256. package/dist/{tolerantWebAccess-CEIjFGf0.js → tolerantWebAccess-BwJ8bElF.js} +6 -6
  257. package/dist/{tolerantWebAccess-CEIjFGf0.js.map → tolerantWebAccess-BwJ8bElF.js.map} +1 -1
  258. package/dist/{updateSeedRevokedAt-Cjr35YjE.js → updateSeedRevokedAt-ClxMSXcB.js} +3 -3
  259. package/dist/{updateSeedRevokedAt-Cjr35YjE.js.map → updateSeedRevokedAt-ClxMSXcB.js.map} +1 -1
  260. package/package.json +7 -7
  261. package/dist/ClientManager-2GtDWHq6.js.map +0 -1
  262. package/dist/Item-D6j0IvBP.js.map +0 -1
  263. package/dist/ModelProperty-B52C3CQ2.js.map +0 -1
  264. package/dist/Schema-O1QLoXv6.js.map +0 -1
  265. package/dist/discardNewDraft-hiVaUVjV.js +0 -78
  266. package/dist/discardNewDraft-hiVaUVjV.js.map +0 -1
  267. package/dist/dist/ClientManager-2GtDWHq6.d.ts.map +0 -1
  268. package/dist/dist/Item-D6j0IvBP.d.ts.map +0 -1
  269. package/dist/dist/Schema-O1QLoXv6.d.ts.map +0 -1
  270. package/dist/dist/backfillMetadataPropertyIds-CzSbuucw.d.ts.map +0 -1
  271. package/dist/dist/configurePlatform-Bbpw_R4y.d.ts.map +0 -1
  272. package/dist/dist/detachRowsBeforeDelete-D1TyEMco.d.ts.map +0 -1
  273. package/dist/dist/discardNewDraft-hiVaUVjV.d.ts +0 -8
  274. package/dist/dist/discardNewDraft-hiVaUVjV.d.ts.map +0 -1
  275. package/dist/dist/eas-DOdj-EMK.d.ts.map +0 -1
  276. package/dist/dist/errors-KM-yq2MD.d.ts.map +0 -1
  277. package/dist/dist/getItem-Bh0zv-o1.d.ts.map +0 -1
  278. package/dist/dist/getPublishPayload-oH8wJhnH.d.ts.map +0 -1
  279. package/dist/dist/index-BAao3_Po.d.ts.map +0 -1
  280. package/dist/dist/index-DpgQMIRq.d.ts.map +0 -1
  281. package/dist/dist/property-BDBvImLs.d.ts.map +0 -1
  282. package/dist/dist/propertyValidationRules-BlfLn4rP.d.ts.map +0 -1
  283. package/dist/dist/resetAmbiguousLegacyItemData-Cy8ik7xk.d.ts.map +0 -1
  284. package/dist/dist/resolveModelForSyncedSeed-DFr4COc4.d.ts.map +0 -1
  285. package/dist/dist/syncDbWithEas-CAOlw3i-.d.ts.map +0 -1
  286. package/dist/dist/tabEvents-DksXwk3X.d.ts.map +0 -1
  287. package/dist/dist/updateSeedRevokedAt-Cjr35YjE.d.ts.map +0 -1
  288. package/dist/errors-KM-yq2MD.js.map +0 -1
  289. package/dist/getPublishPayload-oH8wJhnH.js.map +0 -1
  290. package/dist/getPublishUploads-Cex-NBe6.js.map +0 -1
  291. package/dist/index-BAao3_Po.js.map +0 -1
  292. package/dist/index-BbFwftAv.js.map +0 -1
  293. package/dist/index-DpgQMIRq.js.map +0 -1
  294. package/dist/index.browser-nndbVM7z.js.map +0 -1
  295. package/dist/index.node-BUfx-JaP.js.map +0 -1
  296. package/dist/property-BDBvImLs.js.map +0 -1
  297. package/dist/src/db/write/discardNewDraft.d.ts +0 -8
  298. package/dist/src/db/write/discardNewDraft.d.ts.map +0 -1
  299. package/dist/src/helpers/propertyWriteQueue.d.ts +0 -15
  300. package/dist/src/helpers/propertyWriteQueue.d.ts.map +0 -1
  301. package/dist/syncDbWithEas-CAOlw3i-.js.map +0 -1
  302. package/dist/tabEvents-DksXwk3X.js.map +0 -1
@@ -1,5 +1,5 @@
1
1
  import debug from 'debug';
2
- import { H as AmbiguousModelError, I as eventEmitter } from './index-DpgQMIRq.js';
2
+ import { H as AmbiguousModelError, I as eventEmitter } from './index-CI0NFf4B.js';
3
3
 
4
4
  const logger = debug('seedSdk:db:read:resolveModelForSyncedSeed');
5
5
  /** Emitted when background work skips a seed whose model name exists in several schemas. */
@@ -43,4 +43,4 @@ const skipSeedOnAmbiguousModel = async (seed, context, work) => {
43
43
  };
44
44
 
45
45
  export { MODEL_AMBIGUOUS_EVENT as M, resolveModelForSyncedSeed as r, skipSeedOnAmbiguousModel as s };
46
- //# sourceMappingURL=resolveModelForSyncedSeed-DFr4COc4.js.map
46
+ //# sourceMappingURL=resolveModelForSyncedSeed-DHOq_FGs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"resolveModelForSyncedSeed-DFr4COc4.js","sources":["../../src/db/read/resolveModelForSyncedSeed.ts"],"sourcesContent":["import debug from 'debug'\nimport { eventEmitter } from '@/eventBus'\nimport { AmbiguousModelError } from '@/Model/errors'\n\nconst logger = debug('seedSdk:db:read:resolveModelForSyncedSeed')\n\n/** Emitted when background work skips a seed whose model name exists in several schemas. */\nexport const MODEL_AMBIGUOUS_EVENT = 'model:ambiguous' as const\n\nexport type ModelAmbiguousEventPayload = {\n modelName: string\n schemaNames: string[]\n seedLocalId?: string\n seedUid?: string\n /** What was being done when the seed was skipped (e.g. 'easSync.metadata'). */\n context: string\n}\n\nexport type SyncedSeedInfo = {\n seedUid?: string | null\n seedLocalId?: string | null\n /** seeds.type as synced from EAS (the EAS schema name, i.e. snake_case model name). */\n modelType?: string | null\n /** EAS schema UID of the seed attestation. */\n schemaUid?: string | null\n}\n\n/**\n * Seam for matching an EAS-synced seed to a local model (its schemaFileId).\n *\n * EAS identifies a seed's model only by name (`bytes32 <model_name>`), so when several local schemas\n * define a model with that name the seed alone can't say which one it is. The original plan was to\n * match by the seed's properties and metadata; docs/adr/0006-schema-scoped-seeds.md replaced it.\n *\n * TODO(eas-synced-seed-model-resolution): not implemented yet. Returns undefined, so callers fall\n * back to the name, which throws AmbiguousModelError when the name is ambiguous.\n */\nexport const resolveModelForSyncedSeed = async (_seed: SyncedSeedInfo): Promise<string | undefined> => {\n return undefined\n}\n\n/**\n * Run background work for one seed; if it hits an ambiguous model name, log, emit\n * MODEL_AMBIGUOUS_EVENT and return undefined (skip) instead of failing the whole job. Loading the\n * item directly still throws, so the problem surfaces where the app touches it.\n */\nexport const skipSeedOnAmbiguousModel = async <T>(\n seed: { seedLocalId?: string | null; seedUid?: string | null },\n context: string,\n work: () => Promise<T>,\n): Promise<T | undefined> => {\n try {\n return await work()\n } catch (error) {\n if (!(error instanceof AmbiguousModelError)) throw error\n logger(`Skipping seed ${seed.seedLocalId ?? seed.seedUid} in ${context}: ${error.message}`)\n const payload: ModelAmbiguousEventPayload = {\n modelName: error.modelName,\n schemaNames: error.schemaNames,\n seedLocalId: seed.seedLocalId ?? undefined,\n seedUid: seed.seedUid ?? undefined,\n context,\n }\n eventEmitter.emit(MODEL_AMBIGUOUS_EVENT, payload)\n return undefined\n }\n}\n"],"names":[],"mappings":";;;AAIA,MAAM,MAAM,GAAG,KAAK,CAAC,2CAA2C,CAAC;AAEjE;AACO,MAAM,qBAAqB,GAAG;AAoBrC;;;;;;;;;AASG;MACU,yBAAyB,GAAG,OAAO,KAAqB,KAAiC;AACpG,IAAA,OAAO,SAAS;AAClB;AAEA;;;;AAIG;AACI,MAAM,wBAAwB,GAAG,OACtC,IAA8D,EAC9D,OAAe,EACf,IAAsB,KACI;AAC1B,IAAA,IAAI;QACF,OAAO,MAAM,IAAI,EAAE;IACrB;IAAE,OAAO,KAAK,EAAE;AACd,QAAA,IAAI,EAAE,KAAK,YAAY,mBAAmB,CAAC;AAAE,YAAA,MAAM,KAAK;AACxD,QAAA,MAAM,CAAC,CAAA,cAAA,EAAiB,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,OAAO,CAAA,IAAA,EAAO,OAAO,CAAA,EAAA,EAAK,KAAK,CAAC,OAAO,CAAA,CAAE,CAAC;AAC3F,QAAA,MAAM,OAAO,GAA+B;YAC1C,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,WAAW,EAAE,KAAK,CAAC,WAAW;AAC9B,YAAA,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,SAAS;AAC1C,YAAA,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,SAAS;YAClC,OAAO;SACR;AACD,QAAA,YAAY,CAAC,IAAI,CAAC,qBAAqB,EAAE,OAAO,CAAC;AACjD,QAAA,OAAO,SAAS;IAClB;AACF;;"}
1
+ {"version":3,"file":"resolveModelForSyncedSeed-DHOq_FGs.js","sources":["../../src/db/read/resolveModelForSyncedSeed.ts"],"sourcesContent":["import debug from 'debug'\nimport { eventEmitter } from '@/eventBus'\nimport { AmbiguousModelError } from '@/Model/errors'\n\nconst logger = debug('seedSdk:db:read:resolveModelForSyncedSeed')\n\n/** Emitted when background work skips a seed whose model name exists in several schemas. */\nexport const MODEL_AMBIGUOUS_EVENT = 'model:ambiguous' as const\n\nexport type ModelAmbiguousEventPayload = {\n modelName: string\n schemaNames: string[]\n seedLocalId?: string\n seedUid?: string\n /** What was being done when the seed was skipped (e.g. 'easSync.metadata'). */\n context: string\n}\n\nexport type SyncedSeedInfo = {\n seedUid?: string | null\n seedLocalId?: string | null\n /** seeds.type as synced from EAS (the EAS schema name, i.e. snake_case model name). */\n modelType?: string | null\n /** EAS schema UID of the seed attestation. */\n schemaUid?: string | null\n}\n\n/**\n * Seam for matching an EAS-synced seed to a local model (its schemaFileId).\n *\n * EAS identifies a seed's model only by name (`bytes32 <model_name>`), so when several local schemas\n * define a model with that name the seed alone can't say which one it is. The original plan was to\n * match by the seed's properties and metadata; docs/adr/0006-schema-scoped-seeds.md replaced it.\n *\n * TODO(eas-synced-seed-model-resolution): not implemented yet. Returns undefined, so callers fall\n * back to the name, which throws AmbiguousModelError when the name is ambiguous.\n */\nexport const resolveModelForSyncedSeed = async (_seed: SyncedSeedInfo): Promise<string | undefined> => {\n return undefined\n}\n\n/**\n * Run background work for one seed; if it hits an ambiguous model name, log, emit\n * MODEL_AMBIGUOUS_EVENT and return undefined (skip) instead of failing the whole job. Loading the\n * item directly still throws, so the problem surfaces where the app touches it.\n */\nexport const skipSeedOnAmbiguousModel = async <T>(\n seed: { seedLocalId?: string | null; seedUid?: string | null },\n context: string,\n work: () => Promise<T>,\n): Promise<T | undefined> => {\n try {\n return await work()\n } catch (error) {\n if (!(error instanceof AmbiguousModelError)) throw error\n logger(`Skipping seed ${seed.seedLocalId ?? seed.seedUid} in ${context}: ${error.message}`)\n const payload: ModelAmbiguousEventPayload = {\n modelName: error.modelName,\n schemaNames: error.schemaNames,\n seedLocalId: seed.seedLocalId ?? undefined,\n seedUid: seed.seedUid ?? undefined,\n context,\n }\n eventEmitter.emit(MODEL_AMBIGUOUS_EVENT, payload)\n return undefined\n }\n}\n"],"names":[],"mappings":";;;AAIA,MAAM,MAAM,GAAG,KAAK,CAAC,2CAA2C,CAAC;AAEjE;AACO,MAAM,qBAAqB,GAAG;AAoBrC;;;;;;;;;AASG;MACU,yBAAyB,GAAG,OAAO,KAAqB,KAAiC;AACpG,IAAA,OAAO,SAAS;AAClB;AAEA;;;;AAIG;AACI,MAAM,wBAAwB,GAAG,OACtC,IAA8D,EAC9D,OAAe,EACf,IAAsB,KACI;AAC1B,IAAA,IAAI;QACF,OAAO,MAAM,IAAI,EAAE;IACrB;IAAE,OAAO,KAAK,EAAE;AACd,QAAA,IAAI,EAAE,KAAK,YAAY,mBAAmB,CAAC;AAAE,YAAA,MAAM,KAAK;AACxD,QAAA,MAAM,CAAC,CAAA,cAAA,EAAiB,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,OAAO,CAAA,IAAA,EAAO,OAAO,CAAA,EAAA,EAAK,KAAK,CAAC,OAAO,CAAA,CAAE,CAAC;AAC3F,QAAA,MAAM,OAAO,GAA+B;YAC1C,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,WAAW,EAAE,KAAK,CAAC,WAAW;AAC9B,YAAA,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,SAAS;AAC1C,YAAA,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,SAAS;YAClC,OAAO;SACR;AACD,QAAA,YAAY,CAAC,IAAI,CAAC,qBAAqB,EAAE,OAAO,CAAC;AACjD,QAAA,OAAO,SAAS;IAClB;AACF;;"}
@@ -0,0 +1,57 @@
1
+ import { index, int, sqliteTable, text, uniqueIndex } from 'drizzle-orm/sqlite-core'
2
+ import { InferInsertModel, InferSelectModel } from 'drizzle-orm'
3
+
4
+ /**
5
+ * The item write outbox (ADR 0019): one row per edit to an item, appended when the value is
6
+ * assigned and applied to `seeds`, `versions` and `metadata` by the leader tab's drainer.
7
+ */
8
+ export const pendingWrites = sqliteTable(
9
+ 'pending_writes',
10
+ {
11
+ id: int('id').primaryKey({ autoIncrement: true }),
12
+ /** Unique per op; the drainer and `save()` refer to an op by it. */
13
+ opId: text('op_id').notNull(),
14
+ /** Ops that apply together in one transaction (Item.create's seed, version and metadata rows). */
15
+ groupId: text('group_id'),
16
+ seedLocalId: text('seed_local_id').notNull(),
17
+ /** Null for ops on the seed itself (`create`, `delete`). */
18
+ propertyName: text('property_name'),
19
+ /** `create` | `set` | `delete` | `storage` */
20
+ kind: text('kind').notNull(),
21
+ /** JSON-encoded value. */
22
+ value: text('value'),
23
+ /** A staged file a `storage` op's value was written to, moved into place when it applies. */
24
+ valueRef: text('value_ref'),
25
+ /** The stored metadata row the edit was made against, to detect a synced row written since. */
26
+ baseRowId: text('base_row_id'),
27
+ baseUid: text('base_uid'),
28
+ createdAt: int('created_at').notNull(),
29
+ /** The tab that appended the op. */
30
+ tabId: text('tab_id'),
31
+ /** `pending` | `applied` | `superseded` | `failed`. An op is claimed and applied in one transaction. */
32
+ status: text('status').notNull(),
33
+ error: text('error'),
34
+ /** The name of the error that failed the op (`OwnershipError`, say), so a waiter can tell why. */
35
+ errorName: text('error_name'),
36
+ attempts: int('attempts').notNull().default(0),
37
+ appliedAt: int('applied_at'),
38
+ /** JSON the applier recorded when the op applied (for a `set`: the metadata row written). */
39
+ result: text('result'),
40
+ /** JSON: the synced value this op was applied over, when there was one (ADR 0019). */
41
+ conflict: text('conflict'),
42
+ conflictResolvedAt: int('conflict_resolved_at'),
43
+ },
44
+ (table) => ({
45
+ opIdUnique: uniqueIndex('pending_writes_op_id_unique').on(table.opId),
46
+ /** The drainer's order: per property, oldest first, among one status. */
47
+ drainOrder: index('pending_writes_drain_order').on(
48
+ table.status,
49
+ table.seedLocalId,
50
+ table.propertyName,
51
+ table.createdAt,
52
+ ),
53
+ }),
54
+ )
55
+
56
+ export type PendingWriteType = InferSelectModel<typeof pendingWrites>
57
+ export type NewPendingWrite = InferInsertModel<typeof pendingWrites>
@@ -13,3 +13,4 @@ export * from './UploadProcessSchema'
13
13
  export * from './ArweaveL1FinalizeSchema'
14
14
  export * from './EasSyncProcessSchema'
15
15
  export * from './HtmlEmbeddedImageCoPublishSchema'
16
+ export * from './PendingWriteSchema'
@@ -21,6 +21,24 @@ export declare class Item<T extends ModelValues<ModelSchema>> implements IItem<T
21
21
  private static findItemInstanceCacheEntryById;
22
22
  private static collectInstanceCacheKeysForInstance;
23
23
  private static registerItemInInstanceCache;
24
+ /**
25
+ * Wraps a new instance in its reactive proxy: tracked names read from and write to the actor's
26
+ * context, and the model's property names (`item.title`, or `item.html` for `htmlId`) read and
27
+ * write their ItemProperty's value.
28
+ */
29
+ private static wrapInProxy;
30
+ /**
31
+ * The ItemProperty a model property name reads and writes on the item: by its name, or by its
32
+ * storage name (`html` finds `htmlId` and the other way round). Internal names don't resolve.
33
+ */
34
+ private _findPropertyInstance;
35
+ /** Every name `_findPropertyInstance` resolves: the stored names and their schema names. */
36
+ private _propertyInstanceNames;
37
+ /**
38
+ * Writes an assigned seed uid to the item's seed row, so later loads and getPublishPayload see it.
39
+ * Writes run one after another per item, so the last assignment is the one that stays.
40
+ */
41
+ private _persistSeedUid;
24
42
  /**
25
43
  * Sets a tracked context property from the proxy. Setting `seedUid` to a different uid means a
26
44
  * new seed attestation (publishing again after unpublish): the revocation belonged to the old
@@ -34,6 +52,11 @@ export declare class Item<T extends ModelValues<ModelSchema>> implements IItem<T
34
52
  * `propertyInstances` is merged (an item with a version but no property instances yet).
35
53
  */
36
54
  private static isItemSnapshotReadyForRead;
55
+ /**
56
+ * The cached Item for a seedLocalId or seedUid, in any state, without taking a hold. For SDK code
57
+ * that reads or messages the item and doesn't hand it to a caller.
58
+ */
59
+ static peek(id: string | null | undefined): Item<any> | undefined;
37
60
  /**
38
61
  * The cached Item for a seedLocalId or seedUid when it can be read right now: idle and hydrated,
39
62
  * so at least what `Item.find()` would wait for. Otherwise undefined. Unlike `getById`, it takes
@@ -49,7 +72,11 @@ export declare class Item<T extends ModelValues<ModelSchema>> implements IItem<T
49
72
  static create<_T extends ModelValues<ModelSchema>>(props: Partial<ItemData> & {
50
73
  modelInstance?: import('../Model/Model').Model;
51
74
  }, options?: ItemCreateOptions): Promise<Item<any>>;
52
- /** Stops a just-created item and deletes what create wrote (see discardNewDraft). */
75
+ /**
76
+ * Stops a just-created item and deletes what create wrote: a `discard` outbox op (ADR 0019),
77
+ * applied after the item's other pending ops, hard-deletes the draft and the storage seeds its
78
+ * rows point at; their files go once it has applied.
79
+ */
53
80
  private static discardCreatedItem;
54
81
  /**
55
82
  * Run each File/Image/Html/ItemStorage initial value through its ItemProperty save pipeline (sequentially, to
@@ -91,6 +118,11 @@ export declare class Item<T extends ModelValues<ModelSchema>> implements IItem<T
91
118
  modelFileId?: string;
92
119
  /** ... or the schema that defines it. */
93
120
  schemaName?: string;
121
+ /**
122
+ * Stops building items once aborted and rejects with the signal's reason. Items already
123
+ * built stay loaded.
124
+ */
125
+ signal?: AbortSignal;
94
126
  }): Promise<Item<any>[]>;
95
127
  /**
96
128
  * After EAS sync writes metadata for the latest version, merge new property instances and
@@ -99,12 +131,6 @@ export declare class Item<T extends ModelValues<ModelSchema>> implements IItem<T
99
131
  */
100
132
  static rehydrateCachedItemsFromDbAfterEasSync(): Promise<void>;
101
133
  protected _createPropertyInstance(props: Partial<CreatePropertyInstanceProps>): void;
102
- /**
103
- * Defines a property accessor on this Item that delegates get/set to the
104
- * ItemProperty in context.propertyInstances at access time (so the correct
105
- * instance is used after loadOrCreateItemSuccess merges DB-backed instances).
106
- */
107
- protected _definePropertyAccessor(propertyName: string): void;
108
134
  /** Same as `item.publish(options)`; requires @seedprotocol/publish. */
109
135
  /** Keys Item.create accepts besides the model's properties. */
110
136
  private static readonly CREATE_METADATA_KEYS;
@@ -118,6 +144,11 @@ export declare class Item<T extends ModelValues<ModelSchema>> implements IItem<T
118
144
  static publish(item: IItem<any>, options?: ItemPublishOptions): Promise<void>;
119
145
  subscribe: (callback: (itemProps: any) => void) => Subscription;
120
146
  getService: () => ActorRefFrom<typeof itemMachineSingle>;
147
+ /**
148
+ * The item's unresolved conflicts, one per property: local edits that were kept over a value
149
+ * sync wrote while they were pending (ADR 0019). Each property's is also on `property.conflict`.
150
+ */
151
+ conflicts: () => Promise<import("../outbox/conflicts").PropertyConflict[]>;
121
152
  getEditedProperties: () => Promise<PropertyData[]>;
122
153
  unpublish: () => Promise<void>;
123
154
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"Item.d.ts","sourceRoot":"","sources":["../../../src/Item/Item.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Item.d.ts","sourceRoot":"","sources":["../../../src/Item/Item.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"itemMachineSingle.d.ts","sourceRoot":"","sources":["../../../../src/Item/service/itemMachineSingle.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AAI5C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AACjE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAG/C,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+BAqM5B,CAAA"}
1
+ {"version":3,"file":"itemMachineSingle.d.ts","sourceRoot":"","sources":["../../../../src/Item/service/itemMachineSingle.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AAI5C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AACjE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAG/C,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+BAuM5B,CAAA"}
@@ -20,6 +20,13 @@ type ItemPropertyFindProps = {
20
20
  /** When metadata has no modelType, callers (e.g. Item) can pass modelName so ItemProperty.create can succeed */
21
21
  modelName?: string;
22
22
  };
23
+ type ItemPropertyHoldOption = {
24
+ /**
25
+ * @internal false for SDK code that hands the instance to an owner that takes its own hold (an
26
+ * Item's property map): no hold is taken, and a new instance is cached with none.
27
+ */
28
+ hold?: false;
29
+ };
23
30
  export declare class ItemProperty<PropertyType> implements IItemProperty<PropertyType> {
24
31
  protected static instanceCache: Map<string, {
25
32
  instance: ItemProperty<any>;
@@ -34,6 +41,8 @@ export declare class ItemProperty<PropertyType> implements IItemProperty<Propert
34
41
  protected _dataType: string | undefined;
35
42
  /** Set while the value setter resolves a missing schema before sending `save`; save() awaits it. */
36
43
  protected _pendingSchemaSave: Promise<boolean> | undefined;
44
+ /** What showed before the first `showValue` since the last save; that save rolls back to it. */
45
+ protected _unsavedBefore: PropertyValueSnapshot | undefined;
37
46
  protected _schemaUid: string | undefined;
38
47
  /** Name passed to the constructor; the public name if the machine later moves to a List-of-relation storage name. */
39
48
  protected readonly _constructedPropertyName: string | undefined;
@@ -49,13 +58,22 @@ export declare class ItemProperty<PropertyType> implements IItemProperty<Propert
49
58
  * receives the update and refreshes its propertyRecordSchema.
50
59
  */
51
60
  private _setupPropertySchemaLiveQuery;
61
+ /**
62
+ * The cached instance for this item and property, or a new one. Takes a hold on it: release it
63
+ * with `unload()`. An Item holds the properties in its own map and releases them when it unloads.
64
+ */
52
65
  static create(props: Partial<CreatePropertyInstanceProps>, options: {
53
66
  waitForReady: false;
54
- }): ItemProperty<any> | undefined;
67
+ } & ItemPropertyHoldOption): ItemProperty<any> | undefined;
55
68
  static create(props: Partial<CreatePropertyInstanceProps>, options?: {
56
69
  waitForReady?: true;
57
70
  readyTimeout?: number;
58
- }): Promise<ItemProperty<any> | undefined>;
71
+ } & ItemPropertyHoldOption): Promise<ItemProperty<any> | undefined>;
72
+ /**
73
+ * Wraps a new instance in its reactive proxy: tracked names read from and write to the actor's
74
+ * context, and assigning `value` also sends it to the actor before the setter runs.
75
+ */
76
+ private static wrapInProxy;
59
77
  /**
60
78
  * The cached ItemProperty when it can be read right now (idle, not saving), the state
61
79
  * `ItemProperty.find()` waits for. Otherwise undefined. Unlike `find`, it takes no cache hold, so
@@ -66,13 +84,15 @@ export declare class ItemProperty<PropertyType> implements IItemProperty<Propert
66
84
  seedLocalId?: string;
67
85
  seedUid?: string;
68
86
  }): ItemProperty<any> | undefined;
69
- static find({ propertyName, seedLocalId, seedUid, modelName: modelNameOption, waitForReady, readyTimeout, }: ItemPropertyFindProps & {
87
+ /** Takes a hold on the instance it returns: release it with `unload()`. */
88
+ static find({ propertyName, seedLocalId, seedUid, modelName: modelNameOption, waitForReady, readyTimeout, hold, }: ItemPropertyFindProps & {
70
89
  waitForReady?: boolean;
71
90
  readyTimeout?: number;
72
- }): Promise<ItemProperty<any> | undefined>;
91
+ } & ItemPropertyHoldOption): Promise<ItemProperty<any> | undefined>;
73
92
  /**
74
93
  * Get all ItemProperty instances for an item.
75
94
  * Loads property data via getItemProperties, creates instances via create, optionally waits for idle.
95
+ * Takes a hold on each instance, as `create` does.
76
96
  */
77
97
  static all(params: {
78
98
  seedLocalId?: string;
@@ -80,10 +100,25 @@ export declare class ItemProperty<PropertyType> implements IItemProperty<Propert
80
100
  }, options?: {
81
101
  waitForReady?: boolean;
82
102
  readyTimeout?: number;
83
- }): Promise<ItemProperty<any>[]>;
103
+ } & ItemPropertyHoldOption): Promise<ItemProperty<any>[]>;
84
104
  find: typeof ItemProperty.find;
105
+ /**
106
+ * @internal Takes one more hold on a cached, running instance, released with `unload()`. False
107
+ * (and no hold) when the instance isn't cached or was stopped.
108
+ */
109
+ static retain(instance: IItemProperty<any>): boolean;
110
+ /**
111
+ * Stops an item's cached properties that nobody holds. Internal lookups cache a property without
112
+ * a hold for the item to take; one that finished after the item stopped (a liveQuery handler's
113
+ * find, say) never got that hold and would otherwise keep running. Called when the item stops.
114
+ */
115
+ static unloadUnheldForItem(seedIds: Array<string | null | undefined>): void;
85
116
  static cacheKey(seedLocalIdOrUid: string, propertyName: string): string;
86
- /** Clears instance cache for an item (for test isolation when run in group). */
117
+ /**
118
+ * Drops an item's properties from the instance cache, under every key they're cached by. A dropped
119
+ * instance someone still holds keeps running but is detached: it doesn't re-key itself into the
120
+ * cache when its context changes, so the next lookup creates a fresh instance.
121
+ */
87
122
  static clearInstanceCacheForItem(seedLocalIdOrUid: string): void;
88
123
  getService(): import("xstate").ActorRef<import("xstate").MachineSnapshot<PropertyMachineContext, import("xstate").AnyEventObject, {
89
124
  [x: string]: import("xstate").ActorRefFromLogic<import("xstate").CallbackActorLogic<import("xstate").EventObject, import("../types").FromCallbackInput<PropertyMachineContext>, import("xstate").EventObject> | import("xstate").CallbackActorLogic<import("xstate").EventObject, import("../types").FromCallbackInput<PropertyMachineContext, import("xstate").EventObject>, import("xstate").EventObject> | import("xstate").CallbackActorLogic<import("xstate").EventObject, import("../types").FromCallbackInput<PropertyMachineContext, import("../types").SaveValueToDbEvent>, import("xstate").EventObject>> | undefined;
@@ -133,22 +168,43 @@ export declare class ItemProperty<PropertyType> implements IItemProperty<Propert
133
168
  /** Validation errors from last failed save (enum, pattern, minLength, maxLength). Cleared when the next save starts. */
134
169
  get saveValidationErrors(): import('../Schema/validation').ValidationError[];
135
170
  get alias(): string | undefined;
171
+ /**
172
+ * The unresolved conflict between this property's last local edit and a value sync wrote while
173
+ * the edit was pending (ADR 0019): the local edit was kept, and `remoteValue` is what sync wrote.
174
+ * Null when there is none. Cleared by the next edit or `resolveConflict`.
175
+ */
176
+ get conflict(): import('../outbox/conflicts').PropertyConflict | null;
177
+ /**
178
+ * Settles `conflict`. `'local'` keeps the local edit. `'remote'` drops the local draft, so the
179
+ * synced value shows again (and publish has nothing to send for this property).
180
+ */
181
+ resolveConflict(choice: 'local' | 'remote'): Promise<void>;
136
182
  get value(): any;
137
183
  set value(value: any);
138
184
  /**
139
185
  * Shows `value` at once and saves it; `await property.save()` to wait for the result. Unlike
140
186
  * assigning `property.value`, it saves even when `value` is already in context.
141
187
  *
142
- * @param options.before - The values to restore if the save is refused or fails. Defaults to the
143
- * current context; pass it when you already put `value` into context (a debounced input, say),
144
- * so a refusal still rolls back to what was there before.
188
+ * @param options.before - The values to restore if the save is refused or fails. Defaults to what
189
+ * showed before the first `showValue` since the last save, else the current context.
145
190
  */
146
191
  setValue(value: any, options?: {
147
192
  before?: PropertyValueSnapshot;
148
193
  }): void;
194
+ /**
195
+ * Shows `value` without saving it, for input that saves later (a debounced text field). The next
196
+ * `setValue` or assignment saves, and if that save is refused or fails, the property goes back to
197
+ * what showed before the first `showValue`.
198
+ */
199
+ showValue(value: any): void;
149
200
  get published(): boolean;
150
201
  subscribe(callback: Partial<Subscriber<any>>): Subscription;
151
202
  save(): Promise<void>;
203
+ /**
204
+ * Every cache key holding this instance: its item's local id and seed uid, and the name it had
205
+ * before a rename (List of relation). They share one entry.
206
+ */
207
+ private _cacheKeys;
152
208
  unload(): void;
153
209
  /**
154
210
  * Destroy the item property: remove from caches, delete its metadata rows (every version of
@@ -156,6 +212,7 @@ export declare class ItemProperty<PropertyType> implements IItemProperty<Propert
156
212
  * Throws OwnershipError if none of the client's addresses own the item.
157
213
  */
158
214
  destroy(): Promise<void>;
215
+ private _destroyRows;
159
216
  }
160
217
  export {};
161
218
  //# sourceMappingURL=ItemProperty.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ItemProperty.d.ts","sourceRoot":"","sources":["../../../src/ItemProperty/ItemProperty.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ItemProperty.d.ts","sourceRoot":"","sources":["../../../src/ItemProperty/ItemProperty.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"hydrateFromDb.d.ts","sourceRoot":"","sources":["../../../../../src/ItemProperty/service/actors/hydrateFromDb.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAgB,MAAM,QAAQ,CAAA;AAMlD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAA;AAkBzD,eAAO,MAAM,aAAa,uHAwUxB,CAAA"}
1
+ {"version":3,"file":"hydrateFromDb.d.ts","sourceRoot":"","sources":["../../../../../src/ItemProperty/service/actors/hydrateFromDb.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAgB,MAAM,QAAQ,CAAA;AAMlD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAA;AAkBzD,eAAO,MAAM,aAAa,uHAqVxB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"loadOrCreateProperty.d.ts","sourceRoot":"","sources":["../../../../../src/ItemProperty/service/actors/loadOrCreateProperty.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAgB,MAAM,QAAQ,CAAA;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAC3C,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAA;AA0BzD,eAAO,MAAM,oBAAoB,0GA8Y/B,CAAA"}
1
+ {"version":3,"file":"loadOrCreateProperty.d.ts","sourceRoot":"","sources":["../../../../../src/ItemProperty/service/actors/loadOrCreateProperty.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAgB,MAAM,QAAQ,CAAA;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAC3C,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAA;AA0BzD,eAAO,MAAM,oBAAoB,0GAqZ/B,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"analyzeInput.d.ts","sourceRoot":"","sources":["../../../../../../src/ItemProperty/service/actors/saveValueToDb/analyzeInput.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAgB,MAAM,QAAQ,CAAA;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,EAEL,sBAAsB,EACtB,kBAAkB,EACnB,MAAM,kBAAkB,CAAA;AAqBzB,eAAO,MAAM,YAAY,8HA0OvB,CAAA"}
1
+ {"version":3,"file":"analyzeInput.d.ts","sourceRoot":"","sources":["../../../../../../src/ItemProperty/service/actors/saveValueToDb/analyzeInput.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAgB,MAAM,QAAQ,CAAA;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,EAEL,sBAAsB,EACtB,kBAAkB,EACnB,MAAM,kBAAkB,CAAA;AAczB,eAAO,MAAM,YAAY,8HAyPvB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"saveFile.d.ts","sourceRoot":"","sources":["../../../../../../src/ItemProperty/service/actors/saveValueToDb/saveFile.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAgB,MAAM,QAAQ,CAAA;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,EAEL,sBAAsB,EACtB,kBAAkB,EACnB,MAAM,kBAAkB,CAAA;AAazB;;;;;;;;GAQG;AACH,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,WAAW,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,KAAK,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAmB9G;AAED,eAAO,MAAM,QAAQ,8HAuMnB,CAAA"}
1
+ {"version":3,"file":"saveFile.d.ts","sourceRoot":"","sources":["../../../../../../src/ItemProperty/service/actors/saveValueToDb/saveFile.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAgB,MAAM,QAAQ,CAAA;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,EAEL,sBAAsB,EACtB,kBAAkB,EACnB,MAAM,kBAAkB,CAAA;AAYzB;;;;;;;;GAQG;AACH,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,WAAW,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,KAAK,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAmB9G;AAED,eAAO,MAAM,QAAQ,8HAqMnB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"saveHtml.d.ts","sourceRoot":"","sources":["../../../../../../src/ItemProperty/service/actors/saveValueToDb/saveHtml.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAgB,MAAM,QAAQ,CAAA;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,EAEL,sBAAsB,EACtB,kBAAkB,EACnB,MAAM,kBAAkB,CAAA;AAYzB,eAAO,MAAM,QAAQ,8HAiJnB,CAAA"}
1
+ {"version":3,"file":"saveHtml.d.ts","sourceRoot":"","sources":["../../../../../../src/ItemProperty/service/actors/saveValueToDb/saveHtml.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAgB,MAAM,QAAQ,CAAA;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,EAEL,sBAAsB,EACtB,kBAAkB,EACnB,MAAM,kBAAkB,CAAA;AAWzB,eAAO,MAAM,QAAQ,8HA8InB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"saveImage.d.ts","sourceRoot":"","sources":["../../../../../../src/ItemProperty/service/actors/saveValueToDb/saveImage.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAgB,MAAM,QAAQ,CAAA;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,EAEL,sBAAsB,EACtB,kBAAkB,EACnB,MAAM,kBAAkB,CAAA;AAwBzB,eAAO,MAAM,SAAS,8HAyOpB,CAAA"}
1
+ {"version":3,"file":"saveImage.d.ts","sourceRoot":"","sources":["../../../../../../src/ItemProperty/service/actors/saveValueToDb/saveImage.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAgB,MAAM,QAAQ,CAAA;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,EAEL,sBAAsB,EACtB,kBAAkB,EACnB,MAAM,kBAAkB,CAAA;AAuBzB,eAAO,MAAM,SAAS,8HAyOpB,CAAA"}
@@ -1,5 +1,10 @@
1
1
  import { EventObject } from 'xstate';
2
2
  import { FromCallbackInput } from '../../../../types/machines';
3
3
  import { PropertyMachineContext, SaveValueToDbEvent } from '../../../../types/property';
4
+ /**
5
+ * Saves an ItemStorage value: the content goes to a staging file, and an outbox op (ADR 0019) moves
6
+ * it into the item's file and points the property's local draft row at it (see
7
+ * applyItemStorageValue for which row).
8
+ */
4
9
  export declare const saveItemStorage: import("xstate").CallbackActorLogic<EventObject, FromCallbackInput<PropertyMachineContext, SaveValueToDbEvent>, EventObject>;
5
10
  //# sourceMappingURL=saveItemStorage.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"saveItemStorage.d.ts","sourceRoot":"","sources":["../../../../../../src/ItemProperty/service/actors/saveValueToDb/saveItemStorage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAgB,MAAM,QAAQ,CAAA;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,EAEL,sBAAsB,EACtB,kBAAkB,EACnB,MAAM,kBAAkB,CAAA;AAsBzB,eAAO,MAAM,eAAe,8HAsM1B,CAAA"}
1
+ {"version":3,"file":"saveItemStorage.d.ts","sourceRoot":"","sources":["../../../../../../src/ItemProperty/service/actors/saveValueToDb/saveItemStorage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAgB,MAAM,QAAQ,CAAA;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,EAEL,sBAAsB,EACtB,kBAAkB,EACnB,MAAM,kBAAkB,CAAA;AAWzB;;;;GAIG;AACH,eAAO,MAAM,eAAe,8HA6F1B,CAAA"}
@@ -0,0 +1,22 @@
1
+ import type { PropertyMachineContext } from '../../../../types/property';
2
+ import type { ItemStorageValueOp, StorageValueOp, SetPropertyValueResult } from '../../../../outbox/itemAppliers';
3
+ import type { PropertyWriteTicket } from '../../../../helpers/propertyWriteTickets';
4
+ /**
5
+ * Writes a storage value (Html, File, Image, ItemStorage) through the outbox (ADR 0019) and waits
6
+ * until it is applied. The value's file (or staged file) is already written. Skipped (the context
7
+ * is left alone) when a newer value of the property superseded it; that value's save sets the
8
+ * context instead, as is a save that a newer save of the property (in this tab) started after:
9
+ * its file is deleted and nothing is appended. `result` is what the op's applier returned.
10
+ */
11
+ export declare function writeStorageValue<Result extends SetPropertyValueResult = SetPropertyValueResult>(item: {
12
+ seedLocalId?: string | null;
13
+ seedUid?: string | null;
14
+ propertyName: string;
15
+ }, value: StorageValueOp | ItemStorageValueOp, ticket: PropertyWriteTicket | undefined): Promise<{
16
+ skipped: true;
17
+ } | {
18
+ skipped: false;
19
+ row: Partial<PropertyMachineContext>;
20
+ result: Result | undefined;
21
+ }>;
22
+ //# sourceMappingURL=storageValue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storageValue.d.ts","sourceRoot":"","sources":["../../../../../../src/ItemProperty/service/actors/saveValueToDb/storageValue.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAA;AAC9D,OAAO,KAAK,EAAE,kBAAkB,EAAE,cAAc,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAA;AAGvG,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAA;AAczE;;;;;;GAMG;AACH,wBAAsB,iBAAiB,CAAC,MAAM,SAAS,sBAAsB,GAAG,sBAAsB,EACpG,IAAI,EAAE;IAAE,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,EACpF,KAAK,EAAE,cAAc,GAAG,kBAAkB,EAC1C,MAAM,EAAE,mBAAmB,GAAG,SAAS,GACtC,OAAO,CAAC;IAAE,OAAO,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,OAAO,EAAE,KAAK,CAAC;IAAC,GAAG,EAAE,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,CAAC,CA0BnH"}
@@ -1 +1 @@
1
- {"version":3,"file":"propertyMachine.d.ts","sourceRoot":"","sources":["../../../../src/ItemProperty/service/propertyMachine.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AA6DpE,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+BAuT1B,CAAA"}
1
+ {"version":3,"file":"propertyMachine.d.ts","sourceRoot":"","sources":["../../../../src/ItemProperty/service/propertyMachine.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AA6DpE,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+BAyT1B,CAAA"}
@@ -86,6 +86,8 @@ export declare class Model {
86
86
  waitForReady: false;
87
87
  /** @internal Schema import: see the implementation signature */
88
88
  persistedBy?: Promise<unknown>;
89
+ /** @internal SDK lookups pass false: see the implementation signature */
90
+ hold?: false;
89
91
  }): Model;
90
92
  static create(modelName: string, schemaNameOrSchema: string | any, options?: {
91
93
  id?: string;
@@ -96,24 +98,58 @@ export declare class Model {
96
98
  registerWithSchema?: boolean;
97
99
  waitForReady?: true;
98
100
  readyTimeout?: number;
101
+ /** @internal SDK lookups pass false: see the implementation signature */
102
+ hold?: false;
99
103
  }): Promise<Model>;
100
104
  /**
101
- * Get Model instance by modelFileId (O(1) lookup)
105
+ * Get Model instance by modelFileId (O(1) lookup). Takes a hold on the instance; release it with
106
+ * `unload()`.
102
107
  */
103
108
  static getById(modelFileId: string): Model | undefined;
104
109
  /**
105
- * Get Model instance by name (O(1) lookup via name→ID mapping)
110
+ * Models their schema holds, by modelFileId. A schema's first load of a model takes one hold for
111
+ * the schema, and the schema's last unload releases it (releaseSchemaHolds), so a user's unload
112
+ * can't drop a model out of `schema.models` while the schema is loaded.
113
+ */
114
+ private static schemaHeldModelIds;
115
+ /**
116
+ * @internal For a Schema loading its models: true when this load should take the schema's hold
117
+ * on the model (pass no `hold` option), false when the schema already holds it (pass
118
+ * `hold: false`). After a true, call `dropSchemaHold` if the load returns no model.
119
+ */
120
+ static takeSchemaHold(modelFileId: string | undefined): boolean;
121
+ /** @internal The load `takeSchemaHold` approved found no model: there is no hold to release. */
122
+ static dropSchemaHold(modelFileId: string): void;
123
+ /** @internal A Schema's last unload: releases its hold on each of its models. */
124
+ static releaseSchemaHolds(schemaName: string): void;
125
+ /**
126
+ * The cached Model with this modelFileId, without taking a hold. For SDK code that reads the
127
+ * model and doesn't hand it to a caller; callers that keep it use `getById`, `find` or `create`.
128
+ */
129
+ static peek(modelFileId: string): Model | undefined;
130
+ /**
131
+ * Get Model instance by name (O(1) lookup via name→ID mapping). Takes a hold on the instance;
132
+ * release it with `unload()`.
106
133
  *
107
134
  * @param modelName - The name of the model
108
135
  * @param schemaName - The schema name (optional, will query DB if not provided)
109
136
  * @returns The Model instance if found, undefined otherwise
110
137
  */
111
138
  static getByName(modelName: string, schemaName?: string): Model | undefined;
112
- /** The one cached Model whose name matches, or AmbiguousModelError if models from several schemas do. */
139
+ /**
140
+ * `getByName` without taking a hold. Without `schemaName` it searches every cached schema and
141
+ * throws AmbiguousModelError when models from several schemas share the name; callers that know
142
+ * the schema or model id should use Model.resolve() instead.
143
+ */
144
+ static peekByName(modelName: string, schemaName?: string): Model | undefined;
145
+ /**
146
+ * The one cached Model whose name matches (no hold taken), or AmbiguousModelError if models from
147
+ * several schemas do.
148
+ */
113
149
  private static _getUniqueCachedModel;
114
150
  /**
115
151
  * Resolve a cached Model from the most specific scope available: modelFileId (Model.id), then
116
- * schemaName + modelName, then modelName alone.
152
+ * schemaName + modelName, then modelName alone. Takes no hold.
117
153
  */
118
154
  static resolve(modelName: string | undefined, scope?: {
119
155
  modelFileId?: string | null;
@@ -123,17 +159,17 @@ export declare class Model {
123
159
  * Find Model by modelType (an EAS model name, as seeds.type stores it). Matched as ADR 0008
124
160
  * matches EAS names: `new_model` finds "New model", and `htmlpage` (an older SDK's name) finds
125
161
  * "HTMLPage", unless HTMLPage's nameMatch (ADR 0009) is `exact`. Only the tightest matching tier
126
- * counts; matches in several schemas are ambiguous.
162
+ * counts; matches in several schemas are ambiguous. Takes no hold.
127
163
  */
128
164
  static findByModelType(modelType: string): Model | undefined;
129
165
  /**
130
- * Get all Model instances for a schema from cache only (synchronous).
166
+ * Get all Model instances for a schema from cache only (synchronous). Takes no holds.
131
167
  * Includes models created at runtime via Model.create() that may not yet be in schema context.
132
168
  */
133
169
  static getCachedInstancesForSchema(schemaName: string): Model[];
134
170
  /**
135
171
  * Async Model.resolve(): exact cache hit by modelFileId or schemaName+modelName, else the DB row for
136
- * that scope (instantiating the Model), and only then the name-only fallback.
172
+ * that scope (instantiating the Model), and only then the name-only fallback. Takes no hold.
137
173
  */
138
174
  static resolveAsync(modelName: string | undefined, scope?: {
139
175
  modelFileId?: string | null;
@@ -145,7 +181,7 @@ export declare class Model {
145
181
  *
146
182
  * @param modelName - The name of the model
147
183
  * @param schemaName - Optional schema name (will query DB if not provided)
148
- * @returns The Model instance if found, undefined otherwise
184
+ * @returns The Model instance if found, undefined otherwise. Takes a hold unless `hold: false`.
149
185
  */
150
186
  static getByNameAsync(modelName: string, schemaName?: string, options?: {
151
187
  /**
@@ -153,6 +189,8 @@ export declare class Model {
153
189
  * schema since then makes this return undefined instead of re-creating the model. Defaults to now.
154
190
  */
155
191
  evictionEpoch?: number;
192
+ /** @internal `hold: false` as for `create` */
193
+ hold?: false;
156
194
  }): Promise<Model | undefined>;
157
195
  /**
158
196
  * Create or get Model instance by modelFileId
@@ -168,6 +206,8 @@ export declare class Model {
168
206
  * of re-creating the model. Defaults to now.
169
207
  */
170
208
  evictionEpoch?: number;
209
+ /** @internal `hold: false` as for `create` */
210
+ hold?: false;
171
211
  }): Promise<Model | undefined>;
172
212
  /**
173
213
  * Find Model instance by modelFileId, modelName/schemaName, or both
@@ -194,7 +234,8 @@ export declare class Model {
194
234
  * Get all Model instances, optionally filtered by schema.
195
235
  * When DB is available, loads from DB via getModelsData; otherwise returns from cache.
196
236
  * With waitForReady, waits for each model to be ready (idle, with any properties from Model.create
197
- * created) and leaves out models that error or time out.
237
+ * created) and leaves out models that error or time out. Takes no holds: a caller that keeps a
238
+ * model uses `Model.find` or `Model.create`.
198
239
  */
199
240
  static all(schemaName?: string, options?: {
200
241
  waitForReady?: boolean;