}
const arvadosPurple = '#361336';
- const grey500 = grey['500'];
- const grey600 = grey['600'];
- const grey700 = grey['700'];
- const grey900 = grey['900'];
+ const grey600 = grey["600"];
+ const grey700 = grey["700"];
+ const grey900 = grey["900"];
export const themeOptions: ArvadosThemeOptions = {
- typography: {
- useNextVariants: true,
- },
- customs: {
- colors: {
- green700: green["700"],
- yellow100: yellow["100"],
- yellow700: yellow["700"],
- yellow900: yellow["900"],
- red100: red["100"],
- red900: red['900'],
- blue500: blue['500'],
- grey500: grey["500"],
- grey700: grey["700"],
- purple: arvadosPurple,
- orange: '#f0ad4e',
- }
- },
- overrides: {
- MuiTypography: {
- body1: {
- fontSize: '0.8125rem'
- }
- },
- MuiAppBar: {
- colorPrimary: {
- backgroundColor: arvadosPurple
- }
- },
- MuiTabs: {
- root: {
- color: grey600
- },
- indicator: {
- backgroundColor: arvadosPurple
- }
- },
- MuiTab: {
- root: {
- '&$selected': {
- fontWeight: 700,
- color: arvadosPurple
- }
- }
- },
- MuiList: {
- root: {
- color: grey900
- }
- },
- MuiListItemText: {
- root: {
- padding: 0
- }
- },
- MuiListItemIcon: {
- root: {
- fontSize: '1.25rem'
- }
- },
- MuiCardHeader: {
- avatar: {
- display: 'flex',
- alignItems: 'center'
- },
- title: {
- color: grey700,
- fontSize: '1.25rem'
- }
+ typography: {
+ useNextVariants: true,
+ },
+ customs: {
+ colors: {
- green700: green['700'],
- yellow100: yellow['100'],
- yellow700: yellow['700'],
- yellow900: yellow['900'],
- red100: red['100'],
++ green700: green["700"],
++ yellow100: yellow["100"],
++ yellow700: yellow["700"],
++ yellow900: yellow["900"],
++ red100: red["100"],
+ red900: red['900'],
+ blue500: blue['500'],
- grey500: grey500,
++ grey500: grey["500"],
++ grey700: grey["700"],
+ purple: arvadosPurple,
+ orange: '#f0ad4e',
+ },
+ },
+ overrides: {
+ MuiTypography: {
+ body1: {
+ fontSize: '0.8125rem',
+ },
+ },
+ MuiAppBar: {
+ colorPrimary: {
+ backgroundColor: arvadosPurple,
+ },
+ },
+ MuiTabs: {
+ root: {
+ color: grey600,
+ },
+ indicator: {
+ backgroundColor: arvadosPurple,
+ },
+ },
+ MuiTab: {
+ root: {
+ '&$selected': {
+ fontWeight: 700,
+ color: arvadosPurple,
},
- MuiExpansionPanel: {
- expanded: {
- marginTop: '8px',
- }
+ },
+ },
+ MuiList: {
+ root: {
+ color: grey900,
+ },
+ },
+ MuiListItemText: {
+ root: {
+ padding: 0,
+ },
+ },
+ MuiListItemIcon: {
+ root: {
+ fontSize: '1.25rem',
+ },
+ },
+ MuiCardHeader: {
+ avatar: {
+ display: 'flex',
+ alignItems: 'center',
+ },
+ title: {
+ color: grey700,
+ fontSize: '1.25rem',
+ },
+ },
+ MuiExpansionPanel: {
+ expanded: {
+ marginTop: '8px',
+ },
+ },
+ MuiExpansionPanelDetails: {
+ root: {
+ marginBottom: 0,
+ paddingBottom: '4px',
+ },
+ },
+ MuiExpansionPanelSummary: {
+ content: {
+ '&$expanded': {
+ margin: 0,
},
- MuiExpansionPanelDetails: {
- root: {
- marginBottom: 0,
- paddingBottom: '4px',
- }
+ color: grey700,
+ fontSize: '1.25rem',
+ margin: 0,
+ },
+ expanded: {},
+ },
+ MuiMenuItem: {
+ root: {
+ padding: '8px 16px',
+ },
+ },
+ MuiInput: {
+ root: {
+ fontSize: '0.875rem',
+ },
+ underline: {
+ '&:after': {
+ borderBottomColor: arvadosPurple,
},
- MuiExpansionPanelSummary: {
- content: {
- '&$expanded': {
- margin: 0,
- },
- color: grey700,
- fontSize: '1.25rem',
- margin: 0,
- },
- expanded: {},
+ '&:hover:not($disabled):not($focused):not($error):before': {
+ borderBottom: '1px solid inherit',
},
- MuiMenuItem: {
- root: {
- padding: '8px 16px'
- }
+ },
+ },
+ MuiFormLabel: {
+ root: {
+ fontSize: '0.875rem',
+ '&$focused': {
+ '&$focused:not($error)': {
+ color: arvadosPurple,
+ },
},
- MuiInput: {
- root: {
- fontSize: '0.875rem'
- },
- underline: {
- '&:after': {
- borderBottomColor: arvadosPurple
- },
- '&:hover:not($disabled):not($focused):not($error):before': {
- borderBottom: '1px solid inherit'
- }
- }
+ },
+ },
+ MuiStepIcon: {
+ root: {
+ '&$active': {
+ color: arvadosPurple,
},
- MuiFormLabel: {
- root: {
- fontSize: '0.875rem',
- "&$focused": {
- "&$focused:not($error)": {
- color: arvadosPurple
- }
- }
- }
+ '&$completed': {
+ color: 'inherited',
},
- MuiStepIcon: {
- root: {
- '&$active': {
- color: arvadosPurple
- },
- '&$completed': {
- color: 'inherited'
- },
- }
- }
- },
- mixins: {
- toolbar: {
- minHeight: '48px'
- }
- },
- palette: {
- primary: {
- main: teal.A700,
- dark: teal.A400,
- contrastText: '#fff'
- }
+ },
+ },
+ },
+ mixins: {
+ toolbar: {
+ minHeight: '48px',
+ },
+ },
+ palette: {
+ primary: {
+ main: teal.A700,
+ dark: teal.A400,
+ contrastText: '#fff',
},
+ },
};
export const CustomTheme = createMuiTheme(themeOptions);
import { SchedulingParameters } from './scheduling-parameters';
export enum ContainerRequestState {
- UNCOMMITTED = "Uncommitted",
- COMMITTED = "Committed",
- FINAL = "Final"
+ UNCOMMITTED = 'Uncommitted',
+ COMMITTED = 'Committed',
+ FINAL = 'Final',
}
-export interface ContainerRequestResource extends Resource, ResourceWithProperties {
- kind: ResourceKind.CONTAINER_REQUEST;
- name: string;
- description: string;
- state: ContainerRequestState;
- requestingContainerUuid: string | null;
- cumulativeCost: number;
- containerUuid: string | null;
- containerCountMax: number;
- mounts: {[path: string]: MountType};
- runtimeConstraints: RuntimeConstraints;
- schedulingParameters: SchedulingParameters;
- containerImage: string;
- environment: any;
- cwd: string;
- command: string[];
- outputPath: string;
- outputName: string;
- outputTtl: number;
- priority: number | null;
- expiresAt: string;
- useExisting: boolean;
- logUuid: string | null;
- outputUuid: string | null;
- filters: string;
- containerCount: number;
+export interface ContainerRequestResource
+ extends Resource,
+ ResourceWithProperties {
+ command: string[];
+ containerCountMax: number;
+ containerCount: number;
+ containerImage: string;
+ containerUuid: string | null;
+ cumulativeCost: number;
+ cwd: string;
+ description: string;
+ environment: any;
+ expiresAt: string;
+ filters: string;
+ kind: ResourceKind.CONTAINER_REQUEST;
+ logUuid: string | null;
+ mounts: { [path: string]: MountType };
+ name: string;
+ outputName: string;
+ outputPath: string;
+ outputTtl: number;
+ outputUuid: string | null;
+ priority: number | null;
+ requestingContainerUuid: string | null;
+ runtimeConstraints: RuntimeConstraints;
+ schedulingParameters: SchedulingParameters;
+ state: ContainerRequestState;
+ useExisting: boolean;
}
+
+ // Until the api supports unselecting fields, we need a list of all other fields to omit mounts
+ export const containerRequestFieldsNoMounts = [
+ "command",
+ "container_count_max",
+ "container_count",
+ "container_image",
+ "container_uuid",
+ "created_at",
+ "cwd",
+ "description",
+ "environment",
+ "etag",
+ "expires_at",
+ "filters",
+ "href",
+ "kind",
+ "log_uuid",
+ "modified_at",
+ "modified_by_client_uuid",
+ "modified_by_user_uuid",
+ "name",
+ "output_name",
+ "output_path",
+ "output_properties",
+ "output_storage_classes",
+ "output_ttl",
+ "output_uuid",
+ "owner_uuid",
+ "priority",
+ "properties",
+ "requesting_container_uuid",
+ "runtime_constraints",
+ "scheduling_parameters",
+ "state",
+ "use_existing",
+ "uuid",
+ ];