{"_id":"@daniyarbazakov/lotide","_rev":"2-9686bdad5235925ef16358436c3de525","name":"@daniyarbazakov/lotide","description":"JavaScript utility library","dist-tags":{"latest":"1.0.2"},"versions":{"1.0.0":{"name":"@daniyarbazakov/lotide","version":"1.0.0","author":{"name":"Daniyar Bazakov","email":"bazakovd@gmail.com"},"license":"ISC","_id":"@daniyarbazakov/lotide@1.0.0","maintainers":[{"name":"daniyarbazakov","email":"bazakovd@gmail.com"}],"homepage":"https://github.com/DaniyarBazakov/lotide#readme","bugs":{"url":"https://github.com/DaniyarBazakov/lotide/issues"},"dist":{"shasum":"83528c2a2a8441213f68583d1270d3a5fc40dc1c","tarball":"https://registry.npmjs.org/@daniyarbazakov/lotide/-/lotide-1.0.0.tgz","fileCount":30,"integrity":"sha512-8e4rWcocwGlYiOOSJTHHbGRYVqlrrrT3gYz2g0xl8m6j2yFyUUkWeV0AvSEy+Fz+7QCzFmUAtpdkxhDsvFmz5g==","signatures":[{"sig":"MEQCIDd5N/XZaJ0uLkaVJh8/KwtGjLlPDEa8Xo+jTSoDzTF7AiBftV1P+kE76Rmx++9XJrupixSf4Kp4zc1SZG3eM0LO/A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22052},"main":"index.js","gitHead":"ccd9f33bb940f54eb27aee92704af0dcbefed2b4","scripts":{"test":"mocha"},"_npmUser":{"name":"daniyarbazakov","email":"bazakovd@gmail.com"},"repository":{"url":"git+https://github.com/DaniyarBazakov/lotide.git","type":"git"},"_npmVersion":"6.14.6","description":"JavaScript utility library","directories":{"test":"test"},"_nodeVersion":"12.18.4","_hasShrinkwrap":false,"devDependencies":{"chai":"^4.3.1","mocha":"^9.2.2"},"_npmOperationalInternal":{"tmp":"tmp/lotide_1.0.0_1717702308479_0.7861732285045293","host":"s3://npm-registry-packages"}},"1.0.1":{"name":"@daniyarbazakov/lotide","version":"1.0.1","author":{"name":"Daniyar Bazakov","email":"bazakovd@gmail.com"},"license":"ISC","_id":"@daniyarbazakov/lotide@1.0.1","maintainers":[{"name":"daniyarbazakov","email":"bazakovd@gmail.com"}],"homepage":"https://github.com/DaniyarBazakov/lotide#readme","bugs":{"url":"https://github.com/DaniyarBazakov/lotide/issues"},"dist":{"shasum":"3dec7c5362a720c2adeb74124c55cafe448eb686","tarball":"https://registry.npmjs.org/@daniyarbazakov/lotide/-/lotide-1.0.1.tgz","fileCount":33,"integrity":"sha512-2r49gGG5e/daSByk+xEzKP5mY1tTWlTGDgJPyjtvY5lBWYPgW4JA/nYpXcZlAYB7TrxAHrHtLh8Cl0gvNQ0QYg==","signatures":[{"sig":"MEUCIFfMHKMbycEnl0NB7NM7vzb4WXEaghNm7WooFyfZuP30AiEApo5fszZ5Jj5/OTK7PlIHz9dUyO1sFUyE/qXfN8a2bxw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":15213},"main":"index.js","gitHead":"34b2d0a4010fb3127e9043a1182a33d050ff440a","scripts":{"test":"mocha"},"_npmUser":{"name":"daniyarbazakov","email":"bazakovd@gmail.com"},"repository":{"url":"git+https://github.com/DaniyarBazakov/lotide.git","type":"git"},"_npmVersion":"6.14.6","description":"JavaScript utility library","directories":{"test":"test"},"_nodeVersion":"12.18.4","_hasShrinkwrap":false,"devDependencies":{"chai":"^4.3.1","mocha":"^9.2.2"},"_npmOperationalInternal":{"tmp":"tmp/lotide_1.0.1_1717778691895_0.7719793710734266","host":"s3://npm-registry-packages"}},"1.0.2":{"name":"@daniyarbazakov/lotide","version":"1.0.2","description":"JavaScript utility library","main":"index.js","directories":{"test":"test"},"scripts":{"test":"mocha"},"repository":{"type":"git","url":"git+https://github.com/DaniyarBazakov/lotide.git"},"author":{"name":"Daniyar Bazakov","email":"bazakovd@gmail.com"},"license":"ISC","bugs":{"url":"https://github.com/DaniyarBazakov/lotide/issues"},"homepage":"https://github.com/DaniyarBazakov/lotide#readme","devDependencies":{"chai":"^4.3.1","mocha":"^9.2.2"},"gitHead":"1c5b131f5085bd563f6112ddd43f85ddb575eb6b","_id":"@daniyarbazakov/lotide@1.0.2","_nodeVersion":"12.18.4","_npmVersion":"6.14.6","dist":{"integrity":"sha512-ljv/l7Ucx3LY5PUEUTbu5Oywp2mibDHTOo/+Q/nhJAOCIgvezW+BbCeukFdnZL4bSM6kWnI3fOBY+xByp95NEw==","shasum":"ce698426ddb1559768a8b8c3874b847ace7859b6","tarball":"https://registry.npmjs.org/@daniyarbazakov/lotide/-/lotide-1.0.2.tgz","fileCount":30,"unpackedSize":14358,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICE2TvRjmYitx6Ee9BJr4ko2C85P41YI7ep3IZuaYtw2AiEA8XeP5dv9SXT9L8gYZTwV6m/Kf2M/Z3ZZuB2KNQBgXTE="}]},"_npmUser":{"name":"daniyarbazakov","email":"bazakovd@gmail.com"},"maintainers":[{"name":"daniyarbazakov","email":"bazakovd@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/lotide_1.0.2_1717781662302_0.011996190622409975"},"_hasShrinkwrap":false}},"time":{"created":"2024-06-06T19:31:48.359Z","modified":"2024-06-07T17:34:22.654Z","1.0.0":"2024-06-06T19:31:48.618Z","1.0.1":"2024-06-07T16:44:52.091Z","1.0.2":"2024-06-07T17:34:22.473Z"},"maintainers":[{"name":"daniyarbazakov","email":"bazakovd@gmail.com"}],"author":{"name":"Daniyar Bazakov","email":"bazakovd@gmail.com"},"repository":{"type":"git","url":"git+https://github.com/DaniyarBazakov/lotide.git"},"license":"ISC","homepage":"https://github.com/DaniyarBazakov/lotide#readme","bugs":{"url":"https://github.com/DaniyarBazakov/lotide/issues"},"readme":"# Lotide\r\n\r\nA mini clone of the [Lodash](https://lodash.com) library.\r\n\r\n## Purpose\r\n\r\n**_BEWARE:_ This library was published for learning purposes. It is _not_ intended for use in production-grade software.**\r\n\r\nThis project was created and published by me as part of my learnings at Lighthouse Labs.\r\n\r\n## Usage\r\n\r\n**Install it:**\r\n\r\n`npm install @daniyarbazakov/lotide`\r\n\r\n**Require it:**\r\n\r\n`const _ = require('@daniyarbazakov/lotide');`\r\n\r\n**Call it:**\r\n\r\n`const results = _.tail([1, 2, 3]) // => [2, 3]`\r\n\r\n## Documentation\r\n\r\nThe following functions are currently implemented:\r\n- `head`: function that takes in an array and returns the first element in the array.\r\n- `tail`: function that takes in an array and returns everything except the first element of the array.\r\n- `middle`: function that takes in an array and returns middle most element of the array.\r\n- `countLetters`: function that takes in a sentence and returns a count of each of the letters in the sentence.\r\n- `countOnly`: function that takes in a collection of items and returns a specific subset of those items.\r\n- `eqObjects`: function that takes in 2 objects and return true if they are equal and false otherwise.\r\n- `findKey`: function that takes in an object and callback and returns the first key that meets the criteria specified in callback.\r\n- `findKeyByValue`: function that takes in an object and a value and returns the first key that corresponds to that value.\r\n- `flatten`: function that takes in an array that contains elements including nested array of elements and returns a flattened version of the array.\r\n- `letterPositions`: function that takes in a string and returns all indices of letter positions in the string.\r\n- `takeUntil`: function that takes in an array and callback and returns a slice of the array based on the criteria specified in the callback.\r\n- `without`: function that takes in a source array and an itemsToRemove arrays and returns only the items from the source array that are not in the itemsToRemove array.\r\n- `assertArraysEqual`: function that prints an appropriate message after comparing the two arrays.\r\n- `assertEqual`: function that takes in 2 values and returns true if they are equal and false otherwise.\r\n- `assertObjectsEqual`: function that takes in 2 objects and returns true if they are equal and false otherwise.\r\n- `eqArrays`: function that takes in 2 arrays and returns true if the arrays are equal and false otherwise.\r\n\r\n  ","readmeFilename":"README.md"}