{"_id":"grunt-banner","_rev":"59-4e0f87fc26e40cd5a17f6b2051dfa719","name":"grunt-banner","description":"Adds a simple banner to files","dist-tags":{"latest":"0.6.0"},"versions":{"0.1.0":{"name":"grunt-banner","description":"Adds a simple to banner to files","version":"0.1.0","homepage":"https://github.com/mattstyles/grunt-banner","author":{"name":"Matt Styles","email":"matt@veryfizzyjelly.com","url":"veryfizzyjelly.com"},"repository":{"type":"git","url":"git://github.com/mattstyles/grunt-banner.git"},"bugs":{"url":"https://github.com/mattstyles/grunt-banner/issues"},"licenses":[{"type":"MIT","url":"https://github.com/mattstyles/grunt-banner/blob/master/LICENSE-MIT"}],"main":"Gruntfile.js","engines":{"node":">= 0.8.0"},"scripts":{"test":"grunt test"},"devDependencies":{"grunt-contrib-jshint":"~0.1.1","grunt-contrib-clean":"~0.4.0","grunt-contrib-nodeunit":"~0.1.2","grunt":"~0.4.1"},"peerDependencies":{"grunt":"~0.4.1"},"keywords":["gruntplugin"],"_id":"grunt-banner@0.1.0","dist":{"shasum":"08fcf03e2daa3f602b9283f4d9879b7e32354499","tarball":"https://registry.npmjs.org/grunt-banner/-/grunt-banner-0.1.0.tgz","integrity":"sha512-+paWU3zSxa3PgAu13r8yLSVClw2ivzhWrFWe1Ksj3XAPJ8RAcY/aNmippiLxuHs7oZEIRoCzpTXzQvVig8+ThQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD7BwgVafLThTr/81soBw2cj6vKPNWI5U8DGUEvfgmCQwIgPMxlIZJvE7G2LBdYITFmKZMz9Yzdm9ZF8pFT5VWUplc="}]},"_from":".","_npmVersion":"1.2.14","_npmUser":{"name":"mattstyles","email":"matt@veryfizzyjelly.com"},"maintainers":[{"name":"mattstyles","email":"matt@veryfizzyjelly.com"}],"directories":{}},"0.1.1":{"name":"grunt-banner","description":"Adds a simple banner to files","version":"0.1.1","homepage":"https://github.com/mattstyles/grunt-banner","author":{"name":"Matt Styles","email":"matt@veryfizzyjelly.com","url":"veryfizzyjelly.com"},"repository":{"type":"git","url":"git://github.com/mattstyles/grunt-banner.git"},"bugs":{"url":"https://github.com/mattstyles/grunt-banner/issues"},"licenses":[{"type":"MIT","url":"https://github.com/mattstyles/grunt-banner/blob/master/LICENSE-MIT"}],"main":"Gruntfile.js","engines":{"node":">= 0.8.0"},"scripts":{"test":"grunt test"},"devDependencies":{"grunt-contrib-jshint":"~0.1.1","grunt-contrib-clean":"~0.4.0","grunt-contrib-nodeunit":"~0.1.2","grunt":"~0.4.1"},"peerDependencies":{"grunt":"~0.4.1"},"keywords":["gruntplugin"],"_id":"grunt-banner@0.1.1","dist":{"shasum":"1f1508e6aebea0e5a3e94ecde04cb5de192e55d6","tarball":"https://registry.npmjs.org/grunt-banner/-/grunt-banner-0.1.1.tgz","integrity":"sha512-2pXO3QBZFX73bMMzDwAbKWnW2dgUexj8e1cDyPHnsiaWvrxnZtTZJQVAkEjBSoyEVGcsJaVhRPWqJsgEqSrs3w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCDyb8mdH5bfutXjkPGwrgV7tKQCSy3v4mCp9ygPPXnDwIgaxXtvWDCIb7+uNZYCClGmRBHDcyeY8EBx57xtX3vJHo="}]},"_from":".","_npmVersion":"1.2.14","_npmUser":{"name":"mattstyles","email":"matt@veryfizzyjelly.com"},"maintainers":[{"name":"mattstyles","email":"matt@veryfizzyjelly.com"}],"directories":{}},"0.1.2":{"name":"grunt-banner","description":"Adds a simple banner to files","version":"0.1.2","homepage":"https://github.com/mattstyles/grunt-banner","author":{"name":"Matt Styles","email":"matt@veryfizzyjelly.com","url":"veryfizzyjelly.com"},"repository":{"type":"git","url":"git://github.com/mattstyles/grunt-banner.git"},"bugs":{"url":"https://github.com/mattstyles/grunt-banner/issues"},"licenses":[{"type":"MIT","url":"https://github.com/mattstyles/grunt-banner/blob/master/LICENSE-MIT"}],"main":"Gruntfile.js","engines":{"node":">= 0.8.0"},"scripts":{"test":"grunt test"},"devDependencies":{"grunt-contrib-jshint":"~0.1.1","grunt-contrib-clean":"~0.4.0","grunt-contrib-nodeunit":"~0.1.2","grunt":"~0.4.1"},"peerDependencies":{"grunt":"~0.4.1"},"keywords":["gruntplugin"],"_id":"grunt-banner@0.1.2","dist":{"shasum":"8cf8f4e4d67ba02f277a4df6ba389ac85ad36732","tarball":"https://registry.npmjs.org/grunt-banner/-/grunt-banner-0.1.2.tgz","integrity":"sha512-ZwJ+9kaVGm7ll31JUxVsj0xuSCM4Kp9XQQLDp5tUk7k5h3DE2AB5lWpXfmJfRYEqyVa6KB1L9DGdOn1iEuc15g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDmYd6SvOBrSgp+S03//fN9q9N9PhPTHSmlxXbzW50pHAIgSBi97K5uHVtYp7m7+6A+HdYBP/C+KXGeb7B60b6jwsI="}]},"_from":".","_npmVersion":"1.2.14","_npmUser":{"name":"mattstyles","email":"matt@veryfizzyjelly.com"},"maintainers":[{"name":"mattstyles","email":"matt@veryfizzyjelly.com"}],"directories":{}},"0.1.3":{"name":"grunt-banner","description":"Adds a simple banner to files","version":"0.1.3","homepage":"https://github.com/mattstyles/grunt-banner","author":{"name":"Matt Styles","email":"matt@veryfizzyjelly.com","url":"veryfizzyjelly.com"},"repository":{"type":"git","url":"git://github.com/mattstyles/grunt-banner.git"},"bugs":{"url":"https://github.com/mattstyles/grunt-banner/issues"},"licenses":[{"type":"MIT","url":"https://github.com/mattstyles/grunt-banner/blob/master/LICENSE-MIT"}],"main":"Gruntfile.js","engines":{"node":">= 0.8.0"},"scripts":{"test":"grunt test"},"devDependencies":{"grunt-contrib-jshint":"~0.1.1","grunt-contrib-clean":"~0.4.0","grunt-contrib-nodeunit":"~0.1.2","grunt":"~0.4.1","grunt-cli":"~0.1.7"},"peerDependencies":{"grunt":"~0.4.1"},"keywords":["gruntplugin"],"_id":"grunt-banner@0.1.3","dist":{"shasum":"1b9700878c14094787ac64e0df96779c00a897b2","tarball":"https://registry.npmjs.org/grunt-banner/-/grunt-banner-0.1.3.tgz","integrity":"sha512-GyP4p6xjVsZ4J21PqZJYvsrz5hvi+XMfz70FL2K99PNDWHfwdtL3aRXDBIvvfcJX71d2Ev0O8swSs7SeWkL3Fg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBQ7PzRXeGrojfD72zG7LXOkLHla3/PUA61Rp1N0oH/mAiBkwk0aKP+7p117dunG0hBYzOx3R1yPhI5wTYTZW0D1TQ=="}]},"_from":".","_npmVersion":"1.2.14","_npmUser":{"name":"mattstyles","email":"matt@veryfizzyjelly.com"},"maintainers":[{"name":"mattstyles","email":"matt@veryfizzyjelly.com"}],"directories":{}},"0.1.4":{"name":"grunt-banner","description":"Adds a simple banner to files","version":"0.1.4","homepage":"https://github.com/mattstyles/grunt-banner","author":{"name":"Matt Styles","email":"matt@veryfizzyjelly.com","url":"veryfizzyjelly.com"},"repository":{"type":"git","url":"git://github.com/mattstyles/grunt-banner.git"},"bugs":{"url":"https://github.com/mattstyles/grunt-banner/issues"},"licenses":[{"type":"MIT","url":"https://github.com/mattstyles/grunt-banner/blob/master/LICENSE-MIT"}],"main":"Gruntfile.js","engines":{"node":">= 0.8.0"},"scripts":{"test":"grunt test"},"devDependencies":{"grunt-contrib-jshint":"~0.1.1","grunt-contrib-clean":"~0.4.0","grunt-contrib-nodeunit":"~0.1.2","grunt":"~0.4.1","grunt-cli":"~0.1.7"},"peerDependencies":{"grunt":"~0.4.1"},"keywords":["gruntplugin"],"_id":"grunt-banner@0.1.4","dist":{"shasum":"fc666208dcbcf11bc9728e4c5b635441b5c5cd9c","tarball":"https://registry.npmjs.org/grunt-banner/-/grunt-banner-0.1.4.tgz","integrity":"sha512-UBe6ZNJIAoqoxxVVZpLac9kMUyrjmKhIrrki53Hx8ywn/CLWQc9Q7jzeuTewS3v9jm4279hf61CWK3pZLwowoQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDsYEiJ0lRA+mnFiGTEzFrtriRyldRfFXZEeBSAO1B/eAIhAIjOugd8NphYfLMPXS13emXozP8zpkYoLdUDi2E3XIA9"}]},"_from":".","_npmVersion":"1.2.14","_npmUser":{"name":"mattstyles","email":"matt@veryfizzyjelly.com"},"maintainers":[{"name":"mattstyles","email":"matt@veryfizzyjelly.com"}]},"0.2.0":{"name":"grunt-banner","description":"Adds a simple banner to files","version":"0.2.0","homepage":"https://github.com/mattstyles/grunt-banner","author":{"name":"Matt Styles","email":"matt@veryfizzyjelly.com","url":"veryfizzyjelly.com"},"repository":{"type":"git","url":"git://github.com/mattstyles/grunt-banner.git"},"bugs":{"url":"https://github.com/mattstyles/grunt-banner/issues"},"licenses":[{"type":"MIT","url":"https://github.com/mattstyles/grunt-banner/blob/master/LICENSE-MIT"}],"main":"Gruntfile.js","engines":{"node":">= 0.8.0"},"scripts":{"test":"grunt test"},"devDependencies":{"grunt-contrib-jshint":"~0.1.1","grunt-contrib-clean":"~0.4.0","grunt-contrib-nodeunit":"~0.1.2","grunt":"~0.4.1","grunt-cli":"~0.1.7","grunt-contrib-copy":"~0.4.1"},"peerDependencies":{"grunt":"~0.4.1"},"keywords":["gruntplugin"],"_id":"grunt-banner@0.2.0","dist":{"shasum":"5ef0e7c6bf0ac0da21b986a8aaa9715fed9cc3ee","tarball":"https://registry.npmjs.org/grunt-banner/-/grunt-banner-0.2.0.tgz","integrity":"sha512-8fqpKGv9LkdEcsPzTH7rVmY9W8ZG90tCkGfn+TM+EIKLFIj5w3vAWHgN7uoB5uBUCCeyLQaivEQ3S3iOUp+7vA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAsdTz7jdhgyWxeuiy04ngB3JbC6Jza54o3kIrt5bhMGAiEAsCRTUNt1j5b1ziyLNEsszzmMlG17JZtvyNX4uR699nI="}]},"_from":".","_npmVersion":"1.3.8","_npmUser":{"name":"mattstyles","email":"matt@veryfizzyjelly.com"},"maintainers":[{"name":"mattstyles","email":"matt@veryfizzyjelly.com"}]},"0.2.1":{"name":"grunt-banner","description":"Adds a simple banner to files","version":"0.2.1","homepage":"https://github.com/mattstyles/grunt-banner","author":{"name":"Matt Styles","email":"matt@veryfizzyjelly.com","url":"veryfizzyjelly.com"},"repository":{"type":"git","url":"git://github.com/mattstyles/grunt-banner.git"},"bugs":{"url":"https://github.com/mattstyles/grunt-banner/issues"},"licenses":[{"type":"MIT","url":"https://github.com/mattstyles/grunt-banner/blob/master/LICENSE-MIT"}],"main":"Gruntfile.js","engines":{"node":">= 0.8.0"},"scripts":{"test":"grunt test"},"devDependencies":{"grunt-contrib-jshint":"~0.1.1","grunt-contrib-clean":"~0.4.0","grunt-contrib-nodeunit":"~0.1.2","grunt":"~0.4.1","grunt-cli":"~0.1.7","grunt-contrib-copy":"~0.4.1"},"peerDependencies":{"grunt":"~0.4.1"},"keywords":["gruntplugin"],"_id":"grunt-banner@0.2.1","dist":{"shasum":"3e65c8b1fec22b7994b5f77917d85cff6166c1e6","tarball":"https://registry.npmjs.org/grunt-banner/-/grunt-banner-0.2.1.tgz","integrity":"sha512-M0I2NlDq1NWDiQ/Ha2+4V8qB4T+/7iHGFbxus/l5d5/A3Zux43wAbc3drs/CGjV+aNp/FTcG9E8igxTU31x+Zg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDuempn1W7wH5dlPoldujLWTIQS5hP1NvdbLCpLWQDEjQIgXzVFfkzVw0Yw4MHaCUSg3RBDbKjDoV3HeUQpPXXmdVI="}]},"_from":".","_npmVersion":"1.3.24","_npmUser":{"name":"mattstyles","email":"matt@veryfizzyjelly.com"},"maintainers":[{"name":"mattstyles","email":"matt@veryfizzyjelly.com"}]},"0.2.2":{"name":"grunt-banner","description":"Adds a simple banner to files","version":"0.2.2","homepage":"https://github.com/mattstyles/grunt-banner","author":{"name":"Matt Styles","email":"matt@veryfizzyjelly.com","url":"veryfizzyjelly.com"},"repository":{"type":"git","url":"git://github.com/mattstyles/grunt-banner.git"},"bugs":{"url":"https://github.com/mattstyles/grunt-banner/issues"},"licenses":[{"type":"MIT","url":"https://github.com/mattstyles/grunt-banner/blob/master/LICENSE-MIT"}],"engines":{"node":">= 0.8.0"},"scripts":{"test":"grunt test"},"files":["tasks","History.md","LICENSE-MIT"],"devDependencies":{"grunt":"~0.4.1","grunt-contrib-clean":"~0.5.0","grunt-contrib-copy":"~0.5.0","grunt-contrib-jshint":"~0.8.0","grunt-contrib-nodeunit":"~0.3.2"},"peerDependencies":{"grunt":"~0.4.1"},"keywords":["gruntplugin"],"_id":"grunt-banner@0.2.2","dist":{"shasum":"87f9f3029d615c0b33662718f70e9f1831306129","tarball":"https://registry.npmjs.org/grunt-banner/-/grunt-banner-0.2.2.tgz","integrity":"sha512-j43zOS7U6dRqKP3va34MpUSIDrA9MrGwrT5h5qzoRbgEltnfMJp2dRnCROP3cf+NAvkoxaWzRo/Has7Wev6QOg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIG6B9caQeqIEwt+uUWIVWF7mx/2ZmJQQXp8IYoybdqN6AiBZ4jijj/jDz1uUH34K9+MlgVViZO1APXos++9r0/Wgjg=="}]},"_from":".","_npmVersion":"1.4.3","_npmUser":{"name":"mattstyles","email":"matt@veryfizzyjelly.com"},"maintainers":[{"name":"mattstyles","email":"matt@veryfizzyjelly.com"}]},"0.2.3":{"name":"grunt-banner","description":"Adds a simple banner to files","version":"0.2.3","homepage":"https://github.com/mattstyles/grunt-banner","author":{"name":"Matt Styles","email":"matt@veryfizzyjelly.com","url":"veryfizzyjelly.com"},"repository":{"type":"git","url":"git://github.com/mattstyles/grunt-banner.git"},"bugs":{"url":"https://github.com/mattstyles/grunt-banner/issues"},"licenses":[{"type":"MIT","url":"https://github.com/mattstyles/grunt-banner/blob/master/LICENSE-MIT"}],"engines":{"node":">= 0.8.0"},"scripts":{"test":"grunt test"},"files":["tasks","History.md","LICENSE-MIT"],"devDependencies":{"grunt":"~0.4.1","grunt-contrib-clean":"~0.5.0","grunt-contrib-copy":"~0.5.0","grunt-contrib-jshint":"~0.8.0","grunt-contrib-nodeunit":"~0.3.2"},"peerDependencies":{"grunt":"~0.4.1"},"keywords":["gruntplugin"],"_id":"grunt-banner@0.2.3","_shasum":"bcaa6d2505893d89315882191823109e6c99e0c5","_from":".","_npmVersion":"1.4.10","_npmUser":{"name":"mattstyles","email":"matt@veryfizzyjelly.com"},"maintainers":[{"name":"mattstyles","email":"matt@veryfizzyjelly.com"}],"dist":{"shasum":"bcaa6d2505893d89315882191823109e6c99e0c5","tarball":"https://registry.npmjs.org/grunt-banner/-/grunt-banner-0.2.3.tgz","integrity":"sha512-WwHgvZMR9rZIbrNRQfc5iIN0SoJKNPgSeBuMMHMeLZ/EDw6sArmSqMqRoUYxt8ItYLPyKYjbdPtCFJH+2wAo+g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBTnt9VVPwzEbwPzaXRQXh+zhBEjz+imTj5qJFRFbu4dAiEA0D4N+hmEI/BDN7Zc87Bfmwy4c1taCtD2PDmMe4IJU6Y="}]}},"0.3.0":{"name":"grunt-banner","description":"Adds a simple banner to files","version":"0.3.0","homepage":"https://github.com/mattstyles/grunt-banner","author":{"name":"Matt Styles","email":"matt@veryfizzyjelly.com","url":"veryfizzyjelly.com"},"repository":{"type":"git","url":"git://github.com/mattstyles/grunt-banner.git"},"bugs":{"url":"https://github.com/mattstyles/grunt-banner/issues"},"licenses":[{"type":"MIT","url":"https://github.com/mattstyles/grunt-banner/blob/master/LICENSE-MIT"}],"engines":{"node":">= 0.8.0"},"scripts":{"test":"grunt test"},"files":["tasks","History.md","LICENSE-MIT"],"devDependencies":{"grunt":"~0.4.1","grunt-contrib-clean":"~0.5.0","grunt-contrib-copy":"~0.5.0","grunt-contrib-jshint":"~0.8.0","grunt-contrib-nodeunit":"~0.3.2"},"peerDependencies":{"grunt":"~0.4.1"},"keywords":["gruntplugin"],"gitHead":"713a5ebc5ad31a930e3e31d983301d8ade2b102c","_id":"grunt-banner@0.3.0","_shasum":"a62b5f00fa3114cbd138f56dced10ce52578725f","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"mattstyles","email":"matt@veryfizzyjelly.com"},"maintainers":[{"name":"mattstyles","email":"matt@veryfizzyjelly.com"}],"dist":{"shasum":"a62b5f00fa3114cbd138f56dced10ce52578725f","tarball":"https://registry.npmjs.org/grunt-banner/-/grunt-banner-0.3.0.tgz","integrity":"sha512-/3K6sS/qUCvduhHZdekKwgKXk93vUFk4mXFeVRd4BBIaR5iVqhCS1nJkRowW6VVNnCRYd3EpZyK5X2G21oGfWw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD0QA7x8WyFRN4mTMmwemkzphkxFfgOzMQ13afAvsWpBgIhAIZT+524iYoxp8YBh21eFs+PsAcr/nqG40Eusn2p72dX"}]}},"0.3.1":{"name":"grunt-banner","description":"Adds a simple banner to files","version":"0.3.1","homepage":"https://github.com/mattstyles/grunt-banner","author":{"name":"Matt Styles","email":"matt@veryfizzyjelly.com","url":"veryfizzyjelly.com"},"repository":{"type":"git","url":"git://github.com/mattstyles/grunt-banner.git"},"bugs":{"url":"https://github.com/mattstyles/grunt-banner/issues"},"licenses":[{"type":"MIT","url":"https://github.com/mattstyles/grunt-banner/blob/master/LICENSE-MIT"}],"engines":{"node":">= 0.8.0"},"scripts":{"test":"grunt test"},"files":["tasks","History.md","LICENSE-MIT"],"devDependencies":{"grunt":"~0.4.5","grunt-contrib-clean":"~0.6.0","grunt-contrib-copy":"~0.7.0","grunt-contrib-jshint":"~0.10.0","grunt-contrib-nodeunit":"~0.4.1"},"peerDependencies":{"grunt":"~0.4.5"},"keywords":["gruntplugin"],"gitHead":"7ed826c4678039e983e33cdbac95dcafea7226cc","_id":"grunt-banner@0.3.1","_shasum":"c5e1273105334935f7ab11fb764d62b4f0d6b71f","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"mattstyles","email":"matt@veryfizzyjelly.com"},"maintainers":[{"name":"mattstyles","email":"matt@veryfizzyjelly.com"}],"dist":{"shasum":"c5e1273105334935f7ab11fb764d62b4f0d6b71f","tarball":"https://registry.npmjs.org/grunt-banner/-/grunt-banner-0.3.1.tgz","integrity":"sha512-+TyX8z6j9FQzBa3VwdmWwOmNGP1E11pYLJMWiLval0clnIvfFHfZDdE5LgG5CXP5Rbvkjky7B4TvUOH6ELqVtQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHCD1o908EHNMEaibYEO7a4eI2JyIZ+dy1BLPmomarjEAiA08kzwrVYqTOv3P2pjTpqj97v3x4ktb+WFjaP/7MqSnw=="}]}},"0.4.0":{"name":"grunt-banner","description":"Adds a simple banner to files","version":"0.4.0","homepage":"https://github.com/mattstyles/grunt-banner","author":{"name":"Matt Styles","email":"matt@veryfizzyjelly.com","url":"https://github.com/mattstyles"},"repository":{"type":"git","url":"git://github.com/mattstyles/grunt-banner.git"},"bugs":{"url":"https://github.com/mattstyles/grunt-banner/issues"},"licenses":[{"type":"MIT","url":"https://github.com/mattstyles/grunt-banner/blob/master/LICENSE-MIT"}],"engines":{"node":">=0.10.0"},"scripts":{"test":"grunt test"},"files":["tasks","History.md","LICENSE-MIT"],"dependencies":{"chalk":"~1.0.0"},"devDependencies":{"grunt":"~0.4.5","grunt-contrib-clean":"~0.6.0","grunt-contrib-copy":"~0.8.0","grunt-contrib-jshint":"~0.11.2","grunt-contrib-nodeunit":"~0.4.1","load-grunt-tasks":"~3.1.0","time-grunt":"~1.1.1"},"peerDependencies":{"grunt":">=0.4.0"},"keywords":["gruntplugin","banner","build"],"gitHead":"7330e03674fd70f926ada62a2af08e969258b8ee","_id":"grunt-banner@0.4.0","_shasum":"9942b4f6ee4141a65aac1a3b32d80afc89f51313","_from":".","_npmVersion":"2.7.0","_nodeVersion":"1.5.1","_npmUser":{"name":"mattstyles","email":"matt@veryfizzyjelly.com"},"maintainers":[{"name":"mattstyles","email":"matt@veryfizzyjelly.com"}],"dist":{"shasum":"9942b4f6ee4141a65aac1a3b32d80afc89f51313","tarball":"https://registry.npmjs.org/grunt-banner/-/grunt-banner-0.4.0.tgz","integrity":"sha512-usRtVibNZoTaQTusnte7fAkYxSh7s1cHIdSkx9ED6fNcq8rXZxg4cdLCvtUWxSqnbDGk5ZCFAIUnO9v/ivzKMQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGQ98H5wUZsqcSf3Saiy013ZspUpk2yyIBSTi8Z1QN+bAiEAyBpHDCIXFo7Vr1RxYreACOkuAHzEsIV+ooaOdHsWpqA="}]}},"0.5.0":{"name":"grunt-banner","description":"Adds a simple banner to files","version":"0.5.0","homepage":"https://github.com/mattstyles/grunt-banner","author":{"name":"Matt Styles","email":"matt@veryfizzyjelly.com","url":"https://github.com/mattstyles"},"repository":{"type":"git","url":"git://github.com/mattstyles/grunt-banner.git"},"bugs":{"url":"https://github.com/mattstyles/grunt-banner/issues"},"licenses":[{"type":"MIT","url":"https://github.com/mattstyles/grunt-banner/blob/master/LICENSE-MIT"}],"engines":{"node":">=0.10.0"},"scripts":{"test":"grunt test"},"files":["tasks","History.md","LICENSE-MIT"],"dependencies":{"chalk":"^1.1.0"},"devDependencies":{"grunt":"^0.4.5","grunt-contrib-clean":"^0.6.0","grunt-contrib-copy":"^0.8.0","grunt-contrib-jshint":"^0.11.2","grunt-contrib-nodeunit":"^0.4.1","load-grunt-tasks":"^3.2.0","time-grunt":"^1.2.1"},"peerDependencies":{"grunt":">=0.4.0"},"keywords":["gruntplugin","banner","build"],"gitHead":"9ff11e9270cea8005419cbec269fcd5a04cc4da7","_id":"grunt-banner@0.5.0","_shasum":"3ef9b62e5fa80f54de8f90a9a6cd99e73d60d230","_from":".","_npmVersion":"2.13.0","_nodeVersion":"2.4.0","_npmUser":{"name":"mattstyles","email":"matt@veryfizzyjelly.com"},"maintainers":[{"name":"mattstyles","email":"matt@veryfizzyjelly.com"}],"dist":{"shasum":"3ef9b62e5fa80f54de8f90a9a6cd99e73d60d230","tarball":"https://registry.npmjs.org/grunt-banner/-/grunt-banner-0.5.0.tgz","integrity":"sha512-aRtlkYYKgB70QR1TdaQPRt8zCn7kqXWzEchtoU6JC3YfVgU53zb1UFjyhYwsgwukxNDQ/5sZ8y0rYJIM2/OdFw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBgsfPxJucoaDVBgN1Hm+4XPcj8Tokos59lgVlpCyyYRAiEA4XmFlpykp7wgdzz/XYquZNKyZE2Id1PIo9aA7K87ylo="}]}},"0.6.0":{"name":"grunt-banner","description":"Adds a simple banner to files","version":"0.6.0","homepage":"https://github.com/mattstyles/grunt-banner","author":{"name":"Matt Styles","email":"matt@veryfizzyjelly.com","url":"https://github.com/mattstyles"},"repository":{"type":"git","url":"git+https://github.com/mattstyles/grunt-banner.git"},"bugs":{"url":"https://github.com/mattstyles/grunt-banner/issues"},"license":"MIT","engines":{"node":">=0.10.0"},"scripts":{"test":"grunt test"},"files":["tasks","History.md","LICENSE-MIT"],"dependencies":{"chalk":"^1.1.0"},"devDependencies":{"grunt":"^0.4.5","grunt-contrib-clean":"^0.6.0","grunt-contrib-copy":"^0.8.0","grunt-contrib-jshint":"^0.11.2","grunt-contrib-nodeunit":"^0.4.1","load-grunt-tasks":"^3.2.0","time-grunt":"^1.2.1"},"peerDependencies":{"grunt":">=0.4.0"},"keywords":["gruntplugin","banner","build"],"gitHead":"234198662e6557ab1f6a62101b9e7df4ed2b5e17","_id":"grunt-banner@0.6.0","_shasum":"3f879021d123fa58a7ba5a0b6fb6be412b5885ac","_from":".","_npmVersion":"2.14.2","_nodeVersion":"4.0.0","_npmUser":{"name":"mattstyles","email":"matt@veryfizzyjelly.com"},"dist":{"shasum":"3f879021d123fa58a7ba5a0b6fb6be412b5885ac","tarball":"https://registry.npmjs.org/grunt-banner/-/grunt-banner-0.6.0.tgz","integrity":"sha512-50H/Wxydlf+ifve5Jzcz9oB4jr6oCGEPyfhEDUsl2NEMX80cWUJqVMXSHBr2n9Rb3nd+rRSKeQzqNxWrqoyQ1A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCAibD5Z5cMD3btTp8AjnDyx+1F3dnns1f3tw38ObgOBgIgMTJi4EbKAD9wzaWZbHxSebhJ4s25eNA7Kk8SiMgOss0="}]},"maintainers":[{"name":"mattstyles","email":"matt@veryfizzyjelly.com"}]}},"readme":"# grunt-banner\n\n[![NPM version](https://img.shields.io/npm/v/grunt-banner.svg)](https://www.npmjs.com/package/grunt-banner)\n[![Build Status](https://img.shields.io/travis/mattstyles/grunt-banner/master.svg)](https://travis-ci.org/mattstyles/grunt-banner)\n[![Dependency Status](https://img.shields.io/david/mattstyles/grunt-banner.svg)](https://david-dm.org/mattstyles/grunt-banner#info=deependencies)\n[![peerDependency Status](https://img.shields.io/david/peer/mattstyles/grunt-banner.svg)](https://david-dm.org/mattstyles/grunt-banner#info=peerDependencies)\n[![devDependency Status](https://img.shields.io/david/dev/mattstyles/grunt-banner.svg)](https://david-dm.org/mattstyles/grunt-banner#info=devDependencies)\n\n> Adds a simple banner to files\n\n\n## Getting Started\n\nThis plugin requires Grunt `>=0.4.0`\n\nIf you haven't used [Grunt](http://gruntjs.com/) before, be sure to check out the [Getting Started](http://gruntjs.com/getting-started) guide, as it explains how to create a [Gruntfile](http://gruntjs.com/sample-gruntfile) as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command:\n\n```shell\nnpm install grunt-banner --save-dev\n```\n\nOnce the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:\n\n```js\ngrunt.loadNpmTasks('grunt-banner');\n```\n\nOr if you are using [matchdep](https://github.com/tkellen/node-matchdep) it will be included along with other `grunt-*` tasks by using this line of JavaScript:\n\n```js\nrequire('matchdep').filterDev('grunt-*').forEach(grunt.loadNpmTasks);\n```\n\n\n## The \"usebanner\" task\n\n*grunt-banner renamed its task from `banner` to `usebanner` as a `banner` is often used to hold a banner template for a number of grunt plugins.*\n\n\n### Overview\n\nIn your project's Gruntfile, add a section named `usebanner` to the data object passed into `grunt.initConfig()`.\n\nThe wildcard selector `*` is perfectly valid for selecting targets to add a banner to.\n\n```js\ngrunt.initConfig({\n  usebanner: {\n    taskName: {\n      options: {\n        position: 'top',\n        banner: '// banner text <%= templates encouraged %>',\n        linebreak: true\n      },\n      files: {\n        src: [ 'path/to/file.ext', 'path/to/another/*.ext' ]\n      }\n    }\n  }\n})\n```\n\n\n### Options\n\n#### options.position\n\nType: `String`  \nDefault: `'top'`  \nValue range: `'top'` or `'bottom'` or `'replace'`\n\nThe position to place the banner - *either* the top or bottom or in place of the contents in the desired file specified by `'replaceContent'` when and existing banner is replaced by `grunt-banner`.\n\nWhen ```position``` is set to `'replace'`, this *implies* ```options.replace: true``` unless that option has explicitly been set by the user already (see below).\n\nWhen ```position``` is set to `'replace'` and replacement fails, i.e. no existing banner could be spotted, then `grunt-banner` falls back to regular ```position: 'top'``` | ```position: 'bottom'``` banner insertion behaviour.\n\nIn short: `grunt-banner` will always either *replace* or *add* a banner!\n\n#### options.replace\n\nType: `Boolean`, `String`, `RegExp` or `Function`\n\nThe text in the specified file that the banner should replace. When ```position``` is set to `'replace'`, every occurrence of a banner (see below for more on how existing banners are located) will be replaced by the new one. When ```position``` is set to either `'top'` or `'bottom'`, then the existing banners will be removed and replaced by a single new banner at the top or bottom of the file as directed by the ```position``` setting.\n\nThese ```options.replace``` parameter types / values are supported:\n\n+ Boolean `false` (default) - do not look for existing banners; simply add the banner at the specified position (top / bottom).\n\n+ Boolean `true` - 'smart' replace mode: use the built-in 'smart' locate-and-mark scanner to dig out the existing banners (more on the rules what maketh a banner below).\n\n+ (string) - replace any part of the source code which matches this *implicit regex*.\n\n  > This means most strings are matched as-is, but do not get mistaken about this: dot `.`, star `*` et al will not be the *literal characters* you might have expected, but are treated as regex operators! E.g. `replace: \"/* blurb */\"` will **not** work as if a literal string, since the stars `*` in there will make it match lines like `// blurb //` but **will not** match an actual C-style comment line `/* blurb */`. You will need to specify the proper regex string for that instead: `replace: \"\\/\\* blurb \\*\\/\"`.\n\n  > Also note that *every* regex match will be replaced by the specified banner. If your regex is not selective or precise enough, you may end up with some surprising replacements. **This is not a bug. You are responsible for providing *fitting* regexes to have `grunt-banner` match against.**\n\n+ (RegExp) - a rexexp instance to match against. The same caveats as the (string) type value above apply.\n\n+ (function) - provide your own callback method to locate and mark the input. The interface for the callback function is:\n\n  ```\n  function (fileContents, newBanner, insertPositionMarker, src, options)\n  ```\n\n  which should *return* the marked `fileContents`, i.e. the `fileContents` with all banners eligible for replacement removed and replaced by a simple `insertPositionMarker` string (see below). Your locate-and-match callback may insert *one*, *multiple* markers or *none*: `grunt-banner` will check how many markers you injected and either replace them when one or more markers are seen, or when none are found, revert to its basic `top|bottom` position-based banner *insertion* process.\n\n  The callback function parameters:\n\n  + `fileContents` (string) - the contents of the `src` file.\n\n  + `newBanner` (string) - the new banner to be inserted by `grunt-banner`.\n\n    > This (and the `options` parameter, see below) allows you to customize `grunt-banner` behaviour to an extreme degree, even providing your own custom *replacer* entirely: simply return your processed result with a single marker and reduce the `options.banner` to an empty string. But I digress...\n\n  + `insertPositionMarker` (string) - the insert marker.\n\n    Currently this is the Unicode `REPLACEMENT CHARACTER` character, i.e. `\\uFFFD`. We *assume* your original file content does not contain this marker already.\n\n  + `src` (string) - the path to the file being processed.\n\n  + `options` (object reference) - a *reference* to the current `options` object as used by `grunt-banner`.\n\n    > This **is not** the same as the `options` object you provided through your `Gruntfile`; this is a reference to the updated/augmented clone of that original as used by `grunt-banner` internally.\n    >\n    > Though the following coding practice should be frowned upon as 'side effects' are generally undesirable, you *can* tweak the `options.banner` value to suit your custom needs, for example.\n\n    **Tread with great care when you are about to *edit* attributes in this `options` object reference! The fact that you *can* doesn't mean you *should* fiddle with it!**\n\n\n#### options.banner\nType: `String`\n\nThe text to use as a banner. Templated strings are perfectly acceptable and encouraged.\n\n#### options.pattern\nType: `String`\n\nAllows the banner to be added only if the supplied pattern matches.\n\n#### options.linebreak\nType: `Boolean`  \nDefault: `true`\n\nSet `linebreak` to true to add a line break between banner and file content.\n\n#### options.process\nType: `Function`\n\nAllows the banner to be generated for each file using the output of the process function.\n\n\n\n\n### The ```options.replace: true``` default locate-and-mark functionality\n\nThe default locate-and-mark process, invoked when you specify the `replace: true` option (or `position: \"replace\"` without any `replace:` value to go with that one) is set up to locate copyright banner comment chunks in either C or C++ style format, i.e. surrounded by `/*....*/` or single- or multiline `//` comment chunks.\n\nThe process will inspect each comment chunk which start at the **left edge** (hence we ignore all *indented* comment chunks!) and which span *entire* lines, hence ruling out any comments which are leading or trailing source code statements *on the same line*.\n\nThe last restriction placed on any 'old' banner to replace is that it **must** have the (case-**in**sensitive) word `Copyright` in there somewhere. And that word **must** be followed by a bit of non-whitespace blurb on the same line: generally a year, a name or both suffices to satisfy this last condition.\n\nAny such 'banner' block is marked for replacement in its entirety.\n\n> #### Warning Note:\n>\n> The replacer *does not* check if the *new* banner also includes the `Copyright` phrase, hence multiple applications of `grunt-banner` may lead to the later rounds of `grunt-banner` application *adding* the shiny new banner at the top (or bottom) of the source file.\n>\n\n\n### Usage Examples\n\n#### Basic Usage\n\nIn this example an `appConfig` is read from a JSON file and used to populate a `banner` template which is then used by `grunt-banner` to place at the top of some files. Each file in the array will have the banner placed on to it and all `.js` files in the `/more-scripts/` folder will have a banner thanks to the `*` wildcard.\n\n```js\nvar appConfig = grunt.file.readJSON( 'app-config.json' ) || {};\ngrunt.initConfig({\n  banner: '/* <%= appConfig.info.name %> - version <%= appConfig.info.version %> - ' +\n          '<%= grunt.template.today(\"dd-mm-yyyy\") %>\\n' +\n          '<%= appConfig.info.description %>\\n ' +\n          '&#169 <%= grunt.template.today(\"yyyy\") %> <%= appConfig.info.author.name %> ' +\n          '- <%= appConfig.info.author.email %> */\\n',\n  usebanner: {\n    dist: {\n      options: {\n        position: 'top',\n        banner: '<%= banner %>'\n      },\n      files: {\n        src: [ 'scripts/main-min.js', 'stylesheets/main-min.css', 'more-scripts/*.js' ]\n      }\n    }\n  }\n})\n```\n\n\n#### Process Usage\n\nBy supplying a process **function** you effectively take control of how the banner is generated, the task is still responsible for placing it. In essence, it replaces the need for a banner object being specified in your grunt config as you are creating it from code for each file. This gives you the flexibility to add file-specific data to your banners.\n\nThis example uses [grunt templating](http://gruntjs.com/api/grunt.template) to generate a banner that references the file name it is being appended to. Run the test cases to see this in action.\n\n```js\nusebanner: {\n  dist: {\n    options: {\n      position: 'top',\n      process: function ( filepath ) {\n        return grunt.template.process(\n          '// banner for file: <%= filename %>', {\n            data: {\n              filename: filepath.match(/\\/([^/]*)$/)[1]\n            }\n          }\n        );\n      }\n    },\n    files: {\n      src: [ 'test/tmp/someProcess.js' ]\n    }\n  }\n}\n```\n\n\n### Notes\n\n`grunt-banner` *adds* the banner to the head or foot of the files that are specified by the array passed to `files.src` unless ways to see if a banner already exists have been properly set up (```options.replace``` and/or ```position: 'replace'```).\n\nIt is up to the user to ensure that either the file should not already contain a banner or that the configured locate-and-mark means (default locate-and-mark function, user-specified regex or user-specified callback function) are sufficient to ensure that no undesired code chunk replacements may occur. To this end it is recommended to use the [grunt-contrib-clean](https://github.com/gruntjs/grunt-contrib-clean) task and only add banners to built code.\n\n\n## Contributing\n\nIn lieu of a formal style guide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using [Grunt](http://gruntjs.com/).\n","maintainers":[{"name":"mattstyles","email":"matt@veryfizzyjelly.com"}],"time":{"modified":"2022-06-18T14:28:22.941Z","created":"2013-04-30T22:11:36.804Z","0.1.0":"2013-04-30T22:11:40.298Z","0.1.1":"2013-04-30T22:16:02.325Z","0.1.2":"2013-05-01T06:23:47.615Z","0.1.3":"2013-05-01T16:32:56.987Z","0.1.4":"2013-05-01T21:15:53.946Z","0.2.0":"2013-09-27T21:20:00.900Z","0.2.1":"2014-02-17T08:41:11.796Z","0.2.2":"2014-03-13T11:23:52.400Z","0.2.3":"2014-05-27T07:36:32.872Z","0.3.0":"2015-01-02T20:20:25.467Z","0.3.1":"2015-01-06T22:14:33.021Z","0.4.0":"2015-05-05T08:02:56.012Z","0.5.0":"2015-08-12T14:01:59.532Z","0.6.0":"2015-09-29T14:36:58.740Z"},"author":{"name":"Matt Styles","email":"matt@veryfizzyjelly.com","url":"https://github.com/mattstyles"},"repository":{"type":"git","url":"git+https://github.com/mattstyles/grunt-banner.git"},"users":{"adrianorosa":true,"inforsis":true,"tripflex":true,"epickris":true,"rexfun":true,"feryardiant":true,"modest":true,"jalcine":true,"xopoc":true,"adammacias":true,"albanandrieu":true,"santofimiagraphic":true,"oliverj":true,"reamd":true,"arvinxiang":true,"nano":true,"giuseppe.morelli":true,"rochejul":true},"readmeFilename":"README.md","homepage":"https://github.com/mattstyles/grunt-banner","keywords":["gruntplugin","banner","build"],"bugs":{"url":"https://github.com/mattstyles/grunt-banner/issues"},"license":"MIT"}