smock 0.1.217 → 0.1.218

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 (315) hide show
  1. data/Gemfile.lock +1 -1
  2. data/app/assets/javascripts/modules/category_dropdown.coffee +0 -1
  3. data/examples/pages/homepage.html +1 -0
  4. data/node_modules/exports-loader/.npmignore +1 -0
  5. data/node_modules/exports-loader/README.md +18 -0
  6. data/node_modules/exports-loader/index.js +36 -0
  7. data/node_modules/exports-loader/node_modules/loader-utils/.npmignore +1 -0
  8. data/node_modules/exports-loader/node_modules/loader-utils/README.md +129 -0
  9. data/node_modules/exports-loader/node_modules/loader-utils/index.js +229 -0
  10. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/.bin/json5 +41 -0
  11. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/.npmignore +0 -0
  12. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/LICENCE +23 -0
  13. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/README.md +214 -0
  14. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/big.js +1026 -0
  15. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/big.min.js +1 -0
  16. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/doc/bigAPI.html +1026 -0
  17. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/package.json +61 -0
  18. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/perf/big-vs-bigdecimal.html +678 -0
  19. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/perf/bigtime.js +324 -0
  20. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/perf/lib/bigdecimal_GWT/BigDecTest.class +0 -0
  21. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/perf/lib/bigdecimal_GWT/BigDecTest.java +60 -0
  22. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/perf/lib/bigdecimal_GWT/LICENCE.txt +205 -0
  23. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/perf/lib/bigdecimal_GWT/bigdecimal.js +592 -0
  24. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/perf/lib/bigdecimal_GWT/bugs.js +53 -0
  25. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/perf/lib/bigdecimal_ICU4J/BigDecimal-all-last.js +5724 -0
  26. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/perf/lib/bigdecimal_ICU4J/BigDecimal-all-last.min.js +61 -0
  27. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/perf/lib/bigdecimal_ICU4J/LICENCE.txt +30 -0
  28. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/test/abs.js +555 -0
  29. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/test/browser/big-vs-number.html +249 -0
  30. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/test/browser/every-test.html +66 -0
  31. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/test/browser/single-test.html +26 -0
  32. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/test/cmp.js +4305 -0
  33. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/test/div.js +9978 -0
  34. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/test/every-test.js +31 -0
  35. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/test/minus.js +1793 -0
  36. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/test/mod.js +1838 -0
  37. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/test/plus.js +1916 -0
  38. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/test/pow.js +1233 -0
  39. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/test/round.js +5173 -0
  40. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/test/sqrt.js +788 -0
  41. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/test/times.js +2159 -0
  42. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/test/toExponential.js +472 -0
  43. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/test/toFixed.js +1030 -0
  44. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/test/toPrecision.js +508 -0
  45. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/test/toString.js +1068 -0
  46. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/.npmignore +4 -0
  47. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/CHANGELOG.md +56 -0
  48. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/Makefile +27 -0
  49. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/README.md +173 -0
  50. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/lib/cli.js +41 -0
  51. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/lib/json5.js +462 -0
  52. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/lib/require.js +18 -0
  53. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/package.json +66 -0
  54. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/package.json5 +24 -0
  55. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/arrays/empty-array.json +1 -0
  56. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/arrays/leading-comma-array.js +3 -0
  57. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/arrays/lone-trailing-comma-array.js +3 -0
  58. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/arrays/no-comma-array.txt +4 -0
  59. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/arrays/regular-array.json +5 -0
  60. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/arrays/trailing-comma-array.json5 +3 -0
  61. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/block-comment-following-array-element.json5 +6 -0
  62. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/block-comment-following-top-level-value.json5 +5 -0
  63. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/block-comment-in-string.json +1 -0
  64. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/block-comment-preceding-top-level-value.json5 +5 -0
  65. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/block-comment-with-asterisks.json5 +7 -0
  66. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/inline-comment-following-array-element.json5 +3 -0
  67. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/inline-comment-following-top-level-value.json5 +1 -0
  68. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/inline-comment-in-string.json +1 -0
  69. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/inline-comment-preceding-top-level-value.json5 +2 -0
  70. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/top-level-block-comment.txt +4 -0
  71. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/top-level-inline-comment.txt +1 -0
  72. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/unterminated-block-comment.txt +5 -0
  73. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/misc/empty.txt +0 -0
  74. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/misc/npm-package.json +106 -0
  75. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/misc/npm-package.json5 +106 -0
  76. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/misc/readme-example.json5 +23 -0
  77. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/decimal-literal-with-exponent.json +1 -0
  78. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/decimal-literal-with-negative-exponent.json +1 -0
  79. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/decimal-literal.json +1 -0
  80. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/hexadecimal-literal-with-lowercase-letter.json5 +1 -0
  81. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/hexadecimal-literal-with-no-digits.txt +1 -0
  82. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/hexadecimal-literal-with-uppercase-x.json5 +1 -0
  83. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/hexadecimal-literal.json5 +1 -0
  84. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/leading-decimal-point.json5 +1 -0
  85. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/negative-decimal-literal.json +1 -0
  86. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/negative-hexadecimal-literal.json5 +1 -0
  87. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/negative-leading-decimal-point.json5 +1 -0
  88. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/noctal-literal-with-octal-digit-after-leading-zero.js +1 -0
  89. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/noctal-literal.js +1 -0
  90. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/octal-literal.txt +1 -0
  91. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/trailing-decimal-point-with-exponent.js +1 -0
  92. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/trailing-decimal-point.js +1 -0
  93. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/zero-literal.json +1 -0
  94. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/objects/empty-object.json +1 -0
  95. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/objects/illegal-unquoted-key-number.txt +3 -0
  96. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/objects/illegal-unquoted-key-symbol.txt +3 -0
  97. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/objects/leading-comma-object.txt +3 -0
  98. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/objects/lone-trailing-comma-object.txt +3 -0
  99. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/objects/no-comma-object.txt +4 -0
  100. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/objects/reserved-unquoted-key.json5 +3 -0
  101. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/objects/single-quoted-key.json5 +3 -0
  102. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/objects/trailing-comma-object.json5 +3 -0
  103. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/objects/unquoted-keys.json5 +8 -0
  104. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/strings/escaped-single-quoted-string.json5 +1 -0
  105. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/strings/multi-line-string.json5 +2 -0
  106. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/strings/single-quoted-string.json5 +1 -0
  107. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/todo/unicode-escaped-unquoted-key.json5 +3 -0
  108. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/todo/unicode-unquoted-key.json5 +3 -0
  109. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse.js +74 -0
  110. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/readme.md +23 -0
  111. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/require.js +18 -0
  112. data/node_modules/exports-loader/node_modules/loader-utils/package.json +54 -0
  113. data/node_modules/exports-loader/node_modules/loader-utils/test/index.js +62 -0
  114. data/node_modules/exports-loader/node_modules/source-map/.npmignore +2 -0
  115. data/node_modules/exports-loader/node_modules/source-map/.travis.yml +4 -0
  116. data/node_modules/exports-loader/node_modules/source-map/CHANGELOG.md +194 -0
  117. data/node_modules/exports-loader/node_modules/source-map/LICENSE +28 -0
  118. data/node_modules/exports-loader/node_modules/source-map/Makefile.dryice.js +166 -0
  119. data/node_modules/exports-loader/node_modules/source-map/README.md +475 -0
  120. data/node_modules/exports-loader/node_modules/source-map/build/assert-shim.js +56 -0
  121. data/node_modules/exports-loader/node_modules/source-map/build/mini-require.js +152 -0
  122. data/node_modules/exports-loader/node_modules/source-map/build/prefix-source-map.jsm +20 -0
  123. data/node_modules/exports-loader/node_modules/source-map/build/prefix-utils.jsm +18 -0
  124. data/node_modules/exports-loader/node_modules/source-map/build/suffix-browser.js +8 -0
  125. data/node_modules/exports-loader/node_modules/source-map/build/suffix-source-map.jsm +6 -0
  126. data/node_modules/exports-loader/node_modules/source-map/build/suffix-utils.jsm +21 -0
  127. data/node_modules/exports-loader/node_modules/source-map/build/test-prefix.js +8 -0
  128. data/node_modules/exports-loader/node_modules/source-map/build/test-suffix.js +3 -0
  129. data/node_modules/exports-loader/node_modules/source-map/lib/source-map.js +8 -0
  130. data/node_modules/exports-loader/node_modules/source-map/lib/source-map/array-set.js +97 -0
  131. data/node_modules/exports-loader/node_modules/source-map/lib/source-map/base64-vlq.js +142 -0
  132. data/node_modules/exports-loader/node_modules/source-map/lib/source-map/base64.js +42 -0
  133. data/node_modules/exports-loader/node_modules/source-map/lib/source-map/binary-search.js +80 -0
  134. data/node_modules/exports-loader/node_modules/source-map/lib/source-map/mapping-list.js +86 -0
  135. data/node_modules/exports-loader/node_modules/source-map/lib/source-map/source-map-consumer.js +575 -0
  136. data/node_modules/exports-loader/node_modules/source-map/lib/source-map/source-map-generator.js +400 -0
  137. data/node_modules/exports-loader/node_modules/source-map/lib/source-map/source-node.js +414 -0
  138. data/node_modules/exports-loader/node_modules/source-map/lib/source-map/util.js +319 -0
  139. data/node_modules/exports-loader/node_modules/source-map/node_modules/amdefine/LICENSE +58 -0
  140. data/node_modules/exports-loader/node_modules/source-map/node_modules/amdefine/README.md +171 -0
  141. data/node_modules/exports-loader/node_modules/source-map/node_modules/amdefine/amdefine.js +299 -0
  142. data/node_modules/exports-loader/node_modules/source-map/node_modules/amdefine/intercept.js +36 -0
  143. data/node_modules/exports-loader/node_modules/source-map/node_modules/amdefine/package.json +37 -0
  144. data/node_modules/exports-loader/node_modules/source-map/package.json +186 -0
  145. data/node_modules/exports-loader/node_modules/source-map/test/run-tests.js +62 -0
  146. data/node_modules/exports-loader/node_modules/source-map/test/source-map/test-api.js +26 -0
  147. data/node_modules/exports-loader/node_modules/source-map/test/source-map/test-array-set.js +104 -0
  148. data/node_modules/exports-loader/node_modules/source-map/test/source-map/test-base64-vlq.js +23 -0
  149. data/node_modules/exports-loader/node_modules/source-map/test/source-map/test-base64.js +35 -0
  150. data/node_modules/exports-loader/node_modules/source-map/test/source-map/test-binary-search.js +54 -0
  151. data/node_modules/exports-loader/node_modules/source-map/test/source-map/test-dog-fooding.js +84 -0
  152. data/node_modules/exports-loader/node_modules/source-map/test/source-map/test-source-map-consumer.js +702 -0
  153. data/node_modules/exports-loader/node_modules/source-map/test/source-map/test-source-map-generator.js +679 -0
  154. data/node_modules/exports-loader/node_modules/source-map/test/source-map/test-source-node.js +612 -0
  155. data/node_modules/exports-loader/node_modules/source-map/test/source-map/test-util.js +216 -0
  156. data/node_modules/exports-loader/node_modules/source-map/test/source-map/util.js +192 -0
  157. data/node_modules/exports-loader/package.json +46 -0
  158. data/node_modules/imports-loader/.npmignore +1 -0
  159. data/node_modules/imports-loader/README.md +17 -0
  160. data/node_modules/imports-loader/index.js +46 -0
  161. data/node_modules/imports-loader/node_modules/loader-utils/.npmignore +1 -0
  162. data/node_modules/imports-loader/node_modules/loader-utils/README.md +129 -0
  163. data/node_modules/imports-loader/node_modules/loader-utils/index.js +229 -0
  164. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/.bin/json5 +41 -0
  165. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/.npmignore +0 -0
  166. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/LICENCE +23 -0
  167. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/README.md +214 -0
  168. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/big.js +1026 -0
  169. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/big.min.js +1 -0
  170. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/doc/bigAPI.html +1026 -0
  171. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/package.json +61 -0
  172. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/perf/big-vs-bigdecimal.html +678 -0
  173. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/perf/bigtime.js +324 -0
  174. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/perf/lib/bigdecimal_GWT/BigDecTest.class +0 -0
  175. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/perf/lib/bigdecimal_GWT/BigDecTest.java +60 -0
  176. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/perf/lib/bigdecimal_GWT/LICENCE.txt +205 -0
  177. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/perf/lib/bigdecimal_GWT/bigdecimal.js +592 -0
  178. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/perf/lib/bigdecimal_GWT/bugs.js +53 -0
  179. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/perf/lib/bigdecimal_ICU4J/BigDecimal-all-last.js +5724 -0
  180. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/perf/lib/bigdecimal_ICU4J/BigDecimal-all-last.min.js +61 -0
  181. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/perf/lib/bigdecimal_ICU4J/LICENCE.txt +30 -0
  182. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/test/abs.js +555 -0
  183. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/test/browser/big-vs-number.html +249 -0
  184. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/test/browser/every-test.html +66 -0
  185. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/test/browser/single-test.html +26 -0
  186. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/test/cmp.js +4305 -0
  187. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/test/div.js +9978 -0
  188. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/test/every-test.js +31 -0
  189. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/test/minus.js +1793 -0
  190. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/test/mod.js +1838 -0
  191. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/test/plus.js +1916 -0
  192. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/test/pow.js +1233 -0
  193. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/test/round.js +5173 -0
  194. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/test/sqrt.js +788 -0
  195. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/test/times.js +2159 -0
  196. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/test/toExponential.js +472 -0
  197. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/test/toFixed.js +1030 -0
  198. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/test/toPrecision.js +508 -0
  199. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/test/toString.js +1068 -0
  200. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/.npmignore +4 -0
  201. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/CHANGELOG.md +56 -0
  202. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/Makefile +27 -0
  203. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/README.md +173 -0
  204. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/lib/cli.js +41 -0
  205. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/lib/json5.js +462 -0
  206. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/lib/require.js +18 -0
  207. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/package.json +66 -0
  208. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/package.json5 +24 -0
  209. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/arrays/empty-array.json +1 -0
  210. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/arrays/leading-comma-array.js +3 -0
  211. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/arrays/lone-trailing-comma-array.js +3 -0
  212. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/arrays/no-comma-array.txt +4 -0
  213. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/arrays/regular-array.json +5 -0
  214. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/arrays/trailing-comma-array.json5 +3 -0
  215. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/block-comment-following-array-element.json5 +6 -0
  216. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/block-comment-following-top-level-value.json5 +5 -0
  217. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/block-comment-in-string.json +1 -0
  218. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/block-comment-preceding-top-level-value.json5 +5 -0
  219. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/block-comment-with-asterisks.json5 +7 -0
  220. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/inline-comment-following-array-element.json5 +3 -0
  221. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/inline-comment-following-top-level-value.json5 +1 -0
  222. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/inline-comment-in-string.json +1 -0
  223. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/inline-comment-preceding-top-level-value.json5 +2 -0
  224. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/top-level-block-comment.txt +4 -0
  225. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/top-level-inline-comment.txt +1 -0
  226. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/unterminated-block-comment.txt +5 -0
  227. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/misc/empty.txt +0 -0
  228. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/misc/npm-package.json +106 -0
  229. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/misc/npm-package.json5 +106 -0
  230. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/misc/readme-example.json5 +23 -0
  231. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/decimal-literal-with-exponent.json +1 -0
  232. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/decimal-literal-with-negative-exponent.json +1 -0
  233. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/decimal-literal.json +1 -0
  234. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/hexadecimal-literal-with-lowercase-letter.json5 +1 -0
  235. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/hexadecimal-literal-with-no-digits.txt +1 -0
  236. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/hexadecimal-literal-with-uppercase-x.json5 +1 -0
  237. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/hexadecimal-literal.json5 +1 -0
  238. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/leading-decimal-point.json5 +1 -0
  239. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/negative-decimal-literal.json +1 -0
  240. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/negative-hexadecimal-literal.json5 +1 -0
  241. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/negative-leading-decimal-point.json5 +1 -0
  242. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/noctal-literal-with-octal-digit-after-leading-zero.js +1 -0
  243. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/noctal-literal.js +1 -0
  244. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/octal-literal.txt +1 -0
  245. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/trailing-decimal-point-with-exponent.js +1 -0
  246. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/trailing-decimal-point.js +1 -0
  247. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/zero-literal.json +1 -0
  248. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/objects/empty-object.json +1 -0
  249. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/objects/illegal-unquoted-key-number.txt +3 -0
  250. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/objects/illegal-unquoted-key-symbol.txt +3 -0
  251. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/objects/leading-comma-object.txt +3 -0
  252. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/objects/lone-trailing-comma-object.txt +3 -0
  253. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/objects/no-comma-object.txt +4 -0
  254. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/objects/reserved-unquoted-key.json5 +3 -0
  255. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/objects/single-quoted-key.json5 +3 -0
  256. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/objects/trailing-comma-object.json5 +3 -0
  257. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/objects/unquoted-keys.json5 +8 -0
  258. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/strings/escaped-single-quoted-string.json5 +1 -0
  259. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/strings/multi-line-string.json5 +2 -0
  260. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/strings/single-quoted-string.json5 +1 -0
  261. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/todo/unicode-escaped-unquoted-key.json5 +3 -0
  262. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/todo/unicode-unquoted-key.json5 +3 -0
  263. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse.js +74 -0
  264. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/readme.md +23 -0
  265. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/require.js +18 -0
  266. data/node_modules/imports-loader/node_modules/loader-utils/package.json +53 -0
  267. data/node_modules/imports-loader/node_modules/loader-utils/test/index.js +62 -0
  268. data/node_modules/imports-loader/node_modules/source-map/.npmignore +2 -0
  269. data/node_modules/imports-loader/node_modules/source-map/.travis.yml +4 -0
  270. data/node_modules/imports-loader/node_modules/source-map/CHANGELOG.md +194 -0
  271. data/node_modules/imports-loader/node_modules/source-map/LICENSE +28 -0
  272. data/node_modules/imports-loader/node_modules/source-map/Makefile.dryice.js +166 -0
  273. data/node_modules/imports-loader/node_modules/source-map/README.md +475 -0
  274. data/node_modules/imports-loader/node_modules/source-map/build/assert-shim.js +56 -0
  275. data/node_modules/imports-loader/node_modules/source-map/build/mini-require.js +152 -0
  276. data/node_modules/imports-loader/node_modules/source-map/build/prefix-source-map.jsm +20 -0
  277. data/node_modules/imports-loader/node_modules/source-map/build/prefix-utils.jsm +18 -0
  278. data/node_modules/imports-loader/node_modules/source-map/build/suffix-browser.js +8 -0
  279. data/node_modules/imports-loader/node_modules/source-map/build/suffix-source-map.jsm +6 -0
  280. data/node_modules/imports-loader/node_modules/source-map/build/suffix-utils.jsm +21 -0
  281. data/node_modules/imports-loader/node_modules/source-map/build/test-prefix.js +8 -0
  282. data/node_modules/imports-loader/node_modules/source-map/build/test-suffix.js +3 -0
  283. data/node_modules/imports-loader/node_modules/source-map/lib/source-map.js +8 -0
  284. data/node_modules/imports-loader/node_modules/source-map/lib/source-map/array-set.js +97 -0
  285. data/node_modules/imports-loader/node_modules/source-map/lib/source-map/base64-vlq.js +142 -0
  286. data/node_modules/imports-loader/node_modules/source-map/lib/source-map/base64.js +42 -0
  287. data/node_modules/imports-loader/node_modules/source-map/lib/source-map/binary-search.js +80 -0
  288. data/node_modules/imports-loader/node_modules/source-map/lib/source-map/mapping-list.js +86 -0
  289. data/node_modules/imports-loader/node_modules/source-map/lib/source-map/source-map-consumer.js +575 -0
  290. data/node_modules/imports-loader/node_modules/source-map/lib/source-map/source-map-generator.js +400 -0
  291. data/node_modules/imports-loader/node_modules/source-map/lib/source-map/source-node.js +414 -0
  292. data/node_modules/imports-loader/node_modules/source-map/lib/source-map/util.js +319 -0
  293. data/node_modules/imports-loader/node_modules/source-map/node_modules/amdefine/LICENSE +58 -0
  294. data/node_modules/imports-loader/node_modules/source-map/node_modules/amdefine/README.md +171 -0
  295. data/node_modules/imports-loader/node_modules/source-map/node_modules/amdefine/amdefine.js +299 -0
  296. data/node_modules/imports-loader/node_modules/source-map/node_modules/amdefine/intercept.js +36 -0
  297. data/node_modules/imports-loader/node_modules/source-map/node_modules/amdefine/package.json +37 -0
  298. data/node_modules/imports-loader/node_modules/source-map/package.json +186 -0
  299. data/node_modules/imports-loader/node_modules/source-map/test/run-tests.js +62 -0
  300. data/node_modules/imports-loader/node_modules/source-map/test/source-map/test-api.js +26 -0
  301. data/node_modules/imports-loader/node_modules/source-map/test/source-map/test-array-set.js +104 -0
  302. data/node_modules/imports-loader/node_modules/source-map/test/source-map/test-base64-vlq.js +23 -0
  303. data/node_modules/imports-loader/node_modules/source-map/test/source-map/test-base64.js +35 -0
  304. data/node_modules/imports-loader/node_modules/source-map/test/source-map/test-binary-search.js +54 -0
  305. data/node_modules/imports-loader/node_modules/source-map/test/source-map/test-dog-fooding.js +84 -0
  306. data/node_modules/imports-loader/node_modules/source-map/test/source-map/test-source-map-consumer.js +702 -0
  307. data/node_modules/imports-loader/node_modules/source-map/test/source-map/test-source-map-generator.js +679 -0
  308. data/node_modules/imports-loader/node_modules/source-map/test/source-map/test-source-node.js +612 -0
  309. data/node_modules/imports-loader/node_modules/source-map/test/source-map/test-util.js +216 -0
  310. data/node_modules/imports-loader/node_modules/source-map/test/source-map/util.js +192 -0
  311. data/node_modules/imports-loader/package.json +46 -0
  312. data/package.json +4 -2
  313. data/webpack.config.js +3 -6
  314. metadata +312 -5
  315. data/app/assets/javascripts/vendor/jquery.js +0 -10346
@@ -0,0 +1,400 @@
1
+ /* -*- Mode: js; js-indent-level: 2; -*- */
2
+ /*
3
+ * Copyright 2011 Mozilla Foundation and contributors
4
+ * Licensed under the New BSD license. See LICENSE or:
5
+ * http://opensource.org/licenses/BSD-3-Clause
6
+ */
7
+ if (typeof define !== 'function') {
8
+ var define = require('amdefine')(module, require);
9
+ }
10
+ define(function (require, exports, module) {
11
+
12
+ var base64VLQ = require('./base64-vlq');
13
+ var util = require('./util');
14
+ var ArraySet = require('./array-set').ArraySet;
15
+ var MappingList = require('./mapping-list').MappingList;
16
+
17
+ /**
18
+ * An instance of the SourceMapGenerator represents a source map which is
19
+ * being built incrementally. You may pass an object with the following
20
+ * properties:
21
+ *
22
+ * - file: The filename of the generated source.
23
+ * - sourceRoot: A root for all relative URLs in this source map.
24
+ */
25
+ function SourceMapGenerator(aArgs) {
26
+ if (!aArgs) {
27
+ aArgs = {};
28
+ }
29
+ this._file = util.getArg(aArgs, 'file', null);
30
+ this._sourceRoot = util.getArg(aArgs, 'sourceRoot', null);
31
+ this._skipValidation = util.getArg(aArgs, 'skipValidation', false);
32
+ this._sources = new ArraySet();
33
+ this._names = new ArraySet();
34
+ this._mappings = new MappingList();
35
+ this._sourcesContents = null;
36
+ }
37
+
38
+ SourceMapGenerator.prototype._version = 3;
39
+
40
+ /**
41
+ * Creates a new SourceMapGenerator based on a SourceMapConsumer
42
+ *
43
+ * @param aSourceMapConsumer The SourceMap.
44
+ */
45
+ SourceMapGenerator.fromSourceMap =
46
+ function SourceMapGenerator_fromSourceMap(aSourceMapConsumer) {
47
+ var sourceRoot = aSourceMapConsumer.sourceRoot;
48
+ var generator = new SourceMapGenerator({
49
+ file: aSourceMapConsumer.file,
50
+ sourceRoot: sourceRoot
51
+ });
52
+ aSourceMapConsumer.eachMapping(function (mapping) {
53
+ var newMapping = {
54
+ generated: {
55
+ line: mapping.generatedLine,
56
+ column: mapping.generatedColumn
57
+ }
58
+ };
59
+
60
+ if (mapping.source != null) {
61
+ newMapping.source = mapping.source;
62
+ if (sourceRoot != null) {
63
+ newMapping.source = util.relative(sourceRoot, newMapping.source);
64
+ }
65
+
66
+ newMapping.original = {
67
+ line: mapping.originalLine,
68
+ column: mapping.originalColumn
69
+ };
70
+
71
+ if (mapping.name != null) {
72
+ newMapping.name = mapping.name;
73
+ }
74
+ }
75
+
76
+ generator.addMapping(newMapping);
77
+ });
78
+ aSourceMapConsumer.sources.forEach(function (sourceFile) {
79
+ var content = aSourceMapConsumer.sourceContentFor(sourceFile);
80
+ if (content != null) {
81
+ generator.setSourceContent(sourceFile, content);
82
+ }
83
+ });
84
+ return generator;
85
+ };
86
+
87
+ /**
88
+ * Add a single mapping from original source line and column to the generated
89
+ * source's line and column for this source map being created. The mapping
90
+ * object should have the following properties:
91
+ *
92
+ * - generated: An object with the generated line and column positions.
93
+ * - original: An object with the original line and column positions.
94
+ * - source: The original source file (relative to the sourceRoot).
95
+ * - name: An optional original token name for this mapping.
96
+ */
97
+ SourceMapGenerator.prototype.addMapping =
98
+ function SourceMapGenerator_addMapping(aArgs) {
99
+ var generated = util.getArg(aArgs, 'generated');
100
+ var original = util.getArg(aArgs, 'original', null);
101
+ var source = util.getArg(aArgs, 'source', null);
102
+ var name = util.getArg(aArgs, 'name', null);
103
+
104
+ if (!this._skipValidation) {
105
+ this._validateMapping(generated, original, source, name);
106
+ }
107
+
108
+ if (source != null && !this._sources.has(source)) {
109
+ this._sources.add(source);
110
+ }
111
+
112
+ if (name != null && !this._names.has(name)) {
113
+ this._names.add(name);
114
+ }
115
+
116
+ this._mappings.add({
117
+ generatedLine: generated.line,
118
+ generatedColumn: generated.column,
119
+ originalLine: original != null && original.line,
120
+ originalColumn: original != null && original.column,
121
+ source: source,
122
+ name: name
123
+ });
124
+ };
125
+
126
+ /**
127
+ * Set the source content for a source file.
128
+ */
129
+ SourceMapGenerator.prototype.setSourceContent =
130
+ function SourceMapGenerator_setSourceContent(aSourceFile, aSourceContent) {
131
+ var source = aSourceFile;
132
+ if (this._sourceRoot != null) {
133
+ source = util.relative(this._sourceRoot, source);
134
+ }
135
+
136
+ if (aSourceContent != null) {
137
+ // Add the source content to the _sourcesContents map.
138
+ // Create a new _sourcesContents map if the property is null.
139
+ if (!this._sourcesContents) {
140
+ this._sourcesContents = {};
141
+ }
142
+ this._sourcesContents[util.toSetString(source)] = aSourceContent;
143
+ } else if (this._sourcesContents) {
144
+ // Remove the source file from the _sourcesContents map.
145
+ // If the _sourcesContents map is empty, set the property to null.
146
+ delete this._sourcesContents[util.toSetString(source)];
147
+ if (Object.keys(this._sourcesContents).length === 0) {
148
+ this._sourcesContents = null;
149
+ }
150
+ }
151
+ };
152
+
153
+ /**
154
+ * Applies the mappings of a sub-source-map for a specific source file to the
155
+ * source map being generated. Each mapping to the supplied source file is
156
+ * rewritten using the supplied source map. Note: The resolution for the
157
+ * resulting mappings is the minimium of this map and the supplied map.
158
+ *
159
+ * @param aSourceMapConsumer The source map to be applied.
160
+ * @param aSourceFile Optional. The filename of the source file.
161
+ * If omitted, SourceMapConsumer's file property will be used.
162
+ * @param aSourceMapPath Optional. The dirname of the path to the source map
163
+ * to be applied. If relative, it is relative to the SourceMapConsumer.
164
+ * This parameter is needed when the two source maps aren't in the same
165
+ * directory, and the source map to be applied contains relative source
166
+ * paths. If so, those relative source paths need to be rewritten
167
+ * relative to the SourceMapGenerator.
168
+ */
169
+ SourceMapGenerator.prototype.applySourceMap =
170
+ function SourceMapGenerator_applySourceMap(aSourceMapConsumer, aSourceFile, aSourceMapPath) {
171
+ var sourceFile = aSourceFile;
172
+ // If aSourceFile is omitted, we will use the file property of the SourceMap
173
+ if (aSourceFile == null) {
174
+ if (aSourceMapConsumer.file == null) {
175
+ throw new Error(
176
+ 'SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, ' +
177
+ 'or the source map\'s "file" property. Both were omitted.'
178
+ );
179
+ }
180
+ sourceFile = aSourceMapConsumer.file;
181
+ }
182
+ var sourceRoot = this._sourceRoot;
183
+ // Make "sourceFile" relative if an absolute Url is passed.
184
+ if (sourceRoot != null) {
185
+ sourceFile = util.relative(sourceRoot, sourceFile);
186
+ }
187
+ // Applying the SourceMap can add and remove items from the sources and
188
+ // the names array.
189
+ var newSources = new ArraySet();
190
+ var newNames = new ArraySet();
191
+
192
+ // Find mappings for the "sourceFile"
193
+ this._mappings.unsortedForEach(function (mapping) {
194
+ if (mapping.source === sourceFile && mapping.originalLine != null) {
195
+ // Check if it can be mapped by the source map, then update the mapping.
196
+ var original = aSourceMapConsumer.originalPositionFor({
197
+ line: mapping.originalLine,
198
+ column: mapping.originalColumn
199
+ });
200
+ if (original.source != null) {
201
+ // Copy mapping
202
+ mapping.source = original.source;
203
+ if (aSourceMapPath != null) {
204
+ mapping.source = util.join(aSourceMapPath, mapping.source)
205
+ }
206
+ if (sourceRoot != null) {
207
+ mapping.source = util.relative(sourceRoot, mapping.source);
208
+ }
209
+ mapping.originalLine = original.line;
210
+ mapping.originalColumn = original.column;
211
+ if (original.name != null) {
212
+ mapping.name = original.name;
213
+ }
214
+ }
215
+ }
216
+
217
+ var source = mapping.source;
218
+ if (source != null && !newSources.has(source)) {
219
+ newSources.add(source);
220
+ }
221
+
222
+ var name = mapping.name;
223
+ if (name != null && !newNames.has(name)) {
224
+ newNames.add(name);
225
+ }
226
+
227
+ }, this);
228
+ this._sources = newSources;
229
+ this._names = newNames;
230
+
231
+ // Copy sourcesContents of applied map.
232
+ aSourceMapConsumer.sources.forEach(function (sourceFile) {
233
+ var content = aSourceMapConsumer.sourceContentFor(sourceFile);
234
+ if (content != null) {
235
+ if (aSourceMapPath != null) {
236
+ sourceFile = util.join(aSourceMapPath, sourceFile);
237
+ }
238
+ if (sourceRoot != null) {
239
+ sourceFile = util.relative(sourceRoot, sourceFile);
240
+ }
241
+ this.setSourceContent(sourceFile, content);
242
+ }
243
+ }, this);
244
+ };
245
+
246
+ /**
247
+ * A mapping can have one of the three levels of data:
248
+ *
249
+ * 1. Just the generated position.
250
+ * 2. The Generated position, original position, and original source.
251
+ * 3. Generated and original position, original source, as well as a name
252
+ * token.
253
+ *
254
+ * To maintain consistency, we validate that any new mapping being added falls
255
+ * in to one of these categories.
256
+ */
257
+ SourceMapGenerator.prototype._validateMapping =
258
+ function SourceMapGenerator_validateMapping(aGenerated, aOriginal, aSource,
259
+ aName) {
260
+ if (aGenerated && 'line' in aGenerated && 'column' in aGenerated
261
+ && aGenerated.line > 0 && aGenerated.column >= 0
262
+ && !aOriginal && !aSource && !aName) {
263
+ // Case 1.
264
+ return;
265
+ }
266
+ else if (aGenerated && 'line' in aGenerated && 'column' in aGenerated
267
+ && aOriginal && 'line' in aOriginal && 'column' in aOriginal
268
+ && aGenerated.line > 0 && aGenerated.column >= 0
269
+ && aOriginal.line > 0 && aOriginal.column >= 0
270
+ && aSource) {
271
+ // Cases 2 and 3.
272
+ return;
273
+ }
274
+ else {
275
+ throw new Error('Invalid mapping: ' + JSON.stringify({
276
+ generated: aGenerated,
277
+ source: aSource,
278
+ original: aOriginal,
279
+ name: aName
280
+ }));
281
+ }
282
+ };
283
+
284
+ /**
285
+ * Serialize the accumulated mappings in to the stream of base 64 VLQs
286
+ * specified by the source map format.
287
+ */
288
+ SourceMapGenerator.prototype._serializeMappings =
289
+ function SourceMapGenerator_serializeMappings() {
290
+ var previousGeneratedColumn = 0;
291
+ var previousGeneratedLine = 1;
292
+ var previousOriginalColumn = 0;
293
+ var previousOriginalLine = 0;
294
+ var previousName = 0;
295
+ var previousSource = 0;
296
+ var result = '';
297
+ var mapping;
298
+
299
+ var mappings = this._mappings.toArray();
300
+
301
+ for (var i = 0, len = mappings.length; i < len; i++) {
302
+ mapping = mappings[i];
303
+
304
+ if (mapping.generatedLine !== previousGeneratedLine) {
305
+ previousGeneratedColumn = 0;
306
+ while (mapping.generatedLine !== previousGeneratedLine) {
307
+ result += ';';
308
+ previousGeneratedLine++;
309
+ }
310
+ }
311
+ else {
312
+ if (i > 0) {
313
+ if (!util.compareByGeneratedPositions(mapping, mappings[i - 1])) {
314
+ continue;
315
+ }
316
+ result += ',';
317
+ }
318
+ }
319
+
320
+ result += base64VLQ.encode(mapping.generatedColumn
321
+ - previousGeneratedColumn);
322
+ previousGeneratedColumn = mapping.generatedColumn;
323
+
324
+ if (mapping.source != null) {
325
+ result += base64VLQ.encode(this._sources.indexOf(mapping.source)
326
+ - previousSource);
327
+ previousSource = this._sources.indexOf(mapping.source);
328
+
329
+ // lines are stored 0-based in SourceMap spec version 3
330
+ result += base64VLQ.encode(mapping.originalLine - 1
331
+ - previousOriginalLine);
332
+ previousOriginalLine = mapping.originalLine - 1;
333
+
334
+ result += base64VLQ.encode(mapping.originalColumn
335
+ - previousOriginalColumn);
336
+ previousOriginalColumn = mapping.originalColumn;
337
+
338
+ if (mapping.name != null) {
339
+ result += base64VLQ.encode(this._names.indexOf(mapping.name)
340
+ - previousName);
341
+ previousName = this._names.indexOf(mapping.name);
342
+ }
343
+ }
344
+ }
345
+
346
+ return result;
347
+ };
348
+
349
+ SourceMapGenerator.prototype._generateSourcesContent =
350
+ function SourceMapGenerator_generateSourcesContent(aSources, aSourceRoot) {
351
+ return aSources.map(function (source) {
352
+ if (!this._sourcesContents) {
353
+ return null;
354
+ }
355
+ if (aSourceRoot != null) {
356
+ source = util.relative(aSourceRoot, source);
357
+ }
358
+ var key = util.toSetString(source);
359
+ return Object.prototype.hasOwnProperty.call(this._sourcesContents,
360
+ key)
361
+ ? this._sourcesContents[key]
362
+ : null;
363
+ }, this);
364
+ };
365
+
366
+ /**
367
+ * Externalize the source map.
368
+ */
369
+ SourceMapGenerator.prototype.toJSON =
370
+ function SourceMapGenerator_toJSON() {
371
+ var map = {
372
+ version: this._version,
373
+ sources: this._sources.toArray(),
374
+ names: this._names.toArray(),
375
+ mappings: this._serializeMappings()
376
+ };
377
+ if (this._file != null) {
378
+ map.file = this._file;
379
+ }
380
+ if (this._sourceRoot != null) {
381
+ map.sourceRoot = this._sourceRoot;
382
+ }
383
+ if (this._sourcesContents) {
384
+ map.sourcesContent = this._generateSourcesContent(map.sources, map.sourceRoot);
385
+ }
386
+
387
+ return map;
388
+ };
389
+
390
+ /**
391
+ * Render the source map being generated to a string.
392
+ */
393
+ SourceMapGenerator.prototype.toString =
394
+ function SourceMapGenerator_toString() {
395
+ return JSON.stringify(this);
396
+ };
397
+
398
+ exports.SourceMapGenerator = SourceMapGenerator;
399
+
400
+ });
@@ -0,0 +1,414 @@
1
+ /* -*- Mode: js; js-indent-level: 2; -*- */
2
+ /*
3
+ * Copyright 2011 Mozilla Foundation and contributors
4
+ * Licensed under the New BSD license. See LICENSE or:
5
+ * http://opensource.org/licenses/BSD-3-Clause
6
+ */
7
+ if (typeof define !== 'function') {
8
+ var define = require('amdefine')(module, require);
9
+ }
10
+ define(function (require, exports, module) {
11
+
12
+ var SourceMapGenerator = require('./source-map-generator').SourceMapGenerator;
13
+ var util = require('./util');
14
+
15
+ // Matches a Windows-style `\r\n` newline or a `\n` newline used by all other
16
+ // operating systems these days (capturing the result).
17
+ var REGEX_NEWLINE = /(\r?\n)/;
18
+
19
+ // Newline character code for charCodeAt() comparisons
20
+ var NEWLINE_CODE = 10;
21
+
22
+ // Private symbol for identifying `SourceNode`s when multiple versions of
23
+ // the source-map library are loaded. This MUST NOT CHANGE across
24
+ // versions!
25
+ var isSourceNode = "$$$isSourceNode$$$";
26
+
27
+ /**
28
+ * SourceNodes provide a way to abstract over interpolating/concatenating
29
+ * snippets of generated JavaScript source code while maintaining the line and
30
+ * column information associated with the original source code.
31
+ *
32
+ * @param aLine The original line number.
33
+ * @param aColumn The original column number.
34
+ * @param aSource The original source's filename.
35
+ * @param aChunks Optional. An array of strings which are snippets of
36
+ * generated JS, or other SourceNodes.
37
+ * @param aName The original identifier.
38
+ */
39
+ function SourceNode(aLine, aColumn, aSource, aChunks, aName) {
40
+ this.children = [];
41
+ this.sourceContents = {};
42
+ this.line = aLine == null ? null : aLine;
43
+ this.column = aColumn == null ? null : aColumn;
44
+ this.source = aSource == null ? null : aSource;
45
+ this.name = aName == null ? null : aName;
46
+ this[isSourceNode] = true;
47
+ if (aChunks != null) this.add(aChunks);
48
+ }
49
+
50
+ /**
51
+ * Creates a SourceNode from generated code and a SourceMapConsumer.
52
+ *
53
+ * @param aGeneratedCode The generated code
54
+ * @param aSourceMapConsumer The SourceMap for the generated code
55
+ * @param aRelativePath Optional. The path that relative sources in the
56
+ * SourceMapConsumer should be relative to.
57
+ */
58
+ SourceNode.fromStringWithSourceMap =
59
+ function SourceNode_fromStringWithSourceMap(aGeneratedCode, aSourceMapConsumer, aRelativePath) {
60
+ // The SourceNode we want to fill with the generated code
61
+ // and the SourceMap
62
+ var node = new SourceNode();
63
+
64
+ // All even indices of this array are one line of the generated code,
65
+ // while all odd indices are the newlines between two adjacent lines
66
+ // (since `REGEX_NEWLINE` captures its match).
67
+ // Processed fragments are removed from this array, by calling `shiftNextLine`.
68
+ var remainingLines = aGeneratedCode.split(REGEX_NEWLINE);
69
+ var shiftNextLine = function() {
70
+ var lineContents = remainingLines.shift();
71
+ // The last line of a file might not have a newline.
72
+ var newLine = remainingLines.shift() || "";
73
+ return lineContents + newLine;
74
+ };
75
+
76
+ // We need to remember the position of "remainingLines"
77
+ var lastGeneratedLine = 1, lastGeneratedColumn = 0;
78
+
79
+ // The generate SourceNodes we need a code range.
80
+ // To extract it current and last mapping is used.
81
+ // Here we store the last mapping.
82
+ var lastMapping = null;
83
+
84
+ aSourceMapConsumer.eachMapping(function (mapping) {
85
+ if (lastMapping !== null) {
86
+ // We add the code from "lastMapping" to "mapping":
87
+ // First check if there is a new line in between.
88
+ if (lastGeneratedLine < mapping.generatedLine) {
89
+ var code = "";
90
+ // Associate first line with "lastMapping"
91
+ addMappingWithCode(lastMapping, shiftNextLine());
92
+ lastGeneratedLine++;
93
+ lastGeneratedColumn = 0;
94
+ // The remaining code is added without mapping
95
+ } else {
96
+ // There is no new line in between.
97
+ // Associate the code between "lastGeneratedColumn" and
98
+ // "mapping.generatedColumn" with "lastMapping"
99
+ var nextLine = remainingLines[0];
100
+ var code = nextLine.substr(0, mapping.generatedColumn -
101
+ lastGeneratedColumn);
102
+ remainingLines[0] = nextLine.substr(mapping.generatedColumn -
103
+ lastGeneratedColumn);
104
+ lastGeneratedColumn = mapping.generatedColumn;
105
+ addMappingWithCode(lastMapping, code);
106
+ // No more remaining code, continue
107
+ lastMapping = mapping;
108
+ return;
109
+ }
110
+ }
111
+ // We add the generated code until the first mapping
112
+ // to the SourceNode without any mapping.
113
+ // Each line is added as separate string.
114
+ while (lastGeneratedLine < mapping.generatedLine) {
115
+ node.add(shiftNextLine());
116
+ lastGeneratedLine++;
117
+ }
118
+ if (lastGeneratedColumn < mapping.generatedColumn) {
119
+ var nextLine = remainingLines[0];
120
+ node.add(nextLine.substr(0, mapping.generatedColumn));
121
+ remainingLines[0] = nextLine.substr(mapping.generatedColumn);
122
+ lastGeneratedColumn = mapping.generatedColumn;
123
+ }
124
+ lastMapping = mapping;
125
+ }, this);
126
+ // We have processed all mappings.
127
+ if (remainingLines.length > 0) {
128
+ if (lastMapping) {
129
+ // Associate the remaining code in the current line with "lastMapping"
130
+ addMappingWithCode(lastMapping, shiftNextLine());
131
+ }
132
+ // and add the remaining lines without any mapping
133
+ node.add(remainingLines.join(""));
134
+ }
135
+
136
+ // Copy sourcesContent into SourceNode
137
+ aSourceMapConsumer.sources.forEach(function (sourceFile) {
138
+ var content = aSourceMapConsumer.sourceContentFor(sourceFile);
139
+ if (content != null) {
140
+ if (aRelativePath != null) {
141
+ sourceFile = util.join(aRelativePath, sourceFile);
142
+ }
143
+ node.setSourceContent(sourceFile, content);
144
+ }
145
+ });
146
+
147
+ return node;
148
+
149
+ function addMappingWithCode(mapping, code) {
150
+ if (mapping === null || mapping.source === undefined) {
151
+ node.add(code);
152
+ } else {
153
+ var source = aRelativePath
154
+ ? util.join(aRelativePath, mapping.source)
155
+ : mapping.source;
156
+ node.add(new SourceNode(mapping.originalLine,
157
+ mapping.originalColumn,
158
+ source,
159
+ code,
160
+ mapping.name));
161
+ }
162
+ }
163
+ };
164
+
165
+ /**
166
+ * Add a chunk of generated JS to this source node.
167
+ *
168
+ * @param aChunk A string snippet of generated JS code, another instance of
169
+ * SourceNode, or an array where each member is one of those things.
170
+ */
171
+ SourceNode.prototype.add = function SourceNode_add(aChunk) {
172
+ if (Array.isArray(aChunk)) {
173
+ aChunk.forEach(function (chunk) {
174
+ this.add(chunk);
175
+ }, this);
176
+ }
177
+ else if (aChunk[isSourceNode] || typeof aChunk === "string") {
178
+ if (aChunk) {
179
+ this.children.push(aChunk);
180
+ }
181
+ }
182
+ else {
183
+ throw new TypeError(
184
+ "Expected a SourceNode, string, or an array of SourceNodes and strings. Got " + aChunk
185
+ );
186
+ }
187
+ return this;
188
+ };
189
+
190
+ /**
191
+ * Add a chunk of generated JS to the beginning of this source node.
192
+ *
193
+ * @param aChunk A string snippet of generated JS code, another instance of
194
+ * SourceNode, or an array where each member is one of those things.
195
+ */
196
+ SourceNode.prototype.prepend = function SourceNode_prepend(aChunk) {
197
+ if (Array.isArray(aChunk)) {
198
+ for (var i = aChunk.length-1; i >= 0; i--) {
199
+ this.prepend(aChunk[i]);
200
+ }
201
+ }
202
+ else if (aChunk[isSourceNode] || typeof aChunk === "string") {
203
+ this.children.unshift(aChunk);
204
+ }
205
+ else {
206
+ throw new TypeError(
207
+ "Expected a SourceNode, string, or an array of SourceNodes and strings. Got " + aChunk
208
+ );
209
+ }
210
+ return this;
211
+ };
212
+
213
+ /**
214
+ * Walk over the tree of JS snippets in this node and its children. The
215
+ * walking function is called once for each snippet of JS and is passed that
216
+ * snippet and the its original associated source's line/column location.
217
+ *
218
+ * @param aFn The traversal function.
219
+ */
220
+ SourceNode.prototype.walk = function SourceNode_walk(aFn) {
221
+ var chunk;
222
+ for (var i = 0, len = this.children.length; i < len; i++) {
223
+ chunk = this.children[i];
224
+ if (chunk[isSourceNode]) {
225
+ chunk.walk(aFn);
226
+ }
227
+ else {
228
+ if (chunk !== '') {
229
+ aFn(chunk, { source: this.source,
230
+ line: this.line,
231
+ column: this.column,
232
+ name: this.name });
233
+ }
234
+ }
235
+ }
236
+ };
237
+
238
+ /**
239
+ * Like `String.prototype.join` except for SourceNodes. Inserts `aStr` between
240
+ * each of `this.children`.
241
+ *
242
+ * @param aSep The separator.
243
+ */
244
+ SourceNode.prototype.join = function SourceNode_join(aSep) {
245
+ var newChildren;
246
+ var i;
247
+ var len = this.children.length;
248
+ if (len > 0) {
249
+ newChildren = [];
250
+ for (i = 0; i < len-1; i++) {
251
+ newChildren.push(this.children[i]);
252
+ newChildren.push(aSep);
253
+ }
254
+ newChildren.push(this.children[i]);
255
+ this.children = newChildren;
256
+ }
257
+ return this;
258
+ };
259
+
260
+ /**
261
+ * Call String.prototype.replace on the very right-most source snippet. Useful
262
+ * for trimming whitespace from the end of a source node, etc.
263
+ *
264
+ * @param aPattern The pattern to replace.
265
+ * @param aReplacement The thing to replace the pattern with.
266
+ */
267
+ SourceNode.prototype.replaceRight = function SourceNode_replaceRight(aPattern, aReplacement) {
268
+ var lastChild = this.children[this.children.length - 1];
269
+ if (lastChild[isSourceNode]) {
270
+ lastChild.replaceRight(aPattern, aReplacement);
271
+ }
272
+ else if (typeof lastChild === 'string') {
273
+ this.children[this.children.length - 1] = lastChild.replace(aPattern, aReplacement);
274
+ }
275
+ else {
276
+ this.children.push(''.replace(aPattern, aReplacement));
277
+ }
278
+ return this;
279
+ };
280
+
281
+ /**
282
+ * Set the source content for a source file. This will be added to the SourceMapGenerator
283
+ * in the sourcesContent field.
284
+ *
285
+ * @param aSourceFile The filename of the source file
286
+ * @param aSourceContent The content of the source file
287
+ */
288
+ SourceNode.prototype.setSourceContent =
289
+ function SourceNode_setSourceContent(aSourceFile, aSourceContent) {
290
+ this.sourceContents[util.toSetString(aSourceFile)] = aSourceContent;
291
+ };
292
+
293
+ /**
294
+ * Walk over the tree of SourceNodes. The walking function is called for each
295
+ * source file content and is passed the filename and source content.
296
+ *
297
+ * @param aFn The traversal function.
298
+ */
299
+ SourceNode.prototype.walkSourceContents =
300
+ function SourceNode_walkSourceContents(aFn) {
301
+ for (var i = 0, len = this.children.length; i < len; i++) {
302
+ if (this.children[i][isSourceNode]) {
303
+ this.children[i].walkSourceContents(aFn);
304
+ }
305
+ }
306
+
307
+ var sources = Object.keys(this.sourceContents);
308
+ for (var i = 0, len = sources.length; i < len; i++) {
309
+ aFn(util.fromSetString(sources[i]), this.sourceContents[sources[i]]);
310
+ }
311
+ };
312
+
313
+ /**
314
+ * Return the string representation of this source node. Walks over the tree
315
+ * and concatenates all the various snippets together to one string.
316
+ */
317
+ SourceNode.prototype.toString = function SourceNode_toString() {
318
+ var str = "";
319
+ this.walk(function (chunk) {
320
+ str += chunk;
321
+ });
322
+ return str;
323
+ };
324
+
325
+ /**
326
+ * Returns the string representation of this source node along with a source
327
+ * map.
328
+ */
329
+ SourceNode.prototype.toStringWithSourceMap = function SourceNode_toStringWithSourceMap(aArgs) {
330
+ var generated = {
331
+ code: "",
332
+ line: 1,
333
+ column: 0
334
+ };
335
+ var map = new SourceMapGenerator(aArgs);
336
+ var sourceMappingActive = false;
337
+ var lastOriginalSource = null;
338
+ var lastOriginalLine = null;
339
+ var lastOriginalColumn = null;
340
+ var lastOriginalName = null;
341
+ this.walk(function (chunk, original) {
342
+ generated.code += chunk;
343
+ if (original.source !== null
344
+ && original.line !== null
345
+ && original.column !== null) {
346
+ if(lastOriginalSource !== original.source
347
+ || lastOriginalLine !== original.line
348
+ || lastOriginalColumn !== original.column
349
+ || lastOriginalName !== original.name) {
350
+ map.addMapping({
351
+ source: original.source,
352
+ original: {
353
+ line: original.line,
354
+ column: original.column
355
+ },
356
+ generated: {
357
+ line: generated.line,
358
+ column: generated.column
359
+ },
360
+ name: original.name
361
+ });
362
+ }
363
+ lastOriginalSource = original.source;
364
+ lastOriginalLine = original.line;
365
+ lastOriginalColumn = original.column;
366
+ lastOriginalName = original.name;
367
+ sourceMappingActive = true;
368
+ } else if (sourceMappingActive) {
369
+ map.addMapping({
370
+ generated: {
371
+ line: generated.line,
372
+ column: generated.column
373
+ }
374
+ });
375
+ lastOriginalSource = null;
376
+ sourceMappingActive = false;
377
+ }
378
+ for (var idx = 0, length = chunk.length; idx < length; idx++) {
379
+ if (chunk.charCodeAt(idx) === NEWLINE_CODE) {
380
+ generated.line++;
381
+ generated.column = 0;
382
+ // Mappings end at eol
383
+ if (idx + 1 === length) {
384
+ lastOriginalSource = null;
385
+ sourceMappingActive = false;
386
+ } else if (sourceMappingActive) {
387
+ map.addMapping({
388
+ source: original.source,
389
+ original: {
390
+ line: original.line,
391
+ column: original.column
392
+ },
393
+ generated: {
394
+ line: generated.line,
395
+ column: generated.column
396
+ },
397
+ name: original.name
398
+ });
399
+ }
400
+ } else {
401
+ generated.column++;
402
+ }
403
+ }
404
+ });
405
+ this.walkSourceContents(function (sourceFile, sourceContent) {
406
+ map.setSourceContent(sourceFile, sourceContent);
407
+ });
408
+
409
+ return { code: generated.code, map: map };
410
+ };
411
+
412
+ exports.SourceNode = SourceNode;
413
+
414
+ });