sequenceserver 2.0.0 → 2.1.0

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