https://discord.gg/rPaBEz4
Documentación en proceso, todos los métodos están documentados con JsDoc, cualquier duda:Ejemplo:
{ let db = await mechdbabrirDB; //Si se quiere abrir de forma síncrona, usar sync await db; let cliente = db; //{ nombre: 'Nombre', apellido: 'Apellido', edad: 18 } await db; //cliente = { nombre: 'Nombre', apellido: 'Apellido', edad: 20 } }
size(): number
Muestra la cantidad de claves principales que tiene la base de datos
establecer(): Promise
/** * Establece un valor en la base de datos de manera asíncrona * @param * @param * @param {{separador: ".", guardar: true}} opciones * @example await establecer("id", 1) * @example await establecer("usuario.dinero.cartera", 200) * @example await establecer("usuario-dinero-cartera", 200, {separador: "-"}) * @returns */
tiene(): boolean
/** * Comprueba si la base de datos contiene la clave indicada * @param * @example .tiene("usuarios.234123"); * @param {{separador: "."}} opciones Opciones extra * @returns */
eliminar(): Promise
/** * Elimina un elemento de la base de datos * @param * @param {{separador: ".", guardar: true}} opciones Opciones extra * @example .eliminar("usuarios.12342"); * @returns */
push(): Promise
/** * Agrega un valor al final de un array * @param * @param * @param {{separador: ".", guardar: true}} opciones Opciones extra * @example .push("usuarios.12341.logros", {nombre: "Logro", xp: 200}); * @returns */
buscar(): any
/** * Adaptación de Array.prototype.find (Busca un elemento dentro de un array) * @param * @param * @example .buscar("usuarios.12341.logros", (valor) => valor.xp > 10); * @returns */
filtrar(): any[]
/** * Adaptación de Array.prototype.filter (Devuelve un nuevo array, con los valores del array indicado que cumplan la condición) * @param * @param * @param * @example .filtrar("usuarios.12341.logros", (valor) => valor.xp > 10); * @returns */
map(): any[]
/** * Adaptación de Array.prototype.map * @param * @param * @example .map("usuarios.12341.logros", (valor) => "El logro " + valor.nombre + " otorga " + valor.xp + "experiencia") * @param * @returns */
ordenar(): any[]
/** * Ordena un array, se puede indicar si se quiere ordenar de manera ascendente, o descendente * En caso de indicar un callback, se usará para ordenar el array * @param * @param {{callback: (a, b) => void, asc: true, separador: ".", guardar: false}} opciones Opciones extra * @example .ordenar("usuarios.12341.logros", {asc: false}) //Ordena el array de manera descendente * @example .ordenar("usuarios.12341.logros", {callback: (a, b) => a.xp - b.xp}) //Ordena el array usando un callback * @returns */
some(): any
/** * Busca un valor dentro de la base de datos, que cumpla con la condición, usando la clave * En caso de marcar 'global' como true, se ignorará la clave y se buscará en toda la base de datos. * También al marcar 'global' como true, se devolverá un array -> [valor, clave] * * @param * @param {(valor, clave: string) => void} callback Callback que se usará para la comprobación * @param {global: false, separador: "."} opciones Opciones extra * @example .some("usuarios", (valor, clave) => valor.fechas.includes(20/12/2020)) * @returns */
delIndex(): Promise
/** * Elimina un elemento que tenga la posición indicada, en el array * @param * @param * @param {{separador: ".", guardar: true}} opciones Opciones extra * @example .delIndex("usuarios.12341.logros", 1) * @returns */
setIndex(): Promise
/** * Cambia un elemento del array indicado, en la posición indicada * @param * @param * @param * @param {{separador: ".", guardar: true}} opciones Opciones extra * @exapmle .setIndex("usuarios.12341.logros", 1, {Nombre: "Nombre", xp: 20}) * @returns */
splice(): Promise
/** * Elimina el valor especificado, del array especificado -> Array.prototype.splice * @param * @param * @param {{separador: ".", guardar: true}} opciones Opciones extra * @exapmle .splice("usuarios.12314.logros", {Nombre: "Nombre", xp: 20}) * @returns */
random(): any[]
/** * Devuelve la cantidad especificada de objetos aleatorios, en la clave indicada * @param * @param * @param {{separador: "."}} opciones Opciones extra * @exapmle .random("usuarios", 5); * @returns */
obtener(): any
/** * Devuelve el valor indicado * @param * @param {{separador: "."}} opciones Opciones extra * @example .obtener("usuarios.12421"); * @returns */
opreacion(): Promise
/** * Realiza una operación matemática con dicha clave * @param * @param * @param {"sumar"|"restar"|"multiplicar"|"dividir"} operacion El tipo de operación * @param {{separador: ".", guardar: true}} opciones Opciones extra * @exapmle .operacion("usuarios.1241.nivel", 1, "sumar"); * @returns */
vaciar(): Promise
/** * Vacía la base de datos * @param * @example .guardar() * @returns */
valores(): any[]
/** * Devuelve todos los valores de la propiedad indicada (tiene que ser un objeto) * @param * @param {{separador: "."}} opciones Opciones extra * @example .valores("usuarios"); * @returns */
claves(): string[]
/** * Devuelve todas las claves de la propiedad indicada (tiene que ser un objeto) * @param * @param {{separador: "."}} opciones Opciones extra * @exapmle .claves("usuarios"); * @returns */