public commit

This commit is contained in:
dswbx
2024-11-16 12:01:47 +01:00
commit 90f80c4280
582 changed files with 49291 additions and 0 deletions

View File

@@ -0,0 +1,23 @@
import type { KyselyPlugin, UnknownRow } from "kysely";
// @todo: add test
export class KyselyPluginRunner {
protected plugins: Set<KyselyPlugin>;
constructor(plugins: KyselyPlugin[] = []) {
this.plugins = new Set(plugins);
}
async transformResultRows<T>(rows: T[]): Promise<T[]> {
let copy = rows;
for (const plugin of this.plugins) {
const res = await plugin.transformResult({
queryId: "1" as any,
result: { rows: copy as UnknownRow[] },
});
copy = res.rows as T[];
}
return copy as T[];
}
}