servel 0.18.0 → 0.19.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +5 -5
- data/lib/servel/templates/_gallery.haml +7 -5
- data/lib/servel/templates/css/gallery.css +45 -18
- data/lib/servel/templates/css/listing.css +3 -0
- data/lib/servel/templates/index.haml +0 -1
- data/lib/servel/templates/js/gallery.js +31 -16
- data/lib/servel/version.rb +1 -1
- metadata +3 -4
- data/lib/servel/templates/css/index.css +0 -15
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 46aac7ea1121e835e50af2f906be76d30fb73190171842ce642381585b334ea6
|
4
|
+
data.tar.gz: 0f31b01220a763c8fcdd96561d76ee75bed06c2d052d7f5f521b8e9968f14791
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: febe17fedca3812eb8e2a21cff9a0e869a8a3a683bb593e85dcde279b065bdc3b47ff0c0e9789367db331b2a9b3b1183c11ccbf533769914aad9154f730315a5
|
7
|
+
data.tar.gz: 0313e123f72be5c37852fa9f1205a97ec30c44137525b8a2e776cc3527ad7bbc9e080f565632814c099d800f874f9dcfc33f1b4287881cb98cacfd936d8fdb6e
|
@@ -4,8 +4,10 @@
|
|
4
4
|
#text
|
5
5
|
%a#text-anchor{href: '#'}
|
6
6
|
#text-content
|
7
|
-
#
|
8
|
-
#page-
|
9
|
-
#page-
|
10
|
-
#page-
|
11
|
-
#page-
|
7
|
+
#controls
|
8
|
+
#page-back.paginator ◀
|
9
|
+
#page-next.paginator ▶
|
10
|
+
#page-back-10.paginator ◀◀
|
11
|
+
#page-next-10.paginator ▶▶
|
12
|
+
#page-jump-listing.paginator ▼
|
13
|
+
#page-max-item.paginator ⤡
|
@@ -1,6 +1,5 @@
|
|
1
1
|
#gallery {
|
2
2
|
background: #333;
|
3
|
-
transform: translateZ(0px);
|
4
3
|
display: flex;
|
5
4
|
align-items: center;
|
6
5
|
justify-content: center;
|
@@ -9,7 +8,6 @@
|
|
9
8
|
#image, #video, #audio, #text {
|
10
9
|
display: none;
|
11
10
|
max-width: 100%;
|
12
|
-
max-height: 100%;
|
13
11
|
margin: 0 auto 0 auto;
|
14
12
|
}
|
15
13
|
|
@@ -22,7 +20,6 @@
|
|
22
20
|
}
|
23
21
|
|
24
22
|
#text {
|
25
|
-
overflow: auto;
|
26
23
|
color: #000000;
|
27
24
|
background-color: #ffffff;
|
28
25
|
}
|
@@ -47,11 +44,16 @@
|
|
47
44
|
display: block;
|
48
45
|
}
|
49
46
|
|
50
|
-
|
47
|
+
#controls {
|
51
48
|
position: fixed;
|
52
|
-
|
53
|
-
|
49
|
+
top: 0;
|
50
|
+
right: 0;
|
51
|
+
left: 0;
|
52
|
+
}
|
54
53
|
|
54
|
+
.paginator {
|
55
|
+
position: absolute;
|
56
|
+
width: 100px;
|
55
57
|
opacity: 0;
|
56
58
|
font-size: 20px;
|
57
59
|
font-weight: bold;
|
@@ -69,7 +71,7 @@
|
|
69
71
|
}
|
70
72
|
|
71
73
|
#page-back {
|
72
|
-
top:
|
74
|
+
top: 0;
|
73
75
|
bottom: 100px;
|
74
76
|
left: 0;
|
75
77
|
}
|
@@ -84,21 +86,26 @@
|
|
84
86
|
bottom: 0;
|
85
87
|
left: 0;
|
86
88
|
height: 100px;
|
87
|
-
z-index: 10001;
|
88
89
|
}
|
89
90
|
|
90
91
|
#page-next-10 {
|
91
92
|
bottom: 0;
|
92
93
|
right: 0;
|
93
94
|
height: 100px;
|
94
|
-
z-index: 10001;
|
95
95
|
}
|
96
96
|
|
97
|
-
#page-
|
97
|
+
#page-jump-listing {
|
98
|
+
right: 100px;
|
99
|
+
bottom: 0;
|
100
|
+
left: 100px;
|
101
|
+
height: 100px;
|
102
|
+
width: auto;
|
103
|
+
}
|
104
|
+
|
105
|
+
#page-max-item {
|
98
106
|
top: 0;
|
99
|
-
left:
|
107
|
+
left: 100px;
|
100
108
|
height: 100px;
|
101
|
-
z-index: 10001;
|
102
109
|
}
|
103
110
|
|
104
111
|
@media screen and (max-width: 767px) {
|
@@ -106,10 +113,6 @@
|
|
106
113
|
padding: 0;
|
107
114
|
}
|
108
115
|
|
109
|
-
#page-toggle-size {
|
110
|
-
display: none;
|
111
|
-
}
|
112
|
-
|
113
116
|
#page-back-10 {
|
114
117
|
top: 0;
|
115
118
|
bottom: auto;
|
@@ -127,18 +130,30 @@
|
|
127
130
|
}
|
128
131
|
|
129
132
|
#page-back {
|
130
|
-
top: 0;
|
131
133
|
bottom: auto;
|
132
134
|
height: 75px;
|
133
135
|
width: 100px;
|
134
136
|
}
|
135
137
|
|
136
138
|
#page-next {
|
137
|
-
top: 0;
|
138
139
|
bottom: auto;
|
139
140
|
height: 75px;
|
140
141
|
width: 100px;
|
141
142
|
}
|
143
|
+
|
144
|
+
#page-jump-listing {
|
145
|
+
top: 0;
|
146
|
+
right: 220px;
|
147
|
+
bottom: auto;
|
148
|
+
left: 220px;
|
149
|
+
height: 75px;
|
150
|
+
}
|
151
|
+
|
152
|
+
#page-max-item {
|
153
|
+
top: 75px;
|
154
|
+
left: 0;
|
155
|
+
height: 75px;
|
156
|
+
}
|
142
157
|
}
|
143
158
|
|
144
159
|
@media screen and (max-width: 479px) {
|
@@ -159,6 +174,18 @@
|
|
159
174
|
#page-next {
|
160
175
|
width: 75px;
|
161
176
|
}
|
177
|
+
|
178
|
+
#page-jump-listing {
|
179
|
+
top: auto;
|
180
|
+
right: auto;
|
181
|
+
bottom: 0;
|
182
|
+
left: 0;
|
183
|
+
width: 75px;
|
184
|
+
}
|
185
|
+
|
186
|
+
#page-max-item {
|
187
|
+
width: 75px;
|
188
|
+
}
|
162
189
|
}
|
163
190
|
|
164
191
|
@media screen and (min-width: 768px) {
|
@@ -1,10 +1,10 @@
|
|
1
1
|
var $;
|
2
2
|
|
3
3
|
var Gallery = (function() {
|
4
|
-
var TYPES = ["image", "video", "audio", "text"];
|
5
4
|
var urls = [];
|
6
5
|
var types = [];
|
7
6
|
var currentIndex = 0;
|
7
|
+
var layoutItemMax = false;
|
8
8
|
var $gallery;
|
9
9
|
|
10
10
|
function initItems() {
|
@@ -19,7 +19,7 @@ var Gallery = (function() {
|
|
19
19
|
|
20
20
|
function renderText(url) {
|
21
21
|
var http = new XMLHttpRequest();
|
22
|
-
http.open("GET", url
|
22
|
+
http.open("GET", url);
|
23
23
|
http.onload = function() {
|
24
24
|
$("#text-content").innerHTML = ume(http.responseText);
|
25
25
|
$("#text").scrollTop = 0;
|
@@ -29,18 +29,11 @@ var Gallery = (function() {
|
|
29
29
|
}
|
30
30
|
|
31
31
|
function clearContent() {
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
if(type == "text") {
|
38
|
-
$("#text-content").innerHTML = "";
|
39
|
-
}
|
40
|
-
else {
|
41
|
-
$("#" + type).src = "about:none";
|
42
|
-
}
|
43
|
-
}
|
32
|
+
$gallery.classList.remove("image", "video", "audio", "text");
|
33
|
+
$("#image").src = "about:none";
|
34
|
+
$("#video").src = "about:none";
|
35
|
+
$("#audio").src = "about:none";
|
36
|
+
$("#text-content").innerHTML = "";
|
44
37
|
}
|
45
38
|
|
46
39
|
function render() {
|
@@ -127,9 +120,14 @@ var Gallery = (function() {
|
|
127
120
|
e.stopPropagation();
|
128
121
|
fastForward();
|
129
122
|
}
|
130
|
-
else if(e.target.matches("#page-
|
123
|
+
else if(e.target.matches("#page-jump-listing")) {
|
124
|
+
e.stopPropagation();
|
125
|
+
$("#listing").scrollIntoView();
|
126
|
+
}
|
127
|
+
else if(e.target.closest("#page-max-item")) {
|
131
128
|
e.stopPropagation();
|
132
|
-
|
129
|
+
layoutItemMax = !layoutItemMax;
|
130
|
+
layout();
|
133
131
|
}
|
134
132
|
});
|
135
133
|
|
@@ -145,11 +143,28 @@ var Gallery = (function() {
|
|
145
143
|
});
|
146
144
|
}
|
147
145
|
|
146
|
+
function layout() {
|
147
|
+
var viewportHeight = document.documentElement.clientHeight + "px";
|
148
|
+
$gallery.style.minHeight = viewportHeight;
|
149
|
+
$("#controls").style.height = viewportHeight;
|
150
|
+
|
151
|
+
var maxHeight = layoutItemMax ? "none" : viewportHeight;
|
152
|
+
$("#image").style.maxHeight = maxHeight;
|
153
|
+
$("#video").style.maxHeight = maxHeight;
|
154
|
+
$("#audio").style.maxHeight = maxHeight;
|
155
|
+
}
|
156
|
+
|
157
|
+
function initLayout() {
|
158
|
+
window.addEventListener("resize", layout);
|
159
|
+
layout();
|
160
|
+
}
|
161
|
+
|
148
162
|
function init() {
|
149
163
|
$gallery = $("#gallery");
|
150
164
|
|
151
165
|
initItems();
|
152
166
|
initEvents();
|
167
|
+
initLayout();
|
153
168
|
render();
|
154
169
|
}
|
155
170
|
|
data/lib/servel/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: servel
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.19.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Brenton "B-Train" Fletcher
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-
|
11
|
+
date: 2018-08-22 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -153,7 +153,6 @@ files:
|
|
153
153
|
- lib/servel/templates/css/gallery-text.css
|
154
154
|
- lib/servel/templates/css/gallery.css
|
155
155
|
- lib/servel/templates/css/home.css
|
156
|
-
- lib/servel/templates/css/index.css
|
157
156
|
- lib/servel/templates/css/listing.css
|
158
157
|
- lib/servel/templates/css/normalize.css
|
159
158
|
- lib/servel/templates/home.haml
|
@@ -184,7 +183,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
184
183
|
version: '0'
|
185
184
|
requirements: []
|
186
185
|
rubyforge_project:
|
187
|
-
rubygems_version: 2.6
|
186
|
+
rubygems_version: 2.7.6
|
188
187
|
signing_key:
|
189
188
|
specification_version: 4
|
190
189
|
summary: Serves files and directories over HTTP.
|