Browse Source

Updated

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.
safe.fiery.me
Bobby Wibowo 2 years ago
parent
commit
10a464bc73
No known key found for this signature in database GPG Key ID: 51C3A1E1E22D26CF
  1. 5
      .markdownlint.json
  2. 7
      .stylelintrc
  3. 4
      AUTHORS
  4. 3
      database/db.js
  5. 12
      package.json
  6. 4
      public/css/album.css
  7. 18
      public/css/auth.css
  8. 82
      public/css/dashboard.css
  9. 124
      public/css/home.css
  10. 92
      public/css/style.css
  11. 70
      public/css/sweetalert.css
  12. 32
      public/css/thumbs.css
  13. 2
      views/_globals.njk
  14. 2
      views/album.njk
  15. 1483
      yarn.lock

5
.markdownlint.json

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

7
.stylelintrc

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

4
AUTHORS

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

3
database/db.js

@ -2,6 +2,9 @@ const logger = require('./../logger')
const perms = require('./../controllers/permissionController')
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) {
// Create the tables we need to store galleries and files
db.schema.hasTable('albums').then(exists => {

12
package.json

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

4
public/css/album.css

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

18
public/css/auth.css

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

82
public/css/dashboard.css

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

124
public/css/home.css

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

92
public/css/style.css

@ -1,62 +1,82 @@
html {
background-color: #232629;
overflow-y: auto;
overflow-y: auto
}
body {
color: #eff0f1;
-webkit-animation: fadeInOpacity .5s;
animation: fadeInOpacity .5s;
-webkit-animation: fadeInOpacity 0.5s;
animation: fadeInOpacity 0.5s
}
@-webkit-keyframes fadeInOpacity {
0% {
opacity: 0;
opacity: 0
}
100% {
opacity: 1;
opacity: 1
}
}
@keyframes fadeInOpacity {
0% {
opacity: 0;
opacity: 0
}
100% {
opacity: 1;
opacity: 1
}
}
a {
color: #3794d2;
color: #3794d2
}
a:hover {
color: #60a8dc;
color: #60a8dc
}
hr {
background-color: #898b8d;
background-color: #898b8d
}
code,
.message-body code {
background-color: #222528;
border-radius: 5px;
border-radius: 5px
}
.title {
color: #eff0f1;
color: #eff0f1
}
.subtitle {
color: #bdc3c7;
color: #bdc3c7
}
.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,
@ -67,85 +87,65 @@ code,
.textarea.is-focused,
.textarea:active,
.textarea:focus {
border-color: #3794d2;
border-color: #3794d2
}
.table.is-hoverable tbody tr:not(.is-selected):hover {
background-color: #4d4d4d;
background-color: #4d4d4d
}
.table td,
.table th {
vertical-align: middle;
vertical-align: middle
}
.help {
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;
color: #7f8c8d
}
.button.is-breeze {
background-color: #3794d2;
border-color: transparent;
color: #fff;
color: #fff
}
.button.is-breeze.is-hovered,
.button.is-breeze:hover {
background-color: #60a8dc;
border-color: transparent;
color: #fff;
color: #fff
}
.button.is-breeze.is-active,
.button.is-breeze:active {
background-color: #60a8dc;
border-color: transparent;
color: #fff;
color: #fff
}
.button.is-breeze.is-focus,
.button.is-breeze:focus {
border-color: transparent;
color: #fff;
color: #fff
}
.checkbox:hover,
.radio:hover {
color: #7f8c8d;
color: #7f8c8d
}
.progress.is-breeze:indeterminate {
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 {
background-color: #31363b;
background-color: #31363b
}
.message-body {
color: #eff0f1;
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);
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)
}

70
public/css/sweetalert.css

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

32
public/css/thumbs.css

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

2
views/_globals.njk

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

2
views/album.njk

@ -75,7 +75,7 @@
<article class="message">
<div class="message-body">
<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>
</article>
{%- endif %}

1483
yarn.lock

File diff suppressed because it is too large
Loading…
Cancel
Save