Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/wangchucheng/hugo-eureka.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/assets
diff options
context:
space:
mode:
authorWANG Chucheng <me@wangchucheng.com>2022-02-03 08:12:39 +0300
committerWANG Chucheng <me@wangchucheng.com>2022-02-03 08:12:39 +0300
commit89c48bd92b34b165770069b01aa9e2511d0448ca (patch)
tree37a7633d768f79cc9ac0fff66253a505a8467354 /assets
parent72c35bec01c80baf75bcaf61b363ffe337ee7f2d (diff)
refactor: reduce Font Awesome size with tree shaking
Diffstat (limited to 'assets')
-rw-r--r--assets/js/fontawesome.js29
1 files changed, 29 insertions, 0 deletions
diff --git a/assets/js/fontawesome.js b/assets/js/fontawesome.js
new file mode 100644
index 0000000..60e1c02
--- /dev/null
+++ b/assets/js/fontawesome.js
@@ -0,0 +1,29 @@
+{{- $icons := partial "utils/get-fontawesome-icons" . -}}
+{{- $flattenedIcons := slice -}}
+
+{{- range $key, $value := $icons -}}
+ {{- if gt (len $value) 0 -}}
+ {{- $flattenedIcons = $flattenedIcons | append $value -}}
+ {{- if eq $key "fas" -}}
+ import {
+ {{- delimit $value ", " -}}
+ } from 'js/fontawesome/free-solid-svg-icons/index.es.js';
+ {{- else if eq $key "far" -}}
+ import {
+ {{- delimit $value ", " -}}
+ } from 'js/fontawesome/free-regular-svg-icons/index.es.js';
+ {{- else if eq $key "fab" -}}
+ import {
+ {{- delimit $value ", " -}}
+ } from 'js/fontawesome/free-brands-svg-icons/index.es.js';
+ {{- end -}}
+ {{- end -}}
+{{- end -}}
+
+import {library, dom} from 'js/fontawesome/fontawesome-svg-core/index.es.js';
+
+library.add(
+ {{- delimit $flattenedIcons ", " -}}
+)
+dom.i2svg()
+dom.watch() \ No newline at end of file