diff --git a/TODO.md b/TODO.md
index a9b87aa..b23b994 100644
--- a/TODO.md
+++ b/TODO.md
@@ -1,2 +1,3 @@
## Services Page
* Have background change as scrolling down the services?
+* menu items (large devices) = nice big images with text coming out
diff --git a/components/GalleryFeatured.vue b/components/GalleryFeatured.vue
index b8b8550..0e97110 100644
--- a/components/GalleryFeatured.vue
+++ b/components/GalleryFeatured.vue
@@ -3,7 +3,8 @@
+ :key="index"
+ @click="$emit('clicked', index)">
{{ gallery.title }}
diff --git a/components/GalleryPage.vue b/components/GalleryPage.vue
index 24a7143..73d0efc 100644
--- a/components/GalleryPage.vue
+++ b/components/GalleryPage.vue
@@ -6,10 +6,12 @@
+ :galleries="galleries"
+ @clicked="handleFeaturedClick" />
+ :galleries="galleries"
+ :active-row="activeRow" />
@@ -36,11 +38,15 @@ export default {
data () {
return {
featuredImageHeight: '16rem',
- imageViewerIsVisible: false
+ imageViewerIsVisible: false,
+ activeRow: 0
}
},
methods: {
+ handleFeaturedClick (index) {
+ this.activeRow = index
+ }
}
}
diff --git a/components/GalleryThumbs.vue b/components/GalleryThumbs.vue
index b0b6078..231fb57 100644
--- a/components/GalleryThumbs.vue
+++ b/components/GalleryThumbs.vue
@@ -3,7 +3,9 @@
-
+ :key="galleryIndex"
+ :class="{ 'is-active': activeRow === galleryIndex }"
+ class="gallery-thumbs__row-container">
@@ -11,7 +13,7 @@
:style="{ 'height': featuredHeight }">
+ @navClick="handleNavClick(galleryIndex, 'right')" />
-
+ @navClick="handleNavClick(galleryIndex, 'left')" />
+ @navClick="handleNavClick(galleryIndex, 'right')" />
{{ image.thumbUrl }}
+ {{ galleryIndex }}: {{ imageIndex }}
@@ -48,13 +51,23 @@ export default {
featuredHeight: {
type: String,
required: true
+ },
+ activeRow: {
+ type: Number,
+ required: true
}
},
data () {
return {
thumbRowOffsets: new Array(this.galleries.length),
- // thumbContainerWidth: 0
+ }
+ },
+
+ computed: {
+ thumbsVerticalOffset () {
+ let rowHeight = this.$refs.thumbContainer ? this.$refs.thumbContainer[0].clientHeight : 0;
+ return rowHeight * this.activeRow
}
},
@@ -80,7 +93,6 @@ export default {
offset += thumbContainerWidth
}
offset = offset < 0 ? 0 : offset
- console.log('offset: ', offset)
this.$set(this.thumbRowOffsets, source, offset)
}
}
@@ -153,14 +165,36 @@ export default {
height: $thumbs-height;
}
+ .gallery__thumbs {
+ width: 100%;
+ }
+
.gallery-thumbs__list {
height: $thumbs-height;
+ flex: 0 0 $thumbs-height;
overflow: hidden;
}
+ .gallery-thumbs__row-container {
+ position: relative;
+
+ transition: opacity .5s;
+ opacity: 0;
+
+ &.is-active {
+ transition: opacity .5s .3s;
+ opacity: 1;
+ }
+ }
+
.gallery-thumbs__row {
- flex: 0 0 $thumbs-height;
+ /* flex: 0 0 $thumbs-height; */
+ position: absolute;
+ height: 100%;
+ width: 10rem;
+ top: 0;
+ left: 0;
}
.thumb-nav {
diff --git a/components/ThumbNav.vue b/components/ThumbNav.vue
index 31e9d78..016c452 100644
--- a/components/ThumbNav.vue
+++ b/components/ThumbNav.vue
@@ -1,5 +1,5 @@
- ThumbNav--{{ direction }}
+ ThumbNav--{{ direction }}