-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.js
46 lines (31 loc) · 796 Bytes
/
index.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
36
37
38
39
40
41
42
43
44
45
46
const jstsEngine = require('jsts-engine')
module.exports = {
read: function(selector = '[type="text/jsts"]') {
return [...document.querySelectorAll(selector)]
.map(tag => tag.innerHTML)
},
process: function(strings = [], environment = {}) {
return Array.isArray(strings)
? strings.map(string => jstsEngine(string, environment))
: jstsEngine(strings, environment)
},
render: function(strings = [], tag = document.body) {
tag.innerHTML += strings
.map(string => string[0])
.join('\n')
return tag
},
mount: function(
selector = '[type="text/jsts"]',
tag = document.body,
environment = {}
) {
return render(
process(
read(selector),
environment
),
tag
)
}
}