diff options
author | Volpeon <git@volpeon.ink> | 2022-06-20 18:32:44 +0200 |
---|---|---|
committer | Volpeon <git@volpeon.ink> | 2022-06-20 18:32:44 +0200 |
commit | cfa66c5ec0fe8d948df16bf3ce17291e9913b2a8 (patch) | |
tree | b206ef9448e6e900703792262f32dc91ed39e5e5 | |
parent | WIP: Hashing all static assets (diff) | |
download | volpeon.ink-cfa66c5ec0fe8d948df16bf3ce17291e9913b2a8.tar.gz volpeon.ink-cfa66c5ec0fe8d948df16bf3ce17291e9913b2a8.tar.bz2 volpeon.ink-cfa66c5ec0fe8d948df16bf3ce17291e9913b2a8.zip |
Add hash to more assets
-rw-r--r-- | Makefile | 35 | ||||
-rw-r--r-- | Makefile copy | 215 | ||||
-rw-r--r-- | filters/icons.lua | 2 | ||||
-rw-r--r-- | templates/base.html | 8 | ||||
-rw-r--r-- | templates/layouts/exhibit.html | 6 | ||||
-rw-r--r-- | templates/layouts/page.html | 8 | ||||
-rw-r--r-- | templates/partials/gallery_card.html | 4 | ||||
-rw-r--r-- | templates/partials/grid_card.html | 4 | ||||
-rw-r--r-- | templates/partials/list_card.html | 4 |
9 files changed, 39 insertions, 247 deletions
@@ -21,19 +21,20 @@ FEED_FILES := $(patsubst content/%.md,out/%.xml,$(FEED_SRC)) | |||
21 | FONT_FILES := $(patsubst assets/fonts/%.ttf,out/%.woff2,$(wildcard assets/fonts/*.ttf)) | 21 | FONT_FILES := $(patsubst assets/fonts/%.ttf,out/%.woff2,$(wildcard assets/fonts/*.ttf)) |
22 | CSS_FILES := $(patsubst assets/css/%.scss,out/%.css,$(wildcard assets/css/style.scss)) | 22 | CSS_FILES := $(patsubst assets/css/%.scss,out/%.css,$(wildcard assets/css/style.scss)) |
23 | STATIC_FILES := $(patsubst content/%,out/%,$(shell find content -type f ! -name "*.md")) | 23 | STATIC_FILES := $(patsubst content/%,out/%,$(shell find content -type f ! -name "*.md")) |
24 | ASSET_FILES := $(FONT_FILES) $(CSS_FILES) out/icons.svg $(patsubst content/%,out/%,$(shell find content -maxdepth 1 -type f ! -name "*.md")) | ||
24 | 25 | ||
25 | # | 26 | # |
26 | # TARGETS | 27 | # TARGETS |
27 | # | 28 | # |
28 | 29 | ||
29 | all: content_meta content_files feed_files static_files font_files css_files icons | 30 | all: content_meta content_files feed_files font_files css_files static_files |
30 | 31 | ||
31 | content_meta: $(CONTENT_META) | 32 | content_meta: $(CONTENT_META) |
32 | content_files: $(CONTENT_FILES) | 33 | content_files: $(CONTENT_FILES) |
33 | feed_files: $(FEED_FILES) | 34 | feed_files: $(FEED_FILES) |
34 | static_files: $(STATIC_FILES) | ||
35 | font_files: $(FONT_FILES) | 35 | font_files: $(FONT_FILES) |
36 | css_files: $(CSS_FILES) | 36 | css_files: $(CSS_FILES) |
37 | static_files: $(STATIC_FILES) | ||
37 | 38 | ||
38 | # | 39 | # |
39 | # RULES | 40 | # RULES |
@@ -65,6 +66,7 @@ subpages = $(patsubst content/%.md,.cache/meta/%.json, \ | |||
65 | --metadata-file "$@.pages" \ | 66 | --metadata-file "$@.pages" \ |
66 | $(PANDOC_FILTERS) \ | 67 | $(PANDOC_FILTERS) \ |
67 | -o "$@.meta" "$<" | 68 | -o "$@.meta" "$<" |
69 | rm "$@.pages" | ||
68 | pandoc \ | 70 | pandoc \ |
69 | -f markdown-citations-implicit_figures \ | 71 | -f markdown-citations-implicit_figures \ |
70 | -t html5 \ | 72 | -t html5 \ |
@@ -77,11 +79,13 @@ subpages = $(patsubst content/%.md,.cache/meta/%.json, \ | |||
77 | $(PANDOC_FILTERS) \ | 79 | $(PANDOC_FILTERS) \ |
78 | -o "$@.content" "$<" | 80 | -o "$@.content" "$<" |
79 | jq '. + { content: $$content }' --rawfile content "$@.content" "$@.meta" > "$@" | 81 | jq '. + { content: $$content }' --rawfile content "$@.content" "$@.meta" > "$@" |
80 | rm "$@.pages" | ||
81 | rm "$@.meta" | 82 | rm "$@.meta" |
82 | rm "$@.content" | 83 | rm "$@.content" |
83 | 84 | ||
84 | out/%.html: content/%.md .cache/meta/%.json $(CONTENT_TEMPLATES_SRC) metadata/*.yaml filters/*.lua scripts/metadata_filter.lua out/style.css | out | 85 | .cache/assets.json: $(ASSET_FILES) | .cache |
86 | sha256sum $^ | sed -r 's/([0-9a-f]+) +out\/(.*)/{ "\2": "\/\2?\1" }/' | jq '{ assets: [inputs] | add | with_entries( .key |= gsub( "\\."; "_") ) }' > "$@" | ||
87 | |||
88 | out/%.html: content/%.md .cache/meta/%.json .cache/assets.json $(CONTENT_TEMPLATES_SRC) metadata/*.yaml filters/*.lua scripts/metadata_filter.lua | out | ||
85 | $(info [MARK] $< -> $@) | 89 | $(info [MARK] $< -> $@) |
86 | 90 | ||
87 | mkdir -p $(@D) | 91 | mkdir -p $(@D) |
@@ -93,9 +97,9 @@ out/%.html: content/%.md .cache/meta/%.json $(CONTENT_TEMPLATES_SRC) metadata/*. | |||
93 | --template templates/base.html \ | 97 | --template templates/base.html \ |
94 | --lua-filter scripts/metadata_filter.lua \ | 98 | --lua-filter scripts/metadata_filter.lua \ |
95 | $(GLOBAL_METADATA) \ | 99 | $(GLOBAL_METADATA) \ |
100 | --metadata-file .cache/assets.json \ | ||
96 | --metadata-file "$(filter .cache/meta/%.json,$^)" \ | 101 | --metadata-file "$(filter .cache/meta/%.json,$^)" \ |
97 | --metadata file_out="$@" \ | 102 | --metadata file_out="$@" \ |
98 | --metadata style_hash="$(shell sha256sum out/style.css | cut -d ' ' -f 1)" \ | ||
99 | $(PANDOC_FILTERS) \ | 103 | $(PANDOC_FILTERS) \ |
100 | -o "$@" "$<" | 104 | -o "$@" "$<" |
101 | 105 | ||
@@ -140,14 +144,8 @@ out/%.css: assets/css/%.scss $(CSS_SRC) | out | |||
140 | 144 | ||
141 | sass --load-path=node_modules "$<" | ./node_modules/.bin/postcss --use autoprefixer --no-map -o "$@" | 145 | sass --load-path=node_modules "$<" | ./node_modules/.bin/postcss --use autoprefixer --no-map -o "$@" |
142 | 146 | ||
143 | out/%: content/% | out | 147 | out/icons.svg: | out |
144 | $(info [COPY] $< -> $@) | 148 | $(info [ICON] $@) |
145 | |||
146 | mkdir -p $(@D) | ||
147 | cp "$<" "$@" | ||
148 | |||
149 | icons: | out | ||
150 | $(info [ICON] out/icons.svg) | ||
151 | 149 | ||
152 | node ./node_modules/iro-icons/scripts/create_sprite.js \ | 150 | node ./node_modules/iro-icons/scripts/create_sprite.js \ |
153 | asterisk \ | 151 | asterisk \ |
@@ -168,7 +166,16 @@ icons: | out | |||
168 | x \ | 166 | x \ |
169 | chevron-left \ | 167 | chevron-left \ |
170 | chevron-right \ | 168 | chevron-right \ |
171 | "out/icons.svg" | 169 | "$@" |
170 | |||
171 | out/%: content/% | out | ||
172 | $(info [COPY] $< -> $@) | ||
173 | |||
174 | mkdir -p $(@D) | ||
175 | cp "$<" "$@" | ||
176 | |||
177 | .cache/hash: | .cache | ||
178 | mkdir -p .cache/hash | ||
172 | 179 | ||
173 | .cache/meta: | .cache | 180 | .cache/meta: | .cache |
174 | mkdir -p .cache/meta | 181 | mkdir -p .cache/meta |
diff --git a/Makefile copy b/Makefile copy deleted file mode 100644 index 52d4dd8..0000000 --- a/Makefile copy +++ /dev/null | |||
@@ -1,215 +0,0 @@ | |||
1 | export DEPLOY_TARGET = vulpes@94.130.78.123:/srv/http/volpeon.ink/ | ||
2 | |||
3 | -include Env.mk | ||
4 | |||
5 | # | ||
6 | # FILE GROUPS | ||
7 | # | ||
8 | |||
9 | PANDOC_FILTERS := $(patsubst %,--lua-filter %,$(wildcard filters/*.lua)) | ||
10 | GLOBAL_METADATA := $(patsubst %,--metadata-file %,$(wildcard metadata/*.yaml)) | ||
11 | |||
12 | CONTENT_SRC := $(shell find content -type f -name "*.md") | ||
13 | FEED_SRC := $(shell grep -l "^feed: *true$$" $(CONTENT_SRC)) | ||
14 | CONTENT_TEMPLATES_SRC := $(shell find templates -type f -name "*.html") | ||
15 | FEED_TEMPLATES_SRC := $(shell find templates -type f -name "*.xml") | ||
16 | CSS_SRC := $(shell find assets/css -type f -name "*.scss") | ||
17 | |||
18 | CONTENT_META := $(patsubst content/%.md,.cache/meta/%.json,$(CONTENT_SRC)) | ||
19 | CONTENT_FILES := $(patsubst content/%.md,out/%.html,$(CONTENT_SRC)) | ||
20 | FEED_FILES := $(patsubst content/%.md,out/%.xml,$(FEED_SRC)) | ||
21 | FONT_FILES := $(patsubst assets/fonts/%.ttf,out/%.woff2,$(wildcard assets/fonts/*.ttf)) | ||
22 | CSS_FILES := $(patsubst assets/css/%.scss,out/%.css,$(wildcard assets/css/style.scss)) | ||
23 | STATIC_FILES := $(patsubst content/%,out/%,$(shell find content -type f ! -name "*.md")) | ||
24 | STATIC_HASHED_FILES := $(filter out/%.css out/%.js out/%.svg out/%.woff2,$(STATIC_FILES)) | ||
25 | |||
26 | # | ||
27 | # TARGETS | ||
28 | # | ||
29 | |||
30 | all: content_meta content_files feed_files font_files css_files static_files icons | ||
31 | |||
32 | content_meta: $(CONTENT_META) | ||
33 | content_files: $(CONTENT_FILES) | ||
34 | feed_files: $(FEED_FILES) | ||
35 | font_files: $(FONT_FILES) | ||
36 | css_files: $(CSS_FILES) | ||
37 | static_files: $(STATIC_FILES) | ||
38 | |||
39 | # | ||
40 | # RULES | ||
41 | # | ||
42 | |||
43 | .SECONDEXPANSION: | ||
44 | |||
45 | namespace = $(patsubst %/index,%,$(patsubst %.json,%,$(patsubst $(2)%,%,$(1)))) | ||
46 | |||
47 | subpages = $(patsubst content/%.md,.cache/meta/%.json, \ | ||
48 | $(shell test -d $(patsubst .cache/meta%,content%,$(1)) && find $(patsubst .cache/meta%,content%,$(1)) -maxdepth 1 -type f -name "*.md" ! -name "index.md") \ | ||
49 | $(shell test -d $(patsubst .cache/meta%,content%,$(1)) && find $(patsubst .cache/meta%,content%,$(1)) -mindepth 2 -maxdepth 2 -type f -name "index.md")) | ||
50 | |||
51 | .cache/meta/%.json: content/%.md $$(call subpages,$$(call namespace,$$@,)) filters/*.lua scripts/subpages.lua scripts/subpages.jq scripts/metadata_tpl.json | .cache/meta | ||
52 | $(info [META] $< -> $@) | ||
53 | |||
54 | mkdir -p $(@D) | ||
55 | $(eval PAGES_FILES = $(filter .cache/meta/%.json,$^)) | ||
56 | $(eval NAMESPACE = $(call namespace,$@,.cache/meta)) | ||
57 | $(if $(PAGES_FILES),jq -s --arg namespace "$(NAMESPACE)" -f scripts/subpages.jq $(PAGES_FILES) > "$@.pages",echo "{}" > "$@.pages") | ||
58 | pandoc \ | ||
59 | -f markdown-citations-implicit_figures \ | ||
60 | -t html5 \ | ||
61 | --wrap preserve \ | ||
62 | --no-highlight \ | ||
63 | --template scripts/metadata_tpl.json \ | ||
64 | --metadata namespace="$(NAMESPACE)" \ | ||
65 | --metadata file_out="$(patsubst .cache/meta/%.json,out/%.html,$@)" \ | ||
66 | --metadata-file "$@.pages" \ | ||
67 | $(PANDOC_FILTERS) \ | ||
68 | -o "$@.meta" "$<" | ||
69 | pandoc \ | ||
70 | -f markdown-citations-implicit_figures \ | ||
71 | -t html5 \ | ||
72 | --wrap preserve \ | ||
73 | --lua-filter scripts/metadata_filter.lua \ | ||
74 | --lua-filter scripts/subpages.lua \ | ||
75 | $(GLOBAL_METADATA) \ | ||
76 | --metadata-file "$@.meta" \ | ||
77 | --metadata file_out="$@" \ | ||
78 | $(PANDOC_FILTERS) \ | ||
79 | -o "$@.content" "$<" | ||
80 | jq '. + { content: $$content }' --rawfile content "$@.content" "$@.meta" > "$@" | ||
81 | rm "$@.pages" | ||
82 | rm "$@.meta" | ||
83 | rm "$@.content" | ||
84 | |||
85 | .cache/hash.json: $(STATIC_HASHED_FILES) | .cache | ||
86 | echo "$^" | ||
87 | shell sha256sum "$^" | sed -r 's/([0-9a-f]+) +.*\/(.*)/"\2": "\1"/' | ||
88 | |||
89 | out/%.html: content/%.md .cache/meta/%.json .cache/hash.json $(CONTENT_TEMPLATES_SRC) metadata/*.yaml filters/*.lua scripts/metadata_filter.lua out/style.css | out | ||
90 | $(info [MARK] $< -> $@) | ||
91 | |||
92 | mkdir -p $(@D) | ||
93 | pandoc \ | ||
94 | -f markdown-citations-implicit_figures \ | ||
95 | -t html5 \ | ||
96 | --wrap preserve \ | ||
97 | --no-highlight \ | ||
98 | --template templates/base.html \ | ||
99 | --lua-filter scripts/metadata_filter.lua \ | ||
100 | $(GLOBAL_METADATA) \ | ||
101 | --metadata-file ".cache/hash.json" \ | ||
102 | --metadata-file "$(filter .cache/meta/%.json,$^)" \ | ||
103 | --metadata file_out="$@" \ | ||
104 | $(PANDOC_FILTERS) \ | ||
105 | -o "$@" "$<" | ||
106 | |||
107 | out/%.xml: content/%.md .cache/meta/%.json $(FEED_TEMPLATES_SRC) metadata/*.yaml filters/*.lua scripts/metadata_filter.lua | out | ||
108 | $(info [FEED] $< -> $@) | ||
109 | |||
110 | mkdir -p $(@D) | ||
111 | pandoc \ | ||
112 | -f markdown-citations-implicit_figures \ | ||
113 | -t html5 \ | ||
114 | --wrap preserve \ | ||
115 | --no-highlight \ | ||
116 | --template templates/feed.xml \ | ||
117 | --lua-filter scripts/metadata_filter.lua \ | ||
118 | $(GLOBAL_METADATA) \ | ||
119 | --metadata-file "$(filter .cache/meta/%.json,$^)" \ | ||
120 | --metadata file_out="$@" \ | ||
121 | $(PANDOC_FILTERS) \ | ||
122 | -o "$@" "$<" | ||
123 | |||
124 | out/%/thumbnail.png: content/%/thumbnail.png | out | ||
125 | $(info [THMB] $< -> $@) | ||
126 | |||
127 | convert -thumbnail 550x280^ -gravity center -extent 550x280 "$<" png:- | pngquant -o "$@" - | ||
128 | |||
129 | out/%/thumbnail.jpg: content/%/thumbnail.jpg | out | ||
130 | $(info [THMB] $< -> $@) | ||
131 | |||
132 | convert -thumbnail 550x280^ -gravity center -extent 550x280 "$<" ppm:- | cjpeg -quality 80 > "$@" | ||
133 | |||
134 | out/%.woff2: assets/fonts/%.ttf assets/fonts/glyphs.txt | out | ||
135 | $(info [FONT] $< -> $@) | ||
136 | |||
137 | pyftsubset "$<" \ | ||
138 | --text-file="assets/fonts/glyphs.txt" \ | ||
139 | --layout-features+=ss09,dlig \ | ||
140 | --flavor="woff2" \ | ||
141 | --output-file="$@" | ||
142 | |||
143 | out/%.css: assets/css/%.scss $(CSS_SRC) | out | ||
144 | $(info [SCSS] $< -> $@) | ||
145 | |||
146 | sass --load-path=node_modules "$<" | ./node_modules/.bin/postcss --use autoprefixer --no-map -o "$@" | ||
147 | |||
148 | out/%: content/% | out | ||
149 | $(info [COPY] $< -> $@) | ||
150 | |||
151 | mkdir -p $(@D) | ||
152 | cp "$<" "$@" | ||
153 | |||
154 | icons: | out | ||
155 | $(info [ICON] out/icons.svg) | ||
156 | |||
157 | node ./node_modules/iro-icons/scripts/create_sprite.js \ | ||
158 | asterisk \ | ||
159 | arrow-left \ | ||
160 | arrow-right \ | ||
161 | arrow-up-right \ | ||
162 | shuffle \ | ||
163 | envelope \ | ||
164 | hash \ | ||
165 | messages \ | ||
166 | parallelogram \ | ||
167 | globe \ | ||
168 | image \ | ||
169 | graph \ | ||
170 | git-branch \ | ||
171 | smile \ | ||
172 | link \ | ||
173 | x \ | ||
174 | chevron-left \ | ||
175 | chevron-right \ | ||
176 | "out/icons.svg" | ||
177 | |||
178 | .cache/hash: | .cache | ||
179 | mkdir -p .cache/hash | ||
180 | |||
181 | .cache/meta: | .cache | ||
182 | mkdir -p .cache/meta | ||
183 | |||
184 | .cache: | ||
185 | mkdir -p .cache | ||
186 | |||
187 | out: | ||
188 | mkdir -p out | ||
189 | |||
190 | # | ||
191 | # UTILITIES | ||
192 | # | ||
193 | |||
194 | watch: all | ||
195 | while true; do \ | ||
196 | inotifywait -qr -e modify -e create -e delete -e move assets content filters metadata scripts templates; \ | ||
197 | $(MAKE); \ | ||
198 | done | ||
199 | |||
200 | serve: all | ||
201 | python -m http.server --bind 127.0.0.1 --directory out 8000 | ||
202 | |||
203 | dev: watch serve | ||
204 | |||
205 | compress: all | ||
206 | pigz -R -k -9 -- `find out -type f -iregex '.*\\.\\(css\\|js\\|json\\|html\\|xml\\|txt\\|svg\\|ico\\)'` | ||
207 | brotli -k -- `find out -type f -iregex '.*\\.\\(css\\|js\\|json\\|html\\|xml\\|txt\\|svg\\|ico\\|woff\\)'` | ||
208 | |||
209 | deploy: compress | ||
210 | rsync --progress --stats -rvz --delete out/ "$(DEPLOY_TARGET)" | ||
211 | |||
212 | clean: | ||
213 | rm -rf out | ||
214 | |||
215 | .PHONY: all watch serve dev deploy clean | ||
diff --git a/filters/icons.lua b/filters/icons.lua index 9e921f3..36d2108 100644 --- a/filters/icons.lua +++ b/filters/icons.lua | |||
@@ -4,7 +4,7 @@ function Str(el) | |||
4 | if icon then | 4 | if icon then |
5 | return pandoc.RawInline('html', | 5 | return pandoc.RawInline('html', |
6 | '<svg class="o-icon o-icon--inline" width="1em" height="1em" aria-hidden="true">\ | 6 | '<svg class="o-icon o-icon--inline" width="1em" height="1em" aria-hidden="true">\ |
7 | <use href="/icons.svg#' .. icon .. '"></use>\ | 7 | <use href="$assets.icons_svg$#' .. icon .. '"></use>\ |
8 | </svg>') | 8 | </svg>') |
9 | end | 9 | end |
10 | 10 | ||
diff --git a/templates/base.html b/templates/base.html index 4ffd690..6559a56 100644 --- a/templates/base.html +++ b/templates/base.html | |||
@@ -41,7 +41,7 @@ | |||
41 | 41 | ||
42 | <title>$if(namespace.root.is_index)$$else$$title$ – $endif$$site.title$</title> | 42 | <title>$if(namespace.root.is_index)$$else$$title$ – $endif$$site.title$</title> |
43 | 43 | ||
44 | <link rel="preload" href="/style.css?$style_hash$" as="style" /> | 44 | <link rel="preload" href="$assets.style_css$" as="style" /> |
45 | <link rel="preload" href="/IBMPlexSans-Regular.woff2" as="font" type="font/woff2" crossorigin="anonymous" /> | 45 | <link rel="preload" href="/IBMPlexSans-Regular.woff2" as="font" type="font/woff2" crossorigin="anonymous" /> |
46 | <link rel="preload" href="/IBMPlexSans-Bold.woff2" as="font" type="font/woff2" crossorigin="anonymous" /> | 46 | <link rel="preload" href="/IBMPlexSans-Bold.woff2" as="font" type="font/woff2" crossorigin="anonymous" /> |
47 | <link rel="preload" href="/IBMPlexSans-Italic.woff2" as="font" type="font/woff2" crossorigin="anonymous" /> | 47 | <link rel="preload" href="/IBMPlexSans-Italic.woff2" as="font" type="font/woff2" crossorigin="anonymous" /> |
@@ -49,7 +49,7 @@ | |||
49 | <link rel="preload" href="/iosevka-term-ss09-regular.woff2" as="font" type="font/woff2" crossorigin="anonymous" /> | 49 | <link rel="preload" href="/iosevka-term-ss09-regular.woff2" as="font" type="font/woff2" crossorigin="anonymous" /> |
50 | <link rel="preload" href="/iosevka-term-ss09-bold.woff2" as="font" type="font/woff2" crossorigin="anonymous" /> | 50 | <link rel="preload" href="/iosevka-term-ss09-bold.woff2" as="font" type="font/woff2" crossorigin="anonymous" /> |
51 | 51 | ||
52 | <link rel="stylesheet" href="/style.css?$style_hash$" /> | 52 | <link rel="stylesheet" href="$assets.style_css$" /> |
53 | </head> | 53 | </head> |
54 | 54 | ||
55 | <body itemscope itemtype="https://schema.org/WebPage" class="t-no-js"> | 55 | <body itemscope itemtype="https://schema.org/WebPage" class="t-no-js"> |
@@ -87,8 +87,8 @@ ${layouts/page()} | |||
87 | </div> | 87 | </div> |
88 | </footer> | 88 | </footer> |
89 | 89 | ||
90 | <script src="/main.js"></script> | 90 | <script src="$assets.main_js$"></script> |
91 | <!--script src="/snow.js"></script--> | 91 | <!--script src="$assets.snow_js$"></script--> |
92 | </body> | 92 | </body> |
93 | 93 | ||
94 | </html> | 94 | </html> |
diff --git a/templates/layouts/exhibit.html b/templates/layouts/exhibit.html index 3170305..fcc92a4 100644 --- a/templates/layouts/exhibit.html +++ b/templates/layouts/exhibit.html | |||
@@ -10,13 +10,13 @@ | |||
10 | 10 | ||
11 | <button class="o-lightbox__nav-btn o-lightbox__nav-btn--prev o-action-button o-action-button--quiet o-action-button--round"> | 11 | <button class="o-lightbox__nav-btn o-lightbox__nav-btn--prev o-action-button o-action-button--quiet o-action-button--round"> |
12 | <svg class="l-media__block o-icon" width="1em" height="1em" aria-hidden="true"> | 12 | <svg class="l-media__block o-icon" width="1em" height="1em" aria-hidden="true"> |
13 | <use href="/icons.svg#chevron-left"></use> | 13 | <use href="$assets.icons_svg$#chevron-left"></use> |
14 | </svg> | 14 | </svg> |
15 | </button> | 15 | </button> |
16 | 16 | ||
17 | <button class="o-lightbox__nav-btn o-lightbox__nav-btn--next o-action-button o-action-button--quiet o-action-button--round"> | 17 | <button class="o-lightbox__nav-btn o-lightbox__nav-btn--next o-action-button o-action-button--quiet o-action-button--round"> |
18 | <svg class="l-media__block o-icon" width="1em" height="1em" aria-hidden="true"> | 18 | <svg class="l-media__block o-icon" width="1em" height="1em" aria-hidden="true"> |
19 | <use href="/icons.svg#chevron-right"></use> | 19 | <use href="$assets.icons_svg$#chevron-right"></use> |
20 | </svg> | 20 | </svg> |
21 | </button> | 21 | </button> |
22 | 22 | ||
@@ -56,4 +56,4 @@ $body$ | |||
56 | </div> | 56 | </div> |
57 | </main> | 57 | </main> |
58 | 58 | ||
59 | <script src="/lightbox.js"></script> | 59 | <script src="$assets.lightbox_js$"></script> |
diff --git a/templates/layouts/page.html b/templates/layouts/page.html index e40bf4c..53af7e0 100644 --- a/templates/layouts/page.html +++ b/templates/layouts/page.html | |||
@@ -40,7 +40,7 @@ $body$ | |||
40 | <div class="o-lightbox"> | 40 | <div class="o-lightbox"> |
41 | <button class="o-lightbox__close-btn o-action-button o-action-button--quiet o-action-button--round"> | 41 | <button class="o-lightbox__close-btn o-action-button o-action-button--quiet o-action-button--round"> |
42 | <svg class="l-media__block o-icon" width="1em" height="1em" aria-hidden="true"> | 42 | <svg class="l-media__block o-icon" width="1em" height="1em" aria-hidden="true"> |
43 | <use href="/icons.svg#x"></use> | 43 | <use href="$assets.icons_svg$#x"></use> |
44 | </svg> | 44 | </svg> |
45 | </button> | 45 | </button> |
46 | 46 | ||
@@ -48,13 +48,13 @@ $body$ | |||
48 | 48 | ||
49 | <button class="o-lightbox__nav-btn o-lightbox__nav-btn--prev o-action-button o-action-button--quiet o-action-button--round"> | 49 | <button class="o-lightbox__nav-btn o-lightbox__nav-btn--prev o-action-button o-action-button--quiet o-action-button--round"> |
50 | <svg class="l-media__block o-icon" width="1em" height="1em" aria-hidden="true"> | 50 | <svg class="l-media__block o-icon" width="1em" height="1em" aria-hidden="true"> |
51 | <use href="/icons.svg#chevron-left"></use> | 51 | <use href="$assets.icons_svg$#chevron-left"></use> |
52 | </svg> | 52 | </svg> |
53 | </button> | 53 | </button> |
54 | 54 | ||
55 | <button class="o-lightbox__nav-btn o-lightbox__nav-btn--next o-action-button o-action-button--quiet o-action-button--round"> | 55 | <button class="o-lightbox__nav-btn o-lightbox__nav-btn--next o-action-button o-action-button--quiet o-action-button--round"> |
56 | <svg class="l-media__block o-icon" width="1em" height="1em" aria-hidden="true"> | 56 | <svg class="l-media__block o-icon" width="1em" height="1em" aria-hidden="true"> |
57 | <use href="/icons.svg#chevron-right"></use> | 57 | <use href="$assets.icons_svg$#chevron-right"></use> |
58 | </svg> | 58 | </svg> |
59 | </button> | 59 | </button> |
60 | 60 | ||
@@ -63,4 +63,4 @@ $body$ | |||
63 | </div> | 63 | </div> |
64 | </main> | 64 | </main> |
65 | 65 | ||
66 | <script src="/lightbox.js"></script> | 66 | <script src="$assets.lightbox_js$"></script> |
diff --git a/templates/partials/gallery_card.html b/templates/partials/gallery_card.html index 40d3495..4aa274a 100644 --- a/templates/partials/gallery_card.html +++ b/templates/partials/gallery_card.html | |||
@@ -26,7 +26,7 @@ $if(it.thumbnail)$ | |||
26 | $endif$ | 26 | $endif$ |
27 | $if(it.icon)$ | 27 | $if(it.icon)$ |
28 | <svg class="l-media__block o-icon" width="1em" height="1em" aria-hidden="true"> | 28 | <svg class="l-media__block o-icon" width="1em" height="1em" aria-hidden="true"> |
29 | <use href="/icons.svg#$it.icon$"></use> | 29 | <use href="$assets.icons_svg$#$it.icon$"></use> |
30 | </svg> | 30 | </svg> |
31 | $endif$ | 31 | $endif$ |
32 | <div class="l-media__block l-media__block--main"> | 32 | <div class="l-media__block l-media__block--main"> |
@@ -51,7 +51,7 @@ $if(it.thumbnail)$ | |||
51 | </div> | 51 | </div> |
52 | $if(it.post_icon)$ | 52 | $if(it.post_icon)$ |
53 | <svg class="l-media__block o-icon" width="1em" height="1em" aria-hidden="true"> | 53 | <svg class="l-media__block o-icon" width="1em" height="1em" aria-hidden="true"> |
54 | <use href="/icons.svg#$it.post_icon$"></use> | 54 | <use href="$assets.icons_svg$#$it.post_icon$"></use> |
55 | </svg> | 55 | </svg> |
56 | $endif$ | 56 | $endif$ |
57 | </div> | 57 | </div> |
diff --git a/templates/partials/grid_card.html b/templates/partials/grid_card.html index 8c7ea0a..4120169 100644 --- a/templates/partials/grid_card.html +++ b/templates/partials/grid_card.html | |||
@@ -13,7 +13,7 @@ $if(it.url)$ | |||
13 | $endif$ | 13 | $endif$ |
14 | $if(it.icon)$ | 14 | $if(it.icon)$ |
15 | <svg class="l-media__block o-icon" width="1em" height="1em" aria-hidden="true"> | 15 | <svg class="l-media__block o-icon" width="1em" height="1em" aria-hidden="true"> |
16 | <use href="/icons.svg#$it.icon$"></use> | 16 | <use href="$assets.icons_svg$#$it.icon$"></use> |
17 | </svg> | 17 | </svg> |
18 | $endif$ | 18 | $endif$ |
19 | <div class="l-media__block l-media__block--main"> | 19 | <div class="l-media__block l-media__block--main"> |
@@ -38,7 +38,7 @@ $if(it.url)$ | |||
38 | </div> | 38 | </div> |
39 | $if(it.post_icon)$ | 39 | $if(it.post_icon)$ |
40 | <svg class="l-media__block o-icon" width="1em" height="1em" aria-hidden="true"> | 40 | <svg class="l-media__block o-icon" width="1em" height="1em" aria-hidden="true"> |
41 | <use href="/icons.svg#$it.post_icon$"></use> | 41 | <use href="$assets.icons_svg$#$it.post_icon$"></use> |
42 | </svg> | 42 | </svg> |
43 | $endif$ | 43 | $endif$ |
44 | </div> | 44 | </div> |
diff --git a/templates/partials/list_card.html b/templates/partials/list_card.html index dc9111e..539b7d3 100644 --- a/templates/partials/list_card.html +++ b/templates/partials/list_card.html | |||
@@ -13,7 +13,7 @@ $if(it.url)$ | |||
13 | $endif$ | 13 | $endif$ |
14 | $if(it.icon)$ | 14 | $if(it.icon)$ |
15 | <svg class="l-media__block o-icon" width="1em" height="1em" aria-hidden="true"> | 15 | <svg class="l-media__block o-icon" width="1em" height="1em" aria-hidden="true"> |
16 | <use href="/icons.svg#$it.icon$"></use> | 16 | <use href="$assets.icons_svg$#$it.icon$"></use> |
17 | </svg> | 17 | </svg> |
18 | $endif$ | 18 | $endif$ |
19 | <div class="l-media__block l-media__block--main u-d-none@sm-hi"> | 19 | <div class="l-media__block l-media__block--main u-d-none@sm-hi"> |
@@ -54,7 +54,7 @@ $if(it.url)$ | |||
54 | $endif$ | 54 | $endif$ |
55 | $if(it.post_icon)$ | 55 | $if(it.post_icon)$ |
56 | <svg class="l-media__block o-icon" width="1em" height="1em" aria-hidden="true"> | 56 | <svg class="l-media__block o-icon" width="1em" height="1em" aria-hidden="true"> |
57 | <use href="/icons.svg#$it.post_icon$"></use> | 57 | <use href="$assets.icons_svg$#$it.post_icon$"></use> |
58 | </svg> | 58 | </svg> |
59 | $endif$ | 59 | $endif$ |
60 | </div> | 60 | </div> |