{"_id":"@adrianetodesign/lotide","_rev":"1-4ed3c21e694caedb365a16c7cc49fe6d","name":"@adrianetodesign/lotide","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"@adrianetodesign/lotide","version":"1.0.0","description":"Week 1 Project at Lighthouse Labs","main":"assertArraysEqual.js","directories":{"test":"test"},"scripts":{"test":"mocha"},"repository":{"type":"git","url":"git+https://github.com/adrianetodesign/lotide.git"},"author":{"name":"Adrian To adrianetodesign@gmail.com"},"license":"ISC","bugs":{"url":"https://github.com/adrianetodesign/lotide/issues"},"homepage":"https://github.com/adrianetodesign/lotide#readme","devDependencies":{"chai":"^4.3.4","mocha":"^9.1.4"},"gitHead":"629619cf4531f0f7f252e937e9d16e98d9d65926","_id":"@adrianetodesign/lotide@1.0.0","_nodeVersion":"12.22.9","_npmVersion":"6.14.15","dist":{"integrity":"sha512-Zon0We8Kr03nX3xm8rcL1CR1F+7e8oRSOR0aXn01yZBUrjvozrHA3958XZZKr9zMbHThrsIJs/SO9eQViy1q0A==","shasum":"ae7645b6f1ef04cf8bcefb7aeca6c34e99ab8914","tarball":"https://registry.npmjs.org/@adrianetodesign/lotide/-/lotide-1.0.0.tgz","fileCount":25,"unpackedSize":22548,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh5icwCRA9TVsSAnZWagAAhQYP/1541iwBBzV6nwRS4lG9\nt9Y0R+DM80sm/khS4XM29yxy2bwsYsSKKvuKAJ47UEOX84nN34z5RXrWJkEH\nOd+CrJ7M1iTi5ooEZ6c3++xYWLkh+pPNZTvXk+pwYrGMVWgGXb1VoWeSRkn/\n5zK+nLJq7psUIhifhydwCS05ZV81YI5DyBhOhqxJ92jYaRgFnqGrAj4Vw0tt\naZZy9XjrrAMuekDLWZ4WCs7c9sVo9dXZUUKYfc11JFXnFyaedHYZZFAXoVSQ\nM/KxqC7bgbKsoegzw1/uBBSzPoxYvuYr4pigEZuJfJu7T+ATdQ0PStEHI5G6\n7aot5GUIN5c3j7aT0K96K3T78vbjJyW2G3E479DI7xfFJz7Q0Qy/fYD/yocp\nDiOQK4cLbl5Fz+JD0z0sXwBZSmo2ewpmEBNAFKjjq0g+1xOlQL/4hqPHwByn\nAjcoHaXLeQoyLc9CezhjOXoEn5zdx4IHc5Hs3JT6xBepkcVC3kwtmdufw3q2\nIj2caO/1hgxlarT20cWDYHTF/MW0TZgw2wRxS30F8hxWiDpt2EjfVemL3/eI\nWITrmAy6LIX9awyI7XFCLBHRVlIOJvec8PTC8+iqrjywBG/u031n0gy2aGcF\nJA4YNbKBKFTmRqnRWZn21m78GgZ74XY5zwAn+YkCJh4W9YGvPieeTnnegXQc\niTmd\r\n=8cZ3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFAEKrkBYmOuPiUotEU5suFO/XRvPkZAemR9skhgJ9bIAiBxxBrpLWnxYPe9ercLqvMM6jXuUQsxdqnV3Ez7T4XZaw=="}]},"_npmUser":{"name":"adrianetodesign","email":"adrianetodesign@gmail.com"},"maintainers":[{"name":"adrianetodesign","email":"adrianetodesign@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/lotide_1.0.0_1642473264105_0.7859190715756261"},"_hasShrinkwrap":false}},"time":{"created":"2022-01-18T02:34:24.052Z","1.0.0":"2022-01-18T02:34:24.277Z","modified":"2022-04-04T11:37:10.499Z"},"maintainers":[{"name":"adrianetodesign","email":"adrianetodesign@gmail.com"}],"description":"Week 1 Project at Lighthouse Labs","homepage":"https://github.com/adrianetodesign/lotide#readme","repository":{"type":"git","url":"git+https://github.com/adrianetodesign/lotide.git"},"author":{"name":"Adrian To adrianetodesign@gmail.com"},"bugs":{"url":"https://github.com/adrianetodesign/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 Adrian To as part of my learnings at Lighthouse Labs. \n\n## Usage\n\n**Install it:**\n\n`npm install @adrianetodesign/lotide`\n\n**Require it:**\n\n`const _ = require('@adrianetodesign/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(array)`: Returns the head of a given array.\n* `tail(array)`: Returns the tail of a given array.\n* `middle(array)`: Returns the middle value(s) of given arrays with length longer than 2. Otherwise returns an empty string.\n* `eqArrays(array1, array2)`: Returns `true` if both given arrays are strictly equal.\n* `eqObjects(object1, object2)`: Returns `true` both given objects are strictly equal.\n* `assertEqual(variable1, variable2)`: Logs an assertion message if both primitive variables are strictly equal.\n* `assertArraysEqual(array1, array2)`: Logs an assertion message if both arrays are deeply equal.\n* `assertObjectsEqual(object1, object2)`: Logs an assertion message if both objects are deeply equal.\n* `countLetters(string)`: Returns an object that has a count of how many times each letter appears within a string. Does not count spaces. Each letter is represented as a key of the object, with the count as it's value.\n* `countOnly(array, object)`: Counts only items that appear in the given array based on a given object. If any values of keys in the object are false, those items will not be counted. Object must follow format of `{itemName: true, itemName2: false}`.\n* `findKey(object, callback)`: Returns the first key in a given object that fulfills the conditions of the callback function.\n* `letterPositions(string)`: Returns an object with the index for each letter. Each letter is represented as a key of the object, with the indices stored in an array as it's value.\n* `map(array, callback)`: Returns an array with the given callback function applied to each item of the array.\n* `takeUntil(array, callback)`: Returns an array with the given array sliced until the given callback function returns a truthy value.\n* `without(array1, array2)`: Returns the first given array with all values in the second given array removed.","readmeFilename":"readme.md"}