Update privacy.vue

This commit is contained in:
syuilo 2025-02-22 15:13:10 +09:00
parent ee2a859c94
commit 1de4dfd9e8
1 changed files with 221 additions and 150 deletions

View File

@ -5,62 +5,104 @@ SPDX-License-Identifier: AGPL-3.0-only
<template> <template>
<div class="_gaps_m"> <div class="_gaps_m">
<MkSearchSection :label="i18n.ts.privacy" :keywords="['privacy']" icon="ti ti-lock-open">
<MkSearchMarker <MkSearchMarker
:locationLabel="[i18n.ts.privacy, i18n.ts.makeFollowManuallyApprove]" :label="i18n.ts.makeFollowManuallyApprove"
icon="ti ti-lock-open"
:keywords="['follow', 'lock', i18n.ts.lockedAccountInfo]" :keywords="['follow', 'lock', i18n.ts.lockedAccountInfo]"
> >
<MkSwitch v-model="isLocked" @update:modelValue="save()">{{ i18n.ts.makeFollowManuallyApprove }}<template #caption>{{ i18n.ts.lockedAccountInfo }}</template></MkSwitch> <MkSwitch v-model="isLocked" @update:modelValue="save()">{{ i18n.ts.makeFollowManuallyApprove }}<template #caption>{{ i18n.ts.lockedAccountInfo }}</template></MkSwitch>
</MkSearchMarker> </MkSearchMarker>
<MkSearchMarker <MkSearchMarker
:locationLabel="[i18n.ts.privacy, i18n.ts.autoAcceptFollowed]" :label="i18n.ts.autoAcceptFollowed"
icon="ti ti-lock-open"
:keywords="['follow', 'auto', 'accept']" :keywords="['follow', 'auto', 'accept']"
> >
<MkSwitch v-if="isLocked" v-model="autoAcceptFollowed" @update:modelValue="save()">{{ i18n.ts.autoAcceptFollowed }}</MkSwitch> <MkSwitch v-if="isLocked" v-model="autoAcceptFollowed" @update:modelValue="save()">{{ i18n.ts.autoAcceptFollowed }}</MkSwitch>
</MkSearchMarker> </MkSearchMarker>
<MkSearchMarker
:label="i18n.ts.makeReactionsPublic"
:keywords="['reaction', 'public', i18n.ts.makeReactionsPublicDescription]"
>
<MkSwitch v-model="publicReactions" @update:modelValue="save()"> <MkSwitch v-model="publicReactions" @update:modelValue="save()">
{{ i18n.ts.makeReactionsPublic }} {{ i18n.ts.makeReactionsPublic }}
<template #caption>{{ i18n.ts.makeReactionsPublicDescription }}</template> <template #caption>{{ i18n.ts.makeReactionsPublicDescription }}</template>
</MkSwitch> </MkSwitch>
</MkSearchMarker>
<MkSearchMarker
:label="i18n.ts.followingVisibility"
:keywords="['following', 'visibility']"
>
<MkSelect v-model="followingVisibility" @update:modelValue="save()"> <MkSelect v-model="followingVisibility" @update:modelValue="save()">
<template #label>{{ i18n.ts.followingVisibility }}</template> <template #label>{{ i18n.ts.followingVisibility }}</template>
<option value="public">{{ i18n.ts._ffVisibility.public }}</option> <option value="public">{{ i18n.ts._ffVisibility.public }}</option>
<option value="followers">{{ i18n.ts._ffVisibility.followers }}</option> <option value="followers">{{ i18n.ts._ffVisibility.followers }}</option>
<option value="private">{{ i18n.ts._ffVisibility.private }}</option> <option value="private">{{ i18n.ts._ffVisibility.private }}</option>
</MkSelect> </MkSelect>
</MkSearchMarker>
<MkSearchMarker
:label="i18n.ts.followersVisibility"
:keywords="['follower', 'visibility']"
>
<MkSelect v-model="followersVisibility" @update:modelValue="save()"> <MkSelect v-model="followersVisibility" @update:modelValue="save()">
<template #label>{{ i18n.ts.followersVisibility }}</template> <template #label>{{ i18n.ts.followersVisibility }}</template>
<option value="public">{{ i18n.ts._ffVisibility.public }}</option> <option value="public">{{ i18n.ts._ffVisibility.public }}</option>
<option value="followers">{{ i18n.ts._ffVisibility.followers }}</option> <option value="followers">{{ i18n.ts._ffVisibility.followers }}</option>
<option value="private">{{ i18n.ts._ffVisibility.private }}</option> <option value="private">{{ i18n.ts._ffVisibility.private }}</option>
</MkSelect> </MkSelect>
</MkSearchMarker>
<MkSearchMarker
:label="i18n.ts.hideOnlineStatus"
:keywords="['online', 'status', i18n.ts.hideOnlineStatusDescription]"
>
<MkSwitch v-model="hideOnlineStatus" @update:modelValue="save()"> <MkSwitch v-model="hideOnlineStatus" @update:modelValue="save()">
{{ i18n.ts.hideOnlineStatus }} {{ i18n.ts.hideOnlineStatus }}
<template #caption>{{ i18n.ts.hideOnlineStatusDescription }}</template> <template #caption>{{ i18n.ts.hideOnlineStatusDescription }}</template>
</MkSwitch> </MkSwitch>
</MkSearchMarker>
<MkSearchMarker
:label="i18n.ts.noCrawle"
:keywords="['crawle', 'index', 'search', i18n.ts.noCrawleDescription]"
>
<MkSwitch v-model="noCrawle" @update:modelValue="save()"> <MkSwitch v-model="noCrawle" @update:modelValue="save()">
{{ i18n.ts.noCrawle }} {{ i18n.ts.noCrawle }}
<template #caption>{{ i18n.ts.noCrawleDescription }}</template> <template #caption>{{ i18n.ts.noCrawleDescription }}</template>
</MkSwitch> </MkSwitch>
</MkSearchMarker>
<MkSearchMarker
:label="i18n.ts.preventAiLearning"
:keywords="['crawle', 'ai', i18n.ts.preventAiLearningDescription]"
>
<MkSwitch v-model="preventAiLearning" @update:modelValue="save()"> <MkSwitch v-model="preventAiLearning" @update:modelValue="save()">
{{ i18n.ts.preventAiLearning }} {{ i18n.ts.preventAiLearning }}
<template #caption>{{ i18n.ts.preventAiLearningDescription }}</template> <template #caption>{{ i18n.ts.preventAiLearningDescription }}</template>
</MkSwitch> </MkSwitch>
</MkSearchMarker>
<MkSearchMarker
:label="i18n.ts.makeExplorable"
:keywords="['explore', i18n.ts.makeExplorableDescription]"
>
<MkSwitch v-model="isExplorable" @update:modelValue="save()"> <MkSwitch v-model="isExplorable" @update:modelValue="save()">
{{ i18n.ts.makeExplorable }} {{ i18n.ts.makeExplorable }}
<template #caption>{{ i18n.ts.makeExplorableDescription }}</template> <template #caption>{{ i18n.ts.makeExplorableDescription }}</template>
</MkSwitch> </MkSwitch>
</MkSearchMarker>
<MkSearchSection :label="i18n.ts.lockdown" :keywords="['lockdown']">
<FormSection> <FormSection>
<template #label>{{ i18n.ts.lockdown }}<span class="_beta">{{ i18n.ts.beta }}</span></template> <template #label>{{ i18n.ts.lockdown }}<span class="_beta">{{ i18n.ts.beta }}</span></template>
<div class="_gaps_m"> <div class="_gaps_m">
<MkSearchMarker
:label="i18n.ts._accountSettings.requireSigninToViewContents"
:keywords="['login', 'signin', i18n.ts._accountSettings.requireSigninToViewContentsDescription1, i18n.ts._accountSettings.requireSigninToViewContentsDescription2, i18n.ts._accountSettings.requireSigninToViewContentsDescription3]"
>
<MkSwitch :modelValue="requireSigninToViewContents" @update:modelValue="update_requireSigninToViewContents"> <MkSwitch :modelValue="requireSigninToViewContents" @update:modelValue="update_requireSigninToViewContents">
{{ i18n.ts._accountSettings.requireSigninToViewContents }} {{ i18n.ts._accountSettings.requireSigninToViewContents }}
<template #caption> <template #caption>
@ -69,7 +111,12 @@ SPDX-License-Identifier: AGPL-3.0-only
<div v-if="instance.federation !== 'none'"><i class="ti ti-alert-triangle" style="color: var(--MI_THEME-warn);"></i> {{ i18n.ts._accountSettings.requireSigninToViewContentsDescription3 }}</div> <div v-if="instance.federation !== 'none'"><i class="ti ti-alert-triangle" style="color: var(--MI_THEME-warn);"></i> {{ i18n.ts._accountSettings.requireSigninToViewContentsDescription3 }}</div>
</template> </template>
</MkSwitch> </MkSwitch>
</MkSearchMarker>
<MkSearchMarker
:label="i18n.ts._accountSettings.makeNotesFollowersOnlyBefore"
:keywords="['follower', i18n.ts._accountSettings.makeNotesFollowersOnlyBeforeDescription]"
>
<FormSlot> <FormSlot>
<template #label>{{ i18n.ts._accountSettings.makeNotesFollowersOnlyBefore }}</template> <template #label>{{ i18n.ts._accountSettings.makeNotesFollowersOnlyBefore }}</template>
@ -105,7 +152,12 @@ SPDX-License-Identifier: AGPL-3.0-only
<div v-if="instance.federation !== 'none'"><i class="ti ti-alert-triangle" style="color: var(--MI_THEME-warn);"></i> {{ i18n.ts._accountSettings.mayNotEffectForFederatedNotes }}</div> <div v-if="instance.federation !== 'none'"><i class="ti ti-alert-triangle" style="color: var(--MI_THEME-warn);"></i> {{ i18n.ts._accountSettings.mayNotEffectForFederatedNotes }}</div>
</template> </template>
</FormSlot> </FormSlot>
</MkSearchMarker>
<MkSearchMarker
:label="i18n.ts._accountSettings.makeNotesHiddenBefore"
:keywords="['hidden', i18n.ts._accountSettings.makeNotesHiddenBeforeDescription]"
>
<FormSlot> <FormSlot>
<template #label>{{ i18n.ts._accountSettings.makeNotesHiddenBefore }}</template> <template #label>{{ i18n.ts._accountSettings.makeNotesHiddenBefore }}</template>
@ -141,12 +193,24 @@ SPDX-License-Identifier: AGPL-3.0-only
<div v-if="instance.federation !== 'none'"><i class="ti ti-alert-triangle" style="color: var(--MI_THEME-warn);"></i> {{ i18n.ts._accountSettings.mayNotEffectForFederatedNotes }}</div> <div v-if="instance.federation !== 'none'"><i class="ti ti-alert-triangle" style="color: var(--MI_THEME-warn);"></i> {{ i18n.ts._accountSettings.mayNotEffectForFederatedNotes }}</div>
</template> </template>
</FormSlot> </FormSlot>
</MkSearchMarker>
</div> </div>
</FormSection> </FormSection>
</MkSearchSection>
<FormSection> <FormSection>
<div class="_gaps_m"> <div class="_gaps_m">
<MkSearchMarker
:label="i18n.ts.rememberNoteVisibility"
:keywords="['remember', 'keep', 'note', 'visibility']"
>
<MkSwitch v-model="rememberNoteVisibility" @update:modelValue="save()">{{ i18n.ts.rememberNoteVisibility }}</MkSwitch> <MkSwitch v-model="rememberNoteVisibility" @update:modelValue="save()">{{ i18n.ts.rememberNoteVisibility }}</MkSwitch>
</MkSearchMarker>
<MkSearchMarker
:label="i18n.ts.defaultNoteVisibility"
:keywords="['default', 'note', 'visibility']"
>
<MkFolder v-if="!rememberNoteVisibility"> <MkFolder v-if="!rememberNoteVisibility">
<template #label>{{ i18n.ts.defaultNoteVisibility }}</template> <template #label>{{ i18n.ts.defaultNoteVisibility }}</template>
<template v-if="defaultNoteVisibility === 'public'" #suffix>{{ i18n.ts._visibility.public }}</template> <template v-if="defaultNoteVisibility === 'public'" #suffix>{{ i18n.ts._visibility.public }}</template>
@ -164,10 +228,17 @@ SPDX-License-Identifier: AGPL-3.0-only
<MkSwitch v-model="defaultNoteLocalOnly">{{ i18n.ts._visibility.disableFederation }}</MkSwitch> <MkSwitch v-model="defaultNoteLocalOnly">{{ i18n.ts._visibility.disableFederation }}</MkSwitch>
</div> </div>
</MkFolder> </MkFolder>
</MkSearchMarker>
</div> </div>
</FormSection> </FormSection>
<MkSearchMarker
:label="i18n.ts.keepCw"
:keywords="['remember', 'keep', 'note', 'cw']"
>
<MkSwitch v-model="keepCw" @update:modelValue="save()">{{ i18n.ts.keepCw }}</MkSwitch> <MkSwitch v-model="keepCw" @update:modelValue="save()">{{ i18n.ts.keepCw }}</MkSwitch>
</MkSearchMarker>
</MkSearchSection>
</div> </div>
</template> </template>