diff --git a/airbyte-webapp/src/hooks/services/useAdvancedModeSetting.test.ts b/airbyte-webapp/src/hooks/services/useAdvancedModeSetting.test.ts deleted file mode 100644 index 2b6a1217de128..0000000000000 --- a/airbyte-webapp/src/hooks/services/useAdvancedModeSetting.test.ts +++ /dev/null @@ -1,53 +0,0 @@ -import { act, renderHook } from "@testing-library/react-hooks"; - -import { useAdvancedModeSetting } from "./useAdvancedModeSetting"; - -// mock `useCurrentWorkspace` with a closure so we can simulate changing -// workspaces by mutating the top-level variable it references -let mockWorkspaceId = "fakeWorkspaceId"; -const changeToWorkspace = (newWorkspaceId: string) => { - mockWorkspaceId = newWorkspaceId; -}; - -jest.mock("hooks/services/useWorkspace", () => ({ - useCurrentWorkspace() { - return { workspaceId: mockWorkspaceId }; - }, -})); - -it("defaults to false before advanced mode is explicitly set", () => { - const { result } = renderHook(() => useAdvancedModeSetting()); - // eslint-disable-next-line prefer-const - let [isAdvancedMode, setAdvancedMode] = result.current; - - expect(isAdvancedMode).toBe(false); - - act(() => setAdvancedMode(true)); - [isAdvancedMode] = result.current; - - expect(isAdvancedMode).toBe(true); -}); - -it("stores workspace-specific advanced mode settings", () => { - changeToWorkspace("workspaceA"); - - const { result, rerender } = renderHook(() => useAdvancedModeSetting()); - // Avoiding destructuring in this spec to avoid capturing stale values when - // rerendering in different workspaces - const setAdvancedModeA = result.current[1]; - - expect(result.current[0]).toBe(false); - act(() => setAdvancedModeA(true)); - - expect(result.current[0]).toBe(true); - - // in workspaceB, it returns the default setting of `false` - changeToWorkspace("workspaceB"); - rerender(); - expect(result.current[0]).toBe(false); - - // ...but workspaceA's manual setting is persisted - changeToWorkspace("workspaceA"); - rerender(); - expect(result.current[0]).toBe(true); -}); diff --git a/airbyte-webapp/src/hooks/services/useAdvancedModeSetting.ts b/airbyte-webapp/src/hooks/services/useAdvancedModeSetting.ts deleted file mode 100644 index f79bdd63c4017..0000000000000 --- a/airbyte-webapp/src/hooks/services/useAdvancedModeSetting.ts +++ /dev/null @@ -1,19 +0,0 @@ -import { useLocalStorage } from "react-use"; - -import { useCurrentWorkspace } from "hooks/services/useWorkspace"; - -type SettingsByWorkspace = Record; - -export const useAdvancedModeSetting = (): [boolean, (newSetting: boolean) => void] => { - const { workspaceId } = useCurrentWorkspace(); - const [advancedModeSettingsByWorkspace, setAdvancedModeSettingsByWorkspace] = useLocalStorage( - "advancedMode", - {} - ); - - const isAdvancedMode = (advancedModeSettingsByWorkspace || {})[workspaceId] ?? false; - const setAdvancedMode = (newSetting: boolean) => - setAdvancedModeSettingsByWorkspace({ ...advancedModeSettingsByWorkspace, [workspaceId]: newSetting }); - - return [isAdvancedMode, setAdvancedMode]; -}; diff --git a/airbyte-webapp/src/locales/en.json b/airbyte-webapp/src/locales/en.json index 2765d6f1a38bc..d48e12c1b701f 100644 --- a/airbyte-webapp/src/locales/en.json +++ b/airbyte-webapp/src/locales/en.json @@ -113,11 +113,9 @@ "form.url.error": "field must be a valid URL", "form.setupGuide": "Setup Guide", "form.wait": "Please wait a little bit moreā€¦", - "form.advancedMode.label": "Advanced mode", - "form.advancedMode.switchLabel": "Enable advanced mode", - "form.advancedMode.tooltip": "When Advanced Mode is enabled, certain views will display additional technical information.", "form.optional": "Optional", + "connectionForm.settings.advancedButton": "Advanced", "connectionForm.validation.error": "The form is invalid. Please make sure that all fields are correct.", "connectionForm.normalization.title": "Normalization", "connectionForm.operations.notSupported": "Normalization and Transformation operations are not supported for this connection.", diff --git a/airbyte-webapp/src/packages/cloud/locales/en.json b/airbyte-webapp/src/packages/cloud/locales/en.json index 9613710f325b6..e154f02eb869a 100644 --- a/airbyte-webapp/src/packages/cloud/locales/en.json +++ b/airbyte-webapp/src/packages/cloud/locales/en.json @@ -108,9 +108,6 @@ "settings.generalSettings.changeWorkspace": "Change Workspace", "settings.generalSettings.form.name.label": "Workspace name", "settings.generalSettings.form.name.placeholder": "Workspace name", - "settings.generalSettings.form.advancedMode.label": "Advanced mode", - "settings.generalSettings.form.advancedMode.switchLabel": "Enable advanced mode", - "settings.generalSettings.form.advancedMode.tooltip": "When Advanced Mode is enabled, certain views will display additional technical information.", "settings.generalSettings.deleteLabel": "Delete your workspace", "settings.generalSettings.deleteText": "Delete", "settings.accessManagementSettings": "Access Management", diff --git a/airbyte-webapp/src/packages/cloud/views/workspaces/WorkspaceSettingsView/WorkspaceSettingsView.tsx b/airbyte-webapp/src/packages/cloud/views/workspaces/WorkspaceSettingsView/WorkspaceSettingsView.tsx index 5982f9a047c2c..424c786006cce 100644 --- a/airbyte-webapp/src/packages/cloud/views/workspaces/WorkspaceSettingsView/WorkspaceSettingsView.tsx +++ b/airbyte-webapp/src/packages/cloud/views/workspaces/WorkspaceSettingsView/WorkspaceSettingsView.tsx @@ -4,12 +4,10 @@ import React from "react"; import { FormattedMessage, useIntl } from "react-intl"; import * as yup from "yup"; -import { Label, LabeledInput, LabeledSwitch } from "components"; +import { LabeledInput } from "components"; import { Button } from "components/ui/Button"; -import { InfoTooltip } from "components/ui/Tooltip"; import { useTrackPage, PageTrackingCodes } from "hooks/services/Analytics"; -import { useAdvancedModeSetting } from "hooks/services/useAdvancedModeSetting"; import { useCurrentWorkspace } from "hooks/services/useWorkspace"; import { useRemoveCloudWorkspace, @@ -20,15 +18,6 @@ import { useInvalidateWorkspace, useWorkspaceService } from "services/workspaces import styles from "./WorkspaceSettingsView.module.scss"; -const AdvancedModeSwitchLabel = () => ( - <> - - - - - -); - const ValidationSchema = yup.object().shape({ name: yup.string().required("form.empty.error"), }); @@ -41,7 +30,6 @@ export const WorkspaceSettingsView: React.FC = () => { const { mutateAsync: removeCloudWorkspace, isLoading: isRemovingCloudWorkspace } = useRemoveCloudWorkspace(); const { mutateAsync: updateCloudWorkspace } = useUpdateCloudWorkspace(); const invalidateWorkspace = useInvalidateWorkspace(workspace.workspaceId); - const [isAdvancedMode, setAdvancedMode] = useAdvancedModeSetting(); return ( <> @@ -58,11 +46,9 @@ export const WorkspaceSettingsView: React.FC = () => { { const { workspaceId } = workspace; - setAdvancedMode(payload.advancedMode); await updateCloudWorkspace({ workspaceId, name: payload.name, @@ -72,7 +58,7 @@ export const WorkspaceSettingsView: React.FC = () => { enableReinitialize validationSchema={ValidationSchema} > - {({ dirty, isSubmitting, resetForm, isValid, setFieldValue }) => ( + {({ dirty, isSubmitting, resetForm, isValid }) => (
@@ -89,18 +75,6 @@ export const WorkspaceSettingsView: React.FC = () => { /> )} - - - {({ field }: FieldProps) => ( - } - checked={field.value} - onChange={() => setFieldValue(field.name, !field.value)} - /> - )} -