parent
f1ce14e396
commit
c534c3d7fe
14 changed files with 29 additions and 3 deletions
|
@ -35,6 +35,7 @@ const messages = defineMessages({
|
|||
suspended: { id: 'about.domain_blocks.suspended.title', defaultMessage: 'Suspended' },
|
||||
suspendedExplanation: { id: 'about.domain_blocks.suspended.explanation', defaultMessage: 'No data from this server will be processed, stored or exchanged, making any interaction or communication with users from this server impossible.' },
|
||||
publicUnlistedVisibility: { id: 'privacy.public_unlisted.short', defaultMessage: 'Public unlisted' },
|
||||
publicVisibility: { id: 'about.public_visibility', defaultMessage: 'Public visibility' },
|
||||
emojiReaction: { id: 'status.emoji_reaction', defaultMessage: 'Emoji reaction' },
|
||||
enabled: { id: 'about.enabled', defaultMessage: 'Enabled' },
|
||||
disabled: { id: 'about.disabled', defaultMessage: 'Disabled' },
|
||||
|
@ -157,6 +158,7 @@ class About extends PureComponent {
|
|||
|
||||
const fedibirdCapabilities = server.get('fedibird_capabilities') || []; // thinking about isLoading is true
|
||||
const isPublicUnlistedVisibility = fedibirdCapabilities.includes('kmyblue_visibility_public_unlisted');
|
||||
const isPublicVisibility = !fedibirdCapabilities.includes('kmyblue_no_public_visibility');
|
||||
const isEmojiReaction = fedibirdCapabilities.includes('emoji_reaction');
|
||||
const isLocalTimeline = !fedibirdCapabilities.includes('timeline_no_local');
|
||||
|
||||
|
@ -232,6 +234,9 @@ class About extends PureComponent {
|
|||
<li>
|
||||
<span className='rules-list__text'>{intl.formatMessage(messages.emojiReaction)}: <CapabilityIcon state={isEmojiReaction} intl={intl} /></span>
|
||||
</li>
|
||||
<li>
|
||||
<span className='rules-list__text'>{intl.formatMessage(messages.publicVisibility)}: <CapabilityIcon state={isPublicVisibility} intl={intl} /></span>
|
||||
</li>
|
||||
<li>
|
||||
<span className='rules-list__text'>{intl.formatMessage(messages.publicUnlistedVisibility)}: <CapabilityIcon state={isPublicUnlistedVisibility} intl={intl} /></span>
|
||||
</li>
|
||||
|
|
|
@ -20,7 +20,7 @@ import QuietTimeIcon from '@/material-icons/400-24px/quiet_time.svg?react';
|
|||
import ReplyIcon from '@/material-icons/400-24px/reply.svg?react';
|
||||
import LimitedIcon from '@/material-icons/400-24px/shield.svg?react';
|
||||
import { Icon } from 'mastodon/components/icon';
|
||||
import { enableLoginPrivacy, enableLocalPrivacy } from 'mastodon/initial_state';
|
||||
import { enableLoginPrivacy, enableLocalPrivacy, enablePublicPrivacy } from 'mastodon/initial_state';
|
||||
|
||||
const messages = defineMessages({
|
||||
public_short: { id: 'privacy.public.short', defaultMessage: 'Public' },
|
||||
|
@ -279,6 +279,10 @@ class PrivacyDropdown extends PureComponent {
|
|||
this.options = this.options.filter((opt) => opt.value !== 'public_unlisted');
|
||||
}
|
||||
|
||||
if (!enablePublicPrivacy) {
|
||||
this.options = this.options.filter((opt) => opt.value !== 'public');
|
||||
}
|
||||
|
||||
this.selectableOptions = [...this.options];
|
||||
}
|
||||
|
||||
|
|
|
@ -38,6 +38,7 @@
|
|||
* @property {boolean} enable_local_privacy
|
||||
* @property {boolean} enable_local_timeline
|
||||
* @property {boolean} enable_dtl_menu
|
||||
* @property {boolean} enable_public_privacy
|
||||
* @property {boolean=} expand_spoilers
|
||||
* @property {HideItemsDefinition[]} hide_items
|
||||
* @property {boolean} limited_federation_mode
|
||||
|
@ -122,6 +123,7 @@ export const domain = getMeta('domain');
|
|||
export const dtlTag = getMeta('dtl_tag');
|
||||
export const enableEmojiReaction = getMeta('enable_emoji_reaction');
|
||||
export const enableLocalPrivacy = getMeta('enable_local_privacy');
|
||||
export const enablePublicPrivacy = getMeta('enable_public_privacy');
|
||||
export const enableLocalTimeline = getMeta('enable_local_timeline');
|
||||
export const enableLoginPrivacy = getMeta('enable_login_privacy');
|
||||
export const enableDtlMenu = getMeta('enable_dtl_menu');
|
||||
|
|
|
@ -16,6 +16,7 @@
|
|||
"about.kmyblue_capability": "このサーバーは、kmyblueというMastodonフォークを利用しています。kmyblue独自機能の一部は、サーバー管理者によって有効・無効を切り替えることができます。",
|
||||
"about.not_available": "この情報はこのサーバーでは利用できません。",
|
||||
"about.powered_by": "{mastodon}による分散型ソーシャルメディア",
|
||||
"about.public_visibility": "公開投稿を許可",
|
||||
"about.rules": "サーバーのルール",
|
||||
"account.account_note_header": "メモ",
|
||||
"account.add_or_remove_from_antenna": "アンテナから追加または外す",
|
||||
|
|
|
@ -56,7 +56,7 @@ import {
|
|||
import { REDRAFT } from '../actions/statuses';
|
||||
import { STORE_HYDRATE } from '../actions/store';
|
||||
import { TIMELINE_DELETE } from '../actions/timelines';
|
||||
import { enableLocalPrivacy, enableLoginPrivacy, me } from '../initial_state';
|
||||
import { enableLocalPrivacy, enableLoginPrivacy, enablePublicPrivacy, me } from '../initial_state';
|
||||
import { unescapeHTML } from '../utils/html';
|
||||
import { uuid } from '../uuid';
|
||||
|
||||
|
@ -142,7 +142,7 @@ function clearAll(state) {
|
|||
map.set('default_privacy', state.get('privacy'));
|
||||
}
|
||||
if ((map.get('privacy') === 'login' && !enableLoginPrivacy) || (map.get('privacy') === 'public_unlisted' && !enableLocalPrivacy)) {
|
||||
map.set('privacy', 'public');
|
||||
map.set('privacy', enablePublicPrivacy ? 'public' : 'unlisted');
|
||||
}
|
||||
if (!state.get('in_reply_to')) {
|
||||
map.set('posted_on_this_session', true);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue