@gaulatti/giorgia 0.1.57
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.
- package/LICENSE +21 -0
- package/README.md +45 -0
- package/dist/carousels.d.ts +1 -0
- package/dist/carousels.js +65 -0
- package/dist/components/live-program/LiveProgram.d.ts +9 -0
- package/dist/components/live-program/LiveProgram.js +751 -0
- package/dist/components/live-program/assets.d.ts +14 -0
- package/dist/components/live-program/assets.js +14 -0
- package/dist/components/live-program/components/Marquee.d.ts +16 -0
- package/dist/components/live-program/components/Marquee.js +88 -0
- package/dist/components/live-program/components/MarqueeCurtain.d.ts +5 -0
- package/dist/components/live-program/components/MarqueeCurtain.js +30 -0
- package/dist/components/live-program/components/WorldClocks.d.ts +19 -0
- package/dist/components/live-program/components/WorldClocks.js +101 -0
- package/dist/components/live-program/components/slides/ArticleSlide.d.ts +14 -0
- package/dist/components/live-program/components/slides/ArticleSlide.js +32 -0
- package/dist/components/live-program/components/slides/CallsignSlide.d.ts +6 -0
- package/dist/components/live-program/components/slides/CallsignSlide.js +49 -0
- package/dist/components/live-program/components/slides/LiveEventSlide.d.ts +9 -0
- package/dist/components/live-program/components/slides/LiveEventSlide.js +86 -0
- package/dist/components/live-program/components/slides/slideStyles.d.ts +1 -0
- package/dist/components/live-program/components/slides/slideStyles.js +64 -0
- package/dist/components/live-program/events.d.ts +34 -0
- package/dist/components/live-program/events.js +167 -0
- package/dist/components/live-program/hooks/useSSE.d.ts +11 -0
- package/dist/components/live-program/hooks/useSSE.js +107 -0
- package/dist/components/live-program/i18n.d.ts +4 -0
- package/dist/components/live-program/i18n.js +305 -0
- package/dist/components/live-program/segments/ArticlesSegment.d.ts +6 -0
- package/dist/components/live-program/segments/ArticlesSegment.js +160 -0
- package/dist/components/live-program/segments/EarthquakeSegment.d.ts +16 -0
- package/dist/components/live-program/segments/EarthquakeSegment.js +130 -0
- package/dist/components/live-program/segments/LiveEventSegment.d.ts +4 -0
- package/dist/components/live-program/segments/LiveEventSegment.js +27 -0
- package/dist/components/live-program/segments/MarketsSegment.d.ts +12 -0
- package/dist/components/live-program/segments/MarketsSegment.js +76 -0
- package/dist/components/live-program/segments/WeatherSegment.d.ts +15 -0
- package/dist/components/live-program/segments/WeatherSegment.js +119 -0
- package/dist/components/live-program/segments/fetchLiveEvents.d.ts +20 -0
- package/dist/components/live-program/segments/fetchLiveEvents.js +76 -0
- package/dist/components/live-program/segments/index.d.ts +8 -0
- package/dist/components/live-program/segments/index.js +8 -0
- package/dist/components/live-program/segments/types.d.ts +23 -0
- package/dist/components/live-program/segments/types.js +1 -0
- package/dist/components/live-program/segments/usePlaylistEngine.d.ts +9 -0
- package/dist/components/live-program/segments/usePlaylistEngine.js +108 -0
- package/dist/components/live-program/utils/broadcastTime.d.ts +12 -0
- package/dist/components/live-program/utils/broadcastTime.js +33 -0
- package/dist/fonts/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGD_jZtU.ttf +0 -0
- package/dist/fonts/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGFPjZtU.ttf +0 -0
- package/dist/fonts/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGGHiZtU.ttf +0 -0
- package/dist/fonts/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGGHjZtU.ttf +0 -0
- package/dist/fonts/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGIbkZtU.ttf +0 -0
- package/dist/fonts/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGL_kZtU.ttf +0 -0
- package/dist/fonts/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGMjkZtU.ttf +0 -0
- package/dist/fonts/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGOHjZtU.ttf +0 -0
- package/dist/fonts/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGOHkZtU.ttf +0 -0
- package/dist/fonts/SlGDmQSNjdsmc35JDF1K5E55YMjF_7DPuGi-2fRUAw.ttf +0 -0
- package/dist/fonts/SlGDmQSNjdsmc35JDF1K5E55YMjF_7DPuGi-6_RUAw.ttf +0 -0
- package/dist/fonts/SlGDmQSNjdsmc35JDF1K5E55YMjF_7DPuGi-DPNUAw.ttf +0 -0
- package/dist/fonts/SlGDmQSNjdsmc35JDF1K5E55YMjF_7DPuGi-NfNUAw.ttf +0 -0
- package/dist/fonts/SlGDmQSNjdsmc35JDF1K5E55YMjF_7DPuGi-a_NUAw.ttf +0 -0
- package/dist/fonts/SlGFmQSNjdsmc35JDF1K5GRwUjcdlttVFm-rI7c8R496.ttf +0 -0
- package/dist/fonts/SlGFmQSNjdsmc35JDF1K5GRwUjcdlttVFm-rI7dbR496.ttf +0 -0
- package/dist/fonts/SlGFmQSNjdsmc35JDF1K5GRwUjcdlttVFm-rI7diR496.ttf +0 -0
- package/dist/fonts/SlGFmQSNjdsmc35JDF1K5GRwUjcdlttVFm-rI7e8QI96.ttf +0 -0
- package/dist/fonts/SlGFmQSNjdsmc35JDF1K5GRwUjcdlttVFm-rI7eOQI96.ttf +0 -0
- package/dist/fonts/TK3_WkUHHAIjg75cFRf3bXL8LICs13FvgUE.ttf +0 -0
- package/dist/fonts/TK3_WkUHHAIjg75cFRf3bXL8LICs169vgUE.ttf +0 -0
- package/dist/fonts/TK3_WkUHHAIjg75cFRf3bXL8LICs18NvgUE.ttf +0 -0
- package/dist/fonts/TK3_WkUHHAIjg75cFRf3bXL8LICs1_FvgUE.ttf +0 -0
- package/dist/fonts/TK3_WkUHHAIjg75cFRf3bXL8LICs1xZogUE.ttf +0 -0
- package/dist/fonts/TK3_WkUHHAIjg75cFRf3bXL8LICs1y9ogUE.ttf +0 -0
- package/dist/fonts/fonts.css +378 -0
- package/dist/fonts/j8_16_LD37rqfuwxyIuaZhE6cRXOLtm2gfTGgQ.ttf +0 -0
- package/dist/fonts/j8_46_LD37rqfuwxyIuaZhE6cRXOLtm2gfT-BYipBw.ttf +0 -0
- package/dist/fonts/j8_46_LD37rqfuwxyIuaZhE6cRXOLtm2gfT-IYmpBw.ttf +0 -0
- package/dist/fonts/j8_46_LD37rqfuwxyIuaZhE6cRXOLtm2gfT-PYqpBw.ttf +0 -0
- package/dist/fonts/j8_46_LD37rqfuwxyIuaZhE6cRXOLtm2gfT-WYupBw.ttf +0 -0
- package/dist/fonts/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05oYiRNDM.ttf +0 -0
- package/dist/fonts/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05oZ8RNDM.ttf +0 -0
- package/dist/fonts/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05oZ8RdDM.ttf +0 -0
- package/dist/fonts/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05oZORNDM.ttf +0 -0
- package/dist/fonts/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05oabQ9DM.ttf +0 -0
- package/dist/fonts/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05oaiQ9DM.ttf +0 -0
- package/dist/fonts/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05ob8Q9DM.ttf +0 -0
- package/dist/fonts/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05ob8RNDM.ttf +0 -0
- package/dist/fonts/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05obVQ9DM.ttf +0 -0
- package/dist/fonts/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduh8MKUBw.ttf +0 -0
- package/dist/fonts/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhHMWUBw.ttf +0 -0
- package/dist/fonts/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhLsSUBw.ttf +0 -0
- package/dist/fonts/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhLsWUBw.ttf +0 -0
- package/dist/fonts/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhcMWUBw.ttf +0 -0
- package/dist/fonts/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhh8KUBw.ttf +0 -0
- package/dist/fonts/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhrsKUBw.ttf +0 -0
- package/dist/fonts/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhrsWUBw.ttf +0 -0
- package/dist/fonts/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhycKUBw.ttf +0 -0
- package/dist/homepage-distributor.d.ts +55 -0
- package/dist/homepage-distributor.js +68 -0
- package/dist/instagram-image-template.d.ts +9 -0
- package/dist/instagram-image-template.js +51 -0
- package/dist/live-program/main.d.ts +1 -0
- package/dist/live-program/main.js +10 -0
- package/dist/live-program-page/fifthbell/audio/pipes.ogg +0 -0
- package/dist/live-program-page/fifthbell/images/berlin.jpg +0 -0
- package/dist/live-program-page/fifthbell/images/fifthbell.png +0 -0
- package/dist/live-program-page/fifthbell/images/nyc.jpg +0 -0
- package/dist/live-program-page/fifthbell/images/nyse.jpg +0 -0
- package/dist/live-program-page/fifthbell/images/santiago.jpg +0 -0
- package/dist/live-program-page/fifthbell/images/seismograph.jpg +0 -0
- package/dist/live-program-page/fifthbell/images/tokyo.jpg +0 -0
- package/dist/live-program-page/index.html +16 -0
- package/dist/live-program-page/live-program.css +3 -0
- package/dist/live-program-page/live-program.js +76 -0
- package/dist/outlet-config.d.ts +29 -0
- package/dist/outlet-config.js +29 -0
- package/dist/renderer.browser.d.ts +2 -0
- package/dist/renderer.browser.js +132 -0
- package/dist/renderer.core.d.ts +9 -0
- package/dist/renderer.core.js +354 -0
- package/dist/renderer.d.ts +6 -0
- package/dist/renderer.js +4 -0
- package/dist/renderer.node.d.ts +16 -0
- package/dist/renderer.node.js +166 -0
- package/dist/types/canonical-article.d.ts +249 -0
- package/dist/types/canonical-article.js +236 -0
- package/dist/utils/sofascore.d.ts +3 -0
- package/dist/utils/sofascore.js +31 -0
- package/dist/version.d.ts +1 -0
- package/dist/version.js +4 -0
- package/package.json +89 -0
- package/src/partial-deps.json +53 -0
- package/src/styles/compiled.css +2 -0
- package/src/templates/layouts/404.hbs +5 -0
- package/src/templates/layouts/article-page.hbs +5 -0
- package/src/templates/layouts/category-page.hbs +5 -0
- package/src/templates/layouts/homepage.hbs +5 -0
- package/src/templates/layouts/link-in-bio.hbs +226 -0
- package/src/templates/layouts/live-story.hbs +5 -0
- package/src/templates/layouts/media-page.hbs +5 -0
- package/src/templates/layouts/search-page.hbs +5 -0
- package/src/templates/partials/blocks/audio.hbs +12 -0
- package/src/templates/partials/blocks/data-table.hbs +23 -0
- package/src/templates/partials/blocks/divider.hbs +1 -0
- package/src/templates/partials/blocks/heading.hbs +9 -0
- package/src/templates/partials/blocks/image.hbs +6 -0
- package/src/templates/partials/blocks/info-box.hbs +8 -0
- package/src/templates/partials/blocks/instagram.hbs +28 -0
- package/src/templates/partials/blocks/key-points.hbs +8 -0
- package/src/templates/partials/blocks/list.hbs +13 -0
- package/src/templates/partials/blocks/live-update.hbs +24 -0
- package/src/templates/partials/blocks/pull-quote.hbs +6 -0
- package/src/templates/partials/blocks/rich-text.hbs +1 -0
- package/src/templates/partials/blocks/tiktok.hbs +15 -0
- package/src/templates/partials/blocks/x.hbs +74 -0
- package/src/templates/partials/blocks/youtube.hbs +12 -0
- package/src/templates/partials/components/article-main.hbs +159 -0
- package/src/templates/partials/components/breaking-news/live-updates-column.hbs +29 -0
- package/src/templates/partials/components/breaking-news.hbs +56 -0
- package/src/templates/partials/components/category/header.hbs +5 -0
- package/src/templates/partials/components/category/main-grid.hbs +55 -0
- package/src/templates/partials/components/category/main.hbs +7 -0
- package/src/templates/partials/components/category/more-grid.hbs +26 -0
- package/src/templates/partials/components/editorial-hero.hbs +73 -0
- package/src/templates/partials/components/headline.hbs +15 -0
- package/src/templates/partials/components/hero-editorial.hbs +1 -0
- package/src/templates/partials/components/hero.hbs +1 -0
- package/src/templates/partials/components/home/landing.hbs +111 -0
- package/src/templates/partials/components/home/main.hbs +63 -0
- package/src/templates/partials/components/home/more-stories.hbs +23 -0
- package/src/templates/partials/components/home/must-read.hbs +77 -0
- package/src/templates/partials/components/live-story/main.hbs +229 -0
- package/src/templates/partials/components/media/main.hbs +220 -0
- package/src/templates/partials/components/not-found/main.hbs +28 -0
- package/src/templates/partials/components/search/main.hbs +420 -0
- package/src/templates/partials/components/snack.hbs +92 -0
- package/src/templates/partials/components/spotlight-hero.hbs +59 -0
- package/src/templates/partials/components/trending.hbs +14 -0
- package/src/templates/partials/components/ui/accordion.hbs +30 -0
- package/src/templates/partials/components/ui/breadcrumb.hbs +16 -0
- package/src/templates/partials/components/ui/icon-button.hbs +19 -0
- package/src/templates/partials/components/ui/loading-spinner.hbs +27 -0
- package/src/templates/partials/components/ui/pagination.hbs +56 -0
- package/src/templates/partials/components/ui/scroll-area.hbs +12 -0
- package/src/templates/partials/components/ui/status-badge.hbs +21 -0
- package/src/templates/partials/footers/footer-full.hbs +79 -0
- package/src/templates/partials/footers/footer-minimal.hbs +5 -0
- package/src/templates/partials/headers/header-main.hbs +400 -0
- package/src/templates/partials/headers/header-minimal.hbs +16 -0
- package/src/templates/partials/nav/nav-categories.hbs +5 -0
- package/src/templates/partials/shell/doc-end.hbs +282 -0
- package/src/templates/partials/shell/doc-start-404.hbs +41 -0
- package/src/templates/partials/shell/doc-start-standard.hbs +86 -0
- package/src/templates/templates/instagram-image.hbs +175 -0
|
@@ -0,0 +1,282 @@
|
|
|
1
|
+
</div>
|
|
2
|
+
<script>
|
|
3
|
+
(function () {
|
|
4
|
+
function getLocale() {
|
|
5
|
+
var lang = document.documentElement.getAttribute('lang') || 'en';
|
|
6
|
+
if (lang === 'es') return 'es';
|
|
7
|
+
if (lang === 'it') return 'it';
|
|
8
|
+
return 'en';
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
function formatRelativeTimestamp(isoString) {
|
|
12
|
+
if (!isoString) return '';
|
|
13
|
+
|
|
14
|
+
var date = new Date(isoString);
|
|
15
|
+
if (Number.isNaN(date.getTime())) return '';
|
|
16
|
+
|
|
17
|
+
var locale = getLocale();
|
|
18
|
+
var rtf = new Intl.RelativeTimeFormat(locale, { numeric: 'auto' });
|
|
19
|
+
var diffMs = Date.now() - date.getTime();
|
|
20
|
+
var diffMinutes = Math.max(1, Math.floor(diffMs / 60000));
|
|
21
|
+
|
|
22
|
+
if (diffMinutes < 60) {
|
|
23
|
+
return rtf.format(-diffMinutes, 'minute');
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
var diffHours = Math.max(1, Math.floor(diffMinutes / 60));
|
|
27
|
+
if (diffHours < 24) {
|
|
28
|
+
return rtf.format(-diffHours, 'hour');
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
var diffDays = Math.max(1, Math.floor(diffHours / 24));
|
|
32
|
+
return rtf.format(-diffDays, 'day');
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
function hydrateRelativeTimes(root) {
|
|
36
|
+
var scope = root || document;
|
|
37
|
+
var timestamps = scope.querySelectorAll('.article-time[data-timestamp]');
|
|
38
|
+
|
|
39
|
+
timestamps.forEach(function (node) {
|
|
40
|
+
var isoString = node.getAttribute('data-timestamp');
|
|
41
|
+
var formatted = formatRelativeTimestamp(isoString);
|
|
42
|
+
if (formatted) {
|
|
43
|
+
node.textContent = formatted;
|
|
44
|
+
}
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
window.__brokawHydrateRelativeTimes = hydrateRelativeTimes;
|
|
49
|
+
|
|
50
|
+
function initRelativeTimes() {
|
|
51
|
+
hydrateRelativeTimes(document);
|
|
52
|
+
window.setInterval(function () {
|
|
53
|
+
hydrateRelativeTimes(document);
|
|
54
|
+
}, 60000);
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
if (document.readyState === 'loading') {
|
|
58
|
+
document.addEventListener('DOMContentLoaded', initRelativeTimes);
|
|
59
|
+
} else {
|
|
60
|
+
initRelativeTimes();
|
|
61
|
+
}
|
|
62
|
+
})();
|
|
63
|
+
</script>
|
|
64
|
+
<script>
|
|
65
|
+
(function () {
|
|
66
|
+
function setSlideState(slides, dots, index) {
|
|
67
|
+
slides.forEach(function (slide, slideIndex) {
|
|
68
|
+
var active = slideIndex === index;
|
|
69
|
+
var wasActive = slide.classList.contains('active');
|
|
70
|
+
|
|
71
|
+
if (active) {
|
|
72
|
+
slide.classList.remove('hidden');
|
|
73
|
+
slide.classList.add('active');
|
|
74
|
+
slide.classList.remove('pointer-events-none');
|
|
75
|
+
|
|
76
|
+
if (!wasActive) {
|
|
77
|
+
slide.classList.remove('opacity-100');
|
|
78
|
+
slide.classList.add('opacity-0');
|
|
79
|
+
window.requestAnimationFrame(function () {
|
|
80
|
+
slide.classList.remove('opacity-0');
|
|
81
|
+
slide.classList.add('opacity-100');
|
|
82
|
+
});
|
|
83
|
+
} else {
|
|
84
|
+
slide.classList.remove('opacity-0');
|
|
85
|
+
slide.classList.add('opacity-100');
|
|
86
|
+
}
|
|
87
|
+
} else {
|
|
88
|
+
slide.classList.remove('active');
|
|
89
|
+
slide.classList.remove('opacity-100');
|
|
90
|
+
slide.classList.add('opacity-0');
|
|
91
|
+
slide.classList.add('hidden');
|
|
92
|
+
slide.classList.add('pointer-events-none');
|
|
93
|
+
}
|
|
94
|
+
});
|
|
95
|
+
dots.forEach(function (dot, dotIndex) {
|
|
96
|
+
dot.classList.toggle('active', dotIndex === index);
|
|
97
|
+
});
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
function initCarousels(root) {
|
|
101
|
+
var scopes = (root || document).querySelectorAll('[data-carousel]');
|
|
102
|
+
scopes.forEach(function (scope) {
|
|
103
|
+
if (scope.dataset.carouselBound === 'true') return;
|
|
104
|
+
|
|
105
|
+
var slides = Array.prototype.slice.call(scope.querySelectorAll('.carousel-slide'));
|
|
106
|
+
if (slides.length === 0) {
|
|
107
|
+
scope.dataset.carouselBound = 'true';
|
|
108
|
+
return;
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
var dots = Array.prototype.slice.call(scope.querySelectorAll('.carousel-dot'));
|
|
112
|
+
var nextButton = scope.querySelector('.carousel-next');
|
|
113
|
+
var activeIndex = slides.findIndex(function (slide) {
|
|
114
|
+
return slide.classList.contains('active');
|
|
115
|
+
});
|
|
116
|
+
var currentIndex = activeIndex >= 0 ? activeIndex : 0;
|
|
117
|
+
var timer = null;
|
|
118
|
+
|
|
119
|
+
function clearTimer() {
|
|
120
|
+
if (timer === null) return;
|
|
121
|
+
window.clearInterval(timer);
|
|
122
|
+
timer = null;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
function startTimer() {
|
|
126
|
+
clearTimer();
|
|
127
|
+
if (slides.length < 2) return;
|
|
128
|
+
|
|
129
|
+
timer = window.setInterval(function () {
|
|
130
|
+
if (!document.contains(scope)) {
|
|
131
|
+
clearTimer();
|
|
132
|
+
return;
|
|
133
|
+
}
|
|
134
|
+
currentIndex = (currentIndex + 1) % slides.length;
|
|
135
|
+
setSlideState(slides, dots, currentIndex);
|
|
136
|
+
}, 6000);
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
function goToSlide(nextIndex) {
|
|
140
|
+
currentIndex = nextIndex;
|
|
141
|
+
setSlideState(slides, dots, currentIndex);
|
|
142
|
+
startTimer();
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
dots.forEach(function (dot, dotIndex) {
|
|
146
|
+
dot.addEventListener('click', function () {
|
|
147
|
+
goToSlide(dotIndex);
|
|
148
|
+
});
|
|
149
|
+
});
|
|
150
|
+
|
|
151
|
+
if (nextButton) {
|
|
152
|
+
nextButton.addEventListener('click', function () {
|
|
153
|
+
goToSlide((currentIndex + 1) % slides.length);
|
|
154
|
+
});
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
scope.addEventListener('mouseenter', clearTimer);
|
|
158
|
+
scope.addEventListener('mouseleave', startTimer);
|
|
159
|
+
|
|
160
|
+
setSlideState(slides, dots, currentIndex);
|
|
161
|
+
startTimer();
|
|
162
|
+
scope.dataset.carouselBound = 'true';
|
|
163
|
+
});
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
window.__brokawInitCarousels = initCarousels;
|
|
167
|
+
if (document.readyState === 'loading') {
|
|
168
|
+
document.addEventListener('DOMContentLoaded', function () {
|
|
169
|
+
initCarousels(document);
|
|
170
|
+
});
|
|
171
|
+
} else {
|
|
172
|
+
initCarousels(document);
|
|
173
|
+
}
|
|
174
|
+
})();
|
|
175
|
+
</script>
|
|
176
|
+
<script>
|
|
177
|
+
(function () {
|
|
178
|
+
var WIDGET_HOST = 'widgets.sofascore.com';
|
|
179
|
+
var WIDGET_PATH = '/embed/attackMomentum';
|
|
180
|
+
|
|
181
|
+
function getWidgetTheme() {
|
|
182
|
+
return document.documentElement.classList.contains('dark') ? 'dark' : 'light';
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
function updateSofascoreIframe(iframe, theme) {
|
|
186
|
+
if (!(iframe instanceof HTMLIFrameElement)) return;
|
|
187
|
+
var src = iframe.getAttribute('src');
|
|
188
|
+
if (!src) return;
|
|
189
|
+
|
|
190
|
+
try {
|
|
191
|
+
var url = new URL(src, window.location.origin);
|
|
192
|
+
if (url.hostname !== WIDGET_HOST) return;
|
|
193
|
+
if (!url.pathname.includes(WIDGET_PATH)) return;
|
|
194
|
+
|
|
195
|
+
if (url.searchParams.get('widgetTheme') === theme) return;
|
|
196
|
+
|
|
197
|
+
url.searchParams.set('widgetTheme', theme);
|
|
198
|
+
iframe.setAttribute('src', url.toString());
|
|
199
|
+
} catch (_error) {
|
|
200
|
+
// Ignore malformed iframe src values.
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
function syncSofascoreTheme() {
|
|
205
|
+
var theme = getWidgetTheme();
|
|
206
|
+
var iframes = document.querySelectorAll('iframe[src*="widgets.sofascore.com/embed/attackMomentum"]');
|
|
207
|
+
iframes.forEach(function (iframe) {
|
|
208
|
+
updateSofascoreIframe(iframe, theme);
|
|
209
|
+
});
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
if (document.readyState === 'loading') {
|
|
213
|
+
document.addEventListener('DOMContentLoaded', syncSofascoreTheme);
|
|
214
|
+
} else {
|
|
215
|
+
syncSofascoreTheme();
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
var observer = new MutationObserver(function () {
|
|
219
|
+
syncSofascoreTheme();
|
|
220
|
+
});
|
|
221
|
+
observer.observe(document.documentElement, {
|
|
222
|
+
attributes: true,
|
|
223
|
+
attributeFilter: ['class'],
|
|
224
|
+
});
|
|
225
|
+
})();
|
|
226
|
+
</script>
|
|
227
|
+
<script>
|
|
228
|
+
(function () {
|
|
229
|
+
if (typeof gtag !== 'function') return;
|
|
230
|
+
|
|
231
|
+
/**
|
|
232
|
+
* Scroll depth tracking
|
|
233
|
+
* Tracks when users scroll to certain percentages of the page.
|
|
234
|
+
*/
|
|
235
|
+
var scrollMilestones = [25, 50, 75, 100];
|
|
236
|
+
var scrollReached = {};
|
|
237
|
+
|
|
238
|
+
function checkScrollDepth() {
|
|
239
|
+
var scrolled = window.scrollY || document.documentElement.scrollTop;
|
|
240
|
+
var docHeight = document.documentElement.scrollHeight - window.innerHeight;
|
|
241
|
+
if (docHeight <= 0) return;
|
|
242
|
+
var pct = Math.min(100, Math.round((scrolled / docHeight) * 100));
|
|
243
|
+
for (var i = 0; i < scrollMilestones.length; i++) {
|
|
244
|
+
var milestone = scrollMilestones[i];
|
|
245
|
+
if (!scrollReached[milestone] && pct >= milestone) {
|
|
246
|
+
scrollReached[milestone] = true;
|
|
247
|
+
gtag('event', 'scroll_depth', { percent_scrolled: milestone });
|
|
248
|
+
}
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
|
|
252
|
+
window.addEventListener('scroll', checkScrollDepth, { passive: true });
|
|
253
|
+
checkScrollDepth();
|
|
254
|
+
|
|
255
|
+
/**
|
|
256
|
+
* Outbound link click tracking
|
|
257
|
+
* Tracks clicks on links that navigate away from the current site.
|
|
258
|
+
*/
|
|
259
|
+
document.addEventListener('click', function (e) {
|
|
260
|
+
var target = e.target;
|
|
261
|
+
while (target && target.tagName !== 'A') {
|
|
262
|
+
target = target.parentElement;
|
|
263
|
+
}
|
|
264
|
+
if (!target) return;
|
|
265
|
+
var href = target.getAttribute('href');
|
|
266
|
+
if (!href || href.charAt(0) === '#' || href.indexOf('mailto:') === 0 || href.indexOf('tel:') === 0) return;
|
|
267
|
+
try {
|
|
268
|
+
var url = new URL(href, window.location.href);
|
|
269
|
+
if (url.hostname && url.hostname !== window.location.hostname) {
|
|
270
|
+
gtag('event', 'outbound_click', {
|
|
271
|
+
link_url: url.href,
|
|
272
|
+
link_domain: url.hostname,
|
|
273
|
+
link_text: (target.textContent || '').trim().slice(0, 100),
|
|
274
|
+
transport_type: 'beacon'
|
|
275
|
+
});
|
|
276
|
+
}
|
|
277
|
+
} catch (_) {}
|
|
278
|
+
});
|
|
279
|
+
})();
|
|
280
|
+
</script>
|
|
281
|
+
</body>
|
|
282
|
+
</html>
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang='{{language}}'>
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset='UTF-8' />
|
|
5
|
+
<meta name='viewport' content='width=device-width, initial-scale=1' />
|
|
6
|
+
<link rel='preload' as='style' href='https://cdn.fifthbell.com/content/fonts/fonts.css' onload="this.rel='stylesheet';this.media='all'" />
|
|
7
|
+
<noscript><link href='https://cdn.fifthbell.com/content/fonts/fonts.css' rel='stylesheet' /></noscript>
|
|
8
|
+
<meta name='description' content='{{#if seo.metaDescription}}{{seo.metaDescription}}{{else}}Page not found{{/if}}' />
|
|
9
|
+
<link rel='canonical' href='{{canonicalUrl}}' />
|
|
10
|
+
<title>{{#if seo.metaTitle}}{{seo.metaTitle}}{{else}}404 - Page Not Found | fifthbell{{/if}}</title>
|
|
11
|
+
<style>{{{styles}}}</style>
|
|
12
|
+
{{#if rumConfig}}
|
|
13
|
+
<script>
|
|
14
|
+
(function(n,i,v,r,s,c,u,x,z){
|
|
15
|
+
x=window;z=x[s]=x[s]||function(){z.q.push(arguments)};z.q=[];u=i.createElement(v);
|
|
16
|
+
u.async=1;u.src=r;u.setAttribute('crossorigin','');i.head.appendChild(u);
|
|
17
|
+
})(window,document,'script','https://rum.aws.amazon.com/loader.js','RUM');
|
|
18
|
+
RUM('create', {{{jsonString rumConfig.appMonitorName}}}, {
|
|
19
|
+
identityPoolId: {{{jsonString rumConfig.identityPoolId}}},
|
|
20
|
+
guestRoleArn: {{{jsonString rumConfig.guestRoleArn}}},
|
|
21
|
+
sessionSampleRate: 1,
|
|
22
|
+
endpoint: {{{jsonString 'https://dataplane.rum.us-east-1.amazonaws.com'}}},
|
|
23
|
+
telemetries: ['performance', 'errors', 'http'],
|
|
24
|
+
allowCookies: true
|
|
25
|
+
});
|
|
26
|
+
</script>
|
|
27
|
+
{{/if}}
|
|
28
|
+
{{#if gaConfig}}
|
|
29
|
+
<script async src='https://www.googletagmanager.com/gtag/js?id={{{gaConfig.measurementId}}}'></script>
|
|
30
|
+
<script>
|
|
31
|
+
window.dataLayer = window.dataLayer || [];
|
|
32
|
+
function gtag(){dataLayer.push(arguments);}
|
|
33
|
+
gtag('js', new Date());
|
|
34
|
+
gtag('config', {{{jsonString gaConfig.measurementId}}}, {
|
|
35
|
+
content_group: '404'
|
|
36
|
+
});
|
|
37
|
+
</script>
|
|
38
|
+
{{/if}}
|
|
39
|
+
</head>
|
|
40
|
+
<body class='bg-white dark:bg-slate-950 text-slate-900 dark:text-slate-100 transition-colors'>
|
|
41
|
+
<div class='min-h-screen flex flex-col'>
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang='{{language}}'{{#if mourningMode}} class='dark'{{/if}}>
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset='UTF-8' />
|
|
5
|
+
<meta name='viewport' content='width=device-width, initial-scale=1' />
|
|
6
|
+
<link href='https://cdn.fifthbell.com/content/fonts/fonts.css' rel='stylesheet' />
|
|
7
|
+
{{#if (eq layout 'homepage')}}
|
|
8
|
+
{{#if hero.url}}
|
|
9
|
+
<link rel='preload' as='image' href='{{hero.url}}' fetchpriority='high' />
|
|
10
|
+
{{/if}}
|
|
11
|
+
{{else}}
|
|
12
|
+
{{#if featuredImage.url}}
|
|
13
|
+
<link rel='preload' as='image' href='{{featuredImage.url}}' fetchpriority='high' />
|
|
14
|
+
{{/if}}
|
|
15
|
+
{{/if}}
|
|
16
|
+
<meta name='description' content='{{#if seo.metaDescription}}{{seo.metaDescription}}{{else if excerpt}}{{excerpt}}{{else}}{{resolveHeadTitle this}}{{/if}}' />
|
|
17
|
+
<link rel='canonical' href='{{canonicalUrl}}' />
|
|
18
|
+
<meta property='og:title' content='{{resolveHeadTitle this}}' />
|
|
19
|
+
<meta property='og:description' content='{{#if seo.metaDescription}}{{seo.metaDescription}}{{else}}{{excerpt}}{{/if}}' />
|
|
20
|
+
<meta property='og:url' content='{{canonicalUrl}}' />
|
|
21
|
+
<meta property='og:site_name' content='fifthbell' />
|
|
22
|
+
{{#if (eq layout 'article-page')}}
|
|
23
|
+
<meta property='og:type' content='article' />
|
|
24
|
+
{{else}}
|
|
25
|
+
<meta property='og:type' content='website' />
|
|
26
|
+
{{/if}}
|
|
27
|
+
{{#with (socialImageUrl (coalesce seo.ogImage featuredImage.url)) as |socialImage|}}
|
|
28
|
+
{{#if socialImage}}
|
|
29
|
+
<meta property='og:image' content='{{socialImage}}' />
|
|
30
|
+
<meta property='og:image:type' content='image/jpeg' />
|
|
31
|
+
<meta property='og:image:width' content='1200' />
|
|
32
|
+
<meta property='og:image:height' content='630' />
|
|
33
|
+
<meta property='og:image:alt' content='{{#if featuredImage.alt}}{{featuredImage.alt}}{{else}}{{resolveHeadTitle this}}{{/if}}' />
|
|
34
|
+
{{/if}}
|
|
35
|
+
<meta name='twitter:card' content='{{#if socialImage}}summary_large_image{{else}}summary{{/if}}' />
|
|
36
|
+
{{#if socialImage}}
|
|
37
|
+
<meta name='twitter:image' content='{{socialImage}}' />
|
|
38
|
+
<meta name='twitter:image:src' content='{{socialImage}}' />
|
|
39
|
+
<meta name='twitter:image:alt' content='{{#if featuredImage.alt}}{{featuredImage.alt}}{{else}}{{resolveHeadTitle this}}{{/if}}' />
|
|
40
|
+
{{/if}}
|
|
41
|
+
{{/with}}
|
|
42
|
+
<meta name='twitter:site' content='@thisisfifthbell' />
|
|
43
|
+
<meta name='twitter:title' content='{{resolveHeadTitle this}}' />
|
|
44
|
+
<meta name='twitter:description' content='{{#if seo.metaDescription}}{{seo.metaDescription}}{{else}}{{excerpt}}{{/if}}' />
|
|
45
|
+
<title>{{resolveHeadTitle this}}</title>
|
|
46
|
+
<style>{{{styles}}}</style>
|
|
47
|
+
{{#if rumConfig}}
|
|
48
|
+
<script>
|
|
49
|
+
(function(n,i,v,r,s,c,u,x,z){
|
|
50
|
+
x=window;z=x[s]=x[s]||function(){z.q.push(arguments)};z.q=[];u=i.createElement(v);
|
|
51
|
+
u.async=1;u.src=r;u.setAttribute('crossorigin','');i.head.appendChild(u);
|
|
52
|
+
})(window,document,'script','https://rum.aws.amazon.com/loader.js','RUM');
|
|
53
|
+
RUM('create', {{{jsonString rumConfig.appMonitorName}}}, {
|
|
54
|
+
identityPoolId: {{{jsonString rumConfig.identityPoolId}}},
|
|
55
|
+
guestRoleArn: {{{jsonString rumConfig.guestRoleArn}}},
|
|
56
|
+
sessionSampleRate: 1,
|
|
57
|
+
endpoint: {{{jsonString 'https://dataplane.rum.us-east-1.amazonaws.com'}}},
|
|
58
|
+
telemetries: ['performance', 'errors', 'http'],
|
|
59
|
+
allowCookies: true
|
|
60
|
+
});
|
|
61
|
+
</script>
|
|
62
|
+
{{/if}}
|
|
63
|
+
{{#if gaConfig}}
|
|
64
|
+
<script async src='https://www.googletagmanager.com/gtag/js?id={{{gaConfig.measurementId}}}'></script>
|
|
65
|
+
<script>
|
|
66
|
+
window.dataLayer = window.dataLayer || [];
|
|
67
|
+
function gtag(){dataLayer.push(arguments);}
|
|
68
|
+
gtag('js', new Date());
|
|
69
|
+
gtag('config', {{{jsonString gaConfig.measurementId}}}, {
|
|
70
|
+
content_group: {{{jsonString layout}}}
|
|
71
|
+
});
|
|
72
|
+
gtag('event', 'page_metadata', {
|
|
73
|
+
content_type: {{{jsonString layout}}},
|
|
74
|
+
content_id: {{{jsonString id}}},
|
|
75
|
+
content_language: {{{jsonString language}}},
|
|
76
|
+
author_name: {{{jsonString authors.[0].name}}},
|
|
77
|
+
author_slug: {{{jsonString authors.[0].slug}}},
|
|
78
|
+
category_name: {{{jsonString categories.[0].name}}},
|
|
79
|
+
category_slug: {{{jsonString categories.[0].slug}}},
|
|
80
|
+
published_at: {{{jsonString publishedAt}}}
|
|
81
|
+
});
|
|
82
|
+
</script>
|
|
83
|
+
{{/if}}
|
|
84
|
+
</head>
|
|
85
|
+
<body class='bg-white dark:bg-slate-950 text-slate-900 dark:text-slate-100 transition-colors'>
|
|
86
|
+
<div class='min-h-screen flex flex-col'>
|
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8" />
|
|
5
|
+
<meta name="viewport" content="width=1080, initial-scale=1.0" />
|
|
6
|
+
<link href="https://cdn.fifthbell.com/content/fonts/fonts.css" rel="stylesheet">
|
|
7
|
+
<style>
|
|
8
|
+
* { margin: 0; padding: 0; box-sizing: border-box; }
|
|
9
|
+
body {
|
|
10
|
+
width: 1080px;
|
|
11
|
+
height: 1350px;
|
|
12
|
+
overflow: hidden;
|
|
13
|
+
background-color: #000;
|
|
14
|
+
position: relative;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
.hero-image {
|
|
18
|
+
position: absolute;
|
|
19
|
+
inset: 0;
|
|
20
|
+
height: 100%;
|
|
21
|
+
background-color: #000;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
.hero-image img {
|
|
25
|
+
width: 100%;
|
|
26
|
+
height: 100%;
|
|
27
|
+
object-fit: cover;
|
|
28
|
+
opacity: 0.9;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
.card-container {
|
|
32
|
+
position: absolute;
|
|
33
|
+
left: 0;
|
|
34
|
+
right: 0;
|
|
35
|
+
bottom: 0;
|
|
36
|
+
display: flex;
|
|
37
|
+
flex-direction: column;
|
|
38
|
+
z-index: 10;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
.card-container header {
|
|
42
|
+
display: flex;
|
|
43
|
+
align-items: center;
|
|
44
|
+
background-color: rgba(0, 0, 0, 0.70);
|
|
45
|
+
backdrop-filter: blur(8px);
|
|
46
|
+
-webkit-backdrop-filter: blur(8px);
|
|
47
|
+
position: relative;
|
|
48
|
+
z-index: 1;
|
|
49
|
+
box-shadow: 0 8px 24px rgba(0, 0, 0, 0.6);
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
.card-container header .category-label {
|
|
53
|
+
margin-left: 32px;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
.logo-container {
|
|
57
|
+
display: flex;
|
|
58
|
+
align-items: center;
|
|
59
|
+
justify-content: flex-start;
|
|
60
|
+
padding: 0 32px;
|
|
61
|
+
background-color: #b21100;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
.brand-logo {
|
|
65
|
+
display: flex;
|
|
66
|
+
align-items: center;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
.qr-container {
|
|
70
|
+
display: flex;
|
|
71
|
+
align-items: center;
|
|
72
|
+
justify-content: center;
|
|
73
|
+
padding: 0 16px;
|
|
74
|
+
background-color: #ffffff;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
.qr-code {
|
|
78
|
+
width: 119px;
|
|
79
|
+
height: 119px;
|
|
80
|
+
padding: 10px;
|
|
81
|
+
display: flex;
|
|
82
|
+
justify-content: center;
|
|
83
|
+
align-items: center;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
.qr-code svg {
|
|
87
|
+
width: 100%;
|
|
88
|
+
height: 100%;
|
|
89
|
+
display: block;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
.card-container main {
|
|
93
|
+
display: flex;
|
|
94
|
+
flex-direction: column;
|
|
95
|
+
background-color: rgba(0, 0, 0, 0.35);
|
|
96
|
+
backdrop-filter: blur(16px);
|
|
97
|
+
-webkit-backdrop-filter: blur(16px);
|
|
98
|
+
padding: 110px;
|
|
99
|
+
padding-top: 36px;
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
.accent-bar {
|
|
103
|
+
width: 64px;
|
|
104
|
+
height: 6px;
|
|
105
|
+
background-color: #b21100;
|
|
106
|
+
margin-bottom: 24px;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
.category-label {
|
|
110
|
+
font-family: 'Encode Sans Condensed', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
|
|
111
|
+
font-size: 80px;
|
|
112
|
+
line-height: 119px;
|
|
113
|
+
font-weight: 600;
|
|
114
|
+
color: #ffffff;
|
|
115
|
+
text-transform: uppercase;
|
|
116
|
+
letter-spacing: 0.02em;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
.title-text {
|
|
120
|
+
font-family: 'Encode Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
|
|
121
|
+
font-size: 68px;
|
|
122
|
+
line-height: 1.1;
|
|
123
|
+
font-weight: 700;
|
|
124
|
+
color: #ffffff;
|
|
125
|
+
text-wrap: balance;
|
|
126
|
+
display: -webkit-box;
|
|
127
|
+
-webkit-line-clamp: 5;
|
|
128
|
+
-webkit-box-orient: vertical;
|
|
129
|
+
overflow: hidden;
|
|
130
|
+
}
|
|
131
|
+
</style>
|
|
132
|
+
</head>
|
|
133
|
+
<body>
|
|
134
|
+
<div class="hero-image">
|
|
135
|
+
<img src="{{imageUrl}}" alt="Featured Image" />
|
|
136
|
+
</div>
|
|
137
|
+
|
|
138
|
+
<div class="card-container">
|
|
139
|
+
<header>
|
|
140
|
+
<div class="logo-container">
|
|
141
|
+
<div class="brand-logo" style="color: white; width: 140px; height: 119px; display: flex; align-items: center; justify-content: end;">
|
|
142
|
+
<svg width="61" height="61" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
|
|
143
|
+
<path d="M10.268 21a2 2 0 0 0 3.464 0"></path>
|
|
144
|
+
<path d="M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326"></path>
|
|
145
|
+
<path d="M4 2C2.8 3.7 2 5.7 2 8"></path>
|
|
146
|
+
<path d="M22 8a10 10 0 0 0-2-6"></path>
|
|
147
|
+
</svg>
|
|
148
|
+
</div>
|
|
149
|
+
</div>
|
|
150
|
+
{{#if qrCodeHtml}}
|
|
151
|
+
{{{qrCodeHtml}}}
|
|
152
|
+
{{else if url}}
|
|
153
|
+
{{{instagramQrCode url}}}
|
|
154
|
+
{{/if}}
|
|
155
|
+
<div class="category-label">{{categoryName}}</div>
|
|
156
|
+
</header>
|
|
157
|
+
<main>
|
|
158
|
+
<div class="accent-bar"></div>
|
|
159
|
+
<h1 class="title-text">{{title}}</h1>
|
|
160
|
+
</main>
|
|
161
|
+
</div>
|
|
162
|
+
|
|
163
|
+
<script>
|
|
164
|
+
window.onload = () => {
|
|
165
|
+
if (document.fonts) {
|
|
166
|
+
document.fonts.ready.then(() => {
|
|
167
|
+
setTimeout(() => { document.body.setAttribute('data-ready', '1'); }, 300);
|
|
168
|
+
});
|
|
169
|
+
} else {
|
|
170
|
+
setTimeout(() => { document.body.setAttribute('data-ready', '1'); }, 1000);
|
|
171
|
+
}
|
|
172
|
+
};
|
|
173
|
+
</script>
|
|
174
|
+
</body>
|
|
175
|
+
</html>
|