UNPKG

mastra-browser-core

Version:

The core foundation of the Mastra framework, providing essential components and interfaces for building AI-powered applications.

1 lines 7.34 kB
{"version":3,"sources":["../src/storage/default-proxy-storage.ts"],"names":["MastraStorage","__publicField","__name"],"mappings":"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","file":"chunk-AUCYZR4G.cjs","sourcesContent":["import type { MessageType, StorageThreadType } from '../memory/types';\nimport { MastraStorage } from './base';\nimport type { TABLE_NAMES } from './constants';\n// import type { DefaultStorage, LibSQLConfig } from './libsql';\nimport type { DefaultStorage, PGliteConfig } from './pglite';\nimport type { EvalRow, StorageColumn, StorageGetMessagesArg } from './types';\n\n/**\n * A proxy for the DefaultStorage (now PGliteStore) to allow for dynamically loading the storage in a constructor\n */\nexport class DefaultProxyStorage extends MastraStorage {\n private storage: DefaultStorage | null = null;\n private storageConfig: PGliteConfig;\n private isInitializingPromise: Promise<void> | null = null;\n\n constructor({ config }: { config: PGliteConfig }) {\n super({ name: 'DefaultStorage' });\n this.storageConfig = config;\n }\n\n private setupStorage() {\n if (!this.isInitializingPromise) {\n this.isInitializingPromise = new Promise((resolve, reject) => {\n import('./pglite')\n .then(({ DefaultStorage }) => {\n this.storage = new DefaultStorage({ config: this.storageConfig });\n resolve();\n })\n .catch(reject);\n });\n }\n\n return this.isInitializingPromise;\n }\n\n async createTable({\n tableName,\n schema,\n }: {\n tableName: TABLE_NAMES;\n schema: Record<string, StorageColumn>;\n }): Promise<void> {\n await this.setupStorage();\n return this.storage!.createTable({ tableName, schema });\n }\n\n async clearTable({ tableName }: { tableName: TABLE_NAMES }): Promise<void> {\n await this.setupStorage();\n return this.storage!.clearTable({ tableName });\n }\n\n async insert({ tableName, record }: { tableName: TABLE_NAMES; record: Record<string, any> }): Promise<void> {\n await this.setupStorage();\n return this.storage!.insert({ tableName, record });\n }\n\n async batchInsert({ tableName, records }: { tableName: TABLE_NAMES; records: Record<string, any>[] }): Promise<void> {\n await this.setupStorage();\n return this.storage!.batchInsert({ tableName, records });\n }\n\n async load<R>({ tableName, keys }: { tableName: TABLE_NAMES; keys: Record<string, string> }): Promise<R | null> {\n await this.setupStorage();\n return this.storage!.load<R>({ tableName, keys });\n }\n\n async getThreadById({ threadId }: { threadId: string }): Promise<StorageThreadType | null> {\n await this.setupStorage();\n return this.storage!.getThreadById({ threadId });\n }\n\n async getThreadsByResourceId({ resourceId }: { resourceId: string }): Promise<StorageThreadType[]> {\n await this.setupStorage();\n return this.storage!.getThreadsByResourceId({ resourceId });\n }\n\n async saveThread({ thread }: { thread: StorageThreadType }): Promise<StorageThreadType> {\n await this.setupStorage();\n return this.storage!.saveThread({ thread });\n }\n\n async updateThread({\n id,\n title,\n metadata,\n }: {\n id: string;\n title: string;\n metadata: Record<string, unknown>;\n }): Promise<StorageThreadType> {\n await this.setupStorage();\n return this.storage!.updateThread({ id, title, metadata });\n }\n\n async deleteThread({ threadId }: { threadId: string }): Promise<void> {\n await this.setupStorage();\n return this.storage!.deleteThread({ threadId });\n }\n\n async getMessages<T extends MessageType[]>({ threadId, selectBy }: StorageGetMessagesArg): Promise<T> {\n await this.setupStorage();\n return this.storage!.getMessages<T>({ threadId, selectBy });\n }\n\n async saveMessages({ messages }: { messages: MessageType[] }): Promise<MessageType[]> {\n await this.setupStorage();\n return this.storage!.saveMessages({ messages });\n }\n\n async getEvalsByAgentName(agentName: string, type?: 'test' | 'live'): Promise<EvalRow[]> {\n await this.setupStorage();\n return this.storage!.getEvalsByAgentName(agentName, type);\n }\n\n async getTraces(options?: {\n name?: string;\n scope?: string;\n page: number;\n perPage: number;\n attributes?: Record<string, string>;\n }): Promise<any[]> {\n await this.setupStorage();\n return this.storage!.getTraces(options);\n }\n}\n"]}