From e281835eeeb78fd21b8bf0b68d72e4541580fe52 Mon Sep 17 00:00:00 2001 From: Marek Fraczyk Date: Tue, 16 Feb 2021 17:43:31 +0200 Subject: [PATCH] Footer with theme switch, data notice, upgrade cta and a github link --- src/App.vue | 21 +++++++++++ src/assets/scss/_buttons.scss | 11 ++++-- src/assets/scss/_scaffolding.scss | 2 +- src/views/dashboard/Dashboard.vue | 59 +++++++++++++++++++++++++++++-- 4 files changed, 86 insertions(+), 7 deletions(-) diff --git a/src/App.vue b/src/App.vue index 99c24bf..b2501af 100644 --- a/src/App.vue +++ b/src/App.vue @@ -16,6 +16,9 @@ export default { created() { this.pauseAnimationsUntilLoaded(); }, + mounted() { + this.initColorScheme(); + }, methods: { jsLoaded() { document.body.classList.remove('js-loading'); @@ -24,6 +27,24 @@ export default { document.body.classList.add('js-loading'); window.addEventListener('load', this.jsLoaded, false); }, + initColorScheme() { + // local storage is used to override OS theme settings + if (localStorage.getItem('theme')) { + if (localStorage.getItem('theme') === 'dark') { + this.$store.commit('themes/theme', 'dark'); + return document.documentElement.setAttribute('data-theme', 'dark'); + } + } else if (!window.matchMedia) { + // matchMedia method not supported + return false; + } else if (window.matchMedia('(prefers-color-scheme: dark)').matches) { + // OS theme setting detected as dark + this.$store.commit('themes/theme', 'dark'); + console.log('hello there'); + return document.documentElement.setAttribute('data-theme', 'dark'); + } + document.documentElement.setAttribute('data-theme', this.theme || 'light'); + }, }, }; diff --git a/src/assets/scss/_buttons.scss b/src/assets/scss/_buttons.scss index 329bbc9..71e8e82 100644 --- a/src/assets/scss/_buttons.scss +++ b/src/assets/scss/_buttons.scss @@ -1,9 +1,14 @@ .btn { border-width: 0; - &-sm { - &.btn--icon-left { - padding-left: $btn-padding-x-sm / 2; + &--icon { + &-left { + .btn-sm { + padding-left: $btn-padding-x-sm / 2; + } + } + img { + max-width: 1.5rem; } } diff --git a/src/assets/scss/_scaffolding.scss b/src/assets/scss/_scaffolding.scss index 1293614..6241d94 100644 --- a/src/assets/scss/_scaffolding.scss +++ b/src/assets/scss/_scaffolding.scss @@ -1,6 +1,6 @@ .app { &__content { - padding-top: 32px; + //padding-top: 32px; padding-right: 66px; padding-left: 66px; will-change: padding-left; diff --git a/src/views/dashboard/Dashboard.vue b/src/views/dashboard/Dashboard.vue index c1ded55..373c601 100644 --- a/src/views/dashboard/Dashboard.vue +++ b/src/views/dashboard/Dashboard.vue @@ -1,11 +1,46 @@