New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

partial.lenses

Package Overview
Dependencies
Maintainers
1
Versions
180
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

partial.lenses - npm Package Compare versions

Comparing version 3.9.0 to 3.9.1

.nyc_output/493ac55cda480c0f939f7a1d208d46ca.json

6

lib/partial.lenses.js

@@ -377,3 +377,5 @@ "use strict";

if (R.equals(x, xs[i])) return xs;
return xs.slice(0, i).concat([x], xs.slice(i + 1));
var ys = xs.slice(0);
ys[i] = x;
return ys;
}

@@ -526,2 +528,2 @@ });

exports.default = compose;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9wYXJ0aWFsLmxlbnNlcy5qcyJdLCJuYW1lcyI6WyJSIiwiSWRlbnRpdHkiLCJ2YWx1ZSIsIklkZW50IiwieCIsInByb3RvdHlwZSIsIm1hcCIsIngyeSIsIm9mIiwiYXAiLCJDb25zdGFudCIsIkNvbnN0IiwiU2luZ2xlIiwiY29uY2F0Iiwid2FybiIsInByb2Nlc3MiLCJlbnYiLCJOT0RFX0VOViIsIndhcm5lZCIsIm1lc3NhZ2UiLCJjb25zb2xlIiwiaXNBcnJheSIsImNvbnN0cnVjdG9yIiwiQXJyYXkiLCJpc09iamVjdCIsIk9iamVjdCIsInVuQXJyYXkiLCJ1bmRlZmluZWQiLCJ1bk9iamVjdCIsIm1rQXJyYXkiLCJpZCIsInNuZCIsIl8iLCJjIiwiY2hlY2siLCJleHBlY3RlZCIsInByZWRpY2F0ZSIsIkVycm9yIiwiYXNzZXJ0IiwiZW1wdHkiLCJkZWxldGVLZXkiLCJrIiwibyIsInIiLCJwIiwic2V0S2V5IiwidiIsImVxdWFscyIsImRyb3BwZWQiLCJrZXlzIiwieHMiLCJsZW5ndGgiLCJ0b1BhcnRpYWwiLCJ0cmFuc2Zvcm0iLCJmaWx0ZXJlZCIsInBpcGUiLCJmaWx0ZXIiLCJjb25zZXJ2ZSIsImMxIiwiYzAiLCJ0b0NvbnNlcnZlIiwieSIsImYiLCJzZWVtc0xlbnMiLCJsaWZ0ZWQiLCJsaWZ0IiwiaXNQcm9wIiwibCIsImxpZnRQcm9wIiwiaXNJbmRleCIsImxpZnRJbmRleCIsImNvbXBvc2UiLCJscyIsImlkZW50aXR5IiwidG9DYXQiLCJyZW1vdmUiLCJjdXJyeSIsInMiLCJzZXRJIiwicmVtb3ZlQWxsIiwibGVucyIsImRhdGEiLCJnZXQiLCJnZXRJIiwibW9kaWZ5SSIsIngyeCIsImxlbnNJIiwiZ2V0dGVyIiwic2V0dGVyIiwiaW5uZXIiLCJ0YXJnZXQiLCJmb2N1cyIsImlzb0kiLCJ0byIsImZyb20iLCJjb2xsZWN0SSIsIm1vZGlmeSIsInNldCIsImNvbGxlY3QiLCJjaGFpbiIsIngyeUwiLCJ4TCIsImNob29zZSIsInhPIiwibm90aGluZyIsImp1c3QiLCJhbHdheXMiLCJvckVsc2UiLCJkIiwiY2hvaWNlIiwiaSIsImZpbmRJbmRleCIsInJlcGxhY2VyIiwiaW5uIiwib3V0Iiwibm9ybWFsaXplciIsImZuIiwicmVwbGFjZSIsImRlZmF1bHRzIiwicmVxdWlyZWQiLCJkZWZpbmUiLCJ2YWx1ZU9yIiwibm9ybWFsaXplIiwicHJvcCIsIm9JbiIsImZpbmQiLCJhcHBlbmQiLCJmaW5kV2l0aCIsImxscyIsIk51bWJlciIsImlzSW50ZWdlciIsImluZGV4Iiwic2xpY2UiLCJ5cyIsImNvbXBsZW1lbnQiLCJhdWdtZW50IiwieiIsInRlbXBsYXRlIiwiY0luIiwicGljayIsInByb3BzIiwia3MiLCJ6aXBPYmoiLCJzaG93IiwibGFiZWxzIiwibG9nIiwic2VxdWVuY2UiLCJ0cmF2ZXJzZSIsIm9wdGlvbmFsIiwiZnJvbVJhbWRhIiwiZmFudGFzeSIsInRvUmFtZGEiLCJmcm9tQXJyYXlCeSIsIm4iLCJ2YWx1ZXMiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUFBQTs7SUFBWUEsQzs7Ozs7Ozs7QUFFWjs7QUFFQSxTQUFTQyxRQUFULENBQWtCQyxLQUFsQixFQUF5QjtBQUFDLE9BQUtBLEtBQUwsR0FBYUEsS0FBYjtBQUFtQjtBQUM3QyxJQUFNQyxRQUFRLFNBQVJBLEtBQVE7QUFBQSxTQUFLLElBQUlGLFFBQUosQ0FBYUcsQ0FBYixDQUFMO0FBQUEsQ0FBZDtBQUNBSCxTQUFTSSxTQUFULENBQW1CQyxHQUFuQixHQUF5QixVQUFVQyxHQUFWLEVBQWU7QUFBQyxTQUFPLElBQUlOLFFBQUosQ0FBYU0sSUFBSSxLQUFLTCxLQUFULENBQWIsQ0FBUDtBQUFxQyxDQUE5RTtBQUNBRCxTQUFTSSxTQUFULENBQW1CRyxFQUFuQixHQUF3QkwsS0FBeEI7QUFDQUYsU0FBU0ksU0FBVCxDQUFtQkksRUFBbkIsR0FBd0IsVUFBVUwsQ0FBVixFQUFhO0FBQUMsU0FBTyxJQUFJSCxRQUFKLENBQWEsS0FBS0MsS0FBTCxDQUFXRSxF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LEVBQXFDO0FBQ25DLFlBQU0xRyxJQUFJOEMsR0FBRzRELENBQUgsQ0FBVjtBQUNBcEUsVUFBRXRDLEVBQUUwQixFQUFGLENBQUYsSUFBVzFCLENBQVg7QUFDRDtBQUNELGFBQU9zQyxDQUFQO0FBQ0Q7QUFDRixHQVRELEVBVUE7QUFBQSxXQUFLZCxTQUFTYyxDQUFULEtBQWUxQyxFQUFFMEosTUFBRixDQUFTaEgsQ0FBVCxDQUFwQjtBQUFBLEdBVkEsQ0FGeUI7QUFBQSxDQUFwQjs7a0JBY1E2QixPIiwiZmlsZSI6InBhcnRpYWwubGVuc2VzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgUiBmcm9tIFwicmFtZGFcIlxuXG4vL1xuXG5mdW5jdGlvbiBJZGVudGl0eSh2YWx1ZSkge3RoaXMudmFsdWUgPSB2YWx1ZX1cbmNvbnN0IElkZW50ID0geCA9PiBuZXcgSWRlbnRpdHkoeClcbklkZW50aXR5LnByb3RvdHlwZS5tYXAgPSBmdW5jdGlvbiAoeDJ5KSB7cmV0dXJuIG5ldyBJZGVudGl0eSh4MnkodGhpcy52YWx1ZSkpfVxuSWRlbnRpdHkucHJvdG90eXBlLm9mID0gSWRlbnRcbklkZW50aXR5LnByb3RvdHlwZS5hcCA9IGZ1bmN0aW9uICh4KSB7cmV0dXJuIG5ldyBJZGVudGl0eSh0aGlzLnZhbHVlKHgudmFsdWUpKX1cblxuLy9cblxuZnVuY3Rpb24gQ29uc3RhbnQodmFsdWUpIHt0aGlzLnZhbHVlID0gdmFsdWV9XG5jb25zdCBDb25zdCA9IHggPT4gbmV3IENvbnN0YW50KHgpXG5jb25zdCBTaW5nbGUgPSB4ID0+IENvbnN0KFt4XSlcbkNvbnN0YW50LnByb3RvdHlwZS5tYXAgPSBmdW5jdGlvbiAoKSB7cmV0dXJuIHRoaXN9XG5Db25zdGFudC5wcm90b3R5cGUub2YgPSBDb25zdFxuQ29uc3RhbnQucHJvdG90eXBlLmFwID0gZnVuY3Rpb24gKHgpIHtyZXR1cm4gbmV3IENvbnN0KFIuY29uY2F0KHRoaXMudmFsdWUsIHgudmFsdWUpKX1cblxuLy9cblxuY29uc3Qgd2FybiA9IHByb2Nlc3MuZW52Lk5PREVfRU5WID09PSBcInByb2R1Y3Rpb25cIiA/ICgpID0+IHt9IDogKCgpID0+IHtcbiAgY29uc3Qgd2FybmVkID0ge31cblxuICByZXR1cm4gbWVzc2FnZSA9PiB7XG4gICAgaWYgKCEobWVzc2FnZSBpbiB3YXJuZWQpKSB7XG4gICAgICB3YXJuZWRbbWVzc2FnZV0gPSBtZXNzYWdlXG4gICAgICBjb25zb2xlLndhcm4oXCJwYXJ0aWFsLmxlbnNlczpcIiwgbWVzc2FnZSlcbiAgICB9XG4gIH1cbn0pKClcblxuLy9cblxuY29uc3QgaXNBcnJheSAgPSB4ID0+IHggJiYgeC5jb25zdHJ1Y3RvciA9PT0gQXJyYXlcbmNvbnN0IGlzT2JqZWN0ID0geCA9PiB4ICYmIHguY29uc3RydWN0b3IgPT09IE9iamVjdFxuXG5jb25zdCB1bkFycmF5ICA9IHggPT4gIGlzQXJyYXkoeCkgPyB4IDogdW5kZWZpbmVkXG5jb25zdCB1bk9iamVjdCA9IHggPT4gaXNPYmplY3QoeCkgPyB4IDogdW5kZWZpbmVkXG5cbmNvbnN0IG1rQXJyYXkgPSB4ID0+IGlzQXJyYXkoeCkgPyB4IDogW11cblxuLy9cblxuY29uc3QgaWQgPSB4ID0+IHhcbmNvbnN0IHNuZCA9IChfLCBjKSA9PiBjXG5cbi8vXG5cbmNvbnN0IGNoZWNrID0gKGV4cGVjdGVkLCBwcmVkaWNhdGUpID0+IHggPT4ge1xuICBpZiAocHJlZGljYXRlKHgpKVxuICAgIHJldHVybiB4XG4gIGVsc2VcbiAgICB0aHJvdyBuZXcgRXJyb3IoYEV4cGVjdGVkICR7ZXhwZWN0ZWR9LCBidXQgZ290ICR7eH0uYClcbn1cblxuY29uc3QgYXNzZXJ0ID0gcHJvY2Vzcy5lbnYuTk9ERV9FTlYgPT09IFwicHJvZHVjdGlvblwiID8gKCkgPT4gaWQgOiBjaGVja1xuXG4vL1xuXG5jb25zdCBlbXB0eSA9IHt9XG5cbmNvbnN0IGRlbGV0ZUtleSA9IChrLCBvID0ge30pID0+IHtcbiAgbGV0IHJcbiAgZm9yIChjb25zdCBwIGluIG8pIHtcbiAgICBpZiAocCAhPT0gaykge1xuICAgICAgaWYgKHVuZGVmaW5lZCA9PT0gcilcbiAgICAgICAgciA9IHt9XG4gICAgICByW3BdID0gb1twXVxuICAgIH1cbiAgfVxuICByZXR1cm4gclxufVxuXG5jb25zdCBzZXRLZXkgPSAoaywgdiwgbyA9IHt9KSA9PiB7XG4gIGlmIChrIGluIG8gJiYgUi5lcXVhbHModiwgb1trXSkpXG4gICAgcmV0dXJuIG9cbiAgY29uc3QgciA9IHtba106IHZ9XG4gIGZvciAoY29uc3QgcCBpbiBvKVxuICAgIGlmIChwICE9PSBrKVxuICAgICAgcltwXSA9IG9bcF1cbiAgcmV0dXJuIHJcbn1cblxuLy9cblxuY29uc3QgZHJvcHBlZCA9IHhzID0+IE9iamVjdC5rZXlzKHhzKS5sZW5ndGggPT09IDAgPyB1bmRlZmluZWQgOiB4c1xuXG4vL1xuXG5jb25zdCB0b1BhcnRpYWwgPSB0cmFuc2Zvcm0gPT4geCA9PiB1bmRlZmluZWQgPT09IHggPyB4IDogdHJhbnNmb3JtKHgpXG5cbi8vXG5cbmNvbnN0IGZpbHRlcmVkID1cbiAgdG9QYXJ0aWFsKFIucGlwZShSLmZpbHRlcih4ID0+IHggIT09IHVuZGVmaW5lZCksIGRyb3BwZWQpKVxuXG4vL1xuXG5jb25zdCBjb25zZXJ2ZSA9IChjMSwgYzApID0+IFIuZXF1YWxzKGMxLCBjMCkgPyBjMCA6IGMxXG5cbmNvbnN0IHRvQ29uc2VydmUgPSBmID0+ICh5LCBjMCkgPT4gY29uc2VydmUoZih5LCBjMCksIGMwKVxuXG4vL1xuXG5jb25zdCBzZWVtc0xlbnMgPSB4ID0+IHR5cGVvZiB4ID09PSBcImZ1bmN0aW9uXCIgJiYgeC5sZW5ndGggPT09IDFcblxuY29uc3QgbGlmdGVkID0gYXNzZXJ0KFwiYSBsZW5zXCIsIHNlZW1zTGVucylcblxuY29uc3QgbGlmdCA9IGwgPT4ge1xuICBpZiAoaXNQcm9wKGwpKSAgcmV0dXJuIGxpZnRQcm9wKGwpXG4gIGlmIChpc0luZGV4KGwpKSByZXR1cm4gbGlmdEluZGV4KGwpXG4gIHJldHVybiBsaWZ0ZWQobClcbn1cblxuZXhwb3J0IGNvbnN0IGNvbXBvc2UgPSAoLi4ubHMpID0+XG4gIGxzLmxlbmd0aCA9PT0gMCA/IGlkZW50aXR5IDpcbiAgbHMubGVuZ3RoID09PSAxID8gbHNbMF0gOlxuICAodG9DYXQgPT4gUi5jb21wb3NlKC4uLmxzLm1hcChsID0+IGxpZnQobCkodG9DYXQpKSkpXG5cbmV4cG9ydCBjb25zdCByZW1vdmUgPSBSLmN1cnJ5KChsLCBzKSA9PiBzZXRJKGxpZnQobCksIHVuZGVmaW5lZCwgcykpXG5cbmV4cG9ydCBjb25zdCByZW1vdmVBbGwgPSBSLmN1cnJ5KChsZW5zLCBkYXRhKSA9PiB7XG4gIHdhcm4oXCJgcmVtb3ZlQWxsYCBpcyBkZXByZWNhdGVkIGFuZCB3aWxsIGJlIHJlbW92ZWQgaW4gbmV4dCBtYWpvciB2ZXJzaW9uIC0tLSB1c2UgYSBkaWZmZXJlbnQgYXBwcm9hY2guXCIpXG4gIHdoaWxlIChnZXQobGVucywgZGF0YSkgIT09IHVuZGVmaW5lZClcbiAgICBkYXRhID0gcmVtb3ZlKGxlbnMsIGRhdGEpXG4gIHJldHVybiBkYXRhXG59KVxuXG5jb25zdCBzZXRJID0gKGwsIHgsIHMpID0+IGwoSWRlbnQpKCgpID0+IElkZW50KHgpKShzKS52YWx1ZVxuY29uc3QgZ2V0SSA9IChsLCBzKSA9PiBsKENvbnN0KShDb25zdCkocykudmFsdWVcbmNvbnN0IG1vZGlmeUkgPSAobCwgeDJ4LCBzKSA9PiBsKElkZW50KSh5ID0+IElkZW50KHgyeCh5KSkpKHMpLnZhbHVlXG5jb25zdCBsZW5zSSA9IChnZXR0ZXIsIHNldHRlcikgPT4gX2NvbnN0cnVjdG9yID0+IGlubmVyID0+IHRhcmdldCA9PlxuICBpbm5lcihnZXR0ZXIodGFyZ2V0KSkubWFwKGZvY3VzID0+IHNldHRlcihmb2N1cywgdGFyZ2V0KSlcbmNvbnN0IGlzb0kgPSAodG8sIGZyb20pID0+IGxlbnNJKHRvLCB0b0NvbnNlcnZlKGZyb20pKVxuY29uc3QgY29sbGVjdEkgPSAobCwgcykgPT4gbChDb25zdCkoU2luZ2xlKShzKS52YWx1ZVxuXG5leHBvcnQgY29uc3QgbGVucyA9IFIuY3VycnkobGVuc0kpXG5leHBvcnQgY29uc3QgbW9kaWZ5ID0gUi5jdXJyeSgobCwgeDJ4LCBzKSA9PiBtb2RpZnlJKGxpZnQobCksIHgyeCwgcykpXG5leHBvcnQgY29uc3Qgc2V0ID0gUi5jdXJyeSgobCwgeCwgcykgPT4gc2V0SShsaWZ0KGwpLCB4LCBzKSlcbmV4cG9ydCBjb25zdCBnZXQgPSBSLmN1cnJ5KChsLCBzKSA9PiBnZXRJKGxpZnQobCksIHMpKVxuZXhwb3J0IGNvbnN0IGNvbGxlY3QgPSBSLmN1cnJ5KChsLCBzKSA9PlxuICB3YXJuKFwiYGNvbGxlY3RgIGlzIGV4cGVyaW1lbnRhbCBhbmQgbWlnaHQgYmUgcmVtb3ZlZCwgcmVuYW1lZCBvciBjaGFuZ2VkIHNlbWFudGljYWxseSBiZWZvcmUgbmV4dCBtYWpvciByZWxlYXNlXCIpIHx8XG4gIG1rQXJyYXkoZmlsdGVyZWQoY29sbGVjdEkobGlmdChsKSwgcykpKSlcblxuZXhwb3J0IGNvbnN0IGNoYWluID0gUi5jdXJyeSgoeDJ5TCwgeEwpID0+XG4gIGNvbXBvc2UoeEwsIGNob29zZSh4TyA9PiB4TyA9PT0gdW5kZWZpbmVkID8gbm90aGluZyA6IHgyeUwoeE8pKSkpXG5cbmV4cG9ydCBjb25zdCBqdXN0ID0geCA9PiBsZW5zSShSLmFsd2F5cyh4KSwgc25kKVxuXG5leHBvcnQgY29uc3QgY2hvb3NlID0geDJ5TCA9PiBjb25zdHJ1Y3RvciA9PiBpbm5lciA9PiB0YXJnZXQgPT5cbiAgbGlmdCh4MnlMKHRhcmdldCkpKGNvbnN0cnVjdG9yKShpbm5lcikodGFyZ2V0KVxuXG5leHBvcnQgY29uc3Qgbm90aGluZyA9IGxlbnNJKHNuZCwgc25kKVxuXG5leHBvcnQgY29uc3Qgb3JFbHNlID1cbiAgUi5jdXJyeSgoZCwgbCkgPT4gY2hvb3NlKHggPT4gZ2V0SShsaWZ0KGwpLCB4KSAhPT0gdW5kZWZpbmVkID8gbCA6IGQpKVxuXG5leHBvcnQgY29uc3QgY2hvaWNlID0gKC4uLmxzKSA9PiBjaG9vc2UoeCA9PiB7XG4gIGNvbnN0IGkgPSBscy5maW5kSW5kZXgobCA9PiBnZXRJKGxpZnQobCksIHgpICE9PSB1bmRlZmluZWQpXG4gIHJldHVybiAwIDw9IGkgPyBsc1tpXSA6IG5vdGhpbmdcbn0pXG5cbmNvbnN0IHJlcGxhY2VyID0gKGlubiwgb3V0KSA9PiB4ID0+IFIuZXF1YWxzKHgsIGlubikgPyBvdXQgOiB4XG5jb25zdCBub3JtYWxpemVyID0gZm4gPT4gaXNvSShmbiwgZm4pXG5cbmV4cG9ydCBjb25zdCByZXBsYWNlID0gUi5jdXJyeSgoaW5uLCBvdXQpID0+XG4gIGlzb0kocmVwbGFjZXIoaW5uLCBvdXQpLCByZXBsYWNlcihvdXQsIGlubikpKVxuXG5leHBvcnQgY29uc3QgZGVmYXVsdHMgPSByZXBsYWNlKHVuZGVmaW5lZClcbmV4cG9ydCBjb25zdCByZXF1aXJlZCA9IGlubiA9PiByZXBsYWNlKGlubiwgdW5kZWZpbmVkKVxuZXhwb3J0IGNvbnN0IGRlZmluZSA9IHYgPT4gbm9ybWFsaXplcihyZXBsYWNlcih1bmRlZmluZWQsIHYpKVxuXG5leHBvcnQgY29uc3QgdmFsdWVPciA9IHYgPT5cbiAgbGVuc0koeCA9PiB4ID09PSB1bmRlZmluZWQgfHwgeCA9PT0gbnVsbCA/IHYgOiB4LCBjb25zZXJ2ZSlcblxuZXhwb3J0IGNvbnN0IG5vcm1hbGl6ZSA9IHRyYW5zZm9ybSA9PiBub3JtYWxpemVyKHRvUGFydGlhbCh0cmFuc2Zvcm0pKVxuXG5jb25zdCBpc1Byb3AgPSB4ID0+IHR5cGVvZiB4ID09PSBcInN0cmluZ1wiXG5cbmV4cG9ydCBjb25zdCBwcm9wID0gYXNzZXJ0KFwiYSBzdHJpbmdcIiwgaXNQcm9wKVxuXG5jb25zdCBsaWZ0UHJvcCA9IGsgPT4gbGVuc0kobyA9PiB1bk9iamVjdChvKSAmJiBvW2tdLCAodiwgb0luKSA9PiB7XG4gIGNvbnN0IG8gPSB1bk9iamVjdChvSW4pXG4gIHJldHVybiB2ID09PSB1bmRlZmluZWQgPyBkZWxldGVLZXkoaywgbykgOiBzZXRLZXkoaywgdiwgbylcbn0pXG5cbmV4cG9ydCBjb25zdCBmaW5kID0gcHJlZGljYXRlID0+IGNob29zZSh4cyA9PiB7XG4gIGlmIChpc0FycmF5KHhzKSkge1xuICAgIGNvbnN0IGkgPSB4cy5maW5kSW5kZXgocHJlZGljYXRlKVxuICAgIHJldHVybiBpIDwgMCA/IGFwcGVuZCA6IGlcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gYXBwZW5kXG4gIH1cbn0pXG5cbmV4cG9ydCBjb25zdCBmaW5kV2l0aCA9ICguLi5scykgPT4ge1xuICBjb25zdCBsbHMgPSBsaWZ0KGNvbXBvc2UoLi4ubHMpKVxuICByZXR1cm4gY29tcG9zZShmaW5kKHggPT4gZ2V0SShsbHMsIHgpICE9PSB1bmRlZmluZWQpLCBsbHMpXG59XG5cbmNvbnN0IGlzSW5kZXggPSB4ID0+IE51bWJlci5pc0ludGVnZXIoeCkgJiYgMCA8PSB4XG5cbmV4cG9ydCBjb25zdCBpbmRleCA9IGFzc2VydChcImEgbm9uLW5lZ2F0aXZlIGludGVnZXJcIiwgaXNJbmRleClcblxuY29uc3QgbGlmdEluZGV4ID0gaSA9PiBsZW5zSSh4cyA9PiB1bkFycmF5KHhzKSAmJiB4c1tpXSwgKHgsIHhzKSA9PiB7XG4gIGlmICh4ID09PSB1bmRlZmluZWQpIHtcbiAgICBpZiAoIWlzQXJyYXkoeHMpKVxuICAgICAgcmV0dXJuIHVuZGVmaW5lZFxuICAgIGlmIChpIDwgeHMubGVuZ3RoKVxuICAgICAgcmV0dXJuIGRyb3BwZWQoeHMuc2xpY2UoMCwgaSkuY29uY2F0KHhzLnNsaWNlKGkrMSkpKVxuICAgIHJldHVybiBkcm9wcGVkKHhzKVxuICB9IGVsc2Uge1xuICAgIGlmICghaXNBcnJheSh4cykpXG4gICAgICByZXR1cm4gQXJyYXkoaSkuY29uY2F0KFt4XSlcbiAgICBpZiAoeHMubGVuZ3RoIDw9IGkpXG4gICAgICByZXR1cm4geHMuY29uY2F0KEFycmF5KGkgLSB4cy5sZW5ndGgpLCBbeF0pXG4gICAgaWYgKFIuZXF1YWxzKHgsIHhzW2ldKSlcbiAgICAgIHJldHVybiB4c1xuICAgIHJldHVybiB4cy5zbGljZSgwLCBpKS5jb25jYXQoW3hdLCB4cy5zbGljZShpKzEpKVxuICB9XG59KVxuXG5leHBvcnQgY29uc3QgYXBwZW5kID0gbGVuc0koc25kLCAoeCwgeHMpID0+XG4gIHggPT09IHVuZGVmaW5lZCA/IHVuQXJyYXkoeHMpIDogaXNBcnJheSh4cykgPyB4cy5jb25jYXQoW3hdKSA6IFt4XSlcblxuZXhwb3J0IGNvbnN0IGZpbHRlciA9IHAgPT4gbGVuc0koeHMgPT4gdW5BcnJheSh4cykgJiYgeHMuZmlsdGVyKHApLCAoeXMsIHhzKSA9PlxuICBjb25zZXJ2ZShkcm9wcGVkKFIuY29uY2F0KG1rQXJyYXkoeXMpLCBta0FycmF5KHhzKS5maWx0ZXIoUi5jb21wbGVtZW50KHApKSkpLCB4cykpXG5cbmV4cG9ydCBjb25zdCBhdWdtZW50ID0gdGVtcGxhdGUgPT4gbGVuc0koXG4gIHggPT4ge1xuICAgIGlmIChpc09iamVjdCh4KSkge1xuICAgICAgY29uc3QgeiA9IHsuLi54fVxuICAgICAgZm9yIChjb25zdCBrIGluIHRlbXBsYXRlKVxuICAgICAgICB6W2tdID0gdGVtcGxhdGVba10oeilcbiAgICAgIHJldHVybiB6XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWRcbiAgICB9XG4gIH0sXG4gIHRvQ29uc2VydmUoKHksIGNJbikgPT4ge1xuICAgIGlmIChpc09iamVjdCh5KSkge1xuICAgICAgY29uc3QgYyA9IHVuT2JqZWN0KGNJbikgfHwge31cbiAgICAgIGxldCB6XG4gICAgICBjb25zdCBzZXQgPSAoaywgdikgPT4ge1xuICAgICAgICBpZiAodW5kZWZpbmVkID09PSB6KVxuICAgICAgICAgIHogPSB7fVxuICAgICAgICB6W2tdID0gdlxuICAgICAgfVxuICAgICAgZm9yIChjb25zdCBrIGluIHkpIHtcbiAgICAgICAgaWYgKCEoayBpbiB0ZW1wbGF0ZSkpXG4gICAgICAgICAgc2V0KGssIHlba10pXG4gICAgICAgIGVsc2VcbiAgICAgICAgICBpZiAoayBpbiBjKVxuICAgICAgICAgICAgc2V0KGssIGNba10pXG4gICAgICB9XG4gICAgICByZXR1cm4gelxuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkXG4gICAgfVxuICB9KSlcblxuZXhwb3J0IGNvbnN0IHBpY2sgPSB0ZW1wbGF0ZSA9PiBsZW5zSShcbiAgYyA9PiB7XG4gICAgbGV0IHJcbiAgICBmb3IgKGNvbnN0IGsgaW4gdGVtcGxhdGUpIHtcbiAgICAgIGNvbnN0IHYgPSBnZXRJKGxpZnQodGVtcGxhdGVba10pLCBjKVxuICAgICAgaWYgKHYgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBpZiAociA9PT0gdW5kZWZpbmVkKVxuICAgICAgICAgIHIgPSB7fVxuICAgICAgICByW2tdID0gdlxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gclxuICB9LFxuICAobyA9IGVtcHR5LCBjSW4pID0+IHtcbiAgICBsZXQgYyA9IGNJblxuICAgIGZvciAoY29uc3QgayBpbiB0ZW1wbGF0ZSlcbiAgICAgIGMgPSBzZXRJKGxpZnQodGVtcGxhdGVba10pLCBvW2tdLCBjKVxuICAgIHJldHVybiBjXG4gIH0pXG5cbmV4cG9ydCBjb25zdCBpZGVudGl0eSA9IGxlbnNJKGlkLCBjb25zZXJ2ZSlcblxuZXhwb3J0IGNvbnN0IHByb3BzID0gKC4uLmtzKSA9PiBwaWNrKFIuemlwT2JqKGtzLCBrcykpXG5cbmNvbnN0IHNob3cgPSAoLi4ubGFiZWxzKSA9PiB4ID0+IGNvbnNvbGUubG9nKC4uLmxhYmVscywgeCkgfHwgeFxuXG5leHBvcnQgY29uc3QgbG9nID0gKC4uLmxhYmVscykgPT5cbiAgbGVuc0koc2hvdyguLi5sYWJlbHMsIFwiZ2V0XCIpLCBzaG93KC4uLmxhYmVscywgXCJzZXRcIikpXG5cbmV4cG9ydCBjb25zdCBzZXF1ZW5jZSA9IGNvbnN0cnVjdG9yID0+IGlubmVyID0+IHRhcmdldCA9PlxuICB3YXJuKFwiYHNlcXVlbmNlYCBpcyBleHBlcmltZW50YWwgYW5kIG1pZ2h0IGJlIHJlbW92ZWQsIHJlbmFtZWQgb3IgY2hhbmdlZCBzZW1hbnRpY2FsbHkgYmVmb3JlIG5leHQgbWFqb3IgcmVsZWFzZVwiKSB8fFxuICBSLnRyYXZlcnNlKGNvbnN0cnVjdG9yLCBpbm5lciwgbWtBcnJheSh0YXJnZXQpKVxuICAubWFwKGZpbHRlcmVkKVxuXG5leHBvcnQgY29uc3Qgb3B0aW9uYWwgPVxuICBjb21wb3NlKGxlbnNJKHRvUGFydGlhbCh4ID0+IFt4XSksXG4gICAgICAgICAgICAgICAgdG9QYXJ0aWFsKChbeF0pID0+IHgpKSxcbiAgICAgICAgICBzZXF1ZW5jZSlcblxuZXhwb3J0IGNvbnN0IGZyb21SYW1kYSA9IGwgPT4gX2NvbnN0cnVjdG9yID0+IGxcbmNvbnN0IGZhbnRhc3kgPSAoKSA9PiB7dGhyb3cgbmV3IEVycm9yKFwiU29ycnksIGB0b1JhbWRhYCBpcyBvbmx5IGZhbnRhc3khXCIpfVxuZXhwb3J0IGNvbnN0IHRvUmFtZGEgPSBsID0+IGxpZnQobCkoZmFudGFzeSlcblxuZXhwb3J0IGNvbnN0IGZyb21BcnJheUJ5ID0gaWQgPT5cbiAgd2FybihcImBmcm9tQXJyYXlCeWAgaXMgZXhwZXJpbWVudGFsIGFuZCBtaWdodCBiZSByZW1vdmVkLCByZW5hbWVkIG9yIGNoYW5nZWQgc2VtYW50aWNhbGx5IGJlZm9yZSBuZXh0IG1ham9yIHJlbGVhc2VcIikgfHxcbiAgaXNvSSh4cyA9PiB7XG4gICAgaWYgKGlzQXJyYXkoeHMpKSB7XG4gICAgICBjb25zdCBvID0ge31cbiAgICAgIGZvciAobGV0IGk9MCwgbj14cy5sZW5ndGg7IGk8bjsgKytpKSB7XG4gICAgICAgIGNvbnN0IHggPSB4c1tpXVxuICAgICAgICBvW3hbaWRdXSA9IHhcbiAgICAgIH1cbiAgICAgIHJldHVybiBvXG4gICAgfVxuICB9LFxuICBvID0+IHVuT2JqZWN0KG8pICYmIFIudmFsdWVzKG8pKVxuXG5leHBvcnQgZGVmYXVsdCBjb21wb3NlXG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9wYXJ0aWFsLmxlbnNlcy5qcyJdLCJuYW1lcyI6WyJSIiwiSWRlbnRpdHkiLCJ2YWx1ZSIsIklkZW50IiwieCIsInByb3RvdHlwZSIsIm1hcCIsIngyeSIsIm9mIiwiYXAiLCJDb25zdGFudCIsIkNvbnN0IiwiU2luZ2xlIiwiY29uY2F0Iiwid2FybiIsInByb2Nlc3MiLCJlbnYiLCJOT0RFX0VOViIsIndhcm5lZCIsIm1lc3NhZ2UiLCJjb25zb2xlIiwiaXNBcnJheSIsImNvbnN0cnVjdG9yIiwiQXJyYXkiLCJpc09iamVjdCIsIk9iamVjdCIsInVuQXJyYXkiLCJ1bmRlZmluZWQiLCJ1bk9iamVjdCIsIm1rQXJyYXkiLCJpZCIsInNuZCIsIl8iLCJjIiwiY2hlY2siLCJleHBlY3RlZCIsInByZWRpY2F0ZSIsIkVycm9yIiwiYXNzZXJ0IiwiZW1wdHkiLCJkZWxldGVLZXkiLCJrIiwibyIsInIiLCJwIiwic2V0S2V5IiwidiIsImVxdWFscyIsImRyb3BwZWQiLCJrZXlzIiwieHMiLCJsZW5ndGgiLCJ0b1BhcnRpYWwiLCJ0cmFuc2Zvcm0iLCJmaWx0ZXJlZCIsInBpcGUiLCJmaWx0ZXIiLCJjb25zZXJ2ZSIsImMxIiwiYzAiLCJ0b0NvbnNlcnZlIiwieSIsImYiLCJzZWVtc0xlbnMiLCJsaWZ0ZWQiLCJsaWZ0IiwiaXNQcm9wIiwibCIsImxpZnRQcm9wIiwiaXNJbmRleCIsImxpZnRJbmRleCIsImNvbXBvc2UiLCJscyIsImlkZW50aXR5IiwidG9DYXQiLCJyZW1vdmUiLCJjdXJyeSIsInMiLCJzZXRJIiwicmVtb3ZlQWxsIiwibGVucyIsImRhdGEiLCJnZXQiLCJnZXRJIiwibW9kaWZ5SSIsIngyeCIsImxlbnNJIiwiZ2V0dGVyIiwic2V0dGVyIiwiaW5uZXIiLCJ0YXJnZXQiLCJmb2N1cyIsImlzb0kiLCJ0byIsImZyb20iLCJjb2xsZWN0SSIsIm1vZGlmeSIsInNldCIsImNvbGxlY3QiLCJjaGFpbiIsIngyeUwiLCJ4TCIsImNob29zZSIsInhPIiwibm90aGluZyIsImp1c3QiLCJhbHdheXMiLCJvckVsc2UiLCJkIiwiY2hvaWNlIiwiaSIsImZpbmRJbmRleCIsInJlcGxhY2VyIiwiaW5uIiwib3V0Iiwibm9ybWFsaXplciIsImZuIiwicmVwbGFjZSIsImRlZmF1bHRzIiwicmVxdWlyZWQiLCJkZWZpbmUiLCJ2YWx1ZU9yIiwibm9ybWFsaXplIiwicHJvcCIsIm9JbiIsImZpbmQiLCJhcHBlbmQiLCJmaW5kV2l0aCIsImxscyIsIk51bWJlciIsImlzSW50ZWdlciIsImluZGV4Iiwic2xpY2UiLCJ5cyIsImNvbXBsZW1lbnQiLCJhdWdtZW50IiwieiIsInRlbXBsYXRlIiwiY0luIiwicGljayIsInByb3BzIiwia3MiLCJ6aXBPYmoiLCJzaG93IiwibGFiZWxzIiwibG9nIiwic2VxdWVuY2UiLCJ0cmF2ZXJzZSIsIm9wdGlvbmFsIiwiZnJvbVJhbWRhIiwiZmFudGFzeSIsInRvUmFtZGEiLCJmcm9tQXJyYXlCeSIsIm4iLCJ2YWx1ZXMiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUFBQTs7SUFBWUEsQzs7Ozs7Ozs7QUFFWjs7QUFFQSxTQUFTQyxRQUFULENBQWtCQyxLQUFsQixFQUF5QjtBQUFDLE9BQUtBLEtBQUwsR0FBYUEsS0FBYjtBQUFtQjtBQUM3QyxJQUFNQyxRQUFRLFNBQVJBLEtBQVE7QUFBQSxTQUFLLElBQUlGLFFBQUosQ0FBYUcsQ0FBYixDQUFMO0FBQUEsQ0FBZDtBQUNBSCxTQUFTSSxTQUFULENBQW1CQyxHQUFuQixHQUF5QixVQUFVQyxHQUFWLEVBQWU7QUFBQyxTQUFPLElBQUlOLFFBQUosQ0FBYU0sSUFBSSxLQUFLTCxLQUFULENBQWIsQ0FBUDtBQUFxQyxDQUE5RTtBQUNBRCxTQUFTSSxTQUFULENBQW1CRyxFQUFuQixHQUF3QkwsS0FBeEI7QUFDQUYsU0FBU0ksU0FBVCxDQUFtQkksRUFBbkIsR0FBd0IsVUFBVUwsQ0FBVixFQUFhO0FBQUMsU0FBTyxJQUFJSCxRQUFKLENBQWEsS0FBS0MsS0FBTCxDQUFXRSxF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QUgsQ0FBVjtBQUNBcEUsVUFBRXRDLEVBQUUwQixFQUFGLENBQUYsSUFBVzFCLENBQVg7QUFDRDtBQUNELGFBQU9zQyxDQUFQO0FBQ0Q7QUFDRixHQVRELEVBVUE7QUFBQSxXQUFLZCxTQUFTYyxDQUFULEtBQWUxQyxFQUFFMEosTUFBRixDQUFTaEgsQ0FBVCxDQUFwQjtBQUFBLEdBVkEsQ0FGeUI7QUFBQSxDQUFwQjs7a0JBY1E2QixPIiwiZmlsZSI6InBhcnRpYWwubGVuc2VzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgUiBmcm9tIFwicmFtZGFcIlxuXG4vL1xuXG5mdW5jdGlvbiBJZGVudGl0eSh2YWx1ZSkge3RoaXMudmFsdWUgPSB2YWx1ZX1cbmNvbnN0IElkZW50ID0geCA9PiBuZXcgSWRlbnRpdHkoeClcbklkZW50aXR5LnByb3RvdHlwZS5tYXAgPSBmdW5jdGlvbiAoeDJ5KSB7cmV0dXJuIG5ldyBJZGVudGl0eSh4MnkodGhpcy52YWx1ZSkpfVxuSWRlbnRpdHkucHJvdG90eXBlLm9mID0gSWRlbnRcbklkZW50aXR5LnByb3RvdHlwZS5hcCA9IGZ1bmN0aW9uICh4KSB7cmV0dXJuIG5ldyBJZGVudGl0eSh0aGlzLnZhbHVlKHgudmFsdWUpKX1cblxuLy9cblxuZnVuY3Rpb24gQ29uc3RhbnQodmFsdWUpIHt0aGlzLnZhbHVlID0gdmFsdWV9XG5jb25zdCBDb25zdCA9IHggPT4gbmV3IENvbnN0YW50KHgpXG5jb25zdCBTaW5nbGUgPSB4ID0+IENvbnN0KFt4XSlcbkNvbnN0YW50LnByb3RvdHlwZS5tYXAgPSBmdW5jdGlvbiAoKSB7cmV0dXJuIHRoaXN9XG5Db25zdGFudC5wcm90b3R5cGUub2YgPSBDb25zdFxuQ29uc3RhbnQucHJvdG90eXBlLmFwID0gZnVuY3Rpb24gKHgpIHtyZXR1cm4gbmV3IENvbnN0KFIuY29uY2F0KHRoaXMudmFsdWUsIHgudmFsdWUpKX1cblxuLy9cblxuY29uc3Qgd2FybiA9IHByb2Nlc3MuZW52Lk5PREVfRU5WID09PSBcInByb2R1Y3Rpb25cIiA/ICgpID0+IHt9IDogKCgpID0+IHtcbiAgY29uc3Qgd2FybmVkID0ge31cblxuICByZXR1cm4gbWVzc2FnZSA9PiB7XG4gICAgaWYgKCEobWVzc2FnZSBpbiB3YXJuZWQpKSB7XG4gICAgICB3YXJuZWRbbWVzc2FnZV0gPSBtZXNzYWdlXG4gICAgICBjb25zb2xlLndhcm4oXCJwYXJ0aWFsLmxlbnNlczpcIiwgbWVzc2FnZSlcbiAgICB9XG4gIH1cbn0pKClcblxuLy9cblxuY29uc3QgaXNBcnJheSAgPSB4ID0+IHggJiYgeC5jb25zdHJ1Y3RvciA9PT0gQXJyYXlcbmNvbnN0IGlzT2JqZWN0ID0geCA9PiB4ICYmIHguY29uc3RydWN0b3IgPT09IE9iamVjdFxuXG5jb25zdCB1bkFycmF5ICA9IHggPT4gIGlzQXJyYXkoeCkgPyB4IDogdW5kZWZpbmVkXG5jb25zdCB1bk9iamVjdCA9IHggPT4gaXNPYmplY3QoeCkgPyB4IDogdW5kZWZpbmVkXG5cbmNvbnN0IG1rQXJyYXkgPSB4ID0+IGlzQXJyYXkoeCkgPyB4IDogW11cblxuLy9cblxuY29uc3QgaWQgPSB4ID0+IHhcbmNvbnN0IHNuZCA9IChfLCBjKSA9PiBjXG5cbi8vXG5cbmNvbnN0IGNoZWNrID0gKGV4cGVjdGVkLCBwcmVkaWNhdGUpID0+IHggPT4ge1xuICBpZiAocHJlZGljYXRlKHgpKVxuICAgIHJldHVybiB4XG4gIGVsc2VcbiAgICB0aHJvdyBuZXcgRXJyb3IoYEV4cGVjdGVkICR7ZXhwZWN0ZWR9LCBidXQgZ290ICR7eH0uYClcbn1cblxuY29uc3QgYXNzZXJ0ID0gcHJvY2Vzcy5lbnYuTk9ERV9FTlYgPT09IFwicHJvZHVjdGlvblwiID8gKCkgPT4gaWQgOiBjaGVja1xuXG4vL1xuXG5jb25zdCBlbXB0eSA9IHt9XG5cbmNvbnN0IGRlbGV0ZUtleSA9IChrLCBvID0ge30pID0+IHtcbiAgbGV0IHJcbiAgZm9yIChjb25zdCBwIGluIG8pIHtcbiAgICBpZiAocCAhPT0gaykge1xuICAgICAgaWYgKHVuZGVmaW5lZCA9PT0gcilcbiAgICAgICAgciA9IHt9XG4gICAgICByW3BdID0gb1twXVxuICAgIH1cbiAgfVxuICByZXR1cm4gclxufVxuXG5jb25zdCBzZXRLZXkgPSAoaywgdiwgbyA9IHt9KSA9PiB7XG4gIGlmIChrIGluIG8gJiYgUi5lcXVhbHModiwgb1trXSkpXG4gICAgcmV0dXJuIG9cbiAgY29uc3QgciA9IHtba106IHZ9XG4gIGZvciAoY29uc3QgcCBpbiBvKVxuICAgIGlmIChwICE9PSBrKVxuICAgICAgcltwXSA9IG9bcF1cbiAgcmV0dXJuIHJcbn1cblxuLy9cblxuY29uc3QgZHJvcHBlZCA9IHhzID0+IE9iamVjdC5rZXlzKHhzKS5sZW5ndGggPT09IDAgPyB1bmRlZmluZWQgOiB4c1xuXG4vL1xuXG5jb25zdCB0b1BhcnRpYWwgPSB0cmFuc2Zvcm0gPT4geCA9PiB1bmRlZmluZWQgPT09IHggPyB4IDogdHJhbnNmb3JtKHgpXG5cbi8vXG5cbmNvbnN0IGZpbHRlcmVkID1cbiAgdG9QYXJ0aWFsKFIucGlwZShSLmZpbHRlcih4ID0+IHggIT09IHVuZGVmaW5lZCksIGRyb3BwZWQpKVxuXG4vL1xuXG5jb25zdCBjb25zZXJ2ZSA9IChjMSwgYzApID0+IFIuZXF1YWxzKGMxLCBjMCkgPyBjMCA6IGMxXG5cbmNvbnN0IHRvQ29uc2VydmUgPSBmID0+ICh5LCBjMCkgPT4gY29uc2VydmUoZih5LCBjMCksIGMwKVxuXG4vL1xuXG5jb25zdCBzZWVtc0xlbnMgPSB4ID0+IHR5cGVvZiB4ID09PSBcImZ1bmN0aW9uXCIgJiYgeC5sZW5ndGggPT09IDFcblxuY29uc3QgbGlmdGVkID0gYXNzZXJ0KFwiYSBsZW5zXCIsIHNlZW1zTGVucylcblxuY29uc3QgbGlmdCA9IGwgPT4ge1xuICBpZiAoaXNQcm9wKGwpKSAgcmV0dXJuIGxpZnRQcm9wKGwpXG4gIGlmIChpc0luZGV4KGwpKSByZXR1cm4gbGlmdEluZGV4KGwpXG4gIHJldHVybiBsaWZ0ZWQobClcbn1cblxuZXhwb3J0IGNvbnN0IGNvbXBvc2UgPSAoLi4ubHMpID0+XG4gIGxzLmxlbmd0aCA9PT0gMCA/IGlkZW50aXR5IDpcbiAgbHMubGVuZ3RoID09PSAxID8gbHNbMF0gOlxuICAodG9DYXQgPT4gUi5jb21wb3NlKC4uLmxzLm1hcChsID0+IGxpZnQobCkodG9DYXQpKSkpXG5cbmV4cG9ydCBjb25zdCByZW1vdmUgPSBSLmN1cnJ5KChsLCBzKSA9PiBzZXRJKGxpZnQobCksIHVuZGVmaW5lZCwgcykpXG5cbmV4cG9ydCBjb25zdCByZW1vdmVBbGwgPSBSLmN1cnJ5KChsZW5zLCBkYXRhKSA9PiB7XG4gIHdhcm4oXCJgcmVtb3ZlQWxsYCBpcyBkZXByZWNhdGVkIGFuZCB3aWxsIGJlIHJlbW92ZWQgaW4gbmV4dCBtYWpvciB2ZXJzaW9uIC0tLSB1c2UgYSBkaWZmZXJlbnQgYXBwcm9hY2guXCIpXG4gIHdoaWxlIChnZXQobGVucywgZGF0YSkgIT09IHVuZGVmaW5lZClcbiAgICBkYXRhID0gcmVtb3ZlKGxlbnMsIGRhdGEpXG4gIHJldHVybiBkYXRhXG59KVxuXG5jb25zdCBzZXRJID0gKGwsIHgsIHMpID0+IGwoSWRlbnQpKCgpID0+IElkZW50KHgpKShzKS52YWx1ZVxuY29uc3QgZ2V0SSA9IChsLCBzKSA9PiBsKENvbnN0KShDb25zdCkocykudmFsdWVcbmNvbnN0IG1vZGlmeUkgPSAobCwgeDJ4LCBzKSA9PiBsKElkZW50KSh5ID0+IElkZW50KHgyeCh5KSkpKHMpLnZhbHVlXG5jb25zdCBsZW5zSSA9IChnZXR0ZXIsIHNldHRlcikgPT4gX2NvbnN0cnVjdG9yID0+IGlubmVyID0+IHRhcmdldCA9PlxuICBpbm5lcihnZXR0ZXIodGFyZ2V0KSkubWFwKGZvY3VzID0+IHNldHRlcihmb2N1cywgdGFyZ2V0KSlcbmNvbnN0IGlzb0kgPSAodG8sIGZyb20pID0+IGxlbnNJKHRvLCB0b0NvbnNlcnZlKGZyb20pKVxuY29uc3QgY29sbGVjdEkgPSAobCwgcykgPT4gbChDb25zdCkoU2luZ2xlKShzKS52YWx1ZVxuXG5leHBvcnQgY29uc3QgbGVucyA9IFIuY3VycnkobGVuc0kpXG5leHBvcnQgY29uc3QgbW9kaWZ5ID0gUi5jdXJyeSgobCwgeDJ4LCBzKSA9PiBtb2RpZnlJKGxpZnQobCksIHgyeCwgcykpXG5leHBvcnQgY29uc3Qgc2V0ID0gUi5jdXJyeSgobCwgeCwgcykgPT4gc2V0SShsaWZ0KGwpLCB4LCBzKSlcbmV4cG9ydCBjb25zdCBnZXQgPSBSLmN1cnJ5KChsLCBzKSA9PiBnZXRJKGxpZnQobCksIHMpKVxuZXhwb3J0IGNvbnN0IGNvbGxlY3QgPSBSLmN1cnJ5KChsLCBzKSA9PlxuICB3YXJuKFwiYGNvbGxlY3RgIGlzIGV4cGVyaW1lbnRhbCBhbmQgbWlnaHQgYmUgcmVtb3ZlZCwgcmVuYW1lZCBvciBjaGFuZ2VkIHNlbWFudGljYWxseSBiZWZvcmUgbmV4dCBtYWpvciByZWxlYXNlXCIpIHx8XG4gIG1rQXJyYXkoZmlsdGVyZWQoY29sbGVjdEkobGlmdChsKSwgcykpKSlcblxuZXhwb3J0IGNvbnN0IGNoYWluID0gUi5jdXJyeSgoeDJ5TCwgeEwpID0+XG4gIGNvbXBvc2UoeEwsIGNob29zZSh4TyA9PiB4TyA9PT0gdW5kZWZpbmVkID8gbm90aGluZyA6IHgyeUwoeE8pKSkpXG5cbmV4cG9ydCBjb25zdCBqdXN0ID0geCA9PiBsZW5zSShSLmFsd2F5cyh4KSwgc25kKVxuXG5leHBvcnQgY29uc3QgY2hvb3NlID0geDJ5TCA9PiBjb25zdHJ1Y3RvciA9PiBpbm5lciA9PiB0YXJnZXQgPT5cbiAgbGlmdCh4MnlMKHRhcmdldCkpKGNvbnN0cnVjdG9yKShpbm5lcikodGFyZ2V0KVxuXG5leHBvcnQgY29uc3Qgbm90aGluZyA9IGxlbnNJKHNuZCwgc25kKVxuXG5leHBvcnQgY29uc3Qgb3JFbHNlID1cbiAgUi5jdXJyeSgoZCwgbCkgPT4gY2hvb3NlKHggPT4gZ2V0SShsaWZ0KGwpLCB4KSAhPT0gdW5kZWZpbmVkID8gbCA6IGQpKVxuXG5leHBvcnQgY29uc3QgY2hvaWNlID0gKC4uLmxzKSA9PiBjaG9vc2UoeCA9PiB7XG4gIGNvbnN0IGkgPSBscy5maW5kSW5kZXgobCA9PiBnZXRJKGxpZnQobCksIHgpICE9PSB1bmRlZmluZWQpXG4gIHJldHVybiAwIDw9IGkgPyBsc1tpXSA6IG5vdGhpbmdcbn0pXG5cbmNvbnN0IHJlcGxhY2VyID0gKGlubiwgb3V0KSA9PiB4ID0+IFIuZXF1YWxzKHgsIGlubikgPyBvdXQgOiB4XG5jb25zdCBub3JtYWxpemVyID0gZm4gPT4gaXNvSShmbiwgZm4pXG5cbmV4cG9ydCBjb25zdCByZXBsYWNlID0gUi5jdXJyeSgoaW5uLCBvdXQpID0+XG4gIGlzb0kocmVwbGFjZXIoaW5uLCBvdXQpLCByZXBsYWNlcihvdXQsIGlubikpKVxuXG5leHBvcnQgY29uc3QgZGVmYXVsdHMgPSByZXBsYWNlKHVuZGVmaW5lZClcbmV4cG9ydCBjb25zdCByZXF1aXJlZCA9IGlubiA9PiByZXBsYWNlKGlubiwgdW5kZWZpbmVkKVxuZXhwb3J0IGNvbnN0IGRlZmluZSA9IHYgPT4gbm9ybWFsaXplcihyZXBsYWNlcih1bmRlZmluZWQsIHYpKVxuXG5leHBvcnQgY29uc3QgdmFsdWVPciA9IHYgPT5cbiAgbGVuc0koeCA9PiB4ID09PSB1bmRlZmluZWQgfHwgeCA9PT0gbnVsbCA/IHYgOiB4LCBjb25zZXJ2ZSlcblxuZXhwb3J0IGNvbnN0IG5vcm1hbGl6ZSA9IHRyYW5zZm9ybSA9PiBub3JtYWxpemVyKHRvUGFydGlhbCh0cmFuc2Zvcm0pKVxuXG5jb25zdCBpc1Byb3AgPSB4ID0+IHR5cGVvZiB4ID09PSBcInN0cmluZ1wiXG5cbmV4cG9ydCBjb25zdCBwcm9wID0gYXNzZXJ0KFwiYSBzdHJpbmdcIiwgaXNQcm9wKVxuXG5jb25zdCBsaWZ0UHJvcCA9IGsgPT4gbGVuc0kobyA9PiB1bk9iamVjdChvKSAmJiBvW2tdLCAodiwgb0luKSA9PiB7XG4gIGNvbnN0IG8gPSB1bk9iamVjdChvSW4pXG4gIHJldHVybiB2ID09PSB1bmRlZmluZWQgPyBkZWxldGVLZXkoaywgbykgOiBzZXRLZXkoaywgdiwgbylcbn0pXG5cbmV4cG9ydCBjb25zdCBmaW5kID0gcHJlZGljYXRlID0+IGNob29zZSh4cyA9PiB7XG4gIGlmIChpc0FycmF5KHhzKSkge1xuICAgIGNvbnN0IGkgPSB4cy5maW5kSW5kZXgocHJlZGljYXRlKVxuICAgIHJldHVybiBpIDwgMCA/IGFwcGVuZCA6IGlcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gYXBwZW5kXG4gIH1cbn0pXG5cbmV4cG9ydCBjb25zdCBmaW5kV2l0aCA9ICguLi5scykgPT4ge1xuICBjb25zdCBsbHMgPSBsaWZ0KGNvbXBvc2UoLi4ubHMpKVxuICByZXR1cm4gY29tcG9zZShmaW5kKHggPT4gZ2V0SShsbHMsIHgpICE9PSB1bmRlZmluZWQpLCBsbHMpXG59XG5cbmNvbnN0IGlzSW5kZXggPSB4ID0+IE51bWJlci5pc0ludGVnZXIoeCkgJiYgMCA8PSB4XG5cbmV4cG9ydCBjb25zdCBpbmRleCA9IGFzc2VydChcImEgbm9uLW5lZ2F0aXZlIGludGVnZXJcIiwgaXNJbmRleClcblxuY29uc3QgbGlmdEluZGV4ID0gaSA9PiBsZW5zSSh4cyA9PiB1bkFycmF5KHhzKSAmJiB4c1tpXSwgKHgsIHhzKSA9PiB7XG4gIGlmICh4ID09PSB1bmRlZmluZWQpIHtcbiAgICBpZiAoIWlzQXJyYXkoeHMpKVxuICAgICAgcmV0dXJuIHVuZGVmaW5lZFxuICAgIGlmIChpIDwgeHMubGVuZ3RoKVxuICAgICAgcmV0dXJuIGRyb3BwZWQoeHMuc2xpY2UoMCwgaSkuY29uY2F0KHhzLnNsaWNlKGkrMSkpKVxuICAgIHJldHVybiBkcm9wcGVkKHhzKVxuICB9IGVsc2Uge1xuICAgIGlmICghaXNBcnJheSh4cykpXG4gICAgICByZXR1cm4gQXJyYXkoaSkuY29uY2F0KFt4XSlcbiAgICBpZiAoeHMubGVuZ3RoIDw9IGkpXG4gICAgICByZXR1cm4geHMuY29uY2F0KEFycmF5KGkgLSB4cy5sZW5ndGgpLCBbeF0pXG4gICAgaWYgKFIuZXF1YWxzKHgsIHhzW2ldKSlcbiAgICAgIHJldHVybiB4c1xuICAgIGNvbnN0IHlzID0geHMuc2xpY2UoMClcbiAgICB5c1tpXSA9IHhcbiAgICByZXR1cm4geXNcbiAgfVxufSlcblxuZXhwb3J0IGNvbnN0IGFwcGVuZCA9IGxlbnNJKHNuZCwgKHgsIHhzKSA9PlxuICB4ID09PSB1bmRlZmluZWQgPyB1bkFycmF5KHhzKSA6IGlzQXJyYXkoeHMpID8geHMuY29uY2F0KFt4XSkgOiBbeF0pXG5cbmV4cG9ydCBjb25zdCBmaWx0ZXIgPSBwID0+IGxlbnNJKHhzID0+IHVuQXJyYXkoeHMpICYmIHhzLmZpbHRlcihwKSwgKHlzLCB4cykgPT5cbiAgY29uc2VydmUoZHJvcHBlZChSLmNvbmNhdChta0FycmF5KHlzKSwgbWtBcnJheSh4cykuZmlsdGVyKFIuY29tcGxlbWVudChwKSkpKSwgeHMpKVxuXG5leHBvcnQgY29uc3QgYXVnbWVudCA9IHRlbXBsYXRlID0+IGxlbnNJKFxuICB4ID0+IHtcbiAgICBpZiAoaXNPYmplY3QoeCkpIHtcbiAgICAgIGNvbnN0IHogPSB7Li4ueH1cbiAgICAgIGZvciAoY29uc3QgayBpbiB0ZW1wbGF0ZSlcbiAgICAgICAgeltrXSA9IHRlbXBsYXRlW2tdKHopXG4gICAgICByZXR1cm4gelxuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkXG4gICAgfVxuICB9LFxuICB0b0NvbnNlcnZlKCh5LCBjSW4pID0+IHtcbiAgICBpZiAoaXNPYmplY3QoeSkpIHtcbiAgICAgIGNvbnN0IGMgPSB1bk9iamVjdChjSW4pIHx8IHt9XG4gICAgICBsZXQgelxuICAgICAgY29uc3Qgc2V0ID0gKGssIHYpID0+IHtcbiAgICAgICAgaWYgKHVuZGVmaW5lZCA9PT0geilcbiAgICAgICAgICB6ID0ge31cbiAgICAgICAgeltrXSA9IHZcbiAgICAgIH1cbiAgICAgIGZvciAoY29uc3QgayBpbiB5KSB7XG4gICAgICAgIGlmICghKGsgaW4gdGVtcGxhdGUpKVxuICAgICAgICAgIHNldChrLCB5W2tdKVxuICAgICAgICBlbHNlXG4gICAgICAgICAgaWYgKGsgaW4gYylcbiAgICAgICAgICAgIHNldChrLCBjW2tdKVxuICAgICAgfVxuICAgICAgcmV0dXJuIHpcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZFxuICAgIH1cbiAgfSkpXG5cbmV4cG9ydCBjb25zdCBwaWNrID0gdGVtcGxhdGUgPT4gbGVuc0koXG4gIGMgPT4ge1xuICAgIGxldCByXG4gICAgZm9yIChjb25zdCBrIGluIHRlbXBsYXRlKSB7XG4gICAgICBjb25zdCB2ID0gZ2V0SShsaWZ0KHRlbXBsYXRlW2tdKSwgYylcbiAgICAgIGlmICh2ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgaWYgKHIgPT09IHVuZGVmaW5lZClcbiAgICAgICAgICByID0ge31cbiAgICAgICAgcltrXSA9IHZcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHJcbiAgfSxcbiAgKG8gPSBlbXB0eSwgY0luKSA9PiB7XG4gICAgbGV0IGMgPSBjSW5cbiAgICBmb3IgKGNvbnN0IGsgaW4gdGVtcGxhdGUpXG4gICAgICBjID0gc2V0SShsaWZ0KHRlbXBsYXRlW2tdKSwgb1trXSwgYylcbiAgICByZXR1cm4gY1xuICB9KVxuXG5leHBvcnQgY29uc3QgaWRlbnRpdHkgPSBsZW5zSShpZCwgY29uc2VydmUpXG5cbmV4cG9ydCBjb25zdCBwcm9wcyA9ICguLi5rcykgPT4gcGljayhSLnppcE9iaihrcywga3MpKVxuXG5jb25zdCBzaG93ID0gKC4uLmxhYmVscykgPT4geCA9PiBjb25zb2xlLmxvZyguLi5sYWJlbHMsIHgpIHx8IHhcblxuZXhwb3J0IGNvbnN0IGxvZyA9ICguLi5sYWJlbHMpID0+XG4gIGxlbnNJKHNob3coLi4ubGFiZWxzLCBcImdldFwiKSwgc2hvdyguLi5sYWJlbHMsIFwic2V0XCIpKVxuXG5leHBvcnQgY29uc3Qgc2VxdWVuY2UgPSBjb25zdHJ1Y3RvciA9PiBpbm5lciA9PiB0YXJnZXQgPT5cbiAgd2FybihcImBzZXF1ZW5jZWAgaXMgZXhwZXJpbWVudGFsIGFuZCBtaWdodCBiZSByZW1vdmVkLCByZW5hbWVkIG9yIGNoYW5nZWQgc2VtYW50aWNhbGx5IGJlZm9yZSBuZXh0IG1ham9yIHJlbGVhc2VcIikgfHxcbiAgUi50cmF2ZXJzZShjb25zdHJ1Y3RvciwgaW5uZXIsIG1rQXJyYXkodGFyZ2V0KSlcbiAgLm1hcChmaWx0ZXJlZClcblxuZXhwb3J0IGNvbnN0IG9wdGlvbmFsID1cbiAgY29tcG9zZShsZW5zSSh0b1BhcnRpYWwoeCA9PiBbeF0pLFxuICAgICAgICAgICAgICAgIHRvUGFydGlhbCgoW3hdKSA9PiB4KSksXG4gICAgICAgICAgc2VxdWVuY2UpXG5cbmV4cG9ydCBjb25zdCBmcm9tUmFtZGEgPSBsID0+IF9jb25zdHJ1Y3RvciA9PiBsXG5jb25zdCBmYW50YXN5ID0gKCkgPT4ge3Rocm93IG5ldyBFcnJvcihcIlNvcnJ5LCBgdG9SYW1kYWAgaXMgb25seSBmYW50YXN5IVwiKX1cbmV4cG9ydCBjb25zdCB0b1JhbWRhID0gbCA9PiBsaWZ0KGwpKGZhbnRhc3kpXG5cbmV4cG9ydCBjb25zdCBmcm9tQXJyYXlCeSA9IGlkID0+XG4gIHdhcm4oXCJgZnJvbUFycmF5QnlgIGlzIGV4cGVyaW1lbnRhbCBhbmQgbWlnaHQgYmUgcmVtb3ZlZCwgcmVuYW1lZCBvciBjaGFuZ2VkIHNlbWFudGljYWxseSBiZWZvcmUgbmV4dCBtYWpvciByZWxlYXNlXCIpIHx8XG4gIGlzb0koeHMgPT4ge1xuICAgIGlmIChpc0FycmF5KHhzKSkge1xuICAgICAgY29uc3QgbyA9IHt9XG4gICAgICBmb3IgKGxldCBpPTAsIG49eHMubGVuZ3RoOyBpPG47ICsraSkge1xuICAgICAgICBjb25zdCB4ID0geHNbaV1cbiAgICAgICAgb1t4W2lkXV0gPSB4XG4gICAgICB9XG4gICAgICByZXR1cm4gb1xuICAgIH1cbiAgfSxcbiAgbyA9PiB1bk9iamVjdChvKSAmJiBSLnZhbHVlcyhvKSlcblxuZXhwb3J0IGRlZmF1bHQgY29tcG9zZVxuIl19
{
"name": "partial.lenses",
"version": "3.9.0",
"version": "3.9.1",
"description": "Partial lenses",

@@ -5,0 +5,0 @@ "main": "lib/partial.lenses.js",

@@ -626,3 +626,3 @@ [ [Tutorial](#tutorial) | [Reference](#reference) | [Background](#background) ]

`L.fromArrayBy(id)` (is an isomorphism) that converts an array of objects
`L.fromArrayBy(id)` (is an isomorphism that) converts an array of objects
containing `id` properties into an object with the `id`s as keys and the array

@@ -629,0 +629,0 @@ elements as values.

@@ -220,3 +220,5 @@ import * as R from "ramda"

return xs
return xs.slice(0, i).concat([x], xs.slice(i+1))
const ys = xs.slice(0)
ys[i] = x
return ys
}

@@ -223,0 +225,0 @@ })

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc