pgSQL webpack loader
npm install pg-minify-webpack-loaderraw-loader
npm i --save-dev pg-minify-webpack-loader
javascript
module.exports = {
module: {
rules: [
{
test: /\.sql$/,
use: 'pg-minify-webpack-loader'
}
]
},
resolve: {
extensions: ['.sql'] // remember to add this!
}
}
`
$3
The following options are available:
| Name | Type | Accepts | Default value | Comment |
| --- | --- | --- | --- | --- |
| compress | boolean | true, false | true | If true, the SQL file is minified, i.e. all the comments and unnecessary whitespaces are removed. If false, the SQL file is loaded as-is. |
| module | string | 'es6', 'commonjs' | 'es6' | Specifies how the module will be compiled: as ES6 or commonjs module. |
The easiest way to pass options to the loader is to use the query string:
`javascript
{
test: /\.sql$/,
use: 'pg-minify-webpack-loader?compress=false'
}
`
options object may also be specified:
`javascript
{
test: /\.sql$/,
loader: 'pg-minify-webpack-loader', // 'loader' instead of 'use'!
options: {
compress: false
}
}
`
Usage
`javascript
// in ES6+ environments
import pgsqlQuery from './pgsqlQuery.sql';
// in commonjs environments (module = 'es6')
var pgsqlQuery = require('./pgsqlQuery.sql').default;
// in commonjs environments (module = 'commonjs')
var pgsqlQuery = require('./pgsqlQuery.sql');
runTheQuery(pgsqlQuery);
`
Usage with TypeScript
Create (if you haven't already) a separate file called declarations.d.ts in the root directory of your project and add the following code snippet:
`typescript
declare module "*.sql" {
var _: string;
export default _;
}
``