From 21f1637e437398ec56b6078cf28b58bd4a0299ba Mon Sep 17 00:00:00 2001 From: Ariadne Conill Date: Mon, 11 Nov 2019 14:14:44 -0600 Subject: nav panel: refactor to use vuex mapState --- src/components/nav_panel/nav_panel.js | 17 ++++++----------- 1 file changed, 6 insertions(+), 11 deletions(-) (limited to 'src/components/nav_panel/nav_panel.js') diff --git a/src/components/nav_panel/nav_panel.js b/src/components/nav_panel/nav_panel.js index aa3f7605..bfcab62e 100644 --- a/src/components/nav_panel/nav_panel.js +++ b/src/components/nav_panel/nav_panel.js @@ -1,4 +1,5 @@ import followRequestFetcher from '../../services/follow_request_fetcher/follow_request_fetcher.service' +import { mapState } from 'vuex' const NavPanel = { created () { @@ -9,17 +10,11 @@ const NavPanel = { followRequestFetcher.startFetching({ store, credentials }) } }, - computed: { - currentUser () { - return this.$store.state.users.currentUser - }, - chat () { - return this.$store.state.chat.channel - }, - followRequestCount () { - return this.$store.state.api.followRequests.length - } - } + computed: mapState({ + currentUser: state => state.users.currentUser, + chat: state => state.chat.channel, + followRequestCount: state => state.api.followRequests.length + }) } export default NavPanel -- cgit v1.2.3-70-g09d2 From 1f9674350cdf7455fe5540d377eb327edf1336ce Mon Sep 17 00:00:00 2001 From: Ariadne Conill Date: Mon, 11 Nov 2019 14:18:36 -0600 Subject: nav panel: disable TWKN if federation disabled, disable Public and TWKN if privateMode is enabled --- src/components/nav_panel/nav_panel.js | 4 +++- src/components/nav_panel/nav_panel.vue | 4 ++-- 2 files changed, 5 insertions(+), 3 deletions(-) (limited to 'src/components/nav_panel/nav_panel.js') diff --git a/src/components/nav_panel/nav_panel.js b/src/components/nav_panel/nav_panel.js index bfcab62e..a6426d13 100644 --- a/src/components/nav_panel/nav_panel.js +++ b/src/components/nav_panel/nav_panel.js @@ -13,7 +13,9 @@ const NavPanel = { computed: mapState({ currentUser: state => state.users.currentUser, chat: state => state.chat.channel, - followRequestCount: state => state.api.followRequests.length + followRequestCount: state => state.api.followRequests.length, + privateMode: state => state.instance.private, + federating: state => state.instance.federationPolicy.federating || true }) } diff --git a/src/components/nav_panel/nav_panel.vue b/src/components/nav_panel/nav_panel.vue index 28589bb1..d85c28bd 100644 --- a/src/components/nav_panel/nav_panel.vue +++ b/src/components/nav_panel/nav_panel.vue @@ -28,12 +28,12 @@ -
  • +
  • {{ $t("nav.public_tl") }}
  • -
  • +
  • {{ $t("nav.twkn") }} -- cgit v1.2.3-70-g09d2 From 3eeb3dc57296cba13e3760a79b635fba5a332be0 Mon Sep 17 00:00:00 2001 From: Mark Felder Date: Thu, 12 Dec 2019 13:37:32 -0600 Subject: Lint --- src/App.vue | 2 +- src/components/nav_panel/nav_panel.js | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) (limited to 'src/components/nav_panel/nav_panel.js') diff --git a/src/App.vue b/src/App.vue index d455e9ed..5f8517d4 100644 --- a/src/App.vue +++ b/src/App.vue @@ -43,8 +43,8 @@ Date: Thu, 12 Dec 2019 13:56:07 -0600 Subject: The value we are looking for is federationPolicy.enabled, not federationPolicy.federating Also the || true fallback does not work and always becomes true --- src/components/nav_panel/nav_panel.js | 2 +- src/components/side_drawer/side_drawer.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'src/components/nav_panel/nav_panel.js') diff --git a/src/components/nav_panel/nav_panel.js b/src/components/nav_panel/nav_panel.js index f27727fc..7da9f8c6 100644 --- a/src/components/nav_panel/nav_panel.js +++ b/src/components/nav_panel/nav_panel.js @@ -11,7 +11,7 @@ const NavPanel = { chat: state => state.chat.channel, followRequestCount: state => state.api.followRequests.length, privateMode: state => state.instance.private, - federating: state => state.instance.federationPolicy.federating || true + federating: state => state.instance.federationPolicy.enabled }) } diff --git a/src/components/side_drawer/side_drawer.js b/src/components/side_drawer/side_drawer.js index 22cb1a55..e08f7cbe 100644 --- a/src/components/side_drawer/side_drawer.js +++ b/src/components/side_drawer/side_drawer.js @@ -46,7 +46,7 @@ const SideDrawer = { return this.$store.state.instance.private }, federating () { - return this.$store.state.instance.federationPolicy.federating || true + return this.$store.state.instance.federationPolicy.enabled } }, methods: { -- cgit v1.2.3-70-g09d2 From 8d14036a23adbd13b098abeeef9622471f4a64d3 Mon Sep 17 00:00:00 2001 From: Mark Felder Date: Thu, 12 Dec 2019 15:17:23 -0600 Subject: Add fallback in case BE does not report federating status in nodeinfo --- src/components/nav_panel/nav_panel.js | 2 +- src/components/side_drawer/side_drawer.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'src/components/nav_panel/nav_panel.js') diff --git a/src/components/nav_panel/nav_panel.js b/src/components/nav_panel/nav_panel.js index 7da9f8c6..515e47e6 100644 --- a/src/components/nav_panel/nav_panel.js +++ b/src/components/nav_panel/nav_panel.js @@ -11,7 +11,7 @@ const NavPanel = { chat: state => state.chat.channel, followRequestCount: state => state.api.followRequests.length, privateMode: state => state.instance.private, - federating: state => state.instance.federationPolicy.enabled + federating: state => state.instance.federationPolicy.enabled || state.instance.federationPolicy.enabled !== false }) } diff --git a/src/components/side_drawer/side_drawer.js b/src/components/side_drawer/side_drawer.js index e08f7cbe..670d28b4 100644 --- a/src/components/side_drawer/side_drawer.js +++ b/src/components/side_drawer/side_drawer.js @@ -46,7 +46,7 @@ const SideDrawer = { return this.$store.state.instance.private }, federating () { - return this.$store.state.instance.federationPolicy.enabled + return this.$store.state.instance.federationPolicy.enabled || this.$store.state.instance.federationPolicy.enabled !== false } }, methods: { -- cgit v1.2.3-70-g09d2 From d899d06973c7c46e77f9e47f480d6967e83b4adf Mon Sep 17 00:00:00 2001 From: Mark Felder Date: Thu, 12 Dec 2019 15:29:50 -0600 Subject: Use a centralized fallback for missing values and use instance.federating instead of instance.federation.enabled --- src/boot/after_store.js | 6 ++++++ src/components/nav_panel/nav_panel.js | 2 +- src/components/side_drawer/side_drawer.js | 2 +- 3 files changed, 8 insertions(+), 2 deletions(-) (limited to 'src/components/nav_panel/nav_panel.js') diff --git a/src/boot/after_store.js b/src/boot/after_store.js index f169d7ba..228a0497 100644 --- a/src/boot/after_store.js +++ b/src/boot/after_store.js @@ -228,6 +228,12 @@ const getNodeInfo = async ({ store }) => { const federation = metadata.federation store.dispatch('setInstanceOption', { name: 'federationPolicy', value: federation }) + store.dispatch('setInstanceOption', { + name: 'federating', + value: typeof federation.enabled === 'undefined' + ? true + : federation.enabled + }) const accounts = metadata.staffAccounts await resolveStaffAccounts({ store, accounts }) diff --git a/src/components/nav_panel/nav_panel.js b/src/components/nav_panel/nav_panel.js index 515e47e6..d9268585 100644 --- a/src/components/nav_panel/nav_panel.js +++ b/src/components/nav_panel/nav_panel.js @@ -11,7 +11,7 @@ const NavPanel = { chat: state => state.chat.channel, followRequestCount: state => state.api.followRequests.length, privateMode: state => state.instance.private, - federating: state => state.instance.federationPolicy.enabled || state.instance.federationPolicy.enabled !== false + federating: state => state.instance.federating }) } diff --git a/src/components/side_drawer/side_drawer.js b/src/components/side_drawer/side_drawer.js index 670d28b4..2534eb8f 100644 --- a/src/components/side_drawer/side_drawer.js +++ b/src/components/side_drawer/side_drawer.js @@ -46,7 +46,7 @@ const SideDrawer = { return this.$store.state.instance.private }, federating () { - return this.$store.state.instance.federationPolicy.enabled || this.$store.state.instance.federationPolicy.enabled !== false + return this.$store.state.instance.federating } }, methods: { -- cgit v1.2.3-70-g09d2