summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVolpeon <git@volpeon.ink>2021-11-13 18:03:55 +0100
committerVolpeon <git@volpeon.ink>2021-11-13 18:03:55 +0100
commitc20ea9f6922557db29061a5d53c067ab20c734b9 (patch)
tree8db62241b809d73c51f9e7f8c3189638d9700c88
parentFix persistent scrollbar (diff)
downloadvolpeon.ink-c20ea9f6922557db29061a5d53c067ab20c734b9.tar.gz
volpeon.ink-c20ea9f6922557db29061a5d53c067ab20c734b9.tar.bz2
volpeon.ink-c20ea9f6922557db29061a5d53c067ab20c734b9.zip
Improved list generation, remove index template
-rw-r--r--content/9thPK7O3xn/dreams/index.md1
-rw-r--r--content/9thPK7O3xn/index.md2
-rw-r--r--content/9thPK7O3xn/misc/index.md1
-rw-r--r--content/9thPK7O3xn/pages/index.md1
-rw-r--r--content/index.md2
-rw-r--r--content/profiles/bandcamp/index.md5
-rw-r--r--content/profiles/bandcamp/main.md5
-rw-r--r--content/profiles/email/index.md5
-rw-r--r--content/profiles/email/main.md5
-rw-r--r--content/profiles/fediverse/index.md5
-rw-r--r--content/profiles/fediverse/main.md5
-rw-r--r--content/profiles/github/index.md5
-rw-r--r--content/profiles/github/main.md5
-rw-r--r--content/profiles/index.md5
-rw-r--r--content/projects/emojis/index.md1
-rw-r--r--content/projects/index.md2
-rw-r--r--metadata/metadata.yaml40
-rw-r--r--scripts/metadata_filter.lua76
-rw-r--r--templates/base.html4
-rw-r--r--templates/layouts/categorized_list.html98
-rw-r--r--templates/layouts/deep_categorized_list.html54
-rw-r--r--templates/layouts/index.html67
-rw-r--r--templates/layouts/list.html96
23 files changed, 288 insertions, 202 deletions
diff --git a/content/9thPK7O3xn/dreams/index.md b/content/9thPK7O3xn/dreams/index.md
index bce4433..c89aad4 100644
--- a/content/9thPK7O3xn/dreams/index.md
+++ b/content/9thPK7O3xn/dreams/index.md
@@ -1,7 +1,6 @@
1--- 1---
2title: Dream Journal 2title: Dream Journal
3position: 9 3position: 9
4layout: list
5list_order: date_desc 4list_order: date_desc
6list_read_indicators: true 5list_read_indicators: true
7create_feed: true 6create_feed: true
diff --git a/content/9thPK7O3xn/index.md b/content/9thPK7O3xn/index.md
index 0b14fcf..52ceada 100644
--- a/content/9thPK7O3xn/index.md
+++ b/content/9thPK7O3xn/index.md
@@ -1,6 +1,6 @@
1--- 1---
2title: Personal 2title: Personal
3layout: categorized_list 3unlisted: true
4create_feed: true 4create_feed: true
5--- 5---
6 6
diff --git a/content/9thPK7O3xn/misc/index.md b/content/9thPK7O3xn/misc/index.md
index 572cc05..d39ae3f 100644
--- a/content/9thPK7O3xn/misc/index.md
+++ b/content/9thPK7O3xn/misc/index.md
@@ -1,7 +1,6 @@
1--- 1---
2title: Other stuff 2title: Other stuff
3position: 10 3position: 10
4layout: list
5list_read_indicators: true 4list_read_indicators: true
6create_feed: true 5create_feed: true
7--- 6---
diff --git a/content/9thPK7O3xn/pages/index.md b/content/9thPK7O3xn/pages/index.md
index 0dccffb..33818ff 100644
--- a/content/9thPK7O3xn/pages/index.md
+++ b/content/9thPK7O3xn/pages/index.md
@@ -1,7 +1,6 @@
1--- 1---
2title: Pages 2title: Pages
3position: 0 3position: 0
4layout: list
5list_read_indicators: true 4list_read_indicators: true
6create_feed: true 5create_feed: true
7--- 6---
diff --git a/content/index.md b/content/index.md
index ca1da95..efc03c2 100644
--- a/content/index.md
+++ b/content/index.md
@@ -1,5 +1,5 @@
1--- 1---
2title: Home 2title: Volpeon's Den
3--- 3---
4 4
5Hi, I'm Volpeon. I enjoy programming, creating vector art and designing user interfaces. 5Hi, I'm Volpeon. I enjoy programming, creating vector art and designing user interfaces.
diff --git a/content/profiles/bandcamp/index.md b/content/profiles/bandcamp/index.md
new file mode 100644
index 0000000..34f3c88
--- /dev/null
+++ b/content/profiles/bandcamp/index.md
@@ -0,0 +1,5 @@
1---
2title: Bandcamp
3icon: parallelogram
4list_icon: icon-arrow-up-right
5---
diff --git a/content/profiles/bandcamp/main.md b/content/profiles/bandcamp/main.md
new file mode 100644
index 0000000..f94213f
--- /dev/null
+++ b/content/profiles/bandcamp/main.md
@@ -0,0 +1,5 @@
1---
2title: volpeon
3titlecase: false
4url: https://bandcamp.com/volpeon
5---
diff --git a/content/profiles/email/index.md b/content/profiles/email/index.md
new file mode 100644
index 0000000..e305535
--- /dev/null
+++ b/content/profiles/email/index.md
@@ -0,0 +1,5 @@
1---
2title: E-Mail
3icon: envelope
4list_icon: icon-arrow-up-right
5---
diff --git a/content/profiles/email/main.md b/content/profiles/email/main.md
new file mode 100644
index 0000000..16f103a
--- /dev/null
+++ b/content/profiles/email/main.md
@@ -0,0 +1,5 @@
1---
2title: me@volpeon.ink
3titlecase: false
4url: "mailto:me@volpeon.ink"
5---
diff --git a/content/profiles/fediverse/index.md b/content/profiles/fediverse/index.md
new file mode 100644
index 0000000..ed35dc1
--- /dev/null
+++ b/content/profiles/fediverse/index.md
@@ -0,0 +1,5 @@
1---
2title: Fediverse
3icon: graph
4list_icon: icon-arrow-up-right
5---
diff --git a/content/profiles/fediverse/main.md b/content/profiles/fediverse/main.md
new file mode 100644
index 0000000..70ee902
--- /dev/null
+++ b/content/profiles/fediverse/main.md
@@ -0,0 +1,5 @@
1---
2title: "@volpeon@mk.vulpes.one"
3titlecase: false
4url: "https://mk.vulpes.one/@volpeon"
5---
diff --git a/content/profiles/github/index.md b/content/profiles/github/index.md
new file mode 100644
index 0000000..d4f011d
--- /dev/null
+++ b/content/profiles/github/index.md
@@ -0,0 +1,5 @@
1---
2title: Git
3icon: git-branch
4list_icon: icon-arrow-up-right
5---
diff --git a/content/profiles/github/main.md b/content/profiles/github/main.md
new file mode 100644
index 0000000..fb25680
--- /dev/null
+++ b/content/profiles/github/main.md
@@ -0,0 +1,5 @@
1---
2title: "git.vulpes.one"
3titlecase: false
4url: "https://git.vulpes.one/"
5---
diff --git a/content/profiles/index.md b/content/profiles/index.md
new file mode 100644
index 0000000..1041807
--- /dev/null
+++ b/content/profiles/index.md
@@ -0,0 +1,5 @@
1---
2title: Profiles
3list_grid: true
4list_icon: icon-arrow-up-right
5---
diff --git a/content/projects/emojis/index.md b/content/projects/emojis/index.md
index f650b2e..01054aa 100644
--- a/content/projects/emojis/index.md
+++ b/content/projects/emojis/index.md
@@ -1,6 +1,5 @@
1--- 1---
2title: Emojis 2title: Emojis
3icon: smile 3icon: smile
4layout: list
5list_grid: true 4list_grid: true
6--- 5---
diff --git a/content/projects/index.md b/content/projects/index.md
index 8aa8f96..c79f803 100644
--- a/content/projects/index.md
+++ b/content/projects/index.md
@@ -1,5 +1,5 @@
1--- 1---
2title: Projects 2title: Projects
3layout: categorized_list
4list_grid: true 3list_grid: true
4list_icon: icon-arrow-right
5--- 5---
diff --git a/metadata/metadata.yaml b/metadata/metadata.yaml
index c8f2d72..679cdcb 100644
--- a/metadata/metadata.yaml
+++ b/metadata/metadata.yaml
@@ -11,43 +11,11 @@ menus:
11 label: Projects 11 label: Projects
12 url: /projects/ 12 url: /projects/
13 13
14 - id: profiles
15 label: Profiles
16 url: /profiles/
17
14 - id: 9thPK7O3xn 18 - id: 9thPK7O3xn
15 label: Personal 19 label: Personal
16 url: /9thPK7O3xn/ 20 url: /9thPK7O3xn/
17 hidden: true 21 hidden: true
18
19profiles:
20 - platform: Bandcamp
21 icon: parallelogram
22 username: volpeon
23 url: https://bandcamp.com/volpeon
24 featured: true
25
26 - platform: E-Mail
27 icon: envelope
28 username: me@volpeon.ink
29 featured: true
30 url: "mailto:me@volpeon.ink"
31
32 - platform: Fediverse
33 icon: graph
34 username: "@volpeon@mk.vulpes.one"
35 url: "https://mk.vulpes.one/@volpeon"
36 featured: true
37
38 - platform: GitHub
39 icon: git-branch
40 username: volpeon
41 url: "https://github.com/volpeon"
42
43 - platform: IRC
44 icon: hash
45 username: volpeon
46
47 - platform: Steam
48 username: volpeon
49 url: https://steamcommunity.com/id/volpeon/
50
51 - platform: XMPP
52 icon: messages
53 username: "&lt;available&gt;"
diff --git a/scripts/metadata_filter.lua b/scripts/metadata_filter.lua
index 7039a2c..ebd69f1 100644
--- a/scripts/metadata_filter.lua
+++ b/scripts/metadata_filter.lua
@@ -33,30 +33,6 @@ function table_to_list(t, kv, cmp)
33 return l 33 return l
34end 34end
35 35
36function group_by(l, field, insert)
37 insert = insert or function(group, _, item)
38 if not group then
39 group = l:new({ item })
40 return group
41 end
42 group:insert(item)
43 end
44
45 local groups = {}
46
47 for i = 1, #l do
48 local item = l[i]
49 local f = field(item)
50
51 if f then
52 local out = insert(groups[f], f, item)
53 if out then groups[f] = out end
54 end
55 end
56
57 return groups
58end
59
60function make_absolute(rel, base) 36function make_absolute(rel, base)
61 return path.is_absolute(rel) and rel or path.join({ path.directory(base), rel }) 37 return path.is_absolute(rel) and rel or path.join({ path.directory(base), rel })
62end 38end
@@ -67,15 +43,28 @@ function resolve_url(site_url, ref_file, target_file)
67 local ref_base_dir = path.directory(ref_file) 43 local ref_base_dir = path.directory(ref_file)
68 local abs = target_file 44 local abs = target_file
69 local rel = path.make_relative(abs, ref_base_dir, true) 45 local rel = path.make_relative(abs, ref_base_dir, true)
46 local full = (abs[1] == "/" and (site_url .. abs)) or abs
70 47
71 return { abs = abs, rel = rel, full = (site_url .. abs) } 48 return { abs = abs, rel = rel, full = full }
72end 49end
73 50
74function resolve_layout(layout) 51function resolve_layout(depth)
75 if layout then 52 local layout = "deep_categorized_list"
76 layout = pandoc.utils.stringify(layout) 53
77 return { id = layout, ["is_" .. layout] = true } 54 if depth == "0" then
55 layout = "page"
56 elseif depth == "1" then
57 layout = "list"
58 elseif depth == "2" then
59 layout = "categorized_list"
78 end 60 end
61
62 return layout
63end
64
65function prep_layout(layout)
66 layout = pandoc.utils.stringify(layout)
67 return { id = layout, ["is_" .. layout] = true }
79end 68end
80 69
81function resolve_namespace(namespace) 70function resolve_namespace(namespace)
@@ -110,8 +99,10 @@ function process_pages(global, order, pages_by_id)
110 99
111 for _, page in pairs(pages_by_id) do 100 for _, page in pairs(pages_by_id) do
112 local p = process(global, page) 101 local p = process(global, page)
113 pages_all:insert(p) 102 if not p.unlisted then
114 if p.date then pages_date_desc:insert(p) end 103 pages_all:insert(p)
104 if p.date then pages_date_desc:insert(p) end
105 end
115 end 106 end
116 107
117 pages_all:sort(function(p1, p2) 108 pages_all:sort(function(p1, p2)
@@ -171,12 +162,27 @@ function titlecase(str)
171 end) 162 end)
172end 163end
173 164
165function find_depth(pages)
166 local depth = 0
167
168 for i = 1, #pages do
169 local p = pages[i]
170 local d = tonumber(p.depth)
171 if d > depth then depth = d end
172 end
173
174 depth = depth + 1
175
176 return tostring(depth)
177end
178
174function process(global, meta) 179function process(global, meta)
175 meta.namespace = resolve_namespace(meta.namespace) 180 meta.namespace = resolve_namespace(meta.namespace)
176 meta.file_out = pandoc.utils.stringify(meta.file_out):gsub("^out", "") 181 meta.file_out = pandoc.utils.stringify(meta.file_out):gsub("^out", "")
177 meta.layout = resolve_layout(meta.layout) 182 meta.url = meta.url and pandoc.utils.stringify(meta.url)
178 meta.url = resolve_url(global.site.url, global.file_out, meta.file_out) 183 meta.url = resolve_url(global.site.url, global.file_out, meta.url or meta.file_out)
179 meta.title = (meta.title and titlecase(pandoc.utils.stringify(meta.title))) or "" 184 meta.title = (meta.title and pandoc.utils.stringify(meta.title)) or ""
185 if meta.titlecase ~= false then meta.title = titlecase(meta.title) end
180 if meta.list_order then meta.list_order = pandoc.utils.stringify(meta.list_order) end 186 if meta.list_order then meta.list_order = pandoc.utils.stringify(meta.list_order) end
181 if meta.position then meta.position = pandoc.utils.stringify(meta.position) end 187 if meta.position then meta.position = pandoc.utils.stringify(meta.position) end
182 188
@@ -204,6 +210,8 @@ function process(global, meta)
204 end 210 end
205 211
206 meta.pages = process_pages(global, meta.list_order, meta.pages) 212 meta.pages = process_pages(global, meta.list_order, meta.pages)
213 meta.depth = (meta.pages and find_depth(meta.pages.all)) or "0"
214 meta.layout = prep_layout(meta.layout or resolve_layout(meta.depth))
207 215
208 if meta.date then 216 if meta.date then
209 meta.date = format_date(meta.date) 217 meta.date = format_date(meta.date)
diff --git a/templates/base.html b/templates/base.html
index e736864..ede7941 100644
--- a/templates/base.html
+++ b/templates/base.html
@@ -63,8 +63,8 @@
63 </nav> 63 </nav>
64 64
65 <main> 65 <main>
66 $if(namespace.root.is_index)$ 66 $if(layout.is_deep_categorized_list)$
67${layouts/index()} 67${layouts/deep_categorized_list()}
68 $elseif(layout.is_categorized_list)$ 68 $elseif(layout.is_categorized_list)$
69${layouts/categorized_list()} 69${layouts/categorized_list()}
70 $elseif(layout.is_list)$ 70 $elseif(layout.is_list)$
diff --git a/templates/layouts/categorized_list.html b/templates/layouts/categorized_list.html
index a3af43c..ad510ae 100644
--- a/templates/layouts/categorized_list.html
+++ b/templates/layouts/categorized_list.html
@@ -11,36 +11,76 @@ $body$
11 <h2 class="c-card-list__category-header"> 11 <h2 class="c-card-list__category-header">
12 <a href="$it.url.rel$">$it.title$</a> 12 <a href="$it.url.rel$">$it.title$</a>
13 </h2> 13 </h2>
14 <div class="c-card-list__category-content$if(it.list_grid)$ c-card-list__category-content--grid$endif$"> 14 $if(it.list_grid)$
15 $for(it.pages.all)$ 15 <div class="c-card-list__category-content c-card-list__category-content--grid">
16 <a href="$it.url.rel$" class="c-card-list__card c-card"> 16 $for(it.pages.all)$
17 $if(pages.all.list_read_indicators)$ 17 <a href="$it.url.rel$" class="c-card-list__card c-card">
18 <div class="c-card__block c-card__block--indicator"></div> 18 $if(pages.all.list_read_indicators)$
19 $endif$ 19 <div class="c-card__block c-card__block--indicator"></div>
20 $if(pages.all.icon)$ 20 $endif$
21 <svg class="c-card__block o-icon" width="1em" height="1em"> 21 $if(pages.all.icon)$
22 <use href="/symbols.svg#icon-$pages.all.icon$"></use> 22 <svg class="c-card__block o-icon" width="1em" height="1em">
23 </svg> 23 <use href="/symbols.svg#icon-$pages.all.icon$"></use>
24 $endif$ 24 </svg>
25 <div class="c-card__block c-card__block--main"> 25 $endif$
26 $it.title$ 26 <div class="c-card__block c-card__block--main">
27 </div> 27 $if(it.date)$
28 $if(it.date)$ 28 <time datetime="$it.date.yyyy_mm_dd$">
29 <time datetime="$it.date.yyyy_mm_dd$" class="c-card__block u-fs0"> 29 <small class="u-dn@sm-hi">
30 <small class="u-dn@sm-hi"> 30 $it.date.short$
31 $it.date.short$ 31 </small>
32 </small> 32 <small class="u-dn@sm-lo">
33 <small class="u-dn@sm-lo"> 33 $it.date.long$
34 $it.date.long$ 34 </small>
35 </small> 35 </time>
36 </time> 36 <strong class="u-db">$it.title$</strong>
37 $endif$ 37 $else$
38 </a> 38 $it.title$
39 $endfor$ 39 $endif$
40 </div> 40 </div>
41 $if(list_icon)$
42 <svg class="c-card__block o-icon" width="1em" height="1em">
43 <use href="/symbols.svg#$list_icon$"></use>
44 </svg>
45 $endif$
46 </a>
47 $endfor$
48 </div>
49 $else$
50 <div class="c-card-list__category-content">
51 $for(it.pages.all)$
52 <a href="$it.url.rel$" class="c-card-list__card c-card">
53 $if(pages.all.list_read_indicators)$
54 <div class="c-card__block c-card__block--indicator"></div>
55 $endif$
56 $if(pages.all.icon)$
57 <svg class="c-card__block o-icon" width="1em" height="1em">
58 <use href="/symbols.svg#icon-$pages.all.icon$"></use>
59 </svg>
60 $endif$
61 <div class="c-card__block c-card__block--main">
62 $it.title$
63 </div>
64 $if(it.date)$
65 <time datetime="$it.date.yyyy_mm_dd$" class="c-card__block u-fs0">
66 <small class="u-dn@sm-hi">
67 $it.date.short$
68 </small>
69 <small class="u-dn@sm-lo">
70 $it.date.long$
71 </small>
72 </time>
73 $endif$
74 $if(list_icon)$
75 <svg class="c-card__block o-icon" width="1em" height="1em">
76 <use href="/symbols.svg#$list_icon$"></use>
77 </svg>
78 $endif$
79 </a>
80 $endfor$
81 </div>
82 $endif$
41 $endif$ 83 $endif$
42 $endfor$ 84 $endfor$
43 </div> 85 </div>
44</section> 86</section>
45
46
diff --git a/templates/layouts/deep_categorized_list.html b/templates/layouts/deep_categorized_list.html
new file mode 100644
index 0000000..eec16c9
--- /dev/null
+++ b/templates/layouts/deep_categorized_list.html
@@ -0,0 +1,54 @@
1<section class="l-container l-container--pad-x l-container--pad-y l-container--content">
2 <div class="s-headlines s-colored-links">
3 <h1 class="u-mt0"><span class="s-headlines__title-inner">$title$</span></h1>
4
5$body$
6 </div>
7
8 <div class="c-card-list">
9 $for(pages.all)$
10 $if(it.pages)$
11 <h2 class="c-card-list__category-header">
12 <a href="$it.url.rel$">$it.title$</a>
13 </h2>
14 <div class="c-card-list__category-content$if(it.list_grid)$ c-card-list__category-content--grid$endif$">
15 $for(pages.all.pages.all)$
16 $for(pages.all.pages.all.pages.all)$
17 <a href="$it.url.rel$" class="c-card-list__card c-card">
18 $if(pages.all.list_read_indicators)$
19 <div class="c-card__block c-card__block--indicator"></div>
20 $endif$
21 $if(pages.all.pages.all.icon)$
22 <svg class="c-card__block o-icon" width="1em" height="1em">
23 <use href="/symbols.svg#icon-$pages.all.pages.all.icon$"></use>
24 </svg>
25 $endif$
26 <div class="c-card__block c-card__block--main">
27 <small class="u-db">$pages.all.pages.all.title$</small>
28 <strong class="u-db">$it.title$</strong>
29 </div>
30 $if(it.date)$
31 <time datetime="$it.date.yyyy_mm_dd$" class="c-card__block u-fs0">
32 <small class="u-dn@sm-hi">
33 $it.date.short$
34 </small>
35 <small class="u-dn@sm-lo">
36 $it.date.long$
37 </small>
38 </time>
39 $endif$
40 $if(pages.all.list_icon)$
41 <svg class="c-card__block o-icon" width="1em" height="1em">
42 <use href="/symbols.svg#$pages.all.list_icon$"></use>
43 </svg>
44 $endif$
45 </a>
46 $endfor$
47 $endfor$
48 </div>
49 $endif$
50 $endfor$
51 </div>
52</section>
53
54
diff --git a/templates/layouts/index.html b/templates/layouts/index.html
deleted file mode 100644
index 1eca10f..0000000
--- a/templates/layouts/index.html
+++ /dev/null
@@ -1,67 +0,0 @@
1<section class="l-container l-container--pad-x l-container--pad-y l-container--content">
2 <div class="s-headlines s-colored-links">
3 <h1 class="u-mt0"><span class="s-headlines__title-inner">I'm a <strong>red fox</strong> in disguise.</span></h1>
4
5$body$
6 </div>
7
8 <div class="c-card-list">
9 <h2 class="c-card-list__category-header">
10 Profiles
11 </h2>
12 <div class="c-card-list__category-content c-card-list__category-content--grid">
13 $for(profiles)$
14 $if(it.featured)$
15 $if(it.url)$
16 <a class="c-card-list__card c-card" href="$it.url$">
17 $else$
18 <div class="c-card-list__card c-card">
19 $endif$
20 $if(it.icon)$
21 <svg class="c-card__block o-icon" width="1em" height="1em">
22 <use href="/symbols.svg#icon-$it.icon$"></use>
23 </svg>
24 $endif$
25 <div class="c-card__block c-card__block--main">
26 <strong class="u-db">$it.platform$</strong>
27 <small class="u-db">$it.username$</small>
28 </div>
29 $if(it.url)$
30 <svg class="c-card__block o-icon" width="1em" height="1em">
31 <use href="/symbols.svg#icon-arrow-up-right"></use>
32 </svg>
33 $endif$
34 $if(it.url)$
35 </a>
36 $else$
37 </div>
38 $endif$
39 $endif$
40 $endfor$
41 </div>
42
43 <h2 class="c-card-list__category-header">
44 <a href="$pages.by_id.projects.url.rel$">$pages.by_id.projects.title$</a>
45 </h2>
46 <div class="c-card-list__category-content c-card-list__category-content--grid">
47 $for(pages.by_id.projects.pages.all)$
48 $for(it.pages.all)$
49 <a href="$it.url.rel$" class="c-card-list__card c-card">
50 $if(pages.by_id.projects.pages.all.icon)$
51 <svg class="c-card__block o-icon" width="1em" height="1em">
52 <use href="/symbols.svg#icon-$pages.by_id.projects.pages.all.icon$"></use>
53 </svg>
54 $endif$
55 <div class="c-card__block c-card__block--main">
56 <small class="u-db">$pages.by_id.projects.pages.all.title$</small>
57 <strong class="u-db">$it.title$</strong>
58 </div>
59 <svg class="c-card__block o-icon" width="1em" height="1em">
60 <use href="/symbols.svg#icon-arrow-right"></use>
61 </svg>
62 </a>
63 $endfor$
64 $endfor$
65 </div>
66 </div>
67</section>
diff --git a/templates/layouts/list.html b/templates/layouts/list.html
index 2ef02ab..b4647a1 100644
--- a/templates/layouts/list.html
+++ b/templates/layouts/list.html
@@ -6,33 +6,75 @@ $body$
6 </div> 6 </div>
7 7
8 <div class="c-card-list"> 8 <div class="c-card-list">
9 <div class="c-card-list__category-content$if(list_grid)$ c-card-list__category-content--grid$endif$"> 9 $if(list_grid)$
10 $for(pages.all)$ 10 <div class="c-card-list__category-content c-card-list__category-content--grid">
11 <a href="$it.url.rel$" class="c-card-list__card c-card"> 11 $for(pages.all)$
12 $if(list_read_indicators)$ 12 <a href="$it.url.rel$" class="c-card-list__card c-card">
13 <div class="c-card__block c-card__block--indicator"></div> 13 $if(list_read_indicators)$
14 $endif$ 14 <div class="c-card__block c-card__block--indicator"></div>
15 $if(icon)$ 15 $endif$
16 <svg class="c-card__block o-icon"> 16 $if(icon)$
17 <use href="/symbols.svg#icon-$icon$"></use> 17 <svg class="c-card__block o-icon">
18 </svg> 18 <use href="/symbols.svg#icon-$icon$"></use>
19 $endif$ 19 </svg>
20 <div class="c-card__block c-card__block--main"> 20 $endif$
21 $it.title$ 21 <div class="c-card__block c-card__block--main">
22 </div> 22 $if(it.date)$
23 $if(it.date)$ 23 <time datetime="$it.date.yyyy_mm_dd$">
24 <time datetime="$it.date.yyyy_mm_dd$" class="c-card__block u-fs0"> 24 <small class="u-dn@sm-hi">
25 <small class="u-dn@sm-hi"> 25 $it.date.short$
26 $it.date.short$ 26 </small>
27 </small> 27 <small class="u-dn@sm-lo">
28 <small class="u-dn@sm-lo"> 28 $it.date.long$
29 $it.date.long$ 29 </small>
30 </small> 30 </time>
31 </time> 31 <strong class="u-db">$it.title$</strong>
32 $endif$ 32 $else$
33 </a> 33 $it.title$
34 $endfor$ 34 $endif$
35 </div> 35 </div>
36 $if(list_icon)$
37 <svg class="c-card__block o-icon" width="1em" height="1em">
38 <use href="/symbols.svg#$list_icon$"></use>
39 </svg>
40 $endif$
41 </a>
42 $endfor$
43 </div>
44 $else$
45 <div class="c-card-list__category-content">
46 $for(pages.all)$
47 <a href="$it.url.rel$" class="c-card-list__card c-card">
48 $if(list_read_indicators)$
49 <div class="c-card__block c-card__block--indicator"></div>
50 $endif$
51 $if(icon)$
52 <svg class="c-card__block o-icon">
53 <use href="/symbols.svg#icon-$icon$"></use>
54 </svg>
55 $endif$
56 <div class="c-card__block c-card__block--main">
57 $it.title$
58 </div>
59 $if(it.date)$
60 <time datetime="$it.date.yyyy_mm_dd$" class="c-card__block u-fs0">
61 <small class="u-dn@sm-hi">
62 $it.date.short$
63 </small>
64 <small class="u-dn@sm-lo">
65 $it.date.long$
66 </small>
67 </time>
68 $endif$
69 $if(list_icon)$
70 <svg class="c-card__block o-icon" width="1em" height="1em">
71 <use href="/symbols.svg#$list_icon$"></use>
72 </svg>
73 $endif$
74 </a>
75 $endfor$
76 </div>
77 $endif$
36 </div> 78 </div>
37</section> 79</section>
38 80