{"_id":"@bochen/vue-prop-doc","_rev":"2-5b06bbb57bedb7d7893a4660242f81f1","name":"@bochen/vue-prop-doc","dist-tags":{"latest":"0.0.2"},"versions":{"0.0.1":{"name":"@bochen/vue-prop-doc","description":"quick and easy documentation of Vue.js components","version":"0.0.1","author":{"name":"Chen, BoChen","email":"code.bochen@gmail.com"},"private":false,"main":"lib/index.js","license":"MIT","repository":{"type":"git","url":"git+https://github.com/chenpion/vue-prop-docs.git"},"keywords":["vue","vuejs","propellant","vue-prop-doc","documentation","component"],"scripts":{"release":"npx poi build ./propDoc.vue --library 'propDoc'","mocha":"mocha-webpack --opts .mocha-webpack.opts","test":"npm run mocha --silent || true","test:watch":"mocha-webpack --watch --opts .mocha-webpack.opts","lint":"standard","lint:fix":"standard --fix"},"peerDependencies":{"vue":"^2.2.1"},"devDependencies":{"avoriaz":"^6.3.0","babel-core":"^6.26.0","babel-loader":"^7.1.2","babel-preset-env":"^1.5.1","jsdom":"^11.6.1","jsdom-global":"^3.0.2","marked":"^0.3.12","mocha":"^5.0.0","mocha-webpack":"^1.0.1","poi":"^9.6.13","should":"^13.2.1","standard":"^10.0.3","vue-cli":"^2.9.2","vue-loader":"^13.7.0","vue-template-compiler":"^2.5.13","webpack":"^3.10.0","webpack-node-externals":"^1.6.0"},"babel":{"presets":[["env",{"modules":false}]]},"standard":{"ignore":["/lib/*","/examples/*"],"env":{"mocha":true}},"gitHead":"88d521c3d3993a9764e63fbdc387dd81f79de330","bugs":{"url":"https://github.com/chenpion/vue-prop-docs/issues"},"homepage":"https://github.com/chenpion/vue-prop-docs#readme","_id":"@bochen/vue-prop-doc@0.0.1","_npmVersion":"6.4.1","_nodeVersion":"8.15.1","_npmUser":{"name":"code.bochen","email":"code.bochen@gmail.com"},"dist":{"integrity":"sha512-FvoqvhDjZUGv6/Y0FezvXc68hCQrJpg0mjzrM3cJ+P1zyOTz0vgTT7XI0sgLhAjnhOn6HbkvnypP49RTEkGLPg==","shasum":"6a873096253cfcd9365218e59bb1e1339fbbeb41","tarball":"https://registry.npmjs.org/@bochen/vue-prop-doc/-/vue-prop-doc-0.0.1.tgz","fileCount":30,"unpackedSize":84671,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcwBvGCRA9TVsSAnZWagAA9ScQAIyBO9EH5QgGG7Jplsh8\n8+k/JZxdtkZUsuWVUpQbUTbmSgZkivHO1KbfvKykxNqQrW1cVD2fTRG3q54g\nmLzordPwt0d6vIC3UiWmrpU7kPyF2WJGwA6xXUwev84i3fi6LOAaThnuRUgL\nYqLVVJT1995vEArz95ra/Zc2+ofXFXavkz1XFzpxOG2UgMljQx/91K1sqt9O\ndKBpkxrqZtgHarFJW9GfyDMF229HgL7Y/CrFw599hM2g52KqVUmTgdUiCYLj\nKn1W7q36FiqJoFUU0IxWpScHKgteWMdTOW8naiOWDABnE3Kt5o2MLyCYjzNF\nI95j/865AJAjl18pPUxSjRNd7OANEMKBTXl3RPt5GZ+eIz2Q8yq5sgkVINio\n3a0J6e56Ym7c6g7GFK+zKghPkG+IS/BWgCpTVVbBbLRChREYD4MBvV31nPau\nvODGZUKxS96ZLYk5rVSIY9jMQ3az90hjWCaLYLHw47PA39m69wtldM5wKHOX\n5Df9s6cdi//jEIXYjmC4X1dDPiPK9X2HJlm07WzVUjx1ZgbyGprAskRNiJVl\nUOWwtb8RtzkhAg3yd2yyrbndUgfRc7cz8qTcSaiSWMjKGDcyN1vyh2//LkWo\nQlojqv1ISRdHCBzTEyy2G+G6NMOAidAnmbH35tPExeUnr315cQX1aE1aPCVe\nlnLl\r\n=YPX1\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEJaQknvQBdgHoTDGVsHolZBDRkfHj3ZRZHqKQCF7tK1AiEAkC5MnocTJu7EkxqkkfqwPXPPJ51QuCAIXBmshLYcumE="}]},"maintainers":[{"name":"code.bochen","email":"code.bochen@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vue-prop-doc_0.0.1_1556093893472_0.5342698374158155"},"_hasShrinkwrap":false},"0.0.2":{"name":"@bochen/vue-prop-doc","description":"quick and easy documentation of Vue.js components","version":"0.0.2","author":{"name":"Chen, BoChen","email":"code.bochen@gmail.com"},"private":false,"main":"lib/index.js","license":"MIT","repository":{"type":"git","url":"git+https://github.com/chenpion/vue-prop-docs.git"},"keywords":["vue","vuejs","propellant","vue-prop-doc","documentation","component"],"scripts":{"release":"npx poi build ./propDoc.vue --library 'propDoc'","mocha":"mocha-webpack --opts .mocha-webpack.opts","test":"npm run mocha --silent || true","test:watch":"mocha-webpack --watch --opts .mocha-webpack.opts","lint":"standard","lint:fix":"standard --fix"},"peerDependencies":{"vue":"^2.2.1"},"devDependencies":{"avoriaz":"^6.3.0","babel-core":"^6.26.0","babel-loader":"^7.1.2","babel-preset-env":"^1.5.1","jsdom":"^11.6.1","jsdom-global":"^3.0.2","marked":"^0.3.12","mocha":"^5.0.0","mocha-webpack":"^1.0.1","poi":"^9.6.13","should":"^13.2.1","standard":"^10.0.3","vue-cli":"^2.9.2","vue-loader":"^13.7.0","vue-template-compiler":"^2.5.13","webpack":"^3.10.0","webpack-node-externals":"^1.6.0"},"babel":{"presets":[["env",{"modules":false}]]},"standard":{"ignore":["/lib/*","/examples/*"],"env":{"mocha":true}},"gitHead":"2c6f1f81f127d6b55e4f7d29756c2c28ed56d911","bugs":{"url":"https://github.com/chenpion/vue-prop-docs/issues"},"homepage":"https://github.com/chenpion/vue-prop-docs#readme","_id":"@bochen/vue-prop-doc@0.0.2","_npmVersion":"6.4.1","_nodeVersion":"8.15.1","_npmUser":{"name":"code.bochen","email":"code.bochen@gmail.com"},"dist":{"integrity":"sha512-WVnKlkt9MJqH50rUkpD0cA/J0mQergHZi8yaLDyCBvgIKn8bJm82ySKBGNC9uV4vjzw7DP+yeWtShnGAzk3hog==","shasum":"12463c32bbdcd6407a121783ac5c147f3c447221","tarball":"https://registry.npmjs.org/@bochen/vue-prop-doc/-/vue-prop-doc-0.0.2.tgz","fileCount":31,"unpackedSize":106452,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcwB3zCRA9TVsSAnZWagAAg6wP/iKbmgDJq01/hTa+giRP\nelun6IruiPflNXAqS7fFkl9ap6xnuQr1Pq6Pr75FtJ/+hsvuFZt4Y7DwgA6A\n6bu3PsEePmWaRoYQeCkOxoJ8ni//oTZMNt2qa3ZdtwhHP6lPakqTgFJwgwUq\nbISjZkPBN3SMH+SArUOJKU18yqqm1hC9GMttvr64D6Aeb+WreEyiTeBaM7Y2\nISU9ARWb5Lc5PnihXt5hxaQYmeqf7I3X3sOIfEgK6pnkTEdEnOKHS9DtW1fq\nrzBoy/Z5gdqciAvO6Ig8QNIl98rrwoeCMWzvqe0WWWWFI0LMLDqzBl2Ax4O8\nDcV1mHvwaZs6g/tBa1rJ/Y3XKhPmXhmWfnowYOlM8C1q1WLBBXgPUp1HhV/S\nIu1XdvGF6a7JNK1JZgRMhM7PJ7C6Wu0RQByw31ouu63JYeVRcGU56vj6mFVs\nDrynK9iik9bDDHV8uyVfRD1cNS2QEFHd4qOQFmAB4PVGCc8Yxy3FshpgBEWy\nDbBefVWyXOWxcKQDWNoyo2qPWYgLzxayn3C/fV+iw7kUEf0b6hYuktoVthfG\nODlts34deW9b3cijkJ0CcxaP5DjQci8/YMjLkQwDa4biU8V6v7WiLQZIB7wW\nw4gMKKPnLrwk7z8qY3KFBkiBdc/ykdNy50Jp6PSuWyvKSLClYo7RMAsosGtO\nBGz9\r\n=05dx\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDBX992E0qSVjWvlTCjlr4dwnXNQuGyPUf7L88nHzhUhwIgUZZ2A2ERwVuONqQGH1g8iwaoiPZ/HFwoQ4dgSOebs3I="}]},"maintainers":[{"name":"code.bochen","email":"code.bochen@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vue-prop-doc_0.0.2_1556094450323_0.1595487971833509"},"_hasShrinkwrap":false}},"time":{"created":"2019-04-24T08:18:13.273Z","0.0.1":"2019-04-24T08:18:13.638Z","modified":"2022-04-04T19:55:35.890Z","0.0.2":"2019-04-24T08:27:30.506Z"},"maintainers":[{"name":"code.bochen","email":"code.bochen@gmail.com"}],"description":"quick and easy documentation of Vue.js components","homepage":"https://github.com/chenpion/vue-prop-docs#readme","keywords":["vue","vuejs","propellant","vue-prop-doc","documentation","component"],"repository":{"type":"git","url":"git+https://github.com/chenpion/vue-prop-docs.git"},"author":{"name":"Chen, BoChen","email":"code.bochen@gmail.com"},"bugs":{"url":"https://github.com/chenpion/vue-prop-docs/issues"},"license":"MIT","readme":"# vue-prop-doc [![Build Status](https://travis-ci.org/propellant/doctor.svg?branch=master)](https://travis-ci.org/propellant/doctor)\n\n> quick and easy documentation of Vue.js components\n\n#### installation\n\n`npm install --save propdoc`\n\n#### example output\n\nThis example was solely generated based on the extra fields described below.\n\n![screenshot](https://github.com/propellant/doctor/blob/master/exampleOutput.png)\n\n#### features\n\n_propdoc_ proposes a new way of documenting Vue components, by including some (or all) of the documentation in the component itself.\n\nBenefits:\n- _props_ can be directly annotated, making documentation essentially the same as commenting a prop\n- Documentation can live directly in the component - thus centralizing the documentation and hopefully helping the development/documentation cycle\n\nDownsides:\n- If all documentation is built into the options object, the component will use additional space\n  - This can be mitigated by externalizing the larger proposed keys such as `description` and `token`\n\n## new keys for your components\n\nThis example showcases all of what _propdoc_ would parse, however, none are required to be used and will not be output if absent.\n\n```javascript\nexport default {\n  name: 'checkbox',\n  introduction: 'an amazing checkbox',\n  description: `\n  This \\`checkbox\\` is amazing, you should _check_ it out.\n  `,\n  token: \"<checkbox label='foo'></checkbox>\",\n  props: {\n    label: {\n      type: String,\n      default: '',\n      note: \"a label to be appended after the checkbox\"\n    }\n  }\n}\n```\n\n#### note\n\n_note_ is used alongside expanded (object-style) props to describe that prop in more detail\n\n#### introduction\n\na brief summary of what the component is or does\n\n#### description\n\na more in-depth documentation of the component, will be parsed using Markdown. Note that code will need to be escaped if it's inside of a Javascript string literal.\n\n#### token\n\na quick example of the component's actual use, great for providing a way to quickly copy/paste in the future\n\n\n## use in your documentation\n\n```Vue\n<script>\nimport propDoc from 'propdoc'\nimport myComponent from './myComponent.vue'\n\nexport default {\n  components: { propDoc },\n  // bind your component to use propdoc's native template output\n  data() {\n    return { documentMe: myComponent }\n  },\n  // or call getDoc() and use the same data in your own template\n  computed: {\n    myComponentDoc() { return propDoc.getDoc(myComponent) }\n  }\n}\n</script>\n\n<template>\n  <section>\n    <prop-doc :component=\"documentMe\"></prop-doc>\n    <div>\n      <h1>{{ myComponentDoc.name }}</h1>\n      <p>{{ myComponentDoc.introduction }}</p>\n    </div>\n  </section>\n</template>\n```\n\n#### props\n\n- `component`: **required** and should be the component object itself\n- `documentation`: optional, can be any subset of `component`, and will take precedence; useful for two functions\n  - if the component's name or other fields should be output differently for documentation\n  - for the optional documentation fields, as these will cause some additional space to be used by your components if not separated\n\n#### slots\n\nTwo named slots are available for adding content to what _propdoc_ emits\n- `pre-use` will add content before the _description_ and _token_ fields\n- `pre-props` will add content before the prop tables are emitted\n\n#### propDoc.getDoc\n\n> available in v0.8 onward\n\n`propDoc.getDoc(component, documentation)`\n\n- merges the arguments passed to it, then processes them as described above in _keys_\n- the `props` object will be converted into an array instead of an object to simplify parsing in your template\n  - essentially this means you can do `v-for=\"prop in myDocumentedComponent.props\"` and then `prop.name` instead of having to separate out the key/value\n","readmeFilename":"README.md"}