diff --git a/client/components/Reader/HelpPage/HelpPage.vue b/client/components/Reader/HelpPage/HelpPage.vue index e5db63f7..f54c25b7 100644 --- a/client/components/Reader/HelpPage/HelpPage.vue +++ b/client/components/Reader/HelpPage/HelpPage.vue @@ -9,21 +9,14 @@ v-model="selectedTab" toggle-color="primary" no-caps unelevated - :options="[ - {label: 'Общее', value: 'common'}, - {label: 'Клавиатура', value: 'hotkeys'}, - {label: 'Мышь/тачскрин', value: 'mouse'}, - {label: 'История версий', value: 'releases'}, - {label: 'Помочь проекту', value: 'donate'} - ]" + :options="buttons" />
- - - - - + + + @@ -37,32 +30,54 @@ import Window from '../../share/Window.vue'; import CommonHelpPage from './CommonHelpPage/CommonHelpPage.vue'; import HotkeysHelpPage from './HotkeysHelpPage/HotkeysHelpPage.vue'; import MouseHelpPage from './MouseHelpPage/MouseHelpPage.vue'; -import DonateHelpPage from './DonateHelpPage/DonateHelpPage.vue'; import VersionHistoryPage from './VersionHistoryPage/VersionHistoryPage.vue'; +import DonateHelpPage from './DonateHelpPage/DonateHelpPage.vue'; + +const pages = { + 'CommonHelpPage': CommonHelpPage, + 'HotkeysHelpPage': HotkeysHelpPage, + 'MouseHelpPage': MouseHelpPage, + 'VersionHistoryPage': VersionHistoryPage, + 'DonateHelpPage': DonateHelpPage, +}; + +const tabs = [ + ['CommonHelpPage', 'Общее'], + ['HotkeysHelpPage', 'Клавиатура'], + ['MouseHelpPage', 'Мышь/тачскрин'], + ['VersionHistoryPage', 'История версий'], + ['DonateHelpPage', 'Помочь проекту'], +]; export default @Component({ - components: { - Window, - CommonHelpPage, - HotkeysHelpPage, - MouseHelpPage, - DonateHelpPage, - VersionHistoryPage, - }, + components: Object.assign({ Window }, pages), }) class HelpPage extends Vue { - selectedTab = 'common'; + selectedTab = 'CommonHelpPage'; close() { this.$emit('help-toggle'); } + get activePage() { + if (pages[this.selectedTab]) + return pages[this.selectedTab]; + return null; + } + + get buttons() { + let result = []; + for (const tab of tabs) + result.push({label: tab[1], value: tab[0]}); + return result; + } + activateDonateHelpPage() { - this.selectedTab = 'donate'; + this.selectedTab = 'DonateHelpPage'; } activateVersionHistoryHelpPage() { - this.selectedTab = 'releases'; + this.selectedTab = 'VersionHistoryPage'; } keyHook(event) {