logo

pleroma-fe

My custom branche(s) on git.pleroma.social/pleroma/pleroma-fe git clone https://hacktivis.me/git/pleroma-fe.git
commit: 1187727b6065363c253f399a6da53725a493fb32
parent 54fd7e2be6e8dcbe3c57deb5c3688916cbc53648
Author: Henry Jameson <me@hjkos.com>
Date:   Mon, 21 Mar 2022 21:29:51 +0200

fix tabswitcher bugs

Diffstat:

Msrc/components/interactions/interactions.js4+++-
Msrc/components/tab_switcher/tab_switcher.jsx9++++++---
2 files changed, 9 insertions(+), 4 deletions(-)

diff --git a/src/components/interactions/interactions.js b/src/components/interactions/interactions.js @@ -1,4 +1,5 @@ import Notifications from '../notifications/notifications.vue' +import TabSwitcher from 'src/components/tab_switcher/tab_switcher.jsx' const tabModeDict = { mentions: ['mention'], @@ -20,7 +21,8 @@ const Interactions = { } }, components: { - Notifications + Notifications, + TabSwitcher } } diff --git a/src/components/tab_switcher/tab_switcher.jsx b/src/components/tab_switcher/tab_switcher.jsx @@ -1,5 +1,5 @@ // eslint-disable-next-line no-unused -import { h } from 'vue' +import { h, Fragment } from 'vue' import { mapState } from 'vuex' import { FontAwesomeIcon as FAIcon } from '@fortawesome/vue-fontawesome' @@ -43,14 +43,14 @@ export default { }, data () { return { - active: findFirstUsable(this.$slots.default()) + active: findFirstUsable(this.slots()) } }, computed: { activeIndex () { // In case of controlled component if (this.activeTab) { - return this.$slots.default().findIndex(slot => this.activeTab === slot.key) + return this.slots().findIndex(slot => this.activeTab === slot.key) } else { return this.active } @@ -74,6 +74,9 @@ export default { }, // DO NOT put it to computed, it doesn't work (caching?) slots () { + if (this.$slots.default()[0].type === Fragment) { + return this.$slots.default()[0].children + } return this.$slots.default() }, setTab (index) {