jekyll-theme-yat 1.9.0 → 1.10.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 +4 -4
- data/_includes/extensions/google-analytics.html +14 -6
- data/_includes/extensions/photo-swipe.html +161 -0
- data/_includes/head.html +1 -0
- data/_sass/yat/_layout.scss +1 -0
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 40afd01c8ec04c85bbbdec989574617affc46bbc654787bf274eb5b2567eab8f
|
4
|
+
data.tar.gz: d91b329158c536ef53e461fabf47adc04707f0dae3201834f1e23b54d5493b8e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: fe439a617d9f796b358e91e7cb562efbc4653d90ad61fd2e941508f872f94abf5693eeca35dedb2519da0f1637c6e5afdfef4cc3e7f60995ba138f579a1d7db8
|
7
|
+
data.tar.gz: c12a4377a77170fe1ac27b58e8320610a31f047fbcaef5bc3baa03256c803f1e7b65a10608aecec6880cd860900a608c168cbbbab27ee5a915088aa410d9ed68
|
@@ -1,3 +1,4 @@
|
|
1
|
+
<!-- Google tag (gtag.js) -->
|
1
2
|
<script>
|
2
3
|
function initGoogleAnalytics() {
|
3
4
|
var doNotTrack = (window.doNotTrack === "1" || navigator.doNotTrack === "1" ||
|
@@ -5,13 +6,20 @@
|
|
5
6
|
var enableDNT = "{{ site.enableDNT | default: true }}" == "true";
|
6
7
|
|
7
8
|
if (!enableDNT || !doNotTrack) {
|
8
|
-
|
9
|
-
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
10
|
-
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
11
|
-
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
|
9
|
+
var measurementId = '{{ site.google_analytics }}';
|
12
10
|
|
13
|
-
|
14
|
-
|
11
|
+
(function(src) {
|
12
|
+
var tag = document.createElement('script');
|
13
|
+
tag.src = src;
|
14
|
+
tag.async = true;
|
15
|
+
var firstScriptTag = document.getElementsByTagName('script')[0];
|
16
|
+
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
|
17
|
+
})('https://www.googletagmanager.com/gtag/js?id=' + measurementId);
|
18
|
+
|
19
|
+
window.dataLayer = window.dataLayer || [];
|
20
|
+
function gtag(){dataLayer.push(arguments);}
|
21
|
+
gtag('js', new Date());
|
22
|
+
gtag('config', measurementId);
|
15
23
|
}
|
16
24
|
}
|
17
25
|
window.addEventListener("load", initGoogleAnalytics);
|
@@ -0,0 +1,161 @@
|
|
1
|
+
<script src="//cdnjs.cloudflare.com/ajax/libs/photoswipe/4.1.3/photoswipe.min.js"></script>
|
2
|
+
<script src="//cdnjs.cloudflare.com/ajax/libs/photoswipe/4.1.3/photoswipe-ui-default.min.js"></script>
|
3
|
+
<link
|
4
|
+
href="https://cdnjs.cloudflare.com/ajax/libs/photoswipe/4.1.3/photoswipe.css"
|
5
|
+
rel="stylesheet"
|
6
|
+
/>
|
7
|
+
<link
|
8
|
+
href="https://cdnjs.cloudflare.com/ajax/libs/photoswipe/4.1.3/default-skin/default-skin.css"
|
9
|
+
rel="stylesheet"
|
10
|
+
/>
|
11
|
+
<style>
|
12
|
+
.pswp .pswp__container .pswp__img {
|
13
|
+
background-color: white;
|
14
|
+
}
|
15
|
+
</style>
|
16
|
+
|
17
|
+
<script>
|
18
|
+
function initPhotoSwipe() {
|
19
|
+
var mainEl = document.querySelector("section.main");
|
20
|
+
|
21
|
+
var imgEls = mainEl.querySelectorAll("img:not(.emoji)");
|
22
|
+
imgEls.forEach((imgEl) => {
|
23
|
+
imgEl.outerHTML = `
|
24
|
+
<a class="photo-swipe"
|
25
|
+
href="${imgEl.src}"
|
26
|
+
data-width="${imgEl.getAttribute("width") || imgEl.width * 2}"
|
27
|
+
data-height="${imgEl.getAttribute("height") || imgEl.height * 2}"
|
28
|
+
data-caption="${imgEl.getAttribute("caption") || imgEl.alt}"
|
29
|
+
target="_blank">
|
30
|
+
${imgEl.outerHTML}
|
31
|
+
</a>`;
|
32
|
+
});
|
33
|
+
|
34
|
+
// Init empty gallery array
|
35
|
+
var container = [];
|
36
|
+
|
37
|
+
// Loop over gallery items and push it to the array
|
38
|
+
var linkEls = mainEl.querySelectorAll("a.photo-swipe");
|
39
|
+
linkEls.forEach((link) => {
|
40
|
+
var item = {
|
41
|
+
src: link.getAttribute("href"),
|
42
|
+
w: link.dataset.width,
|
43
|
+
h: link.dataset.height,
|
44
|
+
title: link.dataset.caption || "",
|
45
|
+
};
|
46
|
+
container.push(item);
|
47
|
+
});
|
48
|
+
|
49
|
+
// Define click event on gallery item
|
50
|
+
linkEls.forEach((link, index) => {
|
51
|
+
link.addEventListener("click", (event) => {
|
52
|
+
// Prevent location change
|
53
|
+
event.preventDefault();
|
54
|
+
|
55
|
+
// Define object and gallery options
|
56
|
+
var pswp = document.querySelector(".pswp");
|
57
|
+
|
58
|
+
var zoomLevel = 1;
|
59
|
+
|
60
|
+
// Define object and gallery options
|
61
|
+
var options = {
|
62
|
+
index: index,
|
63
|
+
bgOpacity: 0.85,
|
64
|
+
showHideOpacity: true,
|
65
|
+
closeOnScroll: true,
|
66
|
+
maxSpreadZoom: 1,
|
67
|
+
getDoubleTapZoom: (isMouseClick, item) => {
|
68
|
+
if (item.detail) {
|
69
|
+
zoomLevel += item.detail.origEvent.shiftKey ? -1 : 1;
|
70
|
+
item.detail = undefined;
|
71
|
+
} else {
|
72
|
+
zoomLevel = zoomLevel === 1 ? 2 : 1;
|
73
|
+
}
|
74
|
+
if (zoomLevel <= 1) {
|
75
|
+
zoomLevel = 1;
|
76
|
+
setTimeout(() => pswp.classList.remove("pswp--zoomed-in"), 0);
|
77
|
+
}
|
78
|
+
return item.initialZoomLevel * zoomLevel;
|
79
|
+
},
|
80
|
+
};
|
81
|
+
|
82
|
+
// Initialize PhotoSwipe
|
83
|
+
var gallery = new PhotoSwipe(
|
84
|
+
pswp,
|
85
|
+
PhotoSwipeUI_Default,
|
86
|
+
container,
|
87
|
+
options
|
88
|
+
);
|
89
|
+
|
90
|
+
gallery.init();
|
91
|
+
|
92
|
+
// Custom zoom event
|
93
|
+
gallery.container.addEventListener("pswpTap", (e) => {
|
94
|
+
gallery.currItem.detail = e.detail;
|
95
|
+
});
|
96
|
+
});
|
97
|
+
});
|
98
|
+
}
|
99
|
+
|
100
|
+
window.addEventListener("load", initPhotoSwipe);
|
101
|
+
</script>
|
102
|
+
|
103
|
+
<!-- Root element of PhotoSwipe. Must have class pswp. -->
|
104
|
+
<div class="pswp" tabindex="-1" role="dialog" aria-hidden="true">
|
105
|
+
<!-- Background of PhotoSwipe.
|
106
|
+
It's a separate element as animating opacity is faster than rgba(). -->
|
107
|
+
<div class="pswp__bg"></div>
|
108
|
+
<!-- Slides wrapper with overflow:hidden. -->
|
109
|
+
<div class="pswp__scroll-wrap">
|
110
|
+
<!-- Container that holds slides.
|
111
|
+
PhotoSwipe keeps only 3 of them in the DOM to save memory.
|
112
|
+
Don't modify these 3 pswp__item elements, data is added later on. -->
|
113
|
+
<div class="pswp__container">
|
114
|
+
<div class="pswp__item"></div>
|
115
|
+
<div class="pswp__item"></div>
|
116
|
+
<div class="pswp__item"></div>
|
117
|
+
</div>
|
118
|
+
<!-- Default (PhotoSwipeUI_Default) interface on top of sliding area. Can be changed. -->
|
119
|
+
<div class="pswp__ui pswp__ui--hidden">
|
120
|
+
<div class="pswp__top-bar">
|
121
|
+
<!-- Controls are self-explanatory. Order can be changed. -->
|
122
|
+
<div class="pswp__counter"></div>
|
123
|
+
<button
|
124
|
+
class="pswp__button pswp__button--close"
|
125
|
+
title="Close (Esc)"
|
126
|
+
></button>
|
127
|
+
<button class="pswp__button pswp__button--share" title="Share"></button>
|
128
|
+
<button
|
129
|
+
class="pswp__button pswp__button--fs"
|
130
|
+
title="Toggle fullscreen"
|
131
|
+
></button>
|
132
|
+
<button
|
133
|
+
class="pswp__button pswp__button--zoom"
|
134
|
+
title="Zoom in/out"
|
135
|
+
></button>
|
136
|
+
<!-- element will get class pswp__preloader--active when preloader is running -->
|
137
|
+
<div class="pswp__preloader">
|
138
|
+
<div class="pswp__preloader__icn">
|
139
|
+
<div class="pswp__preloader__cut">
|
140
|
+
<div class="pswp__preloader__donut"></div>
|
141
|
+
</div>
|
142
|
+
</div>
|
143
|
+
</div>
|
144
|
+
</div>
|
145
|
+
<div class="pswp__share-modal pswp__share-modal--hidden pswp__single-tap">
|
146
|
+
<div class="pswp__share-tooltip"></div>
|
147
|
+
</div>
|
148
|
+
<button
|
149
|
+
class="pswp__button pswp__button--arrow--left"
|
150
|
+
title="Previous (arrow left)"
|
151
|
+
></button>
|
152
|
+
<button
|
153
|
+
class="pswp__button pswp__button--arrow--right"
|
154
|
+
title="Next (arrow right)"
|
155
|
+
></button>
|
156
|
+
<div class="pswp__caption">
|
157
|
+
<div class="pswp__caption__center"></div>
|
158
|
+
</div>
|
159
|
+
</div>
|
160
|
+
</div>
|
161
|
+
</div>
|
data/_includes/head.html
CHANGED
data/_sass/yat/_layout.scss
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: jekyll-theme-yat
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.10.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- jeffreytse
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-
|
11
|
+
date: 2023-06-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -162,6 +162,7 @@ files:
|
|
162
162
|
- _includes/extensions/google-translate.html
|
163
163
|
- _includes/extensions/hashlocate.html
|
164
164
|
- _includes/extensions/mathjax.html
|
165
|
+
- _includes/extensions/photo-swipe.html
|
165
166
|
- _includes/extensions/theme-toggle.html
|
166
167
|
- _includes/extensions/trianglify.html
|
167
168
|
- _includes/functions.html
|