@seedprotocol/sdk 0.2.48 → 0.2.50
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/{Db-BhLWMUOe.js → Db-BwkMqaQe.js} +2 -2
- package/dist/Db-BwkMqaQe.js.map +1 -0
- package/dist/{Db-DrcygP77.js → Db-jJH2s0gO.js} +2 -2
- package/dist/{Db-DrcygP77.js.map → Db-jJH2s0gO.js.map} +1 -1
- package/dist/{Item-D0rGmrZg.js → Item-DI3FxVPV.js} +2 -2
- package/dist/{Item-D0rGmrZg.js.map → Item-DI3FxVPV.js.map} +1 -1
- package/dist/{ItemProperty-D0tkeKx1.js → ItemProperty-CxNUwVnR.js} +2 -2
- package/dist/{ItemProperty-D0tkeKx1.js.map → ItemProperty-CxNUwVnR.js.map} +1 -1
- package/dist/{index-B6FQruEq.js → index-CKrLHw3B.js} +56 -26
- package/dist/{index-B6FQruEq.js.map → index-CKrLHw3B.js.map} +1 -1
- package/dist/{index-C93o7-zP.js → index-Dv8GeuSw.js} +2 -2
- package/dist/index-Dv8GeuSw.js.map +1 -0
- package/dist/main.js +1 -1
- package/dist/{seed.schema.config-ClOsMOKS.js → seed.schema.config-1s-iWHq_.js} +2 -2
- package/dist/{seed.schema.config-ClOsMOKS.js.map → seed.schema.config-1s-iWHq_.js.map} +1 -1
- package/dist/src/BaseItem.ts +16 -3
- package/dist/src/BaseItemProperty.ts +2 -2
- package/dist/src/IItem.ts +4 -1
- package/dist/src/actors.ts +272 -34
- package/dist/src/client.ts +8 -2
- package/dist/src/createMetadata.ts +14 -9
- package/dist/src/createNewItem.ts +6 -2
- package/dist/src/saveImageSrc.ts +0 -4
- package/dist/src/saveItemStorage.ts +7 -1
- package/dist/src/updateMetadata.ts +41 -1
- package/dist/src/waitForDb.ts +9 -10
- package/dist/types/src/Item/BaseItem.d.ts +4 -1
- package/dist/types/src/Item/BaseItem.d.ts.map +1 -1
- package/dist/types/src/Item/service/actors/saveDataToDb.d.ts +3 -0
- package/dist/types/src/Item/service/actors/saveDataToDb.d.ts.map +1 -0
- package/dist/types/src/ItemProperty/service/actors/saveValueToDb/saveImageSrc.d.ts.map +1 -1
- package/dist/types/src/ItemProperty/service/actors/saveValueToDb/saveItemStorage.d.ts.map +1 -1
- package/dist/types/src/browser/db/Db.d.ts +1 -1
- package/dist/types/src/browser/db/Db.d.ts.map +1 -1
- package/dist/types/src/browser/react/item.d.ts.map +1 -1
- package/dist/types/src/client.d.ts +1 -1
- package/dist/types/src/client.d.ts.map +1 -1
- package/dist/types/src/db/write/createMetadata.d.ts.map +1 -1
- package/dist/types/src/db/write/createNewItem.d.ts.map +1 -1
- package/dist/types/src/db/write/updateMetadata.d.ts +2 -1
- package/dist/types/src/db/write/updateMetadata.d.ts.map +1 -1
- package/dist/types/src/interfaces/IItem.d.ts +3 -0
- package/dist/types/src/interfaces/IItem.d.ts.map +1 -1
- package/package.json +1 -1
- package/dist/Db-BhLWMUOe.js.map +0 -1
- package/dist/index-C93o7-zP.js.map +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { b as BaseDb, F as FileManager } from './index-
|
|
1
|
+
import { b as BaseDb, F as FileManager } from './index-CKrLHw3B.js';
|
|
2
2
|
import { sql } from 'drizzle-orm';
|
|
3
3
|
import debug from 'debug';
|
|
4
4
|
import { readMigrationFiles } from 'drizzle-orm/migrator';
|
|
@@ -381,4 +381,4 @@ class Db extends BaseDb {
|
|
|
381
381
|
BaseDb.setPlatformClass(Db);
|
|
382
382
|
|
|
383
383
|
export { Db, dbExec };
|
|
384
|
-
//# sourceMappingURL=Db-
|
|
384
|
+
//# sourceMappingURL=Db-BwkMqaQe.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Db-BwkMqaQe.js","sources":["../../src/browser/db/sqlWasmClient.ts","../../src/services/db/connectionManager.ts","../../src/browser/db/Db.ts"],"sourcesContent":["import { SqliteConnectionManager } from '@/services/db'\nimport {\n SqliteRemoteDatabase,\n SqliteRemoteResult,\n} from 'drizzle-orm/sqlite-proxy'\nimport { sql } from 'drizzle-orm'\n\nlet sqlite3InitModule: any\nlet sqliteWasmClient: any\nlet manager: SqliteConnectionManager | undefined\nlet isPreparing = false\n\nexport const setSqliteWasmClient = (client: any) => {\n sqliteWasmClient = client\n}\n\nexport const getSqliteWasmClient = async () => {\n if (sqliteWasmClient) {\n return sqliteWasmClient\n }\n if (typeof window === 'undefined') {\n throw new Error('validateInput called from non-browser context')\n }\n\n if (isPreparing) {\n return\n }\n\n isPreparing = true\n\n if (!sqlite3InitModule) {\n sqlite3InitModule = await import('@sqlite.org/sqlite-wasm')\n }\n\n if (!window.sqlite3Worker1Promiser) {\n await sqlite3InitModule()\n }\n\n if (!window.sqlite3Worker1Promiser) {\n console.error('window.sqlite3Worker1Promiser not found')\n isPreparing = false\n return\n }\n\n try {\n sqliteWasmClient = await window.sqlite3Worker1Promiser.v2().catch((err) => {\n console.error('Error initializing sqliteWasmClient:', err)\n isPreparing = false\n })\n } catch (err) {\n console.error('Error initializing sqliteWasmClient:', err)\n isPreparing = false\n }\n return sqliteWasmClient\n}\n\nexport const getManager = () => {\n return manager\n}\n\nexport const setManager = (m: any) => {\n manager = m\n}\nlet appDb: SqliteRemoteDatabase<Record<string, unknown>> | undefined\nexport const setAppDb = (db: SqliteRemoteDatabase<Record<string, unknown>>) => {\n appDb = db\n}\nexport const getAppDb = () => {\n if (!appDb) {\n throw new Error('getAppDb: appDb is undefined')\n }\n\n return appDb\n}\nexport const isAppDbReady = () => {\n return !!appDb\n}\ntype RunQueryForStatement = (\n statement: string,\n) => Promise<SqliteRemoteResult<unknown>>\n\nexport const runQueryForStatement: RunQueryForStatement = async (\n statement: string,\n) => {\n const appDb = getAppDb()\n\n return appDb.run(sql.raw(statement))\n}\n","type SqliteDatabase = {\n open: (filename: string) => Promise<void>\n exec: (sql: string, params?: any[]) => any\n close: () => void\n}\n\nclass SqliteConnectionManager {\n private sqliteModule: SqliteDatabase\n private idleTimeout: number\n private databases: { [key: string]: SqliteDatabase }\n private idleTimers: { [key: string]: NodeJS.Timeout }\n\n constructor(sqliteModule: SqliteDatabase, idleTimeout: number = 300000) {\n // Default idle timeout: 5 minutes\n this.sqliteModule = sqliteModule\n this.idleTimeout = idleTimeout\n this.databases = {}\n this.idleTimers = {}\n }\n\n private resetIdleTimer(dbName: string): void {\n if (this.idleTimers[dbName]) {\n clearTimeout(this.idleTimers[dbName])\n }\n\n this.idleTimers[dbName] = setTimeout(() => {\n this.closeConnection(dbName)\n }, this.idleTimeout)\n }\n\n private async getConnection(dbName: string): Promise<SqliteDatabase> {\n if (this.databases[dbName]) {\n this.resetIdleTimer(dbName)\n return this.databases[dbName]\n }\n\n const db = new this.sqliteModule()\n await db.open(dbName)\n this.databases[dbName] = db\n this.resetIdleTimer(dbName)\n return db\n }\n\n public async execute(\n dbName: string,\n sql: string,\n params: any[] = [],\n ): Promise<any> {\n const db = await this.getConnection(dbName)\n const result = db.exec(sql, params)\n this.resetIdleTimer(dbName)\n return result\n }\n\n public closeConnection(dbName: string): void {\n if (this.databases[dbName]) {\n this.databases[dbName].close()\n delete this.databases[dbName]\n if (this.idleTimers[dbName]) {\n clearTimeout(this.idleTimers[dbName])\n delete this.idleTimers[dbName]\n }\n }\n }\n}\n\nexport { SqliteConnectionManager }\n","import { BaseDb } from \"@/db/Db/BaseDb\";\nimport { IDb } from \"@/interfaces/IDb\";\nimport { getAppDb, getSqliteWasmClient, isAppDbReady, setAppDb } from \"./sqlWasmClient\";\nimport { SqliteConnectionManager } from \"@/services/db\";\nimport debug from \"debug\";\nimport { sql } from \"drizzle-orm\";\nimport { readMigrationFiles } from \"drizzle-orm/migrator\";\nimport { drizzle } from \"drizzle-orm/sqlite-proxy\";\nimport { migrate as drizzleMigrate } from \"drizzle-orm/sqlite-proxy/migrator\";\nimport { BROWSER_FS_TOP_DIR } from \"@/services/internal/constants\";\nimport { FileManager } from \"@/browser/helpers/FileManager\";\nconst logger = debug('app:browser:db:Db')\n\nexport const dbExec = async (dbId: string, params: any[], sql: string, dbName: string, retries = 2) => {\n const rowsToReturnRaw: SqliteWasmResult[] = []\n const rowsValues: string[][] = []\n\n const sqliteWasmClient = await getSqliteWasmClient()\n\n // For a single exec command, the callback potentially gets called several times -- once for each row.\n // So we need to collect all rows into a final array to return (execResult).\n const rowsToReturn = await new Promise((resolve, reject) => {\n sqliteWasmClient('exec', {\n dbId,\n sql,\n bind: params,\n callback: (result) => {\n // Checks if this is the final callback of the query\n if (!result || !result.row || !result.rowNumber) {\n const returnResult = []\n // Before returning the array, we process it to match the expected output format\n // const rowsToReturnProcessed = rowsToReturnRaw.reduce((acc, curr) => {\n // if (\n // Array.isArray(curr.row) &&\n // curr.row?.length > 0 &&\n // curr.columnNames.length > 0\n // ) {\n // const returnObj: ReturnObj = {\n // database: dbName,\n // }\n //\n // const values = []\n //\n // curr.columnNames.forEach((colName, index: number) => {\n // if (curr.row && curr.row[index]) {\n // returnObj[colName] = curr.row[index]\n // values.push(curr.row[index])\n // }\n // })\n // // rowsValueStrings.push(`(${values.join(', ')})`)\n // acc.push(returnObj)\n // }\n // return acc\n // }, [] as string[])\n for (const currRow of rowsToReturnRaw) {\n // const values: string[] = []\n // currRow.columnNames.forEach((colName, index: number) => {\n // if (currRow.row) {\n // values.push(currRow.row[index])\n // }\n // })\n // logger(`[db/actors] [dbExec] currRow`, currRow)\n returnResult.push(currRow.row)\n }\n resolve(returnResult)\n } else {\n // If not the final response, add this row to the return array\n rowsToReturnRaw.push(result)\n }\n },\n }).catch(async (error) => {\n reject(error)\n })\n })\n\n // logger(`[db/actors] [dbExec] rowsToReturn`, rowsToReturn)\n // logger(`[db/actors] [dbExec] rowsValues`, rowsValues)\n\n return rowsToReturn || []\n}\n\nclass Db extends BaseDb implements IDb {\n constructor() {\n super()\n }\n\n static getAppDb() {\n return getAppDb()\n }\n\n static isAppDbReady() {\n return isAppDbReady()\n }\n\n static prepareDb(filesDir: string) {\n\n return new Promise((resolve, reject) => {\n let sqliteWasmClient\n const interval = setInterval(() => {\n // TODO: Add a timeout\n // TODO: Add a cancel token to the promise so we can prevent more loops starting while we're checking the successful outcome\n getSqliteWasmClient().then((sqliteWasmClient) => {\n if (sqliteWasmClient) {\n clearInterval(interval)\n const manager = new SqliteConnectionManager(sqliteWasmClient)\n resolve(manager)\n }\n })\n\n }, 200)\n })\n }\n\n static async connectToDb(pathToDir: string, dbName: string): Promise<string> {\n\n return new Promise((resolve, reject) => {\n const interval = setInterval(() => {\n\n // TODO: Add a timeout\n // TODO: Add a cancel token to the promise so we can prevent more loops starting while we're checking the successful outcome\n getSqliteWasmClient().then((sqliteWasmClient) => {\n\n if (!sqliteWasmClient) {\n return\n }\n\n //@ts-ignore\n sqliteWasmClient('config-get', {}).then((response) => {\n logger(response)\n logger('Running SQLite3 version', response.result.version.libVersion)\n\n //@ts-ignore\n sqliteWasmClient('open', {\n filename: `file:${pathToDir}/db/${dbName}.sqlite3?vfs=opfs`,\n }).then((response: { dbId: string, result: { filename: string } }) => {\n\n logger(response)\n const dbId = response.dbId\n logger(\n 'OPFS is available, created persisted database at',\n response.result.filename.replace(/^file:(.*?)\\?vfs=opfs$/, '$1'),\n )\n\n if (dbId) {\n clearInterval(interval)\n resolve(dbId)\n }\n })\n })\n })\n }, 500)\n })\n }\n\n static async migrate(pathToDbDir: string, dbName: string, dbId: string): Promise<void> {\n\n const fs = await import('@zenfs/core')\n\n const schemaGlobString = `${BROWSER_FS_TOP_DIR}/schema/*`\n\n const drizzleDb = drizzle(\n async (sql, params, method) => {\n try {\n // logger(\n // `executing sql on ${dbName} with id: ${dbId} and method: ${method}`,\n // sql,\n // )\n\n const finalResult = await dbExec(dbId, params, sql, dbName)\n\n // logger(`finalResult with method: ${method}`, finalResult)\n // Drizzle always waits for {rows: string[][]} or {rows: string[]} for the return value.\n\n // When the method is get, you should return a value as {rows: string[]}.\n // Otherwise, you should return {rows: string[][]}.\n\n return { rows: finalResult }\n } catch (e: any) {\n console.error('Error from sqlite proxy server: ', JSON.stringify(e))\n return { rows: [] }\n }\n },\n {\n schema: schemaGlobString,\n // logger: true,\n },\n )\n\n try {\n\n const filesInRoot = await fs.promises.readdir('/')\n logger('filesInRoot', filesInRoot)\n const migrations = readMigrationFiles({\n migrationsFolder: pathToDbDir,\n })\n\n if (migrations.length > 0) {\n const incomingMigrationHashes = migrations.map(\n (migration) => migration.hash,\n )\n\n let existingMigrationHashes\n let rows = []\n\n try {\n\n const queryMigrationsTable = await drizzleDb.run(\n sql.raw(\n `SELECT name \n FROM sqlite_master \n WHERE type='table' \n AND name='__drizzle_migrations';`,\n ),\n )\n\n logger('queryMigrationsTable', queryMigrationsTable)\n\n if (queryMigrationsTable && queryMigrationsTable.rows && queryMigrationsTable.rows.length > 0) {\n const query = await drizzleDb.run(\n sql.raw(\n `SELECT hash, created_at\n FROM main.__drizzle_migrations;`,\n ),\n )\n \n rows = query.rows\n }\n\n } catch (e) {\n rows = []\n }\n\n if (rows && rows.length > 0) {\n existingMigrationHashes = rows.map((row) => row[0])\n }\n\n if (existingMigrationHashes) {\n let shouldRebuildDb = false\n for (const existingHash of existingMigrationHashes) {\n if (!incomingMigrationHashes.includes(existingHash)) {\n shouldRebuildDb = true\n break\n }\n }\n if (shouldRebuildDb) {\n await fs.promises.unlink(`${pathToDbDir}/${dbName}.sqlite3`)\n }\n }\n }\n\n await drizzleMigrate(\n drizzleDb,\n async (queriesToRun) => {\n // logger('queriesToRun', queriesToRun)\n for (const query of queriesToRun) {\n // logger('query', query)\n await drizzleDb.run(sql.raw(query))\n }\n },\n {\n migrationsFolder: pathToDbDir,\n },\n )\n } catch (error) {\n\n await FileManager.waitForFile(`${pathToDbDir}/meta/_journal.json`)\n\n await this.migrate(pathToDbDir, dbName)\n\n }\n\n setAppDb(drizzleDb)\n // const createTempTableQuery = await appDb.run(\n // sql.raw(\n // `CREATE TEMP TABLE IF NOT EXISTS temp_last_inserted_id (id INTEGER, table TEXT);`,\n // ),\n // )\n //\n // logger(\n // '[db/actors] [migrate] createTempTableQuery',\n // createTempTableQuery,\n // )\n\n // const triggersQuery = await appDb.run(\n // sql.raw(\n // `SELECT name\n // FROM main.sqlite_master\n // WHERE type = 'trigger';`,\n // ),\n // )\n //\n // logger('[db/actors] [migrate] triggersQuery', triggersQuery)\n //\n // const triggers = triggersQuery.rows.map((row) => row[0])\n //\n // const tablesQuery = await appDb.run(\n // sql.raw(\n // `SELECT name\n // FROM main.sqlite_master\n // WHERE type = 'table';`,\n // ),\n // )\n //\n // logger('[db/actors] [migrate] tablesQuery', tablesQuery)\n //\n // const tableNames = tablesQuery.rows.map((row) => row[0])\n // logger('[db/actors] [migrate] tableNames', tableNames)\n // for (const tableName of tableNames) {\n // const triggerName = `after_insert_${tableName}`\n // if (triggers.includes(triggerName)) {\n // continue\n // }\n // const createTriggerQuery = await appDb.run(\n // sql.raw(\n // `CREATE TRIGGER after_insert_${tableName}\n // AFTER INSERT ON ${tableName}\n // BEGIN\n // DELETE FROM temp_last_inserted_id;\n // INSERT INTO temp_last_inserted_id (id) VALUES (new.id);\n // END;`,\n // ),\n // )\n //\n // logger(\n // '[db/actors] [migrate] createTriggerQuery',\n // createTriggerQuery,\n // )\n // }\n }\n}\n\nBaseDb.setPlatformClass(Db)\n\nexport { Db }"],"names":["drizzleMigrate"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { b as BaseDb } from './index-
|
|
1
|
+
import { b as BaseDb } from './index-CKrLHw3B.js';
|
|
2
2
|
import { defineConfig } from 'drizzle-kit';
|
|
3
3
|
import dotenv from 'dotenv';
|
|
4
4
|
import process from 'node:process';
|
|
@@ -105,4 +105,4 @@ class Db extends BaseDb {
|
|
|
105
105
|
BaseDb.setPlatformClass(Db);
|
|
106
106
|
|
|
107
107
|
export { Db };
|
|
108
|
-
//# sourceMappingURL=Db-
|
|
108
|
+
//# sourceMappingURL=Db-jJH2s0gO.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Db-
|
|
1
|
+
{"version":3,"file":"Db-jJH2s0gO.js","sources":["../../src/node/db/node.app.db.config.ts","../../src/node/db/Db.ts"],"sourcesContent":["import { defineConfig } from 'drizzle-kit'\nimport dotenv from 'dotenv'\nimport process from 'node:process'\nimport path from 'path'\nimport { DrizzleConfig } from 'drizzle-orm'\n\ndotenv.config()\n\nlet sdkRoot = './node_modules/@seedprotocol/sdk'\n\nif (process.env.IS_SEED_DEV) {\n sdkRoot = './src'\n}\n\nlet dotSeedDir = path.join(process.cwd(), '.seed')\n\nif (process.env.IS_SEED_DEV) {\n dotSeedDir = path.join(\n process.cwd(),\n '__tests__',\n '__mocks__',\n 'browser',\n 'project',\n '.seed',\n )\n}\n\nlet schemaDir = `${sdkRoot}/dist/seedSchema/*.ts`\n\nif (process.env.IS_SEED_DEV) {\n schemaDir = `${sdkRoot}/seedSchema/*.ts`\n}\n\nexport default defineConfig({\n schema: schemaDir,\n dialect: 'sqlite',\n out: `${dotSeedDir}/db`,\n dbCredentials: {\n url: `${dotSeedDir}/db/app_db.sqlite3`,\n },\n}) as DrizzleConfig\n","import { BaseDb } from \"@/db/Db/BaseDb\";\nimport { IDb } from \"@/interfaces\";\nimport nodeAppDbConfig from \"./node.app.db.config\";\nimport { drizzle } from \"drizzle-orm/better-sqlite3\";\nimport { defineConfig, } from \"drizzle-kit\";\nimport path from \"path\";\nimport { DrizzleConfig, } from \"drizzle-orm\";\nimport Database from \"better-sqlite3\";\n\nconst getConfig = (filesDir: string) => {\n\n const dotSeedDir = path.join(filesDir, '.seed')\n let schemaDir = `${dotSeedDir}/schema/*Schema.ts`\n\n const nodeDbConfig = defineConfig({\n schema: schemaDir,\n dialect: 'sqlite',\n out: `${dotSeedDir}/db`,\n dbCredentials: {\n url: `${dotSeedDir}/db/app_db.sqlite3`,\n }\n }) as DrizzleConfig & { dbCredentials: { url: string } }\n\n return nodeDbConfig\n}\n\nclass Db extends BaseDb implements IDb {\n constructor() {\n super()\n }\n\n static getAppDb() {\n return drizzle(nodeAppDbConfig)\n }\n\n static isAppDbReady() {\n return true\n }\n\n static async prepareDb(filesDir: string) {\n const nodeDbConfig = getConfig(filesDir)\n\n let db\n\n try {\n db = drizzle(nodeDbConfig)\n } catch (error) {\n console.error(error)\n }\n\n try {\n const client = new Database(nodeDbConfig.dbCredentials.url)\n db = drizzle({ client })\n } catch (error) {\n console.error(error)\n }\n\n return db\n }\n\n static async connectToDb(pathToDir: string, dbName: string) {\n\n const nodeDbConfig = getConfig(pathToDir)\n\n return {\n id: drizzle(nodeDbConfig).$client.name\n }\n }\n\n static async migrate(pathToDbDir: string, dbName: string, dbId: string) {\n const nodeDbConfig = getConfig(pathToDbDir)\n return drizzle(nodeDbConfig)\n }\n}\n\nBaseDb.setPlatformClass(Db)\n\nexport { Db }"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { B as BaseItem } from './index-
|
|
1
|
+
import { B as BaseItem } from './index-CKrLHw3B.js';
|
|
2
2
|
import 'immer';
|
|
3
3
|
import 'reflect-metadata';
|
|
4
4
|
import '@sinclair/typebox';
|
|
@@ -31,4 +31,4 @@ class Item extends BaseItem {
|
|
|
31
31
|
BaseItem.setPlatformClass(Item);
|
|
32
32
|
|
|
33
33
|
export { Item };
|
|
34
|
-
//# sourceMappingURL=Item-
|
|
34
|
+
//# sourceMappingURL=Item-DI3FxVPV.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Item-
|
|
1
|
+
{"version":3,"file":"Item-DI3FxVPV.js","sources":["../../src/node/Item/Item.ts"],"sourcesContent":["import { IItem } from '@/interfaces';\nimport { BaseItem } from '@/Item/BaseItem';\nimport { ModelSchema, ModelValues, NewItemProps } from '@/types';\n\nexport class Item<T extends ModelValues<ModelSchema>> extends BaseItem<T> implements IItem<T> {\n constructor(initialValues: NewItemProps<T>) {\n super(initialValues);\n }\n\n}\n\nBaseItem.setPlatformClass(Item)"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAIM,MAAO,IAAyC,SAAQ,QAAW,CAAA;AACvE,IAAA,WAAA,CAAY,aAA8B,EAAA;QACxC,KAAK,CAAC,aAAa,CAAC;;AAGvB;AAED,QAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAC;;;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { a as BaseItemProperty } from './index-
|
|
1
|
+
import { a as BaseItemProperty } from './index-CKrLHw3B.js';
|
|
2
2
|
import 'immer';
|
|
3
3
|
import 'reflect-metadata';
|
|
4
4
|
import '@sinclair/typebox';
|
|
@@ -30,4 +30,4 @@ class ItemProperty extends BaseItemProperty {
|
|
|
30
30
|
}
|
|
31
31
|
|
|
32
32
|
export { ItemProperty };
|
|
33
|
-
//# sourceMappingURL=ItemProperty-
|
|
33
|
+
//# sourceMappingURL=ItemProperty-CxNUwVnR.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ItemProperty-
|
|
1
|
+
{"version":3,"file":"ItemProperty-CxNUwVnR.js","sources":["../../src/node/ItemProperty/ItemProperty.ts"],"sourcesContent":["import { IItemProperty } from '@/interfaces'\nimport { BaseItemProperty } from '@/ItemProperty/BaseItemProperty'\nimport { CreatePropertyInstanceProps, ModelSchema, ModelValues, } from '@/types'\n\nexport class ItemProperty<PropertyType> extends BaseItemProperty<PropertyType> implements IItemProperty<PropertyType> {\n constructor(initialValues: Partial<CreatePropertyInstanceProps>) {\n super(initialValues)\n }\n}"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAIM,MAAO,YAA2B,SAAQ,gBAA8B,CAAA;AAC5E,IAAA,WAAA,CAAY,aAAmD,EAAA;QAC7D,KAAK,CAAC,aAAa,CAAC;;AAEvB;;;;"}
|
|
@@ -123,6 +123,11 @@ class BaseDb {
|
|
|
123
123
|
}
|
|
124
124
|
}
|
|
125
125
|
|
|
126
|
+
var BaseDb$1 = /*#__PURE__*/Object.freeze({
|
|
127
|
+
__proto__: null,
|
|
128
|
+
BaseDb: BaseDb
|
|
129
|
+
});
|
|
130
|
+
|
|
126
131
|
debug('app:item:service:actors:waitForDb');
|
|
127
132
|
const waitForDb$1 = fromCallback(({ sendBack }) => {
|
|
128
133
|
const _waitForDb = new Promise((resolve) => {
|
|
@@ -1344,7 +1349,7 @@ const addModelsToDb = fromCallback(({ sendBack, input: { context } }) => {
|
|
|
1344
1349
|
if (!models$1) {
|
|
1345
1350
|
return;
|
|
1346
1351
|
}
|
|
1347
|
-
const { models: SeedModels } = await import('./seed.schema.config-
|
|
1352
|
+
const { models: SeedModels } = await import('./seed.schema.config-1s-iWHq_.js');
|
|
1348
1353
|
const allModels = {
|
|
1349
1354
|
...SeedModels,
|
|
1350
1355
|
...models$1,
|
|
@@ -5685,7 +5690,7 @@ const resolveRelatedValue = fromCallback(({ sendBack, input: { context } }) => {
|
|
|
5685
5690
|
// }
|
|
5686
5691
|
// }
|
|
5687
5692
|
|
|
5688
|
-
const updateMetadata = async (metadataValues) => {
|
|
5693
|
+
const updateMetadata = async (metadataValues, propertyRecordSchema) => {
|
|
5689
5694
|
const appDb = BaseDb.getAppDb();
|
|
5690
5695
|
const { localId, ...rest } = metadataValues;
|
|
5691
5696
|
if (!localId) {
|
|
@@ -5850,7 +5855,7 @@ const hydrateFromDb = fromCallback(({ sendBack, input: { context } }) => {
|
|
|
5850
5855
|
if (propertyRecordSchema &&
|
|
5851
5856
|
propertyRecordSchema.storageType &&
|
|
5852
5857
|
propertyRecordSchema.storageType === 'ItemStorage') {
|
|
5853
|
-
const { Item } = await import('./index-
|
|
5858
|
+
const { Item } = await import('./index-Dv8GeuSw.js');
|
|
5854
5859
|
const item = await Item.find({
|
|
5855
5860
|
seedLocalId,
|
|
5856
5861
|
modelName,
|
|
@@ -6137,15 +6142,20 @@ const createMetadata = async (metadataValues, propertyRecordSchema) => {
|
|
|
6137
6142
|
const appDb = BaseDb.getAppDb();
|
|
6138
6143
|
metadataValues.localId = generateId();
|
|
6139
6144
|
if (!metadataValues.modelType && metadataValues.modelName) {
|
|
6140
|
-
metadataValues.modelType = metadataValues.modelName
|
|
6145
|
+
metadataValues.modelType = toSnakeCase$1(metadataValues.modelName);
|
|
6141
6146
|
}
|
|
6142
6147
|
const isItemStorage = propertyRecordSchema && propertyRecordSchema.storageType === 'ItemStorage';
|
|
6143
|
-
if (
|
|
6144
|
-
|
|
6145
|
-
|
|
6146
|
-
|
|
6147
|
-
|
|
6148
|
-
}
|
|
6148
|
+
// if (
|
|
6149
|
+
// propertyRecordSchema &&
|
|
6150
|
+
// propertyRecordSchema.localStorageDir &&
|
|
6151
|
+
// isItemStorage
|
|
6152
|
+
// ) {
|
|
6153
|
+
// const filename = `${metadataValues.seedUid || metadataValues.seedLocalId}${propertyRecordSchema.filenameSuffix}`
|
|
6154
|
+
// const filePath = path.join(propertyRecordSchema.localStorageDir, filename)
|
|
6155
|
+
// await fs.promises.writeFile(filePath, metadataValues.propertyValue)
|
|
6156
|
+
// metadataValues.propertyValue = filename
|
|
6157
|
+
// metadataValues.refValueType = 'file'
|
|
6158
|
+
// }
|
|
6149
6159
|
if (!isItemStorage && !metadataValues.schemaUid && propertyRecordSchema) {
|
|
6150
6160
|
const queryClient = BaseQueryClient.getQueryClient();
|
|
6151
6161
|
const easClient = BaseEasClient.getEasClient();
|
|
@@ -6284,9 +6294,6 @@ const saveImageSrc = fromCallback(({ sendBack, input: { context, event } }) => {
|
|
|
6284
6294
|
await BaseFileManager.resizeImage({ filePath, width: ImageSize.LARGE, height: ImageSize.LARGE });
|
|
6285
6295
|
await BaseFileManager.resizeImage({ filePath, width: ImageSize.EXTRA_LARGE, height: ImageSize.EXTRA_LARGE });
|
|
6286
6296
|
const refResolvedDisplayValue = await BaseFileManager.getContentUrlFromPath(filePath);
|
|
6287
|
-
if (!schemaUid) {
|
|
6288
|
-
schemaUid = getSchemaUidForSchemaDefinition(propertyName);
|
|
6289
|
-
}
|
|
6290
6297
|
let newLocalId;
|
|
6291
6298
|
if (!localId) {
|
|
6292
6299
|
const result = await createMetadata({
|
|
@@ -6481,9 +6488,13 @@ const saveItemStorage = fromCallback(({ sendBack, input: { context, event } }) =
|
|
|
6481
6488
|
if (queryRows && queryRows.length) {
|
|
6482
6489
|
propertyData = queryRows[0];
|
|
6483
6490
|
}
|
|
6484
|
-
if (!propertyData) {
|
|
6491
|
+
if (!propertyData && newValue) {
|
|
6492
|
+
const filename = `${seedUid || seedLocalId}${propertyRecordSchema.filenameSuffix}`;
|
|
6493
|
+
const writeToPath = `/files/${propertyRecordSchema.localStorageDir}/${filename}`;
|
|
6494
|
+
await fs.promises.writeFile(writeToPath, newValue);
|
|
6485
6495
|
const propertyDataRows = await createMetadata({
|
|
6486
6496
|
propertyName,
|
|
6497
|
+
propertyValue: filename,
|
|
6487
6498
|
modelType: modelName.toLowerCase(),
|
|
6488
6499
|
seedLocalId,
|
|
6489
6500
|
seedUid,
|
|
@@ -6866,8 +6877,8 @@ class BaseItemProperty {
|
|
|
6866
6877
|
}
|
|
6867
6878
|
this._subject.next(renderValue);
|
|
6868
6879
|
// TODO: Maybe have this only update the property?
|
|
6869
|
-
// if (context.seedLocalId) {
|
|
6870
|
-
// eventEmitter.emit(`
|
|
6880
|
+
// if (context.seedLocalId || context.seedUid) {
|
|
6881
|
+
// eventEmitter.emit(`property.${context.seedUid || context.seedLocalId}.${propertyName}.update`)
|
|
6871
6882
|
// }
|
|
6872
6883
|
// if (context.seedUid) {
|
|
6873
6884
|
// eventEmitter.emit(`item.${modelName}.${context.seedUid}.update`)
|
|
@@ -7435,9 +7446,9 @@ const createNewItem = async ({ modelName, ...propertyData }) => {
|
|
|
7435
7446
|
if (!modelName) {
|
|
7436
7447
|
throw new Error('A model name is required for createNewItem');
|
|
7437
7448
|
}
|
|
7438
|
-
const seedType = modelName
|
|
7449
|
+
const seedType = toSnakeCase$1(modelName);
|
|
7439
7450
|
const newSeedId = await createSeed({ type: seedType });
|
|
7440
|
-
const newVersionId = await createVersion({ seedLocalId: newSeedId });
|
|
7451
|
+
const newVersionId = await createVersion({ seedLocalId: newSeedId, seedType: toSnakeCase$1(modelName) });
|
|
7441
7452
|
const propertySchemas = getModel(modelName)?.schema;
|
|
7442
7453
|
for (const [propertyName, propertyValue] of Object.entries(propertyData)) {
|
|
7443
7454
|
let propertyRecordSchema;
|
|
@@ -7452,6 +7463,7 @@ const createNewItem = async ({ modelName, ...propertyData }) => {
|
|
|
7452
7463
|
modelName,
|
|
7453
7464
|
}, propertyRecordSchema);
|
|
7454
7465
|
}
|
|
7466
|
+
eventEmitter.emit('item.requestAll', { modelName });
|
|
7455
7467
|
return {
|
|
7456
7468
|
modelName,
|
|
7457
7469
|
seedLocalId: newSeedId,
|
|
@@ -7633,8 +7645,9 @@ class BaseItem {
|
|
|
7633
7645
|
if (!props.modelName) {
|
|
7634
7646
|
throw new Error('Model name is required to create an item');
|
|
7635
7647
|
}
|
|
7636
|
-
const { seedLocalId, versionLocalId,
|
|
7648
|
+
const { seedLocalId, versionLocalId, } = await createNewItem({
|
|
7637
7649
|
modelName: props.modelName,
|
|
7650
|
+
...props,
|
|
7638
7651
|
});
|
|
7639
7652
|
props.seedLocalId = seedLocalId;
|
|
7640
7653
|
props.latestVersionLocalId = versionLocalId;
|
|
@@ -7722,6 +7735,9 @@ class BaseItem {
|
|
|
7722
7735
|
get latestVersionUid() {
|
|
7723
7736
|
return this.serviceContext.latestVersionUid;
|
|
7724
7737
|
}
|
|
7738
|
+
get latestVersionLocalId() {
|
|
7739
|
+
return this.serviceContext.latestVersionLocalId;
|
|
7740
|
+
}
|
|
7725
7741
|
get modelName() {
|
|
7726
7742
|
return this.serviceContext.modelName;
|
|
7727
7743
|
}
|
|
@@ -7731,6 +7747,12 @@ class BaseItem {
|
|
|
7731
7747
|
get attestationCreatedAt() {
|
|
7732
7748
|
return this.serviceContext.attestationCreatedAt;
|
|
7733
7749
|
}
|
|
7750
|
+
get versionsCount() {
|
|
7751
|
+
return this.serviceContext.versionsCount;
|
|
7752
|
+
}
|
|
7753
|
+
get lastVersionPublishedAt() {
|
|
7754
|
+
return this.serviceContext.lastVersionPublishedAt;
|
|
7755
|
+
}
|
|
7734
7756
|
unload() {
|
|
7735
7757
|
this._subscription?.unsubscribe();
|
|
7736
7758
|
this._service.stop();
|
|
@@ -7783,7 +7805,7 @@ const initItem = async () => {
|
|
|
7783
7805
|
Item$2 = (await Promise.resolve().then(function () { return Item$1; })).Item;
|
|
7784
7806
|
}
|
|
7785
7807
|
if (!isBrowser()) {
|
|
7786
|
-
Item$2 = (await import('./Item-
|
|
7808
|
+
Item$2 = (await import('./Item-DI3FxVPV.js')).Item;
|
|
7787
7809
|
}
|
|
7788
7810
|
};
|
|
7789
7811
|
|
|
@@ -7793,17 +7815,17 @@ const initItemProperty = async () => {
|
|
|
7793
7815
|
ItemProperty$2 = (await Promise.resolve().then(function () { return ItemProperty$1; })).ItemProperty;
|
|
7794
7816
|
}
|
|
7795
7817
|
if (!isBrowser()) {
|
|
7796
|
-
ItemProperty$2 = (await import('./ItemProperty-
|
|
7818
|
+
ItemProperty$2 = (await import('./ItemProperty-CxNUwVnR.js')).ItemProperty;
|
|
7797
7819
|
}
|
|
7798
7820
|
};
|
|
7799
7821
|
|
|
7800
7822
|
let Db;
|
|
7801
7823
|
const initDb = async () => {
|
|
7802
7824
|
if (isBrowser()) {
|
|
7803
|
-
Db = (await import('./Db-
|
|
7825
|
+
Db = (await import('./Db-BwkMqaQe.js')).Db;
|
|
7804
7826
|
}
|
|
7805
7827
|
if (!isBrowser()) {
|
|
7806
|
-
Db = (await import('./Db-
|
|
7828
|
+
Db = (await import('./Db-jJH2s0gO.js')).Db;
|
|
7807
7829
|
}
|
|
7808
7830
|
// TODO: Add config for React Native
|
|
7809
7831
|
};
|
|
@@ -8255,6 +8277,7 @@ const useItems = ({ modelName, deleted = false }) => {
|
|
|
8255
8277
|
}
|
|
8256
8278
|
listenerRef.current();
|
|
8257
8279
|
});
|
|
8280
|
+
readFromDb();
|
|
8258
8281
|
return () => {
|
|
8259
8282
|
eventEmitter.removeListener('item.requestAll', readFromDb);
|
|
8260
8283
|
};
|
|
@@ -8654,12 +8677,19 @@ const client = {
|
|
|
8654
8677
|
arweaveDomain,
|
|
8655
8678
|
filesDir,
|
|
8656
8679
|
});
|
|
8657
|
-
const { models: internalModels } = await import('./seed.schema.config-
|
|
8680
|
+
const { models: internalModels } = await import('./seed.schema.config-1s-iWHq_.js');
|
|
8658
8681
|
for (const [key, value] of Object.entries(internalModels)) {
|
|
8659
8682
|
setModel(key, value);
|
|
8660
8683
|
}
|
|
8661
8684
|
},
|
|
8662
|
-
setAddresses: (addresses) => {
|
|
8685
|
+
setAddresses: async (addresses) => {
|
|
8686
|
+
const { BaseDb } = await Promise.resolve().then(function () { return BaseDb$1; });
|
|
8687
|
+
if (!BaseDb) {
|
|
8688
|
+
throw new Error('BaseDb not found');
|
|
8689
|
+
}
|
|
8690
|
+
if (!BaseDb.PlatformClass) {
|
|
8691
|
+
await initDb();
|
|
8692
|
+
}
|
|
8663
8693
|
const appDb = BaseDb.getAppDb();
|
|
8664
8694
|
if (!appDb) {
|
|
8665
8695
|
throw new Error('App DB not found');
|
|
@@ -8719,4 +8749,4 @@ const client = {
|
|
|
8719
8749
|
enableMapSet();
|
|
8720
8750
|
|
|
8721
8751
|
export { BaseItem as B, Db as D, FileManager as F, Item as I, Json as J, List as L, Model as M, Property as P, Relation as R, Text as T, BaseItemProperty as a, BaseDb as b, ImageSrc as c, Item$2 as d, ItemProperty$2 as e, useItem as f, useItemProperties as g, useCreateItem as h, useItemProperty as i, useDeleteItem as j, useGlobalServiceStatus as k, usePublishItem as l, usePersistedSnapshots as m, useServices as n, useService as o, getCorrectId as p, getGlobalService as q, eventEmitter as r, client as s, useItems as u, withSeed as w };
|
|
8722
|
-
//# sourceMappingURL=index-
|
|
8752
|
+
//# sourceMappingURL=index-CKrLHw3B.js.map
|