{"_id":"@alchemixst/lotide","_rev":"1-238a8c40b607cc73f59d6261db31d078","name":"@alchemixst/lotide","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"@alchemixst/lotide","version":"1.0.0","description":"Lodash clone library.","main":"assertArraysEqual.js","directories":{"test":"test"},"scripts":{"test":"mocha"},"repository":{"type":"git","url":"git+https://github.com/Zobee/lotide.git"},"keywords":[],"author":{"name":"Zoheb Boga"},"license":"ISC","bugs":{"url":"https://github.com/Zobee/lotide/issues"},"homepage":"https://github.com/Zobee/lotide#readme","devDependencies":{"chai":"^4.3.4","mocha":"^8.3.2"},"gitHead":"1e31f3f66794ac4137908e6effd2956dd3084d99","_id":"@alchemixst/lotide@1.0.0","_nodeVersion":"12.22.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-RPFY2McENU5esU+2r92j+GMGjPQyuLm4TZTzjDe+T5kN/o9I0e5ukHp/unGiK9bxKZa/ZJ/35otLpBlPxrN0SA==","shasum":"b748d4a607abd1c628d2c623b8342689e9e02391","tarball":"https://registry.npmjs.org/@alchemixst/lotide/-/lotide-1.0.0.tgz","fileCount":36,"unpackedSize":31136,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkIWICRA9TVsSAnZWagAApHYP/jMMwdc6SOMb6Hd0jV7T\nIGGwlvyO31tTQI8gInRqOTcnRxwSdbMvdcYudFSK+GTlWF4p5TLtgPtKcg0H\nQ+8xsRmhn89hZUqFhJidOgOY6VgqY8PPH48+Godbx7BR0/MiJtWB5F+BMPrF\ni1IAipgdvogGc5kF1ethY2w/pTmsUD1hMXAjoaeTfp4VmMeAVomZRzJYA6V/\nE0KoN/kfvEouiN2JzuZHNXx9la5aAJx637tVW1XajPM4Gyws0OhLMzj/5NmZ\ngmsgMeraC4RswNp6v7wLUglJ3nbgjliYJZBe5CX5oZTQvo+lOEbmJeToK9gN\nGP8HjZn4OlbJ7rsBX6GC54e4G7U2393FsicmYLBvBDF3jXrzl47hcR4oiGWa\n77n5LZB9y/UcecKm8wTTwm2LSW1rgctVJ1x/Q7zeEFvxVnTZbyT6T78B+T7m\nFK+46X+2V37zHMHbgK+xKrKz7Z7F4zdLvi9Groyhnj6XY+Gn/atbzIJrHvYX\nFYAFe1oXDgG3urdrYoeR24gs3b/WqsLjaAB8vZhPl0n5eBSvPcuz5Ms2hilu\nfdurE6YoUMC6issaP1vFoi3ofAGyj3QLspbjUpIeZGuiaNGGeLZywDabwiZh\nrElrR+t0kG+X+GeK6fBsbUA2g37vpkBjgajHgLaIas3Xxv7hDR7E4H4o3AOc\nRvR6\r\n=Qb1h\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICsz1Yv33OfrVcFtrcG7pkcWSuWFFV2dv9BvE0YpkQYFAiB151QSWIPVfK7OPeNszp9GD5tsIjU+ylx59cIQN0QqlA=="}]},"_npmUser":{"name":"alchemixst","email":"zohebboga@hotmail.com"},"maintainers":[{"name":"alchemixst","email":"zohebboga@hotmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/lotide_1.0.0_1620084104228_0.7715892333370098"},"_hasShrinkwrap":false}},"time":{"created":"2021-05-03T23:21:44.171Z","1.0.0":"2021-05-03T23:21:44.506Z","modified":"2022-04-04T12:36:07.190Z"},"maintainers":[{"name":"alchemixst","email":"zohebboga@hotmail.com"}],"description":"Lodash clone library.","homepage":"https://github.com/Zobee/lotide#readme","keywords":[],"repository":{"type":"git","url":"git+https://github.com/Zobee/lotide.git"},"author":{"name":"Zoheb Boga"},"bugs":{"url":"https://github.com/Zobee/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 @alchemxist/lotide`\n\n**Require it:**\n\n`const _ = require('@alchemxist/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* `countLetters(str)`: Returns an object {character : characterCount} where each key (character) is a character in str. amd characterCount is the number of instances of that character.\n* `countOnly(allItems, itemsToCount)`: Returns an object (item: numOccurrences) where each key is an item in allItems, and numOccurrences is the number of times that item appears in allItems. itemsToCount is an object {item: shouldFind} where item is a corresponding item in allItems, and shouldFind is a boolean. If true, the item should be counted.\n* `eqArrays(arr1, arr2)`: Returns true if arr1 is equal to arr2 and false otherwise. Supports deep equivalence checks for nested arrays.\n* `eqObjects(object1, object2)`: Returns true if object1 and object 2 have identical keys with identical values. Supports deep equivalence checks for nested objects.\n* `findKey(obj, callback)`: Returns the key of obj that passes the callback. \n* `findKeyByValue(obj, val)`: Returns the key of obj associated with the value val.\n* `flatten(arr)`: Returns a flattened version of the input array.\n* `head(arr)`: Returns the head (first value) of arr\n* `letterPositions(str)`: Returns an object {character : [ positions ]) whose keys are the letters in str, and whose values are arrays with the indicies of each instance of the character.\n* `map(arr, callback)`: Homemade Array.map() which takes an array and a callback, and returns a new array consisting of all elements of the input array after being modified by callback.\n* `middle(arr)`: Returns the middle index of an array. If arr.length is even, the two middle indicies will be returned.\n* `tail(arr)`: Returns the tail (arr[ 1 ] -> arr.length -1) of arr.\n* `takeUntil(arr, callback)`: Returns a new array consisting of the values in arr up to the element that causes callback to return true.\n* `without(source, itemsToRemove)`: Returns a new array consisting of the values in source, excluding elements in itemsToRemove.\n","readmeFilename":"README.md"}