CoolFace
Apppublic

AK-21/Graphite-Industrial-Intelligence

sourceHugging Faceupdated 3mo agoView on Hugging Face
0likes
driver.js42 linesDownload Raw Back to singlestore-proxy
1import { entityKind } from "../entity.js";2import { DefaultLogger } from "../logger.js";3import {4  createTableRelationsHelpers,5  extractTablesRelationalConfig6} from "../relations.js";7import { SingleStoreDatabase } from "../singlestore-core/db.js";8import { SingleStoreDialect } from "../singlestore-core/dialect.js";9import {10  SingleStoreRemoteSession11} from "./session.js";12class SingleStoreRemoteDatabase extends SingleStoreDatabase {13  static [entityKind] = "SingleStoreRemoteDatabase";14}15function drizzle(callback, config = {}) {16  const dialect = new SingleStoreDialect({ casing: config.casing });17  let logger;18  if (config.logger === true) {19    logger = new DefaultLogger();20  } else if (config.logger !== false) {21    logger = config.logger;22  }23  let schema;24  if (config.schema) {25    const tablesConfig = extractTablesRelationalConfig(26      config.schema,27      createTableRelationsHelpers28    );29    schema = {30      fullSchema: config.schema,31      schema: tablesConfig.tables,32      tableNamesMap: tablesConfig.tableNamesMap33    };34  }35  const session = new SingleStoreRemoteSession(callback, dialect, schema, { logger });36  return new SingleStoreRemoteDatabase(dialect, session, schema);37}38export {39  SingleStoreRemoteDatabase,40  drizzle41};42//# sourceMappingURL=driver.js.map