cleanup. added fallback mechanism for IE11 and unsupported browsers.
This commit is contained in:
parent
aa0564406a
commit
acdb5e5c7a
22 changed files with 464 additions and 385 deletions
52
src/App.scss
52
src/App.scss
|
@ -1,4 +1,5 @@
|
||||||
@import './_variables.scss';
|
@import './_variables.scss';
|
||||||
|
|
||||||
#app {
|
#app {
|
||||||
background-size: cover;
|
background-size: cover;
|
||||||
background-attachment: fixed;
|
background-attachment: fixed;
|
||||||
|
@ -33,18 +34,22 @@ body {
|
||||||
font-family: sans-serif;
|
font-family: sans-serif;
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
color: var(--fg);
|
color: $fallback--fg;
|
||||||
|
color: var(--fg, $fallback--fg);
|
||||||
}
|
}
|
||||||
|
|
||||||
a {
|
a {
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
color: var(--link);
|
color: $fallback--link;
|
||||||
|
color: var(--link, $fallback--link);
|
||||||
}
|
}
|
||||||
|
|
||||||
button{
|
button{
|
||||||
user-select: none;
|
user-select: none;
|
||||||
color: var(--faint);
|
color: $fallback--faint;
|
||||||
background-color: var(--btn);
|
color: var(--faint, $fallback--faint);
|
||||||
|
background-color: $fallback--btn;
|
||||||
|
background-color: var(--btn, $fallback--btn);
|
||||||
border: none;
|
border: none;
|
||||||
border-radius: 5px;
|
border-radius: 5px;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
|
@ -54,8 +59,6 @@ button{
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
font-family: sans-serif;
|
font-family: sans-serif;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
&:hover {
|
&:hover {
|
||||||
box-shadow: 0px 0px 4px rgba(255, 255, 255, 0.3);
|
box-shadow: 0px 0px 4px rgba(255, 255, 255, 0.3);
|
||||||
}
|
}
|
||||||
|
@ -66,8 +69,10 @@ button{
|
||||||
}
|
}
|
||||||
|
|
||||||
&.pressed {
|
&.pressed {
|
||||||
color: var(--faint);
|
color: $fallback--faint;
|
||||||
background-color: var(--bg)
|
color: var(--faint, $fallback--faint);
|
||||||
|
background-color: $fallback--bg;
|
||||||
|
background-color: var(--bg, $fallback--bg)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -78,11 +83,13 @@ input, textarea, select {
|
||||||
border-bottom: 1px solid rgba(255, 255, 255, 0.2);
|
border-bottom: 1px solid rgba(255, 255, 255, 0.2);
|
||||||
border-top: 1px solid rgba(0, 0, 0, 0.2);
|
border-top: 1px solid rgba(0, 0, 0, 0.2);
|
||||||
box-shadow: 0px 0px 2px black inset;
|
box-shadow: 0px 0px 2px black inset;
|
||||||
background-color: var(--lightBg);
|
background-color: $fallback--lightBg;
|
||||||
color: var(--lightFg);
|
background-color: var(--lightBg, $fallback--lightBg);
|
||||||
|
color: $fallback--lightFg;
|
||||||
|
color: var(--lightFg, $fallback--lightFg);
|
||||||
font-family: sans-serif;
|
font-family: sans-serif;
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
padding: 5px;
|
padding: 8px 7px 4px;
|
||||||
|
|
||||||
// TODO: Restyle <select> in a decent way. Needs different markup
|
// TODO: Restyle <select> in a decent way. Needs different markup
|
||||||
// -webkit-appearance:none;
|
// -webkit-appearance:none;
|
||||||
|
@ -93,7 +100,8 @@ input, textarea, select {
|
||||||
&[type=checkbox] {
|
&[type=checkbox] {
|
||||||
display: none;
|
display: none;
|
||||||
&:checked + label::before {
|
&:checked + label::before {
|
||||||
color: var(--fg);
|
color: $fallback--fg;
|
||||||
|
color: var(--fg, $fallback--fg);
|
||||||
}
|
}
|
||||||
+ label::before {
|
+ label::before {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
|
@ -106,7 +114,8 @@ input, textarea, select {
|
||||||
border-top: 1px solid rgba(0, 0, 0, 0.2);
|
border-top: 1px solid rgba(0, 0, 0, 0.2);
|
||||||
box-shadow: 0px 0px 2px black inset;
|
box-shadow: 0px 0px 2px black inset;
|
||||||
margin-right: .5em;
|
margin-right: .5em;
|
||||||
background-color: var(--btn);
|
background-color: $fallback--btn;
|
||||||
|
background-color: var(--btn, $fallback--btn);
|
||||||
vertical-align: baseline;
|
vertical-align: baseline;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
line-height: 1.1em;
|
line-height: 1.1em;
|
||||||
|
@ -126,7 +135,8 @@ input, textarea, select {
|
||||||
.icon-binoculars,
|
.icon-binoculars,
|
||||||
.icon-plus-squared,
|
.icon-plus-squared,
|
||||||
.icon-spin4 {
|
.icon-spin4 {
|
||||||
color: var(--icon)
|
color: $fallback--icon;
|
||||||
|
color: var(--icon, $fallback--icon)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -202,9 +212,12 @@ main-router {
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
margin: 0.5em;
|
margin: 0.5em;
|
||||||
|
|
||||||
background-color: var(--bg);
|
background-color: $fallback--bg;
|
||||||
|
background-color: var(--bg, $fallback--bg);
|
||||||
|
|
||||||
border-radius: 10px;
|
border-radius: 10px;
|
||||||
|
border-radius: $fallback--panelRadius;
|
||||||
|
border-radius: var(--panelRadius, 10px);
|
||||||
box-shadow: 1px 1px 4px rgba(0,0,0,.6);
|
box-shadow: 1px 1px 4px rgba(0,0,0,.6);
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
}
|
}
|
||||||
|
@ -223,7 +236,8 @@ main-router {
|
||||||
text-align: left;
|
text-align: left;
|
||||||
font-size: 1.3em;
|
font-size: 1.3em;
|
||||||
line-height: 24px;
|
line-height: 24px;
|
||||||
background-color: var(--btn);
|
background-color: $fallback--btn;
|
||||||
|
background-color: var(--btn, $fallback--btn);
|
||||||
}
|
}
|
||||||
|
|
||||||
.panel-footer {
|
.panel-footer {
|
||||||
|
@ -246,8 +260,10 @@ main-router {
|
||||||
|
|
||||||
nav {
|
nav {
|
||||||
z-index: 1000;
|
z-index: 1000;
|
||||||
background-color: var(--bg);
|
background-color: $fallback--btn;
|
||||||
color: var(--faint);
|
background-color: var(--btn, $fallback--btn);
|
||||||
|
color: $fallback--faint;
|
||||||
|
color: var(--faint, $fallback--faint);
|
||||||
box-shadow: 0px 0px 4px rgba(0,0,0,.6);
|
box-shadow: 0px 0px 4px rgba(0,0,0,.6);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,20 @@
|
||||||
$main-color: #f58d2c;
|
$main-color: #f58d2c;
|
||||||
$main-background: white;
|
$main-background: white;
|
||||||
$darkened-background: whitesmoke;
|
$darkened-background: whitesmoke;
|
||||||
$green_: #0fa00f;
|
|
||||||
$blue_: #0095ff;
|
$fallback--bg: #121a24;
|
||||||
$red_: #ff0000;
|
$fallback--btn: #182230;
|
||||||
|
$fallback--faint: #999;
|
||||||
|
$fallback--fg: #b9b9ba;
|
||||||
|
$fallback--link: #d8a070;
|
||||||
|
$fallback--icon: #666;
|
||||||
|
$fallback--lightBg: rgb(21, 30, 42);
|
||||||
|
$fallback--lightFg: #b9b9ba;
|
||||||
|
$fallback--border: #222;
|
||||||
|
$fallback--cRed: #ff0000;
|
||||||
|
$fallback--cBlue: #0095ff;
|
||||||
|
$fallback--cGreen: #0fa00f;
|
||||||
|
$fallback--cOrange: orange;
|
||||||
|
$fallback--cYellow: yellow;
|
||||||
|
|
||||||
|
$fallback--panelRadius: 10px;
|
||||||
|
|
|
@ -30,6 +30,8 @@
|
||||||
<script src="./attachment.js"></script>
|
<script src="./attachment.js"></script>
|
||||||
|
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
|
@import '../../_variables.scss';
|
||||||
|
|
||||||
.attachments {
|
.attachments {
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-wrap: wrap;
|
flex-wrap: wrap;
|
||||||
|
@ -45,7 +47,8 @@
|
||||||
flex: 1 0 30%;
|
flex: 1 0 30%;
|
||||||
margin: 0.5em 0.7em 0.6em 0.0em;
|
margin: 0.5em 0.7em 0.6em 0.0em;
|
||||||
align-self: flex-start;
|
align-self: flex-start;
|
||||||
border-color: var(--border);
|
border-color: $fallback--border;
|
||||||
|
border-color: var(--border, $fallback--border);
|
||||||
|
|
||||||
border-style: solid;
|
border-style: solid;
|
||||||
border-width: 1px;
|
border-width: 1px;
|
||||||
|
|
|
@ -14,8 +14,8 @@
|
||||||
.icon-cancel,.delete-status {
|
.icon-cancel,.delete-status {
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
&:hover {
|
&:hover {
|
||||||
color: $red_;
|
color: var(--cRed, $fallback--cRed);
|
||||||
color: var(--red);
|
color: $fallback--cRed;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
|
@ -11,18 +11,22 @@
|
||||||
|
|
||||||
<script src="./favorite_button.js" ></script>
|
<script src="./favorite_button.js" ></script>
|
||||||
|
|
||||||
<style lang='scss'>
|
<style lang="scss">
|
||||||
|
@import '../../_variables.scss';
|
||||||
|
|
||||||
.fav-active {
|
.fav-active {
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
animation-duration: 0.6s;
|
animation-duration: 0.6s;
|
||||||
|
|
||||||
&:hover {
|
&:hover {
|
||||||
color: orange;
|
color: $fallback--cOrange;
|
||||||
color: var(--cOrange);
|
color: var(--cOrange, $fallback--cOrange);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.favorite-button.icon-star {
|
.favorite-button.icon-star {
|
||||||
color: orange;
|
color: $fallback--cOrange;
|
||||||
color: var(--cOrange);
|
color: var(--cOrange, $fallback--cOrange);
|
||||||
}
|
}
|
||||||
|
|
||||||
</style>
|
</style>
|
||||||
|
|
|
@ -31,6 +31,7 @@
|
||||||
<script src="./login_form.js" ></script>
|
<script src="./login_form.js" ></script>
|
||||||
|
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
|
@import '../../_variables.scss';
|
||||||
|
|
||||||
.login-form {
|
.login-form {
|
||||||
input {
|
input {
|
||||||
|
@ -47,7 +48,7 @@
|
||||||
border-radius: 5px;
|
border-radius: 5px;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
background-color: rgba(255, 48, 16, 0.65);
|
background-color: rgba(255, 48, 16, 0.65);
|
||||||
background-color: var(--cRed);
|
background-color: $fallback--cRed;
|
||||||
min-height: 28px;
|
min-height: 28px;
|
||||||
line-height: 28px;
|
line-height: 28px;
|
||||||
}
|
}
|
||||||
|
|
|
@ -30,6 +30,8 @@
|
||||||
<script src="./nav_panel.js" ></script>
|
<script src="./nav_panel.js" ></script>
|
||||||
|
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
|
@import '../../_variables.scss';
|
||||||
|
|
||||||
.nav-panel ul {
|
.nav-panel ul {
|
||||||
list-style: none;
|
list-style: none;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
|
@ -38,13 +40,17 @@
|
||||||
|
|
||||||
.nav-panel li {
|
.nav-panel li {
|
||||||
border-bottom: 1px solid;
|
border-bottom: 1px solid;
|
||||||
border-color: var(--border);
|
border-color: $fallback--border;
|
||||||
background-color: var(--bg);
|
border-color: var(--border, $fallback--border);
|
||||||
|
background-color: $fallback--bg;
|
||||||
|
background-color: var(--bg, $fallback--bg);
|
||||||
padding: 0;
|
padding: 0;
|
||||||
|
|
||||||
&:first-child a {
|
&:first-child a {
|
||||||
border-top-right-radius: 10px;
|
border-top-right-radius: 10px;
|
||||||
border-top-left-radius: 10px;
|
border-top-left-radius: 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
&:last-child a {
|
&:last-child a {
|
||||||
border-bottom-right-radius: 10px;
|
border-bottom-right-radius: 10px;
|
||||||
border-bottom-left-radius: 10px;
|
border-bottom-left-radius: 10px;
|
||||||
|
@ -58,16 +64,20 @@
|
||||||
.nav-panel a {
|
.nav-panel a {
|
||||||
display: block;
|
display: block;
|
||||||
padding: 0.8em 0.85em;
|
padding: 0.8em 0.85em;
|
||||||
|
|
||||||
&:hover {
|
&:hover {
|
||||||
background-color: var(--lightBg);
|
background-color: $fallback--lightBg;
|
||||||
|
background-color: var(--lightBg, $fallback--lightBg);
|
||||||
}
|
}
|
||||||
|
|
||||||
&.router-link-active {
|
&.router-link-active {
|
||||||
font-weight: bolder;
|
font-weight: bolder;
|
||||||
background-color: var(--lightBg);
|
background-color: $fallback--lightBg;
|
||||||
|
background-color: var(--lightBg, $fallback--lightBg);
|
||||||
|
|
||||||
&:hover {
|
&:hover {
|
||||||
text-decoration: underline;
|
text-decoration: underline;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
</style>
|
</style>
|
||||||
|
|
|
@ -24,11 +24,6 @@ const Notifications = {
|
||||||
},
|
},
|
||||||
unseenCount () {
|
unseenCount () {
|
||||||
return this.unseenNotifications.length
|
return this.unseenNotifications.length
|
||||||
},
|
|
||||||
hiderStyle () {
|
|
||||||
return {
|
|
||||||
background: `linear-gradient(to bottom, rgba(0, 0, 0, 0), ${this.$store.state.config.colors.bg} 80%)`
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
components: {
|
components: {
|
||||||
|
|
|
@ -5,32 +5,39 @@
|
||||||
padding-bottom: 15em;
|
padding-bottom: 15em;
|
||||||
|
|
||||||
.panel {
|
.panel {
|
||||||
background: var(--bg)
|
background: $fallback--bg;
|
||||||
|
background: var(--bg, $fallback--bg)
|
||||||
}
|
}
|
||||||
|
|
||||||
.panel-body {
|
.panel-body {
|
||||||
border-color: var(--border)
|
border-color: $fallback--border;
|
||||||
|
border-color: var(--border, $fallback--border)
|
||||||
}
|
}
|
||||||
|
|
||||||
.panel-heading {
|
.panel-heading {
|
||||||
// force the text to stay centered, while keeping
|
// force the text to stay centered, while keeping
|
||||||
// the button in the right side of the panel heading
|
// the button in the right side of the panel heading
|
||||||
position: relative;
|
position: relative;
|
||||||
background: var(--btn);
|
background: $fallback--btn;
|
||||||
color: var(--faint);
|
background: var(--btn, $fallback--btn);
|
||||||
|
color: $fallback--faint;
|
||||||
|
color: var(--faint, $fallback--faint);
|
||||||
.read-button {
|
.read-button {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
right: 0.7em;
|
right: 0.7em;
|
||||||
height: 1.8em;
|
height: 1.8em;
|
||||||
line-height: 100%;
|
line-height: 100%;
|
||||||
background-color: var(--btn);
|
background-color: $fallback--btn;
|
||||||
color: var(--faint);
|
background-color: var(--btn, $fallback--btn);
|
||||||
|
color: $fallback--faint;
|
||||||
|
color: var(--faint, $fallback--faint);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.unseen-count {
|
.unseen-count {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
background-color: var(--cRed);
|
background-color: $fallback--cRed;
|
||||||
|
background-color: var(--cRed, $fallback--cRed);
|
||||||
text-shadow: 0px 0px 3px rgba(0, 0, 0, 0.5);
|
text-shadow: 0px 0px 3px rgba(0, 0, 0, 0.5);
|
||||||
min-width: 1.3em;
|
min-width: 1.3em;
|
||||||
border-radius: 1.3em;
|
border-radius: 1.3em;
|
||||||
|
@ -52,6 +59,10 @@
|
||||||
border-bottom: 1px solid;
|
border-bottom: 1px solid;
|
||||||
border-bottom-color: inherit;
|
border-bottom-color: inherit;
|
||||||
|
|
||||||
|
.notification-gradient {
|
||||||
|
background: linear-gradient(to bottom, rgba(0, 0, 0, 0), $fallback--bg 80%);
|
||||||
|
background: linear-gradient(to bottom, rgba(0, 0, 0, 0), var(--bg, $fallback--bg) 80%)
|
||||||
|
}
|
||||||
|
|
||||||
.text {
|
.text {
|
||||||
min-width: 0px;
|
min-width: 0px;
|
||||||
|
@ -61,23 +72,24 @@
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
|
|
||||||
.icon-retweet.lit {
|
.icon-retweet.lit {
|
||||||
color: $green_;
|
color: $fallback--cGreen;
|
||||||
color: var(--cGreen);
|
color: var(--cGreen, $fallback--cGreen);
|
||||||
}
|
}
|
||||||
|
|
||||||
.icon-user-plus.lit {
|
.icon-user-plus.lit {
|
||||||
color: $blue_;
|
color: $fallback--cBlue;
|
||||||
color: var(--cBlue);
|
color: var(--cBlue, $fallback--cBlue);
|
||||||
}
|
}
|
||||||
|
|
||||||
.icon-reply.lit {
|
.icon-reply.lit {
|
||||||
color: $blue_;
|
color: $fallback--cBlue;
|
||||||
color: var(--cBlue);
|
color: var(--cBlue, $fallback--cBlue);
|
||||||
}
|
}
|
||||||
|
|
||||||
.icon-star.lit {
|
.icon-star.lit {
|
||||||
color: orange;
|
color: orange;
|
||||||
color: var(--cOrange);
|
color: $fallback--cOrange;
|
||||||
|
color: var(--cOrange, $fallback--cOrange);
|
||||||
}
|
}
|
||||||
|
|
||||||
.status-content {
|
.status-content {
|
||||||
|
@ -151,7 +163,8 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
.unseen {
|
.unseen {
|
||||||
border-left: 4px solid var(--cRed);
|
border-left: 4px solid $fallback--cRed;
|
||||||
|
border-left: 4px solid var(--cRed, $fallback--cRed);
|
||||||
padding-left: 6px;
|
padding-left: 6px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -20,7 +20,7 @@
|
||||||
<i class="fa icon-star lit"></i>
|
<i class="fa icon-star lit"></i>
|
||||||
<small><router-link :to="{ name: 'conversation', params: { id: notification.status.id } }"><timeago :since="notification.action.created_at" :auto-update="240"></timeago></router-link></small>
|
<small><router-link :to="{ name: 'conversation', params: { id: notification.status.id } }"><timeago :since="notification.action.created_at" :auto-update="240"></timeago></router-link></small>
|
||||||
</h1>
|
</h1>
|
||||||
<div class="notification-gradient" :style="hiderStyle"></div>
|
<div class="notification-gradient"></div>
|
||||||
<div class="notification-content" v-html="notification.status.statusnet_html"></div>
|
<div class="notification-content" v-html="notification.status.statusnet_html"></div>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="notification.type === 'repeat'">
|
<div v-if="notification.type === 'repeat'">
|
||||||
|
@ -29,7 +29,7 @@
|
||||||
<i class="fa icon-retweet lit"></i>
|
<i class="fa icon-retweet lit"></i>
|
||||||
<small><router-link :to="{ name: 'conversation', params: { id: notification.status.id } }"><timeago :since="notification.action.created_at" :auto-update="240"></timeago></router-link></small>
|
<small><router-link :to="{ name: 'conversation', params: { id: notification.status.id } }"><timeago :since="notification.action.created_at" :auto-update="240"></timeago></router-link></small>
|
||||||
</h1>
|
</h1>
|
||||||
<div class="notification-gradient" :style="hiderStyle"></div>
|
<div class="notification-gradient"></div>
|
||||||
<div class="notification-content" v-html="notification.status.statusnet_html"></div>
|
<div class="notification-content" v-html="notification.status.statusnet_html"></div>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="notification.type === 'mention'">
|
<div v-if="notification.type === 'mention'">
|
||||||
|
|
|
@ -50,6 +50,7 @@
|
||||||
<script src="./post_status_form.js"></script>
|
<script src="./post_status_form.js"></script>
|
||||||
|
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
|
@import '../../_variables.scss';
|
||||||
|
|
||||||
.tribute-container {
|
.tribute-container {
|
||||||
ul {
|
ul {
|
||||||
|
@ -83,11 +84,13 @@
|
||||||
display: flex;
|
display: flex;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.error {
|
.error {
|
||||||
border-radius: 5px;
|
border-radius: 5px;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
background-color: rgba(255, 48, 16, 0.65);
|
background-color: rgba(255, 48, 16, 0.65);
|
||||||
background-color: var(--cRed);
|
background-color: $fallback--cRed;
|
||||||
|
background-color: var(--cRed, $fallback--cRed);
|
||||||
padding: 0.25em;
|
padding: 0.25em;
|
||||||
margin: 0.35em;
|
margin: 0.35em;
|
||||||
display: flex;
|
display: flex;
|
||||||
|
@ -98,7 +101,8 @@
|
||||||
|
|
||||||
.attachment {
|
.attachment {
|
||||||
position: relative;
|
position: relative;
|
||||||
border: var(--border);
|
border: $fallback--border;
|
||||||
|
border: var(--border, $fallback--border);
|
||||||
margin: 0.5em 0.8em 0.2em 0;
|
margin: 0.5em 0.8em 0.2em 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -139,11 +143,11 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
form textarea {
|
form textarea {
|
||||||
border-radius: 5px;
|
|
||||||
line-height:16px;
|
line-height:16px;
|
||||||
padding: 5px;
|
|
||||||
resize: none;
|
resize: none;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
|
transition: min-height 200ms;
|
||||||
|
min-height: 1px;
|
||||||
}
|
}
|
||||||
|
|
||||||
form textarea:focus {
|
form textarea:focus {
|
||||||
|
@ -170,8 +174,10 @@
|
||||||
z-index: 1;
|
z-index: 1;
|
||||||
box-shadow: 1px 2px 4px rgba(0, 0, 0, 0.5);
|
box-shadow: 1px 2px 4px rgba(0, 0, 0, 0.5);
|
||||||
min-width: 75%;
|
min-width: 75%;
|
||||||
background: var(--btn);
|
background: $fallback--btn;
|
||||||
color: var(--lightFg);
|
background: var(--btn, $fallback--btn);
|
||||||
|
color: $fallback--lightFg;
|
||||||
|
color: var(--lightFg, $fallback--lightFg);
|
||||||
}
|
}
|
||||||
|
|
||||||
.autocomplete {
|
.autocomplete {
|
||||||
|
@ -179,19 +185,23 @@
|
||||||
padding: 0.2em 0.4em 0.2em 0.4em;
|
padding: 0.2em 0.4em 0.2em 0.4em;
|
||||||
border-bottom: 1px solid rgba(0, 0, 0, 0.4);
|
border-bottom: 1px solid rgba(0, 0, 0, 0.4);
|
||||||
display: flex;
|
display: flex;
|
||||||
|
|
||||||
img {
|
img {
|
||||||
width: 24px;
|
width: 24px;
|
||||||
height: 24px;
|
height: 24px;
|
||||||
border-radius: 2px;
|
border-radius: 2px;
|
||||||
object-fit: contain;
|
object-fit: contain;
|
||||||
}
|
}
|
||||||
|
|
||||||
span {
|
span {
|
||||||
line-height: 24px;
|
line-height: 24px;
|
||||||
margin: 0 0.1em 0 0.2em;
|
margin: 0 0.1em 0 0.2em;
|
||||||
}
|
}
|
||||||
|
|
||||||
small {
|
small {
|
||||||
margin-left: .5em;
|
margin-left: .5em;
|
||||||
color: var(--faint);
|
color: $fallback--faint;
|
||||||
|
color: var(--faint, $fallback--faint);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -55,6 +55,7 @@
|
||||||
|
|
||||||
<script src="./registration.js"></script>
|
<script src="./registration.js"></script>
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
|
@import '../../_variables.scss';
|
||||||
|
|
||||||
.registration-form {
|
.registration-form {
|
||||||
display: flex;
|
display: flex;
|
||||||
|
@ -87,18 +88,13 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
form textarea {
|
form textarea {
|
||||||
border: solid;
|
|
||||||
border-width: 1px;
|
|
||||||
border-color: silver;
|
|
||||||
border-radius: 5px;
|
border-radius: 5px;
|
||||||
line-height:16px;
|
line-height:16px;
|
||||||
padding: 5px;
|
|
||||||
resize: vertical;
|
resize: vertical;
|
||||||
}
|
}
|
||||||
|
|
||||||
input {
|
input {
|
||||||
border-radius: 5px;
|
border-radius: 5px;
|
||||||
padding: 0.1em 0.2em 0.2em 0.2em;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.captcha {
|
.captcha {
|
||||||
|
@ -117,8 +113,8 @@
|
||||||
border-radius: 5px;
|
border-radius: 5px;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
margin: 0.5em 0.6em 0;
|
margin: 0.5em 0.6em 0;
|
||||||
background-color: rgba(255, 48, 16, 0.65);
|
background-color: $fallback--cRed;
|
||||||
background-color: var(--cRed);
|
background-color: var(--cRed, $fallback--cRed);
|
||||||
min-height: 28px;
|
min-height: 28px;
|
||||||
line-height: 28px;
|
line-height: 28px;
|
||||||
}
|
}
|
||||||
|
|
|
@ -11,18 +11,18 @@
|
||||||
|
|
||||||
<script src="./retweet_button.js" ></script>
|
<script src="./retweet_button.js" ></script>
|
||||||
|
|
||||||
<style lang='scss'>
|
<style lang="scss">
|
||||||
@import '../../_variables.scss';
|
@import '../../_variables.scss';
|
||||||
.rt-active {
|
.rt-active {
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
animation-duration: 0.6s;
|
animation-duration: 0.6s;
|
||||||
&:hover {
|
&:hover {
|
||||||
color: $green_;
|
color: $fallback--cGreen;
|
||||||
color: var(--cGreen);
|
color: var(--cGreen, $fallback--cGreen);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.icon-retweet.retweeted {
|
.icon-retweet.retweeted {
|
||||||
color: $green_;
|
color: $fallback--cGreen;
|
||||||
color: var(--cGreen);
|
color: var(--cGreen, $fallback--cGreen);
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
|
@ -56,6 +56,7 @@
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
.setting-item {
|
.setting-item {
|
||||||
margin: 1em 1em 1.4em;
|
margin: 1em 1em 1.4em;
|
||||||
|
|
||||||
textarea {
|
textarea {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100px;
|
height: 100px;
|
||||||
|
|
|
@ -139,8 +139,10 @@ status-text-container {
|
||||||
max-width: 34em;
|
max-width: 34em;
|
||||||
padding: 0.5em;
|
padding: 0.5em;
|
||||||
display: flex;
|
display: flex;
|
||||||
background-color: var(--bg);
|
background-color: $fallback--bg;
|
||||||
border-color: var(--border);
|
background-color: var(--bg, $fallback--bg);
|
||||||
|
border-color: $fallback--border;
|
||||||
|
border-color: var(--border, $fallback--border);
|
||||||
border-style: solid;
|
border-style: solid;
|
||||||
border-width: 1px;
|
border-width: 1px;
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
|
@ -181,15 +183,19 @@ status-text-container {
|
||||||
word-break: break-word;
|
word-break: break-word;
|
||||||
border-left-width: 0px;
|
border-left-width: 0px;
|
||||||
line-height: 18px;
|
line-height: 18px;
|
||||||
background-color: var(--bg);
|
background-color: $fallback--bg;
|
||||||
border-color: var(--border);
|
background-color: var(--bg, $fallback--bg);
|
||||||
|
border-color: $fallback--border;
|
||||||
|
border-color: var(--border, $fallback--border);
|
||||||
|
|
||||||
&_focused {
|
&_focused {
|
||||||
background-color: var(--lightBg);
|
background-color: $fallback--lightBg;
|
||||||
|
background-color: var(--lightBg, $fallback--lightBg);
|
||||||
}
|
}
|
||||||
|
|
||||||
.usercard {
|
.usercard {
|
||||||
border-color: var(--border);
|
border-color: $fallback--border;
|
||||||
|
border-color: var(--border, $fallback--border);
|
||||||
}
|
}
|
||||||
|
|
||||||
.timeline & {
|
.timeline & {
|
||||||
|
@ -211,7 +217,6 @@ status-text-container {
|
||||||
|
|
||||||
|
|
||||||
.user-content {
|
.user-content {
|
||||||
|
|
||||||
min-height: 52px;
|
min-height: 52px;
|
||||||
padding-top: 1px;
|
padding-top: 1px;
|
||||||
}
|
}
|
||||||
|
@ -224,14 +229,17 @@ status-text-container {
|
||||||
small {
|
small {
|
||||||
font-weight: lighter;
|
font-weight: lighter;
|
||||||
}
|
}
|
||||||
|
|
||||||
h4 {
|
h4 {
|
||||||
margin-right: 0.4em;
|
margin-right: 0.4em;
|
||||||
}
|
}
|
||||||
|
|
||||||
.name-and-links {
|
.name-and-links {
|
||||||
flex: 1 0;
|
flex: 1 0;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-wrap: wrap;
|
flex-wrap: wrap;
|
||||||
}
|
}
|
||||||
|
|
||||||
.replies {
|
.replies {
|
||||||
flex-basis: 100%;
|
flex-basis: 100%;
|
||||||
}
|
}
|
||||||
|
@ -310,6 +318,7 @@ status-text-container {
|
||||||
from {
|
from {
|
||||||
opacity: 0;
|
opacity: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
to {
|
to {
|
||||||
opacity: 1;
|
opacity: 1;
|
||||||
}
|
}
|
||||||
|
@ -335,13 +344,13 @@ status-text-container {
|
||||||
}
|
}
|
||||||
|
|
||||||
.icon-reply:hover {
|
.icon-reply:hover {
|
||||||
color: $blue_;
|
color: $fallback--cBlue;
|
||||||
color: var(--cBlue);
|
color: var(--cBlue, $fallback--cBlue);
|
||||||
}
|
}
|
||||||
|
|
||||||
.icon-reply.icon-reply-active {
|
.icon-reply.icon-reply-active {
|
||||||
color: $blue_;
|
color: $fallback--cBlue;
|
||||||
color: var(--cBlue);
|
color: var(--cBlue, $fallback--cBlue);
|
||||||
}
|
}
|
||||||
|
|
||||||
.status .avatar {
|
.status .avatar {
|
||||||
|
@ -376,7 +385,7 @@ status-text-container {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.status .avatar-retweeter {
|
.status img.avatar-retweeter {
|
||||||
width: 24px;
|
width: 24px;
|
||||||
height: 24px;
|
height: 24px;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
|
@ -390,7 +399,8 @@ status-text-container {
|
||||||
|
|
||||||
.status {
|
.status {
|
||||||
padding: 0.4em 0.7em 0.45em 0.7em;
|
padding: 0.4em 0.7em 0.45em 0.7em;
|
||||||
border-left: 4px var(--cRed);
|
border-left: 4px $fallback--cRed;
|
||||||
|
border-left: 4px var(--cRed, $fallback--cRed);
|
||||||
border-left-style: inherit;
|
border-left-style: inherit;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -434,6 +444,7 @@ status-text-container {
|
||||||
margin-left: -0.25em;
|
margin-left: -0.25em;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.status {
|
.status {
|
||||||
max-width: 100%;
|
max-width: 100%;
|
||||||
}
|
}
|
||||||
|
|
|
@ -47,6 +47,7 @@
|
||||||
<script src="./style_switcher.js"></script>
|
<script src="./style_switcher.js"></script>
|
||||||
|
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
|
@import '../../_variables.scss';
|
||||||
.style-switcher {
|
.style-switcher {
|
||||||
margin-right: 1em;
|
margin-right: 1em;
|
||||||
}
|
}
|
||||||
|
@ -65,14 +66,20 @@
|
||||||
margin: 5px 6px 5px 0;
|
margin: 5px 6px 5px 0;
|
||||||
|
|
||||||
label {
|
label {
|
||||||
color: var(--faint);
|
color: var(--faint, $fallback--faint);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.theme-color-cl {
|
||||||
|
border: 0;
|
||||||
|
box-shadow: none;
|
||||||
|
background: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
.theme-color-cl,
|
.theme-color-cl,
|
||||||
.theme-color-in {
|
.theme-color-in {
|
||||||
margin-left: 4px;
|
margin-left: 4px;
|
||||||
border-radius: 2px;
|
border-radius: 2px;
|
||||||
border: 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.theme-color-in {
|
.theme-color-in {
|
||||||
|
|
|
@ -52,18 +52,21 @@
|
||||||
<script src="./timeline.js"></script>
|
<script src="./timeline.js"></script>
|
||||||
|
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
|
@import '../../_variables.scss';
|
||||||
|
|
||||||
.timeline {
|
.timeline {
|
||||||
.timeline-heading {
|
.timeline-heading {
|
||||||
position: relative;
|
position: relative;
|
||||||
display: flex;
|
display: flex;
|
||||||
}
|
}
|
||||||
|
|
||||||
.title {
|
.title {
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
text-overflow: ellipsis;
|
text-overflow: ellipsis;
|
||||||
max-width: 70%;
|
max-width: 70%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.loadmore-button {
|
.loadmore-button {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
right: 0.6em;
|
right: 0.6em;
|
||||||
|
@ -73,6 +76,7 @@
|
||||||
height: 1.8em;
|
height: 1.8em;
|
||||||
line-height: 100%;
|
line-height: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.loadmore-text {
|
.loadmore-text {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
right: 0.6em;
|
right: 0.6em;
|
||||||
|
@ -80,15 +84,19 @@
|
||||||
min-width: 6em;
|
min-width: 6em;
|
||||||
border-radius: 5px;
|
border-radius: 5px;
|
||||||
background-color: transparent;
|
background-color: transparent;
|
||||||
color: var(--faint);
|
color: $fallback--faint;
|
||||||
|
color: var(--faint, $fallback--faint);
|
||||||
font-family: sans-serif;
|
font-family: sans-serif;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
padding: 0 0.5em 0 0.5em;
|
padding: 0 0.5em 0 0.5em;
|
||||||
opacity: 0.8;
|
opacity: 0.8;
|
||||||
}
|
}
|
||||||
|
|
||||||
.error {
|
.error {
|
||||||
color: var(--lightFg);
|
color: $fallback--lightFg;
|
||||||
background-color: var(--cRed);
|
color: var(--lightFg, $fallback--lightFg);
|
||||||
|
background-color: $fallback--cRed;
|
||||||
|
background-color: var(--cRed, $fallback--cRed);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -99,7 +107,8 @@
|
||||||
border-width: 1px 0 0 0;
|
border-width: 1px 0 0 0;
|
||||||
border-style: solid;
|
border-style: solid;
|
||||||
border-radius: 0 0 10px 10px;
|
border-radius: 0 0 10px 10px;
|
||||||
border-color: var(--border);
|
border-color: $fallback--border;
|
||||||
|
border-color: var(--border, $fallback--border);
|
||||||
padding: 10px;
|
padding: 10px;
|
||||||
z-index: 1;
|
z-index: 1;
|
||||||
}
|
}
|
||||||
|
|
|
@ -21,6 +21,8 @@
|
||||||
<script src="./user_card.js"></script>
|
<script src="./user_card.js"></script>
|
||||||
|
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
|
@import '../../_variables.scss';
|
||||||
|
|
||||||
.name-and-screen-name {
|
.name-and-screen-name {
|
||||||
margin-left: 0.7em;
|
margin-left: 0.7em;
|
||||||
margin-top:0.0em;
|
margin-top:0.0em;
|
||||||
|
@ -34,10 +36,6 @@
|
||||||
float: right;
|
float: right;
|
||||||
}
|
}
|
||||||
|
|
||||||
.follows {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
.card {
|
.card {
|
||||||
display: flex;
|
display: flex;
|
||||||
flex: 1 0;
|
flex: 1 0;
|
||||||
|
@ -47,7 +45,8 @@
|
||||||
padding-left: 1em;
|
padding-left: 1em;
|
||||||
border-bottom: 1px solid;
|
border-bottom: 1px solid;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
border-bottom-color: var(--border);
|
border-bottom-color: $fallback--border;
|
||||||
|
border-bottom-color: var(--border, $fallback--border);
|
||||||
|
|
||||||
.avatar {
|
.avatar {
|
||||||
margin-top: 0.2em;
|
margin-top: 0.2em;
|
||||||
|
@ -69,6 +68,7 @@
|
||||||
.panel-heading {
|
.panel-heading {
|
||||||
background: transparent;
|
background: transparent;
|
||||||
}
|
}
|
||||||
|
|
||||||
p {
|
p {
|
||||||
margin-bottom: 0;
|
margin-bottom: 0;
|
||||||
}
|
}
|
||||||
|
|
|
@ -15,11 +15,6 @@ export default {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
bodyStyle () {
|
|
||||||
return {
|
|
||||||
background: `linear-gradient(to bottom, rgba(0, 0, 0, 0), ${this.$store.state.config.colors.bg} 80%)`
|
|
||||||
}
|
|
||||||
},
|
|
||||||
isOtherUser () {
|
isOtherUser () {
|
||||||
return this.user.id !== this.$store.state.users.currentUser.id
|
return this.user.id !== this.$store.state.users.currentUser.id
|
||||||
},
|
},
|
||||||
|
|
|
@ -70,7 +70,7 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body profile-panel-body" :style="bodyStyle">
|
<div class="panel-body profile-panel-body">
|
||||||
<div class="user-counts">
|
<div class="user-counts">
|
||||||
<div class="user-count">
|
<div class="user-count">
|
||||||
<a href="#" v-on:click.prevent="setProfileView('statuses')" v-if="switcher"><h5>{{ $t('user_card.statuses') }}</h5></a>
|
<a href="#" v-on:click.prevent="setProfileView('statuses')" v-if="switcher"><h5>{{ $t('user_card.statuses') }}</h5></a>
|
||||||
|
@ -112,6 +112,8 @@
|
||||||
top: -0em;
|
top: -0em;
|
||||||
padding-top: 4em;
|
padding-top: 4em;
|
||||||
word-wrap: break-word;
|
word-wrap: break-word;
|
||||||
|
background: linear-gradient(to bottom, rgba(0, 0, 0, 0), $fallback--bg 80%);
|
||||||
|
background: linear-gradient(to bottom, rgba(0, 0, 0, 0), var(--bg, $fallback--bg) 80%)
|
||||||
}
|
}
|
||||||
|
|
||||||
.user-info {
|
.user-info {
|
||||||
|
|
|
@ -16,14 +16,13 @@
|
||||||
<script src="./user_finder.js"></script>
|
<script src="./user_finder.js"></script>
|
||||||
|
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
|
@import '../../_variables.scss';
|
||||||
|
|
||||||
.user-finder-container {
|
.user-finder-container {
|
||||||
height: 21px;
|
height: 21px;
|
||||||
max-width: 100%;
|
max-width: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.user-finder-icon {
|
|
||||||
}
|
|
||||||
|
|
||||||
.user-finder-input {
|
.user-finder-input {
|
||||||
border-radius: 5px;
|
border-radius: 5px;
|
||||||
max-width: 80%;
|
max-width: 80%;
|
||||||
|
@ -35,6 +34,7 @@
|
||||||
margin: 0.35em;
|
margin: 0.35em;
|
||||||
border-radius: 5px;
|
border-radius: 5px;
|
||||||
padding: 0.25em;
|
padding: 0.25em;
|
||||||
color: var(--faint);
|
color: $fallback--faint;
|
||||||
|
color: var(--faint, $fallback--faint);
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
|
@ -47,8 +47,6 @@ const setStyle = (href, commit) => {
|
||||||
head.appendChild(styleEl)
|
head.appendChild(styleEl)
|
||||||
// const styleSheet = styleEl.sheet
|
// const styleSheet = styleEl.sheet
|
||||||
|
|
||||||
// styleSheet.insertRule(`a { color: ${colors['base08']}`, 'index-max')
|
|
||||||
// styleSheet.insertRule(`body { color: ${colors['base05']}`, 'index-max')
|
|
||||||
body.style.display = 'initial'
|
body.style.display = 'initial'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -82,20 +80,14 @@ const setColors = (col, commit) => {
|
||||||
colors['base07'] = rgb2hex(col.text.r - mod * 2, col.text.g - mod * 2, col.text.b - mod * 2)
|
colors['base07'] = rgb2hex(col.text.r - mod * 2, col.text.g - mod * 2, col.text.b - mod * 2)
|
||||||
colors.link = rgb2hex(col.link.r, col.link.g, col.link.b) // links
|
colors.link = rgb2hex(col.link.r, col.link.g, col.link.b) // links
|
||||||
colors.icon = rgb2hex((col.bg.r + col.text.r) / 2, (col.bg.g + col.text.g) / 2, (col.bg.b + col.text.b) / 2) // icons
|
colors.icon = rgb2hex((col.bg.r + col.text.r) / 2, (col.bg.g + col.text.g) / 2, (col.bg.b + col.text.b) / 2) // icons
|
||||||
colors.cBlue = 'blue'
|
colors.cBlue = '#0095ff'
|
||||||
colors.cRed = 'red'
|
colors.cRed = 'red'
|
||||||
colors.cGreen = 'green'
|
colors.cGreen = '#0fa00f'
|
||||||
colors.cYellow = 'yellow'
|
colors.cYellow = 'yellow'
|
||||||
colors.cOrange = 'orange'
|
colors.cOrange = 'orange'
|
||||||
|
|
||||||
const colorVars = Object.entries(colors).map(([k, v]) => {
|
styleSheet.toString()
|
||||||
return `--${k}: ${v}`
|
styleSheet.insertRule(`body { ${Object.entries(colors).map(([k, v]) => `--${k}: ${v}`).join(';')} }`, 'index-max')
|
||||||
})
|
|
||||||
console.log(colorVars)
|
|
||||||
|
|
||||||
styleSheet.insertRule(`body { ${colorVars.join(';')} }`, 'index-max')
|
|
||||||
// styleSheet.insertRule(`.base05-border { border-color: ${colors['base05']}`, 'index-max')
|
|
||||||
// styleSheet.insertRule(`.base03-border { border-color: ${colors['base03']}`, 'index-max')
|
|
||||||
body.style.display = 'initial'
|
body.style.display = 'initial'
|
||||||
|
|
||||||
commit('setOption', { name: 'colors', value: colors })
|
commit('setOption', { name: 'colors', value: colors })
|
||||||
|
|
Loading…
Reference in a new issue