Version 5.1 - All the GraphQL #32

Closed
timw4mail wants to merge 1160 commits from develop into master
4 changed files with 842 additions and 959 deletions
Showing only changes of commit 9c8df03c36 - Show all commits

View File

@ -1,32 +1,37 @@
template, :root {
[hidden="hidden"], --link-shadow: 1px 1px 1px #000;
.media[hidden] { --shadow: 1px 2px 1px rgba(0, 0, 0, 0.85);
display: none; --title-overlay: rgba(0, 0, 0, 0.45);
--text-color: #ffffff;
--normal-padding: 0.25em 0.125em;
--link-hover-color: #7d12db;
--edit-link-hover-color: #db7d12;
--edit-link-color: #12db18;
--radius: 5px;
} }
body { template, [hidden="hidden"], .media[hidden] {display:none}
margin: 0.5em;
} body {margin: 0.5em;}
button { button {
background: rgba(255,255,255,0.65); background:rgba(255,255,255,0.65);
margin: 0; margin: 0;
} }
table { table {
min-width: 85%; min-width:85%;
margin: 0 auto; margin: 0 auto;
} }
td { td {
padding: 1em; padding:1em;
padding: 1rem; padding:1rem;
} }
thead td, thead td, thead th {
thead th { padding:0.5em;
padding: 0.5em; padding:0.5rem;
padding: 0.5rem;
} }
input[type=number] { input[type=number] {
@ -37,9 +42,8 @@ tbody > tr:nth-child(odd) {
background: #ddd; background: #ddd;
} }
a:hover, a:hover, a:active {
a:active { color: var(--link-hover-color)
color: #7d12db;
} }
/* ----------------------------------------------------------------------------- /* -----------------------------------------------------------------------------
@ -47,136 +51,66 @@ a:active {
------------------------------------------------------------------------------*/ ------------------------------------------------------------------------------*/
.bracketed { .bracketed {
color: #12db18; color: var(--edit-link-color);
}
.bracketed, h1 a {
text-shadow: var(--link-shadow);
}
.bracketed:before {content: '[\00a0'}
.bracketed:after {content: '\00a0]'}
.bracketed:hover, .bracketed:active {
color: var(--edit-link-hover-color)
} }
.bracketed, .grow-1 {-webkit-box-flex: 1;flex-grow: 1}
h1 a { .flex-wrap {flex-wrap: wrap}
text-shadow: 1px 1px 1px #000; .flex-no-wrap {flex-wrap: nowrap}
} .flex-align-end {-webkit-box-align: end;align-items: flex-end}
.flex-align-space-around {align-content: space-around}
.bracketed:before { .flex-justify-space-around {justify-content: space-around}
content: '[\00a0'; .flex-self-center {align-self:center}
} .flex {display: -webkit-box;display: flex}
.bracketed:after {
content: '\00a0]';
}
.bracketed:hover,
.bracketed:active {
color: #db7d12;
}
.grow-1 {
-webkit-box-flex: 1;
-webkit-flex-grow: 1;
-ms-flex-positive: 1;
flex-grow: 1;
}
.flex-wrap {
-webkit-flex-wrap: wrap;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
}
.flex-no-wrap {
-webkit-flex-wrap: nowrap;
-ms-flex-wrap: nowrap;
flex-wrap: nowrap;
}
.flex-align-end {
-webkit-box-align: end;
-webkit-align-items: flex-end;
-ms-flex-align: end;
align-items: flex-end;
}
.flex-align-space-around {
-webkit-align-content: space-around;
-ms-flex-line-pack: distribute;
align-content: space-around;
}
.flex-justify-space-around {
-webkit-justify-content: space-around;
-ms-flex-pack: distribute;
justify-content: space-around;
}
.flex-self-center {
-webkit-align-self: center;
-ms-flex-item-align: center;
align-self: center;
}
.flex {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
}
.small-font { .small-font {
font-size: 1.6rem; font-size:1.6rem;
} }
.justify { .justify {text-align:justify}
text-align: justify; .align_center {text-align:center}
} .align_left {text-align:left}
.align_right {text-align:right}
.align_center { .valign_top {vertical-align:top}
text-align: center;
}
.align_left { .no_border {border:none}
text-align: left;
}
.align_right {
text-align: right;
}
.valign_top {
vertical-align: top;
}
.no_border {
border: none;
}
.media-wrap { .media-wrap {
text-align: center; text-align:center;
margin: 0 auto; margin:0 auto;
} }
.danger { .danger {
background-color: #ff4136; background-color: #ff4136;
border-color: #924949; border-color: #924949;
color: #fff; color:#fff;
} }
.danger:hover, .danger:hover, .danger:active {
.danger:active {
background-color: #924949; background-color: #924949;
border-color: #ff4136; border-color: #ff4136;
color: #fff; color:#fff;
} }
.user-btn { .user-btn {
border-color: #12db18; border-color: var(--edit-link-color);
color: #12db18; color: var(--edit-link-color);
text-shadow: 1px 1px 1px #000; text-shadow: var(--link-shadow);
padding: 0 0.5em; padding:0 0.5em;
padding: 0 0.5rem; padding:0 0.5rem;
} }
.user-btn:hover, .user-btn:active {
.user-btn:hover, border-color: var(--edit-link-hover-color);
.user-btn:active { background-color: var(--edit-link-hover-color);
border-color: #db7d12;
background-color: #db7d12;
} }
/* ----------------------------------------------------------------------------- /* -----------------------------------------------------------------------------
@ -230,7 +164,6 @@ h1 a {
-webkit-transform: rotateX(35deg) rotateY(-45deg) rotateZ(0deg); -webkit-transform: rotateX(35deg) rotateY(-45deg) rotateZ(0deg);
transform: rotateX(35deg) rotateY(-45deg) rotateZ(0deg); transform: rotateX(35deg) rotateY(-45deg) rotateZ(0deg);
} }
100% { 100% {
-webkit-transform: rotateX(35deg) rotateY(-45deg) rotateZ(360deg); -webkit-transform: rotateX(35deg) rotateY(-45deg) rotateZ(360deg);
transform: rotateX(35deg) rotateY(-45deg) rotateZ(360deg); transform: rotateX(35deg) rotateY(-45deg) rotateZ(360deg);
@ -242,7 +175,6 @@ h1 a {
-webkit-transform: rotateX(35deg) rotateY(-45deg) rotateZ(0deg); -webkit-transform: rotateX(35deg) rotateY(-45deg) rotateZ(0deg);
transform: rotateX(35deg) rotateY(-45deg) rotateZ(0deg); transform: rotateX(35deg) rotateY(-45deg) rotateZ(0deg);
} }
100% { 100% {
-webkit-transform: rotateX(35deg) rotateY(-45deg) rotateZ(360deg); -webkit-transform: rotateX(35deg) rotateY(-45deg) rotateZ(360deg);
transform: rotateX(35deg) rotateY(-45deg) rotateZ(360deg); transform: rotateX(35deg) rotateY(-45deg) rotateZ(360deg);
@ -254,7 +186,6 @@ h1 a {
-webkit-transform: rotateX(50deg) rotateY(10deg) rotateZ(0deg); -webkit-transform: rotateX(50deg) rotateY(10deg) rotateZ(0deg);
transform: rotateX(50deg) rotateY(10deg) rotateZ(0deg); transform: rotateX(50deg) rotateY(10deg) rotateZ(0deg);
} }
100% { 100% {
-webkit-transform: rotateX(50deg) rotateY(10deg) rotateZ(360deg); -webkit-transform: rotateX(50deg) rotateY(10deg) rotateZ(360deg);
transform: rotateX(50deg) rotateY(10deg) rotateZ(360deg); transform: rotateX(50deg) rotateY(10deg) rotateZ(360deg);
@ -266,7 +197,6 @@ h1 a {
-webkit-transform: rotateX(50deg) rotateY(10deg) rotateZ(0deg); -webkit-transform: rotateX(50deg) rotateY(10deg) rotateZ(0deg);
transform: rotateX(50deg) rotateY(10deg) rotateZ(0deg); transform: rotateX(50deg) rotateY(10deg) rotateZ(0deg);
} }
100% { 100% {
-webkit-transform: rotateX(50deg) rotateY(10deg) rotateZ(360deg); -webkit-transform: rotateX(50deg) rotateY(10deg) rotateZ(360deg);
transform: rotateX(50deg) rotateY(10deg) rotateZ(360deg); transform: rotateX(50deg) rotateY(10deg) rotateZ(360deg);
@ -278,7 +208,6 @@ h1 a {
-webkit-transform: rotateX(35deg) rotateY(55deg) rotateZ(0deg); -webkit-transform: rotateX(35deg) rotateY(55deg) rotateZ(0deg);
transform: rotateX(35deg) rotateY(55deg) rotateZ(0deg); transform: rotateX(35deg) rotateY(55deg) rotateZ(0deg);
} }
100% { 100% {
-webkit-transform: rotateX(35deg) rotateY(55deg) rotateZ(360deg); -webkit-transform: rotateX(35deg) rotateY(55deg) rotateZ(360deg);
transform: rotateX(35deg) rotateY(55deg) rotateZ(360deg); transform: rotateX(35deg) rotateY(55deg) rotateZ(360deg);
@ -290,7 +219,6 @@ h1 a {
-webkit-transform: rotateX(35deg) rotateY(55deg) rotateZ(0deg); -webkit-transform: rotateX(35deg) rotateY(55deg) rotateZ(0deg);
transform: rotateX(35deg) rotateY(55deg) rotateZ(0deg); transform: rotateX(35deg) rotateY(55deg) rotateZ(0deg);
} }
100% { 100% {
-webkit-transform: rotateX(35deg) rotateY(55deg) rotateZ(360deg); -webkit-transform: rotateX(35deg) rotateY(55deg) rotateZ(360deg);
transform: rotateX(35deg) rotateY(55deg) rotateZ(360deg); transform: rotateX(35deg) rotateY(55deg) rotateZ(360deg);
@ -300,76 +228,65 @@ h1 a {
/* ----------------------------------------------------------------------------- /* -----------------------------------------------------------------------------
Table sorting and form styles Table sorting and form styles
------------------------------------------------------------------------------*/ ------------------------------------------------------------------------------*/
.sorting, .sorting,
.sorting_asc, .sorting_asc,
.sorting_desc { .sorting_desc {
vertical-align: text-bottom; vertical-align:text-bottom;
} }
.sorting::before { .sorting::before {
content: " ↕\00a0"; content: " ↕\00a0";
} }
.sorting_asc::before { .sorting_asc::before {
content: " ↑\00a0"; content: " ↑\00a0";
} }
.sorting_desc::before { .sorting_desc::before {
content: " ↓\00a0"; content: " ↓\00a0";
} }
.form { .form { width:100%; }
width: 100%;
}
.form thead th, .form thead th, .form thead tr {
.form thead tr {
background: inherit; background: inherit;
border: 0; border:0;
} }
.form tr > td:nth-child(odd) { .form tr > td:nth-child(odd) {
text-align: right; text-align:right;
min-width: 25px; min-width:25px;
max-width: 30%; max-width:30%;
} }
.form tr > td:nth-child(even) { .form tr > td:nth-child(even) {
text-align: left; text-align:left;
width: 70%; width:70%;
} }
.invisible tbody > tr:nth-child(odd) { .invisible tbody > tr:nth-child(odd) {
background: inherit; background: inherit;
} }
.invisible tr, .invisible td, .invisible th {
.invisible tr, border:0;
.invisible td,
.invisible th {
border: 0;
} }
/* ----------------------------------------------------------------------------- /* -----------------------------------------------------------------------------
Message boxes Message boxes
------------------------------------------------------------------------------*/ ------------------------------------------------------------------------------*/
.message { .message{
position: relative; position:relative;
margin: 0.5em auto; margin:0.5em auto;
padding: 0.5em; padding:0.5em;
width: 95%; width:95%;
} }
.message .close { .message .close{
width: 1em; width:1em;
height: 1em; height:1em;
position: absolute; position:absolute;
right: 0.5em; right:0.5em;
top: 0.5em; top:0.5em;
text-align: center; text-align:center;
vertical-align: middle; vertical-align:middle;
line-height: 1em; line-height:1em;
} }
.message:hover .close:after { .message:hover .close:after {
@ -377,124 +294,124 @@ h1 a {
} }
.message:hover { .message:hover {
cursor: pointer; cursor:pointer;
} }
.message .icon { .message .icon{
left: 0.5em; left:0.5em;
top: 0.5em; top:0.5em;
margin-right: 1em; margin-right:1em;
} }
.message.error { .message.error{
border: 1px solid #924949; border:1px solid #924949;
background: #f3e6e6; background: #f3e6e6;
} }
.message.error .icon::after { .message.error .icon::after {
content: '✘'; content: '✘';
} }
.message.success { .message.success{
border: 1px solid #1f8454; border:1px solid #1f8454;
background: #70dda9; background: #70dda9;
} }
.message.success .icon::after {
content: '✔'
}
.message.success .icon::after { .message.info{
content: '✔'; border:1px solid #bfbe3a;
}
.message.info {
border: 1px solid #bfbe3a;
background: #FFFFCC; background: #FFFFCC;
} }
.message.info .icon::after { .message.info .icon::after {
content: '⚠'; content: '⚠';
} }
/* ----------------------------------------------------------------------------- /* -----------------------------------------------------------------------------
Base list styles Base list styles
------------------------------------------------------------------------------*/ ------------------------------------------------------------------------------*/
.media { .media {
position: relative; position:relative;
vertical-align: top; vertical-align:top;
display: inline-block; display:inline-block;
text-align: center; text-align:center;
width: 220px; width:220px;
height: 319px; height:311px;
margin: 0.25em 0.125em; margin: var(--normal-padding);
} }
.media .edit_buttons > button { .media .edit_buttons > button {
margin: 0.5em auto; margin:0.5em auto;
} }
.name, .name,
.media_metadata > div, .media_metadata > div,
.medium_metadata > div, .medium_metadata > div,
.row { .row {
text-shadow: 1px 2px 1px rgba(0, 0, 0, 0.85); text-shadow: var(--shadow);
background: rgba(0, 0, 0, 0.45); background: var(--title-overlay);
color: #ffffff; color: var(--text-color);
padding: 0.25em 0.125em; padding: var(--normal-padding);
text-align: right; text-align:right;
} }
.media_type, .media_type, .age_rating {
.age_rating { text-align:left;
text-align: left; }
}
.media > .media_metadata { .media > .media_metadata {
position: absolute; position:absolute;
bottom:0;
right:0;
}
.media > .medium_metadata {
position:absolute;
bottom: 0; bottom: 0;
right: 0; left:0;
} }
.media > .medium_metadata { .media > .name {
position: absolute; position:absolute;
bottom: 0;
left: 0;
}
.media > .name {
position: absolute;
top: 0; top: 0;
} }
.media:hover > .name, .media:hover > .name,
.media:hover > .media_metadata > div, .media:hover > .media_metadata > div,
.media:hover > .medium_metadata > div, .media:hover > .medium_metadata > div,
.media:hover > .table .row { .media:hover > .table .row
{
-webkit-transition: .25s ease; -webkit-transition: .25s ease;
transition: .25s ease; transition: .25s ease;
background: rgba(0,0,0,0.75); background:rgba(0,0,0,0.75);
} }
.media:hover > button[hidden], .media:hover > button[hidden],
.media:hover > .edit_buttons[hidden] { .media:hover > .edit_buttons[hidden]
{
-webkit-transition: .25s ease; -webkit-transition: .25s ease;
transition: .25s ease; transition: .25s ease;
display: block; display:block;
} }
.media > .name > a {
background:none;
color:#fff;
text-shadow: var(--shadow);
}
.media > .name > a {
background: none;
color: #fff;
text-shadow: 1px 2px 1px rgba(0, 0, 0, 0.85);
}
/* ----------------------------------------------------------------------------- /* -----------------------------------------------------------------------------
Anime-list-specific styles Anime-list-specific styles
------------------------------------------------------------------------------*/ ------------------------------------------------------------------------------*/
.anime .name, .manga .name {
.anime .name, text-align:center;
.manga .name { width:100%;
text-align: center; padding:0.5em 0.25em;
width: 100%;
padding: 0.5em 0.25em;
} }
.anime .media_type, .anime .media_type,
@ -505,53 +422,42 @@ h1 a {
.anime .edit, .anime .edit,
.anime .delete { .anime .delete {
background: none; background: none;
text-align: center; text-align:center;
} }
.anime .table,
.manga .table { .anime .table, .manga .table {
position: absolute; position:absolute;
bottom: 0; bottom:0;
left: 0; left:0;
width: 100%; width:100%;
} }
.anime .row, .anime .row, .manga .row {
.manga .row { width:100%;
width: 100%; background: var(--title-overlay);
background: rgba(0, 0, 0, 0.45);
display: -webkit-box; display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex; display: flex;
-webkit-align-content: space-around;
-ms-flex-line-pack: distribute;
align-content: space-around; align-content: space-around;
-webkit-justify-content: space-around;
-ms-flex-pack: distribute;
justify-content: space-around; justify-content: space-around;
text-align: center; text-align:center;
padding: 0 inherit; padding:0 inherit;
} }
.anime .row > span, .anime .row > span, .manga .row > span {
.manga .row > span { text-align:left;
text-align: left;
} }
.anime .row > div, .anime .row > div, .manga .row > div {
.manga .row > div { font-size:0.8em;
font-size: 0.8em; display:flex-item;
display: flex-item; align-self:center;
-webkit-align-self: center; text-align:center;
-ms-flex-item-align: center; vertical-align:middle;
align-self: center;
text-align: center;
vertical-align: middle;
} }
.anime .media > button.plus_one { .anime .media > button.plus_one {
position: absolute; position:absolute;
top: 138px; top: 138px;
top: calc(50% - 21.5px); top: calc(50% - 21.5px);
left: 44px; left: 44px;
@ -561,32 +467,30 @@ h1 a {
/* ----------------------------------------------------------------------------- /* -----------------------------------------------------------------------------
Manga-list-specific styles Manga-list-specific styles
------------------------------------------------------------------------------*/ ------------------------------------------------------------------------------*/
.manga .row { .manga .row {
padding: 1px; padding:1px;
} }
.manga .media { .manga .media {
border: 1px solid #ddd; border:1px solid #ddd;
width: 200px; height:310px;
height: 290px; margin:0.25em;
margin: 0.25em;
} }
.manga .media > .edit_buttons { .manga .media > .edit_buttons {
position: absolute; position:absolute;
top: 86px; top: 86px;
top: calc(50% - 58.5px); top: calc(50% - 58.5px);
left: 5px; left: 5px;
left: calc(50% - 95px); left: calc(50% - 95px);
} }
/* ----------------------------------------------------------------------------- /* -----------------------------------------------------------------------------
Search page styles Search page styles
------------------------------------------------------------------------------*/ ------------------------------------------------------------------------------*/
.media.search > .name { .media.search > .name {
background-color: #555; background-color:#555;
background-color: rgba(000,000,000,0.35); background-color: rgba(000,000,000,0.35);
background-size: cover; background-size: cover;
background-size: contain; background-size: contain;
@ -594,51 +498,48 @@ h1 a {
} }
.big-check { .big-check {
display: none; display:none;
} }
.big-check:checked + label { .big-check:checked + label {
-webkit-transition: .25s ease; -webkit-transition: .25s ease;
transition: .25s ease; transition: .25s ease;
background: rgba(0,0,0,0.75); background:rgba(0,0,0,0.75);
} }
.big-check:checked + label:after { .big-check:checked + label:after {
content: '✓'; content: '✓';
font-size: 15em; font-size: 15em;
font-size: 15rem; font-size: 15rem;
text-align: center; text-align:center;
color: greenyellow; color: greenyellow;
position: absolute; position:absolute;
top: 5px; top:5px;
left: 0; left:0;
height: 100%; height:100%;
width: 100%; width:100%;
} }
#series_list article.media { #series_list article.media {
position: relative; position:relative;
} }
#series_list .name, #series_list .name label {
#series_list .name, position:absolute;
#series_list .name label { display:block;
position: absolute; top:0;
display: block; height:100%;
top: 0; width:100%;
height: 100%; vertical-align:middle;
width: 100%;
vertical-align: middle;
} }
/* ---------------------------------------------------------------------------- /* ----------------------------------------------------------------------------
Details page styles Details page styles
-----------------------------------------------------------------------------*/ -----------------------------------------------------------------------------*/
.details { .details {
margin: 1.5rem auto 0 auto; margin: 1.5rem auto 0 auto;
max-width: 93rem; max-width:93rem;
padding: 1rem; padding:1rem;
font-size: inherit; font-size:inherit;
} }
.details .cover { .details .cover {
@ -655,25 +556,23 @@ h1 a {
} }
.details table { .details table {
max-width: 300px; max-width:300px;
}
.details td {
padding: 0 1.5rem;
} }
.details td {
padding:0 1.5rem;
}
.details p { .details p {
text-align: justify; text-align:justify;
} }
.details td:nth-child(odd) { .details td:nth-child(odd) {
width: 1%; width:1%;
white-space: nowrap; white-space:nowrap;
text-align: right; text-align:right;
} }
.details td:nth-child(even) { .details td:nth-child(even) {
text-align: left; text-align:left;
} }
/* ---------------------------------------------------------------------------- /* ----------------------------------------------------------------------------
@ -682,16 +581,16 @@ h1 a {
@media screen and (max-width: 40em) { @media screen and (max-width: 40em) {
nav a { nav a {
line-height: 4em; line-height:4em;
line-height: 4rem; line-height:4rem;
} }
.media { .media {
margin: 2px 0; margin:2px 0;
} }
main { main {
padding: 0 0,5em 0.5em; padding:0 0,5em 0.5em;
padding: 0 0.5rem 0.5rem; padding:0 0.5rem 0.5rem;
} }
} }

View File

@ -296,7 +296,7 @@ a:hover, a:active {
display:inline-block; display:inline-block;
text-align:center; text-align:center;
width:220px; width:220px;
height:319px; height:311px;
margin: var(--normal-padding); margin: var(--normal-padding);
} }
@ -427,8 +427,7 @@ a:hover, a:active {
.manga .media { .manga .media {
border:1px solid #ddd; border:1px solid #ddd;
width:200px; height:310px;
height:290px;
margin:0.25em; margin:0.25em;
} }

File diff suppressed because it is too large Load Diff

View File

@ -1,11 +1,17 @@
{ {
"scripts": { "scripts": {
"build": "npm-run-all --parallel build:base build:marx",
"build:base": "postcss --use autoprefixer --autoprefixer.browsers \"> 5%\" -o css/base.css css/base.myth.css",
"build:marx": "postcss --use autoprefixer --autoprefixer.browsers \"> 5%\" -o css/marx.css css/marx.myth.css",
"watch": "npm-run-all --parallel watch:base watch:marx", "watch": "npm-run-all --parallel watch:base watch:marx",
"watch:base": "myth -w css/base.myth.css css/base.css", "watch:base": "postcss --use autoprefixer --autoprefixer.browsers \"> 5%\" -w -o css/base.css css/base.myth.css",
"watch:marx": "myth -w css/marx.myth.css css/marx.css" "watch:marx": "postcss --use autoprefixer --autoprefixer.browsers \"> 5%\" -w -o css/marx.css css/marx.myth.css"
}, },
"devDependencies": { "devDependencies": {
"myth": "^1.5.0", "autoprefixer": "^6.6.1",
"npm-run-all": "^1.7.0" "npm-run-all": "^4.0.0",
"postcss-cachify": "^1.3.1",
"postcss-cli": "^2.6.0",
"postcss-cssnext": "^2.9.0"
} }
} }