1234567891011121314151617181920212223242526272829 |
- 'use strict';
- const cmp = require('semver/functions/cmp');
- const semver = require('semver/functions/coerce');
- const has = Function.call.bind({}.hasOwnProperty);
- function compare(a, operator, b) {
- return cmp(semver(a), operator, semver(b));
- }
- function intersection(list, order) {
- const set = list instanceof Set ? list : new Set(list);
- return order.filter(name => set.has(name));
- }
- function sortObjectByKey(object, fn) {
- return Object.keys(object).sort(fn).reduce((memo, key) => {
- memo[key] = object[key];
- return memo;
- }, {});
- }
- module.exports = {
- compare,
- has,
- intersection,
- semver,
- sortObjectByKey,
- };
|