wavelovers/src/components/AppPatterns.vue
Eugene Serb ebe813e7d3 - Added component and view for manual configuring and playing patterns.
- Added component NavigationList for routing over vue-router views.
- Rename component WaveloversApp, now is a AppPatterns.
- Rename HomeView, now is a PatternView.
- Modified function vibrate in MGamepads and change function in index vuex.
- Root component App now has mounted and unmounted event listeners for gamepads adding and deleteting functions.
- Fixed CSS rules for inputs and input[type=range].
- Added new rules for input[type=range].
2022-08-07 21:29:22 +03:00

47 lines
1.4 KiB
Vue

<template>
<div class="app-patterns">
<PatternList v-if="patterns.length > 0"
:patterns="patterns"
:mode="mode"
:isActive="isActive"
@change="change" />
<MessageItem v-else>Loading...</MessageItem>
</div>
</template>
<script lang="ts">
import { defineComponent } from 'vue';
import store from '@/store/index';
import PatternList from '@/components/PatternList.vue';
import MessageItem from '@/components/MessageItem.vue';
import TPattern from '@/models/TPattern';
export default defineComponent({
name: 'AppPatterns',
components: {
PatternList: PatternList,
MessageItem: MessageItem,
},
computed: {
patterns: function (): TPattern[] {
return store.getters.patterns as TPattern[];
},
mode: function (): number {
return store.getters.mode as number;
},
isActive: function (): boolean {
return store.getters.isActive as boolean;
},
},
methods: {
change(index: number): void {
store.dispatch('change', index as number);
},
},
mounted() {
store.dispatch('loadPatterns');
},
});
</script>