@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,84 @@
|
|
|
1
|
+
import { fromCallback, waitFor } from 'xstate';
|
|
2
|
+
import debug from 'debug';
|
|
3
|
+
import { setupFsListeners, areFsListenersReady } from '../../events/files/index.js';
|
|
4
|
+
import { setModel } from '../../stores/modelClass.js';
|
|
5
|
+
import { setArweaveDomain } from '../../helpers/ArweaveClient/index.js';
|
|
6
|
+
import { eventEmitter } from '../../eventBus.js';
|
|
7
|
+
import { setupServicesEventHandlers } from '../../services/events.js';
|
|
8
|
+
import { setupAllItemsEventHandlers } from '../../events/item/index.js';
|
|
9
|
+
import { setupServiceHandlers } from '../../events/services/index.js';
|
|
10
|
+
import { getGlobalService } from '../../services/global/globalMachine.js';
|
|
11
|
+
import { GlobalState } from '../../services/internal/constants.js';
|
|
12
|
+
import { isBrowser } from '../../helpers/environment.js';
|
|
13
|
+
import { BaseFileManager } from '../../helpers/FileManager/BaseFileManager.js';
|
|
14
|
+
import { BaseDb } from '../../db/Db/BaseDb.js';
|
|
15
|
+
import '../../helpers/index.js';
|
|
16
|
+
import { BaseQueryClient } from '../../helpers/QueryClient/BaseQueryClient.js';
|
|
17
|
+
import { BaseArweaveClient } from '../../helpers/ArweaveClient/BaseArweaveClient.js';
|
|
18
|
+
|
|
19
|
+
const logger = debug('seedSdk:ClientManager:initialize');
|
|
20
|
+
const initialize = fromCallback(({ sendBack, input: { context, event } }) => {
|
|
21
|
+
logger('initialize from ClientManager');
|
|
22
|
+
const { isInitialized } = context;
|
|
23
|
+
const { options, } = event;
|
|
24
|
+
if (isInitialized) {
|
|
25
|
+
sendBack({ type: 'initialized' });
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
const _initialize = async () => {
|
|
29
|
+
const { config, addresses } = options;
|
|
30
|
+
if (isBrowser()) {
|
|
31
|
+
const FileManager = (await import('../../browser/helpers/FileManager.js')).FileManager;
|
|
32
|
+
const Db = (await import('../../browser/db/Db.js')).Db;
|
|
33
|
+
const QueryClient = (await import('../../browser/helpers/QueryClient.js')).QueryClient;
|
|
34
|
+
const ArweaveClient = (await import('../../browser/helpers/ArweaveClient.js')).ArweaveClient;
|
|
35
|
+
BaseFileManager.setPlatformClass(FileManager);
|
|
36
|
+
BaseDb.setPlatformClass(Db);
|
|
37
|
+
BaseQueryClient.setPlatformClass(QueryClient);
|
|
38
|
+
BaseArweaveClient.setPlatformClass(ArweaveClient);
|
|
39
|
+
}
|
|
40
|
+
const { models, endpoints, arweaveDomain, } = config;
|
|
41
|
+
const { files } = endpoints;
|
|
42
|
+
await BaseDb.connectToDb(files);
|
|
43
|
+
if (arweaveDomain) {
|
|
44
|
+
setArweaveDomain(arweaveDomain);
|
|
45
|
+
}
|
|
46
|
+
for (const [key, value] of Object.entries(models)) {
|
|
47
|
+
setModel(key, value);
|
|
48
|
+
}
|
|
49
|
+
setupFsListeners();
|
|
50
|
+
setupAllItemsEventHandlers();
|
|
51
|
+
setupServicesEventHandlers();
|
|
52
|
+
setupServiceHandlers();
|
|
53
|
+
if (areFsListenersReady()) {
|
|
54
|
+
eventEmitter.emit('fs.init');
|
|
55
|
+
}
|
|
56
|
+
if (!areFsListenersReady()) {
|
|
57
|
+
console.error('fs listeners not ready during init');
|
|
58
|
+
}
|
|
59
|
+
const globalService = getGlobalService();
|
|
60
|
+
globalService.send({
|
|
61
|
+
type: 'init',
|
|
62
|
+
endpoints,
|
|
63
|
+
models,
|
|
64
|
+
addresses,
|
|
65
|
+
arweaveDomain,
|
|
66
|
+
filesDir: files,
|
|
67
|
+
});
|
|
68
|
+
const { models: internalModels } = await import('../../db/configs/seed.schema.config.js');
|
|
69
|
+
for (const [key, value] of Object.entries(internalModels)) {
|
|
70
|
+
setModel(key, value);
|
|
71
|
+
}
|
|
72
|
+
await waitFor(globalService, (snapshot) => {
|
|
73
|
+
logger('snapshot.value', snapshot.value);
|
|
74
|
+
return snapshot.value === GlobalState.INITIALIZED;
|
|
75
|
+
});
|
|
76
|
+
logger('globalService initialized');
|
|
77
|
+
};
|
|
78
|
+
_initialize().then(() => {
|
|
79
|
+
sendBack({ type: 'initialized' });
|
|
80
|
+
});
|
|
81
|
+
});
|
|
82
|
+
|
|
83
|
+
export { initialize };
|
|
84
|
+
//# sourceMappingURL=initialize.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"initialize.js","sources":["../../../../../src/client/actors/initialize.ts"],"sourcesContent":["import { ClientManagerContext, FromCallbackInput } from \"@/types\";\nimport { fromCallback, EventObject, waitFor } from \"xstate\";\nimport debug from 'debug'\nimport { areFsListenersReady } from \"@/events/files\";\nimport { setModel } from \"@/stores/modelClass\";\nimport { setArweaveDomain } from \"@/helpers/ArweaveClient\";\nimport { eventEmitter } from \"@/eventBus\";\nimport { setupFsListeners } from \"@/events/files\";\nimport { setupServicesEventHandlers } from \"@/services/events\";\nimport { setupAllItemsEventHandlers } from \"@/events/item\";\nimport { setupServiceHandlers } from \"@/events/services\";\nimport { getGlobalService, } from \"@/services/global/globalMachine\";\nimport { GlobalState } from \"@/services/internal/constants\";\nimport { isBrowser } from \"@/helpers/environment\";\nimport { BaseFileManager } from \"@/helpers/FileManager/BaseFileManager\";\nimport { BaseDb } from \"@/db/Db/BaseDb\";\nimport { BaseArweaveClient, BaseQueryClient } from \"@/helpers\";\n\n\nconst logger = debug('seedSdk:ClientManager:initialize')\n\nexport const initialize = fromCallback<\nEventObject, \nFromCallbackInput<ClientManagerContext>\n>(({sendBack, input: {context, event}}) => {\n logger('initialize from ClientManager')\n const { isInitialized } = context\n const { options, } = event\n\n if (isInitialized) {\n sendBack({type: 'initialized'})\n return\n }\n\n const _initialize = async () => {\n const { config, addresses } = options\n\n if (isBrowser()) {\n const FileManager = (await import('../../browser/helpers/FileManager')).FileManager\n const Db = (await import('../../browser/db/Db')).Db\n const QueryClient = (await import('../../browser/helpers/QueryClient')).QueryClient\n const ArweaveClient = (await import('../../browser/helpers/ArweaveClient')).ArweaveClient\n BaseFileManager.setPlatformClass(FileManager)\n BaseDb.setPlatformClass(Db)\n BaseQueryClient.setPlatformClass(QueryClient)\n BaseArweaveClient.setPlatformClass(ArweaveClient)\n }\n \n const { models, endpoints, arweaveDomain, } = config\n \n const {files} = endpoints\n\n await BaseDb.connectToDb(files,)\n\n if (arweaveDomain) {\n setArweaveDomain(arweaveDomain)\n }\n\n for (const [key, value] of Object.entries(models)) {\n setModel(key, value)\n }\n setupFsListeners()\n setupAllItemsEventHandlers()\n setupServicesEventHandlers()\n setupServiceHandlers()\n if (areFsListenersReady()) {\n eventEmitter.emit('fs.init')\n }\n if (!areFsListenersReady()) {\n console.error('fs listeners not ready during init')\n }\n\n const globalService = getGlobalService()\n\n globalService.send({\n type: 'init',\n endpoints,\n models,\n addresses,\n arweaveDomain,\n filesDir: files,\n })\n\n const { models: internalModels } = await import('@/db/configs/seed.schema.config')\n for (const [key, value] of Object.entries(internalModels)) {\n setModel(key, value)\n }\n\n await waitFor(globalService, (snapshot) => {\n logger('snapshot.value', snapshot.value)\n return snapshot.value === GlobalState.INITIALIZED\n })\n logger('globalService initialized')\n }\n\n _initialize().then(() => {\n sendBack({type: 'initialized'})\n })\n})\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { fromCallback } from 'xstate';
|
|
2
|
+
import debug from 'debug';
|
|
3
|
+
import '../../seedSchema/SeedSchema.js';
|
|
4
|
+
import '../../seedSchema/VersionSchema.js';
|
|
5
|
+
import '../../seedSchema/MetadataSchema.js';
|
|
6
|
+
import { appState } from '../../seedSchema/AppStateSchema.js';
|
|
7
|
+
import '../../seedSchema/ModelSchema.js';
|
|
8
|
+
import '../../seedSchema/ModelUidSchema.js';
|
|
9
|
+
|
|
10
|
+
debug('seedSdk:client:writeToDb');
|
|
11
|
+
const saveAppState = fromCallback(({ sendBack, input: { key, value } }) => {
|
|
12
|
+
const _saveAppState = async () => {
|
|
13
|
+
const { BaseDb } = await import('../../db/Db/BaseDb.js');
|
|
14
|
+
if (!BaseDb) {
|
|
15
|
+
throw new Error('BaseDb not found');
|
|
16
|
+
}
|
|
17
|
+
const appDb = BaseDb.getAppDb();
|
|
18
|
+
if (!appDb) {
|
|
19
|
+
throw new Error('App DB not found');
|
|
20
|
+
}
|
|
21
|
+
console.log(`key: ${key} value: ${value}`);
|
|
22
|
+
appDb.insert(appState)
|
|
23
|
+
.values({
|
|
24
|
+
key: key,
|
|
25
|
+
value: JSON.stringify(value),
|
|
26
|
+
})
|
|
27
|
+
.onConflictDoUpdate({
|
|
28
|
+
target: appState.key,
|
|
29
|
+
set: {
|
|
30
|
+
value: JSON.stringify(value),
|
|
31
|
+
},
|
|
32
|
+
});
|
|
33
|
+
};
|
|
34
|
+
_saveAppState().then(() => {
|
|
35
|
+
sendBack({
|
|
36
|
+
type: 'saveAppStateSuccess',
|
|
37
|
+
key,
|
|
38
|
+
value,
|
|
39
|
+
});
|
|
40
|
+
});
|
|
41
|
+
});
|
|
42
|
+
|
|
43
|
+
export { saveAppState };
|
|
44
|
+
//# sourceMappingURL=saveAppState.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"saveAppState.js","sources":["../../../../../src/client/actors/saveAppState.ts"],"sourcesContent":["import { FromCallbackInput } from \"@/types\";\nimport { fromCallback } from \"xstate\";\nimport { ClientManagerContext } from \"@/types\";\nimport { EventObject } from \"xstate\";\nimport debug from \"debug\";\nimport { appState } from \"@/seedSchema\";\n\nconst logger = debug('seedSdk:client:writeToDb')\n\nexport const saveAppState = fromCallback<\nEventObject, \nFromCallbackInput<ClientManagerContext>\n>(\n ({sendBack, input: {key, value}}) => {\n\n const _saveAppState = async () => {\n const { BaseDb } = await import('@/db/Db/BaseDb')\n if (!BaseDb) {\n throw new Error('BaseDb not found')\n }\n const appDb = BaseDb.getAppDb()\n if (!appDb) {\n throw new Error('App DB not found')\n }\n\n console.log(`key: ${key} value: ${value}`)\n\n appDb.insert(appState)\n .values({\n key: key,\n value: JSON.stringify(value),\n })\n .onConflictDoUpdate({\n target: appState.key,\n set: {\n value: JSON.stringify(value),\n },\n })\n \n }\n\n _saveAppState().then(() => {\n sendBack({\n type: 'saveAppStateSuccess',\n key,\n value,\n })\n })\n \n })\n"],"names":[],"mappings":";;;;;;;;;AAOe,KAAK,CAAC,0BAA0B;AAElC,MAAA,YAAY,GAAG,YAAY,CAItC,CAAC,EAAC,QAAQ,EAAE,KAAK,EAAE,EAAC,GAAG,EAAE,KAAK,EAAC,EAAC,KAAI;AAElC,IAAA,MAAM,aAAa,GAAG,YAAW;QAC/B,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,OAAO,uBAAgB,CAAC;QACjD,IAAI,CAAC,MAAM,EAAE;AACX,YAAA,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC;;AAErC,QAAA,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE;QAC/B,IAAI,CAAC,KAAK,EAAE;AACV,YAAA,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC;;QAGrC,OAAO,CAAC,GAAG,CAAC,CAAA,KAAA,EAAQ,GAAG,CAAW,QAAA,EAAA,KAAK,CAAE,CAAA,CAAC;AAE1C,QAAA,KAAK,CAAC,MAAM,CAAC,QAAQ;AAClB,aAAA,MAAM,CAAC;AACN,YAAA,GAAG,EAAE,GAAG;AACR,YAAA,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;SAC7B;AACA,aAAA,kBAAkB,CAAC;YAClB,MAAM,EAAE,QAAQ,CAAC,GAAG;AACpB,YAAA,GAAG,EAAE;AACH,gBAAA,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;AAC7B,aAAA;AACF,SAAA,CAAC;AAEN,KAAC;AAED,IAAA,aAAa,EAAE,CAAC,IAAI,CAAC,MAAK;AACxB,QAAA,QAAQ,CAAC;AACP,YAAA,IAAI,EAAE,qBAAqB;YAC3B,GAAG;YACH,KAAK;AACN,SAAA,CAAC;AACJ,KAAC,CAAC;AAEJ,CAAC;;;;"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { setup, assign } from 'xstate';
|
|
2
|
+
import { initialize } from './actors/initialize.js';
|
|
3
|
+
import { setAddresses } from './actions/setAddresses.js';
|
|
4
|
+
|
|
5
|
+
const clientManagerMachine = setup({
|
|
6
|
+
types: {
|
|
7
|
+
context: {},
|
|
8
|
+
input: {},
|
|
9
|
+
},
|
|
10
|
+
actions: {
|
|
11
|
+
setAddresses,
|
|
12
|
+
},
|
|
13
|
+
actors: {
|
|
14
|
+
initialize,
|
|
15
|
+
},
|
|
16
|
+
}).createMachine({
|
|
17
|
+
id: 'clientManager',
|
|
18
|
+
initial: 'uninitialized',
|
|
19
|
+
context: ({ input }) => input,
|
|
20
|
+
states: {
|
|
21
|
+
uninitialized: {
|
|
22
|
+
on: {
|
|
23
|
+
init: {
|
|
24
|
+
target: 'initializing',
|
|
25
|
+
},
|
|
26
|
+
},
|
|
27
|
+
},
|
|
28
|
+
initializing: {
|
|
29
|
+
on: {
|
|
30
|
+
initialized: {
|
|
31
|
+
target: 'idle',
|
|
32
|
+
},
|
|
33
|
+
},
|
|
34
|
+
invoke: {
|
|
35
|
+
src: 'initialize',
|
|
36
|
+
input: ({ event, context }) => ({ event, context }),
|
|
37
|
+
},
|
|
38
|
+
},
|
|
39
|
+
idle: {
|
|
40
|
+
entry: assign({
|
|
41
|
+
isInitialized: true,
|
|
42
|
+
}),
|
|
43
|
+
on: {
|
|
44
|
+
saveAppStateSuccess: {
|
|
45
|
+
actions: assign(({ event }) => {
|
|
46
|
+
const { key, value } = event;
|
|
47
|
+
return {
|
|
48
|
+
isSaving: false
|
|
49
|
+
};
|
|
50
|
+
}),
|
|
51
|
+
},
|
|
52
|
+
setAddresses: {
|
|
53
|
+
actions: ['setAddresses'],
|
|
54
|
+
},
|
|
55
|
+
},
|
|
56
|
+
},
|
|
57
|
+
},
|
|
58
|
+
});
|
|
59
|
+
|
|
60
|
+
export { clientManagerMachine };
|
|
61
|
+
//# sourceMappingURL=clientManagerMachine.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clientManagerMachine.js","sources":["../../../../src/client/clientManagerMachine.ts"],"sourcesContent":["import { ClientManagerContext } from \"@/types\"\nimport { assign, setup } from \"xstate\"\nimport { initialize } from \"./actors/initialize\"\nimport { setAddresses } from \"./actions/setAddresses\"\n\nexport const clientManagerMachine = setup({\n types: {\n context: {} as ClientManagerContext,\n input: {} as ClientManagerContext | undefined,\n },\n actions: {\n setAddresses,\n },\n actors: {\n initialize,\n },\n}).createMachine({\n id: 'clientManager',\n initial: 'uninitialized',\n context: ({ input }) => input as ClientManagerContext,\n states: {\n uninitialized: {\n on: {\n init: {\n target: 'initializing',\n },\n },\n },\n initializing: {\n on: {\n initialized: {\n target: 'idle',\n },\n },\n invoke: {\n src: 'initialize',\n input: ({ event, context }) => ({ event, context }),\n },\n },\n idle: {\n entry: assign({\n isInitialized: true,\n }),\n on: {\n saveAppStateSuccess: {\n actions: assign(({ event }) => {\n const { key, value } = event\n return {\n isSaving: false\n }\n }),\n },\n setAddresses: {\n actions: ['setAddresses'],\n },\n },\n },\n },\n})\n"],"names":[],"mappings":";;;;AAKO,MAAM,oBAAoB,GAAG,KAAK,CAAC;AACxC,IAAA,KAAK,EAAE;AACL,QAAA,OAAO,EAAE,EAA0B;AACnC,QAAA,KAAK,EAAE,EAAsC;AAC9C,KAAA;AACD,IAAA,OAAO,EAAE;QACP,YAAY;AACb,KAAA;AACD,IAAA,MAAM,EAAE;QACN,UAAU;AACX,KAAA;CACF,CAAC,CAAC,aAAa,CAAC;AACf,IAAA,EAAE,EAAE,eAAe;AACnB,IAAA,OAAO,EAAE,eAAe;IACxB,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,KAA6B;AACrD,IAAA,MAAM,EAAE;AACN,QAAA,aAAa,EAAE;AACb,YAAA,EAAE,EAAE;AACF,gBAAA,IAAI,EAAE;AACJ,oBAAA,MAAM,EAAE,cAAc;AACvB,iBAAA;AACF,aAAA;AACF,SAAA;AACD,QAAA,YAAY,EAAE;AACZ,YAAA,EAAE,EAAE;AACF,gBAAA,WAAW,EAAE;AACX,oBAAA,MAAM,EAAE,MAAM;AACf,iBAAA;AACF,aAAA;AACD,YAAA,MAAM,EAAE;AACN,gBAAA,GAAG,EAAE,YAAY;AACjB,gBAAA,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;AACpD,aAAA;AACF,SAAA;AACD,QAAA,IAAI,EAAE;YACJ,KAAK,EAAE,MAAM,CAAC;AACZ,gBAAA,aAAa,EAAE,IAAI;aACpB,CAAC;AACF,YAAA,EAAE,EAAE;AACF,gBAAA,mBAAmB,EAAE;oBACnB,OAAO,EAAE,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,KAAI;AAC5B,wBAAA,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,KAAK;wBAC5B,OAAO;AACL,4BAAA,QAAQ,EAAE;yBACX;AACH,qBAAC,CAAC;AACH,iBAAA;AACD,gBAAA,YAAY,EAAE;oBACZ,OAAO,EAAE,CAAC,cAAc,CAAC;AAC1B,iBAAA;AACF,aAAA;AACF,SAAA;AACF,KAAA;AACF,CAAA;;;;"}
|
|
@@ -6,8 +6,7 @@ export declare abstract class BaseDb implements IDb {
|
|
|
6
6
|
static setPlatformClass(platformClass: typeof BaseDb): void;
|
|
7
7
|
static getAppDb(): BaseSQLiteDatabase;
|
|
8
8
|
static isAppDbReady(): boolean;
|
|
9
|
-
static
|
|
10
|
-
static connectToDb(pathToDir: string, dbName: string): Promise<unknown>;
|
|
9
|
+
static connectToDb(pathToDir: string): Promise<unknown>;
|
|
11
10
|
static migrate(pathToDbDir: string, dbName: string, dbId: string): Promise<void>;
|
|
12
11
|
}
|
|
13
12
|
//# sourceMappingURL=BaseDb.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseDb.d.ts","sourceRoot":"","sources":["../../../../src/db/Db/BaseDb.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAA;AACtC,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAE5D,8BAAsB,MAAO,YAAW,GAAG;;IAKzC,MAAM,CAAC,aAAa,EAAE,OAAO,MAAM,CAAA;IAEnC,MAAM,CAAC,gBAAgB,CAAC,aAAa,EAAE,OAAO,MAAM;IAIpD,MAAM,CAAC,QAAQ,IAAI,kBAAkB;IAIrC,MAAM,CAAC,YAAY,IAAI,OAAO;IAI9B,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"BaseDb.d.ts","sourceRoot":"","sources":["../../../../src/db/Db/BaseDb.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAA;AACtC,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAE5D,8BAAsB,MAAO,YAAW,GAAG;;IAKzC,MAAM,CAAC,aAAa,EAAE,OAAO,MAAM,CAAA;IAEnC,MAAM,CAAC,gBAAgB,CAAC,aAAa,EAAE,OAAO,MAAM;IAIpD,MAAM,CAAC,QAAQ,IAAI,kBAAkB;IAIrC,MAAM,CAAC,YAAY,IAAI,OAAO;IAI9B,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE,MAAM,GAAI,OAAO,CAAC,OAAO,CAAC;WAI3C,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAIvF"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
class BaseDb {
|
|
2
|
+
constructor() {
|
|
3
|
+
}
|
|
4
|
+
static setPlatformClass(platformClass) {
|
|
5
|
+
this.PlatformClass = platformClass;
|
|
6
|
+
}
|
|
7
|
+
static getAppDb() {
|
|
8
|
+
return this.PlatformClass.getAppDb();
|
|
9
|
+
}
|
|
10
|
+
static isAppDbReady() {
|
|
11
|
+
return this.PlatformClass.isAppDbReady();
|
|
12
|
+
}
|
|
13
|
+
static connectToDb(pathToDir) {
|
|
14
|
+
return this.PlatformClass.connectToDb(pathToDir);
|
|
15
|
+
}
|
|
16
|
+
static async migrate(pathToDbDir, dbName, dbId) {
|
|
17
|
+
return this.PlatformClass.migrate(pathToDbDir, dbName, dbId);
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export { BaseDb };
|
|
22
|
+
//# sourceMappingURL=BaseDb.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaseDb.js","sources":["../../../../../src/db/Db/BaseDb.ts"],"sourcesContent":["import { IDb } from '@/interfaces/IDb'\nimport { BaseSQLiteDatabase } from 'drizzle-orm/sqlite-core'\n\nexport abstract class BaseDb implements IDb {\n\n constructor() {\n }\n\n static PlatformClass: typeof BaseDb\n\n static setPlatformClass(platformClass: typeof BaseDb) {\n this.PlatformClass = platformClass\n }\n\n static getAppDb(): BaseSQLiteDatabase {\n return this.PlatformClass.getAppDb()\n }\n\n static isAppDbReady(): boolean {\n return this.PlatformClass.isAppDbReady()\n }\n\n static connectToDb(pathToDir: string,): Promise<unknown> {\n return this.PlatformClass.connectToDb(pathToDir,)\n }\n\n static async migrate(pathToDbDir: string, dbName: string, dbId: string): Promise<void> {\n return this.PlatformClass.migrate(pathToDbDir, dbName, dbId)\n }\n\n}"],"names":[],"mappings":"MAGsB,MAAM,CAAA;AAE1B,IAAA,WAAA,GAAA;;IAKA,OAAO,gBAAgB,CAAC,aAA4B,EAAA;AAClD,QAAA,IAAI,CAAC,aAAa,GAAG,aAAa;;AAGpC,IAAA,OAAO,QAAQ,GAAA;AACb,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE;;AAGtC,IAAA,OAAO,YAAY,GAAA;AACjB,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE;;IAG1C,OAAO,WAAW,CAAC,SAAiB,EAAA;QAClC,OAAO,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,SAAS,CAAE;;IAGnD,aAAa,OAAO,CAAC,WAAmB,EAAE,MAAc,EAAE,IAAY,EAAA;AACpE,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC;;AAG/D;;;;"}
|
|
@@ -1,29 +1,7 @@
|
|
|
1
1
|
import { __decorate, __metadata } from 'tslib';
|
|
2
2
|
import 'reflect-metadata';
|
|
3
|
-
import {
|
|
4
|
-
import '
|
|
5
|
-
import '@sinclair/typebox';
|
|
6
|
-
import 'xstate';
|
|
7
|
-
import './constants-Bhl5dZpN.js';
|
|
8
|
-
import 'graphql-request';
|
|
9
|
-
import '@ethereum-attestation-service/eas-sdk';
|
|
10
|
-
import 'debug';
|
|
11
|
-
import 'pluralize';
|
|
12
|
-
import 'drizzle-orm/sqlite-core';
|
|
13
|
-
import 'drizzle-orm';
|
|
14
|
-
import 'eventemitter3';
|
|
15
|
-
import 'nanoid';
|
|
16
|
-
import 'nanoid-dictionary';
|
|
17
|
-
import '@zenfs/core';
|
|
18
|
-
import 'lodash-es';
|
|
19
|
-
import '@statelyai/inspect';
|
|
20
|
-
import 'path';
|
|
21
|
-
import 'arweave';
|
|
22
|
-
import 'rxjs';
|
|
23
|
-
import 'drizzle-orm/casing';
|
|
24
|
-
import 'react';
|
|
25
|
-
import 'use-immer';
|
|
26
|
-
import '@xstate/react';
|
|
3
|
+
import { Model } from '../../schema/model/index.js';
|
|
4
|
+
import { Text } from '../../schema/property/index.js';
|
|
27
5
|
|
|
28
6
|
let Seed = class Seed {
|
|
29
7
|
};
|
|
@@ -71,4 +49,4 @@ const models = {
|
|
|
71
49
|
};
|
|
72
50
|
|
|
73
51
|
export { models };
|
|
74
|
-
//# sourceMappingURL=seed.schema.config
|
|
52
|
+
//# sourceMappingURL=seed.schema.config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"seed.schema.config.js","sources":["../../../../../src/db/configs/seed.schema.config.ts"],"sourcesContent":["import { Model, Text } from '@/schema'\n\n@Model\nclass Seed {\n @Text() uid!: string\n @Text() type!: string\n}\n\n@Model\nclass Version {\n @Text() seedUid!: string\n @Text() note!: string\n}\n\n@Model\nclass Metadata {\n @Text() key!: string\n @Text() value!: string\n}\n\nexport const models = {\n Seed,\n Version,\n Metadata,\n}\n"],"names":[],"mappings":";;;;;AAGA,IAAM,IAAI,GAAV,MAAM,IAAI,CAAA;CAGT;AAFS,UAAA,CAAA;AAAP,IAAA,IAAI,EAAE;;AAAa,CAAA,EAAA,IAAA,CAAA,SAAA,EAAA,KAAA,EAAA,MAAA,CAAA;AACZ,UAAA,CAAA;AAAP,IAAA,IAAI,EAAE;;AAAc,CAAA,EAAA,IAAA,CAAA,SAAA,EAAA,MAAA,EAAA,MAAA,CAAA;AAFjB,IAAI,GAAA,UAAA,CAAA;IADT;AACK,CAAA,EAAA,IAAI,CAGT;AAGD,IAAM,OAAO,GAAb,MAAM,OAAO,CAAA;CAGZ;AAFS,UAAA,CAAA;AAAP,IAAA,IAAI,EAAE;;AAAiB,CAAA,EAAA,OAAA,CAAA,SAAA,EAAA,SAAA,EAAA,MAAA,CAAA;AAChB,UAAA,CAAA;AAAP,IAAA,IAAI,EAAE;;AAAc,CAAA,EAAA,OAAA,CAAA,SAAA,EAAA,MAAA,EAAA,MAAA,CAAA;AAFjB,OAAO,GAAA,UAAA,CAAA;IADZ;AACK,CAAA,EAAA,OAAO,CAGZ;AAGD,IAAM,QAAQ,GAAd,MAAM,QAAQ,CAAA;CAGb;AAFS,UAAA,CAAA;AAAP,IAAA,IAAI,EAAE;;AAAa,CAAA,EAAA,QAAA,CAAA,SAAA,EAAA,KAAA,EAAA,MAAA,CAAA;AACZ,UAAA,CAAA;AAAP,IAAA,IAAI,EAAE;;AAAe,CAAA,EAAA,QAAA,CAAA,SAAA,EAAA,OAAA,EAAA,MAAA,CAAA;AAFlB,QAAQ,GAAA,UAAA,CAAA;IADb;AACK,CAAA,EAAA,QAAQ,CAGb;AAEY,MAAA,MAAM,GAAG;IACpB,IAAI;IACJ,OAAO;IACP,QAAQ;;;;;"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { BaseDb } from '../Db/BaseDb.js';
|
|
2
|
+
import { seeds } from '../../seedSchema/SeedSchema.js';
|
|
3
|
+
import '../../seedSchema/VersionSchema.js';
|
|
4
|
+
import '../../seedSchema/MetadataSchema.js';
|
|
5
|
+
import '../../seedSchema/AppStateSchema.js';
|
|
6
|
+
import '../../seedSchema/ModelSchema.js';
|
|
7
|
+
import '../../seedSchema/ModelUidSchema.js';
|
|
8
|
+
import { or, and, isNotNull, not, eq } from 'drizzle-orm';
|
|
9
|
+
|
|
10
|
+
const getExistingItem = async ({ seedLocalId, seedUid, }) => {
|
|
11
|
+
const appDb = BaseDb.getAppDb();
|
|
12
|
+
const rows = await appDb
|
|
13
|
+
.select({
|
|
14
|
+
seedLocalId: seeds.localId,
|
|
15
|
+
seedUid: seeds.uid,
|
|
16
|
+
createdAt: seeds.createdAt,
|
|
17
|
+
})
|
|
18
|
+
.from(seeds)
|
|
19
|
+
.where(or(and(isNotNull(seeds.uid), not(eq(seeds.uid, '')), not(eq(seeds.uid, 'undefined')), not(eq(seeds.uid, 'null')), not(eq(seeds.uid, 'false')), not(eq(seeds.uid, '0')), eq(seeds.uid, seedUid)), and(isNotNull(seeds.localId), not(eq(seeds.localId, '')), not(eq(seeds.localId, 'undefined')), not(eq(seeds.localId, 'null')), not(eq(seeds.localId, 'false')), not(eq(seeds.localId, '0')), eq(seeds.localId, seedLocalId))));
|
|
20
|
+
if (!rows || rows.length === 0) {
|
|
21
|
+
return undefined;
|
|
22
|
+
}
|
|
23
|
+
const matchingRow = rows.find(row => row.seedUid === seedUid) ||
|
|
24
|
+
rows.find(row => row.seedLocalId === seedLocalId);
|
|
25
|
+
return matchingRow;
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
export { getExistingItem };
|
|
29
|
+
//# sourceMappingURL=getExistingItem.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getExistingItem.js","sources":["../../../../../src/db/read/getExistingItem.ts"],"sourcesContent":["import { BaseDb } from '@/db/Db/BaseDb'\nimport { seeds } from '@/seedSchema'\nimport { and, eq, isNotNull, not, or } from 'drizzle-orm'\n\ntype GetExistingItemProps = {\n seedLocalId: string\n seedUid: string\n}\n\ntype GetExistingItemReturn = {\n seedLocalId: string\n seedUid: string\n createdAt: string\n}\n\nexport const getExistingItem = async ({\n seedLocalId,\n seedUid,\n}: GetExistingItemProps): Promise<GetExistingItemReturn | undefined> => {\n const appDb = BaseDb.getAppDb()\n\n const rows = await appDb\n .select({\n seedLocalId: seeds.localId,\n seedUid: seeds.uid,\n createdAt: seeds.createdAt,\n })\n .from(seeds)\n .where(\n or(\n and(\n isNotNull(seeds.uid),\n not(eq(seeds.uid, '')),\n not(eq(seeds.uid, 'undefined')),\n not(eq(seeds.uid, 'null')),\n not(eq(seeds.uid, 'false')),\n not(eq(seeds.uid, '0')),\n eq(seeds.uid, seedUid)\n ),\n and(\n isNotNull(seeds.localId),\n not(eq(seeds.localId, '')),\n not(eq(seeds.localId, 'undefined')),\n not(eq(seeds.localId, 'null')),\n not(eq(seeds.localId, 'false')),\n not(eq(seeds.localId, '0')),\n eq(seeds.localId, seedLocalId)\n )\n )\n )\n\n if (!rows || rows.length === 0) {\n return undefined\n }\n\n const matchingRow = rows.find(row => row.seedUid === seedUid) ||\n rows.find(row => row.seedLocalId === seedLocalId)\n\n return matchingRow\n} "],"names":[],"mappings":";;;;;;;;;AAeO,MAAM,eAAe,GAAG,OAAO,EACpC,WAAW,EACX,OAAO,GACc,KAAgD;AACrE,IAAA,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE;IAE/B,MAAM,IAAI,GAAG,MAAM;AAChB,SAAA,MAAM,CAAC;QACN,WAAW,EAAE,KAAK,CAAC,OAAO;QAC1B,OAAO,EAAE,KAAK,CAAC,GAAG;QAClB,SAAS,EAAE,KAAK,CAAC,SAAS;KAC3B;SACA,IAAI,CAAC,KAAK;AACV,SAAA,KAAK,CACJ,EAAE,CACA,GAAG,CACD,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,EACpB,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,EACtB,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC,EAC/B,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,EAC1B,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,EAC3B,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,EACvB,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CACvB,EACD,GAAG,CACD,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,EACxB,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,EAC1B,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,EACnC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,EAC9B,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,EAC/B,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,EAC3B,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,WAAW,CAAC,CAC/B,CACF,CACF;IAEH,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;AAC9B,QAAA,OAAO,SAAS;;AAGlB,IAAA,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,KAAK,OAAO,CAAC;AAC3D,QAAA,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,WAAW,KAAK,WAAW,CAAC;AAEnD,IAAA,OAAO,WAAW;AACpB;;;;"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { getItemData } from './getItemData.js';
|
|
2
|
+
import { BaseItem } from '../../Item/BaseItem.js';
|
|
3
|
+
import { startCase } from 'lodash-es';
|
|
4
|
+
|
|
5
|
+
const getItem = async ({ modelName, seedLocalId, seedUid }) => {
|
|
6
|
+
const itemInitObj = await getItemData({
|
|
7
|
+
modelName,
|
|
8
|
+
seedLocalId,
|
|
9
|
+
seedUid,
|
|
10
|
+
});
|
|
11
|
+
if (!itemInitObj) {
|
|
12
|
+
console.error(`[db/queries] [getItem] no itemInitObj modelName: ${modelName} seedLocalId: ${seedLocalId} seedUid: ${seedUid}`);
|
|
13
|
+
return;
|
|
14
|
+
}
|
|
15
|
+
if (!itemInitObj.seedLocalId) {
|
|
16
|
+
console.error(`[db/queries] [getItem] no itemInitObj.seedLocalId modelName: ${modelName} seedLocalId: ${seedLocalId} seedUid: ${seedUid}`);
|
|
17
|
+
return;
|
|
18
|
+
}
|
|
19
|
+
if (!itemInitObj.modelName && itemInitObj.type) {
|
|
20
|
+
itemInitObj.modelName = startCase(itemInitObj.type);
|
|
21
|
+
}
|
|
22
|
+
return BaseItem.create(itemInitObj);
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
export { getItem };
|
|
26
|
+
//# sourceMappingURL=getItem.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getItem.js","sources":["../../../../../src/db/read/getItem.ts"],"sourcesContent":["import { getItemData } from './getItemData'\nimport { GetItem } from '@/types'\nimport { BaseItem } from '@/Item/BaseItem'\nimport { startCase } from 'lodash-es'\n\nexport const getItem: GetItem = async ({ modelName, seedLocalId, seedUid }) => {\n const itemInitObj = await getItemData({\n modelName,\n seedLocalId,\n seedUid,\n })\n\n if (!itemInitObj) {\n console.error(\n `[db/queries] [getItem] no itemInitObj modelName: ${modelName} seedLocalId: ${seedLocalId} seedUid: ${seedUid}`,\n )\n return\n }\n\n if (!itemInitObj.seedLocalId) {\n console.error(\n `[db/queries] [getItem] no itemInitObj.seedLocalId modelName: ${modelName} seedLocalId: ${seedLocalId} seedUid: ${seedUid}`,\n )\n return\n }\n\n if (!itemInitObj.modelName && itemInitObj.type) {\n itemInitObj.modelName = startCase(itemInitObj.type)\n }\n\n return BaseItem.create(itemInitObj)\n}\n"],"names":[],"mappings":";;;;AAKO,MAAM,OAAO,GAAY,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,KAAI;AAC5E,IAAA,MAAM,WAAW,GAAG,MAAM,WAAW,CAAC;QACpC,SAAS;QACT,WAAW;QACX,OAAO;AACR,KAAA,CAAC;IAEF,IAAI,CAAC,WAAW,EAAE;QAChB,OAAO,CAAC,KAAK,CACX,CAAoD,iDAAA,EAAA,SAAS,CAAiB,cAAA,EAAA,WAAW,CAAa,UAAA,EAAA,OAAO,CAAE,CAAA,CAChH;QACD;;AAGF,IAAA,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE;QAC5B,OAAO,CAAC,KAAK,CACX,CAAgE,6DAAA,EAAA,SAAS,CAAiB,cAAA,EAAA,WAAW,CAAa,UAAA,EAAA,OAAO,CAAE,CAAA,CAC5H;QACD;;IAGF,IAAI,CAAC,WAAW,CAAC,SAAS,IAAI,WAAW,CAAC,IAAI,EAAE;QAC9C,WAAW,CAAC,SAAS,GAAG,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC;;AAGrD,IAAA,OAAO,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC;AACrC;;;;"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import debug from 'debug';
|
|
2
|
+
import { BaseDb } from '../Db/BaseDb.js';
|
|
3
|
+
import { getTableColumns, eq, and, gt, sql } from 'drizzle-orm';
|
|
4
|
+
import { getItemProperties } from './getItemProperties.js';
|
|
5
|
+
import { getVersionData } from './subqueries/versionData.js';
|
|
6
|
+
import { seeds } from '../../seedSchema/SeedSchema.js';
|
|
7
|
+
import '../../seedSchema/VersionSchema.js';
|
|
8
|
+
import '../../seedSchema/MetadataSchema.js';
|
|
9
|
+
import '../../seedSchema/AppStateSchema.js';
|
|
10
|
+
import '../../seedSchema/ModelSchema.js';
|
|
11
|
+
import '../../seedSchema/ModelUidSchema.js';
|
|
12
|
+
import { getSeedData } from './getSeedData.js';
|
|
13
|
+
|
|
14
|
+
const logger = debug('seedSdk:db:read:getItemData');
|
|
15
|
+
const getItemData = async ({ modelName, seedLocalId, seedUid, }) => {
|
|
16
|
+
if (!seedLocalId && !seedUid) {
|
|
17
|
+
throw new Error('[db/queries] [getItem] no seedLocalId or seedUid');
|
|
18
|
+
}
|
|
19
|
+
if (seedUid && !seedLocalId) {
|
|
20
|
+
const seedData = await getSeedData({ seedUid });
|
|
21
|
+
if (!seedData) {
|
|
22
|
+
logger('[db/queries] [getItem] no seedData seedUid', seedUid);
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
seedLocalId = seedData.localId;
|
|
26
|
+
}
|
|
27
|
+
const appDb = BaseDb.getAppDb();
|
|
28
|
+
const { localId, uid, ...rest } = getTableColumns(seeds);
|
|
29
|
+
const whereClauses = [];
|
|
30
|
+
if (modelName) {
|
|
31
|
+
whereClauses.push(eq(seeds.type, modelName.toLowerCase()));
|
|
32
|
+
}
|
|
33
|
+
if (seedUid) {
|
|
34
|
+
whereClauses.push(eq(seeds.uid, seedUid));
|
|
35
|
+
}
|
|
36
|
+
if (seedLocalId && !seedUid) {
|
|
37
|
+
whereClauses.push(eq(seeds.localId, seedLocalId));
|
|
38
|
+
}
|
|
39
|
+
const versionData = getVersionData();
|
|
40
|
+
const itemDataRows = await appDb
|
|
41
|
+
.with(versionData)
|
|
42
|
+
.select({
|
|
43
|
+
...rest,
|
|
44
|
+
seedLocalId: seeds.localId,
|
|
45
|
+
seedUid: seeds.uid,
|
|
46
|
+
versionsCount: versionData.versionsCount,
|
|
47
|
+
lastVersionPublishedAt: versionData.lastVersionPublishedAt,
|
|
48
|
+
latestVersionUid: versionData.latestVersionUid,
|
|
49
|
+
latestVersionLocalId: versionData.latestVersionLocalId,
|
|
50
|
+
})
|
|
51
|
+
.from(seeds)
|
|
52
|
+
.leftJoin(versionData, eq(seeds.localId, versionData.seedLocalId))
|
|
53
|
+
.where(and(...whereClauses, gt(versionData.versionsCount, 0)))
|
|
54
|
+
.orderBy(sql.raw('COALESCE(attestation_created_at, created_at) DESC'))
|
|
55
|
+
.groupBy(seeds.localId);
|
|
56
|
+
if (!itemDataRows || itemDataRows.length === 0) {
|
|
57
|
+
logger('[db/queries] [getItemDataFromDb] no itemDataRows');
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
let itemData = itemDataRows[0];
|
|
61
|
+
const propertiesData = await getItemProperties({
|
|
62
|
+
seedLocalId,
|
|
63
|
+
seedUid: itemData.seedUid || undefined,
|
|
64
|
+
});
|
|
65
|
+
if (!propertiesData || propertiesData.length === 0) {
|
|
66
|
+
return itemData;
|
|
67
|
+
}
|
|
68
|
+
for (const propertyData of propertiesData) {
|
|
69
|
+
const propertyName = propertyData.propertyName;
|
|
70
|
+
let propertyValue = propertyData.propertyValue;
|
|
71
|
+
if (propertyName.endsWith('Id') || propertyName.endsWith('Ids')) {
|
|
72
|
+
if (propertyData.refSeedType) {
|
|
73
|
+
const propertyNameVariant = propertyName.replace(/Ids?$/, '');
|
|
74
|
+
itemData[propertyNameVariant] = propertyValue;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
itemData[propertyName] = propertyValue;
|
|
78
|
+
}
|
|
79
|
+
if (itemData)
|
|
80
|
+
return itemData;
|
|
81
|
+
};
|
|
82
|
+
|
|
83
|
+
export { getItemData };
|
|
84
|
+
//# sourceMappingURL=getItemData.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getItemData.js","sources":["../../../../../src/db/read/getItemData.ts"],"sourcesContent":["import { GetItemData, ItemData } from \"@/types\"\nimport debug from \"debug\"\nimport { BaseDb } from \"../Db/BaseDb\"\nimport { and, eq, getTableColumns, gt, SQL, sql } from \"drizzle-orm\"\nimport { getItemProperties } from \"./getItemProperties\"\nimport { getVersionData } from \"./subqueries/versionData\"\nimport { seeds } from \"@/seedSchema\"\nimport { getSeedData } from \"./getSeedData\"\n\nconst logger = debug('seedSdk:db:read:getItemData')\n\nexport const getItemData: GetItemData = async ({\n modelName,\n seedLocalId,\n seedUid,\n}) => {\n if (!seedLocalId && !seedUid) {\n throw new Error('[db/queries] [getItem] no seedLocalId or seedUid')\n }\n\n if (seedUid && !seedLocalId) {\n const seedData = await getSeedData({ seedUid })\n if (!seedData) {\n logger('[db/queries] [getItem] no seedData seedUid', seedUid)\n return\n }\n seedLocalId = seedData.localId\n }\n\n const appDb = BaseDb.getAppDb()\n\n const { localId, uid, ...rest } = getTableColumns(seeds)\n\n const whereClauses: SQL[] = []\n\n if (modelName) {\n whereClauses.push(eq(seeds.type, modelName.toLowerCase()))\n }\n\n if (seedUid) {\n whereClauses.push(eq(seeds.uid, seedUid))\n }\n\n if (seedLocalId && !seedUid) {\n whereClauses.push(eq(seeds.localId, seedLocalId))\n }\n\n const versionData = getVersionData()\n\n const itemDataRows = await appDb\n .with(versionData)\n .select({\n ...rest,\n seedLocalId: seeds.localId,\n seedUid: seeds.uid,\n versionsCount: versionData.versionsCount,\n lastVersionPublishedAt: versionData.lastVersionPublishedAt,\n latestVersionUid: versionData.latestVersionUid,\n latestVersionLocalId: versionData.latestVersionLocalId,\n })\n .from(seeds)\n .leftJoin(versionData, eq(seeds.localId, versionData.seedLocalId))\n .where(and(...whereClauses, gt(versionData.versionsCount, 0)))\n .orderBy(sql.raw('COALESCE(attestation_created_at, created_at) DESC'))\n .groupBy(seeds.localId) as ItemData[]\n\n if (!itemDataRows || itemDataRows.length === 0) {\n logger('[db/queries] [getItemDataFromDb] no itemDataRows')\n return\n }\n\n let itemData = itemDataRows[0] as ItemData & { [key: string]: any }\n\n const propertiesData = await getItemProperties({\n seedLocalId,\n seedUid: itemData.seedUid || undefined,\n })\n\n if (!propertiesData || propertiesData.length === 0) {\n return itemData\n }\n\n for (const propertyData of propertiesData) {\n const propertyName = propertyData.propertyName\n\n let propertyValue = propertyData.propertyValue\n\n if (propertyName.endsWith('Id') || propertyName.endsWith('Ids')) {\n if (propertyData.refSeedType) {\n const propertyNameVariant = propertyName.replace(/Ids?$/, '')\n itemData[propertyNameVariant] = propertyValue\n }\n }\n\n itemData[propertyName] = propertyValue\n }\n\n if (itemData) return itemData\n}"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { seeds } from '../../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 { isNotNull, eq, isNull } from 'drizzle-orm';
|
|
8
|
+
import { BaseDb } from '../Db/BaseDb.js';
|
|
9
|
+
import { getMetadataLatest } from './subqueries/metadataLatest.js';
|
|
10
|
+
|
|
11
|
+
const getItemProperties = async ({ seedLocalId, seedUid, edited, }) => {
|
|
12
|
+
const appDb = BaseDb.getAppDb();
|
|
13
|
+
const whereClauses = [isNotNull(metadata.propertyName)];
|
|
14
|
+
if (seedUid) {
|
|
15
|
+
whereClauses.push(eq(seeds.uid, seedUid));
|
|
16
|
+
}
|
|
17
|
+
if (seedLocalId) {
|
|
18
|
+
whereClauses.push(eq(seeds.localId, seedLocalId));
|
|
19
|
+
}
|
|
20
|
+
whereClauses.push(isNotNull(metadata.propertyName));
|
|
21
|
+
if (typeof edited !== 'undefined') {
|
|
22
|
+
if (edited) {
|
|
23
|
+
whereClauses.push(isNull(metadata.uid));
|
|
24
|
+
}
|
|
25
|
+
if (!edited) {
|
|
26
|
+
whereClauses.push(isNotNull(metadata.uid));
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
// const metadataColumns = getTableColumns(metadata)
|
|
30
|
+
const metadataLatest = getMetadataLatest({ seedLocalId, seedUid });
|
|
31
|
+
const propertiesData = await appDb
|
|
32
|
+
.with(metadataLatest)
|
|
33
|
+
.select()
|
|
34
|
+
.from(metadataLatest)
|
|
35
|
+
.where(eq(metadataLatest.rowNum, 1));
|
|
36
|
+
return propertiesData.map(data => ({
|
|
37
|
+
...data,
|
|
38
|
+
localId: data.localId || '',
|
|
39
|
+
uid: data.uid || '',
|
|
40
|
+
propertyName: data.propertyName || '',
|
|
41
|
+
propertyValue: data.propertyValue || '',
|
|
42
|
+
schemaUid: data.schemaUid || '',
|
|
43
|
+
modelType: data.modelType || '',
|
|
44
|
+
seedLocalId: data.seedLocalId || '',
|
|
45
|
+
}));
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
export { getItemProperties };
|
|
49
|
+
//# sourceMappingURL=getItemProperties.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getItemProperties.js","sources":["../../../../../src/db/read/getItemProperties.ts"],"sourcesContent":["import { GetItemProperties, PropertyData } from '@/types'\nimport { metadata, seeds, versions } from '@/seedSchema'\nimport { and, eq, getTableColumns, isNotNull, isNull, sql, SQL } from 'drizzle-orm'\nimport { BaseDb } from '@/db/Db/BaseDb'\nimport { getMetadataLatest } from './subqueries/metadataLatest'\n\n\nexport const getItemProperties: GetItemProperties = async ({\n seedLocalId,\n seedUid,\n edited,\n}) => {\n const appDb = BaseDb.getAppDb()\n\n const whereClauses: SQL[] = [isNotNull(metadata.propertyName)]\n\n if (seedUid) {\n whereClauses.push(eq(seeds.uid, seedUid))\n }\n\n if (seedLocalId) {\n whereClauses.push(eq(seeds.localId, seedLocalId))\n }\n\n whereClauses.push(isNotNull(metadata.propertyName))\n\n if (typeof edited !== 'undefined') {\n if (edited) {\n whereClauses.push(isNull(metadata.uid))\n }\n if (!edited) {\n whereClauses.push(isNotNull(metadata.uid))\n }\n }\n\n // const metadataColumns = getTableColumns(metadata)\n\n const metadataLatest = getMetadataLatest({seedLocalId, seedUid})\n\n const propertiesData = await appDb\n .with(metadataLatest)\n .select()\n .from(metadataLatest)\n .where(eq(metadataLatest.rowNum, 1))\n\n return propertiesData.map(data => ({\n ...data,\n localId: data.localId || '',\n uid: data.uid || '',\n propertyName: data.propertyName || '',\n propertyValue: data.propertyValue || '',\n schemaUid: data.schemaUid || '',\n modelType: data.modelType || '',\n seedLocalId: data.seedLocalId || '',\n })) as PropertyData[]\n}\n"],"names":[],"mappings":";;;;;;;;;;AAOO,MAAM,iBAAiB,GAAsB,OAAO,EACzD,WAAW,EACX,OAAO,EACP,MAAM,GACP,KAAI;AACH,IAAA,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE;IAE/B,MAAM,YAAY,GAAU,CAAC,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IAE9D,IAAI,OAAO,EAAE;AACX,QAAA,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;;IAG3C,IAAI,WAAW,EAAE;AACf,QAAA,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;;IAGnD,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;AAEnD,IAAA,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;QACjC,IAAI,MAAM,EAAE;YACV,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;;QAEzC,IAAI,CAAC,MAAM,EAAE;YACX,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;;;;IAM9C,MAAM,cAAc,GAAG,iBAAiB,CAAC,EAAC,WAAW,EAAE,OAAO,EAAC,CAAC;IAEhE,MAAM,cAAc,GAAG,MAAM;SAC1B,IAAI,CAAC,cAAc;AACnB,SAAA,MAAM;SACN,IAAI,CAAC,cAAc;SACnB,KAAK,CAAC,EAAE,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAEtC,OAAO,cAAc,CAAC,GAAG,CAAC,IAAI,KAAK;AACjC,QAAA,GAAG,IAAI;AACP,QAAA,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,EAAE;AAC3B,QAAA,GAAG,EAAE,IAAI,CAAC,GAAG,IAAI,EAAE;AACnB,QAAA,YAAY,EAAE,IAAI,CAAC,YAAY,IAAI,EAAE;AACrC,QAAA,aAAa,EAAE,IAAI,CAAC,aAAa,IAAI,EAAE;AACvC,QAAA,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,EAAE;AAC/B,QAAA,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,EAAE;AAC/B,QAAA,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,EAAE;AACpC,KAAA,CAAC,CAAmB;AACvB;;;;"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { BaseDb } from '../Db/BaseDb.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 { getTableColumns, eq, and } from 'drizzle-orm';
|
|
9
|
+
|
|
10
|
+
const getItemPropertyData = async (props) => {
|
|
11
|
+
const appDb = BaseDb.getAppDb();
|
|
12
|
+
const whereClauses = [];
|
|
13
|
+
const tableColumns = getTableColumns(metadata);
|
|
14
|
+
for (const [propertyName, propertyValue] of Object.entries(props)) {
|
|
15
|
+
if (Object.keys(tableColumns).includes(propertyName)) {
|
|
16
|
+
whereClauses.push(eq(tableColumns[propertyName], propertyValue));
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
const queryRows = await appDb
|
|
20
|
+
.select()
|
|
21
|
+
.from(metadata)
|
|
22
|
+
.where(and(...whereClauses));
|
|
23
|
+
if (!queryRows || queryRows.length === 0) {
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
return queryRows[0];
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
export { getItemPropertyData };
|
|
30
|
+
//# sourceMappingURL=getItemProperty.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getItemProperty.js","sources":["../../../../../src/db/read/getItemProperty.ts"],"sourcesContent":["import { BaseDb } from '@/db/Db/BaseDb'\nimport { metadata, MetadataType } from '@/seedSchema'\nimport { and, eq, getTableColumns } from 'drizzle-orm'\n\ntype GetItemPropertyProps = Partial<MetadataType>\n\ntype GetItemPropertyData = (\n props: GetItemPropertyProps,\n) => Promise<Partial<MetadataType>>\n\nexport const getItemPropertyData: GetItemPropertyData = async (props) => {\n const appDb = BaseDb.getAppDb()\n\n const whereClauses = []\n\n const tableColumns = getTableColumns(metadata)\n\n for (const [propertyName, propertyValue] of Object.entries(props)) {\n if (Object.keys(tableColumns).includes(propertyName)) {\n whereClauses.push(eq(tableColumns[propertyName], propertyValue))\n }\n }\n\n const queryRows = await appDb\n .select()\n .from(metadata)\n .where(and(...whereClauses))\n\n if (!queryRows || queryRows.length === 0) {\n return\n }\n\n return queryRows[0]\n}\n"],"names":[],"mappings":";;;;;;;;;MAUa,mBAAmB,GAAwB,OAAO,KAAK,KAAI;AACtE,IAAA,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE;IAE/B,MAAM,YAAY,GAAG,EAAE;AAEvB,IAAA,MAAM,YAAY,GAAG,eAAe,CAAC,QAAQ,CAAC;AAE9C,IAAA,KAAK,MAAM,CAAC,YAAY,EAAE,aAAa,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;AACjE,QAAA,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE;AACpD,YAAA,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,YAAY,CAAC,EAAE,aAAa,CAAC,CAAC;;;IAIpE,MAAM,SAAS,GAAG,MAAM;AACrB,SAAA,MAAM;SACN,IAAI,CAAC,QAAQ;AACb,SAAA,KAAK,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC,CAAC;IAE9B,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;QACxC;;AAGF,IAAA,OAAO,SAAS,CAAC,CAAC,CAAC;AACrB;;;;"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { eq, or, isNotNull, isNull, sql, and, gt } from 'drizzle-orm';
|
|
2
|
+
import { seeds } from '../../seedSchema/SeedSchema.js';
|
|
3
|
+
import '../../seedSchema/VersionSchema.js';
|
|
4
|
+
import '../../seedSchema/MetadataSchema.js';
|
|
5
|
+
import '../../seedSchema/AppStateSchema.js';
|
|
6
|
+
import '../../seedSchema/ModelSchema.js';
|
|
7
|
+
import '../../seedSchema/ModelUidSchema.js';
|
|
8
|
+
import { BaseDb } from '../Db/BaseDb.js';
|
|
9
|
+
import { getVersionData } from './subqueries/versionData.js';
|
|
10
|
+
|
|
11
|
+
const getItemsData = async ({ modelName, deleted, }) => {
|
|
12
|
+
const appDb = BaseDb.getAppDb();
|
|
13
|
+
const conditions = [];
|
|
14
|
+
if (modelName) {
|
|
15
|
+
conditions.push(eq(seeds.type, modelName.toLowerCase()));
|
|
16
|
+
}
|
|
17
|
+
if (deleted) {
|
|
18
|
+
conditions.push(or(isNotNull(seeds._markedForDeletion), eq(seeds._markedForDeletion, 1)));
|
|
19
|
+
}
|
|
20
|
+
if (!deleted) {
|
|
21
|
+
conditions.push(or(isNull(seeds._markedForDeletion), eq(seeds._markedForDeletion, 0)));
|
|
22
|
+
}
|
|
23
|
+
const versionData = getVersionData();
|
|
24
|
+
let query = appDb
|
|
25
|
+
.with(versionData)
|
|
26
|
+
.select({
|
|
27
|
+
seedLocalId: seeds.localId,
|
|
28
|
+
seedUid: seeds.uid,
|
|
29
|
+
schemaUid: seeds.schemaUid,
|
|
30
|
+
modelName: sql `${modelName}`,
|
|
31
|
+
attestationCreatedAt: seeds.attestationCreatedAt,
|
|
32
|
+
versionsCount: versionData.versionsCount,
|
|
33
|
+
lastVersionPublishedAt: versionData.lastVersionPublishedAt,
|
|
34
|
+
lastLocalUpdateAt: versionData.lastLocalUpdateAt,
|
|
35
|
+
latestVersionUid: versionData.latestVersionUid,
|
|
36
|
+
latestVersionLocalId: versionData.latestVersionLocalId,
|
|
37
|
+
createdAt: seeds.createdAt,
|
|
38
|
+
})
|
|
39
|
+
.from(seeds)
|
|
40
|
+
.leftJoin(versionData, eq(seeds.localId, versionData.seedLocalId))
|
|
41
|
+
.where(and(gt(versionData.versionsCount, 0), ...conditions))
|
|
42
|
+
.orderBy(sql.raw('COALESCE(attestation_created_at, created_at) DESC'))
|
|
43
|
+
.groupBy(seeds.localId);
|
|
44
|
+
const itemsData = (await query);
|
|
45
|
+
return itemsData;
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
export { getItemsData };
|
|
49
|
+
//# sourceMappingURL=getItems.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getItems.js","sources":["../../../../../src/db/read/getItems.ts"],"sourcesContent":["import { ItemData } from '@/types'\nimport { and, eq, gt, isNotNull, isNull, or, SQL, sql } from 'drizzle-orm'\nimport { seeds } from '@/seedSchema'\nimport { BaseDb } from '@/db/Db/BaseDb'\nimport { getVersionData } from './subqueries/versionData'\n\ntype GetItemsDataProps = {\n modelName?: string\n deleted?: boolean\n}\n\ntype GetItemsData = (props: GetItemsDataProps) => Promise<ItemData[]>\n\nexport const getItemsData: GetItemsData = async ({\n modelName,\n deleted,\n}): Promise<ItemData[]> => {\n const appDb = BaseDb.getAppDb()\n\n const conditions: SQL[] = []\n\n if (modelName) {\n conditions.push(eq(seeds.type, modelName.toLowerCase()))\n }\n\n if (deleted) {\n conditions.push(\n or(\n isNotNull(seeds._markedForDeletion),\n eq(seeds._markedForDeletion, 1),\n ) as SQL,\n )\n }\n\n if (!deleted) {\n conditions.push(\n or(\n isNull(seeds._markedForDeletion),\n eq(seeds._markedForDeletion, 0),\n ) as SQL,\n )\n }\n\n const versionData = getVersionData()\n\n let query = appDb\n .with(versionData)\n .select({\n seedLocalId: seeds.localId,\n seedUid: seeds.uid,\n schemaUid: seeds.schemaUid,\n modelName: sql<string>`${modelName}`,\n attestationCreatedAt: seeds.attestationCreatedAt,\n versionsCount: versionData.versionsCount,\n lastVersionPublishedAt: versionData.lastVersionPublishedAt,\n lastLocalUpdateAt: versionData.lastLocalUpdateAt,\n latestVersionUid: versionData.latestVersionUid,\n latestVersionLocalId: versionData.latestVersionLocalId,\n createdAt: seeds.createdAt,\n })\n .from(seeds)\n .leftJoin(versionData, eq(seeds.localId, versionData.seedLocalId))\n .where(and(gt(versionData.versionsCount, 0), ...conditions))\n .orderBy(sql.raw('COALESCE(attestation_created_at, created_at) DESC'))\n .groupBy(seeds.localId)\n\n const itemsData = (await query) as ItemData[]\n\n return itemsData\n}\n"],"names":[],"mappings":";;;;;;;;;;AAaO,MAAM,YAAY,GAAiB,OAAO,EAC/C,SAAS,EACT,OAAO,GACR,KAAyB;AACxB,IAAA,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE;IAE/B,MAAM,UAAU,GAAU,EAAE;IAE5B,IAAI,SAAS,EAAE;AACb,QAAA,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC;;IAG1D,IAAI,OAAO,EAAE;QACX,UAAU,CAAC,IAAI,CACb,EAAE,CACA,SAAS,CAAC,KAAK,CAAC,kBAAkB,CAAC,EACnC,EAAE,CAAC,KAAK,CAAC,kBAAkB,EAAE,CAAC,CAAC,CACzB,CACT;;IAGH,IAAI,CAAC,OAAO,EAAE;QACZ,UAAU,CAAC,IAAI,CACb,EAAE,CACA,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,EAChC,EAAE,CAAC,KAAK,CAAC,kBAAkB,EAAE,CAAC,CAAC,CACzB,CACT;;AAGH,IAAA,MAAM,WAAW,GAAG,cAAc,EAAE;IAEpC,IAAI,KAAK,GAAG;SACT,IAAI,CAAC,WAAW;AAChB,SAAA,MAAM,CAAC;QACN,WAAW,EAAE,KAAK,CAAC,OAAO;QAC1B,OAAO,EAAE,KAAK,CAAC,GAAG;QAClB,SAAS,EAAE,KAAK,CAAC,SAAS;AAC1B,QAAA,SAAS,EAAE,GAAG,CAAQ,CAAA,EAAG,SAAS,CAAE,CAAA;QACpC,oBAAoB,EAAE,KAAK,CAAC,oBAAoB;QAChD,aAAa,EAAE,WAAW,CAAC,aAAa;QACxC,sBAAsB,EAAE,WAAW,CAAC,sBAAsB;QAC1D,iBAAiB,EAAE,WAAW,CAAC,iBAAiB;QAChD,gBAAgB,EAAE,WAAW,CAAC,gBAAgB;QAC9C,oBAAoB,EAAE,WAAW,CAAC,oBAAoB;QACtD,SAAS,EAAE,KAAK,CAAC,SAAS;KAC3B;SACA,IAAI,CAAC,KAAK;AACV,SAAA,QAAQ,CAAC,WAAW,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,WAAW,CAAC,WAAW,CAAC;AAChE,SAAA,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,WAAW,CAAC,aAAa,EAAE,CAAC,CAAC,EAAE,GAAG,UAAU,CAAC;AAC1D,SAAA,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,mDAAmD,CAAC;AACpE,SAAA,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC;AAEzB,IAAA,MAAM,SAAS,IAAI,MAAM,KAAK,CAAe;AAE7C,IAAA,OAAO,SAAS;AAClB;;;;"}
|