webpack_rails 0.3.0 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (353) hide show
  1. checksums.yaml +4 -4
  2. data/lib/webpack_rails/ErrorMessagePlugin.js +37 -0
  3. data/lib/webpack_rails/engine.rb +6 -5
  4. data/lib/webpack_rails/node_modules/cors/CONTRIBUTING.md +35 -0
  5. data/lib/webpack_rails/node_modules/cors/LICENSE +9 -0
  6. data/lib/webpack_rails/node_modules/cors/README.md +192 -0
  7. data/lib/webpack_rails/node_modules/cors/lib/index.js +242 -0
  8. data/lib/webpack_rails/node_modules/cors/node_modules/vary/HISTORY.md +29 -0
  9. data/lib/webpack_rails/node_modules/cors/node_modules/vary/LICENSE +22 -0
  10. data/lib/webpack_rails/node_modules/cors/node_modules/vary/README.md +91 -0
  11. data/lib/webpack_rails/node_modules/cors/node_modules/vary/index.js +124 -0
  12. data/lib/webpack_rails/node_modules/cors/node_modules/vary/package.json +72 -0
  13. data/lib/webpack_rails/node_modules/cors/package.json +79 -0
  14. data/lib/webpack_rails/node_modules/cors/test/basic-auth.js +40 -0
  15. data/lib/webpack_rails/node_modules/cors/test/body-events.js +81 -0
  16. data/lib/webpack_rails/node_modules/cors/test/cors.js +652 -0
  17. data/lib/webpack_rails/node_modules/cors/test/error-response.js +77 -0
  18. data/lib/webpack_rails/node_modules/cors/test/example-app.js +98 -0
  19. data/lib/webpack_rails/node_modules/cors/test/issue-2.js +56 -0
  20. data/lib/webpack_rails/node_modules/cors/test/issue-31.js +58 -0
  21. data/lib/webpack_rails/node_modules/cors/test/mocha.opts +3 -0
  22. data/lib/webpack_rails/node_modules/express/History.md +3025 -0
  23. data/lib/webpack_rails/node_modules/express/LICENSE +24 -0
  24. data/lib/webpack_rails/node_modules/express/Readme.md +138 -0
  25. data/lib/webpack_rails/node_modules/express/index.js +11 -0
  26. data/lib/webpack_rails/node_modules/express/lib/application.js +643 -0
  27. data/lib/webpack_rails/node_modules/express/lib/express.js +103 -0
  28. data/lib/webpack_rails/node_modules/express/lib/middleware/init.js +36 -0
  29. data/lib/webpack_rails/node_modules/express/lib/middleware/query.js +51 -0
  30. data/lib/webpack_rails/node_modules/express/lib/request.js +489 -0
  31. data/lib/webpack_rails/node_modules/express/lib/response.js +1053 -0
  32. data/lib/webpack_rails/node_modules/express/lib/router/index.js +645 -0
  33. data/lib/webpack_rails/node_modules/express/lib/router/layer.js +176 -0
  34. data/lib/webpack_rails/node_modules/express/lib/router/route.js +210 -0
  35. data/lib/webpack_rails/node_modules/express/lib/utils.js +300 -0
  36. data/lib/webpack_rails/node_modules/express/lib/view.js +173 -0
  37. data/lib/webpack_rails/node_modules/express/node_modules/accepts/HISTORY.md +170 -0
  38. data/lib/webpack_rails/node_modules/express/node_modules/accepts/LICENSE +23 -0
  39. data/lib/webpack_rails/node_modules/express/node_modules/accepts/README.md +135 -0
  40. data/lib/webpack_rails/node_modules/express/node_modules/accepts/index.js +231 -0
  41. data/lib/webpack_rails/node_modules/express/node_modules/accepts/node_modules/mime-types/HISTORY.md +171 -0
  42. data/lib/webpack_rails/node_modules/express/node_modules/accepts/node_modules/mime-types/LICENSE +23 -0
  43. data/lib/webpack_rails/node_modules/express/node_modules/accepts/node_modules/mime-types/README.md +103 -0
  44. data/lib/webpack_rails/node_modules/express/node_modules/accepts/node_modules/mime-types/index.js +188 -0
  45. data/lib/webpack_rails/node_modules/express/node_modules/accepts/node_modules/mime-types/node_modules/mime-db/HISTORY.md +274 -0
  46. data/lib/webpack_rails/node_modules/express/node_modules/accepts/node_modules/mime-types/node_modules/mime-db/LICENSE +22 -0
  47. data/lib/webpack_rails/node_modules/express/node_modules/accepts/node_modules/mime-types/node_modules/mime-db/README.md +82 -0
  48. data/lib/webpack_rails/node_modules/express/node_modules/accepts/node_modules/mime-types/node_modules/mime-db/db.json +6474 -0
  49. data/lib/webpack_rails/node_modules/express/node_modules/accepts/node_modules/mime-types/node_modules/mime-db/index.js +11 -0
  50. data/lib/webpack_rails/node_modules/express/node_modules/accepts/node_modules/mime-types/node_modules/mime-db/package.json +94 -0
  51. data/lib/webpack_rails/node_modules/express/node_modules/accepts/node_modules/mime-types/package.json +84 -0
  52. data/lib/webpack_rails/node_modules/express/node_modules/accepts/node_modules/negotiator/HISTORY.md +76 -0
  53. data/lib/webpack_rails/node_modules/express/node_modules/accepts/node_modules/negotiator/LICENSE +24 -0
  54. data/lib/webpack_rails/node_modules/express/node_modules/accepts/node_modules/negotiator/README.md +203 -0
  55. data/lib/webpack_rails/node_modules/express/node_modules/accepts/node_modules/negotiator/index.js +62 -0
  56. data/lib/webpack_rails/node_modules/express/node_modules/accepts/node_modules/negotiator/lib/charset.js +102 -0
  57. data/lib/webpack_rails/node_modules/express/node_modules/accepts/node_modules/negotiator/lib/encoding.js +118 -0
  58. data/lib/webpack_rails/node_modules/express/node_modules/accepts/node_modules/negotiator/lib/language.js +112 -0
  59. data/lib/webpack_rails/node_modules/express/node_modules/accepts/node_modules/negotiator/lib/mediaType.js +179 -0
  60. data/lib/webpack_rails/node_modules/express/node_modules/accepts/node_modules/negotiator/package.json +86 -0
  61. data/lib/webpack_rails/node_modules/express/node_modules/accepts/package.json +98 -0
  62. data/lib/webpack_rails/node_modules/express/node_modules/array-flatten/LICENSE +21 -0
  63. data/lib/webpack_rails/node_modules/express/node_modules/array-flatten/README.md +43 -0
  64. data/lib/webpack_rails/node_modules/express/node_modules/array-flatten/array-flatten.js +64 -0
  65. data/lib/webpack_rails/node_modules/express/node_modules/array-flatten/package.json +62 -0
  66. data/lib/webpack_rails/node_modules/express/node_modules/content-disposition/HISTORY.md +40 -0
  67. data/lib/webpack_rails/node_modules/express/node_modules/content-disposition/LICENSE +22 -0
  68. data/lib/webpack_rails/node_modules/express/node_modules/content-disposition/README.md +141 -0
  69. data/lib/webpack_rails/node_modules/express/node_modules/content-disposition/index.js +443 -0
  70. data/lib/webpack_rails/node_modules/express/node_modules/content-disposition/package.json +66 -0
  71. data/lib/webpack_rails/node_modules/express/node_modules/content-type/HISTORY.md +9 -0
  72. data/lib/webpack_rails/node_modules/express/node_modules/content-type/LICENSE +22 -0
  73. data/lib/webpack_rails/node_modules/express/node_modules/content-type/README.md +92 -0
  74. data/lib/webpack_rails/node_modules/express/node_modules/content-type/index.js +214 -0
  75. data/lib/webpack_rails/node_modules/express/node_modules/content-type/package.json +65 -0
  76. data/lib/webpack_rails/node_modules/express/node_modules/cookie/LICENSE +23 -0
  77. data/lib/webpack_rails/node_modules/express/node_modules/cookie/README.md +64 -0
  78. data/lib/webpack_rails/node_modules/express/node_modules/cookie/index.js +116 -0
  79. data/lib/webpack_rails/node_modules/express/node_modules/cookie/package.json +68 -0
  80. data/lib/webpack_rails/node_modules/express/node_modules/cookie-signature/History.md +38 -0
  81. data/lib/webpack_rails/node_modules/express/node_modules/cookie-signature/Readme.md +42 -0
  82. data/lib/webpack_rails/node_modules/express/node_modules/cookie-signature/index.js +51 -0
  83. data/lib/webpack_rails/node_modules/express/node_modules/cookie-signature/package.json +59 -0
  84. data/lib/webpack_rails/node_modules/express/node_modules/debug/History.md +195 -0
  85. data/lib/webpack_rails/node_modules/express/node_modules/debug/Makefile +36 -0
  86. data/lib/webpack_rails/node_modules/express/node_modules/debug/Readme.md +188 -0
  87. data/lib/webpack_rails/node_modules/express/node_modules/debug/bower.json +28 -0
  88. data/lib/webpack_rails/node_modules/express/node_modules/debug/browser.js +168 -0
  89. data/lib/webpack_rails/node_modules/express/node_modules/debug/component.json +19 -0
  90. data/lib/webpack_rails/node_modules/express/node_modules/debug/debug.js +197 -0
  91. data/lib/webpack_rails/node_modules/express/node_modules/debug/node.js +209 -0
  92. data/lib/webpack_rails/node_modules/express/node_modules/debug/node_modules/ms/History.md +66 -0
  93. data/lib/webpack_rails/node_modules/express/node_modules/debug/node_modules/ms/LICENSE +20 -0
  94. data/lib/webpack_rails/node_modules/express/node_modules/debug/node_modules/ms/README.md +35 -0
  95. data/lib/webpack_rails/node_modules/express/node_modules/debug/node_modules/ms/index.js +125 -0
  96. data/lib/webpack_rails/node_modules/express/node_modules/debug/node_modules/ms/package.json +47 -0
  97. data/lib/webpack_rails/node_modules/express/node_modules/debug/package.json +73 -0
  98. data/lib/webpack_rails/node_modules/express/node_modules/depd/History.md +75 -0
  99. data/lib/webpack_rails/node_modules/express/node_modules/depd/LICENSE +22 -0
  100. data/lib/webpack_rails/node_modules/express/node_modules/depd/Readme.md +274 -0
  101. data/lib/webpack_rails/node_modules/express/node_modules/depd/index.js +529 -0
  102. data/lib/webpack_rails/node_modules/express/node_modules/depd/lib/compat/buffer-concat.js +33 -0
  103. data/lib/webpack_rails/node_modules/express/node_modules/depd/lib/compat/callsite-tostring.js +101 -0
  104. data/lib/webpack_rails/node_modules/express/node_modules/depd/lib/compat/index.js +69 -0
  105. data/lib/webpack_rails/node_modules/express/node_modules/depd/package.json +66 -0
  106. data/lib/webpack_rails/node_modules/express/node_modules/escape-html/LICENSE +22 -0
  107. data/lib/webpack_rails/node_modules/express/node_modules/escape-html/Readme.md +15 -0
  108. data/lib/webpack_rails/node_modules/express/node_modules/escape-html/index.js +29 -0
  109. data/lib/webpack_rails/node_modules/express/node_modules/escape-html/package.json +51 -0
  110. data/lib/webpack_rails/node_modules/express/node_modules/etag/HISTORY.md +71 -0
  111. data/lib/webpack_rails/node_modules/express/node_modules/etag/LICENSE +22 -0
  112. data/lib/webpack_rails/node_modules/express/node_modules/etag/README.md +165 -0
  113. data/lib/webpack_rails/node_modules/express/node_modules/etag/index.js +132 -0
  114. data/lib/webpack_rails/node_modules/express/node_modules/etag/package.json +73 -0
  115. data/lib/webpack_rails/node_modules/express/node_modules/finalhandler/HISTORY.md +90 -0
  116. data/lib/webpack_rails/node_modules/express/node_modules/finalhandler/LICENSE +22 -0
  117. data/lib/webpack_rails/node_modules/express/node_modules/finalhandler/README.md +133 -0
  118. data/lib/webpack_rails/node_modules/express/node_modules/finalhandler/index.js +151 -0
  119. data/lib/webpack_rails/node_modules/express/node_modules/finalhandler/node_modules/unpipe/HISTORY.md +4 -0
  120. data/lib/webpack_rails/node_modules/express/node_modules/finalhandler/node_modules/unpipe/LICENSE +22 -0
  121. data/lib/webpack_rails/node_modules/express/node_modules/finalhandler/node_modules/unpipe/README.md +43 -0
  122. data/lib/webpack_rails/node_modules/express/node_modules/finalhandler/node_modules/unpipe/index.js +69 -0
  123. data/lib/webpack_rails/node_modules/express/node_modules/finalhandler/node_modules/unpipe/package.json +59 -0
  124. data/lib/webpack_rails/node_modules/express/node_modules/finalhandler/package.json +81 -0
  125. data/lib/webpack_rails/node_modules/express/node_modules/fresh/HISTORY.md +38 -0
  126. data/lib/webpack_rails/node_modules/express/node_modules/fresh/LICENSE +22 -0
  127. data/lib/webpack_rails/node_modules/express/node_modules/fresh/README.md +58 -0
  128. data/lib/webpack_rails/node_modules/express/node_modules/fresh/index.js +57 -0
  129. data/lib/webpack_rails/node_modules/express/node_modules/fresh/package.json +87 -0
  130. data/lib/webpack_rails/node_modules/express/node_modules/merge-descriptors/LICENSE +22 -0
  131. data/lib/webpack_rails/node_modules/express/node_modules/merge-descriptors/README.md +34 -0
  132. data/lib/webpack_rails/node_modules/express/node_modules/merge-descriptors/index.js +57 -0
  133. data/lib/webpack_rails/node_modules/express/node_modules/merge-descriptors/package.json +125 -0
  134. data/lib/webpack_rails/node_modules/express/node_modules/methods/HISTORY.md +24 -0
  135. data/lib/webpack_rails/node_modules/express/node_modules/methods/LICENSE +23 -0
  136. data/lib/webpack_rails/node_modules/express/node_modules/methods/README.md +41 -0
  137. data/lib/webpack_rails/node_modules/express/node_modules/methods/index.js +42 -0
  138. data/lib/webpack_rails/node_modules/express/node_modules/methods/package.json +88 -0
  139. data/lib/webpack_rails/node_modules/express/node_modules/on-finished/HISTORY.md +88 -0
  140. data/lib/webpack_rails/node_modules/express/node_modules/on-finished/LICENSE +23 -0
  141. data/lib/webpack_rails/node_modules/express/node_modules/on-finished/README.md +154 -0
  142. data/lib/webpack_rails/node_modules/express/node_modules/on-finished/index.js +196 -0
  143. data/lib/webpack_rails/node_modules/express/node_modules/on-finished/node_modules/ee-first/LICENSE +22 -0
  144. data/lib/webpack_rails/node_modules/express/node_modules/on-finished/node_modules/ee-first/README.md +80 -0
  145. data/lib/webpack_rails/node_modules/express/node_modules/on-finished/node_modules/ee-first/index.js +95 -0
  146. data/lib/webpack_rails/node_modules/express/node_modules/on-finished/node_modules/ee-first/package.json +64 -0
  147. data/lib/webpack_rails/node_modules/express/node_modules/on-finished/package.json +71 -0
  148. data/lib/webpack_rails/node_modules/express/node_modules/parseurl/HISTORY.md +42 -0
  149. data/lib/webpack_rails/node_modules/express/node_modules/parseurl/LICENSE +24 -0
  150. data/lib/webpack_rails/node_modules/express/node_modules/parseurl/README.md +107 -0
  151. data/lib/webpack_rails/node_modules/express/node_modules/parseurl/index.js +136 -0
  152. data/lib/webpack_rails/node_modules/express/node_modules/parseurl/package.json +80 -0
  153. data/lib/webpack_rails/node_modules/express/node_modules/path-to-regexp/History.md +36 -0
  154. data/lib/webpack_rails/node_modules/express/node_modules/path-to-regexp/LICENSE +21 -0
  155. data/lib/webpack_rails/node_modules/express/node_modules/path-to-regexp/Readme.md +35 -0
  156. data/lib/webpack_rails/node_modules/express/node_modules/path-to-regexp/index.js +129 -0
  157. data/lib/webpack_rails/node_modules/express/node_modules/path-to-regexp/package.json +184 -0
  158. data/lib/webpack_rails/node_modules/express/node_modules/proxy-addr/HISTORY.md +66 -0
  159. data/lib/webpack_rails/node_modules/express/node_modules/proxy-addr/LICENSE +22 -0
  160. data/lib/webpack_rails/node_modules/express/node_modules/proxy-addr/README.md +137 -0
  161. data/lib/webpack_rails/node_modules/express/node_modules/proxy-addr/index.js +345 -0
  162. data/lib/webpack_rails/node_modules/express/node_modules/proxy-addr/node_modules/forwarded/HISTORY.md +4 -0
  163. data/lib/webpack_rails/node_modules/express/node_modules/proxy-addr/node_modules/forwarded/LICENSE +22 -0
  164. data/lib/webpack_rails/node_modules/express/node_modules/proxy-addr/node_modules/forwarded/README.md +53 -0
  165. data/lib/webpack_rails/node_modules/express/node_modules/proxy-addr/node_modules/forwarded/index.js +35 -0
  166. data/lib/webpack_rails/node_modules/express/node_modules/proxy-addr/node_modules/forwarded/package.json +65 -0
  167. data/lib/webpack_rails/node_modules/express/node_modules/proxy-addr/node_modules/ipaddr.js/Cakefile +18 -0
  168. data/lib/webpack_rails/node_modules/express/node_modules/proxy-addr/node_modules/ipaddr.js/LICENSE +19 -0
  169. data/lib/webpack_rails/node_modules/express/node_modules/proxy-addr/node_modules/ipaddr.js/README.md +161 -0
  170. data/lib/webpack_rails/node_modules/express/node_modules/proxy-addr/node_modules/ipaddr.js/ipaddr.min.js +1 -0
  171. data/lib/webpack_rails/node_modules/express/node_modules/proxy-addr/node_modules/ipaddr.js/lib/ipaddr.js +439 -0
  172. data/lib/webpack_rails/node_modules/express/node_modules/proxy-addr/node_modules/ipaddr.js/package.json +60 -0
  173. data/lib/webpack_rails/node_modules/express/node_modules/proxy-addr/node_modules/ipaddr.js/src/ipaddr.coffee +374 -0
  174. data/lib/webpack_rails/node_modules/express/node_modules/proxy-addr/node_modules/ipaddr.js/test/ipaddr.test.coffee +262 -0
  175. data/lib/webpack_rails/node_modules/express/node_modules/proxy-addr/package.json +90 -0
  176. data/lib/webpack_rails/node_modules/express/node_modules/qs/CHANGELOG.md +88 -0
  177. data/lib/webpack_rails/node_modules/express/node_modules/qs/CONTRIBUTING.md +1 -0
  178. data/lib/webpack_rails/node_modules/express/node_modules/qs/LICENSE +28 -0
  179. data/lib/webpack_rails/node_modules/express/node_modules/qs/README.md +317 -0
  180. data/lib/webpack_rails/node_modules/express/node_modules/qs/bower.json +22 -0
  181. data/lib/webpack_rails/node_modules/express/node_modules/qs/lib/index.js +15 -0
  182. data/lib/webpack_rails/node_modules/express/node_modules/qs/lib/parse.js +186 -0
  183. data/lib/webpack_rails/node_modules/express/node_modules/qs/lib/stringify.js +121 -0
  184. data/lib/webpack_rails/node_modules/express/node_modules/qs/lib/utils.js +190 -0
  185. data/lib/webpack_rails/node_modules/express/node_modules/qs/package.json +56 -0
  186. data/lib/webpack_rails/node_modules/express/node_modules/qs/test/parse.js +478 -0
  187. data/lib/webpack_rails/node_modules/express/node_modules/qs/test/stringify.js +259 -0
  188. data/lib/webpack_rails/node_modules/express/node_modules/qs/test/utils.js +28 -0
  189. data/lib/webpack_rails/node_modules/express/node_modules/range-parser/HISTORY.md +35 -0
  190. data/lib/webpack_rails/node_modules/express/node_modules/range-parser/LICENSE +22 -0
  191. data/lib/webpack_rails/node_modules/express/node_modules/range-parser/README.md +48 -0
  192. data/lib/webpack_rails/node_modules/express/node_modules/range-parser/index.js +49 -0
  193. data/lib/webpack_rails/node_modules/express/node_modules/range-parser/package.json +76 -0
  194. data/lib/webpack_rails/node_modules/express/node_modules/send/HISTORY.md +295 -0
  195. data/lib/webpack_rails/node_modules/express/node_modules/send/LICENSE +23 -0
  196. data/lib/webpack_rails/node_modules/express/node_modules/send/README.md +195 -0
  197. data/lib/webpack_rails/node_modules/express/node_modules/send/index.js +820 -0
  198. data/lib/webpack_rails/node_modules/express/node_modules/send/node_modules/destroy/README.md +38 -0
  199. data/lib/webpack_rails/node_modules/express/node_modules/send/node_modules/destroy/index.js +36 -0
  200. data/lib/webpack_rails/node_modules/express/node_modules/send/node_modules/destroy/package.json +67 -0
  201. data/lib/webpack_rails/node_modules/express/node_modules/send/node_modules/http-errors/HISTORY.md +76 -0
  202. data/lib/webpack_rails/node_modules/express/node_modules/send/node_modules/http-errors/LICENSE +22 -0
  203. data/lib/webpack_rails/node_modules/express/node_modules/send/node_modules/http-errors/README.md +63 -0
  204. data/lib/webpack_rails/node_modules/express/node_modules/send/node_modules/http-errors/index.js +120 -0
  205. data/lib/webpack_rails/node_modules/express/node_modules/send/node_modules/http-errors/node_modules/inherits/LICENSE +16 -0
  206. data/lib/webpack_rails/node_modules/express/node_modules/send/node_modules/http-errors/node_modules/inherits/README.md +42 -0
  207. data/lib/webpack_rails/node_modules/express/node_modules/send/node_modules/http-errors/node_modules/inherits/inherits.js +1 -0
  208. data/lib/webpack_rails/node_modules/express/node_modules/send/node_modules/http-errors/node_modules/inherits/inherits_browser.js +23 -0
  209. data/lib/webpack_rails/node_modules/express/node_modules/send/node_modules/http-errors/node_modules/inherits/package.json +50 -0
  210. data/lib/webpack_rails/node_modules/express/node_modules/send/node_modules/http-errors/node_modules/inherits/test.js +25 -0
  211. data/lib/webpack_rails/node_modules/express/node_modules/send/node_modules/http-errors/package.json +85 -0
  212. data/lib/webpack_rails/node_modules/express/node_modules/send/node_modules/mime/LICENSE +19 -0
  213. data/lib/webpack_rails/node_modules/express/node_modules/send/node_modules/mime/README.md +90 -0
  214. data/lib/webpack_rails/node_modules/express/node_modules/send/node_modules/mime/build/build.js +11 -0
  215. data/lib/webpack_rails/node_modules/express/node_modules/send/node_modules/mime/build/test.js +57 -0
  216. data/lib/webpack_rails/node_modules/express/node_modules/send/node_modules/mime/cli.js +8 -0
  217. data/lib/webpack_rails/node_modules/express/node_modules/send/node_modules/mime/mime.js +108 -0
  218. data/lib/webpack_rails/node_modules/express/node_modules/send/node_modules/mime/package.json +73 -0
  219. data/lib/webpack_rails/node_modules/express/node_modules/send/node_modules/mime/types.json +1 -0
  220. data/lib/webpack_rails/node_modules/express/node_modules/send/node_modules/ms/History.md +66 -0
  221. data/lib/webpack_rails/node_modules/express/node_modules/send/node_modules/ms/LICENSE +20 -0
  222. data/lib/webpack_rails/node_modules/express/node_modules/send/node_modules/ms/README.md +35 -0
  223. data/lib/webpack_rails/node_modules/express/node_modules/send/node_modules/ms/index.js +125 -0
  224. data/lib/webpack_rails/node_modules/express/node_modules/send/node_modules/ms/package.json +47 -0
  225. data/lib/webpack_rails/node_modules/express/node_modules/send/node_modules/statuses/LICENSE +22 -0
  226. data/lib/webpack_rails/node_modules/express/node_modules/send/node_modules/statuses/README.md +114 -0
  227. data/lib/webpack_rails/node_modules/express/node_modules/send/node_modules/statuses/codes.json +64 -0
  228. data/lib/webpack_rails/node_modules/express/node_modules/send/node_modules/statuses/index.js +60 -0
  229. data/lib/webpack_rails/node_modules/express/node_modules/send/node_modules/statuses/package.json +84 -0
  230. data/lib/webpack_rails/node_modules/express/node_modules/send/package.json +89 -0
  231. data/lib/webpack_rails/node_modules/express/node_modules/serve-static/HISTORY.md +284 -0
  232. data/lib/webpack_rails/node_modules/express/node_modules/serve-static/LICENSE +25 -0
  233. data/lib/webpack_rails/node_modules/express/node_modules/serve-static/README.md +235 -0
  234. data/lib/webpack_rails/node_modules/express/node_modules/serve-static/index.js +187 -0
  235. data/lib/webpack_rails/node_modules/express/node_modules/serve-static/package.json +83 -0
  236. data/lib/webpack_rails/node_modules/express/node_modules/type-is/HISTORY.md +180 -0
  237. data/lib/webpack_rails/node_modules/express/node_modules/type-is/LICENSE +23 -0
  238. data/lib/webpack_rails/node_modules/express/node_modules/type-is/README.md +132 -0
  239. data/lib/webpack_rails/node_modules/express/node_modules/type-is/index.js +262 -0
  240. data/lib/webpack_rails/node_modules/express/node_modules/type-is/node_modules/media-typer/HISTORY.md +22 -0
  241. data/lib/webpack_rails/node_modules/express/node_modules/type-is/node_modules/media-typer/LICENSE +22 -0
  242. data/lib/webpack_rails/node_modules/express/node_modules/type-is/node_modules/media-typer/README.md +81 -0
  243. data/lib/webpack_rails/node_modules/express/node_modules/type-is/node_modules/media-typer/index.js +270 -0
  244. data/lib/webpack_rails/node_modules/express/node_modules/type-is/node_modules/media-typer/package.json +58 -0
  245. data/lib/webpack_rails/node_modules/express/node_modules/type-is/node_modules/mime-types/HISTORY.md +171 -0
  246. data/lib/webpack_rails/node_modules/express/node_modules/type-is/node_modules/mime-types/LICENSE +23 -0
  247. data/lib/webpack_rails/node_modules/express/node_modules/type-is/node_modules/mime-types/README.md +103 -0
  248. data/lib/webpack_rails/node_modules/express/node_modules/type-is/node_modules/mime-types/index.js +188 -0
  249. data/lib/webpack_rails/node_modules/express/node_modules/type-is/node_modules/mime-types/node_modules/mime-db/HISTORY.md +274 -0
  250. data/lib/webpack_rails/node_modules/express/node_modules/type-is/node_modules/mime-types/node_modules/mime-db/LICENSE +22 -0
  251. data/lib/webpack_rails/node_modules/express/node_modules/type-is/node_modules/mime-types/node_modules/mime-db/README.md +82 -0
  252. data/lib/webpack_rails/node_modules/express/node_modules/type-is/node_modules/mime-types/node_modules/mime-db/db.json +6474 -0
  253. data/lib/webpack_rails/node_modules/express/node_modules/type-is/node_modules/mime-types/node_modules/mime-db/index.js +11 -0
  254. data/lib/webpack_rails/node_modules/express/node_modules/type-is/node_modules/mime-types/node_modules/mime-db/package.json +94 -0
  255. data/lib/webpack_rails/node_modules/express/node_modules/type-is/node_modules/mime-types/package.json +84 -0
  256. data/lib/webpack_rails/node_modules/express/node_modules/type-is/package.json +93 -0
  257. data/lib/webpack_rails/node_modules/express/node_modules/utils-merge/LICENSE +20 -0
  258. data/lib/webpack_rails/node_modules/express/node_modules/utils-merge/README.md +34 -0
  259. data/lib/webpack_rails/node_modules/express/node_modules/utils-merge/index.js +23 -0
  260. data/lib/webpack_rails/node_modules/express/node_modules/utils-merge/package.json +58 -0
  261. data/lib/webpack_rails/node_modules/express/node_modules/vary/HISTORY.md +23 -0
  262. data/lib/webpack_rails/node_modules/express/node_modules/vary/LICENSE +22 -0
  263. data/lib/webpack_rails/node_modules/express/node_modules/vary/README.md +91 -0
  264. data/lib/webpack_rails/node_modules/express/node_modules/vary/index.js +117 -0
  265. data/lib/webpack_rails/node_modules/express/node_modules/vary/package.json +72 -0
  266. data/lib/webpack_rails/node_modules/express/package.json +167 -0
  267. data/lib/webpack_rails/node_modules/is-array/History.md +11 -0
  268. data/lib/webpack_rails/node_modules/is-array/Makefile +11 -0
  269. data/lib/webpack_rails/node_modules/is-array/Readme.md +27 -0
  270. data/lib/webpack_rails/node_modules/is-array/component.json +13 -0
  271. data/lib/webpack_rails/node_modules/is-array/index.js +33 -0
  272. data/lib/webpack_rails/node_modules/is-array/package.json +41 -0
  273. data/lib/webpack_rails/node_modules/is-array/test/test.html +46 -0
  274. data/lib/webpack_rails/node_modules/is-object/LICENSE +19 -0
  275. data/lib/webpack_rails/node_modules/is-object/README.md +55 -0
  276. data/lib/webpack_rails/node_modules/is-object/index.js +5 -0
  277. data/lib/webpack_rails/node_modules/is-object/package.json +91 -0
  278. data/lib/webpack_rails/node_modules/is-object/test/index.js +23 -0
  279. data/lib/webpack_rails/node_modules/is-string/CHANGELOG.md +19 -0
  280. data/lib/webpack_rails/node_modules/is-string/LICENSE +22 -0
  281. data/lib/webpack_rails/node_modules/is-string/Makefile +61 -0
  282. data/lib/webpack_rails/node_modules/is-string/README.md +57 -0
  283. data/lib/webpack_rails/node_modules/is-string/index.js +20 -0
  284. data/lib/webpack_rails/node_modules/is-string/package.json +93 -0
  285. data/lib/webpack_rails/node_modules/is-string/test.js +36 -0
  286. data/lib/webpack_rails/node_modules/js-string-escape/CHANGELOG.md +9 -0
  287. data/lib/webpack_rails/node_modules/js-string-escape/LICENSE +21 -0
  288. data/lib/webpack_rails/node_modules/js-string-escape/README.md +44 -0
  289. data/lib/webpack_rails/node_modules/js-string-escape/index.js +22 -0
  290. data/lib/webpack_rails/node_modules/js-string-escape/package.json +63 -0
  291. data/lib/webpack_rails/node_modules/js-string-escape/test/test.js +43 -0
  292. data/lib/webpack_rails/node_modules/strip-ansi/index.js +6 -0
  293. data/lib/webpack_rails/node_modules/strip-ansi/license +21 -0
  294. data/lib/webpack_rails/node_modules/strip-ansi/node_modules/ansi-regex/index.js +4 -0
  295. data/lib/webpack_rails/node_modules/strip-ansi/node_modules/ansi-regex/license +21 -0
  296. data/lib/webpack_rails/node_modules/strip-ansi/node_modules/ansi-regex/package.json +86 -0
  297. data/lib/webpack_rails/node_modules/strip-ansi/node_modules/ansi-regex/readme.md +31 -0
  298. data/lib/webpack_rails/node_modules/strip-ansi/package.json +85 -0
  299. data/lib/webpack_rails/node_modules/strip-ansi/readme.md +33 -0
  300. data/lib/webpack_rails/node_modules/webpack-hot-middleware/README.md +109 -0
  301. data/lib/webpack_rails/node_modules/webpack-hot-middleware/client-overlay.js +35 -0
  302. data/lib/webpack_rails/node_modules/webpack-hot-middleware/client.js +131 -0
  303. data/lib/webpack_rails/node_modules/webpack-hot-middleware/example/README.md +15 -0
  304. data/lib/webpack_rails/node_modules/webpack-hot-middleware/example/client.js +30 -0
  305. data/lib/webpack_rails/node_modules/webpack-hot-middleware/example/index.html +18 -0
  306. data/lib/webpack_rails/node_modules/webpack-hot-middleware/example/package.json +14 -0
  307. data/lib/webpack_rails/node_modules/webpack-hot-middleware/example/server.js +41 -0
  308. data/lib/webpack_rails/node_modules/webpack-hot-middleware/example/webpack.config.js +22 -0
  309. data/lib/webpack_rails/node_modules/webpack-hot-middleware/helpers.js +8 -0
  310. data/lib/webpack_rails/node_modules/webpack-hot-middleware/middleware.js +83 -0
  311. data/lib/webpack_rails/node_modules/webpack-hot-middleware/node_modules/querystring/History.md +20 -0
  312. data/lib/webpack_rails/node_modules/webpack-hot-middleware/node_modules/querystring/License.md +19 -0
  313. data/lib/webpack_rails/node_modules/webpack-hot-middleware/node_modules/querystring/Readme.md +15 -0
  314. data/lib/webpack_rails/node_modules/webpack-hot-middleware/node_modules/querystring/decode.js +80 -0
  315. data/lib/webpack_rails/node_modules/webpack-hot-middleware/node_modules/querystring/encode.js +64 -0
  316. data/lib/webpack_rails/node_modules/webpack-hot-middleware/node_modules/querystring/index.js +4 -0
  317. data/lib/webpack_rails/node_modules/webpack-hot-middleware/node_modules/querystring/package.json +96 -0
  318. data/lib/webpack_rails/node_modules/webpack-hot-middleware/node_modules/querystring/test/common-index.js +3 -0
  319. data/lib/webpack_rails/node_modules/webpack-hot-middleware/node_modules/querystring/test/index.js +210 -0
  320. data/lib/webpack_rails/node_modules/webpack-hot-middleware/node_modules/querystring/test/tap-index.js +3 -0
  321. data/lib/webpack_rails/node_modules/webpack-hot-middleware/node_modules/strip-ansi/cli.js +47 -0
  322. data/lib/webpack_rails/node_modules/webpack-hot-middleware/node_modules/strip-ansi/index.js +6 -0
  323. data/lib/webpack_rails/node_modules/webpack-hot-middleware/node_modules/strip-ansi/node_modules/ansi-regex/index.js +4 -0
  324. data/lib/webpack_rails/node_modules/webpack-hot-middleware/node_modules/strip-ansi/node_modules/ansi-regex/license +21 -0
  325. data/lib/webpack_rails/node_modules/webpack-hot-middleware/node_modules/strip-ansi/node_modules/ansi-regex/package.json +86 -0
  326. data/lib/webpack_rails/node_modules/webpack-hot-middleware/node_modules/strip-ansi/node_modules/ansi-regex/readme.md +33 -0
  327. data/lib/webpack_rails/node_modules/webpack-hot-middleware/node_modules/strip-ansi/package.json +89 -0
  328. data/lib/webpack_rails/node_modules/webpack-hot-middleware/node_modules/strip-ansi/readme.md +43 -0
  329. data/lib/webpack_rails/node_modules/webpack-hot-middleware/package.json +58 -0
  330. data/lib/webpack_rails/node_modules/webpack-hot-middleware/process-update.js +105 -0
  331. data/lib/webpack_rails/node_modules/webpack-hot-middleware/test/client-test.js +81 -0
  332. data/lib/webpack_rails/node_modules/webpack-hot-middleware/test/helpers-test.js +22 -0
  333. data/lib/webpack_rails/node_modules/webpack-hot-middleware/test/middleware-test.js +188 -0
  334. data/lib/webpack_rails/node_modules/webpack-hot-middleware/test/mocha.opts +1 -0
  335. data/lib/webpack_rails/node_modules/xtend/LICENCE +19 -0
  336. data/lib/webpack_rails/node_modules/xtend/Makefile +4 -0
  337. data/lib/webpack_rails/node_modules/xtend/README.md +32 -0
  338. data/lib/webpack_rails/node_modules/xtend/immutable.js +17 -0
  339. data/lib/webpack_rails/node_modules/xtend/mutable.js +15 -0
  340. data/lib/webpack_rails/node_modules/xtend/package.json +88 -0
  341. data/lib/webpack_rails/node_modules/xtend/test.js +63 -0
  342. data/lib/webpack_rails/package.json +22 -0
  343. data/lib/webpack_rails/processor.rb +28 -9
  344. data/lib/webpack_rails/require_directive_processor.rb +51 -0
  345. data/lib/webpack_rails/sprockets_environment.rb +45 -0
  346. data/lib/webpack_rails/task.rb +51 -22
  347. data/lib/webpack_rails/webpack-task-dev-server.js +122 -0
  348. data/lib/webpack_rails/{webpack-task.js → webpack-task-watch.js} +0 -0
  349. data/lib/webpack_rails/webpack.rake +5 -5
  350. data/lib/webpack_rails.rb +1 -3
  351. metadata +346 -5
  352. data/lib/webpack_rails/sprockets_base_webpack.rb +0 -14
  353. data/lib/webpack_rails/sprockets_index_webpack.rb +0 -15
@@ -0,0 +1,66 @@
1
+ {
2
+ "name": "depd",
3
+ "description": "Deprecate all the things",
4
+ "version": "1.0.1",
5
+ "author": {
6
+ "name": "Douglas Christopher Wilson",
7
+ "email": "doug@somethingdoug.com"
8
+ },
9
+ "license": "MIT",
10
+ "keywords": [
11
+ "deprecate",
12
+ "deprecated"
13
+ ],
14
+ "repository": {
15
+ "type": "git",
16
+ "url": "git+https://github.com/dougwilson/nodejs-depd.git"
17
+ },
18
+ "devDependencies": {
19
+ "benchmark": "1.0.0",
20
+ "beautify-benchmark": "0.2.4",
21
+ "istanbul": "0.3.5",
22
+ "mocha": "~1.21.5"
23
+ },
24
+ "files": [
25
+ "lib/",
26
+ "History.md",
27
+ "LICENSE",
28
+ "index.js",
29
+ "Readme.md"
30
+ ],
31
+ "engines": {
32
+ "node": ">= 0.6"
33
+ },
34
+ "scripts": {
35
+ "bench": "node benchmark/index.js",
36
+ "test": "mocha --reporter spec --bail test/",
37
+ "test-ci": "istanbul cover node_modules/mocha/bin/_mocha --report lcovonly -- --reporter spec --no-exit test/",
38
+ "test-cov": "istanbul cover node_modules/mocha/bin/_mocha -- --reporter dot test/"
39
+ },
40
+ "gitHead": "769e0f8108463c35a6937a9d634ab19fee45100a",
41
+ "bugs": {
42
+ "url": "https://github.com/dougwilson/nodejs-depd/issues"
43
+ },
44
+ "homepage": "https://github.com/dougwilson/nodejs-depd",
45
+ "_id": "depd@1.0.1",
46
+ "_shasum": "80aec64c9d6d97e65cc2a9caa93c0aa6abf73aaa",
47
+ "_from": "depd@>=1.0.1 <1.1.0",
48
+ "_npmVersion": "1.4.28",
49
+ "_npmUser": {
50
+ "name": "dougwilson",
51
+ "email": "doug@somethingdoug.com"
52
+ },
53
+ "maintainers": [
54
+ {
55
+ "name": "dougwilson",
56
+ "email": "doug@somethingdoug.com"
57
+ }
58
+ ],
59
+ "dist": {
60
+ "shasum": "80aec64c9d6d97e65cc2a9caa93c0aa6abf73aaa",
61
+ "tarball": "http://registry.npmjs.org/depd/-/depd-1.0.1.tgz"
62
+ },
63
+ "directories": {},
64
+ "_resolved": "http://registry.npmjs.org/depd/-/depd-1.0.1.tgz",
65
+ "readme": "ERROR: No README data found!"
66
+ }
@@ -0,0 +1,22 @@
1
+ (The MIT License)
2
+
3
+ Copyright (c) 2012-2013 TJ Holowaychuk
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining
6
+ a copy of this software and associated documentation files (the
7
+ 'Software'), to deal in the Software without restriction, including
8
+ without limitation the rights to use, copy, modify, merge, publish,
9
+ distribute, sublicense, and/or sell copies of the Software, and to
10
+ permit persons to whom the Software is furnished to do so, subject to
11
+ the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be
14
+ included in all copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
17
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
19
+ IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
20
+ CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
21
+ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
22
+ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -0,0 +1,15 @@
1
+
2
+ # escape-html
3
+
4
+ Escape HTML entities
5
+
6
+ ## Example
7
+
8
+ ```js
9
+ var escape = require('escape-html');
10
+ escape(str);
11
+ ```
12
+
13
+ ## License
14
+
15
+ MIT
@@ -0,0 +1,29 @@
1
+ /*!
2
+ * escape-html
3
+ * Copyright(c) 2012-2013 TJ Holowaychuk
4
+ * MIT Licensed
5
+ */
6
+
7
+ /**
8
+ * Module exports.
9
+ * @public
10
+ */
11
+
12
+ module.exports = escapeHtml;
13
+
14
+ /**
15
+ * Escape special characters in the given string of html.
16
+ *
17
+ * @param {string} str The string to escape for inserting into HTML
18
+ * @return {string}
19
+ * @public
20
+ */
21
+
22
+ function escapeHtml(html) {
23
+ return String(html)
24
+ .replace(/&/g, '&amp;')
25
+ .replace(/"/g, '&quot;')
26
+ .replace(/'/g, '&#39;')
27
+ .replace(/</g, '&lt;')
28
+ .replace(/>/g, '&gt;');
29
+ }
@@ -0,0 +1,51 @@
1
+ {
2
+ "name": "escape-html",
3
+ "description": "Escape HTML entities",
4
+ "version": "1.0.2",
5
+ "license": "MIT",
6
+ "keywords": [
7
+ "escape",
8
+ "html",
9
+ "utility"
10
+ ],
11
+ "repository": {
12
+ "type": "git",
13
+ "url": "git+https://github.com/component/escape-html.git"
14
+ },
15
+ "files": [
16
+ "LICENSE",
17
+ "Readme.md",
18
+ "index.js"
19
+ ],
20
+ "gitHead": "2477a23ae56f75e0a5622a20b5b55da00de3a23b",
21
+ "bugs": {
22
+ "url": "https://github.com/component/escape-html/issues"
23
+ },
24
+ "homepage": "https://github.com/component/escape-html",
25
+ "_id": "escape-html@1.0.2",
26
+ "scripts": {},
27
+ "_shasum": "d77d32fa98e38c2f41ae85e9278e0e0e6ba1022c",
28
+ "_from": "escape-html@1.0.2",
29
+ "_npmVersion": "1.4.28",
30
+ "_npmUser": {
31
+ "name": "dougwilson",
32
+ "email": "doug@somethingdoug.com"
33
+ },
34
+ "maintainers": [
35
+ {
36
+ "name": "tjholowaychuk",
37
+ "email": "tj@vision-media.ca"
38
+ },
39
+ {
40
+ "name": "dougwilson",
41
+ "email": "doug@somethingdoug.com"
42
+ }
43
+ ],
44
+ "dist": {
45
+ "shasum": "d77d32fa98e38c2f41ae85e9278e0e0e6ba1022c",
46
+ "tarball": "http://registry.npmjs.org/escape-html/-/escape-html-1.0.2.tgz"
47
+ },
48
+ "directories": {},
49
+ "_resolved": "http://registry.npmjs.org/escape-html/-/escape-html-1.0.2.tgz",
50
+ "readme": "ERROR: No README data found!"
51
+ }
@@ -0,0 +1,71 @@
1
+ 1.7.0 / 2015-06-08
2
+ ==================
3
+
4
+ * Always include entity length in ETags for hash length extensions
5
+ * Generate non-Stats ETags using MD5 only (no longer CRC32)
6
+ * Improve stat performance by removing hashing
7
+ * Remove base64 padding in ETags to shorten
8
+ * Use MD5 instead of MD4 in weak ETags over 1KB
9
+
10
+ 1.6.0 / 2015-05-10
11
+ ==================
12
+
13
+ * Improve support for JXcore
14
+ * Remove requirement of `atime` in the stats object
15
+ * Support "fake" stats objects in environments without `fs`
16
+
17
+ 1.5.1 / 2014-11-19
18
+ ==================
19
+
20
+ * deps: crc@3.2.1
21
+ - Minor fixes
22
+
23
+ 1.5.0 / 2014-10-14
24
+ ==================
25
+
26
+ * Improve string performance
27
+ * Slightly improve speed for weak ETags over 1KB
28
+
29
+ 1.4.0 / 2014-09-21
30
+ ==================
31
+
32
+ * Support "fake" stats objects
33
+ * Support Node.js 0.6
34
+
35
+ 1.3.1 / 2014-09-14
36
+ ==================
37
+
38
+ * Use the (new and improved) `crc` for crc32
39
+
40
+ 1.3.0 / 2014-08-29
41
+ ==================
42
+
43
+ * Default strings to strong ETags
44
+ * Improve speed for weak ETags over 1KB
45
+
46
+ 1.2.1 / 2014-08-29
47
+ ==================
48
+
49
+ * Use the (much faster) `buffer-crc32` for crc32
50
+
51
+ 1.2.0 / 2014-08-24
52
+ ==================
53
+
54
+ * Add support for file stat objects
55
+
56
+ 1.1.0 / 2014-08-24
57
+ ==================
58
+
59
+ * Add fast-path for empty entity
60
+ * Add weak ETag generation
61
+ * Shrink size of generated ETags
62
+
63
+ 1.0.1 / 2014-08-24
64
+ ==================
65
+
66
+ * Fix behavior of string containing Unicode
67
+
68
+ 1.0.0 / 2014-05-18
69
+ ==================
70
+
71
+ * Initial release
@@ -0,0 +1,22 @@
1
+ (The MIT License)
2
+
3
+ Copyright (c) 2014-2015 Douglas Christopher Wilson
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining
6
+ a copy of this software and associated documentation files (the
7
+ 'Software'), to deal in the Software without restriction, including
8
+ without limitation the rights to use, copy, modify, merge, publish,
9
+ distribute, sublicense, and/or sell copies of the Software, and to
10
+ permit persons to whom the Software is furnished to do so, subject to
11
+ the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be
14
+ included in all copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
17
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
19
+ IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
20
+ CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
21
+ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
22
+ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -0,0 +1,165 @@
1
+ # etag
2
+
3
+ [![NPM Version][npm-image]][npm-url]
4
+ [![NPM Downloads][downloads-image]][downloads-url]
5
+ [![Node.js Version][node-version-image]][node-version-url]
6
+ [![Build Status][travis-image]][travis-url]
7
+ [![Test Coverage][coveralls-image]][coveralls-url]
8
+
9
+ Create simple ETags
10
+
11
+ ## Installation
12
+
13
+ ```sh
14
+ $ npm install etag
15
+ ```
16
+
17
+ ## API
18
+
19
+ ```js
20
+ var etag = require('etag')
21
+ ```
22
+
23
+ ### etag(entity, [options])
24
+
25
+ Generate a strong ETag for the given entity. This should be the complete
26
+ body of the entity. Strings, `Buffer`s, and `fs.Stats` are accepted. By
27
+ default, a strong ETag is generated except for `fs.Stats`, which will
28
+ generate a weak ETag (this can be overwritten by `options.weak`).
29
+
30
+ ```js
31
+ res.setHeader('ETag', etag(body))
32
+ ```
33
+
34
+ #### Options
35
+
36
+ `etag` accepts these properties in the options object.
37
+
38
+ ##### weak
39
+
40
+ Specifies if the generated ETag will include the weak validator mark (that
41
+ is, the leading `W/`). The actual entity tag is the same. The default value
42
+ is `false`, unless the `entity` is `fs.Stats`, in which case it is `true`.
43
+
44
+ ## Testing
45
+
46
+ ```sh
47
+ $ npm test
48
+ ```
49
+
50
+ ## Benchmark
51
+
52
+ ```bash
53
+ $ npm run-script bench
54
+
55
+ > etag@1.6.0 bench nodejs-etag
56
+ > node benchmark/index.js
57
+
58
+ http_parser@1.0
59
+ node@0.10.33
60
+ v8@3.14.5.9
61
+ ares@1.9.0-DEV
62
+ uv@0.10.29
63
+ zlib@1.2.3
64
+ modules@11
65
+ openssl@1.0.1j
66
+
67
+ > node benchmark/body0-100b.js
68
+
69
+ 100B body
70
+
71
+ 1 test completed.
72
+ 2 tests completed.
73
+ 3 tests completed.
74
+ 4 tests completed.
75
+
76
+ * buffer - strong x 289,198 ops/sec ±1.09% (190 runs sampled)
77
+ * buffer - weak x 287,838 ops/sec ±0.91% (189 runs sampled)
78
+ * string - strong x 284,586 ops/sec ±1.05% (192 runs sampled)
79
+ * string - weak x 287,439 ops/sec ±0.82% (192 runs sampled)
80
+
81
+ > node benchmark/body1-1kb.js
82
+
83
+ 1KB body
84
+
85
+ 1 test completed.
86
+ 2 tests completed.
87
+ 3 tests completed.
88
+ 4 tests completed.
89
+
90
+ * buffer - strong x 212,423 ops/sec ±0.75% (193 runs sampled)
91
+ * buffer - weak x 211,871 ops/sec ±0.74% (194 runs sampled)
92
+ string - strong x 205,291 ops/sec ±0.86% (194 runs sampled)
93
+ string - weak x 208,463 ops/sec ±0.79% (192 runs sampled)
94
+
95
+ > node benchmark/body2-5kb.js
96
+
97
+ 5KB body
98
+
99
+ 1 test completed.
100
+ 2 tests completed.
101
+ 3 tests completed.
102
+ 4 tests completed.
103
+
104
+ * buffer - strong x 92,901 ops/sec ±0.58% (195 runs sampled)
105
+ * buffer - weak x 93,045 ops/sec ±0.65% (192 runs sampled)
106
+ string - strong x 89,621 ops/sec ±0.68% (194 runs sampled)
107
+ string - weak x 90,070 ops/sec ±0.70% (196 runs sampled)
108
+
109
+ > node benchmark/body3-10kb.js
110
+
111
+ 10KB body
112
+
113
+ 1 test completed.
114
+ 2 tests completed.
115
+ 3 tests completed.
116
+ 4 tests completed.
117
+
118
+ * buffer - strong x 54,220 ops/sec ±0.85% (192 runs sampled)
119
+ * buffer - weak x 54,069 ops/sec ±0.83% (191 runs sampled)
120
+ string - strong x 53,078 ops/sec ±0.53% (194 runs sampled)
121
+ string - weak x 53,849 ops/sec ±0.47% (197 runs sampled)
122
+
123
+ > node benchmark/body4-100kb.js
124
+
125
+ 100KB body
126
+
127
+ 1 test completed.
128
+ 2 tests completed.
129
+ 3 tests completed.
130
+ 4 tests completed.
131
+
132
+ * buffer - strong x 6,673 ops/sec ±0.15% (197 runs sampled)
133
+ * buffer - weak x 6,716 ops/sec ±0.12% (198 runs sampled)
134
+ string - strong x 6,357 ops/sec ±0.14% (197 runs sampled)
135
+ string - weak x 6,344 ops/sec ±0.21% (197 runs sampled)
136
+
137
+ > node benchmark/stats.js
138
+
139
+ stats
140
+
141
+ 1 test completed.
142
+ 2 tests completed.
143
+ 3 tests completed.
144
+ 4 tests completed.
145
+
146
+ * real - strong x 1,671,989 ops/sec ±0.13% (197 runs sampled)
147
+ * real - weak x 1,681,297 ops/sec ±0.12% (198 runs sampled)
148
+ fake - strong x 927,063 ops/sec ±0.14% (198 runs sampled)
149
+ fake - weak x 914,461 ops/sec ±0.41% (191 runs sampled)
150
+ ```
151
+
152
+ ## License
153
+
154
+ [MIT](LICENSE)
155
+
156
+ [npm-image]: https://img.shields.io/npm/v/etag.svg
157
+ [npm-url]: https://npmjs.org/package/etag
158
+ [node-version-image]: https://img.shields.io/node/v/etag.svg
159
+ [node-version-url]: http://nodejs.org/download/
160
+ [travis-image]: https://img.shields.io/travis/jshttp/etag/master.svg
161
+ [travis-url]: https://travis-ci.org/jshttp/etag
162
+ [coveralls-image]: https://img.shields.io/coveralls/jshttp/etag/master.svg
163
+ [coveralls-url]: https://coveralls.io/r/jshttp/etag?branch=master
164
+ [downloads-image]: https://img.shields.io/npm/dm/etag.svg
165
+ [downloads-url]: https://npmjs.org/package/etag
@@ -0,0 +1,132 @@
1
+ /*!
2
+ * etag
3
+ * Copyright(c) 2014-2015 Douglas Christopher Wilson
4
+ * MIT Licensed
5
+ */
6
+
7
+ 'use strict'
8
+
9
+ /**
10
+ * Module exports.
11
+ * @public
12
+ */
13
+
14
+ module.exports = etag
15
+
16
+ /**
17
+ * Module dependencies.
18
+ * @private
19
+ */
20
+
21
+ var crypto = require('crypto')
22
+ var Stats = require('fs').Stats
23
+
24
+ /**
25
+ * Module variables.
26
+ * @private
27
+ */
28
+
29
+ var base64PadCharRegExp = /=+$/
30
+ var toString = Object.prototype.toString
31
+
32
+ /**
33
+ * Generate an entity tag.
34
+ *
35
+ * @param {Buffer|string} entity
36
+ * @return {string}
37
+ * @private
38
+ */
39
+
40
+ function entitytag(entity) {
41
+ if (entity.length === 0) {
42
+ // fast-path empty
43
+ return '"0-1B2M2Y8AsgTpgAmY7PhCfg"'
44
+ }
45
+
46
+ // compute hash of entity
47
+ var hash = crypto
48
+ .createHash('md5')
49
+ .update(entity, 'utf8')
50
+ .digest('base64')
51
+ .replace(base64PadCharRegExp, '')
52
+
53
+ // compute length of entity
54
+ var len = typeof entity === 'string'
55
+ ? Buffer.byteLength(entity, 'utf8')
56
+ : entity.length
57
+
58
+ return '"' + len.toString(16) + '-' + hash + '"'
59
+ }
60
+
61
+ /**
62
+ * Create a simple ETag.
63
+ *
64
+ * @param {string|Buffer|Stats} entity
65
+ * @param {object} [options]
66
+ * @param {boolean} [options.weak]
67
+ * @return {String}
68
+ * @public
69
+ */
70
+
71
+ function etag(entity, options) {
72
+ if (entity == null) {
73
+ throw new TypeError('argument entity is required')
74
+ }
75
+
76
+ // support fs.Stats object
77
+ var isStats = isstats(entity)
78
+ var weak = options && typeof options.weak === 'boolean'
79
+ ? options.weak
80
+ : isStats
81
+
82
+ // validate argument
83
+ if (!isStats && typeof entity !== 'string' && !Buffer.isBuffer(entity)) {
84
+ throw new TypeError('argument entity must be string, Buffer, or fs.Stats')
85
+ }
86
+
87
+ // generate entity tag
88
+ var tag = isStats
89
+ ? stattag(entity)
90
+ : entitytag(entity)
91
+
92
+ return weak
93
+ ? 'W/' + tag
94
+ : tag
95
+ }
96
+
97
+ /**
98
+ * Determine if object is a Stats object.
99
+ *
100
+ * @param {object} obj
101
+ * @return {boolean}
102
+ * @api private
103
+ */
104
+
105
+ function isstats(obj) {
106
+ // genuine fs.Stats
107
+ if (typeof Stats === 'function' && obj instanceof Stats) {
108
+ return true
109
+ }
110
+
111
+ // quack quack
112
+ return obj && typeof obj === 'object'
113
+ && 'ctime' in obj && toString.call(obj.ctime) === '[object Date]'
114
+ && 'mtime' in obj && toString.call(obj.mtime) === '[object Date]'
115
+ && 'ino' in obj && typeof obj.ino === 'number'
116
+ && 'size' in obj && typeof obj.size === 'number'
117
+ }
118
+
119
+ /**
120
+ * Generate a tag for a stat.
121
+ *
122
+ * @param {object} stat
123
+ * @return {string}
124
+ * @private
125
+ */
126
+
127
+ function stattag(stat) {
128
+ var mtime = stat.mtime.getTime().toString(16)
129
+ var size = stat.size.toString(16)
130
+
131
+ return '"' + size + '-' + mtime + '"'
132
+ }
@@ -0,0 +1,73 @@
1
+ {
2
+ "name": "etag",
3
+ "description": "Create simple ETags",
4
+ "version": "1.7.0",
5
+ "contributors": [
6
+ {
7
+ "name": "Douglas Christopher Wilson",
8
+ "email": "doug@somethingdoug.com"
9
+ },
10
+ {
11
+ "name": "David Björklund",
12
+ "email": "david.bjorklund@gmail.com"
13
+ }
14
+ ],
15
+ "license": "MIT",
16
+ "keywords": [
17
+ "etag",
18
+ "http",
19
+ "res"
20
+ ],
21
+ "repository": {
22
+ "type": "git",
23
+ "url": "git+https://github.com/jshttp/etag.git"
24
+ },
25
+ "devDependencies": {
26
+ "benchmark": "1.0.0",
27
+ "beautify-benchmark": "0.2.4",
28
+ "istanbul": "0.3.14",
29
+ "mocha": "~1.21.4",
30
+ "seedrandom": "2.3.11"
31
+ },
32
+ "files": [
33
+ "LICENSE",
34
+ "HISTORY.md",
35
+ "README.md",
36
+ "index.js"
37
+ ],
38
+ "engines": {
39
+ "node": ">= 0.6"
40
+ },
41
+ "scripts": {
42
+ "bench": "node benchmark/index.js",
43
+ "test": "mocha --reporter spec --bail --check-leaks test/",
44
+ "test-cov": "istanbul cover node_modules/mocha/bin/_mocha -- --reporter dot --check-leaks test/",
45
+ "test-travis": "istanbul cover node_modules/mocha/bin/_mocha --report lcovonly -- --reporter spec --check-leaks test/"
46
+ },
47
+ "gitHead": "a511f5c8c930fd9546dbd88acb080f96bc788cfc",
48
+ "bugs": {
49
+ "url": "https://github.com/jshttp/etag/issues"
50
+ },
51
+ "homepage": "https://github.com/jshttp/etag",
52
+ "_id": "etag@1.7.0",
53
+ "_shasum": "03d30b5f67dd6e632d2945d30d6652731a34d5d8",
54
+ "_from": "etag@>=1.7.0 <1.8.0",
55
+ "_npmVersion": "1.4.28",
56
+ "_npmUser": {
57
+ "name": "dougwilson",
58
+ "email": "doug@somethingdoug.com"
59
+ },
60
+ "maintainers": [
61
+ {
62
+ "name": "dougwilson",
63
+ "email": "doug@somethingdoug.com"
64
+ }
65
+ ],
66
+ "dist": {
67
+ "shasum": "03d30b5f67dd6e632d2945d30d6652731a34d5d8",
68
+ "tarball": "http://registry.npmjs.org/etag/-/etag-1.7.0.tgz"
69
+ },
70
+ "directories": {},
71
+ "_resolved": "http://registry.npmjs.org/etag/-/etag-1.7.0.tgz",
72
+ "readme": "ERROR: No README data found!"
73
+ }