diff --git a/public/demo/images/access/logo-orange.svg b/public/demo/images/access/logo-orange.svg deleted file mode 100644 index a97df44..0000000 --- a/public/demo/images/access/logo-orange.svg +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/public/demo/images/blocks/hero/hero-1.png b/public/demo/images/blocks/hero/hero-1.png deleted file mode 100644 index 18835ad..0000000 Binary files a/public/demo/images/blocks/hero/hero-1.png and /dev/null differ diff --git a/public/demo/images/blocks/logos/hyper.svg b/public/demo/images/blocks/logos/hyper.svg deleted file mode 100644 index acf30bc..0000000 --- a/public/demo/images/blocks/logos/hyper.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/public/demo/images/error/logo-error.svg b/public/demo/images/error/logo-error.svg deleted file mode 100644 index fd48da1..0000000 --- a/public/demo/images/error/logo-error.svg +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/public/demo/images/login/avatar.png b/public/demo/images/login/avatar.png deleted file mode 100644 index cd1b124..0000000 Binary files a/public/demo/images/login/avatar.png and /dev/null differ diff --git a/public/demo/images/notfound/logo-blue.svg b/public/demo/images/notfound/logo-blue.svg deleted file mode 100644 index 3c4ecf7..0000000 --- a/public/demo/images/notfound/logo-blue.svg +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/src/assets/layout/_content.scss b/src/assets/layout/_content.scss deleted file mode 100644 index c3e6f04..0000000 --- a/src/assets/layout/_content.scss +++ /dev/null @@ -1,12 +0,0 @@ -.layout-main-container { - display: flex; - flex-direction: column; - min-height: 100vh; - justify-content: space-between; - padding: 6rem 2rem 2rem 4rem; - transition: margin-left var(--layout-section-transition-duration); -} - -.layout-main { - flex: 1 1 auto; -} diff --git a/src/assets/layout/_core.scss b/src/assets/layout/_core.scss new file mode 100644 index 0000000..17a7a81 --- /dev/null +++ b/src/assets/layout/_core.scss @@ -0,0 +1,23 @@ +html { + height: 100%; + font-size: 14px; +} + +body { + font-family: 'CircularStd', sans-serif; + color: var(--text-color); + background-color: var(--surface-ground); + margin: 0; + padding: 0; + min-height: 100%; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +a { + text-decoration: none; +} + +.layout-wrapper { + min-height: 100vh; +} diff --git a/src/assets/layout/_footer.scss b/src/assets/layout/_footer.scss index 4700fb3..27bcbf0 100644 --- a/src/assets/layout/_footer.scss +++ b/src/assets/layout/_footer.scss @@ -1,8 +1,8 @@ .layout-footer { - transition: margin-left var(--layout-section-transition-duration); display: flex; align-items: center; justify-content: center; - padding-top: 1rem; + padding: 1rem 0 1rem 0; + gap: 0.5rem; border-top: 1px solid var(--surface-border); } diff --git a/src/assets/layout/_main.scss b/src/assets/layout/_main.scss index 17a7a81..a223ac1 100644 --- a/src/assets/layout/_main.scss +++ b/src/assets/layout/_main.scss @@ -1,23 +1,13 @@ -html { - height: 100%; - font-size: 14px; -} - -body { - font-family: 'CircularStd', sans-serif; - color: var(--text-color); - background-color: var(--surface-ground); - margin: 0; - padding: 0; - min-height: 100%; - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; -} - -a { - text-decoration: none; -} - -.layout-wrapper { +.layout-main-container { + display: flex; + flex-direction: column; min-height: 100vh; + justify-content: space-between; + padding: 6rem 2rem 0 2rem; + transition: margin-left var(--layout-section-transition-duration); +} + +.layout-main { + flex: 1 1 auto; + padding-bottom: 2rem; } diff --git a/src/assets/layout/_menu.scss b/src/assets/layout/_menu.scss index 25dc74a..69752b1 100644 --- a/src/assets/layout/_menu.scss +++ b/src/assets/layout/_menu.scss @@ -1,7 +1,7 @@ .layout-sidebar { position: fixed; - width: 300px; - height: calc(100vh - 9rem); + width: 20rem; + height: calc(100vh - 8rem); z-index: 999; overflow-y: auto; user-select: none; diff --git a/src/assets/layout/_responsive.scss b/src/assets/layout/_responsive.scss index 6759baf..6579252 100644 --- a/src/assets/layout/_responsive.scss +++ b/src/assets/layout/_responsive.scss @@ -37,7 +37,7 @@ &.layout-static { .layout-main-container { - margin-left: 300px; + margin-left: 22rem; } &.layout-static-inactive { diff --git a/src/assets/layout/_topbar.scss b/src/assets/layout/_topbar.scss index de07a1a..2350b9c 100644 --- a/src/assets/layout/_topbar.scss +++ b/src/assets/layout/_topbar.scss @@ -12,7 +12,7 @@ align-items: center; .layout-topbar-logo-container { - width: 300px; + width: 20rem; display: flex; align-items: center; } @@ -130,6 +130,7 @@ right: 2rem; top: 4rem; min-width: 15rem; + border: 1px solid var(--surface-border); .layout-topbar-menu-content { gap: 0.5rem; @@ -162,25 +163,6 @@ } .config-panel { - position: absolute; - top: 3.25rem; - right: 0; - width: 16rem; - padding: 0.75rem; - background-color: var(--surface-overlay); - border-radius: 6px; - border: 1px solid var(--surface-border); - transform-origin: top; - box-shadow: - 0 4px 6px -1px rgb(0 0 0 / 0.1), - 0 2px 4px -2px rgb(0 0 0 / 0.1); - - .config-panel-content { - display: flex; - flex-direction: column; - gap: 1rem; - } - .config-panel-label { font-size: 0.875rem; color: var(--text-secondary-color); diff --git a/src/assets/layout/layout.scss b/src/assets/layout/layout.scss index 40b4dac..8971f62 100644 --- a/src/assets/layout/layout.scss +++ b/src/assets/layout/layout.scss @@ -3,10 +3,10 @@ @import './variables/_dark'; @import './_mixins'; @import './_preloading'; +@import './_core'; @import './_main'; @import './_topbar'; @import './_menu'; -@import './_content'; @import './_footer'; @import './_responsive'; @import './_utils'; diff --git a/src/components/BlockViewer.vue b/src/components/BlockViewer.vue deleted file mode 100644 index 9c517b3..0000000 --- a/src/components/BlockViewer.vue +++ /dev/null @@ -1,212 +0,0 @@ - - - - - diff --git a/src/layout/AppConfigurator.vue b/src/layout/AppConfigurator.vue index e4a3a27..2969958 100644 --- a/src/layout/AppConfigurator.vue +++ b/src/layout/AppConfigurator.vue @@ -6,18 +6,22 @@ import Lara from '@primevue/themes/lara'; import Nora from '@primevue/themes/nora'; import { ref } from 'vue'; -const { layoutConfig, setPrimary, setSurface, setPreset, isDarkTheme } = useLayout(); - -const preset = ref(layoutConfig.preset); +const { layoutConfig, setPrimary, setSurface, setPreset, isDarkTheme, setMenuMode } = useLayout(); const presets = { Aura, Lara, Nora }; - +const preset = ref(layoutConfig.preset); const presetOptions = ref(Object.keys(presets)); +const menuMode = ref(layoutConfig.menuMode); +const menuModeOptions = ref([ + { label: 'Static', value: 'static' }, + { label: 'Overlay', value: 'overlay' } +]); + const primaryColors = ref([ { name: 'noir', palette: {} }, { name: 'emerald', palette: { 50: '#ecfdf5', 100: '#d1fae5', 200: '#a7f3d0', 300: '#6ee7b7', 400: '#34d399', 500: '#10b981', 600: '#059669', 700: '#047857', 800: '#065f46', 900: '#064e3b', 950: '#022c22' } }, @@ -219,49 +223,62 @@ function applyTheme(type, color) { } } -function onPresetChange(value) { - setPreset(value); - const presetValue = presets[value]; +function onPresetChange() { + setPreset(preset.value); + const presetValue = presets[preset.value]; const surfacePalette = surfaces.value.find((s) => s.name === layoutConfig.surface)?.palette; $t().preset(presetValue).preset(getPresetExt()).surfacePalette(surfacePalette).use({ useDefaultOptions: true }); } + +function onMenuModeChange() { + setMenuMode(menuMode.value); +}