{"_id":"@aelmolla/lotide","_rev":"1-82fe2f1fd9b4205d1c2c7dca03e0e36b","name":"@aelmolla/lotide","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"@aelmolla/lotide","version":"1.0.0","description":"A mini clone of the [Lodash](https://lodash.com) library.","main":"index.js","directories":{"test":"test"},"scripts":{"test":"mocha"},"repository":{"type":"git","url":"git+https://github.com/zMollaz/lotide.git"},"author":{"name":"Ahmed Elmolla"},"license":"ISC","bugs":{"url":"https://github.com/zMollaz/lotide/issues"},"homepage":"https://github.com/zMollaz/lotide#readme","devDependencies":{"chai":"^4.3.4","mocha":"^9.1.3"},"gitHead":"1dd37bda18d01967dcca6d88df15a1129f191c0a","_id":"@aelmolla/lotide@1.0.0","_nodeVersion":"12.22.7","_npmVersion":"8.1.4","dist":{"integrity":"sha512-XVI6zFKrpfSfrUnj/GIxiDpEC38YjGjh5t5S5WwlyHsDvwRq4hHm9/GgqFQ9ofgfvoZiWHHrYBnTFqzbWMf1nw==","shasum":"031f536a90edd01a04ee793abb3461f0115be8c3","tarball":"https://registry.npmjs.org/@aelmolla/lotide/-/lotide-1.0.0.tgz","fileCount":25,"unpackedSize":17445,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhpan+CRA9TVsSAnZWagAAB+QP/0Cyjh6Zx1nM5JMWsFzv\n312Sj8H2V6GTHD5ygBKcYhrr0VIGK2pjo9w88oWvR9i4n+QpbgcTcdi2vBUW\nRb35IPDhbcnBu4aYV+g64B4IezvjFxp7w8IevrP4Co8r4z/li7WuuNwC0zmR\nNDjam3oCaVS4Y8feRZJjmleGgdQtzPVBh6y2j5O7JkdR0eIQ66lxXGC6yyKg\nmeQUZYqFjG9UmQUNRK5N/l3Az6syknGKUSEGaJLmpg7lSoHwVVsGYLyHc57r\nh/y+09YEe5A0Wmb7tq52PU6fhJOTkyY2mD9A3bp538DJDjvuBqmFnXpQMP8z\nNzG9d+QsAkIuF1+XeZZI6LE6fAVmBZsHtWlT/U5//12M6Rd7Jlcbrs/oZCFc\niIrIM4wfc0WzThQzOXVFMzKBvW1YVV9hpcciAsOTyyV+XAF9ezvc5xHEWvZY\nOY7uBLARX4qosSQw2DurjChQ4zXE/DiRs8kzyuZKdzL/P0zY5D12RsiL/az8\nKqrWTKrUTXPpUbzc2wbn30sI9d2r4bNoF9u473MRFFBhmI3i0ldorGjAJYKn\nuuQhCZuHpMEybT/w+ruohTL2qf0UN1Jsvyfn5BvpREj37ks+iVIKWFdh9j1g\n3Oez9eyF7Hi8SCTkOs1k9+41IMFVZb/JtMHvaj1kYDSjsWuvSpMMuiq/QWwQ\nMQLf\r\n=nk4D\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC8Mzq2CuUCqErggrwjFuRFrkInhOl/uU4rOJfXOXDySAIgO6i6TQmQgaBuj31FYbR6c6HIjOLm244sLPsoKn7W9eo="}]},"_npmUser":{"name":"aelmolla","email":"aelmollaz@icloud.com"},"maintainers":[{"name":"aelmolla","email":"aelmollaz@icloud.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/lotide_1.0.0_1638246910265_0.8640887047283963"},"_hasShrinkwrap":false}},"time":{"created":"2021-11-30T04:35:10.212Z","1.0.0":"2021-11-30T04:35:10.425Z","modified":"2022-04-04T11:47:35.322Z"},"maintainers":[{"name":"aelmolla","email":"aelmollaz@icloud.com"}],"description":"A mini clone of the [Lodash](https://lodash.com) library.","homepage":"https://github.com/zMollaz/lotide#readme","repository":{"type":"git","url":"git+https://github.com/zMollaz/lotide.git"},"author":{"name":"Ahmed Elmolla"},"bugs":{"url":"https://github.com/zMollaz/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 @aelmolla/lotide`\n\n**Require it:**\n\n`const _ = require('@aelmolla/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* `assertArraysEqual()`: Compares two arrays and print out a message alerting us if they are strictly equal or not.\n* `assertEqual()`: Compares two values and print out a message alerting us if they are strictly equal or not.\n* `assertObjectsEqual()`: Compares two objects and print out a message alerting us if they are strictly equal or not.\n* `countLetters()`: Takes in a sentence (as a string) and then returns a count of each of the letters in that sentence.\n* `countOnly()`: Takes in a collection of items and returns counts for a specific subset of those items. \n* `eqArrays()`: Compares two arrays and returns true or false, if they are strictly equal or not.\n* `eqObject()`: Takes in two objects and returns true or false, if they are strictly equal or not.\n* `findKey()`: Takes in an object and a callback, scans the object and return the first key for which the callback returns a truthy value. If no key is found, it returns undefined.\n* `findKeyByValue()`: Searches for a key on an object where its value matches a given value.\n* `head()`: Retrieves the first element from a given array.\n* `letterPosition()`: Returns all the indices (zero-based positions) in the string where each character is found.\n* `map()`: Takes in an array and a callback function and returns a new array base on the results of the given callback function.\n* `middle()`: Takes in an array and returns the middle-most element(s) of a given array.\n* `tail()`: Retrieves the tail which is every element except the head (first element) of a given array.\n* `takeUntil()`: Takes in an array and a callback function and returns a slice of the array with elements taken from the beginning until the callback returns a truthy value.\n* `without()`: Filters out given elements form a given array.","readmeFilename":"README.md"}