sidebar test

This commit is contained in:
aarizona 2024-08-28 17:02:51 +03:00
parent 8544b0d858
commit 3cb27d9821
8 changed files with 57 additions and 23 deletions

View File

@ -13,12 +13,19 @@ declare module 'vue' {
Gallery: typeof import('./src/components/Promo/gallery.vue')['default'] Gallery: typeof import('./src/components/Promo/gallery.vue')['default']
Game: typeof import('./src/components/Game.vue')['default'] Game: typeof import('./src/components/Game.vue')['default']
Home: typeof import('./src/components/Home.vue')['default'] Home: typeof import('./src/components/Home.vue')['default']
IIconMdiHomeOutline: typeof import('~icons/ic/on-mdi-home-outline')['default']
IIconParkSolidLeftC: typeof import('~icons/icon-park-solid/left-c')['default']
'IMdi:arrowLeft': typeof import('~icons/mdi/arrow-left')['default']
'IMdi:arrowRight': typeof import('~icons/mdi/arrow-right')['default']
'IMdi:vectorArrangeBelow': typeof import('~icons/mdi/vector-arrange-below')['default']
'IMdi:video3d': typeof import('~icons/mdi/video3d')['default']
IMdiArrowRight: typeof import('~icons/mdi/arrow-right')['default'] IMdiArrowRight: typeof import('~icons/mdi/arrow-right')['default']
IMdiChevronLeft: typeof import('~icons/mdi/chevron-left')['default'] IMdiChevronLeft: typeof import('~icons/mdi/chevron-left')['default']
IMdiClose: typeof import('~icons/mdi/close')['default'] IMdiClose: typeof import('~icons/mdi/close')['default']
IMdiFile: typeof import('~icons/mdi/file')['default'] IMdiFile: typeof import('~icons/mdi/file')['default']
IMdiHexagonOutline: typeof import('~icons/mdi/hexagon-outline')['default'] IMdiHexagonOutline: typeof import('~icons/mdi/hexagon-outline')['default']
IMdiHome: typeof import('~icons/mdi/home')['default'] IMdiHome: typeof import('~icons/mdi/home')['default']
IMdiHomeOutline: typeof import('~icons/mdi/home-outline')['default']
IMdiMonitorScreenshot: typeof import('~icons/mdi/monitor-screenshot')['default'] IMdiMonitorScreenshot: typeof import('~icons/mdi/monitor-screenshot')['default']
IMdiPagePreviousOutline: typeof import('~icons/mdi/page-previous-outline')['default'] IMdiPagePreviousOutline: typeof import('~icons/mdi/page-previous-outline')['default']
IMdiShop: typeof import('~icons/mdi/shop')['default'] IMdiShop: typeof import('~icons/mdi/shop')['default']

View File

@ -9,6 +9,8 @@
"version": "0.0.0", "version": "0.0.0",
"dependencies": { "dependencies": {
"@fireworks-js/vue": "^2.10.7", "@fireworks-js/vue": "^2.10.7",
"@iconify-json/icon-park": "^1.1.14",
"@iconify-json/icon-park-solid": "^1.1.15",
"@iconify/vue": "^4.1.2", "@iconify/vue": "^4.1.2",
"@monogrid/gainmap-js": "^3.0.5", "@monogrid/gainmap-js": "^3.0.5",
"@tresjs/cientos": "^3.9.0", "@tresjs/cientos": "^3.9.0",
@ -436,6 +438,24 @@
"vue": ">=3.0.0" "vue": ">=3.0.0"
} }
}, },
"node_modules/@iconify-json/icon-park": {
"version": "1.1.14",
"resolved": "https://registry.npmjs.org/@iconify-json/icon-park/-/icon-park-1.1.14.tgz",
"integrity": "sha512-D/Tyww0fPhEwLqeQuzKMxE4HKjWsCG8TPRZsUIgjGh1qBOI3Ad9G5y0mQi4mLBtHrdCPdfbCz2oZJHxPoLyScA==",
"license": "Apache-2.0",
"dependencies": {
"@iconify/types": "*"
}
},
"node_modules/@iconify-json/icon-park-solid": {
"version": "1.1.15",
"resolved": "https://registry.npmjs.org/@iconify-json/icon-park-solid/-/icon-park-solid-1.1.15.tgz",
"integrity": "sha512-fFuDj5H8+x/V2hzknhpBifFBIOVP/sm2ElGQ0M1W4d0EQ5f7Pss1v7tfmDSQR2F6eISKDjuA2yyT7fF/C366Hw==",
"license": "Apache-2.0",
"dependencies": {
"@iconify/types": "*"
}
},
"node_modules/@iconify-json/mdi": { "node_modules/@iconify-json/mdi": {
"version": "1.1.66", "version": "1.1.66",
"resolved": "https://registry.npmjs.org/@iconify-json/mdi/-/mdi-1.1.66.tgz", "resolved": "https://registry.npmjs.org/@iconify-json/mdi/-/mdi-1.1.66.tgz",

View File

@ -11,6 +11,8 @@
}, },
"dependencies": { "dependencies": {
"@fireworks-js/vue": "^2.10.7", "@fireworks-js/vue": "^2.10.7",
"@iconify-json/icon-park": "^1.1.14",
"@iconify-json/icon-park-solid": "^1.1.15",
"@iconify/vue": "^4.1.2", "@iconify/vue": "^4.1.2",
"@monogrid/gainmap-js": "^3.0.5", "@monogrid/gainmap-js": "^3.0.5",
"@tresjs/cientos": "^3.9.0", "@tresjs/cientos": "^3.9.0",

View File

@ -1,6 +1,9 @@
@import 'grid.scss'; @import 'grid.scss';
@import 'fonts.scss'; @import 'fonts.scss';
body {
font-family: 'Montserrat';
}
a[href] { a[href] {
color: #048280; color: #048280;

View File

@ -49,5 +49,19 @@ $white: #fff;
&-content { &-content {
flex-grow: 1; flex-grow: 1;
text-align: right;
font-size: 1.125rem;
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: flex-end;
.nav-icon {
margin: 0 0.25rem;
font-size: 1.25em;
width: 1.25em;
height: 1.25em;
}
} }
} }

View File

@ -6,7 +6,7 @@ $primary: #E75B12;
.homelink { .homelink {
position: absolute; position: absolute;
right: 2rem; right: 2rem;
top: 4rem; top: 2rem;
transition: right 300ms linear; transition: right 300ms linear;
@ -16,19 +16,11 @@ $primary: #E75B12;
} }
a { a {
background-color: $bg;
color: $textColor; color: $textColor;
line-height: 1; line-height: 1;
font-size: 3rem; font-size: 2.5rem;
height: 7rem;
display: flex; display: flex;
align-items: center; align-items: center;
border-radius: 1rem;
opacity: 0.97;
svg {
transition: all 400ms linear;
}
} }
&.open { &.open {
@ -72,7 +64,6 @@ $primary: #E75B12;
padding: 1.5rem; padding: 1.5rem;
color: $textColor; color: $textColor;
font-family: 'Montserrat';
} }
&-list {} &-list {}

View File

@ -84,14 +84,9 @@ const sidebarFunc = () => {
</TresCanvas> </TresCanvas>
<div class="homelink" :class="[{ open: sidebar.is_open }]"> <div class="homelink" :class="[{ open: sidebar.is_open }]">
<a href="#" @click.prevent="sidebarFunc"> <a href="#" @click.prevent="sidebarFunc">
<i-mdi-chevron-left /> <i-icon-park-solid-left-c />
</a> </a>
</div> </div>
<div class="homelink main" v-if="route.params.item">
<RouterLink :to="`/${route.params.item.toString()}`" @click.prevent="sidebarFunc">
<i-mdi-home />
</RouterLink>
</div>
</div> </div>
<Sidebar /> <Sidebar />
</div> </div>

View File

@ -14,28 +14,30 @@ const page = useItem()
<div class="nav-group"> <div class="nav-group">
<span class="nav-icon" :class="[{ 'active': route.name == 'home' || route.fullPath == '/' }]"> <span class="nav-icon" :class="[{ 'active': route.name == 'home' || route.fullPath == '/' }]">
<RouterLink :to="`/${page.slug}`"> <RouterLink :to="`/${page.slug}`">
<Icon icon="mdi:home-outline" /> <i-mdi-home-outline />
</RouterLink> </RouterLink>
</span> </span>
<span class="nav-icon" :class="[{ 'active': route.name == 'scene' }]" style="font-size: 1.875rem;"> <span class="nav-icon" :class="[{ 'active': route.name == 'scene' }]" style="font-size: 1.875rem;">
<RouterLink :to="`/${page.slug}/${page.scene_3d}`"> <RouterLink :to="`/${page.slug}/${page.scene_3d}`">
<Icon icon="mdi:video-3d" /> <i-mdi:video-3d />
</RouterLink> </RouterLink>
</span> </span>
<span class="nav-icon" style="font-size: 1.375rem;"> <span class="nav-icon" style="font-size: 1.375rem;">
<Icon icon="mdi:vector-arrange-below" /> <i-mdi:vector-arrange-below />
</span> </span>
</div> </div>
<div class="nav-group"> <div class="nav-group">
<span class="nav-icon"> <span class="nav-icon">
<Icon icon="mdi:arrow-left" /> <i-mdi:arrow-left />
</span> </span>
<span class="nav-icon"> <span class="nav-icon">
<Icon icon="mdi:arrow-right" /> <i-mdi:arrow-right />
</span> </span>
</div> </div>
<div class="nav-content"> <div class="nav-content">
Нажмите на <span class="nav-icon">
<i-mdi:arrow-left />
</span> вверху экрана, чтобы узнать подробнее про объекты на глэмпинге
</div> </div>
</div> </div>
</template> </template>