prepare structure and init stepper
[arvados-workbench2.git] / src / common / custom-theme.ts
index e5d2e5e78ca80bed2cada42c923bd88d4461c96c..98380b968e8f8b0a70d8f877a50cc48b8b968b67 100644 (file)
@@ -10,8 +10,9 @@ import grey from '@material-ui/core/colors/grey';
 import green from '@material-ui/core/colors/green';
 import yellow from '@material-ui/core/colors/yellow';
 import red from '@material-ui/core/colors/red';
+import teal from '@material-ui/core/colors/teal';
 
-interface ArvadosThemeOptions extends ThemeOptions {
+export interface ArvadosThemeOptions extends ThemeOptions {
     customs: any;
 }
 
@@ -24,22 +25,25 @@ export interface ArvadosTheme extends Theme {
 interface Colors {
     green700: string;
     yellow700: string;
+    red900: string;
+    blue500: string;
 }
 
-const red900 = red["900"];
+const arvadosPurple = '#361336';
 const purple800 = purple["800"];
-const grey200 = grey["200"];
-const grey300 = grey["300"];
 const grey500 = grey["500"];
 const grey600 = grey["600"];
 const grey700 = grey["700"];
 const grey900 = grey["900"];
+const rocheBlue = '#06C';
 
-const themeOptions: ArvadosThemeOptions = {
+export const themeOptions: ArvadosThemeOptions = {
     customs: {
         colors: {
             green700: green["700"],
-            yellow700: yellow["700"]
+            yellow700: yellow["700"],
+            red900: red['900'],
+            blue500: blue['500'],
         }
     },
     overrides: {
@@ -50,7 +54,7 @@ const themeOptions: ArvadosThemeOptions = {
         },
         MuiAppBar: {
             colorPrimary: {
-                backgroundColor: purple800
+                backgroundColor: arvadosPurple
             }
         },
         MuiTabs: {
@@ -58,13 +62,13 @@ const themeOptions: ArvadosThemeOptions = {
                 color: grey600
             },
             indicator: {
-                backgroundColor: purple800
+                backgroundColor: arvadosPurple
             }
         },
         MuiTab: {
             selected: {
                 fontWeight: 700,
-                color: purple800
+                color: arvadosPurple
             }
         },
         MuiList: {
@@ -96,6 +100,39 @@ const themeOptions: ArvadosThemeOptions = {
             root: {
                 padding: '8px 16px'
             }
+        },
+        MuiInput: {
+            root: {
+                fontSize: '0.875rem'
+            },
+            underline: {
+                '&:after': {
+                    borderBottomColor: arvadosPurple
+                },
+                '&:hover:not($disabled):not($focused):not($error):before': {
+                    borderBottom: '1px solid inherit'
+                }
+            }
+        },
+        MuiFormLabel: {
+            root: {
+                fontSize: '0.875rem'
+            },
+            focused: {
+                "&$focused:not($error)": {
+                    color: arvadosPurple
+                }
+            }
+        },
+        MuiStepIcon: {
+            root: {
+                '&$active': {
+                    color: arvadosPurple
+                },
+                '&$completed': {
+                    color: 'inherited'
+                },
+            }
         }
     },
     mixins: {
@@ -105,8 +142,9 @@ const themeOptions: ArvadosThemeOptions = {
     },
     palette: {
         primary: {
-            main: '#06C',
-            dark: blue.A100
+            main: teal.A700,
+            dark: teal.A400,
+            contrastText: '#fff'
         }
     }
 };