This commit is contained in:
Henry Jameson 2025-01-20 16:22:41 +02:00
parent e1c6149941
commit b0a0560dbd
10 changed files with 55 additions and 35 deletions

View file

@ -18,7 +18,10 @@
<span v-text="user.screen_name_ui" /> <span v-text="user.screen_name_ui" />
</template> </template>
</i18n-t> </i18n-t>
<div class="mute-expiry" v-if="type !== 'domain'"> <div
v-if="type !== 'domain'"
class="mute-expiry"
>
<p> <p>
<label> <label>
{{ $t('user_card.mute_duration_prompt') }} {{ $t('user_card.mute_duration_prompt') }}
@ -39,7 +42,7 @@
v-for="unit in muteExpiryUnits" v-for="unit in muteExpiryUnits"
:key="unit" :key="unit"
:value="unit" :value="unit"
> >
{{ $t(`time.unit.${unit}_short`, ['']) }} {{ $t(`time.unit.${unit}_short`, ['']) }}
</option> </option>
</Select> </Select>

View file

@ -64,11 +64,11 @@
<button <button
class="main-button" class="main-button"
@click="toggleTag(tags.FORCE_NSFW)" @click="toggleTag(tags.FORCE_NSFW)"
> >
<span <span
class="input menu-checkbox" class="input menu-checkbox"
:class="{ 'menu-checkbox-checked': hasTag(tags.FORCE_NSFW) }" :class="{ 'menu-checkbox-checked': hasTag(tags.FORCE_NSFW) }"
/> />
{{ $t('user_card.admin_menu.force_nsfw') }} {{ $t('user_card.admin_menu.force_nsfw') }}
</button> </button>
</div> </div>

View file

@ -335,8 +335,8 @@
role="menu" role="menu"
> >
<button <button
class="menu-item dropdown-item"
v-if="!hideDraft || !disableDraft" v-if="!hideDraft || !disableDraft"
class="menu-item dropdown-item"
role="menu" role="menu"
:disabled="!safeToSaveDraft && saveable" :disabled="!safeToSaveDraft && saveable"
:class="{ disabled: !safeToSaveDraft }" :class="{ disabled: !safeToSaveDraft }"

View file

@ -132,16 +132,22 @@
role="menuitem" role="menuitem"
@click="openTab('filtering')" @click="openTab('filtering')"
> >
<FAIcon fixed-width icon="font" />{{ $t('settings.word_filter_and_more') }} <FAIcon
fixed-width
icon="font"
/>{{ $t('settings.word_filter_and_more') }}
</button> </button>
</div> </div>
</div> </div>
</template> </template>
<template #trigger> <template #trigger>
<div :class="mobileLayout ? 'main-button' : ''"> <div :class="mobileLayout ? 'main-button' : ''">
<FAIcon icon="filter" :fixed-width="nested"/> <FAIcon
icon="filter"
:fixed-width="nested"
/>
<template v-if="nested"> <template v-if="nested">
{{$t('timeline.filter_settings')}} {{ $t('timeline.filter_settings') }}
</template> </template>
<FAIcon <FAIcon
v-if="nested" v-if="nested"

View file

@ -182,9 +182,9 @@
<template #content="{close}"> <template #content="{close}">
<div class="dropdown-menu"> <div class="dropdown-menu">
<div <div
class="menu-item dropdown-item"
v-for="ref in frontend.installedRefs || frontend.refs" v-for="ref in frontend.installedRefs || frontend.refs"
:key="ref" :key="ref"
class="menu-item dropdown-item"
> >
<button <button
class="main-button" class="main-button"

View file

@ -67,13 +67,12 @@
<span <span
v-if="!extra && button.name === 'bookmark'" v-if="!extra && button.name === 'bookmark'"
class="separator" class="separator"
> />
</span>
<Popover <Popover
v-if="button.name === 'bookmark'"
trigger="hover" trigger="hover"
:placement="extra ? 'right' : 'top'" :placement="extra ? 'right' : 'top'"
:trigger-attrs="{ class: 'extra-button' }" :trigger-attrs="{ class: 'extra-button' }"
v-if="button.name === 'bookmark'"
> >
<template #trigger> <template #trigger>
<FAIcon <FAIcon
@ -84,13 +83,16 @@
/> />
</template> </template>
<template #content> <template #content>
<StatusBookmarkFolderMenu v-if="button.name === 'bookmark'" :status="status" /> <StatusBookmarkFolderMenu
v-if="button.name === 'bookmark'"
:status="status"
/>
</template> </template>
</Popover> </Popover>
<EmojiPicker <EmojiPicker
ref="picker"
v-if="button.name === 'emoji'" v-if="button.name === 'emoji'"
ref="picker"
:enable-sticker-picker="false" :enable-sticker-picker="false"
:hide-custom-emoji="hideCustomEmoji" :hide-custom-emoji="hideCustomEmoji"
class="emoji-picker-panel" class="emoji-picker-panel"
@ -99,6 +101,6 @@
</div> </div>
</template> </template>
<script src="./action_button.js"/> <script src="./action_button.js" />
<style lang="scss" src="./action_button.scss"/> <style lang="scss" src="./action_button.scss" />

View file

@ -1,9 +1,9 @@
<template> <template>
<div> <div>
<Popover <Popover
v-if="button.dropdown?.()"
trigger="hover" trigger="hover"
:placement="$attrs.extra ? 'right' : 'top'" :placement="$attrs.extra ? 'right' : 'top'"
v-if="button.dropdown?.()"
> >
<template #trigger> <template #trigger>
<ActionButton <ActionButton
@ -15,8 +15,8 @@
<template #content> <template #content>
<div <div
v-if="button.name === 'mute'" v-if="button.name === 'mute'"
class="dropdown-menu"
:id="`popup-menu-${randomSeed}`" :id="`popup-menu-${randomSeed}`"
class="dropdown-menu"
role="menu" role="menu"
> >
<div class="menu-item dropdown-item extra-action -icon"> <div class="menu-item dropdown-item extra-action -icon">
@ -24,7 +24,10 @@
class="main-button" class="main-button"
@click="toggleUserMute" @click="toggleUserMute"
> >
<FAIcon icon="user" fixed-width /> <FAIcon
icon="user"
fixed-width
/>
<template v-if="userIsMuted"> <template v-if="userIsMuted">
{{ $t('status.unmute_user') }} {{ $t('status.unmute_user') }}
</template> </template>
@ -38,7 +41,10 @@
class="main-button" class="main-button"
@click="toggleUserMute" @click="toggleUserMute"
> >
<FAIcon icon="folder-tree" fixed-width /> <FAIcon
icon="folder-tree"
fixed-width
/>
<template v-if="threadIsMuted"> <template v-if="threadIsMuted">
{{ $t('status.unmute_conversation') }} {{ $t('status.unmute_conversation') }}
</template> </template>
@ -52,7 +58,10 @@
class="main-button" class="main-button"
@click="toggleDomainMute" @click="toggleDomainMute"
> >
<FAIcon icon="globe" fixed-width /> <FAIcon
icon="globe"
fixed-width
/>
<template v-if="domainIsMuted"> <template v-if="domainIsMuted">
{{ $t('status.unmute_domain') }} {{ $t('status.unmute_domain') }}
</template> </template>
@ -72,22 +81,22 @@
/> />
<teleport to="#modal"> <teleport to="#modal">
<mute-confirm <mute-confirm
type="conversation"
:status="this.status"
ref="confirmConversation" ref="confirmConversation"
type="conversation"
:status="status"
/> />
<mute-confirm <mute-confirm
type="domain"
:user="this.user"
ref="confirmDomain" ref="confirmDomain"
type="domain"
:user="user"
/> />
<mute-confirm <mute-confirm
type="user"
:user="this.user"
ref="confirmUser" ref="confirmUser"
type="user"
:user="user"
/> />
</teleport> </teleport>
</div> </div>
</template> </template>
<script src="./action_button_container.js"/> <script src="./action_button_container.js" />

View file

@ -2,17 +2,17 @@
<div class="StatusActionButtons"> <div class="StatusActionButtons">
<span class="quick-action-buttons"> <span class="quick-action-buttons">
<span <span
class="quick-action"
:class="{ '-pin': showPin, '-toggle': button.dropdown?.() }"
v-for="button in quickButtons" v-for="button in quickButtons"
:key="button.name" :key="button.name"
class="quick-action"
:class="{ '-pin': showPin, '-toggle': button.dropdown?.() }"
> >
<ActionButtonContainer <ActionButtonContainer
:class="{ '-pin': showPin }" :class="{ '-pin': showPin }"
:button="button" :button="button"
:status="status" :status="status"
:extra="false" :extra="false"
:funcArg="funcArg" :func-arg="funcArg"
:get-class="getClass" :get-class="getClass"
:get-component="getComponent" :get-component="getComponent"
:close="() => {}" :close="() => {}"
@ -80,7 +80,7 @@
:button="button" :button="button"
:status="status" :status="status"
:extra="true" :extra="true"
:funcArg="funcArg" :func-arg="funcArg"
:get-class="getClass" :get-class="getClass"
:get-component="getComponent" :get-component="getComponent"
:close="close" :close="close"

View file

@ -76,8 +76,8 @@
</div> </div>
</template> </template>
<QuickFilterSettings <QuickFilterSettings
class="rightside-button"
v-if="!mobileLayout" v-if="!mobileLayout"
class="rightside-button"
/> />
<QuickViewSettings <QuickViewSettings
class="rightside-button" class="rightside-button"

View file

@ -312,9 +312,9 @@
</div> </div>
<teleport to="#modal"> <teleport to="#modal">
<mute-confirm <mute-confirm
type="user"
:user="this.user"
ref="confirmation" ref="confirmation"
type="user"
:user="user"
/> />
</teleport> </teleport>
</div> </div>