AK-21/Graphite-Industrial-Intelligence
0
1"use strict";2var __defProp = Object.defineProperty;3var __getOwnPropDesc = Object.getOwnPropertyDescriptor;4var __getOwnPropNames = Object.getOwnPropertyNames;5var __hasOwnProp = Object.prototype.hasOwnProperty;6var __export = (target, all) => {7 for (var name in all)8 __defProp(target, name, { get: all[name], enumerable: true });9};10var __copyProps = (to, from, except, desc) => {11 if (from && typeof from === "object" || typeof from === "function") {12 for (let key of __getOwnPropNames(from))13 if (!__hasOwnProp.call(to, key) && key !== except)14 __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });15 }16 return to;17};18var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);19var driver_exports = {};20__export(driver_exports, {21 PgliteDatabase: () => PgliteDatabase,22 PgliteDriver: () => PgliteDriver,23 drizzle: () => drizzle24});25module.exports = __toCommonJS(driver_exports);26var import_pglite = require("@electric-sql/pglite");27var import_entity = require("../entity.cjs");28var import_logger = require("../logger.cjs");29var import_db = require("../pg-core/db.cjs");30var import_dialect = require("../pg-core/dialect.cjs");31var import_relations = require("../relations.cjs");32var import_utils = require("../utils.cjs");33var import_session = require("./session.cjs");34class PgliteDriver {35 constructor(client, dialect, options = {}) {36 this.client = client;37 this.dialect = dialect;38 this.options = options;39 }40 static [import_entity.entityKind] = "PgliteDriver";41 createSession(schema) {42 return new import_session.PgliteSession(this.client, this.dialect, schema, {43 logger: this.options.logger,44 cache: this.options.cache45 });46 }47}48class PgliteDatabase extends import_db.PgDatabase {49 static [import_entity.entityKind] = "PgliteDatabase";50}51function construct(client, config = {}) {52 const dialect = new import_dialect.PgDialect({ casing: config.casing });53 let logger;54 if (config.logger === true) {55 logger = new import_logger.DefaultLogger();56 } else if (config.logger !== false) {57 logger = config.logger;58 }59 let schema;60 if (config.schema) {61 const tablesConfig = (0, import_relations.extractTablesRelationalConfig)(62 config.schema,63 import_relations.createTableRelationsHelpers64 );65 schema = {66 fullSchema: config.schema,67 schema: tablesConfig.tables,68 tableNamesMap: tablesConfig.tableNamesMap69 };70 }71 const driver = new PgliteDriver(client, dialect, { logger, cache: config.cache });72 const session = driver.createSession(schema);73 const db = new PgliteDatabase(dialect, session, schema);74 db.$client = client;75 db.$cache = config.cache;76 if (db.$cache) {77 db.$cache["invalidate"] = config.cache?.onMutate;78 }79 return db;80}81function drizzle(...params) {82 if (params[0] === void 0 || typeof params[0] === "string") {83 const instance = new import_pglite.PGlite(params[0]);84 return construct(instance, params[1]);85 }86 if ((0, import_utils.isConfig)(params[0])) {87 const { connection, client, ...drizzleConfig } = params[0];88 if (client) return construct(client, drizzleConfig);89 if (typeof connection === "object") {90 const { dataDir, ...options } = connection;91 const instance2 = new import_pglite.PGlite(dataDir, options);92 return construct(instance2, drizzleConfig);93 }94 const instance = new import_pglite.PGlite(connection);95 return construct(instance, drizzleConfig);96 }97 return construct(params[0], params[1]);98}99((drizzle2) => {100 function mock(config) {101 return construct({}, config);102 }103 drizzle2.mock = mock;104})(drizzle || (drizzle = {}));105// Annotate the CommonJS export names for ESM import in node:1060 && (module.exports = {107 PgliteDatabase,108 PgliteDriver,109 drizzle110});111//# sourceMappingURL=driver.cjs.map