UNPKG

pg-require-sql

Version:

Requires sql files and export functions for querying via pg

34 lines (31 loc) 821 B
'use strict' var camelize = require('camelize') var fs = require('fs') var path = require('path') var R = require('ramda') module.exports = R.pipe( function (directory) { var files = fs.readdirSync(directory) return R.map( function (filename) { var ext = path.extname(filename) return { ext: ext, absolutePath: path.join(directory, filename), basename: path.basename(filename, ext) } }, files ) }, R.filter(function (filename) { return filename.ext === '.sql' }), R.reduce(function (acc, filename) { acc[camelize(filename.basename)] = fs.readFileSync(filename.absolutePath, 'utf8') return acc }, {}), R.mapObj(function (sql) { return R.curry(function (params, query) { return query(sql, params) }) }) )