forked from cambridge-healthcare/grunt-stencil
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathdot.js
35 lines (27 loc) · 793 Bytes
/
dot.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
"use strict";
/*
* A dot compiler that uses the given dotvar
* and template settings to compile a dot string.
*
* An applies_to function is provided to test against
* input files that require this compiler
*/
module.exports = setup;
var dot = require("dot");
var _ = require("underscore");
function setup (config) {
var dotvar = config.dotvar || {};
var template_settings = config.template_settings || {};
return {
compile: compile,
applies_to: applies_to
};
function compile (src, params) {
var settings = _.extend({}, dot.templateSettings, template_settings);
var template = dot.template(src, settings);
return template(_.extend({}, dotvar, params));
}
function applies_to (file_path) {
return /\.dot(\.|$)|\.html$/.test(file_path);
}
}