diff --git a/src/frontend/src/components/buttons/SplitButton.css.ts b/src/frontend/src/components/buttons/SplitButton.css.ts index 05e353b08e..282ee5e515 100644 --- a/src/frontend/src/components/buttons/SplitButton.css.ts +++ b/src/frontend/src/components/buttons/SplitButton.css.ts @@ -6,7 +6,8 @@ import { vars } from '../../theme'; export const button = style({ borderTopRightRadius: 0, borderBottomRightRadius: 0, - '&::before': { + + ':before': { borderRadius: '0 !important' } }); diff --git a/src/frontend/src/components/details/DetailsImage.tsx b/src/frontend/src/components/details/DetailsImage.tsx index 7f4fb9e9f5..682e2aaaa3 100644 --- a/src/frontend/src/components/details/DetailsImage.tsx +++ b/src/frontend/src/components/details/DetailsImage.tsx @@ -120,7 +120,7 @@ function UploadModal({ > URL.revokeObjectURL(imageUrl) }} + onLoad={() => URL.revokeObjectURL(imageUrl)} radius="sm" height={75} fit="contain" diff --git a/src/frontend/src/components/forms/fields/ApiFormField.tsx b/src/frontend/src/components/forms/fields/ApiFormField.tsx index 26aa9b71c6..a82bafa080 100644 --- a/src/frontend/src/components/forms/fields/ApiFormField.tsx +++ b/src/frontend/src/components/forms/fields/ApiFormField.tsx @@ -230,16 +230,16 @@ export function ApiFormField({ id={fieldId} value={numericalValue} error={error?.message} - formatter={(value) => { - let v: any = parseFloat(value); + /*formatter={(props: any) => { + let v: any = parseFloat(props.value); if (Number.isNaN(v) || !Number.isFinite(v)) { - return value; + return props.value; } return `${1 * v.toFixed()}`; - }} - precision={definition.field_type == 'integer' ? 0 : 10} + }}*/ + decimalScale={definition.field_type == 'integer' ? 0 : 10} onChange={(value) => onChange(value)} /> ); diff --git a/src/frontend/src/components/forms/fields/ChoiceField.tsx b/src/frontend/src/components/forms/fields/ChoiceField.tsx index c345e52b1e..b9c65014c3 100644 --- a/src/frontend/src/components/forms/fields/ChoiceField.tsx +++ b/src/frontend/src/components/forms/fields/ChoiceField.tsx @@ -64,7 +64,7 @@ export function ChoiceField({ required={definition.required} disabled={definition.disabled} leftSection={definition.icon} - withinPortal={true} + comboboxProps={{ withinPortal: true }} /> ); } diff --git a/src/frontend/src/components/forms/fields/RelatedModelField.tsx b/src/frontend/src/components/forms/fields/RelatedModelField.tsx index 4056194668..ba1636f6a1 100644 --- a/src/frontend/src/components/forms/fields/RelatedModelField.tsx +++ b/src/frontend/src/components/forms/fields/RelatedModelField.tsx @@ -1,5 +1,5 @@ import { t } from '@lingui/macro'; -import { Input, useMantineTheme } from '@mantine/core'; +import { Input, darken, useMantineTheme } from '@mantine/core'; import { useColorScheme, useDebouncedValue } from '@mantine/hooks'; import { useId } from '@mantine/hooks'; import { useQuery } from '@tanstack/react-query'; @@ -245,16 +245,16 @@ export function RelatedModelField({ } else { colors = { neutral0: vars.colors.white, - neutral5: theme.fn.darken(theme.white, 0.05), - neutral10: theme.fn.darken(theme.white, 0.1), - neutral20: theme.fn.darken(theme.white, 0.2), - neutral30: theme.fn.darken(theme.white, 0.3), - neutral40: theme.fn.darken(theme.white, 0.4), - neutral50: theme.fn.darken(theme.white, 0.5), - neutral60: theme.fn.darken(theme.white, 0.6), - neutral70: theme.fn.darken(theme.white, 0.7), - neutral80: theme.fn.darken(theme.white, 0.8), - neutral90: theme.fn.darken(theme.white, 0.9), + neutral5: darken(vars.colors.white, 0.05), + neutral10: darken(vars.colors.white, 0.1), + neutral20: darken(vars.colors.white, 0.2), + neutral30: darken(vars.colors.white, 0.3), + neutral40: darken(vars.colors.white, 0.4), + neutral50: darken(vars.colors.white, 0.5), + neutral60: darken(vars.colors.white, 0.6), + neutral70: darken(vars.colors.white, 0.7), + neutral80: darken(vars.colors.white, 0.8), + neutral90: darken(vars.colors.white, 0.9), primary: vars.colors.primaryColors[7], primary25: vars.colors.primaryColors[4], primary50: vars.colors.primaryColors[5], diff --git a/src/frontend/src/components/images/ApiImage.tsx b/src/frontend/src/components/images/ApiImage.tsx index 7da466017c..bb7529afc4 100644 --- a/src/frontend/src/components/images/ApiImage.tsx +++ b/src/frontend/src/components/images/ApiImage.tsx @@ -11,10 +11,14 @@ import { useState } from 'react'; import { api } from '../../App'; +interface ApiImageProps extends ImageProps { + onClick?: (event: any) => void; +} + /** * Construct an image container which will load and display the image */ -export function ApiImage(props: ImageProps) { +export function ApiImage(props: ApiImageProps) { const [image, setImage] = useState(''); const [authorized, setAuthorized] = useState(true); diff --git a/src/frontend/src/components/items/GettingStartedCarousel.tsx b/src/frontend/src/components/items/GettingStartedCarousel.tsx index 9aaf6a6bf3..0845fb750a 100644 --- a/src/frontend/src/components/items/GettingStartedCarousel.tsx +++ b/src/frontend/src/components/items/GettingStartedCarousel.tsx @@ -44,9 +44,8 @@ export function GettingStartedCarousel({ return ( {slides} diff --git a/src/frontend/src/main.css.ts b/src/frontend/src/main.css.ts index ea0f4585ae..c0f2e165b7 100644 --- a/src/frontend/src/main.css.ts +++ b/src/frontend/src/main.css.ts @@ -93,7 +93,7 @@ export const subLink = style({ // : vars.colors.gray[0] // }) - '&:active': vars.activeStyles + ':active': vars.activeStyles }); export const docHover = style({ @@ -145,7 +145,7 @@ export const tab = style({ height: 38, backgroundColor: 'transparent', - '&:hover': { + ':hover': { backgroundColor: //theme.colorScheme === 'dark' ? vars.colors.dark[5] : vars.colors.gray[1] vars.colors.gray[1] diff --git a/src/frontend/src/pages/Index/Scan.tsx b/src/frontend/src/pages/Index/Scan.tsx index 257a30f393..8784084e3d 100644 --- a/src/frontend/src/pages/Index/Scan.tsx +++ b/src/frontend/src/pages/Index/Scan.tsx @@ -406,7 +406,6 @@ function HistoryTable({ toggleRow(item.id)} - transitionDuration={0} /> @@ -442,7 +441,6 @@ function HistoryTable({ indeterminate={ selection.length > 0 && selection.length !== data.length } - transitionDuration={0} /> diff --git a/src/frontend/src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx b/src/frontend/src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx index b82b77d9a8..7765e888a3 100644 --- a/src/frontend/src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx +++ b/src/frontend/src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx @@ -66,11 +66,13 @@ export function UserTheme({ height }: { height: number }) { { value: 'oval', label: t`oval` }, { value: 'dots', label: t`dots` } ]; - const [loader, setLoader] = useState(theme.loader); + const [themeLoader, setThemeLoader] = useLocalState((state) => [ + state.loader, + state.setLoader + ]); function changeLoader(value: string | null) { if (value === null) return; - setLoader(value); - useLocalState.setState({ loader: value }); + setThemeLoader(value); } return ( @@ -133,10 +135,10 @@ export function UserTheme({ height }: { height: number }) {