all files / liquidjs/src/ operators.js

100% Statements 15/15
100% Branches 20/20
100% Functions 0/0
100% Lines 13/13
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18          
var operators = {
  '==': (l, r) => l === r,
  '!=': (l, r) => l !== r,
  '>': (l, r) => l !== null && r !== null && l > r,
  '<': (l, r) => l !== null && r !== null && l < r,
  '>=': (l, r) => l !== null && r !== null && l >= r,
  '<=': (l, r) => l !== null && r !== null && l <= r,
  'contains': (l, r) => {
    if (!l) return false
    if (typeof l.indexOf !== 'function') return false
    return l.indexOf(r) > -1
  },
  'and': (l, r) => l && r,
  'or': (l, r) => l || r
}
 
module.exports = operators