@seedprotocol/sdk 0.3.14 → 0.3.15
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/addModel.js +93 -0
- package/dist/addModel.js.map +1 -0
- package/dist/bin.js +8 -5
- package/dist/bin.js.map +1 -1
- package/dist/main.js +1 -0
- package/dist/main.js.map +1 -1
- package/dist/protos/seed.proto +97 -0
- package/dist/rpcServer.js +358 -0
- package/dist/rpcServer.js.map +1 -0
- package/dist/scripts/addModel.d.ts +3 -0
- package/dist/scripts/addModel.d.ts.map +1 -0
- package/dist/scripts/bin.d.ts.map +1 -1
- package/dist/scripts/rpcServer.cursor.d.ts +2 -0
- package/dist/scripts/rpcServer.cursor.d.ts.map +1 -0
- package/dist/scripts/rpcServer.d.ts +3 -0
- package/dist/scripts/rpcServer.d.ts.map +1 -0
- package/dist/scripts/vite.config.d.ts +3 -0
- package/dist/scripts/vite.config.d.ts.map +1 -0
- package/dist/seedSchema/AppStateSchema.ts +2 -2
- package/dist/seedSchema/ConfigSchema.ts +18 -14
- package/dist/seedSchema/MetadataSchema.ts +2 -1
- package/dist/seedSchema/ModelSchema.ts +3 -3
- package/dist/seedSchema/SeedSchema.ts +2 -1
- package/dist/seedSchema/VersionSchema.ts +2 -1
- package/dist/seedSchema/index.ts +1 -0
- package/dist/src/Item/BaseItem.d.ts +1 -1
- package/dist/src/Item/BaseItem.d.ts.map +1 -1
- package/dist/src/Item/BaseItem.js.map +1 -1
- package/dist/src/ItemProperty/BaseItemProperty.d.ts +55 -192
- package/dist/src/ItemProperty/BaseItemProperty.d.ts.map +1 -1
- package/dist/src/ItemProperty/service/actors/hydrateFromDb.d.ts +2 -1
- package/dist/src/ItemProperty/service/actors/hydrateFromDb.d.ts.map +1 -1
- package/dist/src/ItemProperty/service/actors/hydrateFromDb.js +1 -0
- package/dist/src/ItemProperty/service/actors/hydrateFromDb.js.map +1 -1
- package/dist/src/ItemProperty/service/actors/initialize.d.ts +2 -1
- package/dist/src/ItemProperty/service/actors/initialize.d.ts.map +1 -1
- package/dist/src/ItemProperty/service/actors/resolveRelatedValue.d.ts +2 -1
- package/dist/src/ItemProperty/service/actors/resolveRelatedValue.d.ts.map +1 -1
- package/dist/src/ItemProperty/service/actors/resolveRemoteStorage.d.ts +2 -1
- package/dist/src/ItemProperty/service/actors/resolveRemoteStorage.d.ts.map +1 -1
- package/dist/src/ItemProperty/service/actors/saveValueToDb/analyzeInput.d.ts +2 -2
- package/dist/src/ItemProperty/service/actors/saveValueToDb/analyzeInput.d.ts.map +1 -1
- package/dist/src/ItemProperty/service/actors/saveValueToDb/saveImage.d.ts +2 -2
- package/dist/src/ItemProperty/service/actors/saveValueToDb/saveImage.d.ts.map +1 -1
- package/dist/src/ItemProperty/service/actors/saveValueToDb/saveItemStorage.d.ts +2 -2
- package/dist/src/ItemProperty/service/actors/saveValueToDb/saveItemStorage.d.ts.map +1 -1
- package/dist/src/ItemProperty/service/actors/saveValueToDb/saveItemStorage.js +1 -0
- package/dist/src/ItemProperty/service/actors/saveValueToDb/saveItemStorage.js.map +1 -1
- package/dist/src/ItemProperty/service/actors/saveValueToDb/saveRelation.d.ts +2 -2
- package/dist/src/ItemProperty/service/actors/saveValueToDb/saveRelation.d.ts.map +1 -1
- package/dist/src/ItemProperty/service/actors/waitForDb.d.ts +2 -2
- package/dist/src/ItemProperty/service/actors/waitForDb.d.ts.map +1 -1
- package/dist/src/ItemProperty/service/propertyMachine.d.ts +60 -195
- package/dist/src/ItemProperty/service/propertyMachine.d.ts.map +1 -1
- package/dist/src/browser/react/services.js +1 -0
- package/dist/src/browser/react/services.js.map +1 -1
- package/dist/src/client/ClientManager.js +1 -0
- package/dist/src/client/ClientManager.js.map +1 -1
- package/dist/src/client/actors/initialize.d.ts.map +1 -1
- package/dist/src/client/actors/initialize.js +28 -14
- package/dist/src/client/actors/initialize.js.map +1 -1
- package/dist/src/client/actors/saveAppState.js +1 -0
- package/dist/src/client/actors/saveAppState.js.map +1 -1
- package/dist/src/client/index.d.ts +1 -1
- package/dist/src/client/index.d.ts.map +1 -1
- package/dist/src/db/Db/BaseDb.d.ts +1 -0
- package/dist/src/db/Db/BaseDb.d.ts.map +1 -1
- package/dist/src/db/Db/BaseDb.js +3 -0
- package/dist/src/db/Db/BaseDb.js.map +1 -1
- package/dist/src/db/read/getExistingItem.js +1 -0
- package/dist/src/db/read/getExistingItem.js.map +1 -1
- package/dist/src/db/read/getItemData.js +1 -0
- package/dist/src/db/read/getItemData.js.map +1 -1
- package/dist/src/db/read/getItemProperties.js +1 -0
- package/dist/src/db/read/getItemProperties.js.map +1 -1
- package/dist/src/db/read/getItemProperty.js +1 -0
- package/dist/src/db/read/getItemProperty.js.map +1 -1
- package/dist/src/db/read/getItems.js +1 -0
- package/dist/src/db/read/getItems.js.map +1 -1
- package/dist/src/db/read/getMetadata.js +1 -0
- package/dist/src/db/read/getMetadata.js.map +1 -1
- package/dist/src/db/read/getModelSchemas.js +1 -0
- package/dist/src/db/read/getModelSchemas.js.map +1 -1
- package/dist/src/db/read/getModels.js +1 -0
- package/dist/src/db/read/getModels.js.map +1 -1
- package/dist/src/db/read/getPropertyData.js +1 -0
- package/dist/src/db/read/getPropertyData.js.map +1 -1
- package/dist/src/db/read/getRelationValueData.js +1 -0
- package/dist/src/db/read/getRelationValueData.js.map +1 -1
- package/dist/src/db/read/getSeedData.js +1 -0
- package/dist/src/db/read/getSeedData.js.map +1 -1
- package/dist/src/db/read/getStorageTransactionIdForSeedUid.js +1 -0
- package/dist/src/db/read/getStorageTransactionIdForSeedUid.js.map +1 -1
- package/dist/src/db/read/getVersionData.js +1 -0
- package/dist/src/db/read/getVersionData.js.map +1 -1
- package/dist/src/db/read/subqueries/metadataLatest.js +1 -0
- package/dist/src/db/read/subqueries/metadataLatest.js.map +1 -1
- package/dist/src/db/read/subqueries/versionData.js +1 -0
- package/dist/src/db/read/subqueries/versionData.js.map +1 -1
- package/dist/src/db/write/createMetadata.js +1 -0
- package/dist/src/db/write/createMetadata.js.map +1 -1
- package/dist/src/db/write/createSeed.js +1 -0
- package/dist/src/db/write/createSeed.js.map +1 -1
- package/dist/src/db/write/createSeeds.js +1 -0
- package/dist/src/db/write/createSeeds.js.map +1 -1
- package/dist/src/db/write/createVersion.js +1 -0
- package/dist/src/db/write/createVersion.js.map +1 -1
- package/dist/src/db/write/deleteItem.js +1 -0
- package/dist/src/db/write/deleteItem.js.map +1 -1
- package/dist/src/db/write/saveAppState.js +1 -0
- package/dist/src/db/write/saveAppState.js.map +1 -1
- package/dist/src/db/write/saveMetadata.js +1 -0
- package/dist/src/db/write/saveMetadata.js.map +1 -1
- package/dist/src/db/write/updateItemPropertyValue.js +1 -0
- package/dist/src/db/write/updateItemPropertyValue.js.map +1 -1
- package/dist/src/db/write/updateMetadata.js +1 -0
- package/dist/src/db/write/updateMetadata.js.map +1 -1
- package/dist/src/events/files/download.js +1 -0
- package/dist/src/events/files/download.js.map +1 -1
- package/dist/src/events/item/syncDbWithEas.js +1 -0
- package/dist/src/events/item/syncDbWithEas.js.map +1 -1
- package/dist/src/helpers/FileManager/BaseFileManager.d.ts +1 -1
- package/dist/src/helpers/FileManager/BaseFileManager.d.ts.map +1 -1
- package/dist/src/helpers/FileManager/BaseFileManager.js.map +1 -1
- package/dist/src/helpers/db.js +1 -0
- package/dist/src/helpers/db.js.map +1 -1
- package/dist/src/helpers/environment.js +6 -1
- package/dist/src/helpers/environment.js.map +1 -1
- package/dist/src/helpers/index.d.ts.map +1 -1
- package/dist/src/helpers/index.js.map +1 -1
- package/dist/src/interfaces/IItem.d.ts +1 -1
- package/dist/src/interfaces/IItem.d.ts.map +1 -1
- package/dist/src/node/Item/Item.js +11 -0
- package/dist/src/node/Item/Item.js.map +1 -0
- package/dist/src/node/ItemProperty/ItemProperty.js +10 -0
- package/dist/src/node/ItemProperty/ItemProperty.js.map +1 -0
- package/dist/src/node/codegen/drizzle.js +36 -2
- package/dist/src/node/codegen/drizzle.js.map +1 -1
- package/dist/src/node/db/Db.d.ts.map +1 -1
- package/dist/src/node/db/Db.js +64 -0
- package/dist/src/node/db/Db.js.map +1 -0
- package/dist/src/node/helpers/FileManager.d.ts.map +1 -1
- package/dist/src/node/helpers/FileManager.js +50 -0
- package/dist/src/node/helpers/FileManager.js.map +1 -0
- package/dist/src/seedSchema/AppStateSchema.d.ts +2 -1
- package/dist/src/seedSchema/AppStateSchema.d.ts.map +1 -1
- package/dist/src/seedSchema/AppStateSchema.js.map +1 -1
- package/dist/src/seedSchema/ConfigSchema.d.ts +2 -0
- package/dist/src/seedSchema/ConfigSchema.d.ts.map +1 -1
- package/dist/src/seedSchema/ConfigSchema.js +5 -8
- package/dist/src/seedSchema/ConfigSchema.js.map +1 -1
- package/dist/src/seedSchema/MetadataSchema.d.ts +2 -1
- package/dist/src/seedSchema/MetadataSchema.d.ts.map +1 -1
- package/dist/src/seedSchema/MetadataSchema.js.map +1 -1
- package/dist/src/seedSchema/ModelSchema.d.ts +3 -2
- package/dist/src/seedSchema/ModelSchema.d.ts.map +1 -1
- package/dist/src/seedSchema/ModelSchema.js.map +1 -1
- package/dist/src/seedSchema/SeedSchema.d.ts +2 -1
- package/dist/src/seedSchema/SeedSchema.d.ts.map +1 -1
- package/dist/src/seedSchema/SeedSchema.js.map +1 -1
- package/dist/src/seedSchema/VersionSchema.d.ts +2 -1
- package/dist/src/seedSchema/VersionSchema.d.ts.map +1 -1
- package/dist/src/seedSchema/VersionSchema.js.map +1 -1
- package/dist/src/seedSchema/index.d.ts +1 -0
- package/dist/src/seedSchema/index.d.ts.map +1 -1
- package/dist/src/services/allItems/actors/fetchRelatedItems.js +1 -0
- package/dist/src/services/allItems/actors/fetchRelatedItems.js.map +1 -1
- package/dist/src/services/allItems/actors/initialize.js +1 -0
- package/dist/src/services/allItems/actors/initialize.js.map +1 -1
- package/dist/src/services/global/actors/addModelsToDb.js +1 -0
- package/dist/src/services/global/actors/addModelsToDb.js.map +1 -1
- package/dist/src/services/global/actors/initialize.js +1 -0
- package/dist/src/services/global/actors/initialize.js.map +1 -1
- package/dist/src/services/internal/actors/saveConfig.js +1 -0
- package/dist/src/services/internal/actors/saveConfig.js.map +1 -1
- package/dist/src/services/publish/actors/preparePublishRequestData.js +1 -0
- package/dist/src/services/publish/actors/preparePublishRequestData.js.map +1 -1
- package/dist/src/types/item.d.ts +9 -8
- package/dist/src/types/item.d.ts.map +1 -1
- package/package.json +8 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"initialize.js","sources":["../../../../../../src/services/allItems/actors/initialize.ts"],"sourcesContent":["import { EventObject, fromCallback } from 'xstate'\nimport { GET_SCHEMAS } from '@/Item/queries'\nimport pluralize from 'pluralize'\nimport { BaseEasClient } from '@/helpers/EasClient/BaseEasClient'\nimport { BaseQueryClient } from '@/helpers/QueryClient/BaseQueryClient'\nimport { toSnakeCase } from '@/helpers'\nimport {\n models as modelsTable,\n modelUids,\n properties,\n} from '@/seedSchema'\nimport { eq } from 'drizzle-orm'\nimport { SchemaWhereInput } from '@/graphql/gql/graphql'\nimport { INTERNAL_DATA_TYPES } from '@/helpers/constants'\nimport { getAddressesFromDb } from '@/helpers/db'\nimport { eventEmitter } from '@/eventBus'\nimport { BaseDb } from '@/db/Db/BaseDb'\n\nimport { AllItemsMachineContext, FromCallbackInput } from '@/types'\n\n\ntype Times = {\n initialize?: {\n start: number | null\n end: number | null\n }\n fetchDbData?: {\n start: number | null\n end: number | null\n }\n fetchSeeds?: {\n start: number | null\n end: number | null\n }\n fetchVersions?: {\n start: number | null\n end: number | null\n }\n fetchRelatedItems?: {\n start: number | null\n end: number | null\n }\n processItems?: {\n start: number | null\n end: number | null\n }\n}\n\ntype InternalDataType = keyof typeof INTERNAL_DATA_TYPES;\n\nexport const initialize = fromCallback<\n EventObject,\n FromCallbackInput<AllItemsMachineContext>\n>(({ sendBack, input: { context } }) => {\n const { modelName, modelAddedToDb, ModelClass, times } = context\n\n const newTimes: Times = {\n initialize: {\n start: Date.now(),\n end: null,\n },\n }\n\n let modelNameLowercase: string | undefined\n let modelNamePlural: string | undefined\n let queryVariables: Record<string, unknown> | undefined\n let appDb\n\n const _initialize = async () => {\n appDb = BaseDb.getAppDb()\n\n // const rows = await getItemsDataFromDb(modelName)\n //\n // if (rows && rows.length > 0) {\n // for (const itemData of rows) {\n // const {\n // versionLocalId,\n // versionUid,\n // createdAt,\n // seedLocalId,\n // seedUid,\n // attestationCreatedAt,\n // } = itemData\n //\n // eventEmitter.emit('item.create.request', {\n // itemData: {\n // versionLocalId,\n // versionUid,\n // createdAt,\n // seedLocalId,\n // seedUid,\n // attestationCreatedAt,\n // },\n // ModelClass,\n // })\n // }\n // }\n\n modelNameLowercase = modelName.toLowerCase()\n modelNamePlural = pluralize(modelNameLowercase!)\n\n const queryClient = BaseQueryClient.getQueryClient()\n const easClient = BaseEasClient.getEasClient()\n\n const modelSchemas = await queryClient.fetchQuery({\n queryKey: [`getSchemas${modelName}`],\n queryFn: async () =>\n easClient.request(GET_SCHEMAS, {\n where: {\n schema: {\n equals: `bytes32 ${toSnakeCase(modelName)}`,\n },\n },\n }),\n })\n\n if (\n !modelSchemas ||\n !modelSchemas.schemas ||\n modelSchemas.schemas.length === 0\n ) {\n throw new Error(`No schema found for ${modelName}`)\n }\n\n const modelSchema = modelSchemas.schemas[0]\n\n if (!modelSchema.id) {\n throw new Error(\n `No schema ID found for schema ${JSON.stringify(modelSchema)}`,\n )\n }\n\n const foundModels = await appDb\n .select({\n id: modelsTable.id,\n name: modelsTable.name,\n uid: modelUids.uid,\n })\n .from(modelsTable)\n .leftJoin(modelUids, eq(modelsTable.id, modelUids.modelId))\n .where(eq(modelsTable.name, modelName))\n .limit(1)\n\n const foundModel = foundModels[0]\n\n if (!foundModel) {\n sendBack({ type: 'modelNotFound', modelName })\n return\n }\n\n await appDb\n .insert(modelUids)\n .values({\n modelId: foundModel.id,\n uid: modelSchema.id,\n })\n .onConflictDoNothing()\n\n const addresses = await getAddressesFromDb()\n\n queryVariables = {\n where: {\n attester: {\n in: addresses,\n },\n schemaId: {\n equals: modelSchema.id,\n },\n decodedDataJson: {\n contains: modelSchema.id,\n },\n },\n }\n }\n\n const initializeHandler = () => {\n _initialize().then(() => {\n sendBack({\n type: 'initializeSuccess',\n modelName,\n modelNameLowercase,\n modelNamePlural,\n queryVariables,\n })\n newTimes!.initialize!.end = Date.now()\n sendBack({ type: 'updateTimes', times: newTimes })\n })\n }\n\n if (modelAddedToDb) {\n initializeHandler()\n }\n\n const dbReadyHandler = (event) => {\n initializeHandler()\n }\n\n eventEmitter.addListener('allDbsLoaded', dbReadyHandler)\n\n return () => {\n eventEmitter.removeListener('allDbsLoaded', dbReadyHandler)\n }\n})\n"],"names":["modelsTable"],"mappings":"
|
|
1
|
+
{"version":3,"file":"initialize.js","sources":["../../../../../../src/services/allItems/actors/initialize.ts"],"sourcesContent":["import { EventObject, fromCallback } from 'xstate'\nimport { GET_SCHEMAS } from '@/Item/queries'\nimport pluralize from 'pluralize'\nimport { BaseEasClient } from '@/helpers/EasClient/BaseEasClient'\nimport { BaseQueryClient } from '@/helpers/QueryClient/BaseQueryClient'\nimport { toSnakeCase } from '@/helpers'\nimport {\n models as modelsTable,\n modelUids,\n properties,\n} from '@/seedSchema'\nimport { eq } from 'drizzle-orm'\nimport { SchemaWhereInput } from '@/graphql/gql/graphql'\nimport { INTERNAL_DATA_TYPES } from '@/helpers/constants'\nimport { getAddressesFromDb } from '@/helpers/db'\nimport { eventEmitter } from '@/eventBus'\nimport { BaseDb } from '@/db/Db/BaseDb'\n\nimport { AllItemsMachineContext, FromCallbackInput } from '@/types'\n\n\ntype Times = {\n initialize?: {\n start: number | null\n end: number | null\n }\n fetchDbData?: {\n start: number | null\n end: number | null\n }\n fetchSeeds?: {\n start: number | null\n end: number | null\n }\n fetchVersions?: {\n start: number | null\n end: number | null\n }\n fetchRelatedItems?: {\n start: number | null\n end: number | null\n }\n processItems?: {\n start: number | null\n end: number | null\n }\n}\n\ntype InternalDataType = keyof typeof INTERNAL_DATA_TYPES;\n\nexport const initialize = fromCallback<\n EventObject,\n FromCallbackInput<AllItemsMachineContext>\n>(({ sendBack, input: { context } }) => {\n const { modelName, modelAddedToDb, ModelClass, times } = context\n\n const newTimes: Times = {\n initialize: {\n start: Date.now(),\n end: null,\n },\n }\n\n let modelNameLowercase: string | undefined\n let modelNamePlural: string | undefined\n let queryVariables: Record<string, unknown> | undefined\n let appDb\n\n const _initialize = async () => {\n appDb = BaseDb.getAppDb()\n\n // const rows = await getItemsDataFromDb(modelName)\n //\n // if (rows && rows.length > 0) {\n // for (const itemData of rows) {\n // const {\n // versionLocalId,\n // versionUid,\n // createdAt,\n // seedLocalId,\n // seedUid,\n // attestationCreatedAt,\n // } = itemData\n //\n // eventEmitter.emit('item.create.request', {\n // itemData: {\n // versionLocalId,\n // versionUid,\n // createdAt,\n // seedLocalId,\n // seedUid,\n // attestationCreatedAt,\n // },\n // ModelClass,\n // })\n // }\n // }\n\n modelNameLowercase = modelName.toLowerCase()\n modelNamePlural = pluralize(modelNameLowercase!)\n\n const queryClient = BaseQueryClient.getQueryClient()\n const easClient = BaseEasClient.getEasClient()\n\n const modelSchemas = await queryClient.fetchQuery({\n queryKey: [`getSchemas${modelName}`],\n queryFn: async () =>\n easClient.request(GET_SCHEMAS, {\n where: {\n schema: {\n equals: `bytes32 ${toSnakeCase(modelName)}`,\n },\n },\n }),\n })\n\n if (\n !modelSchemas ||\n !modelSchemas.schemas ||\n modelSchemas.schemas.length === 0\n ) {\n throw new Error(`No schema found for ${modelName}`)\n }\n\n const modelSchema = modelSchemas.schemas[0]\n\n if (!modelSchema.id) {\n throw new Error(\n `No schema ID found for schema ${JSON.stringify(modelSchema)}`,\n )\n }\n\n const foundModels = await appDb\n .select({\n id: modelsTable.id,\n name: modelsTable.name,\n uid: modelUids.uid,\n })\n .from(modelsTable)\n .leftJoin(modelUids, eq(modelsTable.id, modelUids.modelId))\n .where(eq(modelsTable.name, modelName))\n .limit(1)\n\n const foundModel = foundModels[0]\n\n if (!foundModel) {\n sendBack({ type: 'modelNotFound', modelName })\n return\n }\n\n await appDb\n .insert(modelUids)\n .values({\n modelId: foundModel.id,\n uid: modelSchema.id,\n })\n .onConflictDoNothing()\n\n const addresses = await getAddressesFromDb()\n\n queryVariables = {\n where: {\n attester: {\n in: addresses,\n },\n schemaId: {\n equals: modelSchema.id,\n },\n decodedDataJson: {\n contains: modelSchema.id,\n },\n },\n }\n }\n\n const initializeHandler = () => {\n _initialize().then(() => {\n sendBack({\n type: 'initializeSuccess',\n modelName,\n modelNameLowercase,\n modelNamePlural,\n queryVariables,\n })\n newTimes!.initialize!.end = Date.now()\n sendBack({ type: 'updateTimes', times: newTimes })\n })\n }\n\n if (modelAddedToDb) {\n initializeHandler()\n }\n\n const dbReadyHandler = (event) => {\n initializeHandler()\n }\n\n eventEmitter.addListener('allDbsLoaded', dbReadyHandler)\n\n return () => {\n eventEmitter.removeListener('allDbsLoaded', dbReadyHandler)\n }\n})\n"],"names":["modelsTable"],"mappings":";;;;;;;;;;;;;;;;;;AAkDa,MAAA,UAAU,GAAG,YAAY,CAGpC,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,KAAI;IACrC,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,OAAO;AAEhE,IAAA,MAAM,QAAQ,GAAU;AACtB,QAAA,UAAU,EAAE;AACV,YAAA,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE;AACjB,YAAA,GAAG,EAAE,IAAI;AACV,SAAA;KACF;AAED,IAAA,IAAI,kBAAsC;AAC1C,IAAA,IAAI,eAAmC;AACvC,IAAA,IAAI,cAAmD;AACvD,IAAA,IAAI,KAAK;AAET,IAAA,MAAM,WAAW,GAAG,YAAW;AAC7B,QAAA,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6BzB,QAAA,kBAAkB,GAAG,SAAS,CAAC,WAAW,EAAE;AAC5C,QAAA,eAAe,GAAG,SAAS,CAAC,kBAAmB,CAAC;AAEhD,QAAA,MAAM,WAAW,GAAG,eAAe,CAAC,cAAc,EAAE;AACpD,QAAA,MAAM,SAAS,GAAG,aAAa,CAAC,YAAY,EAAE;AAE9C,QAAA,MAAM,YAAY,GAAG,MAAM,WAAW,CAAC,UAAU,CAAC;AAChD,YAAA,QAAQ,EAAE,CAAC,CAAa,UAAA,EAAA,SAAS,EAAE,CAAC;YACpC,OAAO,EAAE,YACP,SAAS,CAAC,OAAO,CAAC,WAAW,EAAE;AAC7B,gBAAA,KAAK,EAAE;AACL,oBAAA,MAAM,EAAE;AACN,wBAAA,MAAM,EAAE,CAAW,QAAA,EAAA,WAAW,CAAC,SAAS,CAAC,CAAE,CAAA;AAC5C,qBAAA;AACF,iBAAA;aACF,CAAC;AACL,SAAA,CAAC;AAEF,QAAA,IACE,CAAC,YAAY;YACb,CAAC,YAAY,CAAC,OAAO;AACrB,YAAA,YAAY,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EACjC;AACA,YAAA,MAAM,IAAI,KAAK,CAAC,uBAAuB,SAAS,CAAA,CAAE,CAAC;;QAGrD,MAAM,WAAW,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;AAE3C,QAAA,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE;AACnB,YAAA,MAAM,IAAI,KAAK,CACb,CAAA,8BAAA,EAAiC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAE,CAAA,CAC/D;;QAGH,MAAM,WAAW,GAAG,MAAM;AACvB,aAAA,MAAM,CAAC;YACN,EAAE,EAAEA,MAAW,CAAC,EAAE;YAClB,IAAI,EAAEA,MAAW,CAAC,IAAI;YACtB,GAAG,EAAE,SAAS,CAAC,GAAG;SACnB;aACA,IAAI,CAACA,MAAW;AAChB,aAAA,QAAQ,CAAC,SAAS,EAAE,EAAE,CAACA,MAAW,CAAC,EAAE,EAAE,SAAS,CAAC,OAAO,CAAC;aACzD,KAAK,CAAC,EAAE,CAACA,MAAW,CAAC,IAAI,EAAE,SAAS,CAAC;aACrC,KAAK,CAAC,CAAC,CAAC;AAEX,QAAA,MAAM,UAAU,GAAG,WAAW,CAAC,CAAC,CAAC;QAEjC,IAAI,CAAC,UAAU,EAAE;YACf,QAAQ,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,SAAS,EAAE,CAAC;YAC9C;;AAGF,QAAA,MAAM;aACH,MAAM,CAAC,SAAS;AAChB,aAAA,MAAM,CAAC;YACN,OAAO,EAAE,UAAU,CAAC,EAAE;YACtB,GAAG,EAAE,WAAW,CAAC,EAAE;SACpB;AACA,aAAA,mBAAmB,EAAE;AAExB,QAAA,MAAM,SAAS,GAAG,MAAM,kBAAkB,EAAE;AAE5C,QAAA,cAAc,GAAG;AACf,YAAA,KAAK,EAAE;AACL,gBAAA,QAAQ,EAAE;AACR,oBAAA,EAAE,EAAE,SAAS;AACd,iBAAA;AACD,gBAAA,QAAQ,EAAE;oBACR,MAAM,EAAE,WAAW,CAAC,EAAE;AACvB,iBAAA;AACD,gBAAA,eAAe,EAAE;oBACf,QAAQ,EAAE,WAAW,CAAC,EAAE;AACzB,iBAAA;AACF,aAAA;SACF;AACH,KAAC;IAED,MAAM,iBAAiB,GAAG,MAAK;AAC7B,QAAA,WAAW,EAAE,CAAC,IAAI,CAAC,MAAK;AACtB,YAAA,QAAQ,CAAC;AACP,gBAAA,IAAI,EAAE,mBAAmB;gBACzB,SAAS;gBACT,kBAAkB;gBAClB,eAAe;gBACf,cAAc;AACf,aAAA,CAAC;YACF,QAAS,CAAC,UAAW,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE;YACtC,QAAQ,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;AACpD,SAAC,CAAC;AACJ,KAAC;IAED,IAAI,cAAc,EAAE;AAClB,QAAA,iBAAiB,EAAE;;AAGrB,IAAA,MAAM,cAAc,GAAG,CAAC,KAAK,KAAI;AAC/B,QAAA,iBAAiB,EAAE;AACrB,KAAC;AAED,IAAA,YAAY,CAAC,WAAW,CAAC,cAAc,EAAE,cAAc,CAAC;AAExD,IAAA,OAAO,MAAK;AACV,QAAA,YAAY,CAAC,cAAc,CAAC,cAAc,EAAE,cAAc,CAAC;AAC7D,KAAC;AACH,CAAC;;;;"}
|
|
@@ -5,6 +5,7 @@ import '../../../seedSchema/MetadataSchema.js';
|
|
|
5
5
|
import '../../../seedSchema/AppStateSchema.js';
|
|
6
6
|
import { models } from '../../../seedSchema/ModelSchema.js';
|
|
7
7
|
import { modelUids } from '../../../seedSchema/ModelUidSchema.js';
|
|
8
|
+
import '../../../seedSchema/ConfigSchema.js';
|
|
8
9
|
import { eq } from 'drizzle-orm';
|
|
9
10
|
import { toSnakeCase } from '../../../helpers/index.js';
|
|
10
11
|
import { BaseDb } from '../../../db/Db/BaseDb.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"addModelsToDb.js","sources":["../../../../../../src/services/global/actors/addModelsToDb.ts"],"sourcesContent":["import { EventObject, fromCallback } from 'xstate'\nimport { models as modelsTable, modelUids } from '@/seedSchema'\nimport { eq } from 'drizzle-orm'\nimport { toSnakeCase, BaseEasClient, BaseQueryClient } from '@/helpers'\nimport { BaseDb } from '@/db/Db/BaseDb'\nimport { GLOBAL_ADDING_MODELS_TO_DB_SUCCESS } from '@/services/internal/constants'\nimport { eventEmitter } from '@/eventBus'\nimport { FromCallbackInput, GlobalMachineContext } from '@/types'\nimport debug from 'debug'\nimport { GET_SCHEMAS } from '@/Item/queries'\n\nconst logger = debug('seedSdk:services:global:actors:addModelsToDb')\n\nexport const addModelsToDb = fromCallback<\n EventObject,\n FromCallbackInput<GlobalMachineContext>\n>(({ sendBack, input: { context } }) => {\n const { models } = context\n\n const _addModelsToDb = async () => {\n const appDb = BaseDb.getAppDb()\n\n if (!models) {\n return\n }\n\n const { models: SeedModels } = await import(\n '@/db/configs/seed.schema.config'\n )\n\n const allModels = {\n ...SeedModels,\n ...models,\n }\n\n let hasModelsInDb = false\n const schemaDefsByModelName = new Map<\n string,\n {\n dbId: number\n schemaDef: string\n }\n >()\n\n for (const [modelName, _] of Object.entries(allModels)) {\n logger(\n '[helpers/db] [addModelsToInternalDb] starting modelName:',\n modelName,\n )\n\n let foundModel\n\n const foundModelsQuery = await appDb\n .select()\n .from(modelsTable)\n .where(eq(modelsTable.name, modelName))\n\n if (!foundModelsQuery || foundModelsQuery.length === 0) {\n await appDb.insert(modelsTable).values({\n name: modelName,\n })\n\n logger('[global/actors] [addModelsToDb] inserted model:', modelName)\n const foundModels = await appDb\n .select({\n id: modelsTable.id,\n name: modelsTable.name,\n uid: modelUids.uid,\n })\n .from(modelsTable)\n .leftJoin(modelUids, eq(modelsTable.id, modelUids.modelId))\n .where(eq(modelsTable.name, modelName))\n .limit(1)\n\n foundModel = foundModels[0]\n }\n\n if (foundModelsQuery && foundModelsQuery.length > 0) {\n foundModel = foundModelsQuery[0]\n }\n\n if (!foundModel) {\n hasModelsInDb = false\n break\n }\n\n schemaDefsByModelName.set(modelName, {\n dbId: foundModel.id,\n schemaDef: `bytes32 ${toSnakeCase(modelName)}`,\n })\n }\n\n if (!hasModelsInDb) {\n return false\n }\n\n const schemaDefs = Array.from(schemaDefsByModelName.values()).map(\n ({ schemaDef }) => schemaDef,\n )\n\n const queryClient = BaseQueryClient.getQueryClient()\n const easClient = BaseEasClient.getEasClient()\n\n const { schemas } = await queryClient.fetchQuery({\n queryKey: [`getSchemasVersion`],\n queryFn: async () =>\n easClient.request(GET_SCHEMAS, {\n where: {\n schema: {\n in: schemaDefs,\n },\n },\n }),\n })\n\n if (!schemas || schemas.length === 0) {\n throw new Error(`No schemas found`)\n }\n\n for (const schema of schemas) {\n const modelId = Array.from(schemaDefsByModelName.values()).find(\n ({ schemaDef }) => schemaDef === schema.schema,\n )?.dbId\n\n if (!modelId) {\n throw new Error(`No modelId found for schema ${schema.schema}`)\n }\n\n await appDb\n .insert(modelUids)\n .values({\n modelId,\n uid: schema.id,\n })\n .onConflictDoNothing()\n }\n }\n\n _addModelsToDb().then((hasModelsInDb) => {\n sendBack({ type: GLOBAL_ADDING_MODELS_TO_DB_SUCCESS })\n if (hasModelsInDb) {\n }\n for (const [modelName, model] of Object.entries(models)) {\n const service = context[`${modelName}Service`]\n service.send({ type: 'modelsFound' })\n }\n eventEmitter.emit('syncDbWithEas')\n return\n })\n\n return () => { }\n})\n"],"names":["models","modelsTable"],"mappings":"
|
|
1
|
+
{"version":3,"file":"addModelsToDb.js","sources":["../../../../../../src/services/global/actors/addModelsToDb.ts"],"sourcesContent":["import { EventObject, fromCallback } from 'xstate'\nimport { models as modelsTable, modelUids } from '@/seedSchema'\nimport { eq } from 'drizzle-orm'\nimport { toSnakeCase, BaseEasClient, BaseQueryClient } from '@/helpers'\nimport { BaseDb } from '@/db/Db/BaseDb'\nimport { GLOBAL_ADDING_MODELS_TO_DB_SUCCESS } from '@/services/internal/constants'\nimport { eventEmitter } from '@/eventBus'\nimport { FromCallbackInput, GlobalMachineContext } from '@/types'\nimport debug from 'debug'\nimport { GET_SCHEMAS } from '@/Item/queries'\n\nconst logger = debug('seedSdk:services:global:actors:addModelsToDb')\n\nexport const addModelsToDb = fromCallback<\n EventObject,\n FromCallbackInput<GlobalMachineContext>\n>(({ sendBack, input: { context } }) => {\n const { models } = context\n\n const _addModelsToDb = async () => {\n const appDb = BaseDb.getAppDb()\n\n if (!models) {\n return\n }\n\n const { models: SeedModels } = await import(\n '@/db/configs/seed.schema.config'\n )\n\n const allModels = {\n ...SeedModels,\n ...models,\n }\n\n let hasModelsInDb = false\n const schemaDefsByModelName = new Map<\n string,\n {\n dbId: number\n schemaDef: string\n }\n >()\n\n for (const [modelName, _] of Object.entries(allModels)) {\n logger(\n '[helpers/db] [addModelsToInternalDb] starting modelName:',\n modelName,\n )\n\n let foundModel\n\n const foundModelsQuery = await appDb\n .select()\n .from(modelsTable)\n .where(eq(modelsTable.name, modelName))\n\n if (!foundModelsQuery || foundModelsQuery.length === 0) {\n await appDb.insert(modelsTable).values({\n name: modelName,\n })\n\n logger('[global/actors] [addModelsToDb] inserted model:', modelName)\n const foundModels = await appDb\n .select({\n id: modelsTable.id,\n name: modelsTable.name,\n uid: modelUids.uid,\n })\n .from(modelsTable)\n .leftJoin(modelUids, eq(modelsTable.id, modelUids.modelId))\n .where(eq(modelsTable.name, modelName))\n .limit(1)\n\n foundModel = foundModels[0]\n }\n\n if (foundModelsQuery && foundModelsQuery.length > 0) {\n foundModel = foundModelsQuery[0]\n }\n\n if (!foundModel) {\n hasModelsInDb = false\n break\n }\n\n schemaDefsByModelName.set(modelName, {\n dbId: foundModel.id,\n schemaDef: `bytes32 ${toSnakeCase(modelName)}`,\n })\n }\n\n if (!hasModelsInDb) {\n return false\n }\n\n const schemaDefs = Array.from(schemaDefsByModelName.values()).map(\n ({ schemaDef }) => schemaDef,\n )\n\n const queryClient = BaseQueryClient.getQueryClient()\n const easClient = BaseEasClient.getEasClient()\n\n const { schemas } = await queryClient.fetchQuery({\n queryKey: [`getSchemasVersion`],\n queryFn: async () =>\n easClient.request(GET_SCHEMAS, {\n where: {\n schema: {\n in: schemaDefs,\n },\n },\n }),\n })\n\n if (!schemas || schemas.length === 0) {\n throw new Error(`No schemas found`)\n }\n\n for (const schema of schemas) {\n const modelId = Array.from(schemaDefsByModelName.values()).find(\n ({ schemaDef }) => schemaDef === schema.schema,\n )?.dbId\n\n if (!modelId) {\n throw new Error(`No modelId found for schema ${schema.schema}`)\n }\n\n await appDb\n .insert(modelUids)\n .values({\n modelId,\n uid: schema.id,\n })\n .onConflictDoNothing()\n }\n }\n\n _addModelsToDb().then((hasModelsInDb) => {\n sendBack({ type: GLOBAL_ADDING_MODELS_TO_DB_SUCCESS })\n if (hasModelsInDb) {\n }\n for (const [modelName, model] of Object.entries(models)) {\n const service = context[`${modelName}Service`]\n service.send({ type: 'modelsFound' })\n }\n eventEmitter.emit('syncDbWithEas')\n return\n })\n\n return () => { }\n})\n"],"names":["models","modelsTable"],"mappings":"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"}
|
|
@@ -9,6 +9,7 @@ import '../../../seedSchema/MetadataSchema.js';
|
|
|
9
9
|
import { appState } from '../../../seedSchema/AppStateSchema.js';
|
|
10
10
|
import '../../../seedSchema/ModelSchema.js';
|
|
11
11
|
import '../../../seedSchema/ModelUidSchema.js';
|
|
12
|
+
import '../../../seedSchema/ConfigSchema.js';
|
|
12
13
|
import { like } from 'drizzle-orm';
|
|
13
14
|
import { fetchSchemaUids } from '../../../stores/eas.js';
|
|
14
15
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"initialize.js","sources":["../../../../../../src/services/global/actors/initialize.ts"],"sourcesContent":["import { EventObject, fromCallback, Subscription, waitFor } from 'xstate'\nimport { getEnvironment } from '@/helpers/environment'\nimport {\n GLOBAL_INITIALIZING_CREATE_ALL_ITEMS_SERVICES,\n GLOBAL_INITIALIZING_INTERNAL_SERVICE_READY,\n GLOBAL_INITIALIZING_SEND_CONFIG,\n} from '@/services/internal/constants'\nimport debug from 'debug'\nimport { FromCallbackInput, GlobalMachineContext } from '@/types'\nimport { BaseDb } from '@/db/Db/BaseDb'\nimport { appState } from '@/seedSchema'\nimport { like } from 'drizzle-orm'\nimport { fetchSchemaUids } from '@/stores/eas'\n\nconst logger = debug('seedSdk:services:global:actors:initialize')\n\nexport const initialize = fromCallback<\n EventObject,\n FromCallbackInput<GlobalMachineContext, EventObject>\n>(({ sendBack, input: { event, context } }) => {\n const { internalService, models, endpoints, arweaveDomain, addresses, } = context\n\n if (!internalService) {\n throw new Error('internalService is required')\n }\n\n if (!models) {\n throw new Error('models is required')\n }\n\n const environment = getEnvironment()\n let easSubscription: Subscription | undefined\n\n const _initInternal = async (): Promise<void> => {\n internalService.send({\n type: 'init',\n endpoints,\n addresses,\n arweaveDomain,\n })\n await waitFor(internalService, (snapshot) => {\n logger('snapshot.value:', snapshot.value)\n return snapshot.value === 'ready'\n })\n logger('[sdk] [internal] sending init')\n }\n\n const _initAllItemsServices = async (): Promise<void> => {\n const appDb = BaseDb.getAppDb()\n\n const rows = await appDb\n .select()\n .from(appState)\n .where(like(appState.key, 'snapshot__%'))\n\n const payloadObj: {\n create: Record<string, any>,\n restore: Record<string, any>,\n } = {\n create: {},\n restore: {},\n }\n\n const modelNamesRestored: string[] = []\n\n if (rows && rows.length > 0) {\n for (const row of rows) {\n const modelName = row.key.replace('snapshot__', '')\n payloadObj.restore[modelName] = JSON.parse(row.value)\n modelNamesRestored.push(modelName)\n }\n }\n for (const [modelName, ModelClass] of Object.entries(models)) {\n if (!modelNamesRestored.includes(modelName)) {\n payloadObj.create[modelName] = ModelClass\n }\n }\n sendBack({\n type: GLOBAL_INITIALIZING_CREATE_ALL_ITEMS_SERVICES,\n ...payloadObj,\n })\n }\n\n const _initEas = async (): Promise<void> => {\n await fetchSchemaUids()\n }\n\n _initInternal()\n .then(() => {\n return _initAllItemsServices()\n })\n .then(() => {\n return _initEas()\n })\n .then(() => {\n logger('[global/actors] Internal initialized')\n sendBack({ type: GLOBAL_INITIALIZING_INTERNAL_SERVICE_READY })\n })\n\n\n sendBack({ type: GLOBAL_INITIALIZING_SEND_CONFIG, environment })\n\n return () => {\n easSubscription?.unsubscribe()\n }\n})\n"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"initialize.js","sources":["../../../../../../src/services/global/actors/initialize.ts"],"sourcesContent":["import { EventObject, fromCallback, Subscription, waitFor } from 'xstate'\nimport { getEnvironment } from '@/helpers/environment'\nimport {\n GLOBAL_INITIALIZING_CREATE_ALL_ITEMS_SERVICES,\n GLOBAL_INITIALIZING_INTERNAL_SERVICE_READY,\n GLOBAL_INITIALIZING_SEND_CONFIG,\n} from '@/services/internal/constants'\nimport debug from 'debug'\nimport { FromCallbackInput, GlobalMachineContext } from '@/types'\nimport { BaseDb } from '@/db/Db/BaseDb'\nimport { appState } from '@/seedSchema'\nimport { like } from 'drizzle-orm'\nimport { fetchSchemaUids } from '@/stores/eas'\n\nconst logger = debug('seedSdk:services:global:actors:initialize')\n\nexport const initialize = fromCallback<\n EventObject,\n FromCallbackInput<GlobalMachineContext, EventObject>\n>(({ sendBack, input: { event, context } }) => {\n const { internalService, models, endpoints, arweaveDomain, addresses, } = context\n\n if (!internalService) {\n throw new Error('internalService is required')\n }\n\n if (!models) {\n throw new Error('models is required')\n }\n\n const environment = getEnvironment()\n let easSubscription: Subscription | undefined\n\n const _initInternal = async (): Promise<void> => {\n internalService.send({\n type: 'init',\n endpoints,\n addresses,\n arweaveDomain,\n })\n await waitFor(internalService, (snapshot) => {\n logger('snapshot.value:', snapshot.value)\n return snapshot.value === 'ready'\n })\n logger('[sdk] [internal] sending init')\n }\n\n const _initAllItemsServices = async (): Promise<void> => {\n const appDb = BaseDb.getAppDb()\n\n const rows = await appDb\n .select()\n .from(appState)\n .where(like(appState.key, 'snapshot__%'))\n\n const payloadObj: {\n create: Record<string, any>,\n restore: Record<string, any>,\n } = {\n create: {},\n restore: {},\n }\n\n const modelNamesRestored: string[] = []\n\n if (rows && rows.length > 0) {\n for (const row of rows) {\n const modelName = row.key.replace('snapshot__', '')\n payloadObj.restore[modelName] = JSON.parse(row.value)\n modelNamesRestored.push(modelName)\n }\n }\n for (const [modelName, ModelClass] of Object.entries(models)) {\n if (!modelNamesRestored.includes(modelName)) {\n payloadObj.create[modelName] = ModelClass\n }\n }\n sendBack({\n type: GLOBAL_INITIALIZING_CREATE_ALL_ITEMS_SERVICES,\n ...payloadObj,\n })\n }\n\n const _initEas = async (): Promise<void> => {\n await fetchSchemaUids()\n }\n\n _initInternal()\n .then(() => {\n return _initAllItemsServices()\n })\n .then(() => {\n return _initEas()\n })\n .then(() => {\n logger('[global/actors] Internal initialized')\n sendBack({ type: GLOBAL_INITIALIZING_INTERNAL_SERVICE_READY })\n })\n\n\n sendBack({ type: GLOBAL_INITIALIZING_SEND_CONFIG, environment })\n\n return () => {\n easSubscription?.unsubscribe()\n }\n})\n"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,7 @@ import '../../../seedSchema/MetadataSchema.js';
|
|
|
7
7
|
import { appState } from '../../../seedSchema/AppStateSchema.js';
|
|
8
8
|
import '../../../seedSchema/ModelSchema.js';
|
|
9
9
|
import '../../../seedSchema/ModelUidSchema.js';
|
|
10
|
+
import '../../../seedSchema/ConfigSchema.js';
|
|
10
11
|
import debug from 'debug';
|
|
11
12
|
import { getTableColumns } from 'drizzle-orm';
|
|
12
13
|
import { getTableConfig } from 'drizzle-orm/sqlite-core';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"saveConfig.js","sources":["../../../../../../src/services/internal/actors/saveConfig.ts"],"sourcesContent":["import { EventObject, fromCallback } from 'xstate'\nimport { INTERNAL_SAVING_CONFIG_SUCCESS } from '@/services/internal/constants'\nimport { BaseDb } from '@/db/Db/BaseDb'\nimport { FromCallbackInput, InternalMachineContext } from '@/types'\nimport { appState } from '@/seedSchema'\nimport debug from 'debug'\nimport { getTableColumns, sql } from 'drizzle-orm'\nimport { getTableConfig } from 'drizzle-orm/sqlite-core'\n\nconst logger = debug('seedSdk:services:internal:actors:saveConfig')\n\nexport const saveConfig = fromCallback<\n EventObject,\n FromCallbackInput<InternalMachineContext>\n>(({ sendBack, input: { context } }) => {\n\n const { endpoints, addresses, arweaveDomain } = context\n\n if (!endpoints) {\n throw new Error('saveConfig called with invalid endpoints')\n }\n\n const _saveConfig = async (): Promise<void> => {\n // logger('[sdk] [internal/actors] starting _saveConfig')\n const appDb = BaseDb.getAppDb()\n\n if (!appDb) {\n throw new Error('App DB not found')\n }\n const endpointsValueString = JSON.stringify(endpoints)\n const addressesValueString = JSON.stringify(addresses)\n\n const tableColumns = getTableColumns(appState)\n\n logger('tableColumns', tableColumns)\n\n const {\n columns,\n indexes,\n foreignKeys,\n checks,\n primaryKeys,\n name,\n } = getTableConfig(appState);\n\n logger('columns', columns)\n logger('indexes', indexes)\n logger('foreignKeys', foreignKeys)\n logger('checks', checks)\n logger('primaryKeys', primaryKeys)\n logger('name', name)\n\n logger('calling select on db')\n\n const queryResult = await appDb.select().from(appState)\n\n logger('queryResult', queryResult)\n\n // TODO: Figure out how to define on conflict with multiple rows added\n await appDb\n .insert(appState)\n .values({\n key: 'endpoints',\n value: endpointsValueString,\n })\n .onConflictDoUpdate({\n target: appState.key,\n set: {\n value: endpointsValueString,\n },\n })\n // logger('[sdk] [internal/actors] Saving addresses to db')\n await appDb\n .insert(appState)\n .values({\n key: 'addresses',\n value: addressesValueString,\n })\n .onConflictDoUpdate({\n target: appState.key,\n set: {\n value: addressesValueString,\n },\n })\n await appDb\n .insert(appState)\n .values({\n key: 'arweaveDomain',\n value: arweaveDomain || 'arweave.net',\n })\n .onConflictDoUpdate({\n target: appState.key,\n set: {\n value: arweaveDomain || 'arweave.net',\n },\n })\n logger('[sdk] [internal/actors] Should be done saving')\n }\n\n _saveConfig().then(() => {\n logger('[sdk] [internal/actors] Successfully saved config')\n return sendBack({ type: INTERNAL_SAVING_CONFIG_SUCCESS })\n })\n\n return () => { }\n})\n"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"saveConfig.js","sources":["../../../../../../src/services/internal/actors/saveConfig.ts"],"sourcesContent":["import { EventObject, fromCallback } from 'xstate'\nimport { INTERNAL_SAVING_CONFIG_SUCCESS } from '@/services/internal/constants'\nimport { BaseDb } from '@/db/Db/BaseDb'\nimport { FromCallbackInput, InternalMachineContext } from '@/types'\nimport { appState } from '@/seedSchema'\nimport debug from 'debug'\nimport { getTableColumns, sql } from 'drizzle-orm'\nimport { getTableConfig } from 'drizzle-orm/sqlite-core'\n\nconst logger = debug('seedSdk:services:internal:actors:saveConfig')\n\nexport const saveConfig = fromCallback<\n EventObject,\n FromCallbackInput<InternalMachineContext>\n>(({ sendBack, input: { context } }) => {\n\n const { endpoints, addresses, arweaveDomain } = context\n\n if (!endpoints) {\n throw new Error('saveConfig called with invalid endpoints')\n }\n\n const _saveConfig = async (): Promise<void> => {\n // logger('[sdk] [internal/actors] starting _saveConfig')\n const appDb = BaseDb.getAppDb()\n\n if (!appDb) {\n throw new Error('App DB not found')\n }\n const endpointsValueString = JSON.stringify(endpoints)\n const addressesValueString = JSON.stringify(addresses)\n\n const tableColumns = getTableColumns(appState)\n\n logger('tableColumns', tableColumns)\n\n const {\n columns,\n indexes,\n foreignKeys,\n checks,\n primaryKeys,\n name,\n } = getTableConfig(appState);\n\n logger('columns', columns)\n logger('indexes', indexes)\n logger('foreignKeys', foreignKeys)\n logger('checks', checks)\n logger('primaryKeys', primaryKeys)\n logger('name', name)\n\n logger('calling select on db')\n\n const queryResult = await appDb.select().from(appState)\n\n logger('queryResult', queryResult)\n\n // TODO: Figure out how to define on conflict with multiple rows added\n await appDb\n .insert(appState)\n .values({\n key: 'endpoints',\n value: endpointsValueString,\n })\n .onConflictDoUpdate({\n target: appState.key,\n set: {\n value: endpointsValueString,\n },\n })\n // logger('[sdk] [internal/actors] Saving addresses to db')\n await appDb\n .insert(appState)\n .values({\n key: 'addresses',\n value: addressesValueString,\n })\n .onConflictDoUpdate({\n target: appState.key,\n set: {\n value: addressesValueString,\n },\n })\n await appDb\n .insert(appState)\n .values({\n key: 'arweaveDomain',\n value: arweaveDomain || 'arweave.net',\n })\n .onConflictDoUpdate({\n target: appState.key,\n set: {\n value: arweaveDomain || 'arweave.net',\n },\n })\n logger('[sdk] [internal/actors] Should be done saving')\n }\n\n _saveConfig().then(() => {\n logger('[sdk] [internal/actors] Successfully saved config')\n return sendBack({ type: INTERNAL_SAVING_CONFIG_SUCCESS })\n })\n\n return () => { }\n})\n"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,7 @@ import '../../../seedSchema/MetadataSchema.js';
|
|
|
5
5
|
import '../../../seedSchema/AppStateSchema.js';
|
|
6
6
|
import { models } from '../../../seedSchema/ModelSchema.js';
|
|
7
7
|
import { modelUids } from '../../../seedSchema/ModelUidSchema.js';
|
|
8
|
+
import '../../../seedSchema/ConfigSchema.js';
|
|
8
9
|
import { BaseDb } from '../../../db/Db/BaseDb.js';
|
|
9
10
|
import { eq } from 'drizzle-orm';
|
|
10
11
|
import { getModelSchemas } from '../../../db/read/getModelSchemas.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"preparePublishRequestData.js","sources":["../../../../../../src/services/publish/actors/preparePublishRequestData.ts"],"sourcesContent":["import { EventObject, fromCallback } from 'xstate'\nimport { FromCallbackInput, PublishMachineContext } from '@/types'\nimport { models as modelsTable, modelUids } from '@/seedSchema'\nimport { BaseDb } from '@/db/Db/BaseDb'\nimport { eq } from 'drizzle-orm'\nimport { getModelSchemas } from '@/db/read/getModelSchemas'\nimport { BaseItem } from '@/Item/BaseItem'\n\nexport const preparePublishRequestData = fromCallback<\n EventObject,\n FromCallbackInput<PublishMachineContext>\n>(({ sendBack, input: { context } }) => {\n const { localId } = context\n\n const _preparePublishRequestData = async () => {\n const item = await BaseItem.find({ seedLocalId: localId })\n\n if (!item) {\n return false\n }\n\n const appDb = BaseDb.getAppDb()\n\n const modelsRows = await appDb\n .select({\n modelName: modelsTable.name,\n schemaUid: modelUids.uid,\n })\n .from(modelsTable)\n .leftJoin(modelUids, eq(modelUids.modelId, modelsTable.id))\n .where(eq(modelsTable.name, 'Version'))\n\n if (!modelsRows || modelsRows.length === 0) {\n sendBack({ type: 'preparePublishRequestDataError' })\n return false\n }\n\n const versionSchemaUid = modelsRows[0].schemaUid\n\n const editedProperties = await item.getEditedProperties()\n\n const { modelSchemas, schemaStringToModelRecord } = await getModelSchemas({\n sdkConfigDb: appDb,\n })\n\n // const dataEncoder = new SchemaEncoder(modelProperty.schemaDefinition,)\n // const encodedData = dataEncoder.encodeData(data,)\n //\n // itemData.listOfAttestations.push({\n // schema : modelProperty.schemaUid,\n // data : [\n // {\n // ...defaultAttestationData,\n // data : encodedData,\n // },\n // ],\n // },)\n\n const publishRequestData = {\n seedIsRevocable: false,\n seedSchemaUid: item.schemaUid,\n seedUid: item.seedUid,\n versionSchemaUid,\n versionUid: item.latestVersionUid,\n listOfAttestations: [],\n }\n\n sendBack({\n type: 'updateContext',\n ...publishRequestData,\n })\n\n return true\n }\n\n _preparePublishRequestData().then((success) => {\n if (success) {\n sendBack({ type: 'preparePublishRequestDataSuccess' })\n }\n })\n})\n"],"names":["modelsTable"],"mappings":"
|
|
1
|
+
{"version":3,"file":"preparePublishRequestData.js","sources":["../../../../../../src/services/publish/actors/preparePublishRequestData.ts"],"sourcesContent":["import { EventObject, fromCallback } from 'xstate'\nimport { FromCallbackInput, PublishMachineContext } from '@/types'\nimport { models as modelsTable, modelUids } from '@/seedSchema'\nimport { BaseDb } from '@/db/Db/BaseDb'\nimport { eq } from 'drizzle-orm'\nimport { getModelSchemas } from '@/db/read/getModelSchemas'\nimport { BaseItem } from '@/Item/BaseItem'\n\nexport const preparePublishRequestData = fromCallback<\n EventObject,\n FromCallbackInput<PublishMachineContext>\n>(({ sendBack, input: { context } }) => {\n const { localId } = context\n\n const _preparePublishRequestData = async () => {\n const item = await BaseItem.find({ seedLocalId: localId })\n\n if (!item) {\n return false\n }\n\n const appDb = BaseDb.getAppDb()\n\n const modelsRows = await appDb\n .select({\n modelName: modelsTable.name,\n schemaUid: modelUids.uid,\n })\n .from(modelsTable)\n .leftJoin(modelUids, eq(modelUids.modelId, modelsTable.id))\n .where(eq(modelsTable.name, 'Version'))\n\n if (!modelsRows || modelsRows.length === 0) {\n sendBack({ type: 'preparePublishRequestDataError' })\n return false\n }\n\n const versionSchemaUid = modelsRows[0].schemaUid\n\n const editedProperties = await item.getEditedProperties()\n\n const { modelSchemas, schemaStringToModelRecord } = await getModelSchemas({\n sdkConfigDb: appDb,\n })\n\n // const dataEncoder = new SchemaEncoder(modelProperty.schemaDefinition,)\n // const encodedData = dataEncoder.encodeData(data,)\n //\n // itemData.listOfAttestations.push({\n // schema : modelProperty.schemaUid,\n // data : [\n // {\n // ...defaultAttestationData,\n // data : encodedData,\n // },\n // ],\n // },)\n\n const publishRequestData = {\n seedIsRevocable: false,\n seedSchemaUid: item.schemaUid,\n seedUid: item.seedUid,\n versionSchemaUid,\n versionUid: item.latestVersionUid,\n listOfAttestations: [],\n }\n\n sendBack({\n type: 'updateContext',\n ...publishRequestData,\n })\n\n return true\n }\n\n _preparePublishRequestData().then((success) => {\n if (success) {\n sendBack({ type: 'preparePublishRequestDataSuccess' })\n }\n })\n})\n"],"names":["modelsTable"],"mappings":";;;;;;;;;;;;;AAQa,MAAA,yBAAyB,GAAG,YAAY,CAGnD,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,KAAI;AACrC,IAAA,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO;AAE3B,IAAA,MAAM,0BAA0B,GAAG,YAAW;AAC5C,QAAA,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC;QAE1D,IAAI,CAAC,IAAI,EAAE;AACT,YAAA,OAAO,KAAK;;AAGd,QAAA,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE;QAE/B,MAAM,UAAU,GAAG,MAAM;AACtB,aAAA,MAAM,CAAC;YACN,SAAS,EAAEA,MAAW,CAAC,IAAI;YAC3B,SAAS,EAAE,SAAS,CAAC,GAAG;SACzB;aACA,IAAI,CAACA,MAAW;AAChB,aAAA,QAAQ,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,OAAO,EAAEA,MAAW,CAAC,EAAE,CAAC;aACzD,KAAK,CAAC,EAAE,CAACA,MAAW,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAEzC,IAAI,CAAC,UAAU,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE;AAC1C,YAAA,QAAQ,CAAC,EAAE,IAAI,EAAE,gCAAgC,EAAE,CAAC;AACpD,YAAA,OAAO,KAAK;;QAGd,MAAM,gBAAgB,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS;AAEhD,QAAyB,MAAM,IAAI,CAAC,mBAAmB;QAEvD,MAAM,EAAE,YAAY,EAAE,yBAAyB,EAAE,GAAG,MAAM,eAAe,CAExE,CAAC;;;;;;;;;;;;;AAeF,QAAA,MAAM,kBAAkB,GAAG;AACzB,YAAA,eAAe,EAAE,KAAK;YACtB,aAAa,EAAE,IAAI,CAAC,SAAS;YAC7B,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,gBAAgB;YAChB,UAAU,EAAE,IAAI,CAAC,gBAAgB;AACjC,YAAA,kBAAkB,EAAE,EAAE;SACvB;AAED,QAAA,QAAQ,CAAC;AACP,YAAA,IAAI,EAAE,eAAe;AACrB,YAAA,GAAG,kBAAkB;AACtB,SAAA,CAAC;AAEF,QAAA,OAAO,IAAI;AACb,KAAC;AAED,IAAA,0BAA0B,EAAE,CAAC,IAAI,CAAC,CAAC,OAAO,KAAI;QAC5C,IAAI,OAAO,EAAE;AACX,YAAA,QAAQ,CAAC,EAAE,IAAI,EAAE,kCAAkC,EAAE,CAAC;;AAE1D,KAAC,CAAC;AACJ,CAAC;;;;"}
|
package/dist/src/types/item.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { tags } from 'typia';
|
|
1
2
|
import { ModelClassType, ModelSchema } from '@/types';
|
|
2
3
|
import { Attestation } from '@/graphql/gql/graphql';
|
|
3
4
|
import { PropertyType } from '@/seedSchema';
|
|
@@ -52,21 +53,21 @@ export type NewItemProps<T> = Partial<ItemData> & Partial<T> & {
|
|
|
52
53
|
mostRecentPropertiesBySeedUid?: Map<string, Attestation[]>;
|
|
53
54
|
storageTransactionId?: string;
|
|
54
55
|
};
|
|
55
|
-
export
|
|
56
|
+
export interface ItemData {
|
|
56
57
|
seedLocalId?: string;
|
|
57
58
|
seedUid?: string;
|
|
58
59
|
modelName?: string;
|
|
59
60
|
schemaUid?: string;
|
|
60
|
-
attestationCreatedAt?: number
|
|
61
|
+
attestationCreatedAt?: number & tags.Type<"int64">;
|
|
61
62
|
latestVersionUid?: string;
|
|
62
63
|
latestVersionLocalId?: string;
|
|
63
|
-
versionsCount?: number
|
|
64
|
-
lastVersionPublishedAt?: number
|
|
65
|
-
lastLocalUpdateAt?: number
|
|
64
|
+
versionsCount?: number & tags.Type<"int32">;
|
|
65
|
+
lastVersionPublishedAt?: number & tags.Type<"int64">;
|
|
66
|
+
lastLocalUpdateAt?: number & tags.Type<"int64">;
|
|
66
67
|
type?: string;
|
|
67
|
-
createdAt?: number
|
|
68
|
-
updatedAt?: number
|
|
69
|
-
}
|
|
68
|
+
createdAt?: number & tags.Type<"int64">;
|
|
69
|
+
updatedAt?: number & tags.Type<"int64">;
|
|
70
|
+
}
|
|
70
71
|
export type ItemFindProps = {
|
|
71
72
|
modelName?: string;
|
|
72
73
|
seedLocalId?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"item.d.ts","sourceRoot":"","sources":["../../../src/types/item.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"item.d.ts","sourceRoot":"","sources":["../../../src/types/item.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAE1C,MAAM,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,QAAQ,CAAC,CAAA;AAE/C,MAAM,MAAM,sBAAsB,GAAG;IACnC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC/B,SAAS,CAAC,EAAE,MAAM,EAAE,CAAA;IACpB,aAAa,EAAE,OAAO,CAAA;IACtB,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACnC,kBAAkB,EAAE,MAAM,CAAA;IAC1B,eAAe,EAAE,MAAM,CAAA;IACvB,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,CAAC,EAAE,cAAc,CAAA;IAC3B,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,iBAAiB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;IAC7C,wBAAwB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,CAAA;IACrD,0BAA0B,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,CAAA;IACvD,qBAAqB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC3C,6BAA6B,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,CAAA;IAC1D,SAAS,CAAC,EAAE,WAAW,EAAE,CAAA;IACzB,YAAY,CAAC,EAAE,WAAW,EAAE,CAAA;IAC5B,KAAK,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,CAAA;IACpB,cAAc,CAAC,EAAE,OAAO,CAAA;CACzB,CAAA;AAED,MAAM,MAAM,kBAAkB,CAAC,CAAC,IAAI;IAClC,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,UAAU,CAAC,EAAE,cAAc,CAAA;IAC3B,qBAAqB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,CAAA;IAClD,kBAAkB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;IAC9C,iBAAiB,CAAC,EAAE,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,aAAa,CAAC,YAAY,CAAC,CAAC,CAAA;IACtE,0BAA0B,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,CAAA;IACvD,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACtC,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B,CAAA;AAED,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,GAC7C,OAAO,CAAC,CAAC,CAAC,GAAG;IACX,SAAS,EAAE,MAAM,CAAA;IACjB,qBAAqB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC3C,6BAA6B,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,CAAA;IAC1D,oBAAoB,CAAC,EAAE,MAAM,CAAA;CAC9B,CAAA;AAEH,MAAM,WAAW,QAAQ;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oBAAoB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACnD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC5C,sBAAsB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACrD,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAChD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACxC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;CACzC;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,2BAA2B,GAAG;IACxC,YAAY,EAAE,MAAM,CAAA;IACpB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,MAAM,CAAA;IACjB,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,aAAa,EAAE,GAAG,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@seedprotocol/sdk",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.15",
|
|
4
4
|
"description": "The SDK for Seed Protocol",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"engines": {
|
|
@@ -23,9 +23,12 @@
|
|
|
23
23
|
"compile": "graphql-codegen --config codegen.ts",
|
|
24
24
|
"watch": "graphql-codegen -w",
|
|
25
25
|
"build:publish": "rm -rf dist && NODE_ENV=production rollup -c && npm publish --access public",
|
|
26
|
-
"test:browser": "vitest --workspace=vitest.workspace.browser.ts"
|
|
26
|
+
"test:browser": "vitest --workspace=vitest.workspace.browser.ts",
|
|
27
|
+
"rpc-server": "tsx scripts/rpcServer.ts"
|
|
27
28
|
},
|
|
28
29
|
"bin": {
|
|
30
|
+
"add-model": "dist/addModel.js",
|
|
31
|
+
"rpc-server": "dist/rpcServer.js",
|
|
29
32
|
"seed": "dist/bin.js"
|
|
30
33
|
},
|
|
31
34
|
"author": "Keith Axline <keith@journodao.xyz>",
|
|
@@ -41,6 +44,8 @@
|
|
|
41
44
|
},
|
|
42
45
|
"dependencies": {
|
|
43
46
|
"@ethereum-attestation-service/eas-sdk": "^2.7.0",
|
|
47
|
+
"@grpc/grpc-js": "^1.13.3",
|
|
48
|
+
"@grpc/proto-loader": "^0.7.15",
|
|
44
49
|
"@libsql/client": "^0.14.0",
|
|
45
50
|
"@misskey-dev/browser-image-resizer": "^2024.1.0",
|
|
46
51
|
"@pianity/arsnap-adapter": "^0.2.0",
|
|
@@ -149,6 +154,7 @@
|
|
|
149
154
|
"tsconfig-paths": "^4.2.0",
|
|
150
155
|
"tsx": "^4.19.3",
|
|
151
156
|
"typescript": "~5.7.2",
|
|
157
|
+
"typia": "^9.1.1",
|
|
152
158
|
"vite-plugin-inspect": "^10.0.6",
|
|
153
159
|
"vite-plugin-node-polyfills": "^0.22.0",
|
|
154
160
|
"vite-plugin-static-copy": "^2.2.0",
|