diff --git a/src/composables/theme.js b/src/composables/layoutService.js similarity index 57% rename from src/composables/theme.js rename to src/composables/layoutService.js index c06b5cf..3b8bf41 100644 --- a/src/composables/theme.js +++ b/src/composables/layoutService.js @@ -1,6 +1,6 @@ -import { toRefs, reactive } from 'vue'; +import { toRefs, reactive, watch, ref, computed } from 'vue'; -const appConfig = reactive({ +const layoutConfig = reactive({ ripple: false, darkTheme: false, inputStyle: 'outlined', @@ -18,35 +18,29 @@ const layoutState = reactive({ menuHoverActive: false }); -export function useThemeService () { +export function useLayoutService () { const changeThemeSettings = (theme, darkTheme) => { - appConfig.theme = theme; - appConfig.darkTheme = darkTheme; + layoutConfig.theme = theme; + layoutConfig.darkTheme = darkTheme; }; const setScale = scale => { - appConfig.scale = scale; + layoutConfig.scale = scale; }; const onMenuToggle = () => { - debugger; - if (appConfig.menuMode === 'overlay') { + if (layoutConfig.menuMode === 'overlay') { layoutState.overlayMenuActive = !layoutState.overlayMenuActive; - /* if (layoutState.overlayMenuActive) { - this.overlayOpen.next(null); - } */ } if (window.innerWidth > 991) { layoutState.staticMenuDesktopInactive = !layoutState.staticMenuDesktopInactive; } else { layoutState.staticMenuMobileActive = !layoutState.staticMenuMobileActive; - - /* if (this.state.staticMenuMobileActive) { - this.overlayOpen.next(null); - } */ } }; - return { appConfig: toRefs(appConfig), layoutState: toRefs(layoutState), changeThemeSettings, setScale, onMenuToggle }; + const isSidebarActive = computed(() => layoutState.overlayMenuActive || layoutState.staticMenuMobileActive); + + return { layoutConfig: toRefs(layoutConfig), layoutState: toRefs(layoutState), changeThemeSettings, setScale, onMenuToggle, isSidebarActive }; } diff --git a/src/layout/AppConfig.vue b/src/layout/AppConfig.vue index 6303c24..44f27b4 100644 --- a/src/layout/AppConfig.vue +++ b/src/layout/AppConfig.vue @@ -6,21 +6,21 @@
Scale
- +
- +
- +
@@ -29,17 +29,17 @@
Input Style
- +
- +
Ripple Effect
- +
Bootstrap
@@ -244,12 +244,12 @@ diff --git a/src/layout/AppFooter.vue b/src/layout/AppFooter.vue index 6d48618..d202829 100644 --- a/src/layout/AppFooter.vue +++ b/src/layout/AppFooter.vue @@ -7,12 +7,12 @@ diff --git a/src/layout/AppLayout.vue b/src/layout/AppLayout.vue index db22a0a..483263c 100644 --- a/src/layout/AppLayout.vue +++ b/src/layout/AppLayout.vue @@ -16,29 +16,63 @@ diff --git a/src/layout/AppTopbar.vue b/src/layout/AppTopbar.vue index e58e715..9da2b13 100644 --- a/src/layout/AppTopbar.vue +++ b/src/layout/AppTopbar.vue @@ -31,12 +31,12 @@