@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.
- package/dist/{ClientManager-2GtDWHq6.js → ClientManager-Dcju5x4k.js} +835 -80
- package/dist/ClientManager-Dcju5x4k.js.map +1 -0
- package/dist/{Item-D6j0IvBP.js → Item-DZfNz7xl.js} +2145 -1354
- package/dist/Item-DZfNz7xl.js.map +1 -0
- package/dist/{ModelProperty-B52C3CQ2.js → ModelProperty-sMGL-_LK.js} +51 -52
- package/dist/ModelProperty-sMGL-_LK.js.map +1 -0
- package/dist/{Schema-O1QLoXv6.js → Schema-D-TczaIj.js} +106 -91
- package/dist/Schema-D-TczaIj.js.map +1 -0
- package/dist/{SchemaValidationService-BxCbfDaI.js → SchemaValidationService-NYTtSCxd.js} +6 -6
- package/dist/{SchemaValidationService-BxCbfDaI.js.map → SchemaValidationService-NYTtSCxd.js.map} +1 -1
- package/dist/{backfillMetadataPropertyIds-CzSbuucw.js → backfillMetadataPropertyIds-DEvD0OAT.js} +3 -3
- package/dist/{backfillMetadataPropertyIds-CzSbuucw.js.map → backfillMetadataPropertyIds-DEvD0OAT.js.map} +1 -1
- package/dist/{configurePlatform-Bbpw_R4y.js → configurePlatform-CtA7fydC.js} +2 -2
- package/dist/{configurePlatform-Bbpw_R4y.js.map → configurePlatform-CtA7fydC.js.map} +1 -1
- package/dist/db/drizzle/0020_add_pending_writes.sql +24 -0
- package/dist/db/drizzle/0021_add_pending_write_error_name.sql +1 -0
- package/dist/db/drizzle/meta/0020_snapshot.json +1542 -0
- package/dist/db/drizzle/meta/0021_snapshot.json +1549 -0
- package/dist/db/drizzle/meta/_journal.json +14 -0
- package/dist/{detachRowsBeforeDelete-D1TyEMco.js → detachRowsBeforeDelete-CLbBbpX4.js} +2 -2
- package/dist/{detachRowsBeforeDelete-D1TyEMco.js.map → detachRowsBeforeDelete-CLbBbpX4.js.map} +1 -1
- package/dist/dist/{ClientManager-2GtDWHq6.d.ts → ClientManager-Dcju5x4k.d.ts} +393 -292
- package/dist/dist/ClientManager-Dcju5x4k.d.ts.map +1 -0
- package/dist/dist/{Item-D6j0IvBP.d.ts → Item-DZfNz7xl.d.ts} +456 -266
- package/dist/dist/Item-DZfNz7xl.d.ts.map +1 -0
- package/dist/dist/{ModelProperty-B52C3CQ2.d.ts → ModelProperty-sMGL-_LK.d.ts} +1 -1
- package/dist/dist/{ModelProperty-B52C3CQ2.d.ts.map → ModelProperty-sMGL-_LK.d.ts.map} +1 -1
- package/dist/dist/{Schema-O1QLoXv6.d.ts → Schema-D-TczaIj.d.ts} +11 -4
- package/dist/dist/Schema-D-TczaIj.d.ts.map +1 -0
- package/dist/dist/{SchemaValidationService-BxCbfDaI.d.ts → SchemaValidationService-NYTtSCxd.d.ts} +1 -1
- package/dist/dist/{SchemaValidationService-BxCbfDaI.d.ts.map → SchemaValidationService-NYTtSCxd.d.ts.map} +1 -1
- package/dist/dist/{backfillMetadataPropertyIds-CzSbuucw.d.ts → backfillMetadataPropertyIds-DEvD0OAT.d.ts} +1 -1
- package/dist/dist/backfillMetadataPropertyIds-DEvD0OAT.d.ts.map +1 -0
- package/dist/dist/{configurePlatform-Bbpw_R4y.d.ts → configurePlatform-CtA7fydC.d.ts} +1 -1
- package/dist/dist/configurePlatform-CtA7fydC.d.ts.map +1 -0
- package/dist/dist/{detachRowsBeforeDelete-D1TyEMco.d.ts → detachRowsBeforeDelete-CLbBbpX4.d.ts} +1 -1
- package/dist/dist/detachRowsBeforeDelete-CLbBbpX4.d.ts.map +1 -0
- package/dist/dist/{eas-DOdj-EMK.d.ts → eas-CcpQiXum.d.ts} +1 -1
- package/dist/dist/eas-CcpQiXum.d.ts.map +1 -0
- package/dist/dist/{errors-KM-yq2MD.d.ts → errors-BGk_IJO5.d.ts} +39 -24
- package/dist/dist/errors-BGk_IJO5.d.ts.map +1 -0
- package/dist/dist/{getItem-Bh0zv-o1.d.ts → getItem-CHSX3aMm.d.ts} +1 -1
- package/dist/dist/getItem-CHSX3aMm.d.ts.map +1 -0
- package/dist/dist/{getPublishPayload-oH8wJhnH.d.ts → getPublishPayload-DMd4oLir.d.ts} +1 -1
- package/dist/dist/getPublishPayload-DMd4oLir.d.ts.map +1 -0
- package/dist/dist/{getPublishUploads-Cex-NBe6.d.ts → getPublishUploads-C9FnRG9c.d.ts} +1 -1
- package/dist/dist/{getPublishUploads-Cex-NBe6.d.ts.map → getPublishUploads-C9FnRG9c.d.ts.map} +1 -1
- package/dist/dist/{index-BbFwftAv.d.ts → index-C--KAWoe.d.ts} +378 -1
- package/dist/dist/{index-BbFwftAv.d.ts.map → index-C--KAWoe.d.ts.map} +1 -1
- package/dist/dist/{index-DpgQMIRq.d.ts → index-CI0NFf4B.d.ts} +836 -426
- package/dist/dist/index-CI0NFf4B.d.ts.map +1 -0
- package/dist/dist/{index-BAao3_Po.d.ts → index-Ccmd9_KY.d.ts} +5 -5
- package/dist/dist/index-Ccmd9_KY.d.ts.map +1 -0
- package/dist/dist/index-l3b6p1Ih.d.ts +14 -0
- package/dist/dist/index-l3b6p1Ih.d.ts.map +1 -0
- package/dist/dist/{index.browser-nndbVM7z.d.ts → index.browser-kY8M-xUA.d.ts} +2892 -1754
- package/dist/dist/{index.browser-nndbVM7z.d.ts.map → index.browser-kY8M-xUA.d.ts.map} +1 -1
- package/dist/dist/{index.node-BUfx-JaP.d.ts → index.node-Ba2KbmOq.d.ts} +4125 -2613
- package/dist/dist/{index.node-BUfx-JaP.d.ts.map → index.node-Ba2KbmOq.d.ts.map} +1 -1
- package/dist/dist/platform.browser.d.ts +2 -2
- package/dist/dist/platform.node.d.ts +2 -2
- package/dist/dist/{property-BDBvImLs.d.ts → property-CO7pKTWK.d.ts} +3 -3
- package/dist/dist/property-CO7pKTWK.d.ts.map +1 -0
- package/dist/dist/{propertyValidationRules-BlfLn4rP.d.ts → propertyValidationRules-D5HZy0Bq.d.ts} +1 -1
- package/dist/dist/propertyValidationRules-D5HZy0Bq.d.ts.map +1 -0
- package/dist/dist/{publishDraftGraph-CLO85LLz.d.ts → publishDraftGraph-B5KPqtbg.d.ts} +1 -1
- package/dist/dist/{publishDraftGraph-CLO85LLz.d.ts.map → publishDraftGraph-B5KPqtbg.d.ts.map} +1 -1
- package/dist/dist/{resetAmbiguousLegacyItemData-Cy8ik7xk.d.ts → resetAmbiguousLegacyItemData-77CZ8HT7.d.ts} +1 -1
- package/dist/dist/resetAmbiguousLegacyItemData-77CZ8HT7.d.ts.map +1 -0
- package/dist/dist/{resolveModelForSyncedSeed-DFr4COc4.d.ts → resolveModelForSyncedSeed-DHOq_FGs.d.ts} +1 -1
- package/dist/dist/resolveModelForSyncedSeed-DHOq_FGs.d.ts.map +1 -0
- package/dist/dist/{syncDbWithEas-CAOlw3i-.d.ts → syncDbWithEas-BZ6AI-IC.d.ts} +1 -1
- package/dist/dist/syncDbWithEas-BZ6AI-IC.d.ts.map +1 -0
- package/dist/dist/{tabEvents-DksXwk3X.d.ts → tabEvents-CIlzHSKZ.d.ts} +35 -18
- package/dist/dist/tabEvents-CIlzHSKZ.d.ts.map +1 -0
- package/dist/dist/{tolerantWebAccess-CEIjFGf0.d.ts → tolerantWebAccess-BwJ8bElF.d.ts} +1 -1
- package/dist/dist/{tolerantWebAccess-CEIjFGf0.d.ts.map → tolerantWebAccess-BwJ8bElF.d.ts.map} +1 -1
- package/dist/dist/{updateSeedRevokedAt-Cjr35YjE.d.ts → updateSeedRevokedAt-ClxMSXcB.d.ts} +1 -1
- package/dist/dist/updateSeedRevokedAt-ClxMSXcB.d.ts.map +1 -0
- package/dist/{eas-DOdj-EMK.js → eas-CcpQiXum.js} +4 -4
- package/dist/{eas-DOdj-EMK.js.map → eas-CcpQiXum.js.map} +1 -1
- package/dist/{errors-KM-yq2MD.js → errors-BGk_IJO5.js} +222 -275
- package/dist/errors-BGk_IJO5.js.map +1 -0
- package/dist/{getItem-Bh0zv-o1.js → getItem-CHSX3aMm.js} +5 -5
- package/dist/{getItem-Bh0zv-o1.js.map → getItem-CHSX3aMm.js.map} +1 -1
- package/dist/{getPublishPayload-oH8wJhnH.js → getPublishPayload-DMd4oLir.js} +18 -15
- package/dist/getPublishPayload-DMd4oLir.js.map +1 -0
- package/dist/{getPublishUploads-Cex-NBe6.js → getPublishUploads-C9FnRG9c.js} +9 -6
- package/dist/getPublishUploads-C9FnRG9c.js.map +1 -0
- package/dist/{index-BbFwftAv.js → index-C--KAWoe.js} +3 -2
- package/dist/index-C--KAWoe.js.map +1 -0
- package/dist/{index-DpgQMIRq.js → index-CI0NFf4B.js} +132 -9
- package/dist/index-CI0NFf4B.js.map +1 -0
- package/dist/{index-BAao3_Po.js → index-Ccmd9_KY.js} +8 -8
- package/dist/index-Ccmd9_KY.js.map +1 -0
- package/dist/index-l3b6p1Ih.js +28 -0
- package/dist/index-l3b6p1Ih.js.map +1 -0
- package/dist/{index.browser-nndbVM7z.js → index.browser-kY8M-xUA.js} +284 -73
- package/dist/index.browser-kY8M-xUA.js.map +1 -0
- package/dist/{index.node-BUfx-JaP.js → index.node-Ba2KbmOq.js} +93 -6
- package/dist/index.node-Ba2KbmOq.js.map +1 -0
- package/dist/main.js +84 -26
- package/dist/main.js.map +1 -1
- package/dist/node.js +11 -11
- package/dist/platform.browser.js +5 -5
- package/dist/platform.node.js +4 -4
- package/dist/{property-BDBvImLs.js → property-CO7pKTWK.js} +9 -11
- package/dist/property-CO7pKTWK.js.map +1 -0
- package/dist/{propertyValidationRules-BlfLn4rP.js → propertyValidationRules-D5HZy0Bq.js} +10 -10
- package/dist/{propertyValidationRules-BlfLn4rP.js.map → propertyValidationRules-D5HZy0Bq.js.map} +1 -1
- package/dist/{publishDraftGraph-CLO85LLz.js → publishDraftGraph-B5KPqtbg.js} +6 -6
- package/dist/{publishDraftGraph-CLO85LLz.js.map → publishDraftGraph-B5KPqtbg.js.map} +1 -1
- package/dist/{resetAmbiguousLegacyItemData-Cy8ik7xk.js → resetAmbiguousLegacyItemData-77CZ8HT7.js} +2 -2
- package/dist/{resetAmbiguousLegacyItemData-Cy8ik7xk.js.map → resetAmbiguousLegacyItemData-77CZ8HT7.js.map} +1 -1
- package/dist/{resolveModelForSyncedSeed-DFr4COc4.js → resolveModelForSyncedSeed-DHOq_FGs.js} +2 -2
- package/dist/{resolveModelForSyncedSeed-DFr4COc4.js.map → resolveModelForSyncedSeed-DHOq_FGs.js.map} +1 -1
- package/dist/seedSchema/PendingWriteSchema.ts +57 -0
- package/dist/seedSchema/index.ts +1 -0
- package/dist/src/Item/Item.d.ts +38 -7
- package/dist/src/Item/Item.d.ts.map +1 -1
- package/dist/src/Item/service/itemMachineSingle.d.ts.map +1 -1
- package/dist/src/ItemProperty/ItemProperty.d.ts +66 -9
- package/dist/src/ItemProperty/ItemProperty.d.ts.map +1 -1
- package/dist/src/ItemProperty/service/actors/hydrateFromDb.d.ts.map +1 -1
- package/dist/src/ItemProperty/service/actors/loadOrCreateProperty.d.ts.map +1 -1
- package/dist/src/ItemProperty/service/actors/saveValueToDb/analyzeInput.d.ts.map +1 -1
- package/dist/src/ItemProperty/service/actors/saveValueToDb/saveFile.d.ts.map +1 -1
- package/dist/src/ItemProperty/service/actors/saveValueToDb/saveHtml.d.ts.map +1 -1
- package/dist/src/ItemProperty/service/actors/saveValueToDb/saveImage.d.ts.map +1 -1
- package/dist/src/ItemProperty/service/actors/saveValueToDb/saveItemStorage.d.ts +5 -0
- package/dist/src/ItemProperty/service/actors/saveValueToDb/saveItemStorage.d.ts.map +1 -1
- package/dist/src/ItemProperty/service/actors/saveValueToDb/storageValue.d.ts +22 -0
- package/dist/src/ItemProperty/service/actors/saveValueToDb/storageValue.d.ts.map +1 -0
- package/dist/src/ItemProperty/service/propertyMachine.d.ts.map +1 -1
- package/dist/src/Model/Model.d.ts +50 -9
- package/dist/src/Model/Model.d.ts.map +1 -1
- package/dist/src/Model/service/actors/validateModel.d.ts.map +1 -1
- package/dist/src/ModelProperty/ModelProperty.d.ts.map +1 -1
- package/dist/src/ModelProperty/service/actors/compareAndMarkDraft.d.ts.map +1 -1
- package/dist/src/ModelProperty/service/actors/validateProperty.d.ts.map +1 -1
- package/dist/src/Schema/Schema.d.ts +22 -3
- package/dist/src/Schema/Schema.d.ts.map +1 -1
- package/dist/src/Schema/service/actors/checkExistingSchema.d.ts.map +1 -1
- package/dist/src/Schema/service/actors/createModelInstances.d.ts.map +1 -1
- package/dist/src/Schema/service/actors/loadOrCreateSchema.d.ts.map +1 -1
- package/dist/src/browser/db/Db.d.ts +7 -0
- package/dist/src/browser/db/Db.d.ts.map +1 -1
- package/dist/src/browser/db/drizzleFiles.d.ts +4 -2
- package/dist/src/browser/db/drizzleFiles.d.ts.map +1 -1
- package/dist/src/browser/db/sqliteBusyRetry.d.ts.map +1 -1
- package/dist/src/browser/helpers/EasClient.d.ts +1 -1
- package/dist/src/browser/helpers/EasClient.d.ts.map +1 -1
- package/dist/src/browser/helpers/FileManager.d.ts.map +1 -1
- package/dist/src/client/ClientManager.d.ts +13 -0
- package/dist/src/client/ClientManager.d.ts.map +1 -1
- package/dist/src/client/actors/saveConfig.d.ts.map +1 -1
- package/dist/src/client/addressesPersisted.d.ts +10 -0
- package/dist/src/client/addressesPersisted.d.ts.map +1 -0
- package/dist/src/client/clientManagerMachine.d.ts.map +1 -1
- package/dist/src/db/Db/BaseDb.d.ts +10 -0
- package/dist/src/db/Db/BaseDb.d.ts.map +1 -1
- package/dist/src/db/read/getItemProperties.d.ts.map +1 -1
- package/dist/src/db/read/getPublishPayload.d.ts.map +1 -1
- package/dist/src/db/read/getPublishUploads.d.ts.map +1 -1
- package/dist/src/db/read/getSeedData.d.ts +4 -1
- package/dist/src/db/read/getSeedData.d.ts.map +1 -1
- package/dist/src/db/read/getSeedPublisher.d.ts +4 -1
- package/dist/src/db/read/getSeedPublisher.d.ts.map +1 -1
- package/dist/src/db/read/getVersionData.d.ts +4 -1
- package/dist/src/db/read/getVersionData.d.ts.map +1 -1
- package/dist/src/db/write/claimUnpublishedDrafts.d.ts +6 -0
- package/dist/src/db/write/claimUnpublishedDrafts.d.ts.map +1 -1
- package/dist/src/db/write/createMetadata.d.ts +13 -0
- package/dist/src/db/write/createMetadata.d.ts.map +1 -1
- package/dist/src/db/write/createNewItem.d.ts +5 -0
- package/dist/src/db/write/createNewItem.d.ts.map +1 -1
- package/dist/src/db/write/createSeed.d.ts +20 -1
- package/dist/src/db/write/createSeed.d.ts.map +1 -1
- package/dist/src/db/write/createVersion.d.ts +5 -1
- package/dist/src/db/write/createVersion.d.ts.map +1 -1
- package/dist/src/db/write/removeLocalCopiesForAddresses.d.ts +9 -2
- package/dist/src/db/write/removeLocalCopiesForAddresses.d.ts.map +1 -1
- package/dist/src/db/write/updateItemPropertyValue.d.ts +9 -1
- package/dist/src/db/write/updateItemPropertyValue.d.ts.map +1 -1
- package/dist/src/db/write/updateMetadata.d.ts +8 -1
- package/dist/src/db/write/updateMetadata.d.ts.map +1 -1
- package/dist/src/events/item/syncDbWithEas.d.ts.map +1 -1
- package/dist/src/helpers/db.d.ts +4 -2
- package/dist/src/helpers/db.d.ts.map +1 -1
- package/dist/src/helpers/entity/entityCache.d.ts +2 -42
- package/dist/src/helpers/entity/entityCache.d.ts.map +1 -1
- package/dist/src/helpers/entity/entityCommon.d.ts +9 -0
- package/dist/src/helpers/entity/entityCommon.d.ts.map +1 -1
- package/dist/src/helpers/entity/entityDestroy.d.ts +13 -7
- package/dist/src/helpers/entity/entityDestroy.d.ts.map +1 -1
- package/dist/src/helpers/entity/entityLiveQuery.d.ts +3 -2
- package/dist/src/helpers/entity/entityLiveQuery.d.ts.map +1 -1
- package/dist/src/helpers/entity/entityState.d.ts +28 -0
- package/dist/src/helpers/entity/entityState.d.ts.map +1 -0
- package/dist/src/helpers/entity/entityUnload.d.ts +3 -2
- package/dist/src/helpers/entity/entityUnload.d.ts.map +1 -1
- package/dist/src/helpers/entity/index.d.ts +1 -0
- package/dist/src/helpers/entity/index.d.ts.map +1 -1
- package/dist/src/helpers/itemStorageFile.d.ts +7 -0
- package/dist/src/helpers/itemStorageFile.d.ts.map +1 -1
- package/dist/src/helpers/metadataPropertyNames.d.ts +6 -0
- package/dist/src/helpers/metadataPropertyNames.d.ts.map +1 -1
- package/dist/src/helpers/property.d.ts.map +1 -1
- package/dist/src/helpers/propertySchemaUid.d.ts +13 -0
- package/dist/src/helpers/propertySchemaUid.d.ts.map +1 -0
- package/dist/src/helpers/propertyWriteTickets.d.ts +11 -0
- package/dist/src/helpers/propertyWriteTickets.d.ts.map +1 -0
- package/dist/src/helpers/reactiveProxy.d.ts +18 -0
- package/dist/src/helpers/reactiveProxy.d.ts.map +1 -1
- package/dist/src/helpers/sessionObjectUrls.d.ts +4 -0
- package/dist/src/helpers/sessionObjectUrls.d.ts.map +1 -0
- package/dist/src/helpers/tabCoordinator.d.ts +9 -0
- package/dist/src/helpers/tabCoordinator.d.ts.map +1 -1
- package/dist/src/helpers/tabLocks.d.ts +11 -0
- package/dist/src/helpers/tabLocks.d.ts.map +1 -1
- package/dist/src/helpers/timing.d.ts +10 -0
- package/dist/src/helpers/timing.d.ts.map +1 -0
- package/dist/src/imports/json.d.ts.map +1 -1
- package/dist/src/index.d.ts +1 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/interfaces/IDb.d.ts +2 -0
- package/dist/src/interfaces/IDb.d.ts.map +1 -1
- package/dist/src/interfaces/IItem.d.ts +1 -0
- package/dist/src/interfaces/IItem.d.ts.map +1 -1
- package/dist/src/interfaces/IItemProperty.d.ts +5 -0
- package/dist/src/interfaces/IItemProperty.d.ts.map +1 -1
- package/dist/src/node/db/Db.d.ts +3 -0
- package/dist/src/node/db/Db.d.ts.map +1 -1
- package/dist/src/node/db/singleConnectionTransactions.d.ts +22 -0
- package/dist/src/node/db/singleConnectionTransactions.d.ts.map +1 -0
- package/dist/src/outbox/conflicts.d.ts +60 -0
- package/dist/src/outbox/conflicts.d.ts.map +1 -0
- package/dist/src/outbox/index.d.ts +9 -0
- package/dist/src/outbox/index.d.ts.map +1 -0
- package/dist/src/outbox/itemAppliers.d.ts +153 -0
- package/dist/src/outbox/itemAppliers.d.ts.map +1 -0
- package/dist/src/outbox/outbox.d.ts +143 -0
- package/dist/src/outbox/outbox.d.ts.map +1 -0
- package/dist/src/outbox/pendingValues.d.ts +27 -0
- package/dist/src/outbox/pendingValues.d.ts.map +1 -0
- package/dist/src/seedSchema/PendingWriteSchema.d.ts +385 -0
- package/dist/src/seedSchema/PendingWriteSchema.d.ts.map +1 -0
- package/dist/src/seedSchema/index.d.ts +1 -0
- package/dist/src/seedSchema/index.d.ts.map +1 -1
- package/dist/src/types/property.d.ts +5 -0
- package/dist/src/types/property.d.ts.map +1 -1
- package/dist/{syncDbWithEas-CAOlw3i-.js → syncDbWithEas-BZ6AI-IC.js} +25 -20
- package/dist/syncDbWithEas-BZ6AI-IC.js.map +1 -0
- package/dist/{tabEvents-DksXwk3X.js → tabEvents-CIlzHSKZ.js} +56 -25
- package/dist/tabEvents-CIlzHSKZ.js.map +1 -0
- package/dist/{tolerantWebAccess-CEIjFGf0.js → tolerantWebAccess-BwJ8bElF.js} +6 -6
- package/dist/{tolerantWebAccess-CEIjFGf0.js.map → tolerantWebAccess-BwJ8bElF.js.map} +1 -1
- package/dist/{updateSeedRevokedAt-Cjr35YjE.js → updateSeedRevokedAt-ClxMSXcB.js} +3 -3
- package/dist/{updateSeedRevokedAt-Cjr35YjE.js.map → updateSeedRevokedAt-ClxMSXcB.js.map} +1 -1
- package/package.json +7 -7
- package/dist/ClientManager-2GtDWHq6.js.map +0 -1
- package/dist/Item-D6j0IvBP.js.map +0 -1
- package/dist/ModelProperty-B52C3CQ2.js.map +0 -1
- package/dist/Schema-O1QLoXv6.js.map +0 -1
- package/dist/discardNewDraft-hiVaUVjV.js +0 -78
- package/dist/discardNewDraft-hiVaUVjV.js.map +0 -1
- package/dist/dist/ClientManager-2GtDWHq6.d.ts.map +0 -1
- package/dist/dist/Item-D6j0IvBP.d.ts.map +0 -1
- package/dist/dist/Schema-O1QLoXv6.d.ts.map +0 -1
- package/dist/dist/backfillMetadataPropertyIds-CzSbuucw.d.ts.map +0 -1
- package/dist/dist/configurePlatform-Bbpw_R4y.d.ts.map +0 -1
- package/dist/dist/detachRowsBeforeDelete-D1TyEMco.d.ts.map +0 -1
- package/dist/dist/discardNewDraft-hiVaUVjV.d.ts +0 -8
- package/dist/dist/discardNewDraft-hiVaUVjV.d.ts.map +0 -1
- package/dist/dist/eas-DOdj-EMK.d.ts.map +0 -1
- package/dist/dist/errors-KM-yq2MD.d.ts.map +0 -1
- package/dist/dist/getItem-Bh0zv-o1.d.ts.map +0 -1
- package/dist/dist/getPublishPayload-oH8wJhnH.d.ts.map +0 -1
- package/dist/dist/index-BAao3_Po.d.ts.map +0 -1
- package/dist/dist/index-DpgQMIRq.d.ts.map +0 -1
- package/dist/dist/property-BDBvImLs.d.ts.map +0 -1
- package/dist/dist/propertyValidationRules-BlfLn4rP.d.ts.map +0 -1
- package/dist/dist/resetAmbiguousLegacyItemData-Cy8ik7xk.d.ts.map +0 -1
- package/dist/dist/resolveModelForSyncedSeed-DFr4COc4.d.ts.map +0 -1
- package/dist/dist/syncDbWithEas-CAOlw3i-.d.ts.map +0 -1
- package/dist/dist/tabEvents-DksXwk3X.d.ts.map +0 -1
- package/dist/dist/updateSeedRevokedAt-Cjr35YjE.d.ts.map +0 -1
- package/dist/errors-KM-yq2MD.js.map +0 -1
- package/dist/getPublishPayload-oH8wJhnH.js.map +0 -1
- package/dist/getPublishUploads-Cex-NBe6.js.map +0 -1
- package/dist/index-BAao3_Po.js.map +0 -1
- package/dist/index-BbFwftAv.js.map +0 -1
- package/dist/index-DpgQMIRq.js.map +0 -1
- package/dist/index.browser-nndbVM7z.js.map +0 -1
- package/dist/index.node-BUfx-JaP.js.map +0 -1
- package/dist/property-BDBvImLs.js.map +0 -1
- package/dist/src/db/write/discardNewDraft.d.ts +0 -8
- package/dist/src/db/write/discardNewDraft.d.ts.map +0 -1
- package/dist/src/helpers/propertyWriteQueue.d.ts +0 -15
- package/dist/src/helpers/propertyWriteQueue.d.ts.map +0 -1
- package/dist/syncDbWithEas-CAOlw3i-.js.map +0 -1
- package/dist/tabEvents-DksXwk3X.js.map +0 -1
package/dist/{resolveModelForSyncedSeed-DFr4COc4.js → resolveModelForSyncedSeed-DHOq_FGs.js}
RENAMED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import debug from 'debug';
|
|
2
|
-
import { H as AmbiguousModelError, I as eventEmitter } from './index-
|
|
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-
|
|
46
|
+
//# sourceMappingURL=resolveModelForSyncedSeed-DHOq_FGs.js.map
|
package/dist/{resolveModelForSyncedSeed-DFr4COc4.js.map → resolveModelForSyncedSeed-DHOq_FGs.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolveModelForSyncedSeed-
|
|
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>
|
package/dist/seedSchema/index.ts
CHANGED
package/dist/src/Item/Item.d.ts
CHANGED
|
@@ -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
|
-
/**
|
|
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":"AAAA,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;
|
|
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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+
|
|
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
|
-
|
|
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
|
-
/**
|
|
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
|
|
143
|
-
*
|
|
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":"AAAA,OAAO,EAAE,YAAY,EAA6B,YAAY,EAAW,MAAM,QAAQ,CAAA;AACvF,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,MAAM,CAAA;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC1D,OAAO,EAAE,2BAA2B,EAAE,sBAAsB,EAAsC,MAAM,SAAS,CAAA;AACjH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAA;AAI7D,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;
|
|
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":"
|
|
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":"
|
|
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;
|
|
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;
|
|
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;
|
|
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;
|
|
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;
|
|
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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+
|
|
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
|
-
*
|
|
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
|
-
/**
|
|
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;
|