UNPKG

logify

Version:
39 lines (31 loc) 1.04 kB
'use strict'; var _interopRequireDefault = require('babel-runtime/helpers/interop-require-default')['default']; Object.defineProperty(exports, '__esModule', { value: true }); exports['default'] = create; var _filter = require('./filter'); var _filter2 = _interopRequireDefault(_filter); function create(field, pattern) { var fn = undefined; if (typeof pattern === 'function') { fn = function (entry) { return pattern(entry[field]); }; } else if (typeof pattern === 'string') { fn = function test(entry) { return field[entry] === pattern; }; } else if (pattern instanceof RegExp) { fn = function test(entry) { return pattern.test(entry[field]); }; } else { throw new Error('Pattern should be a string!'); } for (var _len = arguments.length, appenders = Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) { appenders[_key - 2] = arguments[_key]; } return _filter2['default'].apply(undefined, [fn].concat(appenders)); } module.exports = exports['default'];