This repository has been archived on 2024-03-13. You can view files and clone it, but cannot push or open issues or pull requests.
timekeeper/components/TimeHeader.vue

83 lines
1.8 KiB
Vue
Raw Normal View History

<template>
<header
2022-01-10 10:15:23 +00:00
class="grid grid-cols-3 w-full font-semibold h-10 m-auto md:relative rounded-bl-full rounded-br-full px-4"
:class="colorClasses"
>
2022-01-10 10:15:23 +00:00
<div class="text-center pt-2 pb-1 border-r border-gray-600 select-none">
{{ $store.getters.gameMonth }} {{ $store.state.gameDate.year }}
</div>
<div
2022-01-10 10:15:23 +00:00
class="text-center pt-2 pb-1 border-r border-gray-600 relative select-none"
>
<progress
class="absolute top-0 left-0 right-0 h-1 w-full"
2022-01-10 10:15:23 +00:00
:max="maxAgeValue"
:value="ageValue"
/>
2022-01-10 10:15:23 +00:00
{{ ageText }}
</div>
2022-01-10 10:15:23 +00:00
<div class="text-center pt-2 pb-1 select-none" v-text="maxAgeText" />
</header>
</template>
<script>
export default {
computed: {
2022-01-10 10:15:23 +00:00
ageText() {
const { year, month } = this.$store.state.playerAge
return `${year}y${month}m max`
},
ageValue() {
const { year, month } = this.$store.state.playerAge
return year * 12 + month
},
maxAgeText() {
const { year, month } = this.$store.state.playerAgeMax
return `${year}y${month}m max`
},
maxAgeValue() {
const { year, month } = this.$store.state.playerAgeMax
return year * 12 + month
},
colorClasses() {
const { lightColor, darkColor } = this.$store.getters.activeTab
return `bg-${darkColor} text-${lightColor}`
},
},
}
</script>
<style scoped>
header {
min-width: 18rem;
transition: background-color 2000ms, color 2000ms;
}
@media (min-width: 768px) {
header {
width: 32rem;
}
}
2022-01-10 10:15:23 +00:00
/* progress for all browsers */
progress::-webkit-progress-bar {
background-color: rgba(255, 255, 255, 0.1);
width: 100%;
}
progress {
background-color: rgba(255, 255, 255, 0.1);
2022-01-10 10:15:23 +00:00
color: currentColor;
}
progress::-webkit-progress-value {
background-color: currentColor;
}
progress::-moz-progress-bar {
background-color: currentColor;
}
</style>