{"_id":"@aklinker1/zero-factory","_rev":"15-c76b40f9cbf7a10fb94457c30a51cbb7","name":"@aklinker1/zero-factory","dist-tags":{"latest":"1.2.1"},"versions":{"0.1.1":{"name":"@aklinker1/zero-factory","version":"0.1.1","license":"MIT","_id":"@aklinker1/zero-factory@0.1.1","maintainers":[{"name":"_aklinker1","email":"aaronklinker1@gmail.com"}],"dist":{"shasum":"fb8d214ef9d0c0c08688a3c506f105d619750505","tarball":"https://registry.npmjs.org/@aklinker1/zero-factory/-/zero-factory-0.1.1.tgz","fileCount":8,"integrity":"sha512-9AkRGfFPmV+ugST5V122Mb5FhIoT54+ANh2kF3R4Sl3CUmt9UxQBxgAY7v3EXXj5Qef/Gp8nq6WUqCZC3y/V3w==","signatures":[{"sig":"MEYCIQD3H8Hzbu1xb7S1hjS99Tc4ToObVrPw6smylHrFB4kyKQIhANowFEJe36URBKyub/uZ3+DaRpTphEA4LALRUMOwM4pc","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":14665},"type":"module","shasum":"fb8d214ef9d0c0c08688a3c506f105d619750505","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"bun test","build":"bun run build.ts","test:watch":"bun test --watch"},"_npmUser":{"name":"_aklinker1","email":"aaronklinker1@gmail.com"},"_integrity":"sha512-9AkRGfFPmV+ugST5V122Mb5FhIoT54+ANh2kF3R4Sl3CUmt9UxQBxgAY7v3EXXj5Qef/Gp8nq6WUqCZC3y/V3w==","_npmVersion":"10.8.3","description":"Zero dependency object factory generator for testing","directories":{},"_nodeVersion":"24.3.0","_hasShrinkwrap":false,"packageManager":"bun@1.2.20","devDependencies":{"jsr":"^0.13.5","oxlint":"^1.11.2","publint":"^0.3.12","prettier":"^3.6.2","@types/bun":"latest","typescript":"^5","@aklinker1/check":"^2.1.0"},"_npmOperationalInternal":{"tmp":"tmp/zero-factory_0.1.1_1755145153074_0.23274675105592246","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@aklinker1/zero-factory","version":"0.1.2","keywords":["factory","test","fixture"],"license":"MIT","_id":"@aklinker1/zero-factory@0.1.2","maintainers":[{"name":"_aklinker1","email":"aaronklinker1@gmail.com"}],"dist":{"shasum":"3b8dd786e9510a62f5a690743958d15ecaa2641e","tarball":"https://registry.npmjs.org/@aklinker1/zero-factory/-/zero-factory-0.1.2.tgz","fileCount":8,"integrity":"sha512-5hq4/YirOBhqVN55ZfHOy7ML4GdJ/6HJOb9X8lwY9N3lDQkCQzcKwfBhIb5uWMcpE+eaDniAil3wPRLAiuTlJg==","signatures":[{"sig":"MEYCIQDm+QsSDXMBWoke0usC1GMfo3APc7x6hrpavhvshNRFNAIhANi9lqRMuBEH66emj0yVNAXAnLCL0Uf52hXV2HsUOs32","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":14727},"type":"module","shasum":"3b8dd786e9510a62f5a690743958d15ecaa2641e","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"bun test","build":"bun run build.ts","test:watch":"bun test --watch"},"_npmUser":{"name":"_aklinker1","email":"aaronklinker1@gmail.com"},"_integrity":"sha512-5hq4/YirOBhqVN55ZfHOy7ML4GdJ/6HJOb9X8lwY9N3lDQkCQzcKwfBhIb5uWMcpE+eaDniAil3wPRLAiuTlJg==","_npmVersion":"10.8.3","description":"Zero dependency object factory generator for testing","directories":{},"_nodeVersion":"24.3.0","_hasShrinkwrap":false,"packageManager":"bun@1.2.20","devDependencies":{"jsr":"^0.13.5","oxlint":"^1.11.2","publint":"^0.3.12","prettier":"^3.6.2","@types/bun":"latest","typescript":"^5","@aklinker1/check":"^2.1.0"},"_npmOperationalInternal":{"tmp":"tmp/zero-factory_0.1.2_1755145509486_0.30545685996480665","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@aklinker1/zero-factory","version":"0.1.3","keywords":["factory","test","fixture"],"license":"MIT","_id":"@aklinker1/zero-factory@0.1.3","maintainers":[{"name":"_aklinker1","email":"aaronklinker1@gmail.com"}],"dist":{"shasum":"1996fb2cca31aa9d9edd5dcbab5b938c7f93d5fd","tarball":"https://registry.npmjs.org/@aklinker1/zero-factory/-/zero-factory-0.1.3.tgz","fileCount":8,"integrity":"sha512-exYl1j+NbwwGjcZdRG96KHC8Otpin891RFm5dPK3sOVTBvoLWoIlaF4K2JdAZURMOYki+X6cgKEnzE2y7bM5Sw==","signatures":[{"sig":"MEYCIQDYA4+5+Iv6kii6yVRR/HDmb4aloI882JBHDmRNCnZjegIhAJcNwaX1gFGTuDlBVK3cIjjdxSbbxV4jCM0St5q82nXn","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16133},"type":"module","shasum":"1996fb2cca31aa9d9edd5dcbab5b938c7f93d5fd","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"bun test","build":"bun run build.ts","test:watch":"bun test --watch"},"_npmUser":{"name":"_aklinker1","email":"aaronklinker1@gmail.com"},"_integrity":"sha512-exYl1j+NbwwGjcZdRG96KHC8Otpin891RFm5dPK3sOVTBvoLWoIlaF4K2JdAZURMOYki+X6cgKEnzE2y7bM5Sw==","_npmVersion":"10.8.3","description":"Zero dependency object factory generator for testing","directories":{},"_nodeVersion":"24.3.0","_hasShrinkwrap":false,"packageManager":"bun@1.2.20","devDependencies":{"jsr":"^0.13.5","oxlint":"^1.11.2","publint":"^0.3.12","prettier":"^3.6.2","@types/bun":"latest","typescript":"^5","@aklinker1/check":"^2.1.0"},"_npmOperationalInternal":{"tmp":"tmp/zero-factory_0.1.3_1755801671667_0.6089810660877684","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"@aklinker1/zero-factory","version":"0.1.4","keywords":["factory","test","fixture"],"license":"MIT","_id":"@aklinker1/zero-factory@0.1.4","maintainers":[{"name":"_aklinker1","email":"aaronklinker1@gmail.com"}],"dist":{"shasum":"93185063c65f4a03a8044f767e2982b018018d96","tarball":"https://registry.npmjs.org/@aklinker1/zero-factory/-/zero-factory-0.1.4.tgz","fileCount":8,"integrity":"sha512-m2fKcxMe9qqsrYsrwdqPz+zp19CdvUBczQG7Gjp2BTlvtZg0X42KQehd1gAcjNQZNqwcb4+2212Q+Y/fYMAaIA==","signatures":[{"sig":"MEUCICXcoSlguhRQmUeoywenkPAit5HgFr70qWfGyORO94pJAiEAs39gr7HTDSyQuX1utJrmKl7zyJO2jS9ni0N7xiYk5fs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16072},"type":"module","shasum":"93185063c65f4a03a8044f767e2982b018018d96","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"bun test","build":"bun run build.ts","test:watch":"bun test --watch"},"_npmUser":{"name":"_aklinker1","email":"aaronklinker1@gmail.com"},"_integrity":"sha512-m2fKcxMe9qqsrYsrwdqPz+zp19CdvUBczQG7Gjp2BTlvtZg0X42KQehd1gAcjNQZNqwcb4+2212Q+Y/fYMAaIA==","_npmVersion":"10.8.3","description":"Zero dependency object factory generator for testing","directories":{},"_nodeVersion":"24.3.0","_hasShrinkwrap":false,"packageManager":"bun@1.2.20","devDependencies":{"jsr":"^0.13.5","oxlint":"^1.11.2","publint":"^0.3.12","prettier":"^3.6.2","@types/bun":"latest","typescript":"^5","@aklinker1/check":"^2.1.0"},"_npmOperationalInternal":{"tmp":"tmp/zero-factory_0.1.4_1755801740613_0.39314733696543414","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"@aklinker1/zero-factory","version":"1.0.0","keywords":["factory","test","fixture"],"license":"MIT","_id":"@aklinker1/zero-factory@1.0.0","maintainers":[{"name":"_aklinker1","email":"aaronklinker1@gmail.com"}],"dist":{"shasum":"afea4e9f4aab68ac31bafacf0e3679201ea5907a","tarball":"https://registry.npmjs.org/@aklinker1/zero-factory/-/zero-factory-1.0.0.tgz","fileCount":8,"integrity":"sha512-ROOPCklTrarHLqIptmJQCgdKdBQ543S9ovXLmbGXAMP0mL/3onUSmERYjJZMQfPiiD2bIxLab0uIVhX3wwqLUA==","signatures":[{"sig":"MEYCIQDR9GQyaQQ0NlXsdp3pe73b7O7Cf5QNAlaluu+DLmTPDwIhALGmYKfAqBuvuuqmUCYKSNvq479brGFyRy5tl1td7ivD","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16263},"type":"module","shasum":"afea4e9f4aab68ac31bafacf0e3679201ea5907a","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"bun test","build":"bun run build.ts","test:watch":"bun test --watch"},"_npmUser":{"name":"_aklinker1","email":"aaronklinker1@gmail.com"},"_integrity":"sha512-ROOPCklTrarHLqIptmJQCgdKdBQ543S9ovXLmbGXAMP0mL/3onUSmERYjJZMQfPiiD2bIxLab0uIVhX3wwqLUA==","_npmVersion":"10.8.3","description":"Zero dependency object factory generator for testing","directories":{},"_nodeVersion":"24.3.0","_hasShrinkwrap":false,"packageManager":"bun@1.2.20","devDependencies":{"jsr":"^0.13.5","oxlint":"^1.11.2","publint":"^0.3.12","prettier":"^3.6.2","@types/bun":"latest","typescript":"^5","@aklinker1/check":"^2.1.0"},"_npmOperationalInternal":{"tmp":"tmp/zero-factory_1.0.0_1758567592509_0.06484617688291139","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@aklinker1/zero-factory","version":"1.0.1","keywords":["factory","test","fixture"],"license":"MIT","_id":"@aklinker1/zero-factory@1.0.1","maintainers":[{"name":"_aklinker1","email":"aaronklinker1@gmail.com"}],"dist":{"shasum":"d138cae113f2ceadfc01621d6621dedf02708562","tarball":"https://registry.npmjs.org/@aklinker1/zero-factory/-/zero-factory-1.0.1.tgz","fileCount":8,"integrity":"sha512-LdVRWanAA/9ZRVKQCuoOkEZXv2z9hO7fInHRCQdXwLTEcKVZqgbUZmxMRR83ok3gcQZfgxzfzfSqlS6lyy+SuQ==","signatures":[{"sig":"MEUCIQDkXHlOUJWIkHr6K/pDdjX1yvO5XlPeYMCCB6i55qnenAIgJzq45ZbIw4SzA8EJUuPmwqiAL/VRfGJDaTEs8rbbGiY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16270},"type":"module","shasum":"d138cae113f2ceadfc01621d6621dedf02708562","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"bun test","build":"bun run build.ts","test:watch":"bun test --watch"},"_npmUser":{"name":"_aklinker1","email":"aaronklinker1@gmail.com"},"_integrity":"sha512-LdVRWanAA/9ZRVKQCuoOkEZXv2z9hO7fInHRCQdXwLTEcKVZqgbUZmxMRR83ok3gcQZfgxzfzfSqlS6lyy+SuQ==","_npmVersion":"10.8.3","description":"Zero dependency object factory generator for testing","directories":{},"_nodeVersion":"24.3.0","_hasShrinkwrap":false,"packageManager":"bun@1.2.20","devDependencies":{"jsr":"^0.13.5","oxlint":"^1.11.2","publint":"^0.3.12","prettier":"^3.6.2","@types/bun":"latest","typescript":"^5","@aklinker1/check":"^2.1.0"},"_npmOperationalInternal":{"tmp":"tmp/zero-factory_1.0.1_1758571143688_0.943306928422956","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@aklinker1/zero-factory","version":"1.0.2","keywords":["factory","test","fixture"],"license":"MIT","_id":"@aklinker1/zero-factory@1.0.2","maintainers":[{"name":"_aklinker1","email":"aaronklinker1@gmail.com"}],"dist":{"shasum":"f4561a826db128b6a05bf6bc9bd13b4165bd8aa9","tarball":"https://registry.npmjs.org/@aklinker1/zero-factory/-/zero-factory-1.0.2.tgz","fileCount":8,"integrity":"sha512-T8B272pGuY9iPQyrU9vtB63etZjJW5CCjy7z1XtSNstRL5paP9qTGja7Jm8Ea1scbrC6q54iYQXZBQ82ATo9Ow==","signatures":[{"sig":"MEUCIQD9tR9TSl99Y0eIRT8+WrzPz3E+IUnz6Gk3PjQezdXxMQIgeEzRQth5lG5ejK1kW4hTAfdFKZ/pOcnW3VTLlRGFcSQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16293},"type":"module","shasum":"f4561a826db128b6a05bf6bc9bd13b4165bd8aa9","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"bun test","build":"bun run build.ts","test:watch":"bun test --watch"},"_npmUser":{"name":"_aklinker1","email":"aaronklinker1@gmail.com"},"_integrity":"sha512-T8B272pGuY9iPQyrU9vtB63etZjJW5CCjy7z1XtSNstRL5paP9qTGja7Jm8Ea1scbrC6q54iYQXZBQ82ATo9Ow==","_npmVersion":"10.8.3","description":"Zero dependency object factory generator for testing","directories":{},"_nodeVersion":"24.3.0","_hasShrinkwrap":false,"packageManager":"bun@1.2.20","devDependencies":{"jsr":"^0.13.5","oxlint":"^1.11.2","publint":"^0.3.12","prettier":"^3.6.2","@types/bun":"latest","typescript":"^5","@aklinker1/check":"^2.1.0"},"_npmOperationalInternal":{"tmp":"tmp/zero-factory_1.0.2_1758575045296_0.5721862777445665","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@aklinker1/zero-factory","version":"1.0.3","keywords":["factory","test","fixture"],"license":"MIT","_id":"@aklinker1/zero-factory@1.0.3","maintainers":[{"name":"_aklinker1","email":"aaronklinker1@gmail.com"}],"dist":{"shasum":"f45f983997f7c2f70813c995029a18258dbccde7","tarball":"https://registry.npmjs.org/@aklinker1/zero-factory/-/zero-factory-1.0.3.tgz","fileCount":8,"integrity":"sha512-VVu02WgHAMN4xO8GFKCtzOQ6xo56znMYL0E1EE8tthP348vLwxp0O+M6CeFaBHpzDGMlOAAK4fvTPqJ+knQbhw==","signatures":[{"sig":"MEUCIBmd+of53oCsrt+vC1DuMuLrm3t54G40wFqI9m7/1lduAiEAia9Rz68+H0iCAbEz/T0xQqWReC61G0HytCpBT6H7B+U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16430},"type":"module","shasum":"f45f983997f7c2f70813c995029a18258dbccde7","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"bun test","build":"bun run build.ts","test:watch":"bun test --watch"},"_npmUser":{"name":"_aklinker1","email":"aaronklinker1@gmail.com"},"_integrity":"sha512-VVu02WgHAMN4xO8GFKCtzOQ6xo56znMYL0E1EE8tthP348vLwxp0O+M6CeFaBHpzDGMlOAAK4fvTPqJ+knQbhw==","_npmVersion":"10.8.3","description":"Zero dependency object factory generator for testing","directories":{},"_nodeVersion":"24.3.0","_hasShrinkwrap":false,"packageManager":"bun@1.2.20","devDependencies":{"jsr":"^0.13.5","oxlint":"^1.11.2","publint":"^0.3.12","prettier":"^3.6.2","@types/bun":"latest","typescript":"^5","@aklinker1/check":"^2.1.0"},"_npmOperationalInternal":{"tmp":"tmp/zero-factory_1.0.3_1758647530511_0.22762979940951844","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@aklinker1/zero-factory","version":"1.1.0","keywords":["factory","test","fixture"],"license":"MIT","_id":"@aklinker1/zero-factory@1.1.0","maintainers":[{"name":"_aklinker1","email":"aaronklinker1@gmail.com"}],"dist":{"shasum":"18e9d83855c2a9a3d613546c3ef91fa40acf5261","tarball":"https://registry.npmjs.org/@aklinker1/zero-factory/-/zero-factory-1.1.0.tgz","fileCount":8,"integrity":"sha512-441jouxP62rZJJUhDx1tnG4ij66rSwDDaA4ws6EGvNNHYLqibKan3HQdNc7KX5N6aCHV/xNiT8wmwxLBbvIIvA==","signatures":[{"sig":"MEUCICb+AgKBbEv3rqpcNoIrIVfGSYxDT7gplMdwykFXBzJKAiEA2zQmWl45OdKvsIMZ1vVSJ53p7Sv2gO7DsTeDh5XuoOM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":20078},"type":"module","shasum":"18e9d83855c2a9a3d613546c3ef91fa40acf5261","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"bun test","build":"bun run build.ts","test:watch":"bun test --watch"},"_npmUser":{"name":"_aklinker1","email":"aaronklinker1@gmail.com"},"_integrity":"sha512-441jouxP62rZJJUhDx1tnG4ij66rSwDDaA4ws6EGvNNHYLqibKan3HQdNc7KX5N6aCHV/xNiT8wmwxLBbvIIvA==","_npmVersion":"10.8.3","description":"Zero dependency object factory generator for testing","directories":{},"_nodeVersion":"24.3.0","_hasShrinkwrap":false,"packageManager":"bun@1.2.20","devDependencies":{"jsr":"^0.13.5","oxlint":"^1.11.2","publint":"^0.3.12","prettier":"^3.6.2","@types/bun":"latest","typescript":"^5","@aklinker1/check":"^2.1.0"},"_npmOperationalInternal":{"tmp":"tmp/zero-factory_1.1.0_1759500632200_0.5374023493481919","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"@aklinker1/zero-factory","version":"1.1.1","keywords":["factory","test","fixture"],"license":"MIT","_id":"@aklinker1/zero-factory@1.1.1","maintainers":[{"name":"_aklinker1","email":"aaronklinker1@gmail.com"}],"dist":{"shasum":"221d721299579e0b5c085deff9d7074240124a4b","tarball":"https://registry.npmjs.org/@aklinker1/zero-factory/-/zero-factory-1.1.1.tgz","fileCount":8,"integrity":"sha512-mCQjiQ4GjjtFvztM+vBnJN6wZO9RktHYoEm7HBdefMGG4Sggnl4I4x1p0ieaglry1j2nr/jeLRQWzuwVYq6Dvw==","signatures":[{"sig":"MEUCIQDZtG2ZBm4aq2ckrUAAAjNNyjOH+/6tJPYQEsvecPB+bwIgHMnNAjNULZRlMNv4iZdTQ+pG2n9UiO8iIU9j1m5jRMk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":19545},"type":"module","shasum":"221d721299579e0b5c085deff9d7074240124a4b","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"bun test","build":"bun run build.ts","test:watch":"bun test --watch"},"_npmUser":{"name":"_aklinker1","email":"aaronklinker1@gmail.com"},"_integrity":"sha512-mCQjiQ4GjjtFvztM+vBnJN6wZO9RktHYoEm7HBdefMGG4Sggnl4I4x1p0ieaglry1j2nr/jeLRQWzuwVYq6Dvw==","_npmVersion":"10.8.3","description":"Zero dependency object factory generator for testing","directories":{},"_nodeVersion":"24.3.0","_hasShrinkwrap":false,"packageManager":"bun@1.2.20","devDependencies":{"jsr":"^0.13.5","oxlint":"^1.11.2","publint":"^0.3.12","prettier":"^3.6.2","@types/bun":"latest","typescript":"^5","@aklinker1/check":"^2.1.0"},"_npmOperationalInternal":{"tmp":"tmp/zero-factory_1.1.1_1759501231234_0.7145366786840186","host":"s3://npm-registry-packages-npm-production"}},"1.1.3":{"name":"@aklinker1/zero-factory","version":"1.1.3","keywords":["factory","test","fixture"],"license":"MIT","_id":"@aklinker1/zero-factory@1.1.3","maintainers":[{"name":"_aklinker1","email":"aaronklinker1@gmail.com"}],"homepage":"https://github.com/aklinker1/zero-factory#readme","bugs":{"url":"https://github.com/aklinker1/zero-factory/issues"},"dist":{"shasum":"4e271d577bda3ed2271a2bedca9190e9d0f14dd0","tarball":"https://registry.npmjs.org/@aklinker1/zero-factory/-/zero-factory-1.1.3.tgz","fileCount":8,"integrity":"sha512-8Vrw4e20NqGvsQ+Vn4DulZw5SH2UGobAZnaxBvSGY7ABX03Op4XmdfX0eFImuuk4XqRcQDmfHWCHCRD+72FIyA==","signatures":[{"sig":"MEQCIDWM8FGgu8Ls6eJ5WTZ8KCuNVjNJLVidIAcLXnAKdqymAiAz9R5d2ykLIM5WLF2qqF4WeUIE/ifFR7D5ieGmORa9vA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aklinker1%2fzero-factory@1.1.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":19623},"type":"module","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"ec62b3cc1eb4902dcb240b74b93a0ef83e7e526e","scripts":{"test":"bun test","build":"bun run build.ts","test:watch":"bun test --watch"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f99ffd3d-0ab1-4ccb-adaa-3759a679dcf8"}},"repository":{"url":"git+https://github.com/aklinker1/zero-factory.git"},"_npmVersion":"11.6.2","description":"Zero dependency object factory generator for testing","directories":{},"_nodeVersion":"20.19.5","_hasShrinkwrap":false,"packageManager":"bun@1.2.20","devDependencies":{"jsr":"^0.13.5","oxlint":"^1.11.2","publint":"^0.3.12","prettier":"^3.6.2","@types/bun":"latest","typescript":"^5","@aklinker1/check":"^2.1.0"},"_npmOperationalInternal":{"tmp":"tmp/zero-factory_1.1.3_1760194759369_0.43706366244539097","host":"s3://npm-registry-packages-npm-production"}},"1.1.4":{"name":"@aklinker1/zero-factory","version":"1.1.4","keywords":["factory","test","fixture"],"license":"MIT","_id":"@aklinker1/zero-factory@1.1.4","maintainers":[{"name":"_aklinker1","email":"aaronklinker1@gmail.com"}],"homepage":"https://github.com/aklinker1/zero-factory#readme","bugs":{"url":"https://github.com/aklinker1/zero-factory/issues"},"dist":{"shasum":"2f0786748b4f550a7b7a62fd82ecaae35b2edfa3","tarball":"https://registry.npmjs.org/@aklinker1/zero-factory/-/zero-factory-1.1.4.tgz","fileCount":8,"integrity":"sha512-V6oNq73snF9hDZJSgvAGZcGT7106IBZOzs20r301iia6R4SlhUa9Vhz5+cD3MPv+7pfHEcXPSqzUNKq5Bc8UXw==","signatures":[{"sig":"MEQCIFxHG6L9HrDwvL1gmaH0b5mbez9JYlC0dmn/ztgkulJIAiBYcppHgICdxDSAMiW0mEUhcXgGsenr0wLKjY5r3w12OA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aklinker1%2fzero-factory@1.1.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":19623},"type":"module","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"94306887bb048e5090a228211e68d4987308acb1","scripts":{"test":"bun test","build":"bun run build.ts","test:watch":"bun test --watch"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f99ffd3d-0ab1-4ccb-adaa-3759a679dcf8"}},"repository":{"url":"git+https://github.com/aklinker1/zero-factory.git"},"_npmVersion":"11.6.2","description":"Zero dependency object factory generator for testing","directories":{},"_nodeVersion":"20.19.5","_hasShrinkwrap":false,"packageManager":"bun@1.2.20","devDependencies":{"jsr":"^0.13.5","oxlint":"^1.11.2","publint":"^0.3.12","prettier":"^3.6.2","@types/bun":"latest","typescript":"^5","@aklinker1/check":"^2.1.0"},"_npmOperationalInternal":{"tmp":"tmp/zero-factory_1.1.4_1760195850245_0.7532368691951128","host":"s3://npm-registry-packages-npm-production"}},"1.1.5":{"name":"@aklinker1/zero-factory","version":"1.1.5","keywords":["factory","test","fixture"],"license":"MIT","_id":"@aklinker1/zero-factory@1.1.5","maintainers":[{"name":"_aklinker1","email":"aaronklinker1@gmail.com"}],"homepage":"https://github.com/aklinker1/zero-factory#readme","bugs":{"url":"https://github.com/aklinker1/zero-factory/issues"},"dist":{"shasum":"9bff58aeda9e2069861af48fb3fb67a2751daa89","tarball":"https://registry.npmjs.org/@aklinker1/zero-factory/-/zero-factory-1.1.5.tgz","fileCount":8,"integrity":"sha512-A/zZNjn7RknBXCn68vP2IblZLdUMuVoPc1WmNzcMfuCOREPtNm0+wQ2z/04nr3SlNn5KxDsHTn8U2/ku+2Rbqg==","signatures":[{"sig":"MEUCIQDPfhs5heQLhlMyhRgLcBQtUuDLlyo1KF+xOtv1i/w0oQIgPKIiueIffYgPBU4VV9mR7TQZXnrywFalkw6mNihDLQc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aklinker1%2fzero-factory@1.1.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":19847},"type":"module","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"cef89bbbd7fd1539490020c12d2090e2e9677bf6","scripts":{"test":"bun test","build":"bun run build.ts","test:watch":"bun test --watch"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f99ffd3d-0ab1-4ccb-adaa-3759a679dcf8"}},"repository":{"url":"git+https://github.com/aklinker1/zero-factory.git"},"_npmVersion":"11.8.0","description":"Zero dependency object factory generator for testing","directories":{},"_nodeVersion":"20.20.0","_hasShrinkwrap":false,"packageManager":"bun@1.3.6","devDependencies":{"jsr":"^0.13.5","oxlint":"^1.11.2","publint":"^0.3.12","prettier":"^3.6.2","@types/bun":"latest","typescript":"^5","@aklinker1/check":"^2.1.0"},"_npmOperationalInternal":{"tmp":"tmp/zero-factory_1.1.5_1769829887040_0.8081358278237638","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@aklinker1/zero-factory","version":"1.2.0","keywords":["factory","test","fixture"],"license":"MIT","_id":"@aklinker1/zero-factory@1.2.0","maintainers":[{"name":"_aklinker1","email":"aaronklinker1@gmail.com"}],"homepage":"https://github.com/aklinker1/zero-factory#readme","bugs":{"url":"https://github.com/aklinker1/zero-factory/issues"},"dist":{"shasum":"d69b0ffa776b6f421ee21d26ff75601d5768bde9","tarball":"https://registry.npmjs.org/@aklinker1/zero-factory/-/zero-factory-1.2.0.tgz","fileCount":8,"integrity":"sha512-lfPkCNko8CkdcTsqCKEDdj2HesFg9kVZNlXfMMuh1TgKKwl6/QEhAg93Uvr9wyhX42eDxrh3ynu8sEgTbHZuSg==","signatures":[{"sig":"MEUCIDhl6vKdkoFDFvrD182zTxWSTcSzOnZwrGNvQL4n+Hh6AiEAkhP03c0rKG5AuUFD/aePg0Heop1K8GR1QLuwvgzmZz8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aklinker1%2fzero-factory@1.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":19864},"type":"module","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"46a9cab438a60b0bfe414f6b739f0e8d645923a4","scripts":{"test":"bun test","build":"bun run build.ts","test:watch":"bun test --watch"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f99ffd3d-0ab1-4ccb-adaa-3759a679dcf8"}},"repository":{"url":"git+https://github.com/aklinker1/zero-factory.git"},"_npmVersion":"11.10.1","description":"Zero dependency object factory generator for testing","directories":{},"_nodeVersion":"20.20.0","_hasShrinkwrap":false,"packageManager":"bun@1.3.6","devDependencies":{"jsr":"^0.13.5","oxlint":"^1.11.2","publint":"^0.3.12","prettier":"^3.6.2","@types/bun":"latest","typescript":"^5","@aklinker1/check":"^2.1.0"},"_npmOperationalInternal":{"tmp":"tmp/zero-factory_1.2.0_1771696461978_0.7947707825871302","host":"s3://npm-registry-packages-npm-production"}},"1.2.1":{"name":"@aklinker1/zero-factory","description":"Zero dependency object factory generator for testing","version":"1.2.1","packageManager":"bun@1.3.6","type":"module","license":"MIT","repository":{"url":"git+https://github.com/aklinker1/zero-factory.git"},"keywords":["factory","test","fixture"],"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"bun test","test:watch":"bun test --watch","build":"bun run build.ts"},"devDependencies":{"@aklinker1/check":"^2.1.0","@types/bun":"latest","jsr":"^0.13.5","oxlint":"^1.11.2","prettier":"^3.6.2","publint":"^0.3.12","typescript":"^5"},"gitHead":"bb8b84f0963e1b7e4acd82466ddd759ad2a1125f","_id":"@aklinker1/zero-factory@1.2.1","bugs":{"url":"https://github.com/aklinker1/zero-factory/issues"},"homepage":"https://github.com/aklinker1/zero-factory#readme","_nodeVersion":"20.20.0","_npmVersion":"11.10.1","dist":{"integrity":"sha512-MWX0JTaWg+t/LficTsYSuFUd7IZcTAryl8KAAJFcUp0h79Ycet/2J8+j3w1MrB0Jus/99vLDfMqI0r2PYE93+Q==","shasum":"82ac1f86b52507b5e5ac5a4a4bccb438551279ab","tarball":"https://registry.npmjs.org/@aklinker1/zero-factory/-/zero-factory-1.2.1.tgz","fileCount":8,"unpackedSize":19864,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aklinker1%2fzero-factory@1.2.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQD39NoC6akbR719i4p9YsRpjIzPlcLi+M6aQflzDTMhqQIhAIvsjRYYZojn1l4ipp9ZmBsm2mOJeErME20jd+CqPL5P"}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f99ffd3d-0ab1-4ccb-adaa-3759a679dcf8"}},"directories":{},"maintainers":[{"name":"_aklinker1","email":"aaronklinker1@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/zero-factory_1.2.1_1771698690243_0.2272378333530347"},"_hasShrinkwrap":false}},"time":{"created":"2025-08-14T04:19:12.958Z","modified":"2026-02-21T18:31:30.758Z","0.1.1":"2025-08-14T04:19:13.306Z","0.1.2":"2025-08-14T04:25:09.680Z","0.1.3":"2025-08-21T18:41:11.852Z","0.1.4":"2025-08-21T18:42:20.831Z","1.0.0":"2025-09-22T18:59:52.714Z","1.0.1":"2025-09-22T19:59:03.875Z","1.0.2":"2025-09-22T21:04:05.479Z","1.0.3":"2025-09-23T17:12:10.727Z","1.1.0":"2025-10-03T14:10:32.374Z","1.1.1":"2025-10-03T14:20:31.399Z","1.1.3":"2025-10-11T14:59:19.581Z","1.1.4":"2025-10-11T15:17:30.447Z","1.1.5":"2026-01-31T03:24:47.180Z","1.2.0":"2026-02-21T17:54:22.112Z","1.2.1":"2026-02-21T18:31:30.396Z"},"bugs":{"url":"https://github.com/aklinker1/zero-factory/issues"},"license":"MIT","homepage":"https://github.com/aklinker1/zero-factory#readme","keywords":["factory","test","fixture"],"repository":{"url":"git+https://github.com/aklinker1/zero-factory.git"},"description":"Zero dependency object factory generator for testing","maintainers":[{"name":"_aklinker1","email":"aaronklinker1@gmail.com"}],"readme":"<div align=\"center\">\n\n# @aklinker1/zero-factory\n\n[![JSR](https://jsr.io/badges/@aklinker1/zero-factory)](https://jsr.io/@aklinker1/zero-factory) [![NPM Version](https://img.shields.io/npm/v/%40aklinker1%2Fzero-factory?logo=npm&labelColor=red&color=white)](https://www.npmjs.com/package/@aklinker1/zero-factory) [![Docs](https://img.shields.io/badge/Docs-blue?logo=readme&logoColor=white)](https://jsr.io/@aklinker1/zero-factory) [![API Reference](https://img.shields.io/badge/API%20Reference-blue?logo=readme&logoColor=white)](https://jsr.io/@aklinker1/zero-factory/doc) [![License](https://img.shields.io/npm/l/%40aklinker1%2Fzero-factory)](https://github.com/aklinker1/zero-factory/blob/main/LICENSE)\n\nZero dependency object factory generator for testing.\n\n</div>\n\n```ts\nimport { createFactory, createSequence } from \"@aklinker1/zero-factory\";\n\nconst userFactory = createFactory<User>({\n  id: createSequence(\"user-\"),\n  username: \"example-username\",\n  email: () => \"example-email-\" + Math.random(),\n});\n\nuserFactory({ id: \"test\", username: \"user\" });\n// => {\n//   id: \"test\",\n//   username: \"user\",\n//   email: \"example-email-0.20088082049103195\"\n// }\n```\n\n```sh\nnpm i @aklinker1/zero-factory\n```\n\n**Features:**\n\n- ✅ Type-safe\n- ✨ Deeply merge overrides with default values\n- 🔢 Sequence generator for IDs\n- 🎨 \"traits\" - define multiple variants of default values\n- ⚡ Compatible with all fake data generators (`@ngneat/falso`, `faker-js`, `chance`, `casual`, etc)\n\n**Not Supported:**\n\n- **Class instances**: Only objects can be created. Factories will not create class instances.\n\n## Usage\n\n### Factories\n\nUse `createFactory` to build an object factory. Object factories are simple functions that return an object:\n\n```ts\nconst userFactory = createFactory<User>({\n  id: \"user-id\",\n  username: \"username\",\n  email: \"example@gmail.com\",\n  preferences: {\n    receiveMarketingEmails: true,\n    receiveSecurityEmails: true,\n  },\n});\n// typeof userFactory = (overrides?: DeepPartial<User>) => User\n```\n\nThen, to get an object conforming to the `User` type, just call the factory as a function:\n\n```ts\nconst user = userFactory();\n// => {\n//   id: \"user-id\",\n//   username: \"username\",\n//   email: \"example@gmail.com\",\n//   preferences: {\n//     receiveMarketingEmails: true,\n//     receiveSecurityEmails: true,\n//   }\n// }\n```\n\nYou can also override specific properties at any level:\n\n```ts\nconst user = userFactory({\n  username: \"overridden\",\n  preferences: {\n    receiveMarketingEmails: false,\n  },\n});\n// => {\n//   id: \"user-id\",\n//   username: \"overridden\",\n//   email: \"example@gmail.com\",\n//   preferences: {\n//     receiveMarketingEmails: false,\n//     receiveSecurityEmails: true,\n//   }\n// }\n```\n\n> [!IMPORTANT]\n> Arrays are not deeply merged. If a property is an array, overrides will fully replace it, like any other value.\n\n#### Function Defaults\n\nIn addition to static values, the factory definition accepts functions for properties:\n\n```ts\nconst userFactory = createFactory({\n  email: () => `example.${Math.floor(Math.random() * 1000)}@gmail.com`,\n  // ...\n});\n```\n\nEvery time the factory is called, this will call the function and, in this case, generate a different `email` each time:\n\n```ts\nuserFactory(); // { email: \"example.424@gmail.com\", ... }\nuserFactory(); // { email: \"example.133@gmail.com\", ... }\n```\n\nThis is where [fake data generators](https://www.npmjs.com/search?q=fake%20data) and [sequences](#sequences) come in clutch:\n\n```ts\nimport { createFactory, createSequence } from \"@aklinker1/zero-factory\";\nimport {\n  randEmail, // () => string\n  randUsername, // () => string\n  randBoolean, // () => boolean\n} from \"@ngneat/falso\";\n\nconst userFactory = createFactory({\n  id: createSequence(\"user-\"),\n  username: randUsername,\n  email: randEmail,\n  preferences: {\n    receiveMarketingEmails: randBoolean,\n    receiveSecurityEmails: randBoolean,\n  },\n});\n```\n\n#### Many\n\nYou can generate multiple objects using `factory.many(...)`. This method will return an array of objects.\n\n```ts\nuserFactory.many(2, { username: \"override\" });\n// [\n//   { usenrame: \"override\", ... }\n//   { usenrame: \"override\", ... }\n// ]\n```\n\nOverridden fields apply to all the returned objects.\n\n#### Traits\n\nIf there are common variants or \"traits\" of an object you want to be able to generate, use `factory.trait(...)`:\n\n```ts\nconst userFactory = createFactory({\n  // same as above\n}).trait(\"noEmails\", {\n  preferences: {\n    receiveMarketingEmails: false,\n    receiveSecurityEmails: false,\n  },\n});\n```\n\nThen, to generate an object using this trait, the trait is a function defined on the object factory:\n\n```ts\nconst user = userFactory.noEmails();\n// => {\n//   id: \"user-id\",\n//   username: \"username\",\n//   email: \"example@gmail.com\",\n//   preferences: {\n//     receiveMarketingEmails: false,\n//     receiveSecurityEmails: false,\n//   }\n// }\n```\n\nWhen using a trait and overriding specific properties, the trait's default values are applied before the overrides:\n\n```ts\nconst user = userFactory.noEmails({ username: \"overridden\" });\n// => {\n//   id: \"user-id\",\n//   username: \"overridden\",\n//   email: \"example@gmail.com\",\n//   preferences: {\n//     receiveMarketingEmails: false,\n//     receiveSecurityEmails: false,\n//   }\n// }\n```\n\n#### Associations\n\nIf you want to override one or more fields based on a single value, use associations:\n\n```ts\nconst postFactory = createFactory<Post>({\n  id: createSequence(),\n  userId: userIdSequence,\n  // ...\n}).associate(\"user\", (user: User) => ({ userId: user.id }));\n```\n\nThen to generate a post associated with a user, use `with`:\n\n```ts\nuser;\n// => {\n//   id: 3,\n//   ...\n// }\n\npostFactory.with({ user })();\n// => {\n//   id: 0,\n//   userId: 3,\n//   ...\n// }\n```\n\nNote that `with` returns a factory function, which needs to be called to generate the final object. This allows you to chain other utilities like `.many` and/or traits:\n\n```ts\npostFactory.with({ user }).noEmails.many(3);\n```\n\n### Sequences\n\nFor values like IDs, it can be useful to generate them incrementally instead of using randomized values. Use the `createSequence` function to do this:\n\n```ts\nconst userIdSequence = createSequence((i) => `user-${i}`);\n\nuserIdSequence(); // \"user-0\"\nuserIdSequence(); // \"user-1\"\nuserIdSequence(); // \"user-2\"\n// ...\n```\n\nThe argument `i` is a number starting at 0 that gets incremented by 1 each time the sequence is called. The return value can be anything (string, boolean, object, integer, etc).\n\n```ts\nconst intSequence = createSequence((i) => i + 1);\nintSequence(); // 1\nintSequence(); // 2\nintSequence(); // 3\n// ...\n\nconst boolSequence = createSequence((i) => i % 2 === 0);\nboolSequence(); // true\nboolSequence(); // false\nboolSequence(); // true\n// ...\n```\n\nHowever, the most common types of return values are integers and strings. For both, there is a shorthand:\n\n```ts\nconst intSequence = createSequence();\nintSequence(); // 0\nintSequence(); // 1\nintSequence(); // 2\n// ...\n\nconst strSequence = createSequence(\"prefix-\");\nintSequence(); // \"prefix-0\"\nintSequence(); // \"prefix-1\"\nintSequence(); // \"prefix-2\"\n```\n","readmeFilename":"README.md"}