{"_id":"mongoose-association","_rev":"41-6d6f14094ff4bea4d074014780e9fbf5","name":"mongoose-association","dist-tags":{"latest":"0.0.44"},"versions":{"0.0.1":{"name":"mongoose-association","version":"0.0.1","description":"A cleaner and faster way to setup mongoose populate with virtual field","main":"index.js","scripts":{"test":"NODE_PATH=. mocha --recursive --exit"},"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"keywords":["mongoose","association","relationship","populate","virtual"],"author":{"name":"Victor Zeng"},"license":"ISC","bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"homepage":"https://github.com/vickenstein/mongoose-association#readme","devDependencies":{"chai":"^4.1.2","mocha":"^5.2.0"},"dependencies":{"inflection":"^1.12.0","lodash":"^4.17.10","mongoose":"^5.1.7"},"gitHead":"ebd308b8a6afac4360b1cda2c2b957c0f06e8815","_id":"mongoose-association@0.0.1","_npmVersion":"5.6.0","_nodeVersion":"8.11.2","_npmUser":{"name":"vickenstein","email":"victor.zeng@styluxinc.com"},"dist":{"integrity":"sha512-joQileZviV3VIYlFmcaKAhA6wLVKiysmmio/amSFXCvZW5jijuJyNm8AH+fGbM4zQ3bYlWfIkjL7ZwfHpew01A==","shasum":"b9b42a5c7e8391acfe2a864b11ab4f04b3cf0e67","tarball":"https://registry.npmjs.org/mongoose-association/-/mongoose-association-0.0.1.tgz","fileCount":14,"unpackedSize":16339,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbNmyyCRA9TVsSAnZWagAAlcgP/1StqyK4rblhkYpM4/wv\nPrNEvYHUcEYIH1/BAJFWudij6lsqbkHU+p6SiRWiGDWosin3za6H6vJMqjGx\nOiKNd2+5I/QzDr/+/+1RVkgKjubHKAMJIGnlt8lG9zPxAWJpv4gkPOBTJko4\nRmLNXIGSM75+dixA/+3jw2FC0aaPHUjUT2Z282yS6bPdWnO4/WCaadcNZvSk\ndRuYBNDYMnr6yR2os7B7CwivJQHesZH2Rn5dhDuTvG3bC9InKfPoAcyvuAkJ\nmanWslKhOOtEEtop3gJ7/9glrTaVZ/0GihMhYEkqGQ7Oo2SS5Y0hD5YNSKmX\nrNVFrzrs4BoNrj43+S+Ow5VhtvN6IeIye6pGmOgyHHvKcHUA/zGhr8w8PNHc\nbO5C6cMxXDMEXQe9PoZ3X6WE1g22KpRjal+P6QoqVc7VVV9oQj7kLDU7+idW\n5bfF72n1NzRU7Y1tyoTyYv2IRkg5AUlAvTbvSSPZdDTYsDXLLx2fgr+vgKvR\n/DLQViuLRyAJGiwyI8Q074Nt5R5kdGJbl2DbQO0fbjsEJoTJJ+En/dpHEMg2\nhYXMSY72QbhzkjStlbNGhz60+SRXUae2KHK2Qwh3fvzEUaiWqjMLZFrhUaEo\nG5rnc/ueNVA5WN/+eC2wzsT8pIqQ9v7MvUUasVfyEcw6mVCniOl7FjYu2nEo\n96Ei\r\n=C+bJ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDpSyuzlpyC4q7h/ULh2cuC9tkp+bxWgJXP65rftZ1bSgIgST2GW/wfiwgPsZg/QtL3s45AIYq9JQ4cVUQJ0saM/10="}]},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-association_0.0.1_1530293426455_0.08177304048266687"},"_hasShrinkwrap":false},"0.0.3":{"name":"mongoose-association","version":"0.0.3","description":"A cleaner and faster way to setup mongoose populate with virtual field","main":"index.js","scripts":{"test":"NODE_PATH=. mocha --recursive --exit"},"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"keywords":["mongoose","association","relationship","populate","virtual"],"author":{"name":"Victor Zeng"},"license":"ISC","bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"homepage":"https://github.com/vickenstein/mongoose-association#readme","devDependencies":{"benchmark":"^2.1.4","chai":"^4.1.2","mocha":"^5.2.0"},"dependencies":{"inflection":"^1.12.0","lodash":"^4.17.10","mongoose":">=4.11.0"},"gitHead":"95a30aaf41ba3903ee20f596059575537ac2f5f1","_id":"mongoose-association@0.0.3","_npmVersion":"5.6.0","_nodeVersion":"8.11.2","_npmUser":{"name":"vickenstein","email":"victor.zeng@styluxinc.com"},"dist":{"integrity":"sha512-2/vxScDsdXjszH7xt+Rsu9fGFXX75WZDui0hOSBCwRWGmo95oeTBMmHFI/eCVNxoESFEiCPAdOW0bir62JR27A==","shasum":"496254150d81ad4afacc3d28e03079266dc082b4","tarball":"https://registry.npmjs.org/mongoose-association/-/mongoose-association-0.0.3.tgz","fileCount":33,"unpackedSize":97846,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbRWqhCRA9TVsSAnZWagAAZroQAJWGWTPI3dhyL4qG4YKC\nxK9RsLIxkq4+d3u3VVlElec4mCeFkQj0krTOoKHLA2LS+PDDZ1Z33bFx5v07\n6q2xvdVTzJ6fLLm5lzOFo2TpfR6cSoZpyS3iMYNsc5Evby9DyBbFE++LO49f\no3psl3lnojV4glpo0MwtrjHCYtdm5puTf1Vc6FiKNRq+A0AUSniOfUNO1byp\nr319+lMJ4PDbZD+tzDXsb00A8COTM2aBZH/Iu1/bser/62iQtxnT0QYdBF3Y\nT3hLlgvhnCHHIWBjJzbdqdheN7pt+3Vfg7MivWI0Hx0QydbVrTKB3ZzxmGsw\nuGFZwjzz336w2qgYUB57ZA5hBS+2S0P6CXVQZ+Z3vtsJOpzYLxdwOIOGVPma\n7jzYNbnaknSmGsapefPd653ZbAuILwQMdglIcgB+Zdq4HMHS5w59STNN5+CX\ndBG/kDudwE5JnS2CU5Oic5HN6KDM65EG6ITzkOnGCLAUx1dZT3qYbZ3+kN3X\nudfp9zKCM0PfMZxyMeeTXEWj7ImH9zisDsLo7EWb49+OEfUgoJBJ1yTel3Ov\nv9NXD2XGyi9EGwOFdfmrU2MB2UGh6WcPEBFXjrqAoTFkrBp2S/1lEDzkchbq\ne+uJ2/E4rQZigvbxtRxZqUAfYI9kgzvqeWdWOE6hnuqwk95HXEZL7dBHno5A\nhT8x\r\n=/FIo\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDQNUYyAXyDmcSv7F7kOd/rjz+fGlCOM3Alr2GN7+6T4AIhANmobzxofpKZwWm98PGWIkrjZ004PctLlz1TqSyEyoN7"}]},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-association_0.0.3_1531275937530_0.38548009164375663"},"_hasShrinkwrap":false},"0.0.4":{"name":"mongoose-association","version":"0.0.4","description":"A cleaner and faster way to setup mongoose populate with virtual field","main":"index.js","scripts":{"test":"NODE_PATH=. mocha --recursive --exit"},"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"keywords":["mongoose","association","relationship","populate","virtual"],"author":{"name":"Victor Zeng"},"license":"ISC","bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"homepage":"https://github.com/vickenstein/mongoose-association#readme","devDependencies":{"benchmark":"^2.1.4","chai":"^4.1.2","mocha":"^5.2.0"},"dependencies":{"inflection":"^1.12.0","lodash":"^4.17.10","mongoose":">=4.11.0"},"gitHead":"9190472ed24f00c71ec86557bea7ccd43b7006fb","_id":"mongoose-association@0.0.4","_npmVersion":"5.6.0","_nodeVersion":"8.11.2","_npmUser":{"name":"vickenstein","email":"victor.zeng@styluxinc.com"},"dist":{"integrity":"sha512-YqJzhPev9SOP7JatgYr/C5FjK/2ggSw4WbhlS5F4ph1NtITNaUphVGj2rJpTN6kUG5BctE8565RJySCNG9jtzg==","shasum":"fda37684f05381f6332a3b908cb904083f99aaaf","tarball":"https://registry.npmjs.org/mongoose-association/-/mongoose-association-0.0.4.tgz","fileCount":35,"unpackedSize":108789,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbR4spCRA9TVsSAnZWagAAVQgP/1rircSoIni1ukaT+0af\nuKnvRZaNm0ReRV4H270eexvPvb8Yxb0S15Zi7kmhKk+at+HV7jFPYVf0Lu4p\n107g4xnlBaKVwliNVNpH4vntRacdPzd1qCx6nzYhhPscRVKv+uhzKWbVGvT6\n1eIvxMJ5R1qIyjf5tbeaF+Ns8Plw59YST6XEjPYlgqyTxWCrmIz44Bi5aKuR\nt0gITSHbjzkmdVYNhDrf/aMthQ4eyVsQUh4yfYR8gUXi/E5LbnPfgUkZ3vxw\ntwW8S+hfSOVHTkWerbRAs2d3wyViIFQNoX3ZX+wZIRWLSwYFvIQQNWfi4LZD\nWqr2wWozCLAbzq9B0t19gLaHeGo8v5qoMdRc38kWzaCqqIE1WblPsOoZ/l3d\n6Brqze3CbnTP/YLlTiFOqlv+qTqKeYyv4WQXBbLd2RP6AgQo9Ph10LSBx7tG\nOqR1Xj+elLefOLeToBgW7aa5wmm5jv0MwWLcbuYNqqjU1q2/mQD66vq0OtBy\nDmv9YThzd5BRV8PG26ItgI5qyqDc/HyHzmuKxKVb+0fxPJhqSh9Hv+7y/0fK\nM8Rb2xOnrZtiw4Rh/W2ZQCjg+/icHBumBoJgX0Ua1OST6IcYPyxTGGU2YQyG\nu9sYhJ+n8dYYz6cqpAX81o0VGPEse8t2al5rd7mA8ETpGWyrJj7B7SC7qFgi\nXSTZ\r\n=FoRS\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGzLosM1AQqLDd+K6zK6Tm0zjdCa+H+X6VCZS76uC1h0AiEAxZ+LsmbzWvrTAYg/y7dhk3i2G33jbz0CIscUMWmhFgw="}]},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-association_0.0.4_1531415337378_0.5810523972713457"},"_hasShrinkwrap":false},"0.0.5":{"name":"mongoose-association","version":"0.0.5","description":"A cleaner and faster way to setup mongoose populate with virtual field","main":"index.js","scripts":{"test":"NODE_PATH=. mocha --recursive --exit"},"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"keywords":["mongoose","association","relationship","populate","virtual"],"author":{"name":"Victor Zeng"},"license":"ISC","bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"homepage":"https://github.com/vickenstein/mongoose-association#readme","devDependencies":{"benchmark":"^2.1.4","chai":"^4.1.2","mocha":"^5.2.0"},"dependencies":{"inflection":"^1.12.0","lodash":"^4.17.10","mongoose":">=4.11.0"},"gitHead":"a3f12bb3a6382690d25a5b21b0fda52a760810a5","_id":"mongoose-association@0.0.5","_npmVersion":"5.6.0","_nodeVersion":"8.11.2","_npmUser":{"name":"vickenstein","email":"victor.zeng@styluxinc.com"},"dist":{"integrity":"sha512-P4h86ROzgVYtaWhCIIas9AkvtUHxdTEcVhmhaNrAzOolliyTEJs/hZh98O24HBihWe5KBgURMXTwvguNDUdMdA==","shasum":"b8f2c8ce6c9d0633c39877c23cbbca1dea55c8d1","tarball":"https://registry.npmjs.org/mongoose-association/-/mongoose-association-0.0.5.tgz","fileCount":35,"unpackedSize":109874,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbR9NBCRA9TVsSAnZWagAAZioQAIoR/3Q5XGtmNUbhDnsp\n8BvVTWiIRYg9CWjd47ev8eg65fWmKA8Vvu83W1D1JxBJP2pauDe2iytnbJdG\nHgRLrCCuMB9YQZCxtyvWuOpqd935w0nTwzgmZaaMXf/q+lLwmg/Hv3AK5KcG\nO+rVmoNFIOJdVGTV2o4YCQIS4jrV5gVpJY3KLf8BPUHdiB6iOdSWbP2SkTS7\nnY/M6OrW/7mNsAZ6DVYMesf8SPE31INyslGOPpB6/b8p3wm9lG7NOfjP2Fg2\nrc5mJ7yJ2H5e83zRPRBl96Jzc28iGhsqu/4RUMSTwqMSJL1B5LiccuibJOPe\nOFR1soloU8RbnrblfWzKScTPvPq73vtkJHut5PVqj6e++sUcq34Wn8bsmics\nUU44svHqPn9XZCeKwXPZ+Ich4c+r++xFnd6qzI6DIo6+WcR2izGOMc+rAbxb\noE1laBB+POdm4fB7txWPBAjr1AZmyql736kvSxT8lgcB7BUOjTnrO4MGtEIk\n/SbfCX9fn+hwrWz2dDDHAPczmGJWrfglRHD9vYzReW4d6LkQVyxbepnhqGWD\nZEfsrBd2A6TN/fLNw7TUO7+XrZkr3I8T32RkdS72qy0aMDqu1H05uANAB6IW\n3xfTOW2+MmtC/vn9JQpDBf2nZJlEU+BNzhX5DpHvyVBFzVL8rSNROPhe0hwg\neXXc\r\n=IClh\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHb9CDs7O56p0qnwVZb8nxZqB8YEnrbY7SgRR7WVadn2AiEArQLL606dJruJei4VILEK+Hy/Ed96J5eKvRqAR+eQTes="}]},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-association_0.0.5_1531433793895_0.013325921079082148"},"_hasShrinkwrap":false},"0.0.6":{"name":"mongoose-association","version":"0.0.6","description":"A cleaner and faster way to setup mongoose populate with virtual field","main":"index.js","scripts":{"test":"NODE_PATH=. mocha --recursive --exit","lint":"eslint src"},"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"keywords":["mongoose","association","relationship","populate","virtual"],"author":{"name":"Victor Zeng"},"license":"ISC","bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"homepage":"https://github.com/vickenstein/mongoose-association#readme","devDependencies":{"benchmark":"^2.1.4","chai":"^4.1.2","eslint":"^4.19.1","eslint-config-airbnb-base":"^13.0.0","eslint-plugin-import":"^2.13.0","mocha":"^5.2.0"},"dependencies":{"inflection":"^1.12.0","lodash":"^4.17.10","mongoose":">=4.11.0"},"gitHead":"33b5173dfc13277401798e186d94bf522b23df64","_id":"mongoose-association@0.0.6","_npmVersion":"5.6.0","_nodeVersion":"8.11.2","_npmUser":{"name":"vickenstein","email":"victor.zeng@styluxinc.com"},"dist":{"integrity":"sha512-/g8bUSKT3S5u1A0OiQ5SuFWRkca3zNUteYJ+awhN198qyYoijkH/pBgOuXgi+9AaicbqC4nkg5xRp4stMHIFlw==","shasum":"b58697b9165c7d38a767bb9a52f2d4f4842e9fd4","tarball":"https://registry.npmjs.org/mongoose-association/-/mongoose-association-0.0.6.tgz","fileCount":36,"unpackedSize":111060,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbR//MCRA9TVsSAnZWagAAUDwP/0tuwRXsUb1rGtyGQwBa\nXtL99kD5fwVPYShFO5wI30eVi8a+44eiuGyjFRfzzAWYMSnUCHROZpUjrg56\n3/jYVgz95YpCSAWAK0aYz+vbGnKMV0EtQjTNUbHJ5JVAScJ9rrXCm0BnDhqp\n7m/e9DXul4qRCiXGQoGM1XeIamPNL8GkupRwavhUgLHkuz5Bdz10T874VwOe\nYSDgti+elvqa4JvcOmJEJVfyXCtN6OTRzf+j+ZLMQRsnhMxWI9ccGDt08Dm9\nKzm3g7s4MhjI48+8hb1oW+7dNsHPRP/37nXtOH1s/3A9e7MkRMC6T7Rb6swb\nGbr/WrsdEK9hyCKqVwHW57IExdL8eklCJmiEvvRatqJtDox4ZykEKixDV5lS\n/vksS1tfj0RkkfI81uZ2Af+82eonf9dRvybwLvX8XpHONKY6jAq43nvq9NyB\naP6ZYkchM4Ba0Nb1cCfLVQO15WqAV2GuHflWAWhcZauxkStVHrLp9RYn2zyj\ngzqhRAsicJ5B83+639fGNqpyMLEMTzFqNDSdGZzNidFTscNN7MOEPGTE6GKG\nnRIbncuBtQetb4Bb10GDSbM+Vx1IZfX/XfGV/8wEHBelfRL+/kxdqs00FUo5\nAwAxCg9qhbqmDgabeq4fltxncSmVjwjhmQ0Gio9BrXaKtnI9mK4paLK22+Zx\nS0/h\r\n=Spvp\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDLr4pOAyuOo98+tBTiJ+axs9jSRGV5/D3105xDA++o7wIhALAGKhMaJ4WRJ5U4/mMsGgvmM+vcWhH0rYnmoAx/lI8g"}]},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-association_0.0.6_1531445195951_0.15972755954723916"},"_hasShrinkwrap":false},"0.0.7":{"name":"mongoose-association","version":"0.0.7","description":"A cleaner and faster way to setup mongoose populate with virtual field","main":"index.js","scripts":{"test":"NODE_PATH=. mocha --recursive --exit","lint":"eslint src"},"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"keywords":["mongoose","association","relationship","populate","virtual"],"author":{"name":"Victor Zeng"},"license":"ISC","bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"homepage":"https://github.com/vickenstein/mongoose-association#readme","devDependencies":{"benchmark":"^2.1.4","chai":"^4.1.2","eslint":"^4.19.1","eslint-config-airbnb-base":"^13.0.0","eslint-plugin-import":"^2.13.0","mocha":"^5.2.0"},"dependencies":{"inflection":"^1.12.0","lodash":"^4.17.10","mongoose":">=4.11.0"},"gitHead":"a569a7a15cbbe2526b8db78ce36a79cb94d87443","_id":"mongoose-association@0.0.7","_npmVersion":"5.6.0","_nodeVersion":"8.11.2","_npmUser":{"name":"vickenstein","email":"victor.zeng@styluxinc.com"},"dist":{"integrity":"sha512-bgJmr454H7jFE2sgH0WnBgnKpZbtQ8tHKc7yj9yCLfWNFQpjg8wFdLlm8Agv4JuEy3maARP9q+JP0PmBo8Q4GA==","shasum":"784ed475bfcddff7c8e9b6546a4ce2745d1381d3","tarball":"https://registry.npmjs.org/mongoose-association/-/mongoose-association-0.0.7.tgz","fileCount":36,"unpackedSize":111067,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbSSk2CRA9TVsSAnZWagAAqz4P/33+bEy3/7v6S+TS7yPV\n5wBsjPNtLH+f54llNMW2IGJnP7yYCF9XL3hiu7wdXmLmaOWfXEnSkvNOhSUq\n7jCh+m9KrVvanBomU3wEztK2XUzJyGgMGXVxBbFwLaNdyPV8q+ML7lmdv7hB\ni8qGDZjoODKatok723LNbe0Yu+Iomi8TtY4UeVyswQgldW+HZEkYIlKkHVdS\npAq2Y+lvpHWf/92jAAm4/DzSbfiewmufU+u4ObnaqLk4O0ru0Rap/yX1IkBW\nK2cQXcB75KO7M06adcOEW24DDxw6AYOtCoBTjtYpduUQLh4Rzzg7i8K6JKKw\nMjzUA5GOub8DIjoULO5D9WYCbrmvSS2hlD94WIQvg5oxm5Z8qzXAiKHACi1P\nbJqf6BIKnGwVC0mAg0GXgx/Kpk5GRQ+16mYYSBfD829d902sTmj+HynfSsmb\n6eZBF40lxo7lrt8vyqffxnb9/ZkvGi8IQH+Gknkw4NQDlfR8LS0rW8daO0ai\n/jOxfQycDYf6Hu9Y4ruQaepY5J/1hA/Zw/3fbVXFblxIEpDLIXOaLaqRM6/M\newRLTLe8uyHlWdwwkRddWAy29aaNFJq7yVcCUowdLgVkLULcNPz+KSiFS+Ou\ns31XSm0kqyPU8RzX6cBXdE9BaRCNNhay25rVEWAL8Lp78DppTUudwMG8PusD\nSMiE\r\n=m6Ql\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDuj28+L72Alj/V0IGOW3xUOl1KvP9MOhW2eUnJiy28pAIgCXZXtZfsAJA8Hf6GF/SOSEYkP9fdh1oYArGMMtGXt0I="}]},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-association_0.0.7_1531521334834_0.32522075847926835"},"_hasShrinkwrap":false},"0.0.8":{"name":"mongoose-association","version":"0.0.8","description":"A cleaner and faster way to setup mongoose populate with virtual field","main":"index.js","scripts":{"test":"NODE_PATH=. mocha --recursive --exit","lint":"eslint src"},"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"keywords":["mongoose","association","relationship","populate","virtual"],"author":{"name":"Victor Zeng"},"license":"ISC","bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"homepage":"https://github.com/vickenstein/mongoose-association#readme","devDependencies":{"benchmark":"^2.1.4","chai":"^4.1.2","eslint":"^4.19.1","eslint-config-airbnb-base":"^13.0.0","eslint-plugin-import":"^2.13.0","mocha":"^5.2.0"},"dependencies":{"inflection":"^1.12.0","lodash":"^4.17.10","mongoose":">=4.11.0"},"gitHead":"58980b81bc8b325cbd54415c117534614a7a259e","_id":"mongoose-association@0.0.8","_npmVersion":"5.6.0","_nodeVersion":"8.11.2","_npmUser":{"name":"vickenstein","email":"victor.zeng@styluxinc.com"},"dist":{"integrity":"sha512-erPvf/VS3JguggWhyTs0AUrLQPWdFNgu1tHD2STanwqoCo914qytk7SqI8oWwv9KxgsH+jdJAHfQ72/Bcrw0fA==","shasum":"2c10d4bf82e3f1e35170d010b9bb945ef41eec3e","tarball":"https://registry.npmjs.org/mongoose-association/-/mongoose-association-0.0.8.tgz","fileCount":38,"unpackedSize":124035,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbTBUTCRA9TVsSAnZWagAAMyQP/2ZAP6y4qx4UlyKouKRz\nTa+p56DEooSa5hBxBfpo64YTlbzBJ7Vd0bGIg9tOSgZMmX5TA9kesBlNoI9m\nqXUmvr7CE9ktv9HIw8Kj8aam6ruD5a4591ACaEC5mWzeHWPqelgyGJSORFhQ\niqsJfHcleskyqPnLu4TJMHSTE/gn8Qu7NoGXVJcE2Ywjemhz/fsi7AFZwdON\nUY3Hs0I2PaGsyBbrz0Xtp4v4S+l8LpjF6xCa5nHuz1zE3ygSmBavsZxtAXcg\n73+B7I0sa65Ad1J3zVc2Ci7CoqfFurDa7NuPS8BoRkWWYw/UDoA1t43Y1c+W\nM3TaZp3vQdxth+NLF8bo19/+Oib1CtlyXA9O3EK3BVfdk/fMyEKOZgmOTGp+\ntx/3fi/zkUi8p0pmp+2xzoG2gnM1coBxMLlOibOUSGxcsSeUAItL0OmDcVJh\ncGLzmBa4z6KvM+HPDH1x0CzYLvi3KMYwZr3PnAsfVRh1TglaBOl6ILjF6HiY\nmDpeoT9RXQarF5dirMoTq1+NnxY0eRuOyLJZvJzlOx8IPJJbu25z4/+5Yu1A\nhGWRWD6ml9v6ygGnE95V/8OuFmQVw4nSz6PNgWVnwoSnPNlOwseDgkuNSKG7\nmxRP0RxYpeIDP4Hi7PTUnIE30x5nsmcyMoafx86vadyXkd3uPDxtunapMFIb\ngUFs\r\n=KolZ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDEi2aXgM4W0OOVyNRrKxG9xyxsu7GMx6hLbVLLSx82aAIhANbgO8167f3jlQXBPhMQoAChcL5lrgK8eG/PHEAd+dl4"}]},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-association_0.0.8_1531712787576_0.17824916733727303"},"_hasShrinkwrap":false},"0.0.9":{"name":"mongoose-association","version":"0.0.9","description":"A cleaner and faster way to setup mongoose populate with virtual field","main":"index.js","scripts":{"test":"NODE_PATH=. mocha --recursive --exit","lint":"eslint src index.js"},"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"keywords":["mongoose","association","relationship","populate","virtual"],"author":{"name":"Victor Zeng"},"license":"ISC","bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"homepage":"https://github.com/vickenstein/mongoose-association#readme","devDependencies":{"benchmark":"^2.1.4","chai":"^4.1.2","eslint":"^4.19.1","eslint-config-airbnb-base":"^13.0.0","eslint-plugin-import":"^2.13.0","mocha":"^5.2.0"},"dependencies":{"inflection":"^1.12.0","lodash":"^4.17.10","mongoose":">=4.11.0"},"gitHead":"d2aa4d0c1d9d83675fcda10c74bd26398b46b4c0","_id":"mongoose-association@0.0.9","_npmVersion":"5.6.0","_nodeVersion":"8.11.2","_npmUser":{"name":"vickenstein","email":"victor.zeng@styluxinc.com"},"dist":{"integrity":"sha512-xFOIW4zPyQ4a5Sv7QdqAWu+otiw67oTtyST9buxh1zWa8TjfpJJOPcGHxRxQYQaBAYw4fGGoCRWbMP5YHsDwgA==","shasum":"096e8c22c1a77c64c539786445dde8a73ffc1928","tarball":"https://registry.npmjs.org/mongoose-association/-/mongoose-association-0.0.9.tgz","fileCount":38,"unpackedSize":125651,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbUNv4CRA9TVsSAnZWagAA9JcP/1r7sl9dhfZiQVSo+yWC\nRYk2xYNMfFD0QDgtmDWt9bRfWX9tCQJVLFMq+xs3mjumraQV8vm+NEr+mn7w\nVhHI+biW+w65BSw4QfP4RTAqfeyT+tGqDfOLLmmxlugpmTaRB5VmJwhineWt\noKmETveTqhKQ8S/ZNp2dzCYRluUR8R74LFL/DDQS0ZTcjVuteB2MPCJs+hOR\nbfK7ybynVhpoEr0ki9YKKhpsausCaZcUQUFLR70nHQIFusmTiBKa62M1htOl\nZn7R0jhhKfzGnGHcMmLzbwDuAK4IDvogu3lN5qd94Uzlk6zB420KQeXiz/GB\nE8fa5YVtvlVDJOAjjzFuudMUnS1xpE6JKnGO2IMK+thA0iOP1bGg4/i8neBi\n9qGsGbYwyZmrlv8aDRg+ES1GmFbvMCeM8m6nbX7P1D0tK8xUsVCGACFB1M85\nNv0Y/OlUmZViHT1Zhb8g/rpwMOC7JqsncUkqKinBh2eJzVa4hprm8Wyyg5r1\nZ6MT3TQ5rH2MDhJzkKOQG5FUyOpYr2hDDY8UEMjIv3XBKAfFKGYyQFJyD8au\nz7TxPQFy3Ob8VVlMVyh3XfLdU861+QvxNYcQFpXO+E9gV+8OC7qb/pB1Zyhj\n2Dt1JI+NQo+qdSYx6u/IX6d6dQZivJi8Oo6saQN7vzstyx+rNpTtt+lLQFHZ\nvZeY\r\n=64fR\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDV6dvtarrTPDS9q9mwe2SnwpeA/RGPO5tT4ktTeTvz2AIgU1NDAVymgb49k9Lat1/Npyk3MFfYzK7Pz7vyx/yLJEs="}]},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-association_0.0.9_1532025848001_0.29434143372777966"},"_hasShrinkwrap":false},"0.0.10":{"name":"mongoose-association","version":"0.0.10","description":"A cleaner and faster way to setup mongoose populate with virtual field","main":"dist/index.js","types":"types/index.d.ts","scripts":{"test":"gulp ts:compile && NODE_PATH=. mocha --recursive --exit","lint":"tslint --project tsconfig.json"},"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"keywords":["mongoose","association","relationship","populate","virtual"],"author":{"name":"Victor Zeng"},"license":"ISC","bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"homepage":"https://github.com/vickenstein/mongoose-association#readme","devDependencies":{"@types/inflection":"^1.5.28","@types/lodash":"^4.14.116","@types/mongodb":"^3.1.3","@types/mongoose":"^5.2.3","benchmark":"^2.1.4","chai":"^4.1.2","eslint":"^4.19.1","eslint-config-airbnb-base":"^13.0.0","eslint-plugin-import":"^2.13.0","gulp":"^4.0.0","gulp-clean":"^0.4.0","gulp-shell":"^0.6.5","gulp-typescript":"^5.0.0-alpha.3","mocha":"^5.2.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.9.2","typescript":"^3.0.1"},"dependencies":{"inflection":"^1.12.0","lodash":"^4.17.10","mongoose":">=4.11.0"},"gitHead":"4a650f47bb83d8014520f9265afc73e6a90efb49","_id":"mongoose-association@0.0.10","_npmVersion":"5.6.0","_nodeVersion":"8.11.2","_npmUser":{"name":"vickenstein","email":"victor.zeng@styluxinc.com"},"dist":{"integrity":"sha512-7AxfM9wLEEKr7BwtM9fyoKLV65kqIzivtrfEErkjDu81pKZ0OoBe6mwvbb4GcPJQTCiNj70TSoadYT1Psl82gg==","shasum":"97f41bac9a146a2268c4117150b3e757d1f9ac44","tarball":"https://registry.npmjs.org/mongoose-association/-/mongoose-association-0.0.10.tgz","fileCount":72,"unpackedSize":204458,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbZ7unCRA9TVsSAnZWagAASTcP/Ro42R7ry58PQPqBf3++\nr1+vp+ZrBUtzeDgdxKNHFjSpu1ASvFjGyT25F1kNH55iM2Q5eFEfqcdnkgiE\nVOFhsGxnWXafirvigbR6uH5XLwNxVFbrJBhcXf/+MoymEcFdQUOLrll6+3O8\nbN9KJFksN155nKKdIKJkZb36+QW7Fb5dYVrlubYhWSzP516dNFJbgMvAA4ck\nb0spJcP+uwpg85/HavMZVDY/ooBRRa1o0Pr95AOXs/54CfE77jrwseE3s/CW\nwHhRv2srQpeKY0WKz7L0wJMhITc0flA5NbPPqYym7Lv9HPJ/uxGDjpriNsuq\nWUn5eXlmcFUd8jc7bkBEETzI4knBVWgUJY7xNm91u99KMU3XIpP+sQSAj333\nr763SxhEO1pxXNbRwt6/wiNRKtKLDxED6nrB7WvS+Rqhd/cgO+uu9nvX0PX3\nS4e1rAvVnO1S+iuMTyhNuzbpBomG3bSY3WFbj+bqJ9KKUjiBIM5Mi5AhMcNx\nmNGFlYgrakEsGqCsFYvl2js+atHWrZfPQr2psAl22+outDL95Q+yQBcJpR4C\n9LuMB2lkfwdyEKqNcgkOe5GWuwpJTptTVqxBl6tg2SLrMz7ukKW3s1/ztWfC\nozBhV7BxFKY7pQypU6LsbT1YsayCZXyaS5oQuDB2nSUntz+Hg2jOx/2edSGu\n0Hz/\r\n=bf9x\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDc/X26PB8yiplJrTzYUKrbOKeiqSV+pUBYwR3f8EbnpQIgMWTqy9+aJblk8Rvtt38LFIWd306Jk6JRmi2NEEfbb34="}]},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-association_0.0.10_1533524903020_0.2238313057431114"},"_hasShrinkwrap":false},"0.0.11":{"name":"mongoose-association","version":"0.0.11","description":"A cleaner and faster way to setup mongoose populate with virtual field","main":"dist/index.js","types":"types/index.d.ts","scripts":{"test":"gulp ts:compile && NODE_PATH=. mocha --recursive --exit","lint":"tslint --project tsconfig.json"},"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"keywords":["mongoose","association","relationship","populate","virtual"],"author":{"name":"Victor Zeng"},"license":"ISC","bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"homepage":"https://github.com/vickenstein/mongoose-association#readme","devDependencies":{"@types/inflection":"^1.5.28","@types/lodash":"^4.14.116","@types/mongodb":"^3.1.3","@types/mongoose":"^5.2.3","benchmark":"^2.1.4","chai":"^4.1.2","eslint":"^4.19.1","eslint-config-airbnb-base":"^13.0.0","eslint-plugin-import":"^2.13.0","gulp":"^4.0.0","gulp-clean":"^0.4.0","gulp-shell":"^0.6.5","gulp-typescript":"^5.0.0-alpha.3","mocha":"^5.2.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.9.2","typescript":"^3.0.1"},"dependencies":{"inflection":"^1.12.0","lodash":"^4.17.10","mongoose":">=4.11.0"},"gitHead":"4a650f47bb83d8014520f9265afc73e6a90efb49","_id":"mongoose-association@0.0.11","_npmVersion":"5.6.0","_nodeVersion":"8.11.2","_npmUser":{"name":"vickenstein","email":"victor.zeng@styluxinc.com"},"dist":{"integrity":"sha512-bFdUYIeeg2V+huGZFTRVX3JpuOpdQsiuGtqTsEV+YSrKbeE+DuRlUx1Jj8sNcuWHX2WxCUWtf1G42ssbMdNSrA==","shasum":"93c57ab3247c3a117b044e8eaac88fb817072c11","tarball":"https://registry.npmjs.org/mongoose-association/-/mongoose-association-0.0.11.tgz","fileCount":71,"unpackedSize":205068,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbaniZCRA9TVsSAnZWagAAoAsP/38RMhJRvc20xD0GLiDe\nPiJnqL017LXPx9Aj4ERC8wiFeND5YZ6nTqjjRSE7GGYfE0cXsS+fM25r6dEF\ntcwKeflzqqB1JnSNbLpSn+nquD1E2/YTV+G8prHO/z+DlfCP5WZBXVKP30tp\nBTi2IcvZrzPAWrx1h2YNpDHQp6RsP6GMQlIAvGm9kyFeO1WhZ2SK3ukkHjH0\n/GyVsjXYQgzai8RRPcuvcKxot+8rZxsYOX31Vfx8L1TzMuK7ixR3I573p90p\ngk19g3xx4fRSg1FdFudhR7VLqgj3ptRq7QuHJvPnHZ/k+Vij20q8Hfm1tQGF\n5Ysk2AAZWpZHrdaEJWZyqQhrqn76BMeYPM6zBSobx5eyBo4UgetL9QNKKE0j\nmvlfwL/5t7+LlXnLUrKC5BYP0qj34Fh7/ihTecjwNN2A8643oaTo46Gsvt/X\nI3fvYqwZ7bVit98QjzUCNJhnOY6iZyXnnFTKr3h+9u8g7TckQpve90yrodcb\nnVRTikg6R5QKbG3tc7ddiVTrGNexIeY9QW8pQeof2+VBeRn4Yz5ZWgBtIiIy\nAjokecCCx9ggUyB2bv5aIG5wNu9mfwdj/IpSFUlNHd/AwQNnEGNfbiv/BUQc\n6FGGOeitG73WXePX8Qfjkkrl8YxC6Sq8jL3CzXMZGuov2Sv9olvuFqEDXkWx\nIpht\r\n=SViv\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD7KNLA9OEiE+WiSe5a3tE6VrJjRwvZwMSqHVSrqPGpxwIhAJg2you/hHgaD33ynzbW6NaNCc1E7L42dKAJQtz6zw7m"}]},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-association_0.0.11_1533704344983_0.5848697922026012"},"_hasShrinkwrap":false},"0.0.12":{"name":"mongoose-association","version":"0.0.12","description":"A cleaner and faster way to setup mongoose populate with virtual field","main":"dist/index.js","types":"types/index.d.ts","scripts":{"test":"gulp ts:compile && NODE_PATH=. mocha --recursive --exit","lint":"tslint --project tsconfig.json"},"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"keywords":["mongoose","association","relationship","populate","virtual"],"author":{"name":"Victor Zeng"},"license":"ISC","bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"homepage":"https://github.com/vickenstein/mongoose-association#readme","devDependencies":{"@types/inflection":"^1.5.28","@types/lodash":"^4.14.116","@types/mongodb":"^3.1.3","@types/mongoose":"^5.2.3","benchmark":"^2.1.4","chai":"^4.1.2","eslint":"^4.19.1","eslint-config-airbnb-base":"^13.0.0","eslint-plugin-import":"^2.13.0","gulp":"^4.0.0","gulp-clean":"^0.4.0","gulp-shell":"^0.6.5","gulp-typescript":"^5.0.0-alpha.3","mocha":"^5.2.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.9.2","typescript":"^3.0.1"},"dependencies":{"inflection":"^1.12.0","lodash":"^4.17.10","mongoose":">=4.11.0"},"gitHead":"621fccf116006072cfed11e8472957e880fc8450","_id":"mongoose-association@0.0.12","_npmVersion":"5.6.0","_nodeVersion":"8.11.2","_npmUser":{"name":"vickenstein","email":"victor.zeng@styluxinc.com"},"dist":{"integrity":"sha512-nsdAm+sIk0Z2qXxqefYkbOvTvHLxllG12/B1XH8VexpzwFLqFB8+EVPLY3J6DBon/Vfa/FLwVnmvUi08/fwkfQ==","shasum":"a4558fd964a30968f7a697c814c7de29843eb2d6","tarball":"https://registry.npmjs.org/mongoose-association/-/mongoose-association-0.0.12.tgz","fileCount":71,"unpackedSize":205080,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJban73CRA9TVsSAnZWagAA93cP/i64I+iXAA7sC0BHKULy\n1doR5072iuMIhh7TtVzuOsTRdXhE0PB/sy9xnMBuUiTOmwNUWN3cjNcUhBQa\nAAzE2Bh+Xe9v81mNBFranwfugCSlmDht/pjUFTHDzdQfWKsD4yRa3vvRGfWN\n7fYmq40r9otuF37ed9cLxrcwn3RicUGexRyHGFKXwtmdhSik+irLCoxmM3Ng\nY57JDRl1zDScQn/DlNLiflvVT8XkDYwn3BrhDHJd6z1qetT9FemS0rdknepx\nt5qRHNdRYtJPbONsiI8mVtGIhXz+5rJmqrRAzY2FtzDRcQok7dT1UN2/FtCE\n9nwz4c8IOpKG21HdsgKd4J028mCtE1o8QHLtI9ouPCnVX+oPhzF0HYFH5yxH\nxg5szWDgxY547LvJu0UJS7MXAhvROku30JERL6gPCvriguc10wt57WCTrMvI\nugQm3GOhqao0W42ghF93S5TC76004mGUKneGXImYghr1ZHiavtiIaZAvcau/\n6anjdshrZloG/cGxT1ed1QO41KEiFi+TfDAC7qXqvkTAXbJIdpgIxibKwecV\n+gbb6BfHQ2Y2U47hZi1faUFOZXpcNfEULj13nxB5fx0cey8gqkP+5v3Yx0bv\nGd2A8/aQuUxeVQK/21X3jzrruB19YjXfD+BMck+gRYuPSS83029bbpSFVqDM\nr8oN\r\n=sduk\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEelZ6ND1Ujp2ctAs4Y3YUZCG2zG6NQrlCDRtasO6M/iAiBiKhkZMUCbtVm5UjeJeXI5ZL1sY5BxZ8OEGJihbkgc5g=="}]},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-association_0.0.12_1533705974739_0.3834012570229832"},"_hasShrinkwrap":false},"0.0.13":{"name":"mongoose-association","version":"0.0.13","description":"A cleaner and faster way to setup mongoose populate with virtual field","main":"dist/index.js","types":"types/index.d.ts","scripts":{"test":"gulp ts:compile && NODE_PATH=. mocha --recursive --exit","lint":"tslint --project tsconfig.json"},"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"keywords":["mongoose","association","relationship","populate","virtual"],"author":{"name":"Victor Zeng"},"license":"ISC","bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"homepage":"https://github.com/vickenstein/mongoose-association#readme","devDependencies":{"@types/inflection":"^1.5.28","@types/lodash":"^4.14.116","@types/mongodb":"^3.1.3","@types/mongoose":"^5.2.3","benchmark":"^2.1.4","chai":"^4.1.2","eslint":"^4.19.1","eslint-config-airbnb-base":"^13.0.0","eslint-plugin-import":"^2.13.0","gulp":"^4.0.0","gulp-clean":"^0.4.0","gulp-shell":"^0.6.5","gulp-typescript":"^5.0.0-alpha.3","mocha":"^5.2.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.9.2","typescript":"^3.0.1"},"dependencies":{"inflection":"^1.12.0","lodash":"^4.17.10","mongoose":">=4.11.0"},"gitHead":"1fb0af7e6709341534cc310fbb64a8b0430800f2","_id":"mongoose-association@0.0.13","_npmVersion":"5.6.0","_nodeVersion":"8.11.2","_npmUser":{"name":"vickenstein","email":"victor.zeng@styluxinc.com"},"dist":{"integrity":"sha512-qMQdZtmcM1xJBfiiAlvMSf/7gRlMTaC4A/RR39sVofmo6APd+5JzUykYRuqa+QzqdscehZKG995pwlohK5kLKQ==","shasum":"f6d9ddffd7e85328e5b4e8da95b8ff34a9674f1c","tarball":"https://registry.npmjs.org/mongoose-association/-/mongoose-association-0.0.13.tgz","fileCount":75,"unpackedSize":212983,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJba97iCRA9TVsSAnZWagAAxiUP/AtbyeCFupdguqKMrVYl\nlzExkhoIvgzbgsLivAAdiIHejFX7PKyDTNENDisjV+R87ZJgpZ9YP8qcaD3w\nyWQWPHeQa1V5MxhsvgaDNmpOEecHhqv4oXrgNhaHm5oLg6lQBBKcTBBk7xJ/\nA8Fp6oheWu5QXRFf0LcAFQz0WmD49TH1OfzjR6x9viaJ943Gl090srbs7czB\nl3qlx07A6vAjhoI9cdo9uH1UdGJLM2N6HnZCfSGf5fNouZn+jskcXgJMzn9J\n14LSBivEprHTYrJ0k7/hB0sH2akipNMFKDifxE9+th3/PSggG9Iw3Sx9IjcH\nN8uwx1cQiYluvdop8K9TUELdgVspoP/L0gttdCMjgR1VQ8cylV3cE0mhU5T1\nUrM9OdvPSjI5RkHFPmxe0dj0+aHOASffpQKn1514OpFhemzgvFjURDoOB3ur\nsmzAUAVjPFsMwmUgpeWvPjfQLSTNBMh1NbdPBQSDujqyEfDH1682w5lxn9WB\nuDmSj7DMiGNVnMEKDdImNGV0DSHaOscqUaxQ+TVRXpStWbUUNWuwI6h36k3n\nQtxJdJ49UJ5foScz9Lya5+icvznA8Q5mTT2CuCBt3tRM7U0HXoOMlzmVVZHA\nEVeEmcF3wMaI15gVcKPDwWWL9lxY2dz8xFMJoOIgokyrDNTz29eq9APwdMTz\nd5VR\r\n=7y8v\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHr/r3SKzyHwNPjlwPTZEgNL0rGx2/ovAFRWtZjTQU/4AiBh7d1fxYlbKCMxzPn2lbM1LMMPJr2g8ZzWetj147USnQ=="}]},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-association_0.0.13_1533796066243_0.7167685269752186"},"_hasShrinkwrap":false},"0.0.14":{"name":"mongoose-association","version":"0.0.14","description":"A cleaner and faster way to setup mongoose populate with virtual field","main":"dist/index.js","types":"types/index.d.ts","scripts":{"test":"gulp ts:compile && NODE_PATH=. mocha --recursive --exit","lint":"tslint --project tsconfig.json"},"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"keywords":["mongoose","association","relationship","populate","virtual"],"author":{"name":"Victor Zeng"},"license":"ISC","bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"homepage":"https://github.com/vickenstein/mongoose-association#readme","devDependencies":{"@types/inflection":"^1.5.28","@types/lodash":"^4.14.116","@types/mongodb":"^3.1.3","@types/mongoose":"^5.2.3","benchmark":"^2.1.4","chai":"^4.1.2","eslint":"^4.19.1","eslint-config-airbnb-base":"^13.0.0","eslint-plugin-import":"^2.13.0","gulp":"^4.0.0","gulp-clean":"^0.4.0","gulp-shell":"^0.6.5","gulp-typescript":"^5.0.0-alpha.3","mocha":"^5.2.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.9.2","typescript":"^3.0.1"},"dependencies":{"inflection":"^1.12.0","lodash":"^4.17.10","mongoose":">=4.11.0"},"gitHead":"1fb0af7e6709341534cc310fbb64a8b0430800f2","_id":"mongoose-association@0.0.14","_npmVersion":"5.6.0","_nodeVersion":"8.11.2","_npmUser":{"name":"vickenstein","email":"victor.zeng@styluxinc.com"},"dist":{"integrity":"sha512-AbehSHl4ccscEYI5L7R7jwrN795ryZFcOAFjqxY/jhEuSWseRwXH9a7cszaWmV5AMDRhgdQmcAu/WD/lWfK9dQ==","shasum":"ebdb63d335ac7267b6cac0367eb6dd8218071a3e","tarball":"https://registry.npmjs.org/mongoose-association/-/mongoose-association-0.0.14.tgz","fileCount":75,"unpackedSize":213070,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbbHcLCRA9TVsSAnZWagAAn5EP/j+HhvhsDWZBlJMcEqFf\nvFDwx5RMuh4EXxJaXbS7H8mLedjexlN5kH6zF8kx88j8cdiuVQS7+MR0q1PY\n6CYTQR5YeUM7ishyeK/fPB/C3E0vyAQIFKuc2x5qIrhoHbqffFJLuK4K/P0C\n7J1R3+RwwH4sreMecyZqUxXuulMvag2nPIymH60miDpdTf41oM46srQqgl/f\n8wbgKb6vL1KV+Tka82tqEkkOG5ApwoY8I5pru1kInR/3x4KhQuwaenNm16m1\nfNQ8+4OpWcILcPXMWLaK/F35VTv6OXdcQiU41hKBKPgSiHucXhtWK4HwLFJ6\nqOBkJE7JMOgFE+yayGmz/GneKWegDzQCpTQw8DKdu3X+gW08O64pCGlzJxSV\nFL8ARvXAT9xpC4t1AbZYhuwhnIQ4G3euMiubv4cAZGQb9HCAlmYTwOfLa5QT\nFg1oynEPUmwoxGUjGMKhjex2Kt1IpVkm95eBvCFhVAf2IKXD7vsrXEeOXrqO\n/XiJ6JZzpNfsmib/Y8A/U/IXopjBeubQqBun3FLHBLyNs49gVMUWcbZTbkkS\n10BepcDUBgkXKwHpR2AAGwoorqjP1YA6JDpz4l1+VH3kuS/sE/k/EN33PHhW\nQPJRNPRYsej595APX9ic87nS3kIISqguKOhGhyW4YVQblx7UKgXe40s84dEw\nVZ7h\r\n=JiEu\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCerYne/O/r/bw79mVFpJ7GbyfG0aiiuYbzIMQunci2+AIhAIqMDSneviAYIWAawLwZ4bOiIzVbcIfHdNDNM1H3rvq+"}]},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-association_0.0.14_1533835018314_0.740144988438932"},"_hasShrinkwrap":false},"0.0.15":{"name":"mongoose-association","version":"0.0.15","description":"A cleaner and faster way to setup mongoose populate with virtual field","main":"dist/index.js","types":"types/index.d.ts","scripts":{"test":"gulp ts:compile && NODE_PATH=. mocha --recursive --exit","lint":"tslint --project tsconfig.json"},"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"keywords":["mongoose","association","relationship","populate","virtual"],"author":{"name":"Victor Zeng"},"license":"ISC","bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"homepage":"https://github.com/vickenstein/mongoose-association#readme","devDependencies":{"@types/inflection":"^1.5.28","@types/lodash":"^4.14.116","@types/mongodb":"^3.1.3","@types/mongoose":"^5.2.3","benchmark":"^2.1.4","chai":"^4.1.2","eslint":"^4.19.1","eslint-config-airbnb-base":"^13.0.0","eslint-plugin-import":"^2.13.0","gulp":"^4.0.0","gulp-clean":"^0.4.0","gulp-shell":"^0.6.5","gulp-typescript":"^5.0.0-alpha.3","mocha":"^5.2.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.9.2","typescript":"^3.0.1"},"dependencies":{"inflection":"^1.12.0","lodash":"^4.17.10","mongoose":">=4.11.0"},"gitHead":"9b9a5af6bb2a8e6a4c8cc8416a73f39fa48862ca","_id":"mongoose-association@0.0.15","_npmVersion":"5.6.0","_nodeVersion":"8.11.2","_npmUser":{"name":"vickenstein","email":"victor.zeng@styluxinc.com"},"dist":{"integrity":"sha512-F3quVZDK6FsemvOjh+S/u44esg+rfW/bOZ81RoaJzrF3ltrlnQOL4MREjiwALHHQG+MMvhptIzCUxzD5qFV26w==","shasum":"943b6f5999218974673b70a81908d249debb11e8","tarball":"https://registry.npmjs.org/mongoose-association/-/mongoose-association-0.0.15.tgz","fileCount":75,"unpackedSize":213366,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbbLhRCRA9TVsSAnZWagAAAQYP/1CtCFcXvnmfv9xDiUpz\nq8KIyXXvsjS9PEYVrnl4vk9t+IgMPtz2tZzt690fQ3gZpFS2tOJTsDuAQ+xn\nTTvpxSzfaDjGEEd5x9JeS0o7bxRp5r7k2SOJvJJmLzDgEIK0NzT3Njgdt+q9\nd4aKjEimVzjjUW7t6iVxJfuLubffys+zvObnwh9OFnyurM9LXeFRVxamNV27\n4ItAKvdqIryOSb/gfykQ5oSTEtUVzkpWazOsGUSGSLhpIQpeMS6VLPNbn/9y\nDmEiqk5KwfQeuEfTY9Xlqk1nvu8pWUHLS+DfzGN8L378ilrozeL6b6kMKETY\nBOC3nbj1QWgdtvts2wnfjQ1gZDGIR1EqWlLhHdTClxw2tIwEiDB3lD1h2udv\n6xC9WkZMHZ98wTrYWhixKi0I72zT9Rj8z2yP6vt0wDJ6fIkVkO1q3Gg/zjsc\nq1ySA/8VaBD/RcNwYq734FmWrZe0paag4jI7kC+JezdGFZrnyt9qm7iidiRd\naSE6ymwL3S5qKHItpCYFS4+bB6xEXaJnJxcdZrOVs/WceUjHf7bzexerUld0\nofYs3LmBGQn5p7fTysMwiA9B28k44OulJiIJ8XG6AQqcXYS1a3/3feCWoPlA\nvtrRGdXl1KALTV/Yl90RAdiqwwkzYE8u02vE3KAssqt19W25HHaXCsvMfqyC\neAqT\r\n=AsG8\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDru9FyGfM9E4Ed/78sRiH7HL1XsgEziWIJErTUmxGZYgIhAJQD3soydadED7sbadRV8wvzXuPY5A1cBTCOCgJS4Qy0"}]},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-association_0.0.15_1533851728324_0.6037530047009521"},"_hasShrinkwrap":false},"0.0.16":{"name":"mongoose-association","version":"0.0.16","description":"A cleaner and faster way to setup mongoose populate with virtual field","main":"dist/index.js","types":"types/index.d.ts","scripts":{"test":"gulp ts:compile && NODE_PATH=. mocha --recursive --exit","lint":"tslint --project tsconfig.json"},"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"keywords":["mongoose","association","relationship","populate","virtual"],"author":{"name":"Victor Zeng"},"license":"ISC","bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"homepage":"https://github.com/vickenstein/mongoose-association#readme","devDependencies":{"@types/inflection":"^1.5.28","@types/lodash":"^4.14.116","@types/mongodb":"^3.1.3","@types/mongoose":"^5.2.3","benchmark":"^2.1.4","chai":"^4.1.2","eslint":"^4.19.1","eslint-config-airbnb-base":"^13.0.0","eslint-plugin-import":"^2.13.0","gulp":"^4.0.0","gulp-clean":"^0.4.0","gulp-shell":"^0.6.5","gulp-typescript":"^5.0.0-alpha.3","mocha":"^5.2.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.9.2","typescript":"^3.0.1"},"dependencies":{"inflection":"^1.12.0","lodash":"^4.17.10","mongoose":">=4.11.0"},"gitHead":"0bff4dbca8e45a9908e46a0d639b1a6221f3c561","_id":"mongoose-association@0.0.16","_npmVersion":"5.6.0","_nodeVersion":"8.11.2","_npmUser":{"name":"vickenstein","email":"victor.zeng@styluxinc.com"},"dist":{"integrity":"sha512-ES5GHWTxi6EIufWg8I+r/DMtkrTKxFnzAbnUVF/n+n+g5cUTMT1fuh0cdydF14K912CMrZaSg9d5ECZZtuuqPw==","shasum":"03810369d21dc672cd3089ddd9b20af632136cf0","tarball":"https://registry.npmjs.org/mongoose-association/-/mongoose-association-0.0.16.tgz","fileCount":76,"unpackedSize":227077,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbbgiFCRA9TVsSAnZWagAAvn4P/1eqSqeePlEymsyfEoNH\nZCEHJSqdF/1ZbFriB1mrFy/UOEpFydIm6nRXqBNaX7ly+cDVmScJSbbbcTZb\naGBshcPhIleJe7RgcZD1qiYhiP6C/b7QlQDwp14dHcYVYX/pRZ2VQG2gmzRl\nAOLUHn68Op/sSWIfRgFOMwjeMPx5oEZ788u6l1P5Y2pzV92nfyCW3RbTQoR0\n0Q4AG87NQXYud2Zpo44iJMxVdCOnoYRfgzMdhlVpjlRlmkH9Pv7Ioay0ZpFV\nYZNvPtD5/xCqA9kCKiaqYPcz64mib6OJ00nXIRPqrqeklDm21cVPkpIq7shG\nswqxOUtUJoZBt7CbireJo7TVm+KrXoA022FBr5VwVHN8TgkOjPghzIgkEU7h\nsc13r4MnEqUHRneh+tHmSSB0efolBLpQadSccChHCUCtYdZldkk7YqXVNGhe\nqpZxtNASM6jQIGEavLcreUC1HDcSGh3jbcbaNlCKYirH9aV1NRHfMASeY56i\ngDoSjXUaPnwbkl4oTcnZq4/MrY5MWy0L+UoOWvnJJmn6POP6wABf/LJU/V+U\ncU2XrI5kw9IKkRN49p+bYUEWOC0Cx+Ct253DExDg8SJC5DWH6DN9HMBpzwU7\nSe/lVB9K7vvFnURdoaKExtJkgAGeYZkpU8JBs0eCdvyAxRKLMC7+473P9YUN\nc5gD\r\n=4yGj\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAVenT1w10VszkmsybGEt+BmGWKfGX+NrJGJNGQdsV7CAiEAraqIQd8ltjmmPeTjlc8ifVVOLs+bWCvpDXUfC5B5k10="}]},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-association_0.0.16_1533937796872_0.25629930317576033"},"_hasShrinkwrap":false},"0.0.17":{"name":"mongoose-association","version":"0.0.17","description":"A cleaner and faster way to setup mongoose populate with virtual field","main":"dist/index.js","types":"types/index.d.ts","scripts":{"test":"gulp package && mocha --recursive --exit","lint":"tslint --project tsconfig.json"},"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"keywords":["mongoose","association","relationship","populate","virtual"],"author":{"name":"Victor Zeng"},"license":"ISC","bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"homepage":"https://github.com/vickenstein/mongoose-association#readme","devDependencies":{"@types/inflection":"^1.5.28","@types/lodash":"^4.14.116","@types/mongodb":"^3.1.3","@types/mongoose":"^5.2.3","benchmark":"^2.1.4","chai":"^4.1.2","gulp":"^4.0.0","gulp-clean":"^0.4.0","gulp-shell":"^0.6.5","gulp-typescript":"^5.0.0-alpha.3","mocha":"^5.2.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.9.2","typescript":"^3.0.1"},"dependencies":{"inflection":"^1.12.0","lodash":"^4.17.10","mongoose":">=4.11.0","node-association":"0.0.3"},"gitHead":"40d4c2be02b706ac7b0778a4f9169270eeb03f9f","_id":"mongoose-association@0.0.17","_npmVersion":"5.6.0","_nodeVersion":"8.11.2","_npmUser":{"name":"vickenstein","email":"victor.zeng@styluxinc.com"},"dist":{"integrity":"sha512-64cWpuFXhZM6v+Vy1iTXyyqM0OFvu3KVL8YR8fwsGK1DFc881UPHijJxVGr4Z/nVsbnhOeM6rN06OW7PMXHK0Q==","shasum":"696080d4854bdb583409be8a30bc477b102eeea7","tarball":"https://registry.npmjs.org/mongoose-association/-/mongoose-association-0.0.17.tgz","fileCount":83,"unpackedSize":234429,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbdxdkCRA9TVsSAnZWagAAf6oP/0P/oLb4OOrKLfz0UkAc\nqgQqw0tCb9z45FBFjNsLLL3319xXyHNHZ4k2wFlECX10SSF6SRV68gpMOr3j\nd2YZob8urPR1CCRC9YvyNg2b6ZZKM15fBbewzCNwp8YfV2YUZlpYaTGGXVl1\no92dkokEPKTvA9w2IrGqYZflK6qXawiOsJqxpoYrh4rADUsI1le62DsJr3mh\n3Zhft9XSChD7A99pT3bN7jyqfNVpvYR74v9+Z8AAWkpG2P50k483OcxWWjJl\nsNWuQEuExdDn9nfFJurRB44dTRpfMdPOpxu05whShtw142V4/4Xy8BKzv9rf\nP54s3QQdhBSW8Gf/9+7zHrhbbfRQ/5bmLAz0Zwphy2y57t0KpLqsIlzCGmDR\nNY73wiBAJwOcHQM5KfRHsXrPAyahqa2QNpdfn16rEDQpFrasKTGVlvS5JBQy\neIeq9gISExxQN8pAZDQpxmhBTufuIcB+wv2RBdYiUQIrtIklgJKl3qLmwXwF\nbCYfzm0M1DBDItInUEme3Nul4A/13F+e+ltBwEdkgpMHZx/WvF63+0B6hbcs\nY0SvWTLPsdWVgmiSRp5d5bMXNhF2mr3NuQ+P5uP1z7zDhxmyGx0T80pJ/YU9\n6bKcfdC+yDxRKJKvq5vtItPb9P9v3ymL7Md8ade5j0QGcrMK9Wni21j6/Szq\nshs1\r\n=Upho\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDPGLWCo9214/N8FX0kGBbGeHhesBq8SjQRqhUB+6vDNwIhAPDhG3FvXuU3EaE+dQ5ohMTvoRRjIO/KCgCjnyc7zRUp"}]},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-association_0.0.17_1534531427627_0.6906713341007249"},"_hasShrinkwrap":false},"0.0.19":{"name":"mongoose-association","version":"0.0.19","description":"A cleaner and faster way to setup mongoose populate with virtual field","main":"dist/index.js","types":"types/index.d.ts","scripts":{"test":"gulp package && mocha --recursive --exit","lint":"tslint --project tsconfig.json"},"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"keywords":["mongoose","association","relationship","populate","virtual"],"author":{"name":"Victor Zeng"},"license":"ISC","bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"homepage":"https://github.com/vickenstein/mongoose-association#readme","devDependencies":{"@types/inflection":"^1.5.28","@types/lodash":"^4.14.116","@types/mongodb":"^3.1.3","@types/mongoose":"^5.2.3","benchmark":"^2.1.4","chai":"^4.1.2","gulp":"^4.0.0","gulp-clean":"^0.4.0","gulp-shell":"^0.6.5","gulp-typescript":"^5.0.0-alpha.3","mocha":"^5.2.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.9.2","typescript":"^3.0.1"},"dependencies":{"inflection":"^1.12.0","lodash":"^4.17.10","mongoose":">=4.11.0","node-association":"0.0.6"},"gitHead":"61fa7a5064f4dd4094c56a687b3829860970e5ef","_id":"mongoose-association@0.0.19","_npmVersion":"5.6.0","_nodeVersion":"8.11.2","_npmUser":{"name":"vickenstein","email":"victor.zeng@styluxinc.com"},"dist":{"integrity":"sha512-OAOCawVBcVcuzRxO7OZ+P7R+bQ2/eFSa33piJYkBt5IadIYQtBwizzjcQaFw4aIpVgxvLI1bjlcdj6dmIWT1bQ==","shasum":"9a1ee6810a22469223d08892254ce9124804758f","tarball":"https://registry.npmjs.org/mongoose-association/-/mongoose-association-0.0.19.tgz","fileCount":83,"unpackedSize":235173,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbf1XJCRA9TVsSAnZWagAA6ZMP/3arJUq93JCbKoVfTD84\nhJLYO9aGP4AmJP6l74QC1i2FNnixvWo1wNRM3b/7TyNHkHxFpjLqPLBzVxw3\n8TVTSynjE2pd95xGQNnfImODen974x/f5rcENSfzoDJn/v/sYcIHbF934RKF\nxw5uFGF0mjfLCGbbcK87EjdthfjbA6Qk9tGzJun+Amyd6NldD+/O2eJp2NTB\nDt4Dwu2XPQLGGDhB3D8HyD7vDUyp7wQHWemOA/+FBTUpBWiB8FOAAValwOkX\nuuaQSpYhm7Lx482Fbtf6Ty5xk1YcQlvoVCoUL9ljn8P95EvUt80kX70A82wt\n4x3yAjg4yxJdckh+amM2f89zqNd0Z+HftyS3cZGMb5PV86asgScHFfApoVMc\nEFHR8jyju6PgsA2Xb7R396AvDH7F5bN/XUpijO530DCDDQYTTTlRj0ppb7qd\n6Kzuro/Q9UEfelCodCbRQlxmJdpTJqdpoYo1dxp1t5wPcN29AhptJvLeKVP6\nJ/fs5skz0FvxIrGpDVRIHwtr1RiGlkg7x+tl0Eo0hQMyAg/epZPplJpUONIX\n6Ky9lGm9Xhl4DO9FA9zuh0nx7vOHTTUe/+Rw54B3NBOksK8LL1P+8aepMCKg\nMHFWiQDZmNTScWFFCct7Cj1LijNp9HO+XtAoyHYfkerhM6FpRsfF7gSSwrAD\nXFxp\r\n=sI6c\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEjA61RW8YfabcMWX+ExA6sW010wN+bE5C2Un6iUftVrAiAFn552i53FEVzZNqJEB86HBQQdF2Rd606sdODWHKuidQ=="}]},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-association_0.0.19_1535071688508_0.1727924876565723"},"_hasShrinkwrap":false},"0.0.20":{"name":"mongoose-association","version":"0.0.20","description":"A cleaner and faster way to setup mongoose populate with virtual field","main":"dist/index.js","types":"types/index.d.ts","scripts":{"test":"gulp package && mocha --recursive --exit","lint":"tslint --project tsconfig.json"},"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"keywords":["mongoose","association","relationship","populate","virtual"],"author":{"name":"Victor Zeng"},"license":"ISC","bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"homepage":"https://github.com/vickenstein/mongoose-association#readme","devDependencies":{"@types/inflection":"^1.5.28","@types/lodash":"^4.14.116","@types/mongodb":"^3.1.3","@types/mongoose":"^5.2.3","benchmark":"^2.1.4","chai":"^4.1.2","gulp":"^4.0.0","gulp-clean":"^0.4.0","gulp-shell":"^0.6.5","gulp-typescript":"^5.0.0-alpha.3","mocha":"^5.2.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.9.2","typescript":"^3.0.1"},"dependencies":{"inflection":"^1.12.0","lodash":"^4.17.10","mongoose":">=4.11.0","node-association":"0.0.6"},"gitHead":"de7b785a5fe7a5e943dd63d92c34d8d97488e38b","_id":"mongoose-association@0.0.20","_npmVersion":"5.6.0","_nodeVersion":"8.11.2","_npmUser":{"name":"vickenstein","email":"victor.zeng@styluxinc.com"},"dist":{"integrity":"sha512-bWMdYNLoj6ntF0XynDR5HtTgTHRtE5ZlwErhWpddnS2BgwQPCiZH8Uk3+hkJI6O0+o1t1Qua8Jt191TxPcqkmQ==","shasum":"89798b4050a6eb3565bbedf2b3e7fed84ff8f199","tarball":"https://registry.npmjs.org/mongoose-association/-/mongoose-association-0.0.20.tgz","fileCount":84,"unpackedSize":243361,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb2iNzCRA9TVsSAnZWagAAphUQAJvkyQ2jaZrI68d2Ka4Q\n1WyP21H6qO/Y4lChC3Nk2bySHQXEodo06JpQnVTf5FP1CMTQfiC08nPeIKfc\nw+eRg+eZ3jUBiu9L/i6mHqcnHTrf1fh5VFMg/e6tOVdzFzJaZf2tOOu8HGhe\n0UAHcFq4J+KBNxyyDunTkb0CJLGjSnxAYNCXaEl84creSZe+NaT97wlFnz2P\nBXcVNlr9D4f+YdJvuLOx6+XU13q7uNNvaJG4wV6MCnezbKJuFNG8I2b2VD0P\nh+vxdFc+yIj5c66EWiqxz4KwlL19oBMauaqYyDv+nNknO6pNDSyRrEMCHtCT\n28F/KyFQYtQv6L7Ug1yspvbdt9VWb1auY1332/OJvWjcNLORTsZfhnkDpdBT\n70upqkrT+F28Zu1ZdlznQn3AE3XDoAJ3RDSWnqmHcENTgsNnKAJl3gMk2Al7\nNeNjpfuzYZ5uvtqpKnfgMpteJKa4HbuJlkz71Ag1iWJysbt23ltBLkXjk8gL\nxMmPO4AS4+gwrkTbMxgXCXMhgrIrlLP9fynarffi3sB91bcVq/1nUf+LufNO\n4y7qpMYOWWIu+Bf24KUvSSQdm1NHU0LGKH3KemrlrWCQgHA3vGL9iqtfbBdd\n021rhzI6gTaHUb4jv0Fn3NakmYTBpNjZcPTE+/thL2WD26/1fryvt5wy+71T\nsdAF\r\n=7e4n\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDq5SgjO19CDyG2iR8IXuOlZeJLHF6qSvBDm9jzMwr8rAiBMrYkD4bIAK6eCqBHhKU1k0+HE9OHtcNATt/4uubzimA=="}]},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-association_0.0.20_1541022578350_0.3172452725441379"},"_hasShrinkwrap":false},"0.0.21":{"name":"mongoose-association","version":"0.0.21","description":"A cleaner and faster way to setup mongoose populate with virtual field","main":"dist/index.js","types":"types/index.d.ts","scripts":{"test":"gulp package && mocha --recursive --exit","lint":"tslint --project tsconfig.json"},"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"keywords":["mongoose","association","relationship","populate","virtual"],"author":{"name":"Victor Zeng"},"license":"ISC","bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"homepage":"https://github.com/vickenstein/mongoose-association#readme","devDependencies":{"@types/inflection":"^1.5.28","@types/lodash":"^4.14.116","@types/mongodb":"^3.1.3","@types/mongoose":"^5.2.3","benchmark":"^2.1.4","chai":"^4.1.2","gulp":"^4.0.0","gulp-clean":"^0.4.0","gulp-shell":"^0.6.5","gulp-typescript":"^5.0.0-alpha.3","mocha":"^5.2.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.9.2","typescript":"^3.0.1"},"dependencies":{"inflection":"^1.12.0","lodash":"^4.17.10","mongoose":">=4.11.0","node-association":"0.0.6"},"gitHead":"de7b785a5fe7a5e943dd63d92c34d8d97488e38b","_id":"mongoose-association@0.0.21","_npmVersion":"5.6.0","_nodeVersion":"8.11.2","_npmUser":{"name":"vickenstein","email":"victor.zeng@styluxinc.com"},"dist":{"integrity":"sha512-6fcRq9vOovZDm/LoTXzFJI4Fvdy6m+N/6Yva+eIhM7g3ZmWKVpnSAM7wX43JKq+MESSoMRYEhpxjgMATddvQOA==","shasum":"1ee27cb5e3d8f6fcd936efaa13da35e1b97a92fc","tarball":"https://registry.npmjs.org/mongoose-association/-/mongoose-association-0.0.21.tgz","fileCount":84,"unpackedSize":243341,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb2iaZCRA9TVsSAnZWagAAUrQQAIcQP2tZKwXWa1bvuLrV\n45JIrqYZOr43UC/AKYXF2vdqNk39Mw4j1FM7b66gZyEnSXA4Rz28JIIzxc7G\nt6bbNwb3q4Riv1SIotnCOR91RKK9XDWhUIvC0ufEfCoiUbXS5lVIJ5ZrDaw7\nSwJN0CEb7vsM5kolwKNPHVFgK1uGXnMap3ayWUzIWcj80RZVB0oahK3ccyhm\nWAoSUTtvF9ZpDCqdVOlcUBMSuHqrIfAvgUS77aD65E5iZHlKChkkijbMDCyf\nAMzoJuPeGga/PYtwSinABBsgtdRPqpl6niXvO33FMjRD3pNG+dU0fqZ8lpqr\neROVYrFYerS1WKIZBIW3fJBLZfZCqzI7Z+RjTM7QG8xJjvccsZ5VPSL2qm8P\n1bZmLBaz7OJ42/a64AI9e6ED3YVrf8IozFrMSqEpHFRWy5pMX/Z+bH/vloRq\n+ITGxbMe1QH135z0V0ar+c6pjhp/plo0GL780rMxHx7eajueltGk67egYMCN\nkxQqbmh1V5BoehFTTRXpPdCwJP40tSQUVHUqVAj6SfVePMSzqBp/wXbMrVWT\nSlQvJSWRHcEOmdaTKdZxd1gc4rw49UWQbNfaN5hcTpn3BAfvM2H2oIcH8KpB\nNEreBt2uQ5D6uIi9PZ6ml7C96rlruc+gdXDBVO5tbJ5oBQmHkq63a4KeVMCE\nKSsq\r\n=EEzB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCMzTWt9gIZnyRaJqh9bWe7sA/T90/KikuHac+1Kk3m4QIgK93a+yTUglqlOyAgf9YMTagXr9Uf2HaR8ZgGBaMcRps="}]},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-association_0.0.21_1541023384678_0.8429101231588112"},"_hasShrinkwrap":false},"0.0.22":{"name":"mongoose-association","version":"0.0.22","description":"A cleaner and faster way to setup mongoose populate with virtual field","main":"dist/index.js","types":"types/index.d.ts","scripts":{"test":"gulp package && mocha --recursive --exit","lint":"tslint --project tsconfig.json"},"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"keywords":["mongoose","association","relationship","populate","virtual"],"author":{"name":"Victor Zeng"},"license":"ISC","bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"homepage":"https://github.com/vickenstein/mongoose-association#readme","devDependencies":{"@types/inflection":"^1.5.28","@types/lodash":"^4.14.116","@types/mongodb":"^3.1.3","@types/mongoose":"^5.2.3","benchmark":"^2.1.4","chai":"^4.1.2","gulp":"^4.0.0","gulp-clean":"^0.4.0","gulp-shell":"^0.6.5","gulp-typescript":"^5.0.0-alpha.3","mocha":"^5.2.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.9.2","typescript":"^3.0.1"},"dependencies":{"inflection":"^1.12.0","lodash":"^4.17.10","mongoose":">=4.11.0","node-association":"0.0.6"},"gitHead":"e180841f4c6e4b605f676f41be16b223340d38ec","_id":"mongoose-association@0.0.22","_npmVersion":"5.6.0","_nodeVersion":"8.11.2","_npmUser":{"name":"vickenstein","email":"victor.zeng@styluxinc.com"},"dist":{"integrity":"sha512-PN0OmNOHCW/kyl+Y9tZo4RibW2qlHg707CQQh/B9M68NnO0QgTcnep9nugKadlU3XpbjY5K7ut4JAv5yNSX4Pw==","shasum":"d0c23ee9d4b9a5d5559df2084076a843f4169d67","tarball":"https://registry.npmjs.org/mongoose-association/-/mongoose-association-0.0.22.tgz","fileCount":84,"unpackedSize":244692,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb2j9ACRA9TVsSAnZWagAA/1kP/1pYayveZNMHQWRDFVpe\nc0zGjrbwYIYnSUxbmx6ui3QH5f/mfLtzGullqca9w/sa6us5SnUJ5V+i7Mil\ni7SoFUCxtYvJJfqMzpCBE3PsvvlN/JbfuDJavfgbRe1Uc5E6xByWAI/9Dxcb\nLaOyIPBjk2eah3aPbTxd+SV/z1E1bjgBXras3upnXHSBR1afHCzLK7HC1GWO\nhjCtZ/prsC2lTYXpdLkNE9iyBDXn+RdDP8jNkjUnPErtMOkWzt7NVaAVBd3I\n0YpH9O7Wv1Hky2RJAygVd/TAXQ8jC00VJY1G0sZI6+8PRNDrTtq4G+Br6x8h\nkCmkMzkqJQNdyfiH6/c/c/kvQuoN/KhsjGITkTicnNsUsqSTgobRG5f8Zfi4\n2NEhlDl9lJVKDQBNYBqBUdHwV7CGfv8trfg1gVItk2WQraUQ2Z6+YlgRC14R\nwZQxuwLjXyfekyWre/ISeR275UUH3zWxkbwA6DJMIUMq6a953W5JxOs2T+DW\np3IThnr5fnvhNc8NOkR5TJI+iVfQJQ491hOpmlaXyuATpzUiqUALr4C5BSwh\nPN0JtW4qMGtv8hJ2Qdt3NdOxiEFpklYviCMN1kChpzEnraT4y8g5AUMhyZD1\nreoRdhKO+HoOwe2HmGsxBVTFv6AgUrMmB820xRUPvN1yxpoRiOtPvpzuJCG3\nN6GS\r\n=QkmU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICMNDNz83jT8nwurbZeYTKD+nE+PslqjcCckEHa7QswWAiABCQzVm01xjGGEd+S8sMIEx9a1LcjXsNK/wA9ayaIcbg=="}]},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-association_0.0.22_1541029695099_0.5199997574375992"},"_hasShrinkwrap":false},"0.0.23":{"name":"mongoose-association","version":"0.0.23","description":"A cleaner and faster way to setup mongoose populate with virtual field","main":"dist/index.js","types":"types/index.d.ts","scripts":{"test":"gulp package && mocha --recursive --exit","lint":"tslint --project tsconfig.json"},"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"keywords":["mongoose","association","relationship","populate","virtual"],"author":{"name":"Victor Zeng"},"license":"ISC","bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"homepage":"https://github.com/vickenstein/mongoose-association#readme","devDependencies":{"@types/inflection":"^1.5.28","@types/lodash":"^4.14.116","@types/mongodb":"^3.1.3","@types/mongoose":"^5.2.3","benchmark":"^2.1.4","chai":"^4.1.2","gulp":"^4.0.0","gulp-clean":"^0.4.0","gulp-shell":"^0.6.5","gulp-typescript":"^5.0.0-alpha.3","mocha":"^5.2.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.9.2","typescript":"^3.0.1"},"dependencies":{"inflection":"^1.12.0","lodash":"^4.17.10","mongoose":">=4.11.0","node-association":"0.0.9"},"gitHead":"96b29a3f0687a93b4ff903f817c5a1c01680b86d","_id":"mongoose-association@0.0.23","_npmVersion":"5.6.0","_nodeVersion":"8.11.2","_npmUser":{"name":"vickenstein","email":"victor.zeng@styluxinc.com"},"dist":{"integrity":"sha512-5AgwO7ayk2Geth04JlOJNtpxfK8p5KwXas4JiYZqfCagRONpKVJDar0ZWqBMnDMr23pI5DR0eRzx6g0Y2/p8iQ==","shasum":"3667dbf988b385e94095795cd3d12d598569e9f4","tarball":"https://registry.npmjs.org/mongoose-association/-/mongoose-association-0.0.23.tgz","fileCount":84,"unpackedSize":244692,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb22GZCRA9TVsSAnZWagAAczQP/RHC8GdIaRjq5YeizRof\nMikcw25mLG3HWviele8TKw8W85puMWmPEq3pwjlpKQU+BuvLchsfyiQujDcX\n6c5DCe0vk4hI+0QaOhlqekWttu38zjC84DdEwG0qYM0HFY8JVhmvHrNpsNwQ\nL7IDD+8tA4bcDaMFLkzCT/ohF+tgacGenaae1f+NPsjlHn6w9uHFznhf+CGH\n+Z5PUnCDAJKwJ91gg53swgDQu1/Kjn1/PU5F50pDFnez/tNt0wND/EtduS5T\nQ8T7+h+hrtsIibQJbXucV00En/0+vBFq1xvDtR/3mJz683A3O2ckJfgVj8bL\nohE4OYGCLax4jt0LUxssKWVyRCJk161xY3U9VHttfWF1wBXo4WdF4+MB3CTL\ntCYpGO6Y3Sx26ishcUcLhnnkVQfFmBhpyG2Yp3XoqZNv7lK4iWGplhg0/eMs\nOgwJfP8d2H/ql0JZp/MAS14NfcSf+zeugVmvO5j0iCa2y2ng1Q2clcXUvWsf\nsAT9IyKO78H9cbgbc2QV4FJ8LlsbFRAwzT4Cena+WYy71jF1oB3iJWRTMI0s\nu0kXwBjmP99QLVe5XRQNDIhnUZiblebEiASBv8fncQrehi0Z3ODdcfbdkIT/\nVWndFaLTtF2Fcb+eAMg3KXfURxbr4ST7szxMv9gVhIsVsiqpy79Qxkbb9dyC\ns4wx\r\n=WmFq\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD0Z7jft54c8E3UvretwkYnOkHM07f5G7/nxi53HV2wbgIgJXgRWkdeuZUbqCA9wFhul+wnk4WVlJHywmuC4hJWkSI="}]},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-association_0.0.23_1541104024087_0.268702512256382"},"_hasShrinkwrap":false},"0.0.24":{"name":"mongoose-association","version":"0.0.24","description":"A cleaner and faster way to setup mongoose populate with virtual field","main":"dist/index.js","types":"types/index.d.ts","scripts":{"test":"gulp package && mocha --recursive --exit","lint":"tslint --project tsconfig.json"},"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"keywords":["mongoose","association","relationship","populate","virtual"],"author":{"name":"Victor Zeng"},"license":"ISC","bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"homepage":"https://github.com/vickenstein/mongoose-association#readme","devDependencies":{"@types/inflection":"^1.5.28","@types/lodash":"^4.14.116","@types/mongodb":"^3.1.3","@types/mongoose":"^5.2.3","benchmark":"^2.1.4","chai":"^4.1.2","gulp":"^4.0.0","gulp-clean":"^0.4.0","gulp-shell":"^0.6.5","gulp-typescript":"^5.0.0-alpha.3","mocha":"^5.2.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.9.2","typescript":"^3.0.1"},"dependencies":{"inflection":"^1.12.0","lodash":"^4.17.10","mongoose":">=4.11.0","node-association":"0.0.9"},"gitHead":"c7bcd0e93438da5d25e330d3737bb6198dcfb3d7","_id":"mongoose-association@0.0.24","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"vickenstein","email":"victor.zeng@styluxinc.com"},"dist":{"integrity":"sha512-i2yfNIq3myV9nRhXrwXaUMQGuMmZnzLhIjfUxvSZhinvXofOPoIXELuejvFnIryfhrzaLLD2zyZS/NX1AgsXsw==","shasum":"2e784297f918b6e4a1aaa0772fa9578c78ee3b12","tarball":"https://registry.npmjs.org/mongoose-association/-/mongoose-association-0.0.24.tgz","fileCount":84,"unpackedSize":241157,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb7gRHCRA9TVsSAnZWagAAebkP/0F5UGk8n04+qnmv53Pc\n+QsqwZrDfM40D5EZQ1krjDNTqoZd4ahIj4coCSZwEPD43+ISiyC22xZKJqKf\n+IZFmaP077J2wiRzPr8MYE/I6spl2RcpSesnUH1PoAys7TV55eE2SDo8GPdQ\nsjjwjCHz7i5ksmcokBavWIr07EJOxL9iabApE2/0NXQbZRfcC+42e1N6apFD\nQUxGXfOm9txBzKEhh58mUiQ5haHhxMxu/EgOvHE1hEMRI/nYOtfwjRulF5ij\njzcqead9mWj8nUJ3Owg63545DRJXwEYLEXAwuxOedfqpIi85cXEnUXt61L9C\ncuc6kJTbbh2aJdHPwrDavXHC7TNREmLNwz5OUdF4uKJLUc1jWdom5jXORDig\nAZKVO+HvK9GfQuTnSAPnsg9ug2aEdlsjy3o2OZvoGBSAnA7IKK08uOSANEB7\n1O0mNeD69/9F9+lJX4sXu/+XwliPF1bxLdCXnEx/SaTH0pkfHee3cFE40x+j\nSTLoCdbEABpP6+T93WwYlVAs0/+GvkQvVhXiAA8U7PdhlHWTzUr79sXlGEuY\nmNlBfPPWfPQnh2XbOQQC8lQlOKMB5jIUZfZe0Mscd2etjjjAuh/9GLx3Bx/4\nJmWpfgRXWmAMuEB/Zux9LEE+FIbqpq8Kdg2FF3kU51OU7c5NRmT6T2Umf5am\n79i0\r\n=DvdV\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBHHpxk6vwbnw3pWPRFa1Omg/nOo4ZkJBG8R8wq8G3jAAiBb6nq1IOGZGIwaFfakIUwjsuSB4sFWn/hTIlZ5cs6UNQ=="}]},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-association_0.0.24_1542325318647_0.6648093109423783"},"_hasShrinkwrap":false},"0.0.25":{"name":"mongoose-association","version":"0.0.25","description":"A cleaner and faster way to setup mongoose populate with virtual field","main":"dist/index.js","types":"types/index.d.ts","scripts":{"test":"gulp package && mocha --recursive --exit","lint":"tslint --project tsconfig.json"},"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"keywords":["mongoose","association","relationship","populate","virtual"],"author":{"name":"Victor Zeng"},"license":"ISC","bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"homepage":"https://github.com/vickenstein/mongoose-association#readme","devDependencies":{"@types/inflection":"^1.5.28","@types/lodash":"^4.14.116","@types/mongodb":"^3.1.3","@types/mongoose":"^5.2.3","benchmark":"^2.1.4","chai":"^4.1.2","gulp":"^4.0.0","gulp-clean":"^0.4.0","gulp-shell":"^0.6.5","gulp-typescript":"^5.0.0-alpha.3","mocha":"^5.2.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.9.2","typescript":"^3.0.1"},"dependencies":{"inflection":"^1.12.0","lodash":"^4.17.10","mongoose":">=4.11.0","node-association":"0.0.9"},"gitHead":"c7ab40651c9aec99b709ff8b3601d9a4c9fdb40b","_id":"mongoose-association@0.0.25","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"vickenstein","email":"victor.zeng@styluxinc.com"},"dist":{"integrity":"sha512-aGa2j9UDreQNTDmvkyM+IJiGeoFVVC7eO/xkGtxuWK3YJ4WZ1rAHj+VX8IHVfgrZP2vcENH1fpM2xX0g8kUEqQ==","shasum":"c9c4bd9b8dbbaa8e36567cc7d71aab03e661cf6f","tarball":"https://registry.npmjs.org/mongoose-association/-/mongoose-association-0.0.25.tgz","fileCount":84,"unpackedSize":241277,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcCcgbCRA9TVsSAnZWagAAWTwP/1VwvOAxmJXbfbrEoe0X\nj0JX++5gCy+yYImzy2D96X5p67+uDV1wq8bB81wL2nFd9jCfCEBSGdgyPtuS\nOl+EVl6mXNXGiSsNBGsSG6XW67HitU+f+1ofT/6xi49NlfdtNkNr7iJXXdWz\nepGwVkN5yLXSf41EarEXFbA+QPCwVrkyQspaGi9TCFRS8rFOxSMTxx2pHI+m\ntDUyM/8vd6IK4NRGXxb0Aylkokr3daQK+c0FRwinwmskD3p2h+O32hSN/KxO\njKX/oCXXvGQHpB9w3oama2Gji5OGfyxWOHwOLcgrmEp7ZgTd+0o84LGeTdcx\ngw0G//lcrIuQEnhbbZZyGB6jzDw8BDQjUh3XFyX35com0Xuh9yXTag7r+w4z\nZ7hf30DI1pinH9aBR87HwMmhQ+Je2jimoLYHEGT6eA3wQRZsbAf3BRSvaVNV\nFDPe/8+YTtWHk6d5FFTr9G6V4ysjw6RTllYNgPgwI2hs7FZi1ERW56P9hQ2c\nNpmbdHqvKXeGyXujTY6luPEQKa4/7zmii6gX5Pj8SlmT2yc7oPjDS2xVfsS8\nlHCK3gfx/5f5ESVQ4rVE0AFsCgiThkA+oLfwzT8UCnKOUbe3AUDxmEKF2Gbc\nC0kH+JxZtd6Gp2CdgmA5ryWsjyeUvJvtLS2ZHpEJ7y1GROZ8PG0fodpaOEg9\ndsm0\r\n=BCnN\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICufZlQphhQvg5c072UACXSr0HCf1ylB5P5owt05oaOcAiAvXaqyNQNp3sIYbASMX0fdLqVXQr+emRWgJ4Wgd90JfQ=="}]},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-association_0.0.25_1544144922155_0.8093295791002548"},"_hasShrinkwrap":false},"0.0.26":{"name":"mongoose-association","version":"0.0.26","description":"A cleaner and faster way to setup mongoose populate with virtual field","main":"dist/index.js","types":"types/index.d.ts","scripts":{"test":"gulp package && mocha --recursive --exit","lint":"tslint --project tsconfig.json"},"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"keywords":["mongoose","association","relationship","populate","virtual"],"author":{"name":"Victor Zeng"},"license":"ISC","bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"homepage":"https://github.com/vickenstein/mongoose-association#readme","devDependencies":{"@types/inflection":"^1.5.28","@types/lodash":"^4.14.116","@types/mongodb":"^3.1.3","@types/mongoose":"^5.2.3","benchmark":"^2.1.4","chai":"^4.1.2","gulp":"^4.0.0","gulp-clean":"^0.4.0","gulp-shell":"^0.6.5","gulp-typescript":"^5.0.0-alpha.3","mocha":"^5.2.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.9.2","typescript":"^3.0.1"},"dependencies":{"inflection":"^1.12.0","lodash":"^4.17.10","mongoose":">=4.11.0","node-association":"0.0.9"},"gitHead":"fb0ea7c024bbd49a31f24f8179760c8f1ff43f01","_id":"mongoose-association@0.0.26","_npmVersion":"5.6.0","_nodeVersion":"8.11.2","_npmUser":{"name":"vickenstein","email":"victor.zeng@styluxinc.com"},"dist":{"integrity":"sha512-dvR7aa432zGu2ZtviTkCKLk0DI5C8Ct+UorUEH3fAMUsenKNyoZyCh8Hjvy6RGPgnYUyp9u/O3bSkp9of88aVg==","shasum":"00449c2c4a2e3ddd95495189e6ef5feb7994ef07","tarball":"https://registry.npmjs.org/mongoose-association/-/mongoose-association-0.0.26.tgz","fileCount":84,"unpackedSize":241459,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcGWBrCRA9TVsSAnZWagAAYCkP/3mgT5vg//yPRb5zHghi\nuZP04R1mcqsANYi7NnxMBtjo3eXB787vBa/j/iv+UrERvQDBbUtU2Ouo3HzG\nSfZ1v/md+TOt8lhhaXbPVnonG5twt0PcweBY/3lH02xN1fDLIMaap1PrT7Ez\nzvwPnYm+bAena7wJHlshgRogiGutOJ7RtvKCDidhifAe4PJ4fkaFQJI58YNi\niWo5phYr+Kag+7a9IeGMAQaTWKNL9YQByVIjr62/IoxETviL+LEh4SUQb3NT\nzS2/Xa5tPv1uxQNwSVJKAmzgUUlwABVXjLgWLfyPUen+9HP4gRhPh0RLv3eU\nvu7vV1Y4t/csvtkYta2ZvD+nskSXXvbGxIsPuV7OBbmFbA72DW56rQGJC7dj\n0xA/MhwyDRXbuJLWQuvaP1khLP4ozE9fU5mG4ltehCcrmihAfHjM63juS9Fp\nBxDFmD170iLWLpzFk5KcS+e5Dhqwb+nQwCHCNT14W6FUhYRCEx0zVszSKoWs\nYCpVk6MPyn4iEy0CIesa3V/7Yc7fAZHLVcsw11HEkOvDzdjWeN7s+Y/NQHp7\nZm7KQLGQozRsr9HzQdRiNknFDrNBoEpUARbb6MGYENsZcOOMATFZfGHFycBC\npku4dIpwu0VupghEznYu9slo2AFbr/NCqXlIB3kd2l+CjRhA4lTlWI0pQErX\nh23+\r\n=QqJ/\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGkEVAq/7zIkPyU2I4a6DDyUp8AxjCQOtW3OJ/LWAFZnAiAKqrhloVjsx7ABQXKoEjlxYrOCbzgtPD97CyVvH8DdGw=="}]},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-association_0.0.26_1545166954368_0.4926420861944578"},"_hasShrinkwrap":false},"0.0.27":{"name":"mongoose-association","version":"0.0.27","description":"A cleaner and faster way to setup mongoose populate with virtual field","main":"dist/index.js","types":"types/index.d.ts","scripts":{"test":"gulp package && mocha --recursive --exit","lint":"tslint --project tsconfig.json"},"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"keywords":["mongoose","association","relationship","populate","virtual"],"author":{"name":"Victor Zeng"},"license":"ISC","bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"homepage":"https://github.com/vickenstein/mongoose-association#readme","devDependencies":{"@types/inflection":"^1.5.28","@types/lodash":"^4.14.116","@types/mongodb":"^3.1.3","@types/mongoose":"^5.2.3","benchmark":"^2.1.4","chai":"^4.1.2","gulp":"^4.0.0","gulp-clean":"^0.4.0","gulp-shell":"^0.6.5","gulp-typescript":"^5.0.0-alpha.3","mocha":"^5.2.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.9.2","typescript":"^3.0.1"},"dependencies":{"inflection":"^1.12.0","lodash":"^4.17.10","mongoose":"^5.4.0","node-association":"0.0.9"},"gitHead":"fbbcde7d8dd390a6e2c15b57d6f480c7488e7d87","_id":"mongoose-association@0.0.27","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"vickenstein","email":"victor.zeng@styluxinc.com"},"dist":{"integrity":"sha512-gPqj/3TrJ8xYR3+3e5cd8dTy5tGA2jlpHHdJlL2/SgpASEKPyjPcCtlLstjk4by9zsDdG0Y12n7NXdTAMXrM4A==","shasum":"9dc7c4ac82b36508d90ce2bec56f90601e3c7d9c","tarball":"https://registry.npmjs.org/mongoose-association/-/mongoose-association-0.0.27.tgz","fileCount":85,"unpackedSize":247511,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcGZllCRA9TVsSAnZWagAAjIkP/27yUaITYx3bF/ridaOJ\n5jjZLQ54fL503JvssKJ42ONzEENli/ax8PePKSvuI32DocQR7J88XNrnQjB/\nYX3B9v1Y1Razb8DPxgSAVwyhz/MuGbxK7pf2UflU5n17OOVx9cZcRRMFb4BB\nXJT6WEno0z0Jq7R5tgN/iEtd06iIv6wVroxFy+pp9TRAk86Piw2/1CtBiAo0\nHagET3nJRzhSXk84LlZNmdVCGBQMwFvT18cmKl/K+pR3iO+VckSk3mWMhJ5q\nOGczB6f+YmAZtha9g9Jr1zL1O+nSK1p5Qq8VOI87QgoOqqGhC2Z6J9G6uHBz\nRcWLTnaYIjSXYd0n3BmvnDpvtNdo15sSJ6gOGaittC0mUW4Q/GPj0VYsgfBd\nBjpmDAdPHhm0tuiG8gbEyLvETZ/06m6v8DNxWDtNNEsp0alb6LncIFIe1YTX\nEiTseCcINWsLvnyFXo8ybyc5UQ8PBAxq6NtBz0C2xA/8j48d45EPkYHP5ica\n0MecSLo1oLEj7BWSoSMOjrgk6v62bffBz7MpAzs7mPQ8xjCUfZpuf5Q5G1xE\n1O3HLLcbUG8IH/jLIcL4WYbjNEeNPa1ds/qadc7tN8yZyDXaTrugLGvmCuVq\nmbhsTh6ht3WsMfugDi5uSQlFbOpbCNwtsuprQViu3uIRWKiMq85accMwEXoY\n4uvU\r\n=E3er\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCkjJCmBHknJXuAZxLZtlh/JhwH2WqSzhWC3bSURO6oZAIgYrxQ5hb+qAnqbvoRsejJ53p0Se08ZkfQ4uS39kkMZTs="}]},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-association_0.0.27_1545181540906_0.778342559362915"},"_hasShrinkwrap":false},"0.0.28":{"name":"mongoose-association","version":"0.0.28","description":"A cleaner and faster way to setup mongoose populate with virtual field","main":"dist/index.js","types":"types/index.d.ts","scripts":{"test":"gulp package && mocha --recursive --exit","lint":"tslint --project tsconfig.json"},"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"keywords":["mongoose","association","relationship","populate","virtual"],"author":{"name":"Victor Zeng"},"license":"ISC","bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"homepage":"https://github.com/vickenstein/mongoose-association#readme","devDependencies":{"@types/inflection":"^1.5.28","@types/lodash":"^4.14.116","@types/mongodb":"^3.1.3","@types/mongoose":"^5.2.3","benchmark":"^2.1.4","chai":"^4.1.2","gulp":"^4.0.0","gulp-clean":"^0.4.0","gulp-shell":"^0.6.5","gulp-typescript":"^5.0.0-alpha.3","mocha":"^5.2.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.9.2","typescript":"^3.0.1"},"dependencies":{"inflection":"^1.12.0","lodash":"^4.17.10","mongoose":"^5.4.0","node-association":"0.0.9"},"gitHead":"ee1ab015fd0cfe15932f42cf9208177c684fcdb4","_id":"mongoose-association@0.0.28","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"vickenstein","email":"victor.zeng@styluxinc.com"},"dist":{"integrity":"sha512-XLeZsjWb/oxWJvtkiGPvj25CDhWqzDBZ4wCBii33WnJIopguWd3yI02CkiuR3b/lxagEIxsTtCYpEdJvAv24Jw==","shasum":"346049cf343145658a502cf73ae687f4996bec3f","tarball":"https://registry.npmjs.org/mongoose-association/-/mongoose-association-0.0.28.tgz","fileCount":85,"unpackedSize":247911,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcNQF6CRA9TVsSAnZWagAAPQMP+wbp3uKcVwER6cHYDNwg\nzbqmur0Gb99lktbH5F7WRTcREGsDIS2J++AzJ5lv4U+Oby36XRhZ7lbyFng4\nMnKWTkVrKgVILjCKoPZWE1m/S64L73SDVBXm4rLouQtRDWBt7XMBvUPGJfbK\n/uj014ybtGmFX8yJQOxsGuWBCHR4Y4njGDsWI9014SWij5tiX7rpkEVboZj8\nJR47Ugn8zPDpB6Hh6Jez1CHQWxXV/CwkY7YKYMuMS1j4xi6hBxHHcfGYq7P3\ng+PW1FkZDn3hqMxRYs3+Boyl4dbjbprwLWN7H1Ddolp8753mJM1DI3v9mhhl\nrNXw4UaqicKv40QdwnAiTjGoQQe5yefBAFSR79HlxUmAm+SxL/cQIxpe7sk5\nzXS/KxEd/F0arW2ZDJXzPKIZ33Qpm+6q4FWen9A3CANOvbX1GvccbN1oXrZ9\nET30TEkOwA/CYgDNA73uHkRvtsh1OxFi9tl8FYvgIBuc+hiwwqCBD0t/Mcmh\ncLZnxcQa7Hh+Yo+NoUQzNjLVIaLFYH7aXV8sYgsYJDzxvo7QccDuF6kpBMae\nR5kIQdQNPZtO5x4HacWYDOvw7dtvOENkT8XwIH3u9zhJefd9yFmT8vjIK3YP\nz3w+hZnQxykG9+V9gSBzRv+BSYHrwdOLVe7aqW/pVvBVlzD7i5CIFieyp5EN\nv2jZ\r\n=uv23\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIF+7ou37PdEhGNyp+vs3NXfqwzz/v2/GeFmCKSeXEkHhAiEAgfcuPV5sTRBhVliilHr5pYPwjLoAerkq59E96qbRres="}]},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-association_0.0.28_1546977657756_0.5714410959424989"},"_hasShrinkwrap":false},"0.0.29":{"name":"mongoose-association","version":"0.0.29","description":"A cleaner and faster way to setup mongoose populate with virtual field","main":"dist/index.js","types":"types/index.d.ts","scripts":{"test":"gulp package && mocha --recursive --exit","lint":"tslint --project tsconfig.json"},"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"keywords":["mongoose","association","relationship","populate","virtual"],"author":{"name":"Victor Zeng"},"license":"ISC","bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"homepage":"https://github.com/vickenstein/mongoose-association#readme","devDependencies":{"@types/inflection":"^1.5.28","@types/lodash":"^4.14.116","@types/mongodb":"^3.1.3","@types/mongoose":"^5.2.3","benchmark":"^2.1.4","chai":"^4.1.2","gulp":"^4.0.0","gulp-clean":"^0.4.0","gulp-shell":"^0.6.5","gulp-typescript":"^5.0.0-alpha.3","mocha":"^5.2.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.9.2","typescript":"^3.0.1"},"dependencies":{"inflection":"^1.12.0","lodash":"^4.17.10","mongoose":"^5.4.0","node-association":"0.0.9"},"gitHead":"2ce479d9c8afb5e5550d0cd6c742517a2e073008","_id":"mongoose-association@0.0.29","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"vickenstein","email":"victor.zeng@styluxinc.com"},"dist":{"integrity":"sha512-Mxi4Aaz2LpCCTT6JxwKeQP7c2xVUvxZi2Daxm4sZcZG1wB91JUIPdSwlWfSkVYy+3/uAkYNHt/nGhMGDt54y3g==","shasum":"1f9d1aee46348eb2f58edc4e2afb667f1f3dc96f","tarball":"https://registry.npmjs.org/mongoose-association/-/mongoose-association-0.0.29.tgz","fileCount":85,"unpackedSize":248117,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcbIspCRA9TVsSAnZWagAARgUQAJ8UU8bFGwKZl8YCuaDp\n+tSkHzTrzcPnCEO4MdoXW6WRh+Vh8h8zukFdAzPguNCQ1KCUSMqVQAwwH1UB\nodwg5ZXnejVvWsk7wDJbmYqnYyzugIMGdwt8VM+fcUuKjPdpkH2gyGQligY7\ngwTPHSDN6GjvZz9teiND6p1jHYeIwoKyXvdqJgUQYRjNplBmxvrEqWk9QzoG\nnRib3CoPJ23jdNtUd/qFrOubtSf3+gWs0Tv4lGyDwNU9hO9hSanBpgbK5BZw\nwXtSLAjgKUlZlehuUZ9m4BLg3Fs92+EFfgAhhQwfCbfFcHvvxFCLUm5tz19h\nMdkiHHTDtKhVHRCRrLJtdGax80BEElE4K3T80C5R8yf8bE/dsyTywar5Ktqm\nM3CyGE9vDIRw7pLe9uRCfoSsH9hzyOI7gcr3/kbvGhXWMyDKXGBracGdCyEI\nDhH7ImIY4dHE/aJe/dLXHqsQF1E7HrN6935t4KScdJGTvz4RB7bWAqa+Pkm9\nAU7z4Iap+QmzNqHMja6XDgapcALRDzr8gHvtehkt6FkQYnGCSpXHKs42OOOy\nGYNUK9Jbn6jEeypv+gSLnmsBrueGuUBqAZaczZAnnhuOr9bJJ5e8KWIjIDNk\nzFIdNRwC+NtPT63c2zv6JA9HKSrLWUR5grTArqzTSnBfz/ylxh9T3g2iO8Qy\nJdTr\r\n=Ab6H\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCJSpmXr2B4mrE8gu1IR/8ngNckOrJjBGZ8j9dIrmeT+gIgV+Cl7W3GmIUXLSvGznNBRBDimN2cZWpkHgvZN9Rb9oM="}]},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-association_0.0.29_1550617384421_0.15090250316317588"},"_hasShrinkwrap":false},"0.0.30":{"name":"mongoose-association","version":"0.0.30","description":"A cleaner and faster way to setup mongoose populate with virtual field","main":"dist/index.js","types":"types/index.d.ts","scripts":{"test":"gulp package && mocha --recursive --exit","lint":"tslint --project tsconfig.json"},"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"keywords":["mongoose","association","relationship","populate","virtual"],"author":{"name":"Victor Zeng"},"license":"ISC","bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"homepage":"https://github.com/vickenstein/mongoose-association#readme","devDependencies":{"@types/inflection":"^1.5.28","@types/lodash":"^4.14.116","@types/mongodb":"^3.1.3","@types/mongoose":"^5.2.3","benchmark":"^2.1.4","chai":"^4.1.2","gulp":"^4.0.0","gulp-clean":"^0.4.0","gulp-shell":"^0.6.5","gulp-typescript":"^5.0.0-alpha.3","mocha":"^5.2.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.9.2","typescript":"^3.0.1"},"dependencies":{"inflection":"^1.12.0","lodash":"^4.17.10","mongoose":"^5.4.0","node-association":"0.0.9"},"gitHead":"82f033d2efa492ce5e4058bf5744ad1c4887456b","_id":"mongoose-association@0.0.30","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"vickenstein","email":"victor.zeng@styluxinc.com"},"dist":{"integrity":"sha512-2Cpz3ms0uwTRNQMm1eqhzIjcI5II5956WgJvi0uupmbXZJ6OwI3NilVV9HR+9nMiZnkECfRFF2A6xT0hlgb9qA==","shasum":"90be056db678e3161509772cf297ac94ad04a138","tarball":"https://registry.npmjs.org/mongoose-association/-/mongoose-association-0.0.30.tgz","fileCount":85,"unpackedSize":250254,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcfWflCRA9TVsSAnZWagAAvyQP/3jegB4MUQOELStUhl6o\n5tgq9+m9n1irkB2Z4HeUT0o6sNUsUe4QNSgafQpxesMae5a4TJ6a5oN0Ovai\nJGaLKNeyL+2dBYM3WLlUPPyoS41JiS0+2OujQ0GA1hJ1MB4+f5N5fCKj1mmw\nwzyMazYffmOBMltNdkuml7V5T2YAnmeUl/HqUnbuMGZE7p+a2yxqNN+3sL5y\n7xWpv1brA/wObrMJH6pNa0oLYiSl693T3HWdeQqqbbz6OPJK3qqC74pP4Mfw\nP7qV/fAvvuzoH78L35eiV8XTC3p6pJ6FEGoBAPfkmCYizRS7sHxKYhTIHEds\nJUkH3UKLzCzJeuGSXEAK8m56Mn6Sxh6hPmJPRnowp2jNZVO+e9BT/HW//nzh\nXSinKdUMbzEpY/s5VOHm7LlnhsVV1haa8zp+9RK2zy085aoDoFq4s/NG8Qb5\nEpgjkyCqTfY49hVNDr6r1zSL23VzUkY7S2c/7BAckFxIrWcHLS2Rw7re+qO6\nWhbdRtI84Q0j/R1ZXuhs5cv7zoM+GV1PNy81h5qMsErWUyIxhR1NKdwsy06X\n8MWS6Q1AX4qz/AuTnYXwCZ5h5igC4TQselU/3q+EW8WsH0n0wj5LB+bBHPLX\nAu4AphmyJA+jhXllL2+9UgBzEhJUhGtwhKJv3Qxs1xmbIBP5JGKprRvqTzIJ\nRZ/O\r\n=XsMN\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEkdwwI7YDCZz8vIJKTSokzwwFJSfaYwDNI0a5pDT5XTAiEAmTiA6vOHV4P3s+ExXob4lyDd3Svmp4uxiGsk5hQu4/g="}]},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-association_0.0.30_1551722468582_0.2364779491897202"},"_hasShrinkwrap":false},"0.0.31":{"name":"mongoose-association","version":"0.0.31","description":"A cleaner and faster way to setup mongoose populate with virtual field","main":"dist/index.js","types":"types/index.d.ts","scripts":{"test":"gulp package && mocha --recursive --exit","lint":"tslint --project tsconfig.json"},"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"keywords":["mongoose","association","relationship","populate","virtual"],"author":{"name":"Victor Zeng"},"license":"ISC","bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"homepage":"https://github.com/vickenstein/mongoose-association#readme","peerDependencies":{"mongoose":"^5.4.0"},"devDependencies":{"@types/inflection":"^1.5.28","@types/lodash":"^4.14.116","@types/mongodb":"^3.1.3","@types/mongoose":"^5.2.3","benchmark":"^2.1.4","chai":"^4.1.2","gulp":"^4.0.0","gulp-clean":"^0.4.0","gulp-shell":"^0.6.5","gulp-typescript":"^5.0.0-alpha.3","mocha":"^5.2.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.9.2","typescript":"^3.0.1"},"dependencies":{"inflection":"^1.12.0","lodash":"^4.17.10","node-association":"0.0.9"},"gitHead":"6ee0443fb1d9821d66dc5530703fdf90f25bb17e","_id":"mongoose-association@0.0.31","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"vickenstein","email":"victor.zeng@styluxinc.com"},"dist":{"integrity":"sha512-ffyDY+j7Mexv+ebdRP/1MCpBMDELJk5QeTiNDdxnaGF9OR5BrepJFbvHME5xOqL9wLGQLP2XtP3LXTDim9JwqQ==","shasum":"4d3fa777e5c2dcff940cd0062d3ae8394df370ae","tarball":"https://registry.npmjs.org/mongoose-association/-/mongoose-association-0.0.31.tgz","fileCount":85,"unpackedSize":250282,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcgrBDCRA9TVsSAnZWagAAgMsP/2eNQHnrJRsLYa75GzWa\nIzIGgzVNYTcRmicThdnVbTWTYQTPhLrIWqyPTfMM5SEYHJ6NEOHFYey82/EO\nbHLQYUc6tpK4XyjQwGJpnnYNposM6OSnQ/500Ywu0T0MxVvqQaF15a9lUi02\n8tkxEMUG432oMXGhjm0s3O2dVlCvMA4pqwXRaZ+AGjeAWMAdWuTl5xsZsNDG\n6rLbJwNHx0ItbSuUiSHzTtQyoHMfKXiQaLgjkvSvH71kiHfdFcxwgAC6uxgi\nmmnbadmcVkdfBovdZC7bfG4qi4O320uh3E3Ln9PJJZUw/tvt/y4qAfksgF1N\n0q2N06CmXPgHaRO/XPtSxzb9FZtD9RLaWSj1wSSyABf9H9di0AQTHlLaUt/q\nsJK7J96hMHvA6+fjtM1sepA+sQ2BDBIaPQxlYGf84t5Rd5eezDcWAinfYnNQ\noOfubW2DhReKJRjTKX3p7tDC7vy4n0uxWRKcqR7Hlm8m6ItI0B/wXoKi1hd7\nYHLMzvmFwB8CTJu6ts2mviNyzX6MiWNCS1NFwv6mAMf4K6NYQIyUjdutCseg\nuYPuieeLSPDk+55FKkr7FJN8Ln0+1Wd16SthcgE97Zq55bJTT94gNCjYRSUr\nn5GVpOteyqay7KnJcEZWWly+E0G++LgfjI8nsBpr0NCHYB0oXm7srU/+Kdcm\nUXlk\r\n=9Q76\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCZJrIghvg5lBaWZ/kT1Sq7XRscl5E6Jwn74/Lf9GjIbQIgWO+qkA09SDBDxpDYYYFmOL7eWSB6q6U0ArP0CQ5eD6I="}]},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-association_0.0.31_1552068674430_0.06292450142717088"},"_hasShrinkwrap":false},"0.0.32":{"name":"mongoose-association","version":"0.0.32","description":"A cleaner and faster way to setup mongoose populate with virtual field","main":"dist/index.js","types":"types/index.d.ts","scripts":{"test":"gulp package && mocha --recursive --exit","lint":"tslint --project tsconfig.json"},"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"keywords":["mongoose","association","relationship","populate","virtual"],"author":{"name":"Victor Zeng"},"license":"ISC","bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"homepage":"https://github.com/vickenstein/mongoose-association#readme","peerDependencies":{"mongoose":"^5.4.0"},"devDependencies":{"@types/inflection":"^1.5.28","@types/lodash":"^4.14.116","@types/mongodb":"^3.1.3","@types/mongoose":"^5.2.3","benchmark":"^2.1.4","chai":"^4.1.2","gulp":"^4.0.0","gulp-clean":"^0.4.0","gulp-shell":"^0.6.5","gulp-typescript":"^5.0.0-alpha.3","mocha":"^5.2.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.9.2","typescript":"^3.0.1"},"dependencies":{"inflection":"^1.12.0","lodash":"^4.17.10","node-association":"0.0.9"},"gitHead":"2434aca7524806531f870bf337f40868320b22ef","_id":"mongoose-association@0.0.32","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"vickenstein","email":"victor.zeng@styluxinc.com"},"dist":{"integrity":"sha512-k6pzzt78RLV7WO2v5CZAYXby73i2OsRWEOMl3waPcYVOVEmSDnXST+20A5Opd/btltEZLzXcNKYog04ZTLljtQ==","shasum":"dea14d22ddd9a3524032ad36908e0fbe9c7b8986","tarball":"https://registry.npmjs.org/mongoose-association/-/mongoose-association-0.0.32.tgz","fileCount":86,"unpackedSize":251755,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJci+liCRA9TVsSAnZWagAAOaUP/A48P3Yz99GQfhG0prnU\ni+rJQkG3U+42xzcdfuNxJfDAahQ64jDUWtHRQQTWBrpeyl3eB1dJODbtKOri\nQX/eDD1M00t7h0gqm+Srjen86sZvyJOcSNlOIejgLoCfzFyZcbHPZlJ/9lUx\nQ8G5sy+7ISqHK041dffn6aguMPdmANL68F9pChcewF58jiddxHtvK1xIcZq8\nyLTWTHKk5Nh6WW6yRAWCFrMyM+JqrtrQZnMnGiOtR4QDQzaHWYLQQrleM45w\nBxThklQZItF2K+TUxV1mjZm6XNtGYJuYqGJgtXCL3pv0T7HEhVigtMdKjDDf\nnBUNlpzQBqoHDRsvguQipEUfwOGHtm7UGsGzL7Dn/RjIw7Bihoa3kLlu7v2Y\nU8dTmUdV6cZglZplXzAxJ8Wtd/btsn+dFBb0ywHNLqCa4cBfvd/u5FXp+DNV\n37AUuJXtwNB4PdlOnMkhkHo+1JCRyrLRB412hjlGqxCx3s+4QfB93F7viWAM\neMgT8WYKFzYSzIXRQGc4DSUna9UvJyzQ3sfNL9xPGET6TWQbcYAeOrd+smsl\n2T8B4kbUmi/n1EY1VXrJkqb8Y6rIMZBT7fgBuwY9Ut8y+4m/ZegqWNIsB+HE\neXium+txgS28xauFOoJAIV7le6lB79FaZsUymin1e60yoj5wH8oPhPe0ERyJ\nOjKT\r\n=sDT4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDRt3qdo5we/xV9H81wQ+LRm0zwLNGyT+hGOtT/PvI2fAiEAseJ7Bjd+J84yMrqRikiaw1IB/VSdLfdBLhxeSoJTq20="}]},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-association_0.0.32_1552673121748_0.05333748503106106"},"_hasShrinkwrap":false},"0.0.33":{"name":"mongoose-association","version":"0.0.33","description":"A cleaner and faster way to setup mongoose populate with virtual field","main":"dist/index.js","types":"types/index.d.ts","scripts":{"test":"gulp package && mocha --recursive --exit","test-inspect":"gulp package && mocha --recursive --exit --inspect=0.0.0.0:9229 --debug-brk","lint":"tslint --project tsconfig.json"},"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"keywords":["mongoose","association","relationship","populate","virtual"],"author":{"name":"Victor Zeng"},"license":"ISC","bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"homepage":"https://github.com/vickenstein/mongoose-association#readme","peerDependencies":{"mongoose":"^5.4.0"},"devDependencies":{"@types/inflection":"^1.5.28","@types/lodash":"^4.14.116","@types/mongodb":"^3.1.3","@types/mongoose":"^5.2.3","benchmark":"^2.1.4","chai":"^4.1.2","gulp":"^4.0.0","gulp-clean":"^0.4.0","gulp-shell":"^0.6.5","gulp-typescript":"^5.0.0-alpha.3","mocha":"^5.2.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.9.2","typescript":"^3.0.1"},"dependencies":{"inflection":"^1.12.0","lodash":"^4.17.10","node-association":"0.0.9"},"gitHead":"1488af5f38d87dfdd90b6b9ccc362791d30c49f3","_id":"mongoose-association@0.0.33","_nodeVersion":"8.11.3","_npmVersion":"6.9.0","dist":{"integrity":"sha512-kumW4xCIHfUaSMaQliu3dYBNxWB9ycGtBuiUELx+sYm8dJXnFKJy/yOiL/q9JBSE416XG92yiNV4HsAwAZAYlw==","shasum":"c198a8c045b44c16622358d584aac76eeda71d55","tarball":"https://registry.npmjs.org/mongoose-association/-/mongoose-association-0.0.33.tgz","fileCount":86,"unpackedSize":267251,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdDVtPCRA9TVsSAnZWagAAJzcP/2JUca5k7BZ2Tha/IFYv\npwZWh6SmSYbYGcX73J7rgGv5/M92p02UQVRpEbaQ+adBCMkiqLS+RfttPxGC\nzWZSUG6SeIZdgODPqGT8EXcfjwrm8YT7jZbeZU3qaGbAlNgQi80fWmHOBeIU\nginfdvpJDdvHdu1qZvurBCu/9OxLtCBCRMEYtDGNOHYi5QBh+JR9kVyJPb2w\nCFvhanz2UrnvezAsNm4xZ/5Hn2Wi8cuMOJ/r4caHEYhIk4IJU/S9Yyga7bd+\nZ+3bDhFz7jcn886rPiW7AWs2E2Dia87BJiTu2FKhJk01Oe95hYcaFAI/fV8A\ncsinS52pJRF0O7oJ79HVdrwS55kF1p3fVdRzqbE6J2gXoXa4Z8WYmgHrogPx\nLc1golR2epPc9GNQ20cwfdgLlVfRKMU/behYMni3bcuGNWrQaAqs6IP5pnhn\n/aTnYlQ4m4eAnZYbLETdnESWrrin7OrEW++kq0RRuyLtZbbdI8Cq9fEy8Q2D\nZeDBUFOSVL8d3tYlB9XjPNwyepVDZ2Gy0SmbtU5on8KZqCfqTkRuEMl/Beef\nCBhUO9/izzfMnDZ1lGBF877C+MwlkN7KN6jcjU7T8FgMGu1Vx5zH8ZRE3767\neZJECKhLZJYVnbvwuH/i8eh2bO+w8scpj+FDE8zWsYwPJaZts7SFI/DAQaoT\npefp\r\n=cHeY\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC9+f0MMdbhdSnKg323y+B1YdpmSxMQVA+6/Tk3qPU4qgIgEm6a+WSku8eCLMBmwV7VwxyA+XmqEVkhvc01v4x9M8M="}]},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"_npmUser":{"name":"vickenstein","email":"victor.zeng@styluxinc.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-association_0.0.33_1561156430769_0.8256698997481193"},"_hasShrinkwrap":false},"0.0.34":{"name":"mongoose-association","version":"0.0.34","description":"A cleaner and faster way to setup mongoose populate with virtual field","main":"dist/index.js","types":"types/index.d.ts","scripts":{"test":"gulp package && mocha --recursive --exit","test-inspect":"gulp package && mocha --recursive --exit --inspect=0.0.0.0:9229 --debug-brk","lint":"tslint --project tsconfig.json"},"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"keywords":["mongoose","association","relationship","populate","virtual"],"author":{"name":"Victor Zeng"},"license":"ISC","bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"homepage":"https://github.com/vickenstein/mongoose-association#readme","peerDependencies":{"mongoose":"^5.4.0"},"devDependencies":{"@types/inflection":"^1.5.28","@types/lodash":"^4.14.116","@types/mongodb":"^3.1.3","@types/mongoose":"^5.2.3","benchmark":"^2.1.4","chai":"^4.1.2","gulp":"^4.0.0","gulp-clean":"^0.4.0","gulp-shell":"^0.6.5","gulp-typescript":"^5.0.0-alpha.3","mocha":"^5.2.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.9.2","typescript":"^3.0.1"},"dependencies":{"inflection":"^1.12.0","lodash":"^4.17.10","node-association":"0.0.9"},"gitHead":"8593e3ee23c54e5cf069c6db221bed23250420a7","_id":"mongoose-association@0.0.34","_nodeVersion":"8.11.3","_npmVersion":"6.9.0","dist":{"integrity":"sha512-03saDDjhnZKhrJAzTwDcZUHk1in3AEAsXD/KmDAWKZvT++DBMdyq2Rp9xewsTjRGEJzLtw6MuuO7X/PefKLlkw==","shasum":"92dbf8d153e77d4866c0925e2a31a7cf3f4c04ff","tarball":"https://registry.npmjs.org/mongoose-association/-/mongoose-association-0.0.34.tgz","fileCount":87,"unpackedSize":269871,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdl9+UCRA9TVsSAnZWagAASfgQAIOZUvfIWxIR6MAtv030\n3d5LGO4YgBUseVMmv4bvi4XM2uJ7wFVYOH6wxMBnUXpdjWnfuUv89hf4oqJ6\n3V98xLk3hZvayCXJxsGqNh8NY49E8S3/f3VlQWDfOiSTjyojkLPH6uKZUOvL\nOyEEgfZ4qmnfO4NYf3W1nSTq5HsBgecYj8KwjzLGJu++CHEyt09nVUBWxPG7\nyQs4HUe0vDDmlYAjrpV2QNK2HXBx+BvUGJZuSf2F7mu86o822qL+Fnz6lQTY\nTsoBeJlPlZcjKhKCx/YT14y+4wpF7LnHts//daCNF2JMHgjiB4Ol3S8O4O84\nyZGxo9Rvm19z15SQ+OkVtzczgnqEnIGCQMz5D01xz31I8VT3PnUZQhDCHgUn\nkaAhtRMQUe7rS4zodCpH8rNYZWO0x8YZ2+Ej5/Lbdt+qOl7+/9tACotsxxdV\nrADgo12R9pcm9znjRjOZyDg45xUqu4R4pOHg4rLM8hEePsfGQ6tzjB1M5+FR\naj/gmn93cOuPrOD3wVzghxWWfGnE6fqH6l1ZsfVZiPcWgVn84WpCG6i5zp+g\nEjw92FjuppIySRMw57U7mRfNP54hcY3WuhTdq4vVomempcWjiOamEaDHpyw1\nqcUX1YV4N+KJqMXkf0i1uEc7QE5CNBgp8pArKGsKVe2OM0supHrU+ZflaKze\nTRcs\r\n=G+dq\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCrZyxeWnV05a7TYeQRbVFQbGOt59y2bnsB0FAN1pKlRgIhAN1R2fItHt0jm0eVPCLep+m9/HspCJNjd4jYSTv39msc"}]},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"_npmUser":{"name":"vickenstein","email":"victor.zeng@styluxinc.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-association_0.0.34_1570234259285_0.6797213806186524"},"_hasShrinkwrap":false},"0.0.35":{"name":"mongoose-association","version":"0.0.35","description":"A cleaner and faster way to setup mongoose populate with virtual field","main":"dist/index.js","types":"types/index.d.ts","scripts":{"test":"gulp package && mocha --recursive --exit","test-inspect":"gulp package && mocha --recursive --exit --inspect=0.0.0.0:9229 --debug-brk","lint":"tslint --project tsconfig.json"},"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"keywords":["mongoose","association","relationship","populate","virtual"],"author":{"name":"Victor Zeng"},"license":"ISC","bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"homepage":"https://github.com/vickenstein/mongoose-association#readme","peerDependencies":{"mongoose":"^5.4.0"},"devDependencies":{"@types/inflection":"^1.5.28","@types/lodash":"^4.14.116","@types/mongodb":"^3.1.3","@types/mongoose":"^5.2.3","benchmark":"^2.1.4","chai":"^4.1.2","gulp":"^4.0.0","gulp-clean":"^0.4.0","gulp-shell":"^0.6.5","gulp-typescript":"^5.0.0-alpha.3","mocha":"^5.2.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.9.2","typescript":"^3.0.1"},"dependencies":{"inflection":"^1.12.0","lodash":"^4.17.10","node-association":"0.0.9"},"gitHead":"2681d2a2f06682e01dd594553a766f179a842c9d","_id":"mongoose-association@0.0.35","_nodeVersion":"8.11.3","_npmVersion":"6.9.0","dist":{"integrity":"sha512-RNZr2EaqApm04wuzfSVbLsIaCY7WrMnMwxlII6GDG2ivniDNcHzgL1/4UFAcS2njEchbNBlkN5O50cYMO62Z+A==","shasum":"6274ac2d76fdeb724f4313bd05fa7cc8064f5fc2","tarball":"https://registry.npmjs.org/mongoose-association/-/mongoose-association-0.0.35.tgz","fileCount":92,"unpackedSize":284418,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJduy8lCRA9TVsSAnZWagAAa6UP/0anxmi1yF8UMeeMnmpW\nZZGaiq45cGkbLCVvK25rvXf589yoVVC7KGK4tHQfKCrJzMGF1gGdODoDdmt6\nP3GeWoT0p10GrCJ1D3iHpmZ0U/AZCTQCYA5ikpBELB0D/j4NyYMpL5+i9EHP\n8z0nnFJQ5khS8nId6kOej+GPMJ1RUgK4ShvaKZFLkqkFEY4wXCwihijBDhFz\nBTdUGVdWNxFNVkfCJoi3Efub0EGwqvRqvPybdbgSN/7wih7vutA3IR7jla91\nMkgL3il662h0Q6OTxRYHFeq49HGUg32E2qrXqsNxno7xei9GZsGY4eVwunLc\nFHcyw3xj5E3MfFA85YiEtwgOdHPAfV6dOdNYTL+jEEqxiDjIMPi3F5qJKJA8\nIbxr6nOkpTSuotxaL8LypPkixS+nDkmuJpC/JEkVg/iIHCRKtGw7hp/NPMLk\nseCrkyIsXbwm0S4uFlJTRbx0SGzJWvJvgbbY0Lop2dWgyMnMETHQTpC3V25g\nI1zi570Oaq4t3HudognpAJi+xP8h0O3BnaJehAfqkDZ2kqeixGwerD5qCF9v\njbxF7RqGgdgo3EshNctV93bkvLOn+HLXRs3mMPGIpin/0KiWZ8DwWQeP7shz\nOI9mPPsAKFTwgP5y6stcv3mQ2hbA8fwP+dT7KAOQiUOW8qUZDiaw9fex3u5d\n1duL\r\n=KPiY\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIG5sd+c3CIYclDXjgVHZ7H1khHkQIVmgwvcy4bwAgnASAiEAutndhZcYEyS8e6TwsMQVtNje6bTQ35wwYiiIn9iXEH4="}]},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"_npmUser":{"name":"vickenstein","email":"victor.zeng@styluxinc.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-association_0.0.35_1572548388975_0.4437986061171424"},"_hasShrinkwrap":false},"0.0.36":{"name":"mongoose-association","version":"0.0.36","description":"A cleaner and faster way to setup mongoose populate with virtual field","main":"dist/index.js","types":"types/index.d.ts","scripts":{"test":"gulp package && mocha --recursive --exit","test-inspect":"gulp package && mocha --recursive --exit --inspect=0.0.0.0:9229 --debug-brk","lint":"tslint --project tsconfig.json"},"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"keywords":["mongoose","association","relationship","populate","virtual"],"author":{"name":"Victor Zeng"},"license":"ISC","bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"homepage":"https://github.com/vickenstein/mongoose-association#readme","peerDependencies":{"mongoose":"^5.4.0"},"devDependencies":{"@types/inflection":"^1.5.28","@types/lodash":"^4.14.116","@types/mongodb":"^3.1.3","@types/mongoose":"^5.2.3","benchmark":"^2.1.4","chai":"^4.1.2","gulp":"^4.0.0","gulp-clean":"^0.4.0","gulp-shell":"^0.6.5","gulp-typescript":"^5.0.0-alpha.3","mocha":"^5.2.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.9.2","typescript":"^3.0.1"},"dependencies":{"inflection":"^1.12.0","lodash":"^4.17.10","node-association":"0.0.9"},"gitHead":"c13c3004af88705af7244170d7ae23fca00fd1bf","_id":"mongoose-association@0.0.36","_nodeVersion":"8.11.3","_npmVersion":"6.9.0","dist":{"integrity":"sha512-9EA4h8eyyS8ao0dyB+vRevsGHHXS0qaZWapLZhyCHgvDhv2xcMBIOUI9pzOaSRYcJnsE6/f+30lz61u4YZ9fKg==","shasum":"18e1676532f57609fa9a7b17527455a9fc61e325","tarball":"https://registry.npmjs.org/mongoose-association/-/mongoose-association-0.0.36.tgz","fileCount":92,"unpackedSize":284682,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdwf8HCRA9TVsSAnZWagAAKzcP+wYTMD/zGLGVNtaempXO\nlSmLq0lddwb6ad3HMpEfRwVDYdAA6WkDwBmfHjSQn/IO6J5cXM1uoI25r4kT\nvJPrxI/dhAmh/e1jJllp7eXiVNdHY0/oq86T7oP4HO2Kuli4vCam+6j++2GZ\nGFI2jDfuIdfKDNcWXVT+wRUzBd70d4PjCs1YvcD7h3ch+s0L/cvzLY5/fk4b\nzYrgBb2OAGGjslsz8yka1AJ+2EJLfTBKpbj+q5MzLirQK86FrzPwy7i4j2cw\nKS/908f1TaDaB7xbTLjFwHyTo0yXlKbxaYHsX4SOBZC+Ac9hycGV7B8cL2yd\nOadd8K+HSZuBXheY602AaNBPzYz5EB4pMNb0FPFx71ME5iBouIf3YDaentmx\n3In/T+PLKc9910KadpM10u7qpemrSQCzaNMXGR5BdAyFs2q1uJrmc7Pfm9dR\nGJ3vit5K2M7B6sybDv0i5dCJRIfTC/TpOLaG8fi6Zip+vbLp8RV8kGLE2Ct1\n67XoOUxrAzqKMiSlqsfNyLxxtpZReJOEt46ynHcmJp52DfW4SukdSMs0wf8J\nBh9eZaasRD0Fjg1FIG6xULznkoNSpuWfVAT6Ihr3QyQ9Ccmlz+iNFVYY37TF\n9Q4S53em+CXlp8rEWxK948ZUBVnNOpM28sA/hvCZyh3pXrjaZYbPepuDyCGD\n0rhu\r\n=8fXl\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFGl49EE21SEuJB3fafHNXauLsIzwXOIYlGT0ld9PACIAiEA9G4+b3/Er+v3/uF5whwZBQwQidtBYd3ZOx6Xoy0aowA="}]},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"_npmUser":{"name":"vickenstein","email":"victor.zeng@styluxinc.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-association_0.0.36_1572994823364_0.4888759588849132"},"_hasShrinkwrap":false},"0.0.37":{"name":"mongoose-association","version":"0.0.37","description":"A cleaner and faster way to setup mongoose populate with virtual field","main":"dist/index.js","types":"types/index.d.ts","scripts":{"test":"gulp package && mocha --recursive --exit","test-inspect":"gulp package && mocha --recursive --exit --inspect=0.0.0.0:9229 --debug-brk","lint":"tslint --project tsconfig.json"},"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"keywords":["mongoose","association","relationship","populate","virtual"],"author":{"name":"Victor Zeng"},"license":"ISC","bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"homepage":"https://github.com/vickenstein/mongoose-association#readme","peerDependencies":{"mongoose":"^5.4.0"},"devDependencies":{"@types/inflection":"^1.5.28","@types/lodash":"^4.14.116","@types/mongodb":"^3.1.3","@types/mongoose":"^5.2.3","benchmark":"^2.1.4","chai":"^4.1.2","gulp":"^4.0.2","gulp-clean":"^0.4.0","gulp-shell":"^0.6.5","gulp-typescript":"^5.0.0-alpha.3","mocha":"^5.2.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.9.2","typescript":"^3.0.1"},"dependencies":{"inflection":"^1.12.0","lodash":"^4.17.15","node-association":"0.0.9"},"gitHead":"ebbdfa949cfda0745659b66aea07c80f1dc430a7","_id":"mongoose-association@0.0.37","_nodeVersion":"8.11.3","_npmVersion":"6.9.0","dist":{"integrity":"sha512-Jr3ZrSD+3yHqXgG83O2X+C+iMjuDGTMFu/Sze9PQ/Jw39oqW1gRGFA5tUlUmeKrLLJ9Q6csQ8KnXOXUuDNyWQQ==","shasum":"a8fba7db7b1427c4f9a966495813b22e53f29304","tarball":"https://registry.npmjs.org/mongoose-association/-/mongoose-association-0.0.37.tgz","fileCount":92,"unpackedSize":284682,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdzuebCRA9TVsSAnZWagAAX+cP/iInokIg8Dxlr0ynfTeK\nNa/LhuW6EYRD8xHodFIDtNlxqlbPnf8+gxqaVscUHM9FHWIM442EaI6q9vxT\nEdr3qLNeLPgdeQPqgkmhfd0zSRdI8v1yHNMMDqqioDVsnbtvS93SowBdXh/s\npsCKwGeN+AaD1/20lnGUTDaha0XcrEv18DVMkW346pqZBdZHKgNkCHftoEDt\nJQVPz+AnG35bVGogp/YHtopT3VFwDECbno436tOmgAu3a3VdIYqBTS0JDLgF\nFlRGQPaRR7sknh0VBq7ov9h7papKnBEluXH4Z/oePmIbnCO1fD1h/FDSBICC\n2b6eIGKH0hs/Q1XzHUw4odXpldInxxMv7ouX/21Z+w+v2b57DIfRTxMkiUNU\n9RxIHHZrQExS33U6Jl3Vilrh5MOr53QH+b19p7nQ3p5twOiGYpzrE4xLwjKW\n0lZDl5C4YXmk1VNH4l3G68Fcka7y+/TG4+bhoRcgq2DWRNxKILYZePmeoCkG\nYxxW1bhL2vjQDAaqC4inH9Rck7k0YEuS5RdyfLOAwn4PPmrpRhf8EDd+KVxa\nzd0plDGLL+HEWyyy9secLRozbv4+2CcOv2Ax+XVkNbWJheZcUvHIroppphr4\nPhvGsGP4nqkqzJ95fJp9BfTsmeQ6RokAn+/u8EPO210t/flglvTTKjAug3M6\nUdnj\r\n=nv/3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHsTVQDz14ibcKFCVz29U52mY3CpLiHKUseV9QBVBaX6AiEAzEKBbwbU9ZQ5SdDIP4FIrDBLtrmuvGVP/o8SFJu3cpQ="}]},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"_npmUser":{"name":"vickenstein","email":"victor.zeng@styluxinc.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-association_0.0.37_1573840795466_0.9698186231405974"},"_hasShrinkwrap":false},"0.0.38":{"name":"mongoose-association","version":"0.0.38","description":"A cleaner and faster way to setup mongoose populate with virtual field","main":"dist/index.js","types":"types/index.d.ts","scripts":{"test":"gulp package && mocha --recursive --exit","test-inspect":"gulp package && mocha --recursive --exit --inspect=0.0.0.0:9229 --debug-brk","lint":"tslint --project tsconfig.json"},"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"keywords":["mongoose","association","relationship","populate","virtual"],"author":{"name":"Victor Zeng"},"license":"ISC","bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"homepage":"https://github.com/vickenstein/mongoose-association#readme","peerDependencies":{"mongoose":"^5.4.0"},"devDependencies":{"@types/inflection":"^1.5.28","@types/lodash":"^4.14.116","@types/mongodb":"^3.1.3","@types/mongoose":"^5.2.3","benchmark":"^2.1.4","chai":"^4.1.2","gulp":"^4.0.2","gulp-clean":"^0.4.0","gulp-shell":"^0.6.5","gulp-typescript":"^5.0.0-alpha.3","mocha":"^5.2.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.9.2","typescript":"^3.0.1"},"dependencies":{"inflection":"^1.12.0","lodash":"^4.17.15","node-association":"0.0.9"},"gitHead":"e27d62feeea1f3069fea01b40973ea1ac707b873","_id":"mongoose-association@0.0.38","_nodeVersion":"8.11.3","_npmVersion":"6.9.0","dist":{"integrity":"sha512-e3E+y7HzFBMg42qDk1BC46aNjz5idPg+N60OW0IAZlSVok6Ffaqy8jlEksZsd8FV5Sn2yKBJR6DvWnuVtf6Iig==","shasum":"9ba9d2297e8919cde382201e32e51cce79500437","tarball":"https://registry.npmjs.org/mongoose-association/-/mongoose-association-0.0.38.tgz","fileCount":92,"unpackedSize":285099,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd6VL4CRA9TVsSAnZWagAAuDgP/1NBqPP7twAsBQEiJYNw\nuoWcRAJqep3iTGqU39za7bc7EJZa8NkMW4O26SF6XXQUwZkt4cHuk6q6I4dZ\nKEoSDJWjDRSTcvHYlG88dhioIrNB3njVC177tRRHlRsSvlpld58ZEvlsswyI\n8fSRa/twmZ2t/irhLfwi5/URczJ/rL0SFx1RfHPpVISOBjTy051Rz7axmRpO\nvj1kZ9JjNIvwO31dRuMkPjvHowbhvpLEIaeY8s3dJX18H3yQGmIG4gzjFqR8\nHyX+l8DNn409vRX44ix9vCRli69cyoRgORHiXz+gIuRIuZpEdokby3074I8b\nP69dgMiAUpsm2qkZbiJMNOv7FG/ThDeWqYMGhS6qkn7zIl4i7/NTe6KaApoF\n4oB280paRXsWeolwBE0UiC3aB98INg6zMNL+KL6nEJ1pGXZfBQ0Da+CtiYbr\nsT2CMQ+crKKzwyh/2HR5yjpjJnawekoEiKnBzMdQ0vVoLqPWWmfDmgcJAeCn\nxvowPRCHG8gjgf+CJ/OYQHMCQu+S9n1zsjGaYR8GnfCMkscv9po5wdu/5CNi\n3He5Es9DpNvKz6qmOPLhy0HFs1dRdt2dHw43feHK1GBMtGljVA4qzOqQ7512\nSaFJq9qHBKH8aCx+mArxDbUUJQqXIQvdh6sIPY6hkbciN+u/Rq3jAMqsImIb\n10Gh\r\n=V1qf\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIF3/p02Cc33i8vSgRKx88gtDKokSetpY4i5AU98ZL7N/AiEAlmQEnbDlwzJjrFWhR2IBhUblCo4+CWxvnOwDmw63ggg="}]},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"_npmUser":{"name":"vickenstein","email":"victor.zeng@styluxinc.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-association_0.0.38_1575572215398_0.08678243269426922"},"_hasShrinkwrap":false},"0.0.39":{"name":"mongoose-association","version":"0.0.39","description":"A cleaner and faster way to setup mongoose populate with virtual field","main":"dist/index.js","types":"types/index.d.ts","scripts":{"test":"gulp package && mocha --recursive --exit","test-inspect":"gulp package && mocha --recursive --exit --inspect=0.0.0.0:9229 --debug-brk","lint":"tslint --project tsconfig.json"},"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"keywords":["mongoose","association","relationship","populate","virtual"],"author":{"name":"Victor Zeng"},"license":"ISC","bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"homepage":"https://github.com/vickenstein/mongoose-association#readme","peerDependencies":{"mongoose":"^5.4.0"},"devDependencies":{"@types/inflection":"^1.5.28","@types/lodash":"^4.14.116","@types/mongodb":"^3.1.3","@types/mongoose":"^5.2.3","benchmark":"^2.1.4","chai":"^4.1.2","gulp":"^4.0.2","gulp-clean":"^0.4.0","gulp-shell":"^0.6.5","gulp-typescript":"^5.0.0-alpha.3","mocha":"^5.2.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.9.2","typescript":"^3.0.1"},"dependencies":{"inflection":"^1.12.0","lodash":"^4.17.15","node-association":"0.0.9"},"gitHead":"0dd5354375d50f8cdd3ccfec4163827590ec390d","_id":"mongoose-association@0.0.39","_nodeVersion":"10.15.3","_npmVersion":"6.13.4","dist":{"integrity":"sha512-im2fwRyXkHbJ55iRBUSHLrOc/jnqjHOHf9ew0pku+0Xnna9xZkt6Kh8UtHlcD08ftNxrOlS+RirzQu3/lS68XQ==","shasum":"a55a5938cc7d1eff27edae4b14332fe1a6191fe3","tarball":"https://registry.npmjs.org/mongoose-association/-/mongoose-association-0.0.39.tgz","fileCount":92,"unpackedSize":285348,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd8q2JCRA9TVsSAnZWagAAodEP/2arOcUiS5CNM8+eFZzS\nltNpF71eh5hSUvXNk/5Ej/15zuPvvwsok3nWYfntyscGIhMnqG+m/pdiDNP8\nxwttZjdQJn3SSuzSljCakAGBHhKwvu7GXYR7+zCcyNf6AbxnHCy5TBoP6okR\n5ViGfI2bcdCr7XsreRSlZgFXzjMNiK5G4u7mAgGx2ftIG7/V0JUIiZCKKfs/\n4U8dk+L6GKpx2jIAGGspWeI6yIzjsYPC9p5QHs8zu8KyWXE6cRoXo5J59ifC\nPriA5h5/U7ihMyLEMzM19DEw/zjXn5YfWA/A/J9bewWrn79VTXlhN7CiL9WP\nM1n2M+kCGfNA/NIO5hSdRK6EOwob3ov+1L5TaG9gr3J5LLi0sen2A6oz9fJS\nlggSjESXND2Q4dW1Mt1dQ7AYbCJ8+zJnFGBpvSSgXI2PwrspFb/ulH/UVhLi\nI3rmerXRbxPVjRB8ELQipiBRaUZTkuN/km4oaRfAOyUQ2kawz/w5Nr/tteKz\nADLtsZ3Yozd4hr661b+9UDzo9KoXXBAgZuBTt4iVKDwHtX6vziGkjwLpqRhz\nCymW+pQdK6PmyxwHP63mrVQL23NBKqoBwqaTsihidBdM7WNbrxFnsUT4yQQc\nJGXx4JwL522TLc16Qqoz3Z9wujGJtTsDuxT5dYKY5fpqUW4g+RwqTgfsSsns\nKE5Q\r\n=+r0X\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCt9slPYL4grqTBNqdPs10QEL8kX32gCIPI2VYPPj+F7gIhALLogSf2++FoUdJXBc4DivYnumKGL3rORczlvau6AinW"}]},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"_npmUser":{"name":"vickenstein","email":"victor.zeng@styluxinc.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-association_0.0.39_1576185224701_0.7924801788836238"},"_hasShrinkwrap":false},"0.0.41":{"name":"mongoose-association","version":"0.0.41","description":"A cleaner and faster way to setup mongoose populate with virtual field","main":"dist/index.js","types":"types/index.d.ts","scripts":{"test":"gulp package && mocha --recursive --exit","test-inspect":"gulp package && mocha --recursive --exit --inspect=0.0.0.0:9229 --debug-brk","lint":"tslint --project tsconfig.json"},"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"keywords":["mongoose","association","relationship","populate","virtual"],"author":{"name":"Victor Zeng"},"license":"ISC","bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"homepage":"https://github.com/vickenstein/mongoose-association#readme","peerDependencies":{"mongoose":"^5.4.0"},"devDependencies":{"@types/inflection":"^1.5.28","@types/lodash":"^4.14.116","@types/mongodb":"^3.1.3","@types/mongoose":"^5.2.3","benchmark":"^2.1.4","chai":"^4.1.2","gulp":"^4.0.2","gulp-clean":"^0.4.0","gulp-shell":"^0.6.5","gulp-typescript":"^5.0.0-alpha.3","mocha":"^5.2.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.9.2","typescript":"^3.0.1"},"dependencies":{"inflection":"^1.12.0","lodash":"^4.17.15","node-association":"0.0.9"},"gitHead":"b8ba2972b511c06f8d23b44b9e8cb6966e9f6b34","_id":"mongoose-association@0.0.41","_nodeVersion":"8.11.3","_npmVersion":"6.9.0","dist":{"integrity":"sha512-1H6k73rGsaPoR8zi/hPaKXDMna7j/CLyQPoFZub3A3LoktJLIcxzQy2yJx50PM93n9a925dS0BPp19MxQZ9acw==","shasum":"840c284f11b0cc71538caace7f9e61d1c1021ec4","tarball":"https://registry.npmjs.org/mongoose-association/-/mongoose-association-0.0.41.tgz","fileCount":92,"unpackedSize":285485,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeMcnsCRA9TVsSAnZWagAAsJwP/1IrcP9uwWNrlAMmabgH\n6hWB4DwnINpvd+pSr3QNL1M+zWxEb1OHebkSAtTlDeOP2Cm4v4YhAxn7mXVD\n9Km/ey8k/GXgjJzTNNJOv50VcNwcxSKfrj+DgJFaHFU3hOvzGgBNOIBMFWQT\nPBx4+vee5buRQMv6uTwrfy5RQmwXfEuh7sxxrz7dEvK0rxY0PBTqJZQFIqgC\nr51cTeoZMWv3uYMzTRKSMwV2jp7KaCqhb1c4YhuoKualdPy4kbxP1dQDiC7O\ndmr75Z3v+VJQEFDotH0NmAchZak7R4NJ4+14Ms3zbY0hTaGEmmfK0STG297f\n0+uqKJ+MPyJkKUCw6D+3ZY0ttN33gcgjzPw7GOjF3iyDpomAFC5Crn43fCi6\nvl/sd0qfjteAh+mThF2hBnaOGbF3AEOLyM1yH785TVwINO/eGMOP7OyDZE/k\nY2VBOHid/7B/GdrrsXcChJxyyOvCyIyLaGDfbPt2Fe6t8VUMP4vQYWw/9poX\nz+Mihgi/ZvxdZa/l9vl9Ow8spGUZUOHpBtrwDkyY2+p2yHWx2/u4gumGuiHw\nzJtKguZshlD9tYnx2WZDXgcxPgbEPOfwZYYtVW36XioafSKq2rM5qAlnxMKQ\ng5TgZQmvz1I3FARBMoYNB771DIB3aN7cb5Xy78Bd/kT6UnyU8eNcyYzmcRdA\nrySG\r\n=0bzA\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDh4VQD+/0E4pmpb93xkv6mV7OyfLuT7T83kkY3PGbqYAIhANyAsZd6hWhhd2pbOX4TQp4RKUzzFQj3p5G/X8k0iJBd"}]},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"_npmUser":{"name":"vickenstein","email":"victor.zeng@styluxinc.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-association_0.0.41_1580321259739_0.45156986605486304"},"_hasShrinkwrap":false},"0.0.42":{"name":"mongoose-association","version":"0.0.42","description":"A cleaner and faster way to setup mongoose populate with virtual field","main":"dist/index.js","types":"types/index.d.ts","scripts":{"test":"gulp package && mocha --recursive --exit","test-inspect":"gulp package && mocha --recursive --exit --inspect=0.0.0.0:9229 --debug-brk","lint":"tslint --project tsconfig.json"},"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"keywords":["mongoose","association","relationship","populate","virtual"],"author":{"name":"Victor Zeng"},"license":"ISC","bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"homepage":"https://github.com/vickenstein/mongoose-association#readme","peerDependencies":{"mongoose":"^5.4.0"},"devDependencies":{"@types/inflection":"^1.5.28","@types/lodash":"^4.14.116","@types/mongodb":"^3.1.3","@types/mongoose":"^5.2.3","benchmark":"^2.1.4","chai":"^4.1.2","gulp":"^4.0.2","gulp-clean":"^0.4.0","gulp-shell":"^0.6.5","gulp-typescript":"^5.0.0-alpha.3","mocha":"^5.2.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.9.2","typescript":"^3.0.1"},"dependencies":{"inflection":"^1.12.0","lodash":"^4.17.15","node-association":"0.0.9"},"gitHead":"3c86393462c6babf3208796870399ca3e633d25e","_id":"mongoose-association@0.0.42","_nodeVersion":"8.11.3","_npmVersion":"6.9.0","dist":{"integrity":"sha512-hrIeqMaYXSi3mF5MspQUc7ZobyPqoJFXVbkIJiiazxYCAWPZBWwgamtwZQ283tI+bTKRzX2hk5hM3ohD4HxnIQ==","shasum":"3279672326613c394bbbc73489e1fcdb7af4d6a4","tarball":"https://registry.npmjs.org/mongoose-association/-/mongoose-association-0.0.42.tgz","fileCount":92,"unpackedSize":284989,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeRJekCRA9TVsSAnZWagAAINUP/jdDa/vgKfLyDnqM9uzJ\nk9vBL9oerQ8KublfXI2uN1R2rEwAi1Kgm6C/ZPjyBMID0zzo8aHm+kLGIB2L\nba0sIX1X8NBifO/Wv1+dxM2K3eWtHtUoHRCtFT6LoIzkRkIgHrpV7LNqrZpw\nCoReJGVS5IeMsMCBNpVRzEuEz0URIg5MukQmIhPMJ5L/JNPWwIz71cqKi7LO\nyLE45mvYWlch4IoBWdTSV8rs6KgLTT66+ajYUWFzTvDYLF8bdiVAMdY+ODt2\nbnYlyvbH48NMT8stqBG+mGfDtmJk2Tfq3H6Ilp97X/+YpGqmfLLkmjmtmfi8\nc56c4wKX6ljNa2wJv3UfKsD8Lflw/ETSi8BflnIihm/8tXE1+FXqHLr9PFyt\n3nV4FiFzCc3EJ5nS0XOqGrrRHXwSOW0r9XBwFozeI9CQvRUtzt+d2ImMLr6U\nrLTkFN8r+cC5JCFUIHA+8zMKChE33u5pajuiwht73WMv4TcpFY0Q1DT4e+K2\nm2mBKHkutGWNSpJmDlX1kTYOGyCXoUOVNVEyKY1oNjqAWfqxpR+LBOI4agTM\ne1F7fvXUr8AMSxv0EwvRAR2i1T3Au3tFuA8Oq99skibEMaG8gVbRlU98c8rr\nHgItg9QuQZ7Wiku6XiLpKCDWI+RJ2r8uQZfwaDbo0lYMq6ruvLXS1Qr4DI50\nYpUv\r\n=lkYq\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIA5hugtZj2hzS2ZgMJKQltY/2yh6Vc1KczJXWtacnaRFAiEAnsj6WhwGsljQaAomgS6yLipKsAFyjpo3Natk5zrCxcE="}]},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"_npmUser":{"name":"vickenstein","email":"victor.zeng@styluxinc.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-association_0.0.42_1581553571488_0.9902801987136294"},"_hasShrinkwrap":false},"0.0.43":{"name":"mongoose-association","version":"0.0.43","description":"A cleaner and faster way to setup mongoose populate with virtual field","main":"dist/index.js","types":"types/index.d.ts","scripts":{"test":"gulp package && mocha --recursive --exit","test-inspect":"gulp package && mocha --recursive --exit --inspect=0.0.0.0:9229 --debug-brk","lint":"tslint --project tsconfig.json"},"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"keywords":["mongoose","association","relationship","populate","virtual"],"author":{"name":"Victor Zeng"},"license":"ISC","bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"homepage":"https://github.com/vickenstein/mongoose-association#readme","peerDependencies":{"mongoose":"^5.4.0"},"devDependencies":{"@types/inflection":"^1.5.28","@types/lodash":"^4.14.116","@types/mongodb":"^3.1.3","@types/mongoose":"^5.2.3","benchmark":"^2.1.4","chai":"^4.1.2","gulp":"^4.0.2","gulp-clean":"^0.4.0","gulp-shell":"^0.6.5","gulp-typescript":"^5.0.0-alpha.3","mocha":"^5.2.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.9.2","typescript":"^3.0.1"},"dependencies":{"inflection":"^1.12.0","lodash":"^4.17.15","node-association":"0.0.9"},"gitHead":"46ef778637e97c273b37f0365555d367b771b858","_id":"mongoose-association@0.0.43","_nodeVersion":"8.11.3","_npmVersion":"6.9.0","dist":{"integrity":"sha512-eFxs/Wq6WXZmJ/Zw1h4vXIY4l9XUP/kguRFkh5NJUhBAqLMtVR3Ci32N9M9UYqZvkVABlbeTFcmtVUuUTx/NaA==","shasum":"29b4977980b72e8003bcac7f41dbdb41d938537e","tarball":"https://registry.npmjs.org/mongoose-association/-/mongoose-association-0.0.43.tgz","fileCount":92,"unpackedSize":287876,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeYZVMCRA9TVsSAnZWagAASqUP/08/aA1bbgWNZNQOpms6\n0xy5EyynElHM9Ghh4v7lHH4Dg7GspG8nuVPzvvu0B0IzKw7dOUErtbG2Kmes\n9liEIuinWLk3XartGN0jzWtjol4R5aRXpJBnLyBRjZqYifuSWFL22SVUTHU+\nk8+Rquldt5gpw/6ysoitSBuAaWEVRGlhn4Mm0io1bZiCuPHjJ5ylrmkIAeVb\ny8lWPpDdj5LedhqvKI2puKZ8MJ9r95gsu+FNr9Hk0sIYrlIK8ygcY7I+pLtC\nthxGZFwLlFv1ARnz6awXAY14pcZSf0dsfDrAt0MBEsZ/MuHKfmdkokRB5ckG\nkAxIXtIzsO7/rRd3Q8VBBwBSC44L3zSQ4+rty7Leu8pxXw6tV1xBpG+ix/Hq\nesIsSlQ/gycHl8HRy96LHIvnhKtjF9CXtv8wyiYHZwEdaz7iqGrpmTHcKF8s\nDebdNomq0s662UM1y+AeuzogccOXw3eKSVMp8eIRI5anpppVvrOQaXR8Vzqn\n6mkBy8BRPeI9WHVkxRIWCbtfrgXcMn3W88hBX1BjqsDHKzTalbnQ7DvSA9e4\nhH3P7uwpovk+S60DWUUb4m9sUaU6UH9lPjw6G4uOiDQTj2nlhs90/u/YgOQb\ncwN5Librm7Ed3Q+UlVkU8qmPlsM2PWzB2RVCGR1xdQb183YmS88ftszf0CBJ\ns9Si\r\n=OBg5\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDkmUstym6ZF5ZX2wmZ/OkTg0j8EJ8I7+IlTZLOYHkL5AIhANubj5AAwJlJO9ckuBosDY9GU+ZynKXUmL6N14RrqGja"}]},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"_npmUser":{"name":"vickenstein","email":"victor.zeng@styluxinc.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-association_0.0.43_1583453515450_0.6921956498785689"},"_hasShrinkwrap":false},"0.0.44":{"name":"mongoose-association","version":"0.0.44","description":"A cleaner and faster way to setup mongoose populate with virtual field","main":"dist/index.js","types":"types/index.d.ts","scripts":{"test":"gulp package && mocha --recursive --exit","test-inspect":"gulp package && mocha --recursive --exit --inspect=0.0.0.0:9229 --debug-brk","lint":"tslint --project tsconfig.json"},"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"keywords":["mongoose","association","relationship","populate","virtual"],"author":{"name":"Victor Zeng"},"license":"ISC","bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"homepage":"https://github.com/vickenstein/mongoose-association#readme","peerDependencies":{"mongoose":"^5.4.0"},"devDependencies":{"@types/inflection":"^1.5.28","@types/lodash":"^4.14.116","@types/mongodb":"^3.1.3","@types/mongoose":"^5.2.3","benchmark":"^2.1.4","chai":"^4.1.2","gulp":"^4.0.2","gulp-clean":"^0.4.0","gulp-shell":"^0.6.5","gulp-typescript":"^5.0.0-alpha.3","mocha":"^5.2.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.9.2","typescript":"^3.0.1"},"dependencies":{"inflection":"^1.12.0","lodash":"^4.17.15","node-association":"0.0.9"},"gitHead":"fb3ccd1765c01b8525394ec51ab675e650ab5e70","_id":"mongoose-association@0.0.44","_nodeVersion":"8.11.3","_npmVersion":"6.9.0","dist":{"integrity":"sha512-XuOX+Orf8CjBebyPZcvJbacEWHKbtgkg45fUCQwuh4rpQ7rGIyqgfAYeIXPhY0EmQ9RAZer4T+ZASSUVT+TQnA==","shasum":"4df18810a1dfe564f9f8e1a41b0a7b75ffde8c9e","tarball":"https://registry.npmjs.org/mongoose-association/-/mongoose-association-0.0.44.tgz","fileCount":92,"unpackedSize":290404,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeYqZxCRA9TVsSAnZWagAALWcQAInWey4dkqRZMP4TAYeU\nPb4jxgG9VfbU/Nr3qjoti4E4dDx2dehoiS3GkYXbujjmx7ysemrMDzd0Ou4O\n6iJLr5ixRDzCk4yueKMSV6dUsd68TTS4OZGqqmJF3qjRJozqetabqgQg5i8U\nX2ydXYvU8xjrp2EqK5Ot99d5LdfuA3GpMYR1537yNvcCD9OdkvO/uBiU6hov\nRXQJEE1K5ayOGO5mfoMFDQ1ueJkI4zDLr1LSMsXqvdYWSrElDU55VvaRBMcy\n6JJ3Fv4h0gqL33aZgXWvI95OgpT/i/U+pkUVrRpXxEtv13ZwAtb3LXtlKOL0\nePpnNbF3w0j2oXSFUSdxATtwH+iOWZlbGxL/Nczfie8yToVjueAgIumG3Q/2\nB4xueZIRXn7ilrIRcQOzHPLM6e+lFvOQXYvhmmaKRMrYsJO5kLRYOZeBp5ZI\num7+fvyJAJLD9RiU1o9G7LMAdQN1vadZSzpnaDJ7rcOAmq57GcKc0SW6tbae\nz0URVjiiJjKs0QBQSGVQ9Pp1W4CZlYHYqU+LHSTT0WZx02v7iH05eVAgEE9g\nwomVofT9Qe31/NC+zIpOdkgodppLJBcjiES3W6T68d+XHafQbEqUALPV8nNh\nMQrrXqQondtipdd9Ib+4F2lrzDtA/115WpBvwWeyARsnOiRsNG7feFt+HiGQ\nxHsa\r\n=7uVA\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHKf0ILuZagratp1QgbNuNrfGod6DQZ2XrraBzkEWKDxAiBpr6xK/23erj5aeo/PHYyIEts9InWNM9gozL8/fStUHg=="}]},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"_npmUser":{"name":"vickenstein","email":"victor.zeng@styluxinc.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-association_0.0.44_1583523441171_0.3298926980849082"},"_hasShrinkwrap":false}},"time":{"created":"2018-06-29T17:30:26.454Z","0.0.1":"2018-06-29T17:30:26.563Z","modified":"2022-05-09T18:35:35.912Z","0.0.3":"2018-07-11T02:25:37.621Z","0.0.4":"2018-07-12T17:08:57.441Z","0.0.5":"2018-07-12T22:16:33.965Z","0.0.6":"2018-07-13T01:26:36.083Z","0.0.7":"2018-07-13T22:35:34.958Z","0.0.8":"2018-07-16T03:46:27.646Z","0.0.9":"2018-07-19T18:44:08.115Z","0.0.10":"2018-08-06T03:08:23.146Z","0.0.11":"2018-08-08T04:59:05.049Z","0.0.12":"2018-08-08T05:26:15.221Z","0.0.13":"2018-08-09T06:27:46.372Z","0.0.14":"2018-08-09T17:16:58.457Z","0.0.15":"2018-08-09T21:55:28.625Z","0.0.16":"2018-08-10T21:49:56.984Z","0.0.17":"2018-08-17T18:43:47.784Z","0.0.19":"2018-08-24T00:48:08.640Z","0.0.20":"2018-10-31T21:49:38.582Z","0.0.21":"2018-10-31T22:03:04.891Z","0.0.22":"2018-10-31T23:48:15.262Z","0.0.23":"2018-11-01T20:27:04.360Z","0.0.24":"2018-11-15T23:41:58.804Z","0.0.25":"2018-12-07T01:08:42.288Z","0.0.26":"2018-12-18T21:02:34.513Z","0.0.27":"2018-12-19T01:05:41.058Z","0.0.28":"2019-01-08T20:00:58.032Z","0.0.29":"2019-02-19T23:03:04.595Z","0.0.30":"2019-03-04T18:01:08.776Z","0.0.31":"2019-03-08T18:11:14.673Z","0.0.32":"2019-03-15T18:05:21.977Z","0.0.33":"2019-06-21T22:33:50.895Z","0.0.34":"2019-10-05T00:10:59.393Z","0.0.35":"2019-10-31T18:59:49.119Z","0.0.36":"2019-11-05T23:00:23.518Z","0.0.37":"2019-11-15T17:59:55.579Z","0.0.38":"2019-12-05T18:56:55.552Z","0.0.39":"2019-12-12T21:13:44.856Z","0.0.41":"2020-01-29T18:07:39.859Z","0.0.42":"2020-02-13T00:26:11.643Z","0.0.43":"2020-03-06T00:11:55.609Z","0.0.44":"2020-03-06T19:37:21.310Z"},"maintainers":[{"name":"vickenstein","email":"victor.zeng@styluxinc.com"}],"description":"A cleaner and faster way to setup mongoose populate with virtual field","homepage":"https://github.com/vickenstein/mongoose-association#readme","keywords":["mongoose","association","relationship","populate","virtual"],"repository":{"type":"git","url":"git+https://github.com/vickenstein/mongoose-association.git"},"author":{"name":"Victor Zeng"},"bugs":{"url":"https://github.com/vickenstein/mongoose-association/issues"},"license":"ISC","readme":"# mongoose-association\nA cleaner and faster way to setup mongoose populate with virtual field using normalized associations.\nThis library is built for async await node environment minimum 7.6\nThis library is built for mongo 3.6, and mongoose version >=4.11.0\n\n## Setup\nnpm install mongoose-association\n\n```javascript\n  const mongoose = require('mongoose')\n  const { mongooseAssociation } = require('mongoose-association')\n  mongooseAssociation(mongoose)\n```\n\n### Associations\n`mongoose-association` has 4 types of association to relation mongoose schemas.\n* `belongsTo` o ->\n* `polymorphic` o =>\n* `hasOne` `through` -> o\n* `hasMany` `through` ->> o\n\n#### `belongsTo`\nthis relation specify the reference lies directly on the schema and related to a **single** model using a `foreignField`\n```javascript\nbelongsTo(foreignModelName, { as, localField, foreignField } = {}, schemaOptions = {}) {\n\n}\n```\n###### foreignModelName *required*\n###### as *optional*\n###### localField *optional*\n###### foreignField *optional*\n###### schemaOptions *optional* - for additional mongoose schema feature e.g. { required: true }\n\n#### `polymorphic`\nthis relation specify the reference lies directly on the schema and related to **multiple** models\n```javascript\npolymorphic([foreignModelName, ...], { as, localField, foreignField, typeField } = {}, schemaOptions = {}) {\n\n}\n```\n###### foreignModelName *required* - Array of modelNames\n###### as *optional*\n###### localField *optional*\n###### foreignField *optional*\n###### typeField *optional*\n###### schemaOptions *optional*\n\n#### `hasOne`\nthis relation specify the reference lies on another schema and it is **unique**\n```javascript\nhasOne(foreignModelName, { as, with, localField, foreignField, through, throughAs, throughWith } = {}) {\n\n}\n```\n###### foreignModelName *required*\n###### as *optional*\n###### with *optional*\n###### through *optional*\n###### throughAs *optional*\n###### throughWith *optional*\n\n#### `hasMany`\nthis relation specify the reference lies on another schema and it is **non-unique**\n```javascript\nhasMany(foreignModelName, { as, with, localField, foreignField, through, throughAs, throughWith } = {}) {\n\n}\n```\n###### foreignModelName *required*\n###### as *optional*\n###### with *optional*\n###### through *optional*\n###### throughAs *optional*\n###### throughWith *optional*\n\n## Naming Convention\nAs mongoose model classes are typically singular thus `mongoose-association` stick to naming models using singular words.\nAs typically javascript utilize camel casing thus all auto generated naming is done using camel case\n\n## Glossary\n\n#### `foreignModelName`\nthe modelName property for a mongoose model holding the related schema.\n\n#### `as`\nthe property on mongoose model instance that holds the related object\n\n#### `with`\nfor has associations, specify which as property is referenced.\n\n#### `foreignField`\nthe **schema** property for the relational **reference** typically an mongoose **ObjectID**\n\n#### `localField`\nthe **model** instance property that holds relational record\n\n#### `through`\nthrough is used to associate via another document type other than the two document types forming the relation\n\n#### `throughAs`\nspecifies the reference between the through model and associated model.\n\n#### `throughWith`\nspecifies the reference between the through model and association origin model.\n\n## Schema Building\nOnce we have apply the plugin to mongoose, we can start defining some schemas\n```javascript\nconst mongoose = require('mongoose')\nconst { Schema } = mongoose\n\nconst riderSchema = new Schema()\nriderSchema.belongsTo('Bike').index(1, { sparse: true })\nriderSchema.belongsTo('Helmet')\n```\nRight here we have defined a schema for Rider. Using the `belongsTo` method with the model Bike can automatically have the `localField` defined as **bike**, this results in a standard mongoose virtual property **bike** on each instance. **all `mongoose-association` defined virtuals returns a promise** and is designed to function with `await`. A `localField` was also automatically defined as **bikeId**. This will be the auto generated property storing the reference on the databased mongoose document. Here we have also applied an index on the `localField` generated by `belongsTo`\n```javascript\nconst bikeSchema = new Schema()\nbikeSchema.hasOne('Rider')\nbikeSchema.hasOne('Helmet', {\n  through: 'Rider'\n})\n```\nIn this weird world each bike only have zero or one **Rider** and **Helmet**. we can now define a reverse relationship using `hasOne` method. Because we know how **Rider** behaves with both **Bike** and **Helmet**. We can infer that a bike can only have zero or one **Helmet**. This inference can only be made `through` the **Rider**\n```javascript\nconst helmetSchema = new Schema()\nhelmetSchema.hasOne('Rider')\nhelmetSchema.hasOne('Bike', {\n  through: 'Rider'\n})\n```\nmongo's limitation on `$lookup` restrict the through relationship to span only across three document types.\n```javascript\nconst registrationSchema = new Schema()\nregistrationSchema.belongsTo('Car')\nregistrationSchema.belongsTo('Alien', {\n  as: 'owner'\n})\n```\nLets visit another scenario that is a bit foreign, where we run an **Alien** **Car** **Registration**. There are two different ways an **Alien** can interact with a **Registration**. One is by assigning the `as` to be **owner**, which renders the `localField` to be **ownerId**. this allows the **Alien** to be the \"owner\" of the **Car**.\n```javascript\nregistrationSchema.belongsTo('Alien', {\n  as: 'approver',\n  localField: 'approver_id'\n})\n```\nSimilarly an **Alien** can also be an **approver** of the registration, and the `localField` can be modified to use snake case **approver_id** or any format preferred.\n```javascript\nconst alienSchema = new Schema()\nalienSchema.hasMany('Registration', {\n  as: 'ownedRegistration',\n  with: 'owner'\n})\n```\nWith this robust system we can declare that each **Alien** may have many **Registration**. by default the `as` would be the downcase pluralize version of the `modelName`, in this case as **registrations**. We also had to apply **owner** for `with`, otherwise we are unable to distinguish which interaction **Alien** has `with` the **Registration**\n```javascript\nalienSchema.hasMany('Registration', {\n  as: 'approvedRegistrations',\n  with: 'approver'\n})\n```\n**Alien** can also be the **approver** of **Registration**. This is where we can define that each **Alien** to `hasMany` **approvedRegistrations** using `as`. The `localField` is fetch via the reverse association as **approver_id**.\n```javascript\nalienSchema.hasMany('Car', {\n  through: 'Registration',\n  with: 'owner'\n})\n```\n`hasMany` `through` is normally used for many to many relationships. `with` function in reverse of `as` in term of its ability to defined the `localField` and `foreignField` used in the mongo `$lookup`. In this case the **owner** will be used to reference **ownerId**. This relationship will result in the `as` of **cars**, and using the `localField` of **carId**\n```javascript\nalienSchema.hasMany('Car', {\n  through: 'Registration',\n  with: 'approver',\n  as: 'approvedCars'\n})\n```\nSimilar to above case of the **cars**, this association stores **approvedCars** `through` **Registration** using the **approver** for `as`.\n```javascript\nconst carSchema = new Schema()\ncarSchema.hasOne('Registration')\ncarSchema.hasOne('Alien', {\n  through: 'Registration',\n  throughAs: 'owner'\n})\n```\nThis is a reverse `hasMany` relationship coming from **Car**. The relationship to **Alien** is `through` **Registration** `thoughAs` **owner**.\n```javascript\nconst assemblySchema = new Schema()\nconst vehicleAssociation = assemblySchema.polymorphic(['Bike', 'Car'], {\n  as: 'vehicle'\n})\nconst partAssociation = assemblySchema.belongsTo('Part')\nassemblySchema.indexAssociations([vehicleAssociation, 1], [partAssociation, 1], { unique: true })\n```\n`polymorphic` is last type of relation, and it is most similar of to `belongsTo`, with the exception that more than one model can be associated. A `as` is required for polymorphic association because `mongoose-association` doesn't pick favors in auto generation. Though the `localField` is inferred from the `as` as **vehicleId**. polymorphic also generates an additional schema property storing the document type `modelName` this property is auto generated using the `foreignField` as **vehicleIdType**. Using the `index Association` method we were able to create a compound index on the assembly schema using both the `localField` and `typeField` of the `polymorphic` association along with the `localField` of the `belongsTo` with **Part**\n```javascript\nconst partSchema = new Schema()\npartSchema.hasMany('Assembly')\npartSchema.hasMany('Bike', {\n  through: 'Assembly',\n  throughAs: 'vehicle'\n})\npartSchema.hasMany('Car', {\n  through: 'Assembly',\n  throughAs: 'vehicle'\n})\n```\nA model can also define `hasMany` `through` a `polymorphic` relationship. `with` perform identical functionality in this scheme.\n```javascript\ncarSchema.hasMany('Assembly', {\n  with: 'vehicle'\n})\ncarSchema.hasMany('Part', {\n  through: 'Assembly',\n  with: 'vehicle'\n})\n\nbikeSchema.hasMany('Assembly', {\n  with: 'vehicle'\n})\nbikeSchema.hasMany('Part', {\n  through: 'Assembly',\n  with: 'vehicle',\n  as: 'components'\n})\n```\nThe reverse `hasMany` relationships that is mostly auto generated\n```javascript\ncarSchema.hasOne('Rating', {\n  with: 'vehicle'\n})\nbikeSchema.hasOne('Rating', {\n  with: 'vehicle'\n})\n\nconst ratingSchema = new Schema()\nratingSchema.polymorphic(['Bike', 'Car'], {\n  as: 'vehicle'\n})\nratingSchema.belongsTo('Alien')\nratingSchema.hasOne('Rider', {\n  through: 'Bike'\n})\nriderSchema.hasOne('Rating', {\n  through: 'Bike'\n})\n\nalienSchema.hasOne('Rating')\nalienSchema.hasOne('Car', {\n  through: 'Rating',\n  throughAs: 'vehicle',\n  as: 'ratedCar'\n})\n```\nMake sure the model is defined after all the schema fields. Otherwise the getters and setters on the model instance will miss behave\n```javascript\nconst Rider = mongoose.model('Rider', riderSchema)\nconst Bike = mongoose.model('Bike', bikeSchema)\nconst Helmet = mongoose.model('Helmet', helmetSchema)\nconst registration = mongoose.model('Registration', registrationSchema)\nconst Alien = mongoose.model('Alien', alienSchema)\nconst Car = mongoose.model('Car', carSchema)\nconst Assembly = mongoose.model('Assembly', assemblySchema)\nconst Part = mongoose.model('Part', partSchema)\nconst Rating = mongoose.model('Rating', ratingSchema)\nconst Settings = mongoose.model('Settings', settingsSchema)\n```\n\n## Persisting Relationship\ncreating records with relationship\n```javascript\nconst bike = await new Bike().save()\nconst helmet = await new Helment().save()\nconst rider = await new Rider({\n  bike,\n  helmet\n}).save()\nconst bikeId = rider.bikeId // returns ObjectId\n```\nupdating relationship on record\n```javascript\nconst anotherBike = await new Bike().save()\nrider.bike = anotherBike\nawait rider.save()\n```\nworking with polymorphic relationship\n```javascript\nconst bike = await new Bike().save()\nconst rating = await new Rating({\n  vehicle: bike\n}).save()\nconst car = await new Car().save()\nrating.vehicle = car\nrating.save()\n```\n## Populating Association\nfrom the object itself\n```javascript\nconst rider = await Rider.findOne() // request count 1\nrider.populateAssociation('bike.rating', 'helmet') // request count 4\nconst bike = await rider.bike // request count 4\nconst helmet = await rider.helmet // request count 4\nconst rating = await bike.rating // request count 4\n```\nfrom the model\n```javascript\nconst rider = await Rider.findOne() // request count 1\nRider.populateAssociation(rider, 'bike.rating', 'helmet') // request count 4\nconst bike = await rider.bike // request count 4\nconst helmet = await rider.helmet // request count 4\nconst rating = await bike.rating // request count 4\n```\nfrom the query is slightly more efficient allows for further optimization\n```javascript\nconst rider = await Rider.findOne().populateAssociation('bike.rating', 'helmet') // request count 2\nconst bike = await rider.bike // request count 2\nconst helmet = await rider.helmet // request count 2\nconst rating = await bike.rating // request count 2\n```\n## Fetching From New Query Instead of Cache\n```javascript\nconst rider = await Rider.findOne().populateAssociation('bike.rating', 'helmet') // request count 2\nconst bike = await rider.fetchBike() // request count 3\nconst sameBike = await rider.fetchBike().populateAssociation('rating') // request count 4\nconst rating = await sameBike.rating // request count 4\n```\nunsetting association cache\n```javascript\nconst rider = await Rider.findOne().populateAssociation('bike.rating', 'helmet') // request count 2\nconst bike = await rider.unsetBike().bike // request count 3\n```\nhelper methods to do more meta programming\n```javascript\nconst rider = await Rider.findOne().populateAssociation('bike.rating', 'helmet') // request count 2\nconst bike = await rider.fetch('bike') // request count 3\nconst sameBike = await rider.unset('bike').bike // request count 4\nconst anotherSameBike = await rider.unset().bike // request count 5\n```\n## Explaining Query/Aggregate Population Plan\nAll mongoose Queries and Aggregates now have the explain method which returns the population plan it will use to optimize the fetching of associations.\n```javascript\nRider.findOne({ _id: riders[0]._id }).populateAssociation('helmet', 'bike.assemblies.part')._explain()\n[\n  [\n    'aggregate', 'Rider', [{\n      $match: {\n        _id: 5 b47845d8222031fd88ef049\n      }\n    }, {\n      $limit: 1\n    }, {\n      $lookup: {\n        from: 'helmets',\n        'let': {\n          localField: '$helmetId'\n        },\n        pipeline: [{\n          $match: {\n            $expr: {\n              $eq: ['$$localField', '$_id']\n            }\n          }\n        }],\n        as: 'helmet'\n      }\n    },\n    {\n      $unwind: '$helmet'\n    }, {\n      $lookup: {\n        from: 'bikes',\n        let: {\n          localField: '$bikeId'\n        },\n        pipeline: [{\n          $match: {\n            $expr: {\n              $eq: ['$$localField', '$_id']\n            }\n          }\n        }],\n        as: 'bike'\n      }\n    },\n    {\n      $unwind: '$bike'\n    }\n  ], [\n    'aggregate', 'Assembly', [{\n      $match: {\n        vehicleId: {\n          $in: [ 'Bike._id' ]\n        },\n        vehicleIdType: 'Bike'\n      }\n    }, {\n      $lookup: {\n        from: 'parts',\n        let: { localField: '$partId' },\n        pipeline: [{\n          $match: {\n            $expr: {\n              $eq: [ '$$localField', '$_id' ]\n            }\n          }\n        }],\n        as: 'part'\n      }\n    }, {\n      $unwind: '$part'\n    }\n  ]\n]\n```\nbuilt @ ![OneVigor Logo](https://webitems.onevigor.tv/email/onevigor-logo.png)\n","readmeFilename":"README.md"}