sequenceserver 2.0.0 → 2.2.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 (675) hide show
  1. checksums.yaml +4 -4
  2. data/bin/sequenceserver +7 -2
  3. data/lib/sequenceserver/api_errors.rb +24 -2
  4. data/lib/sequenceserver/blast/formatter.rb +13 -4
  5. data/lib/sequenceserver/blast/job.rb +41 -7
  6. data/lib/sequenceserver/blast/report.rb +69 -33
  7. data/lib/sequenceserver/config.rb +52 -27
  8. data/lib/sequenceserver/job.rb +13 -3
  9. data/lib/sequenceserver/job_remover.rb +25 -29
  10. data/lib/sequenceserver/makeblastdb.rb +80 -72
  11. data/lib/sequenceserver/pool.rb +1 -1
  12. data/lib/sequenceserver/refinements.rb +15 -0
  13. data/lib/sequenceserver/report.rb +1 -5
  14. data/lib/sequenceserver/routes.rb +92 -9
  15. data/lib/sequenceserver/sequence.rb +8 -7
  16. data/lib/sequenceserver/sys.rb +3 -3
  17. data/lib/sequenceserver/version.rb +1 -1
  18. data/lib/sequenceserver/zip_file_generator.rb +56 -0
  19. data/lib/sequenceserver.rb +9 -2
  20. data/public/config.js +149 -143
  21. data/public/css/sequenceserver.css +44 -3
  22. data/public/css/sequenceserver.min.css +3 -3
  23. data/public/js/alignment_exporter.js +16 -8
  24. data/public/js/circos.js +370 -234
  25. data/public/js/cloud_share_modal.js +216 -0
  26. data/public/js/databases.js +144 -0
  27. data/public/js/databases_tree.js +42 -113
  28. data/public/js/dnd.js +164 -0
  29. data/public/js/error_modal.js +4 -11
  30. data/public/js/exporter.js +7 -3
  31. data/public/js/form.js +260 -0
  32. data/public/js/grapher.js +113 -106
  33. data/public/js/hit.js +80 -67
  34. data/public/js/hits_overview.js +2 -2
  35. data/public/js/hsp.js +343 -288
  36. data/public/js/jquery_world.js +4 -4
  37. data/public/js/mailto.js +36 -0
  38. data/public/js/options.js +84 -0
  39. data/public/js/query.js +319 -59
  40. data/public/js/report.js +369 -269
  41. data/public/js/report_root.js +75 -0
  42. data/public/js/search.js +28 -1011
  43. data/public/js/search_button.js +195 -0
  44. data/public/js/sequence.js +2409 -2411
  45. data/public/js/sequence_modal.js +152 -159
  46. data/public/js/share_url.js +23 -0
  47. data/public/js/sidebar.js +262 -83
  48. data/public/js/tests/advanced_parameters.spec.js +36 -0
  49. data/public/js/tests/database.spec.js +60 -0
  50. data/public/js/tests/mock_data/databases.json +91 -0
  51. data/public/js/tests/mock_data/long_response.json +269 -0
  52. data/public/js/tests/mock_data/sequences.js +32 -0
  53. data/public/js/tests/mock_data/short_response.json +2240 -0
  54. data/public/js/tests/report.spec.js +155 -0
  55. data/public/js/tests/search_button.spec.js +14 -0
  56. data/public/js/tests/search_query.spec.js +58 -0
  57. data/public/js/visualisation_helpers.js +1 -1
  58. data/public/packages/circosJS@1.7.0.js +1640 -0
  59. data/public/packages/jquery-ui@1.11.4.js +16624 -0
  60. data/public/sequenceserver-report.min.js +2425 -19
  61. data/public/sequenceserver-search.min.js +2337 -15
  62. data/public/vendor/github/jspm/nodelibs-assert@0.1.0/index.js +2 -0
  63. data/public/vendor/github/jspm/{nodelibs-buffer@0.1.0 → nodelibs-assert@0.1.0}/package.json +1 -1
  64. data/public/vendor/github/jspm/nodelibs-assert@0.1.0.js +1 -0
  65. data/public/vendor/github/jspm/nodelibs-buffer@0.1.1/package.json +6 -0
  66. data/public/vendor/github/jspm/nodelibs-buffer@0.1.1.js +1 -0
  67. data/public/vendor/github/jspm/{nodelibs-process@0.1.1 → nodelibs-process@0.1.2}/package.json +2 -2
  68. data/public/vendor/github/jspm/nodelibs-process@0.1.2.js +1 -0
  69. data/public/vendor/github/jspm/nodelibs-vm@0.1.0/index.js +2 -0
  70. data/public/vendor/github/jspm/nodelibs-vm@0.1.0/package.json +6 -0
  71. data/public/vendor/github/jspm/nodelibs-vm@0.1.0.js +1 -0
  72. data/public/vendor/npm/assert@1.5.0/CHANGELOG.md +8 -0
  73. data/public/vendor/npm/assert@1.5.0/README.md +105 -0
  74. data/public/vendor/npm/assert@1.5.0/assert.js +327 -0
  75. data/public/vendor/npm/assert@1.5.0/package.json +32 -0
  76. data/public/vendor/npm/assert@1.5.0/test.js +288 -0
  77. data/public/vendor/npm/assert@1.5.0.js +1 -0
  78. data/public/vendor/npm/{base64-js@0.0.8/LICENSE.MIT → base64-js@1.5.1/LICENSE} +1 -1
  79. data/public/vendor/npm/{base64-js@0.0.8 → base64-js@1.5.1}/README.md +10 -7
  80. data/public/vendor/npm/base64-js@1.5.1/base64js.min.js +3 -0
  81. data/public/vendor/npm/base64-js@1.5.1/index.d.ts +3 -0
  82. data/public/vendor/npm/base64-js@1.5.1/index.js +151 -0
  83. data/public/vendor/npm/base64-js@1.5.1/package.json +47 -0
  84. data/public/vendor/npm/base64-js@1.5.1.js +1 -0
  85. data/public/vendor/npm/buffer@5.7.1/AUTHORS.md +70 -0
  86. data/public/vendor/npm/{buffer@3.4.3 → buffer@5.7.1}/README.md +111 -41
  87. data/public/vendor/npm/buffer@5.7.1/index.d.ts +186 -0
  88. data/public/vendor/npm/buffer@5.7.1/index.js +1817 -0
  89. data/public/vendor/npm/buffer@5.7.1/package.json +96 -0
  90. data/public/vendor/npm/buffer@5.7.1.js +1 -0
  91. data/public/vendor/npm/core-util-is@1.0.3/LICENSE +19 -0
  92. data/public/vendor/npm/core-util-is@1.0.3/lib/util.js +64 -0
  93. data/public/vendor/npm/{core-util-is@1.0.1 → core-util-is@1.0.3}/package.json +13 -1
  94. data/public/vendor/npm/core-util-is@1.0.3.js +1 -0
  95. data/public/vendor/npm/events@1.0.2/tests/add-listeners.js +2 -2
  96. data/public/vendor/npm/events@1.0.2/tests/check-listener-leaks.js +3 -3
  97. data/public/vendor/npm/events@1.0.2/tests/common.js +1 -1
  98. data/public/vendor/npm/events@1.0.2/tests/index.js +13 -13
  99. data/public/vendor/npm/events@1.0.2/tests/listeners-side-effects.js +2 -2
  100. data/public/vendor/npm/events@1.0.2/tests/listeners.js +2 -2
  101. data/public/vendor/npm/events@1.0.2/tests/max-listeners.js +2 -2
  102. data/public/vendor/npm/events@1.0.2/tests/modify-in-emit.js +2 -2
  103. data/public/vendor/npm/events@1.0.2/tests/num-args.js +2 -2
  104. data/public/vendor/npm/events@1.0.2/tests/once.js +2 -2
  105. data/public/vendor/npm/events@1.0.2/tests/remove-all-listeners.js +3 -3
  106. data/public/vendor/npm/events@1.0.2/tests/remove-listeners.js +3 -3
  107. data/public/vendor/npm/events@1.0.2/tests/set-max-listeners-side-effects.js +2 -2
  108. data/public/vendor/npm/events@1.0.2/tests/subclass.js +3 -3
  109. data/public/vendor/npm/events@1.0.2.js +1 -1
  110. data/public/vendor/npm/ieee754@1.2.1/LICENSE +11 -0
  111. data/public/vendor/npm/{ieee754@1.1.6 → ieee754@1.2.1}/README.md +12 -8
  112. data/public/vendor/npm/ieee754@1.2.1/index.d.ts +10 -0
  113. data/public/vendor/npm/{ieee754@1.1.6 → ieee754@1.2.1}/index.js +6 -6
  114. data/public/vendor/npm/ieee754@1.2.1/package.json +52 -0
  115. data/public/vendor/npm/ieee754@1.2.1.js +1 -0
  116. data/public/vendor/npm/{is-array@1.0.1 → indexof@0.0.1}/Makefile +3 -3
  117. data/public/vendor/npm/indexof@0.0.1/Readme.md +15 -0
  118. data/public/vendor/npm/indexof@0.0.1/component.json +10 -0
  119. data/public/vendor/npm/indexof@0.0.1/index.js +11 -0
  120. data/public/vendor/npm/indexof@0.0.1/package.json +12 -0
  121. data/public/vendor/npm/indexof@0.0.1.js +1 -0
  122. data/public/vendor/npm/inherits@2.0.1/inherits.js +1 -1
  123. data/public/vendor/npm/inherits@2.0.1.js +1 -1
  124. data/public/vendor/npm/isarray@0.0.1.js +1 -1
  125. data/public/vendor/npm/js-tokens@4.0.0/index.js +23 -0
  126. data/public/vendor/npm/js-tokens@4.0.0/package.json +30 -0
  127. data/public/vendor/npm/js-tokens@4.0.0.js +1 -0
  128. data/public/vendor/npm/loose-envify@1.4.0/LICENSE +21 -0
  129. data/public/vendor/npm/loose-envify@1.4.0/README.md +45 -0
  130. data/public/vendor/npm/loose-envify@1.4.0/cli.js +12 -0
  131. data/public/vendor/npm/loose-envify@1.4.0/custom.js +3 -0
  132. data/public/vendor/npm/loose-envify@1.4.0/index.js +5 -0
  133. data/public/vendor/npm/loose-envify@1.4.0/loose-envify.js +33 -0
  134. data/public/vendor/npm/loose-envify@1.4.0/package.json +36 -0
  135. data/public/vendor/npm/loose-envify@1.4.0/replace.js +52 -0
  136. data/public/vendor/npm/loose-envify@1.4.0.js +1 -0
  137. data/public/vendor/npm/object-assign@4.1.1/index.js +90 -0
  138. data/public/vendor/npm/object-assign@4.1.1/package.json +42 -0
  139. data/public/vendor/npm/object-assign@4.1.1.js +1 -0
  140. data/public/vendor/npm/path-browserify@0.0.0/index.js +1 -1
  141. data/public/vendor/npm/path-browserify@0.0.0.js +1 -1
  142. data/public/vendor/npm/{process@0.10.1 → process@0.11.10}/README.md +4 -1
  143. data/public/vendor/npm/process@0.11.10/browser.js +184 -0
  144. data/public/vendor/npm/{process@0.10.1 → process@0.11.10}/package.json +10 -1
  145. data/public/vendor/npm/process@0.11.10/test.js +185 -0
  146. data/public/vendor/npm/process@0.11.10.js +1 -0
  147. data/public/vendor/npm/react-dom@18.0.0/LICENSE +21 -0
  148. data/public/vendor/npm/react-dom@18.0.0/README.md +50 -0
  149. data/public/vendor/npm/react-dom@18.0.0/cjs/react-dom-server-legacy.browser.development.js +4771 -0
  150. data/public/vendor/npm/react-dom@18.0.0/cjs/react-dom-server-legacy.browser.production.min.js +85 -0
  151. data/public/vendor/npm/react-dom@18.0.0/cjs/react-dom-server-legacy.node.development.js +4813 -0
  152. data/public/vendor/npm/react-dom@18.0.0/cjs/react-dom-server-legacy.node.production.min.js +1705 -0
  153. data/public/vendor/npm/react-dom@18.0.0/cjs/react-dom-server.browser.development.js +4746 -0
  154. data/public/vendor/npm/react-dom@18.0.0/cjs/react-dom-server.browser.production.min.js +90 -0
  155. data/public/vendor/npm/react-dom@18.0.0/cjs/react-dom-server.node.development.js +4714 -0
  156. data/public/vendor/npm/react-dom@18.0.0/cjs/react-dom-server.node.production.min.js +1746 -0
  157. data/public/vendor/npm/react-dom@18.0.0/cjs/react-dom-test-utils.development.js +1017 -0
  158. data/public/vendor/npm/react-dom@18.0.0/cjs/react-dom-test-utils.production.min.js +617 -0
  159. data/public/vendor/npm/react-dom@18.0.0/cjs/react-dom.development.js +20092 -0
  160. data/public/vendor/npm/react-dom@18.0.0/cjs/react-dom.production.min.js +322 -0
  161. data/public/vendor/npm/react-dom@18.0.0/cjs/react-dom.profiling.min.js +364 -0
  162. data/public/vendor/npm/react-dom@18.0.0/client.js +27 -0
  163. data/public/vendor/npm/react-dom@18.0.0/index.js +23 -0
  164. data/public/vendor/npm/react-dom@18.0.0/package.json +62 -0
  165. data/public/vendor/npm/react-dom@18.0.0/profiling.js +23 -0
  166. data/public/vendor/npm/react-dom@18.0.0/server.browser.js +19 -0
  167. data/public/vendor/npm/react-dom@18.0.0/server.js +3 -0
  168. data/public/vendor/npm/react-dom@18.0.0/server.node.js +19 -0
  169. data/public/vendor/npm/react-dom@18.0.0/test-utils.js +9 -0
  170. data/public/vendor/npm/react-dom@18.0.0/umd/react-dom-server-legacy.browser.development.js +4770 -0
  171. data/public/vendor/npm/react-dom@18.0.0/umd/react-dom-server-legacy.browser.production.min.js +72 -0
  172. data/public/vendor/npm/react-dom@18.0.0/umd/react-dom-server.browser.development.js +4745 -0
  173. data/public/vendor/npm/react-dom@18.0.0/umd/react-dom-server.browser.production.min.js +74 -0
  174. data/public/vendor/npm/react-dom@18.0.0/umd/react-dom-test-utils.development.js +1013 -0
  175. data/public/vendor/npm/react-dom@18.0.0/umd/react-dom-test-utils.production.min.js +625 -0
  176. data/public/vendor/npm/react-dom@18.0.0/umd/react-dom.development.js +20106 -0
  177. data/public/vendor/npm/react-dom@18.0.0/umd/react-dom.production.min.js +269 -0
  178. data/public/vendor/npm/react-dom@18.0.0/umd/react-dom.profiling.min.js +285 -0
  179. data/public/vendor/npm/react-dom@18.0.0.js +1 -0
  180. data/public/vendor/npm/react@18.0.0/LICENSE +21 -0
  181. data/public/vendor/npm/react@18.0.0/README.md +13 -0
  182. data/public/vendor/npm/react@18.0.0/cjs/react-jsx-dev-runtime.development.js +837 -0
  183. data/public/vendor/npm/react@18.0.0/cjs/react-jsx-dev-runtime.production.min.js +10 -0
  184. data/public/vendor/npm/react@18.0.0/cjs/react-jsx-dev-runtime.profiling.min.js +10 -0
  185. data/public/vendor/npm/react@18.0.0/cjs/react-jsx-runtime.development.js +849 -0
  186. data/public/vendor/npm/react@18.0.0/cjs/react-jsx-runtime.production.min.js +38 -0
  187. data/public/vendor/npm/react@18.0.0/cjs/react-jsx-runtime.profiling.min.js +38 -0
  188. data/public/vendor/npm/react@18.0.0/cjs/react.development.js +1746 -0
  189. data/public/vendor/npm/react@18.0.0/cjs/react.production.min.js +26 -0
  190. data/public/vendor/npm/react@18.0.0/cjs/react.shared-subset.development.js +10 -0
  191. data/public/vendor/npm/react@18.0.0/cjs/react.shared-subset.production.min.js +12 -0
  192. data/public/vendor/npm/react@18.0.0/index.js +9 -0
  193. data/public/vendor/npm/react@18.0.0/jsx-dev-runtime.js +9 -0
  194. data/public/vendor/npm/react@18.0.0/jsx-runtime.js +9 -0
  195. data/public/vendor/npm/react@18.0.0/package.json +47 -0
  196. data/public/vendor/npm/react@18.0.0/react.shared-subset.js +9 -0
  197. data/public/vendor/npm/react@18.0.0/umd/react.development.js +2186 -0
  198. data/public/vendor/npm/react@18.0.0/umd/react.production.min.js +33 -0
  199. data/public/vendor/npm/react@18.0.0/umd/react.profiling.min.js +33 -0
  200. data/public/vendor/npm/react@18.0.0.js +1 -0
  201. data/public/vendor/npm/readable-stream@1.1.14/LICENSE +18 -0
  202. data/public/vendor/npm/readable-stream@1.1.14/duplex.js +2 -0
  203. data/public/vendor/npm/{readable-stream@1.1.13 → readable-stream@1.1.14}/lib/_stream_duplex.js +5 -5
  204. data/public/vendor/npm/{readable-stream@1.1.13 → readable-stream@1.1.14}/lib/_stream_passthrough.js +3 -3
  205. data/public/vendor/npm/{readable-stream@1.1.13 → readable-stream@1.1.14}/lib/_stream_readable.js +10 -10
  206. data/public/vendor/npm/{readable-stream@1.1.13 → readable-stream@1.1.14}/lib/_stream_transform.js +4 -4
  207. data/public/vendor/npm/{readable-stream@1.1.13 → readable-stream@1.1.14}/lib/_stream_writable.js +6 -6
  208. data/public/vendor/npm/{readable-stream@1.1.13 → readable-stream@1.1.14}/package.json +1 -1
  209. data/public/vendor/npm/readable-stream@1.1.14/passthrough.js +2 -0
  210. data/public/vendor/npm/readable-stream@1.1.14/readable.js +13 -0
  211. data/public/vendor/npm/readable-stream@1.1.14/transform.js +2 -0
  212. data/public/vendor/npm/readable-stream@1.1.14/writable.js +2 -0
  213. data/public/vendor/npm/readable-stream@1.1.14.js +1 -0
  214. data/public/vendor/npm/scheduler@0.21.0/LICENSE +21 -0
  215. data/public/vendor/npm/scheduler@0.21.0/README.md +9 -0
  216. data/public/vendor/npm/scheduler@0.21.0/cjs/scheduler-unstable_mock.development.js +530 -0
  217. data/public/vendor/npm/scheduler@0.21.0/cjs/scheduler-unstable_mock.production.min.js +20 -0
  218. data/public/vendor/npm/scheduler@0.21.0/cjs/scheduler-unstable_post_task.development.js +153 -0
  219. data/public/vendor/npm/scheduler@0.21.0/cjs/scheduler-unstable_post_task.production.min.js +14 -0
  220. data/public/vendor/npm/scheduler@0.21.0/cjs/scheduler.development.js +444 -0
  221. data/public/vendor/npm/scheduler@0.21.0/cjs/scheduler.production.min.js +19 -0
  222. data/public/vendor/npm/scheduler@0.21.0/index.js +9 -0
  223. data/public/vendor/npm/scheduler@0.21.0/package.json +36 -0
  224. data/public/vendor/npm/scheduler@0.21.0/umd/scheduler-unstable_mock.development.js +701 -0
  225. data/public/vendor/npm/scheduler@0.21.0/umd/scheduler-unstable_mock.production.min.js +21 -0
  226. data/public/vendor/npm/scheduler@0.21.0/umd/scheduler.development.js +154 -0
  227. data/public/vendor/npm/scheduler@0.21.0/umd/scheduler.production.min.js +148 -0
  228. data/public/vendor/npm/scheduler@0.21.0/umd/scheduler.profiling.min.js +148 -0
  229. data/public/vendor/npm/scheduler@0.21.0/unstable_mock.js +9 -0
  230. data/public/vendor/npm/scheduler@0.21.0/unstable_post_task.js +9 -0
  231. data/public/vendor/npm/scheduler@0.21.0.js +1 -0
  232. data/public/vendor/npm/stream-browserify@1.0.0/index.js +7 -7
  233. data/public/vendor/npm/stream-browserify@1.0.0/test/buf.js +5 -5
  234. data/public/vendor/npm/stream-browserify@1.0.0.js +1 -1
  235. data/public/vendor/npm/string_decoder@0.10.31/index.js +2 -2
  236. data/public/vendor/npm/string_decoder@0.10.31.js +1 -1
  237. data/public/vendor/npm/util@0.10.3/support/isBuffer.js +1 -1
  238. data/public/vendor/npm/util@0.10.3/test/browser/inspect.js +2 -2
  239. data/public/vendor/npm/util@0.10.3/test/browser/is.js +3 -3
  240. data/public/vendor/npm/util@0.10.3/test/node/debug.js +4 -4
  241. data/public/vendor/npm/util@0.10.3/test/node/format.js +2 -2
  242. data/public/vendor/npm/util@0.10.3/test/node/inspect.js +3 -3
  243. data/public/vendor/npm/util@0.10.3/test/node/log.js +3 -3
  244. data/public/vendor/npm/util@0.10.3/test/node/util.js +3 -3
  245. data/public/vendor/npm/util@0.10.3/util.js +3 -3
  246. data/public/vendor/npm/util@0.10.3.js +1 -1
  247. data/public/vendor/npm/vm-browserify@0.0.4/LICENSE +18 -0
  248. data/public/vendor/npm/vm-browserify@0.0.4/example/run/bundle.js +376 -0
  249. data/public/vendor/npm/vm-browserify@0.0.4/example/run/entry.js +6 -0
  250. data/public/vendor/npm/vm-browserify@0.0.4/example/run/index.html +9 -0
  251. data/public/vendor/npm/vm-browserify@0.0.4/example/run/server.js +6 -0
  252. data/public/vendor/npm/vm-browserify@0.0.4/index.js +139 -0
  253. data/public/vendor/npm/vm-browserify@0.0.4/package.json +46 -0
  254. data/public/vendor/npm/vm-browserify@0.0.4/readme.markdown +67 -0
  255. data/public/vendor/npm/vm-browserify@0.0.4/test/vm.js +34 -0
  256. data/public/vendor/npm/vm-browserify@0.0.4.js +1 -0
  257. data/public/vendor/npm/webshim@1.15.8/Gruntfile.js +4 -4
  258. data/public/vendor/npm/webshim@1.15.8/build/combobuild.js +2 -2
  259. data/public/vendor/npm/webshim@1.15.8/js-webshim/dev/shims/color-picker.js +1 -1
  260. data/public/vendor/npm/webshim@1.15.8/js-webshim/dev/shims/combos/10.js +1 -1
  261. data/public/vendor/npm/webshim@1.15.8/js-webshim/dev/shims/combos/11.js +1 -1
  262. data/public/vendor/npm/webshim@1.15.8/js-webshim/dev/shims/combos/17.js +1 -1
  263. data/public/vendor/npm/webshim@1.15.8/js-webshim/dev/shims/combos/5.js +1 -1
  264. data/public/vendor/npm/webshim@1.15.8/js-webshim/dev/shims/combos/6.js +1 -1
  265. data/public/vendor/npm/webshim@1.15.8/js-webshim/dev/shims/combos/9.js +1 -1
  266. data/public/vendor/npm/webshim@1.15.8/js-webshim/dev/shims/es6.js +1 -1
  267. data/public/vendor/npm/webshim@1.15.8/js-webshim/dev/shims/excanvas.js +1 -1
  268. data/public/vendor/npm/webshim@1.15.8/js-webshim/dev/shims/form-number-date-ui.js +1 -1
  269. data/public/vendor/npm/webshim@1.15.8/js-webshim/dev/shims/moxie/js/moxie-html4.js +1 -1
  270. data/public/vendor/npm/webshim@1.15.8/js-webshim/dev/shims/moxie/js/moxie-swf.js +1 -1
  271. data/public/vendor/npm/webshim@1.15.8/js-webshim/dev/shims/sizzle.js +1 -1
  272. data/public/vendor/npm/webshim@1.15.8/js-webshim/minified/shims/es6.js +1 -1
  273. data/public/vendor/npm/webshim@1.15.8/src/shims/color-picker.js +1 -1
  274. data/public/vendor/npm/webshim@1.15.8/src/shims/combos/10.js +1 -1
  275. data/public/vendor/npm/webshim@1.15.8/src/shims/combos/11.js +1 -1
  276. data/public/vendor/npm/webshim@1.15.8/src/shims/combos/17.js +1 -1
  277. data/public/vendor/npm/webshim@1.15.8/src/shims/combos/5.js +1 -1
  278. data/public/vendor/npm/webshim@1.15.8/src/shims/combos/6.js +1 -1
  279. data/public/vendor/npm/webshim@1.15.8/src/shims/combos/9.js +1 -1
  280. data/public/vendor/npm/webshim@1.15.8/src/shims/es6.js +1 -1
  281. data/public/vendor/npm/webshim@1.15.8/src/shims/excanvas.js +1 -1
  282. data/public/vendor/npm/webshim@1.15.8/src/shims/form-number-date-ui.js +1 -1
  283. data/public/vendor/npm/webshim@1.15.8/src/shims/moxie/js/moxie-html4.js +1 -1
  284. data/public/vendor/npm/webshim@1.15.8/src/shims/moxie/js/moxie-swf.js +1 -1
  285. data/public/vendor/npm/webshim@1.15.8/src/shims/sizzle.js +1 -1
  286. data/public/vendor/npm/webshim@1.15.8/tests/dist/jquery.js +1 -1
  287. data/public/vendor/npm/webshim@1.15.8/tests/jquery/unit/core.js +1 -1
  288. data/public/vendor/npm/webshim@1.15.8/tests/jquery/unit/event.js +1388 -711
  289. data/public/vendor/npm/webshim@1.15.8/tests/qunit/qunit.js +1 -1
  290. data/public/vendor/npm/webshim@1.15.8/tests/test-ext/jquery-1-custom.js +1 -1
  291. data/public/vendor/npm/webshim@1.15.8/tests/test-ext/jquery-2-custom.js +1 -1
  292. data/public/vendor/npm/webshim@1.15.8/tests/test-ext/punycode.js +1 -1
  293. data/public/vendor/system-polyfills.js +865 -1
  294. data/views/blastn_options.erb +291 -0
  295. data/views/blastp_options.erb +288 -0
  296. data/views/blastx_options.erb +318 -0
  297. data/views/error.erb +12 -0
  298. data/views/layout.erb +2 -30
  299. data/views/report.erb +0 -8
  300. data/views/search.erb +16 -9
  301. data/views/tblastn_options.erb +266 -0
  302. data/views/tblastx_options.erb +291 -0
  303. metadata +320 -439
  304. data/public/vendor/github/jspm/nodelibs-buffer@0.1.0.js +0 -1
  305. data/public/vendor/github/jspm/nodelibs-module@0.1.0/index.js +0 -1
  306. data/public/vendor/github/jspm/nodelibs-module@0.1.0.js +0 -1
  307. data/public/vendor/github/jspm/nodelibs-process@0.1.1.js +0 -1
  308. data/public/vendor/npm/amdefine@1.0.0/LICENSE +0 -58
  309. data/public/vendor/npm/amdefine@1.0.0/README.md +0 -171
  310. data/public/vendor/npm/amdefine@1.0.0/amdefine.js +0 -200
  311. data/public/vendor/npm/amdefine@1.0.0/intercept.js +0 -24
  312. data/public/vendor/npm/amdefine@1.0.0/package.json +0 -16
  313. data/public/vendor/npm/amdefine@1.0.0.js +0 -1
  314. data/public/vendor/npm/base62@0.1.1/LICENSE +0 -20
  315. data/public/vendor/npm/base62@0.1.1/Readme.md +0 -30
  316. data/public/vendor/npm/base62@0.1.1/base62.js +0 -28
  317. data/public/vendor/npm/base62@0.1.1/package.json +0 -21
  318. data/public/vendor/npm/base62@0.1.1/test/test.js +0 -13
  319. data/public/vendor/npm/base62@0.1.1.js +0 -1
  320. data/public/vendor/npm/base64-js@0.0.8/lib/b64.js +0 -125
  321. data/public/vendor/npm/base64-js@0.0.8/package.json +0 -34
  322. data/public/vendor/npm/base64-js@0.0.8/test/convert.js +0 -39
  323. data/public/vendor/npm/base64-js@0.0.8/test/url-safe.js +0 -15
  324. data/public/vendor/npm/base64-js@0.0.8.js +0 -1
  325. data/public/vendor/npm/buffer@3.4.3/index.js +0 -1533
  326. data/public/vendor/npm/buffer@3.4.3/package.json +0 -67
  327. data/public/vendor/npm/buffer@3.4.3/test/_polyfill.js +0 -152
  328. data/public/vendor/npm/buffer@3.4.3/test/base64.js +0 -33
  329. data/public/vendor/npm/buffer@3.4.3/test/basic.js +0 -58
  330. data/public/vendor/npm/buffer@3.4.3/test/compare.js +0 -53
  331. data/public/vendor/npm/buffer@3.4.3/test/constructor.js +0 -132
  332. data/public/vendor/npm/buffer@3.4.3/test/deprecated.js +0 -21
  333. data/public/vendor/npm/buffer@3.4.3/test/from-string.js +0 -105
  334. data/public/vendor/npm/buffer@3.4.3/test/methods.js +0 -109
  335. data/public/vendor/npm/buffer@3.4.3/test/node/README.txt +0 -1
  336. data/public/vendor/npm/buffer@3.4.3/test/node/test-buffer-ascii.js +0 -20
  337. data/public/vendor/npm/buffer@3.4.3/test/node/test-buffer-bytelength.js +0 -38
  338. data/public/vendor/npm/buffer@3.4.3/test/node/test-buffer-concat.js +0 -26
  339. data/public/vendor/npm/buffer@3.4.3/test/node/test-buffer-indexof.js +0 -78
  340. data/public/vendor/npm/buffer@3.4.3/test/node/test-buffer-inspect.js +0 -31
  341. data/public/vendor/npm/buffer@3.4.3/test/node/test-buffer.js +0 -804
  342. data/public/vendor/npm/buffer@3.4.3/test/node-es6/README.txt +0 -1
  343. data/public/vendor/npm/buffer@3.4.3/test/node-es6/test-buffer-arraybuffer.js +0 -37
  344. data/public/vendor/npm/buffer@3.4.3/test/node-es6/test-buffer-iterator.js +0 -32
  345. data/public/vendor/npm/buffer@3.4.3/test/slice.js +0 -33
  346. data/public/vendor/npm/buffer@3.4.3/test/static.js +0 -32
  347. data/public/vendor/npm/buffer@3.4.3/test/to-string.js +0 -106
  348. data/public/vendor/npm/buffer@3.4.3/test/write.js +0 -90
  349. data/public/vendor/npm/buffer@3.4.3.js +0 -1
  350. data/public/vendor/npm/core-util-is@1.0.1/float.patch +0 -604
  351. data/public/vendor/npm/core-util-is@1.0.1/lib/util.js +0 -66
  352. data/public/vendor/npm/core-util-is@1.0.1/util.js +0 -66
  353. data/public/vendor/npm/core-util-is@1.0.1.js +0 -1
  354. data/public/vendor/npm/envify@3.4.0/README.md +0 -145
  355. data/public/vendor/npm/envify@3.4.0/bin/envify +0 -17
  356. data/public/vendor/npm/envify@3.4.0/custom.js +0 -33
  357. data/public/vendor/npm/envify@3.4.0/index.js +0 -4
  358. data/public/vendor/npm/envify@3.4.0/package.json +0 -35
  359. data/public/vendor/npm/envify@3.4.0/visitors.js +0 -33
  360. data/public/vendor/npm/envify@3.4.0.js +0 -1
  361. data/public/vendor/npm/esprima-fb@13001.1001.0-dev-harmony-fb/bin/esparse.js +0 -90
  362. data/public/vendor/npm/esprima-fb@13001.1001.0-dev-harmony-fb/bin/esvalidate.js +0 -145
  363. data/public/vendor/npm/esprima-fb@13001.1001.0-dev-harmony-fb/esprima.js +0 -6191
  364. data/public/vendor/npm/esprima-fb@13001.1001.0-dev-harmony-fb/package.json +0 -72
  365. data/public/vendor/npm/esprima-fb@13001.1001.0-dev-harmony-fb/test/compat.js +0 -167
  366. data/public/vendor/npm/esprima-fb@13001.1001.0-dev-harmony-fb/test/reflect.js +0 -421
  367. data/public/vendor/npm/esprima-fb@13001.1001.0-dev-harmony-fb/test/run.js +0 -34
  368. data/public/vendor/npm/esprima-fb@13001.1001.0-dev-harmony-fb/test/runner.js +0 -418
  369. data/public/vendor/npm/esprima-fb@13001.1001.0-dev-harmony-fb/test/test.js +0 -34730
  370. data/public/vendor/npm/esprima-fb@13001.1001.0-dev-harmony-fb.js +0 -1
  371. data/public/vendor/npm/ieee754@1.1.6/LICENSE +0 -56
  372. data/public/vendor/npm/ieee754@1.1.6/package.json +0 -34
  373. data/public/vendor/npm/ieee754@1.1.6/test/basic.js +0 -20
  374. data/public/vendor/npm/ieee754@1.1.6.js +0 -1
  375. data/public/vendor/npm/is-array@1.0.1/History.md +0 -11
  376. data/public/vendor/npm/is-array@1.0.1/Readme.md +0 -27
  377. data/public/vendor/npm/is-array@1.0.1/component.json +0 -13
  378. data/public/vendor/npm/is-array@1.0.1/index.js +0 -33
  379. data/public/vendor/npm/is-array@1.0.1/package.json +0 -10
  380. data/public/vendor/npm/is-array@1.0.1/test/test.html +0 -46
  381. data/public/vendor/npm/is-array@1.0.1.js +0 -1
  382. data/public/vendor/npm/jstransform@10.1.0/LICENSE +0 -201
  383. data/public/vendor/npm/jstransform@10.1.0/README.md +0 -98
  384. data/public/vendor/npm/jstransform@10.1.0/jestEnvironment.js +0 -3
  385. data/public/vendor/npm/jstransform@10.1.0/jestPreprocessor.js +0 -8
  386. data/public/vendor/npm/jstransform@10.1.0/package.json +0 -52
  387. data/public/vendor/npm/jstransform@10.1.0/polyfill/Object.es6.js +0 -54
  388. data/public/vendor/npm/jstransform@10.1.0/src/__tests__/jstransform-test.js +0 -246
  389. data/public/vendor/npm/jstransform@10.1.0/src/__tests__/jstransform-utils-test.js +0 -31
  390. data/public/vendor/npm/jstransform@10.1.0/src/docblock.js +0 -86
  391. data/public/vendor/npm/jstransform@10.1.0/src/jstransform.js +0 -180
  392. data/public/vendor/npm/jstransform@10.1.0/src/utils.js +0 -386
  393. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/es6-arrow-function-visitors-test.js +0 -57
  394. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/es6-call-spread-visitors-test.js +0 -46
  395. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/es6-class-visitors-test.js +0 -463
  396. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/es6-destructuring-visitors-test.js +0 -144
  397. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/es6-es7-object-integration-test.js +0 -40
  398. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/es6-object-concise-method-visitors-test.js +0 -47
  399. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/es6-object-short-notation-visitors-test.js +0 -33
  400. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/es6-rest-param-visitors-test.js +0 -119
  401. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/es6-template-visitors-test.js +0 -138
  402. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/es7-rest-property-helpers-test.js +0 -47
  403. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/es7-spread-property-visitors-test.js +0 -90
  404. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/gen/generate-type-syntax-test.js +0 -40
  405. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/gen/type-syntax-test.rec.js +0 -846
  406. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/reserved-words-test.js +0 -40
  407. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/type-alias-syntax-test.js +0 -34
  408. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/type-class-syntax-test.js +0 -105
  409. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/type-function-syntax-test.js +0 -126
  410. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/type-interface-syntax-test.js +0 -29
  411. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/type-object-method-syntax-test.js +0 -65
  412. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/type-pattern-syntax-test.js +0 -45
  413. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/type-syntax-test.js +0 -46
  414. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/type-variable-declaration-syntax-test.js +0 -102
  415. data/public/vendor/npm/jstransform@10.1.0/visitors/es6-arrow-function-visitors.js +0 -66
  416. data/public/vendor/npm/jstransform@10.1.0/visitors/es6-call-spread-visitors.js +0 -72
  417. data/public/vendor/npm/jstransform@10.1.0/visitors/es6-class-visitors.js +0 -316
  418. data/public/vendor/npm/jstransform@10.1.0/visitors/es6-destructuring-visitors.js +0 -135
  419. data/public/vendor/npm/jstransform@10.1.0/visitors/es6-object-concise-method-visitors.js +0 -28
  420. data/public/vendor/npm/jstransform@10.1.0/visitors/es6-object-short-notation-visitors.js +0 -12
  421. data/public/vendor/npm/jstransform@10.1.0/visitors/es6-rest-param-visitors.js +0 -45
  422. data/public/vendor/npm/jstransform@10.1.0/visitors/es6-template-visitors.js +0 -90
  423. data/public/vendor/npm/jstransform@10.1.0/visitors/es7-rest-property-helpers.js +0 -80
  424. data/public/vendor/npm/jstransform@10.1.0/visitors/es7-spread-property-visitors.js +0 -56
  425. data/public/vendor/npm/jstransform@10.1.0/visitors/reserved-words-helper.js +0 -74
  426. data/public/vendor/npm/jstransform@10.1.0/visitors/reserved-words-visitors.js +0 -30
  427. data/public/vendor/npm/jstransform@10.1.0/visitors/type-syntax.js +0 -118
  428. data/public/vendor/npm/jstransform@10.1.0.js +0 -1
  429. data/public/vendor/npm/process@0.10.1/browser.js +0 -58
  430. data/public/vendor/npm/process@0.10.1.js +0 -1
  431. data/public/vendor/npm/qs@2.4.1/test/stringify.js +0 -162
  432. data/public/vendor/npm/react@0.13.3/README.md +0 -20
  433. data/public/vendor/npm/react@0.13.3/addons.js +0 -2
  434. data/public/vendor/npm/react@0.13.3/dist/JSXTransformer.js +0 -11346
  435. data/public/vendor/npm/react@0.13.3/dist/react-with-addons.js +0 -10483
  436. data/public/vendor/npm/react@0.13.3/dist/react-with-addons.min.js +0 -7297
  437. data/public/vendor/npm/react@0.13.3/dist/react.js +0 -9468
  438. data/public/vendor/npm/react@0.13.3/dist/react.min.js +0 -6764
  439. data/public/vendor/npm/react@0.13.3/lib/AutoFocusMixin.js +0 -9
  440. data/public/vendor/npm/react@0.13.3/lib/BeforeInputEventPlugin.js +0 -197
  441. data/public/vendor/npm/react@0.13.3/lib/CSSCore.js +0 -39
  442. data/public/vendor/npm/react@0.13.3/lib/CSSProperty.js +0 -123
  443. data/public/vendor/npm/react@0.13.3/lib/CSSPropertyOperations.js +0 -103
  444. data/public/vendor/npm/react@0.13.3/lib/CallbackQueue.js +0 -43
  445. data/public/vendor/npm/react@0.13.3/lib/ChangeEventPlugin.js +0 -174
  446. data/public/vendor/npm/react@0.13.3/lib/ClientReactRootIndex.js +0 -23
  447. data/public/vendor/npm/react@0.13.3/lib/DOMChildrenOperations.js +0 -57
  448. data/public/vendor/npm/react@0.13.3/lib/DOMProperty.js +0 -96
  449. data/public/vendor/npm/react@0.13.3/lib/DOMPropertyOperations.js +0 -99
  450. data/public/vendor/npm/react@0.13.3/lib/Danger.js +0 -67
  451. data/public/vendor/npm/react@0.13.3/lib/DefaultEventPluginOrder.js +0 -5
  452. data/public/vendor/npm/react@0.13.3/lib/EnterLeaveEventPlugin.js +0 -69
  453. data/public/vendor/npm/react@0.13.3/lib/EventConstants.js +0 -55
  454. data/public/vendor/npm/react@0.13.3/lib/EventListener.js +0 -34
  455. data/public/vendor/npm/react@0.13.3/lib/EventPluginHub.js +0 -103
  456. data/public/vendor/npm/react@0.13.3/lib/EventPluginRegistry.js +0 -115
  457. data/public/vendor/npm/react@0.13.3/lib/EventPluginUtils.js +0 -121
  458. data/public/vendor/npm/react@0.13.3/lib/EventPropagators.js +0 -62
  459. data/public/vendor/npm/react@0.13.3/lib/ExecutionEnvironment.js +0 -42
  460. data/public/vendor/npm/react@0.13.3/lib/FallbackCompositionState.js +0 -45
  461. data/public/vendor/npm/react@0.13.3/lib/HTMLDOMPropertyConfig.js +0 -155
  462. data/public/vendor/npm/react@0.13.3/lib/LinkedStateMixin.js +0 -8
  463. data/public/vendor/npm/react@0.13.3/lib/LinkedValueUtils.js +0 -74
  464. data/public/vendor/npm/react@0.13.3/lib/LocalEventTrapMixin.js +0 -26
  465. data/public/vendor/npm/react@0.13.3/lib/MobileSafariClickEventPlugin.js +0 -17
  466. data/public/vendor/npm/react@0.13.3/lib/Object.assign.js +0 -47
  467. data/public/vendor/npm/react@0.13.3/lib/PooledClass.js +0 -75
  468. data/public/vendor/npm/react@0.13.3/lib/React.js +0 -93
  469. data/public/vendor/npm/react@0.13.3/lib/ReactBrowserComponentMixin.js +0 -7
  470. data/public/vendor/npm/react@0.13.3/lib/ReactBrowserEventEmitter.js +0 -136
  471. data/public/vendor/npm/react@0.13.3/lib/ReactCSSTransitionGroup.js +0 -34
  472. data/public/vendor/npm/react@0.13.3/lib/ReactCSSTransitionGroupChild.js +0 -92
  473. data/public/vendor/npm/react@0.13.3/lib/ReactChildReconciler.js +0 -57
  474. data/public/vendor/npm/react@0.13.3/lib/ReactChildren.js +0 -67
  475. data/public/vendor/npm/react@0.13.3/lib/ReactClass.js +0 -338
  476. data/public/vendor/npm/react@0.13.3/lib/ReactComponent.js +0 -50
  477. data/public/vendor/npm/react@0.13.3/lib/ReactComponentBrowserEnvironment.js +0 -14
  478. data/public/vendor/npm/react@0.13.3/lib/ReactComponentEnvironment.js +0 -19
  479. data/public/vendor/npm/react@0.13.3/lib/ReactComponentWithPureRenderMixin.js +0 -7
  480. data/public/vendor/npm/react@0.13.3/lib/ReactCompositeComponent.js +0 -374
  481. data/public/vendor/npm/react@0.13.3/lib/ReactContext.js +0 -27
  482. data/public/vendor/npm/react@0.13.3/lib/ReactCurrentOwner.js +0 -32
  483. data/public/vendor/npm/react@0.13.3/lib/ReactDOM.js +0 -146
  484. data/public/vendor/npm/react@0.13.3/lib/ReactDOMButton.js +0 -35
  485. data/public/vendor/npm/react@0.13.3/lib/ReactDOMComponent.js +0 -267
  486. data/public/vendor/npm/react@0.13.3/lib/ReactDOMForm.js +0 -21
  487. data/public/vendor/npm/react@0.13.3/lib/ReactDOMIDOperations.js +0 -63
  488. data/public/vendor/npm/react@0.13.3/lib/ReactDOMIframe.js +0 -20
  489. data/public/vendor/npm/react@0.13.3/lib/ReactDOMImg.js +0 -21
  490. data/public/vendor/npm/react@0.13.3/lib/ReactDOMInput.js +0 -94
  491. data/public/vendor/npm/react@0.13.3/lib/ReactDOMOption.js +0 -23
  492. data/public/vendor/npm/react@0.13.3/lib/ReactDOMSelect.js +0 -112
  493. data/public/vendor/npm/react@0.13.3/lib/ReactDOMSelection.js +0 -103
  494. data/public/vendor/npm/react@0.13.3/lib/ReactDOMTextComponent.js +0 -38
  495. data/public/vendor/npm/react@0.13.3/lib/ReactDOMTextarea.js +0 -70
  496. data/public/vendor/npm/react@0.13.3/lib/ReactDefaultBatchingStrategy.js +0 -37
  497. data/public/vendor/npm/react@0.13.3/lib/ReactDefaultInjection.js +0 -93
  498. data/public/vendor/npm/react@0.13.3/lib/ReactDefaultPerf.js +0 -183
  499. data/public/vendor/npm/react@0.13.3/lib/ReactDefaultPerfAnalysis.js +0 -145
  500. data/public/vendor/npm/react@0.13.3/lib/ReactElement.js +0 -151
  501. data/public/vendor/npm/react@0.13.3/lib/ReactElementValidator.js +0 -218
  502. data/public/vendor/npm/react@0.13.3/lib/ReactEmptyComponent.js +0 -47
  503. data/public/vendor/npm/react@0.13.3/lib/ReactErrorUtils.js +0 -30
  504. data/public/vendor/npm/react@0.13.3/lib/ReactEventEmitterMixin.js +0 -12
  505. data/public/vendor/npm/react@0.13.3/lib/ReactEventListener.js +0 -93
  506. data/public/vendor/npm/react@0.13.3/lib/ReactFragment.js +0 -110
  507. data/public/vendor/npm/react@0.13.3/lib/ReactInjection.js +0 -27
  508. data/public/vendor/npm/react@0.13.3/lib/ReactInputSelection.js +0 -75
  509. data/public/vendor/npm/react@0.13.3/lib/ReactInstanceHandles.js +0 -113
  510. data/public/vendor/npm/react@0.13.3/lib/ReactInstanceMap.js +0 -47
  511. data/public/vendor/npm/react@0.13.3/lib/ReactLifeCycle.js +0 -9
  512. data/public/vendor/npm/react@0.13.3/lib/ReactLink.js +0 -16
  513. data/public/vendor/npm/react@0.13.3/lib/ReactMarkupChecksum.js +0 -17
  514. data/public/vendor/npm/react@0.13.3/lib/ReactMount.js +0 -347
  515. data/public/vendor/npm/react@0.13.3/lib/ReactMultiChild.js +0 -190
  516. data/public/vendor/npm/react@0.13.3/lib/ReactMultiChildUpdateTypes.js +0 -10
  517. data/public/vendor/npm/react@0.13.3/lib/ReactNativeComponent.js +0 -53
  518. data/public/vendor/npm/react@0.13.3/lib/ReactOwner.js +0 -21
  519. data/public/vendor/npm/react@0.13.3/lib/ReactPerf.js +0 -42
  520. data/public/vendor/npm/react@0.13.3/lib/ReactPropTransferer.js +0 -40
  521. data/public/vendor/npm/react@0.13.3/lib/ReactPropTypeLocationNames.js +0 -13
  522. data/public/vendor/npm/react@0.13.3/lib/ReactPropTypeLocations.js +0 -9
  523. data/public/vendor/npm/react@0.13.3/lib/ReactPropTypes.js +0 -225
  524. data/public/vendor/npm/react@0.13.3/lib/ReactPutListenerQueue.js +0 -31
  525. data/public/vendor/npm/react@0.13.3/lib/ReactReconcileTransaction.js +0 -66
  526. data/public/vendor/npm/react@0.13.3/lib/ReactReconciler.js +0 -44
  527. data/public/vendor/npm/react@0.13.3/lib/ReactRef.js +0 -36
  528. data/public/vendor/npm/react@0.13.3/lib/ReactRootIndex.js +0 -29
  529. data/public/vendor/npm/react@0.13.3/lib/ReactServerRendering.js +0 -44
  530. data/public/vendor/npm/react@0.13.3/lib/ReactServerRenderingTransaction.js +0 -47
  531. data/public/vendor/npm/react@0.13.3/lib/ReactStateSetters.js +0 -104
  532. data/public/vendor/npm/react@0.13.3/lib/ReactTestUtils.js +0 -249
  533. data/public/vendor/npm/react@0.13.3/lib/ReactTransitionChildMapping.js +0 -53
  534. data/public/vendor/npm/react@0.13.3/lib/ReactTransitionEvents.js +0 -68
  535. data/public/vendor/npm/react@0.13.3/lib/ReactTransitionGroup.js +0 -140
  536. data/public/vendor/npm/react@0.13.3/lib/ReactUpdateQueue.js +0 -107
  537. data/public/vendor/npm/react@0.13.3/lib/ReactUpdates.js +0 -139
  538. data/public/vendor/npm/react@0.13.3/lib/ReactWithAddons.js +0 -30
  539. data/public/vendor/npm/react@0.13.3/lib/SVGDOMPropertyConfig.js +0 -76
  540. data/public/vendor/npm/react@0.13.3/lib/SelectEventPlugin.js +0 -91
  541. data/public/vendor/npm/react@0.13.3/lib/ServerReactRootIndex.js +0 -29
  542. data/public/vendor/npm/react@0.13.3/lib/SimpleEventPlugin.js +0 -287
  543. data/public/vendor/npm/react@0.13.3/lib/SyntheticClipboardEvent.js +0 -11
  544. data/public/vendor/npm/react@0.13.3/lib/SyntheticCompositionEvent.js +0 -9
  545. data/public/vendor/npm/react@0.13.3/lib/SyntheticDragEvent.js +0 -9
  546. data/public/vendor/npm/react@0.13.3/lib/SyntheticEvent.js +0 -90
  547. data/public/vendor/npm/react@0.13.3/lib/SyntheticFocusEvent.js +0 -9
  548. data/public/vendor/npm/react@0.13.3/lib/SyntheticInputEvent.js +0 -9
  549. data/public/vendor/npm/react@0.13.3/lib/SyntheticKeyboardEvent.js +0 -43
  550. data/public/vendor/npm/react@0.13.3/lib/SyntheticMouseEvent.js +0 -38
  551. data/public/vendor/npm/react@0.13.3/lib/SyntheticTouchEvent.js +0 -19
  552. data/public/vendor/npm/react@0.13.3/lib/SyntheticUIEvent.js +0 -29
  553. data/public/vendor/npm/react@0.13.3/lib/SyntheticWheelEvent.js +0 -18
  554. data/public/vendor/npm/react@0.13.3/lib/Transaction.js +0 -90
  555. data/public/vendor/npm/react@0.13.3/lib/ViewportMetrics.js +0 -27
  556. data/public/vendor/npm/react@0.13.3/lib/accumulateInto.js +0 -26
  557. data/public/vendor/npm/react@0.13.3/lib/adler32.js +0 -32
  558. data/public/vendor/npm/react@0.13.3/lib/camelize.js +0 -30
  559. data/public/vendor/npm/react@0.13.3/lib/camelizeStyleName.js +0 -8
  560. data/public/vendor/npm/react@0.13.3/lib/cloneWithProps.js +0 -20
  561. data/public/vendor/npm/react@0.13.3/lib/containsNode.js +0 -20
  562. data/public/vendor/npm/react@0.13.3/lib/createArrayFromMixed.js +0 -15
  563. data/public/vendor/npm/react@0.13.3/lib/createFullPageComponent.js +0 -22
  564. data/public/vendor/npm/react@0.13.3/lib/createNodesFromMarkup.js +0 -39
  565. data/public/vendor/npm/react@0.13.3/lib/cx.js +0 -20
  566. data/public/vendor/npm/react@0.13.3/lib/dangerousStyleValue.js +0 -19
  567. data/public/vendor/npm/react@0.13.3/lib/emptyFunction.js +0 -32
  568. data/public/vendor/npm/react@0.13.3/lib/emptyObject.js +0 -9
  569. data/public/vendor/npm/react@0.13.3/lib/escapeTextContentForBrowser.js +0 -38
  570. data/public/vendor/npm/react@0.13.3/lib/findDOMNode.js +0 -31
  571. data/public/vendor/npm/react@0.13.3/lib/flattenChildren.js +0 -25
  572. data/public/vendor/npm/react@0.13.3/lib/focusNode.js +0 -27
  573. data/public/vendor/npm/react@0.13.3/lib/forEachAccumulated.js +0 -29
  574. data/public/vendor/npm/react@0.13.3/lib/getActiveElement.js +0 -27
  575. data/public/vendor/npm/react@0.13.3/lib/getEventCharCode.js +0 -50
  576. data/public/vendor/npm/react@0.13.3/lib/getEventKey.js +0 -72
  577. data/public/vendor/npm/react@0.13.3/lib/getEventModifierState.js +0 -45
  578. data/public/vendor/npm/react@0.13.3/lib/getEventTarget.js +0 -29
  579. data/public/vendor/npm/react@0.13.3/lib/getIteratorFn.js +0 -42
  580. data/public/vendor/npm/react@0.13.3/lib/getMarkupWrap.js +0 -73
  581. data/public/vendor/npm/react@0.13.3/lib/getNodeForCharacterOffset.js +0 -73
  582. data/public/vendor/npm/react@0.13.3/lib/getReactRootElementInContainer.js +0 -33
  583. data/public/vendor/npm/react@0.13.3/lib/getTextContentAccessor.js +0 -11
  584. data/public/vendor/npm/react@0.13.3/lib/getUnboundedScrollPosition.js +0 -38
  585. data/public/vendor/npm/react@0.13.3/lib/hyphenate.js +0 -31
  586. data/public/vendor/npm/react@0.13.3/lib/hyphenateStyleName.js +0 -8
  587. data/public/vendor/npm/react@0.13.3/lib/instantiateReactComponent.js +0 -55
  588. data/public/vendor/npm/react@0.13.3/lib/invariant.js +0 -26
  589. data/public/vendor/npm/react@0.13.3/lib/isEventSupported.js +0 -24
  590. data/public/vendor/npm/react@0.13.3/lib/isNode.js +0 -25
  591. data/public/vendor/npm/react@0.13.3/lib/isTextInputElement.js +0 -41
  592. data/public/vendor/npm/react@0.13.3/lib/isTextNode.js +0 -6
  593. data/public/vendor/npm/react@0.13.3/lib/joinClasses.js +0 -39
  594. data/public/vendor/npm/react@0.13.3/lib/keyMirror.js +0 -18
  595. data/public/vendor/npm/react@0.13.3/lib/keyOf.js +0 -34
  596. data/public/vendor/npm/react@0.13.3/lib/mapObject.js +0 -51
  597. data/public/vendor/npm/react@0.13.3/lib/memoizeStringOnly.js +0 -31
  598. data/public/vendor/npm/react@0.13.3/lib/onlyChild.js +0 -11
  599. data/public/vendor/npm/react@0.13.3/lib/performance.js +0 -8
  600. data/public/vendor/npm/react@0.13.3/lib/performanceNow.js +0 -7
  601. data/public/vendor/npm/react@0.13.3/lib/quoteAttributeValueForBrowser.js +0 -7
  602. data/public/vendor/npm/react@0.13.3/lib/setInnerHTML.js +0 -40
  603. data/public/vendor/npm/react@0.13.3/lib/setTextContent.js +0 -16
  604. data/public/vendor/npm/react@0.13.3/lib/shallowEqual.js +0 -42
  605. data/public/vendor/npm/react@0.13.3/lib/shouldUpdateReactComponent.js +0 -51
  606. data/public/vendor/npm/react@0.13.3/lib/toArray.js +0 -21
  607. data/public/vendor/npm/react@0.13.3/lib/traverseAllChildren.js +0 -104
  608. data/public/vendor/npm/react@0.13.3/lib/update.js +0 -78
  609. data/public/vendor/npm/react@0.13.3/lib/warning.js +0 -34
  610. data/public/vendor/npm/react@0.13.3/package.json +0 -34
  611. data/public/vendor/npm/react@0.13.3/react.js +0 -2
  612. data/public/vendor/npm/react@0.13.3.js +0 -1
  613. data/public/vendor/npm/readable-stream@1.1.13/duplex.js +0 -2
  614. data/public/vendor/npm/readable-stream@1.1.13/passthrough.js +0 -2
  615. data/public/vendor/npm/readable-stream@1.1.13/readable.js +0 -8
  616. data/public/vendor/npm/readable-stream@1.1.13/transform.js +0 -2
  617. data/public/vendor/npm/readable-stream@1.1.13/writable.js +0 -2
  618. data/public/vendor/npm/readable-stream@1.1.13.js +0 -1
  619. data/public/vendor/npm/source-map@0.1.31/CHANGELOG.md +0 -112
  620. data/public/vendor/npm/source-map@0.1.31/LICENSE +0 -28
  621. data/public/vendor/npm/source-map@0.1.31/Makefile.dryice.js +0 -89
  622. data/public/vendor/npm/source-map@0.1.31/README.md +0 -434
  623. data/public/vendor/npm/source-map@0.1.31/build/assert-shim.js +0 -58
  624. data/public/vendor/npm/source-map@0.1.31/build/mini-require.js +0 -154
  625. data/public/vendor/npm/source-map@0.1.31/build/prefix-source-map.jsm +0 -20
  626. data/public/vendor/npm/source-map@0.1.31/build/prefix-utils.jsm +0 -18
  627. data/public/vendor/npm/source-map@0.1.31/build/suffix-browser.js +0 -8
  628. data/public/vendor/npm/source-map@0.1.31/build/suffix-source-map.jsm +0 -6
  629. data/public/vendor/npm/source-map@0.1.31/build/suffix-utils.jsm +0 -21
  630. data/public/vendor/npm/source-map@0.1.31/build/test-prefix.js +0 -10
  631. data/public/vendor/npm/source-map@0.1.31/build/test-suffix.js +0 -5
  632. data/public/vendor/npm/source-map@0.1.31/lib/source-map/array-set.js +0 -49
  633. data/public/vendor/npm/source-map@0.1.31/lib/source-map/base64-vlq.js +0 -56
  634. data/public/vendor/npm/source-map@0.1.31/lib/source-map/base64.js +0 -44
  635. data/public/vendor/npm/source-map@0.1.31/lib/source-map/binary-search.js +0 -83
  636. data/public/vendor/npm/source-map@0.1.31/lib/source-map/source-map-consumer.js +0 -238
  637. data/public/vendor/npm/source-map@0.1.31/lib/source-map/source-map-generator.js +0 -231
  638. data/public/vendor/npm/source-map@0.1.31/lib/source-map/source-node.js +0 -234
  639. data/public/vendor/npm/source-map@0.1.31/lib/source-map/util.js +0 -207
  640. data/public/vendor/npm/source-map@0.1.31/lib/source-map.js +0 -4
  641. data/public/vendor/npm/source-map@0.1.31/package.json +0 -52
  642. data/public/vendor/npm/source-map@0.1.31/test/run-tests.js +0 -50
  643. data/public/vendor/npm/source-map@0.1.31/test/source-map/test-api.js +0 -19
  644. data/public/vendor/npm/source-map@0.1.31/test/source-map/test-array-set.js +0 -84
  645. data/public/vendor/npm/source-map@0.1.31/test/source-map/test-base64-vlq.js +0 -17
  646. data/public/vendor/npm/source-map@0.1.31/test/source-map/test-base64.js +0 -26
  647. data/public/vendor/npm/source-map@0.1.31/test/source-map/test-binary-search.js +0 -37
  648. data/public/vendor/npm/source-map@0.1.31/test/source-map/test-dog-fooding.js +0 -76
  649. data/public/vendor/npm/source-map@0.1.31/test/source-map/test-source-map-consumer.js +0 -426
  650. data/public/vendor/npm/source-map@0.1.31/test/source-map/test-source-map-generator.js +0 -480
  651. data/public/vendor/npm/source-map@0.1.31/test/source-map/test-source-node.js +0 -307
  652. data/public/vendor/npm/source-map@0.1.31/test/source-map/util.js +0 -84
  653. data/public/vendor/npm/source-map@0.1.31.js +0 -1
  654. data/public/vendor/npm/through@2.3.8/LICENSE.APACHE2 +0 -15
  655. data/public/vendor/npm/through@2.3.8/LICENSE.MIT +0 -24
  656. data/public/vendor/npm/through@2.3.8/index.js +0 -93
  657. data/public/vendor/npm/through@2.3.8/package.json +0 -36
  658. data/public/vendor/npm/through@2.3.8/readme.markdown +0 -64
  659. data/public/vendor/npm/through@2.3.8/test/async.js +0 -26
  660. data/public/vendor/npm/through@2.3.8/test/auto-destroy.js +0 -26
  661. data/public/vendor/npm/through@2.3.8/test/buffering.js +0 -57
  662. data/public/vendor/npm/through@2.3.8/test/end.js +0 -37
  663. data/public/vendor/npm/through@2.3.8/test/index.js +0 -98
  664. data/public/vendor/npm/through@2.3.8/test.js +0 -2
  665. data/public/vendor/npm/through@2.3.8.js +0 -1
  666. data/views/_options.erb +0 -156
  667. /data/public/vendor/github/jspm/{nodelibs-buffer@0.1.0 → nodelibs-buffer@0.1.1}/index.js +0 -0
  668. /data/public/vendor/github/jspm/{nodelibs-process@0.1.1 → nodelibs-process@0.1.2}/index.js +0 -0
  669. /data/public/vendor/npm/{readable-stream@1.1.13 → assert@1.5.0}/LICENSE +0 -0
  670. /data/public/vendor/npm/{buffer@3.4.3 → buffer@5.7.1}/LICENSE +0 -0
  671. /data/public/vendor/npm/{core-util-is@1.0.1 → core-util-is@1.0.3}/README.md +0 -0
  672. /data/public/vendor/npm/{process@0.10.1 → process@0.11.10}/LICENSE +0 -0
  673. /data/public/vendor/npm/{process@0.10.1 → process@0.11.10}/index.js +0 -0
  674. /data/public/vendor/npm/{readable-stream@1.1.13 → readable-stream@1.1.14}/README.md +0 -0
  675. /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
+ );