diff --git a/frontend/package.json b/frontend/package.json index eb7e3ed601..ab90928d40 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -39,6 +39,7 @@ "isready": "yarn lint && yarn fmt && yarn prepare" }, "devDependencies": { + "@codemirror/lang-json": "6.0.0", "@emotion/react": "11.9.3", "@emotion/styled": "11.9.3", "@mui/icons-material": "5.8.4", @@ -62,6 +63,7 @@ "@types/react-test-renderer": "17.0.2", "@types/react-timeago": "4.1.3", "@types/semver": "7.3.12", + "@uiw/react-codemirror": "4.11.4", "@vitejs/plugin-react": "1.3.2", "chart.js": "3.9.1", "chartjs-adapter-date-fns": "2.0.0", @@ -102,8 +104,7 @@ "vite-tsconfig-paths": "3.5.0", "vitest": "0.22.1", "whatwg-fetch": "3.6.2", - "@codemirror/lang-json": "6.0.0", - "@uiw/react-codemirror": "4.11.4" + "@uiw/codemirror-theme-duotone": "^4.11.5" }, "jest": { "moduleNameMapper": { diff --git a/frontend/src/assets/img/logoWithWhiteText.svg b/frontend/src/assets/img/logoWithWhiteText.svg new file mode 100644 index 0000000000..c966754f9e --- /dev/null +++ b/frontend/src/assets/img/logoWithWhiteText.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/frontend/src/component/App.styles.ts b/frontend/src/component/App.styles.ts index 33bf6c6667..c6b04a0447 100644 --- a/frontend/src/component/App.styles.ts +++ b/frontend/src/component/App.styles.ts @@ -17,7 +17,7 @@ export const useStyles = makeStyles()(theme => ({ margin: '0 auto', flex: 1, width: '100%', - backgroundColor: theme.palette.grey[300], + backgroundColor: theme.palette.contentWrapper, }, content: { width: '1250px', diff --git a/frontend/src/component/common/AutocompleteBox/AutocompleteBox.styles.ts b/frontend/src/component/common/AutocompleteBox/AutocompleteBox.styles.ts index 34a9425836..d7b20bf80e 100644 --- a/frontend/src/component/common/AutocompleteBox/AutocompleteBox.styles.ts +++ b/frontend/src/component/common/AutocompleteBox/AutocompleteBox.styles.ts @@ -10,7 +10,7 @@ export const useStyles = makeStyles()(theme => ({ }, }, icon: { - background: theme.palette.primary.main, + background: theme.palette.featureSegmentSearchBackground, height: 48, width: 48, display: 'flex', diff --git a/frontend/src/component/common/CheckmarkBadge/CheckMarkBadge.styles.ts b/frontend/src/component/common/CheckmarkBadge/CheckMarkBadge.styles.ts index 325565cb38..33e9bdf2be 100644 --- a/frontend/src/component/common/CheckmarkBadge/CheckMarkBadge.styles.ts +++ b/frontend/src/component/common/CheckmarkBadge/CheckMarkBadge.styles.ts @@ -2,7 +2,7 @@ import { makeStyles } from 'tss-react/mui'; export const useStyles = makeStyles()(theme => ({ badge: { - backgroundColor: theme.palette.primary.main, + backgroundColor: theme.palette.checkmarkBadge, width: '75px', height: '75px', borderRadius: '50px', diff --git a/frontend/src/component/common/Codebox/Codebox.styles.ts b/frontend/src/component/common/Codebox/Codebox.styles.ts index c6fb507c68..f1bbb2e8a2 100644 --- a/frontend/src/component/common/Codebox/Codebox.styles.ts +++ b/frontend/src/component/common/Codebox/Codebox.styles.ts @@ -2,7 +2,7 @@ import { makeStyles } from 'tss-react/mui'; export const useStyles = makeStyles()(theme => ({ container: { - backgroundColor: theme.palette.sidebarContainer, + backgroundColor: theme.palette.codebox, padding: '1rem', borderRadius: theme.shape.borderRadiusMedium, position: 'relative', @@ -13,7 +13,7 @@ export const useStyles = makeStyles()(theme => ({ margin: 0, wordBreak: 'break-all', whiteSpace: 'pre-wrap', - color: '#fff', + color: theme.palette.formSidebarTextColor, fontSize: 14, }, icon: { diff --git a/frontend/src/component/common/ConstraintAccordion/ConstraintAccordion.styles.ts b/frontend/src/component/common/ConstraintAccordion/ConstraintAccordion.styles.ts index 16d7d51548..af577bd40e 100644 --- a/frontend/src/component/common/ConstraintAccordion/ConstraintAccordion.styles.ts +++ b/frontend/src/component/common/ConstraintAccordion/ConstraintAccordion.styles.ts @@ -1,10 +1,25 @@ import { makeStyles } from 'tss-react/mui'; export const useStyles = makeStyles()(theme => ({ + constraintIconContainer: { + backgroundColor: theme.palette.background.paper, + borderRadius: '50%', + display: 'flex', + alignItems: 'center', + justifyContent: 'center', + marginRight: theme.spacing(1), + [theme.breakpoints.down(650)]: { + marginBottom: '1rem', + marginRight: 0, + }, + }, + constraintIcon: { + fill: '#fff', + }, accordion: { border: `1px solid ${theme.palette.dividerAlternative}`, borderRadius: theme.shape.borderRadiusMedium, - backgroundColor: '#fff', + backgroundColor: theme.palette.constraintAccordion.background, boxShadow: 'none', margin: 0, }, @@ -14,7 +29,7 @@ export const useStyles = makeStyles()(theme => ({ }, }, accordionEdit: { - backgroundColor: '#F6F6FA', + backgroundColor: theme.palette.constraintAccordion.editBackground, }, headerMetaInfo: { display: 'flex', diff --git a/frontend/src/component/common/ConstraintAccordion/ConstraintAccordionEdit/StyledToggleButton/InvertedOperatorButton/InvertedOperatorButton.tsx b/frontend/src/component/common/ConstraintAccordion/ConstraintAccordionEdit/StyledToggleButton/InvertedOperatorButton/InvertedOperatorButton.tsx index df30a1e712..28dad13936 100644 --- a/frontend/src/component/common/ConstraintAccordion/ConstraintAccordionEdit/StyledToggleButton/InvertedOperatorButton/InvertedOperatorButton.tsx +++ b/frontend/src/component/common/ConstraintAccordion/ConstraintAccordionEdit/StyledToggleButton/InvertedOperatorButton/InvertedOperatorButton.tsx @@ -1,4 +1,4 @@ -import { Box, Tooltip } from '@mui/material'; +import { Box, Tooltip, useTheme } from '@mui/material'; import { ReactComponent as NegatedIcon } from 'assets/icons/24_Negator.svg'; import { ReactComponent as NegatedIconOff } from 'assets/icons/24_Negator off.svg'; import { IConstraint } from 'interfaces/strategy'; @@ -7,6 +7,7 @@ import { StyledToggleButtonOn, } from '../StyledToggleButton'; import { ConditionallyRender } from '../../../../ConditionallyRender/ConditionallyRender'; +import { ThemeMode } from 'component/common/ThemeMode/ThemeMode'; interface InvertedOperatorButtonProps { localConstraint: IConstraint; @@ -16,35 +17,59 @@ interface InvertedOperatorButtonProps { export const InvertedOperatorButton = ({ localConstraint, setInvertedOperator, -}: InvertedOperatorButtonProps) => ( - - - - - - } - elseShow={ - - - - } - /> - - -); +}: InvertedOperatorButtonProps) => { + const theme = useTheme(); + + return ( + + + + + } + lightmode={} + /> + + } + elseShow={ + + + } + lightmode={} + /> + + } + /> + + + ); +}; diff --git a/frontend/src/component/common/ConstraintAccordion/ConstraintIcon.tsx b/frontend/src/component/common/ConstraintAccordion/ConstraintIcon.tsx index c70b77a522..b941342d4c 100644 --- a/frontend/src/component/common/ConstraintAccordion/ConstraintIcon.tsx +++ b/frontend/src/component/common/ConstraintAccordion/ConstraintIcon.tsx @@ -14,6 +14,7 @@ export const ConstraintIcon: VFC = ({ compact }) => ( borderRadius: '50%', width: compact ? '18px' : '24px', height: compact ? '18px' : '24px', + marginRight: '13px', }} > ({ container: { padding: theme.spacing(0.5, 1.5), borderRadius: theme.shape.borderRadius, - backgroundColor: theme.palette.grey[200], + backgroundColor: theme.palette.constraintAccordion.operatorBackground, lineHeight: 1.25, }, name: { diff --git a/frontend/src/component/common/Dialogue/Dialogue.styles.ts b/frontend/src/component/common/Dialogue/Dialogue.styles.ts index 7bd66152b0..d127fb3e82 100644 --- a/frontend/src/component/common/Dialogue/Dialogue.styles.ts +++ b/frontend/src/component/common/Dialogue/Dialogue.styles.ts @@ -2,8 +2,8 @@ import { makeStyles } from 'tss-react/mui'; export const useStyles = makeStyles()(theme => ({ dialogTitle: { - backgroundColor: theme.palette.primary.main, - color: '#fff', + backgroundColor: theme.palette.dialogHeaderBackground, + color: theme.palette.dialogHeaderText, height: '150px', padding: '2rem 3rem', clipPath: ' ellipse(130% 115px at 120% 20%)', diff --git a/frontend/src/component/common/FormTemplate/FormTemplate.styles.ts b/frontend/src/component/common/FormTemplate/FormTemplate.styles.ts index 474533e7bd..24b34cc50d 100644 --- a/frontend/src/component/common/FormTemplate/FormTemplate.styles.ts +++ b/frontend/src/component/common/FormTemplate/FormTemplate.styles.ts @@ -20,7 +20,7 @@ export const useStyles = makeStyles()(theme => ({ borderRadius: 0, }, sidebar: { - backgroundColor: theme.palette.primary.main, + backgroundColor: theme.palette.formSidebar, padding: '2rem', flexGrow: 0, flexShrink: 0, @@ -42,7 +42,7 @@ export const useStyles = makeStyles()(theme => ({ fontWeight: 'normal', }, subtitle: { - color: '#fff', + color: theme.palette.formSidebarTextColor, marginBottom: '1rem', display: 'flex', justifyContent: 'space-between', @@ -51,7 +51,7 @@ export const useStyles = makeStyles()(theme => ({ fontSize: theme.fontSizes.bodySize, }, description: { - color: '#fff', + color: theme.palette.formSidebarTextColor, zIndex: 1, position: 'relative', }, @@ -72,7 +72,7 @@ export const useStyles = makeStyles()(theme => ({ }, }, formContent: { - backgroundColor: '#fff', + backgroundColor: theme.palette.formBackground, display: 'flex', flexDirection: 'column', padding: '3rem', diff --git a/frontend/src/component/common/InstanceStatus/InstanceStatus.tsx b/frontend/src/component/common/InstanceStatus/InstanceStatus.tsx index 4bb3626a65..2af9b6edfd 100644 --- a/frontend/src/component/common/InstanceStatus/InstanceStatus.tsx +++ b/frontend/src/component/common/InstanceStatus/InstanceStatus.tsx @@ -3,7 +3,7 @@ import React, { FC, VFC, useEffect, useState, useContext } from 'react'; import { InstanceStatusBar } from 'component/common/InstanceStatus/InstanceStatusBar'; import { ConditionallyRender } from 'component/common/ConditionallyRender/ConditionallyRender'; import { Dialogue } from 'component/common/Dialogue/Dialogue'; -import { Typography } from '@mui/material'; +import { Typography, useTheme } from '@mui/material'; import { useNavigate } from 'react-router-dom'; import { IInstanceStatus } from 'interfaces/instance'; import { ADMIN } from 'component/providers/AccessProvider/permissions'; @@ -91,6 +91,7 @@ export const InstanceStatus: FC = ({ children }) => { useInstanceStatus(); const { extendTrial } = useInstanceStatusApi(); const { setToastApiError } = useToast(); + const theme = useTheme(); const onExtendTrial = async () => { try { @@ -102,7 +103,12 @@ export const InstanceStatus: FC = ({ children }) => { }; return ( -
+
( diff --git a/frontend/src/component/common/Loader/Loader.styles.ts b/frontend/src/component/common/Loader/Loader.styles.ts index 9bec27db0c..7284ea586f 100644 --- a/frontend/src/component/common/Loader/Loader.styles.ts +++ b/frontend/src/component/common/Loader/Loader.styles.ts @@ -6,6 +6,7 @@ export const useStyles = makeStyles()(theme => ({ justifyContent: 'center', alignItems: 'center', height: '100%', + backgroundColor: theme.palette.background.paper, }, img: { width: '100px', diff --git a/frontend/src/component/common/Search/Search.styles.ts b/frontend/src/component/common/Search/Search.styles.ts index 39630251e0..09d8bc076f 100644 --- a/frontend/src/component/common/Search/Search.styles.ts +++ b/frontend/src/component/common/Search/Search.styles.ts @@ -6,6 +6,7 @@ export const useStyles = makeStyles()(theme => ({ flexGrow: 1, alignItems: 'center', position: 'relative', + backgroundColor: theme.palette.background.paper, maxWidth: '400px', [theme.breakpoints.down('md')]: { marginTop: theme.spacing(1), diff --git a/frontend/src/component/common/StrategyItemContainer/StrategyItemContainer.styles.ts b/frontend/src/component/common/StrategyItemContainer/StrategyItemContainer.styles.ts index a196ad6052..701ed5f7e4 100644 --- a/frontend/src/component/common/StrategyItemContainer/StrategyItemContainer.styles.ts +++ b/frontend/src/component/common/StrategyItemContainer/StrategyItemContainer.styles.ts @@ -7,7 +7,7 @@ export const useStyles = makeStyles()(theme => ({ '& + &': { marginTop: theme.spacing(2), }, - background: theme.palette.background.default, + background: theme.palette.background.paper, }, header: { padding: theme.spacing(0.5, 2), diff --git a/frontend/src/component/common/Table/SortableTableHeader/SortableTableHeader.styles.ts b/frontend/src/component/common/Table/SortableTableHeader/SortableTableHeader.styles.ts index fb11a9dd4b..e1904e1818 100644 --- a/frontend/src/component/common/Table/SortableTableHeader/SortableTableHeader.styles.ts +++ b/frontend/src/component/common/Table/SortableTableHeader/SortableTableHeader.styles.ts @@ -5,7 +5,8 @@ export const useStyles = makeStyles()(theme => ({ '& > th': { height: theme.shape.tableRowHeightCompact, border: 0, - + backgroundColor: theme.palette.tableHeaderBackground, + color: theme.palette.tableHeaderColor, '&:first-of-type': { borderTopLeftRadius: theme.shape.borderRadiusMedium, borderBottomLeftRadius: theme.shape.borderRadiusMedium, diff --git a/frontend/src/component/common/ThemeMode/ThemeMode.tsx b/frontend/src/component/common/ThemeMode/ThemeMode.tsx new file mode 100644 index 0000000000..67a6d3e582 --- /dev/null +++ b/frontend/src/component/common/ThemeMode/ThemeMode.tsx @@ -0,0 +1,20 @@ +import UIContext from 'contexts/UIContext'; +import { useContext } from 'react'; +import { ConditionallyRender } from '../ConditionallyRender/ConditionallyRender'; + +interface IThemeModeProps { + darkmode: JSX.Element; + lightmode: JSX.Element; +} + +export const ThemeMode = ({ darkmode, lightmode }: IThemeModeProps) => { + const { themeMode } = useContext(UIContext); + + return ( + + ); +}; diff --git a/frontend/src/component/common/ToastRenderer/Toast/Toast.styles.ts b/frontend/src/component/common/ToastRenderer/Toast/Toast.styles.ts index 7141bc3a42..4b3aa28151 100644 --- a/frontend/src/component/common/ToastRenderer/Toast/Toast.styles.ts +++ b/frontend/src/component/common/ToastRenderer/Toast/Toast.styles.ts @@ -3,7 +3,7 @@ import { makeStyles } from 'tss-react/mui'; export const useStyles = makeStyles()(theme => ({ container: { maxWidth: '450px', - background: '#fff', + background: theme.palette.background.paper, boxShadow: '2px 2px 4px rgba(0,0,0,0.4)', zIndex: 500, margin: '0 0.8rem', diff --git a/frontend/src/component/feature/FeatureStrategy/FeatureStrategySegment/FeatureStrategySegmentChip.styles.ts b/frontend/src/component/feature/FeatureStrategy/FeatureStrategySegment/FeatureStrategySegmentChip.styles.ts index ba07b2c002..76c1437905 100644 --- a/frontend/src/component/feature/FeatureStrategy/FeatureStrategySegment/FeatureStrategySegmentChip.styles.ts +++ b/frontend/src/component/feature/FeatureStrategy/FeatureStrategySegment/FeatureStrategySegmentChip.styles.ts @@ -10,7 +10,7 @@ export const useStyles = makeStyles()(theme => ({ paddingBlockStart: 4, paddingBlockEnd: 4, borderRadius: '100rem', - background: theme.palette.primary.main, + background: theme.palette.featureStrategySegmentChipBackground, color: 'white', }, link: { diff --git a/frontend/src/component/feature/FeatureView/FeatureLog/FeatureLog.styles.ts b/frontend/src/component/feature/FeatureView/FeatureLog/FeatureLog.styles.ts index fd3ed38125..b2313f433d 100644 --- a/frontend/src/component/feature/FeatureView/FeatureLog/FeatureLog.styles.ts +++ b/frontend/src/component/feature/FeatureView/FeatureLog/FeatureLog.styles.ts @@ -3,7 +3,7 @@ import { makeStyles } from 'tss-react/mui'; export const useStyles = makeStyles()(theme => ({ container: { borderRadius: '12.5px', - backgroundColor: '#fff', + backgroundColor: theme.palette.background.paper, padding: '2rem', }, })); diff --git a/frontend/src/component/feature/FeatureView/FeatureMetrics/FeatureMetricsStats/FeatureMetricsStats.styles.ts b/frontend/src/component/feature/FeatureView/FeatureMetrics/FeatureMetricsStats/FeatureMetricsStats.styles.ts index 80c05eb61e..09be2d3fee 100644 --- a/frontend/src/component/feature/FeatureView/FeatureMetrics/FeatureMetricsStats/FeatureMetricsStats.styles.ts +++ b/frontend/src/component/feature/FeatureView/FeatureMetrics/FeatureMetricsStats/FeatureMetricsStats.styles.ts @@ -3,7 +3,7 @@ import { makeStyles } from 'tss-react/mui'; export const useStyles = makeStyles()(theme => ({ item: { padding: theme.spacing(2), - background: theme.palette.secondaryContainer, + background: theme.palette.featureMetricsBackground, borderRadius: theme.spacing(2), textAlign: 'center', [theme.breakpoints.up('md')]: { diff --git a/frontend/src/component/feature/FeatureView/FeatureOverview/FeatureOverviewEnvSwitches/FeatureOverviewEnvSwitches.tsx b/frontend/src/component/feature/FeatureView/FeatureOverview/FeatureOverviewEnvSwitches/FeatureOverviewEnvSwitches.tsx index 7118c48757..84fa25d88b 100644 --- a/frontend/src/component/feature/FeatureView/FeatureOverview/FeatureOverviewEnvSwitches/FeatureOverviewEnvSwitches.tsx +++ b/frontend/src/component/feature/FeatureView/FeatureOverview/FeatureOverviewEnvSwitches/FeatureOverviewEnvSwitches.tsx @@ -9,7 +9,7 @@ import { styled } from '@mui/material'; const StyledContainer = styled('div')(({ theme }) => ({ borderRadius: theme.shape.borderRadiusLarge, - backgroundColor: '#fff', + backgroundColor: theme.palette.background.paper, display: 'flex', flexDirection: 'column', padding: '1.5rem', diff --git a/frontend/src/component/feature/FeatureView/FeatureOverview/FeatureOverviewEnvironments/FeatureOverviewEnvironment/FeatureOverviewEnvironment.styles.ts b/frontend/src/component/feature/FeatureView/FeatureOverview/FeatureOverviewEnvironments/FeatureOverviewEnvironment/FeatureOverviewEnvironment.styles.ts index 50fe9d44e5..f4ea62eaa3 100644 --- a/frontend/src/component/feature/FeatureView/FeatureOverview/FeatureOverviewEnvironments/FeatureOverviewEnvironment/FeatureOverviewEnvironment.styles.ts +++ b/frontend/src/component/feature/FeatureView/FeatureOverview/FeatureOverviewEnvironments/FeatureOverviewEnvironment/FeatureOverviewEnvironment.styles.ts @@ -4,7 +4,8 @@ export const useStyles = makeStyles()(theme => ({ featureOverviewEnvironment: { borderRadius: theme.shape.borderRadiusLarge, marginBottom: theme.spacing(2), - background: theme.palette.background.default, + padding: '0.2rem', + backgroundColor: theme.palette.background.paper, }, accordion: { boxShadow: 'none', diff --git a/frontend/src/component/feature/FeatureView/FeatureOverview/FeatureOverviewEnvironments/FeatureOverviewEnvironment/FeatureOverviewEnvironment.tsx b/frontend/src/component/feature/FeatureView/FeatureOverview/FeatureOverviewEnvironments/FeatureOverviewEnvironment/FeatureOverviewEnvironment.tsx index 37f86b3e94..0441e4016f 100644 --- a/frontend/src/component/feature/FeatureView/FeatureOverview/FeatureOverviewEnvironments/FeatureOverviewEnvironment/FeatureOverviewEnvironment.tsx +++ b/frontend/src/component/feature/FeatureView/FeatureOverview/FeatureOverviewEnvironments/FeatureOverviewEnvironment/FeatureOverviewEnvironment.tsx @@ -53,7 +53,7 @@ const FeatureOverviewEnvironment = ({ style={{ background: !env.enabled ? theme.palette.neutral.light - : theme.palette.background.default, + : theme.palette.background.paper, }} > ({ container: { borderRadius: theme.shape.borderRadiusLarge, color: '#fff', - backgroundColor: theme.palette.primary.main, + backgroundColor: theme.palette.featureMetaData, display: 'flex', flexDirection: 'column', maxWidth: '350px', diff --git a/frontend/src/component/feature/FeatureView/FeatureView.styles.ts b/frontend/src/component/feature/FeatureView/FeatureView.styles.ts index b81dbbd6ad..e81b728aaf 100644 --- a/frontend/src/component/feature/FeatureView/FeatureView.styles.ts +++ b/frontend/src/component/feature/FeatureView/FeatureView.styles.ts @@ -7,7 +7,7 @@ export const useStyles = makeStyles()(theme => ({ display: 'flex', }, header: { - backgroundColor: '#fff', + backgroundColor: theme.palette.background.paper, borderRadius: theme.shape.borderRadiusLarge, marginBottom: '1rem', }, diff --git a/frontend/src/component/feedback/FeedbackCES/FeedbackCES.styles.ts b/frontend/src/component/feedback/FeedbackCES/FeedbackCES.styles.ts index f3a79b3311..ee11de71ad 100644 --- a/frontend/src/component/feedback/FeedbackCES/FeedbackCES.styles.ts +++ b/frontend/src/component/feedback/FeedbackCES/FeedbackCES.styles.ts @@ -15,7 +15,7 @@ export const useStyles = makeStyles()(theme => ({ pointerEvents: 'auto', position: 'relative', padding: '4rem', - background: 'white', + background: theme.palette.background.paper, boxShadow: '0 0 1rem rgba(0, 0, 0, 0.25)', borderRadius: '1rem', [theme.breakpoints.down('md')]: { diff --git a/frontend/src/component/feedback/FeedbackCES/__snapshots__/FeedbackCESForm.test.tsx.snap b/frontend/src/component/feedback/FeedbackCES/__snapshots__/FeedbackCESForm.test.tsx.snap index 926cdcbf9d..83670e63ee 100644 --- a/frontend/src/component/feedback/FeedbackCES/__snapshots__/FeedbackCESForm.test.tsx.snap +++ b/frontend/src/component/feedback/FeedbackCES/__snapshots__/FeedbackCESForm.test.tsx.snap @@ -131,18 +131,18 @@ exports[`FeedbackCESForm 1`] = ` class="MuiFormControl-root MuiFormControl-fullWidth MuiTextField-root mui-wb57ya-MuiFormControl-root-MuiTextField-root" >