{"_id":"1o1-utils","_rev":"11-ea9bbb3bc247c2a839a2b2abf26b15cc","name":"1o1-utils","dist-tags":{"latest":"1.10.1"},"versions":{"1.0.1":{"name":"1o1-utils","version":"1.0.1","keywords":["utils","functions","javascript","typescript"],"author":{"name":"Pedro Troccoli"},"license":"ISC","_id":"1o1-utils@1.0.1","maintainers":[{"name":"pedrotroccoli","email":"pedroaugustobelzkai@gmail.com"}],"homepage":"https://github.com/pedrotroccoli/better-utils#readme","bugs":{"url":"https://github.com/pedrotroccoli/better-utils/issues"},"dist":{"shasum":"2cbe8ae2145732a5a5056e729372be8e6cfc4735","tarball":"https://registry.npmjs.org/1o1-utils/-/1o1-utils-1.0.1.tgz","fileCount":4,"integrity":"sha512-yFPjOT1wROWgHdUg/SKBnz/F3lmp0ziIcG3WGdlRrwDMUabE0iYoucB0s/mugkyMmdhk4sxr/U49YXwT1DHpYQ==","signatures":[{"sig":"MEYCIQCCLdhpgyepoWXs7nM0AYKju6G3QapeleyhWEYYrOmzuQIhALfTa8NtnVv1btuhMAI2j4s62FiptLH/UqrgjMXC2RjF","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1962},"main":"src/index.js","type":"commonjs","gitHead":"b55c58fe4202846f6f08018c291b55d8d253cde5","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"pedrotroccoli","actor":{"name":"pedrotroccoli","type":"user","email":"pedroaugustobelzkai@gmail.com"},"email":"pedroaugustobelzkai@gmail.com"},"repository":{"url":"git+https://github.com/pedrotroccoli/better-utils.git","type":"git"},"_npmVersion":"11.4.2","description":"A library of common utilities used across many javascript & typescript applications.","directories":{},"_nodeVersion":"24.3.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/1o1-utils_1.0.1_1751193071179_0.14442163010642117","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"1o1-utils","version":"1.1.0","_id":"1o1-utils@1.1.0","maintainers":[{"name":"pedrotroccoli","email":"pedroaugustobelzkai@gmail.com"}],"dist":{"shasum":"57b4f19b0df98ae95ac693bf33fae28956849da3","tarball":"https://registry.npmjs.org/1o1-utils/-/1o1-utils-1.1.0.tgz","fileCount":21,"integrity":"sha512-tNcqablLWsBsh5GBihJYk+1a+/HMkokiEg1wtm36oWNdKARsNjBrQfaX/ZxW4+iJi6ehB5ZV/jUk5H6v3dtJPQ==","signatures":[{"sig":"MEUCIGStkqdpqNWmQOWs/3jsdMelWtK1sgW+B5dglmPNDxzXAiEA1eCCDXUwXt78xC1kYGAOmWXPrZh1/XJfUcc41kXiZwo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11637},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"eefa6422e853d05af61192007ad31a2d368cf2ef","scripts":{"dev":"tsx watch src/index.ts","test":"mocha","build":"tsc"},"_npmUser":{"name":"pedrotroccoli","email":"pedroaugustobelzkai@gmail.com"},"_npmVersion":"11.4.2","description":"A collection of utility functions for TypeScript & Javascript","directories":{},"_nodeVersion":"24.3.0","dependencies":{"chai":"^5.3.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.4","mocha":"^11.7.1","ts-node":"^10.9.2","typescript":"^5.9.2","@types/chai":"^5.2.2","@types/mocha":"^10.0.10"},"_npmOperationalInternal":{"tmp":"tmp/1o1-utils_1.1.0_1755781801398_0.746746255313272","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"1o1-utils","version":"1.4.0","_id":"1o1-utils@1.4.0","maintainers":[{"name":"pedrotroccoli","email":"pedroaugustobelzkai@gmail.com"}],"dist":{"shasum":"b2bab7707216cc3a34981d78357fbf78922994dd","tarball":"https://registry.npmjs.org/1o1-utils/-/1o1-utils-1.4.0.tgz","fileCount":3,"integrity":"sha512-80YB1qLyyD2Z9a29QMKWlkCg3KEgwoPNOqS7Ww+YagVLfkcwN10sF8uATPnsqqVAQx22qhehKgNlHIhSaKJ5Kw==","signatures":[{"sig":"MEUCIHW7CDCYfdvD8xaEH5NBKy4mWczgZrrhtqiY6Gur41/LAiEAu0UL6eQ3lq72G690wmIwuvUiUKZqYYgUTqDorHmREA4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8291},"type":"module","types":"dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./omit":{"types":"./dist/objects/omit/index.d.ts","import":"./dist/objects/omit/index.js"},"./pick":{"types":"./dist/objects/pick/index.d.ts","import":"./dist/objects/pick/index.js"},"./chunk":{"types":"./dist/arrays/chunk/index.d.ts","import":"./dist/arrays/chunk/index.js"},"./retry":{"types":"./dist/async/retry/index.d.ts","import":"./dist/async/retry/index.js"},"./sleep":{"types":"./dist/async/sleep/index.d.ts","import":"./dist/async/sleep/index.js"},"./slugify":{"types":"./dist/strings/slugify/index.d.ts","import":"./dist/strings/slugify/index.js"},"./sort-by":{"types":"./dist/arrays/sort-by/index.d.ts","import":"./dist/arrays/sort-by/index.js"},"./debounce":{"types":"./dist/async/debounce/index.d.ts","import":"./dist/async/debounce/index.js"},"./group-by":{"types":"./dist/arrays/group-by/index.d.ts","import":"./dist/arrays/group-by/index.js"},"./is-empty":{"types":"./dist/objects/is-empty/index.d.ts","import":"./dist/objects/is-empty/index.js"},"./throttle":{"types":"./dist/async/throttle/index.d.ts","import":"./dist/async/throttle/index.js"},"./truncate":{"types":"./dist/strings/truncate/index.d.ts","import":"./dist/strings/truncate/index.js"},"./capitalize":{"types":"./dist/strings/capitalize/index.d.ts","import":"./dist/strings/capitalize/index.js"},"./deep-merge":{"types":"./dist/objects/deep-merge/index.d.ts","import":"./dist/objects/deep-merge/index.js"},"./array-to-hash":{"types":"./dist/arrays/array-to-hash/index.d.ts","import":"./dist/arrays/array-to-hash/index.js"},"./transform-case":{"types":"./dist/strings/transform-case/index.d.ts","import":"./dist/strings/transform-case/index.js"}},"scripts":{"dev":"tsx watch src/index.ts","lint":"biome lint ./src","size":"size-limit","test":"mocha","bench":"NODE_OPTIONS='--max-old-space-size=8192' tsx src/benchmarks/run.ts","build":"tsc","check":"biome check ./src","format":"biome format --write ./src","docs:dev":"cd website && pnpm dev","check:fix":"biome check --write ./src","size:json":"size-limit --json","docs:build":"cd website && pnpm build","docs:preview":"cd website && pnpm preview","test:coverage":"c8 mocha"},"_npmUser":{"name":"pedrotroccoli","email":"pedroaugustobelzkai@gmail.com"},"_npmVersion":"11.6.2","description":"A collection of utility functions for TypeScript & Javascript","directories":{},"sideEffects":false,"_nodeVersion":"25.2.1","publishConfig":{"registry":"https://registry.npmjs.org","provenance":true},"_hasShrinkwrap":false,"packageManager":"pnpm@10.9.0","devDependencies":{"c8":"^11.0.0","tsx":"^4.20.4","chai":"^5.3.1","mocha":"^11.7.1","lodash":"^4.18.1","radash":"^12.1.1","ts-node":"^10.9.2","tinybench":"^6.0.0","size-limit":"^12.0.1","typescript":"^5.9.2","@types/chai":"^5.2.2","@types/mocha":"^10.0.10","@types/lodash":"^4.17.24","@biomejs/biome":"^2.4.10","@changesets/cli":"^2.30.0","@size-limit/file":"^12.0.1","@size-limit/preset-small-lib":"^12.0.1"},"_npmOperationalInternal":{"tmp":"tmp/1o1-utils_1.4.0_1776218822236_0.11262457975608076","host":"s3://npm-registry-packages-npm-production"}},"1.5.0":{"name":"1o1-utils","version":"1.5.0","keywords":["utility","utilities","utils","typescript","javascript","tree-shakeable","zero-dependencies","esm","micro-modules","functional","chunk","pick","omit","get","set","debounce","throttle","deep-merge","clone-deep","group-by","sort-by","slugify","capitalize","truncate","retry","sleep"],"author":{"name":"Pedro Troccoli","email":"contact@pedrotroccoli.com"},"license":"MIT","_id":"1o1-utils@1.5.0","maintainers":[{"name":"pedrotroccoli","email":"pedroaugustobelzkai@gmail.com"}],"homepage":"https://pedrotroccoli.github.io/1o1-utils","bugs":{"url":"https://github.com/pedrotroccoli/1o1-utils/issues"},"dist":{"shasum":"9ebccb1ad096fb5173daf150b45c37ee444b74b1","tarball":"https://registry.npmjs.org/1o1-utils/-/1o1-utils-1.5.0.tgz","fileCount":138,"integrity":"sha512-+IqVmu6NzK7lW+hjZPFRgRluO5OchEYj6bik/SrJO3dDFYDeah0Gmn+r0hmXjwk2qGvSMUPoGsN8c78Lh1lWew==","signatures":[{"sig":"MEQCIGcq7shWlm7ZSWQe8/qGLg70DMY/aPdIU+3Q59aYvffzAiAFQPlH2O8kN89yaYAZ7eyGZ0vxVAZDoTPEZvqzukK2Gg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":108253},"type":"module","types":"dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./get":{"types":"./dist/objects/get/index.d.ts","import":"./dist/objects/get/index.js"},"./set":{"types":"./dist/objects/set/index.d.ts","import":"./dist/objects/set/index.js"},"./omit":{"types":"./dist/objects/omit/index.d.ts","import":"./dist/objects/omit/index.js"},"./pick":{"types":"./dist/objects/pick/index.d.ts","import":"./dist/objects/pick/index.js"},"./chunk":{"types":"./dist/arrays/chunk/index.d.ts","import":"./dist/arrays/chunk/index.js"},"./retry":{"types":"./dist/async/retry/index.d.ts","import":"./dist/async/retry/index.js"},"./sleep":{"types":"./dist/async/sleep/index.d.ts","import":"./dist/async/sleep/index.js"},"./slugify":{"types":"./dist/strings/slugify/index.d.ts","import":"./dist/strings/slugify/index.js"},"./sort-by":{"types":"./dist/arrays/sort-by/index.d.ts","import":"./dist/arrays/sort-by/index.js"},"./debounce":{"types":"./dist/async/debounce/index.d.ts","import":"./dist/async/debounce/index.js"},"./defaults":{"types":"./dist/objects/defaults/index.d.ts","import":"./dist/objects/defaults/index.js"},"./group-by":{"types":"./dist/arrays/group-by/index.d.ts","import":"./dist/arrays/group-by/index.js"},"./is-empty":{"types":"./dist/objects/is-empty/index.d.ts","import":"./dist/objects/is-empty/index.js"},"./throttle":{"types":"./dist/async/throttle/index.d.ts","import":"./dist/async/throttle/index.js"},"./truncate":{"types":"./dist/strings/truncate/index.d.ts","import":"./dist/strings/truncate/index.js"},"./capitalize":{"types":"./dist/strings/capitalize/index.d.ts","import":"./dist/strings/capitalize/index.js"},"./clone-deep":{"types":"./dist/objects/clone-deep/index.d.ts","import":"./dist/objects/clone-deep/index.js"},"./deep-merge":{"types":"./dist/objects/deep-merge/index.d.ts","import":"./dist/objects/deep-merge/index.js"},"./array-to-hash":{"types":"./dist/arrays/array-to-hash/index.d.ts","import":"./dist/arrays/array-to-hash/index.js"},"./defaults-deep":{"types":"./dist/objects/defaults-deep/index.d.ts","import":"./dist/objects/defaults-deep/index.js"},"./transform-case":{"types":"./dist/strings/transform-case/index.d.ts","import":"./dist/strings/transform-case/index.js"}},"scripts":{"dev":"tsx watch src/index.ts","lint":"biome lint ./src","size":"size-limit","test":"mocha","bench":"NODE_OPTIONS='--max-old-space-size=8192' tsx src/benchmarks/run.ts","build":"tsc","check":"biome check ./src","format":"biome format --write ./src","docs:dev":"cd website && pnpm dev","check:fix":"biome check --write ./src","size:json":"size-limit --json","docs:build":"cd website && pnpm build","docs:preview":"cd website && pnpm preview","test:coverage":"c8 mocha"},"_npmUser":{"name":"pedrotroccoli","email":"pedroaugustobelzkai@gmail.com"},"repository":{"url":"git+https://github.com/pedrotroccoli/1o1-utils.git","type":"git"},"_npmVersion":"11.6.2","description":"Fast, tree-shakeable, zero-dependency TypeScript utility library. ~2kB gzipped, fully typed, benchmarked for performance.","directories":{},"sideEffects":false,"_nodeVersion":"25.2.1","publishConfig":{"registry":"https://registry.npmjs.org","provenance":true},"_hasShrinkwrap":false,"packageManager":"pnpm@10.9.0","devDependencies":{"c8":"^11.0.0","tsx":"^4.20.4","chai":"^5.3.1","mocha":"^11.7.1","lodash":"^4.18.1","radash":"^12.1.1","ts-node":"^10.9.2","tinybench":"^6.0.0","size-limit":"^12.0.1","typescript":"^5.9.2","@types/chai":"^5.2.2","@types/mocha":"^10.0.10","@types/lodash":"^4.17.24","@biomejs/biome":"^2.4.10","@changesets/cli":"^2.30.0","@size-limit/file":"^12.0.1","@size-limit/preset-small-lib":"^12.0.1"},"_npmOperationalInternal":{"tmp":"tmp/1o1-utils_1.5.0_1776460763036_0.9322970308535237","host":"s3://npm-registry-packages-npm-production"}},"1.7.0":{"name":"1o1-utils","version":"1.7.0","keywords":["utility","utilities","utils","typescript","javascript","tree-shakeable","zero-dependencies","esm","micro-modules","functional","chunk","pick","omit","get","set","debounce","throttle","deep-merge","clone-deep","group-by","sort-by","slugify","capitalize","truncate","retry","sleep","once","pipe","compose","flow","with-timeout","in-range","between","range-check","shallow-equal"],"author":{"name":"Pedro Troccoli","email":"contact@pedrotroccoli.com"},"license":"MIT","_id":"1o1-utils@1.7.0","maintainers":[{"name":"pedrotroccoli","email":"pedroaugustobelzkai@gmail.com"}],"homepage":"https://pedrotroccoli.github.io/1o1-utils","bugs":{"url":"https://github.com/pedrotroccoli/1o1-utils/issues"},"dist":{"shasum":"7c1a7df7b8d79ef79deced1e651f817972447924","tarball":"https://registry.npmjs.org/1o1-utils/-/1o1-utils-1.7.0.tgz","fileCount":168,"integrity":"sha512-dbetXBKKyUJcOMaA/9DVjJDdHu3zi4PVo7e9x+6LH7rjGHzUj2X1a32TmH9qG7vFhHDdFRs8zuLUjwRp2Ob/pg==","signatures":[{"sig":"MEYCIQCN5eGtwHiozwFUdnuuqu7HM59w0sB/6Jwj6pwwinKHpQIhAJvZOF8aCzfoZAkh6TdKPZvh3USo2CPv3H5mBHJkndON","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":143290},"pnpm":{"overrides":{"diff@<4.0.4":">=4.0.4 <5","glob@<10.5.0":">=10.5.0","js-yaml@<4.1.1":">=4.1.1","minimatch@<9.0.7":">=9.0.7","diff@>=5.0.0 <8.0.3":">=8.0.3","brace-expansion@<1.1.12":">=1.1.12","serialize-javascript@<7.0.3":">=7.0.3","brace-expansion@>=2.0.0 <2.0.2":">=2.0.2"}},"type":"module","types":"dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./get":{"types":"./dist/objects/get/index.d.ts","import":"./dist/objects/get/index.js"},"./set":{"types":"./dist/objects/set/index.d.ts","import":"./dist/objects/set/index.js"},"./omit":{"types":"./dist/objects/omit/index.d.ts","import":"./dist/objects/omit/index.js"},"./once":{"types":"./dist/functions/once/index.d.ts","import":"./dist/functions/once/index.js"},"./pick":{"types":"./dist/objects/pick/index.d.ts","import":"./dist/objects/pick/index.js"},"./pipe":{"types":"./dist/functions/pipe/index.d.ts","import":"./dist/functions/pipe/index.js"},"./chunk":{"types":"./dist/arrays/chunk/index.d.ts","import":"./dist/arrays/chunk/index.js"},"./retry":{"types":"./dist/async/retry/index.d.ts","import":"./dist/async/retry/index.js"},"./sleep":{"types":"./dist/async/sleep/index.d.ts","import":"./dist/async/sleep/index.js"},"./slugify":{"types":"./dist/strings/slugify/index.d.ts","import":"./dist/strings/slugify/index.js"},"./sort-by":{"types":"./dist/arrays/sort-by/index.d.ts","import":"./dist/arrays/sort-by/index.js"},"./debounce":{"types":"./dist/async/debounce/index.d.ts","import":"./dist/async/debounce/index.js"},"./defaults":{"types":"./dist/objects/defaults/index.d.ts","import":"./dist/objects/defaults/index.js"},"./group-by":{"types":"./dist/arrays/group-by/index.d.ts","import":"./dist/arrays/group-by/index.js"},"./in-range":{"types":"./dist/numbers/in-range/index.d.ts","import":"./dist/numbers/in-range/index.js"},"./is-empty":{"types":"./dist/objects/is-empty/index.d.ts","import":"./dist/objects/is-empty/index.js"},"./throttle":{"types":"./dist/async/throttle/index.d.ts","import":"./dist/async/throttle/index.js"},"./truncate":{"types":"./dist/strings/truncate/index.d.ts","import":"./dist/strings/truncate/index.js"},"./capitalize":{"types":"./dist/strings/capitalize/index.d.ts","import":"./dist/strings/capitalize/index.js"},"./clone-deep":{"types":"./dist/objects/clone-deep/index.d.ts","import":"./dist/objects/clone-deep/index.js"},"./deep-merge":{"types":"./dist/objects/deep-merge/index.d.ts","import":"./dist/objects/deep-merge/index.js"},"./with-timeout":{"types":"./dist/async/with-timeout/index.d.ts","import":"./dist/async/with-timeout/index.js"},"./array-to-hash":{"types":"./dist/arrays/array-to-hash/index.d.ts","import":"./dist/arrays/array-to-hash/index.js"},"./defaults-deep":{"types":"./dist/objects/defaults-deep/index.d.ts","import":"./dist/objects/defaults-deep/index.js"},"./shallow-equal":{"types":"./dist/comparisons/shallow-equal/index.d.ts","import":"./dist/comparisons/shallow-equal/index.js"},"./transform-case":{"types":"./dist/strings/transform-case/index.d.ts","import":"./dist/strings/transform-case/index.js"}},"scripts":{"dev":"tsx watch src/index.ts","lint":"biome lint ./src","size":"size-limit","test":"mocha","bench":"NODE_OPTIONS='--max-old-space-size=8192' tsx src/benchmarks/run.ts","build":"tsc","check":"biome check ./src","format":"biome format --write ./src","docs:dev":"cd website && pnpm dev","check:fix":"biome check --write ./src","size:json":"size-limit --json","docs:build":"cd website && pnpm build","docs:preview":"cd website && pnpm preview","test:coverage":"c8 mocha"},"_npmUser":{"name":"pedrotroccoli","email":"pedroaugustobelzkai@gmail.com"},"deprecated":"Incomplete release: missing deep-equal, is-nil, is-valid-url, safely subpath exports. Upgrade to 1.7.1+ for all advertised utilities.","repository":{"url":"git+https://github.com/pedrotroccoli/1o1-utils.git","type":"git"},"_npmVersion":"11.6.2","description":"Fast, tree-shakeable, zero-dependency TypeScript utility library. ~2kB gzipped, fully typed, benchmarked for performance.","directories":{},"sideEffects":false,"_nodeVersion":"25.2.1","publishConfig":{"registry":"https://registry.npmjs.org","provenance":true},"_hasShrinkwrap":false,"packageManager":"pnpm@10.9.0","devDependencies":{"c8":"^11.0.0","tsx":"^4.20.4","chai":"^5.3.1","mocha":"^11.7.5","lodash":"^4.18.1","radash":"^12.1.1","ts-node":"^10.9.2","tinybench":"^6.0.0","es-toolkit":"^1.45.1","size-limit":"^12.0.1","typescript":"^5.9.2","@types/chai":"^5.2.2","@types/mocha":"^10.0.10","@types/lodash":"^4.17.24","@biomejs/biome":"^2.4.10","@changesets/cli":"^2.30.0","@size-limit/file":"^12.0.1","@size-limit/preset-small-lib":"^12.0.1"},"_npmOperationalInternal":{"tmp":"tmp/1o1-utils_1.7.0_1777045978332_0.10943829097075031","host":"s3://npm-registry-packages-npm-production"}},"1.7.1":{"name":"1o1-utils","version":"1.7.1","keywords":["utility","utilities","utils","typescript","javascript","tree-shakeable","zero-dependencies","esm","micro-modules","functional","chunk","pick","omit","get","set","debounce","throttle","deep-merge","clone-deep","group-by","sort-by","slugify","capitalize","truncate","retry","sleep","once","pipe","compose","flow","with-timeout","in-range","between","range-check","shallow-equal","deep-equal","is-equal","is-valid-url","validate-url","url-validator","safely","tryit","try-catch","is-nil","nullish"],"author":{"name":"Pedro Troccoli","email":"contact@pedrotroccoli.com"},"license":"MIT","_id":"1o1-utils@1.7.1","maintainers":[{"name":"pedrotroccoli","email":"pedroaugustobelzkai@gmail.com"}],"homepage":"https://pedrotroccoli.github.io/1o1-utils","bugs":{"url":"https://github.com/pedrotroccoli/1o1-utils/issues"},"dist":{"shasum":"66b9f54b047e360290e869e5c68f095ba69734eb","tarball":"https://registry.npmjs.org/1o1-utils/-/1o1-utils-1.7.1.tgz","fileCount":192,"integrity":"sha512-bAAmRzvovPVh0cWKZUnQ4lcSAIYXv76jB5SaXrE9aTtwCa6sHvUpQxjxnwyaQvLuGrhxTfAllclB+bKNelfl7Q==","signatures":[{"sig":"MEUCIARjo/mylLAzuHNJrUv6kz2C4c8aF+Jg4TAIJ8RAbfxIAiEAuT25RFiXBKzVfIp4NwYVm4DRKpvsWeSuBEfrnaPZpmI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":170316},"pnpm":{"overrides":{"diff@<4.0.4":">=4.0.4 <5","glob@<10.5.0":">=10.5.0","js-yaml@<4.1.1":">=4.1.1","minimatch@<9.0.7":">=9.0.7","diff@>=5.0.0 <8.0.3":">=8.0.3","brace-expansion@<1.1.12":">=1.1.12","serialize-javascript@<7.0.3":">=7.0.3","brace-expansion@>=2.0.0 <2.0.2":">=2.0.2"}},"type":"module","types":"dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./get":{"types":"./dist/objects/get/index.d.ts","import":"./dist/objects/get/index.js"},"./set":{"types":"./dist/objects/set/index.d.ts","import":"./dist/objects/set/index.js"},"./omit":{"types":"./dist/objects/omit/index.d.ts","import":"./dist/objects/omit/index.js"},"./once":{"types":"./dist/functions/once/index.d.ts","import":"./dist/functions/once/index.js"},"./pick":{"types":"./dist/objects/pick/index.d.ts","import":"./dist/objects/pick/index.js"},"./pipe":{"types":"./dist/functions/pipe/index.d.ts","import":"./dist/functions/pipe/index.js"},"./chunk":{"types":"./dist/arrays/chunk/index.d.ts","import":"./dist/arrays/chunk/index.js"},"./retry":{"types":"./dist/async/retry/index.d.ts","import":"./dist/async/retry/index.js"},"./sleep":{"types":"./dist/async/sleep/index.d.ts","import":"./dist/async/sleep/index.js"},"./is-nil":{"types":"./dist/comparisons/is-nil/index.d.ts","import":"./dist/comparisons/is-nil/index.js"},"./safely":{"types":"./dist/async/safely/index.d.ts","import":"./dist/async/safely/index.js"},"./slugify":{"types":"./dist/strings/slugify/index.d.ts","import":"./dist/strings/slugify/index.js"},"./sort-by":{"types":"./dist/arrays/sort-by/index.d.ts","import":"./dist/arrays/sort-by/index.js"},"./debounce":{"types":"./dist/async/debounce/index.d.ts","import":"./dist/async/debounce/index.js"},"./defaults":{"types":"./dist/objects/defaults/index.d.ts","import":"./dist/objects/defaults/index.js"},"./group-by":{"types":"./dist/arrays/group-by/index.d.ts","import":"./dist/arrays/group-by/index.js"},"./in-range":{"types":"./dist/numbers/in-range/index.d.ts","import":"./dist/numbers/in-range/index.js"},"./is-empty":{"types":"./dist/objects/is-empty/index.d.ts","import":"./dist/objects/is-empty/index.js"},"./throttle":{"types":"./dist/async/throttle/index.d.ts","import":"./dist/async/throttle/index.js"},"./truncate":{"types":"./dist/strings/truncate/index.d.ts","import":"./dist/strings/truncate/index.js"},"./capitalize":{"types":"./dist/strings/capitalize/index.d.ts","import":"./dist/strings/capitalize/index.js"},"./clone-deep":{"types":"./dist/objects/clone-deep/index.d.ts","import":"./dist/objects/clone-deep/index.js"},"./deep-equal":{"types":"./dist/comparisons/deep-equal/index.d.ts","import":"./dist/comparisons/deep-equal/index.js"},"./deep-merge":{"types":"./dist/objects/deep-merge/index.d.ts","import":"./dist/objects/deep-merge/index.js"},"./is-valid-url":{"types":"./dist/validators/is-valid-url/index.d.ts","import":"./dist/validators/is-valid-url/index.js"},"./with-timeout":{"types":"./dist/async/with-timeout/index.d.ts","import":"./dist/async/with-timeout/index.js"},"./array-to-hash":{"types":"./dist/arrays/array-to-hash/index.d.ts","import":"./dist/arrays/array-to-hash/index.js"},"./defaults-deep":{"types":"./dist/objects/defaults-deep/index.d.ts","import":"./dist/objects/defaults-deep/index.js"},"./shallow-equal":{"types":"./dist/comparisons/shallow-equal/index.d.ts","import":"./dist/comparisons/shallow-equal/index.js"},"./transform-case":{"types":"./dist/strings/transform-case/index.d.ts","import":"./dist/strings/transform-case/index.js"}},"scripts":{"dev":"tsx watch src/index.ts","lint":"biome lint ./src","size":"size-limit","test":"mocha","bench":"NODE_OPTIONS='--max-old-space-size=8192' tsx src/benchmarks/run.ts","build":"tsc","check":"biome check ./src","format":"biome format --write ./src","docs:dev":"cd website && pnpm dev","check:fix":"biome check --write ./src","size:json":"size-limit --json","docs:build":"cd website && pnpm build","docs:preview":"cd website && pnpm preview","test:coverage":"c8 mocha"},"_npmUser":{"name":"pedrotroccoli","email":"pedroaugustobelzkai@gmail.com"},"repository":{"url":"git+https://github.com/pedrotroccoli/1o1-utils.git","type":"git"},"_npmVersion":"11.6.2","description":"Fast, tree-shakeable, zero-dependency TypeScript utility library. ~2kB gzipped, fully typed, benchmarked for performance.","directories":{},"sideEffects":false,"_nodeVersion":"25.2.1","publishConfig":{"registry":"https://registry.npmjs.org","provenance":true},"_hasShrinkwrap":false,"packageManager":"pnpm@10.9.0","devDependencies":{"c8":"^11.0.0","tsx":"^4.20.4","chai":"^5.3.1","mocha":"^11.7.5","lodash":"^4.18.1","radash":"^12.1.1","ts-node":"^10.9.2","tinybench":"^6.0.0","es-toolkit":"^1.45.1","size-limit":"^12.0.1","typescript":"^5.9.2","@types/chai":"^5.2.2","@types/mocha":"^10.0.10","@types/lodash":"^4.17.24","@biomejs/biome":"^2.4.10","@changesets/cli":"^2.30.0","@size-limit/file":"^12.0.1","@size-limit/preset-small-lib":"^12.0.1"},"_npmOperationalInternal":{"tmp":"tmp/1o1-utils_1.7.1_1777471268351_0.18689943041397927","host":"s3://npm-registry-packages-npm-production"}},"1.8.0":{"name":"1o1-utils","version":"1.8.0","keywords":["utility","utilities","utils","typescript","javascript","tree-shakeable","zero-dependencies","esm","micro-modules","functional","chunk","pick","omit","get","set","debounce","throttle","deep-merge","clone-deep","group-by","sort-by","slugify","capitalize","truncate","retry","sleep","once","pipe","compose","flow","with-timeout","in-range","between","range-check","shallow-equal","deep-equal","is-equal","is-valid-url","validate-url","url-validator","safely","tryit","try-catch","is-nil","nullish","clamp","restrict","bound","zip","unzip","transpose","times","repeat","range","sequence","map-keys","map-values","escape-regexp","escape-regex","regex-escape"],"author":{"name":"Pedro Troccoli","email":"contact@pedrotroccoli.com"},"license":"MIT","_id":"1o1-utils@1.8.0","maintainers":[{"name":"pedrotroccoli","email":"pedroaugustobelzkai@gmail.com"}],"homepage":"https://pedrotroccoli.github.io/1o1-utils","bugs":{"url":"https://github.com/pedrotroccoli/1o1-utils/issues"},"dist":{"shasum":"d6dea239503796ebac8a9e60f23427f38eceeb68","tarball":"https://registry.npmjs.org/1o1-utils/-/1o1-utils-1.8.0.tgz","fileCount":252,"integrity":"sha512-+I2HxblWG8OAYLQTZDHdA4dNnGHx/gVIllH5oeXK9eibuKkxhawI6k2X/DY4HSeuEG5xhQJ/pj9oUYYWYsf3HA==","signatures":[{"sig":"MEYCIQDkxbAeultO+WTMz5sfTul5sTBB9Gx8pdbbCkldLDh3PwIhAO6NP5AkXvyt/8zKc3oAGumivz2BDL4jit57W6FD1qYX","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":218620},"type":"module","_from":"file:1o1-utils-1.8.0.tgz","types":"dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./get":{"types":"./dist/objects/get/index.d.ts","import":"./dist/objects/get/index.js"},"./set":{"types":"./dist/objects/set/index.d.ts","import":"./dist/objects/set/index.js"},"./zip":{"types":"./dist/arrays/zip/index.d.ts","import":"./dist/arrays/zip/index.js"},"./diff":{"types":"./dist/arrays/diff/index.d.ts","import":"./dist/arrays/diff/index.js"},"./omit":{"types":"./dist/objects/omit/index.d.ts","import":"./dist/objects/omit/index.js"},"./once":{"types":"./dist/functions/once/index.d.ts","import":"./dist/functions/once/index.js"},"./pick":{"types":"./dist/objects/pick/index.d.ts","import":"./dist/objects/pick/index.js"},"./pipe":{"types":"./dist/functions/pipe/index.d.ts","import":"./dist/functions/pipe/index.js"},"./chunk":{"types":"./dist/arrays/chunk/index.d.ts","import":"./dist/arrays/chunk/index.js"},"./clamp":{"types":"./dist/numbers/clamp/index.d.ts","import":"./dist/numbers/clamp/index.js"},"./range":{"types":"./dist/arrays/range/index.d.ts","import":"./dist/arrays/range/index.js"},"./retry":{"types":"./dist/async/retry/index.d.ts","import":"./dist/async/retry/index.js"},"./sleep":{"types":"./dist/async/sleep/index.d.ts","import":"./dist/async/sleep/index.js"},"./times":{"types":"./dist/arrays/times/index.d.ts","import":"./dist/arrays/times/index.js"},"./unzip":{"types":"./dist/arrays/unzip/index.d.ts","import":"./dist/arrays/unzip/index.js"},"./is-nil":{"types":"./dist/comparisons/is-nil/index.d.ts","import":"./dist/comparisons/is-nil/index.js"},"./safely":{"types":"./dist/async/safely/index.d.ts","import":"./dist/async/safely/index.js"},"./slugify":{"types":"./dist/strings/slugify/index.d.ts","import":"./dist/strings/slugify/index.js"},"./sort-by":{"types":"./dist/arrays/sort-by/index.d.ts","import":"./dist/arrays/sort-by/index.js"},"./debounce":{"types":"./dist/async/debounce/index.d.ts","import":"./dist/async/debounce/index.js"},"./defaults":{"types":"./dist/objects/defaults/index.d.ts","import":"./dist/objects/defaults/index.js"},"./group-by":{"types":"./dist/arrays/group-by/index.d.ts","import":"./dist/arrays/group-by/index.js"},"./in-range":{"types":"./dist/numbers/in-range/index.d.ts","import":"./dist/numbers/in-range/index.js"},"./is-empty":{"types":"./dist/objects/is-empty/index.d.ts","import":"./dist/objects/is-empty/index.js"},"./map-keys":{"types":"./dist/objects/map-keys/index.d.ts","import":"./dist/objects/map-keys/index.js"},"./throttle":{"types":"./dist/async/throttle/index.d.ts","import":"./dist/async/throttle/index.js"},"./truncate":{"types":"./dist/strings/truncate/index.d.ts","import":"./dist/strings/truncate/index.js"},"./capitalize":{"types":"./dist/strings/capitalize/index.d.ts","import":"./dist/strings/capitalize/index.js"},"./clone-deep":{"types":"./dist/objects/clone-deep/index.d.ts","import":"./dist/objects/clone-deep/index.js"},"./deep-equal":{"types":"./dist/comparisons/deep-equal/index.d.ts","import":"./dist/comparisons/deep-equal/index.js"},"./deep-merge":{"types":"./dist/objects/deep-merge/index.d.ts","import":"./dist/objects/deep-merge/index.js"},"./map-values":{"types":"./dist/objects/map-values/index.d.ts","import":"./dist/objects/map-values/index.js"},"./random-int":{"types":"./dist/numbers/random-int/index.d.ts","import":"./dist/numbers/random-int/index.js"},"./is-valid-url":{"types":"./dist/validators/is-valid-url/index.d.ts","import":"./dist/validators/is-valid-url/index.js"},"./with-timeout":{"types":"./dist/async/with-timeout/index.d.ts","import":"./dist/async/with-timeout/index.js"},"./array-to-hash":{"types":"./dist/arrays/array-to-hash/index.d.ts","import":"./dist/arrays/array-to-hash/index.js"},"./defaults-deep":{"types":"./dist/objects/defaults-deep/index.d.ts","import":"./dist/objects/defaults-deep/index.js"},"./shallow-equal":{"types":"./dist/comparisons/shallow-equal/index.d.ts","import":"./dist/comparisons/shallow-equal/index.js"},"./escape-reg-exp":{"types":"./dist/strings/escape-reg-exp/index.d.ts","import":"./dist/strings/escape-reg-exp/index.js"},"./transform-case":{"types":"./dist/strings/transform-case/index.d.ts","import":"./dist/strings/transform-case/index.js"}},"scripts":{"dev":"tsx watch src/index.ts","lint":"biome lint ./src","size":"size-limit","test":"mocha","bench":"NODE_OPTIONS='--max-old-space-size=8192' tsx src/benchmarks/run.ts","build":"tsc","check":"biome check ./src","format":"biome format --write ./src","docs:dev":"cd website && pnpm dev","check:fix":"biome check --write ./src","size:json":"size-limit --json","docs:build":"cd website && pnpm build","docs:preview":"cd website && pnpm preview","test:coverage":"c8 mocha"},"_npmUser":{"name":"pedrotroccoli","email":"pedroaugustobelzkai@gmail.com"},"_resolved":"/private/var/folders/6t/w2g85h552gj97gl1jvpsyf8h0000gn/T/189ccfe057afec3f2f14a2d94ac55816/1o1-utils-1.8.0.tgz","_integrity":"sha512-+I2HxblWG8OAYLQTZDHdA4dNnGHx/gVIllH5oeXK9eibuKkxhawI6k2X/DY4HSeuEG5xhQJ/pj9oUYYWYsf3HA==","repository":{"url":"git+https://github.com/pedrotroccoli/1o1-utils.git","type":"git"},"_npmVersion":"11.6.2","description":"Fast, tree-shakeable, zero-dependency TypeScript utility library. ~2kB gzipped, fully typed, benchmarked for performance.","directories":{},"sideEffects":false,"_nodeVersion":"25.2.1","publishConfig":{"registry":"https://registry.npmjs.org","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"c8":"^11.0.0","tsx":"^4.20.4","chai":"^6.2.2","mocha":"^11.7.5","lodash":"^4.18.1","radash":"^12.1.1","ts-node":"^10.9.2","tinybench":"^6.0.0","es-toolkit":"^1.45.1","size-limit":"^12.0.1","typescript":"^6.0.3","@types/chai":"^5.2.2","@types/mocha":"^10.0.10","@types/lodash":"^4.17.24","@biomejs/biome":"^2.4.10","@changesets/cli":"^2.30.0","@size-limit/file":"^12.0.1","@size-limit/preset-small-lib":"^12.0.1"},"_npmOperationalInternal":{"tmp":"tmp/1o1-utils_1.8.0_1777775680919_0.9364410307458564","host":"s3://npm-registry-packages-npm-production"}},"1.9.0":{"name":"1o1-utils","version":"1.9.0","keywords":["utility","utilities","utils","typescript","javascript","tree-shakeable","zero-dependencies","esm","micro-modules","functional","chunk","pick","omit","get","set","debounce","throttle","deep-merge","clone-deep","group-by","sort-by","slugify","capitalize","truncate","retry","sleep","once","pipe","compose","flow","with-timeout","in-range","between","range-check","shallow-equal","deep-equal","is-equal","is-valid-url","validate-url","url-validator","is-valid-email","validate-email","email-validator","is-valid-phone","validate-phone","phone-validator","e164","safely","tryit","try-catch","is-nil","nullish","clamp","restrict","bound","zip","unzip","transpose","times","repeat","range","sequence","map-keys","map-values","escape-regexp","escape-regex","regex-escape","shuffle","fisher-yates","randomize","partition","split","bifurcate","normalize-email","email","deburr","diacritic","accent","remove-accents","memo","memoize","cache","ttl-cache","copy-to-clipboard","clipboard","copy","compact","remove-falsy","clean-object","replace","swap","update-array","bind-key","bindkey","hotkey","keyboard-shortcut","keymap","seconds-to-time-format","time-format-to-seconds","format-seconds","parse-time","hh-mm-ss","mm-ss","duration","clock-format"],"author":{"name":"Pedro Troccoli","email":"contact@pedrotroccoli.com"},"license":"MIT","_id":"1o1-utils@1.9.0","maintainers":[{"name":"pedrotroccoli","email":"pedroaugustobelzkai@gmail.com"}],"homepage":"https://pedrotroccoli.github.io/1o1-utils","bugs":{"url":"https://github.com/pedrotroccoli/1o1-utils/issues"},"dist":{"shasum":"948ae3566974f834204c1560b297cf16ae8a908c","tarball":"https://registry.npmjs.org/1o1-utils/-/1o1-utils-1.9.0.tgz","fileCount":348,"integrity":"sha512-oeeKTWpcpDR+e5rR7EW50OdGEsQ0VyXMqfixfAWd0YFJPuz1PGk7+vXkgYPkZqW22a5SRqexkXKDnma6YyCeKA==","signatures":[{"sig":"MEUCIQCWJlkri+DNrPRufeHYSrfuDOt6ZcPhi+wKaB1bWXtg8wIgYiP1kAncXd2fj2vZrkVIrNWFGmSl2fwIjFLRVcaPH4o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":348033},"type":"module","_from":"file:1o1-utils-1.9.0.tgz","types":"dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./get":{"types":"./dist/objects/get/index.d.ts","import":"./dist/objects/get/index.js"},"./set":{"types":"./dist/objects/set/index.d.ts","import":"./dist/objects/set/index.js"},"./zip":{"types":"./dist/arrays/zip/index.d.ts","import":"./dist/arrays/zip/index.js"},"./diff":{"types":"./dist/arrays/diff/index.d.ts","import":"./dist/arrays/diff/index.js"},"./memo":{"types":"./dist/functions/memo/index.d.ts","import":"./dist/functions/memo/index.js"},"./omit":{"types":"./dist/objects/omit/index.d.ts","import":"./dist/objects/omit/index.js"},"./once":{"types":"./dist/functions/once/index.d.ts","import":"./dist/functions/once/index.js"},"./pick":{"types":"./dist/objects/pick/index.d.ts","import":"./dist/objects/pick/index.js"},"./pipe":{"types":"./dist/functions/pipe/index.d.ts","import":"./dist/functions/pipe/index.js"},"./chunk":{"types":"./dist/arrays/chunk/index.d.ts","import":"./dist/arrays/chunk/index.js"},"./clamp":{"types":"./dist/numbers/clamp/index.d.ts","import":"./dist/numbers/clamp/index.js"},"./range":{"types":"./dist/arrays/range/index.d.ts","import":"./dist/arrays/range/index.js"},"./retry":{"types":"./dist/async/retry/index.d.ts","import":"./dist/async/retry/index.js"},"./sleep":{"types":"./dist/async/sleep/index.d.ts","import":"./dist/async/sleep/index.js"},"./times":{"types":"./dist/arrays/times/index.d.ts","import":"./dist/arrays/times/index.js"},"./unzip":{"types":"./dist/arrays/unzip/index.d.ts","import":"./dist/arrays/unzip/index.js"},"./deburr":{"types":"./dist/strings/deburr/index.d.ts","import":"./dist/strings/deburr/index.js"},"./is-nil":{"types":"./dist/comparisons/is-nil/index.d.ts","import":"./dist/comparisons/is-nil/index.js"},"./safely":{"types":"./dist/async/safely/index.d.ts","import":"./dist/async/safely/index.js"},"./compact":{"types":"./dist/objects/compact/index.d.ts","import":"./dist/objects/compact/index.js"},"./replace":{"types":"./dist/arrays/replace/index.d.ts","import":"./dist/arrays/replace/index.js"},"./shuffle":{"types":"./dist/arrays/shuffle/index.d.ts","import":"./dist/arrays/shuffle/index.js"},"./slugify":{"types":"./dist/strings/slugify/index.d.ts","import":"./dist/strings/slugify/index.js"},"./sort-by":{"types":"./dist/arrays/sort-by/index.d.ts","import":"./dist/arrays/sort-by/index.js"},"./bind-key":{"types":"./dist/browser/bind-key/index.d.ts","import":"./dist/browser/bind-key/index.js"},"./debounce":{"types":"./dist/async/debounce/index.d.ts","import":"./dist/async/debounce/index.js"},"./defaults":{"types":"./dist/objects/defaults/index.d.ts","import":"./dist/objects/defaults/index.js"},"./group-by":{"types":"./dist/arrays/group-by/index.d.ts","import":"./dist/arrays/group-by/index.js"},"./in-range":{"types":"./dist/numbers/in-range/index.d.ts","import":"./dist/numbers/in-range/index.js"},"./is-empty":{"types":"./dist/objects/is-empty/index.d.ts","import":"./dist/objects/is-empty/index.js"},"./map-keys":{"types":"./dist/objects/map-keys/index.d.ts","import":"./dist/objects/map-keys/index.js"},"./throttle":{"types":"./dist/async/throttle/index.d.ts","import":"./dist/async/throttle/index.js"},"./truncate":{"types":"./dist/strings/truncate/index.d.ts","import":"./dist/strings/truncate/index.js"},"./partition":{"types":"./dist/arrays/partition/index.d.ts","import":"./dist/arrays/partition/index.js"},"./capitalize":{"types":"./dist/strings/capitalize/index.d.ts","import":"./dist/strings/capitalize/index.js"},"./clone-deep":{"types":"./dist/objects/clone-deep/index.d.ts","import":"./dist/objects/clone-deep/index.js"},"./deep-equal":{"types":"./dist/comparisons/deep-equal/index.d.ts","import":"./dist/comparisons/deep-equal/index.js"},"./deep-merge":{"types":"./dist/objects/deep-merge/index.d.ts","import":"./dist/objects/deep-merge/index.js"},"./map-values":{"types":"./dist/objects/map-values/index.d.ts","import":"./dist/objects/map-values/index.js"},"./random-int":{"types":"./dist/numbers/random-int/index.d.ts","import":"./dist/numbers/random-int/index.js"},"./is-valid-url":{"types":"./dist/validators/is-valid-url/index.d.ts","import":"./dist/validators/is-valid-url/index.js"},"./with-timeout":{"types":"./dist/async/with-timeout/index.d.ts","import":"./dist/async/with-timeout/index.js"},"./array-to-hash":{"types":"./dist/arrays/array-to-hash/index.d.ts","import":"./dist/arrays/array-to-hash/index.js"},"./defaults-deep":{"types":"./dist/objects/defaults-deep/index.d.ts","import":"./dist/objects/defaults-deep/index.js"},"./shallow-equal":{"types":"./dist/comparisons/shallow-equal/index.d.ts","import":"./dist/comparisons/shallow-equal/index.js"},"./escape-reg-exp":{"types":"./dist/strings/escape-reg-exp/index.d.ts","import":"./dist/strings/escape-reg-exp/index.js"},"./is-valid-email":{"types":"./dist/validators/is-valid-email/index.d.ts","import":"./dist/validators/is-valid-email/index.js"},"./is-valid-phone":{"types":"./dist/validators/is-valid-phone/index.d.ts","import":"./dist/validators/is-valid-phone/index.js"},"./transform-case":{"types":"./dist/strings/transform-case/index.d.ts","import":"./dist/strings/transform-case/index.js"},"./normalize-email":{"types":"./dist/strings/normalize-email/index.d.ts","import":"./dist/strings/normalize-email/index.js"},"./copy-to-clipboard":{"types":"./dist/browser/copy-to-clipboard/index.d.ts","import":"./dist/browser/copy-to-clipboard/index.js"},"./wait-for-condition":{"types":"./dist/async/wait-for-condition/index.d.ts","import":"./dist/async/wait-for-condition/index.js"},"./seconds-to-time-format":{"types":"./dist/formatters/seconds-to-time-format/index.d.ts","import":"./dist/formatters/seconds-to-time-format/index.js"},"./time-format-to-seconds":{"types":"./dist/formatters/time-format-to-seconds/index.d.ts","import":"./dist/formatters/time-format-to-seconds/index.js"}},"scripts":{"dev":"tsx watch src/index.ts","lint":"biome lint ./src","size":"size-limit","test":"mocha","bench":"NODE_OPTIONS='--max-old-space-size=8192' tsx src/benchmarks/run.ts","build":"tsc","check":"biome check ./src","format":"biome format --write ./src","docs:dev":"cd website && pnpm dev","check:fix":"biome check --write ./src","size:json":"size-limit --json","docs:build":"cd website && pnpm build","docs:preview":"cd website && pnpm preview","test:coverage":"c8 mocha"},"_npmUser":{"name":"pedrotroccoli","email":"pedroaugustobelzkai@gmail.com"},"_resolved":"/private/var/folders/6t/w2g85h552gj97gl1jvpsyf8h0000gn/T/9d5f00e8a96bc5eb6fd13ec9627da2a4/1o1-utils-1.9.0.tgz","_integrity":"sha512-oeeKTWpcpDR+e5rR7EW50OdGEsQ0VyXMqfixfAWd0YFJPuz1PGk7+vXkgYPkZqW22a5SRqexkXKDnma6YyCeKA==","repository":{"url":"git+https://github.com/pedrotroccoli/1o1-utils.git","type":"git"},"_npmVersion":"11.6.2","description":"Fast, tree-shakeable, zero-dependency TypeScript utility library. ~2kB gzipped, fully typed, benchmarked for performance.","directories":{},"sideEffects":false,"_nodeVersion":"25.2.1","publishConfig":{"registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"c8":"^11.0.0","tsx":"^4.20.4","chai":"^6.2.2","mocha":"^11.7.5","lodash":"^4.18.1","radash":"^12.1.1","ts-node":"^10.9.2","happy-dom":"^20.9.0","mousetrap":"^1.6.5","tinybench":"^6.0.0","es-toolkit":"^1.45.1","fast-check":"^4.7.0","size-limit":"^12.0.1","typescript":"^6.0.3","@types/chai":"^5.2.2","@types/mocha":"^10.0.10","@types/lodash":"^4.17.24","@biomejs/biome":"^2.4.10","@changesets/cli":"^2.30.0","@size-limit/file":"^12.0.1","@types/mousetrap":"^1.6.15","@size-limit/preset-small-lib":"^12.0.1","@happy-dom/global-registrator":"^20.9.0"},"_npmOperationalInternal":{"tmp":"tmp/1o1-utils_1.9.0_1777827304003_0.9763522636102728","host":"s3://npm-registry-packages-npm-production"}},"1.10.0":{"name":"1o1-utils","version":"1.10.0","keywords":["utility","utilities","utils","typescript","javascript","tree-shakeable","zero-dependencies","esm","micro-modules","functional","chunk","pick","omit","get","set","debounce","throttle","deep-merge","clone-deep","group-by","sort-by","slugify","capitalize","truncate","retry","sleep","parallel","concurrency","semaphore","once","pipe","compose","flow","with-timeout","in-range","between","range-check","shallow-equal","deep-equal","is-equal","is-valid-url","validate-url","url-validator","is-valid-email","validate-email","email-validator","is-valid-phone","validate-phone","phone-validator","e164","safely","tryit","try-catch","is-nil","nullish","clamp","restrict","bound","zip","unzip","transpose","times","repeat","range","sequence","map-keys","map-values","escape-regexp","escape-regex","regex-escape","shuffle","fisher-yates","randomize","partition","split","bifurcate","normalize-email","email","deburr","diacritic","accent","remove-accents","memo","memoize","cache","ttl-cache","copy-to-clipboard","clipboard","copy","compact","remove-falsy","clean-object","replace","swap","update-array","bind-key","bindkey","hotkey","keyboard-shortcut","keymap","seconds-to-time-format","time-format-to-seconds","format-seconds","parse-time","hh-mm-ss","mm-ss","duration","clock-format","flatten","unflatten","crush","construct","flatten-object","dot-notation","string-strength","entropy","shannon","password-strength","to-number","parse-number","numeric-extract","currency-parse","generate-string","random-string","secure-random","token","nanoid-alternative","crypto-random","is-mobile","mobile","device","user-agent","phone","tablet"],"author":{"name":"Pedro Troccoli","email":"contact@pedrotroccoli.com"},"license":"MIT","_id":"1o1-utils@1.10.0","maintainers":[{"name":"pedrotroccoli","email":"pedroaugustobelzkai@gmail.com"}],"homepage":"https://pedrotroccoli.github.io/1o1-utils","bugs":{"url":"https://github.com/pedrotroccoli/1o1-utils/issues"},"dist":{"shasum":"6dec89564f68d9ac728bf38b386dbae6cbeeb3b2","tarball":"https://registry.npmjs.org/1o1-utils/-/1o1-utils-1.10.0.tgz","fileCount":3,"integrity":"sha512-Kl+QI1Kdnf9w8Tvb7IGhrdmS0LPMpCF3NVP1XSsmlrNJd82WfPCMXDVw66PJttZ4h4AwKJ+IJ0jI3iJlZ5U5gA==","signatures":[{"sig":"MEUCICVRm+oeKCo6mrXjBH46DAzP2xXydbI7PxX/2k9dpSF7AiEAo0CsuZsUgWNJhTGFUXF9+XjWxQfVZDzlzgazDYDqCEo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":22075},"pnpm":{"overrides":{"diff@<4.0.4":">=4.0.4 <5","glob@<10.5.0":">=10.5.0","js-yaml@<4.1.1":">=4.1.1","minimatch@<9.0.7":">=9.0.7","diff@>=5.0.0 <8.0.3":">=8.0.3","brace-expansion@<1.1.12":">=1.1.12","serialize-javascript@<7.0.3":">=7.0.3","brace-expansion@>=2.0.0 <2.0.2":">=2.0.2"}},"type":"module","types":"dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./get":{"types":"./dist/objects/get/index.d.ts","import":"./dist/objects/get/index.js"},"./set":{"types":"./dist/objects/set/index.d.ts","import":"./dist/objects/set/index.js"},"./zip":{"types":"./dist/arrays/zip/index.d.ts","import":"./dist/arrays/zip/index.js"},"./diff":{"types":"./dist/arrays/diff/index.d.ts","import":"./dist/arrays/diff/index.js"},"./memo":{"types":"./dist/functions/memo/index.d.ts","import":"./dist/functions/memo/index.js"},"./omit":{"types":"./dist/objects/omit/index.d.ts","import":"./dist/objects/omit/index.js"},"./once":{"types":"./dist/functions/once/index.d.ts","import":"./dist/functions/once/index.js"},"./pick":{"types":"./dist/objects/pick/index.d.ts","import":"./dist/objects/pick/index.js"},"./pipe":{"types":"./dist/functions/pipe/index.d.ts","import":"./dist/functions/pipe/index.js"},"./chunk":{"types":"./dist/arrays/chunk/index.d.ts","import":"./dist/arrays/chunk/index.js"},"./clamp":{"types":"./dist/numbers/clamp/index.d.ts","import":"./dist/numbers/clamp/index.js"},"./range":{"types":"./dist/arrays/range/index.d.ts","import":"./dist/arrays/range/index.js"},"./retry":{"types":"./dist/async/retry/index.d.ts","import":"./dist/async/retry/index.js"},"./sleep":{"types":"./dist/async/sleep/index.d.ts","import":"./dist/async/sleep/index.js"},"./times":{"types":"./dist/arrays/times/index.d.ts","import":"./dist/arrays/times/index.js"},"./unzip":{"types":"./dist/arrays/unzip/index.d.ts","import":"./dist/arrays/unzip/index.js"},"./deburr":{"types":"./dist/strings/deburr/index.d.ts","import":"./dist/strings/deburr/index.js"},"./is-nil":{"types":"./dist/comparisons/is-nil/index.d.ts","import":"./dist/comparisons/is-nil/index.js"},"./safely":{"types":"./dist/async/safely/index.d.ts","import":"./dist/async/safely/index.js"},"./compact":{"types":"./dist/objects/compact/index.d.ts","import":"./dist/objects/compact/index.js"},"./flatten":{"types":"./dist/objects/flatten/index.d.ts","import":"./dist/objects/flatten/index.js"},"./replace":{"types":"./dist/arrays/replace/index.d.ts","import":"./dist/arrays/replace/index.js"},"./shuffle":{"types":"./dist/arrays/shuffle/index.d.ts","import":"./dist/arrays/shuffle/index.js"},"./slugify":{"types":"./dist/strings/slugify/index.d.ts","import":"./dist/strings/slugify/index.js"},"./sort-by":{"types":"./dist/arrays/sort-by/index.d.ts","import":"./dist/arrays/sort-by/index.js"},"./bind-key":{"types":"./dist/browser/bind-key/index.d.ts","import":"./dist/browser/bind-key/index.js"},"./debounce":{"types":"./dist/async/debounce/index.d.ts","import":"./dist/async/debounce/index.js"},"./defaults":{"types":"./dist/objects/defaults/index.d.ts","import":"./dist/objects/defaults/index.js"},"./group-by":{"types":"./dist/arrays/group-by/index.d.ts","import":"./dist/arrays/group-by/index.js"},"./in-range":{"types":"./dist/numbers/in-range/index.d.ts","import":"./dist/numbers/in-range/index.js"},"./is-empty":{"types":"./dist/objects/is-empty/index.d.ts","import":"./dist/objects/is-empty/index.js"},"./map-keys":{"types":"./dist/objects/map-keys/index.d.ts","import":"./dist/objects/map-keys/index.js"},"./parallel":{"types":"./dist/async/parallel/index.d.ts","import":"./dist/async/parallel/index.js"},"./throttle":{"types":"./dist/async/throttle/index.d.ts","import":"./dist/async/throttle/index.js"},"./truncate":{"types":"./dist/strings/truncate/index.d.ts","import":"./dist/strings/truncate/index.js"},"./is-mobile":{"types":"./dist/browser/is-mobile/index.d.ts","import":"./dist/browser/is-mobile/index.js"},"./partition":{"types":"./dist/arrays/partition/index.d.ts","import":"./dist/arrays/partition/index.js"},"./to-number":{"types":"./dist/numbers/to-number/index.d.ts","import":"./dist/numbers/to-number/index.js"},"./unflatten":{"types":"./dist/objects/unflatten/index.d.ts","import":"./dist/objects/unflatten/index.js"},"./capitalize":{"types":"./dist/strings/capitalize/index.d.ts","import":"./dist/strings/capitalize/index.js"},"./clone-deep":{"types":"./dist/objects/clone-deep/index.d.ts","import":"./dist/objects/clone-deep/index.js"},"./deep-equal":{"types":"./dist/comparisons/deep-equal/index.d.ts","import":"./dist/comparisons/deep-equal/index.js"},"./deep-merge":{"types":"./dist/objects/deep-merge/index.d.ts","import":"./dist/objects/deep-merge/index.js"},"./map-values":{"types":"./dist/objects/map-values/index.d.ts","import":"./dist/objects/map-values/index.js"},"./random-int":{"types":"./dist/numbers/random-int/index.d.ts","import":"./dist/numbers/random-int/index.js"},"./is-valid-url":{"types":"./dist/validators/is-valid-url/index.d.ts","import":"./dist/validators/is-valid-url/index.js"},"./with-timeout":{"types":"./dist/async/with-timeout/index.d.ts","import":"./dist/async/with-timeout/index.js"},"./array-to-hash":{"types":"./dist/arrays/array-to-hash/index.d.ts","import":"./dist/arrays/array-to-hash/index.js"},"./defaults-deep":{"types":"./dist/objects/defaults-deep/index.d.ts","import":"./dist/objects/defaults-deep/index.js"},"./shallow-equal":{"types":"./dist/comparisons/shallow-equal/index.d.ts","import":"./dist/comparisons/shallow-equal/index.js"},"./escape-reg-exp":{"types":"./dist/strings/escape-reg-exp/index.d.ts","import":"./dist/strings/escape-reg-exp/index.js"},"./is-valid-email":{"types":"./dist/validators/is-valid-email/index.d.ts","import":"./dist/validators/is-valid-email/index.js"},"./is-valid-phone":{"types":"./dist/validators/is-valid-phone/index.d.ts","import":"./dist/validators/is-valid-phone/index.js"},"./transform-case":{"types":"./dist/strings/transform-case/index.d.ts","import":"./dist/strings/transform-case/index.js"},"./generate-string":{"types":"./dist/strings/generate-string/index.d.ts","import":"./dist/strings/generate-string/index.js"},"./normalize-email":{"types":"./dist/strings/normalize-email/index.d.ts","import":"./dist/strings/normalize-email/index.js"},"./string-strength":{"types":"./dist/strings/string-strength/index.d.ts","import":"./dist/strings/string-strength/index.js"},"./copy-to-clipboard":{"types":"./dist/browser/copy-to-clipboard/index.d.ts","import":"./dist/browser/copy-to-clipboard/index.js"},"./wait-for-condition":{"types":"./dist/async/wait-for-condition/index.d.ts","import":"./dist/async/wait-for-condition/index.js"},"./seconds-to-time-format":{"types":"./dist/formatters/seconds-to-time-format/index.d.ts","import":"./dist/formatters/seconds-to-time-format/index.js"},"./time-format-to-seconds":{"types":"./dist/formatters/time-format-to-seconds/index.d.ts","import":"./dist/formatters/time-format-to-seconds/index.js"}},"scripts":{"dev":"tsx watch src/index.ts","lint":"biome lint ./src","size":"size-limit","test":"mocha","bench":"NODE_OPTIONS='--max-old-space-size=8192' tsx src/benchmarks/run.ts","build":"tsc","check":"biome check ./src","format":"biome format --write ./src","docs:dev":"cd website && pnpm dev","check:fix":"biome check --write ./src","size:json":"size-limit --json","docs:build":"cd website && pnpm build","docs:preview":"cd website && pnpm preview","test:coverage":"c8 mocha"},"_npmUser":{"name":"pedrotroccoli","email":"pedroaugustobelzkai@gmail.com"},"repository":{"url":"git+https://github.com/pedrotroccoli/1o1-utils.git","type":"git"},"_npmVersion":"11.12.1","description":"Fast, tree-shakeable, zero-dependency TypeScript utility library. Most utilities under 1 kB gzipped; full bundle ~10 kB. Fully typed, benchmarked for performance.","directories":{},"sideEffects":false,"_nodeVersion":"25.9.0","publishConfig":{"registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.9.0","devDependencies":{"c8":"^11.0.0","tsx":"^4.20.4","chai":"^6.2.2","mocha":"^11.7.5","bowser":"^2.14.1","lodash":"^4.18.1","radash":"^12.1.1","numeral":"^2.0.6","ts-node":"^10.9.2","happy-dom":"^20.9.0","is-mobile":"^5.0.0","mousetrap":"^1.6.5","tinybench":"^6.0.0","es-toolkit":"^1.45.1","fast-check":"^4.7.0","ismobilejs":"^1.1.1","size-limit":"^12.0.1","typescript":"^6.0.3","@types/chai":"^5.2.2","@types/mocha":"^10.0.10","ua-parser-js":"^2.0.9","@types/lodash":"^4.17.24","mobile-detect":"^1.4.5","@biomejs/biome":"^2.4.10","@types/numeral":"^2.0.5","@changesets/cli":"^2.30.0","@size-limit/file":"^12.0.1","@types/mousetrap":"^1.6.15","parse-decimal-number":"^1.0.0","@size-limit/preset-small-lib":"^12.0.1","@happy-dom/global-registrator":"^20.9.0"},"_npmOperationalInternal":{"tmp":"tmp/1o1-utils_1.10.0_1778608341450_0.7892732459929022","host":"s3://npm-registry-packages-npm-production"}},"1.10.1":{"name":"1o1-utils","version":"1.10.1","description":"Fast, tree-shakeable, zero-dependency TypeScript utility library. Most utilities under 500 B gzipped; full bundle ~13 kB gzipped. Fully typed, benchmarked for performance.","keywords":["utility","utilities","utils","typescript","javascript","tree-shakeable","zero-dependencies","esm","micro-modules","functional","chunk","pick","omit","get","set","debounce","throttle","deep-merge","clone-deep","group-by","sort-by","slugify","capitalize","truncate","retry","sleep","parallel","concurrency","semaphore","once","pipe","compose","flow","with-timeout","in-range","between","range-check","shallow-equal","deep-equal","is-equal","is-valid-url","validate-url","url-validator","is-valid-email","validate-email","email-validator","is-valid-phone","validate-phone","phone-validator","e164","safely","tryit","try-catch","is-nil","nullish","clamp","restrict","bound","zip","unzip","transpose","times","repeat","range","sequence","map-keys","map-values","escape-regexp","escape-regex","regex-escape","shuffle","fisher-yates","randomize","partition","split","bifurcate","normalize-email","email","deburr","diacritic","accent","remove-accents","memo","memoize","cache","ttl-cache","copy-to-clipboard","clipboard","copy","compact","remove-falsy","clean-object","replace","swap","update-array","bind-key","bindkey","hotkey","keyboard-shortcut","keymap","seconds-to-time-format","time-format-to-seconds","format-seconds","parse-time","hh-mm-ss","mm-ss","duration","clock-format","flatten","unflatten","crush","construct","flatten-object","dot-notation","string-strength","entropy","shannon","password-strength","to-number","parse-number","numeric-extract","currency-parse","generate-string","random-string","secure-random","token","nanoid-alternative","crypto-random","is-mobile","mobile","device","user-agent","phone","tablet"],"author":{"name":"Pedro Troccoli","email":"contact@pedrotroccoli.com"},"license":"MIT","homepage":"https://pedrotroccoli.github.io/1o1-utils","repository":{"type":"git","url":"git+https://github.com/pedrotroccoli/1o1-utils.git"},"bugs":{"url":"https://github.com/pedrotroccoli/1o1-utils/issues"},"type":"module","main":"./dist/index.js","module":"./dist/index.js","types":"dist/index.d.ts","sideEffects":false,"exports":{".":{"import":"./dist/index.js","types":"./dist/index.d.ts"},"./array-to-hash":{"import":"./dist/arrays/array-to-hash/index.js","types":"./dist/arrays/array-to-hash/index.d.ts"},"./chunk":{"import":"./dist/arrays/chunk/index.js","types":"./dist/arrays/chunk/index.d.ts"},"./diff":{"import":"./dist/arrays/diff/index.js","types":"./dist/arrays/diff/index.d.ts"},"./group-by":{"import":"./dist/arrays/group-by/index.js","types":"./dist/arrays/group-by/index.d.ts"},"./clone-deep":{"import":"./dist/objects/clone-deep/index.js","types":"./dist/objects/clone-deep/index.d.ts"},"./compact":{"import":"./dist/objects/compact/index.js","types":"./dist/objects/compact/index.d.ts"},"./deep-merge":{"import":"./dist/objects/deep-merge/index.js","types":"./dist/objects/deep-merge/index.d.ts"},"./defaults":{"import":"./dist/objects/defaults/index.js","types":"./dist/objects/defaults/index.d.ts"},"./defaults-deep":{"import":"./dist/objects/defaults-deep/index.js","types":"./dist/objects/defaults-deep/index.d.ts"},"./flatten":{"import":"./dist/objects/flatten/index.js","types":"./dist/objects/flatten/index.d.ts"},"./get":{"import":"./dist/objects/get/index.js","types":"./dist/objects/get/index.d.ts"},"./omit":{"import":"./dist/objects/omit/index.js","types":"./dist/objects/omit/index.d.ts"},"./pick":{"import":"./dist/objects/pick/index.js","types":"./dist/objects/pick/index.d.ts"},"./set":{"import":"./dist/objects/set/index.js","types":"./dist/objects/set/index.d.ts"},"./unflatten":{"import":"./dist/objects/unflatten/index.js","types":"./dist/objects/unflatten/index.d.ts"},"./sort-by":{"import":"./dist/arrays/sort-by/index.js","types":"./dist/arrays/sort-by/index.d.ts"},"./in-range":{"import":"./dist/numbers/in-range/index.js","types":"./dist/numbers/in-range/index.d.ts"},"./is-circular":{"import":"./dist/objects/is-circular/index.js","types":"./dist/objects/is-circular/index.d.ts"},"./is-empty":{"import":"./dist/objects/is-empty/index.js","types":"./dist/objects/is-empty/index.d.ts"},"./map-keys":{"import":"./dist/objects/map-keys/index.js","types":"./dist/objects/map-keys/index.d.ts"},"./map-values":{"import":"./dist/objects/map-values/index.js","types":"./dist/objects/map-values/index.d.ts"},"./sleep":{"import":"./dist/async/sleep/index.js","types":"./dist/async/sleep/index.d.ts"},"./retry":{"import":"./dist/async/retry/index.js","types":"./dist/async/retry/index.d.ts"},"./parallel":{"import":"./dist/async/parallel/index.js","types":"./dist/async/parallel/index.d.ts"},"./safely":{"import":"./dist/async/safely/index.js","types":"./dist/async/safely/index.d.ts"},"./capitalize":{"import":"./dist/strings/capitalize/index.js","types":"./dist/strings/capitalize/index.d.ts"},"./escape-reg-exp":{"import":"./dist/strings/escape-reg-exp/index.js","types":"./dist/strings/escape-reg-exp/index.d.ts"},"./debounce":{"import":"./dist/async/debounce/index.js","types":"./dist/async/debounce/index.d.ts"},"./slugify":{"import":"./dist/strings/slugify/index.js","types":"./dist/strings/slugify/index.d.ts"},"./throttle":{"import":"./dist/async/throttle/index.js","types":"./dist/async/throttle/index.d.ts"},"./transform-case":{"import":"./dist/strings/transform-case/index.js","types":"./dist/strings/transform-case/index.d.ts"},"./truncate":{"import":"./dist/strings/truncate/index.js","types":"./dist/strings/truncate/index.d.ts"},"./with-timeout":{"import":"./dist/async/with-timeout/index.js","types":"./dist/async/with-timeout/index.d.ts"},"./wait-for-condition":{"import":"./dist/async/wait-for-condition/index.js","types":"./dist/async/wait-for-condition/index.d.ts"},"./once":{"import":"./dist/functions/once/index.js","types":"./dist/functions/once/index.d.ts"},"./pipe":{"import":"./dist/functions/pipe/index.js","types":"./dist/functions/pipe/index.d.ts"},"./range":{"import":"./dist/arrays/range/index.js","types":"./dist/arrays/range/index.d.ts"},"./shallow-equal":{"import":"./dist/comparisons/shallow-equal/index.js","types":"./dist/comparisons/shallow-equal/index.d.ts"},"./deep-equal":{"import":"./dist/comparisons/deep-equal/index.js","types":"./dist/comparisons/deep-equal/index.d.ts"},"./is-valid-email":{"import":"./dist/validators/is-valid-email/index.js","types":"./dist/validators/is-valid-email/index.d.ts"},"./is-valid-phone":{"import":"./dist/validators/is-valid-phone/index.js","types":"./dist/validators/is-valid-phone/index.d.ts"},"./is-valid-url":{"import":"./dist/validators/is-valid-url/index.js","types":"./dist/validators/is-valid-url/index.d.ts"},"./is-nil":{"import":"./dist/comparisons/is-nil/index.js","types":"./dist/comparisons/is-nil/index.d.ts"},"./clamp":{"import":"./dist/numbers/clamp/index.js","types":"./dist/numbers/clamp/index.d.ts"},"./zip":{"import":"./dist/arrays/zip/index.js","types":"./dist/arrays/zip/index.d.ts"},"./unzip":{"import":"./dist/arrays/unzip/index.js","types":"./dist/arrays/unzip/index.d.ts"},"./times":{"import":"./dist/arrays/times/index.js","types":"./dist/arrays/times/index.d.ts"},"./random-int":{"import":"./dist/numbers/random-int/index.js","types":"./dist/numbers/random-int/index.d.ts"},"./shuffle":{"import":"./dist/arrays/shuffle/index.js","types":"./dist/arrays/shuffle/index.d.ts"},"./partition":{"import":"./dist/arrays/partition/index.js","types":"./dist/arrays/partition/index.d.ts"},"./normalize-email":{"import":"./dist/strings/normalize-email/index.js","types":"./dist/strings/normalize-email/index.d.ts"},"./deburr":{"import":"./dist/strings/deburr/index.js","types":"./dist/strings/deburr/index.d.ts"},"./memo":{"import":"./dist/functions/memo/index.js","types":"./dist/functions/memo/index.d.ts"},"./copy-to-clipboard":{"import":"./dist/browser/copy-to-clipboard/index.js","types":"./dist/browser/copy-to-clipboard/index.d.ts"},"./replace":{"import":"./dist/arrays/replace/index.js","types":"./dist/arrays/replace/index.d.ts"},"./bind-key":{"import":"./dist/browser/bind-key/index.js","types":"./dist/browser/bind-key/index.d.ts"},"./seconds-to-time-format":{"import":"./dist/formatters/seconds-to-time-format/index.js","types":"./dist/formatters/seconds-to-time-format/index.d.ts"},"./time-format-to-seconds":{"import":"./dist/formatters/time-format-to-seconds/index.js","types":"./dist/formatters/time-format-to-seconds/index.d.ts"},"./string-strength":{"import":"./dist/strings/string-strength/index.js","types":"./dist/strings/string-strength/index.d.ts"},"./to-number":{"import":"./dist/numbers/to-number/index.js","types":"./dist/numbers/to-number/index.d.ts"},"./generate-string":{"import":"./dist/strings/generate-string/index.js","types":"./dist/strings/generate-string/index.d.ts"},"./is-mobile":{"import":"./dist/browser/is-mobile/index.js","types":"./dist/browser/is-mobile/index.d.ts"}},"scripts":{"test":"mocha","test:coverage":"c8 mocha","build":"tsc","dev":"tsx watch src/index.ts","lint":"biome lint ./src","format":"biome format --write ./src","check":"biome check ./src","check:fix":"biome check --write ./src","bench":"NODE_OPTIONS='--max-old-space-size=8192' tsx src/benchmarks/run.ts","size":"size-limit","size:json":"size-limit --json","docs:dev":"cd website && pnpm dev","docs:build":"cd website && pnpm build","docs:preview":"cd website && pnpm preview"},"packageManager":"pnpm@10.9.0","engines":{"node":">=20"},"pnpm":{"overrides":{"glob@<10.5.0":">=10.5.0","minimatch@<9.0.7":">=9.0.7","serialize-javascript@<7.0.3":">=7.0.3","js-yaml@<4.1.1":">=4.1.1","brace-expansion@<1.1.12":">=1.1.12","brace-expansion@>=2.0.0 <2.0.2":">=2.0.2","diff@<4.0.4":">=4.0.4 <5","diff@>=5.0.0 <8.0.3":">=8.0.3"}},"publishConfig":{"registry":"https://registry.npmjs.org"},"devDependencies":{"@biomejs/biome":"^2.4.10","@changesets/cli":"^2.30.0","@happy-dom/global-registrator":"^20.9.0","@size-limit/file":"^12.0.1","@size-limit/preset-small-lib":"^12.0.1","@types/chai":"^5.2.2","@types/lodash":"^4.17.24","@types/mocha":"^10.0.10","@types/mousetrap":"^1.6.15","@types/numeral":"^2.0.5","bowser":"^2.14.1","c8":"^11.0.0","chai":"^6.2.2","dequal":"^2.0.3","es-toolkit":"^1.45.1","fast-check":"^4.7.0","happy-dom":"^20.9.0","is-mobile":"^5.0.0","ismobilejs":"^1.1.1","lodash":"^4.18.1","mobile-detect":"^1.4.5","mocha":"^11.7.5","mousetrap":"^1.6.5","numeral":"^2.0.6","parse-decimal-number":"^1.0.0","radash":"^12.1.1","size-limit":"^12.0.1","tinybench":"^6.0.0","ts-node":"^10.9.2","tsx":"^4.20.4","typescript":"^6.0.3","ua-parser-js":"^2.0.9"},"_id":"1o1-utils@1.10.1","gitHead":"9d1ea2cba448a833c7d1b2845e5bdd1c4950b25d","_nodeVersion":"22.22.3","_npmVersion":"10.9.8","dist":{"integrity":"sha512-DhSSrgunHFeq7FiALon6j+PKXYAMyIQHAXb4NZt+8tR90My6pK79T7bD1lyU0vXDGE1UsB10Mon27YROJLRbCg==","shasum":"016dae910f7471923b338e01b22290d3cd47ce9d","tarball":"https://registry.npmjs.org/1o1-utils/-/1o1-utils-1.10.1.tgz","fileCount":396,"unpackedSize":423376,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIAo38OxQLE1lKtkdDkcKfwBWqpSlD10dL/Vm2x2AxAypAiBm13S/9SCu6ykFI70Cugtn/WAl6lxrt/vwn1A43Kx9wg=="}]},"_npmUser":{"name":"pedrotroccoli","email":"pedroaugustobelzkai@gmail.com"},"directories":{},"maintainers":[{"name":"pedrotroccoli","email":"pedroaugustobelzkai@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/1o1-utils_1.10.1_1781545896062_0.14262340282892172"},"_hasShrinkwrap":false}},"time":{"created":"2025-06-29T10:31:11.088Z","modified":"2026-06-15T17:51:36.331Z","1.0.1":"2025-06-29T10:31:11.365Z","1.1.0":"2025-08-21T13:10:01.597Z","1.4.0":"2026-04-15T02:07:02.392Z","1.5.0":"2026-04-17T21:19:23.206Z","1.7.0":"2026-04-24T15:52:58.497Z","1.7.1":"2026-04-29T14:01:08.500Z","1.8.0":"2026-05-03T02:34:41.060Z","1.9.0":"2026-05-03T16:55:04.147Z","1.10.0":"2026-05-12T17:52:21.589Z","1.10.1":"2026-06-15T17:51:36.242Z"},"bugs":{"url":"https://github.com/pedrotroccoli/1o1-utils/issues"},"author":{"name":"Pedro Troccoli","email":"contact@pedrotroccoli.com"},"license":"MIT","homepage":"https://pedrotroccoli.github.io/1o1-utils","keywords":["utility","utilities","utils","typescript","javascript","tree-shakeable","zero-dependencies","esm","micro-modules","functional","chunk","pick","omit","get","set","debounce","throttle","deep-merge","clone-deep","group-by","sort-by","slugify","capitalize","truncate","retry","sleep","parallel","concurrency","semaphore","once","pipe","compose","flow","with-timeout","in-range","between","range-check","shallow-equal","deep-equal","is-equal","is-valid-url","validate-url","url-validator","is-valid-email","validate-email","email-validator","is-valid-phone","validate-phone","phone-validator","e164","safely","tryit","try-catch","is-nil","nullish","clamp","restrict","bound","zip","unzip","transpose","times","repeat","range","sequence","map-keys","map-values","escape-regexp","escape-regex","regex-escape","shuffle","fisher-yates","randomize","partition","split","bifurcate","normalize-email","email","deburr","diacritic","accent","remove-accents","memo","memoize","cache","ttl-cache","copy-to-clipboard","clipboard","copy","compact","remove-falsy","clean-object","replace","swap","update-array","bind-key","bindkey","hotkey","keyboard-shortcut","keymap","seconds-to-time-format","time-format-to-seconds","format-seconds","parse-time","hh-mm-ss","mm-ss","duration","clock-format","flatten","unflatten","crush","construct","flatten-object","dot-notation","string-strength","entropy","shannon","password-strength","to-number","parse-number","numeric-extract","currency-parse","generate-string","random-string","secure-random","token","nanoid-alternative","crypto-random","is-mobile","mobile","device","user-agent","phone","tablet"],"repository":{"type":"git","url":"git+https://github.com/pedrotroccoli/1o1-utils.git"},"description":"Fast, tree-shakeable, zero-dependency TypeScript utility library. Most utilities under 500 B gzipped; full bundle ~13 kB gzipped. Fully typed, benchmarked for performance.","maintainers":[{"name":"pedrotroccoli","email":"pedroaugustobelzkai@gmail.com"}],"readme":"<p align=\"center\">\n  <img src=\"https://raw.githubusercontent.com/pedrotroccoli/1o1-utils/main/website/public/logo.png\" alt=\"1o1-utils logo\" width=\"240\">\n  <h1 align=\"center\">1o1-utils</h1>\n  <p align=\"center\">Lightweight, tree-shakeable, zero-dependency TypeScript utilities. Pay only for what you import.</p>\n</p>\n\n<p align=\"center\">\n  <a href=\"https://github.com/pedrotroccoli/1o1-utils/actions/workflows/ci.yml\"><img src=\"https://github.com/pedrotroccoli/1o1-utils/actions/workflows/ci.yml/badge.svg\" alt=\"CI\"></a>\n  <a href=\"https://www.npmjs.com/package/1o1-utils\"><img src=\"https://img.shields.io/npm/v/1o1-utils\" alt=\"npm version\"></a>\n  <a href=\"https://bundlephobia.com/package/1o1-utils\"><img src=\"https://img.shields.io/bundlephobia/minzip/1o1-utils\" alt=\"bundle size\"></a>\n  <a href=\"https://github.com/pedrotroccoli/1o1-utils/blob/main/LICENSE\"><img src=\"https://img.shields.io/npm/l/1o1-utils\" alt=\"license\"></a>\n  <a href=\"https://scorecard.dev/viewer/?uri=github.com/pedrotroccoli/1o1-utils\"><img src=\"https://api.scorecard.dev/projects/github.com/pedrotroccoli/1o1-utils/badge\" alt=\"OpenSSF Scorecard\"></a>\n</p>\n\n---\n\n## Features\n\n- **Tree-shakeable** — every utility ships from its own subpath; bundlers drop everything you don't import.\n- **Zero dependencies** — no transitive bloat, no supply-chain risk.\n- **TypeScript-first** — full type inference and strict null safety out of the box.\n- **Tiny per-utility footprint** — most utilities are **under 500 B brotlied**; the largest is ~1.2 kB.\n- **Benchmarked** — measured against lodash, radash, es-toolkit, and native JavaScript — up to 11× faster on the slowest competitor.\n- **Interactive playground** — every utility has a \"Try it\" block on its docs page that runs `1o1-utils` directly from npm.\n\n## Install\n\n```bash\npnpm add 1o1-utils\n```\n\n```bash\nnpm install 1o1-utils\n```\n\n```bash\nyarn add 1o1-utils\n```\n\n## Usage\n\nImport everything from the main entry:\n\n```ts\nimport { chunk, pick, slugify, retry } from \"1o1-utils\";\n```\n\nOr import individual modules for minimal bundles:\n\n```ts\nimport { chunk } from \"1o1-utils/chunk\";\nimport { pick } from \"1o1-utils/pick\";\n```\n\n## Utilities\n\n### Arrays\n\n| Utility | Description | Import |\n| --- | --- | --- |\n| `arrayToHash` | Convert an array to a keyed object | `1o1-utils/array-to-hash` |\n| `chunk` | Split an array into fixed-size chunks | `1o1-utils/chunk` |\n| `diff` | Elements in array A not in array B | `1o1-utils/diff` |\n| `groupBy` | Group array items by a key | `1o1-utils/group-by` |\n| `partition` | Split into `[matches, rest]` by predicate | `1o1-utils/partition` |\n| `range` | Generate a numeric range as an array | `1o1-utils/range` |\n| `replace` | Replace element(s) by predicate (immutable) | `1o1-utils/replace` |\n| `shuffle` | Fisher-Yates shuffle (non-mutating) | `1o1-utils/shuffle` |\n| `sortBy` | Sort an array by a key | `1o1-utils/sort-by` |\n| `times` | Invoke `fn` N times and collect results | `1o1-utils/times` |\n| `unique` | Deduplicate an array (optionally by key) | `1o1-utils/unique` |\n| `unzip` | Split an array of tuples into separate arrays | `1o1-utils/unzip` |\n| `zip` | Combine arrays into tuples by index | `1o1-utils/zip` |\n\n### Numbers\n\n| Utility | Description | Import |\n| --- | --- | --- |\n| `clamp` | Clamp a value to `[min, max]` | `1o1-utils/clamp` |\n| `inRange` | Check if a number is in a range | `1o1-utils/in-range` |\n| `randomInt` | CSPRNG random integer in a range | `1o1-utils/random-int` |\n\n### Objects\n\n| Utility | Description | Import |\n| --- | --- | --- |\n| `cloneDeep` | Deep clone (objects, arrays, Maps, Sets, etc.) | `1o1-utils/clone-deep` |\n| `compact` | Remove falsy values (with `keep` exceptions) | `1o1-utils/compact` |\n| `deepMerge` | Recursively merge objects | `1o1-utils/deep-merge` |\n| `defaults` | Fill `undefined` keys with defaults | `1o1-utils/defaults` |\n| `defaultsDeep` | Recursive `defaults` | `1o1-utils/defaults-deep` |\n| `get` | Read a nested value via dot notation | `1o1-utils/get` |\n| `isCircular` | Detect circular references in objects/arrays/Maps/Sets | `1o1-utils/is-circular` |\n| `isEmpty` | Check if a value is empty | `1o1-utils/is-empty` |\n| `mapKeys` | Transform object keys via an iteratee | `1o1-utils/map-keys` |\n| `mapValues` | Transform object values via an iteratee | `1o1-utils/map-values` |\n| `omit` | Remove keys from an object | `1o1-utils/omit` |\n| `omitBy` | Remove entries by predicate | `1o1-utils/omit-by` |\n| `pick` | Extract keys from an object | `1o1-utils/pick` |\n| `pickBy` | Keep entries by predicate | `1o1-utils/pick-by` |\n| `set` | Set a nested value immutably via dot notation | `1o1-utils/set` |\n\n### Strings\n\n| Utility | Description | Import |\n| --- | --- | --- |\n| `capitalize` | Capitalize the first letter | `1o1-utils/capitalize` |\n| `deburr` | Strip diacritics (accent-fold) | `1o1-utils/deburr` |\n| `escapeRegExp` | Escape regex metacharacters | `1o1-utils/escape-reg-exp` |\n| `generateString` | Cryptographically-secure random string generator | `1o1-utils/generate-string` |\n| `normalizeEmail` | Trim, lowercase, optional plus-strip | `1o1-utils/normalize-email` |\n| `slugify` | Convert to a URL-friendly slug | `1o1-utils/slugify` |\n| `transformCase` | Change string casing (camel, snake, etc.) | `1o1-utils/transform-case` |\n| `truncate` | Truncate a string with a suffix | `1o1-utils/truncate` |\n\n### Async\n\n| Utility | Description | Import |\n| --- | --- | --- |\n| `debounce` | Debounce function calls | `1o1-utils/debounce` |\n| `retry` | Retry failed async operations with backoff | `1o1-utils/retry` |\n| `safely` | Wrap a function to return `[error, result]` | `1o1-utils/safely` |\n| `sleep` | Promise-based delay | `1o1-utils/sleep` |\n| `throttle` | Throttle function calls | `1o1-utils/throttle` |\n| `waitForCondition` | Poll a predicate until truthy or timeout | `1o1-utils/wait-for-condition` |\n| `withTimeout` | Race a promise against a timeout | `1o1-utils/with-timeout` |\n\n### Comparisons\n\n| Utility | Description | Import |\n| --- | --- | --- |\n| `deepEqual` | Recursive structural equality | `1o1-utils/deep-equal` |\n| `isNil` | `null` or `undefined` check | `1o1-utils/is-nil` |\n| `shallowEqual` | Top-level entry equality | `1o1-utils/shallow-equal` |\n\n### Formatters\n\n| Utility | Description | Import |\n| --- | --- | --- |\n| `secondsToTimeFormat` | Format seconds as `MM:SS` / `H:MM:SS` | `1o1-utils/seconds-to-time-format` |\n| `timeFormatToSeconds` | Parse `MM:SS` / `H:MM:SS` into seconds | `1o1-utils/time-format-to-seconds` |\n\n### Functions\n\n| Utility | Description | Import |\n| --- | --- | --- |\n| `memo` | Memoize a function with optional TTL | `1o1-utils/memo` |\n| `once` | Run only once, cache the first result | `1o1-utils/once` |\n| `pipe` | Compose functions left-to-right | `1o1-utils/pipe` |\n\n### Validators\n\n| Utility | Description | Import |\n| --- | --- | --- |\n| `isValidEmail` | HTML5 + RFC 5321 email check | `1o1-utils/is-valid-email` |\n| `isValidPhone` | E.164 international phone check | `1o1-utils/is-valid-phone` |\n| `isValidUrl` | WHATWG `URL` parseable check | `1o1-utils/is-valid-url` |\n\n### Browser\n\n| Utility | Description | Import |\n| --- | --- | --- |\n| `bindKey` | Keyboard shortcuts (combos + sequences) | `1o1-utils/bind-key` |\n| `copyToClipboard` | Clipboard API + `execCommand` fallback | `1o1-utils/copy-to-clipboard` |\n\n## Bundle size\n\nRun `pnpm size` to see per-utility brotli sizes locally. Sample from the latest release:\n\n| Utility | Brotli size |\n| --- | --- |\n| `isNil` | 36 B |\n| `clamp` | 150 B |\n| `chunk` | 199 B |\n| `deepEqual` | 739 B |\n| `bindKey` | 1.05 kB |\n| `isValidPhone` | 1.19 kB |\n| **Whole library (all utilities)** | **~11.6 kB brotli / ~13 kB gzipped** |\n\nTree-shaking removes everything you don't import — typical real-world bundles add a few hundred bytes per utility, not the whole 13 kB.\n\n## Benchmarks\n\nAll utilities are benchmarked against lodash, radash, es-toolkit, and native JavaScript.\n\n| Utility | vs lodash | vs radash | vs native |\n| --- | --- | --- | --- |\n| arrayToHash / keyBy | on par | on par | on par |\n| chunk | **4.9× faster** | on par | on par |\n| groupBy | **1.3× faster** | on par | 1.1× slower |\n| unique (by key) | **2.7× faster** | **1.6× faster** | on par |\n| pick | **3.3× faster** | on par | — |\n\n> Run `pnpm bench` to reproduce locally. See [full benchmark results](./docs/benchmarks/README.md).\n\n## Documentation\n\nFull API reference, interactive playground, and migration guides at **[pedrotroccoli.github.io/1o1-utils](https://pedrotroccoli.github.io/1o1-utils)**.\n\nEvery utility page includes a **Try it** block — Sandpack-powered, runs `1o1-utils` straight from npm in your browser. No install needed to experiment.\n\n## Contributing\n\nContributions are welcome! Check out the [Contributing Guide](./CONTRIBUTING.md) to get started.\n\n## License\n\n[MIT](./LICENSE) — Pedro Troccoli\n","readmeFilename":"README.md"}