nukak-mysql
Version:
flexible and efficient ORM, with declarative JSON syntax and smart type-safety
17 lines • 2.23 kB
JavaScript
import { createPool } from 'mysql2/promise';
import { AbstractQuerierPool } from 'nukak/querier';
import { MySql2Querier } from './mysql2Querier.js';
export class MySql2QuerierPool extends AbstractQuerierPool {
pool;
constructor(opts, extra) {
super(extra);
this.pool = createPool(opts);
}
async getQuerier() {
return new MySql2Querier(() => this.pool.getConnection(), this.extra);
}
async end() {
await this.pool.end();
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXlzcWwyUXVlcmllclBvb2wuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvbXlzcWwyUXVlcmllclBvb2wudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBK0IsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFcEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRW5ELE1BQU0sT0FBTyxpQkFBa0IsU0FBUSxtQkFBa0M7SUFDOUQsSUFBSSxDQUFPO0lBRXBCLFlBQVksSUFBaUIsRUFBRSxLQUFvQjtRQUNqRCxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDYixJQUFJLENBQUMsSUFBSSxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRUQsS0FBSyxDQUFDLFVBQVU7UUFDZCxPQUFPLElBQUksYUFBYSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3hFLENBQUM7SUFFRCxLQUFLLENBQUMsR0FBRztRQUNQLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUN4QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVQb29sLCB0eXBlIFBvb2wsIHR5cGUgUG9vbE9wdGlvbnMgfSBmcm9tICdteXNxbDIvcHJvbWlzZSc7XG5pbXBvcnQgeyBBYnN0cmFjdFF1ZXJpZXJQb29sIH0gZnJvbSAnbnVrYWsvcXVlcmllcic7XG5pbXBvcnQgdHlwZSB7IEV4dHJhT3B0aW9ucyB9IGZyb20gJ251a2FrL3R5cGUnO1xuaW1wb3J0IHsgTXlTcWwyUXVlcmllciB9IGZyb20gJy4vbXlzcWwyUXVlcmllci5qcyc7XG5cbmV4cG9ydCBjbGFzcyBNeVNxbDJRdWVyaWVyUG9vbCBleHRlbmRzIEFic3RyYWN0UXVlcmllclBvb2w8TXlTcWwyUXVlcmllcj4ge1xuICByZWFkb25seSBwb29sOiBQb29sO1xuXG4gIGNvbnN0cnVjdG9yKG9wdHM6IFBvb2xPcHRpb25zLCBleHRyYT86IEV4dHJhT3B0aW9ucykge1xuICAgIHN1cGVyKGV4dHJhKTtcbiAgICB0aGlzLnBvb2wgPSBjcmVhdGVQb29sKG9wdHMpO1xuICB9XG5cbiAgYXN5bmMgZ2V0UXVlcmllcigpIHtcbiAgICByZXR1cm4gbmV3IE15U3FsMlF1ZXJpZXIoKCkgPT4gdGhpcy5wb29sLmdldENvbm5lY3Rpb24oKSwgdGhpcy5leHRyYSk7XG4gIH1cblxuICBhc3luYyBlbmQoKSB7XG4gICAgYXdhaXQgdGhpcy5wb29sLmVuZCgpO1xuICB9XG59XG4iXX0=