sequenceserver 2.0.0.rc8 → 2.1.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of sequenceserver might be problematic. Click here for more details.

Files changed (758) hide show
  1. checksums.yaml +4 -4
  2. data/bin/sequenceserver +22 -30
  3. data/lib/sequenceserver/api_errors.rb +29 -3
  4. data/lib/sequenceserver/blast/constants.rb +1 -1
  5. data/lib/sequenceserver/blast/hit.rb +5 -16
  6. data/lib/sequenceserver/blast/job.rb +49 -24
  7. data/lib/sequenceserver/blast/report.rb +38 -30
  8. data/lib/sequenceserver/config.rb +52 -27
  9. data/lib/sequenceserver/database.rb +69 -9
  10. data/lib/sequenceserver/job.rb +14 -4
  11. data/lib/sequenceserver/job_remover.rb +25 -29
  12. data/lib/sequenceserver/makeblastdb.rb +40 -45
  13. data/lib/sequenceserver/refinements.rb +15 -0
  14. data/lib/sequenceserver/routes.rb +70 -4
  15. data/lib/sequenceserver/sequence.rb +8 -7
  16. data/lib/sequenceserver/sys.rb +2 -2
  17. data/lib/sequenceserver/version.rb +1 -1
  18. data/lib/sequenceserver/zip_file_generator.rb +56 -0
  19. data/lib/sequenceserver.rb +16 -11
  20. data/public/config.js +62 -55
  21. data/public/css/fonts.css +23 -22
  22. data/public/css/grapher.css +598 -594
  23. data/public/css/sequenceserver.css +130 -27
  24. data/public/css/sequenceserver.min.css +3 -3
  25. data/public/js/alignment_exporter.js +30 -22
  26. data/public/js/circos.js +370 -234
  27. data/public/js/cloud_share_modal.js +216 -0
  28. data/public/js/databases.js +144 -0
  29. data/public/js/databases_tree.js +144 -0
  30. data/public/js/dnd.js +164 -0
  31. data/public/js/download_fasta.js +1 -1
  32. data/public/js/error_modal.js +4 -11
  33. data/public/js/exporter.js +7 -3
  34. data/public/js/form.js +260 -0
  35. data/public/js/grapher.js +113 -106
  36. data/public/js/hit.js +84 -67
  37. data/public/js/hits_overview.js +3 -3
  38. data/public/js/hsp.js +343 -288
  39. data/public/js/jquery_world.js +4 -4
  40. data/public/js/length_distribution.js +5 -5
  41. data/public/js/mailto.js +36 -0
  42. data/public/js/options.js +84 -0
  43. data/public/js/query.js +321 -64
  44. data/public/js/report.js +322 -288
  45. data/public/js/report_root.js +75 -0
  46. data/public/js/search.js +28 -992
  47. data/public/js/search_button.js +195 -0
  48. data/public/js/sequence.js +2409 -2411
  49. data/public/js/sequence_modal.js +152 -159
  50. data/public/js/share_url.js +23 -0
  51. data/public/js/sidebar.js +265 -86
  52. data/public/js/svgExporter.js +12 -12
  53. data/public/js/tests/database.spec.js +60 -0
  54. data/public/js/tests/mock_data/databases.json +91 -0
  55. data/public/js/tests/mock_data/long_response.json +269 -0
  56. data/public/js/tests/mock_data/short_response.json +2240 -0
  57. data/public/js/tests/report.spec.js +99 -0
  58. data/public/js/tests/search_button.spec.js +14 -0
  59. data/public/js/tests/search_query.spec.js +41 -0
  60. data/public/js/visualisation_helpers.js +4 -5
  61. data/public/packages/circosJS@1.7.0.js +1640 -0
  62. data/public/packages/jquery-ui@1.11.4.js +16624 -0
  63. data/public/sequenceserver-report.min.js +2425 -19
  64. data/public/sequenceserver-search.min.js +2337 -11
  65. data/public/vendor/github/jspm/nodelibs-assert@0.1.0/index.js +2 -0
  66. data/public/vendor/github/jspm/{nodelibs-buffer@0.1.0 → nodelibs-assert@0.1.0}/package.json +1 -1
  67. data/public/vendor/github/jspm/nodelibs-assert@0.1.0.js +1 -0
  68. data/public/vendor/github/jspm/nodelibs-buffer@0.1.1/package.json +6 -0
  69. data/public/vendor/github/jspm/nodelibs-buffer@0.1.1.js +1 -0
  70. data/public/vendor/github/jspm/{nodelibs-process@0.1.1 → nodelibs-process@0.1.2}/package.json +2 -2
  71. data/public/vendor/github/jspm/nodelibs-process@0.1.2.js +1 -0
  72. data/public/vendor/github/jspm/nodelibs-vm@0.1.0/index.js +2 -0
  73. data/public/vendor/github/jspm/nodelibs-vm@0.1.0/package.json +6 -0
  74. data/public/vendor/github/jspm/nodelibs-vm@0.1.0.js +1 -0
  75. data/public/vendor/github/vakata/jstree@3.3.8/LICENSE-MIT +22 -0
  76. data/public/vendor/github/vakata/jstree@3.3.8/README.md +663 -0
  77. data/public/vendor/github/vakata/jstree@3.3.8/bower.json +33 -0
  78. data/public/vendor/github/vakata/jstree@3.3.8/component.json +28 -0
  79. data/public/vendor/github/vakata/jstree@3.3.8/composer.json +46 -0
  80. data/public/vendor/github/vakata/jstree@3.3.8/demo/README.md +2 -0
  81. data/public/vendor/github/vakata/jstree@3.3.8/demo/basic/index.html +146 -0
  82. data/public/vendor/github/vakata/jstree@3.3.8/demo/basic/root.json +1 -0
  83. data/public/vendor/github/vakata/jstree@3.3.8/dist/jstree.js +8612 -0
  84. data/public/vendor/github/vakata/jstree@3.3.8/dist/jstree.min.js +6 -0
  85. data/public/vendor/github/vakata/jstree@3.3.8/dist/themes/default/32px.png +0 -0
  86. data/public/vendor/github/vakata/jstree@3.3.8/dist/themes/default/40px.png +0 -0
  87. data/public/vendor/github/vakata/jstree@3.3.8/dist/themes/default/style.css +1102 -0
  88. data/public/vendor/github/vakata/jstree@3.3.8/dist/themes/default/style.min.css +1 -0
  89. data/public/vendor/github/vakata/jstree@3.3.8/dist/themes/default/throbber.gif +0 -0
  90. data/public/vendor/github/vakata/jstree@3.3.8/dist/themes/default-dark/32px.png +0 -0
  91. data/public/vendor/github/vakata/jstree@3.3.8/dist/themes/default-dark/40px.png +0 -0
  92. data/public/vendor/github/vakata/jstree@3.3.8/dist/themes/default-dark/style.css +1146 -0
  93. data/public/vendor/github/vakata/jstree@3.3.8/dist/themes/default-dark/style.min.css +1 -0
  94. data/public/vendor/github/vakata/jstree@3.3.8/dist/themes/default-dark/throbber.gif +0 -0
  95. data/public/vendor/github/vakata/jstree@3.3.8/gruntfile.js +242 -0
  96. data/public/vendor/github/vakata/jstree@3.3.8/jstree.jquery.json +28 -0
  97. data/public/vendor/github/vakata/jstree@3.3.8/package.json +58 -0
  98. data/public/vendor/github/vakata/jstree@3.3.8/src/intro.js +14 -0
  99. data/public/vendor/github/vakata/jstree@3.3.8/src/jstree.changed.js +69 -0
  100. data/public/vendor/github/vakata/jstree@3.3.8/src/jstree.checkbox.js +976 -0
  101. data/public/vendor/github/vakata/jstree@3.3.8/src/jstree.conditionalselect.js +38 -0
  102. data/public/vendor/github/vakata/jstree@3.3.8/src/jstree.contextmenu.js +661 -0
  103. data/public/vendor/github/vakata/jstree@3.3.8/src/jstree.dnd.js +669 -0
  104. data/public/vendor/github/vakata/jstree@3.3.8/src/jstree.js +4931 -0
  105. data/public/vendor/github/vakata/jstree@3.3.8/src/jstree.massload.js +137 -0
  106. data/public/vendor/github/vakata/jstree@3.3.8/src/jstree.search.js +421 -0
  107. data/public/vendor/github/vakata/jstree@3.3.8/src/jstree.sort.js +74 -0
  108. data/public/vendor/github/vakata/jstree@3.3.8/src/jstree.state.js +138 -0
  109. data/public/vendor/github/vakata/jstree@3.3.8/src/jstree.types.js +372 -0
  110. data/public/vendor/github/vakata/jstree@3.3.8/src/jstree.unique.js +164 -0
  111. data/public/vendor/github/vakata/jstree@3.3.8/src/jstree.wholerow.js +122 -0
  112. data/public/vendor/github/vakata/jstree@3.3.8/src/misc.js +656 -0
  113. data/public/vendor/github/vakata/jstree@3.3.8/src/outro.js +1 -0
  114. data/public/vendor/github/vakata/jstree@3.3.8/src/sample.js +93 -0
  115. data/public/vendor/github/vakata/jstree@3.3.8/src/themes/base.less +93 -0
  116. data/public/vendor/github/vakata/jstree@3.3.8/src/themes/default/32px.png +0 -0
  117. data/public/vendor/github/vakata/jstree@3.3.8/src/themes/default/40px.png +0 -0
  118. data/public/vendor/github/vakata/jstree@3.3.8/src/themes/default/style.css +1102 -0
  119. data/public/vendor/github/vakata/jstree@3.3.8/src/themes/default/style.less +22 -0
  120. data/public/vendor/github/vakata/jstree@3.3.8/src/themes/default/throbber.gif +0 -0
  121. data/public/vendor/github/vakata/jstree@3.3.8/src/themes/default-dark/32px.png +0 -0
  122. data/public/vendor/github/vakata/jstree@3.3.8/src/themes/default-dark/40px.png +0 -0
  123. data/public/vendor/github/vakata/jstree@3.3.8/src/themes/default-dark/style.css +1146 -0
  124. data/public/vendor/github/vakata/jstree@3.3.8/src/themes/default-dark/style.less +50 -0
  125. data/public/vendor/github/vakata/jstree@3.3.8/src/themes/default-dark/throbber.gif +0 -0
  126. data/public/vendor/github/vakata/jstree@3.3.8/src/themes/main.less +77 -0
  127. data/public/vendor/github/vakata/jstree@3.3.8/src/themes/mixins.less +104 -0
  128. data/public/vendor/github/vakata/jstree@3.3.8/src/themes/responsive.less +67 -0
  129. data/public/vendor/github/vakata/jstree@3.3.8/src/vakata-jstree.js +38 -0
  130. data/public/vendor/github/vakata/jstree@3.3.8/test/unit/index.html +16 -0
  131. data/public/vendor/github/vakata/jstree@3.3.8/test/unit/libs/qunit.css +244 -0
  132. data/public/vendor/github/vakata/jstree@3.3.8/test/unit/libs/qunit.js +2212 -0
  133. data/public/vendor/github/vakata/jstree@3.3.8/test/unit/test.js +11 -0
  134. data/public/vendor/github/vakata/jstree@3.3.8/test/visual/desktop/index.html +44 -0
  135. data/public/vendor/github/vakata/jstree@3.3.8/test/visual/mobile/index.html +42 -0
  136. data/public/vendor/github/vakata/jstree@3.3.8/test/visual/screenshots/desktop/desktop.png +0 -0
  137. data/public/vendor/github/vakata/jstree@3.3.8/test/visual/screenshots/desktop/home.png +0 -0
  138. data/public/vendor/github/vakata/jstree@3.3.8/test/visual/screenshots/mobile/home.png +0 -0
  139. data/public/vendor/github/vakata/jstree@3.3.8/test/visual/screenshots/mobile/mobile.png +0 -0
  140. data/public/vendor/github/vakata/jstree@3.3.8.js +3 -0
  141. data/public/vendor/npm/assert@1.5.0/CHANGELOG.md +8 -0
  142. data/public/vendor/npm/assert@1.5.0/README.md +105 -0
  143. data/public/vendor/npm/assert@1.5.0/assert.js +327 -0
  144. data/public/vendor/npm/assert@1.5.0/package.json +32 -0
  145. data/public/vendor/npm/assert@1.5.0/test.js +288 -0
  146. data/public/vendor/npm/assert@1.5.0.js +1 -0
  147. data/public/vendor/npm/{base64-js@0.0.8/LICENSE.MIT → base64-js@1.5.1/LICENSE} +1 -1
  148. data/public/vendor/npm/{base64-js@0.0.8 → base64-js@1.5.1}/README.md +10 -7
  149. data/public/vendor/npm/base64-js@1.5.1/base64js.min.js +3 -0
  150. data/public/vendor/npm/base64-js@1.5.1/index.d.ts +3 -0
  151. data/public/vendor/npm/base64-js@1.5.1/index.js +151 -0
  152. data/public/vendor/npm/base64-js@1.5.1/package.json +47 -0
  153. data/public/vendor/npm/base64-js@1.5.1.js +1 -0
  154. data/public/vendor/npm/buffer@5.7.1/AUTHORS.md +70 -0
  155. data/public/vendor/npm/{buffer@3.4.3 → buffer@5.7.1}/README.md +111 -41
  156. data/public/vendor/npm/buffer@5.7.1/index.d.ts +186 -0
  157. data/public/vendor/npm/buffer@5.7.1/index.js +1817 -0
  158. data/public/vendor/npm/buffer@5.7.1/package.json +96 -0
  159. data/public/vendor/npm/buffer@5.7.1.js +1 -0
  160. data/public/vendor/npm/core-util-is@1.0.3/LICENSE +19 -0
  161. data/public/vendor/npm/core-util-is@1.0.3/lib/util.js +64 -0
  162. data/public/vendor/npm/{core-util-is@1.0.1 → core-util-is@1.0.3}/package.json +13 -1
  163. data/public/vendor/npm/core-util-is@1.0.3.js +1 -0
  164. data/public/vendor/npm/events@1.0.2/tests/add-listeners.js +2 -2
  165. data/public/vendor/npm/events@1.0.2/tests/check-listener-leaks.js +3 -3
  166. data/public/vendor/npm/events@1.0.2/tests/common.js +1 -1
  167. data/public/vendor/npm/events@1.0.2/tests/index.js +13 -13
  168. data/public/vendor/npm/events@1.0.2/tests/listeners-side-effects.js +2 -2
  169. data/public/vendor/npm/events@1.0.2/tests/listeners.js +2 -2
  170. data/public/vendor/npm/events@1.0.2/tests/max-listeners.js +2 -2
  171. data/public/vendor/npm/events@1.0.2/tests/modify-in-emit.js +2 -2
  172. data/public/vendor/npm/events@1.0.2/tests/num-args.js +2 -2
  173. data/public/vendor/npm/events@1.0.2/tests/once.js +2 -2
  174. data/public/vendor/npm/events@1.0.2/tests/remove-all-listeners.js +3 -3
  175. data/public/vendor/npm/events@1.0.2/tests/remove-listeners.js +3 -3
  176. data/public/vendor/npm/events@1.0.2/tests/set-max-listeners-side-effects.js +2 -2
  177. data/public/vendor/npm/events@1.0.2/tests/subclass.js +3 -3
  178. data/public/vendor/npm/events@1.0.2.js +1 -1
  179. data/public/vendor/npm/ieee754@1.2.1/LICENSE +11 -0
  180. data/public/vendor/npm/{ieee754@1.1.6 → ieee754@1.2.1}/README.md +12 -8
  181. data/public/vendor/npm/ieee754@1.2.1/index.d.ts +10 -0
  182. data/public/vendor/npm/{ieee754@1.1.6 → ieee754@1.2.1}/index.js +6 -6
  183. data/public/vendor/npm/ieee754@1.2.1/package.json +52 -0
  184. data/public/vendor/npm/ieee754@1.2.1.js +1 -0
  185. data/public/vendor/npm/{is-array@1.0.1 → indexof@0.0.1}/Makefile +3 -3
  186. data/public/vendor/npm/indexof@0.0.1/Readme.md +15 -0
  187. data/public/vendor/npm/indexof@0.0.1/component.json +10 -0
  188. data/public/vendor/npm/indexof@0.0.1/index.js +11 -0
  189. data/public/vendor/npm/indexof@0.0.1/package.json +12 -0
  190. data/public/vendor/npm/indexof@0.0.1.js +1 -0
  191. data/public/vendor/npm/inherits@2.0.1/inherits.js +1 -1
  192. data/public/vendor/npm/inherits@2.0.1.js +1 -1
  193. data/public/vendor/npm/isarray@0.0.1.js +1 -1
  194. data/public/vendor/npm/js-tokens@4.0.0/index.js +23 -0
  195. data/public/vendor/npm/js-tokens@4.0.0/package.json +30 -0
  196. data/public/vendor/npm/js-tokens@4.0.0.js +1 -0
  197. data/public/vendor/npm/loose-envify@1.4.0/LICENSE +21 -0
  198. data/public/vendor/npm/loose-envify@1.4.0/README.md +45 -0
  199. data/public/vendor/npm/loose-envify@1.4.0/cli.js +12 -0
  200. data/public/vendor/npm/loose-envify@1.4.0/custom.js +3 -0
  201. data/public/vendor/npm/loose-envify@1.4.0/index.js +5 -0
  202. data/public/vendor/npm/loose-envify@1.4.0/loose-envify.js +33 -0
  203. data/public/vendor/npm/loose-envify@1.4.0/package.json +36 -0
  204. data/public/vendor/npm/loose-envify@1.4.0/replace.js +52 -0
  205. data/public/vendor/npm/loose-envify@1.4.0.js +1 -0
  206. data/public/vendor/npm/object-assign@4.1.1/index.js +90 -0
  207. data/public/vendor/npm/object-assign@4.1.1/package.json +42 -0
  208. data/public/vendor/npm/object-assign@4.1.1.js +1 -0
  209. data/public/vendor/npm/path-browserify@0.0.0/index.js +1 -1
  210. data/public/vendor/npm/path-browserify@0.0.0.js +1 -1
  211. data/public/vendor/npm/{process@0.10.1 → process@0.11.10}/README.md +4 -1
  212. data/public/vendor/npm/process@0.11.10/browser.js +184 -0
  213. data/public/vendor/npm/{process@0.10.1 → process@0.11.10}/package.json +10 -1
  214. data/public/vendor/npm/process@0.11.10/test.js +185 -0
  215. data/public/vendor/npm/process@0.11.10.js +1 -0
  216. data/public/vendor/npm/react-dom@18.0.0/LICENSE +21 -0
  217. data/public/vendor/npm/react-dom@18.0.0/README.md +50 -0
  218. data/public/vendor/npm/react-dom@18.0.0/cjs/react-dom-server-legacy.browser.development.js +4771 -0
  219. data/public/vendor/npm/react-dom@18.0.0/cjs/react-dom-server-legacy.browser.production.min.js +85 -0
  220. data/public/vendor/npm/react-dom@18.0.0/cjs/react-dom-server-legacy.node.development.js +4813 -0
  221. data/public/vendor/npm/react-dom@18.0.0/cjs/react-dom-server-legacy.node.production.min.js +1705 -0
  222. data/public/vendor/npm/react-dom@18.0.0/cjs/react-dom-server.browser.development.js +4746 -0
  223. data/public/vendor/npm/react-dom@18.0.0/cjs/react-dom-server.browser.production.min.js +90 -0
  224. data/public/vendor/npm/react-dom@18.0.0/cjs/react-dom-server.node.development.js +4714 -0
  225. data/public/vendor/npm/react-dom@18.0.0/cjs/react-dom-server.node.production.min.js +1746 -0
  226. data/public/vendor/npm/react-dom@18.0.0/cjs/react-dom-test-utils.development.js +1017 -0
  227. data/public/vendor/npm/react-dom@18.0.0/cjs/react-dom-test-utils.production.min.js +617 -0
  228. data/public/vendor/npm/react-dom@18.0.0/cjs/react-dom.development.js +20092 -0
  229. data/public/vendor/npm/react-dom@18.0.0/cjs/react-dom.production.min.js +322 -0
  230. data/public/vendor/npm/react-dom@18.0.0/cjs/react-dom.profiling.min.js +364 -0
  231. data/public/vendor/npm/react-dom@18.0.0/client.js +27 -0
  232. data/public/vendor/npm/react-dom@18.0.0/index.js +23 -0
  233. data/public/vendor/npm/react-dom@18.0.0/package.json +62 -0
  234. data/public/vendor/npm/react-dom@18.0.0/profiling.js +23 -0
  235. data/public/vendor/npm/react-dom@18.0.0/server.browser.js +19 -0
  236. data/public/vendor/npm/react-dom@18.0.0/server.js +3 -0
  237. data/public/vendor/npm/react-dom@18.0.0/server.node.js +19 -0
  238. data/public/vendor/npm/react-dom@18.0.0/test-utils.js +9 -0
  239. data/public/vendor/npm/react-dom@18.0.0/umd/react-dom-server-legacy.browser.development.js +4770 -0
  240. data/public/vendor/npm/react-dom@18.0.0/umd/react-dom-server-legacy.browser.production.min.js +72 -0
  241. data/public/vendor/npm/react-dom@18.0.0/umd/react-dom-server.browser.development.js +4745 -0
  242. data/public/vendor/npm/react-dom@18.0.0/umd/react-dom-server.browser.production.min.js +74 -0
  243. data/public/vendor/npm/react-dom@18.0.0/umd/react-dom-test-utils.development.js +1013 -0
  244. data/public/vendor/npm/react-dom@18.0.0/umd/react-dom-test-utils.production.min.js +625 -0
  245. data/public/vendor/npm/react-dom@18.0.0/umd/react-dom.development.js +20106 -0
  246. data/public/vendor/npm/react-dom@18.0.0/umd/react-dom.production.min.js +269 -0
  247. data/public/vendor/npm/react-dom@18.0.0/umd/react-dom.profiling.min.js +285 -0
  248. data/public/vendor/npm/react-dom@18.0.0.js +1 -0
  249. data/public/vendor/npm/react@18.0.0/LICENSE +21 -0
  250. data/public/vendor/npm/react@18.0.0/README.md +13 -0
  251. data/public/vendor/npm/react@18.0.0/cjs/react-jsx-dev-runtime.development.js +837 -0
  252. data/public/vendor/npm/react@18.0.0/cjs/react-jsx-dev-runtime.production.min.js +10 -0
  253. data/public/vendor/npm/react@18.0.0/cjs/react-jsx-dev-runtime.profiling.min.js +10 -0
  254. data/public/vendor/npm/react@18.0.0/cjs/react-jsx-runtime.development.js +849 -0
  255. data/public/vendor/npm/react@18.0.0/cjs/react-jsx-runtime.production.min.js +38 -0
  256. data/public/vendor/npm/react@18.0.0/cjs/react-jsx-runtime.profiling.min.js +38 -0
  257. data/public/vendor/npm/react@18.0.0/cjs/react.development.js +1746 -0
  258. data/public/vendor/npm/react@18.0.0/cjs/react.production.min.js +26 -0
  259. data/public/vendor/npm/react@18.0.0/cjs/react.shared-subset.development.js +10 -0
  260. data/public/vendor/npm/react@18.0.0/cjs/react.shared-subset.production.min.js +12 -0
  261. data/public/vendor/npm/react@18.0.0/index.js +9 -0
  262. data/public/vendor/npm/react@18.0.0/jsx-dev-runtime.js +9 -0
  263. data/public/vendor/npm/react@18.0.0/jsx-runtime.js +9 -0
  264. data/public/vendor/npm/react@18.0.0/package.json +47 -0
  265. data/public/vendor/npm/react@18.0.0/react.shared-subset.js +9 -0
  266. data/public/vendor/npm/react@18.0.0/umd/react.development.js +2186 -0
  267. data/public/vendor/npm/react@18.0.0/umd/react.production.min.js +33 -0
  268. data/public/vendor/npm/react@18.0.0/umd/react.profiling.min.js +33 -0
  269. data/public/vendor/npm/react@18.0.0.js +1 -0
  270. data/public/vendor/npm/readable-stream@1.1.14/LICENSE +18 -0
  271. data/public/vendor/npm/readable-stream@1.1.14/duplex.js +2 -0
  272. data/public/vendor/npm/{readable-stream@1.1.13 → readable-stream@1.1.14}/lib/_stream_duplex.js +5 -5
  273. data/public/vendor/npm/{readable-stream@1.1.13 → readable-stream@1.1.14}/lib/_stream_passthrough.js +3 -3
  274. data/public/vendor/npm/{readable-stream@1.1.13 → readable-stream@1.1.14}/lib/_stream_readable.js +10 -10
  275. data/public/vendor/npm/{readable-stream@1.1.13 → readable-stream@1.1.14}/lib/_stream_transform.js +4 -4
  276. data/public/vendor/npm/{readable-stream@1.1.13 → readable-stream@1.1.14}/lib/_stream_writable.js +6 -6
  277. data/public/vendor/npm/{readable-stream@1.1.13 → readable-stream@1.1.14}/package.json +1 -1
  278. data/public/vendor/npm/readable-stream@1.1.14/passthrough.js +2 -0
  279. data/public/vendor/npm/readable-stream@1.1.14/readable.js +13 -0
  280. data/public/vendor/npm/readable-stream@1.1.14/transform.js +2 -0
  281. data/public/vendor/npm/readable-stream@1.1.14/writable.js +2 -0
  282. data/public/vendor/npm/readable-stream@1.1.14.js +1 -0
  283. data/public/vendor/npm/scheduler@0.21.0/LICENSE +21 -0
  284. data/public/vendor/npm/scheduler@0.21.0/README.md +9 -0
  285. data/public/vendor/npm/scheduler@0.21.0/cjs/scheduler-unstable_mock.development.js +530 -0
  286. data/public/vendor/npm/scheduler@0.21.0/cjs/scheduler-unstable_mock.production.min.js +20 -0
  287. data/public/vendor/npm/scheduler@0.21.0/cjs/scheduler-unstable_post_task.development.js +153 -0
  288. data/public/vendor/npm/scheduler@0.21.0/cjs/scheduler-unstable_post_task.production.min.js +14 -0
  289. data/public/vendor/npm/scheduler@0.21.0/cjs/scheduler.development.js +444 -0
  290. data/public/vendor/npm/scheduler@0.21.0/cjs/scheduler.production.min.js +19 -0
  291. data/public/vendor/npm/scheduler@0.21.0/index.js +9 -0
  292. data/public/vendor/npm/scheduler@0.21.0/package.json +36 -0
  293. data/public/vendor/npm/scheduler@0.21.0/umd/scheduler-unstable_mock.development.js +701 -0
  294. data/public/vendor/npm/scheduler@0.21.0/umd/scheduler-unstable_mock.production.min.js +21 -0
  295. data/public/vendor/npm/scheduler@0.21.0/umd/scheduler.development.js +154 -0
  296. data/public/vendor/npm/scheduler@0.21.0/umd/scheduler.production.min.js +148 -0
  297. data/public/vendor/npm/scheduler@0.21.0/umd/scheduler.profiling.min.js +148 -0
  298. data/public/vendor/npm/scheduler@0.21.0/unstable_mock.js +9 -0
  299. data/public/vendor/npm/scheduler@0.21.0/unstable_post_task.js +9 -0
  300. data/public/vendor/npm/scheduler@0.21.0.js +1 -0
  301. data/public/vendor/npm/stream-browserify@1.0.0/index.js +7 -7
  302. data/public/vendor/npm/stream-browserify@1.0.0/test/buf.js +5 -5
  303. data/public/vendor/npm/stream-browserify@1.0.0.js +1 -1
  304. data/public/vendor/npm/string_decoder@0.10.31/index.js +2 -2
  305. data/public/vendor/npm/string_decoder@0.10.31.js +1 -1
  306. data/public/vendor/npm/util@0.10.3/support/isBuffer.js +1 -1
  307. data/public/vendor/npm/util@0.10.3/test/browser/inspect.js +2 -2
  308. data/public/vendor/npm/util@0.10.3/test/browser/is.js +3 -3
  309. data/public/vendor/npm/util@0.10.3/test/node/debug.js +4 -4
  310. data/public/vendor/npm/util@0.10.3/test/node/format.js +2 -2
  311. data/public/vendor/npm/util@0.10.3/test/node/inspect.js +3 -3
  312. data/public/vendor/npm/util@0.10.3/test/node/log.js +3 -3
  313. data/public/vendor/npm/util@0.10.3/test/node/util.js +3 -3
  314. data/public/vendor/npm/util@0.10.3/util.js +3 -3
  315. data/public/vendor/npm/util@0.10.3.js +1 -1
  316. data/public/vendor/npm/vm-browserify@0.0.4/LICENSE +18 -0
  317. data/public/vendor/npm/vm-browserify@0.0.4/example/run/bundle.js +376 -0
  318. data/public/vendor/npm/vm-browserify@0.0.4/example/run/entry.js +6 -0
  319. data/public/vendor/npm/vm-browserify@0.0.4/example/run/index.html +9 -0
  320. data/public/vendor/npm/vm-browserify@0.0.4/example/run/server.js +6 -0
  321. data/public/vendor/npm/vm-browserify@0.0.4/index.js +139 -0
  322. data/public/vendor/npm/vm-browserify@0.0.4/package.json +46 -0
  323. data/public/vendor/npm/vm-browserify@0.0.4/readme.markdown +67 -0
  324. data/public/vendor/npm/vm-browserify@0.0.4/test/vm.js +34 -0
  325. data/public/vendor/npm/vm-browserify@0.0.4.js +1 -0
  326. data/public/vendor/npm/webshim@1.15.8/Gruntfile.js +4 -4
  327. data/public/vendor/npm/webshim@1.15.8/build/combobuild.js +2 -2
  328. data/public/vendor/npm/webshim@1.15.8/js-webshim/dev/shims/color-picker.js +1 -1
  329. data/public/vendor/npm/webshim@1.15.8/js-webshim/dev/shims/combos/10.js +1 -1
  330. data/public/vendor/npm/webshim@1.15.8/js-webshim/dev/shims/combos/11.js +1 -1
  331. data/public/vendor/npm/webshim@1.15.8/js-webshim/dev/shims/combos/17.js +1 -1
  332. data/public/vendor/npm/webshim@1.15.8/js-webshim/dev/shims/combos/5.js +1 -1
  333. data/public/vendor/npm/webshim@1.15.8/js-webshim/dev/shims/combos/6.js +1 -1
  334. data/public/vendor/npm/webshim@1.15.8/js-webshim/dev/shims/combos/9.js +1 -1
  335. data/public/vendor/npm/webshim@1.15.8/js-webshim/dev/shims/es6.js +1 -1
  336. data/public/vendor/npm/webshim@1.15.8/js-webshim/dev/shims/excanvas.js +1 -1
  337. data/public/vendor/npm/webshim@1.15.8/js-webshim/dev/shims/form-number-date-ui.js +1 -1
  338. data/public/vendor/npm/webshim@1.15.8/js-webshim/dev/shims/moxie/js/moxie-html4.js +1 -1
  339. data/public/vendor/npm/webshim@1.15.8/js-webshim/dev/shims/moxie/js/moxie-swf.js +1 -1
  340. data/public/vendor/npm/webshim@1.15.8/js-webshim/dev/shims/sizzle.js +1 -1
  341. data/public/vendor/npm/webshim@1.15.8/js-webshim/minified/shims/es6.js +1 -1
  342. data/public/vendor/npm/webshim@1.15.8/src/shims/color-picker.js +1 -1
  343. data/public/vendor/npm/webshim@1.15.8/src/shims/combos/10.js +1 -1
  344. data/public/vendor/npm/webshim@1.15.8/src/shims/combos/11.js +1 -1
  345. data/public/vendor/npm/webshim@1.15.8/src/shims/combos/17.js +1 -1
  346. data/public/vendor/npm/webshim@1.15.8/src/shims/combos/5.js +1 -1
  347. data/public/vendor/npm/webshim@1.15.8/src/shims/combos/6.js +1 -1
  348. data/public/vendor/npm/webshim@1.15.8/src/shims/combos/9.js +1 -1
  349. data/public/vendor/npm/webshim@1.15.8/src/shims/es6.js +1 -1
  350. data/public/vendor/npm/webshim@1.15.8/src/shims/excanvas.js +1 -1
  351. data/public/vendor/npm/webshim@1.15.8/src/shims/form-number-date-ui.js +1 -1
  352. data/public/vendor/npm/webshim@1.15.8/src/shims/moxie/js/moxie-html4.js +1 -1
  353. data/public/vendor/npm/webshim@1.15.8/src/shims/moxie/js/moxie-swf.js +1 -1
  354. data/public/vendor/npm/webshim@1.15.8/src/shims/sizzle.js +1 -1
  355. data/public/vendor/npm/webshim@1.15.8/tests/dist/jquery.js +1 -1
  356. data/public/vendor/npm/webshim@1.15.8/tests/jquery/unit/core.js +1 -1
  357. data/public/vendor/npm/webshim@1.15.8/tests/jquery/unit/event.js +1388 -711
  358. data/public/vendor/npm/webshim@1.15.8/tests/qunit/qunit.js +1 -1
  359. data/public/vendor/npm/webshim@1.15.8/tests/test-ext/jquery-1-custom.js +1 -1
  360. data/public/vendor/npm/webshim@1.15.8/tests/test-ext/jquery-2-custom.js +1 -1
  361. data/public/vendor/npm/webshim@1.15.8/tests/test-ext/punycode.js +1 -1
  362. data/public/vendor/system-csp-production.js +3 -3
  363. data/public/vendor/system-csp-production.js.map +1 -1
  364. data/public/vendor/system-csp-production.src.js +146 -140
  365. data/public/vendor/system-polyfills.js +865 -1
  366. data/public/vendor/system-polyfills.js.map +1 -1
  367. data/public/vendor/system-polyfills.src.js +1 -0
  368. data/public/vendor/system.js +3 -3
  369. data/public/vendor/system.js.map +1 -1
  370. data/public/vendor/system.src.js +4771 -2383
  371. data/views/blastn_options.erb +291 -0
  372. data/views/blastp_options.erb +288 -0
  373. data/views/blastx_options.erb +318 -0
  374. data/views/error.erb +12 -0
  375. data/views/layout.erb +18 -47
  376. data/views/report.erb +0 -8
  377. data/views/search.erb +16 -9
  378. data/views/tblastn_options.erb +266 -0
  379. data/views/tblastx_options.erb +291 -0
  380. metadata +362 -424
  381. data/bin/chromedriver +0 -0
  382. data/bin/geckodriver +0 -0
  383. data/public/shims/form-core.js +0 -3
  384. data/public/shims/form-validation.js +0 -3
  385. data/public/shims/plugins/jquery.ui.position.js +0 -13
  386. data/public/shims/styles/shim.css +0 -1
  387. data/public/vendor/github/jspm/nodelibs-buffer@0.1.0.js +0 -1
  388. data/public/vendor/github/jspm/nodelibs-module@0.1.0/index.js +0 -1
  389. data/public/vendor/github/jspm/nodelibs-module@0.1.0.js +0 -1
  390. data/public/vendor/github/jspm/nodelibs-process@0.1.1.js +0 -1
  391. data/public/vendor/npm/amdefine@1.0.0/LICENSE +0 -58
  392. data/public/vendor/npm/amdefine@1.0.0/README.md +0 -171
  393. data/public/vendor/npm/amdefine@1.0.0/amdefine.js +0 -200
  394. data/public/vendor/npm/amdefine@1.0.0/intercept.js +0 -24
  395. data/public/vendor/npm/amdefine@1.0.0/package.json +0 -16
  396. data/public/vendor/npm/amdefine@1.0.0.js +0 -1
  397. data/public/vendor/npm/base62@0.1.1/LICENSE +0 -20
  398. data/public/vendor/npm/base62@0.1.1/Readme.md +0 -30
  399. data/public/vendor/npm/base62@0.1.1/base62.js +0 -28
  400. data/public/vendor/npm/base62@0.1.1/package.json +0 -21
  401. data/public/vendor/npm/base62@0.1.1/test/test.js +0 -13
  402. data/public/vendor/npm/base62@0.1.1.js +0 -1
  403. data/public/vendor/npm/base64-js@0.0.8/lib/b64.js +0 -125
  404. data/public/vendor/npm/base64-js@0.0.8/package.json +0 -34
  405. data/public/vendor/npm/base64-js@0.0.8/test/convert.js +0 -39
  406. data/public/vendor/npm/base64-js@0.0.8/test/url-safe.js +0 -15
  407. data/public/vendor/npm/base64-js@0.0.8.js +0 -1
  408. data/public/vendor/npm/buffer@3.4.3/index.js +0 -1533
  409. data/public/vendor/npm/buffer@3.4.3/package.json +0 -67
  410. data/public/vendor/npm/buffer@3.4.3/test/_polyfill.js +0 -152
  411. data/public/vendor/npm/buffer@3.4.3/test/base64.js +0 -33
  412. data/public/vendor/npm/buffer@3.4.3/test/basic.js +0 -58
  413. data/public/vendor/npm/buffer@3.4.3/test/compare.js +0 -53
  414. data/public/vendor/npm/buffer@3.4.3/test/constructor.js +0 -132
  415. data/public/vendor/npm/buffer@3.4.3/test/deprecated.js +0 -21
  416. data/public/vendor/npm/buffer@3.4.3/test/from-string.js +0 -105
  417. data/public/vendor/npm/buffer@3.4.3/test/methods.js +0 -109
  418. data/public/vendor/npm/buffer@3.4.3/test/node/README.txt +0 -1
  419. data/public/vendor/npm/buffer@3.4.3/test/node/test-buffer-ascii.js +0 -20
  420. data/public/vendor/npm/buffer@3.4.3/test/node/test-buffer-bytelength.js +0 -38
  421. data/public/vendor/npm/buffer@3.4.3/test/node/test-buffer-concat.js +0 -26
  422. data/public/vendor/npm/buffer@3.4.3/test/node/test-buffer-indexof.js +0 -78
  423. data/public/vendor/npm/buffer@3.4.3/test/node/test-buffer-inspect.js +0 -31
  424. data/public/vendor/npm/buffer@3.4.3/test/node/test-buffer.js +0 -804
  425. data/public/vendor/npm/buffer@3.4.3/test/node-es6/README.txt +0 -1
  426. data/public/vendor/npm/buffer@3.4.3/test/node-es6/test-buffer-arraybuffer.js +0 -37
  427. data/public/vendor/npm/buffer@3.4.3/test/node-es6/test-buffer-iterator.js +0 -32
  428. data/public/vendor/npm/buffer@3.4.3/test/slice.js +0 -33
  429. data/public/vendor/npm/buffer@3.4.3/test/static.js +0 -32
  430. data/public/vendor/npm/buffer@3.4.3/test/to-string.js +0 -106
  431. data/public/vendor/npm/buffer@3.4.3/test/write.js +0 -90
  432. data/public/vendor/npm/buffer@3.4.3.js +0 -1
  433. data/public/vendor/npm/core-util-is@1.0.1/float.patch +0 -604
  434. data/public/vendor/npm/core-util-is@1.0.1/lib/util.js +0 -66
  435. data/public/vendor/npm/core-util-is@1.0.1/util.js +0 -66
  436. data/public/vendor/npm/core-util-is@1.0.1.js +0 -1
  437. data/public/vendor/npm/envify@3.4.0/README.md +0 -145
  438. data/public/vendor/npm/envify@3.4.0/bin/envify +0 -17
  439. data/public/vendor/npm/envify@3.4.0/custom.js +0 -33
  440. data/public/vendor/npm/envify@3.4.0/index.js +0 -4
  441. data/public/vendor/npm/envify@3.4.0/package.json +0 -35
  442. data/public/vendor/npm/envify@3.4.0/visitors.js +0 -33
  443. data/public/vendor/npm/envify@3.4.0.js +0 -1
  444. data/public/vendor/npm/esprima-fb@13001.1001.0-dev-harmony-fb/bin/esparse.js +0 -90
  445. data/public/vendor/npm/esprima-fb@13001.1001.0-dev-harmony-fb/bin/esvalidate.js +0 -145
  446. data/public/vendor/npm/esprima-fb@13001.1001.0-dev-harmony-fb/esprima.js +0 -6191
  447. data/public/vendor/npm/esprima-fb@13001.1001.0-dev-harmony-fb/package.json +0 -72
  448. data/public/vendor/npm/esprima-fb@13001.1001.0-dev-harmony-fb/test/compat.js +0 -167
  449. data/public/vendor/npm/esprima-fb@13001.1001.0-dev-harmony-fb/test/reflect.js +0 -421
  450. data/public/vendor/npm/esprima-fb@13001.1001.0-dev-harmony-fb/test/run.js +0 -34
  451. data/public/vendor/npm/esprima-fb@13001.1001.0-dev-harmony-fb/test/runner.js +0 -418
  452. data/public/vendor/npm/esprima-fb@13001.1001.0-dev-harmony-fb/test/test.js +0 -34730
  453. data/public/vendor/npm/esprima-fb@13001.1001.0-dev-harmony-fb.js +0 -1
  454. data/public/vendor/npm/ieee754@1.1.6/LICENSE +0 -56
  455. data/public/vendor/npm/ieee754@1.1.6/package.json +0 -34
  456. data/public/vendor/npm/ieee754@1.1.6/test/basic.js +0 -20
  457. data/public/vendor/npm/ieee754@1.1.6.js +0 -1
  458. data/public/vendor/npm/is-array@1.0.1/History.md +0 -11
  459. data/public/vendor/npm/is-array@1.0.1/Readme.md +0 -27
  460. data/public/vendor/npm/is-array@1.0.1/component.json +0 -13
  461. data/public/vendor/npm/is-array@1.0.1/index.js +0 -33
  462. data/public/vendor/npm/is-array@1.0.1/package.json +0 -10
  463. data/public/vendor/npm/is-array@1.0.1/test/test.html +0 -46
  464. data/public/vendor/npm/is-array@1.0.1.js +0 -1
  465. data/public/vendor/npm/jstransform@10.1.0/LICENSE +0 -201
  466. data/public/vendor/npm/jstransform@10.1.0/README.md +0 -98
  467. data/public/vendor/npm/jstransform@10.1.0/jestEnvironment.js +0 -3
  468. data/public/vendor/npm/jstransform@10.1.0/jestPreprocessor.js +0 -8
  469. data/public/vendor/npm/jstransform@10.1.0/package.json +0 -52
  470. data/public/vendor/npm/jstransform@10.1.0/polyfill/Object.es6.js +0 -54
  471. data/public/vendor/npm/jstransform@10.1.0/src/__tests__/jstransform-test.js +0 -246
  472. data/public/vendor/npm/jstransform@10.1.0/src/__tests__/jstransform-utils-test.js +0 -31
  473. data/public/vendor/npm/jstransform@10.1.0/src/docblock.js +0 -86
  474. data/public/vendor/npm/jstransform@10.1.0/src/jstransform.js +0 -180
  475. data/public/vendor/npm/jstransform@10.1.0/src/utils.js +0 -386
  476. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/es6-arrow-function-visitors-test.js +0 -57
  477. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/es6-call-spread-visitors-test.js +0 -46
  478. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/es6-class-visitors-test.js +0 -463
  479. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/es6-destructuring-visitors-test.js +0 -144
  480. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/es6-es7-object-integration-test.js +0 -40
  481. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/es6-object-concise-method-visitors-test.js +0 -47
  482. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/es6-object-short-notation-visitors-test.js +0 -33
  483. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/es6-rest-param-visitors-test.js +0 -119
  484. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/es6-template-visitors-test.js +0 -138
  485. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/es7-rest-property-helpers-test.js +0 -47
  486. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/es7-spread-property-visitors-test.js +0 -90
  487. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/gen/generate-type-syntax-test.js +0 -40
  488. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/gen/type-syntax-test.rec.js +0 -846
  489. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/reserved-words-test.js +0 -40
  490. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/type-alias-syntax-test.js +0 -34
  491. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/type-class-syntax-test.js +0 -105
  492. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/type-function-syntax-test.js +0 -126
  493. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/type-interface-syntax-test.js +0 -29
  494. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/type-object-method-syntax-test.js +0 -65
  495. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/type-pattern-syntax-test.js +0 -45
  496. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/type-syntax-test.js +0 -46
  497. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/type-variable-declaration-syntax-test.js +0 -102
  498. data/public/vendor/npm/jstransform@10.1.0/visitors/es6-arrow-function-visitors.js +0 -66
  499. data/public/vendor/npm/jstransform@10.1.0/visitors/es6-call-spread-visitors.js +0 -72
  500. data/public/vendor/npm/jstransform@10.1.0/visitors/es6-class-visitors.js +0 -316
  501. data/public/vendor/npm/jstransform@10.1.0/visitors/es6-destructuring-visitors.js +0 -135
  502. data/public/vendor/npm/jstransform@10.1.0/visitors/es6-object-concise-method-visitors.js +0 -28
  503. data/public/vendor/npm/jstransform@10.1.0/visitors/es6-object-short-notation-visitors.js +0 -12
  504. data/public/vendor/npm/jstransform@10.1.0/visitors/es6-rest-param-visitors.js +0 -45
  505. data/public/vendor/npm/jstransform@10.1.0/visitors/es6-template-visitors.js +0 -90
  506. data/public/vendor/npm/jstransform@10.1.0/visitors/es7-rest-property-helpers.js +0 -80
  507. data/public/vendor/npm/jstransform@10.1.0/visitors/es7-spread-property-visitors.js +0 -56
  508. data/public/vendor/npm/jstransform@10.1.0/visitors/reserved-words-helper.js +0 -74
  509. data/public/vendor/npm/jstransform@10.1.0/visitors/reserved-words-visitors.js +0 -30
  510. data/public/vendor/npm/jstransform@10.1.0/visitors/type-syntax.js +0 -118
  511. data/public/vendor/npm/jstransform@10.1.0.js +0 -1
  512. data/public/vendor/npm/process@0.10.1/browser.js +0 -58
  513. data/public/vendor/npm/process@0.10.1.js +0 -1
  514. data/public/vendor/npm/qs@2.4.1/test/stringify.js +0 -162
  515. data/public/vendor/npm/react@0.13.3/README.md +0 -20
  516. data/public/vendor/npm/react@0.13.3/addons.js +0 -2
  517. data/public/vendor/npm/react@0.13.3/dist/JSXTransformer.js +0 -11346
  518. data/public/vendor/npm/react@0.13.3/dist/react-with-addons.js +0 -10483
  519. data/public/vendor/npm/react@0.13.3/dist/react-with-addons.min.js +0 -7297
  520. data/public/vendor/npm/react@0.13.3/dist/react.js +0 -9468
  521. data/public/vendor/npm/react@0.13.3/dist/react.min.js +0 -6764
  522. data/public/vendor/npm/react@0.13.3/lib/AutoFocusMixin.js +0 -9
  523. data/public/vendor/npm/react@0.13.3/lib/BeforeInputEventPlugin.js +0 -197
  524. data/public/vendor/npm/react@0.13.3/lib/CSSCore.js +0 -39
  525. data/public/vendor/npm/react@0.13.3/lib/CSSProperty.js +0 -123
  526. data/public/vendor/npm/react@0.13.3/lib/CSSPropertyOperations.js +0 -103
  527. data/public/vendor/npm/react@0.13.3/lib/CallbackQueue.js +0 -43
  528. data/public/vendor/npm/react@0.13.3/lib/ChangeEventPlugin.js +0 -174
  529. data/public/vendor/npm/react@0.13.3/lib/ClientReactRootIndex.js +0 -23
  530. data/public/vendor/npm/react@0.13.3/lib/DOMChildrenOperations.js +0 -57
  531. data/public/vendor/npm/react@0.13.3/lib/DOMProperty.js +0 -96
  532. data/public/vendor/npm/react@0.13.3/lib/DOMPropertyOperations.js +0 -99
  533. data/public/vendor/npm/react@0.13.3/lib/Danger.js +0 -67
  534. data/public/vendor/npm/react@0.13.3/lib/DefaultEventPluginOrder.js +0 -5
  535. data/public/vendor/npm/react@0.13.3/lib/EnterLeaveEventPlugin.js +0 -69
  536. data/public/vendor/npm/react@0.13.3/lib/EventConstants.js +0 -55
  537. data/public/vendor/npm/react@0.13.3/lib/EventListener.js +0 -34
  538. data/public/vendor/npm/react@0.13.3/lib/EventPluginHub.js +0 -103
  539. data/public/vendor/npm/react@0.13.3/lib/EventPluginRegistry.js +0 -115
  540. data/public/vendor/npm/react@0.13.3/lib/EventPluginUtils.js +0 -121
  541. data/public/vendor/npm/react@0.13.3/lib/EventPropagators.js +0 -62
  542. data/public/vendor/npm/react@0.13.3/lib/ExecutionEnvironment.js +0 -42
  543. data/public/vendor/npm/react@0.13.3/lib/FallbackCompositionState.js +0 -45
  544. data/public/vendor/npm/react@0.13.3/lib/HTMLDOMPropertyConfig.js +0 -155
  545. data/public/vendor/npm/react@0.13.3/lib/LinkedStateMixin.js +0 -8
  546. data/public/vendor/npm/react@0.13.3/lib/LinkedValueUtils.js +0 -74
  547. data/public/vendor/npm/react@0.13.3/lib/LocalEventTrapMixin.js +0 -26
  548. data/public/vendor/npm/react@0.13.3/lib/MobileSafariClickEventPlugin.js +0 -17
  549. data/public/vendor/npm/react@0.13.3/lib/Object.assign.js +0 -47
  550. data/public/vendor/npm/react@0.13.3/lib/PooledClass.js +0 -75
  551. data/public/vendor/npm/react@0.13.3/lib/React.js +0 -93
  552. data/public/vendor/npm/react@0.13.3/lib/ReactBrowserComponentMixin.js +0 -7
  553. data/public/vendor/npm/react@0.13.3/lib/ReactBrowserEventEmitter.js +0 -136
  554. data/public/vendor/npm/react@0.13.3/lib/ReactCSSTransitionGroup.js +0 -34
  555. data/public/vendor/npm/react@0.13.3/lib/ReactCSSTransitionGroupChild.js +0 -92
  556. data/public/vendor/npm/react@0.13.3/lib/ReactChildReconciler.js +0 -57
  557. data/public/vendor/npm/react@0.13.3/lib/ReactChildren.js +0 -67
  558. data/public/vendor/npm/react@0.13.3/lib/ReactClass.js +0 -338
  559. data/public/vendor/npm/react@0.13.3/lib/ReactComponent.js +0 -50
  560. data/public/vendor/npm/react@0.13.3/lib/ReactComponentBrowserEnvironment.js +0 -14
  561. data/public/vendor/npm/react@0.13.3/lib/ReactComponentEnvironment.js +0 -19
  562. data/public/vendor/npm/react@0.13.3/lib/ReactComponentWithPureRenderMixin.js +0 -7
  563. data/public/vendor/npm/react@0.13.3/lib/ReactCompositeComponent.js +0 -374
  564. data/public/vendor/npm/react@0.13.3/lib/ReactContext.js +0 -27
  565. data/public/vendor/npm/react@0.13.3/lib/ReactCurrentOwner.js +0 -32
  566. data/public/vendor/npm/react@0.13.3/lib/ReactDOM.js +0 -146
  567. data/public/vendor/npm/react@0.13.3/lib/ReactDOMButton.js +0 -35
  568. data/public/vendor/npm/react@0.13.3/lib/ReactDOMComponent.js +0 -267
  569. data/public/vendor/npm/react@0.13.3/lib/ReactDOMForm.js +0 -21
  570. data/public/vendor/npm/react@0.13.3/lib/ReactDOMIDOperations.js +0 -63
  571. data/public/vendor/npm/react@0.13.3/lib/ReactDOMIframe.js +0 -20
  572. data/public/vendor/npm/react@0.13.3/lib/ReactDOMImg.js +0 -21
  573. data/public/vendor/npm/react@0.13.3/lib/ReactDOMInput.js +0 -94
  574. data/public/vendor/npm/react@0.13.3/lib/ReactDOMOption.js +0 -23
  575. data/public/vendor/npm/react@0.13.3/lib/ReactDOMSelect.js +0 -112
  576. data/public/vendor/npm/react@0.13.3/lib/ReactDOMSelection.js +0 -103
  577. data/public/vendor/npm/react@0.13.3/lib/ReactDOMTextComponent.js +0 -38
  578. data/public/vendor/npm/react@0.13.3/lib/ReactDOMTextarea.js +0 -70
  579. data/public/vendor/npm/react@0.13.3/lib/ReactDefaultBatchingStrategy.js +0 -37
  580. data/public/vendor/npm/react@0.13.3/lib/ReactDefaultInjection.js +0 -93
  581. data/public/vendor/npm/react@0.13.3/lib/ReactDefaultPerf.js +0 -183
  582. data/public/vendor/npm/react@0.13.3/lib/ReactDefaultPerfAnalysis.js +0 -145
  583. data/public/vendor/npm/react@0.13.3/lib/ReactElement.js +0 -151
  584. data/public/vendor/npm/react@0.13.3/lib/ReactElementValidator.js +0 -218
  585. data/public/vendor/npm/react@0.13.3/lib/ReactEmptyComponent.js +0 -47
  586. data/public/vendor/npm/react@0.13.3/lib/ReactErrorUtils.js +0 -30
  587. data/public/vendor/npm/react@0.13.3/lib/ReactEventEmitterMixin.js +0 -12
  588. data/public/vendor/npm/react@0.13.3/lib/ReactEventListener.js +0 -93
  589. data/public/vendor/npm/react@0.13.3/lib/ReactFragment.js +0 -110
  590. data/public/vendor/npm/react@0.13.3/lib/ReactInjection.js +0 -27
  591. data/public/vendor/npm/react@0.13.3/lib/ReactInputSelection.js +0 -75
  592. data/public/vendor/npm/react@0.13.3/lib/ReactInstanceHandles.js +0 -113
  593. data/public/vendor/npm/react@0.13.3/lib/ReactInstanceMap.js +0 -47
  594. data/public/vendor/npm/react@0.13.3/lib/ReactLifeCycle.js +0 -9
  595. data/public/vendor/npm/react@0.13.3/lib/ReactLink.js +0 -16
  596. data/public/vendor/npm/react@0.13.3/lib/ReactMarkupChecksum.js +0 -17
  597. data/public/vendor/npm/react@0.13.3/lib/ReactMount.js +0 -347
  598. data/public/vendor/npm/react@0.13.3/lib/ReactMultiChild.js +0 -190
  599. data/public/vendor/npm/react@0.13.3/lib/ReactMultiChildUpdateTypes.js +0 -10
  600. data/public/vendor/npm/react@0.13.3/lib/ReactNativeComponent.js +0 -53
  601. data/public/vendor/npm/react@0.13.3/lib/ReactOwner.js +0 -21
  602. data/public/vendor/npm/react@0.13.3/lib/ReactPerf.js +0 -42
  603. data/public/vendor/npm/react@0.13.3/lib/ReactPropTransferer.js +0 -40
  604. data/public/vendor/npm/react@0.13.3/lib/ReactPropTypeLocationNames.js +0 -13
  605. data/public/vendor/npm/react@0.13.3/lib/ReactPropTypeLocations.js +0 -9
  606. data/public/vendor/npm/react@0.13.3/lib/ReactPropTypes.js +0 -225
  607. data/public/vendor/npm/react@0.13.3/lib/ReactPutListenerQueue.js +0 -31
  608. data/public/vendor/npm/react@0.13.3/lib/ReactReconcileTransaction.js +0 -66
  609. data/public/vendor/npm/react@0.13.3/lib/ReactReconciler.js +0 -44
  610. data/public/vendor/npm/react@0.13.3/lib/ReactRef.js +0 -36
  611. data/public/vendor/npm/react@0.13.3/lib/ReactRootIndex.js +0 -29
  612. data/public/vendor/npm/react@0.13.3/lib/ReactServerRendering.js +0 -44
  613. data/public/vendor/npm/react@0.13.3/lib/ReactServerRenderingTransaction.js +0 -47
  614. data/public/vendor/npm/react@0.13.3/lib/ReactStateSetters.js +0 -104
  615. data/public/vendor/npm/react@0.13.3/lib/ReactTestUtils.js +0 -249
  616. data/public/vendor/npm/react@0.13.3/lib/ReactTransitionChildMapping.js +0 -53
  617. data/public/vendor/npm/react@0.13.3/lib/ReactTransitionEvents.js +0 -68
  618. data/public/vendor/npm/react@0.13.3/lib/ReactTransitionGroup.js +0 -140
  619. data/public/vendor/npm/react@0.13.3/lib/ReactUpdateQueue.js +0 -107
  620. data/public/vendor/npm/react@0.13.3/lib/ReactUpdates.js +0 -139
  621. data/public/vendor/npm/react@0.13.3/lib/ReactWithAddons.js +0 -30
  622. data/public/vendor/npm/react@0.13.3/lib/SVGDOMPropertyConfig.js +0 -76
  623. data/public/vendor/npm/react@0.13.3/lib/SelectEventPlugin.js +0 -91
  624. data/public/vendor/npm/react@0.13.3/lib/ServerReactRootIndex.js +0 -29
  625. data/public/vendor/npm/react@0.13.3/lib/SimpleEventPlugin.js +0 -287
  626. data/public/vendor/npm/react@0.13.3/lib/SyntheticClipboardEvent.js +0 -11
  627. data/public/vendor/npm/react@0.13.3/lib/SyntheticCompositionEvent.js +0 -9
  628. data/public/vendor/npm/react@0.13.3/lib/SyntheticDragEvent.js +0 -9
  629. data/public/vendor/npm/react@0.13.3/lib/SyntheticEvent.js +0 -90
  630. data/public/vendor/npm/react@0.13.3/lib/SyntheticFocusEvent.js +0 -9
  631. data/public/vendor/npm/react@0.13.3/lib/SyntheticInputEvent.js +0 -9
  632. data/public/vendor/npm/react@0.13.3/lib/SyntheticKeyboardEvent.js +0 -43
  633. data/public/vendor/npm/react@0.13.3/lib/SyntheticMouseEvent.js +0 -38
  634. data/public/vendor/npm/react@0.13.3/lib/SyntheticTouchEvent.js +0 -19
  635. data/public/vendor/npm/react@0.13.3/lib/SyntheticUIEvent.js +0 -29
  636. data/public/vendor/npm/react@0.13.3/lib/SyntheticWheelEvent.js +0 -18
  637. data/public/vendor/npm/react@0.13.3/lib/Transaction.js +0 -90
  638. data/public/vendor/npm/react@0.13.3/lib/ViewportMetrics.js +0 -27
  639. data/public/vendor/npm/react@0.13.3/lib/accumulateInto.js +0 -26
  640. data/public/vendor/npm/react@0.13.3/lib/adler32.js +0 -32
  641. data/public/vendor/npm/react@0.13.3/lib/camelize.js +0 -30
  642. data/public/vendor/npm/react@0.13.3/lib/camelizeStyleName.js +0 -8
  643. data/public/vendor/npm/react@0.13.3/lib/cloneWithProps.js +0 -20
  644. data/public/vendor/npm/react@0.13.3/lib/containsNode.js +0 -20
  645. data/public/vendor/npm/react@0.13.3/lib/createArrayFromMixed.js +0 -15
  646. data/public/vendor/npm/react@0.13.3/lib/createFullPageComponent.js +0 -22
  647. data/public/vendor/npm/react@0.13.3/lib/createNodesFromMarkup.js +0 -39
  648. data/public/vendor/npm/react@0.13.3/lib/cx.js +0 -20
  649. data/public/vendor/npm/react@0.13.3/lib/dangerousStyleValue.js +0 -19
  650. data/public/vendor/npm/react@0.13.3/lib/emptyFunction.js +0 -32
  651. data/public/vendor/npm/react@0.13.3/lib/emptyObject.js +0 -9
  652. data/public/vendor/npm/react@0.13.3/lib/escapeTextContentForBrowser.js +0 -38
  653. data/public/vendor/npm/react@0.13.3/lib/findDOMNode.js +0 -31
  654. data/public/vendor/npm/react@0.13.3/lib/flattenChildren.js +0 -25
  655. data/public/vendor/npm/react@0.13.3/lib/focusNode.js +0 -27
  656. data/public/vendor/npm/react@0.13.3/lib/forEachAccumulated.js +0 -29
  657. data/public/vendor/npm/react@0.13.3/lib/getActiveElement.js +0 -27
  658. data/public/vendor/npm/react@0.13.3/lib/getEventCharCode.js +0 -50
  659. data/public/vendor/npm/react@0.13.3/lib/getEventKey.js +0 -72
  660. data/public/vendor/npm/react@0.13.3/lib/getEventModifierState.js +0 -45
  661. data/public/vendor/npm/react@0.13.3/lib/getEventTarget.js +0 -29
  662. data/public/vendor/npm/react@0.13.3/lib/getIteratorFn.js +0 -42
  663. data/public/vendor/npm/react@0.13.3/lib/getMarkupWrap.js +0 -73
  664. data/public/vendor/npm/react@0.13.3/lib/getNodeForCharacterOffset.js +0 -73
  665. data/public/vendor/npm/react@0.13.3/lib/getReactRootElementInContainer.js +0 -33
  666. data/public/vendor/npm/react@0.13.3/lib/getTextContentAccessor.js +0 -11
  667. data/public/vendor/npm/react@0.13.3/lib/getUnboundedScrollPosition.js +0 -38
  668. data/public/vendor/npm/react@0.13.3/lib/hyphenate.js +0 -31
  669. data/public/vendor/npm/react@0.13.3/lib/hyphenateStyleName.js +0 -8
  670. data/public/vendor/npm/react@0.13.3/lib/instantiateReactComponent.js +0 -55
  671. data/public/vendor/npm/react@0.13.3/lib/invariant.js +0 -26
  672. data/public/vendor/npm/react@0.13.3/lib/isEventSupported.js +0 -24
  673. data/public/vendor/npm/react@0.13.3/lib/isNode.js +0 -25
  674. data/public/vendor/npm/react@0.13.3/lib/isTextInputElement.js +0 -41
  675. data/public/vendor/npm/react@0.13.3/lib/isTextNode.js +0 -6
  676. data/public/vendor/npm/react@0.13.3/lib/joinClasses.js +0 -39
  677. data/public/vendor/npm/react@0.13.3/lib/keyMirror.js +0 -18
  678. data/public/vendor/npm/react@0.13.3/lib/keyOf.js +0 -34
  679. data/public/vendor/npm/react@0.13.3/lib/mapObject.js +0 -51
  680. data/public/vendor/npm/react@0.13.3/lib/memoizeStringOnly.js +0 -31
  681. data/public/vendor/npm/react@0.13.3/lib/onlyChild.js +0 -11
  682. data/public/vendor/npm/react@0.13.3/lib/performance.js +0 -8
  683. data/public/vendor/npm/react@0.13.3/lib/performanceNow.js +0 -7
  684. data/public/vendor/npm/react@0.13.3/lib/quoteAttributeValueForBrowser.js +0 -7
  685. data/public/vendor/npm/react@0.13.3/lib/setInnerHTML.js +0 -40
  686. data/public/vendor/npm/react@0.13.3/lib/setTextContent.js +0 -16
  687. data/public/vendor/npm/react@0.13.3/lib/shallowEqual.js +0 -42
  688. data/public/vendor/npm/react@0.13.3/lib/shouldUpdateReactComponent.js +0 -51
  689. data/public/vendor/npm/react@0.13.3/lib/toArray.js +0 -21
  690. data/public/vendor/npm/react@0.13.3/lib/traverseAllChildren.js +0 -104
  691. data/public/vendor/npm/react@0.13.3/lib/update.js +0 -78
  692. data/public/vendor/npm/react@0.13.3/lib/warning.js +0 -34
  693. data/public/vendor/npm/react@0.13.3/package.json +0 -34
  694. data/public/vendor/npm/react@0.13.3/react.js +0 -2
  695. data/public/vendor/npm/react@0.13.3.js +0 -1
  696. data/public/vendor/npm/readable-stream@1.1.13/duplex.js +0 -2
  697. data/public/vendor/npm/readable-stream@1.1.13/passthrough.js +0 -2
  698. data/public/vendor/npm/readable-stream@1.1.13/readable.js +0 -8
  699. data/public/vendor/npm/readable-stream@1.1.13/transform.js +0 -2
  700. data/public/vendor/npm/readable-stream@1.1.13/writable.js +0 -2
  701. data/public/vendor/npm/readable-stream@1.1.13.js +0 -1
  702. data/public/vendor/npm/source-map@0.1.31/CHANGELOG.md +0 -112
  703. data/public/vendor/npm/source-map@0.1.31/LICENSE +0 -28
  704. data/public/vendor/npm/source-map@0.1.31/Makefile.dryice.js +0 -89
  705. data/public/vendor/npm/source-map@0.1.31/README.md +0 -434
  706. data/public/vendor/npm/source-map@0.1.31/build/assert-shim.js +0 -58
  707. data/public/vendor/npm/source-map@0.1.31/build/mini-require.js +0 -154
  708. data/public/vendor/npm/source-map@0.1.31/build/prefix-source-map.jsm +0 -20
  709. data/public/vendor/npm/source-map@0.1.31/build/prefix-utils.jsm +0 -18
  710. data/public/vendor/npm/source-map@0.1.31/build/suffix-browser.js +0 -8
  711. data/public/vendor/npm/source-map@0.1.31/build/suffix-source-map.jsm +0 -6
  712. data/public/vendor/npm/source-map@0.1.31/build/suffix-utils.jsm +0 -21
  713. data/public/vendor/npm/source-map@0.1.31/build/test-prefix.js +0 -10
  714. data/public/vendor/npm/source-map@0.1.31/build/test-suffix.js +0 -5
  715. data/public/vendor/npm/source-map@0.1.31/lib/source-map/array-set.js +0 -49
  716. data/public/vendor/npm/source-map@0.1.31/lib/source-map/base64-vlq.js +0 -56
  717. data/public/vendor/npm/source-map@0.1.31/lib/source-map/base64.js +0 -44
  718. data/public/vendor/npm/source-map@0.1.31/lib/source-map/binary-search.js +0 -83
  719. data/public/vendor/npm/source-map@0.1.31/lib/source-map/source-map-consumer.js +0 -238
  720. data/public/vendor/npm/source-map@0.1.31/lib/source-map/source-map-generator.js +0 -231
  721. data/public/vendor/npm/source-map@0.1.31/lib/source-map/source-node.js +0 -234
  722. data/public/vendor/npm/source-map@0.1.31/lib/source-map/util.js +0 -207
  723. data/public/vendor/npm/source-map@0.1.31/lib/source-map.js +0 -4
  724. data/public/vendor/npm/source-map@0.1.31/package.json +0 -52
  725. data/public/vendor/npm/source-map@0.1.31/test/run-tests.js +0 -50
  726. data/public/vendor/npm/source-map@0.1.31/test/source-map/test-api.js +0 -19
  727. data/public/vendor/npm/source-map@0.1.31/test/source-map/test-array-set.js +0 -84
  728. data/public/vendor/npm/source-map@0.1.31/test/source-map/test-base64-vlq.js +0 -17
  729. data/public/vendor/npm/source-map@0.1.31/test/source-map/test-base64.js +0 -26
  730. data/public/vendor/npm/source-map@0.1.31/test/source-map/test-binary-search.js +0 -37
  731. data/public/vendor/npm/source-map@0.1.31/test/source-map/test-dog-fooding.js +0 -76
  732. data/public/vendor/npm/source-map@0.1.31/test/source-map/test-source-map-consumer.js +0 -426
  733. data/public/vendor/npm/source-map@0.1.31/test/source-map/test-source-map-generator.js +0 -480
  734. data/public/vendor/npm/source-map@0.1.31/test/source-map/test-source-node.js +0 -307
  735. data/public/vendor/npm/source-map@0.1.31/test/source-map/util.js +0 -84
  736. data/public/vendor/npm/source-map@0.1.31.js +0 -1
  737. data/public/vendor/npm/through@2.3.8/LICENSE.APACHE2 +0 -15
  738. data/public/vendor/npm/through@2.3.8/LICENSE.MIT +0 -24
  739. data/public/vendor/npm/through@2.3.8/index.js +0 -93
  740. data/public/vendor/npm/through@2.3.8/package.json +0 -36
  741. data/public/vendor/npm/through@2.3.8/readme.markdown +0 -64
  742. data/public/vendor/npm/through@2.3.8/test/async.js +0 -26
  743. data/public/vendor/npm/through@2.3.8/test/auto-destroy.js +0 -26
  744. data/public/vendor/npm/through@2.3.8/test/buffering.js +0 -57
  745. data/public/vendor/npm/through@2.3.8/test/end.js +0 -37
  746. data/public/vendor/npm/through@2.3.8/test/index.js +0 -98
  747. data/public/vendor/npm/through@2.3.8/test.js +0 -2
  748. data/public/vendor/npm/through@2.3.8.js +0 -1
  749. data/views/_options.erb +0 -135
  750. /data/public/vendor/github/jspm/{nodelibs-buffer@0.1.0 → nodelibs-buffer@0.1.1}/index.js +0 -0
  751. /data/public/vendor/github/jspm/{nodelibs-process@0.1.1 → nodelibs-process@0.1.2}/index.js +0 -0
  752. /data/public/vendor/npm/{readable-stream@1.1.13 → assert@1.5.0}/LICENSE +0 -0
  753. /data/public/vendor/npm/{buffer@3.4.3 → buffer@5.7.1}/LICENSE +0 -0
  754. /data/public/vendor/npm/{core-util-is@1.0.1 → core-util-is@1.0.3}/README.md +0 -0
  755. /data/public/vendor/npm/{process@0.10.1 → process@0.11.10}/LICENSE +0 -0
  756. /data/public/vendor/npm/{process@0.10.1 → process@0.11.10}/index.js +0 -0
  757. /data/public/vendor/npm/{readable-stream@1.1.13 → readable-stream@1.1.14}/README.md +0 -0
  758. /data/public/vendor/npm/{readable-stream@1.1.13 → readable-stream@1.1.14}/float.patch +0 -0
data/public/js/hsp.js CHANGED
@@ -1,8 +1,8 @@
1
- import React from 'react';
2
- import _ from 'underscore';
1
+ import React, { createRef } from "react";
2
+ import _ from "underscore";
3
3
 
4
- import Utils from './utils';
5
- import * as Helpers from './visualisation_helpers';
4
+ import Utils from "./utils";
5
+ import * as Helpers from "./visualisation_helpers";
6
6
 
7
7
  var HSPComponents = {};
8
8
 
@@ -10,306 +10,361 @@ var HSPComponents = {};
10
10
  * Alignment viewer.
11
11
  */
12
12
  export default class HSP extends React.Component {
13
-
14
- constructor(props) {
15
- super(props);
16
- this.hsp = props.hsp;
17
- }
18
-
19
- domID() {
20
- return 'Query_' + this.props.query.number + '_hit_' +
21
- this.props.hit.number + '_' + this.props.hsp.number;
22
- }
23
-
24
- hitDOM_ID() {
25
- return 'Query_' + this.props.query.number + '_hit_' + this.props.hit.number;
13
+ constructor(props) {
14
+ super(props);
15
+ this.hsp = props.hsp;
16
+ this.hspRef = createRef();
17
+ }
18
+
19
+ domID() {
20
+ return (
21
+ "Query_" +
22
+ this.props.query.number +
23
+ "_hit_" +
24
+ this.props.hit.number +
25
+ "_" +
26
+ this.props.hsp.number
27
+ );
28
+ }
29
+
30
+ hitDOM_ID() {
31
+ return "Query_" + this.props.query.number + "_hit_" + this.props.hit.number;
32
+ }
33
+
34
+ // Renders pretty formatted alignment.
35
+ render() {
36
+ return (
37
+ <div
38
+ className="hsp"
39
+ id={this.domID()}
40
+ ref={this.hspRef}
41
+ data-parent-hit={this.hitDOM_ID()}
42
+ >
43
+ <p className="pre-reset hsp-stats">
44
+ {this.props.showHSPNumbers &&
45
+ `${Helpers.toLetters(this.hsp.number)}. `}
46
+ {this.hspStats().map((s, i) => (
47
+ <span key={i}>{s}</span>
48
+ ))}
49
+ </p>
50
+ {this.hspLines()}
51
+ </div>
52
+ );
53
+ }
54
+
55
+ componentDidMount() {
56
+ HSPComponents[this.domID()] = this;
57
+ this.draw();
58
+ }
59
+
60
+ draw() {
61
+ var charWidth = this.props.getCharacterWidth();
62
+ var containerWidth = $(this.hspRef.current).width();
63
+ this.chars = Math.floor((containerWidth - 4) / charWidth);
64
+ this.forceUpdate();
65
+ }
66
+
67
+ // See Query.shouldComponentUpdate. The same applies for hsp.
68
+ shouldComponentUpdate() {
69
+ return !this.props.hsp;
70
+ }
71
+
72
+ /**
73
+ * Returns an array of span elements or plain strings (React automatically
74
+ * adds span tag around strings). This array is passed as it is to JSX to be
75
+ * rendered just above the pairwise alignment (see render method).
76
+ *
77
+ * We cannot return a string from this method otherwise we wouldn't be able
78
+ * to use JSX elements to format text (like, superscript).
79
+ */
80
+ hspStats() {
81
+ // An array to hold text or span elements that make up the line.
82
+ let line = [];
83
+
84
+ // Bit score and total score.
85
+ line.push(
86
+ `Score: ${Utils.inTwoDecimal(this.hsp.bit_score)} (${this.hsp.score}), `
87
+ );
88
+
89
+ // E value
90
+ line.push("E value: ");
91
+ line.push(Utils.inExponential(this.hsp.evalue));
92
+ line.push(", ");
93
+
94
+ // Identity
95
+ line.push([
96
+ `Identity: ${Utils.inFraction(
97
+ this.hsp.identity,
98
+ this.hsp.length
99
+ )} (${Utils.inPercentage(this.hsp.identity, this.hsp.length)}), `,
100
+ ]);
101
+
102
+ // Positives (for protein alignment).
103
+ if (
104
+ this.props.algorithm === "blastp" ||
105
+ this.props.algorithm === "blastx" ||
106
+ this.props.algorithm === "tblastn" ||
107
+ this.props.algorithm === "tblastx"
108
+ ) {
109
+ line.push(
110
+ `Positives: ${Utils.inFraction(
111
+ this.hsp.positives,
112
+ this.hsp.length
113
+ )} (${Utils.inPercentage(this.hsp.positives, this.hsp.length)}), `
114
+ );
26
115
  }
27
116
 
28
- // Renders pretty formatted alignment.
29
- render () {
30
- return (
31
- <div className="hsp" id={this.domID()} ref="hsp"
32
- data-parent-hit={this.hitDOM_ID()}>
33
- <pre className="pre-reset hsp-stats">
34
- {this.props.showHSPNumbers && `${Helpers.toLetters(this.hsp.number)}. `}
35
- {this.hspStats().map((s, i) => <span key={i}>{s}</span>)}
36
- </pre>
37
- {this.hspLines()}
38
- </div>
117
+ // Gaps
118
+ line.push(
119
+ `Gaps: ${Utils.inFraction(
120
+ this.hsp.gaps,
121
+ this.hsp.length
122
+ )} (${Utils.inPercentage(this.hsp.gaps, this.hsp.length)})`
123
+ );
124
+
125
+ // Query coverage
126
+ //line.push(`Query coverage: ${this.hsp.qcovhsp}%, `)
127
+
128
+ switch (this.props.algorithm) {
129
+ case "tblastx":
130
+ line.push(
131
+ `, Frame: ${Utils.inFraction(this.hsp.qframe, this.hsp.sframe)}`
39
132
  );
133
+ break;
134
+ case "blastn":
135
+ line.push(
136
+ `, Strand: ${this.hsp.qframe > 0 ? "+" : "-"} / ${
137
+ this.hsp.sframe > 0 ? "+" : "-"
138
+ }`
139
+ );
140
+ break;
141
+ case "blastx":
142
+ line.push(`, Query Frame: ${this.hsp.qframe}`);
143
+ break;
144
+ case "tblastn":
145
+ line.push(`, Hit Frame: ${this.hsp.sframe}`);
146
+ break;
40
147
  }
41
148
 
42
- componentDidMount () {
43
- HSPComponents[this.domID()] = this;
44
- this.draw();
45
- }
46
-
47
- draw () {
48
- var charWidth = this.props.getCharacterWidth();
49
- var containerWidth = $(React.findDOMNode(this.refs.hsp)).width();
50
- this.chars = Math.floor((containerWidth - 4) / charWidth);
51
- this.forceUpdate();
52
- }
53
-
54
- // See Query.shouldComponentUpdate. The same applies for hsp.
55
- shouldComponentUpdate () {
56
- return !this.props.hsp;
57
- }
58
-
59
- /**
60
- * Returns an array of span elements or plain strings (React automatically
61
- * adds span tag around strings). This array is passed as it is to JSX to be
62
- * rendered just above the pairwise alignment (see render method).
63
- *
64
- * We cannot return a string from this method otherwise we wouldn't be able
65
- * to use JSX elements to format text (like, superscript).
66
- */
67
- hspStats () {
68
- // An array to hold text or span elements that make up the line.
69
- let line = [];
70
-
71
- // Bit score and total score.
72
- line.push(`Score: ${Utils.inTwoDecimal(this.hsp.bit_score)} (${this.hsp.score}), `);
73
-
74
- // E value
75
- line.push('E value: '); line.push(Utils.inExponential(this.hsp.evalue)); line.push(', ');
76
-
77
- // Identity
78
- line.push([`Identity: ${Utils.inFraction(this.hsp.identity, this.hsp.length)} (${Utils.inPercentage(this.hsp.identity, this.hsp.length)}), `]);
79
-
80
- // Positives (for protein alignment).
81
- if (this.props.algorithm === 'blastp' ||
82
- this.props.algorithm === 'blastx' ||
83
- this.props.algorithm === 'tblastn' ||
84
- this.props.algorithm === 'tblastx') {
85
- line.push(`Positives: ${Utils.inFraction(this.hsp.positives, this.hsp.length)} (${Utils.inPercentage(this.hsp.positives, this.hsp.length)}), `);
86
- }
87
-
88
- // Gaps
89
- line.push(`Gaps: ${Utils.inFraction(this.hsp.gaps, this.hsp.length)} (${Utils.inPercentage(this.hsp.gaps, this.hsp.length)})`);
90
-
91
- // Query coverage
92
- //line.push(`Query coverage: ${this.hsp.qcovhsp}%, `)
93
-
94
- switch (this.props.algorithm) {
95
- case 'tblastx':
96
- line.push(`, Frame: ${Utils.inFraction(this.hsp.qframe, this.hsp.sframe)}`);
97
- break;
98
- case 'blastn':
99
- line.push(`, Strand: ${(this.hsp.qframe > 0 ? '+' : '-')} / ${(this.hsp.sframe > 0 ? '+' : '-')}`);
100
- break;
101
- case 'blastx':
102
- line.push(`, Query Frame: ${this.hsp.qframe}`);
103
- break;
104
- case 'tblastn':
105
- line.push(`, Hit Frame: ${this.hsp.sframe}`);
106
- break;
107
- }
108
-
109
- return line;
110
- }
111
-
112
- /**
113
- * Returns array of pre tags containing the three query, middle, and subject
114
- * lines that together comprise one 'rendered line' of HSP.
115
- */
116
- hspLines () {
117
- // Space reserved for showing coordinates
118
- var width = this.width();
119
-
120
- // Number of residues we can draw per line is the total number of
121
- // characters we can have in a line minus space required to show left
122
- // and right coordinates minus 10 characters reserved for displaying
123
- // the words Query, Subject and three blank spaces per line.
124
- var chars = this.chars - 2 * width - 10;
125
-
126
- // Number of lines of pairwise-alignment (i.e., each line consists of 3
127
- // lines). We draw as many pre tags.
128
- var lines = Math.ceil(this.hsp.length / chars);
129
-
130
- var pp = [];
131
- var nqseq = this.nqseq();
132
- var nsseq = this.nsseq();
133
- for (let i = 1; i <= lines; i++) {
134
- let seq_start_index = chars * (i - 1);
135
- let seq_stop_index = seq_start_index + chars;
136
-
137
- let lqstart = nqseq;
138
- let lqseq = this.hsp.qseq.slice(seq_start_index, seq_stop_index);
139
- let lqend = nqseq + (lqseq.length - lqseq.split('-').length) *
140
- this.qframe_unit() * this.qframe_sign();
141
- nqseq = lqend + this.qframe_unit() * this.qframe_sign();
142
-
143
- let lmseq = this.hsp.midline.slice(seq_start_index, seq_stop_index);
144
-
145
- let lsstart = nsseq;
146
- let lsseq = this.hsp.sseq.slice(seq_start_index, seq_stop_index);
147
- let lsend = nsseq + (lsseq.length - lsseq.split('-').length) *
148
- this.sframe_unit() * this.sframe_sign();
149
- nsseq = lsend + this.sframe_unit() * this.sframe_sign();
150
-
151
- pp.push(
152
- <pre key={this.hsp.number + ',' + i} className="pre-reset hsp-lines">
153
- <span className="hsp-coords">
154
- {`Query ${this.formatCoords(lqstart, width)} `}
155
- </span>
156
- <span>{lqseq}</span>
157
- <span className="hsp-coords">{` ${lqend}`}</span>
158
- <br/>
159
- <span className="hsp-coords">
160
- {`${this.formatCoords('', width + 8)} `}
161
- </span>
162
- <span>{lmseq}</span>
163
- <br/>
164
- <span className="hsp-coords">
165
- {`Subject ${this.formatCoords(lsstart, width)} `}
166
- </span>
167
- <span>{lsseq}</span>
168
- <span className="hsp-coords">{` ${lsend}`}</span>
169
- <br/>
170
- </pre>);
171
- }
172
-
173
- return pp;
174
- }
175
-
176
- // Width of the coordinate part of hsp lines. Essentially the length of
177
- // the largest coordinate.
178
- width () {
179
- return _.max(_.map([this.hsp.qstart, this.hsp.qend,
180
- this.hsp.sstart, this.hsp.send],
181
- (n) => { return n.toString().length; }));
182
- }
183
-
184
- // Alignment start coordinate for query sequence.
185
- //
186
- // This will be qstart or qend depending on the direction in which the
187
- // (translated) query sequence aligned.
188
- nqseq () {
189
- switch (this.props.algorithm) {
190
- case 'blastp':
191
- case 'blastx':
192
- case 'tblastn':
193
- case 'tblastx':
194
- return this.hsp.qframe >= 0 ? this.hsp.qstart : this.hsp.qend;
195
- case 'blastn':
196
- // BLASTN is a bit weird in that, no matter which direction the query
197
- // sequence aligned in, qstart is taken as alignment start coordinate
198
- // for query.
199
- return this.hsp.qstart;
200
- }
201
- }
202
-
203
- // Alignment start coordinate for subject sequence.
204
- //
205
- // This will be sstart or send depending on the direction in which the
206
- // (translated) subject sequence aligned.
207
- nsseq () {
208
- switch (this.props.algorithm) {
209
- case 'blastp':
210
- case 'blastx':
211
- case 'tblastn':
212
- case 'tblastx':
213
- return this.hsp.sframe >= 0 ? this.hsp.sstart : this.hsp.send;
214
- case 'blastn':
215
- // BLASTN is a bit weird in that, no matter which direction the
216
- // subject sequence aligned in, sstart is taken as alignment
217
- // start coordinate for subject.
218
- return this.hsp.sstart;
219
- }
149
+ return line;
150
+ }
151
+
152
+ /**
153
+ * Returns array of pre tags containing the three query, middle, and subject
154
+ * lines that together comprise one 'rendered line' of HSP.
155
+ */
156
+ hspLines() {
157
+ // Space reserved for showing coordinates
158
+ var width = this.width();
159
+
160
+ // Number of residues we can draw per line is the total number of
161
+ // characters we can have in a line minus space required to show left
162
+ // and right coordinates minus 10 characters reserved for displaying
163
+ // the words Query, Subject and three blank spaces per line.
164
+ var chars = this.chars - 2 * width - 10;
165
+
166
+ // Number of lines of pairwise-alignment (i.e., each line consists of 3
167
+ // lines). We draw as many pre tags.
168
+ var lines = Math.ceil(this.hsp.length / chars);
169
+
170
+ var pp = [];
171
+ var nqseq = this.nqseq();
172
+ var nsseq = this.nsseq();
173
+ for (let i = 1; i <= lines; i++) {
174
+ let seq_start_index = chars * (i - 1);
175
+ let seq_stop_index = seq_start_index + chars;
176
+
177
+ let lqstart = nqseq;
178
+ let lqseq = this.hsp.qseq.slice(seq_start_index, seq_stop_index);
179
+ let lqend =
180
+ nqseq +
181
+ (lqseq.length - lqseq.split("-").length) *
182
+ this.qframe_unit() *
183
+ this.qframe_sign();
184
+ nqseq = lqend + this.qframe_unit() * this.qframe_sign();
185
+
186
+ let lmseq = this.hsp.midline.slice(seq_start_index, seq_stop_index);
187
+
188
+ let lsstart = nsseq;
189
+ let lsseq = this.hsp.sseq.slice(seq_start_index, seq_stop_index);
190
+ let lsend =
191
+ nsseq +
192
+ (lsseq.length - lsseq.split("-").length) *
193
+ this.sframe_unit() *
194
+ this.sframe_sign();
195
+ nsseq = lsend + this.sframe_unit() * this.sframe_sign();
196
+
197
+ pp.push(
198
+ <pre key={this.hsp.number + "," + i} className="pre-reset hsp-lines">
199
+ <span className="hsp-coords">
200
+ {`Query ${this.formatCoords(lqstart, width)} `}
201
+ </span>
202
+ <span>{lqseq}</span>
203
+ <span className="hsp-coords">{` ${lqend}`}</span>
204
+ <br />
205
+ <span className="hsp-coords">
206
+ {`${this.formatCoords("", width + 8)} `}
207
+ </span>
208
+ <span>{lmseq}</span>
209
+ <br />
210
+ <span className="hsp-coords">
211
+ {`Subject ${this.formatCoords(lsstart, width)} `}
212
+ </span>
213
+ <span>{lsseq}</span>
214
+ <span className="hsp-coords">{` ${lsend}`}</span>
215
+ <br />
216
+ </pre>
217
+ );
220
218
  }
221
219
 
222
- // Jump in query coordinate.
223
- //
224
- // Roughly,
225
- //
226
- // qend = qstart + n * qframe_unit
227
- //
228
- // This will be 1 or 3 depending on whether the query sequence was
229
- // translated or not.
230
- qframe_unit () {
231
- switch (this.props.algorithm) {
232
- case 'blastp':
233
- case 'blastn':
234
- case 'tblastn':
235
- return 1;
236
- case 'blastx':
237
- // _Translated_ nucleotide query against protein database.
238
- case 'tblastx':
239
- // _Translated_ nucleotide query against translated
240
- // nucleotide database.
241
- return 3;
220
+ return pp;
221
+ }
222
+
223
+ // Width of the coordinate part of hsp lines. Essentially the length of
224
+ // the largest coordinate.
225
+ width() {
226
+ return _.max(
227
+ _.map(
228
+ [this.hsp.qstart, this.hsp.qend, this.hsp.sstart, this.hsp.send],
229
+ (n) => {
230
+ return n.toString().length;
242
231
  }
232
+ )
233
+ );
234
+ }
235
+
236
+ // Alignment start coordinate for query sequence.
237
+ //
238
+ // This will be qstart or qend depending on the direction in which the
239
+ // (translated) query sequence aligned.
240
+ nqseq() {
241
+ switch (this.props.algorithm) {
242
+ case "blastp":
243
+ case "blastx":
244
+ case "tblastn":
245
+ case "tblastx":
246
+ return this.hsp.qframe >= 0 ? this.hsp.qstart : this.hsp.qend;
247
+ case "blastn":
248
+ // BLASTN is a bit weird in that, no matter which direction the query
249
+ // sequence aligned in, qstart is taken as alignment start coordinate
250
+ // for query.
251
+ return this.hsp.qstart;
243
252
  }
244
-
245
- // Jump in subject coordinate.
246
- //
247
- // Roughly,
248
- //
249
- // send = sstart + n * sframe_unit
250
- //
251
- // This will be 1 or 3 depending on whether the subject sequence was
252
- // translated or not.
253
- sframe_unit () {
254
- switch (this.props.algorithm) {
255
- case 'blastp':
256
- case 'blastx':
257
- case 'blastn':
258
- return 1;
259
- case 'tblastn':
260
- // Protein query against _translated_ nucleotide database.
261
- return 3;
262
- case 'tblastx':
263
- // Translated nucleotide query against _translated_
264
- // nucleotide database.
265
- return 3;
266
- }
253
+ }
254
+
255
+ // Alignment start coordinate for subject sequence.
256
+ //
257
+ // This will be sstart or send depending on the direction in which the
258
+ // (translated) subject sequence aligned.
259
+ nsseq() {
260
+ switch (this.props.algorithm) {
261
+ case "blastp":
262
+ case "blastx":
263
+ case "tblastn":
264
+ case "tblastx":
265
+ return this.hsp.sframe >= 0 ? this.hsp.sstart : this.hsp.send;
266
+ case "blastn":
267
+ // BLASTN is a bit weird in that, no matter which direction the
268
+ // subject sequence aligned in, sstart is taken as alignment
269
+ // start coordinate for subject.
270
+ return this.hsp.sstart;
267
271
  }
268
-
269
- // If we should add or subtract qframe_unit from qstart to arrive at qend.
270
- //
271
- // Roughly,
272
- //
273
- // qend = qstart + (qframe_sign) * n * qframe_unit
274
- //
275
- // This will be +1 or -1, depending on the direction in which the
276
- // (translated) query sequence aligned.
277
- qframe_sign () {
278
- return this.hsp.qframe >= 0 ? 1 : -1;
272
+ }
273
+
274
+ // Jump in query coordinate.
275
+ //
276
+ // Roughly,
277
+ //
278
+ // qend = qstart + n * qframe_unit
279
+ //
280
+ // This will be 1 or 3 depending on whether the query sequence was
281
+ // translated or not.
282
+ qframe_unit() {
283
+ switch (this.props.algorithm) {
284
+ case "blastp":
285
+ case "blastn":
286
+ case "tblastn":
287
+ return 1;
288
+ case "blastx":
289
+ // _Translated_ nucleotide query against protein database.
290
+ case "tblastx":
291
+ // _Translated_ nucleotide query against translated
292
+ // nucleotide database.
293
+ return 3;
279
294
  }
280
-
281
- // If we should add or subtract sframe_unit from sstart to arrive at send.
282
- //
283
- // Roughly,
284
- //
285
- // send = sstart + (sframe_sign) * n * sframe_unit
286
- //
287
- // This will be +1 or -1, depending on the direction in which the
288
- // (translated) subject sequence aligned.
289
- sframe_sign () {
290
- return this.hsp.sframe >= 0 ? 1 : -1;
295
+ }
296
+
297
+ // Jump in subject coordinate.
298
+ //
299
+ // Roughly,
300
+ //
301
+ // send = sstart + n * sframe_unit
302
+ //
303
+ // This will be 1 or 3 depending on whether the subject sequence was
304
+ // translated or not.
305
+ sframe_unit() {
306
+ switch (this.props.algorithm) {
307
+ case "blastp":
308
+ case "blastx":
309
+ case "blastn":
310
+ return 1;
311
+ case "tblastn":
312
+ // Protein query against _translated_ nucleotide database.
313
+ return 3;
314
+ case "tblastx":
315
+ // Translated nucleotide query against _translated_
316
+ // nucleotide database.
317
+ return 3;
291
318
  }
292
-
293
-
294
- /**
295
- * Pad given coord with ' ' till its length == width. Returns undefined if
296
- * width is not supplied.
297
- */
298
- formatCoords (coord, width) {
299
- if (width) {
300
- let padding = width - coord.toString().length;
301
- return Array(padding + 1).join(' ').concat([coord]);
302
- }
319
+ }
320
+
321
+ // If we should add or subtract qframe_unit from qstart to arrive at qend.
322
+ //
323
+ // Roughly,
324
+ //
325
+ // qend = qstart + (qframe_sign) * n * qframe_unit
326
+ //
327
+ // This will be +1 or -1, depending on the direction in which the
328
+ // (translated) query sequence aligned.
329
+ qframe_sign() {
330
+ return this.hsp.qframe >= 0 ? 1 : -1;
331
+ }
332
+
333
+ // If we should add or subtract sframe_unit from sstart to arrive at send.
334
+ //
335
+ // Roughly,
336
+ //
337
+ // send = sstart + (sframe_sign) * n * sframe_unit
338
+ //
339
+ // This will be +1 or -1, depending on the direction in which the
340
+ // (translated) subject sequence aligned.
341
+ sframe_sign() {
342
+ return this.hsp.sframe >= 0 ? 1 : -1;
343
+ }
344
+
345
+ /**
346
+ * Pad given coord with ' ' till its length == width. Returns undefined if
347
+ * width is not supplied.
348
+ */
349
+ formatCoords(coord, width) {
350
+ if (width) {
351
+ let padding = width - coord.toString().length;
352
+ return Array(padding + 1)
353
+ .join(" ")
354
+ .concat([coord]);
303
355
  }
356
+ }
304
357
 
305
- spanCoords (text) {
306
- return <span className="hsp-coords">{text}</span>;
307
- }
358
+ spanCoords(text) {
359
+ return <span className="hsp-coords">{text}</span>;
360
+ }
308
361
  }
309
362
 
310
363
  // Redraw if window resized.
311
- $(window).resize(_.debounce(function () {
364
+ $(window).resize(
365
+ _.debounce(function () {
312
366
  _.each(HSPComponents, (comp) => {
313
- comp.draw();
367
+ comp.draw();
314
368
  });
315
- }, 100));
369
+ }, 100)
370
+ );