@seedprotocol/sdk 0.1.128 → 0.2.0
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/bin.js +1 -1
- package/dist/bin.js.map +1 -1
- package/dist/constants-B6s6tGup.js.map +1 -1
- package/dist/{index-Bonkz33x.js → index-B5qzD-bs.js} +13 -16
- package/dist/index-B5qzD-bs.js.map +1 -0
- package/dist/{index-CSWCwkb_.js → index-DaK2dz5P.js} +2935 -3005
- package/dist/index-DaK2dz5P.js.map +1 -0
- package/dist/main.js +10 -13
- package/dist/main.js.map +1 -1
- package/dist/{seed.schema.config-CRQPn2Sv.js → seed.schema.config-DIMmvqJf.js} +11 -14
- package/dist/seed.schema.config-DIMmvqJf.js.map +1 -0
- package/dist/shared/configs/browser.seed.db.config.ts +1 -1
- package/dist/src/ArweaveClientWeb.ts +13 -0
- package/dist/src/BaseArweaveClient.ts +13 -0
- package/dist/src/BaseDb.ts +31 -0
- package/dist/src/BaseEasClient.ts +13 -0
- package/dist/src/BaseFileManager.ts +11 -0
- package/dist/src/BaseItem.ts +397 -0
- package/dist/src/BaseItemProperty.ts +415 -0
- package/dist/src/BaseQueryClient.ts +13 -0
- package/dist/src/Db.ts +8 -0
- package/dist/src/EasClientWeb.ts +13 -0
- package/dist/src/FileManagerWeb.ts +18 -0
- package/dist/src/IDb.ts +7 -0
- package/dist/src/IEasClient.ts +2 -0
- package/dist/src/IItem.ts +21 -0
- package/dist/src/IItemProperty.ts +27 -0
- package/dist/src/IQueryClient.ts +4 -0
- package/dist/src/Item.ts +12 -0
- package/dist/src/ItemProperty.ts +8 -448
- package/dist/src/QueryClientWeb.ts +20 -0
- package/dist/src/SeedProtocolSdk.d.ts +34 -0
- package/dist/src/addModelsToDb.ts +10 -8
- package/dist/src/allItems.ts +2 -2
- package/dist/src/analyzeInput.ts +3 -3
- package/dist/src/browser.seed.db.config.ts +1 -1
- package/dist/src/checkStatus.ts +1 -1
- package/dist/src/client.ts +6 -6
- package/dist/src/configureFs.ts +4 -4
- package/dist/src/connectToDb.ts +16 -49
- package/dist/src/createMetadata.ts +4 -4
- package/dist/src/createNewItem.ts +57 -0
- package/dist/src/createSeed.ts +31 -0
- package/dist/src/createSeeds.ts +3 -3
- package/dist/src/createVersion.ts +4 -4
- package/dist/src/dbMachine.ts +4 -4
- package/dist/src/deleteItem.ts +3 -3
- package/dist/src/download.ts +18 -14
- package/dist/src/drizzle.ts +1 -1
- package/dist/src/eas.ts +2 -2
- package/dist/src/fetchDataFromEas.ts +9 -5
- package/dist/src/fetchRelatedItems.ts +11 -7
- package/dist/src/fetchSeeds.ts +8 -4
- package/dist/src/fetchVersions.ts +9 -4
- package/dist/src/getExistingItem.ts +60 -0
- package/dist/src/getItem.ts +3 -118
- package/dist/src/getItemData.ts +99 -0
- package/dist/src/getItemProperties.ts +14 -14
- package/dist/src/getItemProperty.ts +3 -3
- package/dist/src/getItems.ts +3 -3
- package/dist/src/getMetadata.ts +5 -5
- package/dist/src/getModelSchemas.ts +15 -14
- package/dist/src/getPropertyData.ts +50 -0
- package/dist/src/getPublishPayload.ts +88 -96
- package/dist/src/getPublishUploads.ts +12 -31
- package/dist/src/getRelationValueData.ts +27 -0
- package/dist/src/getSchemaForItemProperty.ts +6 -4
- package/dist/src/getSchemaUidForModel.ts +7 -2
- package/dist/src/getSeedData.ts +3 -3
- package/dist/src/getSegmentedItemProperties.ts +3 -3
- package/dist/src/getStorageTransactionIdForSeedUid.ts +38 -0
- package/dist/src/getVersionData.ts +3 -3
- package/dist/src/globalMachine.ts +7 -7
- package/dist/src/helpers.ts +5 -2
- package/dist/src/hydrateExistingItem.ts +1 -1
- package/dist/src/hydrateFromDb.ts +4 -13
- package/dist/src/hydrateNewItem.ts +2 -2
- package/dist/src/index.d.ts +2 -2
- package/dist/src/initialize.ts +240 -90
- package/dist/src/internalMachine.ts +6 -6
- package/dist/src/itemMachineAll.ts +1 -1
- package/dist/src/itemMachineSingle.ts +2 -2
- package/dist/src/loadAppDb.ts +1 -1
- package/dist/src/logger.ts +1 -1
- package/dist/src/machine.ts +1 -1
- package/dist/src/migrate.ts +3 -3
- package/dist/src/prepareDb.ts +10 -21
- package/dist/src/preparePublishRequestData.ts +4 -4
- package/dist/src/processItems.ts +2 -2
- package/dist/src/property.ts +4 -3
- package/dist/src/propertyMachine.ts +8 -8
- package/dist/src/publish.ts +1 -1
- package/dist/src/publishMachine.ts +4 -4
- package/dist/src/queries.ts +28 -7
- package/dist/src/recoverDeletedItem.ts +4 -4
- package/dist/src/request.ts +1 -1
- package/dist/src/requestAll.ts +2 -2
- package/dist/src/resolveRelatedValue.ts +3 -5
- package/dist/src/saveAppState.ts +3 -3
- package/dist/src/saveConfig.ts +5 -5
- package/dist/src/saveDataToDb.ts +5 -5
- package/dist/src/saveImageSrc.ts +10 -9
- package/dist/src/saveItemStorage.ts +7 -7
- package/dist/src/saveMetadata.ts +3 -3
- package/dist/src/savePublishService.ts +1 -1
- package/dist/src/saveRelation.ts +1 -1
- package/dist/src/seedProtocol.ts +1 -1
- package/dist/src/services.ts +6 -6
- package/dist/src/sqlWasmClient.ts +1 -1
- package/dist/src/syncDbWithEas.ts +24 -20
- package/dist/src/trash.ts +2 -2
- package/dist/src/updateItemPropertyValue.ts +5 -5
- package/dist/src/updateMetadata.ts +3 -3
- package/dist/src/upload.ts +1 -1
- package/dist/src/validate.ts +1 -1
- package/dist/src/validateInput.ts +2 -2
- package/dist/src/versionData.ts +3 -3
- package/dist/src/waitForDb.ts +19 -19
- package/dist/src/waitForFiles.ts +1 -1
- package/dist/types/src/Item/BaseItem.d.ts +41 -0
- package/dist/types/src/Item/BaseItem.d.ts.map +1 -0
- package/dist/types/src/{browser/item → Item}/queries.d.ts +3 -3
- package/dist/types/src/Item/queries.d.ts.map +1 -0
- package/dist/types/src/Item/service/actors/fetchDataFromEas.d.ts +3 -0
- package/dist/types/src/Item/service/actors/fetchDataFromEas.d.ts.map +1 -0
- package/dist/types/src/Item/service/actors/hydrateExistingItem.d.ts.map +1 -0
- package/dist/types/src/Item/service/actors/hydrateNewItem.d.ts.map +1 -0
- package/dist/types/src/Item/service/actors/initialize.d.ts +3 -0
- package/dist/types/src/Item/service/actors/initialize.d.ts.map +1 -0
- package/dist/types/src/Item/service/actors/reload.d.ts.map +1 -0
- package/dist/types/src/Item/service/actors/saveDataToDb.d.ts.map +1 -0
- package/dist/types/src/Item/service/actors/waitForDb.d.ts.map +1 -0
- package/dist/types/src/Item/service/itemMachineSingle.d.ts.map +1 -0
- package/dist/types/src/{browser/property/ItemProperty.d.ts → ItemProperty/BaseItemProperty.d.ts} +28 -21
- package/dist/types/src/ItemProperty/BaseItemProperty.d.ts.map +1 -0
- package/dist/types/src/ItemProperty/service/actors/hydrateFromDb.d.ts.map +1 -0
- package/dist/types/src/ItemProperty/service/actors/index.d.ts.map +1 -0
- package/dist/types/src/ItemProperty/service/actors/initialize.d.ts.map +1 -0
- package/dist/types/src/ItemProperty/service/actors/resolveRelatedValue.d.ts.map +1 -0
- package/dist/types/src/ItemProperty/service/actors/resolveRemoteStorage.d.ts.map +1 -0
- package/dist/types/src/ItemProperty/service/actors/saveValueToDb/analyzeInput.d.ts.map +1 -0
- package/dist/types/src/ItemProperty/service/actors/saveValueToDb/index.d.ts.map +1 -0
- package/dist/types/src/ItemProperty/service/actors/saveValueToDb/saveImageSrc.d.ts.map +1 -0
- package/dist/types/src/ItemProperty/service/actors/saveValueToDb/saveItemStorage.d.ts.map +1 -0
- package/dist/types/src/ItemProperty/service/actors/saveValueToDb/saveRelation.d.ts.map +1 -0
- package/dist/types/src/ItemProperty/service/actors/waitForDb.d.ts.map +1 -0
- package/dist/types/src/{browser/property → ItemProperty/service}/propertyMachine.d.ts +16 -16
- package/dist/types/src/ItemProperty/service/propertyMachine.d.ts.map +1 -0
- package/dist/types/src/browser/arweave/queries.d.ts +1 -1
- package/dist/types/src/browser/db/Db.d.ts +11 -0
- package/dist/types/src/browser/db/Db.d.ts.map +1 -0
- package/dist/types/src/browser/db/index.d.ts +0 -1
- package/dist/types/src/browser/db/index.d.ts.map +1 -1
- package/dist/types/src/browser/db/sqlWasmClient.d.ts +1 -1
- package/dist/types/src/browser/db/sqlWasmClient.d.ts.map +1 -1
- package/dist/types/src/browser/helpers/ArweaveClientWeb.d.ts +7 -0
- package/dist/types/src/browser/helpers/ArweaveClientWeb.d.ts.map +1 -0
- package/dist/types/src/browser/helpers/EasClientWeb.d.ts +7 -0
- package/dist/types/src/browser/helpers/EasClientWeb.d.ts.map +1 -0
- package/dist/types/src/browser/helpers/FileManagerWeb.d.ts +5 -0
- package/dist/types/src/browser/helpers/FileManagerWeb.d.ts.map +1 -0
- package/dist/types/src/browser/helpers/QueryClientWeb.d.ts +7 -0
- package/dist/types/src/browser/helpers/QueryClientWeb.d.ts.map +1 -0
- package/dist/types/src/browser/helpers/index.d.ts +0 -12
- package/dist/types/src/browser/helpers/index.d.ts.map +1 -1
- package/dist/types/src/browser/index.d.ts +1 -1
- package/dist/types/src/browser/index.d.ts.map +1 -1
- package/dist/types/src/browser/item/Item.d.ts +4 -41
- package/dist/types/src/browser/item/Item.d.ts.map +1 -1
- package/dist/types/src/browser/item/ItemProperty.d.ts +7 -0
- package/dist/types/src/browser/item/ItemProperty.d.ts.map +1 -0
- package/dist/types/src/browser/item/all/actors/fetchRelatedItems.d.ts.map +1 -1
- package/dist/types/src/browser/item/all/actors/fetchSeeds.d.ts.map +1 -1
- package/dist/types/src/browser/item/all/actors/fetchVersions.d.ts.map +1 -1
- package/dist/types/src/browser/item/all/actors/initialize.d.ts.map +1 -1
- package/dist/types/src/browser/item/index.d.ts +0 -2
- package/dist/types/src/browser/item/index.d.ts.map +1 -1
- package/dist/types/src/browser/property/index.d.ts +1 -5
- package/dist/types/src/browser/property/index.d.ts.map +1 -1
- package/dist/types/src/browser/react/property.d.ts +2 -2
- package/dist/types/src/browser/react/property.d.ts.map +1 -1
- package/dist/types/src/browser/react/services.d.ts +1 -1
- package/dist/types/src/browser/schema/file/download/actors.d.ts.map +1 -1
- package/dist/types/src/browser/schema/file/fetchAll/actors.d.ts.map +1 -1
- package/dist/types/src/browser/schema/file/index.d.ts +1 -1
- package/dist/types/src/browser/schema/file/index.d.ts.map +1 -1
- package/dist/types/src/browser/schema/file/machine.d.ts +1 -1
- package/dist/types/src/browser/schema/file/machine.d.ts.map +1 -1
- package/dist/types/src/browser/schema/file/queries.d.ts +6 -6
- package/dist/types/src/browser/schema/file/queries.d.ts.map +1 -1
- package/dist/types/src/browser/schema/image/queries.d.ts +4 -4
- package/dist/types/src/db/BaseDb.d.ts +12 -0
- package/dist/types/src/db/BaseDb.d.ts.map +1 -0
- package/dist/types/src/db/read/getExistingItem.d.ts +12 -0
- package/dist/types/src/db/read/getExistingItem.d.ts.map +1 -0
- package/dist/types/src/db/read/getItem.d.ts +3 -0
- package/dist/types/src/db/read/getItem.d.ts.map +1 -0
- package/dist/types/src/db/read/getItemData.d.ts +3 -0
- package/dist/types/src/db/read/getItemData.d.ts.map +1 -0
- package/dist/types/src/db/read/getItemProperties.d.ts +3 -0
- package/dist/types/src/db/read/getItemProperties.d.ts.map +1 -0
- package/dist/types/src/{browser/db → db}/read/getItemProperty.d.ts +1 -1
- package/dist/types/src/db/read/getItemProperty.d.ts.map +1 -0
- package/dist/types/src/db/read/getItems.d.ts.map +1 -0
- package/dist/types/src/{browser/db → db}/read/getMetadata.d.ts +1 -1
- package/dist/types/src/db/read/getMetadata.d.ts.map +1 -0
- package/dist/types/src/{browser/db → db}/read/getModelSchemas.d.ts +1 -1
- package/dist/types/src/db/read/getModelSchemas.d.ts.map +1 -0
- package/dist/types/src/db/read/getPropertyData.d.ts +4 -0
- package/dist/types/src/db/read/getPropertyData.d.ts.map +1 -0
- package/dist/types/src/db/read/getPublishPayload.d.ts.map +1 -0
- package/dist/types/src/db/read/getPublishUploads.d.ts +16 -0
- package/dist/types/src/db/read/getPublishUploads.d.ts.map +1 -0
- package/dist/types/src/db/read/getRelationValueData.d.ts +3 -0
- package/dist/types/src/db/read/getRelationValueData.d.ts.map +1 -0
- package/dist/types/src/db/read/getSchemaUidForModel.d.ts.map +1 -0
- package/dist/types/src/{browser/db → db}/read/getSeedData.d.ts +1 -1
- package/dist/types/src/db/read/getSeedData.d.ts.map +1 -0
- package/dist/types/src/db/read/getStorageTransactionIdForSeedUid.d.ts +2 -0
- package/dist/types/src/db/read/getStorageTransactionIdForSeedUid.d.ts.map +1 -0
- package/dist/types/src/{browser/db → db}/read/getVersionData.d.ts +1 -1
- package/dist/types/src/db/read/getVersionData.d.ts.map +1 -0
- package/dist/types/src/db/read/getVersionsForVersionUids.d.ts.map +1 -0
- package/dist/types/src/db/read/subqueries/versionData.d.ts +2 -0
- package/dist/types/src/db/read/subqueries/versionData.d.ts.map +1 -0
- package/dist/types/src/{browser/db → db}/write/createMetadata.d.ts +1 -1
- package/dist/types/src/db/write/createMetadata.d.ts.map +1 -0
- package/dist/types/src/db/write/createNewItem.d.ts +12 -0
- package/dist/types/src/db/write/createNewItem.d.ts.map +1 -0
- package/dist/types/src/db/write/createSeed.d.ts +7 -0
- package/dist/types/src/db/write/createSeed.d.ts.map +1 -0
- package/dist/types/src/{browser/db → db}/write/createSeeds.d.ts +1 -1
- package/dist/types/src/db/write/createSeeds.d.ts.map +1 -0
- package/dist/types/src/db/write/createVersion.d.ts.map +1 -0
- package/dist/types/src/db/write/deleteItem.d.ts.map +1 -0
- package/dist/types/src/db/write/recoverDeletedItem.d.ts +5 -0
- package/dist/types/src/db/write/recoverDeletedItem.d.ts.map +1 -0
- package/dist/types/src/db/write/saveAppState.d.ts.map +1 -0
- package/dist/types/src/{browser/db → db}/write/saveMetadata.d.ts +1 -1
- package/dist/types/src/db/write/saveMetadata.d.ts.map +1 -0
- package/dist/types/src/{browser/db → db}/write/updateItemPropertyValue.d.ts +1 -1
- package/dist/types/src/db/write/updateItemPropertyValue.d.ts.map +1 -0
- package/dist/types/src/{browser/db → db}/write/updateMetadata.d.ts +1 -1
- package/dist/types/src/db/write/updateMetadata.d.ts.map +1 -0
- package/dist/types/src/events/files/download.d.ts.map +1 -0
- package/dist/types/src/events/files/index.d.ts.map +1 -0
- package/dist/types/src/events/index.d.ts.map +1 -0
- package/dist/types/src/events/item/create.d.ts.map +1 -0
- package/dist/types/src/events/item/index.d.ts.map +1 -0
- package/dist/types/src/events/item/publish.d.ts.map +1 -0
- package/dist/types/src/events/item/request.d.ts.map +1 -0
- package/dist/types/src/events/item/requestAll.d.ts.map +1 -0
- package/dist/types/src/events/item/syncDbWithEas.d.ts.map +1 -0
- package/dist/types/src/events/services/allItems.d.ts.map +1 -0
- package/dist/types/src/events/services/index.d.ts.map +1 -0
- package/dist/types/src/graphql/fragments/Attestation.d.ts.map +1 -0
- package/dist/types/src/graphql/fragments/Schema.d.ts.map +1 -0
- package/dist/types/src/graphql/fragments/index.d.ts.map +1 -0
- package/dist/types/src/{browser → graphql}/gql/fragment-masking.d.ts.map +1 -1
- package/dist/types/src/{browser → graphql}/gql/gql.d.ts.map +1 -1
- package/dist/types/src/{browser → graphql}/gql/graphql.d.ts.map +1 -1
- package/dist/types/src/graphql/gql/index.d.ts.map +1 -0
- package/dist/types/src/helpers/BaseArweaveClient.d.ts +7 -0
- package/dist/types/src/helpers/BaseArweaveClient.d.ts.map +1 -0
- package/dist/types/src/helpers/BaseEasClient.d.ts +7 -0
- package/dist/types/src/helpers/BaseEasClient.d.ts.map +1 -0
- package/dist/types/src/helpers/BaseFileManager.d.ts +6 -0
- package/dist/types/src/helpers/BaseFileManager.d.ts.map +1 -0
- package/dist/types/src/helpers/BaseQueryClient.d.ts +7 -0
- package/dist/types/src/helpers/BaseQueryClient.d.ts.map +1 -0
- package/dist/types/src/helpers/constants.d.ts.map +1 -0
- package/dist/types/src/helpers/db.d.ts.map +1 -0
- package/dist/types/src/helpers/files.d.ts.map +1 -0
- package/dist/types/src/{browser/helpers → helpers}/getSchemaForItemProperty.d.ts +1 -1
- package/dist/types/src/helpers/getSchemaForItemProperty.d.ts.map +1 -0
- package/dist/types/src/helpers/getSegmentedItemProperties.d.ts +9 -0
- package/dist/types/src/helpers/getSegmentedItemProperties.d.ts.map +1 -0
- package/dist/types/src/{shared/helpers → helpers}/index.d.ts +8 -1
- package/dist/types/src/helpers/index.d.ts.map +1 -0
- package/dist/types/src/helpers/logger.d.ts.map +1 -0
- package/dist/types/src/helpers/updateMachineContext.d.ts.map +1 -0
- package/dist/types/src/index.d.ts +2 -1
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/interfaces/IDb.d.ts +3 -0
- package/dist/types/src/interfaces/IDb.d.ts.map +1 -0
- package/dist/types/src/interfaces/IEasClient.d.ts +3 -0
- package/dist/types/src/interfaces/IEasClient.d.ts.map +1 -0
- package/dist/types/src/interfaces/IItem.d.ts +20 -0
- package/dist/types/src/interfaces/IItem.d.ts.map +1 -0
- package/dist/types/src/interfaces/IItemProperty.d.ts +25 -0
- package/dist/types/src/interfaces/IItemProperty.d.ts.map +1 -0
- package/dist/types/src/interfaces/IQueryClient.d.ts +5 -0
- package/dist/types/src/interfaces/IQueryClient.d.ts.map +1 -0
- package/dist/types/src/interfaces/index.d.ts +5 -0
- package/dist/types/src/interfaces/index.d.ts.map +1 -0
- package/dist/types/src/node/constants.d.ts.map +1 -1
- package/dist/types/src/node/db/Db.d.ts +6 -0
- package/dist/types/src/node/db/Db.d.ts.map +1 -0
- package/dist/types/src/node/item/Item.d.ts +7 -0
- package/dist/types/src/node/item/Item.d.ts.map +1 -0
- package/dist/types/src/seedSchema/AppStateSchema.d.ts.map +1 -0
- package/dist/types/src/seedSchema/ConfigSchema.d.ts.map +1 -0
- package/dist/types/src/{shared/seedSchema → seedSchema}/MetadataSchema.d.ts.map +1 -1
- package/dist/types/src/seedSchema/ModelSchema.d.ts.map +1 -0
- package/dist/types/src/seedSchema/ModelUidSchema.d.ts.map +1 -0
- package/dist/types/src/seedSchema/PropertyUidSchema.d.ts.map +1 -0
- package/dist/types/src/seedSchema/SeedSchema.d.ts.map +1 -0
- package/dist/types/src/seedSchema/VersionSchema.d.ts.map +1 -0
- package/dist/types/src/seedSchema/index.d.ts.map +1 -0
- package/dist/types/src/services/db/actors/checkStatus.d.ts.map +1 -0
- package/dist/types/src/services/db/actors/connectToDb.d.ts.map +1 -0
- package/dist/types/src/services/db/actors/migrate.d.ts.map +1 -0
- package/dist/types/src/services/db/actors/validate.d.ts.map +1 -0
- package/dist/types/src/services/db/actors/waitForFiles.d.ts.map +1 -0
- package/dist/types/src/services/db/connectionManager.d.ts.map +1 -0
- package/dist/types/src/services/db/dbMachine.d.ts.map +1 -0
- package/dist/types/src/services/db/index.d.ts.map +1 -0
- package/dist/types/src/services/events.d.ts.map +1 -0
- package/dist/types/src/services/global/actors/addModelsToDb.d.ts.map +1 -0
- package/dist/types/src/services/global/actors/getSchemaForModel.d.ts.map +1 -0
- package/dist/types/src/services/global/actors/initialize.d.ts.map +1 -0
- package/dist/types/src/services/global/actors/savePublishService.d.ts.map +1 -0
- package/dist/types/src/{browser/services → services}/global/globalMachine.d.ts +91 -91
- package/dist/types/src/services/global/globalMachine.d.ts.map +1 -0
- package/dist/types/src/services/global/index.d.ts.map +1 -0
- package/dist/types/src/services/index.d.ts.map +1 -0
- package/dist/types/src/services/internal/actors/configureFs.d.ts.map +1 -0
- package/dist/types/src/services/internal/actors/loadAppDb.d.ts.map +1 -0
- package/dist/types/src/services/internal/actors/prepareDb.d.ts.map +1 -0
- package/dist/types/src/services/internal/actors/saveConfig.d.ts.map +1 -0
- package/dist/types/src/services/internal/actors/validateInput.d.ts.map +1 -0
- package/dist/types/src/services/internal/constants.d.ts.map +1 -0
- package/dist/types/src/services/internal/helpers.d.ts.map +1 -0
- package/dist/types/src/services/internal/internalMachine.d.ts.map +1 -0
- package/dist/types/src/services/internal/queries.d.ts +4 -0
- package/dist/types/src/services/internal/queries.d.ts.map +1 -0
- package/dist/types/src/services/internal/types.d.ts.map +1 -0
- package/dist/types/src/services/publish/actors/createPublishAttempt.d.ts.map +1 -0
- package/dist/types/src/services/publish/actors/preparePublishRequestData.d.ts.map +1 -0
- package/dist/types/src/services/publish/actors/upload.d.ts.map +1 -0
- package/dist/types/src/services/publish/actors/validateItemData.d.ts.map +1 -0
- package/dist/types/src/{browser/services → services}/publish/publishMachine.d.ts +1 -1
- package/dist/types/src/services/publish/publishMachine.d.ts.map +1 -0
- package/dist/types/src/stores/eas.d.ts.map +1 -0
- package/dist/types/src/stores/modelClass.d.ts.map +1 -0
- package/dist/types/src/types/db.d.ts +27 -0
- package/dist/types/src/types/db.d.ts.map +1 -0
- package/dist/types/src/types/helpers.d.ts +6 -0
- package/dist/types/src/types/helpers.d.ts.map +1 -0
- package/dist/types/src/types/index.d.ts +1 -0
- package/dist/types/src/types/index.d.ts.map +1 -1
- package/dist/types/src/types/item.d.ts +2 -2
- package/dist/types/src/types/item.d.ts.map +1 -1
- package/dist/types/src/types/property.d.ts +1 -1
- package/dist/types/src/types/property.d.ts.map +1 -1
- package/dist/types/src/types/seedProtocol.d.ts +1 -1
- package/package.json +3 -1
- package/dist/index-Bonkz33x.js.map +0 -1
- package/dist/index-CSWCwkb_.js.map +0 -1
- package/dist/seed.schema.config-CRQPn2Sv.js.map +0 -1
- package/dist/shared/seedSchema/AppStateSchema.ts +0 -10
- package/dist/shared/seedSchema/ConfigSchema.ts +0 -15
- package/dist/shared/seedSchema/MetadataSchema.ts +0 -28
- package/dist/shared/seedSchema/ModelSchema.ts +0 -46
- package/dist/shared/seedSchema/ModelUidSchema.ts +0 -16
- package/dist/shared/seedSchema/PropertyUidSchema.ts +0 -16
- package/dist/shared/seedSchema/SeedSchema.ts +0 -29
- package/dist/shared/seedSchema/VersionSchema.ts +0 -16
- package/dist/shared/seedSchema/index.ts +0 -8
- package/dist/src/createItem.ts +0 -15
- package/dist/src/createItemMachine.ts +0 -37
- package/dist/src/db.ts +0 -218
- package/dist/src/item.ts +0 -374
- package/dist/src/read.ts +0 -174
- package/dist/src/write.ts +0 -115
- package/dist/types/src/browser/db/read/getItem.d.ts +0 -18
- package/dist/types/src/browser/db/read/getItem.d.ts.map +0 -1
- package/dist/types/src/browser/db/read/getItemProperties.d.ts +0 -10
- package/dist/types/src/browser/db/read/getItemProperties.d.ts.map +0 -1
- package/dist/types/src/browser/db/read/getItemProperty.d.ts.map +0 -1
- package/dist/types/src/browser/db/read/getItems.d.ts.map +0 -1
- package/dist/types/src/browser/db/read/getMetadata.d.ts.map +0 -1
- package/dist/types/src/browser/db/read/getModelSchemas.d.ts.map +0 -1
- package/dist/types/src/browser/db/read/getPublishPayload.d.ts.map +0 -1
- package/dist/types/src/browser/db/read/getPublishUploads.d.ts +0 -17
- package/dist/types/src/browser/db/read/getPublishUploads.d.ts.map +0 -1
- package/dist/types/src/browser/db/read/getSchemaUidForModel.d.ts.map +0 -1
- package/dist/types/src/browser/db/read/getSeedData.d.ts.map +0 -1
- package/dist/types/src/browser/db/read/getVersionData.d.ts.map +0 -1
- package/dist/types/src/browser/db/read/getVersionsForVersionUids.d.ts.map +0 -1
- package/dist/types/src/browser/db/read/subqueries/versionData.d.ts +0 -82
- package/dist/types/src/browser/db/read/subqueries/versionData.d.ts.map +0 -1
- package/dist/types/src/browser/db/read.d.ts +0 -18
- package/dist/types/src/browser/db/read.d.ts.map +0 -1
- package/dist/types/src/browser/db/write/createMetadata.d.ts.map +0 -1
- package/dist/types/src/browser/db/write/createSeeds.d.ts.map +0 -1
- package/dist/types/src/browser/db/write/createVersion.d.ts.map +0 -1
- package/dist/types/src/browser/db/write/deleteItem.d.ts.map +0 -1
- package/dist/types/src/browser/db/write/recoverDeletedItem.d.ts +0 -5
- package/dist/types/src/browser/db/write/recoverDeletedItem.d.ts.map +0 -1
- package/dist/types/src/browser/db/write/saveAppState.d.ts.map +0 -1
- package/dist/types/src/browser/db/write/saveMetadata.d.ts.map +0 -1
- package/dist/types/src/browser/db/write/updateItemPropertyValue.d.ts.map +0 -1
- package/dist/types/src/browser/db/write/updateMetadata.d.ts.map +0 -1
- package/dist/types/src/browser/db/write.d.ts +0 -18
- package/dist/types/src/browser/db/write.d.ts.map +0 -1
- package/dist/types/src/browser/events/files/download.d.ts.map +0 -1
- package/dist/types/src/browser/events/files/index.d.ts.map +0 -1
- package/dist/types/src/browser/events/index.d.ts.map +0 -1
- package/dist/types/src/browser/events/item/create.d.ts.map +0 -1
- package/dist/types/src/browser/events/item/index.d.ts.map +0 -1
- package/dist/types/src/browser/events/item/publish.d.ts.map +0 -1
- package/dist/types/src/browser/events/item/request.d.ts.map +0 -1
- package/dist/types/src/browser/events/item/requestAll.d.ts.map +0 -1
- package/dist/types/src/browser/events/item/syncDbWithEas.d.ts.map +0 -1
- package/dist/types/src/browser/events/services/allItems.d.ts.map +0 -1
- package/dist/types/src/browser/events/services/index.d.ts.map +0 -1
- package/dist/types/src/browser/fragments/Attestation.d.ts.map +0 -1
- package/dist/types/src/browser/fragments/Schema.d.ts.map +0 -1
- package/dist/types/src/browser/fragments/index.d.ts.map +0 -1
- package/dist/types/src/browser/gql/index.d.ts.map +0 -1
- package/dist/types/src/browser/helpers/getSchemaForItemProperty.d.ts.map +0 -1
- package/dist/types/src/browser/helpers/getSegmentedItemProperties.d.ts +0 -9
- package/dist/types/src/browser/helpers/getSegmentedItemProperties.d.ts.map +0 -1
- package/dist/types/src/browser/helpers/updateMachineContext.d.ts.map +0 -1
- package/dist/types/src/browser/item/create/actors/createItem.d.ts +0 -3
- package/dist/types/src/browser/item/create/actors/createItem.d.ts.map +0 -1
- package/dist/types/src/browser/item/create/createItemMachine.d.ts +0 -3
- package/dist/types/src/browser/item/create/createItemMachine.d.ts.map +0 -1
- package/dist/types/src/browser/item/queries.d.ts.map +0 -1
- package/dist/types/src/browser/item/single/actors/fetchDataFromEas.d.ts +0 -2
- package/dist/types/src/browser/item/single/actors/fetchDataFromEas.d.ts.map +0 -1
- package/dist/types/src/browser/item/single/actors/hydrateExistingItem.d.ts.map +0 -1
- package/dist/types/src/browser/item/single/actors/hydrateNewItem.d.ts.map +0 -1
- package/dist/types/src/browser/item/single/actors/initialize.d.ts +0 -2
- package/dist/types/src/browser/item/single/actors/initialize.d.ts.map +0 -1
- package/dist/types/src/browser/item/single/actors/reload.d.ts.map +0 -1
- package/dist/types/src/browser/item/single/actors/saveDataToDb.d.ts.map +0 -1
- package/dist/types/src/browser/item/single/actors/waitForDb.d.ts.map +0 -1
- package/dist/types/src/browser/item/single/itemMachineSingle.d.ts.map +0 -1
- package/dist/types/src/browser/property/ItemProperty.d.ts.map +0 -1
- package/dist/types/src/browser/property/actors/hydrateFromDb.d.ts.map +0 -1
- package/dist/types/src/browser/property/actors/index.d.ts.map +0 -1
- package/dist/types/src/browser/property/actors/initialize.d.ts.map +0 -1
- package/dist/types/src/browser/property/actors/resolveRelatedValue.d.ts.map +0 -1
- package/dist/types/src/browser/property/actors/resolveRemoteStorage.d.ts.map +0 -1
- package/dist/types/src/browser/property/actors/saveValueToDb/analyzeInput.d.ts.map +0 -1
- package/dist/types/src/browser/property/actors/saveValueToDb/index.d.ts.map +0 -1
- package/dist/types/src/browser/property/actors/saveValueToDb/saveImageSrc.d.ts.map +0 -1
- package/dist/types/src/browser/property/actors/saveValueToDb/saveItemStorage.d.ts.map +0 -1
- package/dist/types/src/browser/property/actors/saveValueToDb/saveRelation.d.ts.map +0 -1
- package/dist/types/src/browser/property/actors/waitForDb.d.ts.map +0 -1
- package/dist/types/src/browser/property/propertyMachine.d.ts.map +0 -1
- package/dist/types/src/browser/services/db/actors/checkStatus.d.ts.map +0 -1
- package/dist/types/src/browser/services/db/actors/connectToDb.d.ts.map +0 -1
- package/dist/types/src/browser/services/db/actors/migrate.d.ts.map +0 -1
- package/dist/types/src/browser/services/db/actors/validate.d.ts.map +0 -1
- package/dist/types/src/browser/services/db/actors/waitForFiles.d.ts.map +0 -1
- package/dist/types/src/browser/services/db/connectionManager.d.ts.map +0 -1
- package/dist/types/src/browser/services/db/dbMachine.d.ts.map +0 -1
- package/dist/types/src/browser/services/db/index.d.ts.map +0 -1
- package/dist/types/src/browser/services/events.d.ts.map +0 -1
- package/dist/types/src/browser/services/global/actors/addModelsToDb.d.ts.map +0 -1
- package/dist/types/src/browser/services/global/actors/getSchemaForModel.d.ts.map +0 -1
- package/dist/types/src/browser/services/global/actors/initialize.d.ts.map +0 -1
- package/dist/types/src/browser/services/global/actors/savePublishService.d.ts.map +0 -1
- package/dist/types/src/browser/services/global/globalMachine.d.ts.map +0 -1
- package/dist/types/src/browser/services/global/index.d.ts.map +0 -1
- package/dist/types/src/browser/services/index.d.ts.map +0 -1
- package/dist/types/src/browser/services/internal/actors/configureFs.d.ts.map +0 -1
- package/dist/types/src/browser/services/internal/actors/loadAppDb.d.ts.map +0 -1
- package/dist/types/src/browser/services/internal/actors/prepareDb.d.ts.map +0 -1
- package/dist/types/src/browser/services/internal/actors/saveConfig.d.ts.map +0 -1
- package/dist/types/src/browser/services/internal/actors/validateInput.d.ts.map +0 -1
- package/dist/types/src/browser/services/internal/constants.d.ts.map +0 -1
- package/dist/types/src/browser/services/internal/helpers.d.ts.map +0 -1
- package/dist/types/src/browser/services/internal/internalMachine.d.ts.map +0 -1
- package/dist/types/src/browser/services/internal/queries.d.ts +0 -4
- package/dist/types/src/browser/services/internal/queries.d.ts.map +0 -1
- package/dist/types/src/browser/services/internal/types.d.ts.map +0 -1
- package/dist/types/src/browser/services/publish/actors/createPublishAttempt.d.ts.map +0 -1
- package/dist/types/src/browser/services/publish/actors/preparePublishRequestData.d.ts.map +0 -1
- package/dist/types/src/browser/services/publish/actors/upload.d.ts.map +0 -1
- package/dist/types/src/browser/services/publish/actors/validateItemData.d.ts.map +0 -1
- package/dist/types/src/browser/services/publish/publishMachine.d.ts.map +0 -1
- package/dist/types/src/browser/stores/eas.d.ts.map +0 -1
- package/dist/types/src/browser/stores/modelClass.d.ts.map +0 -1
- package/dist/types/src/shared/helpers/constants.d.ts.map +0 -1
- package/dist/types/src/shared/helpers/db.d.ts.map +0 -1
- package/dist/types/src/shared/helpers/files.d.ts.map +0 -1
- package/dist/types/src/shared/helpers/index.d.ts.map +0 -1
- package/dist/types/src/shared/helpers/logger.d.ts.map +0 -1
- package/dist/types/src/shared/seedSchema/AppStateSchema.d.ts.map +0 -1
- package/dist/types/src/shared/seedSchema/ConfigSchema.d.ts.map +0 -1
- package/dist/types/src/shared/seedSchema/ModelSchema.d.ts.map +0 -1
- package/dist/types/src/shared/seedSchema/ModelUidSchema.d.ts.map +0 -1
- package/dist/types/src/shared/seedSchema/PropertyUidSchema.d.ts.map +0 -1
- package/dist/types/src/shared/seedSchema/SeedSchema.d.ts.map +0 -1
- package/dist/types/src/shared/seedSchema/VersionSchema.d.ts.map +0 -1
- package/dist/types/src/shared/seedSchema/index.d.ts.map +0 -1
- /package/dist/types/src/{browser/item/single → Item/service}/actors/hydrateExistingItem.d.ts +0 -0
- /package/dist/types/src/{browser/item/single → Item/service}/actors/hydrateNewItem.d.ts +0 -0
- /package/dist/types/src/{browser/item/single → Item/service}/actors/reload.d.ts +0 -0
- /package/dist/types/src/{browser/item/single → Item/service}/actors/saveDataToDb.d.ts +0 -0
- /package/dist/types/src/{browser/item/single → Item/service}/actors/waitForDb.d.ts +0 -0
- /package/dist/types/src/{browser/item/single → Item/service}/itemMachineSingle.d.ts +0 -0
- /package/dist/types/src/{browser/property → ItemProperty/service}/actors/hydrateFromDb.d.ts +0 -0
- /package/dist/types/src/{browser/property → ItemProperty/service}/actors/index.d.ts +0 -0
- /package/dist/types/src/{browser/property → ItemProperty/service}/actors/initialize.d.ts +0 -0
- /package/dist/types/src/{browser/property → ItemProperty/service}/actors/resolveRelatedValue.d.ts +0 -0
- /package/dist/types/src/{browser/property → ItemProperty/service}/actors/resolveRemoteStorage.d.ts +0 -0
- /package/dist/types/src/{browser/property → ItemProperty/service}/actors/saveValueToDb/analyzeInput.d.ts +0 -0
- /package/dist/types/src/{browser/property → ItemProperty/service}/actors/saveValueToDb/index.d.ts +0 -0
- /package/dist/types/src/{browser/property → ItemProperty/service}/actors/saveValueToDb/saveImageSrc.d.ts +0 -0
- /package/dist/types/src/{browser/property → ItemProperty/service}/actors/saveValueToDb/saveItemStorage.d.ts +0 -0
- /package/dist/types/src/{browser/property → ItemProperty/service}/actors/saveValueToDb/saveRelation.d.ts +0 -0
- /package/dist/types/src/{browser/property → ItemProperty/service}/actors/waitForDb.d.ts +0 -0
- /package/dist/types/src/{browser/db → db}/read/getItems.d.ts +0 -0
- /package/dist/types/src/{browser/db → db}/read/getPublishPayload.d.ts +0 -0
- /package/dist/types/src/{browser/db → db}/read/getSchemaUidForModel.d.ts +0 -0
- /package/dist/types/src/{browser/db → db}/read/getVersionsForVersionUids.d.ts +0 -0
- /package/dist/types/src/{browser/db → db}/write/createVersion.d.ts +0 -0
- /package/dist/types/src/{browser/db → db}/write/deleteItem.d.ts +0 -0
- /package/dist/types/src/{browser/db → db}/write/saveAppState.d.ts +0 -0
- /package/dist/types/src/{browser/events → events}/files/download.d.ts +0 -0
- /package/dist/types/src/{browser/events → events}/files/index.d.ts +0 -0
- /package/dist/types/src/{browser/events → events}/index.d.ts +0 -0
- /package/dist/types/src/{browser/events → events}/item/create.d.ts +0 -0
- /package/dist/types/src/{browser/events → events}/item/index.d.ts +0 -0
- /package/dist/types/src/{browser/events → events}/item/publish.d.ts +0 -0
- /package/dist/types/src/{browser/events → events}/item/request.d.ts +0 -0
- /package/dist/types/src/{browser/events → events}/item/requestAll.d.ts +0 -0
- /package/dist/types/src/{browser/events → events}/item/syncDbWithEas.d.ts +0 -0
- /package/dist/types/src/{browser/events → events}/services/allItems.d.ts +0 -0
- /package/dist/types/src/{browser/events → events}/services/index.d.ts +0 -0
- /package/dist/types/src/{browser → graphql}/fragments/Attestation.d.ts +0 -0
- /package/dist/types/src/{browser → graphql}/fragments/Schema.d.ts +0 -0
- /package/dist/types/src/{browser → graphql}/fragments/index.d.ts +0 -0
- /package/dist/types/src/{browser → graphql}/gql/fragment-masking.d.ts +0 -0
- /package/dist/types/src/{browser → graphql}/gql/gql.d.ts +0 -0
- /package/dist/types/src/{browser → graphql}/gql/graphql.d.ts +0 -0
- /package/dist/types/src/{browser → graphql}/gql/index.d.ts +0 -0
- /package/dist/types/src/{shared/helpers → helpers}/constants.d.ts +0 -0
- /package/dist/types/src/{shared/helpers → helpers}/db.d.ts +0 -0
- /package/dist/types/src/{shared/helpers → helpers}/files.d.ts +0 -0
- /package/dist/types/src/{shared/helpers → helpers}/logger.d.ts +0 -0
- /package/dist/types/src/{browser/helpers → helpers}/updateMachineContext.d.ts +0 -0
- /package/dist/types/src/{shared/seedSchema → seedSchema}/AppStateSchema.d.ts +0 -0
- /package/dist/types/src/{shared/seedSchema → seedSchema}/ConfigSchema.d.ts +0 -0
- /package/dist/types/src/{shared/seedSchema → seedSchema}/MetadataSchema.d.ts +0 -0
- /package/dist/types/src/{shared/seedSchema → seedSchema}/ModelSchema.d.ts +0 -0
- /package/dist/types/src/{shared/seedSchema → seedSchema}/ModelUidSchema.d.ts +0 -0
- /package/dist/types/src/{shared/seedSchema → seedSchema}/PropertyUidSchema.d.ts +0 -0
- /package/dist/types/src/{shared/seedSchema → seedSchema}/SeedSchema.d.ts +0 -0
- /package/dist/types/src/{shared/seedSchema → seedSchema}/VersionSchema.d.ts +0 -0
- /package/dist/types/src/{shared/seedSchema → seedSchema}/index.d.ts +0 -0
- /package/dist/types/src/{browser/services → services}/db/actors/checkStatus.d.ts +0 -0
- /package/dist/types/src/{browser/services → services}/db/actors/connectToDb.d.ts +0 -0
- /package/dist/types/src/{browser/services → services}/db/actors/migrate.d.ts +0 -0
- /package/dist/types/src/{browser/services → services}/db/actors/validate.d.ts +0 -0
- /package/dist/types/src/{browser/services → services}/db/actors/waitForFiles.d.ts +0 -0
- /package/dist/types/src/{browser/services → services}/db/connectionManager.d.ts +0 -0
- /package/dist/types/src/{browser/services → services}/db/dbMachine.d.ts +0 -0
- /package/dist/types/src/{browser/services → services}/db/index.d.ts +0 -0
- /package/dist/types/src/{browser/services → services}/events.d.ts +0 -0
- /package/dist/types/src/{browser/services → services}/global/actors/addModelsToDb.d.ts +0 -0
- /package/dist/types/src/{browser/services → services}/global/actors/getSchemaForModel.d.ts +0 -0
- /package/dist/types/src/{browser/services → services}/global/actors/initialize.d.ts +0 -0
- /package/dist/types/src/{browser/services → services}/global/actors/savePublishService.d.ts +0 -0
- /package/dist/types/src/{browser/services → services}/global/index.d.ts +0 -0
- /package/dist/types/src/{browser/services → services}/index.d.ts +0 -0
- /package/dist/types/src/{browser/services → services}/internal/actors/configureFs.d.ts +0 -0
- /package/dist/types/src/{browser/services → services}/internal/actors/loadAppDb.d.ts +0 -0
- /package/dist/types/src/{browser/services → services}/internal/actors/prepareDb.d.ts +0 -0
- /package/dist/types/src/{browser/services → services}/internal/actors/saveConfig.d.ts +0 -0
- /package/dist/types/src/{browser/services → services}/internal/actors/validateInput.d.ts +0 -0
- /package/dist/types/src/{browser/services → services}/internal/constants.d.ts +0 -0
- /package/dist/types/src/{browser/services → services}/internal/helpers.d.ts +0 -0
- /package/dist/types/src/{browser/services → services}/internal/internalMachine.d.ts +0 -0
- /package/dist/types/src/{browser/services → services}/internal/types.d.ts +0 -0
- /package/dist/types/src/{browser/services → services}/publish/actors/createPublishAttempt.d.ts +0 -0
- /package/dist/types/src/{browser/services → services}/publish/actors/preparePublishRequestData.d.ts +0 -0
- /package/dist/types/src/{browser/services → services}/publish/actors/upload.d.ts +0 -0
- /package/dist/types/src/{browser/services → services}/publish/actors/validateItemData.d.ts +0 -0
- /package/dist/types/src/{browser/stores → stores}/eas.d.ts +0 -0
- /package/dist/types/src/{browser/stores → stores}/modelClass.d.ts +0 -0
package/dist/src/connectToDb.ts
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { EventObject, fromCallback } from 'xstate'
|
|
2
2
|
import { DbServiceContext, FromCallbackInput } from '@/types'
|
|
3
|
-
import { getSqliteWasmClient } from '@/
|
|
4
|
-
import { DB_CREATING_SUCCESS } from '@/
|
|
3
|
+
import { getSqliteWasmClient } from '@/db/sqlWasmClient'
|
|
4
|
+
import { DB_CREATING_SUCCESS } from '@/services/internal/constants'
|
|
5
5
|
import debug from 'debug'
|
|
6
|
+
import { BaseDb } from '@/db/BaseDb'
|
|
6
7
|
|
|
7
8
|
const logger = debug('app:services:db:actors:connectToDb')
|
|
8
9
|
|
|
@@ -14,61 +15,27 @@ export const connectToDb = fromCallback<
|
|
|
14
15
|
|
|
15
16
|
const { dbName, pathToDir } = context
|
|
16
17
|
|
|
18
|
+
if (!pathToDir || !dbName) {
|
|
19
|
+
throw new Error('pathToDir and dbName are required')
|
|
20
|
+
}
|
|
21
|
+
|
|
17
22
|
let isConnecting = false
|
|
18
23
|
let dbId: string | undefined
|
|
19
24
|
|
|
20
|
-
const
|
|
25
|
+
const _connectToDb = async (): Promise<void> => {
|
|
21
26
|
if (isConnecting) {
|
|
22
27
|
return
|
|
23
28
|
}
|
|
24
29
|
isConnecting = true
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
const sqliteWasmClient = await getSqliteWasmClient()
|
|
28
|
-
|
|
29
|
-
//@ts-ignore
|
|
30
|
-
response = await sqliteWasmClient('config-get', {})
|
|
31
|
-
logger(response)
|
|
32
|
-
logger('Running SQLite3 version', response.result.version.libVersion)
|
|
33
|
-
|
|
34
|
-
//@ts-ignore
|
|
35
|
-
response = await sqliteWasmClient('open', {
|
|
36
|
-
filename: `file:${pathToDir}/db/${dbName}.sqlite3?vfs=opfs`,
|
|
37
|
-
})
|
|
38
|
-
|
|
39
|
-
logger(response)
|
|
40
|
-
dbId = response.dbId
|
|
41
|
-
// logger(`dbId: ${dbId}`)
|
|
42
|
-
logger(
|
|
43
|
-
'OPFS is available, created persisted database at',
|
|
44
|
-
response.result.filename.replace(/^file:(.*?)\?vfs=opfs$/, '$1'),
|
|
45
|
-
)
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
const interval = setInterval(() => {
|
|
49
|
-
// TODO: Add a timeout
|
|
50
|
-
// TODO: Add a cancel token to the promise so we can prevent more loops starting while we're checking the successful outcome
|
|
30
|
+
const dbId = await BaseDb.connectToDb(pathToDir, dbName)
|
|
51
31
|
if (dbId) {
|
|
52
|
-
|
|
53
|
-
// '[db/actors] opening sqliteWasm connection with dbId:',
|
|
54
|
-
// dbId,
|
|
55
|
-
// )
|
|
56
|
-
clearInterval(interval)
|
|
57
|
-
sendBack({ type: DB_CREATING_SUCCESS, dbId })
|
|
58
|
-
return
|
|
59
|
-
}
|
|
60
|
-
_create()
|
|
61
|
-
.then(() => {
|
|
62
|
-
return
|
|
63
|
-
})
|
|
64
|
-
.catch((e) => {
|
|
65
|
-
isConnecting = false
|
|
66
|
-
})
|
|
67
|
-
}, 500)
|
|
68
|
-
|
|
69
|
-
return () => {
|
|
70
|
-
if (interval) {
|
|
71
|
-
clearInterval(interval)
|
|
32
|
+
sendBack({ type: DB_CREATING_SUCCESS, dbId, })
|
|
72
33
|
}
|
|
34
|
+
isConnecting = false
|
|
73
35
|
}
|
|
36
|
+
|
|
37
|
+
_connectToDb().then(() => {
|
|
38
|
+
return
|
|
39
|
+
})
|
|
40
|
+
|
|
74
41
|
})
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { metadata, MetadataType } from '@/
|
|
2
|
-
import {
|
|
3
|
-
import { generateId } from '@/shared/helpers'
|
|
1
|
+
import { metadata, MetadataType } from '@/seedSchema'
|
|
2
|
+
import { generateId } from '@/helpers'
|
|
4
3
|
import { PropertyType } from '@/types'
|
|
4
|
+
import { BaseDb } from '../BaseDb'
|
|
5
5
|
|
|
6
6
|
type CreateMetadata = (
|
|
7
7
|
metadataValues: Partial<MetadataType>,
|
|
@@ -12,7 +12,7 @@ export const createMetadata: CreateMetadata = async (
|
|
|
12
12
|
metadataValues,
|
|
13
13
|
propertyRecordSchema?,
|
|
14
14
|
) => {
|
|
15
|
-
const appDb = getAppDb()
|
|
15
|
+
const appDb = BaseDb.getAppDb()
|
|
16
16
|
|
|
17
17
|
metadataValues.localId = generateId()
|
|
18
18
|
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { ModelValues } from '@/types'
|
|
2
|
+
import { getModel } from '@/stores/modelClass'
|
|
3
|
+
import { createSeed } from './createSeed'
|
|
4
|
+
import { createVersion } from './createVersion'
|
|
5
|
+
import { createMetadata } from './createMetadata'
|
|
6
|
+
|
|
7
|
+
type CreateNewItemProps = Partial<ModelValues<any>> & {
|
|
8
|
+
modelName: string
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
type CreateNewItemReturnType = {
|
|
12
|
+
modelName: string
|
|
13
|
+
seedLocalId: string
|
|
14
|
+
versionLocalId: string
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
export const createNewItem = async ({
|
|
18
|
+
modelName,
|
|
19
|
+
...propertyData
|
|
20
|
+
}: CreateNewItemProps): Promise<CreateNewItemReturnType> => {
|
|
21
|
+
if (!modelName) {
|
|
22
|
+
throw new Error('A model name is required for createNewItem')
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
const seedType = modelName.toLowerCase()
|
|
26
|
+
|
|
27
|
+
const newSeedId = await createSeed({ type: seedType })
|
|
28
|
+
|
|
29
|
+
const newVersionId = await createVersion({ seedLocalId: newSeedId })
|
|
30
|
+
|
|
31
|
+
const propertySchemas = getModel(modelName)?.schema
|
|
32
|
+
|
|
33
|
+
for (const [propertyName, propertyValue] of Object.entries(propertyData)) {
|
|
34
|
+
let propertyRecordSchema
|
|
35
|
+
|
|
36
|
+
if (propertySchemas && propertySchemas[propertyName]) {
|
|
37
|
+
propertyRecordSchema = propertySchemas[propertyName]
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
await createMetadata(
|
|
41
|
+
{
|
|
42
|
+
seedLocalId: newSeedId,
|
|
43
|
+
versionLocalId: newVersionId,
|
|
44
|
+
propertyName,
|
|
45
|
+
propertyValue,
|
|
46
|
+
modelName,
|
|
47
|
+
},
|
|
48
|
+
propertyRecordSchema,
|
|
49
|
+
)
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
return {
|
|
53
|
+
modelName,
|
|
54
|
+
seedLocalId: newSeedId,
|
|
55
|
+
versionLocalId: newVersionId,
|
|
56
|
+
}
|
|
57
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { generateId } from '@/helpers'
|
|
2
|
+
import { seeds } from '@/seedSchema'
|
|
3
|
+
import { BaseDb } from '@/db/BaseDb'
|
|
4
|
+
import { getSchemaUidForModel } from '@/db/read/getSchemaUidForModel'
|
|
5
|
+
|
|
6
|
+
type CreateSeedProps = {
|
|
7
|
+
type: string
|
|
8
|
+
seedUid?: string
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export const createSeed = async ({ type, seedUid }: CreateSeedProps): Promise<string> => {
|
|
12
|
+
const schemaUid = await getSchemaUidForModel(type)
|
|
13
|
+
|
|
14
|
+
if (!schemaUid) {
|
|
15
|
+
throw new Error(`No schema found for model type: ${type}`)
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
const appDb = BaseDb.getAppDb()
|
|
19
|
+
|
|
20
|
+
const newSeedLocalId = generateId()
|
|
21
|
+
|
|
22
|
+
await appDb.insert(seeds).values({
|
|
23
|
+
localId: newSeedLocalId,
|
|
24
|
+
type,
|
|
25
|
+
uid: seedUid,
|
|
26
|
+
createdAt: Date.now(),
|
|
27
|
+
schemaUid,
|
|
28
|
+
})
|
|
29
|
+
|
|
30
|
+
return newSeedLocalId
|
|
31
|
+
}
|
package/dist/src/createSeeds.ts
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { seeds, SeedType } from '@/
|
|
2
|
-
import {
|
|
1
|
+
import { seeds, SeedType } from '@/seedSchema'
|
|
2
|
+
import { BaseDb } from '@/db/BaseDb'
|
|
3
3
|
|
|
4
4
|
type CreateSeeds = (newSeeds: Partial<SeedType>[]) => Promise<string[]>
|
|
5
5
|
|
|
6
6
|
export const createSeeds: CreateSeeds = async (
|
|
7
7
|
newSeeds: Partial<SeedType>[],
|
|
8
8
|
) => {
|
|
9
|
-
const appDb = getAppDb()
|
|
9
|
+
const appDb = BaseDb.getAppDb()
|
|
10
10
|
|
|
11
11
|
const results = await appDb
|
|
12
12
|
.insert(seeds)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
1
|
+
import { generateId } from '@/helpers'
|
|
2
|
+
import { versions } from '@/seedSchema'
|
|
3
|
+
import { BaseDb } from '../BaseDb'
|
|
4
4
|
|
|
5
5
|
type CreateVersionProps = {
|
|
6
6
|
seedLocalId?: string
|
|
@@ -16,7 +16,7 @@ export const createVersion: CreateVersion = async ({
|
|
|
16
16
|
seedType,
|
|
17
17
|
uid,
|
|
18
18
|
}) => {
|
|
19
|
-
const appDb = getAppDb()
|
|
19
|
+
const appDb = BaseDb.getAppDb()
|
|
20
20
|
|
|
21
21
|
const newVersionLocalId = generateId()
|
|
22
22
|
|
package/dist/src/dbMachine.ts
CHANGED
|
@@ -13,10 +13,10 @@ import {
|
|
|
13
13
|
} from '../internal/constants'
|
|
14
14
|
import debug from 'debug'
|
|
15
15
|
import { DbServiceContext } from '@/types'
|
|
16
|
-
import { checkStatus } from '@/
|
|
17
|
-
import { connectToDb } from '@/
|
|
18
|
-
import { validate } from '@/
|
|
19
|
-
import { migrate } from '@/
|
|
16
|
+
import { checkStatus } from '@/services/db/actors/checkStatus'
|
|
17
|
+
import { connectToDb } from '@/services/db/actors/connectToDb'
|
|
18
|
+
import { validate } from '@/services/db/actors/validate'
|
|
19
|
+
import { migrate } from '@/services/db/actors/migrate'
|
|
20
20
|
|
|
21
21
|
const logger = debug('app:services:db:machine')
|
|
22
22
|
|
package/dist/src/deleteItem.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { seeds } from '@/
|
|
1
|
+
import { BaseDb } from '@/db/BaseDb'
|
|
2
|
+
import { seeds } from '@/seedSchema'
|
|
3
3
|
import { eq, or } from 'drizzle-orm'
|
|
4
4
|
|
|
5
5
|
type DeleteItemProps = {
|
|
@@ -8,7 +8,7 @@ type DeleteItemProps = {
|
|
|
8
8
|
}
|
|
9
9
|
type DeleteItem = (props: DeleteItemProps) => Promise<void>
|
|
10
10
|
export const deleteItem: DeleteItem = async ({ seedLocalId, seedUid }) => {
|
|
11
|
-
const appDb = getAppDb()
|
|
11
|
+
const appDb = BaseDb.getAppDb()
|
|
12
12
|
|
|
13
13
|
await appDb
|
|
14
14
|
.update(seeds)
|
package/dist/src/download.ts
CHANGED
|
@@ -1,26 +1,30 @@
|
|
|
1
|
-
import { syncDbFiles } from '@/
|
|
1
|
+
import { syncDbFiles } from '@/services/internal/helpers'
|
|
2
2
|
import { eventEmitter } from '@/eventBus'
|
|
3
3
|
import { fs } from '@zenfs/core'
|
|
4
|
-
import { ARWEAVE_HOST } from '@/
|
|
5
|
-
import { appState } from '
|
|
4
|
+
import { ARWEAVE_HOST } from '@/services/internal/constants'
|
|
5
|
+
import { appState } from '@/seedSchema'
|
|
6
6
|
import { eq } from 'drizzle-orm'
|
|
7
7
|
import { getArweave } from '@/browser/schema/file'
|
|
8
|
-
import { getAddressesFromDb } from '@/
|
|
8
|
+
import { getAddressesFromDb } from '@/helpers/db'
|
|
9
9
|
import {
|
|
10
10
|
getDataTypeFromString,
|
|
11
11
|
getMimeType,
|
|
12
12
|
identifyString,
|
|
13
|
-
} from '@/
|
|
14
|
-
import { arweaveClient, easClient, queryClient } from '@/browser/helpers'
|
|
13
|
+
} from '@/helpers'
|
|
15
14
|
import { GET_FILES_METADATA } from '@/browser/schema/file/queries'
|
|
16
15
|
import debug from 'debug'
|
|
17
|
-
import {
|
|
18
|
-
import { getGlobalService } from '@/browser/services'
|
|
16
|
+
import { getGlobalService } from '@/services'
|
|
19
17
|
import { waitFor } from 'xstate'
|
|
20
|
-
import { getMetadata } from '@/
|
|
21
|
-
import { saveMetadata } from '@/
|
|
18
|
+
import { getMetadata } from '@/db/read/getMetadata'
|
|
19
|
+
import { saveMetadata } from '@/db/write/saveMetadata'
|
|
22
20
|
import { GET_TRANSACTION_TAGS } from '@/browser/arweave/queries'
|
|
23
|
-
import { saveAppState } from '@/
|
|
21
|
+
import { saveAppState } from '@/db/write/saveAppState'
|
|
22
|
+
import { BaseDb } from '@/db/BaseDb'
|
|
23
|
+
import { BaseEasClient, BaseQueryClient, BaseArweaveClient } from '@/helpers'
|
|
24
|
+
|
|
25
|
+
const easClient = BaseEasClient.getEasClient()
|
|
26
|
+
const queryClient = BaseQueryClient.getQueryClient()
|
|
27
|
+
const arweaveClient = BaseArweaveClient.getArweaveClient()
|
|
24
28
|
|
|
25
29
|
const logger = debug('app:files:download')
|
|
26
30
|
|
|
@@ -37,11 +41,11 @@ export const downloadAllFilesRequestHandler = async ({
|
|
|
37
41
|
export const downloadAllFilesBinaryRequestHandler = async () => {
|
|
38
42
|
let addresses: string[] | undefined
|
|
39
43
|
|
|
40
|
-
if (isAppDbReady()) {
|
|
44
|
+
if (BaseDb.isAppDbReady()) {
|
|
41
45
|
addresses = await getAddressesFromDb()
|
|
42
46
|
}
|
|
43
47
|
|
|
44
|
-
if (!isAppDbReady()) {
|
|
48
|
+
if (!BaseDb.isAppDbReady()) {
|
|
45
49
|
const globalService = getGlobalService()
|
|
46
50
|
const internalService = globalService.getSnapshot().context.internalService
|
|
47
51
|
if (internalService) {
|
|
@@ -90,7 +94,7 @@ export const downloadAllFilesBinaryRequestHandler = async () => {
|
|
|
90
94
|
await fs.promises.mkdir('/files/images', { recursive: true })
|
|
91
95
|
}
|
|
92
96
|
|
|
93
|
-
const appDb = getAppDb()
|
|
97
|
+
const appDb = BaseDb.getAppDb()
|
|
94
98
|
|
|
95
99
|
if (!appDb) {
|
|
96
100
|
console.warn('[fetchAll/actors] [fetchAllBinaryData] seedDb not available')
|
package/dist/src/drizzle.ts
CHANGED
|
@@ -5,7 +5,7 @@ import { camelCase, snakeCase } from 'lodash-es'
|
|
|
5
5
|
import * as nunjucks from 'nunjucks'
|
|
6
6
|
import { ILoader } from 'nunjucks'
|
|
7
7
|
import { ModelClassType } from '@/types'
|
|
8
|
-
import { SCHEMA_NJK } from '@/
|
|
8
|
+
import { SCHEMA_NJK } from '@/helpers/constants'
|
|
9
9
|
import {
|
|
10
10
|
appGeneratedSchemaDir,
|
|
11
11
|
dotSeedDir,
|
package/dist/src/eas.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { toSnakeCase } from '@/
|
|
2
|
-
import { getSchemaForItemProperty } from '@/
|
|
1
|
+
import { toSnakeCase } from '@/helpers'
|
|
2
|
+
import { getSchemaForItemProperty } from '@/helpers/getSchemaForItemProperty'
|
|
3
3
|
|
|
4
4
|
const schemaUidForSchemaDefinition = new Map<string, string>()
|
|
5
5
|
|
|
@@ -1,10 +1,14 @@
|
|
|
1
1
|
import { EventObject, fromCallback } from 'xstate'
|
|
2
|
-
import { GET_PROPERTIES } from '@/
|
|
3
|
-
import { itemMachineSingle } from '@/
|
|
4
|
-
import { PropertyType } from '@/
|
|
5
|
-
import {
|
|
6
|
-
import { Attestation } from '@/browser/gql/graphql'
|
|
2
|
+
import { GET_PROPERTIES } from '@/Item/queries'
|
|
3
|
+
import { itemMachineSingle } from '@/Item/service/itemMachineSingle'
|
|
4
|
+
import { PropertyType } from '@/seedSchema'
|
|
5
|
+
import { Attestation } from '@/graphql/gql/graphql'
|
|
7
6
|
import { ModelClassType } from '@/types'
|
|
7
|
+
import { BaseEasClient, BaseQueryClient } from '@/helpers'
|
|
8
|
+
|
|
9
|
+
const easClient = BaseEasClient.getEasClient()
|
|
10
|
+
const queryClient = BaseQueryClient.getQueryClient()
|
|
11
|
+
|
|
8
12
|
|
|
9
13
|
export const fetchDataFromEas = fromCallback<
|
|
10
14
|
EventObject,
|
|
@@ -3,22 +3,26 @@ import {
|
|
|
3
3
|
GET_ALL_PROPERTIES_FOR_ALL_VERSIONS,
|
|
4
4
|
GET_SEED_IDS,
|
|
5
5
|
GET_VERSIONS,
|
|
6
|
-
} from '@/
|
|
6
|
+
} from '@/Item/queries'
|
|
7
7
|
import {
|
|
8
8
|
models as modelsTable,
|
|
9
9
|
modelUids,
|
|
10
10
|
PropertyType,
|
|
11
|
-
} from '@/
|
|
12
|
-
import { Attestation } from '@/
|
|
11
|
+
} from '@/seedSchema'
|
|
12
|
+
import { Attestation } from '@/graphql/gql/graphql'
|
|
13
13
|
import {
|
|
14
14
|
AllItemsMachineContext,
|
|
15
15
|
FromCallbackInput,
|
|
16
16
|
ModelClassType,
|
|
17
17
|
} from '@/types'
|
|
18
|
-
import { getAddressesFromDb } from '@/
|
|
18
|
+
import { getAddressesFromDb } from '@/helpers/db'
|
|
19
19
|
import { eq } from 'drizzle-orm'
|
|
20
|
-
import {
|
|
21
|
-
import {
|
|
20
|
+
import { BaseDb } from '@/db/BaseDb'
|
|
21
|
+
import { BaseEasClient } from '@/helpers/BaseEasClient'
|
|
22
|
+
import { BaseQueryClient } from '@/helpers/BaseQueryClient'
|
|
23
|
+
|
|
24
|
+
const easClient = BaseEasClient.getEasClient()
|
|
25
|
+
const queryClient = BaseQueryClient.getQueryClient()
|
|
22
26
|
|
|
23
27
|
export const fetchRelatedItems = fromCallback<
|
|
24
28
|
EventObject,
|
|
@@ -26,7 +30,7 @@ export const fetchRelatedItems = fromCallback<
|
|
|
26
30
|
>(({ sendBack, input: { context } }) => {
|
|
27
31
|
const { ModelClass, modelName } = context
|
|
28
32
|
|
|
29
|
-
const appDb = getAppDb()
|
|
33
|
+
const appDb = BaseDb.getAppDb()
|
|
30
34
|
|
|
31
35
|
const relatedProperties = new Map<string, PropertyType>()
|
|
32
36
|
const relatedVersionsBySeedUid = new Map<string, Attestation[]>()
|
package/dist/src/fetchSeeds.ts
CHANGED
|
@@ -1,10 +1,14 @@
|
|
|
1
1
|
import { EventObject, fromCallback } from 'xstate'
|
|
2
|
-
import { GET_SEEDS } from '@/
|
|
2
|
+
import { GET_SEEDS } from '@/Item/queries'
|
|
3
3
|
import { itemMachineAll } from '@/browser/item/all/itemMachineAll'
|
|
4
|
-
import { Attestation } from '@/
|
|
5
|
-
import {
|
|
4
|
+
import { Attestation } from '@/graphql/gql/graphql'
|
|
5
|
+
import { BaseEasClient } from '@/helpers/BaseEasClient'
|
|
6
|
+
import { BaseQueryClient } from '@/helpers/BaseQueryClient'
|
|
6
7
|
import debug from 'debug'
|
|
7
8
|
|
|
9
|
+
const easClient = BaseEasClient.getEasClient()
|
|
10
|
+
const queryClient = BaseQueryClient.getQueryClient()
|
|
11
|
+
|
|
8
12
|
const logger = debug('app:allItemsActors:fetchSeeds')
|
|
9
13
|
|
|
10
14
|
export const fetchSeeds = fromCallback<EventObject, typeof itemMachineAll>(
|
|
@@ -39,6 +43,6 @@ export const fetchSeeds = fromCallback<EventObject, typeof itemMachineAll>(
|
|
|
39
43
|
sendBack({ type: 'fetchSeedsSuccess', itemSeeds })
|
|
40
44
|
})
|
|
41
45
|
|
|
42
|
-
return () => {}
|
|
46
|
+
return () => { }
|
|
43
47
|
},
|
|
44
48
|
)
|
|
@@ -1,8 +1,13 @@
|
|
|
1
1
|
import { EventObject, fromCallback } from 'xstate'
|
|
2
|
-
import { GET_VERSIONS } from '@/
|
|
2
|
+
import { GET_VERSIONS } from '@/Item/queries'
|
|
3
3
|
import { itemMachineAll } from '@/browser/item/all/itemMachineAll'
|
|
4
|
-
import { Attestation } from '@/
|
|
5
|
-
import {
|
|
4
|
+
import { Attestation } from '@/graphql/gql/graphql'
|
|
5
|
+
import { BaseEasClient } from '@/helpers/BaseEasClient'
|
|
6
|
+
import { BaseQueryClient } from '@/helpers/BaseQueryClient'
|
|
7
|
+
|
|
8
|
+
const easClient = BaseEasClient.getEasClient()
|
|
9
|
+
const queryClient = BaseQueryClient.getQueryClient()
|
|
10
|
+
|
|
6
11
|
|
|
7
12
|
export const fetchVersions = fromCallback<EventObject, typeof itemMachineAll>(
|
|
8
13
|
({ sendBack, input: { context } }) => {
|
|
@@ -36,6 +41,6 @@ export const fetchVersions = fromCallback<EventObject, typeof itemMachineAll>(
|
|
|
36
41
|
sendBack({ type: 'fetchVersionsSuccess', itemVersions })
|
|
37
42
|
})
|
|
38
43
|
|
|
39
|
-
return () => {}
|
|
44
|
+
return () => { }
|
|
40
45
|
},
|
|
41
46
|
)
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { BaseDb } from '@/db/BaseDb'
|
|
2
|
+
import { seeds } from '@/seedSchema'
|
|
3
|
+
import { and, eq, isNotNull, not, or } from 'drizzle-orm'
|
|
4
|
+
|
|
5
|
+
type GetExistingItemProps = {
|
|
6
|
+
seedLocalId: string
|
|
7
|
+
seedUid: string
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
type GetExistingItemReturn = {
|
|
11
|
+
seedLocalId: string
|
|
12
|
+
seedUid: string
|
|
13
|
+
createdAt: string
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export const getExistingItem = async ({
|
|
17
|
+
seedLocalId,
|
|
18
|
+
seedUid,
|
|
19
|
+
}: GetExistingItemProps): Promise<GetExistingItemReturn | undefined> => {
|
|
20
|
+
const appDb = BaseDb.getAppDb()
|
|
21
|
+
|
|
22
|
+
const rows = await appDb
|
|
23
|
+
.select({
|
|
24
|
+
seedLocalId: seeds.localId,
|
|
25
|
+
seedUid: seeds.uid,
|
|
26
|
+
createdAt: seeds.createdAt,
|
|
27
|
+
})
|
|
28
|
+
.from(seeds)
|
|
29
|
+
.where(
|
|
30
|
+
or(
|
|
31
|
+
and(
|
|
32
|
+
isNotNull(seeds.uid),
|
|
33
|
+
not(eq(seeds.uid, '')),
|
|
34
|
+
not(eq(seeds.uid, 'undefined')),
|
|
35
|
+
not(eq(seeds.uid, 'null')),
|
|
36
|
+
not(eq(seeds.uid, 'false')),
|
|
37
|
+
not(eq(seeds.uid, '0')),
|
|
38
|
+
eq(seeds.uid, seedUid)
|
|
39
|
+
),
|
|
40
|
+
and(
|
|
41
|
+
isNotNull(seeds.localId),
|
|
42
|
+
not(eq(seeds.localId, '')),
|
|
43
|
+
not(eq(seeds.localId, 'undefined')),
|
|
44
|
+
not(eq(seeds.localId, 'null')),
|
|
45
|
+
not(eq(seeds.localId, 'false')),
|
|
46
|
+
not(eq(seeds.localId, '0')),
|
|
47
|
+
eq(seeds.localId, seedLocalId)
|
|
48
|
+
)
|
|
49
|
+
)
|
|
50
|
+
)
|
|
51
|
+
|
|
52
|
+
if (!rows || rows.length === 0) {
|
|
53
|
+
return undefined
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
const matchingRow = rows.find(row => row.seedUid === seedUid) ||
|
|
57
|
+
rows.find(row => row.seedLocalId === seedLocalId)
|
|
58
|
+
|
|
59
|
+
return matchingRow
|
|
60
|
+
}
|
package/dist/src/getItem.ts
CHANGED
|
@@ -1,125 +1,10 @@
|
|
|
1
1
|
import { Item } from '@/browser/item'
|
|
2
|
+
import { getItemData } from './getItemData'
|
|
3
|
+
import { GetItem } from '@/types'
|
|
2
4
|
|
|
3
|
-
import { getItemProperties } from '@/browser/db/read/getItemProperties'
|
|
4
|
-
import { getSeedData } from '@/browser/db/read/getSeedData'
|
|
5
|
-
import debug from 'debug'
|
|
6
|
-
import { ItemData } from '@/types'
|
|
7
|
-
import { getAppDb } from '../sqlWasmClient'
|
|
8
|
-
import { seeds } from '@/shared/seedSchema'
|
|
9
|
-
import { and, eq, getTableColumns, gt, sql, SQL } from 'drizzle-orm'
|
|
10
|
-
import { getVersionData } from './subqueries/versionData'
|
|
11
|
-
|
|
12
|
-
const logger = debug('app:db:queries:getItem')
|
|
13
|
-
|
|
14
|
-
type GetItemDataFromDbParams = {
|
|
15
|
-
modelName?: string
|
|
16
|
-
seedLocalId?: string
|
|
17
|
-
seedUid?: string
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
type GetItemDataFromDb = (
|
|
21
|
-
params: GetItemDataFromDbParams,
|
|
22
|
-
) => Promise<ItemData | undefined>
|
|
23
|
-
|
|
24
|
-
export const getItemDataFromDb: GetItemDataFromDb = async ({
|
|
25
|
-
modelName,
|
|
26
|
-
seedLocalId,
|
|
27
|
-
seedUid,
|
|
28
|
-
}) => {
|
|
29
|
-
if (!seedLocalId && !seedUid) {
|
|
30
|
-
throw new Error('[db/queries] [getItem] no seedLocalId or seedUid')
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
if (seedUid && !seedLocalId) {
|
|
34
|
-
const seedData = await getSeedData({ seedUid })
|
|
35
|
-
if (!seedData) {
|
|
36
|
-
logger('[db/queries] [getItem] no seedData seedUid', seedUid)
|
|
37
|
-
return
|
|
38
|
-
}
|
|
39
|
-
seedLocalId = seedData.localId
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
const appDb = getAppDb()
|
|
43
|
-
|
|
44
|
-
const { localId, uid, ...rest } = getTableColumns(seeds)
|
|
45
|
-
|
|
46
|
-
const whereClauses: SQL[] = []
|
|
47
|
-
|
|
48
|
-
if (modelName) {
|
|
49
|
-
whereClauses.push(eq(seeds.type, modelName.toLowerCase()))
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
if (seedUid) {
|
|
53
|
-
whereClauses.push(eq(seeds.uid, seedUid))
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
if (seedLocalId && !seedUid) {
|
|
57
|
-
whereClauses.push(eq(seeds.localId, seedLocalId))
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
const versionData = getVersionData()
|
|
61
|
-
|
|
62
|
-
const itemDataRows = await appDb
|
|
63
|
-
.with(versionData)
|
|
64
|
-
.select({
|
|
65
|
-
...rest,
|
|
66
|
-
seedLocalId: seeds.localId,
|
|
67
|
-
seedUid: seeds.uid,
|
|
68
|
-
versionsCount: versionData.versionsCount,
|
|
69
|
-
lastVersionPublishedAt: versionData.lastVersionPublishedAt,
|
|
70
|
-
latestVersionUid: versionData.latestVersionUid,
|
|
71
|
-
latestVersionLocalId: versionData.latestVersionLocalId,
|
|
72
|
-
})
|
|
73
|
-
.from(seeds)
|
|
74
|
-
.leftJoin(versionData, eq(seeds.localId, versionData.seedLocalId))
|
|
75
|
-
.where(and(...whereClauses, gt(versionData.versionsCount, 0)))
|
|
76
|
-
.orderBy(sql.raw('COALESCE(attestation_created_at, created_at) DESC'))
|
|
77
|
-
.groupBy(seeds.localId)
|
|
78
|
-
|
|
79
|
-
if (!itemDataRows || itemDataRows.length === 0) {
|
|
80
|
-
logger('[db/queries] [getItemDataFromDb] no itemDataRows')
|
|
81
|
-
return
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
let itemData = itemDataRows[0]
|
|
85
|
-
|
|
86
|
-
const propertiesData = await getItemProperties({
|
|
87
|
-
seedLocalId,
|
|
88
|
-
seedUid: itemData.seedUid || undefined,
|
|
89
|
-
})
|
|
90
|
-
|
|
91
|
-
if (!propertiesData || propertiesData.length === 0) {
|
|
92
|
-
return itemData
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
for (const propertyData of propertiesData) {
|
|
96
|
-
const propertyName = propertyData.propertyName
|
|
97
|
-
|
|
98
|
-
let propertyValue = propertyData.propertyValue
|
|
99
|
-
|
|
100
|
-
if (propertyName.endsWith('Id') || propertyName.endsWith('Ids')) {
|
|
101
|
-
if (propertyData.refSeedType) {
|
|
102
|
-
const propertyNameVariant = propertyName.replace(/Ids?$/, '')
|
|
103
|
-
itemData[propertyNameVariant] = propertyValue
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
itemData[propertyName] = propertyValue
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
if (itemData) return itemData
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
type GetItemParams = {
|
|
114
|
-
modelName?: string
|
|
115
|
-
seedLocalId?: string
|
|
116
|
-
seedUid?: string
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
type GetItem = (params: GetItemParams) => Promise<Item<any> | undefined>
|
|
120
5
|
|
|
121
6
|
export const getItem: GetItem = async ({ modelName, seedLocalId, seedUid }) => {
|
|
122
|
-
const itemInitObj = await
|
|
7
|
+
const itemInitObj = await getItemData({
|
|
123
8
|
modelName,
|
|
124
9
|
seedLocalId,
|
|
125
10
|
seedUid,
|