<template>
  <b-button
    id="scrollToTopBtn"
    class="btn-top btn-icon-only"
    :class="{ 'show-btn': showButton }"
    variant="secondary"
    :title="$t('global.ariaLabel.scrollToTop')"
    @click="scrollToTop"
  >
    <icon-up-to-top />
    <span class="sr-only">{{ $t('global.ariaLabel.scrollToTop') }}</span>
  </b-button>
</template>

<script>
import UpToTop24 from '@carbon/icons-vue/es/up-to-top/24';

import { debounce } from 'lodash';
import { useI18n } from 'vue-i18n';

export default {
  name: 'BackToTop',
  components: { IconUpToTop: UpToTop24 },
  data() {
    return {
      $t: useI18n().t,
      showButton: false,
    };
  },
  created() {
    window.addEventListener('scroll', debounce(this.handleScroll, 200));
  },
  methods: {
    handleScroll() {
      document.documentElement.scrollTop > 500
        ? (this.showButton = true)
        : (this.showButton = false);
    },
    scrollToTop() {
      document.documentElement.scrollTo({
        top: 0,
        behavior: 'smooth',
      });
    },
  },
};
</script>

<style lang="scss" scoped>
.btn-top {
  position: fixed;
  bottom: 24px;
  right: 24px;

  box-shadow: $box-shadow;
  visibility: hidden;
  opacity: 0;
  transition: $transition-base;
  z-index: $zindex-fixed;

  @media (min-width: 1600px) {
    left: 1485px;
    right: auto;
  }
}
.show-btn {
  visibility: visible;
  opacity: 1;
}
</style>
