diff --git a/public/locales/en/layout/header/actions/toggle-edit-mode.json b/public/locales/en/layout/header/actions/toggle-edit-mode.json
new file mode 100644
index 000000000..ed42b4742
--- /dev/null
+++ b/public/locales/en/layout/header/actions/toggle-edit-mode.json
@@ -0,0 +1,11 @@
+{
+ "tooltip": "The edit mode enables you to configure your dashboard",
+ "button": {
+ "disabled": "Enter Edit Mode",
+ "enabled": "Exit Edit Mode"
+ },
+ "popover": {
+ "title": "Edit mode is enabled",
+ "text": "You can adjust and configure your apps now"
+ }
+}
\ No newline at end of file
diff --git a/src/components/layout/header/Actions/ToggleEditMode/ToggleEditMode.tsx b/src/components/layout/header/Actions/ToggleEditMode/ToggleEditMode.tsx
new file mode 100644
index 000000000..0f52356bf
--- /dev/null
+++ b/src/components/layout/header/Actions/ToggleEditMode/ToggleEditMode.tsx
@@ -0,0 +1,36 @@
+import { Button, Popover, Tooltip, Text } from '@mantine/core';
+import { IconEditCircle, IconEditCircleOff } from '@tabler/icons';
+import { useTranslation } from 'next-i18next';
+
+import { useEditModeStore } from '../../../../Dashboard/Views/useEditModeStore';
+
+export const ToggleEditModeAction = () => {
+ const { t } = useTranslation('layout/header/actions/toggle-edit-mode');
+
+ const { enabled, toggleEditMode } = useEditModeStore();
+
+ return (
+
+
+
+
+
+
+
+ {t('popover.title')}
+ {t('popover.text')}
+
+
+
+
+ );
+};
diff --git a/src/components/layout/header/Header.tsx b/src/components/layout/header/Header.tsx
index 96acb610e..68185c409 100644
--- a/src/components/layout/header/Header.tsx
+++ b/src/components/layout/header/Header.tsx
@@ -1,10 +1,10 @@
-import { ActionIcon, Box, createStyles, Group, Header as MantineHeader } from '@mantine/core';
+import { Box, createStyles, Group, Header as MantineHeader, Text } from '@mantine/core';
import { openContextModal } from '@mantine/modals';
-import { IconCode } from '@tabler/icons';
import { useConfigContext } from '../../../config/provider';
import { Logo } from '../Logo';
import { useCardStyles } from '../useCardStyles';
import { AddElementAction } from './Actions/AddElementAction/AddElementAction';
+import { ToggleEditModeAction } from './Actions/ToggleEditMode/ToggleEditMode';
import { Search } from './Search';
import { SettingsMenu } from './SettingsMenu';
@@ -23,10 +23,7 @@ export function Header(props: any) {
-
-
-
- {
openContextModal({
modal: 'changeTilePosition',
@@ -36,14 +33,14 @@ export function Header(props: any) {
},
});
}}
- variant="default"
- radius="md"
- size="xl"
- color="blue"
+ variant="link"
>
-
-
+ Test: Open Change Pos Modal
+
+
+
+
diff --git a/src/tools/translation-namespaces.ts b/src/tools/translation-namespaces.ts
index 5d155f258..b1fd0ec79 100644
--- a/src/tools/translation-namespaces.ts
+++ b/src/tools/translation-namespaces.ts
@@ -5,6 +5,7 @@ export const dashboardNamespaces = [
'layout/app-shelf-menu',
'layout/tools',
'layout/element-selector/selector',
+ 'layout/header/actions/toggle-edit-mode',
'settings/common',
'settings/general/theme-selector',
'settings/general/config-changer',