From f3c414f5237eff82b0403013a348fb8a4fa251c8 Mon Sep 17 00:00:00 2001 From: Egor Stronhin Date: Sun, 10 Mar 2024 10:30:22 +0200 Subject: [PATCH 01/14] feat: new groups --- src/main/settings.ts | 1 + src/rendered/Routing.tsx | 2 +- .../GroupRename.styles.ts} | 0 .../GroupRename.tsx} | 4 +- src/rendered/components/GroupRename/index.ts | 1 + src/rendered/components/GroupRenamer/index.ts | 1 - src/rendered/components/Settings/Settings.tsx | 67 +++++++++++-------- .../SettingsGroups/SettingsGroups.tsx | 21 ++++-- src/rendered/hooks/useAppSettings.ts | 1 + src/types/appSettings.ts | 1 + 10 files changed, 64 insertions(+), 35 deletions(-) rename src/rendered/components/{GroupRenamer/GroupRenamer.styles.ts => GroupRename/GroupRename.styles.ts} (100%) rename src/rendered/components/{GroupRenamer/GroupRenamer.tsx => GroupRename/GroupRename.tsx} (95%) create mode 100644 src/rendered/components/GroupRename/index.ts delete mode 100644 src/rendered/components/GroupRenamer/index.ts diff --git a/src/main/settings.ts b/src/main/settings.ts index 38a1338..b0c3c12 100644 --- a/src/main/settings.ts +++ b/src/main/settings.ts @@ -19,6 +19,7 @@ export const settings = new Store({ appSettings: { editors: [], fetchInterval: 10000, + oldFashionGroups: false, projectActionCollapsed: true, shells: [], showLogo: true, diff --git a/src/rendered/Routing.tsx b/src/rendered/Routing.tsx index 4f7694f..b364f60 100644 --- a/src/rendered/Routing.tsx +++ b/src/rendered/Routing.tsx @@ -12,7 +12,7 @@ export const Routing = () => ( } - path="settings" + path="settings/:id?" /> { +export const GroupRename = () => { const { groups, groupAliases, setGroupAlias, removeGroupAlias: remooveGroupAlias } = useGroups(); const [selectedGroup, setSelectedGroup] = useState(groupAliases[0] ?? groups[0]); diff --git a/src/rendered/components/GroupRename/index.ts b/src/rendered/components/GroupRename/index.ts new file mode 100644 index 0000000..d85cd0b --- /dev/null +++ b/src/rendered/components/GroupRename/index.ts @@ -0,0 +1 @@ +export { GroupRename } from './GroupRename'; diff --git a/src/rendered/components/GroupRenamer/index.ts b/src/rendered/components/GroupRenamer/index.ts deleted file mode 100644 index ee661c9..0000000 --- a/src/rendered/components/GroupRenamer/index.ts +++ /dev/null @@ -1 +0,0 @@ -export { GroupRenamer } from './GroupRenamer'; diff --git a/src/rendered/components/Settings/Settings.tsx b/src/rendered/components/Settings/Settings.tsx index 8964887..22ffe1e 100644 --- a/src/rendered/components/Settings/Settings.tsx +++ b/src/rendered/components/Settings/Settings.tsx @@ -1,36 +1,49 @@ import { Tabs } from '@blueprintjs/core'; +import { useParams, useNavigate } from 'react-router-dom'; import { Root } from './Settings.styles'; import { SettingsAppearance } from '../SettingsAppearance'; import { SettingsIntegrations } from '../SettingsIntegrations'; import { SettingsGroups } from '../SettingsGroups'; -export const Settings = () => ( - - - } - title="Appearance" - /> +export const Settings = () => { + // take id from query string + const { id = 'appearance' } = useParams<{ id?: string }>(); + const navigate = useNavigate(); - } - title="Integrations" - /> + const handleTabChange = (id: string) => { + console.log('id', id); + navigate(`/settings/${id}`); + }; - } - title="Groups" - /> - - -); + return ( + + + } + title="Appearance" + /> + + } + title="Integrations" + /> + + } + title="Groups" + /> + + + ); +}; diff --git a/src/rendered/components/SettingsGroups/SettingsGroups.tsx b/src/rendered/components/SettingsGroups/SettingsGroups.tsx index c8f522e..2fb7216 100644 --- a/src/rendered/components/SettingsGroups/SettingsGroups.tsx +++ b/src/rendered/components/SettingsGroups/SettingsGroups.tsx @@ -1,17 +1,30 @@ -import { Divider } from '@blueprintjs/core'; +import { Divider, Switch } from '@blueprintjs/core'; -import { GroupRenamer } from '../GroupRenamer'; +import { useAppSettings } from 'rendered/hooks/useAppSettings'; + +import { GroupRename } from '../GroupRename'; import { Root } from './SettingsGroups.styles'; export const SettingsGroups = () => { + const { oldFashionGroups, set } = useAppSettings(); return ( -

Groups

+

Groups style

+ + +

Style

+ set({ oldFashionGroups: !oldFashionGroups })} + /> + +

Rename

You can change any group name

- +
); }; diff --git a/src/rendered/hooks/useAppSettings.ts b/src/rendered/hooks/useAppSettings.ts index bbf8753..692cd3f 100644 --- a/src/rendered/hooks/useAppSettings.ts +++ b/src/rendered/hooks/useAppSettings.ts @@ -9,6 +9,7 @@ type Actions = { export const useAppSettings = create((set) => ({ editors: [], fetchInterval: 10000, + oldFashionGroups: false, projectActionCollapsed: true, set: (newState, safe) => { set(() => { diff --git a/src/types/appSettings.ts b/src/types/appSettings.ts index e91dc66..d6ffab9 100644 --- a/src/types/appSettings.ts +++ b/src/types/appSettings.ts @@ -5,6 +5,7 @@ export type AppSettings = { editors: FoundEditor[]; fetchInterval: number; gitHubToken?: string; + oldFashionGroups: boolean; projectActionCollapsed: boolean; selectedEditor?: FoundEditor; selectedShell?: FoundShell; From fb0ce0b90c64729b56803f90ab3c3218444b2fb5 Mon Sep 17 00:00:00 2001 From: Egor Stronhin Date: Sun, 10 Mar 2024 10:34:19 +0200 Subject: [PATCH 02/14] feat: new groups --- src/rendered/components/Settings/Settings.tsx | 1 - 1 file changed, 1 deletion(-) diff --git a/src/rendered/components/Settings/Settings.tsx b/src/rendered/components/Settings/Settings.tsx index 22ffe1e..28331e9 100644 --- a/src/rendered/components/Settings/Settings.tsx +++ b/src/rendered/components/Settings/Settings.tsx @@ -12,7 +12,6 @@ export const Settings = () => { const navigate = useNavigate(); const handleTabChange = (id: string) => { - console.log('id', id); navigate(`/settings/${id}`); }; From bacfe26bd00f89ac543f0b7f6934d83158b24cc9 Mon Sep 17 00:00:00 2001 From: Egor Stronhin Date: Sun, 10 Mar 2024 10:37:00 +0200 Subject: [PATCH 03/14] feat: new groups --- src/rendered/components/Settings/Settings.tsx | 1 - 1 file changed, 1 deletion(-) diff --git a/src/rendered/components/Settings/Settings.tsx b/src/rendered/components/Settings/Settings.tsx index 28331e9..d865692 100644 --- a/src/rendered/components/Settings/Settings.tsx +++ b/src/rendered/components/Settings/Settings.tsx @@ -7,7 +7,6 @@ import { SettingsIntegrations } from '../SettingsIntegrations'; import { SettingsGroups } from '../SettingsGroups'; export const Settings = () => { - // take id from query string const { id = 'appearance' } = useParams<{ id?: string }>(); const navigate = useNavigate(); From cbe17947a216ea9150cf927d8306bfb70c480fe2 Mon Sep 17 00:00:00 2001 From: Egor Stronhin Date: Sun, 10 Mar 2024 10:41:46 +0200 Subject: [PATCH 04/14] feat: new groups --- src/rendered/components/AppNavbar/AppNavbar.tsx | 4 ++-- .../components/SettingsGroups/SettingsGroups.tsx | 13 ++++++++----- 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/src/rendered/components/AppNavbar/AppNavbar.tsx b/src/rendered/components/AppNavbar/AppNavbar.tsx index 15a42bb..af36ed9 100644 --- a/src/rendered/components/AppNavbar/AppNavbar.tsx +++ b/src/rendered/components/AppNavbar/AppNavbar.tsx @@ -11,7 +11,7 @@ import { LeftGroup, Logo, RightGroup, StyledNavbar, Shadow, ShadowContainer, Tit export const AppNavbar = () => { const { pathname } = useLocation(); const { themeSource, toggleDarkMode } = useDarkMode(); - const { showLogo, projectActionCollapsed, set } = useAppSettings(); + const { showLogo, projectActionCollapsed, set, oldFashionGroups } = useAppSettings(); const { addProject } = useProjects(); const refresh = () => { @@ -37,7 +37,7 @@ export const AppNavbar = () => { - {pathname === '/' && ( + {oldFashionGroups && pathname === '/' && ( <>