diff --git a/src/components/Config/Integration/IntegrationModal.tsx b/src/components/Config/Integration/IntegrationModal.tsx index eeeee4a94..ecce0c000 100644 --- a/src/components/Config/Integration/IntegrationModal.tsx +++ b/src/components/Config/Integration/IntegrationModal.tsx @@ -128,6 +128,7 @@ function IntegrationDisplay({ {integration.properties.map((property, idx) => { + if (!property.value) return null; if (property.type === 'private') return ( void } const queryClient = useQueryClient(); const { primaryColor } = useMantineTheme(); const queryKey = getQueryKey(api.system.checkLogin, { password: cookie?.toString() }, 'query'); - let integrationsQuery: IntegrationTypeMap | undefined = queryClient.getQueryData(queryKey); + const integrationsQuery: IntegrationTypeMap | undefined = queryClient.getQueryData(queryKey); const mutation = api.config.save.useMutation(); const { config, name } = useConfigContext(); const [isLoading, setIsLoading] = useState(false); @@ -208,14 +213,9 @@ export function IntegrationsAccordion({ closeModal }: { closeModal: () => void } return null; } - const form = useForm({ + let form = useForm({ initialValues: integrationsQuery, }); - // Loop over integrations item - useEffect(() => { - if (!integrations) return; - form.setValues(integrations); - }, [integrations]); return ( @@ -247,6 +247,7 @@ export function IntegrationsAccordion({ closeModal }: { closeModal: () => void } {configIntegrations.map((integration, integrationIdx) => { return ( void } loading={isLoading} leftIcon={} onClick={() => { + console.log(integrations); setIsLoading(true); mutation .mutateAsync({ config: { ...config, - integrations: form.values, + integrations: integrations, }, name: name!, }) @@ -314,7 +316,6 @@ export function IntegrationsAccordion({ closeModal }: { closeModal: () => void } color: 'green', }); setIsLoading(false); - setIntegrations(form.values); queryClient.invalidateQueries(queryKey); }); }} diff --git a/src/components/Dashboard/Modals/EditAppModal/Tabs/IntegrationTab/Components/IntegrationOptionsRenderer/IntegrationOptionsRenderer.tsx b/src/components/Dashboard/Modals/EditAppModal/Tabs/IntegrationTab/Components/IntegrationOptionsRenderer/IntegrationOptionsRenderer.tsx index 089a580d9..dab33c9af 100644 --- a/src/components/Dashboard/Modals/EditAppModal/Tabs/IntegrationTab/Components/IntegrationOptionsRenderer/IntegrationOptionsRenderer.tsx +++ b/src/components/Dashboard/Modals/EditAppModal/Tabs/IntegrationTab/Components/IntegrationOptionsRenderer/IntegrationOptionsRenderer.tsx @@ -40,11 +40,6 @@ export const IntegrationOptionsRendererNoForm = ({ const { type } = Object.entries(integrationFieldDefinitions).find( ([k, v]) => k === property )![1]; - const newProperty: AppIntegrationPropertyType = { - type, - field: property as IntegrationField, - isDefined: false, - }; indexInFormValue = properties.length; } const formValue = properties[indexInFormValue]; diff --git a/src/components/layout/header/SettingsMenu.tsx b/src/components/layout/header/SettingsMenu.tsx index 0747374d4..77e4ebde3 100644 --- a/src/components/layout/header/SettingsMenu.tsx +++ b/src/components/layout/header/SettingsMenu.tsx @@ -1,14 +1,11 @@ import { Badge, Button, Menu } from '@mantine/core'; -import { useDisclosure, useHotkeys } from '@mantine/hooks'; -import { - IconInfoCircle, - IconMenu2, - IconPlug, - IconPlugConnected, - IconSettings, -} from '@tabler/icons-react'; +import { useDisclosure } from '@mantine/hooks'; +import { IconInfoCircle, IconMenu2, IconSettings } from '@tabler/icons-react'; import { useTranslation } from 'next-i18next'; -import { IntegrationMenu, IntegrationModal } from '~/components/Config/Integration/IntegrationModal'; +import { + IntegrationMenu, + IntegrationModal, +} from '~/components/Config/Integration/IntegrationModal'; import { useEditModeInformationStore } from '../../../hooks/useEditModeInformation'; import { AboutModal } from '../../Dashboard/Modals/AboutModal/AboutModal'; @@ -24,7 +21,6 @@ export function SettingsMenu({ newVersionAvailable }: { newVersionAvailable: str const [aboutModalOpened, aboutModal] = useDisclosure(false); const { classes } = useCardStyles(true); const { editModeEnabled } = useEditModeInformationStore(); - useHotkeys([['mod+o', () => integrationsModal.toggle()]]); return ( <> @@ -43,7 +39,7 @@ export function SettingsMenu({ newVersionAvailable }: { newVersionAvailable: str {t('sections.settings')} )} - + } rightSection={