feat(esmole): store, sources, registry, manager, backend binders

This commit is contained in:
admin committed 2026-06-16 20:56:03 +05:00
1 parent 42712d508c
commit 889e844768
11 files changed
+330

No files matched your search

+18
View File
@@ -0,0 +1,18 @@
import { createRegistry as coreCreate, type Registry } from '@dbmole/core'
import { type ConnectionConfig, connectionConfigSchema } from './schema.js'
import { readConfigFile, readEnvConnections } from './sources.js'
import { readStore, writeStore } from './store.js'
export type EsRegistry = Registry<ConnectionConfig>
export type RegistryOptions = { storePath: string; configPath?: string; env?: NodeJS.ProcessEnv }
export const createRegistry = (options: RegistryOptions): EsRegistry => {
const env = options.env ?? process.env
return coreCreate<ConnectionConfig>({
schema: connectionConfigSchema,
readStore: () => readStore(options.storePath),
writeStore: (configs) => writeStore(options.storePath, configs),
readConfigFile: () => readConfigFile(options.configPath),
readEnvConnections: () => readEnvConnections(env)
})
}