quickpostgres
Version:
An easy, beginner-friendly PostgreSQL database wrapper similar to quick.db.
19 lines (15 loc) • 592 B
text/typescript
import { Options, Params } from "../index";
import { Client } from "pg";
import get from "lodash/get";
export default async (db: Client, params: Params, options: Options) => {
// Fetch entry
let fetched = await db.query(
`SELECT * FROM ${options.table} WHERE ID = ($1)`,
[ ]
);
if (!fetched.rows.length) return null; // If empty, return null
fetched = JSON.parse(fetched.rows[0].json);
// Check if target was supplied
if (params.ops.target) fetched = get(fetched, params.ops.target); // Get prop using dot notation
return typeof fetched !== "undefined";
};