diff --git a/resources/scripts/admin/layouts/partials/TheSiteHeader.vue b/resources/scripts/admin/layouts/partials/TheSiteHeader.vue index d573a010..f3f6b96c 100644 --- a/resources/scripts/admin/layouts/partials/TheSiteHeader.vue +++ b/resources/scripts/admin/layouts/partials/TheSiteHeader.vue @@ -15,6 +15,13 @@ bg-gradient-to-r from-primary-500 to-primary-400 + dark:from-gray-700/70 dark:to-gray-800/70 + bg-primary-500 + dark:bg-transparent + dark:backdrop-blur-xl + dark:shadow-glass + dark:border + dark:border-white/10 " > diff --git a/resources/scripts/admin/layouts/partials/TheSiteSidebar.vue b/resources/scripts/admin/layouts/partials/TheSiteSidebar.vue index ee0f5b1d..6006354e 100644 --- a/resources/scripts/admin/layouts/partials/TheSiteSidebar.vue +++ b/resources/scripts/admin/layouts/partials/TheSiteSidebar.vue @@ -15,7 +15,9 @@ leave-from="opacity-100" leave-to="opacity-0" > - + -
+
@@ -113,17 +120,16 @@ @@ -169,6 +178,7 @@ import { import { useRoute } from 'vue-router' import { useGlobalStore } from '@/scripts/admin/stores/global' +import LightDarkSwitch from '@/scripts/components/LightDarkSwitcher.vue' const route = useRoute() const globalStore = useGlobalStore() diff --git a/resources/scripts/admin/stores/global.js b/resources/scripts/admin/stores/global.js index 7e885962..be559a8c 100644 --- a/resources/scripts/admin/stores/global.js +++ b/resources/scripts/admin/stores/global.js @@ -34,6 +34,7 @@ export const useGlobalStore = (useWindow = false) => { isAppLoaded: false, isSidebarOpen: false, areCurrenciesLoading: false, + isDarkModeOn: false, downloadReport: null, }), @@ -70,8 +71,8 @@ export const useGlobalStore = (useWindow = false) => { moduleStore.apiToken = response.data.global_settings.api_token moduleStore.enableModules = response.data.modules - // company store - companyStore.companies = response.data.companies + // company store + companyStore.companies = response.data.companies companyStore.selectedCompany = response.data.current_company companyStore.setSelectedCompany(response.data.current_company) companyStore.selectedCompanySettings = diff --git a/resources/scripts/components/LightDarkSwitcher.vue b/resources/scripts/components/LightDarkSwitcher.vue new file mode 100644 index 00000000..1678a9ed --- /dev/null +++ b/resources/scripts/components/LightDarkSwitcher.vue @@ -0,0 +1,101 @@ + + + + diff --git a/resources/views/app.blade.php b/resources/views/app.blade.php index 80aed311..9f20595d 100644 --- a/resources/views/app.blade.php +++ b/resources/views/app.blade.php @@ -17,7 +17,7 @@ - @foreach(\Crater\Services\Module\ModuleFacade::allStyles() as $name => $path) + @foreach (\Crater\Services\Module\ModuleFacade::allStyles() as $name => $path) @endforeach @@ -25,8 +25,8 @@ + class="h-full overflow-hidden bg-gray-100 dark:bg-gray-900 dark:text-white font-base + @if (isset($current_theme)) theme-{{ $current_theme }} @else theme-{{ get_app_setting('admin_portal_theme') ?? 'crater' }} @endif "> @foreach (\Crater\Services\Module\ModuleFacade::allScripts() as $name => $path) @@ -38,6 +38,14 @@ @endforeach diff --git a/tailwind.config.js b/tailwind.config.js index 245f2eec..fa18c191 100644 --- a/tailwind.config.js +++ b/tailwind.config.js @@ -19,6 +19,7 @@ module.exports = { './resources/scripts/**/*.js', './resources/scripts/**/*.vue', ], + darkMode: 'class', theme: { extend: { colors: {