UNPKG

@netdata/charts

Version:

Netdata frontend SDK and chart utilities

38 lines (37 loc) 1.75 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.setsAreEqual = exports.filter = exports["default"] = void 0; function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } var setsAreEqual = exports.setsAreEqual = function setsAreEqual(a, b) { if (a.size !== b.size) return false; return Array.from(a).every(function (element) { return b.has(element); }); }; var filter = exports.filter = function filter(arr, _ref) { var _ref$omit = _ref.omit, omit = _ref$omit === void 0 ? [] : _ref$omit, _ref$keep = _ref.keep, keep = _ref$keep === void 0 ? [] : _ref$keep; if (!omit.length && !keep.length) return arr; return arr.filter(function (element) { if (keep.length) return keep.includes(element); return !omit.includes(element); }); }; var _deepEqual = function deepEqual(objA, objB) { var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}; if (objA === objB) return true; if (_typeof(objA) !== "object" || objA === null || _typeof(objB) !== "object" || objB === null) return false; var keysA = filter(Object.keys(objA), options); var keysB = filter(Object.keys(objB), options); if (keysA.length !== keysB.length) return false; var bHasOwnProperty = Object.prototype.hasOwnProperty.bind(objB); return keysA.every(function (key) { if (!bHasOwnProperty(key)) return false; return _deepEqual(objA[key], objB[key]); }); }; var _default = exports["default"] = _deepEqual;