UNPKG

@agentscope/studio

Version:

AgentScope Studio is a powerful local monitoring and visualization tool designed to provide real-time insights into your system's performance and behavior.

55 lines (54 loc) 2.87 kB
"use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.initializeDatabase = void 0; const typeorm_1 = require("typeorm"); const InputRequest_1 = require("./dao/InputRequest"); const Run_1 = require("./dao/Run"); const migrations_1 = require("./migrations"); const FridayApp_1 = require("./models/FridayApp"); const FridayAppView_1 = require("./models/FridayAppView"); const InputRequest_2 = require("./models/InputRequest"); const Message_1 = require("./models/Message"); const ModelInvocationView_1 = require("./models/ModelInvocationView"); const Reply_1 = require("./models/Reply"); const Run_2 = require("./models/Run"); const RunView_1 = require("./models/RunView"); const Trace_1 = require("./models/Trace"); const initializeDatabase = (databaseConfig) => __awaiter(void 0, void 0, void 0, function* () { try { const options = Object.assign(Object.assign({}, databaseConfig), { entities: [ Run_2.RunTable, RunView_1.RunView, Message_1.MessageTable, Reply_1.ReplyTable, InputRequest_2.InputRequestTable, Trace_1.SpanTable, ModelInvocationView_1.ModelInvocationView, FridayApp_1.FridayAppMessageTable, FridayApp_1.FridayAppReplyTable, FridayAppView_1.FridayAppReplyView, ], synchronize: true, migrations: migrations_1.migrations, migrationsRun: true, logging: false }); const dataSource = new typeorm_1.DataSource(options); yield dataSource.initialize(); const printingOptions = Object.assign(Object.assign({}, options), { entities: undefined, migrations: undefined }); console.debug(`Database initialized with options: ${JSON.stringify(printingOptions, null, 2)}`); console.debug('Refresh the database ...'); yield Run_1.RunDao.updateRunStatusAtBeginning(); yield InputRequest_1.InputRequestDao.updateInputRequests(); console.debug('Done'); } catch (error) { console.error('Error initializing database', error); throw error; } }); exports.initializeDatabase = initializeDatabase;