PLT-3010 - Updating system console (#3146)

* Updating system console

* Updating system console stuff

* Updating ldap settings
Этот коммит содержится в:
Asaad Mahmood
2016-06-03 00:33:52 +05:00
коммит произвёл Corey Hulen
родитель 2bb8206a7f
Коммит e0fca16b27
27 изменённых файлов: 199 добавлений и 251 удалений

Просмотреть файл

@@ -265,6 +265,7 @@ export default class AdminSidebar extends React.Component {
/> />
</AdminSidebarCategory> </AdminSidebarCategory>
<AdminSidebarCategory <AdminSidebarCategory
sectionClass='sections--settings'
parentLink='/admin_console' parentLink='/admin_console'
icon='fa-gear' icon='fa-gear'
title={ title={
@@ -276,6 +277,7 @@ export default class AdminSidebar extends React.Component {
> >
<AdminSidebarSection <AdminSidebarSection
name='general' name='general'
type='text'
title={ title={
<FormattedMessage <FormattedMessage
id='admin.sidebar.general' id='admin.sidebar.general'
@@ -310,6 +312,7 @@ export default class AdminSidebar extends React.Component {
/> />
} }
/> />
{complianceSettings}
<AdminSidebarSection <AdminSidebarSection
name='logging' name='logging'
title={ title={
@@ -322,6 +325,7 @@ export default class AdminSidebar extends React.Component {
</AdminSidebarSection> </AdminSidebarSection>
<AdminSidebarSection <AdminSidebarSection
name='authentication' name='authentication'
type='text'
title={ title={
<FormattedMessage <FormattedMessage
id='admin.sidebar.authentication' id='admin.sidebar.authentication'
@@ -351,6 +355,7 @@ export default class AdminSidebar extends React.Component {
</AdminSidebarSection> </AdminSidebarSection>
<AdminSidebarSection <AdminSidebarSection
name='security' name='security'
type='text'
title={ title={
<FormattedMessage <FormattedMessage
id='admin.sidebar.security' id='admin.sidebar.security'
@@ -406,6 +411,7 @@ export default class AdminSidebar extends React.Component {
</AdminSidebarSection> </AdminSidebarSection>
<AdminSidebarSection <AdminSidebarSection
name='notifications' name='notifications'
type='text'
title={ title={
<FormattedMessage <FormattedMessage
id='admin.sidebar.notifications' id='admin.sidebar.notifications'
@@ -434,6 +440,7 @@ export default class AdminSidebar extends React.Component {
</AdminSidebarSection> </AdminSidebarSection>
<AdminSidebarSection <AdminSidebarSection
name='integrations' name='integrations'
type='text'
title={ title={
<FormattedMessage <FormattedMessage
id='admin.sidebar.integrations' id='admin.sidebar.integrations'
@@ -460,17 +467,9 @@ export default class AdminSidebar extends React.Component {
} }
/> />
</AdminSidebarSection> </AdminSidebarSection>
<AdminSidebarSection
name='database'
title={
<FormattedMessage
id='admin.sidebar.database'
defaultMessage='Database'
/>
}
/>
<AdminSidebarSection <AdminSidebarSection
name='files' name='files'
type='text'
title={ title={
<FormattedMessage <FormattedMessage
id='admin.sidebar.files' id='admin.sidebar.files'
@@ -499,6 +498,7 @@ export default class AdminSidebar extends React.Component {
</AdminSidebarSection> </AdminSidebarSection>
<AdminSidebarSection <AdminSidebarSection
name='customization' name='customization'
type='text'
title={ title={
<FormattedMessage <FormattedMessage
id='admin.sidebar.customization' id='admin.sidebar.customization'
@@ -526,7 +526,16 @@ export default class AdminSidebar extends React.Component {
} }
/> />
</AdminSidebarSection> </AdminSidebarSection>
{complianceSettings} <AdminSidebarSection
name='advanced'
type='text'
title={
<FormattedMessage
id='admin.sidebar.advanced'
defaultMessage='Advanced'
/>
}
>
<AdminSidebarSection <AdminSidebarSection
name='rate' name='rate'
title={ title={
@@ -536,6 +545,15 @@ export default class AdminSidebar extends React.Component {
/> />
} }
/> />
<AdminSidebarSection
name='database'
title={
<FormattedMessage
id='admin.sidebar.database'
defaultMessage='Database'
/>
}
/>
<AdminSidebarSection <AdminSidebarSection
name='developer' name='developer'
title={ title={
@@ -545,6 +563,7 @@ export default class AdminSidebar extends React.Component {
/> />
} }
/> />
</AdminSidebarSection>
</AdminSidebarCategory> </AdminSidebarCategory>
{this.renderTeams()} {this.renderTeams()}
<AdminSidebarCategory <AdminSidebarCategory

Просмотреть файл

@@ -11,6 +11,7 @@ export default class AdminSidebarCategory extends React.Component {
name: React.PropTypes.string, name: React.PropTypes.string,
title: React.PropTypes.node.isRequired, title: React.PropTypes.node.isRequired,
icon: React.PropTypes.string.isRequired, icon: React.PropTypes.string.isRequired,
sectionClass: React.PropTypes.string,
parentLink: React.PropTypes.string, parentLink: React.PropTypes.string,
children: React.PropTypes.node, children: React.PropTypes.node,
action: React.PropTypes.node action: React.PropTypes.node
@@ -57,7 +58,7 @@ export default class AdminSidebarCategory extends React.Component {
let clonedChildren = null; let clonedChildren = null;
if (this.props.children && this.context.router.isActive(link)) { if (this.props.children && this.context.router.isActive(link)) {
clonedChildren = ( clonedChildren = (
<ul className='sections'> <ul className={'sections ' + this.props.sectionClass}>
{ {
React.Children.map(this.props.children, (child) => { React.Children.map(this.props.children, (child) => {
if (child === null) { if (child === null) {

Просмотреть файл

@@ -10,6 +10,7 @@ export default class AdminSidebarSection extends React.Component {
return { return {
name: React.PropTypes.string.isRequired, name: React.PropTypes.string.isRequired,
title: React.PropTypes.node.isRequired, title: React.PropTypes.node.isRequired,
type: React.PropTypes.string,
parentLink: React.PropTypes.string, parentLink: React.PropTypes.string,
subsection: React.PropTypes.bool, subsection: React.PropTypes.bool,
children: React.PropTypes.arrayOf(React.PropTypes.element), children: React.PropTypes.arrayOf(React.PropTypes.element),
@@ -59,8 +60,7 @@ export default class AdminSidebarSection extends React.Component {
className += ' sidebar-subsection'; className += ' sidebar-subsection';
} }
return ( let sidebarItem = (
<li className={className}>
<Link <Link
className={`${className}-title`} className={`${className}-title`}
activeClassName={`${className}-title ${className}-title--active`} activeClassName={`${className}-title ${className}-title--active`}
@@ -73,6 +73,26 @@ export default class AdminSidebarSection extends React.Component {
</span> </span>
{this.props.action} {this.props.action}
</Link> </Link>
);
if (this.props.type === 'text') {
sidebarItem = (
<div
className={`${className}-title`}
activeClassName={`${className}-title ${className}-title--active`}
onlyActiveOnIndex={this.props.onlyActiveOnIndex}
>
<span className={`${className}-title__text`}>
{this.props.title}
</span>
{this.props.action}
</div>
);
}
return (
<li className={className}>
{sidebarItem}
{clonedChildren} {clonedChildren}
</li> </li>
); );

Просмотреть файл

@@ -34,8 +34,8 @@ export default class ConfigurationSettings extends AdminSettings {
return ( return (
<h3> <h3>
<FormattedMessage <FormattedMessage
id='admin.general.title' id='admin.general.configuration'
defaultMessage='General Settings' defaultMessage='Configuration'
/> />
</h3> </h3>
); );
@@ -43,14 +43,7 @@ export default class ConfigurationSettings extends AdminSettings {
renderSettings() { renderSettings() {
return ( return (
<SettingsGroup <SettingsGroup>
header={
<FormattedMessage
id='admin.general.configuration'
defaultMessage='Configuration'
/>
}
>
<ReloadConfigButton/> <ReloadConfigButton/>
<TextSetting <TextSetting
id='listenAddress' id='listenAddress'

Просмотреть файл

@@ -36,8 +36,8 @@ export default class ConnectionSettings extends AdminSettings {
return ( return (
<h3> <h3>
<FormattedMessage <FormattedMessage
id='admin.security.title' id='admin.security.connection'
defaultMessage='Security Settings' defaultMessage='Connections'
/> />
</h3> </h3>
); );
@@ -45,14 +45,7 @@ export default class ConnectionSettings extends AdminSettings {
renderSettings() { renderSettings() {
return ( return (
<SettingsGroup <SettingsGroup>
header={
<FormattedMessage
id='admin.security.connection'
defaultMessage='Connections'
/>
}
>
<TextSetting <TextSetting
id='allowCorsFrom' id='allowCorsFrom'
label={ label={

Просмотреть файл

@@ -41,8 +41,8 @@ export default class CustomBrandSettings extends AdminSettings {
return ( return (
<h3> <h3>
<FormattedMessage <FormattedMessage
id='admin.customization.title' id='admin.customization.customBrand'
defaultMessage='Customization Settings' defaultMessage='Custom Branding'
/> />
</h3> </h3>
); );
@@ -104,14 +104,7 @@ export default class CustomBrandSettings extends AdminSettings {
} }
return ( return (
<SettingsGroup <SettingsGroup>
header={
<FormattedMessage
id='admin.customization.customBrand'
defaultMessage='Custom Branding'
/>
}
>
<TextSetting <TextSetting
id='siteName' id='siteName'
label={ label={

Просмотреть файл

@@ -35,8 +35,8 @@ export default class EmailAuthenticationSettings extends AdminSettings {
return ( return (
<h3> <h3>
<FormattedMessage <FormattedMessage
id='admin.authentication.title' id='admin.authentication.email'
defaultMessage='Authentication Settings' defaultMessage='Email'
/> />
</h3> </h3>
); );
@@ -44,14 +44,7 @@ export default class EmailAuthenticationSettings extends AdminSettings {
renderSettings() { renderSettings() {
return ( return (
<SettingsGroup <SettingsGroup>
header={
<FormattedMessage
id='admin.authentication.email'
defaultMessage='Email'
/>
}
>
<BooleanSetting <BooleanSetting
id='enableSignUpWithEmail' id='enableSignUpWithEmail'
label={ label={

Просмотреть файл

@@ -52,8 +52,8 @@ export default class EmailSettings extends AdminSettings {
return ( return (
<h3> <h3>
<FormattedMessage <FormattedMessage
id='admin.notifications.title' id='admin.notifications.email'
defaultMessage='Notification Settings' defaultMessage='Email'
/> />
</h3> </h3>
); );
@@ -61,14 +61,7 @@ export default class EmailSettings extends AdminSettings {
renderSettings() { renderSettings() {
return ( return (
<SettingsGroup <SettingsGroup>
header={
<FormattedMessage
id='admin.notifications.email'
defaultMessage='Email'
/>
}
>
<BooleanSetting <BooleanSetting
id='sendEmailNotifications' id='sendEmailNotifications'
label={ label={

Просмотреть файл

@@ -35,8 +35,8 @@ export default class ExternalServiceSettings extends AdminSettings {
return ( return (
<h3> <h3>
<FormattedMessage <FormattedMessage
id='admin.integration.title' id='admin.integrations.external'
defaultMessage='Integration Settings' defaultMessage='External Services'
/> />
</h3> </h3>
); );
@@ -44,14 +44,7 @@ export default class ExternalServiceSettings extends AdminSettings {
renderSettings() { renderSettings() {
return ( return (
<SettingsGroup <SettingsGroup>
header={
<FormattedMessage
id='admin.integrations.external'
defaultMessage='External Services'
/>
}
>
<TextSetting <TextSetting
id='segmentDeveloperKey' id='segmentDeveloperKey'
label={ label={

Просмотреть файл

@@ -83,6 +83,7 @@ export default class GeneratedSetting extends React.Component {
<div className='help-text'> <div className='help-text'>
{this.props.helpText} {this.props.helpText}
</div> </div>
<div className='help-text'>
<button <button
className='btn btn-default' className='btn btn-default'
onClick={this.regenerate} onClick={this.regenerate}
@@ -92,6 +93,7 @@ export default class GeneratedSetting extends React.Component {
</button> </button>
</div> </div>
</div> </div>
</div>
); );
} }
} }

Просмотреть файл

@@ -44,8 +44,8 @@ export default class GitLabSettings extends AdminSettings {
return ( return (
<h3> <h3>
<FormattedMessage <FormattedMessage
id='admin.authentication.title' id='admin.authentication.gitlab'
defaultMessage='Authentication Settings' defaultMessage='GitLab'
/> />
</h3> </h3>
); );
@@ -53,14 +53,7 @@ export default class GitLabSettings extends AdminSettings {
renderSettings() { renderSettings() {
return ( return (
<SettingsGroup <SettingsGroup>
header={
<FormattedMessage
id='admin.authentication.gitlab'
defaultMessage='GitLab'
/>
}
>
<BooleanSetting <BooleanSetting
id='enable' id='enable'
label={ label={

Просмотреть файл

@@ -43,8 +43,8 @@ export default class ImageSettings extends AdminSettings {
return ( return (
<h3> <h3>
<FormattedMessage <FormattedMessage
id='admin.files.title' id='admin.files.images'
defaultMessage='File Settings' defaultMessage='Images'
/> />
</h3> </h3>
); );
@@ -52,14 +52,7 @@ export default class ImageSettings extends AdminSettings {
renderSettings() { renderSettings() {
return ( return (
<SettingsGroup <SettingsGroup>
header={
<FormattedMessage
id='admin.files.images'
defaultMessage='Images'
/>
}
>
<TextSetting <TextSetting
id='thumbnailWidth' id='thumbnailWidth'
label={ label={

Просмотреть файл

@@ -68,8 +68,8 @@ export default class LdapSettings extends AdminSettings {
return ( return (
<h3> <h3>
<FormattedMessage <FormattedMessage
id='admin.authentication.title' id='admin.authentication.ldap'
defaultMessage='Authentication Settings' defaultMessage='LDAP'
/> />
</h3> </h3>
); );
@@ -82,15 +82,7 @@ export default class LdapSettings extends AdminSettings {
} }
return ( return (
<SettingsGroup <SettingsGroup>
header={
<FormattedMessage
id='admin.authentication.ldap'
defaultMessage='LDAP'
/>
}
>
<Banner <Banner
description={ description={
<FormattedMessage <FormattedMessage

Просмотреть файл

@@ -41,8 +41,8 @@ export default class LegalAndSupportSettings extends AdminSettings {
return ( return (
<h3> <h3>
<FormattedMessage <FormattedMessage
id='admin.customization.title' id='admin.customization.support'
defaultMessage='Customization Settings' defaultMessage='Legal and Support'
/> />
</h3> </h3>
); );
@@ -50,14 +50,7 @@ export default class LegalAndSupportSettings extends AdminSettings {
renderSettings() { renderSettings() {
return ( return (
<SettingsGroup <SettingsGroup>
header={
<FormattedMessage
id='admin.customization.support'
defaultMessage='Legal and Support'
/>
}
>
<TextSetting <TextSetting
id='termsOfServiceLink' id='termsOfServiceLink'
label={ label={

Просмотреть файл

@@ -45,8 +45,8 @@ export default class LogSettings extends AdminSettings {
return ( return (
<h3> <h3>
<FormattedMessage <FormattedMessage
id='admin.general.title' id='admin.general.log'
defaultMessage='General Settings' defaultMessage='Logging'
/> />
</h3> </h3>
); );
@@ -60,15 +60,7 @@ export default class LogSettings extends AdminSettings {
]; ];
return ( return (
<SettingsGroup <SettingsGroup>
header={
<FormattedMessage
id='admin.general.log'
defaultMessage='Logging'
/>
}
>
<BooleanSetting <BooleanSetting
id='enableConsole' id='enableConsole'
label={ label={

Просмотреть файл

@@ -41,8 +41,8 @@ export default class LoginSettings extends AdminSettings {
return ( return (
<h3> <h3>
<FormattedMessage <FormattedMessage
id='admin.security.title' id='admin.security.login'
defaultMessage='Security Settings' defaultMessage='Login'
/> />
</h3> </h3>
); );
@@ -73,14 +73,7 @@ export default class LoginSettings extends AdminSettings {
} }
return ( return (
<SettingsGroup <SettingsGroup>
header={
<FormattedMessage
id='admin.security.login'
defaultMessage='Login'
/>
}
>
<GeneratedSetting <GeneratedSetting
id='passwordResetSalt' id='passwordResetSalt'
label={ label={

Просмотреть файл

@@ -33,8 +33,8 @@ export default class PrivacySettings extends AdminSettings {
return ( return (
<h3> <h3>
<FormattedMessage <FormattedMessage
id='admin.general.title' id='admin.general.privacy'
defaultMessage='General Settings' defaultMessage='Privacy'
/> />
</h3> </h3>
); );
@@ -42,14 +42,7 @@ export default class PrivacySettings extends AdminSettings {
renderSettings() { renderSettings() {
return ( return (
<SettingsGroup <SettingsGroup>
header={
<FormattedMessage
id='admin.general.privacy'
defaultMessage='Privacy'
/>
}
>
<BooleanSetting <BooleanSetting
id='showEmailAddress' id='showEmailAddress'
label={ label={

Просмотреть файл

@@ -34,8 +34,8 @@ export default class PublicLinkSettings extends AdminSettings {
return ( return (
<h3> <h3>
<FormattedMessage <FormattedMessage
id='admin.security.title' id='admin.security.public_links'
defaultMessage='Security Settings' defaultMessage='Public Links'
/> />
</h3> </h3>
); );
@@ -43,14 +43,7 @@ export default class PublicLinkSettings extends AdminSettings {
renderSettings() { renderSettings() {
return ( return (
<SettingsGroup <SettingsGroup>
header={
<FormattedMessage
id='admin.security.public_links'
defaultMessage='Public Links'
/>
}
>
<BooleanSetting <BooleanSetting
id='enablePublicLink' id='enablePublicLink'
label={ label={

Просмотреть файл

@@ -39,8 +39,8 @@ export default class SessionSettings extends AdminSettings {
return ( return (
<h3> <h3>
<FormattedMessage <FormattedMessage
id='admin.security.title' id='admin.security.session'
defaultMessage='Security Settings' defaultMessage='Sessions'
/> />
</h3> </h3>
); );
@@ -48,14 +48,7 @@ export default class SessionSettings extends AdminSettings {
renderSettings() { renderSettings() {
return ( return (
<SettingsGroup <SettingsGroup>
header={
<FormattedMessage
id='admin.security.session'
defaultMessage='Sessions'
/>
}
>
<TextSetting <TextSetting
id='sessionLengthWebInDays' id='sessionLengthWebInDays'
label={ label={

Просмотреть файл

@@ -36,8 +36,8 @@ export default class SignupSettings extends AdminSettings {
return ( return (
<h3> <h3>
<FormattedMessage <FormattedMessage
id='admin.security.title' id='admin.security.signup'
defaultMessage='Security Settings' defaultMessage='Signup'
/> />
</h3> </h3>
); );
@@ -45,14 +45,7 @@ export default class SignupSettings extends AdminSettings {
renderSettings() { renderSettings() {
return ( return (
<SettingsGroup <SettingsGroup>
header={
<FormattedMessage
id='admin.security.signup'
defaultMessage='Signup'
/>
}
>
<BooleanSetting <BooleanSetting
id='requireEmailVerification' id='requireEmailVerification'
label={ label={

Просмотреть файл

@@ -49,8 +49,8 @@ export default class StorageSettings extends AdminSettings {
return ( return (
<h3> <h3>
<FormattedMessage <FormattedMessage
id='admin.files.title' id='admin.files.storage'
defaultMessage='File Settings' defaultMessage='Storage'
/> />
</h3> </h3>
); );
@@ -58,14 +58,7 @@ export default class StorageSettings extends AdminSettings {
renderSettings() { renderSettings() {
return ( return (
<SettingsGroup <SettingsGroup>
header={
<FormattedMessage
id='admin.files.storage'
defaultMessage='Storage'
/>
}
>
<TextSetting <TextSetting
id='maxFileSize' id='maxFileSize'
label={ label={

Просмотреть файл

@@ -48,8 +48,8 @@ export default class UsersAndTeamsSettings extends AdminSettings {
return ( return (
<h3> <h3>
<FormattedMessage <FormattedMessage
id='admin.general.title' id='admin.general.usersAndTeams'
defaultMessage='General Settings' defaultMessage='Users and Teams'
/> />
</h3> </h3>
); );
@@ -57,14 +57,7 @@ export default class UsersAndTeamsSettings extends AdminSettings {
renderSettings() { renderSettings() {
return ( return (
<SettingsGroup <SettingsGroup>
header={
<FormattedMessage
id='admin.general.usersAndTeams'
defaultMessage='Users and Teams'
/>
}
>
<BooleanSetting <BooleanSetting
id='enableUserCreation' id='enableUserCreation'
label={ label={

Просмотреть файл

@@ -41,8 +41,8 @@ export default class WebhookSettings extends AdminSettings {
return ( return (
<h3> <h3>
<FormattedMessage <FormattedMessage
id='admin.integration.title' id='admin.integrations.webhook'
defaultMessage='Integration Settings' defaultMessage='Webhooks and Commands'
/> />
</h3> </h3>
); );
@@ -50,14 +50,7 @@ export default class WebhookSettings extends AdminSettings {
renderSettings() { renderSettings() {
return ( return (
<SettingsGroup <SettingsGroup>
header={
<FormattedMessage
id='admin.integrations.webhook'
defaultMessage='Webhooks and Commands'
/>
}
>
<BooleanSetting <BooleanSetting
id='enableIncomingWebhooks' id='enableIncomingWebhooks'
label={ label={

Просмотреть файл

@@ -433,6 +433,7 @@
"admin.sidebar.privacy": "Privacy", "admin.sidebar.privacy": "Privacy",
"admin.sidebar.publicLinks": "Public Links", "admin.sidebar.publicLinks": "Public Links",
"admin.sidebar.push": "Mobile Push", "admin.sidebar.push": "Mobile Push",
"admin.sidebar.advanced": "Advanced",
"admin.sidebar.rateLimiting": "Rate Limiting", "admin.sidebar.rateLimiting": "Rate Limiting",
"admin.sidebar.reports": "SITE REPORTS", "admin.sidebar.reports": "SITE REPORTS",
"admin.sidebar.rmTeamSidebar": "Remove team from sidebar menu", "admin.sidebar.rmTeamSidebar": "Remove team from sidebar menu",

Просмотреть файл

@@ -370,6 +370,10 @@ function renderRootComponent() {
path='privacy' path='privacy'
component={PrivacySettings} component={PrivacySettings}
/> />
<Route
path='compliance'
component={ComplianceSettings}
/>
<Route <Route
path='logging' path='logging'
component={LogSettings} component={LogSettings}
@@ -435,10 +439,6 @@ function renderRootComponent() {
component={ExternalServiceSettings} component={ExternalServiceSettings}
/> />
</Route> </Route>
<Route
path='database'
component={DatabaseSettings}
/>
<Route path='files'> <Route path='files'>
<IndexRedirect to='storage'/> <IndexRedirect to='storage'/>
<Route <Route
@@ -461,18 +461,21 @@ function renderRootComponent() {
component={LegalAndSupportSettings} component={LegalAndSupportSettings}
/> />
</Route> </Route>
<Route <Route path='advanced'>
path='compliance' <IndexRedirect to='rate'/>
component={ComplianceSettings}
/>
<Route <Route
path='rate' path='rate'
component={RateSettings} component={RateSettings}
/> />
<Route
path='database'
component={DatabaseSettings}
/>
<Route <Route
path='developer' path='developer'
component={DeveloperSettings} component={DeveloperSettings}
/> />
</Route>
<Route path='team'> <Route path='team'>
<Redirect <Redirect
from=':team' from=':team'

Просмотреть файл

@@ -15,6 +15,18 @@
} }
} }
&.btn-default {
background: alpha-color($black, .7);
color: $white;
&:hover,
&:focus,
&:active {
background: alpha-color($black, .8);
color: $white;
}
}
&.btn-danger { &.btn-danger {
color: $white; color: $white;

Просмотреть файл

@@ -103,8 +103,8 @@
} }
.help-text { .help-text {
color: #777; color: alpha-color($black, .5);
margin: 10px 0 0 15px; margin: 10px 0 0;
&.no-margin { &.no-margin {
margin: 0; margin: 0;
@@ -261,10 +261,11 @@
} }
.nav-pills__container { .nav-pills__container {
background: #111;
@include font-smoothing(initial); @include font-smoothing(initial);
height: calc(100% - 80px); background: #111;
height: calc(100% - 50px);
margin-top: 1px; margin-top: 1px;
padding-bottom: 20px;
position: relative; position: relative;
} }
@@ -291,6 +292,23 @@
> .sidebar-section-title { > .sidebar-section-title {
position: relative; position: relative;
} }
.nav__sub-menu {
margin-bottom: 7px;
}
}
.sections {
&.sections--settings {
.sidebar-section-title {
text-transform: uppercase;
&:hover,
&:focus {
color: alpha-color($white, .5);
}
}
}
} }
.sidebar-section-title { .sidebar-section-title {
@@ -303,7 +321,8 @@
.sidebar-section-title, .sidebar-section-title,
.sidebar-subsection-title { .sidebar-subsection-title {
color: #bbb; @include clearfix;
color: alpha-color($white, .5);
display: block; display: block;
font-size: 13px; font-size: 13px;
position: relative; position: relative;
@@ -318,8 +337,14 @@
} }
&--active { &--active {
background: alpha-color($white, .1);
color: $white; color: $white;
font-weight: 600;
&:hover,
&:focus {
background: alpha-color($white, .1);
color: $white;
}
&:after { &:after {
-moz-osx-font-smoothing: grayscale; -moz-osx-font-smoothing: grayscale;