diff --git a/package-lock.json b/package-lock.json
index 441d637ee..fac506d18 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -4507,9 +4507,9 @@
"integrity": "sha1-GzN5LhHpFKL9bW7WRHRkRE5fpkA="
},
"cytoscape": {
- "version": "3.3.3",
- "resolved": "https://registry.npmjs.org/cytoscape/-/cytoscape-3.3.3.tgz",
- "integrity": "sha512-6O+/o4Pb8hSqPLzpDveIRO63EjLLm4Y/PgOyGe/CqBDS4ptfwhheIo/+YG9K+K3DgbdP0RgUQii/dYY9vwKQew==",
+ "version": "3.10.0",
+ "resolved": "https://registry.npmjs.org/cytoscape/-/cytoscape-3.10.0.tgz",
+ "integrity": "sha512-lWOnG4HJQD0cy+tCiBmbV/QRknInuZ8HvjcUifQZ7E4LWmKMvl6d5eP0LaaRLfBJAplXWcJfwc17ZJ/nwPeaYg==",
"requires": {
"heap": "^0.2.6",
"lodash.debounce": "^4.0.8"
@@ -4523,6 +4523,11 @@
"webcola": "^3.3.6"
}
},
+ "cytoscape-context-menus": {
+ "version": "3.0.6",
+ "resolved": "https://registry.npmjs.org/cytoscape-context-menus/-/cytoscape-context-menus-3.0.6.tgz",
+ "integrity": "sha512-eRsAIg/HYOZOUfTvBK4L0t9ikdRuQULoB8ilB8AZ9D7zGfRjQip/quDH/H20n3IFMe6pb9XYAwVMHWZtlMjR1w=="
+ },
"d": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz",
@@ -4538,18 +4543,18 @@
"integrity": "sha512-vwKx+lAqB1UuCeklr6Jh1bvC4SZgbSqbkGBLClItFBIYH4vqDJCA7qfoy14lXmJdnBOdxndAMxjCbImJYW7e6g=="
},
"d3-drag": {
- "version": "1.2.3",
- "resolved": "https://registry.npmjs.org/d3-drag/-/d3-drag-1.2.3.tgz",
- "integrity": "sha512-8S3HWCAg+ilzjJsNtWW1Mutl74Nmzhb9yU6igspilaJzeZVFktmY6oO9xOh5TDk+BM2KrNFjttZNoJJmDnkjkg==",
+ "version": "1.2.4",
+ "resolved": "https://registry.npmjs.org/d3-drag/-/d3-drag-1.2.4.tgz",
+ "integrity": "sha512-ICPurDETFAelF1CTHdIyiUM4PsyZLaM+7oIBhmyP+cuVjze5vDZ8V//LdOFjg0jGnFIZD/Sfmk0r95PSiu78rw==",
"requires": {
"d3-dispatch": "1",
"d3-selection": "1"
}
},
"d3-path": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/d3-path/-/d3-path-1.0.7.tgz",
- "integrity": "sha512-q0cW1RpvA5c5ma2rch62mX8AYaiLX0+bdaSM2wxSU9tXjU4DNvkx9qiUvjkuWCj3p22UO/hlPivujqMiR9PDzA=="
+ "version": "1.0.8",
+ "resolved": "https://registry.npmjs.org/d3-path/-/d3-path-1.0.8.tgz",
+ "integrity": "sha512-J6EfUNwcMQ+aM5YPOB8ZbgAZu6wc82f/0WFxrxwV6Ll8wBwLaHLKCqQ5Imub02JriCVVdPjgI+6P3a4EWJCxAg=="
},
"d3-selection": {
"version": "1.4.0",
@@ -4605,10 +4610,9 @@
}
},
"date-fns": {
- "version": "1.30.1",
- "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-1.30.1.tgz",
- "integrity": "sha512-hBSVCvSmWC+QypYObzwGOd9wqdDpOt+0wl0KbU+R+uuZBS1jN8VsD1ss3irQDknRj5NvxiTF6oj/nDRnN/UQNw==",
- "dev": true
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.0.1.tgz",
+ "integrity": "sha512-C14oTzTZy8DH1Eq8N78owrCWvf3+cnJw88BTK/N3DYWVxDJuJzPaNdplzYxDYuuXXGvqBcO4Vy5SOrwAooXSWw=="
},
"date-now": {
"version": "0.1.4",
@@ -24095,6 +24099,11 @@
"resolved": "https://registry.npmjs.org/jmespath/-/jmespath-0.15.0.tgz",
"integrity": "sha1-o/Iiqarp+Wb10nx5ZRDigJF2Qhc="
},
+ "jquery": {
+ "version": "3.4.1",
+ "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.4.1.tgz",
+ "integrity": "sha512-36+AdBzCL+y6qjw5Tx7HgzeGCzC81MDDgaUP8ld2zhx58HdqXGoBd+tHdrBMiyjGQs0Hxs/MLZTu/eHNJJuWPw=="
+ },
"js-cookie": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/js-cookie/-/js-cookie-2.2.0.tgz",
@@ -24978,6 +24987,14 @@
"cli-cursor": "^2.1.0",
"date-fns": "^1.27.2",
"figures": "^2.0.0"
+ },
+ "dependencies": {
+ "date-fns": {
+ "version": "1.30.1",
+ "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-1.30.1.tgz",
+ "integrity": "sha512-hBSVCvSmWC+QypYObzwGOd9wqdDpOt+0wl0KbU+R+uuZBS1jN8VsD1ss3irQDknRj5NvxiTF6oj/nDRnN/UQNw==",
+ "dev": true
+ }
}
},
"load-json-file": {
@@ -26160,6 +26177,17 @@
"resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-3.3.0.tgz",
"integrity": "sha512-U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg=="
},
+ "notistack": {
+ "version": "0.8.9",
+ "resolved": "https://registry.npmjs.org/notistack/-/notistack-0.8.9.tgz",
+ "integrity": "sha512-nRHQVWUfgHnvnKrjRbRX9f+YAnbyh96yRyO5bEP/FCLVLuTZcJOwUr0GZ7Xr/8wK3+hXa9JYpXUkUhSxj1K8NQ==",
+ "requires": {
+ "classnames": "^2.2.6",
+ "hoist-non-react-statics": "^3.3.0",
+ "prop-types": "^15.7.2",
+ "react-is": "^16.8.6"
+ }
+ },
"now-and-later": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/now-and-later/-/now-and-later-2.0.1.tgz",
@@ -26614,6 +26642,11 @@
"resolved": "https://registry.npmjs.org/pako/-/pako-1.0.10.tgz",
"integrity": "sha512-0DTvPVU3ed8+HNXOu5Bs+o//Mbdj9VNQMUOe9oKCwh8l0GNwpTDMKCWbRjgtD291AWnkAgkqA/LOnQS8AmS1tw=="
},
+ "papaparse": {
+ "version": "5.0.2",
+ "resolved": "https://registry.npmjs.org/papaparse/-/papaparse-5.0.2.tgz",
+ "integrity": "sha512-FoaaFfNlCztJ7c+XD1Fgb0zIJ530HwSr6FBfM1mcMzLtIWoTxE5paBNJWiCWFjDrTzGiEG/uIUfqVzgKxqd+Sw=="
+ },
"parallel-transform": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.1.0.tgz",
diff --git a/package.json b/package.json
index 073c3aad5..911058625 100644
--- a/package.json
+++ b/package.json
@@ -10,16 +10,22 @@
"@material-ui/styles": "^4.0.2",
"aws-amplify": "^1.1.28",
"clsx": "^1.0.4",
- "cytoscape": "^3.3.3",
+ "color": "^3.1.2",
+ "cytoscape": "^3.10.0",
"cytoscape-cola": "^2.3.0",
+ "cytoscape-context-menus": "^3.0.6",
+ "date-fns": "^2.0.1",
"google-protobuf": "^3.8.0",
"history": "^4.9.0",
"html2canvas": "^1.0.0-alpha.12",
+ "jquery": "^3.4.1",
"lodash": "latest",
"material-design-icons": "^3.0.1",
"material-ui": "^1.0.0-beta.47",
"material-ui-flat-pagination": "^3.2.0",
"material-ui-rating": "^3.1.1",
+ "notistack": "^0.8.9",
+ "papaparse": "^5.0.2",
"react": "^16.8.6",
"react-dom": "^16.8.6",
"react-dropzone": "^8.0.4",
@@ -35,7 +41,8 @@
"redux": "^4.0.1",
"redux-thunk": "^2.3.0",
"snet-sdk-web": "^1.0.0-beta.6",
- "utf8": "^3.0.0"
+ "utf8": "^3.0.0",
+ "validate.js": "^0.13.1"
},
"scripts": {
"start": "react-scripts start",
diff --git a/src/assets/images/ThirdPartyServices/snet/text_generation/BarackObama.jpg b/src/assets/images/ThirdPartyServices/snet/text_generation/BarackObama.jpg
new file mode 100644
index 000000000..546c2cc3e
Binary files /dev/null and b/src/assets/images/ThirdPartyServices/snet/text_generation/BarackObama.jpg differ
diff --git a/src/assets/images/ThirdPartyServices/snet/text_generation/BarackObama_avatar.jpg b/src/assets/images/ThirdPartyServices/snet/text_generation/BarackObama_avatar.jpg
new file mode 100644
index 000000000..d3e5529dc
Binary files /dev/null and b/src/assets/images/ThirdPartyServices/snet/text_generation/BarackObama_avatar.jpg differ
diff --git a/src/assets/thirdPartyServices/index.js b/src/assets/thirdPartyServices/index.js
index 29c355655..9b23645c2 100644
--- a/src/assets/thirdPartyServices/index.js
+++ b/src/assets/thirdPartyServices/index.js
@@ -45,7 +45,6 @@ const SiggraphColorization = lazy(() => import("./snet/siggraph_colorization"));
const TextGeneration = lazy(() => import("./snet/text_generation"));
const PneumoniaDiagnosis = lazy(() => import("./snet/pneumonia_diagnosis"));
-
const AlertBox = lazy(() => import("../../components/common/AlertBox"));
class ThirdPartyCustomUIComponents {
@@ -122,5 +121,4 @@ addSnetCustomUI("siggraph-colorization", SiggraphColorization);
addSnetCustomUI("text-generation", TextGeneration);
addSnetCustomUI("pneumonia-diagnosis", PneumoniaDiagnosis);
-
export default thirdPartyCustomUIComponents;
diff --git a/src/assets/thirdPartyServices/snet/gene_annotation_service/AnnotationResultDownload.js b/src/assets/thirdPartyServices/snet/gene_annotation_service/AnnotationResultDownload.js
deleted file mode 100644
index 2a66942a1..000000000
--- a/src/assets/thirdPartyServices/snet/gene_annotation_service/AnnotationResultDownload.js
+++ /dev/null
@@ -1,30 +0,0 @@
-import React from "react";
-import logo from "./mozi_globe.png";
-import { Grid, Button, Typography } from "@material-ui/core";
-import { ArrowDownward } from "@material-ui/icons";
-
-export default class AnnotationResultDownload extends React.Component {
- render() {
- return (
-
Use the checkboxes to the right to filter the graph by annotations.
-Click on a gene node to see annotations connected to it.
-Click on an annotation to see which genes it annotates.
-{this.formatDescription(this.state.selectedNode.node.definition)}
-{content}
+Use the checkboxes to the right to filter the graph by annotations and node types.
+Right click on a node to perform actions on it.
+You may download the graph JSON and view it on Cytoscape desktop.
+The search is case sensitive.
++ {i + 1} -{" "} + + Learn more + +
+ )) + )} + {filteredElements && renderFilterControls()} +{value}
- For this demo you will be asked to input a text content and the persona you would like the tweet to come from. + For this demo you will be asked to input a text content and the persona you would like the tweet to come + from.
Check out the @@ -273,7 +231,14 @@ class TextGenerationService extends React.Component {