UNPKG

event-local

Version:

Event client

47 lines 2.33 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const mysql_async_adapter_1 = require("mysql-async-adapter"); class MySQLModule { async onInit() { this.mysql = await new mysql_async_adapter_1.default({ host: "127.0.0.1", user: "root", password: "Saq33rrT", database: "sys" }).connect(); const res = await this.mysql.query("CREATE DATABASE IF NOT EXISTS aux_events;"); const res2 = await this.mysql.query("use aux_events;"); // Хранилище событий const res3 = await this.mysql.query(`create table if not exists events ( event_id bigint(255) UNSIGNED NOT NULL, event_type varchar(1000), event_data varchar(1000) NOT NULL, entity_type VARCHAR(1000) NOT NULL, entity_id varchar(1000) NOT NULL, triggering_event VARCHAR(1000), create_at timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP );`); if (res3["warningCount"] == 0) await this.mysql.query("ALTER TABLE `events` ADD PRIMARY KEY (`event_id`)"); // Хранилище сущностей (1 строка 1 сущность) const res4 = await this.mysql.query(`create table if not exists entities ( entity_type VARCHAR(1000), entity_id VARCHAR(1000), entity_version VARCHAR(1000) NOT NULL, PRIMARY KEY(entity_type, entity_id) );`); // хранилище снимков const res5 = await this.mysql.query(`create table if not exists snapshots ( entity_type VARCHAR(1000), entity_id VARCHAR(1000), entity_version VARCHAR(1000), snapshot_type VARCHAR(1000) NOT NULL, snapshot_json VARCHAR(1000) NOT NULL, triggering_events VARCHAR(1000), PRIMARY KEY (entity_type, entity_id, entity_version) );`); MySQLModule.db = this.mysql; } } exports.default = MySQLModule; //# sourceMappingURL=MySQLModule.js.map