feat: init
This commit is contained in:
7
node_modules/db0/dist/connectors/libsql/core.d.mts
generated
vendored
Normal file
7
node_modules/db0/dist/connectors/libsql/core.d.mts
generated
vendored
Normal file
@@ -0,0 +1,7 @@
|
||||
import type { Client } from "@libsql/client";
|
||||
import type { Connector } from "db0";
|
||||
export type ConnectorOptions = {
|
||||
getClient: () => Client;
|
||||
name?: string;
|
||||
};
|
||||
export default function libSqlCoreConnector(opts: ConnectorOptions): Connector<Client>;
|
||||
44
node_modules/db0/dist/connectors/libsql/core.mjs
generated
vendored
Normal file
44
node_modules/db0/dist/connectors/libsql/core.mjs
generated
vendored
Normal file
@@ -0,0 +1,44 @@
|
||||
import { BoundableStatement } from "../_internal/statement.mjs";
|
||||
export default function libSqlCoreConnector(opts) {
|
||||
const query = (sql) => opts.getClient().execute(sql);
|
||||
return {
|
||||
name: opts.name || "libsql-core",
|
||||
dialect: "libsql",
|
||||
getInstance: async () => opts.getClient(),
|
||||
exec: (sql) => query(sql),
|
||||
prepare: (sql) => new StatementWrapper(sql, query),
|
||||
dispose: () => {
|
||||
opts.getClient()?.close?.();
|
||||
}
|
||||
};
|
||||
}
|
||||
class StatementWrapper extends BoundableStatement {
|
||||
#query;
|
||||
#sql;
|
||||
constructor(sql, query) {
|
||||
super();
|
||||
this.#sql = sql;
|
||||
this.#query = query;
|
||||
}
|
||||
async all(...params) {
|
||||
const res = await this.#query({
|
||||
sql: this.#sql,
|
||||
args: params
|
||||
});
|
||||
return res.rows;
|
||||
}
|
||||
async run(...params) {
|
||||
const res = await this.#query({
|
||||
sql: this.#sql,
|
||||
args: params
|
||||
});
|
||||
return { ...res };
|
||||
}
|
||||
async get(...params) {
|
||||
const res = await this.#query({
|
||||
sql: this.#sql,
|
||||
args: params
|
||||
});
|
||||
return res.rows[0];
|
||||
}
|
||||
}
|
||||
4
node_modules/db0/dist/connectors/libsql/http.d.mts
generated
vendored
Normal file
4
node_modules/db0/dist/connectors/libsql/http.d.mts
generated
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
import type { Config, Client } from "@libsql/client";
|
||||
import type { Connector } from "db0";
|
||||
export type ConnectorOptions = Config;
|
||||
export default function libSqlConnector(opts: ConnectorOptions): Connector<Client>;
|
||||
15
node_modules/db0/dist/connectors/libsql/http.mjs
generated
vendored
Normal file
15
node_modules/db0/dist/connectors/libsql/http.mjs
generated
vendored
Normal file
@@ -0,0 +1,15 @@
|
||||
import { createClient } from "@libsql/client/http";
|
||||
import libSqlCore from "./core.mjs";
|
||||
export default function libSqlConnector(opts) {
|
||||
let _client;
|
||||
const getClient = () => {
|
||||
if (!_client) {
|
||||
_client = createClient(opts);
|
||||
}
|
||||
return _client;
|
||||
};
|
||||
return libSqlCore({
|
||||
name: "libsql-http",
|
||||
getClient
|
||||
});
|
||||
}
|
||||
4
node_modules/db0/dist/connectors/libsql/node.d.mts
generated
vendored
Normal file
4
node_modules/db0/dist/connectors/libsql/node.d.mts
generated
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
import type { Config, Client } from "@libsql/client";
|
||||
import type { Connector } from "db0";
|
||||
export type ConnectorOptions = Config;
|
||||
export default function libSqlConnector(opts: ConnectorOptions): Connector<Client>;
|
||||
15
node_modules/db0/dist/connectors/libsql/node.mjs
generated
vendored
Normal file
15
node_modules/db0/dist/connectors/libsql/node.mjs
generated
vendored
Normal file
@@ -0,0 +1,15 @@
|
||||
import { createClient } from "@libsql/client";
|
||||
import libSqlCore from "./core.mjs";
|
||||
export default function libSqlConnector(opts) {
|
||||
let _client;
|
||||
const getClient = () => {
|
||||
if (!_client) {
|
||||
_client = createClient(opts);
|
||||
}
|
||||
return _client;
|
||||
};
|
||||
return libSqlCore({
|
||||
name: "libsql-node",
|
||||
getClient
|
||||
});
|
||||
}
|
||||
4
node_modules/db0/dist/connectors/libsql/web.d.mts
generated
vendored
Normal file
4
node_modules/db0/dist/connectors/libsql/web.d.mts
generated
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
import type { Config, Client } from "@libsql/client";
|
||||
import type { Connector } from "db0";
|
||||
export type ConnectorOptions = Config;
|
||||
export default function libSqlConnector(opts: ConnectorOptions): Connector<Client>;
|
||||
15
node_modules/db0/dist/connectors/libsql/web.mjs
generated
vendored
Normal file
15
node_modules/db0/dist/connectors/libsql/web.mjs
generated
vendored
Normal file
@@ -0,0 +1,15 @@
|
||||
import { createClient } from "@libsql/client/http";
|
||||
import libSqlCore from "./core.mjs";
|
||||
export default function libSqlConnector(opts) {
|
||||
let _client;
|
||||
const getClient = () => {
|
||||
if (!_client) {
|
||||
_client = createClient(opts);
|
||||
}
|
||||
return _client;
|
||||
};
|
||||
return libSqlCore({
|
||||
name: "libsql-web",
|
||||
getClient
|
||||
});
|
||||
}
|
||||
Reference in New Issue
Block a user