| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 | 
							- const eq = require('./eq')
 
- const neq = require('./neq')
 
- const gt = require('./gt')
 
- const gte = require('./gte')
 
- const lt = require('./lt')
 
- const lte = require('./lte')
 
- const cmp = (a, op, b, loose) => {
 
-   switch (op) {
 
-     case '===':
 
-       if (typeof a === 'object') {
 
-         a = a.version
 
-       }
 
-       if (typeof b === 'object') {
 
-         b = b.version
 
-       }
 
-       return a === b
 
-     case '!==':
 
-       if (typeof a === 'object') {
 
-         a = a.version
 
-       }
 
-       if (typeof b === 'object') {
 
-         b = b.version
 
-       }
 
-       return a !== b
 
-     case '':
 
-     case '=':
 
-     case '==':
 
-       return eq(a, b, loose)
 
-     case '!=':
 
-       return neq(a, b, loose)
 
-     case '>':
 
-       return gt(a, b, loose)
 
-     case '>=':
 
-       return gte(a, b, loose)
 
-     case '<':
 
-       return lt(a, b, loose)
 
-     case '<=':
 
-       return lte(a, b, loose)
 
-     default:
 
-       throw new TypeError(`Invalid operator: ${op}`)
 
-   }
 
- }
 
- module.exports = cmp
 
 
  |