@event-driven-io/pongo 0.17.0-beta.19 → 0.17.0-beta.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/dist/{chunk-HZZ76RUC.cjs → chunk-D2PHLX7P.cjs} +1 -1
  2. package/dist/{chunk-HZZ76RUC.cjs.map → chunk-D2PHLX7P.cjs.map} +1 -1
  3. package/dist/{chunk-T5YVXV53.js → chunk-EJBGQHYG.js} +2 -2
  4. package/dist/{chunk-56GGH7CW.cjs → chunk-GK3XLHHQ.cjs} +12 -12
  5. package/dist/{chunk-56GGH7CW.cjs.map → chunk-GK3XLHHQ.cjs.map} +1 -1
  6. package/dist/{chunk-IBYIIPWV.js → chunk-RM3EUVJ6.js} +1 -1
  7. package/dist/chunk-RM3EUVJ6.js.map +1 -0
  8. package/dist/cli.cjs +21 -16
  9. package/dist/cli.cjs.map +1 -1
  10. package/dist/cli.js +10 -5
  11. package/dist/cli.js.map +1 -1
  12. package/dist/cloudflare.cjs +10 -10
  13. package/dist/cloudflare.d.cts +2 -2
  14. package/dist/cloudflare.d.ts +2 -2
  15. package/dist/cloudflare.js +2 -2
  16. package/dist/{index-C2T_cRSs.d.ts → index-BzpSM4g3.d.ts} +1 -1
  17. package/dist/{index-486WMLOn.d.cts → index-CoOj81r1.d.cts} +1 -1
  18. package/dist/index.cjs +2 -2
  19. package/dist/index.d.cts +2 -2
  20. package/dist/index.d.ts +2 -2
  21. package/dist/index.js +1 -1
  22. package/dist/pg.cjs +16 -16
  23. package/dist/pg.d.cts +1 -1
  24. package/dist/pg.d.ts +1 -1
  25. package/dist/pg.js +1 -1
  26. package/dist/{pongoCollectionSchemaComponent-JWAbt4LN.d.cts → pongoCollectionSchemaComponent-OLLG1OUL.d.cts} +1 -0
  27. package/dist/{pongoCollectionSchemaComponent-JWAbt4LN.d.ts → pongoCollectionSchemaComponent-OLLG1OUL.d.ts} +1 -0
  28. package/dist/shim.cjs +5 -5
  29. package/dist/shim.d.cts +1 -1
  30. package/dist/shim.d.ts +1 -1
  31. package/dist/shim.js +1 -1
  32. package/dist/sqlite3.cjs +10 -10
  33. package/dist/sqlite3.d.cts +2 -2
  34. package/dist/sqlite3.d.ts +2 -2
  35. package/dist/sqlite3.js +2 -2
  36. package/package.json +2 -2
  37. package/dist/chunk-IBYIIPWV.js.map +0 -1
  38. /package/dist/{chunk-T5YVXV53.js.map → chunk-EJBGQHYG.js.map} +0 -0
package/dist/cli.js CHANGED
@@ -5,7 +5,7 @@ import {
5
5
  pongoDatabaseDriverRegistry,
6
6
  pongoSchema,
7
7
  toDbSchemaMetadata
8
- } from "./chunk-IBYIIPWV.js";
8
+ } from "./chunk-RM3EUVJ6.js";
9
9
 
10
10
  // src/cli.ts
11
11
  import { Command as Command4 } from "commander";
@@ -173,8 +173,12 @@ migrateCommand.command("run").description("Run database migrations").option(
173
173
  return previous.concat([value]);
174
174
  },
175
175
  []
176
- ).option("-f, --config <path>", "Path to configuration file with Pongo config").option("--dr, --dryRun", "Perform dry run without commiting changes", false).action(async (options) => {
177
- const { collection, dryRun, databaseName, databaseDriver } = options;
176
+ ).option("-f, --config <path>", "Path to configuration file with Pongo config").option("--dr, --dryRun", "Perform dry run without commiting changes", false).option(
177
+ "--t, --timeout <ms>",
178
+ "Set the migration timeout in milliseconds",
179
+ parseInt
180
+ ).action(async (options) => {
181
+ const { collection, dryRun, databaseName, databaseDriver, timeoutMs } = options;
178
182
  const connectionString = options.connectionString ?? process.env.DB_CONNECTION_STRING;
179
183
  const databaseType = options.databaseType ?? parseConnectionString(connectionString).databaseType;
180
184
  let collectionNames;
@@ -204,7 +208,8 @@ migrateCommand.command("run").description("Run database migrations").option(
204
208
  });
205
209
  const pool = dumbo({ connectionString, driverType });
206
210
  await runSQLMigrations(pool, migrations, {
207
- dryRun
211
+ dryRun,
212
+ migrationTimeoutMs: timeoutMs
208
213
  });
209
214
  });
210
215
  migrateCommand.command("sql").description("Generate SQL for database migration").option(
@@ -355,7 +360,7 @@ var prettifyLogs = (logLevel) => {
355
360
  var startRepl = async (options) => {
356
361
  setLogLevel(process.env.DUMBO_LOG_LEVEL ?? options.logging.logLevel);
357
362
  setLogStyle(process.env.DUMBO_LOG_STYLE ?? options.logging.logStyle);
358
- console.log(color.green("Starting Pongo Shell (version: 0.17.0-beta.19)"));
363
+ console.log(color.green("Starting Pongo Shell (version: 0.17.0-beta.20)"));
359
364
  if (options.logging.printOptions) {
360
365
  console.log(color.green("With Options:"));
361
366
  console.log(prettyJson(options));
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/cli.ts","../src/commandLine/configFile.ts","../src/commandLine/migrate.ts","../src/commandLine/shell.ts"],"sourcesContent":["#!/usr/bin/env node\nimport { Command } from 'commander';\nimport { configCommand, migrateCommand, shellCommand } from './commandLine';\n\nconst program = new Command();\n\nprogram.name('pongo').description('CLI tool for Pongo');\n\nprogram.addCommand(configCommand);\nprogram.addCommand(migrateCommand);\nprogram.addCommand(shellCommand);\n\nprogram.parse(process.argv);\n\nexport default program;\n","import { Command } from 'commander';\nimport fs from 'node:fs';\nimport {\n objectEntries,\n toDbSchemaMetadata,\n type PongoDbSchemaMetadata,\n type PongoSchemaConfig,\n} from '../core';\n\nconst formatTypeName = (input: string): string => {\n if (input.length === 0) {\n return input;\n }\n\n let formatted = input.charAt(0).toUpperCase() + input.slice(1);\n\n if (formatted.endsWith('s')) {\n formatted = formatted.slice(0, -1);\n }\n\n return formatted;\n};\n\nconst sampleConfig = (collectionNames: string[] = ['users']) => {\n const types = collectionNames\n .map(\n (name) =>\n `export type ${formatTypeName(name)} = { name: string; description: string; date: Date }`,\n )\n .join('\\n');\n\n const collections = collectionNames\n .map(\n (name) =>\n ` ${name}: pongoSchema.collection<${formatTypeName(name)}>('${name}'),`,\n )\n .join('\\n');\n\n return `import { pongoSchema } from '@event-driven-io/pongo';\n\n${types}\n\nexport default {\n schema: pongoSchema.client({\n database: pongoSchema.db({\n${collections}\n }),\n }),\n};`;\n};\n\nconst missingDefaultExport = `Error: Config should contain default export, e.g.\\n\\n${sampleConfig()}`;\nconst missingSchema = `Error: Config should contain schema property, e.g.\\n\\n${sampleConfig()}`;\nconst missingDbs = `Error: Config should have at least a single database defined, e.g.\\n\\n${sampleConfig()}`;\nconst missingDefaultDb = `Error: Config should have a default database defined (without name or or with default database name), e.g.\\n\\n${sampleConfig()}`;\nconst missingCollections = `Error: Database should have defined at least one collection, e.g.\\n\\n${sampleConfig()}`;\n\nexport const loadConfigFile = async (\n configPath: string,\n): Promise<PongoDbSchemaMetadata> => {\n const configUrl = new URL(configPath, `file://${process.cwd()}/`);\n try {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n const imported: Partial<{ default: PongoSchemaConfig }> = await import(\n configUrl.href\n );\n\n const parsed = parseDefaultDbSchema(imported);\n\n if (typeof parsed === 'string') {\n console.error(parsed);\n process.exit(1);\n }\n\n return parsed;\n } catch {\n console.error(`Error: Couldn't load file: ${configUrl.href}`);\n process.exit(1);\n }\n};\n\nexport const generateConfigFile = (\n configPath: string,\n collectionNames: string[],\n): void => {\n try {\n fs.writeFileSync(configPath, sampleConfig(collectionNames), 'utf8');\n console.log(`Configuration file stored at: ${configPath}`);\n } catch (error) {\n console.error(`Error: Couldn't store config file: ${configPath}!`);\n console.error(error);\n process.exit(1);\n }\n};\n\nexport const parseDefaultDbSchema = (\n imported: Partial<{ default: PongoSchemaConfig }>,\n): PongoDbSchemaMetadata | string => {\n if (!imported.default) {\n return missingDefaultExport;\n }\n\n if (!imported.default.schema) {\n return missingSchema;\n }\n\n if (!imported.default.schema.dbs) {\n return missingDbs;\n }\n\n const dbs = objectEntries(imported.default.schema.dbs).map((db) => db[1]);\n\n const defaultDb = dbs.find((db) => db.name === undefined);\n\n if (!defaultDb) {\n return missingDefaultDb;\n }\n\n if (!defaultDb.collections) {\n return missingCollections;\n }\n\n const collections = objectEntries(defaultDb.collections).map((col) => col[1]);\n\n if (collections.length === 0) {\n return missingCollections;\n }\n\n return toDbSchemaMetadata(defaultDb);\n};\n\ntype SampleConfigOptions =\n | {\n collection: string[];\n print?: boolean;\n }\n | {\n collection: string[];\n generate?: boolean;\n file?: string;\n };\n\nexport const configCommand = new Command('config').description(\n 'Manage Pongo configuration',\n);\n\nconfigCommand\n .command('sample')\n .description('Generate or print sample configuration')\n .option(\n '--col, --collection <name>',\n 'Specify the collection name',\n (value: string, previous: string[]) => {\n // Accumulate collection names into an array (explicitly typing `previous` as `string[]`)\n return previous.concat([value]);\n },\n [] as string[],\n )\n .option(\n '-f, --file <path>',\n 'Path to configuration file with collection list',\n )\n .option('-g, --generate', 'Generate sample config file')\n .option('-p, --print', 'Print sample config file')\n .action((options: SampleConfigOptions) => {\n const collectionNames =\n options.collection.length > 0 ? options.collection : ['users'];\n\n if (!('print' in options) && !('generate' in options)) {\n console.error(\n 'Error: Please provide either:\\n--print param to print sample config or\\n--generate to generate sample config file',\n );\n process.exit(1);\n }\n\n if ('print' in options) {\n console.log(`${sampleConfig(collectionNames)}`);\n } else if ('generate' in options) {\n if (!options.file) {\n console.error(\n 'Error: You need to provide a config file through a --file',\n );\n process.exit(1);\n }\n\n generateConfigFile(options.file, collectionNames);\n }\n });\n","import {\n combineMigrations,\n dumbo,\n JSONSerializer,\n parseConnectionString,\n runSQLMigrations,\n type DatabaseDriverType,\n} from '@event-driven-io/dumbo';\nimport { Command } from 'commander';\nimport {\n pongoDatabaseDriverRegistry,\n pongoSchema,\n type AnyPongoDatabaseDriverOptions,\n type PongoCollectionSchema,\n type PongoDatabaseFactoryOptions,\n type PongoDocument,\n} from '../core';\nimport { loadConfigFile } from './configFile';\n\ninterface MigrateRunOptions {\n collection: string[];\n connectionString: string;\n databaseType?: string;\n databaseName?: string | undefined;\n databaseDriver: string;\n config?: string;\n dryRun?: boolean;\n}\n\ninterface MigrateSqlOptions {\n print?: boolean;\n write?: string;\n databaseType: string;\n databaseName?: string | undefined;\n databaseDriver: string;\n config?: string;\n collection: string[];\n}\n\nexport const migrateCommand = new Command('migrate').description(\n 'Manage database migrations',\n);\n\nmigrateCommand\n .command('run')\n .description('Run database migrations')\n .option(\n '--dbt, --database-type <string>',\n 'Database type that should be used for connection (e.g., PostgreSQL or SQLite)',\n undefined,\n )\n .option(\n '--drv, --database-driver <string>',\n 'Database driver that should be used for connection (e.g., \"pg\" for PostgreSQL, \"sqlite3\" for SQLite)',\n )\n .option(\n '--dbn, --database-name <string>',\n 'Database name to connect to',\n undefined,\n )\n .option(\n '--cs, --connection-string <string>',\n 'Connection string for the database',\n )\n .option(\n '--col, --collection <name>',\n 'Specify the collection name',\n (value: string, previous: string[]) => {\n // Accumulate collection names into an array (explicitly typing `previous` as `string[]`)\n return previous.concat([value]);\n },\n [] as string[],\n )\n .option('-f, --config <path>', 'Path to configuration file with Pongo config')\n .option('--dr, --dryRun', 'Perform dry run without commiting changes', false)\n .action(async (options: MigrateRunOptions) => {\n const { collection, dryRun, databaseName, databaseDriver } = options;\n const connectionString =\n options.connectionString ?? process.env.DB_CONNECTION_STRING;\n\n const databaseType =\n options.databaseType ??\n parseConnectionString(connectionString).databaseType;\n\n let collectionNames: string[];\n\n if (!connectionString) {\n console.error(\n 'Error: Connection string is required. Provide it either as a \"--connection-string\" parameter or through the DB_CONNECTION_STRING environment variable.' +\n '\\nFor instance: --connection-string postgresql://postgres:postgres@localhost:5432/postgres',\n );\n process.exit(1);\n }\n\n if (options.config) {\n const config = await loadConfigFile(options.config);\n\n collectionNames = config.collections.map((c) => c.name);\n } else if (collection) {\n collectionNames = collection;\n } else {\n console.error(\n 'Error: You need to provide at least one collection name. Provide it either through \"--config\" file or as a \"--collection\" parameter.',\n );\n process.exit(1);\n }\n\n const driverType = `${databaseType}:${databaseDriver}` as const;\n\n const migrations = getMigrations({\n driverType,\n connectionString,\n databaseName,\n collectionNames,\n });\n\n const pool = dumbo({ connectionString, driverType });\n\n await runSQLMigrations(pool, migrations, {\n dryRun,\n });\n });\n\nmigrateCommand\n .command('sql')\n .description('Generate SQL for database migration')\n .option(\n '--dbt, --database-type <string>',\n 'Database type that should be used for connection (e.g., PostgreSQL or SQLite)',\n )\n .option(\n '--drv, --database-driver <string>',\n 'Database driver that should be used for connection (e.g., \"pg\" for PostgreSQL, \"sqlite3\" for SQLite)',\n )\n .option(\n '--dbn, --database-name <string>',\n 'Database name to connect to',\n undefined,\n )\n .option(\n '--col, --collection <name>',\n 'Specify the collection name',\n (value: string, previous: string[]) => {\n // Accumulate collection names into an array (explicitly typing `previous` as `string[]`)\n return previous.concat([value]);\n },\n [] as string[],\n )\n .option('-f, --config <path>', 'Path to configuration file with Pongo config')\n .option('--print', 'Print the SQL to the console (default)', true)\n //.option('--write <filename>', 'Write the SQL to a specified file')\n .action(async (options: MigrateSqlOptions) => {\n const { collection, databaseName, databaseType, databaseDriver } = options;\n\n let collectionNames: string[];\n\n if (options.config) {\n const config = await loadConfigFile(options.config);\n\n collectionNames = config.collections.map((c) => c.name);\n } else if (collection) {\n collectionNames = collection;\n } else {\n console.error(\n 'Error: You need to provide at least one collection name. Provide it either through \"--config\" file or as a \"--collection\" parameter.',\n );\n process.exit(1);\n }\n\n const driverType = `${databaseType}:${databaseDriver}` as const;\n\n const migrations = getMigrations({\n driverType,\n connectionString: undefined,\n databaseName,\n collectionNames,\n });\n\n console.log('Printing SQL:');\n console.log(combineMigrations(...migrations));\n });\n\nconst getMigrations = ({\n driverType,\n connectionString,\n databaseName,\n collectionNames,\n}: {\n driverType: DatabaseDriverType;\n connectionString: string | undefined;\n databaseName: string | undefined;\n collectionNames: string[];\n}) => {\n const driver = pongoDatabaseDriverRegistry.tryGet(driverType);\n\n if (driver === null) {\n console.error(\n `Error: No database driver found for driver type \"${driverType}\". Make sure the driver is registered and the connection string is correct.`,\n );\n process.exit(1);\n }\n\n const dbDefinition = pongoSchema.db.from(databaseName, collectionNames);\n\n const driverOptions: PongoDatabaseFactoryOptions<\n Record<string, PongoCollectionSchema<PongoDocument>>,\n AnyPongoDatabaseDriverOptions\n > = {\n schema: { definition: dbDefinition },\n serializer: JSONSerializer,\n };\n\n const customOptions = {\n connectionString,\n databaseName,\n };\n\n const db = driver.databaseFactory({ ...driverOptions, ...customOptions });\n\n return db.schema.component.migrations;\n};\n","import {\n color,\n LogLevel,\n LogStyle,\n parseConnectionString,\n prettyJson,\n SQL,\n type MigrationStyle,\n} from '@event-driven-io/dumbo';\nimport { checkConnection } from '@event-driven-io/dumbo/pg';\nimport Table from 'cli-table3';\nimport { Command } from 'commander';\nimport repl from 'node:repl';\nimport {\n pongoClient,\n pongoDatabaseDriverRegistry,\n pongoSchema,\n type PongoClient,\n type PongoClientOptions,\n type PongoCollectionSchema,\n type PongoDb,\n} from '../core';\n\nlet pongo: PongoClient;\n\nconst calculateColumnWidths = (\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n results: any[],\n columnNames: string[],\n): number[] => {\n const columnWidths = columnNames.map((col) => {\n const maxWidth = Math.max(\n col.length, // Header size\n ...results.map((result) =>\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n result[col] ? String(result[col]).length : 0,\n ),\n );\n return maxWidth + 2; // Add padding\n });\n return columnWidths;\n};\n\nlet shouldDisplayResultsAsTable = false;\n\nconst printResultsAsTable = (print?: boolean) =>\n (shouldDisplayResultsAsTable = print === undefined || print === true);\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nconst printOutput = (obj: any): string =>\n Array.isArray(obj) && shouldDisplayResultsAsTable\n ? displayResultsAsTable(obj)\n : prettyJson(obj);\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nconst displayResultsAsTable = (results: any[]): string => {\n if (results.length === 0) {\n return color.yellow('No documents found.');\n }\n\n const columnNames = results\n\n .flatMap((result) =>\n // eslint-disable-next-line @typescript-eslint/no-unsafe-argument\n typeof result === 'object' ? Object.keys(result) : typeof result,\n )\n .filter((value, index, array) => array.indexOf(value) === index);\n\n const columnWidths = calculateColumnWidths(results, columnNames);\n\n const table = new Table({\n head: columnNames.map((col) => color.cyan(col)),\n colWidths: columnWidths,\n });\n\n results.forEach((result) => {\n table.push(\n columnNames.map((col) =>\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n result[col] !== undefined\n ? // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n Array.isArray(result[col])\n ? // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n displayResultsAsTable(result[col])\n : // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n prettyJson(result[col])\n : typeof result === 'object'\n ? ''\n : result != undefined && result != undefined\n ? prettyJson(result)\n : '',\n ),\n );\n });\n\n return table.toString();\n};\n\nconst setLogLevel = (logLevel: string) => {\n process.env.DUMBO_LOG_LEVEL = logLevel;\n};\n\nconst setLogStyle = (logLevel: string) => {\n process.env.DUMBO_LOG_STYLE = logLevel;\n};\n\nconst prettifyLogs = (logLevel?: string) => {\n if (logLevel !== undefined) setLogLevel(logLevel);\n setLogStyle(LogStyle.PRETTY);\n};\n\nconst startRepl = async (options: {\n logging: {\n printOptions: boolean;\n logLevel: LogLevel;\n logStyle: LogStyle;\n };\n schema: {\n database: string;\n collections: string[];\n autoMigration: MigrationStyle;\n };\n connectionString: string | undefined;\n databaseDriver: string;\n}) => {\n // TODO: This will change when we have proper tracing and logging config\n // For now, that's enough\n setLogLevel(process.env.DUMBO_LOG_LEVEL ?? options.logging.logLevel);\n setLogStyle(process.env.DUMBO_LOG_STYLE ?? options.logging.logStyle);\n\n console.log(color.green('Starting Pongo Shell (version: 0.17.0-beta.19)'));\n\n if (options.logging.printOptions) {\n console.log(color.green('With Options:'));\n console.log(prettyJson(options));\n }\n\n const connectionString =\n options.connectionString ??\n process.env.DB_CONNECTION_STRING ??\n 'postgresql://postgres:postgres@localhost:5432/postgres';\n\n if (!(options.connectionString ?? process.env.DB_CONNECTION_STRING)) {\n console.log(\n color.yellow(\n `No connection string provided, using: 'postgresql://postgres:postgres@localhost:5432/postgres'`,\n ),\n );\n }\n\n const { databaseType } = parseConnectionString(connectionString);\n const driverType = `${databaseType}:${options.databaseDriver}` as const;\n\n const driver = pongoDatabaseDriverRegistry.tryGet(driverType);\n\n if (driver === null) {\n console.error(\n `Error: No database driver found for driver type \"${driverType}\". Make sure the driver is installed and the connection string is correct.`,\n );\n process.exit(1);\n }\n\n const connectionCheck = await checkConnection(connectionString);\n\n if (!connectionCheck.successful) {\n if (connectionCheck.errorType === 'ConnectionRefused') {\n console.error(\n color.red(\n `Connection was refused. Check if the PostgreSQL server is running and accessible.`,\n ),\n );\n } else if (connectionCheck.errorType === 'Authentication') {\n console.error(\n color.red(\n `Authentication failed. Check the username and password in the connection string.`,\n ),\n );\n } else {\n console.error(color.red('Error connecting to PostgreSQL server'));\n }\n console.log(color.red('Exiting Pongo Shell...'));\n process.exit();\n }\n\n console.log(color.green(`Successfully connected`));\n console.log(color.green('Use db.<collection>.<method>() to query.'));\n\n const shell = repl.start({\n prompt: color.green('pongo> '),\n useGlobal: true,\n breakEvalOnSigint: true,\n writer: printOutput,\n });\n\n let db: PongoDb;\n\n if (options.schema.collections.length > 0) {\n const collectionsSchema: Record<string, PongoCollectionSchema> = {};\n\n for (const collectionName of options.schema.collections) {\n collectionsSchema[collectionName] =\n pongoSchema.collection(collectionName);\n }\n\n const schema = pongoSchema.client({\n database: pongoSchema.db(options.schema.database, collectionsSchema),\n });\n\n const driverOptions: PongoClientOptions = {\n driver,\n schema: {\n definition: schema,\n autoMigration: options.schema.autoMigration,\n },\n };\n\n // TODO: Find a better way to pass custom driver settings\n const customOptions = {\n connectionString,\n };\n\n const typedClient = pongoClient({\n ...driverOptions,\n ...customOptions,\n });\n\n db = typedClient.database!;\n\n for (const collectionName of options.schema.collections) {\n shell.context[collectionName] = typedClient.database![collectionName];\n }\n\n pongo = typedClient;\n } else {\n const driverOptions: PongoClientOptions = {\n driver,\n schema: {\n autoMigration: options.schema.autoMigration,\n },\n };\n\n // TODO: Find a better way to pass custom driver settings\n const customOptions = {\n connectionString,\n };\n\n pongo = pongoClient({\n ...driverOptions,\n ...customOptions,\n });\n\n db = pongo.db(options.schema.database);\n }\n\n shell.context.pongo = pongo;\n shell.context.db = db;\n\n // helpers\n shell.context.SQL = SQL;\n shell.context.setLogLevel = setLogLevel;\n shell.context.setLogStyle = setLogStyle;\n shell.context.prettifyLogs = prettifyLogs;\n shell.context.printResultsAsTable = printResultsAsTable;\n shell.context.LogStyle = LogStyle;\n shell.context.LogLevel = LogLevel;\n\n // Intercept REPL output to display results as a table if they are arrays\n shell.on('exit', async () => {\n await teardown();\n process.exit();\n });\n\n shell.on('SIGINT', async () => {\n await teardown();\n process.exit();\n });\n};\n\nconst teardown = async () => {\n console.log(color.yellow('Exiting Pongo Shell...'));\n await pongo.close();\n};\n\nprocess.on('uncaughtException', teardown);\nprocess.on('SIGINT', teardown);\n\ninterface ShellOptions {\n database: string;\n collection: string[];\n databaseDriver: string;\n connectionString?: string;\n disableAutoMigrations: boolean;\n logStyle?: string;\n logLevel?: string;\n prettyLog?: boolean;\n printOptions?: boolean;\n}\n\nconst shellCommand = new Command('shell')\n .description('Start an interactive Pongo shell')\n .option(\n '--drv, --database-driver <string>',\n 'Database driver that should be used for connection (e.g., \"pg\" for PostgreSQL, \"sqlite3\" for SQLite)',\n 'pg',\n )\n .option(\n '--cs, --connectionString <string>',\n 'Connection string for the database',\n )\n .option('--db, --database <string>', 'Database name to connect', 'postgres')\n .option(\n '--col, --collection <name>',\n 'Specify the collection name',\n (value: string, previous: string[]) => {\n // Accumulate collection names into an array (explicitly typing `previous` as `string[]`)\n return previous.concat([value]);\n },\n [] as string[],\n )\n .option(\n '--no-migrations, --disable-auto-migrations',\n 'Disable automatic migrations',\n )\n .option('-o, --print-options', 'Print shell options')\n .option(\n '--ll, --log-level <logLevel>',\n 'Log level: DISABLED, INFO, LOG, WARN, ERROR',\n 'DISABLED',\n )\n .option('--ls, --log-style', 'Log style: RAW, PRETTY', 'RAW')\n .option('-p, --pretty-log', 'Turn on logging with prettified output')\n .action(async (options: ShellOptions) => {\n const { collection, database } = options;\n const connectionString = options.connectionString;\n\n await startRepl({\n logging: {\n printOptions: options.printOptions === true,\n logStyle: options.prettyLog\n ? LogStyle.PRETTY\n : ((options.logStyle as LogStyle | undefined) ?? LogStyle.RAW),\n logLevel: options.logLevel\n ? (options.logLevel as LogLevel)\n : options.prettyLog\n ? LogLevel.INFO\n : LogLevel.DISABLED,\n },\n schema: {\n collections: collection,\n database,\n autoMigration: options.disableAutoMigrations\n ? 'None'\n : 'CreateOrUpdate',\n },\n connectionString,\n databaseDriver: options.databaseDriver,\n });\n });\n\nexport { shellCommand };\n"],"mappings":"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","names":["Command","Command","Command","parseConnectionString","Command","parseConnectionString","Command","Command"]}
1
+ {"version":3,"sources":["../src/cli.ts","../src/commandLine/configFile.ts","../src/commandLine/migrate.ts","../src/commandLine/shell.ts"],"sourcesContent":["#!/usr/bin/env node\nimport { Command } from 'commander';\nimport { configCommand, migrateCommand, shellCommand } from './commandLine';\n\nconst program = new Command();\n\nprogram.name('pongo').description('CLI tool for Pongo');\n\nprogram.addCommand(configCommand);\nprogram.addCommand(migrateCommand);\nprogram.addCommand(shellCommand);\n\nprogram.parse(process.argv);\n\nexport default program;\n","import { Command } from 'commander';\nimport fs from 'node:fs';\nimport {\n objectEntries,\n toDbSchemaMetadata,\n type PongoDbSchemaMetadata,\n type PongoSchemaConfig,\n} from '../core';\n\nconst formatTypeName = (input: string): string => {\n if (input.length === 0) {\n return input;\n }\n\n let formatted = input.charAt(0).toUpperCase() + input.slice(1);\n\n if (formatted.endsWith('s')) {\n formatted = formatted.slice(0, -1);\n }\n\n return formatted;\n};\n\nconst sampleConfig = (collectionNames: string[] = ['users']) => {\n const types = collectionNames\n .map(\n (name) =>\n `export type ${formatTypeName(name)} = { name: string; description: string; date: Date }`,\n )\n .join('\\n');\n\n const collections = collectionNames\n .map(\n (name) =>\n ` ${name}: pongoSchema.collection<${formatTypeName(name)}>('${name}'),`,\n )\n .join('\\n');\n\n return `import { pongoSchema } from '@event-driven-io/pongo';\n\n${types}\n\nexport default {\n schema: pongoSchema.client({\n database: pongoSchema.db({\n${collections}\n }),\n }),\n};`;\n};\n\nconst missingDefaultExport = `Error: Config should contain default export, e.g.\\n\\n${sampleConfig()}`;\nconst missingSchema = `Error: Config should contain schema property, e.g.\\n\\n${sampleConfig()}`;\nconst missingDbs = `Error: Config should have at least a single database defined, e.g.\\n\\n${sampleConfig()}`;\nconst missingDefaultDb = `Error: Config should have a default database defined (without name or or with default database name), e.g.\\n\\n${sampleConfig()}`;\nconst missingCollections = `Error: Database should have defined at least one collection, e.g.\\n\\n${sampleConfig()}`;\n\nexport const loadConfigFile = async (\n configPath: string,\n): Promise<PongoDbSchemaMetadata> => {\n const configUrl = new URL(configPath, `file://${process.cwd()}/`);\n try {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n const imported: Partial<{ default: PongoSchemaConfig }> = await import(\n configUrl.href\n );\n\n const parsed = parseDefaultDbSchema(imported);\n\n if (typeof parsed === 'string') {\n console.error(parsed);\n process.exit(1);\n }\n\n return parsed;\n } catch {\n console.error(`Error: Couldn't load file: ${configUrl.href}`);\n process.exit(1);\n }\n};\n\nexport const generateConfigFile = (\n configPath: string,\n collectionNames: string[],\n): void => {\n try {\n fs.writeFileSync(configPath, sampleConfig(collectionNames), 'utf8');\n console.log(`Configuration file stored at: ${configPath}`);\n } catch (error) {\n console.error(`Error: Couldn't store config file: ${configPath}!`);\n console.error(error);\n process.exit(1);\n }\n};\n\nexport const parseDefaultDbSchema = (\n imported: Partial<{ default: PongoSchemaConfig }>,\n): PongoDbSchemaMetadata | string => {\n if (!imported.default) {\n return missingDefaultExport;\n }\n\n if (!imported.default.schema) {\n return missingSchema;\n }\n\n if (!imported.default.schema.dbs) {\n return missingDbs;\n }\n\n const dbs = objectEntries(imported.default.schema.dbs).map((db) => db[1]);\n\n const defaultDb = dbs.find((db) => db.name === undefined);\n\n if (!defaultDb) {\n return missingDefaultDb;\n }\n\n if (!defaultDb.collections) {\n return missingCollections;\n }\n\n const collections = objectEntries(defaultDb.collections).map((col) => col[1]);\n\n if (collections.length === 0) {\n return missingCollections;\n }\n\n return toDbSchemaMetadata(defaultDb);\n};\n\ntype SampleConfigOptions =\n | {\n collection: string[];\n print?: boolean;\n }\n | {\n collection: string[];\n generate?: boolean;\n file?: string;\n };\n\nexport const configCommand = new Command('config').description(\n 'Manage Pongo configuration',\n);\n\nconfigCommand\n .command('sample')\n .description('Generate or print sample configuration')\n .option(\n '--col, --collection <name>',\n 'Specify the collection name',\n (value: string, previous: string[]) => {\n // Accumulate collection names into an array (explicitly typing `previous` as `string[]`)\n return previous.concat([value]);\n },\n [] as string[],\n )\n .option(\n '-f, --file <path>',\n 'Path to configuration file with collection list',\n )\n .option('-g, --generate', 'Generate sample config file')\n .option('-p, --print', 'Print sample config file')\n .action((options: SampleConfigOptions) => {\n const collectionNames =\n options.collection.length > 0 ? options.collection : ['users'];\n\n if (!('print' in options) && !('generate' in options)) {\n console.error(\n 'Error: Please provide either:\\n--print param to print sample config or\\n--generate to generate sample config file',\n );\n process.exit(1);\n }\n\n if ('print' in options) {\n console.log(`${sampleConfig(collectionNames)}`);\n } else if ('generate' in options) {\n if (!options.file) {\n console.error(\n 'Error: You need to provide a config file through a --file',\n );\n process.exit(1);\n }\n\n generateConfigFile(options.file, collectionNames);\n }\n });\n","import {\n combineMigrations,\n dumbo,\n JSONSerializer,\n parseConnectionString,\n runSQLMigrations,\n type DatabaseDriverType,\n} from '@event-driven-io/dumbo';\nimport { Command } from 'commander';\nimport {\n pongoDatabaseDriverRegistry,\n pongoSchema,\n type AnyPongoDatabaseDriverOptions,\n type PongoCollectionSchema,\n type PongoDatabaseFactoryOptions,\n type PongoDocument,\n} from '../core';\nimport { loadConfigFile } from './configFile';\n\ninterface MigrateRunOptions {\n collection: string[];\n connectionString: string;\n databaseType?: string;\n databaseName?: string | undefined;\n databaseDriver: string;\n config?: string;\n dryRun?: boolean;\n timeoutMs?: number;\n}\n\ninterface MigrateSqlOptions {\n print?: boolean;\n write?: string;\n databaseType: string;\n databaseName?: string | undefined;\n databaseDriver: string;\n config?: string;\n collection: string[];\n}\n\nexport const migrateCommand = new Command('migrate').description(\n 'Manage database migrations',\n);\n\nmigrateCommand\n .command('run')\n .description('Run database migrations')\n .option(\n '--dbt, --database-type <string>',\n 'Database type that should be used for connection (e.g., PostgreSQL or SQLite)',\n undefined,\n )\n .option(\n '--drv, --database-driver <string>',\n 'Database driver that should be used for connection (e.g., \"pg\" for PostgreSQL, \"sqlite3\" for SQLite)',\n )\n .option(\n '--dbn, --database-name <string>',\n 'Database name to connect to',\n undefined,\n )\n .option(\n '--cs, --connection-string <string>',\n 'Connection string for the database',\n )\n .option(\n '--col, --collection <name>',\n 'Specify the collection name',\n (value: string, previous: string[]) => {\n // Accumulate collection names into an array (explicitly typing `previous` as `string[]`)\n return previous.concat([value]);\n },\n [] as string[],\n )\n .option('-f, --config <path>', 'Path to configuration file with Pongo config')\n .option('--dr, --dryRun', 'Perform dry run without commiting changes', false)\n .option(\n '--t, --timeout <ms>',\n 'Set the migration timeout in milliseconds',\n parseInt,\n )\n .action(async (options: MigrateRunOptions) => {\n const { collection, dryRun, databaseName, databaseDriver, timeoutMs } =\n options;\n const connectionString =\n options.connectionString ?? process.env.DB_CONNECTION_STRING;\n\n const databaseType =\n options.databaseType ??\n parseConnectionString(connectionString).databaseType;\n\n let collectionNames: string[];\n\n if (!connectionString) {\n console.error(\n 'Error: Connection string is required. Provide it either as a \"--connection-string\" parameter or through the DB_CONNECTION_STRING environment variable.' +\n '\\nFor instance: --connection-string postgresql://postgres:postgres@localhost:5432/postgres',\n );\n process.exit(1);\n }\n\n if (options.config) {\n const config = await loadConfigFile(options.config);\n\n collectionNames = config.collections.map((c) => c.name);\n } else if (collection) {\n collectionNames = collection;\n } else {\n console.error(\n 'Error: You need to provide at least one collection name. Provide it either through \"--config\" file or as a \"--collection\" parameter.',\n );\n process.exit(1);\n }\n\n const driverType = `${databaseType}:${databaseDriver}` as const;\n\n const migrations = getMigrations({\n driverType,\n connectionString,\n databaseName,\n collectionNames,\n });\n\n const pool = dumbo({ connectionString, driverType });\n\n await runSQLMigrations(pool, migrations, {\n dryRun,\n migrationTimeoutMs: timeoutMs,\n });\n });\n\nmigrateCommand\n .command('sql')\n .description('Generate SQL for database migration')\n .option(\n '--dbt, --database-type <string>',\n 'Database type that should be used for connection (e.g., PostgreSQL or SQLite)',\n )\n .option(\n '--drv, --database-driver <string>',\n 'Database driver that should be used for connection (e.g., \"pg\" for PostgreSQL, \"sqlite3\" for SQLite)',\n )\n .option(\n '--dbn, --database-name <string>',\n 'Database name to connect to',\n undefined,\n )\n .option(\n '--col, --collection <name>',\n 'Specify the collection name',\n (value: string, previous: string[]) => {\n // Accumulate collection names into an array (explicitly typing `previous` as `string[]`)\n return previous.concat([value]);\n },\n [] as string[],\n )\n .option('-f, --config <path>', 'Path to configuration file with Pongo config')\n .option('--print', 'Print the SQL to the console (default)', true)\n //.option('--write <filename>', 'Write the SQL to a specified file')\n .action(async (options: MigrateSqlOptions) => {\n const { collection, databaseName, databaseType, databaseDriver } = options;\n\n let collectionNames: string[];\n\n if (options.config) {\n const config = await loadConfigFile(options.config);\n\n collectionNames = config.collections.map((c) => c.name);\n } else if (collection) {\n collectionNames = collection;\n } else {\n console.error(\n 'Error: You need to provide at least one collection name. Provide it either through \"--config\" file or as a \"--collection\" parameter.',\n );\n process.exit(1);\n }\n\n const driverType = `${databaseType}:${databaseDriver}` as const;\n\n const migrations = getMigrations({\n driverType,\n connectionString: undefined,\n databaseName,\n collectionNames,\n });\n\n console.log('Printing SQL:');\n console.log(combineMigrations(...migrations));\n });\n\nconst getMigrations = ({\n driverType,\n connectionString,\n databaseName,\n collectionNames,\n}: {\n driverType: DatabaseDriverType;\n connectionString: string | undefined;\n databaseName: string | undefined;\n collectionNames: string[];\n}) => {\n const driver = pongoDatabaseDriverRegistry.tryGet(driverType);\n\n if (driver === null) {\n console.error(\n `Error: No database driver found for driver type \"${driverType}\". Make sure the driver is registered and the connection string is correct.`,\n );\n process.exit(1);\n }\n\n const dbDefinition = pongoSchema.db.from(databaseName, collectionNames);\n\n const driverOptions: PongoDatabaseFactoryOptions<\n Record<string, PongoCollectionSchema<PongoDocument>>,\n AnyPongoDatabaseDriverOptions\n > = {\n schema: { definition: dbDefinition },\n serializer: JSONSerializer,\n };\n\n const customOptions = {\n connectionString,\n databaseName,\n };\n\n const db = driver.databaseFactory({ ...driverOptions, ...customOptions });\n\n return db.schema.component.migrations;\n};\n","import {\n color,\n LogLevel,\n LogStyle,\n parseConnectionString,\n prettyJson,\n SQL,\n type MigrationStyle,\n} from '@event-driven-io/dumbo';\nimport { checkConnection } from '@event-driven-io/dumbo/pg';\nimport Table from 'cli-table3';\nimport { Command } from 'commander';\nimport repl from 'node:repl';\nimport {\n pongoClient,\n pongoDatabaseDriverRegistry,\n pongoSchema,\n type PongoClient,\n type PongoClientOptions,\n type PongoCollectionSchema,\n type PongoDb,\n} from '../core';\n\nlet pongo: PongoClient;\n\nconst calculateColumnWidths = (\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n results: any[],\n columnNames: string[],\n): number[] => {\n const columnWidths = columnNames.map((col) => {\n const maxWidth = Math.max(\n col.length, // Header size\n ...results.map((result) =>\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n result[col] ? String(result[col]).length : 0,\n ),\n );\n return maxWidth + 2; // Add padding\n });\n return columnWidths;\n};\n\nlet shouldDisplayResultsAsTable = false;\n\nconst printResultsAsTable = (print?: boolean) =>\n (shouldDisplayResultsAsTable = print === undefined || print === true);\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nconst printOutput = (obj: any): string =>\n Array.isArray(obj) && shouldDisplayResultsAsTable\n ? displayResultsAsTable(obj)\n : prettyJson(obj);\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nconst displayResultsAsTable = (results: any[]): string => {\n if (results.length === 0) {\n return color.yellow('No documents found.');\n }\n\n const columnNames = results\n\n .flatMap((result) =>\n // eslint-disable-next-line @typescript-eslint/no-unsafe-argument\n typeof result === 'object' ? Object.keys(result) : typeof result,\n )\n .filter((value, index, array) => array.indexOf(value) === index);\n\n const columnWidths = calculateColumnWidths(results, columnNames);\n\n const table = new Table({\n head: columnNames.map((col) => color.cyan(col)),\n colWidths: columnWidths,\n });\n\n results.forEach((result) => {\n table.push(\n columnNames.map((col) =>\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n result[col] !== undefined\n ? // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n Array.isArray(result[col])\n ? // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n displayResultsAsTable(result[col])\n : // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n prettyJson(result[col])\n : typeof result === 'object'\n ? ''\n : result != undefined && result != undefined\n ? prettyJson(result)\n : '',\n ),\n );\n });\n\n return table.toString();\n};\n\nconst setLogLevel = (logLevel: string) => {\n process.env.DUMBO_LOG_LEVEL = logLevel;\n};\n\nconst setLogStyle = (logLevel: string) => {\n process.env.DUMBO_LOG_STYLE = logLevel;\n};\n\nconst prettifyLogs = (logLevel?: string) => {\n if (logLevel !== undefined) setLogLevel(logLevel);\n setLogStyle(LogStyle.PRETTY);\n};\n\nconst startRepl = async (options: {\n logging: {\n printOptions: boolean;\n logLevel: LogLevel;\n logStyle: LogStyle;\n };\n schema: {\n database: string;\n collections: string[];\n autoMigration: MigrationStyle;\n };\n connectionString: string | undefined;\n databaseDriver: string;\n}) => {\n // TODO: This will change when we have proper tracing and logging config\n // For now, that's enough\n setLogLevel(process.env.DUMBO_LOG_LEVEL ?? options.logging.logLevel);\n setLogStyle(process.env.DUMBO_LOG_STYLE ?? options.logging.logStyle);\n\n console.log(color.green('Starting Pongo Shell (version: 0.17.0-beta.20)'));\n\n if (options.logging.printOptions) {\n console.log(color.green('With Options:'));\n console.log(prettyJson(options));\n }\n\n const connectionString =\n options.connectionString ??\n process.env.DB_CONNECTION_STRING ??\n 'postgresql://postgres:postgres@localhost:5432/postgres';\n\n if (!(options.connectionString ?? process.env.DB_CONNECTION_STRING)) {\n console.log(\n color.yellow(\n `No connection string provided, using: 'postgresql://postgres:postgres@localhost:5432/postgres'`,\n ),\n );\n }\n\n const { databaseType } = parseConnectionString(connectionString);\n const driverType = `${databaseType}:${options.databaseDriver}` as const;\n\n const driver = pongoDatabaseDriverRegistry.tryGet(driverType);\n\n if (driver === null) {\n console.error(\n `Error: No database driver found for driver type \"${driverType}\". Make sure the driver is installed and the connection string is correct.`,\n );\n process.exit(1);\n }\n\n const connectionCheck = await checkConnection(connectionString);\n\n if (!connectionCheck.successful) {\n if (connectionCheck.errorType === 'ConnectionRefused') {\n console.error(\n color.red(\n `Connection was refused. Check if the PostgreSQL server is running and accessible.`,\n ),\n );\n } else if (connectionCheck.errorType === 'Authentication') {\n console.error(\n color.red(\n `Authentication failed. Check the username and password in the connection string.`,\n ),\n );\n } else {\n console.error(color.red('Error connecting to PostgreSQL server'));\n }\n console.log(color.red('Exiting Pongo Shell...'));\n process.exit();\n }\n\n console.log(color.green(`Successfully connected`));\n console.log(color.green('Use db.<collection>.<method>() to query.'));\n\n const shell = repl.start({\n prompt: color.green('pongo> '),\n useGlobal: true,\n breakEvalOnSigint: true,\n writer: printOutput,\n });\n\n let db: PongoDb;\n\n if (options.schema.collections.length > 0) {\n const collectionsSchema: Record<string, PongoCollectionSchema> = {};\n\n for (const collectionName of options.schema.collections) {\n collectionsSchema[collectionName] =\n pongoSchema.collection(collectionName);\n }\n\n const schema = pongoSchema.client({\n database: pongoSchema.db(options.schema.database, collectionsSchema),\n });\n\n const driverOptions: PongoClientOptions = {\n driver,\n schema: {\n definition: schema,\n autoMigration: options.schema.autoMigration,\n },\n };\n\n // TODO: Find a better way to pass custom driver settings\n const customOptions = {\n connectionString,\n };\n\n const typedClient = pongoClient({\n ...driverOptions,\n ...customOptions,\n });\n\n db = typedClient.database!;\n\n for (const collectionName of options.schema.collections) {\n shell.context[collectionName] = typedClient.database![collectionName];\n }\n\n pongo = typedClient;\n } else {\n const driverOptions: PongoClientOptions = {\n driver,\n schema: {\n autoMigration: options.schema.autoMigration,\n },\n };\n\n // TODO: Find a better way to pass custom driver settings\n const customOptions = {\n connectionString,\n };\n\n pongo = pongoClient({\n ...driverOptions,\n ...customOptions,\n });\n\n db = pongo.db(options.schema.database);\n }\n\n shell.context.pongo = pongo;\n shell.context.db = db;\n\n // helpers\n shell.context.SQL = SQL;\n shell.context.setLogLevel = setLogLevel;\n shell.context.setLogStyle = setLogStyle;\n shell.context.prettifyLogs = prettifyLogs;\n shell.context.printResultsAsTable = printResultsAsTable;\n shell.context.LogStyle = LogStyle;\n shell.context.LogLevel = LogLevel;\n\n // Intercept REPL output to display results as a table if they are arrays\n shell.on('exit', async () => {\n await teardown();\n process.exit();\n });\n\n shell.on('SIGINT', async () => {\n await teardown();\n process.exit();\n });\n};\n\nconst teardown = async () => {\n console.log(color.yellow('Exiting Pongo Shell...'));\n await pongo.close();\n};\n\nprocess.on('uncaughtException', teardown);\nprocess.on('SIGINT', teardown);\n\ninterface ShellOptions {\n database: string;\n collection: string[];\n databaseDriver: string;\n connectionString?: string;\n disableAutoMigrations: boolean;\n logStyle?: string;\n logLevel?: string;\n prettyLog?: boolean;\n printOptions?: boolean;\n}\n\nconst shellCommand = new Command('shell')\n .description('Start an interactive Pongo shell')\n .option(\n '--drv, --database-driver <string>',\n 'Database driver that should be used for connection (e.g., \"pg\" for PostgreSQL, \"sqlite3\" for SQLite)',\n 'pg',\n )\n .option(\n '--cs, --connectionString <string>',\n 'Connection string for the database',\n )\n .option('--db, --database <string>', 'Database name to connect', 'postgres')\n .option(\n '--col, --collection <name>',\n 'Specify the collection name',\n (value: string, previous: string[]) => {\n // Accumulate collection names into an array (explicitly typing `previous` as `string[]`)\n return previous.concat([value]);\n },\n [] as string[],\n )\n .option(\n '--no-migrations, --disable-auto-migrations',\n 'Disable automatic migrations',\n )\n .option('-o, --print-options', 'Print shell options')\n .option(\n '--ll, --log-level <logLevel>',\n 'Log level: DISABLED, INFO, LOG, WARN, ERROR',\n 'DISABLED',\n )\n .option('--ls, --log-style', 'Log style: RAW, PRETTY', 'RAW')\n .option('-p, --pretty-log', 'Turn on logging with prettified output')\n .action(async (options: ShellOptions) => {\n const { collection, database } = options;\n const connectionString = options.connectionString;\n\n await startRepl({\n logging: {\n printOptions: options.printOptions === true,\n logStyle: options.prettyLog\n ? LogStyle.PRETTY\n : ((options.logStyle as LogStyle | undefined) ?? LogStyle.RAW),\n logLevel: options.logLevel\n ? (options.logLevel as LogLevel)\n : options.prettyLog\n ? LogLevel.INFO\n : LogLevel.DISABLED,\n },\n schema: {\n collections: collection,\n database,\n autoMigration: options.disableAutoMigrations\n ? 'None'\n : 'CreateOrUpdate',\n },\n connectionString,\n databaseDriver: options.databaseDriver,\n });\n });\n\nexport { shellCommand };\n"],"mappings":"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","names":["Command","Command","Command","parseConnectionString","Command","parseConnectionString","Command","Command"]}
@@ -1,14 +1,14 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
2
2
 
3
3
 
4
- var _chunk56GGH7CWcjs = require('./chunk-56GGH7CW.cjs');
4
+ var _chunkGK3XLHHQcjs = require('./chunk-GK3XLHHQ.cjs');
5
5
 
6
6
 
7
7
 
8
8
 
9
9
 
10
10
 
11
- var _chunkHZZ76RUCcjs = require('./chunk-HZZ76RUC.cjs');
11
+ var _chunkD2PHLX7Pcjs = require('./chunk-D2PHLX7P.cjs');
12
12
 
13
13
  // src/storage/sqlite/d1/index.ts
14
14
  var _dumbo = require('@event-driven-io/dumbo');
@@ -17,30 +17,30 @@ var d1DatabaseDriver = {
17
17
  driverType: _cloudflare.D1DriverType,
18
18
  databaseFactory: (options) => {
19
19
  const databaseName = _nullishCoalesce(options.databaseName, () => ( "db:default"));
20
- return _chunkHZZ76RUCcjs.PongoDatabase.call(void 0, {
20
+ return _chunkD2PHLX7Pcjs.PongoDatabase.call(void 0, {
21
21
  ...options,
22
22
  pool: _cloudflare.d1Pool.call(void 0, options),
23
- schemaComponent: _chunkHZZ76RUCcjs.PongoDatabaseSchemaComponent.call(void 0, {
23
+ schemaComponent: _chunkD2PHLX7Pcjs.PongoDatabaseSchemaComponent.call(void 0, {
24
24
  driverType: _cloudflare.D1DriverType,
25
- collectionFactory: (schema) => _chunkHZZ76RUCcjs.PongoCollectionSchemaComponent.call(void 0, {
25
+ collectionFactory: (schema) => _chunkD2PHLX7Pcjs.PongoCollectionSchemaComponent.call(void 0, {
26
26
  driverType: _cloudflare.D1DriverType,
27
27
  definition: schema,
28
28
  migrationsOrSchemaComponents: {
29
- migrations: _chunk56GGH7CWcjs.pongoCollectionSQLiteMigrations.call(void 0, schema.name)
29
+ migrations: _chunkGK3XLHHQcjs.pongoCollectionSQLiteMigrations.call(void 0, schema.name)
30
30
  },
31
- sqlBuilder: _chunk56GGH7CWcjs.sqliteSQLBuilder.call(void 0,
31
+ sqlBuilder: _chunkGK3XLHHQcjs.sqliteSQLBuilder.call(void 0,
32
32
  schema.name,
33
33
  _nullishCoalesce(_optionalChain([options, 'access', _ => _.serialization, 'optionalAccess', _2 => _2.serializer]), () => ( _dumbo.JSONSerializer))
34
34
  )
35
35
  }),
36
- definition: _nullishCoalesce(_optionalChain([options, 'access', _3 => _3.schema, 'optionalAccess', _4 => _4.definition]), () => ( _chunkHZZ76RUCcjs.pongoSchema.db(databaseName, {})))
36
+ definition: _nullishCoalesce(_optionalChain([options, 'access', _3 => _3.schema, 'optionalAccess', _4 => _4.definition]), () => ( _chunkD2PHLX7Pcjs.pongoSchema.db(databaseName, {})))
37
37
  }),
38
38
  databaseName
39
39
  });
40
40
  }
41
41
  };
42
42
  var useSqlite3DatabaseDriver = () => {
43
- _chunkHZZ76RUCcjs.pongoDatabaseDriverRegistry.register(_cloudflare.D1DriverType, d1DatabaseDriver);
43
+ _chunkD2PHLX7Pcjs.pongoDatabaseDriverRegistry.register(_cloudflare.D1DriverType, d1DatabaseDriver);
44
44
  };
45
45
  useSqlite3DatabaseDriver();
46
46
 
@@ -49,5 +49,5 @@ useSqlite3DatabaseDriver();
49
49
 
50
50
 
51
51
 
52
- exports.d1Driver = d1DatabaseDriver; exports.databaseDriver = d1DatabaseDriver; exports.pongoCollectionSQLiteMigrations = _chunk56GGH7CWcjs.pongoCollectionSQLiteMigrations; exports.sqliteSQLBuilder = _chunk56GGH7CWcjs.sqliteSQLBuilder; exports.useSqlite3DatabaseDriver = useSqlite3DatabaseDriver;
52
+ exports.d1Driver = d1DatabaseDriver; exports.databaseDriver = d1DatabaseDriver; exports.pongoCollectionSQLiteMigrations = _chunkGK3XLHHQcjs.pongoCollectionSQLiteMigrations; exports.sqliteSQLBuilder = _chunkGK3XLHHQcjs.sqliteSQLBuilder; exports.useSqlite3DatabaseDriver = useSqlite3DatabaseDriver;
53
53
  //# sourceMappingURL=cloudflare.cjs.map
@@ -1,6 +1,6 @@
1
- export { p as pongoCollectionSQLiteMigrations, s as sqliteSQLBuilder } from './index-486WMLOn.cjs';
1
+ export { p as pongoCollectionSQLiteMigrations, s as sqliteSQLBuilder } from './index-CoOj81r1.cjs';
2
2
  import { D1DriverType, D1PoolOptions } from '@event-driven-io/dumbo/cloudflare';
3
- import { P as PongoDatabaseDriver, a as PongoDb, b as PongoDatabaseDriverOptions } from './pongoCollectionSchemaComponent-JWAbt4LN.cjs';
3
+ import { P as PongoDatabaseDriver, a as PongoDb, b as PongoDatabaseDriverOptions } from './pongoCollectionSchemaComponent-OLLG1OUL.cjs';
4
4
  import '@event-driven-io/dumbo';
5
5
 
6
6
  type SQLitePongoClientOptions = object;
@@ -1,6 +1,6 @@
1
- export { p as pongoCollectionSQLiteMigrations, s as sqliteSQLBuilder } from './index-C2T_cRSs.js';
1
+ export { p as pongoCollectionSQLiteMigrations, s as sqliteSQLBuilder } from './index-BzpSM4g3.js';
2
2
  import { D1DriverType, D1PoolOptions } from '@event-driven-io/dumbo/cloudflare';
3
- import { P as PongoDatabaseDriver, a as PongoDb, b as PongoDatabaseDriverOptions } from './pongoCollectionSchemaComponent-JWAbt4LN.js';
3
+ import { P as PongoDatabaseDriver, a as PongoDb, b as PongoDatabaseDriverOptions } from './pongoCollectionSchemaComponent-OLLG1OUL.js';
4
4
  import '@event-driven-io/dumbo';
5
5
 
6
6
  type SQLitePongoClientOptions = object;
@@ -1,14 +1,14 @@
1
1
  import {
2
2
  pongoCollectionSQLiteMigrations,
3
3
  sqliteSQLBuilder
4
- } from "./chunk-T5YVXV53.js";
4
+ } from "./chunk-EJBGQHYG.js";
5
5
  import {
6
6
  PongoCollectionSchemaComponent,
7
7
  PongoDatabase,
8
8
  PongoDatabaseSchemaComponent,
9
9
  pongoDatabaseDriverRegistry,
10
10
  pongoSchema
11
- } from "./chunk-IBYIIPWV.js";
11
+ } from "./chunk-RM3EUVJ6.js";
12
12
 
13
13
  // src/storage/sqlite/d1/index.ts
14
14
  import { JSONSerializer } from "@event-driven-io/dumbo";
@@ -1,6 +1,6 @@
1
1
  import * as _event_driven_io_dumbo from '@event-driven-io/dumbo';
2
2
  import { JSONSerializer } from '@event-driven-io/dumbo';
3
- import { r as PongoCollectionSQLBuilder } from './pongoCollectionSchemaComponent-JWAbt4LN.js';
3
+ import { r as PongoCollectionSQLBuilder } from './pongoCollectionSchemaComponent-OLLG1OUL.js';
4
4
 
5
5
  declare const pongoCollectionSQLiteMigrations: (collectionName: string) => _event_driven_io_dumbo.SQLMigration[];
6
6
  declare const sqliteSQLBuilder: (collectionName: string, serializer: JSONSerializer) => PongoCollectionSQLBuilder;
@@ -1,6 +1,6 @@
1
1
  import * as _event_driven_io_dumbo from '@event-driven-io/dumbo';
2
2
  import { JSONSerializer } from '@event-driven-io/dumbo';
3
- import { r as PongoCollectionSQLBuilder } from './pongoCollectionSchemaComponent-JWAbt4LN.cjs';
3
+ import { r as PongoCollectionSQLBuilder } from './pongoCollectionSchemaComponent-OLLG1OUL.cjs';
4
4
 
5
5
  declare const pongoCollectionSQLiteMigrations: (collectionName: string) => _event_driven_io_dumbo.SQLMigration[];
6
6
  declare const sqliteSQLBuilder: (collectionName: string, serializer: JSONSerializer) => PongoCollectionSQLBuilder;
package/dist/index.cjs CHANGED
@@ -34,7 +34,7 @@
34
34
 
35
35
 
36
36
 
37
- var _chunkHZZ76RUCcjs = require('./chunk-HZZ76RUC.cjs');
37
+ var _chunkD2PHLX7Pcjs = require('./chunk-D2PHLX7P.cjs');
38
38
 
39
39
 
40
40
 
@@ -71,5 +71,5 @@ var _chunkHZZ76RUCcjs = require('./chunk-HZZ76RUC.cjs');
71
71
 
72
72
 
73
73
 
74
- exports.ConcurrencyError = _chunkHZZ76RUCcjs.ConcurrencyError; exports.DOCUMENT_DOES_NOT_EXIST = _chunkHZZ76RUCcjs.DOCUMENT_DOES_NOT_EXIST; exports.DOCUMENT_EXISTS = _chunkHZZ76RUCcjs.DOCUMENT_EXISTS; exports.NO_CONCURRENCY_CHECK = _chunkHZZ76RUCcjs.NO_CONCURRENCY_CHECK; exports.ObjectId = _chunkHZZ76RUCcjs.ObjectId; exports.OperatorMap = _chunkHZZ76RUCcjs.OperatorMap; exports.PongoCollectionSchemaComponent = _chunkHZZ76RUCcjs.PongoCollectionSchemaComponent; exports.PongoDatabase = _chunkHZZ76RUCcjs.PongoDatabase; exports.PongoDatabaseCache = _chunkHZZ76RUCcjs.PongoDatabaseCache; exports.PongoDatabaseDriverRegistry = _chunkHZZ76RUCcjs.PongoDatabaseDriverRegistry; exports.PongoDatabaseSchemaComponent = _chunkHZZ76RUCcjs.PongoDatabaseSchemaComponent; exports.PongoError = _chunkHZZ76RUCcjs.PongoError; exports.QueryOperators = _chunkHZZ76RUCcjs.QueryOperators; exports.deepEquals = _chunkHZZ76RUCcjs.deepEquals; exports.expectedVersion = _chunkHZZ76RUCcjs.expectedVersion; exports.expectedVersionValue = _chunkHZZ76RUCcjs.expectedVersionValue; exports.hasOperators = _chunkHZZ76RUCcjs.hasOperators; exports.isEquatable = _chunkHZZ76RUCcjs.isEquatable; exports.isGeneralExpectedDocumentVersion = _chunkHZZ76RUCcjs.isGeneralExpectedDocumentVersion; exports.isNumber = _chunkHZZ76RUCcjs.isNumber; exports.isOperator = _chunkHZZ76RUCcjs.isOperator; exports.isString = _chunkHZZ76RUCcjs.isString; exports.objectEntries = _chunkHZZ76RUCcjs.objectEntries; exports.operationResult = _chunkHZZ76RUCcjs.operationResult; exports.pongoClient = _chunkHZZ76RUCcjs.pongoClient; exports.pongoCollection = _chunkHZZ76RUCcjs.pongoCollection; exports.pongoDatabaseDriverRegistry = _chunkHZZ76RUCcjs.pongoDatabaseDriverRegistry; exports.pongoSchema = _chunkHZZ76RUCcjs.pongoSchema; exports.pongoSession = _chunkHZZ76RUCcjs.pongoSession; exports.pongoTransaction = _chunkHZZ76RUCcjs.pongoTransaction; exports.proxyClientWithSchema = _chunkHZZ76RUCcjs.proxyClientWithSchema; exports.proxyPongoDbWithSchema = _chunkHZZ76RUCcjs.proxyPongoDbWithSchema; exports.toClientSchemaMetadata = _chunkHZZ76RUCcjs.toClientSchemaMetadata; exports.toDbSchemaMetadata = _chunkHZZ76RUCcjs.toDbSchemaMetadata; exports.transactionExecutorOrDefault = _chunkHZZ76RUCcjs.transactionExecutorOrDefault;
74
+ exports.ConcurrencyError = _chunkD2PHLX7Pcjs.ConcurrencyError; exports.DOCUMENT_DOES_NOT_EXIST = _chunkD2PHLX7Pcjs.DOCUMENT_DOES_NOT_EXIST; exports.DOCUMENT_EXISTS = _chunkD2PHLX7Pcjs.DOCUMENT_EXISTS; exports.NO_CONCURRENCY_CHECK = _chunkD2PHLX7Pcjs.NO_CONCURRENCY_CHECK; exports.ObjectId = _chunkD2PHLX7Pcjs.ObjectId; exports.OperatorMap = _chunkD2PHLX7Pcjs.OperatorMap; exports.PongoCollectionSchemaComponent = _chunkD2PHLX7Pcjs.PongoCollectionSchemaComponent; exports.PongoDatabase = _chunkD2PHLX7Pcjs.PongoDatabase; exports.PongoDatabaseCache = _chunkD2PHLX7Pcjs.PongoDatabaseCache; exports.PongoDatabaseDriverRegistry = _chunkD2PHLX7Pcjs.PongoDatabaseDriverRegistry; exports.PongoDatabaseSchemaComponent = _chunkD2PHLX7Pcjs.PongoDatabaseSchemaComponent; exports.PongoError = _chunkD2PHLX7Pcjs.PongoError; exports.QueryOperators = _chunkD2PHLX7Pcjs.QueryOperators; exports.deepEquals = _chunkD2PHLX7Pcjs.deepEquals; exports.expectedVersion = _chunkD2PHLX7Pcjs.expectedVersion; exports.expectedVersionValue = _chunkD2PHLX7Pcjs.expectedVersionValue; exports.hasOperators = _chunkD2PHLX7Pcjs.hasOperators; exports.isEquatable = _chunkD2PHLX7Pcjs.isEquatable; exports.isGeneralExpectedDocumentVersion = _chunkD2PHLX7Pcjs.isGeneralExpectedDocumentVersion; exports.isNumber = _chunkD2PHLX7Pcjs.isNumber; exports.isOperator = _chunkD2PHLX7Pcjs.isOperator; exports.isString = _chunkD2PHLX7Pcjs.isString; exports.objectEntries = _chunkD2PHLX7Pcjs.objectEntries; exports.operationResult = _chunkD2PHLX7Pcjs.operationResult; exports.pongoClient = _chunkD2PHLX7Pcjs.pongoClient; exports.pongoCollection = _chunkD2PHLX7Pcjs.pongoCollection; exports.pongoDatabaseDriverRegistry = _chunkD2PHLX7Pcjs.pongoDatabaseDriverRegistry; exports.pongoSchema = _chunkD2PHLX7Pcjs.pongoSchema; exports.pongoSession = _chunkD2PHLX7Pcjs.pongoSession; exports.pongoTransaction = _chunkD2PHLX7Pcjs.pongoTransaction; exports.proxyClientWithSchema = _chunkD2PHLX7Pcjs.proxyClientWithSchema; exports.proxyPongoDbWithSchema = _chunkD2PHLX7Pcjs.proxyPongoDbWithSchema; exports.toClientSchemaMetadata = _chunkD2PHLX7Pcjs.toClientSchemaMetadata; exports.toDbSchemaMetadata = _chunkD2PHLX7Pcjs.toDbSchemaMetadata; exports.transactionExecutorOrDefault = _chunkD2PHLX7Pcjs.transactionExecutorOrDefault;
75
75
  //# sourceMappingURL=index.cjs.map
package/dist/index.d.cts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { DatabaseDriverType, Dumbo, MigrationStyle, JSONSerializer, SQLExecutor, JSONSerializationOptions } from '@event-driven-io/dumbo';
2
- import { c as PongoDocument, a as PongoDb, d as PongoCollectionSchemaComponent, C as CollectionOperationOptions, e as PongoCollection, f as PongoClientSchema, P as PongoDatabaseDriver, g as PongoCollectionSchema, h as PongoDatabaseFactoryOptions, i as PongoDatabaseSchemaComponent, j as PongoDbSchema, A as AnyPongoDb, k as AnyPongoDatabaseDriver, l as PongoClientOptions, m as PongoClient, E as ExtractPongoDatabaseTypeFromDriver, n as PongoClientWithSchema, o as PongoTransactionOptions, p as PongoSession, q as PongoDbTransaction } from './pongoCollectionSchemaComponent-JWAbt4LN.cjs';
3
- export { au as $inc, av as $push, as as $set, at as $unset, an as AlternativeType, z as AnyPongoDatabaseDriverOptions, I as CollectionsMap, ao as Condition, K as DBsMap, aA as DOCUMENT_DOES_NOT_EXIST, az as DOCUMENT_EXISTS, B as DatabaseDriverOptionsWithConnectionString, D as DatabaseDriverOptionsWithDatabaseName, a2 as DeleteManyOptions, a1 as DeleteOneOptions, ai as Document, aP as DocumentHandler, a7 as EnhancedOmit, ay as ExpectedDocumentVersion, aw as ExpectedDocumentVersionGeneral, ax as ExpectedDocumentVersionValue, F as ExtractPongoDatabaseDriverOptions, a3 as FindOptions, $ as HandleOptions, a5 as HasId, a6 as InferIdType, Y as InsertManyOptions, X as InsertOneOptions, aB as NO_CONCURRENCY_CHECK, am as NonObjectIdLikeDocument, a4 as ObjectId, al as ObjectIdLike, aG as OperationResult, aj as OptionalId, a8 as OptionalUnlessRequiredId, aa as OptionalUnlessRequiredIdAndVersion, a9 as OptionalUnlessRequiredVersion, ak as OptionalVersion, R as PongoClientSchemaMetadata, r as PongoCollectionSQLBuilder, u as PongoCollectionSchemaComponentOptions, O as PongoCollectionSchemaMetadata, t as PongoCollectionURN, s as PongoCollectionURNType, V as PongoDBCollectionOptions, b as PongoDatabaseDriverOptions, G as PongoDatabaseDriverRegistry, y as PongoDatabaseSQLBuilder, x as PongoDatabaseSchemaComponentOptions, w as PongoDatabaseURN, v as PongoDatabaseURNType, Q as PongoDbSchemaMetadata, J as PongoDbWithSchema, aN as PongoDeleteManyResult, aM as PongoDeleteResult, ap as PongoFilter, ar as PongoFilterOperator, aO as PongoHandleResult, aJ as PongoInsertManyResult, aI as PongoInsertOneResult, W as PongoMigrationOptions, U as PongoSchemaConfig, aF as PongoUpdate, aL as PongoUpdateManyResult, aK as PongoUpdateResult, ah as RegExpOrString, a0 as ReplaceOneOptions, aq as RootFilterOperators, _ as UpdateManyOptions, Z as UpdateOneOptions, ab as WithId, af as WithIdAndVersion, ad as WithVersion, ac as WithoutId, ag as WithoutIdAndVersion, ae as WithoutVersion, aE as expectedVersion, aD as expectedVersionValue, aC as isGeneralExpectedDocumentVersion, aH as operationResult, H as pongoDatabaseDriverRegistry, L as pongoSchema, N as proxyClientWithSchema, M as proxyPongoDbWithSchema, T as toClientSchemaMetadata, S as toDbSchemaMetadata } from './pongoCollectionSchemaComponent-JWAbt4LN.cjs';
2
+ import { c as PongoDocument, a as PongoDb, d as PongoCollectionSchemaComponent, C as CollectionOperationOptions, e as PongoCollection, f as PongoClientSchema, P as PongoDatabaseDriver, g as PongoCollectionSchema, h as PongoDatabaseFactoryOptions, i as PongoDatabaseSchemaComponent, j as PongoDbSchema, A as AnyPongoDb, k as AnyPongoDatabaseDriver, l as PongoClientOptions, m as PongoClient, E as ExtractPongoDatabaseTypeFromDriver, n as PongoClientWithSchema, o as PongoTransactionOptions, p as PongoSession, q as PongoDbTransaction } from './pongoCollectionSchemaComponent-OLLG1OUL.cjs';
3
+ export { au as $inc, av as $push, as as $set, at as $unset, an as AlternativeType, z as AnyPongoDatabaseDriverOptions, I as CollectionsMap, ao as Condition, K as DBsMap, aA as DOCUMENT_DOES_NOT_EXIST, az as DOCUMENT_EXISTS, B as DatabaseDriverOptionsWithConnectionString, D as DatabaseDriverOptionsWithDatabaseName, a2 as DeleteManyOptions, a1 as DeleteOneOptions, ai as Document, aP as DocumentHandler, a7 as EnhancedOmit, ay as ExpectedDocumentVersion, aw as ExpectedDocumentVersionGeneral, ax as ExpectedDocumentVersionValue, F as ExtractPongoDatabaseDriverOptions, a3 as FindOptions, $ as HandleOptions, a5 as HasId, a6 as InferIdType, Y as InsertManyOptions, X as InsertOneOptions, aB as NO_CONCURRENCY_CHECK, am as NonObjectIdLikeDocument, a4 as ObjectId, al as ObjectIdLike, aG as OperationResult, aj as OptionalId, a8 as OptionalUnlessRequiredId, aa as OptionalUnlessRequiredIdAndVersion, a9 as OptionalUnlessRequiredVersion, ak as OptionalVersion, R as PongoClientSchemaMetadata, r as PongoCollectionSQLBuilder, u as PongoCollectionSchemaComponentOptions, O as PongoCollectionSchemaMetadata, t as PongoCollectionURN, s as PongoCollectionURNType, V as PongoDBCollectionOptions, b as PongoDatabaseDriverOptions, G as PongoDatabaseDriverRegistry, y as PongoDatabaseSQLBuilder, x as PongoDatabaseSchemaComponentOptions, w as PongoDatabaseURN, v as PongoDatabaseURNType, Q as PongoDbSchemaMetadata, J as PongoDbWithSchema, aN as PongoDeleteManyResult, aM as PongoDeleteResult, ap as PongoFilter, ar as PongoFilterOperator, aO as PongoHandleResult, aJ as PongoInsertManyResult, aI as PongoInsertOneResult, W as PongoMigrationOptions, U as PongoSchemaConfig, aF as PongoUpdate, aL as PongoUpdateManyResult, aK as PongoUpdateResult, ah as RegExpOrString, a0 as ReplaceOneOptions, aq as RootFilterOperators, _ as UpdateManyOptions, Z as UpdateOneOptions, ab as WithId, af as WithIdAndVersion, ad as WithVersion, ac as WithoutId, ag as WithoutIdAndVersion, ae as WithoutVersion, aE as expectedVersion, aD as expectedVersionValue, aC as isGeneralExpectedDocumentVersion, aH as operationResult, H as pongoDatabaseDriverRegistry, L as pongoSchema, N as proxyClientWithSchema, M as proxyPongoDbWithSchema, T as toClientSchemaMetadata, S as toDbSchemaMetadata } from './pongoCollectionSchemaComponent-OLLG1OUL.cjs';
4
4
 
5
5
  type PongoCollectionOptions<T extends PongoDocument = PongoDocument, DriverType extends DatabaseDriverType = DatabaseDriverType, Payload extends PongoDocument = T> = {
6
6
  db: PongoDb<DriverType>;
package/dist/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { DatabaseDriverType, Dumbo, MigrationStyle, JSONSerializer, SQLExecutor, JSONSerializationOptions } from '@event-driven-io/dumbo';
2
- import { c as PongoDocument, a as PongoDb, d as PongoCollectionSchemaComponent, C as CollectionOperationOptions, e as PongoCollection, f as PongoClientSchema, P as PongoDatabaseDriver, g as PongoCollectionSchema, h as PongoDatabaseFactoryOptions, i as PongoDatabaseSchemaComponent, j as PongoDbSchema, A as AnyPongoDb, k as AnyPongoDatabaseDriver, l as PongoClientOptions, m as PongoClient, E as ExtractPongoDatabaseTypeFromDriver, n as PongoClientWithSchema, o as PongoTransactionOptions, p as PongoSession, q as PongoDbTransaction } from './pongoCollectionSchemaComponent-JWAbt4LN.js';
3
- export { au as $inc, av as $push, as as $set, at as $unset, an as AlternativeType, z as AnyPongoDatabaseDriverOptions, I as CollectionsMap, ao as Condition, K as DBsMap, aA as DOCUMENT_DOES_NOT_EXIST, az as DOCUMENT_EXISTS, B as DatabaseDriverOptionsWithConnectionString, D as DatabaseDriverOptionsWithDatabaseName, a2 as DeleteManyOptions, a1 as DeleteOneOptions, ai as Document, aP as DocumentHandler, a7 as EnhancedOmit, ay as ExpectedDocumentVersion, aw as ExpectedDocumentVersionGeneral, ax as ExpectedDocumentVersionValue, F as ExtractPongoDatabaseDriverOptions, a3 as FindOptions, $ as HandleOptions, a5 as HasId, a6 as InferIdType, Y as InsertManyOptions, X as InsertOneOptions, aB as NO_CONCURRENCY_CHECK, am as NonObjectIdLikeDocument, a4 as ObjectId, al as ObjectIdLike, aG as OperationResult, aj as OptionalId, a8 as OptionalUnlessRequiredId, aa as OptionalUnlessRequiredIdAndVersion, a9 as OptionalUnlessRequiredVersion, ak as OptionalVersion, R as PongoClientSchemaMetadata, r as PongoCollectionSQLBuilder, u as PongoCollectionSchemaComponentOptions, O as PongoCollectionSchemaMetadata, t as PongoCollectionURN, s as PongoCollectionURNType, V as PongoDBCollectionOptions, b as PongoDatabaseDriverOptions, G as PongoDatabaseDriverRegistry, y as PongoDatabaseSQLBuilder, x as PongoDatabaseSchemaComponentOptions, w as PongoDatabaseURN, v as PongoDatabaseURNType, Q as PongoDbSchemaMetadata, J as PongoDbWithSchema, aN as PongoDeleteManyResult, aM as PongoDeleteResult, ap as PongoFilter, ar as PongoFilterOperator, aO as PongoHandleResult, aJ as PongoInsertManyResult, aI as PongoInsertOneResult, W as PongoMigrationOptions, U as PongoSchemaConfig, aF as PongoUpdate, aL as PongoUpdateManyResult, aK as PongoUpdateResult, ah as RegExpOrString, a0 as ReplaceOneOptions, aq as RootFilterOperators, _ as UpdateManyOptions, Z as UpdateOneOptions, ab as WithId, af as WithIdAndVersion, ad as WithVersion, ac as WithoutId, ag as WithoutIdAndVersion, ae as WithoutVersion, aE as expectedVersion, aD as expectedVersionValue, aC as isGeneralExpectedDocumentVersion, aH as operationResult, H as pongoDatabaseDriverRegistry, L as pongoSchema, N as proxyClientWithSchema, M as proxyPongoDbWithSchema, T as toClientSchemaMetadata, S as toDbSchemaMetadata } from './pongoCollectionSchemaComponent-JWAbt4LN.js';
2
+ import { c as PongoDocument, a as PongoDb, d as PongoCollectionSchemaComponent, C as CollectionOperationOptions, e as PongoCollection, f as PongoClientSchema, P as PongoDatabaseDriver, g as PongoCollectionSchema, h as PongoDatabaseFactoryOptions, i as PongoDatabaseSchemaComponent, j as PongoDbSchema, A as AnyPongoDb, k as AnyPongoDatabaseDriver, l as PongoClientOptions, m as PongoClient, E as ExtractPongoDatabaseTypeFromDriver, n as PongoClientWithSchema, o as PongoTransactionOptions, p as PongoSession, q as PongoDbTransaction } from './pongoCollectionSchemaComponent-OLLG1OUL.js';
3
+ export { au as $inc, av as $push, as as $set, at as $unset, an as AlternativeType, z as AnyPongoDatabaseDriverOptions, I as CollectionsMap, ao as Condition, K as DBsMap, aA as DOCUMENT_DOES_NOT_EXIST, az as DOCUMENT_EXISTS, B as DatabaseDriverOptionsWithConnectionString, D as DatabaseDriverOptionsWithDatabaseName, a2 as DeleteManyOptions, a1 as DeleteOneOptions, ai as Document, aP as DocumentHandler, a7 as EnhancedOmit, ay as ExpectedDocumentVersion, aw as ExpectedDocumentVersionGeneral, ax as ExpectedDocumentVersionValue, F as ExtractPongoDatabaseDriverOptions, a3 as FindOptions, $ as HandleOptions, a5 as HasId, a6 as InferIdType, Y as InsertManyOptions, X as InsertOneOptions, aB as NO_CONCURRENCY_CHECK, am as NonObjectIdLikeDocument, a4 as ObjectId, al as ObjectIdLike, aG as OperationResult, aj as OptionalId, a8 as OptionalUnlessRequiredId, aa as OptionalUnlessRequiredIdAndVersion, a9 as OptionalUnlessRequiredVersion, ak as OptionalVersion, R as PongoClientSchemaMetadata, r as PongoCollectionSQLBuilder, u as PongoCollectionSchemaComponentOptions, O as PongoCollectionSchemaMetadata, t as PongoCollectionURN, s as PongoCollectionURNType, V as PongoDBCollectionOptions, b as PongoDatabaseDriverOptions, G as PongoDatabaseDriverRegistry, y as PongoDatabaseSQLBuilder, x as PongoDatabaseSchemaComponentOptions, w as PongoDatabaseURN, v as PongoDatabaseURNType, Q as PongoDbSchemaMetadata, J as PongoDbWithSchema, aN as PongoDeleteManyResult, aM as PongoDeleteResult, ap as PongoFilter, ar as PongoFilterOperator, aO as PongoHandleResult, aJ as PongoInsertManyResult, aI as PongoInsertOneResult, W as PongoMigrationOptions, U as PongoSchemaConfig, aF as PongoUpdate, aL as PongoUpdateManyResult, aK as PongoUpdateResult, ah as RegExpOrString, a0 as ReplaceOneOptions, aq as RootFilterOperators, _ as UpdateManyOptions, Z as UpdateOneOptions, ab as WithId, af as WithIdAndVersion, ad as WithVersion, ac as WithoutId, ag as WithoutIdAndVersion, ae as WithoutVersion, aE as expectedVersion, aD as expectedVersionValue, aC as isGeneralExpectedDocumentVersion, aH as operationResult, H as pongoDatabaseDriverRegistry, L as pongoSchema, N as proxyClientWithSchema, M as proxyPongoDbWithSchema, T as toClientSchemaMetadata, S as toDbSchemaMetadata } from './pongoCollectionSchemaComponent-OLLG1OUL.js';
4
4
 
5
5
  type PongoCollectionOptions<T extends PongoDocument = PongoDocument, DriverType extends DatabaseDriverType = DatabaseDriverType, Payload extends PongoDocument = T> = {
6
6
  db: PongoDb<DriverType>;
package/dist/index.js CHANGED
@@ -34,7 +34,7 @@ import {
34
34
  toClientSchemaMetadata,
35
35
  toDbSchemaMetadata,
36
36
  transactionExecutorOrDefault
37
- } from "./chunk-IBYIIPWV.js";
37
+ } from "./chunk-RM3EUVJ6.js";
38
38
  export {
39
39
  ConcurrencyError,
40
40
  DOCUMENT_DOES_NOT_EXIST,
package/dist/pg.cjs CHANGED
@@ -9,7 +9,7 @@
9
9
 
10
10
 
11
11
 
12
- var _chunkHZZ76RUCcjs = require('./chunk-HZZ76RUC.cjs');
12
+ var _chunkD2PHLX7Pcjs = require('./chunk-D2PHLX7P.cjs');
13
13
 
14
14
  // src/storage/postgresql/core/sqlBuilder/index.ts
15
15
  var _dumbo = require('@event-driven-io/dumbo');
@@ -35,7 +35,7 @@ var handleOperator = (path, operator, value, serializer) => {
35
35
  case "$lte":
36
36
  case "$ne": {
37
37
  const jsonPath = _dumbo.SQL.plain(path.split(".").join(","));
38
- return _dumbo.SQL`data ->> '${jsonPath}' ${_dumbo.SQL.plain(_chunkHZZ76RUCcjs.OperatorMap[operator])} ${value}`;
38
+ return _dumbo.SQL`data ->> '${jsonPath}' ${_dumbo.SQL.plain(_chunkD2PHLX7Pcjs.OperatorMap[operator])} ${value}`;
39
39
  }
40
40
  case "$in": {
41
41
  const jsonPath = `{${path.split(".").join(",")}}`;
@@ -46,7 +46,7 @@ var handleOperator = (path, operator, value, serializer) => {
46
46
  return _dumbo.SQL`data #>> ${jsonPath} != ALL (${value})`;
47
47
  }
48
48
  case "$elemMatch": {
49
- const subQuery = _chunkHZZ76RUCcjs.objectEntries.call(void 0, value).map(
49
+ const subQuery = _chunkD2PHLX7Pcjs.objectEntries.call(void 0, value).map(
50
50
  ([subKey, subValue]) => `@."${subKey}" == ${serializer.serialize(subValue)}`
51
51
  ).join(" && ");
52
52
  return _dumbo.SQL`jsonb_path_exists(data, '$.${_dumbo.SQL.plain(path)}[*] ? (${_dumbo.SQL.plain(subQuery)})')`;
@@ -72,7 +72,7 @@ var handleMetadataOperator = (fieldName, operator, value) => {
72
72
  case "$lt":
73
73
  case "$lte":
74
74
  case "$ne":
75
- return _dumbo.SQL`${_dumbo.SQL.plain(fieldName)} ${_dumbo.SQL.plain(_chunkHZZ76RUCcjs.OperatorMap[operator])} ${value}`;
75
+ return _dumbo.SQL`${_dumbo.SQL.plain(fieldName)} ${_dumbo.SQL.plain(_chunkD2PHLX7Pcjs.OperatorMap[operator])} ${value}`;
76
76
  case "$in":
77
77
  return _dumbo.SQL`${_dumbo.SQL.plain(fieldName)} = ANY (${value})`;
78
78
  case "$nin":
@@ -92,12 +92,12 @@ var constructFilterQuery = (filter, serializer) => _dumbo.SQL.merge(
92
92
  ` ${AND} `
93
93
  );
94
94
  var constructComplexFilterQuery = (key, value, serializer) => {
95
- const isEquality = !_chunkHZZ76RUCcjs.hasOperators.call(void 0, value);
95
+ const isEquality = !_chunkD2PHLX7Pcjs.hasOperators.call(void 0, value);
96
96
  return _dumbo.SQL.merge(
97
- _chunkHZZ76RUCcjs.objectEntries.call(void 0, value).map(
97
+ _chunkD2PHLX7Pcjs.objectEntries.call(void 0, value).map(
98
98
  ([nestedKey, val]) => isEquality ? handleOperator(
99
99
  `${key}.${nestedKey}`,
100
- _chunkHZZ76RUCcjs.QueryOperators.$eq,
100
+ _chunkD2PHLX7Pcjs.QueryOperators.$eq,
101
101
  val,
102
102
  serializer
103
103
  ) : handleOperator(key, nestedKey, val, serializer)
@@ -109,7 +109,7 @@ var isRecord = (value) => value !== null && typeof value === "object" && !Array.
109
109
 
110
110
  // src/storage/postgresql/core/sqlBuilder/update/index.ts
111
111
 
112
- var buildUpdateQuery = (update, serializer) => _chunkHZZ76RUCcjs.objectEntries.call(void 0, update).reduce(
112
+ var buildUpdateQuery = (update, serializer) => _chunkD2PHLX7Pcjs.objectEntries.call(void 0, update).reduce(
113
113
  (currentUpdateQuery, [op, value]) => {
114
114
  switch (op) {
115
115
  case "$set":
@@ -182,7 +182,7 @@ var postgresSQLBuilder = (collectionName, serializer) => ({
182
182
  RETURNING _id;`;
183
183
  },
184
184
  updateOne: (filter, update, options) => {
185
- const expectedVersion = _chunkHZZ76RUCcjs.expectedVersionValue.call(void 0, _optionalChain([options, 'optionalAccess', _ => _.expectedVersion]));
185
+ const expectedVersion = _chunkD2PHLX7Pcjs.expectedVersionValue.call(void 0, _optionalChain([options, 'optionalAccess', _ => _.expectedVersion]));
186
186
  const expectedVersionUpdate = expectedVersion != null ? _dumbo.SQL`AND ${_dumbo.SQL.identifier(collectionName)}._version = ${expectedVersion}` : _dumbo.SQL``;
187
187
  const filterQuery = _dumbo.isSQL.call(void 0, filter) ? filter : constructFilterQuery(filter, serializer);
188
188
  const updateQuery = _dumbo.isSQL.call(void 0, update) ? update : buildUpdateQuery(update, serializer);
@@ -211,7 +211,7 @@ var postgresSQLBuilder = (collectionName, serializer) => ({
211
211
  ON existing._id = updated._id;`;
212
212
  },
213
213
  replaceOne: (filter, document, options) => {
214
- const expectedVersion = _chunkHZZ76RUCcjs.expectedVersionValue.call(void 0, _optionalChain([options, 'optionalAccess', _2 => _2.expectedVersion]));
214
+ const expectedVersion = _chunkD2PHLX7Pcjs.expectedVersionValue.call(void 0, _optionalChain([options, 'optionalAccess', _2 => _2.expectedVersion]));
215
215
  const expectedVersionUpdate = expectedVersion != null ? _dumbo.SQL`AND ${_dumbo.SQL.identifier(collectionName)}._version = ${expectedVersion}` : _dumbo.SQL``;
216
216
  const filterQuery = _dumbo.isSQL.call(void 0, filter) ? filter : constructFilterQuery(filter, serializer);
217
217
  return _dumbo.SQL`
@@ -249,7 +249,7 @@ var postgresSQLBuilder = (collectionName, serializer) => ({
249
249
  ${where(filterQuery)};`;
250
250
  },
251
251
  deleteOne: (filter, options) => {
252
- const expectedVersion = _chunkHZZ76RUCcjs.expectedVersionValue.call(void 0, _optionalChain([options, 'optionalAccess', _3 => _3.expectedVersion]));
252
+ const expectedVersion = _chunkD2PHLX7Pcjs.expectedVersionValue.call(void 0, _optionalChain([options, 'optionalAccess', _3 => _3.expectedVersion]));
253
253
  const expectedVersionUpdate = expectedVersion != null ? _dumbo.SQL`AND ${_dumbo.SQL.identifier(collectionName)}._version = ${expectedVersion}` : _dumbo.SQL``;
254
254
  const filterQuery = _dumbo.isSQL.call(void 0, filter) ? filter : constructFilterQuery(filter, serializer);
255
255
  return _dumbo.SQL`
@@ -315,7 +315,7 @@ var pgDatabaseDriver = {
315
315
  driverType: _pg.PgDriverType,
316
316
  databaseFactory: (options) => {
317
317
  const databaseName = _nullishCoalesce(_nullishCoalesce(options.databaseName, () => ( _pg.postgreSQLMetadata.parseDatabaseName(options.connectionString))), () => ( _pg.postgreSQLMetadata.defaultDatabaseName));
318
- return _chunkHZZ76RUCcjs.PongoDatabase.call(void 0, {
318
+ return _chunkD2PHLX7Pcjs.PongoDatabase.call(void 0, {
319
319
  ...options,
320
320
  pool: _dumbo.dumbo.call(void 0, {
321
321
  connectionString: options.connectionString,
@@ -323,9 +323,9 @@ var pgDatabaseDriver = {
323
323
  ...options.connectionOptions,
324
324
  serialization: { serializer: options.serializer }
325
325
  }),
326
- schemaComponent: _chunkHZZ76RUCcjs.PongoDatabaseSchemaComponent.call(void 0, {
326
+ schemaComponent: _chunkD2PHLX7Pcjs.PongoDatabaseSchemaComponent.call(void 0, {
327
327
  driverType: _pg.PgDriverType,
328
- collectionFactory: (schema) => _chunkHZZ76RUCcjs.PongoCollectionSchemaComponent.call(void 0, {
328
+ collectionFactory: (schema) => _chunkD2PHLX7Pcjs.PongoCollectionSchemaComponent.call(void 0, {
329
329
  driverType: _pg.PgDriverType,
330
330
  definition: schema,
331
331
  migrationsOrSchemaComponents: {
@@ -336,14 +336,14 @@ var pgDatabaseDriver = {
336
336
  _nullishCoalesce(_optionalChain([options, 'access', _6 => _6.serialization, 'optionalAccess', _7 => _7.serializer]), () => ( _dumbo.JSONSerializer))
337
337
  )
338
338
  }),
339
- definition: _nullishCoalesce(_optionalChain([options, 'access', _8 => _8.schema, 'optionalAccess', _9 => _9.definition]), () => ( _chunkHZZ76RUCcjs.pongoSchema.db(databaseName, {})))
339
+ definition: _nullishCoalesce(_optionalChain([options, 'access', _8 => _8.schema, 'optionalAccess', _9 => _9.definition]), () => ( _chunkD2PHLX7Pcjs.pongoSchema.db(databaseName, {})))
340
340
  }),
341
341
  databaseName
342
342
  });
343
343
  }
344
344
  };
345
345
  var usePgDatabaseDriver = () => {
346
- _chunkHZZ76RUCcjs.pongoDatabaseDriverRegistry.register(_pg.PgDriverType, pgDatabaseDriver);
346
+ _chunkD2PHLX7Pcjs.pongoDatabaseDriverRegistry.register(_pg.PgDriverType, pgDatabaseDriver);
347
347
  };
348
348
  usePgDatabaseDriver();
349
349
 
package/dist/pg.d.cts CHANGED
@@ -1,6 +1,6 @@
1
1
  import * as _event_driven_io_dumbo from '@event-driven-io/dumbo';
2
2
  import { JSONSerializer } from '@event-driven-io/dumbo';
3
- import { r as PongoCollectionSQLBuilder, P as PongoDatabaseDriver, a as PongoDb, b as PongoDatabaseDriverOptions } from './pongoCollectionSchemaComponent-JWAbt4LN.cjs';
3
+ import { r as PongoCollectionSQLBuilder, P as PongoDatabaseDriver, a as PongoDb, b as PongoDatabaseDriverOptions } from './pongoCollectionSchemaComponent-OLLG1OUL.cjs';
4
4
  import { PgDriverType, PgConnection } from '@event-driven-io/dumbo/pg';
5
5
  import pg from 'pg';
6
6
 
package/dist/pg.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import * as _event_driven_io_dumbo from '@event-driven-io/dumbo';
2
2
  import { JSONSerializer } from '@event-driven-io/dumbo';
3
- import { r as PongoCollectionSQLBuilder, P as PongoDatabaseDriver, a as PongoDb, b as PongoDatabaseDriverOptions } from './pongoCollectionSchemaComponent-JWAbt4LN.js';
3
+ import { r as PongoCollectionSQLBuilder, P as PongoDatabaseDriver, a as PongoDb, b as PongoDatabaseDriverOptions } from './pongoCollectionSchemaComponent-OLLG1OUL.js';
4
4
  import { PgDriverType, PgConnection } from '@event-driven-io/dumbo/pg';
5
5
  import pg from 'pg';
6
6
 
package/dist/pg.js CHANGED
@@ -9,7 +9,7 @@ import {
9
9
  objectEntries,
10
10
  pongoDatabaseDriverRegistry,
11
11
  pongoSchema
12
- } from "./chunk-IBYIIPWV.js";
12
+ } from "./chunk-RM3EUVJ6.js";
13
13
 
14
14
  // src/storage/postgresql/core/sqlBuilder/index.ts
15
15
  import { isSQL, SQL as SQL4, sqlMigration } from "@event-driven-io/dumbo";
@@ -192,6 +192,7 @@ type AnyPongoDb = PongoDb<DatabaseDriverType>;
192
192
  type PongoMigrationOptions = {
193
193
  dryRun?: boolean | undefined;
194
194
  ignoreMigrationHashMismatch?: boolean | undefined;
195
+ migrationTimeoutMs?: number | undefined;
195
196
  };
196
197
  type CollectionOperationOptions = {
197
198
  session?: PongoSession;
@@ -192,6 +192,7 @@ type AnyPongoDb = PongoDb<DatabaseDriverType>;
192
192
  type PongoMigrationOptions = {
193
193
  dryRun?: boolean | undefined;
194
194
  ignoreMigrationHashMismatch?: boolean | undefined;
195
+ migrationTimeoutMs?: number | undefined;
195
196
  };
196
197
  type CollectionOperationOptions = {
197
198
  session?: PongoSession;