{"_id":"@adammars/lotide","_rev":"2-d4b3b0db561fdf20fd6857bb794f6785","name":"@adammars/lotide","dist-tags":{"latest":"1.0.1"},"versions":{"1.0.0":{"name":"@adammars/lotide","version":"1.0.0","description":"A mini clone of the [Lodash](https://lodash.com) library","main":"assertArraysEqual.js","directories":{"test":"test"},"scripts":{"test":"mocha"},"repository":{"type":"git","url":"git+https://github.com/MagicMark5/lotide.git"},"author":{"name":"Adam Marsala"},"license":"ISC","bugs":{"url":"https://github.com/MagicMark5/lotide/issues"},"homepage":"https://github.com/MagicMark5/lotide#readme","devDependencies":{"chai":"^4.3.0","mocha":"^8.2.1"},"gitHead":"1ca15b9bb5289c56a9ba65946d3de534d7587df9","_id":"@adammars/lotide@1.0.0","_nodeVersion":"12.20.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-lbLEF/yW3v1D1yqeCeCN5ON3mHyd/T0q5ZAPhmT/uL0DItn5Fg1XT2JlBULQsdNlN9t79kAsAebwCybF+k8jXQ==","shasum":"ea5a061378613481547b15ad9368ff0d6c9146dd","tarball":"https://registry.npmjs.org/@adammars/lotide/-/lotide-1.0.0.tgz","fileCount":29,"unpackedSize":30713,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgIZhOCRA9TVsSAnZWagAAz14P/RcNdgquykITVYIk6ZTK\nmf+ALWiQZGpEzV/ty+J7YCu3Bb2iJExEcM/q1JZ3/LP4x8eNxoA+DTfDeIcG\nrCXlOnbwGM5Sf/jHApswOD0nE/xk+Zwz6qb6oiYGVKYN7cDIQWeF76G7h/nS\nC66XVeb46ehs52Fo1O28XCCpvQ0Lj+5h0dyqUxaDqHZ2XwXaSsGI/kuHfO/0\njJbgb7qhgVe6Jfsh/2KtF1IbEDUjcPHyQpxEWWPA2Soy47RbLmF2WCD/5ys1\n9UY59FOH+5QntC/Rs6RBjRrNGK8z5Zq/2awgQHNmDcGhg1r/REzzufFAsDgI\nwRVvGMdo18/jIB9s9gk045d4oPqQZTMbKU2EFtyApssJ6bGQ1/JnCnj19rL1\nT41G8ZGFJ2mJJbGvoQIkliX4WoEh4UVVqdzS2X2IsemKyJ/Nu8z997umw/S8\nIS1ozNxhuUDSSVSHPhptTL704q30x7qwWS+CyKTAxEqhTCHvBdHXGGLN5j/I\nJoEvmSrSZLwUAMFL34H+qPC9GWTkgWFJgRTJVcoPtSV9oPqfcIw5nzWrYwSm\nCAkEeasSxehYM1S2t/q8QAGAZHDkV8O/mVp+Gcgh4f918koZWwBhuhslwqq+\ng136EUFu1dPCa3v7VXKCiBDLGissyyvymyels/bG/Z7H7eq3hIysXmjc6uD5\noRkN\r\n=KoSS\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIC00NBMnFntXOXWjbLeB1puG+DRXjdoKDHSZzISIqnDRAiAqooTbKWgU+zfiUYyOJQ17GplgvzO5a67Rn2FNTw+QyQ=="}]},"_npmUser":{"name":"adammars","email":"adammarsala@hotmail.com"},"maintainers":[{"name":"adammars","email":"adammarsala@hotmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/lotide_1.0.0_1612814414235_0.7437184021315277"},"_hasShrinkwrap":false},"1.0.1":{"name":"@adammars/lotide","version":"1.0.1","description":"A mini clone of the [Lodash](https://lodash.com) library","main":"assertArraysEqual.js","directories":{"test":"test"},"scripts":{"test":"mocha"},"repository":{"type":"git","url":"git+https://github.com/MagicMark5/lotide.git"},"author":{"name":"Adam Marsala"},"license":"ISC","bugs":{"url":"https://github.com/MagicMark5/lotide/issues"},"homepage":"https://github.com/MagicMark5/lotide#readme","devDependencies":{"chai":"^4.3.0","mocha":"^8.2.1"},"gitHead":"f6580b8d7d1d6cb30b249c61a2619a5b1eaad3b4","_id":"@adammars/lotide@1.0.1","_nodeVersion":"12.20.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-eyulMD8ebwgq0DbCzTDevqdVJG/JKyRPotPgp1A6x0clvDn8Kn1mIrOyvopRRx/EptirBQne6vnFmZSus0PGrA==","shasum":"504593c2806528690de9e7800c0e9ec1996edf81","tarball":"https://registry.npmjs.org/@adammars/lotide/-/lotide-1.0.1.tgz","fileCount":33,"unpackedSize":31460,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgIcdkCRA9TVsSAnZWagAA430P/2++vEvu6KanFW3g4sjA\nJ1YB/eaZtOFOHpg+vpOyyP26YOt7C4cdd65g4j91X+Xlaen0rBDBCBuQfFPm\nFzZSjjE55DHzJGb9LlXRxEbdBJ8iyj5BZM+mnRQB0eCHHjHTyguYPp7XY2nq\n+gBrJRAqv4ONxqdBdlARj12pb44uSf/20bsHSZkKccxHmkNGnJA5Q8UjwnUZ\nBVRJ3KGvKKSFtmWxthEx2E1n2Q0pXKg3bkMpnCg61gLlVx+XaogvMPv7+NiG\n43hJga3tPGv4zkDSRV/TSKmqPuZ+UhqWV3LWy4lS5t8a65juImXi97cafpf3\nvL3EMcta7Ot8TN5bWzz7AS8ojziroWK4f2yn5eOr51K+dzUw5VDvYvqes14n\nmSw8WXzOvQjmFNWi8hv9NkkfQDhRpqn3x9s7BsZtZGDvmPugOchIryEfLvhz\nyTnQ2mmqfDKgFuXDw5raauYFiyQTeCCwIS3Ljyh0S0rrUakWtRn7dwsbOrP7\n9g+/2E4wQs38Z+v23YM++HCJfdEg5zC0q49Jat8yC9IenWiRAyob0wN886Vl\niT0MgeRjuXlm/xiZ6YkuFlbd99UXN59mHzqqZR4w+iJrP5CHrFLghE+Tb4Nf\n8sh15JL9mUuIbwzt12BIl77de67PZKKJ+VDBN1+bo/27mjE7A4vPbZH+/Rjw\njLGH\r\n=zc8S\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBsng0702A7XI3tHVxJxra07OnoF8OC1QbdjoqRqYsIOAiA2v93Ix8+CLEqJZv6LGybsBuHDpmT4Gkw/OGoGigqylQ=="}]},"_npmUser":{"name":"adammars","email":"adammarsala@hotmail.com"},"maintainers":[{"name":"adammars","email":"adammarsala@hotmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/lotide_1.0.1_1612826468383_0.05573664452777671"},"_hasShrinkwrap":false}},"time":{"created":"2021-02-08T20:00:14.195Z","1.0.0":"2021-02-08T20:00:14.427Z","modified":"2022-04-04T11:25:32.129Z","1.0.1":"2021-02-08T23:21:08.543Z"},"maintainers":[{"name":"adammars","email":"adammarsala@hotmail.com"}],"description":"A mini clone of the [Lodash](https://lodash.com) library","homepage":"https://github.com/MagicMark5/lotide#readme","repository":{"type":"git","url":"git+https://github.com/MagicMark5/lotide.git"},"author":{"name":"Adam Marsala"},"bugs":{"url":"https://github.com/MagicMark5/lotide/issues"},"license":"ISC","readme":"# Lotide\n\nA mini clone of the [Lodash](https://lodash.com) library.\n\n## Purpose\n\n**_BEWARE:_ This library was published for learning purposes. It is _not_ intended for use in production-grade software.**\n\nThis project was created and published by me as part of my learnings at Lighthouse Labs. \n\n## Usage\n\n**Install it:**\n\n`npm install @adammars/lotide`\n\n**Require it:**\n\n`const _ = require('@adammars/lotide');`\n\n**Call it:**\n\n`const results = _.tail([1, 2, 3]) // => [2, 3]`\n\n## Documentation\n\nThe following functions are currently implemented:\n\n* `head(arr)`: returns the head of an array (the first element as an array) \n* `tail(arr)`: returns the tail of an array (all elements of the array after the head/first element)\n* `middle(arr)`: returns the middle indexed element of an array (two elements if the array has an even length)\n* `assertEqual(actual, expected)`: returns a pass or fail assertion that two arguments are strictly equal (primitives only)\n* `eqArrays(arr1, arr2)`: returns true if two arrays and their contents are strictly equal (even if the elements are nested arrays)\n* `eqObjects(obj1, obj2)`: returns true if two objects and all key/value pairs are equal (even for object or array values)\n* `assertArraysEqual(arr1, arr2)`: returns a pass or fail assertion that two argument arrays are equal (uses eqArrays)\n* `assertObjectsEqual(obj1, obj2)`: returns a pass or fail assertion that two argument objects are equal (uses eqObjects)\n* `countLetters(str)`: returns an object with a count of all unique letter characters in the provided string argument\n* `countOnly(arr, obj)`: searches an array for specified elements based on the object argument, returns an object with counts\n* `findKey(obj, callback)`: returns a specific key in an object specified by a callback function\n* `findKeyByValue(obj, value)`: returns first key in an object whose value matches the given argument\n* `flatten(arr)`: returns a non-nested array when given a nested (multidimensional) array \n* `letterPositions(str)`: returns an object with indices of each unique character in an argument sentence string\n* `map(arr, callback)`: returns an array with each element of the argument array modified by the callback function argument \n* `takeUntil(arr, callback)`: from a given array the callback will add elements to the returning array until it returns a falsy value\n* `without(arr1, arr2)`: returns a filtered array of first argument with only items not listed in the second argument array\n","readmeFilename":"README.md"}