UNPKG

proxyequal

Version:

A proxy based usage tracking and comparison

33 lines (23 loc) 984 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.proxyShallow = exports.collectShallows = void 0; var _proxyEqual = require("./proxyEqual"); var _differs = require("./differs"); var _weakMemoize = require("./weakMemoize"); var _searchTrie = _interopRequireDefault(require("search-trie")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } var collectShallows = function collectShallows(lines) { var trie = (0, _searchTrie["default"])(lines); return lines.filter(function (value) { return trie(value + '.') || !value.lastIndexOf('.'); }); }; exports.collectShallows = collectShallows; var memoizedCollectShallows = (0, _weakMemoize.weakMemoizeArray)(collectShallows); var proxyShallow = function proxyShallow(a, b, affected) { (0, _differs.resetDiffers)(); return (0, _proxyEqual.proxyCompare)(a, b, memoizedCollectShallows(affected)); }; exports.proxyShallow = proxyShallow;