@fin.cx/skr
Version:
SKR03 and SKR04 German accounting standards for double-entry bookkeeping
28 lines • 2.03 kB
JavaScript
import * as plugins from './plugins.js';
let dbInstance = null;
export const getDb = async (config) => {
if (!dbInstance) {
if (!config) {
throw new Error('Database configuration required for first initialization');
}
dbInstance = new plugins.smartdata.SmartdataDb({
mongoDbUrl: config.mongoDbUrl,
mongoDbName: config.dbName || 'skr_accounting',
});
await dbInstance.init();
}
return dbInstance;
};
export const getDbSync = () => {
if (!dbInstance) {
throw new Error('Database not initialized. Call getDb() first.');
}
return dbInstance;
};
export const closeDb = async () => {
if (dbInstance) {
await dbInstance.close();
dbInstance = null;
}
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2tyLmRhdGFiYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHMvc2tyLmRhdGFiYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxPQUFPLE1BQU0sY0FBYyxDQUFDO0FBR3hDLElBQUksVUFBVSxHQUF5QyxJQUFJLENBQUM7QUFFNUQsTUFBTSxDQUFDLE1BQU0sS0FBSyxHQUFHLEtBQUssRUFDeEIsTUFBd0IsRUFDZ0IsRUFBRTtJQUMxQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDaEIsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ1osTUFBTSxJQUFJLEtBQUssQ0FDYiwwREFBMEQsQ0FDM0QsQ0FBQztRQUNKLENBQUM7UUFFRCxVQUFVLEdBQUcsSUFBSSxPQUFPLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQztZQUM3QyxVQUFVLEVBQUUsTUFBTSxDQUFDLFVBQVU7WUFDN0IsV0FBVyxFQUFFLE1BQU0sQ0FBQyxNQUFNLElBQUksZ0JBQWdCO1NBQy9DLENBQUMsQ0FBQztRQUVILE1BQU0sVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxPQUFPLFVBQVUsQ0FBQztBQUNwQixDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsR0FBa0MsRUFBRTtJQUMzRCxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDaEIsTUFBTSxJQUFJLEtBQUssQ0FBQywrQ0FBK0MsQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFDRCxPQUFPLFVBQVUsQ0FBQztBQUNwQixDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUcsS0FBSyxJQUFtQixFQUFFO0lBQy9DLElBQUksVUFBVSxFQUFFLENBQUM7UUFDZixNQUFNLFVBQVUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUN6QixVQUFVLEdBQUcsSUFBSSxDQUFDO0lBQ3BCLENBQUM7QUFDSCxDQUFDLENBQUMifQ==