Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

fastener

Package Overview
Dependencies
Maintainers
1
Versions
11
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

fastener - npm Package Compare versions

Comparing version 2.1.1 to 2.1.2

.nyc_output/a9dc883931b090614414199c1241be95.json

110

dist/fastener.js

@@ -1,16 +0,7 @@

(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.F = f()}})(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){
"use strict";
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('infestines')) :
typeof define === 'function' && define.amd ? define(['exports', 'infestines'], factory) :
(factory((global.fastener = global.fastener || {}),global.I));
}(this, (function (exports,infestines) { 'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.everywhere = exports.transformMove = exports.queryMove = exports.toZipper = exports.right = exports.left = exports.downLast = exports.downHead = exports.downPath = exports.downTo = exports.modify = exports.set = exports.keyOf = exports.get = undefined;
exports.up = up;
exports.head = head;
exports.last = last;
exports.fromZipper = fromZipper;
exports.pathOf = pathOf;
var _infestines = require("infestines");
//

@@ -31,9 +22,2 @@

var isString = function isString(x) {
return typeof x === "string";
};
var isNumber = function isNumber(x) {
return typeof x === "number";
};
//

@@ -53,3 +37,3 @@

var zipper = function zipper(left, focus, key, right, up) {
return (0, _infestines.isDefined)(up) ? { left: left, focus: focus, key: key, right: right, up: up } : { left: left, focus: focus, key: key, right: right };
return infestines.isDefined(up) ? { left: left, focus: focus, key: key, right: right, up: up } : { left: left, focus: focus, key: key, right: right };
};

@@ -71,3 +55,3 @@

for (var k in object) {
if ((0, _infestines.isDefined)(focus)) right = [right, object[k], k];else if (key === k) focus = object[k];else left = [left, object[k], k];
if (infestines.isDefined(focus)) right = [right, object[k], k];else if (key === k) focus = object[k];else left = [left, object[k], k];
}return zipper(left, focus, key, reverse(right), up);

@@ -97,6 +81,6 @@ }

var get = exports.get = function get(z) {
var get = function get(z) {
return z.focus;
};
var keyOf = exports.keyOf = function keyOf(z) {
var keyOf = function keyOf(z) {
return z.key;

@@ -106,5 +90,5 @@ };

var setU = function setU(focus, z) {
return (0, _infestines.assocPartialU)("focus", focus, z);
return infestines.assocPartialU("focus", focus, z);
};
var set = exports.set = (0, _infestines.curry)(setU);
var set = /*#__PURE__*/infestines.curry(setU);

@@ -114,3 +98,3 @@ var modifyU = function modifyU(f, z) {

};
var modify = exports.modify = (0, _infestines.curry)(modifyU);
var modify = /*#__PURE__*/infestines.curry(modifyU);

@@ -129,5 +113,5 @@ function up(_ref) {

intoArray(reverse(left), array);
if ((0, _infestines.isDefined)(focus)) array.push(focus);
if (infestines.isDefined(focus)) array.push(focus);
intoArray(right, array);
return (0, _infestines.assocPartialU)("focus", array, up);
return infestines.assocPartialU("focus", array, up);
}

@@ -138,5 +122,5 @@ case "string":

intoObject(reverse(left), object);
if ((0, _infestines.isDefined)(focus)) object[key] = focus;
if (infestines.isDefined(focus)) object[key] = focus;
intoObject(right, object);
return (0, _infestines.assocPartialU)("focus", object, up);
return infestines.assocPartialU("focus", object, up);
}

@@ -148,8 +132,8 @@ }

var focus = z.focus;
if ((0, _infestines.isObject)(focus) && isString(key) && key in focus) return fromObject(focus, key, (0, _infestines.dissocPartialU)("focus", z));
if ((0, _infestines.isArray)(focus) && isNumber(key) && 0 <= key && key < focus.length) return fromArray(focus, key, (0, _infestines.dissocPartialU)("focus", z));
if (infestines.isObject(focus) && infestines.isString(key) && key in focus) return fromObject(focus, key, infestines.dissocPartialU("focus", z));
if (infestines.isArray(focus) && infestines.isNumber(key) && 0 <= key && key < focus.length) return fromArray(focus, key, infestines.dissocPartialU("focus", z));
}
var downTo = exports.downTo = (0, _infestines.curry)(downToU);
var downTo = /*#__PURE__*/infestines.curry(downToU);
var downPath = exports.downPath = (0, _infestines.curry)(function (path, z) {
var downPath = /*#__PURE__*/infestines.curry(function (path, z) {
for (var i = 0, n = path.length; z && i < n; ++i) {

@@ -163,11 +147,11 @@ z = downToU(path[i], z);

var focus = z.focus;
if ((0, _infestines.isObject)(focus)) return downToU(head ? firstKey(focus) : lastKey(focus), z);
if ((0, _infestines.isArray)(focus)) return downToU(head ? 0 : focus.length - 1, z);
if (infestines.isObject(focus)) return downToU(head ? firstKey(focus) : lastKey(focus), z);
if (infestines.isArray(focus)) return downToU(head ? 0 : focus.length - 1, z);
};
};
var downHead = exports.downHead = downMost(true);
var downLast = exports.downLast = downMost(false);
var downHead = /*#__PURE__*/downMost(true);
var downLast = /*#__PURE__*/downMost(false);
var left = exports.left = function left(_ref2) {
var left = function left(_ref2) {
var left = _ref2.left,

@@ -178,6 +162,6 @@ focus = _ref2.focus,

up = _ref2.up;
return left ? isNumber(key) ? zipper(left[0], left[1], key - 1, [right, focus], up) : zipper(left[0], left[1], left[2], [right, focus, key], up) : void 0;
return left ? infestines.isNumber(key) ? zipper(left[0], left[1], key - 1, [right, focus], up) : zipper(left[0], left[1], left[2], [right, focus, key], up) : void 0;
};
var right = exports.right = function right(_ref3) {
var right = function right(_ref3) {
var left = _ref3.left,

@@ -188,3 +172,3 @@ focus = _ref3.focus,

up = _ref3.up;
return right ? isNumber(key) ? zipper([left, focus], right[1], key + 1, right[0], up) : zipper([left, focus, key], right[1], right[2], right[0], up) : void 0;
return right ? infestines.isNumber(key) ? zipper([left, focus], right[1], key + 1, right[0], up) : zipper([left, focus, key], right[1], right[2], right[0], up) : void 0;
};

@@ -199,3 +183,3 @@

var toZipper = exports.toZipper = function toZipper(focus) {
var toZipper = function toZipper(focus) {
return { focus: focus };

@@ -211,3 +195,3 @@ };

}
var queryMove = exports.queryMove = (0, _infestines.curry)(queryMoveU);
var queryMove = /*#__PURE__*/infestines.curry(queryMoveU);

@@ -229,6 +213,6 @@ function bwd(move, z) {

return queryMoveU(move, z, function (x) {
return queryMoveU(bwd(move, z), z, _infestines.id, f(x));
return queryMoveU(bwd(move, z), z, infestines.id, f(x));
}, z);
};
var transformMove = exports.transformMove = (0, _infestines.curry)(transformMoveU);
var transformMove = /*#__PURE__*/infestines.curry(transformMoveU);

@@ -243,7 +227,7 @@ var everywhereG = function everywhereG(f) {

};
var everywhere = exports.everywhere = (0, _infestines.curry)(everywhereU);
var everywhere = /*#__PURE__*/infestines.curry(everywhereU);
function pathOf(z) {
var path = [];
while (z && (0, _infestines.isDefined)(z.key)) {
while (z && infestines.isDefined(z.key)) {
path.push(z.key);

@@ -255,4 +239,24 @@ z = z.up;

},{"infestines":undefined}]},{},[1])(1)
});
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm5vZGVfbW9kdWxlcy9icm93c2VyLXBhY2svX3ByZWx1ZGUuanMiLCJzcmMvZmFzdGVuZXIuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7UUNrR2dCLEUsR0FBQSxFO1FBNkRBLEksR0FBQSxJO1FBQ0EsSSxHQUFBLEk7UUFJQSxVLEdBQUEsVTtRQXdCQSxNLEdBQUEsTTs7QUE1TGhCOztBQVVBOztBQUVBLFNBQVMsUUFBVCxDQUFrQixDQUFsQixFQUFxQjtBQUNuQixPQUFLLElBQU0sQ0FBWCxJQUFnQixDQUFoQjtBQUNFLFdBQU8sQ0FBUDtBQURGO0FBRUQ7O0FBRUQsU0FBUyxPQUFULENBQWlCLENBQWpCLEVBQW9CO0FBQ2xCLE1BQUksWUFBSjtBQUNBLE9BQUssSUFBTSxDQUFYLElBQWdCLENBQWhCO0FBQ0UsVUFBTSxDQUFOO0FBREYsR0FFQSxPQUFPLEdBQVA7QUFDRDs7QUFFRCxJQUFNLFdBQVcsU0FBWCxRQUFXO0FBQUEsU0FBSyxPQUFPLENBQVAsS0FBYSxRQUFsQjtBQUFBLENBQWpCO0FBQ0EsSUFBTSxXQUFXLFNBQVgsUUFBVztBQUFBLFNBQUssT0FBTyxDQUFQLEtBQWEsUUFBbEI7QUFBQSxDQUFqQjs7QUFFQTs7QUFFQSxTQUFTLE9BQVQsQ0FBaUIsSUFBakIsRUFBdUI7QUFDckIsTUFBSSxLQUFLLElBQVQ7QUFDQSxTQUFPLElBQVAsRUFBYTtBQUNYLFNBQUssS0FBSyxNQUFMLEtBQWdCLENBQWhCLEdBQW9CLENBQUMsRUFBRCxFQUFLLEtBQUssQ0FBTCxDQUFMLEVBQWMsS0FBSyxDQUFMLENBQWQsQ0FBcEIsR0FBNkMsQ0FBQyxFQUFELEVBQUssS0FBSyxDQUFMLENBQUwsQ0FBbEQ7QUFDQSxXQUFPLEtBQUssQ0FBTCxDQUFQO0FBQ0Q7QUFDRCxTQUFPLEVBQVA7QUFDRDs7QUFFRDs7QUFFQSxJQUFNLFNBQVMsU0FBVCxNQUFTLENBQUMsSUFBRCxFQUFPLEtBQVAsRUFBYyxHQUFkLEVBQW1CLEtBQW5CLEVBQTBC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VyxlQUFlLFFBQWYsRUFBeUIsWUFBWSxDQUFaLENBQXpCLEVBQXlDLENBQXpDLENBQVgsQ0FEa0I7QUFBQSxDQUFwQjtBQUVPLElBQU0sa0NBQWEsdUJBQU0sV0FBTixDQUFuQjs7QUFFQSxTQUFTLE1BQVQsQ0FBZ0IsQ0FBaEIsRUFBbUI7QUFDeEIsTUFBTSxPQUFPLEVBQWI7QUFDQSxTQUFPLEtBQUssMkJBQVUsRUFBRSxHQUFaLENBQVosRUFBOEI7QUFDNUIsU0FBSyxJQUFMLENBQVUsRUFBRSxHQUFaO0FBQ0EsUUFBSSxFQUFFLEVBQU47QUFDRDtBQUNELFNBQU8sS0FBSyxPQUFMLEVBQVA7QUFDRCIsImZpbGUiOiJnZW5lcmF0ZWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlc0NvbnRlbnQiOlsiKGZ1bmN0aW9uIGUodCxuLHIpe2Z1bmN0aW9uIHMobyx1KXtpZighbltvXSl7aWYoIXRbb10pe3ZhciBhPXR5cGVvZiByZXF1aXJlPT1cImZ1bmN0aW9uXCImJnJlcXVpcmU7aWYoIXUmJmEpcmV0dXJuIGEobywhMCk7aWYoaSlyZXR1cm4gaShvLCEwKTt2YXIgZj1uZXcgRXJyb3IoXCJDYW5ub3QgZmluZCBtb2R1bGUgJ1wiK28rXCInXCIpO3Rocm93IGYuY29kZT1cIk1PRFVMRV9OT1RfRk9VTkRcIixmfXZhciBsPW5bb109e2V4cG9ydHM6e319O3Rbb11bMF0uY2FsbChsLmV4cG9ydHMsZnVuY3Rpb24oZSl7dmFyIG49dFtvXVsxXVtlXTtyZXR1cm4gcyhuP246ZSl9LGwsbC5leHBvcnRzLGUsdCxuLHIpfXJldHVybiBuW29dLmV4cG9ydHN9dmFyIGk9dHlwZW9mIHJlcXVpcmU9PVwiZnVuY3Rpb25cIiYmcmVxdWlyZTtmb3IodmFyIG89MDtvPHIubGVuZ3RoO28rKylzKHJbb10pO3JldHVybiBzfSkiLCJpbXBvcnQge1xuICBhc3NvY1BhcnRpYWxVLFxuICBjdXJyeSxcbiAgZGlzc29jUGFydGlhbFUsXG4gIGlkLFxuICBpc0FycmF5LFxuICBpc0RlZmluZWQsXG4gIGlzT2JqZWN0XG59IGZyb20gXCJpbmZlc3RpbmVzXCJcblxuLy9cblxuZnVuY3Rpb24gZmlyc3RLZXkobykge1xuICBmb3IgKGNvbnN0IGsgaW4gbylcbiAgICByZXR1cm4ga1xufVxuXG5mdW5jdGlvbiBsYXN0S2V5KG8pIHtcbiAgbGV0IGtleVxuICBmb3IgKGNvbnN0IGsgaW4gbylcbiAgICBrZXkgPSBrXG4gIHJldHVybiBrZXlcbn1cblxuY29uc3QgaXNTdHJpbmcgPSB4ID0+IHR5cGVvZiB4ID09PSBcInN0cmluZ1wiXG5jb25zdCBpc051bWJlciA9IHggPT4gdHlwZW9mIHggPT09IFwibnVtYmVyXCJcblxuLy9cblxuZnVuY3Rpb24gcmV2ZXJzZShmcm9tKSB7XG4gIGxldCB0byA9IG51bGxcbiAgd2hpbGUgKGZyb20pIHtcbiAgICB0byA9IGZyb20ubGVuZ3RoID09PSAzID8gW3RvLCBmcm9tWzFdLCBmcm9tWzJdXSA6IFt0bywgZnJvbVsxXV1cbiAgICBmcm9tID0gZnJvbVswXVxuICB9XG4gIHJldHVybiB0b1xufVxuXG4vL1xuXG5jb25zdCB6aXBwZXIgPSAobGVmdCwgZm9jdXMsIGtleSwgcmlnaHQsIHVwKSA9PiBpc0RlZmluZWQodXApXG4gID8ge2xlZnQsIGZvY3VzLCBrZXksIHJpZ2h0LCB1cH1cbiAgOiB7bGVmdCwgZm9jdXMsIGtleSwgcmlnaHR9XG5cbi8vXG5cbmZ1bmN0aW9uIGludG9PYmplY3QobGlzdCwgb2JqZWN0KSB7XG4gIHdoaWxlIChsaXN0KSB7XG4gICAgb2JqZWN0W2xpc3RbMl1dID0gbGlzdFsxXVxuICAgIGxpc3QgPSBsaXN0WzBdXG4gIH1cbn1cblxuZnVuY3Rpb24gZnJvbU9iamVjdChvYmplY3QsIGtleSwgdXApIHtcbiAgbGV0IGxlZnQgPSBudWxsXG4gIGxldCByaWdodCA9IG51bGxcbiAgbGV0IGZvY3VzXG4gIGZvciAoY29uc3QgayBpbiBvYmplY3QpXG4gICAgaWYgKGlzRGVmaW5lZChmb2N1cykpXG4gICAgICByaWdodCA9IFtyaWdodCwgb2JqZWN0W2tdLCBrXVxuICAgIGVsc2VcbiAgICAgIGlmIChrZXkgPT09IGspXG4gICAgICAgIGZvY3VzID0gb2JqZWN0W2tdXG4gICAgICBlbHNlXG4gICAgICAgIGxlZnQgPSBbbGVmdCwgb2JqZWN0W2tdLCBrXVxuICByZXR1cm4gemlwcGVyKGxlZnQsIGZvY3VzLCBrZXksIHJldmVyc2UocmlnaHQpLCB1cClcbn1cblxuLy9cblxuZnVuY3Rpb24gaW50b0FycmF5KGxpc3QsIGFycmF5KSB7XG4gIHdoaWxlIChsaXN0KSB7XG4gICAgYXJyYXkucHVzaChsaXN0WzFdKVxuICAgIGxpc3QgPSBsaXN0WzBdXG4gIH1cbn1cblxuZnVuY3Rpb24gZnJvbUFycmF5KGFycmF5LCBrZXksIHVwKSB7XG4gIGxldCBsZWZ0ID0gbnVsbFxuICBsZXQgcmlnaHQgPSBudWxsXG4gIGZvciAobGV0IGk9MDsgaTxrZXk7ICsraSlcbiAgICBsZWZ0ID0gW2xlZnQsIGFycmF5W2ldXVxuICBmb3IgKGxldCBpPWFycmF5Lmxlbmd0aC0xOyBrZXkgPCBpOyAtLWkpXG4gICAgcmlnaHQgPSBbcmlnaHQsIGFycmF5W2ldXVxuICByZXR1cm4gemlwcGVyKGxlZnQsIGFycmF5W2tleV0sIGtleSwgcmlnaHQsIHVwKVxufVxuXG4vL1xuXG5leHBvcnQgY29uc3QgZ2V0ID0geiA9PiB6LmZvY3VzXG5leHBvcnQgY29uc3Qga2V5T2YgPSB6ID0+IHoua2V5XG5cbmNvbnN0IHNldFUgPSAoZm9jdXMsIHopID0+IGFzc29jUGFydGlhbFUoXCJmb2N1c1wiLCBmb2N1cywgeilcbmV4cG9ydCBjb25zdCBzZXQgPSBjdXJyeShzZXRVKVxuXG5jb25zdCBtb2RpZnlVID0gKGYsIHopID0+IHNldFUoZihnZXQoeikpLCB6KVxuZXhwb3J0IGNvbnN0IG1vZGlmeSA9IGN1cnJ5KG1vZGlmeVUpXG5cbmV4cG9ydCBmdW5jdGlvbiB1cCh7bGVmdCwgZm9jdXMsIGtleSwgcmlnaHQsIHVwfSkge1xuICBzd2l0Y2ggKHR5cGVvZiBrZXkpIHtcbiAgICBjYXNlIFwibnVtYmVyXCI6IHtcbiAgICAgIGNvbnN0IGFycmF5ID0gW11cbiAgICAgIGludG9BcnJheShyZXZlcnNlKGxlZnQpLCBhcnJheSlcbiAgICAgIGlmIChpc0RlZmluZWQoZm9jdXMpKVxuICAgICAgICBhcnJheS5wdXNoKGZvY3VzKVxuICAgICAgaW50b0FycmF5KHJpZ2h0LCBhcnJheSlcbiAgICAgIHJldHVybiBhc3NvY1BhcnRpYWxVKFwiZm9jdXNcIiwgYXJyYXksIHVwKVxuICAgIH1cbiAgICBjYXNlIFwic3RyaW5nXCI6IHtcbiAgICAgIGNvbnN0IG9iamVjdCA9IHt9XG4gICAgICBpbnRvT2JqZWN0KHJldmVyc2UobGVmdCksIG9iamVjdClcbiAgICAgIGlmIChpc0RlZmluZWQoZm9jdXMpKVxuICAgICAgICBvYmplY3Rba2V5XSA9IGZvY3VzXG4gICAgICBpbnRvT2JqZWN0KHJpZ2h0LCBvYmplY3QpXG4gICAgICByZXR1cm4gYXNzb2NQYXJ0aWFsVShcImZvY3VzXCIsIG9iamVjdCwgdXApXG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIGRvd25Ub1Uoa2V5LCB6KSB7XG4gIGNvbnN0IGZvY3VzID0gei5mb2N1c1xuICBpZiAoaXNPYmplY3QoZm9jdXMpICYmIGlzU3RyaW5nKGtleSkgJiYga2V5IGluIGZvY3VzKVxuICAgIHJldHVybiBmcm9tT2JqZWN0KGZvY3VzLCBrZXksIGRpc3NvY1BhcnRpYWxVKFwiZm9jdXNcIiwgeikpXG4gIGlmIChpc0FycmF5KGZvY3VzKSAmJiBpc051bWJlcihrZXkpICYmIDAgPD0ga2V5ICYmIGtleSA8IGZvY3VzLmxlbmd0aClcbiAgICByZXR1cm4gZnJvbUFycmF5KGZvY3VzLCBrZXksIGRpc3NvY1BhcnRpYWxVKFwiZm9jdXNcIiwgeikpXG59XG5leHBvcnQgY29uc3QgZG93blRvID0gY3VycnkoZG93blRvVSlcblxuZXhwb3J0IGNvbnN0IGRvd25QYXRoID0gY3VycnkoKHBhdGgsIHopID0+IHtcbiAgZm9yIChsZXQgaT0wLCBuPXBhdGgubGVuZ3RoOyB6ICYmIGk8bjsgKytpKVxuICAgIHogPSBkb3duVG9VKHBhdGhbaV0sIHopXG4gIHJldHVybiB6XG59KVxuXG5jb25zdCBkb3duTW9zdCA9IGhlYWQgPT4geiA9PiB7XG4gIGNvbnN0IGZvY3VzID0gei5mb2N1c1xuICBpZiAoaXNPYmplY3QoZm9jdXMpKVxuICAgIHJldHVybiBkb3duVG9VKGhlYWQgPyBmaXJzdEtleShmb2N1cykgOiBsYXN0S2V5KGZvY3VzKSwgeilcbiAgaWYgKGlzQXJyYXkoZm9jdXMpKVxuICAgIHJldHVybiBkb3duVG9VKGhlYWQgPyAwIDogZm9jdXMubGVuZ3RoLTEsIHopXG59XG5cbmV4cG9ydCBjb25zdCBkb3duSGVhZCA9IGRvd25Nb3N0KHRydWUpXG5leHBvcnQgY29uc3QgZG93bkxhc3QgPSBkb3duTW9zdChmYWxzZSlcblxuZXhwb3J0IGNvbnN0IGxlZnQgPSAoe2xlZnQsIGZvY3VzLCBrZXksIHJpZ2h0LCB1cH0pID0+XG4gIGxlZnRcbiAgPyBpc051bWJlcihrZXkpXG4gICAgPyB6aXBwZXIobGVmdFswXSwgbGVmdFsxXSwga2V5LTEsICAgW3JpZ2h0LCBmb2N1c10sIHVwKVxuICAgIDogemlwcGVyKGxlZnRbMF0sIGxlZnRbMV0sIGxlZnRbMl0sIFtyaWdodCwgZm9jdXMsIGtleV0sIHVwKVxuICA6IHZvaWQgMFxuXG5leHBvcnQgY29uc3QgcmlnaHQgPSAoe2xlZnQsIGZvY3VzLCBrZXksIHJpZ2h0LCB1cH0pID0+XG4gIHJpZ2h0XG4gID8gaXNOdW1iZXIoa2V5KVxuICAgID8gemlwcGVyKFtsZWZ0LCBmb2N1c10sICAgICAgcmlnaHRbMV0sIGtleSsxLCAgICByaWdodFswXSwgdXApXG4gICAgOiB6aXBwZXIoW2xlZnQsIGZvY3VzLCBrZXldLCByaWdodFsxXSwgcmlnaHRbMl0sIHJpZ2h0WzBdLCB1cClcbiAgOiB2b2lkIDBcblxuZXhwb3J0IGZ1bmN0aW9uIGhlYWQoeikge2NvbnN0IHUgPSB1cCh6KTsgcmV0dXJuIHUgJiYgZG93bkhlYWQodSl9XG5leHBvcnQgZnVuY3Rpb24gbGFzdCh6KSB7Y29uc3QgdSA9IHVwKHopOyByZXR1cm4gdSAmJiBkb3duTGFzdCh1KX1cblxuZXhwb3J0IGNvbnN0IHRvWmlwcGVyID0gZm9jdXMgPT4gKHtmb2N1c30pXG5cbmV4cG9ydCBmdW5jdGlvbiBmcm9tWmlwcGVyKHopIHtjb25zdCB1PXVwKHopOyByZXR1cm4gdSA/IGZyb21aaXBwZXIodSkgOiBnZXQoeil9XG5cbmZ1bmN0aW9uIHF1ZXJ5TW92ZVUobW92ZSwgYiwgZiwgeikge2NvbnN0IG0gPSBtb3ZlKHopOyByZXR1cm4gbSA/IGYobSkgOiBifVxuZXhwb3J0IGNvbnN0IHF1ZXJ5TW92ZSA9IGN1cnJ5KHF1ZXJ5TW92ZVUpXG5cbmZ1bmN0aW9uIGJ3ZChtb3ZlLCB6KSB7XG4gIHN3aXRjaCAobW92ZSkge1xuICAgIGNhc2UgbGVmdDogcmV0dXJuIHJpZ2h0XG4gICAgY2FzZSByaWdodDogcmV0dXJuIGxlZnRcbiAgICBjYXNlIHVwOiByZXR1cm4gZG93blRvKGtleU9mKHopKVxuICAgIGRlZmF1bHQ6IHJldHVybiB1cFxuICB9XG59XG5cbmNvbnN0IHRyYW5zZm9ybU1vdmVVID0gKG1vdmUsIGYsIHopID0+XG4gIHF1ZXJ5TW92ZVUobW92ZSwgeiwgeCA9PiBxdWVyeU1vdmVVKGJ3ZChtb3ZlLCB6KSwgeiwgaWQsIGYoeCkpLCB6KVxuZXhwb3J0IGNvbnN0IHRyYW5zZm9ybU1vdmUgPSBjdXJyeSh0cmFuc2Zvcm1Nb3ZlVSlcblxuY29uc3QgZXZlcnl3aGVyZUcgPSBmID0+IHogPT5cbiAgdHJhbnNmb3JtTW92ZVUocmlnaHQsIGV2ZXJ5d2hlcmVHKGYpLCBldmVyeXdoZXJlVShmLCB6KSlcbmNvbnN0IGV2ZXJ5d2hlcmVVID0gKGYsIHopID0+XG4gIG1vZGlmeVUoZiwgdHJhbnNmb3JtTW92ZVUoZG93bkhlYWQsIGV2ZXJ5d2hlcmVHKGYpLCB6KSlcbmV4cG9ydCBjb25zdCBldmVyeXdoZXJlID0gY3VycnkoZXZlcnl3aGVyZVUpXG5cbmV4cG9ydCBmdW5jdGlvbiBwYXRoT2Yoeikge1xuICBjb25zdCBwYXRoID0gW11cbiAgd2hpbGUgKHogJiYgaXNEZWZpbmVkKHoua2V5KSkge1xuICAgIHBhdGgucHVzaCh6LmtleSlcbiAgICB6ID0gei51cFxuICB9XG4gIHJldHVybiBwYXRoLnJldmVyc2UoKVxufVxuIl19
exports.get = get;
exports.keyOf = keyOf;
exports.set = set;
exports.modify = modify;
exports.up = up;
exports.downTo = downTo;
exports.downPath = downPath;
exports.downHead = downHead;
exports.downLast = downLast;
exports.left = left;
exports.right = right;
exports.head = head;
exports.last = last;
exports.toZipper = toZipper;
exports.fromZipper = fromZipper;
exports.queryMove = queryMove;
exports.transformMove = transformMove;
exports.everywhere = everywhere;
exports.pathOf = pathOf;
Object.defineProperty(exports, '__esModule', { value: true });
})));

@@ -1,1 +0,1 @@

!function(r){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=r();else if("function"==typeof define&&define.amd)define([],r);else{var n;n="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this,n.F=r()}}(function(){return function r(n,e,t){function u(i,f){if(!e[i]){if(!n[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(o)return o(i,!0);var s=new Error("Cannot find module '"+i+"'");throw s.code="MODULE_NOT_FOUND",s}var a=e[i]={exports:{}};n[i][0].call(a.exports,function(r){var e=n[i][1][r];return u(e?e:r)},a,a.exports,r,n,e,t)}return e[i].exports}for(var o="function"==typeof require&&require,i=0;i<t.length;i++)u(t[i]);return u}({1:[function(r,n,e){"use strict";function t(r){for(var n in r)return n}function u(r){var n=void 0;for(var e in r)n=e;return n}function o(r){for(var n=null;r;)n=3===r.length?[n,r[1],r[2]]:[n,r[1]],r=r[0];return n}function i(r,n){for(;r;)n[r[2]]=r[1],r=r[0]}function f(r,n,e){var t=null,u=null,i=void 0;for(var f in r)(0,w.isDefined)(i)?u=[u,r[f],f]:n===f?i=r[f]:t=[t,r[f],f];return O(t,i,n,o(u),e)}function c(r,n){for(;r;)n.push(r[1]),r=r[0]}function s(r,n,e){for(var t=null,u=null,o=0;o<n;++o)t=[t,r[o]];for(var i=r.length-1;n<i;--i)u=[u,r[i]];return O(t,r[n],n,u,e)}function a(r){var n=r.left,e=r.focus,t=r.key,u=r.right,f=r.up;switch(typeof t){case"number":var s=[];return c(o(n),s),(0,w.isDefined)(e)&&s.push(e),c(u,s),(0,w.assocPartialU)("focus",s,f);case"string":var a={};return i(o(n),a),(0,w.isDefined)(e)&&(a[t]=e),i(u,a),(0,w.assocPartialU)("focus",a,f)}}function d(r,n){var e=n.focus;return(0,w.isObject)(e)&&m(r)&&r in e?f(e,r,(0,w.dissocPartialU)("focus",n)):(0,w.isArray)(e)&&k(r)&&0<=r&&r<e.length?s(e,r,(0,w.dissocPartialU)("focus",n)):void 0}function l(r){var n=a(r);return n&&M(n)}function v(r){var n=a(r);return n&&j(n)}function y(r){var n=a(r);return n?y(n):b(r)}function p(r,n,e,t){var u=r(t);return u?e(u):n}function h(r,n){switch(r){case _:return L;case L:return _;case a:return q(P(n));default:return a}}function g(r){for(var n=[];r&&(0,w.isDefined)(r.key);)n.push(r.key),r=r.up;return n.reverse()}Object.defineProperty(e,"__esModule",{value:!0}),e.everywhere=e.transformMove=e.queryMove=e.toZipper=e.right=e.left=e.downLast=e.downHead=e.downPath=e.downTo=e.modify=e.set=e.keyOf=e.get=void 0,e.up=a,e.head=l,e.last=v,e.fromZipper=y,e.pathOf=g;var w=r("infestines"),m=function(r){return"string"==typeof r},k=function(r){return"number"==typeof r},O=function(r,n,e,t,u){return(0,w.isDefined)(u)?{left:r,focus:n,key:e,right:t,up:u}:{left:r,focus:n,key:e,right:t}},b=e.get=function(r){return r.focus},P=e.keyOf=function(r){return r.key},D=function(r,n){return(0,w.assocPartialU)("focus",r,n)},U=(e.set=(0,w.curry)(D),function(r,n){return D(r(b(n)),n)}),q=(e.modify=(0,w.curry)(U),e.downTo=(0,w.curry)(d)),x=(e.downPath=(0,w.curry)(function(r,n){for(var e=0,t=r.length;n&&e<t;++e)n=d(r[e],n);return n}),function(r){return function(n){var e=n.focus;return(0,w.isObject)(e)?d(r?t(e):u(e),n):(0,w.isArray)(e)?d(r?0:e.length-1,n):void 0}}),M=e.downHead=x(!0),j=e.downLast=x(!1),_=e.left=function r(n){var r=n.left,e=n.focus,t=n.key,u=n.right,o=n.up;return r?k(t)?O(r[0],r[1],t-1,[u,e],o):O(r[0],r[1],r[2],[u,e,t],o):void 0},L=e.right=function r(n){var e=n.left,t=n.focus,u=n.key,r=n.right,o=n.up;return r?k(u)?O([e,t],r[1],u+1,r[0],o):O([e,t,u],r[1],r[2],r[0],o):void 0},T=(e.toZipper=function(r){return{focus:r}},e.queryMove=(0,w.curry)(p),function(r,n,e){return p(r,e,function(t){return p(h(r,e),e,w.id,n(t))},e)}),Z=(e.transformMove=(0,w.curry)(T),function r(n){return function(e){return T(L,r(n),A(n,e))}}),A=function(r,n){return U(r,T(M,Z(r),n))};e.everywhere=(0,w.curry)(A)},{infestines:void 0}]},{},[1])(1)});
!function(r,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("infestines")):"function"==typeof define&&define.amd?define(["exports","infestines"],n):n(r.fastener=r.fastener||{},r.I)}(this,function(r,n){"use strict";function e(r){for(var n in r)return n}function t(r){var n=void 0;for(var e in r)n=e;return n}function u(r){for(var n=null;r;)n=3===r.length?[n,r[1],r[2]]:[n,r[1]],r=r[0];return n}function i(r,n){for(;r;)n[r[2]]=r[1],r=r[0]}function o(r,e,t){var i=null,o=null,f=void 0;for(var c in r)n.isDefined(f)?o=[o,r[c],c]:e===c?f=r[c]:i=[i,r[c],c];return g(i,f,e,u(o),t)}function f(r,n){for(;r;)n.push(r[1]),r=r[0]}function c(r,n,e){for(var t=null,u=null,i=0;i<n;++i)t=[t,r[i]];for(var o=r.length-1;n<o;--o)u=[u,r[o]];return g(t,r[n],n,u,e)}function s(r){var e=r.left,t=r.focus,o=r.key,c=r.right,s=r.up;switch(typeof o){case"number":var a=[];return f(u(e),a),n.isDefined(t)&&a.push(t),f(c,a),n.assocPartialU("focus",a,s);case"string":var v={};return i(u(e),v),n.isDefined(t)&&(v[o]=t),i(c,v),n.assocPartialU("focus",v,s)}}function a(r,e){var t=e.focus;return n.isObject(t)&&n.isString(r)&&r in t?o(t,r,n.dissocPartialU("focus",e)):n.isArray(t)&&n.isNumber(r)&&0<=r&&r<t.length?c(t,r,n.dissocPartialU("focus",e)):void 0}function v(r){var n=s(r);return n&&x(n)}function d(r){var n=s(r);return n&&M(n)}function l(r){var n=s(r);return n?l(n):k(r)}function y(r,n,e,t){var u=r(t);return u?e(u):n}function p(r,n){switch(r){case N:return q;case q:return N;case s:return O(m(n));default:return s}}function h(r){for(var e=[];r&&n.isDefined(r.key);)e.push(r.key),r=r.up;return e.reverse()}var g=function(r,e,t,u,i){return n.isDefined(i)?{left:r,focus:e,key:t,right:u,up:i}:{left:r,focus:e,key:t,right:u}},k=function(r){return r.focus},m=function(r){return r.key},b=function(r,e){return n.assocPartialU("focus",r,e)},w=n.curry(b),P=function(r,n){return b(r(k(n)),n)},D=n.curry(P),O=n.curry(a),U=n.curry(function(r,n){for(var e=0,t=r.length;n&&e<t;++e)n=a(r[e],n);return n}),j=function(r){return function(u){var i=u.focus;return n.isObject(i)?a(r?e(i):t(i),u):n.isArray(i)?a(r?0:i.length-1,u):void 0}},x=j(!0),M=j(!1),N=function(r){var e=r.left,t=r.focus,u=r.key,i=r.right,o=r.up;return e?n.isNumber(u)?g(e[0],e[1],u-1,[i,t],o):g(e[0],e[1],e[2],[i,t,u],o):void 0},q=function(r){var e=r.left,t=r.focus,u=r.key,i=r.right,o=r.up;return i?n.isNumber(u)?g([e,t],i[1],u+1,i[0],o):g([e,t,u],i[1],i[2],i[0],o):void 0},A=function(r){return{focus:r}},Z=n.curry(y),_=function(r,e,t){return y(r,t,function(u){return y(p(r,t),t,n.id,e(u))},t)},H=n.curry(_),I=function r(n){return function(e){return _(q,r(n),L(n,e))}},L=function(r,n){return P(r,_(x,I(r),n))},S=n.curry(L);r.get=k,r.keyOf=m,r.set=w,r.modify=D,r.up=s,r.downTo=O,r.downPath=U,r.downHead=x,r.downLast=M,r.left=N,r.right=q,r.head=v,r.last=d,r.toZipper=A,r.fromZipper=l,r.queryMove=Z,r.transformMove=H,r.everywhere=S,r.pathOf=h,Object.defineProperty(r,"__esModule",{value:!0})});
{
"name": "fastener",
"version": "2.1.1",
"version": "2.1.2",
"description": "Zipper for manipulating JSON",
"main": "lib/fastener.js",
"module": "dist/fastener.es.js",
"main": "dist/fastener.cjs.js",
"scripts": {
"bench": "NODE_ENV=production node --expose-gc bench/bench.js",
"dist": "npm run dist:bowerify & npm run dist:bowerify.min & npm run dist:commonjs & wait",
"dist:bowerify": " NODE_ENV=dev browserify src/fastener.js -t babelify --no-bundle-external -d -s F -g envify > dist/fastener.js",
"dist:bowerify.min": "NODE_ENV=production browserify src/fastener.js -t babelify --no-bundle-external -s F -g envify -g uglifyify | uglifyjs -m -c > dist/fastener.min.js",
"dist:commonjs": "babel src --source-maps inline --out-dir lib",
"dist": "npm run dist:umd & npm run dist:umd.min & npm run dist:es & npm run dist:cjs & wait",
"dist:cjs": " NODE_ENV= rollup -c -n fastener -i src/fastener.js -f cjs -o dist/fastener.cjs.js",
"dist:es": " NODE_ENV= rollup -c -n fastener -i src/fastener.js -f es -o dist/fastener.es.js",
"dist:umd": " NODE_ENV=dev rollup -c -n fastener -i src/fastener.js -f umd -o dist/fastener.js",
"dist:umd.min": "NODE_ENV=production rollup -c -n fastener -i src/fastener.js -f umd -o dist/fastener.min.js",
"docs": "./scripts/generate-docs",
"docs-bundle": "NODE_ENV=dev browserify -r ./lib/fastener:fastener -r ramda -r infestines -r babel-polyfill -g envify -g uglifyify > docs/bundle.js",
"docs-bundle": "NODE_ENV=dev browserify -r ./dist/fastener.cjs:fastener -r ramda -r infestines -r babel-polyfill -g envify -g uglifyify | uglifyjs -m -c > docs/bundle.js",
"lint": "eslint src test",
"prepublish": "npm run lint && npm run test && npm run dist",
"prepublish": "npm run lint && npm run dist && npm run test",
"report-coverage": "nyc report --reporter=lcov > coverage.lcov && codecov",

@@ -38,42 +40,47 @@ "test": "nyc mocha"

"dependencies": {
"infestines": "^0.3.2"
"infestines": "^0.4.2"
},
"devDependencies": {
"babel-cli": "^6.18.0",
"babel-eslint": "^7.1.1",
"babel-plugin-check-es2015-constants": "^6.8.0",
"babel-plugin-transform-es2015-arrow-functions": "^6.8.0",
"babel-plugin-transform-es2015-block-scoped-functions": "^6.8.0",
"babel-plugin-transform-es2015-block-scoping": "^6.21.0",
"babel-plugin-transform-es2015-classes": "^6.18.0",
"babel-plugin-transform-es2015-computed-properties": "^6.8.0",
"babel-plugin-transform-es2015-destructuring": "^6.19.0",
"babel-plugin-transform-es2015-duplicate-keys": "^6.8.0",
"babel-plugin-transform-es2015-for-of": "^6.18.0",
"babel-plugin-transform-es2015-function-name": "^6.9.0",
"babel-plugin-transform-es2015-literals": "^6.8.0",
"babel-plugin-transform-es2015-modules-commonjs": "^6.18.0",
"babel-plugin-transform-es2015-object-super": "^6.8.0",
"babel-plugin-transform-es2015-parameters": "^6.21.0",
"babel-plugin-transform-es2015-shorthand-properties": "^6.18.0",
"babel-plugin-transform-es2015-spread": "^6.8.0",
"babel-plugin-transform-es2015-sticky-regex": "^6.8.0",
"babel-plugin-transform-es2015-template-literals": "^6.8.0",
"babel-plugin-transform-es2015-unicode-regex": "^6.11.0",
"babel-polyfill": "^6.20.0",
"babel-register": "^6.18.0",
"babel-cli": "^6.24.1",
"babel-eslint": "^7.2.2",
"babel-plugin-check-es2015-constants": "^6.22.0",
"babel-plugin-transform-es2015-arrow-functions": "^6.22.0",
"babel-plugin-transform-es2015-block-scoped-functions": "^6.22.0",
"babel-plugin-transform-es2015-block-scoping": "^6.24.1",
"babel-plugin-transform-es2015-classes": "^6.24.1",
"babel-plugin-transform-es2015-computed-properties": "^6.24.1",
"babel-plugin-transform-es2015-destructuring": "^6.23.0",
"babel-plugin-transform-es2015-duplicate-keys": "^6.24.1",
"babel-plugin-transform-es2015-for-of": "^6.23.0",
"babel-plugin-transform-es2015-function-name": "^6.24.1",
"babel-plugin-transform-es2015-literals": "^6.22.0",
"babel-plugin-transform-es2015-modules-commonjs": "^6.24.1",
"babel-plugin-transform-es2015-object-super": "^6.24.1",
"babel-plugin-transform-es2015-parameters": "^6.24.1",
"babel-plugin-transform-es2015-shorthand-properties": "^6.24.1",
"babel-plugin-transform-es2015-spread": "^6.22.0",
"babel-plugin-transform-es2015-sticky-regex": "^6.24.1",
"babel-plugin-transform-es2015-template-literals": "^6.22.0",
"babel-plugin-transform-es2015-unicode-regex": "^6.24.1",
"babel-polyfill": "^6.23.0",
"babel-register": "^6.24.1",
"babelify": "^7.3.0",
"benchmark": "^2.1.3",
"browserify": "^13.3.0",
"codecov": "^1.0.1",
"benchmark": "^2.1.4",
"browserify": "^14.3.0",
"codecov": "^2.1.0",
"envify": "^4.0.0",
"eslint": "^3.13.0",
"eslint": "^3.19.0",
"marked": "^0.3.6",
"mocha": "^3.2.0",
"nyc": "^10.0.0",
"nyc": "^10.2.0",
"ramda": "^0.23.0",
"rollup": "^0.41.6",
"rollup-plugin-babel": "^2.7.1",
"rollup-plugin-node-resolve": "^3.0.0",
"rollup-plugin-replace": "^1.1.1",
"rollup-plugin-uglify": "^1.0.1",
"sprintf-js": "^1.0.3",
"uglify-js": "^2.7.5",
"uglify-js": "^2.8.22",
"uglifyify": "^3.0.4"
}
}

@@ -16,28 +16,28 @@ [ [≡](#contents) | [Tutorial](#tutorial) | [Reference](#reference) | [Related Work](#related-work) | [GitHub](https://github.com/polytypic/fastener) | [Try Fastener!](https://polytypic.github.io/fastener/) ]

* [Introduction and Elimination](#introduction-and-elimination)
* [`F.toZipper(json)`](#F-toZipper "F.toZipper: JSON -> Zipper")
* [`F.fromZipper(zipper)`](#F-fromZipper "F.fromZipper: Zipper -> JSON")
* [`F.toZipper(json) ~> zipper`](#F-toZipper "F.toZipper: JSON -> Zipper")
* [`F.fromZipper(zipper) ~> json`](#F-fromZipper "F.fromZipper: Zipper -> JSON")
* [Focus](#focus)
* [`F.get(zipper)`](#F-get "F.get: Zipper -> JSON")
* [`F.modify(json => json, zipper)`](#F-modify "F.modify: (JSON -> JSON) -> Zipper -> Zipper")
* [`F.set(json, zipper)`](#F-set "F.set: JSON -> Zipper -> Zipper")
* [`F.get(zipper) ~> json`](#F-get "F.get: Zipper -> JSON")
* [`F.modify(json => json, zipper) ~> zipper`](#F-modify "F.modify: (JSON -> JSON) -> Zipper -> Zipper")
* [`F.set(json, zipper) ~> zipper`](#F-set "F.set: JSON -> Zipper -> Zipper")
* [Movement](#movement)
* [Parent-Child movement](#parent-child-movement)
* [`F.downHead(zipper)`](#F-downHead "F.downHead: Zipper -> Maybe Zipper")
* [`F.downLast(zipper)`](#F-downLast "F.downLast: Zipper -> Maybe Zipper")
* [`F.downTo(key, zipper)`](#F-downTo "F.downTo: (String|Number) -> Zipper -> Maybe Zipper")
* [`F.keyOf(zipper)`](#F-keyOf "F.keyOf: Zipper -> Maybe (String|Number)")
* [`F.up(zipper)`](#F-up "F.up: Zipper -> Maybe Zipper")
* [`F.downHead(zipper) ~> maybeZipper`](#F-downHead "F.downHead: Zipper -> Maybe Zipper")
* [`F.downLast(zipper) ~> maybeZipper`](#F-downLast "F.downLast: Zipper -> Maybe Zipper")
* [`F.downTo(key, zipper) ~> maybeZipper`](#F-downTo "F.downTo: (String|Number) -> Zipper -> Maybe Zipper")
* [`F.keyOf(zipper) ~> maybeKey`](#F-keyOf "F.keyOf: Zipper -> Maybe (String|Number)")
* [`F.up(zipper) ~> maybeZipper`](#F-up "F.up: Zipper -> Maybe Zipper")
* [Path movement](#path-movement)
* [`F.downPath([...keys], zipper)`](#F-downPath "F.downPath: [String|Number] -> Zipper -> Maybe Zipper")
* [`F.pathOf(zipper)`](#F-pathOf "F.pathOf: Zipper -> [String|Number]")
* [`F.downPath([...keys], zipper) ~> maybeZipper`](#F-downPath "F.downPath: [String|Number] -> Zipper -> Maybe Zipper")
* [`F.pathOf(zipper) ~> [...keys]`](#F-pathOf "F.pathOf: Zipper -> [String|Number]")
* [Sibling movement](#sibling-movement)
* [`F.head(zipper)`](#F-head "F.head: Zipper -> Maybe Zipper")
* [`F.last(zipper)`](#F-last "F.last: Zipper -> Maybe Zipper")
* [`F.left(zipper)`](#F-left "F.left: Zipper -> Maybe Zipper")
* [`F.right(zipper)`](#F-right "F.right: Zipper -> Maybe Zipper")
* [`F.head(zipper) ~> maybeZipper`](#F-head "F.head: Zipper -> Maybe Zipper")
* [`F.last(zipper) ~> maybeZipper`](#F-last "F.last: Zipper -> Maybe Zipper")
* [`F.left(zipper) ~> maybeZipper`](#F-left "F.left: Zipper -> Maybe Zipper")
* [`F.right(zipper) ~> maybeZipper`](#F-right "F.right: Zipper -> Maybe Zipper")
* [Queries](#queries)
* [`F.queryMove(zipper => maybeZipper, value, zipper => value, zipper)`](#F-queryMove "F.queryMove: (Zipper -> Maybe Zipper) -> a -> (Zipper -> a) -> Zipper -> a")
* [`F.queryMove(zipper => maybeZipper, value, zipper => value, zipper) ~> value`](#F-queryMove "F.queryMove: (Zipper -> Maybe Zipper) -> a -> (Zipper -> a) -> Zipper -> a")
* [Transforms](#transforms)
* [`F.transformMove(move, zipper => zipper, zipper)`](#F-transformMove "F.transformMove: (F.downHead|F.downLast|F.downTo(key)|F.left|F.right|F.up) -> (Zipper -> Zipper) -> Zipper -> Zipper")
* [`F.everywhere(json => json, zipper)`](#F-everywhere "F.everywhere: (JSON -> JSON) -> Zipper -> Zipper")
* [`F.transformMove(move, zipper => zipper, zipper) ~> zipper`](#F-transformMove "F.transformMove: (F.downHead|F.downLast|F.downTo(key)|F.left|F.right|F.up) -> (Zipper -> Zipper) -> Zipper -> Zipper")
* [`F.everywhere(json => json, zipper) ~> zipper`](#F-everywhere "F.everywhere: (JSON -> JSON) -> Zipper -> Zipper")
* [Related Work](#related-work)

@@ -289,3 +289,3 @@

#### <a name="F-toZipper"></a> [≡](#contents) [`F.toZipper(json)`](#F-toZipper "F.toZipper: JSON -> Zipper")
#### <a name="F-toZipper"></a> [≡](#contents) [`F.toZipper(json) ~> zipper`](#F-toZipper "F.toZipper: JSON -> Zipper")

@@ -305,3 +305,3 @@ `F.toZipper(json)` creates a new zipper that is focused on the root of the given

#### <a name="F-fromZipper"></a> [≡](#contents) [`F.fromZipper(zipper)`](#F-fromZipper "F.fromZipper: Zipper -> JSON")
#### <a name="F-fromZipper"></a> [≡](#contents) [`F.fromZipper(zipper) ~> json`](#F-fromZipper "F.fromZipper: Zipper -> JSON")

@@ -325,3 +325,3 @@ `F.fromZipper(zipper)` extracts the modified JSON object from the given zipper.

#### <a name="F-get"></a> [≡](#contents) [`F.get(zipper)`](#F-get "F.get: Zipper -> JSON")
#### <a name="F-get"></a> [≡](#contents) [`F.get(zipper) ~> json`](#F-get "F.get: Zipper -> JSON")

@@ -343,3 +343,3 @@ `F.get(zipper)` returns the element that the zipper is focused on.

#### <a name="F-modify"></a> [≡](#contents) [`F.modify(json => json, zipper)`](#F-modify "F.modify: (JSON -> JSON) -> Zipper -> Zipper")
#### <a name="F-modify"></a> [≡](#contents) [`F.modify(json => json, zipper) ~> zipper`](#F-modify "F.modify: (JSON -> JSON) -> Zipper -> Zipper")

@@ -360,3 +360,3 @@ `F.modify(fn, zipper)` is equivalent to `F.set(fn(F.get(zipper)), zipper)` and

#### <a name="F-set"></a> [≡](#contents) [`F.set(json, zipper)`](#F-set "F.set: JSON -> Zipper -> Zipper")
#### <a name="F-set"></a> [≡](#contents) [`F.set(json, zipper) ~> zipper`](#F-set "F.set: JSON -> Zipper -> Zipper")

@@ -386,3 +386,3 @@ `F.set(json, zipper)` replaces the element that the zipper is focused on with

##### <a name="F-downHead"></a> [≡](#contents) [`F.downHead(zipper)`](#F-downHead "F.downHead: Zipper -> Maybe Zipper")
##### <a name="F-downHead"></a> [≡](#contents) [`F.downHead(zipper) ~> maybeZipper`](#F-downHead "F.downHead: Zipper -> Maybe Zipper")

@@ -392,3 +392,3 @@ `F.downHead(zipper)` moves the focus to the leftmost element of the object or

##### <a name="F-downLast"></a> [≡](#contents) [`F.downLast(zipper)`](#F-downLast "F.downLast: Zipper -> Maybe Zipper")
##### <a name="F-downLast"></a> [≡](#contents) [`F.downLast(zipper) ~> maybeZipper`](#F-downLast "F.downLast: Zipper -> Maybe Zipper")

@@ -398,3 +398,3 @@ `F.downLast(zipper)` moves the focus to the rightmost element of the object or

##### <a name="F-downTo"></a> [≡](#contents) [`F.downTo(key, zipper)`](#F-downTo "F.downTo: (String|Number) -> Zipper -> Maybe Zipper")
##### <a name="F-downTo"></a> [≡](#contents) [`F.downTo(key, zipper) ~> maybeZipper`](#F-downTo "F.downTo: (String|Number) -> Zipper -> Maybe Zipper")

@@ -404,3 +404,3 @@ `F.downTo(key, zipper)` moves the focus to the specified object property or

##### <a name="F-keyOf"></a> [≡](#contents) [`F.keyOf(zipper)`](#F-keyOf "F.keyOf: Zipper -> Maybe (String|Number)")
##### <a name="F-keyOf"></a> [≡](#contents) [`F.keyOf(zipper) ~> maybeKey`](#F-keyOf "F.keyOf: Zipper -> Maybe (String|Number)")

@@ -410,3 +410,3 @@ `F.keyOf(zipper)` returns the object property name or the array index that the

##### <a name="F-up"></a> [≡](#contents) [`F.up(zipper)`](#F-up "F.up: Zipper -> Maybe Zipper")
##### <a name="F-up"></a> [≡](#contents) [`F.up(zipper) ~> maybeZipper`](#F-up "F.up: Zipper -> Maybe Zipper")

@@ -421,7 +421,7 @@ `F.up(zipper)` moves the focus from an array element or object property to the

##### <a name="F-downPath"></a> [≡](#contents) [`F.downPath([...keys], zipper)`](#F-downPath "F.downPath: [String|Number] -> Zipper -> Maybe Zipper")
##### <a name="F-downPath"></a> [≡](#contents) [`F.downPath([...keys], zipper) ~> maybeZipper`](#F-downPath "F.downPath: [String|Number] -> Zipper -> Maybe Zipper")
`F.downPath(path, zipper)` moves the focus along the specified path of keys.
##### <a name="F-pathOf"></a> [≡](#contents) [`F.pathOf(zipper)`](#F-pathOf "F.pathOf: Zipper -> [String|Number]")
##### <a name="F-pathOf"></a> [≡](#contents) [`F.pathOf(zipper) ~> [...keys]`](#F-pathOf "F.pathOf: Zipper -> [String|Number]")

@@ -435,15 +435,15 @@ `F.pathOf(zipper)` returns the path from the root to the current element focused

##### <a name="F-head"></a> [≡](#contents) [`F.head(zipper)`](#F-head "F.head: Zipper -> Maybe Zipper")
##### <a name="F-head"></a> [≡](#contents) [`F.head(zipper) ~> maybeZipper`](#F-head "F.head: Zipper -> Maybe Zipper")
`F.head(zipper)` moves the focus to the leftmost sibling of the current focus.
##### <a name="F-last"></a> [≡](#contents) [`F.last(zipper)`](#F-last "F.last: Zipper -> Maybe Zipper")
##### <a name="F-last"></a> [≡](#contents) [`F.last(zipper) ~> maybeZipper`](#F-last "F.last: Zipper -> Maybe Zipper")
`F.last(zipper)` moves the focus to the rightmost sibling of the current focus.
##### <a name="F-left"></a> [≡](#contents) [`F.left(zipper)`](#F-left "F.left: Zipper -> Maybe Zipper")
##### <a name="F-left"></a> [≡](#contents) [`F.left(zipper) ~> maybeZipper`](#F-left "F.left: Zipper -> Maybe Zipper")
`F.left(zipper)` moves the focus to the element on the left of the current focus.
##### <a name="F-right"></a> [≡](#contents) [`F.right(zipper)`](#F-right "F.right: Zipper -> Maybe Zipper")
##### <a name="F-right"></a> [≡](#contents) [`F.right(zipper) ~> maybeZipper`](#F-right "F.right: Zipper -> Maybe Zipper")

@@ -454,3 +454,3 @@ `F.right(zipper)` moves the focus to the element on the right of the current focus.

#### <a name="F-queryMove"></a> [≡](#contents) [`F.queryMove(zipper => maybeZipper, value, zipper => value, zipper)`](#F-queryMove "F.queryMove: (Zipper -> Maybe Zipper) -> a -> (Zipper -> a) -> Zipper -> a")
#### <a name="F-queryMove"></a> [≡](#contents) [`F.queryMove(zipper => maybeZipper, value, zipper => value, zipper) ~> value`](#F-queryMove "F.queryMove: (Zipper -> Maybe Zipper) -> a -> (Zipper -> a) -> Zipper -> a")

@@ -476,3 +476,3 @@ `F.queryMove(move, default, fn, zipper)` applies the given function `fn` to the

#### <a name="F-transformMove"></a> [≡](#contents) [`F.transformMove(move, zipper => zipper, zipper)`](#F-transformMove "F.transformMove: (F.downHead|F.downLast|F.downTo(key)|F.left|F.right|F.up) -> (Zipper -> Zipper) -> Zipper -> Zipper")
#### <a name="F-transformMove"></a> [≡](#contents) [`F.transformMove(move, zipper => zipper, zipper) ~> zipper`](#F-transformMove "F.transformMove: (F.downHead|F.downLast|F.downTo(key)|F.left|F.right|F.up) -> (Zipper -> Zipper) -> Zipper -> Zipper")

@@ -505,3 +505,3 @@ `F.transformMove(move, fn, zipper)` applies the given function to the zipper

#### <a name="F-everywhere"></a> [≡](#contents) [`F.everywhere(json => json, zipper)`](#F-everywhere "F.everywhere: (JSON -> JSON) -> Zipper -> Zipper")
#### <a name="F-everywhere"></a> [≡](#contents) [`F.everywhere(json => json, zipper) ~> zipper`](#F-everywhere "F.everywhere: (JSON -> JSON) -> Zipper -> Zipper")

@@ -508,0 +508,0 @@ `F.everywhere(fn, zipper)` performs a transform of the focused element by

@@ -8,3 +8,5 @@ import {

isDefined,
isObject
isNumber,
isObject,
isString
} from "infestines"

@@ -26,5 +28,2 @@

const isString = x => typeof x === "string"
const isNumber = x => typeof x === "number"
//

@@ -96,6 +95,6 @@

const setU = (focus, z) => assocPartialU("focus", focus, z)
export const set = curry(setU)
export const set = /*#__PURE__*/curry(setU)
const modifyU = (f, z) => setU(f(get(z)), z)
export const modify = curry(modifyU)
export const modify = /*#__PURE__*/curry(modifyU)

@@ -130,5 +129,5 @@ export function up({left, focus, key, right, up}) {

}
export const downTo = curry(downToU)
export const downTo = /*#__PURE__*/curry(downToU)
export const downPath = curry((path, z) => {
export const downPath = /*#__PURE__*/curry((path, z) => {
for (let i=0, n=path.length; z && i<n; ++i)

@@ -147,4 +146,4 @@ z = downToU(path[i], z)

export const downHead = downMost(true)
export const downLast = downMost(false)
export const downHead = /*#__PURE__*/downMost(true)
export const downLast = /*#__PURE__*/downMost(false)

@@ -173,3 +172,3 @@ export const left = ({left, focus, key, right, up}) =>

function queryMoveU(move, b, f, z) {const m = move(z); return m ? f(m) : b}
export const queryMove = curry(queryMoveU)
export const queryMove = /*#__PURE__*/curry(queryMoveU)

@@ -187,3 +186,3 @@ function bwd(move, z) {

queryMoveU(move, z, x => queryMoveU(bwd(move, z), z, id, f(x)), z)
export const transformMove = curry(transformMoveU)
export const transformMove = /*#__PURE__*/curry(transformMoveU)

@@ -194,3 +193,3 @@ const everywhereG = f => z =>

modifyU(f, transformMoveU(downHead, everywhereG(f), z))
export const everywhere = curry(everywhereU)
export const everywhere = /*#__PURE__*/curry(everywhereU)

@@ -197,0 +196,0 @@ export function pathOf(z) {

Sorry, the diff of this file is not supported yet

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