mirror of
https://github.com/chanzuckerberg/cellxgene.git
synced 2026-10-09 08:38:12 +08:00
add geneset, add gene, delete set
This commit is contained in:
@@ -6,8 +6,8 @@ const ErrorLoading = ({ displayName, error, zebra }) => {
|
|||||||
return (
|
return (
|
||||||
<div
|
<div
|
||||||
style={{
|
style={{
|
||||||
padding: globals.leftSidebarSectionPadding,
|
|
||||||
backgroundColor: zebra ? globals.lightestGrey : "white",
|
backgroundColor: zebra ? globals.lightestGrey : "white",
|
||||||
|
fontStyle: "italic",
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
<span>{`Failure loading ${displayName}`}</span>
|
<span>{`Failure loading ${displayName}`}</span>
|
||||||
|
|||||||
@@ -121,6 +121,7 @@ class GeneSet extends React.Component {
|
|||||||
onKeyPress={/* todo_genesets */ () => {}}
|
onKeyPress={/* todo_genesets */ () => {}}
|
||||||
style={{
|
style={{
|
||||||
cursor: "pointer",
|
cursor: "pointer",
|
||||||
|
userSelect: "none",
|
||||||
}}
|
}}
|
||||||
onClick={this.onGenesetMenuClick}
|
onClick={this.onGenesetMenuClick}
|
||||||
>
|
>
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ class AddGeneToGenesetDialogue extends React.PureComponent {
|
|||||||
constructor(props) {
|
constructor(props) {
|
||||||
super(props);
|
super(props);
|
||||||
this.state = {
|
this.state = {
|
||||||
// genesToAdd: [],
|
genesToAdd: "",
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -21,8 +21,28 @@ class AddGeneToGenesetDialogue extends React.PureComponent {
|
|||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
handleAddGeneToGeneSet = (e) => {
|
||||||
|
const { geneset, dispatch } = this.props;
|
||||||
|
const { genesToAdd } = this.state;
|
||||||
|
dispatch({
|
||||||
|
type: "geneset: add genes",
|
||||||
|
name: geneset,
|
||||||
|
genes: genesToAdd.split(","),
|
||||||
|
});
|
||||||
|
dispatch({
|
||||||
|
type: "geneset: disable add new genes mode",
|
||||||
|
});
|
||||||
|
if (e) e.preventDefault();
|
||||||
|
};
|
||||||
|
|
||||||
|
handleChange = (e) => {
|
||||||
|
console.log(e);
|
||||||
|
this.setState({ genesToAdd: e });
|
||||||
|
};
|
||||||
|
|
||||||
render() {
|
render() {
|
||||||
const { geneset, genesetsUI } = this.props;
|
const { geneset, genesetsUI } = this.props;
|
||||||
|
const { genesToAdd } = this.state;
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
@@ -32,19 +52,15 @@ class AddGeneToGenesetDialogue extends React.PureComponent {
|
|||||||
primaryButtonProps={{
|
primaryButtonProps={{
|
||||||
"data-testid": `${geneset}:submit-label`,
|
"data-testid": `${geneset}:submit-label`,
|
||||||
}}
|
}}
|
||||||
title="Add gene to geneset"
|
title="Add genes to geneset"
|
||||||
instruction={`Add gene to ${geneset}`}
|
instruction={`Add gene to ${geneset}`}
|
||||||
cancelTooltipContent="Close this dialog without adding genes to geneset."
|
cancelTooltipContent="Close this dialog without adding genes to geneset."
|
||||||
primaryButtonText="Add Gene(s)"
|
primaryButtonText="Add genes"
|
||||||
text="todo"
|
text={genesToAdd}
|
||||||
validationError={() => {
|
validationError={false}
|
||||||
/* todo genesets this.labelNameError(genesetName) */
|
|
||||||
return false;
|
|
||||||
}}
|
|
||||||
annoInput={
|
annoInput={
|
||||||
<LabelInput
|
<LabelInput
|
||||||
onChange={this.handleChange}
|
onChange={this.handleChange}
|
||||||
onSelect={this.handleSelect}
|
|
||||||
inputProps={{
|
inputProps={{
|
||||||
"data-testid": "add-genes",
|
"data-testid": "add-genes",
|
||||||
leftIcon: "manually-entered-data",
|
leftIcon: "manually-entered-data",
|
||||||
|
|||||||
@@ -35,7 +35,10 @@ class CreateGenesetDialogue extends React.PureComponent {
|
|||||||
const { dispatch } = this.props;
|
const { dispatch } = this.props;
|
||||||
const { genesetName } = this.state;
|
const { genesetName } = this.state;
|
||||||
|
|
||||||
dispatch({ type: "geneset: create", genesetName });
|
dispatch({ type: "geneset: create", name: genesetName });
|
||||||
|
dispatch({
|
||||||
|
type: "geneset: disable create geneset mode",
|
||||||
|
});
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -44,12 +47,8 @@ class CreateGenesetDialogue extends React.PureComponent {
|
|||||||
return false;
|
return false;
|
||||||
};
|
};
|
||||||
|
|
||||||
handleChange = () => {
|
handleChange = (e) => {
|
||||||
return () => {};
|
this.setState({ genesetName: e });
|
||||||
};
|
|
||||||
|
|
||||||
handleSelect = () => {
|
|
||||||
return () => {};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
instruction = () => {
|
instruction = () => {
|
||||||
@@ -76,24 +75,20 @@ class CreateGenesetDialogue extends React.PureComponent {
|
|||||||
primaryButtonText="Create geneset"
|
primaryButtonText="Create geneset"
|
||||||
handleSecondaryButtonSubmit={this.addLabelAndAssignCells}
|
handleSecondaryButtonSubmit={this.addLabelAndAssignCells}
|
||||||
text={genesetName}
|
text={genesetName}
|
||||||
validationError={() => {
|
validationError={false}
|
||||||
/* todo genesets this.labelNameError(genesetName) */
|
|
||||||
return false;
|
|
||||||
}}
|
|
||||||
annoInput={
|
annoInput={
|
||||||
<LabelInput
|
<LabelInput
|
||||||
onChange={this.handleChange}
|
onChange={this.handleChange}
|
||||||
onSelect={this.handleSelect}
|
|
||||||
inputProps={{
|
inputProps={{
|
||||||
"data-testid": "add-genes",
|
"data-testid": "add-genes",
|
||||||
leftIcon: "manually-entered-data",
|
leftIcon: "manually-entered-data",
|
||||||
intent: "none",
|
intent: "none",
|
||||||
autoFocus: true,
|
autoFocus: true,
|
||||||
}}
|
}}
|
||||||
newLabelMessage="New category"
|
newLabelMessage="New geneset"
|
||||||
/>
|
/>
|
||||||
}
|
}
|
||||||
handleSubmit={this.handleAddNewLabelToCategory}
|
handleSubmit={this.createGeneset}
|
||||||
handleCancel={this.disableCreateGenesetMode}
|
handleCancel={this.disableCreateGenesetMode}
|
||||||
/>
|
/>
|
||||||
</>
|
</>
|
||||||
|
|||||||
@@ -12,7 +12,6 @@ import {
|
|||||||
} from "@blueprintjs/core";
|
} from "@blueprintjs/core";
|
||||||
|
|
||||||
import * as globals from "../../../globals";
|
import * as globals from "../../../globals";
|
||||||
import actions from "../../../actions";
|
|
||||||
import AddGeneToGenesetDialogue from "./addGeneToGenesetDialogue";
|
import AddGeneToGenesetDialogue from "./addGeneToGenesetDialogue";
|
||||||
|
|
||||||
@connect((state) => {
|
@connect((state) => {
|
||||||
@@ -45,7 +44,7 @@ class GenesetMenus extends React.PureComponent {
|
|||||||
|
|
||||||
handleDeleteCategory = () => {
|
handleDeleteCategory = () => {
|
||||||
const { dispatch, geneset } = this.props;
|
const { dispatch, geneset } = this.props;
|
||||||
dispatch(actions.genesetDeleteAction(geneset));
|
dispatch({ type: "geneset: delete", name: geneset });
|
||||||
};
|
};
|
||||||
|
|
||||||
render() {
|
render() {
|
||||||
|
|||||||
Reference in New Issue
Block a user