{"_id":"@dantan380/lotide","name":"@dantan380/lotide","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"@dantan380/lotide","version":"1.0.0","description":"Clone of Lodash, Lotide","main":"index.js","directories":{"test":"test"},"scripts":{"test":"mocha"},"repository":{"type":"git","url":"git+https://github.com/dantan380/lotide.git"},"keywords":["assert","lodash","mocha","chai"],"author":{"name":"@dantan380"},"license":"ISC","bugs":{"url":"https://github.com/dantan380/lotide/issues"},"homepage":"https://github.com/dantan380/lotide#readme","devDependencies":{"chai":"^4.3.8","mocha":"^9.2.2"},"gitHead":"668961635cf088079f266f0cce132b245b2d9911","_id":"@dantan380/lotide@1.0.0","_nodeVersion":"15.14.0","_npmVersion":"7.7.6","dist":{"integrity":"sha512-aLzC2F9p3wlvQf+JwS3q9UcA1IIa1DVD0eMcWoaVykyaAqtb/nt00zXJ/O9pbzz+DmsZINWip7LDrbqS3bwTIA==","shasum":"43a0bd86fa5558290972a44f726adfa3a85dbd57","tarball":"https://registry.npmjs.org/@dantan380/lotide/-/lotide-1.0.0.tgz","fileCount":34,"unpackedSize":19865,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEBXnZcci/2YZjdJ0nKjiaY8BAhgxXrdibGLd0+S4sBzAiAoqs+OCmiDcOghQMXBpf5i7P7BW4xAtSCeo/YcTIUGBg=="}]},"_npmUser":{"name":"dantan380","email":"danieltan380@gmail.com"},"maintainers":[{"name":"dantan380","email":"danieltan380@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/lotide_1.0.0_1695703658063_0.7665962154781194"},"_hasShrinkwrap":false}},"time":{"created":"2023-09-26T04:47:37.951Z","1.0.0":"2023-09-26T04:47:38.292Z","modified":"2023-09-26T04:47:38.590Z"},"maintainers":[{"name":"dantan380","email":"danieltan380@gmail.com"}],"description":"Clone of Lodash, Lotide","homepage":"https://github.com/dantan380/lotide#readme","keywords":["assert","lodash","mocha","chai"],"repository":{"type":"git","url":"git+https://github.com/dantan380/lotide.git"},"author":{"name":"@dantan380"},"bugs":{"url":"https://github.com/dantan380/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 @dantan380/lotide`\n\n**Require it:**\n\n`const _ = require('@dantan380/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(array1, array2)`: Checks if two arrays have the same  length, type and value. Returns a message indicating whether they are equal or not.\n\n* `assertEqual(actual, expected)`: Checks if actual is equal to expected, in both type and value. Returns a message indicating whether they are equal or not.\n\n* `assertObjectsEqual(actual, expected)`: Checks if `actual` is the same object as `expected`. Returns a message indicating whether they are equal or not.\n\n* `countLetters(sentecne)`: Gives a count of how many of each letter appears in the sentence.\n\n* `countOnly(allItems, itemsToCount)`: Counts how many times a specific element appears in an array based on a given object. Returns an object with the number counted of each specific item.\n\n* `findKey(object, callback)`: Retrieves the key of a value in an object based on the callback function. Returns the first key that causes the callback function to return a truthy value. If no key meets the requirement, returns `undefined`.\n\n* `findKeyByValue(object, callback)`: Takes an object and a callback function as parameters. Retrieves the first key in the object that meets the value specified. Returns `undefined` if no such key is found.\n\n* `head(array)`: Takes an array. Returns the first element of that array (index 0).\n\n* `letterPositions(sentence)`: Finds the indices of each letter in the sentence and returns them in an object, where each key is each letter of the sentence. The value of each key is it's index in the sentence.\n\n* `map(array, callback)`: Takes an array and a callback function as parameters. Transforms the elements of the given array based on the callback function. Returns a new array with each transformed element.\n\n* `middle(array)`: Finds and returns the middle most element of an array. If the given array's length is even, the two middle most values are returned in a new array.\n\n* `takeUntil(array, callback)`: Takes an array and a callback function as parameters. Returns a new array with elements until the callback function produces a truthy value.\n\n* `tail(array)`: Returns a new array without the first value of the given array. Takes an array as a parameter.\n\n* `without(source, itemsToRemove)`: Returns a new array with the specified elements removed from the source array.","readmeFilename":"README.md"}