{"_id":"@benjamin-vanryseghem/mongoose-dummy","_rev":"3-d98dfb2f9ba1e276b7e3272f9548317d","name":"@benjamin-vanryseghem/mongoose-dummy","dist-tags":{"latest":"1.0.9"},"versions":{"1.0.7":{"name":"@benjamin-vanryseghem/mongoose-dummy","version":"1.0.7","description":"Mongoose dummy data generator","main":"index.js","scripts":{"test":"mocha test --timeout 10000"},"dependencies":{"flat":"4.0.0","mongoose":"4.7.7","uuid":"3.1.0","faker":"4.1.0"},"keywords":["dummy","generate","generator","fake","data","faker","mongoose","mongodb","document","model","schema"],"license":"MIT","devDependencies":{"chai":"4.0.2","chai-http":"3.0.0","mocha":"3.4.2"},"bugs":{"url":"https://github.com/thedgmbh/mongoose-dummy/issues/new"},"repository":{"type":"git","url":"git://github.com/thedgmbh/mongoose-dummy.git"},"homepage":"https://thed.io","gitHead":"5335aacaff4c54f5cecad355137ca1589c7c2a7d","_id":"@benjamin-vanryseghem/mongoose-dummy@1.0.7","_nodeVersion":"11.11.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-vG5sq51XUMjne+6llN7++2YFyuqXH0IABkGzfiWsJAYCWonOS2IvXn3Qbi8d5TCGCM0I0jWFJBn+h39FQdZM9A==","shasum":"680b12051ec8c821893902e58eacb1674a315d6f","tarball":"https://registry.npmjs.org/@benjamin-vanryseghem/mongoose-dummy/-/mongoose-dummy-1.0.7.tgz","fileCount":16,"unpackedSize":39355,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdlZ3qCRA9TVsSAnZWagAALqIP/1XivuhkIJZgOfBTdSTU\n0kV7SubDZGJy3dLVgrBG5Vms5NF5o3r/71zISgB1xe/5XfOcdZT3A1XtczuF\nnbi1BnZoCbqft3JNHLXHG8Xf8mP50PiNVlQGAL1zK9ZNIGpemsm3Gb6fcVeU\nkRH0WLh0gBThuptAng5Odz1PlhuKDEFmA5kWjgIntZlnkJ5tYHYfSdxqbopb\nvj4nOscJG7L1gpmhWvxMgHgN/2av8QgGFWOiDHcnmrdrygpZ5GwRisdiug5D\n4tmTvqma3FF96tIB/bqzTVK1eQkdMbWTLFRDbVxq4A/ZugcTW2e/NczQ9H4/\nK45aXq6VoKabZ3KXc6Vv5FcLeqPBhWKyrILxOIfnQ4hlqyN7h7tTGB8mOO4S\nr/eBnSmcNwwHqxYVpor6e1FP9TLRHdcXOfN1lUylL6+N+LO/LxDl58Py+Cte\nodgDHqRmaj2aaUPG0oXuQ1cdClkV2Q+DSVrcIgTLNeZQgmK0DE+5VfOvq8gM\nMhp8tYV+Se34+agm8P1OaPfxUs+GjAMiMm85+8bhe7FBpN6EcoGTDkYYYmc1\nK/BZRvexd6kHGbpAxYP09RoPdqNc/PJjvCv+J2gUwtA+sDpvIZeayQWGXhCA\nFIN8uOW+tykvNms0FnvXXdo2hdKyhpAe3xHF3zdD3oTVrpRo1Bp5V/uT3QJG\nLrMO\r\n=WDUp\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHX33VSOAXsWnlPMTX7HEY2cxx3DVAdj5BaFpV9qFejRAiEAt2Mm7IzKFVqf0BhzmpiNSh/EGCZUJDlbDA+jsO7fg1w="}]},"maintainers":[{"name":"benjamin-vanryseghem","email":"benjamin.vanryseghem@gmail.com"}],"_npmUser":{"name":"benjamin-vanryseghem","email":"benjamin.vanryseghem@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-dummy_1.0.7_1570086378010_0.20575920984505625"},"_hasShrinkwrap":false},"1.0.8":{"name":"@benjamin-vanryseghem/mongoose-dummy","version":"1.0.8","description":"Mongoose dummy data generator","main":"index.js","scripts":{"test":"mocha test --timeout 10000"},"dependencies":{"flat":"4.0.0","mongoose":"4.7.7","uuid":"3.1.0","faker":"4.1.0"},"keywords":["dummy","generate","generator","fake","data","faker","mongoose","mongodb","document","model","schema"],"license":"MIT","devDependencies":{"chai":"4.0.2","chai-http":"3.0.0","mocha":"3.4.2"},"bugs":{"url":"https://github.com/thedgmbh/mongoose-dummy/issues/new"},"repository":{"type":"git","url":"git://github.com/thedgmbh/mongoose-dummy.git"},"homepage":"https://thed.io","gitHead":"1c1e7d4d659a0c7f72959c1210c5dd5bbf12fcb5","_id":"@benjamin-vanryseghem/mongoose-dummy@1.0.8","_nodeVersion":"11.11.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-XVq0/EV5L7+VSQ+FKiTALBC7X+sMG0STmJVBsVVACTMKEWZh1zNmhyiIr8CoECaWKezX9pbFDN6BQQf4ODpH1A==","shasum":"ec177467f7227fa60528f7741ab0a68b718a5b93","tarball":"https://registry.npmjs.org/@benjamin-vanryseghem/mongoose-dummy/-/mongoose-dummy-1.0.8.tgz","fileCount":16,"unpackedSize":40963,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdlbSgCRA9TVsSAnZWagAAR+8P/3vH046LW2fY7ZVtKtor\nd/wOfn+ZWyOoxG3CaZjKKD5CHMXvqhnhhIC00GRdYFq0owcx9G8/V5aLCpk9\n91N5cvdkcDC3vrO2krFMsmoH4GrgcZNlImsXUy9sb+wL7ZS/AwP3NoGPKu4h\njlZRJ8TtJd1me3jyrvZfYNJnbZWvng6JuMjjTwHo6jc5vqLPe+MTTeTRBH+p\n/ZgTHXKsjocRuxMIxf/6vfBxH58Mh094EgPyfap26aEdswC6B/HhQL4Q+AXY\nxJxsNb3XrFQseGotKR54KCuqqQ9y+Lr611oKm1dDQh6g4z1QydMw5SbpSPdo\nnjvutkXztJF0XHNlcPUPZfkhKVWI6XEGA5y48jW2uiuCzEk50BzpkAu/6FZn\nhPMI6glRh5MnvXxttHiKoQtiJ+YKqk0UUOEWTG7u2pRt711q4vaJT6NkuvE/\nl/hBvUAJfNkWJpUpg/tAwkm1a7emWKleCqlH5ZtdKA/f3j2WI7qn7GNewCjL\nVSoli82qkQ8oF0Is0qgJ87c4fjsVE1V3TBWgj5WAyOoDbC7DR538K/YUFG17\nRnKqEKPwWGZMbxaM6wRo8TxbS7Li9JcKjrAOJDbKU+dLkn8vEnWPbJjMlybc\nf7B4Hrrdyo+g8sJPiaEFnypsVsITMkOkCiCHVa4tOruXIA+n/ceNc0wpcPGB\n9OCU\r\n=Bn75\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIH6JrwvHkbf0qfsUxW4bALrVa8nQz7WHus9eq391nDsvAiBCfovY6GVKoPY8RV9ZQqw+Z3HxiZbOEExynvZB99i56Q=="}]},"maintainers":[{"name":"benjamin-vanryseghem","email":"benjamin.vanryseghem@gmail.com"}],"_npmUser":{"name":"benjamin-vanryseghem","email":"benjamin.vanryseghem@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-dummy_1.0.8_1570092192065_0.5798584746872839"},"_hasShrinkwrap":false},"1.0.9":{"name":"@benjamin-vanryseghem/mongoose-dummy","version":"1.0.9","description":"Mongoose dummy data generator","main":"index.js","scripts":{"test":"mocha test --timeout 10000"},"dependencies":{"flat":"4.0.0","mongoose":"4.7.7","uuid":"3.1.0","faker":"4.1.0"},"keywords":["dummy","generate","generator","fake","data","faker","mongoose","mongodb","document","model","schema"],"license":"MIT","devDependencies":{"chai":"4.0.2","chai-http":"3.0.0","mocha":"3.4.2"},"bugs":{"url":"https://github.com/thedgmbh/mongoose-dummy/issues/new"},"repository":{"type":"git","url":"git://github.com/thedgmbh/mongoose-dummy.git"},"homepage":"https://thed.io","gitHead":"6c3fa4c83ed506e750d170c495843ec871dad4e8","_id":"@benjamin-vanryseghem/mongoose-dummy@1.0.9","_nodeVersion":"11.11.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-/yMZPLT2N7S/BWg/Lwq/ku8j2kQ3gzf2y2Xo32IxECddV5sREVu/2eH/fQ1Fu2hhdDAP8DZb+cFxhrpMi2b4vQ==","shasum":"7d929eacf8c6a11de765f571b7c7961dae37a31d","tarball":"https://registry.npmjs.org/@benjamin-vanryseghem/mongoose-dummy/-/mongoose-dummy-1.0.9.tgz","fileCount":16,"unpackedSize":41529,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdlbcOCRA9TVsSAnZWagAAxUsP/RmM7BNcrQSmTbjTm5dg\nVhvp855Tpau/SBST1OcjPC8zcRm4c34voMeS2yIv7XgQvq1cZfUeg1xBrsoT\nojCOXZyk5ZWwwN34Cv4vpNWGKWxq9PcFohRgzk38Z4VnebQtLGNIDX5yhYea\n7mXI3Gbz2gWjJCJ35TS4XN8GeLsnZ+v2in6dXQGIQ2Efc4GS4xa6eNAdM6Yg\nUFu37paPqzoiNPDmYUo7DrhixffKH+mfs3IiFlNNQ+6cDJNBZCf9oWQP3uNR\nbC/slcea4J4WY0j3X3ogBaw2zmwdscoCxeor7wseT9mFhLbHX/xZw3Qj7sB9\nDp+f3x8n0DoEWg+PuLz2IFIAIOoaPDyd4Lnpkhqt+PzTp52/vkSY/T150Avq\nDidbGbe0yf6DXP1LMxf4UTLiqFxB/WsSUA7DgyOwnRx8J+HK9Q35at0L4y6P\nqQUIA2PfxhJu0uY0fnRtkB4lWpj6JLshvJBQ1E+5yGRC3I5Te91mLhx9HnW2\nwJWRCzuZMWlmHQhCCtrZSUM+8NubriygK++JOsdC4ossf0Aom+ADFoMdMMg7\nkyb0RxRRt8/A2OI3tAvnWAkwnnGkbctMDrMlac3dZckkjmII4vAkk0S8QCew\nWGMf+Jm3eIN2/uP+KzqNCPHi/nfqyPmDQpByWSOCxZUuMA8wAN0bxCBm9Eej\nLCiW\r\n=kwsw\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF4vHy/6P3F6oFcS6dE4yXLlkeLpL9MoU+CAZzVFX2zkAiBKHiKKofhfkiJOMkbXIjI5hwjWDT8AW9FgA7O+Cljwbg=="}]},"maintainers":[{"name":"benjamin-vanryseghem","email":"benjamin.vanryseghem@gmail.com"}],"_npmUser":{"name":"benjamin-vanryseghem","email":"benjamin.vanryseghem@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mongoose-dummy_1.0.9_1570092813413_0.6890194158182112"},"_hasShrinkwrap":false}},"time":{"created":"2019-10-03T07:06:17.783Z","1.0.7":"2019-10-03T07:06:18.151Z","modified":"2022-04-04T18:22:45.646Z","1.0.8":"2019-10-03T08:43:12.199Z","1.0.9":"2019-10-03T08:53:33.605Z"},"maintainers":[{"name":"benjamin-vanryseghem","email":"benjamin.vanryseghem@gmail.com"}],"description":"Mongoose dummy data generator","homepage":"https://thed.io","keywords":["dummy","generate","generator","fake","data","faker","mongoose","mongodb","document","model","schema"],"repository":{"type":"git","url":"git://github.com/thedgmbh/mongoose-dummy.git"},"bugs":{"url":"https://github.com/thedgmbh/mongoose-dummy/issues/new"},"license":"MIT","readme":"# mongoose-dummy 1.0.4\n\n\nmongoose-dummy is an automatic dummy object generator for mongoose using only the schema definition built for [Node.js](http://nodejs.org).\n\n## Installation\n\n  - Latest release:\n\n        npm install mongoose-dummy\n\n## Usage\n### dummy(model, opts)\nGenerates dummy object from `model`\n- `model`: Mongoose schema object\n- `opts`: Generation options, where the options are in the following format:\n```js\n        {\n          ignore: Array,\n          autoDetect: Boolean,\n          applyFilter: Boolean,\n          returnDate: Boolean,\n          resolveRef: Function,\n          maxDepth: Number,\n          custom: {\n             email: [String, Array, Object],\n             phone: [String, Array, Object],\n             password: [String, Array, Object]\n          }\n        }\n```\n| Option | Type | Usage |\n| :------: | ------ | ------ |\n| ignore | Array | It can contains string paths or RegExp of fields to ignore during generation |\n| autoDetect | Boolean | Attempt to detect e-mail, phone, or password and generate corresponding random data, defaults to true |\n| applyFilter | Boolean | Apply lowercase, uppercase, and trim filters on generated object if defined in the path |\n| returnDate | Boolean | Weather to return dates as Date or String |\n| resolveRef | Function | Function taking a schema ref as arguments, and returning the *absolute* path to its schema file |\n| maxDepth | Number | Maximum depth for recursive ref resolution. Default to `10`. |\n| custom | Object | Special generator for specified fields |\n| custom.email | String, Array, or Object | String (field to generate a random e-mails), Array of Strings (fields to generate a random e-mail), or Object `{field: String or Array of String, value: Function (custom generator function)}`\n| custom.phone | String, Array, or Object | String (field to generate a random phones), Array of Strings (fields to generate a random phone), or Object `{field: String or Array of String, value: Function (custom generator function)}`\n| custom.password | String, Array, or Object | String (field to generate a random passwords), Array of Strings (fields to generate a random password), or Object `{field: String or Array of String, value: Function (custom generator function)}`\n| force | Object | paths to set it to certain values |\n----------\n\n### dummy.getPaths(model)\nHelper function to extract all paths definition from model.\n## Usage Example\n```js\nconst mongoose = require('mongoose');\nconst dummy = require('mongoose-dummy');\nconst ignoredFields = ['_id','created_at', '__v', /detail.*_info/];\nlet genderValues = ['Male', 'Female']\nlet schemaDefinition = new mongoose.Schema({\n    name: {\n        type: String,\n        required: true,\n        lowercase: true,\n        trim: true\n    },\n    email: {\n        type: String,\n    },\n    birth_date: {\n        type: Date\n    },\n    gender: {\n        type: String,\n        enum: genderValues\n    },\n    data: {\n        type: Object,\n        default: null\n    },\n    results: [\n        {\n            score: Number,\n            course: Number\n        }\n    ],\n    is_student: {\n        type: Boolean\n    },\n    parent: {\n        type: mongoose.Schema.Types.ObjectId\n    },\n    detail: {\n        main_info: String,\n        some_info: String,\n        none_match: String\n    },\n    created_at: {\n        type: Date,\n        default: Date.now\n    }\n});\nlet model = mongoose.model('Student', schemaDefinition);\nlet randomObject = dummy(model, {\n    ignore: ignoredFields,\n    returnDate: true\n})\nconsole.log(randomObject);\n\n/* Result:\n{\n    \"name\": \"lyda.renner84\",\n    \"data\": {\n        \"de_AT\": {\n            \"name\": \"Josianne Bins\",\n            \"email\": \"Camden24@yahoo.com\",\n            \"phone\": \"198.514.9229 x60299\",\n            \"posts\": [{\n                \"words\": \"maxime quia sit\",\n                \"sentence\": \"Fuga vel in architecto ut modi sequi aliquam debitis.\",\n                \"sentences\": \"Reprehenderit ratione consequuntu..\"\n            }, {\n                \"words\": \"dignissimos qui qui\",\n                \"sentence\": \"Eveniet est unde quis sit et ab.\",\n                \"sentences\": \"Sit eos quaerat aut quisquam unde..\",\n                \"paragraph\": \"Quasi et numquam cumque neque rerum aliquam ullam..\"\n            }],\n            \"address\": {\n                \"geo\": {\n                    \"lat\": \"25.9144\",\n                    \"lng\": \"6.0991\"\n                },\n                \"city\": \"Amaraville\",\n                \"state\": \"Indiana\",\n                \"streetA\": \"O'Conner Prairie\",\n                \"streetB\": \"5722 Shane Grove\",\n                \"streetC\": \"8040 Hane Roads Suite 402\",\n                \"streetD\": \"Apt. 816\",\n                \"country\": \"Kenya\",\n                \"zipcode\": \"74052\"\n            },\n            \"website\": \"garnett.net\",\n            \"company\": {\n                \"bs\": \"cross-platform facilitate deliverables\",\n                \"name\": \"Morissette LLC\",\n                \"catchPhrase\": \"Self-enabling intangible methodology\"\n            },\n            \"username\": \"Emanuel.Botsford37\",\n            \"accountHistory\": [{\n                \"amount\": \"473.69\",\n                \"date\": \"2012-02-01T22:00:00.000Z\",\n                \"business\": \"Lang, Hudson and Heller\",\n                \"name\": \"Savings Account 3906\",\n                \"type\": \"invoice\",\n                \"account\": \"60253551\"\n            }, {\n                \"amount\": \"824.69\",\n                \"date\": \"2012-02-01T22:00:00.000Z\",\n                \"business\": \"Rice - Price\",\n                \"name\": \"Credit Card Account 8924\",\n                \"type\": \"withdrawal\",\n                \"account\": \"62599733\"\n            }]\n        }\n        }\n    },\n    \"email\": \"Lilian.Quigley@hotmail.com\",\n    \"gender\": \"Male\",\n    \"parent\": \"59d0ff689b95b02fec446c55\",\n    \"results\": [{\n        \"score\": 61,\n        \"course\": 51\n    }, {\n        \"score\": 38,\n        \"course\": 63\n    }],\n    \"birth_date\": \"2017-09-30T14:57:01.279Z\",\n    \"is_student\": true,\n    \"detail\": {\n        \"none_match\": \"Wade_Robel\"\n    }\n}*/\n```\n## Testing\nTo run the test cases use `npm test`\n\n#### License\nLicensed under MIT\n\n#### Author\nFeel free to [Contact us](mailto:info@thed.io) and improve the code.\n","readmeFilename":"README.md"}