Skip to content

Commit

Permalink
Merge branch 'master' into dependabot/npm_and_yarn/moment-2.29.4
Browse files Browse the repository at this point in the history
  • Loading branch information
scvannost committed Oct 27, 2022
2 parents 0cdfcc6 + b3f4370 commit 200e0b9
Show file tree
Hide file tree
Showing 13 changed files with 112 additions and 45 deletions.
18 changes: 18 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,24 @@ This Changelog tracks changes to this project. The notes below include a summary
- `fixed` for any bug fixes.
- `security` in case of vulnerabilities.

## 27 Oct 2022

- `removed` analysis for ctdna

## 25 Oct 2022

- `added` N/A organization for users

## 17 Oct 2022

- `changed` Data Exploration > Code-based View, update for new templates and permissions scheme
- `fixed` bug in pipelines docs pointing to chips instead of atacseq
- `changed` Data Exploration links to open in new tab

## 14 Sep 2022

- `changed` template download button to point to /templates/assays not /templates/metadata

## 11 Aug 2022

- `changed` clinical data NOT included in cross-assay permissions
Expand Down
96 changes: 68 additions & 28 deletions src/components/data-exploration/code-based/CodeBasedExploration.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ import {
} from "@material-ui/core";
import { useRootStyles } from "../../../rootStyles";
import exampleScreenShot from "../../../img/example-colab-screenshot.png";
import exampleUpsetPlot from "../../../img/example-colab-screenshot.upset.png";

const CodeBasedExplorationPage: React.FC<{
history: any;
Expand Down Expand Up @@ -55,65 +56,98 @@ const CodeBasedExplorationPage: React.FC<{
Some data from CIDC is available for direct querying
and exploration via Google's BigQuery database
system. We provide tables of participant- and
sample-level metadata, including some clinical data.
Additionally, we are working with researchers and
statisticians to support some widely-used and
high-impact assay data tables for direct analysis
with minimal setup.
sample-level metadata. Additionally, we are working
with researchers and statisticians to figure out
some widely-used and high-impact assay data tables
for direct analysis with minimal setup.
</Typography>
<Typography>
These datasets are most easily accessed via python
notebooks hosted on Google's Colaboratory, for which
we have several examples listed below. CIDC will
allow data access for all approved users. Please
contact CIDC at{" "}
we have a few templates and examples listed below.
CIDC enables data access for all approved users.
Please contact CIDC at&nbsp;
<a href="mailto:[email protected]">
[email protected]
</a>{" "}
for access to the data tables. The same data
restrictions and security apply to all data accessed
via this mechanism as via the portal.
</a>
&nbsp; if you have any issues accessing the data
tables. The same data restrictions and security
apply to all data accessed via this mechanism as via
the portal.
</Typography>
</CardContent>
</Card>
</Grid>
<Grid item>
<Card style={{ maxWidth: 1100, width: 1100 }}>
<CardHeader title="Examples" />
<CardHeader title="Templates and Examples" />
<CardContent className="markdown-body">
<ul>
{[
{
name: "Introductory Tutorial",
destination: null
},
{
name: "Participant and sample exploration",
name:
"Template: Upset Plot by Trial and/or Assay",
destination:
"https://colab.research.google.com/drive/1VXVLpLE9_D7fW5cZP4j2jyTOA4q42sJk#scrollTo=R_PNmBI99t4G"
"https://colab.research.google.com/drive/14xys5GrZ7OzCC5eUYMrexM9Imq4szw7o",
description:
"a template meant for copying and modification by the user to generate their own upset plots " +
"showing the number of participants with a given subset of assays across a given subset of trials"
},
{
name:
"Analysis of WES variants for 10021 from filtered .maf files",
"Template: Upset Plot for Collection Events on a Single Trial",
destination:
"https://colab.research.google.com/drive/11BfQsD5QgShJCGWjpnhhq6OPtUVwiPgN"
"https://colab.research.google.com/drive/1kheXUtozN6dcxdrf_U_WtnXUiDBhEMt2",
description:
"a template meant for copying and modification by the user to generate their own upset plots " +
"showing the number of participants with a given subset of collection events across a single trial"
},
{
name:
"Analysis of RNAseq with sample metadata for 10021 from quant.sf",
"Example: Participant and Sample Exploration",
destination:
"https://colab.research.google.com/drive/1mdm4ONM0BwoBCbyGk0N2DVFEDN8Ob9Iw"
"https://colab.research.google.com/drive/1VXVLpLE9_D7fW5cZP4j2jyTOA4q42sJk",
description:
"a demonstration of more complex code-based filtering and exploration of samples and participants"
}
].map(item =>
item.destination == null ? (
item.description == null ? (
<li key={item.name}>
<b>
{item.name} (under construction)
</b>
</li>
) : (
<li key={item.name}>
<b>
{item.name} (under construction)
</b>{" "}
- {item.description}
</li>
)
) : item.description == null ? (
<li key={item.name}>
{item.name} (under construction)
<a
href={item.destination}
target="_blank"
rel="noopener noreferrer"
>
{item.name}
</a>
</li>
) : (
<li key={item.name}>
<a href={item.destination}>
{item.name}
</a>
<b>
<a
href={item.destination}
target="_blank"
rel="noopener noreferrer"
>
{item.name}
</a>
</b>{" "}
- {item.description}
</li>
)
)}
Expand All @@ -128,7 +162,13 @@ const CodeBasedExplorationPage: React.FC<{
<img
src={exampleScreenShot}
alt={
"Screenshot of a Kaplan-Meier curve for trial 10021. One subplot per cohort, one line per trial arm."
"Screenshot of Google Colaboratory interface for Upset Plot Template, showing the top of Section 3. Parameters where you can choose trials to include in the plot."
}
></img>
<img
src={exampleUpsetPlot}
alt={
"Upset plot as generated in Google Colaboratory using the Upset Plot Template."
}
></img>
</CardContent>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -132,7 +132,11 @@ const InteractiveExplorationPage: React.FC<{
}
].map(item => (
<li>
<a href={item.destination}>
<a
href={item.destination}
target="_blank"
rel="noopener noreferrer"
>
{item.name}
</a>
</li>
Expand Down
1 change: 0 additions & 1 deletion src/components/data-overview/DataOverviewPage.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,6 @@ const NONASSAY_FIELDS = [

const ASSAYS_WITH_ANALYSIS = [
"atacseq",
"ctdna",
"cytof",
"rna",
"tcr",
Expand Down
4 changes: 1 addition & 3 deletions src/components/generic/TemplateDownloadButton.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,7 @@ export function nameToURL(
name: string
) {
const fmtedName = name.toLowerCase().replace(" ", "_");
// Assay templates have type "metadata" on the server
const fixedType = type === "assays" ? "metadata" : type;
return `${process.env.REACT_APP_API_URL}/info/templates/${fixedType}/${fmtedName}`;
return `${process.env.REACT_APP_API_URL}/info/templates/${type}/${fmtedName}`;
}

export interface ITemplateDownloadButtonProps extends ButtonProps {
Expand Down
3 changes: 3 additions & 0 deletions src/components/identity/Register.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -178,6 +178,9 @@ const Register: React.FC<RouteComponentProps> = ({ history }) => {
<MenuItem value="ANDERSON">
{ORGANIZATION_NAME_MAP.ANDERSON}
</MenuItem>
<MenuItem value="N/A">
{ORGANIZATION_NAME_MAP["N/A"]}
</MenuItem>
</Select>
</FormControl>
</Grid>
Expand Down
3 changes: 2 additions & 1 deletion src/components/identity/UserProvider.test.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,7 @@ describe("download access", () => {

expect(
await findByText(
role === "network-viewer"
["network-viewer", "pact-user"].includes(role)
? /cannot download/i
: /can download/i
)
Expand Down Expand Up @@ -140,6 +140,7 @@ describe("role-based tab display", () => {

const expectedTabs = [
{ role: "cimac-user", tabs: [] },
{ role: "pact-user", tabs: [] },
{ role: "network-viewer", tabs: [] },
{ role: "cimac-biofx-user", tabs: ["transfer data"] },
{ role: "cidc-biofx-user", tabs: ["transfer data", "analyses"] },
Expand Down
3 changes: 2 additions & 1 deletion src/components/identity/UserProvider.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,8 @@ const UserProvider: React.FunctionComponent<RouteComponentProps> = props => {
user?.role && ["nci-biobank-user", "cidc-admin"].includes(user.role);
const showAnalyses =
user?.role && ["cidc-biofx-user", "cidc-admin"].includes(user.role);
const canDownload = user?.role !== "network-viewer";
const canDownload =
user?.role && !["network-viewer", "pact-user"].includes(user.role);

const value =
authData.state === "logged-in" && user && permissions
Expand Down
14 changes: 7 additions & 7 deletions src/components/pipelines/PipelinesPage.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -38,10 +38,10 @@ const pipelineMarkdowns = {
/>
</div>
),
chips: (
<div role="document" id="chips-docs">
atacseq: (
<div role="document" id="atacseq-docs">
<CIDCGithubMarkdown
path={`cidc-ngs-pipeline-api/master/cidc_ngs_pipeline_api/chips/chips.md`}
path={`cidc-ngs-pipeline-api/master/cidc_ngs_pipeline_api/atacseq/atacseq.md`}
/>
</div>
)
Expand Down Expand Up @@ -75,18 +75,18 @@ const PipelinesPage: React.FC<RouteComponentProps> = props => {
path={`/pipelines/rna`}
/>
<DocsListItem
label={"WES (Whole Exome Sequencing"}
label={"WES (Whole Exome Sequencing) Analysis"}
path={`/pipelines/wes`}
/>
<DocsListItem
label={
"TCR (T-cell Receptor Repertoire Analysis)"
"TCR (T-cell Receptor) Repertoire Analysis"
}
path={`/pipelines/tcr`}
/>
<DocsListItem
label={"CHIPS ATAC-seq Analysis"}
path={`/pipelines/chips`}
label={"ATAC-seq Analysis"}
path={`/pipelines/atacseq`}
/>
</List>
</Grid>
Expand Down
Binary file modified src/img/example-colab-screenshot.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added src/img/example-colab-screenshot.upset.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 2 additions & 1 deletion src/model/account.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,8 @@ type Role =
| "devops"
| "nci-biobank-user"
| "system"
| "network-viewer";
| "network-viewer"
| "pact-user";

type Organization = "CIDC" | "DFCI" | "ICAHN" | "STANFORD" | "ANDERSON";

Expand Down
6 changes: 4 additions & 2 deletions src/util/constants.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,8 @@ export const ORGANIZATION_NAME_MAP = {
CIDC: "Dana-Farber Cancer Institute (CIDC)",
ICAHN: "Icahn School of Medicine at Mount Sinai (CIMAC)",
STANFORD: "Stanford Cancer Institute (CIMAC)",
ANDERSON: "MD Anderson Cancer Center (CIMAC)"
ANDERSON: "MD Anderson Cancer Center (CIMAC)",
"N/A": "Not Applicable"
};

export const ROLES = [
Expand All @@ -14,7 +15,8 @@ export const ROLES = [
"developer",
"devops",
"nci-biobank-user",
"network-viewer"
"network-viewer",
"pact-user"
];

export const DATE_OPTIONS = {
Expand Down

0 comments on commit 200e0b9

Please sign in to comment.