Skip to content
Snippets Groups Projects
FeaturedGallery.vue 1.31 KiB
Newer Older
fibasile's avatar
fibasile committed
<template>
fibasile's avatar
fibasile committed
  <section
    id="featured-gallery"
    class="q-my-lg"
  >
    <div class="text-uppercase text-grey-9 text-h6 text-left q-ml-md">
      Most downloaded
    </div>
fibasile's avatar
fibasile committed

    <div v-if="items && items.length > 0">
      <div class="row">
fibasile's avatar
fibasile committed
        <div
          v-for="project in items"
          :key="project['id']"
          class="col-12 col-sm-6 col-md-4"
        >
          <ProjectThumb
            :project="project"
            @clickProject="handleClickProject"
          />
fibasile's avatar
fibasile committed
        </div>
      </div>
      <div class="row">
        <div class="col-12 text-center">
fibasile's avatar
fibasile committed
          <q-btn
            class="text-grey-5"
            flat
          >
            Browse all designs
          </q-btn>
fibasile's avatar
fibasile committed
        </div>
fibasile's avatar
fibasile committed
      </div>
    </div>
fibasile's avatar
fibasile committed
    <div v-else>
      <div class="row">
fibasile's avatar
fibasile committed
        <div class="col-12 text-h6 text-grey q-ml-md">
          Loading...
        </div>
fibasile's avatar
fibasile committed
        <div class="col-12 q-ml-md">
fibasile's avatar
fibasile committed
          <q-spinner-dots size="32px" />
fibasile's avatar
fibasile committed
        </div>
fibasile's avatar
fibasile committed
      </div>
    </div>
  </section>
</template>

<script>
fibasile's avatar
fibasile committed
import ProjectThumb from 'src/components/project/ProjectThumb';
fibasile's avatar
fibasile committed
export default {
  // name: 'ComponentName',
fibasile's avatar
fibasile committed
  props: ['items'],
fibasile's avatar
fibasile committed
  components: {
    ProjectThumb
  },
fibasile's avatar
fibasile committed
  methods: {
fibasile's avatar
fibasile committed
    handleClickProject (key) {
      this.$router.push('/projects/' + key);
fibasile's avatar
fibasile committed
    }
  },
fibasile's avatar
fibasile committed
  data () {
fibasile's avatar
fibasile committed
    return {};
  }
};
</script>