diff --git a/.gitignore b/.gitignore
index 86c95ef..79ff5e6 100644
--- a/.gitignore
+++ b/.gitignore
@@ -11,3 +11,7 @@ hugo.linux
# Temporary lock file while building
/.hugo_build.lock
+
+/node_modules
+
+.DS_Store
diff --git a/.husky/pre-commit b/.husky/pre-commit
new file mode 100644
index 0000000..5ee7abd
--- /dev/null
+++ b/.husky/pre-commit
@@ -0,0 +1 @@
+pnpm exec lint-staged
diff --git a/.prettierignore b/.prettierignore
new file mode 100644
index 0000000..1b8ac88
--- /dev/null
+++ b/.prettierignore
@@ -0,0 +1,3 @@
+# Ignore artifacts:
+build
+coverage
diff --git a/.prettierrc b/.prettierrc
new file mode 100644
index 0000000..a141374
--- /dev/null
+++ b/.prettierrc
@@ -0,0 +1,11 @@
+{
+ "plugins": ["prettier-plugin-go-template"],
+ "overrides": [
+ {
+ "files": ["*.html"],
+ "options": {
+ "parser": "go-template"
+ }
+ }
+ ]
+}
diff --git a/archetypes/default.md b/archetypes/default.md
index e662511..81ed087 100644
--- a/archetypes/default.md
+++ b/archetypes/default.md
@@ -3,7 +3,6 @@ title: '{{ replace .File.ContentBaseName "-" " " | title }}'
date: { { .Date | time.Format "2006-01-02" } }
author: Author Name
summary: Summary
-categories: [""]
tags: [""]
draft: true
cover:
diff --git a/assets/css/main.css b/assets/css/main.css
index be9452e..4af4629 100644
--- a/assets/css/main.css
+++ b/assets/css/main.css
@@ -111,7 +111,7 @@ h3 {
color: var(--primary-color);
}
-body>header {
+body > header {
font-family:
Optician Sans,
sans-serif;
@@ -149,7 +149,7 @@ div.tags {
outline: 2px ridge var(--text-color);
filter: none;
border-radius: var(--large-border-radius);
- box-shadow: 0 0 0 2pt var(--text-color);
+ box-shadow: 0 0 0 2px var(--text-color);
}
& li {
@@ -336,8 +336,9 @@ main {
}
/* footer */
-body>footer {
- padding: 1rem 0rem;
+body > footer {
+ width: 100%;
+ padding: 1rem 0;
margin-top: 1rem;
border-top: 1px solid var(--text-color);
font-family:
@@ -351,9 +352,13 @@ body>footer {
text-align: center;
}
- & p:not(:last-child)::after {
- padding: 0 calc(var(--letter-gap) / 2);
- content: "ยท";
+ & div {
+ max-width: 75ch;
+ width: 100%;
+ display: flex;
+ align-items: center;
+ justify-content: space-around;
+ gap: calc(var(--letter-gap) / 2);
}
}
@@ -361,7 +366,7 @@ div.content {
white-space: break-spaces;
word-break: break-word;
- & * {
+ & p {
margin: var(--small-gap) 0rem;
}
@@ -370,15 +375,28 @@ div.content {
}
& pre:has(code) {
+ max-width: 100%;
border-radius: calc(var(--normal-border-radius) * 2);
padding: calc(var(--small-gap)) calc(var(--small-gap) / 2);
- box-shadow: 0px 0px 2pt var(--text-color);
+ box-shadow: 0px 0px 2px var(--text-color);
overflow-x: scroll;
}
& code {
font-family: "Monaspace Radon";
}
+
+ & img {
+ max-width: 100%;
+ max-height: 90dvh;
+ object-fit: contain;
+ border-radius: var(--normal-border-radius);
+ box-shadow: 0 0 0 2px var(--text-color);
+
+ &:hover {
+ border-radius: 0;
+ }
+ }
}
@font-face {
diff --git a/assets/js/main.js b/assets/js/main.js
index e2aac52..2f45f61 100644
--- a/assets/js/main.js
+++ b/assets/js/main.js
@@ -1 +1 @@
-console.log('This site was generated by Hugo.');
+console.log("This site was generated by Hugo.");
diff --git a/content/posts/test-post/index.md b/content/posts/test-post/index.md
new file mode 100644
index 0000000..4ce3631
--- /dev/null
+++ b/content/posts/test-post/index.md
@@ -0,0 +1,32 @@
+---
+title: Test Post
+date: 1980-01-02
+author: Test Author
+summary: Test Summary
+tags: ["test", "lorem"]
+draft: true
+cover:
+ image: test.jpg
+ alt: test
+ caption: test caption
+ relative: false
+ hidden: true
+audio:
+ src: audio.mp3
+ caption: caption
+ hidden: true
+---
+
+Lorem ipsum dolor sit amet, qui minim labore adipisicing minim sint cillum sint consectetur cupidatat.
+
+![Test page](./testing.jpg)
+
+Lorem ipsum dolor sit amet, officia excepteur ex fugiat reprehenderit enim labore culpa sint ad nisi Lorem pariatur mollit ex esse exercitation amet. Nisi anim cupidatat excepteur officia. Reprehenderit nostrud nostrud ipsum Lorem est aliquip amet voluptate voluptate dolor minim nulla est proident. Nostrud officia pariatur ut officia. Sit irure elit esse ea nulla sunt ex occaecat reprehenderit commodo officia dolor Lorem duis laboris cupidatat officia voluptate. Culpa proident adipisicing id nulla nisi laboris ex in Lorem sunt duis officia eiusmod. Aliqua reprehenderit commodo ex non excepteur duis sunt velit enim. Voluptate laboris sint cupidatat ullamco ut ea consectetur et est culpa et culpa duis.
+
+```py
+# Lorem ipsum dolor sit amet, qui minim labore adipisicing minim sint cillum sint consectetur cupidatat. Lorem ipsum dolor sit amet, qui minim labore adipisicing minim sint cillum sint consectetur cupidatat.
+
+print("Hello world")
+```
+
+Lorem ipsum dolor sit amet, officia excepteur ex fugiat reprehenderit enim labore culpa sint ad nisi Lorem pariatur mollit ex esse exercitation amet. Nisi anim cupidatat excepteur officia. Reprehenderit nostrud nostrud ipsum Lorem est aliquip amet voluptate voluptate dolor minim nulla est proident. Nostrud officia pariatur ut officia. Sit irure elit esse ea nulla sunt ex occaecat reprehenderit commodo officia dolor Lorem duis laboris cupidatat officia voluptate. Culpa proident adipisicing id nulla nisi laboris ex in Lorem sunt duis officia eiusmod. Aliqua reprehenderit commodo ex non excepteur duis sunt velit enim. Voluptate laboris sint cupidatat ullamco ut ea consectetur et est culpa et culpa duis.
diff --git a/content/posts/test-post/testing.jpg b/content/posts/test-post/testing.jpg
new file mode 100644
index 0000000..714ceac
Binary files /dev/null and b/content/posts/test-post/testing.jpg differ
diff --git a/layouts/_default/baseof.html b/layouts/_default/baseof.html
index 4845c17..c510a56 100644
--- a/layouts/_default/baseof.html
+++ b/layouts/_default/baseof.html
@@ -1,14 +1,15 @@
-
-
-
- {{ partial "head.html" . }}
-
-
-
- {{ partial "header.html" . }}
- {{ block "main" . }}{{ end }}
-
-
+
+
+ {{ partial "head.html" . }}
+
+
+ {{ partial "header.html" . }}
+ {{ block "main" . }}{{ end }}
+
+
diff --git a/layouts/_default/home.html b/layouts/_default/home.html
index 16de7b5..3c7f845 100644
--- a/layouts/_default/home.html
+++ b/layouts/_default/home.html
@@ -1,22 +1,23 @@
-{{ define "main" }} {{ with .GetPage "About" }}
-{{ .Page.Title }}
-
-
- {{ truncate 128 .Content }}
-
-
-{{ end }}
-
-
- {{ partial "posts-list.html" . }}
-
-
+{{ define "main" }}
+ {{ with .GetPage "About" }}
+ {{ .Page.Title }}
+
+
+ {{ truncate 128 .Content }}
+
+
+ {{ end }}
+
+
+ {{ partial "posts-list.html" . }}
+
+
{{ end }}
diff --git a/layouts/_default/list.html b/layouts/_default/list.html
index 06f4844..80af6e7 100644
--- a/layouts/_default/list.html
+++ b/layouts/_default/list.html
@@ -1,6 +1,7 @@
{{ define "main" }}
-
+
-{{ partial "posts-list.html" . }} {{ end }}
+ {{ partial "posts-list.html" . }}
+{{ end }}
diff --git a/layouts/_default/single.html b/layouts/_default/single.html
index 6382a37..e8cfd0c 100644
--- a/layouts/_default/single.html
+++ b/layouts/_default/single.html
@@ -1,8 +1,8 @@
{{ define "main" }}
-
-
- {{ .Content }}
-
+
+
+ {{ .Content }}
+
{{ end }}
diff --git a/layouts/_default/taxonomy.html b/layouts/_default/taxonomy.html
index c045ff8..c2e7875 100644
--- a/layouts/_default/taxonomy.html
+++ b/layouts/_default/taxonomy.html
@@ -1,5 +1,7 @@
{{ define "main" }}
-{{ .Title }}
-{{ .Content }} {{ range .Pages }}
-
-{{ end }} {{ end }}
+ {{ .Title }}
+ {{ .Content }}
+ {{ range .Pages }}
+
+ {{ end }}
+{{ end }}
diff --git a/layouts/partials/footer.html b/layouts/partials/footer.html
index 967e766..e3e7f96 100644
--- a/layouts/partials/footer.html
+++ b/layouts/partials/footer.html
@@ -1,12 +1,20 @@
-
- Made with ๐ by
- {{ .Site.Params.author.name
- }}
-
-
- โก by
- Hugo in
-
-
-Back to Top
+
diff --git a/layouts/partials/head.html b/layouts/partials/head.html
index 02c2240..6415424 100644
--- a/layouts/partials/head.html
+++ b/layouts/partials/head.html
@@ -1,5 +1,11 @@
-
-
-{{ if .IsHome }}{{ site.Title }}{{ else }}{{ printf "%s | %s" .Title site.Title }}{{ end }}
+
+
+
+ {{ if .IsHome }}
+ {{ site.Title }}
+ {{ else }}
+ {{ printf "%s | %s" .Title site.Title }}
+ {{ end }}
+
{{ partialCached "head/css.html" . }}
{{ partialCached "head/js.html" . }}
diff --git a/layouts/partials/head/css.html b/layouts/partials/head/css.html
index 91b928d..f8b626e 100644
--- a/layouts/partials/head/css.html
+++ b/layouts/partials/head/css.html
@@ -1,9 +1,14 @@
{{- with resources.Get "css/main.css" }}
{{- if eq hugo.Environment "development" }}
-
+
{{- else }}
{{- with . | minify | fingerprint }}
-
+
{{- end }}
{{- end }}
{{- end }}
diff --git a/layouts/partials/head/js.html b/layouts/partials/head/js.html
index 18fe842..8387c7d 100644
--- a/layouts/partials/head/js.html
+++ b/layouts/partials/head/js.html
@@ -6,7 +6,11 @@
{{- else }}
{{- $opts := dict "minify" true }}
{{- with . | js.Build $opts | fingerprint }}
-
+
{{- end }}
{{- end }}
{{- end }}
diff --git a/layouts/partials/posts-list.html b/layouts/partials/posts-list.html
index fc8a38e..38893c4 100644
--- a/layouts/partials/posts-list.html
+++ b/layouts/partials/posts-list.html
@@ -1,23 +1,31 @@
{{ $pages := where site.RegularPages "Type" "posts" }}
{{ range $pages.GroupByPublishDate "2006" }}
-
+
{{ end }}
diff --git a/layouts/partials/tags.html b/layouts/partials/tags.html
index 9533cc8..3124ec6 100644
--- a/layouts/partials/tags.html
+++ b/layouts/partials/tags.html
@@ -1,10 +1,14 @@
-{{- $page := .page }} {{- $taxonomy := .taxonomy }} {{- with $page.GetTerms
-$taxonomy }} {{- $label := (index . 0).Parent.LinkTitle }}
-
+{{- $page := .page }}
+{{- $taxonomy := .taxonomy }}
+{{- with $page.GetTerms
+ $taxonomy
+}}
+ {{- $label := (index . 0).Parent.LinkTitle }}
+
{{- end }}
diff --git a/layouts/posts/single.html b/layouts/posts/single.html
index 5b6c027..d39f90a 100644
--- a/layouts/posts/single.html
+++ b/layouts/posts/single.html
@@ -1,24 +1,32 @@
{{ define "main" }}
-
-
- {{ .Title }}
-
- {{ $dateMachine := .Date | time.Format "2006-01-02T15:04:05-07:00" }} {{
- $dateHuman := .Date | time.Format "Jan 2, 2006" }}
-
- {{ .ReadingTime }} min
- {{ .Params.author }}
- Suggest Changes
-
-
- {{ .Content }}
- {{ partial "tags.html" (dict "taxonomy" "tags" "page" .) }}
-
-
+
+
+ {{ .Title }}
+
+ {{ $dateMachine := .Date | time.Format "2006-01-02T15:04:05-07:00" }}
+ {{ $dateHuman := .Date | time.Format "Jan 2, 2006" }}
+
+ {{ .ReadingTime }} min
+ {{ .Params.author }}
+ Suggest Changes
+
+
+ {{ .Content }}
+ {{ partial "tags.html" (dict "taxonomy" "tags" "page" .) }}
+
+
{{ end }}
diff --git a/package.json b/package.json
new file mode 100644
index 0000000..a0b803c
--- /dev/null
+++ b/package.json
@@ -0,0 +1,14 @@
+{
+ "devDependencies": {
+ "husky": "^9.1.6",
+ "lint-staged": "^15.2.10",
+ "prettier": "3.3.3",
+ "prettier-plugin-go-template": "^0.0.15"
+ },
+ "lint-staged": {
+ "**/*": "prettier --write --ignore-unknown"
+ },
+ "scripts": {
+ "prepare": "husky"
+ }
+}
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
new file mode 100644
index 0000000..a177480
--- /dev/null
+++ b/pnpm-lock.yaml
@@ -0,0 +1,590 @@
+lockfileVersion: "6.0"
+
+settings:
+ autoInstallPeers: true
+ excludeLinksFromLockfile: false
+
+devDependencies:
+ husky:
+ specifier: ^9.1.6
+ version: 9.1.6
+ lint-staged:
+ specifier: ^15.2.10
+ version: 15.2.10
+ prettier:
+ specifier: 3.3.3
+ version: 3.3.3
+ prettier-plugin-go-template:
+ specifier: ^0.0.15
+ version: 0.0.15(prettier@3.3.3)
+
+packages:
+ /ansi-escapes@7.0.0:
+ resolution:
+ {
+ integrity: sha512-GdYO7a61mR0fOlAsvC9/rIHf7L96sBc6dEWzeOu+KAea5bZyQRPIpojrVoI4AXGJS/ycu/fBTdLrUkA4ODrvjw==,
+ }
+ engines: { node: ">=18" }
+ dependencies:
+ environment: 1.1.0
+ dev: true
+
+ /ansi-regex@6.1.0:
+ resolution:
+ {
+ integrity: sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==,
+ }
+ engines: { node: ">=12" }
+ dev: true
+
+ /ansi-styles@6.2.1:
+ resolution:
+ {
+ integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==,
+ }
+ engines: { node: ">=12" }
+ dev: true
+
+ /braces@3.0.3:
+ resolution:
+ {
+ integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==,
+ }
+ engines: { node: ">=8" }
+ dependencies:
+ fill-range: 7.1.1
+ dev: true
+
+ /chalk@5.3.0:
+ resolution:
+ {
+ integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==,
+ }
+ engines: { node: ^12.17.0 || ^14.13 || >=16.0.0 }
+ dev: true
+
+ /cli-cursor@5.0.0:
+ resolution:
+ {
+ integrity: sha512-aCj4O5wKyszjMmDT4tZj93kxyydN/K5zPWSCe6/0AV/AA1pqe5ZBIw0a2ZfPQV7lL5/yb5HsUreJ6UFAF1tEQw==,
+ }
+ engines: { node: ">=18" }
+ dependencies:
+ restore-cursor: 5.1.0
+ dev: true
+
+ /cli-truncate@4.0.0:
+ resolution:
+ {
+ integrity: sha512-nPdaFdQ0h/GEigbPClz11D0v/ZJEwxmeVZGeMo3Z5StPtUTkA9o1lD6QwoirYiSDzbcwn2XcjwmCp68W1IS4TA==,
+ }
+ engines: { node: ">=18" }
+ dependencies:
+ slice-ansi: 5.0.0
+ string-width: 7.2.0
+ dev: true
+
+ /colorette@2.0.20:
+ resolution:
+ {
+ integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==,
+ }
+ dev: true
+
+ /commander@12.1.0:
+ resolution:
+ {
+ integrity: sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==,
+ }
+ engines: { node: ">=18" }
+ dev: true
+
+ /cross-spawn@7.0.3:
+ resolution:
+ {
+ integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==,
+ }
+ engines: { node: ">= 8" }
+ dependencies:
+ path-key: 3.1.1
+ shebang-command: 2.0.0
+ which: 2.0.2
+ dev: true
+
+ /debug@4.3.7:
+ resolution:
+ {
+ integrity: sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==,
+ }
+ engines: { node: ">=6.0" }
+ peerDependencies:
+ supports-color: "*"
+ peerDependenciesMeta:
+ supports-color:
+ optional: true
+ dependencies:
+ ms: 2.1.3
+ dev: true
+
+ /emoji-regex@10.4.0:
+ resolution:
+ {
+ integrity: sha512-EC+0oUMY1Rqm4O6LLrgjtYDvcVYTy7chDnM4Q7030tP4Kwj3u/pR6gP9ygnp2CJMK5Gq+9Q2oqmrFJAz01DXjw==,
+ }
+ dev: true
+
+ /environment@1.1.0:
+ resolution:
+ {
+ integrity: sha512-xUtoPkMggbz0MPyPiIWr1Kp4aeWJjDZ6SMvURhimjdZgsRuDplF5/s9hcgGhyXMhs+6vpnuoiZ2kFiu3FMnS8Q==,
+ }
+ engines: { node: ">=18" }
+ dev: true
+
+ /eventemitter3@5.0.1:
+ resolution:
+ {
+ integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==,
+ }
+ dev: true
+
+ /execa@8.0.1:
+ resolution:
+ {
+ integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==,
+ }
+ engines: { node: ">=16.17" }
+ dependencies:
+ cross-spawn: 7.0.3
+ get-stream: 8.0.1
+ human-signals: 5.0.0
+ is-stream: 3.0.0
+ merge-stream: 2.0.0
+ npm-run-path: 5.3.0
+ onetime: 6.0.0
+ signal-exit: 4.1.0
+ strip-final-newline: 3.0.0
+ dev: true
+
+ /fill-range@7.1.1:
+ resolution:
+ {
+ integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==,
+ }
+ engines: { node: ">=8" }
+ dependencies:
+ to-regex-range: 5.0.1
+ dev: true
+
+ /get-east-asian-width@1.3.0:
+ resolution:
+ {
+ integrity: sha512-vpeMIQKxczTD/0s2CdEWHcb0eeJe6TFjxb+J5xgX7hScxqrGuyjmv4c1D4A/gelKfyox0gJJwIHF+fLjeaM8kQ==,
+ }
+ engines: { node: ">=18" }
+ dev: true
+
+ /get-stream@8.0.1:
+ resolution:
+ {
+ integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==,
+ }
+ engines: { node: ">=16" }
+ dev: true
+
+ /human-signals@5.0.0:
+ resolution:
+ {
+ integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==,
+ }
+ engines: { node: ">=16.17.0" }
+ dev: true
+
+ /husky@9.1.6:
+ resolution:
+ {
+ integrity: sha512-sqbjZKK7kf44hfdE94EoX8MZNk0n7HeW37O4YrVGCF4wzgQjp+akPAkfUK5LZ6KuR/6sqeAVuXHji+RzQgOn5A==,
+ }
+ engines: { node: ">=18" }
+ hasBin: true
+ dev: true
+
+ /is-fullwidth-code-point@4.0.0:
+ resolution:
+ {
+ integrity: sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==,
+ }
+ engines: { node: ">=12" }
+ dev: true
+
+ /is-fullwidth-code-point@5.0.0:
+ resolution:
+ {
+ integrity: sha512-OVa3u9kkBbw7b8Xw5F9P+D/T9X+Z4+JruYVNapTjPYZYUznQ5YfWeFkOj606XYYW8yugTfC8Pj0hYqvi4ryAhA==,
+ }
+ engines: { node: ">=18" }
+ dependencies:
+ get-east-asian-width: 1.3.0
+ dev: true
+
+ /is-number@7.0.0:
+ resolution:
+ {
+ integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==,
+ }
+ engines: { node: ">=0.12.0" }
+ dev: true
+
+ /is-stream@3.0.0:
+ resolution:
+ {
+ integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==,
+ }
+ engines: { node: ^12.20.0 || ^14.13.1 || >=16.0.0 }
+ dev: true
+
+ /isexe@2.0.0:
+ resolution:
+ {
+ integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==,
+ }
+ dev: true
+
+ /lilconfig@3.1.2:
+ resolution:
+ {
+ integrity: sha512-eop+wDAvpItUys0FWkHIKeC9ybYrTGbU41U5K7+bttZZeohvnY7M9dZ5kB21GNWiFT2q1OoPTvncPCgSOVO5ow==,
+ }
+ engines: { node: ">=14" }
+ dev: true
+
+ /lint-staged@15.2.10:
+ resolution:
+ {
+ integrity: sha512-5dY5t743e1byO19P9I4b3x8HJwalIznL5E1FWYnU6OWw33KxNBSLAc6Cy7F2PsFEO8FKnLwjwm5hx7aMF0jzZg==,
+ }
+ engines: { node: ">=18.12.0" }
+ hasBin: true
+ dependencies:
+ chalk: 5.3.0
+ commander: 12.1.0
+ debug: 4.3.7
+ execa: 8.0.1
+ lilconfig: 3.1.2
+ listr2: 8.2.5
+ micromatch: 4.0.8
+ pidtree: 0.6.0
+ string-argv: 0.3.2
+ yaml: 2.5.1
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /listr2@8.2.5:
+ resolution:
+ {
+ integrity: sha512-iyAZCeyD+c1gPyE9qpFu8af0Y+MRtmKOncdGoA2S5EY8iFq99dmmvkNnHiWo+pj0s7yH7l3KPIgee77tKpXPWQ==,
+ }
+ engines: { node: ">=18.0.0" }
+ dependencies:
+ cli-truncate: 4.0.0
+ colorette: 2.0.20
+ eventemitter3: 5.0.1
+ log-update: 6.1.0
+ rfdc: 1.4.1
+ wrap-ansi: 9.0.0
+ dev: true
+
+ /log-update@6.1.0:
+ resolution:
+ {
+ integrity: sha512-9ie8ItPR6tjY5uYJh8K/Zrv/RMZ5VOlOWvtZdEHYSTFKZfIBPQa9tOAEeAWhd+AnIneLJ22w5fjOYtoutpWq5w==,
+ }
+ engines: { node: ">=18" }
+ dependencies:
+ ansi-escapes: 7.0.0
+ cli-cursor: 5.0.0
+ slice-ansi: 7.1.0
+ strip-ansi: 7.1.0
+ wrap-ansi: 9.0.0
+ dev: true
+
+ /merge-stream@2.0.0:
+ resolution:
+ {
+ integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==,
+ }
+ dev: true
+
+ /micromatch@4.0.8:
+ resolution:
+ {
+ integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==,
+ }
+ engines: { node: ">=8.6" }
+ dependencies:
+ braces: 3.0.3
+ picomatch: 2.3.1
+ dev: true
+
+ /mimic-fn@4.0.0:
+ resolution:
+ {
+ integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==,
+ }
+ engines: { node: ">=12" }
+ dev: true
+
+ /mimic-function@5.0.1:
+ resolution:
+ {
+ integrity: sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA==,
+ }
+ engines: { node: ">=18" }
+ dev: true
+
+ /ms@2.1.3:
+ resolution:
+ {
+ integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==,
+ }
+ dev: true
+
+ /npm-run-path@5.3.0:
+ resolution:
+ {
+ integrity: sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==,
+ }
+ engines: { node: ^12.20.0 || ^14.13.1 || >=16.0.0 }
+ dependencies:
+ path-key: 4.0.0
+ dev: true
+
+ /onetime@6.0.0:
+ resolution:
+ {
+ integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==,
+ }
+ engines: { node: ">=12" }
+ dependencies:
+ mimic-fn: 4.0.0
+ dev: true
+
+ /onetime@7.0.0:
+ resolution:
+ {
+ integrity: sha512-VXJjc87FScF88uafS3JllDgvAm+c/Slfz06lorj2uAY34rlUu0Nt+v8wreiImcrgAjjIHp1rXpTDlLOGw29WwQ==,
+ }
+ engines: { node: ">=18" }
+ dependencies:
+ mimic-function: 5.0.1
+ dev: true
+
+ /path-key@3.1.1:
+ resolution:
+ {
+ integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==,
+ }
+ engines: { node: ">=8" }
+ dev: true
+
+ /path-key@4.0.0:
+ resolution:
+ {
+ integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==,
+ }
+ engines: { node: ">=12" }
+ dev: true
+
+ /picomatch@2.3.1:
+ resolution:
+ {
+ integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==,
+ }
+ engines: { node: ">=8.6" }
+ dev: true
+
+ /pidtree@0.6.0:
+ resolution:
+ {
+ integrity: sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==,
+ }
+ engines: { node: ">=0.10" }
+ hasBin: true
+ dev: true
+
+ /prettier-plugin-go-template@0.0.15(prettier@3.3.3):
+ resolution:
+ {
+ integrity: sha512-WqU92E1NokWYNZ9mLE6ijoRg6LtIGdLMePt2C7UBDjXeDH9okcRI3zRqtnWR4s5AloiqyvZ66jNBAa9tmRY5EQ==,
+ }
+ engines: { node: ">=14.0.0" }
+ peerDependencies:
+ prettier: ^3.0.0
+ dependencies:
+ prettier: 3.3.3
+ ulid: 2.3.0
+ dev: true
+
+ /prettier@3.3.3:
+ resolution:
+ {
+ integrity: sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==,
+ }
+ engines: { node: ">=14" }
+ hasBin: true
+ dev: true
+
+ /restore-cursor@5.1.0:
+ resolution:
+ {
+ integrity: sha512-oMA2dcrw6u0YfxJQXm342bFKX/E4sG9rbTzO9ptUcR/e8A33cHuvStiYOwH7fszkZlZ1z/ta9AAoPk2F4qIOHA==,
+ }
+ engines: { node: ">=18" }
+ dependencies:
+ onetime: 7.0.0
+ signal-exit: 4.1.0
+ dev: true
+
+ /rfdc@1.4.1:
+ resolution:
+ {
+ integrity: sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==,
+ }
+ dev: true
+
+ /shebang-command@2.0.0:
+ resolution:
+ {
+ integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==,
+ }
+ engines: { node: ">=8" }
+ dependencies:
+ shebang-regex: 3.0.0
+ dev: true
+
+ /shebang-regex@3.0.0:
+ resolution:
+ {
+ integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==,
+ }
+ engines: { node: ">=8" }
+ dev: true
+
+ /signal-exit@4.1.0:
+ resolution:
+ {
+ integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==,
+ }
+ engines: { node: ">=14" }
+ dev: true
+
+ /slice-ansi@5.0.0:
+ resolution:
+ {
+ integrity: sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==,
+ }
+ engines: { node: ">=12" }
+ dependencies:
+ ansi-styles: 6.2.1
+ is-fullwidth-code-point: 4.0.0
+ dev: true
+
+ /slice-ansi@7.1.0:
+ resolution:
+ {
+ integrity: sha512-bSiSngZ/jWeX93BqeIAbImyTbEihizcwNjFoRUIY/T1wWQsfsm2Vw1agPKylXvQTU7iASGdHhyqRlqQzfz+Htg==,
+ }
+ engines: { node: ">=18" }
+ dependencies:
+ ansi-styles: 6.2.1
+ is-fullwidth-code-point: 5.0.0
+ dev: true
+
+ /string-argv@0.3.2:
+ resolution:
+ {
+ integrity: sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==,
+ }
+ engines: { node: ">=0.6.19" }
+ dev: true
+
+ /string-width@7.2.0:
+ resolution:
+ {
+ integrity: sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==,
+ }
+ engines: { node: ">=18" }
+ dependencies:
+ emoji-regex: 10.4.0
+ get-east-asian-width: 1.3.0
+ strip-ansi: 7.1.0
+ dev: true
+
+ /strip-ansi@7.1.0:
+ resolution:
+ {
+ integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==,
+ }
+ engines: { node: ">=12" }
+ dependencies:
+ ansi-regex: 6.1.0
+ dev: true
+
+ /strip-final-newline@3.0.0:
+ resolution:
+ {
+ integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==,
+ }
+ engines: { node: ">=12" }
+ dev: true
+
+ /to-regex-range@5.0.1:
+ resolution:
+ {
+ integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==,
+ }
+ engines: { node: ">=8.0" }
+ dependencies:
+ is-number: 7.0.0
+ dev: true
+
+ /ulid@2.3.0:
+ resolution:
+ {
+ integrity: sha512-keqHubrlpvT6G2wH0OEfSW4mquYRcbe/J8NMmveoQOjUqmo+hXtO+ORCpWhdbZ7k72UtY61BL7haGxW6enBnjw==,
+ }
+ hasBin: true
+ dev: true
+
+ /which@2.0.2:
+ resolution:
+ {
+ integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==,
+ }
+ engines: { node: ">= 8" }
+ hasBin: true
+ dependencies:
+ isexe: 2.0.0
+ dev: true
+
+ /wrap-ansi@9.0.0:
+ resolution:
+ {
+ integrity: sha512-G8ura3S+3Z2G+mkgNRq8dqaFZAuxfsxpBB8OCTGRTCtp+l/v9nbFNmCUP1BZMts3G1142MsZfn6eeUKrr4PD1Q==,
+ }
+ engines: { node: ">=18" }
+ dependencies:
+ ansi-styles: 6.2.1
+ string-width: 7.2.0
+ strip-ansi: 7.1.0
+ dev: true
+
+ /yaml@2.5.1:
+ resolution:
+ {
+ integrity: sha512-bLQOjaX/ADgQ20isPJRvF0iRUHIxVhYvr53Of7wGcWlO2jvtUlH5m87DsmulFVxRpNLOnI4tB6p/oh8D7kpn9Q==,
+ }
+ engines: { node: ">= 14" }
+ hasBin: true
+ dev: true