{"_id":"@djanta/djantajs-compiler-core","_rev":"2-9c2cd294b0ab9e823b5874c90cb3bf95","name":"@djanta/djantajs-compiler-core","dist-tags":{"latest":"1.0.7"},"versions":{"1.0.6":{"name":"@djanta/djantajs-compiler-core","description":"djanta.io initiative that help developer for auto generate the platform dependent .djanta-rc.json","version":"1.0.6","homepage":"https://github.com/djanta/djantajs-compiler-core","keywords":["djantajs","djanta","annotation","controller","es6","es2015","es7"],"repository":{"type":"git","url":"git@github.com/djanta/djantajs-compiler-core.git"},"bugs":{"url":"https://github.com/djantaio/djantajs-compiler-core/issues"},"author":{"name":"djantajs.team@djantajs.io"},"contributors":[{"name":"Stanislas KOFFI ASSOUTOVI","email":"stanislaska@djantajs.io","url":"https://github.com/stanislaska"}],"licenses":[{"type":"MIT","url":"https://github.com/djanta/djantajs-compiler-core/blob/master/LICENSE"}],"engines":{"node":">=6.0.0"},"publishConfig":{"access":"public"},"main":"./index.js","scripts":{"test":"echo testing not yet implemented!","coverage":"npm run coverage:coveralls && npm run coverage:codeclimate","coverage:codeclimate":"nyc report --reporter=lcov | ./node_modules/.bin/codeclimate-test-reporter < ./coverage/lcov.info","coverage:coveralls":"nyc report --reporter=text-lcov | ./node_modules/coveralls/bin/coveralls.js","snyk":"snyk test --file=./package.json","snyk:publish":"snyk wizard --file=./package.json","snyk:monitor":"snyk monitor --file=./package.json","snyk:login":"snyk auth","bump-dry":"grunt bump --dry-run","bump":"grunt bump","bump-patch":"grunt bump:patch","bump-minor":"grunt bump:minor","bump-major":"grunt bump:major","bump-git":"grunt bump:git","bump-prepatch":"grunt bump:prepatch","bump-prerelease":"grunt bump:prerelease","bump-preminor":"grunt bump:preminor","bump-premajor":"grunt bump:premajor"},"license":"MIT","dependencies":{"bluebird":"^3.5.1","conga-annotations":"^1.0.0","dateformat":"^3.0.3","glob":"^7.1.2","lodash":"^4.17.10","path-to-regexp":"^2.2.1","semver":"^5.5.0","url-pattern":"^1.0.3"},"devDependencies":{"bump":"^0.2.5","grunt-bump":"^0.8.0","grunt":"~1.0.3","grunt-contrib-clean":"^1.1.0","grunt-contrib-jshint":"^1.1.0","grunt-contrib-nodeunit":"^2.0.0","istanbul":"^0.4.5","mocha":"^5.2.0","should":"^13.2.3","snyk":"^1.90.0","coveralls":"^3.0.2","codeclimate-test-reporter":"^0.5.0"},"gitHead":"2d539706c2890e0e71e64a44fd3ec3ad80476ac2","_id":"@djanta/djantajs-compiler-core@1.0.6","_npmVersion":"6.4.1","_nodeVersion":"8.12.0","_npmUser":{"name":"djanta.io","email":"npmjs@djanta.io"},"dist":{"integrity":"sha512-6H/2YTJjYHbToOjpCjITVyBFLic8a66Xpr7W3GHJcHsAi0ypfigLtjuR7zRwPVXaNqXigogZ3nDSQJD151+ZWw==","shasum":"61f1364fe20811ae1003bf02bdcbf0a3f91cf2f9","tarball":"https://registry.npmjs.org/@djanta/djantajs-compiler-core/-/djantajs-compiler-core-1.0.6.tgz","fileCount":16,"unpackedSize":21156,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbm/vQCRA9TVsSAnZWagAARskP/A3IrfAH8QA81LcgD6nI\nsddKX5Ry/gpadef1hyatkLpTyk+tCudIGv5jvYks61O7v0g+Yb3B6YZNU39N\nDxbywdRS4kUAWLsUiB+ttBKE4UpqkD2ogmPDuTqCoqnYV/P7VIFT52sVWaeB\njwk4RNFfdMpK9SqFrnxE/RpdhQOuj5MqOC086SAIjpjI/DMjMBIgyirzjOxR\n/g86e2bRSQFlPg8VDXIu6Xo3hGWB8YeMX/GGhcdDiCF8+Edixd+Av2X1oNSn\nCRfclb2ex49MmGic/s6LtsOdys4H/vNFGSp9R/NwzyBuHWzb7lSjEWeNA5lS\nKLzsTyKlVQ08XcD6RV1l9Sy9j3tQAZ3hHlWMvCKWXVly1Ow2vqN8iWx6Sb/U\nvLQsJnPgNjwG29FCMfmv+xun1T0ueQVAn7HPs7doYOeAdiEmpdqbSfZ4W6Re\nzGf3wBLeY/pgIErGRhwAdHtyXWxbHmgeYlWLCkaV83cFNAYtLmHA9Ts8bMtq\nz027iKtA7yUfv71miVv1gWCQENvopMg/fQZoP6z60EmJHVsXw1OKWvkoydNi\noslurg+PTCs8Jfj9DvMx7bAvmGnXhFPjzPrE5L52E151MbpT0sSLHo4qMQ4E\n0lZBPNb2eTFTr3GCkA3sqlcTIc7NW4iPHcoHeaxCfqotvo5PNNOP4P/JK3ck\n1Pxi\r\n=69LP\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEQL7yioA5tjKyBRnZ9ihmBdmI9U5n6nky241J6AXGiZAiAkY+/U3QwQ3jY3umom0z6iBRvtMQw2c8vhjwj9tkbzNA=="}]},"maintainers":[{"name":"djanta.io","email":"npmjs@djanta.io"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/djantajs-compiler-core_1.0.6_1536949200180_0.045829260543570394"},"_hasShrinkwrap":false},"1.0.7":{"name":"@djanta/djantajs-compiler-core","description":"djanta.io initiative that help developer for auto generate the platform dependent .djanta-rc.json","version":"1.0.7","homepage":"https://github.com/djanta/djantajs-compiler-core","keywords":["djantajs","djanta","annotation","djantaio","compiler"],"repository":{"type":"git","url":"git@github.com/djanta/djantajs-compiler-core.git"},"bugs":{"url":"https://github.com/djantaio/djantajs-compiler-core/issues"},"author":{"name":"djantajs.team@djantajs.io"},"contributors":[{"name":"Stanislas KOFFI ASSOUTOVI","email":"stanislaska@djantajs.io","url":"https://github.com/stanislaska"}],"licenses":[{"type":"MIT","url":"https://github.com/djanta/djantajs-compiler-core/blob/master/LICENSE"}],"engines":{"node":">=6.0.0"},"publishConfig":{"access":"public"},"main":"./index.js","scripts":{"test":"echo NYI!","coverage":"npm run coverage:coveralls && npm run coverage:codeclimate","coverage:codeclimate":"nyc report --reporter=lcov | ./node_modules/.bin/codeclimate-test-reporter < ./coverage/lcov.info","coverage:coveralls":"nyc report --reporter=text-lcov | ./node_modules/coveralls/bin/coveralls.js","snyk":"snyk test --file=./package.json","snyk:publish":"snyk wizard --file=./package.json","snyk:monitor":"snyk monitor --file=./package.json","snyk:login":"snyk auth","snyk-protect":"snyk protect","prepare":"npm run snyk-protect"},"license":"MIT","dependencies":{"bluebird":"^3.5.1","conga-annotations":"^1.0.0","dateformat":"^3.0.3","glob":"^7.1.2","lodash":"^4.17.10","path-to-regexp":"^2.2.1","semver":"^5.5.0","url-pattern":"^1.0.3","snyk":"^1.95.3"},"devDependencies":{"bump":"^0.2.5","grunt-bump":"^0.8.0","grunt":"~1.0.3","grunt-contrib-clean":"^1.1.0","grunt-contrib-jshint":"^1.1.0","grunt-contrib-nodeunit":"^2.0.0","istanbul":"^0.4.5","mocha":"^5.2.0","should":"^13.2.3","coveralls":"^3.0.2","codeclimate-test-reporter":"^0.5.0"},"snyk":true,"gitHead":"f1b28960390c1fc4f7debfcc414fb8c0e32e879c","_id":"@djanta/djantajs-compiler-core@1.0.7","_npmVersion":"6.4.1","_nodeVersion":"8.12.0","_npmUser":{"name":"djanta.io","email":"npmjs@djanta.io"},"dist":{"integrity":"sha512-56NlZn1OT399lD8vPSqXHiFLjW2uMkraOMcGebkMThIb1pJ7YfOXY4WHsRhDJAnMiUOvB/qgjrIx6kvU7y1jVw==","shasum":"b2bde35f3f7a110cd3adf95c146ac0937d86f72c","tarball":"https://registry.npmjs.org/@djanta/djantajs-compiler-core/-/djantajs-compiler-core-1.0.7.tgz","fileCount":17,"unpackedSize":21415,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbnATNCRA9TVsSAnZWagAAMDUP/iWlOPiJP7WpO92TvvAT\nuFOniPvEmFPOu26nChxEh5k5i5gekboiZW9Iix9Cp+gCo7XL6Gu3MoKKsFNb\nMUMlB66kMXa5vr4JTh1sz5dtuNGa5gzGpjSrAK25BO2FtwkPxzXUsyrMx2DA\n4x5huYH8gVVmdhY7+KtHt7kVoFRGcRkByFfcK8385avlMVDW4oCA8IyuksYH\nk/Ds9HJCjDQLOxkfCGDqdpNnptmY9gknpkM9C/+0XPUc4jRHSTRj1u15G3a7\nUUgclUpK6rwO0WjUFJ316kUOdZIxSk7GpUdANpff+h5VJDOGzsleiH1dv6tn\nCrHNHkmJrqDcUZ/ZzHYiztsYdPlrqqPxtb7eSLNMILWYXtcyy++1u/x+jAxf\nRnYAn2HdhGSMk9lv7oWpk+plSjPFYEkgVbdiIWKFm7y6JJnIcRiCoQ37OnoD\nWrcy2YlHN3DrZwjTn7KPPWLmrlLja1RUQI5pMOSD+xE3zTYPCEbgjsGQKNnx\npcrBYgPY/OQgynF+8YmyJVOOAWy2zR5npur1m/vfmYKZUQuX3TqyEdvtSY32\nrqWwoi6bSPHxlYh0QWM1dqQrB6E5ZCJ2hwtQZmldzi7SMOkEjcx6Tw7gKseM\nRHmzJRdouH5HdQnlvmlm08eMcE0vuPOgBCqsJpIQ/fz6ixcNhw/zgMTr24vz\nq2+j\r\n=bSmJ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCiX82uYtBksjyWvUSuLElA94Zn/MGjLW7UEQt1YM2alQIgZrTHxmZyNYUmUKP4gOMl4K6E727RWmTcv5Rb4VuyOBI="}]},"maintainers":[{"name":"djanta.io","email":"npmjs@djanta.io"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/djantajs-compiler-core_1.0.7_1536951501122_0.03950571060593733"},"_hasShrinkwrap":false}},"time":{"created":"2018-09-14T18:20:00.049Z","1.0.6":"2018-09-14T18:20:00.383Z","modified":"2022-04-05T04:50:02.483Z","1.0.7":"2018-09-14T18:58:21.254Z"},"maintainers":[{"name":"djanta.io","email":"npmjs@djanta.io"}],"description":"djanta.io initiative that help developer for auto generate the platform dependent .djanta-rc.json","homepage":"https://github.com/djanta/djantajs-compiler-core","keywords":["djantajs","djanta","annotation","djantaio","compiler"],"repository":{"type":"git","url":"git@github.com/djanta/djantajs-compiler-core.git"},"contributors":[{"name":"Stanislas KOFFI ASSOUTOVI","email":"stanislaska@djantajs.io","url":"https://github.com/stanislaska"}],"author":{"name":"djantajs.team@djantajs.io"},"bugs":{"url":"https://github.com/djantaio/djantajs-compiler-core/issues"},"license":"MIT","readme":"# djantajs-compiler-core\n\n[![npm](https://img.shields.io/npm/v/djantajs-compiler-core.svg?style=flat)](https://github.com/djanta/djantajs-compiler-core)\n[![npm downloads](https://img.shields.io/npm/dw/djantajs-compiler-core.svg?style=flat)](https://www.npmjs.com/package/djantajs-compiler-core)\n[![Build Status](https://travis-ci.org/djanta/djantajs-compiler-core.svg?branch=master)](https://travis-ci.org/djanta/djantajs-compiler-core)\n[![Coverage Status](https://coveralls.io/repos/github/djanta/djantajs-compiler-core/badge.svg?branch=master)](https://coveralls.io/github/djanta/djantajs-compiler-core?branch=master)\n[![Maintainability](https://api.codeclimate.com/v1/badges/312ea725f33a184b0464/maintainability)](https://codeclimate.com/github/djanta/djantajs-compiler-core/maintainability)\n[![Test Coverage](https://api.codeclimate.com/v1/badges/312ea725f33a184b0464/test_coverage)](https://codeclimate.com/github/djanta/djantajs-compiler-core/test_coverage)\n[![Known Vulnerabilities](https://snyk.io/test/github/djanta/djantajs-compiler-core/badge.svg)](https://snyk.io/test/github/djanta/djantajs-compiler-core)\n\n> djantaJS initiative that help developer for auto generate the platform dependent .djanta-rc.json.\n\n## Getting Started\n\nThe djantajs core annotation compile provide the main entry point which'll be use all across you contribution to extract and compilet your bundle annotation\n\n### Install\n\n```shell\nnpm i @djanta/djantajs-compiler-core --save[-S]\n```\n\nOnce the plugin has been installed, it may be able to require any of provided tools as follow:\n\n```js\nlet { Compiler, Handler, Serializable, Annotation } = require('@djanta/djantajs-compiler-core')\n```\n\nor as follow to import the module context: \n\n```js\nlet compiler = require('@djanta/djantajs-compiler-core')\n```\n\n## Usage\n\n### How to implement a specific annotation\nThis component has provided the easiest way to implement your own annotation component. Therefore, you'll simply need to implelent the given interface \n\n```js\nlet { Annotation, Serializable } = require('@djanta/djantajs-compiler-core');\n/**\n * Default class level documentation\n * @type MySerializableAnnotation\n */\nmodule.exports = class MySerializableAnnotation extends Serializable {\n  /**\n   * The possible target retention\n   *\n   * (Annotation.DEFINITION, Annotation.CONSTRUCTOR, Annotation.PROPERTY, Annotation.METHOD)\n   *\n   * @type {Array}\n   */\n  static get targets () {\n    return [Annotation.DEFINITION];\n  }\n    \n  /**\n   * The class default qualified contrustor.\n   * @param {{}} data the annotation input data extracted from the target source\n   * @param {string} filePath the source file where the annotation data has been extracted from\n   */\n  constructor (data, filePath) {\n    super(data, filePath)\n  }\n  \n  /**\n   * This method is mandatory and must return the given annotation litteral name\n   * @return {string} Returns the annotation name.\n   */\n  get annotationName () {\n    return 'MySerializableAnnotation';\n  }\n  \n  /**\n   * User provided property with aim to set the <code>name</code> property throught the annotation\n   * @param {string} name the given annotation name.\n   */\n  set name (name) {\n    this._name = name;\n  }\n  \n  /**\n   * Returns the annotation <code>name</code> property set throught the annotation\n   * @return {string} Returns the <code>name</code> property set via the annotation\n   */\n  get name () {\n    return this._name;\n  }\n  \n  /**\n   * Mandatory rendered method which must return the annottion serialized context\n   * @return {*} Returns the annotation serialized context.\n   */\n  get serialize () {\n    let self = this;\n    return {\n      name: self.name,\n      comment: 'Anything i want here or read from class property'\n    };\n  }\n};\n```\n\n### Expected instance properties (Options)\n\n#### options.annotationName\n**Type:** `Property` <br/>\n**Default value:** `` <br/>\n**Required:** `true` <br/>\n\nA string value that will difine the logical annotation name.\n\n#### options.serialize\n**Type:** `Property` <br/>\n**Default value:** `` <br/>\n**Required:** `true` <br/>\n\nThe serialize property not an instance **method** will be called at the rendering.\n\n\n### Expected class static properties (Options)\n\n#### targets\nType: `Array`<br/>\nDefault value: `[Annotation.DEFINITION, Annotation.CONSTRUCTOR, Annotation.PROPERTY, Annotation.METHOD]`<br/>\nrequired: `true`<br/>\n\nAn array string value which'll be used to locate your annotation retention.\n\n### Usage Examples\n\n#### Implementation\n\nHere's the usage of the _**MySerializableAnnotation**_\n\n```js\n/**\n * @MySerializableAnnotation(name='MyFirstAnnotation')\n */\nmodule.exports = class ImDeveloper {\n  /**\n   * Qualified default class constructor\n   * @Constructor\n   */\n   constructor () {}\n}\n```\n\n#### Rendering result\n```json\n{\n  \"name\": \"MyFirstAnnotation\",\n  \"comment\": \"Anything i want here or read from class property\"\n}\n```\n\n## Contributing\n\nIn lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Therefore, please follow the nested instructions\n\n* Fork repository\n* Update source code\n* Update README.md and the changelog.md\n\n## Versioning\nThis package will be maintained under the Semantic Versioning guidelines as much as possible. Releases will be numbered with the following format:\n\n_`<major>.<minor>.<patch>`_\n\n## License\n\n[MIT](https://github.com/djanta/djantajs-compiler-core/blob/master/LICENSE)\n","readmeFilename":"README.md"}