@fifthbell/brokaw 0.1.50 → 0.1.52
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/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/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/live-program-page/live-program.css +1 -1
- package/dist/renderer.core.js +1 -0
- package/dist/renderer.d.ts +2 -2
- package/dist/renderer.js +1 -1
- package/dist/renderer.node.d.ts +6 -0
- package/dist/renderer.node.js +33 -0
- package/package.json +2 -2
- package/src/styles/compiled.css +1 -1
- package/src/templates/layouts/link-in-bio.hbs +1 -3
- package/src/templates/partials/blocks/key-points.hbs +1 -1
- package/src/templates/partials/blocks/live-update.hbs +1 -1
- package/src/templates/partials/components/article-main.hbs +2 -2
- package/src/templates/partials/components/breaking-news.hbs +1 -1
- package/src/templates/partials/components/category/main-grid.hbs +2 -2
- package/src/templates/partials/components/category/more-grid.hbs +1 -1
- package/src/templates/partials/components/editorial-hero.hbs +5 -5
- package/src/templates/partials/components/headline.hbs +5 -5
- package/src/templates/partials/components/home/landing.hbs +2 -2
- package/src/templates/partials/components/home/must-read.hbs +3 -3
- package/src/templates/partials/components/live-story/main.hbs +1 -1
- package/src/templates/partials/components/media/main.hbs +4 -4
- package/src/templates/partials/components/not-found/main.hbs +2 -2
- package/src/templates/partials/components/search/main.hbs +2 -2
- package/src/templates/partials/components/snack.hbs +5 -5
- package/src/templates/partials/components/spotlight-hero.hbs +3 -3
- package/src/templates/partials/components/trending.hbs +1 -1
- package/src/templates/partials/components/ui/accordion.hbs +1 -1
- package/src/templates/partials/components/ui/breadcrumb.hbs +1 -1
- package/src/templates/partials/components/ui/icon-button.hbs +2 -2
- package/src/templates/partials/components/ui/loading-spinner.hbs +3 -3
- package/src/templates/partials/components/ui/pagination.hbs +4 -4
- package/src/templates/partials/headers/header-main.hbs +6 -6
- package/src/templates/partials/nav/nav-categories.hbs +1 -1
- package/src/templates/partials/shell/doc-start-404.hbs +1 -6
- package/src/templates/partials/shell/doc-start-standard.hbs +10 -9
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{{#*inline 'snackMetaImageRow'}}
|
|
2
2
|
{{#if category}}
|
|
3
3
|
<div class='w-full flex items-center justify-between {{#if metaTextSize}}{{metaTextSize}}{{else}}text-xs{{/if}} mb-2'>
|
|
4
|
-
<span class='text-[#
|
|
4
|
+
<span class='text-[#8f0d00] dark:text-[#ff2e1a] uppercase font-bold tracking-wider'>{{category}}</span>
|
|
5
5
|
{{#if readTime}}
|
|
6
6
|
<span class='article-time text-slate-500 dark:text-slate-400'>{{readTime}}</span>
|
|
7
7
|
{{/if}}
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
{{else if (lookup categories 0)}}
|
|
10
10
|
{{#with (lookup categories 0)}}
|
|
11
11
|
<div class='w-full flex items-center justify-between {{#if ../metaTextSize}}{{../metaTextSize}}{{else}}text-xs{{/if}} mb-2'>
|
|
12
|
-
<span class='text-[#
|
|
12
|
+
<span class='text-[#8f0d00] dark:text-[#ff2e1a] uppercase font-bold tracking-wider'>{{name}}</span>
|
|
13
13
|
{{#if ../readTime}}
|
|
14
14
|
<span class='article-time text-slate-500 dark:text-slate-400'>{{../readTime}}</span>
|
|
15
15
|
{{/if}}
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
{{#*inline 'snackMetaInline'}}
|
|
26
26
|
{{#if category}}
|
|
27
27
|
<div class='flex items-center {{#if metaTextSize}}{{metaTextSize}}{{else}}text-xs{{/if}} mb-2'>
|
|
28
|
-
<span class='text-[#
|
|
28
|
+
<span class='text-[#8f0d00] dark:text-[#ff2e1a] uppercase font-bold tracking-wider'>{{category}}</span>
|
|
29
29
|
{{#if readTime}}
|
|
30
30
|
<span class='mx-2 text-slate-400 dark:text-slate-500'>•</span>
|
|
31
31
|
<span class='article-time text-slate-500 dark:text-slate-400'>{{readTime}}</span>
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
{{else if (lookup categories 0)}}
|
|
35
35
|
{{#with (lookup categories 0)}}
|
|
36
36
|
<div class='flex items-center {{#if ../metaTextSize}}{{../metaTextSize}}{{else}}text-xs{{/if}} mb-2'>
|
|
37
|
-
<span class='text-[#
|
|
37
|
+
<span class='text-[#8f0d00] dark:text-[#ff2e1a] uppercase font-bold tracking-wider'>{{name}}</span>
|
|
38
38
|
{{#if ../readTime}}
|
|
39
39
|
<span class='mx-2 text-slate-400 dark:text-slate-500'>•</span>
|
|
40
40
|
<span class='article-time text-slate-500 dark:text-slate-400'>{{../readTime}}</span>
|
|
@@ -68,7 +68,7 @@
|
|
|
68
68
|
{{/if}}
|
|
69
69
|
|
|
70
70
|
<h3 class='{{#if titleFontWeight}}{{titleFontWeight}}{{else}}font-bold{{/if}} {{#if titleTextSize}}{{titleTextSize}}{{else}}text-lg{{/if}} leading-snug text-slate-900 dark:text-slate-100 {{#if titleClasses}}{{titleClasses}}{{else}}font-encode{{/if}}'>
|
|
71
|
-
<a href='{{url}}' class='hover:text-[#
|
|
71
|
+
<a href='{{url}}' class='hover:text-[#8f0d00] dark:hover:text-[#ff2e1a] transition-colors'>{{title}}</a>
|
|
72
72
|
</h3>
|
|
73
73
|
{{#unless (eq showExcerpt false)}}
|
|
74
74
|
{{#if excerpt}}
|
|
@@ -17,12 +17,12 @@
|
|
|
17
17
|
<div class='absolute right-0 top-20 flex items-center gap-4'>
|
|
18
18
|
{{#if slides}}
|
|
19
19
|
{{#each slides}}
|
|
20
|
-
<button class='carousel-dot w-3 h-3 rounded-full {{#if @first}}active{{/if}}' data-slide='{{@index}}'></button>
|
|
20
|
+
<button class='carousel-dot w-3 h-3 rounded-full {{#if @first}}active{{/if}}' data-slide='{{@index}}' aria-label='Go to slide {{add @index 1}}'></button>
|
|
21
21
|
{{/each}}
|
|
22
22
|
{{else}}
|
|
23
|
-
<button class='carousel-dot w-3 h-3 rounded-full active' data-slide='0'></button>
|
|
23
|
+
<button class='carousel-dot w-3 h-3 rounded-full active' data-slide='0' aria-label='Go to slide 1'></button>
|
|
24
24
|
{{/if}}
|
|
25
|
-
<button class='carousel-next w-10 h-10 flex items-center justify-center'>
|
|
25
|
+
<button class='carousel-next w-10 h-10 flex items-center justify-center' aria-label='Next slide'>
|
|
26
26
|
<svg width='15' height='27' viewBox='0 0 15 27' fill='none'>
|
|
27
27
|
<path d='M1.5 1.5L13.5 13.5L1.5 25.5' stroke='#FFFFFF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'></path>
|
|
28
28
|
</svg>
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
<article class='gap-1 flex items-center flex-none'>
|
|
4
4
|
<div class='flex flex-row items-center'>
|
|
5
5
|
<span class='h-2 w-2 rounded-full bg-[#b21100] mr-2'></span>
|
|
6
|
-
<span class='text-[#
|
|
6
|
+
<span class='text-[#8f0d00] font-medium mr-1'>En vivo</span>
|
|
7
7
|
</div>
|
|
8
8
|
<span class='text-[#121212]'>Clásico Universitario</span>
|
|
9
9
|
</article>
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
<span class='mt-1.5 text-sm text-slate-500 dark:text-slate-400'>{{subtitle}}</span>
|
|
9
9
|
{{/if}}
|
|
10
10
|
</span>
|
|
11
|
-
<span class='mt-1 shrink-0 text-slate-400 transition-transform duration-200 group-open:rotate-180 group-open:text-[#
|
|
11
|
+
<span class='mt-1 shrink-0 text-slate-400 transition-transform duration-200 group-open:rotate-180 group-open:text-[#8f0d00] dark:group-open:text-[#ff2e1a]' aria-hidden='true'>
|
|
12
12
|
<svg viewBox='0 0 20 20' fill='currentColor' class='h-5 w-5'>
|
|
13
13
|
<path fill-rule='evenodd' d='M5.23 7.21a.75.75 0 0 1 1.06.02L10 11.17l3.71-3.94a.75.75 0 1 1 1.08 1.04l-4.25 4.5a.75.75 0 0 1-1.08 0l-4.25-4.5a.75.75 0 0 1 .02-1.06Z' clip-rule='evenodd'></path>
|
|
14
14
|
</svg>
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
{{#if @last}}
|
|
6
6
|
<span aria-current='page' class='font-semibold text-slate-900 dark:text-slate-100 px-1.5'>{{label}}</span>
|
|
7
7
|
{{else}}
|
|
8
|
-
<a href='{{coalesce url href}}' class='px-1.5 text-slate-500 transition-colors hover:text-[#
|
|
8
|
+
<a href='{{coalesce url href}}' class='px-1.5 text-slate-500 transition-colors hover:text-[#8f0d00] dark:text-slate-400 dark:hover:text-[#ff2e1a]'>
|
|
9
9
|
{{label}}
|
|
10
10
|
</a>
|
|
11
11
|
<span class='text-slate-300 dark:text-slate-600 select-none font-light' aria-hidden='true'>/</span>
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{{#if href}}
|
|
2
2
|
<a
|
|
3
3
|
href='{{href}}'
|
|
4
|
-
class='inline-flex items-center justify-center rounded-full w-9 h-9 border border-slate-200 dark:border-slate-700 bg-white dark:bg-slate-900 text-slate-600 dark:text-slate-300 transition-colors hover:border-[#b21100] hover:text-[#
|
|
4
|
+
class='inline-flex items-center justify-center rounded-full w-9 h-9 border border-slate-200 dark:border-slate-700 bg-white dark:bg-slate-900 text-slate-600 dark:text-slate-300 transition-colors hover:border-[#b21100] hover:text-[#8f0d00] dark:hover:border-[#ff2e1a] dark:hover:text-[#ff2e1a] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[#b21100] {{#if className}}{{className}}{{/if}}'
|
|
5
5
|
{{#if title}}title='{{title}}'{{/if}}
|
|
6
6
|
{{#if ariaLabel}}aria-label='{{ariaLabel}}'{{/if}}
|
|
7
7
|
>
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
{{else}}
|
|
11
11
|
<button
|
|
12
12
|
type='{{coalesce type "button"}}'
|
|
13
|
-
class='inline-flex items-center justify-center rounded-full w-9 h-9 border border-slate-200 dark:border-slate-700 bg-white dark:bg-slate-900 text-slate-600 dark:text-slate-300 transition-colors hover:border-[#b21100] hover:text-[#
|
|
13
|
+
class='inline-flex items-center justify-center rounded-full w-9 h-9 border border-slate-200 dark:border-slate-700 bg-white dark:bg-slate-900 text-slate-600 dark:text-slate-300 transition-colors hover:border-[#b21100] hover:text-[#8f0d00] dark:hover:border-[#ff2e1a] dark:hover:text-[#ff2e1a] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[#b21100] {{#if className}}{{className}}{{/if}}'
|
|
14
14
|
{{#if title}}title='{{title}}'{{/if}}
|
|
15
15
|
{{#if ariaLabel}}aria-label='{{ariaLabel}}'{{/if}}
|
|
16
16
|
>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<div class='inline-flex items-center justify-center gap-2 {{#if className}}{{className}}{{/if}}' role='status' aria-live='polite'>
|
|
2
2
|
{{#if (eq size "sm")}}
|
|
3
|
-
<svg viewBox='0 0 24 24' class='h-4 w-4 text-[#
|
|
3
|
+
<svg viewBox='0 0 24 24' class='h-4 w-4 text-[#8f0d00] dark:text-[#ff2e1a]' fill='none' aria-hidden='true'>
|
|
4
4
|
<circle cx='12' cy='12' r='9' stroke='currentColor' stroke-width='2' opacity='0.15'/>
|
|
5
5
|
<circle cx='12' cy='12' r='9' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-dasharray='16 40' fill='none'>
|
|
6
6
|
<animateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='0.75s' repeatCount='indefinite'/>
|
|
@@ -8,14 +8,14 @@
|
|
|
8
8
|
</svg>
|
|
9
9
|
{{else}}
|
|
10
10
|
{{#if (eq size "lg")}}
|
|
11
|
-
<svg viewBox='0 0 24 24' class='h-12 w-12 text-[#
|
|
11
|
+
<svg viewBox='0 0 24 24' class='h-12 w-12 text-[#8f0d00] dark:text-[#ff2e1a]' fill='none' aria-hidden='true'>
|
|
12
12
|
<circle cx='12' cy='12' r='9' stroke='currentColor' stroke-width='2' opacity='0.15'/>
|
|
13
13
|
<circle cx='12' cy='12' r='9' stroke='currentColor' stroke-width='2.5' stroke-linecap='round' stroke-dasharray='20 36' fill='none'>
|
|
14
14
|
<animateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='0.75s' repeatCount='indefinite'/>
|
|
15
15
|
</circle>
|
|
16
16
|
</svg>
|
|
17
17
|
{{else}}
|
|
18
|
-
<svg viewBox='0 0 24 24' class='h-8 w-8 text-[#
|
|
18
|
+
<svg viewBox='0 0 24 24' class='h-8 w-8 text-[#8f0d00] dark:text-[#ff2e1a]' fill='none' aria-hidden='true'>
|
|
19
19
|
<circle cx='12' cy='12' r='9' stroke='currentColor' stroke-width='2' opacity='0.15'/>
|
|
20
20
|
<circle cx='12' cy='12' r='9' stroke='currentColor' stroke-width='2.25' stroke-linecap='round' stroke-dasharray='18 38' fill='none'>
|
|
21
21
|
<animateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='0.75s' repeatCount='indefinite'/>
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
{{#if prev.url}}
|
|
3
3
|
<a
|
|
4
4
|
href='{{prev.url}}'
|
|
5
|
-
class='inline-flex items-center gap-1 text-sm font-medium text-slate-500 dark:text-slate-400 transition-colors hover:text-[#
|
|
5
|
+
class='inline-flex items-center gap-1 text-sm font-medium text-slate-500 dark:text-slate-400 transition-colors hover:text-[#8f0d00] dark:hover:text-[#ff2e1a]'
|
|
6
6
|
aria-label='Previous page'
|
|
7
7
|
>
|
|
8
8
|
<svg viewBox='0 0 20 20' fill='currentColor' class='h-4 w-4' aria-hidden='true'><path fill-rule='evenodd' d='M11.78 5.22a.75.75 0 0 1 0 1.06L8.06 10l3.72 3.72a.75.75 0 1 1-1.06 1.06l-4.25-4.25a.75.75 0 0 1 0-1.06l4.25-4.25a.75.75 0 0 1 1.06 0Z' clip-rule='evenodd'/></svg>
|
|
@@ -22,13 +22,13 @@
|
|
|
22
22
|
<span class='inline-flex h-9 w-9 items-center justify-center text-sm text-slate-400 dark:text-slate-500'>…</span>
|
|
23
23
|
{{else}}
|
|
24
24
|
{{#if current}}
|
|
25
|
-
<span aria-current='page' class='inline-flex h-9 w-9 items-center justify-center text-sm font-bold text-[#
|
|
25
|
+
<span aria-current='page' class='inline-flex h-9 w-9 items-center justify-center text-sm font-bold text-[#8f0d00] dark:text-[#ff2e1a] border-b-2 border-[#b21100] dark:border-[#ff2e1a]'>
|
|
26
26
|
{{label}}
|
|
27
27
|
</span>
|
|
28
28
|
{{else}}
|
|
29
29
|
<a
|
|
30
30
|
href='{{url}}'
|
|
31
|
-
class='inline-flex h-9 w-9 items-center justify-center text-sm font-medium text-slate-600 dark:text-slate-300 transition-colors hover:text-[#
|
|
31
|
+
class='inline-flex h-9 w-9 items-center justify-center text-sm font-medium text-slate-600 dark:text-slate-300 transition-colors hover:text-[#8f0d00] dark:hover:text-[#ff2e1a]'
|
|
32
32
|
>
|
|
33
33
|
{{label}}
|
|
34
34
|
</a>
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
{{#if next.url}}
|
|
42
42
|
<a
|
|
43
43
|
href='{{next.url}}'
|
|
44
|
-
class='inline-flex items-center gap-1 text-sm font-medium text-slate-500 dark:text-slate-400 transition-colors hover:text-[#
|
|
44
|
+
class='inline-flex items-center gap-1 text-sm font-medium text-slate-500 dark:text-slate-400 transition-colors hover:text-[#8f0d00] dark:hover:text-[#ff2e1a]'
|
|
45
45
|
aria-label='Next page'
|
|
46
46
|
>
|
|
47
47
|
{{coalesce next.label "Next"}}
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
<div id='sections-links' class='space-y-3'>
|
|
35
35
|
<a
|
|
36
36
|
href='{{logoLink}}'
|
|
37
|
-
class='block text-lg font-bold text-black dark:text-white hover:text-[#
|
|
37
|
+
class='block text-lg font-bold text-black dark:text-white hover:text-[#8f0d00] dark:hover:text-[#ff2e1a] transition-colors'
|
|
38
38
|
>TOP STORIES</a>
|
|
39
39
|
<div id='category-links-container' class='space-y-3'>
|
|
40
40
|
<p class='text-sm text-slate-400 dark:text-slate-500'>Loading sections...</p>
|
|
@@ -300,13 +300,13 @@
|
|
|
300
300
|
dark:text-slate-500'>Loading sections...</p>`; } function showCategoryLinksError() { if (!categoryLinksContainer) return; categoryLinksContainer.innerHTML =
|
|
301
301
|
`<p class='text-sm text-red-500'>Failed to load sections</p>`; } function setActiveCategoryLink(categorySlug) { if (!sectionsLinks) return; activeCategorySlug
|
|
302
302
|
= categorySlug || ''; const links = sectionsLinks.querySelectorAll('.category-link'); links.forEach((link) => { const isActive =
|
|
303
|
-
(link.getAttribute('data-category-slug') || '') === activeCategorySlug; if (isActive) { link.classList.add('text-[#
|
|
304
|
-
link.classList.remove('text-black', 'dark:text-white'); link.setAttribute('aria-current', 'page'); } else { link.classList.remove('text-[#
|
|
303
|
+
(link.getAttribute('data-category-slug') || '') === activeCategorySlug; if (isActive) { link.classList.add('text-[#8f0d00]', 'dark:text-[#ff2e1a]');
|
|
304
|
+
link.classList.remove('text-black', 'dark:text-white'); link.setAttribute('aria-current', 'page'); } else { link.classList.remove('text-[#8f0d00]',
|
|
305
305
|
'dark:text-[#ff2e1a]'); link.classList.add('text-black', 'dark:text-white'); link.setAttribute('aria-current', 'false'); } }); } function
|
|
306
306
|
renderCategories(categories) { if (!categoryLinksContainer) return; if (!Array.isArray(categories) || categories.length === 0) {
|
|
307
307
|
categoryLinksContainer.innerHTML = `<p class='text-sm text-slate-400 dark:text-slate-500'>No sections available</p>`; return; }
|
|
308
308
|
categoryLinksContainer.innerHTML = categories .map( (category) => `<a href="${buildLocalePath(category.slug)}" class="category-link block text-lg font-bold
|
|
309
|
-
text-black dark:text-white hover:text-[#
|
|
309
|
+
text-black dark:text-white hover:text-[#8f0d00] dark:hover:text-[#ff2e1a] transition-colors" data-category-slug="${category.slug}"
|
|
310
310
|
aria-current="false">${String(category.name || '').toUpperCase()}</a>` ) .join(''); setActiveCategoryLink(activeCategorySlug); } function
|
|
311
311
|
showMiniFeaturedLoading() { if (!miniFeatured) return; miniFeatured.innerHTML = ` <div class='flex flex-col items-center justify-center py-20'> <div
|
|
312
312
|
class='animate-spin rounded-full h-12 w-12 border-b-2 border-slate-300 dark:border-slate-600'></div> <p class='text-slate-400 dark:text-slate-500
|
|
@@ -317,12 +317,12 @@
|
|
|
317
317
|
<div class='relative mb-5'> <img src='${article?.featuredImage?.url || ''}' alt='${article?.featuredImage?.alt || article?.title || ''}' class='w-full h-50
|
|
318
318
|
object-cover rounded' /> </div> <div class='flex items-center text-slate-500 dark:text-slate-400 text-sm mb-3'> <span class='uppercase font-bold
|
|
319
319
|
tracking-wider'>${article?.categories?.[0]?.name || categoryName || 'GENERAL'}</span> <span class='mx-2'>•</span> <span>5 min</span> </div> <h2 class='text-xl
|
|
320
|
-
font-bold text-slate-900 dark:text-slate-100 leading-tight'> <a href='${getArticleLeafPath(article)}' class='hover:text-[#
|
|
320
|
+
font-bold text-slate-900 dark:text-slate-100 leading-tight'> <a href='${getArticleLeafPath(article)}' class='hover:text-[#8f0d00] dark:hover:text-[#ff2e1a]
|
|
321
321
|
transition-colors'>${article?.title || ''}</a> </h2> </div> ` ) .join(''); const rows = []; for (let i = 0; i < grid.length; i += 3) { const row =
|
|
322
322
|
grid.slice(i, i + 3); if (!row.length) continue; rows.push(` <div class='grid grid-cols-3 gap-6 ${i > 0 ? 'pt-6 border-t border-slate-200 dark:border-slate-800' : ''}'> ${row .map( (article, idx) => ` <div class='${idx === 0 ? 'pr-4 border-r border-slate-200 dark:border-slate-800' : idx === 1 ?
|
|
323
323
|
'px-4 border-r border-slate-200 dark:border-slate-800' : 'pl-4'}'> <div class='flex items-center text-slate-500 dark:text-slate-400 text-sm mb-3'> <span
|
|
324
324
|
class='uppercase font-bold'>${article?.categories?.[0]?.name || categoryName || 'GENERAL'}</span> </div> <h3 class='font-medium text-base leading-tight
|
|
325
|
-
text-slate-900 dark:text-slate-100'> <a href='${getArticleLeafPath(article)}' class='hover:text-[#
|
|
325
|
+
text-slate-900 dark:text-slate-100'> <a href='${getArticleLeafPath(article)}' class='hover:text-[#8f0d00] dark:hover:text-[#ff2e1a]
|
|
326
326
|
transition-colors'>${article?.title || ''}</a> </h3> </div> ` ) .join('')} </div> `); } miniFeatured.innerHTML = ` <h3 class='text-xs font-bold text-slate-400
|
|
327
327
|
dark:text-slate-600 uppercase tracking-wider mb-6 border-b border-slate-200 dark:border-slate-800 pb-2'> ${(categoryName || 'Featured Stories').toUpperCase()}
|
|
328
328
|
</h3> <div class='grid grid-cols-2 gap-8 mb-10'>${topHtml}</div> <div class='space-y-6'>${rows.join('')}</div> `; } function getCategoryName(payload,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{{#if navigation.categories}}
|
|
2
2
|
{{#each navigation.categories}}
|
|
3
|
-
<a href='/{{slug}}' class='block text-lg font-bold text-black dark:text-white hover:text-[#
|
|
3
|
+
<a href='/{{slug}}' class='block text-lg font-bold text-black dark:text-white hover:text-[#8f0d00] dark:hover:text-[#ff2e1a] transition-colors'>{{uppercase name}}</a>
|
|
4
4
|
{{/each}}
|
|
5
5
|
{{/if}}
|
|
@@ -3,12 +3,7 @@
|
|
|
3
3
|
<head>
|
|
4
4
|
<meta charset='UTF-8' />
|
|
5
5
|
<meta name='viewport' content='width=device-width, initial-scale=1' />
|
|
6
|
-
<link
|
|
7
|
-
<link rel='preconnect' href='https://fonts.gstatic.com' crossorigin />
|
|
8
|
-
<link
|
|
9
|
-
href='https://fonts.googleapis.com/css2?family=EB+Garamond:ital,wght@0,400..800;1,400..800&family=Libre+Franklin:ital,wght@0,100..900;1,100..900&display=swap&family=Encode+Sans:wght@100..900&family=Oswald:wght@200..700&display=swap'
|
|
10
|
-
rel='stylesheet'
|
|
11
|
-
/>
|
|
6
|
+
<link href='https://cdn.fifthbell.com/content/fonts/fonts.css' rel='stylesheet' />
|
|
12
7
|
<meta name='description' content='{{#if seo.metaDescription}}{{seo.metaDescription}}{{else}}Page not found{{/if}}' />
|
|
13
8
|
<link rel='canonical' href='{{canonicalUrl}}' />
|
|
14
9
|
<title>{{#if seo.metaTitle}}{{seo.metaTitle}}{{else}}404 - Page Not Found | fifthbell{{/if}}</title>
|
|
@@ -3,16 +3,17 @@
|
|
|
3
3
|
<head>
|
|
4
4
|
<meta charset='UTF-8' />
|
|
5
5
|
<meta name='viewport' content='width=device-width, initial-scale=1' />
|
|
6
|
-
<link
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
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}}
|
|
14
15
|
{{/if}}
|
|
15
|
-
<meta name='description' content='{{#if seo.metaDescription}}{{seo.metaDescription}}{{else}}{{excerpt}}{{/if}}' />
|
|
16
|
+
<meta name='description' content='{{#if seo.metaDescription}}{{seo.metaDescription}}{{else if excerpt}}{{excerpt}}{{else}}{{resolveHeadTitle this}}{{/if}}' />
|
|
16
17
|
<link rel='canonical' href='{{canonicalUrl}}' />
|
|
17
18
|
<meta property='og:title' content='{{resolveHeadTitle this}}' />
|
|
18
19
|
<meta property='og:description' content='{{#if seo.metaDescription}}{{seo.metaDescription}}{{else}}{{excerpt}}{{/if}}' />
|