Make Preferences accessible

This commit is contained in:
L. E. Segovia 2018-12-12 00:19:08 +00:00
parent 97050fdbe1
commit 02503739b4
No known key found for this signature in database
GPG Key ID: D5D1DC48B52B7AD5
7 changed files with 199 additions and 196 deletions

View File

@ -3,10 +3,10 @@
<el-header class="header">
<el-row>
<el-col :span="23">
<h3>{{ $t('preferences.title') }}</h3>
<h1>{{ $t('preferences.title') }}</h1>
</el-col>
<el-col :span="1">
<el-button type="text" icon="el-icon-close" @click="close" class="close-button"></el-button>
<el-button type="text" icon="el-icon-close" @click="close" class="close-button" role="button"></el-button>
</el-col>
</el-row>
</el-header>
@ -77,9 +77,10 @@ export default {
.header {
text-align: center;
border-bottom: 1px solid var(--theme-border-color);
user-select: none;
.close-button {
font-size: 24px;
font-size: 28px;
}
}
@ -88,31 +89,16 @@ export default {
padding-left: 24px;
.el-menu {
background-color: var(--theme-background-color);
border-right: solid 1px var(--theme-border-color);
}
.setting-menu /deep/ {
height: 100%;
user-select: none;
.icon {
margin-right: 9px;
}
.el-menu-item {
transition: none;
-webkit-transition: none;
.icon {
color: var(--theme-secondary-color);
}
}
.is-active {
.icon {
color: #409eff;
}
}
}
}
}

View File

@ -1,9 +1,9 @@
<template>
<div id="account">
<h2>{{ $t('preferences.account.title') }}</h2>
<div class="connected-account">
<el-form class="connected-account section" size="small">
<h3>{{ $t('preferences.account.connected') }}</h3>
<template>
<el-form-item>
<el-table
:data="accounts"
tooltip-effect="dark"
@ -23,7 +23,8 @@
<template slot-scope="scope">
<el-button
@click.native.prevent="removeAccount(scope.$index, accounts)"
type="text">
type="text"
class="action">
<i class="el-icon-close"></i> {{ $t('preferences.account.remove_association') }}
</el-button>
</template>
@ -32,30 +33,30 @@
:label="$t('preferences.account.order')"
width="60">
<template slot-scope="scope">
<div>
<el-button class="arrow-up" type="text" icon="el-icon-arrow-up" @click.native.prevent="forward(scope.$index, accounts)"></el-button>
<div class="allow-up">
<el-button class="arrow-up action" type="text" icon="el-icon-arrow-up" @click.native.prevent="forward(scope.$index, accounts)"></el-button>
</div>
<div>
<el-button class="arrow-down" type="text" icon="el-icon-arrow-down" @click.native.prevent="backward(scope.$index, accounts)"></el-button>
<div class="allow-down">
<el-button class="arrow-down action" type="text" icon="el-icon-arrow-down" @click.native.prevent="backward(scope.$index, accounts)"></el-button>
</div>
</template>
</el-table-column>
</el-table>
</template>
</div>
<div class="reset">
<el-popover
placement="top"
width="160"
v-model="deletePopoverVisible">
<p>{{ $t('preferences.account.confirm_message') }}</p>
<div style="text-align: right; margin: 0">
<el-button size="mini" type="text" @click="deletePopoverVisible = false">{{ $t('preferences.account.cancel') }}</el-button>
<el-button type="danger" size="mini" @click="removeAllAssociations">{{ $t('preferences.account.confirm') }}</el-button>
</div>
<el-button slot="reference" type="danger">{{ $t('preferences.account.remove_all_associations') }}</el-button>
</el-popover>
</div>
</el-form-item>
<el-form-item>
<el-popover
placement="top"
width="160"
v-model="deletePopoverVisible">
<p>{{ $t('preferences.account.confirm_message') }}</p>
<div style="text-align: right; margin: 0">
<el-button size="mini" type="text" @click="deletePopoverVisible = false">{{ $t('preferences.account.cancel') }}</el-button>
<el-button type="danger" size="mini" @click="removeAllAssociations">{{ $t('preferences.account.confirm') }}</el-button>
</div>
<el-button slot="reference" type="danger">{{ $t('preferences.account.remove_all_associations') }}</el-button>
</el-popover>
</el-form-item>
</el-form>
</div>
</template>
@ -130,32 +131,38 @@ export default {
<style lang="scss" scoped>
#account {
.el-table /deep/ {
tr,
th,
td {
background-color: var(--theme-background-color);
color: var(--theme-secondary-color);
border-bottom: 1px solid var(--theme-border-color);
.connected-account {
.el-table /deep/ {
tr,
th,
td {
background-color: var(--theme-background-color);
color: var(--theme-primary-color);
border-bottom: 1px solid var(--theme-border-color);
}
}
.el-table::before {
background-color: var(--theme-border-color);
}
.allow-up,
.allow-down {
display: inline-block;
}
.action {
font-size: var(--base-font-size);
}
}
.el-table::before {
background-color: var(--theme-border-color);
}
.section /deep/ {
margin-bottom: 40px;
.reset {
margin: 24px 12px;
text-align: right;
.el-form-item__label {
color: var(--theme-primary-color);
}
}
}
.allow-up {
padding: 0;
}
.allow-down {
padding: 0;
}
</style>

View File

@ -1,11 +1,10 @@
<template>
<div id="appearance">
<h2>{{ $t('preferences.appearance.title') }}</h2>
<div class="theme section">
<el-form class="theme section" size="small" label-position="top">
<div class="left">
<h4>{{ $t('preferences.appearance.theme_color') }}</h4>
<div class="status">
<el-select v-model="theme" placeholder="theme">
<el-form-item for="theme" :label="$t('preferences.appearance.theme_color')">
<el-select id="theme" v-model="theme" placeholder="theme">
<el-option
v-for="t in themes"
:key="t.key"
@ -13,7 +12,7 @@
:value="t.key">
</el-option>
</el-select>
</div>
</el-form-item>
</div>
<div class="right">
<Toot
@ -21,30 +20,27 @@
:timeFormat="timeFormat"
></Toot>
</div>
</div>
<div class="color-pallet" v-if="customizeThemeColor">
</el-form>
<div class="color-pallet section" v-if="customizeThemeColor">
<color-pallet></color-pallet>
</div>
<div class="font section">
<h4>{{ $t('preferences.appearance.font_family') }}</h4>
<span class="status">
<el-select v-model="font" placeholder="fonts">
<el-form class="font section" size="small" label-position="top">
<el-form-item for="font-family" :label="$t('preferences.appearance.font_family')">
<el-select id="font-family" v-model="font" placeholder="fonts">
<el-option
v-for="f in fontList"
:key="f"
:label="f"
:value="f" />
</el-select>
</span>
<h4>{{ $t('preferences.appearance.font_size') }}</h4>
<span class="status">
<el-input-number :value="fontSize" :min="9" :max="18" @change="updateFontSize"></el-input-number>
</span>
</div>
<div class="display-style section">
<h4>{{ $t('preferences.appearance.display_style.title') }}</h4>
<span class="status">
<el-select v-model="displayNameStyle" placeholder="style">
</el-form-item>
<el-form-item for="font-size" :label="$t('preferences.appearance.font_size')">
<el-input-number id="font-size" :value="fontSize" :min="9" :max="18" @change="updateFontSize"></el-input-number>
</el-form-item>
</el-form>
<el-form class="display-style section" size="small" label-position="top">
<el-form-item for="display-style" :label="$t('preferences.appearance.display_style.title')">
<el-select id="display-style" v-model="displayNameStyle" placeholder="style">
<el-option
v-for="style in nameStyles"
:key="style.value"
@ -52,12 +48,11 @@
:value="style.value">
</el-option>
</el-select>
</span>
</div>
<div class="time-format section">
<h4>{{ $t('preferences.appearance.time_format.title') }}</h4>
<span class="status">
<el-select v-model="timeFormat" placeholder="format">
</el-form-item>
</el-form>
<el-form class="time-format section" size="small" label-position="top">
<el-form-item for="time-format" :label="$t('preferences.appearance.time_format.title')">
<el-select id="time-format" v-model="timeFormat" placeholder="format">
<el-option
v-for="format in timeFormats"
:key="format.value"
@ -65,8 +60,8 @@
:value="format.value">
</el-option>
</el-select>
</span>
</div>
</el-form-item>
</el-form>
</div>
</template>
@ -160,20 +155,24 @@ export default {
<style lang="scss" scoped>
#appearance {
color: var(--theme-secondary-color);
box-sizing: border-box;
.theme {
display: flex;
align-items: flex-start;
justify-content: space-between;
.right {
margin-left: 40px;
}
}
.section {
margin-bottom: 48px;
.section /deep/ {
margin-bottom: 40px;
.el-form-item__label {
color: var(--theme-primary-color);
}
}
}
</style>

View File

@ -1,36 +1,46 @@
<template>
<div class="pallet">
<el-form class="pallet" label-position="top" size="small">
<div class="item">
<div class="title">{{ $t('preferences.appearance.custom_theme.background_color') }}</div>
<el-color-picker v-model="background"></el-color-picker>
<div class="title">{{ $t('preferences.appearance.custom_theme.selected_background_color') }}</div>
<el-color-picker v-model="selectedBackground"></el-color-picker>
<el-form-item :label="$t('preferences.appearance.custom_theme.background_color') ">
<el-color-picker v-model="background"></el-color-picker>
</el-form-item>
<el-form-item :label="$t('preferences.appearance.custom_theme.selected_background_color')">
<el-color-picker v-model="selectedBackground"></el-color-picker>
</el-form-item>
</div>
<div class="item">
<div class="title">{{ $t('preferences.appearance.custom_theme.global_header_color') }}</div>
<el-color-picker v-model="globalHeader"></el-color-picker>
<div class="title">{{ $t('preferences.appearance.custom_theme.side_menu_color') }}</div>
<el-color-picker v-model="sideMenu"></el-color-picker>
<el-form-item :label="$t('preferences.appearance.custom_theme.global_header_color')">
<el-color-picker v-model="globalHeader"></el-color-picker>
</el-form-item>
<el-form-item :label="$t('preferences.appearance.custom_theme.side_menu_color')">
<el-color-picker v-model="sideMenu"></el-color-picker>
</el-form-item>
</div>
<div class="item">
<div class="title">{{ $t('preferences.appearance.custom_theme.primary_color') }}</div>
<el-color-picker v-model="primary"></el-color-picker>
<div class="title">{{ $t('preferences.appearance.custom_theme.regular_color') }}</div>
<el-color-picker v-model="regular"></el-color-picker>
<el-form-item :label="$t('preferences.appearance.custom_theme.primary_color')">
<el-color-picker v-model="primary"></el-color-picker>
</el-form-item>
<el-form-item :label="$t('preferences.appearance.custom_theme.regular_color')">
<el-color-picker v-model="regular"></el-color-picker>
</el-form-item>
</div>
<div class="item">
<div class="title">{{ $t('preferences.appearance.custom_theme.secondary_color') }}</div>
<el-color-picker v-model="secondary"></el-color-picker>
<div class="title">{{ $t('preferences.appearance.custom_theme.border_color') }}</div>
<el-color-picker v-model="border"></el-color-picker>
<el-form-item :label="$t('preferences.appearance.custom_theme.secondary_color')">
<el-color-picker v-model="secondary"></el-color-picker>
</el-form-item>
<el-form-item :label="$t('preferences.appearance.custom_theme.border_color')">
<el-color-picker v-model="border"></el-color-picker>
</el-form-item>
</div>
<div class="item">
<div class="title">{{ $t('preferences.appearance.custom_theme.header_menu_color') }}</div>
<el-color-picker v-model="headerMenu"></el-color-picker>
<div class="title">{{ $t('preferences.appearance.custom_theme.wrapper_mask_color') }}</div>
<el-color-picker v-model="wrapperMask" :show-alpha="true"></el-color-picker>
<el-form-item :label="$t('preferences.appearance.custom_theme.header_menu_color')">
<el-color-picker v-model="headerMenu"></el-color-picker>
</el-form-item>
<el-form-item :label="$t('preferences.appearance.custom_theme.wrapper_mask_color')">
<el-color-picker v-model="wrapperMask" :show-alpha="true"></el-color-picker>
</el-form-item>
</div>
</div>
</el-form>
</template>
<script>
@ -150,8 +160,14 @@ export default {
text-align: center;
margin: 0 12px;
.title {
margin: 8px 0;
.el-form-item {
margin-bottom: 0;
}
.el-form-item__label {
color: var(--theme-primary-color);
text-align: center;
line-height: unset;
}
}
}

View File

@ -1,28 +1,24 @@
<template>
<div id="general" v-loading="loading">
<h2>{{ $t('preferences.general.title') }}</h2>
<div class="sounds section">
<el-form class="sounds section" label-position="right" label-width="250px" size="small">
<h3>{{ $t('preferences.general.sounds.title') }}</h3>
<p class="description">{{ $t('preferences.general.sounds.description') }}</p>
<div class="selection">
<span class="value">
<el-switch
v-model="sound_fav_rb"
active-color="#13ce66">
</el-switch>
</span>
<span class="title">{{ $t('preferences.general.sounds.fav_rb') }}</span>
</div>
<div class="selection">
<span class="value">
<el-switch
v-model="sound_toot"
active-color="#13ce66">
</el-switch>
</span>
<span class="title">{{ $t('preferences.general.sounds.toot') }}</span>
</div>
</div>
<el-form-item for="fav_rb" :label="$t('preferences.general.sounds.fav_rb')">
<el-switch
id="fav_rb"
v-model="sound_fav_rb"
active-color="#13ce66">
</el-switch>
</el-form-item>
<el-form-item for="sound_toot" :label="$t('preferences.general.sounds.toot')">
<el-switch
id="sound_toot"
v-model="sound_toot"
active-color="#13ce66">
</el-switch>
</el-form-item>
</el-form>
</div>
</template>
@ -74,8 +70,12 @@ export default {
margin: 24px 0 20px;
}
.section {
margin-bottom: 48px;
.section /deep/ {
margin-bottom: 40px;
.el-form-item__label {
color: var(--theme-primary-color);
}
}
.selection {

View File

@ -1,18 +1,19 @@
<template>
<div id="language">
<h2>{{ $t('preferences.language.title') }}</h2>
<div class="display-language">
<p class="description">{{ $t('preferences.language.language_description') }}</p>
<el-select v-model="displayLanguage" placeholder="style">
<el-option
v-for="lang in languages"
:key="lang.key"
:label="lang.name"
:value="lang.key">
</el-option>
</el-select>
<p class="notice">{{ $t('preferences.language.notice') }}</p>
</div>
<el-form class="display-language section" label-position="top" size="small">
<el-form-item for="language" :label="$t('preferences.language.language_description')">
<el-select id="language" v-model="displayLanguage" placeholder="style">
<el-option
v-for="lang in languages"
:key="lang.key"
:label="lang.name"
:value="lang.key">
</el-option>
</el-select>
<p class="notice">{{ $t('preferences.language.notice') }}</p>
</el-form-item>
</el-form>
</div>
</template>
@ -72,8 +73,12 @@ export default {
<style lang="scss" scoped>
#language {
.description {
margin: 24px 0 20px;
.section /deep/ {
margin-bottom: 40px;
.el-form-item__label {
color: var(--theme-primary-color);
}
}
.notice {

View File

@ -1,45 +1,36 @@
<template>
<div id="notification">
<h2>{{ $t('preferences.notification.title') }}</h2>
<div class="enable">
<el-form class="section" label-position="right" label-width="250px" size="small">
<p class="description">{{ $t('preferences.notification.enable.description') }}</p>
<div class="selection">
<span class="value">
<el-switch
v-model="notifyReply"
active-color="#13ce66">
</el-switch>
</span>
<span class="title">{{ $t('preferences.notification.enable.reply') }}</span>
</div>
<div class="selection">
<span class="value">
<el-switch
v-model="notifyReblog"
active-color="#13ce66">
</el-switch>
</span>
<span class="title">{{ $t('preferences.notification.enable.reblog') }}</span>
</div>
<div class="selection">
<span class="value">
<el-switch
v-model="notifyFavourite"
active-color="#13ce66">
</el-switch>
</span>
<span class="title">{{ $t('preferences.notification.enable.favourite') }}</span>
</div>
<div class="selection">
<span class="value">
<el-switch
v-model="notifyFollow"
active-color="#13ce66">
</el-switch>
</span>
<span class="title">{{ $t('preferences.notification.enable.follow') }}</span>
</div>
</div>
<el-form-item for="notifyReply" :label="$t('preferences.notification.enable.reply')">
<el-switch
id="notifyReply"
v-model="notifyReply"
active-color="#13ce66">
</el-switch>
</el-form-item>
<el-form-item for="notifyReblog" :label="$t('preferences.notification.enable.reblog')">
<el-switch
id="notifyReblog"
v-model="notifyReblog"
active-color="#13ce66">
</el-switch>
</el-form-item>
<el-form-item for="notifyFavourite" :label="$t('preferences.notification.enable.favourite')">
<el-switch
id="notifyFavourite"
v-model="notifyFavourite"
active-color="#13ce66">
</el-switch>
</el-form-item>
<el-form-item for="notifyFollow" :label="$t('preferences.notification.enable.follow')">
<el-switch
v-model="notifyFollow"
active-color="#13ce66">
</el-switch>
</el-form-item>
</el-form>
</div>
</template>
@ -106,12 +97,11 @@ export default {
margin: 24px 0 20px;
}
.selection {
margin: 12px 0;
.section /deep/ {
margin-bottom: 40px;
.title {
margin-left: 12px;
font-weight: 800;
.el-form-item__label {
color: var(--theme-primary-color);
}
}
}