Press n or j to go to the next uncovered block, b, p or k for the previous block.
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 | 20x 20x 1012x 1012x 1012x 1012x 1012x 1012x 1012x 1011x 1011x 1012x 5416x 1121x 1716x 1121x 302x 4295x 1012x 4634x 1012x | const templater = require('./templater')
module.exports = function (initValues, { element, template } = {}) {
var item = this
this._values = {}
this.found = false
this.filtered = false
var init = function (values, { element, template } = {}) {
if (element) item.elm = element
if (!template) throw new Error('missing_item_template')
item.template = template
item.values(values)
}
this.values = function (newValues) {
if (newValues !== undefined) {
for (var name in newValues) {
item._values[name] = newValues[name]
}
if (item.elm) {
templater.set(item.elm, item.values(), item.template.valueNames)
}
} else {
return item._values
}
}
this.matching = function ({ searched, filtered }) {
return (
(filtered && searched && item.found && item.filtered) ||
(filtered && !searched && item.filtered) ||
(!filtered && searched && item.found) ||
(!filtered && !searched)
)
}
init(initValues, { element, template })
}
|