jsonnet-node-loader
v0.1.0
Published
A loader that allows Node.js to import Jsonnet settings from an ESModule file.
Downloads
5
Readme
jsonnet-node-loader
A loader that allows Node.js to import Jsonnet settings from an ESModule file.
Features
- Support importing
.jsonnet
file
Installation
If you're using the npm or yarn CLI, then add the plugin by:
# yarn
$ yarn add -D jsonnet-node-loader
# or npm
$ npm install --save-dev jsonnet-node-loader
Usage
loader
option
Specify jsonnet-node-loader in the loader option and execute the file.
Then, when the jsonnet file is imported, the evaluated value is returned.
$ node --experimental-loader jsonnet-node-loader example.mjs
{
person1: { name: 'Alice', welcome: 'Hello Alice!' },
person2: { name: 'Bob', welcome: 'Hello Bob!' }
}
import data from './example.jsonnet';
console.log(data);
{
person1: {
name: "Alice",
welcome: "Hello " + self.name + "!",
},
person2: self.person1 { name: "Bob" },
}
Advanced usage
When using std.extVar(x)
, query parameters can be specified and passed when importing vars.jsonnet
.
{
vars: {
foo: std.extVar('foo'),
var: std.extVar('bar'),
},
}
import data from './vars.jsonnet?foo=1&bar=2';
console.log(data);
// { vars: { foo: '1', var: '2' } }
License
This software is released under the MIT License, see LICENSE.