-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy path_config.ts
73 lines (66 loc) · 1.94 KB
/
_config.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
import lume from "lume/mod.ts";
import nunjucks from "lume/plugins/nunjucks.ts";
import date from "lume/plugins/date.ts";
import postcss from "lume/plugins/postcss.ts";
import terser from "lume/plugins/terser.ts";
import codeHighlight from "lume/plugins/code_highlight.ts";
import basePath from "lume/plugins/base_path.ts";
import slugifyUrls from "lume/plugins/slugify_urls.ts";
import resolveUrls from "lume/plugins/resolve_urls.ts";
import metas from "lume/plugins/metas.ts";
import minifyHTML from "lume/plugins/minify_html.ts";
import picture from "lume/plugins/picture.ts";
import transformImages from "lume/plugins/transform_images.ts";
import pageFind from "lume/plugins/pagefind.ts";
import { getCurrentVersion } from "lume/core/utils/lume_version.ts";
import "lume/types.ts";
const site = lume({
location: new URL("https://kavithai.site/"),
});
site
.ignore(
"README.md",
"CHANGELOG.md",
"node_modules",
"LICENSE",
"bulma.min.css",
"styles.css",
)
.use(nunjucks())
.copy(".well-known")
.copy("icons")
.use(postcss())
.use(terser())
.use(codeHighlight())
.use(basePath())
.use(pageFind())
.use(slugifyUrls({ alphanumeric: false }))
.use(resolveUrls())
.use(metas())
.loadAssets([".css", ".png", ".jpg", ".svg", ".webp", ".gif", ".jpeg"])
.use(minifyHTML({
extensions: [".css", ".html"],
}))
.use(picture())
.use(transformImages())
.use(date());
site.data("lume_version", getCurrentVersion());
site.data("current_year", function () {
const GetYear = new Date().getFullYear();
return GetYear;
});
site.process([".html"], (pages) => {
console.log("Preparing for adding loading lazy");
for (const page of pages) {
page.document?.querySelectorAll("img").forEach((img) => {
if (!img.hasAttribute("loading")) {
img.setAttribute("loading", "lazy");
}
});
}
});
site.data("build_date", function () {
const GetDate = new Date();
return GetDate;
});
export default site;