Moved authors info to AUTHORS file.

Updated Git urls in package.json file.

Added .stylelintrc.

Updated all CSS files to respect current Stylelint guidelines.

Updated dependency: knex.js.

Fixed notice message in no-js version of album public pages.

Bumped v1 version string.
This commit is contained in:
Bobby Wibowo 2019-09-12 14:44:31 +07:00
parent 2251f7b154
commit 10a464bc73
No known key found for this signature in database
GPG Key ID: 51C3A1E1E22D26CF
15 changed files with 1593 additions and 349 deletions

View File

@ -1,5 +0,0 @@
{
"default": true,
"MD013": false,
"MD040": false
}

7
.stylelintrc Normal file
View File

@ -0,0 +1,7 @@
{
"extends": "stylelint-config-standard",
"rules": {
"declaration-block-trailing-semicolon": "never",
"indentation": 2
}
}

4
AUTHORS Normal file
View File

@ -0,0 +1,4 @@
# Author
Bobby Wibowo <bobby@fiery.me>
# Original author
Pitu

View File

@ -2,6 +2,9 @@ const logger = require('./../logger')
const perms = require('./../controllers/permissionController') const perms = require('./../controllers/permissionController')
const randomstring = require('randomstring') const randomstring = require('randomstring')
// TODO: Auto-detect missing tables/columns here
// That way we will no longer need the migration script
const init = function (db) { const init = function (db) {
// Create the tables we need to store galleries and files // Create the tables we need to store galleries and files
db.schema.hasTable('albums').then(exists => { db.schema.hasTable('albums').then(exists => {

View File

@ -2,13 +2,12 @@
"name": "lolisafe", "name": "lolisafe",
"version": "3.0.0", "version": "3.0.0",
"description": "Blazing fast file uploader and awesome bunker written in node! 🚀", "description": "Blazing fast file uploader and awesome bunker written in node! 🚀",
"author": "Pitu",
"repository": { "repository": {
"type": "git", "type": "git",
"url": "https://github.com/WeebDev/lolisafe" "url": "https://github.com/BobbyWibowo/lolisafe"
}, },
"bugs": { "bugs": {
"url": "https://github.com/WeebDev/lolisafe/issues" "url": "https://github.com/BobbyWibowo/lolisafe/issues"
}, },
"engines": { "engines": {
"node": ">=8.0.0" "node": ">=8.0.0"
@ -19,6 +18,7 @@
"startdev": "env NODE_ENV=development node ./lolisafe.js", "startdev": "env NODE_ENV=development node ./lolisafe.js",
"pm2": "pm2 start --name safe ./lolisafe.js", "pm2": "pm2 start --name safe ./lolisafe.js",
"cf-purge": "node ./scripts/cf-purge.js", "cf-purge": "node ./scripts/cf-purge.js",
"clean-up": "node ./scripts/clean-up.js",
"delete-expired": "node ./scripts/delete-expired.js", "delete-expired": "node ./scripts/delete-expired.js",
"thumbs": "node ./scripts/thumbs.js", "thumbs": "node ./scripts/thumbs.js",
"pull": "git stash; git pull; yarn install --production; git stash pop; echo OK." "pull": "git stash; git pull; yarn install --production; git stash pop; echo OK."
@ -32,7 +32,7 @@
"fluent-ffmpeg": "^2.1.2", "fluent-ffmpeg": "^2.1.2",
"helmet": "^3.21.0", "helmet": "^3.21.0",
"jszip": "^3.2.2", "jszip": "^3.2.2",
"knex": "^0.19.3", "knex": "^0.19.4",
"multer": "^1.4.2", "multer": "^1.4.2",
"node-fetch": "^2.6.0", "node-fetch": "^2.6.0",
"nunjucks": "^3.2.0", "nunjucks": "^3.2.0",
@ -48,6 +48,8 @@
"eslint-plugin-import": "^2.18.2", "eslint-plugin-import": "^2.18.2",
"eslint-plugin-node": "^10.0.0", "eslint-plugin-node": "^10.0.0",
"eslint-plugin-promise": "^4.2.1", "eslint-plugin-promise": "^4.2.1",
"eslint-plugin-standard": "^4.0.1" "eslint-plugin-standard": "^4.0.1",
"stylelint": "^10.1.0",
"stylelint-config-standard": "^18.3.0"
} }
} }

View File

@ -1,9 +1,9 @@
.section { .section {
background: none; background: none
} }
@media screen and (max-width: 768px) { @media screen and (max-width: 768px) {
.description { .description {
text-align: center; text-align: center
} }
} }

View File

@ -1,20 +1,20 @@
input { input {
background: rgba(0, 0, 0, 0); background: rgba(0, 0, 0, 0)
} }
input, input,
a { a {
border-left: 0px; border-left: 0;
border-top: 0px; border-top: 0;
border-right: 0px; border-right: 0;
border-radius: 0px; border-radius: 0;
-webkit-box-shadow: 0 0 0; -webkit-box-shadow: 0 0 0;
box-shadow: 0 0 0; box-shadow: 0 0 0
} }
.select-wrapper { .select-wrapper {
text-align: center; text-align: center;
margin-bottom: 10px; margin-bottom: 10px
} }
#login .input { #login .input {
@ -23,9 +23,9 @@ a {
border-left: 0; border-left: 0;
border-radius: 0; border-radius: 0;
padding-right: calc(0.75em + 1px); padding-right: calc(0.75em + 1px);
padding-left: calc(0.75em + 1px); padding-left: calc(0.75em + 1px)
} }
#login .control .button { #login .control .button {
border-radius: 0; border-radius: 0
} }

View File

@ -1,15 +1,15 @@
body { body {
-webkit-animation: none; -webkit-animation: none;
animation: none; animation: none
} }
#dashboard { #dashboard {
-webkit-animation: fadeInOpacity .5s; -webkit-animation: fadeInOpacity 0.5s;
animation: fadeInOpacity .5s; animation: fadeInOpacity 0.5s
} }
.section { .section {
background: none; background: none
} }
.menu-list a { .menu-list a {
@ -18,49 +18,49 @@ body {
-webkit-user-select: none; -webkit-user-select: none;
-moz-user-select: none; -moz-user-select: none;
-ms-user-select: none; -ms-user-select: none;
user-select: none; user-select: none
} }
.menu-list a:hover { .menu-list a:hover {
color: #60a8dc; color: #60a8dc;
background-color: #4d4d4d; background-color: #4d4d4d
} }
.menu-list a.is-active { .menu-list a.is-active {
color: #eff0f1; color: #eff0f1;
background-color: #3794d2; background-color: #3794d2
} }
.menu-list a[disabled] { .menu-list a[disabled] {
color: #7a7a7a; color: #7a7a7a;
cursor: not-allowed; cursor: not-allowed
} }
.menu-list a[disabled]:hover { .menu-list a[disabled]:hover {
background: none; background: none
} }
ul#albumsContainer { ul#albumsContainer {
border-left: 0; border-left: 0;
padding-left: 0; padding-left: 0
} }
ul#albumsContainer li { ul#albumsContainer li {
border-left: 1px solid #898b8d; border-left: 1px solid #898b8d;
padding-left: .75em; padding-left: 0.75em;
-webkit-animation: fadeInOpacity .5s; -webkit-animation: fadeInOpacity 0.5s;
animation: fadeInOpacity .5s; animation: fadeInOpacity 0.5s
} }
#page.fade-in { #page.fade-in {
-webkit-animation: fadeInOpacity .5s; -webkit-animation: fadeInOpacity 0.5s;
animation: fadeInOpacity .5s animation: fadeInOpacity 0.5s
} }
.pagination a:not([disabled]) { .pagination a:not([disabled]) {
color: #eff0f1; color: #eff0f1;
border-color: #4d4d4d; border-color: #4d4d4d;
background-color: #31363b; background-color: #31363b
} }
a.pagination-link:not(.is-current):hover, a.pagination-link:not(.is-current):hover,
@ -68,96 +68,96 @@ a.pagination-next:not([disabled]):hover,
a.pagination-previous:not([disabled]):hover { a.pagination-previous:not([disabled]):hover {
color: #eff0f1; color: #eff0f1;
border-color: #60a8dc; border-color: #60a8dc;
background-color: #31363b; background-color: #31363b
} }
a.pagination-link.is-current { a.pagination-link.is-current {
background-color: #3794d2; background-color: #3794d2;
border-color: #3794d2; border-color: #3794d2
} }
a.pagination-link.is-current:hover { a.pagination-link.is-current:hover {
border-color: #60a8dc; border-color: #60a8dc
} }
li[data-action="page-ellipsis"] { li[data-action="page-ellipsis"] {
cursor: pointer; cursor: pointer
} }
.label { .label {
color: #bdc3c7; color: #bdc3c7
} }
.menu-list li ul { .menu-list li ul {
border-left-color: #898b8d; border-left-color: #898b8d
} }
.image-container .checkbox { .image-container .checkbox {
position: absolute; position: absolute;
top: .75rem; top: 0.75rem;
left: .75rem; left: 0.75rem
} }
.no-touch .image-container .checkbox { .no-touch .image-container .checkbox {
opacity: .5; opacity: 0.5
} }
.no-touch .image-container .controls, .no-touch .image-container .controls,
.no-touch .image-container .details { .no-touch .image-container .details {
opacity: 0; opacity: 0
} }
.no-touch .image-container:hover .checkbox, .no-touch .image-container:hover .checkbox,
.no-touch .image-container:hover .controls, .no-touch .image-container:hover .controls,
.no-touch .image-container:hover .details { .no-touch .image-container:hover .details {
opacity: 1; opacity: 1
} }
#page { #page {
/* fix overflow issue with flex */ /* fix overflow issue with flex */
min-width: 0; min-width: 0
} }
.table-container { .table-container {
overflow-x: auto; overflow-x: auto
} }
.table { .table {
color: #bdc3c7; color: #bdc3c7;
background-color: #31363b; background-color: #31363b;
font-size: .75rem; font-size: 0.75rem
} }
.table tr:hover, .table tr:hover,
.table.is-striped tbody tr:nth-child(2n) { .table.is-striped tbody tr:nth-child(2n) {
background: none; background: none
} }
.table.is-striped tbody tr:hover, .table.is-striped tbody tr:hover,
.table.is-striped tbody tr:nth-child(2n):hover, .table.is-striped tbody tr:nth-child(2n):hover,
.tag { .tag {
background-color: #4d4d4d; background-color: #4d4d4d
}
.table thead td,
.table thead th {
color: #eff0f1;
background-color: #ff3860;
} }
.table td, .table td,
.table th { .table th {
border: 0; border: 0;
white-space: nowrap; white-space: nowrap
} }
.table th { .table th {
color: #eff0f1; color: #eff0f1;
height: 2.25em; height: 2.25em
}
.table thead td,
.table thead th {
color: #eff0f1;
background-color: #ff3860
} }
.table .cell-indent { .table .cell-indent {
padding-left: 2.25em; padding-left: 2.25em
} }
.is-linethrough { .is-linethrough {

View File

@ -17,43 +17,43 @@
-webkit-animation-timing-function: cubic-bezier(0, 0.71, 0.29, 1); -webkit-animation-timing-function: cubic-bezier(0, 0.71, 0.29, 1);
animation-timing-function: cubic-bezier(0, 0.71, 0.29, 1); animation-timing-function: cubic-bezier(0, 0.71, 0.29, 1);
-webkit-box-shadow: 0 20px 60px rgba(10, 10, 10, 0.05), 0 5px 10px rgba(10, 10, 10, 0.1), 0 1px 1px rgba(10, 10, 10, 0.2); -webkit-box-shadow: 0 20px 60px rgba(10, 10, 10, 0.05), 0 5px 10px rgba(10, 10, 10, 0.1), 0 1px 1px rgba(10, 10, 10, 0.2);
box-shadow: 0 20px 60px rgba(10, 10, 10, 0.05), 0 5px 10px rgba(10, 10, 10, 0.1), 0 1px 1px rgba(10, 10, 10, 0.2); box-shadow: 0 20px 60px rgba(10, 10, 10, 0.05), 0 5px 10px rgba(10, 10, 10, 0.1), 0 1px 1px rgba(10, 10, 10, 0.2)
} }
#b img.logo { #b img.logo {
max-height: 200px; max-height: 200px
} }
#dropzone * { #dropzone * {
pointer-events: none; pointer-events: none
} }
#tokenContainer, #tokenContainer,
#panel { #panel {
display: none; display: none
} }
#maxSize { #maxSize {
font-size: 1rem; font-size: 1rem
} }
.dz-preview .dz-details { .dz-preview .dz-details {
display: -webkit-box; display: -webkit-box;
display: -ms-flexbox; display: -ms-flexbox;
display: flex; display: flex
} }
.dz-preview .dz-details .dz-size, .dz-preview .dz-details .dz-size,
.dz-preview .dz-details .dz-filename { .dz-preview .dz-details .dz-filename {
-webkit-box-flex: 1; -webkit-box-flex: 1;
-ms-flex: 1; -ms-flex: 1;
flex: 1; flex: 1
} }
.dz-preview img, .dz-preview img,
.dz-preview .dz-success-mark, .dz-preview .dz-success-mark,
.dz-preview .dz-error-mark { .dz-preview .dz-error-mark {
display: none; display: none
} }
@-webkit-keyframes floatUp { @-webkit-keyframes floatUp {
@ -62,25 +62,25 @@
-webkit-box-shadow: 0 0 0 rgba(10, 10, 10, 0), 0 0 0 rgba(10, 10, 10, 0), 0 0 0 rgba(10, 10, 10, 0); -webkit-box-shadow: 0 0 0 rgba(10, 10, 10, 0), 0 0 0 rgba(10, 10, 10, 0), 0 0 0 rgba(10, 10, 10, 0);
box-shadow: 0 0 0 rgba(10, 10, 10, 0), 0 0 0 rgba(10, 10, 10, 0), 0 0 0 rgba(10, 10, 10, 0); box-shadow: 0 0 0 rgba(10, 10, 10, 0), 0 0 0 rgba(10, 10, 10, 0), 0 0 0 rgba(10, 10, 10, 0);
-webkit-transform: scale(0.86); -webkit-transform: scale(0.86);
transform: scale(0.86); transform: scale(0.86)
} }
25% { 25% {
opacity: 100; opacity: 100
} }
67% { 67% {
-webkit-box-shadow: 0 0 0 rgba(10, 10, 10, 0), 0 5px 10px rgba(10, 10, 10, 0.1), 0 1px 1px rgba(10, 10, 10, 0.2); -webkit-box-shadow: 0 0 0 rgba(10, 10, 10, 0), 0 5px 10px rgba(10, 10, 10, 0.1), 0 1px 1px rgba(10, 10, 10, 0.2);
box-shadow: 0 0 0 rgba(10, 10, 10, 0), 0 5px 10px rgba(10, 10, 10, 0.1), 0 1px 1px rgba(10, 10, 10, 0.2); box-shadow: 0 0 0 rgba(10, 10, 10, 0), 0 5px 10px rgba(10, 10, 10, 0.1), 0 1px 1px rgba(10, 10, 10, 0.2);
-webkit-transform: scale(1); -webkit-transform: scale(1);
transform: scale(1); transform: scale(1)
} }
100% { 100% {
-webkit-box-shadow: 0 20px 60px rgba(10, 10, 10, 0.05), 0 5px 10px rgba(10, 10, 10, 0.1), 0 1px 1px rgba(10, 10, 10, 0.2); -webkit-box-shadow: 0 20px 60px rgba(10, 10, 10, 0.05), 0 5px 10px rgba(10, 10, 10, 0.1), 0 1px 1px rgba(10, 10, 10, 0.2);
box-shadow: 0 20px 60px rgba(10, 10, 10, 0.05), 0 5px 10px rgba(10, 10, 10, 0.1), 0 1px 1px rgba(10, 10, 10, 0.2); box-shadow: 0 20px 60px rgba(10, 10, 10, 0.05), 0 5px 10px rgba(10, 10, 10, 0.1), 0 1px 1px rgba(10, 10, 10, 0.2);
-webkit-transform: scale(1); -webkit-transform: scale(1);
transform: scale(1); transform: scale(1)
} }
} }
@ -90,147 +90,147 @@
-webkit-box-shadow: 0 0 0 rgba(10, 10, 10, 0), 0 0 0 rgba(10, 10, 10, 0), 0 0 0 rgba(10, 10, 10, 0); -webkit-box-shadow: 0 0 0 rgba(10, 10, 10, 0), 0 0 0 rgba(10, 10, 10, 0), 0 0 0 rgba(10, 10, 10, 0);
box-shadow: 0 0 0 rgba(10, 10, 10, 0), 0 0 0 rgba(10, 10, 10, 0), 0 0 0 rgba(10, 10, 10, 0); box-shadow: 0 0 0 rgba(10, 10, 10, 0), 0 0 0 rgba(10, 10, 10, 0), 0 0 0 rgba(10, 10, 10, 0);
-webkit-transform: scale(0.86); -webkit-transform: scale(0.86);
transform: scale(0.86); transform: scale(0.86)
} }
25% { 25% {
opacity: 100; opacity: 100
} }
67% { 67% {
-webkit-box-shadow: 0 0 0 rgba(10, 10, 10, 0), 0 5px 10px rgba(10, 10, 10, 0.1), 0 1px 1px rgba(10, 10, 10, 0.2); -webkit-box-shadow: 0 0 0 rgba(10, 10, 10, 0), 0 5px 10px rgba(10, 10, 10, 0.1), 0 1px 1px rgba(10, 10, 10, 0.2);
box-shadow: 0 0 0 rgba(10, 10, 10, 0), 0 5px 10px rgba(10, 10, 10, 0.1), 0 1px 1px rgba(10, 10, 10, 0.2); box-shadow: 0 0 0 rgba(10, 10, 10, 0), 0 5px 10px rgba(10, 10, 10, 0.1), 0 1px 1px rgba(10, 10, 10, 0.2);
-webkit-transform: scale(1); -webkit-transform: scale(1);
transform: scale(1); transform: scale(1)
} }
100% { 100% {
-webkit-box-shadow: 0 20px 60px rgba(10, 10, 10, 0.05), 0 5px 10px rgba(10, 10, 10, 0.1), 0 1px 1px rgba(10, 10, 10, 0.2); -webkit-box-shadow: 0 20px 60px rgba(10, 10, 10, 0.05), 0 5px 10px rgba(10, 10, 10, 0.1), 0 1px 1px rgba(10, 10, 10, 0.2);
box-shadow: 0 20px 60px rgba(10, 10, 10, 0.05), 0 5px 10px rgba(10, 10, 10, 0.1), 0 1px 1px rgba(10, 10, 10, 0.2); box-shadow: 0 20px 60px rgba(10, 10, 10, 0.05), 0 5px 10px rgba(10, 10, 10, 0.1), 0 1px 1px rgba(10, 10, 10, 0.2);
-webkit-transform: scale(1); -webkit-transform: scale(1);
transform: scale(1); transform: scale(1)
} }
} }
.uploads>div { .uploads > div {
-webkit-animation: fadeInOpacity .5s; -webkit-animation: fadeInOpacity 0.5s;
animation: fadeInOpacity .5s; animation: fadeInOpacity 0.5s;
margin: 1rem; margin: 1rem
} }
.uploads>div:first-child { .uploads > div:first-child {
margin-top: 1.5rem; margin-top: 1.5rem
} }
.uploads.nojs { .uploads.nojs {
margin-bottom: 0; margin-bottom: 0
} }
.uploads .icon:not(.icon-block) { .uploads .icon:not(.icon-block) {
color: #3794d2; color: #3794d2
} }
.uploads .icon.icon-block { .uploads .icon.icon-block {
color: #da4453; color: #da4453
} }
.uploads progress { .uploads progress {
margin-top: .5rem; margin-top: 0.5rem;
margin-bottom: 1rem; margin-bottom: 1rem
} }
.uploads img { .uploads img {
max-width: 200px; max-width: 200px
} }
.name { .name {
font-size: 1rem; font-size: 1rem;
color: #bdc3c7; color: #bdc3c7;
word-break: break-all; word-break: break-all
} }
.link>a { .link > a {
word-break: break-all; word-break: break-all
} }
.clipboard-mobile { .clipboard-mobile {
margin-top: 5px; margin-top: 5px
} }
#albumDiv { #albumDiv {
-webkit-animation: fadeInOpacity .5s; -webkit-animation: fadeInOpacity 0.5s;
animation: fadeInOpacity .5s; animation: fadeInOpacity 0.5s
} }
#albumDiv .control { #albumDiv .control {
text-align: inherit; text-align: inherit
} }
#linksColumn { #linksColumn {
margin-top: -0.25rem; margin-top: -0.25rem;
margin-left: -0.25rem; margin-left: -0.25rem;
margin-right: -0.25rem; margin-right: -0.25rem;
-webkit-animation: fadeInOpacity .5s; -webkit-animation: fadeInOpacity 0.5s;
animation: fadeInOpacity .5s; animation: fadeInOpacity 0.5s
} }
#linksColumn .column { #linksColumn .column {
padding: 0.25rem; padding: 0.25rem
} }
#linksColumn>span { #linksColumn > span {
padding: 0 0.3rem; padding: 0 0.3rem;
color: #7f8c8d; color: #7f8c8d
}
.git-commit a {
display: inline-block;
word-break: break-all
} }
#tabs { #tabs {
margin-bottom: 1rem; margin-bottom: 1rem;
-webkit-animation: fadeInOpacity .5s; -webkit-animation: fadeInOpacity 0.5s;
animation: fadeInOpacity .5s; animation: fadeInOpacity 0.5s
} }
#tabs ul { #tabs ul {
border-bottom: 1px solid #898b8d; border-bottom: 1px solid #898b8d
} }
#tabs li a { #tabs li a {
color: #bdc3c7; color: #bdc3c7;
border-bottom-color: #898b8d; border-bottom-color: #898b8d
} }
#tabs.is-boxed li.is-active a { #tabs.is-boxed li.is-active a {
color: #3794d2; color: #3794d2;
background: #232629; background: #232629;
border-color: #898b8d; border-color: #898b8d;
border-bottom-color: #232629; border-bottom-color: #232629
} }
#tabs.is-boxed li:not(.is-active) a:hover { #tabs.is-boxed li:not(.is-active) a:hover {
background: #4d4d4d; background: #4d4d4d
} }
.tab-content { .tab-content {
margin-bottom: -.75rem; margin-bottom: -0.75rem;
-webkit-animation: fadeInOpacity .5s; -webkit-animation: fadeInOpacity 0.5s;
animation: fadeInOpacity .5s; animation: fadeInOpacity 0.5s
} }
.tab-content .label { .tab-content .label {
color: #bdc3c7; color: #bdc3c7;
font-weight: normal; font-weight: normal
} }
#tab-config.tab-content form { #tab-config.tab-content form {
margin-bottom: .75rem; margin-bottom: 0.75rem
}
.git-commit a {
display: inline-block;
word-break: break-all;
} }
#urlMaxSize { #urlMaxSize {
font-weight: bold; font-weight: bold
} }
.render { .render {
@ -239,18 +239,18 @@
bottom: 0; bottom: 0;
font-size: 1rem; font-size: 1rem;
color: #bdc3c7; color: #bdc3c7;
cursor: pointer; cursor: pointer
} }
.render.button { .render.button {
border-bottom-left-radius: 0; border-bottom-left-radius: 0;
border-bottom-right-radius: 0; border-bottom-right-radius: 0;
right: 1%; right: 1%;
opacity: .25; opacity: 0.25;
-webkit-transition: opacity .25s; -webkit-transition: opacity 0.25s;
transition: opacity .25s; transition: opacity 0.25s
} }
.render.button:hover { .render.button:hover {
opacity: 1; opacity: 1
} }

View File

@ -1,62 +1,82 @@
html { html {
background-color: #232629; background-color: #232629;
overflow-y: auto; overflow-y: auto
} }
body { body {
color: #eff0f1; color: #eff0f1;
-webkit-animation: fadeInOpacity .5s; -webkit-animation: fadeInOpacity 0.5s;
animation: fadeInOpacity .5s; animation: fadeInOpacity 0.5s
} }
@-webkit-keyframes fadeInOpacity { @-webkit-keyframes fadeInOpacity {
0% { 0% {
opacity: 0; opacity: 0
} }
100% { 100% {
opacity: 1; opacity: 1
} }
} }
@keyframes fadeInOpacity { @keyframes fadeInOpacity {
0% { 0% {
opacity: 0; opacity: 0
} }
100% { 100% {
opacity: 1; opacity: 1
} }
} }
a { a {
color: #3794d2; color: #3794d2
} }
a:hover { a:hover {
color: #60a8dc; color: #60a8dc
} }
hr { hr {
background-color: #898b8d; background-color: #898b8d
} }
code, code,
.message-body code { .message-body code {
background-color: #222528; background-color: #222528;
border-radius: 5px; border-radius: 5px
} }
.title { .title {
color: #eff0f1; color: #eff0f1
} }
.subtitle { .subtitle {
color: #bdc3c7; color: #bdc3c7
} }
.subtitle strong { .subtitle strong {
color: #bdc3c7; color: #bdc3c7
}
.input::-moz-placeholder,
.textarea::-moz-placeholder {
color: #7f8c8d
}
.input::-webkit-input-placeholder,
.textarea::-webkit-input-placeholder {
color: #7f8c8d
}
.input:-moz-placeholder,
.textarea:-moz-placeholder {
color: #7f8c8d
}
.input:-ms-input-placeholder,
.textarea:-ms-input-placeholder {
color: #7f8c8d
} }
.input.is-active, .input.is-active,
@ -67,85 +87,65 @@ code,
.textarea.is-focused, .textarea.is-focused,
.textarea:active, .textarea:active,
.textarea:focus { .textarea:focus {
border-color: #3794d2; border-color: #3794d2
} }
.table.is-hoverable tbody tr:not(.is-selected):hover { .table.is-hoverable tbody tr:not(.is-selected):hover {
background-color: #4d4d4d; background-color: #4d4d4d
} }
.table td, .table td,
.table th { .table th {
vertical-align: middle; vertical-align: middle
} }
.help { .help {
color: #7f8c8d; color: #7f8c8d
}
.input::-moz-placeholder,
.textarea::-moz-placeholder {
color: #7f8c8d;
}
.input::-webkit-input-placeholder,
.textarea::-webkit-input-placeholder {
color: #7f8c8d;
}
.input:-moz-placeholder,
.textarea:-moz-placeholder {
color: #7f8c8d;
}
.input:-ms-input-placeholder,
.textarea:-ms-input-placeholder {
color: #7f8c8d;
} }
.button.is-breeze { .button.is-breeze {
background-color: #3794d2; background-color: #3794d2;
border-color: transparent; border-color: transparent;
color: #fff; color: #fff
} }
.button.is-breeze.is-hovered, .button.is-breeze.is-hovered,
.button.is-breeze:hover { .button.is-breeze:hover {
background-color: #60a8dc; background-color: #60a8dc;
border-color: transparent; border-color: transparent;
color: #fff; color: #fff
} }
.button.is-breeze.is-active, .button.is-breeze.is-active,
.button.is-breeze:active { .button.is-breeze:active {
background-color: #60a8dc; background-color: #60a8dc;
border-color: transparent; border-color: transparent;
color: #fff; color: #fff
} }
.button.is-breeze.is-focus, .button.is-breeze.is-focus,
.button.is-breeze:focus { .button.is-breeze:focus {
border-color: transparent; border-color: transparent;
color: #fff; color: #fff
} }
.checkbox:hover, .checkbox:hover,
.radio:hover { .radio:hover {
color: #7f8c8d; color: #7f8c8d
} }
.progress.is-breeze:indeterminate { .progress.is-breeze:indeterminate {
background-image: -webkit-gradient(linear, left top, right top, color-stop(30%, #60a8dc), color-stop(30%, #eff0f1)); background-image: -webkit-gradient(linear, left top, right top, color-stop(30%, #60a8dc), color-stop(30%, #eff0f1));
background-image: linear-gradient(to right, #60a8dc 30%, #eff0f1 30%); background-image: linear-gradient(to right, #60a8dc 30%, #eff0f1 30%)
} }
.message { .message {
background-color: #31363b; background-color: #31363b
} }
.message-body { .message-body {
color: #eff0f1; color: #eff0f1;
border: 0; border: 0;
-webkit-box-shadow: 0 20px 60px rgba(10, 10, 10, 0.05), 0 5px 10px rgba(10, 10, 10, 0.1), 0 1px 1px rgba(10, 10, 10, 0.2); -webkit-box-shadow: 0 20px 60px rgba(10, 10, 10, 0.05), 0 5px 10px rgba(10, 10, 10, 0.1), 0 1px 1px rgba(10, 10, 10, 0.2);
box-shadow: 0 20px 60px rgba(10, 10, 10, 0.05), 0 5px 10px rgba(10, 10, 10, 0.1), 0 1px 1px rgba(10, 10, 10, 0.2); box-shadow: 0 20px 60px rgba(10, 10, 10, 0.05), 0 5px 10px rgba(10, 10, 10, 0.1), 0 1px 1px rgba(10, 10, 10, 0.2)
} }

View File

@ -1,143 +1,143 @@
.swal-modal { .swal-modal {
background-color: #31363b; background-color: #31363b
} }
.swal-modal .field { .swal-modal .field {
text-align: initial; text-align: initial
} }
.swal-modal.is-expanded { .swal-modal.is-expanded {
width: auto; width: auto;
max-width: 90%; max-width: 90%
} }
.swal-title, .swal-title,
.swal-text { .swal-text {
color: #eff0f1; color: #eff0f1
} }
.swal-text { .swal-text {
text-align: center; text-align: center
} }
.swal-content .label, .swal-content .label,
.swal-content .checkbox, .swal-content .checkbox,
.swal-content .radio { .swal-content .radio {
color: #eff0f1; color: #eff0f1
} }
.swal-content .checkbox:hover, .swal-content .checkbox:hover,
.swal-content .radio:hover { .swal-content .radio:hover {
color: #bdc3c7; color: #bdc3c7
} }
.swal-button { .swal-button {
background-color: #3794d2; background-color: #3794d2;
color: #eff0f1; color: #eff0f1
} }
.swal-button:hover { .swal-button:hover {
background-color: #60a8dc; background-color: #60a8dc
} }
.swal-button:focus { .swal-button:focus {
-webkit-box-shadow: 0 0 0 1px #31363b, 0 0 0 3px rgba(55, 148, 210, 0.29); -webkit-box-shadow: 0 0 0 1px #31363b, 0 0 0 3px rgba(55, 148, 210, 0.29);
box-shadow: 0 0 0 1px #31363b, 0 0 0 3px rgba(55, 148, 210, 0.29); box-shadow: 0 0 0 1px #31363b, 0 0 0 3px rgba(55, 148, 210, 0.29)
} }
.swal-button--loading { .swal-button--loading {
color: transparent; color: transparent
} }
.swal-button--danger { .swal-button--danger {
background-color: #da4453; background-color: #da4453
} }
.swal-icon--info { .swal-icon--info {
border-color: #3794d2; border-color: #3794d2
} }
.swal-icon--info:after, .swal-icon--info::after,
.swal-icon--info:before { .swal-icon--info::before {
background-color: #3794d2; background-color: #3794d2
} }
.swal-icon--error { .swal-icon--error {
border-color: #da4453; border-color: #da4453
} }
.swal-icon--error__line { .swal-icon--error__line {
background-color: #da4453; background-color: #da4453
} }
.swal-icon--warning { .swal-icon--warning {
border-color: #f67400; border-color: #f67400;
-webkit-animation: pulseWarning .5s infinite alternate; -webkit-animation: pulseWarning 0.5s infinite alternate;
animation: pulseWarning .5s infinite alternate; animation: pulseWarning 0.5s infinite alternate
} }
.swal-icon--warning__body, .swal-icon--warning__body,
.swal-icon--warning__dot { .swal-icon--warning__dot {
background-color: #f67400; background-color: #f67400;
-webkit-animation: pulseWarningBody .5s infinite alternate; -webkit-animation: pulseWarningBody 0.5s infinite alternate;
animation: pulseWarningBody .5s infinite alternate; animation: pulseWarningBody 0.5s infinite alternate
} }
@-webkit-keyframes pulseWarning { @-webkit-keyframes pulseWarning {
0% { 0% {
border-color: #ffaa60; border-color: #ffaa60
} }
to { to {
border-color: #f67400; border-color: #f67400
} }
} }
@keyframes pulseWarning { @keyframes pulseWarning {
0% { 0% {
border-color: #ffaa60; border-color: #ffaa60
} }
to { to {
border-color: #f67400; border-color: #f67400
} }
} }
@-webkit-keyframes pulseWarningBody { @-webkit-keyframes pulseWarningBody {
0% { 0% {
background-color: #ffaa60; background-color: #ffaa60
} }
to { to {
background-color: #f67400; background-color: #f67400
} }
} }
@keyframes pulseWarningBody { @keyframes pulseWarningBody {
0% { 0% {
background-color: #ffaa60; background-color: #ffaa60
} }
to { to {
background-color: #f67400; background-color: #f67400
} }
} }
.swal-icon--success { .swal-icon--success {
border-color: #27ae60; border-color: #27ae60
} }
.swal-icon--success__line { .swal-icon--success__line {
background-color: #27ae60; background-color: #27ae60
} }
.swal-icon--success__hide-corners { .swal-icon--success__hide-corners {
background-color: #31363b; background-color: #31363b
} }
.swal-icon--success::after, .swal-icon--success::after,
.swal-icon--success::before { .swal-icon--success::before {
background: #31363b; background: #31363b
} }
.swal-display-thumb-container { .swal-display-thumb-container {
@ -151,5 +151,5 @@
align-items: center; align-items: center;
-webkit-box-pack: center; -webkit-box-pack: center;
-ms-flex-pack: center; -ms-flex-pack: center;
justify-content: center; justify-content: center
} }

View File

@ -12,12 +12,12 @@
align-items: center; align-items: center;
position: relative; position: relative;
-webkit-box-shadow: 0 20px 60px rgba(10, 10, 10, 0.05), 0 5px 10px rgba(10, 10, 10, 0.1), 0 1px 1px rgba(10, 10, 10, 0.2); -webkit-box-shadow: 0 20px 60px rgba(10, 10, 10, 0.05), 0 5px 10px rgba(10, 10, 10, 0.1), 0 1px 1px rgba(10, 10, 10, 0.2);
box-shadow: 0 20px 60px rgba(10, 10, 10, 0.05), 0 5px 10px rgba(10, 10, 10, 0.1), 0 1px 1px rgba(10, 10, 10, 0.2); box-shadow: 0 20px 60px rgba(10, 10, 10, 0.05), 0 5px 10px rgba(10, 10, 10, 0.1), 0 1px 1px rgba(10, 10, 10, 0.2)
} }
.image-container .title { .image-container .title {
font-weight: normal; font-weight: normal;
word-break: break-all; word-break: break-all
} }
.image-container .image { .image-container .image {
@ -31,14 +31,14 @@
align-items: center; align-items: center;
-webkit-box-pack: center; -webkit-box-pack: center;
-ms-flex-pack: center; -ms-flex-pack: center;
justify-content: center; justify-content: center
} }
.image-container .image img { .image-container .image img {
max-height: 100%; max-height: 100%;
max-width: 100%; max-width: 100%;
height: auto; height: auto;
width: auto; width: auto
} }
.image-container .controls { .image-container .controls {
@ -46,36 +46,36 @@
display: -ms-flexbox; display: -ms-flexbox;
display: flex; display: flex;
position: absolute; position: absolute;
top: .75rem; top: 0.75rem;
right: .75rem; right: 0.75rem
} }
.image-container .controls .button { .image-container .controls .button {
border-radius: 0; border-radius: 0
} }
.image-container .controls .button:not(:active):not(:hover) { .image-container .controls .button:not(:active):not(:hover) {
color: #fff; color: #fff;
background-color: rgba(49, 54, 59, .75); background-color: rgba(49, 54, 59, 0.75)
} }
.image-container .details { .image-container .details {
position: absolute; position: absolute;
left: .75rem; left: 0.75rem;
bottom: .75rem; bottom: 0.75rem;
right: .75rem; right: 0.75rem;
background-color: rgba(49, 54, 59, .75); background-color: rgba(49, 54, 59, 0.75);
color: #eff0f1; color: #eff0f1;
padding: .25rem; padding: 0.25rem;
font-size: .75rem; font-size: 0.75rem
} }
.image-container .details p { .image-container .details p {
display: block; display: block;
text-overflow: ellipsis; text-overflow: ellipsis;
overflow: hidden; overflow: hidden
} }
.image-container .details p span { .image-container .details p span {
font-weight: bold; font-weight: bold
} }

View File

@ -16,7 +16,7 @@
v3: CSS and JS files (libs such as bulma, lazyload, etc). v3: CSS and JS files (libs such as bulma, lazyload, etc).
v4: Renders in /public/render/* directories (to be used by render.js). v4: Renders in /public/render/* directories (to be used by render.js).
#} #}
{% set v1 = "MO8TNY3DLV" %} {% set v1 = "gI6ZM0Tg0t" %}
{% set v2 = "hiboQUzAzp" %} {% set v2 = "hiboQUzAzp" %}
{% set v3 = "tWLiAlAX5i" %} {% set v3 = "tWLiAlAX5i" %}
{% set v4 = "S3TAWpPeFS" %} {% set v4 = "S3TAWpPeFS" %}

View File

@ -75,7 +75,7 @@
<article class="message"> <article class="message">
<div class="message-body"> <div class="message-body">
<p>You are viewing No-JS version of this album, so file size will be displayed in bytes.</p> <p>You are viewing No-JS version of this album, so file size will be displayed in bytes.</p>
<p>Please <a href="{{ url }}">click here</a> if you want to its regular version.</p> <p>Please <a href="{{ url }}">click here</a> if you want to view its regular version.</p>
</div> </div>
</article> </article>
{%- endif %} {%- endif %}

1485
yarn.lock

File diff suppressed because it is too large Load Diff