sequenceserver 2.0.0.rc8 → 2.1.0

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

Potentially problematic release.


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

Files changed (758) hide show
  1. checksums.yaml +4 -4
  2. data/bin/sequenceserver +22 -30
  3. data/lib/sequenceserver/api_errors.rb +29 -3
  4. data/lib/sequenceserver/blast/constants.rb +1 -1
  5. data/lib/sequenceserver/blast/hit.rb +5 -16
  6. data/lib/sequenceserver/blast/job.rb +49 -24
  7. data/lib/sequenceserver/blast/report.rb +38 -30
  8. data/lib/sequenceserver/config.rb +52 -27
  9. data/lib/sequenceserver/database.rb +69 -9
  10. data/lib/sequenceserver/job.rb +14 -4
  11. data/lib/sequenceserver/job_remover.rb +25 -29
  12. data/lib/sequenceserver/makeblastdb.rb +40 -45
  13. data/lib/sequenceserver/refinements.rb +15 -0
  14. data/lib/sequenceserver/routes.rb +70 -4
  15. data/lib/sequenceserver/sequence.rb +8 -7
  16. data/lib/sequenceserver/sys.rb +2 -2
  17. data/lib/sequenceserver/version.rb +1 -1
  18. data/lib/sequenceserver/zip_file_generator.rb +56 -0
  19. data/lib/sequenceserver.rb +16 -11
  20. data/public/config.js +62 -55
  21. data/public/css/fonts.css +23 -22
  22. data/public/css/grapher.css +598 -594
  23. data/public/css/sequenceserver.css +130 -27
  24. data/public/css/sequenceserver.min.css +3 -3
  25. data/public/js/alignment_exporter.js +30 -22
  26. data/public/js/circos.js +370 -234
  27. data/public/js/cloud_share_modal.js +216 -0
  28. data/public/js/databases.js +144 -0
  29. data/public/js/databases_tree.js +144 -0
  30. data/public/js/dnd.js +164 -0
  31. data/public/js/download_fasta.js +1 -1
  32. data/public/js/error_modal.js +4 -11
  33. data/public/js/exporter.js +7 -3
  34. data/public/js/form.js +260 -0
  35. data/public/js/grapher.js +113 -106
  36. data/public/js/hit.js +84 -67
  37. data/public/js/hits_overview.js +3 -3
  38. data/public/js/hsp.js +343 -288
  39. data/public/js/jquery_world.js +4 -4
  40. data/public/js/length_distribution.js +5 -5
  41. data/public/js/mailto.js +36 -0
  42. data/public/js/options.js +84 -0
  43. data/public/js/query.js +321 -64
  44. data/public/js/report.js +322 -288
  45. data/public/js/report_root.js +75 -0
  46. data/public/js/search.js +28 -992
  47. data/public/js/search_button.js +195 -0
  48. data/public/js/sequence.js +2409 -2411
  49. data/public/js/sequence_modal.js +152 -159
  50. data/public/js/share_url.js +23 -0
  51. data/public/js/sidebar.js +265 -86
  52. data/public/js/svgExporter.js +12 -12
  53. data/public/js/tests/database.spec.js +60 -0
  54. data/public/js/tests/mock_data/databases.json +91 -0
  55. data/public/js/tests/mock_data/long_response.json +269 -0
  56. data/public/js/tests/mock_data/short_response.json +2240 -0
  57. data/public/js/tests/report.spec.js +99 -0
  58. data/public/js/tests/search_button.spec.js +14 -0
  59. data/public/js/tests/search_query.spec.js +41 -0
  60. data/public/js/visualisation_helpers.js +4 -5
  61. data/public/packages/circosJS@1.7.0.js +1640 -0
  62. data/public/packages/jquery-ui@1.11.4.js +16624 -0
  63. data/public/sequenceserver-report.min.js +2425 -19
  64. data/public/sequenceserver-search.min.js +2337 -11
  65. data/public/vendor/github/jspm/nodelibs-assert@0.1.0/index.js +2 -0
  66. data/public/vendor/github/jspm/{nodelibs-buffer@0.1.0 → nodelibs-assert@0.1.0}/package.json +1 -1
  67. data/public/vendor/github/jspm/nodelibs-assert@0.1.0.js +1 -0
  68. data/public/vendor/github/jspm/nodelibs-buffer@0.1.1/package.json +6 -0
  69. data/public/vendor/github/jspm/nodelibs-buffer@0.1.1.js +1 -0
  70. data/public/vendor/github/jspm/{nodelibs-process@0.1.1 → nodelibs-process@0.1.2}/package.json +2 -2
  71. data/public/vendor/github/jspm/nodelibs-process@0.1.2.js +1 -0
  72. data/public/vendor/github/jspm/nodelibs-vm@0.1.0/index.js +2 -0
  73. data/public/vendor/github/jspm/nodelibs-vm@0.1.0/package.json +6 -0
  74. data/public/vendor/github/jspm/nodelibs-vm@0.1.0.js +1 -0
  75. data/public/vendor/github/vakata/jstree@3.3.8/LICENSE-MIT +22 -0
  76. data/public/vendor/github/vakata/jstree@3.3.8/README.md +663 -0
  77. data/public/vendor/github/vakata/jstree@3.3.8/bower.json +33 -0
  78. data/public/vendor/github/vakata/jstree@3.3.8/component.json +28 -0
  79. data/public/vendor/github/vakata/jstree@3.3.8/composer.json +46 -0
  80. data/public/vendor/github/vakata/jstree@3.3.8/demo/README.md +2 -0
  81. data/public/vendor/github/vakata/jstree@3.3.8/demo/basic/index.html +146 -0
  82. data/public/vendor/github/vakata/jstree@3.3.8/demo/basic/root.json +1 -0
  83. data/public/vendor/github/vakata/jstree@3.3.8/dist/jstree.js +8612 -0
  84. data/public/vendor/github/vakata/jstree@3.3.8/dist/jstree.min.js +6 -0
  85. data/public/vendor/github/vakata/jstree@3.3.8/dist/themes/default/32px.png +0 -0
  86. data/public/vendor/github/vakata/jstree@3.3.8/dist/themes/default/40px.png +0 -0
  87. data/public/vendor/github/vakata/jstree@3.3.8/dist/themes/default/style.css +1102 -0
  88. data/public/vendor/github/vakata/jstree@3.3.8/dist/themes/default/style.min.css +1 -0
  89. data/public/vendor/github/vakata/jstree@3.3.8/dist/themes/default/throbber.gif +0 -0
  90. data/public/vendor/github/vakata/jstree@3.3.8/dist/themes/default-dark/32px.png +0 -0
  91. data/public/vendor/github/vakata/jstree@3.3.8/dist/themes/default-dark/40px.png +0 -0
  92. data/public/vendor/github/vakata/jstree@3.3.8/dist/themes/default-dark/style.css +1146 -0
  93. data/public/vendor/github/vakata/jstree@3.3.8/dist/themes/default-dark/style.min.css +1 -0
  94. data/public/vendor/github/vakata/jstree@3.3.8/dist/themes/default-dark/throbber.gif +0 -0
  95. data/public/vendor/github/vakata/jstree@3.3.8/gruntfile.js +242 -0
  96. data/public/vendor/github/vakata/jstree@3.3.8/jstree.jquery.json +28 -0
  97. data/public/vendor/github/vakata/jstree@3.3.8/package.json +58 -0
  98. data/public/vendor/github/vakata/jstree@3.3.8/src/intro.js +14 -0
  99. data/public/vendor/github/vakata/jstree@3.3.8/src/jstree.changed.js +69 -0
  100. data/public/vendor/github/vakata/jstree@3.3.8/src/jstree.checkbox.js +976 -0
  101. data/public/vendor/github/vakata/jstree@3.3.8/src/jstree.conditionalselect.js +38 -0
  102. data/public/vendor/github/vakata/jstree@3.3.8/src/jstree.contextmenu.js +661 -0
  103. data/public/vendor/github/vakata/jstree@3.3.8/src/jstree.dnd.js +669 -0
  104. data/public/vendor/github/vakata/jstree@3.3.8/src/jstree.js +4931 -0
  105. data/public/vendor/github/vakata/jstree@3.3.8/src/jstree.massload.js +137 -0
  106. data/public/vendor/github/vakata/jstree@3.3.8/src/jstree.search.js +421 -0
  107. data/public/vendor/github/vakata/jstree@3.3.8/src/jstree.sort.js +74 -0
  108. data/public/vendor/github/vakata/jstree@3.3.8/src/jstree.state.js +138 -0
  109. data/public/vendor/github/vakata/jstree@3.3.8/src/jstree.types.js +372 -0
  110. data/public/vendor/github/vakata/jstree@3.3.8/src/jstree.unique.js +164 -0
  111. data/public/vendor/github/vakata/jstree@3.3.8/src/jstree.wholerow.js +122 -0
  112. data/public/vendor/github/vakata/jstree@3.3.8/src/misc.js +656 -0
  113. data/public/vendor/github/vakata/jstree@3.3.8/src/outro.js +1 -0
  114. data/public/vendor/github/vakata/jstree@3.3.8/src/sample.js +93 -0
  115. data/public/vendor/github/vakata/jstree@3.3.8/src/themes/base.less +93 -0
  116. data/public/vendor/github/vakata/jstree@3.3.8/src/themes/default/32px.png +0 -0
  117. data/public/vendor/github/vakata/jstree@3.3.8/src/themes/default/40px.png +0 -0
  118. data/public/vendor/github/vakata/jstree@3.3.8/src/themes/default/style.css +1102 -0
  119. data/public/vendor/github/vakata/jstree@3.3.8/src/themes/default/style.less +22 -0
  120. data/public/vendor/github/vakata/jstree@3.3.8/src/themes/default/throbber.gif +0 -0
  121. data/public/vendor/github/vakata/jstree@3.3.8/src/themes/default-dark/32px.png +0 -0
  122. data/public/vendor/github/vakata/jstree@3.3.8/src/themes/default-dark/40px.png +0 -0
  123. data/public/vendor/github/vakata/jstree@3.3.8/src/themes/default-dark/style.css +1146 -0
  124. data/public/vendor/github/vakata/jstree@3.3.8/src/themes/default-dark/style.less +50 -0
  125. data/public/vendor/github/vakata/jstree@3.3.8/src/themes/default-dark/throbber.gif +0 -0
  126. data/public/vendor/github/vakata/jstree@3.3.8/src/themes/main.less +77 -0
  127. data/public/vendor/github/vakata/jstree@3.3.8/src/themes/mixins.less +104 -0
  128. data/public/vendor/github/vakata/jstree@3.3.8/src/themes/responsive.less +67 -0
  129. data/public/vendor/github/vakata/jstree@3.3.8/src/vakata-jstree.js +38 -0
  130. data/public/vendor/github/vakata/jstree@3.3.8/test/unit/index.html +16 -0
  131. data/public/vendor/github/vakata/jstree@3.3.8/test/unit/libs/qunit.css +244 -0
  132. data/public/vendor/github/vakata/jstree@3.3.8/test/unit/libs/qunit.js +2212 -0
  133. data/public/vendor/github/vakata/jstree@3.3.8/test/unit/test.js +11 -0
  134. data/public/vendor/github/vakata/jstree@3.3.8/test/visual/desktop/index.html +44 -0
  135. data/public/vendor/github/vakata/jstree@3.3.8/test/visual/mobile/index.html +42 -0
  136. data/public/vendor/github/vakata/jstree@3.3.8/test/visual/screenshots/desktop/desktop.png +0 -0
  137. data/public/vendor/github/vakata/jstree@3.3.8/test/visual/screenshots/desktop/home.png +0 -0
  138. data/public/vendor/github/vakata/jstree@3.3.8/test/visual/screenshots/mobile/home.png +0 -0
  139. data/public/vendor/github/vakata/jstree@3.3.8/test/visual/screenshots/mobile/mobile.png +0 -0
  140. data/public/vendor/github/vakata/jstree@3.3.8.js +3 -0
  141. data/public/vendor/npm/assert@1.5.0/CHANGELOG.md +8 -0
  142. data/public/vendor/npm/assert@1.5.0/README.md +105 -0
  143. data/public/vendor/npm/assert@1.5.0/assert.js +327 -0
  144. data/public/vendor/npm/assert@1.5.0/package.json +32 -0
  145. data/public/vendor/npm/assert@1.5.0/test.js +288 -0
  146. data/public/vendor/npm/assert@1.5.0.js +1 -0
  147. data/public/vendor/npm/{base64-js@0.0.8/LICENSE.MIT → base64-js@1.5.1/LICENSE} +1 -1
  148. data/public/vendor/npm/{base64-js@0.0.8 → base64-js@1.5.1}/README.md +10 -7
  149. data/public/vendor/npm/base64-js@1.5.1/base64js.min.js +3 -0
  150. data/public/vendor/npm/base64-js@1.5.1/index.d.ts +3 -0
  151. data/public/vendor/npm/base64-js@1.5.1/index.js +151 -0
  152. data/public/vendor/npm/base64-js@1.5.1/package.json +47 -0
  153. data/public/vendor/npm/base64-js@1.5.1.js +1 -0
  154. data/public/vendor/npm/buffer@5.7.1/AUTHORS.md +70 -0
  155. data/public/vendor/npm/{buffer@3.4.3 → buffer@5.7.1}/README.md +111 -41
  156. data/public/vendor/npm/buffer@5.7.1/index.d.ts +186 -0
  157. data/public/vendor/npm/buffer@5.7.1/index.js +1817 -0
  158. data/public/vendor/npm/buffer@5.7.1/package.json +96 -0
  159. data/public/vendor/npm/buffer@5.7.1.js +1 -0
  160. data/public/vendor/npm/core-util-is@1.0.3/LICENSE +19 -0
  161. data/public/vendor/npm/core-util-is@1.0.3/lib/util.js +64 -0
  162. data/public/vendor/npm/{core-util-is@1.0.1 → core-util-is@1.0.3}/package.json +13 -1
  163. data/public/vendor/npm/core-util-is@1.0.3.js +1 -0
  164. data/public/vendor/npm/events@1.0.2/tests/add-listeners.js +2 -2
  165. data/public/vendor/npm/events@1.0.2/tests/check-listener-leaks.js +3 -3
  166. data/public/vendor/npm/events@1.0.2/tests/common.js +1 -1
  167. data/public/vendor/npm/events@1.0.2/tests/index.js +13 -13
  168. data/public/vendor/npm/events@1.0.2/tests/listeners-side-effects.js +2 -2
  169. data/public/vendor/npm/events@1.0.2/tests/listeners.js +2 -2
  170. data/public/vendor/npm/events@1.0.2/tests/max-listeners.js +2 -2
  171. data/public/vendor/npm/events@1.0.2/tests/modify-in-emit.js +2 -2
  172. data/public/vendor/npm/events@1.0.2/tests/num-args.js +2 -2
  173. data/public/vendor/npm/events@1.0.2/tests/once.js +2 -2
  174. data/public/vendor/npm/events@1.0.2/tests/remove-all-listeners.js +3 -3
  175. data/public/vendor/npm/events@1.0.2/tests/remove-listeners.js +3 -3
  176. data/public/vendor/npm/events@1.0.2/tests/set-max-listeners-side-effects.js +2 -2
  177. data/public/vendor/npm/events@1.0.2/tests/subclass.js +3 -3
  178. data/public/vendor/npm/events@1.0.2.js +1 -1
  179. data/public/vendor/npm/ieee754@1.2.1/LICENSE +11 -0
  180. data/public/vendor/npm/{ieee754@1.1.6 → ieee754@1.2.1}/README.md +12 -8
  181. data/public/vendor/npm/ieee754@1.2.1/index.d.ts +10 -0
  182. data/public/vendor/npm/{ieee754@1.1.6 → ieee754@1.2.1}/index.js +6 -6
  183. data/public/vendor/npm/ieee754@1.2.1/package.json +52 -0
  184. data/public/vendor/npm/ieee754@1.2.1.js +1 -0
  185. data/public/vendor/npm/{is-array@1.0.1 → indexof@0.0.1}/Makefile +3 -3
  186. data/public/vendor/npm/indexof@0.0.1/Readme.md +15 -0
  187. data/public/vendor/npm/indexof@0.0.1/component.json +10 -0
  188. data/public/vendor/npm/indexof@0.0.1/index.js +11 -0
  189. data/public/vendor/npm/indexof@0.0.1/package.json +12 -0
  190. data/public/vendor/npm/indexof@0.0.1.js +1 -0
  191. data/public/vendor/npm/inherits@2.0.1/inherits.js +1 -1
  192. data/public/vendor/npm/inherits@2.0.1.js +1 -1
  193. data/public/vendor/npm/isarray@0.0.1.js +1 -1
  194. data/public/vendor/npm/js-tokens@4.0.0/index.js +23 -0
  195. data/public/vendor/npm/js-tokens@4.0.0/package.json +30 -0
  196. data/public/vendor/npm/js-tokens@4.0.0.js +1 -0
  197. data/public/vendor/npm/loose-envify@1.4.0/LICENSE +21 -0
  198. data/public/vendor/npm/loose-envify@1.4.0/README.md +45 -0
  199. data/public/vendor/npm/loose-envify@1.4.0/cli.js +12 -0
  200. data/public/vendor/npm/loose-envify@1.4.0/custom.js +3 -0
  201. data/public/vendor/npm/loose-envify@1.4.0/index.js +5 -0
  202. data/public/vendor/npm/loose-envify@1.4.0/loose-envify.js +33 -0
  203. data/public/vendor/npm/loose-envify@1.4.0/package.json +36 -0
  204. data/public/vendor/npm/loose-envify@1.4.0/replace.js +52 -0
  205. data/public/vendor/npm/loose-envify@1.4.0.js +1 -0
  206. data/public/vendor/npm/object-assign@4.1.1/index.js +90 -0
  207. data/public/vendor/npm/object-assign@4.1.1/package.json +42 -0
  208. data/public/vendor/npm/object-assign@4.1.1.js +1 -0
  209. data/public/vendor/npm/path-browserify@0.0.0/index.js +1 -1
  210. data/public/vendor/npm/path-browserify@0.0.0.js +1 -1
  211. data/public/vendor/npm/{process@0.10.1 → process@0.11.10}/README.md +4 -1
  212. data/public/vendor/npm/process@0.11.10/browser.js +184 -0
  213. data/public/vendor/npm/{process@0.10.1 → process@0.11.10}/package.json +10 -1
  214. data/public/vendor/npm/process@0.11.10/test.js +185 -0
  215. data/public/vendor/npm/process@0.11.10.js +1 -0
  216. data/public/vendor/npm/react-dom@18.0.0/LICENSE +21 -0
  217. data/public/vendor/npm/react-dom@18.0.0/README.md +50 -0
  218. data/public/vendor/npm/react-dom@18.0.0/cjs/react-dom-server-legacy.browser.development.js +4771 -0
  219. data/public/vendor/npm/react-dom@18.0.0/cjs/react-dom-server-legacy.browser.production.min.js +85 -0
  220. data/public/vendor/npm/react-dom@18.0.0/cjs/react-dom-server-legacy.node.development.js +4813 -0
  221. data/public/vendor/npm/react-dom@18.0.0/cjs/react-dom-server-legacy.node.production.min.js +1705 -0
  222. data/public/vendor/npm/react-dom@18.0.0/cjs/react-dom-server.browser.development.js +4746 -0
  223. data/public/vendor/npm/react-dom@18.0.0/cjs/react-dom-server.browser.production.min.js +90 -0
  224. data/public/vendor/npm/react-dom@18.0.0/cjs/react-dom-server.node.development.js +4714 -0
  225. data/public/vendor/npm/react-dom@18.0.0/cjs/react-dom-server.node.production.min.js +1746 -0
  226. data/public/vendor/npm/react-dom@18.0.0/cjs/react-dom-test-utils.development.js +1017 -0
  227. data/public/vendor/npm/react-dom@18.0.0/cjs/react-dom-test-utils.production.min.js +617 -0
  228. data/public/vendor/npm/react-dom@18.0.0/cjs/react-dom.development.js +20092 -0
  229. data/public/vendor/npm/react-dom@18.0.0/cjs/react-dom.production.min.js +322 -0
  230. data/public/vendor/npm/react-dom@18.0.0/cjs/react-dom.profiling.min.js +364 -0
  231. data/public/vendor/npm/react-dom@18.0.0/client.js +27 -0
  232. data/public/vendor/npm/react-dom@18.0.0/index.js +23 -0
  233. data/public/vendor/npm/react-dom@18.0.0/package.json +62 -0
  234. data/public/vendor/npm/react-dom@18.0.0/profiling.js +23 -0
  235. data/public/vendor/npm/react-dom@18.0.0/server.browser.js +19 -0
  236. data/public/vendor/npm/react-dom@18.0.0/server.js +3 -0
  237. data/public/vendor/npm/react-dom@18.0.0/server.node.js +19 -0
  238. data/public/vendor/npm/react-dom@18.0.0/test-utils.js +9 -0
  239. data/public/vendor/npm/react-dom@18.0.0/umd/react-dom-server-legacy.browser.development.js +4770 -0
  240. data/public/vendor/npm/react-dom@18.0.0/umd/react-dom-server-legacy.browser.production.min.js +72 -0
  241. data/public/vendor/npm/react-dom@18.0.0/umd/react-dom-server.browser.development.js +4745 -0
  242. data/public/vendor/npm/react-dom@18.0.0/umd/react-dom-server.browser.production.min.js +74 -0
  243. data/public/vendor/npm/react-dom@18.0.0/umd/react-dom-test-utils.development.js +1013 -0
  244. data/public/vendor/npm/react-dom@18.0.0/umd/react-dom-test-utils.production.min.js +625 -0
  245. data/public/vendor/npm/react-dom@18.0.0/umd/react-dom.development.js +20106 -0
  246. data/public/vendor/npm/react-dom@18.0.0/umd/react-dom.production.min.js +269 -0
  247. data/public/vendor/npm/react-dom@18.0.0/umd/react-dom.profiling.min.js +285 -0
  248. data/public/vendor/npm/react-dom@18.0.0.js +1 -0
  249. data/public/vendor/npm/react@18.0.0/LICENSE +21 -0
  250. data/public/vendor/npm/react@18.0.0/README.md +13 -0
  251. data/public/vendor/npm/react@18.0.0/cjs/react-jsx-dev-runtime.development.js +837 -0
  252. data/public/vendor/npm/react@18.0.0/cjs/react-jsx-dev-runtime.production.min.js +10 -0
  253. data/public/vendor/npm/react@18.0.0/cjs/react-jsx-dev-runtime.profiling.min.js +10 -0
  254. data/public/vendor/npm/react@18.0.0/cjs/react-jsx-runtime.development.js +849 -0
  255. data/public/vendor/npm/react@18.0.0/cjs/react-jsx-runtime.production.min.js +38 -0
  256. data/public/vendor/npm/react@18.0.0/cjs/react-jsx-runtime.profiling.min.js +38 -0
  257. data/public/vendor/npm/react@18.0.0/cjs/react.development.js +1746 -0
  258. data/public/vendor/npm/react@18.0.0/cjs/react.production.min.js +26 -0
  259. data/public/vendor/npm/react@18.0.0/cjs/react.shared-subset.development.js +10 -0
  260. data/public/vendor/npm/react@18.0.0/cjs/react.shared-subset.production.min.js +12 -0
  261. data/public/vendor/npm/react@18.0.0/index.js +9 -0
  262. data/public/vendor/npm/react@18.0.0/jsx-dev-runtime.js +9 -0
  263. data/public/vendor/npm/react@18.0.0/jsx-runtime.js +9 -0
  264. data/public/vendor/npm/react@18.0.0/package.json +47 -0
  265. data/public/vendor/npm/react@18.0.0/react.shared-subset.js +9 -0
  266. data/public/vendor/npm/react@18.0.0/umd/react.development.js +2186 -0
  267. data/public/vendor/npm/react@18.0.0/umd/react.production.min.js +33 -0
  268. data/public/vendor/npm/react@18.0.0/umd/react.profiling.min.js +33 -0
  269. data/public/vendor/npm/react@18.0.0.js +1 -0
  270. data/public/vendor/npm/readable-stream@1.1.14/LICENSE +18 -0
  271. data/public/vendor/npm/readable-stream@1.1.14/duplex.js +2 -0
  272. data/public/vendor/npm/{readable-stream@1.1.13 → readable-stream@1.1.14}/lib/_stream_duplex.js +5 -5
  273. data/public/vendor/npm/{readable-stream@1.1.13 → readable-stream@1.1.14}/lib/_stream_passthrough.js +3 -3
  274. data/public/vendor/npm/{readable-stream@1.1.13 → readable-stream@1.1.14}/lib/_stream_readable.js +10 -10
  275. data/public/vendor/npm/{readable-stream@1.1.13 → readable-stream@1.1.14}/lib/_stream_transform.js +4 -4
  276. data/public/vendor/npm/{readable-stream@1.1.13 → readable-stream@1.1.14}/lib/_stream_writable.js +6 -6
  277. data/public/vendor/npm/{readable-stream@1.1.13 → readable-stream@1.1.14}/package.json +1 -1
  278. data/public/vendor/npm/readable-stream@1.1.14/passthrough.js +2 -0
  279. data/public/vendor/npm/readable-stream@1.1.14/readable.js +13 -0
  280. data/public/vendor/npm/readable-stream@1.1.14/transform.js +2 -0
  281. data/public/vendor/npm/readable-stream@1.1.14/writable.js +2 -0
  282. data/public/vendor/npm/readable-stream@1.1.14.js +1 -0
  283. data/public/vendor/npm/scheduler@0.21.0/LICENSE +21 -0
  284. data/public/vendor/npm/scheduler@0.21.0/README.md +9 -0
  285. data/public/vendor/npm/scheduler@0.21.0/cjs/scheduler-unstable_mock.development.js +530 -0
  286. data/public/vendor/npm/scheduler@0.21.0/cjs/scheduler-unstable_mock.production.min.js +20 -0
  287. data/public/vendor/npm/scheduler@0.21.0/cjs/scheduler-unstable_post_task.development.js +153 -0
  288. data/public/vendor/npm/scheduler@0.21.0/cjs/scheduler-unstable_post_task.production.min.js +14 -0
  289. data/public/vendor/npm/scheduler@0.21.0/cjs/scheduler.development.js +444 -0
  290. data/public/vendor/npm/scheduler@0.21.0/cjs/scheduler.production.min.js +19 -0
  291. data/public/vendor/npm/scheduler@0.21.0/index.js +9 -0
  292. data/public/vendor/npm/scheduler@0.21.0/package.json +36 -0
  293. data/public/vendor/npm/scheduler@0.21.0/umd/scheduler-unstable_mock.development.js +701 -0
  294. data/public/vendor/npm/scheduler@0.21.0/umd/scheduler-unstable_mock.production.min.js +21 -0
  295. data/public/vendor/npm/scheduler@0.21.0/umd/scheduler.development.js +154 -0
  296. data/public/vendor/npm/scheduler@0.21.0/umd/scheduler.production.min.js +148 -0
  297. data/public/vendor/npm/scheduler@0.21.0/umd/scheduler.profiling.min.js +148 -0
  298. data/public/vendor/npm/scheduler@0.21.0/unstable_mock.js +9 -0
  299. data/public/vendor/npm/scheduler@0.21.0/unstable_post_task.js +9 -0
  300. data/public/vendor/npm/scheduler@0.21.0.js +1 -0
  301. data/public/vendor/npm/stream-browserify@1.0.0/index.js +7 -7
  302. data/public/vendor/npm/stream-browserify@1.0.0/test/buf.js +5 -5
  303. data/public/vendor/npm/stream-browserify@1.0.0.js +1 -1
  304. data/public/vendor/npm/string_decoder@0.10.31/index.js +2 -2
  305. data/public/vendor/npm/string_decoder@0.10.31.js +1 -1
  306. data/public/vendor/npm/util@0.10.3/support/isBuffer.js +1 -1
  307. data/public/vendor/npm/util@0.10.3/test/browser/inspect.js +2 -2
  308. data/public/vendor/npm/util@0.10.3/test/browser/is.js +3 -3
  309. data/public/vendor/npm/util@0.10.3/test/node/debug.js +4 -4
  310. data/public/vendor/npm/util@0.10.3/test/node/format.js +2 -2
  311. data/public/vendor/npm/util@0.10.3/test/node/inspect.js +3 -3
  312. data/public/vendor/npm/util@0.10.3/test/node/log.js +3 -3
  313. data/public/vendor/npm/util@0.10.3/test/node/util.js +3 -3
  314. data/public/vendor/npm/util@0.10.3/util.js +3 -3
  315. data/public/vendor/npm/util@0.10.3.js +1 -1
  316. data/public/vendor/npm/vm-browserify@0.0.4/LICENSE +18 -0
  317. data/public/vendor/npm/vm-browserify@0.0.4/example/run/bundle.js +376 -0
  318. data/public/vendor/npm/vm-browserify@0.0.4/example/run/entry.js +6 -0
  319. data/public/vendor/npm/vm-browserify@0.0.4/example/run/index.html +9 -0
  320. data/public/vendor/npm/vm-browserify@0.0.4/example/run/server.js +6 -0
  321. data/public/vendor/npm/vm-browserify@0.0.4/index.js +139 -0
  322. data/public/vendor/npm/vm-browserify@0.0.4/package.json +46 -0
  323. data/public/vendor/npm/vm-browserify@0.0.4/readme.markdown +67 -0
  324. data/public/vendor/npm/vm-browserify@0.0.4/test/vm.js +34 -0
  325. data/public/vendor/npm/vm-browserify@0.0.4.js +1 -0
  326. data/public/vendor/npm/webshim@1.15.8/Gruntfile.js +4 -4
  327. data/public/vendor/npm/webshim@1.15.8/build/combobuild.js +2 -2
  328. data/public/vendor/npm/webshim@1.15.8/js-webshim/dev/shims/color-picker.js +1 -1
  329. data/public/vendor/npm/webshim@1.15.8/js-webshim/dev/shims/combos/10.js +1 -1
  330. data/public/vendor/npm/webshim@1.15.8/js-webshim/dev/shims/combos/11.js +1 -1
  331. data/public/vendor/npm/webshim@1.15.8/js-webshim/dev/shims/combos/17.js +1 -1
  332. data/public/vendor/npm/webshim@1.15.8/js-webshim/dev/shims/combos/5.js +1 -1
  333. data/public/vendor/npm/webshim@1.15.8/js-webshim/dev/shims/combos/6.js +1 -1
  334. data/public/vendor/npm/webshim@1.15.8/js-webshim/dev/shims/combos/9.js +1 -1
  335. data/public/vendor/npm/webshim@1.15.8/js-webshim/dev/shims/es6.js +1 -1
  336. data/public/vendor/npm/webshim@1.15.8/js-webshim/dev/shims/excanvas.js +1 -1
  337. data/public/vendor/npm/webshim@1.15.8/js-webshim/dev/shims/form-number-date-ui.js +1 -1
  338. data/public/vendor/npm/webshim@1.15.8/js-webshim/dev/shims/moxie/js/moxie-html4.js +1 -1
  339. data/public/vendor/npm/webshim@1.15.8/js-webshim/dev/shims/moxie/js/moxie-swf.js +1 -1
  340. data/public/vendor/npm/webshim@1.15.8/js-webshim/dev/shims/sizzle.js +1 -1
  341. data/public/vendor/npm/webshim@1.15.8/js-webshim/minified/shims/es6.js +1 -1
  342. data/public/vendor/npm/webshim@1.15.8/src/shims/color-picker.js +1 -1
  343. data/public/vendor/npm/webshim@1.15.8/src/shims/combos/10.js +1 -1
  344. data/public/vendor/npm/webshim@1.15.8/src/shims/combos/11.js +1 -1
  345. data/public/vendor/npm/webshim@1.15.8/src/shims/combos/17.js +1 -1
  346. data/public/vendor/npm/webshim@1.15.8/src/shims/combos/5.js +1 -1
  347. data/public/vendor/npm/webshim@1.15.8/src/shims/combos/6.js +1 -1
  348. data/public/vendor/npm/webshim@1.15.8/src/shims/combos/9.js +1 -1
  349. data/public/vendor/npm/webshim@1.15.8/src/shims/es6.js +1 -1
  350. data/public/vendor/npm/webshim@1.15.8/src/shims/excanvas.js +1 -1
  351. data/public/vendor/npm/webshim@1.15.8/src/shims/form-number-date-ui.js +1 -1
  352. data/public/vendor/npm/webshim@1.15.8/src/shims/moxie/js/moxie-html4.js +1 -1
  353. data/public/vendor/npm/webshim@1.15.8/src/shims/moxie/js/moxie-swf.js +1 -1
  354. data/public/vendor/npm/webshim@1.15.8/src/shims/sizzle.js +1 -1
  355. data/public/vendor/npm/webshim@1.15.8/tests/dist/jquery.js +1 -1
  356. data/public/vendor/npm/webshim@1.15.8/tests/jquery/unit/core.js +1 -1
  357. data/public/vendor/npm/webshim@1.15.8/tests/jquery/unit/event.js +1388 -711
  358. data/public/vendor/npm/webshim@1.15.8/tests/qunit/qunit.js +1 -1
  359. data/public/vendor/npm/webshim@1.15.8/tests/test-ext/jquery-1-custom.js +1 -1
  360. data/public/vendor/npm/webshim@1.15.8/tests/test-ext/jquery-2-custom.js +1 -1
  361. data/public/vendor/npm/webshim@1.15.8/tests/test-ext/punycode.js +1 -1
  362. data/public/vendor/system-csp-production.js +3 -3
  363. data/public/vendor/system-csp-production.js.map +1 -1
  364. data/public/vendor/system-csp-production.src.js +146 -140
  365. data/public/vendor/system-polyfills.js +865 -1
  366. data/public/vendor/system-polyfills.js.map +1 -1
  367. data/public/vendor/system-polyfills.src.js +1 -0
  368. data/public/vendor/system.js +3 -3
  369. data/public/vendor/system.js.map +1 -1
  370. data/public/vendor/system.src.js +4771 -2383
  371. data/views/blastn_options.erb +291 -0
  372. data/views/blastp_options.erb +288 -0
  373. data/views/blastx_options.erb +318 -0
  374. data/views/error.erb +12 -0
  375. data/views/layout.erb +18 -47
  376. data/views/report.erb +0 -8
  377. data/views/search.erb +16 -9
  378. data/views/tblastn_options.erb +266 -0
  379. data/views/tblastx_options.erb +291 -0
  380. metadata +362 -424
  381. data/bin/chromedriver +0 -0
  382. data/bin/geckodriver +0 -0
  383. data/public/shims/form-core.js +0 -3
  384. data/public/shims/form-validation.js +0 -3
  385. data/public/shims/plugins/jquery.ui.position.js +0 -13
  386. data/public/shims/styles/shim.css +0 -1
  387. data/public/vendor/github/jspm/nodelibs-buffer@0.1.0.js +0 -1
  388. data/public/vendor/github/jspm/nodelibs-module@0.1.0/index.js +0 -1
  389. data/public/vendor/github/jspm/nodelibs-module@0.1.0.js +0 -1
  390. data/public/vendor/github/jspm/nodelibs-process@0.1.1.js +0 -1
  391. data/public/vendor/npm/amdefine@1.0.0/LICENSE +0 -58
  392. data/public/vendor/npm/amdefine@1.0.0/README.md +0 -171
  393. data/public/vendor/npm/amdefine@1.0.0/amdefine.js +0 -200
  394. data/public/vendor/npm/amdefine@1.0.0/intercept.js +0 -24
  395. data/public/vendor/npm/amdefine@1.0.0/package.json +0 -16
  396. data/public/vendor/npm/amdefine@1.0.0.js +0 -1
  397. data/public/vendor/npm/base62@0.1.1/LICENSE +0 -20
  398. data/public/vendor/npm/base62@0.1.1/Readme.md +0 -30
  399. data/public/vendor/npm/base62@0.1.1/base62.js +0 -28
  400. data/public/vendor/npm/base62@0.1.1/package.json +0 -21
  401. data/public/vendor/npm/base62@0.1.1/test/test.js +0 -13
  402. data/public/vendor/npm/base62@0.1.1.js +0 -1
  403. data/public/vendor/npm/base64-js@0.0.8/lib/b64.js +0 -125
  404. data/public/vendor/npm/base64-js@0.0.8/package.json +0 -34
  405. data/public/vendor/npm/base64-js@0.0.8/test/convert.js +0 -39
  406. data/public/vendor/npm/base64-js@0.0.8/test/url-safe.js +0 -15
  407. data/public/vendor/npm/base64-js@0.0.8.js +0 -1
  408. data/public/vendor/npm/buffer@3.4.3/index.js +0 -1533
  409. data/public/vendor/npm/buffer@3.4.3/package.json +0 -67
  410. data/public/vendor/npm/buffer@3.4.3/test/_polyfill.js +0 -152
  411. data/public/vendor/npm/buffer@3.4.3/test/base64.js +0 -33
  412. data/public/vendor/npm/buffer@3.4.3/test/basic.js +0 -58
  413. data/public/vendor/npm/buffer@3.4.3/test/compare.js +0 -53
  414. data/public/vendor/npm/buffer@3.4.3/test/constructor.js +0 -132
  415. data/public/vendor/npm/buffer@3.4.3/test/deprecated.js +0 -21
  416. data/public/vendor/npm/buffer@3.4.3/test/from-string.js +0 -105
  417. data/public/vendor/npm/buffer@3.4.3/test/methods.js +0 -109
  418. data/public/vendor/npm/buffer@3.4.3/test/node/README.txt +0 -1
  419. data/public/vendor/npm/buffer@3.4.3/test/node/test-buffer-ascii.js +0 -20
  420. data/public/vendor/npm/buffer@3.4.3/test/node/test-buffer-bytelength.js +0 -38
  421. data/public/vendor/npm/buffer@3.4.3/test/node/test-buffer-concat.js +0 -26
  422. data/public/vendor/npm/buffer@3.4.3/test/node/test-buffer-indexof.js +0 -78
  423. data/public/vendor/npm/buffer@3.4.3/test/node/test-buffer-inspect.js +0 -31
  424. data/public/vendor/npm/buffer@3.4.3/test/node/test-buffer.js +0 -804
  425. data/public/vendor/npm/buffer@3.4.3/test/node-es6/README.txt +0 -1
  426. data/public/vendor/npm/buffer@3.4.3/test/node-es6/test-buffer-arraybuffer.js +0 -37
  427. data/public/vendor/npm/buffer@3.4.3/test/node-es6/test-buffer-iterator.js +0 -32
  428. data/public/vendor/npm/buffer@3.4.3/test/slice.js +0 -33
  429. data/public/vendor/npm/buffer@3.4.3/test/static.js +0 -32
  430. data/public/vendor/npm/buffer@3.4.3/test/to-string.js +0 -106
  431. data/public/vendor/npm/buffer@3.4.3/test/write.js +0 -90
  432. data/public/vendor/npm/buffer@3.4.3.js +0 -1
  433. data/public/vendor/npm/core-util-is@1.0.1/float.patch +0 -604
  434. data/public/vendor/npm/core-util-is@1.0.1/lib/util.js +0 -66
  435. data/public/vendor/npm/core-util-is@1.0.1/util.js +0 -66
  436. data/public/vendor/npm/core-util-is@1.0.1.js +0 -1
  437. data/public/vendor/npm/envify@3.4.0/README.md +0 -145
  438. data/public/vendor/npm/envify@3.4.0/bin/envify +0 -17
  439. data/public/vendor/npm/envify@3.4.0/custom.js +0 -33
  440. data/public/vendor/npm/envify@3.4.0/index.js +0 -4
  441. data/public/vendor/npm/envify@3.4.0/package.json +0 -35
  442. data/public/vendor/npm/envify@3.4.0/visitors.js +0 -33
  443. data/public/vendor/npm/envify@3.4.0.js +0 -1
  444. data/public/vendor/npm/esprima-fb@13001.1001.0-dev-harmony-fb/bin/esparse.js +0 -90
  445. data/public/vendor/npm/esprima-fb@13001.1001.0-dev-harmony-fb/bin/esvalidate.js +0 -145
  446. data/public/vendor/npm/esprima-fb@13001.1001.0-dev-harmony-fb/esprima.js +0 -6191
  447. data/public/vendor/npm/esprima-fb@13001.1001.0-dev-harmony-fb/package.json +0 -72
  448. data/public/vendor/npm/esprima-fb@13001.1001.0-dev-harmony-fb/test/compat.js +0 -167
  449. data/public/vendor/npm/esprima-fb@13001.1001.0-dev-harmony-fb/test/reflect.js +0 -421
  450. data/public/vendor/npm/esprima-fb@13001.1001.0-dev-harmony-fb/test/run.js +0 -34
  451. data/public/vendor/npm/esprima-fb@13001.1001.0-dev-harmony-fb/test/runner.js +0 -418
  452. data/public/vendor/npm/esprima-fb@13001.1001.0-dev-harmony-fb/test/test.js +0 -34730
  453. data/public/vendor/npm/esprima-fb@13001.1001.0-dev-harmony-fb.js +0 -1
  454. data/public/vendor/npm/ieee754@1.1.6/LICENSE +0 -56
  455. data/public/vendor/npm/ieee754@1.1.6/package.json +0 -34
  456. data/public/vendor/npm/ieee754@1.1.6/test/basic.js +0 -20
  457. data/public/vendor/npm/ieee754@1.1.6.js +0 -1
  458. data/public/vendor/npm/is-array@1.0.1/History.md +0 -11
  459. data/public/vendor/npm/is-array@1.0.1/Readme.md +0 -27
  460. data/public/vendor/npm/is-array@1.0.1/component.json +0 -13
  461. data/public/vendor/npm/is-array@1.0.1/index.js +0 -33
  462. data/public/vendor/npm/is-array@1.0.1/package.json +0 -10
  463. data/public/vendor/npm/is-array@1.0.1/test/test.html +0 -46
  464. data/public/vendor/npm/is-array@1.0.1.js +0 -1
  465. data/public/vendor/npm/jstransform@10.1.0/LICENSE +0 -201
  466. data/public/vendor/npm/jstransform@10.1.0/README.md +0 -98
  467. data/public/vendor/npm/jstransform@10.1.0/jestEnvironment.js +0 -3
  468. data/public/vendor/npm/jstransform@10.1.0/jestPreprocessor.js +0 -8
  469. data/public/vendor/npm/jstransform@10.1.0/package.json +0 -52
  470. data/public/vendor/npm/jstransform@10.1.0/polyfill/Object.es6.js +0 -54
  471. data/public/vendor/npm/jstransform@10.1.0/src/__tests__/jstransform-test.js +0 -246
  472. data/public/vendor/npm/jstransform@10.1.0/src/__tests__/jstransform-utils-test.js +0 -31
  473. data/public/vendor/npm/jstransform@10.1.0/src/docblock.js +0 -86
  474. data/public/vendor/npm/jstransform@10.1.0/src/jstransform.js +0 -180
  475. data/public/vendor/npm/jstransform@10.1.0/src/utils.js +0 -386
  476. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/es6-arrow-function-visitors-test.js +0 -57
  477. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/es6-call-spread-visitors-test.js +0 -46
  478. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/es6-class-visitors-test.js +0 -463
  479. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/es6-destructuring-visitors-test.js +0 -144
  480. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/es6-es7-object-integration-test.js +0 -40
  481. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/es6-object-concise-method-visitors-test.js +0 -47
  482. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/es6-object-short-notation-visitors-test.js +0 -33
  483. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/es6-rest-param-visitors-test.js +0 -119
  484. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/es6-template-visitors-test.js +0 -138
  485. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/es7-rest-property-helpers-test.js +0 -47
  486. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/es7-spread-property-visitors-test.js +0 -90
  487. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/gen/generate-type-syntax-test.js +0 -40
  488. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/gen/type-syntax-test.rec.js +0 -846
  489. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/reserved-words-test.js +0 -40
  490. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/type-alias-syntax-test.js +0 -34
  491. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/type-class-syntax-test.js +0 -105
  492. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/type-function-syntax-test.js +0 -126
  493. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/type-interface-syntax-test.js +0 -29
  494. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/type-object-method-syntax-test.js +0 -65
  495. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/type-pattern-syntax-test.js +0 -45
  496. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/type-syntax-test.js +0 -46
  497. data/public/vendor/npm/jstransform@10.1.0/visitors/__tests__/type-variable-declaration-syntax-test.js +0 -102
  498. data/public/vendor/npm/jstransform@10.1.0/visitors/es6-arrow-function-visitors.js +0 -66
  499. data/public/vendor/npm/jstransform@10.1.0/visitors/es6-call-spread-visitors.js +0 -72
  500. data/public/vendor/npm/jstransform@10.1.0/visitors/es6-class-visitors.js +0 -316
  501. data/public/vendor/npm/jstransform@10.1.0/visitors/es6-destructuring-visitors.js +0 -135
  502. data/public/vendor/npm/jstransform@10.1.0/visitors/es6-object-concise-method-visitors.js +0 -28
  503. data/public/vendor/npm/jstransform@10.1.0/visitors/es6-object-short-notation-visitors.js +0 -12
  504. data/public/vendor/npm/jstransform@10.1.0/visitors/es6-rest-param-visitors.js +0 -45
  505. data/public/vendor/npm/jstransform@10.1.0/visitors/es6-template-visitors.js +0 -90
  506. data/public/vendor/npm/jstransform@10.1.0/visitors/es7-rest-property-helpers.js +0 -80
  507. data/public/vendor/npm/jstransform@10.1.0/visitors/es7-spread-property-visitors.js +0 -56
  508. data/public/vendor/npm/jstransform@10.1.0/visitors/reserved-words-helper.js +0 -74
  509. data/public/vendor/npm/jstransform@10.1.0/visitors/reserved-words-visitors.js +0 -30
  510. data/public/vendor/npm/jstransform@10.1.0/visitors/type-syntax.js +0 -118
  511. data/public/vendor/npm/jstransform@10.1.0.js +0 -1
  512. data/public/vendor/npm/process@0.10.1/browser.js +0 -58
  513. data/public/vendor/npm/process@0.10.1.js +0 -1
  514. data/public/vendor/npm/qs@2.4.1/test/stringify.js +0 -162
  515. data/public/vendor/npm/react@0.13.3/README.md +0 -20
  516. data/public/vendor/npm/react@0.13.3/addons.js +0 -2
  517. data/public/vendor/npm/react@0.13.3/dist/JSXTransformer.js +0 -11346
  518. data/public/vendor/npm/react@0.13.3/dist/react-with-addons.js +0 -10483
  519. data/public/vendor/npm/react@0.13.3/dist/react-with-addons.min.js +0 -7297
  520. data/public/vendor/npm/react@0.13.3/dist/react.js +0 -9468
  521. data/public/vendor/npm/react@0.13.3/dist/react.min.js +0 -6764
  522. data/public/vendor/npm/react@0.13.3/lib/AutoFocusMixin.js +0 -9
  523. data/public/vendor/npm/react@0.13.3/lib/BeforeInputEventPlugin.js +0 -197
  524. data/public/vendor/npm/react@0.13.3/lib/CSSCore.js +0 -39
  525. data/public/vendor/npm/react@0.13.3/lib/CSSProperty.js +0 -123
  526. data/public/vendor/npm/react@0.13.3/lib/CSSPropertyOperations.js +0 -103
  527. data/public/vendor/npm/react@0.13.3/lib/CallbackQueue.js +0 -43
  528. data/public/vendor/npm/react@0.13.3/lib/ChangeEventPlugin.js +0 -174
  529. data/public/vendor/npm/react@0.13.3/lib/ClientReactRootIndex.js +0 -23
  530. data/public/vendor/npm/react@0.13.3/lib/DOMChildrenOperations.js +0 -57
  531. data/public/vendor/npm/react@0.13.3/lib/DOMProperty.js +0 -96
  532. data/public/vendor/npm/react@0.13.3/lib/DOMPropertyOperations.js +0 -99
  533. data/public/vendor/npm/react@0.13.3/lib/Danger.js +0 -67
  534. data/public/vendor/npm/react@0.13.3/lib/DefaultEventPluginOrder.js +0 -5
  535. data/public/vendor/npm/react@0.13.3/lib/EnterLeaveEventPlugin.js +0 -69
  536. data/public/vendor/npm/react@0.13.3/lib/EventConstants.js +0 -55
  537. data/public/vendor/npm/react@0.13.3/lib/EventListener.js +0 -34
  538. data/public/vendor/npm/react@0.13.3/lib/EventPluginHub.js +0 -103
  539. data/public/vendor/npm/react@0.13.3/lib/EventPluginRegistry.js +0 -115
  540. data/public/vendor/npm/react@0.13.3/lib/EventPluginUtils.js +0 -121
  541. data/public/vendor/npm/react@0.13.3/lib/EventPropagators.js +0 -62
  542. data/public/vendor/npm/react@0.13.3/lib/ExecutionEnvironment.js +0 -42
  543. data/public/vendor/npm/react@0.13.3/lib/FallbackCompositionState.js +0 -45
  544. data/public/vendor/npm/react@0.13.3/lib/HTMLDOMPropertyConfig.js +0 -155
  545. data/public/vendor/npm/react@0.13.3/lib/LinkedStateMixin.js +0 -8
  546. data/public/vendor/npm/react@0.13.3/lib/LinkedValueUtils.js +0 -74
  547. data/public/vendor/npm/react@0.13.3/lib/LocalEventTrapMixin.js +0 -26
  548. data/public/vendor/npm/react@0.13.3/lib/MobileSafariClickEventPlugin.js +0 -17
  549. data/public/vendor/npm/react@0.13.3/lib/Object.assign.js +0 -47
  550. data/public/vendor/npm/react@0.13.3/lib/PooledClass.js +0 -75
  551. data/public/vendor/npm/react@0.13.3/lib/React.js +0 -93
  552. data/public/vendor/npm/react@0.13.3/lib/ReactBrowserComponentMixin.js +0 -7
  553. data/public/vendor/npm/react@0.13.3/lib/ReactBrowserEventEmitter.js +0 -136
  554. data/public/vendor/npm/react@0.13.3/lib/ReactCSSTransitionGroup.js +0 -34
  555. data/public/vendor/npm/react@0.13.3/lib/ReactCSSTransitionGroupChild.js +0 -92
  556. data/public/vendor/npm/react@0.13.3/lib/ReactChildReconciler.js +0 -57
  557. data/public/vendor/npm/react@0.13.3/lib/ReactChildren.js +0 -67
  558. data/public/vendor/npm/react@0.13.3/lib/ReactClass.js +0 -338
  559. data/public/vendor/npm/react@0.13.3/lib/ReactComponent.js +0 -50
  560. data/public/vendor/npm/react@0.13.3/lib/ReactComponentBrowserEnvironment.js +0 -14
  561. data/public/vendor/npm/react@0.13.3/lib/ReactComponentEnvironment.js +0 -19
  562. data/public/vendor/npm/react@0.13.3/lib/ReactComponentWithPureRenderMixin.js +0 -7
  563. data/public/vendor/npm/react@0.13.3/lib/ReactCompositeComponent.js +0 -374
  564. data/public/vendor/npm/react@0.13.3/lib/ReactContext.js +0 -27
  565. data/public/vendor/npm/react@0.13.3/lib/ReactCurrentOwner.js +0 -32
  566. data/public/vendor/npm/react@0.13.3/lib/ReactDOM.js +0 -146
  567. data/public/vendor/npm/react@0.13.3/lib/ReactDOMButton.js +0 -35
  568. data/public/vendor/npm/react@0.13.3/lib/ReactDOMComponent.js +0 -267
  569. data/public/vendor/npm/react@0.13.3/lib/ReactDOMForm.js +0 -21
  570. data/public/vendor/npm/react@0.13.3/lib/ReactDOMIDOperations.js +0 -63
  571. data/public/vendor/npm/react@0.13.3/lib/ReactDOMIframe.js +0 -20
  572. data/public/vendor/npm/react@0.13.3/lib/ReactDOMImg.js +0 -21
  573. data/public/vendor/npm/react@0.13.3/lib/ReactDOMInput.js +0 -94
  574. data/public/vendor/npm/react@0.13.3/lib/ReactDOMOption.js +0 -23
  575. data/public/vendor/npm/react@0.13.3/lib/ReactDOMSelect.js +0 -112
  576. data/public/vendor/npm/react@0.13.3/lib/ReactDOMSelection.js +0 -103
  577. data/public/vendor/npm/react@0.13.3/lib/ReactDOMTextComponent.js +0 -38
  578. data/public/vendor/npm/react@0.13.3/lib/ReactDOMTextarea.js +0 -70
  579. data/public/vendor/npm/react@0.13.3/lib/ReactDefaultBatchingStrategy.js +0 -37
  580. data/public/vendor/npm/react@0.13.3/lib/ReactDefaultInjection.js +0 -93
  581. data/public/vendor/npm/react@0.13.3/lib/ReactDefaultPerf.js +0 -183
  582. data/public/vendor/npm/react@0.13.3/lib/ReactDefaultPerfAnalysis.js +0 -145
  583. data/public/vendor/npm/react@0.13.3/lib/ReactElement.js +0 -151
  584. data/public/vendor/npm/react@0.13.3/lib/ReactElementValidator.js +0 -218
  585. data/public/vendor/npm/react@0.13.3/lib/ReactEmptyComponent.js +0 -47
  586. data/public/vendor/npm/react@0.13.3/lib/ReactErrorUtils.js +0 -30
  587. data/public/vendor/npm/react@0.13.3/lib/ReactEventEmitterMixin.js +0 -12
  588. data/public/vendor/npm/react@0.13.3/lib/ReactEventListener.js +0 -93
  589. data/public/vendor/npm/react@0.13.3/lib/ReactFragment.js +0 -110
  590. data/public/vendor/npm/react@0.13.3/lib/ReactInjection.js +0 -27
  591. data/public/vendor/npm/react@0.13.3/lib/ReactInputSelection.js +0 -75
  592. data/public/vendor/npm/react@0.13.3/lib/ReactInstanceHandles.js +0 -113
  593. data/public/vendor/npm/react@0.13.3/lib/ReactInstanceMap.js +0 -47
  594. data/public/vendor/npm/react@0.13.3/lib/ReactLifeCycle.js +0 -9
  595. data/public/vendor/npm/react@0.13.3/lib/ReactLink.js +0 -16
  596. data/public/vendor/npm/react@0.13.3/lib/ReactMarkupChecksum.js +0 -17
  597. data/public/vendor/npm/react@0.13.3/lib/ReactMount.js +0 -347
  598. data/public/vendor/npm/react@0.13.3/lib/ReactMultiChild.js +0 -190
  599. data/public/vendor/npm/react@0.13.3/lib/ReactMultiChildUpdateTypes.js +0 -10
  600. data/public/vendor/npm/react@0.13.3/lib/ReactNativeComponent.js +0 -53
  601. data/public/vendor/npm/react@0.13.3/lib/ReactOwner.js +0 -21
  602. data/public/vendor/npm/react@0.13.3/lib/ReactPerf.js +0 -42
  603. data/public/vendor/npm/react@0.13.3/lib/ReactPropTransferer.js +0 -40
  604. data/public/vendor/npm/react@0.13.3/lib/ReactPropTypeLocationNames.js +0 -13
  605. data/public/vendor/npm/react@0.13.3/lib/ReactPropTypeLocations.js +0 -9
  606. data/public/vendor/npm/react@0.13.3/lib/ReactPropTypes.js +0 -225
  607. data/public/vendor/npm/react@0.13.3/lib/ReactPutListenerQueue.js +0 -31
  608. data/public/vendor/npm/react@0.13.3/lib/ReactReconcileTransaction.js +0 -66
  609. data/public/vendor/npm/react@0.13.3/lib/ReactReconciler.js +0 -44
  610. data/public/vendor/npm/react@0.13.3/lib/ReactRef.js +0 -36
  611. data/public/vendor/npm/react@0.13.3/lib/ReactRootIndex.js +0 -29
  612. data/public/vendor/npm/react@0.13.3/lib/ReactServerRendering.js +0 -44
  613. data/public/vendor/npm/react@0.13.3/lib/ReactServerRenderingTransaction.js +0 -47
  614. data/public/vendor/npm/react@0.13.3/lib/ReactStateSetters.js +0 -104
  615. data/public/vendor/npm/react@0.13.3/lib/ReactTestUtils.js +0 -249
  616. data/public/vendor/npm/react@0.13.3/lib/ReactTransitionChildMapping.js +0 -53
  617. data/public/vendor/npm/react@0.13.3/lib/ReactTransitionEvents.js +0 -68
  618. data/public/vendor/npm/react@0.13.3/lib/ReactTransitionGroup.js +0 -140
  619. data/public/vendor/npm/react@0.13.3/lib/ReactUpdateQueue.js +0 -107
  620. data/public/vendor/npm/react@0.13.3/lib/ReactUpdates.js +0 -139
  621. data/public/vendor/npm/react@0.13.3/lib/ReactWithAddons.js +0 -30
  622. data/public/vendor/npm/react@0.13.3/lib/SVGDOMPropertyConfig.js +0 -76
  623. data/public/vendor/npm/react@0.13.3/lib/SelectEventPlugin.js +0 -91
  624. data/public/vendor/npm/react@0.13.3/lib/ServerReactRootIndex.js +0 -29
  625. data/public/vendor/npm/react@0.13.3/lib/SimpleEventPlugin.js +0 -287
  626. data/public/vendor/npm/react@0.13.3/lib/SyntheticClipboardEvent.js +0 -11
  627. data/public/vendor/npm/react@0.13.3/lib/SyntheticCompositionEvent.js +0 -9
  628. data/public/vendor/npm/react@0.13.3/lib/SyntheticDragEvent.js +0 -9
  629. data/public/vendor/npm/react@0.13.3/lib/SyntheticEvent.js +0 -90
  630. data/public/vendor/npm/react@0.13.3/lib/SyntheticFocusEvent.js +0 -9
  631. data/public/vendor/npm/react@0.13.3/lib/SyntheticInputEvent.js +0 -9
  632. data/public/vendor/npm/react@0.13.3/lib/SyntheticKeyboardEvent.js +0 -43
  633. data/public/vendor/npm/react@0.13.3/lib/SyntheticMouseEvent.js +0 -38
  634. data/public/vendor/npm/react@0.13.3/lib/SyntheticTouchEvent.js +0 -19
  635. data/public/vendor/npm/react@0.13.3/lib/SyntheticUIEvent.js +0 -29
  636. data/public/vendor/npm/react@0.13.3/lib/SyntheticWheelEvent.js +0 -18
  637. data/public/vendor/npm/react@0.13.3/lib/Transaction.js +0 -90
  638. data/public/vendor/npm/react@0.13.3/lib/ViewportMetrics.js +0 -27
  639. data/public/vendor/npm/react@0.13.3/lib/accumulateInto.js +0 -26
  640. data/public/vendor/npm/react@0.13.3/lib/adler32.js +0 -32
  641. data/public/vendor/npm/react@0.13.3/lib/camelize.js +0 -30
  642. data/public/vendor/npm/react@0.13.3/lib/camelizeStyleName.js +0 -8
  643. data/public/vendor/npm/react@0.13.3/lib/cloneWithProps.js +0 -20
  644. data/public/vendor/npm/react@0.13.3/lib/containsNode.js +0 -20
  645. data/public/vendor/npm/react@0.13.3/lib/createArrayFromMixed.js +0 -15
  646. data/public/vendor/npm/react@0.13.3/lib/createFullPageComponent.js +0 -22
  647. data/public/vendor/npm/react@0.13.3/lib/createNodesFromMarkup.js +0 -39
  648. data/public/vendor/npm/react@0.13.3/lib/cx.js +0 -20
  649. data/public/vendor/npm/react@0.13.3/lib/dangerousStyleValue.js +0 -19
  650. data/public/vendor/npm/react@0.13.3/lib/emptyFunction.js +0 -32
  651. data/public/vendor/npm/react@0.13.3/lib/emptyObject.js +0 -9
  652. data/public/vendor/npm/react@0.13.3/lib/escapeTextContentForBrowser.js +0 -38
  653. data/public/vendor/npm/react@0.13.3/lib/findDOMNode.js +0 -31
  654. data/public/vendor/npm/react@0.13.3/lib/flattenChildren.js +0 -25
  655. data/public/vendor/npm/react@0.13.3/lib/focusNode.js +0 -27
  656. data/public/vendor/npm/react@0.13.3/lib/forEachAccumulated.js +0 -29
  657. data/public/vendor/npm/react@0.13.3/lib/getActiveElement.js +0 -27
  658. data/public/vendor/npm/react@0.13.3/lib/getEventCharCode.js +0 -50
  659. data/public/vendor/npm/react@0.13.3/lib/getEventKey.js +0 -72
  660. data/public/vendor/npm/react@0.13.3/lib/getEventModifierState.js +0 -45
  661. data/public/vendor/npm/react@0.13.3/lib/getEventTarget.js +0 -29
  662. data/public/vendor/npm/react@0.13.3/lib/getIteratorFn.js +0 -42
  663. data/public/vendor/npm/react@0.13.3/lib/getMarkupWrap.js +0 -73
  664. data/public/vendor/npm/react@0.13.3/lib/getNodeForCharacterOffset.js +0 -73
  665. data/public/vendor/npm/react@0.13.3/lib/getReactRootElementInContainer.js +0 -33
  666. data/public/vendor/npm/react@0.13.3/lib/getTextContentAccessor.js +0 -11
  667. data/public/vendor/npm/react@0.13.3/lib/getUnboundedScrollPosition.js +0 -38
  668. data/public/vendor/npm/react@0.13.3/lib/hyphenate.js +0 -31
  669. data/public/vendor/npm/react@0.13.3/lib/hyphenateStyleName.js +0 -8
  670. data/public/vendor/npm/react@0.13.3/lib/instantiateReactComponent.js +0 -55
  671. data/public/vendor/npm/react@0.13.3/lib/invariant.js +0 -26
  672. data/public/vendor/npm/react@0.13.3/lib/isEventSupported.js +0 -24
  673. data/public/vendor/npm/react@0.13.3/lib/isNode.js +0 -25
  674. data/public/vendor/npm/react@0.13.3/lib/isTextInputElement.js +0 -41
  675. data/public/vendor/npm/react@0.13.3/lib/isTextNode.js +0 -6
  676. data/public/vendor/npm/react@0.13.3/lib/joinClasses.js +0 -39
  677. data/public/vendor/npm/react@0.13.3/lib/keyMirror.js +0 -18
  678. data/public/vendor/npm/react@0.13.3/lib/keyOf.js +0 -34
  679. data/public/vendor/npm/react@0.13.3/lib/mapObject.js +0 -51
  680. data/public/vendor/npm/react@0.13.3/lib/memoizeStringOnly.js +0 -31
  681. data/public/vendor/npm/react@0.13.3/lib/onlyChild.js +0 -11
  682. data/public/vendor/npm/react@0.13.3/lib/performance.js +0 -8
  683. data/public/vendor/npm/react@0.13.3/lib/performanceNow.js +0 -7
  684. data/public/vendor/npm/react@0.13.3/lib/quoteAttributeValueForBrowser.js +0 -7
  685. data/public/vendor/npm/react@0.13.3/lib/setInnerHTML.js +0 -40
  686. data/public/vendor/npm/react@0.13.3/lib/setTextContent.js +0 -16
  687. data/public/vendor/npm/react@0.13.3/lib/shallowEqual.js +0 -42
  688. data/public/vendor/npm/react@0.13.3/lib/shouldUpdateReactComponent.js +0 -51
  689. data/public/vendor/npm/react@0.13.3/lib/toArray.js +0 -21
  690. data/public/vendor/npm/react@0.13.3/lib/traverseAllChildren.js +0 -104
  691. data/public/vendor/npm/react@0.13.3/lib/update.js +0 -78
  692. data/public/vendor/npm/react@0.13.3/lib/warning.js +0 -34
  693. data/public/vendor/npm/react@0.13.3/package.json +0 -34
  694. data/public/vendor/npm/react@0.13.3/react.js +0 -2
  695. data/public/vendor/npm/react@0.13.3.js +0 -1
  696. data/public/vendor/npm/readable-stream@1.1.13/duplex.js +0 -2
  697. data/public/vendor/npm/readable-stream@1.1.13/passthrough.js +0 -2
  698. data/public/vendor/npm/readable-stream@1.1.13/readable.js +0 -8
  699. data/public/vendor/npm/readable-stream@1.1.13/transform.js +0 -2
  700. data/public/vendor/npm/readable-stream@1.1.13/writable.js +0 -2
  701. data/public/vendor/npm/readable-stream@1.1.13.js +0 -1
  702. data/public/vendor/npm/source-map@0.1.31/CHANGELOG.md +0 -112
  703. data/public/vendor/npm/source-map@0.1.31/LICENSE +0 -28
  704. data/public/vendor/npm/source-map@0.1.31/Makefile.dryice.js +0 -89
  705. data/public/vendor/npm/source-map@0.1.31/README.md +0 -434
  706. data/public/vendor/npm/source-map@0.1.31/build/assert-shim.js +0 -58
  707. data/public/vendor/npm/source-map@0.1.31/build/mini-require.js +0 -154
  708. data/public/vendor/npm/source-map@0.1.31/build/prefix-source-map.jsm +0 -20
  709. data/public/vendor/npm/source-map@0.1.31/build/prefix-utils.jsm +0 -18
  710. data/public/vendor/npm/source-map@0.1.31/build/suffix-browser.js +0 -8
  711. data/public/vendor/npm/source-map@0.1.31/build/suffix-source-map.jsm +0 -6
  712. data/public/vendor/npm/source-map@0.1.31/build/suffix-utils.jsm +0 -21
  713. data/public/vendor/npm/source-map@0.1.31/build/test-prefix.js +0 -10
  714. data/public/vendor/npm/source-map@0.1.31/build/test-suffix.js +0 -5
  715. data/public/vendor/npm/source-map@0.1.31/lib/source-map/array-set.js +0 -49
  716. data/public/vendor/npm/source-map@0.1.31/lib/source-map/base64-vlq.js +0 -56
  717. data/public/vendor/npm/source-map@0.1.31/lib/source-map/base64.js +0 -44
  718. data/public/vendor/npm/source-map@0.1.31/lib/source-map/binary-search.js +0 -83
  719. data/public/vendor/npm/source-map@0.1.31/lib/source-map/source-map-consumer.js +0 -238
  720. data/public/vendor/npm/source-map@0.1.31/lib/source-map/source-map-generator.js +0 -231
  721. data/public/vendor/npm/source-map@0.1.31/lib/source-map/source-node.js +0 -234
  722. data/public/vendor/npm/source-map@0.1.31/lib/source-map/util.js +0 -207
  723. data/public/vendor/npm/source-map@0.1.31/lib/source-map.js +0 -4
  724. data/public/vendor/npm/source-map@0.1.31/package.json +0 -52
  725. data/public/vendor/npm/source-map@0.1.31/test/run-tests.js +0 -50
  726. data/public/vendor/npm/source-map@0.1.31/test/source-map/test-api.js +0 -19
  727. data/public/vendor/npm/source-map@0.1.31/test/source-map/test-array-set.js +0 -84
  728. data/public/vendor/npm/source-map@0.1.31/test/source-map/test-base64-vlq.js +0 -17
  729. data/public/vendor/npm/source-map@0.1.31/test/source-map/test-base64.js +0 -26
  730. data/public/vendor/npm/source-map@0.1.31/test/source-map/test-binary-search.js +0 -37
  731. data/public/vendor/npm/source-map@0.1.31/test/source-map/test-dog-fooding.js +0 -76
  732. data/public/vendor/npm/source-map@0.1.31/test/source-map/test-source-map-consumer.js +0 -426
  733. data/public/vendor/npm/source-map@0.1.31/test/source-map/test-source-map-generator.js +0 -480
  734. data/public/vendor/npm/source-map@0.1.31/test/source-map/test-source-node.js +0 -307
  735. data/public/vendor/npm/source-map@0.1.31/test/source-map/util.js +0 -84
  736. data/public/vendor/npm/source-map@0.1.31.js +0 -1
  737. data/public/vendor/npm/through@2.3.8/LICENSE.APACHE2 +0 -15
  738. data/public/vendor/npm/through@2.3.8/LICENSE.MIT +0 -24
  739. data/public/vendor/npm/through@2.3.8/index.js +0 -93
  740. data/public/vendor/npm/through@2.3.8/package.json +0 -36
  741. data/public/vendor/npm/through@2.3.8/readme.markdown +0 -64
  742. data/public/vendor/npm/through@2.3.8/test/async.js +0 -26
  743. data/public/vendor/npm/through@2.3.8/test/auto-destroy.js +0 -26
  744. data/public/vendor/npm/through@2.3.8/test/buffering.js +0 -57
  745. data/public/vendor/npm/through@2.3.8/test/end.js +0 -37
  746. data/public/vendor/npm/through@2.3.8/test/index.js +0 -98
  747. data/public/vendor/npm/through@2.3.8/test.js +0 -2
  748. data/public/vendor/npm/through@2.3.8.js +0 -1
  749. data/views/_options.erb +0 -135
  750. /data/public/vendor/github/jspm/{nodelibs-buffer@0.1.0 → nodelibs-buffer@0.1.1}/index.js +0 -0
  751. /data/public/vendor/github/jspm/{nodelibs-process@0.1.1 → nodelibs-process@0.1.2}/index.js +0 -0
  752. /data/public/vendor/npm/{readable-stream@1.1.13 → assert@1.5.0}/LICENSE +0 -0
  753. /data/public/vendor/npm/{buffer@3.4.3 → buffer@5.7.1}/LICENSE +0 -0
  754. /data/public/vendor/npm/{core-util-is@1.0.1 → core-util-is@1.0.3}/README.md +0 -0
  755. /data/public/vendor/npm/{process@0.10.1 → process@0.11.10}/LICENSE +0 -0
  756. /data/public/vendor/npm/{process@0.10.1 → process@0.11.10}/index.js +0 -0
  757. /data/public/vendor/npm/{readable-stream@1.1.13 → readable-stream@1.1.14}/README.md +0 -0
  758. /data/public/vendor/npm/{readable-stream@1.1.13 → readable-stream@1.1.14}/float.patch +0 -0
@@ -1,4 +1,4 @@
1
- import React from 'react';
1
+ import React, { createRef } from 'react';
2
2
 
3
3
  /**
4
4
  * Takes errorData object with title, message, and more_info keys as props. The
@@ -14,12 +14,13 @@ export default class ErrorModal extends React.Component {
14
14
  constructor(props) {
15
15
  super(props);
16
16
  this.state = { errorData: {} };
17
+ this.modal = createRef();
17
18
  }
18
19
 
19
20
  // HTML for Bootstrap modal.
20
21
  render() {
21
22
  return (
22
- <div id="error" ref="modal" className="modal fade"
23
+ <div id="error" ref={this.modal} className="modal fade"
23
24
  data-keyboard="false" data-backdrop="static">
24
25
  <div className="modal-dialog modal-lg">
25
26
  <div className="modal-content">
@@ -42,14 +43,6 @@ export default class ErrorModal extends React.Component {
42
43
  </div>
43
44
  );
44
45
  }
45
-
46
- /*
47
- * Returns jQuery reference to the main modal container.
48
- */
49
- modal () {
50
- return $(React.findDOMNode(this.refs.modal));
51
- }
52
-
53
46
  /**
54
47
  * Shows error viewer.
55
48
  */
@@ -59,7 +52,7 @@ export default class ErrorModal extends React.Component {
59
52
  // modal. This is helpful if the caller wants to finish some work
60
53
  // before showing error modal.
61
54
  setTimeout(() => {
62
- this.modal().modal('show');
55
+ $(this.modal.current).modal('show');
63
56
  }, beforeShow || 0);
64
57
  }
65
58
  }
@@ -10,13 +10,17 @@ export function download_url(url, filename) {
10
10
  }, 100);
11
11
  }
12
12
 
13
+ export function generate_blob_url(blob) {
14
+ const url = window.URL.createObjectURL(blob);
15
+ return url;
16
+ }
17
+
13
18
  export function download_blob(blob, filename) {
14
19
  if (typeof window.navigator.msSaveOrOpenBlob !== 'undefined') {
15
20
  window.navigator.msSaveOrOpenBlob(blob, filename);
16
- return;
21
+ }else{
22
+ download_url(generate_blob_url(blob), filename);
17
23
  }
18
-
19
- download_url(window.URL.createObjectURL(blob), filename);
20
24
  }
21
25
 
22
26
  export function sanitize_filename(str) {
data/public/js/form.js ADDED
@@ -0,0 +1,260 @@
1
+ import React, { Component, createRef } from 'react';
2
+ import { SearchButton } from './search_button';
3
+ import { SearchQueryWidget } from './query';
4
+ import DatabasesTree from './databases_tree';
5
+ import { Databases } from './databases';
6
+ import _ from 'underscore';
7
+ import { Options } from './options';
8
+
9
+ /**
10
+ * Search form.
11
+ *
12
+ * Top level component that initialises and holds all other components, and
13
+ * facilitates communication between them.
14
+ */
15
+ export class Form extends Component {
16
+ constructor(props) {
17
+ super(props);
18
+ this.state = {
19
+ databases: [], preDefinedOpts: {}, tree: {}
20
+ };
21
+ this.useTreeWidget = this.useTreeWidget.bind(this);
22
+ this.determineBlastMethod = this.determineBlastMethod.bind(this);
23
+ this.handleSequenceTypeChanged = this.handleSequenceTypeChanged.bind(this);
24
+ this.handleDatabaseTypeChanaged = this.handleDatabaseTypeChanaged.bind(this);
25
+ this.handleAlgoChanged = this.handleAlgoChanged.bind(this);
26
+ this.handleFormSubmission = this.handleFormSubmission.bind(this);
27
+ this.formRef = createRef();
28
+ }
29
+
30
+ componentDidMount() {
31
+ /**
32
+ * Fetch data to initialise the search interface from the server. These
33
+ * include list of databases to search against, advanced options to
34
+ * apply when an algorithm is selected, and a query sequence that
35
+ * the user may want to search in the databases.
36
+ */
37
+ var search = location.search.split(/\?|&/).filter(Boolean);
38
+ var job_id = sessionStorage.getItem('job_id');
39
+ if (job_id) {
40
+ search.unshift(`job_id=${job_id}`);
41
+ }
42
+ $.getJSON(`searchdata.json?${search.join('&')}`, function (data) {
43
+ /* Update form state (i.e., list of databases and predefined
44
+ * advanced options.
45
+ */
46
+ this.setState({
47
+ tree: data['tree'],
48
+ databases: data['database'],
49
+ preSelectedDbs: data['preSelectedDbs'],
50
+ preDefinedOpts: data['options']
51
+ });
52
+
53
+ /* Pre-populate the form with server sent query sequences
54
+ * (if any).
55
+ */
56
+ if (data['query']) {
57
+ this.refs.query.value(data['query']);
58
+ }
59
+
60
+ setTimeout(function () {
61
+ $('.jstree_div').click();
62
+ }, 1000);
63
+ }.bind(this));
64
+
65
+ /* Enable submitting form on Cmd+Enter */
66
+ $(document).on('keydown', (e) => {
67
+ var $button = $('#method');
68
+ if (!$button.is(':disabled') &&
69
+ e.ctrlKey && e.key === 'Enter') {
70
+ $button.trigger('click');
71
+ }
72
+ });
73
+
74
+ // show overlay to create visual feedback on button click
75
+ $('#method').on('click', () => {
76
+ $('#overlay').css('display', 'block');
77
+ });
78
+ }
79
+
80
+ useTreeWidget() {
81
+ return !_.isEmpty(this.state.tree);
82
+ }
83
+
84
+ handleFormSubmission(evt) {
85
+ evt.preventDefault();
86
+ const form = this.formRef.current;
87
+ const formData = new FormData(form);
88
+ formData.append('method', this.refs.button.state.methods[0]);
89
+ fetch(window.location.href, {
90
+ method: 'POST',
91
+ body: formData
92
+ }).then(res => {
93
+ //remove overlay when form is submitted
94
+ $('#overlay').css('display', 'none');
95
+ // redirect
96
+ if (res.redirected && res.url) {
97
+ // setTimeout is needed here as a workaround because safari doesnt allow async calling of window.open
98
+ // so setTimeout makes the method get called on the main thread.
99
+ setTimeout(() => {
100
+ window.open(res.url, $('#toggleNewTab').is(':checked') ? '_blank' : '_self');
101
+ }, 0);
102
+ }
103
+ });
104
+ }
105
+ determineBlastMethod() {
106
+ var database_type = this.databaseType;
107
+ var sequence_type = this.sequenceType;
108
+
109
+ if (this.refs.query.isEmpty()) {
110
+ return [];
111
+ }
112
+
113
+ //database type is always known
114
+ switch (database_type) {
115
+ case 'protein':
116
+ switch (sequence_type) {
117
+ case undefined:
118
+ return ['blastp', 'blastx'];
119
+ case 'protein':
120
+ return ['blastp'];
121
+ case 'nucleotide':
122
+ return ['blastx'];
123
+ }
124
+ break;
125
+ case 'nucleotide':
126
+ switch (sequence_type) {
127
+ case undefined:
128
+ return ['tblastn', 'blastn', 'tblastx'];
129
+ case 'protein':
130
+ return ['tblastn'];
131
+ case 'nucleotide':
132
+ return ['blastn', 'tblastx'];
133
+ }
134
+ break;
135
+ }
136
+
137
+ return [];
138
+ }
139
+
140
+ handleSequenceTypeChanged(type) {
141
+ this.sequenceType = type;
142
+ this.refs.button.setState({
143
+ hasQuery: !this.refs.query.isEmpty(),
144
+ hasDatabases: !!this.databaseType,
145
+ methods: this.determineBlastMethod()
146
+ });
147
+ }
148
+
149
+ handleDatabaseTypeChanaged(type) {
150
+ this.databaseType = type;
151
+ this.refs.button.setState({
152
+ hasQuery: !this.refs.query.isEmpty(),
153
+ hasDatabases: !!this.databaseType,
154
+ methods: this.determineBlastMethod()
155
+ });
156
+ }
157
+
158
+ handleAlgoChanged(algo) {
159
+ if (algo in this.state.preDefinedOpts) {
160
+ var preDefinedOpts = this.state.preDefinedOpts[algo];
161
+ this.refs.opts.setState({
162
+ method: algo,
163
+ preOpts: preDefinedOpts,
164
+ value: (preDefinedOpts['last search'] ||
165
+ preDefinedOpts['default']).join(' ')
166
+ });
167
+ }
168
+ else {
169
+ this.refs.opts.setState({ preOpts: {}, value: '', method: '' });
170
+ }
171
+ }
172
+
173
+ render() {
174
+ return (
175
+ <div className="container">
176
+ <div id="overlay" style={{ position: 'absolute', top: 0, left: 0, width: '100vw', height: '100vw', background: 'rgba(0, 0, 0, 0.2)', display: 'none', zIndex: 99 }} />
177
+ <form id="blast" ref={this.formRef} onSubmit={this.handleFormSubmission} className="form-horizontal">
178
+ <div className="form-group query-container">
179
+ <SearchQueryWidget ref="query" onSequenceTypeChanged={this.handleSequenceTypeChanged} />
180
+ </div>
181
+ <div className="notifications" id="notifications">
182
+ <NucleotideNotification />
183
+ <ProteinNotification />
184
+ <MixedNotification />
185
+ </div>
186
+ {this.useTreeWidget() ?
187
+ <DatabasesTree ref="databases"
188
+ databases={this.state.databases} tree={this.state.tree}
189
+ preSelectedDbs={this.state.preSelectedDbs}
190
+ onDatabaseTypeChanged={this.handleDatabaseTypeChanaged} />
191
+ :
192
+ <Databases ref="databases" databases={this.state.databases}
193
+ preSelectedDbs={this.state.preSelectedDbs}
194
+ onDatabaseTypeChanged={this.handleDatabaseTypeChanaged} />
195
+ }
196
+ <div className="form-group">
197
+ <Options ref="opts" />
198
+ <div className="col-md-2">
199
+ <div className="form-group" style={{ 'textAlign': 'center', 'padding': '7px 0' }}>
200
+ <label>
201
+ <input type="checkbox" id="toggleNewTab" /> Open results in new tab
202
+ </label>
203
+ </div>
204
+ </div>
205
+ <SearchButton ref="button" onAlgoChanged={this.handleAlgoChanged} />
206
+ </div>
207
+ </form>
208
+ </div>
209
+ );
210
+ }
211
+
212
+ }
213
+
214
+
215
+ class ProteinNotification extends Component {
216
+ render() {
217
+ return (
218
+ <div
219
+ className="notification row"
220
+ id="protein-sequence-notification"
221
+ style={{ display: 'none' }}>
222
+ <div
223
+ className="alert-info col-md-6 col-md-offset-3">
224
+ Detected: amino-acid sequence(s).
225
+ </div>
226
+ </div>
227
+ );
228
+ }
229
+ }
230
+
231
+ class NucleotideNotification extends Component {
232
+ render() {
233
+ return (<div
234
+ className="notification row"
235
+ id="nucleotide-sequence-notification"
236
+ style={{ display: 'none' }}>
237
+ <div
238
+ className="alert-info col-md-6 col-md-offset-3">
239
+ Detected: nucleotide sequence(s).
240
+ </div>
241
+ </div>
242
+ );
243
+ }
244
+ }
245
+
246
+ class MixedNotification extends Component {
247
+ render() {
248
+ return (
249
+ <div
250
+ className="notification row"
251
+ id="mixed-sequence-notification"
252
+ style={{ display: 'none' }}>
253
+ <div
254
+ className="alert-danger col-md-10 col-md-offset-1">
255
+ Error: mixed nucleotide and amino-acid sequences detected.
256
+ </div>
257
+ </div>
258
+ );
259
+ }
260
+ }
data/public/js/grapher.js CHANGED
@@ -1,7 +1,7 @@
1
- import _ from 'underscore';
2
- import React from 'react';
1
+ import _ from "underscore";
2
+ import React, { createRef } from "react";
3
3
 
4
- import './svgExporter'; // create handlers for SVG and PNG download buttons
4
+ import "./svgExporter"; // create handlers for SVG and PNG download buttons
5
5
 
6
6
  // Each instance of Grapher is added to this object once the component has been
7
7
  // mounted. This is so that grapher can be iterated over and redrawn on window
@@ -13,116 +13,123 @@ var Graphers = {};
13
13
  // graphs collapsible, to redraw graphs when window is resized, and SVG and PNG
14
14
  // export buttons and functionality.
15
15
  export default function Grapher(Graph) {
16
+ return class extends React.Component {
17
+ constructor(props) {
18
+ super(props);
19
+ this.state = { collapsed: this.props.collapsed };
20
+ this.svgContainerRef = createRef();
21
+ }
22
+
23
+ collapseId() {
24
+ return Graph.collapseId(this.props);
25
+ }
26
+
27
+ render() {
28
+ var cssClasses = Graph.className() + " grapher";
29
+ return (
30
+ <div ref="grapher" className={cssClasses}>
31
+ <div className="grapher-header">
32
+ <h4
33
+ className="caption"
34
+ data-toggle="collapse"
35
+ data-target={"#" + this.collapseId()}
36
+ >
37
+ {this.state.collapsed ? this.plusIcon() : this.minusIcon()}
38
+ &nbsp;{Graph.name()}
39
+ </h4>
40
+ {!this.state.collapsed && this.graphLinksJSX()}
41
+ </div>
42
+ {this.svgContainerJSX()}
43
+ </div>
44
+ );
45
+ }
46
+
47
+ minusIcon() {
48
+ return <i className="fa fa-minus-square-o"></i>;
49
+ }
50
+
51
+ plusIcon() {
52
+ return <i className="fa fa-plus-square-o"></i>;
53
+ }
54
+
55
+ graphLinksJSX() {
56
+ return (
57
+ <div className="hit-links graph-links">
58
+ <a href="#" className="btn-link export-to-svg">
59
+ <i className="fa fa-download" /> SVG
60
+ </a>
61
+ <span className="line">|</span>
62
+ <a href="#" className="btn-link export-to-png">
63
+ <i className="fa fa-download" /> PNG
64
+ </a>
65
+ </div>
66
+ );
67
+ }
16
68
 
17
- return class extends React.Component {
18
- constructor(props) {
19
- super(props);
20
- this.state = { collapsed: this.props.collapsed };
21
- }
22
-
23
- collapseId () {
24
- return Graph.collapseId(this.props);
25
- }
26
-
27
- render () {
28
- var cssClasses = Graph.className() + ' grapher';
29
- return (
30
- <div ref="grapher" className={cssClasses}>
31
- <div className="grapher-header">
32
- <h4 className="caption" data-toggle="collapse"
33
- data-target={'#'+this.collapseId()}>
34
- { this.state.collapsed ? this.plusIcon() : this.minusIcon() }
35
- &nbsp;{ Graph.name() }
36
- </h4>
37
- { !this.state.collapsed && this.graphLinksJSX() }
38
- </div>
39
- { this.svgContainerJSX() }
40
- </div>
41
- );
42
- }
43
-
44
- minusIcon () {
45
- return (
46
- <i className="fa fa-minus-square-o"></i>
47
- );
48
- }
49
-
50
- plusIcon () {
51
- return (
52
- <i className="fa fa-plus-square-o"></i>
53
- );
54
- }
55
-
56
- graphLinksJSX () {
57
- return (
58
- <div className="hit-links graph-links">
59
- <a href="#" className="btn-link export-to-svg">
60
- <i className="fa fa-download"/> SVG
61
- </a>
62
- <span className="line">|</span>
63
- <a href="#" className="btn-link export-to-png">
64
- <i className="fa fa-download"/> PNG
65
- </a>
66
- </div>
67
- );
68
- }
69
-
70
- svgContainerJSX () {
71
- var cssClasses = Graph.className() + ' svg-container collapse';
72
- if (!this.state.collapsed) cssClasses += ' in';
73
- return (
74
- <div ref="svgContainer" id={this.collapseId()} className={cssClasses}>
75
- </div>
76
- );
77
- }
78
-
79
- componentDidMount () {
80
- Graphers[this.collapseId()] = this;
81
-
82
- // Draw visualisation for the first time. Visualisations are
83
- // redrawn when browser window is resized.
84
- this.draw();
85
- }
86
-
87
- componentDidUpdate () {
88
- // Re-draw visualisation when the component change state.
89
- this.draw();
90
- }
91
-
92
- svgContainer () {
93
- return $(React.findDOMNode(this.refs.svgContainer));
94
- }
95
-
96
- draw () {
97
- // Clean slate.
98
- this.svgContainer().empty();
99
- this.graph = null;
100
-
101
- // Draw if uncollapsed.
102
- if (this.state.collapsed) { return; }
103
- this.graph = new Graph(this.svgContainer(), this.props);
104
- this.svgContainer().find('svg').attr('data-name', Graph.dataName(this.props));
105
- }
106
- };
69
+ svgContainerJSX() {
70
+ var cssClasses = Graph.className() + " svg-container collapse";
71
+ if (!this.state.collapsed) cssClasses += " in";
72
+ return (
73
+ <div
74
+ ref={this.svgContainerRef}
75
+ id={this.collapseId()}
76
+ className={cssClasses}
77
+ ></div>
78
+ );
79
+ }
80
+
81
+ componentDidMount() {
82
+ Graphers[this.collapseId()] = this;
83
+
84
+ // Draw visualisation for the first time. Visualisations are
85
+ // redrawn when browser window is resized.
86
+ this.draw();
87
+ }
88
+
89
+ componentDidUpdate() {
90
+ // Re-draw visualisation when the component change state.
91
+ this.draw();
92
+ }
93
+ svgContainer() {
94
+ return $(this.svgContainerRef.current);
95
+ }
96
+
97
+ draw() {
98
+ // Clean slate.
99
+ this.svgContainer().empty();
100
+ this.graph = null;
101
+
102
+ // Draw if uncollapsed.
103
+ if (this.state.collapsed) {
104
+ return;
105
+ }
106
+ this.graph = new Graph(this.svgContainer(), this.props);
107
+ this.svgContainer()
108
+ .find("svg")
109
+ .attr("data-name", Graph.dataName(this.props));
110
+ }
111
+ };
107
112
  }
108
113
 
109
114
  // Redraw if window resized.
110
- $(window).resize(_.debounce(function () {
115
+ $(window).resize(
116
+ _.debounce(function () {
111
117
  _.each(Graphers, (grapher) => {
112
- grapher.draw();
118
+ grapher.draw();
113
119
  });
114
- }, 125));
120
+ }, 125)
121
+ );
115
122
 
116
123
  // Swap-icon and toggle .graph-links on collapse.
117
- $('body').on('hidden.bs.collapse', '.collapse', function () {
118
- var component = Graphers[$(this).attr('id')];
119
- if (component) {
120
- component.setState({ collapsed: true });
121
- }
124
+ $("body").on("hidden.bs.collapse", ".collapse", function () {
125
+ var component = Graphers[$(this).attr("id")];
126
+ if (component) {
127
+ component.setState({ collapsed: true });
128
+ }
122
129
  });
123
- $('body').on('shown.bs.collapse', '.collapse', function () {
124
- var component = Graphers[$(this).attr('id')];
125
- if (component) {
126
- component.setState({ collapsed: false });
127
- }
130
+ $("body").on("shown.bs.collapse", ".collapse", function () {
131
+ var component = Graphers[$(this).attr("id")];
132
+ if (component) {
133
+ component.setState({ collapsed: false });
134
+ }
128
135
  });