UNPKG

litemap

Version:

A TypeScript library for mapping and processing data with SQLite integration

87 lines (77 loc) 2.88 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.UserDatabaseManager = exports.SQLiteDatabase = exports.DatabaseFactory = void 0; const DatabaseFactory_1 = __importDefault(require("./litemap/DatabaseFactory")); exports.DatabaseFactory = DatabaseFactory_1.default; const SQLiteDatabase_1 = __importDefault(require("./litemap/SQLitedb/SQLiteDatabase")); exports.SQLiteDatabase = SQLiteDatabase_1.default; const UserDatabaseManager_1 = __importDefault(require("./litemap/DatabaseManager/UserDatabaseManager")); exports.UserDatabaseManager = UserDatabaseManager_1.default; /* // Example usage with multiple databases async function main() { try { // Ensure the db directory exists await fs.mkdir("./db", { recursive: true }); // Create multiple database instances const dbManagers = [ DatabaseFactory.Instance("./db/litemap.db"), DatabaseFactory.Instance("./db/testmap.db"), DatabaseFactory.Instance("./db/anothermap.db"), ]; // Sample user data const sampleUsers = { user1: { name: "Alice", role: "admin", createdAt: new Date().toISOString(), }, user2: { name: "Bob", role: "editor", createdAt: new Date().toISOString(), }, }; // Add users to each database and perform operations for (const dbManager of dbManagers) { // Add sample users await dbManager.addUsers(sampleUsers); console.log(`Added users to ${dbManager.constructor.name}:`, Object.keys(sampleUsers)); // Update user1's lastLogin await dbManager.updateUser("user1", { lastLogin: new Date().toISOString(), }); console.log(`Updated user1 in ${dbManager.constructor.name}`); // Get all user keys const userKeys = await dbManager.getAllUserKeys(); console.log(`All user keys in ${dbManager.constructor.name}:`, userKeys); // Get and log user details const users = [ await dbManager.getUser("user1"), await dbManager.getUser("user2"), ]; for (const user of users) { if (user) { console.log(`User ${user.name} has role: ${user.role} in ${dbManager.constructor.name}`); } } // Try to delete a non-existent user const deleted = await dbManager.deleteUser("user3"); console.log(`Deleted user3 in ${dbManager.constructor.name}:`, deleted); } // Close all databases await DatabaseFactory.closeAll(); } catch (error) { console.error("Error:", error); } } main(); */ module.exports = { DatabaseFactory: DatabaseFactory_1.default, SQLiteDatabase: SQLiteDatabase_1.default, UserDatabaseManager: UserDatabaseManager_1.default, };