@seedprotocol/sdk 0.3.2 → 0.3.4
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 +28 -126
- package/dist/bin.js.map +1 -1
- package/dist/main.js +15 -24
- package/dist/main.js.map +1 -1
- package/dist/src/Item/BaseItem.js +309 -0
- package/dist/src/Item/BaseItem.js.map +1 -0
- package/dist/src/Item/index.js +4 -0
- package/dist/src/Item/index.js.map +1 -0
- package/dist/src/Item/queries.js +94 -0
- package/dist/src/Item/queries.js.map +1 -0
- package/dist/src/Item/service/actors/fetchDataFromEas.js +74 -0
- package/dist/src/Item/service/actors/fetchDataFromEas.js.map +1 -0
- package/dist/src/Item/service/actors/hydrateExistingItem.js +119 -0
- package/dist/src/Item/service/actors/hydrateExistingItem.js.map +1 -0
- package/dist/src/Item/service/actors/hydrateNewItem.js +28 -0
- package/dist/src/Item/service/actors/hydrateNewItem.js.map +1 -0
- package/dist/src/Item/service/actors/initialize.js +39 -0
- package/dist/src/Item/service/actors/initialize.js.map +1 -0
- package/dist/src/Item/service/actors/reload.js +26 -0
- package/dist/src/Item/service/actors/reload.js.map +1 -0
- package/dist/src/Item/service/actors/waitForDb.js +22 -0
- package/dist/src/Item/service/actors/waitForDb.js.map +1 -0
- package/dist/src/Item/service/itemMachineSingle.js +154 -0
- package/dist/src/Item/service/itemMachineSingle.js.map +1 -0
- package/dist/src/ItemProperty/BaseItemProperty.d.ts.map +1 -1
- package/dist/src/ItemProperty/BaseItemProperty.js +306 -0
- package/dist/src/ItemProperty/BaseItemProperty.js.map +1 -0
- package/dist/src/ItemProperty/service/actors/hydrateFromDb.d.ts.map +1 -1
- package/dist/src/ItemProperty/service/actors/hydrateFromDb.js +196 -0
- package/dist/src/ItemProperty/service/actors/hydrateFromDb.js.map +1 -0
- package/dist/src/ItemProperty/service/actors/initialize.d.ts.map +1 -1
- package/dist/src/ItemProperty/service/actors/initialize.js +60 -0
- package/dist/src/ItemProperty/service/actors/initialize.js.map +1 -0
- package/dist/src/ItemProperty/service/actors/resolveRelatedValue.d.ts.map +1 -1
- package/dist/src/ItemProperty/service/actors/resolveRelatedValue.js +317 -0
- package/dist/src/ItemProperty/service/actors/resolveRelatedValue.js.map +1 -0
- package/dist/src/ItemProperty/service/actors/resolveRemoteStorage.d.ts.map +1 -1
- package/dist/src/ItemProperty/service/actors/resolveRemoteStorage.js +62 -0
- package/dist/src/ItemProperty/service/actors/resolveRemoteStorage.js.map +1 -0
- package/dist/src/ItemProperty/service/actors/saveValueToDb/analyzeInput.js +100 -0
- package/dist/src/ItemProperty/service/actors/saveValueToDb/analyzeInput.js.map +1 -0
- package/dist/src/ItemProperty/service/actors/saveValueToDb/saveImageSrc.d.ts.map +1 -1
- package/dist/src/ItemProperty/service/actors/saveValueToDb/saveImageSrc.js +178 -0
- package/dist/src/ItemProperty/service/actors/saveValueToDb/saveImageSrc.js.map +1 -0
- package/dist/src/ItemProperty/service/actors/saveValueToDb/saveItemStorage.d.ts.map +1 -1
- package/dist/src/ItemProperty/service/actors/saveValueToDb/saveItemStorage.js +117 -0
- package/dist/src/ItemProperty/service/actors/saveValueToDb/saveItemStorage.js.map +1 -0
- package/dist/src/ItemProperty/service/actors/saveValueToDb/saveRelation.js +81 -0
- package/dist/src/ItemProperty/service/actors/saveValueToDb/saveRelation.js.map +1 -0
- package/dist/src/ItemProperty/service/actors/waitForDb.js +22 -0
- package/dist/src/ItemProperty/service/actors/waitForDb.js.map +1 -0
- package/dist/src/ItemProperty/service/propertyMachine.js +198 -0
- package/dist/src/ItemProperty/service/propertyMachine.js.map +1 -0
- package/dist/src/browser/Item/Item.js +11 -0
- package/dist/src/browser/Item/Item.js.map +1 -0
- package/dist/src/browser/Item/index.js +2 -0
- package/dist/src/browser/Item/index.js.map +1 -0
- package/dist/src/browser/ItemProperty/ItemProperty.js +11 -0
- package/dist/src/browser/ItemProperty/ItemProperty.js.map +1 -0
- package/dist/src/browser/db/Db.d.ts +10 -5
- package/dist/src/browser/db/Db.d.ts.map +1 -1
- package/dist/src/browser/db/Db.js +218 -0
- package/dist/src/browser/db/Db.js.map +1 -0
- package/dist/src/browser/db/sqlWasmClient.d.ts +0 -12
- package/dist/src/browser/db/sqlWasmClient.d.ts.map +1 -1
- package/dist/{ArweaveClient-C0g0es2v.js → src/browser/helpers/ArweaveClient.js} +3 -3
- package/dist/{ArweaveClient-C0g0es2v.js.map → src/browser/helpers/ArweaveClient.js.map} +1 -1
- package/dist/src/browser/helpers/FileManager.d.ts +2 -0
- package/dist/src/browser/helpers/FileManager.d.ts.map +1 -1
- package/dist/src/browser/helpers/FileManager.js +308 -0
- package/dist/src/browser/helpers/FileManager.js.map +1 -0
- package/dist/src/browser/helpers/QueryClient.d.ts.map +1 -1
- package/dist/{QueryClient-hzOtFe99.js → src/browser/helpers/QueryClient.js} +2 -5
- package/dist/src/browser/helpers/QueryClient.js.map +1 -0
- package/dist/src/browser/index.d.ts +2 -1
- package/dist/src/browser/index.d.ts.map +1 -1
- package/dist/src/browser/react/db.js +6 -0
- package/dist/src/browser/react/db.js.map +1 -0
- package/dist/src/browser/react/item.js +260 -0
- package/dist/src/browser/react/item.js.map +1 -0
- package/dist/src/browser/react/property.js +107 -0
- package/dist/src/browser/react/property.js.map +1 -0
- package/dist/src/browser/react/services.d.ts.map +1 -1
- package/dist/src/browser/react/services.js +299 -0
- package/dist/src/browser/react/services.js.map +1 -0
- package/dist/src/browser/react/trash.js +25 -0
- package/dist/src/browser/react/trash.js.map +1 -0
- package/dist/src/browser/workers/FileDownloader.js +49 -0
- package/dist/src/browser/workers/FileDownloader.js.map +1 -0
- package/dist/src/browser/workers/ImageResizer.d.ts.map +1 -1
- package/dist/src/browser/workers/ImageResizer.js +62 -0
- package/dist/src/browser/workers/ImageResizer.js.map +1 -0
- package/dist/src/browser/workers/dbWorker.d.ts +1 -0
- package/dist/src/browser/workers/dbWorker.d.ts.map +1 -0
- package/dist/src/browser/workers/filesDownload.js +241 -0
- package/dist/src/browser/workers/filesDownload.js.map +1 -0
- package/dist/src/browser/workers/imageResize.js +379 -0
- package/dist/src/browser/workers/imageResize.js.map +1 -0
- package/dist/src/client/ClientManager.d.ts +12 -12
- package/dist/src/client/ClientManager.d.ts.map +1 -1
- package/dist/src/client/ClientManager.js +59 -0
- package/dist/src/client/ClientManager.js.map +1 -0
- package/dist/src/client/actions/setAddresses.js +19 -0
- package/dist/src/client/actions/setAddresses.js.map +1 -0
- package/dist/src/client/actors/initialize.d.ts.map +1 -1
- package/dist/src/client/actors/initialize.js +84 -0
- package/dist/src/client/actors/initialize.js.map +1 -0
- package/dist/src/client/actors/saveAppState.js +44 -0
- package/dist/src/client/actors/saveAppState.js.map +1 -0
- package/dist/src/client/clientManagerMachine.js +61 -0
- package/dist/src/client/clientManagerMachine.js.map +1 -0
- package/dist/src/db/Db/BaseDb.d.ts +1 -2
- package/dist/src/db/Db/BaseDb.d.ts.map +1 -1
- package/dist/src/db/Db/BaseDb.js +22 -0
- package/dist/src/db/Db/BaseDb.js.map +1 -0
- package/dist/{seed.schema.config-DzDX8e7g.js → src/db/configs/seed.schema.config.js} +3 -25
- package/dist/src/db/configs/seed.schema.config.js.map +1 -0
- package/dist/src/db/read/getExistingItem.js +29 -0
- package/dist/src/db/read/getExistingItem.js.map +1 -0
- package/dist/src/db/read/getItem.js +26 -0
- package/dist/src/db/read/getItem.js.map +1 -0
- package/dist/src/db/read/getItemData.js +84 -0
- package/dist/src/db/read/getItemData.js.map +1 -0
- package/dist/src/db/read/getItemProperties.js +49 -0
- package/dist/src/db/read/getItemProperties.js.map +1 -0
- package/dist/src/db/read/getItemProperty.js +30 -0
- package/dist/src/db/read/getItemProperty.js.map +1 -0
- package/dist/src/db/read/getItems.js +49 -0
- package/dist/src/db/read/getItems.js.map +1 -0
- package/dist/src/db/read/getMetadata.js +32 -0
- package/dist/src/db/read/getMetadata.js.map +1 -0
- package/dist/src/db/read/getModelSchemas.js +69 -0
- package/dist/src/db/read/getModelSchemas.js.map +1 -0
- package/dist/src/db/read/getPropertyData.js +38 -0
- package/dist/src/db/read/getPropertyData.js.map +1 -0
- package/dist/src/db/read/getPublishPayload.js +213 -0
- package/dist/src/db/read/getPublishPayload.js.map +1 -0
- package/dist/src/db/read/getPublishUploads.d.ts.map +1 -1
- package/dist/src/db/read/getPublishUploads.js +134 -0
- package/dist/src/db/read/getPublishUploads.js.map +1 -0
- package/dist/src/db/read/getRelationValueData.js +30 -0
- package/dist/src/db/read/getRelationValueData.js.map +1 -0
- package/dist/src/db/read/getSchemaUidForModel.js +28 -0
- package/dist/src/db/read/getSchemaUidForModel.js.map +1 -0
- package/dist/src/db/read/getSeedData.js +28 -0
- package/dist/src/db/read/getSeedData.js.map +1 -0
- package/dist/src/db/read/getStorageTransactionIdForSeedUid.js +30 -0
- package/dist/src/db/read/getStorageTransactionIdForSeedUid.js.map +1 -0
- package/dist/src/db/read/getVersionData.js +33 -0
- package/dist/src/db/read/getVersionData.js.map +1 -0
- package/dist/src/db/read/subqueries/metadataLatest.js +35 -0
- package/dist/src/db/read/subqueries/metadataLatest.js.map +1 -0
- package/dist/src/db/read/subqueries/versionData.js +27 -0
- package/dist/src/db/read/subqueries/versionData.js.map +1 -0
- package/dist/src/db/write/createMetadata.d.ts.map +1 -1
- package/dist/src/db/write/createMetadata.js +63 -0
- package/dist/src/db/write/createMetadata.js.map +1 -0
- package/dist/src/db/write/createNewItem.js +38 -0
- package/dist/src/db/write/createNewItem.js.map +1 -0
- package/dist/src/db/write/createSeed.js +29 -0
- package/dist/src/db/write/createSeed.js.map +1 -0
- package/dist/src/db/write/createSeeds.js +25 -0
- package/dist/src/db/write/createSeeds.js.map +1 -0
- package/dist/src/db/write/createVersion.js +25 -0
- package/dist/src/db/write/createVersion.js.map +1 -0
- package/dist/src/db/write/deleteItem.js +21 -0
- package/dist/src/db/write/deleteItem.js.map +1 -0
- package/dist/src/db/write/saveAppState.js +26 -0
- package/dist/src/db/write/saveAppState.js.map +1 -0
- package/dist/src/db/write/saveMetadata.js +22 -0
- package/dist/src/db/write/saveMetadata.js.map +1 -0
- package/dist/src/db/write/updateItemPropertyValue.js +161 -0
- package/dist/src/db/write/updateItemPropertyValue.js.map +1 -0
- package/dist/src/db/write/updateMetadata.js +25 -0
- package/dist/src/db/write/updateMetadata.js.map +1 -0
- package/dist/src/eventBus.js +6 -0
- package/dist/src/eventBus.js.map +1 -0
- package/dist/src/events/files/download.js +161 -0
- package/dist/src/events/files/download.js.map +1 -0
- package/dist/src/events/files/index.d.ts.map +1 -1
- package/dist/src/events/files/index.js +61 -0
- package/dist/src/events/files/index.js.map +1 -0
- package/dist/src/events/index.js +28 -0
- package/dist/src/events/index.js.map +1 -0
- package/dist/src/events/item/index.js +28 -0
- package/dist/src/events/item/index.js.map +1 -0
- package/dist/src/events/item/publish.js +19 -0
- package/dist/src/events/item/publish.js.map +1 -0
- package/dist/src/events/item/syncDbWithEas.js +428 -0
- package/dist/src/events/item/syncDbWithEas.js.map +1 -0
- package/dist/src/events/services/allItems.js +20 -0
- package/dist/src/events/services/allItems.js.map +1 -0
- package/dist/src/events/services/index.js +9 -0
- package/dist/src/events/services/index.js.map +1 -0
- package/dist/src/graphql/gql/gql.js +38 -0
- package/dist/src/graphql/gql/gql.js.map +1 -0
- package/dist/src/graphql/gql/graphql.js +106 -0
- package/dist/src/graphql/gql/graphql.js.map +1 -0
- package/dist/src/helpers/ArweaveClient/BaseArweaveClient.js +11 -0
- package/dist/src/helpers/ArweaveClient/BaseArweaveClient.js.map +1 -0
- package/dist/src/helpers/ArweaveClient/index.js +45 -0
- package/dist/src/helpers/ArweaveClient/index.js.map +1 -0
- package/dist/src/helpers/ArweaveClient/queries.js +16 -0
- package/dist/src/helpers/ArweaveClient/queries.js.map +1 -0
- package/dist/src/helpers/EasClient/BaseEasClient.js +14 -0
- package/dist/src/helpers/EasClient/BaseEasClient.js.map +1 -0
- package/dist/src/helpers/FileManager/BaseFileManager.d.ts +3 -0
- package/dist/src/helpers/FileManager/BaseFileManager.d.ts.map +1 -1
- package/dist/src/helpers/FileManager/BaseFileManager.js +55 -0
- package/dist/src/helpers/FileManager/BaseFileManager.js.map +1 -0
- package/dist/src/helpers/QueryClient/BaseQueryClient.js +11 -0
- package/dist/src/helpers/QueryClient/BaseQueryClient.js.map +1 -0
- package/dist/src/helpers/constants.js +73 -0
- package/dist/src/helpers/constants.js.map +1 -0
- package/dist/src/helpers/db.js +43 -0
- package/dist/src/helpers/db.js.map +1 -0
- package/dist/src/helpers/environment.js +24 -0
- package/dist/src/helpers/environment.js.map +1 -0
- package/dist/src/helpers/files.d.ts.map +1 -1
- package/dist/src/helpers/getSchemaForItemProperty.js +51 -0
- package/dist/src/helpers/getSchemaForItemProperty.js.map +1 -0
- package/dist/src/helpers/getSegmentedItemProperties.js +50 -0
- package/dist/src/helpers/getSegmentedItemProperties.js.map +1 -0
- package/dist/src/helpers/index.d.ts.map +1 -1
- package/dist/src/helpers/index.js +101 -0
- package/dist/src/helpers/index.js.map +1 -0
- package/dist/src/helpers/updateMachineContext.js +20 -0
- package/dist/src/helpers/updateMachineContext.js.map +1 -0
- package/dist/src/index.d.ts +1 -5
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/interfaces/IDb.d.ts.map +1 -1
- package/dist/src/node/codegen/drizzle.d.ts.map +1 -1
- package/dist/src/node/codegen/drizzle.js +58 -0
- package/dist/src/node/codegen/drizzle.js.map +1 -0
- package/dist/src/node/constants.js +29 -0
- package/dist/src/node/constants.js.map +1 -0
- package/dist/src/node/db/Db.d.ts +5 -6
- package/dist/src/node/db/Db.d.ts.map +1 -1
- package/dist/{ArweaveClient-CzkBgiZY.js → src/node/helpers/ArweaveClient.js} +3 -3
- package/dist/{ArweaveClient-CzkBgiZY.js.map → src/node/helpers/ArweaveClient.js.map} +1 -1
- package/dist/{EasClient-DQ93i2ci.js → src/node/helpers/EasClient.js} +3 -3
- package/dist/{EasClient-DQ93i2ci.js.map → src/node/helpers/EasClient.js.map} +1 -1
- package/dist/src/node/helpers/FileManager.d.ts.map +1 -1
- package/dist/{QueryClient-Bmnv_moN.js → src/node/helpers/QueryClient.js} +2 -4
- package/dist/{QueryClient-Bmnv_moN.js.map → src/node/helpers/QueryClient.js.map} +1 -1
- package/dist/src/node/helpers/index.d.ts.map +1 -1
- package/dist/src/node/helpers/index.js +28 -0
- package/dist/src/node/helpers/index.js.map +1 -0
- package/dist/src/node/seed.d.ts +0 -6
- package/dist/src/node/seed.d.ts.map +1 -1
- package/dist/src/node/webpack/index.d.ts.map +1 -1
- package/dist/src/node/webpack/index.js +89 -0
- package/dist/src/node/webpack/index.js.map +1 -0
- package/dist/src/schema/file/fetchAll/actors.d.ts.map +1 -1
- package/dist/src/schema/file/queries.js +48 -0
- package/dist/src/schema/file/queries.js.map +1 -0
- package/dist/src/schema/model/index.js +44 -0
- package/dist/src/schema/model/index.js.map +1 -0
- package/dist/src/schema/property/index.js +82 -0
- package/dist/src/schema/property/index.js.map +1 -0
- package/dist/src/seedSchema/AppStateSchema.js +11 -0
- package/dist/src/seedSchema/AppStateSchema.js.map +1 -0
- package/dist/src/seedSchema/MetadataSchema.js +29 -0
- package/dist/src/seedSchema/MetadataSchema.js.map +1 -0
- package/dist/src/seedSchema/ModelSchema.js +33 -0
- package/dist/src/seedSchema/ModelSchema.js.map +1 -0
- package/dist/src/seedSchema/ModelUidSchema.js +18 -0
- package/dist/src/seedSchema/ModelUidSchema.js.map +1 -0
- package/dist/src/seedSchema/SeedSchema.js +16 -0
- package/dist/src/seedSchema/SeedSchema.js.map +1 -0
- package/dist/src/seedSchema/VersionSchema.js +17 -0
- package/dist/src/seedSchema/VersionSchema.js.map +1 -0
- package/dist/src/services/allItems/actors/fetchDbData.js +13 -0
- package/dist/src/services/allItems/actors/fetchDbData.js.map +1 -0
- package/dist/src/services/allItems/actors/fetchRelatedItems.js +137 -0
- package/dist/src/services/allItems/actors/fetchRelatedItems.js.map +1 -0
- package/dist/src/services/allItems/actors/fetchSeeds.js +31 -0
- package/dist/src/services/allItems/actors/fetchSeeds.js.map +1 -0
- package/dist/src/services/allItems/actors/fetchVersions.js +35 -0
- package/dist/src/services/allItems/actors/fetchVersions.js.map +1 -0
- package/dist/src/services/allItems/actors/initialize.js +144 -0
- package/dist/src/services/allItems/actors/initialize.js.map +1 -0
- package/dist/src/services/allItems/actors/processItems.js +55 -0
- package/dist/src/services/allItems/actors/processItems.js.map +1 -0
- package/dist/src/services/allItems/itemMachineAll.js +153 -0
- package/dist/src/services/allItems/itemMachineAll.js.map +1 -0
- package/dist/src/services/db/actors/checkStatus.d.ts.map +1 -1
- package/dist/src/services/db/actors/checkStatus.js +41 -0
- package/dist/src/services/db/actors/checkStatus.js.map +1 -0
- package/dist/src/services/db/actors/connectToDb.d.ts.map +1 -1
- package/dist/src/services/db/actors/connectToDb.js +31 -0
- package/dist/src/services/db/actors/connectToDb.js.map +1 -0
- package/dist/src/services/db/actors/migrate.d.ts.map +1 -1
- package/dist/src/services/db/actors/migrate.js +40 -0
- package/dist/src/services/db/actors/migrate.js.map +1 -0
- package/dist/src/services/db/actors/validate.d.ts.map +1 -1
- package/dist/src/services/db/actors/validate.js +40 -0
- package/dist/src/services/db/actors/validate.js.map +1 -0
- package/dist/src/services/db/actors/waitForFiles.d.ts.map +1 -1
- package/dist/src/services/db/actors/waitForFiles.js +32 -0
- package/dist/src/services/db/actors/waitForFiles.js.map +1 -0
- package/dist/src/services/db/dbMachine.d.ts.map +1 -1
- package/dist/src/services/db/dbMachine.js +156 -0
- package/dist/src/services/db/dbMachine.js.map +1 -0
- package/dist/src/services/events.js +15 -0
- package/dist/src/services/events.js.map +1 -0
- package/dist/src/services/global/actors/addModelsToDb.js +115 -0
- package/dist/src/services/global/actors/addModelsToDb.js.map +1 -0
- package/dist/src/services/global/actors/getSchemaForModel.js +26 -0
- package/dist/src/services/global/actors/getSchemaForModel.js.map +1 -0
- package/dist/src/services/global/actors/initialize.d.ts.map +1 -1
- package/dist/src/services/global/actors/initialize.js +86 -0
- package/dist/src/services/global/actors/initialize.js.map +1 -0
- package/dist/src/services/global/actors/savePublishService.js +22 -0
- package/dist/src/services/global/actors/savePublishService.js.map +1 -0
- package/dist/src/services/global/globalMachine.d.ts +90 -90
- package/dist/src/services/global/globalMachine.d.ts.map +1 -1
- package/dist/src/services/global/globalMachine.js +246 -0
- package/dist/src/services/global/globalMachine.js.map +1 -0
- package/dist/src/services/internal/actors/configureFs.d.ts.map +1 -1
- package/dist/src/services/internal/actors/configureFs.js +70 -0
- package/dist/src/services/internal/actors/configureFs.js.map +1 -0
- package/dist/src/services/internal/actors/loadAppDb.d.ts.map +1 -1
- package/dist/src/services/internal/actors/loadAppDb.js +22 -0
- package/dist/src/services/internal/actors/loadAppDb.js.map +1 -0
- package/dist/src/services/internal/actors/prepareDb.d.ts.map +1 -1
- package/dist/src/services/internal/actors/saveConfig.js +88 -0
- package/dist/src/services/internal/actors/saveConfig.js.map +1 -0
- package/dist/src/services/internal/actors/validateInput.js +34 -0
- package/dist/src/services/internal/actors/validateInput.js.map +1 -0
- package/dist/src/services/internal/actors/waitForFiles.js +33 -0
- package/dist/src/services/internal/actors/waitForFiles.js.map +1 -0
- package/dist/src/services/internal/constants.js +85 -0
- package/dist/src/services/internal/constants.js.map +1 -0
- package/dist/src/services/internal/helpers.d.ts.map +1 -1
- package/dist/src/services/internal/helpers.js +171 -0
- package/dist/src/services/internal/helpers.js.map +1 -0
- package/dist/src/services/internal/internalMachine.d.ts +0 -10
- package/dist/src/services/internal/internalMachine.d.ts.map +1 -1
- package/dist/src/services/internal/internalMachine.js +188 -0
- package/dist/src/services/internal/internalMachine.js.map +1 -0
- package/dist/src/services/publish/actors/createPublishAttempt.js +14 -0
- package/dist/src/services/publish/actors/createPublishAttempt.js.map +1 -0
- package/dist/src/services/publish/actors/preparePublishRequestData.js +70 -0
- package/dist/src/services/publish/actors/preparePublishRequestData.js.map +1 -0
- package/dist/src/services/publish/actors/upload.js +55 -0
- package/dist/src/services/publish/actors/upload.js.map +1 -0
- package/dist/src/services/publish/actors/validateItemData.js +18 -0
- package/dist/src/services/publish/actors/validateItemData.js.map +1 -0
- package/dist/src/services/publish/publishMachine.js +71 -0
- package/dist/src/services/publish/publishMachine.js.map +1 -0
- package/dist/src/stores/eas.js +40 -0
- package/dist/src/stores/eas.js.map +1 -0
- package/dist/src/stores/modelClass.js +16 -0
- package/dist/src/stores/modelClass.js.map +1 -0
- package/dist/src/types/index.d.ts.map +1 -1
- package/package.json +7 -6
- package/dist/Db-Bn2_MKKq.js +0 -82
- package/dist/Db-Bn2_MKKq.js.map +0 -1
- package/dist/Db-DL9szGvt.js +0 -385
- package/dist/Db-DL9szGvt.js.map +0 -1
- package/dist/EasClient-B9a3NsTi.js +0 -10
- package/dist/EasClient-B9a3NsTi.js.map +0 -1
- package/dist/FileManager-Gci1k5HJ.js +0 -50
- package/dist/FileManager-Gci1k5HJ.js.map +0 -1
- package/dist/Item-CUQ8wILT.js +0 -35
- package/dist/Item-CUQ8wILT.js.map +0 -1
- package/dist/ItemProperty-DjGDsSEN.js +0 -34
- package/dist/ItemProperty-DjGDsSEN.js.map +0 -1
- package/dist/QueryClient-hzOtFe99.js.map +0 -1
- package/dist/constants-Bhl5dZpN.js +0 -227
- package/dist/constants-Bhl5dZpN.js.map +0 -1
- package/dist/index-DJjmh3u9.js +0 -8934
- package/dist/index-DJjmh3u9.js.map +0 -1
- package/dist/index-DtB4Tlwd.js +0 -26
- package/dist/index-DtB4Tlwd.js.map +0 -1
- package/dist/seed.schema.config-DzDX8e7g.js.map +0 -1
- package/dist/src/browser/db/index.d.ts +0 -2
- package/dist/src/browser/db/index.d.ts.map +0 -1
- package/dist/src/db/Db/index.d.ts +0 -5
- package/dist/src/db/Db/index.d.ts.map +0 -1
- package/dist/src/helpers/EasClient/index.d.ts +0 -5
- package/dist/src/helpers/EasClient/index.d.ts.map +0 -1
- package/dist/src/helpers/FileManager/index.d.ts +0 -5
- package/dist/src/helpers/FileManager/index.d.ts.map +0 -1
- package/dist/src/helpers/QueryClient/index.d.ts +0 -5
- package/dist/src/helpers/QueryClient/index.d.ts.map +0 -1
- package/dist/src/node/index.d.ts +0 -2
- package/dist/src/node/index.d.ts.map +0 -1
- package/dist/src/services/global/index.d.ts +0 -2
- package/dist/src/services/global/index.d.ts.map +0 -1
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
import { escapeSqliteString } from '../../helpers/db.js';
|
|
2
|
+
import '../../seedSchema/SeedSchema.js';
|
|
3
|
+
import '../../seedSchema/VersionSchema.js';
|
|
4
|
+
import { metadata } from '../../seedSchema/MetadataSchema.js';
|
|
5
|
+
import '../../seedSchema/AppStateSchema.js';
|
|
6
|
+
import '../../seedSchema/ModelSchema.js';
|
|
7
|
+
import '../../seedSchema/ModelUidSchema.js';
|
|
8
|
+
import { and, eq, sql } from 'drizzle-orm';
|
|
9
|
+
import { getSeedData } from '../read/getSeedData.js';
|
|
10
|
+
import { getVersionData } from '../read/getVersionData.js';
|
|
11
|
+
import { generateId } from '../../helpers/index.js';
|
|
12
|
+
import debug from 'debug';
|
|
13
|
+
import { BaseDb } from '../Db/BaseDb.js';
|
|
14
|
+
|
|
15
|
+
const logger = debug('seedSdk:write:updateItemPropertyValue');
|
|
16
|
+
const updateItemPropertyValue = async ({ localId, propertyName, newValue, seedUid, seedLocalId, modelName, refSeedType, refResolvedValue, refResolvedDisplayValue, versionLocalId, versionUid, schemaUid, localStorageDir, }) => {
|
|
17
|
+
if (!localId && !seedLocalId) {
|
|
18
|
+
logger(`[db/write] [updateItemPropertyValue] no propertyLocalId or seedLocalId for property: ${propertyName}`);
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
let safeNewValue = newValue;
|
|
22
|
+
if (typeof newValue === 'string' &&
|
|
23
|
+
!refResolvedDisplayValue &&
|
|
24
|
+
!refResolvedValue) {
|
|
25
|
+
safeNewValue = escapeSqliteString(newValue);
|
|
26
|
+
}
|
|
27
|
+
const appDb = BaseDb.getAppDb();
|
|
28
|
+
const rows = await appDb
|
|
29
|
+
.select()
|
|
30
|
+
.from(metadata)
|
|
31
|
+
.where(and(eq(metadata.propertyName, propertyName), eq(metadata.seedLocalId, seedLocalId)))
|
|
32
|
+
.orderBy(sql.raw('COALESCE(attestation_created_at, created_at) DESC'));
|
|
33
|
+
// const mostRecentRecordStatement = `SELECT local_id,
|
|
34
|
+
// uid,
|
|
35
|
+
// property_name,
|
|
36
|
+
// property_value,
|
|
37
|
+
// model_type,
|
|
38
|
+
// seed_uid,
|
|
39
|
+
// seed_local_id,
|
|
40
|
+
// version_local_id,
|
|
41
|
+
// version_uid,
|
|
42
|
+
// schema_uid,
|
|
43
|
+
// eas_data_type
|
|
44
|
+
// FROM metadata
|
|
45
|
+
// WHERE property_name = '${propertyName}'
|
|
46
|
+
// AND seed_local_id = '${seedLocalId}'
|
|
47
|
+
// ORDER BY COALESCE(attestation_created_at, created_at) DESC;`
|
|
48
|
+
//
|
|
49
|
+
// const { rows } = await runQueryForStatement(mostRecentRecordStatement)
|
|
50
|
+
if (rows && rows.length > 0) {
|
|
51
|
+
const { localId, uid, propertyName: propertyNameFromDb, propertyValue: propertyValueFromDb, modelType, seedUid, seedLocalId: seedLocalIdFromDb, versionLocalId, versionUid, schemaUid, easDataType, localStorageDir: localStorageDirFromDb, refSeedType: refSeedTypeFromDb, refResolvedValue: refResolvedValueFromDb, refResolvedDisplayValue: refResolvedDisplayValueFromDb, } = rows[0];
|
|
52
|
+
if (propertyValueFromDb === newValue &&
|
|
53
|
+
modelType === modelName?.toLowerCase() &&
|
|
54
|
+
refSeedTypeFromDb === refSeedType &&
|
|
55
|
+
refResolvedValueFromDb === refResolvedValue) {
|
|
56
|
+
logger(`[db/write] [updateItemPropertyValue] value is the same as most recent record for property: ${propertyNameFromDb}`);
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
59
|
+
// This means we already have a local-only record so we should just update that one
|
|
60
|
+
if (!uid) {
|
|
61
|
+
const updatePropertyStatement = `UPDATE metadata
|
|
62
|
+
SET property_value = '${safeNewValue}',
|
|
63
|
+
ref_seed_type = ${refSeedType ? `'${refSeedType}'` : 'NULL'},
|
|
64
|
+
ref_resolved_value = ${refResolvedValue ? `'${refResolvedValue}'` : 'NULL'},
|
|
65
|
+
ref_resolved_display_value = ${refResolvedDisplayValue ? `'${refResolvedDisplayValue}'` : 'NULL'},
|
|
66
|
+
updated_at = ${Date.now()}
|
|
67
|
+
WHERE local_id = '${localId}';`;
|
|
68
|
+
await appDb.run(sql.raw(updatePropertyStatement));
|
|
69
|
+
return;
|
|
70
|
+
}
|
|
71
|
+
const seedDataFromDb = await getSeedData({ seedLocalId });
|
|
72
|
+
const versionDataFromDb = await getVersionData({ localId: versionLocalId });
|
|
73
|
+
// Here we don't have a local-only record so we need to create a new one
|
|
74
|
+
const newLocalId = generateId();
|
|
75
|
+
const newPropertyStatement = `INSERT INTO metadata (local_id,
|
|
76
|
+
property_name,
|
|
77
|
+
property_value,
|
|
78
|
+
model_type,
|
|
79
|
+
seed_uid,
|
|
80
|
+
seed_local_id,
|
|
81
|
+
version_local_id,
|
|
82
|
+
version_uid,
|
|
83
|
+
schema_uid,
|
|
84
|
+
eas_data_type,
|
|
85
|
+
ref_seed_type,
|
|
86
|
+
ref_resolved_value,
|
|
87
|
+
ref_resolved_display_value,
|
|
88
|
+
local_storage_dir,
|
|
89
|
+
created_at)
|
|
90
|
+
VALUES ('${newLocalId}',
|
|
91
|
+
'${propertyNameFromDb}',
|
|
92
|
+
'${safeNewValue}',
|
|
93
|
+
'${modelType || modelName?.toLowerCase()}',
|
|
94
|
+
${seedDataFromDb?.uid ? `'${seedDataFromDb.uid}'` : 'NULL'},
|
|
95
|
+
'${seedLocalIdFromDb}',
|
|
96
|
+
'${versionLocalId}',
|
|
97
|
+
${versionDataFromDb?.uid ? `'${versionDataFromDb.uid}'` : 'NULL'},
|
|
98
|
+
'${schemaUid}',
|
|
99
|
+
${easDataType ? `'${easDataType}'` : 'NULL'},
|
|
100
|
+
${refSeedType ? `'${refSeedType}'` : 'NULL'},
|
|
101
|
+
${refResolvedValue ? `'${refResolvedValue}'` : 'NULL'},
|
|
102
|
+
${refResolvedDisplayValue ? `'${refResolvedDisplayValue}'` : 'NULL'},
|
|
103
|
+
${localStorageDir ? `'${localStorageDir}'` : 'NULL'},
|
|
104
|
+
${Date.now()});`;
|
|
105
|
+
await appDb.run(sql.raw(newPropertyStatement));
|
|
106
|
+
return {
|
|
107
|
+
localId: newLocalId,
|
|
108
|
+
schemaUid,
|
|
109
|
+
};
|
|
110
|
+
}
|
|
111
|
+
// Here there are no records for this property on this seed so we should create one
|
|
112
|
+
const newLocalId = generateId();
|
|
113
|
+
if (!seedUid) {
|
|
114
|
+
const seedData = await getSeedData({ seedLocalId });
|
|
115
|
+
if (seedData) {
|
|
116
|
+
seedUid = seedData.uid;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
if (!versionUid) {
|
|
120
|
+
const versionData = await getVersionData({ localId: versionLocalId });
|
|
121
|
+
if (versionData) {
|
|
122
|
+
versionUid = versionData.uid;
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
const newPropertyStatement = `INSERT INTO metadata (local_id,
|
|
126
|
+
property_name,
|
|
127
|
+
property_value,
|
|
128
|
+
model_type,
|
|
129
|
+
seed_uid,
|
|
130
|
+
seed_local_id,
|
|
131
|
+
version_local_id,
|
|
132
|
+
version_uid,
|
|
133
|
+
schema_uid,
|
|
134
|
+
ref_seed_type,
|
|
135
|
+
ref_resolved_value,
|
|
136
|
+
ref_resolved_display_value,
|
|
137
|
+
local_storage_dir,
|
|
138
|
+
created_at)
|
|
139
|
+
VALUES ('${newLocalId}',
|
|
140
|
+
'${propertyName}',
|
|
141
|
+
'${safeNewValue}',
|
|
142
|
+
'${modelName?.toLowerCase()}',
|
|
143
|
+
${seedUid ? `'${seedUid}'` : 'NULL'},
|
|
144
|
+
'${seedLocalId}',
|
|
145
|
+
'${versionLocalId}',
|
|
146
|
+
${versionUid ? `'${versionUid}'` : 'NULL'},
|
|
147
|
+
'${schemaUid}',
|
|
148
|
+
${refSeedType ? `'${refSeedType}'` : 'NULL'},
|
|
149
|
+
${refResolvedValue ? `'${refResolvedValue}'` : 'NULL'},
|
|
150
|
+
${refResolvedDisplayValue ? `'${refResolvedDisplayValue}'` : 'NULL'},
|
|
151
|
+
${localStorageDir ? `'${localStorageDir}'` : 'NULL'},
|
|
152
|
+
${Date.now()});`;
|
|
153
|
+
await appDb.run(sql.raw(newPropertyStatement));
|
|
154
|
+
return {
|
|
155
|
+
localId: newLocalId,
|
|
156
|
+
schemaUid,
|
|
157
|
+
};
|
|
158
|
+
};
|
|
159
|
+
|
|
160
|
+
export { updateItemPropertyValue };
|
|
161
|
+
//# sourceMappingURL=updateItemPropertyValue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"updateItemPropertyValue.js","sources":["../../../../../src/db/write/updateItemPropertyValue.ts"],"sourcesContent":["import { escapeSqliteString } from '@/helpers/db'\nimport { metadata, MetadataType } from '@/seedSchema'\nimport { and, eq, sql } from 'drizzle-orm'\nimport { getSeedData } from '@/db/read/getSeedData'\nimport { getVersionData } from '@/db/read/getVersionData'\nimport { generateId } from '@/helpers'\nimport debug from 'debug'\nimport { eventEmitter } from '@/eventBus'\nimport { BaseDb } from '@/db/Db/BaseDb'\nconst logger = debug('seedSdk:write:updateItemPropertyValue')\n\nconst sendItemUpdateEvent = ({ modelName, seedLocalId, seedUid }: { modelName: string, seedLocalId: string, seedUid: string }) => {\n if (!modelName || (!seedLocalId && !seedUid)) {\n return\n }\n // eventEmitter.emit(`item.${modelName}.${seedUid || seedLocalId}.update`)\n}\n\ntype UpdateItemPropertyValueResult = {\n localId: string\n schemaUid: string\n}\n\ntype UpdateItemPropertyValue = (props: Partial<MetadataType>) => Promise<UpdateItemPropertyValueResult | undefined>\n\nexport const updateItemPropertyValue: UpdateItemPropertyValue = async ({\n localId,\n propertyName,\n newValue,\n seedUid,\n seedLocalId,\n modelName,\n refSeedType,\n refResolvedValue,\n refResolvedDisplayValue,\n versionLocalId,\n versionUid,\n schemaUid,\n localStorageDir,\n}) => {\n if (!localId && !seedLocalId) {\n logger(\n `[db/write] [updateItemPropertyValue] no propertyLocalId or seedLocalId for property: ${propertyName}`,\n )\n return\n }\n\n let safeNewValue = newValue\n\n if (\n typeof newValue === 'string' &&\n !refResolvedDisplayValue &&\n !refResolvedValue\n ) {\n safeNewValue = escapeSqliteString(newValue)\n }\n\n const appDb = BaseDb.getAppDb()\n\n const rows = await appDb\n .select()\n .from(metadata)\n .where(\n and(\n eq(metadata.propertyName, propertyName!),\n eq(metadata.seedLocalId, seedLocalId!),\n ),\n )\n .orderBy(sql.raw('COALESCE(attestation_created_at, created_at) DESC'))\n\n // const mostRecentRecordStatement = `SELECT local_id,\n // uid,\n // property_name,\n // property_value,\n // model_type,\n // seed_uid,\n // seed_local_id,\n // version_local_id,\n // version_uid,\n // schema_uid,\n // eas_data_type\n // FROM metadata\n // WHERE property_name = '${propertyName}'\n // AND seed_local_id = '${seedLocalId}'\n // ORDER BY COALESCE(attestation_created_at, created_at) DESC;`\n //\n // const { rows } = await runQueryForStatement(mostRecentRecordStatement)\n\n if (rows && rows.length > 0) {\n const {\n localId,\n uid,\n propertyName: propertyNameFromDb,\n propertyValue: propertyValueFromDb,\n modelType,\n seedUid,\n seedLocalId: seedLocalIdFromDb,\n versionLocalId,\n versionUid,\n schemaUid,\n easDataType,\n localStorageDir: localStorageDirFromDb,\n refSeedType: refSeedTypeFromDb,\n refResolvedValue: refResolvedValueFromDb,\n refResolvedDisplayValue: refResolvedDisplayValueFromDb,\n } = rows[0]\n\n if (\n propertyValueFromDb === newValue &&\n modelType === modelName?.toLowerCase() &&\n refSeedTypeFromDb === refSeedType &&\n refResolvedValueFromDb === refResolvedValue\n ) {\n logger(\n `[db/write] [updateItemPropertyValue] value is the same as most recent record for property: ${propertyNameFromDb}`,\n )\n return\n }\n\n // This means we already have a local-only record so we should just update that one\n if (!uid) {\n const updatePropertyStatement = `UPDATE metadata\n SET property_value = '${safeNewValue}',\n ref_seed_type = ${refSeedType ? `'${refSeedType}'` : 'NULL'},\n ref_resolved_value = ${refResolvedValue ? `'${refResolvedValue}'` : 'NULL'},\n ref_resolved_display_value = ${refResolvedDisplayValue ? `'${refResolvedDisplayValue}'` : 'NULL'},\n updated_at = ${Date.now()}\n WHERE local_id = '${localId}';`\n\n await appDb.run(sql.raw(updatePropertyStatement))\n\n sendItemUpdateEvent({ modelName, seedLocalId, seedUid })\n\n return\n }\n\n const seedDataFromDb = await getSeedData({ seedLocalId })\n const versionDataFromDb = await getVersionData({ localId: versionLocalId })\n\n // Here we don't have a local-only record so we need to create a new one\n const newLocalId = generateId()\n\n const newPropertyStatement = `INSERT INTO metadata (local_id,\n property_name,\n property_value,\n model_type,\n seed_uid,\n seed_local_id,\n version_local_id,\n version_uid,\n schema_uid,\n eas_data_type,\n ref_seed_type,\n ref_resolved_value,\n ref_resolved_display_value,\n local_storage_dir,\n created_at)\n VALUES ('${newLocalId}',\n '${propertyNameFromDb}',\n '${safeNewValue}',\n '${modelType || modelName?.toLowerCase()}',\n ${seedDataFromDb?.uid ? `'${seedDataFromDb.uid}'` : 'NULL'},\n '${seedLocalIdFromDb}',\n '${versionLocalId}',\n ${versionDataFromDb?.uid ? `'${versionDataFromDb.uid}'` : 'NULL'},\n '${schemaUid}',\n ${easDataType ? `'${easDataType}'` : 'NULL'},\n ${refSeedType ? `'${refSeedType}'` : 'NULL'},\n ${refResolvedValue ? `'${refResolvedValue}'` : 'NULL'},\n ${refResolvedDisplayValue ? `'${refResolvedDisplayValue}'` : 'NULL'},\n ${localStorageDir ? `'${localStorageDir}'` : 'NULL'},\n ${Date.now()});`\n\n await appDb.run(sql.raw(newPropertyStatement))\n\n sendItemUpdateEvent({ modelName, seedLocalId, seedUid })\n\n return {\n localId: newLocalId,\n schemaUid,\n }\n }\n\n // Here there are no records for this property on this seed so we should create one\n\n const newLocalId = generateId()\n\n if (!seedUid) {\n const seedData = await getSeedData({ seedLocalId })\n if (seedData) {\n seedUid = seedData.uid\n }\n }\n\n if (!versionUid) {\n const versionData = await getVersionData({ localId: versionLocalId })\n if (versionData) {\n versionUid = versionData.uid\n }\n }\n\n const newPropertyStatement = `INSERT INTO metadata (local_id,\n property_name,\n property_value,\n model_type,\n seed_uid,\n seed_local_id,\n version_local_id,\n version_uid,\n schema_uid,\n ref_seed_type,\n ref_resolved_value,\n ref_resolved_display_value,\n local_storage_dir,\n created_at)\n VALUES ('${newLocalId}',\n '${propertyName}',\n '${safeNewValue}',\n '${modelName?.toLowerCase()}',\n ${seedUid ? `'${seedUid}'` : 'NULL'},\n '${seedLocalId}',\n '${versionLocalId}',\n ${versionUid ? `'${versionUid}'` : 'NULL'},\n '${schemaUid}',\n ${refSeedType ? `'${refSeedType}'` : 'NULL'},\n ${refResolvedValue ? `'${refResolvedValue}'` : 'NULL'},\n ${refResolvedDisplayValue ? `'${refResolvedDisplayValue}'` : 'NULL'},\n ${localStorageDir ? `'${localStorageDir}'` : 'NULL'},\n ${Date.now()});`\n\n await appDb.run(sql.raw(newPropertyStatement))\n\n sendItemUpdateEvent({ modelName, seedLocalId, seedUid })\n\n return {\n localId: newLocalId,\n schemaUid,\n }\n\n if (!seedLocalId && propertyName && modelName && newValue) {\n // TODO: Does this ever happen? If so, what should we do?\n }\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import '../../seedSchema/SeedSchema.js';
|
|
2
|
+
import '../../seedSchema/VersionSchema.js';
|
|
3
|
+
import { metadata } from '../../seedSchema/MetadataSchema.js';
|
|
4
|
+
import '../../seedSchema/AppStateSchema.js';
|
|
5
|
+
import '../../seedSchema/ModelSchema.js';
|
|
6
|
+
import '../../seedSchema/ModelUidSchema.js';
|
|
7
|
+
import { BaseDb } from '../Db/BaseDb.js';
|
|
8
|
+
import { eq } from 'drizzle-orm';
|
|
9
|
+
import 'graphql-request';
|
|
10
|
+
import '../../services/internal/constants.js';
|
|
11
|
+
import '../../helpers/constants.js';
|
|
12
|
+
import 'drizzle-orm/casing';
|
|
13
|
+
import '../../Item/queries.js';
|
|
14
|
+
|
|
15
|
+
const updateMetadata = async (metadataValues, propertyRecordSchema) => {
|
|
16
|
+
const appDb = BaseDb.getAppDb();
|
|
17
|
+
const { localId, ...rest } = metadataValues;
|
|
18
|
+
if (!localId) {
|
|
19
|
+
throw new Error('No localId provided to updateMetadata');
|
|
20
|
+
}
|
|
21
|
+
await appDb.update(metadata).set(rest).where(eq(metadata.localId, localId));
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
export { updateMetadata };
|
|
25
|
+
//# sourceMappingURL=updateMetadata.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"updateMetadata.js","sources":["../../../../../src/db/write/updateMetadata.ts"],"sourcesContent":["import { metadata, MetadataType } from '@/seedSchema'\nimport { BaseDb } from '@/db/Db/BaseDb'\nimport { eq } from 'drizzle-orm'\nimport { PropertyType } from '@/types'\nimport { BaseQueryClient } from '@/helpers/QueryClient/BaseQueryClient'\nimport { BaseEasClient } from '@/helpers/EasClient/BaseEasClient'\nimport { INTERNAL_DATA_TYPES } from '@/helpers/constants'\nimport { toSnakeCase } from 'drizzle-orm/casing'\nimport { Schema } from '@/graphql/gql/graphql'\nimport { GET_SCHEMA_BY_NAME } from '@/Item/queries'\n\ntype UpdateMetadata = (\n metadataValues: Partial<MetadataType>,\n propertyRecordSchema?: PropertyType | undefined,\n) => Promise<MetadataType>\n\nexport const updateMetadata: UpdateMetadata = async (metadataValues, propertyRecordSchema) => {\n const appDb = BaseDb.getAppDb()\n\n const { localId, ...rest } = metadataValues\n\n if (!localId) {\n throw new Error('No localId provided to updateMetadata')\n }\n \n const isItemStorage = propertyRecordSchema && propertyRecordSchema.storageType === 'ItemStorage'\n\n if (\n !isItemStorage && \n propertyRecordSchema &&\n (!metadataValues.schemaUid || metadataValues.schemaUid === 'undefined' )\n ) {\n const queryClient = BaseQueryClient.getQueryClient()\n const easClient = BaseEasClient.getEasClient()\n\n const easDataType = INTERNAL_DATA_TYPES[propertyRecordSchema.dataType].eas\n\n const propertyNameSnakeCase = toSnakeCase(metadataValues.propertyName)\n \n const queryResult = await queryClient.fetchQuery({\n queryKey: [`getSchemaByName${metadataValues.propertyName}`],\n queryFn: async (): Promise<{schemas: Schema[]}> =>\n easClient.request(GET_SCHEMA_BY_NAME, {\n where: {\n schema: {\n equals: `${easDataType} ${propertyNameSnakeCase}`,\n },\n },\n }),\n })\n\n if (queryResult && queryResult.schemas.length > 0) {\n metadataValues.schemaUid = queryResult.schemas[0].id\n }\n\n }\n\n await appDb.update(metadata).set(rest).where(eq(metadata.localId, localId))\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;;AAgBa,MAAA,cAAc,GAAmB,OAAO,cAAc,EAAE,oBAAoB,KAAI;AAC3F,IAAA,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE;IAE/B,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,cAAc;IAE3C,IAAI,CAAC,OAAO,EAAE;AACZ,QAAA,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC;;IAmC1D,MAAM,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;AAC7E;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"eventBus.js","sources":["../../../src/eventBus.ts"],"sourcesContent":["import EventEmitter from 'eventemitter3'\n\nconst eventEmitter = new EventEmitter()\n\nexport { eventEmitter }\n"],"names":[],"mappings":";;AAEA,MAAM,YAAY,GAAG,IAAI,YAAY;;;;"}
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
import { syncDbFiles } from '../../services/internal/helpers.js';
|
|
2
|
+
import { eventEmitter } from '../../eventBus.js';
|
|
3
|
+
import { ARWEAVE_HOST } from '../../services/internal/constants.js';
|
|
4
|
+
import '../../seedSchema/SeedSchema.js';
|
|
5
|
+
import '../../seedSchema/VersionSchema.js';
|
|
6
|
+
import '../../seedSchema/MetadataSchema.js';
|
|
7
|
+
import { appState } from '../../seedSchema/AppStateSchema.js';
|
|
8
|
+
import '../../seedSchema/ModelSchema.js';
|
|
9
|
+
import '../../seedSchema/ModelUidSchema.js';
|
|
10
|
+
import { eq } from 'drizzle-orm';
|
|
11
|
+
import { getAddressesFromDb } from '../../helpers/db.js';
|
|
12
|
+
import '../../helpers/index.js';
|
|
13
|
+
import { GET_FILES_METADATA } from '../../schema/file/queries.js';
|
|
14
|
+
import debug from 'debug';
|
|
15
|
+
import { getGlobalService } from '../../services/global/globalMachine.js';
|
|
16
|
+
import { waitFor } from 'xstate';
|
|
17
|
+
import { getMetadata } from '../../db/read/getMetadata.js';
|
|
18
|
+
import { saveMetadata } from '../../db/write/saveMetadata.js';
|
|
19
|
+
import { GET_TRANSACTION_TAGS } from '../../helpers/ArweaveClient/queries.js';
|
|
20
|
+
import { saveAppState } from '../../db/write/saveAppState.js';
|
|
21
|
+
import { BaseDb } from '../../db/Db/BaseDb.js';
|
|
22
|
+
import { getArweave } from '../../helpers/ArweaveClient/index.js';
|
|
23
|
+
import { isBrowser } from '../../helpers/environment.js';
|
|
24
|
+
import { BaseArweaveClient } from '../../helpers/ArweaveClient/BaseArweaveClient.js';
|
|
25
|
+
import { BaseQueryClient } from '../../helpers/QueryClient/BaseQueryClient.js';
|
|
26
|
+
import { BaseEasClient } from '../../helpers/EasClient/BaseEasClient.js';
|
|
27
|
+
import { BaseFileManager } from '../../helpers/FileManager/BaseFileManager.js';
|
|
28
|
+
|
|
29
|
+
const logger = debug('seedSdk:files:download');
|
|
30
|
+
const downloadAllFilesRequestHandler = async ({ endpoints, eventId, }) => {
|
|
31
|
+
if (!isBrowser()) {
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
34
|
+
await syncDbFiles(endpoints);
|
|
35
|
+
eventEmitter.emit('fs.downloadAll.success', { eventId });
|
|
36
|
+
eventEmitter.emit('fs.downloadAllBinary.request', { endpoints });
|
|
37
|
+
};
|
|
38
|
+
const downloadAllFilesBinaryRequestHandler = async () => {
|
|
39
|
+
let addresses;
|
|
40
|
+
if (BaseDb.isAppDbReady()) {
|
|
41
|
+
addresses = await getAddressesFromDb();
|
|
42
|
+
}
|
|
43
|
+
if (!BaseDb.isAppDbReady()) {
|
|
44
|
+
const globalService = getGlobalService();
|
|
45
|
+
const internalService = globalService.getSnapshot().context.internalService;
|
|
46
|
+
if (internalService) {
|
|
47
|
+
await waitFor(internalService, (snapshot) => {
|
|
48
|
+
return snapshot.value === 'ready';
|
|
49
|
+
});
|
|
50
|
+
addresses = await getAddressesFromDb();
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
if (!addresses || addresses.length === 0) {
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
const queryClient = BaseQueryClient.getQueryClient();
|
|
57
|
+
const easClient = BaseEasClient.getEasClient();
|
|
58
|
+
const { filesMetadata } = await queryClient.fetchQuery({
|
|
59
|
+
queryKey: ['getFilesMetadata', ...addresses],
|
|
60
|
+
queryFn: async () => easClient.request(GET_FILES_METADATA, {
|
|
61
|
+
where: {
|
|
62
|
+
attester: {
|
|
63
|
+
in: addresses,
|
|
64
|
+
},
|
|
65
|
+
schema: {
|
|
66
|
+
is: {
|
|
67
|
+
id: {
|
|
68
|
+
equals: '0x55fdefb36fcbbaebeb7d6b41dc3a1a9666e4e42154267c889de064faa7ede517',
|
|
69
|
+
},
|
|
70
|
+
},
|
|
71
|
+
},
|
|
72
|
+
},
|
|
73
|
+
}),
|
|
74
|
+
});
|
|
75
|
+
await BaseFileManager.createDirIfNotExists('/files');
|
|
76
|
+
await BaseFileManager.createDirIfNotExists('/files/html');
|
|
77
|
+
await BaseFileManager.createDirIfNotExists('/files/json');
|
|
78
|
+
await BaseFileManager.createDirIfNotExists('/files/images');
|
|
79
|
+
const appDb = BaseDb.getAppDb();
|
|
80
|
+
if (!appDb) {
|
|
81
|
+
console.warn('[fetchAll/actors] [fetchAllBinaryData] seedDb not available');
|
|
82
|
+
return [];
|
|
83
|
+
}
|
|
84
|
+
const excludedTransactionsQuery = await appDb
|
|
85
|
+
.select()
|
|
86
|
+
.from(appState)
|
|
87
|
+
.where(eq(appState.key, 'excludedTransactions'));
|
|
88
|
+
let excludedTransactions = new Set();
|
|
89
|
+
if (excludedTransactionsQuery && excludedTransactionsQuery.length === 1) {
|
|
90
|
+
const valueString = excludedTransactionsQuery[0].value;
|
|
91
|
+
if (valueString) {
|
|
92
|
+
const excludedTransactionsArray = JSON.parse(valueString);
|
|
93
|
+
excludedTransactions = new Set(excludedTransactionsArray);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
const transactionIds = [];
|
|
97
|
+
for (const fileMetadata of filesMetadata) {
|
|
98
|
+
const json = JSON.parse(fileMetadata.decodedDataJson);
|
|
99
|
+
const transactionId = json[0].value.value;
|
|
100
|
+
if (excludedTransactions.has(transactionId)) {
|
|
101
|
+
continue;
|
|
102
|
+
}
|
|
103
|
+
transactionIds.push(transactionId);
|
|
104
|
+
}
|
|
105
|
+
const arweave = getArweave();
|
|
106
|
+
if (!arweave) {
|
|
107
|
+
console.warn('[fetchAll/actors] [fetchAllBinaryData] arweave not available');
|
|
108
|
+
return [];
|
|
109
|
+
}
|
|
110
|
+
const arweaveClient = BaseArweaveClient.getArweaveClient();
|
|
111
|
+
const transactionIdsToDownload = [];
|
|
112
|
+
for (const transactionId of transactionIds) {
|
|
113
|
+
try {
|
|
114
|
+
const res = await fetch(`https://${ARWEAVE_HOST}/tx/${transactionId}/status`);
|
|
115
|
+
if (res.status !== 200) {
|
|
116
|
+
logger(`[fetchAll/actors] [fetchAllBinaryData] error fetching transaction data for ${transactionId}`);
|
|
117
|
+
excludedTransactions.add(transactionId);
|
|
118
|
+
await saveAppState('excludedTransactions', JSON.stringify(Array.from(excludedTransactions)));
|
|
119
|
+
continue;
|
|
120
|
+
}
|
|
121
|
+
const { tags: tagsResult } = await queryClient.fetchQuery({
|
|
122
|
+
queryKey: ['getTransactionTags', transactionId],
|
|
123
|
+
queryFn: async () => arweaveClient.request(GET_TRANSACTION_TAGS, {
|
|
124
|
+
transactionId,
|
|
125
|
+
}),
|
|
126
|
+
});
|
|
127
|
+
const tags = tagsResult.tags || [];
|
|
128
|
+
if (tagsResult.tags && tagsResult.tags.length > 0) {
|
|
129
|
+
for (const { name, value } of tags) {
|
|
130
|
+
if (name === 'Content-SHA-256') {
|
|
131
|
+
const metadataRecord = await getMetadata({
|
|
132
|
+
storageTransactionId: transactionId,
|
|
133
|
+
});
|
|
134
|
+
if (metadataRecord) {
|
|
135
|
+
await saveMetadata(metadataRecord, {
|
|
136
|
+
contentHash: value,
|
|
137
|
+
});
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
transactionIdsToDownload.push(transactionId);
|
|
143
|
+
}
|
|
144
|
+
catch (error) {
|
|
145
|
+
logger(error);
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
console.log('[download] Calling downloadAllFiles with transactionIdsToDownload', transactionIdsToDownload);
|
|
149
|
+
await BaseFileManager.downloadAllFiles({
|
|
150
|
+
transactionIds: transactionIdsToDownload,
|
|
151
|
+
arweaveHost: ARWEAVE_HOST,
|
|
152
|
+
excludedTransactions,
|
|
153
|
+
});
|
|
154
|
+
await BaseFileManager.resizeAllImages({
|
|
155
|
+
width: 480,
|
|
156
|
+
height: 480,
|
|
157
|
+
});
|
|
158
|
+
};
|
|
159
|
+
|
|
160
|
+
export { downloadAllFilesBinaryRequestHandler, downloadAllFilesRequestHandler };
|
|
161
|
+
//# sourceMappingURL=download.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"download.js","sources":["../../../../../src/events/files/download.ts"],"sourcesContent":["import { syncDbFiles } from '@/services/internal/helpers'\nimport { eventEmitter } from '@/eventBus'\nimport { ARWEAVE_HOST } from '@/services/internal/constants'\nimport { appState } from '@/seedSchema'\nimport { eq } from 'drizzle-orm'\nimport { getAddressesFromDb } from '@/helpers/db'\nimport {\n BaseFileManager,\n} from '@/helpers'\nimport { GET_FILES_METADATA } from '@/schema/file/queries'\nimport debug from 'debug'\nimport { getGlobalService } from '@/services/global/globalMachine'\nimport { waitFor } from 'xstate'\nimport { getMetadata } from '@/db/read/getMetadata'\nimport { saveMetadata } from '@/db/write/saveMetadata'\nimport { GET_TRANSACTION_TAGS } from '@/helpers/ArweaveClient/queries'\nimport { saveAppState } from '@/db/write/saveAppState'\nimport { BaseDb } from '@/db/Db/BaseDb'\nimport { BaseEasClient, BaseQueryClient, BaseArweaveClient } from '@/helpers'\nimport { getArweave } from '@/helpers/ArweaveClient'\nimport { isBrowser } from '@/helpers/environment'\n\n\nconst logger = debug('seedSdk:files:download')\n\n\nexport const downloadAllFilesRequestHandler = async ({\n endpoints,\n eventId,\n}) => {\n\n if (!isBrowser()) {\n return\n }\n\n await syncDbFiles(endpoints)\n\n eventEmitter.emit('fs.downloadAll.success', { eventId })\n eventEmitter.emit('fs.downloadAllBinary.request', { endpoints })\n}\n\nexport const downloadAllFilesBinaryRequestHandler = async () => {\n let addresses: string[] | undefined\n\n if (BaseDb.isAppDbReady()) {\n addresses = await getAddressesFromDb()\n }\n\n if (!BaseDb.isAppDbReady()) {\n const globalService = getGlobalService()\n const internalService = globalService.getSnapshot().context.internalService\n if (internalService) {\n await waitFor(internalService, (snapshot) => {\n return snapshot.value === 'ready'\n })\n addresses = await getAddressesFromDb()\n }\n }\n\n if (!addresses || addresses.length === 0) {\n return\n }\n\n const queryClient = BaseQueryClient.getQueryClient()\n const easClient = BaseEasClient.getEasClient()\n\n const { filesMetadata } = await queryClient.fetchQuery({\n queryKey: ['getFilesMetadata', ...addresses],\n queryFn: async () =>\n easClient.request(GET_FILES_METADATA, {\n where: {\n attester: {\n in: addresses,\n },\n schema: {\n is: {\n id: {\n equals:\n '0x55fdefb36fcbbaebeb7d6b41dc3a1a9666e4e42154267c889de064faa7ede517',\n },\n },\n },\n },\n }),\n })\n\n await BaseFileManager.createDirIfNotExists('/files')\n await BaseFileManager.createDirIfNotExists('/files/html')\n await BaseFileManager.createDirIfNotExists('/files/json')\n await BaseFileManager.createDirIfNotExists('/files/images')\n\n const appDb = BaseDb.getAppDb()\n\n if (!appDb) {\n console.warn('[fetchAll/actors] [fetchAllBinaryData] seedDb not available')\n return []\n }\n\n const excludedTransactionsQuery = await appDb\n .select()\n .from(appState)\n .where(eq(appState.key, 'excludedTransactions'))\n\n let excludedTransactions = new Set<string>()\n\n if (excludedTransactionsQuery && excludedTransactionsQuery.length === 1) {\n const valueString = excludedTransactionsQuery[0].value\n if (valueString) {\n const excludedTransactionsArray = JSON.parse(valueString)\n excludedTransactions = new Set(excludedTransactionsArray)\n }\n }\n\n const transactionIds = []\n\n for (const fileMetadata of filesMetadata) {\n const json = JSON.parse(fileMetadata.decodedDataJson)\n const transactionId = json[0].value.value\n if (excludedTransactions.has(transactionId)) {\n continue\n }\n transactionIds.push(transactionId)\n }\n\n const arweave = getArweave()\n\n if (!arweave) {\n console.warn(\n '[fetchAll/actors] [fetchAllBinaryData] arweave not available',\n )\n return []\n }\n\n const arweaveClient = BaseArweaveClient.getArweaveClient()\n\n const transactionIdsToDownload = []\n\n for (const transactionId of transactionIds) {\n\n try {\n const res = await fetch(\n `https://${ARWEAVE_HOST}/tx/${transactionId}/status`,\n )\n\n if (res.status !== 200) {\n logger(\n `[fetchAll/actors] [fetchAllBinaryData] error fetching transaction data for ${transactionId}`,\n )\n\n excludedTransactions.add(transactionId)\n\n await saveAppState(\n 'excludedTransactions',\n JSON.stringify(Array.from(excludedTransactions)),\n )\n\n continue\n }\n \n const { tags: tagsResult } = await queryClient.fetchQuery({\n queryKey: ['getTransactionTags', transactionId],\n queryFn: async () =>\n arweaveClient.request(GET_TRANSACTION_TAGS, {\n transactionId,\n }),\n })\n\n const tags = tagsResult.tags || []\n\n if (tagsResult.tags && tagsResult.tags.length > 0) {\n for (const { name, value } of tags) {\n if (name === 'Content-SHA-256') {\n const metadataRecord = await getMetadata({\n storageTransactionId: transactionId,\n })\n\n if (metadataRecord) {\n await saveMetadata(metadataRecord, {\n contentHash: value,\n })\n }\n }\n }\n }\n\n transactionIdsToDownload.push(transactionId)\n\n \n\n } catch (error) {\n logger(error)\n }\n }\n\n console.log('[download] Calling downloadAllFiles with transactionIdsToDownload', transactionIdsToDownload)\n\n await BaseFileManager.downloadAllFiles({\n transactionIds: transactionIdsToDownload,\n arweaveHost: ARWEAVE_HOST,\n excludedTransactions,\n })\n\n await BaseFileManager.resizeAllImages({\n width: 480,\n height: 480,\n })\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/events/files/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/events/files/index.ts"],"names":[],"mappings":"AA2DA,eAAO,MAAM,gBAAgB,YAW5B,CAAA;AAED,eAAO,MAAM,mBAAmB,eAE/B,CAAA;AAED,eAAO,MAAM,eAAe,eAE3B,CAAA"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { eventEmitter } from '../../eventBus.js';
|
|
2
|
+
import { downloadAllFilesRequestHandler, downloadAllFilesBinaryRequestHandler } from './download.js';
|
|
3
|
+
import '../../helpers/index.js';
|
|
4
|
+
import { isBrowser } from '../../helpers/environment.js';
|
|
5
|
+
import { BaseFileManager } from '../../helpers/FileManager/BaseFileManager.js';
|
|
6
|
+
|
|
7
|
+
let isInitialized = false;
|
|
8
|
+
const fsInitHandler = async () => {
|
|
9
|
+
if (isInitialized) {
|
|
10
|
+
eventEmitter.emit('fs.init.response', { success: true });
|
|
11
|
+
return;
|
|
12
|
+
}
|
|
13
|
+
try {
|
|
14
|
+
// console.log('fsInitHandler isBrowser', isBrowser())
|
|
15
|
+
// console.log({
|
|
16
|
+
// environment: process.env.NEXT_RUNTIME || 'unknown',
|
|
17
|
+
// isServer: typeof window === 'undefined',
|
|
18
|
+
// nodeEnv: process.env.NODE_ENV,
|
|
19
|
+
// // Log what's available in global scope
|
|
20
|
+
// hasWindow: typeof window !== 'undefined',
|
|
21
|
+
// hasDocument: typeof document !== 'undefined',
|
|
22
|
+
// })
|
|
23
|
+
if (isBrowser()) {
|
|
24
|
+
const FileManager = (await import('../../browser/helpers/FileManager.js')).FileManager;
|
|
25
|
+
console.log('FileManager', FileManager);
|
|
26
|
+
BaseFileManager.setPlatformClass(FileManager);
|
|
27
|
+
}
|
|
28
|
+
// if (!isBrowser()) {
|
|
29
|
+
// await import('@/node/helpers/FileManager')
|
|
30
|
+
// }
|
|
31
|
+
await BaseFileManager.initializeFileSystem();
|
|
32
|
+
isInitialized = true;
|
|
33
|
+
eventEmitter.emit('fs.init.response', { success: true });
|
|
34
|
+
}
|
|
35
|
+
catch (e) {
|
|
36
|
+
if (!isInitialized) {
|
|
37
|
+
console.error('[fs.init] error initializing fs', e);
|
|
38
|
+
eventEmitter.emit('fs.init.response', {
|
|
39
|
+
success: false,
|
|
40
|
+
error: e,
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
// TODO: We can ignore this for now but should figure out if this is being called excessively
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
let areReady = false;
|
|
47
|
+
const setupFsListeners = () => {
|
|
48
|
+
eventEmitter.addListener('fs.downloadAll.request', downloadAllFilesRequestHandler);
|
|
49
|
+
eventEmitter.addListener('fs.downloadAllBinary.request', downloadAllFilesBinaryRequestHandler);
|
|
50
|
+
eventEmitter.addListener('fs.init', fsInitHandler);
|
|
51
|
+
areReady = true;
|
|
52
|
+
};
|
|
53
|
+
const areFsListenersReady = () => {
|
|
54
|
+
return areReady;
|
|
55
|
+
};
|
|
56
|
+
const isFsInitialized = () => {
|
|
57
|
+
return isInitialized;
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
export { areFsListenersReady, isFsInitialized, setupFsListeners };
|
|
61
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../src/events/files/index.ts"],"sourcesContent":["import { eventEmitter } from '@/eventBus'\nimport { downloadAllFilesBinaryRequestHandler, downloadAllFilesRequestHandler } from './download'\nimport { BaseFileManager } from '@/helpers'\nimport { isBrowser } from '@/helpers/environment'\n\n\nlet isInitialized = false\n\n\nconst fsInitHandler = async () => {\n if ( isInitialized ) {\n eventEmitter.emit('fs.init.response', { success: true })\n return\n }\n\n try {\n\n // console.log('fsInitHandler isBrowser', isBrowser())\n\n // console.log({\n // environment: process.env.NEXT_RUNTIME || 'unknown',\n // isServer: typeof window === 'undefined',\n // nodeEnv: process.env.NODE_ENV,\n // // Log what's available in global scope\n // hasWindow: typeof window !== 'undefined',\n // hasDocument: typeof document !== 'undefined',\n // })\n\n if (\n isBrowser()\n ) {\n const FileManager = (await import('../../browser/helpers/FileManager')).FileManager\n console.log('FileManager', FileManager)\n BaseFileManager.setPlatformClass(FileManager)\n }\n\n // if (!isBrowser()) {\n // await import('@/node/helpers/FileManager')\n // }\n\n await BaseFileManager.initializeFileSystem()\n\n isInitialized = true\n\n eventEmitter.emit('fs.init.response', { success: true })\n } catch ( e ) {\n if ( !isInitialized ) {\n console.error('[fs.init] error initializing fs', e)\n eventEmitter.emit('fs.init.response', {\n success: false,\n error: e,\n })\n }\n // TODO: We can ignore this for now but should figure out if this is being called excessively\n }\n}\n\nlet areReady = false\n\nexport const setupFsListeners = () => {\n eventEmitter.addListener(\n 'fs.downloadAll.request',\n downloadAllFilesRequestHandler,\n )\n eventEmitter.addListener(\n 'fs.downloadAllBinary.request',\n downloadAllFilesBinaryRequestHandler,\n )\n eventEmitter.addListener('fs.init', fsInitHandler)\n areReady = true\n}\n\nexport const areFsListenersReady = () => {\n return areReady\n}\n\nexport const isFsInitialized = () => {\n return isInitialized\n}\n"],"names":[],"mappings":";;;;;;AAMA,IAAI,aAAa,GAAG,KAAK;AAGzB,MAAM,aAAa,GAAG,YAAW;IAC/B,IAAK,aAAa,EAAG;QACnB,YAAY,CAAC,IAAI,CAAC,kBAAkB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QACxD;;AAGF,IAAA,IAAI;;;;;;;;;;QAaF,IACE,SAAS,EAAE,EACX;YACA,MAAM,WAAW,GAAG,CAAC,MAAM,OAAO,sCAAmC,CAAC,EAAE,WAAW;AACnF,YAAA,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,WAAW,CAAC;AACvC,YAAA,eAAe,CAAC,gBAAgB,CAAC,WAAW,CAAC;;;;;AAO/C,QAAA,MAAM,eAAe,CAAC,oBAAoB,EAAE;QAE5C,aAAa,GAAG,IAAI;QAEpB,YAAY,CAAC,IAAI,CAAC,kBAAkB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;;IACxD,OAAQ,CAAC,EAAG;QACZ,IAAK,CAAC,aAAa,EAAG;AACpB,YAAA,OAAO,CAAC,KAAK,CAAC,iCAAiC,EAAE,CAAC,CAAC;AACnD,YAAA,YAAY,CAAC,IAAI,CAAC,kBAAkB,EAAE;AACpC,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,KAAK,EAAE,CAAC;AACT,aAAA,CAAC;;;;AAIR,CAAC;AAED,IAAI,QAAQ,GAAG,KAAK;AAEb,MAAM,gBAAgB,GAAG,MAAK;AACnC,IAAA,YAAY,CAAC,WAAW,CACtB,wBAAwB,EACxB,8BAA8B,CAC/B;AACD,IAAA,YAAY,CAAC,WAAW,CACtB,8BAA8B,EAC9B,oCAAoC,CACrC;AACD,IAAA,YAAY,CAAC,WAAW,CAAC,SAAS,EAAE,aAAa,CAAC;IAClD,QAAQ,GAAG,IAAI;AACjB;AAEO,MAAM,mBAAmB,GAAG,MAAK;AACtC,IAAA,OAAO,QAAQ;AACjB;AAEO,MAAM,eAAe,GAAG,MAAK;AAClC,IAAA,OAAO,aAAa;AACtB;;;;"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { eventEmitter } from '../eventBus.js';
|
|
2
|
+
import { generateId } from '../helpers/index.js';
|
|
3
|
+
import './item/syncDbWithEas.js';
|
|
4
|
+
import '../services/global/globalMachine.js';
|
|
5
|
+
|
|
6
|
+
const waitForEvent = async ({ req, res }) => {
|
|
7
|
+
const eventId = generateId();
|
|
8
|
+
return new Promise((resolve) => {
|
|
9
|
+
const internalHandler = (event) => {
|
|
10
|
+
if (!event) {
|
|
11
|
+
return;
|
|
12
|
+
}
|
|
13
|
+
const { eventId: _eventId } = event;
|
|
14
|
+
if (_eventId && _eventId === eventId) {
|
|
15
|
+
eventEmitter.removeListener(res.eventLabel, internalHandler);
|
|
16
|
+
resolve(event);
|
|
17
|
+
}
|
|
18
|
+
};
|
|
19
|
+
eventEmitter.addListener(res.eventLabel, internalHandler);
|
|
20
|
+
eventEmitter.emit(req.eventLabel, {
|
|
21
|
+
...req.data,
|
|
22
|
+
eventId,
|
|
23
|
+
});
|
|
24
|
+
});
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
export { waitForEvent };
|
|
28
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../src/events/index.ts"],"sourcesContent":["import { eventEmitter } from '@/eventBus'\nimport { generateId } from '@/helpers'\n\nexport * from './item'\n\ntype WaitForEventConfig = {\n req: {\n eventLabel: string\n data: Record<string, unknown>\n }\n res: {\n eventLabel: string\n }\n}\n\ntype WaitForEvent = (\n config: WaitForEventConfig,\n) => Promise<Record<string, unknown>>\n\nexport const waitForEvent: WaitForEvent = async ({ req, res }) => {\n const eventId = generateId()\n\n return new Promise((resolve) => {\n const internalHandler = (event: Record<string, unknown>) => {\n if (!event) {\n return\n }\n const { eventId: _eventId } = event\n if (_eventId && _eventId === eventId) {\n eventEmitter.removeListener(res.eventLabel, internalHandler)\n resolve(event)\n }\n }\n\n eventEmitter.addListener(res.eventLabel, internalHandler)\n\n eventEmitter.emit(req.eventLabel, {\n ...req.data,\n eventId,\n })\n })\n}\n"],"names":[],"mappings":";;;;;AAmBO,MAAM,YAAY,GAAiB,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,KAAI;AAC/D,IAAA,MAAM,OAAO,GAAG,UAAU,EAAE;AAE5B,IAAA,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,KAAI;AAC7B,QAAA,MAAM,eAAe,GAAG,CAAC,KAA8B,KAAI;YACzD,IAAI,CAAC,KAAK,EAAE;gBACV;;AAEF,YAAA,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,KAAK;AACnC,YAAA,IAAI,QAAQ,IAAI,QAAQ,KAAK,OAAO,EAAE;gBACpC,YAAY,CAAC,cAAc,CAAC,GAAG,CAAC,UAAU,EAAE,eAAe,CAAC;gBAC5D,OAAO,CAAC,KAAK,CAAC;;AAElB,SAAC;QAED,YAAY,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,EAAE,eAAe,CAAC;AAEzD,QAAA,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE;YAChC,GAAG,GAAG,CAAC,IAAI;YACX,OAAO;AACR,SAAA,CAAC;AACJ,KAAC,CAAC;AACJ;;;;"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { eventEmitter } from '../../eventBus.js';
|
|
2
|
+
import { syncDbWithEasHandler } from './syncDbWithEas.js';
|
|
3
|
+
import { publishItemRequestHandler } from './publish.js';
|
|
4
|
+
|
|
5
|
+
let areReady = false;
|
|
6
|
+
const setupAllItemsEventHandlers = () => {
|
|
7
|
+
// eventEmitter.addListener('item.request', itemRequestHandler)
|
|
8
|
+
// eventEmitter.addListener('item.requestAll', itemRequestAllHandler)
|
|
9
|
+
// eventEmitter.addListener(
|
|
10
|
+
// 'item.propertyValuesForSeedUid.request',
|
|
11
|
+
// propertyValuesForSeedUid,
|
|
12
|
+
// )
|
|
13
|
+
// eventEmitter.addListener('item.create.request', createItemRequestHandler)
|
|
14
|
+
// eventEmitter.addListener('item.delete.request', itemDeleteRequestHandler)
|
|
15
|
+
// eventEmitter.addListener('item.update', itemUpdateHandler)
|
|
16
|
+
eventEmitter.addListener('syncDbWithEas', syncDbWithEasHandler);
|
|
17
|
+
eventEmitter.addListener('item.publish.request', publishItemRequestHandler);
|
|
18
|
+
eventEmitter.addListener('item.publish.payload.request', publishItemRequestHandler);
|
|
19
|
+
//
|
|
20
|
+
// eventEmitter.emit('item.events.setupAllItemsEventHandlers')
|
|
21
|
+
areReady = true;
|
|
22
|
+
};
|
|
23
|
+
const getAreItemEventHandlersReady = () => {
|
|
24
|
+
return areReady;
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
export { getAreItemEventHandlersReady, setupAllItemsEventHandlers };
|
|
28
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../src/events/item/index.ts"],"sourcesContent":["import { eventEmitter } from '@/eventBus'\nimport { syncDbWithEasHandler } from '@/events/item/syncDbWithEas'\nimport { publishItemRequestHandler } from '@/events/item/publish'\n\nlet areReady = false\n\nexport const setupAllItemsEventHandlers = () => {\n // eventEmitter.addListener('item.request', itemRequestHandler)\n // eventEmitter.addListener('item.requestAll', itemRequestAllHandler)\n // eventEmitter.addListener(\n // 'item.propertyValuesForSeedUid.request',\n // propertyValuesForSeedUid,\n // )\n // eventEmitter.addListener('item.create.request', createItemRequestHandler)\n // eventEmitter.addListener('item.delete.request', itemDeleteRequestHandler)\n // eventEmitter.addListener('item.update', itemUpdateHandler)\n eventEmitter.addListener('syncDbWithEas', syncDbWithEasHandler)\n eventEmitter.addListener('item.publish.request', publishItemRequestHandler)\n eventEmitter.addListener(\n 'item.publish.payload.request',\n publishItemRequestHandler,\n )\n //\n // eventEmitter.emit('item.events.setupAllItemsEventHandlers')\n areReady = true\n}\n\nexport const getAreItemEventHandlersReady = () => {\n return areReady\n}\n"],"names":[],"mappings":";;;;AAIA,IAAI,QAAQ,GAAG,KAAK;AAEb,MAAM,0BAA0B,GAAG,MAAK;;;;;;;;;;AAU7C,IAAA,YAAY,CAAC,WAAW,CAAC,eAAe,EAAE,oBAAoB,CAAC;AAC/D,IAAA,YAAY,CAAC,WAAW,CAAC,sBAAsB,EAAE,yBAAyB,CAAC;AAC3E,IAAA,YAAY,CAAC,WAAW,CACtB,8BAA8B,EAC9B,yBAAyB,CAC1B;;;IAGD,QAAQ,GAAG,IAAI;AACjB;AAEO,MAAM,4BAA4B,GAAG,MAAK;AAC/C,IAAA,OAAO,QAAQ;AACjB;;;;"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { getGlobalService } from '../../services/global/globalMachine.js';
|
|
2
|
+
|
|
3
|
+
const publishItemRequestHandler = async ({ seedLocalId, }) => {
|
|
4
|
+
const globalService = getGlobalService();
|
|
5
|
+
globalService.subscribe((snapshot) => {
|
|
6
|
+
if (!snapshot ||
|
|
7
|
+
!snapshot.context ||
|
|
8
|
+
!snapshot.context.publishItemService) {
|
|
9
|
+
return;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
globalService.send({
|
|
13
|
+
type: 'publishItemRequest',
|
|
14
|
+
seedLocalId,
|
|
15
|
+
});
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
export { publishItemRequestHandler };
|
|
19
|
+
//# sourceMappingURL=publish.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"publish.js","sources":["../../../../../src/events/item/publish.ts"],"sourcesContent":["import { getGlobalService } from '@/services/global/globalMachine'\n\ntype PublishItemRequestEvent = {\n seedLocalId: string\n}\n\ntype PublishItemRequestHandler = (\n event: PublishItemRequestEvent,\n) => Promise<void>\n\nexport const publishItemRequestHandler: PublishItemRequestHandler = async ({\n seedLocalId,\n}) => {\n const globalService = getGlobalService()\n globalService.subscribe((snapshot) => {\n if (\n !snapshot ||\n !snapshot.context ||\n !snapshot.context.publishItemService\n ) {\n return\n }\n })\n globalService.send({\n type: 'publishItemRequest',\n seedLocalId,\n })\n}\n"],"names":[],"mappings":";;AAUa,MAAA,yBAAyB,GAA8B,OAAO,EACzE,WAAW,GACZ,KAAI;AACH,IAAA,MAAM,aAAa,GAAG,gBAAgB,EAAE;AACxC,IAAA,aAAa,CAAC,SAAS,CAAC,CAAC,QAAQ,KAAI;AACnC,QAAA,IACE,CAAC,QAAQ;YACT,CAAC,QAAQ,CAAC,OAAO;AACjB,YAAA,CAAC,QAAQ,CAAC,OAAO,CAAC,kBAAkB,EACpC;YACA;;AAEJ,KAAC,CAAC;IACF,aAAa,CAAC,IAAI,CAAC;AACjB,QAAA,IAAI,EAAE,oBAAoB;QAC1B,WAAW;AACZ,KAAA,CAAC;AACJ;;;;"}
|