From bc5005b3ddddeb47d5160a1b79d2edb39e887b4b Mon Sep 17 00:00:00 2001 From: Mark Felder Date: Tue, 12 May 2020 13:59:52 -0500 Subject: Permit sidebar alignment with instance configuration option --- src/modules/instance.js | 1 + 1 file changed, 1 insertion(+) (limited to 'src/modules/instance.js') diff --git a/src/modules/instance.js b/src/modules/instance.js index ffece311..869ceebd 100644 --- a/src/modules/instance.js +++ b/src/modules/instance.js @@ -36,6 +36,7 @@ const defaultState = { showFeaturesPanel: true, minimalScopesMode: false, greentext: false, + sidebarRight: false, // Nasty stuff pleromaBackend: true, -- cgit v1.2.3-70-g09d2 From 98d332793ccb8b73a8b5f6ec8893d0459412b242 Mon Sep 17 00:00:00 2001 From: Mark Felder Date: Wed, 13 May 2020 14:40:46 -0500 Subject: alpha sort --- src/modules/instance.js | 47 +++++++++++++++++++++++------------------------ 1 file changed, 23 insertions(+), 24 deletions(-) (limited to 'src/modules/instance.js') diff --git a/src/modules/instance.js b/src/modules/instance.js index ffece311..eeee115c 100644 --- a/src/modules/instance.js +++ b/src/modules/instance.js @@ -5,37 +5,36 @@ import { instanceDefaultProperties } from './config.js' const defaultState = { // Stuff from static/config.json and apiConfig - name: 'Pleroma FE', - registrationOpen: true, - safeDM: true, - textlimit: 5000, - server: 'http://localhost:4040/', - theme: 'pleroma-dark', - themeData: undefined, - background: '/static/aurora_borealis.jpg', - logo: '/static/logo.png', - logoMask: true, - logoMargin: '.2em', - redirectRootNoLogin: '/main/all', - redirectRootLogin: '/main/friends', - showInstanceSpecificPanel: false, alwaysShowSubjectInput: true, - hideMutedPosts: false, + background: '/static/aurora_borealis.jpg', collapseMessageWithSubject: false, + disableChat: false, + greentext: false, + hideFilteredStatuses: false, + hideMutedPosts: false, hidePostStats: false, + hideSitename: false, hideUserStats: false, - hideFilteredStatuses: false, - disableChat: false, + logo: '/static/logo.png', + logoMargin: '.2em', + logoMask: true, + minimalScopesMode: false, + name: 'Pleroma FE', + nsfwCensorImage: undefined, + postContentType: 'text/plain', + redirectRootLogin: '/main/friends', + redirectRootNoLogin: '/main/all', + registrationOpen: true, + safeDM: true, scopeCopy: true, + server: 'http://localhost:4040/', + showFeaturesPanel: true, + showInstanceSpecificPanel: false, subjectLineBehavior: 'email', - postContentType: 'text/plain', - hideSitename: false, - nsfwCensorImage: undefined, + textlimit: 5000, + theme: 'pleroma-dark', + themeData: undefined, vapidPublicKey: undefined, - noAttachmentLinks: false, - showFeaturesPanel: true, - minimalScopesMode: false, - greentext: false, // Nasty stuff pleromaBackend: true, -- cgit v1.2.3-70-g09d2 From a4a25105babae42b04d173b44dcb8a2d797b87fc Mon Sep 17 00:00:00 2001 From: Mark Felder Date: Wed, 13 May 2020 14:43:36 -0500 Subject: Separate the user configurable section --- src/modules/instance.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src/modules/instance.js') diff --git a/src/modules/instance.js b/src/modules/instance.js index eeee115c..1b04032b 100644 --- a/src/modules/instance.js +++ b/src/modules/instance.js @@ -4,6 +4,9 @@ import { CURRENT_VERSION } from '../services/theme_data/theme_data.service.js' import { instanceDefaultProperties } from './config.js' const defaultState = { + // not user configurable + name: 'Pleroma FE', + // Stuff from static/config.json and apiConfig alwaysShowSubjectInput: true, background: '/static/aurora_borealis.jpg', @@ -19,7 +22,6 @@ const defaultState = { logoMargin: '.2em', logoMask: true, minimalScopesMode: false, - name: 'Pleroma FE', nsfwCensorImage: undefined, postContentType: 'text/plain', redirectRootLogin: '/main/friends', -- cgit v1.2.3-70-g09d2 From 62e0fda5978c8cf592fb0cdf28e485e87378f467 Mon Sep 17 00:00:00 2001 From: Mark Felder Date: Wed, 13 May 2020 14:46:31 -0500 Subject: loginMethod was missing --- src/modules/instance.js | 1 + 1 file changed, 1 insertion(+) (limited to 'src/modules/instance.js') diff --git a/src/modules/instance.js b/src/modules/instance.js index 1b04032b..8be8ba63 100644 --- a/src/modules/instance.js +++ b/src/modules/instance.js @@ -18,6 +18,7 @@ const defaultState = { hidePostStats: false, hideSitename: false, hideUserStats: false, + loginMethod: 'password', logo: '/static/logo.png', logoMargin: '.2em', logoMask: true, -- cgit v1.2.3-70-g09d2 From e80fa3ff6d620dfe09ca373e7761b6c2f1775a12 Mon Sep 17 00:00:00 2001 From: Mark Felder Date: Wed, 13 May 2020 15:40:13 -0500 Subject: Split apiConfig options from static/config.json options; Move safeDM to nasty section, alpha sort things --- src/modules/instance.js | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) (limited to 'src/modules/instance.js') diff --git a/src/modules/instance.js b/src/modules/instance.js index 8be8ba63..a8029dc1 100644 --- a/src/modules/instance.js +++ b/src/modules/instance.js @@ -4,10 +4,16 @@ import { CURRENT_VERSION } from '../services/theme_data/theme_data.service.js' import { instanceDefaultProperties } from './config.js' const defaultState = { - // not user configurable + // not configurable name: 'Pleroma FE', - // Stuff from static/config.json and apiConfig + // Stuff from apiConfig + server: 'http://localhost:4040/', + textlimit: 5000, + themeData: undefined, + vapidPublicKey: undefined, + + // Stuff from static/config.json alwaysShowSubjectInput: true, background: '/static/aurora_borealis.jpg', collapseMessageWithSubject: false, @@ -28,29 +34,25 @@ const defaultState = { redirectRootLogin: '/main/friends', redirectRootNoLogin: '/main/all', registrationOpen: true, - safeDM: true, scopeCopy: true, - server: 'http://localhost:4040/', showFeaturesPanel: true, showInstanceSpecificPanel: false, subjectLineBehavior: 'email', - textlimit: 5000, theme: 'pleroma-dark', - themeData: undefined, - vapidPublicKey: undefined, // Nasty stuff - pleromaBackend: true, - emoji: [], - emojiFetched: false, customEmoji: [], customEmojiFetched: false, - restrictedNicknames: [], + emoji: [], + emojiFetched: false, + pleromaBackend: true, postFormats: [], + restrictedNicknames: [], + safeDM: true, // Feature-set, apparently, not everything here is reported... - mediaProxyAvailable: false, chatAvailable: false, + mediaProxyAvailable: false, gopherAvailable: false, suggestionsEnabled: false, suggestionsWeb: '', -- cgit v1.2.3-70-g09d2 From 03318b64aacbbb48d15c94ada5ade4b38752a734 Mon Sep 17 00:00:00 2001 From: Mark Felder Date: Wed, 13 May 2020 15:48:21 -0500 Subject: Really alpha sort this --- src/modules/instance.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/modules/instance.js') diff --git a/src/modules/instance.js b/src/modules/instance.js index a8029dc1..278a93ab 100644 --- a/src/modules/instance.js +++ b/src/modules/instance.js @@ -52,8 +52,8 @@ const defaultState = { // Feature-set, apparently, not everything here is reported... chatAvailable: false, - mediaProxyAvailable: false, gopherAvailable: false, + mediaProxyAvailable: false, suggestionsEnabled: false, suggestionsWeb: '', -- cgit v1.2.3-70-g09d2 From 79c53b849ed8d5abac978ed675488bf53ea8fb06 Mon Sep 17 00:00:00 2001 From: Mark Felder Date: Wed, 13 May 2020 16:46:58 -0500 Subject: registrationOpen is not an FE setting --- src/modules/instance.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/modules/instance.js') diff --git a/src/modules/instance.js b/src/modules/instance.js index 278a93ab..beea424b 100644 --- a/src/modules/instance.js +++ b/src/modules/instance.js @@ -8,6 +8,7 @@ const defaultState = { name: 'Pleroma FE', // Stuff from apiConfig + registrationOpen: true, server: 'http://localhost:4040/', textlimit: 5000, themeData: undefined, @@ -33,7 +34,6 @@ const defaultState = { postContentType: 'text/plain', redirectRootLogin: '/main/friends', redirectRootNoLogin: '/main/all', - registrationOpen: true, scopeCopy: true, showFeaturesPanel: true, showInstanceSpecificPanel: false, -- cgit v1.2.3-70-g09d2 From 229bf79d9016d19e1482f5e02f2f03e5d8b078e2 Mon Sep 17 00:00:00 2001 From: Mark Felder Date: Wed, 13 May 2020 17:20:35 -0500 Subject: name setting should be with apiConfig section --- src/modules/instance.js | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) (limited to 'src/modules/instance.js') diff --git a/src/modules/instance.js b/src/modules/instance.js index beea424b..94d4176b 100644 --- a/src/modules/instance.js +++ b/src/modules/instance.js @@ -4,10 +4,8 @@ import { CURRENT_VERSION } from '../services/theme_data/theme_data.service.js' import { instanceDefaultProperties } from './config.js' const defaultState = { - // not configurable - name: 'Pleroma FE', - // Stuff from apiConfig + name: 'Pleroma FE', registrationOpen: true, server: 'http://localhost:4040/', textlimit: 5000, -- cgit v1.2.3-70-g09d2 From 10070394780ac79e9ee1e8548500586a1f78f65b Mon Sep 17 00:00:00 2001 From: Sergey Suprunenko Date: Sun, 10 May 2020 12:54:55 +0200 Subject: Autocomplete domain mutes from list of known instances --- CHANGELOG.md | 1 + .../domain_mute_card/domain_mute_card.js | 11 +++++++++ .../domain_mute_card/domain_mute_card.vue | 15 ++++++++++++ .../settings_modal/tabs/mutes_and_blocks_tab.js | 28 +++++++++++++++------- .../settings_modal/tabs/mutes_and_blocks_tab.vue | 21 +++++++--------- src/i18n/en.json | 2 +- src/modules/instance.js | 17 +++++++++++++ src/services/api/api.service.js | 6 +++++ 8 files changed, 79 insertions(+), 22 deletions(-) (limited to 'src/modules/instance.js') diff --git a/CHANGELOG.md b/CHANGELOG.md index 3e467bc9..11f539da 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -13,6 +13,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). ### Add - Added private notifications option for push notifications - 'Copy link' button for statuses (in the ellipsis menu) +- Autocomplete domains from list of known instances ### Changed - Registration page no longer requires email if the server is configured not to require it diff --git a/src/components/domain_mute_card/domain_mute_card.js b/src/components/domain_mute_card/domain_mute_card.js index c8e838ba..f234dcb0 100644 --- a/src/components/domain_mute_card/domain_mute_card.js +++ b/src/components/domain_mute_card/domain_mute_card.js @@ -5,9 +5,20 @@ const DomainMuteCard = { components: { ProgressButton }, + computed: { + user () { + return this.$store.state.users.currentUser + }, + muted () { + return this.user.domainMutes.includes(this.domain) + } + }, methods: { unmuteDomain () { return this.$store.dispatch('unmuteDomain', this.domain) + }, + muteDomain () { + return this.$store.dispatch('muteDomain', this.domain) } } } diff --git a/src/components/domain_mute_card/domain_mute_card.vue b/src/components/domain_mute_card/domain_mute_card.vue index 567d81c5..97aee243 100644 --- a/src/components/domain_mute_card/domain_mute_card.vue +++ b/src/components/domain_mute_card/domain_mute_card.vue @@ -4,6 +4,7 @@ {{ domain }} @@ -12,6 +13,16 @@ {{ $t('domain_mute_card.unmute_progress') }} + + {{ $t('domain_mute_card.mute') }} + + @@ -34,5 +45,9 @@ button { width: 10em; } + + .autosuggest-results & { + padding-left: 1em; + } } diff --git a/src/components/settings_modal/tabs/mutes_and_blocks_tab.js b/src/components/settings_modal/tabs/mutes_and_blocks_tab.js index b0043dbb..40a87b81 100644 --- a/src/components/settings_modal/tabs/mutes_and_blocks_tab.js +++ b/src/components/settings_modal/tabs/mutes_and_blocks_tab.js @@ -32,12 +32,12 @@ const DomainMuteList = withSubscription({ const MutesAndBlocks = { data () { return { - activeTab: 'profile', - newDomainToMute: '' + activeTab: 'profile' } }, created () { this.$store.dispatch('fetchTokens') + this.$store.dispatch('getKnownDomains') }, components: { TabSwitcher, @@ -51,6 +51,14 @@ const MutesAndBlocks = { Autosuggest, Checkbox }, + computed: { + knownDomains () { + return this.$store.state.instance.knownDomains + }, + user () { + return this.$store.state.users.currentUser + } + }, methods: { importFollows (file) { return this.$store.state.api.backendInteractor.importFollows({ file }) @@ -86,13 +94,13 @@ const MutesAndBlocks = { filterUnblockedUsers (userIds) { return reject(userIds, (userId) => { const relationship = this.$store.getters.relationship(this.userId) - return relationship.blocking || userId === this.$store.state.users.currentUser.id + return relationship.blocking || userId === this.user.id }) }, filterUnMutedUsers (userIds) { return reject(userIds, (userId) => { const relationship = this.$store.getters.relationship(this.userId) - return relationship.muting || userId === this.$store.state.users.currentUser.id + return relationship.muting || userId === this.user.id }) }, queryUserIds (query) { @@ -111,12 +119,16 @@ const MutesAndBlocks = { unmuteUsers (ids) { return this.$store.dispatch('unmuteUsers', ids) }, + filterUnMutedDomains (urls) { + return urls.filter(url => !this.user.domainMutes.includes(url)) + }, + queryKnownDomains (query) { + return new Promise((resolve, reject) => { + resolve(this.knownDomains.filter(url => url.toLowerCase().includes(query))) + }) + }, unmuteDomains (domains) { return this.$store.dispatch('unmuteDomains', domains) - }, - muteDomain () { - return this.$store.dispatch('muteDomain', this.newDomainToMute) - .then(() => { this.newDomainToMute = '' }) } } } diff --git a/src/components/settings_modal/tabs/mutes_and_blocks_tab.vue b/src/components/settings_modal/tabs/mutes_and_blocks_tab.vue index 6884b7be..5a1cf2c0 100644 --- a/src/components/settings_modal/tabs/mutes_and_blocks_tab.vue +++ b/src/components/settings_modal/tabs/mutes_and_blocks_tab.vue @@ -119,21 +119,16 @@
- - - {{ $t('domain_mute_card.mute') }} - - + +
`/api/v1/pleroma/statuses/${id}/reactions` const PLEROMA_EMOJI_REACT_URL = (id, emoji) => `/api/v1/pleroma/statuses/${id}/reactions/${emoji}` const PLEROMA_EMOJI_UNREACT_URL = (id, emoji) => `/api/v1/pleroma/statuses/${id}/reactions/${emoji}` @@ -995,6 +996,10 @@ const search2 = ({ credentials, q, resolve, limit, offset, following }) => { }) } +const fetchKnownDomains = ({ credentials }) => { + return promisedRequest({ url: MASTODON_KNOWN_DOMAIN_LIST_URL, credentials }) +} + const fetchDomainMutes = ({ credentials }) => { return promisedRequest({ url: MASTODON_DOMAIN_BLOCKS_URL, credentials }) } @@ -1193,6 +1198,7 @@ const apiService = { updateNotificationSettings, search2, searchUsers, + fetchKnownDomains, fetchDomainMutes, muteDomain, unmuteDomain -- cgit v1.2.3-70-g09d2