{"_id":"@byjohann/utils","_rev":"16-29597dadffcd5c8927ec57d65b93f82f","name":"@byjohann/utils","dist-tags":{"latest":"0.7.2"},"versions":{"0.1.0":{"name":"@byjohann/utils","version":"0.1.0","author":{"name":"Johann Schopplich","email":"hello@johannschopplich.com"},"license":"MIT","_id":"@byjohann/utils@0.1.0","maintainers":[{"name":"johannschopplich","email":"mail@johannschopplich.com"}],"homepage":"https://github.com/johannschopplich/utils#readme","bugs":{"url":"https://github.com/johannschopplich/utils/issues"},"dist":{"shasum":"56eb177fa75be39d887bb2f160df25993189dcf0","tarball":"https://registry.npmjs.org/@byjohann/utils/-/utils-0.1.0.tgz","fileCount":6,"integrity":"sha512-k+kE18USSvct5tGuG2SYRuecD0XAtpSo8ZfZdFNa1zwr0LU8Q4S+GpcIFRC9Om3zonfoLfumYEL3/tbi0ZJ0fg==","signatures":[{"sig":"MEQCIAsoYwZHEbffwGRNDUIVUIMCptTk/gU/vl94hJdPu30WAiA11J1wFpqxC8FWbJdwLEM1E/zMd8lYuQVx+8d+7hixbA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":7792},"type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"}},"gitHead":"8815c3bfd2b475f688cca3b55854511dd8273c41","scripts":{"lint":"eslint .","build":"unbuild","release":"bumpp","lint:fix":"eslint . --fix","test:types":"tsc --noEmit"},"_npmUser":{"name":"johannschopplich","email":"mail@johannschopplich.com"},"repository":{"url":"git+https://github.com/johannschopplich/utils.git","type":"git"},"_npmVersion":"10.7.0","description":"A collection of utilities for my projects","directories":{},"sideEffects":false,"_nodeVersion":"20.15.0","_hasShrinkwrap":false,"packageManager":"pnpm@9.5.0","devDependencies":{"bumpp":"^9.4.1","eslint":"^9.7.0","unbuild":"^3.0.0-rc.6","typescript":"^5.5.3","@types/node":"^20.14.10","@antfu/eslint-config":"^2.22.3"},"_npmOperationalInternal":{"tmp":"tmp/utils_0.1.0_1721073718990_0.03977187240879165","host":"s3://npm-registry-packages"},"deprecated":"Renamed to \"utilful\". Please update your dependencies."},"0.1.1":{"name":"@byjohann/utils","version":"0.1.1","author":{"name":"Johann Schopplich","email":"hello@johannschopplich.com"},"license":"MIT","_id":"@byjohann/utils@0.1.1","maintainers":[{"name":"johannschopplich","email":"mail@johannschopplich.com"}],"homepage":"https://github.com/johannschopplich/utils#readme","bugs":{"url":"https://github.com/johannschopplich/utils/issues"},"dist":{"shasum":"29fd07c31b4a3fa69566806e10eee045aaa5b1c7","tarball":"https://registry.npmjs.org/@byjohann/utils/-/utils-0.1.1.tgz","fileCount":6,"integrity":"sha512-Lvh/QdRZJwpWsAVIdy8iSuD0P0sZojwx62KuvOrvC2kX0mkUsGUV1SDzFDWTq9IuTtw878ZTTTmlG9ndZ/94wQ==","signatures":[{"sig":"MEUCIQCDncAKx1r+mcHjHlDNMlXejmo+HN5+AzokzqQ6gUblUQIgRwMHnIDHKIhqZBs/kgKlDwi0I2USxGOXfrOvpyakomI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":7834},"type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"}},"gitHead":"301ef325b2d7138003fd3cde21a0f6110b31fb4c","scripts":{"lint":"eslint .","build":"unbuild","release":"bumpp","lint:fix":"eslint . --fix","test:types":"tsc --noEmit"},"_npmUser":{"name":"johannschopplich","email":"mail@johannschopplich.com"},"repository":{"url":"git+https://github.com/johannschopplich/utils.git","type":"git"},"_npmVersion":"10.7.0","description":"A collection of utilities for my projects","directories":{},"sideEffects":false,"_nodeVersion":"20.15.0","_hasShrinkwrap":false,"packageManager":"pnpm@9.5.0","devDependencies":{"bumpp":"^9.4.1","eslint":"^9.7.0","unbuild":"^3.0.0-rc.6","typescript":"^5.5.3","@types/node":"^20.14.10","@antfu/eslint-config":"^2.22.3"},"_npmOperationalInternal":{"tmp":"tmp/utils_0.1.1_1721074011634_0.5663796333699069","host":"s3://npm-registry-packages"},"deprecated":"Renamed to \"utilful\". Please update your dependencies."},"0.1.2":{"name":"@byjohann/utils","version":"0.1.2","author":{"name":"Johann Schopplich","email":"hello@johannschopplich.com"},"license":"MIT","_id":"@byjohann/utils@0.1.2","maintainers":[{"name":"johannschopplich","email":"mail@johannschopplich.com"}],"homepage":"https://github.com/johannschopplich/utils#readme","bugs":{"url":"https://github.com/johannschopplich/utils/issues"},"dist":{"shasum":"b8fa391a6f85a8f383329ee9db80336a6170ee35","tarball":"https://registry.npmjs.org/@byjohann/utils/-/utils-0.1.2.tgz","fileCount":6,"integrity":"sha512-jZ/boE8CkgzCdww/Y26m2QyqqLpbJpm2yqAdFHnqumJCceEMNtwEZo7uThTv5Civmt8Aq9Cvz8T+C4A8X9/Amg==","signatures":[{"sig":"MEQCIAr/dij8NMAkQyzMdzWG10cqZsSo/Xh2OQPGKBLeN5zCAiBgSpiBQGOnTJqReVrJ8JWFQ+3Guk0+hShKMN7iLsUYyA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":8046},"type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"}},"gitHead":"6ee06be1b9e2ed162a82114ec052ed378febf792","scripts":{"lint":"eslint .","build":"unbuild","release":"bumpp","lint:fix":"eslint . --fix","test:types":"tsc --noEmit"},"_npmUser":{"name":"johannschopplich","email":"mail@johannschopplich.com"},"repository":{"url":"git+https://github.com/johannschopplich/utils.git","type":"git"},"_npmVersion":"10.7.0","description":"A collection of utilities for my projects","directories":{},"sideEffects":false,"_nodeVersion":"20.15.0","_hasShrinkwrap":false,"packageManager":"pnpm@9.5.0","devDependencies":{"bumpp":"^9.4.1","eslint":"^9.7.0","unbuild":"^3.0.0-rc.6","typescript":"^5.5.3","@types/node":"^20.14.10","@antfu/eslint-config":"^2.22.3"},"_npmOperationalInternal":{"tmp":"tmp/utils_0.1.2_1721108771007_0.736670900422588","host":"s3://npm-registry-packages"},"deprecated":"Renamed to \"utilful\". Please update your dependencies."},"0.2.0":{"name":"@byjohann/utils","version":"0.2.0","author":{"name":"Johann Schopplich","email":"hello@johannschopplich.com"},"license":"MIT","_id":"@byjohann/utils@0.2.0","maintainers":[{"name":"johannschopplich","email":"mail@johannschopplich.com"}],"homepage":"https://github.com/johannschopplich/utils#readme","bugs":{"url":"https://github.com/johannschopplich/utils/issues"},"dist":{"shasum":"f1253f95a09e7e4fb00cde9f5ce858ed6e9105b9","tarball":"https://registry.npmjs.org/@byjohann/utils/-/utils-0.2.0.tgz","fileCount":6,"integrity":"sha512-UctWOoNBBpWL1wdoDBT01QYFvKS4pTNRaXX6/8wuReXHRYOuXmxVJqpOLWqpZkiv/52kwJ/cA7bVnZOhr4o/tA==","signatures":[{"sig":"MEQCIFrnntYpb7QMDfe4UzpZsv2cEjM9LZeR0S03viUookvgAiBdLw7d6KB19s6Bzl4F/UrD/WFr54pjdmc9Q2Jh84WCwA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":9028},"type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"}},"gitHead":"3844c77054d61ae9bb974cd928cb3b84edcebfa7","scripts":{"lint":"eslint .","build":"unbuild","release":"bumpp","lint:fix":"eslint . --fix","test:types":"tsc --noEmit"},"_npmUser":{"name":"johannschopplich","email":"mail@johannschopplich.com"},"repository":{"url":"git+https://github.com/johannschopplich/utils.git","type":"git"},"_npmVersion":"10.7.0","description":"A collection of utilities for my projects","directories":{},"sideEffects":false,"_nodeVersion":"20.15.0","_hasShrinkwrap":false,"packageManager":"pnpm@9.5.0","devDependencies":{"bumpp":"^9.4.1","eslint":"^9.7.0","unbuild":"^3.0.0-rc.6","typescript":"^5.5.3","@types/node":"^20.14.10","@antfu/eslint-config":"^2.22.3"},"_npmOperationalInternal":{"tmp":"tmp/utils_0.2.0_1721114106363_0.8490926664837992","host":"s3://npm-registry-packages"},"deprecated":"Renamed to \"utilful\". Please update your dependencies."},"0.2.1":{"name":"@byjohann/utils","version":"0.2.1","author":{"name":"Johann Schopplich","email":"hello@johannschopplich.com"},"license":"MIT","_id":"@byjohann/utils@0.2.1","maintainers":[{"name":"johannschopplich","email":"mail@johannschopplich.com"}],"homepage":"https://github.com/johannschopplich/utils#readme","bugs":{"url":"https://github.com/johannschopplich/utils/issues"},"dist":{"shasum":"560da8f77ec79eaae5bfcf6ed43b5e91e23928c7","tarball":"https://registry.npmjs.org/@byjohann/utils/-/utils-0.2.1.tgz","fileCount":6,"integrity":"sha512-B0t3MdCYnz5KxqJ8tZi1Zp/1uBZJk2YQHPBIVwf4lG62rbFHe/SL6g2BJF6CUkKC4roVCBJsTvWhUalZ2BGDrA==","signatures":[{"sig":"MEUCIQDqJrw6qJAUoW6kMqagT8r50BKfU+YzORv53RXRvyEPLgIgeZSt9Q9LqLZg8/O8xBaFXnypF8KP/n3hT9PHGJP0pM4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":9394},"type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"}},"gitHead":"bcc7e5e92479f368e8970d2661d8d1745f950eae","scripts":{"lint":"eslint .","build":"unbuild","release":"bumpp","lint:fix":"eslint . --fix","test:types":"tsc --noEmit"},"_npmUser":{"name":"johannschopplich","email":"mail@johannschopplich.com"},"repository":{"url":"git+https://github.com/johannschopplich/utils.git","type":"git"},"_npmVersion":"10.7.0","description":"A collection of utilities for my projects","directories":{},"sideEffects":false,"_nodeVersion":"20.15.0","_hasShrinkwrap":false,"packageManager":"pnpm@9.5.0","devDependencies":{"bumpp":"^9.4.1","eslint":"^9.7.0","unbuild":"^3.0.0-rc.6","typescript":"^5.5.3","@types/node":"^20.14.10","@antfu/eslint-config":"^2.22.3"},"_npmOperationalInternal":{"tmp":"tmp/utils_0.2.1_1721115135753_0.7937036320732782","host":"s3://npm-registry-packages"},"deprecated":"Renamed to \"utilful\". Please update your dependencies."},"0.3.0":{"name":"@byjohann/utils","version":"0.3.0","author":{"name":"Johann Schopplich","email":"hello@johannschopplich.com"},"license":"MIT","_id":"@byjohann/utils@0.3.0","maintainers":[{"name":"johannschopplich","email":"mail@johannschopplich.com"}],"homepage":"https://github.com/johannschopplich/utils#readme","bugs":{"url":"https://github.com/johannschopplich/utils/issues"},"dist":{"shasum":"a1f151e71d8f45f3fc3db6ebb0c0d06b986b149e","tarball":"https://registry.npmjs.org/@byjohann/utils/-/utils-0.3.0.tgz","fileCount":9,"integrity":"sha512-t+WKqoqFN0TiDkMoOKV1rLD7hvfJhV8fweJ/cs05OF3Rn3VuxPgmBFmbBU6iC1pQKx6LENfnpe0Ubo453sO6XQ==","signatures":[{"sig":"MEYCIQCdGmccV1CQ4LkldNM6F4MSrs3O+6U/f6zOjzzsIJstKQIhALjKDWgNiewcM81R/ODi4sPFCGzb+eykU6NPSKn+JxVA","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":12498},"type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"./path":{"types":"./dist/path/index.d.mts","default":"./dist/path/index.mjs"}},"gitHead":"5eb1e31822147c3bfbb273cfc75d4ed998aac3ac","scripts":{"lint":"eslint .","build":"unbuild","release":"bumpp","lint:fix":"eslint . --fix","test:types":"tsc --noEmit"},"_npmUser":{"name":"johannschopplich","email":"mail@johannschopplich.com"},"repository":{"url":"git+https://github.com/johannschopplich/utils.git","type":"git"},"_npmVersion":"10.7.0","description":"A collection of utilities for my projects","directories":{},"sideEffects":false,"_nodeVersion":"20.15.0","_hasShrinkwrap":false,"packageManager":"pnpm@9.5.0","devDependencies":{"bumpp":"^9.4.1","eslint":"^9.7.0","unbuild":"^3.0.0-rc.6","typescript":"^5.5.3","@types/node":"^20.14.10","@antfu/eslint-config":"^2.22.3"},"_npmOperationalInternal":{"tmp":"tmp/utils_0.3.0_1721117520286_0.5853772876216141","host":"s3://npm-registry-packages"},"deprecated":"Renamed to \"utilful\". Please update your dependencies."},"0.3.1":{"name":"@byjohann/utils","version":"0.3.1","author":{"name":"Johann Schopplich","email":"hello@johannschopplich.com"},"license":"MIT","_id":"@byjohann/utils@0.3.1","maintainers":[{"name":"johannschopplich","email":"mail@johannschopplich.com"}],"homepage":"https://github.com/johannschopplich/utils#readme","bugs":{"url":"https://github.com/johannschopplich/utils/issues"},"dist":{"shasum":"f68d2a9a61a5e8cfec268728c84d55c646bf5f16","tarball":"https://registry.npmjs.org/@byjohann/utils/-/utils-0.3.1.tgz","fileCount":30,"integrity":"sha512-ejxHrxi2aoY/DG66p4M1/lk9L+Z1/ceolSFyuy12pEgwAT+kPh6JgivXhHgraWHo1pV0V6JbPjs8QQCtLvdtsQ==","signatures":[{"sig":"MEUCIQDzuYW8TYxJs4SZY2KUWI5gg+FmLTUD1xs2qnSEhckGyQIgbEH5tOSYSf+Vrjmdbq/i3pTeb2jl1YWM2i2ZjYHXqR8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":15067},"type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"./is":{"types":"./dist/is.d.mts","default":"./dist/is.mjs"},"./csv":{"types":"./dist/csv.d.mts","default":"./dist/csv.mjs"},"./json":{"types":"./dist/json.d.mts","default":"./dist/json.mjs"},"./path":{"types":"./dist/path.d.mts","default":"./dist/path.mjs"},"./array":{"types":"./dist/array.d.mts","default":"./dist/array.mjs"},"./module":{"types":"./dist/module.d.mts","default":"./dist/module.mjs"},"./object":{"types":"./dist/object.d.mts","default":"./dist/object.mjs"},"./string":{"types":"./dist/string.d.mts","default":"./dist/string.mjs"}},"gitHead":"7a75f97b95a852cb456e7396d6c70e976483e320","scripts":{"lint":"eslint .","build":"unbuild","release":"bumpp","lint:fix":"eslint . --fix","test:types":"tsc --noEmit"},"_npmUser":{"name":"johannschopplich","email":"mail@johannschopplich.com"},"repository":{"url":"git+https://github.com/johannschopplich/utils.git","type":"git"},"_npmVersion":"10.7.0","description":"A collection of utilities for my projects","directories":{},"sideEffects":false,"_nodeVersion":"20.15.0","_hasShrinkwrap":false,"packageManager":"pnpm@9.5.0","devDependencies":{"bumpp":"^9.4.1","eslint":"^9.7.0","unbuild":"^3.0.0-rc.6","typescript":"^5.5.3","@types/node":"^20.14.10","@antfu/eslint-config":"^2.22.3"},"_npmOperationalInternal":{"tmp":"tmp/utils_0.3.1_1721123490000_0.09026180043145593","host":"s3://npm-registry-packages"},"deprecated":"Renamed to \"utilful\". Please update your dependencies."},"0.3.2":{"name":"@byjohann/utils","version":"0.3.2","author":{"name":"Johann Schopplich","email":"hello@johannschopplich.com"},"license":"MIT","_id":"@byjohann/utils@0.3.2","maintainers":[{"name":"johannschopplich","email":"mail@johannschopplich.com"}],"homepage":"https://github.com/johannschopplich/utils#readme","bugs":{"url":"https://github.com/johannschopplich/utils/issues"},"dist":{"shasum":"30b1e58422cd1b6995686a698bac7d4aa8ca734b","tarball":"https://registry.npmjs.org/@byjohann/utils/-/utils-0.3.2.tgz","fileCount":30,"integrity":"sha512-co5NoAyPrQgI8UMHZem9ELS+/Y+7HmlxsTUbqWt752N4QEN/DVD2MZ9reuY6Vi3AHGvDos1bwO5RpVDhCoDoAg==","signatures":[{"sig":"MEYCIQC5JtPmdmUHQ9n/4SX/O1iW2g9wPXxfD815w02kAr+cEQIhAJBwnkhVEonGZ1XbJChmJ+XUm76Lf1sGgAl6snWaNjHW","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21325},"type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"./is":{"types":"./dist/is.d.mts","default":"./dist/is.mjs"},"./csv":{"types":"./dist/csv.d.mts","default":"./dist/csv.mjs"},"./json":{"types":"./dist/json.d.mts","default":"./dist/json.mjs"},"./path":{"types":"./dist/path.d.mts","default":"./dist/path.mjs"},"./array":{"types":"./dist/array.d.mts","default":"./dist/array.mjs"},"./module":{"types":"./dist/module.d.mts","default":"./dist/module.mjs"},"./object":{"types":"./dist/object.d.mts","default":"./dist/object.mjs"},"./string":{"types":"./dist/string.d.mts","default":"./dist/string.mjs"}},"gitHead":"7a2577b3bae23479926432ee208f959a545e486c","scripts":{"lint":"eslint .","build":"unbuild","release":"bumpp","lint:fix":"eslint . --fix","test:types":"tsc --noEmit"},"_npmUser":{"name":"johannschopplich","email":"mail@johannschopplich.com"},"repository":{"url":"git+https://github.com/johannschopplich/utils.git","type":"git"},"_npmVersion":"10.7.0","description":"A collection of utilities for my projects","directories":{},"sideEffects":false,"_nodeVersion":"20.15.0","_hasShrinkwrap":false,"packageManager":"pnpm@9.5.0","devDependencies":{"bumpp":"^9.4.1","eslint":"^9.7.0","unbuild":"^3.0.0-rc.6","typescript":"^5.5.3","@types/node":"^20.14.10","@antfu/eslint-config":"^2.22.3"},"_npmOperationalInternal":{"tmp":"tmp/utils_0.3.2_1721132138864_0.249664972012559","host":"s3://npm-registry-packages"},"deprecated":"Renamed to \"utilful\". Please update your dependencies."},"0.4.0":{"name":"@byjohann/utils","version":"0.4.0","author":{"name":"Johann Schopplich","email":"hello@johannschopplich.com"},"license":"MIT","_id":"@byjohann/utils@0.4.0","maintainers":[{"name":"johannschopplich","email":"mail@johannschopplich.com"}],"homepage":"https://github.com/johannschopplich/utils#readme","bugs":{"url":"https://github.com/johannschopplich/utils/issues"},"dist":{"shasum":"c995eaee2abf1c0257bc0e01e0f2d755b4695efd","tarball":"https://registry.npmjs.org/@byjohann/utils/-/utils-0.4.0.tgz","fileCount":30,"integrity":"sha512-avjq7i6V0DOuLaEPqLOT6Oa/avDxsKzrJ4Uu8VSqRLsD9AEaj+qiNcnofLiVgJzncj6Kfa80W3TVqnT5x8rHEA==","signatures":[{"sig":"MEYCIQD3dxXO5Z83tf7V3i+gk6IZvrIiPdkBwJSpP6eSjfdL5QIhANUMlocIdngOs6kAr4tXzRNbrmmLYxY5kVsUcL6OVBSO","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22086},"type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"./is":{"types":"./dist/is.d.mts","default":"./dist/is.mjs"},"./csv":{"types":"./dist/csv.d.mts","default":"./dist/csv.mjs"},"./json":{"types":"./dist/json.d.mts","default":"./dist/json.mjs"},"./path":{"types":"./dist/path.d.mts","default":"./dist/path.mjs"},"./array":{"types":"./dist/array.d.mts","default":"./dist/array.mjs"},"./module":{"types":"./dist/module.d.mts","default":"./dist/module.mjs"},"./object":{"types":"./dist/object.d.mts","default":"./dist/object.mjs"},"./string":{"types":"./dist/string.d.mts","default":"./dist/string.mjs"}},"gitHead":"fdd89161f166400e31752659d352f9c143e234a0","scripts":{"lint":"eslint .","build":"unbuild","release":"bumpp","lint:fix":"eslint . --fix","test:types":"tsc --noEmit"},"_npmUser":{"name":"johannschopplich","email":"mail@johannschopplich.com"},"repository":{"url":"git+https://github.com/johannschopplich/utils.git","type":"git"},"_npmVersion":"10.7.0","description":"A collection of utilities for my projects","directories":{},"sideEffects":false,"_nodeVersion":"20.15.0","_hasShrinkwrap":false,"packageManager":"pnpm@9.5.0","devDependencies":{"bumpp":"^9.4.1","eslint":"^9.7.0","unbuild":"^3.0.0-rc.6","typescript":"^5.5.3","@types/node":"^20.14.10","@antfu/eslint-config":"^2.22.3"},"_npmOperationalInternal":{"tmp":"tmp/utils_0.4.0_1721145819803_0.932146208060388","host":"s3://npm-registry-packages"},"deprecated":"Renamed to \"utilful\". Please update your dependencies."},"0.4.1":{"name":"@byjohann/utils","version":"0.4.1","author":{"name":"Johann Schopplich","email":"hello@johannschopplich.com"},"license":"MIT","_id":"@byjohann/utils@0.4.1","maintainers":[{"name":"johannschopplich","email":"mail@johannschopplich.com"}],"homepage":"https://github.com/johannschopplich/utils#readme","bugs":{"url":"https://github.com/johannschopplich/utils/issues"},"dist":{"shasum":"cc20b30e7329b0de5617d69ec941c410a7b3e718","tarball":"https://registry.npmjs.org/@byjohann/utils/-/utils-0.4.1.tgz","fileCount":33,"integrity":"sha512-xEwhO4TFbk9TX1uASoA+a6jNHdl5pCnyjgjENO6B4B54mD8WTk0wGTC9pKseIajSuNEnWWVew8ZfEac3pI01uA==","signatures":[{"sig":"MEYCIQDz5ax8pqKqlJNDPftt1LTrswjnBRGLSTHWoche4vrL0AIhAN4vS3MBattswZ3gq4tFu+Q5VanYaw9wdG57eKxGkzRo","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22967},"type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"./is":{"types":"./dist/is.d.mts","default":"./dist/is.mjs"},"./csv":{"types":"./dist/csv.d.mts","default":"./dist/csv.mjs"},"./json":{"types":"./dist/json.d.mts","default":"./dist/json.mjs"},"./path":{"types":"./dist/path.d.mts","default":"./dist/path.mjs"},"./array":{"types":"./dist/array.d.mts","default":"./dist/array.mjs"},"./types":{"types":"./dist/types.d.mts","default":"./dist/types.mjs"},"./module":{"types":"./dist/module.d.mts","default":"./dist/module.mjs"},"./object":{"types":"./dist/object.d.mts","default":"./dist/object.mjs"},"./string":{"types":"./dist/string.d.mts","default":"./dist/string.mjs"}},"gitHead":"935ad8e19f4e3f79f627463a2e7cb3abfd857983","scripts":{"lint":"eslint .","build":"unbuild","release":"bumpp","lint:fix":"eslint . --fix","test:types":"tsc --noEmit"},"_npmUser":{"name":"johannschopplich","email":"mail@johannschopplich.com"},"repository":{"url":"git+https://github.com/johannschopplich/utils.git","type":"git"},"_npmVersion":"10.8.1","description":"A collection of utilities for my projects","directories":{},"sideEffects":false,"_nodeVersion":"20.16.0","_hasShrinkwrap":false,"packageManager":"pnpm@9.7.1","devDependencies":{"bumpp":"^9.5.1","eslint":"^9.9.0","unbuild":"^3.0.0-rc.7","typescript":"^5.5.4","@types/node":"^20.14.15","@antfu/eslint-config":"^2.25.1"},"_npmOperationalInternal":{"tmp":"tmp/utils_0.4.1_1723709791754_0.5214583974565112","host":"s3://npm-registry-packages"},"deprecated":"Renamed to \"utilful\". Please update your dependencies."},"0.5.2":{"name":"@byjohann/utils","version":"0.5.2","author":{"name":"Johann Schopplich","email":"hello@johannschopplich.com"},"license":"MIT","_id":"@byjohann/utils@0.5.2","maintainers":[{"name":"johannschopplich","email":"mail@johannschopplich.com"}],"homepage":"https://github.com/johannschopplich/utils#readme","bugs":{"url":"https://github.com/johannschopplich/utils/issues"},"dist":{"shasum":"1ea5eecf1e602395d923a34e445186c1ec414304","tarball":"https://registry.npmjs.org/@byjohann/utils/-/utils-0.5.2.tgz","fileCount":36,"integrity":"sha512-LvIFSpEx42MyYoYyGOxVhgYsS43vkb+7z3zASYEpIT/pSPWjqDvOESseLLh0MJtphUKq3i5SfR7c7zEAPl1xbw==","signatures":[{"sig":"MEQCIHuvjgnl1uHuu7OujvZI0BHXnE8tKpFVmrDdDBQhTfjdAiBUqUS+UPs/z1pkn1s79mZG5z01/EUh+d/zKXd3kxxuLA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26325},"type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"./is":{"types":"./dist/is.d.mts","default":"./dist/is.mjs"},"./csv":{"types":"./dist/csv.d.mts","default":"./dist/csv.mjs"},"./json":{"types":"./dist/json.d.mts","default":"./dist/json.mjs"},"./path":{"types":"./dist/path.d.mts","default":"./dist/path.mjs"},"./array":{"types":"./dist/array.d.mts","default":"./dist/array.mjs"},"./types":{"types":"./dist/types.d.mts","default":"./dist/types.mjs"},"./module":{"types":"./dist/module.d.mts","default":"./dist/module.mjs"},"./object":{"types":"./dist/object.d.mts","default":"./dist/object.mjs"},"./result":{"types":"./dist/result.d.mts","default":"./dist/result.mjs"},"./string":{"types":"./dist/string.d.mts","default":"./dist/string.mjs"}},"gitHead":"0f45afe3280e45287da2c8c115e65e9f99315d4a","scripts":{"lint":"eslint .","build":"unbuild","release":"bumpp","lint:fix":"eslint . --fix","test:types":"tsc --noEmit"},"_npmUser":{"name":"johannschopplich","email":"mail@johannschopplich.com"},"repository":{"url":"git+https://github.com/johannschopplich/utils.git","type":"git"},"_npmVersion":"10.8.1","description":"A collection of utilities for my projects","directories":{},"sideEffects":false,"_nodeVersion":"20.16.0","_hasShrinkwrap":false,"packageManager":"pnpm@9.7.1","devDependencies":{"bumpp":"^9.5.1","eslint":"^9.9.0","unbuild":"^3.0.0-rc.7","typescript":"^5.5.4","@types/node":"^20.14.15","@antfu/eslint-config":"^2.25.1"},"_npmOperationalInternal":{"tmp":"tmp/utils_0.5.2_1724135064241_0.5070928531277006","host":"s3://npm-registry-packages"},"deprecated":"Renamed to \"utilful\". Please update your dependencies."},"0.6.0":{"name":"@byjohann/utils","version":"0.6.0","author":{"name":"Johann Schopplich","email":"hello@johannschopplich.com"},"license":"MIT","_id":"@byjohann/utils@0.6.0","maintainers":[{"name":"johannschopplich","email":"mail@johannschopplich.com"}],"homepage":"https://github.com/johannschopplich/utils#readme","bugs":{"url":"https://github.com/johannschopplich/utils/issues"},"dist":{"shasum":"a341a332945f2fdffb0ca4011ef74e30655d2b78","tarball":"https://registry.npmjs.org/@byjohann/utils/-/utils-0.6.0.tgz","fileCount":33,"integrity":"sha512-0wSIJKmIbfveuaiiqfV3oCVXtcBhS2VedIgetsECo9YfyP4EtEJ2cT556wCwDsc7yHZYRnLpNVkGZhnRv+O9OA==","signatures":[{"sig":"MEUCIBIay1CVaWmDEjviV3ubkE3HA2acnHMnt/VUQicu3pzJAiEA5vQvtKQ8LTCBMlTh1vRW1v/a6Ai3PAkGe5HRhNLQ0bQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22967},"type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"./is":{"types":"./dist/is.d.mts","default":"./dist/is.mjs"},"./csv":{"types":"./dist/csv.d.mts","default":"./dist/csv.mjs"},"./json":{"types":"./dist/json.d.mts","default":"./dist/json.mjs"},"./path":{"types":"./dist/path.d.mts","default":"./dist/path.mjs"},"./array":{"types":"./dist/array.d.mts","default":"./dist/array.mjs"},"./types":{"types":"./dist/types.d.mts","default":"./dist/types.mjs"},"./module":{"types":"./dist/module.d.mts","default":"./dist/module.mjs"},"./object":{"types":"./dist/object.d.mts","default":"./dist/object.mjs"},"./string":{"types":"./dist/string.d.mts","default":"./dist/string.mjs"}},"gitHead":"08b2a29d89b7cb9dd3b7420f7fe6826d664c175a","scripts":{"lint":"eslint .","build":"unbuild","release":"bumpp","lint:fix":"eslint . --fix","test:types":"tsc --noEmit"},"_npmUser":{"name":"johannschopplich","email":"mail@johannschopplich.com"},"repository":{"url":"git+https://github.com/johannschopplich/utils.git","type":"git"},"_npmVersion":"10.8.1","description":"A collection of utilities for my projects","directories":{},"sideEffects":false,"_nodeVersion":"20.16.0","_hasShrinkwrap":false,"packageManager":"pnpm@9.7.1","devDependencies":{"bumpp":"^9.5.1","eslint":"^9.9.0","unbuild":"^3.0.0-rc.7","typescript":"^5.5.4","@types/node":"^20.14.15","@antfu/eslint-config":"^2.25.1"},"_npmOperationalInternal":{"tmp":"tmp/utils_0.6.0_1724159735983_0.24669143448562525","host":"s3://npm-registry-packages"},"deprecated":"Renamed to \"utilful\". Please update your dependencies."},"0.6.1":{"name":"@byjohann/utils","version":"0.6.1","author":{"name":"Johann Schopplich","email":"hello@johannschopplich.com"},"license":"MIT","_id":"@byjohann/utils@0.6.1","maintainers":[{"name":"johannschopplich","email":"mail@johannschopplich.com"}],"homepage":"https://github.com/johannschopplich/utils#readme","bugs":{"url":"https://github.com/johannschopplich/utils/issues"},"dist":{"shasum":"b5d34fb8418e825f3f049c0f434da5632bc9b70c","tarball":"https://registry.npmjs.org/@byjohann/utils/-/utils-0.6.1.tgz","fileCount":33,"integrity":"sha512-PqteSe7DbpUTeP8ikkTmwiKblL/IHivD4Avv7T+RNIMWWpU2F4PCT6LRzl2snXjq/pZyw87OHcHeodueMJfHLg==","signatures":[{"sig":"MEQCIAEUKLVITUf02nNOqum6iiD6aGMbhioWAkN6KL8ZOO8fAiBTi/Nim4tsY2zUbhrngsEK+2Uy8BX4WJLa1v4byF0z/A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":23659},"type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"./is":{"types":"./dist/is.d.mts","default":"./dist/is.mjs"},"./csv":{"types":"./dist/csv.d.mts","default":"./dist/csv.mjs"},"./json":{"types":"./dist/json.d.mts","default":"./dist/json.mjs"},"./path":{"types":"./dist/path.d.mts","default":"./dist/path.mjs"},"./array":{"types":"./dist/array.d.mts","default":"./dist/array.mjs"},"./types":{"types":"./dist/types.d.mts","default":"./dist/types.mjs"},"./module":{"types":"./dist/module.d.mts","default":"./dist/module.mjs"},"./object":{"types":"./dist/object.d.mts","default":"./dist/object.mjs"},"./string":{"types":"./dist/string.d.mts","default":"./dist/string.mjs"}},"gitHead":"76b8e3a8f9bdf8235339a3013decc695344ff9b4","scripts":{"lint":"eslint .","build":"unbuild","release":"bumpp","lint:fix":"eslint . --fix","test:types":"tsc --noEmit"},"_npmUser":{"name":"johannschopplich","email":"mail@johannschopplich.com"},"repository":{"url":"git+https://github.com/johannschopplich/utils.git","type":"git"},"_npmVersion":"10.8.1","description":"A collection of utilities for my projects","directories":{},"sideEffects":false,"_nodeVersion":"20.16.0","_hasShrinkwrap":false,"packageManager":"pnpm@9.7.1","devDependencies":{"bumpp":"^9.5.1","eslint":"^9.9.0","unbuild":"^3.0.0-rc.7","typescript":"^5.5.4","@types/node":"^20.14.15","@antfu/eslint-config":"^2.25.1"},"_npmOperationalInternal":{"tmp":"tmp/utils_0.6.1_1724593491669_0.666417532463246","host":"s3://npm-registry-packages"},"deprecated":"Renamed to \"utilful\". Please update your dependencies."},"0.7.0":{"name":"@byjohann/utils","version":"0.7.0","author":{"name":"Johann Schopplich","email":"hello@johannschopplich.com"},"license":"MIT","_id":"@byjohann/utils@0.7.0","maintainers":[{"name":"johannschopplich","email":"mail@johannschopplich.com"}],"homepage":"https://github.com/johannschopplich/utils#readme","bugs":{"url":"https://github.com/johannschopplich/utils/issues"},"dist":{"shasum":"1d6cc3ccc938b5d1613a5c27c367376f179c71c0","tarball":"https://registry.npmjs.org/@byjohann/utils/-/utils-0.7.0.tgz","fileCount":33,"integrity":"sha512-We3MGz5pvAY29fWiwu2YzllBba+CeDOSTL48M+mkzsYJ2p99LliKjXtQkvc+7kaKyOBXH1P+zIMKLh5JK1zCUQ==","signatures":[{"sig":"MEUCIA666QY25BCLdYL0u4M/F3L30K/vhmf8/WhdLnj4Lr0FAiEA17BOHfh7VKSPvUTzI/tT0ieBjsQpQzkirmyZqOOkeLw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":28868},"type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"./is":{"types":"./dist/is.d.mts","default":"./dist/is.mjs"},"./csv":{"types":"./dist/csv.d.mts","default":"./dist/csv.mjs"},"./json":{"types":"./dist/json.d.mts","default":"./dist/json.mjs"},"./path":{"types":"./dist/path.d.mts","default":"./dist/path.mjs"},"./array":{"types":"./dist/array.d.mts","default":"./dist/array.mjs"},"./types":{"types":"./dist/types.d.mts","default":"./dist/types.mjs"},"./module":{"types":"./dist/module.d.mts","default":"./dist/module.mjs"},"./object":{"types":"./dist/object.d.mts","default":"./dist/object.mjs"},"./string":{"types":"./dist/string.d.mts","default":"./dist/string.mjs"}},"gitHead":"8da2e88f8da95e0bbf1ffbff3526ab76fc4ff495","scripts":{"lint":"eslint .","test":"vitest","build":"unbuild","release":"bumpp","lint:fix":"eslint . --fix","test:types":"tsc --noEmit"},"_npmUser":{"name":"johannschopplich","email":"mail@johannschopplich.com"},"repository":{"url":"git+https://github.com/johannschopplich/utils.git","type":"git"},"_npmVersion":"10.8.2","description":"A collection of utilities for my projects","directories":{},"sideEffects":false,"_nodeVersion":"20.17.0","_hasShrinkwrap":false,"packageManager":"pnpm@9.11.0","devDependencies":{"bumpp":"^9.5.2","eslint":"^9.11.1","vitest":"^2.1.1","unbuild":"^3.0.0-rc.7","typescript":"^5.5.4","@types/node":"^20.16.7","@antfu/eslint-config":"^3.7.1"},"_npmOperationalInternal":{"tmp":"tmp/utils_0.7.0_1727252284687_0.9552905400656975","host":"s3://npm-registry-packages"},"deprecated":"Renamed to \"utilful\". Please update your dependencies."},"0.7.1":{"name":"@byjohann/utils","version":"0.7.1","author":{"name":"Johann Schopplich","email":"hello@johannschopplich.com"},"license":"MIT","_id":"@byjohann/utils@0.7.1","maintainers":[{"name":"johannschopplich","email":"mail@johannschopplich.com"}],"homepage":"https://github.com/johannschopplich/utils#readme","bugs":{"url":"https://github.com/johannschopplich/utils/issues"},"dist":{"shasum":"839b6b61db99dae0a4a10205bb917b8695392779","tarball":"https://registry.npmjs.org/@byjohann/utils/-/utils-0.7.1.tgz","fileCount":33,"integrity":"sha512-H8vxo4B6B8rPDKrWbVU8gYsujYKS90267ePcOX1UZOudRtgq4jsw8Gvi1gly0eOj/cfvuyrQ/2z5DMA+FyrRbw==","signatures":[{"sig":"MEUCIQCona5VjrCaB7/Q7ecvQ7CWr6Ivl5sMW/BHc75zTJsCsAIgahwbQxTbds7ZUGVlKzTDWkAjeYrbuFtFDYSme+QoGNw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":29843},"type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"./is":{"types":"./dist/is.d.mts","default":"./dist/is.mjs"},"./csv":{"types":"./dist/csv.d.mts","default":"./dist/csv.mjs"},"./json":{"types":"./dist/json.d.mts","default":"./dist/json.mjs"},"./path":{"types":"./dist/path.d.mts","default":"./dist/path.mjs"},"./array":{"types":"./dist/array.d.mts","default":"./dist/array.mjs"},"./types":{"types":"./dist/types.d.mts","default":"./dist/types.mjs"},"./module":{"types":"./dist/module.d.mts","default":"./dist/module.mjs"},"./object":{"types":"./dist/object.d.mts","default":"./dist/object.mjs"},"./string":{"types":"./dist/string.d.mts","default":"./dist/string.mjs"}},"gitHead":"f47e97f6b1cb97443a8c9718f3807497fa59ce2a","scripts":{"lint":"eslint .","test":"vitest","build":"unbuild","release":"bumpp","lint:fix":"eslint . --fix","test:types":"tsc --noEmit"},"_npmUser":{"name":"johannschopplich","email":"mail@johannschopplich.com"},"repository":{"url":"git+https://github.com/johannschopplich/utils.git","type":"git"},"_npmVersion":"10.8.2","description":"A collection of utilities for my projects","directories":{},"sideEffects":false,"_nodeVersion":"20.17.0","_hasShrinkwrap":false,"packageManager":"pnpm@9.11.0","devDependencies":{"bumpp":"^9.5.2","eslint":"^9.11.1","vitest":"^2.1.1","unbuild":"^3.0.0-rc.7","typescript":"^5.5.4","@types/node":"^20.16.7","@antfu/eslint-config":"^3.7.1"},"_npmOperationalInternal":{"tmp":"tmp/utils_0.7.1_1727256423486_0.5776937348584013","host":"s3://npm-registry-packages"},"deprecated":"Renamed to \"utilful\". Please update your dependencies."},"0.7.2":{"name":"@byjohann/utils","version":"0.7.2","author":{"name":"Johann Schopplich","email":"hello@johannschopplich.com"},"license":"MIT","_id":"@byjohann/utils@0.7.2","maintainers":[{"name":"johannschopplich","email":"mail@johannschopplich.com"}],"homepage":"https://github.com/johannschopplich/utils#readme","bugs":{"url":"https://github.com/johannschopplich/utils/issues"},"dist":{"shasum":"094dd31c82b6be592111a4d8806339aeaede409e","tarball":"https://registry.npmjs.org/@byjohann/utils/-/utils-0.7.2.tgz","fileCount":36,"integrity":"sha512-mvksJSrbX+XUmqXaovNm+wQMtGzqzS54CRlIQUKbSrhtZqQOqTw0SOqRMcDNydXuqLeWHqRrID5U+kv5Lsytyw==","signatures":[{"sig":"MEUCIQDaLTbk7LsGmfSOQyGXUnODGKkO8EB6hi3LFs+l/LimOQIgWXmV4PmxbiXv8fpq+jnMutUzMnE3HPGnb2rq3xiXwBo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":33711},"type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"./is":{"types":"./dist/is.d.mts","default":"./dist/is.mjs"},"./csv":{"types":"./dist/csv.d.mts","default":"./dist/csv.mjs"},"./json":{"types":"./dist/json.d.mts","default":"./dist/json.mjs"},"./lazy":{"types":"./dist/lazy.d.mts","default":"./dist/lazy.mjs"},"./path":{"types":"./dist/path.d.mts","default":"./dist/path.mjs"},"./array":{"types":"./dist/array.d.mts","default":"./dist/array.mjs"},"./types":{"types":"./dist/types.d.mts","default":"./dist/types.mjs"},"./module":{"types":"./dist/module.d.mts","default":"./dist/module.mjs"},"./object":{"types":"./dist/object.d.mts","default":"./dist/object.mjs"},"./string":{"types":"./dist/string.d.mts","default":"./dist/string.mjs"}},"gitHead":"a69cd775c3ad35c50f0c109a64fa66ef65a50090","scripts":{"lint":"eslint .","test":"vitest","build":"unbuild","release":"bumpp","lint:fix":"eslint . --fix","test:types":"tsc --noEmit"},"_npmUser":{"name":"johannschopplich","email":"mail@johannschopplich.com"},"repository":{"url":"git+https://github.com/johannschopplich/utils.git","type":"git"},"_npmVersion":"10.8.2","description":"A collection of utilities for my projects","directories":{},"sideEffects":false,"_nodeVersion":"20.18.1","_hasShrinkwrap":false,"packageManager":"pnpm@9.15.2","devDependencies":{"bumpp":"^9.9.2","eslint":"^9.17.0","vitest":"^2.1.8","unbuild":"^3.2.0","typescript":"^5.7.2","@types/node":"^22.10.2","@antfu/eslint-config":"^3.12.1"},"_npmOperationalInternal":{"tmp":"tmp/utils_0.7.2_1736102145104_0.9609246547792536","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to \"utilful\". Please update your dependencies."}},"time":{"created":"2024-07-15T20:01:58.895Z","modified":"2025-02-28T06:53:40.239Z","0.1.0":"2024-07-15T20:01:59.189Z","0.1.1":"2024-07-15T20:06:51.802Z","0.1.2":"2024-07-16T05:46:11.179Z","0.2.0":"2024-07-16T07:15:06.510Z","0.2.1":"2024-07-16T07:32:15.916Z","0.3.0":"2024-07-16T08:12:00.478Z","0.3.1":"2024-07-16T09:51:30.145Z","0.3.2":"2024-07-16T12:15:39.030Z","0.4.0":"2024-07-16T16:03:39.977Z","0.4.1":"2024-08-15T08:16:31.884Z","0.5.2":"2024-08-20T06:24:24.400Z","0.6.0":"2024-08-20T13:15:36.144Z","0.6.1":"2024-08-25T13:44:51.824Z","0.7.0":"2024-09-25T08:18:04.872Z","0.7.1":"2024-09-25T09:27:03.704Z","0.7.2":"2025-01-05T18:35:45.303Z"},"bugs":{"url":"https://github.com/johannschopplich/utils/issues"},"author":{"name":"Johann Schopplich","email":"hello@johannschopplich.com"},"license":"MIT","homepage":"https://github.com/johannschopplich/utils#readme","repository":{"url":"git+https://github.com/johannschopplich/utils.git","type":"git"},"description":"A collection of utilities for my projects","maintainers":[{"name":"johannschopplich","email":"mail@johannschopplich.com"}],"readme":"# @byjohann/utils\n\nA collection of utility functions that I use across my JavaScript and TypeScript projects.\n\n## Installation\n\nRun the following command to add `@byjohann/utils` to your project.\n\n```bash\n# npm\nnpm install -D @byjohann/utils\n\n# pnpm\npnpm add -D @byjohann/utils\n\n# yarn\nyarn add -D @byjohann/utils\n```\n\n## API\n\n### Array\n\n#### `toArray`\n\nConverts `MaybeArray<T>` to `Array<T>`.\n\n```ts\ntype MaybeArray<T> = T | T[]\n\ndeclare function toArray<T>(array?: MaybeArray<T> | null | undefined): T[]\n```\n\n### CSV\n\n#### `createCSV`\n\nConverts an array of objects to a comma-separated values (CSV) string that contains only the `columns` specified.\n\n```ts\ndeclare function createCSV<T extends Record<string, unknown>>(\n  data: T[],\n  columns: (keyof T)[],\n  options?: {\n    /** @default ',' */\n    delimiter?: string\n    /** @default true */\n    includeHeaders?: boolean\n    /** @default false */\n    quoteAll?: boolean\n  }\n): string\n```\n\n#### `parseCSV`\n\nParses a comma-separated values (CSV) string into an array of objects.\n\n> [!NOTE]\n> The first row of the CSV string is used as the header row.\n\n```ts\ntype CSVRow<T extends string = string> = Record<T, string>\n\ndeclare function parseCSV<Header extends string>(csv: string): CSVRow<Header>[]\n```\n\n#### `escapeCSVValue`\n\nEscapes a value for a CSV string.\n\n> [!NOTE]\n> Returns an empty string if the value is `null` or `undefined`.\n\n```ts\ndeclare function escapeCSVValue(value: unknown, { delimiter, quoteAll, }?: {\n  /** @default ',' */\n  delimiter?: string\n  /** @default false */\n  quoteAll?: boolean\n}): string\n```\n\n### JSON\n\n#### `tryParseJSON`\n\nType-safe wrapper around `JSON.stringify` falling back to the original value if it is not a string or an error is thrown.\n\n```ts\ndeclare function tryParseJSON<T = unknown>(value: unknown): T\n```\n\n#### `cloneJSON`\n\nClones the given JSON value.\n\n> [!NOTE]\n> The value must not contain circular references as JSON does not support them. It also must contain JSON serializable values.\n\n```ts\ndeclare function cloneJSON<T>(value: T): T\n```\n\n### Lazy\n\nA simple general purpose memoizer utility.\n\n- Lazily computes a value when accessed\n- Auto-caches the result by overwriting the getter\n- Typesafe\n\nUseful for deferring initialization or expensive operations. Unlike a simple getter, there is no runtime overhead after the first invokation, since the getter itself is overwritten with the memoized value.\n\n```ts\ndeclare function lazy<T>(getter: () => T): { value: T }\n```\n\n**Example:**\n\n```ts\nconst myValue = lazy(() => 'Hello, World!')\nconsole.log(myValue.value) // Computes value, overwrites getter\nconsole.log(myValue.value) // Returns cached value\nconsole.log(myValue.value) // Returns cached value\n```\n\n### Module\n\n#### `interopDefault`\n\nInterop helper for default exports.\n\n```ts\ndeclare function interopDefault<T>(m: T | Promise<T>): Promise<T extends {\n  default: infer U\n} ? U : T>\n```\n\n**Example:**\n\n```ts\nimport { interopDefault } from '@byjohann/utils'\n\nasync function loadModule() {\n  const mod = await interopDefault(import('./module.js'))\n}\n```\n\n### Object\n\n#### `objectKeys`\n\nStrictly typed `Object.keys`.\n\n```ts\ndeclare function objectKeys<T extends Record<any, any>>(obj: T): Array<`${keyof T & (string | number | boolean | null | undefined)}`>\n```\n\n#### `objectEntries`\n\nStrictly typed `Object.entries`.\n\n```ts\ndeclare function objectEntries<T extends Record<any, any>>(obj: T): Array<[keyof T, T[keyof T]]>\n```\n\n#### `deepApply`\n\nDeeply applies a callback to every key-value pair in the given object, as well as nested objects and arrays.\n\n```ts\ndeclare function deepApply<T extends Record<any, any>>(data: T, callback: (item: T, key: keyof T, value: T[keyof T]) => void): void\n```\n\n### Path\n\n#### `withoutLeadingSlash`\n\nRemoves the leading slash from the given path if it has one.\n\n```ts\ndeclare function withoutLeadingSlash(path?: string): string\n```\n\n#### `withLeadingSlash`\n\nAdds a leading slash to the given path if it does not already have one.\n\n```ts\ndeclare function withLeadingSlash(path?: string): string\n```\n\n#### `withoutTrailingSlash`\n\nRemoves the trailing slash from the given path if it has one.\n\n```ts\ndeclare function withoutTrailingSlash(path?: string): string\n```\n\n#### `withTrailingSlash`\n\nAdds a trailing slash to the given path if it does not already have one.\n\n```ts\ndeclare function withTrailingSlash(path?: string): string\n```\n\n#### `joinURL`\n\nJoins the given base URL and path, ensuring that there is only one slash between them.\n\n```ts\ndeclare function joinURL(base?: string, path?: string): string\n```\n\n#### `withBase`\n\nAdds the base path to the input path, if it is not already present.\n\n```ts\ndeclare function withBase(input?: string, base?: string): string\n```\n\n#### `withoutBase`\n\nRemoves the base path from the input path, if it is present.\n\n```ts\ndeclare function withoutBase(input?: string, base?: string): string\n```\n\n#### `getPathname`\n\nReturns the pathname of the given path, which is the path without the query string.\n\n```ts\ndeclare function getPathname(path?: string): string\n```\n\n#### `withQuery`\n\nReturns the URL with the given query parameters. If a query parameter is undefined, it is omitted.\n\n```ts\ndeclare function withQuery(input: string, query?: QueryObject): string\n```\n\n**Example:**\n\n```ts\nimport { withQuery } from '@byjohann/utils'\n\nconst url = withQuery('https://example.com', {\n  foo: 'bar',\n  // This key is omitted\n  baz: undefined,\n  // Object values are stringified\n  baz: { qux: 'quux' }\n})\n```\n\n### String\n\n#### `template`\n\nSimple template engine to replace variables in a string.\n\n```ts\ndeclare function template(str: string, variables: Record<string | number, any>, fallback?: string | ((key: string) => string)): string\n```\n\n**Example:**\n\n```ts\nimport { template } from '@byjohann/utils'\n\nconst str = 'Hello, {name}!'\nconst variables = { name: 'world' }\n\nconsole.log(template(str, variables)) // Hello, world!\n```\n\n#### `generateRandomId`\n\nGenerates a random string. The function is ported from [`nanoid`](https://github.com/ai/nanoid). You can specify the size of the string and the dictionary of characters to use.\n\n```ts\ndeclare function generateRandomId(size?: number, dict?: string): string\n```\n\n#### `unindent`\n\nRemoves common leading whitespace from a template string while also removing empty lines at the beginning and end.\n\n```ts\ndeclare function unindent(str: TemplateStringsArray | string): string\n```\n\n#### `stripIndents`\n\nRemoves common leading whitespace from a template string.\n\n```ts\nstripIndents`\n  Hello\n    World\n` // => \"Hello\\nWorld\"\n\nstripIndents('  Hello\\n    World') // => \"Hello\\nWorld\"\n```\n\n## License\n\n[MIT](./LICENSE) License © 2024-PRESENT [Johann Schopplich](https://github.com/johannschopplich)\n","readmeFilename":"README.md"}