diff --git a/ADMIN.md b/ADMIN.md
new file mode 100644
index 0000000..05b0a26
--- /dev/null
+++ b/ADMIN.md
@@ -0,0 +1,44 @@
+## Adding new Disease Cell Lines through the admin CMS
+
+### Relational dependancies
+
+`Disease cell lines` reference:
+
+ 1. `Modeled diseases`
+ 2. `Cell lines`
+
+`Modeled diseases` reference
+
+ 1. `Gene names`
+
+`Cell lines` reference
+
+ 1. `Gene names`
+
+![Untitled](https://github.com/allen-cell-animated/cell-catalog/assets/5170636/7625a706-1c26-437d-850a-9ea494ee5a81)
+
+
+1. **Login to the Admin CMS**: Open your web browser and navigate to the admin CMS URL. Use github to sign in.
+
+2. **Before you start**: Before you add a new cell line you need to make sure you have already added:
+ 1. **the disease** the cell line is modeling. If you it is not yet in the database, go to the section on adding a disease and then continue here.
+ 2. **the parental/base cell line**. If it is not yet in the database, go to the section on adding a cell line and then continue here.
+
+3. **Add New Disease Cell Line**: Click the button "Add new disease cell line"
+
+4. **Enter Disease Cell Line Details**: If this cell line is not ready to be on the website, leave the status as is.
+
+5. **Save the New Disease Cell Line**: From the "Publish" dropdown click "Publish now"
+
+## Adding new Disease through the admin CMS
+1. **Before you start**: Before you add a new disease you need to make sure you have already added **the gene** the disease model is based on. If you it is not yet in the database, go to the section on adding a gene and then continue here.
+
+## Adding new Normal Cell Line through the admin CMS
+1. **Before you start**: Before you add a new disease you need to make sure you have already added **the gene** the disease model is based on. If you it is not yet in the database, go to the section on adding a gene and then continue here.
+
+2. **Add new Normal Cell Line**: Go to the cell line section, click the button "Add new cell line"
+5. **Save the Normal Cell Line**: From the "Publish" dropdown click "Publish now"
+
+## Adding new Gene through the admin CMS
+1. Click on **Gene and structures names** and click on "New Gene and structure name" or select it from the "Quick add" menu
+2. Add the gene symbol and gene name
diff --git a/README.md b/README.md
index d555225..7c48ace 100644
--- a/README.md
+++ b/README.md
@@ -29,3 +29,9 @@ Media Libraries have been included in this starter as a default.
Contributions are always welcome, no matter how large or small. Before contributing,
please read the [code of conduct](CODE_OF_CONDUCT.md).
+
+## Development
+See [contributing guide](CONTRIBUTING.md)
+
+## Changes to the content
+see [admin guide](ADMIN.md)
\ No newline at end of file
diff --git a/gatsby-config.js b/gatsby-config.js
index 4575e1a..9db4591 100644
--- a/gatsby-config.js
+++ b/gatsby-config.js
@@ -41,6 +41,7 @@ module.exports = {
`gatsby-plugin-image`,
"gatsby-plugin-sharp",
"gatsby-transformer-sharp",
+ 'gatsby-plugin-react-svg',
{
resolve: "gatsby-transformer-remark",
options: {
diff --git a/package.json b/package.json
index f9158db..515447e 100644
--- a/package.json
+++ b/package.json
@@ -15,6 +15,7 @@
"gatsby-plugin-netlify": "^5.0.0",
"gatsby-plugin-purgecss": "^6.0.0",
"gatsby-plugin-react-helmet": "^6.13.1",
+ "gatsby-plugin-react-svg": "^3.3.0",
"gatsby-plugin-sass": "^6.13.1",
"gatsby-plugin-sharp": "^5.13.1",
"gatsby-remark-copy-linked-files": "^6.13.1",
diff --git a/src/components/DiseaseTable.tsx b/src/components/DiseaseTable.tsx
index a08cd08..3349867 100644
--- a/src/components/DiseaseTable.tsx
+++ b/src/components/DiseaseTable.tsx
@@ -1,10 +1,14 @@
import React from "react";
import { Table, Tag, Flex } from "antd";
+import Icon from "@ant-design/icons";
import Content from "./Content";
import { UnpackedDiseaseCellLine } from "../component-queries/DiseaseCellLines";
import { formatCellLineId } from "../utils";
+const Tube = require("../img/tube.svg");
+const CertificateIcon = require("../img/cert-icon.svg");
+
import {
tableTitle,
container,
@@ -13,6 +17,8 @@ import {
clones,
comingSoon,
} from "../style/disease-table.module.css";
+import { WHITE } from "./Layout";
+import { Certificate } from "crypto";
interface DiseaseTableProps {
diseaseName: string;
@@ -92,7 +98,13 @@ const DiseaseTable = ({
} else {
return (
- Obtain Line
+
+
+ Obtain Line
+
);
}
@@ -110,7 +122,13 @@ const DiseaseTable = ({
href={certificate_of_analysis.publicURL}
target="_blank"
>
- Cert. of Analysis
+
+
+ Cert. of Analysis
+
)
);
diff --git a/src/components/Layout.tsx b/src/components/Layout.tsx
index 9f5ac4b..00f6ccb 100644
--- a/src/components/Layout.tsx
+++ b/src/components/Layout.tsx
@@ -11,7 +11,7 @@ import { container } from "../style/layout.module.css";
const OFF_WHITE = "#F2F2F2";
const DARK_BLUE = "#00215F";
-const WHITE = "#FFFFFF";
+export const WHITE = "#FFFFFF";
const LIGHT_BLUE = "#E5E9F1";
const DARK_GRAY = "#CBCBCC";
const LIGHT_GRAY = "#323233";
diff --git a/src/img/cert-icon.svg b/src/img/cert-icon.svg
new file mode 100644
index 0000000..597790e
--- /dev/null
+++ b/src/img/cert-icon.svg
@@ -0,0 +1,6 @@
+
diff --git a/src/img/tube.svg b/src/img/tube.svg
new file mode 100644
index 0000000..eaf740d
--- /dev/null
+++ b/src/img/tube.svg
@@ -0,0 +1,8 @@
+
diff --git a/yarn.lock b/yarn.lock
index d1bcb5a..c30e43c 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -5044,6 +5044,11 @@ better-opn@^2.1.1:
dependencies:
open "^7.0.3"
+big.js@^3.1.3:
+ version "3.2.0"
+ resolved "https://registry.yarnpkg.com/big.js/-/big.js-3.2.0.tgz#a5fc298b81b9e0dca2e458824784b65c52ba588e"
+ integrity sha512-+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q==
+
big.js@^5.2.2:
version "5.2.2"
resolved "https://registry.yarnpkg.com/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328"
@@ -6486,7 +6491,7 @@ css.escape@^1.5.1:
resolved "https://registry.yarnpkg.com/css.escape/-/css.escape-1.5.1.tgz#42e27d4fa04ae32f931a4b4d4191fa9cddee97cb"
integrity sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg==
-css@^2.0.0:
+css@2.2.4, css@^2.0.0:
version "2.2.4"
resolved "https://registry.yarnpkg.com/css/-/css-2.2.4.tgz#c646755c73971f2bba6a601e2cf2fd71b1298929"
integrity sha512-oUnjmWpy0niI3x/mPL8dVEI1l7MnG3+HHyRPHf+YFSbK+svOhXpmSOcDURUh2aOCgl2grzrOPt1nHLuCVFULLw==
@@ -7512,6 +7517,11 @@ emoji-regex@^9.2.2:
resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-9.2.2.tgz#840c8803b0d8047f4ff0cf963176b32d4ef3ed72"
integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==
+emojis-list@^2.0.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-2.1.0.tgz#4daa4d9db00f9819880c79fa457ae5b09a1fd389"
+ integrity sha512-knHEZMgs8BB+MInokmNTg/OyPlAddghe1YBgNwJBc5zsJi/uyIcXoSDsL/W9ymOsBoBGdPIHXYJ9+qKFwRwDng==
+
emojis-list@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-3.0.0.tgz#5570662046ad29e2e916e71aae260abdff4f6a78"
@@ -9180,6 +9190,13 @@ gatsby-plugin-react-helmet@^6.13.1:
dependencies:
"@babel/runtime" "^7.20.13"
+gatsby-plugin-react-svg@^3.3.0:
+ version "3.3.0"
+ resolved "https://registry.yarnpkg.com/gatsby-plugin-react-svg/-/gatsby-plugin-react-svg-3.3.0.tgz#1dad8594ecd6ffd86e5ff45e1b9365367c999c44"
+ integrity sha512-kFPElMFu1QCkiFCm1pSrVkOHAeafU6wkD0qCVPs7nL/Txh5KFh0aOO6Feiwvfre1Jo+Eg3lwCuGmgsy9L+4pDg==
+ dependencies:
+ svg-react-loader "^0.4.6"
+
gatsby-plugin-sass@^6.13.1:
version "6.13.1"
resolved "https://registry.yarnpkg.com/gatsby-plugin-sass/-/gatsby-plugin-sass-6.13.1.tgz#13fa6a4b95aee7c1bf3e69c017ae9c8e1a0abf49"
@@ -11493,6 +11510,11 @@ json2mq@^0.2.0:
dependencies:
string-convert "^0.2.0"
+json5@^0.5.0:
+ version "0.5.1"
+ resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821"
+ integrity sha512-4xrs1aW+6N5DalkqSVA8fxh458CXvR99WU8WLKmq4v8eWAL86Xo3BVqyd3SkA9wEVjCMqyvvRRkshAdOnBp5rw==
+
json5@^1.0.1, json5@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.2.tgz#63d98d60f21b313b77c4d6da18bfa69d80e1d593"
@@ -11811,6 +11833,15 @@ loader-runner@^4.2.0:
resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-4.3.0.tgz#c1b4a163b99f614830353b16755e7149ac2314e1"
integrity sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==
+loader-utils@1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.1.0.tgz#c98aef488bcceda2ffb5e2de646d6a754429f5cd"
+ integrity sha512-gkD9aSEG9UGglyPcDJqY9YBTUtCLKaBK6ihD2VP1d1X60lTfFspNZNulGBBbUZLkPygy4LySYHyxBpq+VhjObQ==
+ dependencies:
+ big.js "^3.1.3"
+ emojis-list "^2.0.0"
+ json5 "^0.5.0"
+
loader-utils@^1.2.3:
version "1.4.2"
resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.4.2.tgz#29a957f3a63973883eb684f10ffd3d151fec01a3"
@@ -12004,7 +12035,7 @@ lodash.uniq@^4.5.0:
resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773"
integrity sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==
-lodash@4.17.21, lodash@^4.0.1, lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.12, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.17.4, lodash@~4.17.0:
+lodash@4.17.21, lodash@^4.0.0, lodash@^4.0.1, lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.12, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.17.4, lodash@~4.17.0:
version "4.17.21"
resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c"
integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==
@@ -14886,6 +14917,11 @@ radix3@^1.1.0:
resolved "https://registry.yarnpkg.com/radix3/-/radix3-1.1.0.tgz#9745df67a49c522e94a33d0a93cf743f104b6e0d"
integrity sha512-pNsHDxbGORSvuSScqNJ+3Km6QAVqk8CfsCBIEoDgpqLrkD2f3QM4I7d1ozJJ172OmIcoUcerZaNWqtLkRXTV3A==
+ramda@0.21.0:
+ version "0.21.0"
+ resolved "https://registry.yarnpkg.com/ramda/-/ramda-0.21.0.tgz#a001abedb3ff61077d4ff1d577d44de77e8d0a35"
+ integrity sha512-HGd5aczYKQXGILB+abY290V7Xz62eFajpa6AtMdwEmQSakJmgSO7ks4eI3HdR34j+X2Vz4Thp9VAJbrCAMbO2w==
+
random-bytes@~1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/random-bytes/-/random-bytes-1.0.0.tgz#4f68a1dc0ae58bd3fb95848c30324db75d64360b"
@@ -16362,6 +16398,11 @@ rw@^1.3.3:
resolved "https://registry.yarnpkg.com/rw/-/rw-1.3.3.tgz#3f862dfa91ab766b14885ef4d01124bfda074fb4"
integrity sha512-PdhdWy89SiZogBLaw42zdeqtRJ//zFd2PgQavcICDUgJT5oW10QCRKbJ6bg4r0/UY2M6BWd5tkxuGFRvCkgfHQ==
+rx@4.1.0:
+ version "4.1.0"
+ resolved "https://registry.yarnpkg.com/rx/-/rx-4.1.0.tgz#a5f13ff79ef3b740fe30aa803fb09f98805d4782"
+ integrity sha512-CiaiuN6gapkdl+cZUr67W6I8jquN4lkak3vtIsIWCl4XIPP8ffsoyN6/+PuGXnQy8Cu8W2y9Xxh31Rq4M6wUug==
+
rxjs@^6.4.0, rxjs@^6.6.0, rxjs@^6.6.2:
version "6.6.7"
resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.6.7.tgz#90ac018acabf491bf65044235d5863c4dab804c9"
@@ -16475,7 +16516,7 @@ sass@^1.70.0:
immutable "^4.0.0"
source-map-js ">=0.6.2 <2.0.0"
-sax@^1.2.4, sax@~1.3.0:
+sax@>=0.6.0, sax@^1.2.4, sax@~1.3.0:
version "1.3.0"
resolved "https://registry.yarnpkg.com/sax/-/sax-1.3.0.tgz#a5dbe77db3be05c9d1ee7785dbd3ea9de51593d0"
integrity sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA==
@@ -17514,6 +17555,18 @@ supports-preserve-symlinks-flag@^1.0.0:
resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09"
integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==
+svg-react-loader@^0.4.6:
+ version "0.4.6"
+ resolved "https://registry.yarnpkg.com/svg-react-loader/-/svg-react-loader-0.4.6.tgz#b263efb3e3d2fff4c682a729351aba5f185051a1"
+ integrity sha512-HVEypjWQsQuJdBIPzXGxpmQsQts7QwfQuYgK1rah6BVCMoLNSCh/ESKVNd7/tHq8DkWYHHTyaUMDA1FjqZYrgA==
+ dependencies:
+ css "2.2.4"
+ loader-utils "1.1.0"
+ ramda "0.21.0"
+ rx "4.1.0"
+ traverse "0.6.6"
+ xml2js "0.4.17"
+
svgo@^2.7.0:
version "2.8.0"
resolved "https://registry.yarnpkg.com/svgo/-/svgo-2.8.0.tgz#4ff80cce6710dc2795f0c7c74101e6764cfccd24"
@@ -17895,6 +17948,11 @@ tr46@~0.0.3:
resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a"
integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==
+traverse@0.6.6:
+ version "0.6.6"
+ resolved "https://registry.yarnpkg.com/traverse/-/traverse-0.6.6.tgz#cbdf560fd7b9af632502fed40f918c157ea97137"
+ integrity sha512-kdf4JKs8lbARxWdp7RKdNzoJBhGUcIalSYibuGyHJbmk40pOysQ0+QPvlkCOICOivDWU2IJo2rkrxyTK2AH4fw==
+
traverse@^0.6.6:
version "0.6.8"
resolved "https://registry.yarnpkg.com/traverse/-/traverse-0.6.8.tgz#5e5e0c41878b57e4b73ad2f3d1e36a715ea4ab15"
@@ -19185,6 +19243,21 @@ xml-utils@^1.0.2:
resolved "https://registry.yarnpkg.com/xml-utils/-/xml-utils-1.7.0.tgz#333ce391d8918f872aaf98d2cf90f9ef9b82bd0f"
integrity sha512-bWB489+RQQclC7A9OW8e5BzbT8Tu//jtAOvkYwewFr+Q9T9KDGvfzC1lp0pYPEQPEoPQLDkmxkepSC/2gIAZGw==
+xml2js@0.4.17:
+ version "0.4.17"
+ resolved "https://registry.yarnpkg.com/xml2js/-/xml2js-0.4.17.tgz#17be93eaae3f3b779359c795b419705a8817e868"
+ integrity sha512-1O7wk/NTQN0UEOItIYTxK4qP4sMUVU60MbF4Nj0a8jd6eebMXOicVI/KFOEsYKKH4uBpx6XG9ZGZctXK5rtO5Q==
+ dependencies:
+ sax ">=0.6.0"
+ xmlbuilder "^4.1.0"
+
+xmlbuilder@^4.1.0:
+ version "4.2.1"
+ resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-4.2.1.tgz#aa58a3041a066f90eaa16c2f5389ff19f3f461a5"
+ integrity sha512-oEePiEefhQhAeUnwRnIBLBWmk/fsWWbQ53EEWsRuzECbQ3m5o/Esmq6H47CYYwSLW+Ynt0rS9hd0pd2ogMAWjg==
+ dependencies:
+ lodash "^4.0.0"
+
xmlhttprequest-ssl@~2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/xmlhttprequest-ssl/-/xmlhttprequest-ssl-2.0.0.tgz#91360c86b914e67f44dce769180027c0da618c67"