snowball 0.1.21 → 0.1.22

Sign up to get free protection for your applications and to get access to all the features.
Files changed (589) hide show
  1. checksums.yaml +5 -13
  2. data/.gitignore +1 -3
  3. data/{lib/snowball → bin}/roll.js +0 -0
  4. data/lib/snowball/roller.rb +1 -1
  5. data/lib/snowball/version.rb +1 -1
  6. data/node_modules/.bin/browserify +161 -0
  7. data/node_modules/.bin/cake +7 -0
  8. data/node_modules/.bin/coffee +7 -0
  9. data/node_modules/.bin/jade +168 -0
  10. data/node_modules/browserify/.travis.yml +4 -0
  11. data/node_modules/browserify/LICENSE +63 -0
  12. data/node_modules/browserify/README.markdown +172 -0
  13. data/node_modules/browserify/bin/cmd.js +161 -0
  14. data/node_modules/browserify/builtins/__browserify_process.js +55 -0
  15. data/node_modules/browserify/builtins/assert.js +314 -0
  16. data/node_modules/browserify/builtins/child_process.js +2 -0
  17. data/node_modules/browserify/builtins/events.js +178 -0
  18. data/node_modules/browserify/builtins/fs.js +1 -0
  19. data/node_modules/browserify/builtins/https.js +1 -0
  20. data/node_modules/browserify/builtins/net.js +1 -0
  21. data/node_modules/browserify/builtins/path.js +175 -0
  22. data/node_modules/browserify/builtins/querystring.js +250 -0
  23. data/node_modules/browserify/builtins/stream.js +119 -0
  24. data/node_modules/browserify/builtins/string_decoder.js +161 -0
  25. data/node_modules/browserify/builtins/sys.js +1 -0
  26. data/node_modules/browserify/builtins/timers.js +39 -0
  27. data/node_modules/browserify/builtins/tls.js +1 -0
  28. data/node_modules/browserify/builtins/tty.js +2 -0
  29. data/node_modules/browserify/builtins/url.js +604 -0
  30. data/node_modules/browserify/builtins/util.js +351 -0
  31. data/node_modules/browserify/example/debug/browserify.js +219 -0
  32. data/node_modules/browserify/example/debug/build.sh +3 -0
  33. data/node_modules/browserify/example/debug/index.html +7 -0
  34. data/node_modules/browserify/example/debug/js/entry.js +2 -0
  35. data/node_modules/browserify/example/debug/js/thrower.js +3 -0
  36. data/node_modules/browserify/example/debug/server.js +9 -0
  37. data/node_modules/browserify/example/simple-build/browserify.js +368 -0
  38. data/node_modules/browserify/example/simple-build/build.sh +3 -0
  39. data/node_modules/browserify/example/simple-build/index.html +9 -0
  40. data/node_modules/browserify/example/simple-build/js/bar.js +3 -0
  41. data/node_modules/browserify/example/simple-build/js/entry.js +5 -0
  42. data/node_modules/browserify/example/simple-build/js/foo.js +5 -0
  43. data/node_modules/browserify/example/simple-build/server.js +9 -0
  44. data/node_modules/browserify/example/test/b.js +5 -0
  45. data/node_modules/browserify/example/test/bar.js +3 -0
  46. data/node_modules/browserify/example/test/foo.js +3 -0
  47. data/node_modules/browserify/example/test/m.js +3 -0
  48. data/node_modules/browserify/example/test/n.js +3 -0
  49. data/node_modules/browserify/example/using-http/bundle.js +813 -0
  50. data/node_modules/browserify/example/using-http/entry.js +25 -0
  51. data/node_modules/browserify/example/using-http/index.html +9 -0
  52. data/node_modules/browserify/example/using-http/server.js +28 -0
  53. data/node_modules/browserify/index.js +202 -0
  54. data/node_modules/browserify/lib/watch.js +75 -0
  55. data/node_modules/browserify/lib/wrap.js +580 -0
  56. data/node_modules/browserify/lib/wrappers.js +10 -0
  57. data/node_modules/browserify/node_modules/buffer-browserify/.npmignore +1 -0
  58. data/node_modules/browserify/node_modules/buffer-browserify/README.md +11 -0
  59. data/node_modules/browserify/node_modules/buffer-browserify/buffer_ieee754.js +84 -0
  60. data/node_modules/browserify/node_modules/buffer-browserify/index.js +1317 -0
  61. data/node_modules/browserify/node_modules/buffer-browserify/node_modules/base64-js/README.md +14 -0
  62. data/node_modules/browserify/node_modules/buffer-browserify/node_modules/base64-js/lib/b64.js +84 -0
  63. data/node_modules/browserify/node_modules/buffer-browserify/node_modules/base64-js/package.json +30 -0
  64. data/node_modules/browserify/node_modules/buffer-browserify/node_modules/base64-js/test/runner.js +50 -0
  65. data/node_modules/browserify/node_modules/buffer-browserify/package.json +46 -0
  66. data/node_modules/browserify/node_modules/buffer-browserify/test/buffer.js +218 -0
  67. data/node_modules/browserify/node_modules/commondir/README.markdown +45 -0
  68. data/node_modules/browserify/node_modules/commondir/example/base.js +3 -0
  69. data/node_modules/browserify/node_modules/commondir/example/dir.js +3 -0
  70. data/node_modules/browserify/node_modules/commondir/index.js +29 -0
  71. data/node_modules/browserify/node_modules/commondir/package.json +47 -0
  72. data/node_modules/browserify/node_modules/commondir/test/dirs.js +66 -0
  73. data/node_modules/browserify/node_modules/crypto-browserify/.travis.yml +4 -0
  74. data/node_modules/browserify/node_modules/crypto-browserify/example/bundle.js +637 -0
  75. data/node_modules/browserify/node_modules/crypto-browserify/example/index.html +12 -0
  76. data/node_modules/browserify/node_modules/crypto-browserify/example/test.js +4 -0
  77. data/node_modules/browserify/node_modules/crypto-browserify/index.js +74 -0
  78. data/node_modules/browserify/node_modules/crypto-browserify/md5.js +384 -0
  79. data/node_modules/browserify/node_modules/crypto-browserify/package.json +33 -0
  80. data/node_modules/browserify/node_modules/crypto-browserify/readme.markdown +20 -0
  81. data/node_modules/browserify/node_modules/crypto-browserify/rng.js +37 -0
  82. data/node_modules/browserify/node_modules/crypto-browserify/sha.js +210 -0
  83. data/node_modules/browserify/node_modules/crypto-browserify/test/simple.js +35 -0
  84. data/node_modules/browserify/node_modules/deputy/.travis.yml +4 -0
  85. data/node_modules/browserify/node_modules/deputy/README.markdown +55 -0
  86. data/node_modules/browserify/node_modules/deputy/example/cache.js +5 -0
  87. data/node_modules/browserify/node_modules/deputy/index.js +46 -0
  88. data/node_modules/browserify/node_modules/deputy/node_modules/mkdirp/.npmignore +2 -0
  89. data/node_modules/browserify/node_modules/deputy/node_modules/mkdirp/.travis.yml +5 -0
  90. data/node_modules/browserify/node_modules/deputy/node_modules/mkdirp/LICENSE +21 -0
  91. data/node_modules/browserify/node_modules/deputy/node_modules/mkdirp/examples/pow.js +6 -0
  92. data/node_modules/browserify/node_modules/deputy/node_modules/mkdirp/index.js +82 -0
  93. data/node_modules/browserify/node_modules/deputy/node_modules/mkdirp/package.json +34 -0
  94. data/node_modules/browserify/node_modules/deputy/node_modules/mkdirp/readme.markdown +63 -0
  95. data/node_modules/browserify/node_modules/deputy/node_modules/mkdirp/test/chmod.js +38 -0
  96. data/node_modules/browserify/node_modules/deputy/node_modules/mkdirp/test/clobber.js +37 -0
  97. data/node_modules/browserify/node_modules/deputy/node_modules/mkdirp/test/mkdirp.js +28 -0
  98. data/node_modules/browserify/node_modules/deputy/node_modules/mkdirp/test/perm.js +32 -0
  99. data/node_modules/browserify/node_modules/deputy/node_modules/mkdirp/test/perm_sync.js +39 -0
  100. data/node_modules/browserify/node_modules/deputy/node_modules/mkdirp/test/race.js +41 -0
  101. data/node_modules/browserify/node_modules/deputy/node_modules/mkdirp/test/rel.js +32 -0
  102. data/node_modules/browserify/node_modules/deputy/node_modules/mkdirp/test/return.js +25 -0
  103. data/node_modules/browserify/node_modules/deputy/node_modules/mkdirp/test/return_sync.js +24 -0
  104. data/node_modules/browserify/node_modules/deputy/node_modules/mkdirp/test/root.js +18 -0
  105. data/node_modules/browserify/node_modules/deputy/node_modules/mkdirp/test/sync.js +32 -0
  106. data/node_modules/browserify/node_modules/deputy/node_modules/mkdirp/test/umask.js +28 -0
  107. data/node_modules/browserify/node_modules/deputy/node_modules/mkdirp/test/umask_sync.js +32 -0
  108. data/node_modules/browserify/node_modules/deputy/package.json +47 -0
  109. data/node_modules/browserify/node_modules/deputy/test/cache.js +58 -0
  110. data/node_modules/browserify/node_modules/detective/.travis.yml +4 -0
  111. data/node_modules/browserify/node_modules/detective/README.markdown +66 -0
  112. data/node_modules/browserify/node_modules/detective/example/strings.js +6 -0
  113. data/node_modules/browserify/node_modules/detective/example/strings_src.js +3 -0
  114. data/node_modules/browserify/node_modules/detective/index.js +60 -0
  115. data/node_modules/browserify/node_modules/detective/node_modules/.bin/esparse +42 -0
  116. data/node_modules/browserify/node_modules/detective/node_modules/esprima/.travis.yml +5 -0
  117. data/node_modules/browserify/node_modules/detective/node_modules/esprima/LICENSE.BSD +19 -0
  118. data/node_modules/browserify/node_modules/detective/node_modules/esprima/README.md +74 -0
  119. data/node_modules/browserify/node_modules/detective/node_modules/esprima/assets/codemirror/codemirror.css +112 -0
  120. data/node_modules/browserify/node_modules/detective/node_modules/esprima/assets/codemirror/codemirror.js +2972 -0
  121. data/node_modules/browserify/node_modules/detective/node_modules/esprima/assets/codemirror/javascript.js +360 -0
  122. data/node_modules/browserify/node_modules/detective/node_modules/esprima/assets/json2.js +487 -0
  123. data/node_modules/browserify/node_modules/detective/node_modules/esprima/assets/style.css +164 -0
  124. data/node_modules/browserify/node_modules/detective/node_modules/esprima/assets/yui/treeview-min.js +12 -0
  125. data/node_modules/browserify/node_modules/detective/node_modules/esprima/assets/yui/treeview-sprite.gif +0 -0
  126. data/node_modules/browserify/node_modules/detective/node_modules/esprima/assets/yui/treeview.css +7 -0
  127. data/node_modules/browserify/node_modules/detective/node_modules/esprima/assets/yui/yahoo-dom-event.js +14 -0
  128. data/node_modules/browserify/node_modules/detective/node_modules/esprima/bin/esparse.js +42 -0
  129. data/node_modules/browserify/node_modules/detective/node_modules/esprima/changes +92 -0
  130. data/node_modules/browserify/node_modules/detective/node_modules/esprima/cm +696 -0
  131. data/node_modules/browserify/node_modules/detective/node_modules/esprima/demo/checkenv.js +42 -0
  132. data/node_modules/browserify/node_modules/detective/node_modules/esprima/demo/collector.html +82 -0
  133. data/node_modules/browserify/node_modules/detective/node_modules/esprima/demo/collector.js +170 -0
  134. data/node_modules/browserify/node_modules/detective/node_modules/esprima/demo/functiontrace.html +106 -0
  135. data/node_modules/browserify/node_modules/detective/node_modules/esprima/demo/functiontrace.js +123 -0
  136. data/node_modules/browserify/node_modules/detective/node_modules/esprima/demo/parse.css +82 -0
  137. data/node_modules/browserify/node_modules/detective/node_modules/esprima/demo/parse.html +352 -0
  138. data/node_modules/browserify/node_modules/detective/node_modules/esprima/demo/precedence.html +225 -0
  139. data/node_modules/browserify/node_modules/detective/node_modules/esprima/demo/rewrite.html +120 -0
  140. data/node_modules/browserify/node_modules/detective/node_modules/esprima/demo/rewrite.js +71 -0
  141. data/node_modules/browserify/node_modules/detective/node_modules/esprima/esprima.js +3577 -0
  142. data/node_modules/browserify/node_modules/detective/node_modules/esprima/index.html +103 -0
  143. data/node_modules/browserify/node_modules/detective/node_modules/esprima/package.json +42 -0
  144. data/node_modules/browserify/node_modules/detective/node_modules/esprima/test/3rdparty/Tokenizer.js +646 -0
  145. data/node_modules/browserify/node_modules/detective/node_modules/esprima/test/3rdparty/XMLHttpRequest.js +509 -0
  146. data/node_modules/browserify/node_modules/detective/node_modules/esprima/test/3rdparty/ZeParser.js +2185 -0
  147. data/node_modules/browserify/node_modules/detective/node_modules/esprima/test/3rdparty/backbone-0.5.3.js +1158 -0
  148. data/node_modules/browserify/node_modules/detective/node_modules/esprima/test/3rdparty/benchmark.js +3261 -0
  149. data/node_modules/browserify/node_modules/detective/node_modules/esprima/test/3rdparty/escodegen.js +906 -0
  150. data/node_modules/browserify/node_modules/detective/node_modules/esprima/test/3rdparty/esmorph.js +240 -0
  151. data/node_modules/browserify/node_modules/detective/node_modules/esprima/test/3rdparty/ext-core-3.0.0.js +6579 -0
  152. data/node_modules/browserify/node_modules/detective/node_modules/esprima/test/3rdparty/ext-core-3.1.0.js +10255 -0
  153. data/node_modules/browserify/node_modules/detective/node_modules/esprima/test/3rdparty/jquery-1.6.4.js +9046 -0
  154. data/node_modules/browserify/node_modules/detective/node_modules/esprima/test/3rdparty/jquery-1.7.1.js +9266 -0
  155. data/node_modules/browserify/node_modules/detective/node_modules/esprima/test/3rdparty/jquery.mobile-1.0.js +6951 -0
  156. data/node_modules/browserify/node_modules/detective/node_modules/esprima/test/3rdparty/jsdefs.js +731 -0
  157. data/node_modules/browserify/node_modules/detective/node_modules/esprima/test/3rdparty/jslex.js +588 -0
  158. data/node_modules/browserify/node_modules/detective/node_modules/esprima/test/3rdparty/jsparse.js +1921 -0
  159. data/node_modules/browserify/node_modules/detective/node_modules/esprima/test/3rdparty/mootools-1.3.2.js +5952 -0
  160. data/node_modules/browserify/node_modules/detective/node_modules/esprima/test/3rdparty/mootools-1.4.1.js +6297 -0
  161. data/node_modules/browserify/node_modules/detective/node_modules/esprima/test/3rdparty/parse-js.js +1342 -0
  162. data/node_modules/browserify/node_modules/detective/node_modules/esprima/test/3rdparty/platform.js +878 -0
  163. data/node_modules/browserify/node_modules/detective/node_modules/esprima/test/3rdparty/prototype-1.6.1.js +4874 -0
  164. data/node_modules/browserify/node_modules/detective/node_modules/esprima/test/3rdparty/prototype-1.7.0.0.js +6082 -0
  165. data/node_modules/browserify/node_modules/detective/node_modules/esprima/test/3rdparty/underscore-1.2.3.js +981 -0
  166. data/node_modules/browserify/node_modules/detective/node_modules/esprima/test/benchmarks.html +58 -0
  167. data/node_modules/browserify/node_modules/detective/node_modules/esprima/test/benchmarks.js +328 -0
  168. data/node_modules/browserify/node_modules/detective/node_modules/esprima/test/compare.html +140 -0
  169. data/node_modules/browserify/node_modules/detective/node_modules/esprima/test/compare.js +270 -0
  170. data/node_modules/browserify/node_modules/detective/node_modules/esprima/test/compat.html +40 -0
  171. data/node_modules/browserify/node_modules/detective/node_modules/esprima/test/compat.js +239 -0
  172. data/node_modules/browserify/node_modules/detective/node_modules/esprima/test/coverage.footer.html +3 -0
  173. data/node_modules/browserify/node_modules/detective/node_modules/esprima/test/coverage.header.html +37 -0
  174. data/node_modules/browserify/node_modules/detective/node_modules/esprima/test/coverage.html +3617 -0
  175. data/node_modules/browserify/node_modules/detective/node_modules/esprima/test/index.html +36 -0
  176. data/node_modules/browserify/node_modules/detective/node_modules/esprima/test/reflect.js +403 -0
  177. data/node_modules/browserify/node_modules/detective/node_modules/esprima/test/run.js +66 -0
  178. data/node_modules/browserify/node_modules/detective/node_modules/esprima/test/test.js +16659 -0
  179. data/node_modules/browserify/node_modules/detective/node_modules/esprima/tools/generate-unicode-regex.py +164 -0
  180. data/node_modules/browserify/node_modules/detective/node_modules/esprima/tools/update-coverage.sh +28 -0
  181. data/node_modules/browserify/node_modules/detective/package.json +47 -0
  182. data/node_modules/browserify/node_modules/detective/test/both.js +11 -0
  183. data/node_modules/browserify/node_modules/detective/test/chained.js +9 -0
  184. data/node_modules/browserify/node_modules/detective/test/files/both.js +4 -0
  185. data/node_modules/browserify/node_modules/detective/test/files/chained.js +5 -0
  186. data/node_modules/browserify/node_modules/detective/test/files/nested.js +22 -0
  187. data/node_modules/browserify/node_modules/detective/test/files/skip.js +7 -0
  188. data/node_modules/browserify/node_modules/detective/test/files/strings.js +13 -0
  189. data/node_modules/browserify/node_modules/detective/test/files/word.js +13 -0
  190. data/node_modules/browserify/node_modules/detective/test/nested.js +9 -0
  191. data/node_modules/browserify/node_modules/detective/test/skip.js +9 -0
  192. data/node_modules/browserify/node_modules/detective/test/strings.js +9 -0
  193. data/node_modules/browserify/node_modules/detective/test/word.js +12 -0
  194. data/node_modules/browserify/node_modules/http-browserify/.npmignore +1 -0
  195. data/node_modules/browserify/node_modules/http-browserify/example/get/index.html +9 -0
  196. data/node_modules/browserify/node_modules/http-browserify/example/get/main.js +14 -0
  197. data/node_modules/browserify/node_modules/http-browserify/example/get/server.js +12 -0
  198. data/node_modules/browserify/node_modules/http-browserify/example/headers/index.html +9 -0
  199. data/node_modules/browserify/node_modules/http-browserify/example/headers/main.js +18 -0
  200. data/node_modules/browserify/node_modules/http-browserify/example/headers/server.js +15 -0
  201. data/node_modules/browserify/node_modules/http-browserify/example/json-stream/data.json +139 -0
  202. data/node_modules/browserify/node_modules/http-browserify/example/json-stream/index.html +9 -0
  203. data/node_modules/browserify/node_modules/http-browserify/example/json-stream/main.js +13 -0
  204. data/node_modules/browserify/node_modules/http-browserify/example/json-stream/node_modules/JSONStream/.npmignore +2 -0
  205. data/node_modules/browserify/node_modules/http-browserify/example/json-stream/node_modules/JSONStream/.travis.yml +4 -0
  206. data/node_modules/browserify/node_modules/http-browserify/example/json-stream/node_modules/JSONStream/LICENSE.APACHE2 +15 -0
  207. data/node_modules/browserify/node_modules/http-browserify/example/json-stream/node_modules/JSONStream/LICENSE.MIT +24 -0
  208. data/node_modules/browserify/node_modules/http-browserify/example/json-stream/node_modules/JSONStream/examples/all_docs.js +13 -0
  209. data/node_modules/browserify/node_modules/http-browserify/example/json-stream/node_modules/JSONStream/index.js +189 -0
  210. data/node_modules/browserify/node_modules/http-browserify/example/json-stream/node_modules/JSONStream/node_modules/jsonparse/LICENSE +24 -0
  211. data/node_modules/browserify/node_modules/http-browserify/example/json-stream/node_modules/JSONStream/node_modules/jsonparse/README.markdown +11 -0
  212. data/node_modules/browserify/node_modules/http-browserify/example/json-stream/node_modules/JSONStream/node_modules/jsonparse/bench.js +26 -0
  213. data/node_modules/browserify/node_modules/http-browserify/example/json-stream/node_modules/JSONStream/node_modules/jsonparse/examples/twitterfeed.js +30 -0
  214. data/node_modules/browserify/node_modules/http-browserify/example/json-stream/node_modules/JSONStream/node_modules/jsonparse/jsonparse.js +379 -0
  215. data/node_modules/browserify/node_modules/http-browserify/example/json-stream/node_modules/JSONStream/node_modules/jsonparse/package.json +36 -0
  216. data/node_modules/browserify/node_modules/http-browserify/example/json-stream/node_modules/JSONStream/node_modules/jsonparse/samplejson/basic.json +167 -0
  217. data/node_modules/browserify/node_modules/http-browserify/example/json-stream/node_modules/JSONStream/node_modules/jsonparse/samplejson/basic2.json +180 -0
  218. data/node_modules/browserify/node_modules/http-browserify/example/json-stream/node_modules/JSONStream/node_modules/jsonparse/test/primitives.js +54 -0
  219. data/node_modules/browserify/node_modules/http-browserify/example/json-stream/node_modules/JSONStream/node_modules/jsonparse/test/utf8.js +38 -0
  220. data/node_modules/browserify/node_modules/http-browserify/example/json-stream/node_modules/JSONStream/package.json +40 -0
  221. data/node_modules/browserify/node_modules/http-browserify/example/json-stream/node_modules/JSONStream/readme.markdown +145 -0
  222. data/node_modules/browserify/node_modules/http-browserify/example/json-stream/node_modules/JSONStream/test/bool.js +41 -0
  223. data/node_modules/browserify/node_modules/http-browserify/example/json-stream/node_modules/JSONStream/test/destroy_missing.js +22 -0
  224. data/node_modules/browserify/node_modules/http-browserify/example/json-stream/node_modules/JSONStream/test/empty.js +44 -0
  225. data/node_modules/browserify/node_modules/http-browserify/example/json-stream/node_modules/JSONStream/test/fixtures/all_npm.json +4030 -0
  226. data/node_modules/browserify/node_modules/http-browserify/example/json-stream/node_modules/JSONStream/test/fn.js +39 -0
  227. data/node_modules/browserify/node_modules/http-browserify/example/json-stream/node_modules/JSONStream/test/memory.js +69 -0
  228. data/node_modules/browserify/node_modules/http-browserify/example/json-stream/node_modules/JSONStream/test/multiple_objects.js +42 -0
  229. data/node_modules/browserify/node_modules/http-browserify/example/json-stream/node_modules/JSONStream/test/multiple_objects_error.js +35 -0
  230. data/node_modules/browserify/node_modules/http-browserify/example/json-stream/node_modules/JSONStream/test/parsejson.js +28 -0
  231. data/node_modules/browserify/node_modules/http-browserify/example/json-stream/node_modules/JSONStream/test/stringify.js +41 -0
  232. data/node_modules/browserify/node_modules/http-browserify/example/json-stream/node_modules/JSONStream/test/stringify_object.js +47 -0
  233. data/node_modules/browserify/node_modules/http-browserify/example/json-stream/node_modules/JSONStream/test/test.js +35 -0
  234. data/node_modules/browserify/node_modules/http-browserify/example/json-stream/node_modules/JSONStream/test/test2.js +29 -0
  235. data/node_modules/browserify/node_modules/http-browserify/example/json-stream/node_modules/JSONStream/test/two-ways.js +41 -0
  236. data/node_modules/browserify/node_modules/http-browserify/example/json-stream/server.js +10 -0
  237. data/node_modules/browserify/node_modules/http-browserify/example/post/index.html +9 -0
  238. data/node_modules/browserify/node_modules/http-browserify/example/post/main.js +16 -0
  239. data/node_modules/browserify/node_modules/http-browserify/example/post/server.js +19 -0
  240. data/node_modules/browserify/node_modules/http-browserify/example/streaming/index.html +9 -0
  241. data/node_modules/browserify/node_modules/http-browserify/example/streaming/main.js +16 -0
  242. data/node_modules/browserify/node_modules/http-browserify/example/streaming/server.js +21 -0
  243. data/node_modules/browserify/node_modules/http-browserify/index.js +59 -0
  244. data/node_modules/browserify/node_modules/http-browserify/lib/request.js +128 -0
  245. data/node_modules/browserify/node_modules/http-browserify/lib/response.js +119 -0
  246. data/node_modules/browserify/node_modules/http-browserify/node_modules/concat-stream/index.js +48 -0
  247. data/node_modules/browserify/node_modules/http-browserify/node_modules/concat-stream/package.json +30 -0
  248. data/node_modules/browserify/node_modules/http-browserify/node_modules/concat-stream/readme.md +31 -0
  249. data/node_modules/browserify/node_modules/http-browserify/node_modules/concat-stream/test.js +34 -0
  250. data/node_modules/browserify/node_modules/http-browserify/package.json +46 -0
  251. data/node_modules/browserify/node_modules/http-browserify/readme.markdown +128 -0
  252. data/node_modules/browserify/node_modules/nub/README.markdown +23 -0
  253. data/node_modules/browserify/node_modules/nub/index.js +64 -0
  254. data/node_modules/browserify/node_modules/nub/package.json +46 -0
  255. data/node_modules/browserify/node_modules/nub/test/by.js +51 -0
  256. data/node_modules/browserify/node_modules/nub/test/nub.js +46 -0
  257. data/node_modules/browserify/node_modules/resolve/.travis.yml +4 -0
  258. data/node_modules/browserify/node_modules/resolve/LICENSE +18 -0
  259. data/node_modules/browserify/node_modules/resolve/README.markdown +47 -0
  260. data/node_modules/browserify/node_modules/resolve/index.js +106 -0
  261. data/node_modules/browserify/node_modules/resolve/package.json +45 -0
  262. data/node_modules/browserify/node_modules/resolve/test/core.js +12 -0
  263. data/node_modules/browserify/node_modules/resolve/test/filter.js +15 -0
  264. data/node_modules/browserify/node_modules/resolve/test/mock.js +64 -0
  265. data/node_modules/browserify/node_modules/resolve/test/resolver.js +157 -0
  266. data/node_modules/browserify/node_modules/resolve/test/resolver/bar/node_modules/foo/index.js +1 -0
  267. data/node_modules/browserify/node_modules/resolve/test/resolver/baz/doom.js +0 -0
  268. data/node_modules/browserify/node_modules/resolve/test/resolver/baz/package.json +3 -0
  269. data/node_modules/browserify/node_modules/resolve/test/resolver/baz/quux.js +1 -0
  270. data/node_modules/browserify/node_modules/resolve/test/resolver/biz/node_modules/grux/index.js +1 -0
  271. data/node_modules/browserify/node_modules/resolve/test/resolver/biz/node_modules/tiv/index.js +1 -0
  272. data/node_modules/browserify/node_modules/resolve/test/resolver/cup.coffee +1 -0
  273. data/node_modules/browserify/node_modules/resolve/test/resolver/foo.js +1 -0
  274. data/node_modules/browserify/node_modules/resolve/test/resolver/mug.coffee +0 -0
  275. data/node_modules/browserify/node_modules/resolve/test/resolver/mug.js +0 -0
  276. data/node_modules/browserify/node_modules/resolve/test/resolver/other_path/lib/other-lib.js +0 -0
  277. data/node_modules/browserify/node_modules/resolve/test/resolver/other_path/root.js +0 -0
  278. data/node_modules/browserify/node_modules/syntax-error/.travis.yml +4 -0
  279. data/node_modules/browserify/node_modules/syntax-error/LICENSE +18 -0
  280. data/node_modules/browserify/node_modules/syntax-error/example/check.js +12 -0
  281. data/node_modules/browserify/node_modules/syntax-error/example/src.js +9 -0
  282. data/node_modules/browserify/node_modules/syntax-error/index.js +54 -0
  283. data/node_modules/browserify/node_modules/syntax-error/node_modules/.bin/esparse +42 -0
  284. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/.travis.yml +5 -0
  285. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/LICENSE.BSD +19 -0
  286. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/README.md +74 -0
  287. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/assets/codemirror/codemirror.css +112 -0
  288. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/assets/codemirror/codemirror.js +2972 -0
  289. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/assets/codemirror/javascript.js +360 -0
  290. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/assets/json2.js +487 -0
  291. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/assets/style.css +164 -0
  292. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/assets/yui/treeview-min.js +12 -0
  293. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/assets/yui/treeview-sprite.gif +0 -0
  294. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/assets/yui/treeview.css +7 -0
  295. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/assets/yui/yahoo-dom-event.js +14 -0
  296. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/bin/esparse.js +42 -0
  297. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/changes +92 -0
  298. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/cm +696 -0
  299. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/demo/checkenv.js +42 -0
  300. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/demo/collector.html +82 -0
  301. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/demo/collector.js +170 -0
  302. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/demo/functiontrace.html +106 -0
  303. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/demo/functiontrace.js +123 -0
  304. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/demo/parse.css +82 -0
  305. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/demo/parse.html +352 -0
  306. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/demo/precedence.html +225 -0
  307. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/demo/rewrite.html +120 -0
  308. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/demo/rewrite.js +71 -0
  309. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/esprima.js +3577 -0
  310. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/index.html +103 -0
  311. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/package.json +42 -0
  312. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/test/3rdparty/Tokenizer.js +646 -0
  313. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/test/3rdparty/XMLHttpRequest.js +509 -0
  314. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/test/3rdparty/ZeParser.js +2185 -0
  315. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/test/3rdparty/backbone-0.5.3.js +1158 -0
  316. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/test/3rdparty/benchmark.js +3261 -0
  317. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/test/3rdparty/escodegen.js +906 -0
  318. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/test/3rdparty/esmorph.js +240 -0
  319. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/test/3rdparty/ext-core-3.0.0.js +6579 -0
  320. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/test/3rdparty/ext-core-3.1.0.js +10255 -0
  321. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/test/3rdparty/jquery-1.6.4.js +9046 -0
  322. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/test/3rdparty/jquery-1.7.1.js +9266 -0
  323. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/test/3rdparty/jquery.mobile-1.0.js +6951 -0
  324. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/test/3rdparty/jsdefs.js +731 -0
  325. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/test/3rdparty/jslex.js +588 -0
  326. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/test/3rdparty/jsparse.js +1921 -0
  327. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/test/3rdparty/mootools-1.3.2.js +5952 -0
  328. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/test/3rdparty/mootools-1.4.1.js +6297 -0
  329. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/test/3rdparty/parse-js.js +1342 -0
  330. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/test/3rdparty/platform.js +878 -0
  331. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/test/3rdparty/prototype-1.6.1.js +4874 -0
  332. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/test/3rdparty/prototype-1.7.0.0.js +6082 -0
  333. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/test/3rdparty/underscore-1.2.3.js +981 -0
  334. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/test/benchmarks.html +58 -0
  335. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/test/benchmarks.js +328 -0
  336. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/test/compare.html +140 -0
  337. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/test/compare.js +270 -0
  338. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/test/compat.html +40 -0
  339. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/test/compat.js +239 -0
  340. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/test/coverage.footer.html +3 -0
  341. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/test/coverage.header.html +37 -0
  342. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/test/coverage.html +3617 -0
  343. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/test/index.html +36 -0
  344. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/test/reflect.js +403 -0
  345. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/test/run.js +66 -0
  346. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/test/test.js +16659 -0
  347. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/tools/generate-unicode-regex.py +164 -0
  348. data/node_modules/browserify/node_modules/syntax-error/node_modules/esprima/tools/update-coverage.sh +28 -0
  349. data/node_modules/browserify/node_modules/syntax-error/package.json +49 -0
  350. data/node_modules/browserify/node_modules/syntax-error/readme.markdown +87 -0
  351. data/node_modules/browserify/node_modules/syntax-error/test/check.js +17 -0
  352. data/node_modules/browserify/node_modules/syntax-error/test/sources/check.js +9 -0
  353. data/node_modules/browserify/node_modules/vm-browserify/README.markdown +103 -0
  354. data/node_modules/browserify/node_modules/vm-browserify/example/run/bundle.js +473 -0
  355. data/node_modules/browserify/node_modules/vm-browserify/example/run/entry.js +6 -0
  356. data/node_modules/browserify/node_modules/vm-browserify/example/run/index.html +9 -0
  357. data/node_modules/browserify/node_modules/vm-browserify/example/run/server.js +6 -0
  358. data/node_modules/browserify/node_modules/vm-browserify/index.js +85 -0
  359. data/node_modules/browserify/node_modules/vm-browserify/package.json +43 -0
  360. data/node_modules/browserify/node_modules/vm-browserify/testling/run.js +22 -0
  361. data/node_modules/browserify/node_modules/vm-browserify/testling/test.sh +11 -0
  362. data/node_modules/browserify/package.json +78 -0
  363. data/node_modules/browserify/test/alias.js +58 -0
  364. data/node_modules/browserify/test/backbone.js +21 -0
  365. data/node_modules/browserify/test/bin.js +39 -0
  366. data/node_modules/browserify/test/buffer.js +99 -0
  367. data/node_modules/browserify/test/bundle.js +32 -0
  368. data/node_modules/browserify/test/cache.js +28 -0
  369. data/node_modules/browserify/test/coffee.js +39 -0
  370. data/node_modules/browserify/test/coffee/bar.js +1 -0
  371. data/node_modules/browserify/test/coffee/baz.coffee +1 -0
  372. data/node_modules/browserify/test/coffee/entry.coffee +1 -0
  373. data/node_modules/browserify/test/coffee/foo.coffee +1 -0
  374. data/node_modules/browserify/test/coffee/index.coffee +5 -0
  375. data/node_modules/browserify/test/coffee/nested/nested.coffee +2 -0
  376. data/node_modules/browserify/test/comment.js +17 -0
  377. data/node_modules/browserify/test/comment/main.js +2 -0
  378. data/node_modules/browserify/test/crypto.js +37 -0
  379. data/node_modules/browserify/test/dnode.js +27 -0
  380. data/node_modules/browserify/test/dollar.js +19 -0
  381. data/node_modules/browserify/test/dollar/dollar/index.js +7 -0
  382. data/node_modules/browserify/test/entry.js +36 -0
  383. data/node_modules/browserify/test/entry/main.js +1 -0
  384. data/node_modules/browserify/test/entry/one.js +1 -0
  385. data/node_modules/browserify/test/entry/two.js +1 -0
  386. data/node_modules/browserify/test/error_code.js +24 -0
  387. data/node_modules/browserify/test/error_code/src.js +2 -0
  388. data/node_modules/browserify/test/export.js +52 -0
  389. data/node_modules/browserify/test/export/entry.js +1 -0
  390. data/node_modules/browserify/test/field.js +64 -0
  391. data/node_modules/browserify/test/field/miss.js +1 -0
  392. data/node_modules/browserify/test/field/node_modules/z-miss/browser.js +1 -0
  393. data/node_modules/browserify/test/field/node_modules/z-miss/main.js +1 -0
  394. data/node_modules/browserify/test/field/node_modules/z-miss/package.json +4 -0
  395. data/node_modules/browserify/test/field/node_modules/z-object/browser.js +1 -0
  396. data/node_modules/browserify/test/field/node_modules/z-object/main.js +1 -0
  397. data/node_modules/browserify/test/field/node_modules/z-object/package.json +6 -0
  398. data/node_modules/browserify/test/field/node_modules/z-string/browser.js +1 -0
  399. data/node_modules/browserify/test/field/node_modules/z-string/main.js +1 -0
  400. data/node_modules/browserify/test/field/node_modules/z-string/package.json +4 -0
  401. data/node_modules/browserify/test/field/node_modules/z-sub/browser/a.js +1 -0
  402. data/node_modules/browserify/test/field/node_modules/z-sub/browser/b.js +1 -0
  403. data/node_modules/browserify/test/field/node_modules/z-sub/main.js +1 -0
  404. data/node_modules/browserify/test/field/node_modules/z-sub/package.json +4 -0
  405. data/node_modules/browserify/test/field/object.js +1 -0
  406. data/node_modules/browserify/test/field/string.js +1 -0
  407. data/node_modules/browserify/test/field/sub.js +1 -0
  408. data/node_modules/browserify/test/global.js +19 -0
  409. data/node_modules/browserify/test/global/main.js +2 -0
  410. data/node_modules/browserify/test/jade.js +35 -0
  411. data/node_modules/browserify/test/json.js +17 -0
  412. data/node_modules/browserify/test/json/beep.json +4 -0
  413. data/node_modules/browserify/test/json/main.js +1 -0
  414. data/node_modules/browserify/test/maxlisteners.js +8 -0
  415. data/node_modules/browserify/test/module.js +22 -0
  416. data/node_modules/browserify/test/multi_entry.js +20 -0
  417. data/node_modules/browserify/test/multi_entry/a.js +2 -0
  418. data/node_modules/browserify/test/multi_entry/b.js +2 -0
  419. data/node_modules/browserify/test/multi_entry/c.js +3 -0
  420. data/node_modules/browserify/test/multi_ignore.js +23 -0
  421. data/node_modules/browserify/test/node_modules/beep/index.js +1 -0
  422. data/node_modules/browserify/test/require_cache.js +18 -0
  423. data/node_modules/browserify/test/retarget.js +27 -0
  424. data/node_modules/browserify/test/seq.js +47 -0
  425. data/node_modules/browserify/test/subdep.js +26 -0
  426. data/node_modules/browserify/test/subdep/index.js +1 -0
  427. data/node_modules/browserify/test/subdep/package.json +6 -0
  428. data/node_modules/browserify/test/util.js +48 -0
  429. data/node_modules/browserify/test/watch.js +91 -0
  430. data/node_modules/browserify/test/watch/a.js +1 -0
  431. data/node_modules/browserify/test/wrap.js +43 -0
  432. data/node_modules/browserify/test/wrap/a.js +2 -0
  433. data/node_modules/browserify/test/wrap/c.js +1 -0
  434. data/node_modules/browserify/test/wrap/node_modules/b/main.js +1 -0
  435. data/node_modules/browserify/test/wrap/node_modules/b/package.json +3 -0
  436. data/node_modules/browserify/test/wrap/node_modules/skipmetoo/index.js +1 -0
  437. data/node_modules/browserify/test/wrap/skipme.js +1 -0
  438. data/node_modules/browserify/test/wrap/x.js +0 -0
  439. data/node_modules/browserify/testling/README.markdown +29 -0
  440. data/node_modules/browserify/testling/test.sh +37 -0
  441. data/node_modules/browserify/testling/tick.js +9 -0
  442. data/node_modules/browserify/testling/timers.js +50 -0
  443. data/node_modules/browserify/testling/util.js +24 -0
  444. data/node_modules/browserify/v2.markdown +41 -0
  445. data/node_modules/browserify/wrappers/alias.js +1 -0
  446. data/node_modules/browserify/wrappers/body.js +2 -0
  447. data/node_modules/browserify/wrappers/body_debug.js +2 -0
  448. data/node_modules/browserify/wrappers/entry.js +3 -0
  449. data/node_modules/browserify/wrappers/entry_debug.js +3 -0
  450. data/node_modules/browserify/wrappers/package.js +3 -0
  451. data/node_modules/browserify/wrappers/prelude.js +196 -0
  452. data/node_modules/coffee-script/.npmignore +11 -0
  453. data/node_modules/coffee-script/CNAME +1 -0
  454. data/node_modules/coffee-script/CONTRIBUTING.md +9 -0
  455. data/node_modules/coffee-script/LICENSE +22 -0
  456. data/node_modules/coffee-script/README +51 -0
  457. data/node_modules/coffee-script/Rakefile +78 -0
  458. data/node_modules/coffee-script/bin/cake +7 -0
  459. data/node_modules/coffee-script/bin/coffee +7 -0
  460. data/node_modules/coffee-script/extras/jsl.conf +44 -0
  461. data/node_modules/coffee-script/lib/coffee-script/browser.js +92 -0
  462. data/node_modules/coffee-script/lib/coffee-script/cake.js +113 -0
  463. data/node_modules/coffee-script/lib/coffee-script/coffee-script.js +171 -0
  464. data/node_modules/coffee-script/lib/coffee-script/command.js +502 -0
  465. data/node_modules/coffee-script/lib/coffee-script/grammar.js +606 -0
  466. data/node_modules/coffee-script/lib/coffee-script/helpers.js +88 -0
  467. data/node_modules/coffee-script/lib/coffee-script/index.js +11 -0
  468. data/node_modules/coffee-script/lib/coffee-script/lexer.js +788 -0
  469. data/node_modules/coffee-script/lib/coffee-script/nodes.js +2971 -0
  470. data/node_modules/coffee-script/lib/coffee-script/optparse.js +138 -0
  471. data/node_modules/coffee-script/lib/coffee-script/parser.js +683 -0
  472. data/node_modules/coffee-script/lib/coffee-script/repl.js +276 -0
  473. data/node_modules/coffee-script/lib/coffee-script/rewriter.js +349 -0
  474. data/node_modules/coffee-script/lib/coffee-script/scope.js +146 -0
  475. data/node_modules/coffee-script/package.json +50 -0
  476. data/node_modules/jade-runtime/.npmignore +15 -0
  477. data/node_modules/jade-runtime/README.md +8 -0
  478. data/node_modules/jade-runtime/globals.js +32 -0
  479. data/node_modules/jade-runtime/index.js +2 -0
  480. data/node_modules/jade-runtime/jade-runtime.js +181 -0
  481. data/node_modules/jade-runtime/package.json +18 -0
  482. data/node_modules/jade/.npmignore +14 -0
  483. data/node_modules/jade/LICENSE +22 -0
  484. data/node_modules/jade/Readme.md +1299 -0
  485. data/node_modules/jade/bin/jade +168 -0
  486. data/node_modules/jade/index.js +4 -0
  487. data/node_modules/jade/jade.js +3586 -0
  488. data/node_modules/jade/jade.md +510 -0
  489. data/node_modules/jade/jade.min.js +2 -0
  490. data/node_modules/jade/lib/compiler.js +654 -0
  491. data/node_modules/jade/lib/doctypes.js +18 -0
  492. data/node_modules/jade/lib/filters.js +97 -0
  493. data/node_modules/jade/lib/inline-tags.js +28 -0
  494. data/node_modules/jade/lib/jade.js +253 -0
  495. data/node_modules/jade/lib/lexer.js +774 -0
  496. data/node_modules/jade/lib/nodes/attrs.js +77 -0
  497. data/node_modules/jade/lib/nodes/block-comment.js +33 -0
  498. data/node_modules/jade/lib/nodes/block.js +122 -0
  499. data/node_modules/jade/lib/nodes/case.js +43 -0
  500. data/node_modules/jade/lib/nodes/code.js +35 -0
  501. data/node_modules/jade/lib/nodes/comment.js +32 -0
  502. data/node_modules/jade/lib/nodes/doctype.js +29 -0
  503. data/node_modules/jade/lib/nodes/each.js +35 -0
  504. data/node_modules/jade/lib/nodes/filter.js +35 -0
  505. data/node_modules/jade/lib/nodes/index.js +20 -0
  506. data/node_modules/jade/lib/nodes/literal.js +32 -0
  507. data/node_modules/jade/lib/nodes/mixin.js +36 -0
  508. data/node_modules/jade/lib/nodes/node.js +25 -0
  509. data/node_modules/jade/lib/nodes/tag.js +95 -0
  510. data/node_modules/jade/lib/nodes/text.js +36 -0
  511. data/node_modules/jade/lib/parser.js +714 -0
  512. data/node_modules/jade/lib/runtime.js +174 -0
  513. data/node_modules/jade/lib/self-closing.js +19 -0
  514. data/node_modules/jade/lib/utils.js +49 -0
  515. data/node_modules/jade/node_modules/commander/.npmignore +4 -0
  516. data/node_modules/jade/node_modules/commander/.travis.yml +4 -0
  517. data/node_modules/jade/node_modules/commander/History.md +107 -0
  518. data/node_modules/jade/node_modules/commander/Makefile +7 -0
  519. data/node_modules/jade/node_modules/commander/Readme.md +262 -0
  520. data/node_modules/jade/node_modules/commander/index.js +2 -0
  521. data/node_modules/jade/node_modules/commander/lib/commander.js +1026 -0
  522. data/node_modules/jade/node_modules/commander/package.json +39 -0
  523. data/node_modules/jade/node_modules/mkdirp/.npmignore +2 -0
  524. data/node_modules/jade/node_modules/mkdirp/.travis.yml +4 -0
  525. data/node_modules/jade/node_modules/mkdirp/LICENSE +21 -0
  526. data/node_modules/jade/node_modules/mkdirp/README.markdown +61 -0
  527. data/node_modules/jade/node_modules/mkdirp/examples/pow.js +6 -0
  528. data/node_modules/jade/node_modules/mkdirp/index.js +82 -0
  529. data/node_modules/jade/node_modules/mkdirp/package.json +37 -0
  530. data/node_modules/jade/node_modules/mkdirp/test/chmod.js +38 -0
  531. data/node_modules/jade/node_modules/mkdirp/test/clobber.js +37 -0
  532. data/node_modules/jade/node_modules/mkdirp/test/mkdirp.js +28 -0
  533. data/node_modules/jade/node_modules/mkdirp/test/perm.js +32 -0
  534. data/node_modules/jade/node_modules/mkdirp/test/perm_sync.js +39 -0
  535. data/node_modules/jade/node_modules/mkdirp/test/race.js +41 -0
  536. data/node_modules/jade/node_modules/mkdirp/test/rel.js +32 -0
  537. data/node_modules/jade/node_modules/mkdirp/test/return.js +25 -0
  538. data/node_modules/jade/node_modules/mkdirp/test/return_sync.js +24 -0
  539. data/node_modules/jade/node_modules/mkdirp/test/root.js +18 -0
  540. data/node_modules/jade/node_modules/mkdirp/test/sync.js +32 -0
  541. data/node_modules/jade/node_modules/mkdirp/test/umask.js +28 -0
  542. data/node_modules/jade/node_modules/mkdirp/test/umask_sync.js +32 -0
  543. data/node_modules/jade/package.json +53 -0
  544. data/node_modules/jade/runtime.js +179 -0
  545. data/node_modules/jade/runtime.min.js +1 -0
  546. data/node_modules/jade/test.jade +7 -0
  547. data/node_modules/jade/testing/head.jade +5 -0
  548. data/node_modules/jade/testing/index.jade +1 -0
  549. data/node_modules/jade/testing/index.js +14 -0
  550. data/node_modules/jade/testing/layout.jade +10 -0
  551. data/node_modules/jade/testing/user.jade +7 -0
  552. data/node_modules/jade/testing/user.js +27 -0
  553. data/node_modules/optimist/.travis.yml +4 -0
  554. data/node_modules/optimist/LICENSE +21 -0
  555. data/node_modules/optimist/README.markdown +487 -0
  556. data/node_modules/optimist/example/bool.js +10 -0
  557. data/node_modules/optimist/example/boolean_double.js +7 -0
  558. data/node_modules/optimist/example/boolean_single.js +7 -0
  559. data/node_modules/optimist/example/default_hash.js +8 -0
  560. data/node_modules/optimist/example/default_singles.js +7 -0
  561. data/node_modules/optimist/example/divide.js +8 -0
  562. data/node_modules/optimist/example/line_count.js +20 -0
  563. data/node_modules/optimist/example/line_count_options.js +29 -0
  564. data/node_modules/optimist/example/line_count_wrap.js +29 -0
  565. data/node_modules/optimist/example/nonopt.js +4 -0
  566. data/node_modules/optimist/example/reflect.js +2 -0
  567. data/node_modules/optimist/example/short.js +3 -0
  568. data/node_modules/optimist/example/string.js +11 -0
  569. data/node_modules/optimist/example/usage-options.js +19 -0
  570. data/node_modules/optimist/example/xup.js +10 -0
  571. data/node_modules/optimist/index.js +475 -0
  572. data/node_modules/optimist/node_modules/wordwrap/.npmignore +1 -0
  573. data/node_modules/optimist/node_modules/wordwrap/README.markdown +70 -0
  574. data/node_modules/optimist/node_modules/wordwrap/example/center.js +10 -0
  575. data/node_modules/optimist/node_modules/wordwrap/example/meat.js +3 -0
  576. data/node_modules/optimist/node_modules/wordwrap/index.js +76 -0
  577. data/node_modules/optimist/node_modules/wordwrap/package.json +45 -0
  578. data/node_modules/optimist/node_modules/wordwrap/test/break.js +30 -0
  579. data/node_modules/optimist/node_modules/wordwrap/test/idleness.txt +63 -0
  580. data/node_modules/optimist/node_modules/wordwrap/test/wrap.js +31 -0
  581. data/node_modules/optimist/package.json +55 -0
  582. data/node_modules/optimist/test/_.js +71 -0
  583. data/node_modules/optimist/test/_/argv.js +2 -0
  584. data/node_modules/optimist/test/_/bin.js +3 -0
  585. data/node_modules/optimist/test/parse.js +420 -0
  586. data/node_modules/optimist/test/usage.js +292 -0
  587. data/snowball.gemspec +1 -2
  588. metadata +601 -21
  589. data/extconf.rb +0 -9
@@ -0,0 +1,25 @@
1
+ var http = require('http');
2
+
3
+ $(function () {
4
+ var opts = {
5
+ host : window.location.hostname,
6
+ port : window.location.port,
7
+ path : '/count'
8
+ };
9
+
10
+ http.get(opts, function (res) {
11
+ res.on('data', function (buf) {
12
+ $('<div>')
13
+ .text(buf)
14
+ .appendTo($('#count'))
15
+ ;
16
+ });
17
+
18
+ res.on('end', function () {
19
+ $('<div>')
20
+ .text('__END__')
21
+ .appendTo($('#count'))
22
+ ;
23
+ });
24
+ });
25
+ });
@@ -0,0 +1,9 @@
1
+ <html>
2
+ <head>
3
+ <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
4
+ <script src="/bundle.js"></script>
5
+ </head>
6
+ <body>
7
+ <div id="count"></div>
8
+ </body>
9
+ </html>
@@ -0,0 +1,28 @@
1
+ #!/usr/bin/env node
2
+ var http = require('http');
3
+ var ecstatic = require('ecstatic')(__dirname);
4
+
5
+ var server = http.createServer(function (req, res) {
6
+ if (req.url === '/count') {
7
+ res.setHeader('content-type', 'multipart/octet-stream');
8
+
9
+ var n = 10;
10
+ var iv = setInterval(function () {
11
+ res.write(n + '\r\n');
12
+
13
+ if (--n === 0) {
14
+ clearInterval(iv);
15
+ res.end();
16
+ }
17
+ }, 250);
18
+ }
19
+ else ecstatic(req, res)
20
+ });
21
+
22
+ server.listen(8001);
23
+ console.log([
24
+ 'Listening on :8001',
25
+ '',
26
+ 'To compile the build, do:',
27
+ ' browserify entry.js -o bundle.js'
28
+ ].join('\n'));
@@ -0,0 +1,202 @@
1
+ var path = require('path');
2
+ var coffee = require('coffee-script');
3
+ var EventEmitter = require('events').EventEmitter;
4
+
5
+ var wrap = require('./lib/wrap');
6
+ var watch = require('./lib/watch');
7
+
8
+ function idFromPath (path) {
9
+ return path.replace(/\\/g, '/');
10
+ }
11
+
12
+ function isAbsolute (pathOrId) {
13
+ return path.normalize(pathOrId) === path.normalize(path.resolve(pathOrId));
14
+ }
15
+
16
+ function needsNodeModulesPrepended (id) {
17
+ return !/^[.\/]/.test(id) && !isAbsolute(id);
18
+ }
19
+
20
+ var exports = module.exports = function (entryFile, opts) {
21
+ if (!opts) opts = {};
22
+
23
+ if (Array.isArray(entryFile)) {
24
+ if (Array.isArray(opts.entry)) {
25
+ opts.entry.unshift.apply(opts.entry, entryFile);
26
+ }
27
+ else if (opts.entry) {
28
+ opts.entry = entryFile.concat(opts.entry);
29
+ }
30
+ else {
31
+ opts.entry = entryFile;
32
+ }
33
+ }
34
+ else if (typeof entryFile === 'object') {
35
+ opts = entryFile;
36
+ }
37
+ else if (typeof entryFile === 'string') {
38
+ if (Array.isArray(opts.entry)) {
39
+ opts.entry.unshift(entryFile);
40
+ }
41
+ else if (opts.entry) {
42
+ opts.entry = [ opts.entry, entryFile ];
43
+ }
44
+ else {
45
+ opts.entry = entryFile;
46
+ }
47
+ }
48
+
49
+ var opts_ = {
50
+ cache : opts.cache,
51
+ debug : opts.debug,
52
+ exports : opts.exports,
53
+ };
54
+ var w = wrap(opts_);
55
+ w.register('.coffee', function (body, file) {
56
+ try {
57
+ var res = coffee.compile(body, { filename : file });
58
+ }
59
+ catch (err) {
60
+ w.emit('syntaxError', err);
61
+ }
62
+ return res;
63
+ });
64
+ w.register('.json', function (body, file) {
65
+ return 'module.exports = ' + body + ';\n';
66
+ });
67
+
68
+ var listening = false;
69
+ w._cache = null;
70
+
71
+ var self = function (req, res, next) {
72
+ if (!listening && req.connection && req.connection.server) {
73
+ req.connection.server.on('close', function () {
74
+ self.end();
75
+ });
76
+ }
77
+ listening = true;
78
+
79
+ if (req.url.split('?')[0] === (opts.mount || '/browserify.js')) {
80
+ if (!w._cache) self.bundle();
81
+ res.statusCode = 200;
82
+ res.setHeader('last-modified', self.modified.toString());
83
+ res.setHeader('content-type', 'text/javascript');
84
+ res.end(w._cache);
85
+ }
86
+ else next()
87
+ };
88
+
89
+ if (opts.watch) watch(w, opts.watch);
90
+
91
+ if (opts.filter) {
92
+ w.register('post', function (body) {
93
+ return opts.filter(body);
94
+ });
95
+ }
96
+
97
+ w.ignore(opts.ignore || []);
98
+
99
+ if (opts.require) {
100
+ if (Array.isArray(opts.require)) {
101
+ opts.require.forEach(function (r) {
102
+ r = idFromPath(r);
103
+
104
+ var params = {};
105
+ if (needsNodeModulesPrepended(r)) {
106
+ params.target = '/node_modules/' + r + '/index.js';
107
+ }
108
+ w.require(r, params);
109
+ });
110
+ }
111
+ else if (typeof opts.require === 'object') {
112
+ Object.keys(opts.require).forEach(function (key) {
113
+ opts.require[key] = idFromPath(opts.require[key]);
114
+
115
+ var params = {};
116
+ if (needsNodeModulesPrepended(opts.require[key])) {
117
+ params.target = '/node_modules/'
118
+ + opts.require[key] + '/index.js'
119
+ ;
120
+ }
121
+ w.require(opts.require[key], params);
122
+ w.alias(key, opts.require[key]);
123
+ });
124
+ }
125
+ else {
126
+ opts.require = idFromPath(opts.require);
127
+
128
+ var params = {};
129
+ if (needsNodeModulesPrepended(opts.require)) {
130
+ params.target = '/node_modules/'
131
+ + opts.require + '/index.js'
132
+ ;
133
+ }
134
+ w.require(opts.require, params);
135
+ }
136
+ }
137
+
138
+ if (opts.entry) {
139
+ if (Array.isArray(opts.entry)) {
140
+ opts.entry.forEach(function (e) {
141
+ w.addEntry(e);
142
+ });
143
+ }
144
+ else {
145
+ w.addEntry(opts.entry);
146
+ }
147
+ }
148
+
149
+ Object.keys(w).forEach(function (key) {
150
+ Object.defineProperty(self, key, {
151
+ set : function (value) { w[key] = value },
152
+ get : function () { return w[key] }
153
+ });
154
+ });
155
+
156
+ Object.keys(Object.getPrototypeOf(w)).forEach(function (key) {
157
+ self[key] = function () {
158
+ var s = w[key].apply(self, arguments)
159
+ if (s === self) { w._cache = null }
160
+ return s;
161
+ };
162
+ });
163
+
164
+ Object.keys(EventEmitter.prototype).forEach(function (key) {
165
+ if (typeof w[key] === 'function' && w[key].bind) {
166
+ self[key] = w[key].bind(w);
167
+ }
168
+ else {
169
+ self[key] = w[key];
170
+ }
171
+ });
172
+
173
+ var firstBundle = true;
174
+ self.modified = new Date;
175
+
176
+ self.bundle = function () {
177
+ if (w._cache) return w._cache;
178
+
179
+ var src = w.bundle.apply(w, arguments);
180
+ self.ok = Object.keys(w.errors).length === 0;
181
+
182
+ if (!firstBundle) {
183
+ self.modified = new Date;
184
+ }
185
+ firstBundle = false;
186
+
187
+ w._cache = src;
188
+ return src;
189
+ };
190
+
191
+ self.end = function () {
192
+ Object.keys(w.watches || {}).forEach(function (file) {
193
+ w.watches[file].close();
194
+ });
195
+ };
196
+
197
+ return self;
198
+ };
199
+
200
+ exports.bundle = function (opts) {
201
+ return exports(opts).bundle();
202
+ };
@@ -0,0 +1,75 @@
1
+ var fs = require('fs');
2
+ var path = require('path');
3
+ var exists = fs.exists || path.exists;
4
+
5
+ module.exports = function (w, opts) {
6
+ if (!w.watches) w.watches = [];
7
+ w.register(reg.bind(null, w, opts));
8
+ };
9
+
10
+ function reg (w, opts, body, file) {
11
+ // if already being watched
12
+ if (w.watches[file]) return body;
13
+
14
+ var type = w.files[file] ? 'files' : 'entries';
15
+
16
+ var watch = function () {
17
+ if (w.files[file] && w.files[file].synthetic) return;
18
+
19
+ if (typeof opts === 'object') {
20
+ w.watches[file] = fs.watch(file, opts, watcher);
21
+ }
22
+ else {
23
+ w.watches[file] = fs.watch(file, watcher);
24
+ }
25
+ };
26
+ var pending = null;
27
+ var bundle = function () {
28
+ if (pending) return;
29
+ pending = setTimeout(function () {
30
+ pending = null;
31
+ // modified
32
+ if (w[type][file]) {
33
+ w.reload(file);
34
+ }
35
+ else if (type === 'entries') {
36
+ w.addEntry(file);
37
+ }
38
+ else if (type === 'files') {
39
+ w.require(file);
40
+ }
41
+
42
+ w._cache = null;
43
+ w.emit('bundle');
44
+ }, 100);
45
+ };
46
+
47
+ var watcher = function (event, filename) {
48
+ exists(file, function (ex) {
49
+ if (!ex) {
50
+ // deleted
51
+ if (w.files[file]) {
52
+ delete w.files[file];
53
+ }
54
+ else if (w.entries[file] !== undefined) {
55
+ w.appends.splice(w.entries[file], 1);
56
+ }
57
+
58
+ w._cache = null;
59
+ }
60
+ else if (event === 'change') {
61
+ bundle();
62
+ }
63
+ else if (event === 'rename') {
64
+ w.watches[file].close();
65
+ process.nextTick(watch);
66
+ bundle();
67
+ }
68
+ });
69
+ };
70
+
71
+ w.watches[file] = true;
72
+ process.nextTick(watch);
73
+
74
+ return body;
75
+ }
@@ -0,0 +1,580 @@
1
+ var fs = require('fs');
2
+ var path = require('path');
3
+ var util = require('util');
4
+ var EventEmitter = require('events').EventEmitter;
5
+
6
+ var detective = require('detective');
7
+ var deputy = require('deputy');
8
+ var resolve = require('resolve');
9
+
10
+ var wrappers = require('./wrappers');
11
+ var commondir = require('commondir');
12
+ var nub = require('nub');
13
+ var checkSyntax = require('syntax-error');
14
+
15
+ var existsSync = fs.existsSync || path.existsSync;
16
+ var sep = path.sep || (process.platform === 'win32' ? '\\' : '/');
17
+
18
+ module.exports = function (opts) {
19
+ return new Wrap(opts);
20
+ };
21
+ function idFromPath (path) {
22
+ return path.replace(/\\/g, '/');
23
+ }
24
+
25
+ function Wrap (opts) {
26
+ var home = process.env.HOME || process.env.USERPROFILE;
27
+ if (opts.cache === undefined && home !== undefined) {
28
+ opts.cache = true;
29
+ }
30
+
31
+ if (opts.cache) {
32
+ if (typeof opts.cache === 'boolean') {
33
+ var file = home + '/.config/browserify/cache.json';
34
+ this.detective = deputy(file);
35
+ }
36
+ else {
37
+ this.detective = deputy(opts.cache);
38
+ }
39
+ }
40
+ else {
41
+ this.detective = detective;
42
+ }
43
+
44
+ this.exports = opts.exports;
45
+
46
+ this.files = {};
47
+ this.filters = [];
48
+ this.pathFilters = [];
49
+ this.postFilters = [];
50
+ this.preFilters = [];
51
+ this.aliases = {};
52
+ this._checkedPackages = {};
53
+ this.errors = {};
54
+
55
+ this.ignoring = {};
56
+ this.extensions = [ '.js' ];
57
+
58
+ this.prepends = [ wrappers.prelude, wrappers.process ];
59
+ this.appends = []
60
+ this.entries = {};
61
+ this.debug = opts.debug;
62
+
63
+ this.require('path');
64
+ this.require('__browserify_process');
65
+ }
66
+
67
+ function resolveMod(from, to){
68
+ // not a real directory on the filesystem; just using the path
69
+ // module to get rid of the filename.
70
+ var targetDir = path.dirname(from);
71
+ // not a real filename; just using the path module to deal with
72
+ // relative paths.
73
+ var reqFilename = path.resolve(targetDir, to);
74
+ // get rid of drive letter on Windows; replace it with '/'
75
+ var reqFilenameWithoutDriveLetter = /^[a-zA-Z]:\\/.test(reqFilename) ?
76
+ '/' + reqFilename.substring(3) : reqFilename;
77
+
78
+ return reqFilenameWithoutDriveLetter;
79
+ }
80
+
81
+ util.inherits(Wrap, EventEmitter);
82
+
83
+ Wrap.prototype.prepend = function (src) {
84
+ this.prepends.unshift(src);
85
+ return this;
86
+ };
87
+
88
+ Wrap.prototype.append = function (src) {
89
+ this.appends.push(src);
90
+ return this;
91
+ };
92
+
93
+ Wrap.prototype.ignore = function (files) {
94
+ if (!files) files = [];
95
+ if (!Array.isArray(files)) files = [ files ];
96
+
97
+ this.ignoring = files.reduce(function (acc,x) {
98
+ acc[x] = true;
99
+ return acc;
100
+ }, this.ignoring);
101
+
102
+ return this;
103
+ };
104
+
105
+ Wrap.prototype.use = function (fn) {
106
+ fn(this, this);
107
+ return this;
108
+ };
109
+
110
+ Wrap.prototype.register = function (ext, fn) {
111
+ if (typeof ext === 'object') {
112
+ fn = ext.wrapper;
113
+ ext = ext.extension;
114
+ }
115
+
116
+ if (ext === 'post') {
117
+ this.postFilters.push(fn);
118
+ }
119
+ else if (ext === 'pre') {
120
+ this.preFilters.push(fn);
121
+ }
122
+ else if (ext === 'path') {
123
+ this.pathFilters.push(fn);
124
+ }
125
+ else if (fn) {
126
+ this.extensions.push(ext);
127
+ this.filters.push(function (body, file) {
128
+ if (file.slice(-ext.length) === ext) {
129
+ return fn.call(this, body, file);
130
+ }
131
+ else return body;
132
+ });
133
+ }
134
+ else {
135
+ this.filters.push(ext);
136
+ }
137
+ return this;
138
+ };
139
+
140
+ Wrap.prototype.reload = function (file) {
141
+ var self = this;
142
+ delete self.errors[file];
143
+
144
+ if (self.files[file]) {
145
+ var f = self.files[file];
146
+ f.body = undefined;
147
+ delete self.files[file];
148
+
149
+ self.require(file, f);
150
+ }
151
+ else if (self.entries[file]) {
152
+ var e = self.entries[file];
153
+ e.body = undefined;
154
+ delete self.entries[file];
155
+
156
+ self.addEntry(file, e);
157
+ }
158
+
159
+ return self;
160
+ };
161
+
162
+ Wrap.prototype.readFile = function (file) {
163
+ var self = this;
164
+
165
+ self.pathFilters.forEach(function (fn) {
166
+ file = fn.call(self, file);
167
+ });
168
+
169
+ var body = fs.readFileSync(file, 'utf8').replace(/^#![^\n]*\n/, '');
170
+
171
+ self.filters.forEach(function (fn) {
172
+ body = fn.call(self, body, file);
173
+ });
174
+
175
+ var err = checkSyntax(body, file);
176
+ if (err) {
177
+ self.errors[file] = err;
178
+
179
+ process.nextTick(function () {
180
+ self.emit('syntaxError', err);
181
+ });
182
+ return undefined;
183
+ }
184
+ else {
185
+ delete self.errors[file];
186
+ }
187
+
188
+ return body;
189
+ };
190
+
191
+ Wrap.prototype.alias = function (to, from) {
192
+ this.aliases[to] = from;
193
+ return this;
194
+ };
195
+
196
+ Wrap.prototype.addEntry = function (file_, opts) {
197
+ var self = this;
198
+ if (!opts) opts = {};
199
+ var file = path.resolve(opts.dirname || process.cwd(), file_);
200
+
201
+ var entry = this.entries[file] = {};
202
+ // entry must be set before readFile for the watch
203
+ var body = entry.body = opts.body || self.readFile(file);
204
+ if (body === undefined) return self;
205
+
206
+ if (opts.target) entry.target = opts.target;
207
+
208
+ try {
209
+ var required = self.detective.find(body);
210
+ }
211
+ catch (err) {
212
+ process.nextTick(function () {
213
+ err.message = 'Error while loading entry file '
214
+ + JSON.stringify(file)
215
+ + ': ' + err.message
216
+ ;
217
+ self.emit('syntaxError', err);
218
+ });
219
+ return self;
220
+ }
221
+
222
+ if (required.expressions.length) {
223
+ console.error('Expressions in require() statements:');
224
+ required.expressions.forEach(function (ex) {
225
+ console.error(' require(' + ex + ')');
226
+ });
227
+ }
228
+
229
+ var dirname = path.dirname(file);
230
+
231
+ required.strings.forEach(function (req) {
232
+ var params = {
233
+ dirname : dirname,
234
+ fromFile : file,
235
+ };
236
+ if (opts.target && /^[.\/]/.test(req)) {
237
+ params.target = resolveMod(opts.target, req);
238
+ }
239
+ self.require(req, params);
240
+ });
241
+
242
+ return this;
243
+ };
244
+
245
+ Wrap.prototype.bundle = function () {
246
+ var self = this;
247
+
248
+ for (var i = 0; i < self.prepends.length; i++) {
249
+ var p = self.prepends[i];
250
+ if (p === wrappers.prelude) {
251
+ self.prepends[i] = p.replace(/\$extensions/, function () {
252
+ return JSON.stringify(self.extensions);
253
+ });
254
+ break;
255
+ }
256
+ }
257
+
258
+ this.preFilters.forEach((function (fn) {
259
+ fn.call(this, this);
260
+ }).bind(this));
261
+
262
+ (function () {
263
+ // hack to set -browserify module targets
264
+ var nm = path.resolve(__dirname, '../node_modules');
265
+ Object.keys(self.files).forEach(function (file) {
266
+ if (file.substring(0, nm.length) !== nm) return;
267
+ var relativeToNm = path.relative(nm, file);
268
+ var topDir = relativeToNm.split(sep)[0];
269
+ if (!/-browserify$/.test(topDir)) return;
270
+ self.files[file].target = path.join('/', 'node_modules', relativeToNm);
271
+ });
272
+ })();
273
+
274
+ var basedir = (function () {
275
+ var required = Object.keys(self.files)
276
+ .filter(function (x) {
277
+ return !self.files[x].target;
278
+ })
279
+ ;
280
+ var entries = Object.keys(self.entries)
281
+ .filter(function (x) { return !self.entries[x].target })
282
+ ;
283
+ var files = required.concat(entries)
284
+ .map(function (x) { return path.dirname(x) })
285
+ ;
286
+ if (files.length === 0) return '';
287
+
288
+ var dir = commondir(files) + '/';
289
+ return path.normalize(dir.replace(/\/node_modules\/$/, '/'));
290
+ })();
291
+
292
+ var removeLeading = function (s) {
293
+ if (s.slice(0, basedir.length) === basedir) {
294
+ return s.slice(basedir.length - 1);
295
+ }
296
+ };
297
+
298
+ var src = []
299
+ .concat(this.prepends)
300
+ .concat(Object.keys(self.files).map(function (file) {
301
+ var s = self.files[file];
302
+ var target = s.target || removeLeading(file);
303
+
304
+ if (self.ignoring[target]) return '';
305
+
306
+ return self.wrap(idFromPath(target), s.body)
307
+ }))
308
+ .concat(Object.keys(self.aliases).map(function (to) {
309
+ var from = self.aliases[to];
310
+ if (!to.match(/^(\.\.?)?\//)) {
311
+ to = '/node_modules/' + to;
312
+ }
313
+
314
+ return wrappers.alias
315
+ .replace(/\$from/, function () {
316
+ return JSON.stringify(from);
317
+ })
318
+ .replace(/\$to/, function () {
319
+ return JSON.stringify(to);
320
+ })
321
+ ;
322
+ }))
323
+ .concat(Object.keys(self.entries).map(function (file) {
324
+ var s = self.entries[file];
325
+ var target = s.target || removeLeading(file);
326
+ return self.wrapEntry(idFromPath(target), s.body);
327
+ }))
328
+ .concat(this.appends)
329
+ .join('\n')
330
+ ;
331
+
332
+ if (!self.exports) {
333
+ self.exports = Object.keys(self.entries).length ? [] : [ 'require' ];
334
+ }
335
+ if (self.exports === true) self.exports = [ 'require', 'process' ];
336
+ if (!Array.isArray(self.exports)) self.exports = [ self.exports ];
337
+
338
+ if (self.exports.indexOf('process') >= 0
339
+ && self.exports.indexOf('require') >= 0) {
340
+ src += 'var process = require("__browserify_process");\n'
341
+ }
342
+ else if (self.exports.indexOf('require') >= 0) {
343
+ // nop
344
+ }
345
+ else if (self.exports.indexOf('process') >= 0) {
346
+ src = 'var process = (function(){'
347
+ + src
348
+ + ';return require("__browserify_process")'
349
+ + '})();\n'
350
+ ;
351
+ }
352
+ else {
353
+ src = '(function(){' + src + '})();\n'
354
+ }
355
+
356
+ this.postFilters.forEach((function (fn) {
357
+ src = fn.call(this, src);
358
+ }).bind(this));
359
+
360
+ return src;
361
+ };
362
+
363
+ Wrap.prototype.wrap = function (target, body) {
364
+ var self = this;
365
+ return (self.debug ? wrappers.body_debug : wrappers.body)
366
+ .replace(/\$__filename/g, function () {
367
+ return JSON.stringify(target);
368
+ })
369
+ .replace(/\$body/, function () {
370
+ return self.debug
371
+ ? JSON.stringify(body + '\n//@ sourceURL=' + target)
372
+ : body
373
+ ;
374
+ })
375
+ ;
376
+ };
377
+
378
+ Wrap.prototype.wrapEntry = function (target, body) {
379
+ var self = this;
380
+ return (self.debug ? wrappers.entry_debug : wrappers.entry)
381
+ .replace(/\$__filename/g, function () {
382
+ return JSON.stringify(target)
383
+ })
384
+ .replace(/\$body/, function () {
385
+ return self.debug
386
+ ? JSON.stringify(body + '\n//@ sourceURL=' + target)
387
+ : body
388
+ ;
389
+ })
390
+ ;
391
+ };
392
+
393
+ Wrap.prototype.include = function (file, target, body, root) {
394
+ var synthetic = !file;
395
+ if (!file) file = Math.floor(Math.random() * Math.pow(2,32)).toString(16);
396
+
397
+ this.files[file] = {
398
+ body : body,
399
+ target : target,
400
+ synthetic : synthetic,
401
+ root : root
402
+ };
403
+ return this;
404
+ };
405
+
406
+ Wrap.prototype.require = function (mfile, opts) {
407
+ var self = this;
408
+ if (!opts) opts = {};
409
+ if (!opts.dirname) opts.dirname = process.cwd();
410
+
411
+ if (typeof mfile === 'object') {
412
+ throw new Error('require maps no longer supported');
413
+ }
414
+
415
+ if (self.has(mfile)) return self;
416
+ if (opts.target && self.has(opts.target)) return self;
417
+
418
+ if (self.ignoring[mfile]) return self;
419
+ if (self.aliases[mfile]) return self;
420
+
421
+ function moduleError (msg) {
422
+ return new Error(msg + ': ' + JSON.stringify(mfile)
423
+ + ' from directory ' + JSON.stringify(opts.dirname)
424
+ + (opts.fromFile ? ' while processing file ' + opts.fromFile : '')
425
+ );
426
+ }
427
+
428
+ var pkg = {};
429
+ if (mfile === '__browserify_process' || resolve.isCore(mfile)) {
430
+ opts.file = path.resolve(__dirname, '../builtins/' + mfile + '.js');
431
+ opts.target = opts.target || mfile;
432
+
433
+ if (!existsSync(opts.file)) {
434
+ try {
435
+ require.resolve(mfile + '-browserify');
436
+ opts.body = 'module.exports = require('
437
+ + JSON.stringify(mfile + '-browserify')
438
+ + ')';
439
+ }
440
+ catch (err) {
441
+ throw moduleError('No wrapper for core module');
442
+ }
443
+ }
444
+ }
445
+ else if (self.has(mfile)) {
446
+ // package has already been included in some fashion, no need to resolve
447
+ return self;
448
+ }
449
+ else if (opts.body) {
450
+ opts.file = mfile;
451
+ }
452
+ else if (!opts.file) {
453
+ try {
454
+ var normPath
455
+ = path.normalize(path.resolve(mfile)) === path.normalize(mfile)
456
+ ? path.normalize(mfile) : mfile
457
+ ;
458
+ opts.file = self.resolver(normPath, opts.dirname);
459
+ }
460
+ catch (err) {
461
+ throw moduleError('Cannot find module');
462
+ }
463
+ }
464
+
465
+ if (self.has(opts.file)) return self;
466
+
467
+ var dirname = path.dirname(opts.file);
468
+ var pkgfile = path.join(dirname, 'package.json');
469
+
470
+ if (!mfile.match(/^(\.\.?)?\//)) {
471
+ try {
472
+ pkgfile = resolve.sync(path.join(mfile, 'package.json'), {
473
+ basedir : dirname
474
+ });
475
+ }
476
+ catch (err) {}
477
+ }
478
+
479
+ if (pkgfile && !self._checkedPackages[pkgfile]) {
480
+ self._checkedPackages[pkgfile] = true;
481
+ if (existsSync(pkgfile)) {
482
+ var pkgBody = fs.readFileSync(pkgfile, 'utf8');
483
+ try {
484
+ var npmpkg = JSON.parse(pkgBody);
485
+ if (npmpkg.main !== undefined) {
486
+ pkg.main = npmpkg.main;
487
+ }
488
+ if (npmpkg.browserify !== undefined) {
489
+ pkg.browserify = npmpkg.browserify;
490
+ }
491
+ }
492
+ catch (err) {
493
+ // ignore broken package.jsons just like node
494
+ }
495
+
496
+ self.files[pkgfile] = {
497
+ body : 'module.exports = ' + JSON.stringify(pkg),
498
+ };
499
+ }
500
+ }
501
+
502
+ var entry = self.files[opts.file] = {
503
+ target : opts.target
504
+ };
505
+ // entry must be set before readFile for the watch
506
+ var body = entry.body = opts.body || self.readFile(opts.file);
507
+ if (body === undefined) {
508
+ delete self.files[opts.file];
509
+ return self;
510
+ }
511
+
512
+ try {
513
+ var required = self.detective.find(body);
514
+ }
515
+ catch (err) {
516
+ process.nextTick(function () {
517
+ self.emit('syntaxError', err);
518
+ });
519
+ return self;
520
+ }
521
+
522
+ if (pkg.browserify && pkg.browserify.require) {
523
+ required.strings = required.strings.concat(
524
+ pkg.browserify.require
525
+ );
526
+ }
527
+
528
+ if (required.expressions.length) {
529
+ console.error('Expressions in require() statements:');
530
+ required.expressions.forEach(function (ex) {
531
+ console.error(' require(' + ex + ')');
532
+ });
533
+ }
534
+
535
+ nub(required.strings).forEach(function (req) {
536
+ var params = {
537
+ dirname : dirname,
538
+ fromFile : opts.file,
539
+ };
540
+ if (opts.target && /^[.\/]/.test(req)) {
541
+ params.target = idFromPath(resolveMod(opts.target, req));
542
+ }
543
+ self.require(req, params);
544
+ });
545
+
546
+ return self;
547
+ };
548
+
549
+ function isPrefixOf (x, y) {
550
+ return y.slice(0, x.length) === x;
551
+ }
552
+
553
+ Wrap.prototype.has = function (file) {
554
+ var self = this;
555
+ if (self.files[file]) return true;
556
+
557
+ var res = Object.keys(self.files).some(function (key) {
558
+ return self.files[key].target === file;
559
+ });
560
+ return res;
561
+ };
562
+
563
+ Wrap.prototype.resolver = function (file, basedir) {
564
+ return resolve.sync(file, {
565
+ basedir : basedir,
566
+ extensions : this.extensions,
567
+ packageFilter : function (pkg) {
568
+ var b = pkg.browserify;
569
+ if (b) {
570
+ if (typeof b === 'string') {
571
+ pkg.main = b;
572
+ }
573
+ else if (typeof b === 'object' && b.main) {
574
+ pkg.main = b.main;
575
+ }
576
+ }
577
+ return pkg
578
+ }
579
+ });
580
+ }